Просмотр исходного кода

市建管项目拆分, ,榕智调整

pruple_boy лет назад: 2
Родитель
Сommit
f48223e55c
29 измененных файлов с 920 добавлено и 281 удалено
  1. 85 85
      mjava-rongzhi/src/main/java/com/malk/rongzhi/controller/ShiJianGuanController.java
  2. 8 9
      mjava-rongzhi/src/main/java/com/malk/rongzhi/service/impl/RZServiceImpl.java
  3. 50 0
      mjava-rongzhi/target/generated-sources/java/com/malk/rongzhi/repository/entity/QRzEkbRecordPo.java
  4. 54 0
      mjava-shijianguan/pom.xml
  5. 32 0
      mjava-shijianguan/src/main/java/com.malk.shijianguan/Boot.java
  6. 85 0
      mjava-shijianguan/src/main/java/com.malk.shijianguan/controller/ShiJianGuanController.java
  7. 58 0
      mjava-shijianguan/src/main/resources/application-dev.yml
  8. 39 0
      mjava-shijianguan/src/main/resources/application-prod.yml
  9. 58 0
      mjava-shijianguan/target/classes/application-dev.yml
  10. 39 0
      mjava-shijianguan/target/classes/application-prod.yml
  11. 5 0
      mjava-shijianguan/target/maven-archiver/pom.properties
  12. 2 0
      mjava-shijianguan/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst
  13. 2 0
      mjava-shijianguan/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst
  14. BIN
      mjava-shijianguan/target/mjava-shijianguan.jar.original
  15. 60 0
      mjava-xiding/target/generated-sources/java/com/malk/xiding/repository/entity/QXdDdApproveRecordPo.java
  16. 56 0
      mjava-xiding/target/generated-sources/java/com/malk/xiding/repository/entity/QXdDdFxkRelationPo.java
  17. 60 0
      mjava-xiding/target/generated-sources/java/com/malk/xiding/repository/entity/QXdFxkDdAttendancePo.java
  18. 13 3
      mjava-xintianlong/src/main/java/com/malk/xintianlong/controller/HSController.java
  19. 30 0
      mjava-xintianlong/src/main/java/com/malk/xintianlong/repository/dao/HSViewDao.java
  20. 1 1
      mjava-xintianlong/target/maven-archiver/pom.properties
  21. 12 0
      mjava-xintianlong/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst
  22. BIN
      mjava-xintianlong/target/mjava-xintianlong.jar.original
  23. 3 1
      mjava/src/main/java/com/malk/Util/UtilHttp.java
  24. 33 0
      mjava/src/main/java/com/malk/Util/UtilNumber.java
  25. 0 180
      mjava/target/classes/META-INF/spring-configuration-metadata.json
  26. 1 1
      mjava/target/maven-archiver/pom.properties
  27. 130 0
      mjava/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst
  28. 3 0
      mjava/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst
  29. 1 1
      pom.xml

+ 85 - 85
mjava-rongzhi/src/main/java/com/malk/rongzhi/controller/ShiJianGuanController.java

@@ -1,85 +1,85 @@
-package com.malk.rongzhi.controller;
-
-import cn.hutool.core.util.ObjectUtil;
-import com.alibaba.fastjson.JSON;
-import com.malk.Util.UtilMap;
-import com.malk.Util.UtilServlet;
-import com.malk.server.aliwork.YDConf;
-import com.malk.server.aliwork.YDParam;
-import com.malk.server.common.McException;
-import com.malk.server.common.McR;
-import com.malk.service.aliwork.YDClient;
-import com.malk.service.dingtalk.DDClient;
-import com.malk.service.dingtalk.DDClient_Contacts;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-
-import javax.servlet.http.HttpServletRequest;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
-
-/**
- * 错误抛出与拦截详见CatchException
- */
-@Slf4j
-@RestController
-@RequestMapping("/shijianguan")
-public class ShiJianGuanController {
-
-    @Autowired
-    private DDClient_Contacts ddClient_contacts;
-
-    @Autowired
-    private DDClient ddClient;
-
-    @Autowired
-    private YDClient ydClient;
-
-    /**
-     * 创建人员
-     */
-    @PostMapping("user")
-    McR createUser(HttpServletRequest request) {
-        Map<String, Object> param = UtilServlet.getParamMap(request);
-        log.info("创建用户, {}", param);
-        McException.assertParamException_Null(param, "name", "mobile", "deptId");
-        List<String> deptIds = new ArrayList<>();
-        if (ObjectUtil.isNotNull(param.get("proDeptIds"))) {
-            deptIds.addAll((List<String>) JSON.parse(String.valueOf(param.get("proDeptIds"))));
-        }
-        deptIds.add(String.valueOf(param.get("deptId")));
-        ddClient_contacts.createUser(ddClient.getAccessToken(), String.valueOf(param.get("name")), String.valueOf(param.get("mobile")), deptIds, null);
-        return McR.success();
-    }
-
-    /**
-     * 创建部门
-     */
-    @PostMapping("department")
-    McR createDepartment(HttpServletRequest request) {
-        Map<String, Object> param = UtilServlet.getParamMap(request);
-        log.info("创建部门, {}", param);
-        McException.assertParamException_Null(param, "name", "parentId", "formInstId", "compId_dept");
-        Map extInfo = UtilMap.map("hide_dept, create_dept_group, auto_approve_apply", true, true, true);
-        Map rsp = ddClient_contacts.createDepartment(ddClient.getAccessToken(), String.valueOf(param.get("name")), Long.valueOf(String.valueOf(param.get("parentId"))), extInfo);
-        ydClient.operateData(YDParam.builder()
-                .formInstanceId(String.valueOf(param.get("formInstId")))
-                .updateFormDataJson(JSON.toJSONString(UtilMap.map(String.valueOf(param.get("compId_dept")), rsp.get("dept_id"))))
-                .build(), YDConf.FORM_OPERATION.update);
-        return McR.success();
-    }
-
-    @GetMapping("test")
-    McR test() {
-        ydClient.operateData(YDParam.builder()
-                .formInstanceId("FINST-96766PB1LPS9DBVSBKN988PIAFGM3HJBBACGLJO8")
-                .updateFormDataJson(JSON.toJSONString(UtilMap.map("title", "{\"en_US\":\"gao^sheng^hao(高圣昊)发起的UnNamed Process Form\",\"pureEn_US\":\"gao^sheng^hao(高圣昊)发起的UnNamed Process Form\",\"type\":\"i18n\",\"zh_CN\":\"高圣昊发起的付款申请单\"}")))
-                .build(), YDConf.FORM_OPERATION.update);
-        return McR.success();
-    }
-}
+//package com.malk.rongzhi.controller;
+//
+//import cn.hutool.core.util.ObjectUtil;
+//import com.alibaba.fastjson.JSON;
+//import com.malk.Util.UtilMap;
+//import com.malk.Util.UtilServlet;
+//import com.malk.server.aliwork.YDConf;
+//import com.malk.server.aliwork.YDParam;
+//import com.malk.server.common.McException;
+//import com.malk.server.common.McR;
+//import com.malk.service.aliwork.YDClient;
+//import com.malk.service.dingtalk.DDClient;
+//import com.malk.service.dingtalk.DDClient_Contacts;
+//import lombok.extern.slf4j.Slf4j;
+//import org.springframework.beans.factory.annotation.Autowired;
+//import org.springframework.web.bind.annotation.GetMapping;
+//import org.springframework.web.bind.annotation.PostMapping;
+//import org.springframework.web.bind.annotation.RequestMapping;
+//import org.springframework.web.bind.annotation.RestController;
+//
+//import javax.servlet.http.HttpServletRequest;
+//import java.util.ArrayList;
+//import java.util.List;
+//import java.util.Map;
+//
+///**
+// * 错误抛出与拦截详见CatchException
+// */
+//@Slf4j
+//@RestController
+//@RequestMapping("/shijianguan")
+//public class ShiJianGuanController {
+//
+//    @Autowired
+//    private DDClient_Contacts ddClient_contacts;
+//
+//    @Autowired
+//    private DDClient ddClient;
+//
+//    @Autowired
+//    private YDClient ydClient;
+//
+//    /**
+//     * 创建人员
+//     */
+//    @PostMapping("user")
+//    McR createUser(HttpServletRequest request) {
+//        Map<String, Object> param = UtilServlet.getParamMap(request);
+//        log.info("创建用户, {}", param);
+//        McException.assertParamException_Null(param, "name", "mobile", "deptId");
+//        List<String> deptIds = new ArrayList<>();
+//        if (ObjectUtil.isNotNull(param.get("proDeptIds"))) {
+//            deptIds.addAll((List<String>) JSON.parse(String.valueOf(param.get("proDeptIds"))));
+//        }
+//        deptIds.add(String.valueOf(param.get("deptId")));
+//        ddClient_contacts.createUser(ddClient.getAccessToken(), String.valueOf(param.get("name")), String.valueOf(param.get("mobile")), deptIds, UtilMap.map("title", param.get("title")));
+//        return McR.success();
+//    }
+//
+//    /**
+//     * 创建部门
+//     */
+//    @PostMapping("department")
+//    McR createDepartment(HttpServletRequest request) {
+//        Map<String, Object> param = UtilServlet.getParamMap(request);
+//        log.info("创建部门, {}", param);
+//        McException.assertParamException_Null(param, "name", "parentId", "formInstId", "compId_dept");
+//        Map extInfo = UtilMap.map("hide_dept, create_dept_group, auto_approve_apply", true, true, true);
+//        Map rsp = ddClient_contacts.createDepartment(ddClient.getAccessToken(), String.valueOf(param.get("name")), Long.valueOf(String.valueOf(param.get("parentId"))), extInfo);
+//        ydClient.operateData(YDParam.builder()
+//                .formInstanceId(String.valueOf(param.get("formInstId")))
+//                .updateFormDataJson(JSON.toJSONString(UtilMap.map(String.valueOf(param.get("compId_dept")), rsp.get("dept_id"))))
+//                .build(), YDConf.FORM_OPERATION.update);
+//        return McR.success();
+//    }
+//
+//    @GetMapping("test")
+//    McR test() {
+//        ydClient.operateData(YDParam.builder()
+//                .formInstanceId("FINST-96766PB1LPS9DBVSBKN988PIAFGM3HJBBACGLJO8")
+//                .updateFormDataJson(JSON.toJSONString(UtilMap.map("title", "{\"en_US\":\"gao^sheng^hao(高圣昊)发起的UnNamed Process Form\",\"pureEn_US\":\"gao^sheng^hao(高圣昊)发起的UnNamed Process Form\",\"type\":\"i18n\",\"zh_CN\":\"高圣昊发起的付款申请单\"}")))
+//                .build(), YDConf.FORM_OPERATION.update);
+//        return McR.success();
+//    }
+//}

