CmOrganizeClubController.java 8.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199
  1. package com.caimei.modules.weisha.web;
  2. import com.caimei.modules.common.dao.AreaDao;
  3. import com.caimei.modules.common.entity.City;
  4. import com.caimei.modules.common.entity.Province;
  5. import com.caimei.modules.common.entity.Town;
  6. import com.caimei.modules.user.dao.CmUserDao;
  7. import com.caimei.modules.user.entity.CmUser;
  8. import com.caimei.modules.user.entity.CmUserOrganize;
  9. import com.caimei.modules.user.entity.NewCmClub;
  10. import com.caimei.modules.user.service.CmUserService;
  11. import com.caimei.modules.user.service.NewCmClubService;
  12. import com.caimei.modules.weisha.entity.CmMallOrganize;
  13. import com.caimei.modules.weisha.service.CmMallOrganizeService;
  14. import com.caimei.utils.AppKeys;
  15. import com.caimei.utils.RandomCodeGenerator;
  16. import com.thinkgem.jeesite.common.config.Global;
  17. import com.thinkgem.jeesite.common.persistence.Page;
  18. import com.thinkgem.jeesite.common.web.BaseController;
  19. import org.apache.commons.collections.CollectionUtils;
  20. import org.springframework.beans.factory.annotation.Autowired;
  21. import org.springframework.stereotype.Controller;
  22. import org.springframework.transaction.annotation.Transactional;
  23. import org.springframework.ui.Model;
  24. import org.springframework.web.bind.annotation.RequestMapping;
  25. import java.text.SimpleDateFormat;
  26. import java.util.Date;
  27. import java.util.List;
  28. /**
  29. * 组织机构Controller
  30. *
  31. * @author : plf
  32. * @date : 2021/3/22
  33. */
  34. @Controller
  35. @RequestMapping(value = "${adminPath}/weisha/user")
  36. public class CmOrganizeClubController extends BaseController {
  37. @Autowired
  38. private CmUserDao cmUserDao;
  39. @Autowired
  40. private NewCmClubService newCmClubService;
  41. @Autowired
  42. private AreaDao areaDao;
  43. @Autowired
  44. private CmUserService cmUserService;
  45. @Autowired
  46. private CmMallOrganizeService cmMallOrganizeService;
  47. /**
  48. * 组织机构列表
  49. */
  50. @RequestMapping(value = "organizeClubList")
  51. public String organizeClubList(CmUser cmUser, Page<CmUser> page, Model model) {
  52. if (0 == page.getPageSize() || -1 == page.getPageSize()) {
  53. page.setPageSize(30);
  54. }
  55. cmUser.setPage(page);
  56. List<CmUser> cmUserList = cmUserDao.findListBuyUserInfo(cmUser);
  57. page.setList(cmUserList);
  58. CmMallOrganize mallOrganize = cmMallOrganizeService.get(cmUser.getUserOrganizeID().toString());
  59. model.addAttribute("mallOrganize", mallOrganize);
  60. model.addAttribute("cmUserClub", cmUserList);
  61. model.addAttribute("startTime", cmUser.getStartTime());
  62. model.addAttribute("endTime", cmUser.getEndTime());
  63. return "modules/weisha/organizeClubList";
  64. }
  65. /**
  66. * 上线机构(添加,编辑)
  67. */
  68. @RequestMapping(value = "addClubUser")
  69. public String addClubUser(CmUserOrganize cmUserOrganize, NewCmClub newCmClub, Model model) {
  70. model.addAttribute("userOrganizeID", cmUserOrganize.getId());
  71. if (null != newCmClub.getClubID()) {
  72. newCmClub = newCmClubService.findClubById(newCmClub.getClubID());
  73. }
  74. Integer provinceID = newCmClub.getProvinceID();
  75. Integer townID = newCmClub.getTownID();
  76. Integer cityID = newCmClub.getCityID();
  77. //控制编辑异常时候的会显地址下拉框
  78. if (null != provinceID && provinceID > 0) {
  79. Province province = areaDao.loadProvinceById(provinceID);
  80. newCmClub.setProvince(province.getName());
  81. }
  82. if (null != cityID && cityID > 0) {
  83. City city = areaDao.loadCityById(cityID);
  84. newCmClub.setCity(city.getName());
  85. }
  86. if (null != townID && townID > 0) {
  87. Town town = areaDao.loadTownByID(townID);
  88. newCmClub.setTown(town.getName());
  89. }
  90. model.addAttribute("newCmClub", newCmClub);
  91. return "modules/weisha/addClubUserForm";
  92. }
  93. /**
  94. * 保存上线机构信息
  95. */
  96. @RequestMapping(value = "saveAddClubUser")
  97. @Transactional
  98. public String saveAddClubUser(CmUserOrganize cmUserOrganize, Page<CmUser> page, NewCmClub newCmClub, CmUser cmUser, Model model) throws Exception {
  99. String contractMobile = newCmClub.getContractMobile();
  100. Integer userID = newCmClub.getUserID();
  101. Integer clubID = newCmClub.getClubID();
  102. cmUser.setUserOrganizeID(Integer.parseInt(cmUserOrganize.getId()));
  103. SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  104. String currentDate = sdf.format(new Date());
  105. //判断该会所手机号是否已存在
  106. cmUser.setBindMobile(contractMobile);
  107. List<CmUser> listBuyBindMobile = cmUserService.findListBuyBindMobile(cmUser);
  108. if (CollectionUtils.isNotEmpty(listBuyBindMobile) && listBuyBindMobile.size() > 0) {
  109. addMessage(model, "手机号重复,请更换手机号");
  110. return addClubUser(cmUserOrganize, newCmClub, model);
  111. }
  112. //添加用户信息(新增或修改通用)
  113. cmUser.setName(newCmClub.getName());
  114. cmUser.setUserName(newCmClub.getName());
  115. cmUser.setRealName(newCmClub.getName());
  116. //添加用户新增信息
  117. if (null == userID) {//新增
  118. cmUser.setClubStatus("90");
  119. cmUser.setRegisterUserTypeID("4");//设置为会所
  120. cmUser.setUserIdentity(4);
  121. cmUser.setServiceProviderStatus("90");//设置默认协销状态
  122. cmUser.setServiceProviderID("1342");
  123. cmUser.setAuditTime(currentDate);
  124. cmUser.setAuditStatus("1");//审核通过
  125. cmUser.setAuditNote("后台添加用户系统默认审核通过");
  126. cmUser.setRegisterTime(currentDate);
  127. cmUser.setLoginTime(currentDate);
  128. cmUser.setAccount(newCmClub.getContractMobile() + RandomCodeGenerator.generateAccount(2));
  129. cmUser.setPassword("weisha");
  130. cmUser.setBindMobile(newCmClub.getContractMobile());
  131. cmUser.setUserName(newCmClub.getName());
  132. cmUser.setUserMoney(0d);
  133. cmUser.setAbleUserMoney(0d);
  134. cmUser.setValidFlag("1");
  135. cmUser.setAgreeFlag("1");
  136. cmUser.setUserLevelID("1");
  137. cmUser.setUserPermission(5);
  138. cmUserService.insert(cmUser);//插入新的用户数据
  139. }
  140. //添加会所表信息
  141. newCmClub.setSname(newCmClub.getName());
  142. if (null == clubID) {
  143. newCmClub.setStatus(90);
  144. newCmClub.setUserID(cmUser.getUserID());
  145. newCmClub.setDefaultServiceProviderID(AppKeys.DEFAULT_SPID);
  146. newCmClub.setSpID(AppKeys.DEFAULT_SPID);
  147. newCmClub.setMainServiceProviderID(AppKeys.DEFAULT_SPID);
  148. newCmClub.setAddTime(currentDate);
  149. newCmClub.setLinkMan1(newCmClub.getLinkMan());
  150. newCmClub.setContractMobile1(newCmClub.getContractMobile());
  151. newCmClub.setLevel(0d);
  152. newCmClub.setSubClubCount(0);
  153. newCmClub.setFavoriteTimes(0);
  154. newCmClub.setClubTypeID(1);
  155. newCmClub.setDefaultServiceProviderUpdTime(currentDate);
  156. newCmClubService.insert(newCmClub);
  157. //更新用户绑定关系
  158. cmUser.setClubID(String.valueOf(newCmClub.getClubID()));
  159. String nick = cmUser.getUserID() + "_" + RandomCodeGenerator.generateCodeString(4).toLowerCase();
  160. cmUser.setNick(nick);
  161. cmUser.setCompanyUserID(cmUser.getUserID());
  162. //更新会所绑定关系
  163. newCmClub.setUserID(cmUser.getUserID());
  164. }
  165. cmUserService.update(cmUser);//更新用户表数据(编辑数据,或新增数据更新)
  166. newCmClubService.update(newCmClub);//更新会所表数据(编辑数据,或新增数据更新)
  167. return "redirect:" + Global.getAdminPath() + "/weisha/user/organizeClubList?userOrganizeID=" + cmUserOrganize.getId();
  168. }
  169. /**
  170. * 机构上下线
  171. */
  172. @RequestMapping(value = "onlineAndOffline")
  173. public String onlineAndOffline(CmUser cmUser) {
  174. cmUserService.update(cmUser);//更新用户表数据
  175. NewCmClub newCmClub = new NewCmClub();
  176. newCmClub.setClubID(Integer.parseInt(cmUser.getClubID()));
  177. newCmClub.setUserID(cmUser.getUserID());
  178. newCmClub.setStatus(Integer.valueOf(cmUser.getClubStatus()));
  179. newCmClubService.update(newCmClub);//更新会所表数据
  180. return "redirect:" + Global.getAdminPath() + "/weisha/user/organizeClubList?userOrganizeID=" + cmUser.getUserOrganizeID();
  181. }
  182. }