luoshi 2 سال پیش
والد
کامیت
b6e14096e4

+ 6 - 1
src/main/java/com/qmth/ops/api/controller/admin/UserController.java

@@ -13,6 +13,7 @@ import com.qmth.ops.biz.domain.Role;
 import com.qmth.ops.biz.domain.User;
 import com.qmth.ops.biz.query.UserQuery;
 import com.qmth.ops.biz.service.AppUserService;
+import com.qmth.ops.biz.service.FileService;
 import com.qmth.ops.biz.service.UserService;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
@@ -31,6 +32,9 @@ public class UserController {
     @Resource
     private AppUserService appUserService;
 
+    @Resource
+    private FileService fileService;
+
     @PostMapping("/login")
     @Aac(auth = BOOL.FALSE)
     public LoginResult login(@Validated(UserForm.LoginGroup.class) UserForm form) {
@@ -44,7 +48,8 @@ public class UserController {
         if (!user.buildPassword(form.getPassword()).equals(user.getPassword())) {
             throw new ParameterException("密码错误");
         }
-        return new AdminSession(userService.changeAccessToken(user), appUserService).getLoginResult();
+        return new AdminSession(userService.changeAccessToken(user), appUserService)
+                .getLoginResult(fileService.getServer());
     }
 
     @RequestMapping("/roles")

+ 2 - 2
src/main/java/com/qmth/ops/api/dto/DeployForm.java

@@ -23,13 +23,13 @@ public class DeployForm {
     @NotNull(message = "id不能为空", groups = UpdateGroup.class)
     private Long id;
 
-    @NotBlank(message = "appId不能为空", groups = InsertGroup.class)
+    @NotNull(message = "appId不能为空", groups = InsertGroup.class)
     private Long appId;
 
     @NotBlank(message = "name不能为空", groups = InsertGroup.class)
     private String name;
 
-    @NotBlank(message = "mode不能为空", groups = InsertGroup.class)
+    @NotNull(message = "mode不能为空", groups = InsertGroup.class)
     private DeployMode mode;
 
     private AppControl control;

+ 10 - 0
src/main/java/com/qmth/ops/api/dto/LoginResult.java

@@ -14,6 +14,8 @@ public class LoginResult {
 
     private String token;
 
+    private String fileServer;
+
     public Long getId() {
         return id;
     }
@@ -53,4 +55,12 @@ public class LoginResult {
     public void setToken(String token) {
         this.token = token;
     }
+
+    public String getFileServer() {
+        return fileServer;
+    }
+
+    public void setFileServer(String fileServer) {
+        this.fileServer = fileServer;
+    }
 }

+ 2 - 1
src/main/java/com/qmth/ops/api/security/AdminSession.java

@@ -20,13 +20,14 @@ public class AdminSession implements AccessEntity {
         this.appUserService = appUserService;
     }
 
-    public LoginResult getLoginResult() {
+    public LoginResult getLoginResult(String fileServer) {
         LoginResult result = new LoginResult();
         result.setId(user.getId());
         result.setName(user.getName());
         result.setRole(user.getRole());
         result.setSession(getIdentity());
         result.setToken(getSecret());
+        result.setFileServer(fileServer);
         return result;
     }
 

+ 1 - 1
src/main/java/com/qmth/ops/biz/dao/DeployDeviceDao.java

@@ -8,7 +8,7 @@ import org.apache.ibatis.annotations.Update;
 public interface DeployDeviceDao extends BaseMapper<DeployDevice> {
 
     @Update("replace into deploy_device (deploy_id, device_id, remark, create_time) "
-            + "values (#{deployId}), #{deviceId}, #{remark}, #{time}")
+            + "values (#{deployId}, #{deviceId}, #{remark}, #{time})")
     void save(@Param("deployId") Long deployId, @Param("deviceId") String deviceId, @Param("remark") String remark,
             @Param("time") long time);
 }

+ 2 - 2
src/main/java/com/qmth/ops/biz/domain/Role.java

@@ -2,11 +2,11 @@ package com.qmth.ops.biz.domain;
 
 public enum Role {
 
-    DEV("开发"), TEST("测试"), OPS("运维"), ADMIN("管理员");
+    PD("产品"), DEV("开发"), TEST("测试"), OPS("运维"), ADMIN("管理员");
 
     private String name;
 
-    private Role(String name) {
+    Role(String name) {
         this.name = name;
     }
 

+ 0 - 3
src/main/java/com/qmth/ops/biz/service/LicenseService.java

@@ -30,9 +30,6 @@ public class LicenseService {
 
     private RsaHelper privateKey;
 
-    @Resource
-    private AppService appService;
-
     @Resource
     private OrgService orgService;
 

+ 19 - 8
src/main/java/com/qmth/ops/biz/service/OrgService.java

@@ -1,6 +1,5 @@
 package com.qmth.ops.biz.service;
 
-import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.qmth.ops.biz.dao.OrgDao;
 import com.qmth.ops.biz.domain.Org;
 import com.qmth.ops.biz.query.OrgQuery;
@@ -43,12 +42,24 @@ public class OrgService {
 
     @Transactional
     public Org update(Org org) {
-        orgDao.update(org, new LambdaUpdateWrapper<Org>().set(org.getCode() != null, Org::getCode, org.getCode())
-                .set(org.getName() != null, Org::getName, org.getName())
-                .set(org.getType() != null, Org::getType, org.getType())
-                .set(org.getSubTypes() != null, Org::getSubTypes, org.getSubTypes())
-                .set(org.getLogo() != null, Org::getLogo, org.getLogo())
-                .set(Org::getUpdateTime, System.currentTimeMillis()).eq(Org::getId, org.getId()));
-        return orgDao.selectById(org.getId());
+        Org previous = orgDao.selectById(org.getId());
+        if (org.getCode() != null) {
+            previous.setCode(org.getCode());
+        }
+        if (org.getName() != null) {
+            previous.setName(org.getName());
+        }
+        if (org.getType() != null) {
+            previous.setType(org.getType());
+        }
+        if (org.getSubTypes() != null && org.getSubTypes().size() > 0) {
+            previous.setSubTypes(org.getSubTypes());
+        }
+        if (org.getLogo() != null) {
+            previous.setLogo(org.getLogo());
+        }
+        previous.setUpdateTime(System.currentTimeMillis());
+        orgDao.updateById(previous);
+        return previous;
     }
 }

+ 19 - 0
src/main/resources/script/init.sql

@@ -153,6 +153,25 @@ CREATE TABLE `deploy_org`
 ) ENGINE = InnoDB
   DEFAULT CHARSET = utf8mb4;
 
+CREATE TABLE `org`
+(
+    `id`            bigint(11) unsigned NOT NULL AUTO_INCREMENT,
+    `code`          varchar(16)         NOT NULL,
+    `name`          varchar(64)         NOT NULL,
+    `type`          varchar(16)         NOT NULL,
+    `sub_types`     varchar(128) DEFAULT NULL,
+    `logo`          varchar(128) DEFAULT NULL,
+    `enable`        tinyint(1)          NOT NULL,
+    `access_key`    varchar(64)         NOT NULL,
+    `access_secret` varchar(64)         NOT NULL,
+    `create_time`   bigint(20)          NOT NULL,
+    `update_time`   bigint(20)          NOT NULL,
+    PRIMARY KEY (`id`),
+    UNIQUE KEY `code` (`code`),
+    UNIQUE KEY `access_key` (`access_key`)
+) ENGINE = InnoDB
+  DEFAULT CHARSET = utf8mb4;
+
 CREATE TABLE `wxapp`
 (
     `id`           varchar(128) NOT NULL DEFAULT '',