Browse Source

取消key与token暂存池

lwx_dev
erdanergou 3 years ago
parent
commit
79ee58693c
  1. 16
      src/main/java/com/dreamchaser/depository_manage/config/QyWxConfig.java
  2. 4
      src/main/java/com/dreamchaser/depository_manage/service/impl/QyWxOperationService.java
  3. 9
      src/main/java/com/dreamchaser/depository_manage/service/impl/StockTakingServiceImpl.java
  4. 93
      src/test/java/com/dreamchaser/depository_manage/OtherTest.java

16
src/main/java/com/dreamchaser/depository_manage/config/QyWxConfig.java

@ -36,7 +36,7 @@ public class QyWxConfig {
public static String code = ""; //userCode public static String code = ""; //userCode
public static String sendMessage_url = "https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=ACCESS_TOKEN"; public static String sendMessage_url = "https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=ACCESS_TOKEN";
public static RedisTemplate<String,String> redisTemplate; public static RedisPool redisPool;
// 用于回调配置的token // 用于回调配置的token
public static String sToken = "sM4MFE44fAKdtqvq81HYygqmrdUn"; public static String sToken = "sM4MFE44fAKdtqvq81HYygqmrdUn";
@ -66,7 +66,7 @@ public class QyWxConfig {
@Autowired @Autowired
public void setRedisTemplate(RedisPool redisPool) { public void setRedisTemplate(RedisPool redisPool) {
QyWxConfig.redisTemplate = redisPool.redisTemplate(14); QyWxConfig.redisPool = redisPool;
} }
@ -74,7 +74,7 @@ public class QyWxConfig {
// 用于获取企业微信对应token // 用于获取企业微信对应token
public static String GetQYWXToken(String UserAgent) { public static String GetQYWXToken(String UserAgent) {
// 获取redis中当前用户的user-agent // 获取redis中当前用户的user-agent
String token_redis = redisTemplate.opsForValue().get("wms_access_token_" + UserAgent); String token_redis = redisPool.getRedisTemplateByDb(14).opsForValue().get("wms_access_token_" + UserAgent);
if (token_redis != null) { if (token_redis != null) {
return token_redis; return token_redis;
} else { } else {
@ -91,24 +91,24 @@ public class QyWxConfig {
Long expires_in = 7200L; Long expires_in = 7200L;
// 获取当前redis中存储的key值 // 获取当前redis中存储的key值
Set<String> keys = redisTemplate.keys("wms_access_token_*"); Set<String> keys = redisPool.getRedisTemplateByDb(14).keys("wms_access_token_*");
// 获取遍历器 // 获取遍历器
Iterator<String> iterator = keys.iterator(); Iterator<String> iterator = keys.iterator();
while (iterator.hasNext()) { // 如果有下个,则进行遍历 while (iterator.hasNext()) { // 如果有下个,则进行遍历
// 获取当前key // 获取当前key
String next = iterator.next(); String next = iterator.next();
// 当前key对应的token // 当前key对应的token
String next_access_token = redisTemplate.opsForValue().get(next); String next_access_token = redisPool.getRedisTemplateByDb(14).opsForValue().get(next);
if (accessToken.equals(next_access_token)) { if (accessToken.equals(next_access_token)) {
// 如果当前token相等 // 如果当前token相等
// 获取当前的过期时间 // 获取当前的过期时间
expires_in = redisTemplate.opsForValue().getOperations().getExpire(next, TimeUnit.SECONDS); expires_in = redisPool.getRedisTemplateByDb(14).opsForValue().getOperations().getExpire(next, TimeUnit.SECONDS);
} }
} }
redisTemplate.opsForValue().set("wms_access_token_" + UserAgent, accessToken); redisPool.getRedisTemplateByDb(14).opsForValue().set("wms_access_token_" + UserAgent, accessToken);
redisTemplate.expire("wms_access_token_" + UserAgent, expires_in, TimeUnit.SECONDS); redisPool.getRedisTemplateByDb(14).expire("wms_access_token_" + UserAgent, expires_in, TimeUnit.SECONDS);
return accessToken; return accessToken;
} else { } else {

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

@ -522,7 +522,7 @@ public class QyWxOperationService {
// 设置物料名称 // 设置物料名称
mname.append(materialById.getMname()).append(","); mname.append(materialById.getMname()).append(",");
// 设置盘点数量 // 设置盘点数量
stockTakingQuantity.append((int)(childP.getNewInventory() / 100.0)).append(","); stockTakingQuantity.append((childP.getNewInventory() / 100.0)).append(",");
// 设置盘点结果 // 设置盘点结果
String takingResult = childP.getTakingResult(); String takingResult = childP.getTakingResult();
if ("Inventory_up".equals(takingResult)) { if ("Inventory_up".equals(takingResult)) {
@ -534,7 +534,7 @@ public class QyWxOperationService {
} }
stockTakingResult.append(takingResult).append(","); stockTakingResult.append(takingResult).append(",");
// 设置盈亏数量 // 设置盈亏数量
stockTakingInventory.append((int)(childP.getInventory() / 100.0)).append(","); stockTakingInventory.append((childP.getInventory() / 100.0)).append(",");
} }
// 1.获取access_token:根据企业id和应用密钥获取access_token,并拼接请求url // 1.获取access_token:根据企业id和应用密钥获取access_token,并拼接请求url

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

@ -1155,9 +1155,6 @@ public class StockTakingServiceImpl implements StockTakingService {
// 定义结果集 // 定义结果集
Map<String, Object> result = new HashMap<>(); Map<String, Object> result = new HashMap<>();
// 获取点击的按钮
String clickKey = templateCard.getEventKey().split("_")[1];
// 点击用户 // 点击用户
String fromUserName = templateCard.getFromUserName(); String fromUserName = templateCard.getFromUserName();
// 根据userId获取处理人 // 根据userId获取处理人
@ -1881,7 +1878,8 @@ public class StockTakingServiceImpl implements StockTakingService {
map.put("state", 1); map.put("state", 1);
} }
} else { }
else {
map.put("departmentManagerState", 2); map.put("departmentManagerState", 2);
map.put("completeTime", DateUtil.DateTimeToTimeStamp(simpleTime)); map.put("completeTime", DateUtil.DateTimeToTimeStamp(simpleTime));
map.put("state", 2); map.put("state", 2);
@ -1892,7 +1890,8 @@ public class StockTakingServiceImpl implements StockTakingService {
map.put("departmentManager", approver_user.getNumber()); map.put("departmentManager", approver_user.getNumber());
stockTakingMapper.updateStockTaking(map); stockTakingMapper.updateStockTaking(map);
return result; return result;
} else { }
else {
// 如果当前盘点记录已经审核过 // 如果当前盘点记录已经审核过
// 不做任何处理 // 不做任何处理

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

@ -2,7 +2,11 @@ package com.dreamchaser.depository_manage;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.dreamchaser.depository_manage.config.PublicConfig; import com.dreamchaser.depository_manage.config.PublicConfig;
import com.dreamchaser.depository_manage.config.QyWxConfig;
import com.dreamchaser.depository_manage.entity.UserByPort; import com.dreamchaser.depository_manage.entity.UserByPort;
import com.dreamchaser.depository_manage.pojo.callBackXml.approvalCallBackXml.ApprovalInfo_Details;
import com.dreamchaser.depository_manage.pojo.callBackXml.approvalCallBackXml.ApprovalInfo_Details_Approver;
import com.dreamchaser.depository_manage.pojo.callBackXml.callBackXml_button_templatecard.TemplateCard;
import com.dreamchaser.depository_manage.security.pool.RedisPool; import com.dreamchaser.depository_manage.security.pool.RedisPool;
import com.dreamchaser.depository_manage.mapper.DepositoryMapper; import com.dreamchaser.depository_manage.mapper.DepositoryMapper;
import com.dreamchaser.depository_manage.service.*; import com.dreamchaser.depository_manage.service.*;
@ -23,10 +27,7 @@ import org.springframework.cglib.beans.BeanMap;
import org.springframework.test.context.junit4.SpringRunner; import org.springframework.test.context.junit4.SpringRunner;
import java.lang.reflect.Field; import java.lang.reflect.Field;
import java.util.HashMap; import java.util.*;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT) @SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
@ -48,25 +49,6 @@ public class OtherTest {
@Autowired @Autowired
RedisPool redisPool; RedisPool redisPool;
public UserByPort getLoginUserInformation(String userKey) {
// 拼接存储key
String userLoginkey = PublicConfig.LoginRedisPrefix + userKey;
// 获取当前登录用户的工号
String usernumber = (String) redisPool.getRedisTemplateByDb(5).opsForHash().get(userLoginkey, "usernumber");
String userInfoKey = PublicConfig.userInfoRedisPrefix+usernumber;
// 获取当前存储的所有key值
Iterator<Object> iterator = redisPool.getRedisTemplateByDb(5).opsForHash().keys(userInfoKey).iterator();
// 定义map
Map<String, Object> map = new HashMap<>();
// 遍历获取存储的redis中的值
while (iterator.hasNext()) {
Object next = iterator.next();
Object o = redisPool.getRedisTemplateByDb(5).opsForHash().get(userInfoKey, next);
map.put((String) next, o);
}
return JSONObject.parseObject(JSONObject.toJSONString(map), UserByPort.class);
}
public static Map<String, String> objectToMap(Object object) { public static Map<String, String> objectToMap(Object object) {
Map<String, String> dataMap = new HashMap<>(); Map<String, String> dataMap = new HashMap<>();
Class<?> clazz = object.getClass(); Class<?> clazz = object.getClass();
@ -88,17 +70,74 @@ public class OtherTest {
return dataMap; return dataMap;
} }
public UserByPort getLoginUserInformation(String userKey) {
// 拼接存储key
String userLoginkey = PublicConfig.LoginRedisPrefix + userKey;
// 获取当前登录用户的工号
String usernumber = (String) redisPool.getRedisTemplateByDb(5).opsForHash().get(userLoginkey, "usernumber");
String userInfoKey = PublicConfig.userInfoRedisPrefix + usernumber;
// 获取当前存储的所有key值
Iterator<Object> iterator = redisPool.getRedisTemplateByDb(5).opsForHash().keys(userInfoKey).iterator();
// 定义map
Map<String, Object> map = new HashMap<>();
// 遍历获取存储的redis中的值
while (iterator.hasNext()) {
Object next = iterator.next();
Object o = redisPool.getRedisTemplateByDb(5).opsForHash().get(userInfoKey, next);
map.put((String) next, o);
}
return JSONObject.parseObject(JSONObject.toJSONString(map), UserByPort.class);
}
@Test @Test
public void main() { public void main() {
// UserByPort userByPort = LinkInterfaceUtil.FindUserById(6235, null); // UserByPort userByPort = LinkInterfaceUtil.FindUserById(6235, null, null);
// Map<String, String> stringObjectMap = objectToMap(userByPort); ApprovalInfo_Details approvalInfo_details = new ApprovalInfo_Details();
ApprovalInfo_Details_Approver approver = new ApprovalInfo_Details_Approver();
approver.setUserId("PangFuZhen");
approvalInfo_details.setApprover(approver);
// depositoryRecordService.reviewByQyWxApprovalIn("[141]",approvalInfo_details,"d35f243c9791341c148f7826994829ec","2","202305050008");
// stockTakingService.reviewByQyWxApproval("4",approvalInfo_details,"d35f243c9791341c148f7826994829ec","2","202305050010");
// List<Long> list = new ArrayList<>();
// list.add(4L);
// JSONObject jsonObject = qyWxOperationService.sendQyWxToStockTakingMessage("PangFuZhen,", 4, list, "d35f243c9791341c148f7826994829ec","","");
// Map<String, String> stringObjectMap = objectToMap(userByPort);
// redisPool.getRedisTemplateByDb(5).opsForHash().putAll(PublicConfig.userInfoRedisPrefix+"300450",stringObjectMap); // redisPool.getRedisTemplateByDb(5).opsForHash().putAll(PublicConfig.userInfoRedisPrefix+"300450",stringObjectMap);
// System.out.println(stringObjectMap); // System.out.println(stringObjectMap);
// UserByPort userByPort = getLoginUserInformation("e3bfa398fe9d0e1ab78a00ff59eff788"); // UserByPort userByPort = getLoginUserInformation("e3bfa398fe9d0e1ab78a00ff59eff788");
// System.out.println(userByPort); // System.out.println(userByPort);
Map<String, Object> douDou = PublicConfig.findUserByQyWxUserId("DouDou");
System.out.println(douDou); }
@Test
public void StockTakingTest(){
ApprovalInfo_Details approvalInfo_details = new ApprovalInfo_Details();
ApprovalInfo_Details_Approver approver = new ApprovalInfo_Details_Approver();
approver.setUserId("PangFuZhen");
approvalInfo_details.setApprover(approver);
// 用于处理盘点记录
TemplateCard templateCard = new TemplateCard();
templateCard.setFromUserName("PangFuZhen");
templateCard.setEventKey("wms_completepass_StockTakingId4");
stockTakingService.completeStockTakingByQyWx(templateCard,"e3bfa398fe9d0e1ab78a00ff59eff788");
}
@Test
public void ApplicationInTest(){
ApprovalInfo_Details approvalInfo_details = new ApprovalInfo_Details();
ApprovalInfo_Details_Approver approver = new ApprovalInfo_Details_Approver();
approver.setUserId("PangFuZhen");
approvalInfo_details.setApprover(approver);
depositoryRecordService.reviewByQyWxApprovalIn("[142, 143]",approvalInfo_details,"d35f243c9791341c148f7826994829ec","2","202305050015");
} }

Loading…
Cancel
Save