浏览代码

优化送检工单分页查询

LLL 1 年之前
父节点
当前提交
c1eaac31dd

+ 16 - 5
module_cmms/src/main/java/org/jeecg/modules/cmmsSubmission/controller/CmmsSubmissionController.java

@@ -16,6 +16,7 @@ import org.jeecg.modules.cmmsSubmission.dto.CmmsSubmissionAddDTO;
 import org.jeecg.modules.cmmsSubmission.dto.CmmsSubmissionUpdateDTO;
 import org.jeecg.modules.cmmsSubmission.entity.CmmsSubmission;
 import org.jeecg.modules.cmmsSubmission.service.ICmmsSubmissionService;
+import org.jeecg.modules.cmmsSubmission.vo.CmmsSubmissionQueryVO;
 import org.jeecg.modules.cmmsSubmissionEquipment.entity.CmmsSubmissionEquipment;
 import org.jeecg.modules.cmmsSubmissionEquipment.service.ICmmsSubmissionEquipmentService;
 import org.jeecg.modules.sysUploadFile.entity.SysUploadFile;
@@ -61,14 +62,24 @@ public class CmmsSubmissionController extends JeecgController<CmmsSubmission, IC
 	//@AutoLog(value = "送检工单表-分页列表查询")
 	@ApiOperation(value="送检工单表-分页列表查询", notes="送检工单表-分页列表查询")
 	@GetMapping(value = "/list")
