From 3e8e2bfdfbcf06659d7734d3e1cb63fd0f46c35d Mon Sep 17 00:00:00 2001
From: czt <czt18638530771@163.com>
Date: 星期五, 03 一月 2025 15:30:22 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 src/main/java/com/fzzy/web/TestController.java                        |  192 ++
 src/main/java/com/fzzy/api/entity/Api1505.java                        |    2 
 src/main/java/com/fzzy/api/entity/Api9201.java                        |  198 ++
 src/main/java/com/fzzy/async/fzzy40/entity/Fz40Api1509.java           |  195 ++
 src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1507.java          |   83 +
 src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1202.java          |   14 
 src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1510.java          |   83 +
 src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1310.java          |    9 
 pom.xml                                                               |   20 
 src/main/java/com/fzzy/async/fzzy40/entity/Fz40Api1506.java           |  127 +
 src/main/java/com/fzzy/push/gd2022/ApiCodeConstant.java               |    1 
 src/main/java/com/fzzy/otherview/gd2022/pr/GDApi1023PR.java           |    6 
 src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1508.java          |   83 +
 src/main/java/com/fzzy/async/fzzy40/repository/Fzzy40Sync1504Rep.java |   28 
 src/main/resources/templates/home/home.html                           |    3 
 src/main/java/com/fzzy/async/fzzy40/entity/Fz40Api1504.java           |  106 +
 src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1207.java          |    2 
 src/main/java/com/fzzy/async/fzzy40/repository/Fzzy40Sync9201Rep.java |   22 
 src/main/java/com/fzzy/async/fzzy40/entity/Fz40Api1507.java           |  155 ++
 src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1504.java          |   83 +
 src/main/java/com/fzzy/otherview/gd2022/GdApi9201.view.xml            | 1330 ++++++++++++++++++
 src/main/java/com/fzzy/async/fzzy40/repository/Fzzy40Sync1508Rep.java |   28 
 src/main/java/com/fzzy/async/fzzy40/entity/Fz40DrugLogPeople.java     |    4 
 src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1023.java          |    8 
 src/main/java/com/fzzy/async/fzzy40/repository/Fzzy40Sync1507Rep.java |   28 
 src/main/java/com/fzzy/async/fzzy40/repository/Fzzy40Sync1505Rep.java |   28 
 src/main/java/com/fzzy/push/gd2022/GD2022ApiRemoteService2022.java    |    5 
 src/main/java/com/fzzy/api/utils/FileUtils.java                       |  254 ++-
 src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1505.java          |   83 +
 src/main/java/com/fzzy/async/fzzy40/repository/Fzzy40Sync1506Rep.java |   28 
 src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync9201.java          |  195 ++
 src/main/java/com/fzzy/async/fzzy40/Fzzy40SyncService13.java          |    5 
 src/main/java/com/fzzy/api/view/repository/Api9201Rep.java            |   37 
 src/main/java/com/fzzy/async/fzzy40/entity/Fz40Api1508.java           |  103 +
 src/main/java/com/fzzy/async/fzzy40/repository/Fzzy40Sync1510Rep.java |   28 
 src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1509.java          |   83 +
 src/main/java/com/fzzy/otherview/gd2022/pr/GDApi9201PR.java           |  256 +++
 src/main/java/com/fzzy/api/entity/Api1506.java                        |    2 
 src/main/java/com/fzzy/api/timer/PushDataScheduled.java               |    2 
 src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1506.java          |   83 +
 src/main/java/com/fzzy/async/fzzy40/entity/Fz40Api1505.java           |  127 +
 src/main/java/com/fzzy/async/fzzy40/entity/Fz40Api1510.java           |  136 +
 src/main/java/com/fzzy/async/fzzy40/entity/Fz40InoutStockChange.java  |    8 
 src/main/resources/application.yml                                    |    2 
 src/main/java/com/fzzy/async/fzzy40/repository/Fzzy40Sync1509Rep.java |   28 
 45 files changed, 4,183 insertions(+), 120 deletions(-)

diff --git a/pom.xml b/pom.xml
index 421a685..2fa3603 100644
--- a/pom.xml
+++ b/pom.xml
@@ -157,6 +157,26 @@
             <version>${fastjson.version}</version>
         </dependency>
 
+        <dependency>
+            <groupId>ws.schild</groupId>
+            <artifactId>jave-core</artifactId>
+            <version>3.5.0</version>
+        </dependency>
+
+        <!-- 瑙嗛鍘嬬缉鍦╳indows涓婂紑鍙� 寮�鍙戞満鍙疄鐜板帇缂╂晥鏋� window64浣� -->
+        <dependency>
+            <groupId>ws.schild</groupId>
+            <artifactId>jave-nativebin-win64</artifactId>
+            <version>3.5.0</version>
+        </dependency>
+
+        <!-- 瑙嗛鍘嬬缉鍦╨inux涓婇儴缃� linux鏈嶅姟鍣ㄩ渶瑕佽繖涓墠鑳界敓鏁� linux64浣� -->
+        <dependency>
+            <groupId>ws.schild</groupId>
+            <artifactId>jave-nativebin-linux64</artifactId>
+            <version>3.5.0</version>
+        </dependency>
+
 
         <!-- lombok -->
         <dependency>
diff --git a/src/main/java/com/fzzy/api/entity/Api1505.java b/src/main/java/com/fzzy/api/entity/Api1505.java
index f8fcaa4..7852191 100644
--- a/src/main/java/com/fzzy/api/entity/Api1505.java
+++ b/src/main/java/com/fzzy/api/entity/Api1505.java
@@ -29,7 +29,7 @@
      * 閫氳繃鎺ュ彛鑾峰彇鐨勫崟浣嶈处濂楀悗锛屽湪灞�绔嚜鍔ㄤ骇鐢熻处濂楀彿
      */
     @Id
-    @Column(name = "ID_", precision = 18)
+    @Column(name = "ID_", precision = 110)
     @JSONField(serialize = false)
     private String id;
 
diff --git a/src/main/java/com/fzzy/api/entity/Api1506.java b/src/main/java/com/fzzy/api/entity/Api1506.java
index 26f2ee3..ea256a7 100644
--- a/src/main/java/com/fzzy/api/entity/Api1506.java
+++ b/src/main/java/com/fzzy/api/entity/Api1506.java
@@ -29,7 +29,7 @@
      * 閫氳繃鎺ュ彛鑾峰彇鐨勫崟浣嶈处濂楀悗锛屽湪灞�绔嚜鍔ㄤ骇鐢熻处濂楀彿
      */
     @Id
-    @Column(name = "ID_", precision = 18)
+    @Column(name = "ID_", precision = 110)
     @JSONField(serialize = false)
     private String id;
 
