SysCertificateAdditionServiceImpl.java 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253
  1. package com.zhongzheng.service.impl;
  2. import cn.hutool.core.util.ObjectUtil;
  3. import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
  4. import com.baomidou.mybatisplus.core.metadata.IPage;
  5. import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
  6. import com.baomidou.mybatisplus.core.toolkit.StringUtils;
  7. import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
  8. import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
  9. import com.zhongzheng.bo.SysCertificateBo;
  10. import com.zhongzheng.common.filter.CustomException;
  11. import com.zhongzheng.common.model.TableDataInfo;
  12. import com.zhongzheng.common.util.DateUtils;
  13. import com.zhongzheng.common.util.EncryptHandler;
  14. import com.zhongzheng.domian.*;
  15. import com.zhongzheng.mapper.*;
  16. import com.zhongzheng.service.ISysCertificateAdditionService;
  17. import com.zhongzheng.service.ISysCertificateService;
  18. import com.zhongzheng.service.ISysCompanyService;
  19. import com.zhongzheng.service.ISysPersonService;
  20. import com.zhongzheng.vo.MajorVo;
  21. import org.springframework.beans.factory.annotation.Autowired;
  22. import org.springframework.stereotype.Service;
  23. import java.util.Collections;
  24. import java.util.List;
  25. import java.util.stream.Collectors;
  26. /**
  27. * 菜单 业务层处理
  28. *
  29. * @author zhongzheng
  30. */
  31. @Service
  32. public class SysCertificateAdditionServiceImpl extends ServiceImpl<SysCertificateAdditionMapper, SysCertificateAddition> implements ISysCertificateAdditionService {
  33. public static final String PREMISSION_STRING = "perms[\"{0}\"]";
  34. @Autowired
  35. private SysPersonMapper personMapper;
  36. @Autowired
  37. private ISysCertificateService sysCertSeaService;
  38. @Autowired
  39. private ISysCompanyService sysCompanyService;
  40. @Autowired
  41. private ISysPersonService sysPersonService;
  42. @Autowired
  43. private SysCertificateMapper certMapper;
  44. @Autowired
  45. private SysCertificateAdditionMapper certAddMapper;
  46. @Autowired
  47. private MemoCertificateMapper memoCertMapper;
  48. @Override
  49. public long insertCertificateAddition(SysCertificateBo entity) {
  50. SysCertificateAddition p =null;
  51. p = getOne(new LambdaUpdateWrapper<SysCertificateAddition>()
  52. .eq(SysCertificateAddition::getCertificateId, entity.getCertificateId())
  53. .eq(ObjectUtils.isNotNull(entity.getMajorId()), SysCertificateAddition::getMajorId, entity.getMajorId())
  54. .eq(SysCertificateAddition::getStatus, 1));
  55. if(p!=null&&p.getCertificateAdditionId()>0){
  56. throw new CustomException("证书对应的专业已存在");
  57. }
  58. SysCertificateAddition p2 = getOne(new LambdaUpdateWrapper<SysCertificateAddition>()
  59. .eq(SysCertificateAddition::getCertificateId,entity.getCertificateId())
  60. .eq(SysCertificateAddition::getStatus,1));
  61. SysCertificateAddition model = new SysCertificateAddition();
  62. model.setCertificateId(entity.getCertificateId());
  63. model.setExpiryDate(entity.getExpiryDate());
  64. model.setCreateTime(DateUtils.getNowTime());
  65. model.setMajorId(entity.getMajorId());
  66. model.setCreator(entity.getUserId());
  67. if(entity.getCertificateType()!=3) {
  68. model.setIsPrimary(0);
  69. if (p2 == null) {
  70. model.setIsPrimary(1);
  71. }
  72. }else {
  73. model.setIsPrimary(entity.getIsPrimary());
  74. }
  75. return certAddMapper.insert(model);
  76. }
  77. @Override
  78. public void updateCertificateAddition(SysCertificateBo entity, long userid) {
  79. SysCertificateAddition model = new SysCertificateAddition();
  80. model.setCertificateId(entity.getCertificateId());
  81. model.setCreator(entity.getUserId());
  82. model.setExpiryDate(entity.getExpiryDate());
  83. model.setCreateTime(DateUtils.getNowTime());
  84. model.setStatus(1);
  85. model.setMajorId(entity.getMajorId());
  86. if(entity.getIsPrimary()>=0){
  87. model.setIsPrimary(entity.getIsPrimary());
  88. }
  89. model.setMajorName(entity.getMajorName());
  90. model.setCertificateAdditionId(entity.getCertificateAdditionId());
  91. String majorName = entity.getMajorName();
  92. Integer majorId = entity.getMajorId();
  93. if (model.getCertificateAdditionId() !=null&&model.getCertificateAdditionId() > 0) {
  94. certAddMapper.updateById(model);
  95. } else {
  96. SysCertificateAddition p =null;
  97. p = getOne(new LambdaUpdateWrapper<SysCertificateAddition>()
  98. .eq(SysCertificateAddition::getCertificateId, entity.getCertificateId())
  99. .eq(ObjectUtils.isNotNull(entity.getMajorId()), SysCertificateAddition::getMajorId, entity.getMajorId())
  100. .eq(SysCertificateAddition::getStatus, 1));
  101. if(p==null){
  102. certAddMapper.insert(model);
  103. }else {
  104. model.setCertificateAdditionId(p.getCertificateAdditionId());
  105. certAddMapper.updateById(model);
  106. }
  107. }
  108. }
  109. @Override
  110. public boolean deleteCertificateAdditionById(Long id, long userid) {
  111. SysCertificateAddition model = certAddMapper.selectById(id);
  112. model.setStatus(-1);
  113. model.setModifier(userid);
  114. model.setUpdateTime(DateUtils.getNowTime());
  115. return certAddMapper.updateById(model)>0;
  116. }
  117. @Override
  118. public List<SysCertificateAddition> selectCertificateAdditionByCertId(Long id) {
  119. return list(new LambdaUpdateWrapper<SysCertificateAddition>()
  120. .eq(SysCertificateAddition::getCertificateId, id)
  121. .eq(SysCertificateAddition::getStatus, 1));
  122. }
  123. @Override
  124. public List<SysCertificateAddition> selectCertificateAdditionByCertIds(List<Long> ids) {
  125. return list(new LambdaUpdateWrapper<SysCertificateAddition>()
  126. .in(SysCertificateAddition::getCertificateId, ids)
  127. .eq(SysCertificateAddition::getStatus, 1));
  128. }
  129. @Override
  130. public void IntCertificateAdditionByTypeIdAndCompanyId(Long companyId, Integer certTypeId,Long momoId) {
  131. SysCertificateBo entity = new SysCertificateBo();
  132. entity.setCompanyId(companyId);
  133. entity.setCertificateTypeId2(certTypeId);
  134. entity.setWarningState(1);
  135. entity.setPageNum(1);
  136. entity.setPageSize(10000);
  137. IPage<SysCertificate> pageinfo = certMapper.selectCerAdditionList(new Page<>(entity.getPageNum(), entity.getPageSize()), entity);
  138. pageinfo.getRecords().forEach(record -> {
  139. SysCertificateAddition model = new SysCertificateAddition();
  140. model.setCertificateAdditionId(record.getCertificateAdditionId());
  141. model.setWarningState(2);
  142. certAddMapper.updateById(model) ;
  143. MemoCertificate mCert=new MemoCertificate();
  144. mCert.setMemoId(momoId);
  145. mCert.setCertificateAdditionId(record.getCertificateAdditionId());
  146. mCert.setCreateTime(DateUtils.getNowTime());
  147. });
  148. }
  149. @Override
  150. public TableDataInfo<SysCertificate> selectPersonWarningList(SysCertificateBo entity) {
  151. if (ObjectUtil.isEmpty(entity.getPageSize()) || entity.getPageSize() < 1) {
  152. entity.setPageSize(-1);
  153. entity.setPageNum(1);
  154. }
  155. if(StringUtils.isNotBlank(entity.getCompanyName())){
  156. SysCompany company = sysCompanyService.selectCompanyByName(entity.getCompanyName(),entity.getUserId());
  157. if(ObjectUtil.isEmpty(company)){
  158. return new TableDataInfo<>();
  159. }
  160. entity.setCompanyId(entity.getCompanyId());
  161. }
  162. if(StringUtils.isNotBlank(entity.getPersonName())) {
  163. List<SysCompany> c_list = sysCompanyService.selectCompanyByUserid(entity.getUserId());
  164. if (c_list.isEmpty()) {
  165. return new TableDataInfo<>();
  166. }
  167. List<Long> companyIdList = c_list.stream().map(SysCompany::getCompanyId).collect(Collectors.toList());
  168. List<SysPerson> p_list = sysPersonService.selectPersonByName(entity.getPersonName(), companyIdList);
  169. if (p_list != null && p_list.size() == 0) {
  170. return new TableDataInfo<>();
  171. }
  172. List<Long> uids = p_list.stream().map(SysPerson::getPersonId).collect(Collectors.toList());
  173. entity.setPersonIds(uids);
  174. }
  175. IPage<SysCertificate> pageinfo = certMapper.selectCerAdditionList(new Page<>(entity.getPageNum(), entity.getPageSize()), entity);
  176. TableDataInfo<SysCertificate> info = new TableDataInfo();
  177. info.setTotal(pageinfo.getTotal());
  178. info.setRows(pageinfo.getRecords());
  179. return info;
  180. }
  181. @Override
  182. public TableDataInfo<SysCertificate> selectEnterpriseWarningList(SysCertificateBo entity) {
  183. if (ObjectUtil.isEmpty(entity.getPageSize()) || entity.getPageSize() < 1) {
  184. entity.setPageSize(-1);
  185. entity.setPageNum(1);
  186. }
  187. if(StringUtils.isNotBlank(entity.getCompanyName())){
  188. SysCompany company = sysCompanyService.selectCompanyByName(entity.getCompanyName(),entity.getUserId());
  189. if(ObjectUtil.isEmpty(company)){
  190. return new TableDataInfo<>();
  191. }
  192. entity.setCompanyId(entity.getCompanyId());
  193. }
  194. if(StringUtils.isNotBlank(entity.getPersonName())) {
  195. List<SysCompany> c_list = sysCompanyService.selectCompanyByUserid(entity.getUserId());
  196. if (c_list.isEmpty()) {
  197. return new TableDataInfo<>();
  198. }
  199. List<Long> companyIdList = c_list.stream().map(SysCompany::getCompanyId).collect(Collectors.toList());
  200. List<SysPerson> p_list = sysPersonService.selectPersonByName(entity.getPersonName(), companyIdList);
  201. if (p_list != null && p_list.size() == 0) {
  202. return new TableDataInfo<>();
  203. }
  204. List<Long> uids = p_list.stream().map(SysPerson::getPersonId).collect(Collectors.toList());
  205. entity.setPersonIds(uids);
  206. }
  207. IPage<SysCertificate> pageinfo = certMapper.selectEnterpriseCerAdditionList(new Page<>(entity.getPageNum(), entity.getPageSize()), entity);
  208. TableDataInfo<SysCertificate> info = new TableDataInfo();
  209. info.setTotal(pageinfo.getTotal());
  210. info.setRows(pageinfo.getRecords());
  211. return info;
  212. }
  213. }