单据打印排序修改,单据打印数量问题,之前修改备份

fencang
anthonyywj2 3 years ago
parent fa8cf2d5f5
commit 522ba15be2

@ -62,6 +62,8 @@ public class SpsSyncDownloadService {
@Resource
ThrInvWarehouseService thrInvWarehouseService;
@Resource
ThrSubInvWarehouseService thrSubInvWarehouseService;
@Resource
ThrCorpService thrCorpService;
@Resource
ThrProductsService thrProductsService;
@ -173,6 +175,19 @@ public class SpsSyncDownloadService {
BeanUtils.copyProperties(spsSyncDataRequest, filterThrInvWarehouseRequest);
List<ThrInvWarehouseEntity> thrInvWarehouseEntities = thrInvWarehouseService.filterThrInvWarehouse(filterThrInvWarehouseRequest);
syncDataResponse.setThrInvWarehouseEntities(thrInvWarehouseEntities);
List<ThrSubInvWarehouseEntity> resultThrSubInvWarehouseEntities = new ArrayList<>();
if (CollUtil.isNotEmpty(thrInvWarehouseEntities)) {
for (ThrInvWarehouseEntity thrInvWarehouseEntity : thrInvWarehouseEntities) {
FilterThrSubInvWarehouseRequest filterThrSubInvWarehouseRequest = new FilterThrSubInvWarehouseRequest();
filterThrSubInvWarehouseRequest.setParentId(thrInvWarehouseEntity.getCode());
filterThrInvWarehouseRequest.setThirdSysFk(thrInvWarehouseEntity.getThirdSysFk());
List<ThrSubInvWarehouseEntity> thrSubInvWarehouseEntities = thrSubInvWarehouseService.filterThrInvWarehouse(filterThrSubInvWarehouseRequest);
if (CollUtil.isNotEmpty(thrSubInvWarehouseEntities))
resultThrSubInvWarehouseEntities.addAll(thrSubInvWarehouseEntities);
}
}
}

@ -3,6 +3,7 @@ package com.glxp.sale.admin.controller.basic;
import com.github.pagehelper.PageInfo;
import com.glxp.sale.admin.entity.basic.BasicDownloadStatusEntity;
import com.glxp.sale.admin.req.basic.BasicDownloadRequest;
import com.glxp.sale.admin.req.basic.SpsSyncDataRequest;
import com.glxp.sale.admin.req.inout.DeleteRequest;
import com.glxp.sale.admin.res.PageSimpleResponse;
import com.glxp.sale.admin.service.basic.BasicDownloadService;
@ -28,6 +29,13 @@ public class SpsSyncDownloadStatusController {
@Resource
RedisUtil redisUtil;
@GetMapping("sps/sync/connect/test")
public BaseResponse connectTest(SpsSyncDataRequest spsSyncDataRequest) {
return ResultVOUtils.success("连接成功");
}
@GetMapping("/spssync/download/basic/udiinfo/getStatus")
public BaseResponse getStatus(BasicDownloadRequest basicDownloadRequest) {
List<BasicDownloadStatusEntity> basicDownloadStatusEntities = basicDownloadService.filterDownloadStatus(basicDownloadRequest);

@ -31,6 +31,7 @@ import com.glxp.sale.admin.service.inout.OrderService;
import com.glxp.sale.admin.service.inventory.InvSubWarehouseService;
import com.glxp.sale.admin.service.inventory.InvWarehouseService;
import com.glxp.sale.admin.service.param.SystemParamConfigService;
import com.glxp.sale.admin.service.thrsys.ThrSubInvWarehouseService;
import com.glxp.sale.admin.thread.BasicBackUpdateProductService;
import com.glxp.sale.admin.util.BeanUtils;
import com.glxp.sale.admin.util.CustomUtil;
@ -77,6 +78,8 @@ public class SpsSyncUploadController {
private SystemParamConfigService systemParamConfigService;
@Resource
InvSubWarehouseService invSubWarehouseService;
@Resource
ThrSubInvWarehouseService thrSubInvWarehouseService;
@PostMapping("sps/sync/basic/upload")
public BaseResponse findProductInfo(@RequestBody SpsSyncDataResponse syncDataResponse) {
@ -190,6 +193,7 @@ public class SpsSyncUploadController {
batchSession.commit();
remark.append("耗材字典:").append(syncDataResponse.getUdiRelevanceEntities().size()).append("条\n");
} catch (Exception e) {
e.printStackTrace();
}
}
//耗材字典导入
@ -216,6 +220,7 @@ public class SpsSyncUploadController {
batchSession.commit();
remark.append("往来单位:").append(syncDataResponse.getBasicUnitMaintainEntities().size()).append("条\n");
} catch (Exception e) {
e.printStackTrace();
}
}
@ -231,6 +236,7 @@ public class SpsSyncUploadController {
batchSession.commit();
remark.append("供应商关联产品信息:").append(syncDataResponse.getCompanyProductRelevanceEntities().size()).append("条\n");
} catch (Exception e) {
e.printStackTrace();
}
}
@ -243,10 +249,16 @@ public class SpsSyncUploadController {
for (ThrInvWarehouseEntity thrInvWarehouseEntity : thrInvWarehouseEntities) {
thrInvWarehouseEntity.setUpdateTime(null);
mapper.insertThrInvWarehouse(thrInvWarehouseEntity);
thrSubInvWarehouseService.deleteByParentId(thrInvWarehouseEntity.getCode());
}
batchSession.commit();
if (CollUtil.isNotEmpty(syncDataResponse.getThrSubInvWarehouseEntities())) {
thrSubInvWarehouseService.insertInvWarehouses(syncDataResponse.getThrSubInvWarehouseEntities());
}
remark.append("第三方仓库:").append(syncDataResponse.getThrInvWarehouseEntities().size()).append("条\n");
remark.append("第三方仓库分库:").append(syncDataResponse.getThrSubInvWarehouseEntities().size()).append("条\n");
} catch (Exception e) {
e.printStackTrace();
}
}
//
@ -280,6 +292,7 @@ public class SpsSyncUploadController {
batchSession.commit();
remark.append("第三方产品信息:").append(syncDataResponse.getThrProductsEntities().size()).append("条\n");
} catch (Exception e) {
e.printStackTrace();
}
}
@ -296,6 +309,7 @@ public class SpsSyncUploadController {
batchSession.commit();
remark.append("第三方往来单位:").append(syncDataResponse.getThrCorpEntities().size()).append("条\n");
} catch (Exception e) {
e.printStackTrace();
}
}
@ -311,6 +325,7 @@ public class SpsSyncUploadController {
batchSession.commit();
remark.append("第三方业务单据:").append(syncDataResponse.getThrOrderEntities().size()).append("条\n");
} catch (Exception e) {
e.printStackTrace();
}
}
@ -326,6 +341,7 @@ public class SpsSyncUploadController {
batchSession.commit();
remark.append("第三方业务单据详情:").append(syncDataResponse.getThrOrderDetailEntities().size()).append("条\n");
} catch (Exception e) {
e.printStackTrace();
}
}
@ -376,6 +392,7 @@ public class SpsSyncUploadController {
batchSession.commit();
remark.append("扫码单据类型:").append(syncDataResponse.getBussinessTypeEntities().size()).append("条\n");
} catch (Exception e) {
e.printStackTrace();
}
}
//业务单据
@ -401,6 +418,7 @@ public class SpsSyncUploadController {
batchSession.commit();
remark.append("业务单据类型:").append(syncDataResponse.getBussinessTypeEntities().size()).append("条\n");
} catch (Exception e) {
e.printStackTrace();
}
}
//原始单据
@ -415,6 +433,7 @@ public class SpsSyncUploadController {
batchSession.commit();
remark.append("第三方单据类型:").append(syncDataResponse.getBussinessTypeEntities().size()).append("条\n");
} catch (Exception e) {
e.printStackTrace();
}
}
@ -490,6 +509,7 @@ public class SpsSyncUploadController {
batchSession.commit();
remark.append("单据:").append(syncDataResponse.getOrderEntities().size()).append("条\n");
} catch (Exception e) {
e.printStackTrace();
}
}
// if (CollUtil.isNotEmpty(syncDataResponse.getOrderDetailEntityList())) {

