Browse Source

取消key与token暂存池

lwx_dev
erdanergou 3 years ago
parent
commit
4b22c94bfe
  1. 10
      src/main/java/com/dreamchaser/depository_manage/config/PublicConfig.java
  2. 48
      src/main/java/com/dreamchaser/depository_manage/controller/CompanyController.java
  3. 127
      src/main/java/com/dreamchaser/depository_manage/controller/DepositoryController.java
  4. 172
      src/main/java/com/dreamchaser/depository_manage/controller/DepositoryRecordController.java
  5. 30
      src/main/java/com/dreamchaser/depository_manage/controller/GroupController.java
  6. 14
      src/main/java/com/dreamchaser/depository_manage/controller/NoticeController.java
  7. 178
      src/main/java/com/dreamchaser/depository_manage/controller/PageController.java
  8. 4
      src/main/java/com/dreamchaser/depository_manage/controller/QyWxOperationController.java
  9. 20
      src/main/java/com/dreamchaser/depository_manage/controller/StockTakingController.java
  10. 29
      src/main/java/com/dreamchaser/depository_manage/controller/UserController.java
  11. 32
      src/main/java/com/dreamchaser/depository_manage/security/pool/UserKeyAndTokenPool.java
  12. 10
      src/main/java/com/dreamchaser/depository_manage/service/CompanyService.java
  13. 100
      src/main/java/com/dreamchaser/depository_manage/service/DepositoryRecordService.java
  14. 4
      src/main/java/com/dreamchaser/depository_manage/service/DepositoryService.java
  15. 2
      src/main/java/com/dreamchaser/depository_manage/service/ExcelService.java
  16. 4
      src/main/java/com/dreamchaser/depository_manage/service/GroupService.java
  17. 8
      src/main/java/com/dreamchaser/depository_manage/service/NoticeService.java
  18. 10
      src/main/java/com/dreamchaser/depository_manage/service/StockTakingService.java
  19. 22
      src/main/java/com/dreamchaser/depository_manage/service/impl/CompanyServiceImpl.java
  20. 387
      src/main/java/com/dreamchaser/depository_manage/service/impl/DepositoryRecordServiceImpl.java
  21. 14
      src/main/java/com/dreamchaser/depository_manage/service/impl/DepositoryServiceImpl.java
  22. 10
      src/main/java/com/dreamchaser/depository_manage/service/impl/ExcelServiceImpl.java
  23. 10
      src/main/java/com/dreamchaser/depository_manage/service/impl/GroupServiceImpl.java
  24. 16
      src/main/java/com/dreamchaser/depository_manage/service/impl/NoticeServiceImpl.java
  25. 62
      src/main/java/com/dreamchaser/depository_manage/service/impl/QyWxOperationService.java
  26. 50
      src/main/java/com/dreamchaser/depository_manage/service/impl/StockTakingServiceImpl.java
  27. 29
      src/main/java/com/dreamchaser/depository_manage/utils/HttpUtils.java
  28. 57
      src/main/java/com/dreamchaser/depository_manage/utils/LinkInterfaceUtil.java
  29. 2
      src/test/java/com/dreamchaser/depository_manage/BarChartTest.java
  30. 2
      src/test/java/com/dreamchaser/depository_manage/InventoryLineChartTest.java
  31. 2
      src/test/java/com/dreamchaser/depository_manage/InventorySunburstDataTest.java
  32. 2
      src/test/java/com/dreamchaser/depository_manage/LineChartTest.java
  33. 6
      src/test/java/com/dreamchaser/depository_manage/OtherTest.java

10
src/main/java/com/dreamchaser/depository_manage/config/PublicConfig.java

