Browse Source

项目管理-任务下达

suntianwu 2 years ago
parent
commit
040c310dd7

+ 5 - 2
purchase-admin/src/main/java/com/ozs/web/controller/pm/PmDemandController.java

@@ -51,13 +51,16 @@ public class PmDemandController extends BaseController {
     /**
      * 查看详情
      */
-    @ApiOperation(value = "查看详情", notes = "必传demandId,其他字段不传")
+    @ApiOperation(value = "查看详情", notes = "必传demandId和详情类型,其他字段不传")
     @PostMapping("/view")
     public AjaxResult view(@RequestBody PmDemandReqVo pmDemandReqVo) {
         if(pmDemandReqVo.getDemandId() == null){
             return AjaxResult.error("demandId不能为空");
         }
-        return success(pmDemandService.selectPmDemandByDemandId(pmDemandReqVo.getDemandId()));
+        if(StringUtils.isEmpty(pmDemandReqVo.getDetailType())){
+            return AjaxResult.error("详情的类型不能为空");
+        }
+        return success(pmDemandService.selectPmDemandByDemandId(pmDemandReqVo.getDemandId(),pmDemandReqVo.getDetailType()));
     }
 
     /**

+ 6 - 2
purchase-admin/src/main/java/com/ozs/web/controller/pm/PmTaskReleaseController.java

@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.ozs.common.core.controller.BaseController;
 import com.ozs.common.core.domain.AjaxResult;
 import com.ozs.common.core.domain.model.LoginUser;
+import com.ozs.common.utils.StringUtils;
 import com.ozs.framework.web.service.TokenService;
 import com.ozs.pm.doman.vo.requestVo.PmBookBuildingReqVo;
 import com.ozs.pm.doman.vo.requestVo.PmDemandReqVo;
@@ -62,12 +63,15 @@ public class PmTaskReleaseController extends BaseController {
     /**
      * 查看详情
      */
-    @ApiOperation(value = "查看详情", notes = "必传demandId,其他字段不传")
+    @ApiOperation(value = "查看详情", notes = "必传demandId和详情类型,其他字段不传")
     @PostMapping("/view")
     public AjaxResult view(@RequestBody PmDemandReqVo pmDemandReqVo) {
         if(pmDemandReqVo.getDemandId() == null){
             return AjaxResult.error("demandId不能为空");
         }
-        return success(pmDemandService.selectPmDemandByDemandId(pmDemandReqVo.getDemandId()));
+        if(StringUtils.isEmpty(pmDemandReqVo.getDetailType())){
+            return AjaxResult.error("详情的类型不能为空");
+        }
+        return success(pmDemandService.selectPmDemandByDemandId(pmDemandReqVo.getDemandId(), pmDemandReqVo.getDetailType()));
     }
 }

+ 5 - 2
purchase-system/src/main/java/com/ozs/pm/doman/vo/requestVo/PmDemandReqVo.java

@@ -69,8 +69,11 @@ public class PmDemandReqVo extends PageVo
     @ApiModelProperty("上传附件")
     private List<SysFileRef> sysFileRefs;
 
-    /** 模块名称 */
-    @ApiModelProperty("模块名称")
+    /** 流程图中的模块名称 */
+    @ApiModelProperty("流程图中的模块名称")
     private String moduleName;
 
+    /** 查看详情的类型 */
+    @ApiModelProperty("详情类型,1项目计划,2需求建档,3任务下达,4中标信息,5合同信息,6建设情况")
+    private String detailType;
 }

+ 1 - 1
purchase-system/src/main/java/com/ozs/pm/service/IPmDemandService.java

@@ -25,7 +25,7 @@ public interface IPmDemandService extends IService<PmDemand>
      * @param demandId 采购需求主键
      * @return 采购需求
      */
