package com.ruoyi.web.controller.tide; import com.alibaba.fastjson2.JSONObject; import com.baomidou.mybatisplus.core.toolkit.IdWorker; import com.ruoyi.common.annotation.Anonymous; import com.ruoyi.common.constant.Constants; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.domain.entity.SysUser; import com.ruoyi.common.utils.SecurityUtils; import com.ruoyi.framework.web.service.SysLoginService; import com.ruoyi.system.service.ISysUserService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; 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 java.util.HashMap; import java.util.Map; @RequestMapping("/tide") @RestController @Api(tags = "对接浪潮系统") @Anonymous @Slf4j public class TideController { @Autowired private SysLoginService loginService; @Autowired private ISysUserService userService; @ApiOperation(value = "登录") @PostMapping("/tideLogin") public AjaxResult login(@RequestBody String code) { String token = TideUtils.getToken(code); 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") public JSONObject order (@RequestBody TidePojo tidePojo) { SysUser user = new SysUser(); String randomString = TideUtils.getRandomString(12); String password = SecurityUtils.encryptPassword(randomString); 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); userService.insertUser(user); Map map = new HashMap<>(); map.put("account", tidePojo.getPltAccountLogin()); map.put("token", randomString); map.put("tenantId", user.getUserId()); return TideUtils.getResult(20000, "成功", map); } @PostMapping("/cancellation") public JSONObject cancellation (@RequestBody TidePojo tidePojo) { log.info("执行了注销信息:" + tidePojo); return TideUtils.getResult(20000, "成功", null); } public static void main(String[] args) { String password = SecurityUtils.encryptPassword("tzvy7lB."); System.out.println(password); } }