|
|
@@ -378,6 +378,8 @@ public class HouseOrderController implements HouseOrderAPI {
|
|
|
houseOrder.setTimeOut(timeOut);
|
|
|
|
|
|
houseOrder.setSource(source);
|
|
|
+ houseOrder.setSourceId(establishOrderDto.getSourceId());
|
|
|
+
|
|
|
|
|
|
// 单价 全日房 价格单价=总价/房间数/天数
|
|
|
// 钟点房 价格单价=总价/房间数
|
|
|
@@ -664,7 +666,10 @@ public class HouseOrderController implements HouseOrderAPI {
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public CommonResult pageList(int adminId, int page, int size, String keyWord, String houseType, String orderStatus, String payPriceStartTime, String payPriceEndTime, String refundStartTime, String refundEndTime, String cancelStartTime, String cancelEndTime, String liveStartTime, String liveEndTime, String leaveStartTime, String leaveEndTime, String houseId, Integer keyType, Integer giveBack, Integer buildingId, Integer orgId) {
|
|
|
+ public CommonResult pageList(int adminId, int page, int size, String keyWord, String houseType, String orderStatus, String payPriceStartTime,
|
|
|
+ String payPriceEndTime, String refundStartTime, String refundEndTime, String cancelStartTime, String cancelEndTime,
|
|
|
+ String reserveLiveStartTime, String reserveLiveEndTime, String reserveLeaveStartTime, String reserveLeaveEndTime,
|
|
|
+ String houseId, Integer keyType, Integer giveBack, Integer buildingId, Integer orgId) {
|
|
|
// PermissionSetting permissionSetting = permissionSettingService.getById(adminId);
|
|
|
// if (ObjectUtils.isEmpty(permissionSetting)) {
|
|
|
// return CommonResult.fail("非法进入");
|
|
|
@@ -683,7 +688,9 @@ public class HouseOrderController implements HouseOrderAPI {
|
|
|
size = 10;
|
|
|
}
|
|
|
|
|
|
- PageUtils<HouseOrderPageListVo> pageList = houseOrderService.pageList(page, size, keyWord, houseType, orderStatus, payPriceStartTime, payPriceEndTime, refundStartTime, refundEndTime, cancelStartTime, cancelEndTime, liveStartTime, liveEndTime, leaveStartTime, leaveEndTime, houseId, keyType, giveBack, buildingId, orgId);
|
|
|
+ PageUtils<HouseOrderPageListVo> pageList = houseOrderService.pageList(page, size, keyWord, houseType, orderStatus, payPriceStartTime,
|
|
|
+ payPriceEndTime, refundStartTime, refundEndTime, cancelStartTime, cancelEndTime,
|
|
|
+ reserveLiveStartTime, reserveLiveEndTime, reserveLeaveStartTime, reserveLeaveEndTime, houseId, keyType, giveBack, buildingId, orgId);
|
|
|
List<HouseOrderPageListVo> list = pageList.getList();
|
|
|
for (int i = 0; i < list.size(); i++) {
|
|
|
HouseOrderPageListVo houseOrderPageListVo = list.get(i);
|
|
|
@@ -709,6 +716,19 @@ public class HouseOrderController implements HouseOrderAPI {
|
|
|
choiceBox = "6";
|
|
|
}
|
|
|
houseOrderPageListVo.setChoiceBox(choiceBox);
|
|
|
+ String[] arr=(houseOrderPageListVo.getSourceId()==null?"":houseOrderPageListVo.getSourceId()).split(",");
|
|
|
+ ArrayList<String> idList = new ArrayList<String>(Arrays.asList(arr)) ;
|
|
|
+ if(!StringUtils.hasText(houseOrderPageListVo.getSource())){
|
|
|
+ houseOrderPageListVo.setSource("自费");
|
|
|
+ }else if ("1".equals(houseOrderPageListVo.getSource())){
|
|
|
+ houseOrderPageListVo.setSource("课表");
|
|
|
+ List<ClassSchedule> schedules=new ArrayList<>(classScheduleService.listByIds(idList));
|
|
|
+ houseOrderPageListVo.setSchedules(schedules);
|
|
|
+ } else if ("2".equals(houseOrderPageListVo.getSource())){
|
|
|
+ houseOrderPageListVo.setSource("流程");
|
|
|
+ List<ApplicationProcedureTemporary> applicationProcedureTemporaries= new ArrayList<>(applicationProcedureTemporaryService.listByIds(idList));
|
|
|
+ houseOrderPageListVo.setApplicationProcedureTemporaries(applicationProcedureTemporaries);
|
|
|
+ }
|
|
|
}
|
|
|
pageList.setList(list);
|
|
|
|
|
|
@@ -1571,7 +1591,7 @@ public class HouseOrderController implements HouseOrderAPI {
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public void queryExport(HttpServletResponse response, int adminId, String keyWord, String houseType, String orderStatus, String payPriceStartTime, String payPriceEndTime, String refundStartTime, String refundEndTime, String cancelStartTime, String cancelEndTime, String liveStartTime, String liveEndTime, String leaveStartTime, String leaveEndTime, String houseId, Integer keyType, Integer giveBack, Integer buildingId, Integer orgId) {
|
|
|
+ public void queryExport(HttpServletResponse response, int adminId, String keyWord, String houseType, String orderStatus, String payPriceStartTime, String payPriceEndTime, String refundStartTime, String refundEndTime, String cancelStartTime, String cancelEndTime, String reserveLiveStartTime, String reserveLiveEndTime, String reserveLeaveStartTime, String reserveLeaveEndTime, String houseId, Integer keyType, Integer giveBack, Integer buildingId, Integer orgId) {
|
|
|
// PermissionSetting permissionSetting = permissionSettingService.getById(adminId);
|
|
|
// if (ObjectUtils.isEmpty(permissionSetting)) {
|
|
|
// return CommonResult.fail("非法进入");
|
|
|
@@ -1582,7 +1602,7 @@ public class HouseOrderController implements HouseOrderAPI {
|
|
|
// return CommonResult.fail("此账号暂无该权限");
|
|
|
// }
|
|
|
|
|
|
- List<QueryExportVo> vos = houseOrderService.queryExport(keyWord, houseType, orderStatus, payPriceStartTime, payPriceEndTime, refundStartTime, refundEndTime, cancelStartTime, cancelEndTime, liveStartTime, liveEndTime, leaveStartTime, leaveEndTime, houseId, keyType, giveBack, buildingId, orgId);
|
|
|
+ List<QueryExportVo> vos = houseOrderService.queryExport(keyWord, houseType, orderStatus, payPriceStartTime, payPriceEndTime, refundStartTime, refundEndTime, cancelStartTime, cancelEndTime, reserveLiveStartTime, reserveLiveEndTime, reserveLeaveStartTime, reserveLeaveEndTime, houseId, keyType, giveBack, buildingId, orgId);
|
|
|
|
|
|
// 导出
|
|
|
Workbook workbook = new XSSFWorkbook();
|
|
|
@@ -1610,6 +1630,8 @@ public class HouseOrderController implements HouseOrderAPI {
|
|
|
headerRow.createCell(19).setCellValue("支付时间");
|
|
|
headerRow.createCell(20).setCellValue("退款时间");
|
|
|
headerRow.createCell(21).setCellValue("取消时间");
|
|
|
+ headerRow.createCell(22).setCellValue("来源");
|
|
|
+ headerRow.createCell(23).setCellValue("来源详情");
|
|
|
|
|
|
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
|
|
if (ObjectUtils.isNotEmpty(vos) && vos.size() > 0) {
|
|
|
@@ -1732,6 +1754,31 @@ public class HouseOrderController implements HouseOrderAPI {
|
|
|
} else {
|
|
|
dataRow1.createCell(21).setCellValue(sdf.format(cancelTime));
|
|
|
}
|
|
|
+ String[] arr=(vo.getSourceId()==null?"":vo.getSourceId()).split(",");
|
|
|
+ ArrayList<String> idList = new ArrayList<String>(Arrays.asList(arr)) ;
|
|
|
+ if(!StringUtils.hasText(vo.getSource())){
|
|
|
+ dataRow1.createCell(22).setCellValue("自费");
|
|
|
+ dataRow1.createCell(23).setCellValue("");
|
|
|
+ }else if ("1".equals(vo.getSource())){
|
|
|
+ vo.setSource("课表");
|
|
|
+ List<ClassSchedule> schedules=new ArrayList<>(classScheduleService.listByIds(idList));
|
|
|
+ String data = schedules.stream().peek((ClassSchedule u) -> u.setJsxm("姓名:"+u.getJsxm()+ ";工号:" + u.getJsgh() + ";课表日期:" + u.getDateTime() + ";备注:" + u.getRemark()+";")).map(ClassSchedule::getJsxm).collect(Collectors.joining("\r\n"));
|
|
|
+ dataRow1.createCell(22).setCellValue("课表");
|
|
|
+ dataRow1.createCell(23).setCellValue(data);
|
|
|
+ } else if ("2".equals(vo.getSource())){
|
|
|
+ vo.setSource("流程");
|
|
|
+ List<ApplicationProcedureTemporaryVo> applicationProcedureTemporaries= new ArrayList<>();
|
|
|
+ for (int j = 0; j <idList.size(); j++) {
|
|
|
+ if (StringUtils.hasText(idList.get(j))){
|
|
|
+ applicationProcedureTemporaries.add(applicationProcedureTemporaryService.appletDetail(Integer.valueOf(idList.get(j))));
|
|
|
+ }
|
|
|
+ }
|
|
|
+ String data = applicationProcedureTemporaries.stream().peek((ApplicationProcedureTemporaryVo u) ->
|
|
|
+ u.setUsersName("申请人姓名:"+u.getUsersName()+ ";申请人部门" + u.getOrgName() + ";房间数量:" + u.getHouseCount()
|
|
|
+ + ";开始时间:" + u.getStartTime()+";结束时间"+u.getEndTime()+";审核状态:"+u.getStatus()+"(0:已拒绝,1:待审批,2:处理中,3:已同意);")).map(ApplicationProcedureTemporaryVo::getUsersName).collect(Collectors.joining("\r\n"));
|
|
|
+ dataRow1.createCell(22).setCellValue("流程");
|
|
|
+ dataRow1.createCell(23).setCellValue(data);
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
// 将工作簿写入文件
|
|
|
@@ -3662,6 +3709,7 @@ public class HouseOrderController implements HouseOrderAPI {
|
|
|
long until = state.until(end, ChronoUnit.DAYS);
|
|
|
|
|
|
Integer count = 1;
|
|
|
+ List<Integer> idList =new ArrayList<>();
|
|
|
if (dayDiff + until > 2) {
|
|
|
count = 0;
|
|
|
} else {
|
|
|
@@ -3673,7 +3721,6 @@ public class HouseOrderController implements HouseOrderAPI {
|
|
|
wrapperCS.eq(ClassSchedule::getJsgh, users.getCardNumber())
|
|
|
.between(ClassSchedule::getDateTime, startS, endS);
|
|
|
List<ClassSchedule> scheduleList = classScheduleService.list(wrapperCS);
|
|
|
-
|
|
|
// 只要有一天是空的就不是免费
|
|
|
if (ObjectUtils.isEmpty(scheduleList)) {
|
|
|
count = 0;
|
|
|
@@ -3685,11 +3732,14 @@ public class HouseOrderController implements HouseOrderAPI {
|
|
|
count = 0;
|
|
|
break;
|
|
|
}
|
|
|
+ idList.add(scheduleList.get(0).getId());
|
|
|
}
|
|
|
|
|
|
}
|
|
|
}
|
|
|
vo.setCount(count);
|
|
|
+ vo.setSourceId(idList.toString());
|
|
|
+ vo.setDays((int) (until-dayDiff));
|
|
|
if (count > 0) {
|
|
|
vos.add(vo);
|
|
|
}
|
|
|
@@ -3700,22 +3750,35 @@ public class HouseOrderController implements HouseOrderAPI {
|
|
|
if (ObjectUtils.isEmpty(aptList)) {
|
|
|
vo1.setCount(0);
|
|
|
} else {
|
|
|
- ApplicationProcedureTemporary applicationProcedureTemporary = aptList.get(0);
|
|
|
- String houseCount = applicationProcedureTemporary.getHouseCount();
|
|
|
- String startTime = applicationProcedureTemporary.getStartTime();
|
|
|
- String endTime1 = applicationProcedureTemporary.getEndTime();
|
|
|
+ //可申请天数
|
|
|
+ long dayApt=0;
|
|
|
+ List<Integer> aptIdList =new ArrayList<>();
|
|
|
+ for (int i = 0; i <aptList.size() ; i++) {
|
|
|
+ ApplicationProcedureTemporary applicationProcedureTemporary = aptList.get(0);
|
|
|
+ String houseCount = applicationProcedureTemporary.getHouseCount();
|
|
|
+ String startTime = applicationProcedureTemporary.getStartTime();
|
|
|
+ String endTime1 = applicationProcedureTemporary.getEndTime();
|
|
|
// 计算开始到结束时间有多少订单
|
|
|
- LambdaQueryWrapper<HouseOrder> wrapper = new LambdaQueryWrapper<>();
|
|
|
- wrapper.eq(HouseOrder::getReserveUserId, userId)
|
|
|
- .eq(HouseOrder::getSource, 2)
|
|
|
- .between(HouseOrder::getReserveLiveTime, startTime, endTime1)
|
|
|
- .eq(HouseOrder::getPayPrice, 0)
|
|
|
- .in(HouseOrder::getOrderStatus, 1, 2, 3, 4, 8);
|
|
|
- List<HouseOrder> list = houseOrderService.list(wrapper);
|
|
|
- Integer count2 = Integer.valueOf(houseCount);
|
|
|
- count2 = count2 - list.size();
|
|
|
- vo1.setCount(count2);
|
|
|
-
|
|
|
+ LambdaQueryWrapper<HouseOrder> wrapper = new LambdaQueryWrapper<>();
|
|
|
+ wrapper.eq(HouseOrder::getReserveUserId, userId)
|
|
|
+ .eq(HouseOrder::getSource, 2)
|
|
|
+ .between(HouseOrder::getReserveLiveTime, startTime, endTime1)
|
|
|
+ .eq(HouseOrder::getPayPrice, 0)
|
|
|
+ .in(HouseOrder::getOrderStatus, 1, 2, 3, 4, 8);
|
|
|
+ List<HouseOrder> list = houseOrderService.list(wrapper);
|
|
|
+ Integer count2 = Integer.valueOf(houseCount);
|
|
|
+ count2 = count2 - list.size();
|
|
|
+ if(count2==0){
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ aptIdList.add(applicationProcedureTemporary.getId());
|
|
|
+ LocalDateTime stateTimeApt = LocalDateTime.parse(startTime, dateTimeFormatter1);
|
|
|
+ LocalDateTime endTimeApt = LocalDateTime.parse(endTime1, dateTimeFormatter1);
|
|
|
+ dayApt =dayApt+stateTimeApt.toLocalDate().until(endTimeApt.toLocalDate(), ChronoUnit.DAYS);
|
|
|
+ vo1.setCount(count2);
|
|
|
+ }
|
|
|
+ vo1.setDays((int) dayApt);
|
|
|
+ vo1.setSourceId(aptIdList.toString());
|
|
|
}
|
|
|
if (vo1.getCount() > 0) {
|
|
|
vos.add(vo1);
|