|
@@ -191,17 +191,25 @@ func (this *EnglishReportController) ListClassify() {
|
|
|
// @Param ParentId query int true "父级Id 添加父级时为0"
|
|
|
// @Param Sort query string false "排序"
|
|
|
// @Success 200 新增成功
|
|
|
-// @router /classify/add [get]
|
|
|
+// @router /classify/add [post]
|
|
|
func (this *EnglishReportController) AddClassify() {
|
|
|
br := new(models.BaseResponse).Init()
|
|
|
defer func() {
|
|
|
this.Data["json"] = br
|
|
|
this.ServeJSON()
|
|
|
}()
|
|
|
- classifyName := this.GetString("ClassifyName")
|
|
|
- parentId, _ := this.GetInt("ParentId")
|
|
|
- sort, _ := this.GetInt("Sort")
|
|
|
-
|
|
|
+ //classifyName := this.GetString("ClassifyName")
|
|
|
+ //parentId, _ := this.GetInt("ParentId")
|
|
|
+ var req models.EnClassifyAddReq
|
|
|
+ err := json.Unmarshal(this.Ctx.Input.RequestBody, &req)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "参数解析异常!"
|
|
|
+ br.ErrMsg = "参数解析失败,Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+ classifyName := req.ClassifyName
|
|
|
+ parentId := req.ParentId
|
|
|
+ ob := new(models.EnglishClassify)
|
|
|
// 查新父级分类是否存在
|
|
|
rootId := 0
|
|
|
if parentId > 0 {
|
|
@@ -221,14 +229,21 @@ func (this *EnglishReportController) AddClassify() {
|
|
|
rootId = parentClassify.RootId
|
|
|
}
|
|
|
}
|
|
|
+ maxSort, e := ob.GetMaxSort()
|
|
|
+ if e != nil {
|
|
|
+ br.Msg = "操作失败"
|
|
|
+ br.ErrMsg = "查询品种排序失败, Err: " + e.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
|
|
|
+ nowTime := time.Now().Local()
|
|
|
item := &models.EnglishClassify{
|
|
|
ClassifyName: classifyName,
|
|
|
- Sort: sort,
|
|
|
+ Sort: maxSort + 1,
|
|
|
ParentId: parentId,
|
|
|
RootId: rootId,
|
|
|
- CreateTime: time.Now(),
|
|
|
- ModifyTime: time.Now(),
|
|
|
+ CreateTime: nowTime,
|
|
|
+ ModifyTime: nowTime,
|
|
|
IsShow: 1,
|
|
|
}
|
|
|
counts, err := models.GetEnglishClassifyCountsByName(classifyName, parentId)
|
|
@@ -249,8 +264,8 @@ func (this *EnglishReportController) AddClassify() {
|
|
|
br.ErrMsg = "保存失败,Err:" + err.Error()
|
|
|
return
|
|
|
}
|
|
|
+ item.Id = int(newId)
|
|
|
if parentId == 0 { //一级目录的rootId等于自己本身
|
|
|
- item.Id = int(newId)
|
|
|
item.RootId = int(newId)
|
|
|
err = item.UpdateEnglishClassify([]string{"RootId"})
|
|
|
if err != nil {
|
|
@@ -260,11 +275,28 @@ func (this *EnglishReportController) AddClassify() {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ if item.ParentId != item.RootId && item.ParentId > 0 { //三级分类才能绑定品种权限
|
|
|
+ permissions := make([]*models.EnClassifyPermission, 0)
|
|
|
+ for _, p := range req.EnPermissions {
|
|
|
+ v := new(models.EnClassifyPermission)
|
|
|
+ v.EnPermissionId = p
|
|
|
+ v.EnClassifyId = item.Id
|
|
|
+ v.CreateTime = nowTime
|
|
|
+ permissions = append(permissions, v)
|
|
|
+ }
|
|
|
+ if e = models.CreateEnClassifyPermissions(permissions); e != nil {
|
|
|
+ br.Msg = "保存失败"
|
|
|
+ br.ErrMsg = "更新分类品种权限失败, Err: " + e.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
br.Ret = 200
|
|
|
br.Success = true
|
|
|
br.Msg = "新增成功"
|
|
|
}
|
|
|
|
|
|
+// EditClassify
|
|
|
// @Title 编辑分类
|
|
|
// @Description 编辑分类接口
|
|
|
// @Param ClassifyId int true "分类Id"
|
|
@@ -272,17 +304,25 @@ func (this *EnglishReportController) AddClassify() {
|
|
|
// @Param ParentId query int true "父级Id 添加父级时为0"
|
|
|
// @Param Sort query string false "排序"
|
|
|
// @Success 200 保存成功
|
|
|
-// @router /classify/edit [get]
|
|
|
+// @router /classify/edit [post]
|
|
|
func (this *EnglishReportController) EditClassify() {
|
|
|
br := new(models.BaseResponse).Init()
|
|
|
defer func() {
|
|
|
this.Data["json"] = br
|
|
|
this.ServeJSON()
|
|
|
}()
|
|
|
- classifyId, _ := this.GetInt("ClassifyId")
|
|
|
- classifyName := this.GetString("ClassifyName")
|
|
|
- parentId, _ := this.GetInt("ParentId")
|
|
|
- sort, _ := this.GetInt("Sort")
|
|
|
+
|
|
|
+ var req models.EnClassifyEditReq
|
|
|
+ err := json.Unmarshal(this.Ctx.Input.RequestBody, &req)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "参数解析异常!"
|
|
|
+ br.ErrMsg = "参数解析失败,Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+ classifyId := req.ClassifyId
|
|
|
+ classifyName := req.ClassifyName
|
|
|
+ parentId := req.ParentId
|
|
|
+ //ob := new(models.EnglishClassify)
|
|
|
|
|
|
if parentId == classifyId {
|
|
|
br.Msg = "上级分类不能选择自己"
|
|
@@ -359,14 +399,24 @@ func (this *EnglishReportController) EditClassify() {
|
|
|
if parentId == 0 { //一级分类的顶级分类为自己的ID
|
|
|
rootId = oldItem.Id
|
|
|
}
|
|
|
+
|
|
|
+ /*maxSort, e := ob.GetMaxSortByParentId(parentId)
|
|
|
+ if e != nil {
|
|
|
+ br.Msg = "操作失败"
|
|
|
+ br.ErrMsg = "查询品种排序失败, Err: " + e.Error()
|
|
|
+ return
|
|
|
+ }*/
|
|
|
+
|
|
|
+ nowTime := time.Now().Local()
|
|
|
+
|
|
|
item := &models.EnglishClassify{
|
|
|
Id: oldItem.Id,
|
|
|
ClassifyName: classifyName,
|
|
|
- Sort: sort,
|
|
|
- ParentId: parentId,
|
|
|
- RootId: rootId,
|
|
|
- ModifyTime: time.Now(),
|
|
|
- IsShow: 1,
|
|
|
+ // Sort: maxSort + 1,
|
|
|
+ ParentId: parentId,
|
|
|
+ RootId: rootId,
|
|
|
+ ModifyTime: nowTime,
|
|
|
+ IsShow: 1,
|
|
|
}
|
|
|
{
|
|
|
// 更新研报里的分类名称
|
|
@@ -389,6 +439,23 @@ func (this *EnglishReportController) EditClassify() {
|
|
|
br.ErrMsg = "保存失败,Err:" + err.Error()
|
|
|
return
|
|
|
}
|
|
|
+ // 更新权限
|
|
|
+ if item.ParentId != item.RootId && item.ParentId > 0 { //三级分类才能编辑品种
|
|
|
+ permissions := make([]*models.EnClassifyPermission, 0)
|
|
|
+ for _, p := range req.EnPermissions {
|
|
|
+ v := new(models.EnClassifyPermission)
|
|
|
+ v.EnPermissionId = p
|
|
|
+ v.EnClassifyId = req.ClassifyId
|
|
|
+ v.CreateTime = nowTime
|
|
|
+ permissions = append(permissions, v)
|
|
|
+ }
|
|
|
+ if e = models.ClearAndCreateEnClassifyPermissions(req.ClassifyId, permissions); e != nil {
|
|
|
+ br.Msg = "保存失败"
|
|
|
+ br.ErrMsg = "更新分类品种权限失败, Err: " + e.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
err = models.UpdateEnglishReportClassifyByFirstSecondClassifyId(classifyId, parentId)
|
|
|
if err != nil {
|
|
|
br.Msg = "保存失败"
|