소스 검색

1.新增项目预决算统计

WoNiu 4 년 전
부모
커밋
1105b6dba4

+ 19 - 0
src/main/java/com/galaxis/manatee/dao/ChuanyunBudgetStatisticsDao.java

@@ -0,0 +1,19 @@
+package com.galaxis.manatee.dao;
+
+import com.galaxis.capsule.util.GalaxisRepository;
+import com.galaxis.manatee.entity.chuanyun.data.object.ChuanyunBudgetStatisticsDO;
+import com.galaxis.manatee.entity.chuanyun.data.object.ChuanyunMemberCostDO;
+import org.springframework.data.jpa.repository.Query;
+import org.springframework.stereotype.Repository;
+
+import java.util.List;
+
+@Repository
+public interface ChuanyunBudgetStatisticsDao extends GalaxisRepository<ChuanyunBudgetStatisticsDO,String> {
+
+    @Query(value="SELECT chuanyun_group_project.object_id as project,chuanyun_budget_statist.object_id,SUM(chuanyun_budget_statist.budget_amount) AS budget_amount,SUM(chuanyun_budget_statist.final_amount) AS final_amount,\n" +
+            "chuanyun_budget_statist.fee_type,SUM(chuanyun_budget_statist.budget_amount)-SUM(chuanyun_budget_statist.final_amount) AS difference_amount\n" +
+            "FROM chuanyun_budget_statist LEFT JOIN chuanyun_group_project ON chuanyun_group_project.`name` = chuanyun_budget_statist.project\n" +
+            "GROUP BY\tchuanyun_budget_statist.project,chuanyun_budget_statist.fee_type",nativeQuery = true)
+    List<ChuanyunBudgetStatisticsDO> getTotalByProject();
+}

+ 53 - 0
src/main/java/com/galaxis/manatee/entity/chuanyun/data/object/ChuanyunBudgetAmountDO.java

@@ -0,0 +1,53 @@
+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
+@JsonIgnoreProperties(ignoreUnknown = true)
+public class ChuanyunBudgetAmountDO extends BasicDO{
+
+    /**
+     * 表名
+     */
+    public static final String SCHEMA_CODE ="D0017898109525336e64d83bd9552c98b4385aa";
+
+    /**
+     * 所属项目
+     */
+    @JsonProperty("F0000001")
+    private String project;
+
+    /**
+     * 费用类型
+     */
+    @JsonProperty("F0000002")
+    private String feeType;
+
+    /**
+     * 预算金额
+     */
+    @JsonProperty("F0000003")
+    private BigDecimal budgetAmount;
+
+    /**
+     * 决算金额
+     */
+    @JsonProperty("F0000004")
+    private BigDecimal finalAmount;
+
+    /**
+     * 预算绝算差异
+     */
+    @JsonProperty("F0000005")
+    private BigDecimal differenceAmount;
+}

+ 51 - 0
src/main/java/com/galaxis/manatee/entity/chuanyun/data/object/ChuanyunBudgetStatisticsDO.java

@@ -0,0 +1,51 @@
+package com.galaxis.manatee.entity.chuanyun.data.object;
+
+
+import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
+import lombok.Data;
+import lombok.extern.slf4j.Slf4j;
+import org.hibernate.annotations.GenericGenerator;
+
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+import java.math.BigDecimal;
+
+@Slf4j
+@Data
+@Entity(name = "CHUANYUN_BUDGET_STATIST")
+@JsonIgnoreProperties(ignoreUnknown = true)
+public class ChuanyunBudgetStatisticsDO {
+    /**
+     * 主键
+     */
+    @Id
+    @GeneratedValue(generator = "idGeneratorChuanyunSelfCost")
+    @GenericGenerator(name ="idGeneratorChuanyunSelfCost" ,strategy="com.galaxis.capsule.util.GalaxisIdGenerator")
+    private Long objectId;
+
+    /**
+     * 所属项目
+     */
+    private String project;
+
+    /**
+     * 费用类型
+     */
+    private String feeType;
+
+    /**
+     * 预算金额
+     */
+    private BigDecimal budgetAmount;
+
+    /**
+     * 决算金额
+     */
+    private BigDecimal finalAmount;
+
+    /**
+     * 预算绝算差异
+     */
+    private BigDecimal differenceAmount;
+}

파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 93 - 3
src/main/java/com/galaxis/manatee/task/ChuanyunBasicDataScheduledTask.java


+ 1 - 0
src/main/java/com/galaxis/manatee/task/ChuanyunFinancialScheduledTask.java

@@ -97,6 +97,7 @@ public class ChuanyunFinancialScheduledTask {
                     }catch (NoSuchElementException e){
                         //没有之前的数据不做处理
                     }
+                    //TODO 等财务定义外部名称
                     //同步报销单中外部部门名称
 //                    synchroOutDepartment(chuanyunReimbursementDO);