Pārlūkot izejas kodu

Merge remote-tracking branch 'origin/master'

wzy 1 gadu atpakaļ
vecāks
revīzija
c379e10a78

+ 83 - 0
mjava-kabeiyi/pom.xml

@@ -0,0 +1,83 @@
+<?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">
+    <modelVersion>4.0.0</modelVersion>
+
+    <parent>
+        <groupId>org.springframework.boot</groupId>
+        <artifactId>spring-boot-starter-parent</artifactId>
+        <version>2.2.0.RELEASE</version> <!-- 使用最新的稳定版或其他适用版本 -->
+        <relativePath/> <!-- lookup parent from repository -->
+    </parent>
+
+    <groupId>com.malk.kabeiyi</groupId>
+    <artifactId>mjava-kabeiyi</artifactId>
+    <version>1.0-SNAPSHOT</version>
+
+    <properties>
+        <maven.compiler.source>8</maven.compiler.source>
+        <maven.compiler.target>8</maven.compiler.target>
+        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+    </properties>
+    <dependencies>
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-web</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-test</artifactId>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>junit</groupId>
+            <artifactId>junit</artifactId>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>com.malk</groupId>
+            <artifactId>base</artifactId>
+            <version>1.0-SNAPSHOT</version>
+        </dependency>
+
+        <!--<dependency>-->
+            <!--<groupId>mysql</groupId>-->
+            <!--<artifactId>mysql-connector-java</artifactId>-->
+            <!--<version>8.0.32</version>-->
+            <!--<scope>runtime</scope>-->
+        <!--</dependency>-->
+
+        <!--<dependency>-->
+            <!--<groupId>com.baomidou</groupId>-->
+            <!--<artifactId>mybatis-plus-boot-starter</artifactId>-->
+            <!--<version>3.5.3.2</version>-->
+        <!--</dependency>-->
+
+    </dependencies>
+
+    <build>
+        <finalName>kabeiyi</finalName>
+        <plugins>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-compiler-plugin</artifactId>
+                <version>3.1</version>
+                <configuration>
+                    <source>1.8</source>
+                    <target>1.8</target>
+                    <encoding>UTF-8</encoding>
+                </configuration>
+            </plugin>
+            <plugin>
+                <groupId>org.springframework.boot</groupId>
+                <artifactId>spring-boot-maven-plugin</artifactId>
+                <configuration>
+                    <executable>true</executable>
+                    <includeSystemScope>true</includeSystemScope>
+                </configuration>
+            </plugin>
+        </plugins>
+    </build>
+
+</project>

+ 17 - 0
mjava-kabeiyi/src/main/java/com/malk/kabeiyi/KabeiyiApplication.java

@@ -0,0 +1,17 @@
+package com.malk.kabeiyi;
+
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.scheduling.annotation.EnableScheduling;
+
+@SpringBootApplication(scanBasePackages = {"com.malk"})
+@EnableScheduling
+public class KabeiyiApplication {
+    public static void main(String[] args) {
+        try {
+            SpringApplication.run(KabeiyiApplication.class,args);
+        }catch (Exception e){
+            e.printStackTrace();
+        }
+    }
+}

+ 15 - 0
mjava-kabeiyi/src/main/java/com/malk/kabeiyi/config/StartupRunner.java

@@ -0,0 +1,15 @@
+package com.malk.kabeiyi.config;
+
+import org.springframework.boot.ApplicationArguments;
+import org.springframework.boot.ApplicationRunner;
+import org.springframework.stereotype.Component;
+
+@Component
+public class StartupRunner implements ApplicationRunner {
+
+
+    @Override
+    public void run(ApplicationArguments args) throws Exception {
+
+    }
+}

+ 52 - 0
mjava-kabeiyi/src/main/java/com/malk/kabeiyi/controller/KabeiyiController.java

