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

pro
1178634255 2 years ago
commit 7979d561ca

@ -8,7 +8,7 @@ import lombok.Getter;
@Getter
public enum ResultEnum {
SUCCESS(0, "success"),
SUCCESS(20000, "success"),
NOT_NETWORK(1, "系统繁忙,请稍后再试。"),
LOGIN_VERIFY_FALL(2, "登录失效"),
PARAM_VERIFY_FALL(3, "参数验证错误"),

@ -21,7 +21,7 @@ public class ResultVOUtils {
*/
public static BaseResponse success(Object data) {
BaseResponse<Object> baseResponse = new BaseResponse<>();
baseResponse.setCode(20000);
baseResponse.setCode(ResultEnum.SUCCESS.getCode());
baseResponse.setMessage("success");
baseResponse.setData(data);
return baseResponse;

@ -1,9 +1,10 @@
package com.glxp.api.config;
import org.springframework.beans.factory.annotation.Value;
import com.glxp.api.common.enums.ResultEnum;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Profile;
import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
@ -11,13 +12,11 @@ import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2WebMvc;
@Profile({"dev","test"})
@Configuration
@EnableSwagger2WebMvc
public class Knife4jConfiguration {
@Value("${knife4j.enable:false}")
private boolean enable;
@Bean(value = "defaultApi2")
public Docket defaultApi2() {
Docket docket = new Docket(DocumentationType.SWAGGER_2)
@ -26,7 +25,6 @@ public class Knife4jConfiguration {
.description("UDI管理系统后台 - APIS")
.version("1.0")
.build())
.enable(enable)
.select()
//这里指定Controller扫描包路径
.apis(RequestHandlerSelectors.basePackage("com.glxp.api.controller"))

@ -409,7 +409,7 @@ public class BasicBussinessTypeController extends BaseController {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
}
bussinessTypeFilterRequest.setEnable(true);
bussinessTypeFilterRequest.setMainAction(ConstantType.TYPE_PUT);
//bussinessTypeFilterRequest.setMainAction(ConstantType.TYPE_PUT);
List<BasicBussinessTypeResponse> bussinessTypeEntities;
bussinessTypeEntities = basicBussinessTypeService.filterList(bussinessTypeFilterRequest);
PageSimpleResponse<BasicBussinessTypeResponse> pageSimpleResponse = new PageSimpleResponse<>();

@ -1219,10 +1219,25 @@ public class IoCodeTempController extends BaseController {
}
}
if (codeTempEntity.getMyCount() <= 0) {
return ResultVOUtils.error(500, "数量不能小于0");
return ResultVOUtils.error(500, "数量需要大于0");
}
IoCodeTempEntity tempEntity = codeTempService.selectById(codeTempEntity.getId());
codeTempEntity.setReCount(codeTempEntity.getMyCount() * udiCalCountUtil.getActCount(codeTempEntity.getNameCode()));
int count = tempEntity.getCount() - codeTempEntity.getCount();
//更新扫码详情
IoOrderDetailCodeEntity orderDetailCodeEntity = ioOrderDetailCodeService.findByUnique(codeTempEntity.getOrderId(), codeTempEntity.getRelId(), codeTempEntity.getBatchNo());
if (orderDetailCodeEntity != null) {
//扫码数量-1
int orderCount = orderDetailCodeEntity.getCount();
orderDetailCodeEntity.setCount(orderCount - count);
orderDetailCodeEntity.setReCount(orderDetailCodeEntity.getCount() * udiCalCountUtil.getActCount(codeTempEntity.getNameCode()));
ioOrderDetailCodeService.update(orderDetailCodeEntity);
}
int b = codeTempService.updateById(codeTempEntity);
if (b > 0)
return ResultVOUtils.success("修改成功");
else return ResultVOUtils.error(500, "修改失败!");

@ -427,6 +427,9 @@ public class IoOrderDetailBizController extends BaseController {
purOrderEntity = purOrderService.selectById(purOrderEntity.getId());
List<PurOrderDetailEntity> purOrderDetailEntities = purOrderDetailService.findByOrderId(purOrderEntity.getId() + "");
BasicBusTypeChangeEntity basicBusTypeChangeEntity = basicBusTypeChangeService.selectByOriginAction(purOrderEntity.getBillType());
if (basicBusTypeChangeEntity == null) {
return ResultVOUtils.error(500, "采购订单未配置转换单据类型!");
}
BasicBussinessTypeEntity bussinessTypeEntity = basicBussinessTypeService.findByAction(basicBusTypeChangeEntity.getTargetAction());
AuthAdmin authAdmin = getUser();
@ -588,11 +591,30 @@ public class IoOrderDetailBizController extends BaseController {
@PostMapping("/udiwms/inout/biz/updateById")
@Log(title = "发票管理", businessType = BusinessType.UPDATE)
public BaseResponse deleteById(@RequestBody IoOrderInvoiceRequest ioOrderInvoiceRequest) {
IoOrderEntity orderEntity = orderService.findByBillNo(ioOrderInvoiceRequest.getOrderIdFk());
if (orderEntity != null) {
orderEntity.setUpdateTime(new Date());
orderService.update(orderEntity);
}
return ResultVOUtils.success(ioOrderInvoiceService.updateByInvId(ioOrderInvoiceRequest));
}
@PostMapping("/udiwms/inout/bizDetail/updateById")
@Log(title = "发票管理", businessType = BusinessType.UPDATE)
public BaseResponse updateBizById(@RequestBody IoOrderDetailBizEntity ioOrderDetailBizEntity) {
IoOrderEntity orderEntity = orderService.findByBillNo(ioOrderDetailBizEntity.getOrderIdFk());
if (orderEntity != null) {
orderEntity.setUpdateTime(new Date());
orderService.update(orderEntity);
}
ioOrderDetailBizEntity.setCheckFileName(ioOrderDetailBizEntity.getFilePath());
ioOrderDetailBizEntity.setCheckColdFileName(ioOrderDetailBizEntity.getColdFilePath());
boolean b = orderDetailBizService.updateOrderDetailBiz(ioOrderDetailBizEntity);
return ResultVOUtils.success("修改成功!");
}
@PostMapping("/udiwms/inout/biz/insertInvoice")
@Log(title = "发票管理", businessType = BusinessType.INSERT)

@ -2,30 +2,49 @@ package com.glxp.api.controller.inout;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSON;
import com.github.pagehelper.PageInfo;
import com.glxp.api.annotation.AuthRuleAnnotation;
import com.glxp.api.common.enums.ResultEnum;
import com.glxp.api.common.res.BaseResponse;
import com.glxp.api.common.util.ResultVOUtils;
import com.glxp.api.constant.ConstantType;
import com.glxp.api.constant.FileConstant;
import com.glxp.api.controller.BaseController;
import com.glxp.api.entity.basic.BasicBussinessTypeEntity;
import com.glxp.api.entity.inout.IoOrderDetailBizEntity;
import com.glxp.api.entity.inout.IoOrderDetailCodeEntity;
import com.glxp.api.entity.inout.IoOrderEntity;
import com.glxp.api.req.inout.FilterCodeRequest;
import com.glxp.api.req.inout.FilterOrderDetailResultRequest;
import com.glxp.api.req.inout.FilterOrderRequest;
import com.glxp.api.entity.system.SysPdfTemplateRelevanceCodeEntity;
import com.glxp.api.entity.system.SysPdfTemplateRelevanceStatemenEntity;
import com.glxp.api.entity.system.SystemPDFTemplateEntity;
import com.glxp.api.req.basic.FilterOrderPrintRequest;
import com.glxp.api.req.inout.*;
import com.glxp.api.req.purchase.purPlanPrintRequest;
import com.glxp.api.res.inout.IoCodeResponse;
import com.glxp.api.res.inout.IoOrderDetailResultResponse;
import com.glxp.api.service.basic.IBasicBussinessTypeService;
import com.glxp.api.service.inout.*;
import com.glxp.api.service.system.SystemPDFModuleService;
import com.glxp.api.service.system.SystemPDFTemplateService;
import com.glxp.api.util.JasperUtils;
import net.sf.jasperreports.engine.JRException;
import org.springframework.beans.factory.annotation.Value;
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 javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
*
@ -40,6 +59,12 @@ public class IoOrderDetailResultController extends BaseController {
IBasicBussinessTypeService basicBussinessTypeService;
@Resource
IoCodeService codeService;
@Resource
private SystemPDFTemplateService systemPDFTemplateService;
@Resource
private SystemPDFModuleService systemPDFModuleService;
@Value("${file_path}")
private String filePath;
/**
*
@ -135,5 +160,97 @@ public class IoOrderDetailResultController extends BaseController {
return ResultVOUtils.success(orderDetailBizEntities);
}
//校验模板是否正确
@AuthRuleAnnotation("")
@PostMapping("/udiwms/pdf/template/order/result/file")
public BaseResponse inspectionStockOrderPDFFromTemplateFile(@RequestBody InspectionPDFTemplateRequest inspectionPDFTemplateRequest) {
//查询模板文件是否存在
SysPdfTemplateRelevanceStatemenEntity sysPdfTemplateRelevanceStatemenEntity = systemPDFModuleService.selectByStatemenId(inspectionPDFTemplateRequest.getId());
if (null == sysPdfTemplateRelevanceStatemenEntity) {
return ResultVOUtils.error(ResultEnum.DATA_NOT, "所属模块错误");
}
SystemPDFTemplateEntity systemPDFTemplateEntity = systemPDFTemplateService.selectById(String.valueOf(sysPdfTemplateRelevanceStatemenEntity.getTemplateId()));
if (null == systemPDFTemplateEntity) {
return ResultVOUtils.error(ResultEnum.DATA_NOT, "模板错误");
}
return ResultVOUtils.success(sysPdfTemplateRelevanceStatemenEntity.getTemplateId());
}
/**
*
*
* @param filterOrderDetailResultRequest
* @return
*/
@AuthRuleAnnotation("")
@PostMapping("/udiwms/inout/resultDetail/filterOrderPrint")
public BaseResponse filterOrderPrint(@RequestBody FilterOrderDetailResultRequest filterOrderDetailResultRequest, HttpServletRequest request, HttpServletResponse response) throws JRException, IOException {
List<IoOrderDetailResultResponse> ioOrderDetailResultResponseList=new ArrayList<>();
SystemPDFTemplateEntity systemPDFTemplateEntity = systemPDFTemplateService.selectById(filterOrderDetailResultRequest.getTemplateId());
//打印单号标签
Map<String, Object> data = new HashMap<>(1);
List<Object> list = new ArrayList<>();
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");//定义新的日期格式
//按选入打印
if(filterOrderDetailResultRequest.getList() != null && filterOrderDetailResultRequest.getList().size()>0){
ioOrderDetailResultResponseList =filterOrderDetailResultRequest.getList();
}else{
//按查询打印
FilterOrderRequest filterOrderRequest = new FilterOrderRequest();
filterOrderRequest.setVueType(filterOrderDetailResultRequest.getActionType());
List<String> actions = orderService.setActions(filterOrderRequest);
if (CollUtil.isEmpty(actions)) {
return ResultVOUtils.success("");
}
filterOrderDetailResultRequest.setActions(actions);
ioOrderDetailResultResponseList = orderDetailResultService.filterOrderList(filterOrderDetailResultRequest);
for (IoOrderDetailResultResponse orderDetailResultResponse : ioOrderDetailResultResponseList) {
if (orderDetailResultResponse.getMainAction().equals(ConstantType.TYPE_OUT)) {
orderDetailResultResponse.setOutCount(orderDetailResultResponse.getReCount());
orderDetailResultResponse.setInCount(0);
} else {
orderDetailResultResponse.setOutCount(0);
orderDetailResultResponse.setInCount(orderDetailResultResponse.getReCount());
}
}
}
int i=1;
for (IoOrderDetailResultResponse ioOrderDetailResultResponse : ioOrderDetailResultResponseList) {
//组装数据
Map<String, Object> ioOrderDetailResultData = new HashMap<>();
ioOrderDetailResultData.put("index", String.valueOf(i));
ioOrderDetailResultData.put("nameCode", ioOrderDetailResultResponse.getNameCode() == null ? ' ' : ioOrderDetailResultResponse.getNameCode());
ioOrderDetailResultData.put("batchNo", ioOrderDetailResultResponse.getBatchNo() == null ? ' ' : ioOrderDetailResultResponse.getBatchNo());
ioOrderDetailResultData.put("productDate", ioOrderDetailResultResponse.getProductDate() == null ? ' ' : ioOrderDetailResultResponse.getProductDate());
ioOrderDetailResultData.put("expireDate", ioOrderDetailResultResponse.getExpireDate() == null ? ' ' : ioOrderDetailResultResponse.getExpireDate());
ioOrderDetailResultData.put("coName", ioOrderDetailResultResponse.getCoName() == null ? ' ' : ioOrderDetailResultResponse.getCoName());
ioOrderDetailResultData.put("certCode", ioOrderDetailResultResponse.getCertCode() == null ? ' ' : ioOrderDetailResultResponse.getCertCode());
ioOrderDetailResultData.put("ylqxzcrbarmc", ioOrderDetailResultResponse.getYlqxzcrbarmc() == null ? ' ' : ioOrderDetailResultResponse.getYlqxzcrbarmc());
ioOrderDetailResultData.put("manufacturer", ioOrderDetailResultResponse.getManufacturer() == null ? ' ' : ioOrderDetailResultResponse.getManufacturer());
ioOrderDetailResultData.put("measname", ioOrderDetailResultResponse.getMeasname() == null ? ' ' : ioOrderDetailResultResponse.getMeasname());
ioOrderDetailResultData.put("spec", ioOrderDetailResultResponse.getSpec() == null ? ' ' : ioOrderDetailResultResponse.getSpec());
ioOrderDetailResultData.put("price", ioOrderDetailResultResponse.getPrice() == null ? ' ' : ioOrderDetailResultResponse.getPrice());
ioOrderDetailResultData.put("count", ioOrderDetailResultResponse.getCount());
ioOrderDetailResultData.put("reCount",ioOrderDetailResultResponse.getReCount());
ioOrderDetailResultData.put("inCount", ioOrderDetailResultResponse.getInCount());
ioOrderDetailResultData.put("acceptCount", ioOrderDetailResultResponse.getAcceptCount());
ioOrderDetailResultData.put("fromCorpName", ioOrderDetailResultResponse.getFromCorpName() == null ? ' ' : ioOrderDetailResultResponse.getFromCorpName());
ioOrderDetailResultData.put("billTypeName", ioOrderDetailResultResponse.getBillTypeName() == null ? ' ' : ioOrderDetailResultResponse.getBillTypeName());
ioOrderDetailResultData.put("mainAction", ioOrderDetailResultResponse.getMainAction() == null ? ' ' : ioOrderDetailResultResponse.getMainAction());
ioOrderDetailResultData.put("auditTime", ioOrderDetailResultResponse.getAuditTime() == null ? ' ' : formatter.format(ioOrderDetailResultResponse.getAuditTime()));
list.add(ioOrderDetailResultData);
i++;
}
String param = JSON.toJSONString(list);
JasperUtils.jasperReport(request, response, param, filePath+"pdf/template/"+systemPDFTemplateEntity.getPath(), "pdf");
return ResultVOUtils.success();
}
}

@ -39,7 +39,7 @@ public class IoOrderInvoiceController {
@AuthRuleAnnotation("")
@PostMapping("/udiwms/inout/order/refrshInvoice")
@Log(title = "发票", businessType = BusinessType.INSERT)
public BaseResponse addBizProduct(@RequestBody RefreshInoiceRequest refreshInoiceRequest) {
public BaseResponse refrshInvoice(@RequestBody RefreshInoiceRequest refreshInoiceRequest) {
BaseResponse<RefreshInoiceResponse> baseResponse = spGetHttpClient.getIoOrderInvoices(refreshInoiceRequest);
if (baseResponse.getCode() == 20000) {
RefreshInoiceResponse refreshInoiceResponse = baseResponse.getData();

@ -36,10 +36,7 @@ import com.glxp.api.service.basic.IBasicBussinessTypeService;
import com.glxp.api.service.inout.*;
import com.glxp.api.service.sync.HeartService;
import com.glxp.api.service.system.SystemParamConfigService;
import com.glxp.api.util.CustomUtil;
import com.glxp.api.util.GennerOrderUtils;
import com.glxp.api.util.OrderNoTypeBean;
import com.glxp.api.util.RedisUtil;
import com.glxp.api.util.*;
import com.glxp.api.util.udi.UdiCalCountUtil;
import lombok.extern.slf4j.Slf4j;
import org.springframework.validation.BindingResult;
@ -354,11 +351,11 @@ public class IoOrderReviewController extends BaseController {
for (IoCodeEntity checkOrderCodesBean : codesList) {
if (checkOrderCodesBean.getCode().toUpperCase(Locale.ROOT).equals(code.toUpperCase(Locale.ROOT))) {
if (checkOrderCodesBean.getStatus() == Constant.DB_CHECK_ED
&& checkOrderCodesBean.getMyCount() == checkOrderCodesBean.getScanCount()) {
&& IntUtil.value(checkOrderCodesBean.getReCount()) == checkOrderCodesBean.getScanCount()) {
return Constant.CHECK_REPEAT;
}
int curCount = checkOrderCodesBean.getScanCount() + calCountUtil.getActCount(checkOrderCodesBean.getNameCode());
if (curCount == checkOrderCodesBean.getMyCount()) {
if (curCount == IntUtil.value(checkOrderCodesBean.getReCount())) {
checkOrderCodesBean.setStatus(Constant.DB_CHECK_ED);
}
checkOrderCodesBean.setScanCount(curCount);

@ -1,5 +1,6 @@
package com.glxp.api.controller.inv;
import com.alibaba.fastjson.JSON;
import com.github.pagehelper.PageInfo;
import com.glxp.api.annotation.AuthRuleAnnotation;
import com.glxp.api.annotation.Log;
@ -12,6 +13,7 @@ import com.glxp.api.entity.inv.InnerOrderEntity;
import com.glxp.api.entity.inv.InvInnerOrderPdfTempEntity;
import com.glxp.api.entity.inv.InvInnerOrderPrintEntity;
import com.glxp.api.entity.system.SysPdfTemplateRelevanceLabelEntity;
import com.glxp.api.entity.system.SysPdfTemplateRelevanceStatemenEntity;
import com.glxp.api.entity.system.SystemPDFTemplateEntity;
import com.glxp.api.req.inout.InspectionPDFTemplateRequest;
import com.glxp.api.req.inv.*;
@ -186,34 +188,34 @@ public class InvInnerOrderPrintController {
} else {
Map<String, Object> data = new HashMap<String, Object>();
data.put("data", printEntities);
JasperUtils.jasperReport(request, response, data, filePath + "/pdf/template/"+systemPDFTemplateEntity.getPath(), "pdf");
JasperUtils.jasperReport(request, response, data, filePath + "/pdf/template/" + systemPDFTemplateEntity.getPath(), "pdf");
}
String orderId="";
String orderId = "";
for (InnerOrderPrintResponse InnerOrderPrintResponse : mStockPrintEntities) {
InvInnerOrderPrintEntity innerOrderPrintEntity = new InvInnerOrderPrintEntity();
innerOrderPrintEntity.setStatus(1);
innerOrderPrintEntity.setId(InnerOrderPrintResponse.getId());
invInnerOrderPrintService.updateOrder(innerOrderPrintEntity);
orderId=InnerOrderPrintResponse.getId()+"";
orderId = InnerOrderPrintResponse.getId() + "";
}
//查询订单id
InvInnerOrderPrintEntity innerOrderPrintEntity=invInnerOrderPrintService.selectById(orderId);
InvInnerOrderPrintEntity innerOrderPrintEntity = invInnerOrderPrintService.selectById(orderId);
//更新内部码状态
InnerOrderEntity innerOrderEntity=innerOrderService.findByRecordKey(innerOrderPrintEntity.getOrderIdFk());
if(innerOrderEntity!=null){
InnerOrderEntity innerOrderEntity = innerOrderService.findByRecordKey(innerOrderPrintEntity.getOrderIdFk());
if (innerOrderEntity != null) {
innerOrderEntity.setGenStatus(2);
innerOrderEntity.setId(innerOrderEntity.getId());
innerOrderService.update(innerOrderEntity);
}
IoOrderEntity ioOrderEntity=new IoOrderEntity();
IoOrderEntity ioOrderEntity = new IoOrderEntity();
ioOrderEntity.setInCodeStatus(1);
ioOrderEntity.setBillNo(innerOrderPrintEntity.getOrderIdFk());
ioOrderService.updateByBillNo(ioOrderEntity);
@ -221,6 +223,95 @@ public class InvInnerOrderPrintController {
}
//-----------打印码
@AuthRuleAnnotation("")
@PostMapping("/udiwms/pdf/template/inspection/stock/qrcode/text/statement/file")
public BaseResponse inspectionStockQRCodeTextPDFFromTemplateStatementFile(
@RequestBody InspectionPDFTemplateRequest inspectionPDFTemplateRequest) throws Exception {
//查询模板文件是否存在
SysPdfTemplateRelevanceStatemenEntity sysPdfTemplateRelevanceStatemenEntity = systemPDFModuleService.selectByStatemenId(inspectionPDFTemplateRequest.getLabelId()+"");
if (null == sysPdfTemplateRelevanceStatemenEntity) {
return ResultVOUtils.error(ResultEnum.DATA_NOT, "所属模块错误");
}
SystemPDFTemplateEntity systemPDFTemplateEntity = systemPDFTemplateService.selectById(String.valueOf(sysPdfTemplateRelevanceStatemenEntity.getTemplateId()));
if (null == systemPDFTemplateEntity) {
return ResultVOUtils.error(ResultEnum.DATA_NOT, "模板错误");
}
return ResultVOUtils.success(sysPdfTemplateRelevanceStatemenEntity.getTemplateId());
}
@AuthRuleAnnotation("")
@PostMapping("/udiwms/pdf/template/stock/qrcode/text/statement/file")
public BaseResponse stockQRCodeTextPDFFromTemplateStatementFile(
@RequestBody InnerOrderQRCodeTextPDFTemplateRequest stockQRCodeTextPDFTemplateRequest,
HttpServletRequest request, HttpServletResponse response) throws Exception {
SysPdfTemplateRelevanceStatemenEntity sysPdfTemplateRelevanceStatemenEntity = systemPDFModuleService.selectByStatemenId(stockQRCodeTextPDFTemplateRequest.getLabelId()+"");
if (sysPdfTemplateRelevanceStatemenEntity == null) return ResultVOUtils.error(500, "未找到单据模板模块设置,请检查");
SystemPDFTemplateEntity systemPDFTemplateEntity =
systemPDFTemplateService.selectById(String.valueOf(sysPdfTemplateRelevanceStatemenEntity.getTemplateId()));
if (systemPDFTemplateEntity == null) return ResultVOUtils.error(ResultEnum.DATA_NOT, "模板错误");
List<InnerOrderPrintResponse> printEntities = new ArrayList<>();
List<InnerOrderPrintResponse> mStockPrintEntities = new ArrayList<>();
FilterinnerOrderprintRequest filterinnerOrderprintRequest = new FilterinnerOrderprintRequest();
if (stockQRCodeTextPDFTemplateRequest.getOrderId() != null) {
filterinnerOrderprintRequest.setSOrderId(stockQRCodeTextPDFTemplateRequest.getOrderId());
} else {
filterinnerOrderprintRequest.setId(stockQRCodeTextPDFTemplateRequest.getQueryId());
}
List<InnerOrderPrintResponse> stockPrintEntities = invInnerOrderPrintService.filterJoinInnerPrint(filterinnerOrderprintRequest);
if (stockPrintEntities != null && stockPrintEntities.size() > 0) {
mStockPrintEntities.addAll(stockPrintEntities);
}
for (InnerOrderPrintResponse InnerOrderPrintResponse : mStockPrintEntities) {
PdfPrintCountEntity pdfPrintCount = getCount(stockQRCodeTextPDFTemplateRequest.getCountList(), InnerOrderPrintResponse);
if (pdfPrintCount != null && pdfPrintCount.getRowCount() > 0) {
for (int i = 0; i < pdfPrintCount.getRowCount(); i++) {
InnerOrderPrintResponse clone = new InnerOrderPrintResponse();
BeanUtils.copyProperties(InnerOrderPrintResponse, clone);
printEntities.add(clone);
}
} else {
printEntities.add(InnerOrderPrintResponse);
}
}
String param = JSON.toJSONString(printEntities);
JasperUtils.jasperReport(request, response, param, filePath + "/pdf/template/" + systemPDFTemplateEntity.getPath(), "pdf");
String orderId = "";
for (InnerOrderPrintResponse InnerOrderPrintResponse : mStockPrintEntities) {
InvInnerOrderPrintEntity innerOrderPrintEntity = new InvInnerOrderPrintEntity();
innerOrderPrintEntity.setStatus(1);
innerOrderPrintEntity.setId(InnerOrderPrintResponse.getId());
invInnerOrderPrintService.updateOrder(innerOrderPrintEntity);
orderId = InnerOrderPrintResponse.getId() + "";
}
//查询订单id
InvInnerOrderPrintEntity innerOrderPrintEntity = invInnerOrderPrintService.selectById(orderId);
//更新内部码状态
InnerOrderEntity innerOrderEntity = innerOrderService.findByRecordKey(innerOrderPrintEntity.getOrderIdFk());
if (innerOrderEntity != null) {
innerOrderEntity.setGenStatus(2);
innerOrderEntity.setId(innerOrderEntity.getId());
innerOrderService.update(innerOrderEntity);
}
IoOrderEntity ioOrderEntity = new IoOrderEntity();
ioOrderEntity.setInCodeStatus(1);
ioOrderEntity.setBillNo(innerOrderPrintEntity.getOrderIdFk());
ioOrderService.updateByBillNo(ioOrderEntity);
return null;
}
public PdfPrintCountEntity getCount(List<PdfPrintCountEntity> countList, InnerOrderPrintResponse InnerOrderPrintResponse) {
for (PdfPrintCountEntity pdfPrintCount : countList) {
if (pdfPrintCount.getQueryId().equals(InnerOrderPrintResponse.getId() + "")) {

@ -0,0 +1,55 @@
package com.glxp.api.controller.inv;
import cn.hutool.core.util.StrUtil;
import com.glxp.api.annotation.Log;
import com.glxp.api.common.enums.ResultEnum;
import com.glxp.api.common.res.BaseResponse;
import com.glxp.api.common.util.ResultVOUtils;
import com.glxp.api.constant.BusinessType;
import com.glxp.api.controller.BaseController;
import com.glxp.api.entity.inv.InvProductDetailEntity;
import com.glxp.api.entity.inv.InvProductEntity;
import com.glxp.api.entity.inv.InvUserProductEntity;
import com.glxp.api.req.inv.FilterInvProductDetailRequest;
import com.glxp.api.req.system.DeleteRequest;
import com.glxp.api.service.inv.InvProductDetailService;
import com.glxp.api.service.inv.InvUserProductService;
import groovy.util.logging.Slf4j;
import org.springframework.validation.BindingResult;
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;
/**
*
*/
@Slf4j
@RestController
public class InvUserProductController extends BaseController {
@Resource
private InvUserProductService invUserProductService;
@Resource
private InvProductDetailService invProductDetailServicel;
// /**
// * 添加库存
// *
// * @param invUserProductEntity
// * @return
// */
// @PostMapping("/spms/inv/user/product/add")
// @Log(title = "用户库存查询", businessType = BusinessType.INSERT)
// public BaseResponse addInvUserProduct(@RequestBody InvUserProductEntity invUserProductEntity) {
//
// invUserProductService.
//
//
// }
}

@ -0,0 +1,17 @@
package com.glxp.api.controller.inv;
import com.glxp.api.controller.BaseController;
import groovy.util.logging.Slf4j;
import org.springframework.web.bind.annotation.RestController;
/**
*
*/
@Slf4j
@RestController
public class InvUserProductDetailController{
}

@ -26,6 +26,7 @@ import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import javax.validation.Valid;
import java.util.Comparator;
import java.util.List;
import java.util.stream.Collectors;
@ -186,6 +187,8 @@ public class SysParamConfigController {
filterParamConfigRequest.setParamType(2);
filterParamConfigRequest.setParamStatus(1);
List<SystemParamConfigEntity> systemParamConfigEntities = systemParamConfigService.queryPage(filterParamConfigRequest);
systemParamConfigEntities = systemParamConfigEntities.stream().sorted(Comparator.comparing(SystemParamConfigEntity::getParamKey))
.collect(Collectors.toList());
ProductRemarkSetEntity productRemarkSetEntity = new ProductRemarkSetEntity();
if (CollUtil.isNotEmpty(systemParamConfigEntities) && systemParamConfigEntities.size() == 8) {

@ -0,0 +1,9 @@
package com.glxp.api.dao.inout;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.glxp.api.entity.inout.IoOrderMutiEntity;
import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface IoOrderMutiMapper extends BaseMapper<IoOrderMutiEntity> {
}

@ -0,0 +1,9 @@
package com.glxp.api.dao.inout;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.glxp.api.entity.inout.IoOrderMutiSetEntity;
import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface IoOrderMutiSetMapper extends BaseMapper<IoOrderMutiSetEntity> {
}

@ -0,0 +1,9 @@
package com.glxp.api.dao.inout;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.glxp.api.entity.inout.IoOrderMutiUseEntity;
import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface IoOrderMutiUseMapper extends BaseMapper<IoOrderMutiUseEntity> {
}

@ -0,0 +1,15 @@
package com.glxp.api.dao.inv;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.glxp.api.entity.inv.InvUserProductEntity;
/**
* @author Lenovo
* @description inv_user_product()Mapper
* @createDate 2023-05-12 10:19:43
*/
public interface InvUserProductDao extends BaseMapper<InvUserProductEntity> {
}

@ -0,0 +1,16 @@
package com.glxp.api.dao.inv;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.glxp.api.dao.BaseMapperPlus;
import com.glxp.api.entity.inv.InvUserProductDetailEntity;
/**
* @author Lenovo
* @description inv_user_product_detail()Mapper
* @createDate 2023-05-12 10:19:43
*/
public interface InvUserProductDetailDao extends BaseMapperPlus<InvUserProductDetailDao,InvUserProductDetailEntity,InvUserProductDetailEntity> {
}

@ -179,12 +179,21 @@ public class IoOrderDetailBizEntity {
@TableField(value = "filePath")
private String filePath;
@TableField(value = "coldFilePath")
private String coldFilePath;
/**
*
*/
@TableField(value = "checkFileName")
private String checkFileName;
/**
*
*/
@TableField(value = "checkColdFileName")
private String checkColdFileName;
@TableField(exist = false)
private boolean checkSuccess;

@ -0,0 +1,139 @@
package com.glxp.api.entity.inout;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.util.Date;
import lombok.Data;
@Data
@TableName(value = "io_order_muti")
public class IoOrderMutiEntity {
@TableId(value = "id", type = IdType.INPUT)
private Long id;
/**
*
*/
@TableField(value = "orderIdFk")
private String orderIdFk;
/**
* udi
*/
@TableField(value = "udiCode")
private String udiCode;
/**
* ID
*/
@TableField(value = "relIdFk")
private String relIdFk;
/**
*
*/
@TableField(value = "mark")
private String mark;
/**
* 使
*/
@TableField(value = "totalCount")
private Integer totalCount;
/**
* 使
*/
@TableField(value = "useCount")
private Integer useCount;
/**
* 使
*/
@TableField(value = "reCount")
private Integer reCount;
/**
*
*/
@TableField(value = "createTime")
private Date createTime;
/**
*
*/
@TableField(value = "updateTime")
private Date updateTime;
/**
*
*/
@TableField(value = "`createUser`")
private String createUser;
/**
*
*/
@TableField(value = "updateUser")
private String updateUser;
/**
*
*/
@TableField(value = "reamrk")
private String reamrk;
/**
* DI
*/
@TableField(value = "nameCode")
private String nameCode;
/**
*
*/
@TableField(value = "batchNo")
private String batchNo;
/**
*
*/
@TableField(value = "produceDate")
private String produceDate;
/**
*
*/
@TableField(value = "expireDate")
private String expireDate;
/**
*
*/
@TableField(value = "serialNo")
private String serialNo;
/**
* ID
*/
@TableField(value = "supId")
private String supId;
/**
*
*/
@TableField(value = "auditUser")
private String auditUser;
/**
*
*/
@TableField(value = "auditTime")
private Date auditTime;
}

@ -0,0 +1,30 @@
package com.glxp.api.entity.inout;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.util.Date;
import lombok.Data;
@Data
@TableName(value = "io_order_muti_set")
public class IoOrderMutiSetEntity {
@TableId(value = "id", type = IdType.INPUT)
private Long id;
@TableField(value = "curInv")
private String curInv;
@TableField(value = "fromCorp")
private String fromCorp;
@TableField(value = "targetAction")
private String targetAction;
@TableField(value = "remark")
private String remark;
@TableField(value = "updateTime")
private Date updateTime;
}

@ -0,0 +1,60 @@
package com.glxp.api.entity.inout;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.util.Date;
import lombok.Data;
@Data
@TableName(value = "io_order_muti_use")
public class IoOrderMutiUseEntity {
@TableId(value = "id", type = IdType.INPUT)
private Long id;
@TableField(value = "mutiIdFk")
private Long mutiIdFk;
/**
* 使
*/
@TableField(value = "curIndex")
private Integer curIndex;
/**
* 使
*/
@TableField(value = "useUser")
private String useUser;
/**
* 使
*/
@TableField(value = "useTime")
private Date useTime;
/**
*
*/
@TableField(value = "auditUser")
private String auditUser;
/**
*
*/
@TableField(value = "auditTime")
private Date auditTime;
/**
*
*/
@TableField(value = "fromCorp")
private String fromCorp;
/**
*
*/
@TableField(value = "remark")
private String remark;
}

@ -105,4 +105,5 @@ public class InvProductEntity {
@TableField(value = "updateTime")
private Date updateTime;
}

@ -0,0 +1,135 @@
package com.glxp.api.entity.inv;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
*
* @TableName inv_user_product_detail
*/
@TableName(value ="inv_user_product_detail")
@Data
public class InvUserProductDetailEntity {
@TableId(value = "id", type = IdType.AUTO)
private Integer id;
/**
* UDI
*/
@TableField(value = "code")
private String code;
/**
*
*/
@TableField(value = "orderId")
private String orderId;
/**
* ID
*/
@TableField(value = "relId")
private Long relId;
/**
*
*/
@TableField(value = "nameCode")
private String nameCode;
/**
*
*/
@TableField(value = "batchNo")
private String batchNo;
/**
*
*/
@TableField(value = "produceDate")
private String produceDate;
/**
*
*/
@TableField(value = "expireDate")
private String expireDate;
/**
*
*/
@TableField(value = "serialNo")
private String serialNo;
/**
*
*/
@TableField(value = "supId")
private String supId;
/**
*
*/
@TableField(value = "`count`")
private Integer count;
/**
*
*/
@TableField(value = "reCount")
private Integer reCount;
@TableField(value = "inCount")
private Integer inCount;
@TableField(value = "outCount")
private Integer outCount;
/**
*
*/
@TableField(value = "deptCode")
private String deptCode;
/**
*
*/
@TableField(value = "invCode")
private String invCode;
/**
*
*/
@TableField(value = "invSpaceCode")
private String invSpaceCode;
/**
*
*/
@TableField(value = "purchaseType")
private Integer purchaseType;
/**
*
*/
@TableField(value = "updateTime")
private Date updateTime;
@TableField(value = "mainAction")
private String mainAction;
@TableField(value = "action")
private String action;
}

@ -0,0 +1,152 @@
package com.glxp.api.entity.inv;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
*
* @TableName inv_user_product
*/
@TableName(value ="inv_user_product")
@Data
public class InvUserProductEntity {
@TableId(value = "id", type = IdType.AUTO)
private Integer id;
/**
* ID
*/
@TableField(value = "relIdFk")
private Long relIdFk;
/**
*
*/
@TableField(value = "nameCode")
private String nameCode;
/**
*
*/
@TableField(value = "batchNo")
private String batchNo;
/**
*
*/
@TableField(value = "productionDate")
private String productionDate;
/**
*
*/
@TableField(value = "expireDate")
private String expireDate;
/**
*
*/
@TableField(value = "inCount")
private Integer inCount;
/**
*
*/
@TableField(value = "outCount")
private int outCount;
/**
*
*/
@TableField(value = "reCount")
private int reCount;
/**
* ID
*/
@TableField(value = "customerId")
private String customerId;
/**
* ID
*/
@TableField(value = "supId")
private String supId;
/**
*
*/
@TableField(value = "deptCode")
private String deptCode;
/**
*
*/
@TableField(value = "invCode")
private String invCode;
/**
*
*/
@TableField(value = "invSpaceCode")
private String invSpaceCode;
/**
*
*/
@TableField(value = "createTime")
private Date createTime;
/**
*
*/
@TableField(value = "updateTime")
private Date updateTime;
/**
*
*/
private Integer nowStock;
/**
*
*/
private Integer frozenCount;
/**
*
*/
private Integer planInCount;
/**
*
*/
private Integer planOutCount;
/**
*
*/
private Integer onWayCount;
/**
*
*/
private Integer availableStock;
@TableField(value = "type")
private Integer type;
@TableField(value = "userId")
private String userId;
}

@ -132,6 +132,9 @@ public class PurOrderEntity {
@TableField(value = "emergency")
private Integer emergency;
@TableField(value = "supId")
private String supId;
/**
*
*/

@ -1,5 +1,6 @@
package com.glxp.api.req.inout;
import com.glxp.api.res.inout.IoOrderDetailResultResponse;
import com.glxp.api.util.page.ListPageRequest;
import lombok.Data;
@ -45,5 +46,7 @@ public class FilterOrderDetailResultRequest extends ListPageRequest {
private String actionType;
private String manufacturer;
private String zczbhhzbapzbh;
private String templateId;
private List<String> actions;
private List<IoOrderDetailResultResponse> list;
}

@ -167,6 +167,11 @@ public class IoOrderDetailBizResponse {
private boolean regStatus;
private String coldFilePath;
private String checkColdFileName;

@ -108,4 +108,9 @@ public class InvProductResponse {
*/
private String invCode;
// 货位编号
private String invSpaceCode;
private String code;
}

@ -73,4 +73,6 @@ public class PurOrderResponse {
private String auditUserName;
private Integer emergency;
private Date arrivalTime;
private String supId;
private String supName;
}

@ -313,7 +313,6 @@ public class IoAddInoutService {
List<IoOrderDetailCodeEntity> ioOrderDetailCodeEntities = orderDetailCodeDao.selectList(new QueryWrapper<IoOrderDetailCodeEntity>().select("id", "count", "reCount", "bindRlFk", "batchNo").eq("orderIdFk", orderEntity.getBillNo()));
UdiRelevanceResponse udiRelevanceResponse = udiRelevanceService.selectSupGroupById(codeTempEntity.getRelId(), codeTempEntity.getSupId());
// UdiRelevanceResponse udiRelevanceResponse = udiRelevanceService.selectGroupById(codeTempEntity.getRelId());
if (CollUtil.isEmpty(ioOrderDetailCodeEntities)) {
orderDetailCodeService.insert(buildEntity(orderEntity, codeTempEntity, udiRelevanceResponse));
} else {
@ -388,6 +387,9 @@ public class IoAddInoutService {
supplementCode.setDeptCode(order.getFromDeptCode());
supplementCode.setOrderId(supplementOrderNo);
supplementCode.setAction(supplementType.getAction());
supplementCode.setWarehouseCode(null);
supplementCode.setPreInSpaceCode(null);
supplementCode.setPreSpaceCode(null);
supplementCode.setMainAction(supplementType.getMainAction());
supplementCodes.add(supplementCode);

@ -257,6 +257,11 @@ public class IoChangeInoutService {
codeTempEntities.add(codeTempEntity);
}
codeTempService.insertBatch(codeTempEntities);
// 生成业务单
if (isGenInovice) {
//生成发票信息
List<IoOrderInvoiceEntity> invoiceEntities = ioOrderInvoiceService.findByBillNo(orderEntity.getBillNo());

@ -285,16 +285,20 @@ public class IoCheckInoutService {
if (orderEntity.getFromType() != ConstantStatus.FROM_UDISP) {
orderDetailBizService.deleteByOrderId(orderEntity.getBillNo());
orderDetailResultService.deleteByOrderId(orderEntity.getBillNo());
if (!orderDetailBizService.isExit(orderEntity.getBillNo())) {
orderDetailCodeEntities.forEach(orderDetailCodeEntity ->
{
//生成业务单据
IoOrderDetailBizEntity orderDetailBizEntity = new IoOrderDetailBizEntity();
BeanUtils.copyProperties(orderDetailCodeEntity, orderDetailBizEntity);
orderDetailBizEntity.setCount(orderDetailCodeEntity.getReCount());
orderDetailBizEntity.setId(null);
orderDetailBizService.insert(orderDetailBizEntity);
});
}
orderDetailCodeEntities.forEach(orderDetailCodeEntity ->
{
//生成业务单据
IoOrderDetailBizEntity orderDetailBizEntity = new IoOrderDetailBizEntity();
BeanUtils.copyProperties(orderDetailCodeEntity, orderDetailBizEntity);
orderDetailBizEntity.setCount(orderDetailCodeEntity.getReCount());
orderDetailBizEntity.setId(null);
orderDetailBizService.insert(orderDetailBizEntity);
//生成单据结果
IoOrderDetailResultEntity orderDetailResultEntity = new IoOrderDetailResultEntity();
BeanUtils.copyProperties(orderDetailCodeEntity, orderDetailResultEntity);

@ -52,6 +52,10 @@ public class IoGenInvService {
IoCodeService codeService;
@Resource
IBasicBusTypePreService basicBusTypePreService;
@Resource
InvUserProductService invUserProductService;
@Resource
InvUserProductDetailService invUserProductDetailService;
@Resource
@ -122,6 +126,65 @@ public class IoGenInvService {
}
//生成用户普通库存
public void genNorInvUser(String orderId) {
IoOrderEntity orderEntity = orderService.findByBillNo(orderId);
List<IoOrderDetailResultEntity> orderDetailResultEntities = orderDetailResultService.findByOrderId(orderId);
List<IoCodeEntity> codeEnttities = codeService.findByOrderId(orderId);
//生成库存产品表
for (IoOrderDetailResultEntity orderDetailResultEntity : orderDetailResultEntities) {
InvUserProductEntity invUserProductEntity = invUserProductService.selectByUnique(orderDetailResultEntity.getBindRlFk(), orderDetailResultEntity.getBatchNo(), orderDetailResultEntity.getSupId(), orderEntity.getDeptCode(), orderEntity.getInvCode(),orderEntity.getCreateUser(),ConstantStatus.ACTION_TYPE_NORMAL);
if (invUserProductEntity == null) {
invUserProductEntity = new InvUserProductEntity();
invUserProductEntity.setRelIdFk(orderDetailResultEntity.getBindRlFk());
invUserProductEntity.setNameCode(orderDetailResultEntity.getNameCode());
invUserProductEntity.setBatchNo(orderDetailResultEntity.getBatchNo());
invUserProductEntity.setProductionDate(orderDetailResultEntity.getProductDate());
invUserProductEntity.setExpireDate(orderDetailResultEntity.getExpireDate());
invUserProductEntity.setInCount(0);
invUserProductEntity.setType(ConstantStatus.ACTION_TYPE_NORMAL);
invUserProductEntity.setOutCount(0);
invUserProductEntity.setSupId(orderDetailResultEntity.getSupId());
invUserProductEntity.setDeptCode(orderEntity.getDeptCode());
invUserProductEntity.setInvCode(orderEntity.getInvCode());
invUserProductEntity.setCreateTime(new Date());
invUserProductEntity.setUpdateTime(new Date());
invUserProductService.addInvUserProduct(invUserProductEntity);
}
if (orderEntity.getMainAction().equals(ConstantType.TYPE_OUT)) {
invUserProductEntity.setOutCount(invUserProductEntity.getOutCount() + orderDetailResultEntity.getReCount());
} else if (orderEntity.getMainAction().equals(ConstantType.TYPE_PUT)) {
invUserProductEntity.setInCount(invUserProductEntity.getInCount() + orderDetailResultEntity.getReCount());
}
invUserProductEntity.setReCount(invUserProductEntity.getInCount() - invUserProductEntity.getOutCount());
invUserProductEntity.setUpdateTime(new Date());
invUserProductService.updateInvUserProduct(invUserProductEntity);
}
//生成库存码详情
List<InvUserProductDetailEntity> invUserProductDetailEntityList = new ArrayList<>();
for (IoCodeEntity codeEntity : codeEnttities) {
InvUserProductDetailEntity invUserProductDetailEntity = new InvUserProductDetailEntity();
BeanUtils.copyProperties(codeEntity, invUserProductDetailEntity);
invUserProductDetailEntity.setRelId(codeEntity.getRelId());
invUserProductDetailEntity.setUpdateTime(new Date());
invUserProductDetailEntity.setId(null);
invUserProductDetailEntity.setInvSpaceCode(codeEntity.getWarehouseCode());
invUserProductDetailEntity.setPurchaseType(ConstantStatus.PRUCHASE_COMMON);
if (invUserProductDetailEntity.getMainAction().equals(ConstantType.TYPE_PUT)) {
invUserProductDetailEntity.setInCount(invUserProductDetailEntity.getReCount());
} else if (invUserProductDetailEntity.getMainAction().equals(ConstantType.TYPE_OUT)) {
invUserProductDetailEntity.setOutCount(invUserProductDetailEntity.getReCount());
}
invUserProductDetailEntityList.add(invUserProductDetailEntity);
}
invUserProductDetailService.addInvUserProductDetailList(invUserProductDetailEntityList);
}
@Resource
InvPreProductService invPreProductService;
@ -189,6 +252,67 @@ public class IoGenInvService {
}
//生成用户寄售库存
public void genUserPreInv(String orderId) {
IoOrderEntity orderEntity = orderService.findByBillNo(orderId);
List<IoOrderDetailResultEntity> orderDetailResultEntities = orderDetailResultService.findByOrderId(orderId);
List<IoCodeEntity> codeEnttities = codeService.findByOrderId(orderId);
//生成库存产品表
for (IoOrderDetailResultEntity orderDetailResultEntity : orderDetailResultEntities) {
InvUserProductEntity invUserProductEntity = invUserProductService.selectByUnique(orderDetailResultEntity.getBindRlFk(), orderDetailResultEntity.getBatchNo(), orderDetailResultEntity.getSupId(), orderEntity.getDeptCode(), orderEntity.getInvCode(),orderEntity.getCreateUser(),ConstantStatus.ACTION_TYPE_PREIN);
if (invUserProductEntity == null) {
invUserProductEntity = new InvUserProductEntity();
invUserProductEntity.setRelIdFk(orderDetailResultEntity.getBindRlFk());
invUserProductEntity.setNameCode(orderDetailResultEntity.getNameCode());
invUserProductEntity.setBatchNo(orderDetailResultEntity.getBatchNo());
invUserProductEntity.setProductionDate(orderDetailResultEntity.getProductDate());
invUserProductEntity.setExpireDate(orderDetailResultEntity.getExpireDate());
invUserProductEntity.setInCount(0);
invUserProductEntity.setType(ConstantStatus.ACTION_TYPE_PREIN);
invUserProductEntity.setOutCount(0);
invUserProductEntity.setSupId(orderDetailResultEntity.getSupId());
invUserProductEntity.setDeptCode(orderEntity.getDeptCode());
invUserProductEntity.setInvCode(orderEntity.getInvCode());
invUserProductEntity.setCreateTime(new Date());
invUserProductEntity.setUpdateTime(new Date());
invUserProductService.addInvUserProduct(invUserProductEntity);
}
if (orderEntity.getMainAction().equals(ConstantType.TYPE_OUT)) {
invUserProductEntity.setOutCount(invUserProductEntity.getOutCount() + orderDetailResultEntity.getReCount());
} else if (orderEntity.getMainAction().equals(ConstantType.TYPE_PUT)) {
invUserProductEntity.setInCount(invUserProductEntity.getInCount() + orderDetailResultEntity.getReCount());
}
invUserProductEntity.setReCount(invUserProductEntity.getInCount() - invUserProductEntity.getOutCount());
invUserProductEntity.setUpdateTime(new Date());
invUserProductService.updateInvUserProduct(invUserProductEntity);
}
//生成库存码详情
List<InvUserProductDetailEntity> invUserProductDetailEntityList = new ArrayList<>();
for (IoCodeEntity codeEntity : codeEnttities) {
InvUserProductDetailEntity invUserProductDetailEntity = new InvUserProductDetailEntity();
BeanUtils.copyProperties(codeEntity, invUserProductDetailEntity);
invUserProductDetailEntity.setRelId(codeEntity.getRelId());
invUserProductDetailEntity.setUpdateTime(new Date());
invUserProductDetailEntity.setId(null);
invUserProductDetailEntity.setInvSpaceCode(codeEntity.getWarehouseCode());
invUserProductDetailEntity.setPurchaseType(ConstantStatus.PRUCHASE_COMMON);
if (invUserProductDetailEntity.getMainAction().equals(ConstantType.TYPE_PUT)) {
invUserProductDetailEntity.setInCount(invUserProductDetailEntity.getReCount());
} else if (invUserProductDetailEntity.getMainAction().equals(ConstantType.TYPE_OUT)) {
invUserProductDetailEntity.setOutCount(invUserProductDetailEntity.getReCount());
}
invUserProductDetailEntityList.add(invUserProductDetailEntity);
}
invUserProductDetailService.addInvUserProductDetailList(invUserProductDetailEntityList);
}
@Resource
InvPreinProductService invPreinProductService;
@ -272,5 +396,66 @@ public class IoGenInvService {
}
//生成用户预验收库存
public void genUserPreInInv(String orderId) {
IoOrderEntity orderEntity = orderService.findByBillNo(orderId);
List<IoOrderDetailResultEntity> orderDetailResultEntities = orderDetailResultService.findByOrderId(orderId);
List<IoCodeEntity> codeEnttities = codeService.findByOrderId(orderId);
//生成库存产品表
for (IoOrderDetailResultEntity orderDetailResultEntity : orderDetailResultEntities) {
InvUserProductEntity invUserProductEntity = invUserProductService.selectByUnique(orderDetailResultEntity.getBindRlFk(), orderDetailResultEntity.getBatchNo(), orderDetailResultEntity.getSupId(), orderEntity.getDeptCode(), orderEntity.getInvCode(),orderEntity.getCreateUser(),ConstantStatus.ACTION_TYPE_ADVANCE);
if (invUserProductEntity == null) {
invUserProductEntity = new InvUserProductEntity();
invUserProductEntity.setRelIdFk(orderDetailResultEntity.getBindRlFk());
invUserProductEntity.setNameCode(orderDetailResultEntity.getNameCode());
invUserProductEntity.setBatchNo(orderDetailResultEntity.getBatchNo());
invUserProductEntity.setProductionDate(orderDetailResultEntity.getProductDate());
invUserProductEntity.setExpireDate(orderDetailResultEntity.getExpireDate());
invUserProductEntity.setInCount(0);
invUserProductEntity.setType(ConstantStatus.ACTION_TYPE_ADVANCE);
invUserProductEntity.setOutCount(0);
invUserProductEntity.setSupId(orderDetailResultEntity.getSupId());
invUserProductEntity.setDeptCode(orderEntity.getDeptCode());
invUserProductEntity.setInvCode(orderEntity.getInvCode());
invUserProductEntity.setCreateTime(new Date());
invUserProductEntity.setUpdateTime(new Date());
invUserProductService.addInvUserProduct(invUserProductEntity);
}
if (orderEntity.getMainAction().equals(ConstantType.TYPE_OUT)) {
invUserProductEntity.setOutCount(invUserProductEntity.getOutCount() + orderDetailResultEntity.getReCount());
} else if (orderEntity.getMainAction().equals(ConstantType.TYPE_PUT)) {
invUserProductEntity.setInCount(invUserProductEntity.getInCount() + orderDetailResultEntity.getReCount());
}
invUserProductEntity.setReCount(invUserProductEntity.getInCount() - invUserProductEntity.getOutCount());
invUserProductEntity.setUpdateTime(new Date());
invUserProductService.updateInvUserProduct(invUserProductEntity);
}
//生成库存码详情
List<InvUserProductDetailEntity> invUserProductDetailEntityList = new ArrayList<>();
for (IoCodeEntity codeEntity : codeEnttities) {
InvUserProductDetailEntity invUserProductDetailEntity = new InvUserProductDetailEntity();
BeanUtils.copyProperties(codeEntity, invUserProductDetailEntity);
invUserProductDetailEntity.setRelId(codeEntity.getRelId());
invUserProductDetailEntity.setUpdateTime(new Date());
invUserProductDetailEntity.setId(null);
invUserProductDetailEntity.setInvSpaceCode(codeEntity.getWarehouseCode());
invUserProductDetailEntity.setPurchaseType(ConstantStatus.PRUCHASE_COMMON);
if (invUserProductDetailEntity.getMainAction().equals(ConstantType.TYPE_PUT)) {
invUserProductDetailEntity.setInCount(invUserProductDetailEntity.getReCount());
} else if (invUserProductDetailEntity.getMainAction().equals(ConstantType.TYPE_OUT)) {
invUserProductDetailEntity.setOutCount(invUserProductDetailEntity.getReCount());
}
invUserProductDetailEntityList.add(invUserProductDetailEntity);
}
invUserProductDetailService.addInvUserProductDetailList(invUserProductDetailEntityList);
}
}

@ -0,0 +1,8 @@
package com.glxp.api.service.inout;
import com.glxp.api.entity.inout.IoOrderMutiEntity;
import com.baomidou.mybatisplus.extension.service.IService;
public interface IoOrderMutiService extends IService<IoOrderMutiEntity>{
}

@ -0,0 +1,8 @@
package com.glxp.api.service.inout;
import com.glxp.api.entity.inout.IoOrderMutiSetEntity;
import com.baomidou.mybatisplus.extension.service.IService;
public interface IoOrderMutiSetService extends IService<IoOrderMutiSetEntity>{
}

@ -0,0 +1,8 @@
package com.glxp.api.service.inout;
import com.glxp.api.entity.inout.IoOrderMutiUseEntity;
import com.baomidou.mybatisplus.extension.service.IService;
public interface IoOrderMutiUseService extends IService<IoOrderMutiUseEntity>{
}

@ -0,0 +1,11 @@
package com.glxp.api.service.inout.impl;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.glxp.api.entity.inout.IoOrderMutiEntity;
import com.glxp.api.dao.inout.IoOrderMutiMapper;
import com.glxp.api.service.inout.IoOrderMutiService;
@Service
public class IoOrderMutiServiceImpl extends ServiceImpl<IoOrderMutiMapper, IoOrderMutiEntity> implements IoOrderMutiService{
}

@ -0,0 +1,11 @@
package com.glxp.api.service.inout.impl;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.glxp.api.entity.inout.IoOrderMutiSetEntity;
import com.glxp.api.dao.inout.IoOrderMutiSetMapper;
import com.glxp.api.service.inout.IoOrderMutiSetService;
@Service
public class IoOrderMutiSetServiceImpl extends ServiceImpl<IoOrderMutiSetMapper, IoOrderMutiSetEntity> implements IoOrderMutiSetService{
}

@ -0,0 +1,11 @@
package com.glxp.api.service.inout.impl;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.glxp.api.dao.inout.IoOrderMutiUseMapper;
import com.glxp.api.entity.inout.IoOrderMutiUseEntity;
import com.glxp.api.service.inout.IoOrderMutiUseService;
@Service
public class IoOrderMutiUseServiceImpl extends ServiceImpl<IoOrderMutiUseMapper, IoOrderMutiUseEntity> implements IoOrderMutiUseService{
}

@ -299,7 +299,7 @@ public class IoOrderServiceImpl implements IoOrderService {
//查询条码
IoOrderEntity orderEntity = findByBillNo(billNo);
if (orderEntity.getStatus() == ConstantStatus.ORDER_STATUS_AUDITED
|| orderEntity.getStatus() == ConstantStatus.ORDER_STATUS_CHECK_SUCCESS) {
|| orderEntity.getStatus() == ConstantStatus.ORDER_STATUS_CHECK_SUCCESS || orderEntity.getStatus() == ConstantStatus.ORDER_STATUS_CHECK_REW) {
//更新正式表
IoCodeEntity ioCodeEntity = codeService.findByUnique(billNo, code);
if (ioCodeEntity.getMyCount() > 1) {
@ -331,12 +331,12 @@ public class IoOrderServiceImpl implements IoOrderService {
InvPreInProductDetailEntity invProductDetailEntity = invPreinProductDetailService.selectByCode(billNo, code);
int count = invProductDetailEntity.getCount() - 1;
int reCount = udiCalCountUtil.getActCount(invProductDetailEntity.getNameCode());
if (count == 0) {
invPreinProductDetailService.deleteById(invProductDetailEntity.getId() + "");
} else {
//更新详情表
invProductDetailEntity.setCount(count);
int reCount = udiCalCountUtil.getActCount(invProductDetailEntity.getNameCode());
invProductDetailEntity.setReCount(invProductDetailEntity.getReCount() - reCount);
invPreinProductDetailService.update(invProductDetailEntity);
}
@ -344,10 +344,10 @@ public class IoOrderServiceImpl implements IoOrderService {
InvPreinProductEntity invProductEntity = invPreinProductService.selectByUnique(invProductDetailEntity.getRelId(), invProductDetailEntity.getBatchNo(), invProductDetailEntity.getSupId(), invProductDetailEntity.getDeptCode(), invProductDetailEntity.getInvCode());
if (invProductEntity != null) {
if (ConstantType.TYPE_PUT.equals(invProductDetailEntity.getMainAction())) {
int inCount = invProductEntity.getInCount() - invProductDetailEntity.getReCount();
int inCount = invProductEntity.getInCount() - reCount;
invProductEntity.setInCount(inCount);
} else if (ConstantType.TYPE_OUT.equals(invProductDetailEntity.getMainAction())) {
int outCount = invProductEntity.getOutCount() - invProductDetailEntity.getReCount();
int outCount = invProductEntity.getOutCount() - reCount;
invProductEntity.setOutCount(outCount);
}
invProductEntity.setReCount(invProductEntity.getInCount() - invProductEntity.getOutCount());
@ -357,12 +357,12 @@ public class IoOrderServiceImpl implements IoOrderService {
} else if (basicBussinessTypeEntity.getActionType() == ConstantStatus.ACTION_TYPE_ADVANCE) { //寄售库存
InvPreProductDetailEntity invProductDetailEntity = invPreProductDetailService.selectByCode(billNo, code);
int count = invProductDetailEntity.getCount() - 1;
int reCount = udiCalCountUtil.getActCount(invProductDetailEntity.getNameCode());
if (count == 0) {
invPreProductService.deleteById(invProductDetailEntity.getId());
} else {
//更新详情表
invProductDetailEntity.setCount(count);
int reCount = udiCalCountUtil.getActCount(invProductDetailEntity.getNameCode());
invProductDetailEntity.setReCount(invProductDetailEntity.getReCount() - reCount);
invPreProductDetailService.update(invProductDetailEntity);
}
@ -370,10 +370,10 @@ public class IoOrderServiceImpl implements IoOrderService {
InvPreProductEntity invProductEntity = invPreProductService.selectByUnique(invProductDetailEntity.getRelId(), invProductDetailEntity.getBatchNo(), invProductDetailEntity.getSupId(), invProductDetailEntity.getDeptCode(), invProductDetailEntity.getInvCode());
if (invProductEntity != null) {
if (ConstantType.TYPE_PUT.equals(invProductDetailEntity.getMainAction())) {
int inCount = invProductEntity.getInCount() - invProductDetailEntity.getReCount();
int inCount = invProductEntity.getInCount() - reCount;
invProductEntity.setInCount(inCount);
} else if (ConstantType.TYPE_OUT.equals(invProductDetailEntity.getMainAction())) {
int outCount = invProductEntity.getOutCount() - invProductDetailEntity.getReCount();
int outCount = invProductEntity.getOutCount() - reCount;
invProductEntity.setOutCount(outCount);
}
invProductEntity.setReCount(invProductEntity.getInCount() - invProductEntity.getOutCount());
@ -382,12 +382,12 @@ public class IoOrderServiceImpl implements IoOrderService {
} else { //普通库存
InvProductDetailEntity invProductDetailEntity = invProductDetailService.selectByCode(billNo, code);
int count = invProductDetailEntity.getCount() - 1;
int reCount = udiCalCountUtil.getActCount(invProductDetailEntity.getNameCode());
if (count == 0) {
invProductDetailService.deleteById(invProductDetailEntity.getId());
} else {
//更新详情表
invProductDetailEntity.setCount(count);
int reCount = udiCalCountUtil.getActCount(invProductDetailEntity.getNameCode());
invProductDetailEntity.setReCount(invProductDetailEntity.getReCount() - reCount);
invProductDetailService.update(invProductDetailEntity);
}
@ -395,10 +395,10 @@ public class IoOrderServiceImpl implements IoOrderService {
InvProductEntity invProductEntity = invProductService.selectByUnique(invProductDetailEntity.getRelId(), invProductDetailEntity.getBatchNo(), invProductDetailEntity.getSupId(), invProductDetailEntity.getDeptCode(), invProductDetailEntity.getInvCode());
if (invProductEntity != null) {
if (ConstantType.TYPE_PUT.equals(invProductDetailEntity.getMainAction())) {
int inCount = invProductEntity.getInCount() - invProductDetailEntity.getReCount();
int inCount = invProductEntity.getInCount() - reCount;
invProductEntity.setInCount(inCount);
} else if (ConstantType.TYPE_OUT.equals(invProductDetailEntity.getMainAction())) {
int outCount = invProductEntity.getOutCount() - invProductDetailEntity.getReCount();
int outCount = invProductEntity.getOutCount() - reCount;
invProductEntity.setOutCount(outCount);
}
invProductEntity.setReCount(invProductEntity.getInCount() - invProductEntity.getOutCount());

@ -0,0 +1,26 @@
package com.glxp.api.service.inv;
import com.glxp.api.entity.inv.InvUserProductDetailEntity;
import java.util.List;
/**
* @author Lenovo
* @description inv_user_product_detail()Service
* @createDate 2023-05-12 10:19:43
*/
public interface InvUserProductDetailService{
List<InvUserProductDetailEntity> filterInvUserProductDetailList(InvUserProductDetailEntity invUserProductDetailEntity);
Boolean addInvUserProductDetail(InvUserProductDetailEntity invUserProductDetailEntity);
Boolean addInvUserProductDetailList(List<InvUserProductDetailEntity> invUserProductDetailEntityList);
Boolean updateInvUserProductDetail(InvUserProductDetailEntity invUserProductDetailEntity);
Boolean delectInvUserProductDetail(InvUserProductDetailEntity invUserProductDetailEntity);
}

@ -0,0 +1,28 @@
package com.glxp.api.service.inv;
import com.glxp.api.common.res.BaseResponse;
import com.glxp.api.entity.inv.InvProductEntity;
import com.glxp.api.entity.inv.InvUserProductEntity;
import java.util.List;
/**
* @author Lenovo
* @description inv_user_product()Service
* @createDate 2023-05-12 10:19:43
*/
public interface InvUserProductService{
List<InvUserProductEntity> filterInvUserProductList(InvUserProductEntity invUserProductEntity);
Boolean addInvUserProduct(InvUserProductEntity invUserProductEntity);
Boolean updateInvUserProduct(InvUserProductEntity invUserProductEntity);
Boolean delectInvUserProduct(InvUserProductEntity invUserProductEntity);
InvUserProductEntity selectByUnique(Long relId, String batchNo, String supId, String deptCode, String invCode,String userId,Integer type);
}

@ -189,7 +189,7 @@ public class InvPlaceOrderServiceImpl implements InvPlaceOrderService {
InvPlaceOrderEntity orderEntity = new InvPlaceOrderEntity();
orderEntity.setId(IdUtil.getSnowflakeNextId());
orderEntity.setRecordId(recordId);
orderEntity.setType(1);
orderEntity.setType(3);
// orderEntity.setOrderId(addInvPlaceOrderRequest.getOrderId());
orderEntity.setCreateUser(userId);
orderEntity.setCreateTime(new Date());

@ -508,8 +508,12 @@ public class InvPlaceServiceImpl implements InvPlaceService {
QueryWrapper<InvPreInProductDetailEntity> ew = new QueryWrapper<>();
ew.eq("code", bindInvSpaceRequest.getCode());
ew.eq("invSpaceCode", bindInvSpaceRequest.getInvSpaceCode());
ew.eq("mainAction", "WareHouseIn");
InvPreInProductDetailEntity invPreInProductDetailEntity = invPreInProductDetailDao.selectOne(ew);
count = invPreInProductDetailEntity.getInCount();
if (invPreInProductDetailEntity == null) {
return "该产品库存不足!";
}
} else {
count = invPreInProductDetailDao.getInventoryQuantity(bindInvSpaceRequest.getCode());
}
@ -534,7 +538,11 @@ public class InvPlaceServiceImpl implements InvPlaceService {
QueryWrapper<InvPreProductDetailEntity> ew = new QueryWrapper<>();
ew.eq("code", bindInvSpaceRequest.getCode());
ew.eq("invSpaceCode", bindInvSpaceRequest.getInvSpaceCode());
ew.eq("mainAction", "WareHouseIn");
InvPreProductDetailEntity invPreProductDetailEntity = invPreProductDetailDao.selectOne(ew);
if (invPreProductDetailEntity == null) {
return "该产品库存不足!";
}
count = invPreProductDetailEntity.getInCount();
} else {
count = invPreProductDetailDao.getInventoryQuantity(bindInvSpaceRequest.getCode());
@ -561,7 +569,11 @@ public class InvPlaceServiceImpl implements InvPlaceService {
QueryWrapper<InvProductDetailEntity> ew = new QueryWrapper<>();
ew.eq("code", bindInvSpaceRequest.getCode());
ew.eq("invSpaceCode", bindInvSpaceRequest.getInvSpaceCode());
ew.eq("mainAction", "WareHouseIn");
InvProductDetailEntity invProductDetailEntity = invProductDetailDao.selectOne(ew);
if (invProductDetailEntity == null) {
return "该产品库存不足!";
}
count = invProductDetailEntity.getInCount();
} else {
count = invProductDetailDao.getInventoryQuantity(bindInvSpaceRequest.getCode());
@ -729,7 +741,7 @@ public class InvPlaceServiceImpl implements InvPlaceService {
ew.eq("invSpaceCode", bindInvSpaceRequest.getInvSpaceCode());
ew.last("limit 1");
invPreInProductDetailEntity = invPreInProductDetailDao.selectOne(ew);
if (invPreInProductDetailEntity != null && invPreInProductDetailEntity.getInCount() == 0 && invPreInProductDetailEntity.getOutCount() == 0
if (invPreInProductDetailEntity != null && invPreInProductDetailEntity.getInCount() == 0 && (invPreInProductDetailEntity.getOutCount() == null || invPreInProductDetailEntity.getOutCount() == 0)
&& invPreInProductDetailEntity.getCount() == 0 && invPreInProductDetailEntity.getReCount() == 0) {
invPreInProductDetailDao.deleteById(invPreInProductDetailEntity);
}
@ -767,7 +779,7 @@ public class InvPlaceServiceImpl implements InvPlaceService {
ew.eq("invSpaceCode", bindInvSpaceRequest.getInvSpaceCode());
ew.last("limit 1");
invPreInProductDetailEntity = invPreInProductDetailDao.selectOne(ew);
if (invPreInProductDetailEntity != null && invPreInProductDetailEntity.getInCount() == 0 && invPreInProductDetailEntity.getOutCount() == 0
if (invPreInProductDetailEntity != null && invPreInProductDetailEntity.getInCount() == 0 && (invPreInProductDetailEntity.getOutCount() == null || invPreInProductDetailEntity.getOutCount() == 0)
&& invPreInProductDetailEntity.getCount() == 0 && invPreInProductDetailEntity.getReCount() == 0) {
invPreInProductDetailDao.deleteById(invPreInProductDetailEntity);
}
@ -832,7 +844,7 @@ public class InvPlaceServiceImpl implements InvPlaceService {
ew.eq("invSpaceCode", bindInvSpaceRequest.getInvSpaceCode());
ew.last("limit 1");
invPreProductDetailEntity = invPreProductDetailDao.selectOne(ew);
if (invPreProductDetailEntity != null && invPreProductDetailEntity.getInCount() == 0 && invPreProductDetailEntity.getOutCount() == 0
if (invPreProductDetailEntity != null && invPreProductDetailEntity.getInCount() == 0 && (invPreProductDetailEntity.getOutCount() == null || invPreProductDetailEntity.getOutCount() == 0)
&& invPreProductDetailEntity.getCount() == 0 && invPreProductDetailEntity.getReCount() == 0) {
invPreProductDetailDao.deleteById(invPreProductDetailEntity);
}
@ -900,7 +912,7 @@ public class InvPlaceServiceImpl implements InvPlaceService {
ew.eq("invSpaceCode", bindInvSpaceRequest.getInvSpaceCode());
ew.last("limit 1");
invProductDetailEntity = invProductDetailDao.selectOne(ew);
if (invProductDetailEntity != null && invProductDetailEntity.getInCount() == 0 && invProductDetailEntity.getOutCount() == 0
if (invProductDetailEntity != null && invProductDetailEntity.getInCount() == 0 && (invProductDetailEntity.getOutCount() == null || invProductDetailEntity.getOutCount() == 0)
&& invProductDetailEntity.getCount() == 0 && invProductDetailEntity.getReCount() == 0) {
invProductDetailDao.deleteById(invProductDetailEntity);
}

@ -0,0 +1,47 @@
package com.glxp.api.service.inv.impl;
import com.glxp.api.dao.inv.InvUserProductDetailDao;
import com.glxp.api.entity.inv.InvUserProductDetailEntity;
import com.glxp.api.service.inv.InvUserProductDetailService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.List;
/**
* @author Lenovo
* @description inv_user_product_detail()Service
* @createDate 2023-05-12 10:19:43
*/
@Service
public class InvUserProductDetailServiceImpl implements InvUserProductDetailService {
@Resource
InvUserProductDetailDao invUserProductDetailDao;
@Override
public List<InvUserProductDetailEntity> filterInvUserProductDetailList(InvUserProductDetailEntity invUserProductDetailEntity) {
return null;
}
@Override
public Boolean addInvUserProductDetail(InvUserProductDetailEntity invUserProductDetailEntity) {
return invUserProductDetailDao.insert(invUserProductDetailEntity) == 1 ? true : false;
}
@Override
public Boolean addInvUserProductDetailList(List<InvUserProductDetailEntity> invUserProductDetailEntityList) {
return invUserProductDetailDao.insertBatch(invUserProductDetailEntityList);
}
@Override
public Boolean updateInvUserProductDetail(InvUserProductDetailEntity invUserProductDetailEntity) {
return invUserProductDetailDao.updateById(invUserProductDetailEntity) == 1 ? true : false;
}
@Override
public Boolean delectInvUserProductDetail(InvUserProductDetailEntity invUserProductDetailEntity) {
return invUserProductDetailDao.deleteById(invUserProductDetailEntity) == 1 ? true : false;
}
}

@ -0,0 +1,52 @@
package com.glxp.api.service.inv.impl;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.glxp.api.dao.inv.InvUserProductDao;
import com.glxp.api.entity.inv.InvProductEntity;
import com.glxp.api.entity.inv.InvUserProductEntity;
import com.glxp.api.service.inv.InvUserProductService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.List;
/**
* @author Lenovo
* @description inv_user_product()Service
* @createDate 2023-05-12 10:19:43
*/
@Service
public class InvUserProductServiceImpl implements InvUserProductService {
@Resource
InvUserProductDao invUserProductDao;
@Override
public List<InvUserProductEntity> filterInvUserProductList(InvUserProductEntity invUserProductEntity) {
return null;
}
@Override
public Boolean addInvUserProduct(InvUserProductEntity invUserProductEntity) {
return invUserProductDao.insert(invUserProductEntity) == 1 ? true : false;
}
@Override
public Boolean updateInvUserProduct(InvUserProductEntity invUserProductEntity) {
return invUserProductDao.updateById(invUserProductEntity) == 1 ? true : false;
}
@Override
public Boolean delectInvUserProduct(InvUserProductEntity invUserProductEntity) {
return invUserProductDao.deleteById(invUserProductEntity) == 1 ? true : false;
}
@Override
public InvUserProductEntity selectByUnique(Long relId, String batchNo, String supId, String deptCode, String invCode,String userId,Integer type) {
return invUserProductDao.selectOne(new QueryWrapper<InvUserProductEntity>().eq("relIdFk", relId).eq(StrUtil.isNotEmpty(batchNo), "batchNo", batchNo)
.isNull(StrUtil.isEmpty(batchNo), "batchNo").eq("supId", supId).eq("deptCode", deptCode)
.eq("invCode", invCode).eq("userId",userId).eq("type",type));
}
}

@ -1,6 +1,7 @@
package com.glxp.api.service.purchase.impl;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.IdUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.github.pagehelper.PageHelper;
@ -64,6 +65,8 @@ public class PurOrderServiceImpl implements PurOrderService {
@Override
public Boolean insert(PurOrderEntity purOrderEntity) {
if (purOrderEntity.getId() == null)
purOrderEntity.setId(IdUtil.getSnowflakeNextId());
return purOrderDao.insert(purOrderEntity) > 0 ? true : false;
}

@ -13,11 +13,11 @@
<select id="selectOrderInvoice" parameterType="com.glxp.api.req.inout.IoOrderInvoiceRequest"
resultType="com.glxp.api.entity.inout.IoOrderInvoiceEntity">
SELECT ic.*,
(select cpmctymc from basic_products where basic_products.uuid = bu.uuid) cpmctymc,
(select ggxh from basic_products where basic_products.uuid = bu.uuid) ggxh
bp.cpmctymc,
bp.ggxh
FROM io_order_invoice ic
LEFT JOIN basic_udirel bu ON bu.id = ic.bindRlFk
LEFT JOIN basic_products bp ON bu.uuid = bp.uuid
LEFT JOIN basic_udirel bu ON bu.id = ic.bindRlFk
LEFT JOIN basic_products bp ON bu.uuid = bp.uuid
<where>
<if test="orderIdFk != null and orderIdFk != ''">
AND ic.orderIdFk = #{orderIdFk}
@ -34,7 +34,6 @@
<if test="batchNo == null || batchNo == ''">
AND (ic.batchNo is null or ic.batchNo = '')
</if>
</where>
GROUP BY ic.id
</select>

@ -4,8 +4,8 @@
<select id="filterList" resultType="com.glxp.api.res.inout.IoOrderDetailBizResponse">
select io_order_detail_biz.*
from io_order_detail_biz
left join basic_udirel bu on bu.id = io_order_detail_biz.bindRlFk
left join basic_products bp on bu.uuid = bp.uuid
left join basic_udirel bu on bu.id = io_order_detail_biz.bindRlFk
left join basic_products bp on bu.uuid = bp.uuid
<where>
<if test="orderIdFk != null and orderIdFk != ''">
AND orderIdFk = #{orderIdFk}
@ -23,20 +23,22 @@
group by io_order_detail_biz.id
</select>
<select id="selectByinvoiceId" parameterType="java.lang.Long" resultType="com.glxp.api.res.inout.IoOrderInvoiceResponse">
select * from io_order_invoice where id= #{id}
<select id="selectByinvoiceId" parameterType="java.lang.Long"
resultType="com.glxp.api.res.inout.IoOrderInvoiceResponse">
select *
from io_order_invoice
where id = #{id}
</select>
<select id="getfilterList" resultType="com.glxp.api.res.inout.IoOrderDetailCodeResponse">
select io_order_detail_code.*,
(select count(*)
FROM io_order_invoice
where io_order_invoice.orderIdFk = io_order_detail_code.orderIdFk) as sucCount
(select count(*)
FROM io_order_invoice
where io_order_invoice.orderIdFk = io_order_detail_code.orderIdFk) as sucCount
from io_order_detail_code
left join basic_udirel bu on bu.id = io_order_detail_code.bindRlFk
left join basic_products bp on bu.uuid = bp.uuid
left join basic_udirel bu on bu.id = io_order_detail_code.bindRlFk
left join basic_products bp on bu.uuid = bp.uuid
<where>
<if test="orderIdFk != null and orderIdFk != ''">
AND orderIdFk = #{orderIdFk}
@ -56,11 +58,11 @@
<select id="filterListInv" resultType="com.glxp.api.res.inout.IoOrderInvoiceResponse">
SELECT ic.*,
(select cpmctymc from basic_products where basic_products.uuid = bu.uuid) cpmctymc,
(select ggxh from basic_products where basic_products.uuid = bu.uuid) ggxh
bp.cpmctymc,
bp.ggxh
FROM io_order_invoice ic
LEFT JOIN basic_udirel bu ON bu.id = ic.bindRlFk
LEFT JOIN basic_products bp ON bu.uuid = bp.uuid
LEFT JOIN basic_udirel bu ON bu.id = ic.bindRlFk
LEFT JOIN basic_products bp ON bu.uuid = bp.uuid
<where>
<if test="orderIdFk != null and orderIdFk != ''">
AND ic.orderIdFk = #{orderIdFk}
@ -77,13 +79,13 @@
<if test="batchNo == null || batchNo == ''">
AND (ic.batchNo is null or ic.batchNo = '')
</if>
</where>
GROUP BY ic.id
</select>
<select id="selectOrderDetailBiz" resultType="com.glxp.api.entity.inout.IoOrderDetailBizEntity">
select * from io_order_detail_biz
select *
from io_order_detail_biz
<where>
<if test="orderId != null and orderId != ''">
AND orderIdFk = #{orderId}

@ -0,0 +1,4 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.glxp.api.dao.inout.IoOrderMutiMapper">
</mapper>

@ -0,0 +1,4 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.glxp.api.dao.inout.IoOrderMutiSetMapper">
</mapper>

@ -0,0 +1,4 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.glxp.api.dao.inout.IoOrderMutiUseMapper">
</mapper>

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.glxp.api.dao.inv.InvUserProductDetailDao">
</mapper>

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.glxp.api.dao.inv.InvUserProductDao">
</mapper>

@ -23,7 +23,9 @@
auth_warehouse.name invName,
as.name spaceName,
ipp.deptCode,
ipp.invCode
ipp.invCode,
ipp.invSpaceCode,
ipp.code as code
from inv_product_detail ipp
inner join basic_udirel on ipp.relId = basic_udirel.id
inner join basic_products bp on basic_udirel.uuid = bp.uuid

@ -1,97 +1,101 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.glxp.api.dao.purchase.PurOrderDao">
<resultMap id="BaseResultMap" type="com.glxp.api.entity.purchase.PurOrderEntity">
<!--@mbg.generated-->
<!--@Table pur_order-->
<id column="id" jdbcType="BIGINT" property="id" />
<result column="billNo" jdbcType="VARCHAR" property="billNo" />
<result column="billDate" jdbcType="TIMESTAMP" property="billDate" />
<result column="status" jdbcType="TINYINT" property="status" />
<result column="billType" jdbcType="VARCHAR" property="billType" />
<result column="remark" jdbcType="VARCHAR" property="remark" />
<result column="invCode" jdbcType="VARCHAR" property="invCode" />
<result column="deptCode" jdbcType="VARCHAR" property="deptCode" />
<result column="createUser" jdbcType="VARCHAR" property="createUser" />
<result column="createTime" jdbcType="TIMESTAMP" property="createTime" />
<result column="auditUser" jdbcType="VARCHAR" property="auditUser" />
<result column="auditTime" jdbcType="TIMESTAMP" property="auditTime" />
<result column="auditRemark" jdbcType="VARCHAR" property="auditRemark" />
<result column="updateTime" jdbcType="TIMESTAMP" property="updateTime" />
<result column="updateUser" jdbcType="VARCHAR" property="updateUser" />
<result column="applyCreateUser" jdbcType="VARCHAR" property="applyCreateUser" />
<result column="applyAuditUser" jdbcType="VARCHAR" property="applyAuditUser" />
<result column="applyRemark" jdbcType="VARCHAR" property="applyRemark" />
<result column="applyBillNo" jdbcType="VARCHAR" property="applyBillNo" />
<result column="stockOrderNo" jdbcType="VARCHAR" property="stockOrderNo" />
</resultMap>
<sql id="Base_Column_List">
<!--@mbg.generated-->
id, billNo, billDate, `status`, billType, remark, invCode, deptCode, `createUser`,
createTime, auditUser, auditTime, auditRemark, updateTime, updateUser, applyCreateUser,
applyAuditUser, applyRemark, applyBillNo, stockOrderNo
</sql>
<resultMap id="BaseResultMap" type="com.glxp.api.entity.purchase.PurOrderEntity">
<!--@mbg.generated-->
<!--@Table pur_order-->
<id column="id" jdbcType="BIGINT" property="id"/>
<result column="billNo" jdbcType="VARCHAR" property="billNo"/>
<result column="billDate" jdbcType="TIMESTAMP" property="billDate"/>
<result column="status" jdbcType="TINYINT" property="status"/>
<result column="billType" jdbcType="VARCHAR" property="billType"/>
<result column="remark" jdbcType="VARCHAR" property="remark"/>
<result column="invCode" jdbcType="VARCHAR" property="invCode"/>
<result column="deptCode" jdbcType="VARCHAR" property="deptCode"/>
<result column="createUser" jdbcType="VARCHAR" property="createUser"/>
<result column="createTime" jdbcType="TIMESTAMP" property="createTime"/>
<result column="auditUser" jdbcType="VARCHAR" property="auditUser"/>
<result column="auditTime" jdbcType="TIMESTAMP" property="auditTime"/>
<result column="auditRemark" jdbcType="VARCHAR" property="auditRemark"/>
<result column="updateTime" jdbcType="TIMESTAMP" property="updateTime"/>
<result column="updateUser" jdbcType="VARCHAR" property="updateUser"/>
<result column="applyCreateUser" jdbcType="VARCHAR" property="applyCreateUser"/>
<result column="applyAuditUser" jdbcType="VARCHAR" property="applyAuditUser"/>
<result column="applyRemark" jdbcType="VARCHAR" property="applyRemark"/>
<result column="applyBillNo" jdbcType="VARCHAR" property="applyBillNo"/>
<result column="stockOrderNo" jdbcType="VARCHAR" property="stockOrderNo"/>
</resultMap>
<sql id="Base_Column_List">
<!--@mbg.generated-->
id, billNo, billDate, `status`, billType, remark, invCode, deptCode, `createUser`,
createTime, auditUser, auditTime, auditRemark, updateTime, updateUser, applyCreateUser,
applyAuditUser, applyRemark, applyBillNo, stockOrderNo
</sql>
<select id="queryPageList" parameterType="com.glxp.api.req.purchase.PurOrderRequest"
resultType="com.glxp.api.res.purchase.PurOrderResponse">
SELECT
pur_order.*,
cb.employeeName createUserName,
ab.employeeName auditUserName,
auth_warehouse.NAME invName,
auth_dept.`name` deptName
FROM
pur_order
LEFT JOIN auth_user cb ON pur_order.createUser = cb.id
LEFT JOIN auth_user ab ON pur_order.auditUser = ab.id
LEFT JOIN auth_warehouse ON pur_order.invCode = auth_warehouse.`code`
LEFT JOIN auth_dept ON auth_dept.CODE = pur_order.deptCode
<where>
<if test="billNo != '' and billNo != null">
AND billNo = #{billNo}
</if>
<if test="startDate != null and startDate !=''">
<![CDATA[ and DATE_FORMAT(pur_order.createTime,'%Y-%m-%d')>= #{startDate}]]>
</if>
<if test="endDate != null and endDate !=''">
<![CDATA[ and DATE_FORMAT(pur_order.createTime,'%Y-%m-%d') <= #{endDate}]]>
</if>
<if test="startAuditDate != null and startAuditDate !=''">
<![CDATA[ and DATE_FORMAT(pur_order.auditTime,'%Y-%m-%d')>= #{startAuditDate}]]>
</if>
<if test="endAuditDate != null and endAuditDate !=''">
<![CDATA[ and DATE_FORMAT(pur_order.auditTime,'%Y-%m-%d') <= #{endAuditDate}]]>
</if>
<if test="status!=null and status!=10 and status!=11">
and pur_order.status = #{status}
</if>
<if test="status ==10">
and ( pur_order.status = 3 or pur_order.status=2 or pur_order.status=4)
</if>
<if test="status ==11">
and ( pur_order.status = 1 or pur_order.status=2 or pur_order.status=4)
</if>
<if test="deptCode != '' and deptCode != null">
AND deptCode = #{deptCode}
</if>
<if test="invCode != '' and invCode != null">
AND invCode = #{invCode}
</if>
<if test="auditUser != '' and auditUser != null">
AND auditUser = #{auditUser}
</if>
<if test="createUser != '' and createUser != null">
AND createUser = #{createUser}
</if>
<if test="emergency != null">
AND emergency = #{emergency}
</if>
</where>
</select>
<select id="queryPageList" parameterType="com.glxp.api.req.purchase.PurOrderRequest"
resultType="com.glxp.api.res.purchase.PurOrderResponse">
SELECT pur_order.*,
cb.employeeName createUserName,
ab.employeeName auditUserName,
auth_warehouse.NAME invName,
auth_dept.`name` deptName,
basic_corp.name supName
FROM pur_order
LEFT JOIN auth_user cb ON pur_order.createUser = cb.id
LEFT JOIN auth_user ab ON pur_order.auditUser = ab.id
LEFT JOIN auth_warehouse ON pur_order.invCode = auth_warehouse.`code`
LEFT JOIN auth_dept ON auth_dept.CODE = pur_order.deptCode
left join basic_corp on pur_order.supId = basic_corp.erpId
<where>
<if test="billNo != '' and billNo != null">
AND billNo = #{billNo}
</if>
<if test="startDate != null and startDate != ''">
<![CDATA[
and DATE_FORMAT(pur_order.createTime, '%Y-%m-%d') >= #{startDate}
]]>
</if>
<if test="endDate != null and endDate != ''">
<![CDATA[
and DATE_FORMAT(pur_order.createTime, '%Y-%m-%d') <= #{endDate}
]]>
</if>
<if test="startAuditDate != null and startAuditDate != ''">
<![CDATA[
and DATE_FORMAT(pur_order.auditTime, '%Y-%m-%d') >= #{startAuditDate}
]]>
</if>
<if test="endAuditDate != null and endAuditDate != ''">
<![CDATA[
and DATE_FORMAT(pur_order.auditTime, '%Y-%m-%d') <= #{endAuditDate}
]]>
</if>
<if test="status != null and status != 10 and status != 11">
and pur_order.status = #{status}
</if>
<if test="status == 10">
and (pur_order.status = 3 or pur_order.status = 2 or pur_order.status = 4)
</if>
<if test="status == 11">
and (pur_order.status = 1 or pur_order.status = 2 or pur_order.status = 4)
</if>
<if test="deptCode != '' and deptCode != null">
AND deptCode = #{deptCode}
</if>
<if test="invCode != '' and invCode != null">
AND invCode = #{invCode}
</if>
<if test="auditUser != '' and auditUser != null">
AND auditUser = #{auditUser}
</if>
<if test="createUser != '' and createUser != null">
AND createUser = #{createUser}
</if>
<if test="emergency != null">
AND emergency = #{emergency}
</if>
</where>
</select>
</mapper>

@ -48,9 +48,9 @@
basic_corp.`name` supName
FROM
pur_order_detail
INNER JOIN basic_udirel ON pur_order_detail.productId = basic_udirel.id
INNER JOIN basic_products ON basic_udirel.uuid = basic_products.uuid
INNER JOIN basic_corp ON pur_order_detail.supId = basic_corp.erpId
left JOIN basic_udirel ON pur_order_detail.productId = basic_udirel.id
left JOIN basic_products ON basic_udirel.uuid = basic_products.uuid
left JOIN basic_corp ON pur_order_detail.supId = basic_corp.erpId
<where>
<if test="orderIdFk != '' and orderIdFk != null">
AND orderIdFk = #{orderIdFk}
@ -174,4 +174,4 @@
and pur_order.status=3
</where>
</select>
</mapper>
</mapper>

@ -37,6 +37,12 @@ CALL Pro_Temp_ColumnWork('thr_system_bus_api', 'thirdBuyName', 'varchar(255) ',
CALL Pro_Temp_ColumnWork('io_order_detail_biz', 'bindRlIds', 'varchar(255) ', 1);
CALL Pro_Temp_ColumnWork('io_order_detail_biz', 'checkFileName', 'varchar(255) ', 1);
CALL Pro_Temp_ColumnWork('io_order_detail_biz', 'coldFilePath', 'varchar(255)', 1);
CALL Pro_Temp_ColumnWork('io_order_detail_biz', 'checkColdFileName', 'varchar(255)', 1);
CALL Pro_Temp_ColumnWork('io_order_invoice', 'bizIdFk', 'int ', 1);
CALL Pro_Temp_ColumnWork('thr_products', 'updateUser', 'varchar(255) ', 1);

Loading…
Cancel
Save