he2802 2 rokov pred
rodič
commit
b6c1a9b271

+ 1 - 1
run-dev.sh

@@ -65,8 +65,8 @@ docker run \
 -v /etc/localtime:/etc/localtime \
 -v /usr/share/fonts:/usr/share/fonts \
 -v /data/logs/dev_admin:/logs \
--v /usr/local/nginx/conf/vhost:/usr/local/nginx/conf/vhost \
 -v /mydata/app/${app_admin_name}/logs:/var/logs \
+-v /usr/local/nginx/conf/vhost:/usr/local/nginx/conf/vhost \
 -d ${group_admin_name}/${app_admin_name}:${app_admin_version}
 echo '----start container admin----'
 

+ 1 - 0
run-pre.sh

@@ -68,6 +68,7 @@ docker run \
 -v /usr/share/fonts:/usr/share/fonts \
 -v /data/logs/pre_admin:/logs \
 -v /mydata-pre/app/${app_admin_name}/logs:/var/logs \
+-v /usr/local/nginx/conf/vhost:/usr/local/nginx/conf/vhost \
 -d ${group_admin_name}/${app_admin_name}:${app_admin_version}
 echo '----start container admin----'
 

+ 1 - 0
run-prod.sh

@@ -64,6 +64,7 @@ docker run \
 -v /usr/share/fonts:/usr/share/fonts \
 -v /data/logs/prod_admin:/logs \
 -v /mydata/app/${app_admin_name}/logs:/var/logs \
+-v /usr/local/nginx/conf/vhost:/usr/local/nginx/conf/vhost \
 -d ${group_admin_name}/${app_admin_name}:${app_admin_version}
 echo '----start container admin----'
 

+ 1 - 1
zhongzheng-admin/src/main/java/com/zhongzheng/controller/common/CommonController.java

@@ -376,7 +376,7 @@ public class CommonController
     @ApiOperation("nginx配置")
     @PostMapping("common/free/configNginxFile")
     public AjaxResult<Void> configNginxFile(@RequestBody SysNginxConfigAddBo bo) {
-        webService.configNginxFile(bo);
+        iTopSysTenantRegisterService.test(new TopSysTenantRegisterAddBo());
         return AjaxResult.success();
     }
 }

+ 1 - 1
zhongzheng-common/src/main/java/com/zhongzheng/common/utils/ToolsUtils.java

