chengf
2026-03-11 b88a288f4f787b509463678e3cd9ccfa3f37014b
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
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
<?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="carInoutDetailV1ServiceDaoImpl">
 
 
    <!-- 保存车辆进出明细信息 add by wuxw 2018-07-03 -->
    <insert id="saveCarInoutDetailInfo" parameterType="Map">
        insert into car_inout_detail(
        inout_id,machine_id,machine_code,car_inout,pa_id,detail_id,car_num,community_id,remark,state,car_type,car_type_name,photo_jpg
        ) values (
        #{inoutId},#{machineId},#{machineCode},#{carInout},#{paId},#{detailId},#{carNum},#{communityId},#{remark},#{state},#{carType},#{carTypeName},#{photoJpg}
        )
    </insert>
 
 
    <!-- 查询车辆进出明细信息 add by wuxw 2018-07-03 -->
    <select id="getCarInoutDetailInfo" parameterType="Map" resultType="Map">
        select t.inout_id,t.inout_id inoutId,t.machine_id,t.machine_id machineId,t.machine_code,t.machine_code
        machineCode,t.car_inout,t.car_inout carInout,t.pa_id,t.pa_id paId,t.detail_id,t.detail_id
        detailId,t.car_num,t.car_num carNum,t.status_cd,t.status_cd statusCd,t.community_id,t.community_id communityId,t.state,
        ci.in_time inTime,ci.out_time outTime,
        (select max(cip.real_charge) from car_inout_payment cip where cip.inout_id = ci.inout_id and cip.community_id = ci.community_id)  realCharge,
        ci.pa_id paId,td.name stateName,t.remark,t.car_type carType
        ,pa.num areaNum,tcfc.fee_name feeName,tcfc.config_id configId,t.car_type_name carTypeName,ci.state inState,t.photo_jpg photoJpg
        from car_inout_detail t
        left join car_inout ci on t.inout_id = ci.inout_id and ci.status_cd = '0' and t.community_id = ci.community_id
        left join car_inout_payment cip on cip.inout_id = ci.inout_id and cip.community_id = ci.community_id
        left join t_dict td on t.state = td.status_cd and td.table_columns='state' and td.table_name = 'car_inout'
        left join parking_area pa on ci.pa_id = pa.pa_id and pa.status_cd = '0'
        left join temp_car_fee_config tcfc on pa.pa_id = tcfc.pa_id and tcfc.status_cd = '0'
        where 1 =1
 
        <if test="inoutId !=null and inoutId != ''">
            and t.inout_id= #{inoutId}
        </if>
        <if test="machineId !=null and machineId != ''">
            and t.machine_id= #{machineId}
        </if>
        <if test="machineCode !=null and machineCode != ''">
            and t.machine_code= #{machineCode}
        </if>
        <if test="carInout !=null and carInout != ''">
            and t.car_inout= #{carInout}
        </if>
        <if test="paId !=null and paId != ''">
            and t.pa_id= #{paId}
        </if>
        <if test="paIds !=null ">
            and t.pa_id in
            <foreach collection="paIds" item="item" index="index" open="(" close=")" separator=",">
                #{item}
            </foreach>
        </if>
        <if test="detailId !=null and detailId != ''">
            and t.detail_id= #{detailId}
        </if>
        <if test="carNum !=null and carNum != ''">
            and t.car_num like concat('%',#{carNum},'%')
        </if>
        <if test="carType !=null and carType != ''">
            and t.car_type= #{carType}
        </if>
        <if test="state !=null and state != ''">
            and t.state= #{state}
        </if>
        <if test="statusCd !=null and statusCd != ''">
            and t.status_cd= #{statusCd}
        </if>
        <if test="communityId !=null and communityId != ''">
            and t.community_id= #{communityId}
        </if>
        <if test="startTime !=null and startTime != ''">
            and t.create_time &gt; #{startTime}
        </if>
        <if test="endTime !=null and endTime != ''">
            and t.create_time &lt; #{endTime}
        </if>
<!--        group by t.inout_id,t.machine_id,t.machine_code,t.car_inout,t.pa_id,t.detail_id,t.car_num,t.status_cd,t.community_id,-->
<!--        ci.in_time ,ci.out_time ,ci.pa_id ,td.name,t.remark,pa.num ,tcfc.fee_name ,tcfc.config_id,t.create_time,t.car_type_name,td.name,t.state,t.car_type-->
        order by t.detail_id desc
        <if test="page != -1 and page != null ">
            limit #{page}, #{row}
        </if>
 
    </select>
 
 
    <!-- 修改车辆进出明细信息 add by wuxw 2018-07-03 -->
    <update id="updateCarInoutDetailInfo" parameterType="Map">
        update car_inout_detail t set t.status_cd = #{statusCd}
        <if test="newBId != null and newBId != ''">
            ,t.b_id = #{newBId}
        </if>
 
        <if test="machineId !=null and machineId != ''">
            , t.machine_id= #{machineId}
        </if>
        <if test="machineCode !=null and machineCode != ''">
            , t.machine_code= #{machineCode}
        </if>
        <if test="carInout !=null and carInout != ''">
            , t.car_inout= #{carInout}
        </if>
        <if test="paId !=null and paId != ''">
            , t.pa_id= #{paId}
        </if>
        <if test="carNum !=null and carNum != ''">
            , t.car_num= #{carNum}
        </if>
        <if test="carType !=null and carType != ''">
            , t.car_type= #{carType}
        </if>
        <if test="carTypeName !=null and carTypeName != ''">
            , t.car_type_name= #{carTypeName}
        </if>
        <if test="communityId !=null and communityId != ''">
            , t.community_id= #{communityId}
        </if>
        <if test="remark !=null and remark != ''">
            , t.remark= #{remark}
        </if>
        <if test="photoJpg !=null and photoJpg != ''">
            , t.photo_jpg= #{photoJpg}
        </if>
        where 1=1
        <if test="detailId !=null and detailId != ''">
            and t.detail_id= #{detailId}
        </if>
        <if test="inoutId !=null and inoutId != ''">
            and t.inout_id= #{inoutId}
        </if>
 
    </update>
 
    <!-- 查询车辆进出明细数量 add by wuxw 2018-07-03 -->
    <select id="queryCarInoutDetailsCount" parameterType="Map" resultType="Map">
        select count(1) count
        from car_inout_detail t
<!--        left join car_inout ci on t.inout_id = ci.inout_id and ci.status_cd = '0' and t.community_id = ci.community_id-->
<!--        left join car_inout_payment cip on cip.inout_id = ci.inout_id and cip.community_id = ci.community_id-->
        where 1 = 1
        <if test="inoutId !=null and inoutId != ''">
            and t.inout_id= #{inoutId}
        </if>
        <if test="machineId !=null and machineId != ''">
            and t.machine_id= #{machineId}
        </if>
        <if test="machineCode !=null and machineCode != ''">
            and t.machine_code= #{machineCode}
        </if>
        <if test="carInout !=null and carInout != ''">
            and t.car_inout= #{carInout}
        </if>
        <if test="paId !=null and paId != ''">
            and t.pa_id= #{paId}
        </if>
        <if test="paIds !=null ">
            and t.pa_id in
            <foreach collection="paIds" item="item" index="index" open="(" close=")" separator=",">
                #{item}
            </foreach>
        </if>
        <if test="detailId !=null and detailId != ''">
            and t.detail_id= #{detailId}
        </if>
        <if test="carNum !=null and carNum != ''">
            and t.car_num like concat('%',#{carNum},'%')
        </if>
        <if test="carType !=null and carType != ''">
            and t.car_type= #{carType}
        </if>
        <if test="state !=null and state != ''">
            and t.state= #{state}
        </if>
        <if test="statusCd !=null and statusCd != ''">
            and t.status_cd= #{statusCd}
        </if>
        <if test="communityId !=null and communityId != ''">
            and t.community_id= #{communityId}
        </if>
        <if test="startTime !=null and startTime != ''">
            and t.create_time &gt; #{startTime}
        </if>
        <if test="endTime !=null and endTime != ''">
            and t.create_time &lt; #{endTime}
        </if>
 
 
    </select>
 
</mapper>