itsm_ysm/bin/main/mapper/primarydb/sqlmap/itms/rem/ResourceManagerMapper.xml
2025-08-11 18:00:07 +09:00

605 lines
27 KiB
XML

<?xml version="1.0" encoding="UTF-8"?><!--Converted at: Wed May 11 15:49:39 KST 2016-->
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.urpsys.itmsapi.rem.dao.ResourceManagerDao">
<resultMap type="java.util.LinkedHashMap" id="assetVo">
<result column="IN_ASSET_SEQ" property="inAssetSeq"/>
<result column="VC_CATE1" property="vcCate1"/>
<result column="VC_CATE2" property="vcCate2"/>
<result column="VC_CATE3" property="vcCate3"/>
<result column="IN_CATE1" property="inCate1"/>
<result column="IN_CATE2" property="inCate2"/>
<result column="IN_CATE3" property="inCate3"/>
<result column="VC_ASSET_ID" property="vcAssetId"/>
<result column="VC_ASSET_NAME" property="vcAssetName"/>
<result column="VC_ASSET_STATUS" property="vcAssetStatus"/>
<result column="IN_ASSET_STATUS" property="inAssetStatus"/>
<result column="VC_ASSET_SERIAL" property="vcAssetSerial"/>
<result column="DT_EOS" property="dtEos"/>
<result column="IN_QUANTITY" property="inQuantity"/>
<result column="VC_UNIT" property="vcUnit"/>
<result column="IN_PURCHASE_UNIT_PRICE_C" property="inPurchaseUnitPriceC"/>
<result column="IN_PURCHASE_AMOUNT_C" property="inPurchaseAmountC"/>
<result column="IN_MAS_RATE" property="inMasRate"/>
<result column="VC_MAS_CHECK_PERIOD" property="vcMasCheckPeriod"/>
<result column="VC_FORM" property="vcForm"/>
<result column="VC_CHARGE_DEPARTMENT" property="vcChargeDepartment"/>
<result column="VC_CHARGE_USER" property="vcChargeUser"/>
<result column="VC_IP" property="vcIp"/>
<result column="VC_HOST" property="vcHost"/>
<result column="IN_MAS_TARGET" property="inMasTarget"/>
<result column="IN_REMAIN_PRICE" property="inRemainPrice"/>
<result column="IN_PRICE" property="inPrice"/>
<result column="TX_ASSET_DESC" property="txAssetDesc"/>
<result column="DT_WARRANTY_FINISH" property="dtWarrantyFinish"/>
<result column="DT_MAS_START" property="dtMasStart"/>
<result column="DT_MAS_FINISH" property="dtMasFinish"/>
<result column="DT_PURCHASE_DATETIME" property="dtPurchaseDatetime"/>
<result column="IN_PARENT_SEQ" property="inParentSeq"/>
<result column="VC_PARENT_ASSET_NAME" property="vcParentAssetName"/>
<result column="IN_PHYSICAL" property="inPhysical"/>
<result column="TX_USAGE" property="txUsage"/>
<result column="VC_MODEL" property="vcModel"/>
<result column="VC_VERSION" property="vcVersion"/>
<result column="VC_VENDOR" property="vcVendor"/>
<result column="DT_LAST_MODIFIED" property="dtMastModified" />
<result column="VC_LAST_MODIFY_USER" property="vcLastModifyUser" />
<result column="ATCH_FILE_ID" property="atchFileId" />
</resultMap>
<resultMap type="java.util.LinkedHashMap" id="attach">
<result column="IN_ATTACH_SEQ" property="inAttachSeq" />
<result column="VC_FILE_PATH" property="vcFilePath" />
<result column="VC_FILE_NAME" property="vcFileName" />
<result column="IN_FILE_SIZE" property="size" />
</resultMap>
<resultMap type="java.util.LinkedHashMap" id="reportVo">
<result column="IN_REPORT_SEQ" property="inReportSeq" />
<result column="IN_REPORT_STATUS" property="inReportStatus" />
<result column="VC_REPORT_ID" property="vcReportId" />
<result column="VC_SERVICE_NAME" property="vcServiceName" />
<result column="DT_START_DATETIME" property="dtStartDatetime" />
<result column="DT_FINISH_DATETIME" property="dtFinishDatetime" />
<result column="VC_TASK_USER" property="vcTaskUser" />
<result column="VC_REG_USER" property="vcRegUser" />
<result column="DT_LAST_UPDATE" property="dtLastUpdate" />
<result column="VC_REPORT_TITLE" property="vcReportTitle" />
<result column="VC_REPORT_STATUS" property="vcReportStatus" />
<result column="VC_TASK" property="vcTask" />
<result column="IN_TASK" property="inTask" />
</resultMap>
<sql id="searchFilter">
<if test="assetCategory != null and assetCategory !=''">
AND (B.VC_CATE1 LIKE "%${assetCategory}" OR C.VC_CATE2 LIKE "%${assetCategory}" OR D.VC_CATE3 LIKE "%${assetCategory}")
</if>
<if test="assetName != null and assetName !=''"> AND A.VC_ASSET_NAME LIKE "%${assetName}%"</if>
<if test="assetHost != null and assetHost !=''"> AND A.VC_HOST LIKE "%${assetHost}%"</if>
<if test="assetSerial != null and assetSerial !=''"> AND A.VC_ASSET_SERIAL LIKE "%${assetSerial}%"</if>
<if test="assetModel != null and assetModel !=''"> AND A.VC_MODEL LIKE "%${assetModel}%"</if>
<if test="assetId != null and assetId !=''"> AND A.VC_ASSET_ID LIKE "%${assetId}%"</if>
<if test="assetIp != null and assetIp !=''"> AND A.VC_IP LIKE "%${assetIp}%"</if>
<if test="assetJobName != null and assetJobName !=''"> AND A.VC_JOB_NAME LIKE "%${assetJobName}%"</if>
<if test="assetChargeDepart != null and assetChargeDepart !=''">
AND A.VC_CHARGE_DEPARTMENT LIKE "%${assetChargeDepart}%"
</if>
<if test="assetChargeUser != null and assetChargeUser !=''">
AND A.VC_CHARGE_USER LIKE "%${assetChargeUser}%"
</if>
<if test="columnFilter != null and columnFilter !='' and columnText != null and columnText !=''">
AND A.IN_ASSET_SEQ IN (SELECT IN_ASSET_SEQ FROM CM_ASSET_OPTIONS WHERE IN_ITEM_SEQ=#{columnFilter} AND VC_VALUE LIKE "%${columnText}%")
</if>
<if test="assetStat != null and assetStat > 0"> AND A.IN_ASSET_STATUS = #{assetStat}</if>
<if test="assetInMasTarget != null and assetInMasTarget != ''"> AND A.IN_MAS_TARGET = #{assetInMasTarget}</if>
<if test="inCate1 != null and inCate1 > 0"> AND A.IN_CATE1 = #{inCate1}</if>
<if test="inCate2 != null and inCate2 > 0"> AND A.IN_CATE2 = #{inCate2}</if>
<if test="inCate3 != null and inCate3 > 0"> AND A.IN_CATE3 = #{inCate3}</if>
<if test="sdateWarrantyEnd != null and sdateWarrantyEnd!=''"><![CDATA[ AND (A.DT_WARRANTY_FINISH) >= ("${sdateWarrantyEnd}")]]></if>
<if test="edateWarrantyEnd != null and edateWarrantyEnd!=''"><![CDATA[ AND (A.DT_WARRANTY_FINISH) <= ("${edateWarrantyEnd}")]]></if>
<if test="sdateMasEnd != null and sdateMasEnd!=''"><![CDATA[ AND (A.DT_MAS_FINISH) >= ("${sdateMasEnd}")]]></if>
<if test="edateMasEnd != null and edateMasEnd!=''"><![CDATA[ AND (A.DT_MAS_FINISH) <= ("${edateMasEnd}")]]></if>
<if test="sdateEos != null and sdateEos!=''"><![CDATA[ AND (A.DT_EOS) >= ("sdateEos")]]></if>
<if test="edateEos != null and edateEos!=''"><![CDATA[ AND (A.DT_EOS) <= ("edateEos")]]></if>
<if test='searchAll != null and searchAll != "" '>
AND (
(A.VC_ASSET_ID LIKE "%${searchAll}%" ) OR
(A.VC_ASSET_NAME LIKE "%${searchAll}%" ) OR
(A.VC_ASSET_SERIAL LIKE "%${searchAll}%") OR
(A.IN_MAS_TARGET LIKE "%${searchAll}%") OR
(A.TX_USAGE LIKE "%${searchAll}%") OR
(A.VC_VENDOR LIKE "%${searchAll}%") OR
(A.VC_MODEL LIKE "%${searchAll}%") OR
(A.TX_ASSET_DESC LIKE "%${searchAll}%") OR
(A.VC_HOST LIKE "%${searchAll}%") OR
(A.VC_IP LIKE "%${searchAll}%")
)
</if>
</sql>
<sql id="paging">
<if test="recordCountPerPage != null and firstIndex != null">
LIMIT #{recordCountPerPage} OFFSET #{firstIndex}
</if>
</sql>
<select id="searchAsset" parameterType="java.util.LinkedHashMap" resultType="java.util.LinkedHashMap">
SELECT A.IN_ASSET_SEQ AS inAssetSeq
, A.VC_ASSET_ID AS vcAssetId
, A.VC_ASSET_NAME AS vcAssetName
, A.FL_RATE AS flRate
, (A.FL_RATE/100)*A.IN_PRICE AS inFare
, A.VC_ASSET_SERIAL AS vcAssetSerial
, A.IN_REMAIN_PRICE AS inRemainPrice
, A.VC_IP AS vcIp
, A.VC_HOST AS vcHost
, IF(A.IN_MAS_TARGET=0, 'N', 'Y') AS inMasTarget
, A.IN_PRICE AS inPrice
, A.TX_ASSET_DESC AS txAssetDesc
, A.DT_WARRANTY_FINISH AS dtWaRRantyFinish
, A.IN_QUANTITY AS inQuantity
, IFNULL(S.CD_NM, "미지정") AS vcStatus
, A.IN_ASSET_STATUS AS inAssetStatus
, B.VC_CATE1 AS vcCate1
, C.VC_CATE2 AS vcCate2
, D.VC_CATE3 AS vcCate3
, DATE_FORMAT(A.DT_PURCHASE_DATETIME, '%Y-%m-%d') AS dtPurchaseDatetime
, DATE_FORMAT(A.DT_MAS_START, '%Y-%m-%d') AS dtMasStart
, DATE_FORMAT(A.DT_MAS_FINISH, '%Y-%m-%d') AS dtMasFinish
, DATE_FORMAT(A.DT_EOS, '%Y-%m-%d') AS dtEos
, A.IN_PARENT_SEQ AS inParentSeq
, IF(A.IN_PARENT_SEQ=0, '', (SELECT VC_ASSET_NAME
FROM CM_ASSET
WHERE IN_ASSET_SEQ=A.IN_PARENT_SEQ)) AS vcParentAssetName
, A.IN_CATE1 AS inCate1
, A.IN_CATE2 AS inCate2
, A.IN_CATE3 AS inCate3
, A.IN_PHYSICAL AS inPhysical
, A.TX_USAGE AS txUsage
, A.VC_VENDOR AS vcVendor
, A.VC_MODEL AS vcModel
, A.VC_VERSION AS vcVersion
, A.VC_UNIT AS vcUnit
, A.IN_PURCHASE_UNIT_PRICE_C AS inPurchaseUnitPriceC
, A.IN_PURCHASE_AMOUNT_C AS inPurchaseAmountC
, A.IN_MAS_RATE AS inMasRate
, A.VC_MAS_CHECK_PERIOD AS vcMasCheckPeriod
, A.VC_FORM AS vcForm
, A.VC_CHARGE_DEPARTMENT AS vcChargeDepartment
, A.VC_CHARGE_USER AS vcChargeUser
, DATE_FORMAT(A.DT_LAST_MODIFIED, '%Y-%m-%d %H:%i') AS dtLastModified
, A.VC_LAST_MODIFY_USER AS vcLastModifyUser
FROM CM_ASSET A
LEFT OUTER JOIN TB_CMM_DTL_CD_INFO S ON S.CD_ID ='SM_001'
AND A.IN_ASSET_STATUS = S.CD
, CODE_ASSET_CATE1 B
, CODE_ASSET_CATE2 C
, CODE_ASSET_CATE3 D
WHERE A.IN_DEL_FLAG=0
AND A.IN_CATE1=B.IN_CATE1
AND A.IN_CATE1=C.IN_CATE1
AND A.IN_CATE2=C.IN_CATE2
AND A.IN_CATE1=D.IN_CATE1
AND A.IN_CATE2=D.IN_CATE2
AND A.IN_CATE3=D.IN_CATE3
<include refid="searchFilter"/>
<if test="sortField != null and sortField !=''">
<if test="sortField == 'VC_ASSET_ID'"> ORDER BY A.VC_ASSET_ID</if>
<if test="sortField == 'DT_PURCHASE_DATETIME'"> ORDER BY A.DT_PURCHASE_DATETIME</if>
<if test="sortField == 'VC_CATE1'"> ORDER BY B.VC_CATE1</if>
<if test="sortField == 'VC_CATE2'"> ORDER BY C.VC_CATE2</if>
<if test="sortField == 'VC_CATE3'"> ORDER BY D.VC_CATE3</if>
<if test="sortField == 'VC_ASSET_NAME'"> ORDER BY A.VC_ASSET_NAME</if>
<if test="sortField == 'VC_VENDOR'"> ORDER BY A.VC_VENDOR</if>
<if test="sortField == 'VC_MODEL'"> ORDER BY A.VC_MODEL</if>
<if test="sortField == 'IN_QUANTITY'"> ORDER BY IN_QUANTITY</if>
<if test="sortField == 'VC_UNIT'"> ORDER BY VC_UNIT</if>
<if test="sortField == 'IN_PURCHASE_UNIT_PRICE_C'"> ORDER BY IN_PURCHASE_UNIT_PRICE_C</if>
<if test="sortField == 'IN_PURCHASE_AMOUNT_C'"> ORDER BY IN_PURCHASE_AMOUNT_C</if>
<if test="sortField == 'DT_WARRANTY_FINISH'"> ORDER BY A.DT_WARRANTY_FINISH</if>
<if test="sortField == 'IN_MAS_TARGET'"> ORDER BY A.IN_MAS_TARGET</if>
<if test="sortField == 'IN_MAS_RATE'"> ORDER BY IN_MAS_RATE</if>
<if test="sortField == 'VC_MAS_CHECK_PERIOD'"> ORDER BY VC_MAS_CHECK_PERIOD</if>
<if test="sortField == 'DT_MAS_START'"> ORDER BY A.DT_MAS_START</if>
<if test="sortField == 'DT_MAS_FINISH'"> ORDER BY A.DT_MAS_FINISH</if>
<if test="sortField == 'VC_VERSION'"> ORDER BY A.VC_VERSION</if>
<if test="sortField == 'VC_STATUS'"> ORDER BY VC_STATUS</if>
<if test="sortField == 'VC_ASSET_SERIAL'"> ORDER BY A.VC_ASSET_SERIAL</if>
<if test="sortField == 'VC_PARENT_ASSET_NAME'"> ORDER BY VC_PARENT_ASSET_NAME</if>
<if test="sortField == 'IN_REMAIN_PRICE'"> ORDER BY A.IN_REMAIN_PRICE</if>
<if test="sortField == 'VC_FORM'"> ORDER BY VC_FORM</if>
<if test="sortField == 'VC_IP'"> ORDER BY A.VC_IP</if>
<if test="sortField == 'VC_HOST'"> ORDER BY A.VC_HOST</if>
<if test="sortField == 'DT_EOS'"> ORDER BY A.DT_EOS</if>
<if test="sortField == 'VC_CHARGE_DEPARTMENT'"> ORDER BY VC_CHARGE_DEPARTMENT</if>
<if test="sortField == 'VC_CHARGE_USER'"> ORDER BY VC_CHARGE_USER</if>
<if test="sortField == 'TX_USAGE'"> ORDER BY TX_USAGE</if>
<if test="sortField == 'TX_ASSET_DESC'"> ORDER BY A.TX_ASSET_DESC</if>
<if test="sortField == 'DT_LAST_MODIFIED'"> ORDER BY DT_LAST_MODIFIED</if>
<if test="sortField == 'VC_LAST_MODIFY_USER'"> ORDER BY VC_LAST_MODIFY_USER</if>
<if test="sortField == 'IN_PRICE'"> ORDER BY A.IN_PRICE</if>
<if test="sortOrder != null and sortOrder =='asc'"> ASC</if>
<if test="sortOrder != null and sortOrder =='desc'"> DESC</if>
</if>
<if test="sortField == null or sortField ==''">
ORDER BY A.IN_ASSET_SEQ DESC
</if>
<include refid="paging"/>
</select>
<select id="searchAssetCount" parameterType="java.util.HashMap" resultType="int">
SELECT COUNT(A.IN_ASSET_SEQ)
FROM CM_ASSET A
, CODE_ASSET_CATE1 B
, CODE_ASSET_CATE2 C
, CODE_ASSET_CATE3 D
WHERE A.IN_DEL_FLAG=0
AND A.IN_CATE1=B.IN_CATE1
AND A.IN_CATE1=C.IN_CATE1 AND A.IN_CATE2=C.IN_CATE2
AND A.IN_CATE1=D.IN_CATE1 AND A.IN_CATE2=D.IN_CATE2 AND A.IN_CATE3=D.IN_CATE3
<include refid="searchFilter"></include>
</select>
<!-- 2025.03.31 나혁제 자산이력조회 기능 추가 -->
<select id="searchAssetHist" parameterType="java.util.LinkedHashMap" resultType="java.util.LinkedHashMap">
SELECT A.IN_ASSET_SEQ AS inAssetSeq
, A.VC_ASSET_ID AS vcAssetId
, A.VC_ASSET_NAME AS vcAssetName
, A.FL_RATE AS flRate
, (A.FL_RATE/100)*A.IN_PRICE AS inFare
, A.VC_ASSET_SERIAL AS vcAssetSerial
, A.IN_REMAIN_PRICE AS inRemainPrice
, A.VC_IP AS vcIp
, A.VC_HOST AS vcHost
, IF(A.IN_MAS_TARGET=0, 'N', 'Y') AS inMasTarget
, A.IN_PRICE AS inPrice
, A.TX_ASSET_DESC AS txAssetDesc
, A.DT_WARRANTY_FINISH AS dtWaRRantyFinish
, A.IN_QUANTITY AS inQuantity
, IFNULL(S.CD_NM, "미지정") AS vcStatus
, A.IN_ASSET_STATUS AS inAssetStatus
, B.VC_CATE1 AS vcCate1
, C.VC_CATE2 AS vcCate2
, D.VC_CATE3 AS vcCate3
, DATE_FORMAT(A.DT_PURCHASE_DATETIME, '%Y-%m-%d') AS dtPurchaseDatetime
, DATE_FORMAT(A.DT_MAS_START, '%Y-%m-%d') AS dtMasStart
, DATE_FORMAT(A.DT_MAS_FINISH, '%Y-%m-%d') AS dtMasFinish
, DATE_FORMAT(A.DT_EOS, '%Y-%m-%d') AS dtEos
, A.IN_PARENT_SEQ AS inParentSeq
, IF(A.IN_PARENT_SEQ=0, '', (SELECT VC_ASSET_NAME
FROM CM_ASSET
WHERE IN_ASSET_SEQ=A.IN_PARENT_SEQ)) AS vcParentAssetName
, A.IN_CATE1 AS inCate1
, A.IN_CATE2 AS inCate2
, A.IN_CATE3 AS inCate3
, A.IN_PHYSICAL AS inPhysical
, A.TX_USAGE AS txUsage
, A.VC_VENDOR AS vcVendor
, A.VC_MODEL AS vcModel
, A.VC_VERSION AS vcVersion
, A.VC_UNIT AS vcUnit
, A.IN_PURCHASE_UNIT_PRICE_C AS inPurchaseUnitPriceC
, A.IN_PURCHASE_AMOUNT_C AS inPurchaseAmountC
, A.IN_MAS_RATE AS inMasRate
, A.VC_MAS_CHECK_PERIOD AS vcMasCheckPeriod
, A.VC_FORM AS vcForm
, A.VC_CHARGE_DEPARTMENT AS vcChargeDepartment
, A.VC_CHARGE_USER AS vcChargeUser
, DATE_FORMAT(A.DT_LAST_MODIFIED, '%Y-%m-%d %H:%i') AS dtLastModified
, A.VC_LAST_MODIFY_USER AS vcLastModifyUser
, DATE_FORMAT(A.EVENT_TIME, '%Y-%m-%d %H:%i') AS eventTime
FROM CM_ASSET_HIST A
LEFT OUTER JOIN TB_CMM_DTL_CD_INFO S ON S.CD_ID ='SM_001'
AND A.IN_ASSET_STATUS = S.CD
, CODE_ASSET_CATE1 B
, CODE_ASSET_CATE2 C
, CODE_ASSET_CATE3 D
WHERE A.IN_ASSET_SEQ = #{inAssetSeq}
AND A.IN_CATE1=B.IN_CATE1
AND A.IN_CATE1=C.IN_CATE1 AND A.IN_CATE2=C.IN_CATE2
AND A.IN_CATE1=D.IN_CATE1 AND A.IN_CATE2=D.IN_CATE2 AND A.IN_CATE3=D.IN_CATE3
ORDER BY EVENT_TIME DESC
<include refid="paging"/>
</select>
<select id="searchAssetHistCount" parameterType="java.util.HashMap" resultType="int">
SELECT COUNT(A.IN_ASSET_SEQ)
FROM CM_ASSET A
, CODE_ASSET_CATE1 B
, CODE_ASSET_CATE2 C
, CODE_ASSET_CATE3 D
WHERE A.IN_ASSET_SEQ = #{inAssetSeq}
AND A.IN_CATE1=B.IN_CATE1
AND A.IN_CATE1=C.IN_CATE1 AND A.IN_CATE2=C.IN_CATE2
AND A.IN_CATE1=D.IN_CATE1 AND A.IN_CATE2=D.IN_CATE2 AND A.IN_CATE3=D.IN_CATE3
</select>
<insert id="addAssetVo" parameterType="java.util.LinkedHashMap" useGeneratedKeys="true" keyProperty="inAssetSeq">
INSERT INTO CM_ASSET
( IN_CATE1
, IN_CATE2
, IN_CATE3
, VC_ASSET_ID
, VC_ASSET_NAME
, IN_PARENT_SEQ
, IN_ASSET_STATUS
, VC_ASSET_SERIAL
, VC_MAS_CHECK_PERIOD
, DT_PURCHASE_DATETIME
, DT_EOS
, IN_PRICE
, IN_REMAIN_PRICE
, IN_MAS_TARGET
, DT_WARRANTY_FINISH
, DT_MAS_START
, DT_MAS_FINISH
, VC_LAST_MODIFY_USER
, TX_USAGE
, IN_PHYSICAL
, VC_VENDOR
, VC_MODEL
, VC_VERSION
, TX_ASSET_DESC
, IN_DEL_FLAG
, VC_IP
, VC_HOST
, IN_MAS_RATE
, DT_REG_DATETIME
, DT_LAST_MODIFIED
, ATCH_FILE_ID
)
VALUES
( #{inCate1}
, #{inCate2}
, #{inCate3}
, #{vcAssetId}
, #{vcAssetName}
, #{inParentSeq}
, #{inAssetStatus}
, #{vcAssetSerial}
, #{inMasTarget}
, #{dtPurchaseDatetime}
, #{dtEos}
, #{inPrice}
, #{inRemainPrice}
, #{inMasTarget}
, #{dtWarrantyFinish}
, #{dtMasStart}
, #{dtMasFinish}
, #{vcLastModifyUser}
, #{txUsage}
, #{inPhysical}
, #{vcVendor}
, #{vcModel}
, #{vcVersion}
, #{txAssetDesc}
, 0
, #{vcIp}
, #{vcHost}
, #{inMasRate}
, NOW()
, NOW()
, #{atchFileId}
)
</insert>
<select id="getAssetSeqById" parameterType="String" resultType="java.lang.Integer">
SELECT IFNULL(IN_ASSET_SEQ, 0)
FROM CM_ASSET
WHERE IN_DEL_FLAG=0
AND VC_ASSET_ID=#{value}
</select>
<select id="getAssetInfo" parameterType="int" resultMap="assetVo">
SELECT A.IN_ASSET_SEQ
, A.VC_ASSET_ID
, A.VC_ASSET_NAME
, A.VC_ASSET_SERIAL
, A.IN_MAS_TARGET
, FORMAT(A.IN_REMAIN_PRICE, 0) AS IN_REMAIN_PRICE
, IFNULL(A.IN_PRICE, 0) AS IN_PRICE
, A.TX_ASSET_DESC
, A.DT_WARRANTY_FINISH
, A.DT_MAS_START, A.DT_MAS_FINISH
, IFNULL(S.CD_NM, "미지정") AS vcStatus
/*
, IFNULL(S.VC_STATUS , "미지정") AS VC_ASSET_STATUS
*/
, A.IN_ASSET_STATUS
, A.DT_PURCHASE_DATETIME
, B.VC_CATE1
, C.VC_CATE2
, D.VC_CATE3
, A.IN_PARENT_SEQ
, IF(A.IN_PARENT_SEQ=0, '', (SELECT VC_ASSET_NAME
FROM CM_ASSET
WHERE IN_ASSET_SEQ=A.IN_PARENT_SEQ)) AS VC_PARENT_ASSET_NAME
, A.IN_CATE1
, A.IN_CATE2
, A.IN_CATE3
, A.VC_IP
, A.VC_HOST
, A.DT_EOS
, A.IN_QUANTITY
, A.VC_UNIT
, FORMAT(A.IN_PURCHASE_UNIT_PRICE_C, 0) AS IN_PURCHASE_UNIT_PRICE_C
, FORMAT(A.IN_PURCHASE_AMOUNT_C, 0) AS IN_PURCHASE_AMOUNT_C
, A.IN_MAS_RATE
, A.VC_MAS_CHECK_PERIOD
, A.VC_FORM
, A.VC_CHARGE_DEPARTMENT
, A.VC_CHARGE_USER
, A.IN_PHYSICAL
, A.TX_USAGE
, A.VC_VENDOR
, A.VC_MODEL
, A.VC_VERSION
, DATE_FORMAT(A.DT_LAST_MODIFIED, '%Y-%m-%d') AS DT_LAST_MODIFIED
, A.VC_LAST_MODIFY_USER
, A.ATCH_FILE_ID
FROM CM_ASSET A
LEFT OUTER JOIN TB_CMM_DTL_CD_INFO S ON S.CD_ID ='SM_001'
AND A.IN_ASSET_STATUS = S.CD
/* LEFT OUTER JOIN CODE_ASSET_STATUS S ON A.IN_ASSET_STATUS=S.IN_STATUS */
, CODE_ASSET_CATE1 B
, CODE_ASSET_CATE2 C
, CODE_ASSET_CATE3 D
WHERE A.IN_ASSET_SEQ=#{value}
AND A.IN_CATE1 = B.IN_CATE1
AND A.IN_CATE1 = C.IN_CATE1
AND A.IN_CATE2 = C.IN_CATE2
AND A.IN_CATE1 = D.IN_CATE1
AND A.IN_CATE2 = D.IN_CATE2
AND A.IN_CATE3 = D.IN_CATE3
</select>
<update id="updateAssetVo" parameterType="java.util.LinkedHashMap">
UPDATE CM_ASSET
SET IN_CATE1=#{inCate1}
, IN_CATE2=#{inCate2}
, IN_CATE3=#{inCate3}
, VC_ASSET_ID="${vcAssetId}"
, VC_ASSET_NAME="${vcAssetName}"
, IN_PARENT_SEQ=#{inParentSeq}
, IN_ASSET_STATUS=#{inAssetStatus}
, VC_ASSET_SERIAL="${vcAssetSerial}"
<if test="dtPurchaseDatetime != null"> , DT_PURCHASE_DATETIME="${dtPurchaseDatetime}" </if>
<if test="dtPurchaseDatetime == null"> , DT_PURCHASE_DATETIME=null,</if>
, IN_PRICE=#{inPrice}
, IN_REMAIN_PRICE=#{inRemainPrice}
, IN_MAS_TARGET=#{inMasTarget}
<if test="dtWarrantyFinish != null"> , DT_WARRANTY_FINISH="${dtWarrantyFinish}" </if>
<if test="dtWarrantyFinish == null"> , DT_WARRANTY_FINISH=null</if>
<if test="dtMasStart != null"> , DT_MAS_START="${dtMasStart}" </if>
<if test="dtMasStart == null"> , DT_MAS_START=null</if>
<if test="dtMasFinish != null"> , DT_MAS_FINISH="${dtMasFinish}" </if>
<if test="dtMasFinish == null"> , DT_MAS_FINISH=null</if>
<if test="dtEos != null"> , DT_EOS="${dtEos}" </if>
<if test="dtEos == null"> , DT_EOS=null</if>
, TX_ASSET_DESC="${txAssetDesc}"
, VC_IP="${vcIp}"
, VC_HOST="${vcHost}"
<if test="inPhysical != null"> , IN_PHYSICAL=#{inPhysical}</if>
<if test="txUsage != null"> , TX_USAGE="${txUsage}"</if>
<if test="vcVendor != null"> , VC_VENDOR="${vcVendor}"</if>
<if test="vcModel != null"> , VC_MODEL="${vcModel}"</if>
<if test="inQuantity != null"> , IN_QUANTITY=#{inQuantity}</if>
<if test="inMasRate != null"> , IN_MAS_RATE=#{inMasRate}</if>
<if test="vcUnit != null"> , VC_UNIT="${vcUnit}"</if>
<if test="vcForm != null"> , VC_FORM="${vcForm}"</if>
<if test="vcMasCheckPeriod != null"> , VC_MAS_CHECK_PERIOD="${vcMasCheckPeriod}"</if>
<if test="vcVersion != null"> , VC_VERSION="${vcVersion}"</if>
<if test="vcChargeDepartment != null"> , VC_CHARGE_DEPARTMENT="${vcChargeDepartment}"</if>
<if test="vcChargeUser != null"> , VC_CHARGE_USER="${vcChargeUser}"</if>
<if test="vcLastModifyUser != null"> , VC_LAST_MODIFY_USER="${vcLastModifyUser}"</if>
, DT_LAST_MODIFIED=now()
, IN_ASSET_SEQ=#{inAssetSeq}
, ATCH_FILE_ID=#{atchFileId}
WHERE IN_ASSET_SEQ=#{inAssetSeq}
</update>
<update id="deleteAsset" parameterType="int">
UPDATE CM_ASSET
SET IN_DEL_FLAG=1
WHERE IN_ASSET_SEQ=#{value}
</update>
<select id="getAttach" parameterType="int" resultMap="attach">
SELECT IN_ATTACH_SEQ
, VC_FILE_PATH
, IN_FILE_SIZE
, VC_FILE_NAME
FROM CM_ASSET_ATTACH
WHERE IN_ASSET_SEQ=#{value}
</select>
<delete id="deleteAttachByKey" parameterType="int">
DELETE FROM CM_ASSET_ATTACH
WHERE IN_ATTACH_SEQ=#{value}
</delete>
<insert id="insertAttachAsset" parameterType="java.util.LinkedHashMap">
INSERT INTO CM_ASSET_ATTACH
( IN_ASSET_SEQ
, VC_FILE_NAME
, VC_FILE_PATH
, VC_ORG_FILE_NAME
, IN_FILE_SIZE
)
VALUES
( #{articalSeq}
, #{vcFileName}
, #{vcFilePath}
, #{vcOrgFileName}
, #{size}
)
</insert>
<select id="checkAssetIdDup" parameterType="String" resultType="int">
SELECT COUNT(*)
FROM CM_ASSET
WHERE IN_DEL_FLAG=0
AND VC_ASSET_ID="${value}"
</select>
<select id="getReportByAsset" parameterType="int" resultMap="reportVo">
SELECT A.IN_REPORT_SEQ
, A.IN_REPORT_STATUS
, A.VC_REPORT_ID
, D.VC_SERVICE_NAME
, DATE_FORMAT(A.DT_START_DATETIME, '%Y-%m-%d %H:%i') AS DT_START_DATETIME
, DATE_FORMAT(A.DT_FINISH_DATETIME, '%Y-%m-%d %H:%i') AS DT_FINISH_DATETIME
, A.VC_TASK_USER
, DATE_FORMAT(A.DT_LAST_UPDATE, '%Y-%m-%d %H:%i') AS DT_LAST_UPDATE
, A.IN_TASK
, A.VC_REPORT_TITLE
, B.CD_NM AS VC_TASK
, A.VC_REG_USER
, IF( A.IN_REPORT_STATUS=3, "완료"
, IF(A.IN_REPORT_STATUS=2, "반려"
, IF(A.IN_REPORT_STATUS=1, "승인요청", "접수"))) AS VC_REPORT_STATUS
FROM CM_REPORT A
/*
LEFT OUTER JOIN CODE_TASK B ON A.IN_TASK=B.IN_TASK
*/
LEFT OUTER JOIN TB_CMM_DTL_CD_INFO B ON A.IN_TASK=B.CD
AND B.CD_ID ='SM_002'
LEFT OUTER JOIN CM_SERVICE D ON A.IN_SERVICE_CODE=D.IN_SERVICE_CODE
WHERE A.IN_REPORT_SEQ IN (SELECT IN_REPORT_SEQ
FROM CM_REPORT_ASSET
WHERE IN_ASSET_SEQ=#{value})
ORDER BY A.IN_REPORT_SEQ DESC
</select>
</mapper>