From 09394848ce262aff81897503d32ec334fd3f2b6f Mon Sep 17 00:00:00 2001
From: zouyu <2723363702@qq.com>
Date: 星期二, 20 一月 2026 15:59:30 +0800
Subject: [PATCH] Merge branch 'dev_tide' into dev_tide_zlglxt_xinlan
---
src/main/java/com/ruoyi/tide/controller/TideController.java | 126 ++++++++++++++++++++++++++++++++++++++++++
1 files changed, 126 insertions(+), 0 deletions(-)
diff --git a/src/main/java/com/ruoyi/tide/controller/TideController.java b/src/main/java/com/ruoyi/tide/controller/TideController.java
new file mode 100644
index 0000000..ec7716d
--- /dev/null
+++ b/src/main/java/com/ruoyi/tide/controller/TideController.java
@@ -0,0 +1,126 @@
+package com.ruoyi.tide.controller;
+
+import cn.hutool.core.collection.CollectionUtil;
+import com.alibaba.fastjson2.JSONObject;
+import com.baomidou.mybatisplus.core.toolkit.IdWorker;
+import com.ruoyi.common.constant.Constants;
+import com.ruoyi.common.utils.SecurityUtils;
+import com.ruoyi.framework.aspectj.lang.annotation.Anonymous;
+import com.ruoyi.framework.security.service.SysLoginService;
+import com.ruoyi.framework.web.domain.AjaxResult;
+import com.ruoyi.project.system.domain.SysDept;
+import com.ruoyi.project.system.domain.SysUser;
+import com.ruoyi.project.system.service.ISysDeptService;
+import com.ruoyi.project.system.service.ISysUserService;
+import com.ruoyi.tide.pojo.TidePojo;
+import com.ruoyi.tide.utils.TideUtils;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.ObjectUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.transaction.annotation.Isolation;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.annotation.PreDestroy;
+import javax.annotation.security.PermitAll;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+
+@RequestMapping("/tide")
+@RestController
+@Api(tags = "瀵规帴娴疆绯荤粺")
+@Anonymous
+@Slf4j
+public class TideController {
+
+ @Autowired
+ private SysLoginService loginService;
+
+ @Autowired
+ private ISysUserService userService;
+
+ @Autowired
+ private ISysDeptService deptService;
+
+ @ApiOperation(value = "鐧诲綍")
+ @PostMapping("/tideLogin")
+ public AjaxResult login(@RequestBody TidePojo tidePojo) {
+ String token = TideUtils.getToken(tidePojo.getCode());
+ JSONObject userInfo = TideUtils.getUserInfo(token);
+ JSONObject tenant = JSONObject.parseObject(userInfo.get("tenant").toString());
+ AjaxResult ajax = AjaxResult.success();
+ // 鐢熸垚浠ょ墝
+ String generateToken = loginService.login(tenant.get("tenantAccount").toString(), tenant.get("tenantPassword").toString(), null,
+ IdWorker.get32UUID());
+ ajax.put(Constants.TOKEN, generateToken);
+ return ajax;
+ }
+
+ @PostMapping("/applicationOrdering")
+ @Transactional(rollbackFor = Exception.class,isolation = Isolation.READ_COMMITTED)
+ public JSONObject order (@RequestBody TidePojo tidePojo) {
+ SysUser user = userService.selectUserByUserName(tidePojo.getPltAccountLogin());
+ String defaultPwd = "I73Kj+Mn$+SI";//榛樿寮�閫氬瘑鐮佸浐瀹氬啓姝�
+// String randomString = TideUtils.getRandomString(12);
+ //璐﹀彿涓嶅瓨鍦紝鎵ц鏂板鎿嶄綔
+ if(ObjectUtils.isEmpty(user)){
+ //1.鍏堟柊澧炵敤鎴峰搴旂殑鍏徃
+ SysDept dept = new SysDept();
+ dept.setParentId(100L);//鐖跺叕鍙竔d
+ dept.setDeptName(tidePojo.getEnterpriseName());
+ dept.setDeptNick(tidePojo.getEnterpriseName());
+ dept.setOrderNum(0);
+ boolean deptNameUnique = deptService.checkDeptNameUnique(dept);
+ if (deptNameUnique){
+ deptService.insertDept(dept);
+ }
+ //鏌ヨ鍏徃
+ SysDept newSysDept = deptService.selectDeptByDeptName(dept.getDeptName());
+ dept.setDeptId(ObjectUtils.isEmpty(newSysDept)?100L:newSysDept.getDeptId());
+ dept.setTenantId(dept.getDeptId());
+ deptService.updateDept(dept);
+ user = new SysUser();
+ String password = SecurityUtils.encryptPassword(defaultPwd);
+ user.setPassword(password);
+ user.setUserName(tidePojo.getPltAccountLogin());
+ user.setNickName(tidePojo.getEnterpriseName());
+ user.setStatus("0");
+ user.setDelFlag("0");
+ user.setPostIds(new Long[]{1L});
+ user.setRoleId(1L);
+ user.setRoleIds(new Long[]{2L});//榛樿鏅�氳鑹�
+ user.setDeptIds(new Long[]{dept.getDeptId()});//缁戝畾鍏徃
+ user.setTenantId(dept.getDeptId());
+ userService.insertUser(user);
+ }
+ Map<String, Object> map = new HashMap<>();
+ map.put("account", tidePojo.getPltAccountLogin());
+ map.put("token", defaultPwd);
+ map.put("tenantId", user.getUserId());
+ return TideUtils.getResult(20000, "鎴愬姛", map);
+ }
+
+ @PostMapping("/cancellation")
+ public JSONObject cancellation (@RequestBody TidePojo tidePojo) {
+ log.info("鎵ц浜嗘敞閿�淇℃伅锛�" + tidePojo);
+ if(Objects.nonNull(tidePojo)){
+ SysUser sysUser = userService.selectUserByUserName(tidePojo.getPltAccountLogin());
+ if(Objects.nonNull(sysUser)){
+ userService.deleteUserById(sysUser.getUserId());
+ }
+ }
+ return TideUtils.getResult(20000, "鎴愬姛", null);
+ }
+
+ public static void main(String[] args) {
+ String password = SecurityUtils.encryptPassword("c($Rb_@!n%U7");
+ System.out.println(password);
+ }
+}
--
Gitblit v1.9.3