Browse Source

Merge branch 'master' of http://softwarescience.top:3000/RWA/RWAServer

zhang_qk 3 months ago
parent
commit
f0eff73b92

+ 131 - 1
DBScript/李庚谱/001-DDL.sql

@@ -1113,4 +1113,134 @@ create table if not exists sys_input_suptaskrun_taskallstatus (
 	isover varchar(60) not null comment '补录任务是否完成 YESORNO',
 	primary key (term, taskCode)
 )
-comment='补录任务按照频率的补录任务状态,在同一起次完成时,才会继续下一步';
+comment='补录任务按照频率的补录任务状态,在同一起次完成时,才会继续下一步';
+
+
+-- 视图
+drop view if exists v_wfs_todotask;
+CREATE VIEW v_wfs_todotask AS
+select
+  tmp.account AS account,
+  bus.BUSINESSTYPEID AS businesstypeid,
+  task.PROCINST_ AS businessinsid,
+  task.ID_ AS soleorderid,
+  tmp.taskState AS status
+from
+  (
+    (
+      (
+        (
+          select
+            t1.PROCINST_ AS PROCINST_,
+            t1.ID_ AS ID_,
+            t1.ACTORID_ AS ACTORID_
+          from
+            jbpm_taskinstance t1
+          where
+            (t1.ACTORID_ is not null)
+            and (t1.ISOPEN_ = 1)
+            and (t1.ISSUSPENDED_ <> 1)
+        )
+        union all
+          (
+            select
+              t2.PROCINST_ AS PROCINST_,
+              t2.ID_ AS ID_,
+              concat('!', pooledacto0_.ACTORID_) AS ACTORID_
+            from
+              (
+                (
+                  jbpm_pooledactor pooledacto0_
+                  join jbpm_taskactorpool taskinstan1_ on (pooledacto0_.ID_ = taskinstan1_.POOLEDACTOR_)
+                )
+                join jbpm_taskinstance t2 on (taskinstan1_.TASKINSTANCE_ = t2.ID_)
+                and (t2.ACTORID_ is null)
+                and (t2.ISOPEN_ = 1)
+                and (t2.ISSUSPENDED_ <> 1)
+              )
+          )
+      ) task
+      join (
+        (
+          select
+            sysuser.ACCOUNT AS account,
+            'waiting' AS taskState,
+            concat('#', dept.ORGCODE, UR.ROLEID) AS taskPerson
+          from
+            (
+              (
+                sys_user sysuser
+                join sys_user_role UR on (sysuser.ACCOUNT = UR.ACCOUNT)
+              )
+              join sys_organization dept on (sysuser.ORGCODE = dept.ORGCODE)
+            )
+        )
+        union all
+          (
+            select
+              sysuser.ACCOUNT AS account,
+              'waiting' AS taskState,
+              concat('#', dept.ORGCODE, UR.ROLEID, '*', dept.ORGTYPE) AS taskPerson
+            from
+              (
+                (
+                  sys_user sysuser
+                  join sys_user_role UR on (sysuser.ACCOUNT = UR.ACCOUNT)
+                )
+                join sys_organization dept on (sysuser.ORGCODE = dept.ORGCODE)
+              )
+          )
+        union all
+          (
+            select
+              sysuser.ACCOUNT AS account,
+              'waiting' AS taskState,
+              concat('#', dept.SUPERORGCODE, UR.ROLEID) AS taskPerson
+            from
+              (
+                (
+                  sys_user sysuser
+                  join sys_user_role UR on (sysuser.ACCOUNT = UR.ACCOUNT)
+                )
+                join sys_organization dept on (sysuser.ORGCODE = dept.ORGCODE)
+                and (dept.ORGTYPE is not null)
+              )
+          )
+        union all
+          (
+            select
+              sysuser.ACCOUNT AS account,
+              'waiting' AS taskState,
+              concat('#', dept.SUPERORGCODE, UR.ROLEID, '*', dept.ORGTYPE) AS taskPerson
+            from
+              (
+                (
+                  sys_user sysuser
+                  join sys_user_role UR on (sysuser.ACCOUNT = UR.ACCOUNT)
+                )
+                join sys_organization dept on (sysuser.ORGCODE = dept.ORGCODE)
+                and (dept.ORGTYPE is not null)
+              )
+          )
+        union all
+          (
+            select
+              sysuser.ACCOUNT AS account,
+              'working' AS taskState,
+              concat('@', sysuser.ACCOUNT) AS taskPerson
+            from
+              sys_user sysuser
+          )
+        union all
+          (
+            select
+              sysuser.ACCOUNT AS account,
+              'waiting' AS taskState,
+              concat('!', sysuser.ACCOUNT) AS taskPerson
+            from
+              sys_user sysuser
+          )
+      ) tmp on (task.ACTORID_ = tmp.taskPerson)
+    )
+    join wfs_businessins bus on (bus.BUSINESSINSID = task.PROCINST_)
+  );

