设备维护检索+设备维护批量增改

develop-QA
qinyulong 3 months ago
parent 6dce523566
commit 19048c98b7
  1. 42
      blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/request/EquipmentMaintenanceQuery.java
  2. 3
      blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/CertificateMaintenanceVO.java
  3. 21
      blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/EquipmentMaintenanceListVO.java
  4. 32
      blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/EquipmentMaintenanceVO.java
  5. 18
      blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/EquipmentMaintenanceController.java
  6. 5
      blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CertificateMaintenanceMapper.xml
  7. 7
      blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/EquipmentMaintenanceMapper.java
  8. 126
      blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/EquipmentMaintenanceMapper.xml
  9. 9
      blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/IEquipmentMaintenanceService.java
  10. 14
      blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/EquipmentMaintenanceServiceImpl.java

@ -0,0 +1,42 @@
package org.springblade.desk.jobTransfer.pojo.request;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
/**
* 设备维护管理检索请求入参
*/
@Data
public class EquipmentMaintenanceQuery {
/**
* 姓名
*/
@Schema(description = "姓名")
private String name;
/**
* 所属班组
*/
@Schema(description = "所属班组")
private Long deptId;
/**
* 所属岗位
*/
@Schema(description = "所属岗位")
private String station;
/**
* 技能等级
*/
@Schema(description = "技能等级")
private Short skill;
/**
* 证书类型
*/
@Schema(description = "设备ID")
private Long equipmentId;
/**
* 维护状态(1正常,2到期,3离职)
*/
@Schema(description = "维护状态(1正常,2到期,3离职)")
private Short maintenanceStatus;
}

