فهرست منبع

Merge branch '1.0' of codeup.aliyun.com:5ec7ea24405cdab50f3fd8f0/galaxis/manatee into 1.0

verguenza 5 سال پیش
والد
کامیت
3ae9801305

+ 14 - 0
src/main/java/com/galaxis/manatee/controller/GetController.java

@@ -1,12 +1,16 @@
 package com.galaxis.manatee.controller;
 
+import com.galaxis.manatee.entity.chuanyun.data.object.ChuanyunCostCollectionDO;
 import com.galaxis.manatee.service.ChuanyunService;
 import com.galaxis.manatee.task.ChuanyunBasicDataScheduledTask;
 import com.galaxis.manatee.task.ChuanyunHumanResourceScheduledTask;
+import org.springframework.http.ResponseEntity;
 import org.springframework.scheduling.annotation.Async;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.RestController;
 
+import java.util.List;
+
 /**
  * 提供手工触发更新氚云数据的接口
  * @author zcj
@@ -89,5 +93,15 @@ public class GetController {
         chuanyunBasicDataScheduledTask.getGroupProjectManually();
     }
 
+    /**
+     * 获取人员费用归集
+     * @return
+     */
+    @GetMapping("/test/getAllCostCollection")
+    public ResponseEntity getAllCostCollection() {
+        List<ChuanyunCostCollectionDO> list = chuanyunService.getAllCostCollection();
+        return ResponseEntity.ok(list);
+    }
+
 
 }

+ 11 - 0
src/main/java/com/galaxis/manatee/dao/ChuanyunCostCollectionDao.java

@@ -0,0 +1,11 @@
+package com.galaxis.manatee.dao;
+
+import com.galaxis.capsule.util.GalaxisRepository;
+import com.galaxis.manatee.entity.chuanyun.data.object.ChuanyunCompanyDO;
+import com.galaxis.manatee.entity.chuanyun.data.object.ChuanyunCostCollectionDO;
+import org.springframework.stereotype.Repository;
+
+
+@Repository
+public interface ChuanyunCostCollectionDao extends GalaxisRepository<ChuanyunCostCollectionDO,String> {
+}

+ 6 - 0
src/main/java/com/galaxis/manatee/entity/chuanyun/data/object/ChuanyunCompanyDO.java

