CZT
2023-09-15 49c0d402ebd35fb6753e4fab3106d56d76bd802b
3.5版本中加入熏蒸备案同步
已修改3个文件
已添加9个文件
748 ■■■■■ 文件已修改
src/main/java/com/fzzy/api/view/repository/ApiInfoDataRep.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/fzzy/async/fzzy35/Fzzy35SyncService13.java 23 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/fzzy/async/fzzy35/entity/Fz35DrugLogApply.java 171 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/fzzy/async/fzzy35/entity/Fz35DrugLogDtl.java 146 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/fzzy/async/fzzy35/entity/Fz35DrugLogPeople.java 70 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/fzzy/async/fzzy35/entity/Fz35DrugLogWay.java 65 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/fzzy/async/fzzy35/impl/Fzzy35Sync1023.java 186 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/fzzy/async/fzzy35/repository/Fzzy35Sync1023Rep.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/fzzy/async/fzzy35/repository/Fzzy35SyncDrugLogDtlRep.java 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/fzzy/async/fzzy35/repository/Fzzy35SyncDrugLogPeopleRep.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/fzzy/async/fzzy35/repository/Fzzy35SyncDrugLogWayRep.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1023.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/fzzy/api/view/repository/ApiInfoDataRep.java
@@ -44,11 +44,11 @@
    int updateStatus(@Param("id") String id, @Param("data") String data, @Param("czbz") String czbz);
    /**
     * æ ¹æ®æŽ¥å£ç¼–码和数据内容ID查询数据
     * æ ¹æ®åº“区代码、接口编码、数据id查询
     *
     * @param inteId
     * @return
     */
    @Query("from ApiInfoData where inteId=:inteId and dataId=:dataId ")
    List<ApiInfoData> getDataByInteAndData(@Param("inteId") String inteId, @Param("dataId") String dataId);
    @Query("from ApiInfoData where inteId=:inteId and dataId=:dataId and kqdm=:kqdm")
    List<ApiInfoData> getDataByInteAndData(@Param("inteId") String inteId, @Param("dataId") String dataId, @Param("kqdm") String kqdm);
}
src/main/java/com/fzzy/async/fzzy35/Fzzy35SyncService13.java
@@ -1,12 +1,11 @@
package com.fzzy.async.fzzy35;
import com.fzzy.api.data.ApiParam;
import com.fzzy.api.data.PushProtocol;
import com.fzzy.api.data.SyncProtocol;
import com.fzzy.api.service.SyncService13;
import com.fzzy.async.fzzy35.impl.Fzzy35Sync1302;
import com.fzzy.async.fzzy35.impl.Fzzy35Sync1303;
import com.fzzy.async.fzzy35.impl.Fzzy35Sync1304;
import com.fzzy.async.fzzy35.impl.Fzzy35Sync1310;
import com.fzzy.async.fzzy35.impl.*;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
@@ -25,6 +24,8 @@
    private Fzzy35Sync1304 fzzySync1304;
    @Autowired
    private Fzzy35Sync1310 fzzySync1310;
    @Autowired
    private Fzzy35Sync1023 fzzySync1023;
    @Override
@@ -47,13 +48,13 @@
        //质检同步
        fzzySync1310.syncData(param.getKqdm(), param.getDeptId(), param.getStart(), param.getEnd());
//        /*-----各省独有接口信息同步-----*/
//        if (StringUtils.isNotEmpty(param.getPushProtocol()) && PushProtocol.SB_GD_2022.getCode().equals(param.getPushProtocol())) {
//            //广东省平台2022版,需要同步熏蒸备案信息
//            //熏蒸备案数据同步
//            fzzySync1023.syncData(param.getDeptId(), param.getStart(), param.getEnd());
//
//        }
        /*-----各省独有接口信息同步-----*/
        if (StringUtils.isNotEmpty(param.getPushProtocol()) && PushProtocol.SB_GD_2022.getCode().equals(param.getPushProtocol())) {
            //广东省平台2022版,需要同步熏蒸备案信息
            //熏蒸备案数据同步
            fzzySync1023.syncData(param.getKqdm(), param.getDeptId(), param.getStart(), param.getEnd());
        }
//
//        //通风作业信息同步
//        fzzySync1305.syncData(param.getDeptId(), param.getStart(), param.getEnd());
src/main/java/com/fzzy/async/fzzy35/entity/Fz35DrugLogApply.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,171 @@
package com.fzzy.async.fzzy35.entity;
import com.bstek.dorado.annotation.PropertyDef;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fzzy.async.fzzy40.entity.Fz40DrugLogDtl;
import com.fzzy.async.fzzy40.entity.Fz40DrugLogPeople;
import com.fzzy.async.fzzy40.entity.Fz40DrugLogWay;
import lombok.Data;
import javax.persistence.*;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
/**
 * ç†è’¸å¤‡æ¡ˆä¸»è¡¨ä¿¡æ¯
 *
 * @author czt
 */
