Browse Source

Merge remote-tracking branch 'origin/dev' into dev

dev-warehouse
caoyizhong 2 years ago
parent
commit
ebbfd60472
  1. 5
      blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/entity/DistributionPackagereceiptEntity.java
  2. 3
      blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/entity/DistributionSigndetailEntity.java
  3. 11
      blade-service-api/logpm-old-project-api/src/main/java/com/logpm/oldproject/feign/IAdvanceDetailClient.java
  4. 4
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionSigndetailController.java
  5. 9
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionSignforController.java
  6. 7
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/dto/DistributionSigndetailDTO.java
  7. 23
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionPackagereceiptMapper.xml
  8. 5
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionSigndetailMapper.xml
  9. 4
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionPackagereceiptServiceImpl.java
  10. 2
      blade-service/logpm-factory/src/main/java/com/logpm/factory/FactoryApplication.java
  11. 2
      blade-service/logpm-factory/src/main/java/com/logpm/factory/jobhandler/FactoryXxlJob.java
  12. 2
      blade-service/logpm-factory/src/main/java/com/logpm/factory/snm/controller/PanFactoryDataController.java
  13. 17
      blade-service/logpm-factory/src/main/java/com/logpm/factory/snm/dto/OrderInfoDTO.java
  14. 157
      blade-service/logpm-factory/src/main/java/com/logpm/factory/snm/service/impl/AsyncDataServiceImpl.java
  15. 150
      blade-service/logpm-factory/src/main/java/com/logpm/factory/snm/service/impl/PanFactoryDataServiceImpl.java
  16. 10
      blade-service/logpm-old-project/src/main/java/com/logpm/oldproject/feign/AdvanceDetailClient.java
  17. 4
      blade-service/logpm-old-project/src/main/java/com/logpm/oldproject/mapper/AdvanceDetailMapper.java
  18. 13
      blade-service/logpm-old-project/src/main/java/com/logpm/oldproject/mapper/AdvanceDetailMapper.xml
  19. 3
      blade-service/logpm-old-project/src/main/java/com/logpm/oldproject/service/IAdvanceDetailService.java
  20. 10
      blade-service/logpm-old-project/src/main/java/com/logpm/oldproject/service/impl/AdvanceDetailServiceImpl.java

5
blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/entity/DistributionPackagereceiptEntity.java

