Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
8
8timerapiv200
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
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
8timerv2
8timerapiv200
Commits
b88aeda6
Commit
b88aeda6
authored
Apr 26, 2020
by
邓实川
Committed by
chenzg
Jul 05, 2021
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
短信、电子合同使用约束
parent
aba92717
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
285 additions
and
93 deletions
+285
-93
src/main/java/cn/timer/api/bean/qyzx/businessService/QyzxRemainingQuantity.java
+2
-2
src/main/java/cn/timer/api/bean/qyzx/businessService/QyzxScene.java
+6
-5
src/main/java/cn/timer/api/bean/qyzx/businessService/QyzxUseRecord.java
+5
-2
src/main/java/cn/timer/api/callback/wx/WxCallBackController.java
+6
-1
src/main/java/cn/timer/api/controller/LoginController.java
+20
-11
src/main/java/cn/timer/api/controller/dzht/DzhtController2.java
+54
-14
src/main/java/cn/timer/api/controller/htzz/HtzzController.java
+20
-9
src/main/java/cn/timer/api/controller/qyzx/QyzxBusinessController.java
+76
-34
src/main/java/cn/timer/api/utils/aliyun/AliyunSMS.java
+96
-11
src/main/java/cn/timer/api/utils/schedule/RemindUtil.java
+0
-4
No files found.
src/main/java/cn/timer/api/bean/qyzx/businessService/QyzxRemainingQuantity.java
View file @
b88aeda6
...
@@ -55,8 +55,8 @@ public class QyzxRemainingQuantity extends Model<QyzxRemainingQuantity>{
...
@@ -55,8 +55,8 @@ public class QyzxRemainingQuantity extends Model<QyzxRemainingQuantity>{
@ApiModelProperty
(
value
=
"付费模块id"
,
example
=
"1"
)
@ApiModelProperty
(
value
=
"付费模块id"
,
example
=
"1"
)
private
Integer
pmid
;
private
Integer
pmid
;
//
@ApiModelProperty(value="付费内容id",example="1")
@ApiModelProperty
(
value
=
"付费内容id"
,
example
=
"1"
)
//
private Integer pcid;
private
Integer
pcid
;
@ApiModelProperty
(
value
=
"订单号"
,
example
=
"1"
)
@ApiModelProperty
(
value
=
"订单号"
,
example
=
"1"
)
private
String
orderNo
;
private
String
orderNo
;
...
...
src/main/java/cn/timer/api/bean/qyzx/businessService/QyzxScene.java
View file @
b88aeda6
...
@@ -20,13 +20,14 @@ import lombok.Getter;
...
@@ -20,13 +20,14 @@ import lombok.Getter;
@Getter
@Getter
@AllArgsConstructor
@AllArgsConstructor
public
enum
QyzxScene
{
public
enum
QyzxScene
{
MSG_LOGIN
(
1
,
"短信登录"
),
MSG_AUTHENTICATION
(
1
,
"短信身份验证"
),
MSG_LOGIN_CONFIRM
(
1
,
"短信登录确认"
),
MSG_REGISTER
(
1
,
"短信用户注册"
),
MSG_CHANGE_PWD
(
1
,
"修改密码"
),
MSG_CHANGE_PWD
(
1
,
"修改密码"
),
MSG_CHANGE_UNAME
(
1
,
"修改用户名"
),
MSG_CHANGE_IMP
(
1
,
"修改重要信息"
),
MSG_CHANGE_PHONE
(
1
,
"修改手机号"
),
MSG_REMIND
(
1
,
"证照提醒"
),
MSG_REMIND
(
1
,
"证照提醒"
),
CONTRACT_SINGLE
(
2
,
"
修改密码
"
),
CONTRACT_SINGLE
(
2
,
"
单签
"
),
CONTRACT_BOTH
(
2
,
"
用户注册
"
);
CONTRACT_BOTH
(
2
,
"
双方签
"
);
private
final
Integer
code
;
private
final
Integer
code
;
private
final
String
message
;
private
final
String
message
;
...
...
src/main/java/cn/timer/api/bean/qyzx/businessService/QyzxUseRecord.java
View file @
b88aeda6
...
@@ -59,7 +59,7 @@ public class QyzxUseRecord extends Model<QyzxUseRecord>{
...
@@ -59,7 +59,7 @@ public class QyzxUseRecord extends Model<QyzxUseRecord>{
private
String
orderNo
;
private
String
orderNo
;
@ApiModelProperty
(
value
=
"使用场景"
,
example
=
"1"
)
@ApiModelProperty
(
value
=
"使用场景"
,
example
=
"1"
)
private
Integer
scene
;
private
String
scene
;
@ApiModelProperty
(
value
=
"使用数量"
,
example
=
"1"
)
@ApiModelProperty
(
value
=
"使用数量"
,
example
=
"1"
)
private
Integer
useNum
;
private
Integer
useNum
;
...
@@ -78,5 +78,8 @@ public class QyzxUseRecord extends Model<QyzxUseRecord>{
...
@@ -78,5 +78,8 @@ public class QyzxUseRecord extends Model<QyzxUseRecord>{
private
Date
createTime
;
private
Date
createTime
;
@ApiModelProperty
(
value
=
"创建人 "
,
example
=
""
)
@ApiModelProperty
(
value
=
"创建人 "
,
example
=
""
)
private
Integer
createUser
;
private
String
createUser
;
@ApiModelProperty
(
value
=
"使用人手机号 "
,
example
=
""
)
private
String
userPhone
;
}
}
src/main/java/cn/timer/api/callback/wx/WxCallBackController.java
View file @
b88aeda6
...
@@ -81,6 +81,10 @@ public class WxCallBackController {
...
@@ -81,6 +81,10 @@ public class WxCallBackController {
if
(!
env
.
equals
(
"dev"
)
&&
!
env
.
equals
(
"test"
))
{
if
(!
env
.
equals
(
"dev"
)
&&
!
env
.
equals
(
"test"
))
{
return
ResultUtil
.
error
(
"请切换到开发/测试环境"
);
return
ResultUtil
.
error
(
"请切换到开发/测试环境"
);
}
}
// TODO 加套餐 如果已经存在可用的套餐 ,怎么搞
updateAndInsert
(
orderNo
);
updateAndInsert
(
orderNo
);
return
ResultUtil
.
data
(
orderNo
,
"购买成功"
);
return
ResultUtil
.
data
(
orderNo
,
"购买成功"
);
}
}
...
@@ -118,7 +122,8 @@ public class WxCallBackController {
...
@@ -118,7 +122,8 @@ public class WxCallBackController {
quantity
.
setRemainder
(
totalNum
);
// 套餐剩余数(同上)
quantity
.
setRemainder
(
totalNum
);
// 套餐剩余数(同上)
quantity
.
setCount
(
count
);
// 购买数量
quantity
.
setCount
(
count
);
// 购买数量
quantity
.
setPmid
(
pmid
);
// 付费模块id
quantity
.
setPmid
(
pmid
);
// 付费模块id
// quantity.setPcid(pcid); // 付费内容id
quantity
.
setPcid
(
pcid
);
// 付费内容id
quantity
.
setUnit
(
unit
);
quantity
.
setCreateUser
(
createdUser
);
quantity
.
setCreateUser
(
createdUser
);
quantity
.
setOrgCode
(
orgCode
);
quantity
.
setOrgCode
(
orgCode
);
quantity
.
insert
();
quantity
.
insert
();
...
...
src/main/java/cn/timer/api/controller/LoginController.java
View file @
b88aeda6
...
@@ -87,17 +87,26 @@ public class LoginController {
...
@@ -87,17 +87,26 @@ public class LoginController {
@ApiOperation
(
value
=
"1.发送验证码"
,
httpMethod
=
"POST"
,
notes
=
"接口发布说明"
)
@ApiOperation
(
value
=
"1.发送验证码"
,
httpMethod
=
"POST"
,
notes
=
"接口发布说明"
)
@ApiOperationSupport
(
order
=
1
)
@ApiOperationSupport
(
order
=
1
)
public
Result
<
String
>
sendCode
(
@RequestBody
EntRegisterDto
entRegisterDto
)
{
public
Result
<
String
>
sendCode
(
@RequestBody
EntRegisterDto
entRegisterDto
)
{
String
phone
=
entRegisterDto
.
getPhone
();
String
phone
=
entRegisterDto
.
getPhone
();
Integer
orgCode
=
QyzxEmpLogin
.
builder
().
build
()
Integer
orgCode
=
QyzxEmpLogin
.
builder
().
build
()
.
selectOne
(
new
LambdaQueryWrapper
<
QyzxEmpLogin
>().
eq
(
QyzxEmpLogin:
:
getPhone
,
phone
)).
getOrgId
();
.
selectOne
(
new
LambdaQueryWrapper
<
QyzxEmpLogin
>().
eq
(
QyzxEmpLogin:
:
getPhone
,
phone
)).
getOrgId
();
QyzxRemainingQuantity
quantity
=
QyzxRemainingQuantity
.
builder
().
build
()
QyzxRemainingQuantity
quantity
=
QyzxRemainingQuantity
.
builder
().
build
().
selectOne
(
.
selectOne
(
new
LambdaQueryWrapper
<
QyzxRemainingQuantity
>()
new
LambdaQueryWrapper
<
QyzxRemainingQuantity
>().
eq
(
QyzxRemainingQuantity:
:
getOrgCode
,
orgCode
)
.
eq
(
QyzxRemainingQuantity:
:
getOrgCode
,
orgCode
)
.
eq
(
QyzxRemainingQuantity:
:
getPmid
,
1
).
gt
(
QyzxRemainingQuantity:
:
getRemainder
,
0
));
.
orderByAsc
(
QyzxRemainingQuantity:
:
getExpireDate
));
Date
date
=
null
;
if
(
quantity
==
null
||
quantity
.
getRemainder
()
==
null
||
quantity
.
getRemainder
()
<=
0
)
{
//判断充了钱没
Integer
remainder
=
null
;
return
ResultUtil
.
error
(
"请充值后使用短信功能"
);
if
(
quantity
!=
null
)
{
remainder
=
quantity
.
getRemainder
();
date
=
quantity
.
getExpireDate
();
}
if
(
quantity
==
null
||
remainder
==
null
||
remainder
<=
0
)
{
// 判断充了钱没
return
ResultUtil
.
error
(
"请充值后使用短信功能!"
);
}
if
(
date
!=
null
&&
date
.
getTime
()
<=
new
Date
().
getTime
())
{
System
.
err
.
println
(
"企业 "
+
orgCode
+
" :短信套餐已过期"
);
return
ResultUtil
.
error
(
"短信套餐已到期!"
);
}
}
// 6位随机数验证码
// 6位随机数验证码
...
@@ -105,19 +114,19 @@ public class LoginController {
...
@@ -105,19 +114,19 @@ public class LoginController {
Integer
code
=
(
int
)
((
Math
.
random
()
*
9
+
1
)
*
100000
);
Integer
code
=
(
int
)
((
Math
.
random
()
*
9
+
1
)
*
100000
);
AliyunSMS
aliyunSMS
=
new
AliyunSMS
();
AliyunSMS
aliyunSMS
=
new
AliyunSMS
();
if
(
phone
==
null
||
""
.
equals
(
phone
))
{
if
(
phone
==
null
||
""
.
equals
(
phone
))
{
phone
=
entRegisterDto
.
getUsername
();
phone
=
entRegisterDto
.
getUsername
();
entRegisterDto
.
setPhone
(
phone
);
entRegisterDto
.
setPhone
(
phone
);
}
}
JSONObject
j
=
aliyunSMS
.
authCode
(
entRegisterDto
,
entRegisterDto
.
getTc
(),
code
);
JSONObject
j
=
aliyunSMS
.
authCode
(
entRegisterDto
,
entRegisterDto
.
getTc
(),
code
);
// 获取当前日期的字符串格式
// 获取当前日期的字符串格式
String
today
=
DateUtil
.
today
();
String
today
=
DateUtil
.
today
();
// yyyy-MM-dd
// yyyy-MM-dd
today
=
today
.
replace
(
"-"
,
""
);
today
=
today
.
replace
(
"-"
,
""
);
Thread
.
sleep
(
5
00
);
Thread
.
sleep
(
10
00
);
JSONObject
jsonObject
=
(
JSONObject
)
JSONObject
JSONObject
jsonObject
=
(
JSONObject
)
JSONObject
.
parseObject
(
new
AliyunSMS
().
QuerySendDetails
(
phone
,
today
,
j
.
getString
(
"BizId"
)))
.
parseObject
(
new
AliyunSMS
().
QuerySendDetails
(
phone
,
today
,
j
.
getString
(
"BizId"
)))
.
getJSONObject
(
"SmsSendDetailDTOs"
).
getJSONArray
(
"SmsSendDetailDTO"
).
get
(
0
);
.
getJSONObject
(
"SmsSendDetailDTOs"
).
getJSONArray
(
"SmsSendDetailDTO"
).
get
(
0
);
...
...
src/main/java/cn/timer/api/controller/dzht/DzhtController2.java
View file @
b88aeda6
...
@@ -23,6 +23,7 @@ import org.springframework.web.bind.annotation.RestController;
...
@@ -23,6 +23,7 @@ import org.springframework.web.bind.annotation.RestController;
import
com.alibaba.fastjson.JSONArray
;
import
com.alibaba.fastjson.JSONArray
;
import
com.alibaba.fastjson.JSONObject
;
import
com.alibaba.fastjson.JSONObject
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper
;
import
com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
...
@@ -40,6 +41,7 @@ import cn.timer.api.bean.dzht.DzhtAssoQyyz;
...
@@ -40,6 +41,7 @@ import cn.timer.api.bean.dzht.DzhtAssoQyyz;
import
cn.timer.api.bean.dzht.DzhtAssoQyzc
;
import
cn.timer.api.bean.dzht.DzhtAssoQyzc
;
import
cn.timer.api.bean.dzht.DzhtAssoSdgzq
;
import
cn.timer.api.bean.dzht.DzhtAssoSdgzq
;
import
cn.timer.api.bean.dzht.DzhtAssoTpyz
;
import
cn.timer.api.bean.dzht.DzhtAssoTpyz
;
import
cn.timer.api.bean.qyzx.businessService.QyzxRemainingQuantity
;
import
cn.timer.api.bean.yggl.YgglMainEmp
;
import
cn.timer.api.bean.yggl.YgglMainEmp
;
import
cn.timer.api.config.annotation.CurrentUser
;
import
cn.timer.api.config.annotation.CurrentUser
;
import
cn.timer.api.config.annotation.UserBean
;
import
cn.timer.api.config.annotation.UserBean
;
...
@@ -193,8 +195,7 @@ public class DzhtController2 {
...
@@ -193,8 +195,7 @@ public class DzhtController2 {
public
Result
<
Object
>
orgTemplate
(
@CurrentUser
UserBean
userBean
,
@RequestBody
DzhtAssoQyyz
qyyz
)
{
public
Result
<
Object
>
orgTemplate
(
@CurrentUser
UserBean
userBean
,
@RequestBody
DzhtAssoQyyz
qyyz
)
{
String
orgId
=
DzhtAssoQyzc
.
builder
().
build
().
selectOne
(
String
orgId
=
DzhtAssoQyzc
.
builder
().
build
().
selectOne
(
// new QueryWrapper<DzhtAssoQyzc>().eq("third_party_user_id", qyyz.getThirdPartyUserId()).select("org_id"))
// new QueryWrapper<DzhtAssoQyzc>().eq("third_party_user_id", qyyz.getThirdPartyUserId()).select("org_id"))
new
QueryWrapper
<
DzhtAssoQyzc
>().
eq
(
"org_code"
,
userBean
.
getOrgCode
()).
select
(
"org_id"
))
new
QueryWrapper
<
DzhtAssoQyzc
>().
eq
(
"org_code"
,
userBean
.
getOrgCode
()).
select
(
"org_id"
)).
getOrgId
();
// 查询orgId
.
getOrgId
();
// 查询orgId
// String orgId = "dfd84b9a58d345ea90f6711bad853435";// 测试公司账户
// String orgId = "dfd84b9a58d345ea90f6711bad853435";// 测试公司账户
// 印章参数
// 印章参数
String
alias
=
qyyz
.
getAlias
();
String
alias
=
qyyz
.
getAlias
();
...
@@ -409,6 +410,25 @@ public class DzhtController2 {
...
@@ -409,6 +410,25 @@ public class DzhtController2 {
@ApiOperation
(
value
=
"创建签署流程"
,
httpMethod
=
"POST"
,
notes
=
"接口发布说明"
)
@ApiOperation
(
value
=
"创建签署流程"
,
httpMethod
=
"POST"
,
notes
=
"接口发布说明"
)
public
Result
<
Object
>
signflows
(
@CurrentUser
UserBean
userBean
,
@RequestBody
DzhtAssoCjlc
lc
)
{
public
Result
<
Object
>
signflows
(
@CurrentUser
UserBean
userBean
,
@RequestBody
DzhtAssoCjlc
lc
)
{
Integer
orgCode
=
userBean
.
getOrgCode
();
QyzxRemainingQuantity
quantity
=
QyzxRemainingQuantity
.
builder
().
build
().
selectOne
(
new
LambdaQueryWrapper
<
QyzxRemainingQuantity
>().
eq
(
QyzxRemainingQuantity:
:
getOrgCode
,
orgCode
)
.
eq
(
QyzxRemainingQuantity:
:
getPmid
,
2
).
gt
(
QyzxRemainingQuantity:
:
getRemainder
,
0
));
Integer
remainder
=
null
;
Date
date
=
null
;
if
(
quantity
!=
null
)
{
remainder
=
quantity
.
getRemainder
();
date
=
quantity
.
getExpireDate
();
}
if
(
quantity
==
null
||
remainder
==
null
||
remainder
<=
0
)
{
return
ResultUtil
.
error
(
"企业 "
+
orgCode
+
" :套餐余额不足,请充值购买后使用"
);
}
if
(
date
!=
null
&&
date
.
getTime
()
<=
new
Date
().
getTime
())
{
return
ResultUtil
.
error
(
"企业 "
+
orgCode
+
" :电子合同套餐已过期"
);
}
// ConfigInfo cfgInfo = new ConfigInfo(null, "1,2", null, null);
// ConfigInfo cfgInfo = new ConfigInfo(null, "1,2", null, null);
// SignFlowStart sfs = new SignFlowStart(null, "测试签署流程开启", null, null, null,
// SignFlowStart sfs = new SignFlowStart(null, "测试签署流程开启", null, null, null,
// null, null, cfgInfo);
// null, null, cfgInfo);
...
@@ -442,7 +462,7 @@ public class DzhtController2 {
...
@@ -442,7 +462,7 @@ public class DzhtController2 {
lc
.
setFlowId
(
jsonObject
.
getString
(
"flowId"
));
lc
.
setFlowId
(
jsonObject
.
getString
(
"flowId"
));
lc
.
setCreater
(
userBean
.
getEmpNum
());
lc
.
setCreater
(
userBean
.
getEmpNum
());
lc
.
setCreatedTime
(
new
Date
());
lc
.
setCreatedTime
(
new
Date
());
lc
.
setOrgCode
(
userBean
.
getOrgCode
()
);
lc
.
setOrgCode
(
orgCode
);
lc
.
insert
();
lc
.
insert
();
}
catch
(
DefineException
e1
)
{
}
catch
(
DefineException
e1
)
{
e1
.
printStackTrace
();
e1
.
printStackTrace
();
...
@@ -647,10 +667,10 @@ public class DzhtController2 {
...
@@ -647,10 +667,10 @@ public class DzhtController2 {
for
(
DzhtAssoSdgzq
sdgzq
:
sdgzqs
)
{
for
(
DzhtAssoSdgzq
sdgzq
:
sdgzqs
)
{
String
flowId
=
sdgzq
.
getFlowId
();
String
flowId
=
sdgzq
.
getFlowId
();
DzhtAssoCjlc
lc
=
DzhtAssoCjlc
.
builder
().
build
()
.
selectOne
(
new
QueryWrapper
<
DzhtAssoCjlc
>().
eq
(
"flow_id"
,
flowId
).
select
(
"business_scene"
));
DzhtAssoCjlc
lc
=
DzhtAssoCjlc
.
builder
().
build
()
sdgzq
.
setBusinessScene
(
lc
.
getBusinessScene
());
//文件主题
.
selectOne
(
new
QueryWrapper
<
DzhtAssoCjlc
>().
eq
(
"flow_id"
,
flowId
).
select
(
"business_scene"
));
sdgzq
.
setBusinessScene
(
lc
.
getBusinessScene
());
// 文件主题
String
fileId
=
sdgzq
.
getFileId
();
String
fileId
=
sdgzq
.
getFileId
();
String
signerAccountId
=
sdgzq
.
getSignerAccountId
();
String
signerAccountId
=
sdgzq
.
getSignerAccountId
();
...
@@ -680,7 +700,7 @@ public class DzhtController2 {
...
@@ -680,7 +700,7 @@ public class DzhtController2 {
.
selectOne
(
new
QueryWrapper
<
DzhtAssoGrzc
>().
eq
(
"account_id"
,
signerAccountId
));
.
selectOne
(
new
QueryWrapper
<
DzhtAssoGrzc
>().
eq
(
"account_id"
,
signerAccountId
));
if
(
grzc
!=
null
)
{
if
(
grzc
!=
null
)
{
Integer
signerEmpNum
=
grzc
.
getEmpNum
();
Integer
signerEmpNum
=
grzc
.
getEmpNum
();
sdgzq
.
setSignerEmpNum
(
signerEmpNum
);
//签署人员工号
sdgzq
.
setSignerEmpNum
(
signerEmpNum
);
//
签署人员工号
}
}
sdgzq
.
setCreater
(
userBean
.
getEmpNum
());
sdgzq
.
setCreater
(
userBean
.
getEmpNum
());
sdgzq
.
setCreatedTime
(
new
Date
());
sdgzq
.
setCreatedTime
(
new
Date
());
...
@@ -797,6 +817,26 @@ public class DzhtController2 {
...
@@ -797,6 +817,26 @@ public class DzhtController2 {
@PutMapping
(
"/startSignFlow"
)
@PutMapping
(
"/startSignFlow"
)
@ApiOperation
(
value
=
"开启签署流程"
,
httpMethod
=
"PUT"
,
notes
=
"接口发布说明"
)
@ApiOperation
(
value
=
"开启签署流程"
,
httpMethod
=
"PUT"
,
notes
=
"接口发布说明"
)
public
Result
<
Object
>
startSignFlow
(
@CurrentUser
UserBean
userBean
,
@RequestParam
String
flowId
)
{
public
Result
<
Object
>
startSignFlow
(
@CurrentUser
UserBean
userBean
,
@RequestParam
String
flowId
)
{
Integer
orgCode
=
userBean
.
getOrgCode
();
QyzxRemainingQuantity
quantity
=
QyzxRemainingQuantity
.
builder
().
build
().
selectOne
(
new
LambdaQueryWrapper
<
QyzxRemainingQuantity
>().
eq
(
QyzxRemainingQuantity:
:
getOrgCode
,
orgCode
)
.
eq
(
QyzxRemainingQuantity:
:
getPmid
,
2
).
gt
(
QyzxRemainingQuantity:
:
getRemainder
,
0
));
Integer
remainder
=
null
;
Date
date
=
null
;
if
(
quantity
!=
null
)
{
remainder
=
quantity
.
getRemainder
();
date
=
quantity
.
getExpireDate
();
}
if
(
quantity
==
null
||
remainder
==
null
||
remainder
<=
0
)
{
return
ResultUtil
.
error
(
"企业 "
+
orgCode
+
" :套餐余额不足,请充值购买后使用"
);
}
if
(
date
!=
null
&&
date
.
getTime
()
<=
new
Date
().
getTime
())
{
return
ResultUtil
.
error
(
"企业 "
+
orgCode
+
" :电子合同套餐已过期"
);
}
try
{
try
{
TokenHelper
.
getTokenData
();
// 获取鉴权
TokenHelper
.
getTokenData
();
// 获取鉴权
SignHelper
.
startSignFlow
(
flowId
);
SignHelper
.
startSignFlow
(
flowId
);
...
@@ -907,8 +947,9 @@ public class DzhtController2 {
...
@@ -907,8 +947,9 @@ public class DzhtController2 {
@RequestParam
(
required
=
false
,
defaultValue
=
"10"
)
Integer
pageSize
,
@RequestParam
(
required
=
false
,
defaultValue
=
"10"
)
Integer
pageSize
,
@RequestParam
(
required
=
false
)
String
query
)
{
@RequestParam
(
required
=
false
)
String
query
)
{
com
.
github
.
pagehelper
.
Page
<
Object
>
page
=
PageHelper
.
startPage
(
currPage
,
pageSize
);
com
.
github
.
pagehelper
.
Page
<
Object
>
page
=
PageHelper
.
startPage
(
currPage
,
pageSize
);
List
<
DzhtAssoCjlc
>
cjlcs
=
DzhtAssoCjlc
.
builder
().
build
().
selectList
(
new
QueryWrapper
<
DzhtAssoCjlc
>().
like
(
query
!=
null
,
"business_scene"
,
query
)
List
<
DzhtAssoCjlc
>
cjlcs
=
DzhtAssoCjlc
.
builder
().
build
()
.
eq
(
"org_code"
,
userBean
.
getOrgCode
()).
eq
(
"creater"
,
userBean
.
getEmpNum
()).
select
(
"flow_id"
));
.
selectList
(
new
QueryWrapper
<
DzhtAssoCjlc
>().
like
(
query
!=
null
,
"business_scene"
,
query
)
.
eq
(
"org_code"
,
userBean
.
getOrgCode
()).
eq
(
"creater"
,
userBean
.
getEmpNum
()).
select
(
"flow_id"
));
List
<
Object
>
l
=
new
ArrayList
<
Object
>();
List
<
Object
>
l
=
new
ArrayList
<
Object
>();
for
(
DzhtAssoCjlc
lc
:
cjlcs
)
{
for
(
DzhtAssoCjlc
lc
:
cjlcs
)
{
l
.
add
(
qryFlow
(
lc
.
getFlowId
()));
l
.
add
(
qryFlow
(
lc
.
getFlowId
()));
...
@@ -968,13 +1009,12 @@ public class DzhtController2 {
...
@@ -968,13 +1009,12 @@ public class DzhtController2 {
public
Result
<
Object
>
getSdlc
(
@CurrentUser
UserBean
userBean
,
public
Result
<
Object
>
getSdlc
(
@CurrentUser
UserBean
userBean
,
@RequestParam
(
required
=
false
,
defaultValue
=
"1"
)
Integer
currPage
,
@RequestParam
(
required
=
false
,
defaultValue
=
"1"
)
Integer
currPage
,
@RequestParam
(
required
=
false
,
defaultValue
=
"10"
)
Integer
pageSize
,
@RequestParam
(
required
=
false
,
defaultValue
=
"10"
)
Integer
pageSize
,
@RequestParam
(
required
=
false
)
String
query
)
{
@RequestParam
(
required
=
false
)
String
query
)
{
List
<
JSONObject
>
json
=
new
ArrayList
<
JSONObject
>();
List
<
JSONObject
>
json
=
new
ArrayList
<
JSONObject
>();
com
.
github
.
pagehelper
.
Page
<
Object
>
page
=
PageHelper
.
startPage
(
currPage
,
pageSize
);
com
.
github
.
pagehelper
.
Page
<
Object
>
page
=
PageHelper
.
startPage
(
currPage
,
pageSize
);
List
<
DzhtAssoSdgzq
>
list
=
DzhtAssoSdgzq
.
builder
().
build
()
List
<
DzhtAssoSdgzq
>
list
=
DzhtAssoSdgzq
.
builder
().
build
()
.
selectList
(
new
QueryWrapper
<
DzhtAssoSdgzq
>()
.
selectList
(
new
QueryWrapper
<
DzhtAssoSdgzq
>().
select
(
"distinct flow_id"
)
.
select
(
"distinct flow_id"
)
.
eq
(
"signer_emp_num"
,
userBean
.
getEmpNum
()).
like
(
query
!=
null
,
"business_scene"
,
query
));
.
eq
(
"signer_emp_num"
,
userBean
.
getEmpNum
()).
like
(
query
!=
null
,
"business_scene"
,
query
));
List
<
String
>
flowIdList
=
Lists
.
transform
(
list
,
newList
->
newList
.
getFlowId
());
List
<
String
>
flowIdList
=
Lists
.
transform
(
list
,
newList
->
newList
.
getFlowId
());
for
(
String
flowId
:
flowIdList
)
{
for
(
String
flowId
:
flowIdList
)
{
...
...
src/main/java/cn/timer/api/controller/htzz/HtzzController.java
View file @
b88aeda6
...
@@ -70,18 +70,29 @@ public class HtzzController {
...
@@ -70,18 +70,29 @@ public class HtzzController {
@PostMapping
(
"/addzj"
)
@PostMapping
(
"/addzj"
)
@ApiOperation
(
value
=
"新增合同证件"
,
httpMethod
=
"POST"
,
notes
=
"接口发布说明"
)
@ApiOperation
(
value
=
"新增合同证件"
,
httpMethod
=
"POST"
,
notes
=
"接口发布说明"
)
public
Result
<
Object
>
addzj
(
@CurrentUser
UserBean
userBean
,
@RequestBody
HtzzAdminZzda
zzda
)
{
public
Result
<
Object
>
addzj
(
@CurrentUser
UserBean
userBean
,
@RequestBody
HtzzAdminZzda
zzda
)
{
Integer
orgCode
=
userBean
.
getOrgCode
();
QyzxRemainingQuantity
quantity
=
QyzxRemainingQuantity
.
builder
().
build
()
QyzxRemainingQuantity
quantity
=
QyzxRemainingQuantity
.
builder
().
build
().
selectOne
(
.
selectOne
(
new
LambdaQueryWrapper
<
QyzxRemainingQuantity
>()
new
LambdaQueryWrapper
<
QyzxRemainingQuantity
>().
eq
(
QyzxRemainingQuantity:
:
getOrgCode
,
orgCode
)
.
eq
(
QyzxRemainingQuantity:
:
getOrgCode
,
userBean
.
getOrgCode
())
.
eq
(
QyzxRemainingQuantity:
:
getPmid
,
1
).
gt
(
QyzxRemainingQuantity:
:
getRemainder
,
0
));
.
orderByAsc
(
QyzxRemainingQuantity:
:
getExpireDate
));
Date
date
=
null
;
if
(
quantity
==
null
||
quantity
.
getRemainder
()
==
null
||
quantity
.
getRemainder
()
<=
0
)
{
Integer
remainder
=
null
;
return
ResultUtil
.
data
(
"请先充值购买短信套餐!"
);
if
(
quantity
!=
null
)
{
remainder
=
quantity
.
getRemainder
();
date
=
quantity
.
getExpireDate
();
}
}
if
(
quantity
==
null
||
remainder
==
null
||
remainder
<=
0
)
{
// 判断充了钱没
return
ResultUtil
.
error
(
"请充值后使用短信功能!"
);
}
if
(
date
!=
null
&&
date
.
getTime
()
<=
new
Date
().
getTime
())
{
System
.
err
.
println
(
"企业 "
+
orgCode
+
" :短信套餐已过期"
);
return
ResultUtil
.
error
(
"短信套餐已到期!"
);
}
zzda
.
setTxkgType
(
1
);
zzda
.
setTxkgType
(
1
);
zzda
.
setLrrid
(
userBean
.
getEmpNum
());
zzda
.
setLrrid
(
userBean
.
getEmpNum
());
zzda
.
setLrsjTime
(
new
Date
());
zzda
.
setLrsjTime
(
new
Date
());
zzda
.
setOrgCode
(
userBean
.
getOrgCode
()
);
zzda
.
setOrgCode
(
orgCode
);
zzda
.
insert
();
zzda
.
insert
();
/**
/**
...
@@ -92,7 +103,7 @@ public class HtzzController {
...
@@ -92,7 +103,7 @@ public class HtzzController {
List
<
HtzzAssoHtgx
>
htgxs
=
new
ArrayList
<
HtzzAssoHtgx
>(
ids
.
length
);
List
<
HtzzAssoHtgx
>
htgxs
=
new
ArrayList
<
HtzzAssoHtgx
>(
ids
.
length
);
for
(
Integer
id
:
ids
)
{
for
(
Integer
id
:
ids
)
{
QueryWrapper
<
YgglMainEmp
>
queryWrapper
=
new
QueryWrapper
<>();
QueryWrapper
<
YgglMainEmp
>
queryWrapper
=
new
QueryWrapper
<>();
queryWrapper
.
select
(
"name"
,
"phone"
,
"emp_num"
).
eq
(
"emp_num"
,
id
).
eq
(
"org_code"
,
userBean
.
getOrgCode
()
);
queryWrapper
.
select
(
"name"
,
"phone"
,
"emp_num"
).
eq
(
"emp_num"
,
id
).
eq
(
"org_code"
,
orgCode
);
emp
=
YgglMainEmp
.
builder
().
build
().
selectOne
(
queryWrapper
);
emp
=
YgglMainEmp
.
builder
().
build
().
selectOne
(
queryWrapper
);
HtzzAssoHtgx
htgx
=
HtzzAssoHtgx
.
builder
().
build
();
HtzzAssoHtgx
htgx
=
HtzzAssoHtgx
.
builder
().
build
();
...
@@ -100,7 +111,7 @@ public class HtzzController {
...
@@ -100,7 +111,7 @@ public class HtzzController {
htgx
.
setTzrid
(
emp
.
getEmpNum
());
htgx
.
setTzrid
(
emp
.
getEmpNum
());
htgx
.
setName
(
emp
.
getName
());
htgx
.
setName
(
emp
.
getName
());
htgx
.
setPhone
(
emp
.
getPhone
());
htgx
.
setPhone
(
emp
.
getPhone
());
htgx
.
setOrgCode
(
userBean
.
getOrgCode
()
);
htgx
.
setOrgCode
(
orgCode
);
htgx
.
insert
();
htgx
.
insert
();
htgxs
.
add
(
htgx
);
htgxs
.
add
(
htgx
);
}
}
...
...
src/main/java/cn/timer/api/controller/qyzx/QyzxBusinessController.java
View file @
b88aeda6
/**
/**
* <p>Title: QyzxBusinessController.java</p>
* <p>Title: QyzxBusinessController.java</p>
* <p>Description: </p>
* <p>Description: </p>
* @author dsc
* @author dsc
* @date 2020年4月22日
* @date 2020年4月22日
* @version 1.0
* @version 1.0
*/
*/
package
cn
.
timer
.
api
.
controller
.
qyzx
;
package
cn
.
timer
.
api
.
controller
.
qyzx
;
import
java.util.ArrayList
;
import
java.util.Date
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Map
;
import
javax.transaction.Transactional
;
import
javax.transaction.Transactional
;
...
@@ -25,6 +29,7 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers;
...
@@ -25,6 +29,7 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import
com.github.pagehelper.Page
;
import
com.github.pagehelper.Page
;
import
com.github.pagehelper.PageHelper
;
import
com.github.pagehelper.PageHelper
;
import
cn.hutool.core.util.StrUtil
;
import
cn.hutool.json.JSONObject
;
import
cn.hutool.json.JSONObject
;
import
cn.hutool.json.JSONUtil
;
import
cn.hutool.json.JSONUtil
;
import
cn.timer.api.bean.qyzx.businessService.QyzxBuyRecord
;
import
cn.timer.api.bean.qyzx.businessService.QyzxBuyRecord
;
...
@@ -59,7 +64,7 @@ import io.swagger.annotations.ApiOperation;
...
@@ -59,7 +64,7 @@ import io.swagger.annotations.ApiOperation;
public
class
QyzxBusinessController
{
public
class
QyzxBusinessController
{
@GetMapping
(
value
=
"/getAllQuantity"
)
@GetMapping
(
value
=
"/getAllQuantity"
)
@ApiOperation
(
value
=
"获取套餐余量信息"
,
httpMethod
=
"GET"
,
notes
=
"接口发布说明"
)
@ApiOperation
(
value
=
"获取
全部
套餐余量信息"
,
httpMethod
=
"GET"
,
notes
=
"接口发布说明"
)
public
Result
<
List
<
QyzxRemainingQuantity
>>
s
(
@CurrentUser
UserBean
userBean
)
{
public
Result
<
List
<
QyzxRemainingQuantity
>>
s
(
@CurrentUser
UserBean
userBean
)
{
List
<
QyzxRemainingQuantity
>
list
=
QyzxRemainingQuantity
.
builder
().
build
()
List
<
QyzxRemainingQuantity
>
list
=
QyzxRemainingQuantity
.
builder
().
build
()
.
selectList
(
new
LambdaQueryWrapper
<
QyzxRemainingQuantity
>().
eq
(
QyzxRemainingQuantity:
:
getIsDelete
,
0
)
.
selectList
(
new
LambdaQueryWrapper
<
QyzxRemainingQuantity
>().
eq
(
QyzxRemainingQuantity:
:
getIsDelete
,
0
)
...
@@ -68,14 +73,41 @@ public class QyzxBusinessController {
...
@@ -68,14 +73,41 @@ public class QyzxBusinessController {
}
}
@GetMapping
(
value
=
"/getQuantity"
)
@GetMapping
(
value
=
"/getQuantity"
)
@ApiOperation
(
value
=
"获取套餐余量信息(
名称,数量,单位
)"
,
httpMethod
=
"GET"
,
notes
=
"接口发布说明"
)
@ApiOperation
(
value
=
"获取套餐余量信息(
数量
)"
,
httpMethod
=
"GET"
,
notes
=
"接口发布说明"
)
public
Result
<
List
<
QyzxRemainingQuantity
>>
getQuantity
(
@CurrentUser
UserBean
userBean
)
{
public
Result
<
List
<
Map
<
String
,
Object
>
>>
getQuantity
(
@CurrentUser
UserBean
userBean
)
{
List
<
QyzxRemainingQuantity
>
qyzxRemainingQuantitys
=
QyzxRemainingQuantity
.
builder
().
build
()
List
<
QyzxRemainingQuantity
>
qyzxRemainingQuantitys
1
=
QyzxRemainingQuantity
.
builder
().
build
()
.
selectList
(
new
LambdaQueryWrapper
<
QyzxRemainingQuantity
>().
eq
(
QyzxRemainingQuantity:
:
getIsDelete
,
0
)
.
selectList
(
new
LambdaQueryWrapper
<
QyzxRemainingQuantity
>().
eq
(
QyzxRemainingQuantity:
:
getIsDelete
,
0
)
.
eq
(
QyzxRemainingQuantity:
:
getOrgCode
,
userBean
.
getOrgCode
())
.
eq
(
QyzxRemainingQuantity:
:
getOrgCode
,
userBean
.
getOrgCode
())
.
select
(
QyzxRemainingQuantity:
:
getOrderNo
,
QyzxRemainingQuantity:
:
getContent
,
.
eq
(
QyzxRemainingQuantity:
:
getPmid
,
1
).
select
(
QyzxRemainingQuantity:
:
getRemainder
));
QyzxRemainingQuantity:
:
getRemainder
,
QyzxRemainingQuantity:
:
getUnit
));
Integer
remainder1
=
null
;
return
ResultUtil
.
data
(
qyzxRemainingQuantitys
,
"获取成功"
);
for
(
QyzxRemainingQuantity
qyzxRemainingQuantity
:
qyzxRemainingQuantitys1
)
{
remainder1
=
qyzxRemainingQuantity
.
getRemainder
();
if
(
qyzxRemainingQuantitys1
.
size
()
>
1
)
{
remainder1
+=
remainder1
;
}
}
List
<
QyzxRemainingQuantity
>
qyzxRemainingQuantitys2
=
QyzxRemainingQuantity
.
builder
().
build
()
.
selectList
(
new
LambdaQueryWrapper
<
QyzxRemainingQuantity
>().
eq
(
QyzxRemainingQuantity:
:
getIsDelete
,
0
)
.
eq
(
QyzxRemainingQuantity:
:
getOrgCode
,
userBean
.
getOrgCode
())
.
eq
(
QyzxRemainingQuantity:
:
getPmid
,
2
).
select
(
QyzxRemainingQuantity:
:
getRemainder
));
Integer
remainder2
=
null
;
for
(
QyzxRemainingQuantity
qyzxRemainingQuantity
:
qyzxRemainingQuantitys2
)
{
remainder2
=
qyzxRemainingQuantity
.
getRemainder
();
if
(
qyzxRemainingQuantitys2
.
size
()
>
1
)
{
remainder2
+=
remainder2
;
}
}
Map
<
String
,
Object
>
map1
=
new
HashMap
<
String
,
Object
>();
map1
.
put
(
"message"
,
remainder1
);
Map
<
String
,
Object
>
map2
=
new
HashMap
<
String
,
Object
>();
map2
.
put
(
"contract"
,
remainder2
);
List
<
Map
<
String
,
Object
>>
list
=
new
ArrayList
<
Map
<
String
,
Object
>>();
list
.
add
(
map1
);
list
.
add
(
map2
);
return
ResultUtil
.
data
(
list
,
"获取成功"
);
}
}
@GetMapping
(
value
=
"/getPayList/Contract"
)
@GetMapping
(
value
=
"/getPayList/Contract"
)
...
@@ -83,8 +115,8 @@ public class QyzxBusinessController {
...
@@ -83,8 +115,8 @@ public class QyzxBusinessController {
public
Result
<
List
<
QyzxPayContent
>>
getPayListwithContract
(
@CurrentUser
UserBean
userBean
)
{
public
Result
<
List
<
QyzxPayContent
>>
getPayListwithContract
(
@CurrentUser
UserBean
userBean
)
{
List
<
QyzxPayContent
>
list
=
QyzxPayContent
.
builder
().
build
()
List
<
QyzxPayContent
>
list
=
QyzxPayContent
.
builder
().
build
()
.
selectList
(
new
LambdaQueryWrapper
<
QyzxPayContent
>().
eq
(
QyzxPayContent:
:
getPmid
,
1
).
select
(
.
selectList
(
new
LambdaQueryWrapper
<
QyzxPayContent
>().
eq
(
QyzxPayContent:
:
getPmid
,
1
).
select
(
QyzxPayContent:
:
get
NowPrice
,
QyzxPayContent:
:
getOriginalPrice
,
QyzxPayContent:
:
getSpecification
,
QyzxPayContent:
:
get
Content
,
QyzxPayContent:
:
getNowPrice
,
QyzxPayContent:
:
getOriginalPrice
,
QyzxPayContent:
:
getExpiration
));
QyzxPayContent:
:
get
Specification
,
QyzxPayContent:
:
get
Expiration
));
return
ResultUtil
.
data
(
list
,
"获取成功"
);
return
ResultUtil
.
data
(
list
,
"获取成功"
);
}
}
...
@@ -93,8 +125,18 @@ public class QyzxBusinessController {
...
@@ -93,8 +125,18 @@ public class QyzxBusinessController {
public
Result
<
List
<
QyzxPayContent
>>
getPayListWithMsg
(
@CurrentUser
UserBean
userBean
)
{
public
Result
<
List
<
QyzxPayContent
>>
getPayListWithMsg
(
@CurrentUser
UserBean
userBean
)
{
List
<
QyzxPayContent
>
list
=
QyzxPayContent
.
builder
().
build
()
List
<
QyzxPayContent
>
list
=
QyzxPayContent
.
builder
().
build
()
.
selectList
(
new
LambdaQueryWrapper
<
QyzxPayContent
>().
eq
(
QyzxPayContent:
:
getPmid
,
2
).
select
(
.
selectList
(
new
LambdaQueryWrapper
<
QyzxPayContent
>().
eq
(
QyzxPayContent:
:
getPmid
,
2
).
select
(
QyzxPayContent:
:
getNowPrice
,
QyzxPayContent:
:
getOriginalPrice
,
QyzxPayContent:
:
getSpecification
,
QyzxPayContent:
:
getContent
,
QyzxPayContent:
:
getNowPrice
,
QyzxPayContent:
:
getOriginalPrice
,
QyzxPayContent:
:
getExpiration
));
QyzxPayContent:
:
getSpecification
,
QyzxPayContent:
:
getExpiration
));
return
ResultUtil
.
data
(
list
,
"获取成功"
);
}
@GetMapping
(
value
=
"/getPayList/System"
)
@ApiOperation
(
value
=
"获取系统续费商品列表"
,
httpMethod
=
"GET"
,
notes
=
"接口发布说明"
)
public
Result
<
List
<
QyzxPayContent
>>
getPayListWithSystem
(
@CurrentUser
UserBean
userBean
)
{
List
<
QyzxPayContent
>
list
=
QyzxPayContent
.
builder
().
build
()
.
selectList
(
new
LambdaQueryWrapper
<
QyzxPayContent
>().
eq
(
QyzxPayContent:
:
getPmid
,
3
).
select
(
QyzxPayContent:
:
getContent
,
QyzxPayContent:
:
getNowPrice
,
QyzxPayContent:
:
getOriginalPrice
,
QyzxPayContent:
:
getSpecification
,
QyzxPayContent:
:
getExpiration
));
return
ResultUtil
.
data
(
list
,
"获取成功"
);
return
ResultUtil
.
data
(
list
,
"获取成功"
);
}
}
...
@@ -110,12 +152,16 @@ public class QyzxBusinessController {
...
@@ -110,12 +152,16 @@ public class QyzxBusinessController {
qyzxOrderRecord
.
setOrderNo
(
orderNo
);
// 订单号
qyzxOrderRecord
.
setOrderNo
(
orderNo
);
// 订单号
qyzxOrderRecord
.
setOrderStatus
(
0
);
// 订单状态-无
qyzxOrderRecord
.
setOrderStatus
(
0
);
// 订单状态-无
Integer
pmid
=
qyzxOrderRecord
.
getPmid
();
// 商品id
Integer
pcid
=
qyzxOrderRecord
.
getPcid
();
// 商品id
Integer
pcid
=
qyzxOrderRecord
.
getPcid
();
// 商品id
QyzxPayContent
qyzxPayContent
=
QyzxPayContent
.
builder
().
build
();
QyzxPayContent
qyzxPayContent
=
QyzxPayContent
.
builder
().
build
();
QyzxPayContent
qyzxPayContent2
=
qyzxPayContent
.
selectOne
(
QyzxPayContent
qyzxPayContent2
=
qyzxPayContent
.
selectOne
(
Wrappers
.
lambdaQuery
(
qyzxPayContent
)
Wrappers
.
lambdaQuery
(
qyzxPayContent
).
eq
(
QyzxPayContent:
:
getId
,
pc
id
).
select
(
QyzxPayContent:
:
getContent
,
.
eq
(
QyzxPayContent:
:
getId
,
pcid
).
eq
(
QyzxPayContent:
:
getPmid
,
pm
id
).
select
(
QyzxPayContent:
:
getContent
,
QyzxPayContent:
:
getSpecification
,
QyzxPayContent:
:
getUnit
,
QyzxPayContent:
:
getExpiration
,
QyzxPayContent:
:
getSpecification
,
QyzxPayContent:
:
getUnit
,
QyzxPayContent:
:
getExpiration
,
QyzxPayContent:
:
getOriginalPrice
,
QyzxPayContent:
:
getNowPrice
));
QyzxPayContent:
:
getOriginalPrice
,
QyzxPayContent:
:
getNowPrice
));
if
(
qyzxPayContent2
==
null
)
{
return
ResultUtil
.
error
(
"商品不存在"
);
}
JSONObject
json
=
JSONUtil
.
parseObj
(
qyzxPayContent2
);
JSONObject
json
=
JSONUtil
.
parseObj
(
qyzxPayContent2
);
qyzxOrderRecord
.
setOrderDetail
(
json
.
toString
());
// 订单商品详情-json字符串
qyzxOrderRecord
.
setOrderDetail
(
json
.
toString
());
// 订单商品详情-json字符串
qyzxOrderRecord
.
insert
();
qyzxOrderRecord
.
insert
();
...
@@ -128,24 +174,20 @@ public class QyzxBusinessController {
...
@@ -128,24 +174,20 @@ public class QyzxBusinessController {
}
}
@GetMapping
(
value
=
"/queryBuyRecord"
)
@GetMapping
(
value
=
"/queryBuyRecord"
)
// TODO
@ApiOperation
(
value
=
"查询购买记录"
,
httpMethod
=
"GET"
,
notes
=
"接口发布说明"
)
@ApiOperation
(
value
=
"查询购买记录"
,
httpMethod
=
"GET"
,
notes
=
"接口发布说明"
)
public
Result
<
List
<
QyzxBuyRecord
>>
queryBuyRecord
(
@CurrentUser
UserBean
userBean
,
public
Result
<
List
<
QyzxBuyRecord
>>
queryBuyRecord
(
@CurrentUser
UserBean
userBean
,
@RequestParam
(
defaultValue
=
"1"
,
required
=
false
)
Integer
pageNum
,
@RequestParam
(
defaultValue
=
"1"
,
required
=
false
)
Integer
pageNum
,
@RequestParam
(
defaultValue
=
"10"
,
required
=
false
)
Integer
pageSize
,
@RequestParam
(
defaultValue
=
"10"
,
required
=
false
)
Integer
pageSize
,
@RequestParam
(
required
=
false
)
String
query
,
@RequestParam
(
required
=
false
)
String
stime
,
@RequestParam
(
required
=
false
)
String
query
,
@RequestParam
(
required
=
false
)
Date
stime
,
@RequestParam
(
required
=
false
)
String
etime
)
{
@RequestParam
(
required
=
false
)
Date
etime
)
{
QueryWrapper
<
QyzxBuyRecord
>
queryWrapper
=
new
QueryWrapper
<>();
QueryWrapper
<
QyzxBuyRecord
>
queryWrapper
=
new
QueryWrapper
<>();
// queryWrapper.eq("org_code", userBean.getOrgCode())
queryWrapper
.
eq
(
"org_code"
,
userBean
.
getOrgCode
()).
and
(!
StrUtil
.
hasBlank
(
query
),
// .between(!StrUtil.hasBlank(stime) && !StrUtil.hasBlank(etime), "create_time",
wq
->
wq
.
like
(
"order_no"
,
query
).
or
().
like
(
"content"
,
query
));
// !StrUtil.hasBlank(stime) ? stime : "1000-01-01 00:00:00",
// !StrUtil.hasBlank(etime) ? etime : "9999-01-01 00:00:00")
// .and(!StrUtil.hasBlank(query), wq -> wq.like("order_no", query).or().like("content", query));
Page
<
Object
>
page
=
PageHelper
.
startPage
(
pageNum
,
pageSize
);
Page
<
Object
>
page
=
PageHelper
.
startPage
(
pageNum
,
pageSize
);
List
<
QyzxBuyRecord
>
list
=
QyzxBuyRecord
.
builder
().
build
().
selectList
(
queryWrapper
);
List
<
QyzxBuyRecord
>
list
=
QyzxBuyRecord
.
builder
().
build
().
selectList
(
queryWrapper
);
System
.
out
.
println
(
page
.
getTotal
());
return
ResultUtil
.
pageData
(
list
,
page
.
getTotal
(),
"查询成功"
);
return
ResultUtil
.
data
(
list
,
"查询成功"
);
}
}
@PostMapping
(
value
=
"/invoicing"
)
@PostMapping
(
value
=
"/invoicing"
)
...
@@ -178,7 +220,7 @@ public class QyzxBusinessController {
...
@@ -178,7 +220,7 @@ public class QyzxBusinessController {
@ApiOperation
(
value
=
"查询短信套餐余量"
,
httpMethod
=
"GET"
,
notes
=
"接口发布说明"
)
@ApiOperation
(
value
=
"查询短信套餐余量"
,
httpMethod
=
"GET"
,
notes
=
"接口发布说明"
)
public
Result
<
List
<
QyzxRemainingQuantity
>>
queryMsgRecord
(
@CurrentUser
UserBean
userBean
)
{
public
Result
<
List
<
QyzxRemainingQuantity
>>
queryMsgRecord
(
@CurrentUser
UserBean
userBean
)
{
List
<
QyzxRemainingQuantity
>
list
=
QyzxRemainingQuantity
.
builder
().
build
()
List
<
QyzxRemainingQuantity
>
list
=
QyzxRemainingQuantity
.
builder
().
build
()
.
selectList
(
new
LambdaQueryWrapper
<
QyzxRemainingQuantity
>()
.
selectList
(
new
LambdaQueryWrapper
<
QyzxRemainingQuantity
>()
.
ne
(
QyzxRemainingQuantity:
:
getIsDelete
,
1
)
.
eq
(
QyzxRemainingQuantity:
:
getOrgCode
,
userBean
.
getOrgCode
())
.
eq
(
QyzxRemainingQuantity:
:
getOrgCode
,
userBean
.
getOrgCode
())
.
eq
(
QyzxRemainingQuantity:
:
getPmid
,
1
));
.
eq
(
QyzxRemainingQuantity:
:
getPmid
,
1
));
return
ResultUtil
.
data
(
list
,
"查询成功"
);
return
ResultUtil
.
data
(
list
,
"查询成功"
);
...
@@ -188,7 +230,7 @@ public class QyzxBusinessController {
...
@@ -188,7 +230,7 @@ public class QyzxBusinessController {
@ApiOperation
(
value
=
"查询电子合同套餐余量"
,
httpMethod
=
"GET"
,
notes
=
"接口发布说明"
)
@ApiOperation
(
value
=
"查询电子合同套餐余量"
,
httpMethod
=
"GET"
,
notes
=
"接口发布说明"
)
public
Result
<
List
<
QyzxRemainingQuantity
>>
queryContractRecord
(
@CurrentUser
UserBean
userBean
)
{
public
Result
<
List
<
QyzxRemainingQuantity
>>
queryContractRecord
(
@CurrentUser
UserBean
userBean
)
{
List
<
QyzxRemainingQuantity
>
list
=
QyzxRemainingQuantity
.
builder
().
build
()
List
<
QyzxRemainingQuantity
>
list
=
QyzxRemainingQuantity
.
builder
().
build
()
.
selectList
(
new
LambdaQueryWrapper
<
QyzxRemainingQuantity
>()
.
selectList
(
new
LambdaQueryWrapper
<
QyzxRemainingQuantity
>()
.
ne
(
QyzxRemainingQuantity:
:
getIsDelete
,
1
)
.
eq
(
QyzxRemainingQuantity:
:
getOrgCode
,
userBean
.
getOrgCode
())
.
eq
(
QyzxRemainingQuantity:
:
getOrgCode
,
userBean
.
getOrgCode
())
.
eq
(
QyzxRemainingQuantity:
:
getPmid
,
2
));
.
eq
(
QyzxRemainingQuantity:
:
getPmid
,
2
));
return
ResultUtil
.
data
(
list
,
"查询成功"
);
return
ResultUtil
.
data
(
list
,
"查询成功"
);
...
@@ -201,8 +243,8 @@ public class QyzxBusinessController {
...
@@ -201,8 +243,8 @@ public class QyzxBusinessController {
.
selectList
(
new
LambdaQueryWrapper
<
QyzxUseRecord
>().
eq
(
QyzxUseRecord:
:
getOrderNo
,
orderNo
)),
"查询成功"
);
.
selectList
(
new
LambdaQueryWrapper
<
QyzxUseRecord
>().
eq
(
QyzxUseRecord:
:
getOrderNo
,
orderNo
)),
"查询成功"
);
}
}
// TODO 不同业务使用
不同数据表
// TODO 不同业务使用 不同数据表
@GetMapping
(
value
=
"/queryContractUseRecord"
)
@GetMapping
(
value
=
"/queryContractUseRecord"
)
@ApiOperation
(
value
=
"查询电子合同套餐使用记录"
,
httpMethod
=
"GET"
,
notes
=
"接口发布说明"
)
@ApiOperation
(
value
=
"查询电子合同套餐使用记录"
,
httpMethod
=
"GET"
,
notes
=
"接口发布说明"
)
public
Result
<
Object
>
queryContractUseRecord
(
@CurrentUser
UserBean
userBean
)
{
public
Result
<
Object
>
queryContractUseRecord
(
@CurrentUser
UserBean
userBean
)
{
...
...
src/main/java/cn/timer/api/utils/aliyun/AliyunSMS.java
View file @
b88aeda6
package
cn
.
timer
.
api
.
utils
.
aliyun
;
package
cn
.
timer
.
api
.
utils
.
aliyun
;
import
java.util.Date
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.web.bind.annotation.RequestParam
;
import
org.springframework.web.bind.annotation.RequestParam
;
import
com.alibaba.fastjson.JSONObject
;
import
com.alibaba.fastjson.JSONObject
;
...
@@ -12,9 +15,12 @@ import com.aliyuncs.exceptions.ServerException;
...
@@ -12,9 +15,12 @@ import com.aliyuncs.exceptions.ServerException;
import
com.aliyuncs.http.MethodType
;
import
com.aliyuncs.http.MethodType
;
import
com.aliyuncs.profile.DefaultProfile
;
import
com.aliyuncs.profile.DefaultProfile
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper
;
import
cn.timer.api.bean.qyzx.QyzxEmpLogin
;
import
cn.timer.api.bean.qyzx.QyzxEmpLogin
;
import
cn.timer.api.bean.qyzx.businessService.QyzxRemainingQuantity
;
import
cn.timer.api.bean.qyzx.businessService.QyzxRemainingQuantity
;
import
cn.timer.api.bean.qyzx.businessService.QyzxScene
;
import
cn.timer.api.bean.qyzx.businessService.QyzxUseRecord
;
import
cn.timer.api.config.enums.PinType
;
import
cn.timer.api.config.enums.PinType
;
import
cn.timer.api.dto.qyzx.EntRegisterDto
;
import
cn.timer.api.dto.qyzx.EntRegisterDto
;
...
@@ -24,6 +30,7 @@ import cn.timer.api.dto.qyzx.EntRegisterDto;
...
@@ -24,6 +30,7 @@ import cn.timer.api.dto.qyzx.EntRegisterDto;
* @author dsc
* @author dsc
*
*
*/
*/
@Transactional
public
class
AliyunSMS
{
public
class
AliyunSMS
{
final
static
String
CODE_NAME
=
"TemplateCode"
;
// 短信模板代码参数名
final
static
String
CODE_NAME
=
"TemplateCode"
;
// 短信模板代码参数名
...
@@ -48,9 +55,29 @@ public class AliyunSMS {
...
@@ -48,9 +55,29 @@ public class AliyunSMS {
@SuppressWarnings
(
"deprecation"
)
@SuppressWarnings
(
"deprecation"
)
public
JSONObject
authCode
(
EntRegisterDto
entRegisterDto
,
public
JSONObject
authCode
(
EntRegisterDto
entRegisterDto
,
@RequestParam
(
required
=
false
,
defaultValue
=
"1"
)
Integer
templateCode
,
Integer
code
)
{
@RequestParam
(
required
=
false
,
defaultValue
=
"1"
)
Integer
templateCode
,
Integer
code
)
{
String
phone
=
entRegisterDto
.
getPhone
();
String
phone
=
entRegisterDto
.
getPhone
();
Integer
orgCode
=
QyzxEmpLogin
.
builder
().
build
()
.
selectOne
(
new
LambdaQueryWrapper
<
QyzxEmpLogin
>().
eq
(
QyzxEmpLogin:
:
getPhone
,
phone
)).
getOrgId
();
QyzxRemainingQuantity
quantity
=
QyzxRemainingQuantity
.
builder
().
build
().
selectOne
(
new
LambdaQueryWrapper
<
QyzxRemainingQuantity
>().
eq
(
QyzxRemainingQuantity:
:
getOrgCode
,
orgCode
)
.
eq
(
QyzxRemainingQuantity:
:
getPmid
,
1
).
gt
(
QyzxRemainingQuantity:
:
getRemainder
,
0
));
Integer
remainder
=
quantity
.
getRemainder
();
Date
date
=
quantity
.
getExpireDate
();
String
orderNo
=
quantity
.
getOrderNo
();
if
(
quantity
==
null
||
remainder
==
null
||
remainder
<=
0
)
{
System
.
err
.
println
(
"企业 "
+
orgCode
+
" :套餐余额不足,请充钱"
);
return
null
;
}
if
(
date
!=
null
&&
date
.
getTime
()
<=
new
Date
().
getTime
())
{
System
.
err
.
println
(
"企业 "
+
orgCode
+
" :短信套餐已过期"
);
return
null
;
}
QyzxUseRecord
qyzxUseRecord
=
new
QyzxUseRecord
();
DefaultProfile
profile
=
DefaultProfile
.
getProfile
(
REGION_ID
,
ACCESSKEY_ID
,
SECRET
);
DefaultProfile
profile
=
DefaultProfile
.
getProfile
(
REGION_ID
,
ACCESSKEY_ID
,
SECRET
);
IAcsClient
client
=
new
DefaultAcsClient
(
profile
);
IAcsClient
client
=
new
DefaultAcsClient
(
profile
);
...
@@ -66,37 +93,65 @@ public class AliyunSMS {
...
@@ -66,37 +93,65 @@ public class AliyunSMS {
switch
(
templateCode
)
{
switch
(
templateCode
)
{
case
1
:
case
1
:
request
.
putQueryParameter
(
CODE_NAME
,
PinType
.
AUTHENTICATION
.
getCode
());
request
.
putQueryParameter
(
CODE_NAME
,
PinType
.
AUTHENTICATION
.
getCode
());
qyzxUseRecord
.
setScene
(
QyzxScene
.
MSG_AUTHENTICATION
.
getMessage
());
break
;
break
;
case
2
:
case
2
:
request
.
putQueryParameter
(
CODE_NAME
,
PinType
.
LOGIN_CONFIRMATION
.
getCode
());
request
.
putQueryParameter
(
CODE_NAME
,
PinType
.
LOGIN_CONFIRMATION
.
getCode
());
qyzxUseRecord
.
setScene
(
QyzxScene
.
MSG_LOGIN_CONFIRM
.
getMessage
());
break
;
break
;
case
3
:
case
3
:
request
.
putQueryParameter
(
CODE_NAME
,
PinType
.
LOGIN_ABNORMAL
.
getCode
());
request
.
putQueryParameter
(
CODE_NAME
,
PinType
.
LOGIN_ABNORMAL
.
getCode
());
qyzxUseRecord
.
setScene
(
QyzxScene
.
MSG_LOGIN_CONFIRM
.
getMessage
());
break
;
break
;
case
4
:
case
4
:
request
.
putQueryParameter
(
CODE_NAME
,
PinType
.
REGISTER
.
getCode
());
request
.
putQueryParameter
(
CODE_NAME
,
PinType
.
REGISTER
.
getCode
());
qyzxUseRecord
.
setScene
(
QyzxScene
.
MSG_REGISTER
.
getMessage
());
break
;
break
;
case
5
:
case
5
:
request
.
putQueryParameter
(
CODE_NAME
,
PinType
.
CHANGE_PASSWORD
.
getCode
());
request
.
putQueryParameter
(
CODE_NAME
,
PinType
.
CHANGE_PASSWORD
.
getCode
());
qyzxUseRecord
.
setScene
(
QyzxScene
.
MSG_CHANGE_PWD
.
getMessage
());
break
;
break
;
case
6
:
case
6
:
request
.
putQueryParameter
(
CODE_NAME
,
PinType
.
CHANGE_INFORMATION
.
getCode
());
request
.
putQueryParameter
(
CODE_NAME
,
PinType
.
CHANGE_INFORMATION
.
getCode
());
qyzxUseRecord
.
setScene
(
QyzxScene
.
MSG_CHANGE_IMP
.
getMessage
());
break
;
break
;
default
:
default
:
request
.
putQueryParameter
(
CODE_NAME
,
PinType
.
AUTHENTICATION
.
getCode
());
request
.
putQueryParameter
(
CODE_NAME
,
PinType
.
AUTHENTICATION
.
getCode
());
qyzxUseRecord
.
setScene
(
QyzxScene
.
MSG_AUTHENTICATION
.
getMessage
());
}
}
// 【8小时人事管家】验证码934169,您正在尝试修改登录密码,请妥善保管账户信息。
// 【8小时人事管家】验证码934169,您正在尝试修改登录密码,请妥善保管账户信息。
request
.
putQueryParameter
(
TEMPLATE_PARAM
,
"{\"code\":\""
+
code
+
"\"}"
);
request
.
putQueryParameter
(
TEMPLATE_PARAM
,
"{\"code\":\""
+
code
+
"\"}"
);
CommonResponse
response
=
null
;
CommonResponse
response
=
null
;
String
a
=
null
;
try
{
try
{
response
=
client
.
getCommonResponse
(
request
);
response
=
client
.
getCommonResponse
(
request
);
a
=
response
.
getData
();
}
catch
(
ServerException
e
)
{
}
catch
(
ServerException
e
)
{
e
.
printStackTrace
();
e
.
printStackTrace
();
}
catch
(
ClientException
e
)
{
}
catch
(
ClientException
e
)
{
e
.
printStackTrace
();
e
.
printStackTrace
();
}
}
return
JSONObject
.
parseObject
(
response
.
getData
());
if
(
a
!=
null
&&
a
.
contains
(
"OK"
))
{
qyzxUseRecord
.
setOriginalTotalNum
(
remainder
);
// 原数量
qyzxUseRecord
.
setNowTotalNum
(--
remainder
);
qyzxUseRecord
.
setUserPhone
(
phone
);
qyzxUseRecord
.
setOrderNo
(
orderNo
);
qyzxUseRecord
.
setUseNum
(
1
);
qyzxUseRecord
.
setPmid
(
quantity
.
getPmid
());
qyzxUseRecord
.
setCreateUser
(
"System"
);
qyzxUseRecord
.
insert
();
quantity
.
setRemainder
(
remainder
);
quantity
.
update
(
new
LambdaUpdateWrapper
<
QyzxRemainingQuantity
>()
.
eq
(
QyzxRemainingQuantity:
:
getOrgCode
,
orgCode
).
eq
(
QyzxRemainingQuantity:
:
getOrderNo
,
orderNo
));
return
JSONObject
.
parseObject
(
response
.
getData
());
// 代表请求成功
}
return
null
;
}
}
/**
/**
...
@@ -141,23 +196,31 @@ public class AliyunSMS {
...
@@ -141,23 +196,31 @@ public class AliyunSMS {
* @param htname 要提醒的东西的名字
* @param htname 要提醒的东西的名字
* @param time 提醒的时间
* @param time 提醒的时间
* @param phone
* @param phone
* @return
* @return
*/
*/
@SuppressWarnings
(
"deprecation"
)
@SuppressWarnings
(
"deprecation"
)
public
static
String
remind
(
String
name
,
String
htname
,
String
time
,
String
phone
)
{
public
static
String
remind
(
String
name
,
String
htname
,
String
time
,
String
phone
)
{
Integer
orgCode
=
QyzxEmpLogin
.
builder
().
build
()
Integer
orgCode
=
QyzxEmpLogin
.
builder
().
build
()
.
selectOne
(
new
LambdaQueryWrapper
<
QyzxEmpLogin
>().
eq
(
QyzxEmpLogin:
:
getPhone
,
phone
)).
getOrgId
();
.
selectOne
(
new
LambdaQueryWrapper
<
QyzxEmpLogin
>().
eq
(
QyzxEmpLogin:
:
getPhone
,
phone
)).
getOrgId
();
System
.
err
.
println
(
"orgCode"
+
orgCode
);
QyzxRemainingQuantity
quantity
=
QyzxRemainingQuantity
.
builder
().
build
()
QyzxRemainingQuantity
quantity
=
QyzxRemainingQuantity
.
builder
().
build
()
.
selectOne
(
new
LambdaQueryWrapper
<
QyzxRemainingQuantity
>()
.
selectOne
(
new
LambdaQueryWrapper
<
QyzxRemainingQuantity
>()
.
eq
(
QyzxRemainingQuantity:
:
getOrgCode
,
orgCode
)
.
eq
(
QyzxRemainingQuantity:
:
getOrgCode
,
orgCode
)
.
eq
(
QyzxRemainingQuantity:
:
getPmid
,
1
)
.
orderByAsc
(
QyzxRemainingQuantity:
:
getExpireDate
));
.
orderByAsc
(
QyzxRemainingQuantity:
:
getExpireDate
));
if
(
quantity
==
null
||
quantity
.
getRemainder
()
==
null
||
quantity
.
getRemainder
()
<=
0
)
{
System
.
err
.
println
(
"请充钱"
);
Integer
remainder
=
quantity
.
getRemainder
();
return
"请先充值购买短信套餐!"
;
Date
date
=
quantity
.
getExpireDate
();
String
orderNo
=
quantity
.
getOrderNo
();
if
(
quantity
==
null
||
remainder
==
null
||
remainder
<=
0
)
{
System
.
err
.
println
(
"企业 "
+
orgCode
+
" :套餐余额不足,请充钱"
);
return
"请先充值购买短信套餐!"
;
}
}
if
(
date
!=
null
&&
date
.
getTime
()
<=
new
Date
().
getTime
())
{
System
.
err
.
println
(
"企业 "
+
orgCode
+
" :短信套餐已过期"
);
return
"套餐已过期"
;
}
DefaultProfile
profile
=
DefaultProfile
.
getProfile
(
REGION_ID
,
ACCESSKEY_ID
,
SECRET
);
DefaultProfile
profile
=
DefaultProfile
.
getProfile
(
REGION_ID
,
ACCESSKEY_ID
,
SECRET
);
IAcsClient
client
=
new
DefaultAcsClient
(
profile
);
IAcsClient
client
=
new
DefaultAcsClient
(
profile
);
...
@@ -173,15 +236,37 @@ public class AliyunSMS {
...
@@ -173,15 +236,37 @@ public class AliyunSMS {
request
.
putQueryParameter
(
TEMPLATE_PARAM
,
request
.
putQueryParameter
(
TEMPLATE_PARAM
,
"{\"name\":\""
+
name
+
"\", \"htname\":\""
+
htname
+
"\",\"time\":\""
+
time
+
"\"}"
);
"{\"name\":\""
+
name
+
"\", \"htname\":\""
+
htname
+
"\",\"time\":\""
+
time
+
"\"}"
);
String
a
=
null
;
try
{
try
{
CommonResponse
response
=
client
.
getCommonResponse
(
request
);
CommonResponse
response
=
client
.
getCommonResponse
(
request
);
System
.
out
.
println
(
response
.
getData
());
System
.
out
.
println
(
response
.
getData
());
a
=
response
.
getData
();
}
catch
(
ServerException
e
)
{
}
catch
(
ServerException
e
)
{
e
.
printStackTrace
();
e
.
printStackTrace
();
}
catch
(
ClientException
e
)
{
}
catch
(
ClientException
e
)
{
e
.
printStackTrace
();
e
.
printStackTrace
();
}
}
return
"发送成功"
;
if
(
a
!=
null
&&
a
.
contains
(
"OK"
))
{
QyzxUseRecord
qyzxUseRecord
=
new
QyzxUseRecord
();
qyzxUseRecord
.
setOriginalTotalNum
(
remainder
);
// 原数量
qyzxUseRecord
.
setNowTotalNum
(--
remainder
);
qyzxUseRecord
.
setUserPhone
(
phone
);
qyzxUseRecord
.
setOrderNo
(
orderNo
);
qyzxUseRecord
.
setScene
(
QyzxScene
.
MSG_REMIND
.
getMessage
());
qyzxUseRecord
.
setUseNum
(
1
);
qyzxUseRecord
.
setPmid
(
quantity
.
getPmid
());
qyzxUseRecord
.
insert
();
quantity
.
setRemainder
(
remainder
);
quantity
.
update
(
new
LambdaUpdateWrapper
<
QyzxRemainingQuantity
>()
.
eq
(
QyzxRemainingQuantity:
:
getOrgCode
,
orgCode
).
eq
(
QyzxRemainingQuantity:
:
getOrderNo
,
orderNo
));
return
a
;
// 代表请求成功
}
return
"发送失败"
;
}
}
}
}
src/main/java/cn/timer/api/utils/schedule/RemindUtil.java
View file @
b88aeda6
...
@@ -11,16 +11,12 @@ import org.springframework.scheduling.config.ScheduledTaskRegistrar;
...
@@ -11,16 +11,12 @@ import org.springframework.scheduling.config.ScheduledTaskRegistrar;
import
org.springframework.scheduling.support.CronTrigger
;
import
org.springframework.scheduling.support.CronTrigger
;
import
org.springframework.stereotype.Component
;
import
org.springframework.stereotype.Component
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
cn.hutool.core.date.DateUnit
;
import
cn.hutool.core.date.DateUnit
;
import
cn.hutool.core.date.DateUtil
;
import
cn.hutool.core.date.DateUtil
;
import
cn.timer.api.bean.htzz.HtzzAdminZzda
;
import
cn.timer.api.bean.htzz.HtzzAdminZzda
;
import
cn.timer.api.bean.htzz.HtzzAssoHtgx
;
import
cn.timer.api.bean.htzz.HtzzAssoHtgx
;
import
cn.timer.api.bean.qyzx.QyzxEmpLogin
;
import
cn.timer.api.bean.qyzx.businessService.QyzxRemainingQuantity
;
import
cn.timer.api.utils.ResultUtil
;
import
cn.timer.api.utils.aliyun.AliyunSMS
;
import
cn.timer.api.utils.aliyun.AliyunSMS
;
/**
/**
...
...
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