Переглянути джерело

Merge branch 'main' of http://gogs.yaoyi.net/yyc3/reports

aQiu6 4 місяців тому
батько
коміт
f66df786c5

+ 15 - 6
src/main/java/org/example/mybatisplus/Controller/IndexController.java

@@ -38,11 +38,11 @@ public class IndexController {
         auditResult.setAuditDate("2025-03-11");
         auditResult.setScore("222");
         auditResult.setOpinion("test");
-        auditResult.setMocaRating("test");
-        auditResult.setDonationIncomeScale("test");
-        auditResult.setManagementExpense("test");
-        auditResult.setOperationYears("2025");
-        auditResult.setPublicExpenseGrowth("test");
+        // auditResult.setMocaRating("test");
+        // auditResult.setDonationIncomeScale("test");
+        // auditResult.setManagementExpense("test");
+        // auditResult.setOperationYears("2025");
+        // auditResult.setPublicExpenseGrowth("test");
         BasicInfo basicInfo = new BasicInfo();
         // ...
 
@@ -81,7 +81,16 @@ public class IndexController {
         CmsEnterpriseRiskQxbInfoBO cmsEnterpriseRiskQxbInfoBO = org.example.mybatisplus.model.auto.CmsEnterpriseRiskQxbInfoBO.builder().build(); // mock
         CmsEnterpriseRiskInfoDeclaration cmsEnterpriseRiskInfoDeclaration = new CmsEnterpriseRiskInfoDeclaration(); // mock
         CmsEnterpriseRiskInfoCheckBO cmsEnterpriseRiskInfoCheckBO = new CmsEnterpriseRiskInfoCheckBO();
-        // 3. fill BasicInfo
+
+        // 3. fill 
+        AuditResult auditResult=new AuditResult();
+        auditResult.setReportVersion("PLUS版");
+        auditResult.setServiceProviderName("上海医药行业协会");
+        cmsEnterpriseRiskQxbInfoBO.fillAuditResultVO(auditResult);
+        cmsEnterpriseRiskInfoDeclaration.fillAuditResultVO(auditResult);
+        cmsEnterpriseRiskInfoCheckBO.fillAuditResultVO(auditResult);
+
+
         BasicInfo basicInfo = new BasicInfo();
         cmsEnterpriseRiskQxbInfoBO.fillBasicInfoVO(basicInfo);
         cmsEnterpriseRiskInfoDeclaration.fillBasicInfoVO(basicInfo);

+ 35 - 0
src/main/java/org/example/mybatisplus/model/auto/CmsEnterpriseRiskInfoCheckBO.java

@@ -4,10 +4,14 @@ import java.util.ArrayList;
 import java.util.Collections;
 import java.util.List;
 import java.util.Map;
+import java.util.stream.Collector;
+import java.util.stream.Collectors;
 
+import org.example.mybatisplus.module.AuditResult;
 import org.example.mybatisplus.module.BasicInfo;
 import org.example.mybatisplus.module.vo.BasicInfoCheck;
 import org.example.mybatisplus.module.vo.BasicInfoScore;
+import org.example.mybatisplus.module.vo.CheckItemScore;
 
 import lombok.Data;
 
@@ -21,6 +25,28 @@ public class CmsEnterpriseRiskInfoCheckBO {
     private Map<String, CmsEntRiskInfoCktItemCategory> mpCmsEntRiskInfoCktItemCategory =
         Collections.emptyMap();
 
+    public Long getScore() {
+        return mpCmsEntRiskInfoCktItemCategory.values().stream()
+            .mapToLong(CmsEntRiskInfoCktItemCategory::getScore).sum();
+    }
+
+    public String getRiskAlert() {
+        return mpCmsEnterpriseRiskInfoCheckItem.values().stream()
+        .filter(item -> !item.getBizResult())
+        .map(item -> item.getResultMsg())
+        .reduce("", (r, msg) -> { return String.format("%s\n%s", msg); });
+    }
+
+    public List<CheckItemScore> getCheckItemScores() {
+        return mpCmsEnterpriseRiskInfoCheckItem.values().stream().map(item -> {
+            CheckItemScore ret = new CheckItemScore();
+            ret.setItemName(item.getItemName());
+            ret.setScore(item.getBizScore());
+            ret.setCategory(mpCmsEntRiskInfoCktItemCategory.get(item.getCategoryType()).getCategoryName());
+            return ret;
+        }).collect(Collectors.toList());
+    }
+
     public void fillBasicInfoVO(BasicInfo basicInfo) {
         List<BasicInfoCheck> checks = new ArrayList<>();
         for(String label: new String[] {"donation_revenue_scale", "net_worth_rating", "operation_years", "moca_rating"}) {
@@ -40,4 +66,13 @@ public class CmsEnterpriseRiskInfoCheckBO {
             cmsEnterpriseRiskInfoCheck.getAdvice()
         ));
     }
+
+    public void fillAuditResultVO(AuditResult auditResult) {
+        auditResult.setScore(Long.toString(this.getScore()));
+        auditResult.setOpinion(cmsEnterpriseRiskInfoCheck.getReview());
+        auditResult.setAuditDate(cmsEnterpriseRiskInfoCheck.getCheckTime().toString());
+        auditResult.setRiskAlert(this.getRiskAlert());
+        auditResult.setSuggestion(cmsEnterpriseRiskInfoCheck.getAdvice());
+        auditResult.setCheckItemScores(getCheckItemScores());
+    }
 }

+ 10 - 0
src/main/java/org/example/mybatisplus/model/auto/CmsEnterpriseRiskInfoCheckItem.java

@@ -7,6 +7,8 @@ import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableLogic;
 import com.baomidou.mybatisplus.annotation.TableName;
 import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler;
+
+import cn.hutool.core.util.StrUtil;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 
@@ -141,4 +143,12 @@ public final class CmsEnterpriseRiskInfoCheckItem extends EasierCommonEntity {
     public String getBizResultStr() {
         return getBizResult() ? "合格" : "不合格";
     }
+
+    public String getResultMsg() {
+        return StrUtil.isEmptyOrUndefined(manualMsg) ? autoMsg : manualMsg;
+    }
+
+    public Long getBizScore() {
+        return manualResult == null ? manualScore: autoScore;
+    }
 }

+ 6 - 0
src/main/java/org/example/mybatisplus/model/auto/CmsEnterpriseRiskInfoDeclaration.java

@@ -3,6 +3,7 @@ package org.example.mybatisplus.model.auto;
 import java.util.Collections;
 import java.util.List;
 
+import org.example.mybatisplus.module.AuditResult;
 import org.example.mybatisplus.module.BasicInfo;
 import org.example.mybatisplus.module.vo.Attachment;
 
@@ -60,6 +61,11 @@ public class CmsEnterpriseRiskInfoDeclaration {
             .toString());
 	}
 
+    public void fillAuditResultVO(AuditResult auditResult) {
+        // auditResult.setScore();
+
+    }
+
     private Object getDelcEndWithInfo(String delcItem, List<CmsEnterpriseRiskInfoDeclaration> declarations) {
         return "value-" + delcItem; // mock
     }

+ 4 - 0
src/main/java/org/example/mybatisplus/model/auto/CmsEnterpriseRiskQxbInfoBO.java

@@ -5,6 +5,7 @@ import java.util.List;
 import java.util.Optional;
 
 import org.example.mybatisplus.model.auto.EntRiskQxbEmployeesInfo.ItemsInner;
+import org.example.mybatisplus.module.AuditResult;
 import org.example.mybatisplus.module.BasicInfo;
 import org.example.mybatisplus.module.vo.SuperiorAuthority;
 
@@ -99,4 +100,7 @@ public class CmsEnterpriseRiskQxbInfoBO {
         info.setValidate(String.format("%s至%s", baseInfo.getTermStart(), baseInfo.getTermEnd()));
         return info;
     }
+
+    public void fillAuditResultVO(AuditResult auditResult) {
+    }
 }

