d0b9779564efc9b8b29ed20c7de1ad237c1074d2.svn-base 9.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178
  1. package cn.com.goldenwater.dcproj.controller.tacplan;
  2. import cn.com.goldenwater.dcproj.constvalue.TacPlanStep;
  3. import cn.com.goldenwater.dcproj.dao.OlBisInspOrgDao;
  4. import cn.com.goldenwater.dcproj.model.OlBisInspOrg;
  5. import cn.com.goldenwater.dcproj.model.TacProvincePlanDict;
  6. import cn.com.goldenwater.dcproj.model.TacProvincePlanProcess;
  7. import cn.com.goldenwater.dcproj.param.TacProvincePlanDictParam;
  8. import cn.com.goldenwater.dcproj.param.TacProvincePlanProcessParam;
  9. import cn.com.goldenwater.dcproj.service.TacProvincePlanDictService;
  10. import cn.com.goldenwater.dcproj.service.TacProvincePlanProcessService;
  11. import cn.com.goldenwater.core.web.BaseController;
  12. import cn.com.goldenwater.core.web.BaseResponse;
  13. import cn.com.goldenwater.id.util.UuidUtil;
  14. import io.swagger.annotations.Api;
  15. import io.swagger.annotations.ApiOperation;
  16. import io.swagger.annotations.ApiParam;
  17. import org.apache.commons.lang3.StringUtils;
  18. import com.github.pagehelper.PageInfo;
  19. import org.slf4j.Logger;
  20. import org.slf4j.LoggerFactory;
  21. import org.springframework.beans.factory.annotation.Autowired;
  22. import org.springframework.web.bind.annotation.PathVariable;
  23. import org.springframework.web.bind.annotation.RequestBody;
  24. import org.springframework.web.bind.annotation.RequestMapping;
  25. import org.springframework.web.bind.annotation.RequestMethod;
  26. import org.springframework.web.bind.annotation.RestController;
  27. import java.util.Date;
  28. import java.util.List;
  29. import java.util.Map;
  30. /**
  31. * @author lune
  32. * @date 2020-5-28
  33. */
  34. @Api(value = "TAC 省级稽察流程管理管理",tags="TAC 省级稽察流程管理管理")
  35. @RestController
  36. @RequestMapping("/tac/province/plan/process")
  37. public class TacProvincePlanProcessController extends BaseController {
  38. private Logger logger = LoggerFactory.getLogger(getClass());
  39. @Autowired
  40. private TacProvincePlanProcessService tacProvincePlanProcessService;
  41. @Autowired
  42. private OlBisInspOrgDao olBisInspOrgDao;
  43. @Autowired
  44. private TacProvincePlanDictService tacProvincePlanDictService;
  45. @ApiOperation(value = "添加/修改省级稽察流程管理")
  46. @RequestMapping(value = "", method = RequestMethod.POST)
  47. public BaseResponse<TacProvincePlanProcess> insert(@ApiParam(name = "tacProvincePlanProcess", value = "TacProvincePlanProcess", required = true) @RequestBody TacProvincePlanProcess tacProvincePlanProcess) {
  48. OlBisInspOrg olBisInspOrg=olBisInspOrgDao.get(getCurrentOrgId());
  49. tacProvincePlanProcess.setAdCode(olBisInspOrg.getAdCode());
  50. tacProvincePlanProcess.setOrgName(olBisInspOrg.getOrgNm());
  51. tacProvincePlanProcess.setOrgId(getCurrentOrgId());
  52. tacProvincePlanProcess.setPersId(getCurrentPersId());
  53. tacProvincePlanProcess.setUptm(new Date());
  54. if(tacProvincePlanProcess.getNowId().equals(tacProvincePlanProcess.getNextId())
  55. || tacProvincePlanProcess.getNowId().equals(tacProvincePlanProcess.getPrvId())
  56. ||tacProvincePlanProcess.getPrvId().equals(tacProvincePlanProcess.getNextId())){
  57. return buildFailResponse("步骤节点不能重复选择!!");
  58. }
  59. if(StringUtils.isBlank(tacProvincePlanProcess.getPrvId())){
  60. tacProvincePlanProcess.setPrvId("0");
  61. }
  62. if(StringUtils.isBlank(tacProvincePlanProcess.getNextId())){
  63. tacProvincePlanProcess.setNextId("1");
  64. }
  65. if(StringUtils.isBlank(tacProvincePlanProcess.getIsRevision())){
  66. tacProvincePlanProcess.setIsRevision("0");
  67. }
  68. if(StringUtils.isBlank(tacProvincePlanProcess.getIsExamine())){
  69. tacProvincePlanProcess.setIsExamine("0");
  70. }
  71. if(StringUtils.isBlank(tacProvincePlanProcess.getId())) {
  72. TacProvincePlanProcessParam planProcessParam=new TacProvincePlanProcessParam();
  73. planProcessParam.setOrgId(getCurrentOrgId());
  74. planProcessParam.setNextId("1");//查看是否流程已经结束
  75. List<TacProvincePlanProcess> processServiceList=tacProvincePlanProcessService.findList(planProcessParam);
  76. if(processServiceList!=null && processServiceList.size() !=0){
  77. return buildFailResponse("当前流程已经结束,请不要再添加");
  78. }
  79. planProcessParam.setNowId(tacProvincePlanProcess.getNowId());
  80. TacProvincePlanProcess planProcess=tacProvincePlanProcessService.getBy(planProcessParam);
  81. if(planProcess!=null){
  82. return buildFailResponse("当前步骤已经存在,请不要重复添加!!");
  83. }
  84. String uuid = UuidUtil.uuid(); // 生成uuid
  85. tacProvincePlanProcess.setId(uuid);
  86. int sortNo=tacProvincePlanProcessService.getMaxSortNo(getCurrentOrgId(),olBisInspOrg.getRlcode())+1;
  87. tacProvincePlanProcess.setSortNo(sortNo);
  88. tacProvincePlanProcessService.insert(tacProvincePlanProcess);
  89. }else{
  90. TacProvincePlanProcess planProcess=tacProvincePlanProcessService.get(tacProvincePlanProcess.getId());
  91. if(!planProcess.getNowId().equals(tacProvincePlanProcess.getNowId())) {
  92. TacProvincePlanDict tacProvincePlanDict=new TacProvincePlanDict();
  93. tacProvincePlanDict.setDataStat("0");
  94. tacProvincePlanDict.setId(planProcess.getNowId());
  95. tacProvincePlanDictService.update(tacProvincePlanDict);
  96. }
  97. tacProvincePlanProcess.setUptm(new Date());
  98. tacProvincePlanProcessService.update(tacProvincePlanProcess);
  99. }
  100. return buildSuccessResponse(tacProvincePlanProcess);
  101. }
  102. @ApiOperation(value = "根据ID删除省级稽察流程管理")
  103. @RequestMapping(value = "/del/{id}", method = RequestMethod.GET)
  104. public BaseResponse delete(@ApiParam(name = "id", value = "id", required = true) @PathVariable String id) {
  105. int ret = tacProvincePlanProcessService.delete(id);
  106. return buildSuccessResponse();
  107. }
  108. @ApiOperation(value = "获取计划步骤字典,为上一步或者下一步时需要选择上一步和下一步的节点")
  109. @RequestMapping(value = "/plan", method = RequestMethod.GET)
  110. public BaseResponse plan() {
  111. Map<String,String> stepmap=TacPlanStep.getPlanStep();
  112. return buildSuccessResponse(stepmap);
  113. }
  114. @ApiOperation(value = "根据ID获取省级稽察流程管理(单表)")
  115. @RequestMapping(value = "/{id}", method = RequestMethod.GET)
  116. public BaseResponse<TacProvincePlanProcess> get(@ApiParam(name = "id", value = "id", required = true) @PathVariable String id) {
  117. TacProvincePlanProcess tacProvincePlanProcess = tacProvincePlanProcessService.get(id);
  118. TacProvincePlanDictParam tacProvincePlanDictParam=new TacProvincePlanDictParam();
  119. tacProvincePlanDictParam.setOrgId(getCurrentOrgId());
  120. List<TacProvincePlanDict> notAddList=tacProvincePlanDictService.findNotAddList(tacProvincePlanDictParam);
  121. tacProvincePlanProcess.setNextAddList(notAddList);
  122. return buildSuccessResponse(tacProvincePlanProcess);
  123. }
  124. @ApiOperation(value = "获取省级稽察流程管理(列表所有)")
  125. @RequestMapping(value = "/list", method = RequestMethod.POST)
  126. public BaseResponse<List<TacProvincePlanProcess>> list(@ApiParam(name = "tacProvincePlanProcessParam", value = "tacProvincePlanProcessParam", required = true) @RequestBody TacProvincePlanProcessParam tacProvincePlanProcessParam) {
  127. tacProvincePlanProcessParam.setOrgId(getCurrentOrgId());
  128. List<TacProvincePlanProcess> tacProvincePlanProcessList = tacProvincePlanProcessService.findList(tacProvincePlanProcessParam);
  129. for(TacProvincePlanProcess planProcess:tacProvincePlanProcessList){
  130. if("1".equals(planProcess.getNextId())){
  131. planProcess.setCanDel("1");
  132. planProcess.setCanEdit("1");
  133. }else{
  134. boolean hasNext=true;
  135. for(TacProvincePlanProcess planProcess2:tacProvincePlanProcessList){
  136. if(planProcess.getNextId().equals(planProcess2.getNowId())){
  137. planProcess.setCanDel("0");
  138. planProcess.setCanEdit("0");
  139. hasNext=false;
  140. }
  141. }
  142. if(hasNext){
  143. planProcess.setCanDel("1");
  144. planProcess.setCanEdit("1");
  145. }
  146. }
  147. }
  148. return buildSuccessResponse(tacProvincePlanProcessList);
  149. }
  150. @ApiOperation(value = "获取省级稽察流程管理(列表--分页)")
  151. @RequestMapping(value = "/page", method = RequestMethod.POST)
  152. public BaseResponse<PageInfo<TacProvincePlanProcess>> page(@ApiParam(name = "tacProvincePlanProcessParam", value = "tacProvincePlanProcessParam", required = true) @RequestBody TacProvincePlanProcessParam tacProvincePlanProcessParam) {
  153. tacProvincePlanProcessParam.setOrgId(getCurrentOrgId());
  154. PageInfo<TacProvincePlanProcess> tacProvincePlanProcessList = tacProvincePlanProcessService.findPageInfo(tacProvincePlanProcessParam);
  155. return buildSuccessResponse(tacProvincePlanProcessList);
  156. }
  157. }