package jnpf.elnMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import jnpf.elnEntity.runtime.ElnSharedFillTargetOperationEntity; import org.apache.ibatis.annotations.Insert; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Update; @Mapper public interface ElnSharedFillTargetOperationMapper extends BaseMapper { @Insert("INSERT INTO eln_shared_fill_target_operation " + "(operation_code, jianyan_xiang_id, dianzi_jilu_id, operation_status, " + "f_id, f_tenant_id, f_version, f_creator_user_id, f_creator_time, " + "f_delete_mark) VALUES " + "(#{value.operationCode}, #{value.jianyanXiangId}, " + "#{value.dianziJiluId}, 'PREPARED', #{value.id}, #{value.fTenantId}, 0, " + "#{value.fCreatorUserId}, CURRENT_TIMESTAMP, 0) " + "ON CONFLICT (f_tenant_id, operation_code, jianyan_xiang_id) DO NOTHING") int insertIgnore(@Param("value") ElnSharedFillTargetOperationEntity value); @Update("UPDATE eln_shared_fill_target_operation " + "SET operation_status = 'COMPLETED', result_json = #{resultJson}, " + "f_version = f_version + 1, f_last_modify_user_id = #{userId}, " + "f_last_modify_time = CURRENT_TIMESTAMP " + "WHERE f_tenant_id = #{tenantId} AND operation_code = #{operationCode} " + "AND jianyan_xiang_id = #{testWorkItemId} " + "AND dianzi_jilu_id = #{recordId} AND operation_status = 'PREPARED' " + "AND COALESCE(f_delete_mark, 0) = 0") int complete(@Param("tenantId") String tenantId, @Param("operationCode") String operationCode, @Param("testWorkItemId") String testWorkItemId, @Param("recordId") String recordId, @Param("resultJson") String resultJson, @Param("userId") String userId); }