-    public PmDemandResVo selectPmDemandByDemandId(Long demandId);
+    public PmDemandResVo selectPmDemandByDemandId(Long demandId,String detailType);
 
     /**
      * 查询采购需求列表

+ 164 - 152
purchase-system/src/main/java/com/ozs/pm/service/impl/PmDemandServiceImpl.java

@@ -68,188 +68,200 @@ public class PmDemandServiceImpl extends ServiceImpl<PmDemandMapper, PmDemand> i
      * @return 采购需求
      */
     @Override
-    public PmDemandResVo selectPmDemandByDemandId(Long demandId) {
+    public PmDemandResVo selectPmDemandByDemandId(Long demandId,String detailType) {
         PmDemand pmDemand = pmDemandMapper.selectPmDemandByDemandId(demandId);
         if(pmDemand != null){
             PmDemandResVo vo = new PmDemandResVo();
-            BeanUtils.copyProperties(pmDemand, vo);
+            vo.setDemandId(demandId);
+            if("1".equals(detailType)) { //项目计划
 
-            SysDeptResponseVo sysDeptResponseVo = (SysDeptResponseVo) deptService.selectDeptById(vo.getPurchaseDeptId()).get("sysDept");
-            if(sysDeptResponseVo != null){
-                vo.setPurchaseDeptName(sysDeptResponseVo.getDeptName());
-            }
-
-            String purchaseServicesName = dictDataService.selectDictLabel("purchase_services", vo.getPurchaseServices());
-            if(StringUtils.isNotEmpty(purchaseServicesName)){
-                vo.setPurchaseServicesName(purchaseServicesName);
-            }
+                BeanUtils.copyProperties(pmDemand, vo);
 
-            //采购需求附件
-            HashMap<String, String> demandFileMap = getFileMap(vo.getDemandId(),SysFileRefEnum.PM_DEMAND.getType());
-            if(demandFileMap != null){
-                vo.setDemandFileMap(demandFileMap);
-            }
+                SysDeptResponseVo sysDeptResponseVo = (SysDeptResponseVo) deptService.selectDeptById(vo.getPurchaseDeptId()).get("sysDept");
+                if(sysDeptResponseVo != null){
+                    vo.setPurchaseDeptName(sysDeptResponseVo.getDeptName());
+                }
 
-            //采购需求审核文件
-            HashMap<String, String> auditFileMap = getFileMap(vo.getDemandId(),SysFileRefEnum.PM_DEMAND_EXAMINE.getType());
-            if(auditFileMap != null){
-                vo.setAuditFileMap(auditFileMap);
-            }
+                String purchaseServicesName = dictDataService.selectDictLabel("purchase_services", vo.getPurchaseServices());
+                if(StringUtils.isNotEmpty(purchaseServicesName)){
+                    vo.setPurchaseServicesName(purchaseServicesName);
+                }
 
-            //任务下达文
-            HashMap<String, String> taskReleaseFileMap = getFileMap(vo.getDemandId(),SysFileRefEnum.PM_TAST_RELEASE.getType());
-            if(taskReleaseFileMap != null){
-                vo.setTaskReleaseFileMap(taskReleaseFileMap);
-            }
+                //采购需求附
+                HashMap<String, String> demandFileMap = getFileMap(vo.getDemandId(),SysFileRefEnum.PM_DEMAND.getType());
+                if(demandFileMap != null){
+                    vo.setDemandFileMap(demandFileMap);
+                }
 
-            //项目类型
-            for (ProjectTypes value : ProjectTypes.values()) {
-                if (vo.getProjectType() != null && vo.getProjectType().equals(value.getCode())) {
-                    vo.setProjectTypeName(value.getInfo());
-                    break;
+                //项目类型
+                for (ProjectTypes value : ProjectTypes.values()) {
+                    if (vo.getProjectType() != null && vo.getProjectType().equals(value.getCode())) {
+                        vo.setProjectTypeName(value.getInfo());
+                        break;
+                    }
                 }
-            }
-            //是否为超限额计划
-            for (IsExcess value : IsExcess.values()) {
-                if (vo.getIsExcess() != null && vo.getIsExcess().equals(value.getCode())) {
-                    vo.setIsExcessName(value.getInfo());
-                    break;
+                //是否为超限额计划
+                for (IsExcess value : IsExcess.values()) {
+                    if (vo.getIsExcess() != null && vo.getIsExcess().equals(value.getCode())) {
+                        vo.setIsExcessName(value.getInfo());
+                        break;
+                    }
                 }
-            }
 
-            //采购方式
-            for (PlanPurchaseMode value : PlanPurchaseMode.values()) {
-                if (vo.getPurchaseMode() != null && vo.getPurchaseMode().equals(value.getCode())) {
-                    vo.setPurchaseModeName(value.getInfo());
-                    break;
+                //采购方式
+                for (PlanPurchaseMode value : PlanPurchaseMode.values()) {
+                    if (vo.getPurchaseMode() != null && vo.getPurchaseMode().equals(value.getCode())) {
+                        vo.setPurchaseModeName(value.getInfo());
+                        break;
+                    }
                 }
-            }
-            //项目属性
-            for (ProjectAttribute value : ProjectAttribute.values()) {
-                if (vo.getProjectAttr() != null && vo.getProjectAttr().equals(value.getCode())) {
-                    vo.setProjectAttrName(value.getInfo());
-                    break;
+                //项目属性
+                for (ProjectAttribute value : ProjectAttribute.values()) {
+                    if (vo.getProjectAttr() != null && vo.getProjectAttr().equals(value.getCode())) {
+                        vo.setProjectAttrName(value.getInfo());
+                        break;
+                    }
                 }
-            }
-            //预警状态
-            for (WarnStatus value : WarnStatus.values()) {
-                if (vo.getWarnStatus() != null && vo.getWarnStatus().equals(value.getCode())) {
-                    vo.setWarnStatusName(value.getInfo());
-                    break;
+                //预警状态
+                for (WarnStatus value : WarnStatus.values()) {
+                    if (vo.getWarnStatus() != null && vo.getWarnStatus().equals(value.getCode())) {
+                        vo.setWarnStatusName(value.getInfo());
+                        break;
+                    }
                 }
-            }
 
-            //项目状态
-            for (PmProjectStatus value : PmProjectStatus.values()) {
-                if (vo.getProjectStatus() != null && vo.getProjectStatus().equals(value.getCode())) {
-                    vo.setProjectStatusName(value.getInfo());
-                    break;
+                //项目状态
+                for (PmProjectStatus value : PmProjectStatus.values()) {
+                    if (vo.getProjectStatus() != null && vo.getProjectStatus().equals(value.getCode())) {
+                        vo.setProjectStatusName(value.getInfo());
+                        break;
+                    }
                 }
-            }
 
-            if(ProjectTypes.EQUIPMENTTYPE.getCode().equals(vo.getProjectType())){//装备类
-                PmDemandEquip obj = new PmDemandEquip();
-                obj.setDemandId(demandId);
-                List<PmDemandEquip> list = iPmDemandEquipService.selectPmDemandEquipList(obj);
-                if(list !=null && list.size() > 0){
-                    PmDemandEquipResVo responseVo = new PmDemandEquipResVo();
-                    BeanUtils.copyProperties(list.get(0),responseVo);
-                    //采购方式建议
-                    for (ProcurementMethodSuggest value : ProcurementMethodSuggest.values()) {
-                        if (responseVo.getProcurementMethodSuggest() != null && responseVo.getProcurementMethodSuggest().equals(value.getCode())) {
-                            responseVo.setProcurementMethodSuggestName(value.getInfo());
-                            break;
-                        }
-                    }
+            } else if("2".equals(detailType)) { //需求建档
 
-                    HashMap<String, String> fileMap1 = getFileMap(vo.getDemandId(),SysFileRefEnum.PM_DEMAND_EQUIP.getType());
-                    if(fileMap1 != null){
-                        responseVo.setFileMap(fileMap1);
-                    }
+                //采购需求审核文件
+                HashMap<String, String> auditFileMap = getFileMap(vo.getDemandId(),SysFileRefEnum.PM_DEMAND_EXAMINE.getType());
+                if(auditFileMap != null){
+                    vo.setAuditFileMap(auditFileMap);
+                }
 
-                    vo.setPmDemandEquipResVo(responseVo);
-                }
-            } else if(ProjectTypes.MATERIALTYPE.getCode().equals(vo.getProjectType())){ //物资类
-                PmDemandMaterials obj = new PmDemandMaterials();
-                obj.setDemandId(demandId);
-                List<PmDemandMaterials> list = iPmDemandMaterialsService.selectPmDemandMaterialsList(obj);
-                if(list !=null && list.size() > 0){
-                    PmDemandMaterialsResVo responseVo = new PmDemandMaterialsResVo();
-                    BeanUtils.copyProperties(list.get(0),responseVo);
-                    //采购方式建议
-                    for (ProcurementMethodSuggest value : ProcurementMethodSuggest.values()) {
-                        if (responseVo.getProcurementMethodSuggest() != null && responseVo.getProcurementMethodSuggest().equals(value.getCode())) {
-                            responseVo.setProcurementMethodSuggestName(value.getInfo());
-                            break;
+                if(ProjectTypes.EQUIPMENTTYPE.getCode().equals(pmDemand.getProjectType())){//装备类
+                    PmDemandEquip obj = new PmDemandEquip();
+                    obj.setDemandId(demandId);
+                    List<PmDemandEquip> list = iPmDemandEquipService.selectPmDemandEquipList(obj);
+                    if(list !=null && list.size() > 0){
+                        PmDemandEquipResVo responseVo = new PmDemandEquipResVo();
+                        BeanUtils.copyProperties(list.get(0),responseVo);
+                        //采购方式建议
+                        for (ProcurementMethodSuggest value : ProcurementMethodSuggest.values()) {
+                            if (responseVo.getProcurementMethodSuggest() != null && responseVo.getProcurementMethodSuggest().equals(value.getCode())) {
+                                responseVo.setProcurementMethodSuggestName(value.getInfo());
+                                break;
+                            }
                         }
-                    }
-                    HashMap<String, String> fileMap2 = getFileMap(vo.getDemandId(),SysFileRefEnum.PM_DEMAND_MATERIALS.getType());
-                    if(fileMap2 != null){
-                        responseVo.setFileMap(fileMap2);
-                    }
-                    vo.setPmDemandMaterialsResVo(responseVo);
-                }
-            } else if(ProjectTypes.SERVICESTYPE.getCode().equals(vo.getProjectType())){//服务类
-                PmDemandServe obj = new PmDemandServe();
-                obj.setDemandId(demandId);
-                List<PmDemandServe> list = iPmDemandServeService.selectPmDemandServeList(obj);
-                if(list !=null && list.size() > 0){
-                    PmDemandServeResVo responseVo = new PmDemandServeResVo();
-                    BeanUtils.copyProperties(list.get(0),responseVo);
-                    //采购方式建议
-                    for (ProcurementMethodSuggest value : ProcurementMethodSuggest.values()) {
-                        if (responseVo.getProcurementMethodSuggest() != null && responseVo.getProcurementMethodSuggest().equals(value.getCode())) {
-                            responseVo.setProcurementMethodSuggestName(value.getInfo());
-                            break;
+
+                        HashMap<String, String> fileMap1 = getFileMap(demandId,SysFileRefEnum.PM_DEMAND_EQUIP.getType());
+                        if(fileMap1 != null){
+                            responseVo.setFileMap(fileMap1);
                         }
+
+                        vo.setPmDemandEquipResVo(responseVo);
                     }
-                    HashMap<String, String> fileMap3 = getFileMap(vo.getDemandId(),SysFileRefEnum.PM_DEMAND_SERVE.getType());
-                    if(fileMap3 != null){
-                        responseVo.setFileMap(fileMap3);
-                    }
-                    vo.setPmDemandServeResVo(responseVo);
-                }
-            } else if(ProjectTypes.PLANTOEXAMINETYPE.getCode().equals(vo.getProjectType())){//工程类
-                PmDemandEngineering obj = new PmDemandEngineering();
-                obj.setDemandId(demandId);
-                List<PmDemandEngineering> list = iPmDemandEngineeringService.selectPmDemandEngineeringList(obj);
-                if(list !=null && list.size() > 0){
-                    PmDemandEngineeringResVo responseVo = new PmDemandEngineeringResVo();
-                    BeanUtils.copyProperties(list.get(0),responseVo);
-                    //采购方式建议
-                    for (ProcurementMethodSuggest value : ProcurementMethodSuggest.values()) {
-                        if (responseVo.getProcurementMethodSuggest() != null && responseVo.getProcurementMethodSuggest().equals(value.getCode())) {
-                            responseVo.setProcurementMethodSuggestName(value.getInfo());
-                            break;
+                } else if(ProjectTypes.MATERIALTYPE.getCode().equals(pmDemand.getProjectType())){ //物资类
+                    PmDemandMaterials obj = new PmDemandMaterials();
+                    obj.setDemandId(demandId);
+                    List<PmDemandMaterials> list = iPmDemandMaterialsService.selectPmDemandMaterialsList(obj);
+                    if(list !=null && list.size() > 0){
+                        PmDemandMaterialsResVo responseVo = new PmDemandMaterialsResVo();
+                        BeanUtils.copyProperties(list.get(0),responseVo);
+                        //采购方式建议
+                        for (ProcurementMethodSuggest value : ProcurementMethodSuggest.values()) {
+                            if (responseVo.getProcurementMethodSuggest() != null && responseVo.getProcurementMethodSuggest().equals(value.getCode())) {
+                                responseVo.setProcurementMethodSuggestName(value.getInfo());
+                                break;
+                            }
                         }
-                    }
-                    //项目类别
-                    for (EngineeringProjectCategory value : EngineeringProjectCategory.values()) {
-                        if (responseVo.getProjectCategory() != null && responseVo.getProjectCategory().equals(value.getCode())) {
-                            responseVo.setProjectCategoryName(value.getInfo());
-                            break;
+                        HashMap<String, String> fileMap2 = getFileMap(demandId,SysFileRefEnum.PM_DEMAND_MATERIALS.getType());
+                        if(fileMap2 != null){
+                            responseVo.setFileMap(fileMap2);
                         }
+                        vo.setPmDemandMaterialsResVo(responseVo);
                     }
-                    //承包方式
-                    for (EngineeringContractingMode value : EngineeringContractingMode.values()) {
-                        if (responseVo.getContractingMode() != null && responseVo.getContractingMode().equals(value.getCode())) {
-                            responseVo.setContractingModeName(value.getInfo());
-                            break;
+                } else if(ProjectTypes.SERVICESTYPE.getCode().equals(pmDemand.getProjectType())){//服务类
+                    PmDemandServe obj = new PmDemandServe();
+                    obj.setDemandId(demandId);
+                    List<PmDemandServe> list = iPmDemandServeService.selectPmDemandServeList(obj);
+                    if(list !=null && list.size() > 0){
+                        PmDemandServeResVo responseVo = new PmDemandServeResVo();
+                        BeanUtils.copyProperties(list.get(0),responseVo);
+                        //采购方式建议
+                        for (ProcurementMethodSuggest value : ProcurementMethodSuggest.values()) {
+                            if (responseVo.getProcurementMethodSuggest() != null && responseVo.getProcurementMethodSuggest().equals(value.getCode())) {
+                                responseVo.setProcurementMethodSuggestName(value.getInfo());
+                                break;
+                            }
                         }
-                    }
-                    //施工图是否完成
-                    for (ConstructionDrawing value : ConstructionDrawing.values()) {
-                        if (responseVo.getConstructionDrawing() != null && responseVo.getConstructionDrawing().equals(value.getCode())) {
-                            responseVo.setConstructionDrawingName(value.getInfo());
-                            break;
+                        HashMap<String, String> fileMap3 = getFileMap(demandId,SysFileRefEnum.PM_DEMAND_SERVE.getType());
+                        if(fileMap3 != null){
+                            responseVo.setFileMap(fileMap3);
                         }
+                        vo.setPmDemandServeResVo(responseVo);
                     }
-                    HashMap<String, String> fileMap4 = getFileMap(vo.getDemandId(),SysFileRefEnum.PM_DEMAND_ENGINEERING.getType());
-                    if(fileMap4 != null){
-                        responseVo.setFileMap(fileMap4);
+                } else if(ProjectTypes.PLANTOEXAMINETYPE.getCode().equals(pmDemand.getProjectType())){//工程类
+                    PmDemandEngineering obj = new PmDemandEngineering();
+                    obj.setDemandId(demandId);
+                    List<PmDemandEngineering> list = iPmDemandEngineeringService.selectPmDemandEngineeringList(obj);
+                    if(list !=null && list.size() > 0){
+                        PmDemandEngineeringResVo responseVo = new PmDemandEngineeringResVo();
+                        BeanUtils.copyProperties(list.get(0),responseVo);
+                        //采购方式建议
+                        for (ProcurementMethodSuggest value : ProcurementMethodSuggest.values()) {
+                            if (responseVo.getProcurementMethodSuggest() != null && responseVo.getProcurementMethodSuggest().equals(value.getCode())) {
+                                responseVo.setProcurementMethodSuggestName(value.getInfo());
+                                break;
+                            }
+                        }
+                        //项目类别
+                        for (EngineeringProjectCategory value : EngineeringProjectCategory.values()) {
+                            if (responseVo.getProjectCategory() != null && responseVo.getProjectCategory().equals(value.getCode())) {
+                                responseVo.setProjectCategoryName(value.getInfo());
+                                break;
+                            }
+                        }
+                        //承包方式
+                        for (EngineeringContractingMode value : EngineeringContractingMode.values()) {
+                            if (responseVo.getContractingMode() != null && responseVo.getContractingMode().equals(value.getCode())) {
+                                responseVo.setContractingModeName(value.getInfo());
+                                break;
+                            }
+                        }
+                        //施工图是否完成
+                        for (ConstructionDrawing value : ConstructionDrawing.values()) {
+                            if (responseVo.getConstructionDrawing() != null && responseVo.getConstructionDrawing().equals(value.getCode())) {
+                                responseVo.setConstructionDrawingName(value.getInfo());
+                                break;
+                            }
+                        }
+                        HashMap<String, String> fileMap4 = getFileMap(demandId,SysFileRefEnum.PM_DEMAND_ENGINEERING.getType());
+                        if(fileMap4 != null){
+                            responseVo.setFileMap(fileMap4);
+                        }
+                        vo.setPmDemandEngineeringResVo(responseVo);
                     }
-                    vo.setPmDemandEngineeringResVo(responseVo);
                 }
+            } else if("3".equals(detailType)) { //任务下达
+                //任务下达文件
+                HashMap<String, String> taskReleaseFileMap = getFileMap(vo.getDemandId(),SysFileRefEnum.PM_TAST_RELEASE.getType());
+                if(taskReleaseFileMap != null){
+                    vo.setTaskReleaseFileMap(taskReleaseFileMap);
+                }
+            } else if("4".equals(detailType)) { //中标信息
+
+            } else if("5".equals(detailType)) { //合同信息
+
+            } else if("6".equals(detailType)) { //建设情况
+
             }
 
             return vo;