CZT
2023-08-07 7c8d42e0ff3e8d0be0521a4867dc4e1827c1f3b2
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
package com.fzzy.push.whhpjl;
 
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.fzzy.api.Constant;
import com.fzzy.api.data.ApiParam;
import com.fzzy.api.data.PushProtocol;
import com.fzzy.api.dto.ResponseDto;
import com.fzzy.api.entity.ApiInfoData;
import com.fzzy.api.service.ApiRemoteService;
import com.fzzy.api.service.PushService11;
import com.fzzy.api.view.repository.ApiInfoDataRep;
import com.fzzy.whjl.WhjlConstant;
import com.fzzy.whjl.dto.WhjlApi1101;
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
 * @date 2023/08/04
 */
@Slf4j
@Component
public class WhjlPushService11 implements PushService11 {
 
    @Autowired
    private WhjlApiRemoteService apiRemoteService;
    @Autowired
    private ApiInfoDataRep apiInfoDataRep;
 
    @Override
    public String getProtocol() {
        return PushProtocol.SB_WHJL_2023.getCode();
    }
 
    @Override
    public void pushData(ApiParam param) {
        log.info("武汉军粮省平台--->>>基础信息 上报开始");
 
        //推送军工企业信息
        this.pushData1101(apiRemoteService, param);
 
        //TODO 推送军工站点信息
 
        //TODO 推送军粮人员信息
 
        //TODO 推送仓房信息
 
        //TODO 推送廒间信息
 
        //TODO 推送货位信息
 
        //TODO 推送仓储设备信息
 
 
        log.info("武汉军粮省平台--->>>基础信息 上报结束");
    }
 
    /**
     * 1101 军工企业信息
     */
    private void pushData1101(ApiRemoteService apiRemoteService, ApiParam param) {
 
        //获取军工企业信息
        List<ApiInfoData> items = apiInfoDataRep.getDataByInteId(WhjlConstant.API_CODE_1101);
 
        if (null == items || items.isEmpty()) {
            return;
        }
        param.setInteCategory(WhjlConstant.API_CATEGORY_11);
        param.setInteId(WhjlConstant.API_CODE_1101);
        List<WhjlApi1101> list = new ArrayList<>();
        WhjlApi1101 whjlApi1101;
        for (ApiInfoData infoData : items) {
            whjlApi1101 = JSONObject.parseObject(infoData.getData().toString(), WhjlApi1101.class);
            whjlApi1101.setKqdm(infoData.getKqdm());
            whjlApi1101.setCzbz(infoData.getCzbz());
            whjlApi1101.setUpdateTime(infoData.getUpdateTime());
            whjlApi1101.setBizId(infoData.getDataId());
            list.add(whjlApi1101);
        }
 
        //推送,数据为集合形式
        ResponseDto responseDto = apiRemoteService.pushData(param, list);
        if (responseDto.getSuccess() == 0) {
            //推送成功,更新数据上传状态
            for (ApiInfoData data : items) {
                if(Constant.CZBZ_I.equals(data.getCzbz())){
 
                    data.setCzbz(Constant.CZBZ_U);
                    apiInfoDataRep.save(data);
                }
            }
        }
    }
}