Sfoglia il codice sorgente

Merge branch 'dev' of http://192.168.1.220:10080/jiwei/wlyy2.0 into dev

yeshijie 6 anni fa
parent
commit
1b8a8b3dc0

+ 4 - 2
common/common-entity/src/main/java/com/yihu/jw/entity/base/org/BaseOrgDO.java

@ -1,10 +1,10 @@
package com.yihu.jw.entity.base.org;
import com.yihu.jw.entity.UuidIdentityEntityWithOperator;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
import java.util.Date;
/**
@ -142,8 +142,10 @@ public class BaseOrgDO extends UuidIdentityEntityWithOperator {
	 */
	private String del;
    public BaseOrgDO() {
    }
	public BaseOrgDO(String provinceCode,String provinceName,String cityCode,String cityName,String townCode,String townName,String code,String name ){
    public BaseOrgDO(String provinceCode, String provinceName, String cityCode, String cityName, String townCode, String townName, String code, String name ){
	    this.provinceCode = provinceCode;
	    this.provinceName = provinceName;
	    this.cityCode = cityCode;

+ 3 - 3
common/common-entity/src/main/java/com/yihu/jw/entity/base/saas/SaasDO.java

@ -35,7 +35,7 @@ public class SaasDO extends UuidIdentityEntityWithOperator {
	private Status status; // 状态(0-待审核 1-审核通过(启用) 2-审核不通过 3-已暂停)
	private String remark; //备注
	private String logo; //远程fastDFS文件地址
    private Integer type; //类型
    private String type; //类型
	private String manager; //管理员 - 关联user表id字段
	private String email; //管理员邮箱
	private String mobile; //管理员手机号码
@ -96,11 +96,11 @@ public class SaasDO extends UuidIdentityEntityWithOperator {
	}
	@Column(name = "type", nullable = false)
	public Integer getType() {
	public String getType() {
		return type;
	}
	public void setType(Integer type) {
	public void setType(String type) {
		this.type = type;
	}

+ 3 - 3
common/common-rest-model/src/main/java/com/yihu/jw/restmodel/base/saas/SaasVO.java

@ -28,7 +28,7 @@ public class SaasVO extends UuidIdentityVOWithOperator {
	@ApiModelProperty(value = "远程fastDFS文件地址", example = "group1:M00/97/E9/wKgyJltp1i-AHHf6AAAvRXBaR18423.zip")
	private String logo;
	@ApiModelProperty(value = "类型(租户类型编码,从1开始自增)", example = "1")
    private Integer type;
    private String type;
	@ApiModelProperty(value = "管理员 - 关联user表id字段", example = "402303ee656498890165649ad2wa00sd")
	private String manager;
	@ApiModelProperty(value = "管理员邮箱", example = "admin@jkzl.com")
@ -104,11 +104,11 @@ public class SaasVO extends UuidIdentityVOWithOperator {
		this.logo = logo;
	}
	public Integer getType() {
	public String getType() {
		return type;
	}
	public void setType(Integer type) {
	public void setType(String type) {
		this.type = type;
	}

+ 5 - 4
svr/svr-base/src/main/java/com/yihu/jw/base/endpoint/module/ModuleEndpoint.java

@ -17,10 +17,11 @@ import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.*;
import java.util.*;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
@ -37,7 +38,7 @@ public class ModuleEndpoint extends EnvelopRestEndpoint {
    @Autowired
    private ErrorCodeUtil errorCodeUtil;
    @PostMapping(value = BaseRequestMapping.Module.CREATE, consumes = MediaType.APPLICATION_JSON_UTF8_VALUE)
    @PostMapping(value = BaseRequestMapping.Module.CREATE)
    @ApiOperation(value = "创建")
    public ObjEnvelop<ModuleVO> create (
            @ApiParam(name = "json_data", value = "Json数据", required = true)
@ -79,7 +80,7 @@ public class ModuleEndpoint extends EnvelopRestEndpoint {
        return success("删除成功");
    }
    @PostMapping(value = BaseRequestMapping.Module.UPDATE, consumes = MediaType.APPLICATION_JSON_UTF8_VALUE)
    @PostMapping(value = BaseRequestMapping.Module.UPDATE)
    @ApiOperation(value = "更新")
    public ObjEnvelop<ModuleVO> update (
            @ApiParam(name = "json_data", value = "Json数据", required = true)

+ 1 - 2
svr/svr-base/src/main/java/com/yihu/jw/base/endpoint/open/register/RegisterEndpoint.java

@ -22,7 +22,6 @@ import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.http.MediaType;
import org.springframework.mail.SimpleMailMessage;
import org.springframework.mail.javamail.JavaMailSender;
import org.springframework.web.bind.annotation.*;
@ -60,7 +59,7 @@ public class RegisterEndpoint extends EnvelopRestEndpoint {
     */
    private final String redisPrefix = "verificationCode:";
    @PostMapping(value = BaseRequestMapping.RegisterSaas.REGISTER, consumes = MediaType.APPLICATION_JSON_UTF8_VALUE)
    @PostMapping(value = BaseRequestMapping.RegisterSaas.REGISTER)
    @ApiOperation(value = "注册租户")
    public Envelop create (
            @ApiParam(name = "jsonSaas", value = "租户数据", required = true)

+ 9 - 18
svr/svr-base/src/main/java/com/yihu/jw/base/endpoint/saas/SaasEndpoint.java

@ -22,7 +22,6 @@ import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.http.MediaType;
import org.springframework.mail.MailException;
import org.springframework.mail.SimpleMailMessage;
import org.springframework.mail.javamail.JavaMailSender;
@ -55,7 +54,7 @@ public class SaasEndpoint extends EnvelopRestEndpoint {
    @Value("${spring.mail.username}")
    private String username;
    @PostMapping(value = BaseRequestMapping.Saas.CREATE, consumes = MediaType.APPLICATION_JSON_UTF8_VALUE)
    @PostMapping(value = BaseRequestMapping.Saas.CREATE)
    @ApiOperation(value = "创建-基本信息")
    public Envelop create (
            @ApiParam(name = "jsonSaas", value = "租户数据", required = true)
@ -71,20 +70,11 @@ public class SaasEndpoint extends EnvelopRestEndpoint {
            return failed(errorCodeUtil.getErrorMsg(BaseErrorCode.Saas.EMAIL_IS_EXIST), Envelop.class);
        }
        saasService.create(saasDO);
        saasDO.setStatus(SaasDO.Status.auditPassed);
        //用户信息初始化
        UserDO userDO = new UserDO();
        userDO.setEmail(saasDO.getEmail());
        userDO.setMobile(saasDO.getMobile());
        userDO.setName(saasDO.getManagerName());
        userDO.setUsername(userDO.getEmail());
        //初始化租户信息
        saasService.save(saasDO);
        saasDO = saasService.saasAudit(saasDO, userDO);
        return send(saasDO);
        return success("创建成功");
    }
    @PostMapping(value = BaseRequestMapping.Saas.SYSTEM_CONFIGURATION, consumes = MediaType.APPLICATION_JSON_UTF8_VALUE)
    @PostMapping(value = BaseRequestMapping.Saas.SYSTEM_CONFIGURATION)
    @ApiOperation(value = "创建-系统配置")
    public Envelop createSystemConfig (
            @ApiParam(name = "saasDO", value = "Json数据", required = true)
@ -94,7 +84,7 @@ public class SaasEndpoint extends EnvelopRestEndpoint {
        return success("创建成功");
    }
    @PostMapping(value = BaseRequestMapping.Saas.THEME_STYLE, consumes = MediaType.APPLICATION_JSON_UTF8_VALUE)
    @PostMapping(value = BaseRequestMapping.Saas.THEME_STYLE)
    @ApiOperation(value = "创建-主题风格")
    public Envelop createThemeConfig (
            @ApiParam(name = "saasDO", value = "Json数据", required = true)
@ -111,8 +101,9 @@ public class SaasEndpoint extends EnvelopRestEndpoint {
            @RequestParam(value = "id") String id) {
        SaasDO oldSaas = saasService.findById(id);
        oldSaas.setAppSecret(UUID.randomUUID().toString().replaceAll("-", ""));
        oldSaas.setAppId(UUID.randomUUID().toString().replaceAll("-", ""));
        saasService.save(oldSaas);
        return success("重置成功");
        return success("重置成功",oldSaas);
    }
    @PostMapping(value = BaseRequestMapping.Saas.DELETE)
@ -135,7 +126,7 @@ public class SaasEndpoint extends EnvelopRestEndpoint {
        return success("修改成功");
    }
    @PostMapping(value = BaseRequestMapping.Saas.UPDATE, consumes = MediaType.APPLICATION_JSON_UTF8_VALUE)
    @PostMapping(value = BaseRequestMapping.Saas.UPDATE)
    @ApiOperation(value = "更新")
    public Envelop update (
            @ApiParam(name = "jsonData", value = "Json数据", required = true)
@ -203,7 +194,7 @@ public class SaasEndpoint extends EnvelopRestEndpoint {
        }
        SaasVO saasVO = convertToModel(saasDO, SaasVO.class);
        //根据租户类型编码,获取租户类型名称
        SaasTypeDictDO saasTypeDictDO = saasTypeDictService.findByCode(saasVO.getType());
        SaasTypeDictDO saasTypeDictDO = saasTypeDictService.findById(saasVO.getType());
        saasVO.setTypeName(null == saasTypeDictDO ? "" : saasTypeDictDO.getName());
        return success(saasVO);
    }

+ 67 - 1
svr/svr-base/src/main/java/com/yihu/jw/base/service/saas/SaasService.java

@ -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.org.BaseOrgDO;
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.SaasThemeDO;
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 org.springframework.beans.factory.annotation.Autowired;
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.transaction.annotation.Transactional;
import org.springframework.util.StringUtils;
@ -78,6 +82,13 @@ public class SaasService extends BaseJpaService<SaasDO, SaasDao> {
    private SaasThemeExtendDao saasThemeExtendDao;
    @Value("${configDefault.saasId}")
    private String defaultSaasId;
    @Autowired
    private BaseEmailTemplateConfigService baseEmailTemplateConfigService;
    @Value("${spring.mail.username}")
    private String username;
    @Autowired
    JavaMailSender jms;
    /**
     * 默认租户管理员角色code
@ -91,7 +102,8 @@ public class SaasService extends BaseJpaService<SaasDO, SaasDao> {
     */
    @Transactional(rollbackFor = Exception.class)
    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);
        List<BaseOrgDO> orgDOList = saas.getOrgList();
        if(orgDOList!=null&&orgDOList.size()>0){
@ -127,9 +139,63 @@ public class SaasService extends BaseJpaService<SaasDO, SaasDao> {
            });
        }
        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;
    }
    /**
     * 发送邮件
     * @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