diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueProjectCategoryDictController.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueProjectCategoryDictController.java index 484636d73f..bc6a3607c6 100644 --- a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueProjectCategoryDictController.java +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueProjectCategoryDictController.java @@ -28,16 +28,14 @@ import com.epmet.commons.tools.validator.group.AddGroup; import com.epmet.commons.tools.validator.group.DefaultGroup; import com.epmet.commons.tools.validator.group.UpdateGroup; import com.epmet.dto.IssueProjectCategoryDictDTO; -import com.epmet.dto.form.CategoryTagInitFormDTO; -import com.epmet.dto.form.DelCategoryFormDTO; -import com.epmet.dto.form.IssueProjectCategoryDictListFormDTO; -import com.epmet.dto.form.ProjectSaveCategoryFormDTO; +import com.epmet.dto.form.*; import com.epmet.dto.result.CustomerCategoryListResultDTO; import com.epmet.dto.result.ProjectIssueCategoryResultDTO; import com.epmet.excel.IssueProjectCategoryDictExcel; import com.epmet.project.dto.CustomerCategoryDTO; import com.epmet.project.dto.result.ProjectCategoryDictResultDTO; import com.epmet.service.IssueProjectCategoryDictService; +import com.epmet.utils.ModuleConstants; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -154,8 +152,13 @@ public class IssueProjectCategoryDictController { * @Author sun **/ @PostMapping("isdisablecategory") - public Result isDisableCategory(@RequestBody ProjectSaveCategoryFormDTO formDTO) { - return new Result().ok(issueProjectCategoryDictService.isDisableCategory(formDTO)); + public Result isDisableCategory(@RequestBody IsDisableCategoryFormDTO formDTO) { + ValidatorUtils.validateEntity(formDTO, IsDisableCategoryFormDTO.IsDisableCategory.class); + if(!ModuleConstants.ID_ENABLE.equals(formDTO.getType())&&!ModuleConstants.IS_DISABLE.equals(formDTO.getType())){ + throw new RuntimeException("参数错误,操作类型值错误!"); + } + issueProjectCategoryDictService.isDisableCategory(formDTO); + return new Result(); } /** diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueProjectCategoryDictDao.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueProjectCategoryDictDao.java index 45ec49e689..6698b28722 100644 --- a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueProjectCategoryDictDao.java +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueProjectCategoryDictDao.java @@ -20,6 +20,7 @@ package com.epmet.dao; import com.epmet.commons.mybatis.dao.BaseDao; import com.epmet.dto.IssueProjectCategoryDictDTO; import com.epmet.dto.form.DelCategoryFormDTO; +import com.epmet.dto.form.IsDisableCategoryFormDTO; import com.epmet.dto.form.IssueProjectCategoryDictListFormDTO; import com.epmet.dto.result.CustomerCategoryListResultDTO; import com.epmet.entity.IssueProjectCategoryDictEntity; @@ -101,5 +102,15 @@ public interface IssueProjectCategoryDictDao extends BaseDao selectSubCustomerCategoryDict(@Param("customerId") String customerId, @Param("pid") String pid); + /** + * 批量修改分类启用、禁用状态 + * @author sun + */ + int updateCustomerCategory(IsDisableCategoryFormDTO formDTO); } diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/IssueProjectCategoryDictService.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/IssueProjectCategoryDictService.java index 067c0a059d..55fc4871c3 100644 --- a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/IssueProjectCategoryDictService.java +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/IssueProjectCategoryDictService.java @@ -20,10 +20,7 @@ package com.epmet.service; import com.epmet.commons.mybatis.service.BaseService; import com.epmet.commons.tools.page.PageData; import com.epmet.dto.IssueProjectCategoryDictDTO; -import com.epmet.dto.form.CategoryTagInitFormDTO; -import com.epmet.dto.form.DelCategoryFormDTO; -import com.epmet.dto.form.IssueProjectCategoryDictListFormDTO; -import com.epmet.dto.form.ProjectSaveCategoryFormDTO; +import com.epmet.dto.form.*; import com.epmet.dto.result.CustomerCategoryListResultDTO; import com.epmet.dto.result.ProjectIssueCategoryResultDTO; import com.epmet.entity.IssueProjectCategoryDictEntity; @@ -137,7 +134,7 @@ public interface IssueProjectCategoryDictService extends BaseService categoryList = new ArrayList<>(); + //待修改的二级分类Id汇总 + List secondList = new ArrayList<>(); + if("1".equals(dto.getCategoryType())){ + //2-1.查询子类信息 + List subList = baseDao.selectSubCustomerCategoryDict(formDTO.getCustomerId(),formDTO.getCategoryId()); + secondList = subList.stream().map(sub->sub.getId()).collect(Collectors.toList()); + categoryList.add(formDTO.getCategoryId()); + }else { + secondList.add(formDTO.getCategoryId()); + } + categoryList.addAll(secondList); + formDTO.setCategoryList(categoryList); + + //3.修改标签、分类表数据状态 + if(baseDao.updateCustomerCategory(formDTO)%s,分类Id->%s", formDTO.getCustomerId(), formDTO.getCategoryId())); + throw new RuntimeException("分类信息修改失败!"); + } + //4.修改缓存中标签状态 todo } @@ -231,6 +259,7 @@ public class IssueProjectCategoryDictServiceImpl extends BaseServiceImpl + + UPDATE issue_project_category_dict - SET DEL_FLAG = '1' + SET del_flag = '1' WHERE - CUSTOMER_ID = #{customerId} + customer_id = #{customerId} AND id = #{categoryId} @@ -138,4 +149,14 @@ + + UPDATE issue_project_category_dict + SET is_disable = #{type} + WHERE + customer_id = #{customerId} + + id = #{ids} + + + diff --git a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/IsDisableCategoryFormDTO.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/IsDisableCategoryFormDTO.java new file mode 100644 index 0000000000..e259fd81a9 --- /dev/null +++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/IsDisableCategoryFormDTO.java @@ -0,0 +1,36 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; +import java.util.List; + +/** + * 议题:保存/修改分类-接口入参 + * @Author sun + */ +@Data +public class IsDisableCategoryFormDTO implements Serializable { + + private static final long serialVersionUID = 2599592072265715951L; + public interface IsDisableCategory{} + /** + * 客户Id + */ + @NotBlank(message = "客户ID不能为空",groups = {IsDisableCategory.class}) + private String customerId; + /** + * 分类Id + */ + @NotBlank(message = "分类ID不能为空",groups = {IsDisableCategory.class}) + private String categoryId; + /** + * 操作类型(启用:enable 禁用:disable) + */ + @NotBlank(message = "是否启用类型不能为空",groups = {IsDisableCategory.class}) + private String type; + + private List categoryList; + +}