| | |
| | | package com.example.erp.service.sd; |
| | | |
| | | import com.baomidou.dynamic.datasource.annotation.DS; |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.example.erp.entity.sd.BasicData; |
| | | import com.example.erp.entity.sd.BasicOtherMoney; |
| | | import com.example.erp.entity.sd.Customer; |
| | | import com.example.erp.mapper.sd.BasicDateMapper; |
| | | import com.example.erp.mapper.sd.BasicOtherMoneyMapper; |
| | | import com.example.erp.mapper.sd.CustomerMapper; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | | import com.example.erp.entity.sd.BasicData; |
| | | |
| | | import java.util.*; |
| | | |
| | | @Service |
| | | @DS("sd") |
| | | public class BasicDateService { |
| | | @Autowired |
| | | private BasicDateMapper basicDateMapper; |
| | | private final BasicDateMapper basicDateMapper; |
| | | |
| | | @Autowired |
| | | private CustomerMapper customerMapper; |
| | | private final CustomerMapper customerMapper; |
| | | private final BasicOtherMoneyMapper basicOtherMoneyMapper; |
| | | |
| | | public BasicDateService(BasicDateMapper basicDateMapper, CustomerMapper customerMapper, BasicOtherMoneyMapper basicOtherMoneyMapper) { |
| | | this.basicDateMapper = basicDateMapper; |
| | | this.customerMapper = customerMapper; |
| | | this.basicOtherMoneyMapper = basicOtherMoneyMapper; |
| | | } |
| | | |
| | | //获取订单基本数据 |
| | | public Map<String, List<Object>> getOrderBasicData() { |
| | | public Map<String, List<Object>> getOrderBasicData() { |
| | | //获取订单基本数据类型 |
| | | List<String> orderBasicDataType = basicDateMapper.getOrderBasicDataType(); |
| | | //获取订单基本数据 |
| | | List<BasicData> orderBasicData = basicDateMapper.getOrderBasicData(); |
| | | //创建Map对象 |
| | | Map<String, List<Object>> orderBasicDataMap = new HashMap<>(); ; |
| | | //创建List对象 |
| | | orderBasicDataMap = getBasicDataByType("order"); |
| | | |
| | | //遍历订单基本数据类型 |
| | | for(String item :orderBasicDataType){ |
| | | List<Object> orderBasicDataList = new ArrayList<>(); |
| | | //将类型和List对象放入Map中 |
| | | orderBasicDataMap.put(item,orderBasicDataList); |
| | | } |
| | | //遍历订单基本数据 |
| | | for (BasicData item : orderBasicData){ |
| | | //将数据放入List中 |
| | | orderBasicDataMap.get(item.getBasicCategory()).add(item); |
| | | } |
| | | |
| | | //获取客户列表 |
| | | List<Object> orderBasicDataList = new ArrayList<>(); |
| | |
| | | orderBasicDataMap.get("customer").add(customer); |
| | | } |
| | | |
| | | orderBasicDataMap.put("orderOtherMoney", |
| | | Collections.singletonList( |
| | | basicOtherMoneyMapper.selectList(new QueryWrapper<BasicOtherMoney>().eq("state",1)) |
| | | )); |
| | | |
| | | |
| | | //返回Map对象 |
| | | return orderBasicDataMap; |
| | | } |
| | | |
| | | // public Map<String, List<Object>> getBasicDataByType(String type) { |
| | | // List<String> orderBasicDataType = basicDateMapper.getOrderBasicDataType(type); |
| | | // //获取订单基本数据 |
| | | // List<BasicData> orderBasicData = basicDateMapper.getOrderBasicData(type); |
| | | // //创建Map对象 |
| | | // Map<String, List<Object>> orderBasicDataMap = new HashMap<>(); ; |
| | | // //创建List对象 |
| | | // |
| | | // //遍历订单基本数据类型 |
| | | // for(String item :orderBasicDataType){ |
| | | // List<Object> orderBasicDataList = new ArrayList<>(); |
| | | // //将类型和List对象放入Map中 |
| | | // orderBasicDataMap.put(item,orderBasicDataList); |
| | | // } |
| | | // //遍历订单基本数据 |
| | | // for (BasicData item : orderBasicData){ |
| | | // //将数据放入List中 |
| | | // orderBasicDataMap.get(item.getBasicCategory()).add(item); |
| | | // } |
| | | // return orderBasicDataMap; |
| | | // } |
| | | |
| | | public Map<String, List<Object>> getBasicDataByType(String type){ |
| | | //返回基础数据里的所有类型 |
| | | List<String> orderBasicDataType = basicDateMapper.getOrderBasicDataType(type); |
| | | //返回此类型基础数据所有数据 |
| | | List<BasicData> orderBasicData = basicDateMapper.getOrderBasicData(type); |
| | | Map<String, List<Object>> BasicDataMap = new HashMap<>(); |
| | | //创建List对象 |
| | | |
| | | //遍历订单基本数据类型 |
| | | for(String item :orderBasicDataType){ |
| | | List<Object> orderBasicDataList = new ArrayList<>(); |
| | | //将类型和List对象放入Map中 |
| | | BasicDataMap.put(item,orderBasicDataList); |
| | | } |
| | | //遍历订单基本数据 |
| | | for (BasicData item : orderBasicData){ |
| | | //将数据放入List中 |
| | | BasicDataMap.get(item.getBasicCategory()).add(item); |
| | | } |
| | | BasicDataMap.put("deliveryOtherMoney", Collections.singletonList(basicOtherMoneyMapper.selectList(null))); |
| | | return BasicDataMap; |
| | | } |
| | | |
| | | public List<BasicData> getBasicDataByTypeAndChildType(String type, String childType) { |
| | | Map<String, List<Object>> BasicDataMap = new HashMap<>(); |
| | | return basicDateMapper.getOrderBasicDataByTypeAndChildType(type, childType); |
| | | |
| | | } |
| | | |
| | | public List<BasicData> getBasicData() { |
| | | return basicDateMapper.getBasicData(); |
| | | } |
| | | |
| | | public Object getBasicDataType() { |
| | | List<BasicData> lastType = basicDateMapper.getBasicDataLastType(); |
| | | List<BasicData> firstType= basicDateMapper.getBasicDataFirstType(); |
| | | List<Map<String,Object>> list = new ArrayList<>(); |
| | | if(!firstType.isEmpty()){ |
| | | firstType.forEach(item->{ |
| | | Map<String,Object> map = new HashMap<>(); |
| | | List<Map<String,String>> lastTypeList = new ArrayList<>(); |
| | | lastType.forEach(item1->{ |
| | | Map<String,String> map1 = new HashMap<>(); |
| | | if(Objects.equals(item.getBasicType(), item1.getBasicType())){ |
| | | map1.put("value",item1.getBasicCategory()); |
| | | map1.put("label",item1.getBasicCategory()); |
| | | lastTypeList.add(map1); |
| | | } |
| | | }); |
| | | map.put("children",lastTypeList); |
| | | map.put("value",item.getBasicType()); |
| | | map.put("label",item.getBasicType()); |
| | | list.add(map); |
| | | }); |
| | | } |
| | | return list; |
| | | } |
| | | |
| | | public boolean addBasicData(Map<String, Object> map) { |
| | | List<String> basicTypeList = (List<String>) map.get("basicType"); |
| | | if(basicTypeList.size()==2){ |
| | | BasicData basicData = new BasicData(); |
| | | basicData.setBasicType(basicTypeList.get(0)); |
| | | basicData.setBasicCategory(basicTypeList.get(1)); |
| | | basicData.setBasicName(map.get("input").toString()); |
| | | basicDateMapper.insert(basicData); |
| | | } |
| | | return true; |
| | | } |
| | | |
| | | public int deleteBasicData(BasicData basicData) { |
| | | |
| | | return basicDateMapper.deleteById(basicData.getId()); |
| | | } |
| | | |
| | | public int updateBasicData(BasicData basicData) { |
| | | return basicDateMapper.updateById(basicData); |
| | | } |
| | | } |