<?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.huaheng.pc.config.vehicle.mapper.VehicleMapper"> <resultMap id="BaseResultMap" type="com.huaheng.pc.config.vehicle.domain.Vehicle"> <!--@mbg.generated--> <id column="id" jdbcType="INTEGER" property="id" /> <result column="name" jdbcType="VARCHAR" property="name" /> <result column="code" jdbcType="VARCHAR" property="code" /> <result column="warehouseCode" jdbcType="VARCHAR" property="warehouseCode" /> <result column="companyCode" jdbcType="VARCHAR" property="companyCode" /> <result column="vehicleType" jdbcType="VARCHAR" property="vehicleType" /> <result column="created" jdbcType="TIMESTAMP" property="created" /> <result column="createdBy" jdbcType="VARCHAR" property="createdBy" /> <result column="lastUpdated" jdbcType="TIMESTAMP" property="lastUpdated" /> <result column="lastUpdatedBy" jdbcType="VARCHAR" property="lastUpdatedBy" /> <result column="status" jdbcType="VARCHAR" property="status" /> <result column="enable" jdbcType="INTEGER" property="enable" /> <result column="printNum" jdbcType="INTEGER" property="printNum" /> <result column="version" jdbcType="INTEGER" property="version" /> <!-- <result column="userDef1" jdbcType="VARCHAR" property="userDef1" /> <result column="userDef2" jdbcType="VARCHAR" property="userDef2" /> <result column="userDef3" jdbcType="VARCHAR" property="userDef3" /> <result column="userDef4" jdbcType="VARCHAR" property="userDef4" /> <result column="userDef5" jdbcType="VARCHAR" property="userDef5" /> <result column="userDef6" jdbcType="VARCHAR" property="userDef6" /> <result column="userDef7" jdbcType="VARCHAR" property="userDef7" /> <result column="userDef8" jdbcType="VARCHAR" property="userDef8" /> <result column="processStamp" jdbcType="VARCHAR" property="processStamp" /> <result column="vehicleCode" jdbcType="VARCHAR" property="vehicleCode" /> <result column="vehicleType" jdbcType="VARCHAR" property="vehicleType" />--> </resultMap> <sql id="Base_Column_List"> <!--@mbg.generated--> id, `name`, code, warehouseCode, companyCode, vehicleType, created, createdBy, lastUpdated, lastUpdatedBy, `status`, `enable`, printNum, version, userDef1, userDef2, userDef3, userDef4, userDef5, userDef6, userDef7, userDef8, processStamp, vehicleCode, vehicleType </sql> <select id="getEmptyVehicleInLocation" resultType="com.huaheng.pc.config.location.domain.Location"> SELECT * FROM location t <where> AND t.warehouseCode = #{warehouseCode} AND t.status='empty' AND t.vehicleCode !='' AND t.vehicleCode is not NULL AND t.vehicleCode NOT in (SELECT h.vehicleCode from task_header h WHERE status < 100 AND warehouseCode=#{warehouseCode}) AND t.`code` NOT in (SELECT b.locationCode FROM inventory_detail b WHERE b.warehouseCode = #{warehouseCode} ) <if test="zoneCode != null and zoneCode !=''"> and t.zoneCode = #{zoneCode} </if> <if test="vehicleCode != null and vehicleCode !=''"> and t.vehicleCode = #{vehicleCode} </if> <if test="locationCode != null and locationCode !=''"> and t.`code` = #{locationCode} </if> </where> </select> <update id="updateLocationCodeAndStatus"> UPDATE vehicle set `status`=#{status}, locationCode=#{locationCode} WHERE warehouseCode=#{warehouseCode} AND `code`=#{vehicleCode} </update> <update id="updateLocationCodeAndStatus1"> UPDATE vehicle set `status`=#{status}, locationCode=#{locationCode}, vehicleCode=#{vehicleCode}, vehicleType=#{vehicleType} WHERE warehouseCode=#{warehouseCode} AND `code`=#{vehicleCode} </update> <update id="updateLocationCodeAndStatus2"> UPDATE vehicle set `status`=#{status}, locationCode=#{locationCode}, vehicleCode=#{vehicleCode}, vehicleType=#{vehicleType} WHERE warehouseCode=#{warehouseCode} AND `code`=#{vehicleCode} </update> <select id="findAllByCode" resultMap="BaseResultMap" parameterType="java.lang.String"> SELECT * FROM vehicle WHERE code = #{code,jdbcType=VARCHAR} AND warehouseCode=#{warehouseCode} </select> <insert id="addList" parameterType="com.huaheng.pc.config.vehicle.domain.Vehicle" keyProperty="id" useGeneratedKeys="true" > INSERT INTO vehicle( code, warehouseCode, companyCode, vehicleType, createdBy, status, enable )values <foreach collection="vehicles" item="item" index="index" separator=","> ( #{item.code}, #{item.warehouseCode}, #{item.companyCode}, #{item.vehicleType}, #{item.createdBy}, #{item.status}, #{item.enable} ) </foreach> </insert> <select id="selectListShelf" resultType="com.huaheng.pc.config.vehicle.domain.Vehicle"> SELECT g.goodsShelfNo FROM ( SELECT DISTINCT ( goodsShelfNo ) goodsShelfNo, COUNT( * ) cunt FROM vehicle WHERE `status` = 'empty' AND type = 'A' GROUP BY goodsShelfNo ) g INNER JOIN ( SELECT DISTINCT ( goodsShelfNo ) goodsShelfNo, COUNT( * ) cunt FROM vehicle WHERE type = 'A' GROUP BY goodsShelfNo ) s ON g.goodsShelfNo = s.goodsShelfNo AND g.cunt = s.cunt </select> <select id="emptyVehicle" resultMap="BaseResultMap"> select * from vehicle where `status` = "empty" and (locationCode IS NOT NULL OR locationCode = "") ORDER BY id DESC limit 1 </select> </mapper>