From 4ce148a6fc8dfca355ff676264c0d78a5ebf89df Mon Sep 17 00:00:00 2001
From: liujie <1793218484@qq.com>
Date: 星期四, 31 七月 2025 14:08:27 +0800
Subject: [PATCH] 推广活动

---
 ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/qianyuntong/EmployeeUtil.java |  172 +++++++++++++++++++++++++++++++++++----------------------
 1 files changed, 105 insertions(+), 67 deletions(-)

diff --git a/ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/qianyuntong/EmployeeUtil.java b/ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/qianyuntong/EmployeeUtil.java
index 2366416..cf74b7e 100644
--- a/ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/qianyuntong/EmployeeUtil.java
+++ b/ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/qianyuntong/EmployeeUtil.java
@@ -5,6 +5,8 @@
 import com.google.gson.Gson;
 import com.open.common.util.OpenApiClient;
 import com.open.common.util.SystemParameterNames;
+import com.stylefeng.guns.modular.system.util.ResultUtil;
+import com.stylefeng.guns.modular.system.util.SpringContextsUtil;
 import com.stylefeng.guns.modular.system.util.qianyuntong.model.*;
 import lombok.extern.slf4j.Slf4j;
 
@@ -22,50 +24,32 @@
 @Slf4j
 public class EmployeeUtil {
 	
+	private static QianYunTongConfig qianYunTongConfig = SpringContextsUtil.getBean(QianYunTongConfig.class).getQianYunTongConfig();;
 	
-	/**
-	 * 企业增加员工
-	 * @param request
-	 * @return
-	 */
-	public static SaveStaffNode saveStaffNode(SaveStaffNodeRequest request){
-		//请求路径
-		String url = QianYunTongProperties.apiUrl + "/openapi/rest/1.0/saveStaffNode";
-		//私钥文件
-		String skprivateKeyFile = QianYunTongProperties.privateKeyPath;
-		//注意:私钥文件需要开发者手动新建.pem文件,将委办局提供的私钥串复制进文件里用于sign加密
-		String appKey = QianYunTongProperties.appkey;//appkey
-		Map<String, String> headers = new HashMap<>();
-		headers.put("Content-Type", "application/json");
-		Map<String, Object> contentMap = new HashMap<String, Object>();
-		Date nowdate = new Date();
-		SimpleDateFormat date = new SimpleDateFormat("yyyyMMddHHmmss");
+	public static void main(String[] args) {
+//		SaveStaffNodeRequest request = new SaveStaffNodeRequest();
+//		request.setMobile("18798410042");
+//		request.setEntercode("9811000039358999");
+//		request.setEmpName("莫萍");
+//		request.setEmpNickname("莫萍");
+//		request.setLoginNo("15180824124");
+//		request.setEmpSex("女");
+//		request.setMphone("15180824124");
+//		request.setEmail("15180824124" + "@qyt.com");
+//		request.setDeptId(0);
+//		request.setPositionId(1);
+//		request.setSuperLevel(0);
+//		request.setHideMobile(0);
+//		SaveStaffNode saveStaffNode = EmployeeUtil.saveStaffNode(request);
+//		System.out.println(saveStaffNode);
 		
-		String timeStamp = date.format(nowdate);
-		String messageId = UUID.randomUUID().toString().replaceAll("-", "");
-		contentMap.put(SystemParameterNames.getAppKey(), appKey);
-		contentMap.put(SystemParameterNames.getMessage_id(), messageId);
-		contentMap.put(SystemParameterNames.getUserName(), QianYunTongProperties.userName);
-		contentMap.put(SystemParameterNames.getStatus(), QianYunTongProperties.status);
-		contentMap.put("content", new Gson().toJson(request));
-		log.info("【企业增加员工】请求地址:" + url);
-		log.info("【企业增加员工】请求参数:" + JSON.toJSONString(contentMap));
-		String result = OpenApiClient.sendCommonHttpRequst(url, headers, "POST", skprivateKeyFile, timeStamp, contentMap);
-		log.info("【企业增加员工】请求结果:" + result);
-		JSONObject jsonObject = JSON.parseObject(result);
-		String retCode = jsonObject.getString("retCode");
-		if (!"0".equals(retCode)) {
-			log.error("【企业增加员工】请求失败:" + result);
-			throw new RuntimeException("【企业增加员工】请求失败:" + result);
-		}
-		JSONObject object = jsonObject.getJSONObject("object");
-		String status = object.getString("status");
-		if (!"0".equals(status)) {
-			log.error("【企业增加员工】失败:" + object.toJSONString());
-			throw new RuntimeException("【企业增加员工】失败:" + object.toJSONString());
-		}
-		SaveStaffNode saveStaffNode = jsonObject.getObject("object", SaveStaffNode.class);
-		return saveStaffNode;
+		
+		
+//		DeleteStafNodeRequest deleteStafNodeRequest = new DeleteStafNodeRequest();
+//		deleteStafNodeRequest.setEmpId(11451968L);
+//		deleteStafNodeRequest.setEntercode("981100006318563");
+//		deleteStafNodeRequest.setMobile("13688394165");
+//		EmployeeUtil.ecrmDeleteStafNode(deleteStafNodeRequest);
 	}
 	
 	
@@ -74,13 +58,13 @@
 	 * @param request
 	 * @return
 	 */
-	public static Boolean editStaffNode(EditStaffNodeRequest request){
+	public static ResultUtil editStaffNode(EditStaffNodeRequest request){
 		//请求路径
-		String url = QianYunTongProperties.apiUrl + "/openapi/rest/1.0/editStaffNode";
+		String url = qianYunTongConfig.getApiUrl() + "/openapi/rest/1.0/editStaffNode";
 		//私钥文件
-		String skprivateKeyFile = QianYunTongProperties.privateKeyPath;
+		String skprivateKeyFile = qianYunTongConfig.getPrivateKeyPath();
 		//注意:私钥文件需要开发者手动新建.pem文件,将委办局提供的私钥串复制进文件里用于sign加密
-		String appKey = QianYunTongProperties.appkey;//appkey
+		String appKey = qianYunTongConfig.getAppkey();//appkey
 		Map<String, String> headers = new HashMap<>();
 		headers.put("Content-Type", "application/json");
 		Map<String, Object> contentMap = new HashMap<String, Object>();
@@ -91,8 +75,8 @@
 		String messageId = UUID.randomUUID().toString().replaceAll("-", "");
 		contentMap.put(SystemParameterNames.getAppKey(), appKey);
 		contentMap.put(SystemParameterNames.getMessage_id(), messageId);
-		contentMap.put(SystemParameterNames.getUserName(), QianYunTongProperties.userName);
-		contentMap.put(SystemParameterNames.getStatus(), QianYunTongProperties.status);
+		contentMap.put(SystemParameterNames.getUserName(), qianYunTongConfig.getUserName());
+		contentMap.put(SystemParameterNames.getStatus(), qianYunTongConfig.getStatus());
 		contentMap.put("content", new Gson().toJson(request));
 		log.info("【企业修改员工信息】请求地址:" + url);
 		log.info("【企业修改员工信息】请求参数:" + JSON.toJSONString(contentMap));
@@ -102,15 +86,18 @@
 		String retCode = jsonObject.getString("retCode");
 		if (!"0".equals(retCode)) {
 			log.error("【企业修改员工信息】请求失败:" + result);
-			throw new RuntimeException("【企业修改员工信息】请求失败:" + result);
+			String retMsg = jsonObject.getString("retMsg");
+			retMsg = retMsg.substring(retMsg.indexOf("{"));
+			jsonObject = JSON.parseObject(retMsg);
+			return ResultUtil.error("【企业修改员工信息】请求失败:" + jsonObject.getString("msg"));
 		}
 		JSONObject object = jsonObject.getJSONObject("object");
 		String status = object.getString("status");
 		if (!"0".equals(status)) {
 			log.error("【企业修改员工信息】失败:" + object.toJSONString());
-			throw new RuntimeException("【企业修改员工信息】失败:" + object.toJSONString());
+			return ResultUtil.error("【企业修改员工信息】失败:" + object.toJSONString());
 		}
-		return true;
+		return ResultUtil.success();
 	}
 	
 	
@@ -119,13 +106,13 @@
 	 * @param request
 	 * @return
 	 */
-	public static Boolean ecrmDeleteStafNode(DeleteStafNodeRequest request){
+	public static ResultUtil ecrmDeleteStafNode(DeleteStafNodeRequest request){
 		//请求路径
-		String url = QianYunTongProperties.apiUrl + "/openapi/rest/1.0/ecrmDeleteStafNode";
+		String url = qianYunTongConfig.getApiUrl() + "/openapi/rest/1.0/ecrmDeleteStafNode";
 		//私钥文件
-		String skprivateKeyFile = QianYunTongProperties.privateKeyPath;
+		String skprivateKeyFile = qianYunTongConfig.getPrivateKeyPath();
 		//注意:私钥文件需要开发者手动新建.pem文件,将委办局提供的私钥串复制进文件里用于sign加密
-		String appKey = QianYunTongProperties.appkey;//appkey
+		String appKey = qianYunTongConfig.getAppkey();//appkey
 		String content = "";//业务参数
 		Map<String, String> headers = new HashMap<>();
 		headers.put("Content-Type", "application/json");
@@ -137,8 +124,8 @@
 		String messageId = UUID.randomUUID().toString().replaceAll("-", "");
 		contentMap.put(SystemParameterNames.getAppKey(), appKey);
 		contentMap.put(SystemParameterNames.getMessage_id(), messageId);
-		contentMap.put(SystemParameterNames.getUserName(), QianYunTongProperties.userName);
-		contentMap.put(SystemParameterNames.getStatus(), QianYunTongProperties.status);
+		contentMap.put(SystemParameterNames.getUserName(), qianYunTongConfig.getUserName());
+		contentMap.put(SystemParameterNames.getStatus(), qianYunTongConfig.getStatus());
 		contentMap.put("content", new Gson().toJson(request));
 		log.info("【企业删除人员】请求地址:" + url);
 		log.info("【企业删除人员】请求参数:" + JSON.toJSONString(contentMap));
@@ -148,15 +135,18 @@
 		String retCode = jsonObject.getString("retCode");
 		if (!"0".equals(retCode)) {
 			log.error("【企业删除人员】请求失败:" + result);
-			throw new RuntimeException("【企业删除人员】请求失败:" + result);
+			String retMsg = jsonObject.getString("retMsg");
+			retMsg = retMsg.substring(retMsg.indexOf("{"));
+			jsonObject = JSON.parseObject(retMsg);
+			return ResultUtil.error("【企业删除人员】请求失败:" + jsonObject.getString("msg"));
 		}
 		JSONObject object = jsonObject.getJSONObject("object");
 		String status = object.getString("status");
 		if (!"0".equals(status)) {
 			log.error("【企业删除人员】失败:" + object.toJSONString());
-			throw new RuntimeException("【企业删除人员】失败:" + object.toJSONString());
+			return ResultUtil.error("【企业删除人员】失败:" + object.getString("desc"));
 		}
-		return true;
+		return ResultUtil.success();
 	}
 	
 	
@@ -167,11 +157,11 @@
 	 */
 	public static StaffNodeInfo getStaffNode(GetStaffNodeRequest request){
 		//请求路径
-		String url = QianYunTongProperties.apiUrl + "/openapi/rest/1.0/getStaffNode";
+		String url = qianYunTongConfig.getApiUrl() + "/openapi/rest/1.0/getStaffNode";
 		//私钥文件
-		String skprivateKeyFile = QianYunTongProperties.privateKeyPath;
+		String skprivateKeyFile = qianYunTongConfig.getPrivateKeyPath();
 		//注意:私钥文件需要开发者手动新建.pem文件,将委办局提供的私钥串复制进文件里用于sign加密
-		String appKey = QianYunTongProperties.appkey;//appkey
+		String appKey = qianYunTongConfig.getAppkey();//appkey
 		Map<String, String> headers = new HashMap<>();
 		headers.put("Content-Type", "application/json");
 		Map<String, Object> contentMap = new HashMap<String, Object>();
@@ -182,8 +172,8 @@
 		String messageId = UUID.randomUUID().toString().replaceAll("-", "");
 		contentMap.put(SystemParameterNames.getAppKey(), appKey);
 		contentMap.put(SystemParameterNames.getMessage_id(), messageId);
-		contentMap.put(SystemParameterNames.getUserName(), QianYunTongProperties.userName);
-		contentMap.put(SystemParameterNames.getStatus(), QianYunTongProperties.status);
+		contentMap.put(SystemParameterNames.getUserName(), qianYunTongConfig.getUserName());
+		contentMap.put(SystemParameterNames.getStatus(), qianYunTongConfig.getStatus());
 		contentMap.put("content", new Gson().toJson(request));
 		log.info("【根据员工ID获取人员信息】请求地址:" + url);
 		log.info("【根据员工ID获取人员信息】请求参数:" + JSON.toJSONString(contentMap));
@@ -193,15 +183,63 @@
 		String retCode = jsonObject.getString("retCode");
 		if (!"0".equals(retCode)) {
 			log.error("【根据员工ID获取人员信息】请求失败:" + result);
-			throw new RuntimeException("【根据员工ID获取人员信息】请求失败:" + result);
+			return null;
 		}
 		JSONObject object = jsonObject.getJSONObject("object");
 		String status = object.getString("status");
 		if (!"0".equals(status)) {
 			log.error("【根据员工ID获取人员信息】失败:" + object.toJSONString());
-			throw new RuntimeException("【根据员工ID获取人员信息】失败:" + object.toJSONString());
+			return null;
 		}
 		StaffNodeInfo staffNodeInfo = object.getObject("data", StaffNodeInfo.class);
 		return staffNodeInfo;
 	}
+	
+	/**
+	 * 企业增加员工
+	 * @param request
+	 * @return
+	 */
+	public static ResultUtil<SaveStaffNode> saveStaffNode(SaveStaffNodeRequest request){
+		//请求路径
+		String url = qianYunTongConfig.getApiUrl() + "/openapi/rest/1.0/saveStaffNode";
+		//私钥文件
+		String skprivateKeyFile = qianYunTongConfig.getPrivateKeyPath();
+		//注意:私钥文件需要开发者手动新建.pem文件,将委办局提供的私钥串复制进文件里用于sign加密
+		String appKey = qianYunTongConfig.getAppkey();//appkey
+		Map<String, String> headers = new HashMap<>();
+		headers.put("Content-Type", "application/json");
+		Map<String, Object> contentMap = new HashMap<String, Object>();
+		Date nowdate = new Date();
+		SimpleDateFormat date = new SimpleDateFormat("yyyyMMddHHmmss");
+		
+		String timeStamp = date.format(nowdate);
+		String messageId = UUID.randomUUID().toString().replaceAll("-", "");
+		contentMap.put(SystemParameterNames.getAppKey(), appKey);
+		contentMap.put(SystemParameterNames.getMessage_id(), messageId);
+		contentMap.put(SystemParameterNames.getUserName(), qianYunTongConfig.getUserName());
+		contentMap.put(SystemParameterNames.getStatus(), qianYunTongConfig.getStatus());
+		contentMap.put("content", new Gson().toJson(request));
+		log.info("【企业增加员工】请求地址:" + url);
+		log.info("【企业增加员工】请求参数:" + JSON.toJSONString(contentMap));
+		String result = OpenApiClient.sendCommonHttpRequst(url, headers, "POST", skprivateKeyFile, timeStamp, contentMap);
+		log.info("【企业增加员工】请求结果:" + result);
+		JSONObject jsonObject = JSON.parseObject(result);
+		String retCode = jsonObject.getString("retCode");
+		if (!"0".equals(retCode)) {
+			log.error("【企业增加员工】请求失败:" + result);
+			String retMsg = jsonObject.getString("retMsg");
+			retMsg = retMsg.substring(retMsg.indexOf("{"));
+			jsonObject = JSON.parseObject(retMsg);
+			return ResultUtil.error("【企业增加员工】请求失败:" + jsonObject.getString("msg"));
+		}
+		JSONObject object = jsonObject.getJSONObject("object");
+		String status = object.getString("status");
+		if (!"0".equals(status)) {
+			log.error("【企业增加员工】失败:" + object.toJSONString());
+			return ResultUtil.error("【企业增加员工】失败:" + object.getString("desc"));
+		}
+		SaveStaffNode saveStaffNode = object.getObject("data", SaveStaffNode.class);
+		return ResultUtil.success(saveStaffNode);
+	}
 }

--
Gitblit v1.7.1