<?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.ruoyi.system.mapper.AssetMainMapper">
|
|
<!-- 通用查询映射结果 -->
|
<resultMap id="BaseResultMap" type="com.ruoyi.system.model.AssetMain">
|
<id column="id" property="id" />
|
<result column="approval_application_id" property="approvalApplicationId" />
|
<result column="asset_original_code" property="assetOriginalCode" />
|
<result column="asset_code" property="assetCode" />
|
<result column="asset_name" property="assetName" />
|
<result column="specification_model" property="specificationModel" />
|
<result column="asset_type_id" property="assetTypeId" />
|
<result column="asset_category" property="assetCategory" />
|
<result column="asset_main_type" property="assetMainType" />
|
<result column="measurement_unit" property="measurementUnit" />
|
<result column="quantity" property="quantity" />
|
<result column="unit_price" property="unitPrice" />
|
<result column="total_value" property="totalValue" />
|
<result column="useful_life" property="usefulLife" />
|
<result column="ownership_dept_id" property="ownershipDeptId" />
|
<result column="user_name" property="userName" />
|
<result column="use_dept_id" property="useDeptId" />
|
<result column="warehouse_id" property="warehouseId" />
|
<result column="warehouse_name" property="warehouseName" />
|
<result column="address" property="address" />
|
<result column="asset_status" property="assetStatus" />
|
<result column="remarks" property="remarks" />
|
<result column="accounting_status" property="accountingStatus" />
|
<result column="accounting_date" property="accountingDate" />
|
<result column="accounting_voucher_no" property="accountingVoucherNo" />
|
<result column="accounting_subject" property="accountingSubject" />
|
<result column="accounting_amount" property="accountingAmount" />
|
<result column="attachment_urls" property="attachmentUrls" />
|
<result column="create_time" property="createTime" />
|
<result column="create_by" property="createBy" />
|
<result column="update_time" property="updateTime" />
|
<result column="update_by" property="updateBy" />
|
<result column="disabled" property="disabled" />
|
</resultMap>
|
|
<!-- 通用查询结果列 -->
|
<sql id="Base_Column_List">
|
id, approval_application_id, asset_original_code, asset_code, asset_name, specification_model, asset_type_id, asset_category, asset_main_type, measurement_unit, quantity, unit_price, total_value, useful_life, ownership_dept_id, user_name, use_dept_id, warehouse_id, warehouse_name, address, asset_status, remarks, accounting_status, accounting_date, accounting_voucher_no, accounting_subject, accounting_amount, attachment_urls, create_time, create_by, update_time, update_by, disabled
|
</sql>
|
|
<!-- 分页查询:审批通过的资产列表(关联审批记录、资产类型与部门) -->
|
<select id="selectApprovedAssetPage" resultType="com.ruoyi.system.vo.asset.AssetMainPageVO">
|
SELECT
|
am.id AS id,
|
am.asset_code AS assetCode,
|
am.asset_name AS assetName,
|
at.type_name AS assetTypeName,
|
od.dept_name AS ownershipDeptName,
|
am.asset_status AS assetStatus,
|
oas.storage_time AS storageTime,
|
CASE
|
WHEN am.address_type = 0 THEN
|
ud.dept_name
|
WHEN am.address_type = 1 THEN
|
am.warehouse_name
|
WHEN am.address_type = 2 THEN
|
am.address
|
ELSE ''
|
END AS useDeptOrLocation
|
FROM asset_main am
|
INNER JOIN oa_approval_applications aaa ON aaa.id = am.approval_application_id
|
LEFT JOIN oa_approval_application_storage oas ON oas.approval_application_id = am.approval_application_id
|
LEFT JOIN asset_type at ON at.id = am.asset_type_id
|
LEFT JOIN t_dept od ON od.id = am.ownership_dept_id
|
LEFT JOIN t_dept ud ON ud.id = am.use_dept_id
|
<where>
|
AND IFNULL(am.disabled, 0) = 0
|
AND IFNULL(aaa.disabled, 0) = 0
|
AND aaa.approval_status = 2 AND aaa.approval_id = '${@com.ruoyi.system.emums.ApprovalTypeEnum@IN_STOCK.getCode()}'
|
AND IFNULL(am.is_disposed, 0) = 0
|
AND IFNULL(am.is_in_use, 0) = 0
|
AND IFNULL(am.is_borrowed, 0) = 0
|
<if test="query != null and query.assetTypeId != null">
|
AND am.asset_type_id = #{query.assetTypeId}
|
</if>
|
<if test="query != null and query.ownershipDeptId != null">
|
AND am.ownership_dept_id = #{query.ownershipDeptId}
|
</if>
|
<if test="query != null and query.assetStatus != null and query.assetStatus != ''">
|
AND am.asset_status = #{query.assetStatus}
|
</if>
|
<if test="query != null and query.keyword != null and query.keyword != ''">
|
AND (am.asset_name LIKE CONCAT('%', #{query.keyword}, '%')
|
OR am.asset_code LIKE CONCAT('%', #{query.keyword}, '%'))
|
</if>
|
</where>
|
ORDER BY COALESCE(oas.storage_time, DATE(am.create_time)) DESC, am.id DESC
|
</select>
|
|
</mapper>
|