Explorar o código

新需求变更

buzhanyi %!s(int64=2) %!d(string=hai) anos
pai
achega
58b1eb335e

+ 10 - 2
purchase-admin/src/main/java/com/ozs/web/controller/plan/PlanQuarterController.java

@@ -222,14 +222,22 @@ public class PlanQuarterController extends BaseController {
         return quarterService.appUpdate(quarterStandardVo);
     }
 
-    @ApiOperation(value = "申请撤销度计划")
+    @ApiOperation(value = "申请撤销度计划")
     @PostMapping("/appDelete")
     @PreAuthorize("@ss.hasPermi('plan:quarter:appDelete')")
-    @Log(title = ModularConstans.planYear, businessType = BusinessType.DELETE)
+    @Log(title = ModularConstans.planYear, businessType = BusinessType.UPDATE)
     public AjaxResult appDelete(@RequestBody PlanQuarterStandardVo quarterStandardVo) {
         return quarterService.appDelete(quarterStandardVo);
     }
 
+    @ApiOperation(value = "处理申请撤销季度计划")
+    @PostMapping("/handleApp")
+    @PreAuthorize("@ss.hasPermi('plan:quarter:handleApp')")
+    @Log(title = ModularConstans.planYear, businessType = BusinessType.UPDATE)
+    public AjaxResult handleApp(@RequestBody PlanQuarterStandardVo quarterStandardVo) {
+        return quarterService.handleApp(quarterStandardVo);
+    }
+
     @ApiOperation(value = "发函催告")
     @PostMapping("/sendLetter")
     @PreAuthorize("@ss.hasPermi('plan:quarter:sendLetter')")

+ 9 - 1
purchase-admin/src/main/java/com/ozs/web/controller/plan/PlanYearsController.java