@@ -325,7 +325,7 @@ public class ToolsUtils {
         if(Validator.isEmpty(passWord)){
             return false;
         }
-        if(passWord.length()<6||passWord.length()>18){
+        if(passWord.length()<8||passWord.length()>18){
             return false;
         }
        /* String regExp = "^(?![a-zA-Z]+$)(?![A-Z0-9]+$)(?![A-Z\\W_!@#$%^&*`~()-+=]+$)(?![a-z0-9]+$)(?![a-z\\W_!@#$%^&*`~()-+=]+$)(?![0-9\\W_!@#$%^&*`~()-+=]+$)(?![a-zA-Z0-9]+$)(?![a-zA-Z\\W_!@#$%^&*`~()-+=]+$)(?![a-z0-9\\W_!@#$%^&*`~()-+=]+$)(?![0-9A-Z\\W_!@#$%^&*`~()-+=]+$)[a-zA-Z0-9\\W_!@#$%^&*`~()-+=]{6,16}$";

+ 16 - 2
zhongzheng-framework/src/main/java/com/zhongzheng/framework/web/service/SysTenantServiceImpl.java

@@ -25,6 +25,7 @@ import com.zhongzheng.modules.system.mapper.SysTenantMapper;
 import com.zhongzheng.modules.system.service.ISysMenuService;
 import com.zhongzheng.modules.system.service.ISysTenantService;
 import com.zhongzheng.modules.system.service.ISysUserService;
+import com.zhongzheng.modules.system.service.ISysWebService;
 import com.zhongzheng.modules.system.vo.SysTenantVo;
 import org.apache.commons.lang3.RandomStringUtils;
 import org.apache.commons.lang3.StringUtils;
@@ -53,6 +54,9 @@ public class SysTenantServiceImpl extends ServiceImpl<SysTenantMapper, SysTenant
     @Autowired
     private ISysMenuService menuService;
 
+    @Autowired
+    private ISysWebService iSysWebService;
+
     @Override
     public SysTenantVo queryById(Long tenantId){
         SysTenant db = this.baseMapper.selectById(tenantId);
@@ -123,12 +127,18 @@ public class SysTenantServiceImpl extends ServiceImpl<SysTenantMapper, SysTenant
 
     @Override
     @Transactional(rollbackFor = Exception.class)
-    public void createTenantAdmin(SysTenantAdminBo bo) {
+    public Long createTenantAdmin(SysTenantAdminBo bo) {
+        if(Validator.isEmpty(bo.getTenantName())){
+            throw new CustomException("没有企业名称");
+        }
         //中正后台企业ID
         Long tenantId = 867735392558919680L;
         //设置新机构
         SysTenant sysTenant = getById(tenantId);
         sysTenant.setTenantName(bo.getTenantName());
+        sysTenant.setHostPc(bo.getHostPc());
+        sysTenant.setHostH5(bo.getHostH5());
+        sysTenant.setHostLive(bo.getHostLive());
         //生成tenantId
         Long newTenantId = createTenantId();
         sysTenant.setTenantId(newTenantId);
@@ -139,13 +149,16 @@ public class SysTenantServiceImpl extends ServiceImpl<SysTenantMapper, SysTenant
         SysUser admin = userService.selectUserByTenant("admin",tenantId);
         admin.setTenantId(newTenantId);
         admin.setUserId(null);
+        if(Validator.isNotEmpty(bo.getPassword())){
+            admin.setPassword(SecurityUtils.encryptPassword(bo.getPassword()));
+        }
         if (!userService.save(admin)){
             throw new CustomException("创建后台账号失败");
         }
         //创建菜单
         List<SysMenu> list = menuService.listSysMenuByTenant(tenantId);
         if (CollectionUtils.isEmpty(list)){
-            return;
+            return newTenantId;
         }
         List<SysMenu> oldMenus = list.stream().map(item -> BeanUtil.toBean(item, SysMenu.class)).collect(Collectors.toList());
         list.forEach(item -> {
@@ -181,6 +194,7 @@ public class SysTenantServiceImpl extends ServiceImpl<SysTenantMapper, SysTenant
         newMenus.forEach(item -> {
             menuService.updateParentById(item);
         });
+        return newTenantId;
 
     }
 

+ 12 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/system/bo/SysTenantAdminBo.java

@@ -14,4 +14,16 @@ public class SysTenantAdminBo implements Serializable {
 
     @ApiModelProperty("机构名称")
     private String tenantName;
+
+    /** PC域名 */
+    @ApiModelProperty("PC域名")
+    private String hostPc;
+    /** h5域名 */
+    @ApiModelProperty("h5域名")
+    private String hostH5;
+    /** 直播域名 */
+    @ApiModelProperty("直播域名")
+    private String hostLive;
+
+    private String password;
 }

+ 1 - 1
zhongzheng-system/src/main/java/com/zhongzheng/modules/system/service/ISysTenantService.java

@@ -52,7 +52,7 @@ public interface ISysTenantService extends IService<SysTenant> {
 	 */
 	Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
 
-    void createTenantAdmin(SysTenantAdminBo bo);
+    Long createTenantAdmin(SysTenantAdminBo bo);
 
 	Long findTenantId(SysTenantQueryBo bo);
 }

+ 2 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/system/service/ISysWebService.java

@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
 import com.zhongzheng.common.core.domain.entity.SysUser;
 import com.zhongzheng.modules.course.bo.CourseBusinessQueryBo;
 import com.zhongzheng.modules.system.bo.SysNginxConfigAddBo;
+import com.zhongzheng.modules.top.bo.TopSysTenantRegisterAddBo;
 
 import java.util.List;
 
@@ -13,6 +14,7 @@ import java.util.List;
  * @author zhongzheng
  */
 public interface ISysWebService {
+    Boolean createTenantConfig(TopSysTenantRegisterAddBo bo);
     Boolean restartWebService();
     Boolean configNginxFile(SysNginxConfigAddBo bo);
 }

+ 322 - 1
zhongzheng-system/src/main/java/com/zhongzheng/modules/system/service/impl/SysWebServiceImpl.java

@@ -1,6 +1,8 @@
 package com.zhongzheng.modules.system.service.impl;
 
 import cn.hutool.core.lang.Validator;
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -15,8 +17,10 @@ import com.zhongzheng.common.utils.ServletUtils;
 import com.zhongzheng.common.utils.http.HttpUtils;
 import com.zhongzheng.common.utils.ip.IpUtils;
 import com.zhongzheng.modules.course.bo.CourseBusinessQueryBo;
+import com.zhongzheng.modules.course.domain.CourseChapterSection;
 import com.zhongzheng.modules.order.bo.OrderShareMoneyAddBo;
 import com.zhongzheng.modules.system.bo.SysNginxConfigAddBo;
+import com.zhongzheng.modules.system.domain.SysConfig;
 import com.zhongzheng.modules.system.domain.SysPost;
 import com.zhongzheng.modules.system.domain.SysUserPost;
 import com.zhongzheng.modules.system.domain.SysUserRole;
@@ -24,6 +28,7 @@ import com.zhongzheng.modules.system.mapper.*;
 import com.zhongzheng.modules.system.service.ISysConfigService;
 import com.zhongzheng.modules.system.service.ISysUserService;
 import com.zhongzheng.modules.system.service.ISysWebService;
+import com.zhongzheng.modules.top.bo.TopSysTenantRegisterAddBo;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -44,6 +49,322 @@ import java.util.*;
 @Service
 public class SysWebServiceImpl implements ISysWebService {
 
+    @Autowired
+    private ISysConfigService configService;
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public Boolean createTenantConfig(TopSysTenantRegisterAddBo bo) {
+        Collection<SysConfig> coll = new HashSet<>();
+        SysConfig config1 = new SysConfig();
+        config1.setTenantId(bo.getTenantId());
+        config1.setConfigName("主框架页-默认皮肤样式名称");
+        config1.setConfigKey("sys.index.skinName");
+        config1.setConfigValue("skin-blue");
+        config1.setConfigType("Y");
+        config1.setConfigModule("sys");
+        config1.setCreateBy("admin");
+        config1.setUpdateBy("admin");
+        coll.add(config1);
+
+        SysConfig config2 = new SysConfig();
+        config2.setTenantId(bo.getTenantId());
+        config2.setConfigName("主框架页-侧边栏主题");
+        config2.setConfigKey("sys.index.sideTheme");
+        config2.setConfigValue("theme-dark");
+        config2.setConfigType("Y");
+        config2.setConfigModule("sys");
+        config2.setCreateBy("admin");
+        config2.setUpdateBy("admin");
+        coll.add(config2);
+
+        SysConfig config3 = new SysConfig();
+        config3.setTenantId(bo.getTenantId());
+        config3.setConfigName("自动播放");
+        config3.setConfigKey("sys.play.autoPlay");
+        config3.setConfigValue("0");
+        config3.setConfigType("Y");
+        config3.setConfigModule("play");
+        config3.setCreateBy("admin");
+        config3.setUpdateBy("admin");
+        coll.add(config3);
+
+        SysConfig config4 = new SysConfig();
+        config4.setTenantId(bo.getTenantId());
+        config4.setConfigName("进度条拖拉");
+        config4.setConfigKey("sys.play.drag");
+        config4.setConfigValue("1");
+        config4.setConfigType("Y");
+        config4.setConfigModule("play");
+        config4.setCreateBy("admin");
+        config4.setUpdateBy("admin");
+        coll.add(config4);
+
+        SysConfig config5 = new SysConfig();
+        config5.setTenantId(bo.getTenantId());
+        config5.setConfigName("倍速播放");
+        config5.setConfigKey("sys.play.speed");
+        config5.setConfigValue("1");
+        config5.setConfigType("Y");
+        config5.setConfigModule("play");
+        config5.setCreateBy("admin");
+        config5.setUpdateBy("admin");
+        coll.add(config5);
+
+        SysConfig config6 = new SysConfig();
+        config6.setTenantId(bo.getTenantId());
+        config6.setConfigName("课程拍照");
+        config6.setConfigKey("sys.course.photograph");
+        config6.setConfigValue("1");
+        config6.setConfigType("Y");
+        config6.setConfigModule("course");
+        config6.setCreateBy("admin");
+        config6.setUpdateBy("admin");
+        coll.add(config6);
+
+        SysConfig config7 = new SysConfig();
+        config7.setTenantId(bo.getTenantId());
+        config7.setConfigName("间隔时间设置");
+        config7.setConfigKey("sys.course.intervalTime");
+        config7.setConfigValue("1.5,10.5");
+        config7.setConfigType("Y");
+        config7.setConfigModule("course");
+        config7.setCreateBy("admin");
+        config7.setUpdateBy("admin");
+        coll.add(config7);
+
+        SysConfig config8 = new SysConfig();
+        config8.setTenantId(bo.getTenantId());
+        config8.setConfigName("章节试卷拍照");
+        config8.setConfigKey("sys.paper.photograph");
+        config8.setConfigValue("1");
+        config8.setConfigType("Y");
+        config8.setConfigModule("exam");
+        config8.setCreateBy("admin");
+        config8.setUpdateBy("admin");
+        coll.add(config8);
+
+        SysConfig config9 = new SysConfig();
+        config9.setTenantId(bo.getTenantId());
+        config9.setConfigName("间隔数量设置");
+        config9.setConfigKey("sys.paper.intervalNumber");
+        config9.setConfigValue("");
+        config9.setConfigType("Y");
+        config9.setConfigModule("exam");
+        config9.setCreateBy("admin");
+        config9.setUpdateBy("admin");
+        coll.add(config9);
+
+        SysConfig config10 = new SysConfig();
+        config10.setTenantId(bo.getTenantId());
+        config10.setConfigName("页头");
+        String json10 = "{\"serviceTel\":{\"status\":1,\"tel\":\"###\",\"time\":\"周一至周日 9:00-18:00\"},\"Nav\":[{\"sort\":1,\"name\":\"首页\",\"status\":1},{\"sort\":2,\"name\":\"课程\",\"status\":1},{\"sort\":3,\"name\":\"直播\",\"status\":1},{\"sort\":4,\"name\":\"题库\",\"status\":1}]}";
+        JSONObject jsonObject10 = (JSONObject) JSONObject.parse(json10);
+        jsonObject10.put("companyLogo",bo.getLogoUrl());
+        jsonObject10.put("companyName",bo.getTenantName());
+        config10.setConfigKey("home.header");
+        config10.setConfigValue(jsonObject10.toJSONString());
+        config10.setConfigType("N");
+        config10.setConfigModule("home");
+        config10.setCreateBy("admin");
+        config10.setUpdateBy("admin");
+        coll.add(config10);
+
+        SysConfig config11 = new SysConfig();
+        config11.setTenantId(bo.getTenantId());
+        config11.setConfigName("页尾");
+        String json11 = "[{\"sort\":1,\"name\":\"电话:######\"},{\"sort\":2,\"name\":\"请联系我:543666 5    5555445855555555\"}]";
+        JSONArray jsonObject11 = (JSONArray) JSONArray.parse(json11);
+        config11.setConfigKey("home.footer");
+        config11.setConfigValue(jsonObject11.toJSONString());
+        config11.setConfigType("N");
+        config11.setConfigModule("home");
+        config11.setCreateBy("admin");
+        config11.setUpdateBy("admin");
+        coll.add(config11);
+
+        SysConfig config12 = new SysConfig();
+        config12.setTenantId(bo.getTenantId());
+        config12.setConfigName("友情链接");
+        String json12 = "[{\"sort\":1,\"name\":\"学时查询\",\"status\":1,\"url\":\"http://baidu.com\"},{\"sort\":2,\"name\":\"走进祥粤\",\"status\":1,\"url\":\"http://baidu.com\"},{\"sort\":3,\"name\":\"百度\",\"url\":\"www.baidu.com\",\"status\":1},{\"sort\":4,\"name\":\"不告诉不告诉你不告诉你\",\"url\":\"https://www.xyyxt.net/Course?pid=1\",\"status\":1}]";
+        JSONArray jsonObject12 = (JSONArray) JSONArray.parse(json12);
+        config12.setConfigKey("home.links");
+        config12.setConfigValue(jsonObject12.toJSONString());
+        config12.setConfigType("N");
+        config12.setConfigModule("home");
+        config12.setCreateBy("admin");
+        config12.setUpdateBy("admin");
+        coll.add(config12);
+
+        SysConfig config13 = new SysConfig();
+        config13.setTenantId(bo.getTenantId());
+        config13.setConfigName("版本隐藏");
+        config13.setConfigKey("version.hide");
+        config13.setConfigValue("1.1.1");
+        config13.setConfigType("N");
+        config13.setConfigModule("wx_config");
+        config13.setCreateBy("admin");
+        config13.setUpdateBy("admin");
+        coll.add(config13);
+
+        SysConfig config14 = new SysConfig();
+        config14.setTenantId(bo.getTenantId());
+        config14.setConfigName("wechat");
+        config14.setConfigKey("wx.small.appid");
+        config14.setConfigValue(bo.getWxSmallAppid());
+        config14.setConfigType("N");
+        config14.setConfigModule("wx_config");
+        config14.setCreateBy("admin");
+        config14.setUpdateBy("admin");
+        coll.add(config14);
+
+        SysConfig config15 = new SysConfig();
+        config15.setTenantId(bo.getTenantId());
+        config15.setConfigName("wechat");
+        config15.setConfigKey("wx.gzh.appid");
+        config15.setConfigValue(bo.getWxGzhAppid());
+        config15.setConfigType("N");
+        config15.setConfigModule("wx_config");
+        config15.setCreateBy("admin");
+        config15.setUpdateBy("admin");
+        coll.add(config15);
+
+        SysConfig config16 = new SysConfig();
+        config16.setTenantId(bo.getTenantId());
+        config16.setConfigName("wechat");
+        config16.setConfigKey("wx.gzh.appsecret");
+        config16.setConfigValue(bo.getWxGzhAppsecret());
+        config16.setConfigType("N");
+        config16.setConfigModule("wx_config");
+        config16.setCreateBy("admin");
+        config16.setUpdateBy("admin");
+        coll.add(config16);
+
+        SysConfig config17 = new SysConfig();
+        config17.setTenantId(bo.getTenantId());
+        config17.setConfigName("wechat");
+        config17.setConfigKey("wx.wepay.mchid");
+        config17.setConfigValue(bo.getWxWepayMchid());
+        config17.setConfigType("N");
+        config17.setConfigModule("wx_config");
+        config17.setCreateBy("admin");
+        config17.setUpdateBy("admin");
+        coll.add(config17);
+
+        SysConfig config18 = new SysConfig();
+        config18.setTenantId(bo.getTenantId());
+        config18.setConfigName("wechat");
+        config18.setConfigKey("wx.wepay.key");
+        config18.setConfigValue(bo.getWxWepayKey());
+        config18.setConfigType("N");
+        config18.setConfigModule("wx_config");
+        config18.setCreateBy("admin");
+        config18.setUpdateBy("admin");
+        coll.add(config18);
+
+        SysConfig config19 = new SysConfig();
+        config19.setTenantId(bo.getTenantId());
+        config19.setConfigName("wechat");
+        config19.setConfigKey("wx.wepay.appsecret");
+        config19.setConfigValue(bo.getWxWepayAppsecret());
+        config19.setConfigType("N");
+        config19.setConfigModule("wx_config");
+        config19.setCreateBy("admin");
+        config19.setUpdateBy("admin");
+        coll.add(config19);
+
+        SysConfig config20 = new SysConfig();
+        config20.setTenantId(bo.getTenantId());
+        config20.setConfigName("wechat");
+        config20.setConfigKey("wx.wepay.notifyUrl");
+        config20.setConfigValue(bo.getWxWepayNotifyurl());
+        config20.setConfigType("N");
+        config20.setConfigModule("wx_config");
+        config20.setCreateBy("admin");
+        config20.setUpdateBy("admin");
+        coll.add(config20);
+
+        SysConfig config21 = new SysConfig();
+        config21.setTenantId(bo.getTenantId());
+        config21.setConfigName("wechat");
+        config21.setConfigKey("wx.small.appsecret");
+        config21.setConfigValue(bo.getWxSmallAppsecret());
+        config21.setConfigType("N");
+        config21.setConfigModule("wx_config");
+        config21.setCreateBy("admin");
+        config21.setUpdateBy("admin");
+        coll.add(config21);
+
+        SysConfig config22 = new SysConfig();
+        config22.setTenantId(bo.getTenantId());
+        config22.setConfigName("wechat");
+        config22.setConfigKey("wx.scanLogin.host");
+        config22.setConfigValue(bo.getWxScanloginHost());
+        config22.setConfigType("N");
+        config22.setConfigModule("wx_config");
+        config22.setCreateBy("admin");
+        config22.setUpdateBy("admin");
+        coll.add(config22);
+
+        SysConfig config23 = new SysConfig();
+        config23.setTenantId(bo.getTenantId());
+        config23.setConfigName("登录双重验证");
+        config23.setConfigKey("login.dual.auth");
+        config23.setConfigValue("0");
+        config23.setConfigType("N");
+        config23.setConfigModule("sys");
+        config23.setCreateBy("admin");
+        config23.setUpdateBy("admin");
+        coll.add(config23);
+
+        SysConfig config24 = new SysConfig();
+        config24.setTenantId(bo.getTenantId());
+        config24.setConfigName("移动端配置");
+        JSONObject jsonObject24 = new JSONObject();
+        jsonObject24.put("h5Logo",bo.getLogoH5Url());
+        jsonObject24.put("smallLogo",bo.getLogoSmallUrl());
+        jsonObject24.put("hostLive",bo.getHostLive());
+        config24.setConfigKey("home.mobile");
+        config24.setConfigValue(jsonObject24.toJSONString());
+        config24.setConfigType("N");
+        config24.setConfigModule("home");
+        config24.setCreateBy("admin");
+        config24.setUpdateBy("admin");
+        coll.add(config24);
+
+        SysConfig config25 = new SysConfig();
+        config25.setTenantId(bo.getTenantId());
+        config25.setConfigName("页尾备案号");
+        JSONObject jsonObject25 = new JSONObject();
+        jsonObject25.put("footerTip",bo.getFooterTip());
+        jsonObject25.put("footerRecordNo",bo.getFooterRecordNo());
+        config25.setConfigKey("home.footer.record");
+        config25.setConfigValue(jsonObject25.toJSONString());
+        config25.setConfigType("N");
+        config25.setConfigModule("home");
+        config25.setCreateBy("admin");
+        config25.setUpdateBy("admin");
+        coll.add(config25);
+
+        configService.saveBatch(coll);
+
+
+        SysNginxConfigAddBo addBoPc = new SysNginxConfigAddBo();
+        addBoPc.setPlat(1);
+        addBoPc.setHost(bo.getHostPc());
+        configNginxFile(addBoPc);
+
+        SysNginxConfigAddBo addBoH5 = new SysNginxConfigAddBo();
+        addBoH5.setPlat(2);
+        addBoH5.setHost(bo.getHostH5());
+        configNginxFile(addBoH5);
+
+        SysNginxConfigAddBo addBoLive = new SysNginxConfigAddBo();
+        addBoLive.setPlat(3);
+        addBoLive.setHost(bo.getHostLive());
+        configNginxFile(addBoLive);
+        return true;
+    }
 
     @Override
     public Boolean restartWebService() {
@@ -91,7 +412,7 @@ public class SysWebServiceImpl implements ISysWebService {
             }
 
         }
-        return null;
+        return true;
     }
 
     private String makeConfigTxt(Integer plat,String host){

+ 2 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/top/bo/TopSysTenantRegisterAddBo.java

@@ -96,4 +96,6 @@ public class TopSysTenantRegisterAddBo {
     /** 页脚文案 */
     @ApiModelProperty("页脚文案")
     private String footerTip;
+
+    private Long tenantId;
 }

+ 2 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/top/service/ITopSysTenantRegisterService.java

@@ -50,4 +50,6 @@ public interface ITopSysTenantRegisterService extends IService<TopSysTenantRegis
 	 * @return
 	 */
 	Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
+
+	Boolean test(TopSysTenantRegisterAddBo bo);
 }

+ 49 - 4
zhongzheng-system/src/main/java/com/zhongzheng/modules/top/service/impl/TopSysTenantRegisterServiceImpl.java

@@ -3,9 +3,14 @@ package com.zhongzheng.modules.top.service.impl;
 import cn.hutool.core.bean.BeanUtil;
 import cn.hutool.core.lang.Validator;
 import cn.hutool.core.util.StrUtil;
+import com.zhongzheng.common.exception.CustomException;
 import com.zhongzheng.common.utils.DateUtils;
+import com.zhongzheng.modules.activity.domain.ActivityOrder;
 import com.zhongzheng.modules.alioss.bo.OssRequest;
 import com.zhongzheng.modules.alioss.service.OssService;
+import com.zhongzheng.modules.system.bo.SysTenantAdminBo;
+import com.zhongzheng.modules.system.service.ISysTenantService;
+import com.zhongzheng.modules.system.service.ISysWebService;
 import com.zhongzheng.modules.top.bo.TopSysTenantRegisterAddBo;
 import com.zhongzheng.modules.top.bo.TopSysTenantRegisterEditBo;
 import com.zhongzheng.modules.top.bo.TopSysTenantRegisterQueryBo;
@@ -19,6 +24,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.github.pagehelper.Page;
+import org.springframework.transaction.annotation.Transactional;
 
 
 import java.util.Collection;
@@ -38,6 +44,13 @@ public class TopSysTenantRegisterServiceImpl extends ServiceImpl<TopSysTenantReg
     @Autowired
     private OssService ossService;
 
+    @Autowired
+    private ISysWebService iSysWebService;
+
+    @Autowired
+    private ISysTenantService iSysTenantService;
+
+
     @Override
     public TopSysTenantRegisterVo queryById(Long id){
         TopSysTenantRegister db = this.baseMapper.selectById(id);
@@ -86,7 +99,12 @@ public class TopSysTenantRegisterServiceImpl extends ServiceImpl<TopSysTenantReg
     }
 
     @Override
+    @Transactional(rollbackFor = Exception.class)
     public Boolean insertByAddBo(TopSysTenantRegisterAddBo bo) {
+        int count = count(new LambdaQueryWrapper<TopSysTenantRegister>().eq(TopSysTenantRegister::getTenantName, bo.getTenantName()));
+        if (count > 0){
+            throw new CustomException("该机构名已开通");
+        }
         if(Validator.isNotEmpty(bo.getLogoUrl())){
             OssRequest ossRequest = new OssRequest();
             ossRequest.setImageStatus(6);
@@ -111,15 +129,25 @@ public class TopSysTenantRegisterServiceImpl extends ServiceImpl<TopSysTenantReg
                 bo.setLogoSmallUrl(ossPath);
             }
         }
-
-
-
         TopSysTenantRegister add = BeanUtil.toBean(bo, TopSysTenantRegister.class);
 
         validEntityBeforeSave(add);
         add.setCreateTime(DateUtils.getNowTime());
         add.setUpdateTime(DateUtils.getNowTime());
-        return this.save(add);
+        this.save(add);
+        SysTenantAdminBo adminBo = new SysTenantAdminBo();
+        adminBo.setTenantName(add.getTenantName());
+        adminBo.setPassword(add.getPassword());
+        adminBo.setHostPc(add.getHostPc());
+        adminBo.setHostH5(add.getHostH5());
+        adminBo.setHostLive(add.getHostLive());
+        //创建账号菜单
+        Long newTenantId = iSysTenantService.createTenantAdmin(adminBo);
+        TopSysTenantRegisterAddBo bo1 = BeanUtil.toBean(add, TopSysTenantRegisterAddBo.class);
+        bo1.setTenantId(newTenantId);
+        //创建配置
+        iSysWebService.createTenantConfig(bo1);
+        return true;
     }
 
     @Override