diff --git a/src/main/java/com/fzzy/api/entity/Api9201.java b/src/main/java/com/fzzy/api/entity/Api9201.java
new file mode 100644
index 0000000..e708e6d
--- /dev/null
+++ b/src/main/java/com/fzzy/api/entity/Api9201.java
@@ -0,0 +1,198 @@
+package com.fzzy.api.entity;
+
+import com.alibaba.fastjson.annotation.JSONField;
+import com.bstek.dorado.annotation.PropertyDef;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.fzzy.push.gd2022.dto.Gd2022Api1023Dtl;
+import com.fzzy.push.gd2022.dto.Gd2022Api1023People;
+import com.fzzy.push.gd2022.dto.Gd2022Api1023Way;
+import lombok.Data;
+
+import javax.persistence.*;
+import java.io.Serializable;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * 鐔忚捀澶囨涓昏〃淇℃伅
+ *
+ * @Author:YAN
+ */
+@Entity
+@Data
+@Table(name = "API_9201")
+public class Api9201 extends ApiParent implements Serializable {
+
+    @Id
+    @Column(name = "id", length = 12)
+    @PropertyDef(label = "id", description = "鍏ュ簱鏃ユ湡+4浣嶉『搴忓彿")
+    private String id;
+
+    @Column(name = "xzbm", length = 4)
+    @PropertyDef(label = "鐔忚捀澶囨缂栧彿", description = "4浣嶉『搴忓彿")
+    private String xzbm;
+
+    @Column(name = "kqdm", length = 21)
+    @PropertyDef(label = "搴撳尯浠g爜")
+    private String kqdm;
+
+    @Column(name = "kqmc", length = 21)
+    @PropertyDef(label = "搴撳尯鍚嶇О")
+    private String kqmc;
+
+    @Column(name = "tbrq")
+    @PropertyDef(label = "濉姤鏃ユ湡")
+    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd", timezone = "GMT+8")
+    private Date tbrq;
+
+    @Column(name = "dwdm", length = 18)
+    @PropertyDef(label = "鍗曚綅浠g爜", description = "浼佷笟淇$敤浠g爜")
+    private String dwdm;
+
+    @Column(name = "dwmc", length = 18)
+    @PropertyDef(label = "鍗曚綅鍚嶇О")
+    private String dwmc;
+
+    @Column(name = "sqxzrq")
+    @PropertyDef(label = "鐢宠鐔忚捀鏃ユ湡")
+    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd", timezone = "GMT+8")
+    private Date sqxzrq;
+
+    @Column(name = "fzr", length = 20)
+    @PropertyDef(label = "璐熻矗浜�")
+    private String fzr;
+
+    @Column(name = "fzrdh", length = 11)
+    @PropertyDef(label = "璐熻矗浜虹數璇�")
+    private String fzrdh;
+
+    @Column(name = "xcfzr", length = 20)
+    @PropertyDef(label = "鐜板満璐熻矗浜�")
+    private String xcfzr;
+
+    @Column(name = "fzrzw", length = 10)
+    @PropertyDef(label = "鐜板満璐熻矗浜鸿亴鍔�")
+    private String xcfzrzw;
+
+    @Column(name = "xcfzrdh", length = 11)
+    @PropertyDef(label = "鐜板満璐熻矗浜虹數璇�")
+    private String xcfzrdh;
+
+    @Column(name = "tbr", length = 20)
+    @PropertyDef(label = "濉〃浜�")
+    private String tbr;
+
+    @Column(name = "tbrdh", length = 11)
+    @PropertyDef(label = "濉〃浜虹數璇�")
+    private String tbrdh;
+
+    @Column(name = "sfszjjxd", length = 2)
+    @PropertyDef(label = "鏄惁璁剧疆璀︽垝绾�(涓�)", description = "鏄垨鍚�")
+    private String sfszjjxd;
+
+    @Column(name = "sfszjjxx", length = 2)
+    @PropertyDef(label = "鏄惁璁剧疆璀︽垝绾�(瑗�)", description = "鏄垨鍚�")
+    private String sfszjjxx;
+
+    @Column(name = "sfszjjxn", length = 2)
+    @PropertyDef(label = "鏄惁璁剧疆璀︽垝绾�(鍗�)", description = "鏄垨鍚�")
+    private String sfszjjxn;
+
+    @Column(name = "sfszjjxb", length = 2)
+    @PropertyDef(label = "鏄惁璁剧疆璀︽垝绾�(鍖�)", description = "鏄垨鍚�")
+    private String sfszjjxb;
+
+    @Column(name = "ssxzzystqybqk", length = 1024)
+    @PropertyDef(label = "瀹炴柦鐔忚捀浣滀笟鏃跺ぉ姘旈鎶ユ儏鍐�")
+    private String ssxzzystqybqk;
+
+    @Column(name = "xzssgcap", length = 1024)
+    @PropertyDef(label = "鐔忚捀瀹夋帓鍙婂疄鏂借繃绋�")
+    private String xzssgcap;
+
+    @Column(name = "aqfhjyjcccs", length = 1024)
+    @PropertyDef(label = "瀹夊叏闃叉姢鍙婂簲鎬ュ缃帾鏂�")
+    private String aqfhjyjcccs;
+
+    @Column(name = "xzzysx", length = 1024)
+    @PropertyDef(label = "鐔忚捀娉ㄦ剰浜嬮」")
+    private String xzzysx;
+
+    @Column(name = "fileStorageId", length = 19)
+    @PropertyDef(label = "鏂囦欢瀛樺偍ID")
+    private String fileStorageId;
+
+    @Column(name = "yjmc", length = 64)
+    @PropertyDef(label = "鑽墏鍚嶇О")
+    private String yjmc;
+
+    @Column(name = "yjlx", length = 10)
+    @PropertyDef(label = "鑽墏绫诲瀷/鍨嬪彿")
+    private String yjlx;
+
+    @Column(name = "yjyxqz")
+    @PropertyDef(label = "鑽墏鏈夋晥鏈熻嚦")
+    private Date yjyxqz;
+
+    @Column(name = "lqsl", precision = 20, scale = 3)
+    @PropertyDef(label = "棰嗗彇鏁伴噺", description = "鍏枻")
+    private Double lqsl;
+
+    @Column(name = "sysbjfs", length = 20)
+    @PropertyDef(label = "鏂借嵂璁惧鍙婃柟寮�")
+    private String sysbjfs;
+
+    @Column(name = "zcdd", length = 30)
+    @PropertyDef(label = "鏆傚瓨鍦扮偣")
+    private String zcdd;
+
+    @Column(name = "lqr", length = 20)
+    @PropertyDef(label = "棰嗗彇浜�")
+    private String lqr;
+
+    @Column(name = "lqrq")
+    @PropertyDef(label = "棰嗗彇鏃堕棿")
+    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+    private Date lqrq;
+
+    @Column(name = "czbz", length = 1)
+    @PropertyDef(label = "鎿嶄綔鏍囧織")
+    private String czbz;
+
+    @Column(name = "zhgxsj")
+    @PropertyDef(label = "鏇存柊鏃堕棿")
+    private Date zhgxsj;
+
+    @Column(name = "dtl", length = 2000)
+    @PropertyDef(label = "绮儏鏄庣粏琛�")
+    private String dtl;
+
+    @Column(name = "way", length = 2000)
+    @PropertyDef(label = "鐔忚捀澶囨鏂瑰紡")
+    private String way;
+
+    @Column(name = "people", length = 2000)
+    @PropertyDef(label = "绮儏鏄庣粏琛�")
+    private String people;
+
+
+    /**
+     * 鍌ㄧ伯绮儏鏄庣粏琛�
+     */
+    @Transient
+    private List<Gd2022Api1023Dtl> dtls;
+
+    /**
+     * 鐔忚捀澶囨鏂瑰紡
+     */
+    @Transient
+    private List<Gd2022Api1023Way> ways;
+
+    /**
+     * 鐔忚捀浣滀笟浜哄憳
+     */
+    @Transient
+    private List<Gd2022Api1023People> peoples;
+
+
+}
diff --git a/src/main/java/com/fzzy/api/timer/PushDataScheduled.java b/src/main/java/com/fzzy/api/timer/PushDataScheduled.java
index e907a1d..d6f5042 100644
--- a/src/main/java/com/fzzy/api/timer/PushDataScheduled.java
+++ b/src/main/java/com/fzzy/api/timer/PushDataScheduled.java
@@ -123,7 +123,7 @@
         if (String.valueOf(minute).equals(conf.getPushMinute99())) {
             isExecute = true;
             if (!isUpdateStart) {
-                start = DateUtils.addHours(start, -1);
+                start = DateUtils.addHours(start, -2);
             }
         } else {
             isExecute = false;
diff --git a/src/main/java/com/fzzy/api/utils/FileUtils.java b/src/main/java/com/fzzy/api/utils/FileUtils.java
index b3b8ac2..eedfb43 100644
--- a/src/main/java/com/fzzy/api/utils/FileUtils.java
+++ b/src/main/java/com/fzzy/api/utils/FileUtils.java
@@ -1,9 +1,16 @@
 package com.fzzy.api.utils;
 
 import com.fzzy.data.ConfigData;
+import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang.time.DateFormatUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import ws.schild.jave.Encoder;
+import ws.schild.jave.EncoderException;
+import ws.schild.jave.MultimediaObject;
+import ws.schild.jave.encode.AudioAttributes;
+import ws.schild.jave.encode.EncodingAttributes;
+import ws.schild.jave.encode.VideoAttributes;
 
 import java.io.ByteArrayOutputStream;
 import java.io.File;
@@ -14,114 +21,177 @@
 
 /**
  * 灏嗘枃浠惰浆涓轰簩杩涘埗娴佸伐鍏风被
- * @author czt
  *
+ * @author czt
  */
+@Slf4j
 @Service(FileUtils.BEAN_ID)
 public class FileUtils {
-	public static final String BEAN_ID = "base.fileUtil";
+    public static final String BEAN_ID = "base.fileUtil";
 
-	@Autowired
-	private ConfigData configData;
+    @Autowired
+    private ConfigData configData;
 
 
-	/**
-	 * 鏍规嵁鏂囦欢璺緞灏嗘枃浠惰浆涓轰簩杩涘埗鏂囦欢娴佸瓧绗︿覆
-	 * @param filePath:鏂囦欢璺緞
-	 * @return
-	 */
-	public static String fileToByteString(String filePath) {
-		byte[] bytes = file2byte(filePath);
-		return toHexString(bytes);
-	}
+    /**
+     * 鏍规嵁鏂囦欢璺緞灏嗘枃浠惰浆涓轰簩杩涘埗鏂囦欢娴佸瓧绗︿覆
+     *
+     * @param filePath:鏂囦欢璺緞
+     * @return
+     */
+    public static String fileToByteString(String filePath) {
+        byte[] bytes = file2byte(filePath);
+        return toHexString(bytes);
+    }
 
-	/**
-	 * 鏍规嵁鏂囦欢璺緞灏嗘枃浠惰浆涓轰簩杩涘埗鏁扮粍
-	 * @param filePath:鏂囦欢璺緞
-	 * @return
-	 */
-	public static byte[] file2byte(String filePath) {
-		byte[] buffer = null;
-		try {
-			File file = new File(filePath);
-			FileInputStream fis = new FileInputStream(file);
-			ByteArrayOutputStream bos = new ByteArrayOutputStream();
-			byte[] b = new byte[1024];
-			int n;
-			while ((n = fis.read(b)) != -1) {
-				bos.write(b, 0, n);
-			}
-			fis.close();
-			bos.close();
-			buffer = bos.toByteArray();
-		} catch (FileNotFoundException e) {
-			e.printStackTrace();
-		} catch (IOException e) {
-			e.printStackTrace();
-		}
-		return buffer;
-	}
-	
-	/**
-	 * 灏嗕簩杩涘埗鏁扮粍杞负瀛楃涓�
-	 * @param byteArray
-	 * @return
-	 */
-	private static String toHexString(byte[] byteArray) {
-		if (byteArray == null || byteArray.length < 1)
-			throw new IllegalArgumentException(
-					"this byteArray must not be null or empty");
+    /**
+     * 鏍规嵁鏂囦欢璺緞灏嗘枃浠惰浆涓轰簩杩涘埗鏁扮粍
+     *
+     * @param filePath:鏂囦欢璺緞
+     * @return
+     */
+    public static byte[] file2byte(String filePath) {
+        byte[] buffer = null;
+        try {
+            File file = new File(filePath);
+            FileInputStream fis = new FileInputStream(file);
+            ByteArrayOutputStream bos = new ByteArrayOutputStream();
+            byte[] b = new byte[1024];
+            int n;
+            while ((n = fis.read(b)) != -1) {
+                bos.write(b, 0, n);
+            }
+            fis.close();
+            bos.close();
+            buffer = bos.toByteArray();
+        } catch (FileNotFoundException e) {
+            e.printStackTrace();
+        } catch (IOException e) {
+            e.printStackTrace();
+        }
+        return buffer;
+    }
 
-		final StringBuilder hexString = new StringBuilder();
-		for (int i = 0; i < byteArray.length; i++) {
-			if ((byteArray[i] & 0xff) < 0x10)// 0~F鍓嶉潰涓嶉浂
-				hexString.append("0");
-			hexString.append(Integer.toHexString(0xFF & byteArray[i]));
-		}
-		return hexString.toString().toLowerCase();
-	}
+    /**
+     * 灏嗕簩杩涘埗鏁扮粍杞负瀛楃涓�
+     *
+     * @param byteArray
+     * @return
+     */
+    private static String toHexString(byte[] byteArray) {
+        if (byteArray == null || byteArray.length < 1)
+            throw new IllegalArgumentException(
+                    "this byteArray must not be null or empty");
 
-	public String getInoutFilePath(Date date) {
-		if (null == date) {
-			date = new Date();
-		}
+        final StringBuilder hexString = new StringBuilder();
+        for (int i = 0; i < byteArray.length; i++) {
+            if ((byteArray[i] & 0xff) < 0x10)// 0~F鍓嶉潰涓嶉浂
+                hexString.append("0");
+            hexString.append(Integer.toHexString(0xFF & byteArray[i]));
+        }
+        return hexString.toString().toLowerCase();
+    }
 
-		String basePath = configData.getImgPath() + "INOUT/"
-				+ DateFormatUtils.format(date, "yyyyMM") + "/";
+    public String getInoutFilePath(Date date) {
+        if (null == date) {
+            date = new Date();
+        }
 
-		File file = new File(basePath);
-		if (!file.exists()) {
-			file.mkdirs();
-		}
+        String basePath = configData.getImgPath() + "INOUT/"
+                + DateFormatUtils.format(date, "yyyyMM") + "/";
 
-		return basePath;
-	}
+        File file = new File(basePath);
+        if (!file.exists()) {
+            file.mkdirs();
+        }
 
-	public String getSnapFilePath(Date date) {
-		if (null == date) {
-			date = new Date();
-		}
+        return basePath;
+    }
 
-		String basePath = configData.getImgPath() + "SNAP/"
-				+ DateFormatUtils.format(date, "yyyyMM") + "/";
-		File file = new File(basePath);
-		if (!file.exists()) {
-			file.mkdirs();
-		}
-		return basePath;
-	}
+    public String getSnapFilePath(Date date) {
+        if (null == date) {
+            date = new Date();
+        }
 
-	public String getCommonFilePath(Date date) {
-		if (null == date)
-			date = new Date();
+        String basePath = configData.getImgPath() + "SNAP/"
+                + DateFormatUtils.format(date, "yyyyMM") + "/";
+        File file = new File(basePath);
+        if (!file.exists()) {
+            file.mkdirs();
+        }
+        return basePath;
+    }
 
-		String basePath = configData.getImgPath() + "COMMON/"
-				+ DateFormatUtils.format(date, "yyyyMM") + "/";
+    public String getCommonFilePath(Date date) {
+        if (null == date)
+            date = new Date();
 
-		File file = new File(basePath);
-		if (!file.exists()) {
-			file.mkdirs();
-		}
-		return basePath;
-	}
+        String basePath = configData.getImgPath() + "COMMON/"
+                + DateFormatUtils.format(date, "yyyyMM") + "/";
+
+        File file = new File(basePath);
+        if (!file.exists()) {
+            file.mkdirs();
+        }
+        return basePath;
+    }
+
+    /**
+     * 瑙嗛鍘嬬缉
+     *
+     * @param source 婧愭枃浠�
+     * @param target 鐩爣鏂囦欢
+     * @param rate   鍘嬬缉姣�
+     */
+    public static void compre(File source, File target, Integer rate) throws EncoderException {
+        try {
+            log.info("---------------寮�濮嬪帇缂�---------------");
+            long start = System.currentTimeMillis();
+
+            // 闊抽缂栫爜灞炴�ч厤缃�
+            AudioAttributes audio = new AudioAttributes();
+            audio.setCodec("libmp3lame");
+            // 璁剧疆闊抽姣旂壒鐜�,鍗曚綅:b (姣旂壒鐜囪秺楂橈紝娓呮櫚搴�/闊宠川瓒婂ソ锛屽綋鐒舵枃浠朵篃灏辫秺澶� 56000 = 56kb)
+            // audio.setBitRate(new Integer(56_000));
+            audio.setBitRate(new Integer(10));
+            // 璁剧疆閲嶆柊缂栫爜鐨勯煶棰戞祦涓娇鐢ㄧ殑澹伴亾鏁帮紙1 =鍗曞0閬擄紝2 = 鍙屽0閬擄紙绔嬩綋澹帮級锛�
+            audio.setChannels(1);
+            // 閲囨牱鐜囪秺楂樺0闊崇殑杩樺師搴﹁秺濂斤紝鏂囦欢瓒婂ぇ
+            // audio.setSamplingRate(new Integer(44100));
+            audio.setSamplingRate(new Integer(22050));
+            // 瑙嗛缂栫爜灞炴�ч厤缃�
+            VideoAttributes video = new VideoAttributes();
+            // 璁剧疆缂栫爜
+            video.setCodec("h254");
+            //璁剧疆闊抽姣旂壒鐜�,鍗曚綅:b (姣旂壒鐜囪秺楂橈紝娓呮櫚搴�/闊宠川瓒婂ソ锛屽綋鐒舵枃浠朵篃灏辫秺澶� 5600000 = 5600kb)
+            // video.setBitRate(new Integer(5_600_000 / rate));
+            video.setBitRate(10 / rate);
+
+            // 璁剧疆瑙嗛甯х巼锛堝抚鐜囪秺浣庯紝瑙嗛浼氬嚭鐜版柇灞傦紝瓒婇珮璁╀汉鎰熻瓒婅繛缁級,杩欓噷 闄�1000鏄负浜嗗崟浣嶈浆鎹�
+            video.setFrameRate(15);
+
+
+            // 缂栫爜璁剧疆
+            EncodingAttributes attr = new EncodingAttributes();
+            attr.setOutputFormat("mp4");
+            attr.setAudioAttributes(audio);
+            attr.setVideoAttributes(video);
+
+            // 璁剧疆鍊肩紪鐮�
+            Encoder ec = new Encoder();
+            ec.encode(new MultimediaObject(source), target, attr);
+
+
+            log.info("---------------缁撴潫鍘嬬缉---------------");
+            long end = System.currentTimeMillis();
+            log.info("鍘嬬缉鍓嶅ぇ灏忥細" + source.length() + " 鍘嬬缉鍚庡ぇ灏忥細" + target.length());
+            log.info("鍘嬬缉鑰楁椂锛�" + (end - start));
+
+        } catch (EncoderException e) {
+            e.printStackTrace();
+        } catch (IllegalArgumentException e) {
+            e.printStackTrace();
+        }
+
+    }
 }
diff --git a/src/main/java/com/fzzy/api/view/repository/Api9201Rep.java b/src/main/java/com/fzzy/api/view/repository/Api9201Rep.java
new file mode 100644
index 0000000..62034f5
--- /dev/null
+++ b/src/main/java/com/fzzy/api/view/repository/Api9201Rep.java
@@ -0,0 +1,37 @@
+package com.fzzy.api.view.repository;
+
+import com.fzzy.api.entity.Api1307;
+import com.fzzy.api.entity.Api9201;
+import org.springframework.data.jpa.repository.JpaRepository;
+import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
+import org.springframework.data.jpa.repository.Modifying;
+import org.springframework.data.jpa.repository.Query;
+import org.springframework.data.repository.query.Param;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.Date;
+import java.util.List;
+
+
+public interface Api9201Rep extends JpaRepository<Api9201, String>, JpaSpecificationExecutor<Api9201> {
+
+
+    /**
+     * 鏍规嵁琛ㄥ崟涓婚敭鏇存柊鎿嶄綔鏍囧織鐘舵��
+     *
+     * @param dwdm 涓婚敭ID
+     * @param czbz 鎿嶄綔鏍囧織
+     * @return
+     */
+    @Transactional
+    @Modifying
+    @Query("update Api9201 set czbz =:czbz where dwdm =:dwdm ")
+    int updateStatus(@Param("dwdm") String dwdm, @Param("czbz") String czbz);
+
+
+    @Query("from Api9201 where kqdm=:kqdm and zhgxsj >=:start and zhgxsj <:end order by zhgxsj ")
+    List<Api9201> findPushDataByTime(@Param("kqdm") String kqdm, @Param("start") Date start, @Param("end") Date end);
+
+    @Query("from Api9201 where bizId=:bizId ")
+    List<Api9201> getDataByBizId(@Param("bizId") String bizId);
+}
diff --git a/src/main/java/com/fzzy/async/fzzy40/Fzzy40SyncService13.java b/src/main/java/com/fzzy/async/fzzy40/Fzzy40SyncService13.java
index fc2d2bb..ebfe114 100644
--- a/src/main/java/com/fzzy/async/fzzy40/Fzzy40SyncService13.java
+++ b/src/main/java/com/fzzy/async/fzzy40/Fzzy40SyncService13.java
@@ -36,6 +36,8 @@
     @Autowired
     private Fzzy40Sync1311 fzzySync1311;
     @Autowired
+    private Fzzy40Sync9201 fzzySync9201;
+    @Autowired
     private Fzzy40Sync2103 fzzy40Sync2103;
 
     @Override
@@ -48,10 +50,11 @@
 
 
         /*-----鍚勭渷鐙湁鎺ュ彛淇℃伅鍚屾-----*/
-        if (StringUtils.isNotEmpty(param.getPushProtocol()) && PushProtocol.SB_GD_2022.getCode().equals(param.getPushProtocol())) {
+        if (StringUtils.isNotEmpty(param.getPushProtocol()) && (PushProtocol.SB_GD_2022.getCode().equals(param.getPushProtocol())||PushProtocol.SB_GD_2023.getCode().equals(param.getPushProtocol()))) {
             //骞夸笢鐪佸钩鍙�2022鐗堬紝闇�瑕佸悓姝ョ啅钂稿妗堜俊鎭�
             //鐔忚捀澶囨鏁版嵁鍚屾
             fzzySync1023.syncData(param.getKqdm(), param.getDeptId(), param.getStart(), param.getEnd());
+            fzzySync9201.syncData(param.getKqdm(), param.getDeptId(), param.getStart(), param.getEnd());
         }
         if (StringUtils.isNotEmpty(param.getPushProtocol()) && PushProtocol.SB_SH_2023.getCode().equals(param.getPushProtocol())) {
             //涓婃捣甯傚钩鍙�2023鐗堬紝闇�瑕佸悓姝ョ伯鎯呰澶囬厤缃俊鎭�
diff --git a/src/main/java/com/fzzy/async/fzzy40/entity/Fz40Api1504.java b/src/main/java/com/fzzy/async/fzzy40/entity/Fz40Api1504.java
new file mode 100644
index 0000000..9b83e35
--- /dev/null
+++ b/src/main/java/com/fzzy/async/fzzy40/entity/Fz40Api1504.java
@@ -0,0 +1,106 @@
+package com.fzzy.async.fzzy40.entity;
+
+/**
+ * @Author: YYC
+ * @Description:
+ * @DateTime: 2024-12-19 14:23
+ **/
+
+import com.alibaba.fastjson.annotation.JSONField;
+import com.bstek.dorado.annotation.PropertyDef;
+import lombok.Data;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.Id;
+import javax.persistence.Table;
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * 璐﹀淇℃伅
+ *
+ * @author czt
+ */
+@Data
+@Entity
+@Table(name = "API_1504")
+public class Fz40Api1504 implements Serializable {
+    /**
+     *
+     */
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 閫氳繃鎺ュ彛鑾峰彇鐨勫崟浣嶈处濂楀悗锛屽湪灞�绔嚜鍔ㄤ骇鐢熻处濂楀彿
+     */
+    @Id
+    @PropertyDef(label = "璐﹀鍙�")
+    @Column(name = "nacctid", precision = 23)
+    private String nacctid;
+
+    @Column(name = "COMPANY_ID_", length = 10)
+    @PropertyDef(label = "缁勭粐缂栫爜")
+    private String companyId;
+
+    @Column(name = "DEPT_ID_", length = 30)
+    @PropertyDef(label = "鎵�灞炲垎搴�")
+    private String deptId;
+
+    @PropertyDef(label = "璐﹀鍚嶇О")
+    @Column(name = "cncctname", length = 256)
+    private String cncctname;
+
+    @PropertyDef(label = "鏈綅甯�")
+    @Column(name = "ccurrency", length = 3)
+    private String ccurrency;
+
+    @PropertyDef(label = "浼氳涓荤")
+    @Column(name = "cacctchief", length = 20)
+    private String cacctchief;
+
+    @JSONField(format = "yyyyMM")
+    @PropertyDef(label = "鍚敤鏈熼棿", description = "yyyyMM")
+    @Column(name = "cperiodstart", length = 10)
+    private Date cperiodstart;
+
+    @JSONField(format = "yyyy-MM-dd")
+    @PropertyDef(label = "鍚敤鏃ユ湡")
+    @Column(name = "cyearbmd", length = 10)
+    private Date cyearbmd;
+
+    @PropertyDef(label = "鏈熼棿鏁�", description = "榛樿12")
+    @Column(name = "nacctperiodnum")
+    private Integer nacctperiodnum;
+
+    @PropertyDef(label = "浼氳鍒跺害浠g爜", description = "11:浼佷笟浼氳鍑嗗垯鍒跺害(绮2013鐗�)(榛樿浠g爜鍊�)")
+    @Column(name = "caccclasscode", length = 2)
+    private String caccclasscode;
+
+    @PropertyDef(label = "绉戠洰绾ф", description = "4-8:榛樿鏈�灏忓�间负4")
+    @Column(name = "naccgrade")
+    private Integer naccgrade;
+
+    @PropertyDef(label = "绉戠洰缂栫爜瑙勫垯", description = "4222XXXX:榛樿鍓嶅洓绾х骇闀胯鍒欎负4222")
+    @Column(name = "cacccodestr", length = 40)
+    private String cacccodestr;
+
+    @PropertyDef(label = "鍗曚綅鍚嶇О")
+    @Column(name = "ccropname", length = 256)
+    private String ccropname;
+
+    @PropertyDef(label = "鍗曚綅浠g爜")
+    @Column(name = "corgcode", length = 18)
+    private String corgcode;
+
+    @PropertyDef(label = "姣忔湀缁撹处鏃�")
+    @Column(name = "nendday")
+    private Integer nendday;
+
+    @JSONField(format = "yyyy-MM-dd HH:mm:ss")
+    @PropertyDef(label = "鏈�鍚庢洿鏂版椂闂�")
+    @Column(name = "zhgxsj")
+    private Date zhgxsj;
+
+}
+
diff --git a/src/main/java/com/fzzy/async/fzzy40/entity/Fz40Api1505.java b/src/main/java/com/fzzy/async/fzzy40/entity/Fz40Api1505.java
new file mode 100644
index 0000000..7664e6e
--- /dev/null
+++ b/src/main/java/com/fzzy/async/fzzy40/entity/Fz40Api1505.java
@@ -0,0 +1,127 @@
+package com.fzzy.async.fzzy40.entity;
+
+/**
+ * @Author: YYC
+ * @Description:
+ * @DateTime: 2024-12-19 14:23
+ **/
+
+import com.alibaba.fastjson.annotation.JSONField;
+import com.bstek.dorado.annotation.PropertyDef;
+import lombok.Data;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.Id;
+import javax.persistence.Table;
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * 绉戠洰淇℃伅
+ *
+ * @author czt
+ */
+@Data
+@Entity
+@Table(name = "API_1505")
+public class Fz40Api1505 implements Serializable {
+    /**
+     *
+     */
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 閫氳繃鎺ュ彛鑾峰彇鐨勫崟浣嶈处濂楀悗锛屽湪灞�绔嚜鍔ㄤ骇鐢熻处濂楀彿
+     */
+    @Id
+    @Column(name = "ID_", precision = 110)
+    @JSONField(serialize = false)
+    private String id;
+
+    @Column(name = "COMPANY_ID_", length = 10)
+    @PropertyDef(label = "缁勭粐缂栫爜")
+    private String companyId;
+
+    @Column(name = "DEPT_ID_", length = 30)
+    @PropertyDef(label = "鎵�灞炲垎搴�")
+    private String deptId;
+
+    @PropertyDef(label = "璐﹀鍙�")
+    @Column(name = "nacctid", length = 23)
+    private String nacctid;
+
+
+    @PropertyDef(label = "骞村害")
+    @Column(name = "cyear")
+    private Integer cyear;
+
+    @PropertyDef(label = "绉戠洰缂栫爜")
+    @Column(name = "ccode", length = 80)
+    private String ccode;
+
+    @PropertyDef(label = "绉戠洰鍚嶇О")
+    @Column(name = "cname", length = 256)
+    private String cname;
+
+    @PropertyDef(label = "绉戠洰鍏ㄧО")
+    @Column(name = "callname", length = 65536)
+    private String callname;
+
+    /**
+     * 1:璧勪骇绫�
+     * 2:璐熷�虹被
+     * 3:鍏卞悓绫�
+     * 4:鎵�鏈夎�呮潈鐩婄被
+     * 5:鎴愭湰璐圭敤绫�
+     * 6:鎹熺泭绫�
+     */
+    @PropertyDef(label = "绉戠洰绫诲埆")
+    @Column(name = "nclass", length = 9)
+    private String nclass;
+    /**
+     * (-1)-璐锋柟锛�1-鍊熸柟
+     */
+    @PropertyDef(label = "浣欓鏂瑰悜")
+    @Column(name = "cdc")
+    private Integer cdc;
+
+    @PropertyDef(label = "鏈骇绉戠洰")
+    @Column(name = "bl")
+    private Integer bl;
+
+    @PropertyDef(label = "绉戠洰绾ф")
+    @Column(name = "ngrade")
+    private Integer ngrade;
+
+    @PropertyDef(label = "鏁伴噺绉戠洰")
+    @Column(name = "bq")
+    private Integer bq;
+
+    @PropertyDef(label = "鏁伴噺鍗曚綅")
+    @Column(name = "cqunit")
+    private Integer cqunit;
+
+    @PropertyDef(label = "鐜伴噾绫荤鐩�")
+    @Column(name = "bcash")
+    private Integer bcash;
+
+    @PropertyDef(label = "閾惰绫荤鐩�")
+    @Column(name = "bbank")
+    private Integer bbank;
+
+    @PropertyDef(label = "鐜伴噾娴侀噺绫荤鐩�")
+    @Column(name = "bxjll")
+    private Integer bxjll;
+
+    @PropertyDef(label = "鍐荤粨")
+    @Column(name = "bf")
+    private Integer bf;
+
+    @JSONField(format = "yyyy-MM-dd HH:mm:ss")
+    @PropertyDef(label = "鏈�鍚庢洿鏂版椂闂�")
+    @Column(name = "zhgxsj")
+    private Date zhgxsj;
+
+}
+
diff --git a/src/main/java/com/fzzy/async/fzzy40/entity/Fz40Api1506.java b/src/main/java/com/fzzy/async/fzzy40/entity/Fz40Api1506.java
new file mode 100644
index 0000000..7d47af2
--- /dev/null
+++ b/src/main/java/com/fzzy/async/fzzy40/entity/Fz40Api1506.java
@@ -0,0 +1,127 @@
+package com.fzzy.async.fzzy40.entity;
+
+/**
+ * @Author: YYC
+ * @Description:
+ * @DateTime: 2024-12-19 14:23
+ **/
+
+import com.alibaba.fastjson.annotation.JSONField;
+import com.bstek.dorado.annotation.PropertyDef;
+import lombok.Data;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.Id;
+import javax.persistence.Table;
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * 绉戠洰浣欓琛�
+ *
+ * @author czt
+ */
+@Data
+@Entity
+@Table(name = "API_1506")
+public class Fz40Api1506 implements Serializable {
+    /**
+     *
+     */
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 閫氳繃鎺ュ彛鑾峰彇鐨勫崟浣嶈处濂楀悗锛屽湪灞�绔嚜鍔ㄤ骇鐢熻处濂楀彿
+     */
+    @Id
+    @Column(name = "ID_", precision = 110)
+    @JSONField(serialize = false)
+    private String id;
+
+    @Column(name = "COMPANY_ID_", length = 10)
+    @PropertyDef(label = "缁勭粐缂栫爜")
+    private String companyId;
+
+    @Column(name = "DEPT_ID_", length = 30)
+    @PropertyDef(label = "鎵�灞炲垎搴�")
+    private String deptId;
+
+    @PropertyDef(label = "璐﹀鍙�")
+    @Column(name = "nacctid", length = 23)
+    private String nacctid;
+
+    @PropertyDef(label = "鏈熼棿")
+    @Column(name = "cyear")
+    private Integer cyear;
+
+    @PropertyDef(label = "骞村害")
+    @Column(name = "nno")
+    private Integer nno;
+
+    @PropertyDef(label = "绉戠洰缂栫爜")
+    @Column(name = "ccode", length = 80)
+    private String ccode;
+
+    @PropertyDef(label = "鏈熷垵鏈綅甯佷綑棰�")
+    @Column(name = "bm", precision = 20, scale = 4)
+    private Double bm;
+
+    @PropertyDef(label = "鏈熸湯鏈綅甯佷綑棰�")
+    @Column(name = "em", precision = 20, scale = 4)
+    private Double em;
+
+    @PropertyDef(label = "鏈熷垵鏁伴噺")
+    @Column(name = "bqty", precision = 20, scale = 4)
+    private Double bqty;
+
+    @PropertyDef(label = "鏈熸湯鏁伴噺")
+    @Column(name = "eqty", precision = 20, scale = 4)
+    private Double eqty;
+    /**
+     * 1:鍊熸柟
+     * -1:璐锋柟
+     */
+    @PropertyDef(label = "浣欓鏂瑰悜")
+    @Column(name = "cdc")
+    private Integer cdc;
+
+    @PropertyDef(label = "鍊熸柟鏈綅甯佸彂鐢熼")
+    @Column(name = "dm", precision = 20, scale = 4)
+    private Double dm;
+
+    @PropertyDef(label = "璐锋柟鏈綅甯佸彂鐢熼")
+    @Column(name = "cm", precision = 20, scale = 4)
+    private Double cm;
+
+    @PropertyDef(label = "鍊熸柟鍙戠敓鏁伴噺")
+    @Column(name = "dq", precision = 20, scale = 4)
+    private Double dq;
+
+    @PropertyDef(label = "璐锋柟鍙戠敓鏁伴噺")
+    @Column(name = "cq", precision = 20, scale = 4)
+    private Double cq;
+
+    @PropertyDef(label = "鏈熷垵澶栧竵浣欓")
+    @Column(name = "bfm", precision = 20, scale = 4)
+    private Double bfm;
+
+    @PropertyDef(label = "鏈熸湯澶栧竵浣欓")
+    @Column(name = "efm", precision = 20, scale = 4)
+    private Double efm;
+
+    @PropertyDef(label = "鍊熸柟澶栧竵鍙戠敓棰�")
+    @Column(name = "dfm", precision = 20, scale = 4)
+    private Double dfm;
+
+    @PropertyDef(label = "璐锋柟澶栧竵鍙戠敓棰�")
+    @Column(name = "cfm", precision = 20, scale = 4)
+    private Double cfm;
+
+    @JSONField(format = "yyyy-MM-dd HH:mm:ss")
+    @PropertyDef(label = "鏈�鍚庢洿鏂版椂闂�")
+    @Column(name = "zhgxsj")
+    private Date zhgxsj;
+
+}
+
diff --git a/src/main/java/com/fzzy/async/fzzy40/entity/Fz40Api1507.java b/src/main/java/com/fzzy/async/fzzy40/entity/Fz40Api1507.java
new file mode 100644
index 0000000..265ee64
--- /dev/null
+++ b/src/main/java/com/fzzy/async/fzzy40/entity/Fz40Api1507.java
@@ -0,0 +1,155 @@
+package com.fzzy.async.fzzy40.entity;
+
+/**
+ * @Author: YYC
+ * @Description:
+ * @DateTime: 2024-12-19 14:23
+ **/
+
+import com.alibaba.fastjson.annotation.JSONField;
+import com.bstek.dorado.annotation.PropertyDef;
+import lombok.Data;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.Id;
+import javax.persistence.Table;
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * 浼氳鍑瘉淇℃伅
+ *
+ * @author czt
+ */
+@Data
+@Entity
+@Table(name = "API_1507")
+public class Fz40Api1507 implements Serializable {
+    /**
+     *
+     */
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 閫氳繃鎺ュ彛鑾峰彇鐨勫崟浣嶈处濂楀悗锛屽湪灞�绔嚜鍔ㄤ骇鐢熻处濂楀彿
+     */
+    @Id
+    @Column(name = "ID_", length = 40)
+    @JSONField(serialize = false)
+    private String id;
+
+    @Column(name = "COMPANY_ID_", length = 10)
+    @PropertyDef(label = "缁勭粐缂栫爜")
+    private String companyId;
+
+    @Column(name = "DEPT_ID_", length = 30)
+    @PropertyDef(label = "鎵�灞炲垎搴�")
+    private String deptId;
+
+    @PropertyDef(label = "璐﹀鍙�")
+    @Column(name = "nacctid", length = 23)
+    private String nacctid;
+
+    @PropertyDef(label = "鍑瘉绫诲瀷")
+    @Column(name = "cvkind", length = 9)
+    private String cvkind;
+
+    @PropertyDef(label = "鏈熼棿")
+    @Column(name = "cmon")
+    private Integer cmon;
+
+    @PropertyDef(label = "骞村害")
+    @Column(name = "cyear")
+    private Integer cyear;
+
+    @PropertyDef(label = "鍑瘉鍙�")
+    @Column(name = "nvno")
+    private Integer nvno;
+
+    @PropertyDef(label = "鍒嗗綍搴忓彿")
+    @Column(name = "nno")
+    private Integer nno;
+
+    @PropertyDef(label = "鍑瘉鍒嗙被")
+    @Column(name = "btmp")
+    private Integer btmp;
+
+    @PropertyDef(label = "鎽樿")
+    @Column(name = "digest", length = 512)
+    private String digest;
+
+    @PropertyDef(label = "绉戠洰缂栫爜")
+    @Column(name = "ccode", length = 80)
+    private String ccode;
+
+    @JSONField(format = "yyyy-MM-dd")
+    @PropertyDef(label = "鍑瘉鏃ユ湡")
+    @Column(name = "ccsmalldatetime", length = 10)
+    private Date ccsmalldatetime;
+
+    @PropertyDef(label = "鍒跺崟浜�")
+    @Column(name = "cmaker", length = 32)
+    private String cmaker;
+    /**
+     * 1:鍊熸柟
+     * -1:璐锋柟
+     */
+    @PropertyDef(label = "鏂瑰悜")
+    @Column(name = "cdc")
+    private Integer cdc;
+
+    @PropertyDef(label = "瀹℃牳浜�")
+    @Column(name = "ccker", length = 32)
+    private String ccker;
+
+    @PropertyDef(label = "璁拌处浜�")
+    @Column(name = "cpter", length = 32)
+    private String cpter;
+    /**
+     * 0:鍚�
+     * 1:鏄�
+     */
+    @PropertyDef(label = "璁拌处鏍囧織")
+    @Column(name = "bpt")
+    private Integer bpt;
+
+    @PropertyDef(label = "闄勪欢寮犳暟")
+    @Column(name = "nanum")
+    private Integer nanum;
+
+    @PropertyDef(label = "閲戦")
+    @Column(name = "nm", precision = 20, scale = 4)
+    private Double nm;
+
+    @PropertyDef(label = "鏁伴噺")
+    @Column(name = "nqty", precision = 20, scale = 4)
+    private Double nqty;
+
+    @PropertyDef(label = "鍗曚环")
+    @Column(name = "nprice", precision = 20, scale = 4)
+    private Double nprice;
+
+    @PropertyDef(label = "鍑虹撼")
+    @Column(name = "ccashier", length = 32)
+    private String ccashier;
+
+    @PropertyDef(label = "姹囩巼")
+    @Column(name = "rate", precision = 20, scale = 4)
+    private Double rate;
+
+    @PropertyDef(label = "澶栧竵閲戦")
+    @Column(name = "nfm", precision = 20, scale = 4)
+    private Double nfm;
+
+    @PropertyDef(label = "璁¢噺鍗曚綅", description = "璁¢噺鍗曚綅姹夊瓧")
+    @Column(name = "meterunitid", length = 32)
+    private String meterunitid;
+
+    @JSONField(format = "yyyy-MM-dd HH:mm:ss")
+    @PropertyDef(label = "鏈�鍚庢洿鏂版椂闂�")
+    @Column(name = "zhgxsj")
+    private Date zhgxsj;
+
+}
+
diff --git a/src/main/java/com/fzzy/async/fzzy40/entity/Fz40Api1508.java b/src/main/java/com/fzzy/async/fzzy40/entity/Fz40Api1508.java
new file mode 100644
index 0000000..a5e7a0c
--- /dev/null
+++ b/src/main/java/com/fzzy/async/fzzy40/entity/Fz40Api1508.java
@@ -0,0 +1,103 @@
+package com.fzzy.async.fzzy40.entity;
+
+/**
+ * @Author: YYC
+ * @Description:
+ * @DateTime: 2024-12-19 14:23
+ **/
+
+import com.alibaba.fastjson.annotation.JSONField;
+import com.bstek.dorado.annotation.PropertyDef;
+import lombok.Data;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.Id;
+import javax.persistence.Table;
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * 鐜伴噾娴侀噺鍒嗛厤淇℃伅
+ *
+ * @author czt
+ */
+@Data
+@Entity
+@Table(name = "API_1508")
+public class Fz40Api1508 implements Serializable {
+    /**
+     *
+     */
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 閫氳繃鎺ュ彛鑾峰彇鐨勫崟浣嶈处濂楀悗锛屽湪灞�绔嚜鍔ㄤ骇鐢熻处濂楀彿
+     */
+    @Id
+    @Column(name = "ID_", length = 40)
+    private String id;
+
+    @Column(name = "COMPANY_ID_", length = 10)
+    @PropertyDef(label = "缁勭粐缂栫爜")
+    private String companyId;
+
+    @Column(name = "DEPT_ID_", length = 30)
+    @PropertyDef(label = "鎵�灞炲垎搴�")
+    private String deptId;
+
+    @PropertyDef(label = "璐﹀鍙�")
+    @Column(name = "nacctid", length = 23)
+    private String nacctid;
+
+    @PropertyDef(label = "鍑瘉绫诲瀷")
+    @Column(name = "cvkind", length = 10)
+    private String cvkind;
+
+    @PropertyDef(label = "鏈熼棿")
+    @Column(name = "cmon")
+    private Integer cmon;
+
+    @PropertyDef(label = "骞村害")
+    @Column(name = "cyear")
+    private Integer cyear;
+
+    @PropertyDef(label = "鍑瘉鍙�")
+    @Column(name = "nvno")
+    private Integer nvno;
+
+    @PropertyDef(label = "绉戠洰缂栫爜")
+    @Column(name = "ccode", length = 80)
+    private String ccode;
+
+    @PropertyDef(label = "瀵规柟绉戠洰缂栫爜")
+    @Column(name = "cdfcode", length = 80)
+    private String cdfcode;
+
+    @PropertyDef(label = "鐜伴噾娴侀噺椤圭洰浠g爜")
+    @Column(name = "ccashcode", length = 80)
+    private String ccashcode;
+
+    @PropertyDef(label = "鍒嗗綍搴忓彿")
+    @Column(name = "nrowno")
+    private Integer nrowno;
+
+    @PropertyDef(label = "閲戦")
+    @Column(name = "nm", precision = 20, scale = 4)
+    private Double nm;
+
+    /**
+     * 1:娴佸叆
+     * -1:娴佸嚭
+     */
+    @PropertyDef(label = "鏂瑰悜")
+    @Column(name = "cdc")
+    private Integer cdc;
+
+    @JSONField(format = "yyyy-MM-dd HH:mm:ss")
+    @PropertyDef(label = "鏈�鍚庢洿鏂版椂闂�")
+    @Column(name = "zhgxsj")
+    private Date zhgxsj;
+
+}
+
diff --git a/src/main/java/com/fzzy/async/fzzy40/entity/Fz40Api1509.java b/src/main/java/com/fzzy/async/fzzy40/entity/Fz40Api1509.java
new file mode 100644
index 0000000..ff2fe13
--- /dev/null
+++ b/src/main/java/com/fzzy/async/fzzy40/entity/Fz40Api1509.java
@@ -0,0 +1,195 @@
+package com.fzzy.async.fzzy40.entity;
+
+/**
+ * @Author: YYC
+ * @Description:
+ * @DateTime: 2024-12-19 14:23
+ **/
+
+import com.alibaba.fastjson.annotation.JSONField;
+import com.bstek.dorado.annotation.PropertyDef;
+import lombok.Data;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.Id;
+import javax.persistence.Table;
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * 鍥哄畾璧勪骇鍗$墖淇℃伅
+ *
+ * @author czt
+ */
+@Data
+@Entity
+@Table(name = "API_1509")
+public class Fz40Api1509 implements Serializable {
+    /**
+     *
+     */
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 閫氳繃鎺ュ彛鑾峰彇鐨勫崟浣嶈处濂楀悗锛屽湪灞�绔嚜鍔ㄤ骇鐢熻处濂楀彿
+     */
+    @Id
+    @Column(name = "ID_", precision = 18)
+    @JSONField(serialize = false)
+    private String id;
+
+    @Column(name = "COMPANY_ID_", length = 10)
+    @PropertyDef(label = "缁勭粐缂栫爜")
+    private String companyId;
+
+    @Column(name = "DEPT_ID_", length = 30)
+    @PropertyDef(label = "鎵�灞炲垎搴�")
+    private String deptId;
+
+    @PropertyDef(label = "璐﹀鍙�")
+    @Column(name = "nacctid", length = 23)
+    private String nacctid;
+
+    @PropertyDef(label = "鍥哄畾璧勪骇缂栫爜")
+    @Column(name = "fixassetcode", length = 20)
+    private String fixassetcode;
+
+    @PropertyDef(label = "鍥哄畾璧勪骇鑷紪鐮�")
+    @Column(name = "origfixassetcode", length = 20)
+    private String origfixassetcode;
+
+    @PropertyDef(label = "璧勪骇绫诲埆缂栫爜")
+    @Column(name = "groupcode", length = 20)
+    private String groupcode;
+
+    @PropertyDef(label = "鍥哄畾璧勪骇鍚嶇О")
+    @Column(name = "fixassetname", length = 80)
+    private String fixassetname;
+
+    @PropertyDef(label = "璁¢噺鍗曚綅鍚嶇О")
+    @Column(name = "unitname", length = 20)
+    private String unitname;
+
+    @PropertyDef(label = "鍘熷��")
+    @Column(name = "valueorg", length = 20, scale = 4)
+    private Double valueorg;
+
+    @PropertyDef(label = "褰撳墠鍘熷��")
+    @Column(name = "dresentvalueorg", length = 20, scale = 4)
+    private Double dresentvalueorg;
+    /**
+     * 1:涓嶆彁鎶樻棫娉�
+     * 2:骞冲潎骞撮檺娉�
+     * 3:鍔ㄦ�佸钩鍧囧勾闄愭硶
+     * 4:宸ヤ綔閲忔硶
+     * 5:骞存暟鎬诲拰娉�
+     * 6:鍙屽�嶄綑棰濋�掑噺娉�
+     */
+    @PropertyDef(label = "鎶樻棫鏂规硶")
+    @Column(name = "deprmethodid")
+    private Integer deprmethodid;
+
+    /**
+     * 1:鎶曡祫
+     * 2:鑷缓
+     * 3:璐拱
+     * 4:铻嶈祫绉熻祦
+     * 5:缁忚惀绉熷叆
+     * 6:鏃犲伩璋冨叆
+     * 7:鎹愯禒
+     * 8:鎹㈠叆
+     */
+    @PropertyDef(label = "鍥哄畾璧勪骇鏉ユ簮")
+    @Column(name = "sourceid")
+    private Integer sourceid;
+
+    @PropertyDef(label = "鍨嬪彿")
+    @Column(name = "model", length = 40)
+    private String model;
+
+    @PropertyDef(label = "瑙勬牸")
+    @Column(name = "specs", length = 40)
+    private String specs;
+
+    @PropertyDef(label = "鍒堕�犲晢")
+    @Column(name = "manufacturer", length = 60)
+    private String manufacturer;
+
+    @PropertyDef(label = "浜у湴")
+    @Column(name = "makingplace", length = 40)
+    private String makingplace;
+
+    @JSONField(format = "yyyy-MM-dd")
+    @PropertyDef(label = "杩涘崟浣嶆棩鏈�")
+    @Column(name = "enterday", length = 10)
+    private Date enterday;
+
+    @JSONField(format = "yyyy-MM-dd")
+    @PropertyDef(label = "寮�濮嬩娇鐢ㄦ棩鏈�")
+    @Column(name = "beginuseday", length = 10)
+    private Date beginuseday;
+
+    @JSONField(format = "yyyy-MM-dd")
+    @PropertyDef(label = "寤哄崱鏃ユ湡")
+    @Column(name = "makinday", length = 10)
+    private Date makinday;
+
+    @PropertyDef(label = "绠$悊浜�")
+    @Column(name = "keeper", length = 20)
+    private String keeper;
+
+    @PropertyDef(label = "寤哄崱浜�")
+    @Column(name = "maker", length = 20)
+    private String maker;
+
+    @PropertyDef(label = "棰勮浣跨敤鏈熼棿鏁�")
+    @Column(name = "usingperiods")
+    private Integer usingperiods;
+
+    @PropertyDef(label = "棰勮鍑�娈嬪��")
+    @Column(name = "expecremain", precision = 20, scale = 4)
+    private Double expecremain;
+
+    @PropertyDef(label = "鍥哄畾璧勪骇瀵瑰簲绉戠洰缂栫爜")
+    @Column(name = "assetacctcode", length = 20)
+    private String assetacctcode;
+
+    @PropertyDef(label = "绱鎶樻棫瀵瑰簲绉戠洰缂栫爜")
+    @Column(name = "depracctcode", length = 20)
+    private String depracctcode;
+
+    @PropertyDef(label = "绱鎶樻棫")
+    @Column(name = "accumulatedepr", precision = 20, scale = 4)
+    private Double accumulatedepr;
+    /**
+     * 0:鍚�
+     * 1:鏄�
+     */
+    @PropertyDef(label = "鏄惁鎶ュ簾娓呯悊")
+    @Column(name = "abadoned", length = 1)
+    private String abadoned;
+
+    /**
+     * 1:鍦ㄤ娇鐢�
+     * 2:鏈娇鐢�
+     * 3:鍋滅敤
+     * 4:鍑哄敭
+     * 5:鎶ユ崯
+     * 6:鐩樹簭
+     */
+    @PropertyDef(label = "褰撳墠浣跨敤鐘舵�佸悕绉�")
+    @Column(name = "presentstatus", length = 20)
+    private String presentstatus;
+
+    @PropertyDef(label = "澶囨敞")
+    @Column(name = "notes", length = 512)
+    private String notes;
+
+    @JSONField(format = "yyyy-MM-dd HH:mm:ss")
+    @PropertyDef(label = "鏈�鍚庢洿鏂版椂闂�")
+    @Column(name = "zhgxsj")
+    private Date zhgxsj;
+
+}
+
diff --git a/src/main/java/com/fzzy/async/fzzy40/entity/Fz40Api1510.java b/src/main/java/com/fzzy/async/fzzy40/entity/Fz40Api1510.java
new file mode 100644
index 0000000..c31dfcb
--- /dev/null
+++ b/src/main/java/com/fzzy/async/fzzy40/entity/Fz40Api1510.java
@@ -0,0 +1,136 @@
+package com.fzzy.async.fzzy40.entity;
+
+/**
+ * @Author: YYC
+ * @Description:
+ * @DateTime: 2024-12-19 14:23
+ **/
+
+import com.alibaba.fastjson.annotation.JSONField;
+import com.bstek.dorado.annotation.PropertyDef;
+import lombok.Data;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.Id;
+import javax.persistence.Table;
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * 璧勪骇鎶樻棫淇℃伅
+ *
+ * @author czt
+ */
+@Data
+@Entity
+@Table(name = "API_1510")
+public class Fz40Api1510 implements Serializable {
+    /**
+     *
+     */
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 閫氳繃鎺ュ彛鑾峰彇鐨勫崟浣嶈处濂楀悗锛屽湪灞�绔嚜鍔ㄤ骇鐢熻处濂楀彿
+     */
+    @Id
+    @Column(name = "ID_", precision = 18)
+    @JSONField(serialize = false)
+    private String id;
+
+    @Column(name = "COMPANY_ID_", length = 10)
+    @PropertyDef(label = "缁勭粐缂栫爜")
+    private String companyId;
+
+    @Column(name = "DEPT_ID_", length = 30)
+    @PropertyDef(label = "鎵�灞炲垎搴�")
+    private String deptId;
+
+    @PropertyDef(label = "璐﹀鍙�")
+    @Column(name = "nacctid", length = 23)
+    private String nacctid;
+
+    @PropertyDef(label = "鍥哄畾璧勪骇缂栫爜")
+    @Column(name = "fixassetcode", length = 20)
+    private String fixassetcode;
+
+    @PropertyDef(label = "鏈熼棿")
+    @Column(name = "period")
+    private Integer period;
+
+    @PropertyDef(label = "骞村害")
+    @Column(name = "acctyear")
+    private Integer acctyear;
+
+    @PropertyDef(label = "鏈熷垵鍘熷��")
+    @Column(name = "bvalueorg", precision = 20, scale = 4)
+    private Double bvalueorg;
+
+    @PropertyDef(label = "绱鎶樻棫")
+    @Column(name = "baccumdepr", precision = 20, scale = 4)
+    private Double baccumdepr;
+
+    @PropertyDef(label = "鏈湡璁℃彁鎶樻棫")
+    @Column(name = "deprammount", precision = 20, scale = 4)
+    private Double deprammount;
+
+    @PropertyDef(label = "鏈勾绱璁℃彁鎶樻棫")
+    @Column(name = "yaccumdepr", precision = 20, scale = 4)
+    private Double yaccumdepr;
+
+    @PropertyDef(label = "鏈湡鏁伴噺澧炲姞")
+    @Column(name = "qtyadd", precision = 20, scale = 4)
+    private Double qtyadd;
+
+    @PropertyDef(label = "鏈湡鏁伴噺鍑忓皯")
+    @Column(name = "qtydecrease", precision = 20, scale = 4)
+    private Double qtydecrease;
+
+    @PropertyDef(label = "鏈湡鍘熷�煎鍔�")
+    @Column(name = "valueorgadd", precision = 20, scale = 4)
+    private Double valueorgadd;
+
+    @PropertyDef(label = "鏈湡鍘熷�煎噺灏�")
+    @Column(name = "valueorgderease", precision = 20, scale = 4)
+    private Double valueorgderease;
+
+    @PropertyDef(label = "鏈湡绱鎶樻棫璋冨")
+    @Column(name = "accudepradjustadd", precision = 20, scale = 4)
+    private Double accudepradjustadd;
+
+    @PropertyDef(label = "鏈湡绱鎶樻棫璋冨噺")
+    @Column(name = "accudepradjustdec", precision = 20, scale = 4)
+    private Double accudepradjustdec;
+
+    @PropertyDef(label = "鏈勾绱鏁伴噺澧炲姞")
+    @Column(name = "yqtyincrease", precision = 20, scale = 4)
+    private Double yqtyIncrease;
+
+    @PropertyDef(label = "鏈勾绱鏁伴噺鍑忓皯")
+    @Column(name = "yqtydecrease", precision = 20, scale = 4)
+    private Double yqtydecrease;
+
+    @PropertyDef(label = "鏈勾鍘熷�肩疮璁″鍔�")
+    @Column(name = "yvalueincrease", precision = 20, scale = 4)
+    private Double yvalueincrease;
+
+    @PropertyDef(label = "鏈勾鍘熷�肩疮璁″噺灏�")
+    @Column(name = "yvaluedecrease", precision = 20, scale = 4)
+    private Double yvaluedecrease;
+
+    @PropertyDef(label = "鏈勾绱鎶樻棫璋冨")
+    @Column(name = "yaccudeprincrease", precision = 20, scale = 4)
+    private Double yaccudeprincrease;
+
+    @PropertyDef(label = "鏈勾绱鎶樻棫璋冨噺")
+    @Column(name = "yaccudeprdecrease", precision = 20, scale = 4)
+    private Double yaccudeprdecrease;
+
+    @JSONField(format = "yyyy-MM-dd HH:mm:ss")
+    @PropertyDef(label = "鏈�鍚庢洿鏂版椂闂�")
+    @Column(name = "zhgxsj")
+    private Date zhgxsj;
+
+}
+
diff --git a/src/main/java/com/fzzy/async/fzzy40/entity/Fz40DrugLogPeople.java b/src/main/java/com/fzzy/async/fzzy40/entity/Fz40DrugLogPeople.java
index 428ce25..d2a7a23 100644
--- a/src/main/java/com/fzzy/async/fzzy40/entity/Fz40DrugLogPeople.java
+++ b/src/main/java/com/fzzy/async/fzzy40/entity/Fz40DrugLogPeople.java
@@ -24,8 +24,8 @@
 
     @Id
     @Column(name = "PEOPLE_ID_", length = 40)
-    @PropertyDef(label = "propleId")
-    private String propleId;
+    @PropertyDef(label = "peopleId")
+    private String peopleId;
 
 
     @Column(name = "DRUG_LOG_ID_", length = 12)
diff --git a/src/main/java/com/fzzy/async/fzzy40/entity/Fz40InoutStockChange.java b/src/main/java/com/fzzy/async/fzzy40/entity/Fz40InoutStockChange.java
index d7c8df1..ab5d61d 100644
--- a/src/main/java/com/fzzy/async/fzzy40/entity/Fz40InoutStockChange.java
+++ b/src/main/java/com/fzzy/async/fzzy40/entity/Fz40InoutStockChange.java
@@ -60,6 +60,14 @@
     @PropertyDef(label = "鍊掑嚭浠撳簱")
     private String depotIdOut;
 
+    @Column(name = "CHANGE_START_DATE_")
+    @PropertyDef(label = "鍊掍粨寮�濮嬫棩鏈�", description = "yyyy-MM-dd")
+    private Date changeStartDate;
+
+    @Column(name = "CHANGE_END_DATE_")
+    @PropertyDef(label = "鍊掍粨缁撴潫鏃ユ湡", description = "yyyy-MM-dd")
+    private Date changeEndDate;
+
     @Column(name = "CHANGE_DATE_")
     @PropertyDef(label = "鍊掍粨鏃ユ湡", description = "yyyy-MM-dd")
     private Date changeDate;
diff --git a/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1023.java b/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1023.java
index 75cb071..9bb34b3 100644
--- a/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1023.java
+++ b/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1023.java
@@ -75,7 +75,7 @@
         apiLog.setType(ApiLog.TYPE_SYNC);
         apiLog.setKqdm(deptId);
         apiLog.setUploadTime(new Date());
-        apiLog.setInteId(ApiCodeConstant.API_1023);
+        apiLog.setInteId(ApiCodeConstant.API_9201);
         apiLog.setStatus(99);
         apiLog.setId(ContextUtil.getUUID());
         try {
@@ -197,11 +197,11 @@
 
                 infoData.setKqdm(kqdm);
                 infoData.setInteType(Constant.API_CATEGORY_13);
-                infoData.setInteId(ApiCodeConstant.API_1023);
-                infoData.setBizType(PushProtocol.SB_GD_2022.getCode());
+                infoData.setInteId(ApiCodeConstant.API_9201);
+                infoData.setBizType(PushProtocol.SB_GD_2023.getCode());
                 infoData.setUpdateTime(new Date());
                 infoData.setDataId(data.getXzbm());
-                apiInfoList = apiInfoDataRep.getDataByInteAndData(ApiCodeConstant.API_1023, data.getXzbm(), kqdm);
+                apiInfoList = apiInfoDataRep.getDataByInteAndData(ApiCodeConstant.API_9201, data.getXzbm(), kqdm);
 
                 if (null == apiInfoList || apiInfoList.isEmpty()) {
                     GD2022Api1023.setCzbz(Constant.CZBZ_I);
diff --git a/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1202.java b/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1202.java
index bd1122f..d4b81ca 100644
--- a/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1202.java
+++ b/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1202.java
@@ -148,9 +148,14 @@
 
                 //绮潈鍗曚綅褰掑睘浠g爜
                 List<Api1208> dataByHwdm = api1208Rep.findDataByHwdm(apiData.getHwdm());
-                if(null != dataByHwdm && dataByHwdm.size() > 0){
-                    apiData.setLqgsdwdm(StringUtils.isEmpty(dataByHwdm.get(0).getLqgsdwdm()) ? apiData.getHwdm().substring(0, 18) : dataByHwdm.get(0).getLqgsdwdm());
+                if (null != dataByHwdm && dataByHwdm.size() > 0) {
+                    apiData.setLqgsdwdm(StringUtils.isEmpty(dataByHwdm.get(0).getLqgsdwdm()) ? apiData.getKqdm() : dataByHwdm.get(0).getLqgsdwdm());
+                }else {
+                    apiData.setLqgsdwdm(apiData.getKqdm());
                 }
+                apiData.setSlr("鍞伯浜�");
+                apiData.setSlrdz("鍞伯浜哄湴鍧�");
+                apiData.setBz(StringUtils.isEmpty(sysData.getRemarks()) ? "澶囨敞" : sysData.getRemarks());
 
                 apiData.setXxdz(StringUtils.isEmpty(sysData.getUserAddress()) ? "璇︾粏鍦板潃" : sysData.getUserAddress());
 
@@ -164,7 +169,7 @@
 
                 //鐢熸垚鏂瑰紡
                 apiData.setScfs(1);
-                if(StringUtils.isNotEmpty(sysData.getRecordStatus()) && sysData.getRecordStatus().equals("ADD")){
+                if (StringUtils.isNotEmpty(sysData.getRecordStatus()) && sysData.getRecordStatus().equals("ADD")) {
                     apiData.setScfs(2);
                     apiData.setSdblyy("搴撳尯鍋滅數瀵艰嚧鏃犳硶鎸夋祦绋嬭繘琛屽嚭搴�");
                 }
@@ -254,7 +259,6 @@
                 apiData.setBizId(sysData.getId());
                 apiData.setKqdm(kqdm);
                 apiData.setSyncTime(new Date());
-                apiData.setBz(null == sysData.getRemarks() ? "澶囨敞" : sysData.getRemarks());
                 apiData.setKlyy("鎵i噺鍘熷洜");
 
                 apiData.setCmqrmgryxm(StringUtils.isEmpty(sysData.getRegisterUser()) ? "鐧昏浜�" : sysData.getRegisterUser());
@@ -263,6 +267,8 @@
                 //04:琛ㄧず鍐滅敤杞﹁溅鐗屽彿锛岀豢搴曠櫧瀛楋紱 LS:琛ㄧず涓存椂铏氭嫙鍙风墝锛屼粎闄愪簬鍞� 绮溅鏃犲浐瀹氬彿鐗屾椂浣跨敤
                 apiData.setCchlx("01");
                 apiData.setLdd("瑁呯伯鍦扮偣");
+                apiData.setZkj(0.0);
+                apiData.setZlfyzkl(0.0);
                 apiData.setQzsfzkl(0.0);
                 apiData.setQzzzzkl(0.0);
                 apiData.setQzgwcmkl(0.0);
diff --git a/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1207.java b/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1207.java
index eb5c271..2771377 100644
--- a/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1207.java
+++ b/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1207.java
@@ -96,6 +96,8 @@
                 apiData.setDchwdm(api1105Out.getHwdm());
                 apiData.setDrhwdm(api1105In.getHwdm());
                 apiData.setDcrq(sysData.getChangeDate());
+                apiData.setDcksrq(sysData.getChangeStartDate());
+                apiData.setDcjsrq(sysData.getChangeEndDate());
                 apiData.setDcsl(sysData.getNumber());
                 apiData.setBzw(sysData.getBzw());
                 apiData.setBzbjs(sysData.getBzbjs());
diff --git a/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1310.java b/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1310.java
index 4eefe04..caee90c 100644
--- a/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1310.java
+++ b/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1310.java
@@ -103,11 +103,11 @@
                 //绮绛夌骇
                 mappingCode = apiTriggerService.getMappingCode(Constant.TRIGGER_P_LSDJ, fz40Quality.getFoodLevel());
                 api1310.setLsdjdm(mappingCode);
-                api1310.setRkrq(DateUtils.addDays(fz40Quality.getTime(), -30));
+                api1310.setRkrq(fz40Quality.getStoreDate());
                 api1310.setJylb(fz40Quality.getType());
                 api1310.setJysj(fz40Quality.getTime());
-                api1310.setJydw(fz40Quality.getUser());
-                api1310.setJyr(fz40Quality.getUser());
+                api1310.setJydw(StringUtils.isEmpty(fz40Quality.getUnit()) ? "妫�楠屽崟浣�" : fz40Quality.getUnit());
+                api1310.setJyr(StringUtils.isEmpty(fz40Quality.getUser()) ? "妫�楠屼汉" : fz40Quality.getUser());
                 api1310.setJyyj(fz40Quality.getStandard());
                 if (StringUtils.isEmpty(fz40Quality.getZblb())) {
                     api1310.setZblb("2");
@@ -139,9 +139,6 @@
                 api1310.setZbjgpd(fz40Quality.getResult());
                 api1310.setQfrq(fz40Quality.getTime());
                 api1310.setBgcjsj(fz40Quality.getTime());
-                if (fz40Quality.getUser().isEmpty()){
-                    fz40Quality.setUser(fz40Quality.getCheckUser());
-                }
                 api1310.setShrxm(fz40Quality.getShrxm().contains("銆�")?fz40Quality.getShrxm().replace('銆�','|'):fz40Quality.getShrxm());
                 if (null == fz40Quality.getCheckTime()) {
                     fz40Quality.setCheckTime(DateUtils.addDays(fz40Quality.getTime(), -1));
diff --git a/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1504.java b/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1504.java
new file mode 100644
index 0000000..8db6908
--- /dev/null
+++ b/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1504.java
@@ -0,0 +1,83 @@
+package com.fzzy.async.fzzy40.impl;
+
+import com.fzzy.api.Constant;
+import com.fzzy.api.entity.Api1504;
+import com.fzzy.api.entity.ApiLog;
+import com.fzzy.api.utils.ContextUtil;
+import com.fzzy.api.view.repository.Api1504Rep;
+import com.fzzy.api.view.repository.ApiLogRep;
+import com.fzzy.async.fzzy40.entity.Fz40Api1504;
+import com.fzzy.async.fzzy40.entity.Fz40Profit;
+import com.fzzy.async.fzzy40.repository.Fzzy40Sync1504Rep;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import java.util.Date;
+import java.util.List;
+
+/**
+ * 璐㈠姟绠$悊-璐﹀淇℃伅
+ *
+ * @author czt
+ * @date 2024-01-12 18:55
+ */
+@Slf4j
+@Component
+public class Fzzy40Sync1504 {
+
+    @Autowired
+    private Fzzy40Sync1504Rep fzzy40Sync1504Rep;
+    @Autowired
+    private Api1504Rep api1504Rep;
+    @Autowired
+    private ApiLogRep apiLogRep;
+
+    /**
+     * 鍚屾骞跺皝瑁呬繚瀛樿川妫�鏁版嵁
+     *
+     * @param deptId 绯荤粺瀵瑰簲搴撳尯缂栫爜
+     * @param start  璧峰鏃堕棿
+     * @param end    鎴鏃堕棿
+     */
+    public void syncData(String kqdm, String deptId, Date start, Date end) {
+        log.info("-------------1504璐﹀淇℃伅鎺ュ彛鏁版嵁寮�濮嬪悓姝�------------------");
+        //鍚屾鏁版嵁锛屽彧璁板綍澶辫触鐨勪俊鎭�
+        ApiLog apiLog = new ApiLog();
+        apiLog.setType(ApiLog.TYPE_SYNC);
+        apiLog.setKqdm(kqdm);
+        apiLog.setUploadTime(new Date());
+        apiLog.setInteId(Constant.API_CODE_1504);
+        apiLog.setStatus(99);
+        apiLog.setId(ContextUtil.getUUID());
+        try {
+            List<Fz40Api1504> list = fzzy40Sync1504Rep.findDateByTime(start, end);
+
+            if (null == list || list.isEmpty()) {
+                return;
+            }
+
+            Api1504 api1504;
+            List<Api1504> api1504List;
+            for (Fz40Api1504 sysData : list) {
+                api1504 = new Api1504();
+                BeanUtils.copyProperties(sysData, api1504);
+                api1504.setKqdm(kqdm);
+
+                api1504List = api1504Rep.findDateById(api1504.getNacctid());
+                if (null == api1504List || api1504List.isEmpty()) {
+                    api1504.setCzbz(Constant.CZBZ_I);
+                } else {
+                    api1504.setCzbz(api1504List.get(0).getCzbz());
+                }
+                api1504Rep.save(api1504);
+            }
+        } catch (Exception e) {
+            log.error("---鍚屾澶辫触----{}", e);
+            apiLog.setResult("鍚屾澶辫触锛�" + e.getMessage());
+            apiLogRep.save(apiLog);
+        }
+    }
+
+}
\ No newline at end of file
diff --git a/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1505.java b/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1505.java
new file mode 100644
index 0000000..6eb42fe
--- /dev/null
+++ b/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1505.java
@@ -0,0 +1,83 @@
+package com.fzzy.async.fzzy40.impl;
+
+import com.fzzy.api.Constant;
+import com.fzzy.api.entity.Api1505;
+import com.fzzy.api.entity.ApiLog;
+import com.fzzy.api.utils.ContextUtil;
+import com.fzzy.api.view.repository.Api1505Rep;
+import com.fzzy.api.view.repository.ApiLogRep;
+import com.fzzy.async.fzzy40.entity.Fz40Api1504;
+import com.fzzy.async.fzzy40.entity.Fz40Profit;
+import com.fzzy.async.fzzy40.repository.Fzzy40Sync1505Rep;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import java.util.Date;
+import java.util.List;
+
+/**
+ * 璐㈠姟绠$悊-绉戠洰淇℃伅
+ *
+ * @author czt
+ * @date 2024-01-12 18:55
+ */
+@Slf4j
+@Component
+public class Fzzy40Sync1505 {
+
+    @Autowired
+    private Fzzy40Sync1505Rep fzzy40Sync1505Rep;
+    @Autowired
+    private Api1505Rep api1505Rep;
+    @Autowired
+    private ApiLogRep apiLogRep;
+
+    /**
+     * 鍚屾骞跺皝瑁呬繚瀛樿川妫�鏁版嵁
+     *
+     * @param deptId 绯荤粺瀵瑰簲搴撳尯缂栫爜
+     * @param start  璧峰鏃堕棿
+     * @param end    鎴鏃堕棿
+     */
+    public void syncData(String kqdm, String deptId, Date start, Date end) {
+        log.info("-------------1505鎺ュ彛鏁版嵁寮�濮嬪悓姝�------------------");
+        //鍚屾鏁版嵁锛屽彧璁板綍澶辫触鐨勪俊鎭�
+        ApiLog apiLog = new ApiLog();
+        apiLog.setType(ApiLog.TYPE_SYNC);
+        apiLog.setKqdm(kqdm);
+        apiLog.setUploadTime(new Date());
+        apiLog.setInteId(Constant.API_CODE_1505);
+        apiLog.setStatus(99);
+        apiLog.setId(ContextUtil.getUUID());
+        try {
+            List<Fz40Api1504> list = fzzy40Sync1505Rep.findDateByTime(start, end);
+
+            if (null == list || list.isEmpty()) {
+                return;
+            }
+
+            Api1505 api1505;
+            List<Api1505> api1505List;
+            for (Fz40Api1504 sysData : list) {
+                api1505 = new Api1505();
+                BeanUtils.copyProperties(sysData, api1505);
+                api1505.setKqdm(kqdm);
+
+                api1505List = api1505Rep.findDateById(api1505.getId());
+                if(null == api1505List || api1505List.isEmpty()){
+                    api1505.setCzbz(Constant.CZBZ_I);
+                }else {
+                    api1505.setCzbz(api1505List.get(0).getCzbz());
+                }
+                api1505Rep.save(api1505);
+            }
+        } catch (Exception e) {
+            log.error("---鍚屾澶辫触----{}", e);
+            apiLog.setResult("鍚屾澶辫触锛�" + e.getMessage());
+            apiLogRep.save(apiLog);
+        }
+    }
+
+}
\ No newline at end of file
diff --git a/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1506.java b/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1506.java
new file mode 100644
index 0000000..fce15a5
--- /dev/null
+++ b/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1506.java
@@ -0,0 +1,83 @@
+package com.fzzy.async.fzzy40.impl;
+
+import com.fzzy.api.Constant;
+import com.fzzy.api.entity.Api1506;
+import com.fzzy.api.entity.ApiLog;
+import com.fzzy.api.utils.ContextUtil;
+import com.fzzy.api.view.repository.Api1506Rep;
+import com.fzzy.api.view.repository.ApiLogRep;
+import com.fzzy.async.fzzy40.entity.Fz40Api1506;
+import com.fzzy.async.fzzy40.entity.Fz40Profit;
+import com.fzzy.async.fzzy40.repository.Fzzy40Sync1506Rep;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import java.util.Date;
+import java.util.List;
+
+/**
+ * 璐㈠姟绠$悊-绉戠洰浣欓琛�
+ *
+ * @author czt
+ * @date 2024-01-12 18:55
+ */
+@Slf4j
+@Component
+public class Fzzy40Sync1506 {
+
+    @Autowired
+    private Fzzy40Sync1506Rep fzzy40Sync1506Rep;
+    @Autowired
+    private Api1506Rep api1506Rep;
+    @Autowired
+    private ApiLogRep apiLogRep;
+
+    /**
+     * 鍚屾骞跺皝瑁呬繚瀛樿川妫�鏁版嵁
+     *
+     * @param deptId 绯荤粺瀵瑰簲搴撳尯缂栫爜
+     * @param start  璧峰鏃堕棿
+     * @param end    鎴鏃堕棿
+     */
+    public void syncData(String kqdm, String deptId, Date start, Date end) {
+        log.info("-------------1506鎺ュ彛鏁版嵁寮�濮嬪悓姝�------------------");
+        //鍚屾鏁版嵁锛屽彧璁板綍澶辫触鐨勪俊鎭�
+        ApiLog apiLog = new ApiLog();
+        apiLog.setType(ApiLog.TYPE_SYNC);
+        apiLog.setKqdm(kqdm);
+        apiLog.setUploadTime(new Date());
+        apiLog.setInteId(Constant.API_CODE_1506);
+        apiLog.setStatus(99);
+        apiLog.setId(ContextUtil.getUUID());
+        try {
+            List<Fz40Api1506> list = fzzy40Sync1506Rep.findDateByTime(start, end);
+
+            if (null == list || list.isEmpty()) {
+                return;
+            }
+
+            Api1506 api1506;
+            List<Api1506> api1506List;
+            for (Fz40Api1506 sysData : list) {
+                api1506 = new Api1506();
+                BeanUtils.copyProperties(sysData, api1506);
+                api1506.setKqdm(kqdm);
+
+                api1506List = api1506Rep.findDateById(api1506.getId());
+                if(null == api1506List || api1506List.isEmpty()){
+                    api1506.setCzbz(Constant.CZBZ_I);
+                }else {
+                    api1506.setCzbz(api1506List.get(0).getCzbz());
+                }
+                api1506Rep.save(api1506);
+            }
+        } catch (Exception e) {
+            log.error("---鍚屾澶辫触----{}", e);
+            apiLog.setResult("鍚屾澶辫触锛�" + e.getMessage());
+            apiLogRep.save(apiLog);
+        }
+    }
+
+}
\ No newline at end of file
diff --git a/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1507.java b/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1507.java
new file mode 100644
index 0000000..f05d531
--- /dev/null
+++ b/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1507.java
@@ -0,0 +1,83 @@
+package com.fzzy.async.fzzy40.impl;
+
+import com.fzzy.api.Constant;
+import com.fzzy.api.entity.Api1507;
+import com.fzzy.api.entity.ApiLog;
+import com.fzzy.api.utils.ContextUtil;
+import com.fzzy.api.view.repository.Api1507Rep;
+import com.fzzy.api.view.repository.ApiLogRep;
+import com.fzzy.async.fzzy40.entity.Fz40Api1507;
+import com.fzzy.async.fzzy40.entity.Fz40Profit;
+import com.fzzy.async.fzzy40.repository.Fzzy40Sync1507Rep;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import java.util.Date;
+import java.util.List;
+
+/**
+ * 璐㈠姟绠$悊-浼氳鍑瘉淇℃伅
+ *
+ * @author czt
+ * @date 2024-01-12 18:55
+ */
+@Slf4j
+@Component
+public class Fzzy40Sync1507 {
+
+    @Autowired
+    private Fzzy40Sync1507Rep fzzy40Sync1507Rep;
+    @Autowired
+    private Api1507Rep api1507Rep;
+    @Autowired
+    private ApiLogRep apiLogRep;
+
+    /**
+     * 鍚屾骞跺皝瑁呬繚瀛樿川妫�鏁版嵁
+     *
+     * @param deptId 绯荤粺瀵瑰簲搴撳尯缂栫爜
+     * @param start  璧峰鏃堕棿
+     * @param end    鎴鏃堕棿
+     */
+    public void syncData(String kqdm, String deptId, Date start, Date end) {
+        log.info("-------------1507浼氳鍑瘉淇℃伅鎺ュ彛鏁版嵁寮�濮嬪悓姝�------------------");
+        //鍚屾鏁版嵁锛屽彧璁板綍澶辫触鐨勪俊鎭�
+        ApiLog apiLog = new ApiLog();
+        apiLog.setType(ApiLog.TYPE_SYNC);
+        apiLog.setKqdm(kqdm);
+        apiLog.setUploadTime(new Date());
+        apiLog.setInteId(Constant.API_CODE_1507);
+        apiLog.setStatus(99);
+        apiLog.setId(ContextUtil.getUUID());
+        try {
+            List<Fz40Api1507> list = fzzy40Sync1507Rep.findDateByTime(start, end);
+
+            if (null == list || list.isEmpty()) {
+                return;
+            }
+
+            Api1507 api1507;
+            List<Api1507> api1507List;
+            for (Fz40Api1507 sysData : list) {
+                api1507 = new Api1507();
+                BeanUtils.copyProperties(sysData, api1507);
+                api1507.setKqdm(kqdm);
+
+                api1507List = api1507Rep.findDateById(api1507.getId());
+                if(null == api1507List || api1507List.isEmpty()){
+                    api1507.setCzbz(Constant.CZBZ_I);
+                }else {
+                    api1507.setCzbz(api1507List.get(0).getCzbz());
+                }
+                api1507Rep.save(api1507);
+            }
+        } catch (Exception e) {
+            log.error("---鍚屾澶辫触----{}", e);
+            apiLog.setResult("鍚屾澶辫触锛�" + e.getMessage());
+            apiLogRep.save(apiLog);
+        }
+    }
+
+}
\ No newline at end of file
diff --git a/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1508.java b/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1508.java
new file mode 100644
index 0000000..672dac0
--- /dev/null
+++ b/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1508.java
@@ -0,0 +1,83 @@
+package com.fzzy.async.fzzy40.impl;
+
+import com.fzzy.api.Constant;
+import com.fzzy.api.entity.Api1508;
+import com.fzzy.api.entity.ApiLog;
+import com.fzzy.api.utils.ContextUtil;
+import com.fzzy.api.view.repository.Api1508Rep;
+import com.fzzy.api.view.repository.ApiLogRep;
+import com.fzzy.async.fzzy40.entity.Fz40Api1508;
+import com.fzzy.async.fzzy40.entity.Fz40Profit;
+import com.fzzy.async.fzzy40.repository.Fzzy40Sync1508Rep;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import java.util.Date;
+import java.util.List;
+
+/**
+ * 璐㈠姟绠$悊-鐜伴噾娴侀噺鍒嗛厤淇℃伅
+ *
+ * @author czt
+ * @date 2024-01-12 18:55
+ */
+@Slf4j
+@Component
+public class Fzzy40Sync1508 {
+
+    @Autowired
+    private Fzzy40Sync1508Rep fzzy40Sync1508Rep;
+    @Autowired
+    private Api1508Rep api1508Rep;
+    @Autowired
+    private ApiLogRep apiLogRep;
+
+    /**
+     * 鍚屾骞跺皝瑁呬繚瀛樿川妫�鏁版嵁
+     *
+     * @param deptId 绯荤粺瀵瑰簲搴撳尯缂栫爜
+     * @param start  璧峰鏃堕棿
+     * @param end    鎴鏃堕棿
+     */
+    public void syncData(String kqdm, String deptId, Date start, Date end) {
+        log.info("-------------1508鐜伴噾娴侀噺鍒嗛厤淇℃伅鎺ュ彛鏁版嵁寮�濮嬪悓姝�------------------");
+        //鍚屾鏁版嵁锛屽彧璁板綍澶辫触鐨勪俊鎭�
+        ApiLog apiLog = new ApiLog();
+        apiLog.setType(ApiLog.TYPE_SYNC);
+        apiLog.setKqdm(kqdm);
+        apiLog.setUploadTime(new Date());
+        apiLog.setInteId(Constant.API_CODE_1508);
+        apiLog.setStatus(99);
+        apiLog.setId(ContextUtil.getUUID());
+        try {
+            List<Fz40Api1508> list = fzzy40Sync1508Rep.findDateByTime(start, end);
+
+            if (null == list || list.isEmpty()) {
+                return;
+            }
+
+            Api1508 api1508;
+            List<Api1508> api1508List;
+            for (Fz40Api1508 sysData : list) {
+                api1508 = new Api1508();
+                BeanUtils.copyProperties(sysData, api1508);
+                api1508.setKqdm(kqdm);
+
+                api1508List = api1508Rep.findDateById(api1508.getId());
+                if(null == api1508List || api1508List.isEmpty()){
+                    api1508.setCzbz(Constant.CZBZ_I);
+                }else {
+                    api1508.setCzbz(api1508List.get(0).getCzbz());
+                }
+                api1508Rep.save(api1508);
+            }
+        } catch (Exception e) {
+            log.error("---鍚屾澶辫触----{}", e);
+            apiLog.setResult("鍚屾澶辫触锛�" + e.getMessage());
+            apiLogRep.save(apiLog);
+        }
+    }
+
+}
\ No newline at end of file
diff --git a/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1509.java b/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1509.java
new file mode 100644
index 0000000..94c6d22
--- /dev/null
+++ b/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1509.java
@@ -0,0 +1,83 @@
+package com.fzzy.async.fzzy40.impl;
+
+import com.fzzy.api.Constant;
+import com.fzzy.api.entity.Api1509;
+import com.fzzy.api.entity.ApiLog;
+import com.fzzy.api.utils.ContextUtil;
+import com.fzzy.api.view.repository.Api1509Rep;
+import com.fzzy.api.view.repository.ApiLogRep;
+import com.fzzy.async.fzzy40.entity.Fz40Api1508;
+import com.fzzy.async.fzzy40.entity.Fz40Profit;
+import com.fzzy.async.fzzy40.repository.Fzzy40Sync1509Rep;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import java.util.Date;
+import java.util.List;
+
+/**
+ * 璐㈠姟绠$悊-鍒╂鼎
+ *
+ * @author czt
+ * @date 2024-01-12 18:55
+ */
+@Slf4j
+@Component
+public class Fzzy40Sync1509 {
+
+    @Autowired
+    private Fzzy40Sync1509Rep fzzy40Sync1509Rep;
+    @Autowired
+    private Api1509Rep api1509Rep;
+    @Autowired
+    private ApiLogRep apiLogRep;
+
+    /**
+     * 鍚屾骞跺皝瑁呬繚瀛樿川妫�鏁版嵁
+     *
+     * @param deptId 绯荤粺瀵瑰簲搴撳尯缂栫爜
+     * @param start  璧峰鏃堕棿
+     * @param end    鎴鏃堕棿
+     */
+    public void syncData(String kqdm, String deptId, Date start, Date end) {
+        log.info("-------------1509鎺ュ彛鏁版嵁寮�濮嬪悓姝�------------------");
+        //鍚屾鏁版嵁锛屽彧璁板綍澶辫触鐨勪俊鎭�
+        ApiLog apiLog = new ApiLog();
+        apiLog.setType(ApiLog.TYPE_SYNC);
+        apiLog.setKqdm(kqdm);
+        apiLog.setUploadTime(new Date());
+        apiLog.setInteId(Constant.API_CODE_1509);
+        apiLog.setStatus(99);
+        apiLog.setId(ContextUtil.getUUID());
+        try {
+            List<Fz40Api1508> list = fzzy40Sync1509Rep.findDateByTime(start, end);
+
+            if (null == list || list.isEmpty()) {
+                return;
+            }
+
+            Api1509 api1509;
+            List<Api1509> api1509List;
+            for (Fz40Api1508 sysData : list) {
+                api1509 = new Api1509();
+                BeanUtils.copyProperties(sysData, api1509);
+                api1509.setKqdm(kqdm);
+
+                api1509List = api1509Rep.findDateById(api1509.getId());
+                if(null == api1509List || api1509List.isEmpty()){
+                    api1509.setCzbz(Constant.CZBZ_I);
+                }else {
+                    api1509.setCzbz(api1509List.get(0).getCzbz());
+                }
+                api1509Rep.save(api1509);
+            }
+        } catch (Exception e) {
+            log.error("---鍚屾澶辫触----{}", e);
+            apiLog.setResult("鍚屾澶辫触锛�" + e.getMessage());
+            apiLogRep.save(apiLog);
+        }
+    }
+
+}
\ No newline at end of file
diff --git a/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1510.java b/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1510.java
new file mode 100644
index 0000000..9b79667
--- /dev/null
+++ b/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1510.java
@@ -0,0 +1,83 @@
+package com.fzzy.async.fzzy40.impl;
+
+import com.fzzy.api.Constant;
+import com.fzzy.api.entity.Api1510;
+import com.fzzy.api.entity.ApiLog;
+import com.fzzy.api.utils.ContextUtil;
+import com.fzzy.api.view.repository.Api1510Rep;
+import com.fzzy.api.view.repository.ApiLogRep;
+import com.fzzy.async.fzzy40.entity.Fz40Api1510;
+import com.fzzy.async.fzzy40.entity.Fz40Profit;
+import com.fzzy.async.fzzy40.repository.Fzzy40Sync1510Rep;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import java.util.Date;
+import java.util.List;
+
+/**
+ * 璐㈠姟绠$悊-璧勪骇鎶樻棫淇℃伅
+ *
+ * @author czt
+ * @date 2024-01-12 18:55
+ */
+@Slf4j
+@Component
+public class Fzzy40Sync1510 {
+
+    @Autowired
+    private Fzzy40Sync1510Rep fzzy40Sync1510Rep;
+    @Autowired
+    private Api1510Rep api1510Rep;
+    @Autowired
+    private ApiLogRep apiLogRep;
+
+    /**
+     * 鍚屾骞跺皝瑁呬繚瀛樿川妫�鏁版嵁
+     *
+     * @param deptId 绯荤粺瀵瑰簲搴撳尯缂栫爜
+     * @param start  璧峰鏃堕棿
+     * @param end    鎴鏃堕棿
+     */
+    public void syncData(String kqdm, String deptId, Date start, Date end) {
+        log.info("-------------1510璧勪骇鎶樻棫淇℃伅鎺ュ彛鏁版嵁寮�濮嬪悓姝�------------------");
+        //鍚屾鏁版嵁锛屽彧璁板綍澶辫触鐨勪俊鎭�
+        ApiLog apiLog = new ApiLog();
+        apiLog.setType(ApiLog.TYPE_SYNC);
+        apiLog.setKqdm(kqdm);
+        apiLog.setUploadTime(new Date());
+        apiLog.setInteId(Constant.API_CODE_1510);
+        apiLog.setStatus(99);
+        apiLog.setId(ContextUtil.getUUID());
+        try {
+            List<Fz40Api1510> list = fzzy40Sync1510Rep.findDateByTime(start, end);
+
+            if (null == list || list.isEmpty()) {
+                return;
+            }
+
+            Api1510 api1510;
+            List<Api1510> api1510List;
+            for (Fz40Api1510 sysData : list) {
+                api1510 = new Api1510();
+                BeanUtils.copyProperties(sysData, api1510);
+                api1510.setKqdm(kqdm);
+
+                api1510List = api1510Rep.findDateById(api1510.getId());
+                if(null == api1510List || api1510List.isEmpty()){
+                    api1510.setCzbz(Constant.CZBZ_I);
+                }else {
+                    api1510.setCzbz(api1510List.get(0).getCzbz());
+                }
+                api1510Rep.save(api1510);
+            }
+        } catch (Exception e) {
+            log.error("---鍚屾澶辫触----{}", e);
+            apiLog.setResult("鍚屾澶辫触锛�" + e.getMessage());
+            apiLogRep.save(apiLog);
+        }
+    }
+
+}
\ No newline at end of file
diff --git a/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync9201.java b/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync9201.java
new file mode 100644
index 0000000..4dd24c4
--- /dev/null
+++ b/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync9201.java
@@ -0,0 +1,195 @@
+package com.fzzy.async.fzzy40.impl;
+
+import com.alibaba.fastjson2.JSON;
+import com.fzzy.api.Constant;
+import com.fzzy.api.entity.*;
+import com.fzzy.api.service.ApiCommonService;
+import com.fzzy.api.service.ApiTriggerService;
+import com.fzzy.api.utils.ContextUtil;
+import com.fzzy.api.view.repository.*;
+import com.fzzy.async.fzzy40.entity.Fz40DrugLogApply;
+import com.fzzy.async.fzzy40.entity.Fz40DrugLogDtl;
+import com.fzzy.async.fzzy40.entity.Fz40DrugLogPeople;
+import com.fzzy.async.fzzy40.repository.*;
+import com.fzzy.push.gd2022.ApiCodeConstant;
+import com.fzzy.push.gd2022.dto.Gd2022Api1023Dtl;
+import com.fzzy.push.gd2022.dto.Gd2022Api1023People;
+import com.fzzy.push.gd2022.dto.Gd2022Api1023Way;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang.StringUtils;
+import org.springframework.beans.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * 鐔忚捀澶囨淇℃伅
+ *
+ * @Author:YAN
+ */
+@Slf4j
+@Component
+public class Fzzy40Sync9201 {
+    @Autowired
+    private Api1101Rep api1101Rep;
+    @Autowired
+    private Api1102Rep api1102Rep;
+    @Autowired
+    private Fzzy40Sync9201Rep fzzy40Sync9201Rep;
+    @Autowired
+    private Fzzy40SyncDrugLogPeopleRep drugLogPeopleRep;
+    @Autowired
+    private Fzzy40SyncDrugLogDtlRep drugLogDtlRep;
+    @Autowired
+    private ApiLogRep apiLogRep;
+    @Autowired
+    private ApiCommonService commonService;
+    @Autowired
+    private ApiTriggerService apiTriggerService;
+
+    @Autowired
+    private Api9201Rep api9201Rep;
+
+
+    /**
+     * 鍚屾鐔忚捀澶囨淇℃伅
+     *
+     * @param deptId
+     * @param start
+     * @param end
+     */
+    public void syncData(String kqdm, String deptId, Date start, Date end) {
+        log.info("-------------9201鎺ュ彛鐔忚捀澶囨淇℃伅寮�濮嬪悓姝�------------------");
+
+        //鍚屾鏁版嵁锛屽彧璁板綍澶辫触鐨勪俊鎭�
+        ApiLog apiLog = new ApiLog();
+        apiLog.setType(ApiLog.TYPE_SYNC);
+        apiLog.setKqdm(deptId);
+        apiLog.setUploadTime(new Date());
+        apiLog.setInteId(ApiCodeConstant.API_9201);
+        apiLog.setStatus(99);
+        apiLog.setId(ContextUtil.getUUID());
+        try {
+            List<Fz40DrugLogApply> list = fzzy40Sync9201Rep.listDrugLogApply(deptId, start, end);
+
+            if (null == list || list.isEmpty()) {
+                log.info("-------------娌℃湁鑾峰彇鍒扮啅钂稿妗堜俊鎭�------------------");
+                return;
+            }
+            List<Gd2022Api1023Dtl> dtlList;
+            List<Gd2022Api1023Way> wayList;
+            List<Gd2022Api1023People> peopleList;
+
+            List<Api9201> api9201List;
+
+            Api1105 api1105;
+            Api9201 api9201;
+            Gd2022Api1023Dtl api9201Dtl;
+            Gd2022Api1023Way api9201Way;
+            Gd2022Api1023People api9201People;
+
+            for (Fz40DrugLogApply data : list) {
+
+                api9201 = new Api9201();
+                BeanUtils.copyProperties(data, api9201);
+                api9201.setBizId(data.getXzbm());
+                api9201.setId(data.getXzbm());
+                api9201.setXzbm(data.getXzbm().substring(8));
+                api9201.setKqdm(kqdm);
+                List<Api1102> api1102List = api1102Rep.findPushData(kqdm);
+                if (null != api1102List && api1102List.size() > 0) {
+                    api9201.setKqmc(api1102List.get(0).getKqmc());
+                }
+
+                api9201.setDwdm(kqdm.substring(0, 18));
+                List<Api1101> api1101List = api1101Rep.findPushData(kqdm);
+                if (null != api1101List && api1101List.size() > 0) {
+                    api9201.setDwmc(api1101List.get(0).getDwmc());
+                }
+                api9201.setYjmc(data.getDrugName());
+                api9201.setYjlx(data.getDrugType());
+                api9201.setLqrq(data.getLqsj());
+                api9201.setZhgxsj(data.getUpdateTime());
+                if (data.getLqr().contains("銆�")) {
+                    api9201.setLqr(data.getLqr().replace('銆�', '|'));
+                }
+
+                //鍌ㄧ伯绮儏鏄庣粏琛�
+                List<Fz40DrugLogDtl> dtls = drugLogDtlRep.listDrugLogDtl(data.getXzbm());
+
+                if (null != dtls && dtls.size() > 0) {
+                    dtlList = new ArrayList<>();
+                    for (Fz40DrugLogDtl dtl : dtls) {
+                        api9201Dtl = new Gd2022Api1023Dtl();
+                        BeanUtils.copyProperties(dtl, api9201Dtl);
+                        api1105 = commonService.getApi1105Cache(data.getDepotId());
+                        if (null != api1105) {
+                            api9201Dtl.setCfmc(api1105.getHwmc());
+                            api9201Dtl.setCfdm(api1105.getHwdm().substring(0, 25));
+                        }
+
+                        //绮鍝佺
+                        String mappingCode = apiTriggerService.getMappingCode(Constant.TRIGGER_P_LSPZ, data.getFoodVariety());
+                        api9201Dtl.setLspzdm(mappingCode);
+                        api9201Dtl.setLsxzdm(data.getFoodType());
+                        api9201Dtl.setLsdjdm(data.getFoodLevel());
+                        api9201Dtl.setLssl(data.getNumber());
+                        api9201Dtl.setSf(data.getPerWet());
+                        api9201Dtl.setZz(data.getPerImpurity());
+                        dtlList.add(api9201Dtl);
+                    }
+                    api9201.setDtl(JSON.toJSONString(dtlList));
+                    api9201List = api9201Rep.getDataByBizId(api9201.getBizId());
+                    if (null == api9201List || api9201List.isEmpty()) {
+                        api9201.setCzbz(Constant.CZBZ_I);
+                    } else {
+                        api9201.setCzbz(api9201List.get(0).getCzbz());
+                    }
+                }
+//                BeanUtils.copyProperties(data, api9201Dtl);
+//                dtlList = new ArrayList<>();
+//                dtlList.add(api9201Dtl);
+//                api9201.setDtl(JSON.toJSONString(dtlList));
+
+
+                api9201Way = new Gd2022Api1023Way();
+                BeanUtils.copyProperties(data, api9201Way);
+                wayList = new ArrayList<>();
+                wayList.add(api9201Way);
+                api9201.setWay(JSON.toJSONString(wayList));
+
+                List<Fz40DrugLogPeople> peoples = drugLogPeopleRep.listDrugLogPeople(data.getXzbm());
+                if (null != peoples && peoples.size() > 0) {
+                    peopleList = new ArrayList<>();
+                    for (Fz40DrugLogPeople people : peoples) {
+                        api9201People = new Gd2022Api1023People();
+                        BeanUtils.copyProperties(people, api9201People);
+                        api9201People.setXm(people.getMx());
+                        if (StringUtils.isEmpty(people.getZyzg())) {
+                            api9201People.setZyzg("鍩硅鍚堟牸");
+                        }
+                        peopleList.add(api9201People);
+                    }
+                    api9201.setPeople(JSON.toJSONString(peopleList));
+
+                    api9201List = api9201Rep.getDataByBizId(api9201.getBizId());
+                    if (null == api9201List || api9201List.isEmpty()) {
+                        api9201.setCzbz(Constant.CZBZ_I);
+                    } else {
+                        api9201.setCzbz(api9201List.get(0).getCzbz());
+                    }
+                }
+                api9201Rep.save(api9201);
+                log.info("9201---鍚屾鏁版嵁锛歿}", api9201.toString());
+            }
+
+        } catch (Exception e) {
+            log.error("---鐔忚捀澶囨鍚屾鎵ц澶辫触----{}", e.toString());
+            apiLog.setResult("鐔忚捀澶囨淇℃伅鍚屾鎵ц澶辫触锛�" + e.getMessage());
+            apiLogRep.save(apiLog);
+        }
+    }
+}
diff --git a/src/main/java/com/fzzy/async/fzzy40/repository/Fzzy40Sync1504Rep.java b/src/main/java/com/fzzy/async/fzzy40/repository/Fzzy40Sync1504Rep.java
new file mode 100644
index 0000000..edfeb75
--- /dev/null
+++ b/src/main/java/com/fzzy/async/fzzy40/repository/Fzzy40Sync1504Rep.java
@@ -0,0 +1,28 @@
+package com.fzzy.async.fzzy40.repository;
+
+import com.fzzy.async.fzzy40.entity.Fz40Api1504;
+import com.fzzy.async.fzzy40.entity.Fz40Profit;
+import org.springframework.data.jpa.repository.JpaRepository;
+import org.springframework.data.jpa.repository.Query;
+import org.springframework.data.repository.query.Param;
+
+import java.util.Date;
+import java.util.List;
+
+/**
+ * 璐㈠姟绠$悊-鍒╂鼎
+ *
+ * @author czt
+ * @date 2024-01-12 09:55
+ */
+public interface Fzzy40Sync1504Rep extends JpaRepository<Fz40Api1504, String> {
+
+    /**
+     *
+     * @param start
+     * @param end
+     * @return
+     */
+    @Query("from Fz40Api1504 where zhgxsj >=:start and zhgxsj <:end order by zhgxsj ")
+    List<Fz40Api1504> findDateByTime(@Param("start") Date start, @Param("end") Date end);
+}
diff --git a/src/main/java/com/fzzy/async/fzzy40/repository/Fzzy40Sync1505Rep.java b/src/main/java/com/fzzy/async/fzzy40/repository/Fzzy40Sync1505Rep.java
new file mode 100644
index 0000000..162ed7a
--- /dev/null
+++ b/src/main/java/com/fzzy/async/fzzy40/repository/Fzzy40Sync1505Rep.java
@@ -0,0 +1,28 @@
+package com.fzzy.async.fzzy40.repository;
+
+import com.fzzy.async.fzzy40.entity.Fz40Api1504;
+import com.fzzy.async.fzzy40.entity.Fz40Profit;
+import org.springframework.data.jpa.repository.JpaRepository;
+import org.springframework.data.jpa.repository.Query;
+import org.springframework.data.repository.query.Param;
+
+import java.util.Date;
+import java.util.List;
+
+/**
+ * 璐㈠姟绠$悊-鍒╂鼎
+ *
+ * @author czt
+ * @date 2024-01-12 09:55
+ */
+public interface Fzzy40Sync1505Rep extends JpaRepository<Fz40Api1504, String> {
+
+    /**
+     *
+     * @param start
+     * @param end
+     * @return
+     */
+    @Query("from Fz40Api1504 where zhgxsj >=:start and zhgxsj <:end order by zhgxsj ")
+    List<Fz40Api1504> findDateByTime(@Param("start") Date start, @Param("end") Date end);
+}
diff --git a/src/main/java/com/fzzy/async/fzzy40/repository/Fzzy40Sync1506Rep.java b/src/main/java/com/fzzy/async/fzzy40/repository/Fzzy40Sync1506Rep.java
new file mode 100644
index 0000000..65f58fe
--- /dev/null
+++ b/src/main/java/com/fzzy/async/fzzy40/repository/Fzzy40Sync1506Rep.java
@@ -0,0 +1,28 @@
+package com.fzzy.async.fzzy40.repository;
+
+import com.fzzy.async.fzzy40.entity.Fz40Api1506;
+import com.fzzy.async.fzzy40.entity.Fz40Profit;
+import org.springframework.data.jpa.repository.JpaRepository;
+import org.springframework.data.jpa.repository.Query;
+import org.springframework.data.repository.query.Param;
+
+import java.util.Date;
+import java.util.List;
+
+/**
+ * 璐㈠姟绠$悊-鍒╂鼎
+ *
+ * @author czt
+ * @date 2024-01-12 09:55
+ */
+public interface Fzzy40Sync1506Rep extends JpaRepository<Fz40Api1506, String> {
+
+    /**
+     *
+     * @param start
+     * @param end
+     * @return
+     */
+    @Query("from Fz40Api1506 where zhgxsj >=:start and zhgxsj <:end order by zhgxsj ")
+    List<Fz40Api1506> findDateByTime(@Param("start") Date start, @Param("end") Date end);
+}
diff --git a/src/main/java/com/fzzy/async/fzzy40/repository/Fzzy40Sync1507Rep.java b/src/main/java/com/fzzy/async/fzzy40/repository/Fzzy40Sync1507Rep.java
new file mode 100644
index 0000000..c07a2d5
--- /dev/null
+++ b/src/main/java/com/fzzy/async/fzzy40/repository/Fzzy40Sync1507Rep.java
@@ -0,0 +1,28 @@
+package com.fzzy.async.fzzy40.repository;
+
+import com.fzzy.async.fzzy40.entity.Fz40Api1507;
+import com.fzzy.async.fzzy40.entity.Fz40Profit;
+import org.springframework.data.jpa.repository.JpaRepository;
+import org.springframework.data.jpa.repository.Query;
+import org.springframework.data.repository.query.Param;
+
+import java.util.Date;
+import java.util.List;
+
+/**
+ * 璐㈠姟绠$悊-浼氳鍑瘉淇℃伅
+ *
+ * @author czt
+ * @date 2024-01-12 09:55
+ */
+public interface Fzzy40Sync1507Rep extends JpaRepository<Fz40Api1507, String> {
+
+    /**
+     *
+     * @param start
+     * @param end
+     * @return
+     */
+    @Query("from Fz40Api1507 where zhgxsj >=:start and zhgxsj <:end order by zhgxsj ")
+    List<Fz40Api1507> findDateByTime(@Param("start") Date start, @Param("end") Date end);
+}
diff --git a/src/main/java/com/fzzy/async/fzzy40/repository/Fzzy40Sync1508Rep.java b/src/main/java/com/fzzy/async/fzzy40/repository/Fzzy40Sync1508Rep.java
new file mode 100644
index 0000000..b67a4df
--- /dev/null
+++ b/src/main/java/com/fzzy/async/fzzy40/repository/Fzzy40Sync1508Rep.java
@@ -0,0 +1,28 @@
+package com.fzzy.async.fzzy40.repository;
+
+import com.fzzy.async.fzzy40.entity.Fz40Api1508;
+import com.fzzy.async.fzzy40.entity.Fz40Profit;
+import org.springframework.data.jpa.repository.JpaRepository;
+import org.springframework.data.jpa.repository.Query;
+import org.springframework.data.repository.query.Param;
+
+import java.util.Date;
+import java.util.List;
+
+/**
+ * 璐㈠姟绠$悊-鐜伴噾娴侀噺鍒嗛厤淇℃伅
+ *
+ * @author czt
+ * @date 2024-01-12 09:55
+ */
+public interface Fzzy40Sync1508Rep extends JpaRepository<Fz40Api1508, String> {
+
+    /**
+     *
+     * @param start
+     * @param end
+     * @return
+     */
+    @Query("from Fz40Api1508 where zhgxsj >=:start and zhgxsj <:end order by zhgxsj ")
+    List<Fz40Api1508> findDateByTime(@Param("start") Date start, @Param("end") Date end);
+}
diff --git a/src/main/java/com/fzzy/async/fzzy40/repository/Fzzy40Sync1509Rep.java b/src/main/java/com/fzzy/async/fzzy40/repository/Fzzy40Sync1509Rep.java
new file mode 100644
index 0000000..7432521
--- /dev/null
+++ b/src/main/java/com/fzzy/async/fzzy40/repository/Fzzy40Sync1509Rep.java
@@ -0,0 +1,28 @@
+package com.fzzy.async.fzzy40.repository;
+
+import com.fzzy.async.fzzy40.entity.Fz40Api1508;
+import com.fzzy.async.fzzy40.entity.Fz40Profit;
+import org.springframework.data.jpa.repository.JpaRepository;
+import org.springframework.data.jpa.repository.Query;
+import org.springframework.data.repository.query.Param;
+
+import java.util.Date;
+import java.util.List;
+
+/**
+ * 璐㈠姟绠$悊-鍥哄畾璧勪骇鍗$墖淇℃伅
+ *
+ * @author czt
+ * @date 2024-01-12 09:55
+ */
+public interface Fzzy40Sync1509Rep extends JpaRepository<Fz40Api1508, String> {
+
+    /**
+     *
+     * @param start
+     * @param end
+     * @return
+     */
+    @Query("from Fz40Api1508 where zhgxsj >=:start and zhgxsj <:end order by zhgxsj ")
+    List<Fz40Api1508> findDateByTime(@Param("start") Date start, @Param("end") Date end);
+}
diff --git a/src/main/java/com/fzzy/async/fzzy40/repository/Fzzy40Sync1510Rep.java b/src/main/java/com/fzzy/async/fzzy40/repository/Fzzy40Sync1510Rep.java
new file mode 100644
index 0000000..db376c8
--- /dev/null
+++ b/src/main/java/com/fzzy/async/fzzy40/repository/Fzzy40Sync1510Rep.java
@@ -0,0 +1,28 @@
+package com.fzzy.async.fzzy40.repository;
+
+import com.fzzy.async.fzzy40.entity.Fz40Api1510;
+import com.fzzy.async.fzzy40.entity.Fz40Profit;
+import org.springframework.data.jpa.repository.JpaRepository;
+import org.springframework.data.jpa.repository.Query;
+import org.springframework.data.repository.query.Param;
+
+import java.util.Date;
+import java.util.List;
+
+/**
+ * 璐㈠姟绠$悊-璧勪骇鎶樻棫淇℃伅
+ *
+ * @author czt
+ * @date 2024-01-12 09:55
+ */
+public interface Fzzy40Sync1510Rep extends JpaRepository<Fz40Api1510, String> {
+
+    /**
+     *
+     * @param start
+     * @param end
+     * @return
+     */
+    @Query("from Fz40Api1510 where zhgxsj >=:start and zhgxsj <:end order by zhgxsj ")
+    List<Fz40Api1510> findDateByTime(@Param("start") Date start, @Param("end") Date end);
+}
diff --git a/src/main/java/com/fzzy/async/fzzy40/repository/Fzzy40Sync9201Rep.java b/src/main/java/com/fzzy/async/fzzy40/repository/Fzzy40Sync9201Rep.java
new file mode 100644
index 0000000..c54d78f
--- /dev/null
+++ b/src/main/java/com/fzzy/async/fzzy40/repository/Fzzy40Sync9201Rep.java
@@ -0,0 +1,22 @@
+package com.fzzy.async.fzzy40.repository;
+
+import com.fzzy.async.fzzy40.entity.Fz40DrugLogApply;
+import org.springframework.data.jpa.repository.JpaRepository;
+import org.springframework.data.jpa.repository.Query;
+import org.springframework.data.repository.query.Param;
+
+import java.util.Date;
+import java.util.List;
+
+/**
+ * 鐔忚捀澶囨淇℃伅
+ *
+ * @Author:YAN
+ */
+public interface Fzzy40Sync9201Rep extends JpaRepository<Fz40DrugLogApply, String> {
+
+    //鏌ヨ鐔忚捀澶囨涓昏〃
+    @Query("from Fz40DrugLogApply where deptId =:deptId and updateTime >=:start and updateTime <:end order by updateTime ")
+    List<Fz40DrugLogApply> listDrugLogApply(@Param("deptId") String deptId, @Param("start") Date start, @Param("end") Date end);
+
+   }
diff --git a/src/main/java/com/fzzy/otherview/gd2022/GdApi9201.view.xml b/src/main/java/com/fzzy/otherview/gd2022/GdApi9201.view.xml
new file mode 100644
index 0000000..49fa941
--- /dev/null
+++ b/src/main/java/com/fzzy/otherview/gd2022/GdApi9201.view.xml
@@ -0,0 +1,1330 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ViewConfig>
+  <Arguments/>
+  <Context/>
+  <Model>
+    <DataType name="dtMain">
+      <Property name="creationType">com.fzzy.api.entity.Api9201</Property>
+      <PropertyDef name="bizId">
+        <Property></Property>
+        <Property name="label">涓氬姟id</Property>
+      </PropertyDef>
+      <PropertyDef name="kqdm">
+        <Property></Property>
+        <Property name="label">搴撳尯浠g爜</Property>
+      </PropertyDef>
+      <PropertyDef name="syncTime">
+        <Property name="dataType">Date</Property>
+        <Property name="label">鍚屾鏃堕棿</Property>
+      </PropertyDef>
+      <PropertyDef name="id">
+        <Property></Property>
+        <Property name="label">id</Property>
+      </PropertyDef>
+      <PropertyDef name="xzbm">
+        <Property></Property>
+        <Property name="label">鐔忚捀澶囨缂栧彿</Property>
+      </PropertyDef>
+      <PropertyDef name="kqmc">
+        <Property></Property>
+        <Property name="label">搴撳尯鍚嶇О</Property>
+      </PropertyDef>
+      <PropertyDef name="tbrq">
+        <Property name="dataType">Date</Property>
+        <Property name="label">濉姤鏃ユ湡</Property>
+      </PropertyDef>
+      <PropertyDef name="dwdm">
+        <Property></Property>
+        <Property name="label">鍗曚綅浠g爜</Property>
+      </PropertyDef>
+      <PropertyDef name="dwmc">
+        <Property></Property>
+        <Property name="label">鍗曚綅鍚嶇О</Property>
+      </PropertyDef>
+      <PropertyDef name="sqxzrq">
+        <Property name="dataType">Date</Property>
+        <Property name="label">鐢宠鐔忚捀鏃ユ湡</Property>
+      </PropertyDef>
+      <PropertyDef name="fzr">
+        <Property></Property>
+        <Property name="label">璐熻矗浜�</Property>
+      </PropertyDef>
+      <PropertyDef name="fzrdh">
+        <Property></Property>
+        <Property name="label">璐熻矗浜虹數璇�</Property>
+      </PropertyDef>
+      <PropertyDef name="xcfzr">
+        <Property></Property>
+        <Property name="label">鐜板満璐熻矗浜�</Property>
+      </PropertyDef>
+      <PropertyDef name="xcfzrzw">
+        <Property></Property>
+        <Property name="label">鐜板満璐熻矗浜鸿亴鍔�</Property>
+      </PropertyDef>
+      <PropertyDef name="xcfzrdh">
+        <Property></Property>
+        <Property name="label">鐜板満璐熻矗浜虹數璇�</Property>
+      </PropertyDef>
+      <PropertyDef name="tbr">
+        <Property></Property>
+        <Property name="label">濉〃浜�</Property>
+      </PropertyDef>
+      <PropertyDef name="tbrdh">
+        <Property></Property>
+        <Property name="label">濉〃浜虹數璇�</Property>
+      </PropertyDef>
+      <PropertyDef name="sfszjjxd">
+        <Property></Property>
+        <Property name="label">鏄惁璁剧疆璀︽垝绾�(涓�)</Property>
+      </PropertyDef>
+      <PropertyDef name="sfszjjxx">
+        <Property></Property>
+        <Property name="label">鏄惁璁剧疆璀︽垝绾�(瑗�)</Property>
+      </PropertyDef>
+      <PropertyDef name="sfszjjxn">
+        <Property></Property>
+        <Property name="label">鏄惁璁剧疆璀︽垝绾�(鍗�)</Property>
+      </PropertyDef>
+      <PropertyDef name="sfszjjxb">
+        <Property></Property>
+        <Property name="label">鏄惁璁剧疆璀︽垝绾�(鍖�)</Property>
+      </PropertyDef>
+      <PropertyDef name="ssxzzystqybqk">
+        <Property></Property>
+        <Property name="label">瀹炴柦鐔忚捀浣滀笟鏃跺ぉ姘旈鎶ユ儏鍐�</Property>
+      </PropertyDef>
+      <PropertyDef name="xzssgcap">
+        <Property></Property>
+        <Property name="label">鐔忚捀瀹夋帓鍙婂疄鏂借繃绋�</Property>
+      </PropertyDef>
+      <PropertyDef name="aqfhjyjcccs">
+        <Property></Property>
+        <Property name="label">瀹夊叏闃叉姢鍙婂簲鎬ュ缃帾鏂�</Property>
+      </PropertyDef>
+      <PropertyDef name="xzzysx">
+        <Property></Property>
+        <Property name="label">鐔忚捀娉ㄦ剰浜嬮」</Property>
+      </PropertyDef>
+      <PropertyDef name="fileStorageId">
+        <Property></Property>
+        <Property name="label">鏂囦欢瀛樺偍ID</Property>
+      </PropertyDef>
+      <PropertyDef name="yjmc">
+        <Property></Property>
+        <Property name="label">鑽墏鍚嶇О</Property>
+      </PropertyDef>
+      <PropertyDef name="yjlx">
+        <Property></Property>
+        <Property name="label">鑽墏绫诲瀷/鍨嬪彿</Property>
+      </PropertyDef>
+      <PropertyDef name="yjyxqz">
+        <Property name="dataType">Date</Property>
+        <Property name="label">鑽墏鏈夋晥鏈熻嚦</Property>
+      </PropertyDef>
+      <PropertyDef name="lqsl">
+        <Property name="dataType">Double</Property>
+        <Property name="label">棰嗗彇鏁伴噺</Property>
+      </PropertyDef>
+      <PropertyDef name="sysbjfs">
+        <Property></Property>
+        <Property name="label">鏂借嵂璁惧鍙婃柟寮�</Property>
+      </PropertyDef>
+      <PropertyDef name="zcdd">
+        <Property></Property>
+        <Property name="label">鏆傚瓨鍦扮偣</Property>
+      </PropertyDef>
+      <PropertyDef name="lqr">
+        <Property></Property>
+        <Property name="label">棰嗗彇浜�</Property>
+      </PropertyDef>
+      <PropertyDef name="lqrq">
+        <Property name="dataType">Date</Property>
+        <Property name="label">棰嗗彇鏃堕棿</Property>
+      </PropertyDef>
+      <PropertyDef name="czbz">
+        <Property></Property>
+        <Property name="label">鎿嶄綔鏍囧織</Property>
+      </PropertyDef>
+      <PropertyDef name="zhgxsj">
+        <Property name="dataType">Date</Property>
+        <Property name="label">鏇存柊鏃堕棿</Property>
+      </PropertyDef>
+      <PropertyDef name="dtls">
+        <Property></Property>
+        <Property name="dataType">[dtDtl]</Property>
+      </PropertyDef>
+      <PropertyDef name="ways">
+        <Property></Property>
+        <Property name="dataType">[dtWay]</Property>
+      </PropertyDef>
+      <PropertyDef name="peoples">
+        <Property></Property>
+        <Property name="dataType">[dtPeople]</Property>
+      </PropertyDef>
+    </DataType>
+    <DataType name="dtGBArea">
+      <Property name="creationType">com.fzzy.api.entity.GbArea</Property>
+      <PropertyDef name="code">
+        <Property></Property>
+        <Property name="label">鎺ュ彛缂栫爜</Property>
+      </PropertyDef>
+      <PropertyDef name="name">
+        <Property></Property>
+        <Property name="label">鍚嶇О</Property>
+      </PropertyDef>
+      <PropertyDef name="parentCode">
+        <Property></Property>
+        <Property name="label">鐖剁紪鐮�</Property>
+      </PropertyDef>
+      <PropertyDef name="disabledTag">
+        <Property></Property>
+        <Property name="label">绂佺敤</Property>
+      </PropertyDef>
+      <PropertyDef name="simple">
+        <Property></Property>
+        <Property name="label">鏄惁榛樿</Property>
+      </PropertyDef>
+      <PropertyDef name="remark">
+        <Property></Property>
+        <Property name="label">澶囨敞璇存槑</Property>
+      </PropertyDef>
+    </DataType>
+    <DataType name="dtLog">
+      <Property name="creationType">com.fzzy.api.entity.ApiLog</Property>
+      <PropertyDef name="id">
+        <Property></Property>
+      </PropertyDef>
+      <PropertyDef name="kqdm">
+        <Property></Property>
+        <Property name="label">搴撳尯浠g爜</Property>
+      </PropertyDef>
+      <PropertyDef name="inteId">
+        <Property></Property>
+        <Property name="label">鎺ュ彛缂栧彿</Property>
+      </PropertyDef>
+      <PropertyDef name="uploadTime">
+        <Property name="dataType">Date</Property>
+        <Property name="label">涓婁紶鏃堕棿</Property>
+      </PropertyDef>
+      <PropertyDef name="status">
+        <Property name="dataType">int</Property>
+        <Property name="label">涓婁紶缁撴灉</Property>
+      </PropertyDef>
+      <PropertyDef name="result">
+        <Property></Property>
+        <Property name="label">杩斿洖淇℃伅</Property>
+      </PropertyDef>
+      <PropertyDef name="dataId">
+        <Property></Property>
+        <Property name="label">鎺ュ彛鏁版嵁涓婚敭</Property>
+      </PropertyDef>
+      <PropertyDef name="data">
+        <Property></Property>
+        <Property name="label">鎺ュ彛鎶ユ枃</Property>
+      </PropertyDef>
+    </DataType>
+    <DataType name="dtParam">
+      <Property name="creationType">com.fzzy.api.data.ApiParam</Property>
+      <PropertyDef name="kqdm">
+        <Property></Property>
+        <Property name="label">鎵�灞炲簱鍖�</Property>
+      </PropertyDef>
+      <PropertyDef name="start">
+        <Property name="dataType">Date</Property>
+        <Property name="label">寮�濮嬫椂闂�</Property>
+      </PropertyDef>
+      <PropertyDef name="end">
+        <Property name="dataType">Date</Property>
+        <Property name="label">鎴鏃堕棿</Property>
+      </PropertyDef>
+      <PropertyDef name="czbz">
+        <Property></Property>
+        <Property name="label">鎿嶄綔鏍囧織</Property>
+        <Property name="mapping">
+          <Property name="mapValues">${dorado.getDataProvider(&quot;apiTriggerService#trigger&quot;).getResult(&quot;CZBZ&quot;)}</Property>
+          <Property name="keyProperty">code</Property>
+          <Property name="valueProperty">name</Property>
+        </Property>
+      </PropertyDef>
+    </DataType>
+    <DataType name="dtPeople">
+      <Property name="creationType">com.fzzy.push.gd2022.dto.Gd2022Api1023People</Property>
+      <PropertyDef name="xm">
+        <Property></Property>
+        <Property name="label">濮撳悕</Property>
+      </PropertyDef>
+      <PropertyDef name="zw">
+        <Property></Property>
+        <Property name="label">鑱屽姟</Property>
+      </PropertyDef>
+      <PropertyDef name="zyzg">
+        <Property></Property>
+        <Property name="label">鑱屼笟璧勬牸</Property>
+      </PropertyDef>
+      <PropertyDef name="stzk">
+        <Property></Property>
+        <Property name="label">韬綋鐘跺喌</Property>
+      </PropertyDef>
+      <PropertyDef name="xzrwfg">
+        <Property></Property>
+        <Property name="label">鐔忚捀浠诲姟鍒嗗伐</Property>
+      </PropertyDef>
+      <PropertyDef name="sfwb">
+        <Property></Property>
+        <Property name="label">鏄惁澶栧寘</Property>
+      </PropertyDef>
+    </DataType>
+    <DataType name="dtWay">
+      <Property name="creationType">com.fzzy.push.gd2022.dto.Gd2022Api1023Way</Property>
+      <PropertyDef name="xznd">
+        <Property></Property>
+        <Property name="label">璁惧畾鐔忚捀娴撳害(ml/m3)</Property>
+        <Property name="dataType">Double</Property>
+        <Property name="displayFormat">#0.000</Property>
+      </PropertyDef>
+      <PropertyDef name="mbsj">
+        <Property></Property>
+        <Property name="label">瀵嗛棴鏃堕棿(澶�)</Property>
+        <Property name="dataType">Integer</Property>
+      </PropertyDef>
+      <PropertyDef name="xzfs">
+        <Property></Property>
+        <Property name="label">鐔忚捀鏂瑰紡</Property>
+      </PropertyDef>
+      <PropertyDef name="sqfs">
+        <Property></Property>
+        <Property name="label">鏁f皵鏂瑰紡</Property>
+      </PropertyDef>
+    </DataType>
+    <DataType name="dtDtl">
+      <Property name="creationType">com.fzzy.push.gd2022.dto.Gd2022Api1023Dtl</Property>
+      <PropertyDef name="cfdm">
+        <Property></Property>
+        <Property name="label">浠撴埧/娌圭綈浠g爜</Property>
+      </PropertyDef>
+      <PropertyDef name="lspzdm">
+        <Property></Property>
+        <Property name="label">绮鍝佺浠g爜</Property>
+        <Property name="mapping">
+          <Property name="mapValues">${dorado.getDataProvider(&quot;apiTriggerService#trigger&quot;).getResult(&quot;LSPZ&quot;)}</Property>
+          <Property name="keyProperty">code</Property>
+          <Property name="valueProperty">name</Property>
+        </Property>
+      </PropertyDef>
+      <PropertyDef name="lsxzdm">
+        <Property></Property>
+        <Property name="label">绮鎬ц川浠g爜</Property>
+        <Property name="mapping">
+          <Property name="mapValues">${dorado.getDataProvider(&quot;apiTriggerService#trigger&quot;).getResult(&quot;LSXZ&quot;)}</Property>
+          <Property name="keyProperty">code</Property>
+          <Property name="valueProperty">name</Property>
+        </Property>
+      </PropertyDef>
+      <PropertyDef name="lsdjdm">
+        <Property></Property>
+        <Property name="label">绮绛夌骇浠g爜</Property>
+        <Property name="mapping">
+          <Property name="keyProperty">code</Property>
+          <Property name="mapValues">${dorado.getDataProvider(&quot;apiTriggerService#trigger&quot;).getResult(&quot;LSDJ&quot;)}</Property>
+          <Property name="valueProperty">name</Property>
+        </Property>
+      </PropertyDef>
+      <PropertyDef name="lssl">
+        <Property name="dataType">Double</Property>
+        <Property name="label">绮鏁伴噺(鍚�)</Property>
+        <Property name="displayFormat">#0.000</Property>
+      </PropertyDef>
+      <PropertyDef name="sf">
+        <Property name="dataType">Double</Property>
+        <Property name="label">姘翠唤</Property>
+        <Property name="displayFormat">#0.000</Property>
+      </PropertyDef>
+      <PropertyDef name="zz">
+        <Property name="dataType">Double</Property>
+        <Property name="label">鏉傚織</Property>
+        <Property name="displayFormat">#0.000</Property>
+      </PropertyDef>
+      <PropertyDef name="lw">
+        <Property name="dataType">Double</Property>
+        <Property name="label">绮俯</Property>
+        <Property name="displayFormat">#0.000</Property>
+      </PropertyDef>
+      <PropertyDef name="cw">
+        <Property name="dataType">Double</Property>
+        <Property name="label">浠撴俯</Property>
+        <Property name="displayFormat">#0.000</Property>
+      </PropertyDef>
+      <PropertyDef name="cnsd">
+        <Property name="dataType">Double</Property>
+        <Property name="label">浠撳唴婀垮害</Property>
+        <Property name="displayFormat">#0.000</Property>
+      </PropertyDef>
+      <PropertyDef name="clfs">
+        <Property></Property>
+        <Property name="label">鍌ㄧ伯鏂瑰紡</Property>
+      </PropertyDef>
+      <PropertyDef name="rkrq">
+        <Property name="dataType">Date</Property>
+        <Property name="label">鍏ュ簱鏃ユ湡</Property>
+      </PropertyDef>
+      <PropertyDef name="hc">
+        <Property></Property>
+        <Property name="label">瀹宠櫕</Property>
+      </PropertyDef>
+      <PropertyDef name="cldjpd">
+        <Property></Property>
+        <Property name="label">铏伯绛夌骇鍒ゅ畾</Property>
+        <Property name="mapping">
+          <Property name="mapValues">${dorado.getDataProvider(&quot;apiTriggerService#trigger&quot;).getResult(&quot;CLDJPD&quot;)}</Property>
+          <Property name="keyProperty">code</Property>
+          <Property name="valueProperty">name</Property>
+        </Property>
+      </PropertyDef>
+      <PropertyDef name="ldtj">
+        <Property name="dataType">Double</Property>
+        <Property name="label">绮爢浣撶Н(m3)</Property>
+        <Property name="displayFormat">#0.000</Property>
+      </PropertyDef>
+      <PropertyDef name="kjtj">
+        <Property name="dataType">Double</Property>
+        <Property name="label">绌洪棿浣撶Н(m3)</Property>
+        <Property name="displayFormat">#0.000</Property>
+      </PropertyDef>
+      <PropertyDef name="lddwyyl">
+        <Property name="dataType">Double</Property>
+        <Property name="label">绮爢鍗曚綅鐢ㄨ嵂閲�</Property>
+        <Property name="displayFormat">#0.000</Property>
+      </PropertyDef>
+      <PropertyDef name="kjdwyyl">
+        <Property name="dataType">Double</Property>
+        <Property name="label">绌洪棿鍗曚綅鐢ㄨ嵂閲�</Property>
+        <Property name="displayFormat">#0.000</Property>
+      </PropertyDef>
+      <PropertyDef name="zyyl">
+        <Property name="dataType">Double</Property>
+        <Property name="label">鎬荤敤鑽噺</Property>
+        <Property name="displayFormat">#0.000</Property>
+      </PropertyDef>
+      <PropertyDef name="qmx">
+        <Property></Property>
+        <Property name="label">姘斿瘑鎬�</Property>
+      </PropertyDef>
+      <PropertyDef name="jhxzksrq">
+        <Property name="dataType">Date</Property>
+        <Property name="label">璁″垝鐔忚捀寮�濮嬫棩鏈�</Property>
+      </PropertyDef>
+      <PropertyDef name="jhxzjsrq">
+        <Property name="dataType">Date</Property>
+        <Property name="label">璁″垝鐔忚捀缁撴潫鏃ユ湡</Property>
+      </PropertyDef>
+      <PropertyDef name="cfmc">
+        <Property></Property>
+        <Property name="label">浠撴埧鍚嶇О</Property>
+      </PropertyDef>
+    </DataType>
+  </Model>
+  <View layout="regionPadding:10">
+    <Property name="packages">font-awesome,css-common</Property>
+    <DataSet id="dsMain">
+      <Property name="dataType">[dtMain]</Property>
+      <Property name="dataProvider">gDApi9201PR#pageList</Property>
+      <Property name="pageSize">20</Property>
+    </DataSet>
+    <DataSet id="dsQuery">
+      <ClientEvent name="onReady">self.insert();</ClientEvent>
+      <Property name="dataType">dtParam</Property>
+    </DataSet>
+    <AutoForm>
+      <Property name="dataSet">dsQuery</Property>
+      <Property name="cols">*,*,*,*</Property>
+      <Property name="labelAlign">right</Property>
+      <Property name="labelSeparator">锛�</Property>
+      <Property name="labelWidth">90</Property>
+      <AutoFormElement>
+        <Property name="name">kqdm</Property>
+        <Property name="property">kqdm</Property>
+        <Editor/>
+      </AutoFormElement>
+      <AutoFormElement>
+        <Property name="name">start</Property>
+        <Property name="property">start</Property>
+        <Editor/>
+      </AutoFormElement>
+      <AutoFormElement>
+        <Property name="name">end</Property>
+        <Property name="property">end</Property>
+        <Editor/>
+      </AutoFormElement>
+      <AutoFormElement>
+        <Property name="name">czbz</Property>
+        <Property name="property">czbz</Property>
+        <Property name="trigger">autoMappingDropDown2</Property>
+        <Editor/>
+      </AutoFormElement>
+    </AutoForm>
+    <ToolBar>
+      <ToolBarLabel>
+        <Property name="text">宸ュ叿鏍忥細</Property>
+        <Property name="style">
+          <Property name="font-weight">bold</Property>
+        </Property>
+      </ToolBarLabel>
+      <ToolBarButton>
+        <ClientEvent name="onClick">view.get(&quot;#dsMain&quot;).flushAsync();</ClientEvent>
+        <Property name="caption">鍒锋柊</Property>
+        <Property name="iconClass">fa fa-search</Property>
+        <Property name="width">100</Property>
+        <Property name="exClassName">toolbar-button-push</Property>
+      </ToolBarButton>
+      <ToolBarButton>
+        <ClientEvent name="onClick">view.get(&quot;#dsMain&quot;).insert();&#xD;
+view.get(&quot;#dialogMain&quot;).show();</ClientEvent>
+        <Property name="caption">鏂板</Property>
+        <Property name="iconClass">fa fa-plus</Property>
+        <Property name="width">100</Property>
+        <Property name="exClassName">toolbar-button</Property>
+      </ToolBarButton>
+      <ToolBarButton>
+        <ClientEvent name="onClick">var cur = view.get(&quot;#dgMain&quot;).getCurrentItem();&#xD;
+if(cur){&#xD;
+	view.get(&quot;#dialogMain&quot;).show();&#xD;
+}else{&#xD;
+	$alert(&quot;璇峰嬀閫夐渶瑕佷慨鏀圭殑鏁版嵁锛�&quot;);&#xD;
+}&#xD;
+</ClientEvent>
+        <Property name="caption">淇敼</Property>
+        <Property name="iconClass">fa fa-pencil</Property>
+        <Property name="width">100</Property>
+        <Property name="exClassName">toolbar-button-warm</Property>
+      </ToolBarButton>
+      <Separator/>
+      <ToolBarButton>
+        <ClientEvent name="onClick">var cur = view.get(&quot;#dgMain&quot;).getCurrentItem();&#xD;
+if(cur){&#xD;
+	view.get(&quot;#ajaxDelUpdate&quot;).set(&quot;parameter&quot;,cur).execute(function(result){&#xD;
+		if(result){&#xD;
+			$alert(result);&#xD;
+		} else{&#xD;
+			cur.set(&quot;czbz&quot;,&quot;d&quot;);&#xD;
+		}&#xD;
+	});&#xD;
+}else{&#xD;
+	$alert(&quot;璇峰嬀閫夐渶瑕佹爣璁板垹闄ょ殑鏁版嵁锛�&quot;);&#xD;
+}&#xD;
+</ClientEvent>
+        <Property name="caption">鏍囪鍒犻櫎</Property>
+        <Property name="iconClass">fa fa-minus</Property>
+        <Property name="exClassName">toolbar-button-warn</Property>
+        <Property name="width">100</Property>
+      </ToolBarButton>
+      <ToolBarButton>
+        <ClientEvent name="onClick">var cur = view.get(&quot;#dgMain&quot;).getCurrentItem();&#xD;
+if(cur){&#xD;
+	view.get(&quot;#ajaxDel&quot;).set(&quot;parameter&quot;,cur).execute(function(result){&#xD;
+		if(result){&#xD;
+			$alert(result);&#xD;
+		} else{&#xD;
+			cur.remove();&#xD;
+		}&#xD;
+	});&#xD;
+}else{&#xD;
+	$alert(&quot;璇峰嬀閫夐渶瑕佸垹闄ょ殑鏁版嵁锛�&quot;);&#xD;
+}</ClientEvent>
+        <Property name="caption">鐩存帴鍒犻櫎</Property>
+        <Property name="iconClass">fa fa-minus</Property>
+        <Property name="exClassName">toolbar-button-warn</Property>
+        <Property name="width">100</Property>
+      </ToolBarButton>
+      <Separator/>
+      <ToolBarButton>
+        <ClientEvent name="onClick">var cur = view.get(&quot;#dgMain&quot;).getCurrentItem();&#xD;
+if(cur){&#xD;
+	view.get(&quot;#dialogDtl&quot;).show();&#xD;
+}else{&#xD;
+	$alert(&quot;璇峰嬀閫夐渶瑕佷慨鏀圭殑鏁版嵁锛�&quot;);&#xD;
+}</ClientEvent>
+        <Property name="exClassName">toolbar-button-warm</Property>
+        <Property name="iconClass">fa fa-search</Property>
+        <Property name="width">100</Property>
+        <Property name="caption">鏌ョ湅璇︽儏</Property>
+      </ToolBarButton>
+      <ToolBarButton>
+        <ClientEvent name="onClick">var select = view.get(&quot;#dgMain&quot;).get(&quot;selection&quot;);&#xD;
+if(select &amp;&amp; select.length > 0){&#xD;
+	view.get(&quot;#ajaxPush&quot;).set(&quot;parameter&quot;,select).execute(function(result){&#xD;
+		view.get(&quot;#dsMain&quot;).flushAsync();&#xD;
+		$notify(result);&#xD;
+	});&#xD;
+}else{&#xD;
+	$alert(&quot;璇峰嬀閫夐渶瑕佷笂鎶ョ殑鏁版嵁锛�&quot;);&#xD;
+}</ClientEvent>
+        <Property name="caption">鎵嬪姩涓婁紶</Property>
+        <Property name="iconClass">fa fa-hand-o-up</Property>
+        <Property name="exClassName">toolbar-button-push</Property>
+        <Property name="width">100</Property>
+      </ToolBarButton>
+      <Fill/>
+      <ToolBarButton>
+        <ClientEvent name="onClick">//鏄剧ず璁板綍&#xD;
+view.get(&quot;#iFrame&quot;).reload();&#xD;
+view.get(&quot;#dialogLog&quot;).show();</ClientEvent>
+        <Property name="caption">涓婁紶璁板綍</Property>
+        <Property name="iconClass">fa fa-bars</Property>
+        <Property name="exClassName">toolbar-button</Property>
+      </ToolBarButton>
+    </ToolBar>
+    <DataGrid id="dgMain">
+      <Property name="dataSet">dsMain</Property>
+      <Property name="selectionMode">multiRows</Property>
+      <Property name="readOnly">true</Property>
+      <RowNumColumn/>
+      <RowSelectorColumn>
+        <Property name="caption">涓婁紶</Property>
+      </RowSelectorColumn>
+      <DataColumn name="xzbm">
+        <Property name="property">xzbm</Property>
+        <Property name="align">center</Property>
+      </DataColumn>
+      <DataColumn name="kqmc">
+        <Property name="property">kqmc</Property>
+        <Property name="align">center</Property>
+      </DataColumn>
+      <DataColumn name="tbrq">
+        <Property name="property">tbrq</Property>
+        <Property name="align">center</Property>
+      </DataColumn>
+      <DataColumn name="dwdm">
+        <Property name="property">dwdm</Property>
+        <Property name="align">center</Property>
+      </DataColumn>
+      <DataColumn name="fzr">
+        <Property name="property">fzr</Property>
+        <Property name="align">center</Property>
+      </DataColumn>
+      <DataColumn name="fzrdh">
+        <Property name="property">fzrdh</Property>
+        <Property name="align">center</Property>
+      </DataColumn>
+      <DataColumn name="xcfzr">
+        <Property name="property">xcfzr</Property>
+        <Property name="align">center</Property>
+      </DataColumn>
+      <DataColumn name="czbz">
+        <Property name="property">czbz</Property>
+        <Property name="align">center</Property>
+      </DataColumn>
+      <DataColumn name="zhgxsj">
+        <Property name="property">zhgxsj</Property>
+        <Property name="align">center</Property>
+      </DataColumn>
+    </DataGrid>
+    <ToolBar layoutConstraint="bottom">
+      <Fill/>
+      <DataPilot>
+        <Property name="itemCodes">pageSize,pages</Property>
+        <Property name="dataSet">dsMain</Property>
+      </DataPilot>
+    </ToolBar>
+    <Dialog id="dialogMain" layout="regionPadding:5">
+      <Property name="width">85%</Property>
+      <Property name="closeable">false</Property>
+      <Property name="iconClass">fa fa-sliders</Property>
+      <Property name="caption">鐔忚捀澶囨淇℃伅</Property>
+      <Property name="height">85%</Property>
+      <Buttons>
+        <Button>
+          <ClientEvent name="onClick">var cur = view.get(&quot;#dgMain&quot;).getCurrentItem();&#xD;
+view.get(&quot;#updateSave&quot;).execute(function(){&#xD;
+	self.get(&quot;parent&quot;).hide();&#xD;
+});</ClientEvent>
+          <Property name="caption">纭畾</Property>
+          <Property name="iconClass">fa fa-check</Property>
+        </Button>
+        <Button>
+          <ClientEvent name="onClick">var cur = view.get(&quot;#dgMain&quot;).getCurrentItem();&#xD;
+self.get(&quot;parent&quot;).hide();&#xD;
+if(cur) cur.cancel();</ClientEvent>
+          <Property name="caption">鍙栨秷</Property>
+          <Property name="iconClass">fa fa-times</Property>
+        </Button>
+      </Buttons>
+      <Children>
+        <FieldSet layout="regionPadding:5">
+          <Property name="caption">鍩虹淇℃伅</Property>
+          <Buttons/>
+          <Children>
+            <AutoForm>
+              <Property name="dataSet">dsMain</Property>
+              <Property name="cols">*,*,*,*</Property>
+              <Property name="labelPosition">top</Property>
+              <Property name="labelSeparator">:</Property>
+              <AutoFormElement>
+                <Property name="name">xzbm</Property>
+                <Property name="property">xzbm</Property>
+                <Editor/>
+              </AutoFormElement>
+              <AutoFormElement>
+                <Property name="name">kqdm</Property>
+                <Property name="property">kqdm</Property>
+                <Editor/>
+              </AutoFormElement>
+              <AutoFormElement>
+                <Property name="name">kqmc</Property>
+                <Property name="property">kqmc</Property>
+                <Editor/>
+              </AutoFormElement>
+              <AutoFormElement>
+                <Property name="name">tbrq</Property>
+                <Property name="property">tbrq</Property>
+                <Editor/>
+              </AutoFormElement>
+              <AutoFormElement>
+                <Property name="name">dwdm</Property>
+                <Property name="property">dwdm</Property>
+                <Editor/>
+              </AutoFormElement>
+              <AutoFormElement>
+                <Property name="name">dwmc</Property>
+                <Property name="property">dwmc</Property>
+                <Editor/>
+              </AutoFormElement>
+              <AutoFormElement>
+                <Property name="name">sqxzrq</Property>
+                <Property name="property">sqxzrq</Property>
+                <Editor/>
+              </AutoFormElement>
+              <AutoFormElement>
+                <Property name="name">fzr</Property>
+                <Property name="property">fzr</Property>
+                <Editor/>
+              </AutoFormElement>
+              <AutoFormElement>
+                <Property name="name">fzrdh</Property>
+                <Property name="property">fzrdh</Property>
+                <Editor/>
+              </AutoFormElement>
+              <AutoFormElement>
+                <Property name="name">xcfzr</Property>
+                <Property name="property">xcfzr</Property>
+                <Editor/>
+              </AutoFormElement>
+              <AutoFormElement>
+                <Property name="name">xcfzrzw</Property>
+                <Property name="property">xcfzrzw</Property>
+                <Editor/>
+              </AutoFormElement>
+              <AutoFormElement>
+                <Property name="name">xcfzrdh</Property>
+                <Property name="property">xcfzrdh</Property>
+                <Editor/>
+              </AutoFormElement>
+              <AutoFormElement>
+                <Property name="name">tbr</Property>
+                <Property name="property">tbr</Property>
+                <Editor/>
+              </AutoFormElement>
+              <AutoFormElement>
+                <Property name="name">tbrdh</Property>
+                <Property name="property">tbrdh</Property>
+                <Editor/>
+              </AutoFormElement>
+              <AutoFormElement>
+                <Property name="name">sfszjjxd</Property>
+                <Property name="property">sfszjjxd</Property>
+                <Editor/>
+              </AutoFormElement>
+              <AutoFormElement>
+                <Property name="name">sfszjjxx</Property>
+                <Property name="property">sfszjjxx</Property>
+                <Editor/>
+              </AutoFormElement>
+              <AutoFormElement>
+                <Property name="name">sfszjjxn</Property>
+                <Property name="property">sfszjjxn</Property>
+                <Editor/>
+              </AutoFormElement>
+              <AutoFormElement>
+                <Property name="name">sfszjjxb</Property>
+                <Property name="property">sfszjjxb</Property>
+                <Editor/>
+              </AutoFormElement>
+              <AutoFormElement>
+                <Property name="name">ssxzzystqybqk</Property>
+                <Property name="property">ssxzzystqybqk</Property>
+                <Editor/>
+              </AutoFormElement>
+              <AutoFormElement>
+                <Property name="name">xzssgcap</Property>
+                <Property name="property">xzssgcap</Property>
+                <Editor/>
+              </AutoFormElement>
+              <AutoFormElement>
+                <Property name="name">aqfhjyjcccs</Property>
+                <Property name="property">aqfhjyjcccs</Property>
+                <Editor/>
+              </AutoFormElement>
+              <AutoFormElement>
+                <Property name="name">xzzysx</Property>
+                <Property name="property">xzzysx</Property>
+                <Editor/>
+              </AutoFormElement>
+              <AutoFormElement>
+                <Property name="name">fileStorageId</Property>
+                <Property name="property">fileStorageId</Property>
+                <Editor/>
+              </AutoFormElement>
+              <AutoFormElement>
+                <Property name="name">yjmc</Property>
+                <Property name="property">yjmc</Property>
+                <Editor/>
+              </AutoFormElement>
+              <AutoFormElement>
+                <Property name="name">yjlx</Property>
+                <Property name="property">yjlx</Property>
+                <Editor/>
+              </AutoFormElement>
+              <AutoFormElement>
+                <Property name="name">yjyxqz</Property>
+                <Property name="property">yjyxqz</Property>
+                <Editor/>
+              </AutoFormElement>
+              <AutoFormElement>
+                <Property name="name">lqsl</Property>
+                <Property name="property">lqsl</Property>
+                <Editor/>
+              </AutoFormElement>
+              <AutoFormElement>
+                <Property name="name">sysbjfs</Property>
+                <Property name="property">sysbjfs</Property>
+                <Editor/>
+              </AutoFormElement>
+              <AutoFormElement>
+                <Property name="name">zcdd</Property>
+                <Property name="property">zcdd</Property>
+                <Editor/>
+              </AutoFormElement>
+              <AutoFormElement>
+                <Property name="name">lqr</Property>
+                <Property name="property">lqr</Property>
+                <Editor/>
+              </AutoFormElement>
+              <AutoFormElement>
+                <Property name="name">lqrq</Property>
+                <Property name="property">lqrq</Property>
+                <Editor/>
+              </AutoFormElement>
+              <AutoFormElement>
+                <Property name="name">czbz</Property>
+                <Property name="property">czbz</Property>
+                <Editor/>
+              </AutoFormElement>
+              <AutoFormElement>
+                <Property name="name">zhgxsj</Property>
+                <Property name="property">zhgxsj</Property>
+                <Editor/>
+              </AutoFormElement>
+            </AutoForm>
+          </Children>
+        </FieldSet>
+        <FieldSet layout="regionPadding:5">
+          <Property name="caption">鐔忚捀浣滀笟浜哄憳淇℃伅</Property>
+          <Buttons/>
+          <Children>
+            <Panel layout="regionPadding:5">
+              <Property name="caption">浜哄憳淇℃伅</Property>
+              <Property name="height">400</Property>
+              <Buttons/>
+              <Children>
+                <Container layout="regionPadding:10">
+                  <Property name="exClassName">bg-color</Property>
+                  <Property name="contentOverflow">hidden</Property>
+                  <Property name="height">55</Property>
+                  <Label layoutConstraint="left">
+                    <Property name="text">鑿滃崟鏍忥細</Property>
+                  </Label>
+                  <Button layoutConstraint="left">
+                    <ClientEvent name="onClick">var list = view.get(&quot;#dsMain.data:#&quot;).get(&quot;way&quot;);&#xD;
+list.insert({});</ClientEvent>
+                    <Property name="caption">鏂板</Property>
+                    <Property name="exClassName">btn-default</Property>
+                    <Property name="iconClass">fa fa-plus</Property>
+                  </Button>
+                  <Button layoutConstraint="left">
+                    <ClientEvent name="onClick">var data = view.get(&quot;#dataPeoples.currentEntity&quot;);&#xD;
+if(!data){&#xD;
+ return;&#xD;
+}&#xD;
+data.remove();</ClientEvent>
+                    <Property name="caption">鍒犻櫎</Property>
+                    <Property name="iconClass">fa fa-minus</Property>
+                    <Property name="exClassName">btn-warn</Property>
+                  </Button>
+                </Container>
+                <DataGrid id="dataPeoples">
+                  <Property name="dataPath">#.peoples</Property>
+                  <Property name="dataSet">dsMain</Property>
+                  <DataColumn name="xm">
+                    <Property name="property">xm</Property>
+                    <Property name="align">center</Property>
+                  </DataColumn>
+                  <DataColumn name="zw">
+                    <Property name="property">zw</Property>
+                    <Property name="align">center</Property>
+                  </DataColumn>
+                  <DataColumn name="zyzg">
+                    <Property name="property">zyzg</Property>
+                    <Property name="trigger">listDropZG</Property>
+                    <Property name="align">center</Property>
+                  </DataColumn>
+                  <DataColumn name="stzk">
+                    <Property name="property">stzk</Property>
+                    <Property name="align">center</Property>
+                  </DataColumn>
+                  <DataColumn name="xzrwfg">
+                    <Property name="property">xzrwfg</Property>
+                    <Property name="align">center</Property>
+                  </DataColumn>
+                  <DataColumn name="sfwb">
+                    <Property name="property">sfwb</Property>
+                    <Property name="trigger">listDropYN</Property>
+                    <Property name="align">center</Property>
+                  </DataColumn>
+                </DataGrid>
+              </Children>
+              <Tools/>
+            </Panel>
+          </Children>
+        </FieldSet>
+        <FieldSet layout="regionPadding:5">
+          <Property name="caption">鐔忚捀澶囨鏂瑰紡淇℃伅</Property>
+          <Buttons/>
+          <Children>
+            <Panel layout="regionPadding:5">
+              <Property name="caption">鐔忚捀澶囨鏂瑰紡</Property>
+              <Property name="height">400</Property>
+              <Buttons/>
+              <Children>
+                <Container layout="regionPadding:10">
+                  <Property name="exClassName">bg-color</Property>
+                  <Property name="contentOverflow">hidden</Property>
+                  <Property name="height">55</Property>
+                  <Label layoutConstraint="left">
+                    <Property name="text">鑿滃崟鏍忥細</Property>
+                  </Label>
+                  <Button layoutConstraint="left">
+                    <ClientEvent name="onClick">var list = view.get(&quot;#dsMain.data:#&quot;).get(&quot;drugLogWays&quot;);&#xD;
+list.insert({});</ClientEvent>
+                    <Property name="caption">鏂板</Property>
+                    <Property name="exClassName">btn-default</Property>
+                    <Property name="iconClass">fa fa-plus</Property>
+                  </Button>
+                  <Button layoutConstraint="left">
+                    <ClientEvent name="onClick">var data = view.get(&quot;#dataWays.currentEntity&quot;);&#xD;
+if(!data){&#xD;
+ return;&#xD;
+}&#xD;
+data.remove();</ClientEvent>
+                    <Property name="caption">鍒犻櫎</Property>
+                    <Property name="iconClass">fa fa-minus</Property>
+                    <Property name="exClassName">btn-warn</Property>
+                  </Button>
+                </Container>
+                <DataGrid id="dataWays">
+                  <Property name="dataPath">#.ways</Property>
+                  <Property name="dataSet">dsMain</Property>
+                  <DataColumn name="xznd">
+                    <Property name="property">xznd</Property>
+                    <Property name="align">center</Property>
+                  </DataColumn>
+                  <DataColumn name="mbsj">
+                    <Property name="property">mbsj</Property>
+                    <Property name="align">center</Property>
+                  </DataColumn>
+                  <DataColumn name="xzfs">
+                    <Property name="property">xzfs</Property>
+                    <Property name="align">center</Property>
+                  </DataColumn>
+                  <DataColumn name="sqfs">
+                    <Property name="property">sqfs</Property>
+                    <Property name="align">center</Property>
+                  </DataColumn>
+                </DataGrid>
+              </Children>
+              <Tools/>
+            </Panel>
+          </Children>
+        </FieldSet>
+      </Children>
+      <Tools/>
+    </Dialog>
+    <Dialog id="dialogDtl" layout="regionPadding:5">
+      <Property name="caption">鐔忚捀浣滀笟鐨勫偍绮伯鎯�</Property>
+      <Property name="width">90%</Property>
+      <Property name="iconClass">fa fa-sliders</Property>
+      <Property name="height">90%</Property>
+      <Buttons>
+        <Button>
+          <ClientEvent name="onClick">self.get(&quot;parent&quot;).hide();</ClientEvent>
+          <Property name="caption">纭畾</Property>
+          <Property name="iconClass">fa fa-check</Property>
+        </Button>
+        <Button>
+          <ClientEvent name="onClick">var cur = view.get(&quot;#dgMain&quot;).getCurrentItem();&#xD;
+self.get(&quot;parent&quot;).hide();&#xD;
+if(cur) cur.cancel();</ClientEvent>
+          <Property name="caption">鍙栨秷</Property>
+          <Property name="iconClass">fa fa-times</Property>
+        </Button>
+      </Buttons>
+      <Children>
+        <FieldSet layout="regionPadding:5">
+          <Property name="caption">鐔忚捀浣滀笟鐨勫偍绮伯鎯呮槑缁�</Property>
+          <Buttons/>
+          <Children>
+            <Panel layout="regionPadding:5">
+              <Property name="caption">鍌ㄧ伯绮儏鏄庣粏</Property>
+              <Buttons/>
+              <Children>
+                <Container layout="regionPadding:10">
+                  <Property name="exClassName">bg-color</Property>
+                  <Property name="contentOverflow">hidden</Property>
+                  <Property name="height">55</Property>
+                  <Label layoutConstraint="left">
+                    <Property name="text">鑿滃崟鏍忥細</Property>
+                  </Label>
+                  <Button layoutConstraint="left">
+                    <ClientEvent name="onClick">var list = view.get(&quot;#dsMain.data:#&quot;).get(&quot;dtls&quot;);&#xD;
+list.insert();&#xD;
+view.get(&quot;#addDtl&quot;).show();</ClientEvent>
+                    <Property name="caption">鏂板</Property>
+                    <Property name="exClassName">btn-default</Property>
+                    <Property name="iconClass">fa fa-plus</Property>
+                  </Button>
+                  <Button layoutConstraint="left">
+                    <ClientEvent name="onClick">var cur = view.get(&quot;#dgDtl&quot;).getCurrentItem();&#xD;
+if(cur){&#xD;
+	view.get(&quot;#addDtl&quot;).show();&#xD;
+}else{&#xD;
+	$alert(&quot;璇峰嬀閫夐渶瑕佷慨鏀圭殑鏁版嵁锛�&quot;);&#xD;
+}</ClientEvent>
+                    <Property name="caption">淇敼</Property>
+                    <Property name="exClassName">btn-warm</Property>
+                    <Property name="iconClass">fa fa-pencil</Property>
+                  </Button>
+                  <Button layoutConstraint="left">
+                    <ClientEvent name="onClick">var list = view.get(&quot;#dsMain.data:#&quot;).get(&quot;dtls&quot;);&#xD;
+list.remove();&#xD;
+view.get(&quot;#updateDelDtl&quot;).execute(function(){&#xD;
+});</ClientEvent>
+                    <Property name="caption">鍒犻櫎</Property>
+                    <Property name="iconClass">fa fa-minus</Property>
+                    <Property name="exClassName">btn-warn</Property>
+                  </Button>
+                </Container>
+                <DataGrid id="dgDtl">
+                  <Property name="dataPath">#.dtls</Property>
+                  <Property name="dataSet">dsMain</Property>
+                  <DataColumn name="cfdm">
+                    <Property name="property">cfdm</Property>
+                    <Property name="readOnly">true</Property>
+                    <Property name="align">center</Property>
+                    <Property name="width">260</Property>
+                  </DataColumn>
+                  <DataColumn name="lspzdm">
+                    <Property name="property">lspzdm</Property>
+                    <Property name="readOnly">true</Property>
+                    <Property name="align">center</Property>
+                  </DataColumn>
+                  <DataColumn name="lsxzdm">
+                    <Property name="property">lsxzdm</Property>
+                    <Property name="readOnly">true</Property>
+                    <Property name="align">center</Property>
+                  </DataColumn>
+                  <DataColumn name="cldjpd">
+                    <Property name="property">cldjpd</Property>
+                    <Property name="readOnly">true</Property>
+                    <Property name="align">center</Property>
+                  </DataColumn>
+                  <DataColumn name="zyyl">
+                    <Property name="property">zyyl</Property>
+                    <Property name="readOnly">true</Property>
+                    <Property name="align">center</Property>
+                  </DataColumn>
+                  <DataColumn name="qmx">
+                    <Property name="property">qmx</Property>
+                    <Property name="readOnly">true</Property>
+                    <Property name="align">center</Property>
+                  </DataColumn>
+                  <DataColumn name="jhxzksrq">
+                    <Property name="property">jhxzksrq</Property>
+                    <Property name="readOnly">true</Property>
+                    <Property name="align">center</Property>
+                  </DataColumn>
+                  <DataColumn name="jhxzjsrq">
+                    <Property name="property">jhxzjsrq</Property>
+                    <Property name="readOnly">true</Property>
+                    <Property name="align">center</Property>
+                  </DataColumn>
+                </DataGrid>
+              </Children>
+              <Tools/>
+            </Panel>
+          </Children>
+        </FieldSet>
+      </Children>
+      <Tools/>
+    </Dialog>
+    <CustomDropDown id="cddGbArea">
+      <Property name="assignmentMap">xzqhdm=code,xzqhmc=name</Property>
+      <Property name="height">500</Property>
+      <Property name="minHeight">500</Property>
+      <Property name="maxHeight">500</Property>
+      <Property name="width">400</Property>
+      <Container layout="regionPadding:5">
+        <DataSet id="dsGBArea">
+          <Property name="dataProvider">gbAreaPR#findByCode</Property>
+          <Property name="dataType">[dtGBArea]</Property>
+        </DataSet>
+        <Container layout="hbox regionPadding:5">
+          <TextEditor id="key2">
+            <Property name="blankText"> -- 缂栫爜鎴栬�呭悕绉� --</Property>
+            <Property name="width">200</Property>
+          </TextEditor>
+          <Button>
+            <ClientEvent name="onClick">var key = view.get(&quot;#key2.value&quot;);&#xD;
+view.get(&quot;#dsGBArea&quot;).set(&quot;parameter&quot;,{key:key}).flushAsync();</ClientEvent>
+            <Property name="iconClass">fa fa-search</Property>
+            <Property name="caption">鏌ヨ</Property>
+          </Button>
+          <Button>
+            <ClientEvent name="onClick">var data = view.get(&quot;#dsGBArea.data:#&quot;);&#xD;
+if (data) {&#xD;
+	view.get(&quot;#cddGbArea&quot;).close(data.toJSON());&#xD;
+}</ClientEvent>
+            <Property name="caption">纭畾</Property>
+            <Property name="iconClass">fa fa-check</Property>
+          </Button>
+        </Container>
+        <DataGrid>
+          <ClientEvent name="onDataRowDoubleClick">var data = view.get(&quot;#dsGBArea.data:#&quot;);&#xD;
+if(data){&#xD;
+	view.get(&quot;#cddGbArea&quot;).close(data.toJSON());&#xD;
+}</ClientEvent>
+          <Property name="dataSet">dsGBArea</Property>
+          <Property name="readOnly">true</Property>
+          <DataColumn name="code">
+            <Property name="property">code</Property>
+          </DataColumn>
+          <DataColumn name="name">
+            <Property name="property">name</Property>
+          </DataColumn>
+        </DataGrid>
+      </Container>
+    </CustomDropDown>
+    <Dialog id="dialogLog">
+      <Property name="width">90%</Property>
+      <Property name="height">90%</Property>
+      <Property name="caption">涓婁紶璁板綍</Property>
+      <Property name="iconClass">fa fa-sliders</Property>
+      <Buttons>
+        <Button>
+          <ClientEvent name="onClick">self.get(&quot;parent&quot;).hide();</ClientEvent>
+          <Property name="caption">鍏抽棴</Property>
+          <Property name="iconClass">fa fa-times</Property>
+          <Property name="exClassName">toolbar-button-warn</Property>
+        </Button>
+      </Buttons>
+      <Children>
+        <Container>
+          <IFrame id="iFrame">
+            <Property name="path">com.fzzy.api.view.ApiLog.d</Property>
+            <Property name="userData">
+              <Entity>
+                <Property name="deptId">deptId</Property>
+              </Entity>
+            </Property>
+          </IFrame>
+        </Container>
+      </Children>
+      <Tools/>
+    </Dialog>
+    <Dialog id="addDtl">
+      <Property name="caption">鐔忚捀浣滀笟鐨勫偍绮伯鎯呮槑缁�</Property>
+      <Property name="width">80%</Property>
+      <Buttons>
+        <Button>
+          <ClientEvent name="onClick">var cur = view.get(&quot;#dgDtl&quot;).getCurrentItem();&#xD;
+view.get(&quot;#updateSave&quot;).execute(function(){&#xD;
+	self.get(&quot;parent&quot;).hide();&#xD;
+});</ClientEvent>
+          <Property name="caption">纭畾</Property>
+          <Property name="iconClass">fa fa-check</Property>
+        </Button>
+        <Button>
+          <ClientEvent name="onClick">var cur = view.get(&quot;#dgMain&quot;).getCurrentItem();&#xD;
+self.get(&quot;parent&quot;).hide();&#xD;
+if(cur) cur.cancel();</ClientEvent>
+          <Property name="caption">鍙栨秷</Property>
+          <Property name="iconClass">fa fa-times</Property>
+        </Button>
+      </Buttons>
+      <Children>
+        <AutoForm>
+          <Property name="dataSet">dsMain</Property>
+          <Property name="cols">*,*,*,*</Property>
+          <Property name="labelPosition">top</Property>
+          <Property name="labelSeparator">:</Property>
+          <Property name="dataPath">#.dtls</Property>
+          <AutoFormElement>
+            <Property name="name">cfdm</Property>
+            <Property name="property">cfdm</Property>
+            <Editor/>
+          </AutoFormElement>
+          <AutoFormElement>
+            <Property name="name">lspzdm</Property>
+            <Property name="property">lspzdm</Property>
+            <Editor/>
+          </AutoFormElement>
+          <AutoFormElement>
+            <Property name="name">lsxzdm</Property>
+            <Property name="property">lsxzdm</Property>
+            <Editor/>
+          </AutoFormElement>
+          <AutoFormElement>
+            <Property name="name">lsdjdm</Property>
+            <Property name="property">lsdjdm</Property>
+            <Editor/>
+          </AutoFormElement>
+          <AutoFormElement>
+            <Property name="name">lssl</Property>
+            <Property name="property">lssl</Property>
+            <Editor/>
+          </AutoFormElement>
+          <AutoFormElement>
+            <Property name="name">sf</Property>
+            <Property name="property">sf</Property>
+            <Editor/>
+          </AutoFormElement>
+          <AutoFormElement>
+            <Property name="name">zz</Property>
+            <Property name="property">zz</Property>
+            <Editor/>
+          </AutoFormElement>
+          <AutoFormElement>
+            <Property name="name">lw</Property>
+            <Property name="property">lw</Property>
+            <Editor/>
+          </AutoFormElement>
+          <AutoFormElement>
+            <Property name="name">cw</Property>
+            <Property name="property">cw</Property>
+            <Editor/>
+          </AutoFormElement>
+          <AutoFormElement>
+            <Property name="name">cnsd</Property>
+            <Property name="property">cnsd</Property>
+            <Editor/>
+          </AutoFormElement>
+          <AutoFormElement>
+            <Property name="name">clfs</Property>
+            <Property name="property">clfs</Property>
+            <Editor/>
+          </AutoFormElement>
+          <AutoFormElement>
+            <Property name="name">rkrq</Property>
+            <Property name="property">rkrq</Property>
+            <Editor/>
+          </AutoFormElement>
+          <AutoFormElement>
+            <Property name="name">hc</Property>
+            <Property name="property">hc</Property>
+            <Editor/>
+          </AutoFormElement>
+          <AutoFormElement>
+            <Property name="name">cldjpd</Property>
+            <Property name="property">cldjpd</Property>
+            <Editor/>
+          </AutoFormElement>
+          <AutoFormElement>
+            <Property name="name">ldtj</Property>
+            <Property name="property">ldtj</Property>
+            <Editor/>
+          </AutoFormElement>
+          <AutoFormElement>
+            <Property name="name">kjtj</Property>
+            <Property name="property">kjtj</Property>
+            <Editor/>
+          </AutoFormElement>
+          <AutoFormElement>
+            <Property name="name">lddwyyl</Property>
+            <Property name="property">lddwyyl</Property>
+            <Editor/>
+          </AutoFormElement>
+          <AutoFormElement>
+            <Property name="name">kjdwyyl</Property>
+            <Property name="property">kjdwyyl</Property>
+            <Editor/>
+          </AutoFormElement>
+          <AutoFormElement>
+            <Property name="name">zyyl</Property>
+            <Property name="property">zyyl</Property>
+            <Editor/>
+          </AutoFormElement>
+          <AutoFormElement>
+            <Property name="name">qmx</Property>
+            <Property name="property">qmx</Property>
+            <Editor/>
+          </AutoFormElement>
+          <AutoFormElement>
+            <Property name="name">jhxzksrq</Property>
+            <Property name="property">jhxzksrq</Property>
+            <Editor/>
+          </AutoFormElement>
+          <AutoFormElement>
+            <Property name="name">jhxzjsrq</Property>
+            <Property name="property">jhxzjsrq</Property>
+            <Editor/>
+          </AutoFormElement>
+          <AutoFormElement>
+            <Property name="name">cfmc</Property>
+            <Property name="property">cfmc</Property>
+            <Editor/>
+          </AutoFormElement>
+        </AutoForm>
+      </Children>
+      <Tools/>
+    </Dialog>
+    <UpdateAction id="updateDelDtl">
+      <Property name="dataResolver">gDApi9201PR#updateSave</Property>
+      <Property name="confirmMessage">褰撳墠鏁版嵁鍒犻櫎鍚庢棤娉曟仮澶嶏紝璇风‘璁よ鍒犻櫎涔堬紵</Property>
+      <UpdateItem>
+        <Property name="dataPath">[#current]</Property>
+        <Property name="dataSet">dsMain</Property>
+      </UpdateItem>
+    </UpdateAction>
+    <UpdateAction id="updateSave">
+      <Property name="dataResolver">gDApi9201PR#updateSave</Property>
+      <UpdateItem>
+        <Property name="dataPath">[#current]</Property>
+        <Property name="dataSet">dsMain</Property>
+      </UpdateItem>
+    </UpdateAction>
+    <AjaxAction id="ajaxDel">
+      <Property name="confirmMessage">褰撳墠鏁版嵁鍒犻櫎鍚庢棤娉曟仮澶嶏紝璇风‘璁よ鍒犻櫎涔堬紵</Property>
+      <Property name="service">gDApi9201PR#delData</Property>
+    </AjaxAction>
+    <AjaxAction id="ajaxDelUpdate">
+      <Property name="confirmMessage">褰撳墠鏁版嵁鍒犻櫎鍚庢棤娉曟仮澶嶏紝璇风‘璁よ鍒犻櫎涔堬紵</Property>
+      <Property name="service">gDApi9201PR#delUpdate</Property>
+    </AjaxAction>
+    <AjaxAction id="ajaxPush">
+      <Property name="service">gDApi9201PR#pushData</Property>
+    </AjaxAction>
+    <ListDropDown id="listDropYN">
+      <Property name="items">鏄�,鍚�</Property>
+    </ListDropDown>
+    <ListDropDown id="listDropZG">
+      <Property name="items">鍒濈骇,涓骇,楂樼骇,鍩硅鍚堟牸</Property>
+    </ListDropDown>
+  </View>
+</ViewConfig>
diff --git a/src/main/java/com/fzzy/otherview/gd2022/pr/GDApi1023PR.java b/src/main/java/com/fzzy/otherview/gd2022/pr/GDApi1023PR.java
index 9101183..0b7860a 100644
--- a/src/main/java/com/fzzy/otherview/gd2022/pr/GDApi1023PR.java
+++ b/src/main/java/com/fzzy/otherview/gd2022/pr/GDApi1023PR.java
@@ -66,7 +66,7 @@
             @Override
             public Predicate toPredicate(Root<ApiInfoData> root, CriteriaQuery<?> criteriaQuery, CriteriaBuilder criteriaBuilder) {
                 List<Predicate> predicates = new ArrayList<>(); //鎵�鏈夌殑鏂█
-                Predicate predicate = criteriaBuilder.equal(root.get("inteId"), ApiCodeConstant.API_1023);
+                Predicate predicate = criteriaBuilder.equal(root.get("inteId"), ApiCodeConstant.API_9201);
                 predicates.add(predicate);
                 if (null != param) {
                     if (StringUtils.isNotBlank(param.getKqdm())) {
@@ -169,7 +169,7 @@
         }
 
         //灏佽鍙傛暟
-        ApiParam param = new ApiParam(apiConf, "21", ApiCodeConstant.API_1023);
+        ApiParam param = new ApiParam(apiConf, "21", ApiCodeConstant.API_9201);
 
         //鑾峰彇瀹炵幇鎺ュ彛
         ApiRemoteService apiService = apiPushManager.getApiRemoteService(param.getPushProtocol());
@@ -184,7 +184,7 @@
             if (responseDto.getSuccess() == 0) {
                 if (Constant.CZBZ_I.equals(data.getCzbz())) {
                     //鎺ㄩ�佹垚鍔燂紝鏇存柊鏁版嵁涓婁紶鐘舵��
-                    List<ApiInfoData> apiInfoList = apiInfoDataRep.getDataByInteAndData(ApiCodeConstant.API_1023, DateFormatUtils.format(data.getTbrq(), "yyyyMMdd") +  data.getXzbm(), data.getKqdm());
+                    List<ApiInfoData> apiInfoList = apiInfoDataRep.getDataByInteAndData(ApiCodeConstant.API_9201, DateFormatUtils.format(data.getTbrq(), "yyyyMMdd") +  data.getXzbm(), data.getKqdm());
                     data.setCzbz(Constant.CZBZ_U);
                     infoData = apiInfoList.get(0);
                     infoData.setUpdateTime(new Date());
diff --git a/src/main/java/com/fzzy/otherview/gd2022/pr/GDApi9201PR.java b/src/main/java/com/fzzy/otherview/gd2022/pr/GDApi9201PR.java
new file mode 100644
index 0000000..37504ed
--- /dev/null
+++ b/src/main/java/com/fzzy/otherview/gd2022/pr/GDApi9201PR.java
@@ -0,0 +1,256 @@
+package com.fzzy.otherview.gd2022.pr;
+
+
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson2.JSON;
+import com.bstek.dorado.annotation.DataProvider;
+import com.bstek.dorado.annotation.DataResolver;
+import com.bstek.dorado.annotation.Expose;
+import com.bstek.dorado.data.provider.Page;
+import com.fzzy.api.Constant;
+import com.fzzy.api.data.ApiParam;
+import com.fzzy.api.dto.ResponseDto;
+import com.fzzy.api.entity.Api9201;
+import com.fzzy.api.entity.ApiConfs;
+import com.fzzy.api.service.ApiCommonService;
+import com.fzzy.api.service.ApiPushManager;
+import com.fzzy.api.service.ApiRemoteService;
+import com.fzzy.api.utils.ContextUtil;
+import com.fzzy.api.view.repository.Api9201Rep;
+import com.fzzy.push.gd2022.dto.Gd2022Api1023Dtl;
+import com.fzzy.push.gd2022.dto.Gd2022Api1023People;
+import com.fzzy.push.gd2022.dto.Gd2022Api1023Way;
+import org.apache.commons.lang.StringUtils;
+import org.springframework.beans.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.data.domain.PageRequest;
+import org.springframework.data.domain.Pageable;
+import org.springframework.data.domain.Sort;
+import org.springframework.data.jpa.domain.Specification;
+import org.springframework.stereotype.Component;
+
+
+import javax.persistence.criteria.CriteriaBuilder;
+import javax.persistence.criteria.CriteriaQuery;
+import javax.persistence.criteria.Predicate;
+import javax.persistence.criteria.Root;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * 骞夸笢鐪佹帴鍙�-9201 鐔忚捀澶囨
+ *
+ * @author czt
+ * @date 2023/8/17
+ */
+@Component(value = "gDApi9201PR")
+public class GDApi9201PR {
+
+    @Autowired
+    private Api9201Rep api9201Rep;
+
+    @Autowired
+    private ApiCommonService apiCommonService;
+
+    @Autowired
+    private ApiPushManager apiPushManager;
+
+    /**
+     * gDApi9201PR#pageList
+     *
+     * @return
+     */
+    @DataProvider
+    public void pageList(Page<Api9201> page, ApiParam param) {
+
+        //澶氬弬鏁板垎椤垫煡璇�
+        Pageable pageable = PageRequest.of(page.getPageNo() - 1, page.getPageSize(), Sort.Direction.DESC, "id");
+
+        if (null == param) {
+            org.springframework.data.domain.Page<Api9201> japPage = api9201Rep.findAll(pageable);
+            page.setEntityCount((int) japPage.getTotalElements());
+
+            for (Api9201 api9201 : japPage.getContent()) {
+                api9201.setDtls(JSONArray.parseArray(api9201.getDtl(), Gd2022Api1023Dtl.class));
+                api9201.setPeoples(JSONArray.parseArray(api9201.getPeople(), Gd2022Api1023People.class));
+                api9201.setWays(JSONArray.parseArray(api9201.getWay(), Gd2022Api1023Way.class));
+            }
+            page.setEntities(japPage.getContent());
+
+            return;
+        }
+
+        Specification<Api9201> specification = new Specification<Api9201>() {
+            private static final long serialVersionUID = 1L;
+
+            public Predicate toPredicate(Root<Api9201> root, CriteriaQuery<?> query, CriteriaBuilder cb) {
+                List<Predicate> predicates = new ArrayList<>(); //鎵�鏈夌殑鏂█
+
+                if (StringUtils.isNotBlank(param.getKqdm())) {
+                    Predicate predicate1 = cb.equal(root.get("hwdm"), param.getKqdm());
+                    predicates.add(predicate1);
+                }
+
+                if (StringUtils.isNotBlank(param.getCzbz())) {
+                    Predicate predicate2 = cb.equal(root.get("czbz"), param.getCzbz());
+                    predicates.add(predicate2);
+                }
+                if (null != param.getStart()) {
+                    Predicate predicate3 = cb.greaterThan(root.get("ywrq"), ContextUtil.getCurZero(param.getStart()));
+                    predicates.add(predicate3);
+                }
+
+                if (null != param.getEnd()) {
+                    Predicate predicate4 = cb.lessThan(root.get("ywrq"), ContextUtil.getNextZero(param.getEnd()));
+                    predicates.add(predicate4);
+                }
+                return cb.and(predicates.toArray(new Predicate[0]));
+            }
+        };
+
+        org.springframework.data.domain.Page<Api9201> japPage = api9201Rep.findAll(specification, pageable);
+        page.setEntityCount((int) japPage.getTotalElements());
+        for (Api9201 api9201 : japPage.getContent()) {
+            api9201.setDtls(JSONArray.parseArray(api9201.getDtl(), Gd2022Api1023Dtl.class));
+            api9201.setPeoples(JSONArray.parseArray(api9201.getPeople(), Gd2022Api1023People.class));
+            api9201.setWays(JSONArray.parseArray(api9201.getWay(), Gd2022Api1023Way.class));
+        }
+        page.setEntities(japPage.getContent());
+    }
+
+
+    /**
+     * gDApi9201PR#updateSave
+     *
+     * @param entity
+     */
+    @DataResolver
+    public void updateSave(Api9201 entity) {
+
+        // 鎵嬪姩灏哾oradoEntity瀵硅薄杞崲涓烘爣鍑咮ean瀵硅薄
+        Api9201 data = new Api9201();
+        BeanUtils.copyProperties(entity, data);
+        data.setDtl(JSON.toJSONString(data.getDtls()));
+        data.setPeople(JSON.toJSONString(data.getPeoples()));
+        data.setWay(JSON.toJSONString(data.getWays()));
+        data.setKqdm(data.getKqdm().trim());
+        api9201Rep.save(data);
+    }
+
+    /**
+     * gDApi9201PR#delData
+     *
+     * @param data
+     */
+    @Expose
+    public String delData(Api9201 data) {
+
+        api9201Rep.deleteById(data.getId());
+
+        return null;
+    }
+
+    /**
+     * 鏇存柊鍒犻櫎鏍囪 gDApi9201PR#delUpdate
+     *
+     * @param entity
+     */
+    @Expose
+    public String delUpdate(Api9201 entity) {
+
+        entity.setCzbz(Constant.CZBZ_D);
+
+        Api9201 data = new Api9201();
+        BeanUtils.copyProperties(entity, data);
+
+        api9201Rep.save(data);
+        return null;
+    }
+
+    /**
+     * gDApi9201PR#pushData
+     *
+     * @param items
+     */
+    @Expose
+    public String pushData(List<Api9201> items) {
+
+        //鑾峰彇閰嶇疆
+        String kqdm = items.get(0).getKqdm();
+        ApiConfs apiConf = apiCommonService.getConf(kqdm);
+
+        if (null == apiConf) {
+            return "绯荤粺娌℃湁鑾峰彇鍒板綋鍓嶅簱鍖洪厤缃俊鎭紝鎵ц澶辫触";
+        }
+
+        //鑾峰彇瀹炵幇鎺ュ彛
+        ApiRemoteService apiRemoteService = apiPushManager.getApiRemoteService(apiConf.getPushProtocol());
+        if (null == apiRemoteService) {
+            return "绯荤粺娌℃湁褰撳墠鎺ㄩ�佸崗璁厤缃紝鎵ц澶辫触";
+        }
+
+        return pushDataSingle(items, apiRemoteService, apiConf);
+    }
+
+    /**
+     * 鍗曟潯鏁版嵁json鎺ㄩ��
+     *
+     * @param items
+     * @param apiRemoteService
+     * @param apiConf
+     * @return
+     */
+    private String pushDataSingle(List<Api9201> items, ApiRemoteService apiRemoteService, ApiConfs apiConf) {
+        ResponseDto responseDto;
+        String result = "";
+
+        //灏佽鍙傛暟
+        ApiParam param = new ApiParam(apiConf, Constant.API_CATEGORY_13, Constant.API_CODE_9201);
+
+        Api9201 d;
+        for (Api9201 data : items) {
+            d = new Api9201();
+            BeanUtils.copyProperties(data, d);
+            param.setBizId(data.getBizId());
+            responseDto = apiRemoteService.pushData(param, apiConf, d);
+
+            result += responseDto.toString();
+            if (responseDto.getSuccess() == 0) {
+                if (Constant.CZBZ_I.equals(d.getCzbz())) {
+                    api9201Rep.updateStatus(data.getDwdm(), Constant.CZBZ_U);
+                }
+            }
+        }
+        return result;
+    }
+
+    /**
+     * 闆嗗悎褰㈠紡鎺ㄩ��
+     *
+     * @param items
+     * @param apiRemoteService
+     * @param apiConf
+     * @return
+     */
+    private String pushDataList(List<Api9201> items, ApiRemoteService apiRemoteService, ApiConfs apiConf) {
+
+        //灏佽鍙傛暟
+        ApiParam param = new ApiParam(apiConf, Constant.API_CATEGORY_13, Constant.API_CODE_9201);
+
+
+        //鎺ㄩ�侊紝鏁版嵁涓洪泦鍚堝舰寮�
+        ResponseDto responseDto = apiRemoteService.pushData(param, apiConf, items);
+        if (responseDto.getSuccess() == 0) {
+            //鎺ㄩ�佹垚鍔燂紝鏇存柊鏁版嵁涓婁紶鐘舵��
+            for (Api9201 data : items) {
+                if (Constant.CZBZ_I.equals(data.getCzbz())) {
+                    //鏇存柊鐘舵��
+                    api9201Rep.updateStatus(data.getDwdm(), Constant.CZBZ_U);
+                }
+            }
+        }
+
+        return responseDto.toString();
+    }
+
+}
diff --git a/src/main/java/com/fzzy/push/gd2022/ApiCodeConstant.java b/src/main/java/com/fzzy/push/gd2022/ApiCodeConstant.java
index f375a67..5463f5b 100644
--- a/src/main/java/com/fzzy/push/gd2022/ApiCodeConstant.java
+++ b/src/main/java/com/fzzy/push/gd2022/ApiCodeConstant.java
@@ -9,6 +9,7 @@
     public static String API_1023 = "1023";
     public static String API_2001 = "2001";
     public static String API_2002 = "2002";
+    public static String API_9201 = "9201";
     /**
      * 鎺ュ彛缂栫爜-1001 韬唤璁よ瘉鎺ュ彛
      */
diff --git a/src/main/java/com/fzzy/push/gd2022/GD2022ApiRemoteService2022.java b/src/main/java/com/fzzy/push/gd2022/GD2022ApiRemoteService2022.java
index c5b003b..950582c 100644
--- a/src/main/java/com/fzzy/push/gd2022/GD2022ApiRemoteService2022.java
+++ b/src/main/java/com/fzzy/push/gd2022/GD2022ApiRemoteService2022.java
@@ -789,6 +789,11 @@
             apiData.setZhgxsj(DateUtils.addSeconds(new Date(), -10));
             return JSON.toJSONString(apiData);
         }
+        if (Constant.API_CODE_9201.equals(inteId)) {
+            Api9201 apiData = (Api9201) data;
+            apiData.setZhgxsj(DateUtils.addSeconds(new Date(), -10));
+            return JSON.toJSONString(apiData);
+        }
         if (ApiCodeConstant.API_2001.equals(inteId)) {
             Gd2022Api2001 apiData = (Gd2022Api2001) data;
             //鏍¢獙缁熶竴缂栫爜鏄惁涓虹┖锛屼负绌哄垯鏌ヨ淇℃伅杩涜璧嬪��
diff --git a/src/main/java/com/fzzy/web/TestController.java b/src/main/java/com/fzzy/web/TestController.java
index 9d3d200..4c128c0 100644
--- a/src/main/java/com/fzzy/web/TestController.java
+++ b/src/main/java/com/fzzy/web/TestController.java
@@ -1,4 +1,5 @@
 package com.fzzy.web;
+
 import com.bstek.dorado.util.DateUtils;
 import com.fzzy.api.data.ApiParam;
 import com.fzzy.async.fzzy30.Fzzy30SyncService12;
@@ -8,6 +9,21 @@
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestMethod;
 import org.springframework.web.bind.annotation.RequestParam;
+import ws.schild.jave.Encoder;
+import ws.schild.jave.EncoderException;
+import ws.schild.jave.MultimediaObject;
+import ws.schild.jave.encode.AudioAttributes;
+import ws.schild.jave.encode.EncodingAttributes;
+import ws.schild.jave.encode.VideoAttributes;
+import ws.schild.jave.info.AudioInfo;
+import ws.schild.jave.info.VideoSize;
+
+
+import java.io.File;
+import java.io.FileNotFoundException;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.math.BigDecimal;
 
 /**
  * @author vince.xu
@@ -22,23 +38,191 @@
 public class TestController {
     @Autowired
     private Fzzy30SyncService12 fzzySyncService12;
+
     /**
      *
      */
     @RequestMapping(value = "test", method = RequestMethod.GET)
-    public String  test(@RequestParam(name = "kqdm")String kqdm, @RequestParam(name = "deptId")String deptId, @RequestParam(name = "start")String start,@RequestParam(name = "end") String end) {
+    public String test(@RequestParam(name = "kqdm") String kqdm, @RequestParam(name = "deptId") String deptId, @RequestParam(name = "start") String start, @RequestParam(name = "end") String end) {
         try {
             ApiParam apiParam = new ApiParam();
             apiParam.setKqdm(kqdm);
             apiParam.setDeptId(deptId);
-            apiParam.setStart(DateUtils.parse("yyyy-MM-dd HH:mm:ss",start));
-            apiParam.setEnd(DateUtils.parse("yyyy-MM-dd HH:mm:ss",end));
+            apiParam.setStart(DateUtils.parse("yyyy-MM-dd HH:mm:ss", start));
+            apiParam.setEnd(DateUtils.parse("yyyy-MM-dd HH:mm:ss", end));
             fzzySyncService12.syncData(apiParam);
 
         } catch (Exception e) {
-            log.error(e.getMessage(),e);
+            log.error(e.getMessage(), e);
             e.printStackTrace();
         }
         return "";
     }
+
+
+    public static void main(String[] args) throws EncoderException {
+        // 鍘嬬缉鍓嶆枃浠惰矾寰�
+        File source = new File("D:\\IGDS\\FILE\\COMMON\\202412\\20241218100601.mp4");
+        // 鍘嬬缉鍚庣殑鏂囦欢璺緞
+        File target = new File("D:\\IGDS\\FILE\\COMMON\\202412\\202412181006.mp4");
+        compre(source, target, 1);
+
+    }
+
+    /**
+     * 瑙嗛鍘嬬缉
+     *
+     * @param source 婧愭枃浠�
+     * @param target 鐩爣鏂囦欢
+     * @param rate   鍘嬬缉姣�
+     */
+    public static void compre(File source, File target, Integer rate) throws EncoderException {
+        try {
+            System.out.println("---------------寮�濮嬪帇缂�---------------");
+            long start = System.currentTimeMillis();
+
+            // 闊抽缂栫爜灞炴�ч厤缃�
+            AudioAttributes audio = new AudioAttributes();
+            audio.setCodec("libmp3lame");
+            // 璁剧疆闊抽姣旂壒鐜�,鍗曚綅:b (姣旂壒鐜囪秺楂橈紝娓呮櫚搴�/闊宠川瓒婂ソ锛屽綋鐒舵枃浠朵篃灏辫秺澶� 56000 = 56kb)
+            // audio.setBitRate(new Integer(56_000));
+            audio.setBitRate(new Integer(10));
+            // 璁剧疆閲嶆柊缂栫爜鐨勯煶棰戞祦涓娇鐢ㄧ殑澹伴亾鏁帮紙1 =鍗曞0閬擄紝2 = 鍙屽0閬擄紙绔嬩綋澹帮級锛�
+            audio.setChannels(1);
+            // 閲囨牱鐜囪秺楂樺0闊崇殑杩樺師搴﹁秺濂斤紝鏂囦欢瓒婂ぇ
+            // audio.setSamplingRate(new Integer(44100));
+            audio.setSamplingRate(new Integer(22050));
+            // 瑙嗛缂栫爜灞炴�ч厤缃�
+            VideoAttributes video = new VideoAttributes();
+            // 璁剧疆缂栫爜
+            video.setCodec("mpeg4");
+            //璁剧疆闊抽姣旂壒鐜�,鍗曚綅:b (姣旂壒鐜囪秺楂橈紝娓呮櫚搴�/闊宠川瓒婂ソ锛屽綋鐒舵枃浠朵篃灏辫秺澶� 5600000 = 5600kb)
+            // video.setBitRate(new Integer(5_600_000 / rate));
+            video.setBitRate(new Integer(10 / rate));
+
+            // 璁剧疆瑙嗛甯х巼锛堝抚鐜囪秺浣庯紝瑙嗛浼氬嚭鐜版柇灞傦紝瓒婇珮璁╀汉鎰熻瓒婅繛缁級,杩欓噷 闄�1000鏄负浜嗗崟浣嶈浆鎹�
+            video.setFrameRate(new Integer(15));
+
+
+            // 缂栫爜璁剧疆
+            EncodingAttributes attr = new EncodingAttributes();
+            attr.setOutputFormat("mp4");
+            attr.setAudioAttributes(audio);
+            attr.setVideoAttributes(video);
+
+            // 璁剧疆鍊肩紪鐮�
+            Encoder ec = new Encoder();
+            ec.encode(new MultimediaObject(source), target, attr);
+
+
+            System.out.println("---------------缁撴潫鍘嬬缉---------------");
+            long end = System.currentTimeMillis();
+            System.out.println("鍘嬬缉鍓嶅ぇ灏忥細" + source.length() + " 鍘嬬缉鍚庡ぇ灏忥細" + target.length());
+            System.out.println("鍘嬬缉鑰楁椂锛�" + (end - start));
+
+        } catch (EncoderException e) {
+            e.printStackTrace();
+        } catch (IllegalArgumentException e) {
+            e.printStackTrace();
+        }
+
+    }
+
+    /**
+     * 浼犺棰慒ile瀵硅薄锛堣繖鏄竴涓叿浣撶殑鏂囦欢锛夛紝杩斿洖鍘嬬缉鍚嶧ile瀵硅薄淇℃伅
+     *
+     * @param source
+     */
+    public static File compressionVideo(File source, String picName) {
+        if (source == null) {
+            return null;
+        }
+        String newPath = source.getAbsolutePath().substring(0, source.getAbsolutePath().lastIndexOf(File.separator)).concat(File.separator).concat(picName);
+        File target = new File(newPath);
+        try {
+            MultimediaObject object = new MultimediaObject(source);
+            AudioInfo audioInfo = object.getInfo().getAudio();
+            // 鏍规嵁瑙嗛澶у皬鏉ュ垽鏂槸鍚﹂渶瑕佽繘琛屽帇缂�,
+            int maxSize = 5;
+            double mb = Math.ceil(source.length() / 1048576);
+            int second = (int) object.getInfo().getDuration() / 1000;
+            BigDecimal bd = new BigDecimal(String.format("%.4f", mb / second));
+            System.out.println("寮�濮嬪帇缂╄棰戜簡--> 瑙嗛姣忕骞冲潎 " + bd + " MB ");
+            // 瑙嗛 > 5MB, 鎴栬�呮瘡绉� > 0.5 MB 鎵嶅仛鍘嬬缉锛� 涓嶉渶瑕佺殑璇濆彲浠ユ妸鍒ゆ柇鍘绘帀
+            boolean temp = mb > maxSize || bd.compareTo(new BigDecimal(0.5)) > 0;
+//            if(temp){
+            long time = System.currentTimeMillis();
+            //TODO 瑙嗛灞炴�ц缃�
+            int maxBitRate = 128000;
+            int maxSamplingRate = 44100;
+            int bitRate = 800000;
+            int maxFrameRate = 20;
+            int maxWidth = 1280;
+
+            AudioAttributes audio = new AudioAttributes();
+            // 璁剧疆閫氱敤缂栫爜鏍煎紡10                   audio.setCodec("aac");
+            // 璁剧疆鏈�澶у�硷細姣旂壒鐜囪秺楂橈紝娓呮櫚搴�/闊宠川瓒婂ソ
+            // 璁剧疆闊抽姣旂壒鐜�,鍗曚綅:b (姣旂壒鐜囪秺楂橈紝娓呮櫚搴�/闊宠川瓒婂ソ锛屽綋鐒舵枃浠朵篃灏辫秺澶� 128000 = 182kb)
+            if (audioInfo.getBitRate() > maxBitRate) {
+                audio.setBitRate(new Integer(maxBitRate));
+            }
+
+            // 璁剧疆閲嶆柊缂栫爜鐨勯煶棰戞祦涓娇鐢ㄧ殑澹伴亾鏁帮紙1 =鍗曞0閬擄紝2 = 鍙屽0閬擄紙绔嬩綋澹帮級锛夈�傚鏋滄湭璁剧疆浠讳綍澹伴亾鍊硷紝鍒欑紪鐮佸櫒灏嗛�夋嫨榛樿鍊� 0銆�
+            audio.setChannels(audioInfo.getChannels());
+            // 閲囨牱鐜囪秺楂樺0闊崇殑杩樺師搴﹁秺濂斤紝鏂囦欢瓒婂ぇ
+            // 璁剧疆闊抽閲囨牱鐜囷紝鍗曚綅锛氳但鍏� hz
+            // 璁剧疆缂栫爜鏃跺�欑殑闊抽噺鍊硷紝鏈缃负0,濡傛灉256锛屽垯闊抽噺鍊间笉浼氭敼鍙�
+            // audio.setVolume(256);
+            if (audioInfo.getSamplingRate() > maxSamplingRate) {
+                audio.setSamplingRate(maxSamplingRate);
+            }
+
+            //TODO 瑙嗛缂栫爜灞炴�ч厤缃�
+            ws.schild.jave.info.VideoInfo videoInfo = object.getInfo().getVideo();
+            VideoAttributes video = new VideoAttributes();
+            video.setCodec("h264");
+            //璁剧疆闊抽姣旂壒鐜�,鍗曚綅:b (姣旂壒鐜囪秺楂橈紝娓呮櫚搴�/闊宠川瓒婂ソ锛屽綋鐒舵枃浠朵篃灏辫秺澶� 800000 = 800kb)
+            if (videoInfo.getBitRate() > bitRate) {
+                video.setBitRate(bitRate);
+            }
+
+            // 瑙嗛甯х巼锛�15 f / s  甯х巼瓒婁綆锛屾晥鏋滆秺宸�
+            // 璁剧疆瑙嗛甯х巼锛堝抚鐜囪秺浣庯紝瑙嗛浼氬嚭鐜版柇灞傦紝瓒婇珮璁╀汉鎰熻瓒婅繛缁級锛岃棰戝抚鐜囷紙Frame rate锛夋槸鐢ㄤ簬娴嬮噺鏄剧ず甯ф暟鐨勯噺搴︺�傛墍璋撶殑娴嬮噺鍗曚綅涓烘瘡绉掓樉绀哄抚鏁�(Frames per Second锛岀畝锛欶PS锛夋垨鈥滆但鍏光�濓紙Hz锛夈��
+            if (videoInfo.getFrameRate() > maxFrameRate) {
+                video.setFrameRate(maxFrameRate);
+            }
+
+            // 闄愬埗瑙嗛瀹介珮
+            int width = videoInfo.getSize().getWidth();
+            int height = videoInfo.getSize().getHeight();
+            if (width > maxWidth) {
+                float rat = (float) width / maxWidth;
+                video.setSize(new VideoSize(maxWidth, (int) (height / rat)));
+            }
+
+            EncodingAttributes attr = new EncodingAttributes();
+//                attr.setFormat("mp4");
+            attr.setAudioAttributes(audio);
+            attr.setVideoAttributes(video);
+
+            // 閫熷害鏈�蹇殑鍘嬬缉鏂瑰紡锛� 鍘嬬缉閫熷害 浠庡揩鍒版參锛� ultrafast, superfast, veryfast, faster, fast, medium,  slow, slower, veryslow and placebo.
+//                attr.setPreset(PresetUtil.VERYFAST);
+//                attr.setCrf(27);
+//                // 璁剧疆绾跨▼鏁�
+//                attr.setEncodingThreads(Runtime.getRuntime().availableProcessors()/2);
+
+            Encoder encoder = new Encoder();
+            encoder.encode(new MultimediaObject(source), target, attr);
+            System.out.println("鍘嬬缉鎬昏�楁椂锛�" + (System.currentTimeMillis() - time) / 1000);
+            return target;
+//            }
+        } catch (Exception e) {
+            e.printStackTrace();
+        } finally {
+            if (target.length() > 0) {
+                source.delete();
+            }
+        }
+        return source;
+    }
 }
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index bbeeabd..86a70b3 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -1,7 +1,7 @@
 ##########################  Server   ##########################
 spring:
   profiles:
-    active: dev
+    active: pro
   application:
     name: igds-api
   main:
diff --git a/src/main/resources/templates/home/home.html b/src/main/resources/templates/home/home.html
index 4b4b9b3..692acde 100644
--- a/src/main/resources/templates/home/home.html
+++ b/src/main/resources/templates/home/home.html
@@ -340,6 +340,9 @@
                                     <dd>
                                         <a lay-href="com.fzzy.otherview.gd2022.GdApi1023.d">鐔忚捀澶囨</a>
                                     </dd>
+                                    <dd>
+                                        <a lay-href="com.fzzy.otherview.gd2022.GdApi9201.d">鐔忚捀澶囨鏂�</a>
+                                    </dd>
                                 </dl>
                             </dd>
                             <dd>

--
Gitblit v1.9.3