Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
M
mall.oytour.com
Project
Project
Details
Activity
Releases
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
黄奎
mall.oytour.com
Commits
8970e714
Commit
8970e714
authored
Jul 20, 2020
by
吴春
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
提交
parent
0663f08f
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
154 additions
and
4 deletions
+154
-4
UserVipModule.cs
Mall.Module.User/UserVipModule.cs
+142
-0
WeChatPayController.cs
Mall.WebApi/Controllers/AppletWeChat/WeChatPayController.cs
+12
-4
No files found.
Mall.Module.User/UserVipModule.cs
0 → 100644
View file @
8970e714
using
System
;
using
System.Collections.Generic
;
using
System.Linq
;
using
System.Text
;
using
Mall.Common
;
using
Mall.Common.Plugin
;
using
Mall.Model.Entity.User
;
using
Mall.Model.Extend.User
;
using
Mall.Repository
;
using
Mall.Repository.User
;
using
Mall.Repository.Product
;
using
Mall.Model.Extend.Product
;
using
Microsoft.Extensions.Configuration
;
using
Microsoft.Extensions.Configuration.Json
;
using
Newtonsoft.Json
;
using
Mall.Repository.BaseSetUp
;
using
Mall.Common.Enum.User
;
using
Mall.Common.API
;
using
Newtonsoft.Json.Linq
;
using
System.Threading
;
using
Mall.Repository.Finance
;
using
NPOI.SS.Formula.Functions
;
namespace
Mall.Module.User
{
/// <summary>
/// 商户用户处理层
/// </summary>
public
class
UserVipModule
{
/// <summary>
/// vip购买自定义仓储
/// </summary>
private
readonly
RB_Distributor_FXGradeCustomRepository
dXGradeCustomRepository
=
new
RB_Distributor_FXGradeCustomRepository
();
/// <summary>
/// vip购买仓储层
/// </summary>
private
readonly
RB_Vip_BuyRepository
vipBuyRepository
=
new
RB_Vip_BuyRepository
();
#
region
vip
购买自定义
/// <summary>
/// 自定义页面信息列表
/// </summary>
/// <param name="pageIndex">页码</param>
/// <param name="pageSize">每页显示条数</param>
/// <param name="rowCount">总条数</param>
/// <param name="query">查询条件</param>
/// <returns></returns>
public
List
<
RB_Distributor_FXGradeCustom_Extend
>
GetGradeCustomPageList
(
int
pageIndex
,
int
pageSize
,
out
long
rowCount
,
RB_Distributor_FXGradeCustom_Extend
query
)
{
return
dXGradeCustomRepository
.
GetGradeCustomPageList
(
pageIndex
,
pageSize
,
out
rowCount
,
query
);
}
/// <summary>
/// 自定义页面信息列表
/// </summary>
/// <param name="query">查询条件</param>
/// <returns></returns>
public
List
<
RB_Distributor_FXGradeCustom_Extend
>
GetGradeCustomList
(
RB_Distributor_FXGradeCustom_Extend
query
)
{
return
dXGradeCustomRepository
.
GetGradeCustomList
(
query
);
}
/// <summary>
/// 新增/修改vip自定义购买页面信息
/// </summary>
/// <param name="model"></param>
/// <returns></returns>
public
bool
AddOrUpdateFXGradeCustom
(
RB_Distributor_FXGradeCustom_Extend
model
)
{
if
(
model
.
Id
==
0
)
{
return
dXGradeCustomRepository
.
Insert
(
model
)
>
0
;
}
else
{
IDictionary
<
string
,
object
>
fileds
=
new
Dictionary
<
string
,
object
>()
{
{
nameof
(
RB_Distributor_FXGradeCustom
.
BackColor
),
model
.
BackColor
},
{
nameof
(
RB_Distributor_FXGradeCustom
.
BackImage
),
model
.
BackImage
},
{
nameof
(
RB_Distributor_FXGradeCustom
.
BottomRule
),
model
.
BottomRule
},
{
nameof
(
RB_Distributor_FXGradeCustom
.
UpdateDate
),
model
.
UpdateDate
},
{
nameof
(
RB_Distributor_FXGradeCustom
.
VipICO
),
model
.
VipICO
},
};
IList
<
WhereHelper
>
whereHelpers
=
new
List
<
WhereHelper
>()
{
new
WhereHelper
(){
FiledName
=
nameof
(
RB_Distributor_FXGradeCustom
.
MallBaseId
),
FiledValue
=
model
.
MallBaseId
,
OperatorEnum
=
OperatorEnum
.
Equal
},
new
WhereHelper
(){
FiledName
=
nameof
(
RB_Distributor_FXGradeCustom
.
TenantId
),
FiledValue
=
model
.
TenantId
,
OperatorEnum
=
OperatorEnum
.
Equal
},
new
WhereHelper
(){
FiledName
=
nameof
(
RB_Distributor_FXGradeCustom
.
Id
),
FiledValue
=
model
.
Id
,
OperatorEnum
=
OperatorEnum
.
Equal
}
};
return
dXGradeCustomRepository
.
Update
(
fileds
,
whereHelpers
);
}
}
#
endregion
#
region
vip
购买
/// <summary>
/// Vip购买信息列表
/// </summary>
/// <param name="pageIndex">页码</param>
/// <param name="pageSize">每页显示条数</param>
/// <param name="rowCount">总条数</param>
/// <param name="query">查询条件</param>
/// <returns></returns>
public
List
<
RB_Vip_Buy_Extend
>
GetVipBuyPageList
(
int
pageIndex
,
int
pageSize
,
out
long
rowCount
,
RB_Vip_Buy_Extend
query
)
{
return
vipBuyRepository
.
GetVipBuyPageList
(
pageIndex
,
pageSize
,
out
rowCount
,
query
);
}
/// <summary>
/// Vip购买信息列表
/// </summary>
/// <param name="query">查询条件</param>
/// <returns></returns>
public
List
<
RB_Vip_Buy_Extend
>
GetVipBuyList
(
RB_Vip_Buy_Extend
query
)
{
return
vipBuyRepository
.
GetVipBuyList
(
query
);
}
/// <summary>
/// 新增VIP购买记录
/// </summary>
/// <param name="model"></param>
/// <returns></returns>
public
int
AddVipBuy
(
RB_Vip_Buy_Extend
model
)
{
int
id
=
0
;
if
(
model
.
Id
==
0
)
{
id
=
vipBuyRepository
.
Insert
(
model
);
}
return
id
;
}
#
endregion
}
}
Mall.WebApi/Controllers/AppletWeChat/WeChatPayController.cs
View file @
8970e714
...
@@ -320,6 +320,14 @@ namespace Mall.WebApi.Controllers.AppletWeChat
...
@@ -320,6 +320,14 @@ namespace Mall.WebApi.Controllers.AppletWeChat
{
{
return
ApiResult
.
Failed
(
"用户不存在"
);
return
ApiResult
.
Failed
(
"用户不存在"
);
}
}
//获取会员的分享商记录
var
distributorModel
=
userModule
.
GetDistributorInfoList
(
new
RB_Distributor_Info_Extend
{
MallBaseId
=
userInfo
.
MallBaseId
,
TenantId
=
userInfo
.
TenantId
,
UserId
=
userModel
.
Id
}).
FirstOrDefault
();
if
(
distributorModel
==
null
)
{
return
ApiResult
.
Failed
(
"请先申请成为分销商"
);
}
string
payGoodsName
=
"VIP会员购买"
;
string
payGoodsName
=
"VIP会员购买"
;
var
rechargeRulesModel
=
userModule
.
GetFXDistributorGradeList
(
new
RB_Distributor_FXGrade_Extend
{
MallBaseId
=
userInfo
.
MallBaseId
,
TenantId
=
userInfo
.
TenantId
,
Id
=
demodel
.
GradeId
}).
FirstOrDefault
();
var
rechargeRulesModel
=
userModule
.
GetFXDistributorGradeList
(
new
RB_Distributor_FXGrade_Extend
{
MallBaseId
=
userInfo
.
MallBaseId
,
TenantId
=
userInfo
.
TenantId
,
Id
=
demodel
.
GradeId
}).
FirstOrDefault
();
if
(
rechargeRulesModel
==
null
)
if
(
rechargeRulesModel
==
null
)
...
@@ -327,9 +335,9 @@ namespace Mall.WebApi.Controllers.AppletWeChat
...
@@ -327,9 +335,9 @@ namespace Mall.WebApi.Controllers.AppletWeChat
return
ApiResult
.
Failed
(
"您选择的VIP等级不存在"
);
return
ApiResult
.
Failed
(
"您选择的VIP等级不存在"
);
}
}
if
(
userModel
.
MemberGrade
>=
rechargeRulesModel
.
Grade
)
if
(
distributorModel
.
FXGradeId
.
HasValue
&&
distributorModel
.
FXGradeId
>=
rechargeRulesModel
.
Grade
)
{
{
return
ApiResult
.
Failed
(
"购买
会员等级低于您当前会员
等级"
);
return
ApiResult
.
Failed
(
"购买
VIP等级低于您当前VIP
等级"
);
}
}
if
(
rechargeRulesModel
.
IsCanBuy
==
1
)
if
(
rechargeRulesModel
.
IsCanBuy
==
1
)
{
{
...
@@ -341,7 +349,7 @@ namespace Mall.WebApi.Controllers.AppletWeChat
...
@@ -341,7 +349,7 @@ namespace Mall.WebApi.Controllers.AppletWeChat
}
}
else
else
{
{
return
ApiResult
.
Failed
(
"当前
会员
等级不能购买"
);
return
ApiResult
.
Failed
(
"当前
VIP
等级不能购买"
);
}
}
//判断订单状态是否是待支付
//判断订单状态是否是待支付
...
@@ -369,7 +377,7 @@ namespace Mall.WebApi.Controllers.AppletWeChat
...
@@ -369,7 +377,7 @@ namespace Mall.WebApi.Controllers.AppletWeChat
int
memberBuyId
=
userVipModule
.
AddVipBuy
(
demodel
);
int
memberBuyId
=
userVipModule
.
AddVipBuy
(
demodel
);
if
(
memberBuyId
==
0
)
if
(
memberBuyId
==
0
)
{
{
return
ApiResult
.
Failed
(
"购买VIP
会员
失败"
);
return
ApiResult
.
Failed
(
"购买VIP
等级
失败"
);
}
}
string
sOrderNo
=
(
System
.
DateTime
.
Now
.
ToString
(
"yyyyMMddHHmmssfff"
))
+
memberBuyId
;
string
sOrderNo
=
(
System
.
DateTime
.
Now
.
ToString
(
"yyyyMMddHHmmssfff"
))
+
memberBuyId
;
//根据订单号获取微信支付配置信息
//根据订单号获取微信支付配置信息
...
...
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