diff --git a/shoot-hand/ics-admin/src/main/java/com/ics/admin/controller/RepairIOController.java b/shoot-hand/ics-admin/src/main/java/com/ics/admin/controller/RepairIOController.java index 80eb17a..0c94e15 100644 --- a/shoot-hand/ics-admin/src/main/java/com/ics/admin/controller/RepairIOController.java +++ b/shoot-hand/ics-admin/src/main/java/com/ics/admin/controller/RepairIOController.java @@ -8,6 +8,8 @@ import com.ics.admin.domain.RepairDeviceType; import com.ics.admin.service.IRepairIOSerice; import com.ics.admin.service.IRepairService; import com.ics.admin.utils.EasyPoiUtils; +import com.ics.admin.utils.ExcelView; +import com.ics.admin.vo.RepairExportVo; import com.ics.common.core.controller.BaseController; import com.ics.common.core.domain.R; import com.ics.common.utils.DateUtils; @@ -31,6 +33,7 @@ import org.apache.poi.ss.usermodel.Workbook; import org.apache.poi.ss.util.CellRangeAddress; import org.apache.poi.ss.util.CellRangeAddressList; import org.apache.poi.xssf.usermodel.XSSFWorkbook; +import org.jxls.common.Context; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; @@ -44,6 +47,7 @@ import javax.servlet.ServletOutputStream; import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.util.ArrayList; +import java.util.Date; import java.util.List; /** @@ -276,4 +280,25 @@ public class RepairIOController extends BaseController { return R.ok("成功导入" + count + "条工单数据"); } + + @Ignore + //@RequiresPermissions(value = {"repair:manage:operator"}) + @RequestMapping("/exportRepair") + public void exportData(String startDate, String endDate) { + Date start, end; + try { + start = DateUtils.dateTime(DateUtils.YYYY_MM_DD_HH_MM_SS, startDate + " 00:00:00"); + end = DateUtils.dateTime(DateUtils.YYYY_MM_DD_HH_MM_SS, endDate + " 23:59:59"); + List list = repairIOSerice.exportRepair(start, end); + Context context = new Context(); + context.putVar("startDate", startDate); + context.putVar("endDate", endDate); + context.putVar("list", list); + new ExcelView("excel/工单导出模版.xls", "零星维修进度情况跟踪表.xls", context); + } catch (Exception e) { + e.printStackTrace(); + } + + + } } diff --git a/shoot-hand/ics-admin/src/main/java/com/ics/admin/mapper/RepairCheckMapper.java b/shoot-hand/ics-admin/src/main/java/com/ics/admin/mapper/RepairCheckMapper.java index 45c95be..9e34113 100644 --- a/shoot-hand/ics-admin/src/main/java/com/ics/admin/mapper/RepairCheckMapper.java +++ b/shoot-hand/ics-admin/src/main/java/com/ics/admin/mapper/RepairCheckMapper.java @@ -1,9 +1,11 @@ package com.ics.admin.mapper; import com.ics.admin.vo.RepairCheckVo; +import com.ics.admin.vo.RepairExportVo; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; +import java.util.Date; import java.util.List; /** @@ -34,4 +36,11 @@ public interface RepairCheckMapper { */ List checkAddress(@Param("addressName") String addressName, @Param("floorName") String floorName); + /** + * 导出工单列表 + * @param startTime + * @param endTime + * @return + */ + List exportList(@Param("startTime") Date startTime, @Param("endTime") Date endTime); } diff --git a/shoot-hand/ics-admin/src/main/java/com/ics/admin/service/IRepairIOSerice.java b/shoot-hand/ics-admin/src/main/java/com/ics/admin/service/IRepairIOSerice.java index 44d472e..ac83e6e 100644 --- a/shoot-hand/ics-admin/src/main/java/com/ics/admin/service/IRepairIOSerice.java +++ b/shoot-hand/ics-admin/src/main/java/com/ics/admin/service/IRepairIOSerice.java @@ -5,7 +5,9 @@ import com.ics.admin.domain.RepairAddress; import com.ics.admin.domain.RepairAddressFloor; import com.ics.admin.domain.RepairDevice; import com.ics.admin.domain.RepairDeviceType; +import com.ics.admin.vo.RepairExportVo; +import java.util.Date; import java.util.List; public interface IRepairIOSerice { @@ -26,4 +28,13 @@ public interface IRepairIOSerice { * @return */ String checkRepair(Repair repair); + + /** + * 查询工单导出 列表 + * + * @param startTime 时间范围,开始 + * @param endTime 时间范围,结束 + * @return + */ + List exportRepair(Date startTime, Date endTime); } diff --git a/shoot-hand/ics-admin/src/main/java/com/ics/admin/service/impl/RepairIOSericeImpl.java b/shoot-hand/ics-admin/src/main/java/com/ics/admin/service/impl/RepairIOSericeImpl.java index ff238b4..4b6f39f 100644 --- a/shoot-hand/ics-admin/src/main/java/com/ics/admin/service/impl/RepairIOSericeImpl.java +++ b/shoot-hand/ics-admin/src/main/java/com/ics/admin/service/impl/RepairIOSericeImpl.java @@ -12,9 +12,11 @@ import com.ics.admin.mapper.RepairDeviceMapper; import com.ics.admin.mapper.RepairDeviceTypeMapper; import com.ics.admin.service.IRepairIOSerice; import com.ics.admin.vo.RepairCheckVo; +import com.ics.admin.vo.RepairExportVo; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.Date; import java.util.List; /** @@ -76,4 +78,15 @@ public class RepairIOSericeImpl implements IRepairIOSerice { repair.setFloorId(repairCheckVo.getSid()); return IRepairIOSerice.OK; } + + @Override + public List exportRepair(Date startTime, Date endTime) { + List list = repairCheckMapper.exportList(startTime, endTime); + if (list != null && list.size() > 0) { + for (int i = 0; i < list.size(); i++) { + list.get(i).setNumber(i + 1); + } + } + return list; + } } diff --git a/shoot-hand/ics-admin/src/main/java/com/ics/admin/vo/RepairExportVo.java b/shoot-hand/ics-admin/src/main/java/com/ics/admin/vo/RepairExportVo.java new file mode 100644 index 0000000..7caf86c --- /dev/null +++ b/shoot-hand/ics-admin/src/main/java/com/ics/admin/vo/RepairExportVo.java @@ -0,0 +1,50 @@ +package com.ics.admin.vo; + +import com.baomidou.mybatisplus.annotation.FieldFill; +import com.baomidou.mybatisplus.annotation.TableField; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; + +import java.io.Serializable; +import java.util.Date; + +/** + * 工单导出 + * created at 2024-8-25 21:38 + * + * @author lujiang + * @version 1.0.0 + * @since 1.0.0 + */ +@Data +public class RepairExportVo implements Serializable { + private static final long serialVersionUID = -202408252138L; + + private int number; + + private Long id; + + private String createTime; + + private String name; + + private String source; + + private String explain; + + private String bm; + + private String username; + + private String wx; + + private String repairLevel; + + private String duration; + + private String timeout; + + private String status; + + private String resolve; +} diff --git a/shoot-hand/ics-admin/src/main/resources/excel/工单导出模版.xls b/shoot-hand/ics-admin/src/main/resources/excel/工单导出模版.xls new file mode 100644 index 0000000..b39c71f Binary files /dev/null and b/shoot-hand/ics-admin/src/main/resources/excel/工单导出模版.xls differ diff --git a/shoot-hand/ics-admin/src/main/resources/mapper/admin/RepairCheckMapper.xml b/shoot-hand/ics-admin/src/main/resources/mapper/admin/RepairCheckMapper.xml index eb64240..78a3f75 100644 --- a/shoot-hand/ics-admin/src/main/resources/mapper/admin/RepairCheckMapper.xml +++ b/shoot-hand/ics-admin/src/main/resources/mapper/admin/RepairCheckMapper.xml @@ -28,4 +28,27 @@ and b.name = #{floorName} + + + \ No newline at end of file