| | |
| | | package com.zy.asrs.wms.asrs.service.impl; |
| | | |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.zy.asrs.framework.exception.CoolException; |
| | | import com.zy.asrs.wms.asrs.entity.Order; |
| | | import com.zy.asrs.wms.asrs.entity.OrderType; |
| | | import com.zy.asrs.wms.asrs.entity.Wave; |
| | | import com.zy.asrs.wms.asrs.mapper.OrderNoRuleMapper; |
| | | import com.zy.asrs.wms.asrs.entity.OrderNoRule; |
| | | import com.zy.asrs.wms.asrs.service.OrderNoRuleService; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import com.zy.asrs.wms.asrs.service.OrderService; |
| | | import com.zy.asrs.wms.asrs.service.OrderTypeService; |
| | | import com.zy.asrs.wms.asrs.service.WaveService; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import java.text.SimpleDateFormat; |
| | | import java.time.LocalDate; |
| | | import java.time.LocalDateTime; |
| | | import java.time.LocalTime; |
| | | import java.util.ArrayList; |
| | | import java.util.Date; |
| | | import java.util.List; |
| | | |
| | | @Service("orderNoRuleService") |
| | | public class OrderNoRuleServiceImpl extends ServiceImpl<OrderNoRuleMapper, OrderNoRule> implements OrderNoRuleService { |
| | | |
| | | @Autowired |
| | | private OrderService orderService; |
| | | @Autowired |
| | | private OrderTypeService orderTypeService; |
| | | @Autowired |
| | | private WaveService waveService; |
| | | |
| | | @Override |
| | | public String getOrderNo(Integer orderType) { |
| | | List<OrderNoRule> list = this.list(new LambdaQueryWrapper<OrderNoRule>().eq(OrderNoRule::getOrderType, orderType).eq(OrderNoRule::getStatus, 1)); |
| | | if (list.isEmpty()) { |
| | | throw new CoolException("订单类型无规则"); |
| | | } |
| | | |
| | | OrderNoRule orderNoRule = list.get(0); |
| | | StringBuffer buffer = new StringBuffer(); |
| | | buffer.append(orderNoRule.getOrderConst());//订单常量 |
| | | |
| | | String pattern = "yyyyMMddHHmmss"; |
| | | if (orderNoRule.getTimeRule() == 0) { |
| | | pattern = "yyyyMMdd"; |
| | | } |
| | | |
| | | SimpleDateFormat format = new SimpleDateFormat(pattern); |
| | | buffer.append(format.format(new Date()));//订单时间 |
| | | |
| | | |
| | | if(orderType == 1 || orderType == 2) { |
| | | //查当天订单数量 |
| | | List<OrderType> list1 = orderTypeService.list(new LambdaQueryWrapper<OrderType>().eq(OrderType::getType, orderType)); |
| | | ArrayList<Long> longs = new ArrayList<>(); |
| | | for (OrderType orderType1 : list1) { |
| | | longs.add(orderType1.getId()); |
| | | } |
| | | |
| | | LocalDateTime startOfDay = LocalDateTime.of(LocalDate.now(), LocalTime.MIN); |
| | | LocalDateTime endOfDay = LocalDateTime.of(LocalDate.now(), LocalTime.MAX); |
| | | List<Order> orders = orderService.list(new LambdaQueryWrapper<Order>().in(Order::getOrderType, longs).between(Order::getCreateTime, startOfDay, endOfDay)); |
| | | int size = orders.size(); |
| | | String sizeStr = String.valueOf(size); |
| | | StringBuilder sizeBuilder = new StringBuilder(sizeStr); |
| | | if (sizeStr.length() < orderNoRule.getIncreaseNum()) { |
| | | for (int i = 0; i < orderNoRule.getIncreaseNum() - sizeStr.length(); i++) { |
| | | sizeBuilder.insert(0, "0"); |
| | | } |
| | | } |
| | | buffer.append(sizeBuilder); |
| | | }else { |
| | | //查当天波次订单数量 |
| | | LocalDateTime startOfDay = LocalDateTime.of(LocalDate.now(), LocalTime.MIN); |
| | | LocalDateTime endOfDay = LocalDateTime.of(LocalDate.now(), LocalTime.MAX); |
| | | List<Wave> waves = waveService.list(new LambdaQueryWrapper<Wave>().between(Wave::getCreateTime, startOfDay, endOfDay)); |
| | | int size = waves.size(); |
| | | String sizeStr = String.valueOf(size); |
| | | StringBuilder sizeBuilder = new StringBuilder(sizeStr); |
| | | if (sizeStr.length() < orderNoRule.getIncreaseNum()) { |
| | | for (int i = 0; i < orderNoRule.getIncreaseNum() - sizeStr.length(); i++) { |
| | | sizeBuilder.insert(0, "0"); |
| | | } |
| | | } |
| | | buffer.append(sizeBuilder); |
| | | } |
| | | return buffer.toString(); |
| | | } |
| | | } |
| | | package com.zy.asrs.wms.asrs.service.impl;
|
| | |
|
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
| | | import com.zy.asrs.framework.exception.CoolException;
|
| | | import com.zy.asrs.wms.asrs.entity.Order;
|
| | | import com.zy.asrs.wms.asrs.entity.OrderType;
|
| | | import com.zy.asrs.wms.asrs.entity.Wave;
|
| | | import com.zy.asrs.wms.asrs.mapper.OrderNoRuleMapper;
|
| | | import com.zy.asrs.wms.asrs.entity.OrderNoRule;
|
| | | import com.zy.asrs.wms.asrs.service.OrderNoRuleService;
|
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
| | | import com.zy.asrs.wms.asrs.service.OrderService;
|
| | | import com.zy.asrs.wms.asrs.service.OrderTypeService;
|
| | | import com.zy.asrs.wms.asrs.service.WaveService;
|
| | | import org.springframework.beans.factory.annotation.Autowired;
|
| | | import org.springframework.stereotype.Service;
|
| | |
|
| | | import java.text.SimpleDateFormat;
|
| | | import java.time.LocalDate;
|
| | | import java.time.LocalDateTime;
|
| | | import java.time.LocalTime;
|
| | | import java.util.ArrayList;
|
| | | import java.util.Date;
|
| | | import java.util.List;
|
| | |
|
| | | @Service("orderNoRuleService")
|
| | | public class OrderNoRuleServiceImpl extends ServiceImpl<OrderNoRuleMapper, OrderNoRule> implements OrderNoRuleService {
|
| | |
|
| | | @Autowired
|
| | | private OrderService orderService;
|
| | | @Autowired
|
| | | private OrderTypeService orderTypeService;
|
| | | @Autowired
|
| | | private WaveService waveService;
|
| | |
|
| | | @Override
|
| | | public String getOrderNo(Integer orderType) {
|
| | | List<OrderNoRule> list = this.list(new LambdaQueryWrapper<OrderNoRule>().eq(OrderNoRule::getOrderType, orderType).eq(OrderNoRule::getStatus, 1));
|
| | | if (list.isEmpty()) {
|
| | | throw new CoolException("订单类型无规则");
|
| | | }
|
| | |
|
| | | OrderNoRule orderNoRule = list.get(0);
|
| | | StringBuffer buffer = new StringBuffer();
|
| | | buffer.append(orderNoRule.getOrderConst());//订单常量
|
| | |
|
| | | String pattern = "yyyyMMddHHmmss";
|
| | | if (orderNoRule.getTimeRule() == 0) {
|
| | | pattern = "yyyyMMdd";
|
| | | }
|
| | |
|
| | | SimpleDateFormat format = new SimpleDateFormat(pattern);
|
| | | buffer.append(format.format(new Date()));//订单时间
|
| | |
|
| | |
|
| | | if(orderType == 1 || orderType == 2) {
|
| | | //查当天订单数量
|
| | | List<OrderType> list1 = orderTypeService.list(new LambdaQueryWrapper<OrderType>().eq(OrderType::getType, orderType));
|
| | | ArrayList<Long> longs = new ArrayList<>();
|
| | | for (OrderType orderType1 : list1) {
|
| | | longs.add(orderType1.getId());
|
| | | }
|
| | |
|
| | | LocalDateTime startOfDay = LocalDateTime.of(LocalDate.now(), LocalTime.MIN);
|
| | | LocalDateTime endOfDay = LocalDateTime.of(LocalDate.now(), LocalTime.MAX);
|
| | | List<Order> orders = orderService.list(new LambdaQueryWrapper<Order>().in(Order::getOrderType, longs).between(Order::getCreateTime, startOfDay, endOfDay));
|
| | | int size = orders.size();
|
| | | String sizeStr = String.valueOf(size);
|
| | | StringBuilder sizeBuilder = new StringBuilder(sizeStr);
|
| | | if (sizeStr.length() < orderNoRule.getIncreaseNum()) {
|
| | | for (int i = 0; i < orderNoRule.getIncreaseNum() - sizeStr.length(); i++) {
|
| | | sizeBuilder.insert(0, "0");
|
| | | }
|
| | | }
|
| | | buffer.append(sizeBuilder);
|
| | | }else {
|
| | | //查当天波次订单数量
|
| | | LocalDateTime startOfDay = LocalDateTime.of(LocalDate.now(), LocalTime.MIN);
|
| | | LocalDateTime endOfDay = LocalDateTime.of(LocalDate.now(), LocalTime.MAX);
|
| | | List<Wave> waves = waveService.list(new LambdaQueryWrapper<Wave>().between(Wave::getCreateTime, startOfDay, endOfDay));
|
| | | int size = waves.size();
|
| | | String sizeStr = String.valueOf(size);
|
| | | StringBuilder sizeBuilder = new StringBuilder(sizeStr);
|
| | | if (sizeStr.length() < orderNoRule.getIncreaseNum()) {
|
| | | for (int i = 0; i < orderNoRule.getIncreaseNum() - sizeStr.length(); i++) {
|
| | | sizeBuilder.insert(0, "0");
|
| | | }
|
| | | }
|
| | | buffer.append(sizeBuilder);
|
| | | }
|
| | | return buffer.toString();
|
| | | }
|
| | | }
|