WS
2023-08-22 667d24748171a032c55910c0dc1bb1ac340b9521
提交熏蒸备案同步
已修改7个文件
已添加10个文件
1368 ■■■■■ 文件已修改
src/main/java/com/fzzy/api/entity/ApiInfoData.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/fzzy/api/view/pr/Api1109PR.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/fzzy/async/fzzy40/Fzzy40SyncService13.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/fzzy/async/fzzy40/entity/Fz40DrugLogApplyKey.java 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/fzzy/async/fzzy40/entity/Fz40DrugLogDtl.java 146 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/fzzy/async/fzzy40/entity/Fz40DrugLogPeople.java 71 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/fzzy/async/fzzy40/entity/Fz40DrugLogWay.java 65 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/fzzy/async/fzzy40/entity/Fz4DrugLogApply.java 170 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1023.java 158 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/fzzy/async/fzzy40/repository/Fzzy40Sync1023Rep.java 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/fzzy/otherview/gd2022/GdApi1023.view.xml 530 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/fzzy/otherview/gd2022/dto/GdApi1023.java 52 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/fzzy/otherview/gd2022/dto/GdApi1023Dtl.java 42 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/fzzy/otherview/gd2022/dto/GdApi1023People.java 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/fzzy/otherview/gd2022/dto/GdApi1023Way.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/fzzy/otherview/gd2022/pr/GDApi1023PR.java 44 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/fzzy/push/gd2022/ApiCodeConstant.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/fzzy/api/entity/ApiInfoData.java
@@ -42,6 +42,10 @@
    @Column(name = "inteType", length = 10)
    private String inteType;
    @PropertyDef(label = "业务类型" , description = "协议编码")
    @Column(name = "BIZ_Type", length = 20)
    private String bizType;
    @PropertyDef(label = "接口编号")
    @Column(name = "inteId", length = 10)
    private String inteId;
src/main/java/com/fzzy/api/view/pr/Api1109PR.java
@@ -24,6 +24,7 @@
import org.springframework.data.jpa.domain.Specification;
import org.springframework.stereotype.Component;
import sun.misc.BASE64Encoder;
import javax.persistence.criteria.CriteriaBuilder;
import javax.persistence.criteria.CriteriaQuery;
import javax.persistence.criteria.Predicate;
src/main/java/com/fzzy/async/fzzy40/Fzzy40SyncService13.java
@@ -29,6 +29,8 @@
    private Fzzy40Sync1306 fzzySync1306;
    @Autowired
    private Fzzy40Sync1310 fzzySync1310;
    @Autowired
    private Fzzy40Sync1023 fzzySync1023;
    @Override
    public String getProtocol() {
@@ -57,6 +59,7 @@
        fzzySync1306.syncData(param.getDeptId(), param.getStart(), param.getEnd());
        //熏蒸备案数据同步
        fzzySync1023.syncData(param.getDeptId(), param.getStart(), param.getEnd());
    }
src/main/java/com/fzzy/async/fzzy40/entity/Fz40DrugLogApplyKey.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,18 @@
package com.fzzy.async.fzzy40.entity;
import lombok.AllArgsConstructor;
import lombok.Data;
import java.io.Serializable;
@Data
@AllArgsConstructor
public class Fz40DrugLogApplyKey implements Serializable {
        private String id;
        private String deptId;
        private String standardId;
    public Fz40DrugLogApplyKey(){
            super();
        }
    }
src/main/java/com/fzzy/async/fzzy40/entity/Fz40DrugLogDtl.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,146 @@
package com.fzzy.async.fzzy40.entity;
import com.alibaba.fastjson.annotation.JSONField;
import com.bstek.dorado.annotation.PropertyDef;
import com.fasterxml.jackson.annotation.JsonFormat;
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:YAN
 */
