Ver código fonte

项目属性赋值

buzhanyi 2 anos atrás
pai
commit
d0aafa92a2

+ 33 - 5
purchase-system/src/main/java/com/ozs/base/service/impl/BaseExpertServiceImpl.java

@@ -26,6 +26,7 @@ import com.ozs.pm.service.PmDemandExpertRefService;
 import com.ozs.system.domain.vo.responseVo.SysDeptResponseVo;
 import com.ozs.system.service.ISysDeptService;
 import com.ozs.system.service.ISysDictDataService;
+import com.ozs.system.service.ISysDictTypeService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.util.ObjectUtils;
@@ -46,6 +47,8 @@ public class BaseExpertServiceImpl extends ServiceImpl<BaseExpertMapper, BaseExp
     private ISysDeptService deptService;
     @Autowired
     private ISysDictDataService dictDataService;
+    @Autowired
+    private ISysDictTypeService dictTypeService;
 
     @Override
     public int insertExpert(BaseExpertVo baseExpertVo) {
@@ -161,6 +164,11 @@ public class BaseExpertServiceImpl extends ServiceImpl<BaseExpertMapper, BaseExp
 
     private List<PmDemandResVo> changTo(List<PmDemand> pmDemandList) {
         List<PmDemandResVo> pmDemandResponseVoList = new ArrayList<>();
+        //获取字典数据
+        HashMap<String, HashMap<String, String>> planEnums = dictTypeService.getAboutEnums();
+        HashMap<String, String> projectTypesMap = planEnums.get("projectTypes");
+        HashMap<String, String> planPurchaseModesMap = planEnums.get("planPurchaseModes");
+        HashMap<String, String> projectAttributes = planEnums.get("projectAttributes");
         if (pmDemandList != null && pmDemandList.size() > 0) {
             for (PmDemand pmDemand1 : pmDemandList) {
                 PmDemandResVo vo = new PmDemandResVo();
@@ -199,11 +207,31 @@ public class BaseExpertServiceImpl extends ServiceImpl<BaseExpertMapper, BaseExp
                         break;
                     }
                 }
-                //项目属性
-                for (ProjectAttribute value : ProjectAttribute.values()) {
-                    if (vo.getProjectAttr() != null && vo.getProjectAttr().equals(value.getCode())) {
-                        vo.setProjectAttrName(value.getInfo());
-                        break;
+                //项目属性是拼接的
+                if (!ObjectUtils.isEmpty(vo.getProjectAttr())) {
+                    if (vo.getProjectAttr().length() > 1) {
+                        StringBuilder builder = new StringBuilder();
+                        String[] split = vo.getProjectAttr().split(",");
+                        for (String s : split) {
+                            for (Map.Entry<String, String> entry : projectAttributes.entrySet()) {
+                                if (s.equals(entry.getValue())) {
+                                    if (!vo.getProjectAttr().endsWith(s)) {
+                                        builder.append(entry.getKey() + ",");
+                                    } else {
+                                        builder.append(entry.getKey());
+                                    }
+                                    break;
+                                }
+                            }
+                        }
+                        vo.setProjectAttrName(builder.toString());
+                    } else {
+                        for (Map.Entry<String, String> entry : projectAttributes.entrySet()) {
+                            if (vo.getProjectAttr().equals(entry.getValue())) {
+                                vo.setProjectAttrName(entry.getKey());
+                                break;
+                            }
+                        }
                     }
                 }
                 //预警状态