🐛 #2208【企业微信】 获取打卡人员排班信息接口修复返回结果类结构

This commit is contained in:
longliveh 2021-07-18 23:03:55 +08:00 committed by GitHub
parent 72205bbf16
commit d3730b361d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 88 additions and 101 deletions

View File

@ -165,7 +165,7 @@ public interface WxCpOaService {
* @return 排班表信息
* @throws WxErrorException the wx error exception
*/
WxCpCheckinSchedule getCheckinScheduleList(Date startTime, Date endTime, List<String> userIdList) throws WxErrorException;
List<WxCpCheckinSchedule> getCheckinScheduleList(Date startTime, Date endTime, List<String> userIdList) throws WxErrorException;
}

View File

@ -285,7 +285,7 @@ public class WxCpOaServiceImpl implements WxCpOaService {
}
@Override
public WxCpCheckinSchedule getCheckinScheduleList(Date startTime, Date endTime, List<String> userIdList) throws WxErrorException {
public List<WxCpCheckinSchedule> getCheckinScheduleList(Date startTime, Date endTime, List<String> userIdList) throws WxErrorException {
if (startTime == null || endTime == null) {
throw new WxRuntimeException("starttime and endtime can't be null");
}
@ -298,9 +298,6 @@ public class WxCpOaServiceImpl implements WxCpOaService {
long endTimestamp = endTime.getTime() / 1000L;
long startTimestamp = startTime.getTime() / 1000L;
if (endTimestamp - startTimestamp < 0 || endTimestamp - startTimestamp >= MONTH_SECONDS) {
throw new WxRuntimeException("获取记录时间跨度不超过一个月");
}
JsonObject jsonObject = new JsonObject();
JsonArray jsonArray = new JsonArray();
@ -318,8 +315,8 @@ public class WxCpOaServiceImpl implements WxCpOaService {
JsonObject tmpJson = GsonParser.parse(responseContent);
return WxCpGsonBuilder.create()
.fromJson(
tmpJson,
new TypeToken<WxCpCheckinSchedule>() {
tmpJson.get("schedule_list"),
new TypeToken<List<WxCpCheckinSchedule>>() {
}.getType()
);
}

View File

@ -13,17 +13,8 @@ import java.util.List;
@Data
public class WxCpCheckinSchedule implements Serializable {
private static final long serialVersionUID = 5399197385827384108L;
/**
* schedule_list 排班表信息
*/
@SerializedName("schedule_list")
private List<UserScheduleInfo> scheduleList;
@Data
public class UserScheduleInfo implements Serializable {
private static final long serialVersionUID = 5515056962298169806L;
/**
* userid 打卡人员userid
*/
@ -64,7 +55,7 @@ public class WxCpCheckinSchedule implements Serializable {
private List<Schedule> scheduleList;
@Data
public class Schedule implements Serializable{
public class Schedule implements Serializable {
private static final long serialVersionUID = 8344153237512495728L;
@ -139,6 +130,5 @@ public class WxCpCheckinSchedule implements Serializable {
}
}
}
}

View File

@ -85,7 +85,7 @@ public class WxCpOaServiceImplTest {
Date startTime = DateFormatUtils.ISO_8601_EXTENDED_DATE_FORMAT.parse("2021-07-01");
Date endTime = DateFormatUtils.ISO_8601_EXTENDED_DATE_FORMAT.parse("2021-07-31");
WxCpCheckinSchedule results = wxService.getOaService()
List<WxCpCheckinSchedule> results = wxService.getOaService()
.getCheckinScheduleList(startTime, endTime, Lists.newArrayList("12003648"));
assertThat(results).isNotNull();