@Entity
@Data
@Table(name = "D_DRUG_LOG_DTL")
public class Fz40DrugLogDtl implements Serializable {
    @Id
    @Column(name = "DTL_ID_", length = 40)
    @PropertyDef(label = "dtlId")
    private String dtlId;
    @Column(name = "ID_", length = 40)
    @PropertyDef(label = "id")
    @JSONField
    private String id;
    @Column(name = "DRUG_LOG_ID_", length = 4)
    @PropertyDef(label = "熏蒸备案编号", description = "4位顺序号")
    @JSONField
    private String drugLogId;
    @Column(name = "DEPT_ID_", length = 21)
    @PropertyDef(label = "库区代码")
    @JSONField
    private String deptId;
    @Column(name = "tbrq")
    @PropertyDef(label = "填报日期")
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date tbrq;
    @Column(name = "DEPOT_ID_", length = 50)
    @PropertyDef(label = "仓房/油罐代码")
    private String depotId;
    @Column(name = "FOOD_VARIETY_", length = 20)
    @PropertyDef(label = "粮食品种")
    private String foodVariety;
    @Column(name = "FOOD_TYPE_", length = 20)
    @PropertyDef(label = "粮食性质")
    private String foodType;
    @Column(name = "FOOD_LEVEL_", length = 10)
    @PropertyDef(label = "粮食等级")
    private String foodLevel;
    @Column(name = "NUMBER_", precision = 20, scale = 3)
    @PropertyDef(label = "粮食数量", description = "单位:吨")
    private Double number = 0.0;
    @Column(name = "PER_WET_", precision = 20, scale = 3)
    @PropertyDef(label = "水分", description = "单位:%")
    private Double perWet;
    @Column(name = "PER_IMPURITY_", precision = 20, scale = 3)
    @PropertyDef(label = "杂质", description = "单位:%")
    private Double perImpurity;
    @Column(name = "lw", precision = 20, scale = 3)
    @PropertyDef(label = "粮温")
    private Double lw;
    @Column(name = "cw", precision = 20, scale = 3)
    @PropertyDef(label = "仓温")
    private Double cw;
    @Column(name = "cnsd", precision = 20, scale = 3)
    @PropertyDef(label = "仓内湿度")
    private Double cnsd;
    @Column(name = "clfs", length = 1)
    @PropertyDef(label = "存粮方式", description = "1:散装储粮;2:包装;3:围包散存;9:其他")
    private String clfs;
    @Column(name = "rkrq")
    @PropertyDef(label = "入库日期")
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date rkrq;
    @Column(name = "hc", length = 30)
    @PropertyDef(label = "害虫")
    private String hc;
    @Column(name = "cldjpd", length = 3)
    @PropertyDef(label = "虫粮等级判定")
    private String cldjpd;
    @Column(name = "ldtj", precision = 20, scale = 3)
    @PropertyDef(label = "粮堆体积", description = "m³")
    private Double ldtj;
    @Column(name = "kjtj", precision = 20, scale = 3)
    @PropertyDef(label = "空间体积", description = "m³")
    private Double kjtj;
    @Column(name = "lddwyyl", precision = 20, scale = 3)
    @PropertyDef(label = "粮堆单位用药量")
    private Double lddwyyl;
    @Column(name = "kjdwyyl", precision = 20, scale = 3)
    @PropertyDef(label = "空间单位用药量")
    private Double kjdwyyl;
    @Column(name = "zyyl", precision = 20, scale = 3)
    @PropertyDef(label = "总用药量")
    private Double zyyl;
    /**
     * ä»“房气密性以 500 Pa çš„压力半衰 æœŸ t åˆ†ä¸ºå››ä¸ªç­‰çº§ã€‚
     * 1:   â… çº§ï¼Œt≥300s。
     * 2:   â…¡çº§ï¼Œ120s≤t<300s。
     * 3:Ⅲ级,40s≤t<120s (平房仓) ï¼Œ 60s≤ t<120s (立筒仓、浅圆仓) ã€‚ 4:Ⅳ级,t<40s (平房仓) ï¼Œt<60s (立筒仓、浅圆仓) ã€‚
     */
    @Column(name = "qmx", length = 1)
    @PropertyDef(label = "气密性")
    private String qmx;
    @Column(name = "jhxzksrq")
    @PropertyDef(label = "计划熏蒸开始日期")
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date jhxzksrq;
    @Column(name = "jhxzjsrq")
    @PropertyDef(label = "计划熏蒸结束日期")
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date jhxzjsrq;
}
src/main/java/com/fzzy/async/fzzy40/entity/Fz40DrugLogPeople.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,71 @@
package com.fzzy.async.fzzy40.entity;
import com.alibaba.fastjson.annotation.JSONField;
import com.bstek.dorado.annotation.PropertyDef;
import com.fasterxml.jackson.annotation.JsonFormat;
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:YAN
 */
@Data
@Entity
@Table(name = "D_DRUG_LOG_PEOPLE")
public class Fz40DrugLogPeople implements Serializable {
    @Id
    @Column(name = "PEOPLE_ID_", length = 40)
    @PropertyDef(label = "propleId")
    private String propleId;
    @Column(name = "ID_", length = 40)
    @PropertyDef(label = "id")
    private String id;
    @Column(name = "DRUG_LOG_ID_", length = 4)
    @PropertyDef(label = "熏蒸备案编号", description = "4位顺序号")
    private String drugLogId;
    @Column(name = "DEPT_ID_", length = 21)
    @PropertyDef(label = "库区代码")
    private String deptId;
    @Column(name = "tbrq")
    @PropertyDef(label = "填报日期")
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date tbrq;
    @Column(name = "mx", length = 20)
    @PropertyDef(label = "姓名")
    private String mx;
    @Column(name = "zw", length = 10)
    @PropertyDef(label = "职务")
    private String zw;
    @Column(name = "zyzg", length = 6)
    @PropertyDef(label = "职业资格", description = "初级/中级/高级")
    private String zyzg;
    @Column(name = "stzk", length = 10)
    @PropertyDef(label = "身体状况")
    private String stzk;
    @Column(name = "xzrwfg", length = 30)
    @PropertyDef(label = "熏蒸任务分工")
    private String xzrwfg;
    @Column(name = "sfwb", length = 2)
    @PropertyDef(label = "是否外包", description = "是/否")
    private String sfwb;
}
src/main/java/com/fzzy/async/fzzy40/entity/Fz40DrugLogWay.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,65 @@
package com.fzzy.async.fzzy40.entity;
import com.alibaba.fastjson.annotation.JSONField;
import com.bstek.dorado.annotation.PropertyDef;
import com.fasterxml.jackson.annotation.JsonFormat;
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:YAN
 */
