Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
P
pms-ci-test
概览
概览
详情
活动
周期分析
版本库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
test-ci
pms-ci-test
Commits
97194407
提交
97194407
authored
6月 07, 2023
作者:
xiaowang
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
新增:商品订单需要用到的接口
上级
92587869
隐藏空白字符变更
内嵌
并排
正在显示
19 个修改的文件
包含
720 行增加
和
14 行删除
+720
-14
BackstageGoodsManageController.java
...om/mmc/pms/controller/BackstageGoodsManageController.java
+19
-0
GoodsInfoDao.java
src/main/java/com/mmc/pms/dao/GoodsInfoDao.java
+11
-0
IndustrySpecDao.java
src/main/java/com/mmc/pms/dao/IndustrySpecDao.java
+1
-0
ProductDao.java
src/main/java/com/mmc/pms/dao/ProductDao.java
+6
-0
MallGoodsInfoSimpleDO.java
src/main/java/com/mmc/pms/entity/MallGoodsInfoSimpleDO.java
+44
-0
MallGoodsProductDO.java
src/main/java/com/mmc/pms/entity/MallGoodsProductDO.java
+47
-0
MallGoodsSpecSimpleDO.java
src/main/java/com/mmc/pms/entity/MallGoodsSpecSimpleDO.java
+41
-0
OrderGoodsIndstDTO.java
src/main/java/com/mmc/pms/model/dto/OrderGoodsIndstDTO.java
+3
-3
OrderGoodsIndstDetailDTO.java
.../java/com/mmc/pms/model/dto/OrderGoodsIndstDetailDTO.java
+58
-0
OrderGoodsIndstProdListDTO.java
...ava/com/mmc/pms/model/dto/OrderGoodsIndstProdListDTO.java
+55
-0
OrderGoodsProdDTO.java
src/main/java/com/mmc/pms/model/dto/OrderGoodsProdDTO.java
+2
-2
OrderGoodsProdDetailDTO.java
...n/java/com/mmc/pms/model/dto/OrderGoodsProdDetailDTO.java
+79
-0
ClassifyInfoVO.java
src/main/java/com/mmc/pms/model/vo/ClassifyInfoVO.java
+4
-1
GoodsInfoService.java
src/main/java/com/mmc/pms/service/GoodsInfoService.java
+6
-3
GoodsInfoServiceImpl.java
...n/java/com/mmc/pms/service/Impl/GoodsInfoServiceImpl.java
+170
-0
CategoriesDao.xml
src/main/resources/mapper/CategoriesDao.xml
+2
-4
GoodsInfoDao.xml
src/main/resources/mapper/GoodsInfoDao.xml
+114
-0
IndustrySpecDao.xml
src/main/resources/mapper/IndustrySpecDao.xml
+14
-0
ProductDao.xml
src/main/resources/mapper/ProductDao.xml
+44
-1
没有找到文件。
src/main/java/com/mmc/pms/controller/BackstageGoodsManageController.java
浏览文件 @
97194407
...
...
@@ -2,6 +2,7 @@ package com.mmc.pms.controller;
import
com.mmc.pms.common.ResultBody
;
import
com.mmc.pms.model.dto.*
;
import
com.mmc.pms.model.qo.MallOrderGoodsInfoQO
;
import
com.mmc.pms.model.qo.ProductSpecPriceQO
;
import
com.mmc.pms.model.vo.Create
;
import
com.mmc.pms.model.vo.GoodsAddVO
;
...
...
@@ -79,4 +80,22 @@ public class BackstageGoodsManageController {
@RequestParam
(
value
=
"tagId"
)
Integer
tagId
)
{
return
goodsInfoService
.
feignGetUnitPriceByTag
(
specId
,
tagId
);
}
@ApiOperation
(
value
=
"根据商品的产品规格id查询商品信息"
)
@ApiIgnore
@PostMapping
(
"feignListProdGoodsSkuInfo"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
OrderGoodsProdDTO
.
class
)})
public
List
<
OrderGoodsProdDTO
>
feignListProdGoodsSkuInfo
(
@RequestBody
MallOrderGoodsInfoQO
mallOrderGoodsInfoQO
)
{
return
goodsInfoService
.
feignListProdGoodsSkuInfo
(
mallOrderGoodsInfoQO
);
}
@ApiOperation
(
value
=
"根据商品的行业规格id查询商品清单信息"
)
@ApiIgnore
@PostMapping
(
"feignListIndstGoodsSkuInfo"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
OrderGoodsProdDTO
.
class
)})
public
List
<
OrderGoodsIndstDTO
>
feignListIndstGoodsSkuInfo
(
@RequestBody
MallOrderGoodsInfoQO
mallOrderGoodsInfoQO
)
{
return
goodsInfoService
.
feignListIndstGoodsSkuInfo
(
mallOrderGoodsInfoQO
);
}
}
src/main/java/com/mmc/pms/dao/GoodsInfoDao.java
浏览文件 @
97194407
...
...
@@ -77,6 +77,17 @@ public interface GoodsInfoDao {
void
batchUpdateMallProdSpec
(
List
<
Integer
>
delSpecId
);
List
<
MallGoodsSpecInfoDO
>
listProdSpecInfo
(
@Param
(
"prodIds"
)
Set
<
Integer
>
prodIds
);
List
<
MallGoodsSpecInfoDO
>
listIndstSpecInfo
(
@Param
(
"indstIds"
)
Set
<
Integer
>
indstIds
);
List
<
GoodsServiceDO
>
listGoodsService
(
List
<
Integer
>
goodsIds
);
List
<
MallGoodsInfoSimpleDO
>
listMallGoodsIndstSimpleInfo
(
@Param
(
"indstSkuSpecIds"
)
Set
<
Integer
>
indstSkuSpecIds
);
List
<
Integer
>
listIndustrySpecIds
(
Set
<
Integer
>
mallIndstSkuSpecIds
);
List
<
MallGoodsProductDO
>
listIndustryProductList
(
List
<
Integer
>
industrySpecIds
);
}
...
...
src/main/java/com/mmc/pms/dao/IndustrySpecDao.java
浏览文件 @
97194407
...
...
@@ -96,4 +96,5 @@ public interface IndustrySpecDao {
List
<
MallIndustrySkuInfoSpecDO
>
getIndustrySkuInfoSpec
(
Integer
goodsInfoId
);
List
<
IndustrySpecPriceDO
>
listIndustrySpecPrice
(
Integer
channelClass
,
List
<
Integer
>
industrySpecIds
);
}
src/main/java/com/mmc/pms/dao/ProductDao.java
浏览文件 @
97194407
package
com
.
mmc
.
pms
.
dao
;
import
com.mmc.pms.entity.*
;
import
com.mmc.pms.model.dto.OrderGoodsProdDTO
;
import
com.mmc.pms.model.dto.ProductSkuVO
;
import
com.mmc.pms.model.dto.ProductSpecPriceDTO
;
import
com.mmc.pms.model.dto.ProductSpecVO
;
import
com.mmc.pms.model.qo.MallOrderGoodsInfoQO
;
import
com.mmc.pms.model.qo.ProductSkuQO
;
import
com.mmc.pms.model.vo.PriceAcquisition
;
import
com.mmc.pms.model.vo.ProductSpecCPQVO
;
...
...
@@ -104,6 +106,10 @@ public interface ProductDao {
List
<
ProductSpecDO
>
getProductSpecList
(
List
<
Integer
>
productSkuIds
);
List
<
MallProdSkuInfoSpecDO
>
getProductSpecByIds
(
List
<
Integer
>
delProductSpecId
);
Set
<
Integer
>
listProductSpecIds
(
@Param
(
"mallProdSkuSpecIds"
)
Set
<
Integer
>
mallProdSkuSpecIds
);
List
<
OrderGoodsProdDTO
>
listProdGoodsSkuInfo
(
MallOrderGoodsInfoQO
mallOrderGoodsInfoQO
);
}
...
...
src/main/java/com/mmc/pms/entity/MallGoodsInfoSimpleDO.java
0 → 100644
浏览文件 @
97194407
package
com
.
mmc
.
pms
.
entity
;
import
com.mmc.pms.model.dto.OrderGoodsIndstDTO
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.io.Serializable
;
import
java.util.List
;
import
java.util.stream.Collectors
;
/**
* author:zhenjie
* Date:2022/10/20
* time:16:50
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
public
class
MallGoodsInfoSimpleDO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
-
9183566814152128414L
;
@ApiModelProperty
(
value
=
"商品id"
)
private
Integer
id
;
@ApiModelProperty
(
value
=
"商品所属类型"
)
private
Integer
sortTypeId
;
@ApiModelProperty
(
value
=
"商品编号"
)
private
String
goodsNo
;
@ApiModelProperty
(
value
=
"商品名称"
)
private
String
goodsName
;
@ApiModelProperty
(
value
=
"商品主图"
)
private
String
mainImg
;
@ApiModelProperty
(
value
=
"状态 0:下架 1:上架"
)
private
Integer
shelfStatus
;
@ApiModelProperty
(
value
=
"是否删除"
)
private
Integer
deleted
;
@ApiModelProperty
(
value
=
"商品规格信息"
)
private
List
<
MallGoodsSpecSimpleDO
>
mallGoodsSpecSimpleDOS
;
public
OrderGoodsIndstDTO
buildOrderGoodsIndstDTO
()
{
return
OrderGoodsIndstDTO
.
builder
().
goodsInfoId
(
this
.
id
).
goodsName
(
this
.
goodsName
).
sortTypeId
(
this
.
sortTypeId
).
goodsNo
(
this
.
goodsNo
).
mainImg
(
this
.
mainImg
).
valid
(
this
.
deleted
.
equals
(
0
)
&&
this
.
shelfStatus
.
equals
(
1
)
?
true
:
false
)
.
orderGoodsIndstDetailDTOS
(
mallGoodsSpecSimpleDOS
==
null
?
null
:
this
.
mallGoodsSpecSimpleDOS
.
stream
().
map
(
d
->
d
.
buildOrderGoodsIndstDetailDTO
()).
collect
(
Collectors
.
toList
())).
build
();
}
}
src/main/java/com/mmc/pms/entity/MallGoodsProductDO.java
0 → 100644
浏览文件 @
97194407
package
com
.
mmc
.
pms
.
entity
;
import
com.mmc.pms.model.dto.OrderGoodsIndstProdListDTO
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.io.Serializable
;
/**
* author:zhenjie
* Date:2022/10/20
* time:16:57
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
public
class
MallGoodsProductDO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
-
8801235084545192790L
;
@ApiModelProperty
(
value
=
"行业规格id"
)
private
Integer
industrySpecId
;
@ApiModelProperty
(
value
=
"产品规格id"
)
private
Integer
productSpecId
;
@ApiModelProperty
(
value
=
"产品规格名称"
)
private
String
specName
;
@ApiModelProperty
(
value
=
"产品规格图片"
)
private
String
prodSkuSpecImage
;
@ApiModelProperty
(
value
=
"料号"
)
private
String
partNo
;
@ApiModelProperty
(
value
=
"版本描述"
)
private
String
versionDesc
;
@ApiModelProperty
(
value
=
"商品产品类型名称"
)
private
String
goodsTypeName
;
@ApiModelProperty
(
value
=
"产品名称"
)
private
String
productName
;
@ApiModelProperty
(
value
=
"型号"
)
private
String
model
;
@ApiModelProperty
(
value
=
"品牌"
)
private
String
productBrand
;
public
OrderGoodsIndstProdListDTO
buildOrderGoodsIndstProdListDTO
()
{
return
OrderGoodsIndstProdListDTO
.
builder
().
productSpecId
(
this
.
productSpecId
).
prodSkuSpecName
(
this
.
specName
).
prodSkuSpecImage
(
this
.
prodSkuSpecImage
)
.
partNo
(
this
.
partNo
).
versionDesc
(
this
.
versionDesc
).
goodsTypeName
(
this
.
goodsTypeName
).
productName
(
this
.
productName
).
model
(
this
.
model
).
productBrand
(
this
.
productBrand
).
build
();
}
}
src/main/java/com/mmc/pms/entity/MallGoodsSpecSimpleDO.java
0 → 100644
浏览文件 @
97194407
package
com
.
mmc
.
pms
.
entity
;
import
com.mmc.pms.model.dto.OrderGoodsIndstDetailDTO
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
import
java.util.List
;
import
java.util.stream.Collectors
;
/**
* author:zhenjie
* Date:2022/10/20
* time:16:47
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
public
class
MallGoodsSpecSimpleDO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1452073707519053399L
;
private
Integer
mallIndustrySkuInfoSpecId
;
private
Integer
industrySpecId
;
private
String
specName
;
private
String
specImage
;
private
BigDecimal
unitPrice
;
private
Integer
skuInfoDeleted
;
private
Integer
skuSpecDeleted
;
private
Integer
specDeleted
;
private
String
unitName
;
private
List
<
MallGoodsProductDO
>
mallGoodsProductDOS
;
public
OrderGoodsIndstDetailDTO
buildOrderGoodsIndstDetailDTO
()
{
return
OrderGoodsIndstDetailDTO
.
builder
().
mallIndstSkuInfoSpecId
(
this
.
mallIndustrySkuInfoSpecId
).
industrySpecId
(
this
.
industrySpecId
).
industrySkuSpecName
(
this
.
specName
)
.
industrySkuSpecImage
(
this
.
specImage
).
unitPrice
(
this
.
unitPrice
).
valid
(
this
.
skuInfoDeleted
.
equals
(
0
)
&&
this
.
skuSpecDeleted
.
equals
(
0
)
&&
this
.
specDeleted
.
equals
(
0
)
?
true
:
false
)
.
orderGoodsIndstProdListDTOS
(
mallGoodsProductDOS
==
null
?
null
:
mallGoodsProductDOS
.
stream
().
map
(
d
->
d
.
buildOrderGoodsIndstProdListDTO
()).
collect
(
Collectors
.
toList
()))
.
unitName
(
this
.
unitName
).
build
();
}
}
src/main/java/com/mmc/pms/model/dto/OrderGoodsIndstDTO.java
浏览文件 @
97194407
...
...
@@ -51,9 +51,9 @@ public class OrderGoodsIndstDTO implements Serializable {
@ApiModelProperty
(
value
=
"是否有效"
)
private
Boolean
valid
;
//
//
@ApiModelProperty(value = "行业订单规格")
//
private List<OrderGoodsIndstDetailDTO> orderGoodsIndstDetailDTOS;
@ApiModelProperty
(
value
=
"行业订单规格"
)
private
List
<
OrderGoodsIndstDetailDTO
>
orderGoodsIndstDetailDTOS
;
@ApiModelProperty
(
"商品服务列表"
)
private
List
<
GoodsServiceDTO
>
services
;
...
...
src/main/java/com/mmc/pms/model/dto/OrderGoodsIndstDetailDTO.java
0 → 100644
浏览文件 @
97194407
package
com
.
mmc
.
pms
.
model
.
dto
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
import
java.util.Date
;
import
java.util.List
;
/**
* author:zhenjie
* Date:2022/10/21
* time:17:44
*/
@Builder
@Data
@AllArgsConstructor
@NoArgsConstructor
@ApiModel
(
value
=
"com.mmc.csf.mall.dto.OrderGoodsIndstDetailDTO"
,
description
=
"行业订单规格DTO"
)
public
class
OrderGoodsIndstDetailDTO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
3716298704318911013L
;
@ApiModelProperty
(
value
=
"行业订单规格id"
)
private
Integer
id
;
@ApiModelProperty
(
value
=
"行业订单id"
)
private
Integer
orderGoodsIndstId
;
@ApiModelProperty
(
value
=
"购物车详情id"
)
private
Integer
mallIndstShopCarDetailId
;
@ApiModelProperty
(
value
=
"商品行业规格id"
)
private
Integer
mallIndstSkuInfoSpecId
;
@ApiModelProperty
(
value
=
"行业规格id"
)
private
Integer
industrySpecId
;
@ApiModelProperty
(
value
=
"行业规格名称"
)
private
String
industrySkuSpecName
;
@ApiModelProperty
(
value
=
"行业规格图片"
)
private
String
industrySkuSpecImage
;
@ApiModelProperty
(
value
=
"购买数量"
)
private
Integer
buyNum
;
@ApiModelProperty
(
value
=
"行业规格单价"
)
private
BigDecimal
unitPrice
;
@ApiModelProperty
(
value
=
"行业所有规格总额"
)
private
BigDecimal
skuSpecAmount
;
@ApiModelProperty
(
value
=
"生成时间"
)
private
Date
createTime
;
@ApiModelProperty
(
value
=
"更新时间"
)
private
Date
updateTime
;
@ApiModelProperty
(
value
=
"是否有效"
)
private
Boolean
valid
;
@ApiModelProperty
(
value
=
"产品单位名称"
)
private
String
unitName
;
private
List
<
OrderGoodsIndstProdListDTO
>
orderGoodsIndstProdListDTOS
;
}
src/main/java/com/mmc/pms/model/dto/OrderGoodsIndstProdListDTO.java
0 → 100644
浏览文件 @
97194407
package
com
.
mmc
.
pms
.
model
.
dto
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.io.Serializable
;
import
java.util.Date
;
/**
* author:zhenjie
* Date:2022/10/21
* time:17:54
*/
@Builder
@Data
@AllArgsConstructor
@NoArgsConstructor
@ApiModel
(
value
=
"com.mmc.csf.mall.dto.OrderGoodsIndstProdListDTO"
,
description
=
"行业规格对应产品清单DTO"
)
public
class
OrderGoodsIndstProdListDTO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
-
1838976151472371521L
;
@ApiModelProperty
(
value
=
"id"
)
private
Integer
id
;
@ApiModelProperty
(
value
=
"行业订单规格id"
)
private
Integer
orderGoodsIndstDetailId
;
@ApiModelProperty
(
value
=
"产品类型名称"
)
private
String
goodsTypeName
;
@ApiModelProperty
(
value
=
"产品名称"
)
private
String
productName
;
@ApiModelProperty
(
value
=
"型号"
)
private
String
model
;
@ApiModelProperty
(
value
=
"品牌"
)
private
String
productBrand
;
@ApiModelProperty
(
value
=
"产品规格id"
)
private
Integer
productSpecId
;
@ApiModelProperty
(
value
=
"产品规格名称"
)
private
String
prodSkuSpecName
;
@ApiModelProperty
(
value
=
"产品规格图片"
)
private
String
prodSkuSpecImage
;
@ApiModelProperty
(
value
=
"料号"
)
private
String
partNo
;
@ApiModelProperty
(
value
=
"版本描述"
)
private
String
versionDesc
;
@ApiModelProperty
(
value
=
"购买数量"
)
private
Integer
buyNum
;
@ApiModelProperty
(
value
=
"生成时间"
)
private
Date
createTime
;
@ApiModelProperty
(
value
=
"更新时间"
)
private
Date
updateTime
;
@ApiModelProperty
(
value
=
"单位名称-产品规格"
)
private
String
unitName
;
}
src/main/java/com/mmc/pms/model/dto/OrderGoodsProdDTO.java
浏览文件 @
97194407
...
...
@@ -59,6 +59,6 @@ public class OrderGoodsProdDTO implements Serializable {
@ApiModelProperty
(
"商品服务列表"
)
private
List
<
GoodsServiceDTO
>
services
;
//
@ApiModelProperty(value = "订单详情")
//
private List<OrderGoodsProdDetailDTO> orderGoodsProdDetailDTOS;
@ApiModelProperty
(
value
=
"订单详情"
)
private
List
<
OrderGoodsProdDetailDTO
>
orderGoodsProdDetailDTOS
;
}
src/main/java/com/mmc/pms/model/dto/OrderGoodsProdDetailDTO.java
0 → 100644
浏览文件 @
97194407
package
com
.
mmc
.
pms
.
model
.
dto
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
import
java.util.Date
;
/**
* author:zhenjie
* Date:2022/10/19
* time:15:27
*/
@Builder
@Data
@AllArgsConstructor
@NoArgsConstructor
@ApiModel
(
value
=
"com.mmc.csf.mall.dto.OrderGoodsProdDetailDTO"
,
description
=
"订单最小sku信息"
)
public
class
OrderGoodsProdDetailDTO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
2079521148328016486L
;
@ApiModelProperty
(
value
=
"id"
)
private
Integer
id
;
@ApiModelProperty
(
value
=
"二级订单的id"
)
private
Integer
orderGoodsProdId
;
@ApiModelProperty
(
value
=
"购物车详情id"
)
private
Integer
mallProdShopCarDetailId
;
@ApiModelProperty
(
value
=
"商品skuId"
)
private
Integer
mallProdSkuInfoId
;
@ApiModelProperty
(
value
=
"商品sku详情id"
)
private
Integer
mallProdSkuInfoSpecId
;
@ApiModelProperty
(
value
=
"产品规格id"
)
private
Integer
productSpecId
;
@ApiModelProperty
(
value
=
"产品规格名称"
)
private
String
specName
;
@ApiModelProperty
(
value
=
"产品规格图片"
)
private
String
prodSkuSpecImage
;
@ApiModelProperty
(
value
=
"料号"
)
private
String
partNo
;
@ApiModelProperty
(
value
=
"版本描述"
)
private
String
versionDesc
;
@ApiModelProperty
(
value
=
"购买数量"
)
private
Integer
buyNum
;
@ApiModelProperty
(
value
=
"单价"
)
private
BigDecimal
unitPrice
;
@ApiModelProperty
(
value
=
"总价格"
)
private
BigDecimal
skuSpecAmount
;
@ApiModelProperty
(
value
=
"商品产品类型名称"
)
private
String
goodsTypeName
;
@ApiModelProperty
(
value
=
"产品名称"
)
private
String
productName
;
@ApiModelProperty
(
value
=
"型号"
)
private
String
model
;
@ApiModelProperty
(
value
=
"品牌"
)
private
String
productBrand
;
@ApiModelProperty
(
value
=
"品牌Id"
)
private
Integer
brandInfoId
;
@ApiModelProperty
(
value
=
"生成时间"
)
private
Date
createTime
;
@ApiModelProperty
(
value
=
"更新时间"
)
private
Date
updateTime
;
@ApiModelProperty
(
value
=
"是否有效"
)
private
Boolean
valid
;
@ApiModelProperty
(
value
=
"是否删除"
)
private
Integer
skuInfoDeleted
;
@ApiModelProperty
(
value
=
"是否删除"
)
private
Integer
skuSpecDeleted
;
@ApiModelProperty
(
value
=
"是否删除"
)
private
Integer
specDeleted
;
@ApiModelProperty
(
value
=
"单位名称"
)
private
String
unitName
;
}
src/main/java/com/mmc/pms/model/vo/ClassifyInfoVO.java
浏览文件 @
97194407
...
...
@@ -5,6 +5,8 @@ import lombok.AllArgsConstructor;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
javax.validation.constraints.Min
;
import
javax.validation.constraints.NotBlank
;
import
javax.validation.constraints.NotNull
;
import
javax.validation.constraints.Size
;
import
java.io.Serializable
;
...
...
@@ -18,6 +20,7 @@ import java.io.Serializable;
public
class
ClassifyInfoVO
implements
Serializable
{
@ApiModelProperty
(
value
=
"id"
)
@NotNull
(
message
=
"id不能为空"
,
groups
=
{
Update
.
class
})
@Min
(
value
=
1
,
groups
=
{
Update
.
class
})
private
Integer
id
;
@ApiModelProperty
(
value
=
"所属目录id"
)
...
...
@@ -26,7 +29,7 @@ public class ClassifyInfoVO implements Serializable {
@ApiModelProperty
(
value
=
"分类名称"
,
required
=
true
)
@Size
(
max
=
15
,
message
=
"分类名称不能超过15个字"
,
groups
=
{
Update
.
class
,
Create
.
class
})
@Not
Null
(
message
=
"分类名称不能为空
"
,
groups
=
{
Update
.
class
,
Create
.
class
})
@Not
Blank
(
message
=
"分类名称不能为空或空字符
"
,
groups
=
{
Update
.
class
,
Create
.
class
})
private
String
classifyName
;
@ApiModelProperty
(
value
=
"pid:一级分类的pid是0 二级分类pid是一级分类id"
,
required
=
true
)
...
...
src/main/java/com/mmc/pms/service/GoodsInfoService.java
浏览文件 @
97194407
package
com
.
mmc
.
pms
.
service
;
import
com.mmc.pms.common.ResultBody
;
import
com.mmc.pms.model.dto.MallGoodsShopCarDTO
;
import
com.mmc.pms.model.dto.MallProductSpecPriceDTO
;
import
com.mmc.pms.model.dto.ProductSpecPriceDTO
;
import
com.mmc.pms.model.dto.*
;
import
com.mmc.pms.model.qo.MallOrderGoodsInfoQO
;
import
com.mmc.pms.model.qo.ProductSpecPriceQO
;
import
com.mmc.pms.model.vo.GoodsAddVO
;
...
...
@@ -29,4 +28,8 @@ public interface GoodsInfoService {
List
<
MallProductSpecPriceDTO
>
feignListProductSpecPrice
(
ProductSpecPriceQO
productSpecPriceQO
);
ProductSpecPriceDTO
feignGetUnitPriceByTag
(
Integer
specId
,
Integer
tagId
);
List
<
OrderGoodsProdDTO
>
feignListProdGoodsSkuInfo
(
MallOrderGoodsInfoQO
mallOrderGoodsInfoQO
);
List
<
OrderGoodsIndstDTO
>
feignListIndstGoodsSkuInfo
(
MallOrderGoodsInfoQO
mallOrderGoodsInfoQO
);
}
src/main/java/com/mmc/pms/service/Impl/GoodsInfoServiceImpl.java
浏览文件 @
97194407
...
...
@@ -7,6 +7,7 @@ import com.mmc.pms.dao.IndustrySpecDao;
import
com.mmc.pms.dao.ProductDao
;
import
com.mmc.pms.entity.*
;
import
com.mmc.pms.model.dto.*
;
import
com.mmc.pms.model.qo.MallOrderGoodsInfoQO
;
import
com.mmc.pms.model.qo.ProductSpecPriceQO
;
import
com.mmc.pms.model.vo.*
;
import
com.mmc.pms.service.GoodsInfoService
;
...
...
@@ -609,6 +610,52 @@ public class GoodsInfoServiceImpl implements GoodsInfoService {
}
}
}
//对产品和行业的规格id进行分类
Set
<
Integer
>
prodIds
=
new
HashSet
<>();
Set
<
Integer
>
indstIds
=
new
HashSet
<>();
for
(
MallGoodsShopCarDTO
mallGoodsShopCarDTO
:
param
)
{
if
(
mallGoodsShopCarDTO
.
getDirectoryId
().
equals
(
1
))
{
for
(
MallSkuInfoSpecDTO
mallSkuInfoSpecDTO
:
mallGoodsShopCarDTO
.
getSkuList
())
{
prodIds
.
add
(
mallSkuInfoSpecDTO
.
getMallSkuInfoSpecId
());
}
}
else
if
(
mallGoodsShopCarDTO
.
getDirectoryId
().
equals
(
2
))
{
for
(
MallSkuInfoSpecDTO
mallSkuInfoSpecDTO
:
mallGoodsShopCarDTO
.
getSkuList
())
{
indstIds
.
add
(
mallSkuInfoSpecDTO
.
getMallSkuInfoSpecId
());
}
}
}
//根据规格id查找规格信息
List
<
MallGoodsSpecInfoDO
>
goodsSpecInfoDOList
=
new
ArrayList
<>();
if
(!
CollectionUtils
.
isEmpty
(
prodIds
))
{
List
<
MallGoodsSpecInfoDO
>
goodsProdSpecInfoDOList
=
goodsInfoDao
.
listProdSpecInfo
(
prodIds
);
goodsSpecInfoDOList
.
addAll
(
goodsProdSpecInfoDOList
);
}
if
(!
CollectionUtils
.
isEmpty
(
indstIds
))
{
List
<
MallGoodsSpecInfoDO
>
goodsIndstSpecInfoDOList
=
goodsInfoDao
.
listIndstSpecInfo
(
indstIds
);
goodsSpecInfoDOList
.
addAll
(
goodsIndstSpecInfoDOList
);
}
//根据查出来的sku,填充到MallGoodsShopCarDTO里面
for
(
MallGoodsShopCarDTO
mallGoodsShopCarDTO
:
param
)
{
for
(
MallGoodsSpecInfoDO
mallGoodsSpecInfoDO
:
goodsSpecInfoDOList
)
{
//找到对应商品
if
(
mallGoodsShopCarDTO
.
getGoodsInfoId
().
toString
().
equals
(
mallGoodsSpecInfoDO
.
getId
().
toString
())
&&
mallGoodsShopCarDTO
.
getDirectoryId
().
toString
().
equals
(
mallGoodsSpecInfoDO
.
getSortTypeId
().
toString
()))
{
for
(
SkuSpecDO
skuSpecDO
:
mallGoodsSpecInfoDO
.
getSkuSpecDOList
())
{
for
(
MallSkuInfoSpecDTO
mallSkuInfoSpecDTO
:
mallGoodsShopCarDTO
.
getSkuList
())
{
//根据对应规格进行填充
if
(
skuSpecDO
.
getId
().
toString
().
equals
(
mallSkuInfoSpecDTO
.
getMallSkuInfoSpecId
().
toString
()))
{
mallSkuInfoSpecDTO
.
setSpecName
(
skuSpecDO
.
getSpecName
());
mallSkuInfoSpecDTO
.
setDeleted
(
skuSpecDO
.
getSkuSpecDeleted
());
mallSkuInfoSpecDTO
.
setValid
(
skuSpecDO
.
getSkuSpecDeleted
()
==
0
&&
skuSpecDO
.
getSpecDeleted
()
==
0
);
break
;
}
}
}
break
;
}
}
}
return
param
;
}
...
...
@@ -649,6 +696,129 @@ public class GoodsInfoServiceImpl implements GoodsInfoService {
ProductSpecPriceDTO
price
=
productDao
.
feignGetUnitPrice
(
id
,
tagId
);
return
price
;
}
@Override
public
List
<
OrderGoodsProdDTO
>
feignListProdGoodsSkuInfo
(
MallOrderGoodsInfoQO
mallOrderGoodsInfoQO
)
{
//查询渠道等级对应的商品价格
Set
<
Integer
>
prodSkuSpecIds
=
productDao
.
listProductSpecIds
(
mallOrderGoodsInfoQO
.
getMallProdSkuSpecIds
());
List
<
ProductSpecPriceDO
>
productSpecPriceDOS
=
productDao
.
listProductSpecPrice
(
mallOrderGoodsInfoQO
.
getChannelClass
(),
prodSkuSpecIds
);
//查询商品信息
List
<
OrderGoodsProdDTO
>
orderGoodsProdDTOList
=
productDao
.
listProdGoodsSkuInfo
(
mallOrderGoodsInfoQO
);
if
(!
CollectionUtils
.
isEmpty
(
productSpecPriceDOS
))
{
//填充渠道价格
this
.
fillOrderGoodsProdPrice
(
orderGoodsProdDTOList
,
productSpecPriceDOS
,
prodSkuSpecIds
);
}
//还需配置商品规格金额, 单个商品skuSpecAmount, 全部小sku金额
List
<
Integer
>
goodsIds
=
orderGoodsProdDTOList
.
stream
().
map
(
OrderGoodsProdDTO:
:
getGoodsInfoId
).
collect
(
Collectors
.
toList
());
// 拼装商品服务
List
<
GoodsServiceDTO
>
services
=
goodsInfoDao
.
listGoodsService
(
goodsIds
).
stream
().
map
(
d
->
{
return
d
.
buildGoodsServiceDTO
();
}).
collect
(
Collectors
.
toList
());
Map
<
Integer
,
List
<
GoodsServiceDTO
>>
mapGoodsService
=
org
.
springframework
.
util
.
CollectionUtils
.
isEmpty
(
services
)
?
null
:
services
.
stream
()
.
collect
(
Collectors
.
groupingBy
(
GoodsServiceDTO:
:
getGoodsInfoId
));
List
<
OrderGoodsProdDTO
>
collect
=
orderGoodsProdDTOList
.
stream
().
map
(
d
->
{
OrderGoodsProdDTO
orderGoodsProdDTO
=
d
;
if
(
mapGoodsService
!=
null
&&
mapGoodsService
.
containsKey
(
d
.
getGoodsInfoId
()))
{
orderGoodsProdDTO
.
setServices
(
mapGoodsService
.
get
(
d
.
getGoodsInfoId
()));
}
return
orderGoodsProdDTO
;
}).
collect
(
Collectors
.
toList
());
return
collect
;
}
/**
* 填充产品规格价格
*
* @param orderGoodsProdDTOList
* @param productSpecPriceDOS
* @param prodSkuSpecIds
* @return
*/
private
List
<
OrderGoodsProdDTO
>
fillOrderGoodsProdPrice
(
List
<
OrderGoodsProdDTO
>
orderGoodsProdDTOList
,
List
<
ProductSpecPriceDO
>
productSpecPriceDOS
,
Set
<
Integer
>
prodSkuSpecIds
)
{
for
(
OrderGoodsProdDTO
orderGoodsProdDTO
:
orderGoodsProdDTOList
)
{
for
(
OrderGoodsProdDetailDTO
orderGoodsProdDetailDTO
:
orderGoodsProdDTO
.
getOrderGoodsProdDetailDTOS
())
{
//配置价格
for
(
ProductSpecPriceDO
productSpecPriceDO
:
productSpecPriceDOS
)
{
//找到规格对应的价格
if
(
productSpecPriceDO
.
getProductSpecId
().
toString
().
equals
(
orderGoodsProdDetailDTO
.
getProductSpecId
().
toString
()))
{
orderGoodsProdDetailDTO
.
setUnitPrice
(
productSpecPriceDO
.
getPrice
());
//配置价格后移除,剩余没有配置的
prodSkuSpecIds
.
removeIf
(
d
->
d
.
toString
().
equals
(
orderGoodsProdDetailDTO
.
getProductSpecId
().
toString
()));
break
;
}
}
}
}
return
orderGoodsProdDTOList
;
}
@Override
public
List
<
OrderGoodsIndstDTO
>
feignListIndstGoodsSkuInfo
(
MallOrderGoodsInfoQO
mallOrderGoodsInfoQO
)
{
//查询商品信息
List
<
MallGoodsInfoSimpleDO
>
mallGoodsInfoSimpleDOS
=
goodsInfoDao
.
listMallGoodsIndstSimpleInfo
(
mallOrderGoodsInfoQO
.
getMallIndstSkuSpecIds
());
List
<
Integer
>
industrySpecIds
=
goodsInfoDao
.
listIndustrySpecIds
(
mallOrderGoodsInfoQO
.
getMallIndstSkuSpecIds
());
//查询商品价格
List
<
IndustrySpecPriceDO
>
industrySpecPriceDOS
=
industrySpecDao
.
listIndustrySpecPrice
(
mallOrderGoodsInfoQO
.
getChannelClass
(),
industrySpecIds
);
//查询商品行业规格对应的产品清单
List
<
MallGoodsProductDO
>
mallGoodsProductDOS
=
goodsInfoDao
.
listIndustryProductList
(
industrySpecIds
);
//配置商品行业规格价格
this
.
fillOrderGoodsIndstPrice
(
mallGoodsInfoSimpleDOS
,
industrySpecPriceDOS
,
industrySpecIds
);
if
(!
CollectionUtils
.
isEmpty
(
industrySpecIds
))
{
//查询商品价格,找出市场价
List
<
IndustrySpecPriceDO
>
industryMarketPrice
=
industrySpecDao
.
listIndustrySpecPrice
(
0
,
industrySpecIds
);
this
.
fillOrderGoodsIndstPrice
(
mallGoodsInfoSimpleDOS
,
industryMarketPrice
,
industrySpecIds
);
}
//配置产品清单
for
(
MallGoodsInfoSimpleDO
mallGoodsInfoSimpleDO
:
mallGoodsInfoSimpleDOS
)
{
for
(
MallGoodsSpecSimpleDO
mallGoodsSpecSimpleDO
:
mallGoodsInfoSimpleDO
.
getMallGoodsSpecSimpleDOS
())
{
mallGoodsSpecSimpleDO
.
setMallGoodsProductDOS
(
new
ArrayList
<
MallGoodsProductDO
>());
//从产品清单中拿出对应的方案规格里面
for
(
MallGoodsProductDO
mallGoodsProductDO
:
mallGoodsProductDOS
)
{
if
(
mallGoodsProductDO
.
getIndustrySpecId
().
toString
().
equals
(
mallGoodsSpecSimpleDO
.
getIndustrySpecId
().
toString
()))
{
mallGoodsSpecSimpleDO
.
getMallGoodsProductDOS
().
add
(
mallGoodsProductDO
);
}
}
}
}
//转换对象
List
<
OrderGoodsIndstDTO
>
collect
=
mallGoodsInfoSimpleDOS
.
stream
().
map
(
d
->
d
.
buildOrderGoodsIndstDTO
()).
collect
(
Collectors
.
toList
());
// 拼装商品服务
List
<
Integer
>
goodsIds
=
collect
.
stream
().
map
(
OrderGoodsIndstDTO:
:
getGoodsInfoId
).
collect
(
Collectors
.
toList
());
List
<
GoodsServiceDTO
>
services
=
goodsInfoDao
.
listGoodsService
(
goodsIds
).
stream
().
map
(
d
->
d
.
buildGoodsServiceDTO
()).
collect
(
Collectors
.
toList
());
Map
<
Integer
,
List
<
GoodsServiceDTO
>>
mapGoodsService
=
org
.
springframework
.
util
.
CollectionUtils
.
isEmpty
(
services
)
?
null
:
services
.
stream
()
.
collect
(
Collectors
.
groupingBy
(
GoodsServiceDTO:
:
getGoodsInfoId
));
List
<
OrderGoodsIndstDTO
>
resultList
=
collect
.
stream
().
map
(
d
->
{
OrderGoodsIndstDTO
orderGoodsIndstDTO
=
d
;
if
(
mapGoodsService
!=
null
&&
mapGoodsService
.
containsKey
(
d
.
getGoodsInfoId
()))
{
orderGoodsIndstDTO
.
setServices
(
mapGoodsService
.
get
(
d
.
getGoodsInfoId
()));
}
return
orderGoodsIndstDTO
;
}).
collect
(
Collectors
.
toList
());
return
resultList
;
}
private
List
<
MallGoodsInfoSimpleDO
>
fillOrderGoodsIndstPrice
(
List
<
MallGoodsInfoSimpleDO
>
mallGoodsInfoSimpleDOS
,
List
<
IndustrySpecPriceDO
>
industrySpecPriceDOS
,
List
<
Integer
>
industrySpecIds
)
{
//配置商品行业规格价格
for
(
MallGoodsInfoSimpleDO
mallGoodsInfoSimpleDO
:
mallGoodsInfoSimpleDOS
)
{
for
(
MallGoodsSpecSimpleDO
mallGoodsSpecSimpleDO
:
mallGoodsInfoSimpleDO
.
getMallGoodsSpecSimpleDOS
())
{
//查询规格进行配置
for
(
IndustrySpecPriceDO
industrySpecPriceDO
:
industrySpecPriceDOS
)
{
if
(
mallGoodsSpecSimpleDO
.
getIndustrySpecId
().
toString
().
equals
(
industrySpecPriceDO
.
getIndustrySpecId
().
toString
()))
{
mallGoodsSpecSimpleDO
.
setUnitPrice
(
industrySpecPriceDO
.
getPrice
());
industrySpecIds
.
removeIf
(
d
->
d
.
toString
().
equals
(
industrySpecPriceDO
.
getIndustrySpecId
().
toString
()));
break
;
}
}
}
}
return
mallGoodsInfoSimpleDOS
;
}
}
...
...
src/main/resources/mapper/CategoriesDao.xml
浏览文件 @
97194407
...
...
@@ -54,9 +54,7 @@
<update
id=
"updateClassification"
>
update categories
<set>
<if
test=
"name != null and name != ''"
>
`name` = #{classifyName},
</if>
`name` = #{classifyName},
<if
test=
"description != null"
>
description = #{description},
</if>
...
...
@@ -107,7 +105,7 @@
FROM categories
WHERE `name` = #{classifyName} and `type` = #{type}
and is_deleted = 0
<if
test=
"id
!=null and id!=''
"
>
<if
test=
"id
!=null
"
>
and id
<![CDATA[<>]]>
#{id}
</if>
</select>
...
...
src/main/resources/mapper/GoodsInfoDao.xml
浏览文件 @
97194407
...
...
@@ -283,4 +283,118 @@
</foreach>
and is_deleted = 0
</select>
<select
id=
"listProdSpecInfo"
resultType=
"com.mmc.pms.entity.MallGoodsSpecInfoDO"
>
SELECT
gi.id, gi.directory_id, mpsip.id as mallSkuInfoSpecId, mpsip.is_deleted as sku_spec_deleted, ps.spec_name,
ps.is_deleted as spec_deleted
FROM
goods_info gi
INNER JOIN mall_prod_info mpsi ON gi.id = mpsi.goods_info_id
INNER JOIN mall_prod_info_spec mpsip ON mpsi.id = mpsip.mall_prod_info_id
INNER JOIN product_spec ps ON ps.id = mpsip.product_spec_id
<where>
mpsip.id in (
<if
test=
"prodIds != null"
>
<foreach
collection=
"prodIds"
item=
"id"
index=
"index"
separator=
","
>
#{id}
</foreach>
</if>
)
</where>
</select>
<select
id=
"listIndstSpecInfo"
resultType=
"com.mmc.pms.entity.MallGoodsSpecInfoDO"
>
SELECT
gi.id, gi.directory_id, misis.id as mallSkuInfoSpecId, misis.is_deleted as sku_spec_deleted, ins.spec_name,
ins.is_deleted as spec_deleted
FROM
goods_info gi
INNER JOIN mall_industry_sku_info misi ON gi.id = misi.goods_info_id
INNER JOIN mall_industry_sku_info_spec misis ON misi.id = misis.mall_industry_sku_info_id
INNER JOIN industry_spec ins ON ins.id = misis.industry_spec_id
<where>
misis.id in (
<if
test=
"indstIds != null"
>
<foreach
collection=
"indstIds"
item=
"id"
index=
"index"
separator=
","
>
#{id}
</foreach>
</if>
)
</where>
</select>
<select
id=
"listGoodsService"
resultType=
"com.mmc.pms.entity.GoodsServiceDO"
>
select g.id,g.goods_info_id,g.sale_service_id,s.service_name,s.remark
from goods_service g
inner join sale_service s on s.id=g.sale_service_id
<where>
1=1
<foreach
collection=
"list"
item=
"id"
index=
"index"
open=
"and g.goods_info_id in ("
close=
")"
separator=
","
>
#{id}
</foreach>
</where>
</select>
<select
id=
"listMallGoodsIndstSimpleInfo"
resultType=
"com.mmc.pms.entity.MallGoodsInfoSimpleDO"
>
SELECT
gi.id,
gi.goods_name,
gi.goods_no,
gi.directory_id,
gimg.img_url,
gi.shelf_status,
gi.is_deleted,
misi.is_deleted as sku_info_deleted,
su.unit_name,
misis.id as mall_industry_sku_info_spec_id,
misis.industry_spec_id,
misis.is_deleted as sku_spec_deleted,
isp.spec_name,
isp.spec_image,
isp.is_deleted as spec_deleted
FROM
goods_info gi
INNER JOIN goods_img gimg ON gi.id = gimg.goods_info_id
AND gimg.img_type = 0
INNER JOIN mall_industry_sku_info misi ON gi.id = misi.goods_info_id
INNER JOIN mall_industry_sku_info_spec misis ON misi.id = misis.mall_industry_sku_info_id
INNER JOIN industry_spec isp ON isp.id = misis.industry_spec_id
left join sku_unit su on su.id = misi.sku_unit_id
where gimg.is_deleted = 0 and
misis.id in (
<foreach
collection=
"indstSkuSpecIds"
item=
"id"
index=
"index"
separator=
","
>
#{id}
</foreach>
)
</select>
<select
id=
"listIndustrySpecIds"
resultType=
"java.lang.Integer"
>
select DISTINCT misis.industry_spec_id FROM mall_industry_sku_info_spec misis
where misis.id in (
<foreach
collection=
"list"
item=
"id"
index=
"index"
separator=
","
>
#{id}
</foreach>
)
</select>
<select
id=
"listIndustryProductList"
resultType=
"com.mmc.pms.entity.MallGoodsProductDO"
>
SELECT
ipi.industry_spec_id as industrySpecId,
gt.name AS goodsTypeName,
psk.product_name as productName,
psk.model,
bi.brand_name as productBrand,
psc.id AS productSpecId,
psc.spec_name as specName,
psc.spec_image AS prodSkuSpecImage,
psc.part_no as partNo,
psc.version_desc as versionDesc
FROM
industry_product_inventory ipi
INNER JOIN inventory_spec isp ON ipi.id = isp.industry_product_inventory_id
INNER JOIN product_spec psc ON isp.product_spec_id = psc.id
INNER JOIN product psk ON psk.id = psc.product_id
INNER JOIN categories gt ON psk.categories_id = gt.id
where isp.is_deleted = 0 and ipi.industry_spec_id in (
<foreach
collection=
"list"
item=
"id"
index=
"index"
separator=
","
>
#{id}
</foreach>
)
</select>
</mapper>
src/main/resources/mapper/IndustrySpecDao.xml
浏览文件 @
97194407
...
...
@@ -343,4 +343,17 @@
INNER JOIN industry_spec ins ON ins.id = mi.industry_spec_id and mi.is_deleted = 0
WHERE goods_info_id = #{id}
</select>
<select
id=
"listIndustrySpecPrice"
resultType=
"com.mmc.pms.entity.IndustrySpecPriceDO"
>
select id,
industry_spec_id industrySpecId,
tag_info_id tagInfoId,
price,
create_time createTime
from industry_spec_price
where is_deleted = 0 and `type` = 0 and tag_info_id = #{tagInfoId} and industry_spec_id in (
<foreach
collection=
"industrySpecIds"
item=
"id"
index=
"index"
separator=
","
>
#{id}
</foreach>
)
</select>
</mapper>
\ No newline at end of file
src/main/resources/mapper/ProductDao.xml
浏览文件 @
97194407
...
...
@@ -353,7 +353,7 @@
psp.price
FROM
product_spec_price psp
where psp.cooperation_tag = #{tagInfoId} and psp.product_spec_id in (
where psp.cooperation_tag = #{tagInfoId} and
`type` = 0 and
psp.product_spec_id in (
<foreach
collection=
"prodSkuSpecIds"
item=
"id"
index=
"index"
separator=
","
>
#{id}
</foreach>
...
...
@@ -364,6 +364,7 @@
from product_spec_price
where product_spec_id = #{id}
and tag_info_id = #{tagId}
and `type` = 0
</select>
<select
id=
"getProductSpecList"
resultType=
"com.mmc.pms.entity.ProductSpecDO"
>
SELECT
...
...
@@ -390,4 +391,46 @@
</foreach>
and is_deleted = 0
</select>
<select
id=
"listProductSpecIds"
resultType=
"java.lang.Integer"
>
select DISTINCT mpsis.product_spec_id FROM mall_prod_info_spec mpsis
where mpsis.id in (
<foreach
collection=
"mallProdSkuSpecIds"
item=
"id"
index=
"index"
separator=
","
>
#{id}
</foreach>
)
</select>
<select
id=
"listProdGoodsSkuInfo"
resultType=
"com.mmc.pms.model.dto.OrderGoodsProdDTO"
>
SELECT
gi.id as goods_info_id,gi.goods_name,gi.goods_no,gi.directory_id,
gimg.img_url as mainImg,
gi.shelf_status,
gi.is_deleted,
mpsi.id as mall_prod_info_id,
mpsi.is_deleted as sku_info_deleted,
gt.name as goods_type_name,psk.id, psk.product_name,psk.model,psk.brand_info_id,
mpsis.id as mall_prod_info_spec_id,
mpsis.is_deleted as sku_spec_deleted,
psc.id as product_spec_id,psc.spec_name,psc.spec_image as prod_sku_spec_image,psc.part_no,psc.version_desc,
psc.is_deleted as spec_deleted,
su.unit_name,
bi.brand_name
FROM
goods_info gi
INNER JOIN mall_prod_info mpsi ON gi.id = mpsi.goods_info_id
INNER JOIN mall_prod_info_spec mpsis ON mpsi.id = mpsis.mall_prod_info_id
INNER JOIN product_spec psc ON mpsis.product_spec_id = psc.id
INNER JOIN product psk ON psk.id = psc.product_id
INNER JOIN goods_img gimg ON gi.id = gimg.goods_info_id and gimg.img_type = 0
INNER JOIN categories gt ON psk.categories_id = gt.id
LEFT JOIN sku_unit su ON su.id = mpsi.sku_unit_id
left join brand_info bi on bi.id = psk.brand_info_id
<where>
gi.is_deleted = 0 and
mpsis.id in (
<foreach
collection=
"mallProdSkuSpecIds"
item=
"id"
index=
"index"
separator=
","
>
#{id}
</foreach>
)
</where>
</select>
</mapper>
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论