-	public Result<IPage<CmmsSubmission>> queryPageList(CmmsSubmission cmmsSubmission,
-								   @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
-								   @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
-								   HttpServletRequest req) {
+	public Result<IPage<CmmsSubmissionQueryVO>> queryPageList(CmmsSubmission cmmsSubmission,
+															  @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
+															  @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
+															  HttpServletRequest req) {
 		QueryWrapper<CmmsSubmission> queryWrapper = QueryGenerator.initQueryWrapper(cmmsSubmission, req.getParameterMap());
 		Page<CmmsSubmission> page = new Page<CmmsSubmission>(pageNo, pageSize);
 		IPage<CmmsSubmission> pageList = cmmsSubmissionService.page(page, queryWrapper);
-		return Result.OK(pageList);
+		List<CmmsSubmissionQueryVO> submissionQueryVOList = pageList.getRecords().stream().map(i->{
+			int totalNum = submissionEquipmentService.totalNum(i.getId());
+			int returnNum = submissionEquipmentService.returnNum(i.getId());
+			List<String> equipmentidList = submissionEquipmentService.equipmentidList(i.getId());
+			String equipmentids = String.join(",", equipmentidList);
+			CmmsSubmissionQueryVO vo = CmmsSubmissionConvert.INSTANCE.convertToVO(i,totalNum,returnNum,equipmentids);
+			return vo;
+		}).collect(Collectors.toList());
+		IPage<CmmsSubmissionQueryVO> pageList1 = new Page<CmmsSubmissionQueryVO>(pageNo, pageSize);
+		pageList1.setRecords(submissionQueryVOList);
+		return Result.OK(pageList1);
 	}
 
 	/**

+ 3 - 0
module_cmms/src/main/java/org/jeecg/modules/cmmsSubmission/convert/CmmsSubmissionConvert.java

@@ -3,6 +3,7 @@ package org.jeecg.modules.cmmsSubmission.convert;
 import org.jeecg.modules.cmmsSubmission.dto.CmmsSubmissionAddDTO;
 import org.jeecg.modules.cmmsSubmission.dto.CmmsSubmissionUpdateDTO;
 import org.jeecg.modules.cmmsSubmission.entity.CmmsSubmission;
+import org.jeecg.modules.cmmsSubmission.vo.CmmsSubmissionQueryVO;
 import org.mapstruct.Mapper;
 import org.mapstruct.ReportingPolicy;
 import org.mapstruct.factory.Mappers;
@@ -19,4 +20,6 @@ public interface CmmsSubmissionConvert {
 
     CmmsSubmission convertTo (CmmsSubmissionUpdateDTO dto);
 
+    CmmsSubmissionQueryVO convertToVO(CmmsSubmission cmmsSubmission, int totalNum, int returnNum, String equipmentids);
+
 }

+ 72 - 0
module_cmms/src/main/java/org/jeecg/modules/cmmsSubmission/vo/CmmsSubmissionQueryVO.java

@@ -0,0 +1,72 @@
+package org.jeecg.modules.cmmsSubmission.vo;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import org.jeecg.common.aspect.annotation.Dict;
+import org.jeecgframework.poi.excel.annotation.Excel;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serializable;
+
+@Data
+public class CmmsSubmissionQueryVO  implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+    /**主键*/
+    @TableId(type = IdType.ASSIGN_ID)
+    @ApiModelProperty(value = "主键")
+    private java.lang.String id;
+    /**送检负责人*/
+    @Excel(name = "送检负责人", width = 15)
+    @ApiModelProperty(value = "送检负责人")
+    private java.lang.String verificatePerson;
+    /**检定方式*/
+    @Excel(name = "检定方式", width = 15, dicCode = "verificate_method")
+    @Dict(dicCode = "verificate_method")
+    @ApiModelProperty(value = "检定方式")
+    private java.lang.String verificateMethod;
+    /**检定单位id*/
+    @Excel(name = "检定单位id", width = 15, dictTable = "base_client", dicText = "client_name", dicCode = "id")
+    @Dict(dictTable = "base_client", dicText = "client_name", dicCode = "id")
+    @ApiModelProperty(value = "检定单位id")
+    private java.lang.String verificateClientId;
+    /**备注*/
+    @Excel(name = "备注", width = 15)
+    @ApiModelProperty(value = "备注")
+    private java.lang.String remark;
+    /**创建人*/
+    @ApiModelProperty(value = "创建人")
+    private java.lang.String createBy;
+    /**创建日期*/
+    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+    @ApiModelProperty(value = "创建日期")
+    private java.util.Date createTime;
+    /**更新人*/
+    @ApiModelProperty(value = "更新人")
+    private java.lang.String updateBy;
+    /**更新日期*/
+    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+    @ApiModelProperty(value = "更新日期")
+    private java.util.Date updateTime;
+    /**所属部门*/
+    @ApiModelProperty(value = "所属部门")
+    private java.lang.String sysOrgCode;
+
+    /**送检设备总数*/
+    @Excel(name = "送检设备总数", width = 15)
+    @ApiModelProperty(value = "送检设备总数")
+    private java.lang.Integer totalNum;
+
+    /**送检设备已返回*/
+    @Excel(name = "送检设备已返回", width = 15)
+    @ApiModelProperty(value = "送检设备已返回")
+    private java.lang.Integer returnNum;
+
+    /**设备集合*/
+    private String equipmentids;
+}

+ 23 - 0
module_cmms/src/main/java/org/jeecg/modules/cmmsSubmissionEquipment/mapper/CmmsSubmissionEquipmentMapper.java

@@ -3,6 +3,7 @@ package org.jeecg.modules.cmmsSubmissionEquipment.mapper;
 import java.util.List;
 
 import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Select;
 import org.jeecg.modules.cmmsSubmissionEquipment.entity.CmmsSubmissionEquipment;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 
@@ -14,4 +15,26 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
  */
 public interface CmmsSubmissionEquipmentMapper extends BaseMapper<CmmsSubmissionEquipment> {
 
+    /**
+     * 根据送检工单id查询该工单送检设备总数
+     * */
+    @Select("SELECT COUNT(1) FROM cmms_submission_equipment " +
+            "WHERE cmms_submission_id = #{cmmsSubmissionId} " )
+    Integer totalNum(String cmmsSubmissionId);
+
+    /**
+     * 根据送检工单id查询该工单送检设备已返回总数
+     * 送检状态(0送检中、1已返回)
+     * */
+    @Select("SELECT COUNT(1) FROM cmms_submission_equipment " +
+            "WHERE cmms_submission_id = #{cmmsSubmissionId} " +
+            "AND submission_status = '1' ")
+    Integer returnNum(String cmmsSubmissionId);
+
+    /**
+     * 根据送检工单id查询该工单所有送检设备id
+     * */
+    @Select("SELECT equipmentid FROM cmms_submission_equipment where cmms_submission_id = #{cmmsSubmissionId}")
+    List<String> equipmentidList(String cmmsSubmissionId);
+
 }