@Data
@Entity
@Table(name = "D_DRUG_LOG_WAY")
public class Fz40DrugLogWay implements Serializable {
    @Id
    @Column(name = "WAY_ID_", length = 40)
    @PropertyDef(label = "wayId")
    private String wayId;
    @Column(name = "ID_", length = 40)
    @PropertyDef(label = "id")
    @JSONField
    private String id;
    @Column(name = "DRUG_LOG_ID_", length = 4)
    @PropertyDef(label = "熏蒸备案编号", description = "4位顺序号")
    @JSONField
    private String drugLogId;
    @Column(name = "DEPT_ID_", length = 21)
    @PropertyDef(label = "库区代码")
    @JSONField
    private String deptId;
    @Column(name = "tbrq")
    @PropertyDef(label = "填报日期")
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date tbrq;
    @Column(name = "xznd", precision = 20, scale = 3)
    @PropertyDef(label = "设定熏蒸浓度", description = "单位:ml/m³")
    private Double xznd;
    @Column(name = "mbsj")
    @PropertyDef(label = "密闭时间", description = "单位:天")
    private Integer mbsj;
    @Column(name = "xzfs", length = 30)
    @PropertyDef(label = "熏蒸方式")
    private String xzfs;
    @Column(name = "sqfs", length = 30)
    @PropertyDef(label = "散气方式")
    private String sqfs;
}
src/main/java/com/fzzy/async/fzzy40/entity/Fz4DrugLogApply.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,170 @@
package com.fzzy.async.fzzy40.entity;
import com.alibaba.fastjson.annotation.JSONField;
import com.bstek.dorado.annotation.PropertyDef;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import javax.persistence.*;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
/**
 * ç†è’¸å¤‡æ¡ˆä¸»è¡¨ä¿¡æ¯
 *
 * @Author:YAN
 */
@Entity
@Data
@Table(name = "D_DRUG_LOG_APPLY")
public class Fz4DrugLogApply implements Serializable {
    @Id
    @Column(name = "xzbm", length = 4)
    @PropertyDef(label = "熏蒸备案编号", description = "4位顺序号")
    private String xzbm;
    @Id
    @Column(name = "DEPT_ID_", length = 21)
    @PropertyDef(label = "库区代码")
    private String deptId;
    @Column(name = "COMPANY_ID_", length = 10)
    @PropertyDef(label = "组织编码")
    private String companyId;
    @Id
    @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 = "单位代码", description = "企业信用代码")
    private String dwdm;
    @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 = "FILE_STORAGE_ID_", length = 19)
    @PropertyDef(label = "文件存储ID")
    private String fileStorageId;
    @Column(name = "DRUG_NAME_", length = 64)
    @PropertyDef(label = "药剂名称")
    private String drugName;
    @Column(name = "DRUG_TYPE_", length = 10)
    @PropertyDef(label = "药剂类型/型号")
    private String drugType;
    @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 = "lqsj")
    @PropertyDef(label = "领取时间")
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date lqsj;
    @Column(name = "UPDATE_TIME_")
    @PropertyDef(label = "更新时间")
    private Date updateTime;
    /**
     * å‚¨ç²®ç²®æƒ…明细表
     */
    @Transient
    private List<Fz40DrugLogDtl> drugLogDtls;
    /**
     * ç†è’¸å¤‡æ¡ˆæ–¹å¼
     */
    @Transient
    private List<Fz40DrugLogWay> drugLogWays;
    /**
     * ç†è’¸ä½œä¸šäººå‘˜
     */
    @Transient
    private List<Fz40DrugLogPeople> drugLogPeople;
}
src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1023.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,158 @@
package com.fzzy.async.fzzy40.impl;
import com.alibaba.fastjson.JSON;
import com.fzzy.api.Constant;
import com.fzzy.api.data.PushProtocol;
import com.fzzy.api.entity.*;
import com.fzzy.api.utils.ContextUtil;
import com.fzzy.api.view.repository.*;
import com.fzzy.async.fzzy40.entity.*;
import com.fzzy.async.fzzy40.repository.Fzzy40Sync1023Rep;
import com.fzzy.async.fzzy40.repository.Fzzy40SyncDrugLogDtlRep;
import com.fzzy.async.fzzy40.repository.Fzzy40SyncDrugLogPeopleRep;
import com.fzzy.async.fzzy40.repository.Fzzy40SyncDrugLogWayRep;
import com.fzzy.otherview.gd2022.dto.GdApi1023;
import com.fzzy.otherview.gd2022.dto.GdApi1023Dtl;
import com.fzzy.otherview.gd2022.dto.GdApi1023People;
import com.fzzy.otherview.gd2022.dto.GdApi1023Way;
import com.fzzy.push.gd2022.ApiCodeConstant;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang.time.DateFormatUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.text.DateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
/**
 * ç†è’¸å¤‡æ¡ˆä¿¡æ¯
 *
 * @Author:YAN
 */