@@ -237,11 +237,19 @@ public class PlanYearsController extends BaseController {
     @ApiOperation(value = "申请撤销年度计划")
     @PostMapping("/appDelete")
     @PreAuthorize("@ss.hasPermi('plan:planYears:appDelete')")
-    @Log(title = ModularConstans.planYear, businessType = BusinessType.DELETE)
+    @Log(title = ModularConstans.planYear, businessType = BusinessType.UPDATE)
     public AjaxResult appDelete(@RequestBody PlanYearsStandardVo yearsStandardVo) {
         return planYearsService.appDelete(yearsStandardVo);
     }
 
+    @ApiOperation(value = "处理申请撤销年度计划")
+    @PostMapping("/handleApp")
+    @PreAuthorize("@ss.hasPermi('plan:planYears:handleApp')")
+    @Log(title = ModularConstans.planYear, businessType = BusinessType.UPDATE)
+    public AjaxResult handleApp(@RequestBody PlanYearsStandardVo yearsStandardVo) {
+        return planYearsService.handleApp(yearsStandardVo);
+    }
+
     @ApiOperation(value = "发函催告")
     @PostMapping("/sendLetter")
 //    @PreAuthorize("@ss.hasPermi('plan:planYears:sendLetter')")   首页调用注释

+ 5 - 0
purchase-system/src/main/java/com/ozs/plan/doman/PlanQuarter.java

@@ -131,6 +131,11 @@ public class PlanQuarter {
      * (0:计划待提交,1:计划待审核,2:计划已退回,3:计划已审核)
      */
     private String projectStatus;
+    /**
+     * 处理申请撤销
+     * 请求根据字段 appDelete 判断,值是true就是已申请
+     */
+    private String appDelete;
     /**
      * 发函状态(0:未发函或已处理,1:确认发函)
      */

+ 5 - 0
purchase-system/src/main/java/com/ozs/plan/doman/PlanYears.java

@@ -123,6 +123,11 @@ public class PlanYears {
      * (0:计划待提交,1:计划待审核,2:计划已退回,3:计划已审核)
      */
     private String projectStatus;
+    /**
+     * 处理申请撤销
+     * 请求根据字段 appDelete 判断,值是true就是已申请
+     */
+    private String appDelete;
     /**
      * 发函状态(0:未发函或已处理,1:确认发函)
      */

+ 5 - 1
purchase-system/src/main/java/com/ozs/plan/doman/vo/responseVo/PlanQuarterResponseVo.java

@@ -91,7 +91,11 @@ public class PlanQuarterResponseVo implements Serializable {
     private String projectAttr;
     @Excel(name = "项目属性")
     private String projectAttrStr;
-
+    /**
+     * 处理申请撤销
+     * 请求根据字段 appDelete 判断,值是true就是已申请
+     */
+    private String appDelete;
     /**
      * 计划调整情况及理由--->如计划需要变更,在填写申请修改时需填写调整情况及理由,审核单位审核通过后显示
      */

+ 5 - 1
purchase-system/src/main/java/com/ozs/plan/doman/vo/responseVo/PlanYearsResponseVo.java

@@ -118,7 +118,11 @@ public class PlanYearsResponseVo implements Serializable {
      */
     @Excel(name = "项目状态")
     private String projectStatus;
-
+    /**
+     * 处理申请撤销
+     * 请求根据字段 appDelete 判断,值是true就是已申请
+     */
+    private String appDelete;
     /**
      * 发函状态(0:未发函或已处理,1:确认发函)
      */

+ 8 - 0
purchase-system/src/main/java/com/ozs/plan/service/PlanQuarterService.java

@@ -164,4 +164,12 @@ public interface PlanQuarterService extends IService<PlanQuarter> {
      * @return
      */
     AjaxResult appDelete(PlanQuarterStandardVo quarterStandardVo);
+
+    /**
+     * 处理申请撤销季度计划
+     *
+     * @param quarterStandardVo
+     * @return
+     */
+    AjaxResult handleApp(PlanQuarterStandardVo quarterStandardVo);
 }

+ 8 - 0
purchase-system/src/main/java/com/ozs/plan/service/PlanYearsService.java

@@ -274,4 +274,12 @@ public interface PlanYearsService extends IService<PlanYears> {
      * @return
      */
     AjaxResult appDelete(PlanYearsStandardVo yearsStandardVo);
+
+    /**
+     * 处理申请撤销年度计划
+     *
+     * @param yearsStandardVo
+     * @return
+     */
+    AjaxResult handleApp(PlanYearsStandardVo yearsStandardVo);
 }

+ 23 - 1
purchase-system/src/main/java/com/ozs/plan/service/impl/PlanQuarterServiceImpl.java

@@ -642,7 +642,29 @@ public class PlanQuarterServiceImpl extends ServiceImpl<PlanQuarterMapper, PlanQ
 
     @Override
     public AjaxResult appDelete(PlanQuarterStandardVo quarterStandardVo) {
-        return null;
+        PmDemand demand = demandService.selectByPlanId(quarterStandardVo.getPlanPracticalId());
+        if (!ObjectUtils.isEmpty(demand) && !demand.getProjectStatus().equals(PmProjectStatus.DEMAND_WAIT_FILL.getCode())) {
+            return AjaxResult.error("需求已建档,不可撤销");
+        }
+        PlanQuarter planQuarter = new PlanQuarter();
+        BeanUtils.copyProperties(quarterStandardVo, planQuarter);
+        planQuarter.setAppDelete("true");
+        planQuarterMapper.updateById(planQuarter);
+        return AjaxResult.success("申请成功");
+    }
+
+    @Override
+    public AjaxResult handleApp(PlanQuarterStandardVo quarterStandardVo) {
+        //getProjectAttr传值1为同意。-1为拒绝
+        if ("1".equals(quarterStandardVo.getProjectAttr())) {
+            planQuarterMapper.deletePlanQuarterById(quarterStandardVo.getPlanPracticalId());
+            return AjaxResult.success("已成功进行撤销");
+        }
+        PlanQuarter planQuarter = new PlanQuarter();
+        BeanUtils.copyProperties(quarterStandardVo, planQuarter);
+        planQuarter.setAppDelete("false");
+        planQuarterMapper.updateById(planQuarter);
+        return AjaxResult.success("已拒绝改申请");
     }
 
     //字段赋值对应的名称

+ 34 - 5
purchase-system/src/main/java/com/ozs/plan/service/impl/PlanYearsServiceImpl.java

@@ -96,8 +96,6 @@ public class PlanYearsServiceImpl extends ServiceImpl<PlanYearsMapper, PlanYears
     @Autowired
     private ProvisionalPlanMapper provisionalPlanMapper;
     @Autowired
-    private IPmDemandService pmDemandService;
-    @Autowired
     private ISysDictDataService dictDataService;
     @Autowired
     private BaseAgencyService baseAgencyService;
@@ -775,7 +773,7 @@ public class PlanYearsServiceImpl extends ServiceImpl<PlanYearsMapper, PlanYears
         pmDemandReqVo.setIsAdmin(SysUser.isAdmin(SecurityUtils.getUserId()));
         pmDemandReqVo.setDeptId(SecurityUtils.getDeptId());
         pmDemandReqVo.setPurchaseDeptId(Math.toIntExact(SecurityUtils.getDeptId()));
-        IPage<PmDemandResVo> page = pmDemandService.selectPmDemandList(pmDemandReqVo, 3);
+        IPage<PmDemandResVo> page = demandService.selectPmDemandList(pmDemandReqVo, 3);
         return AjaxResult.success(page.getTotal());
     }
 
@@ -929,7 +927,7 @@ public class PlanYearsServiceImpl extends ServiceImpl<PlanYearsMapper, PlanYears
             return AjaxResult.error("没有查到相关数据!");
         }
         // 通过季度、临时计划ID查询项目数据
-        PmDemand pmDemand = pmDemandService.selectByPlanId(provisionalPlan.getPlanPracticalId());
+        PmDemand pmDemand = demandService.selectByPlanId(provisionalPlan.getPlanPracticalId());
         if (StringUtils.isNotNull(pmDemand)) {
             String detailType = "";
             if (StringUtils.isNotNull(yearsStandardVo.getDetailType())) {
@@ -1356,7 +1354,38 @@ public class PlanYearsServiceImpl extends ServiceImpl<PlanYearsMapper, PlanYears
 
     @Override
     public AjaxResult appDelete(PlanYearsStandardVo yearsStandardVo) {
-        return null;
+        PlanQuarter byPlanYearId = planQuarterMapper.getByPlanYearId(yearsStandardVo.getPlanYearId());
+        //需求待填制可以申请,需求建档就不能申请
+        if (!ObjectUtils.isEmpty(byPlanYearId)) {
+            PmDemand demand = demandService.selectByPlanId(byPlanYearId.getPlanPracticalId());
+            if (!ObjectUtils.isEmpty(demand) && !demand.getProjectStatus().equals(PmProjectStatus.DEMAND_WAIT_FILL.getCode())) {
+                return AjaxResult.error("改需求已建档,不可进行撤销");
+            }
+        }
+        PlanYears years = new PlanYears();
+        BeanUtils.copyProperties(yearsStandardVo, years);
+        years.setAppDelete("true");
+        planYearsMapper.updateById(years);
+        return AjaxResult.success("申请成功");
+    }
+
+    @Override
+    public AjaxResult handleApp(PlanYearsStandardVo yearsStandardVo) {
+        //getProjectAttr传值1为同意。-1为拒绝
+        if ("1".equals(yearsStandardVo.getProjectAttr())) {
+            planYearsMapper.deletePlanYearsById(yearsStandardVo.getPlanYearId());
+            //年度计划撤销后季度计划也同步撤销
+            PlanQuarter byPlanYearId = planQuarterMapper.getByPlanYearId(yearsStandardVo.getPlanYearId());
+            if (!ObjectUtils.isEmpty(byPlanYearId)) {
+                planQuarterMapper.deletePlanQuarterById(byPlanYearId.getPlanPracticalId());
+            }
+            return AjaxResult.success("已成功进行撤销");
+        }
+        PlanYears years = new PlanYears();
+        BeanUtils.copyProperties(yearsStandardVo, years);
+        years.setAppDelete("false");
+        planYearsMapper.updateById(years);
+        return AjaxResult.success("已拒绝改申请");
     }
 
     /**