| | |
| | | |
| | | /** |
| | | * 企业员工工具类 |
| | | * |
| | | * @author zhibing.pu |
| | | * @Date 2025/6/6 16:17 |
| | | */ |
| | |
| | | |
| | | private static QianYunTongConfig qianYunTongConfig = SpringContextsUtil.getBean(QianYunTongConfig.class).getQianYunTongConfig(); |
| | | |
| | | public static void main(String[] args) { |
| | | SaveStaffNodeRequest request = new SaveStaffNodeRequest(); |
| | | request.setMobile("15828353127"); |
| | | request.setEntercode("981100006005951"); |
| | | request.setEmpName("蒲"); |
| | | request.setEmpNickname("蒲"); |
| | | request.setLoginNo("15828353125"); |
| | | request.setEmpSex("男"); |
| | | request.setMphone("15828353125"); |
| | | request.setEmail("15828353125@qyt.com"); |
| | | request.setDeptId(0); |
| | | request.setPositionId(1); |
| | | request.setSuperLevel(0); |
| | | request.setHideMobile(0); |
| | | ResultUtil<SaveStaffNode> resultUtil = EmployeeUtil.saveStaffNode(request); |
| | | System.out.println(resultUtil.getData()); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 企业增加员工 |
| | | * |
| | | * @param request |
| | | * @return |
| | | */ |
| | | public static ResultUtil<SaveStaffNode> saveStaffNode(SaveStaffNodeRequest request) { |
| | | public static ResultUtil<SaveStaffNode> saveStaffNode(SaveStaffNodeRequest request){ |
| | | //请求路径 |
| | | String url = qianYunTongConfig.getApiUrl() + "/openapi/rest/1.0/saveStaffNode"; |
| | | //私钥文件 |
| | |
| | | if (!"0".equals(retCode)) { |
| | | log.error("【企业增加员工】请求失败:" + result); |
| | | String retMsg = jsonObject.getString("retMsg"); |
| | | if(retMsg.contains("员工昵称已存在")){ |
| | | request.setEmpName(request.getEmpName() + Double.valueOf(Math.random() * 100).intValue()); |
| | | request.setEmpNickname(request.getEmpName()); |
| | | return saveStaffNode(request); |
| | | } |
| | | retMsg = retMsg.substring(retMsg.indexOf("{")); |
| | | jsonObject = JSON.parseObject(retMsg); |
| | | return ResultUtil.error("【企业增加员工】请求失败:" + jsonObject.getString("msg")); |
| | |
| | | StaffNodeInfo staffNodeInfo = object.getObject("data", StaffNodeInfo.class); |
| | | return staffNodeInfo; |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 创建账号-同步证联开户信息 |
| | | * @param request |
| | | * @return 状态 0 成功 其他失败 |
| | | */ |
| | | public static Integer addAccountInfo(AddAccountInfoRequest request){ |
| | | request.setPartnerId("522700"); |
| | | request.setIndustryCode("100"); |
| | | request.setPayModeId("501101"); |
| | | request.setAccessMode("APP"); |
| | | |
| | | //请求路径 |
| | | String url = qianYunTongConfig.getApiUrl() + "/openapi/rest/1.0/addAccountInfo"; |
| | | //私钥文件 |
| | | 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("【创建账号-同步证联开户信息】请求失败:" + jsonObject.getString("retMsg")); |
| | | return -1; |
| | | } |
| | | JSONObject object = jsonObject.getJSONObject("object"); |
| | | return object.getInteger("status"); |
| | | } |
| | | } |