Jelajahi Sumber

泰山运维系统云服务项目-工单系统

dylan 2 tahun lalu
induk
melakukan
b461a26ee8

+ 17 - 0
pom.xml

@@ -232,6 +232,23 @@
             <groupId>com.sun.mail</groupId>
             <artifactId>javax.mail</artifactId>
         </dependency>
+
+
+        <dependency>
+            <groupId>org.apache.kafka</groupId>
+            <artifactId>kafka-streams</artifactId>
+            <version>RELEASE</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.kafka</groupId>
+            <artifactId>kafka-streams-scala_2.13</artifactId>
+            <version>RELEASE</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.kafka</groupId>
+            <artifactId>kafka-clients</artifactId>
+            <version>RELEASE</version>
+        </dependency>
     </dependencies>
 
     <build>

File diff ditekan karena terlalu besar
+ 635 - 460
src/main/java/org/springblade/etl/controller/TestController.java


+ 82 - 81
src/main/java/org/springblade/modules/baseinfo/user/controller/OpenUserController.java

@@ -17,6 +17,7 @@ import org.springblade.core.boot.ctrl.BladeController;
 import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.utils.DigestUtil;
 import org.springblade.core.tool.utils.Func;
+import org.springblade.modules.baseinfo.user.dto.OpenUserDTO;
 import org.springblade.modules.baseinfo.user.entity.OpenUserEntity;
 import org.springblade.modules.baseinfo.user.service.IOpenUserService;
 import org.springblade.modules.system.entity.Dept;
