|
@ -15,6 +15,7 @@ import com.yihu.jw.entity.base.dict.*;
|
|
import com.yihu.jw.entity.base.module.SaasModuleDO;
|
|
import com.yihu.jw.entity.base.module.SaasModuleDO;
|
|
import com.yihu.jw.entity.base.org.BaseOrgDO;
|
|
import com.yihu.jw.entity.base.org.BaseOrgDO;
|
|
import com.yihu.jw.entity.base.role.RoleDO;
|
|
import com.yihu.jw.entity.base.role.RoleDO;
|
|
|
|
import com.yihu.jw.entity.base.saas.BaseEmailTemplateConfigDO;
|
|
import com.yihu.jw.entity.base.saas.SaasDO;
|
|
import com.yihu.jw.entity.base.saas.SaasDO;
|
|
import com.yihu.jw.entity.base.saas.SaasThemeDO;
|
|
import com.yihu.jw.entity.base.saas.SaasThemeDO;
|
|
import com.yihu.jw.entity.base.saas.SaasThemeExtendDO;
|
|
import com.yihu.jw.entity.base.saas.SaasThemeExtendDO;
|
|
@ -25,6 +26,9 @@ import com.yihu.mysql.query.BaseJpaService;
|
|
import com.yihu.utils.security.MD5;
|
|
import com.yihu.utils.security.MD5;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.beans.factory.annotation.Value;
|
|
import org.springframework.beans.factory.annotation.Value;
|
|
|
|
import org.springframework.mail.MailException;
|
|
|
|
import org.springframework.mail.SimpleMailMessage;
|
|
|
|
import org.springframework.mail.javamail.JavaMailSender;
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
import org.springframework.util.StringUtils;
|
|
import org.springframework.util.StringUtils;
|
|
@ -78,6 +82,13 @@ public class SaasService extends BaseJpaService<SaasDO, SaasDao> {
|
|
private SaasThemeExtendDao saasThemeExtendDao;
|
|
private SaasThemeExtendDao saasThemeExtendDao;
|
|
@Value("${configDefault.saasId}")
|
|
@Value("${configDefault.saasId}")
|
|
private String defaultSaasId;
|
|
private String defaultSaasId;
|
|
|
|
@Autowired
|
|
|
|
private BaseEmailTemplateConfigService baseEmailTemplateConfigService;
|
|
|
|
@Value("${spring.mail.username}")
|
|
|
|
private String username;
|
|
|
|
@Autowired
|
|
|
|
JavaMailSender jms;
|
|
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
* 默认租户管理员角色code
|
|
* 默认租户管理员角色code
|
|
@ -91,19 +102,119 @@ public class SaasService extends BaseJpaService<SaasDO, SaasDao> {
|
|
*/
|
|
*/
|
|
@Transactional(rollbackFor = Exception.class)
|
|
@Transactional(rollbackFor = Exception.class)
|
|
public SaasDO create(SaasDO saas){
|
|
public SaasDO create(SaasDO saas){
|
|
saas.setStatus(SaasDO.Status.auditWait);
|
|
|
|
|
|
final SaasDO.Status staus = saas.getStatus();
|
|
|
|
saas.setStatus(SaasDO.Status.auditPassed);
|
|
saas = saasDao.save(saas);
|
|
saas = saasDao.save(saas);
|
|
List<BaseOrgDO> orgDOList = saas.getOrgList();
|
|
List<BaseOrgDO> orgDOList = saas.getOrgList();
|
|
if(orgDOList!=null&&orgDOList.size()>0){
|
|
if(orgDOList!=null&&orgDOList.size()>0){
|
|
String saasId = saas.getId();
|
|
String saasId = saas.getId();
|
|
orgDOList.forEach(org->{
|
|
orgDOList.forEach(org->{
|
|
|
|
BaseOrgDO orgDO = baseOrgDao.findByCodeAndSaasId(org.getCode(),defaultSaasId);
|
|
org.setSaasid(saasId);
|
|
org.setSaasid(saasId);
|
|
|
|
org.setName(orgDO.getName());
|
|
|
|
org.setCreateTime(new Date());
|
|
|
|
org.setAddress(orgDO.getAddress());
|
|
|
|
org.setAlias(orgDO.getAlias());
|
|
|
|
org.setBrief(orgDO.getBrief());
|
|
|
|
org.setCityCode(orgDO.getCityCode());
|
|
|
|
org.setCityName(orgDO.getCityName());
|
|
|
|
org.setDel(orgDO.getDel());
|
|
|
|
org.setIntro(orgDO.getIntro());
|
|
|
|
org.setLatitude(orgDO.getLatitude());
|
|
|
|
org.setLegalperson(orgDO.getLegalperson());
|
|
|
|
org.setLongitude(orgDO.getLongitude());
|
|
|
|
org.setName(orgDO.getName());
|
|
|
|
org.setOrgAdmin(orgDO.getOrgAdmin());
|
|
|
|
org.setOrgUrl(orgDO.getOrgUrl());
|
|
|
|
org.setPhoto(orgDO.getPhoto());
|
|
|
|
org.setProvinceCode(orgDO.getProvinceCode());
|
|
|
|
org.setProvinceName(orgDO.getProvinceName());
|
|
|
|
org.setQrcode(orgDO.getQrcode());
|
|
|
|
org.setSpell(orgDO.getSpell());
|
|
|
|
org.setStreetCode(orgDO.getStreetCode());
|
|
|
|
org.setStreetName(orgDO.getStreetName());
|
|
|
|
org.setTownCode(orgDO.getTownCode());
|
|
|
|
org.setTownName(orgDO.getTownName());
|
|
|
|
org.setType(orgDO.getType());
|
|
});
|
|
});
|
|
}
|
|
}
|
|
baseOrgDao.save(orgDOList);
|
|
baseOrgDao.save(orgDOList);
|
|
|
|
|
|
|
|
//用户信息初始化
|
|
|
|
UserDO userDO = new UserDO();
|
|
|
|
userDO.setEmail(saas.getEmail());
|
|
|
|
userDO.setMobile(saas.getMobile());
|
|
|
|
userDO.setName(saas.getManagerName());
|
|
|
|
userDO.setUsername(userDO.getEmail());
|
|
|
|
|
|
|
|
saasAudit(saas, userDO);
|
|
|
|
send(saas);
|
|
|
|
saas.setStatus(staus);
|
|
|
|
saasDao.save(saas);
|
|
return saas;
|
|
return saas;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* 发送邮件
|
|
|
|
* @param saasDO
|
|
|
|
*/
|
|
|
|
public void send(SaasDO saasDO) {
|
|
|
|
try {
|
|
|
|
SaasDO.Status status = saasDO.getStatus();
|
|
|
|
String password = saasDO.getMobile().substring(0, 6);
|
|
|
|
BaseEmailTemplateConfigDO baseEmailTemplateConfigDO = baseEmailTemplateConfigService.findByCode(status.name());
|
|
|
|
if (null == baseEmailTemplateConfigDO) {
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
//建立邮件消息
|
|
|
|
SimpleMailMessage mainMessage = new SimpleMailMessage();
|
|
|
|
//发送者
|
|
|
|
mainMessage.setFrom(username);
|
|
|
|
//接收者
|
|
|
|
mainMessage.setTo(saasDO.getEmail());
|
|
|
|
//发送的标题
|
|
|
|
mainMessage.setSubject(baseEmailTemplateConfigDO.getTemplateName());
|
|
|
|
//发送的内容
|
|
|
|
StringBuffer content = new StringBuffer();
|
|
|
|
content.append(baseEmailTemplateConfigDO.getFirst() + "\n").append(baseEmailTemplateConfigDO.getKeyword1() + "\n");
|
|
|
|
content.append(baseEmailTemplateConfigDO.getKeyword2() + "\n");
|
|
|
|
if (status.equals(SaasDO.Status.auditPassed)) {
|
|
|
|
//账号
|
|
|
|
content.append(baseEmailTemplateConfigDO.getKeyword3() + saasDO.getMobile() + "\n");
|
|
|
|
//密码
|
|
|
|
content.append(baseEmailTemplateConfigDO.getKeyword4() + password + "\n");
|
|
|
|
} else if (status.equals(SaasDO.Status.auditNotPassed)) {
|
|
|
|
//审核未通过的原因
|
|
|
|
content.append(saasDO.getAuditFailedReason() + "\n");
|
|
|
|
}
|
|
|
|
content.append(baseEmailTemplateConfigDO.getKeyword5() + baseEmailTemplateConfigDO.getUrl() + "\n");
|
|
|
|
content.append(baseEmailTemplateConfigDO.getRemark());
|
|
|
|
mainMessage.setText(content.toString());
|
|
|
|
jms.send(mainMessage);
|
|
|
|
} catch (MailException e) {
|
|
|
|
e.printStackTrace();
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* 注册修改
|
|
|
|
* @param saas
|
|
|
|
* @return
|
|
|
|
*/
|
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
|
public SaasDO create(SaasDO saas,SaasDO oldSaas){
|
|
|
|
oldSaas.setStatus(SaasDO.Status.auditWait);
|
|
|
|
oldSaas.setEmail(saas.getEmail());
|
|
|
|
oldSaas.setMobile(saas.getMobile());
|
|
|
|
oldSaas.setManagerName(saas.getManagerName());
|
|
|
|
oldSaas.setName(saas.getName());
|
|
|
|
oldSaas.setOrganizationCode(saas.getOrganizationCode());
|
|
|
|
oldSaas.setBusinessLicense(saas.getBusinessLicense());
|
|
|
|
oldSaas.setType(saas.getType());
|
|
|
|
saasDao.save(oldSaas);
|
|
|
|
return oldSaas;
|
|
|
|
}
|
|
|
|
|
|
/**
|
|
/**
|
|
* 修改
|
|
* 修改
|
|
* @param saas
|
|
* @param saas
|
|
@ -127,7 +238,33 @@ public class SaasService extends BaseJpaService<SaasDO, SaasDao> {
|
|
List<BaseOrgDO> orgDOList = saas.getOrgList();
|
|
List<BaseOrgDO> orgDOList = saas.getOrgList();
|
|
if(orgDOList!=null&&orgDOList.size()>0){
|
|
if(orgDOList!=null&&orgDOList.size()>0){
|
|
orgDOList.forEach(org->{
|
|
orgDOList.forEach(org->{
|
|
|
|
BaseOrgDO orgDO = baseOrgDao.findByCodeAndSaasId(org.getCode(),defaultSaasId);
|
|
org.setSaasid(saasId);
|
|
org.setSaasid(saasId);
|
|
|
|
org.setName(orgDO.getName());
|
|
|
|
org.setCreateTime(new Date());
|
|
|
|
org.setAddress(orgDO.getAddress());
|
|
|
|
org.setAlias(orgDO.getAlias());
|
|
|
|
org.setBrief(orgDO.getBrief());
|
|
|
|
org.setCityCode(orgDO.getCityCode());
|
|
|
|
org.setCityName(orgDO.getCityName());
|
|
|
|
org.setDel(orgDO.getDel());
|
|
|
|
org.setIntro(orgDO.getIntro());
|
|
|
|
org.setLatitude(orgDO.getLatitude());
|
|
|
|
org.setLegalperson(orgDO.getLegalperson());
|
|
|
|
org.setLongitude(orgDO.getLongitude());
|
|
|
|
org.setName(orgDO.getName());
|
|
|
|
org.setOrgAdmin(orgDO.getOrgAdmin());
|
|
|
|
org.setOrgUrl(orgDO.getOrgUrl());
|
|
|
|
org.setPhoto(orgDO.getPhoto());
|
|
|
|
org.setProvinceCode(orgDO.getProvinceCode());
|
|
|
|
org.setProvinceName(orgDO.getProvinceName());
|
|
|
|
org.setQrcode(orgDO.getQrcode());
|
|
|
|
org.setSpell(orgDO.getSpell());
|
|
|
|
org.setStreetCode(orgDO.getStreetCode());
|
|
|
|
org.setStreetName(orgDO.getStreetName());
|
|
|
|
org.setTownCode(orgDO.getTownCode());
|
|
|
|
org.setTownName(orgDO.getTownName());
|
|
|
|
org.setType(orgDO.getType());
|
|
});
|
|
});
|
|
}
|
|
}
|
|
baseOrgDao.save(orgDOList);
|
|
baseOrgDao.save(orgDOList);
|
|
@ -136,7 +273,6 @@ public class SaasService extends BaseJpaService<SaasDO, SaasDao> {
|
|
return oldSaas;
|
|
return oldSaas;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
* 系统配置
|
|
* 系统配置
|
|
* @param saasDO
|
|
* @param saasDO
|
|
@ -233,6 +369,8 @@ public class SaasService extends BaseJpaService<SaasDO, SaasDao> {
|
|
userRoleDO.setUserId(user.getId());
|
|
userRoleDO.setUserId(user.getId());
|
|
userRoleDao.save(userRoleDO);
|
|
userRoleDao.save(userRoleDO);
|
|
saas.setManager(user.getId());
|
|
saas.setManager(user.getId());
|
|
|
|
saas.setAppId(getCode());
|
|
|
|
saas.setAppSecret(getCode());
|
|
saas = saasDao.save(saas);
|
|
saas = saasDao.save(saas);
|
|
String saasId = saas.getId();
|
|
String saasId = saas.getId();
|
|
//系统字典项
|
|
//系统字典项
|