@ -51,7 +51,6 @@ public class CertificateMaintenanceVO extends CertificateMaintenanceEntity {
//得到结算后的结果 yyyy-MM-dd HH:mm
Date date = cal.getTime();
cal.setTime(date);
cal.add(Calendar.MONTH, -1);
return cal.getTime();
} else {
return null;
@ -68,7 +67,6 @@ public class CertificateMaintenanceVO extends CertificateMaintenanceEntity {
//得到结算后的结果 yyyy-MM-dd HH:mm
Date date = cal.getTime();
cal.setTime(date);
cal.add(Calendar.MONTH, -1);
return cal.getTime();
} else {
return null;
@ -84,7 +82,6 @@ public class CertificateMaintenanceVO extends CertificateMaintenanceEntity {
//得到结算后的结果 yyyy-MM-dd HH:mm
Date date = cal.getTime();
cal.setTime(date);
cal.add(Calendar.MONTH, -1);
return cal.getTime();
} else {
return null;

@ -0,0 +1,21 @@
package org.springblade.desk.jobTransfer.pojo.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.util.List;
/**
* 岗位证书台账VO
*/
@Data
public class EquipmentMaintenanceListVO {
//人员岗位数据
@Schema(description = "人员岗位数据")
private PostHandleVO postHandleVO;
//设备维护数据集合
@Schema(description = "设备维护数据集合")
private List<EquipmentMaintenanceVO> equipmentMaintenanceVOList;
}

@ -1,10 +1,13 @@
package org.springblade.desk.jobTransfer.pojo.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import org.springblade.desk.jobTransfer.pojo.entity.EquipmentMaintenanceEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serial;
import java.util.Calendar;
import java.util.Date;
/**
* 岗位设备维护 视图实体类
@ -17,5 +20,34 @@ import java.io.Serial;
public class EquipmentMaintenanceVO extends EquipmentMaintenanceEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
* 设备名称
*/
@Schema(description = "设备名称")
private String deviceName;
/**
* 设备编号
*/
@Schema(description = "设备编号")
private String deviceCode;
/**
* 规格型号
*/
@Schema(description = "规格型号")
private String macSpec;
// 到期日期
public Date getValidityPeriodExpire() {
if (this.getEquipmentDate() != null && this.getEquipmentValidityPeriod() != null) {
Calendar cal = Calendar.getInstance();
cal.setTime(this.getEquipmentDate());
cal.add(Calendar.YEAR, Integer.valueOf(this.getEquipmentValidityPeriod().toString()));
//得到结算后的结果 yyyy-MM-dd HH:mm
Date date = cal.getTime();
cal.setTime(date);
return cal.getTime();
} else {
return null;
}
}
}

@ -16,7 +16,10 @@ import org.springblade.core.mp.support.Condition;
import org.springblade.core.mp.support.Query;
import org.springblade.core.tool.api.R;
import org.springblade.core.tool.utils.Func;
import org.springblade.desk.jobTransfer.pojo.entity.CertificateMaintenanceEntity;
import org.springblade.desk.jobTransfer.pojo.excel.EquipmentMaintenanceExcel;
import org.springblade.desk.jobTransfer.pojo.request.EquipmentMaintenanceQuery;
import org.springblade.desk.jobTransfer.pojo.vo.EquipmentMaintenanceListVO;
import org.springframework.web.bind.annotation.*;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
@ -72,9 +75,9 @@ public class EquipmentMaintenanceController extends BladeController {
@Parameter(name = "equipmentId", description = "设备", in = ParameterIn.QUERY, schema = @Schema(type = "integer")),
@Parameter(name = "maintenanceStatus", description = "状态", in = ParameterIn.QUERY, schema = @Schema(type = "integer")),
})
@Operation(summary = "分页", description = "传入equipmentMaintenance")
public R<IPage<EquipmentMaintenanceVO>> page(EquipmentMaintenanceVO equipmentMaintenance, Query query) {
IPage<EquipmentMaintenanceVO> pages = equipmentMaintenanceService.selectEquipmentMaintenancePage(Condition.getPage(query), equipmentMaintenance);
@Operation(summary = "分页", description = "传入equipmentMaintenanceQuery")
public R<IPage<EquipmentMaintenanceListVO>> page(EquipmentMaintenanceQuery equipmentMaintenanceQuery, Query query) {
IPage<EquipmentMaintenanceListVO> pages = equipmentMaintenanceService.selectEquipmentMaintenancePage(Condition.getPage(query), equipmentMaintenanceQuery);
return R.data(pages);
}
@ -119,6 +122,15 @@ public class EquipmentMaintenanceController extends BladeController {
}
/**
* 批量新增或修改
*/
@PostMapping("/submit-list")
@ApiOperationSupport(order = 8)
@Operation(summary = "批量新增或修改", description = "")
public R submitList(@Valid @RequestBody List<EquipmentMaintenanceEntity> equipmentMaintenanceEntities) {
return R.status(equipmentMaintenanceService.submitList(equipmentMaintenanceEntities));
}
/**
* 导出数据
*/

@ -139,6 +139,9 @@
<if test="query.station != null and query.station != ''">
AND ph.station = #{query.station}
</if>
<if test="query.skill != null">
AND ph.skill = #{query.skill}
</if>
<if test="query.certificateId != null">
AND cm.certificate_id = #{query.certificateId}
</if>
@ -189,6 +192,6 @@
ELSE 1 END
ELSE 1
END,
m.UPDATE_TIME = SYSDATE
m.UPDATE_TIME = SYSDATE WHERE m.MAINTENANCE_STATUS != 3
</update>
</mapper>

@ -2,6 +2,8 @@ package org.springblade.desk.jobTransfer.mapper;
import org.springblade.desk.jobTransfer.pojo.entity.EquipmentMaintenanceEntity;
import org.springblade.desk.jobTransfer.pojo.excel.EquipmentMaintenanceExcel;
import org.springblade.desk.jobTransfer.pojo.request.EquipmentMaintenanceQuery;
import org.springblade.desk.jobTransfer.pojo.vo.EquipmentMaintenanceListVO;
import org.springblade.desk.jobTransfer.pojo.vo.EquipmentMaintenanceVO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
@ -22,10 +24,10 @@ public interface EquipmentMaintenanceMapper extends BaseMapper<EquipmentMaintena
* 自定义分页
*
* @param page 分页参数
* @param equipmentMaintenance 查询参数
* @param query 查询参数
* @return List<EquipmentMaintenanceVO>
*/
List<EquipmentMaintenanceVO> selectEquipmentMaintenancePage(IPage page, EquipmentMaintenanceVO equipmentMaintenance);
List<EquipmentMaintenanceListVO> selectEquipmentMaintenancePage(IPage page, EquipmentMaintenanceQuery query);
/**
@ -36,4 +38,5 @@ public interface EquipmentMaintenanceMapper extends BaseMapper<EquipmentMaintena
*/
List<EquipmentMaintenanceExcel> exportEquipmentMaintenance(@Param("ew") Wrapper<EquipmentMaintenanceEntity> queryWrapper);
void updateMaintenanceStatus();
}

@ -20,12 +20,119 @@
<result column="EQUIPMENT_DATE" property="equipmentDate"/>
<result column="MAINTENANCE_STATUS" property="maintenanceStatus"/>
</resultMap>
<resultMap id="equipmentMaintenanceMap" type="org.springblade.desk.jobTransfer.pojo.vo.EquipmentMaintenanceListVO">
<!-- 定义主键 -->
<id property="postHandleVO.id" column="ID"/>
<!-- 人员岗位数据映射 -->
<association property="postHandleVO" resultMap="postHandleMap"/>
<select id="selectEquipmentMaintenancePage" resultMap="mesEquipmentMaintenanceResultMap">
select *
from MES_EQUIPMENT_MAINTENANCE
where is_deleted = 0
<!-- 设备维护数据集合映射 -->
<collection property="equipmentMaintenanceVOList"
ofType="org.springblade.desk.jobTransfer.pojo.vo.EquipmentMaintenanceVO"
resultMap="equipmentMap">
<!-- 明确指定关联关系 -->
<id property="id" column="em_id"/>
</collection>
</resultMap>
<!-- 岗位处理表映射 -->
<resultMap id="postHandleMap" type="org.springblade.desk.jobTransfer.pojo.vo.PostHandleVO">
<!-- 映射主表 MES_POST_HANDLE 的所有字段 -->
<id column="ID" property="id"/>
<result column="TENANT_ID" property="tenantId"/>
<result column="CREATE_USER" property="createUser"/>
<result column="CREATE_TIME" property="createTime"/>
<result column="CREATE_DEPT" property="createDept"/>
<result column="UPDATE_USER" property="updateUser"/>
<result column="UPDATE_TIME" property="updateTime"/>
<result column="STATUS" property="status"/>
<result column="IS_DELETED" property="isDeleted"/>
<result column="USER_ID" property="userId"/>
<result column="NAME" property="name"/>
<result column="NATION" property="nation"/>
<result column="AGE" property="age"/>
<result column="ID_CARD" property="idCard"/>
<result column="NATIVE_PLACE" property="nativePlace"/>
<result column="DEPT_ID" property="deptId"/>
<result column="STATION" property="station"/>
<result column="DATA_BIRTH" property="dataBirth"/>
<result column="FACE" property="face"/>
<result column="MARRIAGE" property="marriage"/>
<result column="SCHOOL" property="school"/>
<result column="MAJOR" property="major"/>
<result column="EDUCATION" property="education"/>
<result column="END_DATE" property="endDate"/>
<result column="STAFF_TYPE" property="staffType"/>
<result column="JOIN_JOB_DATE" property="joinJobDate"/>
<result column="SKILL" property="skill"/>
<result column="IN_JOB_DATE" property="inJobDate"/>
<result column="CON_EXP_DATE" property="conExpDate"/>
<result column="ADDRESS" property="address"/>
<result column="TO_NEW_JOB" property="toNewJob"/>
<result column="PH_STATUS" property="phStatus"/>
<!-- 映射 VO 扩展字段 -->
<result column="USER_NAME" property="userName"/>
<result column="USER_CODE" property="userCode"/>
<result column="DEPT_NAME" property="deptName"/>
</resultMap>
<!-- 证书维护表映射 -->
<resultMap id="equipmentMap" type="org.springblade.desk.jobTransfer.pojo.vo.EquipmentMaintenanceVO">
<id property="id" column="em_id"/>
<result property="phId" column="em_ph_id"/>
<result column="equipment_id" property="equipmentId"/>
<result column="equipment_validity_period" property="equipmentValidityPeriod"/>
<result column="equipment_date" property="equipmentDate"/>
<result column="maintenance_status" property="maintenanceStatus"/>
<result column="device_name" property="deviceName"/>
<result column="device_code" property="deviceCode"/>
<result column="mac_spec" property="macSpec"/>
</resultMap>
<!-- 查询语句 -->
<select id="selectEquipmentMaintenancePage" parameterType="map" resultMap="equipmentMaintenanceMap">
SELECT
ph.ID as ph_id,
ph.*,
bd.DEPT_NAME as DEPT_NAME,
em.id as em_id,
em.ph_id as em_ph_id,
em.equipment_id,
em.equipment_validity_period,
em.equipment_date,
em.maintenance_status,
equipment.device_name,
equipment.device_code,
equipment.mac_spec
FROM MES_POST_HANDLE ph
LEFT JOIN BLADE_USER bu ON ph.USER_ID = bu.ID
LEFT JOIN BLADE_DEPT bd ON ph.DEPT_ID = bd.ID
LEFT JOIN MES_EQUIPMENT_MAINTENANCE em ON ph.id = em.ph_id AND em.is_deleted = 0
LEFT JOIN MES_EQUIPMENT equipment ON em.equipment_id = equipment.id AND equipment.is_deleted = 0
WHERE ph.is_deleted = 0
<if test="query.name != null and query.name != ''">
AND ph.name LIKE CONCAT(CONCAT('%', #{query.name}), '%')
</if>
<if test="query.deptId != null">
AND ph.dept_id = #{query.deptId}
</if>
<if test="query.skill != null">
AND ph.skill = #{query.skill}
</if>
<if test="query.station != null and query.station != ''">
AND ph.station = #{query.station}
</if>
<if test="query.equipmentId != null">
AND em.equipment_id = #{query.equipmentId}
</if>
<!-- <if test="query.certificateCode != null and query.certificateCode != ''">-->
<!-- AND em.certificate_code LIKE CONCAT(CONCAT('%', #{query.certificateCode}), '%')-->
<!-- </if>-->
<if test="query.maintenanceStatus != null">
AND em.maintenance_status = #{query.maintenanceStatus}
</if>
ORDER BY ph.create_time DESC, em.equipment_date DESC
</select>
@ -35,4 +142,15 @@
FROM MES_EQUIPMENT_MAINTENANCE ${ew.customSqlSegment}
</select>
<update id="updateMaintenanceStatus">
UPDATE MES_EQUIPMENT_MAINTENANCE
SET MAINTENANCE_STATUS = CASE
WHEN EQUIPMENT_DATE +
NUMTOYMINTERVAL(EQUIPMENT_VALIDITY_PERIOD, 'YEAR') &lt; SYSDATE
THEN 2
ELSE 1 END,
UPDATE_TIME = SYSDATE
WHERE IS_DELETED = 0
AND MAINTENANCE_STATUS != 3
</update>
</mapper>

@ -3,7 +3,8 @@ package org.springblade.desk.jobTransfer.service;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import org.springblade.desk.jobTransfer.pojo.entity.EquipmentMaintenanceEntity;
import org.springblade.desk.jobTransfer.pojo.excel.EquipmentMaintenanceExcel;
import org.springblade.desk.jobTransfer.pojo.vo.EquipmentMaintenanceVO;
import org.springblade.desk.jobTransfer.pojo.request.EquipmentMaintenanceQuery;
import org.springblade.desk.jobTransfer.pojo.vo.EquipmentMaintenanceListVO;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.core.mp.base.BaseService;
@ -20,10 +21,10 @@ public interface IEquipmentMaintenanceService extends BaseService<EquipmentMaint
* 自定义分页
*
* @param page 分页参数
* @param equipmentMaintenance 查询参数
* @param equipmentMaintenanceQuery 查询参数
* @return IPage<EquipmentMaintenanceVO>
*/
IPage<EquipmentMaintenanceVO> selectEquipmentMaintenancePage(IPage<EquipmentMaintenanceVO> page, EquipmentMaintenanceVO equipmentMaintenance);
IPage<EquipmentMaintenanceListVO> selectEquipmentMaintenancePage(IPage<EquipmentMaintenanceListVO> page, EquipmentMaintenanceQuery equipmentMaintenanceQuery);
/**
@ -34,4 +35,6 @@ public interface IEquipmentMaintenanceService extends BaseService<EquipmentMaint
*/
List<EquipmentMaintenanceExcel> exportEquipmentMaintenance(Wrapper<EquipmentMaintenanceEntity> queryWrapper);
Boolean submitList(List<EquipmentMaintenanceEntity> equipmentMaintenanceEntities);
}

@ -2,6 +2,8 @@ package org.springblade.desk.jobTransfer.service.impl;
import org.springblade.desk.jobTransfer.pojo.entity.EquipmentMaintenanceEntity;
import org.springblade.desk.jobTransfer.pojo.excel.EquipmentMaintenanceExcel;
import org.springblade.desk.jobTransfer.pojo.request.EquipmentMaintenanceQuery;
import org.springblade.desk.jobTransfer.pojo.vo.EquipmentMaintenanceListVO;
import org.springblade.desk.jobTransfer.pojo.vo.EquipmentMaintenanceVO;
import org.springblade.desk.jobTransfer.mapper.EquipmentMaintenanceMapper;
import org.springblade.desk.jobTransfer.service.IEquipmentMaintenanceService;
@ -22,8 +24,8 @@ import java.util.List;
public class EquipmentMaintenanceServiceImpl extends BaseServiceImpl<EquipmentMaintenanceMapper, EquipmentMaintenanceEntity> implements IEquipmentMaintenanceService {
@Override
public IPage<EquipmentMaintenanceVO> selectEquipmentMaintenancePage(IPage<EquipmentMaintenanceVO> page, EquipmentMaintenanceVO equipmentMaintenance) {
return page.setRecords(baseMapper.selectEquipmentMaintenancePage(page, equipmentMaintenance));
public IPage<EquipmentMaintenanceListVO> selectEquipmentMaintenancePage(IPage<EquipmentMaintenanceListVO> page, EquipmentMaintenanceQuery equipmentMaintenanceQuery) {
return page.setRecords(baseMapper.selectEquipmentMaintenancePage(page, equipmentMaintenanceQuery));
}
@ -36,4 +38,12 @@ public class EquipmentMaintenanceServiceImpl extends BaseServiceImpl<EquipmentMa
return equipmentMaintenanceList;
}
@Override
public Boolean submitList(List<EquipmentMaintenanceEntity> equipmentMaintenanceEntities) {
boolean saved = this.saveOrUpdateBatch(equipmentMaintenanceEntities);
//更新状态
baseMapper.updateMaintenanceStatus();
return saved;
}
}

Loading…
Cancel
Save