@@ -47,42 +48,41 @@ import java.util.List;
 @AllArgsConstructor
 @Api(value = "开放用户人员接口", tags = "开放用户人员模块管理")
 public class OpenUserController extends BladeController {
-	private final IUserService userService;
-	private final IDeptService deptService;
-	private final IUserDeptService userDeptService;
-	private final IRegionService regionService;
-	private final IOpenUserService openUserService;
-
-	/**
-	 * 注册
-	 */
-	@PostMapping("/reg")
-	@ApiOperationSupport(order = 4)
-	@ApiOperation(value = "注册", notes = "传入 OpenUserEntity")
-	@Transactional
-	public R openUserReg(@RequestBody OpenUserEntity openUserEntity) {
-		try {
-			if (openUserEntity.getCompanyName()==null){
-				return R.fail("公司名称不能为空");
-			}
-			if (openUserEntity.getPersonName()==null){
-				return R.fail("性名不能为空");
-			}
-			if (openUserEntity.getMail()==null){
-				return R.fail("邮箱不能为空");
-			}
-			if (openUserEntity.getContactPhone()==null){
-				return R.fail("联系手机不能为空");
-			}
-			LambdaQueryWrapper<OpenUserEntity> openUserWrapper = Wrappers.<OpenUserEntity>query().lambda();
-			openUserWrapper.eq(OpenUserEntity::getContactPhone, openUserEntity.getContactPhone());
-			openUserWrapper.eq(OpenUserEntity::getIsDeleted, 0);
-			openUserWrapper.eq(OpenUserEntity::getApproveStatus,0).or().eq(OpenUserEntity::getApproveStatus,1);
-
-			List<OpenUserEntity> openUserEntityList = openUserService.list(openUserWrapper);
-			if (openUserEntityList != null && openUserEntityList.size()>0){
-				return R.fail("请勿重复进行申请");
-			}
+    private final IUserService userService;
+    private final IDeptService deptService;
+    private final IUserDeptService userDeptService;
+    private final IRegionService regionService;
+    private final IOpenUserService openUserService;
+
+    /**
+     * 注册
+     */
+    @PostMapping("/reg")
+    @ApiOperationSupport(order = 4)
+    @ApiOperation(value = "注册", notes = "传入 OpenUserEntity")
+    @Transactional
+    public R openUserReg(OpenUserDTO openUserEntity) {
+        try {
+            if (openUserEntity.getTenantId() == null) {
+                return R.fail("参数错误");
+            }
+            if (openUserEntity.getUsername() == null) {
+                return R.fail("参数错误");
+            }
+            if (openUserEntity.getPassword() == null) {
+                return R.fail("参数错误");
+            }
+
+//            LambdaQueryWrapper<OpenUserEntity> openUserWrapper = Wrappers.<OpenUserEntity>query().lambda();
+//            openUserWrapper.eq(OpenUserEntity::getAccount, openUserEntity.getUsername());
+//            openUserWrapper.eq(OpenUserEntity::getIsDeleted, 0);
+//            openUserWrapper.last("limit 1");
+//			openUserWrapper.eq(OpenUserEntity::getApproveStatus,0).or().eq(OpenUserEntity::getApproveStatus,1);
+
+//            OpenUserEntity detail = openUserService.getOne(openUserWrapper);
+//            if (Func.notNull(detail)) {
+//                return R.fail("帐号已存在");
+//            }
 
 //			String account;
 //			if (openUserEntity.getUserAccount()!=null){
@@ -90,52 +90,53 @@ public class OpenUserController extends BladeController {
 //			}else{
 //				account=openUserEntity.getContactPhone();
 //			}
-			LambdaQueryWrapper<User> wrapper = Wrappers.<User>query().lambda();
-			wrapper.eq(User::getAccount, openUserEntity.getContactPhone());
-			wrapper.eq(User::getIsDeleted, 0);
-			List<User> userList = userService.list(wrapper);
-			if (null != userList && userList.size() > 0) {
-				return R.fail("帐号已经存在,请更换一个手机号进行申请");
-			}
-
-		   openUserEntity.setApproveStatus(0);
-
-			openUserService.save(openUserEntity);
-
-
+            LambdaQueryWrapper<User> wrapper = Wrappers.<User>query().lambda();
+            wrapper.eq(User::getTenantId, openUserEntity.getTenantId());
+            wrapper.eq(User::getAccount, openUserEntity.getUsername());
+            wrapper.eq(User::getIsDeleted, 0);
+            wrapper.last("limit 1");
+            User user = userService.getOne(wrapper);
+            if (Func.notNull(user)) {
+                return R.fail("帐号已存在");
+            }
+            openUserEntity.setApproveStatus(1);
+            openUserService.save(openUserEntity);
 
 
 //			if (null == openUserEntity.getRegionCode()){
 //				return R.fail("所在区划参数不能为空");
 //			}
-			//创建组织机构
-			Dept parentDept = deptService.getById(BusinessConstant.DEPT_DH_ID);
-			Dept dept = new Dept();
-			dept.setParentId(BusinessConstant.DEPT_DH_ID);
-			dept.setDeptCategory(1);
-			dept.setDeptName(openUserEntity.getCompanyName());
-			dept.setFullName(openUserEntity.getCompanyName());
-			dept.setAncestors(parentDept.getAncestors()+","+parentDept.getId());
-			dept.setSort(1);
-			deptService.save(dept);
+            //创建组织机构
+            Dept parentDept = deptService.getById(BusinessConstant.DEPT_DH_ID);
+            Dept dept = new Dept();
+            dept.setTenantId(openUserEntity.getTenantId());
+            dept.setParentId(BusinessConstant.DEPT_DH_ID);
+            dept.setDeptCategory(1);
+//            dept.setDeptName(openUserEntity.getCompanyName());
+//            dept.setFullName(openUserEntity.getCompanyName());
+            dept.setAncestors(parentDept.getAncestors() + "," + parentDept.getId());
+            dept.setSort(1);
+            deptService.save(dept);
             //创建用户
-			User u = new User();
-			u.setAccount(openUserEntity.getContactPhone());
-			u.setPhone(openUserEntity.getContactPhone());
-			u.setEmail(openUserEntity.getMail());
-			u.setName(openUserEntity.getPersonName());
-			u.setRealName(openUserEntity.getPersonName());
-			u.setPassword(DigestUtil.encrypt(openUserEntity.getContactPhone() + BusinessConstant.ACCOUNT_PW_SUFFIX));
-			u.setDeptId(Func.toStr(dept.getId()));
-			u.setRoleId(BusinessConstant.ROLE_ORG_ADMIN_ID);
-			u.setPostId(BusinessConstant.POST_ORG_ADMIN_ID);
-			u.setUserType(1);
-			userService.save(u);
+            User u = new User();
+            u.setTenantId(openUserEntity.getTenantId());
+            u.setAccount(openUserEntity.getUsername());
+            u.setPhone(openUserEntity.getUsername());
+//            u.setEmail(openUserEntity.getMail());
+            u.setName(openUserEntity.getUsername());
+            u.setRealName(openUserEntity.getUsername());
+//            u.setPassword(DigestUtil.encrypt(openUserEntity.getContactPhone() + BusinessConstant.ACCOUNT_PW_SUFFIX));
+            u.setPassword(DigestUtil.hex(openUserEntity.getPassword()));
+            u.setDeptId(Func.toStr(dept.getId()));
+            u.setRoleId(BusinessConstant.ROLE_ORG_ADMIN_ID);
+            u.setPostId(BusinessConstant.POST_ORG_ADMIN_ID);
+            u.setUserType(2);
+            userService.save(u);
             //创建关联关系
-			UserDept userDept=new UserDept();
-			userDept.setUserId(u.getId());
-			userDept.setDeptId(dept.getId());
-			userDeptService.save(userDept);
+            UserDept userDept = new UserDept();
+            userDept.setUserId(u.getId());
+            userDept.setDeptId(dept.getId());
+            userDeptService.save(userDept);
 //			//创建组织机构
 //			LambdaQueryWrapper<Region> regionQueryWrapper = Wrappers.<Region>query().lambda();
 //			regionQueryWrapper.eq(Region::getCode,openUserEntity.getRegionCode());
@@ -201,12 +202,12 @@ public class OpenUserController extends BladeController {
 //			mailText += "</div>";
 //			MailHelp.sendMail(toMail, title, mailText);
 
-			return R.success("帐号申请已注册成功");
+            return R.success("已注册成功");
 
-		} catch (Exception e) {
-			e.printStackTrace();
-			throw new RuntimeException("注册失败");
-		}
+        } catch (Exception e) {
+            e.printStackTrace();
+            throw new RuntimeException("注册失败");
+        }
 
-	}
+    }
 }

+ 35 - 0
src/main/java/org/springblade/modules/baseinfo/user/dto/OpenUserDTO.java

@@ -0,0 +1,35 @@
+/**
+ * Copyright 2019 DH
+ * All right reserved.
+ * 项目名称: 大恒泰山系统
+ * 创建日期:2024/3/8
+ */
+package org.springblade.modules.baseinfo.user.dto;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springblade.modules.baseinfo.user.entity.OpenUserEntity;
+
+/***
+ * Date:2024/3/8
+ * Title:文件所属模块(必须填写)
+ * Description:对本文件的详细描述,原则上不能少于30字
+ * @author dylan
+ * @version 1.0
+ * Remark:认为有必要的其他信息
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class OpenUserDTO extends OpenUserEntity {
+    @ApiModelProperty(value = "租户ID")
+    private String tenantId;
+
+    @ApiModelProperty(value = "帐号")
+    private String username;
+
+    @ApiModelProperty(value = "密码")
+    private String password;
+
+
+}

+ 11 - 0
src/main/java/org/springblade/modules/baseinfo/user/entity/OpenUserEntity.java

@@ -28,6 +28,17 @@ import java.util.Date;
 @EqualsAndHashCode(callSuper = true)
 @TableName("base_open_user_info")
 public class OpenUserEntity extends BaseEntity {
+	/**
+	 * 帐号
+	 */
+	@ApiModelProperty(value = "帐号")
+	private String account;
+
+	/**
+	 * 密码
+	 */
+	@ApiModelProperty(value = "密码")
+	private String password;
 
 	/**
 	 * 人员名称

+ 2 - 0
src/main/java/org/springblade/modules/baseinfo/user/mapper/OpenUserMapper.xml

@@ -4,6 +4,8 @@
 
     <!-- 通用查询映射结果 -->
     <resultMap id="openUserResultMap" type="org.springblade.modules.baseinfo.user.entity.OpenUserEntity">
+        <result column="account" property="account"/>
+        <result column="password" property="password"/>
         <result column="contact_phone" property="contactPhone"/>
         <result column="person_name" property="personName"/>
         <result column="company_name" property="companyName"/>

+ 13 - 1
src/main/java/org/springblade/mq/kafka/handler/MessageHandler.java

@@ -25,6 +25,7 @@ import org.springblade.modules.business.warning.service.IRtuWarningService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.data.redis.core.RedisTemplate;
+import org.springframework.kafka.annotation.KafkaListener;
 import org.springframework.kafka.core.KafkaTemplate;
 import org.springframework.kafka.support.Acknowledgment;
 import org.springframework.stereotype.Component;
@@ -80,7 +81,18 @@ public class MessageHandler {
 	private String topicYwxtRtuStatus;
 
 
-
+	@KafkaListener(groupId = "${spring.kafka.consumer.group-id}", topics = "dcs.power01.test.1", containerFactory = "ackContainerFactory")
+	public void dcs(ConsumerRecord record, Acknowledgment acknowledgment) {
+		try {
+			String message = (String) record.value();
+			log.info(message);
+		} catch (Exception e) {
+			log.error(e.getMessage(), e);
+		} finally {
+			// 手动提交 offset
+			acknowledgment.acknowledge();
+		}
+	}
 	/**
 	 * 测站状态检测
 	 *

+ 1 - 1
src/main/resources/application-dev.yml

@@ -35,7 +35,7 @@ spring:
   #    password: ZGXXXT2022
 
   kafka:
-    bootstrap-servers: 172.31.1.54:9092
+    bootstrap-servers: 172.31.1.154:9092
     producer:
       retries: 0
       batch-size: 16384

+ 1 - 1
src/main/resources/application.yml

@@ -200,7 +200,7 @@ blade:
     skip-url:
       - /galaxy-test/**
       - /galaxy-demo/demo/**
-      #- /galaxy-business/open/user/reg
+      - /galaxy-business/open/user/reg
       - /galaxy-business/data/manage/video
     #授权认证配置
     auth:

Beberapa file tidak ditampilkan karena terlalu banyak file yang berubah dalam diff ini