@@ -0,0 +1,52 @@
+package com.malk.kabeiyi.controller;
+
+import com.malk.server.common.McR;
+import com.malk.service.dingtalk.DDClient;
+import com.malk.service.dingtalk.DDClient_Workflow;
+import com.malk.utils.UtilDateTime;
+import com.malk.utils.UtilMap;
+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.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.time.LocalDateTime;
+import java.util.*;
+
+@Slf4j
+@RestController
+@RequestMapping("/dd/")
+public class KabeiyiController {
+
+    @Autowired
+    private DDClient ddClient;
+    @Autowired
+    private DDClient_Workflow ddClient_workflow;
+
+    @GetMapping("getList")
+    public McR getList(String pid,String procCode,String nextToken){
+        LocalDateTime now=LocalDateTime.now();
+        Map data=new HashMap();
+        data.put("maxResults",10);
+        data.put("nextToken",nextToken);
+        data.put("statuses", Arrays.asList("COMPLETED"));
+//        data.put("userIds","");
+        Map rsp=ddClient_workflow.getInstanceIds(ddClient.getAccessToken(),procCode,
+                UtilDateTime.getLocalDateTimeTimeStamp(now.minusDays(120)),UtilDateTime.getLocalDateTimeTimeStamp(now),data);
+        List<String> list=(List)rsp.get("list");
+        List result=new ArrayList();
+        for(String id:list){
+            Map detail=ddClient_workflow.getProcessInstanceId(ddClient.getAccessToken(),id);
+            if("agree".equals(String.valueOf(detail.get("result")))){
+                Map dd=new HashMap();
+                dd.put("url","https://aflow.dingtalk.com/dingtalk/web/query/pchomepage.htm?from=oflow&op=true&corpid=dingc3a744cb591a7346f2c783f7214b6d69#/plainapproval?procInstId="+id);
+                dd.put("title",detail.get("title"));
+                dd.put("businessId",detail.get("businessId"));
+                result.add(dd);
+            }
+        }
+        return McR.success(UtilMap.map("data, nextToken",result,rsp.get("nextToken")));
+    }
+
+}

+ 160 - 0
mjava-kabeiyi/src/main/java/com/malk/kabeiyi/util/U8Util.java

