廖井涛
2025-02-13 a6db13c4867c99dabf20aed8a91e5ccd9ffa0b90
north-glass-erp/src/main/java/com/example/erp/service/sd/OrderService.java
@@ -15,6 +15,7 @@
import com.example.erp.entity.userInfo.Log;
import com.example.erp.entity.userInfo.SysError;
import com.example.erp.exception.ServiceException;
import com.example.erp.mapper.pp.WorkOrderMapper;
import com.example.erp.mapper.sd.*;
import com.example.erp.service.userInfo.LogService;
import com.example.erp.service.userInfo.SysErrorService;
@@ -31,6 +32,8 @@
import java.util.*;
import java.util.stream.Collectors;
import static org.apache.coyote.http11.Constants.a;
@Service
@DS("sd")
@Transactional(rollbackFor = Exception.class)
@@ -42,9 +45,10 @@
    private final OrderOtherMoneyMapper orderOtherMoneyMapper;
    private final ProductMapper productMapper;
    private final LogService logService;
    private final WorkOrderMapper workOrderMapper;
    private final OrderProcessDetailMapper orderProcessDetailMapper;
    public OrderService(OrderMapper orderMapper, OrderDetailMapper orderDetailMapper, OrderGlassDetailMapper orderGlassDetailMapper, OrderProcessDetailMapper orderProcessDetailMapper, SysErrorService sysErrorService, OrderOtherMoneyMapper orderOtherMoneyMapper, ProductMapper productMapper, LogService logService) {
    public OrderService(OrderMapper orderMapper, OrderDetailMapper orderDetailMapper, OrderGlassDetailMapper orderGlassDetailMapper, OrderProcessDetailMapper orderProcessDetailMapper, SysErrorService sysErrorService, OrderOtherMoneyMapper orderOtherMoneyMapper, ProductMapper productMapper, LogService logService, WorkOrderMapper workOrderMapper) {
        this.orderMapper = orderMapper;
        this.orderDetailMapper = orderDetailMapper;
        this.orderGlassDetailMapper = orderGlassDetailMapper;
@@ -53,6 +57,7 @@
        this.orderOtherMoneyMapper = orderOtherMoneyMapper;
        this.productMapper = productMapper;
        this.logService = logService;
        this.workOrderMapper = workOrderMapper;
    }
    public boolean saveOrder(Map<String,Object> orderMap) throws Exception {
@@ -165,7 +170,7 @@
    private String getOrderId(String dateType){
        String orderId = null;
        if(dateType.equals("day")){
        if(dateType==null || dateType.equals("day")){
            Integer maxOrderId = orderMapper.selectMaxOrderId();
            //查询订单id,并且自增
            String formattedNumber = String.format("%02d", maxOrderId+1);
@@ -283,7 +288,9 @@
                orderOtherMoney.setId(null);
                orderOtherMoney.setOrderId(orderId);
                if(orderOtherMoney.getQuantity()!=null && orderOtherMoney.getPrice()!=null){
                    orderOtherMoney.setMoney((orderOtherMoney.getQuantity()*orderOtherMoney.getPrice()));
                    BigDecimal getQuantity= BigDecimal.valueOf(orderOtherMoney.getQuantity());
                    BigDecimal getPrice= BigDecimal.valueOf(orderOtherMoney.getPrice());
                    orderOtherMoney.setMoney(getQuantity.multiply(getPrice).setScale(2, RoundingMode.HALF_UP).doubleValue());
                }else {
                    orderOtherMoney.setMoney(0.0);
                }
@@ -314,7 +321,7 @@
    }
    //查询获取列表
    public Map<String,Object> getOrderList(Integer pageNum, Integer pageSize, List<String> selectDate, Order order,Integer orderType) {
    public Map<String,Object> getOrderList(Integer pageNum, Integer pageSize, List<String> selectDate, Map<String,Object> config,Integer orderType) {
        Integer offset = (pageNum-1)*pageSize;
        String endDate = LocalDate.now().toString();
        String startDate = LocalDate.now().minusDays(15).toString();
@@ -326,9 +333,14 @@
                endDate = selectDate.get(1);
            }
        }
        JSONObject orderJson = new JSONObject(config);
        Order order = JSONObject.parseObject(JSONObject.toJSONString(orderJson.get("filter")), Order.class);
        Map<String,String> sortDate = (Map<String, String>) config.get("sort");
        String field = sortDate.get("field").replaceAll("(?<!^)([A-Z])", "_$1").toLowerCase();
        String orderBy = sortDate.get("order");
        Map<String,Object> map = new HashMap<>();
        map.put("data",orderMapper.getOrderList(offset, pageSize, startDate, endDate, order,orderType));
        map.put("data",orderMapper.getOrderList(offset, pageSize, startDate, endDate, order,orderType, field, orderBy));
        map.put("total",orderMapper.getPageTotal(offset, pageSize, startDate, endDate, order,orderType));
        List<String> list = new ArrayList<>();
        list.add(startDate);
@@ -795,4 +807,14 @@
        }
        return saveState;
    }
    public Boolean selectDifferentSize(String orderId) {
        return !orderMapper.selectDifferentSize(orderId).isEmpty();
    }
    public Object processBack(String orderId) {
        workOrderMapper.deleteOrderWorkMp(orderId, null);
        workOrderMapper.updateWorkType(orderId, 0);
        return null;
    }
}