You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

286 lines
14 KiB
XML

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.op.device.mapper.EquOperationMapper">
<resultMap type="EquOperation" id="EquOperationResult">
<result property="id" column="id"/>
<result property="workshop" column="workshop"/>
<result property="groupLine" column="group_line"/>
<result property="equipmentName" column="equipment_name"/>
<result property="equipmentCode" column="equipment_code"/>
<result property="faultTime" column="fault_time"/>
<result property="actualOperationTime" column="actual_operation_time"/>
<result property="operationTime" column="operation_time"/>
<result property="failureRate" column="failure_rate"/>
<result property="failureDescription" column="failure_description"/>
<result property="reasonAnalyze" column="reason_analyze"/>
<result property="handlingMethod" column="handling_method"/>
<result property="repairPerson" column="repair_person"/>
<result property="equStatusDes" column="equ_status_des"/>
<result property="replaceSpare" column="replace_spare"/>
<result property="factoryCode" column="factory_code"/>
<result property="attr1" column="attr1"/>
<result property="attr2" column="attr2"/>
<result property="attr3" column="attr3"/>
<result property="delFlag" column="del_flag"/>
<result property="createBy" column="create_by"/>
<result property="createTime" column="create_time"/>
<result property="updateBy" column="update_by"/>
<result property="updateTime" column="update_time"/>
<result property="failureTimes" column="failure_times"/>
<result property="shutdownTimes" column="shutdown_times"/>
</resultMap>
<sql id="selectEquOperationVo">
select id,
workshop,
group_line,
equipment_name,
equipment_code,
fault_time,
actual_operation_time,
operation_time,
failure_rate,
failure_description,
reason_analyze,
handling_method,
repair_person,
equ_status_des,
replace_spare,
factory_code,
attr1,
attr2,
attr3,
del_flag,
create_by,
create_time,
update_by,
update_time,
failure_times,
shutdown_times
from equ_operation
</sql>
<select id="selectEquOperationList" parameterType="EquOperation" resultMap="EquOperationResult">
<include refid="selectEquOperationVo"/>
<where>
<if test="workshop != null and workshop != ''">and workshop like concat('%', #{workshop}, '%')</if>
<if test="groupLine != null and groupLine != ''">and group_line like concat('%', #{groupLine}, '%')</if>
<if test="equipmentName != null and equipmentName != ''">and equipment_name like concat('%',
#{equipmentName}, '%')
</if>
1 year ago
<if test="equipmentCode != null and equipmentCode != ''">and equipment_code like concat('%',
#{equipmentCode}, '%')
</if>
<if test="faultTime != null and faultTime != ''">and fault_time = #{faultTime}</if>
<if test="actualOperationTime != null and actualOperationTime != ''">and actual_operation_time =
#{actualOperationTime}
</if>
<if test="operationTime != null and operationTime != ''">and operation_time = #{operationTime}</if>
<if test="failureRate != null and failureRate != ''">and failure_rate = #{failureRate}</if>
<if test="failureDescription != null and failureDescription != ''">and failure_description =
#{failureDescription}
</if>
<if test="reasonAnalyze != null and reasonAnalyze != ''">and reason_analyze = #{reasonAnalyze}</if>
<if test="handlingMethod != null and handlingMethod != ''">and handling_method = #{handlingMethod}</if>
1 year ago
<if test="repairPerson != null and repairPerson != ''">and repair_person concat('%', #{repairPerson},
'%')
</if>
<if test="equStatusDes != null and equStatusDes != ''">and equ_status_des = #{equStatusDes}</if>
<if test="replaceSpare != null and replaceSpare != ''">and replace_spare = #{replaceSpare}</if>
<if test="factoryCode != null and factoryCode != ''">and factory_code = #{factoryCode}</if>
<if test="attr1 != null and attr1 != ''">and attr1 = #{attr1}</if>
<if test="attr2 != null and attr2 != ''">and attr2 = #{attr2}</if>
<if test="attr3 != null and attr3 != ''">and attr3 = #{attr3}</if>
1 year ago
<if test="createTimeStart != null ">and CONVERT(date,create_time) >= #{createTimeStart}</if>
<if test="createTimeEnd != null ">and #{createTimeEnd} >= CONVERT(date,create_time)</if>
</where>
order by CAST(create_time AS DATE) desc,group_line
</select>
<select id="selectEquOperationById" parameterType="String" resultMap="EquOperationResult">
<include refid="selectEquOperationVo"/>
where id = #{id}
</select>
<select id="selectEquipmentOperationTime" resultType="java.lang.String">
select top 1 da.dict_value
from sys_dict_data da
where dict_type = 'device_operation_time'
order by dict_sort
</select>
<select id="selectEquipments" resultType="com.op.device.domain.EquOperation">
select be.equipment_code AS 'equipmentCode',
be.equipment_name AS 'equipmentName',
zx.equipment_name AS 'groupLine',
be.workshop_name AS 'workshop'
from base_equipment be
left join equ_bind_auxiliary_equipment bae
on bae.auxiliary_equipment_code = be.equipment_code
left join base_equipment zx
on bae.equipment_code = zx.equipment_code
where be.del_flag = '0'
and be.equipment_category = '0'
</select>
<select id="checkInsertOperation" resultType="java.lang.Integer">
select count(id)
from equ_operation
where CONVERT(date, create_time) = CONVERT(date, GETDATE())
</select>
<select id="checkBackupOperation" resultMap="EquOperationResult">
select top 1 id from equ_operation_backup where YEAR(create_time) = YEAR(GETDATE())-2
</select>
<select id="getBackupOperationNum" resultType="java.lang.Integer">
select count(id) from equ_operation where YEAR(create_time) = YEAR(GETDATE())-2
</select>
<insert id="insertEquOperation" parameterType="EquOperation">
insert into equ_operation
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="id != null">id,</if>
<if test="workshop != null">workshop,</if>
<if test="groupLine != null">group_line,</if>
<if test="equipmentName != null">equipment_name,</if>
<if test="equipmentCode != null">equipment_code,</if>
<if test="faultTime != null">fault_time,</if>
<if test="actualOperationTime != null">actual_operation_time,</if>
<if test="operationTime != null">operation_time,</if>
<if test="failureRate != null">failure_rate,</if>
<if test="failureDescription != null">failure_description,</if>
<if test="reasonAnalyze != null">reason_analyze,</if>
<if test="handlingMethod != null">handling_method,</if>
<if test="repairPerson != null">repair_person,</if>
<if test="equStatusDes != null">equ_status_des,</if>
<if test="replaceSpare != null">replace_spare,</if>
<if test="factoryCode != null">factory_code,</if>
<if test="attr1 != null">attr1,</if>
<if test="attr2 != null">attr2,</if>
<if test="attr3 != null">attr3,</if>
<if test="delFlag != null and delFlag != ''">del_flag,</if>
<if test="createBy != null">create_by,</if>
<if test="createTime != null">create_time,</if>
<if test="updateBy != null">update_by,</if>
<if test="updateTime != null">update_time,</if>
<if test="failureTimes != null">failure_times,</if>
<if test="shutdownTimes != null">shutdown_times,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="id != null">#{id},</if>
<if test="workshop != null">#{workshop},</if>
<if test="groupLine != null">#{groupLine},</if>
<if test="equipmentName != null">#{equipmentName},</if>
<if test="equipmentCode != null">#{equipmentCode},</if>
<if test="faultTime != null">#{faultTime},</if>
<if test="actualOperationTime != null">#{actualOperationTime},</if>
<if test="operationTime != null">#{operationTime},</if>
<if test="failureRate != null">#{failureRate},</if>
<if test="failureDescription != null">#{failureDescription},</if>
<if test="reasonAnalyze != null">#{reasonAnalyze},</if>
<if test="handlingMethod != null">#{handlingMethod},</if>
<if test="repairPerson != null">#{repairPerson},</if>
<if test="equStatusDes != null">#{equStatusDes},</if>
<if test="replaceSpare != null">#{replaceSpare},</if>
<if test="factoryCode != null">#{factoryCode},</if>
<if test="attr1 != null">#{attr1},</if>
<if test="attr2 != null">#{attr2},</if>
<if test="attr3 != null">#{attr3},</if>
<if test="delFlag != null and delFlag != ''">#{delFlag},</if>
<if test="createBy != null">#{createBy},</if>
<if test="createTime != null">#{createTime},</if>
<if test="updateBy != null">#{updateBy},</if>
<if test="updateTime != null">#{updateTime},</if>
<if test="failureTimes != null">#{failureTimes},</if>
<if test="shutdownTimes != null">#{shutdownTimes},</if>
</trim>
</insert>
<insert id="insertEquOperationByBatch">
insert into equ_operation
(
id,workshop,group_line,equipment_name,equipment_code,actual_operation_time,operation_time,factory_code,create_by,create_time
)
values
<foreach collection="list" index="index" item="item" separator=",">
(
#{item.id},#{item.workshop},#{item.groupLine},#{item.equipmentName},#{item.equipmentCode},#{item.actualOperationTime},#{item.operationTime},#{item.factoryCode},#{item.createBy},#{item.createTime}
)
</foreach>
</insert>
<insert id="backupOperation">
insert into equ_operation_backup
select s.*
from equ_operation s
where YEAR (s.create_time) = YEAR (GETDATE())-2
ORDER BY id
OFFSET #{startIndex} ROWS FETCH NEXT #{batchSize} ROWS ONLY
</insert>
<update id="updateEquOperation" parameterType="EquOperation">
update equ_operation
<trim prefix="SET" suffixOverrides=",">
<if test="workshop != null">workshop = #{workshop},</if>
<if test="groupLine != null">group_line = #{groupLine},</if>
<if test="equipmentName != null">equipment_name = #{equipmentName},</if>
<if test="equipmentCode != null">equipment_code = #{equipmentCode},</if>
<if test="faultTime != null">fault_time = #{faultTime},</if>
<if test="actualOperationTime != null">actual_operation_time = #{actualOperationTime},</if>
<if test="operationTime != null">operation_time = #{operationTime},</if>
<if test="failureRate != null">failure_rate = #{failureRate},</if>
<if test="failureDescription != null">failure_description = #{failureDescription},</if>
<if test="reasonAnalyze != null">reason_analyze = #{reasonAnalyze},</if>
<if test="handlingMethod != null">handling_method = #{handlingMethod},</if>
<if test="repairPerson != null">repair_person = #{repairPerson},</if>
<if test="equStatusDes != null">equ_status_des = #{equStatusDes},</if>
<if test="replaceSpare != null">replace_spare = #{replaceSpare},</if>
<if test="factoryCode != null">factory_code = #{factoryCode},</if>
<if test="attr1 != null">attr1 = #{attr1},</if>
<if test="attr2 != null">attr2 = #{attr2},</if>
<if test="attr3 != null">attr3 = #{attr3},</if>
<if test="delFlag != null and delFlag != ''">del_flag = #{delFlag},</if>
<if test="createBy != null">create_by = #{createBy},</if>
<if test="createTime != null">create_time = #{createTime},</if>
<if test="updateBy != null">update_by = #{updateBy},</if>
<if test="updateTime != null">update_time = #{updateTime},</if>
<if test="failureTimes != null">failure_times = #{failureTimes},</if>
<if test="shutdownTimes != null">shutdown_times = #{shutdownTimes},</if>
</trim>
where id = #{id}
</update>
<delete id="deleteEquOperationById" parameterType="String">
delete
from equ_operation
where id = #{id}
</delete>
<delete id="deleteEquOperationByIds" parameterType="String">
delete from equ_operation where id in
<foreach item="id" collection="array" open="(" separator="," close=")">
#{id}
</foreach>
</delete>
<delete id="deleteOperation">
delete
from equ_operation
where id in (select s.id from equ_operation s where YEAR (s.create_time) = YEAR (GETDATE())-2
ORDER BY id
OFFSET 0 ROWS FETCH NEXT #{delSize} ROWS ONLY)
</delete>
1 year ago
<select id="selectEquipmentIntegrityRate" parameterType="String" resultMap="EquOperationResult">
<include refid="selectEquOperationVo"/>
where CONVERT(varchar,create_time,21) like concat('%',#{time}, '%')
and equipment_code = #{equipmentCode}
and del_flag = '0'
</select>
1 year ago
</mapper>