package com.wms_admin.sys.controller; import com.alibaba.fastjson2.JSONObject; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.wms_admin.sys.entity.User; import com.wms_admin.sys.mapper.UserMapper; import com.wms_admin.sys.service.UserService; import com.wms_admin.sys.tripartiteTide.TidePojo; import com.wms_admin.sys.tripartiteTide.TideUtils; import com.wms_admin.utils.MyUtils; import com.wms_admin.utils.Result; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.crypto.hash.Md5Hash; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.DigestUtils; import org.springframework.util.ObjectUtils; import org.springframework.web.bind.annotation.*; import java.util.HashMap; import java.util.Map; @RequestMapping("/tide") @RestController @Api(tags = "对接浪潮系统") @Slf4j public class TideController { @Autowired private UserMapper userMapper; @Autowired private UserService userService; @ApiOperation(value = "登录") @RequestMapping("/tideLogin") public Result> login(@RequestBody Map map) { String token = TideUtils.getToken(map.get("code")); JSONObject userInfo = TideUtils.getUserInfo(token); JSONObject tenant = JSONObject.parseObject(userInfo.get("tenant").toString()); log.info("登录信息信息:" + tenant); Result> login = null; try { login = userService.login(tenant.get("tenantAccount").toString(), tenant.get("tenantPassword").toString()); } catch (Exception e) { throw new RuntimeException(e); } return login; } @PostMapping("/applicationOrdering") public JSONObject order (@RequestBody TidePojo tidePojo) { User user = new User(); user.setAccount(tidePojo.getPltAccountLogin()); String salt = MyUtils.getSalt(8); String oldMD5 = new Md5Hash(salt, null,1024).toString(); user.setPassword(oldMD5); user.setUsername(tidePojo.getEnterpriseName()); user.setAvatar("=-"); user.setAuthority(true); user.setSalt(salt); User user1 = userMapper.selectOne(Wrappers.lambdaQuery() .eq(User::getAccount, user.getAccount())); if (!ObjectUtils.isEmpty(user1)) { user = user1; } else { userMapper.insert(user); } Map map = new HashMap<>(); map.put("account", tidePojo.getPltAccountLogin()); map.put("token", salt); map.put("tenantId", user.getId()); return TideUtils.getResult(20000, "成功", map); } @PostMapping("/cancellation") public JSONObject cancellation (@RequestBody TidePojo tidePojo) { log.info("执行了注销信息:" + tidePojo); return TideUtils.getResult(20000, "成功", null); } }