From d5bb894f9be2e0a3b62d475b60b44f2ab138528c Mon Sep 17 00:00:00 2001 From: guoyujie <guoyujie@ng.com> Date: 星期四, 12 六月 2025 16:48:35 +0800 Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10101/r/ERP_override --- north-glass-erp/src/main/java/com/example/erp/service/sd/CustomerService.java | 175 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 175 insertions(+), 0 deletions(-) diff --git a/north-glass-erp/src/main/java/com/example/erp/service/sd/CustomerService.java b/north-glass-erp/src/main/java/com/example/erp/service/sd/CustomerService.java new file mode 100644 index 0000000..59f2b87 --- /dev/null +++ b/north-glass-erp/src/main/java/com/example/erp/service/sd/CustomerService.java @@ -0,0 +1,175 @@ +package com.example.erp.service.sd; + +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import com.baomidou.dynamic.datasource.annotation.DS; +import com.example.erp.dto.sd.CustomerDTO; +import com.example.erp.dto.sd.DeliveryDetailDTO; +import com.example.erp.dto.sd.DeliveryDetailProductDTO; +import com.example.erp.entity.sd.*; +import com.example.erp.entity.userInfo.Log; +import com.example.erp.entity.userInfo.SysError; +import com.example.erp.mapper.mm.FinishedGoodsInventoryMapper; +import com.example.erp.mapper.sd.*; +import com.example.erp.service.userInfo.LogService; +import com.example.erp.service.userInfo.SysErrorService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.transaction.interceptor.TransactionAspectSupport; + +import java.text.SimpleDateFormat; +import java.time.LocalDate; +import java.util.*; + +@Service +@DS("sd") +@Transactional(rollbackFor = Exception.class) +public class CustomerService { + @Autowired + CustomerMapper customerMapper; + @Autowired + SysErrorService sysErrorService; + @Autowired + LogService logService; + + + public Map<String, Object> getSelectCustomer(Integer pageNum, Integer pageSize, Customer customer) { + Integer offset = (pageNum - 1) * pageSize; + + Map<String, Object> map = new HashMap<>(); + map.put("data", customerMapper.getSelectCustomer(offset, pageSize, customer)); + map.put("total", customerMapper.getSelectCustomerPageTotal(offset, pageSize, customer)); + return map; + } + + + public Boolean insertCustomer(Map<String,Object> object) { + boolean saveState = true; + Log log = new Log(); + log.setOperatorId(object.get("userId").toString()); + log.setOperator(object.get("userName").toString()); + log.setContent(object.toString()); + //璁剧疆鍥炴粴鐐� + Object savePoint = TransactionAspectSupport.currentTransactionStatus().createSavepoint(); + try { + Customer customer = JSONObject.parseObject(JSONObject.toJSONString(object.get("customer")), Customer.class); + if(customer!=null){ + if (customer.getId()!=null && customer.getId()!=0){ + customerMapper.updateCustomer(customer); + log.setFunction("insertCustomer淇敼"); + }else{ + customerMapper.insertCustomer(customer); + log.setFunction("insertCustomer鏂板"); + } + logService.saveLog(log); + + } + + } catch (Exception e) { + TransactionAspectSupport.currentTransactionStatus().rollbackToSavepoint(savePoint); + //灏嗗紓甯镐紶鍏ユ暟鎹簱 + SysError sysError = new SysError(); + sysError.setError(Arrays.toString(e.getStackTrace())); + sysError.setFunc("saveOrder"); + sysErrorService.insert(sysError); + saveState = false; + + } + return saveState; + + } + + public Boolean deleteCustomer(Map<String,Object> object) { + boolean saveState = true; + //璁剧疆鍥炴粴鐐� + Object savePoint = TransactionAspectSupport.currentTransactionStatus().createSavepoint(); + try { + Customer customer = JSONObject.parseObject(JSONObject.toJSONString(object.get("customer")), Customer.class); + if(customer!=null){ + if (customer.getId()!=null){ + customerMapper.deleteCustomer(customer); + } + Log log = new Log(); + log.setOperatorId(object.get("userId").toString()); + log.setOperator(object.get("userName").toString()); + log.setContent(object.toString()); + log.setFunction("deleteCustomer鍒犻櫎"); + logService.saveLog(log); + + } + + + + } catch (Exception e) { + TransactionAspectSupport.currentTransactionStatus().rollbackToSavepoint(savePoint); + //灏嗗紓甯镐紶鍏ユ暟鎹簱 + SysError sysError = new SysError(); + sysError.setError(e.toString()); + sysError.setFunc("saveOrder"); + sysErrorService.insert(sysError); + saveState = false; + + } + return saveState; + + } + + public Map<String, Object> getSelectCustomerOderDate(Integer pageNum, Integer pageSize,List<String> selectDate, OrderDetail orderDetail) { + Integer offset = (pageNum - 1) * pageSize; + String endDate = LocalDate.now().toString(); + String startDate = LocalDate.now().minusDays(15).toString(); + if(selectDate !=null && selectDate.size()==2){ + if(!selectDate.get(0).isEmpty()){ + startDate = selectDate.get(0); + } + if(!selectDate.get(1).isEmpty()){ + endDate = selectDate.get(1); + } + } + Map<String, Object> map = new HashMap<>(); + if(Objects.equals(orderDetail.getOrder().getBatch(), "1")){ + map.put("data", customerMapper.getSelectCustomerOderDate(offset, pageSize,startDate,endDate, orderDetail)); + map.put("total", customerMapper.getSelectCustomerOderDatePageTotal(offset, pageSize,startDate,endDate, orderDetail)); + }else{ + map.put("data", customerMapper.getSelectCustomerDeliveryDate(offset, pageSize,startDate,endDate, orderDetail)); + map.put("total", customerMapper.getSelectCustomerDeliveryDatePageTotal(offset, pageSize,startDate,endDate, orderDetail)); + } + + List<String> list = new ArrayList<>(); + list.add(startDate); + list.add(endDate); + map.put("selectDate",list); + return map; + } + + public List<CustomerDTO> exportSelectCustomerOderDate(List<String> selectDate, OrderDetail orderDetail) { + String endDate = LocalDate.now().toString(); + String startDate = LocalDate.now().minusDays(15).toString(); + if(selectDate !=null && selectDate.size()==2){ + if(!selectDate.get(0).isEmpty()){ + startDate = selectDate.get(0); + } + if(!selectDate.get(1).isEmpty()){ + endDate = selectDate.get(1); + } + } + return customerMapper.exportSelectCustomerOderDate(startDate,endDate, orderDetail); + } + + public List<CustomerDTO> exportSelectCustomerDeliveryDate(List<String> selectDate, OrderDetail orderDetail) { + String endDate = LocalDate.now().toString(); + String startDate = LocalDate.now().minusDays(15).toString(); + if(selectDate !=null && selectDate.size()==2){ + if(!selectDate.get(0).isEmpty()){ + startDate = selectDate.get(0); + } + if(!selectDate.get(1).isEmpty()){ + endDate = selectDate.get(1); + } + } + return customerMapper.exportSelectCustomerDeliveryDate(startDate,endDate, orderDetail); + } + + +} -- Gitblit v1.8.0