|
@@ -2,13 +2,13 @@
|
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
|
<mapper namespace="com.caimei.modules.product.dao.ProductDao">
|
|
<mapper namespace="com.caimei.modules.product.dao.ProductDao">
|
|
|
|
|
|
- <resultMap id="productModelResultMap" type="com.caimei.modules.product.entity.Product">
|
|
|
|
- <id property="id" column="id"/>
|
|
|
|
- <result property="name" column="name"/>
|
|
|
|
- </resultMap>
|
|
|
|
|
|
+ <resultMap id="productModelResultMap" type="com.caimei.modules.product.entity.Product">
|
|
|
|
+ <id property="id" column="id"/>
|
|
|
|
+ <result property="name" column="name"/>
|
|
|
|
+ </resultMap>
|
|
|
|
|
|
- <sql id="productColumns">
|
|
|
|
- a.productID AS "id",
|
|
|
|
|
|
+ <sql id="productColumns">
|
|
|
|
+ a.productID AS "id",
|
|
a.productID AS "productID",
|
|
a.productID AS "productID",
|
|
a.brandID AS "brandID",
|
|
a.brandID AS "brandID",
|
|
a.bigTypeID AS "bigTypeID",
|
|
a.bigTypeID AS "bigTypeID",
|
|
@@ -101,333 +101,325 @@
|
|
|
|
|
|
</sql>
|
|
</sql>
|
|
|
|
|
|
- <sql id="productJoins">
|
|
|
|
- LEFT JOIN shop s on s.shopID = a.shopID
|
|
|
|
|
|
+ <sql id="productJoins">
|
|
|
|
+ LEFT JOIN shop s on s.shopID = a.shopID
|
|
left join product p on a.productID = p.productId
|
|
left join product p on a.productID = p.productId
|
|
- </sql>
|
|
|
|
- <sql id="ActivityJoins">
|
|
|
|
- LEFT JOIN shop s on s.shopID = a.shopID
|
|
|
|
- </sql>
|
|
|
|
-
|
|
|
|
- <update id="saveSort">
|
|
|
|
- UPDATE cm_search_recommend_product SET
|
|
|
|
- sort = #{sort}
|
|
|
|
- WHERE id = #{id}
|
|
|
|
- </update>
|
|
|
|
-
|
|
|
|
- <select id="findLadderPriceByNum" resultType="Integer">
|
|
|
|
- select IFNULL(buyNum,1)
|
|
|
|
- FROM product_ladder_price
|
|
|
|
- WHERE userType = 3 and ladderNum = 1 and delFlag = 0 and productID = #{productID}
|
|
|
|
- </select>
|
|
|
|
-
|
|
|
|
- <select id="get" resultType="Product">
|
|
|
|
- SELECT
|
|
|
|
- <include refid="productColumns"/>
|
|
|
|
- FROM product a
|
|
|
|
- <include refid="productJoins"/>
|
|
|
|
- WHERE a.productID = #{id}
|
|
|
|
- </select>
|
|
|
|
-
|
|
|
|
-
|
|
|
|
- <select id="getAllExistsProductList" resultType="Integer">
|
|
|
|
- SELECT
|
|
|
|
- a.productID
|
|
|
|
- FROM cm_mall_organize_products a
|
|
|
|
- WHERE a.delFlag = 0 and a.organizeID = #{organizeID}
|
|
|
|
- </select>
|
|
|
|
-
|
|
|
|
- <select id="findRecommendPage" resultType="Product">
|
|
|
|
- SELECT
|
|
|
|
- <include refid="productColumns"/>
|
|
|
|
- FROM product a
|
|
|
|
- <include refid="productJoins"/>
|
|
|
|
- <where>
|
|
|
|
- <if test="productID !=null and productID !=''">
|
|
|
|
- AND a.productID=#{productID}
|
|
|
|
- </if>
|
|
|
|
- <if test="tinyTypeID != null and tinyTypeID != ''">
|
|
|
|
- AND a.tinyTypeID = #{tinyTypeID}
|
|
|
|
- </if>
|
|
|
|
- <if test="shopID != null and shopID != ''">
|
|
|
|
- AND a.shopID = #{shopID}
|
|
|
|
- </if>
|
|
|
|
- <if test="name != null and name != ''">
|
|
|
|
- AND a.name LIKE
|
|
|
|
- <if test="dbName == 'oracle'">'%'||#{name}||'%'</if>
|
|
|
|
- <if test="dbName == 'mssql'">'%'+#{name}+'%'</if>
|
|
|
|
- <if test="dbName == 'mysql'">concat('%',#{name},'%')</if>
|
|
|
|
- </if>
|
|
|
|
- <if test="shopName != null and shopName != ''">
|
|
|
|
- AND s.name LIKE
|
|
|
|
- <if test="dbName == 'oracle'">'%'||#{shopName}||'%'</if>
|
|
|
|
- <if test="dbName == 'mssql'">'%'+#{shopName}+'%'</if>
|
|
|
|
- <if test="dbName == 'mysql'">concat('%',#{shopName},'%')</if>
|
|
|
|
- </if>
|
|
|
|
- <if test="validFlag !=null and validFlag !=''">
|
|
|
|
- AND a.validFlag=#{validFlag}
|
|
|
|
- </if>
|
|
|
|
- <if test="actFlag !=null and actFlag !=''">
|
|
|
|
- AND a.actFlag=#{actFlag}
|
|
|
|
- </if>
|
|
|
|
- <if test="speCommisionFlag !=null and speCommisionFlag !=''">
|
|
|
|
- AND a.speCommisionFlag=#{speCommisionFlag}
|
|
|
|
- </if>
|
|
|
|
- <if test="displayOnCRMFlag !=null and displayOnCRMFlag !=''">
|
|
|
|
- AND a.displayOnCRMFlag=#{displayOnCRMFlag}
|
|
|
|
- </if>
|
|
|
|
- <if test="crmBigTypeId !=null and crmBigTypeId !=''">
|
|
|
|
- AND a.crmBigTypeId=#{crmBigTypeId}
|
|
|
|
- </if>
|
|
|
|
- <if test="crmSmallTypeId !=null and crmSmallTypeId !=''">
|
|
|
|
- AND a.crmSmallTypeId=#{crmSmallTypeId}
|
|
|
|
- </if>
|
|
|
|
- <if test="sqlMap !=null and sqlMap !=''">
|
|
|
|
- ${sqlMap.dsf}
|
|
|
|
- </if>
|
|
|
|
- <choose>
|
|
|
|
- <when test="actType != null and actType != ''">
|
|
|
|
- AND a.actType = #{actType}
|
|
|
|
- </when>
|
|
|
|
- <otherwise>
|
|
|
|
- AND a.actType != 3
|
|
|
|
- </otherwise>
|
|
|
|
- </choose>
|
|
|
|
- AND a.validFlag != 0
|
|
|
|
- AND a.shopID not in (SELECT s.`value` FROM `sys_dict` s WHERE s.type='heheShopID')
|
|
|
|
- and a.productCategory = 1
|
|
|
|
- </where>
|
|
|
|
- <choose>
|
|
|
|
- <when test="page !=null and page.orderBy != null and page.orderBy != ''">
|
|
|
|
- ORDER BY ${page.orderBy}
|
|
|
|
- </when>
|
|
|
|
- <otherwise>
|
|
|
|
- order by case WHEN a.validFlag = 1 then 0 else 1 END asc,a.productID desc
|
|
|
|
- </otherwise>
|
|
|
|
- </choose>
|
|
|
|
- </select>
|
|
|
|
-
|
|
|
|
- <!--小程序商品获取采美2已上架 3已下架 9已冻结的商品-->
|
|
|
|
- <select id="findListBuyMall" resultType="Product">
|
|
|
|
- SELECT
|
|
|
|
- <include refid="productColumns"/>
|
|
|
|
- FROM product a
|
|
|
|
- <include refid="productJoins"/>
|
|
|
|
- <where>
|
|
|
|
- <if test="productID !=null and productID !=''">
|
|
|
|
- AND a.productID=#{productID}
|
|
|
|
- </if>
|
|
|
|
- <if test="name != null and name != ''">
|
|
|
|
- AND a.name LIKE
|
|
|
|
- <if test="dbName == 'oracle'">'%'||#{name}||'%'</if>
|
|
|
|
- <if test="dbName == 'mssql'">'%'+#{name}+'%'</if>
|
|
|
|
- <if test="dbName == 'mysql'">concat('%',#{name},'%')</if>
|
|
|
|
- </if>
|
|
|
|
- <if test="shopName != null and shopName != ''">
|
|
|
|
- AND s.name LIKE
|
|
|
|
- <if test="dbName == 'oracle'">'%'||#{shopName}||'%'</if>
|
|
|
|
- <if test="dbName == 'mssql'">'%'+#{shopName}+'%'</if>
|
|
|
|
- <if test="dbName == 'mysql'">concat('%',#{shopName},'%')</if>
|
|
|
|
- </if>
|
|
|
|
- AND a.validFlag in (2,3,9)
|
|
|
|
- and a.productCategory = 1
|
|
|
|
- </where>
|
|
|
|
- <choose>
|
|
|
|
- <when test="page !=null and page.orderBy != null and page.orderBy != ''">
|
|
|
|
- ORDER BY ${page.orderBy}
|
|
|
|
- </when>
|
|
|
|
- <otherwise>
|
|
|
|
- order by a.productID desc
|
|
|
|
- </otherwise>
|
|
|
|
- </choose>
|
|
|
|
- </select>
|
|
|
|
-
|
|
|
|
- <select id="findList" resultType="Product">
|
|
|
|
- SELECT
|
|
|
|
- <include refid="productColumns"/>
|
|
|
|
- FROM product a
|
|
|
|
- <include refid="productJoins"/>
|
|
|
|
- <where>
|
|
|
|
- <if test="id !=null and id !=''">
|
|
|
|
- AND a.productID=#{id}
|
|
|
|
- </if>
|
|
|
|
- <if test="tinyTypeID != null and tinyTypeID != ''">
|
|
|
|
- AND a.tinyTypeID = #{tinyTypeID}
|
|
|
|
- </if>
|
|
|
|
- <if test="shopID != null and shopID != ''">
|
|
|
|
- AND a.shopID = #{shopID}
|
|
|
|
- </if>
|
|
|
|
- <if test="preferredFlag != null and preferredFlag != ''and preferredFlag != 0">
|
|
|
|
- <if test="preferredFlag/100>=1">
|
|
|
|
- AND a.preferredFlag in (100,101,110,111)
|
|
|
|
- </if>
|
|
|
|
- <if test="(preferredFlag%100)/10>=1">
|
|
|
|
- AND a.preferredFlag in (10,11,110,111)
|
|
|
|
- </if>
|
|
|
|
- <if test="preferredFlag%10>=1">
|
|
|
|
- AND a.preferredFlag in (1,11,101,111)
|
|
|
|
- </if>
|
|
|
|
- </if>
|
|
|
|
- <if test="name != null and name != ''">
|
|
|
|
- AND a.name LIKE
|
|
|
|
- <if test="dbName == 'oracle'">'%'||#{name}||'%'</if>
|
|
|
|
- <if test="dbName == 'mssql'">'%'+#{name}+'%'</if>
|
|
|
|
- <if test="dbName == 'mysql'">concat('%',#{name},'%')</if>
|
|
|
|
- </if>
|
|
|
|
- <if test="shopName != null and shopName != ''">
|
|
|
|
- AND s.name LIKE
|
|
|
|
- <if test="dbName == 'oracle'">'%'||#{shopName}||'%'</if>
|
|
|
|
- <if test="dbName == 'mssql'">'%'+#{shopName}+'%'</if>
|
|
|
|
- <if test="dbName == 'mysql'">concat('%',#{shopName},'%')</if>
|
|
|
|
- </if>
|
|
|
|
- <if test="validFlag !=null and validFlag !=''">
|
|
|
|
- AND a.validFlag=#{validFlag}
|
|
|
|
- </if>
|
|
|
|
- <if test="actFlag !=null and actFlag !=''">
|
|
|
|
- AND a.actFlag=#{actFlag}
|
|
|
|
- </if>
|
|
|
|
- <if test="actType !=null and actType !=''">
|
|
|
|
- AND a.actType=#{actType}
|
|
|
|
- </if>
|
|
|
|
- <if test="speCommisionFlag !=null and speCommisionFlag !=''">
|
|
|
|
- AND a.speCommisionFlag=#{speCommisionFlag}
|
|
|
|
- </if>
|
|
|
|
- <if test="displayOnCRMFlag !=null and displayOnCRMFlag !=''">
|
|
|
|
- AND a.displayOnCRMFlag=#{displayOnCRMFlag}
|
|
|
|
- </if>
|
|
|
|
- <if test="crmBigTypeId !=null and crmBigTypeId !=''">
|
|
|
|
- AND a.crmBigTypeId=#{crmBigTypeId}
|
|
|
|
- </if>
|
|
|
|
- <if test="crmSmallTypeId !=null and crmSmallTypeId !=''">
|
|
|
|
- AND a.crmSmallTypeId=#{crmSmallTypeId}
|
|
|
|
- </if>
|
|
|
|
- <if test="sqlMap !=null and sqlMap !=''">
|
|
|
|
- ${sqlMap.dsf}
|
|
|
|
- </if>
|
|
|
|
- AND a.validFlag != 0
|
|
|
|
- AND a.shopID not in (SELECT s.`value` FROM `sys_dict` s WHERE s.type='heheShopID')
|
|
|
|
- and a.productCategory = 1
|
|
|
|
- </where>
|
|
|
|
- <choose>
|
|
|
|
- <when test="page !=null and page.orderBy != null and page.orderBy != ''">
|
|
|
|
- ORDER BY ${page.orderBy}
|
|
|
|
- </when>
|
|
|
|
- <otherwise>
|
|
|
|
- order by case WHEN a.validFlag = 1 then 0 else 1 END asc,a.productID desc
|
|
|
|
- </otherwise>
|
|
|
|
- </choose>
|
|
|
|
- </select>
|
|
|
|
-
|
|
|
|
- <select id="findAllList" resultType="Product">
|
|
|
|
- SELECT
|
|
|
|
- <include refid="productColumns"/>
|
|
|
|
- FROM product a
|
|
|
|
- <include refid="productJoins"/>
|
|
|
|
- <where>
|
|
|
|
- a.productCategory = 1
|
|
|
|
- </where>
|
|
|
|
- <choose>
|
|
|
|
- <when test="page !=null and page.orderBy != null and page.orderBy != ''">
|
|
|
|
- ORDER BY ${page.orderBy}
|
|
|
|
- </when>
|
|
|
|
- <otherwise>
|
|
|
|
- </otherwise>
|
|
|
|
-
|
|
|
|
- </choose>
|
|
|
|
- </select>
|
|
|
|
|
|
+ </sql>
|
|
|
|
+ <sql id="ActivityJoins">
|
|
|
|
+ LEFT JOIN shop s on s.shopID = a.shopID
|
|
|
|
+ </sql>
|
|
|
|
+
|
|
|
|
+ <update id="saveSort">
|
|
|
|
+ UPDATE cm_search_recommend_product
|
|
|
|
+ SET sort = #{sort}
|
|
|
|
+ WHERE id = #{id}
|
|
|
|
+ </update>
|
|
|
|
+
|
|
|
|
+ <select id="findLadderPriceByNum" resultType="Integer">
|
|
|
|
+ select IFNULL(buyNum, 1)
|
|
|
|
+ FROM product_ladder_price
|
|
|
|
+ WHERE userType = 3
|
|
|
|
+ and ladderNum = 1
|
|
|
|
+ and delFlag = 0
|
|
|
|
+ and productID = #{productID}
|
|
|
|
+ </select>
|
|
|
|
+
|
|
|
|
+ <select id="get" resultType="Product">
|
|
|
|
+ SELECT
|
|
|
|
+ <include refid="productColumns"/>
|
|
|
|
+ FROM product a
|
|
|
|
+ <include refid="productJoins"/>
|
|
|
|
+ WHERE a.productID = #{id}
|
|
|
|
+ </select>
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ <select id="getAllExistsProductList" resultType="Integer">
|
|
|
|
+ SELECT a.productID
|
|
|
|
+ FROM cm_mall_organize_products a
|
|
|
|
+ WHERE a.delFlag = 0
|
|
|
|
+ and a.organizeID = #{organizeID}
|
|
|
|
+ </select>
|
|
|
|
+
|
|
|
|
+ <select id="findRecommendPage" resultType="Product">
|
|
|
|
+ SELECT
|
|
|
|
+ <include refid="productColumns"/>
|
|
|
|
+ FROM product a
|
|
|
|
+ <include refid="productJoins"/>
|
|
|
|
+ <where>
|
|
|
|
+ <if test="productID !=null and productID !=''">
|
|
|
|
+ AND a.productID=#{productID}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="tinyTypeID != null and tinyTypeID != ''">
|
|
|
|
+ AND a.tinyTypeID = #{tinyTypeID}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="shopID != null and shopID != ''">
|
|
|
|
+ AND a.shopID = #{shopID}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="name != null and name != ''">
|
|
|
|
+ AND a.name LIKE
|
|
|
|
+ <if test="dbName == 'oracle'">'%'||#{name}||'%'</if>
|
|
|
|
+ <if test="dbName == 'mssql'">'%'+#{name}+'%'</if>
|
|
|
|
+ <if test="dbName == 'mysql'">concat('%',#{name},'%')</if>
|
|
|
|
+ </if>
|
|
|
|
+ <if test="shopName != null and shopName != ''">
|
|
|
|
+ AND s.name LIKE
|
|
|
|
+ <if test="dbName == 'oracle'">'%'||#{shopName}||'%'</if>
|
|
|
|
+ <if test="dbName == 'mssql'">'%'+#{shopName}+'%'</if>
|
|
|
|
+ <if test="dbName == 'mysql'">concat('%',#{shopName},'%')</if>
|
|
|
|
+ </if>
|
|
|
|
+ <if test="validFlag !=null and validFlag !=''">
|
|
|
|
+ AND a.validFlag=#{validFlag}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="actFlag !=null and actFlag !=''">
|
|
|
|
+ AND a.actFlag=#{actFlag}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="speCommisionFlag !=null and speCommisionFlag !=''">
|
|
|
|
+ AND a.speCommisionFlag=#{speCommisionFlag}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="displayOnCRMFlag !=null and displayOnCRMFlag !=''">
|
|
|
|
+ AND a.displayOnCRMFlag=#{displayOnCRMFlag}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="crmBigTypeId !=null and crmBigTypeId !=''">
|
|
|
|
+ AND a.crmBigTypeId=#{crmBigTypeId}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="crmSmallTypeId !=null and crmSmallTypeId !=''">
|
|
|
|
+ AND a.crmSmallTypeId=#{crmSmallTypeId}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="sqlMap !=null and sqlMap !=''">
|
|
|
|
+ ${sqlMap.dsf}
|
|
|
|
+ </if>
|
|
|
|
+ <choose>
|
|
|
|
+ <when test="actType != null and actType != ''">
|
|
|
|
+ AND a.actType = #{actType}
|
|
|
|
+ </when>
|
|
|
|
+ <otherwise>
|
|
|
|
+ AND a.actType != 3
|
|
|
|
+ </otherwise>
|
|
|
|
+ </choose>
|
|
|
|
+ AND a.validFlag != 0
|
|
|
|
+ AND a.shopID not in (SELECT s.`value` FROM `sys_dict` s WHERE s.type='heheShopID')
|
|
|
|
+ and a.productCategory = 1
|
|
|
|
+ </where>
|
|
|
|
+ <choose>
|
|
|
|
+ <when test="page !=null and page.orderBy != null and page.orderBy != ''">
|
|
|
|
+ ORDER BY ${page.orderBy}
|
|
|
|
+ </when>
|
|
|
|
+ <otherwise>
|
|
|
|
+ order by case WHEN a.validFlag = 1 then 0 else 1 END asc,a.productID desc
|
|
|
|
+ </otherwise>
|
|
|
|
+ </choose>
|
|
|
|
+ </select>
|
|
|
|
+
|
|
|
|
+ <!--小程序商品获取采美2已上架 3已下架 9已冻结的商品-->
|
|
|
|
+ <select id="findListBuyMall" resultType="Product">
|
|
|
|
+ SELECT
|
|
|
|
+ <include refid="productColumns"/>
|
|
|
|
+ FROM product a
|
|
|
|
+ <include refid="productJoins"/>
|
|
|
|
+ <where>
|
|
|
|
+ <if test="productID !=null and productID !=''">
|
|
|
|
+ AND a.productID=#{productID}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="name != null and name != ''">
|
|
|
|
+ AND a.name LIKE
|
|
|
|
+ <if test="dbName == 'oracle'">'%'||#{name}||'%'</if>
|
|
|
|
+ <if test="dbName == 'mssql'">'%'+#{name}+'%'</if>
|
|
|
|
+ <if test="dbName == 'mysql'">concat('%',#{name},'%')</if>
|
|
|
|
+ </if>
|
|
|
|
+ <if test="shopName != null and shopName != ''">
|
|
|
|
+ AND s.name LIKE
|
|
|
|
+ <if test="dbName == 'oracle'">'%'||#{shopName}||'%'</if>
|
|
|
|
+ <if test="dbName == 'mssql'">'%'+#{shopName}+'%'</if>
|
|
|
|
+ <if test="dbName == 'mysql'">concat('%',#{shopName},'%')</if>
|
|
|
|
+ </if>
|
|
|
|
+ AND a.validFlag in (2,3,9)
|
|
|
|
+ and a.productCategory = 1
|
|
|
|
+ </where>
|
|
|
|
+ <choose>
|
|
|
|
+ <when test="page !=null and page.orderBy != null and page.orderBy != ''">
|
|
|
|
+ ORDER BY ${page.orderBy}
|
|
|
|
+ </when>
|
|
|
|
+ <otherwise>
|
|
|
|
+ order by a.productID desc
|
|
|
|
+ </otherwise>
|
|
|
|
+ </choose>
|
|
|
|
+ </select>
|
|
|
|
+
|
|
|
|
+ <select id="findList" resultType="Product">
|
|
|
|
+ SELECT
|
|
|
|
+ <include refid="productColumns"/>
|
|
|
|
+ FROM product a
|
|
|
|
+ <include refid="productJoins"/>
|
|
|
|
+ <where>
|
|
|
|
+ <if test="id !=null and id !=''">
|
|
|
|
+ AND a.productID=#{id}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="tinyTypeID != null and tinyTypeID != ''">
|
|
|
|
+ AND a.tinyTypeID = #{tinyTypeID}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="shopID != null and shopID != ''">
|
|
|
|
+ AND a.shopID = #{shopID}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="preferredFlag != null and preferredFlag != ''and preferredFlag != 0">
|
|
|
|
+ <if test="preferredFlag/100>=1">
|
|
|
|
+ AND a.preferredFlag in (100,101,110,111)
|
|
|
|
+ </if>
|
|
|
|
+ <if test="(preferredFlag%100)/10>=1">
|
|
|
|
+ AND a.preferredFlag in (10,11,110,111)
|
|
|
|
+ </if>
|
|
|
|
+ <if test="preferredFlag%10>=1">
|
|
|
|
+ AND a.preferredFlag in (1,11,101,111)
|
|
|
|
+ </if>
|
|
|
|
+ </if>
|
|
|
|
+ <if test="name != null and name != ''">
|
|
|
|
+ AND a.name LIKE
|
|
|
|
+ <if test="dbName == 'oracle'">'%'||#{name}||'%'</if>
|
|
|
|
+ <if test="dbName == 'mssql'">'%'+#{name}+'%'</if>
|
|
|
|
+ <if test="dbName == 'mysql'">concat('%',#{name},'%')</if>
|
|
|
|
+ </if>
|
|
|
|
+ <if test="shopName != null and shopName != ''">
|
|
|
|
+ AND s.name LIKE
|
|
|
|
+ <if test="dbName == 'oracle'">'%'||#{shopName}||'%'</if>
|
|
|
|
+ <if test="dbName == 'mssql'">'%'+#{shopName}+'%'</if>
|
|
|
|
+ <if test="dbName == 'mysql'">concat('%',#{shopName},'%')</if>
|
|
|
|
+ </if>
|
|
|
|
+ <if test="validFlag !=null and validFlag !=''">
|
|
|
|
+ AND a.validFlag=#{validFlag}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="actFlag !=null and actFlag !=''">
|
|
|
|
+ AND a.actFlag=#{actFlag}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="actType !=null and actType !=''">
|
|
|
|
+ AND a.actType=#{actType}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="speCommisionFlag !=null and speCommisionFlag !=''">
|
|
|
|
+ AND a.speCommisionFlag=#{speCommisionFlag}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="displayOnCRMFlag !=null and displayOnCRMFlag !=''">
|
|
|
|
+ AND a.displayOnCRMFlag=#{displayOnCRMFlag}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="crmBigTypeId !=null and crmBigTypeId !=''">
|
|
|
|
+ AND a.crmBigTypeId=#{crmBigTypeId}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="crmSmallTypeId !=null and crmSmallTypeId !=''">
|
|
|
|
+ AND a.crmSmallTypeId=#{crmSmallTypeId}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="sqlMap !=null and sqlMap !=''">
|
|
|
|
+ ${sqlMap.dsf}
|
|
|
|
+ </if>
|
|
|
|
+ AND a.validFlag != 0
|
|
|
|
+ AND a.shopID not in (SELECT s.`value` FROM `sys_dict` s WHERE s.type='heheShopID')
|
|
|
|
+ and a.productCategory = 1
|
|
|
|
+ </where>
|
|
|
|
+ <choose>
|
|
|
|
+ <when test="page !=null and page.orderBy != null and page.orderBy != ''">
|
|
|
|
+ ORDER BY ${page.orderBy}
|
|
|
|
+ </when>
|
|
|
|
+ <otherwise>
|
|
|
|
+ order by case WHEN a.validFlag = 1 then 0 else 1 END asc,a.productID desc
|
|
|
|
+ </otherwise>
|
|
|
|
+ </choose>
|
|
|
|
+ </select>
|
|
|
|
+
|
|
|
|
+ <select id="findAllList" resultType="Product">
|
|
|
|
+ SELECT
|
|
|
|
+ <include refid="productColumns"/>
|
|
|
|
+ FROM product a
|
|
|
|
+ <include refid="productJoins"/>
|
|
|
|
+ <where>
|
|
|
|
+ a.productCategory = 1
|
|
|
|
+ </where>
|
|
|
|
+ <choose>
|
|
|
|
+ <when test="page !=null and page.orderBy != null and page.orderBy != ''">
|
|
|
|
+ ORDER BY ${page.orderBy}
|
|
|
|
+ </when>
|
|
|
|
+ <otherwise>
|
|
|
|
+ </otherwise>
|
|
|
|
+
|
|
|
|
+ </choose>
|
|
|
|
+ </select>
|
|
|
|
|
|
<insert id="insert" parameterType="Product" keyProperty="productID" keyColumn="productID" useGeneratedKeys="true">
|
|
<insert id="insert" parameterType="Product" keyProperty="productID" keyColumn="productID" useGeneratedKeys="true">
|
|
INSERT INTO product(brandID,
|
|
INSERT INTO product(brandID,
|
|
- bigTypeID,
|
|
|
|
- smallTypeID,
|
|
|
|
- tinyTypeID,
|
|
|
|
- selfTypeID,
|
|
|
|
- shopID,
|
|
|
|
- aliasName,
|
|
|
|
- name,
|
|
|
|
- searchKey,
|
|
|
|
- normalPrice,
|
|
|
|
- price,
|
|
|
|
- priceFlag,
|
|
|
|
- beautyActFlag,
|
|
|
|
- ladderPriceFlag,
|
|
|
|
- <if test="stock !=''">
|
|
|
|
- stock,
|
|
|
|
- </if>
|
|
|
|
- hasSkuFlag,
|
|
|
|
- mainImage,
|
|
|
|
- propertiesInfo,
|
|
|
|
- addTime,
|
|
|
|
- updateTime,
|
|
|
|
- weekSellNumber,
|
|
|
|
- beforeValidFlag,
|
|
|
|
- validFlag,
|
|
|
|
- favoriteTimes,
|
|
|
|
- commentScore,
|
|
|
|
- commentTimes,
|
|
|
|
- selfRecommendFlag,
|
|
|
|
- sysRecommendFlag,
|
|
|
|
- sortIndex,
|
|
|
|
- featuredFlag,
|
|
|
|
- featuredSortIndex,
|
|
|
|
- productCode,
|
|
|
|
- unit,
|
|
|
|
- synToERPFlag,
|
|
|
|
- allAreaFlag,
|
|
|
|
- provinceIDs,
|
|
|
|
- serviceNumber,
|
|
|
|
- maxBuyNumber,
|
|
|
|
- minBuyNumber,
|
|
|
|
- packageCount,
|
|
|
|
- byFlag,
|
|
|
|
- normalProductFlag,
|
|
|
|
- wholeSaleProductFlag,
|
|
|
|
- promotionProductFlag,
|
|
|
|
- groupBuyProductFlag,
|
|
|
|
- step,
|
|
|
|
- actFlag,
|
|
|
|
- actType,
|
|
|
|
- actSort,
|
|
|
|
- onlineTime,
|
|
|
|
- downlineTime,
|
|
|
|
- freePostFlag,
|
|
|
|
- costPrice,
|
|
|
|
- costProportional,
|
|
|
|
- costCheckFlag,
|
|
|
|
- precisehKey,
|
|
|
|
- visibility,
|
|
|
|
- commodityDetailsFlag,
|
|
|
|
- productType,
|
|
|
|
- qualificationImg,
|
|
|
|
- invoiceType,
|
|
|
|
- taxPoint,
|
|
|
|
- supplierTaxPoint,
|
|
|
|
- tags,
|
|
|
|
- recommendType,
|
|
|
|
- machineType,
|
|
|
|
- includedTax,
|
|
|
|
- commodityType,
|
|
|
|
- trainingMethod,
|
|
|
|
- trainingType,
|
|
|
|
- trainingFee,
|
|
|
|
- productDescribe,
|
|
|
|
- splitCode,
|
|
|
|
- productDetail,
|
|
|
|
- announType,
|
|
|
|
- newProductType,
|
|
|
|
- <if test="qualificationNo != null and qualificationNo != ''">
|
|
|
|
- qualificationNo,
|
|
|
|
- </if>
|
|
|
|
- <if test="productName != null and productName != ''">
|
|
|
|
- productName,
|
|
|
|
- </if>
|
|
|
|
- <if test="qualificationTime != null and qualificationTime != ''">
|
|
|
|
- qualificationTime,
|
|
|
|
- </if>
|
|
|
|
- <if test="qualificationLink != null and qualificationLink != ''">
|
|
|
|
- qualificationLink,
|
|
|
|
- </if>
|
|
|
|
- showFlag)
|
|
|
|
|
|
+ bigTypeID,
|
|
|
|
+ smallTypeID,
|
|
|
|
+ tinyTypeID,
|
|
|
|
+ selfTypeID,
|
|
|
|
+ shopID,
|
|
|
|
+ aliasName,
|
|
|
|
+ name,
|
|
|
|
+ searchKey,
|
|
|
|
+ priceFlag,
|
|
|
|
+ beautyActFlag,
|
|
|
|
+ hasSkuFlag,
|
|
|
|
+ mainImage,
|
|
|
|
+ propertiesInfo,
|
|
|
|
+ addTime,
|
|
|
|
+ updateTime,
|
|
|
|
+ weekSellNumber,
|
|
|
|
+ beforeValidFlag,
|
|
|
|
+ validFlag,
|
|
|
|
+ favoriteTimes,
|
|
|
|
+ commentScore,
|
|
|
|
+ commentTimes,
|
|
|
|
+ selfRecommendFlag,
|
|
|
|
+ sysRecommendFlag,
|
|
|
|
+ sortIndex,
|
|
|
|
+ featuredFlag,
|
|
|
|
+ featuredSortIndex,
|
|
|
|
+ productCode,
|
|
|
|
+ synToERPFlag,
|
|
|
|
+ allAreaFlag,
|
|
|
|
+ provinceIDs,
|
|
|
|
+ serviceNumber,
|
|
|
|
+ maxBuyNumber,
|
|
|
|
+ packageCount,
|
|
|
|
+ byFlag,
|
|
|
|
+ normalProductFlag,
|
|
|
|
+ wholeSaleProductFlag,
|
|
|
|
+ promotionProductFlag,
|
|
|
|
+ groupBuyProductFlag,
|
|
|
|
+ step,
|
|
|
|
+ actFlag,
|
|
|
|
+ actType,
|
|
|
|
+ actSort,
|
|
|
|
+ onlineTime,
|
|
|
|
+ downlineTime,
|
|
|
|
+ freePostFlag,
|
|
|
|
+ precisehKey,
|
|
|
|
+ visibility,
|
|
|
|
+ commodityDetailsFlag,
|
|
|
|
+ productType,
|
|
|
|
+ qualificationImg,
|
|
|
|
+ invoiceType,
|
|
|
|
+ taxPoint,
|
|
|
|
+ supplierTaxPoint,
|
|
|
|
+ tags,
|
|
|
|
+ recommendType,
|
|
|
|
+ machineType,
|
|
|
|
+ includedTax,
|
|
|
|
+ commodityType,
|
|
|
|
+ trainingMethod,
|
|
|
|
+ trainingType,
|
|
|
|
+ trainingFee,
|
|
|
|
+ productDescribe,
|
|
|
|
+ splitCode,
|
|
|
|
+ productDetail,
|
|
|
|
+ announType,
|
|
|
|
+ newProductType,
|
|
|
|
+ <if test="qualificationNo != null and qualificationNo != ''">
|
|
|
|
+ qualificationNo,
|
|
|
|
+ </if>
|
|
|
|
+ <if test="productName != null and productName != ''">
|
|
|
|
+ productName,
|
|
|
|
+ </if>
|
|
|
|
+ <if test="qualificationTime != null and qualificationTime != ''">
|
|
|
|
+ qualificationTime,
|
|
|
|
+ </if>
|
|
|
|
+ <if test="qualificationLink != null and qualificationLink != ''">
|
|
|
|
+ qualificationLink,
|
|
|
|
+ </if>
|
|
|
|
+ showFlag)
|
|
VALUES (#{brandID},
|
|
VALUES (#{brandID},
|
|
#{bigTypeID},
|
|
#{bigTypeID},
|
|
#{smallTypeID},
|
|
#{smallTypeID},
|
|
@@ -437,14 +429,8 @@
|
|
#{aliasName},
|
|
#{aliasName},
|
|
#{name},
|
|
#{name},
|
|
#{searchKey},
|
|
#{searchKey},
|
|
- #{normalPrice},
|
|
|
|
- #{price},
|
|
|
|
#{priceFlag},
|
|
#{priceFlag},
|
|
#{beautyActFlag},
|
|
#{beautyActFlag},
|
|
- #{ladderPriceFlag},
|
|
|
|
- <if test="stock !=''">
|
|
|
|
- #{stock},
|
|
|
|
- </if>
|
|
|
|
#{hasSkuFlag},
|
|
#{hasSkuFlag},
|
|
#{mainImage},
|
|
#{mainImage},
|
|
#{propertiesInfo},
|
|
#{propertiesInfo},
|
|
@@ -462,13 +448,11 @@
|
|
#{featuredFlag},
|
|
#{featuredFlag},
|
|
#{featuredSortIndex},
|
|
#{featuredSortIndex},
|
|
#{productCode},
|
|
#{productCode},
|
|
- #{unit},
|
|
|
|
#{synToERPFlag},
|
|
#{synToERPFlag},
|
|
#{allAreaFlag},
|
|
#{allAreaFlag},
|
|
#{provinceIDs},
|
|
#{provinceIDs},
|
|
#{serviceNumber},
|
|
#{serviceNumber},
|
|
#{maxBuyNumber},
|
|
#{maxBuyNumber},
|
|
- #{minBuyNumber},
|
|
|
|
#{packageCount},
|
|
#{packageCount},
|
|
#{byFlag},
|
|
#{byFlag},
|
|
#{normalProductFlag},
|
|
#{normalProductFlag},
|
|
@@ -482,9 +466,6 @@
|
|
#{onlineTime},
|
|
#{onlineTime},
|
|
#{downlineTime},
|
|
#{downlineTime},
|
|
#{freePostFlag},
|
|
#{freePostFlag},
|
|
- #{SqlCostPrice},
|
|
|
|
- #{sqlCostProportional},
|
|
|
|
- #{costCheckFlag},
|
|
|
|
#{precisehKey},
|
|
#{precisehKey},
|
|
#{visibility},
|
|
#{visibility},
|
|
#{commodityDetailsFlag},
|
|
#{commodityDetailsFlag},
|
|
@@ -521,1504 +502,1556 @@
|
|
#{showFlag})
|
|
#{showFlag})
|
|
</insert>
|
|
</insert>
|
|
|
|
|
|
- <update id="update">
|
|
|
|
- UPDATE product SET
|
|
|
|
- productID = #{id},
|
|
|
|
- brandID = #{brandID},
|
|
|
|
- tinyTypeID = #{tinyTypeID},
|
|
|
|
- selfTypeID = #{selfTypeID},
|
|
|
|
- shopID = #{shopID},
|
|
|
|
- name = #{name},
|
|
|
|
- searchKey = #{searchKey},
|
|
|
|
- normalPrice = #{normalPrice},
|
|
|
|
- price = #{price},
|
|
|
|
- priceFlag = #{priceFlag},
|
|
|
|
- beautyActFlag = #{beautyActFlag},
|
|
|
|
- ladderPriceFlag = #{ladderPriceFlag},
|
|
|
|
- stock = #{stock},
|
|
|
|
- hasSkuFlag = #{hasSkuFlag},
|
|
|
|
- mainImage = #{mainImage},
|
|
|
|
- propertiesInfo = #{propertiesInfo},
|
|
|
|
- addTime = #{addTime},
|
|
|
|
- updateTime = #{updateTime},
|
|
|
|
- sellNumber = #{sellNumber},
|
|
|
|
- weekSellNumber = #{weekSellNumber},
|
|
|
|
- beforeValidFlag = #{beforeValidFlag},
|
|
|
|
- validFlag = #{validFlag},
|
|
|
|
- favoriteTimes = #{favoriteTimes},
|
|
|
|
- commentScore = #{commentScore},
|
|
|
|
- commentTimes = #{commentTimes},
|
|
|
|
- selfRecommendFlag = #{selfRecommendFlag},
|
|
|
|
- sysRecommendFlag = #{sysRecommendFlag},
|
|
|
|
- sortIndex = #{sortIndex},
|
|
|
|
- featuredFlag = #{featuredFlag},
|
|
|
|
- featuredSortIndex = #{featuredSortIndex},
|
|
|
|
- productCode = #{productCode},
|
|
|
|
- unit = #{unit},
|
|
|
|
- synToERPFlag = #{synToERPFlag},
|
|
|
|
- allAreaFlag = #{allAreaFlag},
|
|
|
|
- provinceIDs = #{provinceIDs},
|
|
|
|
- serviceNumber = #{serviceNumber},
|
|
|
|
- maxBuyNumber = #{maxBuyNumber},
|
|
|
|
- minBuyNumber = #{minBuyNumber},
|
|
|
|
- packageCount = #{packageCount},
|
|
|
|
- byFlag = #{byFlag},
|
|
|
|
- normalProductFlag = #{normalProductFlag},
|
|
|
|
- wholeSaleProductFlag = #{wholeSaleProductFlag},
|
|
|
|
- promotionProductFlag = #{promotionProductFlag},
|
|
|
|
- groupBuyProductFlag = #{groupBuyProductFlag},
|
|
|
|
- step = #{step},
|
|
|
|
- actFlag = #{actFlag},
|
|
|
|
- actType = #{actType},
|
|
|
|
- onlineTime = #{onlineTime},
|
|
|
|
- downlineTime = #{downlineTime},
|
|
|
|
- freePostFlag = #{freePostFlag},
|
|
|
|
- costPrice = #{costPrice},
|
|
|
|
- costProportional = #{costProportional},
|
|
|
|
- costCheckFlag = #{costCheckFlag},
|
|
|
|
- precisehKey = #{precisehKey},
|
|
|
|
- actSort = #{actSort},
|
|
|
|
- newProductType=#{newProductType}
|
|
|
|
-
|
|
|
|
- WHERE productID = #{id}
|
|
|
|
- </update>
|
|
|
|
- <select id="productList" resultType="com.caimei.modules.product.entity.Product">
|
|
|
|
- SELECT
|
|
|
|
- *
|
|
|
|
- FROM product a
|
|
|
|
- <where>
|
|
|
|
- a.newvalidFlag=1
|
|
|
|
- <if test="productID !=null and productID !=''">
|
|
|
|
- and a.productID=#{productID}
|
|
|
|
- </if>
|
|
|
|
- </where>
|
|
|
|
- </select>
|
|
|
|
- <select id="newfindProductImage" resultType="com.caimei.modules.product.entity.Product">
|
|
|
|
- SELECT
|
|
|
|
- <include refid="productColumns"/>
|
|
|
|
- FROM product a
|
|
|
|
- <include refid="productJoins"/>
|
|
|
|
- <where>
|
|
|
|
- <if test="productID !=null">
|
|
|
|
- AND a.productID=#{productID}
|
|
|
|
- </if>
|
|
|
|
- <if test="name != null and name != ''">
|
|
|
|
- AND a.name LIKE concat('%',#{name},'%')
|
|
|
|
- </if>
|
|
|
|
- <if test="shopName != null and shopName != ''">
|
|
|
|
- AND s.name LIKE concat('%',#{shopName},'%')
|
|
|
|
- </if>
|
|
|
|
- <if test="showFlag !=null and showFlag !=''">
|
|
|
|
- AND a.showFlag=#{showFlag}
|
|
|
|
- </if>
|
|
|
|
- <if test="ids != null and ids.size() > 0">
|
|
|
|
- AND a.productID NOT IN
|
|
|
|
- <foreach collection="ids" close=")" separator="," open="(" item="id">
|
|
|
|
- #{id}
|
|
|
|
- </foreach>
|
|
|
|
- </if>
|
|
|
|
- AND p.newvalidFlag = 1
|
|
|
|
- AND p.newProductType=1
|
|
|
|
- AND p.validFlag = 2
|
|
|
|
- AND p.showFlag!=2
|
|
|
|
-
|
|
|
|
- </where>
|
|
|
|
-# 在设置重点关注时给排序值1000为了让重点关注始终在列表前端
|
|
|
|
- order by a.sortIndex desc,a.newshowTime DESC
|
|
|
|
- </select>
|
|
|
|
- <update id="updateActive">
|
|
|
|
- UPDATE product
|
|
|
|
- <set>
|
|
|
|
- <if test="actFlag != null and actFlag != ''">
|
|
|
|
- actFlag = #{actFlag},
|
|
|
|
- </if>
|
|
|
|
- <if test="actType != null and actType != ''">
|
|
|
|
- actType = #{actType},
|
|
|
|
- </if>
|
|
|
|
- <if test="actSort != null and actSort != ''">
|
|
|
|
- actSort = #{actSort},
|
|
|
|
- </if>
|
|
|
|
- <if test="actCreateTime != null and actCreateTime != ''">
|
|
|
|
- actCreateTime = #{actCreateTime},
|
|
|
|
- </if>
|
|
|
|
- </set>
|
|
|
|
- WHERE productID = #{productID}
|
|
|
|
- </update>
|
|
|
|
-
|
|
|
|
- <update id="updatePreferred">
|
|
|
|
- UPDATE product SET preferredFlag = #{preferredFlag}
|
|
|
|
- WHERE productID = #{productID}
|
|
|
|
- </update>
|
|
|
|
-
|
|
|
|
- <delete id="delete">
|
|
|
|
- DELETE FROM product
|
|
|
|
- WHERE id = #{id}
|
|
|
|
- </delete>
|
|
|
|
-
|
|
|
|
- <update id="deleteProduct">
|
|
|
|
- UPDATE cm_search_recommend_product
|
|
|
|
- SET delFlag = #{DateTime}
|
|
|
|
- WHERE id = #{id}
|
|
|
|
- </update>
|
|
|
|
-
|
|
|
|
-
|
|
|
|
- <select id="getAllActType" resultType="com.caimei.po.ActType">
|
|
|
|
- SELECT
|
|
|
|
- *
|
|
|
|
- FROM acttype
|
|
|
|
- where validFlag = 1
|
|
|
|
- </select>
|
|
|
|
-
|
|
|
|
-
|
|
|
|
-
|
|
|
|
- <select id="getSupplierProductList" resultType="com.caimei.modules.product.entity.Product">
|
|
|
|
- SELECT
|
|
|
|
- *
|
|
|
|
- FROM
|
|
|
|
- product
|
|
|
|
- <where>
|
|
|
|
- <if test="name != null and name != ''">
|
|
|
|
- AND name LIKE concat('%',#{name},'%')
|
|
|
|
- </if>
|
|
|
|
- AND shopID = #{shopID}
|
|
|
|
- AND (validFlag = 1 or validFlag = 2 or validFlag = 3 or validFlag = 9)
|
|
|
|
- </where>
|
|
|
|
- ORDER BY addTime desc
|
|
|
|
- </select>
|
|
|
|
-
|
|
|
|
- <select id="getGiftProductInfo" parameterType="com.caimei.modules.product.entity.GiftProduct" resultType="com.caimei.modules.product.entity.GiftProduct">
|
|
|
|
- SELECT
|
|
|
|
- g.id as "id",
|
|
|
|
- g.fullGiftProductId as "fullGiftProductId",
|
|
|
|
- g.giftProductId as "giftProductId",
|
|
|
|
- g.actType as "actType",
|
|
|
|
- g.giftProductNum as "giftProductNum",
|
|
|
|
- p.name as "productName"
|
|
|
|
- FROM
|
|
|
|
- gift_product g
|
|
|
|
- left join product p on p.productID = g.giftProductId
|
|
|
|
- <where>
|
|
|
|
- g.fullGiftProductId = #{fullGiftProductId}
|
|
|
|
- AND g.actType = #{actType}
|
|
|
|
- <if test="giftProductId != null and giftProductId != ''">
|
|
|
|
- AND g.giftProductId = #{giftProductId}
|
|
|
|
- </if>
|
|
|
|
- <if test="delFlag != null and delFlag != ''">
|
|
|
|
- AND g.delFlag = #{delFlag}
|
|
|
|
- </if>
|
|
|
|
- and p.productCategory = 1
|
|
|
|
- </where>
|
|
|
|
- </select>
|
|
|
|
-
|
|
|
|
- <select id="getProductSku" resultType="com.caimei.modules.product.entity.Sku">
|
|
|
|
- SELECT
|
|
|
|
- *
|
|
|
|
- FROM
|
|
|
|
- sku
|
|
|
|
- <where>
|
|
|
|
- productID = #{productId}
|
|
|
|
- AND validFlag = 1
|
|
|
|
- </where>
|
|
|
|
- </select>
|
|
|
|
-
|
|
|
|
- <select id="findProductBigTypeByProductID" parameterType="java.lang.Integer" resultType="java.lang.String">
|
|
|
|
- SELECT
|
|
|
|
- tb.name
|
|
|
|
- FROM
|
|
|
|
- bigType AS tb
|
|
|
|
- INNER JOIN smallType AS ts
|
|
|
|
- ON tb.bigTypeID = ts.bigTypeID
|
|
|
|
- INNER JOIN tinyType AS tt
|
|
|
|
- ON ts.smallTypeID = tt.smallTypeID
|
|
|
|
- INNER JOIN product AS tp
|
|
|
|
- ON tt.tinyTypeID = tp.tinyTypeID
|
|
|
|
- <where>
|
|
|
|
- tp.productID = #{productId}
|
|
|
|
- and tp.productCategory = 1
|
|
|
|
- </where>
|
|
|
|
- </select>
|
|
|
|
-
|
|
|
|
- <update id="updateGiftProudct" parameterType="com.caimei.modules.product.entity.GiftProduct">
|
|
|
|
- update gift_product
|
|
|
|
- <set >
|
|
|
|
- <if test="fullGiftProductId != null and !=''" >
|
|
|
|
- fullGiftProductId = #{fullGiftProductId},
|
|
|
|
- </if>
|
|
|
|
- <if test="giftProductId != null and !=''" >
|
|
|
|
- giftProductId = #{giftProductId},
|
|
|
|
- </if>
|
|
|
|
- <if test="productName != null and !=''" >
|
|
|
|
- productName = #{productName},
|
|
|
|
- </if>
|
|
|
|
- <if test="actType != null and !=''" >
|
|
|
|
- actType = #{actType},
|
|
|
|
- </if>
|
|
|
|
- <if test="giftProductNum != null and !=''" >
|
|
|
|
- giftProductNum = #{giftProductNum},
|
|
|
|
- </if>
|
|
|
|
- <if test="createBy != null and !=''" >
|
|
|
|
- createBy = #{createBy.id},
|
|
|
|
- </if>
|
|
|
|
- <if test="createDate != null and !=''" >
|
|
|
|
- createDate = #{createDate},
|
|
|
|
- </if>
|
|
|
|
-
|
|
|
|
- <if test="updateBy != null and !=''" >
|
|
|
|
- updateBy = #{updateBy.id},
|
|
|
|
- </if>
|
|
|
|
- <if test="updateDate != null and !=''" >
|
|
|
|
- updateDate = #{updateDate},
|
|
|
|
- </if>
|
|
|
|
- <if test="delFlag != null and !=''" >
|
|
|
|
- delFlag = #{delFlag},
|
|
|
|
- </if>
|
|
|
|
- </set>
|
|
|
|
- where id = #{id}
|
|
|
|
- </update>
|
|
|
|
-
|
|
|
|
- <insert id="insertGiftProudct" parameterType="com.caimei.modules.product.entity.GiftProduct" keyProperty="id" useGeneratedKeys="true">
|
|
|
|
- INSERT INTO gift_product(
|
|
|
|
- fullGiftProductId,
|
|
|
|
- giftProductId,
|
|
|
|
- productName,
|
|
|
|
- actType,
|
|
|
|
- giftProductNum,
|
|
|
|
- createBy,
|
|
|
|
- createDate,
|
|
|
|
- updateBy,
|
|
|
|
- updateDate,
|
|
|
|
- delFlag
|
|
|
|
- ) VALUES (
|
|
|
|
- #{fullGiftProductId},
|
|
|
|
- #{giftProductId},
|
|
|
|
- #{productName},
|
|
|
|
- #{actType},
|
|
|
|
- #{giftProductNum},
|
|
|
|
- #{createBy.id},
|
|
|
|
- #{createDate},
|
|
|
|
- #{updateBy.id},
|
|
|
|
- #{updateDate},
|
|
|
|
- #{delFlag}
|
|
|
|
- )
|
|
|
|
- </insert>
|
|
|
|
-
|
|
|
|
-
|
|
|
|
- <insert id="insertProductPriceRecord" parameterType="com.caimei.modules.product.entity.ProductPriceRecord" keyProperty="productPriceRecordID" useGeneratedKeys="true">
|
|
|
|
- INSERT INTO productpricerecord(
|
|
|
|
- `productID`,
|
|
|
|
- `shopID`,
|
|
|
|
- `highestUserLevelPrice`,
|
|
|
|
- `lowestUserLevelPrice`,
|
|
|
|
- `lowestUserLevelID`,
|
|
|
|
- `price0`,
|
|
|
|
- `price1`,
|
|
|
|
- `updateTime`
|
|
|
|
- )
|
|
|
|
- VALUES
|
|
|
|
- (
|
|
|
|
- #{productID},
|
|
|
|
- #{shopID},
|
|
|
|
- #{highestUserLevelPrice},
|
|
|
|
- #{lowestUserLevelPrice},
|
|
|
|
- #{lowestUserLevelID},
|
|
|
|
- #{price0},
|
|
|
|
- #{price1},
|
|
|
|
- #{updateTime}
|
|
|
|
- )
|
|
|
|
- </insert>
|
|
|
|
-
|
|
|
|
- <!-- <update id="updateCRMFlag">-->
|
|
|
|
- <!-- UPDATE product a SET a.displayOnCRMFlag = #{param1}-->
|
|
|
|
- <!-- WHERE a.productID IN-->
|
|
|
|
- <!-- <foreach collection="param2" item="id" index="index" open="(" separator="," close=")" >-->
|
|
|
|
- <!-- #{id}-->
|
|
|
|
- <!-- </foreach>-->
|
|
|
|
- <!-- </update>-->
|
|
|
|
-
|
|
|
|
- <update id="deleteActive">
|
|
|
|
- UPDATE product a SET a.actFlag = 0
|
|
|
|
- WHERE a.productID = #{id}
|
|
|
|
- </update>
|
|
|
|
-
|
|
|
|
-
|
|
|
|
- <update id="updatePostFlag">
|
|
|
|
- UPDATE product a SET a.freePostFlag = #{param1}
|
|
|
|
- WHERE a.productID IN
|
|
|
|
- <foreach collection="param2" item="id" index="index" open="(" separator="," close=")" >
|
|
|
|
- #{id}
|
|
|
|
- </foreach>
|
|
|
|
- </update>
|
|
|
|
-
|
|
|
|
-
|
|
|
|
- <select id="getBigTypeList" resultType="com.caimei.modules.product.entity.ProductBigType">
|
|
|
|
- select * from bigtype
|
|
|
|
- <where>
|
|
|
|
- validFlag = 1
|
|
|
|
- <if test="bigTypeID != null and bigTypeID != ''">
|
|
|
|
- AND bigTypeID = #{bigTypeID}
|
|
|
|
- </if>
|
|
|
|
- </where>
|
|
|
|
- </select>
|
|
|
|
-
|
|
|
|
- <select id="getSmallTypeList" resultType="com.caimei.modules.product.entity.ProductSmallType">
|
|
|
|
- select * from smalltype
|
|
|
|
- <where>
|
|
|
|
- validFlag = 1
|
|
|
|
- <if test="bigTypeID != null and bigTypeID != ''">
|
|
|
|
- AND bigTypeID = #{bigTypeID}
|
|
|
|
- </if>
|
|
|
|
- <if test="smallTypeID != null and smallTypeID != ''">
|
|
|
|
- AND smallTypeID = #{smallTypeID}
|
|
|
|
- </if>
|
|
|
|
- </where>
|
|
|
|
- </select>
|
|
|
|
-
|
|
|
|
- <select id="getTinyTypeList" resultType="com.caimei.modules.product.entity.ProducTinyType">
|
|
|
|
- select * from tinytype
|
|
|
|
- <where>
|
|
|
|
- validFlag = 1
|
|
|
|
- <if test="smallTypeID != null and smallTypeID != ''">
|
|
|
|
- AND smallTypeID = #{smallTypeID}
|
|
|
|
- </if>
|
|
|
|
- <if test="smallTypeID != null and smallTypeID != ''">
|
|
|
|
- AND smallTypeID = #{smallTypeID}
|
|
|
|
- </if>
|
|
|
|
- </where>
|
|
|
|
- </select>
|
|
|
|
-
|
|
|
|
- <select id="getProductTypeNameAndID" resultType="map">
|
|
|
|
- select
|
|
|
|
- b.name AS bigTypeName,
|
|
|
|
- b.bigTypeID AS bigTypeID,
|
|
|
|
- s.name AS smallTypeName,
|
|
|
|
- s.smallTypeID AS smallTypeID,
|
|
|
|
- t.name AS tinyTypeName,
|
|
|
|
- t.tinyTypeID AS tinyTypeID
|
|
|
|
- from tinytype AS t
|
|
|
|
- join smalltype AS s on t.smallTypeID = s.smallTypeID
|
|
|
|
- JOIN bigtype AS b on b.bigTypeID = s.bigTypeID
|
|
|
|
- where t.tinyTypeID = #{tinyTypeID}
|
|
|
|
- </select>
|
|
|
|
-
|
|
|
|
- <delete id="deleteCustomClassification">
|
|
|
|
- delete from product_custom_classification
|
|
|
|
- where productID = #{productID}
|
|
|
|
- </delete>
|
|
|
|
-
|
|
|
|
- <insert id="insertCustomClassification" parameterType="com.caimei.modules.product.entity.ProductCustomClassification" keyProperty="userId" useGeneratedKeys="true">
|
|
|
|
- INSERT INTO product_custom_classification(
|
|
|
|
- productID,
|
|
|
|
- bigTypeID,
|
|
|
|
- smallTypeID,
|
|
|
|
- tinyTypeID,
|
|
|
|
- createDate,
|
|
|
|
- updateDate
|
|
|
|
- ) VALUES (
|
|
|
|
- #{productID},
|
|
|
|
- #{bigTypeID},
|
|
|
|
- #{smallTypeID},
|
|
|
|
- #{tinyTypeID},
|
|
|
|
- #{createDate},
|
|
|
|
- #{updateDate}
|
|
|
|
- )
|
|
|
|
- </insert>
|
|
|
|
-
|
|
|
|
- <insert id="insertAddProduct">
|
|
|
|
- INSERT INTO cm_search_recommend_product(
|
|
|
|
- productID,
|
|
|
|
- tinyTypeID,
|
|
|
|
- sort,
|
|
|
|
- delFlag
|
|
|
|
- ) VALUES (
|
|
|
|
- #{productID},
|
|
|
|
- #{tinyTypeID},
|
|
|
|
- 0,
|
|
|
|
- 0
|
|
|
|
- )
|
|
|
|
- </insert>
|
|
|
|
- <insert id="insertLadderPrice">
|
|
|
|
- insert into product_ladder_price (productId, userType, ladderNum,
|
|
|
|
- buyNum, buyPrice, createBy, createDate, delFlag)
|
|
|
|
- values (#{productId}, 3, #{ladderNum},
|
|
|
|
- #{buyNum}, #{buyPrice}, #{createBy},
|
|
|
|
- #{createDate},'0')
|
|
|
|
- </insert>
|
|
|
|
-
|
|
|
|
- <insert id="insertProduct" keyColumn="productID" keyProperty="productID" parameterType="com.caimei.modules.product.entity.Product" useGeneratedKeys="true">
|
|
|
|
- INSERT INTO `product` (
|
|
|
|
- `brandID`,
|
|
|
|
- `tinyTypeID`,
|
|
|
|
- <if test="productCategory != null and productCategory != '' ">
|
|
|
|
- `productCategory`,
|
|
|
|
- </if>
|
|
|
|
- `preferredFlag`,
|
|
|
|
- `selfTypeID`,
|
|
|
|
- `shopID`,
|
|
|
|
- `name`,
|
|
|
|
- `aliasName`,
|
|
|
|
- `searchKey`,
|
|
|
|
- `productRemarks`,
|
|
|
|
- `normalPrice`,
|
|
|
|
- `price`,
|
|
|
|
- `priceFlag`,
|
|
|
|
- `beautyActFlag`,
|
|
|
|
- `ladderPriceFlag`,
|
|
|
|
- <if test="stock != null and stock != '' ">
|
|
|
|
- `stock`,
|
|
|
|
- </if>
|
|
|
|
- `hasSkuFlag`,
|
|
|
|
- `mainImage`,
|
|
|
|
- `propertiesInfo`,
|
|
|
|
- `addTime`,
|
|
|
|
- `updateTime`,
|
|
|
|
- `weekSellNumber`,
|
|
|
|
- `beforeValidFlag`,
|
|
|
|
- `validFlag`,
|
|
|
|
- `favoriteTimes`,
|
|
|
|
- `commentScore`,
|
|
|
|
- `commentTimes`,
|
|
|
|
- `selfRecommendFlag`,
|
|
|
|
- `sysRecommendFlag`,
|
|
|
|
- `sortIndex`,
|
|
|
|
- `featuredFlag`,
|
|
|
|
- `featuredSortIndex`,
|
|
|
|
- `productCode`,
|
|
|
|
- `unit`,
|
|
|
|
- `synToERPFlag`,
|
|
|
|
- `allAreaFlag`,
|
|
|
|
- `provinceIDs`,
|
|
|
|
- `serviceNumber`,
|
|
|
|
- `maxBuyNumber`,
|
|
|
|
- `minBuyNumber`,
|
|
|
|
- `packageCount`,
|
|
|
|
- `byFlag`,
|
|
|
|
- `normalProductFlag`,
|
|
|
|
- `wholeSaleProductFlag`,
|
|
|
|
- `promotionProductFlag`,
|
|
|
|
- `groupBuyProductFlag`,
|
|
|
|
- `step`,
|
|
|
|
- `actFlag`,
|
|
|
|
- `actStatus`,
|
|
|
|
- `actSort`,
|
|
|
|
- `actType`,
|
|
|
|
- `visibility`,
|
|
|
|
- `onlineTime`,
|
|
|
|
- `downlineTime`,
|
|
|
|
- `freePostFlag`,
|
|
|
|
- `costPrice`,
|
|
|
|
- `costProportional`,
|
|
|
|
- `costCheckFlag`,
|
|
|
|
- `precisehKey`,
|
|
|
|
- `tags`,
|
|
|
|
- `productType`,
|
|
|
|
- `machineType`,
|
|
|
|
- `qualificationImg`,
|
|
|
|
- `includedTax`,
|
|
|
|
- `taxPoint`,
|
|
|
|
- `invoiceType`,
|
|
|
|
- `recommendType`,
|
|
|
|
- `combinationID`,
|
|
|
|
- `combinationSort`,
|
|
|
|
- announType
|
|
|
|
- )
|
|
|
|
- VALUES
|
|
|
|
- (
|
|
|
|
- #{brandID},
|
|
|
|
- #{tinyTypeID},
|
|
|
|
- <if test="productCategory != null and productCategory != '' ">
|
|
|
|
- #{productCategory},
|
|
|
|
- </if>
|
|
|
|
- #{preferredFlag},
|
|
|
|
- #{selfTypeID},
|
|
|
|
- #{shopID},
|
|
|
|
- #{name},
|
|
|
|
- #{aliasName},
|
|
|
|
- #{searchKey},
|
|
|
|
- #{productRemarks},
|
|
|
|
- #{normalPrice},
|
|
|
|
- #{price},
|
|
|
|
- #{priceFlag},
|
|
|
|
- #{beautyActFlag},
|
|
|
|
- #{ladderPriceFlag},
|
|
|
|
- <if test="stock != null and stock != '' ">
|
|
|
|
- #{stock},
|
|
|
|
- </if>
|
|
|
|
- #{hasSkuFlag},
|
|
|
|
- #{mainImage},
|
|
|
|
- #{propertiesInfo},
|
|
|
|
- #{addTime},
|
|
|
|
- #{updateTime},
|
|
|
|
- #{weekSellNumber},
|
|
|
|
- #{beforeValidFlag},
|
|
|
|
- #{validFlag},
|
|
|
|
- #{favoriteTimes},
|
|
|
|
- #{commentScore},
|
|
|
|
- #{commentTimes},
|
|
|
|
- #{selfRecommendFlag},
|
|
|
|
- #{sysRecommendFlag},
|
|
|
|
- #{sortIndex},
|
|
|
|
- #{featuredFlag},
|
|
|
|
- #{featuredSortIndex},
|
|
|
|
- #{productCode},
|
|
|
|
- #{unit},
|
|
|
|
- #{synToERPFlag},
|
|
|
|
- #{allAreaFlag},
|
|
|
|
- #{provinceIDs},
|
|
|
|
- #{serviceNumber},
|
|
|
|
- #{maxBuyNumber},
|
|
|
|
- #{minBuyNumber},
|
|
|
|
- #{packageCount},
|
|
|
|
- #{byFlag},
|
|
|
|
- #{normalProductFlag},
|
|
|
|
- #{wholeSaleProductFlag},
|
|
|
|
- #{promotionProductFlag},
|
|
|
|
- #{groupBuyProductFlag},
|
|
|
|
- #{step},
|
|
|
|
- #{actFlag},
|
|
|
|
- #{actStatus},
|
|
|
|
- #{actSort},
|
|
|
|
- #{actType},
|
|
|
|
- #{visibility},
|
|
|
|
- #{onlineTime},
|
|
|
|
- #{downlineTime},
|
|
|
|
- #{freePostFlag},
|
|
|
|
- #{costPrice},
|
|
|
|
- #{costProportional},
|
|
|
|
- #{costCheckFlag},
|
|
|
|
- #{precisehKey},
|
|
|
|
- #{tags},
|
|
|
|
- #{productType},
|
|
|
|
- #{machineType},
|
|
|
|
- #{qualificationImg},
|
|
|
|
- #{includedTax},
|
|
|
|
- #{taxPoint},
|
|
|
|
- #{invoiceType},
|
|
|
|
- #{recommendType},
|
|
|
|
- #{combinationID},
|
|
|
|
- #{combinationSort},
|
|
|
|
- #{announType}
|
|
|
|
- )
|
|
|
|
- </insert>
|
|
|
|
-
|
|
|
|
- <insert id="insertProductDetailInfo">
|
|
|
|
- insert into productdetailinfo
|
|
|
|
- <trim prefix="(" suffix=")" suffixOverrides=",">
|
|
|
|
- <if test="productID != null">
|
|
|
|
- `productID`,
|
|
|
|
- </if>
|
|
|
|
- <if test="detailInfo != null and detailInfo != ''">
|
|
|
|
- `detailInfo`,
|
|
|
|
- </if>
|
|
|
|
- <if test="serviceInfo != null and serviceInfo != ''">
|
|
|
|
- `serviceInfo`,
|
|
|
|
- </if>
|
|
|
|
- <if test="orderInfo != null and orderInfo != ''">
|
|
|
|
- `orderInfo`,
|
|
|
|
- </if>
|
|
|
|
- </trim>
|
|
|
|
- <trim prefix="values (" suffix=")" suffixOverrides=",">
|
|
|
|
- <if test="productID != null">
|
|
|
|
- #{productID},
|
|
|
|
- </if>
|
|
|
|
- <if test="detailInfo != null and detailInfo != ''">
|
|
|
|
- #{detailInfo},
|
|
|
|
- </if>
|
|
|
|
- <if test="serviceInfo != null and serviceInfo != ''">
|
|
|
|
- #{serviceInfo},
|
|
|
|
- </if>
|
|
|
|
- <if test="orderInfo != null and orderInfo != ''">
|
|
|
|
- #{orderInfo},
|
|
|
|
- </if>
|
|
|
|
- </trim>
|
|
|
|
- </insert>
|
|
|
|
-
|
|
|
|
- <select id="getrecommendProductList" resultType="product">
|
|
|
|
- select
|
|
|
|
- a.*,
|
|
|
|
- csrp.sort AS sort,
|
|
|
|
- csrp.id AS recommendProductId,
|
|
|
|
- b.name AS brandName,
|
|
|
|
- s.name AS shopName
|
|
|
|
- FROM
|
|
|
|
- cm_search_recommend_product csrp
|
|
|
|
- LEFT JOIN product a on a.productID = csrp.productID
|
|
|
|
- LEFT JOIN shop s on s.shopID = a.shopID
|
|
|
|
- left join cm_brand b on b.id = a.brandID
|
|
|
|
- WHERE
|
|
|
|
- csrp.tinyTypeId = #{tinyTypeID}
|
|
|
|
- <if test="name != null and name != ''">
|
|
|
|
- AND a.name like concat('%', #{name} ,'%')
|
|
|
|
- </if>
|
|
|
|
- <if test="validFlag !=null and validFlag !=''">
|
|
|
|
- AND a.validFlag=#{validFlag}
|
|
|
|
- </if>
|
|
|
|
- <if test="shopName != null and shopName != ''">
|
|
|
|
- AND s.name like concat('%', #{shopName} ,'%')
|
|
|
|
- </if>
|
|
|
|
- <if test="brandName != null and brandName != ''">
|
|
|
|
- AND b.name like concat('%', #{brandName} ,'%')
|
|
|
|
- </if>
|
|
|
|
- and a.productCategory = 1
|
|
|
|
- AND a.validFlag != 0
|
|
|
|
- AND csrp.delFlag =0
|
|
|
|
- ORDER BY csrp.sort DESC
|
|
|
|
- </select>
|
|
|
|
-
|
|
|
|
-
|
|
|
|
- <select id="relatedProductList" resultType="product">
|
|
|
|
- select
|
|
|
|
- <include refid="productColumns"/>,
|
|
|
|
- b.name AS brandName,
|
|
|
|
- (case when a.tinyTypeID = #{tinyTypeID} then '1' else '0' end) AS defaultType
|
|
|
|
- FROM product a
|
|
|
|
- <include refid="productJoins"/>
|
|
|
|
- left join brand b on b.brandID = a.brandID
|
|
|
|
- WHERE (a.productID
|
|
|
|
- IN (select productID from product_custom_classification where tinyTypeID = #{tinyTypeID})
|
|
|
|
- OR a.tinyTypeID = #{tinyTypeID})
|
|
|
|
- <if test="name != null and name != ''">
|
|
|
|
- AND a.name like concat('%', #{name} ,'%')
|
|
|
|
- </if>
|
|
|
|
- <if test="validFlag !=null and validFlag !=''">
|
|
|
|
- AND a.validFlag=#{validFlag}
|
|
|
|
- </if>
|
|
|
|
- <if test="shopName != null and shopName != ''">
|
|
|
|
- AND s.name like concat('%', #{shopName} ,'%')
|
|
|
|
- </if>
|
|
|
|
- <if test="brandName != null and brandName != ''">
|
|
|
|
- AND b.name like concat('%', #{brandName} ,'%')
|
|
|
|
- </if>
|
|
|
|
- AND a.validFlag != 0
|
|
|
|
- and a.productCategory = 1
|
|
|
|
- </select>
|
|
|
|
-
|
|
|
|
- <delete id="deleteProductCustomClassification">
|
|
|
|
- delete from product_custom_classification
|
|
|
|
- where productID = #{productID} and tinyTypeID = #{tinyTypeID}
|
|
|
|
- </delete>
|
|
|
|
- <delete id="deleteLadderPriceByProductId">
|
|
|
|
- DELETE FROM product_ladder_price where productId = #{productID}
|
|
|
|
- </delete>
|
|
|
|
- <delete id="deleteLadderPriceById">
|
|
|
|
- DELETE FROM product_ladder_price where id = #{id}
|
|
|
|
- </delete>
|
|
|
|
-
|
|
|
|
- <select id="toAddProductCustomClassificationList" resultType="product">
|
|
|
|
- select
|
|
|
|
- <include refid="productColumns"/>,
|
|
|
|
- b.name AS brandName
|
|
|
|
- FROM product a
|
|
|
|
- <include refid="productJoins"/>
|
|
|
|
- left join cm_brand b on b.id = a.brandID
|
|
|
|
- WHERE a.tinyTypeID != #{tinyTypeID}
|
|
|
|
- and not exists
|
|
|
|
- (select pcc.id from product_custom_classification pcc where pcc.productID = a.productID and pcc.tinyTypeID = #{tinyTypeID})
|
|
|
|
- and a.validFlag = '2'
|
|
|
|
- and (select count(id) from product_custom_classification pcc where pcc.productID = a.productID) <![CDATA[ < ]]> 5
|
|
|
|
- <if test="name != null and name != ''">
|
|
|
|
- and a.name like concat('%', #{name} ,'%')
|
|
|
|
- </if>
|
|
|
|
- <if test="shopName != null and shopName != ''">
|
|
|
|
- AND s.name like concat('%', #{shopName} ,'%')
|
|
|
|
- </if>
|
|
|
|
- <if test="brandName != null and brandName != ''">
|
|
|
|
- AND b.name like concat('%', #{brandName} ,'%')
|
|
|
|
- </if>
|
|
|
|
- </select>
|
|
|
|
-
|
|
|
|
-
|
|
|
|
- <select id="toAddProductList" resultType="product">
|
|
|
|
- select
|
|
|
|
- a.*,
|
|
|
|
- b.name AS brandName,
|
|
|
|
- s.name AS shopName
|
|
|
|
- FROM product a
|
|
|
|
- LEFT JOIN shop s on s.shopID = a.shopID
|
|
|
|
- left join cm_brand b on b.id = a.brandID
|
|
|
|
- WHERE
|
|
|
|
- NOT EXISTS (select * from cm_search_recommend_product csrp where csrp.productID = a.productID and csrp.tinyTypeID = #{tinyTypeID} AND csrp.delFlag = 0)
|
|
|
|
- and a.validFlag = '2'
|
|
|
|
- <if test="name != null and name != ''">
|
|
|
|
- and a.name like concat('%', #{name} ,'%')
|
|
|
|
- </if>
|
|
|
|
- <if test="shopName != null and shopName != ''">
|
|
|
|
- AND s.name like concat('%', #{shopName} ,'%')
|
|
|
|
- </if>
|
|
|
|
- <if test="brandName != null and brandName != ''">
|
|
|
|
- AND b.name like concat('%', #{brandName} ,'%')
|
|
|
|
- </if>
|
|
|
|
- and a.productCategory = 1
|
|
|
|
- </select>
|
|
|
|
-
|
|
|
|
- <select id="getProductTypes" resultType="com.caimei.modules.product.entity.ProductCustomClassification">
|
|
|
|
- select *
|
|
|
|
- from product_custom_classification where productID = #{productID}
|
|
|
|
- </select>
|
|
|
|
-
|
|
|
|
-
|
|
|
|
- <select id="findRecommendActivityListPage" resultType="Product">
|
|
|
|
- SELECT
|
|
|
|
- <include refid="productColumns"/>
|
|
|
|
- FROM product a
|
|
|
|
- <include refid="ActivityJoins"/>
|
|
|
|
- <where>
|
|
|
|
- <if test="id !=null and id !=''">
|
|
|
|
- AND a.productID=#{id}
|
|
|
|
- </if>
|
|
|
|
- <if test="tinyTypeID != null and tinyTypeID != ''">
|
|
|
|
- AND a.tinyTypeID = #{tinyTypeID}
|
|
|
|
- </if>
|
|
|
|
- <if test="smallTypeID != null and smallTypeID != ''">
|
|
|
|
- AND a.smallTypeID = #{smallTypeID}
|
|
|
|
- </if>
|
|
|
|
- <if test="bigTypeID != null and bigTypeID != ''">
|
|
|
|
- AND a.bigTypeID = #{bigTypeID}
|
|
|
|
- </if>
|
|
|
|
- <if test="shopID != null and shopID != ''">
|
|
|
|
- AND a.shopID = #{shopID}
|
|
|
|
- </if>
|
|
|
|
- <if test="name != null and name != ''">
|
|
|
|
- AND a.name LIKE
|
|
|
|
- <if test="dbName == 'oracle'">'%'||#{name}||'%'</if>
|
|
|
|
- <if test="dbName == 'mssql'">'%'+#{name}+'%'</if>
|
|
|
|
- <if test="dbName == 'mysql'">concat('%',#{name},'%')</if>
|
|
|
|
- </if>
|
|
|
|
- <if test="shopName != null and shopName != ''">
|
|
|
|
- AND s.name LIKE
|
|
|
|
- <if test="dbName == 'oracle'">'%'||#{shopName}||'%'</if>
|
|
|
|
- <if test="dbName == 'mssql'">'%'+#{shopName}+'%'</if>
|
|
|
|
- <if test="dbName == 'mysql'">concat('%',#{shopName},'%')</if>
|
|
|
|
- </if>
|
|
|
|
- <if test="actFlag !=null and actFlag !=''">
|
|
|
|
- AND a.actFlag=#{actFlag}
|
|
|
|
- </if>
|
|
|
|
-
|
|
|
|
-
|
|
|
|
- <if test="sqlMap !=null and sqlMap !=''">
|
|
|
|
- ${sqlMap.dsf}
|
|
|
|
- </if>
|
|
|
|
- AND a.validFlag = 2
|
|
|
|
- AND (a.actType != 3 or a.`actType` IS NULL or (a.actType = 3 and STR_TO_DATE(a.endTime,'%Y-%m-%d %H:%i') <![CDATA[ < ]]> STR_TO_DATE(SYSDATE(),'%Y-%m-%d %H:%i')))
|
|
|
|
- AND a.shopID not in (SELECT s.`value` FROM `sys_dict` s WHERE s.type='heheShopID')
|
|
|
|
- and a.productCategory = 1
|
|
|
|
- </where>
|
|
|
|
- <choose>
|
|
|
|
- <when test="page !=null and page.orderBy != null and page.orderBy != ''">
|
|
|
|
- ORDER BY ${page.orderBy}
|
|
|
|
- </when>
|
|
|
|
- <otherwise>
|
|
|
|
- order by case WHEN a.validFlag = 1 then 0 else 1 END asc,a.productID desc
|
|
|
|
- </otherwise>
|
|
|
|
- </choose>
|
|
|
|
- </select>
|
|
|
|
-
|
|
|
|
- <select id="findGroupActivityListPage" resultType="Product">
|
|
|
|
- SELECT
|
|
|
|
- <include refid="productColumns"/>
|
|
|
|
- FROM product a
|
|
|
|
- <include refid="ActivityJoins"/>
|
|
|
|
- <where>
|
|
|
|
- <if test="id !=null and id !=''">
|
|
|
|
- AND a.productID=#{id}
|
|
|
|
- </if>
|
|
|
|
- <if test="tinyTypeID != null and tinyTypeID != ''">
|
|
|
|
- AND a.tinyTypeID = #{tinyTypeID}
|
|
|
|
- </if>
|
|
|
|
- <if test="smallTypeID != null and smallTypeID != ''">
|
|
|
|
- AND a.smallTypeID = #{smallTypeID}
|
|
|
|
- </if>
|
|
|
|
- <if test="bigTypeID != null and bigTypeID != ''">
|
|
|
|
- AND a.bigTypeID = #{bigTypeID}
|
|
|
|
- </if>
|
|
|
|
- <if test="shopID != null and shopID != ''">
|
|
|
|
- AND a.shopID = #{shopID}
|
|
|
|
- </if>
|
|
|
|
- <if test="name != null and name != ''">
|
|
|
|
- AND a.name LIKE
|
|
|
|
- <if test="dbName == 'oracle'">'%'||#{name}||'%'</if>
|
|
|
|
- <if test="dbName == 'mssql'">'%'+#{name}+'%'</if>
|
|
|
|
- <if test="dbName == 'mysql'">concat('%',#{name},'%')</if>
|
|
|
|
- </if>
|
|
|
|
- <if test="shopName != null and shopName != ''">
|
|
|
|
- AND s.name LIKE
|
|
|
|
- <if test="dbName == 'oracle'">'%'||#{shopName}||'%'</if>
|
|
|
|
- <if test="dbName == 'mssql'">'%'+#{shopName}+'%'</if>
|
|
|
|
- <if test="dbName == 'mysql'">concat('%',#{shopName},'%')</if>
|
|
|
|
- </if>
|
|
|
|
- <if test="actFlag !=null and actFlag !=''">
|
|
|
|
- AND a.actFlag=#{actFlag}
|
|
|
|
- </if>
|
|
|
|
- <if test="actStatus != null and actStatus != '' and actStatus == 1">
|
|
|
|
- AND STR_TO_DATE(SYSDATE(),'%Y-%m-%d %H:%i') <![CDATA[ < ]]> STR_TO_DATE(a.beginTime,'%Y-%m-%d %H:%i')
|
|
|
|
- </if>
|
|
|
|
- <if test="actStatus != null and actStatus != '' and actStatus == 2">
|
|
|
|
- AND STR_TO_DATE(SYSDATE(),'%Y-%m-%d %H:%i') <![CDATA[ > ]]> STR_TO_DATE(a.beginTime,'%Y-%m-%d %H:%i')
|
|
|
|
- AND STR_TO_DATE(SYSDATE(),'%Y-%m-%d %H:%i') <![CDATA[ < ]]> STR_TO_DATE(a.endTime,'%Y-%m-%d %H:%i')
|
|
|
|
- </if>
|
|
|
|
- <if test="sqlMap !=null and sqlMap !=''">
|
|
|
|
- ${sqlMap.dsf}
|
|
|
|
- </if>
|
|
|
|
- AND a.validFlag = 2
|
|
|
|
- AND ((a.actType != 1 AND a.actType != 2 OR a.`actType` IS NULL) or a.actFlag = 0)
|
|
|
|
- AND a.shopID not in (SELECT s.`value` FROM `sys_dict` s WHERE s.type='heheShopID')
|
|
|
|
- and a.productCategory = 1
|
|
|
|
- </where>
|
|
|
|
- <choose>
|
|
|
|
- <when test="page !=null and page.orderBy != null and page.orderBy != ''">
|
|
|
|
- ORDER BY ${page.orderBy}
|
|
|
|
- </when>
|
|
|
|
- <otherwise>
|
|
|
|
- order by case WHEN a.validFlag = 1 then 0 else 1 END asc,a.productID desc
|
|
|
|
- </otherwise>
|
|
|
|
- </choose>
|
|
|
|
- </select>
|
|
|
|
-
|
|
|
|
- <select id="findBigTypeList" resultType="com.caimei.modules.product.entity.ProductBigType">
|
|
|
|
- SELECT
|
|
|
|
- *
|
|
|
|
- FROM bigtype a
|
|
|
|
- <where>
|
|
|
|
- <if test="bigTypeID != null and bigTypeID != ''">
|
|
|
|
- AND a.bigTypeID = #{bigTypeID}
|
|
|
|
- </if>
|
|
|
|
- <if test="name != null and name != ''">
|
|
|
|
- AND a.name LIKE
|
|
|
|
- <if test="dbName == 'oracle'">'%'||#{name}||'%'</if>
|
|
|
|
- <if test="dbName == 'mssql'">'%'+#{name}+'%'</if>
|
|
|
|
- <if test="dbName == 'mysql'">concat('%',#{name},'%')</if>
|
|
|
|
- </if>
|
|
|
|
-
|
|
|
|
- </where>
|
|
|
|
- </select>
|
|
|
|
- <select id="findSmallTypeList" resultType="com.caimei.modules.product.entity.ProductSmallType">
|
|
|
|
- SELECT
|
|
|
|
- *
|
|
|
|
- FROM smalltype a
|
|
|
|
- <where>
|
|
|
|
- <if test="smallTypeID != null and smallTypeID != ''">
|
|
|
|
- AND a.smallTypeID = #{smallTypeID}
|
|
|
|
- </if>
|
|
|
|
- <if test="bigTypeID != null and bigTypeID != ''">
|
|
|
|
- AND a.bigTypeID = #{bigTypeID}
|
|
|
|
- </if>
|
|
|
|
- <if test="name != null and name != ''">
|
|
|
|
- AND a.name LIKE
|
|
|
|
- <if test="dbName == 'oracle'">'%'||#{name}||'%'</if>
|
|
|
|
- <if test="dbName == 'mssql'">'%'+#{name}+'%'</if>
|
|
|
|
- <if test="dbName == 'mysql'">concat('%',#{name},'%')</if>
|
|
|
|
- </if>
|
|
|
|
- </where>
|
|
|
|
- </select>
|
|
|
|
- <select id="findTinyTypeList" resultType="com.caimei.modules.product.entity.ProducTinyType">
|
|
|
|
- SELECT
|
|
|
|
- *
|
|
|
|
- FROM tinytype a
|
|
|
|
- <where>
|
|
|
|
- <if test="tinyTypeID != null and tinyTypeID != ''">
|
|
|
|
- AND a.tinyTypeID = #{tinyTypeID}
|
|
|
|
- </if>
|
|
|
|
- <if test="smallTypeID != null and smallTypeID != ''">
|
|
|
|
- AND a.smallTypeID = #{smallTypeID}
|
|
|
|
- </if>
|
|
|
|
- <if test="name != null and name != ''">
|
|
|
|
- AND a.name LIKE
|
|
|
|
- <if test="dbName == 'oracle'">'%'||#{name}||'%'</if>
|
|
|
|
- <if test="dbName == 'mssql'">'%'+#{name}+'%'</if>
|
|
|
|
- <if test="dbName == 'mysql'">concat('%',#{name},'%')</if>
|
|
|
|
- </if>
|
|
|
|
- </where>
|
|
|
|
- </select>
|
|
|
|
-
|
|
|
|
- <select id="findProductRecommendList" resultType="com.caimei.modules.product.entity.CmProductRecommend">
|
|
|
|
- select
|
|
|
|
- cpr.id AS id,
|
|
|
|
- cpr.productID AS productID,
|
|
|
|
- cpr.recommendProductID AS recommendProductID,
|
|
|
|
- cpr.sort AS sort,
|
|
|
|
- pro.name AS productName,
|
|
|
|
- pro.unit AS unit,
|
|
|
|
- pro.mainImage AS img,
|
|
|
|
- cpr.shopName AS shopName
|
|
|
|
- from cm_product_recommend cpr
|
|
|
|
- join product pro on cpr.recommendProductID = pro.productID
|
|
|
|
- where cpr.productID = #{productID}
|
|
|
|
- order by cpr.sort desc
|
|
|
|
- </select>
|
|
|
|
-
|
|
|
|
- <select id="findProductRecommendCount" resultType="int">
|
|
|
|
- select
|
|
|
|
- count(1)
|
|
|
|
- from cm_product_recommend cpr
|
|
|
|
- where cpr.productID = #{productID}
|
|
|
|
- </select>
|
|
|
|
-
|
|
|
|
- <select id="findProductList" resultType="com.caimei.modules.product.entity.CmProductRecommend">
|
|
|
|
- select
|
|
|
|
- a.productID AS productID,
|
|
|
|
- a.name AS productName,
|
|
|
|
- a.unit AS unit,
|
|
|
|
- a.mainImage AS img,
|
|
|
|
- s.name AS shopName
|
|
|
|
- from product a
|
|
|
|
- <include refid="ActivityJoins"/>
|
|
|
|
- <where>
|
|
|
|
- <choose>
|
|
|
|
- <when test="commodityType != null and commodityType != ''">
|
|
|
|
- AND a.commodityType = #{commodityType}
|
|
|
|
- </when>
|
|
|
|
- <when test="bigTypeID != null and bigTypeID != ''">
|
|
|
|
- AND a.bigTypeID = #{bigTypeID}
|
|
|
|
- </when>
|
|
|
|
- <when test="smallTypeID != null and smallTypeID != ''">
|
|
|
|
- AND a.smallTypeID = #{smallTypeID}
|
|
|
|
- </when>
|
|
|
|
- <when test="tinyTypeID != null and tinyTypeID != ''">
|
|
|
|
- AND a.tinyTypeID = #{tinyTypeID}
|
|
|
|
- </when>
|
|
|
|
- </choose>
|
|
|
|
- <if test="productName != null and productName != ''">
|
|
|
|
- and a.name like concat('%', #{productName} ,'%')
|
|
|
|
- </if>
|
|
|
|
- <if test="shopName != null and shopName != ''">
|
|
|
|
- and s.name like concat('%', #{shopName} ,'%')
|
|
|
|
- </if>
|
|
|
|
- and a.productCategory = 1
|
|
|
|
- </where>
|
|
|
|
- <!-- limit 0, 10-->
|
|
|
|
- </select>
|
|
|
|
-
|
|
|
|
- <update id="updateRecommendType">
|
|
|
|
- UPDATE product SET
|
|
|
|
- recommendType = #{recommendType}
|
|
|
|
- WHERE productID = #{productID}
|
|
|
|
- </update>
|
|
|
|
-
|
|
|
|
- <update id="updateBrnadId">
|
|
|
|
- UPDATE product
|
|
|
|
- set brandID = #{brandID}
|
|
|
|
- WHERE productID = #{productID}
|
|
|
|
- </update>
|
|
|
|
-
|
|
|
|
- <update id="updateProductByBrandId">
|
|
|
|
- UPDATE product
|
|
|
|
- set brandID = null
|
|
|
|
- WHERE brandID = #{brandId}
|
|
|
|
- </update>
|
|
|
|
- <select id="getProductIdByBrandId" resultType="java.lang.Integer">
|
|
|
|
- SELECT productID FROM product WHERE brandID = #{brandId}
|
|
|
|
- </select>
|
|
|
|
- <update id="updateTinyType">
|
|
|
|
- UPDATE product
|
|
|
|
- set tinyTypeID = #{tinyTypeID}
|
|
|
|
- WHERE productID = #{productID}
|
|
|
|
- </update>
|
|
|
|
- <update id="updateByPrimaryKeySelective" parameterType="com.caimei.modules.product.entity.Product">
|
|
|
|
- update product
|
|
|
|
- <set>
|
|
|
|
- <if test="productDescribe != null and productDescribe != ''">
|
|
|
|
- productDescribe = #{productDescribe},
|
|
|
|
- </if>
|
|
|
|
- <if test="productDetail != null and productDetail != ''">
|
|
|
|
- productDetail = #{productDetail},
|
|
|
|
- </if>
|
|
|
|
- <if test="brandID != null and brandID != ''">
|
|
|
|
- brandID = #{brandID},
|
|
|
|
- </if>
|
|
|
|
- <if test="bigTypeID != null and bigTypeID !=''">
|
|
|
|
- bigTypeID = #{bigTypeID},
|
|
|
|
- smallTypeID = #{smallTypeID},
|
|
|
|
- tinyTypeID = #{tinyTypeID},
|
|
|
|
- </if>
|
|
|
|
- <if test="preferredFlag != null and preferredFlag !=''">
|
|
|
|
- preferredFlag = #{preferredFlag},
|
|
|
|
- </if>
|
|
|
|
- <if test="shopID != null and shopID !=''">
|
|
|
|
- shopID = #{shopID},
|
|
|
|
- </if>
|
|
|
|
- <if test="name != null and name !=''">
|
|
|
|
- `name` = #{name},
|
|
|
|
- </if>
|
|
|
|
- <if test="aliasName != null and aliasName !=''">
|
|
|
|
- aliasName = #{aliasName},
|
|
|
|
- </if>
|
|
|
|
- <if test="searchKey != null and searchKey !=''">
|
|
|
|
- searchKey = #{searchKey},
|
|
|
|
- </if>
|
|
|
|
- <if test="productRemarks != null and productRemarks !=''">
|
|
|
|
- productRemarks = #{productRemarks},
|
|
|
|
- </if>
|
|
|
|
- <if test="combinationID != null and combinationID !=''">
|
|
|
|
- combinationID = #{combinationID},
|
|
|
|
- </if>
|
|
|
|
- <if test="normalPrice != null and normalPrice !=''">
|
|
|
|
- normalPrice = #{normalPrice},
|
|
|
|
- </if>
|
|
|
|
- <if test="price != null and price !=''">
|
|
|
|
- price = #{price},
|
|
|
|
- </if>
|
|
|
|
- <if test="priceFlag != null and priceFlag !=''">
|
|
|
|
- priceFlag = #{priceFlag},
|
|
|
|
- </if>
|
|
|
|
- <if test="beautyActFlag != null and beautyActFlag !=''">
|
|
|
|
- beautyActFlag = #{beautyActFlag},
|
|
|
|
- </if>
|
|
|
|
- <if test="ladderPriceFlag != null and ladderPriceFlag !=''">
|
|
|
|
- ladderPriceFlag = #{ladderPriceFlag},
|
|
|
|
- </if>
|
|
|
|
- <if test="stock != null and stock !=''">
|
|
|
|
- stock = #{stock},
|
|
|
|
- </if>
|
|
|
|
- <if test="hasSkuFlag != null and hasSkuFlag !=''">
|
|
|
|
- hasSkuFlag = #{hasSkuFlag},
|
|
|
|
- </if>
|
|
|
|
- <if test="mainImage != null and mainImage !=''">
|
|
|
|
- mainImage = #{mainImage},
|
|
|
|
- </if>
|
|
|
|
- <if test="propertiesInfo != null and propertiesInfo !=''">
|
|
|
|
- propertiesInfo = #{propertiesInfo},
|
|
|
|
- </if>
|
|
|
|
- <if test="addTime != null and addTime !=''">
|
|
|
|
- addTime = #{addTime},
|
|
|
|
- </if>
|
|
|
|
- <if test="updateTime != null and updateTime !=''">
|
|
|
|
- updateTime = #{updateTime},
|
|
|
|
- </if>
|
|
|
|
- <if test="weekSellNumber != null and weekSellNumber !=''">
|
|
|
|
- weekSellNumber = #{weekSellNumber},
|
|
|
|
- </if>
|
|
|
|
- <if test="beforeValidFlag != null and beforeValidFlag !=''">
|
|
|
|
- beforeValidFlag = #{beforeValidFlag},
|
|
|
|
- </if>
|
|
|
|
- <if test="validFlag != null and validFlag !=''">
|
|
|
|
- validFlag = #{validFlag},
|
|
|
|
- </if>
|
|
|
|
- <if test="favoriteTimes != null and favoriteTimes !=''">
|
|
|
|
- favoriteTimes = #{favoriteTimes},
|
|
|
|
- </if>
|
|
|
|
- <if test="commentScore != null and commentScore !=''">
|
|
|
|
- commentScore = #{commentScore},
|
|
|
|
- </if>
|
|
|
|
- <if test="commentTimes != null and commentTimes !=''">
|
|
|
|
- commentTimes = #{commentTimes},
|
|
|
|
- </if>
|
|
|
|
- <if test="selfRecommendFlag != null and selfRecommendFlag !=''">
|
|
|
|
- selfRecommendFlag = #{selfRecommendFlag},
|
|
|
|
- </if>
|
|
|
|
- <if test="sysRecommendFlag != null and sysRecommendFlag !=''">
|
|
|
|
- sysRecommendFlag = #{sysRecommendFlag},
|
|
|
|
- </if>
|
|
|
|
- <if test="sortIndex != null and sortIndex != ''">
|
|
|
|
- sortIndex = #{sortIndex},
|
|
|
|
- </if>
|
|
|
|
- <if test="featuredFlag != null and featuredFlag !=''">
|
|
|
|
- featuredFlag = #{featuredFlag},
|
|
|
|
- </if>
|
|
|
|
- <if test="featuredSortIndex != null and featuredSortIndex !=''">
|
|
|
|
- featuredSortIndex = #{featuredSortIndex},
|
|
|
|
- </if>
|
|
|
|
- <if test="productCode != null and productCode !=''">
|
|
|
|
- productCode = #{productCode},
|
|
|
|
- </if>
|
|
|
|
- <if test="unit != null and unit !=''">
|
|
|
|
- unit = #{unit},
|
|
|
|
- </if>
|
|
|
|
- <if test="synToERPFlag != null and synToERPFlag !=''">
|
|
|
|
- synToERPFlag = #{synToERPFlag},
|
|
|
|
- </if>
|
|
|
|
- <if test="allAreaFlag != null and allAreaFlag !=''">
|
|
|
|
- allAreaFlag = #{allAreaFlag},
|
|
|
|
- </if>
|
|
|
|
- <if test="provinceIDs != null and provinceIDs !=''">
|
|
|
|
- provinceIDs = #{provinceIDs},
|
|
|
|
- </if>
|
|
|
|
- <if test="serviceNumber != null and serviceNumber !=''">
|
|
|
|
- serviceNumber = #{serviceNumber},
|
|
|
|
- </if>
|
|
|
|
- <if test="maxBuyNumber != null and maxBuyNumber !=''">
|
|
|
|
- maxBuyNumber = #{maxBuyNumber},
|
|
|
|
- </if>
|
|
|
|
- <if test="minBuyNumber != null and minBuyNumber !=''">
|
|
|
|
- minBuyNumber = #{minBuyNumber},
|
|
|
|
- </if>
|
|
|
|
- <if test="packageCount != null and packageCount !=''">
|
|
|
|
- packageCount = #{packageCount},
|
|
|
|
- </if>
|
|
|
|
- <if test="byFlag != null and byFlag !=''">
|
|
|
|
- byFlag = #{byFlag},
|
|
|
|
- </if>
|
|
|
|
- <if test="normalProductFlag != null and normalProductFlag !=''">
|
|
|
|
- normalProductFlag = #{normalProductFlag},
|
|
|
|
- </if>
|
|
|
|
- <if test="wholeSaleProductFlag != null and wholeSaleProductFlag !=''">
|
|
|
|
- wholeSaleProductFlag = #{wholeSaleProductFlag},
|
|
|
|
- </if>
|
|
|
|
- <if test="promotionProductFlag != null and promotionProductFlag !=''">
|
|
|
|
- promotionProductFlag = #{promotionProductFlag},
|
|
|
|
- </if>
|
|
|
|
- <if test="groupBuyProductFlag != null and groupBuyProductFlag !=''">
|
|
|
|
- groupBuyProductFlag = #{groupBuyProductFlag},
|
|
|
|
- </if>
|
|
|
|
- <if test="step != null and step !=''">
|
|
|
|
- step = #{step},
|
|
|
|
- </if>
|
|
|
|
- <if test="actFlag != null and actFlag !=''">
|
|
|
|
- actFlag = #{actFlag},
|
|
|
|
- </if>
|
|
|
|
- <if test="actSort != null and actSort !=''">
|
|
|
|
- actSort = #{actSort},
|
|
|
|
- </if>
|
|
|
|
- <if test="actType != null and actType !=''">
|
|
|
|
- actType = #{actType},
|
|
|
|
- </if>
|
|
|
|
- <if test="onlineTime != null and onlineTime !=''">
|
|
|
|
- onlineTime = #{onlineTime},
|
|
|
|
- </if>
|
|
|
|
- <if test="downlineTime != null and downlineTime !=''">
|
|
|
|
- downlineTime = #{downlineTime},
|
|
|
|
- </if>
|
|
|
|
- <if test="freePostFlag != null and freePostFlag !=''">
|
|
|
|
- freePostFlag = #{freePostFlag},
|
|
|
|
- </if>
|
|
|
|
- <if test="costPrice != null and costPrice != ''">
|
|
|
|
- costPrice = #{costPrice},
|
|
|
|
- </if>
|
|
|
|
- <if test="costProportional != null and costProportional !=''">
|
|
|
|
- costProportional = #{costProportional},
|
|
|
|
- </if>
|
|
|
|
- <if test="costCheckFlag != null and costCheckFlag !=''">
|
|
|
|
- costCheckFlag = #{costCheckFlag},
|
|
|
|
- </if>
|
|
|
|
- <if test="precisehKey != null and precisehKey !=''">
|
|
|
|
- precisehKey = #{precisehKey},
|
|
|
|
- </if>
|
|
|
|
- <if test="visibility != null and visibility !=''">
|
|
|
|
- visibility = #{visibility},
|
|
|
|
- </if>
|
|
|
|
- <if test="commodityDetailsFlag != null and commodityDetailsFlag != ''">
|
|
|
|
- commodityDetailsFlag = #{commodityDetailsFlag},
|
|
|
|
- </if>
|
|
|
|
- <if test="productType != null and productType !=''">
|
|
|
|
- productType = #{productType},
|
|
|
|
- </if>
|
|
|
|
- <if test="qualificationImg != null and qualificationImg !=''">
|
|
|
|
- qualificationImg = #{qualificationImg},
|
|
|
|
- </if>
|
|
|
|
- <if test="qualificationImg != null and qualificationImg !=''">
|
|
|
|
- qualificationImg = #{qualificationImg},
|
|
|
|
- </if>
|
|
|
|
- <if test="invoiceType != null and invoiceType !=''">
|
|
|
|
- invoiceType = #{invoiceType},
|
|
|
|
- </if>
|
|
|
|
- <if test="taxPoint != null and taxPoint !=''">
|
|
|
|
- taxPoint = #{taxPoint},
|
|
|
|
- </if>
|
|
|
|
- <if test="supplierTaxPoint != null and supplierTaxPoint !=''">
|
|
|
|
- supplierTaxPoint = #{supplierTaxPoint},
|
|
|
|
- </if>
|
|
|
|
- <if test="endTimeStr != null and endTimeStr !=''">
|
|
|
|
- endTimeStr = #{endTimeStr},
|
|
|
|
- </if>
|
|
|
|
- <if test="tags != null and tags !=''">
|
|
|
|
- tags = #{tags},
|
|
|
|
- </if>
|
|
|
|
- <if test="recommendType != null and recommendType !=''">
|
|
|
|
- recommendType = #{recommendType},
|
|
|
|
- </if>
|
|
|
|
- <if test="machineType != null and machineType !=''">
|
|
|
|
- machineType = #{machineType},
|
|
|
|
- </if>
|
|
|
|
- <if test="includedTax != null and includedTax !=''">
|
|
|
|
- includedTax = #{includedTax},
|
|
|
|
- </if>
|
|
|
|
- <if test="invoiceType != null and invoiceType !=''">
|
|
|
|
- invoiceType = #{invoiceType},
|
|
|
|
- </if>
|
|
|
|
- <if test="commodityType != null and commodityType != ''">
|
|
|
|
- commodityType = #{commodityType},
|
|
|
|
- </if>
|
|
|
|
- <if test="trainingMethod != null">
|
|
|
|
- trainingMethod = #{trainingMethod},
|
|
|
|
- </if>
|
|
|
|
- <if test="trainingType != null">
|
|
|
|
- trainingType = #{trainingType},
|
|
|
|
- </if>
|
|
|
|
- <if test="trainingFee != null">
|
|
|
|
- trainingFee = #{trainingFee},
|
|
|
|
- </if>
|
|
|
|
- <if test="qualificationNo !=null and qualificationNo != ''">
|
|
|
|
- qualificationNo=#{qualificationNo},
|
|
|
|
- </if>
|
|
|
|
- <if test="productName !=null and productName !=''">
|
|
|
|
- productName=#{productName},
|
|
|
|
- </if>
|
|
|
|
- <if test="qualificationTime !=null and qualificationTime!=''">
|
|
|
|
- qualificationTime=#{qualificationTime},
|
|
|
|
- </if>
|
|
|
|
- <if test="qualificationLink !=null and qualificationLink!=''">
|
|
|
|
- qualificationLink=#{qualificationLink},
|
|
|
|
- </if>
|
|
|
|
-
|
|
|
|
- newProductType=#{newProductType},
|
|
|
|
- showFlag=#{showFlag},
|
|
|
|
- announType=#{announType},
|
|
|
|
- splitCode = #{splitCode}
|
|
|
|
- </set>
|
|
|
|
- where productID = #{productID}
|
|
|
|
- </update>
|
|
|
|
- <update id="updateproductDetailInfo" parameterType="com.caimei.modules.product.entity.ProductDetailInfo">
|
|
|
|
- update productdetailinfo
|
|
|
|
- <set>
|
|
|
|
- <if test="propValueAlias != null and propValueAlias != ''">
|
|
|
|
- propValueAlias = #{propValueAlias},
|
|
|
|
- </if>
|
|
|
|
- <if test="propValueImages != null and propValueImages !=''">
|
|
|
|
- propValueImages = #{propValueImages},
|
|
|
|
- </if>
|
|
|
|
- <if test="detailInfo != null">
|
|
|
|
- detailInfo = #{detailInfo},
|
|
|
|
- </if>
|
|
|
|
- <if test="commonDetailInfo != null">
|
|
|
|
- commonDetailInfo = #{commonDetailInfo},
|
|
|
|
- </if>
|
|
|
|
- <if test="detailInfoTxt != null">
|
|
|
|
- detailInfoTxt = #{detailInfoTxt},
|
|
|
|
- </if>
|
|
|
|
- <if test="seoTitle != null and seoTitle !=''">
|
|
|
|
- seoTitle = #{seoTitle},
|
|
|
|
- </if>
|
|
|
|
- <if test="seoKeyword != null and seoKeyword !=''">
|
|
|
|
- seoKeyword = #{seoKeyword},
|
|
|
|
- </if>
|
|
|
|
- <if test="seoDes != null and seoDes !=''">
|
|
|
|
- seoDes = #{seoDes},
|
|
|
|
- </if>
|
|
|
|
- <if test="serviceInfo != null ">
|
|
|
|
- serviceInfo = #{serviceInfo},
|
|
|
|
- </if>
|
|
|
|
- <if test="orderInfo != null ">
|
|
|
|
- orderInfo = #{orderInfo},
|
|
|
|
- </if>
|
|
|
|
- </set>
|
|
|
|
- where productID = #{productID}
|
|
|
|
- </update>
|
|
|
|
- <update id="updateLadderPrice">
|
|
|
|
- update product_ladder_price
|
|
|
|
- set productId = #{productId},
|
|
|
|
- ladderNum = #{ladderNum},
|
|
|
|
- buyNum = #{buyNum},
|
|
|
|
- buyPrice = #{buyPrice},
|
|
|
|
- updateBy = #{updateBy},
|
|
|
|
- updateDate = #{updateDate},
|
|
|
|
- delFlag = #{delFlag}
|
|
|
|
- where id = #{id}
|
|
|
|
- </update>
|
|
|
|
- <update id="updateMainImage">
|
|
|
|
- update product
|
|
|
|
- set mainImage =#{mainImage}
|
|
|
|
- where productID=#{productID}
|
|
|
|
- </update>
|
|
|
|
-
|
|
|
|
- <select id="getProductByTypeName" resultType="com.caimei.modules.brand.entity.BrandAndProductType">
|
|
|
|
- select
|
|
|
|
- b.name AS "bigTypeName",b.bigTypeID,s.`name` AS "smallTypeName",s.smalltypeID,t.name AS "tinyTypeName" ,t.tinytypeID
|
|
|
|
- from tinytype t LEFT JOIN smalltype s on t.smallTypeID = s.smallTypeID LEFT JOIN bigtype b ON b.bigTypeID = s.bigTypeID
|
|
|
|
- where b.`name` = #{name} AND s.`name` = #{name1} AND t.name = #{name2}
|
|
|
|
- </select>
|
|
|
|
-
|
|
|
|
- <select id="findRecommendBySys" resultType="com.caimei.modules.product.entity.CmProductRecommend">
|
|
|
|
- select
|
|
|
|
- p.productID AS recommendProductID,
|
|
|
|
- p.name AS productName,
|
|
|
|
- p.unit AS unit,
|
|
|
|
- p.mainImage AS img,
|
|
|
|
- s.name AS shopName
|
|
|
|
- from product p
|
|
|
|
- left join shop s on s.shopID = p.shopID
|
|
|
|
- where p.tinyTypeID = #{tinyTypeID} and p.productCategory = 1
|
|
|
|
- order by p.sellNumber
|
|
|
|
- desc limit 0, 7
|
|
|
|
- </select>
|
|
|
|
-
|
|
|
|
- <select id="getSecondHandRecommend" resultType="CmSecondHandRecommendVo">
|
|
|
|
- select p.productID AS id,
|
|
|
|
- 1 AS type,
|
|
|
|
- p.name AS name,
|
|
|
|
- p.unit AS unit,
|
|
|
|
- p.mainImage AS img,
|
|
|
|
- s.name AS shopName,
|
|
|
|
- p.productCategory as "productCategory"
|
|
|
|
- from product p
|
|
|
|
- left join shop s on s.shopID = p.shopID
|
|
|
|
- where p.productID = #{productID}
|
|
|
|
- AND p.validFlag = '2'
|
|
|
|
- </select>
|
|
|
|
-
|
|
|
|
- <select id="querySecondHandRecommend" resultType="CmSecondHandRecommendVo">
|
|
|
|
- select
|
|
|
|
- p.productID AS id,
|
|
|
|
- 1 AS type,
|
|
|
|
- p.name AS name,
|
|
|
|
- p.unit AS unit,
|
|
|
|
- p.mainImage AS img,
|
|
|
|
- s.name AS shopName,
|
|
|
|
- p.productCategory as "productCategory"
|
|
|
|
- from product p
|
|
|
|
- left join shop s on s.shopID = p.shopID
|
|
|
|
- <where>
|
|
|
|
- <if test="productID != null and productID != ''">
|
|
|
|
- p.productID = #{productID}
|
|
|
|
- </if>
|
|
|
|
- <if test="productName != null and productName != ''">
|
|
|
|
- and p.name like concat('%', #{productName} ,'%')
|
|
|
|
- </if>
|
|
|
|
- AND p.validFlag = '2'
|
|
|
|
- and p.productCategory = #{queryProductType}
|
|
|
|
- </where>
|
|
|
|
- limit 0, 10
|
|
|
|
- </select>
|
|
|
|
- <select id="queryProductDetailInfo" resultType="com.caimei.modules.product.entity.ProductDetailInfo">
|
|
|
|
- SELECT * FROM
|
|
|
|
- productdetailinfo
|
|
|
|
- where productID = #{productID}
|
|
|
|
- </select>
|
|
|
|
- <select id="qualification" resultType="com.caimei.modules.product.entity.Product">
|
|
|
|
- SELECT qualificationNo,productName,qualificationTime,qualificationLink FROM product
|
|
|
|
- where productID = #{productID}
|
|
|
|
- </select>
|
|
|
|
- <select id="findProductLadderPrice" resultType="com.caimei.po.ProductLadderPrice">
|
|
|
|
- SELECT *
|
|
|
|
- FROM product_ladder_price
|
|
|
|
- WHERE
|
|
|
|
- productId = #{productId}
|
|
|
|
- AND userType = #{userType}
|
|
|
|
- AND buyNum is NOT null
|
|
|
|
- AND buyPrice is NOT null
|
|
|
|
- AND delFlag = 0
|
|
|
|
- ORDER BY ladderNum ASC
|
|
|
|
- </select>
|
|
|
|
- <select id="findActList" resultType="com.caimei.modules.product.entity.Product">
|
|
|
|
- SELECT
|
|
|
|
- <include refid="productColumns"/>
|
|
|
|
- FROM product a
|
|
|
|
- <include refid="productJoins"/>
|
|
|
|
- <where>
|
|
|
|
- <if test="id !=null and id !=''">
|
|
|
|
- AND a.productID=#{id}
|
|
|
|
- </if>
|
|
|
|
- <if test="shopID != null and shopID != ''">
|
|
|
|
- AND a.shopID = #{shopID}
|
|
|
|
- </if>
|
|
|
|
- <if test="name != null and name != ''">
|
|
|
|
- AND a.name LIKE
|
|
|
|
- <if test="dbName == 'oracle'">'%'||#{name}||'%'</if>
|
|
|
|
- <if test="dbName == 'mssql'">'%'+#{name}+'%'</if>
|
|
|
|
- <if test="dbName == 'mysql'">concat('%',#{name},'%')</if>
|
|
|
|
- </if>
|
|
|
|
- <if test="shopName != null and shopName != ''">
|
|
|
|
- AND s.name LIKE
|
|
|
|
- <if test="dbName == 'oracle'">'%'||#{shopName}||'%'</if>
|
|
|
|
- <if test="dbName == 'mssql'">'%'+#{shopName}+'%'</if>
|
|
|
|
- <if test="dbName == 'mysql'">concat('%',#{shopName},'%')</if>
|
|
|
|
- </if>
|
|
|
|
- <if test="validFlag !=null and validFlag !=''">
|
|
|
|
- AND a.validFlag=#{validFlag}
|
|
|
|
- </if>
|
|
|
|
- <if test="actFlag !=null and actFlag !=''">
|
|
|
|
- AND a.actFlag=#{actFlag}
|
|
|
|
- </if>
|
|
|
|
- <if test="actType !=null and actType !=''">
|
|
|
|
- AND a.actType=#{actType}
|
|
|
|
- </if>
|
|
|
|
- AND a.actStatus = 1
|
|
|
|
- and a.productCategory = 1
|
|
|
|
- </where>
|
|
|
|
- <choose>
|
|
|
|
- <when test="page !=null and page.orderBy != null and page.orderBy != ''">
|
|
|
|
- ORDER BY ${page.orderBy}
|
|
|
|
- </when>
|
|
|
|
- <otherwise>
|
|
|
|
- order by case WHEN a.validFlag = 1 then 0 else 1 END asc,a.productID desc
|
|
|
|
- </otherwise>
|
|
|
|
- </choose>
|
|
|
|
- </select>
|
|
|
|
-
|
|
|
|
- <select id="findAllProduct" resultType="com.caimei.modules.product.entity.Product">
|
|
|
|
- select p.productID,p.mainImage,p.name,s.name as shopName from product p left join shop s on p.shopID = s.shopID
|
|
|
|
- <where>
|
|
|
|
- (p.actFlag=0 or p.actType is null) and p.validFlag = 2 and p.productCategory = 1
|
|
|
|
- <if test="productIds != null and productIds != '' ">
|
|
|
|
- and p.productID != #{productIds}
|
|
|
|
- </if>
|
|
|
|
- <if test="productID != null and productID != ''">
|
|
|
|
- and p.productID = #{productID}
|
|
|
|
- </if>
|
|
|
|
- <if test="name != null and name != ''">
|
|
|
|
- and p.name like concat('%',#{name},'%')
|
|
|
|
- </if>
|
|
|
|
- <if test="shopName != null and shopName != ''">
|
|
|
|
- and s.name like concat('%',#{shopName},'%')
|
|
|
|
- </if>
|
|
|
|
- </where>
|
|
|
|
- order by productID asc
|
|
|
|
- </select>
|
|
|
|
-
|
|
|
|
- <select id="findProductImage" resultType="com.caimei.modules.product.entity.Product">
|
|
|
|
- SELECT
|
|
|
|
- <include refid="productColumns"/>
|
|
|
|
- FROM product a
|
|
|
|
- <include refid="productJoins"/>
|
|
|
|
- <where>
|
|
|
|
- <if test="productID !=null">
|
|
|
|
- AND a.productID=#{productID}
|
|
|
|
- </if>
|
|
|
|
- <if test="shopID != null and shopID != ''">
|
|
|
|
- AND a.shopID = #{shopID}
|
|
|
|
- </if>
|
|
|
|
- <if test="name != null and name != ''">
|
|
|
|
- AND a.name LIKE concat('%',#{name},'%')
|
|
|
|
- </if>
|
|
|
|
- <if test="shopName != null and shopName != ''">
|
|
|
|
- AND s.name LIKE concat('%',#{shopName},'%')
|
|
|
|
- </if>
|
|
|
|
- <if test="validFlag !=null and validFlag !=''">
|
|
|
|
- AND a.validFlag=#{validFlag}
|
|
|
|
- </if>
|
|
|
|
- <if test="productCategory !=null and productCategory !=''">
|
|
|
|
- AND a.productCategory=#{productCategory}
|
|
|
|
- </if>
|
|
|
|
- <if test="ids != null and ids.size() > 0">
|
|
|
|
- AND a.productID NOT IN
|
|
|
|
- <foreach collection="ids" close=")" separator="," open="(" item="id">
|
|
|
|
- #{id}
|
|
|
|
- </foreach>
|
|
|
|
- </if>
|
|
|
|
- </where>
|
|
|
|
- <choose>
|
|
|
|
- <when test="page !=null and page.orderBy != null and page.orderBy != ''">
|
|
|
|
- ORDER BY ${page.orderBy}
|
|
|
|
- </when>
|
|
|
|
- <otherwise>
|
|
|
|
- order by a.productID asc
|
|
|
|
- </otherwise>
|
|
|
|
- </choose>
|
|
|
|
- </select>
|
|
|
|
- <select id="findProductDetail" resultType="java.lang.String">
|
|
|
|
- select productDetail from product where productID = #{productID}
|
|
|
|
- </select>
|
|
|
|
- <select id="findProductDescribe" resultType="java.lang.String">
|
|
|
|
- select productDescribe from product where productID = #{productID}
|
|
|
|
- </select>
|
|
|
|
- <select id="findSepcialShopList" resultType="com.caimei.modules.product.entity.CmShop">
|
|
|
|
- select name,shopID
|
|
|
|
- from shop
|
|
|
|
- where shopType=2
|
|
|
|
- </select>
|
|
|
|
|
|
+ <update id="update">
|
|
|
|
+ UPDATE product
|
|
|
|
+ SET productID = #{id},
|
|
|
|
+ brandID = #{brandID},
|
|
|
|
+ tinyTypeID = #{tinyTypeID},
|
|
|
|
+ selfTypeID = #{selfTypeID},
|
|
|
|
+ shopID = #{shopID},
|
|
|
|
+ name = #{name},
|
|
|
|
+ searchKey = #{searchKey},
|
|
|
|
+ normalPrice = #{normalPrice},
|
|
|
|
+ price = #{price},
|
|
|
|
+ priceFlag = #{priceFlag},
|
|
|
|
+ beautyActFlag = #{beautyActFlag},
|
|
|
|
+ ladderPriceFlag = #{ladderPriceFlag},
|
|
|
|
+ stock = #{stock},
|
|
|
|
+ hasSkuFlag = #{hasSkuFlag},
|
|
|
|
+ mainImage = #{mainImage},
|
|
|
|
+ propertiesInfo = #{propertiesInfo},
|
|
|
|
+ addTime = #{addTime},
|
|
|
|
+ updateTime = #{updateTime},
|
|
|
|
+ sellNumber = #{sellNumber},
|
|
|
|
+ weekSellNumber = #{weekSellNumber},
|
|
|
|
+ beforeValidFlag = #{beforeValidFlag},
|
|
|
|
+ validFlag = #{validFlag},
|
|
|
|
+ favoriteTimes = #{favoriteTimes},
|
|
|
|
+ commentScore = #{commentScore},
|
|
|
|
+ commentTimes = #{commentTimes},
|
|
|
|
+ selfRecommendFlag = #{selfRecommendFlag},
|
|
|
|
+ sysRecommendFlag = #{sysRecommendFlag},
|
|
|
|
+ sortIndex = #{sortIndex},
|
|
|
|
+ featuredFlag = #{featuredFlag},
|
|
|
|
+ featuredSortIndex = #{featuredSortIndex},
|
|
|
|
+ productCode = #{productCode},
|
|
|
|
+ unit = #{unit},
|
|
|
|
+ synToERPFlag = #{synToERPFlag},
|
|
|
|
+ allAreaFlag = #{allAreaFlag},
|
|
|
|
+ provinceIDs = #{provinceIDs},
|
|
|
|
+ serviceNumber = #{serviceNumber},
|
|
|
|
+ maxBuyNumber = #{maxBuyNumber},
|
|
|
|
+ minBuyNumber = #{minBuyNumber},
|
|
|
|
+ packageCount = #{packageCount},
|
|
|
|
+ byFlag = #{byFlag},
|
|
|
|
+ normalProductFlag = #{normalProductFlag},
|
|
|
|
+ wholeSaleProductFlag = #{wholeSaleProductFlag},
|
|
|
|
+ promotionProductFlag = #{promotionProductFlag},
|
|
|
|
+ groupBuyProductFlag = #{groupBuyProductFlag},
|
|
|
|
+ step = #{step},
|
|
|
|
+ actFlag = #{actFlag},
|
|
|
|
+ actType = #{actType},
|
|
|
|
+ onlineTime = #{onlineTime},
|
|
|
|
+ downlineTime = #{downlineTime},
|
|
|
|
+ freePostFlag = #{freePostFlag},
|
|
|
|
+ costPrice = #{costPrice},
|
|
|
|
+ costProportional = #{costProportional},
|
|
|
|
+ costCheckFlag = #{costCheckFlag},
|
|
|
|
+ precisehKey = #{precisehKey},
|
|
|
|
+ actSort = #{actSort},
|
|
|
|
+ newProductType=#{newProductType}
|
|
|
|
+
|
|
|
|
+ WHERE productID = #{id}
|
|
|
|
+ </update>
|
|
|
|
+ <select id="productList" resultType="com.caimei.modules.product.entity.Product">
|
|
|
|
+ SELECT
|
|
|
|
+ *
|
|
|
|
+ FROM product a
|
|
|
|
+ <where>
|
|
|
|
+ a.newvalidFlag=1
|
|
|
|
+ <if test="productID !=null and productID !=''">
|
|
|
|
+ and a.productID=#{productID}
|
|
|
|
+ </if>
|
|
|
|
+ </where>
|
|
|
|
+ </select>
|
|
|
|
+ <select id="newfindProductImage" resultType="com.caimei.modules.product.entity.Product">
|
|
|
|
+ SELECT
|
|
|
|
+ <include refid="productColumns"/>
|
|
|
|
+ FROM product a
|
|
|
|
+ <include refid="productJoins"/>
|
|
|
|
+ <where>
|
|
|
|
+ <if test="productID !=null">
|
|
|
|
+ AND a.productID=#{productID}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="name != null and name != ''">
|
|
|
|
+ AND a.name LIKE concat('%',#{name},'%')
|
|
|
|
+ </if>
|
|
|
|
+ <if test="shopName != null and shopName != ''">
|
|
|
|
+ AND s.name LIKE concat('%',#{shopName},'%')
|
|
|
|
+ </if>
|
|
|
|
+ <if test="showFlag !=null and showFlag !=''">
|
|
|
|
+ AND a.showFlag=#{showFlag}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="ids != null and ids.size() > 0">
|
|
|
|
+ AND a.productID NOT IN
|
|
|
|
+ <foreach collection="ids" close=")" separator="," open="(" item="id">
|
|
|
|
+ #{id}
|
|
|
|
+ </foreach>
|
|
|
|
+ </if>
|
|
|
|
+ AND p.newvalidFlag = 1
|
|
|
|
+ AND p.newProductType=1
|
|
|
|
+ AND p.validFlag = 2
|
|
|
|
+ AND p.showFlag!=2
|
|
|
|
+
|
|
|
|
+ </where>
|
|
|
|
+ # 在设置重点关注时给排序值1000为了让重点关注始终在列表前端
|
|
|
|
+ order by a.sortIndex desc,a.newshowTime DESC
|
|
|
|
+ </select>
|
|
|
|
+ <update id="updateActive">
|
|
|
|
+ UPDATE product
|
|
|
|
+ <set>
|
|
|
|
+ <if test="actFlag != null and actFlag != ''">
|
|
|
|
+ actFlag = #{actFlag},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="actType != null and actType != ''">
|
|
|
|
+ actType = #{actType},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="actSort != null and actSort != ''">
|
|
|
|
+ actSort = #{actSort},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="actCreateTime != null and actCreateTime != ''">
|
|
|
|
+ actCreateTime = #{actCreateTime},
|
|
|
|
+ </if>
|
|
|
|
+ </set>
|
|
|
|
+ WHERE productID = #{productID}
|
|
|
|
+ </update>
|
|
|
|
+
|
|
|
|
+ <update id="updatePreferred">
|
|
|
|
+ UPDATE product
|
|
|
|
+ SET preferredFlag = #{preferredFlag}
|
|
|
|
+ WHERE productID = #{productID}
|
|
|
|
+ </update>
|
|
|
|
+
|
|
|
|
+ <delete id="delete">
|
|
|
|
+ DELETE
|
|
|
|
+ FROM product
|
|
|
|
+ WHERE id = #{id}
|
|
|
|
+ </delete>
|
|
|
|
+
|
|
|
|
+ <update id="deleteProduct">
|
|
|
|
+ UPDATE cm_search_recommend_product
|
|
|
|
+ SET delFlag = #{DateTime}
|
|
|
|
+ WHERE id = #{id}
|
|
|
|
+ </update>
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ <select id="getAllActType" resultType="com.caimei.po.ActType">
|
|
|
|
+ SELECT *
|
|
|
|
+ FROM acttype
|
|
|
|
+ where validFlag = 1
|
|
|
|
+ </select>
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ <select id="getSupplierProductList" resultType="com.caimei.modules.product.entity.Product">
|
|
|
|
+ SELECT
|
|
|
|
+ *
|
|
|
|
+ FROM
|
|
|
|
+ product
|
|
|
|
+ <where>
|
|
|
|
+ <if test="name != null and name != ''">
|
|
|
|
+ AND name LIKE concat('%',#{name},'%')
|
|
|
|
+ </if>
|
|
|
|
+ AND shopID = #{shopID}
|
|
|
|
+ AND (validFlag = 1 or validFlag = 2 or validFlag = 3 or validFlag = 9)
|
|
|
|
+ </where>
|
|
|
|
+ ORDER BY addTime desc
|
|
|
|
+ </select>
|
|
|
|
+
|
|
|
|
+ <select id="getGiftProductInfo" parameterType="com.caimei.modules.product.entity.GiftProduct"
|
|
|
|
+ resultType="com.caimei.modules.product.entity.GiftProduct">
|
|
|
|
+ SELECT
|
|
|
|
+ g.id as "id",
|
|
|
|
+ g.fullGiftProductId as "fullGiftProductId",
|
|
|
|
+ g.giftProductId as "giftProductId",
|
|
|
|
+ g.actType as "actType",
|
|
|
|
+ g.giftProductNum as "giftProductNum",
|
|
|
|
+ p.name as "productName"
|
|
|
|
+ FROM
|
|
|
|
+ gift_product g
|
|
|
|
+ left join product p on p.productID = g.giftProductId
|
|
|
|
+ <where>
|
|
|
|
+ g.fullGiftProductId = #{fullGiftProductId}
|
|
|
|
+ AND g.actType = #{actType}
|
|
|
|
+ <if test="giftProductId != null and giftProductId != ''">
|
|
|
|
+ AND g.giftProductId = #{giftProductId}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="delFlag != null and delFlag != ''">
|
|
|
|
+ AND g.delFlag = #{delFlag}
|
|
|
|
+ </if>
|
|
|
|
+ and p.productCategory = 1
|
|
|
|
+ </where>
|
|
|
|
+ </select>
|
|
|
|
+
|
|
|
|
+ <select id="getProductSku" resultType="com.caimei.modules.product.entity.Sku">
|
|
|
|
+ SELECT
|
|
|
|
+ *
|
|
|
|
+ FROM
|
|
|
|
+ sku
|
|
|
|
+ <where>
|
|
|
|
+ productID = #{productId}
|
|
|
|
+ AND validFlag = 1
|
|
|
|
+ </where>
|
|
|
|
+ </select>
|
|
|
|
+
|
|
|
|
+ <select id="findProductBigTypeByProductID" parameterType="java.lang.Integer" resultType="java.lang.String">
|
|
|
|
+ SELECT
|
|
|
|
+ tb.name
|
|
|
|
+ FROM
|
|
|
|
+ bigType AS tb
|
|
|
|
+ INNER JOIN smallType AS ts
|
|
|
|
+ ON tb.bigTypeID = ts.bigTypeID
|
|
|
|
+ INNER JOIN tinyType AS tt
|
|
|
|
+ ON ts.smallTypeID = tt.smallTypeID
|
|
|
|
+ INNER JOIN product AS tp
|
|
|
|
+ ON tt.tinyTypeID = tp.tinyTypeID
|
|
|
|
+ <where>
|
|
|
|
+ tp.productID = #{productId}
|
|
|
|
+ and tp.productCategory = 1
|
|
|
|
+ </where>
|
|
|
|
+ </select>
|
|
|
|
+
|
|
|
|
+ <update id="updateGiftProudct" parameterType="com.caimei.modules.product.entity.GiftProduct">
|
|
|
|
+ update gift_product
|
|
|
|
+ <set>
|
|
|
|
+ <if test="fullGiftProductId != null and !=''">
|
|
|
|
+ fullGiftProductId = #{fullGiftProductId},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="giftProductId != null and !=''">
|
|
|
|
+ giftProductId = #{giftProductId},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="productName != null and !=''">
|
|
|
|
+ productName = #{productName},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="actType != null and !=''">
|
|
|
|
+ actType = #{actType},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="giftProductNum != null and !=''">
|
|
|
|
+ giftProductNum = #{giftProductNum},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="createBy != null and !=''">
|
|
|
|
+ createBy = #{createBy.id},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="createDate != null and !=''">
|
|
|
|
+ createDate = #{createDate},
|
|
|
|
+ </if>
|
|
|
|
+
|
|
|
|
+ <if test="updateBy != null and !=''">
|
|
|
|
+ updateBy = #{updateBy.id},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="updateDate != null and !=''">
|
|
|
|
+ updateDate = #{updateDate},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="delFlag != null and !=''">
|
|
|
|
+ delFlag = #{delFlag},
|
|
|
|
+ </if>
|
|
|
|
+ </set>
|
|
|
|
+ where id = #{id}
|
|
|
|
+ </update>
|
|
|
|
+
|
|
|
|
+ <insert id="insertGiftProudct" parameterType="com.caimei.modules.product.entity.GiftProduct" keyProperty="id"
|
|
|
|
+ useGeneratedKeys="true">
|
|
|
|
+ INSERT INTO gift_product(fullGiftProductId,
|
|
|
|
+ giftProductId,
|
|
|
|
+ productName,
|
|
|
|
+ actType,
|
|
|
|
+ giftProductNum,
|
|
|
|
+ createBy,
|
|
|
|
+ createDate,
|
|
|
|
+ updateBy,
|
|
|
|
+ updateDate,
|
|
|
|
+ delFlag)
|
|
|
|
+ VALUES (#{fullGiftProductId},
|
|
|
|
+ #{giftProductId},
|
|
|
|
+ #{productName},
|
|
|
|
+ #{actType},
|
|
|
|
+ #{giftProductNum},
|
|
|
|
+ #{createBy.id},
|
|
|
|
+ #{createDate},
|
|
|
|
+ #{updateBy.id},
|
|
|
|
+ #{updateDate},
|
|
|
|
+ #{delFlag})
|
|
|
|
+ </insert>
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ <insert id="insertProductPriceRecord" parameterType="com.caimei.modules.product.entity.ProductPriceRecord"
|
|
|
|
+ keyProperty="productPriceRecordID" useGeneratedKeys="true">
|
|
|
|
+ INSERT INTO productpricerecord(`productID`,
|
|
|
|
+ `shopID`,
|
|
|
|
+ `highestUserLevelPrice`,
|
|
|
|
+ `lowestUserLevelPrice`,
|
|
|
|
+ `lowestUserLevelID`,
|
|
|
|
+ `price0`,
|
|
|
|
+ `price1`,
|
|
|
|
+ `updateTime`)
|
|
|
|
+ VALUES (#{productID},
|
|
|
|
+ #{shopID},
|
|
|
|
+ #{highestUserLevelPrice},
|
|
|
|
+ #{lowestUserLevelPrice},
|
|
|
|
+ #{lowestUserLevelID},
|
|
|
|
+ #{price0},
|
|
|
|
+ #{price1},
|
|
|
|
+ #{updateTime})
|
|
|
|
+ </insert>
|
|
|
|
+
|
|
|
|
+ <!-- <update id="updateCRMFlag">-->
|
|
|
|
+ <!-- UPDATE product a SET a.displayOnCRMFlag = #{param1}-->
|
|
|
|
+ <!-- WHERE a.productID IN-->
|
|
|
|
+ <!-- <foreach collection="param2" item="id" index="index" open="(" separator="," close=")" >-->
|
|
|
|
+ <!-- #{id}-->
|
|
|
|
+ <!-- </foreach>-->
|
|
|
|
+ <!-- </update>-->
|
|
|
|
+
|
|
|
|
+ <update id="deleteActive">
|
|
|
|
+ UPDATE product a
|
|
|
|
+ SET a.actFlag = 0
|
|
|
|
+ WHERE a.productID = #{id}
|
|
|
|
+ </update>
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ <update id="updatePostFlag">
|
|
|
|
+ UPDATE product a SET a.freePostFlag = #{param1}
|
|
|
|
+ WHERE a.productID IN
|
|
|
|
+ <foreach collection="param2" item="id" index="index" open="(" separator="," close=")">
|
|
|
|
+ #{id}
|
|
|
|
+ </foreach>
|
|
|
|
+ </update>
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ <select id="getBigTypeList" resultType="com.caimei.modules.product.entity.ProductBigType">
|
|
|
|
+ select * from bigtype
|
|
|
|
+ <where>
|
|
|
|
+ validFlag = 1
|
|
|
|
+ <if test="bigTypeID != null and bigTypeID != ''">
|
|
|
|
+ AND bigTypeID = #{bigTypeID}
|
|
|
|
+ </if>
|
|
|
|
+ </where>
|
|
|
|
+ </select>
|
|
|
|
+
|
|
|
|
+ <select id="getSmallTypeList" resultType="com.caimei.modules.product.entity.ProductSmallType">
|
|
|
|
+ select * from smalltype
|
|
|
|
+ <where>
|
|
|
|
+ validFlag = 1
|
|
|
|
+ <if test="bigTypeID != null and bigTypeID != ''">
|
|
|
|
+ AND bigTypeID = #{bigTypeID}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="smallTypeID != null and smallTypeID != ''">
|
|
|
|
+ AND smallTypeID = #{smallTypeID}
|
|
|
|
+ </if>
|
|
|
|
+ </where>
|
|
|
|
+ </select>
|
|
|
|
+
|
|
|
|
+ <select id="getTinyTypeList" resultType="com.caimei.modules.product.entity.ProducTinyType">
|
|
|
|
+ select * from tinytype
|
|
|
|
+ <where>
|
|
|
|
+ validFlag = 1
|
|
|
|
+ <if test="smallTypeID != null and smallTypeID != ''">
|
|
|
|
+ AND smallTypeID = #{smallTypeID}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="smallTypeID != null and smallTypeID != ''">
|
|
|
|
+ AND smallTypeID = #{smallTypeID}
|
|
|
|
+ </if>
|
|
|
|
+ </where>
|
|
|
|
+ </select>
|
|
|
|
+
|
|
|
|
+ <select id="getProductTypeNameAndID" resultType="map">
|
|
|
|
+ select b.name AS bigTypeName,
|
|
|
|
+ b.bigTypeID AS bigTypeID,
|
|
|
|
+ s.name AS smallTypeName,
|
|
|
|
+ s.smallTypeID AS smallTypeID,
|
|
|
|
+ t.name AS tinyTypeName,
|
|
|
|
+ t.tinyTypeID AS tinyTypeID
|
|
|
|
+ from tinytype AS t
|
|
|
|
+ join smalltype AS s on t.smallTypeID = s.smallTypeID
|
|
|
|
+ JOIN bigtype AS b on b.bigTypeID = s.bigTypeID
|
|
|
|
+ where t.tinyTypeID = #{tinyTypeID}
|
|
|
|
+ </select>
|
|
|
|
+
|
|
|
|
+ <delete id="deleteCustomClassification">
|
|
|
|
+ delete
|
|
|
|
+ from product_custom_classification
|
|
|
|
+ where productID = #{productID}
|
|
|
|
+ </delete>
|
|
|
|
+
|
|
|
|
+ <insert id="insertCustomClassification"
|
|
|
|
+ parameterType="com.caimei.modules.product.entity.ProductCustomClassification" keyProperty="userId"
|
|
|
|
+ useGeneratedKeys="true">
|
|
|
|
+ INSERT INTO product_custom_classification(productID,
|
|
|
|
+ bigTypeID,
|
|
|
|
+ smallTypeID,
|
|
|
|
+ tinyTypeID,
|
|
|
|
+ createDate,
|
|
|
|
+ updateDate)
|
|
|
|
+ VALUES (#{productID},
|
|
|
|
+ #{bigTypeID},
|
|
|
|
+ #{smallTypeID},
|
|
|
|
+ #{tinyTypeID},
|
|
|
|
+ #{createDate},
|
|
|
|
+ #{updateDate})
|
|
|
|
+ </insert>
|
|
|
|
+
|
|
|
|
+ <insert id="insertAddProduct">
|
|
|
|
+ INSERT INTO cm_search_recommend_product(productID,
|
|
|
|
+ tinyTypeID,
|
|
|
|
+ sort,
|
|
|
|
+ delFlag)
|
|
|
|
+ VALUES (#{productID},
|
|
|
|
+ #{tinyTypeID},
|
|
|
|
+ 0,
|
|
|
|
+ 0)
|
|
|
|
+ </insert>
|
|
|
|
+ <insert id="insertLadderPrice">
|
|
|
|
+ insert into product_ladder_price (productId, userType, ladderNum,
|
|
|
|
+ buyNum, buyPrice, createBy, createDate, delFlag)
|
|
|
|
+ values (#{productId}, 3, #{ladderNum},
|
|
|
|
+ #{buyNum}, #{buyPrice}, #{createBy},
|
|
|
|
+ #{createDate}, '0')
|
|
|
|
+ </insert>
|
|
|
|
+
|
|
|
|
+ <insert id="insertProduct" keyColumn="productID" keyProperty="productID"
|
|
|
|
+ parameterType="com.caimei.modules.product.entity.Product" useGeneratedKeys="true">
|
|
|
|
+ INSERT INTO `product` (
|
|
|
|
+ `brandID`,
|
|
|
|
+ `tinyTypeID`,
|
|
|
|
+ <if test="productCategory != null and productCategory != '' ">
|
|
|
|
+ `productCategory`,
|
|
|
|
+ </if>
|
|
|
|
+ `preferredFlag`,
|
|
|
|
+ `selfTypeID`,
|
|
|
|
+ `shopID`,
|
|
|
|
+ `name`,
|
|
|
|
+ `aliasName`,
|
|
|
|
+ `searchKey`,
|
|
|
|
+ `productRemarks`,
|
|
|
|
+ `normalPrice`,
|
|
|
|
+ `price`,
|
|
|
|
+ `priceFlag`,
|
|
|
|
+ `beautyActFlag`,
|
|
|
|
+ `ladderPriceFlag`,
|
|
|
|
+ <if test="stock != null and stock != '' ">
|
|
|
|
+ `stock`,
|
|
|
|
+ </if>
|
|
|
|
+ `hasSkuFlag`,
|
|
|
|
+ `mainImage`,
|
|
|
|
+ `propertiesInfo`,
|
|
|
|
+ `addTime`,
|
|
|
|
+ `updateTime`,
|
|
|
|
+ `weekSellNumber`,
|
|
|
|
+ `beforeValidFlag`,
|
|
|
|
+ `validFlag`,
|
|
|
|
+ `favoriteTimes`,
|
|
|
|
+ `commentScore`,
|
|
|
|
+ `commentTimes`,
|
|
|
|
+ `selfRecommendFlag`,
|
|
|
|
+ `sysRecommendFlag`,
|
|
|
|
+ `sortIndex`,
|
|
|
|
+ `featuredFlag`,
|
|
|
|
+ `featuredSortIndex`,
|
|
|
|
+ `productCode`,
|
|
|
|
+ `unit`,
|
|
|
|
+ `synToERPFlag`,
|
|
|
|
+ `allAreaFlag`,
|
|
|
|
+ `provinceIDs`,
|
|
|
|
+ `serviceNumber`,
|
|
|
|
+ `maxBuyNumber`,
|
|
|
|
+ `minBuyNumber`,
|
|
|
|
+ `packageCount`,
|
|
|
|
+ `byFlag`,
|
|
|
|
+ `normalProductFlag`,
|
|
|
|
+ `wholeSaleProductFlag`,
|
|
|
|
+ `promotionProductFlag`,
|
|
|
|
+ `groupBuyProductFlag`,
|
|
|
|
+ `step`,
|
|
|
|
+ `actFlag`,
|
|
|
|
+ `actStatus`,
|
|
|
|
+ `actSort`,
|
|
|
|
+ `actType`,
|
|
|
|
+ `visibility`,
|
|
|
|
+ `onlineTime`,
|
|
|
|
+ `downlineTime`,
|
|
|
|
+ `freePostFlag`,
|
|
|
|
+ `costPrice`,
|
|
|
|
+ `costProportional`,
|
|
|
|
+ `costCheckFlag`,
|
|
|
|
+ `precisehKey`,
|
|
|
|
+ `tags`,
|
|
|
|
+ `productType`,
|
|
|
|
+ `machineType`,
|
|
|
|
+ `qualificationImg`,
|
|
|
|
+ `includedTax`,
|
|
|
|
+ `taxPoint`,
|
|
|
|
+ `invoiceType`,
|
|
|
|
+ `recommendType`,
|
|
|
|
+ `combinationID`,
|
|
|
|
+ `combinationSort`,
|
|
|
|
+ announType
|
|
|
|
+ )
|
|
|
|
+ VALUES
|
|
|
|
+ (
|
|
|
|
+ #{brandID},
|
|
|
|
+ #{tinyTypeID},
|
|
|
|
+ <if test="productCategory != null and productCategory != '' ">
|
|
|
|
+ #{productCategory},
|
|
|
|
+ </if>
|
|
|
|
+ #{preferredFlag},
|
|
|
|
+ #{selfTypeID},
|
|
|
|
+ #{shopID},
|
|
|
|
+ #{name},
|
|
|
|
+ #{aliasName},
|
|
|
|
+ #{searchKey},
|
|
|
|
+ #{productRemarks},
|
|
|
|
+ #{normalPrice},
|
|
|
|
+ #{price},
|
|
|
|
+ #{priceFlag},
|
|
|
|
+ #{beautyActFlag},
|
|
|
|
+ #{ladderPriceFlag},
|
|
|
|
+ <if test="stock != null and stock != '' ">
|
|
|
|
+ #{stock},
|
|
|
|
+ </if>
|
|
|
|
+ #{hasSkuFlag},
|
|
|
|
+ #{mainImage},
|
|
|
|
+ #{propertiesInfo},
|
|
|
|
+ #{addTime},
|
|
|
|
+ #{updateTime},
|
|
|
|
+ #{weekSellNumber},
|
|
|
|
+ #{beforeValidFlag},
|
|
|
|
+ #{validFlag},
|
|
|
|
+ #{favoriteTimes},
|
|
|
|
+ #{commentScore},
|
|
|
|
+ #{commentTimes},
|
|
|
|
+ #{selfRecommendFlag},
|
|
|
|
+ #{sysRecommendFlag},
|
|
|
|
+ #{sortIndex},
|
|
|
|
+ #{featuredFlag},
|
|
|
|
+ #{featuredSortIndex},
|
|
|
|
+ #{productCode},
|
|
|
|
+ #{unit},
|
|
|
|
+ #{synToERPFlag},
|
|
|
|
+ #{allAreaFlag},
|
|
|
|
+ #{provinceIDs},
|
|
|
|
+ #{serviceNumber},
|
|
|
|
+ #{maxBuyNumber},
|
|
|
|
+ #{minBuyNumber},
|
|
|
|
+ #{packageCount},
|
|
|
|
+ #{byFlag},
|
|
|
|
+ #{normalProductFlag},
|
|
|
|
+ #{wholeSaleProductFlag},
|
|
|
|
+ #{promotionProductFlag},
|
|
|
|
+ #{groupBuyProductFlag},
|
|
|
|
+ #{step},
|
|
|
|
+ #{actFlag},
|
|
|
|
+ #{actStatus},
|
|
|
|
+ #{actSort},
|
|
|
|
+ #{actType},
|
|
|
|
+ #{visibility},
|
|
|
|
+ #{onlineTime},
|
|
|
|
+ #{downlineTime},
|
|
|
|
+ #{freePostFlag},
|
|
|
|
+ #{costPrice},
|
|
|
|
+ #{costProportional},
|
|
|
|
+ #{costCheckFlag},
|
|
|
|
+ #{precisehKey},
|
|
|
|
+ #{tags},
|
|
|
|
+ #{productType},
|
|
|
|
+ #{machineType},
|
|
|
|
+ #{qualificationImg},
|
|
|
|
+ #{includedTax},
|
|
|
|
+ #{taxPoint},
|
|
|
|
+ #{invoiceType},
|
|
|
|
+ #{recommendType},
|
|
|
|
+ #{combinationID},
|
|
|
|
+ #{combinationSort},
|
|
|
|
+ #{announType}
|
|
|
|
+ )
|
|
|
|
+ </insert>
|
|
|
|
+
|
|
|
|
+ <insert id="insertProductDetailInfo">
|
|
|
|
+ insert into productdetailinfo
|
|
|
|
+ <trim prefix="(" suffix=")" suffixOverrides=",">
|
|
|
|
+ <if test="productID != null">
|
|
|
|
+ `productID`,
|
|
|
|
+ </if>
|
|
|
|
+ <if test="detailInfo != null and detailInfo != ''">
|
|
|
|
+ `detailInfo`,
|
|
|
|
+ </if>
|
|
|
|
+ <if test="serviceInfo != null and serviceInfo != ''">
|
|
|
|
+ `serviceInfo`,
|
|
|
|
+ </if>
|
|
|
|
+ <if test="orderInfo != null and orderInfo != ''">
|
|
|
|
+ `orderInfo`,
|
|
|
|
+ </if>
|
|
|
|
+ </trim>
|
|
|
|
+ <trim prefix="values (" suffix=")" suffixOverrides=",">
|
|
|
|
+ <if test="productID != null">
|
|
|
|
+ #{productID},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="detailInfo != null and detailInfo != ''">
|
|
|
|
+ #{detailInfo},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="serviceInfo != null and serviceInfo != ''">
|
|
|
|
+ #{serviceInfo},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="orderInfo != null and orderInfo != ''">
|
|
|
|
+ #{orderInfo},
|
|
|
|
+ </if>
|
|
|
|
+ </trim>
|
|
|
|
+ </insert>
|
|
|
|
+ <insert id="insertSku" keyColumn="skuId" keyProperty="skuId" parameterType="com.caimei.modules.product.entity.CmSku"
|
|
|
|
+ useGeneratedKeys="true">
|
|
|
|
+ insert into cm_sku
|
|
|
|
+ (productId,
|
|
|
|
+ normalPrice,
|
|
|
|
+ price,
|
|
|
|
+ ladderPriceFlag,
|
|
|
|
+ costCheckFlag,
|
|
|
|
+ costprice,
|
|
|
|
+ stock,
|
|
|
|
+ minBuyNumber,
|
|
|
|
+ unit)
|
|
|
|
+ values (#{productId},
|
|
|
|
+ #{normalPrice},
|
|
|
|
+ #{price},
|
|
|
|
+ #{ladderPriceFlag},
|
|
|
|
+ 1,
|
|
|
|
+ #{costPrice},
|
|
|
|
+ #{stock},
|
|
|
|
+ #{minBuyNumber},
|
|
|
|
+ #{unit})
|
|
|
|
+ </insert>
|
|
|
|
+ <insert id="insertCmLadderPrice">
|
|
|
|
+ insert into product_ladder_price (skuId, productId, userType, ladderNum,
|
|
|
|
+ buyNum, buyPrice, createBy, createDate, delFlag)
|
|
|
|
+ values (#{skuId}, #{productId}, 3, #{ladderNum},
|
|
|
|
+ #{buyNum}, #{buyPrice}, #{createBy},
|
|
|
|
+ #{createDate}, '0')
|
|
|
|
+ </insert>
|
|
|
|
+
|
|
|
|
+ <select id="getrecommendProductList" resultType="product">
|
|
|
|
+ select
|
|
|
|
+ a.*,
|
|
|
|
+ csrp.sort AS sort,
|
|
|
|
+ csrp.id AS recommendProductId,
|
|
|
|
+ b.name AS brandName,
|
|
|
|
+ s.name AS shopName
|
|
|
|
+ FROM
|
|
|
|
+ cm_search_recommend_product csrp
|
|
|
|
+ LEFT JOIN product a on a.productID = csrp.productID
|
|
|
|
+ LEFT JOIN shop s on s.shopID = a.shopID
|
|
|
|
+ left join cm_brand b on b.id = a.brandID
|
|
|
|
+ WHERE
|
|
|
|
+ csrp.tinyTypeId = #{tinyTypeID}
|
|
|
|
+ <if test="name != null and name != ''">
|
|
|
|
+ AND a.name like concat('%', #{name} ,'%')
|
|
|
|
+ </if>
|
|
|
|
+ <if test="validFlag !=null and validFlag !=''">
|
|
|
|
+ AND a.validFlag=#{validFlag}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="shopName != null and shopName != ''">
|
|
|
|
+ AND s.name like concat('%', #{shopName} ,'%')
|
|
|
|
+ </if>
|
|
|
|
+ <if test="brandName != null and brandName != ''">
|
|
|
|
+ AND b.name like concat('%', #{brandName} ,'%')
|
|
|
|
+ </if>
|
|
|
|
+ and a.productCategory = 1
|
|
|
|
+ AND a.validFlag != 0
|
|
|
|
+ AND csrp.delFlag =0
|
|
|
|
+ ORDER BY csrp.sort DESC
|
|
|
|
+ </select>
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ <select id="relatedProductList" resultType="product">
|
|
|
|
+ select
|
|
|
|
+ <include refid="productColumns"/>,
|
|
|
|
+ b.name AS brandName,
|
|
|
|
+ (case when a.tinyTypeID = #{tinyTypeID} then '1' else '0' end) AS defaultType
|
|
|
|
+ FROM product a
|
|
|
|
+ <include refid="productJoins"/>
|
|
|
|
+ left join brand b on b.brandID = a.brandID
|
|
|
|
+ WHERE (a.productID
|
|
|
|
+ IN (select productID from product_custom_classification where tinyTypeID = #{tinyTypeID})
|
|
|
|
+ OR a.tinyTypeID = #{tinyTypeID})
|
|
|
|
+ <if test="name != null and name != ''">
|
|
|
|
+ AND a.name like concat('%', #{name} ,'%')
|
|
|
|
+ </if>
|
|
|
|
+ <if test="validFlag !=null and validFlag !=''">
|
|
|
|
+ AND a.validFlag=#{validFlag}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="shopName != null and shopName != ''">
|
|
|
|
+ AND s.name like concat('%', #{shopName} ,'%')
|
|
|
|
+ </if>
|
|
|
|
+ <if test="brandName != null and brandName != ''">
|
|
|
|
+ AND b.name like concat('%', #{brandName} ,'%')
|
|
|
|
+ </if>
|
|
|
|
+ AND a.validFlag != 0
|
|
|
|
+ and a.productCategory = 1
|
|
|
|
+ </select>
|
|
|
|
+
|
|
|
|
+ <delete id="deleteProductCustomClassification">
|
|
|
|
+ delete
|
|
|
|
+ from product_custom_classification
|
|
|
|
+ where productID = #{productID}
|
|
|
|
+ and tinyTypeID = #{tinyTypeID}
|
|
|
|
+ </delete>
|
|
|
|
+ <delete id="deleteLadderPriceByProductId">
|
|
|
|
+ DELETE
|
|
|
|
+ FROM product_ladder_price
|
|
|
|
+ where productId = #{productID}
|
|
|
|
+ </delete>
|
|
|
|
+ <delete id="deleteLadderPriceById">
|
|
|
|
+ DELETE
|
|
|
|
+ FROM product_ladder_price
|
|
|
|
+ where id = #{id}
|
|
|
|
+ </delete>
|
|
|
|
+ <delete id="deleteSkus">
|
|
|
|
+ delete
|
|
|
|
+ from cm_sku
|
|
|
|
+ where productId = #{productID}
|
|
|
|
+ </delete>
|
|
|
|
+
|
|
|
|
+ <select id="toAddProductCustomClassificationList" resultType="product">
|
|
|
|
+ select
|
|
|
|
+ <include refid="productColumns"/>,
|
|
|
|
+ b.name AS brandName
|
|
|
|
+ FROM product a
|
|
|
|
+ <include refid="productJoins"/>
|
|
|
|
+ left join cm_brand b on b.id = a.brandID
|
|
|
|
+ WHERE a.tinyTypeID != #{tinyTypeID}
|
|
|
|
+ and not exists
|
|
|
|
+ (select pcc.id from product_custom_classification pcc where pcc.productID = a.productID and pcc.tinyTypeID =
|
|
|
|
+ #{tinyTypeID})
|
|
|
|
+ and a.validFlag = '2'
|
|
|
|
+ and (select count(id) from product_custom_classification pcc where pcc.productID = a.productID) <![CDATA[ < ]]>
|
|
|
|
+ 5
|
|
|
|
+ <if test="name != null and name != ''">
|
|
|
|
+ and a.name like concat('%', #{name} ,'%')
|
|
|
|
+ </if>
|
|
|
|
+ <if test="shopName != null and shopName != ''">
|
|
|
|
+ AND s.name like concat('%', #{shopName} ,'%')
|
|
|
|
+ </if>
|
|
|
|
+ <if test="brandName != null and brandName != ''">
|
|
|
|
+ AND b.name like concat('%', #{brandName} ,'%')
|
|
|
|
+ </if>
|
|
|
|
+ </select>
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ <select id="toAddProductList" resultType="product">
|
|
|
|
+ select
|
|
|
|
+ a.*,
|
|
|
|
+ b.name AS brandName,
|
|
|
|
+ s.name AS shopName
|
|
|
|
+ FROM product a
|
|
|
|
+ LEFT JOIN shop s on s.shopID = a.shopID
|
|
|
|
+ left join cm_brand b on b.id = a.brandID
|
|
|
|
+ WHERE
|
|
|
|
+ NOT EXISTS (select * from cm_search_recommend_product csrp where csrp.productID = a.productID and
|
|
|
|
+ csrp.tinyTypeID = #{tinyTypeID} AND csrp.delFlag = 0)
|
|
|
|
+ and a.validFlag = '2'
|
|
|
|
+ <if test="name != null and name != ''">
|
|
|
|
+ and a.name like concat('%', #{name} ,'%')
|
|
|
|
+ </if>
|
|
|
|
+ <if test="shopName != null and shopName != ''">
|
|
|
|
+ AND s.name like concat('%', #{shopName} ,'%')
|
|
|
|
+ </if>
|
|
|
|
+ <if test="brandName != null and brandName != ''">
|
|
|
|
+ AND b.name like concat('%', #{brandName} ,'%')
|
|
|
|
+ </if>
|
|
|
|
+ and a.productCategory = 1
|
|
|
|
+ </select>
|
|
|
|
+
|
|
|
|
+ <select id="getProductTypes" resultType="com.caimei.modules.product.entity.ProductCustomClassification">
|
|
|
|
+ select *
|
|
|
|
+ from product_custom_classification
|
|
|
|
+ where productID = #{productID}
|
|
|
|
+ </select>
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ <select id="findRecommendActivityListPage" resultType="Product">
|
|
|
|
+ SELECT
|
|
|
|
+ <include refid="productColumns"/>
|
|
|
|
+ FROM product a
|
|
|
|
+ <include refid="ActivityJoins"/>
|
|
|
|
+ <where>
|
|
|
|
+ <if test="id !=null and id !=''">
|
|
|
|
+ AND a.productID=#{id}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="tinyTypeID != null and tinyTypeID != ''">
|
|
|
|
+ AND a.tinyTypeID = #{tinyTypeID}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="smallTypeID != null and smallTypeID != ''">
|
|
|
|
+ AND a.smallTypeID = #{smallTypeID}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="bigTypeID != null and bigTypeID != ''">
|
|
|
|
+ AND a.bigTypeID = #{bigTypeID}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="shopID != null and shopID != ''">
|
|
|
|
+ AND a.shopID = #{shopID}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="name != null and name != ''">
|
|
|
|
+ AND a.name LIKE
|
|
|
|
+ <if test="dbName == 'oracle'">'%'||#{name}||'%'</if>
|
|
|
|
+ <if test="dbName == 'mssql'">'%'+#{name}+'%'</if>
|
|
|
|
+ <if test="dbName == 'mysql'">concat('%',#{name},'%')</if>
|
|
|
|
+ </if>
|
|
|
|
+ <if test="shopName != null and shopName != ''">
|
|
|
|
+ AND s.name LIKE
|
|
|
|
+ <if test="dbName == 'oracle'">'%'||#{shopName}||'%'</if>
|
|
|
|
+ <if test="dbName == 'mssql'">'%'+#{shopName}+'%'</if>
|
|
|
|
+ <if test="dbName == 'mysql'">concat('%',#{shopName},'%')</if>
|
|
|
|
+ </if>
|
|
|
|
+ <if test="actFlag !=null and actFlag !=''">
|
|
|
|
+ AND a.actFlag=#{actFlag}
|
|
|
|
+ </if>
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ <if test="sqlMap !=null and sqlMap !=''">
|
|
|
|
+ ${sqlMap.dsf}
|
|
|
|
+ </if>
|
|
|
|
+ AND a.validFlag = 2
|
|
|
|
+ AND (a.actType != 3 or a.`actType` IS NULL or (a.actType = 3 and STR_TO_DATE(a.endTime,'%Y-%m-%d %H:%i')
|
|
|
|
+ <![CDATA[ < ]]> STR_TO_DATE(SYSDATE(),'%Y-%m-%d %H:%i')))
|
|
|
|
+ AND a.shopID not in (SELECT s.`value` FROM `sys_dict` s WHERE s.type='heheShopID')
|
|
|
|
+ and a.productCategory = 1
|
|
|
|
+ </where>
|
|
|
|
+ <choose>
|
|
|
|
+ <when test="page !=null and page.orderBy != null and page.orderBy != ''">
|
|
|
|
+ ORDER BY ${page.orderBy}
|
|
|
|
+ </when>
|
|
|
|
+ <otherwise>
|
|
|
|
+ order by case WHEN a.validFlag = 1 then 0 else 1 END asc,a.productID desc
|
|
|
|
+ </otherwise>
|
|
|
|
+ </choose>
|
|
|
|
+ </select>
|
|
|
|
+
|
|
|
|
+ <select id="findGroupActivityListPage" resultType="Product">
|
|
|
|
+ SELECT
|
|
|
|
+ <include refid="productColumns"/>
|
|
|
|
+ FROM product a
|
|
|
|
+ <include refid="ActivityJoins"/>
|
|
|
|
+ <where>
|
|
|
|
+ <if test="id !=null and id !=''">
|
|
|
|
+ AND a.productID=#{id}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="tinyTypeID != null and tinyTypeID != ''">
|
|
|
|
+ AND a.tinyTypeID = #{tinyTypeID}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="smallTypeID != null and smallTypeID != ''">
|
|
|
|
+ AND a.smallTypeID = #{smallTypeID}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="bigTypeID != null and bigTypeID != ''">
|
|
|
|
+ AND a.bigTypeID = #{bigTypeID}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="shopID != null and shopID != ''">
|
|
|
|
+ AND a.shopID = #{shopID}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="name != null and name != ''">
|
|
|
|
+ AND a.name LIKE
|
|
|
|
+ <if test="dbName == 'oracle'">'%'||#{name}||'%'</if>
|
|
|
|
+ <if test="dbName == 'mssql'">'%'+#{name}+'%'</if>
|
|
|
|
+ <if test="dbName == 'mysql'">concat('%',#{name},'%')</if>
|
|
|
|
+ </if>
|
|
|
|
+ <if test="shopName != null and shopName != ''">
|
|
|
|
+ AND s.name LIKE
|
|
|
|
+ <if test="dbName == 'oracle'">'%'||#{shopName}||'%'</if>
|
|
|
|
+ <if test="dbName == 'mssql'">'%'+#{shopName}+'%'</if>
|
|
|
|
+ <if test="dbName == 'mysql'">concat('%',#{shopName},'%')</if>
|
|
|
|
+ </if>
|
|
|
|
+ <if test="actFlag !=null and actFlag !=''">
|
|
|
|
+ AND a.actFlag=#{actFlag}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="actStatus != null and actStatus != '' and actStatus == 1">
|
|
|
|
+ AND STR_TO_DATE(SYSDATE(),'%Y-%m-%d %H:%i') <![CDATA[ < ]]> STR_TO_DATE(a.beginTime,'%Y-%m-%d %H:%i')
|
|
|
|
+ </if>
|
|
|
|
+ <if test="actStatus != null and actStatus != '' and actStatus == 2">
|
|
|
|
+ AND STR_TO_DATE(SYSDATE(),'%Y-%m-%d %H:%i') <![CDATA[ > ]]> STR_TO_DATE(a.beginTime,'%Y-%m-%d %H:%i')
|
|
|
|
+ AND STR_TO_DATE(SYSDATE(),'%Y-%m-%d %H:%i') <![CDATA[ < ]]> STR_TO_DATE(a.endTime,'%Y-%m-%d %H:%i')
|
|
|
|
+ </if>
|
|
|
|
+ <if test="sqlMap !=null and sqlMap !=''">
|
|
|
|
+ ${sqlMap.dsf}
|
|
|
|
+ </if>
|
|
|
|
+ AND a.validFlag = 2
|
|
|
|
+ AND ((a.actType != 1 AND a.actType != 2 OR a.`actType` IS NULL) or a.actFlag = 0)
|
|
|
|
+ AND a.shopID not in (SELECT s.`value` FROM `sys_dict` s WHERE s.type='heheShopID')
|
|
|
|
+ and a.productCategory = 1
|
|
|
|
+ </where>
|
|
|
|
+ <choose>
|
|
|
|
+ <when test="page !=null and page.orderBy != null and page.orderBy != ''">
|
|
|
|
+ ORDER BY ${page.orderBy}
|
|
|
|
+ </when>
|
|
|
|
+ <otherwise>
|
|
|
|
+ order by case WHEN a.validFlag = 1 then 0 else 1 END asc,a.productID desc
|
|
|
|
+ </otherwise>
|
|
|
|
+ </choose>
|
|
|
|
+ </select>
|
|
|
|
+
|
|
|
|
+ <select id="findBigTypeList" resultType="com.caimei.modules.product.entity.ProductBigType">
|
|
|
|
+ SELECT
|
|
|
|
+ *
|
|
|
|
+ FROM bigtype a
|
|
|
|
+ <where>
|
|
|
|
+ <if test="bigTypeID != null and bigTypeID != ''">
|
|
|
|
+ AND a.bigTypeID = #{bigTypeID}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="name != null and name != ''">
|
|
|
|
+ AND a.name LIKE
|
|
|
|
+ <if test="dbName == 'oracle'">'%'||#{name}||'%'</if>
|
|
|
|
+ <if test="dbName == 'mssql'">'%'+#{name}+'%'</if>
|
|
|
|
+ <if test="dbName == 'mysql'">concat('%',#{name},'%')</if>
|
|
|
|
+ </if>
|
|
|
|
+
|
|
|
|
+ </where>
|
|
|
|
+ </select>
|
|
|
|
+ <select id="findSmallTypeList" resultType="com.caimei.modules.product.entity.ProductSmallType">
|
|
|
|
+ SELECT
|
|
|
|
+ *
|
|
|
|
+ FROM smalltype a
|
|
|
|
+ <where>
|
|
|
|
+ <if test="smallTypeID != null and smallTypeID != ''">
|
|
|
|
+ AND a.smallTypeID = #{smallTypeID}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="bigTypeID != null and bigTypeID != ''">
|
|
|
|
+ AND a.bigTypeID = #{bigTypeID}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="name != null and name != ''">
|
|
|
|
+ AND a.name LIKE
|
|
|
|
+ <if test="dbName == 'oracle'">'%'||#{name}||'%'</if>
|
|
|
|
+ <if test="dbName == 'mssql'">'%'+#{name}+'%'</if>
|
|
|
|
+ <if test="dbName == 'mysql'">concat('%',#{name},'%')</if>
|
|
|
|
+ </if>
|
|
|
|
+ </where>
|
|
|
|
+ </select>
|
|
|
|
+ <select id="findTinyTypeList" resultType="com.caimei.modules.product.entity.ProducTinyType">
|
|
|
|
+ SELECT
|
|
|
|
+ *
|
|
|
|
+ FROM tinytype a
|
|
|
|
+ <where>
|
|
|
|
+ <if test="tinyTypeID != null and tinyTypeID != ''">
|
|
|
|
+ AND a.tinyTypeID = #{tinyTypeID}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="smallTypeID != null and smallTypeID != ''">
|
|
|
|
+ AND a.smallTypeID = #{smallTypeID}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="name != null and name != ''">
|
|
|
|
+ AND a.name LIKE
|
|
|
|
+ <if test="dbName == 'oracle'">'%'||#{name}||'%'</if>
|
|
|
|
+ <if test="dbName == 'mssql'">'%'+#{name}+'%'</if>
|
|
|
|
+ <if test="dbName == 'mysql'">concat('%',#{name},'%')</if>
|
|
|
|
+ </if>
|
|
|
|
+ </where>
|
|
|
|
+ </select>
|
|
|
|
+
|
|
|
|
+ <select id="findProductRecommendList" resultType="com.caimei.modules.product.entity.CmProductRecommend">
|
|
|
|
+ select cpr.id AS id,
|
|
|
|
+ cpr.productID AS productID,
|
|
|
|
+ cpr.recommendProductID AS recommendProductID,
|
|
|
|
+ cpr.sort AS sort,
|
|
|
|
+ pro.name AS productName,
|
|
|
|
+ pro.unit AS unit,
|
|
|
|
+ pro.mainImage AS img,
|
|
|
|
+ cpr.shopName AS shopName
|
|
|
|
+ from cm_product_recommend cpr
|
|
|
|
+ join product pro on cpr.recommendProductID = pro.productID
|
|
|
|
+ where cpr.productID = #{productID}
|
|
|
|
+ order by cpr.sort desc
|
|
|
|
+ </select>
|
|
|
|
+
|
|
|
|
+ <select id="findProductRecommendCount" resultType="int">
|
|
|
|
+ select count(1)
|
|
|
|
+ from cm_product_recommend cpr
|
|
|
|
+ where cpr.productID = #{productID}
|
|
|
|
+ </select>
|
|
|
|
+
|
|
|
|
+ <select id="findProductList" resultType="com.caimei.modules.product.entity.CmProductRecommend">
|
|
|
|
+ select
|
|
|
|
+ a.productID AS productID,
|
|
|
|
+ a.name AS productName,
|
|
|
|
+ a.unit AS unit,
|
|
|
|
+ a.mainImage AS img,
|
|
|
|
+ s.name AS shopName
|
|
|
|
+ from product a
|
|
|
|
+ <include refid="ActivityJoins"/>
|
|
|
|
+ <where>
|
|
|
|
+ <choose>
|
|
|
|
+ <when test="commodityType != null and commodityType != ''">
|
|
|
|
+ AND a.commodityType = #{commodityType}
|
|
|
|
+ </when>
|
|
|
|
+ <when test="bigTypeID != null and bigTypeID != ''">
|
|
|
|
+ AND a.bigTypeID = #{bigTypeID}
|
|
|
|
+ </when>
|
|
|
|
+ <when test="smallTypeID != null and smallTypeID != ''">
|
|
|
|
+ AND a.smallTypeID = #{smallTypeID}
|
|
|
|
+ </when>
|
|
|
|
+ <when test="tinyTypeID != null and tinyTypeID != ''">
|
|
|
|
+ AND a.tinyTypeID = #{tinyTypeID}
|
|
|
|
+ </when>
|
|
|
|
+ </choose>
|
|
|
|
+ <if test="productName != null and productName != ''">
|
|
|
|
+ and a.name like concat('%', #{productName} ,'%')
|
|
|
|
+ </if>
|
|
|
|
+ <if test="shopName != null and shopName != ''">
|
|
|
|
+ and s.name like concat('%', #{shopName} ,'%')
|
|
|
|
+ </if>
|
|
|
|
+ and a.productCategory = 1
|
|
|
|
+ </where>
|
|
|
|
+ <!-- limit 0, 10-->
|
|
|
|
+ </select>
|
|
|
|
+
|
|
|
|
+ <update id="updateRecommendType">
|
|
|
|
+ UPDATE product
|
|
|
|
+ SET recommendType = #{recommendType}
|
|
|
|
+ WHERE productID = #{productID}
|
|
|
|
+ </update>
|
|
|
|
+
|
|
|
|
+ <update id="updateBrnadId">
|
|
|
|
+ UPDATE product
|
|
|
|
+ set brandID = #{brandID}
|
|
|
|
+ WHERE productID = #{productID}
|
|
|
|
+ </update>
|
|
|
|
+
|
|
|
|
+ <update id="updateProductByBrandId">
|
|
|
|
+ UPDATE product
|
|
|
|
+ set brandID = null
|
|
|
|
+ WHERE brandID = #{brandId}
|
|
|
|
+ </update>
|
|
|
|
+ <select id="getProductIdByBrandId" resultType="java.lang.Integer">
|
|
|
|
+ SELECT productID
|
|
|
|
+ FROM product
|
|
|
|
+ WHERE brandID = #{brandId}
|
|
|
|
+ </select>
|
|
|
|
+ <update id="updateTinyType">
|
|
|
|
+ UPDATE product
|
|
|
|
+ set tinyTypeID = #{tinyTypeID}
|
|
|
|
+ WHERE productID = #{productID}
|
|
|
|
+ </update>
|
|
|
|
+ <update id="updateByPrimaryKeySelective" parameterType="com.caimei.modules.product.entity.Product">
|
|
|
|
+ update product
|
|
|
|
+ <set>
|
|
|
|
+ <if test="productDescribe != null and productDescribe != ''">
|
|
|
|
+ productDescribe = #{productDescribe},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="productDetail != null and productDetail != ''">
|
|
|
|
+ productDetail = #{productDetail},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="brandID != null and brandID != ''">
|
|
|
|
+ brandID = #{brandID},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="bigTypeID != null and bigTypeID !=''">
|
|
|
|
+ bigTypeID = #{bigTypeID},
|
|
|
|
+ smallTypeID = #{smallTypeID},
|
|
|
|
+ tinyTypeID = #{tinyTypeID},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="preferredFlag != null and preferredFlag !=''">
|
|
|
|
+ preferredFlag = #{preferredFlag},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="shopID != null and shopID !=''">
|
|
|
|
+ shopID = #{shopID},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="name != null and name !=''">
|
|
|
|
+ `name` = #{name},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="aliasName != null and aliasName !=''">
|
|
|
|
+ aliasName = #{aliasName},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="searchKey != null and searchKey !=''">
|
|
|
|
+ searchKey = #{searchKey},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="productRemarks != null and productRemarks !=''">
|
|
|
|
+ productRemarks = #{productRemarks},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="combinationID != null and combinationID !=''">
|
|
|
|
+ combinationID = #{combinationID},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="priceFlag != null and priceFlag !=''">
|
|
|
|
+ priceFlag = #{priceFlag},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="beautyActFlag != null and beautyActFlag !=''">
|
|
|
|
+ beautyActFlag = #{beautyActFlag},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="hasSkuFlag != null and hasSkuFlag !=''">
|
|
|
|
+ hasSkuFlag = #{hasSkuFlag},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="mainImage != null and mainImage !=''">
|
|
|
|
+ mainImage = #{mainImage},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="propertiesInfo != null and propertiesInfo !=''">
|
|
|
|
+ propertiesInfo = #{propertiesInfo},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="addTime != null and addTime !=''">
|
|
|
|
+ addTime = #{addTime},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="updateTime != null and updateTime !=''">
|
|
|
|
+ updateTime = #{updateTime},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="weekSellNumber != null and weekSellNumber !=''">
|
|
|
|
+ weekSellNumber = #{weekSellNumber},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="beforeValidFlag != null and beforeValidFlag !=''">
|
|
|
|
+ beforeValidFlag = #{beforeValidFlag},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="validFlag != null and validFlag !=''">
|
|
|
|
+ validFlag = #{validFlag},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="favoriteTimes != null and favoriteTimes !=''">
|
|
|
|
+ favoriteTimes = #{favoriteTimes},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="commentScore != null and commentScore !=''">
|
|
|
|
+ commentScore = #{commentScore},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="commentTimes != null and commentTimes !=''">
|
|
|
|
+ commentTimes = #{commentTimes},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="selfRecommendFlag != null and selfRecommendFlag !=''">
|
|
|
|
+ selfRecommendFlag = #{selfRecommendFlag},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="sysRecommendFlag != null and sysRecommendFlag !=''">
|
|
|
|
+ sysRecommendFlag = #{sysRecommendFlag},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="sortIndex != null and sortIndex != ''">
|
|
|
|
+ sortIndex = #{sortIndex},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="featuredFlag != null and featuredFlag !=''">
|
|
|
|
+ featuredFlag = #{featuredFlag},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="featuredSortIndex != null and featuredSortIndex !=''">
|
|
|
|
+ featuredSortIndex = #{featuredSortIndex},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="productCode != null and productCode !=''">
|
|
|
|
+ productCode = #{productCode},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="synToERPFlag != null and synToERPFlag !=''">
|
|
|
|
+ synToERPFlag = #{synToERPFlag},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="allAreaFlag != null and allAreaFlag !=''">
|
|
|
|
+ allAreaFlag = #{allAreaFlag},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="provinceIDs != null and provinceIDs !=''">
|
|
|
|
+ provinceIDs = #{provinceIDs},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="serviceNumber != null and serviceNumber !=''">
|
|
|
|
+ serviceNumber = #{serviceNumber},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="maxBuyNumber != null and maxBuyNumber !=''">
|
|
|
|
+ maxBuyNumber = #{maxBuyNumber},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="packageCount != null and packageCount !=''">
|
|
|
|
+ packageCount = #{packageCount},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="byFlag != null and byFlag !=''">
|
|
|
|
+ byFlag = #{byFlag},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="normalProductFlag != null and normalProductFlag !=''">
|
|
|
|
+ normalProductFlag = #{normalProductFlag},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="wholeSaleProductFlag != null and wholeSaleProductFlag !=''">
|
|
|
|
+ wholeSaleProductFlag = #{wholeSaleProductFlag},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="promotionProductFlag != null and promotionProductFlag !=''">
|
|
|
|
+ promotionProductFlag = #{promotionProductFlag},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="groupBuyProductFlag != null and groupBuyProductFlag !=''">
|
|
|
|
+ groupBuyProductFlag = #{groupBuyProductFlag},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="step != null and step !=''">
|
|
|
|
+ step = #{step},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="actFlag != null and actFlag !=''">
|
|
|
|
+ actFlag = #{actFlag},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="actSort != null and actSort !=''">
|
|
|
|
+ actSort = #{actSort},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="actType != null and actType !=''">
|
|
|
|
+ actType = #{actType},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="onlineTime != null and onlineTime !=''">
|
|
|
|
+ onlineTime = #{onlineTime},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="downlineTime != null and downlineTime !=''">
|
|
|
|
+ downlineTime = #{downlineTime},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="freePostFlag != null and freePostFlag !=''">
|
|
|
|
+ freePostFlag = #{freePostFlag},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="precisehKey != null and precisehKey !=''">
|
|
|
|
+ precisehKey = #{precisehKey},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="visibility != null and visibility !=''">
|
|
|
|
+ visibility = #{visibility},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="commodityDetailsFlag != null and commodityDetailsFlag != ''">
|
|
|
|
+ commodityDetailsFlag = #{commodityDetailsFlag},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="productType != null and productType !=''">
|
|
|
|
+ productType = #{productType},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="qualificationImg != null and qualificationImg !=''">
|
|
|
|
+ qualificationImg = #{qualificationImg},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="qualificationImg != null and qualificationImg !=''">
|
|
|
|
+ qualificationImg = #{qualificationImg},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="invoiceType != null and invoiceType !=''">
|
|
|
|
+ invoiceType = #{invoiceType},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="taxPoint != null and taxPoint !=''">
|
|
|
|
+ taxPoint = #{taxPoint},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="supplierTaxPoint != null and supplierTaxPoint !=''">
|
|
|
|
+ supplierTaxPoint = #{supplierTaxPoint},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="endTimeStr != null and endTimeStr !=''">
|
|
|
|
+ endTimeStr = #{endTimeStr},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="tags != null and tags !=''">
|
|
|
|
+ tags = #{tags},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="recommendType != null and recommendType !=''">
|
|
|
|
+ recommendType = #{recommendType},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="machineType != null and machineType !=''">
|
|
|
|
+ machineType = #{machineType},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="includedTax != null and includedTax !=''">
|
|
|
|
+ includedTax = #{includedTax},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="invoiceType != null and invoiceType !=''">
|
|
|
|
+ invoiceType = #{invoiceType},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="commodityType != null and commodityType != ''">
|
|
|
|
+ commodityType = #{commodityType},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="trainingMethod != null">
|
|
|
|
+ trainingMethod = #{trainingMethod},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="trainingType != null">
|
|
|
|
+ trainingType = #{trainingType},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="trainingFee != null">
|
|
|
|
+ trainingFee = #{trainingFee},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="qualificationNo !=null and qualificationNo != ''">
|
|
|
|
+ qualificationNo=#{qualificationNo},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="productName !=null and productName !=''">
|
|
|
|
+ productName=#{productName},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="qualificationTime !=null and qualificationTime!=''">
|
|
|
|
+ qualificationTime=#{qualificationTime},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="qualificationLink !=null and qualificationLink!=''">
|
|
|
|
+ qualificationLink=#{qualificationLink},
|
|
|
|
+ </if>
|
|
|
|
+
|
|
|
|
+ newProductType=#{newProductType},
|
|
|
|
+ showFlag=#{showFlag},
|
|
|
|
+ announType=#{announType},
|
|
|
|
+ splitCode = #{splitCode}
|
|
|
|
+ </set>
|
|
|
|
+ where productID = #{productID}
|
|
|
|
+ </update>
|
|
|
|
+ <update id="updateproductDetailInfo" parameterType="com.caimei.modules.product.entity.ProductDetailInfo">
|
|
|
|
+ update productdetailinfo
|
|
|
|
+ <set>
|
|
|
|
+ <if test="propValueAlias != null and propValueAlias != ''">
|
|
|
|
+ propValueAlias = #{propValueAlias},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="propValueImages != null and propValueImages !=''">
|
|
|
|
+ propValueImages = #{propValueImages},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="detailInfo != null">
|
|
|
|
+ detailInfo = #{detailInfo},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="commonDetailInfo != null">
|
|
|
|
+ commonDetailInfo = #{commonDetailInfo},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="detailInfoTxt != null">
|
|
|
|
+ detailInfoTxt = #{detailInfoTxt},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="seoTitle != null and seoTitle !=''">
|
|
|
|
+ seoTitle = #{seoTitle},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="seoKeyword != null and seoKeyword !=''">
|
|
|
|
+ seoKeyword = #{seoKeyword},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="seoDes != null and seoDes !=''">
|
|
|
|
+ seoDes = #{seoDes},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="serviceInfo != null ">
|
|
|
|
+ serviceInfo = #{serviceInfo},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="orderInfo != null ">
|
|
|
|
+ orderInfo = #{orderInfo},
|
|
|
|
+ </if>
|
|
|
|
+ </set>
|
|
|
|
+ where productID = #{productID}
|
|
|
|
+ </update>
|
|
|
|
+ <update id="updateLadderPrice">
|
|
|
|
+ update product_ladder_price
|
|
|
|
+ set productId = #{productId},
|
|
|
|
+ ladderNum = #{ladderNum},
|
|
|
|
+ buyNum = #{buyNum},
|
|
|
|
+ buyPrice = #{buyPrice},
|
|
|
|
+ updateBy = #{updateBy},
|
|
|
|
+ updateDate = #{updateDate},
|
|
|
|
+ delFlag = #{delFlag}
|
|
|
|
+ where id = #{id}
|
|
|
|
+ </update>
|
|
|
|
+ <update id="updateMainImage">
|
|
|
|
+ update product
|
|
|
|
+ set mainImage =#{mainImage}
|
|
|
|
+ where productID = #{productID}
|
|
|
|
+ </update>
|
|
|
|
+
|
|
|
|
+ <select id="getProductByTypeName" resultType="com.caimei.modules.brand.entity.BrandAndProductType">
|
|
|
|
+ select b.name AS "bigTypeName",
|
|
|
|
+ b.bigTypeID,
|
|
|
|
+ s.`name` AS "smallTypeName",
|
|
|
|
+ s.smalltypeID,
|
|
|
|
+ t.name AS "tinyTypeName",
|
|
|
|
+ t.tinytypeID
|
|
|
|
+ from tinytype t
|
|
|
|
+ LEFT JOIN smalltype s on t.smallTypeID = s.smallTypeID
|
|
|
|
+ LEFT JOIN bigtype b ON b.bigTypeID = s.bigTypeID
|
|
|
|
+ where b.`name` = #{name}
|
|
|
|
+ AND s.`name` = #{name1}
|
|
|
|
+ AND t.name = #{name2}
|
|
|
|
+ </select>
|
|
|
|
+
|
|
|
|
+ <select id="findRecommendBySys" resultType="com.caimei.modules.product.entity.CmProductRecommend">
|
|
|
|
+ select p.productID AS recommendProductID,
|
|
|
|
+ p.name AS productName,
|
|
|
|
+ p.unit AS unit,
|
|
|
|
+ p.mainImage AS img,
|
|
|
|
+ s.name AS shopName
|
|
|
|
+ from product p
|
|
|
|
+ left join shop s on s.shopID = p.shopID
|
|
|
|
+ where p.tinyTypeID = #{tinyTypeID}
|
|
|
|
+ and p.productCategory = 1
|
|
|
|
+ order by p.sellNumber
|
|
|
|
+ desc
|
|
|
|
+ limit 0, 7
|
|
|
|
+ </select>
|
|
|
|
+
|
|
|
|
+ <select id="getSecondHandRecommend" resultType="CmSecondHandRecommendVo">
|
|
|
|
+ select p.productID AS id,
|
|
|
|
+ 1 AS type,
|
|
|
|
+ p.name AS name,
|
|
|
|
+ p.unit AS unit,
|
|
|
|
+ p.mainImage AS img,
|
|
|
|
+ s.name AS shopName,
|
|
|
|
+ p.productCategory as "productCategory"
|
|
|
|
+ from product p
|
|
|
|
+ left join shop s on s.shopID = p.shopID
|
|
|
|
+ where p.productID = #{productID}
|
|
|
|
+ AND p.validFlag = '2'
|
|
|
|
+ </select>
|
|
|
|
+
|
|
|
|
+ <select id="querySecondHandRecommend" resultType="CmSecondHandRecommendVo">
|
|
|
|
+ select
|
|
|
|
+ p.productID AS id,
|
|
|
|
+ 1 AS type,
|
|
|
|
+ p.name AS name,
|
|
|
|
+ p.unit AS unit,
|
|
|
|
+ p.mainImage AS img,
|
|
|
|
+ s.name AS shopName,
|
|
|
|
+ p.productCategory as "productCategory"
|
|
|
|
+ from product p
|
|
|
|
+ left join shop s on s.shopID = p.shopID
|
|
|
|
+ <where>
|
|
|
|
+ <if test="productID != null and productID != ''">
|
|
|
|
+ p.productID = #{productID}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="productName != null and productName != ''">
|
|
|
|
+ and p.name like concat('%', #{productName} ,'%')
|
|
|
|
+ </if>
|
|
|
|
+ AND p.validFlag = '2'
|
|
|
|
+ and p.productCategory = #{queryProductType}
|
|
|
|
+ </where>
|
|
|
|
+ limit 0, 10
|
|
|
|
+ </select>
|
|
|
|
+ <select id="queryProductDetailInfo" resultType="com.caimei.modules.product.entity.ProductDetailInfo">
|
|
|
|
+ SELECT *
|
|
|
|
+ FROM productdetailinfo
|
|
|
|
+ where productID = #{productID}
|
|
|
|
+ </select>
|
|
|
|
+ <select id="qualification" resultType="com.caimei.modules.product.entity.Product">
|
|
|
|
+ SELECT qualificationNo, productName, qualificationTime, qualificationLink
|
|
|
|
+ FROM product
|
|
|
|
+ where productID = #{productID}
|
|
|
|
+ </select>
|
|
|
|
+ <select id="findProductLadderPrice" resultType="com.caimei.po.ProductLadderPrice">
|
|
|
|
+ SELECT *
|
|
|
|
+ FROM product_ladder_price
|
|
|
|
+ WHERE productId = #{productId}
|
|
|
|
+ AND userType = #{userType}
|
|
|
|
+ AND buyNum is NOT null
|
|
|
|
+ AND buyPrice is NOT null
|
|
|
|
+ AND delFlag = 0
|
|
|
|
+ ORDER BY ladderNum ASC
|
|
|
|
+ </select>
|
|
|
|
+ <select id="findActList" resultType="com.caimei.modules.product.entity.Product">
|
|
|
|
+ SELECT
|
|
|
|
+ <include refid="productColumns"/>
|
|
|
|
+ FROM product a
|
|
|
|
+ <include refid="productJoins"/>
|
|
|
|
+ <where>
|
|
|
|
+ <if test="id !=null and id !=''">
|
|
|
|
+ AND a.productID=#{id}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="shopID != null and shopID != ''">
|
|
|
|
+ AND a.shopID = #{shopID}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="name != null and name != ''">
|
|
|
|
+ AND a.name LIKE
|
|
|
|
+ <if test="dbName == 'oracle'">'%'||#{name}||'%'</if>
|
|
|
|
+ <if test="dbName == 'mssql'">'%'+#{name}+'%'</if>
|
|
|
|
+ <if test="dbName == 'mysql'">concat('%',#{name},'%')</if>
|
|
|
|
+ </if>
|
|
|
|
+ <if test="shopName != null and shopName != ''">
|
|
|
|
+ AND s.name LIKE
|
|
|
|
+ <if test="dbName == 'oracle'">'%'||#{shopName}||'%'</if>
|
|
|
|
+ <if test="dbName == 'mssql'">'%'+#{shopName}+'%'</if>
|
|
|
|
+ <if test="dbName == 'mysql'">concat('%',#{shopName},'%')</if>
|
|
|
|
+ </if>
|
|
|
|
+ <if test="validFlag !=null and validFlag !=''">
|
|
|
|
+ AND a.validFlag=#{validFlag}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="actFlag !=null and actFlag !=''">
|
|
|
|
+ AND a.actFlag=#{actFlag}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="actType !=null and actType !=''">
|
|
|
|
+ AND a.actType=#{actType}
|
|
|
|
+ </if>
|
|
|
|
+ AND a.actStatus = 1
|
|
|
|
+ and a.productCategory = 1
|
|
|
|
+ </where>
|
|
|
|
+ <choose>
|
|
|
|
+ <when test="page !=null and page.orderBy != null and page.orderBy != ''">
|
|
|
|
+ ORDER BY ${page.orderBy}
|
|
|
|
+ </when>
|
|
|
|
+ <otherwise>
|
|
|
|
+ order by case WHEN a.validFlag = 1 then 0 else 1 END asc,a.productID desc
|
|
|
|
+ </otherwise>
|
|
|
|
+ </choose>
|
|
|
|
+ </select>
|
|
|
|
+
|
|
|
|
+ <select id="findAllProduct" resultType="com.caimei.modules.product.entity.Product">
|
|
|
|
+ select p.productID,p.mainImage,p.name,s.name as shopName from product p left join shop s on p.shopID = s.shopID
|
|
|
|
+ <where>
|
|
|
|
+ (p.actFlag=0 or p.actType is null) and p.validFlag = 2 and p.productCategory = 1
|
|
|
|
+ <if test="productIds != null and productIds != '' ">
|
|
|
|
+ and p.productID != #{productIds}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="productID != null and productID != ''">
|
|
|
|
+ and p.productID = #{productID}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="name != null and name != ''">
|
|
|
|
+ and p.name like concat('%',#{name},'%')
|
|
|
|
+ </if>
|
|
|
|
+ <if test="shopName != null and shopName != ''">
|
|
|
|
+ and s.name like concat('%',#{shopName},'%')
|
|
|
|
+ </if>
|
|
|
|
+ </where>
|
|
|
|
+ order by productID asc
|
|
|
|
+ </select>
|
|
|
|
+
|
|
|
|
+ <select id="findProductImage" resultType="com.caimei.modules.product.entity.Product">
|
|
|
|
+ SELECT
|
|
|
|
+ <include refid="productColumns"/>
|
|
|
|
+ FROM product a
|
|
|
|
+ <include refid="productJoins"/>
|
|
|
|
+ <where>
|
|
|
|
+ <if test="productID !=null">
|
|
|
|
+ AND a.productID=#{productID}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="shopID != null and shopID != ''">
|
|
|
|
+ AND a.shopID = #{shopID}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="name != null and name != ''">
|
|
|
|
+ AND a.name LIKE concat('%',#{name},'%')
|
|
|
|
+ </if>
|
|
|
|
+ <if test="shopName != null and shopName != ''">
|
|
|
|
+ AND s.name LIKE concat('%',#{shopName},'%')
|
|
|
|
+ </if>
|
|
|
|
+ <if test="validFlag !=null and validFlag !=''">
|
|
|
|
+ AND a.validFlag=#{validFlag}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="productCategory !=null and productCategory !=''">
|
|
|
|
+ AND a.productCategory=#{productCategory}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="ids != null and ids.size() > 0">
|
|
|
|
+ AND a.productID NOT IN
|
|
|
|
+ <foreach collection="ids" close=")" separator="," open="(" item="id">
|
|
|
|
+ #{id}
|
|
|
|
+ </foreach>
|
|
|
|
+ </if>
|
|
|
|
+ </where>
|
|
|
|
+ <choose>
|
|
|
|
+ <when test="page !=null and page.orderBy != null and page.orderBy != ''">
|
|
|
|
+ ORDER BY ${page.orderBy}
|
|
|
|
+ </when>
|
|
|
|
+ <otherwise>
|
|
|
|
+ order by a.productID asc
|
|
|
|
+ </otherwise>
|
|
|
|
+ </choose>
|
|
|
|
+ </select>
|
|
|
|
+ <select id="findProductDetail" resultType="java.lang.String">
|
|
|
|
+ select productDetail
|
|
|
|
+ from product
|
|
|
|
+ where productID = #{productID}
|
|
|
|
+ </select>
|
|
|
|
+ <select id="findProductDescribe" resultType="java.lang.String">
|
|
|
|
+ select productDescribe
|
|
|
|
+ from product
|
|
|
|
+ where productID = #{productID}
|
|
|
|
+ </select>
|
|
|
|
+ <select id="findSepcialShopList" resultType="com.caimei.modules.product.entity.CmShop">
|
|
|
|
+ select name, shopID
|
|
|
|
+ from shop
|
|
|
|
+ where shopType = 2
|
|
|
|
+ </select>
|
|
<select id="getSplitCodeByProductId" resultType="java.lang.String">
|
|
<select id="getSplitCodeByProductId" resultType="java.lang.String">
|
|
- select splitCode from product where productID = #{productID}
|
|
|
|
- </select>
|
|
|
|
- <select id="findSplitCodesByShopId" resultType="com.caimei.modules.product.entity.CmSplitCode">
|
|
|
|
- select shopId,commercialCode as splitCode,codeDetail as codeName,email
|
|
|
|
- from cm_shop_splitcode
|
|
|
|
- where shopId = #{shopID}
|
|
|
|
- </select>
|
|
|
|
|
|
+ select splitCode
|
|
|
|
+ from product
|
|
|
|
+ where productID = #{productID}
|
|
|
|
+ </select>
|
|
|
|
+ <select id="findSplitCodesByShopId" resultType="com.caimei.modules.product.entity.CmSplitCode">
|
|
|
|
+ select shopId, commercialCode as splitCode, codeDetail as codeName, email
|
|
|
|
+ from cm_shop_splitcode
|
|
|
|
+ where shopId = #{shopID}
|
|
|
|
+ </select>
|
|
|
|
+ <select id="findSkuList" resultType="com.caimei.modules.product.entity.CmSku">
|
|
|
|
+ select skuId,
|
|
|
|
+ productId,
|
|
|
|
+ unit,
|
|
|
|
+ normalPrice,
|
|
|
|
+ stock,
|
|
|
|
+ costCheckFlag,
|
|
|
|
+ costProportional,
|
|
|
|
+ costPrice,
|
|
|
|
+ price,
|
|
|
|
+ ladderPriceFlag,
|
|
|
|
+ minBuyNumber
|
|
|
|
+ from cm_sku
|
|
|
|
+ where productId = #{productID}
|
|
|
|
+ </select>
|
|
|
|
+ <select id="findLadderPriceBySku" resultType="com.caimei.modules.product.entity.CmLadderPrice">
|
|
|
|
+ select skuId,productId,userType,ladderNum,buyNum,buyPrice
|
|
|
|
+ FROM product_ladder_price
|
|
|
|
+ WHERE productId = #{productId}
|
|
|
|
+ AND userType = 3
|
|
|
|
+ AND skuId=#{skuId}
|
|
|
|
+ AND buyNum is NOT null
|
|
|
|
+ AND buyPrice is NOT null
|
|
|
|
+ AND delFlag = 0
|
|
|
|
+ ORDER BY ladderNum ASC
|
|
|
|
+ </select>
|
|
</mapper>
|
|
</mapper>
|