guoyuji
2024-05-09 1d731a5de1774eb69fe48e6957db097fd65dd7d1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
package com.example.erp.service.sd;
 
import com.alibaba.fastjson.JSON;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.example.erp.entity.sd.BasicGlassType;
import com.example.erp.mapper.sd.BasicGlassTypeMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
 
import java.util.*;
 
@Service
@DS("sd")
public class BasicGlassTypeService {
    @Autowired
    BasicGlassTypeMapper basicGlassTypeMapper;
    public List<BasicGlassType> getOneLevel() {
        return basicGlassTypeMapper.getOneLevel();
    }
 
    public List<BasicGlassType>  getTwoLevel() {
        return basicGlassTypeMapper.getTwoLevel();
    }
 
    public List<Map<String,String>> getAll() {
        List<BasicGlassType> oneGlassType = basicGlassTypeMapper.getOneLevel();
        List<BasicGlassType> twoGlassType = basicGlassTypeMapper.getTwoLevel();
        List<Map<String,String>> list = new ArrayList<>();
        for (BasicGlassType glassType : oneGlassType) {
            Map<String, String> map = new HashMap<>();
            map.put("value", glassType.getTypeId());
            map.put("label", glassType.getTypeName());
            map.put("children", "");
            List<String> equalList = new ArrayList<>();
            for (BasicGlassType basicGlassType : twoGlassType) {
                if (Objects.equals(basicGlassType.getBelong(), glassType.getTypeId())) {
                    Map<String,String> getMap = JSON.parseObject(JSON.toJSONString(basicGlassType), Map.class);
                    getMap.put("value",getMap.get("typeID"));
                    getMap.put("label",getMap.get("typeName"));
                    equalList.add(JSON.toJSONString(getMap)   );
                }
            }
            map.replace("children",equalList.toString());
            list.add(map);
        }
        return list;
    }
 
    public List<BasicGlassType> findAll() {
        return basicGlassTypeMapper.selectList(null);
    }
 
    public Boolean deleteById(Integer id) {
        return basicGlassTypeMapper.deleteById(id) > 0;
    }
 
    public List<Map<String,Object>> getOneLevelListMap() {
        List<BasicGlassType> oneGlassType = basicGlassTypeMapper.getOneLevel();
        List<Map<String,Object>> list = new ArrayList<>();
        for (BasicGlassType glassType : oneGlassType) {
            Map<String,Object> map = new HashMap<>();
            map.put("value", glassType.getTypeId());
            map.put("label", glassType.getTypeName());
            list.add(map);
        }
        return list;
    }
 
    public Boolean add(Map<String, Object> map) {
        List<Object> list = (List<Object>) map.get("glassLevel");
        if(list.get(0)==null
                || map.get("value") == null
                || map.get("value").equals("")){
            return false;
        }
        BasicGlassType basicGlassTypeS = new BasicGlassType();
        if(map.get("type").equals("add")){
            if(list.size()==1){
                BasicGlassType basicGlassType =  basicGlassTypeMapper.selectMaxType((Integer) list.get(0));
                int maxId = Integer.parseInt(basicGlassType.getTypeId());
                String newTypeId = String.format("%02d", maxId+1);
                basicGlassTypeS.setLevel((Integer) list.get(0));
                basicGlassTypeS.setTypeId(newTypeId);
                basicGlassTypeS.setTypeName((String) map.get("value"));
            }else if(list.size()==2) {
                BasicGlassType basicGlassType =  basicGlassTypeMapper.selectMaxTowLevelType((String) list.get(1));
                int maxId = Integer.parseInt(basicGlassType.getTypeId().substring(2));
                String newTypeId =list.get(1) + String.format("%02d", maxId+1);
                basicGlassTypeS.setLevel((Integer) list.get(0));
                basicGlassTypeS.setTypeId(newTypeId);
                basicGlassTypeS.setTypeName((String) map.get("value"));
                basicGlassTypeS.setBelong((String) list.get(1));
            }
            return basicGlassTypeMapper.insert(basicGlassTypeS)>0;
        }else{
            basicGlassTypeS.setId((Integer) map.get("id"));
            basicGlassTypeS.setTypeName((String) map.get("value"));
           return basicGlassTypeMapper.updateGlassTypeName(basicGlassTypeS);
        }
 
    }
}