@Slf4j
@Component
public class Fzzy40Sync1023 {
    @Autowired
    private Fzzy40Sync1023Rep fzzy40Sync1023Rep;
    @Autowired
    private Fzzy40SyncDrugLogPeopleRep drugLogPeopleRep;
    @Autowired
    private Fzzy40SyncDrugLogWayRep drugLogWayRep;
    @Autowired
    private Fzzy40SyncDrugLogDtlRep drugLogDtlRep;
    @Autowired
    private ApiLogRep apiLogRep;
    @Autowired
    private ApiInfoDataRep apiInfoDataRep;
    /**
     * åŒæ­¥ç†è’¸å¤‡æ¡ˆä¿¡æ¯
     *
     * @param deptId
     * @param start
     * @param end
     */
    public void syncData(String deptId, Date start, Date end) {
        log.info("-------------1023接口设备信息开始同步------------------");
        //同步数据,只记录失败的信息
        ApiLog apiLog = new ApiLog();
        apiLog.setType(ApiLog.TYPE_SYNC);
        apiLog.setKqdm(deptId);
        apiLog.setUploadTime(new Date());
        apiLog.setInteId(Constant.API_CODE_1107);
        apiLog.setStatus(99);
        apiLog.setId(ContextUtil.getUUID());
        try {
            List<Fz4DrugLogApply> list = fzzy40Sync1023Rep.listDrugLogApply(deptId);
            if (null == list || list.isEmpty()) {
                log.info("-------------没有获取到熏蒸备案信息------------------");
                return;
            }
            List<GdApi1023Dtl> dtlList = new ArrayList<>();
            List<GdApi1023Way> wayList = new ArrayList<>();
            List<GdApi1023People> peopleList = new ArrayList<>();
            for (Fz4DrugLogApply data : list) {
                //储粮粮情明细表
                String tbrq = "";
                if(null != data.getTbrq()){
                    tbrq = DateFormatUtils.format(data.getTbrq(), "yyyyMMdd");
                }
                List<Fz40DrugLogDtl> dtls = drugLogDtlRep.listDrugLogDtl(data.getXzbm()+data.getDeptId()+tbrq);
                for (Fz40DrugLogDtl dtl : dtls) {
                    GdApi1023Dtl gdApi1023Dtl = new GdApi1023Dtl();
                    BeanUtils.copyProperties(dtl, gdApi1023Dtl);
                    gdApi1023Dtl.setCfdm(dtl.getDepotId());
                    gdApi1023Dtl.setLspzdm(dtl.getFoodVariety());
                    gdApi1023Dtl.setLsxzdm(dtl.getFoodType());
                    gdApi1023Dtl.setLsdjdm(dtl.getFoodLevel());
                    gdApi1023Dtl.setLssl(dtl.getNumber());
                    gdApi1023Dtl.setSf(dtl.getPerWet());
                    gdApi1023Dtl.setZz(dtl.getPerImpurity());
                    dtlList.add(gdApi1023Dtl);
                }
                List<Fz40DrugLogWay> ways = drugLogWayRep.listDrugLogWay(data.getXzbm()+data.getDeptId()+tbrq);
                for (Fz40DrugLogWay way : ways) {
                    GdApi1023Way gdApi1023Way = new GdApi1023Way();
                    BeanUtils.copyProperties(way, gdApi1023Way);
                    wayList.add(gdApi1023Way);
                }
                List<Fz40DrugLogPeople> peoples = drugLogPeopleRep.listDrugLogPeople(data.getXzbm()+data.getDeptId()+tbrq);
                for (Fz40DrugLogPeople people : peoples) {
                    GdApi1023People gdApi1023People = new GdApi1023People();
                    BeanUtils.copyProperties(people, gdApi1023People);
                    peopleList.add(gdApi1023People);
                }
                GdApi1023 gdApi1023 = new GdApi1023();
                BeanUtils.copyProperties(data , gdApi1023);
                gdApi1023.setXzbm(data.getXzbm());
                gdApi1023.setKqdm(data.getDeptId());
                gdApi1023.setYjmc(data.getDrugName());
                gdApi1023.setYjlx(data.getDrugType());
                gdApi1023.setZhgxsj(data.getUpdateTime());
                gdApi1023.setDtls(dtlList);
                gdApi1023.setWays(wayList);
                gdApi1023.setPeoples(peopleList);
                //持久化保存,单独存入非国标接口表
                ApiInfoData infoData = new ApiInfoData();
                infoData.setId(ContextUtil.getUUID());
                infoData.setKqdm(data.getDeptId());
                infoData.setInteType(Constant.API_CATEGORY_13);
                infoData.setInteId(ApiCodeConstant.API_1023);
                infoData.setBizType(PushProtocol.SB_GD_2022.getCode());
                infoData.setUpdateTime(data.getUpdateTime());
                infoData.setDataId(data.getXzbm() + data.getDeptId() + DateFormatUtils.format(data.getTbrq(), "yyMMdd"));
                List<ApiInfoData> apiInfoList = apiInfoDataRep.getDataByDataId(data.getXzbm() + data.getDeptId() + DateFormatUtils.format(data.getTbrq(), "yyMMdd"));
                if (null == apiInfoList || apiInfoList.isEmpty()) {
                    gdApi1023.setCzbz(Constant.CZBZ_I);
                    infoData.setCzbz(Constant.CZBZ_I);
                } else {
                    gdApi1023.setCzbz(apiInfoList.get(0).getCzbz());
                    infoData.setCzbz(apiInfoList.get(0).getCzbz());
                }
                infoData.setData(JSON.toJSONString(gdApi1023));
                //保存数据
                apiInfoDataRep.save(infoData);
                log.info("1023---同步数据:{}", gdApi1023.toString());
            }
        } catch (Exception e) {
            log.error("---设备信息同步执行失败----{}", e.toString());
            apiLog.setResult("设备信息同步执行失败:" + e.getMessage());
            apiLogRep.save(apiLog);
        }
    }
}
src/main/java/com/fzzy/async/fzzy40/repository/Fzzy40Sync1023Rep.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,22 @@
package com.fzzy.async.fzzy40.repository;
import com.fzzy.async.fzzy40.entity.*;
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 Fzzy40Sync1023Rep extends JpaRepository<Fz40DeptDevice, String> {
    //查询熏蒸备案主表
    @Query("from Fz4DrugLogApply where deptId =:deptId")
    List<Fz4DrugLogApply> listDrugLogApply(@Param("deptId") String deptId);
   }
