| | |
| | | |
| | | <resultMap type="com.ruoyi.system.domain.VehicleInfo" id="VehicleInfoResult"> |
| | | <id property="vehicleId" column="vehicle_id" /> |
| | | <result property="carId" column="car_id" /> |
| | | <result property="deviceId" column="device_id" /> |
| | | <result property="vehicleNo" column="vehicle_no" /> |
| | | <result property="vehicleType" column="vehicle_type" /> |
| | |
| | | </resultMap> |
| | | |
| | | <sql id="selectVehicleInfoVo"> |
| | | select v.vehicle_id, v.device_id, v.vehicle_no, v.vehicle_type, v.vehicle_brand, v.vehicle_model, v.status, v.platform_code, v.dept_id, d.dept_name, v.create_by, v.create_time, v.update_by, v.update_time, v.remark |
| | | select v.vehicle_id, v.car_id, v.device_id, v.vehicle_no, v.vehicle_type, v.vehicle_brand, v.vehicle_model, v.status, v.platform_code, v.dept_id, d.dept_name, v.create_by, v.create_time, v.update_by, v.update_time, v.remark |
| | | from tb_vehicle_info v |
| | | left join sys_dept d on v.dept_id = d.dept_id |
| | | </sql> |
| | |
| | | <if test="vehicleModel != null and vehicleModel != ''"> and v.vehicle_model = #{vehicleModel}</if> |
| | | <if test="status != null and status != ''"> and v.status = #{status}</if> |
| | | <if test="platformCode != null and platformCode != ''"> and v.platform_code = #{platformCode}</if> |
| | | <if test="deptId != null"> and v.dept_id = #{deptId}</if> |
| | | <!-- 部门过滤:自动查找传入部门所属的分公司(parent_id=100) --> |
| | | <if test="deptId != null"> |
| | | and v.dept_id = ( |
| | | <!-- 如果传入的就是分公司(parent_id=100),直接返回 --> |
| | | select case |
| | | when exists(select 1 from sys_dept where dept_id = #{deptId} and parent_id = 100) then #{deptId} |
| | | else ( |
| | | <!-- 否则从 ancestors 中查找分公司ID --> |
| | | select d.dept_id |
| | | from sys_dept d |
| | | where d.parent_id = 100 |
| | | and FIND_IN_SET(d.dept_id, ( |
| | | select ancestors from sys_dept where dept_id = #{deptId} |
| | | )) |
| | | limit 1 |
| | | ) |
| | | end |
| | | ) |
| | | </if> |
| | | <!-- 任务车辆选择必须过滤:只显示car_id和dept_id都不为空的车辆 --> |
| | | and v.car_id is not null and v.car_id != '' |
| | | and v.dept_id is not null |
| | | and v.status=0 |
| | | |
| | | </where> |
| | | </select> |
| | | |
| | |
| | | <include refid="selectVehicleInfoVo"/> |
| | | where v.vehicle_no = #{plateNumber} |
| | | </select> |
| | | |
| | | <select id="selectVehicleInfoByVehicleNo" parameterType="String" resultMap="VehicleInfoResult"> |
| | | <include refid="selectVehicleInfoVo"/> |
| | | where v.vehicle_no = #{vehicleNo} |
| | | </select> |
| | | |
| | | <insert id="insertVehicleInfo" parameterType="VehicleInfo" useGeneratedKeys="true" keyProperty="vehicleId"> |
| | | insert into tb_vehicle_info |
| | | <trim prefix="(" suffix=")" suffixOverrides=","> |
| | | <if test="carId != null">car_id,</if> |
| | | <if test="deviceId != null">device_id,</if> |
| | | <if test="vehicleNo != null">vehicle_no,</if> |
| | | <if test="vehicleType != null">vehicle_type,</if> |
| | |
| | | <if test="remark != null">remark,</if> |
| | | </trim> |
| | | <trim prefix="values (" suffix=")" suffixOverrides=","> |
| | | <if test="carId != null">#{carId},</if> |
| | | <if test="deviceId != null">#{deviceId},</if> |
| | | <if test="vehicleNo != null">#{vehicleNo},</if> |
| | | <if test="vehicleType != null">#{vehicleType},</if> |
| | |
| | | <update id="updateVehicleInfo" parameterType="VehicleInfo"> |
| | | update tb_vehicle_info |
| | | <trim prefix="SET" suffixOverrides=","> |
| | | <if test="carId != null">car_id = #{carId},</if> |
| | | <if test="deviceId != null">device_id = #{deviceId},</if> |
| | | <if test="vehicleNo != null">vehicle_no = #{vehicleNo},</if> |
| | | <if test="vehicleType != null">vehicle_type = #{vehicleType},</if> |