|
@@ -1,44 +1,236 @@
|
|
package com.caimei.modules.user.service;
|
|
package com.caimei.modules.user.service;
|
|
|
|
|
|
-import java.util.List;
|
|
|
|
-
|
|
|
|
|
|
+import com.caimei.modules.miniprogram.utils.UploadPicUtils;
|
|
|
|
+import com.caimei.modules.user.dao.ClubTemporaryDao;
|
|
|
|
+import com.caimei.modules.user.dao.CmSpDao;
|
|
|
|
+import com.caimei.modules.user.dao.CmUserDao;
|
|
|
|
+import com.caimei.modules.user.dao.NewCmClubDao;
|
|
|
|
+import com.caimei.modules.user.entity.*;
|
|
|
|
+import com.thinkgem.jeesite.common.persistence.Page;
|
|
|
|
+import com.thinkgem.jeesite.common.service.CrudService;
|
|
|
|
+import com.thinkgem.jeesite.common.utils.StringUtils;
|
|
|
|
+import com.thinkgem.jeesite.modules.sys.entity.User;
|
|
|
|
+import com.thinkgem.jeesite.modules.sys.utils.UserUtils;
|
|
|
|
+import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
-import com.thinkgem.jeesite.common.persistence.Page;
|
|
|
|
-import com.thinkgem.jeesite.common.service.CrudService;
|
|
|
|
-import com.caimei.modules.user.entity.ClubTemporary;
|
|
|
|
-import com.caimei.modules.user.dao.ClubTemporaryDao;
|
|
|
|
|
|
+import java.text.SimpleDateFormat;
|
|
|
|
+import java.util.Date;
|
|
|
|
+import java.util.List;
|
|
|
|
|
|
/**
|
|
/**
|
|
* 未确认机构Service
|
|
* 未确认机构Service
|
|
|
|
+ *
|
|
* @author plf
|
|
* @author plf
|
|
* @version 2021-07-13
|
|
* @version 2021-07-13
|
|
*/
|
|
*/
|
|
@Service
|
|
@Service
|
|
@Transactional(readOnly = true)
|
|
@Transactional(readOnly = true)
|
|
public class ClubTemporaryService extends CrudService<ClubTemporaryDao, ClubTemporary> {
|
|
public class ClubTemporaryService extends CrudService<ClubTemporaryDao, ClubTemporary> {
|
|
|
|
+ @Autowired
|
|
|
|
+ private ClubTemporaryDao clubTemporaryDao;
|
|
|
|
+ @Autowired
|
|
|
|
+ private CmUserDao cmUserDao;
|
|
|
|
+ @Autowired
|
|
|
|
+ private CmSpDao cmSpDao;
|
|
|
|
+ @Autowired
|
|
|
|
+ private NewCmClubDao newCmClubDao;
|
|
|
|
+
|
|
|
|
+ public ClubTemporary get(String id) {
|
|
|
|
+ return super.get(id);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public List<ClubTemporary> findList(ClubTemporary clubTemporary) {
|
|
|
|
+ return super.findList(clubTemporary);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public Page<ClubTemporary> findPage(Page<ClubTemporary> page, ClubTemporary clubTemporary) {
|
|
|
|
+ return super.findPage(page, clubTemporary);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ @Transactional(readOnly = false)
|
|
|
|
+ public void save(ClubTemporary clubTemporary) {
|
|
|
|
+ super.save(clubTemporary);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ @Transactional(readOnly = false)
|
|
|
|
+ public void delete(ClubTemporary clubTemporary) {
|
|
|
|
+ super.delete(clubTemporary);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ @Transactional(readOnly = false)
|
|
|
|
+ public void registerSave(ClubTemporary clubTemporary) throws Exception {
|
|
|
|
+ Date date = new Date();
|
|
|
|
+ String time = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(date);
|
|
|
|
+ if (clubTemporary.getConfirmUserId() == null) {
|
|
|
|
+ List<CmUser> userList = cmUserDao.selectByMobileOrEmail(clubTemporary.getBindMobile(), "crm");
|
|
|
|
+ if (userList != null && userList.size() > 0) {
|
|
|
|
+ throw new Exception("机构手机号已存在");
|
|
|
|
+ }
|
|
|
|
+ NewCmSp cmSp = cmSpDao.findByUserId(clubTemporary.getUserId());
|
|
|
|
+ CmUser user = new CmUser();
|
|
|
|
+ // 机构拉上线统称为此IP方便后面直接标记为协销代注册
|
|
|
|
+ user.setRegisterIP("192.168.1.10");
|
|
|
|
+ // 注册来源: 0网站 1小程序(拉机构上线小程序注册)
|
|
|
|
+ user.setSource(1);
|
|
|
|
+ // 采美默认组织机构0
|
|
|
|
+ user.setUserOrganizeID(0);
|
|
|
|
+ // 组织名称
|
|
|
|
+ user.setName(clubTemporary.getLinkMan());
|
|
|
|
+ // 用户名
|
|
|
|
+ user.setUserName(clubTemporary.getLinkMan());
|
|
|
|
+ // 绑定手机号
|
|
|
|
+ user.setBindMobile(clubTemporary.getBindMobile());
|
|
|
|
+ // 设置已确认(客服确认机构)
|
|
|
|
+ user.setClubStatus("93");
|
|
|
|
+ // 默认密码
|
|
|
|
+ user.setPassword("12345678");
|
|
|
|
+ // 同意协议
|
|
|
|
+ user.setAgreeFlag(clubTemporary.getIsAgreed());
|
|
|
|
+ // 用户状态,1正常,0冻结
|
|
|
|
+ user.setValidFlag("1");
|
|
|
|
+ // 协销Id
|
|
|
|
+ user.setServiceProviderID(cmSp.getServiceProviderID().toString());
|
|
|
|
+ // 协销状态
|
|
|
|
+ user.setServiceProviderStatus(cmSp.getStatus().toString());
|
|
|
|
+ // 会员机构,填写升级资料
|
|
|
|
+ if (StringUtils.isNotBlank(clubTemporary.getBusinessLicense())) {
|
|
|
|
+ // 用户类型,供应商1,会员机构3,普通机构4
|
|
|
|
+ user.setRegisterUserTypeID("3");
|
|
|
|
+ // 用户身份: 1协销 2会员机构 3供应商 4普通机构
|
|
|
|
+ user.setUserIdentity(2);
|
|
|
|
+ // 用户权限: 2会员机构 3供应商 4协销 5普通机构
|
|
|
|
+ user.setUserPermission(2);
|
|
|
|
+ // 组织名称
|
|
|
|
+ user.setName(clubTemporary.getName());
|
|
|
|
+ // 邮箱
|
|
|
|
+ user.setEmail(clubTemporary.getContractEmail());
|
|
|
|
+ // 是否已经引导过(机构升级:0否,1是)
|
|
|
|
+ user.setGuideFlag("1");
|
|
|
|
+ //后台客服确认注册默认审核通过
|
|
|
|
+ user.setAuditTime(time);
|
|
|
|
+ user.setAuditStatus("1");
|
|
|
|
+ user.setAuditNote("后台客服确认注册默认审核通过");
|
|
|
|
+ } else {
|
|
|
|
+ // 用户类型,供应商1,会员机构3,普通机构4
|
|
|
|
+ user.setRegisterUserTypeID("4");
|
|
|
|
+ // 用户身份: 1协销 2会员机构 3供应商 4普通机构
|
|
|
|
+ user.setUserIdentity(4);
|
|
|
|
+ // 用户权限: 2会员机构 3供应商 4协销 5普通机构
|
|
|
|
+ user.setUserPermission(5);
|
|
|
|
+ // 是否已经引导过(机构升级:0否,1是)
|
|
|
|
+ user.setGuideFlag("0");
|
|
|
|
+ }
|
|
|
|
+ cmUserDao.insert(user);
|
|
|
|
+
|
|
|
|
+ NewCmClub club = new NewCmClub();
|
|
|
|
+ // 联系手机
|
|
|
|
+ club.setContractMobile(clubTemporary.getBindMobile());
|
|
|
|
+ // 联系人
|
|
|
|
+ club.setLinkMan(clubTemporary.getLinkMan());
|
|
|
|
+ // 用户Id
|
|
|
|
+ club.setUserID(user.getUserID());
|
|
|
|
+ // 设置协销ID
|
|
|
|
+ club.setSpID(cmSp.getServiceProviderID());
|
|
|
|
+ // 待扫描
|
|
|
|
+ club.setScanFlag("0");
|
|
|
|
+ // 设置已确认(客服确认机构)
|
|
|
|
+ club.setStatus(93);
|
|
|
|
+ // 会员机构,填写升级资料
|
|
|
|
+ if (StringUtils.isNotBlank(clubTemporary.getBusinessLicense())) {
|
|
|
|
+ // 机构名称
|
|
|
|
+ club.setName(clubTemporary.getName());
|
|
|
|
+ // 机构简称
|
|
|
|
+ club.setSname(clubTemporary.getShortName());
|
|
|
|
+ // 邮箱
|
|
|
|
+ club.setContractEmail1(clubTemporary.getContractEmail());
|
|
|
|
+ // 地址
|
|
|
|
+ club.setProvinceID(clubTemporary.getProvinceId());
|
|
|
|
+ club.setCityID(clubTemporary.getCityId());
|
|
|
|
+ club.setTownID(clubTemporary.getTownId());
|
|
|
|
+ club.setAddress(clubTemporary.getAddress());
|
|
|
|
+ // 门头照
|
|
|
|
+ club.setHeadpic(clubTemporary.getShopPhoto());
|
|
|
|
+ // 营业执照
|
|
|
|
+ club.setBusinessLicenseImage(clubTemporary.getBusinessLicense());
|
|
|
|
+ // 统一社会信用代码
|
|
|
|
+ club.setSocialCreditCode(clubTemporary.getSocialCreditCode());
|
|
|
|
+ // 分类: 1医美, 2生美
|
|
|
|
+ club.setFirstClubType(clubTemporary.getFirstClubType());
|
|
|
|
+ if ("1".equals(clubTemporary.getFirstClubType())) {
|
|
|
|
+ // 医美二级分类: 1诊所、2门诊、3医院
|
|
|
|
+ club.setSecondClubType(clubTemporary.getSecondClubType());
|
|
|
|
+ // 门诊和医院则需要填写科室
|
|
|
|
+ club.setDepartment(clubTemporary.getDepartment());
|
|
|
|
+ // 医美分类必须上传医疗执业许可证
|
|
|
|
+ club.setMedicalPracticeLicenseImg(clubTemporary.getMedicalPracticeLicense());
|
|
|
|
+ }
|
|
|
|
+ // 主打项目(mainpro)
|
|
|
|
+ club.setMainpro(clubTemporary.getMainProduct());
|
|
|
|
+ //后台客服确认注册默认审核通过
|
|
|
|
+ club.setAuditTime(time);
|
|
|
|
+ club.setAuditNote("后台客服确认注册默认审核通过");
|
|
|
|
+ } else {
|
|
|
|
+ // 机构名称
|
|
|
|
+ club.setName(clubTemporary.getLinkMan());
|
|
|
|
+ // 机构简称
|
|
|
|
+ club.setSname(clubTemporary.getLinkMan());
|
|
|
|
+ }
|
|
|
|
+ newCmClubDao.insert(club);
|
|
|
|
+ // user更新clubId
|
|
|
|
+ user.setClubID(club.getClubID().toString());
|
|
|
|
+ cmUserDao.update(user);
|
|
|
|
+ clubTemporary.setConfirmUserId(user.getUserID());
|
|
|
|
+ clubTemporaryDao.update(clubTemporary);
|
|
|
|
+ } else {
|
|
|
|
+ //客服二次确认注册
|
|
|
|
+ cmUserDao.updateByClubStatus(93, clubTemporary.getConfirmUserId());
|
|
|
|
+ newCmClubDao.updateByStatus(93, clubTemporary.getConfirmUserId());
|
|
|
|
+ }
|
|
|
|
+ User user = UserUtils.getUser();
|
|
|
|
+ ClubConfirmRecord confirmRecord = new ClubConfirmRecord();
|
|
|
|
+ confirmRecord.setSystemUserId(Integer.valueOf(user.getId()));
|
|
|
|
+ confirmRecord.setUserId(clubTemporary.getConfirmUserId());
|
|
|
|
+ //备注图片
|
|
|
|
+ String[] images = clubTemporary.getImages();
|
|
|
|
+ if (images != null && images.length > 0) {
|
|
|
|
+ StringBuilder remarkImage = new StringBuilder();
|
|
|
|
+ for (String image : images) {
|
|
|
|
+ if (StringUtils.isNotBlank(image)) {
|
|
|
|
+ String url = UploadPicUtils.saveImageToServer(image);
|
|
|
|
+ remarkImage.append(url).append(",");
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ confirmRecord.setImages(String.valueOf(remarkImage));
|
|
|
|
+ }
|
|
|
|
+ confirmRecord.setRemarks(clubTemporary.getRemarks());
|
|
|
|
+ confirmRecord.setConfirmTime(date);
|
|
|
|
+ clubTemporaryDao.insertClubConfirmRecord(confirmRecord);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public List<ClubConfirmRecord> confirmRecord(ClubTemporary clubTemporary) {
|
|
|
|
+ List<ClubConfirmRecord> recordList = null;
|
|
|
|
+ Integer userId = clubTemporary.getConfirmUserId();
|
|
|
|
+ if (userId != null) {
|
|
|
|
+ recordList = clubTemporaryDao.findConfirmRecord(userId);
|
|
|
|
+ if (recordList != null && recordList.size() > 0) {
|
|
|
|
+ recordList.forEach(record -> {
|
|
|
|
+ User user = UserUtils.get(record.getSystemUserId().toString());
|
|
|
|
+ if (user != null) {
|
|
|
|
+ record.setSystemName(user.getName());
|
|
|
|
+ }
|
|
|
|
+ if (StringUtils.isNotBlank(record.getImages())) {
|
|
|
|
+ String[] split = record.getImages().split(",");
|
|
|
|
+ record.setRemarkImages(split);
|
|
|
|
+ }
|
|
|
|
+ });
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ return recordList;
|
|
|
|
+ }
|
|
|
|
|
|
- public ClubTemporary get(String id) {
|
|
|
|
- return super.get(id);
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- public List<ClubTemporary> findList(ClubTemporary clubTemporary) {
|
|
|
|
- return super.findList(clubTemporary);
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- public Page<ClubTemporary> findPage(Page<ClubTemporary> page, ClubTemporary clubTemporary) {
|
|
|
|
- return super.findPage(page, clubTemporary);
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- @Transactional(readOnly = false)
|
|
|
|
- public void save(ClubTemporary clubTemporary) {
|
|
|
|
- super.save(clubTemporary);
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- @Transactional(readOnly = false)
|
|
|
|
- public void delete(ClubTemporary clubTemporary) {
|
|
|
|
- super.delete(clubTemporary);
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
|
|
+ public ClubTemporary findByConfirmUserId(Integer userId) {
|
|
|
|
+ return clubTemporaryDao.findByConfirmUserId(userId);
|
|
|
|
+ }
|
|
}
|
|
}
|