+ 9 - 8
Procedure/backend/project/src/main/java/com/sundata/product/rwa/calc/controllers/CalcRunningController.java

@@ -8,14 +8,15 @@ import com.sundata.product.rwa.calc.service.CalcRunningService;
 import com.sundata.product.rwa.calc.service.implement.units.GeneralLedgerGetterUnit;
 import com.sundata.product.rwa.calc.service.implement.units.GeneralLedgerUnit;
 import com.sundata.product.rwa.calc.service.implement.units.ReportInitUnit;
-import org.springframework.stereotype.Controller;
+import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
 
 import java.util.HashMap;
 import java.util.Map;
 
-@Controller
+@RestController
 @RequestMapping("calc/start")
 public class CalcRunningController extends BaseAction {
 
@@ -28,7 +29,7 @@ public class CalcRunningController extends BaseAction {
     /**
      * 启动总账取数
      *
-     * @param calcInterfaceParam 报文参数结构 { "calculateInstanceNumber": "xxx" , "calcCode":"xxx" ,"dataDate":"2025-03-07"  }
+     * @param calcInterfaceParam 报文参数结构 { "calculateInstanceNumber": "xxx" , "calcCode":"xxx" ,"dataDate":"20250307"  }
      *                           dataDate; 内容为必须
      * @return 运行结果
      */
@@ -36,7 +37,7 @@ public class CalcRunningController extends BaseAction {
             verifyLogin = false,
             verifyURL = false
     )
-    @RequestMapping("GeneralLedgerGetter")
+    @PostMapping("GeneralLedgerGetter")
     public CalcTaskResult startGeneralLedgerGetter(@RequestBody CalcInterfaceParam calcInterfaceParam) {
         Map<String, Object> context = new HashMap<>();
         context.put("dataDate", calcInterfaceParam.getDataDate());
@@ -46,7 +47,7 @@ public class CalcRunningController extends BaseAction {
     /**
      * 启动总账勾稽
      *
-     * @param calcInterfaceParam 报文参数结构 { "calculateInstanceNumber": "xxx" , "calcCode":"xxx" ,"dataDate":"2025-03-07"  }
+     * @param calcInterfaceParam 报文参数结构 { "calculateInstanceNumber": "xxx" , "calcCode":"xxx" ,"dataDate":"20250307"  }
      *                           dataDate; 内容为必须
      * @return 运行结果
      */
@@ -54,7 +55,7 @@ public class CalcRunningController extends BaseAction {
             verifyLogin = false,
             verifyURL = false
     )
-    @RequestMapping("GeneralLedger")
+    @PostMapping("GeneralLedger")
     public CalcTaskResult startGeneralLedger(@RequestBody CalcInterfaceParam calcInterfaceParam) {
         Map<String, Object> context = new HashMap<>();
         context.put("dataDate", calcInterfaceParam.getDataDate());
@@ -64,7 +65,7 @@ public class CalcRunningController extends BaseAction {
     /**
      * 启动报表计算
      *
-     * @param calcInterfaceParam 报文参数结构 { "calculateInstanceNumber": "xxx" , "calcCode":"xxx" ,"dataDate":"2025-03-07"  }
+     * @param calcInterfaceParam 报文参数结构 { "calculateInstanceNumber": "xxx" , "calcCode":"xxx" ,"dataDate":"20250307"  }
      *                           dataDate; 内容为必须
      * @return 运行结果
      */
@@ -72,7 +73,7 @@ public class CalcRunningController extends BaseAction {
             verifyLogin = false,
             verifyURL = false
     )
-    @RequestMapping("reportInit")
+    @PostMapping("reportInit")
     public CalcTaskResult startReportInit(@RequestBody CalcInterfaceParam calcInterfaceParam) {
         Map<String, Object> context = new HashMap<>();
         context.put("dataDate", calcInterfaceParam.getDataDate());

+ 1 - 1
Procedure/backend/project/src/main/java/com/sundata/product/rwa/calc/controllers/curlshell.sh

@@ -1 +1 @@
- curl http://localhost:8080/calc/start/GeneralLedgerGetter -X POST -d "{\"calcCode\":\"xxx\" ,\"dataDate\":\"2025-03-07\"  }" --header "Content-Type: application/json"
+ curl http://localhost:8080/calc/start/GeneralLedgerGetter -X POST -d "{\"calcCode\":\"xxx\" ,\"dataDate\":\"20250307\"  }" --header "Content-Type: application/json"

+ 4 - 2
Procedure/backend/project/src/main/java/com/sundata/product/rwa/calc/service/implement/units/GeneralLedgerGetterUnit.java

@@ -209,12 +209,14 @@ public class GeneralLedgerGetterUnit extends CalcUnit {
             String CURRENCY = "CNY";
             String LEDGER_OFFOBJECT_NO = (String) DataUtil.getDataDefault(map.get("LEDGER_OFFOBJECT_NO"), String.class);
             String LEDGER_OFFOBJECT_NAME;
+            BigDecimal CCF;
             if (infoListModel.get(LEDGER_OFFOBJECT_NO) == null || map.get("LEDGER_OFFOBJECT_NO") == null){
                 LEDGER_OFFOBJECT_NAME = "";
+                CCF = BigDecimal.ZERO;
             }else{
                 LEDGER_OFFOBJECT_NAME = (String) DataUtil.getDataDefault(infoListModel.get(LEDGER_OFFOBJECT_NO).getOffobjectName(), String.class);
+                CCF = infoListModel.get(LEDGER_OFFOBJECT_NO).getCcf();
             }
-            BigDecimal CCF = infoListModel.get(LEDGER_OFFOBJECT_NO).getCcf();
             String RISK_EXPOSURE_LEV01_CODE = "";
             String RISK_EXPOSURE_LEV01_CODE_NAME = "";
             String RISK_EXPOSURE_LEV02_CODE = "";
@@ -272,7 +274,7 @@ public class GeneralLedgerGetterUnit extends CalcUnit {
             String BUSINESS_LINE = "其他-总账取数债项";
             String dateStr = (String) context.get("DATA_DATE");
             String EFF_DATE = dateStr.substring(dateStr.lastIndexOf("-") + 1) + "01";
-            String DUE_DATE = dateStr.substring(dateStr.lastIndexOf("-") + 1) + (DateChecker.getSimpleCalendar(dateStr)).getActualMaximum(Calendar.DAY_OF_MONTH);
+            String DUE_DATE = dateStr.substring(dateStr.lastIndexOf("-") + 1) + (DateChecker.getShortCalendar(dateStr)).getActualMaximum(Calendar.DAY_OF_MONTH);
 
             sqlParam.addValue("CALCINDEX", CALCINDEX);
             sqlParam.addValue("SDATE", SDATE);

+ 1 - 1
Procedure/backend/project/src/main/java/com/sundata/product/rwa/calc/service/implement/units/GeneralLedgerUnit.java

@@ -334,7 +334,7 @@ public class GeneralLedgerUnit extends CalcUnit {
 
                     String dateStr = (String) context.get("DATA_DATE");
                     String eff_date = dateStr.substring(dateStr.lastIndexOf("-") + 1) + "01";
-                    String due_date = dateStr.substring(dateStr.lastIndexOf("-") + 1) + (DateChecker.getSimpleCalendar(dateStr)).getActualMaximum(Calendar.DAY_OF_MONTH);
+                    String due_date = dateStr.substring(dateStr.lastIndexOf("-") + 1) + (DateChecker.getShortCalendar(dateStr)).getActualMaximum(Calendar.DAY_OF_MONTH);
 
                     sqlParam.addValue("GL_CODE", ruleListModel.getRuleNo());
                     sqlParam.addValue("SUBJECT_DESC", ruleListModel.getSubjectDesc());