Pu Zhibing
2025-07-04 c8638df756d5c56f2d0c3ed35522fc5a340122c8
ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/qianyuntong/EmployeeUtil.java
@@ -23,49 +23,30 @@
public class EmployeeUtil {
   
   
   /**
    * 企业增加员工
    * @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);
   }
   
   
@@ -193,15 +174,60 @@
      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 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");
      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 = object.getObject("data", SaveStaffNode.class);
      return saveStaffNode;
   }
}