@ -76,6 +76,11 @@ public class DistributionPackagereceiptEntity extends TenantEntity {
*/
@ApiModelProperty(value = "签收明细id")
private Long receiptDetailsId;
/**
* 主表签收表Id
*/
@ApiModelProperty(value = "主表签收表Id")
private Long masterId;
/**
* 签收数量
*/

3
blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/entity/DistributionSigndetailEntity.java

@ -26,6 +26,7 @@ import java.math.BigInteger;
import java.util.Date;
import lombok.EqualsAndHashCode;
import org.springblade.core.tenant.mp.TenantEntity;
import org.springframework.format.annotation.DateTimeFormat;
/**
* 签收明细 实体类
@ -113,7 +114,7 @@ public class DistributionSigndetailEntity extends TenantEntity {
* 入库时间
*/
@ApiModelProperty(value = "入库时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date warehousingTime;
/**
* 备货时间

11
blade-service-api/logpm-old-project-api/src/main/java/com/logpm/oldproject/feign/IAdvanceDetailClient.java

@ -18,9 +18,12 @@ package com.logpm.oldproject.feign;
import com.logpm.oldproject.entity.AdvanceDetailEntity;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import java.util.Map;
/**
* 预仓明细表 Feign接口类
*
@ -54,4 +57,12 @@ public interface IAdvanceDetailClient {
@PostMapping(API_PREFIX + "/addAdvanceDetail")
boolean addAdvanceDetail(@RequestBody AdvanceDetailEntity advanceDetailEntity);
/**
* 查询补充数据
* @param unitNo
* @return
*/
@GetMapping(API_PREFIX + "/getSupplyData")
Map<String, String> getSupplyData(String unitNo);
}

4
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionSigndetailController.java

@ -52,6 +52,9 @@ import org.springblade.core.excel.util.ExcelUtil;
import org.springblade.core.tool.constant.BladeConstant;
import com.baomidou.mybatisplus.core.metadata.IPage;
import springfox.documentation.annotations.ApiIgnore;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Map;
import java.util.List;
import javax.servlet.http.HttpServletResponse;
@ -93,6 +96,7 @@ public class DistributionSigndetailController extends BladeController {
distributionSigndetailVO.setDistributionPackagereceiptVOList(distributionPackagereceiptVOList);
return R.data(distributionSigndetailVO);
}
/**
* 签收明细 分页
*/

9
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionSignforController.java

@ -25,6 +25,7 @@ import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import lombok.AllArgsConstructor;
import javax.validation.Valid;
import lombok.extern.slf4j.Slf4j;
import org.springblade.core.secure.BladeUser;
import org.springblade.core.mp.support.Condition;
import org.springblade.core.mp.support.Query;
@ -57,6 +58,7 @@ import javax.servlet.http.HttpServletResponse;
@AllArgsConstructor
@RequestMapping("/signfor")
@Api(value = "签收管理", tags = "签收管理接口")
@Slf4j
public class DistributionSignforController extends BladeController {
private final IDistributionSignforService distributionSignforService;
@ -84,7 +86,12 @@ public class DistributionSignforController extends BladeController {
@ApiOperationSupport(order = 2)
@ApiOperation(value = "分页", notes = "传入distributionSignfor")
public R<IPage<DistributionSignforEntity>> list(@ApiIgnore @RequestParam Map<String, Object> distributionSignfor, Query query) {
IPage<DistributionSignforEntity> pages = distributionSignforService.page(Condition.getPage(query), Condition.getQueryWrapper(distributionSignfor, DistributionSignforEntity.class));
QueryWrapper<DistributionSignforEntity> queryWrapper = Condition.getQueryWrapper(distributionSignfor, DistributionSignforEntity.class);
//不查询文员
if (distributionSignfor.containsKey("signingStatus_notequal") && distributionSignfor.get("signingStatus_notequal").equals("2")){
queryWrapper.lambda().ne(DistributionSignforEntity::getSigningStatus,"3");
}
IPage<DistributionSignforEntity> pages = distributionSignforService.page(Condition.getPage(query),queryWrapper);
return R.data(pages);
}

7
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/dto/DistributionSigndetailDTO.java

@ -21,6 +21,7 @@ import com.logpm.distribution.entity.DistributionSigndetailEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
@ -49,7 +50,11 @@ public class DistributionSigndetailDTO extends DistributionSigndetailEntity {
*/
@ApiModelProperty(value = "收货地址")
private String deliveryAddress;
/**
* 服务号
*/
@ApiModelProperty(value = "服务号")
private String serviceNumber;
/**
* 签收时间

23
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionPackagereceiptMapper.xml

@ -34,7 +34,28 @@
SELECT * FROM logpm_distribution_packagereceipt ${ew.customSqlSegment}
</select>
<select id="selectListByMasterId" resultType="com.logpm.distribution.vo.DistributionPackagereceiptVO">
SELECT
ldpg.id id,
ldpl.warehouse warehouse,
ldpl.conditions conditions,
ldpl.packet_bar_code packetBarCode,
ldpl.goods_allocation goodsAllocation,
ldpl.pallet pallet,
ldpl.firsts firsts,
ldpl.second second,
ldpl.third_product thirdProduct,
ldpl.material material,
ldpl.quantity quantity,
ldsf.service_number serviceNumber,
ldsf.train_number trainNumber,
ldpg.state state,
ldpg.received_quantity stareceivedQuantityte
FROM
logpm_distribution_packagereceipt ldpg
JOIN logpm_distribution_parcel_list ldpl ON ldpg.wrap_bar_id = ldpl.id
JOIN logpm_distribution_signfor ldsf ON ldpg.master_id = ldsf.id
WHERE
ldpg.is_deleted = 0
</select>
</mapper>

5
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionSigndetailMapper.xml

@ -19,7 +19,7 @@
<result column="reserve4" property="reserve4"/>
<result column="reserve5" property="reserve5"/>
<result column="master_id" property="masterId"/>
<result column="service_number" property="serviceNumber"/>
<!-- <result column="service_number" property="serviceNumber"/>-->
<result column="delivery_number" property="deliveryNumber"/>
<result column="train_number" property="trainNumber"/>
<result column="serve_type" property="serveType"/>
@ -100,6 +100,9 @@
<if test="param.consigneePhone!=null and param.consigneePhone!=''">
and ldsd.consignee_phone like concat('%',#{param.consigneePhone},'%')
</if>
<if test="param.warehousingTime!=null and param.warehousingTime!=''">
and ldsd.warehousing_time = #{param.warehousingTime}
</if>
</where>
order by ldsd.create_time desc
</select>

4
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionPackagereceiptServiceImpl.java

@ -55,7 +55,9 @@ public class DistributionPackagereceiptServiceImpl extends BaseServiceImpl<Distr
@Override
public List<DistributionPackagereceiptVO> getListByMasterId(Long id) {
return baseMapper.selectListByMasterId(id);
//查询包条信息
List<DistributionPackagereceiptVO> distributionPackagereceiptVOS = baseMapper.selectListByMasterId(id);
return distributionPackagereceiptVOS;
}
}

2
blade-service/logpm-factory/src/main/java/com/logpm/factory/FactoryApplication.java

@ -29,7 +29,7 @@ import org.springblade.core.launch.BladeApplication;
public class FactoryApplication {
public static void main(String[] args) {
BladeApplication.run(ModuleNameConstant.APPLICATION_FACTORY_NAME+"-zhy", FactoryApplication.class, args);
BladeApplication.run(ModuleNameConstant.APPLICATION_FACTORY_NAME, FactoryApplication.class, args);
}
}

2
blade-service/logpm-factory/src/main/java/com/logpm/factory/jobhandler/FactoryXxlJob.java

@ -336,7 +336,7 @@ public class FactoryXxlJob {
ServiceNumEntity serviceNum = new ServiceNumEntity();
serviceNum.setServiceNum(stationOrderEntity.getTcWlb007()); //服务号
serviceNum.setTotal(stationOrderEntity.getTcWlb009().toString()); //订单数量
serviceNum.setTotal("1"); //订单数量
serviceNum.setDetailTotal(stationOrderEntity.getTcWlb009().toString()); // 包数量
serviceNum.setStoreName(stationOrderEntity.getOcc02()); //商场名
serviceNum.setStoreNo(""); // 商场编号

2
blade-service/logpm-factory/src/main/java/com/logpm/factory/snm/controller/PanFactoryDataController.java

@ -138,7 +138,7 @@ public class PanFactoryDataController extends BladeController {
public R sendOrders(@Validated @RequestBody OrderInfoDTO orderInfoDTO) {
log.info("############sendOrders: 请求参数{}",orderInfoDTO);
try{
// factoryDataService.handleData(orderInfoDTO);
factoryDataService.handleData(orderInfoDTO);
}catch (CustomerException e){
log.error(e.message,e);
return R.fail(e.code,e.message);

17
blade-service/logpm-factory/src/main/java/com/logpm/factory/snm/dto/OrderInfoDTO.java

@ -17,6 +17,7 @@
package com.logpm.factory.snm.dto;
import lombok.Data;
import org.springblade.core.tool.utils.StringUtil;
import javax.validation.constraints.NotEmpty;
@ -39,4 +40,20 @@ public class OrderInfoDTO {
@NotEmpty(message = "物流单号不能为空")
private String logiBillNo;//物流单号
public boolean verifyData() {
if(StringUtil.isBlank(orderNo)){
return false;
}
if(StringUtil.isBlank(plantId)){
return false;
}
if(StringUtil.isBlank(deliveryNumber)){
return false;
}
if(StringUtil.isBlank(logiBillNo)){
return false;
}
return true;
}
}

157
blade-service/logpm-factory/src/main/java/com/logpm/factory/snm/service/impl/AsyncDataServiceImpl.java

@ -2,10 +2,14 @@ package com.logpm.factory.snm.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.logpm.factory.snm.entity.PanFactoryOrder;
import com.logpm.factory.snm.entity.PanPackageInfo;
import com.logpm.factory.snm.service.IAsyncDataService;
import com.logpm.factory.snm.service.IPanFactoryOrderService;
import com.logpm.factory.snm.service.IPanPackageInfoService;
import com.logpm.factory.snm.service.IPanPackageListService;
import com.logpm.oldproject.entity.AdvanceDetailEntity;
import com.logpm.oldproject.entity.AdvanceEntity;
import com.logpm.oldproject.entity.ServiceNumEntity;
import com.logpm.oldproject.feign.IAdvanceClient;
import com.logpm.oldproject.feign.IAdvanceDetailClient;
import com.logpm.oldproject.feign.IServiceNumClient;
@ -15,6 +19,8 @@ import lombok.extern.log4j.Log4j2;
import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Service;
import java.time.LocalDate;
import java.util.ArrayList;
import java.util.List;
/**
@ -45,11 +51,152 @@ public class AsyncDataServiceImpl implements IAsyncDataService {
QueryWrapper<PanFactoryOrder> orderQueryWrapper = new QueryWrapper<>();
orderQueryWrapper.eq("status",1)
.eq("is_deleted",0);
List<PanFactoryOrder> list = panFactoryOrderService.list(orderQueryWrapper);
log.info("#########handlerDataToHt: 待处理的订单数量为{}",list.size());
for (PanFactoryOrder panFactoryOrder:list){
Long id = panFactoryOrder.getId();
log.info("#########handlerDataToHt: 当前处理的订单id={}",id);
List<PanFactoryOrder> panFactoryOrders = panFactoryOrderService.list(orderQueryWrapper);
List<ServiceNumEntity> serviceNumEntityList = new ArrayList<>();
log.info("#########handlerDataToHt: 待处理的订单数量为{}",panFactoryOrders.size());
for (PanFactoryOrder panFactoryOrder:panFactoryOrders){
Long orderId = panFactoryOrder.getId();
log.info("#########handlerDataToHt: 当前处理的订单id={}",orderId);
//添加订单信息
AdvanceEntity advanceEntity = new AdvanceEntity();
advanceEntity.setOrderSelfNum(panFactoryOrder.getOrderNo()); //订单自编号
advanceEntity.setSiteName(""); // 基地 TODO 通过工厂id映射
advanceEntity.setArea(""); // 区域
advanceEntity.setOrderTypeName(""); //订单类型名称 可以为空
advanceEntity.setOrderClassName("工厂"); //订单类型 可以为空
advanceEntity.setType("皮阿诺");
advanceEntity.setTotal(panFactoryOrder.getServiceCount()); //订单总数据
advanceEntity.setMctsTruck(panFactoryOrder.getDeliveryNumber()); //车次
advanceEntity.setMtdsNo("");// MTDS单号 可以为空
advanceEntity.setFirstPackName(""); //一级品类
advanceEntity.setFirstPackCode(""); //一级品类
advanceEntity.setDealerName(""); //商场名称
advanceEntity.setDealerCode(panFactoryOrder.getUserId()); //商场编码
advanceEntity.setDueDate(""); // 交期
advanceEntity.setIsOpai(0); //是否干仓配
advanceEntity.setOrderNum("");//MSCS订单号 可以为空
advanceEntity.setCarrierName("汇通物流");//承运商 可以为空
advanceEntity.setCustomerName(panFactoryOrder.getCustomerName()); //顾客名称
advanceEntity.setCustomerPhone(panFactoryOrder.getCustomerNumber()); // 顾客电话
advanceEntity.setCustomerRoad(panFactoryOrder.getCustomerAddress());//顾客地址
advanceEntity.setSystemType("线上"); //订单类型
advanceEntity.setStoreNo(""); //门店编码
advanceEntity.setStoreName(""); //门店名称
advanceEntity.setSerialKey(""); //序列号
advanceEntity.setServiceNum(panFactoryOrder.getServiceNum()); //服务号
advanceEntity.setMatingCode("");//齐套模式 可以为空
advanceEntity.setContractNum("");//合同号 可以为空
advanceEntity.setLeaveBehind("");//遗留:Y=是,N=否
advanceEntity.setSenderMobile(panFactoryOrder.getSenderMobile());//发货人电话 可以为空
advanceEntity.setSenderAddress(panFactoryOrder.getSenderAddress()); //发货地址 可以为空
advanceEntity.setSenderName(panFactoryOrder.getSendFactory()); //发货工厂名称 可以为空
advanceEntity.setAdministratorsId(1073);// 导入人
advanceEntity.setCreateTime(LocalDate.now()); //添加时间
advanceEntity.setCarsNum(panFactoryOrder.getDeliveryNumber()); //派车单--snm 可以为空
advanceEntity.setDeleteTime(0); // 删除时间
advanceEntity.setWaybillNo("");//运单号 可以为空
advanceEntity.setWarehouseId(0); //导入人仓库id TODO 通过映射去查
advanceEntity.setWaybillStatus(Byte.parseByte("1"));//开单状态:1=未开单,2=已开单
advanceEntity.setOldId(0);//
advanceEntity.setFreeze(Byte.parseByte("1"));//冻结状态:1=正常,2=冻结
advanceEntity.setDeleteReason("");//删除原因
advanceEntity.setDeleteAdministratorsId(0);//删除用户
Integer advanceId = iAdvanceClient.addAdvanceClient(advanceEntity);
if(advanceId > 0){
//更改订单状态
panFactoryOrder.setStatus(0);
panFactoryOrderService.saveOrUpdate(panFactoryOrder);
}else{
//修改订单状态为失败
panFactoryOrder.setStatus(2);
panFactoryOrderService.saveOrUpdate(panFactoryOrder);
continue;
}
//通过订单id查询对应的包件
QueryWrapper<PanPackageInfo> packageQueryWrapper = new QueryWrapper<>();
orderQueryWrapper.eq("order_id",orderId)
.eq("is_deleted",0);
List<PanPackageInfo> packages = panPackageInfoService.list(packageQueryWrapper);
for(PanPackageInfo panPackageInfo:packages){
//添加订单明细
AdvanceDetailEntity advanceDetailEntity = new AdvanceDetailEntity();
advanceDetailEntity.setAdvanceId(advanceId);//预仓id
advanceDetailEntity.setIsPay(Byte.parseByte("0"));//
advanceDetailEntity.setLineID("");//线下订单明细标时 可以为空
advanceDetailEntity.setSerialKey("");//序列号 可以为空
advanceDetailEntity.setArea("");//区域
advanceDetailEntity.setOrderSelfNum(panFactoryOrder.getOrderNo());//订单自编号
advanceDetailEntity.setType("皮阿诺");//订单来源
advanceDetailEntity.setSystemType("线上");//订单类型
advanceDetailEntity.setOrderNum("");//MSCS单号 可以为空
advanceDetailEntity.setIsOpai(0);//是否干仓配:1=是,0=否
advanceDetailEntity.setMtdsNo("");//MTDS单号 可以为空
advanceDetailEntity.setFirstPackName(panPackageInfo.getFirstPackName());//一级品类
advanceDetailEntity.setFirstPackCode(panPackageInfo.getFirstPackCode());//二级品类
advanceDetailEntity.setSiteName("Objects.isNull(stationlinenumEntity) ? null : stationlinenumEntity.getLogisticsLineName()");//基地名称 基地 TODO 通过工厂id映射
advanceDetailEntity.setSiteCode("");//基地编码
advanceDetailEntity.setProductCode(panPackageInfo.getProductCode());//货品名称 可以为空
advanceDetailEntity.setSecondPackName(panPackageInfo.getSecondPackName());//二级品类名称
advanceDetailEntity.setSecondPackCode(panPackageInfo.getSecondPackCode());//二级品类
advanceDetailEntity.setThirdPackName(panPackageInfo.getThirdPackName());//三级品类名称
advanceDetailEntity.setThirdPackCode(panPackageInfo.getThirdPackCode());//三级品类
advanceDetailEntity.setGoodName("");//v产品类型 可以为空
advanceDetailEntity.setIsAddin("Y");//例放:N=正常,Y=例放
advanceDetailEntity.setIsThirdAddin("N");//三级例放:N=正常,Y=例放
advanceDetailEntity.setIsSuppin("N");//补进:N=正常,Y=例放
advanceDetailEntity.setMscsNum(panPackageInfo.getProductNum()+"");//发货数量
advanceDetailEntity.setMtdsNum(0);//销售数量
advanceDetailEntity.setVolume("");//体积
advanceDetailEntity.setUnitNo(panPackageInfo.getUnitNo());//包条码
advanceDetailEntity.setMctsTruck(panFactoryOrder.getDeliveryNumber());//车次号
advanceDetailEntity.setMctsTruckNo("");//车牌号
advanceDetailEntity.setDate100(null);//基地发货日期
advanceDetailEntity.setDate2("");//预约到厂时间
advanceDetailEntity.setDate3("");//实际到厂时间
advanceDetailEntity.setDate4("");//开始装车时间
advanceDetailEntity.setDate5("");//完成装车时间
advanceDetailEntity.setDate6("");//车辆离厂时间
advanceDetailEntity.setCreateTime(LocalDate.now());//创建时间
advanceDetailEntity.setDeleteTime(0);//删除时间
advanceDetailEntity.setServiceNum(panFactoryOrder.getServiceNum());//服务号
advanceDetailEntity.setAdmin("");//
advanceDetailEntity.setAdministratorsId(0);//导入人
// advanceDetailEntity.setDueDate(0);//交期
advanceDetailEntity.setRemark("");//备注
advanceDetailEntity.setOldId(0);//
boolean b = advanceDetailClient.addAdvanceDetail(advanceDetailEntity);
if(b){
//修改数据状态
panPackageInfo.setStatus(0);
panPackageInfoService.saveOrUpdate(panPackageInfo);
}else{
panPackageInfo.setStatus(2);
panPackageInfoService.saveOrUpdate(panPackageInfo);
}
Integer detailId = advanceDetailEntity.getId();
//TODO 这里还要确认是否需要
}
ServiceNumEntity serviceNum = new ServiceNumEntity();
serviceNum.setServiceNum(panFactoryOrder.getServiceNum()); //服务号
serviceNum.setTotal("1"); //订单数量
serviceNum.setDetailTotal(panFactoryOrder.getServiceCount()+""); // 包数量
serviceNum.setStoreName(panFactoryOrder.getUserName()); //商场名
serviceNum.setStoreNo(""); // 商场编号
serviceNum.setCustomerName(panFactoryOrder.getCustomerName()); //顾客姓名
serviceNum.setCustomerPhone(panFactoryOrder.getCustomerNumber()); //顾客电话
serviceNum.setCustomerRoad(""); //顾客地址
serviceNum.setIsOpai(1); //是否干仓配
serviceNum.setCompleteSet("V"); //齐套标识:Y=齐套,N=未齐套,V=未知
// serviceNum.setCreateTime(LocalDate.now());
serviceNum.setDeleteTime(0);
serviceNumEntityList.add(serviceNum);
}
serviceNumClient.addServiceNum(serviceNumEntityList);
log.info("##############handlerDataToHt: 处理数据完成");
}
}

150
blade-service/logpm-factory/src/main/java/com/logpm/factory/snm/service/impl/PanFactoryDataServiceImpl.java

@ -15,13 +15,13 @@ import com.logpm.factory.snm.service.IPanFactoryDataService;
import com.logpm.factory.snm.service.IPanFactoryOrderService;
import com.logpm.factory.snm.service.IPanOrderStatusLogService;
import com.logpm.factory.snm.service.IPanPackageInfoService;
import com.logpm.oldproject.feign.IAdvanceDetailClient;
import lombok.AllArgsConstructor;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springblade.common.exception.CustomerException;
import org.springblade.core.tool.utils.StringUtil;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.HashMap;
import java.util.Map;
@ -41,6 +41,8 @@ public class PanFactoryDataServiceImpl implements IPanFactoryDataService {
private final PanFactoryProperties panFactoryProperties;
private final IPanOrderStatusLogService panOrderStatusLogService;
private final IPanPackageInfoService panPackageInfoService;
private final IPanFactoryOrderService panFactoryOrderService;
private final IAdvanceDetailClient advanceDetailClient;
// @Override
// public FactoryTokenVO getToken(String corpId, String appKey, String appSecret) throws NoSuchAlgorithmException {
@ -85,9 +87,9 @@ public class PanFactoryDataServiceImpl implements IPanFactoryDataService {
// return factoryTokenVO;
// }
@Transactional(rollbackFor = Exception.class)
@Override
public void handleData(OrderInfoDTO orderInfoDTO) {
public void handleData(OrderInfoDTO orderInfoDTO) throws CustomerException {
//先保存原始请求数据
PanOrderStatusLog panOrderStatusLog = new PanOrderStatusLog();
@ -96,15 +98,25 @@ public class PanFactoryDataServiceImpl implements IPanFactoryDataService {
panOrderStatusLog.setType(1);
panOrderStatusLogService.save(panOrderStatusLog);
String orderNo = orderInfoDTO.getOrderNo();
//根据客户订单号去查询WMS装车清单号
QueryWrapper<PanFactoryOrder> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("order_no",orderInfoDTO.getOrderNo());
queryWrapper.eq("order_no",orderNo);
PanFactoryOrder panFactoryOrder = factoryOrderService.getOne(queryWrapper);
String plantId = panFactoryOrder.getPlantId();//工厂id
String deliveryNumber = panFactoryOrder.getDeliveryNumber();
orderInfoDTO.setPlantId(plantId);
orderInfoDTO.setDeliveryNumber(deliveryNumber);
QueryWrapper<PanFactoryOrder> panFactoryOrderQueryWrapper = new QueryWrapper<>();
panFactoryOrderQueryWrapper.eq("order_no",orderNo);
PanFactoryOrder one = panFactoryOrderService.getOne(panFactoryOrderQueryWrapper);
if(Objects.isNull(one)){
logger.info("#############handleData: 合同自编码orderNo={}",orderNo);
throw new CustomerException(400,"未找到订单数据");
}
//拼接参数
Map<String,Object> map = new HashMap<>();
map.put("payload", JSONObject.toJSONString(orderInfoDTO));
@ -112,43 +124,48 @@ public class PanFactoryDataServiceImpl implements IPanFactoryDataService {
Gson gson = new GsonBuilder().setPrettyPrinting().create();
String s = gson.toJson(map);
//判断数据是都已存在
if(!orderInfoDTO.verifyData()){
logger.info("#############handleData: 数据不齐全 orderInfoDTO={}",orderInfoDTO);
throw new CustomerException(400,"数据不齐全");
}
//先获取token
// String panToken = getPanToken();
//
String panToken = getPanToken();
//请求参数
logger.info("##############handleData: 推送包件状态请求参数 {}",s);
// //处理逻辑
// //TODO 这里还差那边给到请求接口
// String result = HttpRequest.post(panFactoryProperties.getUrl()+"/hitf/v1/rest/invoke?namespace=HZERO&serverCode=HUITONG_MID_RECEIVE")
// .header("Authorization","Bearer "+panToken)
// .header("Content-Type","application/json")
// .body(s).timeout(5 * 1000)
// .execute().body();
//
// logger.info("##############handleData: 推送包件状态返回参数 {}",result);
//
// //把结果字符串转为json对象
// JSONObject jsonObject = JSONObject.parseObject(result);
// JSONObject payload = jsonObject.getJSONObject("payload");
// if(!Objects.isNull(payload)){
// Integer code = payload.getInteger("code");
// String message = payload.getString("data");
// if(code.equals(1)){
// logger.info("##########handleData: 物流状态传递成功");
// panOrderStatusLog.setStatus(0);
// panOrderStatusLogService.saveOrUpdate(panOrderStatusLog);
// }else{
// throw new CustomerException(400,message);
// }
// }else{
// throw new CustomerException(400,"返回格式有误:"+result);
// }
//处理逻辑
String result = HttpRequest.post(panFactoryProperties.getUrl()+"/hitf/v1/rest/invoke?namespace=HZERO&serverCode=HUITONG_MID_RECEIVE")
.header("Authorization","Bearer "+panToken)
.header("Content-Type","application/json")
.body(s).timeout(5 * 1000)
.execute().body();
logger.info("##############handleData: 推送包件状态返回参数 {}",result);
//把结果字符串转为json对象
JSONObject jsonObject = JSONObject.parseObject(result);
JSONObject payload = jsonObject.getJSONObject("payload");
if(!Objects.isNull(payload)){
Integer code = payload.getInteger("code");
String message = payload.getString("data");
if(code.equals(1)){
logger.info("##########handleData: 物流状态传递成功");
panOrderStatusLog.setStatus(0);
panOrderStatusLogService.saveOrUpdate(panOrderStatusLog);
}else{
throw new CustomerException(400,message);
}
}else{
throw new CustomerException(400,"返回格式有误:"+result);
}
}
@Override
public void handleStatusData(OrderStatusDTO orderStatusDTO) {
public void handleStatusData(OrderStatusDTO orderStatusDTO) throws CustomerException {
//先保存原始请求数据
PanOrderStatusLog panOrderStatusLog = new PanOrderStatusLog();
@ -157,6 +174,12 @@ public class PanFactoryDataServiceImpl implements IPanFactoryDataService {
panOrderStatusLog.setType(2);
panOrderStatusLogService.save(panOrderStatusLog);
String status = orderStatusDTO.getStatus();
if("2".equals(status)||"4".equals(status)||"5".equals(status)||"8".equals(status)||"9".equals(status)){
logger.info("#############handleStatusData: 当前数据的状态不推送 status={}",status);
throw new CustomerException(400,"当前数据的状态不推送");
}
//通过包件码查询是否是要推送的订单
String unitNo = orderStatusDTO.getUnitNo();//包件码
QueryWrapper<PanPackageInfo> packageInfoQueryWrapper = new QueryWrapper<>();
@ -166,6 +189,11 @@ public class PanFactoryDataServiceImpl implements IPanFactoryDataService {
logger.info("#############handleStatusData: 当前包条码未找到对应数据unitNo={}",unitNo);
throw new CustomerException(400,"未找到包件数据");
}
//查询destinationWarehouse logiBillNo plantId数据
Map<String,String> supplyData = advanceDetailClient.getSupplyData(unitNo);
orderStatusDTO.setPlantId(supplyData.get("plantId"));
orderStatusDTO.setDestinationWarehouse(supplyData.get("destinationWarehouse"));
orderStatusDTO.setLogiBillNo(supplyData.get("logiBillNo"));
//判断数据是都已存在
if(!orderStatusDTO.verifyData()){
@ -180,36 +208,36 @@ public class PanFactoryDataServiceImpl implements IPanFactoryDataService {
Gson gson = new GsonBuilder().setPrettyPrinting().create();
String s = gson.toJson(map);
// //先获取token
// String panToken = getPanToken();
//
//先获取token
String panToken = getPanToken();
//请求参数
logger.info("##############handleStatusData: 推送包件状态请求参数 {}",s);
// //处理逻辑
// String result = HttpRequest.post(panFactoryProperties.getUrl()+"/hitf/v1/rest/invoke?namespace=HZERO&serverCode=OPEN&interfaceCode=HUITONG_RECEIVE")
// .header("Authorization","Bearer "+panToken)
// .header("Content-Type","application/json")
// .body(s).timeout(5 * 1000)
// .execute().body();
//
// logger.info("##############handleStatusData: 推送包件状态返回参数 {}",result);
//
// //把结果字符串转为json对象
// JSONObject jsonObject = JSONObject.parseObject(result);
// JSONObject payload = jsonObject.getJSONObject("payload");
// if(!Objects.isNull(payload)){
// Integer code = payload.getInteger("code");
// String message = payload.getString("data");
// if(code.equals(1)){
// logger.info("##########handleStatusData: 物流状态传递成功");
// panOrderStatusLog.setStatus(0);
// panOrderStatusLogService.saveOrUpdate(panOrderStatusLog);
// }else{
// throw new CustomerException(400,message);
// }
// }else{
// throw new CustomerException(400,"返回格式有误:"+result);
// }
//处理逻辑
String result = HttpRequest.post(panFactoryProperties.getUrl()+"/hitf/v1/rest/invoke?namespace=HZERO&serverCode=OPEN&interfaceCode=HUITONG_RECEIVE")
.header("Authorization","Bearer "+panToken)
.header("Content-Type","application/json")
.body(s).timeout(5 * 1000)
.execute().body();
logger.info("##############handleStatusData: 推送包件状态返回参数 {}",result);
//把结果字符串转为json对象
JSONObject jsonObject = JSONObject.parseObject(result);
JSONObject payload = jsonObject.getJSONObject("payload");
if(!Objects.isNull(payload)){
Integer code = payload.getInteger("code");
String message = payload.getString("data");
if(code.equals(1)){
logger.info("##########handleStatusData: 物流状态传递成功");
panOrderStatusLog.setStatus(0);
panOrderStatusLogService.saveOrUpdate(panOrderStatusLog);
}else{
throw new CustomerException(400,message);
}
}else{
throw new CustomerException(400,"返回格式有误:"+result);
}
}

10
blade-service/logpm-old-project/src/main/java/com/logpm/oldproject/feign/AdvanceDetailClient.java

@ -24,6 +24,8 @@ import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RestController;
import springfox.documentation.annotations.ApiIgnore;
import java.util.Map;
/**
* 预仓明细表 Feign实现类
*
@ -55,4 +57,12 @@ public class AdvanceDetailClient implements IAdvanceDetailClient {
return advanceDetailService.addAdvanceDetail(advanceDetailEntity);
}
@Override
@GetMapping(API_PREFIX + "/getSupplyData")
public Map<String, String> getSupplyData(String unitNo) {
//查询补充数据
Map<String,String> map = advanceDetailService.getSupplyData(unitNo);
return map;
}
}

4
blade-service/logpm-old-project/src/main/java/com/logpm/oldproject/mapper/AdvanceDetailMapper.java

@ -16,15 +16,14 @@
*/
package com.logpm.oldproject.mapper;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.logpm.oldproject.entity.AdvanceDetailEntity;
import com.logpm.oldproject.entity.AdvanceEntity;
import com.logpm.oldproject.vo.AdvanceDetailVO;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
/**
* 预仓明细表 Mapper 接口
@ -50,4 +49,5 @@ public interface AdvanceDetailMapper extends BaseMapper<AdvanceDetailEntity> {
*/
Boolean addAll(@Param("param") AdvanceDetailEntity advanceDetailEntity);
Map<String, String> getSupplyData(@Param("unitNo") String unitNo);
}

13
blade-service/logpm-old-project/src/main/java/com/logpm/oldproject/mapper/AdvanceDetailMapper.xml

@ -75,5 +75,18 @@
<select id="getSupplyData" resultType="Map" >
SELECT
wo.waybill_no logiBillNo,
wb.arrive_site destinationWarehouse,
case wb.start_site_id
when 0 then '工厂ID'
END plantId
FROM ht_advance_detail d
left join ht_waybill_order wo on wo.advance_id = d.advance_id and wo.delete_time = 0
left join ht_way_bill wb on wb.id = wo.way_bill_id and wb.delete_time = 0
where d.unitNo = ${unitNo}
</select>
</mapper>

3
blade-service/logpm-old-project/src/main/java/com/logpm/oldproject/service/IAdvanceDetailService.java

@ -18,6 +18,8 @@ package com.logpm.oldproject.service;
import com.logpm.oldproject.entity.AdvanceDetailEntity;
import java.util.Map;
/**
* 预仓明细表 服务类
*
@ -29,4 +31,5 @@ public interface IAdvanceDetailService {
Boolean addAdvanceDetail(AdvanceDetailEntity advanceDetailEntity);
Map<String, String> getSupplyData(String unitNo);
}

10
blade-service/logpm-old-project/src/main/java/com/logpm/oldproject/service/impl/AdvanceDetailServiceImpl.java

@ -22,6 +22,8 @@ import com.logpm.oldproject.service.IAdvanceDetailService;
import lombok.AllArgsConstructor;
import org.springframework.stereotype.Service;
import java.util.Map;
/**
* 预仓明细表 服务实现类
*
@ -39,5 +41,13 @@ public class AdvanceDetailServiceImpl implements IAdvanceDetailService {
return advanceDetailMapper.addAll(advanceDetailEntity);
}
@Override
public Map<String, String> getSupplyData(String unitNo) {
//查询补充数据
//unitNo
Map<String,String> map = advanceDetailMapper.getSupplyData(unitNo);
return map;
}
}

Loading…
Cancel
Save