2023-05-15 17:30:15 优化完善设备管理的增、删、改、查、导入、模板下载、导出接口!

master
魔神煜修罗皇 2 years ago
parent b1ef74bf8e
commit 3d04e41bfc
  1. 4
      psdc-business/src/main/java/com/psdc/entity/PsdcDevice.java
  2. 17
      psdc-business/src/main/java/com/psdc/service/impl/PsdcDeviceServiceImpl.java
  3. 9
      psdc-business/src/main/resources/mapper/business/PsdcDeviceMapper.xml
  4. 38
      psdc-web/src/main/java/com/psdc/controller/manager/PsdcDeviceController.java
  5. BIN
      psdc-web/src/main/resources/template/AllDevicesData.xlsx

@ -24,9 +24,6 @@ public class PsdcDevice {
private Integer parentId;
/** 用户id */
private Integer userId ;
/** 用户名称 */
@Excel(name = "用户名称")
private String userName ;
/** 设备是否可控 */
private Integer isControl;
@ -51,6 +48,7 @@ public class PsdcDevice {
@Excel(name = "启用时间")
private String startTime ;
/** 设备模型 */
@Excel(name = "设备模型")
private String deviceModel;
/** 设备状态:1-未激活,2-禁用,3-在线,4-离线 */

@ -87,7 +87,6 @@ public class PsdcDeviceServiceImpl implements IPsdcDeviceService {
public List<PsdcDeviceInfoRes> queryAllByLimit(PsdcDevice psdcDevice) {
List<PsdcDeviceInfoRes> list = psdcDeviceMapper.queryAllByLimit(psdcDevice);
List<Integer> ary = new ArrayList<>();
List<PsdcDeviceInfoRes> removeList = new ArrayList<>();
for (PsdcDeviceInfoRes dev : list){
// 导出时转换为String
if (null != dev){
@ -98,16 +97,6 @@ public class PsdcDeviceServiceImpl implements IPsdcDeviceService {
}
}
}
// for (PsdcDeviceInfoRes dev : list){
// // 剔除多设备父模型
// for (Integer pId : ary){
// if (dev.getDeviceId() == pId){
// removeList.add(dev);
// }
// }
// }
//
// list.removeAll(removeList);
return list;
}
@ -143,12 +132,16 @@ public class PsdcDeviceServiceImpl implements IPsdcDeviceService {
for (PsdcDevice pd : devices){
pd.setCreateBy(cjr);
pd.setCreateTime(new Date());
// pd.setDeviceType(Integer.parseInt(pd.getDevType()));
// 添加新设备时,默认父模型为根目录
pd.setParentId(0);
// 新导入的设备默认状态为: 未激活
// 新导入的设备默认启动时间为null,请在设备激活后手动修改!
pd.setDeviceStatus(1);
// 添加新设备时,默认可以在能源监测设备列表显示,可以自己手动修改
pd.setDeviceType(2);
// 新导入的设备默认运行状态为: 关闭
pd.setDeviceRunstatus(2);
System.out.println("设备Infos: " + pd + "\n");
}
psdcDeviceMapper.saveDevicesData(devices);
return true;

@ -251,9 +251,15 @@
<if test="userId != null and userId != ''">
user_id = #{userId},
</if>
<if test="parentId != null and parentId != ''">
parent_id = #{parentId},
</if>
<if test="deviceType != null and deviceType != ''">
device_type = #{deviceType},
</if>
<if test="deviceModel != null and deviceModel != ''">
device_model = #{deviceModel},
</if>
<if test="deviceSn != null and deviceSn != ''">
device_sn = #{deviceSn},
</if>
@ -281,6 +287,9 @@
<if test="photoUrl != null and photoUrl != ''">
photo_url = #{photoUrl},
</if>
<if test="isControl != null and isControl != ''">
is_control = #{isControl},
</if>
<if test="createBy != null and createBy != ''">
create_by = #{createBy},
</if>

@ -108,12 +108,12 @@ public class PsdcDeviceController extends BaseController {
@Log(title = "设备管理", businessType = BusinessType.EXPORT)
@RequestMapping(value = "/daochuDevs", method = RequestMethod.POST)
public void daochuDevDta(HttpServletResponse response, @RequestBody PsdcDevice pd) {
// List<PsdcDevice> list = psdcDeviceService.queryAllByLimit(pd);
// for (PsdcDevice dev : list){
// dev.setUserName(sysUserService.selectUserById(Long.valueOf(dev.getUserId())).getUserName());
// }
// ExcelUtil<PsdcDevice> util = new ExcelUtil<>(PsdcDevice.class);
// util.exportExcel(response, list, "角色数据");
List<PsdcDeviceInfoRes> list = psdcDeviceService.queryAllByLimit(pd);
for (PsdcDeviceInfoRes dev : list){
dev.setUserName(sysUserService.selectUserById(Long.valueOf(dev.getUserId())).getUserName());
}
ExcelUtil<PsdcDeviceInfoRes> util = new ExcelUtil<>(PsdcDeviceInfoRes.class);
util.exportExcel(response, list, "设备信息数据");
}
/**
@ -132,21 +132,19 @@ public class PsdcDeviceController extends BaseController {
response.setContentType("application/vnd.ms-template;charset=UTF-8");
// 获取文件的路径
try (InputStream inputStream = Thread.currentThread().getContextClassLoader().getResourceAsStream("template/AllDevicesData.xlsx")) {
//读取excel模板
// 读取excel模板
XSSFWorkbook wb = new XSSFWorkbook(inputStream);
wb.setSelectedTab(1);
XSSFSheet sheet = wb.createSheet("设备类型表");
XSSFRow row0 = sheet.createRow(0);
XSSFRow row1 = sheet.createRow(1);
XSSFRow row2 = sheet.createRow(2);
row0.createCell(0).setCellValue("设备类型Id");
row0.createCell(1).setCellValue("设备类型名称");
row1.createCell(0).setCellValue("1");
row1.createCell(1).setCellValue("监测设备");
row2.createCell(0).setCellValue("2");
row2.createCell(1).setCellValue("运行设备");
// wb.setSelectedTab(1);
// XSSFSheet sheet = wb.createSheet("设备类型表");
// XSSFRow row0 = sheet.createRow(0);
// XSSFRow row1 = sheet.createRow(1);
// XSSFRow row2 = sheet.createRow(2);
// row0.createCell(0).setCellValue("设备类型Id");
// row0.createCell(1).setCellValue("设备类型名称");
// row1.createCell(0).setCellValue("1");
// row1.createCell(1).setCellValue("监测设备");
// row2.createCell(0).setCellValue("2");
// row2.createCell(1).setCellValue("运行设备");
OutputStream os = new BufferedOutputStream(response.getOutputStream());
wb.write(os);
os.flush();

Loading…
Cancel
Save