package zy.cloud.wms.common.service.erp; import com.alibaba.fastjson.JSON; import com.core.common.Cools; import com.core.common.DateUtils; import com.core.common.SnowflakeIdWorker; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import zy.cloud.wms.common.model.BillDto; import zy.cloud.wms.common.service.erp.entity.UploadBill; import zy.cloud.wms.common.service.erp.entity.UploadBillDetail; import zy.cloud.wms.manager.utils.HttpHandler; import java.util.ArrayList; import java.util.Date; import java.util.List; /** * Created by vincent on 2021/3/23 */ @Slf4j @Service("erpService") public class ErpService { @Autowired private SnowflakeIdWorker snowflakeIdWorker; /** * 单据上报 */ public Boolean uploadBill(List dtos, Integer docId, String docNumber){ if (true) { return true; } try { if (Cools.isEmpty(dtos)) { return false; } UploadBill uploadBill = new UploadBill(); uploadBill.setNumber(docNumber); uploadBill.setBillDate(DateUtils.convert(new Date(), DateUtils.yyyyMMdd_F)); uploadBill.setBTypeID("宏挺客户"); uploadBill.setKTypeID("宏挺仓库"); uploadBill.setVchType(docId); List detail = new ArrayList<>(); uploadBill.setDetail(detail); for (BillDto dto : dtos) { UploadBillDetail detl = new UploadBillDetail(); detl.setUserCode(dto.getMatnr()); detl.setQty(dto.getQty()); detl.setPrice(0.0D); detail.add(detl); } System.out.println(JSON.toJSONString(uploadBill)); String response = new HttpHandler.Builder() .setUri(ErpScheduler.URI) .setPath(ErpScheduler.UPLOAD_BILL) .setJson(JSON.toJSONString(uploadBill)) .build() .doPost(); if (!Cools.isEmpty(response)) { log.warn(response); Result result = JSON.parseObject(response, Result.class); if (result.getCode() != 1) { return false; } } } catch (Exception e) { e.printStackTrace(); return false; } return Boolean.TRUE; } }