[天神模式]删除符合条件表计完成
This commit is contained in:
parent
9b899be33d
commit
f254ec1f3a
|
@ -20,6 +20,7 @@ func InitializeGmController(router *fiber.App) {
|
|||
router.Delete("/gm/tenement/meter", security.SingularityAuthorize, deleteTenementMeterRelations)
|
||||
router.Delete("/gm/enterprise", security.SingularityAuthorize, deleteEnterprise)
|
||||
router.Delete("/gm/meter/pooling", security.SingularityAuthorize, deleteMeterPoolingRelations)
|
||||
router.Delete("gm/meter", security.SingularityAuthorize, deleteMeters)
|
||||
}
|
||||
|
||||
//用于将参数转化为切片
|
||||
|
@ -117,3 +118,15 @@ func deleteMeterPoolingRelations(c *fiber.Ctx) error {
|
|||
return result.Success("指定表计公摊关系已经删除。")
|
||||
|
||||
}
|
||||
|
||||
func deleteMeters(c *fiber.Ctx) error {
|
||||
result := response.NewResult(c)
|
||||
parkId := c.Query("park")
|
||||
mId := getQueryValues(c, "meters")
|
||||
GmLog.Info("[天神模式]删除指定园区中的表计", zap.String("park id", parkId))
|
||||
if err := service.GMService.DeleteMeters(parkId, mId); err != nil {
|
||||
meterLog.Error("[天神模式]删除指定园区中的表计失败", zap.Error(err))
|
||||
return result.Error(500, "删除指定园区中的表计失败。")
|
||||
}
|
||||
return result.Success("指定表计已经删除。")
|
||||
}
|
||||
|
|
|
@ -149,7 +149,7 @@ func (gm _GMService) DeleteEnterprises(uid string) error {
|
|||
for _, pid := range parks {
|
||||
err = repository.GMRepository.DeleteInvoices(ctx, tx, pid)
|
||||
err = repository.GMRepository.DeleteMeterBinding(ctx, tx, pid, []string{})
|
||||
err = repository.GMRepository.DeleteMeterPookings(ctx, tx, pid)
|
||||
err = repository.GMRepository.DeleteMeterPoolings(ctx, tx, pid)
|
||||
err = repository.GMRepository.DeleteTenements(ctx, tx, pid)
|
||||
err = repository.GMRepository.DeleteMeters(ctx, tx, pid)
|
||||
err = repository.GMRepository.DeleteReports(ctx, tx, pid)
|
||||
|
@ -189,6 +189,39 @@ func (gm _GMService) DeleteMeterPooling(pId string, mId []string) error {
|
|||
tx.Rollback(ctx)
|
||||
return err
|
||||
}
|
||||
err = tx.Commit(ctx)
|
||||
if err != nil {
|
||||
gm.l.Error("未能成功提交数据库事务。", zap.Error(err))
|
||||
tx.Rollback(ctx)
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (gm _GMService) DeleteMeters(pId string, mId []string) error {
|
||||
ctx, cancel := global.TimeoutContext()
|
||||
defer cancel()
|
||||
tx, err := global.DB.Begin(ctx)
|
||||
if err != nil {
|
||||
gm.l.Error("开启数据库事务失败。", zap.Error(err))
|
||||
return err
|
||||
}
|
||||
if err := repository.GMRepository.DeleteMeterBinding(ctx, tx, pId, []string{}, mId); err != nil {
|
||||
gm.l.Error("删除指定园区中的表计和商户的绑定关系", zap.Error(err))
|
||||
tx.Rollback(ctx)
|
||||
return err
|
||||
}
|
||||
if err := repository.GMRepository.DeleteMeterPoolings(ctx, tx, pId, mId); err != nil {
|
||||
gm.l.Error("无法删除指定表记公摊关系。", zap.Error(err))
|
||||
tx.Rollback(ctx)
|
||||
return err
|
||||
}
|
||||
if err := repository.GMRepository.DeleteMeters(ctx, tx, pId, mId); err != nil {
|
||||
gm.l.Error("删除指定园区中符合条件的表计。", zap.Error(err))
|
||||
tx.Rollback(ctx)
|
||||
return err
|
||||
}
|
||||
|
||||
err = tx.Commit(ctx)
|
||||
if err != nil {
|
||||
gm.l.Error("未能成功提交数据库事务。", zap.Error(err))
|
||||
|
|
Loading…
Reference in New Issue
Block a user