diff --git a/adc-da-activiti/src/main/java/com/adc/da/workFlow/controller/WorkFlowController.java b/adc-da-activiti/src/main/java/com/adc/da/workFlow/controller/WorkFlowController.java index a3cb3a88..279b0e97 100644 --- a/adc-da-activiti/src/main/java/com/adc/da/workFlow/controller/WorkFlowController.java +++ b/adc-da-activiti/src/main/java/com/adc/da/workFlow/controller/WorkFlowController.java @@ -12,6 +12,9 @@ import com.adc.da.http.PageInfo; import com.adc.da.http.ResponseMessage; import com.adc.da.http.Result; import com.adc.da.common.Page; +import com.adc.da.login.util.JwtUtils; +import com.adc.da.slrs.sarUser.entity.TsUser; +import com.adc.da.slrs.sarUser.service.ITsUserService; import com.adc.da.sys.common.EmailUtils; import com.adc.da.sys.entity.UserEO; import com.adc.da.sys.service.IUserEOService; @@ -30,12 +33,14 @@ import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.web.bind.annotation.*; +import sun.misc.BASE64Encoder; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.*; import java.net.URL; import java.net.URLConnection; +import java.net.URLEncoder; import java.util.*; import java.util.stream.Collectors; @@ -52,10 +57,44 @@ public class WorkFlowController { @Value("${stand.edit.file.path}") private String standEditFilePath; + @Autowired + private JwtUtils jwtUtils; + + @Autowired + private ITsUserService userService; + // @Autowired // private ExportExcelMapper exportExcelMapper; + + @ApiOperation(value = "手机获取token") + @PostMapping(value = "/loginMobile") + @ResponseBody + public ResponseMessage loginMobile(String taskIds, String pId) throws UnsupportedEncodingException { + BusProcessNew busProcessNew = workFlowFeignClient.queryDetail(taskIds); + if(busProcessNew == null || StringUtils.isBlank(busProcessNew.getUserId())){ + return Result.error("r0011", "用户不存在"); + } + TsUser userEO = userService.getById(busProcessNew.getUserId()); + if (null == userEO) { + return Result.error("r0011", "用户不存在"); + } + if(userEO.getDisableFlag().equals("1")){ + return Result.error("r0011", "帐号已禁用"); + } + String token = jwtUtils.generateToken(userEO.getUserId()); + userEO.setToken(token); + // 加密重要信息 + BASE64Encoder encoder = new BASE64Encoder(); + String userStr = JSON.toJSONString(userEO); + String userStr2 = URLEncoder.encode(userStr,"UTF-8"); + userStr = encoder.encode(userStr2.getBytes()); + return Result.success(userStr); + } + + + @ApiOperation(value = "查询在线编辑流程汇总文件编辑对象") @GetMapping("/processModelHisOneCount") public BusProcessModelHis processModelHisOneCount(@RequestParam("pid") String pid){ diff --git a/adc-da-jwtLogin/src/main/java/com/adc/da/login/security/WebMvcConfig.java b/adc-da-jwtLogin/src/main/java/com/adc/da/login/security/WebMvcConfig.java index 021570b0..f3914238 100644 --- a/adc-da-jwtLogin/src/main/java/com/adc/da/login/security/WebMvcConfig.java +++ b/adc-da-jwtLogin/src/main/java/com/adc/da/login/security/WebMvcConfig.java @@ -66,6 +66,9 @@ public class WebMvcConfig implements WebMvcConfigurer { // onlyOffice 回调 addInterceptor.excludePathPatterns("/api/lawss/activiti/recieveFile"); + // 手机获取token + addInterceptor.excludePathPatterns("/api/lawss/activiti/loginMobile"); + addInterceptor.excludePathPatterns("/api/lawss/activiti/processModelHisOne"); addInterceptor.excludePathPatterns("/api/lawss/activiti/processModelHisOneCount"); diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/entity/TsUser.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/entity/TsUser.java index 40166850..3b2bab67 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/entity/TsUser.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/entity/TsUser.java @@ -150,6 +150,10 @@ public class TsUser extends BaseEntity { @TableField(exist = false) private Integer size; + @TableField(exist = false) + private String token; + + public TsUser() { }