| | |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import java.util.ArrayList; |
| | | import java.util.HashMap; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | |
| | | /** |
| | | * 一次性费用导入 |
| | |
| | | @Autowired |
| | | private IUserInnerServiceSMO userInnerServiceSMOImpl; |
| | | |
| | | // @Override |
| | | // public List analysisExcel(Workbook workbook, JSONObject paramIn, ComponentValidateResult result) throws Exception { |
| | | // List<ImportRoomFee> importRoomFees = new ArrayList<ImportRoomFee>(); |
| | | // if (FeeDto.PAYER_OBJ_TYPE_ROOM.equals(paramIn.getString("objType"))) { |
| | | // getRooms(workbook, importRoomFees); |
| | | // }else{ |
| | | // getCars(workbook, importRoomFees); |
| | | // } |
| | | //// getRoomsAndCars(workbook, importRoomFees); |
| | | // generatorBatch(paramIn); |
| | | // for (ImportRoomFee importRoomFee : importRoomFees) { |
| | | // importRoomFee.setBatchId(paramIn.getString("batchId")); |
| | | // importRoomFee.setUserId(paramIn.getString("userId")); |
| | | // importRoomFee.setStoreId(paramIn.getString("storeId")); |
| | | // importRoomFee.setCommunityId(paramIn.getString("communityId")); |
| | | // importRoomFee.setFeeTypeCd(paramIn.getString("feeTypeCd")); |
| | | // importRoomFee.setObjType(paramIn.getString("objType")); |
| | | // |
| | | // } |
| | | // return importRoomFees; |
| | | // } |
| | | |
| | | @Override |
| | | public List analysisExcel(Workbook workbook, JSONObject paramIn, ComponentValidateResult result) throws Exception { |
| | | List<ImportRoomFee> importRoomFees = new ArrayList<ImportRoomFee>(); |
| | | if (FeeDto.PAYER_OBJ_TYPE_ROOM.equals(paramIn.getString("objType"))) { |
| | | getRooms(workbook, importRoomFees); |
| | | }else{ |
| | | getCars(workbook, importRoomFees); |
| | | } |
| | | getRoomsAndCars(workbook, importRoomFees); |
| | | generatorBatch(paramIn); |
| | | for (ImportRoomFee importRoomFee : importRoomFees) { |
| | | importRoomFee.setBatchId(paramIn.getString("batchId")); |
| | | importRoomFee.setUserId(paramIn.getString("userId")); |
| | | importRoomFee.setStoreId(paramIn.getString("storeId")); |
| | | importRoomFee.setCommunityId(paramIn.getString("communityId")); |
| | | importRoomFee.setFeeTypeCd(paramIn.getString("feeTypeCd")); |
| | | // importRoomFee.setFeeTypeCd(paramIn.getString("feeTypeCd")); |
| | | importRoomFee.setObjType(paramIn.getString("objType")); |
| | | |
| | | } |
| | | return importRoomFees; |
| | | } |
| | | |
| | | private void getRoomsAndCars(Workbook workbook, List<ImportRoomFee> importRoomFees) { |
| | | Sheet sheet = null; |
| | | sheet = ImportExcelUtils.getSheet(workbook, "房屋费用信息"); |
| | | List<Object[]> oList = ImportExcelUtils.listFromSheet(sheet); |
| | | ImportRoomFee importRoomFee = null; |
| | | Map<Integer, Object> debugs = new HashMap<Integer, Object>(); |
| | | for (int osIndex = 0; osIndex < oList.size(); osIndex++) { |
| | | Object[] os = oList.get(osIndex); |
| | | if (osIndex == 0) { // 第一行是 头部信息 直接跳过 |
| | | continue; |
| | | } |
| | | if (os[2] == null) { |
| | | continue; |
| | | } |
| | | if ((StringUtil.isNullOrNone(os[0]) && StringUtil.isNullOrNone(os[1])) || (!StringUtil.isNullOrNone(os[0]) && !StringUtil.isNullOrNone(os[1]))) { |
| | | Assert.hasValue(os[2], (osIndex + 1) + "行请写入费用主体和车牌号其中一列"); |
| | | continue; |
| | | } |
| | | Assert.hasValue(os[2], (osIndex + 1) + "行费用类型不能为空"); |
| | | Assert.hasValue(os[3], (osIndex + 1) + "行费用项目不能为空"); |
| | | |
| | | String startTime = handleExcelDateString(os[4].toString()); |
| | | String endTime = handleExcelDateString(os[5].toString()); |
| | | Assert.isDate(startTime, DateUtil.DATE_FORMATE_STRING_B, (osIndex + 1) + "行开始时间格式错误 请填写YYYY/MM/DD 文本格式"); |
| | | Assert.isDate(endTime, DateUtil.DATE_FORMATE_STRING_B, (osIndex + 1) + "行结束时间格式错误 请填写YYYY/MM/DD 文本格式"); |
| | | |
| | | |
| | | importRoomFee = new ImportRoomFee(); |
| | | importRoomFee.setPayerObjName(os[0]==null?os[1].toString():os[0].toString()); |
| | | // importRoomFee.set |
| | | importRoomFee.setFeeTypeCd(os[2].toString()); |
| | | |
| | | importRoomFee.setFeeName(os[3].toString()); |
| | | if(startTime != null){ |
| | | importRoomFee.setStartTime(startTime); |
| | | } |
| | | if(endTime != null){ |
| | | importRoomFee.setEndTime(endTime); |
| | | } |
| | | importRoomFee.setAmount(os[7].toString()); |
| | | importRoomFees.add(importRoomFee); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 获取 房屋信息 |
| | | * |