@ -1,5 +1,6 @@
package com.glxp.sale.admin.controller.inout;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.StrUtil;
import com.github.pagehelper.PageInfo;
import com.glxp.sale.admin.annotation.AuthRuleAnnotation;
@ -49,10 +50,7 @@ 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;
import java.util.Map;
import java.util.*;
import java.util.stream.Collectors;
@RestController
@ -360,9 +358,51 @@ public class OrderDetailController {
filterErpOrderRequest.setPage(1);
filterErpOrderRequest.setLimit(100);
List<ErpOrderEntity> erpOrderEntities = orderDetailService.filterMyErpOrder(filterErpOrderRequest);
OrderEntity orderEntity = orderService.findById(filterErpOrderRequest.getOrderId());
if (orderEntity == null) {
return ResultVOUtils.error(500, "单据不存在!");
}
BussinessTypeEntity bussinessTypeEntity = bussinessTypeService.findBTByAction(orderEntity.getAction());
if (bussinessTypeEntity.getOrderVisibleType() == 1 && orderEntity.getStatus() == 4) {
erpOrderEntities = transferSerList(erpOrderEntities, filterErpOrderRequest.getOrderId());
}
return ResultVOUtils.success(erpOrderEntities);
}
public List<ErpOrderEntity> transferSerList(List<ErpOrderEntity> erpOrderEntities, String orderId) {
List<ErpOrderEntity> resultList = new ArrayList<>();
List<WarehouseEntity> codeList = codesService.findByReceiptId(orderId);
if (CollUtil.isNotEmpty(erpOrderEntities)) {
for (ErpOrderEntity erpOrderEntity : erpOrderEntities) {
if (CollUtil.isNotEmpty(codeList)) {
for (WarehouseEntity codeDetaiEntity : codeList) {
if (StrUtil.trimToEmpty(codeDetaiEntity.getRelId()).equals(StrUtil.trimToEmpty(erpOrderEntity.getBindRlFk()))
&& StrUtil.trimToEmpty(codeDetaiEntity.getBatchNo()).equals(StrUtil.trimToEmpty(erpOrderEntity.getBatchNo()))
) {
ErpOrderEntity item = new ErpOrderEntity();
BeanUtils.copyProperties(erpOrderEntity, item);
item.setCode(codeDetaiEntity.getCode());
item.setCount(codeDetaiEntity.getCount());
item.setReCount(codeDetaiEntity.getCount());
item.setErpCount(codeDetaiEntity.getCount());
item.setCodeId(codeDetaiEntity.getId().intValue());
resultList.add(item);
}
}
}
}
}
Collections.sort(resultList, (o1, o2) -> {
Integer cp = o1.getCodeId() - o2.getCodeId();
return cp;
});
return resultList;
}
@AuthRuleAnnotation("")
@GetMapping(value = "/warehouse/inout/order/uploadOrder")
public BaseResponse uploadOrder(FilterErpOrderRequest filterErpOrderRequest,

@ -28,6 +28,7 @@ import com.glxp.sale.admin.res.inout.StockOrderDetailQueryProductResponse;
import com.glxp.sale.admin.res.inout.StockOrderDetailResponse;
import com.glxp.sale.admin.service.auth.AuthAdminService;
import com.glxp.sale.admin.service.basic.BussinessLocalTypeService;
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.info.CompanyProductRelevanceService;
@ -80,7 +81,8 @@ public class StockOrderDetailController {
BussinessLocalTypeService bussinessLocalTypeService;
@Resource
CodesService codesService;
@Resource
BussinessTypeService bussinessTypeService;
@AuthRuleAnnotation("")
@GetMapping("/udiwms/stock/order/detail/filter")
@ -92,12 +94,13 @@ public class StockOrderDetailController {
}
StockOrderEntity stockOrderEntity = stockOrderService.findById(stockOrderDetailFilterRequest.getOrderIdFk());
String value = systemParamConfigService.selectValueByParamKey("oeder_detail_by_code");
List<StockOrderDetailEntity> stockOrderDetailEntityList
= stockOrderDetailService.filterStockOrderDetail(stockOrderDetailFilterRequest);
// if (StrUtil.isNotEmpty(value) && value.equals("1")) {
// stockOrderDetailEntityList = transferSerList(stockOrderDetailEntityList, stockOrderEntity.getOrderIdFk());
// }
BussinessLocalTypeEntity bussinessLocalTypeEntity = bussinessLocalTypeService.findBTByAction(stockOrderEntity.getBillType());
if (bussinessLocalTypeEntity.getOrderVisibleType() == 1 && (stockOrderEntity.getStatus().equals("4") || stockOrderEntity.getStatus().equals("5"))) {
stockOrderDetailEntityList = transferSerList(stockOrderDetailEntityList, stockOrderEntity.getOrderIdFk());
}
PageInfo<StockOrderDetailEntity> pageInfo;
pageInfo = new PageInfo<>(stockOrderDetailEntityList);
@ -120,8 +123,10 @@ public class StockOrderDetailController {
StockOrderDetailEntity item = new StockOrderDetailEntity();
BeanUtils.copyProperties(stockOrderDetailEntity, item);
item.setCode(codeDetaiEntity.getCode());
item.setCodeId(codeDetaiEntity.getId().intValue());
item.setSerialNo(codeDetaiEntity.getSerialNo());
item.setCount(codeDetaiEntity.getCount() + "");
item.setReCount(codeDetaiEntity.getCount() + "");
resultList.add(item);
}
@ -131,9 +136,10 @@ public class StockOrderDetailController {
}
}
Collections.sort(resultList, (o1, o2) -> {
Long cp = Long.parseLong(o1.getProductId()) - Long.parseLong(o2.getProductId());
return cp.intValue();
Integer cp = o1.getCodeId() - o2.getCodeId();
return cp;
});
return resultList;
}