@@ -0,0 +1,160 @@
+package com.malk.kabeiyi.util;
+
+import cn.hutool.http.HttpUtil;
+import com.alibaba.fastjson.JSONObject;
+import com.malk.server.common.McR;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.RandomStringUtils;
+import org.apache.commons.lang3.StringUtils;
+
+import java.util.HashMap;
+import java.util.Map;
+
+
+
+@Slf4j
+public class U8Util {
+
+
+
+    public static String FROM_ACCOUNT = "kbeapi";
+    public static String TO_ACCOUNT = "kbeapi";
+    public static String APP_KEY = "opa52c74dd3e0563458";
+    public static String APP_SECRET = "5b96fad7470a489bbae369ec79406fb1";
+    public static String APP_TOKEN = "";
+
+    public static String getToken()throws Exception{
+        HashMap<String, Object> paramMap = new HashMap();
+        paramMap.put("from_account", FROM_ACCOUNT);
+        paramMap.put("app_key", APP_KEY);
+        paramMap.put("app_secret", APP_SECRET);
+        String result= HttpUtil.get("https://api.yonyouup.com/system/token", paramMap);
+        System.out.println(result);
+        Map map = (Map) JSONObject.parse(result);
+        Map resultMap = (Map) map.get("token");
+        APP_TOKEN = String.valueOf(resultMap.get("id"));
+        return APP_TOKEN;
+
+    }
+
+    public static String getTradeid()throws Exception{
+        HashMap<String, Object> param = new HashMap();
+        Map resultMap = sendGetNoToAc(param,"https://api.yonyouup.com/system/tradeid","trade");
+        return String.valueOf(resultMap.get("id"));
+    }
+
+    public static Map sendGet(Map paramMap, String url,String key)throws Exception{
+        paramMap.put("to_account", TO_ACCOUNT);
+        return sendGetNoToAc(paramMap,url,key);
+    }
+
+    public static Map sendGetNoToAc(Map paramMap, String url,String key)throws Exception{
+        log.info("发送数据:{}",paramMap);
+        Map data=new HashMap();
+        data.putAll(paramMap);
+        paramMap.put("from_account", FROM_ACCOUNT);
+        paramMap.put("app_key", APP_KEY);
+        paramMap.put("token", APP_TOKEN);
+        String result= HttpUtil.get(url, paramMap);
+        Map map = (Map) JSONObject.parse(result);
+        log.info("接口返回值:{}",map);
+        String errcode=String.valueOf(map.get("errcode"));
+        if("0".equals(errcode)){
+            if("batch".equals(key)){
+                return map;
+            }else{
+                Map resultMap= (Map) JSONObject.parse(String.valueOf(map.get(key)));
+                return resultMap;
+            }
+        }else if(errcode.equals("10004")||errcode.equals("30011")||errcode.equals("30012")){
+            log.info("错误信息:【{}】",map.get("errmsg"));
+            log.info("重新获取token");
+            getToken();
+            log.info("重新调用接口...");
+            return sendGet(data,url,key);
+        }else{
+            log.info("错误信息:【{}】",map.get("errmsg"));
+            return null;
+        }
+    }
+
+    public static McR sendPost(Map paramMap, String url, String key)throws Exception{
+        log.info("发送数据:{}",paramMap);
+        Map data=new HashMap();
+        data.put("from_account", FROM_ACCOUNT);
+        data.put("to_account", TO_ACCOUNT);
+        data.put("app_key", APP_KEY);
+        data.put("token", APP_TOKEN);
+        if(paramMap.containsKey("tradeid")){
+            data.put("tradeid", paramMap.get("tradeid"));
+            data.put("sync","1");// 0=异步新增(默认);1=同步新增;
+            paramMap.remove("tradeid");
+        }
+        Map bodyMap=new HashMap();
+        bodyMap.put(key,paramMap);
+        String body=JSONObject.toJSONString(bodyMap);
+        String result= post(url,data,body);
+        Map map = (Map) JSONObject.parse(result);
+        log.info("接口返回值:{}",map);
+        String errcode=String.valueOf(map.get("errcode"));
+        if("0".equals(errcode)){
+            return McR.success(String.valueOf(map.get("id")));
+        }else if(errcode.equals("10004")||errcode.equals("30011")||errcode.equals("30012")){
+            log.info("错误信息:【{}】",map.get("errmsg"));
+            log.info("重新获取token");
+            getToken();
+            log.info("重新调用接口...");
+            return sendPost(data,url,key);
+        }else{
+            log.info("错误信息:【{}】",map.get("errmsg"));
+            return McR.error(String.valueOf(map.get("errcode")),String.valueOf(map.get("errmsg")));
+
+        }
+
+    }
+
+
+    /***
+     * 获取随机数
+     * @param args1 长度
+     * @param args2 1 字母  2 数字
+     * @return
+     */
+
+    public static String RANDOM(int args1, String args2) {
+        if (StringUtils.isEmpty(args2)) {
+            throw new RuntimeException("RANDOM");
+        } else {
+            args2 = StringUtils.trim(args2);
+            if (StringUtils.equals(args2, "0")) {
+                return RandomStringUtils.randomAlphanumeric(args1);
+            } else {
+                return StringUtils.equals(args2, "1") ? RandomStringUtils.randomAlphabetic(args1) : RandomStringUtils.randomNumeric(args1);
+            }
+        }
+    }
+
+
+
+    public static String post(String url,Map<String,Object> paramMap, String body)throws Exception {
+        String newUrl = url;
+        StringBuffer param = new StringBuffer();
+        for (String key : paramMap.keySet()) {
+            param.append(key + "=" + paramMap.get(key).toString() + "&");
+        }
+        String paramStr = param.toString();
+        paramStr = paramStr.substring(0, paramStr.length() - 1);
+        if (newUrl.indexOf("?") >= 0) {
+            newUrl += "&" + paramStr;
+        } else {
+            newUrl += "?" + paramStr;
+        }
+        return HttpUtil.post(newUrl, body);
+
+    }
+
+
+
+
+
+}

+ 51 - 0
mjava-kabeiyi/src/main/resources/application-dev.yml