@Entity
@Data
@Table(name = "D_DRUG_LOG_APPLY")
public class Fz35DrugLogApply implements Serializable {
    @Id
    @Column(name = "xzbm", length = 4)
    @PropertyDef(label = "熏蒸备案编号", description = " yyyyMMdd + 4位顺序号")
    private String xzbm;
    @Column(name = "DEPT_ID_", length = 21)
    @PropertyDef(label = "库区代码")
    private String deptId;
    @Column(name = "COMPANY_ID_", length = 10)
    @PropertyDef(label = "组织编码")
    private String companyId;
    @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/fzzy35/entity/Fz35DrugLogDtl.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,146 @@
package com.fzzy.async.fzzy35.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 Fz35DrugLogDtl 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/fzzy35/entity/Fz35DrugLogPeople.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,70 @@
package com.fzzy.async.fzzy35.entity;
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 Fz35DrugLogPeople 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/fzzy35/entity/Fz35DrugLogWay.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,65 @@
package com.fzzy.async.fzzy35.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 Fz35DrugLogWay 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/fzzy35/impl/Fzzy35Sync1023.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,186 @@
package com.fzzy.async.fzzy35.impl;
import com.alibaba.fastjson.JSON;
import com.fzzy.api.Constant;
import com.fzzy.api.data.PushProtocol;
import com.fzzy.api.entity.Api1105;
import com.fzzy.api.entity.ApiInfoData;
import com.fzzy.api.entity.ApiLog;
import com.fzzy.api.service.ApiCommonService;
import com.fzzy.api.utils.ContextUtil;
import com.fzzy.api.view.repository.ApiInfoDataRep;
import com.fzzy.api.view.repository.ApiLogRep;
import com.fzzy.async.fzzy35.entity.Fz35DrugLogApply;
import com.fzzy.async.fzzy35.repository.Fzzy35Sync1023Rep;
import com.fzzy.async.fzzy35.entity.Fz35DrugLogDtl;
import com.fzzy.async.fzzy35.entity.Fz35DrugLogPeople;
import com.fzzy.async.fzzy35.entity.Fz35DrugLogWay;
import com.fzzy.async.fzzy35.repository.Fzzy35SyncDrugLogDtlRep;
import com.fzzy.async.fzzy35.repository.Fzzy35SyncDrugLogPeopleRep;
import com.fzzy.async.fzzy35.repository.Fzzy35SyncDrugLogWayRep;
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.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 czt
 */
@Slf4j
@Component
public class Fzzy35Sync1023 {
    @Autowired
    private Fzzy35Sync1023Rep fzzy35Sync1023Rep;
    @Autowired
    private Fzzy35SyncDrugLogPeopleRep drugLogPeopleRep;
    @Autowired
    private Fzzy35SyncDrugLogWayRep drugLogWayRep;
    @Autowired
    private Fzzy35SyncDrugLogDtlRep drugLogDtlRep;
    @Autowired
    private ApiLogRep apiLogRep;
    @Autowired
    private ApiInfoDataRep apiInfoDataRep;
    @Autowired
    private ApiCommonService commonService;
    /**
     * åŒæ­¥ç†è’¸å¤‡æ¡ˆä¿¡æ¯
     *
     * @param deptId
     * @param start
     * @param end
     */
    public void syncData(String kqdm, 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(ApiCodeConstant.API_1023);
        apiLog.setStatus(99);
        apiLog.setId(ContextUtil.getUUID());
        try {
            List<Fz35DrugLogApply> list = fzzy35Sync1023Rep.listDrugLogApply(deptId, start, end);
            if (null == list || list.isEmpty()) {
                log.info("-------------没有获取到熏蒸备案信息------------------");
                return;
            }
            GdApi1023 gdApi1023;
            GdApi1023Way gdApi1023Way;
            GdApi1023People gdApi1023People;
            GdApi1023Dtl gdApi1023Dtl;
            List<GdApi1023Dtl> dtlList;
            List<GdApi1023Way> wayList;
            List<GdApi1023People> peopleList;
            List<ApiInfoData> apiInfoList;
            ApiInfoData infoData;
            Api1105 api1105;
            for (Fz35DrugLogApply data : list) {
                gdApi1023 = new GdApi1023();
                BeanUtils.copyProperties(data, gdApi1023);
                gdApi1023.setXzbm(data.getXzbm().substring(7));
                gdApi1023.setKqdm(kqdm);
                gdApi1023.setDwdm(kqdm.substring(0, 18));
                gdApi1023.setYjmc(data.getDrugName());
                gdApi1023.setYjlx(data.getDrugType());
                gdApi1023.setZhgxsj(data.getUpdateTime());
                //储粮粮情明细表
                List<Fz35DrugLogDtl> dtls = drugLogDtlRep.listDrugLogDtl(data.getXzbm());
                if (null != dtls && dtls.size() > 0) {
                    dtlList = new ArrayList<>();
                    for (Fz35DrugLogDtl dtl : dtls) {
                        gdApi1023Dtl = new GdApi1023Dtl();
                        BeanUtils.copyProperties(dtl, gdApi1023Dtl);
                        //获取货位信息
                        api1105 = commonService.getApi1105Cache(dtl.getDepotId());
                        if (null == api1105) {
                            continue;
                        }
                        gdApi1023Dtl.setCfdm(api1105.getHwdm().substring(0, 25));
                        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);
                    }
                    gdApi1023.setDtls(dtlList);
                }
                List<Fz35DrugLogWay> ways = drugLogWayRep.listDrugLogWay(data.getXzbm());
                if (null != ways && ways.size() > 0) {
                    wayList = new ArrayList<>();
                    for (Fz35DrugLogWay way : ways) {
                        gdApi1023Way = new GdApi1023Way();
                        BeanUtils.copyProperties(way, gdApi1023Way);
                        wayList.add(gdApi1023Way);
                    }
                    gdApi1023.setWays(wayList);
                }
                List<Fz35DrugLogPeople> peoples = drugLogPeopleRep.listDrugLogPeople(data.getXzbm());
                if (null != peoples && peoples.size() > 0) {
                    peopleList = new ArrayList<>();
                    for (Fz35DrugLogPeople people : peoples) {
                        gdApi1023People = new GdApi1023People();
                        BeanUtils.copyProperties(people, gdApi1023People);
                        peopleList.add(gdApi1023People);
                    }
                    gdApi1023.setPeoples(peopleList);
                }
                //持久化保存,单独存入非国标接口表
                infoData = new ApiInfoData();
                infoData.setId(ContextUtil.getUUID());
                infoData.setKqdm(kqdm);
                infoData.setInteType(Constant.API_CATEGORY_13);
                infoData.setInteId(ApiCodeConstant.API_1023);
                infoData.setBizType(PushProtocol.SB_GD_2022.getCode());
                infoData.setUpdateTime(new Date());
                infoData.setDataId(data.getXzbm());
                apiInfoList = apiInfoDataRep.getDataByInteAndData(ApiCodeConstant.API_1023, data.getXzbm(), kqdm);
                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/fzzy35/repository/Fzzy35Sync1023Rep.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,20 @@
package com.fzzy.async.fzzy35.repository;
import com.fzzy.async.fzzy35.entity.Fz35DrugLogApply;
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
 */
public interface Fzzy35Sync1023Rep extends JpaRepository<Fz35DrugLogApply, String> {
    //查询熏蒸备案主表
    @Query("from Fz35DrugLogApply where deptId =:deptId and updateTime >=:start and updateTime <:end order by updateTime ")
    List<Fz35DrugLogApply> listDrugLogApply(@Param("deptId") String deptId, @Param("start") Date start, @Param("end") Date end);
}
src/main/java/com/fzzy/async/fzzy35/repository/Fzzy35SyncDrugLogDtlRep.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,21 @@
package com.fzzy.async.fzzy35.repository;
import com.fzzy.async.fzzy35.entity.Fz35DrugLogDtl;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.query.Param;
import java.util.List;
/**
 * ç†è’¸å¤‡æ¡ˆå­è¡¨ - ç²®æƒ…信息
 *
 * @author czt
 */
public interface Fzzy35SyncDrugLogDtlRep extends JpaRepository<Fz35DrugLogDtl, String> {
    @Query("from Fz35DrugLogDtl where id =:id")
    List<Fz35DrugLogDtl> listDrugLogDtl(@Param("id") String id);
}
src/main/java/com/fzzy/async/fzzy35/repository/Fzzy35SyncDrugLogPeopleRep.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,19 @@
package com.fzzy.async.fzzy35.repository;
import com.fzzy.async.fzzy35.entity.Fz35DrugLogPeople;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.query.Param;
import java.util.List;
/**
 * è®¾å¤‡ä¿¡æ¯
 *
 * @author czt
 */
public interface Fzzy35SyncDrugLogPeopleRep extends JpaRepository<Fz35DrugLogPeople, String> {
    @Query("from Fz35DrugLogPeople where id =:id")
    List<Fz35DrugLogPeople> listDrugLogPeople(@Param("id") String id);
}
src/main/java/com/fzzy/async/fzzy35/repository/Fzzy35SyncDrugLogWayRep.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,19 @@
package com.fzzy.async.fzzy35.repository;
import com.fzzy.async.fzzy35.entity.Fz35DrugLogWay;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.query.Param;
import java.util.List;
/**
 * è®¾å¤‡ä¿¡æ¯
 *
 * @author czt
 */
public interface Fzzy35SyncDrugLogWayRep extends JpaRepository<Fz35DrugLogWay, String> {
    @Query("from Fz35DrugLogWay where id =:id")
    List<Fz35DrugLogWay> listDrugLogWay(@Param("id") String id);
}
src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1023.java
@@ -77,7 +77,7 @@
            List<GdApi1023Way> wayList = new ArrayList<>();
            List<GdApi1023People> peopleList = new ArrayList<>();
            for (Fz40DrugLogApply data : list) {
                List<ApiInfoData> apiInfoList = apiInfoDataRep.getDataByInteAndData(ApiCodeConstant.API_1023, data.getXzbm());
                List<ApiInfoData> apiInfoList = apiInfoDataRep.getDataByInteAndData(ApiCodeConstant.API_1023, data.getXzbm(),kqdm);
                if (apiInfoList.size() != 0) {
                    continue;
                }