@ -3,12 +3,12 @@ package com.glxp.sale.admin.controller.inout;
import cn.hutool.core.util.StrUtil;
import com.github.pagehelper.PageInfo;
import com.glxp.sale.admin.annotation.AuthRuleAnnotation;
import com.glxp.sale.admin.entity.basic.BussinessLocalTypeEntity;
import com.glxp.sale.admin.entity.basic.BussinessTypeEntity;
import com.glxp.sale.admin.entity.basic.StockPrintEntity;
import com.glxp.sale.admin.entity.basic.UdiRelevanceEntity;
import com.glxp.sale.admin.entity.info.CompanyEntity;
import com.glxp.sale.admin.entity.inout.StockOrderDetailEntity;
import com.glxp.sale.admin.entity.inout.StockOrderEntity;
import com.glxp.sale.admin.entity.inout.StockOrderPrintEntity;
import com.glxp.sale.admin.entity.inout.StockQRCodeTextEntity;
import com.glxp.sale.admin.entity.inout.*;
import com.glxp.sale.admin.entity.inventory.StockPrintTempEntity;
import com.glxp.sale.admin.entity.param.SystemPDFModuleEntity;
import com.glxp.sale.admin.entity.param.SystemPDFTemplateEntity;
@ -23,8 +23,11 @@ import com.glxp.sale.admin.req.itextpdf.PdfPrintCountEntity;
import com.glxp.sale.admin.req.itextpdf.StockQRCodeTextPDFTemplateRequest;
import com.glxp.sale.admin.req.itextpdf.SystemPDFTemplateRelevanceRequest;
import com.glxp.sale.admin.res.PageSimpleResponse;
import com.glxp.sale.admin.res.basic.UdiRelevanceResponse;
import com.glxp.sale.admin.res.param.SystemPDFTemplateRelevanceResponse;
import com.glxp.sale.admin.service.basic.BussinessLocalTypeService;
import com.glxp.sale.admin.service.basic.BussinessTypeService;
import com.glxp.sale.admin.service.basic.UdiRelevanceService;
import com.glxp.sale.admin.service.info.CompanyService;
import com.glxp.sale.admin.service.inout.StockOrderDetailService;
import com.glxp.sale.admin.service.inout.StockOrderService;
@ -54,10 +57,7 @@ import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.File;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.*;
@RestController
public class StockQRCodeTextController {
@ -87,6 +87,8 @@ public class StockQRCodeTextController {
private JaspaperService jaspaperService;
@Resource
private BussinessLocalTypeService bussinessLocalTypeService;
@Resource
private BussinessTypeService bussinessTypeService;
@AuthRuleAnnotation("")
@GetMapping("/udiwms/stock/qrcode/text/filter")
@ -372,13 +374,12 @@ public class StockQRCodeTextController {
SystemPDFTemplateRelevanceRequest systemPDFTemplateRelevanceRequest = new SystemPDFTemplateRelevanceRequest();
systemPDFTemplateRelevanceRequest.setModuleId(stockQRCodeTextPDFTemplateRequest.getModuleId());
systemPDFTemplateRelevanceRequest.setLocalAction(stockOrderEntity.getBillType());
BussinessLocalTypeEntity bussinessLocalTypeEntity = bussinessLocalTypeService.findBTByAction(stockOrderEntity.getBillType());
List<SystemPDFTemplateRelevanceResponse> systemPDFTemplateRelevanceResponses = systemPDFTemplateRelevanceService.filterList(systemPDFTemplateRelevanceRequest);
if (systemPDFTemplateRelevanceResponses == null || systemPDFTemplateRelevanceResponses.size() < 1) return;
SystemPDFTemplateRelevanceResponse systemPDFTemplateRelevanceResponse = systemPDFTemplateRelevanceResponses.get(0);
if (systemPDFTemplateRelevanceResponse.getPrintType() == 0) {
if (bussinessLocalTypeEntity.getOrderVisibleType() == 0) {
/*打印订单*/
List<StockOrderPrintEntity> list = stockOrderService.listOrderPrint(stockQRCodeTextPDFTemplateRequest.getId());
if (list != null && list.size() > 0) {
@ -445,9 +446,9 @@ public class StockQRCodeTextController {
if (stockOrderDetailEntity != null) {
stockOrderPrintEntity.setPrice(stockOrderDetailEntity.getPrice());
}
index++;
stockOrderPrintEntity.setCount(Integer.parseInt(stockOrderPrintEntity.getCount()) * getActCount(stockOrderPrintEntity) + "");
}
Map<String, Object> data = new HashMap<String, Object>();
@ -461,6 +462,24 @@ public class StockQRCodeTextController {
}
}
@Resource
UdiRelevanceService udiRelevanceService;
public int getActCount(StockOrderPrintEntity stockOrderPrintEntity) {
UdiRelevanceEntity udiRelevanceEntity = udiRelevanceService.selectById(stockOrderPrintEntity.getRelId());
UdiRelevanceResponse udiInfoBean = udiRelevanceService.selectByNameCode(stockOrderPrintEntity.getNameCode());
if (udiInfoBean != null) {
if ((udiRelevanceEntity.getIsUseDy() != null && udiRelevanceEntity.getIsUseDy()) && udiInfoBean.getDiType() != 2) {
if (udiInfoBean.getBhzxxsbzsl() == 0)
return udiInfoBean.getZxxsbzbhsydysl();
else
return udiInfoBean.getZxxsbzbhsydysl() * udiInfoBean.getBhzxxsbzsl();
} else {
return udiInfoBean.getBhzxxsbzsl();
}
}
return 1;
}
public StockOrderDetailEntity getDetailByRelBatch(List<StockOrderDetailEntity> stockOrderDetailEntities, String relId, String batchNo) {
for (StockOrderDetailEntity stockOrderDetailEntity : stockOrderDetailEntities) {

@ -3,10 +3,12 @@ package com.glxp.sale.admin.controller.thrsys;
import cn.hutool.core.util.IdUtil;
import com.github.pagehelper.PageInfo;
import com.glxp.sale.admin.annotation.AuthRuleAnnotation;
import com.glxp.sale.admin.entity.thrsys.ThrInvWarehouseEntity;
import com.glxp.sale.admin.entity.thrsys.ThrSubInvWarehouseEntity;
import com.glxp.sale.admin.req.info.DeleteRequest;
import com.glxp.sale.admin.req.thrsys.FilterThrSubInvWarehouseRequest;
import com.glxp.sale.admin.res.PageSimpleResponse;
import com.glxp.sale.admin.service.thrsys.ThrInvWarehouseService;
import com.glxp.sale.admin.service.thrsys.ThrSubInvWarehouseService;
import com.glxp.sale.common.enums.ResultEnum;
import com.glxp.sale.common.res.BaseResponse;
@ -19,6 +21,7 @@ import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import javax.validation.Valid;
import java.util.Date;
import java.util.List;
@RestController
@ -26,6 +29,8 @@ public class ThrSubInvWarehouseController {
@Resource
ThrSubInvWarehouseService thrSubInvWarehouseService;
@Resource
ThrInvWarehouseService thrInvWarehouseService;
@GetMapping("/thirdSys/sub/inv/warehouse/filter")
public BaseResponse filterInvWarehouse(FilterThrSubInvWarehouseRequest filterThrSubInvWarehouseRequest) {
@ -55,6 +60,10 @@ public class ThrSubInvWarehouseController {
}
invSubWarehouseEntity.setId(IdUtil.getSnowflake(6, 1).nextId() + "");
boolean b = thrSubInvWarehouseService.insertThrInvWarehouse(invSubWarehouseEntity);
ThrInvWarehouseEntity thrInvWarehouseEntity = thrInvWarehouseService.selectByCode(invSubWarehouseEntity.getParentId(), invSubWarehouseEntity.getThirdSysFk());
thrInvWarehouseEntity.setUpdateTime(new Date());
thrInvWarehouseService.updateInvWarehouse(thrInvWarehouseEntity);
if (!b) {
return ResultVOUtils.error(ResultEnum.NOT_NETWORK);
}
@ -77,6 +86,11 @@ public class ThrSubInvWarehouseController {
return ResultVOUtils.error(ResultEnum.NOT_NETWORK);
}
ThrInvWarehouseEntity thrInvWarehouseEntity = thrInvWarehouseService.selectByCode(invSubWarehouseEntity.getParentId(), invSubWarehouseEntity.getThirdSysFk());
thrInvWarehouseEntity.setUpdateTime(new Date());
thrInvWarehouseService.updateInvWarehouse(thrInvWarehouseEntity);
return ResultVOUtils.success("修改成功!");
}
@ -88,6 +102,12 @@ public class ThrSubInvWarehouseController {
if (deleteRequest.getId() == null) {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL);
}
ThrSubInvWarehouseEntity thrSubInvWarehouseEntity = thrSubInvWarehouseService.selectById(deleteRequest.getId());
ThrInvWarehouseEntity thrInvWarehouseEntity = thrInvWarehouseService.selectByCode(thrSubInvWarehouseEntity.getParentId(), thrSubInvWarehouseEntity.getThirdSysFk());
thrInvWarehouseEntity.setUpdateTime(new Date());
thrInvWarehouseService.updateInvWarehouse(thrInvWarehouseEntity);
boolean b = thrSubInvWarehouseService.deleteById(deleteRequest.getId());
if (!b) {
return ResultVOUtils.error(ResultEnum.NOT_NETWORK);

@ -15,7 +15,7 @@ public interface ThrSubInvWarehouseDao {
boolean insertThrInvWarehouse(ThrSubInvWarehouseEntity thrInvWarehouseEntity);
boolean insertInvWarehouses(@Param("thrInvWarehouseEntitys") List<ThrSubInvWarehouseEntity> thrInvWarehouseEntitys);
boolean insertThrInvWarehouses(@Param("thrInvWarehouseEntitys") List<ThrSubInvWarehouseEntity> thrInvWarehouseEntitys);
boolean updateThrInvWarehouse(ThrSubInvWarehouseEntity thrInvWarehouseEntity);
@ -29,4 +29,6 @@ public interface ThrSubInvWarehouseDao {
*/
int countSubInvByParentInvId(String parentInvId);
boolean deleteByParentId(@Param("parentId") String parentId);
}

@ -34,8 +34,8 @@ public class BussinessLocalTypeEntity {
private boolean scanPreIn;
private boolean vailInv;
private boolean codeFillCheck;
private boolean supplementAll; //是否全量补单
private boolean supplementAll; //是否全量补单 0:禁止补单1缺量补单2。全量补单
private int orderVisibleType; //订单详情展示方式0根据批次号展示1:根据条码展示
}

@ -69,4 +69,6 @@ public class BussinessTypeEntity {
private String defaultInv;
private int orderVisibleType; //订单详情展示方式0根据批次号展示1:根据条码展示
private boolean supplementAll;
}

@ -80,5 +80,10 @@ public class ErpOrderEntity {
}
private String bindRlFk;
private String serialNo;
private String code;
private Integer codeId;
}

@ -40,4 +40,6 @@ public class StockOrderDetailEntity {
private boolean allowNoProduct;
private String code;
private String serialNo;
private Integer codeId;
}

@ -49,4 +49,6 @@ public class StockOrderPrintEntity extends StockOrderDetailEntity {
private String measname; //计量单位
private String udiCode; //条码
private String serialNo; //序列号
private String nameCode;
}

@ -69,4 +69,7 @@ public class BussinessTypResponse {
private boolean codeFillCheck;
private String defaultSubInv;
private String defaultInv;
private int orderVisibleType; //订单详情展示方式0根据批次号展示1:根据条码展示
private boolean supplementAll; //是否全量补单
}

@ -23,6 +23,7 @@ public class SpsSyncDataResponse {
List<UdiInfoEntity> udiInfoEntities;
List<BasicUnitMaintainEntity> basicUnitMaintainEntities;
List<ThrInvWarehouseEntity> thrInvWarehouseEntities;
List<ThrSubInvWarehouseEntity> thrSubInvWarehouseEntities;
List<ThrCorpEntity> thrCorpEntities;
List<ThrProductsEntity> thrProductsEntities;
List<ThrOrderDetailEntity> thrOrderDetailEntities;

@ -78,6 +78,9 @@ public class BussinessTypeServiceImpl implements BussinessTypeService {
@Override
public BussinessTypeEntity findBTByAction(String action) {
if (StrUtil.isEmpty(action)) {
return null;
}
BussinessTypeFilterRequest bussinessTypeFilterRequest = new BussinessTypeFilterRequest();
bussinessTypeFilterRequest.setAction(action);
List<BussinessTypeEntity> data = bussinessTypeDao.filterList(bussinessTypeFilterRequest);

@ -24,7 +24,7 @@ public interface ThrInvWarehouseService {
ThrInvWarehouseEntity selectById(String id);
ThrInvWarehouseEntity selectByCode(String code);
ThrInvWarehouseEntity selectByCode(String code, String thirdSysFk);
boolean deleteById(String id);

@ -8,6 +8,7 @@ import java.util.List;
public interface ThrSubInvWarehouseService {
ThrSubInvWarehouseEntity selectById(String id);
ThrSubInvWarehouseEntity selectByThrCode(String thirdSys, String thirdId);
@ -21,4 +22,6 @@ public interface ThrSubInvWarehouseService {
boolean deleteById(String id);
boolean deleteByParentId(String code);
}

@ -1,23 +1,27 @@
package com.glxp.sale.admin.service.thrsys.impl;
import com.github.pagehelper.PageHelper;
import com.glxp.sale.admin.dao.basic.BasicThirdSysDao;
import com.glxp.sale.admin.dao.thrsys.ThrInvWarehouseDao;
import com.glxp.sale.admin.dao.thrsys.ThrSubInvWarehouseDao;
import com.glxp.sale.admin.entity.thrsys.ThrInvWarehouseEntity;
import com.glxp.sale.admin.httpclient.ErpBasicClient;
import com.glxp.sale.admin.req.thrsys.FilterThrInvWarehouseRequest;
import com.glxp.sale.admin.service.thrsys.ThrInvWarehouseService;
import com.glxp.sale.common.res.BaseResponse;
import com.glxp.sale.common.util.ResultVOUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Date;
import java.util.List;
@Service
public class ThrInvWarehouseServiceImpl implements ThrInvWarehouseService {
@Resource
private ThrInvWarehouseDao thrInvWarehouseDao;
@Resource
@ -36,15 +40,15 @@ public class ThrInvWarehouseServiceImpl implements ThrInvWarehouseService {
}
@Override
public List<ThrInvWarehouseEntity> filterThrInvWarehouse(FilterThrInvWarehouseRequest FilterThrInvWarehouseRequest) {
if (FilterThrInvWarehouseRequest == null) {
public List<ThrInvWarehouseEntity> filterThrInvWarehouse(FilterThrInvWarehouseRequest filterThrInvWarehouseRequest) {
if (filterThrInvWarehouseRequest == null) {
return Collections.emptyList();
}
if (FilterThrInvWarehouseRequest.getPage() != null) {
int offset = (FilterThrInvWarehouseRequest.getPage() - 1) * FilterThrInvWarehouseRequest.getLimit();
PageHelper.offsetPage(offset, FilterThrInvWarehouseRequest.getLimit());
if (filterThrInvWarehouseRequest.getPage() != null) {
int offset = (filterThrInvWarehouseRequest.getPage() - 1) * filterThrInvWarehouseRequest.getLimit();
PageHelper.offsetPage(offset, filterThrInvWarehouseRequest.getLimit());
}
return thrInvWarehouseDao.filterThrInvWarehouse(FilterThrInvWarehouseRequest);
return thrInvWarehouseDao.filterThrInvWarehouse(filterThrInvWarehouseRequest);
}
@Override
@ -80,9 +84,10 @@ public class ThrInvWarehouseServiceImpl implements ThrInvWarehouseService {
}
@Override
public ThrInvWarehouseEntity selectByCode(String code) {
public ThrInvWarehouseEntity selectByCode(String code, String thirdSysFk) {
FilterThrInvWarehouseRequest thrInvWarehouseRequest = new FilterThrInvWarehouseRequest();
thrInvWarehouseRequest.setCode(code);
thrInvWarehouseRequest.setThirdSysFk(thirdSysFk);
List<ThrInvWarehouseEntity> invWarehouseEntities = thrInvWarehouseDao.filterThrInvWarehouse(thrInvWarehouseRequest);
if (invWarehouseEntities != null && invWarehouseEntities.size() > 0)
return invWarehouseEntities.get(0);
@ -113,4 +118,5 @@ public class ThrInvWarehouseServiceImpl implements ThrInvWarehouseService {
}
return ResultVOUtils.success("删除成功");
}
}

@ -1,6 +1,7 @@
package com.glxp.sale.admin.service.thrsys.impl;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.StrUtil;
import com.github.pagehelper.PageHelper;
import com.glxp.sale.admin.dao.thrsys.ThrSubInvWarehouseDao;
import com.glxp.sale.admin.entity.thrsys.ThrSubInvWarehouseEntity;
@ -18,6 +19,19 @@ public class ThrSubInvWarehouseServiceImpl implements ThrSubInvWarehouseService
@Resource
ThrSubInvWarehouseDao thrSubInvWarehouseDao;
@Override
public ThrSubInvWarehouseEntity selectById(String id) {
if (StrUtil.isEmpty(id)) {
return null;
}
FilterThrSubInvWarehouseRequest filterThrSubInvWarehouseRequest = new FilterThrSubInvWarehouseRequest();
filterThrSubInvWarehouseRequest.setId(id);
List<ThrSubInvWarehouseEntity> thrSubInvWarehouseEntities = thrSubInvWarehouseDao.filterThrInvWarehouse(filterThrSubInvWarehouseRequest);
if (CollUtil.isNotEmpty(thrSubInvWarehouseEntities)) {
return thrSubInvWarehouseEntities.get(0);
}
return null;
}
@Override
public ThrSubInvWarehouseEntity selectByThrCode(String thirdSys, String thirdId) {
@ -49,7 +63,7 @@ public class ThrSubInvWarehouseServiceImpl implements ThrSubInvWarehouseService
@Override
public boolean insertInvWarehouses(List<ThrSubInvWarehouseEntity> thrInvWarehouseEntitys) {
return thrSubInvWarehouseDao.insertInvWarehouses(thrInvWarehouseEntitys);
return thrSubInvWarehouseDao.insertThrInvWarehouses(thrInvWarehouseEntitys);
}
@Override
@ -62,4 +76,9 @@ public class ThrSubInvWarehouseServiceImpl implements ThrSubInvWarehouseService
return thrSubInvWarehouseDao.deleteById(id);
}
@Override
public boolean deleteByParentId(String code) {
return thrSubInvWarehouseDao.deleteByParentId(code);
}
}

@ -267,11 +267,10 @@ public class InvProductsTrService {
List<WarehouseEntity> inList = new ArrayList<>();
List<WarehouseEntity> preiInList = new ArrayList<>();
//缺量补单时是否全量补单
SystemParamConfigEntity systemParamConfigEntity = systemParamConfigService.selectByParamKey("ullage_supplement_all");
if (systemParamConfigEntity != null && systemParamConfigEntity.getParamValue().equals("1")) {
BussinessTypeEntity bussinessTypeEntity = bussinessTypeService.findBTByAction(orderEntity.getAction());
insetInv(bussinessTypeEntity, invProductDetailEntities);//2.插入当前库存
BussinessTypeEntity bussinessTypeEntity1 = bussinessTypeService.findBTByAction(orderEntity.getAction());
// SystemParamConfigEntity systemParamConfigEntity = systemParamConfigService.selectByParamKey("ullage_supplement_all");
if (bussinessTypeEntity1.isSupplementAll()) {
insetInv(bussinessTypeEntity1, invProductDetailEntities);//2.插入当前库存
WarehouseEntity warehouseEntity = warehouseEntities.get(0);
InvWarehouseEntity locWarehouseEntity = invWarehouseService.selectByCode(warehouseEntity.getLocStorageCode());
if (locWarehouseEntity.getLevel() == 1 && isAdavnce(warehouseEntity)) {//补寄售转入

@ -260,6 +260,7 @@ public class IoTransInoutService {
orderEntity.setCustomerId(postUdimsOrderRequest.getCustomerId());
InvWarehouseEntity invWarehouseEntity = invWarehouseService.findDefault(false, true);
orderEntity.setLocStorageCode(invWarehouseEntity.getCode());
// orderEntity.setInvWarehouseCode();
orderEntity.setInvStorageCode(invWarehouseEntity.getCode());
orderEntity.setUpdateTime(new Date());
BussinessTypeEntity bussinessTypeEntity = bussinessTypeService.findBTByAction(orderEntity.getAction());

@ -1,9 +1,9 @@
# \u751F\u4EA7\u73AF\u5883
server.port=9996
server.port=9906
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.jdbc-url=jdbc:mysql://127.0.0.1:3306/spms?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true
spring.datasource.jdbc-url=jdbc:mysql://127.0.0.1:3306/spms_ph2?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true
spring.datasource.username=root
spring.datasource.password=root
spring.datasource.password=123456
#spring.datasource.password=123456
spring.datasource.hikari.connection-timeout=60000
spring.datasource.hikari.maximum-pool-size=60

@ -3,7 +3,7 @@ server.port=9996
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.jdbc-url=jdbc:mysql://127.0.0.1:3306/spms?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true
spring.datasource.username=root
spring.datasource.password=root
spring.datasource.password=Glxp@6066
#spring.datasource.password=123456
spring.datasource.hikari.connection-timeout=60000
spring.datasource.hikari.maximum-pool-size=60

@ -1,4 +1,4 @@
spring.profiles.active=@profiles.active@
spring.profiles.active=dev
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver

@ -56,7 +56,9 @@
basic_bussiness_type.action,basic_bussiness_type.checkEnable,basic_bustype_local.advanceType,basic_bustype_local.changeEnable,
basic_bustype_local.spUse,basic_bussiness_type.storageCode,basic_bussiness_type.corpType,basic_bussiness_type.mainAction
,basic_bussiness_type.prefix,basic_bustype_local.prefix localPrefix,basic_bustype_local.preIn,
basic_bussiness_type.ullageFill, basic_bussiness_type.scanPreIn, basic_bussiness_type.vailInv, basic_bussiness_type.codeFillCheck
basic_bussiness_type.ullageFill, basic_bussiness_type.scanPreIn, basic_bussiness_type.vailInv,
basic_bussiness_type.codeFillCheck,
basic_bustype_local.supplementAll,basic_bussiness_type.orderVisibleType
FROM basic_bustype_local
inner join basic_bussiness_type
on basic_bustype_local.action = basic_bussiness_type.localAction
@ -86,8 +88,10 @@
basic_bussiness_type.action,basic_bussiness_type.checkEnable,basic_bustype_local.advanceType,basic_bustype_local.changeEnable,
basic_bustype_local.spUse,basic_bussiness_type.storageCode,basic_bussiness_type.corpType,basic_bussiness_type.mainAction,
basic_bussiness_type.defaultUnit,basic_bussiness_type.genUnit,basic_bustype_origin.action
thirdAction,basic_bustype_origin.thirdSys,basic_bussiness_type.prefix,basic_bustype_local.prefix localPrefix,preIn,
basic_bussiness_type.ullageFill, basic_bussiness_type.scanPreIn, basic_bussiness_type.vailInv, basic_bussiness_type.codeFillCheck
thirdAction,basic_bustype_origin.thirdSys,basic_bussiness_type.prefix,basic_bustype_local.prefix
localPrefix,preIn,
basic_bussiness_type.ullageFill, basic_bussiness_type.scanPreIn, basic_bussiness_type.vailInv,
basic_bussiness_type.codeFillCheck,supplementAll
FROM basic_bustype_local
inner join basic_bussiness_type on basic_bustype_local.action = basic_bussiness_type.localAction
INNER JOIN inv_warehouse_bussiness_type on basic_bussiness_type.action = inv_warehouse_bussiness_type.action
@ -126,7 +130,7 @@
basic_bussiness_type.name ,
basic_bussiness_type.action,basic_bussiness_type.checkEnable,basic_bustype_local.advanceType,basic_bustype_local.changeEnable,
basic_bustype_local.spUse,basic_bussiness_type.storageCode,basic_bussiness_type.corpType,basic_bussiness_type.mainAction
,basic_bussiness_type.prefix,basic_bustype_local.prefix localPrefix,preIn
,basic_bussiness_type.prefix,basic_bustype_local.prefix localPrefix,preIn,supplementAll
FROM basic_bustype_local
LEFT JOIN basic_bussiness_type on basic_bussiness_type.localAction = basic_bustype_local.action
<where>
@ -145,11 +149,22 @@
<insert id="insertBussinessType" keyProperty="id"
parameterType="com.glxp.sale.admin.entity.basic.BussinessLocalTypeEntity">
replace INTO basic_bustype_local
(action, name, remark, originAction, advanceType, changeEnable, spUse,updateTime,prefix,preIn)
values (#{action},
replace
INTO basic_bustype_local
(action, name, remark, originAction, advanceType, changeEnable, spUse,updateTime,prefix,preIn,supplementAll)
values (
#{action},
#{name},
#{remark}, #{originAction}, #{advanceType}, #{changeEnable}, #{spUse},#{updateTime},#{prefix},#{preIn})
#{remark},
#{originAction},
#{advanceType},
#{changeEnable},
#{spUse},
#{updateTime},
#{prefix},
#{preIn},
#{supplementAll}
)
</insert>
<update id="updateBusLocalType" parameterType="com.glxp.sale.admin.entity.basic.BussinessLocalTypeEntity">
@ -165,6 +180,7 @@
<if test="updateTime != null">updateTime = #{updateTime},</if>
<if test="prefix != null">prefix = #{prefix},</if>
<if test="preIn != null">preIn = #{preIn},</if>
<if test="supplementAll != null">supplementAll = #{supplementAll},</if>
</trim>
WHERE id = #{id}

@ -19,7 +19,7 @@
basic_bustype_local.spUse,corpType,basic_bussiness_type.storageCode,basic_bussiness_type.checkBalacne,
basic_bussiness_type.secCheckBalacne, defaultUnit,basic_bustype_origin.action
thirdAction,basic_bustype_origin.thirdSys,basic_bussiness_type.useDyCount,basic_bussiness_type.expireTip,basic_bussiness_type.prefix,basic_bustype_local.prefix
localPrefix,basic_bustype_local.preIn,basic_bussiness_type.defaultSubInv,basic_bussiness_type.defaultInv
localPrefix,basic_bustype_local.preIn,basic_bussiness_type.defaultSubInv,basic_bussiness_type.defaultInv,orderVisibleType,supplementAll
FROM basic_bussiness_type LEFT JOIN basic_bustype_local
on basic_bussiness_type.localAction = basic_bustype_local.action
left join basic_bustype_origin on basic_bustype_local.originAction = basic_bustype_origin.action
@ -83,7 +83,7 @@
basic_bustype_local.name localName,basic_bussiness_type.checkEnable, basic_bustype_local.advanceType,
basic_bustype_local.changeEnable,basic_bussiness_type.genUnit,basic_bussiness_type.innerOrder,defaultUnit,
basic_bustype_local.spUse,basic_bussiness_type.storageCode,basic_bussiness_type.expireTip,
basic_bustype_local.prefix localPrefix ,basic_bustype_local.preIn from
basic_bustype_local.prefix localPrefix ,basic_bustype_local.preIn,orderVisibleType,supplementAll from
basic_bussiness_type LEFT JOIN
basic_third_sys on basic_bussiness_type.thirdSysFk =
basic_third_sys.thirdId LEFT JOIN basic_bustype_local on basic_bussiness_type.localAction =
@ -133,7 +133,7 @@
basic_bustype_local.spUse,corpType,basic_bussiness_type.storageCode,basic_bussiness_type.checkBalacne,defaultUnit,
basic_bussiness_type.secCheckBalacne,basic_bustype_origin.action
thirdAction,basic_bustype_origin.thirdSys,useDyCount,basic_bussiness_type.expireTip,basic_bussiness_type.prefix,basic_bustype_local.prefix
localPrefix,basic_bustype_local.preIn,basic_bussiness_type.defaultSubInv,basic_bussiness_type.defaultInv
localPrefix,basic_bustype_local.preIn,basic_bussiness_type.defaultSubInv,basic_bussiness_type.defaultInv,orderVisibleType,supplementAll
FROM basic_bussiness_type LEFT JOIN basic_bustype_local
on basic_bussiness_type.localAction = basic_bustype_local.action
left join basic_bustype_origin on basic_bustype_local.originAction = basic_bustype_origin.action
@ -187,7 +187,7 @@
,secCheckUdims,secCheckPdaEd,secCheckPdaUn,secCheckPc,secCheckWebNew,
secCheckChange,corpType,basic_bussiness_type.storageCode,checkBalacne,
secCheckBalacne,supplementOrderType,defaultUnit,useDyCount,expireTip,updateTime,prefix
,ullageFill,scanPreIn,vailInv,codeFillCheck,defaultSubInv,defaultInv)
,ullageFill,scanPreIn,vailInv,codeFillCheck,defaultSubInv,defaultInv,orderVisibleType)
values
(
#{action},
@ -225,7 +225,7 @@
#{prefix},
#{ullageFill},
#{scanPreIn},
#{vailInv},#{codeFillCheck},#{defaultSubInv},#{defaultInv}
#{vailInv},#{codeFillCheck},#{defaultSubInv},#{defaultInv},#{orderVisibleType}
)
</insert>
@ -240,7 +240,7 @@
checkUdims,checkPdaEd,checkPdaUn,checkPc,checkWebNew,checkChange
,secCheckUdims,secCheckPdaEd,secCheckPdaUn,secCheckPc,secCheckWebNew,
secCheckChange,corpType,storageCode,checkBalacne,secCheckBalacne,supplementOrderType,defaultUnit,useDyCount,expireTip,updateTime,prefix
,ullageFill,scanPreIn,vailInv,codeFillCheck,defaultSubInv,defaultInv)
,ullageFill,scanPreIn,vailInv,codeFillCheck,defaultSubInv,defaultInv,orderVisibleType)
values
(
#{index},
@ -279,7 +279,7 @@
#{prefix},
#{ullageFill},
#{scanPreIn},
#{vailInv},#{codeFillCheck},#{defaultSubInv},#{defaultInv}
#{vailInv},#{codeFillCheck},#{defaultSubInv},#{defaultInv},#{orderVisibleType}
)
</insert>
@ -326,6 +326,7 @@
<if test="codeFillCheck != null">codeFillCheck=#{codeFillCheck},</if>
<if test="defaultSubInv != null">defaultSubInv=#{defaultSubInv},</if>
<if test="defaultInv != null">defaultInv=#{defaultInv},</if>
<if test="orderVisibleType != null">orderVisibleType=#{orderVisibleType},</if>
thirdSysFk=#{thirdSysFk},
</trim>

@ -303,7 +303,7 @@
select io_codes.code udiCode,basic_udirel.id productId,basic_products.cpmctymc productName,basic_products.ggxh
spec,io_codes.batchNo,io_codes.produceDate productDate,io_codes.expireDate ,io_codes.serialNo,io_codes.count,
basic_products.ylqxzcrbarmc,basic_udirel.manufactory,basic_udirel.measname,basic_products.zczbhhzbapzbh,
inv_warehouse.name locInv,basic_products.spmc, basic_products.cpms
inv_warehouse.name locInv,basic_products.spmc, basic_products.cpms,io_codes.nameCode,io_codes.relId
from io_codes
INNER JOIN basic_udirel on io_codes.relId = basic_udirel.id
INNER JOIN basic_products on basic_products.uuid = basic_udirel.uuid
@ -318,20 +318,17 @@
</select>
<select id="selectSupplementOrderList" resultType="com.glxp.sale.admin.entity.inout.StockOrderEntity">
SELECT
billNo, orderIdFk, `status`
FROM
stock_order
WHERE
( supplementNo IS NULL OR supplementNo = '' )
SELECT billNo,
orderIdFk,
`status`
FROM stock_order
WHERE (supplementNo IS NULL OR supplementNo = '')
AND billType IN (
SELECT
localAction
FROM
basic_bussiness_type
WHERE
supplementOrderType IS NOT NULL
OR supplementOrderType != '')
SELECT localAction
FROM basic_bussiness_type
WHERE supplementOrderType IS NOT NULL
OR supplementOrderType
!= '')
</select>
<select id="selectById" resultType="com.glxp.sale.admin.entity.inout.StockOrderEntity">

@ -59,8 +59,8 @@
<foreach collection="thrInvWarehouseEntitys" item="item" index="index"
separator=",">
(
#{id}, #{item.code},
#{item.name}, #{parentId}
#{item.id}, #{item.code},
#{item.name}, #{item.parentId},
#{item.remark}, #{item.thirdSysFk})
</foreach>
</insert>
@ -71,6 +71,13 @@
WHERE id = #{id}
</delete>
<delete id="deleteByParentId" parameterType="Map">
DELETE
FROM thr_inv_warehouse_sub
WHERE parentId = #{parentId}
</delete>
<update id="updateThrInvWarehouse" parameterType="com.glxp.sale.admin.entity.thrsys.ThrSubInvWarehouseEntity">
UPDATE thr_inv_warehouse_sub
<trim prefix="set" suffixOverrides=",">

Loading…
Cancel
Save