From efc5dece153d8e51f9e18e136a35558c4ae8a894 Mon Sep 17 00:00:00 2001
From: Lius <Lius2225@163.com>
Date: 星期四, 09 五月 2024 14:47:33 +0800
Subject: [PATCH] update
---
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/RepairOrderController.java | 78 ++++++++++++++++++++++++++++++++++-----
1 files changed, 68 insertions(+), 10 deletions(-)
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/RepairOrderController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/RepairOrderController.java
index 5e968fc..63b372f 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/RepairOrderController.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/RepairOrderController.java
@@ -19,14 +19,19 @@
import org.jeecg.common.system.vo.LoginUser;
import org.jeecg.common.util.oConvertUtils;
import org.jeecg.modules.eam.entity.*;
+import org.jeecg.modules.eam.mapper.RepairOrderMapper;
import org.jeecg.modules.eam.service.*;
import org.jeecg.modules.eam.vo.EquipmentAvailabilityVo;
+import org.jeecg.modules.eam.vo.RepairReportExportVo;
+import org.jeecg.modules.system.entity.SysUser;
+import org.jeecg.modules.system.mapper.SysUserMapper;
import org.jeecgframework.poi.excel.ExcelImportUtil;
import org.jeecgframework.poi.excel.def.NormalExcelConstants;
import org.jeecgframework.poi.excel.entity.ExportParams;
import org.jeecgframework.poi.excel.entity.ImportParams;
import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Lazy;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.*;
@@ -99,6 +104,12 @@
@Autowired
@Lazy
private IdentityService sysIdentityService;
+ @Autowired
+ private RepairOrderMapper repairOrderMapper;
+ @Autowired
+ private SysUserMapper sysUserMapper;
+ @Value("${jeecg.path.upload}")
+ private String upLoadPath;
@@ -321,15 +332,53 @@
return Result.OK("鎵归噺鍒犻櫎鎴愬姛!");
}
- /**
- * 瀵煎嚭
- * @return
- */
- //@RequiresPermissions("org.jeecg.modules.demo:mom_eam_repair_order:exportXls")
- @RequestMapping(value = "/exportXls")
- public ModelAndView exportXls(HttpServletRequest request, RepairOrder repairOrder) {
- return super.exportXls(request, repairOrder, RepairOrder.class, "缁翠慨宸ュ崟");
- }
+ @RequestMapping(value = "/exportXls")
+ public ModelAndView exportXls(HttpServletRequest request, RepairOrder repairOrder) {
+ // Step.1 缁勮鏌ヨ鏉′欢
+ String title = "缁翠慨灞ュ巻";
+ LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
+ // Step.2 鑾峰彇瀵煎嚭鏁版嵁
+ if(StringUtils.isNotBlank(repairOrder.getUserId())){
+ SysUser user = sysUserMapper.selectById(repairOrder.getUserId());
+ repairOrder.setTeamId(user.getTeamId());
+ }else{
+ repairOrder.setTeamId("");
+ }
+ List<String> equipNums = new ArrayList<>();
+ if(StringUtils.isNotBlank(repairOrder.getNums())){
+ equipNums = Arrays.asList(repairOrder.getNums().trim().split("\n")).stream().filter(num->!num.equals("\n")).collect(Collectors.toList());
+ }
+ List<RepairOrder> exportList = repairOrderMapper.getRepairOrderList(null,repairOrder.getId(),
+ repairOrder.getNum(),
+ repairOrder.getEquipmentNum(),
+ repairOrder.getEquipmentName(),
+ repairOrder.getStatus(),
+ repairOrder.getRepairOrderType(),
+ repairOrder.getEquipmentCategoryId(),
+ repairOrder.getFactoryModelId(),
+ repairOrder.getSpecificEquipment(),
+ repairOrder.getTeamId(),
+ equipNums,
+ repairOrder.getRepairOrderUda1(),
+ repairOrder.getFaultStartTime(),
+ repairOrder.getFaultEndTime(),
+ repairOrder.getCreateStartTime(),
+ repairOrder.getCreateEndTime(),
+ repairOrder.getEquipmentImportanceId());
+
+ // Step.3 AutoPoi 瀵煎嚭Excel
+ ModelAndView mv = new ModelAndView(new JeecgEntityExcelView());
+ //姝ゅ璁剧疆鐨刦ilename鏃犳晥 ,鍓嶇浼氶噸鏇存柊璁剧疆涓�涓�
+ mv.addObject(NormalExcelConstants.FILE_NAME, title);
+ mv.addObject(NormalExcelConstants.CLASS, RepairOrder.class);
+ //update-begin--Author:liusq Date:20210126 for锛氬浘鐗囧鍑烘姤閿欙紝ImageBasePath鏈缃�--------------------
+ ExportParams exportParams=new ExportParams(title + "鎶ヨ〃", "瀵煎嚭浜�:" + sysUser.getRealname(), title);
+ exportParams.setImageBasePath(upLoadPath);
+ //update-end--Author:liusq Date:20210126 for锛氬浘鐗囧鍑烘姤閿欙紝ImageBasePath鏈缃�----------------------
+ mv.addObject(NormalExcelConstants.PARAMS,exportParams);
+ mv.addObject(NormalExcelConstants.DATA_LIST, exportList);
+ return mv;
+ }
/**
* 瀵煎叆
@@ -1547,6 +1596,15 @@
@PutMapping(value = "/report")
@Transactional(rollbackFor = {Exception.class})
public Result<?> orderReport(@RequestBody RepairOrder repairOrder){
+ String id = repairOrder.getId();
+ List<RepairOrderActualWorkHours> hoursList = repairOrderActualWorkHoursService.list(new QueryWrapper<RepairOrderActualWorkHours>().eq("repair_order_id",id).eq("del_flag",0));
+ List<RepairOrderActualWorkHours> mainStuff = repairOrderActualWorkHoursService.list(new QueryWrapper<RepairOrderActualWorkHours>().eq("repair_order_id",id).eq("del_flag",0).eq("principal_contractor","1"));
+ if(hoursList.size()<2){
+ return Result.error("鎿嶄綔澶辫触锛岃鑷冲皯娣诲姞涓や釜鎵夸慨浜猴紝骞朵笖璁剧疆涓�涓富鎵夸慨浜�");
+ }
+ if(mainStuff.size()!=1){
+ return Result.error("鎿嶄綔澶辫触锛岃璁剧疆涓绘壙淇汉锛屾湁涓斿彧鏈変竴涓�");
+ }
if(StringUtils.isNotBlank(repairOrder.getProjectMaintenanceOrderId())){
//鍒ゆ柇椤圭洰鎬х淮淇瓙琛ㄧ姸鎬�
ProjectMaintenanceOrderDetail projectMaintenanceOrderDetail = projectMaintenanceOrderDetailService.getById(repairOrder.getProjectMaintenanceOrderId());
@@ -1587,7 +1645,7 @@
repairOrder.setStatus("4");
repairOrder.setActualEndTime(now);
repairOrder.setActualHour(hours);
- repairOrder.setRecipientUserId(user.getId());
+ repairOrder.setRecipientUserId(mainStuff.get(0).getUserId());
repairOrderService.updateById(repairOrder);
if(StringUtils.isNotBlank(repairOrder.getEquipmentId())){
Equipment equipment = equipmentService.getById(repairOrder.getEquipmentId());
--
Gitblit v1.9.3