czt
2025-08-07 bc82af6e3664195bbcade1c769c8553457bfb09a
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
package com.fzzy.async.whhpjl.impl;
 
import com.alibaba.fastjson.JSON;
import com.fzzy.api.Constant;
import com.fzzy.api.entity.ApiInfoData;
import com.fzzy.api.entity.ApiLog;
import com.fzzy.api.utils.ContextUtil;
import com.fzzy.api.view.repository.ApiInfoDataRep;
import com.fzzy.api.view.repository.ApiLogRep;
import com.fzzy.async.whhpjl.entity.Fz40WhjlDefaultDept;
import com.fzzy.async.whhpjl.repository.Fz40ToWhjlSync1101Rep;
import com.fzzy.otherview.whhpjl.WhjlConstant;
import com.fzzy.otherview.whhpjl.dto.WhjlApi1102;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
 
import java.util.Date;
import java.util.List;
 
/**
 * 军供站点信息
 *
 * @Author:YAN
 */
@Slf4j
@Component
public class Fz40ToWhjlSync1102 {
 
    @Autowired
    private Fz40ToWhjlSync1101Rep fz40ToWhjlSync1101Rep;
    @Autowired
    private ApiLogRep apiLogRep;
    @Autowired
    private ApiInfoDataRep apiInfoDataRep;
 
    /**
     * 军供站点信息
     *
     * @param kqdm
     * @param deptId
     * @param start
     * @param end
     */
    public void syncData(String kqdm, String deptId, Date start, Date end) {
        log.info("-------------1102接口数据开始同步------------------");
 
        //同步数据,只记录失败的信息
        ApiLog apiLog = new ApiLog();
        apiLog.setType(ApiLog.TYPE_SYNC);
        apiLog.setKqdm(deptId);
        apiLog.setUploadTime(new Date());
        apiLog.setInteId(Constant.API_CODE_1102);
        apiLog.setStatus(99);
        apiLog.setId(ContextUtil.getUUID());
        try {
            List<Fz40WhjlDefaultDept> list = fz40ToWhjlSync1101Rep.listApi1101(deptId.substring(0, 4));
            if (null == list || list.isEmpty()) {
                log.info("-------------没有获取到单位信息------------------");
                return;
            }
            List<ApiInfoData> apiInfoDataList;
            WhjlApi1102 apiData;
            for (Fz40WhjlDefaultDept sysData : list) {
                apiData = new WhjlApi1102();
                apiData.setJlqybh(sysData.getRegisterCode());  //军粮企业编号
                apiData.setJlqymc(sysData.getName());  //军粮企业名称
                apiData.setJgzdbh(sysData.getCode()); //军供站点编号
                apiData.setXzqhbm(sysData.getCountry()); //所属行政区划编码
                apiData.setXzqhmc(sysData.getCountry());  //企业行政区划名称
                apiData.setJgzdmc(sysData.getName());  //军供站点名称
                apiData.setJgzdjc(sysData.getName());  //军供站点简称
                apiData.setQyszbm(sysData.getNature());  //企业性质编码
                apiData.setJgzdlb("1");  //军供站点类别 -1-保障基地
                apiData.setJcrq(sysData.getCreateDate());  //建成日期
                apiData.setSjcr(sysData.getStorage());  //设计仓容
                apiData.setMj(sysData.getArea());  //面积
                apiData.setLxr(sysData.getContact());  //联系人
                apiData.setDh(sysData.getPhone());  //电话
                apiData.setCz(sysData.getFax());  //传真
                apiData.setDz(sysData.getAddress());  //地址
                apiData.setYzbm(sysData.getPostCode());  //邮政编码
                apiData.setJd(sysData.getLon());  //经度
                apiData.setWd(sysData.getLat());  //纬度
                apiData.setCYRS(null);  //从业人数
                apiData.setCLS(null);  //车辆数
                apiData.setCplcfmj(null);  //成品粮仓房面积
                apiData.setCplzxnl(null);  //成品粮装卸能力
                apiData.setSfyx("是");  //是否启用
                if (StringUtils.isNotEmpty(sysData.getVal()) && "0".equals(sysData.getVal())) {
                    apiData.setSfyx("否");
                }
 
 
                apiData.setBizId(sysData.getId());
                apiData.setUpdateTime(new Date());
 
                //持久化保存,单独存入非国标接口表
                ApiInfoData infoData = new ApiInfoData();
                infoData.setId(sysData.getId());
                infoData.setKqdm(kqdm);
                infoData.setInteType(WhjlConstant.API_CATEGORY_11);
                infoData.setInteId(WhjlConstant.API_CODE_1102);
                infoData.setUpdateTime(new Date());
                infoData.setDataId(sysData.getId());
                infoData.setRemarks("备注信息");
 
                //设置操作标志
                apiInfoDataList = apiInfoDataRep.getDataByDataId(infoData.getDataId());
                if (null == apiInfoDataList || apiInfoDataList.isEmpty()) {
                    apiData.setCzbz(Constant.CZBZ_I);
                    infoData.setCzbz(Constant.CZBZ_I);
                } else {
                    apiData.setCzbz(apiInfoDataList.get(0).getCzbz());
                    infoData.setCzbz(apiInfoDataList.get(0).getCzbz());
                }
 
                infoData.setData(JSON.toJSONString(apiData));
                apiInfoDataRep.save(infoData);
 
                log.info("1102---军供站点-同步数据:{}", apiData.toString());
            }
 
        } catch (Exception e) {
            log.error("---1102军供站点-同步数据执行失败----{}", e.getMessage());
            apiLog.setResult("1102军供站点信息同步失败:" + e.getMessage());
            apiLogRep.save(apiLog);
        }
    }
}