刘小明
2024-08-26 591e3b8a10ed15023f3ad9e5a72a887ef89b0bb2
pms-parent/pms-global/src/main/resources/mapper/PltProductMapper.xml
@@ -5,135 +5,144 @@
    <!--@mbg.generated-->
    <!--@Table plt_product-->
    <id column="id" jdbcType="BIGINT" property="id" />
    <result column="code" jdbcType="VARCHAR" property="code" />
    <result column="name" jdbcType="VARCHAR" property="name" />
    <result column="type" jdbcType="VARCHAR" property="type" />
    <result column="image" jdbcType="BIGINT" property="image" />
    <result column="director" jdbcType="BIGINT" property="director" />
    <result column="director" jdbcType="VARCHAR" property="director" />
    <result column="d_mobile" jdbcType="VARCHAR" property="dMobile" />
    <result column="deleted" property="deleted" typeHandler="com.dy.common.mybatis.BooleanTypeHandler" />
    <result property="deleted" column="deleted" typeHandler="com.dy.common.mybatis.BooleanTypeHandler"/>
    <result column="dt" jdbcType="TIMESTAMP" property="dt" />
    <result column="remark" jdbcType="VARCHAR" property="remark" />
    <association property="directorName" column="director" javaType="java.lang.Long"
                 select="selectNameById" />
  </resultMap>
  <resultMap id="BaseResultMap2" type="com.dy.pmsGlobal.pojoPlt.PltProduct" extends="BaseResultMap">
    <collection property="params" ofType="com.dy.pmsGlobal.pojoPlt.PltProductParams" fetchType="eager" select="selectParams" column="id" />
    <collection property="proFiles" ofType="com.dy.pmsGlobal.pojoPlt.PltProductFile" fetchType="eager" select="selectDocuments" column="id"/>
  </resultMap>
  <sql id="Base_Column_List">
    <!--@mbg.generated-->
    id, `name`, `type`, image, director, d_mobile,deleted, dt, remark
    id, code,`name`, `type`, image, director, d_mobile,deleted, dt, remark
  </sql>
  <sql id="Join_Column_List">
    ${alias}.id,${alias}.code, ${alias}.`name`, ${alias}.`type`, ${alias}.image, ${alias}.director, ${alias}.d_mobile,${alias}.deleted, ${alias}.dt, ${alias}.remark
  </sql>
  <select id="selectParams" resultMap="com.dy.pmsGlobal.daoPlt.PltProParamsMapper.BaseResultMap">
    select *
    from plt_product_params
    where pro_id = #{proId,jdbcType=BIGINT} and deleted !=1
  </select>
  <select id="selectDocuments" resultMap="com.dy.pmsGlobal.daoPlt.PltProductFileMapper.BaseResultMap">
    select *
    from plt_product_file
    where pro_id = #{proId,jdbcType=BIGINT}
  </select>
  <select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap">
    <select id="selectProNameById" parameterType="java.lang.Long" resultType="java.lang.String">
        select name proName from plt_product where id=#{proId,jdbcType=BIGINT}
    </select>
  <select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap2">
    <!--@mbg.generated-->
    select
    <include refid="Base_Column_List" />
    from plt_product
    where id = #{id,jdbcType=BIGINT}
  </select>
  <select id="selectNameById" parameterType="java.lang.Long" resultType="java.lang.String">
    select name directorName from ba_user where id=#{id}
  </select>
  <delete id="deleteByPrimaryKey" parameterType="java.lang.Long">
    <!--@mbg.generated-->
    delete from plt_product
    where id = #{id,jdbcType=BIGINT}
  </delete>
  <insert id="insert" keyColumn="id" keyProperty="id" parameterType="com.dy.pmsGlobal.pojoPlt.PltProduct" useGeneratedKeys="true">
    <!--@mbg.generated-->
    insert into plt_product (`name`, `type`, image,
    director, d_mobile,deleted, dt,
    remark)
    values (#{name,jdbcType=VARCHAR}, #{type,jdbcType=VARCHAR}, #{image,jdbcType=BIGINT},
    #{director,jdbcType=BIGINT}, #{dMobile,jdbcType=VARCHAR},#{deleted,jdbcType=TINYINT}, #{dt,jdbcType=TIMESTAMP},
    #{remark,jdbcType=VARCHAR})
  </insert>
  <insert id="insertSelective" keyColumn="id" keyProperty="id" parameterType="com.dy.pmsGlobal.pojoPlt.PltProduct" useGeneratedKeys="true">
    <!--@mbg.generated-->
    insert into plt_product
    <trim prefix="(" suffix=")" suffixOverrides=",">
      <if test="name != null">
        `name`,
      </if>
      <if test="type != null">
        `type`,
      </if>
      <if test="image != null">
        image,
      </if>
      <if test="director != null">
        director,
      </if>
      <if test="dMobile != null">
        d_mobile,
      </if>
      <if test="dt != null">
        dt,
      </if>
      <if test="remark != null">
        remark,
      </if>
        <if test="id != null and id !=''">
          id,
        </if>
        <if test="code != null and code !=''">
          `code`,
        </if>
        <if test="name != null and name !=''">
          `name`,
        </if>
        <if test="type != null and type !=''">
          `type`,
        </if>
        <if test="image!= null and image !=''">
          image,
        </if>
        <if test="director != null and director !=''">
          director,
        </if>
        <if test="dMobile != null and dMobile !=''">
          d_mobile,
        </if>
        <if test="deleted != null and deleted !=''">
          deleted,
        </if>
        <if test="dt != null and dt !=''">
          dt,
        </if>
        <if test="remark != null and remark !=''">
          remark,
        </if>
    </trim>
    <trim prefix="values (" suffix=")" suffixOverrides=",">
      <if test="name != null">
        #{name,jdbcType=VARCHAR},
      </if>
      <if test="type != null">
        #{type,jdbcType=VARCHAR},
      </if>
      <if test="image != null">
        #{image,jdbcType=BIGINT},
      </if>
      <if test="director != null">
        #{director,jdbcType=BIGINT},
      </if>
      <if test="dMobile != null">
        #{dMobile,jdbcType=VARCHAR},
      </if>
      <if test="dt != null">
        #{dt,jdbcType=TIMESTAMP},
      </if>
      <if test="remark != null">
        #{remark,jdbcType=VARCHAR},
      </if>
        <if test="id != null and id !=''">
          #{id,jdbcType=BIGINT},
        </if>
        <if test="code != null and code !=''">
          #{code,jdbcType=VARCHAR},
        </if>
        <if test="name != null and name !=''">
          #{name,jdbcType=VARCHAR},
        </if>
        <if test="type != null and type !=''">
          #{type,jdbcType=VARCHAR},
        </if>
        <if test="image!= null and image !=''">
          #{image,jdbcType=BIGINT},
        </if>
        <if test="director != null and director !=''">
          #{director,jdbcType=BIGINT},
        </if>
        <if test="dMobile != null and dMobile !=''">
          #{dMobile,jdbcType=VARCHAR},
        </if>
        <if test="deleted != null and deleted !=''">
          #{deleted,jdbcType=VARCHAR },
        </if>
        <if test="dt != null and dt !=''">
          #{dt,jdbcType=TIMESTAMP},
        </if>
        <if test="remark != null and remark !=''">
          #{remark,jdbcType=VARCHAR},
        </if>
    </trim>
  </insert>
  <update id="updateByPrimaryKeySelective" parameterType="com.dy.pmsGlobal.pojoPlt.PltProduct">
    <!--@mbg.generated-->
    update plt_product
    <set>
      <if test="name != null">
      <if test="name != null and name !=''">
        `name` = #{name,jdbcType=VARCHAR},
      </if>
      <if test="type != null">
      <if test="type != null and type !=''">
        `type` = #{type,jdbcType=VARCHAR},
      </if>
      <if test="image != null">
      <if test="image!= null and image !=''">
        image = #{image,jdbcType=BIGINT},
      </if>
      <if test="director != null">
      <if test="director != null and director !=''">
        director = #{director,jdbcType=BIGINT},
      </if>
      <if test="dMobile != null">
      <if test="dMobile != null and dMobile !=''">
        d_mobile = #{dMobile,jdbcType=VARCHAR},
      </if>
      <if test="dt != null">
      <if test="dt != null and dt !=''">
        dt = #{dt,jdbcType=TIMESTAMP},
      </if>
      <if test="remark != null">
      <if test="remark != null and remark !=''">
        remark = #{remark,jdbcType=VARCHAR},
      </if>
    </set>
    where id = #{id,jdbcType=BIGINT}
  </update>
  <update id="updateByPrimaryKey" parameterType="com.dy.pmsGlobal.pojoPlt.PltProduct">
    <!--@mbg.generated-->
    update plt_product
    set `name` = #{name,jdbcType=VARCHAR},
    `type` = #{type,jdbcType=VARCHAR},
    image = #{image,jdbcType=BIGINT},
    director = #{director,jdbcType=BIGINT},
    d_mobile = #{dMobile,jdbcType=VARCHAR},
    dt = #{dt,jdbcType=TIMESTAMP},
    remark = #{remark,jdbcType=VARCHAR}
    where id = #{id,jdbcType=BIGINT}
  </update>
@@ -142,32 +151,15 @@
    where id = #{id}
  </update>
  <sql id="Join_Column_List">
    ${alias}.id, ${alias}.`name`, ${alias}.`type`, ${alias}.image, ${alias}.director, ${alias}.d_mobile,${alias}.deleted, ${alias}.dt, ${alias}.remark
  </sql>
  <select id="selectSome" resultMap="BaseResultMap">
  <select id="selectSome" resultMap="BaseResultMap2">
    select
    <include refid="Join_Column_List" >
      <property name="alias" value="p"/>
    </include>
    <include refid="Base_Column_List" />
    from plt_product p
    left join ba_user u on u.id=p.director
    where p.deleted!=1 and u.deleted!=1
    where p.deleted!=1
    <trim prefix="and " suffixOverrides="and">
      <if test="type != null and type != ''">
        p.type = #{type,jdbcType=VARCHAR} and
      </if>
      <if test="name != null and name != ''">
        p.name like concat('%', #{name}, '%') and
      </if>
      <if test="director != null  and director != '' ">
        u.name like concat('%', #{director}, '%') and
      </if>
      <if test="dMobile != null and dMobile != '' ">
        p.d_mobile =#{dMobile,jdbcType=VARCHAR} and
      </if>
      <if test="dt != null and dt != '' ">
        DATE_FORMAT(p.dt, '%Y-%m-%d') = #{dt,jdbcType=TIMESTAMP}
      </if>
    </trim>
    order by id desc
@@ -181,24 +173,54 @@
  <select id="selectSomeCount" resultType="java.lang.Long">
    select count(1)
    from plt_product p
    left join ba_user u on u.id=p.director
    where p.deleted!=1 and u.deleted!=1
    where p.deleted!=1
    <trim prefix="and " suffixOverrides="and">
      <if test="type != null and type != ''">
        p.type = #{type,jdbcType=VARCHAR} and
      </if>
      <if test="name != null and name != ''">
        u.name like concat('%', #{name}, '%') and
      </if>
      <if test="director != null  and director != '' ">
        p.director like concat('%', #{director}, '%') and
      </if>
      <if test="dMobile != null and dMobile != '' ">
        p.d_mobile =#{dMobile,jdbcType=VARCHAR} and
      </if>
      <if test="dt != null and dt != '' ">
        DATE_FORMAT(p.dt, '%Y-%m-%d') = #{dt,jdbcType=TIMESTAMP}
      </if>
    </trim>
  </select>
  <select id="selectAll" resultType="com.dy.pmsGlobal.pojoPlt.PltProduct">
    select
    <include refid="Base_Column_List" />
    from plt_product p
    where p.deleted!=1
    <trim prefix="and " suffixOverrides="and">
      <if test="type != null and type != ''">
        p.type = #{type,jdbcType=VARCHAR} and
      </if>
    </trim>
    order by id desc
  </select>
    <select id="selectByOrderId" resultType="com.dy.pmsGlobal.pojoPlt.PltProduct">
        SELECT
        <include refid="Join_Column_List">
            <property name="alias" value="p"/>
        </include>
        FROM
        <if test="orderId != null and orderId != ''">
            (select * from pr_order_item WHERE deleted!=1 AND order_id = #{orderId,jdbcType=BIGINT}) poi,
        </if>
        (select * from plt_product  where  deleted!=1) p
        <if test="orderId != null and orderId != ''">
            WHERE poi.pro_id = p.id
        </if>
        order by id desc
    </select>
  <select id="selectMaxCode" resultType="java.lang.String">
    select max(code) from plt_product
  </select>
    <select id="exists" resultType="java.lang.Boolean">
        select count(1) from plt_product where name = #{name}
        <if test="id != null and id !=''">
            and id != #{id}
        </if>
    </select>
    <select id="selectByCode" resultType="com.dy.pmsGlobal.pojoPlt.PltProduct">
        select
        <include refid="Base_Column_List" />
        from plt_product p
        where p.deleted!=1 and p.code = #{code}
    </select>
</mapper>