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
48ab28ce
Commit
48ab28ce
authored
Jul 15, 2020
by
liudong1993
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
粉象返佣
parent
b14bd414
Show whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
466 additions
and
415 deletions
+466
-415
RB_Distributor_FXGrade.cs
Mall.Model/Entity/User/RB_Distributor_FXGrade.cs
+4
-0
RB_Distributor_Info.cs
Mall.Model/Entity/User/RB_Distributor_Info.cs
+4
-0
OrderModule.cs
Mall.Module.Product/OrderModule.cs
+411
-375
ProductModule.cs
Mall.Module.Product/ProductModule.cs
+43
-40
UserModule.cs
Mall.Module.User/UserModule.cs
+1
-0
UserController.cs
Mall.WebApi/Controllers/User/UserController.cs
+3
-0
No files found.
Mall.Model/Entity/User/RB_Distributor_FXGrade.cs
View file @
48ab28ce
...
@@ -150,5 +150,9 @@ namespace Mall.Model.Entity.User
...
@@ -150,5 +150,9 @@ namespace Mall.Model.Entity.User
get
;
get
;
set
;
set
;
}
}
/// <summary>
/// 小数类型 1取整(向上进一) 2保留两位小数
/// </summary>
public
int
?
DecimalType
{
get
;
set
;
}
}
}
}
}
Mall.Model/Entity/User/RB_Distributor_Info.cs
View file @
48ab28ce
...
@@ -71,6 +71,10 @@ namespace Mall.Model.Entity.User
...
@@ -71,6 +71,10 @@ namespace Mall.Model.Entity.User
/// </summary>
/// </summary>
public
int
?
HPGradeId
{
get
;
set
;
}
public
int
?
HPGradeId
{
get
;
set
;
}
/// <summary>
/// <summary>
/// 粉象返佣等级
/// </summary>
public
int
?
FXGradeId
{
get
;
set
;
}
/// <summary>
/// 审核状态 1审核中 2通过 3拒绝
/// 审核状态 1审核中 2通过 3拒绝
/// </summary>
/// </summary>
public
DistributorAuditStatusEnum
?
AuditStatus
public
DistributorAuditStatusEnum
?
AuditStatus
...
...
Mall.Module.Product/OrderModule.cs
View file @
48ab28ce
...
@@ -202,6 +202,10 @@ namespace Mall.Module.Product
...
@@ -202,6 +202,10 @@ namespace Mall.Module.Product
/// 财务单据规则
/// 财务单据规则
/// </summary>
/// </summary>
private
static
RB_Finance_ConfigurineRepository
financeConfigurineRepository
=
new
RB_Finance_ConfigurineRepository
();
private
static
RB_Finance_ConfigurineRepository
financeConfigurineRepository
=
new
RB_Finance_ConfigurineRepository
();
/// <summary>
/// 粉象返佣
/// </summary>
private
readonly
RB_Distributor_FXGradeRepository
distributor_FXGradeRepository
=
new
RB_Distributor_FXGradeRepository
();
#
region
购物车
#
region
购物车
...
@@ -3042,6 +3046,37 @@ namespace Mall.Module.Product
...
@@ -3042,6 +3046,37 @@ namespace Mall.Module.Product
try
try
{
{
var
basicModel
=
distributor_BasicsRepository
.
GetList
(
new
RB_Distributor_Basics_Extend
()
{
TenantId
=
demodel
.
TenantId
,
MallBaseId
=
demodel
.
MallBaseId
}).
FirstOrDefault
();
var
basicModel
=
distributor_BasicsRepository
.
GetList
(
new
RB_Distributor_Basics_Extend
()
{
TenantId
=
demodel
.
TenantId
,
MallBaseId
=
demodel
.
MallBaseId
}).
FirstOrDefault
();
if
(
basicModel
.
IsEnableFXGrade
==
1
)
{
//粉象返佣
var
FXList
=
distributor_FXGradeRepository
.
GetList
(
new
RB_Distributor_FXGrade_Extend
()
{
TenantId
=
demodel
.
TenantId
,
MallBaseId
=
demodel
.
MallBaseId
});
if
(
FXList
.
Any
()
&&
FXList
.
Where
(
x
=>
x
.
IsGuest
==
1
).
Any
())
{
var
FXPModel
=
FXList
.
Where
(
x
=>
x
.
IsGuest
==
1
).
FirstOrDefault
();
//验证用户必须是分销商 最低普通会员 不是以普通会员处理
var
disModel
=
distributor_InfoRepository
.
GetList
(
new
RB_Distributor_Info_Extend
()
{
TenantId
=
demodel
.
TenantId
,
MallBaseId
=
demodel
.
MallBaseId
,
UserId
=
umodel
.
Id
,
AuditStatus
=
Common
.
Enum
.
User
.
DistributorAuditStatusEnum
.
Audited
}).
FirstOrDefault
();
var
FXModel
=
FXPModel
;
if
(
disModel
!=
null
)
{
if
(
disModel
.
FXGradeId
>
0
)
{
FXModel
=
FXList
.
Where
(
x
=>
x
.
Id
==
disModel
.
FXGradeId
).
FirstOrDefault
();
}
}
else
{
LogHelper
.
Write
(
"粉象返佣 用户分销商信息不存在:UserId:"
+
umodel
.
Id
);
}
if
(
FXModel
!=
null
)
{
//查询出当前用户的所有上级
//查询出用户的所有分销信息
//开始慢慢找 注 同级返佣数量 返佣建子表可以无限级返佣了
}
}
}
else
{
//判断是否开启和平返佣
//判断是否开启和平返佣
List
<
WhereHelper
>
wheres
=
new
List
<
WhereHelper
>()
{
List
<
WhereHelper
>
wheres
=
new
List
<
WhereHelper
>()
{
new
WhereHelper
(){
new
WhereHelper
(){
...
@@ -3568,6 +3603,7 @@ namespace Mall.Module.Product
...
@@ -3568,6 +3603,7 @@ namespace Mall.Module.Product
}
}
}
}
}
}
}
goods_OrderCommissionRepository
.
DBSession
.
Commit
();
goods_OrderCommissionRepository
.
DBSession
.
Commit
();
}
}
catch
(
Exception
ex
)
catch
(
Exception
ex
)
...
...
Mall.Module.Product/ProductModule.cs
View file @
48ab28ce
...
@@ -152,6 +152,11 @@ namespace Mall.Module.Product
...
@@ -152,6 +152,11 @@ namespace Mall.Module.Product
/// 商品代理
/// 商品代理
/// </summary>
/// </summary>
private
readonly
RB_Goods_ProxyRepository
goods_ProxyRepository
=
new
RB_Goods_ProxyRepository
();
private
readonly
RB_Goods_ProxyRepository
goods_ProxyRepository
=
new
RB_Goods_ProxyRepository
();
/// <summary>
/// 粉象返佣
/// </summary>
private
readonly
RB_Distributor_FXGradeRepository
distributor_FXGradeRepository
=
new
RB_Distributor_FXGradeRepository
();
...
@@ -1264,52 +1269,50 @@ namespace Mall.Module.Product
...
@@ -1264,52 +1269,50 @@ namespace Mall.Module.Product
var
BasicsModel
=
distributor_BasicsRepository
.
GetList
(
new
RB_Distributor_Basics_Extend
()
{
TenantId
=
TenantId
,
MallBaseId
=
MallBaseId
}).
FirstOrDefault
();
var
BasicsModel
=
distributor_BasicsRepository
.
GetList
(
new
RB_Distributor_Basics_Extend
()
{
TenantId
=
TenantId
,
MallBaseId
=
MallBaseId
}).
FirstOrDefault
();
if
((
BasicsModel
?.
IsEnableFXGrade
??
2
)
==
1
)
if
((
BasicsModel
?.
IsEnableFXGrade
??
2
)
==
1
)
{
{
if
(
model
.
IsCustomSpecification
==
1
)
var
FXList
=
distributor_FXGradeRepository
.
GetList
(
new
RB_Distributor_FXGrade_Extend
()
{
TenantId
=
TenantId
,
MallBaseId
=
MallBaseId
});
if
(
FXList
.
Any
()
&&
FXList
.
Where
(
x
=>
x
.
IsGuest
==
1
).
Any
())
{
{
var
dcList
=
model
.
SpecificationPriceList
.
Where
(
x
=>
x
.
DistributorGrade
==
disModel
.
GradeId
).
ToList
();
var
FXModel
=
FXList
.
Where
(
x
=>
x
.
Id
==
disModel
.
FXGradeId
).
FirstOrDefault
();
var
PModel
=
FXList
.
Where
(
x
=>
x
.
IsGuest
==
1
).
FirstOrDefault
();
model
.
MaxShare
=
dcList
.
Max
(
x
=>
x
.
OneCommission
??
0
);
if
(
FXModel
!=
null
&&
PModel
!=
null
)
if
(
model
.
SeparateDistributionMoneyType
==
1
)
{
{
model
.
MaxShare
=
Math
.
Round
(
model
.
MaxShare
*
MaxSellMoney
/
100
,
2
,
MidpointRounding
.
AwayFromZero
);
decimal
CRate
=
0
;
}
if
(
FXModel
.
Id
==
PModel
.
Id
)
{
CRate
=
FXModel
.
SiblingRatio
??
0
;
}
}
else
else
{
{
if
(
disModel
.
GradeId
==
0
)
CRate
=
(
FXModel
.
CommissionRatio
??
0
)
-
(
PModel
.
CommissionRatio
??
0
);
}
if
(
model
.
IsCustomSpecification
==
1
)
{
{
//拿分销基础配置
var
dcModel
=
model
.
SpecificationPriceList
.
OrderByDescending
(
x
=>
x
.
Commission
).
FirstOrDefault
();
//if ((BasicsModel?.IsCommissionResidue ?? 2) == 1)
if
(
dcModel
.
Commission
>
0
)
//{
// model.MaxShare = (BasicsModel?.OneCommission ?? 0) + (BasicsModel?.TwoCommission ?? 0) + (BasicsModel?.ThreeCommission ?? 0);
//}
//else
//{
model
.
MaxShare
=
BasicsModel
?.
OneCommission
??
0
;
//}
if
((
BasicsModel
?.
DistributorCommissionType
??
2
)
==
1
)
{
{
model
.
MaxShare
=
Math
.
Round
(
model
.
MaxShare
*
MaxSellMoney
/
100
,
2
,
MidpointRounding
.
AwayFromZero
);
if
(
FXModel
.
DecimalType
==
1
)
{
model
.
MaxShare
=
Math
.
Ceiling
(
dcModel
.
Commission
*
CRate
/
100
);
}
}
else
{
model
.
MaxShare
=
Math
.
Ceiling
(
dcModel
.
Commission
*
CRate
)
/
100
;
}
}
else
if
(
disModel
.
GradeId
>
0
)
}
}
else
{
{
//获取分销商等级
if
(
model
.
Commission
>
0
)
var
disgradeModel
=
distributor_GradeRepository
.
GetEntity
(
disModel
.
GradeId
);
if
(
disgradeModel
!=
null
)
{
{
//if ((BasicsModel?.IsCommissionResidue ?? 2) == 1)
if
(
FXModel
.
DecimalType
==
1
)
//{
// model.MaxShare = (disgradeModel?.OneCommission ?? 0) + (disgradeModel?.TwoCommission ?? 0) + (disgradeModel?.ThreeCommission ?? 0);
//}
//else
//{
model
.
MaxShare
=
disgradeModel
?.
OneCommission
??
0
;
//}
if
((
disgradeModel
?.
DistributionCommissionType
??
2
)
==
1
)
{
{
model
.
MaxShare
=
Math
.
Round
(
model
.
MaxShare
*
MaxSellMoney
/
100
,
2
,
MidpointRounding
.
AwayFromZero
);
model
.
MaxShare
=
Math
.
Ceiling
(
model
.
Commission
*
CRate
/
100
);
}
else
{
model
.
MaxShare
=
Math
.
Ceiling
(
model
.
Commission
*
CRate
)
/
100
;
}
}
}
}
}
}
}
...
...
Mall.Module.User/UserModule.cs
View file @
48ab28ce
...
@@ -4426,6 +4426,7 @@ namespace Mall.Module.User
...
@@ -4426,6 +4426,7 @@ namespace Mall.Module.User
{
nameof
(
RB_Distributor_FXGrade
.
UpgradeNum
),
demodel
.
UpgradeNum
},
{
nameof
(
RB_Distributor_FXGrade
.
UpgradeNum
),
demodel
.
UpgradeNum
},
{
nameof
(
RB_Distributor_FXGrade
.
UpgradeId
),
demodel
.
UpgradeId
},
{
nameof
(
RB_Distributor_FXGrade
.
UpgradeId
),
demodel
.
UpgradeId
},
{
nameof
(
RB_Distributor_FXGrade
.
UpdateDate
),
demodel
.
UpdateDate
},
{
nameof
(
RB_Distributor_FXGrade
.
UpdateDate
),
demodel
.
UpdateDate
},
{
nameof
(
RB_Distributor_FXGrade
.
DecimalType
),
demodel
.
DecimalType
},
};
};
List
<
WhereHelper
>
wheres
=
new
List
<
WhereHelper
>()
{
List
<
WhereHelper
>
wheres
=
new
List
<
WhereHelper
>()
{
new
WhereHelper
(){
new
WhereHelper
(){
...
...
Mall.WebApi/Controllers/User/UserController.cs
View file @
48ab28ce
...
@@ -2658,6 +2658,7 @@ namespace Mall.WebApi.Controllers.User
...
@@ -2658,6 +2658,7 @@ namespace Mall.WebApi.Controllers.User
x
.
BuyMoney
,
x
.
BuyMoney
,
x
.
IsUpgrade
,
x
.
IsUpgrade
,
x
.
UpgradeNum
,
x
.
UpgradeNum
,
x
.
DecimalType
,
x
.
UpgradeId
,
x
.
UpgradeId
,
UpdateDate
=
x
.
UpdateDate
.
HasValue
?
x
.
UpdateDate
.
Value
.
ToString
(
"yyyy-MM-dd"
)
:
""
UpdateDate
=
x
.
UpdateDate
.
HasValue
?
x
.
UpdateDate
.
Value
.
ToString
(
"yyyy-MM-dd"
)
:
""
});
});
...
@@ -2720,6 +2721,7 @@ namespace Mall.WebApi.Controllers.User
...
@@ -2720,6 +2721,7 @@ namespace Mall.WebApi.Controllers.User
demodel
.
IsUpgrade
??=
0
;
demodel
.
IsUpgrade
??=
0
;
demodel
.
UpgradeNum
??=
0
;
demodel
.
UpgradeNum
??=
0
;
demodel
.
UpgradeId
??=
0
;
demodel
.
UpgradeId
??=
0
;
demodel
.
DecimalType
??=
1
;
demodel
.
CreateDate
=
DateTime
.
Now
;
demodel
.
CreateDate
=
DateTime
.
Now
;
demodel
.
UpdateDate
=
DateTime
.
Now
;
demodel
.
UpdateDate
=
DateTime
.
Now
;
bool
flag
=
userModule
.
SetFXDistributorGradeInfo
(
demodel
);
bool
flag
=
userModule
.
SetFXDistributorGradeInfo
(
demodel
);
...
@@ -2747,6 +2749,7 @@ namespace Mall.WebApi.Controllers.User
...
@@ -2747,6 +2749,7 @@ namespace Mall.WebApi.Controllers.User
{
{
return
ApiResult
.
ParamIsNull
();
return
ApiResult
.
ParamIsNull
();
}
}
//验证 有用户在使用该等级 不能删除
bool
flag
=
userModule
.
DelFXDistributorGradeInfo
(
GradeId
,
req
.
TenantId
,
req
.
MallBaseId
);
bool
flag
=
userModule
.
DelFXDistributorGradeInfo
(
GradeId
,
req
.
TenantId
,
req
.
MallBaseId
);
if
(
flag
)
if
(
flag
)
...
...
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