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
22451ba6
Commit
22451ba6
authored
Jun 30, 2020
by
吴春
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
提交代码,会员购买记录
parent
98413f2d
Hide whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
508 additions
and
75 deletions
+508
-75
Config.cs
Mall.Common/Config.cs
+12
-0
RB_Member_Buy.cs
Mall.Model/Entity/User/RB_Member_Buy.cs
+10
-0
UserCommonModule.cs
Mall.Module.User/UserCommonModule.cs
+2
-0
UserModule.cs
Mall.Module.User/UserModule.cs
+64
-16
RB_Member_BuyRepository.cs
Mall.Repository/User/RB_Member_BuyRepository.cs
+7
-2
LiveHouseController.cs
Mall.WebApi/Controllers/AppletWeChat/LiveHouseController.cs
+235
-0
WeChatNotifyController.cs
...WebApi/Controllers/AppletWeChat/WeChatNotifyController.cs
+55
-2
WeChatPayController.cs
Mall.WebApi/Controllers/AppletWeChat/WeChatPayController.cs
+86
-0
StatisticsController.cs
...ebApi/Controllers/MarketingCenter/StatisticsController.cs
+1
-1
AppletUserController.cs
Mall.WebApi/Controllers/User/AppletUserController.cs
+2
-52
UserController.cs
Mall.WebApi/Controllers/User/UserController.cs
+34
-2
No files found.
Mall.Common/Config.cs
View file @
22451ba6
...
@@ -351,6 +351,18 @@ namespace Mall.Common
...
@@ -351,6 +351,18 @@ namespace Mall.Common
return
new
ConfigurationBuilder
().
Add
(
new
JsonConfigurationSource
{
Path
=
"appsettings.json"
}).
Build
().
GetSection
(
"sTenpayRechargeNotify"
).
Value
;
return
new
ConfigurationBuilder
().
Add
(
new
JsonConfigurationSource
{
Path
=
"appsettings.json"
}).
Build
().
GetSection
(
"sTenpayRechargeNotify"
).
Value
;
}
}
}
}
/// <summary>
/// 微信购买支付成功接口处理地址
/// </summary>
public
static
string
sTenpayMemberBuyNotify
{
get
{
return
new
ConfigurationBuilder
().
Add
(
new
JsonConfigurationSource
{
Path
=
"appsettings.json"
}).
Build
().
GetSection
(
"sTenpayMemberBuyNotify"
).
Value
;
}
}
/// <summary>
/// <summary>
/// 网络主管的id,用于新建供应商账户的时候的创建人
/// 网络主管的id,用于新建供应商账户的时候的创建人
/// </summary>
/// </summary>
...
...
Mall.Model/Entity/User/RB_Member_Buy.cs
View file @
22451ba6
...
@@ -108,5 +108,15 @@ namespace Mall.Model.Entity.User
...
@@ -108,5 +108,15 @@ namespace Mall.Model.Entity.User
get
;
get
;
set
;
set
;
}
}
/// <summary>
/// 支付类型 枚举 1微信 2支付宝 3银行卡
/// </summary>
public
Common
.
Enum
.
Goods
.
OrderPayTypeEnum
?
PayWay
{
get
;
set
;
}
}
}
}
}
Mall.Module.User/UserCommonModule.cs
View file @
22451ba6
...
@@ -56,6 +56,8 @@ namespace Mall.Module.User
...
@@ -56,6 +56,8 @@ namespace Mall.Module.User
private
readonly
MiniProgramMsgModule
appletWeChatModule
=
new
MiniProgramMsgModule
();
private
readonly
MiniProgramMsgModule
appletWeChatModule
=
new
MiniProgramMsgModule
();
/// <summary>
/// <summary>
/// 初始化分销基础配置
/// 初始化分销基础配置
/// </summary>
/// </summary>
...
...
Mall.Module.User/UserModule.cs
View file @
22451ba6
...
@@ -19,6 +19,7 @@ using Mall.Common.API;
...
@@ -19,6 +19,7 @@ using Mall.Common.API;
using
Newtonsoft.Json.Linq
;
using
Newtonsoft.Json.Linq
;
using
System.Threading
;
using
System.Threading
;
using
Mall.Repository.Finance
;
using
Mall.Repository.Finance
;
using
NPOI.SS.Formula.Functions
;
namespace
Mall.Module.User
namespace
Mall.Module.User
{
{
...
@@ -1418,7 +1419,8 @@ namespace Mall.Module.User
...
@@ -1418,7 +1419,8 @@ namespace Mall.Module.User
}
}
};
};
bool
flag
=
distributor_InfoRepository
.
Update
(
keyValues
,
wheres
);
bool
flag
=
distributor_InfoRepository
.
Update
(
keyValues
,
wheres
);
if
(
flag
)
{
if
(
flag
)
{
//修改用户表状态
//修改用户表状态
Dictionary
<
string
,
object
>
keyValues1
=
new
Dictionary
<
string
,
object
>()
{
Dictionary
<
string
,
object
>
keyValues1
=
new
Dictionary
<
string
,
object
>()
{
{
nameof
(
RB_Member_User
.
IsDistributor
),
1
}
{
nameof
(
RB_Member_User
.
IsDistributor
),
1
}
...
@@ -1455,7 +1457,8 @@ namespace Mall.Module.User
...
@@ -1455,7 +1457,8 @@ namespace Mall.Module.User
}
}
};
};
bool
flag
=
distributor_InfoRepository
.
Update
(
keyValues
,
wheres
);
bool
flag
=
distributor_InfoRepository
.
Update
(
keyValues
,
wheres
);
if
(
flag
)
{
if
(
flag
)
{
var
umodel
=
GetMemberUserInfo
(
disModel
.
UserId
??
0
);
var
umodel
=
GetMemberUserInfo
(
disModel
.
UserId
??
0
);
if
(
umodel
!=
null
)
if
(
umodel
!=
null
)
{
{
...
@@ -1677,7 +1680,7 @@ namespace Mall.Module.User
...
@@ -1677,7 +1680,7 @@ namespace Mall.Module.User
}
}
};
};
member_UserRepository
.
Update
(
keyValues1
,
wheres1
,
trans
);
member_UserRepository
.
Update
(
keyValues1
,
wheres1
,
trans
);
}
}
}
}
}
}
...
@@ -4368,7 +4371,7 @@ namespace Mall.Module.User
...
@@ -4368,7 +4371,7 @@ namespace Mall.Module.User
/// <param name="rowCount">总条数</param>
/// <param name="rowCount">总条数</param>
/// <param name="dmodel">查询条件</param>
/// <param name="dmodel">查询条件</param>
/// <returns></returns>
/// <returns></returns>
public
List
<
RB_Member_Buy_Extend
>
GetPageList
(
int
pageIndex
,
int
pageSize
,
out
long
rowCount
,
RB_Member_Buy_Extend
dmodel
)
public
List
<
RB_Member_Buy_Extend
>
Get
MemberBuy
PageList
(
int
pageIndex
,
int
pageSize
,
out
long
rowCount
,
RB_Member_Buy_Extend
dmodel
)
{
{
return
memberBuyRepository
.
GetPageList
(
pageIndex
,
pageSize
,
out
rowCount
,
dmodel
);
return
memberBuyRepository
.
GetPageList
(
pageIndex
,
pageSize
,
out
rowCount
,
dmodel
);
}
}
...
@@ -4379,39 +4382,84 @@ namespace Mall.Module.User
...
@@ -4379,39 +4382,84 @@ namespace Mall.Module.User
/// </summary>
/// </summary>
/// <param name="model"></param>
/// <param name="model"></param>
/// <returns></returns>
/// <returns></returns>
public
bool
AddMemberBuy
(
RB_Member_Buy_Extend
model
)
public
int
AddMemberBuy
(
RB_Member_Buy_Extend
model
)
{
{
int
id
=
0
;
if
(
model
.
Id
==
0
)
if
(
model
.
Id
==
0
)
{
{
return
memberBuyRepository
.
Insert
(
model
);
id
=
memberBuyRepository
.
Insert
(
model
);
}
}
return
false
;
return
id
;
}
}
/// <summary>
/// <summary>
///
更新会员购买记录
///
修改会员购买
/// </summary>
/// </summary>
/// <param name="payTime"></param>
/// <param name="model"></param>
/// <param name="orderId"></param>
/// <returns></returns>
/// <returns></returns>
public
bool
UpdateMemberBuy
(
DateTime
payTime
,
int
orderI
d
)
public
bool
UpdateMemberBuy
(
int
UserId
,
int
OrderId
,
string
Out_Trade_No
,
string
Transaction_Id
,
Common
.
Enum
.
Goods
.
OrderPayTypeEnum
PayWay
,
decimal
Money
,
DateTime
Time_En
d
)
{
{
if
(
orderId
>
0
)
bool
flag
=
false
;
var
umodel
=
member_UserRepository
.
GetEntity
(
UserId
);
if
(
umodel
==
null
)
{
return
false
;
}
//判断订单状态是否是待支付 2020-06-16 Add By:W
var
model
=
memberBuyRepository
.
GetEntity
(
OrderId
);
if
(
model
==
null
)
{
return
false
;
}
if
(
model
.
PayState
!=
0
)
{
return
false
;
}
if
(
model
.
Money
!=
Money
)
{
return
false
;
}
var
trans
=
memberBuyRepository
.
DbTransaction
;
try
{
{
Dictionary
<
string
,
object
>
keyValues
=
new
Dictionary
<
string
,
object
>()
{
Dictionary
<
string
,
object
>
keyValues
=
new
Dictionary
<
string
,
object
>()
{
{
nameof
(
RB_Member_Buy
.
PayTime
),
payTime
},
{
nameof
(
RB_Member_Buy
.
PayTime
),
Time_End
},
{
nameof
(
RB_Member_Buy
.
PayState
),
1
}
{
nameof
(
RB_Member_Buy
.
PayState
),
1
}
};
};
List
<
WhereHelper
>
wheres
=
new
List
<
WhereHelper
>()
{
List
<
WhereHelper
>
wheres
=
new
List
<
WhereHelper
>()
{
new
WhereHelper
{
new
WhereHelper
{
FiledName
=
nameof
(
RB_Member_Footmark
.
Id
),
FiledName
=
nameof
(
RB_Member_Footmark
.
Id
),
FiledValue
=
o
rderId
,
FiledValue
=
O
rderId
,
OperatorEnum
=
OperatorEnum
.
Equal
OperatorEnum
=
OperatorEnum
.
Equal
}
}
};
};
return
memberBuyRepository
.
Update
(
keyValues
,
wheres
);
flag
=
memberBuyRepository
.
Update
(
keyValues
,
wheres
,
trans
);
//更新会员购买记录
Dictionary
<
string
,
object
>
keyValuesMember
=
new
Dictionary
<
string
,
object
>()
{
{
nameof
(
RB_Member_User
.
MemberGrade
),
model
.
GradeId
}
};
List
<
WhereHelper
>
wheresMember
=
new
List
<
WhereHelper
>()
{
new
WhereHelper
{
FiledName
=
nameof
(
RB_Member_User
.
Id
),
FiledValue
=
model
.
UserId
,
OperatorEnum
=
OperatorEnum
.
Equal
}
};
flag
=
member_UserRepository
.
Update
(
keyValuesMember
,
wheresMember
,
trans
);
//更新会员购买记录
memberBuyRepository
.
DBSession
.
Commit
();
}
}
return
false
;
catch
(
Exception
ex
)
{
LogHelper
.
Write
(
ex
,
"UpdateMemberBuy"
);
memberBuyRepository
.
DBSession
.
Rollback
(
"UpdateMemberBuy"
);
return
false
;
}
return
flag
;
}
}
#
endregion
#
endregion
...
...
Mall.Repository/User/RB_Member_BuyRepository.cs
View file @
22451ba6
...
@@ -35,15 +35,20 @@ namespace Mall.Repository.User
...
@@ -35,15 +35,20 @@ namespace Mall.Repository.User
{
{
where
+=
$@" and b.
{
nameof
(
RB_Member_Buy_Extend
.
Id
)}
=
{
dmodel
.
Id
}
"
;
where
+=
$@" and b.
{
nameof
(
RB_Member_Buy_Extend
.
Id
)}
=
{
dmodel
.
Id
}
"
;
}
}
if
(
dmodel
.
PayState
>
-
1
)
{
where
+=
$@" and b.
{
nameof
(
RB_Member_Buy_Extend
.
PayState
)}
=
{
dmodel
.
PayState
}
"
;
}
if
(
dmodel
.
UserId
>
0
)
if
(
dmodel
.
UserId
>
0
)
{
{
where
+=
$@" and b.
{
nameof
(
RB_Member_Buy_Extend
.
UserId
)}
=
{
dmodel
.
UserId
}
"
;
where
+=
$@" and b.
{
nameof
(
RB_Member_Buy_Extend
.
UserId
)}
=
{
dmodel
.
UserId
}
"
;
}
}
if
(!
string
.
IsNullOrEmpty
(
dmodel
.
UserName
))
if
(!
string
.
IsNullOrEmpty
(
dmodel
.
UserName
))
{
{
where
+=
$@" and u.
{
nameof
(
RB_Member_User
.
Name
)}
like '%
{
dmodel
.
UserName
}
%'"
;
where
+=
$@" and u.
{
nameof
(
RB_Member_User
.
Name
)}
like '%
{
dmodel
.
UserName
}
%'"
;
}
}
if
(!
string
.
IsNullOrEmpty
(
dmodel
.
StartTime
))
{
if
(!
string
.
IsNullOrEmpty
(
dmodel
.
StartTime
))
{
where
+=
$@" and b.
{
nameof
(
RB_Member_Buy_Extend
.
PayTime
)}
>= '
{
dmodel
.
StartTime
}
'"
;
where
+=
$@" and b.
{
nameof
(
RB_Member_Buy_Extend
.
PayTime
)}
>= '
{
dmodel
.
StartTime
}
'"
;
}
}
if
(!
string
.
IsNullOrEmpty
(
dmodel
.
EndTime
))
if
(!
string
.
IsNullOrEmpty
(
dmodel
.
EndTime
))
...
...
Mall.WebApi/Controllers/AppletWeChat/LiveHouseController.cs
0 → 100644
View file @
22451ba6
using
System
;
using
System.Collections.Generic
;
using
System.Linq
;
using
System.Threading.Tasks
;
using
Mall.Common
;
using
Mall.Common.API
;
using
Mall.Common.Plugin
;
using
Mall.Model.Extend.User
;
using
Mall.Model.Query
;
using
Mall.Module.MarketingCenter
;
using
Mall.Module.User
;
using
Mall.WebApi.Filter
;
using
Microsoft.AspNetCore.Cors
;
using
Microsoft.AspNetCore.Mvc
;
using
Newtonsoft.Json
;
namespace
Mall.WebApi.Controllers.AppletWeChat
{
[
Route
(
"api/[controller]/[action]"
)]
[
ApiExceptionFilter
]
[
ApiController
]
[
EnableCors
(
"AllowCors"
)]
public
class
LiveHouseController
:
ControllerBase
{
public
readonly
StatisticsModule
statisticsModule
=
new
StatisticsModule
();
private
readonly
MiniProgramModule
appletWeChatModule
=
new
MiniProgramModule
();
private
readonly
SupplierModule
supplierModule
=
new
SupplierModule
();
#
region
直播房间信息
[
HttpPost
]
[
Obsolete
]
public
ApiResult
GetLiveHouseList
(
object
requestMsg
)
{
var
requestParm
=
JsonConvert
.
DeserializeObject
<
RequestParm
>(
requestMsg
.
ToString
());
ResultPageModel
pagelist
=
JsonConvert
.
DeserializeObject
<
ResultPageModel
>(
requestParm
.
msg
.
ToString
());
Model
.
Entity
.
AppletWeChat
.
RB_Live_House
demodel
=
JsonConvert
.
DeserializeObject
<
Model
.
Entity
.
AppletWeChat
.
RB_Live_House
>(
requestParm
.
msg
.
ToString
());
demodel
.
TenantId
=
requestParm
.
TenantId
;
demodel
.
MallBaseId
=
requestParm
.
MallBaseId
;
var
list
=
appletWeChatModule
.
GetLiveHousePageList
(
pagelist
.
pageIndex
,
pagelist
.
pageSize
,
out
long
count
,
demodel
);
pagelist
.
count
=
Convert
.
ToInt32
(
count
);
pagelist
.
pageData
=
list
.
Select
(
x
=>
new
{
x
.
ID
,
x
.
roomid
,
x
.
name
,
x
.
anchor_img
,
x
.
anchor_name
,
x
.
cover_img
,
x
.
live_status
,
start_time
=
GetTime
(
x
.
start_time
),
end_time
=
GetTime
(
x
.
end_time
),
});
return
ApiResult
.
Success
(
""
,
pagelist
);
}
/// <summary>
/// 时间戳转为C#格式时间
/// </summary>
/// <param name="timeStamp">Unix时间戳格式</param>
/// <returns>C#格式时间</returns>
[
Obsolete
]
public
static
string
GetTime
(
string
timeStamp
)
{
try
{
DateTime
dtStart
=
TimeZone
.
CurrentTimeZone
.
ToLocalTime
(
new
DateTime
(
1970
,
1
,
1
));
long
lTime
=
long
.
Parse
(
timeStamp
+
"0000000"
);
TimeSpan
toNow
=
new
TimeSpan
(
lTime
);
return
dtStart
.
Add
(
toNow
).
ToString
(
"yyyy-MM-dd HH:mm:ss"
);
}
catch
(
Exception
)
{
return
""
;
}
}
#
endregion
#
region
损益核算表
/// <summary>
/// 获取供应商下拉列表
/// </summary>
/// <returns></returns>
[
HttpPost
]
public
ApiResult
GetSupplierAllList
(
object
requestMsg
)
{
var
requestParm
=
JsonConvert
.
DeserializeObject
<
RequestParm
>(
requestMsg
.
ToString
());
var
query
=
JsonConvert
.
DeserializeObject
<
RB_Supplier_Extend
>(
requestParm
.
msg
.
ToString
());
query
.
TenantId
=
requestParm
.
TenantId
;
query
.
MallBaseId
=
requestParm
.
MallBaseId
;
var
oldLogisticsList
=
supplierModule
.
GetList
(
query
);
return
ApiResult
.
Success
(
""
,
oldLogisticsList
);
}
[
HttpPost
]
public
ApiResult
GetOrderProfitLossList
(
object
requestMsg
)
{
var
requestParm
=
JsonConvert
.
DeserializeObject
<
RequestParm
>(
requestMsg
.
ToString
());
ResultPageModel
pagelist
=
JsonConvert
.
DeserializeObject
<
ResultPageModel
>(
requestParm
.
msg
.
ToString
());
OrderStatistics_Query
demodel
=
JsonConvert
.
DeserializeObject
<
OrderStatistics_Query
>(
requestParm
.
msg
.
ToString
());
demodel
.
TenantId
=
requestParm
.
TenantId
;
demodel
.
MallBaseId
=
requestParm
.
MallBaseId
;
var
list
=
statisticsModule
.
GetOrderProfitLossList
(
pagelist
.
pageIndex
,
pagelist
.
pageSize
,
out
long
count
,
demodel
);
foreach
(
var
item
in
list
)
{
item
.
ALLCommission
=
item
.
CostFreight
+
item
.
CostMoney
+
item
.
PackingMoney
+
item
.
GoodsFreight
+
item
.
OneCommission
+
item
.
TwoCommission
+
item
.
OtherPrice
;
item
.
NoPaid
=
item
.
ALLCommission
-
item
.
Paid
;
item
.
GrossProfit
=
item
.
AllPrice
-
item
.
ALLCommission
;
item
.
GrossProfitRate
=
item
.
AllPrice
==
0
?
0
:
item
.
GrossProfit
/
item
.
AllPrice
;
}
pagelist
.
count
=
Convert
.
ToInt32
(
count
);
pagelist
.
pageData
=
list
;
return
ApiResult
.
Success
(
""
,
pagelist
);
}
/// <summary>
/// 导出订单损益核算
/// </summary>
/// <returns></returns>
[
HttpPost
]
public
FileContentResult
GetOrderProfitLossExcel
(
object
requestMsg
)
{
var
requestParm
=
JsonConvert
.
DeserializeObject
<
RequestParm
>(
requestMsg
.
ToString
());
OrderStatistics_Query
demodel
=
JsonConvert
.
DeserializeObject
<
OrderStatistics_Query
>(
requestParm
.
msg
.
ToString
());
string
ExcelName
=
"订单损益核算"
+
DateTime
.
Now
.
ToString
(
"yyyyMMddHHmmss"
)
+
".xls"
;
List
<
ExcelDataSource
>
slist
=
new
List
<
ExcelDataSource
>();
ExcelDataSource
header
=
new
ExcelDataSource
()
{
ExcelRows
=
new
List
<
ExcelColumn
>(
30
)
{
new
ExcelColumn
(
value
:
"序号"
)
{
CellWidth
=
15
,
HAlignmentEnum
=
HAlignmentEnum
.
CENTER
,
VAlignmentEnum
=
VAlignmentEnum
.
CENTER
},
new
ExcelColumn
(
value
:
"订单号"
)
{
CellWidth
=
15
,
HAlignmentEnum
=
HAlignmentEnum
.
CENTER
,
VAlignmentEnum
=
VAlignmentEnum
.
CENTER
},
new
ExcelColumn
(
value
:
"数量"
)
{
CellWidth
=
15
,
HAlignmentEnum
=
HAlignmentEnum
.
CENTER
,
VAlignmentEnum
=
VAlignmentEnum
.
CENTER
},
new
ExcelColumn
(
value
:
"规格"
)
{
CellWidth
=
15
,
HAlignmentEnum
=
HAlignmentEnum
.
CENTER
,
VAlignmentEnum
=
VAlignmentEnum
.
CENTER
},
new
ExcelColumn
(
value
:
"数量"
)
{
CellWidth
=
15
,
HAlignmentEnum
=
HAlignmentEnum
.
CENTER
,
VAlignmentEnum
=
VAlignmentEnum
.
CENTER
},
new
ExcelColumn
(
value
:
"供应商"
)
{
CellWidth
=
15
,
HAlignmentEnum
=
HAlignmentEnum
.
CENTER
,
VAlignmentEnum
=
VAlignmentEnum
.
CENTER
},
new
ExcelColumn
(
value
:
"结算款"
)
{
CellWidth
=
15
,
HAlignmentEnum
=
HAlignmentEnum
.
CENTER
,
VAlignmentEnum
=
VAlignmentEnum
.
CENTER
},
new
ExcelColumn
(
value
:
"运费"
)
{
CellWidth
=
15
,
HAlignmentEnum
=
HAlignmentEnum
.
CENTER
,
VAlignmentEnum
=
VAlignmentEnum
.
CENTER
},
new
ExcelColumn
(
value
:
"已收"
)
{
CellWidth
=
15
,
HAlignmentEnum
=
HAlignmentEnum
.
CENTER
,
VAlignmentEnum
=
VAlignmentEnum
.
CENTER
},
new
ExcelColumn
(
value
:
"未收款"
)
{
CellWidth
=
15
,
HAlignmentEnum
=
HAlignmentEnum
.
CENTER
,
VAlignmentEnum
=
VAlignmentEnum
.
CENTER
},
new
ExcelColumn
(
value
:
"合计数"
)
{
CellWidth
=
15
,
HAlignmentEnum
=
HAlignmentEnum
.
CENTER
,
VAlignmentEnum
=
VAlignmentEnum
.
CENTER
},
new
ExcelColumn
(
value
:
"采购成本"
)
{
CellWidth
=
15
,
HAlignmentEnum
=
HAlignmentEnum
.
CENTER
,
VAlignmentEnum
=
VAlignmentEnum
.
CENTER
},
new
ExcelColumn
(
value
:
"包装费摊销"
)
{
CellWidth
=
15
,
HAlignmentEnum
=
HAlignmentEnum
.
CENTER
,
VAlignmentEnum
=
VAlignmentEnum
.
CENTER
},
new
ExcelColumn
(
value
:
"快递费"
)
{
CellWidth
=
15
,
HAlignmentEnum
=
HAlignmentEnum
.
CENTER
,
VAlignmentEnum
=
VAlignmentEnum
.
CENTER
},
new
ExcelColumn
(
value
:
"商品运费摊销"
)
{
CellWidth
=
15
,
HAlignmentEnum
=
HAlignmentEnum
.
CENTER
,
VAlignmentEnum
=
VAlignmentEnum
.
CENTER
},
new
ExcelColumn
(
value
:
"一级返佣"
)
{
CellWidth
=
15
,
HAlignmentEnum
=
HAlignmentEnum
.
CENTER
,
VAlignmentEnum
=
VAlignmentEnum
.
CENTER
},
new
ExcelColumn
(
value
:
"二级返佣"
)
{
CellWidth
=
15
,
HAlignmentEnum
=
HAlignmentEnum
.
CENTER
,
VAlignmentEnum
=
VAlignmentEnum
.
CENTER
},
new
ExcelColumn
(
value
:
"其他"
)
{
CellWidth
=
15
,
HAlignmentEnum
=
HAlignmentEnum
.
CENTER
,
VAlignmentEnum
=
VAlignmentEnum
.
CENTER
},
new
ExcelColumn
(
value
:
"合计数"
)
{
CellWidth
=
15
,
HAlignmentEnum
=
HAlignmentEnum
.
CENTER
,
VAlignmentEnum
=
VAlignmentEnum
.
CENTER
},
new
ExcelColumn
(
value
:
"已付"
)
{
CellWidth
=
15
,
HAlignmentEnum
=
HAlignmentEnum
.
CENTER
,
VAlignmentEnum
=
VAlignmentEnum
.
CENTER
},
new
ExcelColumn
(
value
:
"应付"
)
{
CellWidth
=
15
,
HAlignmentEnum
=
HAlignmentEnum
.
CENTER
,
VAlignmentEnum
=
VAlignmentEnum
.
CENTER
},
new
ExcelColumn
(
value
:
"毛利"
)
{
CellWidth
=
15
,
HAlignmentEnum
=
HAlignmentEnum
.
CENTER
,
VAlignmentEnum
=
VAlignmentEnum
.
CENTER
},
new
ExcelColumn
(
value
:
"毛利率"
)
{
CellWidth
=
15
,
HAlignmentEnum
=
HAlignmentEnum
.
CENTER
,
VAlignmentEnum
=
VAlignmentEnum
.
CENTER
}
},
};
slist
.
Add
(
header
);
try
{
demodel
.
TenantId
=
requestParm
.
TenantId
;
demodel
.
MallBaseId
=
requestParm
.
MallBaseId
;
var
list
=
statisticsModule
.
GetAllOrderProfitLossList
(
demodel
);
foreach
(
var
item
in
list
)
{
item
.
ALLCommission
=
item
.
CostFreight
+
item
.
CostMoney
+
item
.
PackingMoney
+
item
.
GoodsFreight
+
item
.
OneCommission
+
item
.
TwoCommission
+
item
.
OtherPrice
;
item
.
NoPaid
=
item
.
ALLCommission
-
item
.
Paid
;
item
.
GrossProfit
=
item
.
AllPrice
-
item
.
ALLCommission
;
item
.
GrossProfitRate
=
item
.
AllPrice
==
0
?
0
:
item
.
GrossProfit
/
item
.
AllPrice
;
}
#
region
组装数据
int
Num
=
0
;
foreach
(
var
item
in
list
)
{
Num
++;
ExcelDataSource
datarow
=
new
ExcelDataSource
()
{
ExcelRows
=
new
List
<
ExcelColumn
>(
30
)
{
new
ExcelColumn
(
value
:
Num
.
ToString
()){
},
}
};
datarow
.
ExcelRows
.
Add
(
new
ExcelColumn
(
value
:
item
.
OrderNo
)
{
});
datarow
.
ExcelRows
.
Add
(
new
ExcelColumn
(
value
:
item
.
GoodsName
+
item
.
Specification
)
{
});
datarow
.
ExcelRows
.
Add
(
new
ExcelColumn
(
value
:
item
.
Unit_Price
.
ToString
(
"#0.00"
))
{
});
datarow
.
ExcelRows
.
Add
(
new
ExcelColumn
(
value
:
item
.
Number
.
ToString
())
{
});
datarow
.
ExcelRows
.
Add
(
new
ExcelColumn
(
value
:
item
.
SupplierName
)
{
});
datarow
.
ExcelRows
.
Add
(
new
ExcelColumn
(
value
:
item
.
Final_Price
.
ToString
(
"#0.00"
))
{
});
datarow
.
ExcelRows
.
Add
(
new
ExcelColumn
(
value
:
item
.
FreightMoney
)
{
});
datarow
.
ExcelRows
.
Add
(
new
ExcelColumn
(
value
:
item
.
AllPrice
.
ToString
(
"#0.00"
))
{
});
datarow
.
ExcelRows
.
Add
(
new
ExcelColumn
(
value
:
"0"
)
{
});
datarow
.
ExcelRows
.
Add
(
new
ExcelColumn
(
value
:
item
.
AllPrice
.
ToString
(
"#0.00"
))
{
});
datarow
.
ExcelRows
.
Add
(
new
ExcelColumn
(
value
:
item
.
CostMoney
.
ToString
(
"#0.00"
))
{
});
datarow
.
ExcelRows
.
Add
(
new
ExcelColumn
(
value
:
item
.
PackingMoney
.
ToString
(
"#0.00"
))
{
});
datarow
.
ExcelRows
.
Add
(
new
ExcelColumn
(
value
:
item
.
CostFreight
.
ToString
(
"#0.00"
))
{
});
datarow
.
ExcelRows
.
Add
(
new
ExcelColumn
(
value
:
item
.
GoodsFreight
.
ToString
(
"#0.00"
))
{
});
datarow
.
ExcelRows
.
Add
(
new
ExcelColumn
(
value
:
item
.
OneCommission
.
ToString
(
"#0.00"
))
{
});
datarow
.
ExcelRows
.
Add
(
new
ExcelColumn
(
value
:
item
.
TwoCommission
.
ToString
(
"#0.00"
))
{
});
datarow
.
ExcelRows
.
Add
(
new
ExcelColumn
(
value
:
item
.
OtherPrice
.
ToString
(
"#0.00"
))
{
});
datarow
.
ExcelRows
.
Add
(
new
ExcelColumn
(
value
:
item
.
ALLCommission
.
ToString
(
"#0.00"
))
{
});
datarow
.
ExcelRows
.
Add
(
new
ExcelColumn
(
value
:
item
.
Paid
.
ToString
(
"#0.00"
))
{
});
datarow
.
ExcelRows
.
Add
(
new
ExcelColumn
(
value
:
item
.
NoPaid
.
ToString
(
"#0.00"
))
{
});
datarow
.
ExcelRows
.
Add
(
new
ExcelColumn
(
value
:
item
.
GrossProfit
.
ToString
(
"#0.00"
))
{
});
datarow
.
ExcelRows
.
Add
(
new
ExcelColumn
(
value
:
item
.
GrossProfitRate
.
ToString
(
"#0.00"
))
{
});
slist
.
Add
(
datarow
);
}
#
endregion
var
byteData
=
ExcelTempLateHelper
.
ToExcelExtend
(
slist
);
return
File
(
byteData
,
"application/octet-stream"
,
ExcelName
);
}
catch
(
Exception
ex
)
{
LogHelper
.
Write
(
ex
,
string
.
Format
(
"GetFileFromWebApi_requestData: {0}"
,
JsonHelper
.
Serialize
(
requestMsg
.
ToString
())));
var
byteData1
=
ExcelTempLateHelper
.
ToExcelExtend
(
slist
);
return
File
(
byteData1
,
"application/octet-stream"
,
ExcelName
);
}
}
#
endregion
}
}
\ No newline at end of file
Mall.WebApi/Controllers/AppletWeChat/WeChatNotifyController.cs
View file @
22451ba6
...
@@ -27,6 +27,7 @@ namespace Mall.WebApi.Controllers.AppletWeChat
...
@@ -27,6 +27,7 @@ namespace Mall.WebApi.Controllers.AppletWeChat
UserCommonModule
userCommonModule
=
new
UserCommonModule
();
UserCommonModule
userCommonModule
=
new
UserCommonModule
();
//public UserModule userModule = new UserModule();
Module
.
MarketingCenter
.
RechargeModule
rechargeModule
=
new
Module
.
MarketingCenter
.
RechargeModule
();
Module
.
MarketingCenter
.
RechargeModule
rechargeModule
=
new
Module
.
MarketingCenter
.
RechargeModule
();
private
IHttpContextAccessor
_accessor
;
private
IHttpContextAccessor
_accessor
;
...
@@ -68,7 +69,7 @@ namespace Mall.WebApi.Controllers.AppletWeChat
...
@@ -68,7 +69,7 @@ namespace Mall.WebApi.Controllers.AppletWeChat
#
region
新增订单支付信息
#
region
新增订单支付信息
userCommonModule
.
InsertOrderPayInfo
(
UserId
,
OrderId
,
sOrderNo
,
TransactionId
,
Common
.
Enum
.
Goods
.
OrderPayTypeEnum
.
WeChatPay
,
PayType
,
dPaid
,
PayDate
,
0
);
userCommonModule
.
InsertOrderPayInfo
(
UserId
,
OrderId
,
sOrderNo
,
TransactionId
,
Common
.
Enum
.
Goods
.
OrderPayTypeEnum
.
WeChatPay
,
PayType
,
dPaid
,
PayDate
,
0
);
#
endregion
#
endregion
}
}
...
@@ -92,7 +93,7 @@ namespace Mall.WebApi.Controllers.AppletWeChat
...
@@ -92,7 +93,7 @@ namespace Mall.WebApi.Controllers.AppletWeChat
/// <summary>
/// <summary>
///
订单
支付回调
///
会员充值
支付回调
/// </summary>
/// </summary>
/// <returns></returns>
/// <returns></returns>
[
HttpGet
]
[
HttpGet
]
...
@@ -142,5 +143,57 @@ namespace Mall.WebApi.Controllers.AppletWeChat
...
@@ -142,5 +143,57 @@ namespace Mall.WebApi.Controllers.AppletWeChat
// return ApiResult.Failed("", reqXmlFAIL);
// return ApiResult.Failed("", reqXmlFAIL);
}
}
}
}
///// <summary>
///// 会员购买支付回调
///// </summary>
///// <returns></returns>
//[HttpGet]
//[HttpPost]
//public string MemberBuyNotify()
//{
// var req = new RequestHandler();
// App_Code.PayUtil PayUtil = new App_Code.PayUtil();
// var result = PayUtil.Notify(_accessor);
// if (result.IsSuccess)
// {
// var dic = ((Dictionary<string, string>)result.Data);
// //开始回写订单状态
// lock (_lock)
// {
// string sOrderNo = dic["sOrderNo"];//订单号 时间挫+OrderId
// int OrderId = Convert.ToInt32(sOrderNo[17..]);
// decimal dPaid = Convert.ToDecimal(dic["dPrice"]) / 100;
// string sPayerOpenID = dic["sPayerOpenID"];
// int UserId = Convert.ToInt32(dic["bIsRecharge"]);
// string TransactionId = dic["sTradeNo"];
// string PayType = dic["OrderPayType"];
// DateTime PayDate = DateTime.ParseExact(dic["PayDate"], "yyyyMMddHHmmss", System.Globalization.CultureInfo.CurrentCulture);//转换时间
// #region 修改会员购买支付信息
// userModule.UpdateMemberBuy(UserId, OrderId, sOrderNo, TransactionId, Common.Enum.Goods.OrderPayTypeEnum.WeChatPay, dPaid, PayDate);
// #endregion
// }
// //告诉微信我们已经处理成功,不需要再调用我们的接口了
// req.SetParameter("return_code", "SUCCESS");
// req.SetParameter("return_msg", "OK");
// var reqXml = req.ParseXml();
// return reqXml;
// // return ApiResult.Success("", reqXml);
// }
// else
// {
// req.SetParameter("return_code", "FAIL");
// req.SetParameter("return_msg", "订单失败");
// var reqXmlFAIL = req.ParseXml();
// LogHelper.Write(null, "Notify返回信息:" + reqXmlFAIL);
// return reqXmlFAIL;
// // return ApiResult.Failed("", reqXmlFAIL);
// }
//}
}
}
}
}
\ No newline at end of file
Mall.WebApi/Controllers/AppletWeChat/WeChatPayController.cs
View file @
22451ba6
...
@@ -194,6 +194,92 @@ namespace Mall.WebApi.Controllers.AppletWeChat
...
@@ -194,6 +194,92 @@ namespace Mall.WebApi.Controllers.AppletWeChat
#
region
会员购买
#
region
会员购买
/// <summary>
/// 微信支付
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
public
ApiResult
GetMemberBuyPayInfo
()
{
var
request
=
RequestParm
;
var
userInfo
=
AppletUserInfo
;
if
(
userInfo
==
null
)
{
return
ApiResult
.
Failed
(
"请登录"
);
}
RB_Member_Buy_Extend
demodel
=
JsonConvert
.
DeserializeObject
<
RB_Member_Buy_Extend
>(
request
.
msg
.
ToString
());
string
sPayInfo
=
string
.
Empty
;
if
(!
demodel
.
PayWay
.
HasValue
)
{
return
ApiResult
.
Failed
(
"请选择支付方式"
);
}
//查询充值信息
if
(!
demodel
.
GradeId
.
HasValue
)
{
return
ApiResult
.
Failed
(
"请选择您需要购买的会员等级"
);
}
//查询用户的openId
var
userModel
=
userModule
.
GetMemberUserEntityModule
(
new
RB_Member_User_Extend
{
MallBaseId
=
userInfo
.
MallBaseId
,
TenantId
=
userInfo
.
TenantId
,
Id
=
userInfo
.
UserId
});
if
(
userModel
==
null
)
{
return
ApiResult
.
Failed
(
"用户不存在"
);
}
string
payGoodsName
=
"会员等级购买"
;
var
rechargeRulesModel
=
userModule
.
GetMemberGradeList
(
new
RB_Member_Grade_Extend
{
MallBaseId
=
userInfo
.
MallBaseId
,
TenantId
=
userInfo
.
TenantId
,
Grade
=
demodel
.
GradeId
}).
FirstOrDefault
();
if
(
rechargeRulesModel
==
null
)
{
return
ApiResult
.
Failed
(
"您选择的会员等级不存在"
);
}
if
(
userModel
.
MemberGrade
>=
rechargeRulesModel
.
Grade
)
{
return
ApiResult
.
Failed
(
"购买会员等级低于您当前会员等级"
);
}
if
(
rechargeRulesModel
.
IsMemberBuy
==
1
)
{
if
(
rechargeRulesModel
.
MemberBuyMoney
!=
demodel
.
Money
)
{
return
ApiResult
.
Failed
(
"会员购买支付金额有误,请稍后重试"
);
}
demodel
.
GradeName
=
rechargeRulesModel
.
Name
;
}
else
{
return
ApiResult
.
Failed
(
"当前会员等级不能购买"
);
}
Random
R
=
new
Random
();
int
Rstr
=
R
.
Next
(
111
,
999
);
demodel
.
OrderNo
=
DateTime
.
Now
.
ToString
(
"yyyyMMddHHmmssfff"
)
+
Rstr
;
demodel
.
UserId
=
userInfo
.
UserId
;
demodel
.
MallBaseId
=
userInfo
.
MallBaseId
;
demodel
.
TenantId
=
userInfo
.
TenantId
;
demodel
.
PayState
=
0
;
demodel
.
Status
=
0
;
demodel
.
CreateDate
=
DateTime
.
Now
;
//新增充值记录
int
memberBuyId
=
userModule
.
AddMemberBuy
(
demodel
);
if
(
memberBuyId
==
0
)
{
return
ApiResult
.
Failed
(
"购买会员失败"
);
}
string
sOrderNo
=
(
System
.
DateTime
.
Now
.
ToString
(
"yyyyMMddHHmmssfff"
))
+
memberBuyId
;
//根据订单号获取微信支付配置信息
RB_MiniProgram_Extend
miniProgram
=
new
RB_MiniProgram_Extend
();
//2020年5月26号新增
miniProgram
=
programModule
.
GetMiniProgramModule
(
new
RB_MiniProgram_Extend
{
MallBaseId
=
userInfo
.
MallBaseId
,
TenantId
=
userInfo
.
TenantId
});
App_Code
.
PayUtil
payUtil
=
new
App_Code
.
PayUtil
();
switch
((
int
)
demodel
.
PayWay
)
{
case
1
:
//微信支付
sPayInfo
=
App_Code
.
PayUtil
.
GetMinUnifiedOrder
(
sOrderNo
,
payGoodsName
,
Convert
.
ToDecimal
(
rechargeRulesModel
.
MemberBuyMoney
),
userInfo
.
UserId
.
ToString
(),
userModel
.
OpenId
,
Config
.
sTenpayMemberBuyNotify
,
miniProgram
,
_accessor
,
System
.
Net
.
Dns
.
GetHostEntry
(
System
.
Net
.
Dns
.
GetHostName
()).
AddressList
.
FirstOrDefault
(
address
=>
address
.
AddressFamily
==
System
.
Net
.
Sockets
.
AddressFamily
.
InterNetwork
)?.
ToString
());
break
;
default
:
break
;
}
return
ApiResult
.
Success
(
""
,
sPayInfo
);
}
#
endregion
#
endregion
...
...
Mall.WebApi/Controllers/MarketingCenter/StatisticsController.cs
View file @
22451ba6
...
@@ -9,6 +9,7 @@ using Mall.Model.Query;
...
@@ -9,6 +9,7 @@ using Mall.Model.Query;
using
System
;
using
System
;
using
Mall.Common.Plugin
;
using
Mall.Common.Plugin
;
using
System.Collections.Generic
;
using
System.Collections.Generic
;
using
Mall.Module.User
;
namespace
Mall.WebApi.Controllers.MarketingCenter
namespace
Mall.WebApi.Controllers.MarketingCenter
{
{
...
@@ -19,7 +20,6 @@ namespace Mall.WebApi.Controllers.MarketingCenter
...
@@ -19,7 +20,6 @@ namespace Mall.WebApi.Controllers.MarketingCenter
public
class
StatisticsController
:
BaseController
public
class
StatisticsController
:
BaseController
{
{
public
StatisticsModule
statisticsModule
=
new
StatisticsModule
();
public
StatisticsModule
statisticsModule
=
new
StatisticsModule
();
#
region
数据统计
#
region
数据统计
/// <summary>
/// <summary>
/// 数据概况
/// 数据概况
...
...
Mall.WebApi/Controllers/User/AppletUserController.cs
View file @
22451ba6
...
@@ -32,7 +32,7 @@ namespace Mall.WebApi.Controllers.User
...
@@ -32,7 +32,7 @@ namespace Mall.WebApi.Controllers.User
private
readonly
Module
.
MarketingCenter
.
CouponModule
couponModule
=
new
Module
.
MarketingCenter
.
CouponModule
();
private
readonly
Module
.
MarketingCenter
.
CouponModule
couponModule
=
new
Module
.
MarketingCenter
.
CouponModule
();
private
readonly
Module
.
MarketingCenter
.
RechargeModule
rechargeModule
=
new
Module
.
MarketingCenter
.
RechargeModule
();
private
readonly
Module
.
MarketingCenter
.
RechargeModule
rechargeModule
=
new
Module
.
MarketingCenter
.
RechargeModule
();
private
readonly
MiniProgramModule
appletWeChatModule
=
new
MiniProgramModule
();
#
region
收货地址
#
region
收货地址
/// <summary>
/// <summary>
...
@@ -1119,56 +1119,6 @@ namespace Mall.WebApi.Controllers.User
...
@@ -1119,56 +1119,6 @@ namespace Mall.WebApi.Controllers.User
#
endregion
#
endregion
#
region
直播房间信息
[
HttpPost
]
[
Obsolete
]
public
ApiResult
GetLiveHouseList
()
{
var
req
=
RequestParm
;
var
userInfo
=
AppletUserInfo
;
ResultPageModel
pagelist
=
JsonConvert
.
DeserializeObject
<
ResultPageModel
>(
RequestParm
.
msg
.
ToString
());
Model
.
Entity
.
AppletWeChat
.
RB_Live_House
demodel
=
JsonConvert
.
DeserializeObject
<
Model
.
Entity
.
AppletWeChat
.
RB_Live_House
>(
RequestParm
.
msg
.
ToString
());
demodel
.
TenantId
=
userInfo
.
TenantId
;
demodel
.
MallBaseId
=
userInfo
.
MallBaseId
;
var
list
=
appletWeChatModule
.
GetLiveHousePageList
(
pagelist
.
pageIndex
,
pagelist
.
pageSize
,
out
long
count
,
demodel
);
pagelist
.
count
=
Convert
.
ToInt32
(
count
);
pagelist
.
pageData
=
list
.
Select
(
x
=>
new
{
x
.
ID
,
x
.
roomid
,
x
.
name
,
x
.
anchor_img
,
x
.
anchor_name
,
x
.
cover_img
,
x
.
live_status
,
start_time
=
GetTime
(
x
.
start_time
),
end_time
=
GetTime
(
x
.
end_time
),
});
return
ApiResult
.
Success
(
""
,
pagelist
);
}
/// <summary>
/// 时间戳转为C#格式时间
/// </summary>
/// <param name="timeStamp">Unix时间戳格式</param>
/// <returns>C#格式时间</returns>
[
Obsolete
]
public
static
string
GetTime
(
string
timeStamp
)
{
try
{
DateTime
dtStart
=
TimeZone
.
CurrentTimeZone
.
ToLocalTime
(
new
DateTime
(
1970
,
1
,
1
));
long
lTime
=
long
.
Parse
(
timeStamp
+
"0000000"
);
TimeSpan
toNow
=
new
TimeSpan
(
lTime
);
return
dtStart
.
Add
(
toNow
).
ToString
(
"yyyy-MM-dd HH:mm:ss"
);
}
catch
(
Exception
)
{
return
""
;
}
}
#
endregion
}
}
}
}
\ No newline at end of file
Mall.WebApi/Controllers/User/UserController.cs
View file @
22451ba6
...
@@ -705,6 +705,36 @@ namespace Mall.WebApi.Controllers.User
...
@@ -705,6 +705,36 @@ namespace Mall.WebApi.Controllers.User
}
}
}
}
/// <summary>
/// 获取用户分页列表
/// </summary>
/// <returns></returns>
[
HttpPost
]
public
ApiResult
GetMemberBuyUserPageList
()
{
var
parms
=
RequestParm
;
ResultPageModel
pagelist
=
JsonConvert
.
DeserializeObject
<
ResultPageModel
>(
parms
.
msg
.
ToString
());
RB_Member_Buy_Extend
demodel
=
JsonConvert
.
DeserializeObject
<
RB_Member_Buy_Extend
>(
parms
.
msg
.
ToString
());
demodel
.
TenantId
=
Convert
.
ToInt32
(
parms
.
uid
);
demodel
.
MallBaseId
=
parms
.
MallBaseId
;
demodel
.
PayState
=
1
;
var
list
=
userModule
.
GetMemberBuyPageList
(
pagelist
.
pageIndex
,
pagelist
.
pageSize
,
out
long
count
,
demodel
);
pagelist
.
count
=
Convert
.
ToInt32
(
count
);
pagelist
.
pageData
=
list
.
Select
(
x
=>
new
{
x
.
Id
,
x
.
OrderNo
,
x
.
UserName
,
x
.
Money
,
x
.
GradeName
,
PayTime
=
x
.
PayTime
.
HasValue
?
x
.
PayTime
.
Value
.
ToString
(
"yyyy-MM-dd HH:mm:ss"
)
:
""
});
return
ApiResult
.
Success
(
""
,
pagelist
);
}
#
endregion
#
endregion
#
region
分销商基础
#
region
分销商基础
...
@@ -1362,6 +1392,7 @@ namespace Mall.WebApi.Controllers.User
...
@@ -1362,6 +1392,7 @@ namespace Mall.WebApi.Controllers.User
}));
}));
}
}
#
endregion
#
endregion
#
region
分销商申请管理
#
region
分销商申请管理
...
@@ -1874,7 +1905,8 @@ namespace Mall.WebApi.Controllers.User
...
@@ -1874,7 +1905,8 @@ namespace Mall.WebApi.Controllers.User
string
msg
=
userModule
.
SetDistributorRemitAudit
(
RemitId
,
Type
,
Remark
,
re
.
uid
,
re
.
MallBaseId
);
string
msg
=
userModule
.
SetDistributorRemitAudit
(
RemitId
,
Type
,
Remark
,
re
.
uid
,
re
.
MallBaseId
);
if
(
msg
==
""
)
if
(
msg
==
""
)
{
{
if
(
Type
==
3
)
{
if
(
Type
==
3
)
{
var
umodel
=
userModule
.
GetMemberUserInfo
(
model
.
UserId
??
0
);
var
umodel
=
userModule
.
GetMemberUserInfo
(
model
.
UserId
??
0
);
new
MiniProgramMsgModule
().
SendWithdrawFailMsg
(
model
.
TenantId
,
model
.
MallBaseId
,
umodel
.
OpenId
,
(
model
.
RemitMoney
??
0
).
ToString
(),
"提现申请已被拒绝"
);
new
MiniProgramMsgModule
().
SendWithdrawFailMsg
(
model
.
TenantId
,
model
.
MallBaseId
,
umodel
.
OpenId
,
(
model
.
RemitMoney
??
0
).
ToString
(),
"提现申请已被拒绝"
);
}
}
...
@@ -2082,7 +2114,7 @@ namespace Mall.WebApi.Controllers.User
...
@@ -2082,7 +2114,7 @@ namespace Mall.WebApi.Controllers.User
pagelist
.
pageData
=
list
.
Select
(
x
=>
new
pagelist
.
pageData
=
list
.
Select
(
x
=>
new
{
{
x
.
Id
,
x
.
Id
,
AliasName
=
x
.
Name
,
AliasName
=
x
.
Name
,
x
.
Photo
,
x
.
Photo
,
x
.
Price
,
x
.
Price
,
x
.
Source
,
x
.
Source
,
...
...
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