潘志宝
2024-12-10 a440ec3bfaa1363f5841100b8948d852971a2eb1
提交 | 用户 | 时间
7fd198 1 package com.iailab.module.model.mcs.pre.service.impl;
2
3 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
5c6007 4 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
7fd198 5 import com.iailab.framework.common.pojo.PageResult;
6 import com.iailab.framework.common.service.impl.BaseServiceImpl;
7 import com.iailab.framework.common.util.collection.CollectionUtils;
8 import com.iailab.module.model.mcs.pre.dao.MmItemTypeDao;
48c57b 9 import com.iailab.module.model.mcs.pre.entity.DmModuleItemEntity;
7fd198 10 import com.iailab.module.model.mcs.pre.entity.MmItemTypeEntity;
11 import com.iailab.module.model.mcs.pre.service.MmItemTypeService;
12 import com.iailab.module.model.mcs.pre.vo.MmItemTypePageReqVO;
13 import org.apache.commons.lang3.StringUtils;
5c6007 14 import org.springframework.beans.factory.annotation.Autowired;
7fd198 15 import org.springframework.stereotype.Service;
16 import org.springframework.transaction.annotation.Transactional;
17
5c6007 18 import java.util.*;
a4891a 19 import java.util.concurrent.ConcurrentHashMap;
7fd198 20
21 /**
22  * @author PanZhibao
23  * @date 2021年04月23日 15:29
24  */
5c6007 25 @Service
L 26 public class MmItemTypeImpl extends ServiceImpl<MmItemTypeDao, MmItemTypeEntity> implements MmItemTypeService {
7fd198 27
5c6007 28     @Autowired
L 29     private MmItemTypeDao mmItemTypeDao;
a4891a 30
31     private Map<String, MmItemTypeEntity> typeIdMap = new ConcurrentHashMap<>();
5c6007 32     
7fd198 33     @Override
34     public PageResult<MmItemTypeEntity> page(MmItemTypePageReqVO reqVO) {
5c6007 35         return mmItemTypeDao.selectPage(reqVO);
7fd198 36     }
37
38     @Override
39     public void saveItemType(MmItemTypeEntity itemType) {
40         itemType.setId(UUID.randomUUID().toString());
5c6007 41         mmItemTypeDao.insert(itemType);
a4891a 42         typeIdMap.clear();
7fd198 43     }
44
45     @Override
46     public void update(MmItemTypeEntity itemType) {
5c6007 47         mmItemTypeDao.updateById(itemType);
a4891a 48         typeIdMap.clear();
7fd198 49     }
50
51     @Override
52     public void deleteBatch(String[] moduleIds) {
5c6007 53         mmItemTypeDao.deleteBatchIds(Arrays.asList(moduleIds));
a4891a 54         typeIdMap.clear();
7fd198 55     }
56
57     @Override
58     public int check(MmItemTypeEntity itemType) {
59         String id = itemType.getId();
60         String itemtypename = itemType.getItemtypename();
5c6007 61         QueryWrapper<MmItemTypeEntity> moduleWrapper = new QueryWrapper();
7fd198 62         moduleWrapper.ne(StringUtils.isNotBlank(id), "id", id);
63         moduleWrapper.and(wrapper -> wrapper.eq("itemtypename",itemtypename));
5c6007 64         List<MmItemTypeEntity> list = mmItemTypeDao.selectList(moduleWrapper);
7fd198 65         return list.size();
66     }
67
68     @Override
69     public MmItemTypeEntity getItemTypeByItemId(String itemId) {
a4891a 70         if (typeIdMap.containsKey(itemId)) {
71             return typeIdMap.get(itemId);
72         }
5c6007 73         List<MmItemTypeEntity> list = mmItemTypeDao.getItemTypeByItemId(itemId);
7fd198 74         if (CollectionUtils.isAnyEmpty(list)) {
75             return null;
76         }
a4891a 77         typeIdMap.put(itemId, list.get(0));
7fd198 78         return list.get(0);
79     }
5c6007 80
L 81     @Override
82     public MmItemTypeEntity info(String id) {
83         return mmItemTypeDao.selectById(id);
84     }
85
86     @Override
87     public List<MmItemTypeEntity> list(Map<String, Object> params) {
48c57b 88         return mmItemTypeDao.selectList(new QueryWrapper<>());
5c6007 89     }
7fd198 90 }