<?xml version="1.0" encoding="UTF-8"?> 
 | 
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> 
 | 
<mapper namespace="cc.mrbird.febs.mall.mapper.MallGoodsSkuMapper"> 
 | 
  
 | 
  
 | 
    <select id="selectSkuInfoById" resultType="cc.mrbird.febs.mall.entity.MallGoodsSku"> 
 | 
        select 
 | 
            a.*, 
 | 
            b.name styleName, 
 | 
            c.goods_name goodsName 
 | 
        from mall_goods_sku a 
 | 
                 inner join mall_goods_style b on a.style_id=b.ID 
 | 
                 inner join mall_goods c on a.goods_id= c.ID 
 | 
        where a.id=#{id} 
 | 
    </select> 
 | 
  
 | 
    <delete  id="deleteByGoodsId"> 
 | 
        delete from mall_goods_sku where goods_id = #{id} 
 | 
    </delete> 
 | 
  
 | 
  
 | 
    <select id="selectByGoodId" resultType="cc.mrbird.febs.mall.vo.AdminMailGoodsSkuDetailVo"> 
 | 
        select a.*,b.name styleName from mall_goods_sku a 
 | 
            left join mall_goods_style b on a.style_id=b.ID 
 | 
        where a.goods_id = #{id} 
 | 
    </select> 
 | 
  
 | 
    <select id="selectSkuByGoodsId" resultType="cc.mrbird.febs.mall.entity.MallGoodsSku"> 
 | 
        select a.*, b.name styleName from mall_goods_sku a 
 | 
        inner join mall_goods_style b on a.style_id=b.id 
 | 
        where a.goods_id=#{id} 
 | 
    </select> 
 | 
  
 | 
    <delete id="delSkuByIds"> 
 | 
        delete from mall_goods_sku 
 | 
        where id in 
 | 
        <foreach collection="list" separator="," close=")" open="(" item="item"> 
 | 
            #{item} 
 | 
        </foreach> 
 | 
    </delete> 
 | 
  
 | 
    <update id="upDateStockAndVolumeBySkuId"> 
 | 
        update mall_goods_sku 
 | 
        set stock = stock - #{cnt}, 
 | 
            sku_volume = sku_volume + #{cnt} 
 | 
        where id=#{id} and  stock - #{cnt} <![CDATA[ >= ]]> 0 
 | 
    </update> 
 | 
  
 | 
    <update id="updateStockAndVolumeBySkuId"> 
 | 
        update mall_goods_sku 
 | 
        set stock = stock + #{cnt}, 
 | 
            sku_volume = sku_volume - #{cnt} 
 | 
        where id=#{id} and  sku_volume - #{cnt} <![CDATA[ >= ]]> 0 
 | 
    </update> 
 | 
</mapper> 
 |