ws
2023-11-04 510ffba9bf36d73191c736cee495d8f0839e571f
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
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
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.Fz40WhjlDefaultContract;
import com.fzzy.async.whhpjl.repository.Fz40ToWhjlSync1207Rep;
import com.fzzy.otherview.whhpjl.WhjlConstant;
import com.fzzy.otherview.whhpjl.dto.WhjlApi1206;
import lombok.extern.slf4j.Slf4j;
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 Fz40ToWhjlSync1207 {
 
    @Autowired
    private Fz40ToWhjlSync1207Rep fz40ToWhjlSync1207Rep;
    @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("-------------1207接口数据开始同步------------------");
 
        //同步数据,只记录失败的信息
        ApiLog apiLog = new ApiLog();
        apiLog.setType(ApiLog.TYPE_SYNC);
        apiLog.setKqdm(deptId);
        apiLog.setUploadTime(new Date());
        apiLog.setInteId(Constant.API_CODE_1207);
        apiLog.setStatus(99);
        apiLog.setId(ContextUtil.getUUID());
        try {
            List<Fz40WhjlDefaultContract> list = fz40ToWhjlSync1207Rep.listApi1207(deptId.substring(0, 4));
            List<ApiInfoData> apiInfoDataList;
            WhjlApi1206 apiData;
            for (Fz40WhjlDefaultContract sysData : list) {
                apiData = new WhjlApi1206();
                apiData.setHtid(sysData.getId());  //合同ID
                apiData.setJlqybh("");  //军粮企业编号
                apiData.setSsqymc("");  //军粮企业名称
                apiData.setJgzdbh("");  //军供站点编号
                apiData.setJgzdmc("");  //军供站点名称
                if ("1".equals(sysData.getType())) { //合同类型
                    apiData.setHtlx("销售合同");
                } else if ("2".equals(sysData.getType())) {
                    apiData.setHtlx("采购合同");
                } else if ("3".equals(sysData.getType())) {
                    apiData.setHtlx("代储合同");
                }
                apiData.setHtbh(sysData.getId()); //合同编号
                apiData.setHtbt(sysData.getName()); //合同标题
                apiData.setJljgqybh(sysData.getCustomerId());  //加工企业编号
                apiData.setJljgqymc(sysData.getCustomerName());  //加工企业名称
                apiData.setHtkhbh(sysData.getCustomerId());  //合同客户编号
                apiData.setHtkhmc(sysData.getCustomerName());   //合同客户名称
//                apiData.setHtspdj(sysData.getPrice()); //合同商品单价
                apiData.setHtspsl(sysData.getContactAmount());  //合同商品数量
                apiData.setSpbm(sysData.getFoodType());  //商品编码
                apiData.setZje(sysData.getMoney());  //总金额
                apiData.setHrqdr(sysData.getSignUser());  //合同签订人
                apiData.setHtqdsj(sysData.getSigningTime());  //合同签订时间
                apiData.setHtsxrq(sysData.getBeginTime());  //合同生效日期
                apiData.setHtjzrq(sysData.getEndTime());  //合同截止时间
                apiData.setHtcjr(sysData.getCreateUser());  //合同创建人
                apiData.setHtcjsj(sysData.getCreateTime());  //合同创建时间
                apiData.setHtdbgjlbz("");  //合同的变更记录标志
                apiData.setHtbgyy("");  //合同变更原因
                apiData.setHtgylx("");  //合同供应类型
                apiData.setYhtbh(sysData.getId());  //原合同编号
                if ("ALIPAY".equals(sysData.getPayType())) {
                    apiData.setZffs("支付宝支付");
                } else if ("BANK".equals(sysData.getPayType())) {
                    apiData.setZffs("银行转账");
                } else if ("CASH".equals(sysData.getPayType())) {
                    apiData.setZffs("现金支付");
                } else if ("WECHAT".equals(sysData.getPayType())) {
                    apiData.setZffs("微信支付");
                }
                apiData.setZffs(sysData.getPayType());  //支付方式
                apiData.setYwcsl(sysData.getCompleteNum());  //已完成数量
                apiData.setYwcslje(sysData.getJszje());  //已完成数量金额
                apiData.setHtbz("");  //合同备注
                apiData.setXh(null);  //序号
                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_12);
                infoData.setInteId(WhjlConstant.API_CODE_1207);
                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("1207---合同-同步数据:{}", apiData.toString());
 
            }
        } catch (Exception e) {
            log.error("---1207合同-同步数据执行失败----{}", e.getMessage());
            apiLog.setResult("1207合同信息同步失败:" + e.getMessage());
            apiLogRep.save(apiLog);
        }
    }
}