|
@@ -1,18 +1,25 @@
|
|
package com.bosshand.virgo.api.operate.controller;
|
|
package com.bosshand.virgo.api.operate.controller;
|
|
|
|
|
|
-import com.bosshand.virgo.api.operate.model.Godown;
|
|
|
|
-import com.bosshand.virgo.api.operate.model.OperateDevice;
|
|
|
|
|
|
+import com.bosshand.virgo.api.model.Project;
|
|
|
|
+import com.bosshand.virgo.api.model.ProjectItemTarget;
|
|
|
|
+import com.bosshand.virgo.api.operate.model.*;
|
|
import com.bosshand.virgo.api.operate.service.GodownService;
|
|
import com.bosshand.virgo.api.operate.service.GodownService;
|
|
import com.bosshand.virgo.api.operate.service.OperateDeviceService;
|
|
import com.bosshand.virgo.api.operate.service.OperateDeviceService;
|
|
|
|
+import com.bosshand.virgo.api.service.ProjectItemTargetService;
|
|
|
|
+import com.bosshand.virgo.api.service.ProjectService;
|
|
|
|
+import com.bosshand.virgo.api.util.excel.ExcelUtils;
|
|
import com.bosshand.virgo.core.response.Response;
|
|
import com.bosshand.virgo.core.response.Response;
|
|
import io.swagger.annotations.Api;
|
|
import io.swagger.annotations.Api;
|
|
import io.swagger.annotations.ApiOperation;
|
|
import io.swagger.annotations.ApiOperation;
|
|
|
|
+import io.swagger.annotations.ApiParam;
|
|
|
|
+import org.apache.commons.lang.time.DateFormatUtils;
|
|
|
|
+import org.springframework.beans.BeanUtils;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.web.bind.annotation.*;
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
|
+import org.springframework.web.multipart.MultipartFile;
|
|
|
|
|
|
-import java.util.HashMap;
|
|
|
|
-import java.util.List;
|
|
|
|
-import java.util.Map;
|
|
|
|
|
|
+import javax.servlet.http.HttpServletResponse;
|
|
|
|
+import java.util.*;
|
|
|
|
|
|
@RestController
|
|
@RestController
|
|
@RequestMapping("operateDevice")
|
|
@RequestMapping("operateDevice")
|
|
@@ -25,6 +32,12 @@ public class OperateDeviceController {
|
|
@Autowired
|
|
@Autowired
|
|
GodownService godownService;
|
|
GodownService godownService;
|
|
|
|
|
|
|
|
+ @Autowired
|
|
|
|
+ ProjectService projectService;
|
|
|
|
+
|
|
|
|
+ @Autowired
|
|
|
|
+ ProjectItemTargetService projectItemTargetService;
|
|
|
|
+
|
|
@ApiOperation(value = "获取", notes = "获取")
|
|
@ApiOperation(value = "获取", notes = "获取")
|
|
@RequestMapping(value = "/{id}", method = RequestMethod.GET)
|
|
@RequestMapping(value = "/{id}", method = RequestMethod.GET)
|
|
public Response get(@PathVariable long id) {
|
|
public Response get(@PathVariable long id) {
|
|
@@ -88,5 +101,84 @@ public class OperateDeviceController {
|
|
return Response.ok(operateDeviceService.projectCount(projectId));
|
|
return Response.ok(operateDeviceService.projectCount(projectId));
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ /**
|
|
|
|
+ * 导入
|
|
|
|
+ */
|
|
|
|
+ @ApiOperation(value = "资产导入", notes = "资产导入")
|
|
|
|
+ @RequestMapping(value = "/import/{projectItemTargetId}/{operateDeviceLevelId}/{godownId}", method = RequestMethod.POST)
|
|
|
|
+ public Response importData(@ApiParam(name = "uploadFile", required = true) MultipartFile uploadFile, @PathVariable long projectItemTargetId, @PathVariable long operateDeviceLevelId, @PathVariable long godownId) throws Exception {
|
|
|
|
+ List<OperateDeviceImportDto> list = ExcelUtils.readMultipartFile(uploadFile, OperateDeviceImportDto.class);
|
|
|
|
+ if (list.size() > 0) {
|
|
|
|
+ String date = DateFormatUtils.format(new Date(), "yyyy-MM-dd");
|
|
|
|
+ ProjectItemTarget target = projectItemTargetService.get(projectItemTargetId);
|
|
|
|
+ List<OperateDevice> operateDeviceList = new ArrayList<>();
|
|
|
|
+ for (OperateDeviceImportDto dto : list) {
|
|
|
|
+ OperateDevice operateDevice = new OperateDevice();
|
|
|
|
+ operateDevice.setProjectId(target.getProjectId());
|
|
|
|
+ operateDevice.setProjectItemId(target.getProjectItemId());
|
|
|
|
+ operateDevice.setProjectItemTargetId(operateDeviceLevelId);
|
|
|
|
+ operateDevice.setOperateDeviceLevelId(operateDeviceLevelId);
|
|
|
|
+ operateDevice.setGodownId(godownId);
|
|
|
|
+ operateDevice.setEntryTime(date);
|
|
|
|
+ BeanUtils.copyProperties(dto, operateDevice);
|
|
|
|
+ operateDeviceList.add(operateDevice);
|
|
|
|
+ }
|
|
|
|
+ operateDeviceService.batchSave(operateDeviceList);
|
|
|
|
+ }
|
|
|
|
+ return Response.ok();
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 导出模板
|
|
|
|
+ */
|
|
|
|
+ @ApiOperation(value = "资产导出模板表", notes = "资产导出模板表")
|
|
|
|
+ @RequestMapping(value = "/exportTemplate", method = RequestMethod.GET)
|
|
|
|
+ public void exportTemplate(HttpServletResponse response) {
|
|
|
|
+ ExcelUtils.exportTemplate(response, "资产模板表", OperateDeviceExportDto.class);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 导出数据
|
|
|
|
+ */
|
|
|
|
+ @ApiOperation(value = "资产导出数据", notes = "资产导出数据")
|
|
|
|
+ @GetMapping("/export/{projectId}/{godownId}")
|
|
|
|
+ public void export(HttpServletResponse response, @PathVariable long projectId, @PathVariable long godownId) {
|
|
|
|
+ Project project = projectService.getProject(projectId);
|
|
|
|
+ Godown godown = godownService.getGodown(godownId);
|
|
|
|
+ List<OperateDeviceExportDto> list = new ArrayList<>();
|
|
|
|
+ OperateDevice operateDevice = new OperateDevice();
|
|
|
|
+ operateDevice.setProjectId(projectId);
|
|
|
|
+ operateDevice.setGodownId(godownId);
|
|
|
|
+ List<OperateDevice> dataList = operateDeviceService.getExport(operateDevice);
|
|
|
|
+ for(OperateDevice o : dataList){
|
|
|
|
+ OperateDeviceExportDto dto = new OperateDeviceExportDto();
|
|
|
|
+ BeanUtils.copyProperties(o, dto);
|
|
|
|
+ list.add(dto);
|
|
|
|
+ }
|
|
|
|
+ ExcelUtils.export(response, project.getName()+"-"+godown.getName()+"-"+"资产表", list, OperateDeviceExportDto.class);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 导出盘点数据
|
|
|
|
+ */
|
|
|
|
+ @ApiOperation(value = "资产导出盘点表", notes = "资产导出盘点表")
|
|
|
|
+ @RequestMapping(value = "/exportStocktaking/{projectId}/{godownId}", method = RequestMethod.GET)
|
|
|
|
+ public void exportStocktaking(HttpServletResponse response, @PathVariable long projectId, @PathVariable long godownId) {
|
|
|
|
+ Project project = projectService.getProject(projectId);
|
|
|
|
+ Godown godown = godownService.getGodown(godownId);
|
|
|
|
+ List<OperateDeviceStocktakingDto> list = new ArrayList<>();
|
|
|
|
+ OperateDevice operateDevice = new OperateDevice();
|
|
|
|
+ operateDevice.setProjectId(projectId);
|
|
|
|
+ operateDevice.setGodownId(godownId);
|
|
|
|
+ List<OperateDevice> dataList = operateDeviceService.getExport(operateDevice);
|
|
|
|
+ for(OperateDevice o : dataList){
|
|
|
|
+ OperateDeviceStocktakingDto dto = new OperateDeviceStocktakingDto();
|
|
|
|
+ BeanUtils.copyProperties(o, dto);
|
|
|
|
+ list.add(dto);
|
|
|
|
+ }
|
|
|
|
+ ExcelUtils.export(response, project.getName()+"-"+godown.getName()+"-"+"资产盘点表", list, OperateDeviceStocktakingDto.class);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+
|
|
|
|
|
|
}
|
|
}
|