Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
A
api
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wxShop
api
Commits
14c7a993
Commit
14c7a993
authored
Jul 21, 2020
by
不悦
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
ycf0721
parent
31c86a90
Hide whitespace changes
Inline
Side-by-side
Showing
31 changed files
with
321 additions
and
153 deletions
+321
-153
application-dev.yml
yami-shop-admin/src/main/resources/application-dev.yml
+8
-8
pom.xml
yami-shop-api/pom.xml
+5
-0
ApiApplication.java
...p-api/src/main/java/com/yami/shop/api/ApiApplication.java
+1
-0
BargainController.java
.../java/com/yami/shop/api/controller/BargainController.java
+115
-75
OrderController.java
...in/java/com/yami/shop/api/controller/OrderController.java
+56
-6
ProdCommController.java
...java/com/yami/shop/api/controller/ProdCommController.java
+1
-0
ProdController.java
...ain/java/com/yami/shop/api/controller/ProdController.java
+25
-0
UserController.java
...ain/java/com/yami/shop/api/controller/UserController.java
+8
-1
MiniAppAuthenticationProvider.java
...yami/shop/api/security/MiniAppAuthenticationProvider.java
+1
-1
application-dev.yml
yami-shop-api/src/main/resources/application-dev.yml
+7
-7
application.yml
yami-shop-api/src/main/resources/application.yml
+2
-0
ShopCartOrderMergerDto.java
...va/com/yami/shop/bean/app/dto/ShopCartOrderMergerDto.java
+2
-0
UserDto.java
...ean/src/main/java/com/yami/shop/bean/app/dto/UserDto.java
+6
-13
OrderItemParam.java
...ain/java/com/yami/shop/bean/app/param/OrderItemParam.java
+6
-0
OrderParam.java
...rc/main/java/com/yami/shop/bean/app/param/OrderParam.java
+1
-0
Bargain.java
...-bean/src/main/java/com/yami/shop/bean/model/Bargain.java
+18
-15
BargainDetailParm.java
...main/java/com/yami/shop/bean/model/BargainDetailParm.java
+1
-1
BargainHelp.java
...n/src/main/java/com/yami/shop/bean/model/BargainHelp.java
+5
-5
BargainHelpParm.java
...c/main/java/com/yami/shop/bean/model/BargainHelpParm.java
+10
-7
BargainSend.java
...n/src/main/java/com/yami/shop/bean/model/BargainSend.java
+12
-6
SmsLog.java
...p-bean/src/main/java/com/yami/shop/bean/model/SmsLog.java
+0
-1
UserMapper.java
...p-service/src/main/java/com/yami/shop/dao/UserMapper.java
+2
-0
BasketService.java
...ce/src/main/java/com/yami/shop/service/BasketService.java
+1
-1
UserService.java
...vice/src/main/java/com/yami/shop/service/UserService.java
+2
-0
BargainSendServiceImpl.java
...va/com/yami/shop/service/impl/BargainSendServiceImpl.java
+2
-0
BasketServiceImpl.java
...in/java/com/yami/shop/service/impl/BasketServiceImpl.java
+4
-2
SmsLogServiceImpl.java
...in/java/com/yami/shop/service/impl/SmsLogServiceImpl.java
+1
-1
UserServiceImpl.java
...main/java/com/yami/shop/service/impl/UserServiceImpl.java
+11
-0
BargainMapper.xml
...-shop-service/src/main/resources/mapper/BargainMapper.xml
+1
-1
SmsLogMapper.xml
yami-shop-service/src/main/resources/mapper/SmsLogMapper.xml
+2
-1
UserMapper.xml
yami-shop-service/src/main/resources/mapper/UserMapper.xml
+5
-1
No files found.
yami-shop-admin/src/main/resources/application-dev.yml
View file @
14c7a993
...
...
@@ -2,16 +2,16 @@ server:
port
:
8085
spring
:
datasource
:
# url: jdbc:mysql://rm-m5ee12omj4y0g741d0o.mysql.rds.aliyuncs.com:3306/retail_shops?allowMultiQueries=true&useSSL=false&useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&zeroDateTimeBehavior=convertToNull&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2B8&nullCatalogMeansCurrent=true
# username: kszzshop
# password: eE12omj4y0g7#
# driver-class-name: com.mysql.cj.jdbc.Driver
# type: com.zaxxer.hikari.HikariDataSource
url
:
jdbc:mysql://localhost:3306/yami_shops?allowMultiQueries=true&useSSL=false&useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&zeroDateTimeBehavior=convertToNull&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2B8&nullCatalogMeansCurrent=true
username
:
root
password
:
root
url
:
jdbc:mysql://rm-m5ee12omj4y0g741d0o.mysql.rds.aliyuncs.com:3306/retail_shops?allowMultiQueries=true&useSSL=false&useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&zeroDateTimeBehavior=convertToNull&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2B8&nullCatalogMeansCurrent=true
username
:
kszzshop
password
:
eE12omj4y0g7#
driver-class-name
:
com.mysql.cj.jdbc.Driver
type
:
com.zaxxer.hikari.HikariDataSource
# url: jdbc:mysql://localhost:3306/yami_shops?allowMultiQueries=true&useSSL=false&useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&zeroDateTimeBehavior=convertToNull&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2B8&nullCatalogMeansCurrent=true
# username: root
# password: root
# driver-class-name: com.mysql.cj.jdbc.Driver
# type: com.zaxxer.hikari.HikariDataSource
hikari
:
minimum-idle
:
0
maximum-pool-size
:
20
...
...
yami-shop-api/pom.xml
View file @
14c7a993
...
...
@@ -29,6 +29,11 @@
<version>
${yami.shop.version}
</version>
</dependency>
<dependency>
<groupId>
org.jdom
</groupId>
<artifactId>
jdom
</artifactId>
<version>
2.0.2
</version>
</dependency>
</dependencies>
<build>
...
...
yami-shop-api/src/main/java/com/yami/shop/api/ApiApplication.java
View file @
14c7a993
...
...
@@ -24,6 +24,7 @@ import org.springframework.context.annotation.ComponentScan;
@ComponentScan
(
basePackages
=
{
"com.yami.shop"
})
public
class
ApiApplication
extends
SpringBootServletInitializer
{
public
static
void
main
(
String
[]
args
)
{
SpringApplication
.
run
(
ApiApplication
.
class
,
args
);
}
...
...
yami-shop-api/src/main/java/com/yami/shop/api/controller/BargainController.java
View file @
14c7a993
...
...
@@ -2,31 +2,33 @@ package com.yami.shop.api.controller;
import
cn.hutool.core.util.ObjectUtil
;
import
cn.hutool.core.util.StrUtil
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.google.common.collect.Maps
;
import
com.yami.shop.bean.enums.SmsType
;
import
com.yami.shop.bean.app.dto.ProductDto
;
import
com.yami.shop.bean.model.*
;
import
com.yami.shop.common.util.PageParam
;
import
com.yami.shop.security.util.SecurityUtils
;
import
com.yami.shop.service.*
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
lombok.AllArgsConstructor
;
import
ma.glasnost.orika.MapperFacade
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.http.ResponseEntity
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.web.bind.annotation.*
;
import
javax.validation.Valid
;
import
java.beans.Transient
;
import
java.util.*
;
@RestController
@RequestMapping
(
"/bargain"
)
@Api
(
tags
=
"砍价商品列表"
)
@AllArgsConstructor
public
class
BargainController
{
private
final
MapperFacade
mapperFacade
;
@Autowired
private
BargainService
bargainService
;
...
...
@@ -43,6 +45,9 @@ public class BargainController {
@Autowired
private
SmsLogService
smsLogService
;
@Autowired
private
ProdController
prodController
;
/**
* 分页获取商品信息
*/
...
...
@@ -59,8 +64,8 @@ public class BargainController {
}
int
count
=
bargainSendService
.
selectFinishOrderTask
(
bargain
.
getId
(),
1
);
bargain
.
setSendCount
(
count
);
Product
product
=
productService
.
getProductByProdId
(
bargain
.
getProdId
());
bargain
.
setProduct
(
product
);
Product
Dto
product
=
prodController
.
prodInfoBargain
(
bargain
.
getProdId
());
bargain
.
setProduct
Dto
(
product
);
}
return
ResponseEntity
.
ok
(
bargains
);
...
...
@@ -73,32 +78,44 @@ public class BargainController {
@ApiOperation
(
value
=
"砍价商品详情"
,
notes
=
"获取砍价商品详情"
)
public
ResponseEntity
<
Bargain
>
info
(
@PathVariable
(
"id"
)
Long
id
)
{
Bargain
bargain
=
bargainService
.
getBargainById
(
id
);
Product
product
=
productService
.
getProductByProdId
(
bargain
.
getProdId
());
int
count
=
bargainSendService
.
selectFinishOrderTask
(
bargain
.
getId
(),
1
);
bargain
.
setCount
(
count
);
bargain
.
setProduct
(
product
);
if
(
ObjectUtil
.
isNotNull
(
bargain
)){
ProductDto
product
=
prodController
.
prodInfoBargain
(
bargain
.
getProdId
());
int
count
=
0
;
count
=
bargainSendService
.
selectFinishOrderTask
(
bargain
.
getId
(),
1
);
bargain
.
setCount
(
count
);
if
(
ObjectUtil
.
isNotNull
(
product
)){
bargain
.
setProductDto
(
product
);
}
}
return
ResponseEntity
.
ok
(
bargain
);
}
/**
* 发布砍价任务新增&&获取发起人砍价任务详情
*/
@Transactional
@PostMapping
(
"/saveInfoBargainSend/"
)
@PostMapping
(
"/saveInfoBargainSend"
)
@ApiOperation
(
value
=
"发起人砍价任务详情"
,
notes
=
"新增发起人信息&&获取发起人砍价任务详情"
)
public
ResponseEntity
<
BargainSend
>
saveInfoBargainSend
(
@Valid
@RequestBody
BargainSend
bargainSend
)
{
BargainSend
BS
=
bargainSendService
.
selectBargainTask
(
bargainSend
.
getUserId
(),
bargainSend
.
getActivityId
());
String
userId
=
SecurityUtils
.
getUser
().
getUserId
();
if
(
bargainSend
.
getUserId
()!=
null
&&
!
bargainSend
.
getUserId
().
equals
(
""
)){
userId
=
bargainSend
.
getUserId
();
}
BargainSend
BS
=
bargainSendService
.
selectBargainTask
(
userId
,
bargainSend
.
getActivityId
());
if
(
ObjectUtil
.
isNull
(
BS
)){
bargainSend
.
setCreatedAt
(
new
Date
());
bargainSend
.
setIsAddorder
(
0
);
//未下单
bargainSend
.
setCreatedUser
(
userId
);
bargainSend
.
setCreatedUser
(
userId
);
bargainSendService
.
saveBargainSend
(
bargainSend
);
BS
=
bargainSendService
.
selectBargainTask
(
bargainSend
.
getUserId
()
,
bargainSend
.
getActivityId
());
BS
=
bargainSendService
.
selectBargainTask
(
userId
,
bargainSend
.
getActivityId
());
}
Product
product
=
productService
.
getProductByProdId
(
bargainSend
.
getProdId
());
BS
.
setProduct
(
product
);
// Product product = productService.getProductByProdId(bargainSend.getProdId());
ProductDto
product
=
prodController
.
prodInfoBargain
(
bargainSend
.
getProdId
());
BS
.
setProductDto
(
product
);
Bargain
bargain
=
bargainService
.
getBargainById
(
bargainSend
.
getActivityId
());
BS
.
setBargain
(
bargain
);
List
<
BargainHelp
>
bargainHelpList
=
bargainHelpService
.
selectListByBargainOrderId
(
bargainSend
.
getId
());
List
<
BargainHelp
>
bargainHelpList
=
bargainHelpService
.
selectListByBargainOrderId
(
BS
.
getId
());
double
cutMoney
=
0
;
if
(
ObjectUtil
.
isNotNull
(
bargainHelpList
)){
BS
.
setBargainHelpList
(
bargainHelpList
);
...
...
@@ -118,74 +135,97 @@ public class BargainController {
@PostMapping
(
"/helpBargain"
)
@ApiOperation
(
value
=
"帮好友砍价"
,
notes
=
"帮好友砍价"
)
public
ResponseEntity
<
String
>
helpBargain
(
@Valid
@RequestBody
BargainHelpParm
bargainHelpParm
)
{
SmsLog
smsLog
=
smsLogService
.
selectSmsByMobileAndType
(
bargainHelpParm
.
getUserMobile
(),
1
);
if
(
bargainHelpParm
.
getCode
().
equals
(
smsLog
.
getMobileCode
())){
User
user
=
userService
.
getUserByUserMobile
(
bargainHelpParm
.
getUserMobile
());
//帮助者电话
if
(
ObjectUtil
.
isNotNull
(
user
)){
BargainHelp
bargainHelp
=
bargainHelpService
.
selectBargainHelp
(
bargainHelpParm
.
getBargainOrderId
(),
user
.
getUserId
());
if
(
ObjectUtil
.
isNotNull
(
bargainHelp
)){
return
ResponseEntity
.
ok
(
"您已帮该用户砍过价了"
);
}
String
userId
=
SecurityUtils
.
getUser
().
getUserId
();
User
user
=
userService
.
getById
(
userId
);
BargainHelp
BH
=
bargainHelpService
.
selectBargainHelp
(
bargainHelpParm
.
getBargainOrderId
(),
userId
);
if
(
ObjectUtil
.
isNotNull
(
BH
)){
return
ResponseEntity
.
ok
(
"您已帮该用户砍过价了"
);
}
Bargain
bargain
=
bargainService
.
getBargainById
(
bargainHelpParm
.
getActivityId
());
//取能砍的最低价格
Product
product
=
productService
.
getProductByProdId
(
bargainHelpParm
.
getProdId
());
//查询商品原价
//查询发起人对应的砍价者砍价合计
List
<
BargainHelp
>
bargainHelpList
=
bargainHelpService
.
selectListByBargainOrderId
(
bargainHelpParm
.
getBargainOrderId
());
double
cutMoneys
=
0
;
for
(
BargainHelp
bargainHelp:
bargainHelpList
){
cutMoneys
+=
bargainHelp
.
getBargainMoney
();
}
double
canCut
=
product
.
getPrice
()-
cutMoneys
;
//能砍的价格
double
randNumber
=
0
;
//对比
Random
rand
=
new
Random
();
double
MAX
=
0
;
double
MIN
=
0
;
BargainHelp
bargainHelp
=
new
BargainHelp
();
bargainHelp
.
setBargainOrderId
(
bargainHelpParm
.
getBargainOrderId
());
bargainHelp
.
setCreatedAt
(
new
Date
());
if
(
"1"
.
equals
(
bargainHelpParm
.
getIsCode
())){
SmsLog
smsLog
=
smsLogService
.
selectSmsByMobileAndType
(
bargainHelpParm
.
getUserMobile
(),
1
);
User
userXY
=
userService
.
getUserByUserMobile
(
bargainHelpParm
.
getUserMobile
());
if
(
ObjectUtil
.
isNotNull
(
userXY
)){
return
ResponseEntity
.
ok
(
"该手机号已被注册"
);
}
Bargain
bargain
=
bargainService
.
getBargainById
(
bargainHelpParm
.
getActivityId
());
//取能砍的最低价格
// String userId = SecurityUtils.getUser().getUserId();
Product
product
=
productService
.
getProductByProdId
(
bargainHelpParm
.
getProdId
());
//查询商品原价
//查询发起人对应的砍价者砍价合计
List
<
BargainHelp
>
bargainHelpList
=
bargainHelpService
.
selectListByBargainOrderId
(
bargainHelpParm
.
getBargainOrderId
());
double
cutMoneys
=
0
;
for
(
BargainHelp
bargainHelp:
bargainHelpList
){
cutMoneys
+=
bargainHelp
.
getBargainMoney
();
if
(
ObjectUtil
.
isNull
(
smsLog
)){
return
ResponseEntity
.
ok
(
"验证码已失效"
);
}
double
canCut
=
product
.
getPrice
()-
cutMoneys
;
//能砍的价格
double
randNumber
=
0
;
//对比
Random
rand
=
new
Random
();
double
MAX
=
0
;
double
MIN
=
0
;
BargainHelp
bargainHelp
=
new
BargainHelp
();
bargainHelp
.
setBargainOrderId
(
bargainHelpParm
.
getBargainOrderId
());
bargainHelp
.
setCreatedAt
(
new
Date
());
if
(
ObjectUtil
.
isNotNull
(
user
)){
//老用户
MAX
=
bargain
.
getOldMax
();
MIN
=
bargain
.
getOldMin
();
}
else
{
//新增用户
user
=
new
User
();
String
userId
=
UUID
.
randomUUID
().
toString
().
replace
(
"-"
,
""
);
user
.
setUserId
(
userId
);
user
.
setNickName
(
bargainHelpParm
.
getNickName
());
user
.
setPic
(
bargainHelpParm
.
getHeadImg
());
user
.
setStatus
(
1
);
user
.
setUserMobile
(
bargainHelpParm
.
getUserMobile
());
user
.
setModifyTime
(
new
Date
());
user
.
setUserRegtime
(
new
Date
());
userService
.
save
(
user
);
//帮忙砍价
MAX
=
bargain
.
getNewMax
();
MIN
=
bargain
.
getNewMin
();
if
(!
bargainHelpParm
.
getCode
().
equals
(
smsLog
.
getMobileCode
())){
return
ResponseEntity
.
ok
(
"验证码错误"
);
}
if
(
canCut
<
MAX
){
randNumber
=
canCut
;
}
else
{
randNumber
=
rand
.
nextDouble
()
*
(
MAX
-
MIN
)
+
MIN
;
if
((
System
.
currentTimeMillis
()-
smsLog
.
getRecDate
().
getTime
())>
1000
*
60
*
5
){
return
ResponseEntity
.
ok
(
"验证码已过期"
);
}
bargainHelp
.
setAssistorId
(
user
.
getUserId
());
bargainHelp
.
setNickName
(
user
.
getNickName
());
bargainHelp
.
setHeadImg
(
user
.
getPic
());
bargainHelp
.
setBargainMoney
(
randNumber
);
userService
.
updatePhone
(
smsLog
.
getUserPhone
(),
userId
);
//老用户
bargainHelp
.
setIsUser
(
1
);
bargainHelpService
.
saveBargainHelp
(
bargainHelp
);
bargainSendService
.
updateCount
(
bargainHelpParm
.
getBargainOrderId
());
return
ResponseEntity
.
ok
(
randNumber
+
""
);
MAX
=
bargain
.
getOldMax
();
MIN
=
bargain
.
getOldMin
();
}
else
{
bargainHelp
.
setIsUser
(
0
);
MAX
=
bargain
.
getNewMax
();
MIN
=
bargain
.
getNewMin
();
}
return
ResponseEntity
.
ok
(
"验证码错误"
);
}
if
(
canCut
<
MAX
){
randNumber
=
canCut
;
}
else
{
randNumber
=
rand
.
nextDouble
()
*
(
MAX
-
MIN
)
+
MIN
;
}
bargainHelp
.
setAssistorId
(
user
.
getUserId
());
bargainHelp
.
setNickName
(
user
.
getNickName
());
bargainHelp
.
setHeadImg
(
user
.
getPic
());
bargainHelp
.
setBargainMoney
(
randNumber
);
bargainHelpService
.
saveBargainHelp
(
bargainHelp
);
bargainSendService
.
updateCount
(
bargainHelpParm
.
getBargainOrderId
());
return
ResponseEntity
.
ok
(
randNumber
+
""
);
}
@PostMapping
(
"/checkingUser"
)
@ApiOperation
(
value
=
"验证码修改手机号"
,
notes
=
"根据用户ID(userId)获取用户信息"
)
public
ResponseEntity
<
Object
>
checkingUser
(
@Valid
@RequestBody
SmsLog
sms
)
{
String
userId
=
SecurityUtils
.
getUser
().
getUserId
();
SmsLog
smsLog
=
smsLogService
.
selectSmsByMobileAndType
(
sms
.
getUserPhone
(),
1
);
User
user
=
userService
.
getUserByUserMobile
(
sms
.
getUserPhone
());
if
(
ObjectUtil
.
isNotNull
(
user
)){
return
ResponseEntity
.
ok
(
"该手机号已被注册"
);
}
if
(
ObjectUtil
.
isNull
(
smsLog
)){
return
ResponseEntity
.
ok
(
"验证码已失效"
);
}
if
(!
sms
.
getMobileCode
().
equals
(
smsLog
.
getMobileCode
())){
return
ResponseEntity
.
ok
(
"验证码错误"
);
}
if
((
System
.
currentTimeMillis
()-
smsLog
.
getRecDate
().
getTime
())>
1000
*
60
*
5
){
return
ResponseEntity
.
ok
(
"验证码已过期"
);
}
userService
.
updatePhone
(
sms
.
getUserPhone
(),
userId
);
return
ResponseEntity
.
ok
(
"添加手机号成功"
);
}
public
static
void
main
(
String
[]
args
)
{
Random
rand
=
new
Random
();
// int randNumber =rand.nextInt(MAX - MIN + 1) + MIN;
Scanner
sc
=
new
Scanner
(
System
.
in
);
...
...
yami-shop-api/src/main/java/com/yami/shop/api/controller/OrderController.java
View file @
14c7a993
...
...
@@ -14,8 +14,11 @@ import java.util.*;
import
javax.validation.Valid
;
import
cn.hutool.core.util.ObjectUtil
;
import
com.yami.shop.bean.app.dto.*
;
import
com.yami.shop.bean.event.ConfirmOrderEvent
;
import
com.yami.shop.bean.model.BargainHelp
;
import
com.yami.shop.bean.model.BargainSend
;
import
com.yami.shop.common.exception.YamiShopBindException
;
import
com.yami.shop.security.util.SecurityUtils
;
import
com.yami.shop.service.*
;
...
...
@@ -58,8 +61,12 @@ public class OrderController {
private
BasketService
basketService
;
@Autowired
private
ApplicationContext
applicationContext
;
@Autowired
private
BargainSendService
bargainSendService
;
@Autowired
private
BargainHelpService
bargainHelpService
;
@Autowired
private
ProdController
prodController
;
/**
* 生成订单
*/
...
...
@@ -71,10 +78,12 @@ public class OrderController {
// 订单的地址信息
UserAddr
userAddr
=
userAddrService
.
getUserAddrByUserId
(
orderParam
.
getAddrId
(),
userId
);
UserAddrDto
userAddrDto
=
mapperFacade
.
map
(
userAddr
,
UserAddrDto
.
class
);
String
isBargain
=
""
;
if
(
"1"
.
equals
(
orderParam
.
getOrderItem
().
getIsBargain
())){
isBargain
=
orderParam
.
getOrderItem
().
getIsBargain
();
}
// 组装获取用户提交的购物车商品项
List
<
ShopCartItemDto
>
shopCartItems
=
basketService
.
getShopCartItemsByOrderItems
(
orderParam
.
getBasketIds
(),
orderParam
.
getOrderItem
(),
userId
);
List
<
ShopCartItemDto
>
shopCartItems
=
basketService
.
getShopCartItemsByOrderItems
(
isBargain
,
orderParam
.
getBasketIds
(),
orderParam
.
getOrderItem
(),
userId
);
if
(
CollectionUtil
.
isEmpty
(
shopCartItems
))
{
throw
new
YamiShopBindException
(
"请选择您需要的商品加入购物车"
);
...
...
@@ -116,7 +125,6 @@ public class OrderController {
shopCartOrder
.
setShopCartItemDiscounts
(
shopCartItemDiscounts
);
applicationContext
.
publishEvent
(
new
ConfirmOrderEvent
(
shopCartOrder
,
orderParam
,
shopAllShopCartItems
));
actualTotal
=
Arith
.
add
(
actualTotal
,
shopCartOrder
.
getActualTotal
());
total
=
Arith
.
add
(
total
,
shopCartOrder
.
getTotal
());
totalCount
=
totalCount
+
shopCartOrder
.
getTotalCount
();
...
...
@@ -126,6 +134,20 @@ public class OrderController {
}
if
(
"1"
.
equals
(
orderParam
.
getOrderItem
().
getIsBargain
())){
BargainSend
BS
=
bargainSendService
.
selectBargainTask
(
userId
,
orderParam
.
getOrderItem
().
getActivityId
());
List
<
BargainHelp
>
bargainHelpList
=
bargainHelpService
.
selectListByBargainOrderId
(
BS
.
getId
());
double
cutMoney
=
0
;
if
(
bargainHelpList
.
size
()>
0
){
for
(
BargainHelp
bargainHelp:
bargainHelpList
){
cutMoney
+=
bargainHelp
.
getBargainMoney
();
}
}
ProductDto
product
=
prodController
.
prodInfoBargain
(
orderParam
.
getOrderItem
().
getProdId
());
actualTotal
=
product
.
getPrice
()-
cutMoney
;
total
=
actualTotal
;
}
shopCartOrderMergerDto
.
setActualTotal
(
actualTotal
);
shopCartOrderMergerDto
.
setTotal
(
total
);
shopCartOrderMergerDto
.
setTotalCount
(
totalCount
);
...
...
@@ -195,4 +217,32 @@ public class OrderController {
return
ResponseEntity
.
ok
(
new
OrderNumbersDto
(
orderNumbers
.
toString
()));
}
/**
* 生成订单
*/
@PostMapping
(
"/confirmBargin"
)
@ApiOperation
(
value
=
"结算,生成订单信息"
,
notes
=
"传入下单所需要的参数进行下单"
)
public
ResponseEntity
<
ShopCartOrderMergerDto
>
confirmBargin
(
@Valid
@RequestBody
OrderParam
orderParam
)
{
String
userId
=
SecurityUtils
.
getUser
().
getUserId
();
// 订单的地址信息
UserAddr
userAddr
=
userAddrService
.
getUserAddrByUserId
(
orderParam
.
getAddrId
(),
userId
);
UserAddrDto
userAddrDto
=
mapperFacade
.
map
(
userAddr
,
UserAddrDto
.
class
);
// 将要返回给前端的完整的订单信息
ShopCartOrderMergerDto
shopCartOrderMergerDto
=
new
ShopCartOrderMergerDto
();
shopCartOrderMergerDto
.
setUserAddr
(
userAddrDto
);
double
actualTotal
=
0.0
;
double
total
=
0.0
;
int
totalCount
=
0
;
double
orderReduce
=
0.0
;
shopCartOrderMergerDto
.
setActualTotal
(
actualTotal
);
shopCartOrderMergerDto
.
setTotal
(
total
);
shopCartOrderMergerDto
.
setTotalCount
(
totalCount
);
shopCartOrderMergerDto
.
setOrderReduce
(
orderReduce
);
orderService
.
putConfirmOrderCache
(
userId
,
shopCartOrderMergerDto
);
return
ResponseEntity
.
ok
(
shopCartOrderMergerDto
);
}
}
yami-shop-api/src/main/java/com/yami/shop/api/controller/ProdCommController.java
View file @
14c7a993
...
...
@@ -41,6 +41,7 @@ public class ProdCommController {
@GetMapping
(
"/prodCommData"
)
@ApiOperation
(
value
=
"返回商品评论数据(好评率 好评数量 中评数 差评数)"
,
notes
=
"根据商品id获取"
)
public
ResponseEntity
<
ProdCommDataDto
>
getProdCommData
(
Long
prodId
)
{
return
ResponseEntity
.
ok
(
prodCommService
.
getProdCommDataByProdId
(
prodId
,
SecurityUtils
.
getUser
().
getUserId
()));
...
...
yami-shop-api/src/main/java/com/yami/shop/api/controller/ProdController.java
View file @
14c7a993
...
...
@@ -129,5 +129,30 @@ public class ProdController {
}
public
ProductDto
prodInfoBargain
(
Long
prodId
)
{
Product
product
=
prodService
.
getProductByProdId
(
prodId
);
if
(
product
==
null
)
{
return
null
;
}
List
<
Sku
>
skuList
=
skuService
.
listByProdId
(
prodId
);
// 启用的sku列表
List
<
Sku
>
useSkuList
=
skuList
.
stream
().
filter
(
sku
->
sku
.
getStatus
()
==
1
).
collect
(
Collectors
.
toList
());
product
.
setSkuList
(
useSkuList
);
ProductDto
productDto
=
mapperFacade
.
map
(
product
,
ProductDto
.
class
);
// 商品的配送方式
Product
.
DeliveryModeVO
deliveryModeVO
=
Json
.
parseObject
(
product
.
getDeliveryMode
(),
Product
.
DeliveryModeVO
.
class
);
// 有店铺配送的方式, 且存在运费模板,才返回运费模板的信息,供前端查阅
if
(
deliveryModeVO
.
getHasShopDelivery
()
&&
product
.
getDeliveryTemplateId
()
!=
null
)
{
Transport
transportAndAllItems
=
transportService
.
getTransportAndAllItems
(
product
.
getDeliveryTemplateId
());
productDto
.
setTransport
(
transportAndAllItems
);
}
return
productDto
;
}
}
yami-shop-api/src/main/java/com/yami/shop/api/controller/UserController.java
View file @
14c7a993
...
...
@@ -13,11 +13,13 @@ package com.yami.shop.api.controller;
import
cn.binarywang.wx.miniapp.api.WxMaService
;
import
cn.hutool.core.util.StrUtil
;
import
com.yami.shop.api.config.WxAppConfiguration
;
import
com.yami.shop.bean.model.SmsLog
;
import
com.yami.shop.bean.vo.WxParamsVo
;
import
com.yami.shop.common.util.CacheManagerUtil
;
import
com.yami.shop.security.enums.App
;
import
com.yami.shop.security.service.YamiUser
;
import
com.yami.shop.security.util.SecurityUtils
;
import
com.yami.shop.service.SmsLogService
;
import
lombok.AllArgsConstructor
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.http.ResponseEntity
;
...
...
@@ -33,6 +35,9 @@ import io.swagger.annotations.Api;
import
io.swagger.annotations.ApiOperation
;
import
ma.glasnost.orika.MapperFacade
;
import
java.util.Date
;
import
java.util.UUID
;
@RestController
@RequestMapping
(
"/p/user"
)
@Api
(
tags
=
"用户接口"
)
...
...
@@ -44,6 +49,9 @@ public class UserController {
private
final
MapperFacade
mapperFacade
;
private
final
CacheManagerUtil
cacheManagerUtil
;
@Autowired
private
SmsLogService
smsLogService
;
/**
* 查看用户接口
*/
...
...
@@ -78,5 +86,4 @@ public class UserController {
return
ResponseEntity
.
ok
(
userService
.
registerPhone
(
wxParamsVo
,
wxService
,
userId
));
}
}
yami-shop-api/src/main/java/com/yami/shop/api/security/MiniAppAuthenticationProvider.java
View file @
14c7a993
...
...
@@ -43,7 +43,7 @@ public class MiniAppAuthenticationProvider extends AbstractUserDetailsAuthentica
private
final
CacheManagerUtil
cacheManagerUtil
;
private
final
static
String
APPID
=
"wx
72780b89fe2ee6f4
"
;
private
final
static
String
APPID
=
"wx
50a14d592be6735e
"
;
@Override
protected
Authentication
createSuccessAuthentication
(
Authentication
authentication
,
UserDetails
user
)
{
...
...
yami-shop-api/src/main/resources/application-dev.yml
View file @
14c7a993
...
...
@@ -2,16 +2,16 @@ server:
port
:
8086
spring
:
datasource
:
# url: jdbc:mysql://127.0.0.1:3306/retail_shops?allowMultiQueries=true&useSSL=false&useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&zeroDateTimeBehavior=convertToNull&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2B8&nullCatalogMeansCurrent=true
# username: root
# password: 123
# driver-class-name: com.mysql.cj.jdbc.Driver
# type: com.zaxxer.hikari.HikariDataSource
url
:
jdbc:mysql://127.0.0.1:3306/yami_shops?allowMultiQueries=true&useSSL=false&useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&zeroDateTimeBehavior=convertToNull&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2B8&nullCatalogMeansCurrent=true
url
:
jdbc:mysql://127.0.0.1:3306/retail_shops?allowMultiQueries=true&useSSL=false&useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&zeroDateTimeBehavior=convertToNull&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2B8&nullCatalogMeansCurrent=true
username
:
root
password
:
root
password
:
123
driver-class-name
:
com.mysql.cj.jdbc.Driver
type
:
com.zaxxer.hikari.HikariDataSource
# url: jdbc:mysql://127.0.0.1:3306/yami_shops?allowMultiQueries=true&useSSL=false&useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&zeroDateTimeBehavior=convertToNull&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2B8&nullCatalogMeansCurrent=true
# username: root
# password: root
# driver-class-name: com.mysql.cj.jdbc.Driver
# type: com.zaxxer.hikari.HikariDataSource
hikari
:
minimum-idle
:
0
maximum-pool-size
:
20
...
...
yami-shop-api/src/main/resources/application.yml
View file @
14c7a993
...
...
@@ -54,6 +54,8 @@ management:
wx
:
miniapp
:
configs
:
# - appId: wx50a14d592be6735e
# secret: f6323624efa19fcaaa18b9f95b7d2207
-
appid
:
wx72780b89fe2ee6f4
secret
:
78837e61297df3135e60c3701ab0b005
# - appid: wx42732c972778dc69 #微信小程序的appid
...
...
yami-shop-bean/src/main/java/com/yami/shop/bean/app/dto/ShopCartOrderMergerDto.java
View file @
14c7a993
...
...
@@ -10,6 +10,7 @@
package
com
.
yami
.
shop
.
bean
.
app
.
dto
;
import
com.baomidou.mybatisplus.annotation.TableField
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
...
...
@@ -43,4 +44,5 @@ public class ShopCartOrderMergerDto implements Serializable{
@ApiModelProperty
(
value
=
"整个订单可以使用的优惠券列表"
,
required
=
true
)
private
List
<
CouponOrderDto
>
coupons
;
}
yami-shop-bean/src/main/java/com/yami/shop/bean/app/dto/UserDto.java
View file @
14c7a993
...
...
@@ -10,27 +10,19 @@
package
com
.
yami
.
shop
.
bean
.
app
.
dto
;
import
com.yami.shop.bean.model.User
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
@Data
public
class
UserDto
{
private
User
user
;
@ApiModelProperty
(
value
=
"用户状态:0禁用 1正常"
,
required
=
true
)
private
Integer
status
;
@ApiModelProperty
(
value
=
"token"
,
required
=
true
)
private
String
token
;
public
Integer
getStatus
()
{
return
status
;
}
public
void
setStatus
(
Integer
status
)
{
this
.
status
=
status
;
}
public
String
getToken
()
{
return
token
;
}
public
void
setToken
(
String
token
)
{
this
.
token
=
token
;
}
}
\ No newline at end of file
yami-shop-bean/src/main/java/com/yami/shop/bean/app/param/OrderItemParam.java
View file @
14c7a993
...
...
@@ -40,4 +40,10 @@ public class OrderItemParam {
@ApiModelProperty
(
value
=
"推广员使用的推销卡号"
)
private
String
distributionCardNo
;
@ApiModelProperty
(
value
=
"1、砍价页面,0,、其他页面"
)
private
String
isBargain
;
@ApiModelProperty
(
value
=
"发起人表主键"
)
private
Long
activityId
;
}
yami-shop-bean/src/main/java/com/yami/shop/bean/app/param/OrderParam.java
View file @
14c7a993
...
...
@@ -41,6 +41,7 @@ public class OrderParam {
@ApiModelProperty
(
value
=
"优惠券id数组"
)
private
List
<
Long
>
couponIds
;
// @ApiModelProperty(value = "每次订单提交时的uuid")
// private String uuid;
// @ApiModelProperty(value = "订单入口 SHOP_CART购物车,BUY_NOW立即购买")
...
...
yami-shop-bean/src/main/java/com/yami/shop/bean/model/Bargain.java
View file @
14c7a993
...
...
@@ -3,6 +3,7 @@ package com.yami.shop.bean.model;
import
com.baomidou.mybatisplus.annotation.TableField
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
com.yami.shop.bean.app.dto.ProductDto
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
org.springframework.format.annotation.DateTimeFormat
;
...
...
@@ -29,82 +30,81 @@ public class Bargain implements Serializable {
/**
* 商品ID
*/
@ApiModelProperty
(
value
=
"商品ID"
,
required
=
tru
e
)
@ApiModelProperty
(
value
=
"商品ID"
,
required
=
fals
e
)
private
Long
prodId
;
/**
* 活动名称
*/
@ApiModelProperty
(
value
=
"活动名称"
,
required
=
tru
e
)
@ApiModelProperty
(
value
=
"活动名称"
,
required
=
fals
e
)
private
String
prodName
;
/**
* 开始时间
*/
@ApiModelProperty
(
value
=
"开始时间"
,
required
=
tru
e
)
@ApiModelProperty
(
value
=
"开始时间"
,
required
=
fals
e
)
@DateTimeFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
private
Date
startTime
;
/**
* 结束时间
*/
@ApiModelProperty
(
value
=
"结束时间"
,
required
=
tru
e
)
@ApiModelProperty
(
value
=
"结束时间"
,
required
=
fals
e
)
@DateTimeFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
private
Date
overTime
;
/**
* 状态:0未开始,1进行中,2已结束
*/
@ApiModelProperty
(
value
=
"状态:0未开始,1进行中,2已结束"
,
required
=
tru
e
)
@ApiModelProperty
(
value
=
"状态:0未开始,1进行中,2已结束"
,
required
=
fals
e
)
private
Integer
status
;
/**
* 序号
*/
@ApiModelProperty
(
value
=
"序号"
,
required
=
tru
e
)
@ApiModelProperty
(
value
=
"序号"
,
required
=
fals
e
)
private
Long
sort
;
/**
* 砍价最大金额(新用户)
*/
@ApiModelProperty
(
value
=
"砍价最大金额(新用户)"
,
required
=
tru
e
)
@ApiModelProperty
(
value
=
"砍价最大金额(新用户)"
,
required
=
fals
e
)
private
Double
newMax
;
/**
* 砍价最小金额(新用户)
*/
@ApiModelProperty
(
value
=
"砍价最小金额(新用户)"
,
required
=
tru
e
)
@ApiModelProperty
(
value
=
"砍价最小金额(新用户)"
,
required
=
fals
e
)
private
Double
newMin
;
/**
* 砍价最大金额(老用户)
*/
@ApiModelProperty
(
value
=
"砍价最大金额(老用户)"
,
required
=
tru
e
)
@ApiModelProperty
(
value
=
"砍价最大金额(老用户)"
,
required
=
fals
e
)
private
Double
oldMax
;
/**
* 砍价最小金额(老用户)
*/
@ApiModelProperty
(
value
=
"砍价最小金额(老用户)"
,
required
=
tru
e
)
@ApiModelProperty
(
value
=
"砍价最小金额(老用户)"
,
required
=
fals
e
)
private
Double
oldMin
;
/**
* 最低价格
*/
@ApiModelProperty
(
value
=
"最低价格"
,
required
=
tru
e
)
@ApiModelProperty
(
value
=
"最低价格"
,
required
=
fals
e
)
private
Double
minPrice
;
/**
* 库存
*/
@ApiModelProperty
(
value
=
"库存"
,
required
=
tru
e
)
@ApiModelProperty
(
value
=
"库存"
,
required
=
fals
e
)
private
Integer
stocks
;
/**
* 创建用户
*/
@ApiModelProperty
(
value
=
"创建时间"
,
required
=
false
)
@DateTimeFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
@ApiModelProperty
(
value
=
"创建人"
,
required
=
false
)
private
String
createdUser
;
/**
...
...
@@ -119,7 +119,7 @@ public class Bargain implements Serializable {
*/
@ApiModelProperty
(
value
=
"商品信息"
,
required
=
false
)
@TableField
(
exist
=
false
)
private
Product
product
;
private
Product
Dto
productDto
;
/**
* 砍价发起人
...
...
@@ -138,4 +138,7 @@ public class Bargain implements Serializable {
@ApiModelProperty
(
value
=
"正在砍价人数"
,
required
=
false
)
@TableField
(
exist
=
false
)
private
Integer
SendCount
;
@ApiModelProperty
(
value
=
"单品id"
,
required
=
false
)
private
Long
skuId
;
}
yami-shop-bean/src/main/java/com/yami/shop/bean/model/BargainDetailParm.java
View file @
14c7a993
...
...
@@ -8,7 +8,7 @@ public class BargainDetailParm {
/**
* 砍价活动id
*/
@ApiModelProperty
(
value
=
"砍价活动id"
,
required
=
tru
e
)
@ApiModelProperty
(
value
=
"砍价活动id"
,
required
=
fals
e
)
private
Long
id
;
/**
...
...
yami-shop-bean/src/main/java/com/yami/shop/bean/model/BargainHelp.java
View file @
14c7a993
...
...
@@ -24,32 +24,32 @@ public class BargainHelp {
/**
* 砍价表id
*/
@ApiModelProperty
(
value
=
"发起砍价表id"
,
required
=
tru
e
)
@ApiModelProperty
(
value
=
"发起砍价表id"
,
required
=
fals
e
)
private
Long
bargainOrderId
;
/**
* 帮助者ID
*/
@ApiModelProperty
(
value
=
"帮助者ID"
,
required
=
tru
e
)
@ApiModelProperty
(
value
=
"帮助者ID"
,
required
=
fals
e
)
private
String
assistorId
;
/**
* 帮助者昵称
*/
@ApiModelProperty
(
value
=
"帮助者昵称"
,
required
=
tru
e
)
@ApiModelProperty
(
value
=
"帮助者昵称"
,
required
=
fals
e
)
private
String
nickName
;
/**
* 帮助者头像
*/
@ApiModelProperty
(
value
=
"帮助者头像"
,
required
=
tru
e
)
@ApiModelProperty
(
value
=
"帮助者头像"
,
required
=
fals
e
)
private
String
headImg
;
/**
* 砍掉的价格
*/
@ApiModelProperty
(
value
=
"砍掉的价格"
,
required
=
tru
e
)
@ApiModelProperty
(
value
=
"砍掉的价格"
,
required
=
fals
e
)
private
Double
bargainMoney
;
/**
...
...
yami-shop-bean/src/main/java/com/yami/shop/bean/model/BargainHelpParm.java
View file @
14c7a993
...
...
@@ -7,19 +7,22 @@ import lombok.Data;
public
class
BargainHelpParm
{
@ApiModelProperty
(
value
=
"帮助者电话"
,
required
=
tru
e
)
@ApiModelProperty
(
value
=
"帮助者电话"
,
required
=
fals
e
)
private
String
userMobile
;
@ApiModelProperty
(
value
=
"验证码"
,
required
=
tru
e
)
@ApiModelProperty
(
value
=
"验证码"
,
required
=
fals
e
)
private
String
code
;
@ApiModelProperty
(
value
=
"商品ID"
,
required
=
tru
e
)
@ApiModelProperty
(
value
=
"商品ID"
,
required
=
fals
e
)
private
Long
prodId
;
@ApiModelProperty
(
value
=
"发起砍价表id"
,
required
=
tru
e
)
@ApiModelProperty
(
value
=
"发起砍价表id"
,
required
=
fals
e
)
private
Long
bargainOrderId
;
@ApiModelProperty
(
value
=
"砍价活动id"
,
required
=
tru
e
)
@ApiModelProperty
(
value
=
"砍价活动id"
,
required
=
fals
e
)
private
Long
activityId
;
@ApiModelProperty
(
value
=
"帮助者昵称"
,
required
=
tru
e
)
@ApiModelProperty
(
value
=
"帮助者昵称"
,
required
=
fals
e
)
private
String
nickName
;
@ApiModelProperty
(
value
=
"帮助者头像"
,
required
=
tru
e
)
@ApiModelProperty
(
value
=
"帮助者头像"
,
required
=
fals
e
)
private
String
headImg
;
@ApiModelProperty
(
value
=
"0为老用户,1为新用户"
,
required
=
false
)
private
String
isCode
;
}
yami-shop-bean/src/main/java/com/yami/shop/bean/model/BargainSend.java
View file @
14c7a993
...
...
@@ -3,6 +3,7 @@ package com.yami.shop.bean.model;
import
com.baomidou.mybatisplus.annotation.TableField
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
com.yami.shop.bean.app.dto.ProductDto
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
org.springframework.format.annotation.DateTimeFormat
;
...
...
@@ -26,19 +27,19 @@ public class BargainSend {
/**
* 砍价活动id
*/
@ApiModelProperty
(
value
=
"砍价活动id"
,
required
=
tru
e
)
@ApiModelProperty
(
value
=
"砍价活动id"
,
required
=
fals
e
)
private
Long
activityId
;
/**
* 参与活动的商品id
*/
@ApiModelProperty
(
value
=
"参与活动的商品id"
,
required
=
tru
e
)
@ApiModelProperty
(
value
=
"参与活动的商品id"
,
required
=
fals
e
)
private
Long
prodId
;
/**
* 砍价商品发起的用户ID
*/
@ApiModelProperty
(
value
=
"砍价商品发起的用户ID"
,
required
=
tru
e
)
@ApiModelProperty
(
value
=
"砍价商品发起的用户ID"
,
required
=
fals
e
)
private
String
userId
;
/**
...
...
@@ -50,13 +51,13 @@ public class BargainSend {
/**
* 最终交易价格
*/
@ApiModelProperty
(
value
=
"最终交易价格"
,
required
=
tru
e
)
@ApiModelProperty
(
value
=
"最终交易价格"
,
required
=
fals
e
)
private
Double
endPrice
;
/**
* 是否下单(0:未下单,1:已下单)
*/
@ApiModelProperty
(
value
=
"是否下单(0:未下单,1:已下单)"
,
required
=
tru
e
)
@ApiModelProperty
(
value
=
"是否下单(0:未下单,1:已下单)"
,
required
=
fals
e
)
private
Integer
isAddorder
;
/**
...
...
@@ -66,12 +67,15 @@ public class BargainSend {
@DateTimeFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
private
Date
createdAt
;
@ApiModelProperty
(
value
=
"创建人"
,
required
=
false
)
private
String
createdUser
;
/**
* 商品信息
*/
@ApiModelProperty
(
value
=
"商品信息"
,
required
=
false
)
@TableField
(
exist
=
false
)
private
Product
product
;
private
Product
Dto
productDto
;
/**
* 砍价活动
...
...
@@ -83,8 +87,10 @@ public class BargainSend {
* 帮砍好友信息
*/
@ApiModelProperty
(
value
=
"帮砍好友信息"
,
required
=
false
)
@TableField
(
exist
=
false
)
private
List
<
BargainHelp
>
bargainHelpList
;
@ApiModelProperty
(
value
=
"砍掉的金额"
,
required
=
false
)
@TableField
(
exist
=
false
)
private
double
cutMoney
;
}
yami-shop-bean/src/main/java/com/yami/shop/bean/model/SmsLog.java
View file @
14c7a993
...
...
@@ -21,7 +21,6 @@ public class SmsLog {
* ID
*/
@TableId
private
Long
id
;
/**
...
...
yami-shop-service/src/main/java/com/yami/shop/dao/UserMapper.java
View file @
14c7a993
...
...
@@ -22,4 +22,6 @@ public interface UserMapper extends BaseMapper<User> {
User
getUserByBizUserId
(
@Param
(
"appId"
)
Integer
appId
,
@Param
(
"bizUserId"
)
String
bizUserId
);
User
getUserByUserMobile
(
@Param
(
"userMobile"
)
String
userMobile
);
Integer
updatePhone
(
@Param
(
"userMobile"
)
String
userMobile
,
@Param
(
"userId"
)
String
userId
);
}
yami-shop-service/src/main/java/com/yami/shop/service/BasketService.java
View file @
14c7a993
...
...
@@ -63,6 +63,6 @@ public interface BasketService extends IService<Basket> {
* @param userId 当前用户的用户id
* @return 所有的商品购物项
*/
List
<
ShopCartItemDto
>
getShopCartItemsByOrderItems
(
List
<
Long
>
basketId
,
OrderItemParam
orderItem
,
String
userId
);
List
<
ShopCartItemDto
>
getShopCartItemsByOrderItems
(
String
isBargain
,
List
<
Long
>
basketId
,
OrderItemParam
orderItem
,
String
userId
);
}
yami-shop-service/src/main/java/com/yami/shop/service/UserService.java
View file @
14c7a993
...
...
@@ -33,4 +33,6 @@ public interface UserService extends IService<User> {
String
registerPhone
(
WxParamsVo
wxParamsVo
,
WxMaService
wxService
,
String
userId
);
User
getUserByUserMobile
(
String
userMobile
);
Integer
updatePhone
(
String
userMobile
,
String
userId
);
}
yami-shop-service/src/main/java/com/yami/shop/service/impl/BargainSendServiceImpl.java
View file @
14c7a993
...
...
@@ -7,6 +7,7 @@ import com.yami.shop.dao.BargainSendMapper;
import
com.yami.shop.service.BargainSendService
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
java.util.List
;
...
...
@@ -39,6 +40,7 @@ public class BargainSendServiceImpl extends ServiceImpl<BargainSendMapper, Barga
}
@Override
@Transactional
public
BargainSend
selectBargainTask
(
String
userId
,
long
activityId
)
{
return
bargainSendMapper
.
selectBargainTask
(
userId
,
activityId
);
}
...
...
yami-shop-service/src/main/java/com/yami/shop/service/impl/BasketServiceImpl.java
View file @
14c7a993
...
...
@@ -161,7 +161,7 @@ public class BasketServiceImpl extends ServiceImpl<BasketMapper, Basket> impleme
}
@Override
public
List
<
ShopCartItemDto
>
getShopCartItemsByOrderItems
(
List
<
Long
>
basketId
,
OrderItemParam
orderItem
,
String
userId
)
{
public
List
<
ShopCartItemDto
>
getShopCartItemsByOrderItems
(
String
isBargain
,
List
<
Long
>
basketId
,
OrderItemParam
orderItem
,
String
userId
)
{
if
(
orderItem
==
null
&&
CollectionUtil
.
isEmpty
(
basketId
))
{
return
Collections
.
emptyList
();
}
...
...
@@ -189,6 +189,9 @@ public class BasketServiceImpl extends ServiceImpl<BasketMapper, Basket> impleme
shopCartItemDto
.
setProdName
(
sku
.
getProdName
());
shopCartItemDto
.
setProductTotalAmount
(
Arith
.
mul
(
sku
.
getPrice
(),
orderItem
.
getProdCount
()));
shopCartItemDto
.
setPrice
(
sku
.
getPrice
());
if
(
"1"
.
equals
(
isBargain
)){
shopCartItemDto
.
setPrice
(
prod
.
getPrice
());
}
shopCartItemDto
.
setDistributionCardNo
(
orderItem
.
getDistributionCardNo
());
shopCartItemDto
.
setBasketDate
(
new
Date
());
ShopDetail
shopDetail
=
shopDetailService
.
getShopDetailByShopId
(
orderItem
.
getShopId
());
...
...
@@ -205,5 +208,4 @@ public class BasketServiceImpl extends ServiceImpl<BasketMapper, Basket> impleme
.
collect
(
Collectors
.
toList
());
}
}
yami-shop-service/src/main/java/com/yami/shop/service/impl/SmsLogServiceImpl.java
View file @
14c7a993
...
...
@@ -53,7 +53,7 @@ import java.util.Map.Entry;
@Slf4j
@AllArgsConstructor
public
class
SmsLogServiceImpl
extends
ServiceImpl
<
SmsLogMapper
,
SmsLog
>
implements
SmsLogService
{
@Autowired
private
SmsLogMapper
smsLogMapper
;
private
ALiDaYu
aLiDaYu
;
...
...
yami-shop-service/src/main/java/com/yami/shop/service/impl/UserServiceImpl.java
View file @
14c7a993
...
...
@@ -13,12 +13,15 @@ package com.yami.shop.service.impl;
import
cn.binarywang.wx.miniapp.api.WxMaService
;
import
cn.binarywang.wx.miniapp.bean.WxMaPhoneNumberInfo
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.yami.shop.bean.enums.SmsType
;
import
com.yami.shop.bean.model.User
;
import
com.yami.shop.bean.vo.WxParamsVo
;
import
com.yami.shop.common.util.CacheManagerUtil
;
import
com.yami.shop.dao.SmsLogMapper
;
import
com.yami.shop.dao.UserMapper
;
import
com.yami.shop.service.UserService
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.cache.annotation.Cacheable
;
import
org.springframework.stereotype.Service
;
...
...
@@ -32,6 +35,8 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
private
final
CacheManagerUtil
cacheManagerUtil
;
@Autowired
private
SmsLogMapper
smsLogMapper
;
public
UserServiceImpl
(
CacheManagerUtil
cacheManagerUtil
,
UserMapper
userMapper
)
{
this
.
cacheManagerUtil
=
cacheManagerUtil
;
this
.
userMapper
=
userMapper
;
...
...
@@ -67,4 +72,10 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
public
User
getUserByUserMobile
(
String
userMobile
)
{
return
userMapper
.
getUserByUserMobile
(
userMobile
);
}
@Override
public
Integer
updatePhone
(
String
userMobile
,
String
userId
)
{
smsLogMapper
.
invalidSmsByMobileAndType
(
userMobile
,
SmsType
.
VALID
.
value
());
return
userMapper
.
updatePhone
(
userMobile
,
userId
);
}
}
yami-shop-service/src/main/resources/mapper/BargainMapper.xml
View file @
14c7a993
...
...
@@ -20,7 +20,7 @@
<result
column=
"stocks"
jdbcType=
"INTEGER"
property=
"stocks"
/>
<result
column=
"created_user"
jdbcType=
"VARCHAR"
property=
"createdUser"
/>
<result
column=
"created_at"
jdbcType=
"TIMESTAMP"
property=
"createdAt"
/>
<result
column=
"sku_id"
jdbcType=
"BIGINT"
property=
"skuId"
/>
</resultMap>
<select
id=
"selectBargainTotalList"
resultType=
"com.yami.shop.bean.model.BargainParm"
>
...
...
yami-shop-service/src/main/resources/mapper/SmsLogMapper.xml
View file @
14c7a993
...
...
@@ -20,6 +20,6 @@
update tz_sms_log set status = 0 where user_phone = #{mobile} and type = #{type}
</update>
<select
id=
"selectSmsByMobileAndType"
resultMap=
"BaseResultMap"
>
select * from tz_sms_log where user_phone=#{mobile} and status= #{status}
order by rec_date desc limit 1
select * from tz_sms_log where user_phone=#{mobile} and status= #{status}
</select>
</mapper>
\ No newline at end of file
yami-shop-service/src/main/resources/mapper/UserMapper.xml
View file @
14c7a993
...
...
@@ -33,7 +33,11 @@
select * from tz_user u where user_mobile=#{userMobile}
</select>
<update
id=
"updatePhone"
parameterType=
"com.yami.shop.bean.model.User"
>
update tz_user
set user_mobile = #{userMobile}
where user_id = #{userId}
</update>
</mapper>
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment