常用IBatis属性
<?xml version="1.0" encoding="utf-8" ?>
<sqlMap namespace="GoodDetail" xmlns="http://ibatis.apache.org/mapping" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<resultMaps> <!--店铺商品列表实体类映射-->
<resultMap id="ShopSaleGoodsListVMMap" class="Goods.SPI.ShopSaleGoodsListVM">
<result property="ID" column="Good_ID"/>
<result property="Name" column="Good_Name"/>
<result property="GoodsState" column="Good_State"/>
<result property="TypeID" column="Good_Type" />
<result property="ShopName" column="GS_Name"/>
<result property="ShopState" column="GS_State"/>
<result property="GbpvList" column="GoodsID=Good_ID,ShopID=Good_ShopID,CityID=CityID,ShowType=ShowType,SaleType=SaleType,CombineType=CombineType" select="GetShopGoodsGbpvListForInclude"/>
</resultMap> </resultMaps> <statements> <!--查询店铺可售的商品列表-->
<select id="GetShopGoodsGbpvList" resultMap="ShopSaleGoodsListVMMap" parameterClass="Goods.SPI.GetShopGoodsGbpvInfoListDto"> select * from (
select ROW_NUMBER() Over(order by Good_Order desc) as row_num,
Good_ID,Good_Type,Good_Name,Good_State, Good_Order,Good_RootTypeID,Good_ShopID
,'' GS_Name,'' GS_State,#ShowType# ShowType,#SaleType# SaleType,#CombineType# CombineType,isnull(#CityID#,'') CityID
from goodtable a with(nolock)
inner join goodDetailTable b with(nolock)
on GDI_ID=Good_DefaultGDIID and Good_SaleType='1' and Good_State='2' and b.DelFlag='0' and a.DelFlag='0'
where Good_ShopID=#ShopID# and Good_SaleType='1' and Good_State='2' and a.Delflag='0'
<isNotEmpty prepend="and" property="GoodsTypeArr">
Good_Type in
<iterate open=" (" close=") " conjunction="," property="GoodsTypeArr" >
#GoodsTypeArr[]#
</iterate>
</isNotEmpty>
and exists (select 1 from goodPropertyTable with(nolock) where GBPV_GoodID=Good_ID <isNotEmpty prepend=" " property="SaleType">
and GBPV_SaleType=#SaleType#
</isNotEmpty>
<isNotEmpty prepend=" " property="ShowType">
and GBPV_ShowType=#ShowType#
</isNotEmpty>
<isNotEmpty prepend=" " property="CombineType">
and GBPV_CombineType=#CombineType#
</isNotEmpty>
<isNotEmpty prepend=" " property="IsNeedExchange">
and GBPV_IsNeedExchange=#IsNeedExchange#
</isNotEmpty> and DelFlag='0' and GBPV_State='2' )
) f where row_num between (#Page#-1)*#Rows#+1 and (#Page#-1)*#Rows#+#Rows# </select> <!--查询店铺的商品详情列表-->
<select id="GetShopGoodsGbpvListForInclude" resultClass="Goods.SPI.ShopGoodsGbpvInfoVM" >
select
GDI_ID ID,GDI_GoodID GoodsID,GDI_ShopID ShopID,GDI_GBPVID GbpvID,GDI_Title Title,GDI_ImgURL ImgURL,GBPV_SKUGroupName SKUGroupName,
case when GDI_GetGoodsType='2' or GDI_GetGoodsType='3' then
isnull((select top 1 GIBT_Price from goodInfoTable with(nolock)
where GIBT_GbpvID=GDI_GBPVID and delflag='0'
and GIBT_EndDate>=getdate() and GIBT_Price>0 and ( GIBT_CityID=#CityID# or GIBT_CityID='*')
order by GIBT_StartDate asc
),0)
else
isnull((select top 1 GP_Price from pricetable c with(nolock) where GP_GBPVID = Gbpv_ID and GP_ShopID=Gbpv_ShopID and c.DelFlag='0'),0)
end Price
from goodDetailTable b with(nolock)
inner join goodPropertyTable j with(nolock) on GBPV_ID=GDI_GBPVID <isNotEmpty prepend=" " property="SaleType">
and GBPV_SaleType=#SaleType#
</isNotEmpty>
<isNotEmpty prepend=" " property="ShowType">
and GBPV_ShowType=#ShowType#
</isNotEmpty>
<isNotEmpty prepend=" " property="CombineType">
and GBPV_CombineType=#CombineType#
</isNotEmpty>
and GBPV_State='2' and j.DelFlag='0' where GDI_GoodID=#GoodsID# and GDI_ShopID=#ShopID# and b.DelFlag='0'
and (GDI_EndValidityDate>getdate() or GDI_EndValidityDate is null) order by GBPV_Sort
</select> <!--新增商品标签、城市、价格、库存、图片、介绍、售后、反选城市信息-->
<update id="CreateGoodsParams" parameterClass="Goods.SPI.CreateGoodsDto"> update goodTagTable set DelFlag='1',LastModifier=#LastModifier#,LastModifyTime=#LastModifyTime#
where GTS_GoodsID=#GoodsID# and GTS_GbpvID=#GbpvID# and GTS_ShopID=#ShopID#
<isNotEmpty prepend=" " property="ExistsTagList">
and GTS_ID not in
<iterate open="(" close=")" conjunction="," property="ExistsTagList" >
#ExistsTagList[].ID#
</iterate>
</isNotEmpty>
and DelFlag='0' <isNotEmpty prepend=" " property="ExistsTagList">
<iterate open=" " close=" " conjunction=";" property="ExistsTagList" >
update goodTagTable set
GTS_TagID=#ExistsTagList[].TagID#
,GTS_CityID=#ExistsTagList[].CityID#
,GTS_Sort=#ExistsTagList[].Sort#
,LastModifier=#LastModifier#
,LastModifyTime=#LastModifyTime#
where GTS_ID=#ExistsTagList[].ID#
and GTS_GbpvID=#ExistsTagList[].GbpvID# and GTS_ShopID=#ExistsTagList[].ShopID#
and DelFlag='0'
</iterate>
</isNotEmpty> <isNotEmpty prepend=" " property="NotExistsTagList">
<iterate open=" " close=" " conjunction=";" property="NotExistsTagList" >
insert into goodTagTable (GTS_ID,GTS_GoodsID,GTS_GbpvID,GTS_ShopID,GTS_CityID,GTS_TagID,GTS_Sort,DelFlag,Creator,CreateTime,LastModifier,LastModifyTime)
values(#NotExistsTagList[].ID#,#NotExistsTagList[].GoodsID#,#NotExistsTagList[].GbpvID#,#NotExistsTagList[].ShopID#,#NotExistsTagList[].CityID#,#NotExistsTagList[].TagID#,#NotExistsTagList[].Sort#,0,#Creator#,#CreateTime#,#LastModifier#,#LastModifyTime#) </iterate>
</isNotEmpty> <include refid="UpdateGoodsTimeInfo"></include>
</update> <!--更新商品销售日期信息-->
<sql id="UpdateGoodsTimeInfo">
update goodInfoTable set DelFlag='1',LastModifier=#LastModifier#,LastModifyTime=#LastModifyTime#
where GIBT_GoodsID=#GoodsID# and GIBT_GbpvID=#GbpvID# and GIBT_ShopID=#ShopID#
<isNotEmpty prepend=" " property="ExistsSaleDaysInfoList">
and GIBT_ID not in
<iterate open="(" close=")" conjunction="," property="ExistsSaleDaysInfoList" >
#ExistsSaleDaysInfoList[].ID#
</iterate>
</isNotEmpty>
and DelFlag='0'
<isNotEmpty prepend=" " property="ExistsSaleDaysInfoList">
<iterate open=" " close=" " conjunction=";" property="ExistsSaleDaysInfoList" >
update goodInfoTable set
GIBT_MarketPrice=#ExistsSaleDaysInfoList[].MarketPrice#
,GIBT_Price=#ExistsSaleDaysInfoList[].Price#
,GIBT_Inventory=#ExistsSaleDaysInfoList[].Inventory#
,GIBT_StartDate=#ExistsSaleDaysInfoList[].StartDate#
,GIBT_EndDate=#ExistsSaleDaysInfoList[].EndDate#
,GIBT_CityID=#ExistsSaleDaysInfoList[].CityID#
,LastModifier=#LastModifier#,LastModifyTime=#LastModifyTime#
where GIBT_ID=#ExistsSaleDaysInfoList[].ID#
and GIBT_GbpvID=#ExistsSaleDaysInfoList[].GbpvID# and GIBT_ShopID=#ExistsSaleDaysInfoList[].ShopID#
and DelFlag='0'
</iterate>
</isNotEmpty>
<isNotEmpty prepend=" " property="NotExistsSaleDaysInfoList">
<iterate open=" " close=" " conjunction=";" property="NotExistsSaleDaysInfoList" >
insert into goodInfoTable (GIBT_ID,GIBT_ShopID,GIBT_GoodsID,GIBT_GbpvID,GIBT_CityID,GIBT_Price,GIBT_MarketPrice,GIBT_Inventory,GIBT_StartDate,GIBT_EndDate,DelFlag,Creator,CreateTime,LastModifier,LastModifyTime)
values(#NotExistsSaleDaysInfoList[].ID#,#NotExistsSaleDaysInfoList[].ShopID#,#NotExistsSaleDaysInfoList[].GoodsID#,#NotExistsSaleDaysInfoList[].GbpvID#,#NotExistsSaleDaysInfoList[].CityID#,#NotExistsSaleDaysInfoList[].Price#,#NotExistsSaleDaysInfoList[].MarketPrice#,#NotExistsSaleDaysInfoList[].Inventory#,#NotExistsSaleDaysInfoList[].StartDate#,#NotExistsSaleDaysInfoList[].EndDate#,0,#Creator#,#CreateTime#,#LastModifier#,#LastModifyTime#)
</iterate>
</isNotEmpty>
</sql> </statements>
</sqlMap>
常用IBatis属性的更多相关文章
- 了解screen对象的常用视图属性
前面的话 screen对象基本上只用来表明客户端的能力,其中包括浏览器窗口外部的显示器的信息,如像素高度和宽度等.每个浏览器中的screen对象都包含着各不相同的属性.本文将详细介绍screen对象的 ...
- 【转】MySQL数据类型和常用字段属性总结
来源:http://www.jb51.net/article/55853.htm 这里先总结数据类型.MySQL中的数据类型大的方面来分,可以分为:日期和时间.数值,以及字符串.下面就分开来进行总结. ...
- MySQL数据类型和常用字段属性总结
前言 好比C++中,定义int类型需要多少字节,定义double类型需要多少字节一样,MySQL对表每个列中的数据也会实行严格控制,这是数据驱动应用程序成功的关键.MySQL提供了一组可以赋给表中各个 ...
- 12-27cell常用的属性
1.创建cell // 创建一个cell并且设置cell的风格 UITableViewCell *cell = [[UITableViewCell alloc]initWithStyle:UI ...
- CSS属性(常用的属性)
CSS属性(常用的属性)http://www.w3school.com.cn/cssref/index.asp 一:文本与字体属性 1.字体属性 (1):font-size:字体的大小(例如:font ...
- javascript中常用坐标属性offset、scroll、client
原文:javascript中常用坐标属性offset.scroll.client 今天在学习js的时候觉得这个问题比较容易搞混,所以自己画了一个简单的图,并且用js控制台里面输出测试了下,便于理解. ...
- CSS样式表之常用文本属性
断更了两周了,因为纠结之后在学java啦,但是还是要把学过的前端知识更完 以下的一些文本属性是CSS最常用的属性: [长度单位]:px(像素) [颜色单位]: 十六进制:#ffffff 分别对应红绿蓝 ...
- css常用文本属性
[CSS常用文本属性] 1. 字体.字号类: ① font-weight: 字体粗细. bold-加粗.normal-正常.lighter-细体 也可以使用100-900数值,400表示normal, ...
- 常用css属性
一.常用css属性 (1) *block(区块) 行高 line-height:数值 | inherit | normal;字间距 letter-spacing: 数值 | inherit | nor ...
- CSS常用样式属性
1.CSS字体和文本相关属性 属性 font-family 规定文本的字体系列,比如:“serif” ''sans-serif" font-size 规定文本的字体尺寸 font-style ...
随机推荐
- element-ui/lib/style.css in ./src/main.js 解决方案
在node_modules 中 找到element-ui/lib路径 创建style.css文件 就好了
- ajax请求头添加参数
在请求ajax时 ,有时后台要求在请求头里边上参数 ,这种情况下一般都是在原生APP项目当中,因为要在登录状态下才,所有要传token和登录id, var token = localStorage.g ...
- VueRouter 报错:inject() can only be used inside setup() or functional components
单独创建的一个文件,封装了登录函数的业务逻辑,出现了一个警告,紧接着就是报错:说不能读取到路由的 push 函数.路由必须在组件里面使用,不能在 ts 或 js 文件中使用. 还要注意的点是,在使用路 ...
- CMakeLists.txt模板
编译动态库的模板 add_library 生成可执行程序换成add_executable 不需要调试信息的去掉 -g 不需要警告信息的去掉 -Wall 这应该是 -W all的组合 cmake_min ...
- 前端有关请求的相关内容axios
在请求头中常见的类型有 类型一 查看消息体 此时的请求拦截器中不需要对数据( 对象的形式 ) 进行修饰,默认会将数据修复为json的格式 类型二,当我们使用qs库对数据进行转换后(qs库的存在旨在是将 ...
- 2021.09 ccf csp 第四题 收集卡牌
2021.09 ccf csp 第四题 收集卡牌 思路 这题如果直接计算,因为不同的分类种数太多,枚举所有的分类情况是一个几乎不可能的复杂任务. 但不同摸牌次数,不同已摸出牌种类的子问题的答案之间,具 ...
- TensorFlow中的Session
这一次我们会讲到 Tensorflow 中的 Session, Session 是 Tensorflow 为了控制,和输出文件的执行的语句. 运行 session.run() 可以获得你要得知的运算结 ...
- 新的学习历程-python2 print
1 print('hello world!') 2 print('hello','world!') #逗号自动添加默认的分隔符:空格 3 print('hello'+'world!') #加号表示字符 ...
- GitHub访问缓慢
参考:https://www.cnblogs.com/liuchao888/p/11733996.html
- vue项目使用vue-amap调用高德地图api详细步骤
想要的效果如下 : 高德地图 && 信息窗体 步骤一: 申请高德key 高德开放平台 | 高德地图API (amap.com) (可参考博客: [996]如何申请高德地图用户Key ...