+ 22 - 16
src/main/java/org/example/mybatisplus/module/AuditResult.java

@@ -1,5 +1,9 @@
 package org.example.mybatisplus.module;
 
+import java.util.List;
+
+import org.example.mybatisplus.module.vo.CheckItemScore;
+
 import lombok.Data;
 
 /**
@@ -15,20 +19,22 @@ public class AuditResult {
     private String riskAlert;   // ${风险概述:风险提示}
     private String suggestion;  // ${风险概述:建议}
     // 基础信息评分
-    private String donationIncomeScale;  // ${得分情况:基础信息:基金会捐赠收入规模}
-    private String netAssetRating;       // ${得分情况:基础信息:净资产评级}
-    private String operationYears;      // ${得分情况:基础信息:运营年限}
-    private String mocaRating;           // ${得分情况:基础信息:MOCA评级}
-
-    // 公共记录评分
-    private String publicRecordScore;    // ${得分情况:公共记录:公共记录评分}
-
-    // 财务信息评分
-    private String publicFundExpense;    // ${得分情况:财务信息:运营能力-私募基金-公益支出}
-    private String managementExpense;    // ${得分情况:财务信息:运营能力-私募基金-管理费用}
-    private String totalIncomeGrowth;    // ${得分情况:财务信息:发展能力-总收入增长率}
-    private String publicExpenseGrowth;  // ${得分情况:财务信息:发展能力-公益支出增长率}
-
-    // 项目情况评分
-    private String projectScore;         // ${得分情况:项目情况:项目情况评分}
+    // private String donationIncomeScale;  // ${得分情况:基础信息:基金会捐赠收入规模}
+    // private String netAssetRating;       // ${得分情况:基础信息:净资产评级}
+    // private String operationYears;      // ${得分情况:基础信息:运营年限}
+    // private String mocaRating;           // ${得分情况:基础信息:MOCA评级}
+
+    // // 公共记录评分
+    // private String publicRecordScore;    // ${得分情况:公共记录:公共记录评分}
+
+    // // 财务信息评分
+    // private String publicFundExpense;    // ${得分情况:财务信息:运营能力-私募基金-公益支出}
+    // private String managementExpense;    // ${得分情况:财务信息:运营能力-私募基金-管理费用}
+    // private String totalIncomeGrowth;    // ${得分情况:财务信息:发展能力-总收入增长率}
+    // private String publicExpenseGrowth;  // ${得分情况:财务信息:发展能力-公益支出增长率}
+
+    // // 项目情况评分
+    // private String projectScore;         // ${得分情况:项目情况:项目情况评分}
+
+    private List<CheckItemScore> checkItemScores;
 }

+ 1 - 0
src/main/java/org/example/mybatisplus/module/FinancialInfo.java

@@ -12,6 +12,7 @@ import java.util.List;
  */
 @Data
 public class FinancialInfo {
+    private Boolean showable;  // 是否显示区域
     private List<FinancialData> financialData;    // 重要财务数据(4.1)
     private List<FinancialIndicator> indicators;  // 财务指标(4.2)
     private FinancialScore financialScore;        // 财务信息评分及建议(4.3)

+ 1 - 0
src/main/java/org/example/mybatisplus/module/ServiceProviderAuditReport.java

@@ -17,6 +17,7 @@ public class ServiceProviderAuditReport {
     private PublicRecord publicRecord;              // 公共记录
     private FinancialInfo financialInfo;             // 财务信息
     private ProjectInfo projectInfo;                 // 项目情况
+    private Attachment interestConflict;             // 利益冲突 
     private List<Attachment> attachments;            // 附件列表
 }
 

+ 13 - 0
src/main/java/org/example/mybatisplus/module/vo/CheckItemScore.java

@@ -0,0 +1,13 @@
+package org.example.mybatisplus.module.vo;
+
+import lombok.Data;
+
+/**
+ * 
+ */
+@Data
+public class CheckItemScore {
+    private String category;
+    private String itemName;
+    private Long Score;
+}