常用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 ...
随机推荐
- ABP微服务系列学习-搭建自己的微服务结构(四)
上篇我们实现了认证服务和网关服务,基本我们的基础服务已经完成了,接下来我们才需要做服务的数据迁移.这里我们需要使用EF的CodeFirst模式.通过DotnetCli的命令去操作: dotnet ef ...
- Vue mixin混入的介绍
功能:可以把多个组件共用的配置提取成一个混入对象 使用方式: 1.第一步:定义混合,例如: 2.第二步:使用混合(全局混合和局部混合) (1)局部混合 mixins:['XXX'] (2)全局混合 V ...
- mysql常用命令汇总
1.查询表占用空间语句:SELECT CONCAT(table_schema,'.',table_name) AS 'Table Name', table_rows AS 'Number of Row ...
- WPF标题栏自定义
1.废话不多说直接上代码 <Window.Resources> <Style x:Key="btnTitleMaxMin" TargetType="Bu ...
- vue 项目配置自动打压缩包
vue cli3 创建的项目 1.安装包 npm install filemanager-webpack-plugin --save-dev npm install silly-datetime -- ...
- Neo4j安装及简单使用【转】
转载防丢失. 一.Neo4j和图数据库简介 neo4j是基于Java语言编写图形数据库.图是一组节点和连接这些节点的关系.图形数据库也被称为图形数据库管理系统或GDBMS. Neo4j的是一种流行的图 ...
- linux 下安装django时出的错误
解决方法 找到widgets.py 之后vim widgets.py 找到出错语句: 去掉末尾那个逗号即可.
- 《黑马旅游网》综合案例六 BaseServlet 抽取
BaseServlet抽取 减少Servlet的数量,现在是一个功能一个Servlet,将其优化为一个模块一个Servlet, 相当于在数据库中一张表对应一个Servlet,在Servlet中提供不同 ...
- vim下的查找命令
linux下vim 查找命令: /text --查找text, 按n查找下一个, N查找上一个 ?text --查找text(反向查找), 按n查找下一个, N查找上一个 */# --查找光标当前的单 ...
- linux挂载磁盘步骤
一.查看需要挂载设备,如下sda(默认路径/dev/sda) 二.新建分区,执行如下命令进入操作 fdisk /dev/sda 1.m 查看可操作的命令 2.键入 n ,根据需要新建分区 3.键入 d ...