|
|
@@ -6,22 +6,26 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
|
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
import com.template.api.HouseNumberControllerAPI;
|
|
|
+import com.template.common.utils.ExcelUtils;
|
|
|
+import com.template.common.utils.ExcelUtils2;
|
|
|
import com.template.model.dto.HouseNumberBindingDto;
|
|
|
import com.template.model.dto.HouseNumberDeleteBindingDto;
|
|
|
-import com.template.model.pojo.ElectricEquipment;
|
|
|
-import com.template.model.pojo.HouseNumber;
|
|
|
-import com.template.model.pojo.PermissionSetting;
|
|
|
-import com.template.model.pojo.WaterEquipment;
|
|
|
+import com.template.model.dto.HouseNumberImportDto;
|
|
|
+import com.template.model.pojo.*;
|
|
|
import com.template.model.result.CommonResult;
|
|
|
-import com.template.services.ElectricEquipmentService;
|
|
|
-import com.template.services.HouseNumberService;
|
|
|
-import com.template.services.PermissionSettingService;
|
|
|
-import com.template.services.WaterEquipmentService;
|
|
|
+import com.template.model.result.PageUtils;
|
|
|
+import com.template.model.vo.HouseNumberPageVo;
|
|
|
+import com.template.services.*;
|
|
|
+import org.apache.poi.ss.usermodel.Row;
|
|
|
+import org.apache.poi.ss.usermodel.Sheet;
|
|
|
+import org.apache.poi.ss.usermodel.Workbook;
|
|
|
+import org.apache.poi.xssf.usermodel.XSSFWorkbook;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
-import org.springframework.web.bind.annotation.RequestMapping;
|
|
|
-
|
|
|
import org.springframework.web.bind.annotation.RestController;
|
|
|
+import org.springframework.web.multipart.MultipartFile;
|
|
|
|
|
|
+import javax.servlet.http.HttpServletResponse;
|
|
|
+import java.util.ArrayList;
|
|
|
import java.util.List;
|
|
|
|
|
|
/**
|
|
|
@@ -47,6 +51,8 @@ public class HouseNumberController implements HouseNumberControllerAPI {
|
|
|
@Autowired
|
|
|
PermissionSettingService permissionSettingService;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ HouseService houseService;
|
|
|
@Override
|
|
|
public CommonResult pullDownList(String permissionSettingId, int page, int size, String keyWord) {
|
|
|
PermissionSetting permissionSetting = permissionSettingService.getById(permissionSettingId);
|
|
|
@@ -164,19 +170,11 @@ public class HouseNumberController implements HouseNumberControllerAPI {
|
|
|
size = 10;
|
|
|
}
|
|
|
|
|
|
- LambdaQueryWrapper<HouseNumber> wrapper=new LambdaQueryWrapper<>();
|
|
|
- wrapper.like(ObjectUtils.isNotEmpty(keyWord),HouseNumber::getRoomNumber,keyWord)
|
|
|
- .or()
|
|
|
- .like(ObjectUtils.isNotEmpty(keyWord),HouseNumber::getElectricEquipmentMeterName,keyWord)
|
|
|
- .or()
|
|
|
- .like(ObjectUtils.isNotEmpty(keyWord),HouseNumber::getWaterEquipmentMeterName,keyWord)
|
|
|
- ;
|
|
|
- wrapper.between(ObjectUtils.isNotEmpty(startTime)&&ObjectUtils.isNotEmpty(endTime),HouseNumber::getCreateTime,startTime,endTime);
|
|
|
- wrapper.orderByDesc(HouseNumber::getRoomNumber);
|
|
|
|
|
|
- IPage<HouseNumber> page1 = houseNumberService.page(new Page<>(page, size), wrapper);
|
|
|
+ PageUtils<HouseNumberPageVo> pageList =houseNumberService.pageList(page,size,keyWord,startTime,endTime);
|
|
|
|
|
|
- return CommonResult.ok(page1);
|
|
|
+
|
|
|
+ return CommonResult.ok(pageList);
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
@@ -284,5 +282,118 @@ public class HouseNumberController implements HouseNumberControllerAPI {
|
|
|
return CommonResult.ok();
|
|
|
|
|
|
}
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public CommonResult listExport(HttpServletResponse response, String permissionSettingId, String keyWord, String startTime, String endTime) {
|
|
|
+ PermissionSetting permissionSetting = permissionSettingService.getById(permissionSettingId);
|
|
|
+ if (ObjectUtils.isEmpty(permissionSetting)) {
|
|
|
+ return CommonResult.fail("非法进入");
|
|
|
+ }
|
|
|
+// 判断该用户是否拥有权限
|
|
|
+ String hydropowerManagement = permissionSetting.getHydropowerManagement();
|
|
|
+ if (!"0".equals(hydropowerManagement) && !hydropowerManagement.contains("5")) {
|
|
|
+ return CommonResult.fail("此账号暂无该权限");
|
|
|
+ }
|
|
|
+
|
|
|
+ List<HouseNumberPageVo> vos =houseNumberService.listExport(keyWord,startTime,endTime);
|
|
|
+
|
|
|
+
|
|
|
+// 导出
|
|
|
+ Workbook workbook = new XSSFWorkbook();
|
|
|
+ Sheet sheet = workbook.createSheet("水电设备绑定表");
|
|
|
+ Row headerRow = sheet.createRow(0);
|
|
|
+ headerRow.createCell(0).setCellValue("序号");
|
|
|
+ headerRow.createCell(1).setCellValue("水表编码");
|
|
|
+ headerRow.createCell(2).setCellValue("电表编码");
|
|
|
+ headerRow.createCell(3).setCellValue("房型类型");
|
|
|
+ headerRow.createCell(4).setCellValue("房型名称");
|
|
|
+ headerRow.createCell(5).setCellValue("房间号");
|
|
|
+
|
|
|
+ if (ObjectUtils.isNotEmpty(vos) && vos.size() > 0) {
|
|
|
+ for (int i = 0; i < vos.size(); i++) {
|
|
|
+ Row dataRow1 = sheet.createRow(i + 1);
|
|
|
+ HouseNumberPageVo vo = vos.get(i);
|
|
|
+ dataRow1.createCell(0).setCellValue(i+1);
|
|
|
+ dataRow1.createCell(1).setCellValue(vo.getWaterEquipmentMeterName());
|
|
|
+ dataRow1.createCell(2).setCellValue(vo.getElectricEquipmentMeterName());
|
|
|
+ Integer roomType = vo.getRoomType();
|
|
|
+ String houseType="";
|
|
|
+ if (1==roomType) {
|
|
|
+ houseType="全日房";
|
|
|
+ }else {
|
|
|
+ houseType="钟点房";
|
|
|
+ }
|
|
|
+ dataRow1.createCell(3).setCellValue(houseType);
|
|
|
+ dataRow1.createCell(4).setCellValue(vo.getHouseName());
|
|
|
+ dataRow1.createCell(5).setCellValue(vo.getHouseName());
|
|
|
+
|
|
|
+ }
|
|
|
+ }
|
|
|
+ // 将工作簿写入文件
|
|
|
+ ExcelUtils2.excelDownload(workbook, "水电设备绑定表.xlsx", response);
|
|
|
+
|
|
|
+ return CommonResult.ok();
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public CommonResult importList(MultipartFile file) throws Exception {
|
|
|
+ List<HouseNumberImportDto> dtos= ExcelUtils.readMultipartFile(file, HouseNumberImportDto.class);
|
|
|
+
|
|
|
+ ArrayList<HouseNumber> houseNumbers = new ArrayList<>();
|
|
|
+ for (int i = 0; i < dtos.size(); i++) {
|
|
|
+ HouseNumberImportDto dto = dtos.get(i);
|
|
|
+
|
|
|
+ Integer roomType = dto.getRoomType();
|
|
|
+// 房间号
|
|
|
+ String roomNumber = dto.getRoomNumber();
|
|
|
+// 房型
|
|
|
+ String houseName = dto.getHouseName();
|
|
|
+
|
|
|
+ // 判断当前房型是否存在当前房间号
|
|
|
+ House house=houseService.getHouseName(houseName,roomType);
|
|
|
+ if (ObjectUtils.isEmpty(house)) {
|
|
|
+ return CommonResult.fail("第"+(i+2)+"行,"+"不存在"+houseName+"该房型");
|
|
|
+ }
|
|
|
+
|
|
|
+ Integer houseId = house.getId();
|
|
|
+
|
|
|
+ HouseNumber houseNumber=houseNumberService.getRoomNumber(houseId,roomNumber);
|
|
|
+ if (ObjectUtils.isEmpty(houseNumber)) {
|
|
|
+ return CommonResult.fail("第"+(i+2)+"行,"+"不存在"+roomNumber+"该房间号");
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ String electricEquipmentMeterName = dto.getElectricEquipmentMeterName();
|
|
|
+ LambdaQueryWrapper<ElectricEquipment> wrapperEE=new LambdaQueryWrapper<>();
|
|
|
+ wrapperEE.eq(ElectricEquipment::getMeterName,electricEquipmentMeterName);
|
|
|
+ ElectricEquipment electricEquipment = electricEquipmentService.getOne(wrapperEE);
|
|
|
+
|
|
|
+ if (ObjectUtils.isEmpty(electricEquipment)) {
|
|
|
+ return CommonResult.fail("第"+(i+2)+"行,"+"不存在"+electricEquipmentMeterName+"该电表设备号");
|
|
|
+ }
|
|
|
+
|
|
|
+ String waterEquipmentMeterName = dto.getWaterEquipmentMeterName();
|
|
|
+ LambdaQueryWrapper<WaterEquipment> wrapperWE=new LambdaQueryWrapper<>();
|
|
|
+ wrapperWE.eq(WaterEquipment::getMeterName,waterEquipmentMeterName);
|
|
|
+ WaterEquipment waterEquipment = waterEquipmentService.getOne(wrapperWE);
|
|
|
+ if (ObjectUtils.isEmpty(waterEquipment)) {
|
|
|
+ return CommonResult.fail("第"+(i+2)+"行,"+"不存在"+waterEquipmentMeterName+"该水表设备号");
|
|
|
+ }
|
|
|
+
|
|
|
+ houseNumber.setElectricEquipmentId(electricEquipment.getId()+"");
|
|
|
+ houseNumber.setElectricEquipmentMeterName(electricEquipment.getMeterName());
|
|
|
+ houseNumber.setWaterEquipmentId(waterEquipment.getId()+"");
|
|
|
+ houseNumber.setWaterEquipmentMeterName(waterEquipment.getMeterName());
|
|
|
+ houseNumbers.add(houseNumber);
|
|
|
+ }
|
|
|
+
|
|
|
+ boolean b = houseNumberService.saveOrUpdateBatch(houseNumbers);
|
|
|
+ if (b) {
|
|
|
+ return CommonResult.ok();
|
|
|
+ }
|
|
|
+ return CommonResult.fail();
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
}
|
|
|
|