CmServiceteamRoleService.java 3.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  1. package com.caimei.modules.serviceteam.service;
  2. import java.util.List;
  3. import com.caimei.modules.project.model.ServiceProviderModel;
  4. import com.thinkgem.jeesite.common.utils.StringUtils;
  5. import org.springframework.beans.factory.annotation.Autowired;
  6. import org.springframework.stereotype.Service;
  7. import org.springframework.transaction.annotation.Transactional;
  8. import com.thinkgem.jeesite.common.persistence.Page;
  9. import com.thinkgem.jeesite.common.service.CrudService;
  10. import com.caimei.modules.serviceteam.entity.CmServiceteamRole;
  11. import com.caimei.modules.serviceteam.dao.CmServiceteamRoleDao;
  12. /**
  13. * 协销小组Service
  14. *
  15. * @author zzj
  16. * @version 2022-01-20
  17. */
  18. @Service
  19. @Transactional(readOnly = true)
  20. public class CmServiceteamRoleService extends CrudService<CmServiceteamRoleDao, CmServiceteamRole> {
  21. @Autowired
  22. private CmServiceteamRoleDao dao;
  23. public CmServiceteamRole get(String id) {
  24. return super.get(id);
  25. }
  26. public List<CmServiceteamRole> findList(CmServiceteamRole cmServiceteamRole) {
  27. return super.findList(cmServiceteamRole);
  28. }
  29. public Page<CmServiceteamRole> findPage(Page<CmServiceteamRole> page, CmServiceteamRole cmServiceteamRole) {
  30. cmServiceteamRole.setPage(page);
  31. List<CmServiceteamRole> list = dao.findTeams(cmServiceteamRole);
  32. list.forEach(l -> l.setGroup(dao.findGroups(l.getTeamId())));
  33. page.setList(list);
  34. return page;
  35. }
  36. @Transactional(readOnly = false)
  37. public void save(CmServiceteamRole cmServiceteamRole) {
  38. }
  39. @Transactional(readOnly = false)
  40. public void delete(CmServiceteamRole cmServiceteamRole) {
  41. //删组长
  42. dao.delete(cmServiceteamRole.getTeamId());
  43. //删组员
  44. dao.deleteAll(cmServiceteamRole.getTeamId());
  45. }
  46. public CmServiceteamRole findGroup(CmServiceteamRole cmServiceteamRole) {
  47. if (StringUtils.isNotBlank(cmServiceteamRole.getTeamId())) {
  48. cmServiceteamRole=dao.findLeader(cmServiceteamRole.getTeamId());
  49. List<ServiceProviderModel> list=dao.findGroups(cmServiceteamRole.getTeamId());
  50. list.forEach(l->l.setTeamFlag(1));
  51. if(null!=list&&list.size()>=10){
  52. //如果有十个组员返回满员标记
  53. cmServiceteamRole.setFullFlag(1);
  54. }
  55. List<ServiceProviderModel> allList= dao.findAllGroups();
  56. list.addAll(allList);
  57. cmServiceteamRole.setGroup(list);
  58. return cmServiceteamRole;
  59. } else {
  60. cmServiceteamRole.setGroup(dao.findAllGroups());
  61. return cmServiceteamRole;
  62. }
  63. }
  64. @Transactional(readOnly = false)
  65. public void saveGroup(List<String> ids, CmServiceteamRole cmServiceteamRole) {
  66. if (StringUtils.isNotBlank(cmServiceteamRole.getTeamId())) {
  67. //如果小组存在,先修改原小组组长,删除组员,再保存现小组组员
  68. //修改组长id,不修改小组创建时间影响排序
  69. dao.updateLeadr(cmServiceteamRole);
  70. //删组员
  71. dao.deleteAll(cmServiceteamRole.getTeamId());
  72. } else {
  73. // 协销小组不存在, 先添加协销小组
  74. dao.save(cmServiceteamRole);
  75. }
  76. ids.forEach(i->dao.saveGroup(cmServiceteamRole.getTeamId(),i));
  77. }
  78. }