+ 20 - 0
module_cmms/src/main/java/org/jeecg/modules/cmmsSubmissionEquipment/service/ICmmsSubmissionEquipmentService.java

@@ -3,6 +3,8 @@ package org.jeecg.modules.cmmsSubmissionEquipment.service;
 import org.jeecg.modules.cmmsSubmissionEquipment.entity.CmmsSubmissionEquipment;
 import com.baomidou.mybatisplus.extension.service.IService;
 
+import java.util.List;
+
 /**
  * @Description: 送检工单设备表
  * @Author: jeecg-boot
@@ -11,4 +13,22 @@ import com.baomidou.mybatisplus.extension.service.IService;
  */
 public interface ICmmsSubmissionEquipmentService extends IService<CmmsSubmissionEquipment> {
 
+    /**
+     * 根据送检工单id查询该工单送检设备总数
+     * */
+    public Integer totalNum(String cmmsSubmissionId);
+
+
+    /**
+     * 根据送检工单id查询该工单送检设备已返回总数
+     * 送检状态(0送检中、1已返回)
+     * */
+    public Integer returnNum(String cmmsSubmissionId);
+
+    /**
+     * 根据送检工单id查询该工单所有送检设备id
+     * */
+    public List<String> equipmentidList(String cmmsSubmissionId);
+
+
 }

+ 31 - 0
module_cmms/src/main/java/org/jeecg/modules/cmmsSubmissionEquipment/service/impl/CmmsSubmissionEquipmentServiceImpl.java

@@ -1,12 +1,16 @@
 package org.jeecg.modules.cmmsSubmissionEquipment.service.impl;
 
+import org.apache.ibatis.annotations.Select;
 import org.jeecg.modules.cmmsSubmissionEquipment.entity.CmmsSubmissionEquipment;
 import org.jeecg.modules.cmmsSubmissionEquipment.mapper.CmmsSubmissionEquipmentMapper;
 import org.jeecg.modules.cmmsSubmissionEquipment.service.ICmmsSubmissionEquipmentService;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 
+import java.util.List;
+
 /**
  * @Description: 送检工单设备表
  * @Author: jeecg-boot
@@ -16,4 +20,31 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 @Service
 public class CmmsSubmissionEquipmentServiceImpl extends ServiceImpl<CmmsSubmissionEquipmentMapper, CmmsSubmissionEquipment> implements ICmmsSubmissionEquipmentService {
 
+    @Autowired
+    @SuppressWarnings("all")
+    private CmmsSubmissionEquipmentMapper submissionEquipmentMapper;
+
+
+    /**
+     * 根据送检工单id查询该工单送检设备总数
+     * */
+    public Integer totalNum(String cmmsSubmissionId){
+        return submissionEquipmentMapper.totalNum(cmmsSubmissionId);
+    }
+
+    /**
+     * 根据送检工单id查询该工单送检设备已返回总数
+     * 送检状态(0送检中、1已返回)
+     * */
+    public Integer returnNum(String cmmsSubmissionId){
+        return submissionEquipmentMapper.returnNum(cmmsSubmissionId);
+    }
+
+    /**
+     * 根据送检工单id查询该工单所有送检设备id
+     * */
+    public List<String> equipmentidList(String cmmsSubmissionId){
+        return submissionEquipmentMapper.equipmentidList(cmmsSubmissionId);
+    }
+
 }