+ 8 - 9
mjava-rongzhi/src/main/java/com/malk/rongzhi/service/impl/RZServiceImpl.java

@@ -63,16 +63,15 @@ public class RZServiceImpl implements RZService {
         for (int i = 0; i < userIds.size(); i += 50) {
             int to = (i + 50) > userIds.size() ? userIds.size() : i + 50;
             // 考勤范围从当日 7.30 到次日 7.30
-            Date now = new Date();
-            String from = UtilDateTime.formatDate(now) + " 07:30:00";
-            String end = UtilDateTime.formatDate(now) + " 23:59:59";
+//            String now = "2023-06-14";
+            String now = UtilDateTime.formatDate(new Date());
+            String from = now + " 07:30:00";
+            String end = now + " 23:59:59";
             // fixme: [凌晨以后同步新的考勤时段]
             if (LocalDateTime.now().getHour() <= 7) {
-                from = UtilDateTime.formatDate(now) + " 00:00:00";
-                end = UtilDateTime.formatDate(now) + " 07:30:00";
+                from = now + " 00:00:00";
+                end = now + " 07:30:00";
             }
-//            String from = "2023-04-18 07:30:00";
-//            String end = "2023-04-19 07:30:00";
             List<String> users = userIds.subList(i, to);
             List<Map> list = ddClient_attendance.listAttendanceRecord(getAccessToken(RZConf.TYPE.dingtalk), users, from, end);
             // 匹配数据考勤
@@ -132,9 +131,9 @@ public class RZServiceImpl implements RZService {
         Map travel = UtilMap.map("E_e9101f64b75c7b57a3c0_name, E_e9101f64b75c7b57a3c0_住宿地", "上海市/上海市区", "[{\"key\":\"858\",\"label\":\"上海市/上海市区\"}]"); // 固定打车行程地点
         travel.put("E_e9101f64b75c7b57a3c0_入住日期", start);  // 上班打卡日期
         travel.put("E_e9101f64b75c7b57a3c0_离店日期", end);     // 下班打卡日期
-        formData.put("u_行程规划", Arrays.asList(UtilMap.map("dataLinkForm, dataLinkTemplateId", travel, "ID01nORyvKjEPJ"))); // 行程ID通过查询记录复制
+        formData.put("u_行程规划", Arrays.asList(UtilMap.map("dataLinkForm, dataLinkTemplateId, dataLinkId", travel, "ID01nORyvKjEPJ", null))); // 行程ID通过查询记录复制
         // 创建单据数据, 推送易快报审批作为打车依据
-        EKBR ekbr = ekbClient.createFormInstance(getAccessToken(RZConf.TYPE.ekuaibao), true, false, formData, null);
+        EKBR ekbr = ekbClient.createFormInstance(getAccessToken(RZConf.TYPE.ekuaibao), true, false, formData, new HashMap());
         // 记录当天的推送结果
         rzEkbRecordDao.save(RzEkbRecordPo.builder()
                 .userId(userId)

+ 50 - 0
mjava-rongzhi/target/generated-sources/java/com/malk/rongzhi/repository/entity/QRzEkbRecordPo.java

@@ -0,0 +1,50 @@
+package com.malk.rongzhi.repository.entity;
+
+import static com.querydsl.core.types.PathMetadataFactory.*;
+
+import com.querydsl.core.types.dsl.*;
+
+import com.querydsl.core.types.PathMetadata;
+import javax.annotation.Generated;
+import com.querydsl.core.types.Path;
+
+
+/**
+ * QRzEkbRecordPo is a Querydsl query type for RzEkbRecordPo
+ */
+@Generated("com.querydsl.codegen.EntitySerializer")
+public class QRzEkbRecordPo extends EntityPathBase<RzEkbRecordPo> {
+
+    private static final long serialVersionUID = 14758822L;
+
+    public static final QRzEkbRecordPo rzEkbRecordPo = new QRzEkbRecordPo("rzEkbRecordPo");
+
+    public final com.malk.base.QBasePo _super = new com.malk.base.QBasePo(this);
+
+    public final StringPath checkDate = createString("checkDate");
+
+    //inherited
+    public final DateTimePath<java.util.Date> createTime = _super.createTime;
+
+    //inherited
+    public final NumberPath<Long> id = _super.id;
+
+    //inherited
+    public final DateTimePath<java.util.Date> updateTime = _super.updateTime;
+
+    public final StringPath userId = createString("userId");
+
+    public QRzEkbRecordPo(String variable) {
+        super(RzEkbRecordPo.class, forVariable(variable));
+    }
+
+    public QRzEkbRecordPo(Path<? extends RzEkbRecordPo> path) {
+        super(path.getType(), path.getMetadata());
+    }
+
+    public QRzEkbRecordPo(PathMetadata metadata) {
+        super(RzEkbRecordPo.class, metadata);
+    }
+
+}
+

+ 54 - 0
mjava-shijianguan/pom.xml

@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+    <parent>
+        <artifactId>java-mcli</artifactId>
+        <groupId>com.malk</groupId>
+        <version>1.0-SNAPSHOT</version>
+    </parent>
+    <modelVersion>4.0.0</modelVersion>
+
+    <artifactId>mjava-shijianguan</artifactId>
+    <description>宁波市建管钉钉通讯录对接</description>
+
+    <properties>
+        <maven.compiler.source>8</maven.compiler.source>
+        <maven.compiler.target>8</maven.compiler.target>
+    </properties>
+
+    <dependencies>
+        <!-- 核心模块-->
+        <dependency>
+            <groupId>com.malk</groupId>
+            <artifactId>mjava</artifactId>
+            <version>1.0-SNAPSHOT</version>
+        </dependency>
+    </dependencies>
+
+    <build>
+        <plugins>
+            <plugin>
+                <groupId>org.springframework.boot</groupId>
+                <artifactId>spring-boot-maven-plugin</artifactId>
+                <version>2.1.1.RELEASE</version>
+                <configuration>
+                    <includeSystemScope>true</includeSystemScope>
+                    <!-- 如果没有该配置,devtools不会生效: 打包时关闭 -->
+                    <fork>false</fork>
+                    <!-- 避免中文乱码 -->
+                    <jvmArguments>-Dfile.encoding=UTF-8</jvmArguments>
+                </configuration>
+                <!-- 允许生成可运行jar -->
+                <executions>
+                    <execution>
+                        <goals>
+                            <goal>repackage</goal>
+                        </goals>
+                    </execution>
+                </executions>
+            </plugin>
+        </plugins>
+        <finalName>${project.artifactId}</finalName>
+    </build>
+</project>

+ 32 - 0
mjava-shijianguan/src/main/java/com.malk.shijianguan/Boot.java

@@ -0,0 +1,32 @@
+package com.malk.shijianguan;
+
+import com.querydsl.jpa.impl.JPAQueryFactory;
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.context.annotation.Bean;
+import org.springframework.data.jpa.repository.config.EnableJpaAuditing;
+
+import javax.persistence.EntityManager;
+
+/**
+ * corp项目: 扫描公共模块
+ * -
+ * 若是无需数据库模块, 配置无效地址也可启动, 引入mjava不支持直接 @SpringBootApplication(exclude = DataSourceAutoConfiguration.class) 配置
+ * 需要配置 jpa.hibernate.ddl-auto 为 none. 标识对表没有任何操作. 若不设置为 non, flyway.enabled 配置会无效, 在没有数库连接情况下程序无法启动
+ */
+@EnableJpaAuditing
+@SpringBootApplication(scanBasePackages = {"com.malk"})
+public class Boot {
+
+    public static void main(String... args) {
+        SpringApplication.run(Boot.class, args);
+    }
+
+    /**
+     * 让Spring管理JPAQueryFactory [不使用Qualifier详见mjava-Boot]
+     */
+    @Bean
+    public JPAQueryFactory jpaQueryFactory(EntityManager entityManager) {
+        return new JPAQueryFactory(entityManager);
+    }
+}

+ 85 - 0
mjava-shijianguan/src/main/java/com.malk.shijianguan/controller/ShiJianGuanController.java

@@ -0,0 +1,85 @@
+package com.malk.shijianguan.controller;
+
+import cn.hutool.core.util.ObjectUtil;
+import com.alibaba.fastjson.JSON;
+import com.malk.Util.UtilMap;
+import com.malk.Util.UtilServlet;
+import com.malk.server.aliwork.YDConf;
+import com.malk.server.aliwork.YDParam;
+import com.malk.server.common.McException;
+import com.malk.server.common.McR;
+import com.malk.service.aliwork.YDClient;
+import com.malk.service.dingtalk.DDClient;
+import com.malk.service.dingtalk.DDClient_Contacts;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.servlet.http.HttpServletRequest;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * 错误抛出与拦截详见CatchException
+ */
+@Slf4j
+@RestController
+@RequestMapping("/shijianguan")
+public class ShiJianGuanController {
+
+    @Autowired
+    private DDClient_Contacts ddClient_contacts;
+
+    @Autowired
+    private DDClient ddClient;
+
+    @Autowired
+    private YDClient ydClient;
+
+    /**
+     * 创建人员
+     */
+    @PostMapping("user")
+    McR createUser(HttpServletRequest request) {
+        Map<String, Object> param = UtilServlet.getParamMap(request);
+        log.info("创建用户, {}", param);
+        McException.assertParamException_Null(param, "name", "mobile", "deptId");
+        List<String> deptIds = new ArrayList<>();
+        if (ObjectUtil.isNotNull(param.get("proDeptIds"))) {
+            deptIds.addAll((List<String>) JSON.parse(String.valueOf(param.get("proDeptIds"))));
+        }
+        deptIds.add(String.valueOf(param.get("deptId")));
+        ddClient_contacts.createUser(ddClient.getAccessToken(), String.valueOf(param.get("name")), String.valueOf(param.get("mobile")), deptIds, UtilMap.map("title", param.get("title")));
+        return McR.success();
+    }
+
+    /**
+     * 创建部门
+     */
+    @PostMapping("department")
+    McR createDepartment(HttpServletRequest request) {
+        Map<String, Object> param = UtilServlet.getParamMap(request);
+        log.info("创建部门, {}", param);
+        McException.assertParamException_Null(param, "name", "parentId", "formInstId", "compId_dept");
+        Map extInfo = UtilMap.map("hide_dept, create_dept_group, auto_approve_apply", true, true, true);
+        Map rsp = ddClient_contacts.createDepartment(ddClient.getAccessToken(), String.valueOf(param.get("name")), Long.valueOf(String.valueOf(param.get("parentId"))), extInfo);
+        ydClient.operateData(YDParam.builder()
+                .formInstanceId(String.valueOf(param.get("formInstId")))
+                .updateFormDataJson(JSON.toJSONString(UtilMap.map(String.valueOf(param.get("compId_dept")), rsp.get("dept_id"))))
+                .build(), YDConf.FORM_OPERATION.update);
+        return McR.success();
+    }
+
+    @GetMapping("test")
+    McR test() {
+        ydClient.operateData(YDParam.builder()
+                .formInstanceId("FINST-96766PB1LPS9DBVSBKN988PIAFGM3HJBBACGLJO8")
+                .updateFormDataJson(JSON.toJSONString(UtilMap.map("title", "{\"en_US\":\"gao^sheng^hao(高圣昊)发起的UnNamed Process Form\",\"pureEn_US\":\"gao^sheng^hao(高圣昊)发起的UnNamed Process Form\",\"type\":\"i18n\",\"zh_CN\":\"高圣昊发起的付款申请单\"}")))
+                .build(), YDConf.FORM_OPERATION.update);
+        return McR.success();
+    }
+}

+ 58 - 0
mjava-shijianguan/src/main/resources/application-dev.yml

@@ -0,0 +1,58 @@
+# 环境配置
+server:
+  port: 9001
+  servlet:
+    context-path: /api
+
+# condition
+spel:
+  scheduling: false        # 定时任务是否执行
+  multiSource: false       # 是否多数据源配置
+
+spring:
+  # database
+  datasource:
+    driver-class-name: com.mysql.cj.jdbc.Driver
+    username: root
+    password: mu123
+    url: jdbc:mysql://127.0.0.1:3306/mjava?serverTimezone=Asia/Shanghai&useUnicode=yes&characterEncoding=UTF-8&useSSL=true
+  jpa:
+    hibernate:
+      ddl-auto: none      # JPA对表没有任何操作
+    show-sql: true
+    database: MYSQL
+    database-platform: org.hibernate.dialect.MySQL57Dialect
+
+# filepath
+file:
+  path:
+    file: /Users/malk/server/_Tool/var/mjava/tmp//file/
+    image: /Users/malk/server/_Tool/var/mjava/tmp//image/
+    tmp: /Users/malk/server/_Tool/var/mjava/tmp/
+  source:
+    fonts: /Users/malk/server/_Tool/fonts/simsun.ttc
+logging:
+  file:
+    path: /Users/malk/server/_Tool/var/mjava/log
+
+# ekuaibao - 榕智
+ekuaibao:
+  corpId: ID01jaBqslI9LV                  # 易快报的 corpId
+  platformApi: https://dd2.ekuaibao.com   # 易快报不同平台获取前缀的方式不同
+
+# dingtalk - 市建管
+dingtalk:
+  agentId: 2561043249
+  appKey: dingged8ayplgf8g9cjg
+  appSecret: GbNMRf9i970oiKY8cNE39KqpF-fxIwUNuCFvqs_KpbRTfW3GnjRqfYjtBqi5exHF
+  corpId: dingea1dc77298d50115ee0f45d8e4f7c288
+  aesKey:
+  token:
+  operator:
+
+# aliwork
+aliwork:
+  appType: APP_SZMBX0R7WC68M19JCJKG
+  systemToken: 2G766HA16IE97NYK6KTEL94YDW422EZNENRFLD3
+
+

+ 39 - 0
mjava-shijianguan/src/main/resources/application-prod.yml

@@ -0,0 +1,39 @@
+# 环境配置
+server:
+  port: 9006
+
+# condition
+spel:
+  scheduling: false       # 定时任务是否执行
+  multiSource: false      # 是否多数据源配置
+
+spring:
+  # database
+  datasource:
+    driver-class-name: com.mysql.cj.jdbc.Driver
+    username: root
+    password: cp-root@2022++
+    url: jdbc:mysql://47.97.181.40:3306/mjava?serverTimezone=Asia/Shanghai&useUnicode=yes&characterEncoding=UTF-8&useSSL=true
+  jpa:
+    database: MYSQL
+    database-platform: org.hibernate.dialect.MySQL57Dialect
+
+# ekuaibao - 榕智
+ekuaibao:
+  corpId: ID01jaBqslI9LV                  # 易快报的 corpId
+  platformApi: https://dd2.ekuaibao.com   # 易快报不同平台获取前缀的方式不同
+
+# dingtalk - 市建管
+dingtalk:
+  agentId: 2561043249
+  appKey: dingged8ayplgf8g9cjg
+  appSecret: GbNMRf9i970oiKY8cNE39KqpF-fxIwUNuCFvqs_KpbRTfW3GnjRqfYjtBqi5exHF
+  corpId: dingea1dc77298d50115ee0f45d8e4f7c288
+  aesKey:
+  token:
+  operator:
+
+# aliwork
+aliwork:
+  appType: APP_SZMBX0R7WC68M19JCJKG
+  systemToken: 2G766HA16IE97NYK6KTEL94YDW422EZNENRFLD3

+ 58 - 0
mjava-shijianguan/target/classes/application-dev.yml

@@ -0,0 +1,58 @@
+# 环境配置
+server:
+  port: 9001
+  servlet:
+    context-path: /api
+
+# condition
+spel:
+  scheduling: false        # 定时任务是否执行
+  multiSource: false       # 是否多数据源配置
+
+spring:
+  # database
+  datasource:
+    driver-class-name: com.mysql.cj.jdbc.Driver
+    username: root
+    password: mu123
+    url: jdbc:mysql://127.0.0.1:3306/mjava?serverTimezone=Asia/Shanghai&useUnicode=yes&characterEncoding=UTF-8&useSSL=true
+  jpa:
+    hibernate:
+      ddl-auto: none      # JPA对表没有任何操作
+    show-sql: true
+    database: MYSQL
+    database-platform: org.hibernate.dialect.MySQL57Dialect
+
+# filepath
+file:
+  path:
+    file: /Users/malk/server/_Tool/var/mjava/tmp//file/
+    image: /Users/malk/server/_Tool/var/mjava/tmp//image/
+    tmp: /Users/malk/server/_Tool/var/mjava/tmp/
+  source:
+    fonts: /Users/malk/server/_Tool/fonts/simsun.ttc
+logging:
+  file:
+    path: /Users/malk/server/_Tool/var/mjava/log
+
+# ekuaibao - 榕智
+ekuaibao:
+  corpId: ID01jaBqslI9LV                  # 易快报的 corpId
+  platformApi: https://dd2.ekuaibao.com   # 易快报不同平台获取前缀的方式不同
+
+# dingtalk - 市建管
+dingtalk:
+  agentId: 2561043249
+  appKey: dingged8ayplgf8g9cjg
+  appSecret: GbNMRf9i970oiKY8cNE39KqpF-fxIwUNuCFvqs_KpbRTfW3GnjRqfYjtBqi5exHF
+  corpId: dingea1dc77298d50115ee0f45d8e4f7c288
+  aesKey:
+  token:
+  operator:
+
+# aliwork
+aliwork:
+  appType: APP_SZMBX0R7WC68M19JCJKG
+  systemToken: 2G766HA16IE97NYK6KTEL94YDW422EZNENRFLD3
+
+

+ 39 - 0
mjava-shijianguan/target/classes/application-prod.yml

@@ -0,0 +1,39 @@
+# 环境配置
+server:
+  port: 9006
+
+# condition
+spel:
+  scheduling: false       # 定时任务是否执行
+  multiSource: false      # 是否多数据源配置
+
+spring:
+  # database
+  datasource:
+    driver-class-name: com.mysql.cj.jdbc.Driver
+    username: root
+    password: cp-root@2022++
+    url: jdbc:mysql://47.97.181.40:3306/mjava?serverTimezone=Asia/Shanghai&useUnicode=yes&characterEncoding=UTF-8&useSSL=true
+  jpa:
+    database: MYSQL
+    database-platform: org.hibernate.dialect.MySQL57Dialect
+
+# ekuaibao - 榕智
+ekuaibao:
+  corpId: ID01jaBqslI9LV                  # 易快报的 corpId
+  platformApi: https://dd2.ekuaibao.com   # 易快报不同平台获取前缀的方式不同
+
+# dingtalk - 市建管
+dingtalk:
+  agentId: 2561043249
+  appKey: dingged8ayplgf8g9cjg
+  appSecret: GbNMRf9i970oiKY8cNE39KqpF-fxIwUNuCFvqs_KpbRTfW3GnjRqfYjtBqi5exHF
+  corpId: dingea1dc77298d50115ee0f45d8e4f7c288
+  aesKey:
+  token:
+  operator:
+
+# aliwork
+aliwork:
+  appType: APP_SZMBX0R7WC68M19JCJKG
+  systemToken: 2G766HA16IE97NYK6KTEL94YDW422EZNENRFLD3

+ 5 - 0
mjava-shijianguan/target/maven-archiver/pom.properties

@@ -0,0 +1,5 @@
+#Generated by Maven
+#Wed Jun 14 11:14:32 CST 2023
+version=1.0-SNAPSHOT
+groupId=com.malk
+artifactId=mjava-shijianguan

+ 2 - 0
mjava-shijianguan/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst

@@ -0,0 +1,2 @@
+com/malk/rongzhi/controller/ShiJianGuanController.class
+com/malk/rongzhi/Boot.class

+ 2 - 0
mjava-shijianguan/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst

@@ -0,0 +1,2 @@
+/Users/malk/server/java-mcli-2/mjava-shijianguan/src/main/java/Boot.java
+/Users/malk/server/java-mcli-2/mjava-shijianguan/src/main/java/com.malk.shijianguan/controller/ShiJianGuanController.java

BIN
mjava-shijianguan/target/mjava-shijianguan.jar.original


+ 60 - 0
mjava-xiding/target/generated-sources/java/com/malk/xiding/repository/entity/QXdDdApproveRecordPo.java

@@ -0,0 +1,60 @@
+package com.malk.xiding.repository.entity;
+
+import static com.querydsl.core.types.PathMetadataFactory.*;
+
+import com.querydsl.core.types.dsl.*;
+
+import com.querydsl.core.types.PathMetadata;
+import javax.annotation.Generated;
+import com.querydsl.core.types.Path;
+
+
+/**
+ * QXdDdApproveRecordPo is a Querydsl query type for XdDdApproveRecordPo
+ */
+@Generated("com.querydsl.codegen.EntitySerializer")
+public class QXdDdApproveRecordPo extends EntityPathBase<XdDdApproveRecordPo> {
+
+    private static final long serialVersionUID = 1676302969L;
+
+    public static final QXdDdApproveRecordPo xdDdApproveRecordPo = new QXdDdApproveRecordPo("xdDdApproveRecordPo");
+
+    public final com.malk.base.QBasePo _super = new com.malk.base.QBasePo(this);
+
+    //inherited
+    public final DateTimePath<java.util.Date> createTime = _super.createTime;
+
+    public final DateTimePath<java.util.Date> endTime = createDateTime("endTime", java.util.Date.class);
+
+    //inherited
+    public final NumberPath<Long> id = _super.id;
+
+    public final StringPath instanceId = createString("instanceId");
+
+    public final StringPath openUserId = createString("openUserId");
+
+    public final DateTimePath<java.util.Date> startTime = createDateTime("startTime", java.util.Date.class);
+
+    public final StringPath type = createString("type");
+
+    //inherited
+    public final DateTimePath<java.util.Date> updateTime = _super.updateTime;
+
+    public final StringPath userId = createString("userId");
+
+    public final StringPath userName = createString("userName");
+
+    public QXdDdApproveRecordPo(String variable) {
+        super(XdDdApproveRecordPo.class, forVariable(variable));
+    }
+
+    public QXdDdApproveRecordPo(Path<? extends XdDdApproveRecordPo> path) {
+        super(path.getType(), path.getMetadata());
+    }
+
+    public QXdDdApproveRecordPo(PathMetadata metadata) {
+        super(XdDdApproveRecordPo.class, metadata);
+    }
+
+}
+

+ 56 - 0
mjava-xiding/target/generated-sources/java/com/malk/xiding/repository/entity/QXdDdFxkRelationPo.java

@@ -0,0 +1,56 @@
+package com.malk.xiding.repository.entity;
+
+import static com.querydsl.core.types.PathMetadataFactory.*;
+
+import com.querydsl.core.types.dsl.*;
+
+import com.querydsl.core.types.PathMetadata;
+import javax.annotation.Generated;
+import com.querydsl.core.types.Path;
+
+
+/**
+ * QXdDdFxkRelationPo is a Querydsl query type for XdDdFxkRelationPo
+ */
+@Generated("com.querydsl.codegen.EntitySerializer")
+public class QXdDdFxkRelationPo extends EntityPathBase<XdDdFxkRelationPo> {
+
+    private static final long serialVersionUID = -792800080L;
+
+    public static final QXdDdFxkRelationPo xdDdFxkRelationPo = new QXdDdFxkRelationPo("xdDdFxkRelationPo");
+
+    public final com.malk.base.QBasePo _super = new com.malk.base.QBasePo(this);
+
+    //inherited
+    public final DateTimePath<java.util.Date> createTime = _super.createTime;
+
+    //inherited
+    public final NumberPath<Long> id = _super.id;
+
+    public final StringPath idDd = createString("idDd");
+
+    public final StringPath idFxxk = createString("idFxxk");
+
+    public final StringPath mobile = createString("mobile");
+
+    public final StringPath name = createString("name");
+
+    public final StringPath remark = createString("remark");
+
+    //inherited
+    public final DateTimePath<java.util.Date> updateTime = _super.updateTime;
+
+    public QXdDdFxkRelationPo(String variable) {
+        super(XdDdFxkRelationPo.class, forVariable(variable));
+    }
+
+    public QXdDdFxkRelationPo(Path<? extends XdDdFxkRelationPo> path) {
+        super(path.getType(), path.getMetadata());
+    }
+
+    public QXdDdFxkRelationPo(PathMetadata metadata) {
+        super(XdDdFxkRelationPo.class, metadata);
+    }
+
+}
+

+ 60 - 0
mjava-xiding/target/generated-sources/java/com/malk/xiding/repository/entity/QXdFxkDdAttendancePo.java

@@ -0,0 +1,60 @@
+package com.malk.xiding.repository.entity;
+
+import static com.querydsl.core.types.PathMetadataFactory.*;
+
+import com.querydsl.core.types.dsl.*;
+
+import com.querydsl.core.types.PathMetadata;
+import javax.annotation.Generated;
+import com.querydsl.core.types.Path;
+
+
+/**
+ * QXdFxkDdAttendancePo is a Querydsl query type for XdFxkDdAttendancePo
+ */
+@Generated("com.querydsl.codegen.EntitySerializer")
+public class QXdFxkDdAttendancePo extends EntityPathBase<XdFxkDdAttendancePo> {
+
+    private static final long serialVersionUID = 226488349L;
+
+    public static final QXdFxkDdAttendancePo xdFxkDdAttendancePo = new QXdFxkDdAttendancePo("xdFxkDdAttendancePo");
+
+    public final com.malk.base.QBasePo _super = new com.malk.base.QBasePo(this);
+
+    public final StringPath checkAddress = createString("checkAddress");
+
+    public final DateTimePath<java.util.Date> checkTime = createDateTime("checkTime", java.util.Date.class);
+
+    //inherited
+    public final DateTimePath<java.util.Date> createTime = _super.createTime;
+
+    //inherited
+    public final NumberPath<Long> id = _super.id;
+
+    public final StringPath idDd = createString("idDd");
+
+    public final StringPath openUserId = createString("openUserId");
+
+    public final StringPath outside = createString("outside");
+
+    public final StringPath remark = createString("remark");
+
+    //inherited
+    public final DateTimePath<java.util.Date> updateTime = _super.updateTime;
+
+    public final StringPath userName = createString("userName");
+
+    public QXdFxkDdAttendancePo(String variable) {
+        super(XdFxkDdAttendancePo.class, forVariable(variable));
+    }
+
+    public QXdFxkDdAttendancePo(Path<? extends XdFxkDdAttendancePo> path) {
+        super(path.getType(), path.getMetadata());
+    }
+
+    public QXdFxkDdAttendancePo(PathMetadata metadata) {
+        super(XdFxkDdAttendancePo.class, metadata);
+    }
+
+}
+

+ 13 - 3
mjava-xintianlong/src/main/java/com/malk/xintianlong/controller/HSController.java

@@ -3,6 +3,7 @@ package com.malk.xintianlong.controller;
 import cn.hutool.core.util.ObjectUtil;
 import com.alibaba.fastjson.JSON;
 import com.malk.Util.UtilMap;
+import com.malk.Util.UtilNumber;
 import com.malk.base.BaseDto;
 import com.malk.server.aliwork.YDConf;
 import com.malk.server.aliwork.YDParam;
@@ -288,23 +289,27 @@ public class HSController {
         Pageable pageable = PageRequest.of(UtilMap.getInt(data, "page") - 1, UtilMap.getInt(data, "size"));
 
         Page page;
+        double total;
         if (UtilMap.isNotBlankString(data, "startTime") && UtilMap.isNotBlankString(data, "endTime")) {
             Date sTime = new Date(UtilMap.getLong(data, "startTime"));
             Date eTime = new Date(UtilMap.getLong(data, "endTime"));
             page = hsOrderPlanDao.queryOrderPlan(sTime, eTime, sOrderNo, pageable);
+            total = hsOrderPlanDao.queryOrderPlan_sum(sTime, eTime, sOrderNo);
         } else if (UtilMap.isNotBlankString(data, "startTime")) {
             Date sTime = new Date(UtilMap.getLong(data, "startTime"));
             page = hsOrderPlanDao.queryOrderPlan_start(sTime, sOrderNo, pageable);
+            total = hsOrderPlanDao.queryOrderPlan_start_sum(sTime, sOrderNo);
         } else if (UtilMap.isNotBlankString(data, "endTime")) {
             Date eTime = new Date(UtilMap.getLong(data, "endTime"));
             page = hsOrderPlanDao.queryOrderPlan_end(eTime, sOrderNo, pageable);
+            total = hsOrderPlanDao.queryOrderPlan_end_sum(eTime, sOrderNo);
         } else {
             page = hsOrderPlanDao.queryOrderPlan(sOrderNo, pageable);
+            total = hsOrderPlanDao.queryOrderPlan_sum(sOrderNo);
         }
         Map result = YDR.formatPage(page);
-
+        result.put("sum_total", UtilNumber.formatPrecision(total)); // 投入数量合计
         return McR.success(BaseDto.jsonFormatDateTime(result));
-
     }
 
     /**
@@ -318,21 +323,26 @@ public class HSController {
         Pageable pageable = PageRequest.of(UtilMap.getInt(data, "page") - 1, UtilMap.getInt(data, "size"));
 
         Page page;
+        double total;
         if (UtilMap.isNotBlankString(data, "startTime") && UtilMap.isNotBlankString(data, "endTime")) {
             Date sTime = new Date(UtilMap.getLong(data, "startTime"));
             Date eTime = new Date(UtilMap.getLong(data, "endTime"));
             page = hsOrderPlanDao.queryStoreWarehouse(sTime, eTime, sStoreInNo, pageable);
+            total = hsOrderPlanDao.queryStoreWarehouse(sTime, eTime, sStoreInNo);
         } else if (UtilMap.isNotBlankString(data, "startTime")) {
             Date sTime = new Date(UtilMap.getLong(data, "startTime"));
             page = hsOrderPlanDao.queryStoreWarehouse_start(sTime, sStoreInNo, pageable);
+            total = hsOrderPlanDao.queryStoreWarehouse_start(sTime, sStoreInNo);
         } else if (UtilMap.isNotBlankString(data, "endTime")) {
             Date eTime = new Date(UtilMap.getLong(data, "endTime"));
             page = hsOrderPlanDao.queryStoreWarehouse_end(eTime, sStoreInNo, pageable);
+            total = hsOrderPlanDao.queryStoreWarehouse_end(eTime, sStoreInNo);
         } else {
             page = hsOrderPlanDao.queryStoreWarehouse(sStoreInNo, pageable);
+            total = hsOrderPlanDao.queryStoreWarehouse(sStoreInNo);
         }
         Map result = YDR.formatPage(page);
-
+        result.put("sum_total", UtilNumber.formatPrecision(total * 100)); // 入库数量合计
         return McR.success(BaseDto.jsonFormatDateTime(result));
     }
 

+ 30 - 0
mjava-xintianlong/src/main/java/com/malk/xintianlong/repository/dao/HSViewDao.java

@@ -30,6 +30,21 @@ public interface HSViewDao extends CrudRepository<JpaMap, Long> {
     @Query(value = "select * from vwpbCommonDataOrderPlan where sOrderNo like LTRIM('%' + ?1 + '%') order by dPlanDate desc", nativeQuery = true)
     Page<Map> queryOrderPlan(String sOrderNo, Pageable pageable);
 
+    /**
+     * 查询生产计划_数量
+     */
+    @Query(value = "select sum(trnQty) from vwpbCommonDataOrderPlan where dPlanDate >= ?1 and dPlanDate <= ?2 and sOrderNo like LTRIM('%' + ?3 + '%')", nativeQuery = true)
+    double queryOrderPlan_sum(Date start, Date end, String sOrderNo);
+
+    @Query(value = "select sum(trnQty) from vwpbCommonDataOrderPlan where dPlanDate >= ?1 and sOrderNo like LTRIM('%' + ?2 + '%')", nativeQuery = true)
+    double queryOrderPlan_start_sum(Date end, String sOrderNo);
+
+    @Query(value = "select sum(trnQty) from vwpbCommonDataOrderPlan where dPlanDate <= ?1 and sOrderNo like LTRIM('%' + ?2 + '%')", nativeQuery = true)
+    double queryOrderPlan_end_sum(Date start, String sOrderNo);
+
+    @Query(value = "select sum(trnQty) from vwpbCommonDataOrderPlan where sOrderNo like LTRIM('%' + ?1 + '%')", nativeQuery = true)
+    double queryOrderPlan_sum(String sOrderNo);
+
     /**
      * 查询成品库存
      */
@@ -44,4 +59,19 @@ public interface HSViewDao extends CrudRepository<JpaMap, Long> {
 
     @Query(value = "select * from vwmmSTInStoreQuery where sStoreInNo like LTRIM('%' + ?1 + '%') order by tStoreInTime desc", nativeQuery = true)
     Page<Map> queryStoreWarehouse(String sStoreInNo, Pageable pageable);
+
+    /**
+     * 查询成品库存_数量
+     */
+    @Query(value = "select sum(nInQty) from vwmmSTInStoreQuery where tStoreInTime >= ?1 and tStoreInTime <= ?2 and sStoreInNo like LTRIM('%' + ?3 + '%')", nativeQuery = true)
+    double queryStoreWarehouse(Date start, Date end, String sOrderNo);
+
+    @Query(value = "select sum(nInQty)  from vwmmSTInStoreQuery where tStoreInTime >= ?1 and sStoreInNo like LTRIM('%' + ?2 + '%')", nativeQuery = true)
+    double queryStoreWarehouse_start(Date end, String sOrderNo);
+
+    @Query(value = "select sum(nInQty)  from vwmmSTInStoreQuery where tStoreInTime <= ?1 and sStoreInNo like LTRIM('%' + ?2 + '%')", nativeQuery = true)
+    double queryStoreWarehouse_end(Date start, String sOrderNo);
+
+    @Query(value = "select sum(nInQty)  from vwmmSTInStoreQuery where sStoreInNo like LTRIM('%' + ?1 + '%')", nativeQuery = true)
+    double queryStoreWarehouse(String sStoreInNo);
 }

+ 1 - 1
mjava-xintianlong/target/maven-archiver/pom.properties

@@ -1,5 +1,5 @@
 #Generated by Maven
-#Sat Jun 10 14:31:39 CST 2023
+#Wed Jun 14 05:57:04 CST 2023
 version=1.0-SNAPSHOT
 groupId=com.malk
 artifactId=mjava-xintianlong

+ 12 - 0
mjava-xintianlong/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst

@@ -1 +1,13 @@
+com/malk/xintianlong/service/HSService.class
+com/malk/xintianlong/repository/entity/HSApproveRecordPo.class
 com/malk/xintianlong/repository/dao/HSViewDao.class
+com/malk/xintianlong/controller/HSController.class
+com/malk/xintianlong/schedule/HSScheduleTask.class
+com/malk/xintianlong/server/HSConf.class
+com/malk/xintianlong/repository/dao/HSApproveRecordDao.class
+com/malk/xintianlong/delegate/DDDelegate.class
+com/malk/xintianlong/repository/entity/HSApproveRecordPo$HSApproveRecordPoBuilder.class
+com/malk/xintianlong/service/impl/HSServiceImpl.class
+com/malk/xintianlong/repository/entity/QHSApproveRecordPo.class
+com/malk/xintianlong/Boot.class
+com/malk/xintianlong/controller/DDController.class

BIN
mjava-xintianlong/target/mjava-xintianlong.jar.original


+ 3 - 1
mjava/src/main/java/com/malk/Util/UtilHttp.java

@@ -7,6 +7,7 @@ import cn.hutool.http.HttpRequest;
 import cn.hutool.http.HttpUtil;
 import cn.hutool.http.webservice.SoapClient;
 import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.serializer.SerializerFeature;
 import com.malk.server.common.VenR;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang3.StringUtils;
@@ -67,7 +68,8 @@ public abstract class UtilHttp {
         }
         request.addHeaders(header).form(form); // form允许为空
         if (ObjectUtil.isNotNull(body)) {
-            request.body(JSON.toJSONString(body));
+            // ppExt: 序列号保留null字段, 不做过滤
+            request.body(JSON.toJSONString(body, SerializerFeature.WriteMapNullValue));
         }
         if (StringUtils.isNotBlank(usr) && StringUtils.isNotBlank(pwd)) {
             request.basicAuth(usr, pwd);

+ 33 - 0
mjava/src/main/java/com/malk/Util/UtilNumber.java

@@ -0,0 +1,33 @@
+package com.malk.Util;
+
+import java.math.BigDecimal;
+import java.text.DecimalFormat;
+import java.text.NumberFormat;
+import java.util.Locale;
+
+/**
+ * 数字格式化
+ */
+public class UtilNumber {
+
+    // 货币格式化
+    public static final String formatCurrency(Number number) {
+        DecimalFormat curFormat = (DecimalFormat) NumberFormat.getCurrencyInstance(Locale.CHINA);
+        return curFormat.format(number);
+    }
+
+    // 百分比格式化
+    public static final String formatPercent(Number number) {
+        DecimalFormat percentFormat = (DecimalFormat) NumberFormat.getPercentInstance(Locale.CHINA);
+        percentFormat.setMinimumFractionDigits(2);
+        return percentFormat.format(number);
+    }
+
+    // 小数位精度格式
+    public static final String formatPrecision(double number) {
+        DecimalFormat df = new DecimalFormat("#.00");
+        return df.format(new BigDecimal(number));
+    }
+
+
+}

+ 0 - 180
mjava/target/classes/META-INF/spring-configuration-metadata.json

@@ -35,36 +35,6 @@
       "type": "com.malk.server.common.FilePath$Path",
       "sourceType": "com.malk.server.common.FilePath$Path"
     },
-    {
-      "name": "file.path",
-      "type": "com.malk.server.common.FilePath$Path",
-      "sourceType": "com.malk.server.common.FilePath$Path"
-    },
-    {
-      "name": "file.path",
-      "type": "com.malk.server.common.FilePath$Path",
-      "sourceType": "com.malk.server.common.FilePath$Path"
-    },
-    {
-      "name": "file.path",
-      "type": "com.malk.server.common.FilePath$Path",
-      "sourceType": "com.malk.server.common.FilePath$Path"
-    },
-    {
-      "name": "file.path",
-      "type": "com.malk.server.common.FilePath$Path",
-      "sourceType": "com.malk.server.common.FilePath$Path"
-    },
-    {
-      "name": "file.path",
-      "type": "com.malk.server.common.FilePath$Path",
-      "sourceType": "com.malk.server.common.FilePath$Path"
-    },
-    {
-      "name": "file.path",
-      "type": "com.malk.server.common.FilePath$Path",
-      "sourceType": "com.malk.server.common.FilePath$Path"
-    },
     {
       "name": "file.source",
       "type": "com.malk.server.common.FilePath$Source",
@@ -75,36 +45,6 @@
       "type": "com.malk.server.common.FilePath$Source",
       "sourceType": "com.malk.server.common.FilePath$Source"
     },
-    {
-      "name": "file.source",
-      "type": "com.malk.server.common.FilePath$Source",
-      "sourceType": "com.malk.server.common.FilePath$Source"
-    },
-    {
-      "name": "file.source",
-      "type": "com.malk.server.common.FilePath$Source",
-      "sourceType": "com.malk.server.common.FilePath$Source"
-    },
-    {
-      "name": "file.source",
-      "type": "com.malk.server.common.FilePath$Source",
-      "sourceType": "com.malk.server.common.FilePath$Source"
-    },
-    {
-      "name": "file.source",
-      "type": "com.malk.server.common.FilePath$Source",
-      "sourceType": "com.malk.server.common.FilePath$Source"
-    },
-    {
-      "name": "file.source",
-      "type": "com.malk.server.common.FilePath$Source",
-      "sourceType": "com.malk.server.common.FilePath$Source"
-    },
-    {
-      "name": "file.source",
-      "type": "com.malk.server.common.FilePath$Source",
-      "sourceType": "com.malk.server.common.FilePath$Source"
-    },
     {
       "name": "fxiaoke",
       "type": "com.malk.server.fxiaoke.FXKConf",
@@ -229,136 +169,16 @@
       "type": "java.lang.String",
       "sourceType": "com.malk.server.common.FilePath$Path"
     },
-    {
-      "name": "file.path.file",
-      "type": "java.lang.String",
-      "sourceType": "com.malk.server.common.FilePath$Path"
-    },
-    {
-      "name": "file.path.file",
-      "type": "java.lang.String",
-      "sourceType": "com.malk.server.common.FilePath$Path"
-    },
-    {
-      "name": "file.path.file",
-      "type": "java.lang.String",
-      "sourceType": "com.malk.server.common.FilePath$Path"
-    },
-    {
-      "name": "file.path.file",
-      "type": "java.lang.String",
-      "sourceType": "com.malk.server.common.FilePath$Path"
-    },
-    {
-      "name": "file.path.file",
-      "type": "java.lang.String",
-      "sourceType": "com.malk.server.common.FilePath$Path"
-    },
-    {
-      "name": "file.path.file",
-      "type": "java.lang.String",
-      "sourceType": "com.malk.server.common.FilePath$Path"
-    },
     {
       "name": "file.path.image",
       "type": "java.lang.String",
       "sourceType": "com.malk.server.common.FilePath$Path"
     },
-    {
-      "name": "file.path.image",
-      "type": "java.lang.String",
-      "sourceType": "com.malk.server.common.FilePath$Path"
-    },
-    {
-      "name": "file.path.image",
-      "type": "java.lang.String",
-      "sourceType": "com.malk.server.common.FilePath$Path"
-    },
-    {
-      "name": "file.path.image",
-      "type": "java.lang.String",
-      "sourceType": "com.malk.server.common.FilePath$Path"
-    },
-    {
-      "name": "file.path.image",
-      "type": "java.lang.String",
-      "sourceType": "com.malk.server.common.FilePath$Path"
-    },
-    {
-      "name": "file.path.image",
-      "type": "java.lang.String",
-      "sourceType": "com.malk.server.common.FilePath$Path"
-    },
-    {
-      "name": "file.path.image",
-      "type": "java.lang.String",
-      "sourceType": "com.malk.server.common.FilePath$Path"
-    },
-    {
-      "name": "file.path.tmp",
-      "type": "java.lang.String",
-      "sourceType": "com.malk.server.common.FilePath$Path"
-    },
-    {
-      "name": "file.path.tmp",
-      "type": "java.lang.String",
-      "sourceType": "com.malk.server.common.FilePath$Path"
-    },
-    {
-      "name": "file.path.tmp",
-      "type": "java.lang.String",
-      "sourceType": "com.malk.server.common.FilePath$Path"
-    },
     {
       "name": "file.path.tmp",
       "type": "java.lang.String",
       "sourceType": "com.malk.server.common.FilePath$Path"
     },
-    {
-      "name": "file.path.tmp",
-      "type": "java.lang.String",
-      "sourceType": "com.malk.server.common.FilePath$Path"
-    },
-    {
-      "name": "file.path.tmp",
-      "type": "java.lang.String",
-      "sourceType": "com.malk.server.common.FilePath$Path"
-    },
-    {
-      "name": "file.path.tmp",
-      "type": "java.lang.String",
-      "sourceType": "com.malk.server.common.FilePath$Path"
-    },
-    {
-      "name": "file.source.fonts",
-      "type": "java.lang.String",
-      "sourceType": "com.malk.server.common.FilePath$Source"
-    },
-    {
-      "name": "file.source.fonts",
-      "type": "java.lang.String",
-      "sourceType": "com.malk.server.common.FilePath$Source"
-    },
-    {
-      "name": "file.source.fonts",
-      "type": "java.lang.String",
-      "sourceType": "com.malk.server.common.FilePath$Source"
-    },
-    {
-      "name": "file.source.fonts",
-      "type": "java.lang.String",
-      "sourceType": "com.malk.server.common.FilePath$Source"
-    },
-    {
-      "name": "file.source.fonts",
-      "type": "java.lang.String",
-      "sourceType": "com.malk.server.common.FilePath$Source"
-    },
-    {
-      "name": "file.source.fonts",
-      "type": "java.lang.String",
-      "sourceType": "com.malk.server.common.FilePath$Source"
-    },
     {
       "name": "file.source.fonts",
       "type": "java.lang.String",

+ 1 - 1
mjava/target/maven-archiver/pom.properties

@@ -1,5 +1,5 @@
 #Generated by Maven
-#Sat Jun 10 13:56:33 CST 2023
+#Tue Jun 13 14:32:59 CST 2023
 version=1.0-SNAPSHOT
 groupId=com.malk
 artifactId=mjava

+ 130 - 0
mjava/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst

@@ -1,4 +1,134 @@
+com/malk/test/RESTFulTestController.class
+com/malk/Util/UtilImport$ExecuteLambda.class
+com/malk/server/aliwork/YDParam$Retrieve_Condition.class
+com/malk/service/fxiaoke/impl/FXKImplClient.class
+com/malk/server/h3yun/CYConf.class
+com/malk/service/dingtalk/DDClient_Storage.class
+com/malk/service/dingtalk/DDClient_Attendance.class
+com/malk/Util/UtilMc.class
+com/malk/Filter/RequestInterceptor.class
+com/malk/service/aliyun/impl/ALYInvoiceImpl.class
+com/malk/Util/UtilMath.class
+com/malk/server/aliwork/YDParam$Retrieve_FormInstId.class
+com/malk/Util/UtilImport$UtilImportBuilder.class
+com/malk/server/aliwork/YDParam$Delete.class
+com/malk/server/common/McException$McExceptionBuilder.class
+com/malk/Util/UtilDateTime.class
+com/malk/config/mutilSource/SlaveConfig.class
+com/malk/server/aliwork/YDR.class
+com/malk/service/dingtalk/impl/DDImplClient.class
+com/malk/repository/entity/primary/McTablePo$McTablePoBuilder.class
+com/malk/server/aliwork/YDConf.class
+com/malk/service/dingtalk/impl/DDImplClient_Storage.class
+com/malk/server/ekuaibao/EKBR.class
+com/malk/Util/UtilFile.class
+com/malk/repository/entity/primary/McTablePo.class
 com/malk/base/QBasePo.class
+com/malk/server/dingtalk/DDR_New.class
+com/malk/service/tencent/impl/TXYImplInvoice.class
+com/malk/server/tencent/TXYConf.class
+com/malk/server/h3yun/CYConf$ACTION_NAME.class
+com/malk/test/McTestController$TModel.class
+com/malk/base/BaseDto.class
+com/malk/config/WebConfiguration.class
+com/malk/Util/UtilServlet.class
+com/malk/Util/UtilHttp.class
+com/malk/service/ekuaibao/impl/EKBClientImpl.class
+com/malk/server/common/McConf.class
+com/malk/Util/UtilString.class
+com/malk/Util/UtilVendor.class
+com/malk/server/aliwork/YDConf$FORM_OPERATION.class
+com/malk/delegate/impl/DDImplEvent_Delegate.class
+com/malk/service/dingtalk/impl/DDImplClient_Contacts.class
+com/malk/server/aliwork/YDParam$Create_Process.class
+com/malk/service/ekuaibao/EKBClient.class
+com/malk/service/dingtalk/DDClient_Workflow.class
+META-INF/spring-configuration-metadata.json
+com/malk/controller/DDCallbackController.class
+com/malk/Boot.class
+com/malk/test/dto/Async2Sync.class
+com/malk/Util/UtilExcel.class
+com/malk/base/BaseRepository.class
+com/malk/config/mutilSource/DataSourceConfig.class
+com/malk/service/dingtalk/DDService.class
+com/malk/server/common/FilePath$Path.class
+com/malk/server/dingtalk/DDConf.class
+com/malk/server/h3yun/CYR.class
+com/malk/Util/UtilExcel$UpdateCellStyle.class
+com/malk/Util/UtilExcel$UtilExcelBuilder.class
+com/malk/server/common/McPage.class
+com/malk/Filter/RequestFilter.class
+com/malk/service/fxiaoke/FXKClient.class
+com/malk/server/dingtalk/crypto/DingCallbackCrypto$Utils.class
+com/malk/service/h3yun/impl/CYImplClient.class
+com/malk/service/aliyun/ALYInvoice.class
+com/malk/service/aliwork/impl/YDClientImpl.class
+com/malk/server/common/McR.class
+com/malk/Util/UtilEnv.class
+com/malk/server/aliyun/ALYR.class
+com/malk/service/dingtalk/DDClient.class
+com/malk/repository/entity/mutual/McAuthorizationPo.class
+com/malk/server/aliwork/YDParam$Retrieve_Condition_Update.class
+com/malk/base/BasePo.class
+com/malk/schedule/McScheduleTask.class
+com/malk/server/common/McREnum.class
 com/malk/repository/entity/primary/QMcTablePo.class
+com/malk/service/aliwork/YDClient.class
+com/malk/core/AsyncConfig.class
+com/malk/service/dingtalk/DDClient_Contacts.class
+com/malk/delegate/DDEvent_Delegate.class
+com/malk/server/dingtalk/DDR.class
+com/malk/Filter/CatchException.class
+com/malk/server/common/VenR.class
+com/malk/Util/UtilConvert$ConvertData.class
+com/malk/server/fxiaoke/FXXR.class
+com/malk/server/aliwork/YDParam$Retrieve_ProcessInstanceIds.class
+com/malk/server/aliwork/YDParam$Update.class
+com/malk/Util/UtilList.class
+com/malk/test/McTestController.class
+com/malk/server/dingtalk/crypto/DingCallbackCrypto.class
+com/malk/Util/UtilMc$1Obj.class
+com/malk/Util/UtilImport.class
+com/malk/config/mutilSource/PrimaryConfig.class
+com/malk/server/fxiaoke/FXKConf.class
+com/malk/server/aliwork/YDParam$Update_ProcessInstanceId.class
+com/malk/base/BaseDao.class
+com/malk/service/dingtalk/impl/DDImplClient_Event.class
 com/malk/repository/entity/mutual/QMcAuthorizationPo.class
+com/malk/server/dingtalk/DDFormComponentDto$DDFormComponentDtoBuilder.class
+com/malk/server/dingtalk/crypto/DingCallbackCrypto$PKCS7Padding.class
+com/malk/server/aliwork/YDParam$Create.class
+com/malk/service/h3yun/CYClient.class
+com/malk/service/aliwork/impl/YDClientImpl$1.class
 com/malk/base/QJpaMap.class
+com/malk/service/dingtalk/DDClient_Event.class
+com/malk/server/aliwork/YDParam$Definition.class
+com/malk/server/aliwork/YDParam.class
+com/malk/service/dingtalk/impl/DDImplClient_Workflow.class
+com/malk/repository/dao/primary/McTableDao.class
+com/malk/server/aliwork/YDParam$Delete_ProcessInstanceId.class
+com/malk/service/dingtalk/impl/DDImplClient_Attendance.class
+com/malk/test/dto/User.class
+com/malk/config/JpaConfiguration.class
+com/malk/Util/UtilHttp$1.class
+com/malk/service/dingtalk/impl/DDImplService.class
+com/malk/server/dingtalk/DDFormComponentDto.class
+com/malk/service/aliwork/impl/YDServiceImpl.class
+com/malk/service/aliwork/YDService.class
+com/malk/server/common/McR$McRBuilder.class
+com/malk/base/JpaMap.class
+com/malk/server/aliwork/YDParam$Retrieve_ProcessInstanceId.class
+com/malk/Util/UtilMap.class
+com/malk/server/aliwork/YDConf$FORM_QUERY.class
+com/malk/Util/UtilToken.class
+com/malk/server/dingtalk/crypto/DingCallbackCrypto$DingTalkEncryptException.class
+com/malk/server/ekuaibao/EKBConf.class
+com/malk/server/common/FilePath$Source.class
+com/malk/service/tencent/TXYInvoice.class
+com/malk/Util/UtilHttp$METHOD.class
+com/malk/Util/UtilNumber.class
+com/malk/server/aliwork/YDParam$YDParamBuilder.class
+com/malk/Util/UtilConvert.class
+com/malk/server/common/FilePath.class
+com/malk/server/common/McException.class
+com/malk/repository/dao/mutual/McAuthorizationDao.class

+ 3 - 0
mjava/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst

@@ -9,7 +9,9 @@
 /Users/malk/server/java-mcli-2/mjava/src/main/java/com/malk/server/common/McPage.java
 /Users/malk/server/java-mcli-2/mjava/src/main/java/com/malk/repository/dao/slave/McTableDao.java
 /Users/malk/server/java-mcli-2/mjava/src/main/java/com/malk/base/BaseDao.java
+/Users/malk/server/java-mcli-2/mjava/src/main/java/com/malk/service/tencent/impl/TXYImplInvoice.java
 /Users/malk/server/java-mcli-2/mjava/src/main/java/com/malk/server/common/FilePath.java
+/Users/malk/server/java-mcli-2/mjava/src/main/java/com/malk/server/tencent/TXYConf.java
 /Users/malk/server/java-mcli-2/mjava/src/main/java/com/malk/server/common/VenR.java
 /Users/malk/server/java-mcli-2/mjava/src/main/java/com/malk/server/aliwork/YDConf.java
 /Users/malk/server/java-mcli-2/mjava/src/main/java/com/malk/config/JpaConfiguration.java
@@ -68,6 +70,7 @@
 /Users/malk/server/java-mcli-2/mjava/src/main/java/com/malk/service/fxiaoke/FXKClient.java
 /Users/malk/server/java-mcli-2/mjava/src/main/java/com/malk/controller/DDCallbackController.java
 /Users/malk/server/java-mcli-2/mjava/src/main/java/com/malk/test/McTestController.java
+/Users/malk/server/java-mcli-2/mjava/src/main/java/com/malk/service/tencent/TXYInvoice.java
 /Users/malk/server/java-mcli-2/mjava/src/main/java/com/malk/service/dingtalk/DDClient_Attendance.java
 /Users/malk/server/java-mcli-2/mjava/src/main/java/com/malk/test/RESTFulTestController.java
 /Users/malk/server/java-mcli-2/mjava/src/main/java/com/malk/test/dto/Async2Sync.java

+ 1 - 1
pom.xml

@@ -19,7 +19,7 @@
         <module>mjava-xiding</module>
         <module>mjava-shanghaishiwei</module>
         <module>mjava-guyuan</module>
-        <module>mjava-minjiaoyuan</module>
+        <module>mjava-shijianguan</module>
     </modules>
     <packaging>pom</packaging>