<?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.zy.asrs.mapper.MatMapper">
|
|
<!-- 通用查询映射结果 -->
|
<resultMap id="BaseResultMap" type="com.zy.asrs.entity.Mat">
|
<id column="id" property="id" />
|
<result column="uuid" property="uuid" />
|
<result column="node_id" property="nodeId" />
|
<result column="tag_id" property="tagId" />
|
<result column="matnr" property="matnr" />
|
<result column="maktx" property="maktx" />
|
<result column="name" property="name" />
|
<result column="specs" property="specs" />
|
<result column="model" property="model" />
|
<result column="batch" property="batch" />
|
<result column="unit" property="unit" />
|
<result column="barcode" property="barcode" />
|
<result column="doc_id" property="docId" />
|
<result column="doc_num" property="docNum" />
|
<result column="cust_name" property="custName" />
|
<result column="item_num" property="itemNum" />
|
<result column="count" property="count" />
|
<result column="price" property="price" />
|
<result column="weight" property="weight" />
|
<result column="status" property="status" />
|
<result column="create_by" property="createBy" />
|
<result column="create_time" property="createTime" />
|
<result column="update_by" property="updateBy" />
|
<result column="update_time" property="updateTime" />
|
<result column="memo" property="memo" />
|
|
<result column="stock" property="stock" />
|
</resultMap>
|
|
<select id="listByPage" resultMap="BaseResultMap">
|
SELECT
|
isnull(mld.amount,0) as stock,
|
mm.*
|
FROM man_mat mm
|
LEFT JOIN man_tag mt ON mm.tag_id = mt.id
|
LEFT JOIN (
|
select
|
matnr,
|
sum(anfme) as amount
|
from man_loc_detl
|
group by matnr
|
) as mld on mld.matnr = mm.matnr
|
WHERE 1=1
|
AND (CHARINDEX(','+#{tagId}+',', ','+mt.path+',') > 0 OR mt.id = #{tagId})
|
<if test="matnr != null and matnr != ''">
|
and mm.matnr like concat('%',#{matnr},'%')
|
</if>
|
<if test="maktx != null and maktx != ''">
|
and mm.maktx like concat('%',#{maktx},'%')
|
</if>
|
ORDER BY mm.create_time DESC
|
</select>
|
|
<select id="selectByMatnr" resultMap="BaseResultMap">
|
select top 1 * from man_mat where 1=1 and matnr = #{matnr}
|
</select>
|
</mapper>
|