领用单据功能完善

zhairh
anthonyywj2 3 years ago
parent 9557bc96f4
commit 7c996be857

@ -9,8 +9,11 @@ import com.glxp.sale.admin.controller.inout.utils.CheckOrderUtils;
import com.glxp.sale.admin.controller.inout.utils.ContrastErpUtil;
import com.glxp.sale.admin.controller.inout.utils.DataTransUtil;
import com.glxp.sale.admin.entity.auth.AuthAdmin;
import com.glxp.sale.admin.entity.basic.BasicBusTypeChangeEntity;
import com.glxp.sale.admin.entity.basic.BussinessTypeEntity;
import com.glxp.sale.admin.entity.basic.UdiRelevanceEntity;
import com.glxp.sale.admin.entity.inout.*;
import com.glxp.sale.admin.entity.inventory.InvWarehouseEntity;
import com.glxp.sale.admin.entity.param.SystemParamConfigEntity;
import com.glxp.sale.admin.entity.thrsys.ThrOrderDetailEntity;
import com.glxp.sale.admin.entity.thrsys.ThrOrderEntity;
@ -24,12 +27,10 @@ import com.glxp.sale.admin.res.basic.BussinessOriginTypeResponse;
import com.glxp.sale.admin.res.basic.UdiRelevanceResponse;
import com.glxp.sale.admin.res.inout.ErpOrderResponse;
import com.glxp.sale.admin.service.auth.CustomerService;
import com.glxp.sale.admin.service.basic.BussinessOriginTypeService;
import com.glxp.sale.admin.service.basic.BussinessTypeService;
import com.glxp.sale.admin.service.basic.UdiInfoService;
import com.glxp.sale.admin.service.basic.UdiRelevanceService;
import com.glxp.sale.admin.service.basic.*;
import com.glxp.sale.admin.service.info.CompanyService;
import com.glxp.sale.admin.service.inout.*;
import com.glxp.sale.admin.service.inventory.InvWarehouseService;
import com.glxp.sale.admin.service.param.SystemParamConfigService;
import com.glxp.sale.admin.service.thrsys.ThrDataService;
import com.glxp.sale.admin.service.thrsys.ThrOrderDetailService;
@ -112,7 +113,7 @@ public class OrderDetailController {
if (bindingResult.hasErrors()) {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
}
FilterThrOrderRequest filterThrOrderRequest = new FilterThrOrderRequest();
BeanUtils.copyProperties(filterErpOrderRequest, filterThrOrderRequest);
@ -150,7 +151,6 @@ public class OrderDetailController {
pageSimpleResponse.setTotal(pageInfo.getTotal());
pageSimpleResponse.setList(erpOrderResponses);
return ResultVOUtils.success(pageSimpleResponse);
// }
}
//手持终端下载业务单据
@ -211,6 +211,9 @@ public class OrderDetailController {
// }
}
@Resource
BasicBusTypeChangeService basicBusTypeChangeService;
@AuthRuleAnnotation("")
@GetMapping("/udiwms/erpOrder/addStockOrder")
public BaseResponse addStockOrder(FilterOrderRequest filterErpOrderRequest,
@ -219,16 +222,13 @@ public class OrderDetailController {
if (bindingResult.hasErrors()) {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
}
String customerId = customerService.getCustomerId() + "";
ThrOrderEntity thrOrderEntity = thrOrderService.findById(String.valueOf(filterErpOrderRequest.getId()));
if (thrOrderEntity == null) {
return ResultVOUtils.error(ResultEnum.DATA_NOT);
}
StockOrderEntity temp = stockOrderService.findByBillNo(thrOrderEntity.getBillNo() + "");
StockOrderEntity temp = stockOrderService.findByBillNo(thrOrderEntity.getBillNo());
if (temp != null) {
return ResultVOUtils.error(500, "单据已被选入,请勿重复选入!");
}
@ -237,8 +237,11 @@ public class OrderDetailController {
BeanUtils.copyProperties(thrOrderEntity, stockOrderEntity);
String billNo = gennerOrderUtils.createStOrderNo(new OrderNoTypeBean(Constant.BUS_ORDER, "yyyyMMdd"));
stockOrderEntity.setBillNo(billNo);
//第三方单据
BussinessOriginTypeResponse bussinessOriginTypeResponse = bussinessOriginTypeService.finByThirdAction(thrOrderEntity.getBillType());
stockOrderEntity.setBillType(bussinessOriginTypeResponse.getLocalAction());
stockOrderEntity.setId(null);
stockOrderEntity.setCustomerId(customerId);
stockOrderEntity.setUnitIdFk(customerId);
@ -259,8 +262,14 @@ public class OrderDetailController {
List<StockOrderDetailEntity> stockOrderDetailEntityList = new ArrayList<>();
for (ThrOrderDetailEntity thrOrderDetailEntity : thrOrderDetailEntities) {
StockOrderDetailEntity stockOrderDetailEntity = new StockOrderDetailEntity();
UdiRelevanceEntity udiRelevanceEntity = udiRelevanceService.selectByThirdId(thrOrderDetailEntity.getProductId(), thrOrderDetailEntity.getThirdSysFk());
if (udiRelevanceEntity == null) {
return ResultVOUtils.error(500, "单据里含有未维护的产品信息,选入失败!");
}
BeanUtils.copyProperties(thrOrderDetailEntity, stockOrderDetailEntity);
stockOrderDetailEntity.setProductId(thrOrderDetailEntity.getProductId());
// stockOrderDetailEntity.setProductId(thrOrderDetailEntity.getProductId());
stockOrderDetailEntity.setProductId(udiRelevanceEntity.getId());
stockOrderDetailEntity.setCount(thrOrderDetailEntity.getCount() + "");
stockOrderDetailEntity.setReCount(thrOrderDetailEntity.getReCount() + "");
stockOrderDetailEntity.setOrderIdFk(stockOrderEntity.getId());
@ -269,8 +278,85 @@ public class OrderDetailController {
}
stockOrderDetailService.insertStockOrderDetails(stockOrderDetailEntityList);
}
thrOrderEntity.setAllocateStatus(1);
thrOrderService.updateThrOrder(thrOrderEntity);
return ResultVOUtils.success();
}
@Resource
InvWarehouseService invWarehouseService;
@AuthRuleAnnotation("")
@GetMapping("/udiwms/receive/addStockOrder")
public BaseResponse addReceiveOrder(FilterOrderRequest filterErpOrderRequest,
BindingResult bindingResult) {
if (bindingResult.hasErrors()) {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
}
String customerId = customerService.getCustomerId() + "";
ThrOrderEntity thrOrderEntity = thrOrderService.findById(String.valueOf(filterErpOrderRequest.getId()));
if (thrOrderEntity == null) {
return ResultVOUtils.error(ResultEnum.DATA_NOT);
}
StockOrderEntity temp = stockOrderService.findByBillNo(thrOrderEntity.getBillNo());
if (temp != null) {
return ResultVOUtils.error(500, "单据已被选入,请勿重复选入!");
}
StockOrderEntity stockOrderEntity = new StockOrderEntity();
BeanUtils.copyProperties(thrOrderEntity, stockOrderEntity);
String billNo = gennerOrderUtils.createStOrderNo(new OrderNoTypeBean(Constant.BUS_ORDER, "yyyyMMdd"));
stockOrderEntity.setBillNo(billNo);
BasicBusTypeChangeEntity basicBusTypeChangeEntity = basicBusTypeChangeService.findByAction(thrOrderEntity.getBillType());
stockOrderEntity.setBillType(basicBusTypeChangeEntity.getTargetBusAction());
stockOrderEntity.setId(null);
stockOrderEntity.setCustomerId(customerId);
stockOrderEntity.setUnitIdFk(customerId);
stockOrderEntity.setStatus(ConstantStatus.SORDER_ALLOC);//未提交
stockOrderEntity.setLocStorageCode(thrOrderEntity.getCorpId());
stockOrderEntity.setInvWarehouseCode(thrOrderEntity.getFromSubInvCode());
stockOrderEntity.setThirdOrderFk(thrOrderEntity.getBillNo());
stockOrderEntity.setSourceType(ConstantStatus.ST_THIRD_SEL);//外部提交
stockOrderEntity.setPrintStatus(ConstantStatus.SORDER_PRINT_UN);//未打印
stockOrderEntity.setFromSubInvCode(thrOrderEntity.getInvWarehouseCode());
stockOrderEntity.setCorpId(thrOrderEntity.getLocStorageCode());
InvWarehouseEntity invWarehouseEntity = invWarehouseService.selectByCode(thrOrderEntity.getLocStorageCode());
stockOrderEntity.setCorpName(invWarehouseEntity.getName());
stockOrderEntity.setBilldate(DateUtil.formatDate(new Date()));
boolean b = stockOrderService.insertStockOrder(stockOrderEntity);
stockOrderEntity = stockOrderService.findByBillNo(billNo);
FilterThrOrderDetailRequest filterThrOrderDetailRequest = new FilterThrOrderDetailRequest();
filterThrOrderDetailRequest.setOrderIdFk(thrOrderEntity.getId() + "");
List<ThrOrderDetailEntity> thrOrderDetailEntities =
thrOrderDetailService.filterThrOrderDetailDetail(filterThrOrderDetailRequest);
if (thrOrderDetailEntities != null && thrOrderDetailEntities.size() > 0) {
List<StockOrderDetailEntity> stockOrderDetailEntityList = new ArrayList<>();
for (ThrOrderDetailEntity thrOrderDetailEntity : thrOrderDetailEntities) {
StockOrderDetailEntity stockOrderDetailEntity = new StockOrderDetailEntity();
UdiRelevanceEntity udiRelevanceEntity = udiRelevanceService.selectByThirdId(thrOrderDetailEntity.getProductId(), thrOrderDetailEntity.getThirdSysFk());
if (udiRelevanceEntity == null) {
return ResultVOUtils.error(500, "单据里含有未维护的产品信息,选入失败!");
}
BeanUtils.copyProperties(thrOrderDetailEntity, stockOrderDetailEntity);
// stockOrderDetailEntity.setProductId(thrOrderDetailEntity.getProductId());
stockOrderDetailEntity.setProductId(udiRelevanceEntity.getId());
stockOrderDetailEntity.setCount(thrOrderDetailEntity.getCount() + "");
stockOrderDetailEntity.setReCount(thrOrderDetailEntity.getReCount() + "");
stockOrderDetailEntity.setOrderIdFk(stockOrderEntity.getId());
stockOrderDetailEntity.setSweepCount(0 + "");
stockOrderDetailEntityList.add(stockOrderDetailEntity);
}
stockOrderDetailService.insertStockOrderDetails(stockOrderDetailEntityList);
}
thrOrderEntity.setAllocateStatus(1);
thrOrderService.updateThrOrder(thrOrderEntity);
return ResultVOUtils.success();
}
@AuthRuleAnnotation("")

@ -364,17 +364,19 @@ public class StockOrderDetailController {
if (stockOrderDetailEntityList.size() == 0) {
return ResultVOUtils.error(ResultEnum.DATA_NOT, "未找到产品");
}
String value = systemParamConfigService.selectValueByParamKey("checkCert");
if (StrUtil.isNotEmpty(value) && value.equals("1")) {
//判断证书是否齐全
if (StrUtil.isNotEmpty(stockOrderIdsRequest.getZczbhhzbapzbh())) {
SupProductResponse supProductResponse = supProductService.findByPassByReCert(stockOrderIdsRequest.getZczbhhzbapzbh());
if (supProductResponse == null) {
return ResultVOUtils.error(601, "该产品所对应的资质证书未通过审核,无法配送,请先维护产品资质信息");
//供应商选入时需要校验证书是否齐全
if (stockOrderIdsRequest.getType() == 0) {
String value = systemParamConfigService.selectValueByParamKey("checkCert");
if (StrUtil.isNotEmpty(value) && value.equals("1")) {
//判断证书是否齐全
if (StrUtil.isNotEmpty(stockOrderIdsRequest.getZczbhhzbapzbh())) {
SupProductResponse supProductResponse = supProductService.findByPassByReCert(stockOrderIdsRequest.getZczbhhzbapzbh());
if (supProductResponse == null) {
return ResultVOUtils.error(601, "该产品所对应的资质证书未通过审核,无法配送,请先维护产品资质信息");
}
} else {
return ResultVOUtils.error(500, "注册证不能为空!");
}
} else {
return ResultVOUtils.error(500, "注册证不能为空!");
}
}

@ -3,11 +3,17 @@ package com.glxp.sale.admin.controller.thrsys;
import cn.hutool.core.date.DatePattern;
import cn.hutool.core.date.DateUtil;
import com.github.pagehelper.PageInfo;
import com.glxp.sale.admin.annotation.AuthRuleAnnotation;
import com.glxp.sale.admin.entity.inout.StockOrderDetailEntity;
import com.glxp.sale.admin.entity.thrsys.ThrOrderDetailEntity;
import com.glxp.sale.admin.entity.thrsys.ThrOrderEntity;
import com.glxp.sale.admin.req.inout.FilterOrderRequest;
import com.glxp.sale.admin.req.inout.StockOrderPostRequest;
import com.glxp.sale.admin.req.thrsys.FilterThrOrderDetailRequest;
import com.glxp.sale.admin.req.thrsys.FilterThrOrderRequest;
import com.glxp.sale.admin.res.PageSimpleResponse;
import com.glxp.sale.admin.res.inout.ErpOrderResponse;
import com.glxp.sale.admin.service.auth.CustomerService;
import com.glxp.sale.admin.service.thrsys.ThrOrderDetailService;
import com.glxp.sale.admin.service.thrsys.ThrOrderService;
@ -18,11 +24,13 @@ import com.glxp.sale.common.util.ResultVOUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
@ -40,8 +48,7 @@ public class ThrOrderReceiveController {
@AuthRuleAnnotation("")
@PostMapping("/udiwms/thrsys/order/insertWeb")
public BaseResponse insertWeb(@RequestBody StockOrderPostRequest stockOrderPostRequest, BindingResult bindingResult) {
//editState 1为草稿保存 2为提交保存
public BaseResponse addReceive(@RequestBody StockOrderPostRequest stockOrderPostRequest, BindingResult bindingResult) {
if (bindingResult.hasErrors()) {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
}
@ -52,39 +59,103 @@ public class ThrOrderReceiveController {
stockOrderEntity.setType(1);//领用单据
stockOrderEntity.setUpdateTime(new Date());
stockOrderEntity.setBilldate(DateUtil.parse(stockOrderEntity.getBilldate(), DatePattern.NORM_DATETIME_PATTERN).toString());
ThrOrderEntity temp = thrOrderService.findByUnique(stockOrderEntity.getBillNo(), stockOrderEntity.getThirdSysFk());
if (temp != null) {
stockOrderEntity.setId(temp.getId());
}
String orderNo = gennerOrderUtils.createStOrderNo(new OrderNoTypeBean(Constant.LIN_YONG, "yyyyMMdd"));
stockOrderEntity.setBillNo(orderNo);
thrOrderService.insertThrOrder(stockOrderEntity);
stockOrderEntity = thrOrderService.findByUnique(stockOrderEntity.getBillNo(), stockOrderEntity.getThirdSysFk());
if (stockOrderPostRequest.getSubErpOrders() != null) {
List<StockOrderDetailEntity> stockOrderDetailEntityList = stockOrderPostRequest.getSubErpOrders();
for (StockOrderDetailEntity stockOrderDetailEntity : stockOrderDetailEntityList) {
ThrOrderDetailEntity thrOrderDetailEntity = new ThrOrderDetailEntity();
BeanUtils.copyProperties(stockOrderDetailEntity, thrOrderDetailEntity);
thrOrderDetailEntity.setOrderIdFk(
StringUtils.isBlank(stockOrderDetailEntity.getOrderIdFk()) ?
stockOrderEntity.getId() + "" : stockOrderDetailEntity.getOrderIdFk());
thrOrderDetailEntity.setOrderIdFk(stockOrderEntity.getId() + "");
thrOrderDetailEntity.setReCount(
StringUtils.isBlank(stockOrderDetailEntity.getReCount()) ? 0 : Integer.parseInt(stockOrderDetailEntity.getReCount()));
thrOrderDetailEntity.setCount(
StringUtils.isBlank(stockOrderDetailEntity.getCount()) ? 0 : Integer.parseInt(stockOrderDetailEntity.getCount()));
thrOrderDetailService.insertThrOrderDetail(thrOrderDetailEntity);
}
return ResultVOUtils.success("成功");
}
return ResultVOUtils.success("成功");
}
if (StringUtils.isBlank(stockOrderDetailEntity.getId())) {
thrOrderDetailEntity.setReCount(
StringUtils.isBlank(stockOrderDetailEntity.getReCount()) ? 0 : Integer.parseInt(stockOrderDetailEntity.getReCount()));
thrOrderDetailEntity.setCount(
StringUtils.isBlank(stockOrderDetailEntity.getCount()) ? 0 : Integer.parseInt(stockOrderDetailEntity.getCount()));
@AuthRuleAnnotation("")
@PostMapping("/udiwms/receive/order/update")
public BaseResponse updateReceive(@RequestBody StockOrderPostRequest stockOrderPostRequest, BindingResult bindingResult) {
//editState 1为草稿保存 2为提交保存
if (bindingResult.hasErrors()) {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
}
ThrOrderEntity stockOrderEntity = new ThrOrderEntity();
BeanUtils.copyProperties(stockOrderPostRequest, stockOrderEntity);
stockOrderEntity.setType(1);//领用单据
stockOrderEntity.setUpdateTime(new Date());
stockOrderEntity.setId(Integer.parseInt(stockOrderPostRequest.getId()));
stockOrderEntity.setBilldate(DateUtil.parse(stockOrderEntity.getBilldate(), DatePattern.NORM_DATETIME_PATTERN).toString());
thrOrderService.updateThrOrder(stockOrderEntity);
thrOrderDetailService.deleteByOrderIdFk(stockOrderEntity.getId() + "");
List<StockOrderDetailEntity> stockOrderDetailEntityList = stockOrderPostRequest.getSubErpOrders();
for (StockOrderDetailEntity stockOrderDetailEntity : stockOrderDetailEntityList) {
ThrOrderDetailEntity thrOrderDetailEntity = new ThrOrderDetailEntity();
BeanUtils.copyProperties(stockOrderDetailEntity, thrOrderDetailEntity);
thrOrderDetailEntity.setOrderIdFk(
StringUtils.isBlank(stockOrderDetailEntity.getOrderIdFk()) ?
stockOrderEntity.getId() + "" : stockOrderDetailEntity.getOrderIdFk());
thrOrderDetailEntity.setReCount(
StringUtils.isBlank(stockOrderDetailEntity.getReCount()) ? 0 : Integer.parseInt(stockOrderDetailEntity.getReCount()));
thrOrderDetailEntity.setCount(
StringUtils.isBlank(stockOrderDetailEntity.getCount()) ? 0 : Integer.parseInt(stockOrderDetailEntity.getCount()));
thrOrderDetailService.insertThrOrderDetail(thrOrderDetailEntity);
}
return ResultVOUtils.success("成功");
}
@AuthRuleAnnotation("")
@GetMapping("/udiwms/receive/order/filter")
public BaseResponse filterReceive(FilterOrderRequest filterErpOrderRequest,
BindingResult bindingResult) {
if (bindingResult.hasErrors()) {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
}
thrOrderDetailService.insertThrOrderDetail(thrOrderDetailEntity);
FilterThrOrderRequest filterThrOrderRequest = new FilterThrOrderRequest();
BeanUtils.copyProperties(filterErpOrderRequest, filterThrOrderRequest);
filterThrOrderRequest.setPage(filterErpOrderRequest.getPage());
filterThrOrderRequest.setLimit(filterErpOrderRequest.getLimit());
List<ErpOrderResponse> erpOrderResponses = new ArrayList<>();
List<ThrOrderEntity> data = thrOrderService.filterReceiveOrder(filterThrOrderRequest);
if (data != null && data.size() > 0) {
for (ThrOrderEntity thrOrderEntity : data) {
FilterThrOrderDetailRequest filterThrOrderDetailRequest = new FilterThrOrderDetailRequest();
filterThrOrderDetailRequest.setOrderIdFk(thrOrderEntity.getId() + "");
List<ThrOrderDetailEntity> thrOrderDetailEntities =
thrOrderDetailService.filterThrOrderDetailDetail(filterThrOrderDetailRequest);
ErpOrderResponse erpOrderResponse = new ErpOrderResponse();
BeanUtils.copyProperties(thrOrderEntity, erpOrderResponse);
List<ErpOrderResponse.SubErpOrder> subErpOrders = new ArrayList<>();
if (thrOrderDetailEntities != null && thrOrderDetailEntities.size() > 0) {
for (ThrOrderDetailEntity thrOrderDetailEntity : thrOrderDetailEntities) {
ErpOrderResponse.SubErpOrder subErpOrder = new ErpOrderResponse.SubErpOrder();
BeanUtils.copyProperties(thrOrderDetailEntity, subErpOrder);
subErpOrder.setCount(thrOrderDetailEntity.getCount() + "");
subErpOrder.setReCount(thrOrderDetailEntity.getReCount() + "");
subErpOrders.add(subErpOrder);
}
}
erpOrderResponse.setSubErpOrders(subErpOrders);
erpOrderResponses.add(erpOrderResponse);
}
return ResultVOUtils.success("成功");
}
return ResultVOUtils.success("成功");
PageInfo<ThrOrderEntity> pageInfo;
pageInfo = new PageInfo<>(data);
PageSimpleResponse<ErpOrderResponse> pageSimpleResponse = new PageSimpleResponse<>();
pageSimpleResponse.setTotal(pageInfo.getTotal());
pageSimpleResponse.setList(erpOrderResponses);
return ResultVOUtils.success(pageSimpleResponse);
}
}

@ -12,6 +12,8 @@ public interface ThrOrderDao {
List<ThrOrderEntity> filterThrOrder(FilterThrOrderRequest filterThrOrderRequest);
List<ThrOrderEntity> filterReceiveOrder(FilterThrOrderRequest filterThrOrderRequest);
boolean insertThrOrder(ThrOrderEntity thrCorpEntity);
boolean importThrOrder(ThrOrderEntity thrCorpEntity);

@ -16,8 +16,6 @@ public class BasicBusTypeChangeEntity {
private Date updateTime;
private String remark;
private boolean enable;
private boolean systemDefault;
}

@ -12,6 +12,7 @@ public class ThrOrderEntity {
private String billdate;
private String corpId;
private String corpName;
private String fromSubInvCode;
private String billType;
private String billTypeName;
private String billFlag;
@ -38,4 +39,5 @@ public class ThrOrderEntity {
private String invWarehouseCode;
private int editStatus;
private int thirdPartyDate;
private int allocateStatus; //1:已配货0未配货
}

@ -27,5 +27,7 @@ public class FilterOrderRequest {
private String thirdSys;
private Integer editStatus;
private Integer thirdPartyDate;
private Integer type;
private Integer allocateStatus;
}

@ -16,4 +16,5 @@ public class StockOrderIdsRequest {
UdiEntity udiEntity;
List<StockOrderDetailEntity> stockOrderLists;
private String zczbhhzbapzbh;
private int type; //1耗材领用
}

@ -25,6 +25,7 @@ public class FilterThrOrderRequest extends ListPageRequest {
private Integer editStatus;
private String lastUpdateTime;
private Integer thirdPartyDate;
private Integer type;
private Integer allocateStatus;
private List<ErpOrderResponse> erpOrderResponses;
}

@ -12,12 +12,16 @@ public interface ThrOrderService {
List<ThrOrderEntity> filterThrOrder(FilterThrOrderRequest filterThrOrderRequest);
List<ThrOrderEntity> filterReceiveOrder(FilterThrOrderRequest filterThrOrderRequest);
List<ErpOrderEntity> filterAllOrders(List<String> billNos, String action);
List<ErpOrderResponse> filterAllDetail(FilterThrOrderRequest filterThrOrderRequest);
ThrOrderEntity findByUnique(String billNo, String thirdSysFk);
ThrOrderEntity findReceiveOrder(String billNo);
ThrOrderEntity findById(String id);
boolean insertThrOrder(ThrOrderEntity thrCorpEntity);

@ -39,6 +39,19 @@ public class ThrOrderServiceImpl implements ThrOrderService {
return data;
}
@Override
public List<ThrOrderEntity> filterReceiveOrder(FilterThrOrderRequest filterThrOrderRequest) {
if (filterThrOrderRequest == null) {
return Collections.emptyList();
}
if (filterThrOrderRequest.getPage() != null) {
int offset = (filterThrOrderRequest.getPage() - 1) * filterThrOrderRequest.getLimit();
PageHelper.offsetPage(offset, filterThrOrderRequest.getLimit());
}
List<ThrOrderEntity> data = thrOrderDao.filterReceiveOrder(filterThrOrderRequest);
return data;
}
@Override
public List<ErpOrderEntity> filterAllOrders(List<String> billNos, String thirdSys) {
List<ErpOrderEntity> erpOrderEntities = new ArrayList<>();
@ -109,6 +122,21 @@ public class ThrOrderServiceImpl implements ThrOrderService {
return null;
}
@Override
public ThrOrderEntity findReceiveOrder(String billNo) {
if (StrUtil.isEmpty(billNo)) {
return null;
}
FilterThrOrderRequest filterThrOrderRequest = new FilterThrOrderRequest();
filterThrOrderRequest.setBillNo(billNo);
filterThrOrderRequest.setType(1);
List<ThrOrderEntity> thrOrderEntities = filterThrOrder(filterThrOrderRequest);
if (thrOrderEntities != null && thrOrderEntities.size() > 0) {
return thrOrderEntities.get(0);
}
return null;
}
@Override
public ThrOrderEntity findById(String id) {
FilterThrOrderRequest filterThrOrderRequest = new FilterThrOrderRequest();

@ -48,12 +48,13 @@
parameterType="com.glxp.sale.admin.entity.basic.BasicBusTypeChangeEntity">
insert
INTO basic_bustype_change
(`originAction`, originName, `targetBusAction`, targetScAction, `type`, updateTime, remark, enable)
(`originAction`, originName, `targetBusAction`, targetScAction, `type`, updateTime, remark, enable,
systemDefault)
values (#{originAction},
#{originName},
#{targetBusAction},
#{targetScAction},
#{type}, #{updateTime}, #{remark}, #{enable})
#{type}, #{updateTime}, #{remark}, #{enable}, #{systemDefault})
</insert>
<update id="updateBasicBusTypeChange" parameterType="com.glxp.sale.admin.entity.basic.BasicBusTypeChangeEntity">
@ -67,6 +68,8 @@
<if test="remark != null">remark = #{remark},</if>
<if test="updateTime != null">updateTime = #{updateTime},</if>
<if test="type != null">`type` = #{type},</if>
<if test="systemDefault != null">`systemDefault` = #{systemDefault},</if>
</trim>
WHERE id = #{id}
</update>

@ -30,6 +30,9 @@
<if test="thirdSysFk != '' and thirdSysFk != null">
AND thirdSysFk = #{thirdSysFk}
</if>
<if test="type !=null">
AND thr_order.`type` = #{type}
</if>
<if test="corpName != '' and corpName != null">
AND corpName like concat('%',#{corpName},'%')
</if>
@ -42,6 +45,9 @@
<if test="editStatus!= null">
AND editStatus = #{editStatus}
</if>
<if test="allocateStatus!= null">
AND allocateStatus = #{allocateStatus}
</if>
<if test="thirdPartyDate!= null">
AND thirdPartyDate = #{thirdPartyDate}
</if>
@ -52,13 +58,68 @@
ORDER BY thr_order.updateTime DESC
</select>
<select id="filterReceiveOrder" parameterType="com.glxp.sale.admin.req.thrsys.FilterThrOrderRequest"
resultType="com.glxp.sale.admin.entity.thrsys.ThrOrderEntity">
SELECT thr_order.*,basic_bustype_change.originName billTypeName FROM thr_order
left join basic_bustype_change on thr_order.billType = basic_bustype_change.originAction
<where>
<if test="billNo != '' and billNo != null">
AND billNo = #{billNo}
</if>
<if test="id != '' and id !=null">
AND thr_order.id = #{id}
</if>
<if test="billAction != '' and billAction !=null">
AND billType = #{billAction}
</if>
<if test="originType != '' and originType !=null">
AND originType = #{originType}
</if>
<if test="type !=null">
AND thr_order.`type` = #{type}
</if>
<if test="billFlag != '' and billFlag !=null">
AND billFlag = #{billFlag}
</if>
<if test="unitIdFk != '' and unitIdFk !=null">
AND unitIdFk = #{unitIdFk}
</if>
<if test="thirdSysFk != '' and thirdSysFk != null">
AND thirdSysFk = #{thirdSysFk}
</if>
<if test="corpName != '' and corpName != null">
AND corpName like concat('%',#{corpName},'%')
</if>
<if test="startDate!=null and startDate!=''">
<![CDATA[ and DATE_FORMAT(billdate, '%Y-%m-%d')>= DATE_FORMAT(#{startDate}, '%Y-%m-%d') ]]>
</if>
<if test="endDate!=null and endDate!=''">
<![CDATA[ and DATE_FORMAT(billdate, '%Y-%m-%d') <= DATE_FORMAT(#{endDate}, '%Y-%m-%d') ]]>
</if>
<if test="editStatus!= null">
AND editStatus = #{editStatus}
</if>
<if test="thirdPartyDate!= null">
AND thirdPartyDate = #{thirdPartyDate}
</if>
<if test="lastUpdateTime!=null and lastUpdateTime!=''">
<![CDATA[ and DATE_FORMAT(thr_order.updateTime, '%Y-%m-%d %H:%i:%S')>= DATE_FORMAT(#{lastUpdateTime}, '%Y-%m-%d %H:%i:%S') ]]>
</if>
<if test="allocateStatus!= null">
AND allocateStatus = #{allocateStatus}
</if>
</where>
ORDER BY thr_order.updateTime DESC
</select>
<insert id="insertThrOrder" keyProperty="id" parameterType="com.glxp.sale.admin.entity.thrsys.ThrOrderEntity">
<insert id="insertThrOrder" keyProperty="id" parameterType="com.glxp.sale.admin.entity.thrsys.ThrOrderEntity"
useGeneratedKeys="true">
replace
INTO thr_order
(id,billNo, billdate, corpId, corpName, billType, billFlag, thirdSysFk, updateTime, originType, unitIdFk,
startDate, endDate, createUser, reviewUser, address, linkMan, linkTel, remark, remark1, remark2,
remark3,locStorageCode,editStatus,invWarehouseCode,thirdPartyDate)
remark3,locStorageCode,editStatus,invWarehouseCode,thirdPartyDate,fromSubInvCode,`type`,allocateStatus)
values (
#{id},
#{billNo},
@ -85,7 +146,10 @@
#{locStorageCode},
#{editStatus},
#{invWarehouseCode},
#{thirdPartyDate}
#{thirdPartyDate},
#{fromSubInvCode},
#{type},
#{allocateStatus}
)
</insert>
@ -93,7 +157,7 @@
replace INTO thr_order
(billNo, billdate, corpId, corpName, billType, billFlag, thirdSysFk, updateTime, originType, unitIdFk,
startDate, endDate, createUser, reviewUser, address, linkMan, linkTel, remark, remark1, remark2,
remark3,locStorageCode,editStatus,invWarehouseCode)
remark3,locStorageCode,editStatus,invWarehouseCode,fromSubInvCode,`type`,allocateStatus)
values
<foreach collection="thrOrderEntities" item="item" index="index"
@ -107,7 +171,8 @@
#{item.thirdSysFk}, #{item.updateTime}, #{item.originType}, #{item.unitIdFk},
#{item.startDate}, #{item.endDate}, #{item.createUser}, #{item.reviewUser},
#{item.address}, #{item.linkMan}, #{item.linkTel}, #{item.remark}, #{item.remark1},
#{item.remark2}, #{item.remark3},#{item.locStorageCode},#{item.editStatus},#{item.invWarehouseCode},
#{item.remark2},
#{item.remark3},#{item.locStorageCode},#{item.editStatus},#{item.invWarehouseCode},#{item.fromSubInvCode},#{item.type},#{item.allocateStatus}
)
</foreach>
</insert>
@ -151,6 +216,10 @@
<if test="editStatus != null">editStatus=#{editStatus},</if>
<if test="thirdPartyDate != null">thirdPartyDate=#{thirdPartyDate},</if>
<if test="invWarehouseCode != null">invWarehouseCode=#{invWarehouseCode},</if>
<if test="fromSubInvCode != null">fromSubInvCode=#{fromSubInvCode},</if>
<if test="type != null">`type`=#{type},</if>
<if test="allocateStatus != null">`allocateStatus`=#{allocateStatus},</if>
</trim>
WHERE id = #{id}
</update>
@ -160,7 +229,7 @@
INTO thr_order
(id,billNo, billdate, corpId, corpName, billType, billFlag, thirdSysFk, updateTime, originType,
startDate, endDate, createUser, reviewUser, address, linkMan, linkTel, remark, remark1, remark2,
remark3,invWarehouseCode)
remark3,invWarehouseCode,fromSubInvCode,`type`,allocateStatus)
values (
#{id},
#{billNo},
@ -183,7 +252,10 @@
#{remark1},
#{remark2},
#{remark3},
#{invWarehouseCode}
#{invWarehouseCode},
#{fromSubInvCode},
#{type},
#{allocateStatus}
)
</insert>
</mapper>

@ -43,7 +43,7 @@
)
</insert>
<insert id="insertThrOrderDetails" keyProperty="id" parameterType="java.util.List">
<insert id="insertThrOrderDetails" keyProperty="id" parameterType="java.util.List" useGeneratedKeys="true">
replace INTO thr_order_detail
(productId, productName, spec, batchNo, expireDate,
productDate, `count`, reCount, orderIdFk, thirdSysFk, updateTime

Loading…
Cancel
Save