| | |
| | | package com.gs.xky; |
| | | |
| | | import com.alibaba.fastjson.JSON; |
| | | import cn.hutool.core.collection.ListUtil; |
| | | import com.alibaba.fastjson2.JSON; |
| | | import com.gs.xky.config.*; |
| | | import com.gs.xky.dto.XkyEntity; |
| | | import com.gs.xky.dto.EmployeeInfo; |
| | | import com.gs.xky.dto.XkyDetail; |
| | | import com.gs.xky.service.ApiService; |
| | | import com.gs.xky.service.MesStaffService; |
| | | import com.gs.xky.service.XkyService; |
| | | import org.junit.jupiter.api.Test; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.boot.test.context.SpringBootTest; |
| | | |
| | | import java.io.IOException; |
| | | import java.util.List; |
| | | import java.util.stream.Collectors; |
| | | |
| | | @SpringBootTest |
| | | class XkyApplicationTests { |
| | | |
| | | |
| | | @Autowired |
| | | private XkyService xkyService; |
| | | |
| | | @Autowired |
| | | private ApiService apiService; |
| | | |
| | | @Autowired |
| | | private MesStaffService staffService; |
| | | |
| | | @Test |
| | | void contextLoads() throws IOException { |
| | | |
| | | long currentTimeMillis = System.currentTimeMillis(); |
| | | xkyService.GetSaveDetail(); |
| | | } |
| | | |
| | | ApiCommonParam apiParam = new ApiCommonParam(); |
| | | apiParam.setAppKey(DataAcquisitionConfiguration.TEST_APP_KEY);//发携客云提供的appKey |
| | | apiParam.setVersion("1.0");//接口版本 |
| | | apiParam.setOperateCompanyCode(DataAcquisitionConfiguration.TEST_COMPANY_CODE);//操作者所属公司编码 |
| | | apiParam.setOwnerCompanyCode(DataAcquisitionConfiguration.TEST_COMPANY_CODE);//数据所属公司编码,非集团公司默认赋值为操作公司 |
| | | apiParam.setTimestamps(currentTimeMillis / 1000);//当前时间对应的时间戳(秒数) |
| | | |
| | | String appSecret = DataAcquisitionConfiguration.TEST_APP_SECRET;//携客云提供的appSecret |
| | | |
| | | String sign = SignUtils.buildCurrentSign(JSON.toJSONString(apiParam), appSecret); |
| | | apiParam.setSign(sign); |
| | | |
| | | |
| | | // 计算五分钟前的时间戳 |
| | | long startDate = currentTimeMillis - (65 * 60 * 1000); // 5 分钟 = 5 * 60 * 1000 毫秒 |
| | | @Test |
| | | void cs() throws IOException { |
| | | XkyCommonParam param = XkyCommonParam.GetInit(); |
| | | |
| | | // 创建 BodyParam 对象并赋值 |
| | | BodyParam bodyParam = new BodyParam(); |
| | | bodyParam.setStartDate(startDate); |
| | | bodyParam.setEndDate(currentTimeMillis); |
| | | bodyParam.setErpCode("Z106"); |
| | | bodyParam.setStatus(new int[]{1}); |
| | | bodyParam.setLogisticsStatus(2); |
| | | |
| | | XkyCommonParam param = new XkyCommonParam(); |
| | | param.setCommonParam(apiParam); |
| | | bodyParam.setErpCode(DataAcquisitionConfiguration.TEST_ERP_CODE); |
| | | bodyParam.setDeliveryNo("22250212VVWU"); |
| | | |
| | | param.setBody(bodyParam); |
| | | |
| | | ApiResponse<XkyDetail> noList = apiService.sendListRequest(param, XkyDetail.class, "https://openapi.xiekeyun.com/delivery/getDetail.json"); |
| | | |
| | | ApiResponse<XkyEntity> xkyEntityApiResponse = apiService.sendListRequest(param, XkyEntity.class, "https://openapi.xiekeyun.com/delivery/getNoList.json"); |
| | | |
| | | System.out.println(JSON.toJSONString(xkyEntityApiResponse)); |
| | | System.out.println(JSON.toJSONString(noList.getData())); |
| | | } |
| | | |
| | | } |
| | | @Test |
| | | void cs1() throws IOException { |
| | | // DingTalkParam dingTalkParam = new DingTalkParam(0); |
| | | // |
| | | // DingTalkResponse<EmployeeInfo> employeeInfoDingTalkResponse = apiService.sendListRequest(dingTalkParam, EmployeeInfo.class, "http://192.168.1.64/eHR/eHRExternalService/Service.ashx"); |
| | | // |
| | | // //造梦者(浙江)科技有限公司 cUnitName |
| | | // //http://192.168.1.64/eHR |
| | | // List<EmployeeInfo> collect = employeeInfoDingTalkResponse.getData().stream().filter(s -> "造梦者(浙江)科技有限公司".equals(s.getCUnitName())).collect(Collectors.toList()); |
| | | // System.out.println(collect.size()); |
| | | // |
| | | // List<List<EmployeeInfo>> partition = ListUtil.partition(collect, 500); |
| | | // |
| | | // partition.forEach(list -> { |
| | | // staffService.SaveStaff(list); |
| | | // }); |
| | | |
| | | } |
| | | |
| | | |
| | | @Test |
| | | void cs2() throws IOException { |
| | | DingTalkParam dingTalkParam = new DingTalkParam(1); |
| | | |
| | | DingTalkResponse<EmployeeInfo> employeeInfoDingTalkResponse = apiService.sendListRequest(dingTalkParam, EmployeeInfo.class, "http://192.168.1.64/eHR/eHRExternalService/Service.ashx"); |
| | | |
| | | //造梦者(浙江)科技有限公司 cUnitName |
| | | //http://192.168.1.64/eHR |
| | | List<EmployeeInfo> collect = employeeInfoDingTalkResponse.getData().stream().filter(s -> "造梦者(浙江)科技有限公司".equals(s.getCUnitName())).collect(Collectors.toList()); |
| | | System.out.println(collect.size()); |
| | | |
| | | List<List<EmployeeInfo>> partition = ListUtil.partition(collect, 100); |
| | | |
| | | partition.forEach(list -> { |
| | | staffService.UpdateStaff(list); |
| | | }); |
| | | |
| | | } |
| | | } |