src/main/java/com/fzzy/otherview/gd2022/GdApi1023.view.xml
@@ -3,9 +3,535 @@
  <Arguments/>
  <Context/>
  <Model>
    <DataType name="dtMain">
      <Property name="creationType">com.fzzy.otherview.gd2022.dto.GdApi1023</Property>
      <PropertyDef name="xzbm">
        <Property/>
      </PropertyDef>
      <PropertyDef name="kqdm">
        <Property/>
      </PropertyDef>
      <PropertyDef name="tbrq">
        <Property name="dataType">Date</Property>
      </PropertyDef>
      <PropertyDef name="dwdm">
        <Property/>
      </PropertyDef>
      <PropertyDef name="sqxzrq">
        <Property/>
      </PropertyDef>
      <PropertyDef name="fzr">
        <Property/>
      </PropertyDef>
      <PropertyDef name="fzrdh">
        <Property/>
      </PropertyDef>
      <PropertyDef name="xcfzr">
        <Property/>
      </PropertyDef>
      <PropertyDef name="xcfzrzw">
        <Property/>
      </PropertyDef>
      <PropertyDef name="xcfzrdh">
        <Property/>
      </PropertyDef>
      <PropertyDef name="tbr">
        <Property/>
      </PropertyDef>
      <PropertyDef name="tbrdh">
        <Property/>
      </PropertyDef>
      <PropertyDef name="sfszjjxd">
        <Property/>
      </PropertyDef>
      <PropertyDef name="sfszjjxx">
        <Property/>
      </PropertyDef>
      <PropertyDef name="sfszjjxn">
        <Property/>
      </PropertyDef>
      <PropertyDef name="sfszjjxb">
        <Property/>
      </PropertyDef>
      <PropertyDef name="ssxzzystqybqk">
        <Property/>
      </PropertyDef>
      <PropertyDef name="xzssgcap">
        <Property/>
      </PropertyDef>
      <PropertyDef name="aqfhjyjcccs">
        <Property/>
      </PropertyDef>
      <PropertyDef name="xzzysx">
        <Property/>
      </PropertyDef>
      <PropertyDef name="fileStorageId">
        <Property/>
      </PropertyDef>
      <PropertyDef name="yjmc">
        <Property/>
      </PropertyDef>
      <PropertyDef name="yjlx">
        <Property/>
      </PropertyDef>
      <PropertyDef name="yjyxqz">
        <Property/>
      </PropertyDef>
      <PropertyDef name="lqsl">
        <Property name="dataType">Double</Property>
      </PropertyDef>
      <PropertyDef name="sysbjfs">
        <Property/>
      </PropertyDef>
      <PropertyDef name="zcdd">
        <Property/>
      </PropertyDef>
      <PropertyDef name="lqr">
        <Property/>
      </PropertyDef>
      <PropertyDef name="lqrq">
        <Property name="dataType">Date</Property>
      </PropertyDef>
      <PropertyDef name="czbz">
        <Property/>
      </PropertyDef>
      <PropertyDef name="zhgxsj">
        <Property/>
      </PropertyDef>
    </DataType>
    <DataType name="dtGBArea">
      <Property name="creationType">com.fzzy.api.entity.GbArea</Property>
    </DataType>
  </Model>
  <View layout="regionPadding:10">
    <DataSet id="dsMain">
      <Property name="dataType">[dtMain]</Property>
      <Property name="dataProvider">whjlApi1101PR#listData</Property>
    </DataSet>
    <Container layout="regionPadding:10" layoutConstraint="top">
      <Property name="exClassName">bg-color</Property>
      <Property name="height">55</Property>
      <Property name="contentOverflow">hidden</Property>
      <Label layoutConstraint="left">
        <Property name="text">菜单栏:</Property>
      </Label>
      <Button layoutConstraint="left">
        <ClientEvent name="onClick">view.get(&quot;#dsMain&quot;).insert();&#xD;
view.get(&quot;#dialogMain&quot;).show();</ClientEvent>
        <Property name="iconClass">fa fa-plus</Property>
        <Property name="caption">新增</Property>
        <Property name="exClassName">btn-default</Property>
      </Button>
      <Button layoutConstraint="left">
        <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;
}</ClientEvent>
        <Property name="caption">编辑</Property>
        <Property name="iconClass">fa fa-pencil</Property>
        <Property name="exClassName">btn-warm</Property>
      </Button>
      <Button layoutConstraint="left">
        <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">btn-warn</Property>
      </Button>
      <Button layoutConstraint="left">
        <ClientEvent name="onClick">view.get(&quot;#dsMain&quot;).flushAsync();</ClientEvent>
        <Property name="caption">刷新</Property>
        <Property name="iconClass">fa fa-search</Property>
        <Property name="exClassName">btn-flush</Property>
      </Button>
      <Button layoutConstraint="left">
        <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">btn-default</Property>
      </Button>
      <Button layoutConstraint="right">
        <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">btn-flush</Property>
      </Button>
    </Container>
    <Container layoutConstraint="center">
      <Property name="exClassName">bg-color</Property>
      <DataGrid id="dgMain">
        <ClientEvent name="onDataRowDoubleClick">var data = view.get(&quot;#dsMain.data:#&quot;);&#xD;
if(data){&#xD;
    view.get(&quot;#dialogMain&quot;).show();&#xD;
}</ClientEvent>
        <Property name="dataSet">dsMain</Property>
        <Property name="selectionMode">multiRows</Property>
        <Property name="readOnly">true</Property>
        <RowNumColumn/>
        <RowSelectorColumn>
          <Property name="caption">上传</Property>
        </RowSelectorColumn>
        <DataColumn name="jlqybh">
          <Property name="property">jlqybh</Property>
          <Property name="align">center</Property>
        </DataColumn>
        <DataColumn name="jlqymc">
          <Property name="property">jlqymc</Property>
          <Property name="align">center</Property>
        </DataColumn>
        <DataColumn name="jlqytyshxydm">
          <Property name="property">jlqytyshxydm</Property>
          <Property name="align">center</Property>
        </DataColumn>
        <DataColumn name="jlqylx">
          <Property name="property">jlqylx</Property>
          <Property name="align">center</Property>
        </DataColumn>
        <DataColumn name="qyxz">
          <Property name="property">qyxz</Property>
          <Property name="align">center</Property>
        </DataColumn>
        <DataColumn name="gsdjzch">
          <Property name="property">gsdjzch</Property>
          <Property name="align">center</Property>
        </DataColumn>
        <DataColumn name="sfjbjlcbzg">
          <Property name="property">sfjbjlcbzg</Property>
          <Property name="align">center</Property>
        </DataColumn>
        <DataColumn name="fddbr">
          <Property name="property">fddbr</Property>
          <Property name="align">center</Property>
        </DataColumn>
        <DataColumn name="sfyx">
          <Property name="property">sfyx</Property>
          <Property name="align">center</Property>
        </DataColumn>
      </DataGrid>
    </Container>
    <Dialog id="dialogMain">
      <Property name="width">85%</Property>
      <Property name="closeable">false</Property>
      <Property name="iconClass">fa fa-sliders</Property>
      <Property name="caption">军粮企业信息</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;
    view.get(&quot;#dsMain&quot;).flushAsync();&#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>
          <AutoFormElement>
            <Property name="name">jlqybh</Property>
            <Property name="property">jlqybh</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">jlqymc</Property>
            <Property name="property">jlqymc</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">jlqyjc</Property>
            <Property name="property">jlqyjc</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">jlzzjgdm</Property>
            <Property name="property">jlzzjgdm</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">jlqytyshxydm</Property>
            <Property name="property">jlqytyshxydm</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">jlqylx</Property>
            <Property name="property">jlqylx</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">qyjjlx</Property>
            <Property name="property">qyjjlx</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">qyxz</Property>
            <Property name="property">qyxz</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">djzclx</Property>
            <Property name="property">djzclx</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">gsdjzch</Property>
            <Property name="property">gsdjzch</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">sfjbjlcbzg</Property>
            <Property name="property">sfjbjlcbzg</Property>
            <Property name="trigger">listDropYN</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">fddbr</Property>
            <Property name="property">fddbr</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">qydz</Property>
            <Property name="property">qydz</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">qydh</Property>
            <Property name="property">qydh</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">qycz</Property>
            <Property name="property">qycz</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">qydzyx</Property>
            <Property name="property">qydzyx</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">qywz</Property>
            <Property name="property">qywz</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">qyyzbm</Property>
            <Property name="property">qyyzbm</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">qyjd</Property>
            <Property name="property">qyjd</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">qywd</Property>
            <Property name="property">qywd</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">qyxzqhmc</Property>
            <Property name="property">qyxzqhmc</Property>
            <Property name="trigger">cddGbArea</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">qyxzqhdm</Property>
            <Property name="property">qyxzqhdm</Property>
            <Property name="trigger">cddGbArea</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">khyh</Property>
            <Property name="property">khyh</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">yhzh</Property>
            <Property name="property">yhzh</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">yhxydj</Property>
            <Property name="property">yhxydj</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">gdzc</Property>
            <Property name="property">gdzc</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">zczb</Property>
            <Property name="property">zczb</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">zc</Property>
            <Property name="property">zc</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">qycyrys</Property>
            <Property name="property">qycyrys</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">sfyx</Property>
            <Property name="property">sfyx</Property>
            <Property name="trigger">listDropYN</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">bz</Property>
            <Property name="property">bz</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">bizId</Property>
            <Property name="property">bizId</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">updateTime</Property>
            <Property name="property">updateTime</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">czbz</Property>
            <Property name="property">czbz</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">kqdm</Property>
            <Property name="property">kqdm</Property>
            <Editor/>
          </AutoFormElement>
        </AutoForm>
      </Children>
      <Tools/>
    </Dialog>
    <UpdateAction id="updateSave">
      <Property name="dataResolver">whjlApi1101PR#saveData</Property>
      <UpdateItem>
        <Property name="dataPath">[#current]</Property>
        <Property name="dataSet">dsMain</Property>
      </UpdateItem>
    </UpdateAction>
    <AjaxAction id="ajaxDel">
      <Property name="confirmMessage">当前数据删除后无法恢复,请确认要删除么?</Property>
      <Property name="service">whjlApi1101PR#delData</Property>
    </AjaxAction>
    <AjaxAction id="ajaxPush">
      <Property name="service">whjlApi1101PR#pushData</Property>
    </AjaxAction>
    <CustomDropDown id="cddGbArea">
      <Property name="assignmentMap">qyxzqhdm=code,qyxzqhmc=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>
        </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>
    <ListDropDown id="listDropYN">
      <Property name="items">是,否</Property>
    </ListDropDown>
  </View>
</ViewConfig>
src/main/java/com/fzzy/otherview/gd2022/dto/GdApi1023.java
@@ -1,12 +1,15 @@
package com.fzzy.otherview.gd2022.dto;
import com.alibaba.fastjson.annotation.JSONField;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
/**
 * å¹¿ä¸œçœæŽ¥å£-1023 ç†è’¸å¤‡æ¡ˆ
 * å¹¿ä¸œçœæŽ¥å£-1023 ç†è’¸å¤‡æ¡ˆ(主表)
 *
 * @author czt
 * @date 2023/8/17
@@ -19,5 +22,52 @@
     */
    private static final long serialVersionUID = 1L;
    private String xzbm;    //熏蒸编码
    private String kqdm;    //库区代码
    @JSONField(format = "yyyy-MM-dd")
    private Date tbrq;      //填报日期
    private String dwdm;    //单位代码
    @JSONField(format = "yyyy-MM-dd")
    private Date sqxzrq;  //申请熏蒸日期
    private String fzr;     //负责人
    private String fzrdh;   //负责人电话
    private String xcfzr;   //现场负责人
    private String xcfzrzw; //现场负责人职务
    private String xcfzrdh; //现场负责人电话
    private String tbr;     //填表人
    private String tbrdh;   //填表人电话
    private String sfszjjxd;  //是否设置警戒线(东)
    private String sfszjjxx;  //是否设置警戒线(西)
    private String sfszjjxn;  //是否设置警戒线(南)
    private String sfszjjxb;  //是否设置警戒线(北)
    private String ssxzzystqybqk;  //实施熏蒸作业时天气预报情况
    private String xzssgcap;       //熏蒸安排及实施过程
    private String aqfhjyjcccs;    //安全防护及应急处置措施
    private String xzzysx;         //熏蒸注意事项
    private String fileStorageId;  //文件存储 ID
    private String yjmc;    //药剂名称
    private String yjlx;    //药剂类型/型号
    private String yjyxqz;  //药剂有效期至
    private Double lqsl;    //领取数量(公斤)
    private String sysbjfs;  //施药设备及方式
    private String zcdd;     //暂存地点
    private String lqr;      //领取人
    private Date lqrq;       //领取时间
    private String czbz;     //操作标志
    private Date zhgxsj;   //最后更新时间
    private List<GdApi1023Dtl> dtls; //实施熏蒸作业的储粮粮情明细
    private List<GdApi1023People> peoples; //熏蒸作业人员信息
    private List<GdApi1023Way> ways; //熏蒸备案方式
}
src/main/java/com/fzzy/otherview/gd2022/dto/GdApi1023Dtl.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,42 @@
package com.fzzy.otherview.gd2022.dto;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serializable;
import java.util.Date;
/**
 * å®žæ–½ç†è’¸ä½œä¸šçš„储粮粮情明细表(dtl):
 */
@Data
@EqualsAndHashCode(callSuper = false)
public class GdApi1023Dtl implements Serializable {
    private static final long serialVersionUID = 1L;
    private String cfdm;    //仓房/油罐代码
    private String lspzdm;    //粮食品种代码
    private String lsxzdm;    //粮食性质代码
    private String lsdjdm;    //粮食等级代码
    private Double lssl;    //粮食数量(吨)
    private Double sf;    //水份
    private Double zz;    //杂志
    private Double lw;    //粮温
    private Double cw;    //仓温
    private Double cnsd;    //仓内湿度
    private String clfs;    //储粮方式
    private Date rkrq;    //入库日期
    private String hc;    //害虫
    private String cldjpd;    //虫粮等级判定
    private Double ldtj;    //粮堆体积(m3)
    private Double kjtj;    //空间体积(m3)
    private Double lddwyyl;    //粮堆单位用药量
    private Double kjdwyyl;    //空间单位用药量
    private Double zyyl;    //总用药量
    private String qmx;    //气密性
    private Date jhxzksrq;    //计划熏蒸开始日期
    private Date jhxzjsrq;    //计划熏蒸结束日期
}
src/main/java/com/fzzy/otherview/gd2022/dto/GdApi1023People.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,21 @@
package com.fzzy.otherview.gd2022.dto;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serializable;
@Data
@EqualsAndHashCode(callSuper = false)
public class GdApi1023People implements Serializable {
    private static final long serialVersionUID = 1L;
    private String xm;    //姓名
    private String zw;    //职务
    private String zyzg;    //职业资格
    private String stzk;    //身体状况
    private String xzrwfg;    //熏蒸任务分工
    private String sfwb;    //是否外包
}
src/main/java/com/fzzy/otherview/gd2022/dto/GdApi1023Way.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,20 @@
package com.fzzy.otherview.gd2022.dto;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serializable;
@Data
@EqualsAndHashCode(callSuper = false)
public class GdApi1023Way implements Serializable {
    private static final long serialVersionUID = 1L;
    private String xznd;    //设定熏蒸浓度(ml/m3)
    private String mbsj;    //密闭时间(天)
    private String xzfs;    //熏蒸方式
    private String sqfs;    //散气方式
}
src/main/java/com/fzzy/otherview/gd2022/pr/GDApi1023PR.java
@@ -1,6 +1,19 @@
package com.fzzy.otherview.gd2022.pr;
import com.alibaba.fastjson.JSONObject;
import com.bstek.dorado.annotation.DataProvider;
import com.fzzy.api.entity.ApiInfoData;
import com.fzzy.api.service.ApiCommonService;
import com.fzzy.api.service.ApiPushManager;
import com.fzzy.api.view.repository.ApiInfoDataRep;
import com.fzzy.otherview.gd2022.dto.GdApi1023;
import com.fzzy.otherview.whhpjl.WhjlConstant;
import com.fzzy.otherview.whhpjl.dto.WhjlApi1101;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.util.ArrayList;
import java.util.List;
/**
 * å¹¿ä¸œçœæŽ¥å£-1023 ç†è’¸å¤‡æ¡ˆ
@@ -11,5 +24,36 @@
@Component
public class GDApi1023PR {
    @Autowired
    private ApiCommonService apiCommonService;
    @Autowired
    private ApiPushManager apiPushManager;
    @Autowired
    private ApiInfoDataRep apiInfoDataRep;
    /**
     * èŽ·å–åˆ—è¡¨ä¿¡æ¯
     * whjlApi1101PR#listData
     *
     * @return
     */
    @DataProvider
    public List<GdApi1023> listData() {
        List<ApiInfoData> result = apiInfoDataRep.getDataByInteId(WhjlConstant.API_CODE_1101);
        if(null == result ||result.isEmpty()){
            return null;
        }
        List<GdApi1023> list = new ArrayList<>();
        GdApi1023 gbApi1023;
        for (ApiInfoData infoData : result) {
//            GdApi1023 gdApi1023= JSONObject.parseObject(infoData.getData(), GdApi1023.class);
//            gdApi1023.setKqdm(infoData.getKqdm());
//            gdApi1023.setCzbz(infoData.getCzbz());
//            gdApi1023.setUpdateTime(infoData.getUpdateTime());
//            gdApi1023.setBizId(infoData.getDataId());
//            list.add(GdApi1023);
        }
        return list;
    }
}
src/main/java/com/fzzy/push/gd2022/ApiCodeConstant.java
@@ -6,6 +6,7 @@
public class ApiCodeConstant {
    public static String API_1023 = "1023";
    /**
     * æŽ¥å£ç¼–码-1001 èº«ä»½è®¤è¯æŽ¥å£
     */