@@ -146,4 +174,21 @@ public class TopSysTenantRegisterServiceImpl extends ServiceImpl<TopSysTenantReg
         }
         return this.removeByIds(ids);
     }
+
+    @Override
+    public Boolean test(TopSysTenantRegisterAddBo bo) {
+        TopSysTenantRegisterVo vo = queryById(3L);
+        SysTenantAdminBo adminBo = new SysTenantAdminBo();
+        adminBo.setTenantName(vo.getTenantName());
+        adminBo.setPassword(vo.getPassword());
+        adminBo.setHostPc(vo.getHostPc());
+        adminBo.setHostH5(vo.getHostH5());
+        adminBo.setHostLive(vo.getHostLive());
+        Long newTenantId = iSysTenantService.createTenantAdmin(adminBo);
+        System.out.println(newTenantId);
+        TopSysTenantRegisterAddBo bo1 = BeanUtil.toBean(vo, TopSysTenantRegisterAddBo.class);
+        bo1.setTenantId(newTenantId);
+        iSysWebService.createTenantConfig(bo1);
+        return null;
+    }
 }

+ 8 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/top/vo/TopSysTenantRegisterVo.java

@@ -84,6 +84,14 @@ public class TopSysTenantRegisterVo {
 	@Excel(name = "0 失效 1启用")
 	@ApiModelProperty("0 失效 1启用")
 	private Integer status;
+	/** h5公司logo */
+	@Excel(name = "h5公司logo")
+	@ApiModelProperty("h5公司logo")
+	private String logoH5Url;
+	/** 小程序公司logo */
+	@Excel(name = "小程序公司logo")
+	@ApiModelProperty("小程序公司logo")
+	private String logoSmallUrl;
 	/** 密钥 */
 	@Excel(name = "密钥")
 	@ApiModelProperty("密钥")