@ -39,7 +39,7 @@ public class PublicConfig {
* @param userToken 待获取人员
* @return
*/
public static List<UserByPort> findDepartmentHeadByUser(Integer maindeparment,UserByPort userToken){
public static List<UserByPort> findDepartmentHeadByUser(Integer maindeparment,String userKey,String userToken){
List<UserByPort> userByPortList = new ArrayList<>();
String url = PublicConfig.external_url + "/staff/archiveslist";
Map<String,Object> map = new HashMap<>();
@ -49,7 +49,7 @@ public class PublicConfig {
JSONObject paramObject = JSONObject.parseObject(jsonString);
String post = null;
try {
post = HttpUtils.send(url, paramObject, HTTP.UTF_8,userToken);
post = HttpUtils.send(url, paramObject, HTTP.UTF_8,userKey,userToken);
} catch (IOException e) {
e.printStackTrace();
}
@ -81,7 +81,7 @@ public class PublicConfig {
JSONObject paramObject = JSONObject.parseObject(jsonString);
String post = null;
try {
post = HttpUtils.send(url,paramObject, HTTP.UTF_8,null);
post = HttpUtils.send(url,paramObject, HTTP.UTF_8,null,null);
} catch (IOException e) {
e.printStackTrace();
}
@ -98,13 +98,13 @@ public class PublicConfig {
// 修改员工微信或企业微信UserId
public static void editUserWechatOpenid(Map<String,String> map,UserByPort userByPort){
public static void editUserWechatOpenid(Map<String,String> map,String userKey,String userToken){
String url = external_url+"/staff/edit_us_wechat_openid";
String jsonString = JSONObject.toJSONString(map);
JSONObject paramObject = JSONObject.parseObject(jsonString);
String post = null;
try {
post = HttpUtils.send(url, paramObject, HTTP.UTF_8,userByPort);
post = HttpUtils.send(url, paramObject, HTTP.UTF_8,userKey,userToken);
} catch (IOException e) {
e.printStackTrace();
}

48
src/main/java/com/dreamchaser/depository_manage/controller/CompanyController.java

@ -49,8 +49,10 @@ public class CompanyController {
@PostMapping("/allCompanyByParent")
public RestResponse findCompanyByNoParent(@RequestParam Map<String, Object> map, HttpServletRequest request) {
String token = request.getHeader("user-token");
String key = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
key = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
String url = PublicConfig.external_url + "/org/govlist";
@ -70,7 +72,7 @@ public class CompanyController {
JSONObject paramObject = JSONObject.parseObject(jsonString);
String post = null;
try {
post = HttpUtils.send(url, paramObject, HTTP.UTF_8, userToken);
post = HttpUtils.send(url, paramObject, HTTP.UTF_8,key, token);
} catch (IOException e) {
e.printStackTrace();
}
@ -99,11 +101,12 @@ public class CompanyController {
@GetMapping("/findAllCompany")
public RestResponse findAllCompany(HttpServletRequest request){
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userByPort = AuthenticationTokenPool.getUserToken(token);
Map<String, Object> administration = LinkInterfaceUtil.findAdministration(userByPort);
Map<String, Object> administration = LinkInterfaceUtil.findAdministration(userKey,token);
List<AdministrationP> administrationPList = (List<AdministrationP>) administration.get("administrationPList");
return new RestResponse(administrationPList);
}
@ -118,11 +121,12 @@ public class CompanyController {
@GetMapping("/findPostByCompany")
public RestResponse findPostByCompany(@RequestParam("company") String company, HttpServletRequest request) {
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
List<AdministrationP> administrationPList = LinkInterfaceUtil.findCompanyBySuperior(company, userToken);
List<AdministrationP> administrationPList = LinkInterfaceUtil.findCompanyBySuperior(company, token,userKey);
int size = administrationPList.size();
return new RestResponse(administrationPList, size, 200);
}
@ -136,10 +140,11 @@ public class CompanyController {
@PostMapping("/companyByCondition")
public RestResponse findcompanyByCondition(@RequestParam Map<String, Object> map, HttpServletRequest request) {
String token = request.getHeader("user-token");
String key = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
key = (String) request.getSession().getAttribute("userKey");
}
UserByPort userByPort = AuthenticationTokenPool.getUserToken(token);
String url = PublicConfig.external_url + "/org/govlist";
if (map.containsKey("state")) {
Object state = map.get("state");
@ -153,7 +158,7 @@ public class CompanyController {
JSONObject paramObject = JSONObject.parseObject(jsonString);
String post = null;
try {
post = HttpUtils.send(url, paramObject, HTTP.UTF_8, userByPort);
post = HttpUtils.send(url, paramObject, HTTP.UTF_8, key,token);
} catch (IOException e) {
e.printStackTrace();
}
@ -182,10 +187,11 @@ public class CompanyController {
@PostMapping("/allPostByOrganization")
public RestResponse allPostByParent(@RequestParam Map<String, Object> map, HttpServletRequest request) {
String token = request.getHeader("user-token");
String key = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
key = (String) request.getSession().getAttribute("userKey");
}
UserByPort userByPort = AuthenticationTokenPool.getUserToken(token);
String url = PublicConfig.external_url + "/org/positionlist";
Object page = map.get("page");
Object pagesize = map.get("size");
@ -195,7 +201,7 @@ public class CompanyController {
JSONObject paramObject = JSONObject.parseObject(jsonString);
String post = null;
try {
post = HttpUtils.send(url, paramObject, HTTP.UTF_8, userByPort);
post = HttpUtils.send(url, paramObject, HTTP.UTF_8, key,token);
} catch (IOException e) {
e.printStackTrace();
}
@ -239,13 +245,15 @@ public class CompanyController {
@PostMapping("/post_role")
public RestResponse addUser(@RequestBody Map<String, Object> map, HttpServletRequest request) {
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
Map<String, Object> userParam = new HashMap<>();
userParam.put("position", ObjectFormatUtil.toInteger(map.get("userid")));
List<UserByPort> userByPortList = LinkInterfaceUtil.FindUserByMap(userParam, userToken);
List<UserByPort> userByPortList = LinkInterfaceUtil.FindUserByMap(userParam, userKey,token);
Integer success = 0;
if (map.containsKey("depositoryId")) {
for (UserByPort userByPort : userByPortList) {
@ -363,15 +371,17 @@ public class CompanyController {
@GetMapping("/findPostRole")
public RestResponse findPostRole(@RequestParam Map<String, Object> map, HttpServletRequest request) {
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
Map<String, Object> userParam = new HashMap<>();
Integer postId = ObjectFormatUtil.toInteger(map.get("postId"));
userParam.put("position", postId);
List<UserByPort> userByPortList = LinkInterfaceUtil.FindUserByMap(userParam, userToken);
Post postById = LinkInterfaceUtil.findPostById(postId, userToken);
List<UserByPort> userByPortList = LinkInterfaceUtil.FindUserByMap(userParam, userKey,token);
Post postById = LinkInterfaceUtil.findPostById(postId, userKey,token);
List<RoleAndDepository> roleAndDepositoryByCondition = new ArrayList<>();
if (userByPortList.size() != 0) {
Map<String, Object> param = new HashMap<>();
@ -400,11 +410,13 @@ public class CompanyController {
public RestResponse InitTreeMenus(HttpServletRequest request) {
List<Object> list = new ArrayList<>();
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
list = companyService.InitTreeMenusForHearder(userToken);
list = companyService.InitTreeMenusForHearder(userToken,userKey,token);
return new RestResponse(list);
}
@ -416,11 +428,13 @@ public class CompanyController {
public RestResponse postTreeMenus(HttpServletRequest request){
List<Object> list = new ArrayList<>();
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
list = companyService.buildPostTree(userToken);
list = companyService.buildPostTree(userToken,userKey,token);
return new RestResponse(list);
}
@ -465,13 +479,13 @@ public class CompanyController {
*/
@GetMapping("/getOrgAndPostThree")
public RestResponse getOrgAndPostThree(HttpServletRequest request){
List<Object> list = new ArrayList<>();
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
return new RestResponse(companyService.BuildOrgAndPostThree(userToken));
return new RestResponse(companyService.BuildOrgAndPostThree(userKey,token));
}

127
src/main/java/com/dreamchaser/depository_manage/controller/DepositoryController.java

@ -19,9 +19,6 @@ import java.text.SimpleDateFormat;
import java.util.*;
import java.util.concurrent.*;
/**
* @author Dreamchser
*/
@RestController
@RequestMapping("/repository")
@ -74,24 +71,24 @@ public class DepositoryController {
@GetMapping("/warehouseRecord")
public RestResponse findDepositoryRecordByCondition(@RequestParam Map<String, Object> map, HttpServletRequest request) {
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userByPort = AuthenticationTokenPool.getUserToken(token);
List<Depository> list = depositoryService.findDepositoryByCondition(map, userByPort);
for (int i = 0; i < list.size(); i++) {
Depository depository = list.get(i);
Administration company = LinkInterfaceUtil.getCompany(depository.getCid(), userByPort);
list.get(i).setCname(company.getName());
List<Depository> list = depositoryService.findDepositoryByCondition(map, userKey, token);
for (Depository depository : list) {
Administration company = LinkInterfaceUtil.getCompany(depository.getCid(), userKey, token);
depository.setCname(company.getName());
}
return new RestResponse(list, depositoryService.findCountByCondition(map), 200);
}
@GetMapping("/getDepositoryForNoParent")
public RestResponse getDepositoryForNoParent(HttpServletRequest request){
public RestResponse getDepositoryForNoParent(HttpServletRequest request) {
List<Depository> depositoryForNoParent = depositoryService.findDepositoryForNoParent();
return new RestResponse(depositoryForNoParent);
return new RestResponse(depositoryForNoParent);
}
/**
@ -103,16 +100,18 @@ public class DepositoryController {
@GetMapping("/allWarehouseByParent")
public RestResponse findDepositoryByNoParent(@RequestParam Map<String, Object> map, HttpServletRequest request) {
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userByPort = AuthenticationTokenPool.getUserToken(token);
if ("".equals(map.get("parentId")) || map.get("parentId") == null) {
map.put("parentId", 0);
}
List<Depository> list = depositoryService.findDepositoryByCondition(map, userByPort);
List<Depository> list = depositoryService.findDepositoryByCondition(map, userKey, token);
// 获取所有行政单位
Map<String, Object> administration = LinkInterfaceUtil.findAdministration(userByPort);
Map<String, Object> administration = LinkInterfaceUtil.findAdministration(userKey, token);
List<AdministrationP> administrationPList = (List<AdministrationP>) administration.get("administrationPList");
Integer total = (Integer) administration.get("total");
for (int i = 0; i < list.size(); i++) {
@ -136,19 +135,23 @@ public class DepositoryController {
@PostMapping("/realDeleteDepository")
public RestResponse realDeleteDepository(@RequestBody Map<String, Object> map, HttpServletRequest request) {
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
String finalUserKey = userKey;
String finalToken = token;
if (map.containsKey("id")) {
Integer id = ObjectFormatUtil.toInteger(map.get("id"));
HandlesOtherFunctionalThreadPool.execute(() -> RealDeleteSonDepository(id.toString(), userToken));
HandlesOtherFunctionalThreadPool.execute(() -> RealDeleteSonDepository(id.toString(), finalUserKey, finalToken));
return CrudUtil.deleteHandle(depositoryService.deleteDepositoryRecordById(id), 1);
} else if (map.containsKey("ids")) {
List<Integer> ids = (List<Integer>) map.get("ids");
for (Integer integer : ids) {
String id = integer.toString();
HandlesOtherFunctionalThreadPool.execute(() -> RealDeleteSonDepository(id, userToken));
HandlesOtherFunctionalThreadPool.execute(() -> RealDeleteSonDepository(id, finalUserKey, finalToken));
}
return CrudUtil.deleteHandle(depositoryService.deleteDepositoryRecordByIds(ids), ids.size());
} else {
@ -161,14 +164,14 @@ public class DepositoryController {
*
* @param parentId
*/
public void RealDeleteSonDepository(String parentId, UserByPort userByPort) {
public void RealDeleteSonDepository(String parentId, String userKey, String token) {
Map<String, Object> param = new HashMap<>();
param.put("parentId", parentId);
// 获取当前仓库所有子仓库
List<Depository> depositoryRecordPByCondition = depositoryService.findDepositoryByCondition(param, userByPort);
for (int i = 0; i < depositoryRecordPByCondition.size(); i++) {
Integer id = depositoryRecordPByCondition.get(i).getId(); // 获取当前仓库id
RealDeleteSonDepository(id.toString(), userByPort); // 递归查询仓库
List<Depository> depositoryRecordPByCondition = depositoryService.findDepositoryByCondition(param, userKey, token);
for (Depository depository : depositoryRecordPByCondition) {
Integer id = depository.getId(); // 获取当前仓库id
RealDeleteSonDepository(id.toString(), userKey, token); // 递归查询仓库
depositoryService.deleteDepositoryRecordById(id); // 删除仓库
}
}
@ -182,20 +185,22 @@ public class DepositoryController {
@PostMapping("/depository")
public RestResponse insertDepository(@RequestBody Map<String, Object> map, HttpServletRequest request) {
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
return CrudUtil.insertHandle(depositoryService.insertDepository(map, userToken), 1);
return CrudUtil.insertHandle(depositoryService.insertDepository(map, userKey, token), 1);
}
/**
* 判断当前用户是否存在被设置的开放仓库
*
* @param request
* @return
*/
public RestResponse getWareHouseVisiblePermissionByUser(HttpServletRequest request){
public RestResponse getWareHouseVisiblePermissionByUser(HttpServletRequest request) {
String token = request.getHeader("user-token");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
@ -204,7 +209,7 @@ public class DepositoryController {
// 获取当前用户是否存在可见仓库
List<Integer> union = roleService.findDepositoryIdForWareHouseVisiblePermissionByUser(userToken);
boolean flag = false;
if(union.size()>0){
if (union.size() > 0) {
flag = true;
}
return new RestResponse(flag);
@ -219,20 +224,24 @@ public class DepositoryController {
@PostMapping("/depository_del")
public RestResponse deleteDepository(@RequestBody Map<String, Object> map, HttpServletRequest request) {
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
String finalUserKey = userKey;
String finalToken = token;
if (map.containsKey("id")) {
Integer id = ObjectFormatUtil.toInteger(map.get("id"));
HandlesOtherFunctionalThreadPool.execute(() -> UpdateSonState(id.toString(), 3, true, userToken));
HandlesOtherFunctionalThreadPool.execute(() -> UpdateSonState(id.toString(), 3, true, finalUserKey, finalToken));
return CrudUtil.deleteHandle(depositoryService.changeStateToDeletedById(id), 1);
} else if (map.containsKey("ids")) {
List<Integer> ids = (List<Integer>) map.get("ids");
for (Integer integer : ids) {
String id = integer.toString();
HandlesOtherFunctionalThreadPool.execute(() -> UpdateSonState(id, 3, true, userToken));
HandlesOtherFunctionalThreadPool.execute(() -> UpdateSonState(id, 3, true, finalUserKey,finalToken));
}
return CrudUtil.deleteHandle(depositoryService.changeStateToDeletedByIds(ids), ids.size());
} else {
@ -265,8 +274,10 @@ public class DepositoryController {
@PostMapping("/EditDepositoryState")
public RestResponse EditDepositoryState(@RequestBody Map<String, Object> map, HttpServletRequest request) {
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
if (map.containsKey("state")) {
@ -277,12 +288,14 @@ public class DepositoryController {
int state = ((int) map.get("state"));
String id = (String) map.get("id");
if (state == 2) {
String finalUserKey = userKey;
String finalToken = token;
if (map.containsKey("envelop")) {
// 封库
HandlesOtherFunctionalThreadPool.execute(() -> UpdateSonState(id, state, true, userToken));
HandlesOtherFunctionalThreadPool.execute(() -> UpdateSonState(id, state, true, finalUserKey, finalToken));
} else {
// 禁用仓库
HandlesOtherFunctionalThreadPool.execute(() -> UpdateSonState(id, state, false, userToken));
HandlesOtherFunctionalThreadPool.execute(() -> UpdateSonState(id, state, false, finalUserKey,finalToken));
}
}
return CrudUtil.insertHandle(depositoryService.updateDepository(map), 1);
@ -293,17 +306,15 @@ public class DepositoryController {
*
* @param parentId
*/
public void UpdateSonState(String parentId, Integer state, boolean envelop, UserByPort userToken) {
public void UpdateSonState(String parentId, Integer state, boolean envelop, String userKey,String token) {
Map<String, Object> param = new HashMap<>();
param.put("parentId", parentId);
// 获取当前仓库所有子仓库
List<Depository> depositoryRecordPByCondition = depositoryService.findDepositoryByCondition(param, userToken);
List<Depository> depositoryRecordPByCondition = depositoryService.findDepositoryByCondition(param, userKey,token);
for (Depository depository : depositoryRecordPByCondition) {
int depositoryId = depository.getId();
Map<String, Object> newMap = new HashMap<>();
newMap.put("parentId", depositoryId);
UpdateSonState(String.valueOf(depositoryId), state, envelop, userToken);
UpdateSonState(String.valueOf(depositoryId), state, envelop, userKey,token);
Map<String, Object> map = new HashMap<>();
map.put("id", depositoryId);
map.put("state", state);
@ -820,27 +831,19 @@ public class DepositoryController {
@GetMapping("/find_depository")
public RestResponse FindDepositoryByMid(@RequestParam("mid") String mid, HttpServletRequest request) {
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
Material materialById = materialService.findMaterialById(Integer.parseInt(mid));
Map<String, Object> param = new HashMap<>();
param.put("depositoryId", materialById.getDepositoryId());
List<Depository> depositoryId = depositoryService.findDepositoryByCondition(param, userToken);
List<Depository> depositoryId = depositoryService.findDepositoryByCondition(param, userKey,token);
return new RestResponse(depositoryId.get(0), 1, 200);
}
/**
* 根据物料名称查询所在仓库
*
* @param mname
* @return
*/
@GetMapping("/findDepositoryByMname")
public RestResponse FindDepositoryByMname(@RequestParam("mname") String mname) {
return null;
}
/**
* 查找仓库内是否有物品
@ -880,31 +883,6 @@ public class DepositoryController {
return new RestResponse(allSonDepositoryOfRelevancy);
}
/**
* 根据父级编号查询所有仓库物品
*
* @param parentid
* @return
*/
public Boolean findAllSonDepository(String parentid, UserByPort userToken) {
Map<String, Object> param = new HashMap<>();
param.put("parentId", parentid);
param.put("state", 1);
boolean materialByDepository = findMaterialByDepository(parentid);
if (materialByDepository) {
return true;
}
List<Depository> depositoryRecordPByCondition = depositoryService.findDepositoryByCondition(param, userToken);
for (Depository depository : depositoryRecordPByCondition) {
String depositoryId = depository.getId().toString();
if (!findMaterialByDepository(depositoryId)) {
findAllSonDepository(depositoryId, userToken);
} else {
return true;
}
}
return false;
}
/**
* 根据父级编号查询所有关联信息
@ -973,13 +951,15 @@ public class DepositoryController {
@GetMapping("/findDepositoryByParent")
public RestResponse FindDepositoryByParentId(@RequestParam("parentId") String parentId, HttpServletRequest request) {
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
Map<String, Object> param = new HashMap<>();
param.put("parentId", parentId);
List<Depository> depositoryRecordPByCondition = depositoryService.findDepositoryByCondition(param, userToken);
List<Depository> depositoryRecordPByCondition = depositoryService.findDepositoryByCondition(param, userKey, token);
return new RestResponse(depositoryRecordPByCondition, depositoryService.findCountByCondition(param), 200);
}
@ -993,14 +973,16 @@ public class DepositoryController {
@GetMapping("/findManagerByDid")
public RestResponse FindManagerByDid(@RequestParam("did") Integer did, HttpServletRequest request) {
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
List<Integer> userIdByDid = roleService.findUserIdByDid(did);
List<UserByPortP> list = new ArrayList<>();
for (Integer integer : userIdByDid) {
UserByPort userByPort = LinkInterfaceUtil.FindUserById(integer, userToken);
UserByPort userByPort = LinkInterfaceUtil.FindUserById(integer, userKey, token);
UserByPortP user = new UserByPortP(userByPort);
list.add(user);
}
@ -1009,7 +991,6 @@ public class DepositoryController {
}
// 构造树选择框
@GetMapping("/treeMenus")
public RestResponse InitTreeMenus(@RequestParam(value = "adminorg", required = false) Integer adminorg, HttpServletRequest request) {

172
src/main/java/com/dreamchaser/depository_manage/controller/DepositoryRecordController.java

@ -59,19 +59,21 @@ public class DepositoryRecordController {
@GetMapping("/myApply")
public RestResponse findDepositoryInAndOutRecordPByCondition(@RequestParam Map<String, Object> map, HttpServletRequest request) {
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
map.put("applicantId", userToken.getId());
List<ApplicationInRecordP> applicationInRecordPlist = depositoryRecordService.findApplicationInRecordPByCondition(map, userToken);
List<ApplicationInRecordP> applicationInRecordPlist = depositoryRecordService.findApplicationInRecordPByCondition(map, userToken,userKey,token);
Integer InCount = depositoryRecordService.findApplicationInRecordPCountByCondition(map);
for (ApplicationInRecordP applicationInRecordP : applicationInRecordPlist) {
if (applicationInRecordP.getPrice() != null) {
applicationInRecordP.setPrice(applicationInRecordP.getPrice() / 100);
}
}
List<ApplicationOutRecordP> applicationOutRecordPlist = depositoryRecordService.findApplicationOutRecordPByCondition(map, userToken);
List<ApplicationOutRecordP> applicationOutRecordPlist = depositoryRecordService.findApplicationOutRecordPByCondition(map, userToken,userKey,token);
Integer OutCount = depositoryRecordService.findApplicationOutRecordPCountByCondition(map);
for (ApplicationOutRecordP recordP : applicationOutRecordPlist) {
if (recordP.getPrice() != null) {
@ -89,12 +91,14 @@ public class DepositoryRecordController {
@GetMapping("/myTaskOut")
public RestResponse myTaskOut(@RequestParam Map<String, Object> map, HttpServletRequest request) {
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
map.put("userId", userToken.getId());
List<SimpleApplicationOutOrInRecordP> myTask = depositoryRecordService.findMyTaskOut(map, userToken);
List<SimpleApplicationOutOrInRecordP> myTask = depositoryRecordService.findMyTaskOut(map,userKey,token);
return new RestResponse(myTask
, depositoryRecordService.findMyTaskOutCount(map), 200);
@ -104,12 +108,14 @@ public class DepositoryRecordController {
@GetMapping("/myTaskIn")
public RestResponse myTaskIn(@RequestParam Map<String, Object> map, HttpServletRequest request) {
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
map.put("userId", userToken.getId());
List<SimpleApplicationOutOrInRecordP> myTask = depositoryRecordService.findMyTaskIn(map, userToken);
List<SimpleApplicationOutOrInRecordP> myTask = depositoryRecordService.findMyTaskIn(map,userKey,token);
return new RestResponse(myTask
, depositoryRecordService.findMyTaskInCount(map), 200);
@ -224,8 +230,10 @@ public class DepositoryRecordController {
String header = request.getHeader("user-agent");
String crypt = Md5.crypt(header);
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
List<Integer> params = (List<Integer>) map.get("params");
@ -391,6 +399,8 @@ public class DepositoryRecordController {
}
// 调用一个线程用于发送入库申请
String finalUserKey = userKey;
String finalToken = token;
SendQyWxMessageThreadPool.execute(() -> {
Map<Long, List<Integer>> MtIdToRecordId = new HashMap<>();
Map<Integer, List<Integer>> depositoryIdToRecordId = new HashMap<>();
@ -444,14 +454,14 @@ public class DepositoryRecordController {
for (RoleAndMaterialType mt : materialTypeIdForIn
) {
// 获取管理员数据
UserByPort userByPort = LinkInterfaceUtil.FindUserById(mt.getUid(), userToken);
UserByPort userByPort = LinkInterfaceUtil.FindUserById(mt.getUid(), finalUserKey, finalToken);
String workwechat = userByPort.getWorkwechat();
if (workwechat == null || "".equals(workwechat)) {
workwechat = userByPort.getWechat();
}
sb.append(workwechat).append(",");
}
JSONObject jsonObject = qyWxOperationService.sendApprovalTemplateIn(crypt, userToken, integerList, sb.toString());
JSONObject jsonObject = qyWxOperationService.sendApprovalTemplateIn(crypt, userToken, integerList, sb.toString(),finalUserKey,finalToken);
String sp_no = jsonObject.getString("sp_no");
Map<String, Object> QyWxApprovalMap = new HashMap<>();
QyWxApprovalMap.put("sp_no", sp_no);
@ -475,14 +485,14 @@ public class DepositoryRecordController {
for (RoleAndDepository mt : materialTypeIdForIn
) {
// 获取管理员数据
UserByPort userByPort = LinkInterfaceUtil.FindUserById(mt.getUserId(), userToken);
UserByPort userByPort = LinkInterfaceUtil.FindUserById(mt.getUserId(), finalUserKey,finalToken);
String workwechat = userByPort.getWorkwechat();
if (workwechat == null || "".equals(workwechat)) {
workwechat = userByPort.getWechat();
}
sb.append(workwechat).append(",");
}
JSONObject jsonObject = qyWxOperationService.sendApprovalTemplateIn(crypt, userToken, integerList, sb.toString());
JSONObject jsonObject = qyWxOperationService.sendApprovalTemplateIn(crypt, userToken, integerList, sb.toString(),finalUserKey,finalToken);
String sp_no = jsonObject.getString("sp_no");
Map<String, Object> QyWxApprovalMap = new HashMap<>();
QyWxApprovalMap.put("sp_no", sp_no);
@ -511,16 +521,18 @@ public class DepositoryRecordController {
// 出库申请
@PostMapping("/applicationOut")
public RestResponse insertApplicationOutRecord(@RequestBody Map<String, Object> map, HttpServletRequest request) {
String token = request.getHeader("user-token");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
String usertoken = request.getHeader("user-token");
String userkey = request.getHeader("user-key");
if (usertoken == null) {
usertoken = (String) request.getSession().getAttribute("userToken");
userkey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
UserByPort userToken = AuthenticationTokenPool.getUserToken(usertoken);
String header = request.getHeader("user-agent");
String crypt = Md5.crypt(header);
map.put("applicantId", userToken.getId());
// 获取当前部门负责人
List<UserByPort> departmentHeadByUsers = PublicConfig.findDepartmentHeadByUser(userToken.getMaindeparment(), userToken);
List<UserByPort> departmentHeadByUsers = PublicConfig.findDepartmentHeadByUser(userToken.getMaindeparment(), userkey,usertoken);
StringBuilder departmentHeadId = new StringBuilder();
StringBuilder departMentHeadQyWxName = new StringBuilder();
// for (int i = 0; i < departmentHeadByUsers.size(); i++) {
@ -551,8 +563,10 @@ public class DepositoryRecordController {
} else {
map.put("adminorgId", userToken.getMaindeparment());
}
String finalUserkey = userkey;
String finalUsertoken = usertoken;
if (params.size() < 1 && map.size() > 3) {
Integer res = depositoryRecordService.insertApplicationOutRecord(map, userToken); // 插入主订单
Integer res = depositoryRecordService.insertApplicationOutRecord(map, userToken,userkey,usertoken); // 插入主订单
Object id = map.get("id"); // 获取主订单编号
if (res == 1) { // 如果插入成功
if (id != null) {
@ -564,8 +578,9 @@ public class DepositoryRecordController {
// 开启一个线程执行发送信息操作
// 开启一个线程开启审批
SendQyWxMessageThreadPool.execute(() -> {
JSONObject jsonObject = qyWxOperationService.sendOutApprovalTemplate(crypt, userToken, ObjectFormatUtil.toInteger(id));
JSONObject jsonObject = qyWxOperationService.sendOutApprovalTemplate(crypt, userToken, ObjectFormatUtil.toInteger(id), finalUserkey, finalUsertoken);
String sp_no = jsonObject.getString("sp_no");
Map<String, Object> QyWxApprovalMap = new HashMap<>();
QyWxApprovalMap.put("sp_no", sp_no);
@ -593,7 +608,7 @@ public class DepositoryRecordController {
}
String keyNumber = key.split("mid")[1];
}
Integer res = depositoryRecordService.insertApplicationOutRecord(map, userToken);
Integer res = depositoryRecordService.insertApplicationOutRecord(map, userToken,userkey,usertoken);
if (res == 1) {
// 获取主订单编号
Object id = map.get("id");
@ -621,7 +636,7 @@ public class DepositoryRecordController {
// 开启一个线程开启审批
SendQyWxMessageThreadPool.execute(() -> {
JSONObject jsonObject = qyWxOperationService.sendOutApprovalTemplate(crypt, userToken, ObjectFormatUtil.toInteger(id));
JSONObject jsonObject = qyWxOperationService.sendOutApprovalTemplate(crypt, userToken, ObjectFormatUtil.toInteger(id),finalUserkey,finalUsertoken);
String sp_no = jsonObject.getString("sp_no");
Map<String, Object> QyWxApprovalMap = new HashMap<>();
QyWxApprovalMap.put("sp_no", sp_no);
@ -649,19 +664,21 @@ public class DepositoryRecordController {
@GetMapping("/applicationInView")
public RestResponse findApplicationInRecordByCondition(@RequestParam Map<String, Object> map, HttpServletRequest request) {
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
List<ApplicationInRecordP> list = new ArrayList<>();
Integer recordPCount = 0;
Integer maindeparment = userToken.getMaindeparment();
if (PublicConfig.roleAdminorgList.contains(maindeparment)) {
list = depositoryRecordService.findApplicationInRecordPByCondition(map, userToken);
list = depositoryRecordService.findApplicationInRecordPByCondition(map, userToken,userKey,token);
recordPCount = depositoryRecordService.findApplicationInRecordPCountByCondition(map);
} else {
list = depositoryRecordService.findApplicationInRecordPByUser(userToken, map);
list = depositoryRecordService.findApplicationInRecordPByUser(userToken, map,userKey,token);
recordPCount = depositoryRecordService.findApplicationInRecordPCountByUser(userToken, map);
}
for (ApplicationInRecordP applicationInRecordP : list) {
@ -682,8 +699,10 @@ public class DepositoryRecordController {
// 0未完成1已完成
Integer stateOnView = ObjectFormatUtil.toInteger(map.get("state"));
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
// 获取当前仓库信息
@ -710,9 +729,9 @@ public class DepositoryRecordController {
}
}
for (int i = 0; i < split.length; i++) {
for (String s : split) {
//获取当前订单状态
String state = (String) redisPool.getRedisTemplateByDb(15).opsForHash().get(split[i], "state");
String state = (String) redisPool.getRedisTemplateByDb(15).opsForHash().get(s, "state");
if ("1".equals(state)) {
// 如果当前订单未完成
state = "进行中";
@ -722,7 +741,7 @@ public class DepositoryRecordController {
state = "已完成";
}
// 获取子订单编码
String minRecordId = split[i].split(":")[1];
String minRecordId = s.split(":")[1];
// 获取数据库中子订单信息
ApplicationOutRecordMinP applicationOutMinById = depositoryRecordService.findApplicationOutMinById(ObjectFormatUtil.toInteger(minRecordId));
// 如果该子订单仓库是当前仓库
@ -731,7 +750,7 @@ public class DepositoryRecordController {
ApplicationOutRecordP applicationOutRecordPById = depositoryRecordService.findApplicationOutRecordPById(applicationOutMinById.getParentId());
// 获取申请人
UserByPort userByPort = LinkInterfaceUtil.FindUserById(applicationOutRecordPById.getApplicantId(), userToken);
UserByPort userByPort = LinkInterfaceUtil.FindUserById(applicationOutRecordPById.getApplicantId(), userKey,token);
// 创建展示对象
SimpleApplicationOutMinRecordP simpleApplicationOutMinRecordP = new SimpleApplicationOutMinRecordP(applicationOutMinById);
// 设置展示时的数量为申请数-已出库数
@ -762,7 +781,7 @@ public class DepositoryRecordController {
if (checkId != null) {
// 如果该订单已经处理
// 获取处理人
UserByPort checker = LinkInterfaceUtil.FindUserById(checkId, userToken);
UserByPort checker = LinkInterfaceUtil.FindUserById(checkId, userKey,token);
simpleApplicationOutMinRecordP.setCheckerName(checker.getName());
simpleApplicationOutMinRecordP.setPcode(placeByDid.getCode());
// 当已经完成出库时设置数量为出库数
@ -805,8 +824,10 @@ public class DepositoryRecordController {
@GetMapping("/applicationOutView")
public RestResponse findApplicationOutRecordByCondition(@RequestParam Map<String, Object> map, HttpServletRequest request) {
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userByPort = AuthenticationTokenPool.getUserToken(token);
// 获取对应主订单
@ -814,10 +835,10 @@ public class DepositoryRecordController {
Integer countBy = 0;
Integer maindeparment = userByPort.getMaindeparment();
if (PublicConfig.roleAdminorgList.contains(maindeparment)) {
list = depositoryRecordService.findApplicationOutRecordPByCondition(map, userByPort);
list = depositoryRecordService.findApplicationOutRecordPByCondition(map, userByPort,userKey,token);
countBy = depositoryRecordService.findApplicationOutRecordPCountByCondition(map);
} else {
list = depositoryRecordService.findApplicationOutRecordPByUser(userByPort, map);
list = depositoryRecordService.findApplicationOutRecordPByUser(userByPort, map,userKey,token);
countBy = depositoryRecordService.findApplicationOutRecordPCountByUser(userByPort, map);
}
@ -952,13 +973,15 @@ public class DepositoryRecordController {
@PutMapping("/review")
public RestResponse review(@RequestBody Map<String, Object> map, HttpServletRequest request) {
String token = request.getHeader("user-token");
String userkey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userkey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
String header = request.getHeader("user-agent");
String crypt = Md5.crypt(header);
Integer review = depositoryRecordService.review(map, userToken.getId(), userToken, crypt);
Integer review = depositoryRecordService.review(map, userToken.getId(), userToken, crypt,userkey,token);
if (review != -1) {
return CrudUtil.insertHandle(review, 1);
} else {
@ -969,8 +992,10 @@ public class DepositoryRecordController {
@PutMapping("/reviewIn")
public RestResponse reviewIn(@RequestBody Map<String, Object> map, HttpServletRequest request) {
String token = request.getHeader("user-token");
String userkey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userkey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
String header = request.getHeader("user-agent");
@ -986,14 +1011,16 @@ public class DepositoryRecordController {
// 库存转移
@PutMapping("/transfer")
public RestResponse transfer(@RequestBody Map<String, Object> map, HttpServletRequest request) {
String token = request.getHeader("user-token");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
String usertoken = request.getHeader("user-token");
String userkey = request.getHeader("user-key");
if (usertoken == null) {
usertoken = (String) request.getSession().getAttribute("userToken");
userkey = (String) request.getSession().getAttribute("userKey");
}
String header = request.getHeader("user-agent");
String crypt = Md5.crypt(header);
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
List<UserByPort> departmentHeadByUsers = PublicConfig.findDepartmentHeadByUser(userToken.getMaindeparment(), userToken);
UserByPort userToken = AuthenticationTokenPool.getUserToken(usertoken);
List<UserByPort> departmentHeadByUsers = PublicConfig.findDepartmentHeadByUser(userToken.getMaindeparment(), userkey,usertoken);
StringBuilder departmentHeadId = new StringBuilder();
StringBuilder departMentHeadQyWxName = new StringBuilder();
// for (int i = 0; i < departmentHeadByUsers.size(); i++) {
@ -1027,13 +1054,16 @@ public class DepositoryRecordController {
map.put("toId", map.get("depositoryId"));
map.remove("depositoryId");
Integer integer = 0;
String finalUserkey = userkey;
String finalUsertoken = usertoken;
if (params.size() < 1 && map.size() > 4) {
integer += depositoryRecordService.transferApply(map, userToken);
integer += depositoryRecordService.transferApply(map, userToken,userkey,usertoken);
Object id = map.get("parentId");
// 开启一个线程开启审批
SendQyWxMessageThreadPool.execute(() -> {
JSONObject jsonObject = qyWxOperationService.sendOutApprovalTemplate(crypt, userToken, ObjectFormatUtil.toInteger(id));
JSONObject jsonObject = qyWxOperationService.sendOutApprovalTemplate(crypt, userToken, ObjectFormatUtil.toInteger(id), finalUserkey, finalUsertoken);
String sp_no = jsonObject.getString("sp_no");
Map<String, Object> QyWxApprovalMap = new HashMap<>();
QyWxApprovalMap.put("sp_no", sp_no);
@ -1061,15 +1091,15 @@ public class DepositoryRecordController {
if (parentId != null) {
insert.put("parentId", parentId);
}
integer += depositoryRecordService.transferApply(insert, userToken);
integer += depositoryRecordService.transferApply(insert, userToken,userkey,usertoken);
map.put("parentId", insert.get("parentId"));
}
integer += depositoryRecordService.transferApply(map, userToken);
integer += depositoryRecordService.transferApply(map, userToken,userkey,usertoken);
Object id = map.get("parentId");
// 开启一个线程开启审批
SendQyWxMessageThreadPool.execute(() -> {
JSONObject jsonObject = qyWxOperationService.sendOutApprovalTemplate(crypt, userToken, ObjectFormatUtil.toInteger(id));
JSONObject jsonObject = qyWxOperationService.sendOutApprovalTemplate(crypt, userToken, ObjectFormatUtil.toInteger(id),finalUserkey,finalUsertoken);
String sp_no = jsonObject.getString("sp_no");
Map<String, Object> QyWxApprovalMap = new HashMap<>();
QyWxApprovalMap.put("sp_no", sp_no);
@ -1224,11 +1254,13 @@ public class DepositoryRecordController {
*/
@PostMapping("/createMultiApplication")
public RestResponse createMultiApplication(@RequestBody Map<String, Object> map, HttpServletRequest request) {
String token = request.getHeader("user-token");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
String usertoken = request.getHeader("user-token");
String userkey = request.getHeader("user-key");
if (usertoken == null) {
usertoken = (String) request.getSession().getAttribute("userToken");
userkey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
UserByPort userToken = AuthenticationTokenPool.getUserToken(usertoken);
String header = request.getHeader("user-agent");
String crypt = Md5.crypt(header);
Integer quantity = ObjectFormatUtil.toInteger(map.get("quantity"));
@ -1248,6 +1280,8 @@ public class DepositoryRecordController {
}
String type = (String) map.get("type");
Integer success = 0;
String finalUserkey = userkey;
String finalUsertoken = usertoken;
if ("in".equals(type)) {
List<String> typeList = new ArrayList<>();
List<Long> mtIdList = new ArrayList<>();
@ -1273,6 +1307,7 @@ public class DepositoryRecordController {
depositoryIdList.add(ObjectFormatUtil.toInteger(map.get("depositoryId")));
}
// 开启一个线程用于发送入库申请
SendQyWxMessageThreadPool.execute(() -> {
Map<Long, List<Integer>> MtIdToRecordId = new HashMap<>();
Map<Integer, List<Integer>> depositoryIdToRecordId = new HashMap<>();
@ -1326,14 +1361,14 @@ public class DepositoryRecordController {
for (RoleAndMaterialType mt : materialTypeIdForIn
) {
// 获取管理员数据
UserByPort userByPort = LinkInterfaceUtil.FindUserById(mt.getUid(), userToken);
UserByPort userByPort = LinkInterfaceUtil.FindUserById(mt.getUid(), finalUserkey, finalUsertoken);
String workwechat = userByPort.getWorkwechat();
if (workwechat == null || "".equals(workwechat)) {
workwechat = userByPort.getWechat();
}
sb.append(workwechat).append(",");
}
JSONObject jsonObject = qyWxOperationService.sendApprovalTemplateIn(crypt, userToken, integerList, sb.toString());
JSONObject jsonObject = qyWxOperationService.sendApprovalTemplateIn(crypt, userToken, integerList, sb.toString(),finalUserkey,finalUsertoken);
String sp_no = jsonObject.getString("sp_no");
Map<String, Object> QyWxApprovalMap = new HashMap<>();
QyWxApprovalMap.put("sp_no", sp_no);
@ -1357,14 +1392,14 @@ public class DepositoryRecordController {
for (RoleAndDepository mt : materialTypeIdForIn
) {
// 获取管理员数据
UserByPort userByPort = LinkInterfaceUtil.FindUserById(mt.getUserId(), userToken);
UserByPort userByPort = LinkInterfaceUtil.FindUserById(mt.getUserId(), finalUserkey,finalUsertoken);
String workwechat = userByPort.getWorkwechat();
if (workwechat == null || "".equals(workwechat)) {
workwechat = userByPort.getWechat();
}
sb.append(workwechat).append(",");
}
JSONObject jsonObject = qyWxOperationService.sendApprovalTemplateIn(crypt, userToken, integerList, sb.toString());
JSONObject jsonObject = qyWxOperationService.sendApprovalTemplateIn(crypt, userToken, integerList, sb.toString(),finalUserkey,finalUsertoken);
String sp_no = jsonObject.getString("sp_no");
Map<String, Object> QyWxApprovalMap = new HashMap<>();
QyWxApprovalMap.put("sp_no", sp_no);
@ -1378,7 +1413,7 @@ public class DepositoryRecordController {
} else if ("out".equals(type)) {
// 获取部门负责人
List<UserByPort> departmentHeadByUsers = PublicConfig.findDepartmentHeadByUser(userToken.getMaindeparment(), userToken);
List<UserByPort> departmentHeadByUsers = PublicConfig.findDepartmentHeadByUser(userToken.getMaindeparment(), userkey,usertoken);
StringBuilder departmentHeadId = new StringBuilder();
StringBuilder departMentHeadQyWxName = new StringBuilder();
// for (UserByPort departmentHeadByUser : departmentHeadByUsers) {
@ -1400,7 +1435,7 @@ public class DepositoryRecordController {
return new RestResponse("", 666, new StatusInfo("申请失败", "超出最大存储容量"));
}
map.put("mid", mid);
Integer res = depositoryRecordService.insertApplicationOutRecord(map, userToken); // 插入主订单
Integer res = depositoryRecordService.insertApplicationOutRecord(map, userToken,userkey,usertoken); // 插入主订单
if (res == 1) { // 如果插入成功
Object id = map.get("id"); // 获取主订单编号
if (id != null) {
@ -1413,7 +1448,7 @@ public class DepositoryRecordController {
// 开启一个线程开启审批
SendQyWxMessageThreadPool.execute(() -> {
JSONObject jsonObject = qyWxOperationService.sendOutApprovalTemplate(crypt, userToken, ObjectFormatUtil.toInteger(id));
JSONObject jsonObject = qyWxOperationService.sendOutApprovalTemplate(crypt, userToken, ObjectFormatUtil.toInteger(id),finalUserkey,finalUsertoken);
String sp_no = jsonObject.getString("sp_no");
Map<String, Object> QyWxApprovalMap = new HashMap<>();
QyWxApprovalMap.put("sp_no", sp_no);
@ -1441,11 +1476,15 @@ public class DepositoryRecordController {
*/
@PostMapping("/createMultiApplications")
public RestResponse createMultiApplications(@RequestBody Map<String, Object> map, HttpServletRequest request) {
String token = request.getHeader("user-token");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
String usertoken = request.getHeader("user-token");
String userkey = request.getHeader("user-key");
if (usertoken == null) {
usertoken = (String) request.getSession().getAttribute("userToken");
userkey = (String) request.getSession().getAttribute("userKey");
}
String finalUserkey = userkey;
String finalUsertoken = usertoken;
UserByPort userToken = AuthenticationTokenPool.getUserToken(usertoken);
String header = request.getHeader("user-agent");
String crypt = Md5.crypt(header);
// 获取要处理的类型
@ -1511,6 +1550,7 @@ public class DepositoryRecordController {
}
// 开启一个线程用于发送入库申请
SendQyWxMessageThreadPool.execute(() -> {
Map<Long, List<Integer>> MtIdToRecordId = new HashMap<>();
Map<Integer, List<Integer>> depositoryIdToRecordId = new HashMap<>();
@ -1564,14 +1604,14 @@ public class DepositoryRecordController {
for (RoleAndMaterialType mt : materialTypeIdForIn
) {
// 获取管理员数据
UserByPort userByPort = LinkInterfaceUtil.FindUserById(mt.getUid(), userToken);
UserByPort userByPort = LinkInterfaceUtil.FindUserById(mt.getUid(), finalUserkey, finalUsertoken);
String workwechat = userByPort.getWorkwechat();
if (workwechat == null || "".equals(workwechat)) {
workwechat = userByPort.getWechat();
}
sb.append(workwechat).append(",");
}
JSONObject jsonObject = qyWxOperationService.sendApprovalTemplateIn(crypt, userToken, integerList, sb.toString());
JSONObject jsonObject = qyWxOperationService.sendApprovalTemplateIn(crypt, userToken, integerList, sb.toString(),finalUserkey,finalUsertoken);
String sp_no = jsonObject.getString("sp_no");
Map<String, Object> QyWxApprovalMap = new HashMap<>();
QyWxApprovalMap.put("sp_no", sp_no);
@ -1595,14 +1635,14 @@ public class DepositoryRecordController {
for (RoleAndDepository mt : materialTypeIdForIn
) {
// 获取管理员数据
UserByPort userByPort = LinkInterfaceUtil.FindUserById(mt.getUserId(), userToken);
UserByPort userByPort = LinkInterfaceUtil.FindUserById(mt.getUserId(), finalUserkey,finalUsertoken);
String workwechat = userByPort.getWorkwechat();
if (workwechat == null || "".equals(workwechat)) {
workwechat = userByPort.getWechat();
}
sb.append(workwechat).append(",");
}
JSONObject jsonObject = qyWxOperationService.sendApprovalTemplateIn(crypt, userToken, integerList, sb.toString());
JSONObject jsonObject = qyWxOperationService.sendApprovalTemplateIn(crypt, userToken, integerList, sb.toString(),finalUserkey,finalUsertoken);
String sp_no = jsonObject.getString("sp_no");
Map<String, Object> QyWxApprovalMap = new HashMap<>();
QyWxApprovalMap.put("sp_no", sp_no);
@ -1621,7 +1661,7 @@ public class DepositoryRecordController {
sumQuantity += integer;
}
// 获取部门负责人
List<UserByPort> departmentHeadByUsers = PublicConfig.findDepartmentHeadByUser(userToken.getMaindeparment(), userToken);
List<UserByPort> departmentHeadByUsers = PublicConfig.findDepartmentHeadByUser(userToken.getMaindeparment(), userkey,usertoken);
StringBuilder departmentHeadId = new StringBuilder();
StringBuilder departMentHeadQyWxName = new StringBuilder();
// for (int i = 0; i < departmentHeadByUsers.size(); i++) {
@ -1639,7 +1679,7 @@ public class DepositoryRecordController {
mainRecord.put("quantity", sumQuantity.toString());
mainRecord.put("departmenthead", departmentHeadId.toString());
// 插入主表
depositoryRecordService.insertApplicationOutRecord(mainRecord, userToken);
depositoryRecordService.insertApplicationOutRecord(mainRecord, userToken,userkey,usertoken);
id = ObjectFormatUtil.toInteger(mainRecord.get("id"));
for (int i = 0; i < iids.size(); i++) {
// 出库物料
@ -1710,7 +1750,7 @@ public class DepositoryRecordController {
Integer finalId = id;
// 开启一个线程开启审批
SendQyWxMessageThreadPool.execute(() -> {
JSONObject jsonObject = qyWxOperationService.sendOutApprovalTemplate(crypt, userToken, ObjectFormatUtil.toInteger(finalId));
JSONObject jsonObject = qyWxOperationService.sendOutApprovalTemplate(crypt, userToken, ObjectFormatUtil.toInteger(finalId),finalUserkey,finalUsertoken);
String sp_no = jsonObject.getString("sp_no");
Map<String, Object> QyWxApprovalMap = new HashMap<>();
QyWxApprovalMap.put("sp_no", sp_no);
@ -1737,8 +1777,10 @@ public class DepositoryRecordController {
@PostMapping("/isCheckOut")
public RestResponse isCheckOut(@RequestBody Map<String, Object> map, HttpServletRequest request) {
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
String header = request.getHeader("user-agent");
@ -1756,7 +1798,7 @@ public class DepositoryRecordController {
if (barCode != null) {
map.put("barCode", barCode);
}
return depositoryRecordService.completeApplicationOutMinRecord(map, userToken, crypt);
return depositoryRecordService.completeApplicationOutMinRecord(map, userToken, crypt,userKey,token);
}
@ -1764,13 +1806,15 @@ public class DepositoryRecordController {
@GetMapping("/downloadOutRecord")
public void downloadOutRecord(@RequestParam Map<String, Object> map, HttpServletRequest request, HttpServletResponse response) {
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
if (map.containsKey("id")) {
Integer id = ObjectFormatUtil.toInteger(map.get("id"));
List<String> strings = excelService.writeExcelForPrint(id, 4, userToken);
List<String> strings = excelService.writeExcelForPrint(id, 4, userToken,userKey,token);
List<File> files = new ArrayList<>();
for (String string : strings) {
File file = new File(string);
@ -1807,14 +1851,16 @@ public class DepositoryRecordController {
public RestResponse editOutMinRecordInfo(@RequestBody Map<String, Object> map, HttpServletRequest request) {
if (map.containsKey("id")) {
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
String header = request.getHeader("user-agent");
String crypt = Md5.crypt(header);
Integer integer = depositoryRecordService.updateOutMinRecordInfo(map, userToken, crypt);
Integer integer = depositoryRecordService.updateOutMinRecordInfo(map, userToken, crypt,userKey,token);
return CrudUtil.updateHandle(integer, 1);
} else {
throw new MyException("缺少必要参数");

30
src/main/java/com/dreamchaser/depository_manage/controller/GroupController.java

@ -542,8 +542,10 @@ public class GroupController {
@PostMapping("/applicationInForGroup")
public RestResponse applicationInForGroup(@RequestBody Map<String, Object> map, HttpServletRequest request) {
String token = request.getHeader("user-token");
if(token == null){
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
String header = request.getHeader("user-agent");
@ -567,7 +569,7 @@ public class GroupController {
}
}
try {
integer += groupService.insertApplicationInRecord(map, userToken,crypt); // 插入主订单
integer += groupService.insertApplicationInRecord(map, userToken,crypt,userKey,token); // 插入主订单
} catch (Exception e) {
return new RestResponse("", 666, new StatusInfo("出库失败", e.getMessage()));
}
@ -640,15 +642,17 @@ public class GroupController {
@PostMapping("/applicationOutForGroup")
public RestResponse applicationOutForGroup(@RequestBody Map<String, Object> map, HttpServletRequest request) {
String token = request.getHeader("user-token");
if(token == null){
String userkey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userkey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
String header = request.getHeader("user-agent");
String crypt = Md5.crypt(header);
map.put("applicantId", userToken.getId());
// 获取当前部门负责人
List<UserByPort> departmentHeadByUsers = PublicConfig.findDepartmentHeadByUser(userToken.getMaindeparment(), userToken);
List<UserByPort> departmentHeadByUsers = PublicConfig.findDepartmentHeadByUser(userToken.getMaindeparment(), userkey,token);
// 部门负责人id
StringBuilder departmentHeadId = new StringBuilder();
// 部门负责人企业微信user
@ -697,14 +701,16 @@ public class GroupController {
map.put("adminorgId", userToken.getMaindeparment());
}
try {
integer += groupService.insertApplicationOutRecord(map, userToken); // 插入主订单
integer += groupService.insertApplicationOutRecord(map, userToken,userkey,token); // 插入主订单
} catch (Exception e) {
return new RestResponse("", 666, new StatusInfo("出库失败", e.getMessage()));
}
Object id = map.get("id"); // 获取主订单编号
// 开启一个线程开启审批
String finalUserkey = userkey;
String finalToken = token;
SendQyWxMessageThreadPool.execute(() -> {
JSONObject jsonObject = qyWxOperationService.sendOutApprovalTemplate(crypt, userToken, ObjectFormatUtil.toInteger(id));
JSONObject jsonObject = qyWxOperationService.sendOutApprovalTemplate(crypt, userToken, ObjectFormatUtil.toInteger(id), finalUserkey, finalToken);
String sp_no = jsonObject.getString("sp_no");
Map<String, Object> QyWxApprovalMap = new HashMap<>();
QyWxApprovalMap.put("sp_no", sp_no);
@ -809,15 +815,17 @@ public class GroupController {
@PostMapping("/createMultiApplication")
public RestResponse createMultiApplication(@RequestBody Map<String, Object> map, HttpServletRequest request) {
String token = request.getHeader("user-token");
if(token == null){
String userkey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userkey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
String header = request.getHeader("user-agent");
String crypt = Md5.crypt(header);
map.put("applicantId", userToken.getId());
// 获取当前部门负责人
List<UserByPort> departmentHeadByUsers = PublicConfig.findDepartmentHeadByUser(userToken.getMaindeparment(), userToken);
List<UserByPort> departmentHeadByUsers = PublicConfig.findDepartmentHeadByUser(userToken.getMaindeparment(), userkey,token);
// 部门负责人id
StringBuilder departmentHeadId = new StringBuilder();
// 部门负责人企业微信user
@ -920,14 +928,16 @@ public class GroupController {
map.put("adminorgId", userToken.getMaindeparment());
}
try {
integer += groupService.insertApplicationOutRecord(map, userToken); // 插入主订单
integer += groupService.insertApplicationOutRecord(map, userToken,userkey,token); // 插入主订单
} catch (Exception e) {
return new RestResponse("", 666, new StatusInfo("出库失败", e.getMessage()));
}
Object id = map.get("id"); // 获取主订单编号
// 开启一个线程开启审批
String finalUserkey = userkey;
String finalToken = token;
SendQyWxMessageThreadPool.execute(() -> {
JSONObject jsonObject = qyWxOperationService.sendOutApprovalTemplate(crypt, userToken, ObjectFormatUtil.toInteger(id));
JSONObject jsonObject = qyWxOperationService.sendOutApprovalTemplate(crypt, userToken, ObjectFormatUtil.toInteger(id), finalUserkey, finalToken);
String sp_no = jsonObject.getString("sp_no");
Map<String, Object> QyWxApprovalMap = new HashMap<>();
QyWxApprovalMap.put("sp_no", sp_no);

14
src/main/java/com/dreamchaser/depository_manage/controller/NoticeController.java

@ -57,14 +57,16 @@ public class NoticeController {
@GetMapping("/findAllNotices")
public RestResponse findNotices(@RequestParam Map<String, Object> map, HttpServletRequest request) {
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if(token == null){
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
String header = request.getHeader("user-agent");
String crypt = Md5.crypt(header);
map.put("userAgent", crypt);
List<NoticeP> noticeByCondition = noticeService.findAllNoticeForUser(map, userToken);
List<NoticeP> noticeByCondition = noticeService.findAllNoticeForUser(map, userToken,userKey,token);
return new RestResponse(noticeByCondition);
}
@ -126,9 +128,15 @@ public class NoticeController {
}
@PostMapping("/noticeInfo")
public RestResponse noticeInfo(@RequestBody Map< String,Object> map){
public RestResponse noticeInfo(@RequestBody Map< String,Object> map,HttpServletRequest request){
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if(token == null){
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
if(map.containsKey("id")){
NoticeP notice = noticeService.findNoticeById(ObjectFormatUtil.toInteger(map.get("id")));
NoticeP notice = noticeService.findNoticeById(ObjectFormatUtil.toInteger(map.get("id")),userKey,token);
return new RestResponse(notice);
}else{
throw new MyException("缺少必要参数");

178
src/main/java/com/dreamchaser/depository_manage/controller/PageController.java

@ -26,8 +26,6 @@ import java.util.*;
/**
* 专门用来展示页面的controller
*
* @author Dreamchaser
*/
@Controller
public class PageController {
@ -192,15 +190,17 @@ public class PageController {
ModelAndView mv = new ModelAndView();
String header = request.getHeader("user-agent");
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
boolean b = DeviceUtil.checkAgentIsMobile(header);
List<SimpleTaskP> list = getUserSimpleTaskP(userToken);
List<SimpleTaskP> list = getUserSimpleTaskP(userToken,userKey,token);
mv.addObject("myTaskList", list);
if (b) {
List<NoticeP> noticeByUnRead = noticeService.findNoticeByUnRead(userToken);
List<NoticeP> noticeByUnRead = noticeService.findNoticeByUnRead(userToken,userKey,token);
mv.addObject("notices", noticeByUnRead);
mv.setViewName("pages/other/welcome_mobile");
} else {
@ -222,7 +222,7 @@ public class PageController {
map.put("startDate", days.get(1));
map.put("endDate", days.get(0));
map.put("userAgent", Md5.crypt(header));
mv.addObject("notices", noticeService.findNoticeByCondition(map, userToken));
mv.addObject("notices", noticeService.findNoticeByCondition(map, userToken,userKey,token));
}
// 查询当前用户所在部门
Integer maindeparment = userToken.getMaindeparment();
@ -264,12 +264,14 @@ public class PageController {
mv.setViewName("pages/self/message");
String header = request.getHeader("user-agent");
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
List<SimpleTaskP> list = getUserSimpleTaskP(userToken);
List<SimpleTaskP> userSimpleApplyP = getUserSimpleApplyP(userToken);
List<SimpleTaskP> list = getUserSimpleTaskP(userToken,userKey,token);
List<SimpleTaskP> userSimpleApplyP = getUserSimpleApplyP(userToken,userKey,token);
mv.addObject("myTaskList", list);
mv.addObject("myApplyList", userSimpleApplyP);
@ -289,7 +291,7 @@ public class PageController {
map.put("startDate", days.get(1));
map.put("endDate", days.get(0));
map.put("userAgent", Md5.crypt(header));
mv.addObject("notices", noticeService.findNoticeByCondition(map, userToken));
mv.addObject("notices", noticeService.findNoticeByCondition(map, userToken,userKey,token));
return mv;
}
@ -301,13 +303,15 @@ public class PageController {
@GetMapping("/depository_add")
public ModelAndView depository_add(HttpServletRequest request) {
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userByPort = AuthenticationTokenPool.getUserToken(token);
ModelAndView mv = new ModelAndView();
mv.setViewName("pages/warehouse/depository_add");
Map<String, Object> administration = LinkInterfaceUtil.findAdministration(userByPort);
Map<String, Object> administration = LinkInterfaceUtil.findAdministration(userKey,token);
List<AdministrationP> administrationPList = (List<AdministrationP>) administration.get("administrationPList");
mv.addObject("administrationPList", administrationPList);
return mv;
@ -321,15 +325,17 @@ public class PageController {
@GetMapping("/depository-out")
public ModelAndView depository_out(HttpServletRequest request) {
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
ModelAndView mv = new ModelAndView();
mv.setViewName("pages/warehouse/depository-out");
Map<String, Object> map = new HashMap<>();
map.put("parentId", 0);
List<Depository> depositoryAll = depositoryService.findDepositoryByCondition(map, userToken);
List<Depository> depositoryAll = depositoryService.findDepositoryByCondition(map,userKey,token);
Integer role = userToken.getIsadmin();
if (role == null) {
role = 1;
@ -945,13 +951,15 @@ public class PageController {
@GetMapping("/table_user")
public ModelAndView table_user(HttpServletRequest request) {
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
ModelAndView mv = new ModelAndView();
mv.setViewName("pages/user/table-user");
List<AdministrationP> administrationPList = LinkInterfaceUtil.findAllCompany(userToken);
List<AdministrationP> administrationPList = LinkInterfaceUtil.findAllCompany(userKey,token);
mv.addObject("administrationPList", administrationPList);
return mv;
}
@ -1370,13 +1378,15 @@ public class PageController {
@GetMapping("/user_add")
public ModelAndView user_add(Integer userId, Integer classes, HttpServletRequest request) {
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
ModelAndView mv = new ModelAndView();
mv.setViewName("pages/user/user-add");
UserByPort userByPort = LinkInterfaceUtil.FindUserById(userId, userToken);
UserByPort userByPort = LinkInterfaceUtil.FindUserById(userId, userKey,token);
UserByPortP userByPortP = new UserByPortP(userByPort);
mv.addObject("userByPort", userByPortP);
mv.addObject("classes", classes);
@ -1393,13 +1403,15 @@ public class PageController {
@GetMapping("/user_addForIn")
public ModelAndView user_addForIn(Integer userId, Integer classes, HttpServletRequest request) {
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
ModelAndView mv = new ModelAndView();
mv.setViewName("pages/user/user-addForIn");
UserByPort userByPort = LinkInterfaceUtil.FindUserById(userId, userToken);
UserByPort userByPort = LinkInterfaceUtil.FindUserById(userId, userKey,token);
UserByPortP userByPortP = new UserByPortP(userByPort);
mv.addObject("userByPort", userByPortP);
mv.addObject("classes", classes);
@ -1416,8 +1428,10 @@ public class PageController {
@GetMapping("/user_role_edit")
public ModelAndView user_role_edit(Integer id, HttpServletRequest request) {
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
ModelAndView mv = new ModelAndView();
@ -1425,7 +1439,7 @@ public class PageController {
RoleAndDepository roleAndDepositoryById = roleService.findRoleAndDepositoryById(id);
UserByPortP userByPortP = null;
if (roleAndDepositoryById != null) {
UserByPort userByPort = LinkInterfaceUtil.FindUserById(roleAndDepositoryById.getUserId(), userToken);
UserByPort userByPort = LinkInterfaceUtil.FindUserById(roleAndDepositoryById.getUserId(), userKey,token);
userByPortP = new UserByPortP(userByPort);
userByPortP.setDepositoryName(roleAndDepositoryById.getDepositoryName());
}
@ -1444,8 +1458,10 @@ public class PageController {
@GetMapping("/user_role_editForIn")
public ModelAndView user_role_editForIn(Integer id, HttpServletRequest request) {
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
ModelAndView mv = new ModelAndView();
@ -1453,7 +1469,7 @@ public class PageController {
RoleAndMaterialType roleAndMaterialTypeById = roleService.findRoleAndMaterialTypeById(id);
UserByPortP userByPortP = null;
if (roleAndMaterialTypeById != null) {
UserByPort userByPort = LinkInterfaceUtil.FindUserById(roleAndMaterialTypeById.getUid(), userToken);
UserByPort userByPort = LinkInterfaceUtil.FindUserById(roleAndMaterialTypeById.getUid(), userKey,token);
userByPortP = new UserByPortP(userByPort);
userByPortP.setMaterialTypeName(roleAndMaterialTypeById.getTname());
}
@ -1474,16 +1490,18 @@ public class PageController {
@GetMapping("/post_role_edit")
public ModelAndView post_role_edit(Integer id, Integer depositoryId, HttpServletRequest request) {
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
ModelAndView mv = new ModelAndView();
mv.setViewName("pages/post/postRole_edit");
Map<String, Object> userParam = new HashMap<>();
userParam.put("position", id);
List<UserByPort> userByPortList = LinkInterfaceUtil.FindUserByMap(userParam, userToken);
Post postById = LinkInterfaceUtil.findPostById(id, userToken);
List<UserByPort> userByPortList = LinkInterfaceUtil.FindUserByMap(userParam, userKey,token);
Post postById = LinkInterfaceUtil.findPostById(id, userKey,token);
PostP pp = new PostP(postById);
Map<String, Object> param = new HashMap<>();
param.put("depositoryId", depositoryId);
@ -1506,8 +1524,10 @@ public class PageController {
@GetMapping("/user_detail")
public ModelAndView user_edit(Integer id, HttpServletRequest request) {
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
ModelAndView mv = new ModelAndView();
@ -1515,7 +1535,7 @@ public class PageController {
mv.addObject("depositories", depositoryService.findDepositoryAll());
Map<String, Object> map = new HashMap<>();
map.put("number", id.toString());
UserByPort userByPort = LinkInterfaceUtil.FindUserByMap(map, userToken).get(0);
UserByPort userByPort = LinkInterfaceUtil.FindUserByMap(map, userKey,token).get(0);
mv.addObject("user", userByPort);
return mv;
}
@ -1530,8 +1550,10 @@ public class PageController {
@GetMapping("/warehouse_view")
public ModelAndView warehouse_view(Integer id, HttpServletRequest request) {
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
ModelAndView mv = new ModelAndView();
@ -1542,8 +1564,8 @@ public class PageController {
mv.addObject("record", depositoryRecordById);
Integer cid = depositoryRecordById.getCid();
List<AdministrationP> postList = LinkInterfaceUtil.findCompanyBySuperior(cid.toString(), userToken);
List<AdministrationP> administrationPList = LinkInterfaceUtil.findAllCompany(userToken);
List<AdministrationP> postList = LinkInterfaceUtil.findCompanyBySuperior(cid.toString(), userKey,token);
List<AdministrationP> administrationPList = LinkInterfaceUtil.findAllCompany(userKey,token);
// 部门列表
mv.addObject("postList", postList);
// 公司列表
@ -1564,8 +1586,10 @@ public class PageController {
@GetMapping("/warehouseByParentId")
public ModelAndView warehouseByParentId(Integer parentId, HttpServletRequest request) {
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
ModelAndView mv = new ModelAndView();
@ -1574,7 +1598,7 @@ public class PageController {
Map<String, Object> param = new HashMap<>();
param.put("parentId", parentId);
mv.addObject("parentId", parentId);
mv.addObject("depositories", depositoryService.findDepositoryByCondition(param, userToken));
mv.addObject("depositories", depositoryService.findDepositoryByCondition(param,userKey,token));
} else {
throw new MyException("缺少必要参数!");
}
@ -1647,8 +1671,10 @@ public class PageController {
@GetMapping("/findWareHouseByParentId")
public ModelAndView findWareHouseByParentId(Integer parentId, HttpServletRequest request) {
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userByPort = AuthenticationTokenPool.getUserToken(token);
ModelAndView mv = new ModelAndView();
@ -1656,9 +1682,9 @@ public class PageController {
Map<String, Object> param = new HashMap<>();
param.put("parentId", parentId);
mv.addObject("parentId", parentId);
List<Depository> depositoryRecordPByCondition = depositoryService.findDepositoryByCondition(param, userByPort);
List<Depository> depositoryRecordPByCondition = depositoryService.findDepositoryByCondition(param, userKey,token);
param.put("state", 2);
List<Depository> depositoryRecordPByConditionForState = depositoryService.findDepositoryByCondition(param, userByPort);
List<Depository> depositoryRecordPByConditionForState = depositoryService.findDepositoryByCondition(param, userKey,token);
Integer role = userByPort.getIsadmin();
if (role == null) {
role = 1;
@ -1824,8 +1850,10 @@ public class PageController {
@GetMapping("/application_review")
public ModelAndView application_review(Integer id, HttpServletRequest request) {
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
ModelAndView mv = new ModelAndView();
@ -1901,7 +1929,7 @@ public class PageController {
}
}
// 申请人
UserByPort userByPort = LinkInterfaceUtil.FindUserById(recordP.getApplicantId(), userToken);
UserByPort userByPort = LinkInterfaceUtil.FindUserById(recordP.getApplicantId(), userKey,token);
// 部门负责人
String departmentheads = recordP.getDepartmenthead();
String[] split = departmentheads.split(",");
@ -1910,7 +1938,7 @@ public class PageController {
if ("".equals(value)) {
continue;
}
UserByPort departmenthead = LinkInterfaceUtil.FindUserById(ObjectFormatUtil.toInteger(value.trim()), userToken);
UserByPort departmenthead = LinkInterfaceUtil.FindUserById(ObjectFormatUtil.toInteger(value.trim()), userKey,token);
departmentHeadName.append(departmenthead.getName()).append(",");
}
@ -1927,7 +1955,7 @@ public class PageController {
continue;
}
Integer managerid = ObjectFormatUtil.toInteger(s.trim());
UserByPort user = LinkInterfaceUtil.FindUserById(managerid, userToken);
UserByPort user = LinkInterfaceUtil.FindUserById(managerid, userKey,token);
depositoryManager.add(user);
depositoryManagerNames.append(user.getName()).append(",");
}
@ -1961,8 +1989,10 @@ public class PageController {
@GetMapping("/form_step_look")
public ModelAndView form_step_look(Integer id, HttpServletRequest request) {
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
ModelAndView mv = new ModelAndView();
@ -1990,7 +2020,7 @@ public class PageController {
for (String approverId : airapproverId
) {
if (!"".equals(approverId)) {
UserByPort userByPort = LinkInterfaceUtil.FindUserById(ObjectFormatUtil.toInteger(approverId), userToken);
UserByPort userByPort = LinkInterfaceUtil.FindUserById(ObjectFormatUtil.toInteger(approverId), userKey,token);
airapproverName.append(userByPort.getName()).append(",");
}
}
@ -2000,7 +2030,7 @@ public class PageController {
mv.addObject("placeCode", placeCode);
if (Integer.compare(flagForGroup, 2) != 0) {
// 如果不是组合
UserByPort userByPort = LinkInterfaceUtil.FindUserById(applicationInRecordPById.getApplicantId(), userToken);
UserByPort userByPort = LinkInterfaceUtil.FindUserById(applicationInRecordPById.getApplicantId(), userKey,token);
applicationInRecordPById.setApplicantName(userByPort.getName());
applicationInRecordPById.setApplicantTime(DateUtil.TimeStampToDateTime(Long.valueOf(applicationInRecordPById.getApplicantTime())));
if (applicationInRecordPById.getPrice() != null) {
@ -2036,8 +2066,10 @@ public class PageController {
@GetMapping("/application_in_review")
public ModelAndView application_in_review(Integer id, HttpServletRequest request) {
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
ModelAndView mv = new ModelAndView();
@ -2065,7 +2097,7 @@ public class PageController {
for (String approverId : airapproverId
) {
if (!"".equals(approverId)) {
UserByPort userByPort = LinkInterfaceUtil.FindUserById(ObjectFormatUtil.toInteger(approverId), userToken);
UserByPort userByPort = LinkInterfaceUtil.FindUserById(ObjectFormatUtil.toInteger(approverId), userKey,token);
airapproverName.append(userByPort.getName()).append(",");
}
}
@ -2075,7 +2107,7 @@ public class PageController {
mv.addObject("placeCode", placeCode);
if (Integer.compare(flagForGroup, 2) != 0) {
// 如果不是组合
UserByPort userByPort = LinkInterfaceUtil.FindUserById(applicationInRecordPById.getApplicantId(), userToken);
UserByPort userByPort = LinkInterfaceUtil.FindUserById(applicationInRecordPById.getApplicantId(), userKey,token);
applicationInRecordPById.setApplicantName(userByPort.getName());
applicationInRecordPById.setApplicantTime(DateUtil.TimeStampToDateTime(Long.valueOf(applicationInRecordPById.getApplicantTime())));
if (applicationInRecordPById.getPrice() != null) {
@ -2111,8 +2143,10 @@ public class PageController {
@GetMapping("/form_step_lookByminRecordOut")
public ModelAndView form_step_lookByminRecordOut(Integer id, HttpServletRequest request) {
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
ModelAndView mv = new ModelAndView();
@ -2130,7 +2164,7 @@ public class PageController {
// 获取处理人
Integer checkId = recordMinP.getCheckId();
if (checkId != null) {
UserByPort userByPort = LinkInterfaceUtil.FindUserById(checkId, userToken);
UserByPort userByPort = LinkInterfaceUtil.FindUserById(checkId, userKey,token);
// 设置处理人姓名
recordMinP.setCheckerName(userByPort.getName());
@ -2213,8 +2247,10 @@ public class PageController {
@GetMapping("/ApplicationOutView")
public ModelAndView ApplicationOutView(Integer id, HttpServletRequest request) {
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
ModelAndView mv = new ModelAndView();
@ -2265,7 +2301,7 @@ public class PageController {
if (checkId != null) {
// 如果当前子订单已经处理
// 获取当前处理人
UserByPort disposer = LinkInterfaceUtil.FindUserById(checkId, userToken);
UserByPort disposer = LinkInterfaceUtil.FindUserById(checkId, userKey,token);
outDisposer.append(disposer.getName()).append(",");
recordMinP.setCheckerName(disposer.getName());
// 获取出库库位
@ -2318,7 +2354,7 @@ public class PageController {
recordMinPList.add(recordMinP);
}
// 申请人
UserByPort userByPort = LinkInterfaceUtil.FindUserById(applicationOutRecordPById.getApplicantId(), userToken);
UserByPort userByPort = LinkInterfaceUtil.FindUserById(applicationOutRecordPById.getApplicantId(), userKey,token);
// 部门负责人
String departmentHead = applicationOutRecordPById.getDepartmenthead();
String[] split = departmentHead.split(",");
@ -2331,7 +2367,7 @@ public class PageController {
if ("".equals(value)) {
continue;
}
UserByPort departmenthead = LinkInterfaceUtil.FindUserById(ObjectFormatUtil.toInteger(value), userToken);
UserByPort departmenthead = LinkInterfaceUtil.FindUserById(ObjectFormatUtil.toInteger(value), userKey,token);
departmentHeadName.append(departmenthead.getName()).append(",");
}
// 仓储中心负责人
@ -2347,7 +2383,7 @@ public class PageController {
continue;
}
Integer managerid = ObjectFormatUtil.toInteger(s);
UserByPort user = LinkInterfaceUtil.FindUserById(managerid, userToken);
UserByPort user = LinkInterfaceUtil.FindUserById(managerid, userKey,token);
depositoryManager.add(user);
depositoryManagerNames.append(user.getName());
}
@ -2355,7 +2391,7 @@ public class PageController {
Integer adminorgId = applicationOutRecordPById.getAdminorgId();
Integer constructionUnitId = applicationOutRecordPById.getConstructionUnitId();
if (adminorgId != null) {
Administration company = LinkInterfaceUtil.getCompany(adminorgId, userToken);
Administration company = LinkInterfaceUtil.getCompany(adminorgId, userKey,token);
applicationOutRecordPById.setAdminorgName(company.getName());
mv.addObject("adisplay", "table-row");
} else {
@ -2459,8 +2495,10 @@ public class PageController {
public ModelAndView StockTakingReview(Integer id, HttpServletRequest request) {
ModelAndView mv = new ModelAndView();
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
@ -2474,7 +2512,7 @@ public class PageController {
stp.setCreateTime(DateUtil.TimeStampToDateTime(stockTaking.getCreateTime()));
// 获取申请人
UserByPort userByPort = LinkInterfaceUtil.FindUserById(stockTaking.getOriginator(), userToken);
UserByPort userByPort = LinkInterfaceUtil.FindUserById(stockTaking.getOriginator(), userKey,token);
// 设置盘点发起人姓名
stp.setOriginatorName(userByPort.getName());
@ -2516,8 +2554,10 @@ public class PageController {
public ModelAndView StockTakingView(Integer id, HttpServletRequest request) {
ModelAndView mv = new ModelAndView();
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
mv.setViewName("pages/stockTaking/stockTakingView");
@ -2550,7 +2590,7 @@ public class PageController {
// 获取申请人
UserByPort userByPort = LinkInterfaceUtil.FindUserById(stockTaking.getOriginator(), userToken);
UserByPort userByPort = LinkInterfaceUtil.FindUserById(stockTaking.getOriginator(), userKey,token);
// 设置盘点发起人姓名
stp.setOriginatorName(userByPort.getName());
@ -2587,11 +2627,13 @@ public class PageController {
ModelAndView mv = new ModelAndView();
mv.setViewName("pages/user/userInfo");
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
Administration company = LinkInterfaceUtil.getCompany(userToken.getMaindeparment(), userToken);
Administration company = LinkInterfaceUtil.getCompany(userToken.getMaindeparment(), userKey,token);
userToken.setMaindeparmentname(company.getName());
mv.addObject("userInfo", userToken);
return mv;
@ -2640,13 +2682,15 @@ public class PageController {
@GetMapping("/company_out")
public ModelAndView Company_Out(HttpServletRequest request) {
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
ModelAndView mv = new ModelAndView();
mv.setViewName("pages/company/company-out");
List<AdministrationP> administrationPList = LinkInterfaceUtil.findAllCompany(userToken);
List<AdministrationP> administrationPList = LinkInterfaceUtil.findAllCompany(userKey,token);
mv.addObject("administrationPList", administrationPList);
mv.addObject("level", 3);
mv.addObject("parentId", "313");
@ -2676,8 +2720,10 @@ public class PageController {
@GetMapping("/company_detail")
public ModelAndView company_detail(Integer id, HttpServletRequest request) {
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userByPort = AuthenticationTokenPool.getUserToken(token);
String url = PublicConfig.external_url + "/org/getgovcont";
@ -2691,14 +2737,14 @@ public class PageController {
JSONObject paramObject = JSONObject.parseObject(jsonString);
String post = null;
try {
post = HttpUtils.send(url, paramObject, HTTP.UTF_8, userByPort);
post = HttpUtils.send(url, paramObject, HTTP.UTF_8, userKey,token);
} catch (IOException e) {
e.printStackTrace();
}
JSONObject jsonObject = JSONObject.parseObject(post);
JSONObject data = (JSONObject) jsonObject.get("data");
Administration administration = JSONObject.toJavaObject(data, Administration.class);
String SuperiorName = LinkInterfaceUtil.getCompany(administration.getSuperior(), userByPort).getName();
String SuperiorName = LinkInterfaceUtil.getCompany(administration.getSuperior(), userKey,token).getName();
mv.addObject("record", administration);
mv.addObject("SuperiorName", SuperiorName);
} else {
@ -2718,15 +2764,17 @@ public class PageController {
@GetMapping("/findCompanyByParentId")
public ModelAndView findCompanyByParentId(Integer parentId, Integer level, HttpServletRequest request) {
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
ModelAndView mv = new ModelAndView();
if (parentId != null) {
mv.addObject("parentId", parentId);
mv.addObject("level", level + 1);
List<AdministrationP> administrationPList = LinkInterfaceUtil.findCompanyBySuperior(parentId.toString(), userToken);
List<AdministrationP> administrationPList = LinkInterfaceUtil.findCompanyBySuperior(parentId.toString(), userKey,token);
if (administrationPList.size() > 0) {
mv.addObject("administrationPList", administrationPList);
mv.setViewName("pages/company/company-out");
@ -2748,8 +2796,10 @@ public class PageController {
@GetMapping("/findPostByOrganization")
public ModelAndView findPostByOrganization(Integer organization, HttpServletRequest request) {
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
String url = PublicConfig.external_url + "/org/positionlist";
@ -2762,7 +2812,7 @@ public class PageController {
JSONObject paramObject = JSONObject.parseObject(jsonString);
String post = null;
try {
post = HttpUtils.send(url, paramObject, HTTP.UTF_8, userToken);
post = HttpUtils.send(url, paramObject, HTTP.UTF_8, userKey,token);
} catch (IOException e) {
e.printStackTrace();
}
@ -2795,14 +2845,16 @@ public class PageController {
@GetMapping("/post_detail")
public ModelAndView post_detail(Integer id, HttpServletRequest request) {
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
ModelAndView mv = new ModelAndView();
mv.setViewName("pages/post/post-view");
if (id != null) {
Post object = LinkInterfaceUtil.findPostById(id, userToken);
Post object = LinkInterfaceUtil.findPostById(id, userKey,token);
mv.addObject("record", object);
} else {
throw new MyException("缺少必要参数!");
@ -2814,8 +2866,10 @@ public class PageController {
@GetMapping("/findPostByParentId")
public ModelAndView findPostByParentId(Integer parentId, HttpServletRequest request) {
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
String url = PublicConfig.external_url + "/org/positionlist";
@ -2828,7 +2882,7 @@ public class PageController {
JSONObject paramObject = JSONObject.parseObject(jsonString);
String post = null;
try {
post = HttpUtils.send(url, paramObject, HTTP.UTF_8, userToken);
post = HttpUtils.send(url, paramObject, HTTP.UTF_8, userKey,token);
} catch (IOException e) {
e.printStackTrace();
}
@ -2840,8 +2894,8 @@ public class PageController {
}
Integer total = ObjectFormatUtil.toInteger(data.get("total"));
List<Post> postList = new ArrayList<>();
for (int i = 0; i < list.size(); i++) {
Post object = JSONObject.toJavaObject((JSONObject) list.get(i), Post.class);
for (Object o : list) {
Post object = JSONObject.toJavaObject((JSONObject) o, Post.class);
postList.add(object);
}
if (postList.size() > 0) {
@ -2861,13 +2915,15 @@ public class PageController {
@GetMapping("/postRoleAdd")
public ModelAndView PostRoleAdd(Integer id, Integer classes, HttpServletRequest request) {
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
ModelAndView mv = new ModelAndView();
mv.setViewName("pages/post/postRole_add");
Post postById = LinkInterfaceUtil.findPostById(id, userToken);
Post postById = LinkInterfaceUtil.findPostById(id, userKey,token);
mv.addObject("post", postById);
mv.addObject("classes", classes);
return mv;
@ -3095,15 +3151,17 @@ public class PageController {
@GetMapping("/stockTaking")
public ModelAndView stockTaking(HttpServletRequest request) {
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
ModelAndView mv = new ModelAndView();
StringBuilder departmentHeadName = new StringBuilder();
StringBuilder departmentHeadId = new StringBuilder();
List<UserByPort> departmentHeadByUser = PublicConfig.findDepartmentHeadByUser(userToken.getMaindeparment(), userToken);
List<UserByPort> departmentHeadByUser = PublicConfig.findDepartmentHeadByUser(userToken.getMaindeparment(), userKey,token);
for (UserByPort departmentHead : departmentHeadByUser
) {
departmentHeadName.append(departmentHead.getName()).append(",");
@ -3280,11 +3338,13 @@ public class PageController {
mv.setViewName("pages/notice/notice-view");
NoticeP noticeById = noticeService.findNoticeById(id);
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
NoticeP noticeById = noticeService.findNoticeById(id,userKey,token);
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
if (Integer.compare(noticeById.getUserId(), userToken.getId()) == 0) {
String header = request.getHeader("user-agent");
@ -3454,7 +3514,7 @@ public class PageController {
* @param userToken 当前用户
* @return
*/
public List<SimpleTaskP> getUserSimpleTaskP(UserByPort userToken) {
public List<SimpleTaskP> getUserSimpleTaskP(UserByPort userToken,String userKey,String token) {
Map<String, Object> paramForTask = new HashMap<>();
paramForTask.put("isDone", 0);
paramForTask.put("userId", userToken.getId());
@ -3464,21 +3524,21 @@ public class PageController {
List<SimpleTaskP> list = new ArrayList<>();
// 查询出库任务
List<SimpleApplicationOutOrInRecordP> myTaskOut = depositoryRecordService.findMyTaskOut(paramForTask, userToken);
List<SimpleApplicationOutOrInRecordP> myTaskOut = depositoryRecordService.findMyTaskOut(paramForTask, userKey,token);
for (SimpleApplicationOutOrInRecordP simpleApplicationOutOrInRecordP : myTaskOut) {
SimpleTaskP simpleTaskP = new SimpleTaskP(simpleApplicationOutOrInRecordP);
list.add(simpleTaskP);
}
// 查询盘点任务
List<SimpleStockTakingP> task = stockTakingService.findMyTask(paramForTask, userToken);
List<SimpleStockTakingP> task = stockTakingService.findMyTask(paramForTask, userKey,token);
for (SimpleStockTakingP simpleStockTakingP : task) {
SimpleTaskP simpleTaskP = new SimpleTaskP(simpleStockTakingP);
list.add(simpleTaskP);
}
// 查询入库任务
List<SimpleApplicationOutOrInRecordP> myTaskIn = depositoryRecordService.findMyTaskIn(paramForTask, userToken);
List<SimpleApplicationOutOrInRecordP> myTaskIn = depositoryRecordService.findMyTaskIn(paramForTask, userKey,token);
for (SimpleApplicationOutOrInRecordP simpleApplicationOutOrInRecordP : myTaskIn) {
SimpleTaskP simpleTaskP = new SimpleTaskP(simpleApplicationOutOrInRecordP);
list.add(simpleTaskP);
@ -3496,7 +3556,7 @@ public class PageController {
Integer minRecordId = ObjectFormatUtil.toInteger(s.split(":")[1].trim());
ApplicationOutRecordMinP applicationOutMinById = depositoryRecordService.findApplicationOutMinById(minRecordId);
ApplicationOutRecordP applicationOutRecordPById = depositoryRecordService.findApplicationOutRecordPById(applicationOutMinById.getParentId());
UserByPort userByPort = LinkInterfaceUtil.FindUserById(applicationOutRecordPById.getApplicantId(), userToken);
UserByPort userByPort = LinkInterfaceUtil.FindUserById(applicationOutRecordPById.getApplicantId(), userKey,token);
applicationOutRecordPById.setApplicantName(userByPort.getName());
SimpleTaskP simpleTaskP = new SimpleTaskP(applicationOutRecordPById, applicationOutMinById);
list.add(simpleTaskP);
@ -3512,7 +3572,7 @@ public class PageController {
* @param userToken 当前用户
* @return
*/
public List<SimpleTaskP> getUserSimpleApplyP(UserByPort userToken) {
public List<SimpleTaskP> getUserSimpleApplyP(UserByPort userToken,String userKey,String token) {
Map<String, Object> paramForApply = new HashMap<>();
paramForApply.put("applicantId", userToken.getId());
paramForApply.put("size", 4);
@ -3522,14 +3582,14 @@ public class PageController {
List<SimpleTaskP> list = new ArrayList<>();
// 查询入库申请
List<ApplicationInRecordP> applicationInRecordPByCondition = depositoryRecordService.findApplicationInRecordPByCondition(paramForApply, userToken);
List<ApplicationInRecordP> applicationInRecordPByCondition = depositoryRecordService.findApplicationInRecordPByCondition(paramForApply, userToken,userKey,token);
for (ApplicationInRecordP applicationInRecordP : applicationInRecordPByCondition) {
SimpleTaskP simpleTask = new SimpleTaskP(applicationInRecordP);
list.add(simpleTask);
}
List<ApplicationOutRecordP> applicationOutRecordPlist = depositoryRecordService.findApplicationOutRecordPByCondition(paramForApply, userToken);
List<ApplicationOutRecordP> applicationOutRecordPlist = depositoryRecordService.findApplicationOutRecordPByCondition(paramForApply,userToken, userKey,token);
for (ApplicationOutRecordP applicationOutRecordP : applicationOutRecordPlist) {
SimpleTaskP simpleTask = new SimpleTaskP(applicationOutRecordP);
list.add(simpleTask);

4
src/main/java/com/dreamchaser/depository_manage/controller/QyWxOperationController.java

@ -14,7 +14,6 @@ import com.dreamchaser.depository_manage.pojo.callBackXml.callBackXml_button_tem
import com.dreamchaser.depository_manage.security.pool.AuthenticationTokenPool;
import com.dreamchaser.depository_manage.security.pool.HandlesOtherFunctionalThreadPool;
import com.dreamchaser.depository_manage.security.pool.RedisPool;
import com.dreamchaser.depository_manage.security.pool.UserKeyAndTokenPool;
import com.dreamchaser.depository_manage.service.CallBackLogService;
import com.dreamchaser.depository_manage.service.DepositoryRecordService;
import com.dreamchaser.depository_manage.service.DepositoryService;
@ -275,9 +274,6 @@ public class QyWxOperationController {
String token = (String) portInfo.get("token");
if (userByPort != null) {
// 如果数据库中存在该用户
String keyAndToken = key + "&" + token;
// 将key与token暂存至池中保存
UserKeyAndTokenPool.addKeyAndToken(userByPort.getNumber(), keyAndToken);
// 设置放入时间
userByPort.setInstant(Instant.now());
AuthenticationTokenPool.addUserToken(token, userByPort);

20
src/main/java/com/dreamchaser/depository_manage/controller/StockTakingController.java

@ -173,12 +173,14 @@ public class StockTakingController {
@GetMapping("/myTask")
public RestResponse myTask(@RequestParam Map<String, Object> map, HttpServletRequest request) {
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
map.put("departmentHead", userToken.getNumber());
List<SimpleStockTakingP> myTask = stockTakingService.findMyTask(map, userToken);
List<SimpleStockTakingP> myTask = stockTakingService.findMyTask(map, userKey,token);
return new RestResponse(myTask, stockTakingService.findMyTaskCount(map), 200);
}
@ -188,11 +190,13 @@ public class StockTakingController {
String header = request.getHeader("user-agent");
String crypt = Md5.crypt(header);
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
Map<String, Object> review = stockTakingService.review(map, userToken, crypt);
Map<String, Object> review = stockTakingService.review(map, userToken, crypt,userKey,token);
if (review.containsKey("errMsg")) {
// 如果有出错情况
@ -207,13 +211,15 @@ public class StockTakingController {
@PostMapping("/complete")
public RestResponse complete(@RequestBody Map<String, Object> map, HttpServletRequest request) {
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
String header = request.getHeader("user-agent");
String crypt = Md5.crypt(header);
Map<String, Object> complete = stockTakingService.completeStockTaking(map, userToken, crypt);
Map<String, Object> complete = stockTakingService.completeStockTaking(map, userToken, crypt,userKey,token);
if (complete.containsKey("errMsg")) {
// 如果有出错情况
return new RestResponse(complete, 666, new StatusInfo("有错误", "发现错误"));
@ -226,12 +232,14 @@ public class StockTakingController {
@GetMapping("/myApply")
public RestResponse myApply(@RequestParam Map<String, Object> map, HttpServletRequest request) {
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
map.put("userId", userToken.getId());
List<SimpleStockTakingP> myApply = stockTakingService.findMyApply(map, userToken);
List<SimpleStockTakingP> myApply = stockTakingService.findMyApply(map,userKey,token);
return new RestResponse(myApply, stockTakingService.findMyApplyCount(map), 200);
}
@ -257,8 +265,10 @@ public class StockTakingController {
public RestResponse stockTransfer(@RequestBody Map<String, Object> map, HttpServletRequest request) {
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
String header = request.getHeader("user-agent");
@ -275,7 +285,7 @@ public class StockTakingController {
}
map.put("minIds", minIdList);
Integer transfer = stockTakingService.stockTakingTransfer(map, userToken, crypt);
Integer transfer = stockTakingService.stockTakingTransfer(map, userToken, crypt,userKey,token);
return CrudUtil.insertHandle(transfer, minIdList.size());
}

29
src/main/java/com/dreamchaser/depository_manage/controller/UserController.java

@ -11,7 +11,6 @@ import com.dreamchaser.depository_manage.exception.MyException;
import com.dreamchaser.depository_manage.pojo.*;
import com.dreamchaser.depository_manage.security.pool.AuthenticationTokenPool;
import com.dreamchaser.depository_manage.security.pool.RedisPool;
import com.dreamchaser.depository_manage.security.pool.UserKeyAndTokenPool;
import com.dreamchaser.depository_manage.service.AccessAddressService;
import com.dreamchaser.depository_manage.service.DepositoryService;
import com.dreamchaser.depository_manage.service.RoleService;
@ -78,7 +77,7 @@ public class UserController {
JSONObject paramObject = JSONObject.parseObject(jsonString);
String post = null;
try {
post = HttpUtils.send(url, paramObject, HTTP.UTF_8, null);
post = HttpUtils.send(url, paramObject, HTTP.UTF_8, null,null);
} catch (IOException e) {
e.printStackTrace();
}
@ -87,12 +86,8 @@ public class UserController {
String userkey = (String) data.get("key");
if (userkey != null) {
String userToken = (String) data.get("token");
String keyAndToken = userkey + "&" + userToken;
UserByPort userinfo = JSONObject.toJavaObject((JSONObject) data.get("usercont"), UserByPort.class);
// 将key与token暂存至池中保存
UserKeyAndTokenPool.addKeyAndToken(userinfo.getNumber(), keyAndToken);
// 将登录用户存储到池中保存
AuthenticationTokenPool.addUserToken(userToken, userinfo);
@ -107,7 +102,7 @@ public class UserController {
param.put("id", userinfo.getId().toString());
param.put("workwechatid", userWxId);
// 将openid写回
PublicConfig.editUserWechatOpenid(param, userinfo);
PublicConfig.editUserWechatOpenid(param,userkey,userToken);
}
// 设置放入时间
userinfo.setInstant(Instant.now());
@ -161,8 +156,10 @@ public class UserController {
@PostMapping("/sys/findUsers")
public RestResponse findUsersByPort(@RequestParam Map<String, Object> map, HttpServletRequest request) {
String token = request.getHeader("user-token");
String userkey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userkey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
String url = PublicConfig.external_url + "/staff/archiveslist";
@ -180,7 +177,7 @@ public class UserController {
JSONObject paramObject = JSONObject.parseObject(jsonString);
String post = null;
try {
post = HttpUtils.send(url, paramObject, HTTP.UTF_8, userToken);
post = HttpUtils.send(url, paramObject, HTTP.UTF_8, userkey,token);
} catch (IOException e) {
e.printStackTrace();
}
@ -408,15 +405,17 @@ public class UserController {
@GetMapping("/findUserRole")
public RestResponse findUserRole(@RequestParam Map<String, Object> map, HttpServletRequest request) {
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
List<UserByPortP> userByPortPList = new ArrayList<>();
String classes = (String) map.get("classes");
List<RoleAndDepository> roleAndDepositoryByCondition = roleService.findRoleAndDepositoryByCondition(map);
for (RoleAndDepository roleAndDepository : roleAndDepositoryByCondition) {
UserByPort userByPort = LinkInterfaceUtil.FindUserById(roleAndDepository.getUserId(), userToken);
UserByPort userByPort = LinkInterfaceUtil.FindUserById(roleAndDepository.getUserId(), userKey,token);
UserByPortP up = new UserByPortP(userByPort);
up.setId(roleAndDepository.getId());
up.setDepositoryName(roleAndDepository.getDepositoryName());
@ -428,8 +427,10 @@ public class UserController {
@GetMapping("/findUserInRole")
public RestResponse findUserInRole(@RequestParam Map<String, Object> map, HttpServletRequest request) {
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
List<UserByPortP> userByPortPList = new ArrayList<>();
@ -437,7 +438,7 @@ public class UserController {
List<RoleAndMaterialType> roleAndMaterialTypeByCondition = roleService.findRoleAndMaterialTypeByCondition(map);
for (RoleAndMaterialType roleAndMaterialType : roleAndMaterialTypeByCondition
) {
UserByPort userByPort = LinkInterfaceUtil.FindUserById(roleAndMaterialType.getUid(), userToken);
UserByPort userByPort = LinkInterfaceUtil.FindUserById(roleAndMaterialType.getUid(), userKey,token);
UserByPortP up = new UserByPortP(userByPort);
up.setId(roleAndMaterialType.getId());
up.setMaterialTypeName(roleAndMaterialType.getTname());
@ -457,11 +458,13 @@ public class UserController {
public Map<String, Object> index_menus(HttpServletRequest request,
HttpServletResponse response) {
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
List<String> stringList = LinkInterfaceUtil.getUserAccessToAddresses(userToken);
List<String> stringList = LinkInterfaceUtil.getUserAccessToAddresses(userKey,token);
List<AccesstoAddress> accessToAddressByList = accessAddressService.findAccessToAddressByList(stringList);
// 获取顶级菜单
List<AccesstoAddress> menusByNoParent = new ArrayList<>();
@ -560,12 +563,14 @@ public class UserController {
@GetMapping("/getUserAuthorization")
public RestResponse getUserAuthorization(HttpServletRequest request) {
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
// 获取当前用户可见的菜单id
List<String> stringList = LinkInterfaceUtil.getUserAccessToAddresses(userToken);
List<String> stringList = LinkInterfaceUtil.getUserAccessToAddresses(userKey,token);
// 根据菜单id获取菜单信息
List<AccesstoAddress> accessToAddressByList = accessAddressService.findAccessToAddressByList(stringList);
List<AccesstoAddress> result = new ArrayList<>();

32
src/main/java/com/dreamchaser/depository_manage/security/pool/UserKeyAndTokenPool.java

@ -1,32 +0,0 @@
package com.dreamchaser.depository_manage.security.pool;
import com.dreamchaser.depository_manage.entity.UserByPort;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
/**
* 用户登录后的key与token池
*/
public class UserKeyAndTokenPool {
private static Map<String, String> pool = new ConcurrentHashMap<>(200);
/**
* 用于暂存当前用户的key和token
* @param key 用户工号
* @param keyAndToken key+token => key & token
*/
public static void addKeyAndToken(String key, String keyAndToken){
pool.put(key, keyAndToken);
}
public static String getKeyAndToken(String key){
return pool.get(key);
}
public static void removeKeyAndToken(String key){
pool.remove(key);
}
}

10
src/main/java/com/dreamchaser/depository_manage/service/CompanyService.java

@ -95,15 +95,15 @@ public interface CompanyService {
* 用于构造部门负责人树
* @return
*/
List<Object> InitTreeMenusForHearder(UserByPort userToken);
List<Object> InitTreeMenusForHearder(UserByPort userToken,String userKey,String token);
/**
* 用于构造当前用户可见的部门树
* @param userByPort 当前用户
* @param
* @return
*/
List<Object> buildPostTree(UserByPort userByPort);
List<Object> buildPostTree(UserByPort userByPort,String userKey,String tokent);
/**
* 用于构造当前施工单位树
@ -120,8 +120,8 @@ public interface CompanyService {
/**
* 用于构造行政组织及岗位树
* @param userByPort 当前登录用户
* @param
* @return
*/
JSONArray BuildOrgAndPostThree(UserByPort userByPort);
JSONArray BuildOrgAndPostThree(String userKey,String token);
}

100
src/main/java/com/dreamchaser/depository_manage/service/DepositoryRecordService.java

@ -36,7 +36,7 @@ public interface DepositoryRecordService {
* @param map 仓库调度信息
* @return 受影响的行数
*/
Integer transferApply(Map<String, Object> map, UserByPort userByPort);
Integer transferApply(Map<String, Object> map, UserByPort userByPort,String userKey,String token);
/**
@ -45,7 +45,7 @@ public interface DepositoryRecordService {
* @param map 仓库调度信息
* @return 受影响的行数
*/
Integer review(Map<String, Object> map, Integer userId, UserByPort userToken, String userAgent);
Integer review(Map<String, Object> map, Integer userId, UserByPort userToken, String userAgent,String userKey,String token);
/**
* 入库审核申请
@ -65,36 +65,6 @@ public interface DepositoryRecordService {
Integer reviewByQyWx(TemplateCard templateCard, String userAgent);
/**
* 根据id修改仓库调度记录
*
* @param map 参数map
* @return 受影响的行数
*/
Integer updateDepositoryRecord(Map<String, Object> map);
/**
* 根据id主键查询数据
*
* @param id id
* @return 该id的数据记录
*/
DepositoryRecordP findDepositoryRecordById(Integer id, UserByPort userToken);
/**
* 查找所有仓库调度记录
*
* @return 所有的仓库调度记录集合
*/
List<DepositoryRecord> findDepositoryRecordAll();
/**
* 根据条件查询仓库调度记录同时支持分页查询需要begin和size参数
*
* @param map 查询参数
* @return 符合条件的仓库调度记录集合
*/
List<DepositoryRecordP> findDepositoryRecordPByCondition(Map<String, Object> map, UserByPort userToken);
/**
@ -103,7 +73,7 @@ public interface DepositoryRecordService {
* @param map
* @return
*/
List<ApplicationInRecordP> findApplicationInRecordPByCondition(Map<String, Object> map, UserByPort userToken);
List<ApplicationInRecordP> findApplicationInRecordPByCondition(Map<String, Object> map, UserByPort userToken,String userKey,String token);
/**
@ -113,7 +83,7 @@ public interface DepositoryRecordService {
* @param map 查询条件
* @return
*/
List<ApplicationInRecordP> findApplicationInRecordPByUser(UserByPort userByPort, Map<String, Object> map);
List<ApplicationInRecordP> findApplicationInRecordPByUser(UserByPort userByPort, Map<String, Object> map,String userKey,String token);
/**
* 查询当前用户入库记录及其管理仓库的入库记录数目
@ -131,7 +101,7 @@ public interface DepositoryRecordService {
* @param map 查询条件
* @return
*/
List<ApplicationOutRecordP> findApplicationOutRecordPByUser(UserByPort userByPort, Map<String, Object> map);
List<ApplicationOutRecordP> findApplicationOutRecordPByUser(UserByPort userByPort, Map<String, Object> map,String userKey,String token);
/**
* 查询当前用户出库记录及其管理仓库的出库记录数目
@ -148,7 +118,7 @@ public interface DepositoryRecordService {
* @param map
* @return
*/
List<ApplicationOutRecordP> findApplicationOutRecordPByCondition(Map<String, Object> map, UserByPort userToken);
List<ApplicationOutRecordP> findApplicationOutRecordPByCondition(Map<String, Object> map, UserByPort userToken,String userKey,String token);
/**
@ -198,7 +168,7 @@ public interface DepositoryRecordService {
* @param map 查询参数
* @return 我的任务
*/
List<SimpleApplicationOutOrInRecordP> findMyTaskOut(Map<String, Object> map, UserByPort userToken);
List<SimpleApplicationOutOrInRecordP> findMyTaskOut(Map<String, Object> map, String userKey,String token);
/**
* 根据条件查询自己的任务根据isDone来决定查询已完成或者未完成的任务同时支持分页查询需要begin和size参数
@ -206,7 +176,7 @@ public interface DepositoryRecordService {
* @param map 查询参数
* @return 我的任务
*/
List<SimpleApplicationOutOrInRecordP> findMyTaskIn(Map<String, Object> map, UserByPort userToken);
List<SimpleApplicationOutOrInRecordP> findMyTaskIn(Map<String, Object> map, String userKey,String token);
/**
@ -262,20 +232,6 @@ public interface DepositoryRecordService {
Integer findCountByCondition(Map<String, Object> map);
/**
* 计算物料总数
*
* @return
*/
Double CalculateAllCount(Integer type, String state);
/**
* 计算物料总额
*
* @return
*/
Double CalculateAllPrice(Integer type, String state);
/**
* 计算入库物料总额
*
@ -283,23 +239,6 @@ public interface DepositoryRecordService {
*/
Map<String, Object> CalculateAllApplicationInAll(List<Integer> list);
/**
* 计算出库物料总额
*
* @return
*/
Double CalculateAllApplicationOutPrice(String state);
/**
* 获取一段时间内的库存额度
*
* @param start
* @param end
* @param type
* @param depositoryId
* @return
*/
Double findDepositoryRecordByDate(Long end, Long start, Integer type, Integer depositoryId);
/**
* 获取一段时间内的库存额度
@ -332,16 +271,6 @@ public interface DepositoryRecordService {
*/
Integer findApplicationOutRecordByDate(Long end, Long start, Integer depositoryId);
/**
* 根据条件获取月份中物料的总额
*
* @param map
* @return
*/
Integer findMaterialCountByMonth(Map<String, Object> map);
/**
* 根据条件获取月份中的仓库库存数
@ -351,13 +280,6 @@ public interface DepositoryRecordService {
*/
Double calMaterialTypeTopCount(Map<String, Object> map);
/**
* 查询仓库当天流水
*
* @return
*/
Integer findWarehouseRecord(Map<String, Object> map);
/**
* 根据id查询入库记录
*
@ -388,7 +310,7 @@ public interface DepositoryRecordService {
* @param map
* @return
*/
Integer insertApplicationOutRecord(Map<String, Object> map, UserByPort userToken);
Integer insertApplicationOutRecord(Map<String, Object> map, UserByPort userToken,String userKey,String token);
/**
@ -492,7 +414,7 @@ public interface DepositoryRecordService {
* @param userByPort
* @return
*/
RestResponse completeApplicationOutMinRecord(Map<String, Object> map, UserByPort userByPort, String userAgent);
RestResponse completeApplicationOutMinRecord(Map<String, Object> map, UserByPort userByPort, String userAgent,String userKey,String token);
/**
* 用于企业微信物料出库审批处理
@ -551,5 +473,5 @@ public interface DepositoryRecordService {
* @param map 待修改数据
* @return
*/
Integer updateOutMinRecordInfo(Map<String,Object> map,UserByPort userToken,String userAgent);
Integer updateOutMinRecordInfo(Map<String,Object> map,UserByPort userToken,String userAgent,String userKey,String token);
}

4
src/main/java/com/dreamchaser/depository_manage/service/DepositoryService.java

@ -19,13 +19,13 @@ public interface DepositoryService {
* @param map 参数map
* @return 受影响的行数
*/
Integer insertDepository(Map<String,Object> map,UserByPort userByPort);
Integer insertDepository(Map<String,Object> map,String userKey,String token);
/**
* 查询所有仓库
* @return 仓库集合
*/
List<Depository> findDepositoryByCondition(Map<String,Object> map, UserByPort userByPort);
List<Depository> findDepositoryByCondition(Map<String,Object> map, String userKey,String token);
/**
* 根据条件查询对应的总条数

2
src/main/java/com/dreamchaser/depository_manage/service/ExcelService.java

@ -39,7 +39,7 @@ public interface ExcelService {
* @param userToken 调用接口人员
* @param pageSize 一张最多打印条数
*/
List<String> writeExcelForPrint(Integer id, Integer pageSize, UserByPort userToken);
List<String> writeExcelForPrint(Integer id, Integer pageSize, UserByPort userToken,String userKey,String token);
/**

4
src/main/java/com/dreamchaser/depository_manage/service/GroupService.java

@ -190,14 +190,14 @@ public interface GroupService {
* @param map 具体数据
* @return
*/
Integer insertApplicationOutRecord(Map<String,Object> map, UserByPort userToken);
Integer insertApplicationOutRecord(Map<String,Object> map, UserByPort userToken,String userKey,String token);
/**
* 插入一条入库记录
* @param map 具体数据
* @return
*/
Integer insertApplicationInRecord(Map<String,Object> map, UserByPort userToken,String userAgent);
Integer insertApplicationInRecord(Map<String,Object> map, UserByPort userToken,String userAgent,String userKey,String token);
/**

8
src/main/java/com/dreamchaser/depository_manage/service/NoticeService.java

@ -23,14 +23,14 @@ public interface NoticeService {
* @param map 参数map
* @return 符合条件的公告列表
*/
List<NoticeP> findNoticeByCondition(Map<String,Object> map, UserByPort userByPort);
List<NoticeP> findNoticeByCondition(Map<String,Object> map, UserByPort userByPort,String userKey,String token);
/**
* 根据条件查询符合条件的用户可见的公告信息
* @param map 参数map
* @return 符合条件的公告列表
*/
List<NoticeP> findAllNoticeForUser(Map<String,Object> map, UserByPort userByPort);
List<NoticeP> findAllNoticeForUser(Map<String,Object> map, UserByPort userByPort,String userKey,String token);
/**
@ -38,7 +38,7 @@ public interface NoticeService {
* @param userByPort
* @return
*/
List<NoticeP> findNoticeByUnRead(UserByPort userByPort);
List<NoticeP> findNoticeByUnRead(UserByPort userByPort,String userKey,String token);
@ -47,7 +47,7 @@ public interface NoticeService {
* @param id 待查询id
* @return
*/
NoticeP findNoticeById(Integer id);
NoticeP findNoticeById(Integer id,String userKey,String token);
/**

10
src/main/java/com/dreamchaser/depository_manage/service/StockTakingService.java

@ -40,7 +40,7 @@ public interface StockTakingService {
* @param map 查询参数
* @return 我的任务
*/
List<SimpleStockTakingP> findMyTask(Map<String, Object> map, UserByPort userToken);
List<SimpleStockTakingP> findMyTask(Map<String, Object> map,String userKey,String token);
/**
* 查询用户的任务数量
@ -54,7 +54,7 @@ public interface StockTakingService {
* @param map 查询参数
* @return 我的任务
*/
List<SimpleStockTakingP> findMyApply(Map<String, Object> map, UserByPort userToken);
List<SimpleStockTakingP> findMyApply(Map<String, Object> map, String userKey,String token);
/**
* 查询用户的申请数量
@ -103,14 +103,14 @@ public interface StockTakingService {
* @param map
* @return
*/
Map<String,Object> review(Map<String,Object> map, UserByPort userToken,String userAgent);
Map<String,Object> review(Map<String,Object> map, UserByPort userToken,String userAgent,String userKey,String token);
/**
* 用于进行盘点结果转移
* @param map
* @return
*/
Integer stockTakingTransfer(Map<String,Object> map,UserByPort userToken,String userAgent);
Integer stockTakingTransfer(Map<String,Object> map,UserByPort userToken,String userAgent,String userKey,String token);
/**
* 用于企业微信的审核申请处理
@ -129,7 +129,7 @@ public interface StockTakingService {
* @param userToken
* @return
*/
Map<String,Object> completeStockTaking(Map<String,Object> map, UserByPort userToken,String userAgent);
Map<String,Object> completeStockTaking(Map<String,Object> map, UserByPort userToken,String userAgent,String userKey,String token);
/**
* 用于企业微信的审核申请处理

22
src/main/java/com/dreamchaser/depository_manage/service/impl/CompanyServiceImpl.java

@ -150,9 +150,9 @@ public class CompanyServiceImpl implements CompanyService {
* @return
*/
@Override
public List<Object> InitTreeMenusForHearder(UserByPort userToken) {
public List<Object> InitTreeMenusForHearder(UserByPort userToken,String userKey,String token) {
Integer company = userToken.getCompany();
List<ThreeAboutMan> allUserByAdministration = findAllUserByAdministration(company.toString(), userToken);
List<ThreeAboutMan> allUserByAdministration = findAllUserByAdministration(company.toString(), userKey,token);
// 开启对应数量的线程
int threadSize = allUserByAdministration.size();
ExecutorService exs = new ThreadPoolExecutor(threadSize, threadSize, 100, TimeUnit.SECONDS, new LinkedBlockingQueue<>(threadSize));
@ -256,12 +256,12 @@ public class CompanyServiceImpl implements CompanyService {
/**
* 用于构造行政组织及岗位树
* @param userByPort 当前登录用户
* @param
* @return
*/
@Override
public JSONArray BuildOrgAndPostThree(UserByPort userByPort) {
JSONArray orgAndPostThree = LinkInterfaceUtil.getOrgAndPostThree(userByPort);
public JSONArray BuildOrgAndPostThree(String userKey,String token) {
JSONArray orgAndPostThree = LinkInterfaceUtil.getOrgAndPostThree(userKey,token);
// 将获取到的json字符串进行修改为使用的结构
String replace = JSONObject.toJSONString(orgAndPostThree).replace("name", "title").replace("child", "children");
// 将其变回json格式
@ -273,11 +273,11 @@ public class CompanyServiceImpl implements CompanyService {
/**
* 用于构造当前用户可见的部门树
* @param userByPort 当前用户
* @param
* @return
*/
public List<Object> buildPostTree(UserByPort userByPort){
JSONArray postTree = LinkInterfaceUtil.getPostTree(userByPort);
public List<Object> buildPostTree(UserByPort userByPort,String userKey,String token){
JSONArray postTree = LinkInterfaceUtil.getPostTree(userByPort,userKey,token);
// 定义线程数量
int threadSize = postTree.size();
// 开启对应数量的线程
@ -534,10 +534,10 @@ public class CompanyServiceImpl implements CompanyService {
/**
* 用于获取行政组织树包括成员
* @param id 查询id
* @param userToken 登录用户
* @param
* @return
*/
public List<ThreeAboutMan> findAllUserByAdministration(String id,UserByPort userToken){
public List<ThreeAboutMan> findAllUserByAdministration(String id,String userKey,String token){
String url = PublicConfig.external_url +"/org/govthreeaboutman";
Map<String,Object> map = new HashMap<>();
map.put("id",id);
@ -547,7 +547,7 @@ public class CompanyServiceImpl implements CompanyService {
JSONObject paramObject = JSONObject.parseObject(jsonString);
String post = null;
try {
post = HttpUtils.send(url,paramObject, HTTP.UTF_8,userToken);
post = HttpUtils.send(url,paramObject, HTTP.UTF_8,userKey,token);
} catch (IOException e) {
e.printStackTrace();
}

387
src/main/java/com/dreamchaser/depository_manage/service/impl/DepositoryRecordServiceImpl.java

@ -224,7 +224,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
* @return
*/
@Override
public Integer insertApplicationOutRecord(Map<String, Object> map, UserByPort userToken) {
public Integer insertApplicationOutRecord(Map<String, Object> map, UserByPort userToken,String userKey,String token) {
String placeId = "";
Object temp = map.get("placeId");
String depositoryId = (String) map.get("depositoryId");
@ -263,7 +263,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
Depository depositoryRecordById = depositoryMapper.findDepositoryById(materialById.getDepositoryId());
dname = depositoryRecordById.getDname();
}
Administration company = LinkInterfaceUtil.getCompany(userToken.getMaindeparment(), userToken);
Administration company = LinkInterfaceUtil.getCompany(userToken.getMaindeparment(), userKey,token);
String code = createCode(dname, "outOrderNumber", "out", company.getName());
map.put("code", code);
map.put("pass", 3);
@ -985,7 +985,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
*/
@Transactional(rollbackFor = Exception.class)
@Override
public RestResponse completeApplicationOutMinRecord(Map<String, Object> param, UserByPort userByPort, String userAgent) {
public RestResponse completeApplicationOutMinRecord(Map<String, Object> param, UserByPort userByPort, String userAgent,String userKey,String token) {
// 最终返回值
RestResponse restResponse = new RestResponse();
@ -1096,7 +1096,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
restResponse.setStatusInfo(new StatusInfo("出库成功", "出库成功"));
// 进行子订单的相关处理
updateApplicationMinOutInfo(id, applicationOutMinById, record, trueOut, userByPort, placeId, userAgent);
updateApplicationMinOutInfo(id, applicationOutMinById, record, trueOut, userByPort, placeId, userAgent,userKey,token);
// 更新入库批次中的物料数量
HandlesOtherFunctionalThreadPool.execute(() -> {
@ -1181,7 +1181,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
}
// 进行子订单的相关处理
updateApplicationMinOutInfo(id, applicationOutMinById, record, trueOut, userByPort, placeId, userAgent);
updateApplicationMinOutInfo(id, applicationOutMinById, record, trueOut, userByPort, placeId, userAgent,userKey,token);
restResponse.setStatus(200);
@ -1239,7 +1239,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
splitUnitMapper.updateSplitInventory(splitInventory);
}
updateApplicationMinOutInfo(id, applicationOutMinById, record, trueOut, userByPort, placeId, userAgent);
updateApplicationMinOutInfo(id, applicationOutMinById, record, trueOut, userByPort, placeId, userAgent,userKey,token);
} else {
// 如果当前拆单没有父级
@ -1314,7 +1314,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
}
updateApplicationMinOutInfo(id, applicationOutMinById, record, trueOut, userByPort, placeId, userAgent);
updateApplicationMinOutInfo(id, applicationOutMinById, record, trueOut, userByPort, placeId, userAgent,userKey,token);
restResponse.setStatus(200);
restResponse.setData("");
@ -1399,7 +1399,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
transferMaterial(map);
}
updateApplicationMinOutInfo(id, applicationOutMinById, record, trueOut, userByPort, placeId, userAgent);
updateApplicationMinOutInfo(id, applicationOutMinById, record, trueOut, userByPort, placeId, userAgent,userKey,token);
restResponse.setStatus(200);
restResponse.setData("");
@ -1474,7 +1474,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
transferMaterial(map);
}
updateApplicationMinOutInfo(id, applicationOutMinById, record, trueOut, userByPort, placeId, userAgent);
updateApplicationMinOutInfo(id, applicationOutMinById, record, trueOut, userByPort, placeId, userAgent,userKey,token);
restResponse.setStatus(200);
restResponse.setData("");
@ -1756,7 +1756,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
*/
@Transactional(rollbackFor = Exception.class)
@Override
public Integer updateOutMinRecordInfo(Map<String, Object> map, UserByPort userToken, String userAgent) {
public Integer updateOutMinRecordInfo(Map<String, Object> map, UserByPort userToken, String userAgent,String userKey,String token) {
Integer result = 0;
Integer id = ObjectFormatUtil.toInteger(map.get("id"));
@ -1808,21 +1808,6 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
// 如果是基础单位
/* 不进行审核
// 设置库存数量
inventoryById.setQuantity(inventoryById.getQuantity() + (int) (returnQuantity * 100));
// 设置库位数量
placeById.setQuantity(placeById.getQuantity() + (int) (returnQuantity * 100));
// 设置新映射数量
placeAndMaterialByMidAndPid.setQuantity(placeAndMaterialByMidAndPid.getQuantity() + (int) (returnQuantity * 100));
// 修改
materialMapper.updateInventory(inventoryById);
placeMapper.updateMaterialAndPlace(placeAndMaterialByMidAndPid);
placeMapper.UpdatePlace(placeById);
*/
Map<String, Object> paramForUpdateSplitInventory = new HashMap<>();
paramForUpdateSplitInventory.put("placeId", outRecordMin.getPlaceId());
paramForUpdateSplitInventory.put("depositoryId", outRecordMin.getDepositoryId());
@ -1844,29 +1829,6 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
} else {
// 如果是拆单
/* 不进行审核
Map<String, Object> paramForSplitInfo = new HashMap<>();
paramForSplitInfo.put("mid", inventoryById.getMid());
paramForSplitInfo.put("newUnit", unit);
// 获取拆单记录
SplitInfo splitInfo = splitUnitMapper.findSplitInfoByMidAndUnit(paramForSplitInfo);
Map<String, Object> paramForSplitInventory = new HashMap<>();
paramForSplitInventory.put("sid", splitInfo.getId());
paramForSplitInventory.put("iid", placeAndMaterialByMidAndPid.getId());
// 获取拆单库存记录
SplitInventory splitInventory = splitUnitMapper.findSplitInventoryByIidAndSid(paramForSplitInventory);
Map<String, Object> paramForUpdateSplitInventory = new HashMap<>();
paramForUpdateSplitInventory.put("placeId", outRecordMin.getPlaceId());
paramForUpdateSplitInventory.put("depositoryId", outRecordMin.getDepositoryId());
paramForUpdateSplitInventory.put("quantity", returnQuantity);
paramForUpdateSplitInventory.put("mid", inventoryById.getMid());
paramForUpdateSplitInventory.put("unit", unit);
result = splitUnitService.realInInventoryToDepository(returnQuantity, splitInventory, paramForUpdateSplitInventory, splitInfo, placeAndMaterialByMidAndPid, true);
if (paramForUpdateSplitInventory.containsKey("applicationInId")) {
depositoryRecordMapper.deleteApplicationInRecordById(ObjectFormatUtil.toInteger(paramForUpdateSplitInventory.get("applicationInId")));
}*/
Map<String, Object> paramForUpdateSplitInventory = new HashMap<>();
paramForUpdateSplitInventory.put("placeId", outRecordMin.getPlaceId());
paramForUpdateSplitInventory.put("applicantId", userToken.getId());
@ -1903,10 +1865,10 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
// 强行完成出库
// 获取当前出库人员
UserByPort userByPort = LinkInterfaceUtil.FindUserById(outRecordMin.getCheckId(), userToken);
UserByPort userByPort = LinkInterfaceUtil.FindUserById(outRecordMin.getCheckId(), userKey,token);
outRecord.setPass(1);
updateApplicationMinOutInfo(id, outRecordMin, outRecord, (double) (quantity), userByPort, placeById.getId(), userAgent);
updateApplicationMinOutInfo(id, outRecordMin, outRecord, (double) (quantity), userByPort, placeById.getId(), userAgent,userKey,token);
}
@ -1922,7 +1884,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
for (RoleAndMaterialType mt : materialTypeIdForIn
) {
// 获取管理员数据
UserByPort userByPort = LinkInterfaceUtil.FindUserById(mt.getUid(), userToken);
UserByPort userByPort = LinkInterfaceUtil.FindUserById(mt.getUid(), userKey,token);
String workwechat = userByPort.getWorkwechat();
if (workwechat == null || "".equals(workwechat)) {
workwechat = userByPort.getWechat();
@ -1935,7 +1897,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
for (RoleAndDepository mt : materialTypeIdForIn
) {
// 获取管理员数据
UserByPort userByPort = LinkInterfaceUtil.FindUserById(mt.getUserId(), userToken);
UserByPort userByPort = LinkInterfaceUtil.FindUserById(mt.getUserId(), userKey,token);
String workwechat = userByPort.getWorkwechat();
if (workwechat == null || "".equals(workwechat)) {
workwechat = userByPort.getWechat();
@ -1946,7 +1908,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
List<Integer> integerList = new ArrayList<>();
integerList.add(ObjectFormatUtil.toInteger(applicationInId));
JSONObject jsonObject = qyWxOperationService.sendApprovalTemplateIn(userAgent, userToken, integerList, sb.toString());
JSONObject jsonObject = qyWxOperationService.sendApprovalTemplateIn(userAgent, userToken, integerList, sb.toString(),userKey,token);
String sp_no = jsonObject.getString("sp_no");
Map<String, Object> QyWxApprovalMap = new HashMap<>();
QyWxApprovalMap.put("sp_no", sp_no);
@ -2053,7 +2015,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
* @param userAgent user-agent
*/
@Transactional(rollbackFor = Exception.class)
void updateApplicationMinOutInfo(Integer id, ApplicationOutRecordMin applicationOutMinById, ApplicationOutRecord record, Double trueOut, UserByPort userByPort, Integer placeId, String userAgent) {
void updateApplicationMinOutInfo(Integer id, ApplicationOutRecordMin applicationOutMinById, ApplicationOutRecord record, Double trueOut, UserByPort userByPort, Integer placeId, String userAgent,String userKey,String token) {
String redisMinRecordKey = "minRecord:" + id; // 设置redis中子订单键值
// 修改当前已经出库的数量
applicationOutMinById.setTrueOut((int) ((trueOut * 100) + applicationOutMinById.getTrueOut()));
@ -2115,9 +2077,9 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
// 获取主订单单号
StringBuilder code = new StringBuilder(record.getCode());
// 获取申请用户信息
UserByPort applicantUser = LinkInterfaceUtil.FindUserById(record.getApplicantId(), userByPort);
UserByPort applicantUser = LinkInterfaceUtil.FindUserById(record.getApplicantId(), userKey,token);
// 获取申请用户行政组织
Administration company = LinkInterfaceUtil.getCompany(applicantUser.getMaindeparment(), userByPort);
Administration company = LinkInterfaceUtil.getCompany(applicantUser.getMaindeparment(), userKey,token);
// 获取部门名称简写
String conpanyName = WordUtil.getPinYinHeadChar(company.getName());
// 获取仓库名称简写
@ -2175,7 +2137,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
continue;
}
Integer uid = ObjectFormatUtil.toInteger(s);
UserByPort depositoryManager = LinkInterfaceUtil.FindUserById(uid, userByPort);
UserByPort depositoryManager = LinkInterfaceUtil.FindUserById(uid, userKey,token);
String workwechat = depositoryManager.getWorkwechat();
if (workwechat == null || "".equals(workwechat)) {
workwechat = userByPort.getWechat();
@ -2183,7 +2145,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
// depositoryManagerByQyWx.append(workwechat+",");
}
depositoryManagerByQyWx.append("PangFuZhen,");
JSONObject jsonObject = qyWxOperationService.sendCcMessageToUsers(depositoryManagerByQyWx.toString(), record.getId(), userAgent);
JSONObject jsonObject = qyWxOperationService.sendCcMessageToUsers(depositoryManagerByQyWx.toString(), record.getId(), userAgent,userKey,token);
// 删除redis中本订单
redisPool.getRedisTemplateByDb(15).delete("record:" + record.getId());
@ -2217,6 +2179,8 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
// 获取审批人
Map<String, Object> portInfo = PublicConfig.findUserByQyWxUserId(userId);
UserByPort userByPort = (UserByPort) portInfo.get("user");
String userKey = (String) portInfo.get("key");
String token = (String) portInfo.get("token");
// 用于标志是否更新当前申请明细
boolean flag = true;
@ -2322,7 +2286,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
StringBuilder QyWxUid = new StringBuilder();
for (Integer integer : userIdByDid) {
// 获取仓库管理员信息
UserByPort manager = LinkInterfaceUtil.FindUserById(integer, null);
UserByPort manager = LinkInterfaceUtil.FindUserById(integer, null,null);
// 仓库管理员订单信息
Map<String, Object> userRecord = new HashMap<>();
// 用户当前子订单
@ -2349,7 +2313,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
redisPool.getRedisTemplateByDb(15).opsForHash().putAll(minRecordKey, minRecord);
// 开启线程向仓库管理员发送消息
SendQyWxMessageThreadPool.execute(() -> {
JSONObject jsonObject = qyWxOperationService.sendNotificationToDepositoryManager(QyWxUid.toString(), applicationOutRecordMin.getId(), userAgent);
JSONObject jsonObject = qyWxOperationService.sendNotificationToDepositoryManager(QyWxUid.toString(), applicationOutRecordMin.getId(), userAgent,userKey,token);
});
} else {
// 如果是通过仓库
@ -2374,7 +2338,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
StringBuilder QyWxUid = new StringBuilder();
for (Integer integer : userIdByDid) {
// 获取仓库管理员信息
UserByPort manager = LinkInterfaceUtil.FindUserById(integer, null);
UserByPort manager = LinkInterfaceUtil.FindUserById(integer, null,null);
// 仓库管理员订单信息
Map<String, Object> userRecord = new HashMap<>();
// 用户当前子订单
@ -2402,7 +2366,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
// 开启线程向仓库管理员发送消息
SendQyWxMessageThreadPool.execute(() -> {
JSONObject jsonObject = qyWxOperationService.sendNotificationToDepositoryManager(QyWxUid.toString(), applicationOutRecordMin.getId(), userAgent);
JSONObject jsonObject = qyWxOperationService.sendNotificationToDepositoryManager(QyWxUid.toString(), applicationOutRecordMin.getId(), userAgent,userKey,token);
});
}
@ -2459,7 +2423,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
Depository depositoryById = depositoryMapper.findDepositoryById(recordP.getDepositoryId());
// 获取当前仓库所属的部门
String adminorg = depositoryById.getAdminorg();
List<UserByPort> departmentHeadByUser = PublicConfig.findDepartmentHeadByUser(ObjectFormatUtil.toInteger(adminorg),null);
List<UserByPort> departmentHeadByUser = PublicConfig.findDepartmentHeadByUser(ObjectFormatUtil.toInteger(adminorg),null,null);
for (UserByPort departmentHead:departmentHeadByUser
) {
depositoryManager.append(departmentHead.getId()).append(",");
@ -2708,7 +2672,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
*/
@Override
@Transactional(rollbackFor = Exception.class)
public Integer transferApply(Map<String, Object> map, UserByPort userByPort) {
public Integer transferApply(Map<String, Object> map, UserByPort userByPort,String userKey,String token) {
Integer mid = ObjectFormatUtil.toInteger(map.get("mid"));
double quantity = Double.parseDouble((String) map.get("quantity"));
Inventory material = materialMapper.findInventoryById(mid);
@ -2742,7 +2706,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
map.put("transferId", transferId);
// 获取当前转移物料仓库
Depository depositoryRecordById = depositoryMapper.findDepositoryById(material.getDepositoryId());
Administration company = LinkInterfaceUtil.getCompany(userByPort.getMaindeparment(), userByPort);
Administration company = LinkInterfaceUtil.getCompany(userByPort.getMaindeparment(), userKey,token);
// 生成出库订单
map.put("code", createCode(depositoryRecordById.getDname(), "outOrderNumber", "out", company.getName()));
Object placeId = map.get("fromPlaceId");
@ -2803,14 +2767,14 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
*/
@Override
@Transactional(rollbackFor = Exception.class)
public Integer review(Map<String, Object> map, Integer userid, UserByPort userToken, String userAgent) {
public Integer review(Map<String, Object> map, Integer userid, UserByPort userToken, String userAgent,String userKey,String token) {
Object id = map.get("id"); // 主订单编号
ApplicationOutRecord record = depositoryRecordMapper.findApplicationOutRecordPById(ObjectFormatUtil.toInteger(id));
map.remove("id");
List<ApplicationOutRecordMin> minByParent = depositoryRecordMapper.findApplicationOutRecordMinByParent(record.getId());
// 获取申请用户
UserByPort applicantUser = LinkInterfaceUtil.FindUserById(record.getApplicantId(), userToken);
UserByPort applicantUser = LinkInterfaceUtil.FindUserById(record.getApplicantId(), userKey,token);
// 用于标志该仓库是否为前置仓下的仓库
boolean flagForHasOtherDepository = true; //默认是前置仓下的仓库
// 获取当前出库是否为开放出库
@ -2863,7 +2827,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
// 获取当前仓库所属的部门
String adminorg = depositoryById.getAdminorg();
List<UserByPort> departmentHeadByUser = PublicConfig.findDepartmentHeadByUser(ObjectFormatUtil.toInteger(adminorg),null);
List<UserByPort> departmentHeadByUser = PublicConfig.findDepartmentHeadByUser(ObjectFormatUtil.toInteger(adminorg),null,null);
for (UserByPort departmentHead:departmentHeadByUser
) {
depositoryManager.append(departmentHead.getId()).append(",");
@ -2878,7 +2842,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
// 获取仓储中心负责人
List<UserByPort> departmentHeadByUser = PublicConfig.findDepartmentHeadByUser(361,userToken);
List<UserByPort> departmentHeadByUser = PublicConfig.findDepartmentHeadByUser(361,userKey,token);
for (UserByPort userByPort : departmentHeadByUser) {
depositoryManager.append(userByPort.getId()).append(",");
@ -2896,7 +2860,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
SendQyWxMessageThreadPool.execute(() -> {
JSONObject jsonObject = qyWxOperationService.sendQyWxToApplicationOutMessage(QyWxUid.toString(), ObjectFormatUtil.toInteger(id), false, userAgent);
JSONObject jsonObject = qyWxOperationService.sendQyWxToApplicationOutMessage(QyWxUid.toString(), ObjectFormatUtil.toInteger(id), false, userAgent,userKey,token);
// 将当前返回结果保存到redis中
Map<String, Object> QyWxMessageMap = new HashMap<>();
QyWxMessageMap.put("MsgId", jsonObject.getString("msgid"));
@ -2936,7 +2900,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
if ("".equals(s)) {
continue;
}
UserByPort userByPort = LinkInterfaceUtil.FindUserById(ObjectFormatUtil.toInteger(s), null);
UserByPort userByPort = LinkInterfaceUtil.FindUserById(ObjectFormatUtil.toInteger(s), userKey,token);
String workwechat = userByPort.getWorkwechat();
if (workwechat == null || "".equals(workwechat)) {
workwechat = userByPort.getWechat();
@ -2945,7 +2909,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
}
String s = QyWxUid.toString();
s = "PangFuZhen,";
qyWxOperationService.sendMessageForOtherUserByCard(ObjectFormatUtil.toInteger(id), s, userAgent, 1);
qyWxOperationService.sendMessageForOtherUserByCard(ObjectFormatUtil.toInteger(id), s, userAgent, 1,userKey,token);
});
}
else {
@ -3035,7 +2999,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
StringBuilder QyWxUid = new StringBuilder();
for (Integer integer : userIdByDid) {
// 获取仓库管理员信息
UserByPort manager = LinkInterfaceUtil.FindUserById(integer, null);
UserByPort manager = LinkInterfaceUtil.FindUserById(integer, userKey,token);
// 仓库管理员订单信息
Map<String, Object> userRecord = new HashMap<>();
// 用户当前子订单
@ -3062,7 +3026,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
redisPool.getRedisTemplateByDb(15).opsForHash().putAll(minRecordKey, minRecord);
// 开启线程向仓库管理员发送消息
SendQyWxMessageThreadPool.execute(() -> {
JSONObject jsonObject = qyWxOperationService.sendNotificationToDepositoryManager(QyWxUid.toString(), applicationOutRecordMin.getId(), userAgent);
JSONObject jsonObject = qyWxOperationService.sendNotificationToDepositoryManager(QyWxUid.toString(), applicationOutRecordMin.getId(), userAgent,userKey,token);
});
}
else {
@ -3088,7 +3052,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
StringBuilder QyWxUid = new StringBuilder();
for (Integer integer : userIdByDid) {
// 获取仓库管理员信息
UserByPort manager = LinkInterfaceUtil.FindUserById(integer, null);
UserByPort manager = LinkInterfaceUtil.FindUserById(integer, userKey,token);
// 仓库管理员订单信息
Map<String, Object> userRecord = new HashMap<>();
// 用户当前子订单
@ -3115,7 +3079,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
redisPool.getRedisTemplateByDb(15).opsForHash().putAll(minRecordKey, minRecord);
// 开启线程向仓库管理员发送消息
SendQyWxMessageThreadPool.execute(() -> {
JSONObject jsonObject = qyWxOperationService.sendNotificationToDepositoryManager(QyWxUid.toString(), applicationOutRecordMin.getId(), userAgent);
JSONObject jsonObject = qyWxOperationService.sendNotificationToDepositoryManager(QyWxUid.toString(), applicationOutRecordMin.getId(), userAgent,userKey,token);
});
}
}
@ -3130,7 +3094,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
if ("".equals(s)) {
continue;
}
UserByPort userByPort = LinkInterfaceUtil.FindUserById(ObjectFormatUtil.toInteger(s), null);
UserByPort userByPort = LinkInterfaceUtil.FindUserById(ObjectFormatUtil.toInteger(s), userKey,token);
String workwechat = userByPort.getWorkwechat();
if (workwechat == null || "".equals(workwechat)) {
workwechat = userByPort.getWechat();
@ -3139,7 +3103,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
}
String s = QyWxUid.toString();
s = "PangFuZhen,";
qyWxOperationService.sendMessageForOtherUserByCard(ObjectFormatUtil.toInteger(id), s, userAgent, 1);
qyWxOperationService.sendMessageForOtherUserByCard(ObjectFormatUtil.toInteger(id), s, userAgent, 1,userKey,token);
});
// 将主订单插入到redis中
@ -3173,7 +3137,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
SendQyWxMessageThreadPool.execute(() -> {
// 获取responseCode(key为申请人number)
//获取部门负责人信息
UserByPort departHead = LinkInterfaceUtil.FindUserById(ObjectFormatUtil.toInteger(record.getDepartmenthead()), userToken);
UserByPort departHead = LinkInterfaceUtil.FindUserById(ObjectFormatUtil.toInteger(record.getDepartmenthead()), userKey,token);
String key = "user:" + departHead.getNumber() + ":QyWxOutId:" + id;
String responseCode = (String) redisPool.getRedisTemplateByDb(15).opsForHash().get(key, "responseCode");
qyWxOperationService.updateButtonTemplateCardToUnEnable(responseCode, userToken.getName(), finalResult, userAgent);
@ -3308,6 +3272,8 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
// 根据userId获取处理人
Map<String, Object> portInfo = PublicConfig.findUserByQyWxUserId(fromUserName);
UserByPort userByPort = (UserByPort) portInfo.get("user");
String userKey = (String) portInfo.get("key");
String token = (String) portInfo.get("token");
// 获取点击的按钮
String eventKey = templateCard.getEventKey();
// 将其进行分割
@ -3333,7 +3299,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
map.put("departmentheadPass", 1);
map.put("state", "待仓储中心负责人审核");
// 获取仓储中心负责人
List<UserByPort> departmentHeadByUser = PublicConfig.findDepartmentHeadByUser(361,null);
List<UserByPort> departmentHeadByUser = PublicConfig.findDepartmentHeadByUser(361,null,null);
StringBuilder depositoryManager = new StringBuilder();
StringBuilder QyWxUid = new StringBuilder();
// for (int i = 0; i < departmentHeadByUser.size(); i++) {
@ -3347,7 +3313,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
QyWxUid.append("PangFuZhen" + ",");
map.put("depositoryManager", depositoryManager.toString());
// 向仓储中心负责人发送新的消息
JSONObject jsonObject = qyWxOperationService.sendQyWxToApplicationOutMessage(QyWxUid.toString(), ObjectFormatUtil.toInteger(outId), false, userAgent);
JSONObject jsonObject = qyWxOperationService.sendQyWxToApplicationOutMessage(QyWxUid.toString(), ObjectFormatUtil.toInteger(outId), false, userAgent,userKey,token);
// 将当前返回结果保存到redis中
Map<String, Object> QyWxMessageMap = new HashMap<>();
QyWxMessageMap.put("MsgId", jsonObject.getString("msgid"));
@ -3418,13 +3384,13 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
List<Integer> userIdByDid = new ArrayList<>();
userIdByDid = roleService.findUserIdByMtId(materialById.getMaterialTypeId());
StringBuilder QyWxUid = new StringBuilder();
for (int j = 0; j < userIdByDid.size(); j++) {
for (Integer integer : userIdByDid) {
// 获取仓库管理员信息
UserByPort manager = LinkInterfaceUtil.FindUserById(userIdByDid.get(j), userByPort);
UserByPort manager = LinkInterfaceUtil.FindUserById(integer, userKey,token);
// 仓库管理员订单信息
Map<String, Object> userRecord = new HashMap<>();
// 用户当前子订单
String userMinRecord = (String) redisPool.getRedisTemplateByDb(15).opsForHash().get("user:" + userIdByDid.get(j), "minRecord");
String userMinRecord = (String) redisPool.getRedisTemplateByDb(15).opsForHash().get("user:" + integer, "minRecord");
if (userMinRecord == null) { // 如果当前用户没有子订单
userRecord.put("minRecord", "[" + minRecordKey + "," + "]"); // 插入一条子订单
} else { // 如果当前用户已经有子订单
@ -3433,8 +3399,8 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
userRecord.put("minRecord", minRecordList.toString());
}
// 更新redis中用户记录
redisPool.getRedisTemplateByDb(15).opsForHash().putAll("user:" + userIdByDid.get(j), userRecord);
minRecordManage.append(userIdByDid.get(j)).append(",");
redisPool.getRedisTemplateByDb(15).opsForHash().putAll("user:" + integer, userRecord);
minRecordManage.append(integer).append(",");
String workwechat = manager.getWorkwechat();
if (workwechat == null || "".equals(workwechat)) {
workwechat = manager.getWechat();
@ -3447,7 +3413,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
redisPool.getRedisTemplateByDb(15).opsForHash().putAll(minRecordKey, minRecord);
// 开启线程向仓库管理员发送消息
SendQyWxMessageThreadPool.execute(() -> {
JSONObject jsonObject = qyWxOperationService.sendNotificationToDepositoryManager(QyWxUid.toString(), applicationOutRecordMin.getId(), userAgent);
JSONObject jsonObject = qyWxOperationService.sendNotificationToDepositoryManager(QyWxUid.toString(), applicationOutRecordMin.getId(), userAgent,userKey,token);
});
}
@ -3902,64 +3868,6 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
}
/**
* 根据id修改仓库调度记录
*
* @param map 参数map
* @return 受影响的行数
*/
@Override
public Integer updateDepositoryRecord(Map<String, Object> map) {
return depositoryRecordMapper.updateDepositoryRecord(map);
}
/**
* 根据id主键查询数据
*
* @param id id
* @return 该id的数据记录
*/
@Override
public DepositoryRecordP findDepositoryRecordById(Integer id, UserByPort userToken) {
DepositoryRecord depositoryRecordById = depositoryRecordMapper.findDepositoryRecordById(id);
return singlePack(depositoryRecordById, userToken);
}
public Integer checkPass() {
return null;
}
/**
* 查找所有仓库调度记录
*
* @return 所有的仓库调度记录集合
*/
@Override
public List<DepositoryRecord> findDepositoryRecordAll() {
return depositoryRecordMapper.findDepositoryRecordAll();
}
/**
* 根据条件查询仓库调度记录同时支持分页查询需要begin和size参数
*
* @param map 查询参数
* @return 符合条件的仓库调度记录集合
*/
@Override
public List<DepositoryRecordP> findDepositoryRecordPByCondition(Map<String, Object> map, UserByPort userToken) {
Integer size = 8, page = 1;
if (map.containsKey("size")) {
size = ObjectFormatUtil.toInteger(map.get("size"));
map.put("size", size);
}
if (map.containsKey("page")) {
page = ObjectFormatUtil.toInteger(map.get("page"));
map.put("begin", (page - 1) * size);
}
List<DepositoryRecord> depositoryRecordByCondition = depositoryRecordMapper.findDepositoryRecordByCondition(map);
return pack(depositoryRecordByCondition, userToken);
}
/**
* 根据条件查询入库记录同时支持分页查询
*
@ -3967,7 +3875,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
* @return
*/
@Override
public List<ApplicationInRecordP> findApplicationInRecordPByCondition(Map<String, Object> map, UserByPort userToken) {
public List<ApplicationInRecordP> findApplicationInRecordPByCondition(Map<String, Object> map, UserByPort userToken,String userKey,String token) {
Integer size = 10, page = 1;
if (map.containsKey("size")) {
size = ObjectFormatUtil.toInteger(map.get("size"));
@ -3985,7 +3893,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
List<ApplicationInRecordP> result = new ArrayList<>();
for (ApplicationInRecord applicationInRecord : list) {
UserByPort userByPortById = LinkInterfaceUtil.FindUserById(applicationInRecord.getApplicantId(), userToken);
UserByPort userByPortById = LinkInterfaceUtil.FindUserById(applicationInRecord.getApplicantId(), userKey,token);
String time = DateUtil.TimeStampToDateTime(Long.valueOf(applicationInRecord.getApplicantTime()));
applicationInRecord.setApplicantName(userByPortById.getName());
applicationInRecord.setApplicantTime(time);
@ -4012,7 +3920,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
* @return
*/
@Override
public List<ApplicationInRecordP> findApplicationInRecordPByUser(UserByPort userByPort, Map<String, Object> map) {
public List<ApplicationInRecordP> findApplicationInRecordPByUser(UserByPort userByPort, Map<String, Object> map,String userKey,String token) {
Integer size = 10, page = 1;
if (map.containsKey("size")) {
size = ObjectFormatUtil.toInteger(map.get("size"));
@ -4039,7 +3947,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
List<ApplicationInRecord> list = depositoryRecordMapper.findApplicationInRecordPByUser(map);
List<ApplicationInRecordP> result = new ArrayList<>();
for (ApplicationInRecord applicationInRecord : list) {
UserByPort userByPortById = LinkInterfaceUtil.FindUserById(applicationInRecord.getApplicantId(), userByPort);
UserByPort userByPortById = LinkInterfaceUtil.FindUserById(applicationInRecord.getApplicantId(), userKey,token);
String time = DateUtil.TimeStampToDateTime(Long.valueOf(applicationInRecord.getApplicantTime()));
applicationInRecord.setApplicantName(userByPortById.getName());
applicationInRecord.setApplicantTime(time);
@ -4081,7 +3989,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
* @return
*/
@Override
public List<ApplicationOutRecordP> findApplicationOutRecordPByUser(UserByPort userByPort, Map<String, Object> map) {
public List<ApplicationOutRecordP> findApplicationOutRecordPByUser(UserByPort userByPort, Map<String, Object> map,String userKey,String token) {
if (map.containsKey("applyTime")) {
String applyTime = (String) map.get("applyTime");
map.put("applicantTime", DateUtil.DateTimeByDayToTimeStamp(applyTime));
@ -4109,7 +4017,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
List<ApplicationOutRecord> list = depositoryRecordMapper.findApplicationOutRecordPByUser(map);
List<ApplicationOutRecordP> result = new ArrayList<>();
for (ApplicationOutRecord record : list) {
UserByPort userByPortById = LinkInterfaceUtil.FindUserById(record.getApplicantId(), userByPort);
UserByPort userByPortById = LinkInterfaceUtil.FindUserById(record.getApplicantId(), userKey,token);
String time = DateUtil.TimeStampToDateTime(Long.valueOf(record.getApplicantTime()));
record.setApplicantName(userByPortById.getName());
record.setApplicantTime(time);
@ -4162,7 +4070,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
* @return
*/
@Override
public List<ApplicationOutRecordP> findApplicationOutRecordPByCondition(Map<String, Object> map, UserByPort userToken) {
public List<ApplicationOutRecordP> findApplicationOutRecordPByCondition(Map<String, Object> map, UserByPort userToken,String userKey,String token) {
Integer size = 10, page = 1;
if (map.containsKey("size")) {
size = ObjectFormatUtil.toInteger(map.get("size"));
@ -4179,7 +4087,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
List<ApplicationOutRecord> list = depositoryRecordMapper.findApplicationOutRecordPByCondition(map);
List<ApplicationOutRecordP> result = new ArrayList<>();
for (ApplicationOutRecord recordP : list) {
UserByPort userByPortById = LinkInterfaceUtil.FindUserById(recordP.getApplicantId(), userToken);
UserByPort userByPortById = LinkInterfaceUtil.FindUserById(recordP.getApplicantId(), userKey,token);
String time = DateUtil.TimeStampToDateTime(Long.valueOf(recordP.getApplicantTime()));
recordP.setApplicantName(userByPortById.getName());
recordP.setApplicantTime(time);
@ -4267,7 +4175,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
* @return 我的任务
*/
@Override
public List<SimpleApplicationOutOrInRecordP> findMyTaskOut(Map<String, Object> map, UserByPort userToken) {
public List<SimpleApplicationOutOrInRecordP> findMyTaskOut(Map<String, Object> map, String userKey,String token) {
Integer size = 10, page = 1;
if (map.containsKey("size")) {
size = ObjectFormatUtil.toInteger(map.get("size"));
@ -4278,7 +4186,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
map.put("begin", (page - 1) * size);
}
List<SimpleApplicationOutRecord> myTaskOut = depositoryRecordMapper.findMyTaskOut(map);
return simplePackOut(myTaskOut, userToken);
return simplePackOut(myTaskOut, userKey,token);
}
/**
@ -4288,7 +4196,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
* @return 我的任务
*/
@Override
public List<SimpleApplicationOutOrInRecordP> findMyTaskIn(Map<String, Object> map, UserByPort userToken) {
public List<SimpleApplicationOutOrInRecordP> findMyTaskIn(Map<String, Object> map, String userKey,String token) {
Integer size = 10, page = 1;
if (map.containsKey("size")) {
size = ObjectFormatUtil.toInteger(map.get("size"));
@ -4299,7 +4207,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
map.put("begin", (page - 1) * size);
}
List<SimpleApplicationInRecord> myTaskIn = depositoryRecordMapper.findMyTaskIn(map);
return simplePackIn(myTaskIn, userToken);
return simplePackIn(myTaskIn, userKey,token);
}
/**
@ -4375,59 +4283,6 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
return depositoryRecordMapper.findCountByCondition(map);
}
/**
* 计算物料总数
*
* @return
*/
@Override
public Double CalculateAllCount(Integer type, String state) {
List<DepositoryRecord> depositoryRecordAll = depositoryRecordMapper.findDepositoryRecordAll();
Double sum = 0.0;
if (state.isEmpty()) {
for (int i = 0; i < depositoryRecordAll.size(); i++) {
if (Integer.compare(depositoryRecordAll.get(i).getType(), type) == 0) {
sum += depositoryRecordAll.get(i).getQuantity();
}
}
} else {
for (int i = 0; i < depositoryRecordAll.size(); i++) {
if (Integer.compare(depositoryRecordAll.get(i).getType(), type) == 0 && state.equals(depositoryRecordAll.get(i).getState())) {
sum += depositoryRecordAll.get(i).getQuantity();
}
}
}
BigDecimal bg = new BigDecimal(sum);
sum = bg.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
return sum;
}
/**
* 计算物料总额
*
* @return
*/
@Override
public Double CalculateAllPrice(Integer type, String state) {
List<DepositoryRecord> depositoryRecordAll = depositoryRecordMapper.findDepositoryRecordAll();
Double sum = 0.0;
if (state.isEmpty()) {
for (int i = 0; i < depositoryRecordAll.size(); i++) {
if (Integer.compare(depositoryRecordAll.get(i).getType(), type) == 0) {
sum += (depositoryRecordAll.get(i).getPrice() / 100);
}
}
} else {
for (int i = 0; i < depositoryRecordAll.size(); i++) {
if (Integer.compare(depositoryRecordAll.get(i).getType(), type) == 0 && state.equals(depositoryRecordAll.get(i).getState())) {
sum += (depositoryRecordAll.get(i).getPrice() / 100);
}
}
}
BigDecimal bg = new BigDecimal(sum);
sum = bg.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
return sum;
}
/**
* 计算入库物料总额
@ -4461,77 +4316,6 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
return result;
}
/**
* 计算出库物料总额
*
* @param state
* @return
*/
@Override
public Double CalculateAllApplicationOutPrice(String state) {
List<ApplicationOutRecord> applicationOutRecordPAll = depositoryRecordMapper.findApplicationOutRecordPAll();
double sum = 0.0;
if (state.isEmpty()) {
// 如果要获取所有待出库的金额
for (ApplicationOutRecord applicationOutRecordP : applicationOutRecordPAll) {
// 获取所有子物料
Map<String, Object> map = new HashMap<>();
map.put("parentId", applicationOutRecordP.getId());
List<ApplicationOutRecordMin> minByCondition = depositoryRecordMapper.findApplicationOutMinByCondition(map);
for (ApplicationOutRecordMin applicationOutRecordMin : minByCondition) {
Integer mid = applicationOutRecordMin.getMid();
Material materialById = materialMapper.findMaterialById(mid);
if (materialById.getPrice() != null) {
sum += (materialById.getPrice() / 100) * ((double) applicationOutRecordMin.getQuantity() / 100);
} else {
sum += 0;
}
}
}
} else {
// 如果要获取已完成的金额
List<ApplicationOutRecordMin> applicationOutMinForComplete = depositoryRecordMapper.findApplicationOutMinForComplete(null);
for (int i = 0; i < applicationOutMinForComplete.size(); i++) {
ApplicationOutRecordMin recordMin = applicationOutMinForComplete.get(i);
Integer mid = recordMin.getMid();
Material materialById = materialMapper.findMaterialById(mid);
if (materialById.getPrice() != null) {
sum += (materialById.getPrice() / 100) * recordMin.getQuantity();
} else {
sum += 0;
}
}
}
BigDecimal bg = new BigDecimal(sum);
sum = bg.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
return sum;
}
/**
* 获取一段时间内的库存额度
*
* @param start
* @param end
* @param type
* @param depositoryId
* @return
*/
@Override
public Double findDepositoryRecordByDate(Long end, Long start, Integer type, Integer depositoryId) {
Map<String, Object> map = new HashMap<>();
map.put("start", start);
map.put("end", end);
map.put("type", type);
map.put("depositoryId", depositoryId);
if (type == 1) {
map.put("state", "已入库");
} else if (type == 2) {
map.put("state", "已出库");
}
return depositoryRecordMapper.findDepositoryRecordByDate(map);
}
/**
* 获取一段时间内的库存额度
@ -4594,16 +4378,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
return depositoryRecordMapper.findApplicationOutRecordByDate(map);
}
/**
* 根据条件获取月份中物料的总额
*
* @param map
* @return
*/
@Override
public Integer findMaterialCountByMonth(Map<String, Object> map) {
return depositoryRecordMapper.findMaterialCountByMonth(map);
}
/**
* 根据条件获取月份中的仓库库存数
@ -4633,16 +4408,6 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
return sumCount;
}
/**
* 查询仓库当天流水
*
* @return
*/
@Override
public Integer findWarehouseRecord(Map<String, Object> map) {
return depositoryRecordMapper.findWarehouseRecord(map);
}
/**
* 根据id查询入库记录
*
@ -4975,11 +4740,11 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
* @param list SimpleDepositoryRecord集合
* @return 包装好的集合
*/
private List<SimpleApplicationOutOrInRecordP> simplePackOut(List<SimpleApplicationOutRecord> list, UserByPort userToken) {
private List<SimpleApplicationOutOrInRecordP> simplePackOut(List<SimpleApplicationOutRecord> list, String userKey,String token) {
List<SimpleApplicationOutOrInRecordP> result = new ArrayList<>(list.size());
for (SimpleApplicationOutRecord record : list) {
SimpleApplicationOutOrInRecordP d = new SimpleApplicationOutOrInRecordP(record);
UserByPort userByPort = LinkInterfaceUtil.FindUserById(record.getApplicantId(), userToken);
UserByPort userByPort = LinkInterfaceUtil.FindUserById(record.getApplicantId(), userKey,token);
d.setApplyRemark(d.getApplyRemark() == null ? "" : d.getApplyRemark());
d.setApplicantName(userByPort.getName());
result.add(d);
@ -4987,11 +4752,11 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
return result;
}
private List<SimpleApplicationOutOrInRecordP> simplePackIn(List<SimpleApplicationInRecord> list, UserByPort userToken) {
private List<SimpleApplicationOutOrInRecordP> simplePackIn(List<SimpleApplicationInRecord> list,String userKey,String token) {
List<SimpleApplicationOutOrInRecordP> result = new ArrayList<>(list.size());
for (SimpleApplicationInRecord record : list) {
SimpleApplicationOutOrInRecordP d = new SimpleApplicationOutOrInRecordP(record);
UserByPort userByPort = LinkInterfaceUtil.FindUserById(record.getApplicantId(), userToken);
UserByPort userByPort = LinkInterfaceUtil.FindUserById(record.getApplicantId(), userKey,token);
d.setApplyRemark(d.getApplyRemark() == null ? "" : d.getApplyRemark());
d.setApplicantName(userByPort.getName());
result.add(d);
@ -5005,25 +4770,25 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
* @param list DepositoryRecord集合
* @return 包装好的集合
*/
private List<DepositoryRecordP> pack(List<DepositoryRecord> list, UserByPort userByPort) {
private List<DepositoryRecordP> pack(List<DepositoryRecord> list,String userKey,String token) {
List<DepositoryRecordP> result = new ArrayList<>(list.size());
for (DepositoryRecord record : list) {
result.add(singlePack(record, userByPort));
result.add(singlePack(record, userKey,token));
}
return result;
}
private DepositoryRecordP singlePack(DepositoryRecord record, UserByPort userByPort) {
private DepositoryRecordP singlePack(DepositoryRecord record,String userKey,String token) {
DepositoryRecordP d = new DepositoryRecordP(record);
UserByPort getApplicantUser = LinkInterfaceUtil.FindUserById(record.getApplicantId(), userByPort);
UserByPort getApplicantUser = LinkInterfaceUtil.FindUserById(record.getApplicantId(), userKey,token);
d.setApplicantName(getApplicantUser.getName());
d.setDepositoryName(depositoryMapper.findDepositoryNameById(record.getDepositoryId()));
if (record.getReviewerId() != null) {
UserByPort reviewerUser = LinkInterfaceUtil.FindUserById(record.getReviewerId(), userByPort);
UserByPort reviewerUser = LinkInterfaceUtil.FindUserById(record.getReviewerId(), userKey,token);
d.setReviewerName(reviewerUser.getName());
}
if (record.getCheckerId() != null) {
UserByPort checkerUser = LinkInterfaceUtil.FindUserById(record.getCheckerId(), userByPort);
UserByPort checkerUser = LinkInterfaceUtil.FindUserById(record.getCheckerId(), userKey,token);
d.setCheckerName(checkerUser.getName());
}
return d;

14
src/main/java/com/dreamchaser/depository_manage/service/impl/DepositoryServiceImpl.java

@ -47,7 +47,7 @@ public class DepositoryServiceImpl implements DepositoryService {
* @return 影响条数
*/
@Override
public Integer insertDepository(Map<String, Object> map, UserByPort userByPort) {
public Integer insertDepository(Map<String, Object> map, String userKey,String token) {
// 获取当前仓库拼音首字母
String dname = (String) map.get("dname");
String dnamePinYin = WordUtil.getPinYinHeadChar(dname);
@ -61,12 +61,12 @@ public class DepositoryServiceImpl implements DepositoryService {
List<Depository> condition = depositoryMapper.findDepositoryByCondition(temp);
// 公司编号
Integer cid = ObjectFormatUtil.toInteger(map.get("cid"));
String companyName = LinkInterfaceUtil.getCompany(cid, userByPort).getName();
String companyName = LinkInterfaceUtil.getCompany(cid, userKey,token).getName();
String adminorgName = "";
// 部门编号
if (!"".equals(map.get("adminorg"))) {
Integer adminorg = ObjectFormatUtil.toInteger(map.get("adminorg"));
adminorgName = LinkInterfaceUtil.getCompany(adminorg, userByPort).getName();
adminorgName = LinkInterfaceUtil.getCompany(adminorg, userKey,token).getName();
}
// 公司简称
companyName = WordUtil.getPinYinHeadChar(companyName);
@ -98,13 +98,13 @@ public class DepositoryServiceImpl implements DepositoryService {
// 部门编号
if (!"".equals(map.get("adminorg"))) {
Integer adminorg = ObjectFormatUtil.toInteger(map.get("adminorg"));
adminorgName = LinkInterfaceUtil.getCompany(adminorg, userByPort).getName();
adminorgName = LinkInterfaceUtil.getCompany(adminorg, userKey,token).getName();
adminorgName = WordUtil.getPinYinHeadChar(adminorgName).substring(0, 2);
}
// 获取父仓库编码
String parentCode = depositoryId.getCode();
if (!parentCode.contains(adminorgName)) {
StringBuffer sb = new StringBuffer(parentCode);
StringBuilder sb = new StringBuilder(parentCode);
sb.insert(2, adminorgName);
parentCode = sb.toString();
}
@ -132,7 +132,7 @@ public class DepositoryServiceImpl implements DepositoryService {
* @return 影响条数
*/
@Override
public List<Depository> findDepositoryByCondition(Map<String, Object> map, UserByPort userByPort) {
public List<Depository> findDepositoryByCondition(Map<String, Object> map, String userKey,String token) {
Integer size = 10, page = 1;
if (map.containsKey("size")) {
size = ObjectFormatUtil.toInteger(map.get("size"));
@ -150,7 +150,7 @@ public class DepositoryServiceImpl implements DepositoryService {
List<Depository> list = depositoryMapper.findDepositoryByCondition(map);
for (Depository depository : list) {
if (!depository.getAdminorg().isEmpty()) {
Administration company = LinkInterfaceUtil.getCompany(ObjectFormatUtil.toInteger(depository.getAdminorg()), userByPort);
Administration company = LinkInterfaceUtil.getCompany(ObjectFormatUtil.toInteger(depository.getAdminorg()), userKey,token);
depository.setAdminorgName(company.getName());
}
}

10
src/main/java/com/dreamchaser/depository_manage/service/impl/ExcelServiceImpl.java

@ -413,11 +413,11 @@ public class ExcelServiceImpl implements ExcelService {
* 用于出库订单填充
*
* @param id 待打印出库订单id
* @param userToken 调用接口人员
* @param pageSize 一张最多打印条数
*/
@Override
public List<String> writeExcelForPrint(Integer id, Integer pageSize, UserByPort userToken) {
public List<String> writeExcelForPrint(Integer id, Integer pageSize,UserByPort userToken,String userKey,String token) {
// 生成的表格名称列表
List<String> fileNameList = new ArrayList<>();
@ -452,7 +452,7 @@ public class ExcelServiceImpl implements ExcelService {
// 设置单号
excelInfoByWrite.setCode(record.getCode());
// 获取当前出库单申请人
UserByPort applicanter = LinkInterfaceUtil.FindUserById(record.getApplicantId(), userToken);
UserByPort applicanter = LinkInterfaceUtil.FindUserById(record.getApplicantId(), userKey,token);
// 设置申请人名称
excelInfoByWrite.setApplicantName(applicanter.getName());
// 获取施工单位Id
@ -473,7 +473,7 @@ public class ExcelServiceImpl implements ExcelService {
if ("".equals(s)) {
continue;
}
UserByPort checker = LinkInterfaceUtil.FindUserById(ObjectFormatUtil.toInteger(s), userToken);
UserByPort checker = LinkInterfaceUtil.FindUserById(ObjectFormatUtil.toInteger(s), userKey,token);
sb.append(checker.getName());
}
// 设置审核人名称
@ -487,7 +487,7 @@ public class ExcelServiceImpl implements ExcelService {
Integer adminorgId = record.getAdminorgId();
if (adminorgId != null) {
Administration company = LinkInterfaceUtil.getCompany(adminorgId, userToken);
Administration company = LinkInterfaceUtil.getCompany(adminorgId, userKey,token);
// 设置部门名称
excelInfoByWrite.setAdminorgName(company.getName());
} else {

10
src/main/java/com/dreamchaser/depository_manage/service/impl/GroupServiceImpl.java

@ -577,7 +577,7 @@ public class GroupServiceImpl implements GroupService {
*/
@Override
@Transactional(rollbackFor = Exception.class)
public Integer insertApplicationOutRecord(Map<String, Object> map, UserByPort userToken) {
public Integer insertApplicationOutRecord(Map<String, Object> map, UserByPort userToken,String userKey,String token) {
// 用于存储出库数据
Map<String, Object> paramForOut = new HashMap<>();
@ -673,7 +673,7 @@ public class GroupServiceImpl implements GroupService {
paramForOut.put("state", "待部门负责人审核");
paramForOut.put("applyRemark", map.get("applyRemark"));
// 获取当前部门名称
Administration company = LinkInterfaceUtil.getCompany(userToken.getMaindeparment(), userToken);
Administration company = LinkInterfaceUtil.getCompany(userToken.getMaindeparment(), userKey,token);
// 构造出库订单编码
String code = createOutCode("outOrderNumber", company.getName());
paramForOut.put("code", code);
@ -735,7 +735,7 @@ public class GroupServiceImpl implements GroupService {
*/
@Transactional(rollbackFor = Exception.class)
@Override
public Integer insertApplicationInRecord(Map<String, Object> map, UserByPort userToken, String userAgent) {
public Integer insertApplicationInRecord(Map<String, Object> map, UserByPort userToken, String userAgent,String userKey,String token) {
// 获取当前提交数
@ -822,14 +822,14 @@ public class GroupServiceImpl implements GroupService {
for (RoleAndMaterialType mt : materialTypeIdForIn
) {
// 获取管理员数据
UserByPort userByPort = LinkInterfaceUtil.FindUserById(mt.getUid(), userToken);
UserByPort userByPort = LinkInterfaceUtil.FindUserById(mt.getUid(), userKey,token);
String workwechat = userByPort.getWorkwechat();
if (workwechat == null || "".equals(workwechat)) {
workwechat = userByPort.getWechat();
}
sb.append(workwechat).append(",");
}
JSONObject jsonObject = qyWxOperationService.sendApprovalTemplateIn(userAgent, userToken, integerList, sb.toString());
JSONObject jsonObject = qyWxOperationService.sendApprovalTemplateIn(userAgent, userToken, integerList, sb.toString(),userKey,token);
String sp_no = jsonObject.getString("sp_no");
Map<String, Object> QyWxApprovalMap = new HashMap<>();
QyWxApprovalMap.put("sp_no", sp_no);

16
src/main/java/com/dreamchaser/depository_manage/service/impl/NoticeServiceImpl.java

@ -61,7 +61,7 @@ public class NoticeServiceImpl implements NoticeService {
* @return 符合条件的公告列表
*/
@Override
public List<NoticeP> findNoticeByCondition(Map<String, Object> map, UserByPort userByPort) {
public List<NoticeP> findNoticeByCondition(Map<String, Object> map, UserByPort userByPort,String userKey,String token) {
Integer size = 10, page = 1;
if (map.containsKey("size")) {
@ -96,7 +96,7 @@ public class NoticeServiceImpl implements NoticeService {
JSONObject userPortByQyWx = PublicConfig.getUserPortByQyWx(userByPort.getMaindeparment());
Integer portByQyWxInteger = userPortByQyWx.getInteger("wechatorganizationid");
for (Notice value : notice) {
UserByPort user = LinkInterfaceUtil.FindUserById(value.getUserId(), null);
UserByPort user = LinkInterfaceUtil.FindUserById(value.getUserId(), userKey,token);
// 获取可见范围的
String viewRangeId = value.getViewRangeId();
// 分割
@ -123,7 +123,7 @@ public class NoticeServiceImpl implements NoticeService {
* @return 符合条件的公告列表
*/
@Override
public List<NoticeP> findAllNoticeForUser(Map<String, Object> map, UserByPort userByPort) {
public List<NoticeP> findAllNoticeForUser(Map<String, Object> map, UserByPort userByPort,String userKey,String token) {
Integer size = 10, page = 1;
if (map.containsKey("size")) {
size = ObjectFormatUtil.toInteger(map.get("size"));
@ -157,7 +157,7 @@ public class NoticeServiceImpl implements NoticeService {
List<Notice> notice = noticeMapper.findNoticeByUser(map);
List<NoticeP> result = new ArrayList<>();
for (Notice value : notice) {
UserByPort user = LinkInterfaceUtil.FindUserById(value.getUserId(), null);
UserByPort user = LinkInterfaceUtil.FindUserById(value.getUserId(), userKey,token);
NoticeP np = new NoticeP(value);
np.setUserName(user.getName());
result.add(np);
@ -172,7 +172,7 @@ public class NoticeServiceImpl implements NoticeService {
* @return
*/
@Override
public List<NoticeP> findNoticeByUnRead(UserByPort userByPort) {
public List<NoticeP> findNoticeByUnRead(UserByPort userByPort,String userKey,String token) {
Map<String, Object> map = new HashMap<>();
String workwechat = userByPort.getWorkwechat();
if (workwechat == null || "".equals(workwechat)) {
@ -183,7 +183,7 @@ public class NoticeServiceImpl implements NoticeService {
List<Notice> noticeByUser = noticeMapper.findNoticeByUser(map);
List<NoticeP> result = new ArrayList<>();
for (Notice value : noticeByUser) {
UserByPort user = LinkInterfaceUtil.FindUserById(value.getUserId(), null);
UserByPort user = LinkInterfaceUtil.FindUserById(value.getUserId(), userKey,token);
// 获取可见范围的
NoticeP np = new NoticeP(value);
np.setUserName(user.getName());
@ -200,11 +200,11 @@ public class NoticeServiceImpl implements NoticeService {
* @return
*/
@Override
public NoticeP findNoticeById(Integer id) {
public NoticeP findNoticeById(Integer id,String userKey,String token) {
Notice noticeById = noticeMapper.findNoticeById(id);
NoticeP noticeP = new NoticeP(noticeById);
// 获取发起人
UserByPort user = LinkInterfaceUtil.FindUserById(noticeById.getUserId(), null);
UserByPort user = LinkInterfaceUtil.FindUserById(noticeById.getUserId(), userKey,token);
noticeP.setUserName(user.getName());
return noticeP;
}

62
src/main/java/com/dreamchaser/depository_manage/service/impl/QyWxOperationService.java

@ -57,14 +57,14 @@ public class QyWxOperationService {
* @param flag 用于判断发送类型是部门负责人还是仓储负责人(true为部门false为仓储)
* @return
*/
public JSONObject sendQyWxToApplicationOutMessage(String uid, Integer outId, Boolean flag, String userAgent) {
public JSONObject sendQyWxToApplicationOutMessage(String uid, Integer outId, Boolean flag, String userAgent,String userKey,String token) {
// 获取将要发送申请的订单记录
ApplicationOutRecord applicationOutRecordPById = depositoryRecordMapper.findApplicationOutRecordPById(outId);
// 申请人id
Integer applicantId = applicationOutRecordPById.getApplicantId();
// 申请人
UserByPort applicant = LinkInterfaceUtil.FindUserById(applicantId, null);
UserByPort applicant = LinkInterfaceUtil.FindUserById(applicantId, userKey,token);
// 获取所有子订单
List<ApplicationOutRecordMin> applicationOutRecordMinByParent = depositoryRecordMapper.findApplicationOutRecordMinByParent(outId);
@ -249,7 +249,7 @@ public class QyWxOperationService {
* @param mainId 盘点记录编号
* @return
*/
public JSONObject sendQyWxToStockTakingDepartmentManagerMessage(String uid, Integer mainId, String userAgent) {
public JSONObject sendQyWxToStockTakingDepartmentManagerMessage(String uid, Integer mainId, String userAgent,String userKey,String token) {
// 获取盘点主记录
StockTaking mainRecord = stockTakingMapper.selectStockTakingById(mainId);
@ -259,7 +259,7 @@ public class QyWxOperationService {
// 申请人id
Integer getOriginator = mainRecord.getOriginator();
// 申请人
UserByPort originator = LinkInterfaceUtil.FindUserById(getOriginator, null);
UserByPort originator = LinkInterfaceUtil.FindUserById(getOriginator, userKey,token);
// 盘点物料名称
StringBuilder mname = new StringBuilder();
@ -482,7 +482,7 @@ public class QyWxOperationService {
* @param mainId 盘点记录编号
* @return
*/
public JSONObject sendQyWxToStockTakingMessage(String uid, Integer mainId, List<Long> normalMinId, String userAgent) {
public JSONObject sendQyWxToStockTakingMessage(String uid, Integer mainId, List<Long> normalMinId, String userAgent,String userKey,String token) {
// 获取盘点主记录
StockTaking mainRecord = stockTakingMapper.selectStockTakingById(mainId);
@ -496,7 +496,7 @@ public class QyWxOperationService {
// 申请人id
Integer getOriginator = mainRecord.getOriginator();
// 申请人
UserByPort originator = LinkInterfaceUtil.FindUserById(getOriginator, null);
UserByPort originator = LinkInterfaceUtil.FindUserById(getOriginator, userKey,token);
// 盘点物料名称
StringBuilder mname = new StringBuilder();
@ -718,13 +718,13 @@ public class QyWxOperationService {
* @param outId 订单编号
* @return
*/
public JSONObject sendCcMessageToUsers(String uid, Integer outId, String userAgent) {
public JSONObject sendCcMessageToUsers(String uid, Integer outId, String userAgent,String userKey,String token) {
// 获取已经完成的订单
ApplicationOutRecord recordP = depositoryRecordMapper.findApplicationOutRecordPById(outId);
// 申请人id
Integer applicantId = recordP.getApplicantId();
// 申请人
UserByPort applicant = LinkInterfaceUtil.FindUserById(applicantId, null);
UserByPort applicant = LinkInterfaceUtil.FindUserById(applicantId, userKey,token);
// 获取所有子订单
List<ApplicationOutRecordMin> applicationOutRecordMinByParent = depositoryRecordMapper.findApplicationOutRecordMinByParent(outId);
@ -758,7 +758,7 @@ public class QyWxOperationService {
// 获取仓库信息
Depository depositoryRecordById = depositoryMapper.findDepositoryById(recordMin.getDepositoryId());
// 获取处理人信息
UserByPort userByPort = LinkInterfaceUtil.FindUserById(recordMin.getCheckId(), null);
UserByPort userByPort = LinkInterfaceUtil.FindUserById(recordMin.getCheckId(), userKey,token);
// 获取对应出库单位
String unit = recordMin.getUnit();
@ -801,7 +801,7 @@ public class QyWxOperationService {
* @param map
* @return
*/
public JSONObject sendCcStockTakingMessageToHead(String uid, Map<String, Object> map, UserByPort userToken, StockTaking mainRecord, String userAgent) {
public JSONObject sendCcStockTakingMessageToHead(String uid, Map<String, Object> map, UserByPort userToken, StockTaking mainRecord, String userAgent,String userKey,String token) {
/**
* 获取完成的订单
@ -828,7 +828,7 @@ public class QyWxOperationService {
// 抄送内容
StringBuilder content = new StringBuilder("## `抄送信息:`%n");
// 获取发起人信息
UserByPort originator = LinkInterfaceUtil.FindUserById(mainRecord.getOriginator(), userToken);
UserByPort originator = LinkInterfaceUtil.FindUserById(mainRecord.getOriginator(), userKey,token);
// 设置content
content.append(">### **").append(originator.getName()).append("的物料调账记录** %n<font color='warning'>时间:").append(DateUtil.TimeStampToDateTime(mainRecord.getCreateTime())).append("</font> %n");
@ -915,7 +915,7 @@ public class QyWxOperationService {
* @param mainRecord 主订单
* @return
*/
public JSONObject sendStockTakingErrMessageToHead(String uid, List<Long> errIds, StockTaking mainRecord, UserByPort userToken, String userAgent) {
public JSONObject sendStockTakingErrMessageToHead(String uid, List<Long> errIds, StockTaking mainRecord, UserByPort userToken, String userAgent,String userKey,String token) {
MessageByMarkDown markDown = new MessageByMarkDown();
//设置消息接收者
@ -937,7 +937,7 @@ public class QyWxOperationService {
// 抄送内容
StringBuilder content = new StringBuilder("## `盘点发生错误:`%n");
// 获取发起人信息
UserByPort originator = LinkInterfaceUtil.FindUserById(mainRecord.getOriginator(), userToken);
UserByPort originator = LinkInterfaceUtil.FindUserById(mainRecord.getOriginator(), userKey,token);
// 设置content
content.append(">### **" + originator.getName() + "的物料盘点记录** %n<font color='warning'>时间:" + DateUtil.TimeStampToDateTime(mainRecord.getCreateTime()) + "</font> %n");
@ -1008,7 +1008,7 @@ public class QyWxOperationService {
* @param map
* @return
*/
public JSONObject sendCcStockTakingTransferMessageToHead(String uid, Map<String, Object> map, UserByPort userToken, StockTaking mainRecord, String userAgent) {
public JSONObject sendCcStockTakingTransferMessageToHead(String uid, Map<String, Object> map, UserByPort userToken, StockTaking mainRecord, String userAgent,String userKey,String token) {
/**
* 获取要转移的订单
@ -1035,7 +1035,7 @@ public class QyWxOperationService {
// 抄送内容
StringBuilder content = new StringBuilder("## `抄送信息:`%n");
// 获取发起人信息
UserByPort originator = LinkInterfaceUtil.FindUserById(mainRecord.getOriginator(), userToken);
UserByPort originator = LinkInterfaceUtil.FindUserById(mainRecord.getOriginator(), userKey,token);
// 设置content
content.append(">### **" + originator.getName() + "的物料转移记录** %n<font color='warning'>时间:" + DateUtil.TimeStampToDateTime(mainRecord.getCreateTime()) + "</font> %n");
@ -1137,7 +1137,7 @@ public class QyWxOperationService {
}
public TemplateCard_text_notice getTextNoticeCard(Integer outMinId, Integer quantity) {
public TemplateCard_text_notice getTextNoticeCard(Integer outMinId, Integer quantity,String userKey,String token) {
// 需要出库的子订单
ApplicationOutRecordMin recordMin = depositoryRecordMapper.findApplicationOutMinById(outMinId);
// 获取其主订单
@ -1145,7 +1145,7 @@ public class QyWxOperationService {
// 申请人id
Integer applicantId = outRecordP.getApplicantId();
// 申请人
UserByPort applicant = LinkInterfaceUtil.FindUserById(applicantId, null);
UserByPort applicant = LinkInterfaceUtil.FindUserById(applicantId, userKey,token);
// 定义卡片模板
TemplateCard_text_notice text_notice = new TemplateCard_text_notice();
@ -1265,7 +1265,7 @@ public class QyWxOperationService {
* @param outMinId
* @return
*/
public JSONObject sendNotificationToDepositoryManager(String uid, Integer outMinId, String userAgent) {
public JSONObject sendNotificationToDepositoryManager(String uid, Integer outMinId, String userAgent,String userKey,String token) {
// 定义文本通知型卡片
TextNotice textNotice = new TextNotice();
@ -1285,7 +1285,7 @@ public class QyWxOperationService {
textNotice.setMsgtype("template_card");
// 获取卡片模板
TemplateCard_text_notice text_notice = getTextNoticeCard(outMinId, null);
TemplateCard_text_notice text_notice = getTextNoticeCard(outMinId, null,userKey,token);
textNotice.setTemplate_card(text_notice);
String s = JSONObject.toJSONString(textNotice);
@ -1352,14 +1352,14 @@ public class QyWxOperationService {
}
public JSONObject updateTemplateCardToQuantity(String response_code, Integer quantity, String userAgent, Integer outMinId) {
public JSONObject updateTemplateCardToQuantity(String response_code, Integer quantity, String userAgent, Integer outMinId,String userKey,String token) {
String url = String.format("https://qyapi.weixin.qq.com/cgi-bin/message/update_template_card?access_token=" + QyWxConfig.GetQYWXToken(userAgent) + "&debug=1");
Map<String, Object> map = new HashMap<>();
map.put("atall", 1);
map.put("agentid", QyWxConfig.AgentId);
map.put("response_code", response_code);
map.put("enable_id_trans", 0);
TemplateCard_text_notice text_notice = getTextNoticeCard(outMinId, quantity);
TemplateCard_text_notice text_notice = getTextNoticeCard(outMinId, quantity,userKey,token);
map.put("template_card", text_notice);
String jsonString = JSONObject.toJSONString(map);
System.out.println(jsonString);
@ -1393,7 +1393,7 @@ public class QyWxOperationService {
* @param mainId 出库的主订单
* @return 发送结果
*/
public JSONObject sendOutApprovalTemplate(String userAgent, UserByPort userToken, Integer mainId) {
public JSONObject sendOutApprovalTemplate(String userAgent, UserByPort userToken, Integer mainId,String userKey,String token) {
// 获取当前出库主订单
ApplicationOutRecord mainRecord = depositoryRecordMapper.findApplicationOutRecordPById(mainId);
@ -1428,7 +1428,7 @@ public class QyWxOperationService {
List<String> userIdList = new ArrayList<>();
List<UserByPort> departmentHeadForUserToken = PublicConfig.findDepartmentHeadByUser(userToken.getMaindeparment(), userToken);
List<UserByPort> departmentHeadForUserToken = PublicConfig.findDepartmentHeadByUser(userToken.getMaindeparment(),userKey,token );
for (UserByPort departmentHead : departmentHeadForUserToken
) {
String departmentHeadWorkwechat = departmentHead.getWorkwechat();
@ -1770,7 +1770,7 @@ public class QyWxOperationService {
// 获取当前仓库所属的部门
String adminorg = depositoryById.getAdminorg();
List<UserByPort> departmentHeadByUser = PublicConfig.findDepartmentHeadByUser(ObjectFormatUtil.toInteger(adminorg), userToken);
List<UserByPort> departmentHeadByUser = PublicConfig.findDepartmentHeadByUser(ObjectFormatUtil.toInteger(adminorg), userKey,token);
for (UserByPort departmentHead : departmentHeadByUser
) {
String departmentHeadWorkwechat = departmentHead.getWorkwechat();
@ -1802,7 +1802,7 @@ public class QyWxOperationService {
for (Integer userId : userIdByDid
) {
// 获取对应管理员信息
UserByPort userByPort = LinkInterfaceUtil.FindUserById(userId, userToken);
UserByPort userByPort = LinkInterfaceUtil.FindUserById(userId, userKey,token);
String user = userByPort.getWorkwechat();
if (user == null || "".equals(user)) {
user = userByPort.getWechat();
@ -1845,7 +1845,7 @@ public class QyWxOperationService {
* @param QyWxUid 接收人
* @return
*/
public JSONObject sendApprovalTemplateIn(String userAgent, UserByPort userToken, List<Integer> recordIdList, String QyWxUid) {
public JSONObject sendApprovalTemplateIn(String userAgent, UserByPort userToken, List<Integer> recordIdList, String QyWxUid,String userKey,String token) {
// 获取当前出库明细
List<ApplicationInRecord> minRecordList = depositoryRecordMapper.findApplicationInRecordsByIds(recordIdList);
@ -1858,7 +1858,7 @@ public class QyWxOperationService {
// 获取申请人的userId
UserByPort userByPort = LinkInterfaceUtil.FindUserById(minRecordList.get(0).getApplicantId(), null);
UserByPort userByPort = LinkInterfaceUtil.FindUserById(minRecordList.get(0).getApplicantId(), userKey,token);
String workwechat = userByPort.getWorkwechat();
if (workwechat == null || "".equals(workwechat)) {
workwechat = userByPort.getWechat();
@ -2618,7 +2618,7 @@ public class QyWxOperationService {
* @param userAgent md5加密后user-agent
* @return
*/
public JSONObject sendNoticeForAllUser(Integer nid, String userAgent) {
public JSONObject sendNoticeForAllUser(Integer nid, String userAgent,String userKey,String token) {
// 获取当前要发生的公告信息
Notice noticeById = noticeMapper.findNoticeById(nid);
TextTemplateCard textTemplateCard = new TextTemplateCard();
@ -2637,7 +2637,7 @@ public class QyWxOperationService {
textCardContent.setTitle(noticeById.getTitle());
String noticeContent = "<div class='gray'>" + DateUtil.TimeStampToDateTime(noticeById.getTime()) +
"</div><div class='normal'>" + noticeById.getContent() + "</div><div class='highlight'>" +
LinkInterfaceUtil.FindUserById(noticeById.getUserId(), null).getName() + "</div>";
LinkInterfaceUtil.FindUserById(noticeById.getUserId(), userKey,token).getName() + "</div>";
// 设置内容
textCardContent.setDescription(noticeContent);
// 设置点击后跳转的链接
@ -2675,7 +2675,7 @@ public class QyWxOperationService {
* @param flag 标志当前是什么申请 1出库2盘点
* @return
*/
public JSONObject sendMessageForOtherUserByCard(Integer mainId, String uid, String userAgent, Integer flag) {
public JSONObject sendMessageForOtherUserByCard(Integer mainId, String uid, String userAgent, Integer flag,String userKey,String token) {
// 获取当前申请主订单
ApplicationOutRecord aorp = null;
@ -2722,7 +2722,7 @@ public class QyWxOperationService {
applicantTime = stockTaking.getCreateTime();
tempMessageTitle = "库存盘点审批";
}
UserByPort userByPort = LinkInterfaceUtil.FindUserById(applicantId, null);
UserByPort userByPort = LinkInterfaceUtil.FindUserById(applicantId, userKey,token);
// 设置content
content.append(">### **%n<font color='warning'>对于" + userByPort.getName() + "在" + DateUtil.TimeStampToDateTime(applicantTime) + "提起" + tempMessageTitle + "的转至应用发送的消息进行审批,审批应用中的流程请忽略</font> %n**");
content.append("%n---%n");

50
src/main/java/com/dreamchaser/depository_manage/service/impl/StockTakingServiceImpl.java

@ -247,7 +247,7 @@ public class StockTakingServiceImpl implements StockTakingService {
* @return 我的任务
*/
@Override
public List<SimpleStockTakingP> findMyTask(Map<String, Object> map, UserByPort userToken) {
public List<SimpleStockTakingP> findMyTask(Map<String, Object> map, String userKey,String token) {
Integer size = 10, page = 1;
if (map.containsKey("size")) {
size = ObjectFormatUtil.toInteger(map.get("size"));
@ -264,7 +264,7 @@ public class StockTakingServiceImpl implements StockTakingService {
SimpleStockTakingP ssp = new SimpleStockTakingP(stockTaking);
Depository depositoryRecordById = depositoryMapper.findDepositoryById(stockTaking.getDepositoryId());
ssp.setDepositoryName(depositoryRecordById.getDname());
UserByPort userByPort = LinkInterfaceUtil.FindUserById(stockTaking.getOriginator(), userToken);
UserByPort userByPort = LinkInterfaceUtil.FindUserById(stockTaking.getOriginator(), userKey,token);
ssp.setOriginatorName(userByPort.getName());
stockTakingPS.add(ssp);
}
@ -290,7 +290,7 @@ public class StockTakingServiceImpl implements StockTakingService {
* @return 我的任务
*/
@Override
public List<SimpleStockTakingP> findMyApply(Map<String, Object> map, UserByPort userToken) {
public List<SimpleStockTakingP> findMyApply(Map<String, Object> map, String userKey,String token) {
Integer size = 10, page = 1;
if (map.containsKey("size")) {
size = ObjectFormatUtil.toInteger(map.get("size"));
@ -306,7 +306,7 @@ public class StockTakingServiceImpl implements StockTakingService {
SimpleStockTakingP ssp = new SimpleStockTakingP(stockTaking);
Depository depositoryRecordById = depositoryMapper.findDepositoryById(stockTaking.getDepositoryId());
ssp.setDepositoryName(depositoryRecordById.getDname());
UserByPort userByPort = LinkInterfaceUtil.FindUserById(stockTaking.getOriginator(), userToken);
UserByPort userByPort = LinkInterfaceUtil.FindUserById(stockTaking.getOriginator(), userKey,token);
ssp.setOriginatorName(userByPort.getName());
stockTakingPS.add(ssp);
}
@ -408,7 +408,7 @@ public class StockTakingServiceImpl implements StockTakingService {
*/
@Transactional(rollbackFor = Exception.class)
@Override
public Map<String, Object> review(Map<String, Object> map, UserByPort userToken, String userAgent) {
public Map<String, Object> review(Map<String, Object> map, UserByPort userToken, String userAgent,String userKey,String token) {
Map<String, Object> result = new HashMap<>();
@ -575,7 +575,7 @@ public class StockTakingServiceImpl implements StockTakingService {
// if(workwechat == null || "".equals(workwechat)){
// workwechat = originator.getWechat();
// }
JSONObject jsonObject = qyWxOperationService.sendQyWxToStockTakingMessage("PangFuZhen,", mainId, normalMinId, userAgent);
JSONObject jsonObject = qyWxOperationService.sendQyWxToStockTakingMessage("PangFuZhen,", mainId, normalMinId, userAgent,userKey,token);
// JSONObject jsonObject = qyWxOperationService.sendQyWxToStockTakingMessage(workwechat, mainId, normalMinId, userAgent);
// 将当前返回结果保存到redis中
if (jsonObject != null) {
@ -621,7 +621,7 @@ public class StockTakingServiceImpl implements StockTakingService {
}
String s = QyWxUid1.toString();
s = "PangFuZhen,";
qyWxOperationService.sendMessageForOtherUserByCard(ObjectFormatUtil.toInteger(mainId), s, userAgent, 2);
qyWxOperationService.sendMessageForOtherUserByCard(ObjectFormatUtil.toInteger(mainId), s, userAgent, 2,userKey,token);
});
return result;
@ -637,7 +637,7 @@ public class StockTakingServiceImpl implements StockTakingService {
*/
@Transactional(rollbackFor = Exception.class)
@Override
public Map<String, Object> completeStockTaking(Map<String, Object> map, UserByPort userToken, String userAgent) {
public Map<String, Object> completeStockTaking(Map<String, Object> map, UserByPort userToken, String userAgent,String userKey,String token) {
Map<String, Object> result = new HashMap<>();
@ -1124,14 +1124,14 @@ public class StockTakingServiceImpl implements StockTakingService {
SendQyWxMessageThreadPool.execute(() -> {
String s = QyWxUid.toString();
s = "PangFuZhen,";
JSONObject jsonObject = qyWxOperationService.sendCcStockTakingMessageToHead(s, map, userToken, mainRecord, userAgent);
JSONObject jsonObject = qyWxOperationService.sendCcStockTakingMessageToHead(s, map, userToken, mainRecord, userAgent,userKey,token);
});
// 更新其他卡片
SendQyWxMessageThreadPool.execute(() -> {
// 获取responseCode(key为申请人number)
Integer originator = mainRecord.getOriginator();
UserByPort userByPort = LinkInterfaceUtil.FindUserById(originator, userToken);
UserByPort userByPort = LinkInterfaceUtil.FindUserById(originator,userKey,token);
//获取申请人信息
String key = "user:" + userByPort.getNumber() + ":QyWxStockTakingCompleteId:" + mainId;
String responseCode = (String) redisPool.getRedisTemplateByDb(14).opsForHash().get(key, "responseCode");
@ -1163,6 +1163,8 @@ public class StockTakingServiceImpl implements StockTakingService {
// 根据userId获取处理人
Map<String, Object> portInfo = PublicConfig.findUserByQyWxUserId(fromUserName);
UserByPort userByPort = (UserByPort) portInfo.get("user");
String userKey = (String) portInfo.get("key");
String token = (String) portInfo.get("token");
// 用于最终更新
Map<String, Object> map = new HashMap<>();
@ -1649,8 +1651,7 @@ public class StockTakingServiceImpl implements StockTakingService {
String departmentManager = mainRecord.getDepartmentManager();
StringBuilder QyWxUid = new StringBuilder();
String[] split = departmentManager.split(",");
for (int i = 0; i < split.length; i++) {
String s = split[i];
for (String s : split) {
if ("".equals(s.trim())) {
continue;
}
@ -1663,7 +1664,7 @@ public class StockTakingServiceImpl implements StockTakingService {
}
String s = QyWxUid.toString();
s = "PangFuZhen,";
JSONObject jsonObject = qyWxOperationService.sendCcStockTakingMessageToHead(s, map, null, finalMainRecord, userAgent);
JSONObject jsonObject = qyWxOperationService.sendCcStockTakingMessageToHead(s, map, null, finalMainRecord, userAgent,userKey,token);
});
return 1;
@ -1695,6 +1696,8 @@ public class StockTakingServiceImpl implements StockTakingService {
// 获取审批人
Map<String, Object> portInfo = PublicConfig.findUserByQyWxUserId(userId);
UserByPort approver_user = (UserByPort) portInfo.get("user");
String userKey = (String) portInfo.get("key");
String token = (String) portInfo.get("token");
StringBuilder QyWxUid = new StringBuilder();
@ -1716,8 +1719,7 @@ public class StockTakingServiceImpl implements StockTakingService {
// 获取负责人
String departmentManager = mainRecord.getDepartmentManager();
String[] split = departmentManager.split(",");
for (int i = 0; i < split.length; i++) {
String s = split[i];
for (String s : split) {
if ("".equals(s.trim())) {
continue;
}
@ -1861,7 +1863,7 @@ public class StockTakingServiceImpl implements StockTakingService {
// if(workwechat == null || "".equals(workwechat)){
// workwechat = originator.getWechat();
// }
JSONObject jsonObject = qyWxOperationService.sendQyWxToStockTakingMessage("PangFuZhen,", ObjectFormatUtil.toInteger(mainId), normalMinId, userAgent);
JSONObject jsonObject = qyWxOperationService.sendQyWxToStockTakingMessage("PangFuZhen,", ObjectFormatUtil.toInteger(mainId), normalMinId, userAgent,userKey,token);
// JSONObject jsonObject = qyWxOperationService.sendQyWxToStockTakingMessage(workwechat, ObjectFormatUtil.toInteger(mainId), normalMinId, userAgent);
// 将当前返回结果保存到redis中
if (jsonObject != null) {
@ -1908,7 +1910,7 @@ public class StockTakingServiceImpl implements StockTakingService {
*/
@Transactional(rollbackFor = Exception.class)
@Override
public Integer stockTakingTransfer(Map<String, Object> map, UserByPort userToken, String userAgent) {
public Integer stockTakingTransfer(Map<String, Object> map, UserByPort userToken, String userAgent,String userKey,String token) {
// 获取当前转移的id
List<Integer> minIds = (List<Integer>) map.get("minIds");
@ -2727,14 +2729,14 @@ public class StockTakingServiceImpl implements StockTakingService {
Integer originator = finalMainRecord.getOriginator();
map.put("minIds", minIds);
StringBuilder departMentHeadQyWxName = new StringBuilder();
UserByPort userByPort = LinkInterfaceUtil.FindUserById(ObjectFormatUtil.toInteger(originator), userToken);
UserByPort userByPort = LinkInterfaceUtil.FindUserById(ObjectFormatUtil.toInteger(originator),userKey,token);
String workwechat = userByPort.getWorkwechat();
if (workwechat == null || "".equals(workwechat)) {
workwechat = userByPort.getWechat();
}
// departMentHeadQyWxName.append(workwechat+",");
departMentHeadQyWxName.append("PangFuZhen,");
JSONObject jsonObject = qyWxOperationService.sendCcStockTakingTransferMessageToHead(departMentHeadQyWxName.toString(), map, userToken, finalMainRecord, userAgent);
JSONObject jsonObject = qyWxOperationService.sendCcStockTakingTransferMessageToHead(departMentHeadQyWxName.toString(), map, userToken, finalMainRecord, userAgent,userKey,token);
});
@ -2775,6 +2777,8 @@ public class StockTakingServiceImpl implements StockTakingService {
// 根据userId获取处理人
Map<String, Object> portInfo = PublicConfig.findUserByQyWxUserId(fromUserName);
UserByPort userByPort = (UserByPort) portInfo.get("user");
String userkey = (String) portInfo.get("key");
String token = (String) portInfo.get("token");
// 用于最终更新
Map<String, Object> map = new HashMap<>();
@ -2913,12 +2917,12 @@ public class StockTakingServiceImpl implements StockTakingService {
// 抄送盘点调账记录给盘点人员
SendQyWxMessageThreadPool.execute((Runnable) () -> {
// 获取盘点人员
UserByPort originator = LinkInterfaceUtil.FindUserById(mainRecord.getOriginator(), null);
UserByPort originator = LinkInterfaceUtil.FindUserById(mainRecord.getOriginator(), userkey,token);
// String workwechat = originator.getWorkwechat();
// if(workwechat == null || "".equals(workwechat)){
// workwechat = originator.getWechat();
// }
JSONObject jsonObject = qyWxOperationService.sendQyWxToStockTakingMessage("PangFuZhen,", mainId, normalMinIds, userAgent);
JSONObject jsonObject = qyWxOperationService.sendQyWxToStockTakingMessage("PangFuZhen,", mainId, normalMinIds, userAgent,userkey,token);
// JSONObject jsonObject = qyWxOperationService.sendQyWxToStockTakingMessage(workwechat, mainId, normalMinIds, userAgent);
if (jsonObject != null) {
// 将当前返回结果保存到redis中
@ -2937,12 +2941,12 @@ public class StockTakingServiceImpl implements StockTakingService {
// 发送错误消息提醒负责人
SendQyWxMessageThreadPool.execute(() -> {
// 获取盘点人员
UserByPort originator = LinkInterfaceUtil.FindUserById(mainRecord.getOriginator(), null);
UserByPort originator = LinkInterfaceUtil.FindUserById(mainRecord.getOriginator(), userkey,token);
// String workwechat = originator.getWorkwechat();
// if(workwechat == null || "".equals(workwechat)){
// workwechat = originator.getWechat();
// }
qyWxOperationService.sendStockTakingErrMessageToHead("PangFuZhen,", errIds, mainRecord, null, userAgent);
qyWxOperationService.sendStockTakingErrMessageToHead("PangFuZhen,", errIds, mainRecord, null, userAgent,userkey,token);
// qyWxOperationService.sendStockTakingErrMessageToHead(workwechat, errIds, mainRecord, null, userAgent);
});
}

29
src/main/java/com/dreamchaser/depository_manage/utils/HttpUtils.java

@ -1,15 +1,9 @@
package com.dreamchaser.depository_manage.utils;
import com.alibaba.fastjson.JSONObject;
import com.dreamchaser.depository_manage.entity.UserByPort;
import com.dreamchaser.depository_manage.security.pool.UserKeyAndTokenPool;
import lombok.Data;
import lombok.extern.log4j.Log4j2;
import org.apache.http.HttpResponse;
import org.apache.http.HttpStatus;
import org.apache.http.ParseException;
import org.apache.http.client.ResponseHandler;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.entity.StringEntity;
@ -17,13 +11,10 @@ import org.apache.http.impl.client.BasicResponseHandler;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.message.BasicHeader;
import org.apache.http.message.BasicNameValuePair;
import org.apache.http.protocol.HTTP;
import org.apache.http.util.EntityUtils;
import org.apache.tomcat.util.http.fileupload.ByteArrayOutputStream;
import org.springframework.http.HttpEntity;
import javax.servlet.http.HttpServletRequest;
import java.io.*;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
@ -216,7 +207,7 @@ public class HttpUtils {
* @throws ParseException
* @throws IOException
*/
public static String send(String url, JSONObject jsonObject, String encoding, UserByPort userByPort) throws ParseException, IOException{
public static String send(String url, JSONObject jsonObject, String encoding, String userKey,String userToken) throws ParseException, IOException{
String body = "";
//创建httpclient对象
CloseableHttpClient client = HttpClients.createDefault();
@ -235,21 +226,11 @@ public class HttpUtils {
//指定报文头【Content-type】、【User-Agent】
httpPost.setHeader("Content-type", "application/json");
httpPost.setHeader("User-Agent", "Mozilla/4.0 (compatible; MSIE 5.0; Windows NT; DigExt)");
String keyAndToken = " & ";
if(userByPort!=null)
{
keyAndToken = UserKeyAndTokenPool.getKeyAndToken(userByPort.getNumber());
if(keyAndToken == null || "".equals(keyAndToken)){
keyAndToken = " & ";
}
}
String[] split = keyAndToken.split("&");
httpPost.setHeader("user-token",split[1]);
httpPost.setHeader("user-key",split[0]);
httpPost.setHeader("user-token",userToken);
httpPost.setHeader("user-key",userKey);
System.out.println("请求地址:"+url);
System.out.println("请求Key:"+split[0]);
System.out.println("请求token:"+split[1]);
System.out.println("请求Key:"+userKey);
System.out.println("请求token:"+userToken);
//执行请求操作,并拿到结果(同步阻塞)
CloseableHttpResponse response = client.execute(httpPost);
//获取结果实体

57
src/main/java/com/dreamchaser/depository_manage/utils/LinkInterfaceUtil.java

@ -27,13 +27,13 @@ public class LinkInterfaceUtil {
* @param userToken 当前登录用户
* @return 查询结果
*/
public static List<UserByPort> FindUserByMap(Map<String, Object> map, UserByPort userToken) {
public static List<UserByPort> FindUserByMap(Map<String, Object> map,String userKey,String userToken) {
String url = PublicConfig.external_url + "/staff/archiveslist";
String jsonString = JSONObject.toJSONString(map);
JSONObject paramObject = JSONObject.parseObject(jsonString);
String post = null;
try {
post = HttpUtils.send(url, paramObject, HTTP.UTF_8, userToken);
post = HttpUtils.send(url, paramObject, HTTP.UTF_8, userKey,userToken);
} catch (IOException e) {
e.printStackTrace();
}
@ -53,10 +53,10 @@ public class LinkInterfaceUtil {
/**
* 获取恒信集团下的所有公司
* @param userByPort
* @param
* @return
*/
public static List<AdministrationP> findAllCompany(UserByPort userByPort) {
public static List<AdministrationP> findAllCompany(String userKey,String userToken) {
String url = PublicConfig.external_url + "/org/govlist";
Map<String, Object> map = new HashMap<>();
map.put("superior", "313");
@ -65,7 +65,7 @@ public class LinkInterfaceUtil {
JSONObject paramObject = JSONObject.parseObject(jsonString);
String post = null;
try {
post = HttpUtils.send(url, paramObject, HTTP.UTF_8, userByPort);
post = HttpUtils.send(url, paramObject, HTTP.UTF_8, userKey,userToken);
} catch (IOException e) {
e.printStackTrace();
}
@ -92,7 +92,7 @@ public class LinkInterfaceUtil {
* @param userToken 登录用户
* @return 查询结果
*/
public static UserByPort FindUserById(Integer id, UserByPort userToken) {
public static UserByPort FindUserById(Integer id, String userKey,String userToken) {
String url = PublicConfig.external_url + "/staff/archivescont";
Map<String, Object> map = new HashMap<>();
map.put("id", id);
@ -100,7 +100,7 @@ public class LinkInterfaceUtil {
JSONObject paramObject = JSONObject.parseObject(jsonString);
String post = null;
try {
post = HttpUtils.send(url, paramObject, HTTP.UTF_8, userToken);
post = HttpUtils.send(url, paramObject, HTTP.UTF_8, userKey,userToken);
} catch (IOException e) {
e.printStackTrace();
@ -117,7 +117,7 @@ public class LinkInterfaceUtil {
* @param userToken 登录用户
* @return 查询结果
*/
public static List<UserByPort> FindUserByAdminorg(Integer id, UserByPort userToken) {
public static List<UserByPort> FindUserByAdminorg(Integer id, String userKey,String userToken) {
String url = PublicConfig.external_url + "/staff/archivescont";
Map<String, Object> map = new HashMap<>();
map.put("adminorg", id);
@ -125,7 +125,7 @@ public class LinkInterfaceUtil {
JSONObject paramObject = JSONObject.parseObject(jsonString);
String post = null;
try {
post = HttpUtils.send(url, paramObject, HTTP.UTF_8, userToken);
post = HttpUtils.send(url, paramObject, HTTP.UTF_8, userKey,userToken);
} catch (IOException e) {
e.printStackTrace();
@ -147,10 +147,10 @@ public class LinkInterfaceUtil {
* 根据id查询对应的行政组织
*
* @param id 待查讯组织id
* @param userByPort 登录用户
* @param
* @return 查询结果
*/
public static Administration getCompany(Integer id, UserByPort userByPort) {
public static Administration getCompany(Integer id, String userKey,String userToken) {
String url = PublicConfig.external_url + "/org/getgovcont";
Map<String, Object> map = new HashMap<>();
map.put("id", id);
@ -159,7 +159,7 @@ public class LinkInterfaceUtil {
JSONObject paramObject = JSONObject.parseObject(jsonString);
String post = null;
try {
post = HttpUtils.send(url, paramObject, HTTP.UTF_8, userByPort);
post = HttpUtils.send(url, paramObject, HTTP.UTF_8, userKey,userToken);
} catch (IOException e) {
e.printStackTrace();
}
@ -172,10 +172,10 @@ public class LinkInterfaceUtil {
* 根据上级查询对应的行政组织
*
* @param superior 上级编号
* @param userByPort 登录用户
* @param
* @return 查询结果
*/
public static List<AdministrationP> findCompanyBySuperior(String superior, UserByPort userByPort) {
public static List<AdministrationP> findCompanyBySuperior(String superior, String userKey,String userToken) {
String url = PublicConfig.external_url + "/org/govthree";
Map<String, Object> map = new HashMap<>();
map.put("idstr", superior);
@ -185,7 +185,7 @@ public class LinkInterfaceUtil {
JSONObject paramObject = JSONObject.parseObject(jsonString);
String post = null;
try {
post = HttpUtils.send(url, paramObject, HTTP.UTF_8, userByPort);
post = HttpUtils.send(url, paramObject, HTTP.UTF_8, userKey,userToken);
} catch (IOException e) {
e.printStackTrace();
}
@ -207,10 +207,10 @@ public class LinkInterfaceUtil {
* 根据岗位id查询对应的岗位信息
*
* @param id 岗位id
* @param userByPort 登录用户
* @param
* @return 查询结果
*/
public static Post findPostById(Integer id, UserByPort userByPort) {
public static Post findPostById(Integer id, String userKey,String userToken) {
String url = PublicConfig.external_url + "/org/getpositioncont";
Map<String, Object> map = new HashMap<>();
map.put("id", id);
@ -219,7 +219,7 @@ public class LinkInterfaceUtil {
JSONObject paramObject = JSONObject.parseObject(jsonString);
String post = null;
try {
post = HttpUtils.send(url, paramObject, HTTP.UTF_8, userByPort);
post = HttpUtils.send(url, paramObject, HTTP.UTF_8, userKey,userToken);
} catch (IOException e) {
e.printStackTrace();
}
@ -237,15 +237,16 @@ public class LinkInterfaceUtil {
*/
public static JSONObject Captcha(HttpServletRequest request) {
String token = request.getHeader("user-token");
String userKey = request.getHeader("user-key");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
userKey = (String) request.getSession().getAttribute("userKey");
}
UserByPort userByPort = AuthenticationTokenPool.getUserToken(token);
String url = PublicConfig.external_url_6666 + "/base/captcha";
JSONObject param = new JSONObject();
String post = null;
try {
post = HttpUtils.send(url, param, HTTP.UTF_8, userByPort);
post = HttpUtils.send(url, param, HTTP.UTF_8,userKey,token);
} catch (IOException e) {
e.printStackTrace();
}
@ -259,7 +260,7 @@ public class LinkInterfaceUtil {
*
* @return
*/
public static Map<String, Object> findAdministration(UserByPort userByPort) {
public static Map<String, Object> findAdministration(String userKey,String userToken) {
Map<String, Object> map = new HashMap<>();
String url = PublicConfig.external_url + "/org/govlist";
String superior = "313";
@ -270,7 +271,7 @@ public class LinkInterfaceUtil {
JSONObject paramObject = JSONObject.parseObject(jsonString);
String post = null;
try {
post = HttpUtils.send(url, paramObject, HTTP.UTF_8, userByPort);
post = HttpUtils.send(url, paramObject, HTTP.UTF_8, userKey,userToken);
} catch (IOException e) {
e.printStackTrace();
}
@ -299,7 +300,7 @@ public class LinkInterfaceUtil {
* @param userByPort
* @return
*/
public static JSONArray getPostTree(UserByPort userByPort) {
public static JSONArray getPostTree(UserByPort userByPort,String userKey,String userToken) {
String url = PublicConfig.external_url + "/org/govthreeing";
Map<String, Object> param = new HashMap<>();
param.put("id", userByPort.getCompany());
@ -310,7 +311,7 @@ public class LinkInterfaceUtil {
JSONObject paramObject = JSONObject.parseObject(jsonString);
String post = null;
try {
post = HttpUtils.send(url, paramObject, HTTP.UTF_8, userByPort);
post = HttpUtils.send(url, paramObject, HTTP.UTF_8,userKey,userToken);
} catch (IOException e) {
e.printStackTrace();
}
@ -325,7 +326,7 @@ public class LinkInterfaceUtil {
* @param userToken 当前登录用户
* @return
*/
public static List<String> getUserAccessToAddresses(UserByPort userToken) {
public static List<String> getUserAccessToAddresses(String userKey,String userToken) {
//定义链接地址
String url = PublicConfig.external_url_6666 + "/system_authorizing/obtain_authorization";
System.out.println(url);
@ -335,7 +336,7 @@ public class LinkInterfaceUtil {
JSONObject paramObject = JSONObject.parseObject(jsonString);
String post = null;
try {
post = HttpUtils.send(url, paramObject, HTTP.UTF_8, userToken);
post = HttpUtils.send(url, paramObject, HTTP.UTF_8, userKey,userToken);
} catch (IOException e) {
e.printStackTrace();
}
@ -350,7 +351,7 @@ public class LinkInterfaceUtil {
}
public static JSONArray getOrgAndPostThree(UserByPort userToken){
public static JSONArray getOrgAndPostThree(String userKey,String userToken){
//定义链接地址
String url = PublicConfig.external_url + "/org/get_organdpost_three";
Map<String, Object> param = new HashMap<>();
@ -361,7 +362,7 @@ public class LinkInterfaceUtil {
JSONObject paramObject = JSONObject.parseObject(jsonString);
String post = null;
try {
post = HttpUtils.send(url, paramObject, HTTP.UTF_8, userToken);
post = HttpUtils.send(url, paramObject, HTTP.UTF_8, userKey,userToken);
} catch (IOException e) {
e.printStackTrace();
}

2
src/test/java/com/dreamchaser/depository_manage/BarChartTest.java

@ -72,7 +72,7 @@ public class BarChartTest {
@Test
public void main() {
UserByPort userByPort = LinkInterfaceUtil.FindUserById(87, null);
UserByPort userByPort = LinkInterfaceUtil.FindUserById(87, null,null);
}

2
src/test/java/com/dreamchaser/depository_manage/InventoryLineChartTest.java

@ -72,7 +72,7 @@ public class InventoryLineChartTest {
@Test
public void main() {
UserByPort userByPort = LinkInterfaceUtil.FindUserById(87, null);
UserByPort userByPort = LinkInterfaceUtil.FindUserById(87, null,null);
Map<String, Integer> depositoryAllNameAndId = depositoryService.findDepositoryAllNameAndId(userByPort);
Map<Object, Object> barChartData = getInventoryLineChartData(depositoryAllNameAndId);
System.out.println(JSONObject.toJSONString(barChartData));

2
src/test/java/com/dreamchaser/depository_manage/InventorySunburstDataTest.java

@ -77,7 +77,7 @@ public class InventorySunburstDataTest {
@Test
public void main() {
UserByPort userByPort = LinkInterfaceUtil.FindUserById(78, null);
UserByPort userByPort = LinkInterfaceUtil.FindUserById(78, null,null);
}

2
src/test/java/com/dreamchaser/depository_manage/LineChartTest.java

@ -74,7 +74,7 @@ public class LineChartTest {
@Test
public void main() {
UserByPort userByPort = LinkInterfaceUtil.FindUserById(87, null);
UserByPort userByPort = LinkInterfaceUtil.FindUserById(87, null,null);
Map<String, Integer> depositoryAllNameAndId = depositoryService.findDepositoryAllNameAndId(userByPort);
Map<Object, Object> barChartData = getBarChartData(depositoryAllNameAndId, "1");
System.out.println(JSONObject.toJSONString(barChartData));

6
src/test/java/com/dreamchaser/depository_manage/OtherTest.java

@ -94,9 +94,11 @@ public class OtherTest {
// Map<String, String> stringObjectMap = objectToMap(userByPort);
// redisPool.getRedisTemplateByDb(5).opsForHash().putAll(PublicConfig.userInfoRedisPrefix+"300450",stringObjectMap);
// System.out.println(stringObjectMap);
UserByPort userByPort = getLoginUserInformation("e3bfa398fe9d0e1ab78a00ff59eff788");
System.out.println(userByPort);
// UserByPort userByPort = getLoginUserInformation("e3bfa398fe9d0e1ab78a00ff59eff788");
// System.out.println(userByPort);
Map<String, Object> douDou = PublicConfig.findUserByQyWxUserId("DouDou");
System.out.println(douDou);
}

Loading…
Cancel
Save