warehouse-mapper.xml
4.13 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
<?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">
<!-- 网点管理 @author togxiaochuan -->
<mapper namespace="com.cjs.cms.dao.user.pick.WarehouseDao">
<sql id="warehouse_field">
CODE, NAME, PROVINCE, CITY, AREA, ADDRESS, CONTACT_NAME, CONTACT_PHONE,
SUBSTR(DECODE(LENGTH(W.BUSINESS_START_TIME), 5, '0'||W.BUSINESS_START_TIME, W.BUSINESS_START_TIME), 0, 6) BUSINESS_START_TIME ,
SUBSTR(DECODE(LENGTH(W.BUSINESS_END_TIME), 5, '0'||W.BUSINESS_END_TIME, W.BUSINESS_END_TIME), 0, 6) BUSINESS_END_TIME , STATUS, UPDATE_DATE,
SUBSTR(DECODE(LENGTH(W.UPDATE_TIME), 5, '0'||W.UPDATE_TIME, W.UPDATE_TIME), 0, 6) UPDATE_TIME
</sql>
<insert id="save" parameterType="WarehouseInfo" useGeneratedKeys="true" keyColumn="code" keyProperty="code">
INSERT INTO HS_ASSET.WAREHOUSE(CODE, NAME, PROVINCE, CITY, AREA, ADDRESS, CONTACT_NAME, CONTACT_PHONE, BUSINESS_START_TIME,
BUSINESS_END_TIME, STATUS)
VALUES(#{code}, #{name}, #{province}, #{city}, #{area}, #{address}, #{contactName}, #{contactPhone},
#{businessStartTime}, #{businessEndTime}, '1')
</insert>
<!-- 修改网点信息 -->
<update id="updateInfo" parameterType="WarehouseInfo">
UPDATE HS_ASSET.WAREHOUSE SET NAME = #{name}, PROVINCE = #{province}, CITY = #{city},
AREA = #{area}, ADDRESS = #{address}, CONTACT_NAME = #{contactName}, CONTACT_PHONE = #{contactPhone},
BUSINESS_START_TIME = #{businessStartTime}, BUSINESS_END_TIME = #{businessEndTime}, STATUS = '1',
UPDATE_DATE = #{updateDate}, UPDATE_TIME = #{updateTime}
WHERE CODE = #{code}
</update>
<!-- 网点作废 -->
<update id="cancelInfo" parameterType="string">
UPDATE HS_ASSET.WAREHOUSE SET STATUS = '0' WHERE CODE = #{code}
</update>
<resultMap id="queryAll" type="WarehouseInfo">
<id property="code" column="CODE"/>
<result property="name" column="NAME"/>
<result property="province" column="PROVINCE"/>
<result property="city" column="CITY"/>
<result property="area" column="AREA"/>
<result property="address" column="ADDRESS"/>
<result property="contactName" column="CONTACT_NAME"/>
<result property="contactPhone" column="CONTACT_PHONE"/>
<result property="businessStartTime" column="BUSINESS_START_TIME"/>
<result property="businessEndTime" column="BUSINESS_END_TIME"/>
<result property="status" column="STATUS"/>
<result property="updateDate" column="UPDATE_DATE"/>
<result property="updateTime" column="UPDATE_TIME"/>
<collection property="list" ofType="InventoryInfo">
<id property="warehouseCode" column="WAREHOUSE_CODE"/>
<result property="id" column="id"/>
<result property="otcCode" column="OTC_CODE"/>
<result property="otcName" column="OTC_NAME"/>
<result property="totalAmount" column="TOTAL_AMOUNT"/>
<result property="frozenAmount" column="FROZEN_AMOUNT"/>
<result property="usefulAmount" column="USEFUL_AMOUNT"/>
</collection>
</resultMap>
<select id="search" parameterType="map" resultType="WarehouseInfo">
<include refid="common.pageStart" />
SELECT <include refid="warehouse_field" />
FROM HS_ASSET.WAREHOUSE W
<include refid="searchCondition" />
ORDER BY TO_NUMBER(W.CODE) ASC
<include refid="common.pageEnd" />
</select>
<sql id="searchCondition">
WHERE 1=1
<if test="name != null and name != ''">
AND INSTR(W.NAME, #{name}) > 0
</if>
<if test="contactName != null and contactName != ''">
AND INSTR(W.CONTACT_NAME, #{contactName}) > 0
</if>
<if test="contactPhone != null and contactPhone != ''">
AND INSTR(W.CONTACT_PHONE, #{contactPhone}) > 0
</if>
<if test="status != null and status != ''">
AND STATUS = #{status}
</if>
</sql>
<select id="searchTotal" parameterType="map" resultType="int">
SELECT COUNT(1) FROM HS_ASSET.WAREHOUSE W
<include refid="searchCondition" />
</select>
<select id="queryByCode" parameterType="string" resultMap="queryAll">
SELECT <include refid="warehouse_field" />, I.ID, I.OTC_CODE,
I.OTC_NAME, I.TOTAL_AMOUNT, I.FROZEN_AMOUNT, I.USEFUL_AMOUNT
FROM HS_ASSET.WAREHOUSE W
LEFT JOIN HS_ASSET.INVENTORY I ON W.CODE = I.WAREHOUSE_CODE
WHERE W.CODE = #{code}
</select>
</mapper>