You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
udi-wms-java/src/main/java/com/glxp/api/service/collect/IoSplitDesOrderService.java

73 lines
2.6 KiB
Java

package com.glxp.api.service.collect;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.github.pagehelper.PageHelper;
import com.glxp.api.constant.Constant;
import com.glxp.api.entity.collect.IoCollectOrder;
import com.glxp.api.req.collect.AddInvDesDetaiRequest;
import com.glxp.api.req.collect.CollectOrderRequest;
import com.glxp.api.req.collect.IoSplitDesOrderRequest;
import com.glxp.api.res.collect.IoCollectOrderResponse;
import com.glxp.api.res.collect.IoSplitDesOrderResponse;
import com.glxp.api.util.GennerOrderUtils;
import com.glxp.api.util.OrderNoTypeBean;
import org.apache.groovy.util.BeanUtils;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.Collections;
import java.util.Date;
import java.util.List;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.glxp.api.entity.collect.IoSplitDesOrder;
import com.glxp.api.dao.collect.IoSplitDesOrderMapper;
@Service
public class IoSplitDesOrderService extends ServiceImpl<IoSplitDesOrderMapper, IoSplitDesOrder> {
@Resource
IoSplitDesOrderMapper splitDesOrderMapper;
@Resource
GennerOrderUtils gennerOrderUtils;
public List<IoSplitDesOrderResponse> filterList(IoSplitDesOrderRequest splitDesOrderRequest) {
if (splitDesOrderRequest == null) {
return Collections.emptyList();
}
if (splitDesOrderRequest.getPage() != null) {
int offset = (splitDesOrderRequest.getPage() - 1) * splitDesOrderRequest.getLimit();
PageHelper.offsetPage(offset, splitDesOrderRequest.getLimit());
}
List<IoSplitDesOrderResponse> data = splitDesOrderMapper.filterList(splitDesOrderRequest);
return data;
}
public IoSplitDesOrder getByBillNo(String billNo) {
return splitDesOrderMapper.selectOne(new LambdaQueryWrapper<IoSplitDesOrder>().eq(IoSplitDesOrder::getBillNo, billNo).last("limit 1"));
}
public IoSplitDesOrder addInv(AddInvDesDetaiRequest addInvDesDetaiRequest) {
IoSplitDesOrder collectOrder;
if (StrUtil.isNotEmpty(addInvDesDetaiRequest.getBillNo())) {
collectOrder = getByBillNo(addInvDesDetaiRequest.getBillNo());
} else {
collectOrder = new IoSplitDesOrder();
String orderNo = gennerOrderUtils.createWdOrderNo(new OrderNoTypeBean(Constant.SPLIT_DES_ORDER, "yyyyMMdd"));
collectOrder.setBillNo(orderNo);
}
// TODO 添加到单据详情
return collectOrder;
}
}