@@ -41,6 +41,12 @@ public class ChuanyunCompanyDO extends BasicDO{
     private String erpCode;
 
     /**
+     * U9生效
+     */
+    @JsonProperty("F0000009")
+    private String effective;
+
+    /**
      * 银行代码
      */
     @JsonProperty("F0000007")

+ 77 - 0
src/main/java/com/galaxis/manatee/entity/chuanyun/data/object/ChuanyunCostCollectionDO.java

@@ -0,0 +1,77 @@
+package com.galaxis.manatee.entity.chuanyun.data.object;
+
+import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.extern.slf4j.Slf4j;
+
+import javax.persistence.Entity;
+import java.math.BigDecimal;
+
+@Slf4j
+@EqualsAndHashCode(callSuper = true)
+@Data
+@Entity(name = "CHUANYUN_COST_COLLECTION")
+@JsonIgnoreProperties(ignoreUnknown = true)
+public class ChuanyunCostCollectionDO extends BasicDO{
+
+    /**
+     * 表名
+     */
+    public static final String SCHEMA_CODE ="D001789ac8de4abffcc48cba8f7ce172e551ace";
+
+    /**
+     * 工号
+     */
+    @JsonProperty("F0000001")
+    public String employCode;
+
+    /**
+     * 姓名
+     */
+    @JsonProperty("F0000003")
+    public String employName;
+
+    /**
+     *是否报工
+     */
+    @JsonProperty("F0000004")
+    public String isTrue;
+
+    /**
+     * 项目所属ID
+     */
+    @JsonProperty("F0000005")
+    private String projectId;
+
+    /**
+     * 项目号
+     */
+    @JsonProperty("F0000006")
+    public String projectCode;
+
+    /**
+     * 项目名称
+     */
+    @JsonProperty("F0000007")
+    public String projectName;
+
+    /**
+     * 项目类别
+     */
+    @JsonProperty("F0000010")
+    public String projectType;
+
+    /**
+     * 外部项目名称
+     */
+    @JsonProperty("F0000008")
+    public String outProjectName;
+
+    /**
+     * 分摊比例
+     */
+    @JsonProperty("F0000009")
+    public BigDecimal rate;
+}

+ 28 - 0
src/main/java/com/galaxis/manatee/entity/chuanyun/data/object/ChuanyunEquipmentType.java

@@ -0,0 +1,28 @@
+package com.galaxis.manatee.entity.chuanyun.data.object;
+
+import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.extern.slf4j.Slf4j;
+
+import javax.persistence.Entity;
+
+@Slf4j
+@EqualsAndHashCode(callSuper = true)
+@Data
+@Entity(name = "CHUANYUN_EQUIPMENT_TYPE")
+@JsonIgnoreProperties(ignoreUnknown = true)
+public class ChuanyunEquipmentType extends BasicDO{
+
+    /**
+     * 表名
+     */
+    public static final String SCHEMA_CODE ="D001789a093e3db5f804db99744c956f1eb7797";
+
+    /**
+     * 设备分类名称
+     */
+    @JsonProperty("F0000001")
+    private String equipmentTypeName;
+}

+ 13 - 0
src/main/java/com/galaxis/manatee/entity/chuanyun/data/object/ChuanyunGroupProjectDO.java

@@ -47,6 +47,13 @@ public class ChuanyunGroupProjectDO extends BasicDO {
      */
     @JsonProperty(value = "F0000003")
     private String projectName;
+
+    /**
+     * 外部项目名称
+     */
+    @JsonProperty(value="F0000038")
+    private String outProjectName;
+
     /**
      * 项目类型
      */
@@ -114,6 +121,12 @@ public class ChuanyunGroupProjectDO extends BasicDO {
     private String projectMember;
 
     /**
+     * 项目状态
+     */
+    @JsonProperty("F0000031")
+    private String projectStatus;
+
+    /**
      * 签约组织成本中心编码
      */
     @JsonProperty(value = "F0000032")

+ 24 - 0
src/main/java/com/galaxis/manatee/entity/chuanyun/data/object/ChuanyunProjectDO.java

@@ -60,6 +60,30 @@ public class ChuanyunProjectDO extends BasicDO {
     private String projectTypeCode;
 
     /**
+     * 设备分类(前端传数据)
+     */
+    @Transient
+    @JsonProperty("F0000056")
+    private String[] equipmentTypeList;
+
+    /**
+     * 设备分类
+     */
+    private String equipmentType;
+
+    /**
+     * 业务来源
+     */
+    @JsonProperty("F0000066")
+    private String businessSource;
+
+    /**
+     * 业务类型
+     */
+    @JsonProperty("F0000067")
+    private String businessType;
+
+    /**
      * 下发组织机构编码
      */
     @JsonProperty(value = "F0000052")

+ 5 - 0
src/main/java/com/galaxis/manatee/service/ChuanyunService.java

@@ -1,7 +1,10 @@
 package com.galaxis.manatee.service;
 
+import com.galaxis.manatee.entity.chuanyun.data.object.ChuanyunCostCollectionDO;
 import org.springframework.scheduling.annotation.Async;
 
+import java.util.List;
+
 /**
  * 氚云服务调用
  */
@@ -11,4 +14,6 @@ public interface ChuanyunService {
      * 更新项目组成员
      */
     void updateProjectMember();
+
+    List<ChuanyunCostCollectionDO> getAllCostCollection();
 }

+ 10 - 1
src/main/java/com/galaxis/manatee/service/impl/ChuanyunServiceImpl.java

@@ -7,6 +7,8 @@ import com.fasterxml.jackson.databind.ObjectMapper;
 import com.galaxis.capsule.bo.ChuanyunObject;
 import com.galaxis.manatee.constant.ChuanYunConstant;
 import com.galaxis.manatee.constant.StringConstant;
+import com.galaxis.manatee.dao.ChuanyunCostCollectionDao;
+import com.galaxis.manatee.entity.chuanyun.data.object.ChuanyunCostCollectionDO;
 import com.galaxis.manatee.entity.chuanyun.data.object.ChuanyunGroupProjectDO;
 import com.galaxis.manatee.entity.chuanyun.dto.ChuanyunSaveDTO;
 import com.galaxis.manatee.entity.chuanyun.dto.Filter;
@@ -29,9 +31,11 @@ public class ChuanyunServiceImpl implements ChuanyunService {
 
     private final Integer pageSize=20;
     private final ChuanYunManager chuanYunManager;
+    private final ChuanyunCostCollectionDao chuanyunCostCollectionDao;
 
-    public ChuanyunServiceImpl(ChuanYunManager chuanYunManager) {
+    public ChuanyunServiceImpl(ChuanYunManager chuanYunManager, ChuanyunCostCollectionDao chuanyunCostCollectionDao) {
         this.chuanYunManager = chuanYunManager;
+        this.chuanyunCostCollectionDao = chuanyunCostCollectionDao;
     }
 
     @Override
@@ -89,6 +93,11 @@ public class ChuanyunServiceImpl implements ChuanyunService {
         }
     }
 
+    @Override
+    public List<ChuanyunCostCollectionDO> getAllCostCollection() {
+        return chuanyunCostCollectionDao.findAll();
+    }
+
     /**
      * 如果有项目组成员,将项目组成员projectMember替换为主键
      * 如果没有项目组成员,判断是否是EBG的实施、研发二开、售后维保项目,如果是,则添加EBG全体成员

تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 43 - 3
src/main/java/com/galaxis/manatee/task/ChuanyunBasicDataScheduledTask.java


+ 12 - 0
src/main/java/com/galaxis/manatee/task/ChuanyunScheduledTask.java

@@ -54,6 +54,7 @@ public class ChuanyunScheduledTask {
     /**
      * 定时将氚云中的数据保存到manatee
      */
+    @Scheduled(fixedDelay = 3600000L)
     private void getDataFromChuanyun(){
         //获取项目数据
         getProjectInformationFromChuanyun();
@@ -192,6 +193,17 @@ public class ChuanyunScheduledTask {
                 result.forEach(chuanyunProjectDO -> {
                     var tmpProjectDO=chuanyunProjectDao.findById(chuanyunProjectDO.getObjectId());
                     tmpProjectDO.ifPresent(projectDO -> chuanyunProjectDO.setIsCreate(projectDO.getIsCreate()));
+                    //更新设备分类
+                    if (chuanyunProjectDO.getEquipmentTypeList()!=null && chuanyunProjectDO.getEquipmentTypeList().length>0) {
+                        var equipmentType=new StringBuilder();
+                        for(int i=0;i<chuanyunProjectDO.getEquipmentTypeList().length;i++) {
+                            var a = chuanyunProjectDO.getEquipmentTypeList()[i];
+                            var chuanyunFindResponse =  chuanYunManager.find(ChuanyunEquipmentType.SCHEMA_CODE,chuanyunProjectDO.getEquipmentTypeList()[i]);
+                            ChuanyunEquipmentType chuanyunEquipmentType =objectMapper.convertValue(chuanyunFindResponse.getReturnData().getBizObject(), new TypeReference<>(){});
+                            equipmentType.append(chuanyunEquipmentType.getEquipmentTypeName()).append(StringConstant.SEMICOLON);
+                        }
+                        chuanyunProjectDO.setEquipmentType(equipmentType.toString());
+                    }
                     //将projectManger和projectOwner替换为主键
                     if(!StringUtils.isEmpty(chuanyunProjectDO.getProjectManager())){
                         var projectManagerIds=new StringBuilder();