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);
|
}
|
|
}
|
}
|