#
luxiaotao1123
2021-03-04 52ef3b1e092777f8b3cad3a34b72e5edabc96b28
#
1个文件已添加
1 文件已重命名
1个文件已修改
117 ■■■■■ 已修改文件
src/main/java/zy/cloud/wms/common/service/erp/ErpScheduler.java 96 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/zy/cloud/wms/common/service/erp/entity/GetBasisResult.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/zy/cloud/wms/common/service/erp/entity/GetOrderResult.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/zy/cloud/wms/common/service/erp/ErpScheduler.java
@@ -2,15 +2,20 @@
import com.alibaba.fastjson.JSON;
import com.core.common.Cools;
import com.core.common.DateUtils;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
import zy.cloud.wms.common.service.erp.entity.GetDataResult;
import zy.cloud.wms.common.service.erp.entity.GetBasisResult;
import zy.cloud.wms.common.service.erp.entity.GetOrderResult;
import zy.cloud.wms.manager.entity.CustOrder;
import zy.cloud.wms.manager.entity.Mat;
import zy.cloud.wms.manager.service.CustOrderService;
import zy.cloud.wms.manager.service.MatService;
import zy.cloud.wms.manager.utils.HttpHandler;
import javax.annotation.PostConstruct;
import java.io.IOException;
import java.util.Date;
import java.util.HashMap;
@@ -26,11 +31,88 @@
@Component
public class ErpScheduler {
    public static final String URI = "http://8.133.182.21:8080/api/";
    public static final String URI = "http://8.133.182.21:8080/api";
    public static final String GET_ORDERS = "cM/basis/getOrders";
    public static final String GET_BASIS = "cM/basis/getBasis";
    @Autowired
    private CustOrderService custOrderService;
    @Autowired
    private MatService matService;
    /**
     * 商品/客户下载
     */
    //    @Scheduled(cron = "0/5 * * * * ? ")
    @PostConstruct
    public void getBasisExecute(){
        try {
            Map<String, Object> param = new HashMap<>();
            param.put("rec", 0);
            param.put("Flag", 1);
            String response = new HttpHandler.Builder()
                    .setUri(URI)
                    .setPath(GET_BASIS)
                    .setJson(JSON.toJSONString(param))
                    .build()
                    .doPost();
            if (!Cools.isEmpty(response)) {
                log.info(response);
                Date now = new Date();
                Result result = JSON.parseObject(response, Result.class);
                if (result.getCode() != 1) {
                    return;
                }
                List<GetBasisResult> list = JSON.parseArray(result.getData(), GetBasisResult.class);
                for (GetBasisResult data : list) {
                    Mat mat = matService.selectByMatnr(data.getUserCode());
                    String modifyDate = data.getModifyDate();
                    Date updateTime = null;
                    if (!Cools.isEmpty(modifyDate)) {
                        updateTime = DateUtils.convert(data.getModifyDate());
                    }
                    if (null == mat) {
                        mat = new Mat(
                                String.valueOf(data.getRec()),    // 编号
                                null,    // 所属区域
                                null,    // 所属归类
                                data.getUserCode(),    // 商品编号
                                data.getFullName(),    // 商品名称
                                null,    // 名称
                                null,    // 规格
                                null,    // 型号
                                null,    // 批号
                                null,    // 单位
                                null,    // 条码
                                null,    // 单据类型
                                null,    // 单据编号
                                null,    // 客户名称
                                null,    // 品项数
                                null,    // 库存余量
                                null,    // 重量
                                1,    //
                                null,    // 添加人员
                                now,    // 添加时间
                                null,    // 修改人员
                                updateTime,    // 修改时间
                                null    // 备注
                        );
                        matService.insert(mat);
                    } else {
                        mat.setUuid(String.valueOf(data.getRec()));
                        mat.setMatnr(data.getUserCode());
                        mat.setMaktx(data.getFullName());
                        mat.setUpdateTime(updateTime);
                        matService.updateById(mat);
                    }
                    log.info("====>> 更新物料:{}", data.getUserCode());
                }
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
    /**
     * 持久化销售订单
@@ -47,19 +129,17 @@
                    .setJson(JSON.toJSONString(json))
                    .build()
                    .doPost();
            if (Cools.isEmpty(response)) {
                log.error("请求:{}\nError,响应结果为空!", URI + GET_ORDERS);
            } else {
            if (!Cools.isEmpty(response)) {
                log.info(response);
                Date now = new Date();
                Result result = JSON.parseObject(response, Result.class);
                if (result.getCode() != 1) {
                    return;
                }
                List<GetDataResult> list = JSON.parseArray(result.getData(), GetDataResult.class);
                List<GetOrderResult> list = JSON.parseArray(result.getData(), GetOrderResult.class);
                if (!Cools.isEmpty(list)) {
                    boolean complete = true;
                    for (GetDataResult data : list) {
                    for (GetOrderResult data : list) {
                        CustOrder custOrder = new CustOrder(
                                data.getNumber(),    // 销售单号
                                data.getBillDate(),    // 单据日期[非空]
@@ -81,7 +161,7 @@
                        }
                    }
                    if (complete) {
                        List<String> collect = list.stream().map(GetDataResult::getNumber).distinct().collect(Collectors.toList());
                        List<String> collect = list.stream().map(GetOrderResult::getNumber).distinct().collect(Collectors.toList());
                        for (String number : collect) {
                            custOrderService.updateStatus(number, 1);
                        }
src/main/java/zy/cloud/wms/common/service/erp/entity/GetBasisResult.java
New file
@@ -0,0 +1,19 @@
package zy.cloud.wms.common.service.erp.entity;
import lombok.Data;
/**
 * Created by vincent on 2021/3/4
 */
@Data
public class GetBasisResult {
    private String UserCode;    // 商品/客户编号
    private String FullName;    // 商品/客户名称
    private Integer Rec;        // 商品/客户自增ID
    private String ModifyDate;  // 商品/客户修改时间
}
src/main/java/zy/cloud/wms/common/service/erp/entity/GetOrderResult.java
File was renamed from src/main/java/zy/cloud/wms/common/service/erp/entity/GetDataResult.java
@@ -6,7 +6,7 @@
 * Created by vincent on 2021/3/1
 */
@Data
public class GetDataResult {
public class GetOrderResult {
    // 销售单号
    private String number;