单据库存相关代码迁移

master
anthonywj 2 years ago
parent 9cc66f85da
commit ec9c295e03

@ -62,6 +62,7 @@ public class IoCodeLostController extends BaseController {
return ResultVOUtils.success("成功");
}
@AuthRuleAnnotation("")
@PostMapping("warehouse/inout/saveTabCode")
public BaseResponse saveCode(@RequestBody IoCodeTempEntity codeTempEntity) {
@ -96,7 +97,7 @@ public class IoCodeLostController extends BaseController {
insertEntity.setSerialNo(codeTempEntity.getSerialNo());
insertEntity.setSupId(codeTempEntity.getSupId());
insertEntity.setUpdateTime(new Date());
insertEntity.setCreateTime(new Date());
if (codeLostEntity != null) {
codeLostService.update(insertEntity);
} else {

@ -22,9 +22,9 @@ import com.glxp.api.entity.basic.UdiEntity;
import com.glxp.api.entity.basic.UdiProductEntity;
import com.glxp.api.entity.inout.*;
import com.glxp.api.entity.inv.InvPreInProductDetailEntity;
import com.glxp.api.entity.inv.InvPreProductDetailEntity;
import com.glxp.api.entity.inv.InvPreinDetailEntity;
import com.glxp.api.entity.system.SystemParamConfigEntity;
import com.glxp.api.http.sync.SpsDirectClient;
import com.glxp.api.req.basic.CompanyProductRelevanceRequest;
import com.glxp.api.req.inout.AddEnterCodeRequest;
import com.glxp.api.req.inout.AddOrderRequest;
@ -38,9 +38,7 @@ import com.glxp.api.res.inout.IoCodeTempResponse;
import com.glxp.api.service.auth.InvWarehouseService;
import com.glxp.api.service.basic.*;
import com.glxp.api.service.inout.*;
import com.glxp.api.service.inv.InvPreinDetailService;
import com.glxp.api.service.inv.InvPreinProductDetailService;
import com.glxp.api.service.inv.InvProductDetailService;
import com.glxp.api.service.inv.*;
import com.glxp.api.service.purchase.SupProductService;
import com.glxp.api.service.system.SystemParamConfigService;
import com.glxp.api.util.CustomUtil;
@ -70,8 +68,6 @@ public class IoCodeTempController extends BaseController {
@Resource
private IBasicBussinessTypeService basicBussinessTypeService;
@Resource
private SpsDirectClient spsDirectClient;
@Resource
IoAddInoutService transInoutService;
@Resource
private SystemParamConfigService systemParamConfigService;
@ -101,6 +97,8 @@ public class IoCodeTempController extends BaseController {
IoOrderDetailBizService orderDetailBizService;
@Resource
IoCodeService codeService;
@Resource
InvPreProductDetailService invPreProductDetailService;
//手持端扫码单据上传调用接口
@AuthRuleAnnotation("")
@ -136,10 +134,6 @@ public class IoCodeTempController extends BaseController {
inPostOrder.setPostOrders(inPostOrders);
outPostOrder.setPostOrders(outPostOrders);
if (CollUtil.isNotEmpty(outPostOrders)) {
outPostOrder.setWmsUserId(userId + "");
return spsDirectClient.uploadPdaOrder(outPostOrder);
}
if (CollUtil.isNotEmpty(inPostOrders)) {
inPostOrder.setCustomerId(getCustomerId());
@ -438,9 +432,13 @@ public class IoCodeTempController extends BaseController {
}
}
//失效期提醒
SystemParamConfigEntity recentParamConfigEntity = systemParamConfigService.selectByParamKey("recent_date_tip");
long recent = Long.parseLong(recentParamConfigEntity.getParamValue());
UdiRelevanceResponse udiRelevanceResponse = udiRelevanceService.selectByNameCode(udiEntity.getUdi());
//近效期提醒
// SystemParamConfigEntity recentParamConfigEntity = systemParamConfigService.selectByParamKey("recent_date_tip");
long recent = 0;
if (udiRelevanceResponse.getRecentDateTime() != null)
recent = udiRelevanceResponse.getRecentDateTime().longValue();
if (bussinessTypeEntity.getCheckVailDate() == 1 && recent > 0 && !addOrderRequest.isIgnoreRecentExpire()) {
if (StrUtil.isNotEmpty(udiEntity.getExpireDate())) {
String expireDate = "20" + udiEntity.getExpireDate();
@ -457,6 +455,22 @@ public class IoCodeTempController extends BaseController {
}
}
if (bussinessTypeEntity.getCheckVailDate() == 2 && recent > 0) {
if (StrUtil.isNotEmpty(udiEntity.getExpireDate())) {
String expireDate = "20" + udiEntity.getExpireDate();
long expireTime = DateUtil.parseDateExpire(expireDate);
long recentTieme = Math.abs(recent * 24 * 60 * 60 * 1000);
long resultTime = expireTime - System.currentTimeMillis();
if (resultTime > 0) {
long time = resultTime / (24 * 60 * 60 * 1000);
if (resultTime < recentTieme) {
return ResultVOUtils.error(505, "当前产品临近过期,距过期还剩" + time + "天,无法添加?");
}
}
}
}
//校验预验收是否已存在
if (bussinessTypeEntity.getActionType() == ConstantStatus.ACTION_TYPE_PREIN) {
@ -530,6 +544,34 @@ public class IoCodeTempController extends BaseController {
}
// 是否检验寄售库存
if (bussinessTypeEntity.isAdvancePreIn()) {
int preInCount = invPreProductDetailService.findCountByCode(code);
InvPreProductDetailEntity invPreinDetailEntity = invPreProductDetailService.findUseOneByCode(code);
if (preInCount <= 0) {
return ResultVOUtils.error(500, "寄售库存数量不足!");
} else {
if (StrUtil.isNotEmpty(invPreinDetailEntity.getBatchNo()) && StrUtil.isNotEmpty(addOrderRequest.getBatchNo())
&& !invPreinDetailEntity.getBatchNo().equals(addOrderRequest.getBatchNo())) {
return ResultVOUtils.error(500, "当前批次号与预验收录入批次号不匹配!");
}
if (StrUtil.isNotEmpty(orderId)) {//非首次添加
if (StrUtil.isEmpty(udiEntity.getSerialNo())) {//该单据已有该产品
//无序列号,则可能存在多个预验收入库单
IoCodeTempEntity codeTempEntity = codeTempService.findByUnique(orderId, code);
if (codeTempEntity != null) {
if (preInCount < (codeTempEntity.getMyCount() + 1)) {
return ResultVOUtils.error(500, "超出寄售存数量");
}
}
} else {
if (preInCount < 1) {
return ResultVOUtils.error(500, "寄售库存数量不足");
}
}
}
}
}
if (addOrderRequest.getFromCorp() == null) {
@ -618,7 +660,7 @@ public class IoCodeTempController extends BaseController {
//产品是否可以以使用单元入库
udiRelevanceResponses = udiRelevanceService.selectGroupByNameCode(codeEnttity.getNameCode(), false);
if (udiRelevanceResponses.size() >= 1) {
UdiRelevanceResponse udiRelevanceResponse = udiRelevanceResponses.get(0);
// UdiRelevanceResponse udiRelevanceResponse = udiRelevanceResponses.get(0);
if (udiRelevanceResponse == null) {
return ResultVOUtils.error(500, "该产品信息未维护!");
} else if (!udiRelevanceResponse.getUseDy() && udiRelevanceResponse.getDiType() == ConstantStatus.DITYPE_SYDY) {
@ -977,6 +1019,9 @@ public class IoCodeTempController extends BaseController {
public BaseResponse deleteCodesTempById(@RequestParam("id") Integer id) {
IoCodeTempEntity codeTempEntity = codeTempService.selectById(id);
if (codeTempEntity == null) {
return ResultVOUtils.error(506, "UDI码异常未录入");
}
IoOrderEntity orderEntity = orderService.findByBillNo(codeTempEntity.getOrderId());
if (codeTempEntity.getMyCount() > 1) {
codeTempEntity.setCount(codeTempEntity.getMyCount() - 1);
@ -1002,8 +1047,8 @@ public class IoCodeTempController extends BaseController {
}
boolean r1 = orderDetailBizService.isExit(orderDetailCodeEntity.getOrderIdFk());
boolean r2 = ioOrderDetailCodeService.isExit(orderDetailCodeEntity.getOrderIdFk());
boolean r1 = orderDetailBizService.isExit(orderEntity.getBillNo());
boolean r2 = ioOrderDetailCodeService.isExit(orderEntity.getBillNo());
if (!r1 && !r2) {
orderService.deleteByBillNo(orderDetailCodeEntity.getOrderIdFk());
}

@ -35,7 +35,9 @@ import com.glxp.api.util.CustomUtil;
import com.glxp.api.util.GennerOrderUtils;
import com.glxp.api.util.OrderNoTypeBean;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.scheduling.annotation.Async;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.*;
@ -88,6 +90,15 @@ public class IoOrderController extends BaseController {
if (StrUtil.isNotEmpty(filterOrderRequest.getSupInoivceSearch())) {
orderService.setInvoiceFiltes(filterOrderRequest);
}
if (filterOrderRequest.getSourceLocalType() != null) {
if (filterOrderRequest.getSourceLocalType() == 1) {
filterOrderRequest.setSourceTypes(Arrays.asList(1, 2, 3, 4, 5));
} else {
filterOrderRequest.setSourceTypes(Arrays.asList(6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 17));
}
}
String customerId = getCustomerId();
if (!customerId.equals("110")) {
filterOrderRequest.setFromCorp(customerId);
@ -315,19 +326,38 @@ public class IoOrderController extends BaseController {
if (StrUtil.isBlank(billNo)) {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL);
}
IoOrderEntity orderEntity = orderService.findByBillNo(billNo);
if (orderEntity.getStatus() == ConstantStatus.ORDER_STATUS_AUDITED) {
if (StrUtil.isNotEmpty(orderEntity.getSupplementNo()) || StrUtil.isNotEmpty(orderEntity.getUllageSupNo())) {
return ResultVOUtils.error(500, "单据已补单,无法撤回!");
}
if (orderEntity.getSyncStatus() != null && orderEntity.getSyncStatus() == 1) {
return ResultVOUtils.error(500, "单据已同步,无法撤回!");
}
boolean result = orderService.rollbackOrder(billNo);
if (result) {
return ResultVOUtils.success();
}
return ResultVOUtils.error(ResultEnum.NOT_NETWORK, "撤回失败");
} else if (orderEntity.getStatus() == ConstantStatus.ORDER_STATUS_CHECK_REW) {
orderEntity.setStatus(ConstantStatus.ORDER_STATUS_CHECK_SUCCESS);
orderService.update(orderEntity);
return ResultVOUtils.success("撤回成功!");
} else if (orderEntity.getStatus() == ConstantStatus.ORDER_STATUS_CHECK_SUCCESS) {
if (StrUtil.isBlank(billNo)) {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL);
}
boolean result = orderService.rollbackUnReOrder(billNo);
if (result) {
return ResultVOUtils.success("撤回成功!");
}
return ResultVOUtils.error(ResultEnum.NOT_NETWORK, "撤回失败");
}
return ResultVOUtils.error(ResultEnum.NOT_NETWORK, "撤回失败");
}
@ -512,6 +542,14 @@ public class IoOrderController extends BaseController {
return ResultVOUtils.success();
}
@PostMapping("/udiwms/inout/order/updateOrder")
@Log(title = "单据管理", businessType = BusinessType.UPDATE)
public BaseResponse updateOrder(@RequestBody IoOrderEntity ioOrderEntity) {
orderService.updateByBillNo(ioOrderEntity);
return ResultVOUtils.success();
}
@Resource
GennerOrderUtils gennerOrderUtils;
@Resource
@ -590,4 +628,5 @@ public class IoOrderController extends BaseController {
orderService.update(originOrder);
return ResultVOUtils.success();
}
}

@ -50,6 +50,7 @@ import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
@ -114,14 +115,15 @@ public class IoOrderDetailBizController extends BaseController {
@Log(title = "单据管理", businessType = BusinessType.INSERT)
public BaseResponse addBizProduct(@RequestBody AddBizProductReqeust addBizProductReqeust) {
SystemParamConfigEntity systemParamConfigEntity = systemParamConfigService.selectByParamKey("vail_product_cert");
boolean isVailCert = systemParamConfigEntity.getParamValue().equals("1") ? true : false;
// boolean isVailCert = systemParamConfigEntity.getParamValue().equals("1") ? true : false;
AuthAdmin authAdmin = getUser();
if (addBizProductReqeust.getRelId() == null && CollUtil.isEmpty(addBizProductReqeust.getDatas()))
return ResultVOUtils.error(500, "未选择产品信息");
if (addBizProductReqeust.getOrderEntity() == null)
return ResultVOUtils.error(500, "未指定订单");
IoOrderEntity orderEntity = addBizProductReqeust.getOrderEntity();
if (StrUtil.isEmpty(orderEntity.getBillNo())) {
IoOrderEntity isExit = orderService.findByBillNo(orderEntity.getBillNo());
if (StrUtil.isEmpty(orderEntity.getBillNo()) || isExit == null) {
BasicBussinessTypeEntity bussinessTypeEntity = basicBussinessTypeService.findByAction(orderEntity.getAction());
InvWarehouseEntity invWarehouseEntity = invWarehouseService.findByInvSubByCode(orderEntity.getInvCode());
String orderNo = gennerOrderUtils.createScOrderNo(new OrderNoTypeBean(Constant.SCAN_ORDER + StrUtil.trimToEmpty(bussinessTypeEntity.getPrefix()), "yyyyMMdd"));
@ -157,9 +159,9 @@ public class IoOrderDetailBizController extends BaseController {
UdiRelevanceResponse udiRelevanceResponse = udiRelevanceService.selectSupGroupById(item.getRelId());
// todo 查询产品是否已经通过认证
// if (isVailCert && udiRelevanceResponse.isNeedCert()) {
// SupProductEntity supProductEntity = supProductService.findByRelIdFk(udiRelevanceResponse.getId() + "");
// BasicBussinessTypeEntity bussinessTypeEntity = basicBussinessTypeService.findByAction(orderEntity.getAction());
// if (bussinessTypeEntity.getCheckCertExpire() == 2 && udiRelevanceResponse.isNeedCert()) {
// SupProductEntity supProductEntity = supProductService.findByManufactury(udiRelevanceResponse.getCpmctymc(), udiRelevanceResponse.getManufactory(), "");
// if (supProductEntity != null && (supProductEntity.getAuditStatus() == ConstantStatus.AUDIT_PASS || supProductEntity.getAuditStatus() == ConstantStatus.AUDIT_CHANGE_PASS)) {
//
// } else {
@ -472,7 +474,19 @@ public class IoOrderDetailBizController extends BaseController {
@PostMapping("/udiwms/inout/order/delBizProduct")
@Log(title = "单据管理", businessType = BusinessType.DELETE)
public BaseResponse delBizProduct(@RequestBody DeleteRequest deleteRequest) {
return orderDetailBizService.deleteById(Integer.parseInt(deleteRequest.getId())) > 0 ? ResultVOUtils.success("删除成功!") : ResultVOUtils.error(500, "删除失败");
IoOrderDetailBizEntity orderDetailBizEntity = orderDetailBizService.selectById(Integer.parseInt(deleteRequest.getId()));
int result = orderDetailBizService.deleteById(Integer.parseInt(deleteRequest.getId()));
if (result > 0) {
boolean r1 = orderDetailBizService.isExit(orderDetailBizEntity.getOrderIdFk());
boolean r2 = orderDetailCodeService.isExit(orderDetailBizEntity.getOrderIdFk());
if (!r1 && !r2) {
orderService.deleteByBillNo(orderDetailBizEntity.getOrderIdFk());
}
return ResultVOUtils.success("删除成功!");
}
return ResultVOUtils.error(500, "删除失败");
}
@ -559,11 +573,40 @@ public class IoOrderDetailBizController extends BaseController {
ioOrderInvoiceEntity.setProductDate(ioOrderDetailBizEntity.getProductDate());
ioOrderInvoiceEntity.setExpireDate(ioOrderDetailBizEntity.getExpireDate());
ioOrderInvoiceEntity.setBizIdFk(ioOrderDetailBizEntity.getId());
ioOrderInvoiceEntity.setCreateTime(new Date());
ioOrderInvoiceEntity.setUpdateTime(new Date());
boolean b = ioOrderInvoiceService.insertInvoice(ioOrderInvoiceEntity);
return ResultVOUtils.success("成功");
}
/**
*
*
* @param orderDetailBizRequest
* @return
*/
@GetMapping("/udiwms/inout/bizDetail/filterBizOrderList")
public BaseResponse filterBizOrderList(FilterOrderDetailBizRequest orderDetailBizRequest) {
List<IoOrderDetailBizResponse> list = orderDetailBizService.filterList(orderDetailBizRequest);
for (IoOrderDetailBizResponse ioOrderDetailBizResponse : list) {
String msg = "";
IoOrderInvoiceEntity ioOrderInvoiceEntity = new IoOrderInvoiceEntity();
ioOrderInvoiceEntity.setOrderIdFk(ioOrderDetailBizResponse.getOrderIdFk());
List<IoOrderInvoiceEntity> ioOrderInvoiceEntityList = ioOrderInvoiceService.selectOrderInvoice(ioOrderInvoiceEntity);
for (IoOrderInvoiceEntity obj : ioOrderInvoiceEntityList) {
if (StrUtil.isNotEmpty(obj.getInvoiceCode())) {
msg += "," + obj.getInvoiceCode();
}
}
if (msg.length() > 1) {
msg = msg.substring(1);
}
ioOrderDetailBizResponse.setInvoiceCodes(msg);
}
PageInfo<IoOrderDetailBizResponse> pageInfo = new PageInfo<>(list);
return ResultVOUtils.page(pageInfo);
}
}

@ -23,6 +23,7 @@ import com.glxp.api.req.inout.FilterOrderDetailResultRequest;
import com.glxp.api.req.inout.ReviewFinishRequest;
import com.glxp.api.req.inout.ReviewSpmsRequest;
import com.glxp.api.req.inout.UpdateExportStatusRequest;
import com.glxp.api.req.sync.SpsSyncDataRequest;
import com.glxp.api.res.PageSimpleResponse;
import com.glxp.api.res.inout.AcceptOrderResponse;
import com.glxp.api.res.inout.IoOrderDetailResultResponse;
@ -377,7 +378,6 @@ public class IoOrderReviewController extends BaseController {
return false;
}
//前端页面清空,重新验收
@AuthRuleAnnotation("")
@PostMapping("/udiwms/stock/order/acceptClear")
public BaseResponse acceptClear(@RequestBody AcceptOrderResponse acceptOrderEntity) {
@ -400,13 +400,6 @@ public class IoOrderReviewController extends BaseController {
orderService.update(orderEntity);
redisUtil.del(ConstantStatus.REDIS_BILLNO + orderEntity.getBillNo());
redisUtil.del(ConstantStatus.REDIS_BILLNO_CODES + orderEntity.getBillNo());
if (orderEntity.getFromType() == ConstantStatus.FROM_UDISP) {
ReviewFinishRequest reviewFinishRequest = new ReviewFinishRequest();
reviewFinishRequest.setOrderId(orderEntity.getBillNo());
spGetHttp.reviewOrder(reviewFinishRequest);
}
//验收完成->进入流程
ioCheckInoutService.checkSecond(orderEntity);
return ResultVOUtils.success("更新成功");
@ -415,7 +408,7 @@ public class IoOrderReviewController extends BaseController {
//前端第二次次验收
public BaseResponse thirdUpdateReview(AuthAdmin authAdmin, IoOrderEntity orderEntity) {
orderEntity.setStatus(ConstantStatus.ORDER_STATUS_CHECK_REW);
orderEntity.setReviewUser(authAdmin.getId() + "");
orderEntity.setCheckUser(authAdmin.getId() + "");
orderEntity.setUpdateTime(new Date());
orderEntity.setCheckTime(new Date());
orderEntity.setDeliveryStatus(ConstantStatus.ORDER_DELIVERY_STATUS_ED);
@ -497,4 +490,5 @@ public class IoOrderReviewController extends BaseController {
return ResultVOUtils.success(acceptOrderEntity);
}
}

@ -49,53 +49,53 @@ public class ioCodeRelController {
//判断码有没有重复
List<IoCodeRelEntity> list = ioCodeRelServicec.selectIoCodeRelByCode("", code);
if (list.size() > 0) {
return ResultVOUtils.error(999, "此码已做关联!");
List<IoCodeRelEntity> list=ioCodeRelServicec.selectIoCodeRelByCode("",code);
if(list.size()>0){
return ResultVOUtils.error(999,"此码已做关联!");
}
if (StrUtil.isNotEmpty(code)) {
UdiEntity udiEntity = FilterUdiUtils.getUdi(code);
UdiProductEntity udiProductEntity = udiProductService.findByNameCode(udiEntity.getUdi());
if (udiProductEntity.getPackLevel() != null) {
if (Integer.valueOf(udiProductEntity.getPackLevel()) > 1) {
if(StrUtil.isNotEmpty(code)){
UdiEntity udiEntity=FilterUdiUtils.getGS1Udi(code);
UdiProductEntity udiProductEntity=udiProductService.findByNameCode(udiEntity.getUdi());
if(udiProductEntity.getPackLevel()!=null){
if(Integer.valueOf(udiProductEntity.getPackLevel())>1){
return ResultVOUtils.success(udiProductEntity.getBhxjcpbm());
}
}
}
return ResultVOUtils.error(999, "扫码错误!");
return ResultVOUtils.error(999,"扫码错误!");
}
@GetMapping("/udi/ioCode/Rel/checkLowProduct")
@Log(title = "单据管理", businessType = BusinessType.INSERT)
public BaseResponse checkLowProduct(String upCode, String lowCode) {
public BaseResponse checkLowProduct(String upCode,String lowCode) {
UdiProductEntity udiProductEntity = new UdiProductEntity();
UdiProductEntity udiProductEntity=new UdiProductEntity();
//查询上级产品信息
if (StrUtil.isNotEmpty(upCode)) {
UdiEntity udiEntity = FilterUdiUtils.getGS1Udi(upCode);
udiProductEntity = udiProductService.findByNameCode(udiEntity.getUdi());
if(StrUtil.isNotEmpty(upCode)){
UdiEntity udiEntity=FilterUdiUtils.getGS1Udi(upCode);
udiProductEntity=udiProductService.findByNameCode(udiEntity.getUdi());
}
//判断码有没有重复
List<IoCodeRelEntity> list = ioCodeRelServicec.selectIoCodeRelByCode(lowCode, upCode);
if (list.size() > 0) {
return ResultVOUtils.error(999, "此码已做关联!");
List<IoCodeRelEntity> list=ioCodeRelServicec.selectIoCodeRelByCode(lowCode,upCode);
if(list.size()>0){
return ResultVOUtils.error(999,"此码已做关联!");
}
//判断条数是否超出
Long count = ioCodeRelServicec.selectIoCodeRelCount(upCode);
if (count >= udiProductEntity.getBhxjsl()) {
return ResultVOUtils.error(999, "数量超出!");
Long count=ioCodeRelServicec.selectIoCodeRelCount(upCode);
if(count>=udiProductEntity.getBhxjsl()){
return ResultVOUtils.error(999,"数量超出!");
}
//查询下级产品信息
if (StrUtil.isNotEmpty(lowCode)) {
UdiEntity udiEntity = FilterUdiUtils.getGS1Udi(lowCode);
UdiProductEntity udiProductEntity1 = udiProductService.findByNameCode(udiEntity.getUdi());
if (udiProductEntity != null) {
if (udiProductEntity1.getNameCode().equals(udiProductEntity.getBhxjcpbm())) {
IoCodeRelEntity ioCodeRelEntity = new IoCodeRelEntity();
if(StrUtil.isNotEmpty(lowCode)){
UdiEntity udiEntity=FilterUdiUtils.getGS1Udi(lowCode);
UdiProductEntity udiProductEntity1=udiProductService.findByNameCode(udiEntity.getUdi());
if(udiProductEntity!=null){
if(udiProductEntity1.getNameCode().equals(udiProductEntity.getBhxjcpbm())){
IoCodeRelEntity ioCodeRelEntity=new IoCodeRelEntity();
ioCodeRelEntity.setCode(lowCode);
ioCodeRelEntity.setParentCode(upCode);
ioCodeRelEntity.setNameCode(udiProductEntity1.getNameCode());
@ -108,12 +108,12 @@ public class ioCodeRelController {
ioCodeRelEntity.setUpdateTime(new Date());
ioCodeRelServicec.insert(ioCodeRelEntity);
return ResultVOUtils.success();
} else {
return ResultVOUtils.error(999, "该条码不属于下级产品!");
}else{
return ResultVOUtils.error(999,"该条码不属于下级产品!");
}
}
}
return ResultVOUtils.error(999, "");
return ResultVOUtils.error(999,"");
}
@GetMapping("/udi/ioCode/Rel/delectList")
@ -131,13 +131,13 @@ public class ioCodeRelController {
@GetMapping("/udi/ioCode/Rel/del")
@Log(title = "单据管理", businessType = BusinessType.DELETE)
public BaseResponse del(String code, String parentCode) {
public BaseResponse del(String code,String parentCode) {
int count = ioCodeRelServicec.delIoCodeRel(code, parentCode);
if (count > 0) {
int count=ioCodeRelServicec.delIoCodeRel(code,parentCode);
if(count>0){
return ResultVOUtils.success("删除成功");
} else {
return ResultVOUtils.error(999, "删除失败");
}else{
return ResultVOUtils.error(999,"删除失败");
}
}

@ -5,9 +5,11 @@ import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.StrUtil;
import com.github.pagehelper.PageInfo;
import com.glxp.api.annotation.AuthRuleAnnotation;
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;
@ -160,6 +162,7 @@ public class InvProductController extends BaseController {
* @return
*/
@PostMapping("/spms/inv/product/delete")
@Log(title = "库存查询", businessType = BusinessType.DELETE)
public BaseResponse deleteInvProduct(@RequestBody DeleteRequest deleteRequest, BindingResult bindingResult) {
if (bindingResult.hasErrors()) {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());

@ -5,6 +5,7 @@ import com.glxp.api.entity.inout.IoOrderDetailBizEntity;
import com.glxp.api.req.inout.FilterOrderDetailBizRequest;
import com.glxp.api.res.inout.IoOrderDetailBizResponse;
import com.glxp.api.res.inout.IoOrderInvoiceResponse;
import org.apache.ibatis.annotations.Param;
import java.util.List;
@ -20,4 +21,15 @@ public interface IoOrderDetailBizDao extends BaseMapperPlus<IoOrderDetailBizDao,
List<IoOrderInvoiceResponse> filterListInv(FilterOrderDetailBizRequest orderDetailBizRequest);
/**
*
*
* @param orderId
* @param relId ID
* @param batchNo
* @param productDate
* @param expireDate
* @return
*/
IoOrderDetailBizEntity selectOrderDetailBiz(@Param("orderId") String orderId, @Param("relId") Long relId, @Param("batchNo") String batchNo, @Param("productDate") String productDate, @Param("expireDate") String expireDate);
}

@ -29,8 +29,6 @@ public interface IoOrderDetailResultDao extends BaseMapperPlus<IoOrderDetailBizD
/**
*
*
* @param beginOfDay
* @param endOfDay
* @return
*/
List<IoOrderDetailResultEntity> selectStatDataByTime(@Param("date") String date);

@ -5,9 +5,12 @@ import com.glxp.api.dao.BaseMapperPlus;
import com.glxp.api.entity.inout.IoOrderInvoiceEntity;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
@Mapper
public interface IoOrderInvoiceMapper extends BaseMapperPlus<IoOrderInvoiceMapper, IoOrderInvoiceEntity, IoOrderInvoiceEntity> {
boolean insertInvoice(IoOrderInvoiceEntity ioOrderInvoiceEntity);
List<IoOrderInvoiceEntity> selectOrderInvoice(IoOrderInvoiceEntity ioOrderInvoiceEntity);
}

@ -111,6 +111,10 @@ public class IoOrderEntity {
@TableField(value = "auditTime")
private Date auditTime;
@TableField(value = "checkUser")
private String checkUser;
@TableField(value = "checkTime")
private Date checkTime;
@ -227,12 +231,16 @@ public class IoOrderEntity {
@TableField(value = "processStatus")
private Integer processStatus; //退货单据处理状态
@TableField(value = "inCodeStatus")
private int inCodeStatus; //内部码生成状态
private Integer inCodeStatus; //内部码生成状态
@TableField(value = "relKey")
private String relKey; //关联单据唯一键
@TableField(value = "suppleCount")
private Integer suppleCount; //补单次数
@TableField(value = "checkStatus")
private Integer checkStatus; //确认状态
@TableField(value = "checkPreInOrders")
private String checkPreInOrders;

@ -136,6 +136,7 @@ public class FilterOrderRequest extends ListPageRequest {
* checkedError
* checkSuccess
* audited
* * preInOrder
*/
private String statusType;
@ -147,7 +148,6 @@ public class FilterOrderRequest extends ListPageRequest {
* supInvoice
* norDetail
* preDetail
* preInOrder
*/
private String vueType; //页面类型
@ -155,6 +155,9 @@ public class FilterOrderRequest extends ListPageRequest {
private Integer orderType;
private Integer syncStatus;
//单据来源: 1:手工单2自动单
private Integer sourceLocalType;
/**
*
*/
@ -170,6 +173,8 @@ public class FilterOrderRequest extends ListPageRequest {
*/
private List<Integer> dealStatuses;
private List<Integer> sourceTypes;
private List<String> orderIds;

@ -1,8 +1,15 @@
package com.glxp.api.req.inout;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.glxp.api.entity.inout.IoOrderDetailResultEntity;
import com.glxp.api.entity.inout.IoOrderInvoiceEntity;
import com.glxp.api.entity.purchase.SupCertSetEntity;
import lombok.Data;
import java.util.Date;
import java.util.List;
/**
* @author : zhangsan
@ -60,6 +67,8 @@ public class IoOrderInvoiceRequest {
private String remark;
private Long bizIdFk;
public static final String COL_ID = "id";
public static final String COL_ORDERIDFK = "orderIdFk";

@ -157,5 +157,12 @@ public class IoOrderDetailBizResponse {
private boolean checkSuccess;
private String filePath;
private String checkFileName;
private String invoiceCodes;
}

@ -211,8 +211,10 @@ public class IoChangeInoutService {
outOrder.setCustomerId(Constant.SYSTEM_CUSTOMER_ID);
InvWarehouseEntity curInv = invWarehouseService.findByInvSubByCode(orderEntity.getInvCode());
InvWarehouseEntity upInv = invWarehouseService.findByInvSubByCode(curInv.getParentCode());
if (upInv != null) {
outOrder.setFromInvCode(upInv.getCode());
outOrder.setFromDeptCode(upInv.getParentId());
}
//原先流程---使用流转单据默认仓库
// outOrder.setFromInvCode(bussinessChangeTypeEntity.getDefaultInvCode());
// outOrder.setFromDeptCode(bussinessChangeTypeEntity.getDefaultDeptCode());

@ -16,4 +16,7 @@ public interface IoOrderInvoiceService {
boolean insertInvoice(IoOrderInvoiceEntity ioOrderInvoiceEntity);
List<IoOrderInvoiceEntity> selectOrderInvoice(IoOrderInvoiceEntity ioOrderInvoiceEntity);
}

@ -121,4 +121,7 @@ public interface IoOrderService {
* @return
*/
BaseResponse submitToThrSys(String billNo);
boolean isExitByAction(String action);
}

@ -1,7 +1,9 @@
package com.glxp.api.service.inout.impl;
import cn.hutool.core.collection.CollUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.pagehelper.PageHelper;
import com.glxp.api.req.inout.IoCodeLostRequest;
import com.glxp.api.res.inout.IoCodeLostResponse;
import org.springframework.stereotype.Service;
@ -13,6 +15,7 @@ import com.glxp.api.entity.inout.IoCodeLostEntity;
import com.glxp.api.service.inout.IoCodeLostService;
import org.springframework.transaction.annotation.Transactional;
import java.util.Collections;
import java.util.List;
@Service
@ -25,13 +28,24 @@ public class IoCodeLostServiceImpl extends ServiceImpl<IoCodeLostMapper, IoCodeL
@Override
public List<IoCodeLostResponse> selectLost(IoCodeLostRequest ioCodeLostRequest) {
if (ioCodeLostRequest == null) {
return Collections.emptyList();
}
if (ioCodeLostRequest.getPage() != null) {
int offset = (ioCodeLostRequest.getPage() - 1) * ioCodeLostRequest.getLimit();
PageHelper.offsetPage(offset, ioCodeLostRequest.getLimit());
}
return codeLostEntityMapper.selectLost(ioCodeLostRequest);
}
@Override
public IoCodeLostEntity findByCode(String code) {
return codeLostEntityMapper.selectOne(new QueryWrapper<IoCodeLostEntity>().eq("code", code));
List<IoCodeLostEntity> codeLostEntities = codeLostEntityMapper.selectList(new QueryWrapper<IoCodeLostEntity>().eq("code", code).last("limit 1"));
if (CollUtil.isNotEmpty(codeLostEntities)) {
return codeLostEntities.get(0);
}
return null;
}
@Override

@ -73,6 +73,8 @@ public class IoOrderDetailBizServiceImpl implements IoOrderDetailBizService {
@Override
public boolean isExit(String billNo) {
if (billNo == null)
return false;
return ioOrderDetailBizDao.exists(new QueryWrapper<IoOrderDetailBizEntity>().eq("orderIdFk", billNo));
}
@ -85,16 +87,7 @@ public class IoOrderDetailBizServiceImpl implements IoOrderDetailBizService {
@Override
public IoOrderDetailBizEntity findByUnique(String orderId, Long relId, String bacthNo, String productDate, String expireDate) {
return ioOrderDetailBizDao.selectOne(new QueryWrapper<IoOrderDetailBizEntity>()
.eq("orderIdFk", orderId).eq("bindRlFk", relId)
.eq(StrUtil.isNotEmpty(bacthNo), "batchNo", bacthNo)
.isNull(StrUtil.isEmpty(bacthNo), "batchNo")
.eq(StrUtil.isNotEmpty(productDate), "productDate", productDate)
.isNull(StrUtil.isEmpty(productDate), "productDate")
.eq(StrUtil.isNotEmpty(expireDate), "expireDate", expireDate)
.isNull(StrUtil.isEmpty(expireDate), "expireDate")
);
return ioOrderDetailBizDao.selectOrderDetailBiz(orderId, relId, bacthNo, productDate, expireDate);
}
@Override
@ -138,6 +131,12 @@ public class IoOrderDetailBizServiceImpl implements IoOrderDetailBizService {
@Override
public List<IoOrderInvoiceResponse> filterListInv(FilterOrderDetailBizRequest orderDetailBizRequest) {
if (null == orderDetailBizRequest) {
return Collections.emptyList();
}
if (null != orderDetailBizRequest.getPage() && null != orderDetailBizRequest.getLimit()) {
PageHelper.offsetPage((orderDetailBizRequest.getPage() - 1) * orderDetailBizRequest.getLimit(), orderDetailBizRequest.getLimit());
}
return ioOrderDetailBizDao.filterListInv(orderDetailBizRequest);
}

@ -11,6 +11,7 @@ import com.glxp.api.service.inout.IoOrderInvoiceService;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.Date;
import java.util.List;
@Service
@ -34,6 +35,7 @@ public class IoOrderInvoiceServiceImpl implements IoOrderInvoiceService {
public boolean updateByInvId(IoOrderInvoiceRequest ioOrderInvoiceRequest) {
IoOrderInvoiceEntity ioOrderInvoiceEntity = new IoOrderInvoiceEntity();
BeanUtils.copyProperties(ioOrderInvoiceRequest, ioOrderInvoiceEntity);
ioOrderInvoiceEntity.setUpdateTime(new Date());
return this.ioOrderInvoiceMapper.updateById(ioOrderInvoiceEntity) > 0;
}
@ -41,4 +43,9 @@ public class IoOrderInvoiceServiceImpl implements IoOrderInvoiceService {
public boolean insertInvoice(IoOrderInvoiceEntity ioOrderInvoiceEntity) {
return ioOrderInvoiceMapper.insert(ioOrderInvoiceEntity) > 0;
}
@Override
public List<IoOrderInvoiceEntity> selectOrderInvoice(IoOrderInvoiceEntity ioOrderInvoiceEntity) {
return ioOrderInvoiceMapper.selectOrderInvoice(ioOrderInvoiceEntity);
}
}

@ -153,6 +153,7 @@ public class IoOrderServiceImpl implements IoOrderService {
return orderDao.selectList(new QueryWrapper<IoOrderEntity>().eq("action", action).eq("status", status).gt("updateTime", lastUpdateTime));
}
@Override
public int insertOrder(IoOrderEntity orderEntity) {
orderEntity.setId(null);
@ -421,8 +422,8 @@ public class IoOrderServiceImpl implements IoOrderService {
}
orderEntity.setDealStatus(ConstantStatus.ORDER_DEAL_POST);
orderEntity.setStatus(ConstantStatus.ORDER_STATUS_CHECK_SUCCESS);
orderEntity.setDealStatus(ConstantStatus.ORDER_DEAL_REW);
orderEntity.setStatus(ConstantStatus.ORDER_STATUS_CHECK_REW);
orderEntity.setUpdateTime(new Date());
update(orderEntity);
return true;
@ -590,6 +591,7 @@ public class IoOrderServiceImpl implements IoOrderService {
.gt("spUse", 1).eq("actionType", 1).eq("enable", true));
List<String> actions1 = null;
actions1 = bussinessTypeEntities.stream().map(BasicBussinessTypeEntity::getAction).collect(Collectors.toList());
if (CollUtil.isNotEmpty(actions1))
filterOrderRequest.setInvoiceActions1(actions1);
List<BasicBussinessTypeEntity> bussinessTypeEntities2 = basicBussinessTypeDao.selectList(new QueryWrapper<BasicBussinessTypeEntity>()
@ -598,6 +600,7 @@ public class IoOrderServiceImpl implements IoOrderService {
.gt("spUse", 0).eq("actionType", 1).eq("enable", true));
List<String> actions2 = null;
actions2 = bussinessTypeEntities2.stream().map(BasicBussinessTypeEntity::getAction).collect(Collectors.toList());
if (CollUtil.isNotEmpty(actions2))
filterOrderRequest.setInvoiceActions2(actions2);
}
@ -737,6 +740,11 @@ public class IoOrderServiceImpl implements IoOrderService {
}
}
@Override
public boolean isExitByAction(String action) {
return orderDao.exists(new QueryWrapper<IoOrderEntity>().eq("action", action));
}
/**
*
*

@ -4,7 +4,6 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.github.pagehelper.PageHelper;
import com.glxp.api.dao.inout.ReceiveDao;
import com.glxp.api.dao.inout.ReceiveDetailDao;
import com.glxp.api.entity.basic.BasicProductsEntity;
import com.glxp.api.entity.inout.PurReceiveDetailEntity;
import com.glxp.api.entity.inout.PurReceiveEntity;
import com.glxp.api.req.inout.FilterReceiveRequest;
@ -68,6 +67,4 @@ public class ReceiveServiceImpl implements ReceiveService {
}
}

@ -1,5 +1,6 @@
package com.glxp.api.service.inv;
import com.glxp.api.entity.inv.InvPreInProductDetailEntity;
import com.glxp.api.entity.inv.InvPreProductDetailEntity;
import com.glxp.api.entity.inv.InvProductDetailEntity;
import com.glxp.api.req.inv.FilterInvPreProductDetailRequest;
@ -49,5 +50,9 @@ public interface InvPreProductDetailService {
*/
boolean deleteInvPreProductDetail(FilterInvProductDetailRequest detailRequest);
int findCountByCode(String code);
InvPreProductDetailEntity findUseOneByCode(String code);
}

@ -45,4 +45,6 @@ public interface InvPreProductService {
* @return
*/
InvPreProductEntity findById(String id);
boolean isExitByRelId(String relId);
}

@ -1,6 +1,8 @@
package com.glxp.api.service.inv;
import com.glxp.api.entity.inv.InvPreInProductDetailEntity;
import com.glxp.api.entity.inv.InvPreProductDetailEntity;
import com.glxp.api.entity.inv.InvPreinDetailEntity;
import com.glxp.api.req.inv.FilterInvPreProductDetailRequest;
import com.glxp.api.req.inv.FilterInvProductDetailRequest;
import com.glxp.api.res.inv.InvPreProductDetailResponse;

@ -81,4 +81,6 @@ public interface InvProductService {
*/
List<InvProductResponse> filterProductNames(FilterInvProductRequest filterInvProductRequest);
boolean isExitByRelId(String relId);
}

@ -10,12 +10,15 @@ import com.glxp.api.dao.basic.BasicBussinessTypeDao;
import com.glxp.api.dao.basic.UdiProductDao;
import com.glxp.api.dao.inout.IoOrderDao;
import com.glxp.api.dao.inv.InvPreInProductDetailDao;
import com.glxp.api.dao.inv.InvPreProductDetailDao;
import com.glxp.api.entity.basic.BasicBussinessTypeEntity;
import com.glxp.api.entity.inout.IoOrderEntity;
import com.glxp.api.entity.inv.InvPreInProductDetailEntity;
import com.glxp.api.entity.inv.InvPreinDetailEntity;
import com.glxp.api.req.inv.FilterInvPreProductDetailRequest;
import com.glxp.api.req.inv.FilterInvProductDetailRequest;
import com.glxp.api.res.inv.InvPreProductDetailResponse;
import com.glxp.api.service.inv.InvPreProductDetailService;
import com.glxp.api.service.inv.InvPreinProductDetailService;
import com.glxp.api.util.DateUtil;
import lombok.extern.slf4j.Slf4j;

@ -4,6 +4,7 @@ import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.github.pagehelper.PageHelper;
import com.glxp.api.constant.ConstantStatus;
import com.glxp.api.constant.ConstantType;
import com.glxp.api.dao.basic.BasicBussinessTypeDao;
import com.glxp.api.dao.basic.UdiProductDao;
@ -11,6 +12,7 @@ import com.glxp.api.dao.inout.IoOrderDao;
import com.glxp.api.dao.inv.InvPreProductDetailDao;
import com.glxp.api.entity.basic.BasicBussinessTypeEntity;
import com.glxp.api.entity.inout.IoOrderEntity;
import com.glxp.api.entity.inv.InvPreInProductDetailEntity;
import com.glxp.api.entity.inv.InvPreProductDetailEntity;
import com.glxp.api.entity.inv.InvProductDetailEntity;
import com.glxp.api.req.inv.FilterInvPreProductDetailRequest;
@ -132,4 +134,31 @@ public class InvPreProductDetailServiceImpl implements InvPreProductDetailServic
return invPreProductDetailDao.deleteInvPreProductDetail(detailRequest);
}
@Override
public int findCountByCode(String code) {
List<InvPreProductDetailEntity> invPreinDetailEntities = invPreProductDetailDao.selectList(new QueryWrapper<InvPreProductDetailEntity>().eq("code", code));
int count = 0;
if (CollUtil.isNotEmpty(invPreinDetailEntities)) {
for (InvPreProductDetailEntity invProductDetailEntity : invPreinDetailEntities) {
if (invProductDetailEntity.getMainAction().equals(ConstantType.TYPE_PUT))
count = count + invProductDetailEntity.getReCount();
else {
count = count - invProductDetailEntity.getReCount();
}
}
}
return count;
}
@Override
public InvPreProductDetailEntity findUseOneByCode(String code) {
List<InvPreProductDetailEntity> invPreinDetailEntities = invPreProductDetailDao.selectList(new QueryWrapper<InvPreProductDetailEntity>().eq("code", code)
.eq("status", ConstantStatus.INVIN_IN).last("limit 1"));
if (CollUtil.isNotEmpty(invPreinDetailEntities)) {
return invPreinDetailEntities.get(0);
}
return null;
}
}

@ -74,4 +74,11 @@ public class InvPreProductServiceImpl implements InvPreProductService {
return invPreProductDao.selectById(id);
}
@Override
public boolean isExitByRelId(String relId) {
return invPreProductDao.exists(new QueryWrapper<InvPreProductEntity>().eq("relIdFk", relId));
}
}

@ -121,4 +121,10 @@ public class InvProductServiceImpl implements InvProductService {
return invProductDao.filterProductNames(filterInvProductRequest);
}
@Override
public boolean isExitByRelId(String relId) {
return invProductDao.exists(new QueryWrapper<InvProductEntity>().eq("relIdFk", relId));
}
}

@ -9,6 +9,7 @@
(select employeeName from auth_user au where au.id = io.createUser) createUserName,
(select employeeName from auth_user au2 where au2.id = io.updateUser) updateUserName,
(select employeeName from auth_user au3 where au3.id = io.reviewUser) reviewUserName,
(select employeeName from auth_user au4 where au4.id = io.checkUser) checkUserName,
(select name from auth_dept ad2 where ad2.code = io.fromDeptCode) fromDeptName,
(select name from auth_warehouse aw2 where aw2.code = io.fromInvCode) fromInvName,
(select name from basic_corp bc where bc.erpId = io.fromCorp) fromCorpName,
@ -64,6 +65,14 @@
#{item}
</foreach>
</if>
<if test="sourceTypes != null and sourceTypes.size() != 0">
AND fromType in
<foreach collection="sourceTypes" index="index" item="item" open="(" close=")" separator=",">
#{item}
</foreach>
</if>
<if test="statuses != null and statuses.size() != 0">
AND status in
<foreach collection="statuses" index="index" item="item" open="(" close=")" separator=",">
@ -90,22 +99,40 @@
</if>
<if test="supInoivceSearch != null">
<if test="invoiceActions1 != null and invoiceActions1.size() != 0">
<if test="invoiceActions1 != null and invoiceActions2 == null">
AND ((`action` in
<foreach collection="invoiceActions1" index="index" item="item" open="(" close=")" separator=",">
#{item}
</foreach>
and status = 10)
</if>
<if test="invoiceActions2 != null and invoiceActions2.size() != 0">
or ((
<if test="invoiceActions1 == null and invoiceActions2 != null">
or (
`action` in
<foreach collection="invoiceActions2" index="index" item="item" open="(" close=")" separator=",">
#{item}
</foreach>) and status = 7
</foreach>
and status = 7
))
</if>
<if test="invoiceActions1 != null and invoiceActions2 != null">
AND ((`action` in
<foreach collection="invoiceActions1" index="index" item="item" open="(" close=")" separator=",">
#{item}
</foreach>
and status = 10)
or (
`action` in
<foreach collection="invoiceActions2" index="index" item="item" open="(" close=")" separator=",">
#{item}
</foreach>
and status = 7)
)
</if>
</if>
</where>
order by createTime desc
</select>
@ -151,7 +178,13 @@
AND busType = #{busType}
</if>
<if test="startTime != null and startTime != '' and endTime != null and endTime != ''">
AND date_format(createTime, '%Y-%m-%d') between date_format(#{startTime}, '%Y-%m-%d') and date_format(#{endTime}, '%Y-%m-%d')
AND date_format(createTime, '%Y-%m-%d') between date_format(#{startTime}, '%Y-%m-%d') and
date_format(#{endTime}, '%Y-%m-%d')
</if>
<if test="lastUpdateTime != null and lastUpdateTime != ''">
<![CDATA[
and DATE_FORMAT(updateTime, '%Y-%m-%d %H:%i:%S') >= DATE_FORMAT(#{lastUpdateTime}, '%Y-%m-%d %H:%i:%S')
]]>
</if>
</where>
order by createTime desc
@ -183,6 +216,7 @@
(select employeeName from auth_user au where au.id = io.createUser) createUserName,
(select employeeName from auth_user au2 where au2.id = io.updateUser) updateUserName,
(select employeeName from auth_user au3 where au3.id = io.reviewUser) reviewUserName,
(select employeeName from auth_user au4 where au4.id = io.checkUser) checkUserName,
(select name from auth_dept ad2 where ad2.code = io.fromDeptCode) fromDeptName,
(select name from auth_warehouse aw2 where aw2.code = io.fromInvCode) fromInvName,
(select name from basic_corp bc where bc.erpId = io.fromCorp) fromCorpName,
@ -206,7 +240,8 @@
AND invCode = #{invCode}
</if>
<if test="startTime != null and startTime != '' and endTime != null and endTime != ''">
AND date_format(createTime, '%Y-%m-%d') between date_format(#{startTime}, '%Y-%m-%d') and date_format(#{endTime}, '%Y-%m-%d')
AND date_format(createTime, '%Y-%m-%d') between date_format(#{startTime}, '%Y-%m-%d') and
date_format(#{endTime}, '%Y-%m-%d')
</if>
<if test="startTime != null and startTime != '' and (endTime == null or endTime == '')">
AND date_format(createTime, '%Y-%m-%d') >= date_format(#{startTime}, '%Y-%m-%d')

@ -46,4 +46,34 @@
</where>
GROUP BY ic.id
</select>
<select id="selectOrderDetailBiz" resultType="com.glxp.api.entity.inout.IoOrderDetailBizEntity">
select * from io_order_detail_biz
<where>
<if test="orderId != null and orderId != ''">
AND orderIdFk = #{orderId}
</if>
<if test="relId != null">
AND bindRlFk = #{relId}
</if>
<if test="batchNo != null and batchNo != ''">
AND batchNo = #{batchNo}
</if>
<if test="batchNo == null || batchNo == ''">
AND (batchNo is null or batchNo = '')
</if>
<if test="productDate != null and productDate != ''">
AND productDate = #{productDate}
</if>
<if test="productDate == null or productDate == ''">
AND (productDate is null or productDate = '')
</if>
<if test="expireDate != null and expireDate != ''">
AND expireDate = #{expireDate}
</if>
<if test="expireDate == null || expireDate == ''">
AND (expireDate is null or expireDate = '')
</if>
</where>
</select>
</mapper>

@ -39,7 +39,7 @@
AND a2.nameCode = #{nameCode}
</if>
<if test="spec != null and spec != ''">
AND a2.spec = #{spec}
AND a2.spec like concat('%', #{spec}, '%')
</if>
<if test="fromCorp != null and fromCorp != ''">
AND a1.fromCorp = #{fromCorp}
@ -48,19 +48,19 @@
AND b1.name = #{fromCorpName}
</if>
<if test="manufacturer != null and manufacturer != ''">
AND a2.manufacturer = #{manufacturer}
AND a2.manufacturer like concat('%', #{manufacturer}, '%')
</if>
<if test="zczbhhzbapzbh != null and zczbhhzbapzbh != ''">
AND a2.certCode = #{zczbhhzbapzbh}
AND a2.certCode like concat('%', #{zczbhhzbapzbh}, '%')
</if>
<if test="startAduditTime != null and startAduditTime != '' and endAduditTime != null and endAduditTime != ''">
AND date_format(a1.auditTime, '%Y-%m-%d') between date_format(#{startAduditTime}, '%Y-%m-%d') and date_format(#{endAduditTime}, '%Y-%m-%d')
</if>
<if test="batchNo != null and batchNo != ''">
AND a2.batchNo = #{batchNo}
AND a2.batchNo like concat('%', #{batchNo}, '%')
</if>
<if test="coName != null and coName != ''">
AND a2.coName = #{coName}
AND a2.coName like concat('%', #{coName}, '%')
</if>
<if test="productName != null and productName != ''">
AND a2.coName like concat('%', #{productName}, '%')

@ -9,4 +9,15 @@
#{productDate},
#{expireDate})
</insert>
<select id="selectOrderInvoice" parameterType="com.glxp.api.entity.inout.IoOrderInvoiceEntity"
resultType="com.glxp.api.entity.inout.IoOrderInvoiceEntity">
select *
from io_order_invoice
<where>
<if test="orderIdFk != null and orderIdFk != ''">
AND orderIdFk = #{orderIdFk}
</if>
</where>
</select>
</mapper>

@ -21,7 +21,8 @@
auth_dept.name deptName,
auth_warehouse.name invName,
ipp.deptCode,
ipp.invCode
ipp.invCode,
bp.measname
from inv_pre_product ipp
inner join basic_udirel on ipp.relIdFk = basic_udirel.id
inner join basic_products bp on basic_udirel.uuid = bp.uuid

@ -8,6 +8,7 @@
select ip.id,
ip.nameCode,
bp.cpmctymc,
bp.measname,
ip.relIdFk,
bp.ggxh,
ip.batchNo,
@ -24,13 +25,15 @@
auth_dept.name deptName,
auth_warehouse.name invName,
ip.deptCode,
ip.invCode
ip.invCode,
as.name spaceName
from inv_product ip
inner join basic_udirel on ip.relIdFk = basic_udirel.id
inner join basic_products bp on basic_udirel.uuid = bp.uuid
left join basic_corp on ip.supId = basic_corp.erpId
left join auth_dept on auth_dept.code = ip.deptCode
left join auth_warehouse on auth_warehouse.code = ip.invCode
left join auth_space `as` on ip.invSpaceCode = `as`.code
<where>
bp.diType = 1
<if test="cpmctymc != null and cpmctymc != ''">
@ -72,6 +75,9 @@
<if test="invCode != null and invCode != ''">
AND ip.invCode = #{invCode}
</if>
<if test="invSpaceCode != null and invSpaceCode != ''">
AND invSpaceCode = #{invSpaceCode}
</if>
<if test="invCodes != null and invCodes.size() != 0">
AND ip.invCode in
<foreach collection="invCodes" item="item" index="index" open="(" close=")" separator=",">
@ -142,15 +148,7 @@
</select>
<select id="getMAInvProducts" resultType="com.glxp.api.res.inv.InvProductResponse">
select ip.id,
bp.nameCode,
bp.cpmctymc,
bp.ggxh,
ip.batchNo,
ip.productionDate,
ip.expireDate,
ip.supId,
(select `name` from basic_corp where erpId = ip.supId) supName
select ip.id, bp.nameCode, bp.cpmctymc, bp.ggxh, ip.batchNo, ip.productionDate, ip.expireDate
from inv_product ip
left join inv_product_detail ipd
on ip.relIdFk = ipd.relId and
@ -205,7 +203,6 @@
AND ipd.invSpaceCode = #{invSpaceCode}
</if>
</where>
group by ip.id
</select>
<select id="getCountInvProduct" resultType="com.glxp.api.res.inv.InvProductResponse">
@ -218,7 +215,7 @@
basic_products.ggxh,
inv_product.inCount,
inv_product.outCount,
inv_product.reCount,
sum(inv_product.inCount - inv_product.outCount) reCount,
basic_products.cpmctymc
from inv_product_detail
left join inv_product on inv_product_detail.relId = inv_product.relIdFk
@ -255,9 +252,9 @@
ip.productionDate,
ip.expireDate,
ip.supId,
sum(ip.inCount) incount,
sum(ip.outCount) outCount,
sum(ip.reCount) reCount
ip.inCount,
ip.outCount,
ip.reCount
from inv_product ip
left join inv_product_detail ipd
on ip.relIdFk = ipd.relId and ifnull(ip.batchNo, 'empty') = ifnull(ipd.batchNo, 'empty')
@ -310,7 +307,7 @@
bp.zczbhhzbapzbh,
sum(ip.inCount) as inCount,
sum(ip.outCount) as outCount,
sum(ip.reCount)as reCount,
sum(ip.reCount) as reCount,
ip.customerId,
basic_corp.name supName,
ip.supId,
@ -324,6 +321,8 @@
left join basic_corp on ip.supId = basic_corp.erpId
left join auth_dept on auth_dept.code = ip.deptCode
left join auth_warehouse on auth_warehouse.code = ip.invCode
left join inv_product_detail ipd on ip.invCode = ipd.invCode and ip.relIdFk = ipd.relId and
ifnull(ip.batchNo, 'empty') = ifnull(ipd.batchNo, 'empty')
<where>
bp.diType = 1
<if test="cpmctymc != null and cpmctymc != ''">
@ -371,9 +370,14 @@
#{item}
</foreach>
</if>
<if test="supName != null and supName != ''">
AND basic_corp.name like concat('%', #{supName}, '%')
</if>
<if test="invSpaceCode != null and invSpaceCode != ''">
AND ipd.invSpaceCode = #{invSpaceCode}
</if>
</where>
group by ip.relIdFk
order by ip.updateTime desc
</select>
</mapper>

Loading…
Cancel
Save