@@ -0,0 +1,51 @@
+server:
+  port: 8113
+  servlet:
+    context-path: /kabeiyi
+
+#spring:
+#  datasource:
+#    url: jdbc:mysql://localhost:3306/floe?useSSL=false&characterEncoding=UTF-8&serverTimezone=UTC
+#    username: root
+#    password: 111111
+#    driver-class-name: com.mysql.cj.jdbc.Driver
+enable:
+  scheduling: false
+logging:
+  config: classpath:logback-spring.xml
+  path: /home/server/kabeiyi/log/
+  level:
+    com.malk.*: debug
+
+mybatis-plus:
+  configuration:
+    #开启驼峰命名自动映射
+    map-underscore-to-camel-case: true
+    #开启日志打印
+    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
+  type-aliases-package: com.malk.kabeiyi.entity
+  #扫描mapper文件
+  mapper-locations: classpath:mapper/*.xml
+
+
+
+# dingtalk
+dingtalk:
+  agentId: 3100597392
+  appKey: dingps8yzze1gbztpmhg
+  appSecret: pMSmfhnmqwRSUF35TDTSPg42muARAwy2Qpjfs16N5nFlJlWpSUHQfi3LpNlrzFJu
+  corpId:
+  aesKey:
+  token:
+
+# teambition
+teambition:
+  AppID:
+  AppSecret:
+  TenantId:
+  OperatorId:    # 公共账号, 需要有操作权限 [牧语]
+# aliwork
+aliwork:
+  appType: APP_MOIYIC856NRIBCMXEXVD
+  systemToken: G9666BC1BUHLKS20E7YQRATFDE4F39EOK5QWL06
+

+ 60 - 0
mjava-kabeiyi/src/main/resources/application-prod.yml

@@ -0,0 +1,60 @@
+server:
+  port: 8113
+  servlet:
+    context-path: /kabeiyi
+
+#spring:
+#  datasource:
+#    url: jdbc:mysql://localhost:3306/floe?useSSL=false&characterEncoding=UTF-8&serverTimezone=UTC
+#    username: root
+#    password: 111111
+#    driver-class-name: com.mysql.cj.jdbc.Driver
+enable:
+  scheduling: false
+logging:
+  config: classpath:logback-spring.xml
+  path: /home/server/kabeiyi/log/
+  level:
+    com.malk.*: debug
+
+mybatis-plus:
+  configuration:
+    #开启驼峰命名自动映射
+    map-underscore-to-camel-case: true
+    #开启日志打印
+    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
+  type-aliases-package: com.malk.shantai.entity
+  #扫描mapper文件
+  mapper-locations: classpath:mapper/*.xml
+
+
+
+# dingtalk
+dingtalk:
+  agentId: 3088485347
+  appKey: dingryt7ulefpiziveoj
+  appSecret: qBdVqoK1UP9J3yN0ulaKuBmse4nrZPfNbVxjLGjaODGoRqbtws0__f3A5GpD5bLz
+  corpId: ding2c2e3f1dbf2b3ffebc961a6cb783455b
+  aesKey: uCSTfCFVU18QJjECfZTBWyC9mi10qqY1Spuqjl4ghct
+  token: Adib7WsRXHYrLGkOAUNcgl6gLY9nBIIaeprkhfmxGg6ca6atYWWKDkuE
+
+  #poc
+  #agentId: 2995824312
+  #appKey: ding3ap1jk1tg44tz3s2
+  #appSecret: PaWTDG-FiX-RW5fnV9r8CzEmR-9QlJpubC88txhprL_Z_iREO62B-iRW6w7gkA_K
+  #corpId: ding321c72787fffc78b35c2f4657eb6378f
+  #aesKey: LSIc7r5uHAP0dd6v23J3LWRmjECMNzbkIcxAwdx63RE
+  #token: yqXHMHaK4oHYvjyQshU4zFqgrHFq7PcBxVSqGo1BAQk0
+
+
+# teambition
+teambition:
+  AppID:
+  AppSecret:
+  TenantId:
+  OperatorId:    # 公共账号, 需要有操作权限 [牧语]
+# aliwork
+aliwork:
+  appType:
+  systemToken:
+

+ 15 - 0
mjava-kabeiyi/src/main/resources/application.yml

@@ -0,0 +1,15 @@
+spring:
+  profiles:
+    active: dev
+  servlet:
+    multipart:
+      max-file-size: 100MB
+      max-request-size: 100MB
+  http:
+    enabled: false
+
+#  configuration:
+#    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
+  global-config:
+    db-config:
+      id-type: auto

+ 61 - 0
mjava-kabeiyi/src/main/resources/logback-spring.xml

@@ -0,0 +1,61 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<configuration debug="false" scan="false" scanPeriod="60 seconds">
+    <springProperty scope="context" name="LOG_HOME" source="logging.path" defaultValue="/home/server/log/"/>
+    <property name="FileNamePattern" value="${LOG_HOME}%d{yyyyMM}/%d{dd}"/>
+
+    <!-- 定义控制台输出 -->
+    <appender name="stdout" class="ch.qos.logback.core.ConsoleAppender">
+        <layout class="ch.qos.logback.classic.PatternLayout">
+            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} - [%thread] - %-5level - %logger{50} - %msg%n</pattern>
+        </layout>
+    </appender>
+
+    <appender name="appLogAppender" class="ch.qos.logback.core.rolling.RollingFileAppender">
+        <!-- 指定日志文件的名称 -->
+        <!--<file>${FileNamePattern}/info.log</file>-->
+
+        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+            <fileNamePattern>${FileNamePattern}/info-%i.log</fileNamePattern>
+            <MaxHistory>30</MaxHistory>
+            <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
+                <MaxFileSize>30MB</MaxFileSize>
+            </timeBasedFileNamingAndTriggeringPolicy>
+        </rollingPolicy>
+
+        <layout class="ch.qos.logback.classic.PatternLayout">
+            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [ %thread ] - [ %-5level ] [ %logger{50} : %line ] - %msg%n</pattern>
+        </layout>
+    </appender>
+
+    <appender name="SIFT" class="ch.qos.logback.classic.sift.SiftingAppender">
+        <discriminator>
+            <Key>processid</Key>
+            <DefaultValue>sys</DefaultValue>
+        </discriminator>
+        <sift>
+            <appender name="FILE-${processid}"
+                      class="ch.qos.logback.core.rolling.RollingFileAppender">
+                <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+                    <FileNamePattern>
+                        ${FileNamePattern}/${processid}.log
+                    </FileNamePattern>
+                </rollingPolicy>
+                <layout class="ch.qos.logback.classic.PatternLayout">
+                    <Pattern>
+                        %d{yyyyMMdd:HH:mm:ss.SSS} [%thread] %-5level %msg%n
+                    </Pattern>
+                </layout>
+            </appender>
+        </sift>
+    </appender>
+
+
+    <!-- 日志输出级别 -->
+    <logger name="org.springframework" level="debug"  additivity="false"/>
+    <logger name="com.zitoo.connecter" level="debug"/>
+    <root level="INFO">
+        <appender-ref ref="stdout"/>
+        <appender-ref ref="appLogAppender"/>
+        <appender-ref ref="SIFT"/>
+    </root>
+</configuration>

+ 47 - 0
mjava-kabeiyi/src/test/java/com/malk/kabeiyi/DdTest.java

@@ -0,0 +1,47 @@
+package com.malk.kabeiyi;
+
+import com.malk.service.dingtalk.DDClient;
+import com.malk.service.dingtalk.DDClient_Workflow;
+import com.malk.utils.UtilDateTime;
+import lombok.extern.slf4j.Slf4j;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.boot.test.context.SpringBootTest;
+import org.springframework.test.context.junit4.SpringRunner;
+
+import java.time.LocalDateTime;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+@Slf4j
+@SpringBootTest
+@RunWith(SpringRunner.class)
+public class DdTest {
+
+
+    @Autowired
+    private DDClient ddClient;
+
+    @Autowired
+    private DDClient_Workflow ddClient_workflow;
+
+
+    @Test
+    public void test(){
+        LocalDateTime now=LocalDateTime.now();
+        Map data=new HashMap();
+        data.put("maxResults",10);
+        data.put("nextToken",0);
+        Map rsp=ddClient_workflow.getInstanceIds(ddClient.getAccessToken(),"PROC-AD06D122-828A-40A5-8EDC-94BB246B59D2",
+                UtilDateTime.getLocalDateTimeTimeStamp(now.minusDays(120)),UtilDateTime.getLocalDateTimeTimeStamp(now),data);
+        List<String> list=(List)rsp.get("list");
+        List result=new ArrayList();
+        for(String id:list){
+            result.add(ddClient_workflow.getProcessInstanceId(ddClient.getAccessToken(),id));
+        }
+        log.info("result:{}",result);
+    }
+}

+ 17 - 0
mjava-kuaikeli/src/main/java/com/malk/kuaikeli/controller/SupplierMaterialController.java

@@ -7,14 +7,19 @@ import com.malk.kuaikeli.entity.SupplierMaterial;
 import com.malk.kuaikeli.listener.SupplierMaterialDataListener;
 import com.malk.kuaikeli.mapper.SupplierMaterialMapper;
 import com.malk.kuaikeli.service.SupplierMaterialService;
+import com.malk.server.aliwork.YDConf;
+import com.malk.server.aliwork.YDParam;
+import com.malk.server.aliwork.YDSearch;
 import com.malk.server.common.McR;
 import com.malk.server.common.Page;
+import com.malk.service.aliwork.YDClient;
 import com.malk.utils.PublicUtil;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.multipart.MultipartFile;
 
 import java.io.IOException;
+import java.util.Arrays;
 import java.util.List;
 import java.util.Map;
 
@@ -27,6 +32,9 @@ public class SupplierMaterialController {
 
     @Autowired
     private SupplierMaterialService supplierMaterialService;
+    @Autowired
+    private YDClient ydClient;
+
 
     @PostMapping("/upload")
     public McR upload(@RequestParam(value="file")MultipartFile file) throws IOException {
@@ -62,5 +70,14 @@ public class SupplierMaterialController {
         return supplierMaterialService.getList(current,size);
     }
 
+    @GetMapping("/getYcl")
+    public McR getYcl(@RequestParam() String yclId){
+        YDSearch ydSearch=new YDSearch("textField_llkb7kd2",yclId,"原材料编号", YDSearch.Type.TEXT_FIELD,YDSearch.Operator.EQ);
+        List<Map> list2=(List<Map>) ydClient.queryData(YDParam.builder().formUuid("FORM-E6766M811CKD2PIXEAKOM9S2DKBM2PBQU1MLL5").searchCondition(JSONObject.toJSONString(
+                Arrays.asList(ydSearch)
+        )).build(), YDConf.FORM_QUERY.retrieve_list).getData();
+        return McR.success(list2);
+    }
+
 
 }

+ 11 - 0
mjava-kuaikeli/src/test/java/com/malk/kuaikeli/DdTest.java

@@ -7,6 +7,7 @@ import com.malk.kuaikeli.service.KKLService;
 import com.malk.kuaikeli.service.SupplierMaterialService;
 import com.malk.server.aliwork.YDConf;
 import com.malk.server.aliwork.YDParam;
+import com.malk.server.aliwork.YDSearch;
 import com.malk.service.aliwork.YDClient;
 import com.malk.utils.UtilMap;
 import lombok.extern.slf4j.Slf4j;
@@ -112,4 +113,14 @@ public class DdTest {
             }
         }
     }
+
+
+    @Test
+    public void getYdData(){
+        YDSearch ydSearch=new YDSearch("textField_llkb7kd2","XKL184","原材料编号", YDSearch.Type.TEXT_FIELD,YDSearch.Operator.EQ);
+        List<Map> list2=(List<Map>) ydClient.queryData(YDParam.builder().formUuid("FORM-E6766M811CKD2PIXEAKOM9S2DKBM2PBQU1MLL5").searchCondition(JSONObject.toJSONString(
+                Arrays.asList(ydSearch)
+        )).build(), YDConf.FORM_QUERY.retrieve_list).getData();
+        log.info("list2:{}",list2);
+    }
 }

+ 4 - 1
mjava-pake/src/main/java/com/malk/pake/controller/DingAlibtripController.java

@@ -7,6 +7,7 @@ import com.malk.service.dingtalk.DDClient_Alibtrip;
 import com.malk.service.dingtalk.DDClient_Workflow;
 import com.malk.utils.PublicUtil;
 import com.malk.utils.UtilMap;
+import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
@@ -19,6 +20,7 @@ import java.util.List;
 import java.util.Map;
 
 @RestController
+@Slf4j
 @RequestMapping("/alibtrip")
 public class DingAlibtripController {
 
@@ -33,6 +35,7 @@ public class DingAlibtripController {
     //商机跟进表单通过后同步创建商机档案表的页签明细
     @PostMapping("/project/add")
     public McR addProject(@RequestBody JSONObject param){
+        log.info("商旅&OA新增项目接口,参数:{}",param);
         if(PublicUtil.isNull(param,"projectId","projectName")) return McR.errorNullPointer();
         String result="";
         try {
@@ -40,7 +43,7 @@ public class DingAlibtripController {
         }catch (Exception e){
             e.printStackTrace();
         }
-        create(param.getString("projectName"),param.getString("projectId"),param.getString("userId"));
+        create(param.getString("projectName"),param.getString("projectId"),String.valueOf(param.getJSONArray("userId")));
         return McR.success(result);
     }
 

+ 9 - 0
mjava-pake/src/test/java/com/malk/pake/DingTest.java

@@ -89,6 +89,15 @@ public class DingTest {
         }while (i<t);
     }
 
+    @Test
+    public void  ttt(){
+        String aa="{\"projectName\":\"安徽电信华视网聚内容运营支撑\",\"projectId\":\"XY-DY-2024024\",\"userId\":[\"01254038076338840748\"]}";
+
+        JSONObject param=JSONObject.parseObject(aa);
+        // {"projectName":"安徽电信华视网聚内容运营支撑","projectId":"XY-DY-2024024","userId":["01254038076338840748"]}
+        create(param.getString("projectName"),param.getString("projectId"),param.getString("userId"));
+    }
+
     private void create(String name,String id,String userId){
         ddClient_workflow.doProcessInstances(ddClient.getAccessToken(),"17104651870654620","PROC-27EE84F7-EA7E-460C-B9F4-21D54DFD11AA", Arrays.asList(
                 dataName(name),dataId(id),dataPeople(userId)