|
@@ -81,6 +81,15 @@ func AddChartPermission(req crm.PermissionAddReq) (err error, errMsg string) {
|
|
|
err = fmt.Errorf("新增品种权限失败, Err: " + e.Error())
|
|
|
return
|
|
|
}
|
|
|
+ if req.ParentId > 0 && req.Enabled == 1 {
|
|
|
+ // 更新父级品种的启用禁用
|
|
|
+ err = ob.SetEnabledByChartPermissionId(req.ParentId, req.Enabled)
|
|
|
+ if err != nil {
|
|
|
+ errMsg = "更新品种启用禁用状态失败"
|
|
|
+ err = fmt.Errorf("更新品种启用禁用状态失败, Err: " + err.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+ }
|
|
|
return
|
|
|
}
|
|
|
|
|
@@ -115,12 +124,36 @@ func EditChartPermission(req crm.PermissionEditReq) (err error, errMsg string) {
|
|
|
return
|
|
|
}
|
|
|
}
|
|
|
- oldEnabled := item.Enabled
|
|
|
+
|
|
|
+ //判断父级品种是否存在
|
|
|
+ parentPermissionName := ""
|
|
|
+ if req.ParentId > 0 {
|
|
|
+ //查询父级是否存在
|
|
|
+ parent, e := ob.GetItemById(req.ParentId)
|
|
|
+ if e != nil {
|
|
|
+ errMsg = "查询父级品种失败"
|
|
|
+ err = fmt.Errorf("查询父级品种失败, Err: " + e.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if parent.ChartPermissionId == 0 {
|
|
|
+ errMsg = "请选择正确的父级品种"
|
|
|
+ err = fmt.Errorf("请选择正确的父级品种")
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if parent.ParentId != 0 {
|
|
|
+ errMsg = "只能选择一级品种作为父级品种"
|
|
|
+ err = fmt.Errorf("只能选择一级品种作为父级品种")
|
|
|
+ return
|
|
|
+ }
|
|
|
+ parentPermissionName = parent.PermissionName
|
|
|
+ }
|
|
|
item.PermissionName = req.PermissionName
|
|
|
item.Enabled = req.Enabled
|
|
|
item.IsPublic = req.IsPublic
|
|
|
+ item.ParentId = req.ParentId
|
|
|
+ item.ClassifyName = parentPermissionName
|
|
|
item.LastUpdatedTime = time.Now()
|
|
|
- err = item.Update([]string{"PermissionName", "Enabled", "IsPublic", "LastUpdatedTime"})
|
|
|
+ err = item.Update([]string{"PermissionName", "Enabled", "IsPublic", "ClassifyName", "LastUpdatedTime"})
|
|
|
if err != nil {
|
|
|
errMsg = "更新失败"
|
|
|
err = fmt.Errorf("更新品种失败, Err: " + err.Error())
|
|
@@ -139,9 +172,19 @@ func EditChartPermission(req crm.PermissionEditReq) (err error, errMsg string) {
|
|
|
return
|
|
|
}
|
|
|
}
|
|
|
- if oldEnabled != req.Enabled {
|
|
|
- // 更新二级的启动禁用
|
|
|
- err = ob.SetEnabled(item.ChartPermissionId, req.Enabled)
|
|
|
+ // 更新二级的启动禁用
|
|
|
+ err = ob.UpdatesByParentId(item.ChartPermissionId, req.Enabled, req.PermissionName)
|
|
|
+ if err != nil {
|
|
|
+ errMsg = "更新品种启用禁用状态失败"
|
|
|
+ err = fmt.Errorf("更新品种启用禁用状态失败, Err: " + err.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ //
|
|
|
+ } else if item.ParentId > 0 {
|
|
|
+ if req.Enabled == 1 {
|
|
|
+ // 更新父级品种的启用禁用
|
|
|
+ err = ob.SetEnabledByChartPermissionId(item.ParentId, req.Enabled)
|
|
|
if err != nil {
|
|
|
errMsg = "更新品种启用禁用状态失败"
|
|
|
err = fmt.Errorf("更新品种启用禁用状态失败, Err: " + err.Error())
|
|
@@ -149,6 +192,7 @@ func EditChartPermission(req crm.PermissionEditReq) (err error, errMsg string) {
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
return
|
|
|
}
|
|
|
|