Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
E
Education
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
黄奎
Education
Commits
dc5e2b96
Commit
dc5e2b96
authored
Sep 15, 2021
by
吴春
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
提交代码
parent
26367e79
Hide whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
798 additions
and
134 deletions
+798
-134
Config.cs
Edu.Common/Config.cs
+12
-0
ApiRequestFromEnum.cs
Edu.Common/Enum/ApiRequestFromEnum.cs
+5
-0
AppletStudentInfo.cs
Edu.Model/CacheModel/AppletStudentInfo.cs
+39
-0
RB_Member_User.cs
Edu.Model/Entity/Mall/RB_Member_User.cs
+254
-0
RB_Member_User_Extend.cs
Edu.Model/ViewModel/Mall/RB_Member_User_Extend.cs
+207
-0
PaperModule.cs
Edu.Module.Exam/PaperModule.cs
+39
-6
StudentModule.cs
Edu.Module.User/StudentModule.cs
+21
-0
RB_Member_UserRepository.cs
Edu.Repository/Mall/RB_Member_UserRepository.cs
+69
-0
AppletLoginController.cs
Edu.WebApi/Controllers/Applet/AppletLoginController.cs
+40
-2
LoginController.cs
Edu.WebApi/Controllers/User/LoginController.cs
+1
-16
appsettings.json
Edu.WebApi/appsettings.json
+111
-110
No files found.
Edu.Common/Config.cs
View file @
dc5e2b96
...
...
@@ -695,6 +695,18 @@ namespace Edu.Common
}
}
//JHMallUserOpenId
/// <summary>
/// 甲鹤教育固定用户OpenId
/// </summary>
public
static
string
JHMallUserOpenId
{
get
{
return
ReadConfigKey
(
"JHMallUserOpenId"
);
}
}
/// <summary>
/// 甲鹤教育小程序id
...
...
Edu.Common/Enum/ApiRequestFromEnum.cs
View file @
dc5e2b96
...
...
@@ -43,6 +43,11 @@ namespace Edu.Common.Enum
/// </summary>
[
EnumField
(
"Mall"
)]
Mall
=
7
,
/// <summary>
/// MallMiniProgram【生成Token使用】
/// </summary>
[
EnumField
(
"MallMiniProgram"
)]
MallMiniProgram
=
8
,
/// <summary>
...
...
Edu.Model/CacheModel/AppletStudentInfo.cs
View file @
dc5e2b96
...
...
@@ -103,5 +103,44 @@ namespace Edu.Model.CacheModel
/// 服务人员电话
/// </summary>
public
string
EnterPhone
{
get
;
set
;
}
/// <summary>
/// 电商-token
/// </summary>
public
string
MallToken
{
get
;
set
;
}
/// <summary>
/// 电商-JHTenantId
/// </summary>
public
string
JHTenantId
{
get
;
set
;
}
/// <summary>
/// 电商-JHMallBaseId
/// </summary>
public
string
JHMallBaseId
{
get
;
set
;
}
/// <summary>
/// 电商-甲鹤用户id
/// </summary>
public
int
JHMallUserId
{
get
;
set
;
}
/// <summary>
/// 电商-甲鹤用户OpenId
/// </summary>
public
string
JHMallUserOpenId
{
get
;
set
;
}
/// <summary>
/// 性别
/// </summary>
public
int
StuSex
{
get
;
set
;
}
/// <summary>
/// 生日
/// </summary>
public
string
StuBirth
{
get
;
set
;
}
}
}
\ No newline at end of file
Edu.Model/Entity/Mall/RB_Member_User.cs
0 → 100644
View file @
dc5e2b96
using
System
;
using
System.Collections.Generic
;
using
System.Text
;
using
VT.FW.DB
;
namespace
Edu.Model.Entity.Mall
{
/// <summary>
/// 商户用户表实体
/// </summary>
[
Serializable
]
[
DB
(
ConnectionName
=
"MallConnection"
)]
public
class
RB_Member_User
{
/// <summary>
/// Id
/// </summary>
public
int
Id
{
get
;
set
;
}
/// <summary>
/// 用户名称
/// </summary>
public
string
Name
{
get
;
set
;
}
/// <summary>
/// 别名
/// </summary>
public
string
AliasName
{
get
;
set
;
}
/// <summary>
/// 头像
/// </summary>
public
string
Photo
{
get
;
set
;
}
/// <summary>
/// 来源 1微信 2支付宝
/// </summary>
public
int
?
Source
{
get
;
set
;
}
/// <summary>
/// 唯一识别码
/// </summary>
public
string
OpenId
{
get
;
set
;
}
/// <summary>
/// 手机号码
/// </summary>
public
string
Moblie
{
get
;
set
;
}
/// <summary>
/// 会员等级 0 普通 根据会员等级表
/// </summary>
public
int
?
MemberGrade
{
get
;
set
;
}
/// <summary>
/// 订单数量
/// </summary>
public
int
?
OrderNum
{
get
;
set
;
}
/// <summary>
/// 优惠卷数量
/// </summary>
public
int
?
CouponsNum
{
get
;
set
;
}
/// <summary>
/// 卡卷数量
/// </summary>
public
int
?
CardVolumeNum
{
get
;
set
;
}
/// <summary>
/// 余额
/// </summary>
public
decimal
?
Balance
{
get
;
set
;
}
/// <summary>
/// 积分
/// </summary>
public
int
?
Integral
{
get
;
set
;
}
/// <summary>
/// 总消费
/// </summary>
public
decimal
?
TotalConsumption
{
get
;
set
;
}
/// <summary>
/// CreateDate
/// </summary>
public
DateTime
?
CreateDate
{
get
;
set
;
}
/// <summary>
/// 上级 0表示总部
/// </summary>
public
int
?
SuperiorId
{
get
;
set
;
}
/// <summary>
/// 黑名单 1是 0否
/// </summary>
public
int
?
Blacklist
{
get
;
set
;
}
/// <summary>
/// 是否是分销商 1是 2否
/// </summary>
public
int
IsDistributor
{
get
;
set
;
}
/// <summary>
/// 联系方式
/// </summary>
public
string
ContactWay
{
get
;
set
;
}
/// <summary>
/// 备注
/// </summary>
public
string
Remark
{
get
;
set
;
}
/// <summary>
/// 商户号id
/// </summary>
public
int
TenantId
{
get
;
set
;
}
/// <summary>
/// 修改时间
/// </summary>
public
DateTime
?
UpdateDate
{
get
;
set
;
}
/// <summary>
/// 小程序id
/// </summary>
public
int
MallBaseId
{
get
;
set
;
}
/// <summary>
/// 秘钥
/// </summary>
public
string
SecretKey
{
get
;
set
;
}
/// <summary>
/// 成为下线条件
/// </summary>
public
int
?
DownlineCondition
{
get
;
set
;
}
/// <summary>
/// 是否已成为下线 1是 2否
/// </summary>
public
int
?
IsBeDownline
{
get
;
set
;
}
/// <summary>
/// 等待成为上线id
/// </summary>
public
int
?
WaitSuperiorId
{
get
;
set
;
}
/// <summary>
/// 成为下线时间
/// </summary>
public
DateTime
?
BeDownlineDate
{
get
;
set
;
}
public
int
SmallShopId
{
get
;
set
;
}
/// <summary>
/// 公司毛利利润比例
/// </summary>
public
decimal
CompanyProfitRate
{
get
;
set
;
}
/// <summary>
/// 职位Id,(1-领队导游)
/// </summary>
public
int
PostId
{
get
;
set
;
}
/// <summary>
/// 类型
/// </summary>
public
int
?
UserPageType
{
get
;
set
;
}
/// <summary>
/// 2020-10-28号新增 (微信小程序获取的手机号码)
/// </summary>
public
string
PhoneNum
{
get
;
set
;
}
/// <summary>
/// 是否结算用户,1-是 2020-11-10 Addd By:w
/// </summary>
public
int
IsSettlement
{
get
;
set
;
}
/// <summary>
/// 教育点数(针对购买直播产品)
/// </summary>
public
int
PointNum
{
get
;
set
;
}
/// <summary>
/// 教育学校id
/// </summary>
public
int
EduSchoolId
{
get
;
set
;
}
/// <summary>
/// 是否管理员 1是
/// </summary>
public
int
IsAdmin
{
get
;
set
;
}
}
}
Edu.Model/ViewModel/Mall/RB_Member_User_Extend.cs
0 → 100644
View file @
dc5e2b96
using
System
;
using
System.Collections.Generic
;
using
System.Text
;
using
Edu.Model.Entity.Mall
;
using
VT.FW.DB
;
namespace
Edu.Model.ViewModel.Mall
{
/// <summary>
/// 商户用户表扩展实体
/// </summary>
[
Serializable
]
[
DB
(
ConnectionName
=
"MallConnection"
)]
public
class
RB_Member_User_Extend
:
RB_Member_User
{
/// <summary>
/// 是否查询电商利润 1是
/// </summary>
public
int
?
IsSelectCommpany
{
get
;
set
;
}
/// <summary>
/// 是否用户头像为空 1是 2否
/// </summary>
public
int
?
IsEmptyUserPhoto
{
get
;
set
;
}
/// <summary>
/// 会员等级名称
/// </summary>
public
string
MemberGradeName
{
get
;
set
;
}
/// <summary>
/// 导出枚举ids
/// </summary>
public
List
<
int
>
ExcelEnumIds
{
get
;
set
;
}
/// <summary>
/// 用户ids
/// </summary>
public
string
UserIds
{
get
;
set
;
}
/// <summary>
/// 获取用户
/// </summary>
public
int
?
MinUserId
{
get
;
set
;
}
/// <summary>
/// 粉象等级ID
/// </summary>
public
int
?
FXGradeId
{
get
;
set
;
}
/// <summary>
/// 粉象等级ids
/// </summary>
public
string
FXGradeIds
{
get
;
set
;
}
/// <summary>
/// 用户名str
/// </summary>
public
string
UserNameStr
{
get
;
set
;
}
/// <summary>
/// 开始时间
/// </summary>
public
string
StartTime
{
get
;
set
;
}
/// <summary>
/// 结束时间
/// </summary>
public
string
EndTime
{
get
;
set
;
}
/// <summary>
/// 下线数量
/// </summary>
public
int
?
ReferralsNum
{
get
;
set
;
}
/// <summary>
/// 分销商名称
/// </summary>
public
string
DistributorName
{
get
;
set
;
}
/// <summary>
/// 分销商电话
/// </summary>
public
string
DistributorMobile
{
get
;
set
;
}
#
region
数据统计
-
分销排行字段
/// <summary>
/// 累计佣金
/// </summary>
public
decimal
TotalCommission
{
get
;
set
;
}
/// <summary>
/// 已提现佣金
/// </summary>
public
decimal
Price
{
get
;
set
;
}
/// <summary>
/// 待结算
/// </summary>
public
decimal
WaitCommission
{
get
;
set
;
}
/// <summary>
/// 总佣金
/// </summary>
public
decimal
Commission
{
get
;
set
;
}
/// <summary>
/// 直接下级数据
/// </summary>
public
int
ChildrenNum
{
get
;
set
;
}
/// <summary>
/// 总下级数
/// </summary>
public
int
AllChildrenNum
{
get
;
set
;
}
/// <summary>
/// 订单数
/// </summary>
public
int
AllOrderNum
{
get
;
set
;
}
/// <summary>
/// 排序
/// </summary>
public
string
OrderBy
{
get
;
set
;
}
/// <summary>
/// 上级名称
/// </summary>
public
string
PName1
{
get
;
set
;
}
/// <summary>
/// 再上级名称
/// </summary>
public
string
PName2
{
get
;
set
;
}
/// <summary>
/// 再在上级名称
/// </summary>
public
string
PName3
{
get
;
set
;
}
#
endregion
/// <summary>
/// 小程序排序
/// </summary>
public
int
SortNum
{
get
;
set
;
}
/// <summary>
/// 是否已提现 1是 2否
/// </summary>
public
int
IsRemit
{
get
;
set
;
}
/// <summary>
/// 用户等级头像
/// </summary>
public
string
Icon
{
get
;
set
;
}
/// <summary>
/// 是否赞羊使用0-否,1-是
/// </summary>
public
int
IsZanYangUse
{
get
;
set
;
}
/// <summary>
/// 是否直接下级[1-是]
/// </summary>
public
int
IsDirect
{
get
;
set
;
}
/// <summary>
/// 店铺Id
/// </summary>
public
int
ShopId
{
get
;
set
;
}
/// <summary>
/// 店铺名称
/// </summary>
public
string
ShopName
{
get
;
set
;
}
/// <summary>
/// 真实订单数量
/// </summary>
public
int
RealOrderNum
{
get
;
set
;
}
/// <summary>
/// 实收金额
/// </summary>
public
decimal
Income
{
get
;
set
;
}
/// <summary>
/// 口令优惠券=5其他都等于0
/// </summary>
public
int
CounponPassword
{
get
;
set
;
}
/// <summary>
/// 口令
/// </summary>
public
string
KeyWord
{
get
;
set
;
}
/// <summary>
/// 2021-05-08 Add By:W 针对教育是否绑定学员信息
/// </summary>
public
int
StudentId
{
get
;
set
;
}
/// <summary>
/// 性别0-保密,1-男,2-女
/// </summary>
public
int
Gender
{
get
;
set
;
}
}
}
Edu.Module.Exam/PaperModule.cs
View file @
dc5e2b96
...
...
@@ -466,7 +466,7 @@ namespace Edu.Module.Exam
//题库难易程度随机选题
else
if
(
item
.
ChooseType
==
2
)
{
foreach
(
var
subItem
in
item
.
ChooseList
.
Where
(
qitem
=>
qitem
.
ChooseNum
>
0
))
foreach
(
var
subItem
in
item
.
ChooseList
.
Where
(
qitem
=>
qitem
.
ChooseNum
>
0
))
{
var
tempList
=
tempQuestioinList
?.
Where
(
qitem
=>
qitem
.
DifficultyType
==
subItem
.
DifficultyType
)?.
OrderBy
(
qitem
=>
Guid
.
NewGuid
())?.
Take
(
subItem
.
ChooseNum
)?.
ToList
();
if
(
tempList
!=
null
&&
tempList
.
Count
>
0
)
...
...
@@ -1091,7 +1091,7 @@ namespace Edu.Module.Exam
dItem
.
PaperId
=
model
.
PaperId
;
dItem
.
Group_Id
=
model
.
Group_Id
;
dItem
.
School_Id
=
model
.
School_Id
;
if
(
dItem
.
Id
==
0
)
{
dItem
.
ExamStatus
=
ExamTestStatusEnum
.
NotFinishTest
;
...
...
@@ -1391,7 +1391,7 @@ namespace Edu.Module.Exam
questionModel
.
Score
,
Answer
=
isShowAnswer
?
questionModel
.
Answer
:
sItem
.
StundetAnswer
,
sItem
.
StundetAnswer
,
QuestionAnswerList
=
quesAnswerList
,
QuestionAnswerList
=
quesAnswerList
,
AnswerList
=
isShowAnswer
?
answerList
:
new
List
<
object
>(),
questionModel
.
AnswerParse
,
sItem
.
StudentScore
,
...
...
@@ -1460,6 +1460,38 @@ namespace Edu.Module.Exam
}
examPublish
.
GuestId
=
GuestId
;
extModel
.
GuestId
=
GuestId
;
int
ExamStatusTemp
=
0
;
//-1-缺考, 0-未开始,1-已开始,2-已考试,3-已阅卷
if
(
examPublish
.
ExamStartTime
>
System
.
DateTime
.
Now
)
{
ExamStatusTemp
=
0
;
}
else
if
(
examPublish
.
ExamStartTime
<
System
.
DateTime
.
Now
&&
examPublish
.
ExamEndTime
>
System
.
DateTime
.
Now
)
{
if
(
Convert
.
ToInt32
(
examinationStudentModel
?.
ExamStatus
??
ExamTestStatusEnum
.
NotFinishTest
)
==
2
)
{
ExamStatusTemp
=
1
;
}
if
(
Convert
.
ToInt32
(
examinationStudentModel
?.
ExamStatus
??
ExamTestStatusEnum
.
NotFinishTest
)
==
1
)
{
ExamStatusTemp
=
2
;
}
}
else
if
(
examPublish
.
ExamEndTime
<
System
.
DateTime
.
Now
)
{
if
(
Convert
.
ToInt32
(
examinationStudentModel
?.
ExamStatus
??
ExamTestStatusEnum
.
NotFinishTest
)
==
2
)
{
ExamStatusTemp
=
-
1
;
}
else
if
(
Convert
.
ToInt32
(
examinationStudentModel
?.
ExamStatus
??
ExamTestStatusEnum
.
NotFinishTest
)
==
1
)
{
ExamStatusTemp
=
2
;
}
else
if
(
Convert
.
ToInt32
(
examinationStudentModel
?.
ExamStatus
??
ExamTestStatusEnum
.
NotFinishTest
)
==
3
)
{
ExamStatusTemp
=
3
;
}
}
return
new
{
Publish
=
new
...
...
@@ -1484,6 +1516,7 @@ namespace Edu.Module.Exam
TotalScore
=
examinationStudentModel
?.
TotalScore
??
0
,
StuComment
=
examinationStudentModel
?.
StuComment
??
""
,
ExamStatus
=
examinationStudentModel
?.
ExamStatus
??
0
,
ExamStatusTemp
,
Paper
=
paperObj
};
}
...
...
@@ -1499,7 +1532,7 @@ namespace Edu.Module.Exam
/// <param name="list">学生题目数据</param>
/// <returns></returns>
[
TransactionCallHandler
]
public
virtual
bool
SetStuExamPaperDetailsModule
(
int
PublishId
,
int
GuestId
,
int
PaperId
,
int
UserGroupId
,
List
<
RB_Examination_Details_ViewModel
>
list
,
int
Exam_Student_Id
)
public
virtual
bool
SetStuExamPaperDetailsModule
(
int
PublishId
,
int
GuestId
,
int
PaperId
,
int
UserGroupId
,
List
<
RB_Examination_Details_ViewModel
>
list
,
int
Exam_Student_Id
)
{
bool
flag
=
false
;
var
modelPublish
=
GetExaminationPublishModule
(
PublishId
);
...
...
@@ -1508,7 +1541,7 @@ namespace Edu.Module.Exam
{
foreach
(
var
item
in
list
)
{
analysisQuestion
.
CheckQuestion
(
item
.
QuestionTypeKey
,
item
.
QuestionContent
,
item
.
Answer
,
out
string
newAnswer
,
IsRequire
:
false
);
analysisQuestion
.
CheckQuestion
(
item
.
QuestionTypeKey
,
item
.
QuestionContent
,
item
.
Answer
,
out
string
newAnswer
,
IsRequire
:
false
);
RB_Examination_StudentDetails_ViewModel
model
=
new
RB_Examination_StudentDetails_ViewModel
()
{
Id
=
item
.
StundetDetailsId
,
...
...
@@ -1604,7 +1637,7 @@ namespace Edu.Module.Exam
{
totalScore
+=
item
.
StudentScore
;
}
RB_Examination_StudentDetails_ViewModel
model
=
new
RB_Examination_StudentDetails_ViewModel
()
{
Id
=
item
.
StundetDetailsId
,
...
...
Edu.Module.User/StudentModule.cs
View file @
dc5e2b96
...
...
@@ -2,7 +2,9 @@
using
Edu.Common.Enum
;
using
Edu.Common.Enum.User
;
using
Edu.Model.CacheModel
;
using
Edu.Model.ViewModel.Mall
;
using
Edu.Model.ViewModel.User
;
using
Edu.Repository.Mall
;
using
Edu.Repository.System
;
using
Edu.Repository.User
;
using
System
;
...
...
@@ -34,6 +36,12 @@ namespace Edu.Module.User
/// <summary>
/// 小程序用户仓储层对象 add by:W 2021-09-15
/// </summary>
private
readonly
RB_Member_UserRepository
member_UserRepository
=
new
RB_Member_UserRepository
();
/// <summary>
/// 获取学生列表
/// </summary>
...
...
@@ -279,5 +287,18 @@ namespace Edu.Module.User
{
return
studentRepository
.
GetStudentInfo
(
Student_Id
,
Group_Id
);
}
#
region
小程序用户
/// <summary>
/// 根据条件获取用户实体
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
public
RB_Member_User_Extend
GetMemberUserEntityModule
(
RB_Member_User_Extend
query
)
{
return
member_UserRepository
.
GetMemberUserEntityRepository
(
query
);
}
#
endregion
}
}
Edu.Repository/Mall/RB_Member_UserRepository.cs
0 → 100644
View file @
dc5e2b96
using
System
;
using
System.Collections.Generic
;
using
System.Linq
;
using
System.Text
;
using
Edu.Model.Entity.Mall
;
using
Edu.Model.ViewModel.Mall
;
namespace
Edu.Repository.Mall
{
public
class
RB_Member_UserRepository
:
BaseRepository
<
RB_Member_User
>
{
/// <summary>
/// 根据查询条件获取用户实体类
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
public
RB_Member_User_Extend
GetMemberUserEntityRepository
(
RB_Member_User_Extend
query
)
{
string
where
=
" 1=1 "
;
if
(
query
.
TenantId
>
0
)
{
where
+=
$@" and
{
nameof
(
RB_Member_User
.
TenantId
)}
=
{
query
.
TenantId
}
"
;
}
if
(
query
.
MallBaseId
>
0
)
{
where
+=
$@" and
{
nameof
(
RB_Member_User
.
MallBaseId
)}
=
{
query
.
MallBaseId
}
"
;
}
if
(
query
.
Id
>
0
)
{
where
+=
$@" and
{
nameof
(
RB_Member_User
.
Id
)}
=
{
query
.
Id
}
"
;
}
if
(!
string
.
IsNullOrEmpty
(
query
.
Name
))
{
where
+=
$@" and
{
nameof
(
RB_Member_User
.
Name
)}
like '%
{
query
.
Name
}
%'"
;
}
if
(!
string
.
IsNullOrEmpty
(
query
.
AliasName
))
{
where
+=
$@" and
{
nameof
(
RB_Member_User
.
AliasName
)}
like '%
{
query
.
AliasName
}
%'"
;
}
if
(
query
.
Source
>
0
)
{
where
+=
$@" and
{
nameof
(
RB_Member_User
.
Source
)}
=
{(
int
)
query
.
Source
}
"
;
}
if
(!
string
.
IsNullOrEmpty
(
query
.
Moblie
))
{
where
+=
$@" and
{
nameof
(
RB_Member_User
.
Moblie
)}
like '%
{
query
.
Moblie
}
%'"
;
}
if
(
query
.
MemberGrade
>
0
)
{
where
+=
$@" and
{
nameof
(
RB_Member_User
.
MemberGrade
)}
=
{
query
.
MemberGrade
}
"
;
}
if
(
query
.
SuperiorId
>
0
)
{
where
+=
$@" and
{
nameof
(
RB_Member_User
.
SuperiorId
)}
=
{
query
.
SuperiorId
}
"
;
}
if
(
query
.
IsEmptyUserPhoto
==
1
)
{
where
+=
$@" and IFNULL(
{
nameof
(
RB_Member_User
.
Photo
)}
,'')=''"
;
}
//HK06-01新增查询条件
if
(
query
.
OpenId
!=
null
&&
!
string
.
IsNullOrWhiteSpace
(
query
.
OpenId
))
{
where
+=
$@" and
{
nameof
(
RB_Member_User
.
OpenId
)}
LIKE '
{
query
.
OpenId
}
%'"
;
}
string
sql
=
$@"select * from RB_Member_User where
{
where
}
"
;
return
Get
<
RB_Member_User_Extend
>(
sql
).
FirstOrDefault
();
}
}
}
Edu.WebApi/Controllers/Applet/AppletLoginController.cs
View file @
dc5e2b96
...
...
@@ -7,6 +7,7 @@ using Edu.Common.API;
using
Edu.Common.Enum.App
;
using
Edu.Common.Plugin
;
using
Edu.Model.CacheModel
;
using
Edu.Model.ViewModel.Mall
;
using
Edu.Model.ViewModel.User
;
using
Edu.Module.Public
;
using
Edu.Module.User
;
...
...
@@ -144,6 +145,36 @@ namespace Edu.WebApi.Controllers.APP
string
token
=
WebApiTokenHelper
.
CreateToken
(
Common
.
GlobalKey
.
JWT_User_Key
,
eduUserInfo
);
#
region
获取甲鹤小程序端
token
//查询用户信息
var
umodel
=
studentModule
.
GetMemberUserEntityModule
(
new
RB_Member_User_Extend
()
{
TenantId
=
Convert
.
ToInt32
(
Config
.
JHTenantId
),
MallBaseId
=
Convert
.
ToInt32
(
Config
.
JHMallBaseId
),
Source
=
1
,
OpenId
=
Config
.
JHMallUserOpenId
});
//if (umodel == null)
//{
// return ApiResult.Failed(message: "用户不存在", new { Error = -1 });
//}
IUserInfoToken
mallUserInfo
=
new
ErpTokenUserInfo
{
uid
=
umodel
.
Id
.
ToString
(),
requestFrom
=
Common
.
Enum
.
ApiRequestFromEnum
.
MallMiniProgram
};
#
region
JWT
IDateTimeProvider
provider
=
new
UtcDateTimeProvider
();
var
now
=
provider
.
GetNow
().
AddMinutes
(-
1
);
var
unixEpoch
=
new
DateTime
(
1970
,
1
,
1
,
0
,
0
,
0
,
DateTimeKind
.
Utc
);
// or use JwtValidator.UnixEpoch
var
secondsSinceEpoch
=
Math
.
Round
((
now
-
unixEpoch
).
TotalSeconds
);
var
payload
=
new
Dictionary
<
string
,
object
>
{
{
"iat"
,
secondsSinceEpoch
},
{
"exp"
,
secondsSinceEpoch
+
Config
.
JwtExpirTime
},
{
"mall_userInfo"
,
mallUserInfo
}
};
IJwtAlgorithm
algorithm
=
new
HMACSHA256Algorithm
();
IJsonSerializer
serializer
=
new
JsonNetSerializer
();
IBase64UrlEncoder
urlEncoder
=
new
JwtBase64UrlEncoder
();
IJwtEncoder
encoder
=
new
JwtEncoder
(
algorithm
,
serializer
,
urlEncoder
);
string
secret
=
Config
.
JwtSecretKey
;
string
mallUserToken
=
encoder
.
Encode
(
payload
,
secret
);
#
endregion
#
endregion
AppletStudentInfo
obj
=
new
AppletStudentInfo
{
Id
=
model
.
Id
,
...
...
@@ -155,12 +186,19 @@ namespace Edu.WebApi.Controllers.APP
AccountName
=
model
.
AccountName
,
SchoolName
=
studentModel
.
SName
,
TeacherName
=
studentModel
.
TeacherName
,
CourseName
=
studentModel
.
CourseName
,
CourseName
=
studentModel
.
CourseName
,
StuSex
=
studentModel
.
StuSex
,
StuBirth
=
studentModel
.
StuBirth
.
HasValue
?
studentModel
.
StuBirth
.
Value
.
ToString
(
"yyyy-MM-dd"
)
:
""
,
EnterPhone
=
Cache
.
User
.
UserReidsCache
.
GetUserLoginInfo
(
studentModel
.
EnterID
).
UserMobile
,
Token
=
token
,
GroupLogo
=
model
.
GroupLogo
,
UserIcon
=
model
.
UserIcon
,
ApiRequestFromEnum
=
Common
.
Enum
.
ApiRequestFromEnum
.
AppletStudent
,
MallToken
=
mallUserToken
,
JHMallBaseId
=
Config
.
JHMallBaseId
,
JHTenantId
=
Config
.
JHTenantId
,
JHMallUserId
=
umodel
?.
Id
??
0
,
JHMallUserOpenId
=
Config
.
JHMallUserOpenId
,
UploadConfig
=
new
{
uploadConfig
?.
Bucket
,
...
...
@@ -266,7 +304,7 @@ namespace Edu.WebApi.Controllers.APP
Token
=
token
,
GroupLogo
=
model
.
GroupLogo
,
UserIcon
=
model
.
UserIcon
,
EnterPhone
=
Cache
.
User
.
UserReidsCache
.
GetUserLoginInfo
(
studentModel
.
EnterID
).
UserMobile
,
EnterPhone
=
Cache
.
User
.
UserReidsCache
.
GetUserLoginInfo
(
studentModel
.
EnterID
).
UserMobile
,
ApiRequestFromEnum
=
Common
.
Enum
.
ApiRequestFromEnum
.
AppletStudent
,
UploadConfig
=
new
{
...
...
Edu.WebApi/Controllers/User/LoginController.cs
View file @
dc5e2b96
...
...
@@ -176,20 +176,6 @@ namespace Edu.WebApi.Controllers.User
uid
=
JHTenantId
,
groupId
=
model
.
Group_Id
};
#
region
JWT
// string mallToken = WebApiTokenHelper.CreateToken(Common.GlobalKey.JWT_Mall_User_Key, mallJHUserInfo);
#
endregion
#
endregion
#
region
获取甲鹤教育
Token
#
region
JWT
JWT
.
IDateTimeProvider
provider2
=
new
JWT
.
UtcDateTimeProvider
();
...
...
@@ -210,9 +196,8 @@ namespace Edu.WebApi.Controllers.User
string
malltokenJH
=
encoder2
.
Encode
(
payload2
,
secret2
);
#
endregion
#
endregion
#
endregion
var
treeList
=
menuModule
.
GetPostMenuTreeModule
(
new
Model
.
ViewModel
.
System
.
RB_Menu_ViewModel
()
{
MenuType
=
accountType
...
...
Edu.WebApi/appsettings.json
View file @
dc5e2b96
{
"ConnectionStrings"
:
{
"DefaultConnection"
:
"server=192.168.20.214;user id=reborn;password=Reborn@2018;database=reborn_edu;CharSet=utf8mb4; Convert Zero Datetime=true; "
,
"DefaultConnectionPName"
:
"MySql.Data.MySqlClient"
,
"FinanceConnection"
:
"server=192.168.20.214;user id=reborn;password=Reborn@2018;database=reborn_finance;CharSet=utf8mb4; Convert Zero Datetime=true; "
,
"FinanceConnectionPName"
:
"MySql.Data.MySqlClient"
,
"DataStatisticsConnection"
:
"server=192.168.20.214;user id=reborn;password=Reborn@2018;database=reborn_datastatistics;CharSet=utf8mb4; Convert Zero Datetime=true; "
,
"DataStatisticsConnectionPName"
:
"MySql.Data.MySqlClient"
,
"LogConnection"
:
"server=192.168.20.214;user id=reborn;password=Reborn@2018;database=reborn_sys;CharSet=utf8mb4; Convert Zero Datetime=true; "
,
"LogConnectionPName"
:
"MySql.Data.MySqlClient"
,
"MallConnection"
:
"server=192.168.20.214;user id=reborn;password=Reborn@2018;database=test_reborn_mall;CharSet=utf8mb4; Convert Zero Datetime=true; "
,
"MallConnectionPName"
:
"MySql.Data.MySqlClient"
},
"Logging"
:
{
"LogLevel"
:
{
"Default"
:
"Information"
,
"Microsoft"
:
"Warning"
,
"Microsoft.Hosting.Lifetime"
:
"Information"
}
},
"SettlementRate"
:
"0.60"
,
"SellCommissionFFBL"
:
"0.15"
,
"JwtSecretKey"
:
"@VIITTOREBORN*2018"
,
"MallJwtSecretKey"
:
"@VIITTOREBORN*2018123"
,
"JwtExpirTime"
:
86400
,
"IsSendMsg"
:
2
,
"AllowedHosts"
:
"*"
,
"OpenValidation"
:
"False"
,
"UploadSiteUrl"
:
"http://192.168.1.36:8120"
,
"ViewFileSiteUrl"
:
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com"
,
"ErpViewFileSiteUrl"
:
"http://imgfile.oytour.com"
,
"ErpUrl"
:
"http://localhost:8181/#"
,
"Mongo"
:
"mongodb://47.96.25.130:27017"
,
"MongoDBName"
:
"Edu"
,
"WkHtmlToPdfPath"
:
"D:/wkhtmltopdf/bin/"
,
"FinanceKey"
:
"FinanceMallInsertToERPViitto2020"
,
"PaymentFinanceApi"
:
"http://192.168.20.6:8083/api/Mall/InsertFinanceBatchForMallOut"
,
"IncomeFinanceApi"
:
"http://192.168.20.6:8083/api/Mall/InsertFinanceBatchForMallIn"
,
"sTenpayNotifyUrl"
:
"http://eduapi.oytour.com/api/WeChatPay/WxPayCallback"
,
//下单回调地址
"sTenpayNotifyRefundUrl"
:
"http://eduapi.oytour.com/api/WeChatPay/Refunds"
,
//退款回调地址
"FinanceDateBase"
:
"reborn_finance"
,
"EduDateBase"
:
"uat_reborn_edu"
,
"JHTenantId"
:
"15"
,
"JHMallBaseId"
:
"5"
,
"Notice_BaseKey"
:
"Notice_BaseKey"
,
"EducationContractSchool"
:
"EducationContractSchool"
,
"EducationContractAdmin"
:
"EducationContractAdmin"
,
"QYWeiChatToken"
:
"b3e0ebf63301f80cb8e741cf72fdaf3c"
,
"QYWeiChatEncodingAESKey"
:
"ODRjOGEwYWQxNWJkNDRkMTg2NGJiOWY1ZTE4LCE0NmY"
,
"RabbitMqConfig"
:
{
"HostName"
:
"47.96.25.130"
,
"VirtualHost"
:
"/"
,
"Port"
:
5672
,
"UserName"
:
"guest"
,
"Password"
:
"viitto2019"
,
"QueenName"
:
"vt_sys_message_test"
},
"RedisSetting"
:
{
"RedisServer"
:
"47.96.23.199"
,
"RedisPort"
:
"6379"
,
"RedisPwd"
:
"Viitto2018"
},
"VirtualDirectory"
:
"WebFile"
,
//未填写
未打分
下降比例
"OKRMatterValue"
:
"30,100,100"
,
//是否是线上环境
"IsOnline"
:
false
,
//退课流程编号
"BackClassFlowId"
:
1
,
//分区校长岗位编号
"SchoolPostId"
:
3
,
//教务长
"JiaoWuZhang"
:
8
,
//留学就业部门主管审核编号
[
王涛
]
"StudyAbroadDirectorId"
:
64
,
//留学就业部门负责人审核编号
[
姚顺先
]
"StudyAbroadManagerId"
:
52
,
//合同默认抬头
"ContractDefaultTitle"
:
"JH-DZ-CD-"
,
//消息推送AppId
"PushAppId"
:
"JiaHeJiaoYu"
,
//是否推送消息
"IsPushMessage"
:
"1"
,
//超过下班时间
60
分钟不能打卡
"MoreThanMinutes"
:
60
,
//连续缺课课时
"AbsentHours"
:
12
,
//值班时间验证日期
"DutyDate"
:
"2021-06-30"
,
//调课流程编号
"ChangeClassFlowId"
:
2
,
//停课流程编号
"StopClassFlowId"
:
3
,
//临时上课邀请流程编号
"TempInvitationClassFlowId"
:
4
,
//订单转班流程编号
"OrderTransClassFlowId"
:
5
,
//订单分拆流程编号
"OrderSplitClassFlowId"
:
6
,
//是否开启调课数据验证
"IsOpenChangeClassVerify"
:
1
,
//是否是本地服务
"IsLocal"
:
"1"
,
//临时Token
"TempToken"
:
"47_oXN2xrKRE9InhFMtcCuFx_8Psl2i9TgCYhdHIsvuii5TweFkXvM1J0miUS1sLiRO5GggPOSQqCL1mfVK_ZR9HzV0JAn12TUKctzrBf2p6cFN0gzSUP88Q-iEA3yNgVkL9-DtNpzPL2stAfD7GTRaAIAANL"
,
//学生请假流程编号
"StudentLeaveFlowId"
:
7
,
//组卷审批流程编号
"ZuJuanFlowId"
:
8
,
//考试申请流程编号
"ExamApplyFlowId"
:
9
"ConnectionStrings"
:
{
"DefaultConnection"
:
"server=192.168.20.214;user id=reborn;password=Reborn@2018;database=reborn_edu;CharSet=utf8mb4; Convert Zero Datetime=true; "
,
"DefaultConnectionPName"
:
"MySql.Data.MySqlClient"
,
"FinanceConnection"
:
"server=192.168.20.214;user id=reborn;password=Reborn@2018;database=reborn_finance;CharSet=utf8mb4; Convert Zero Datetime=true; "
,
"FinanceConnectionPName"
:
"MySql.Data.MySqlClient"
,
"DataStatisticsConnection"
:
"server=192.168.20.214;user id=reborn;password=Reborn@2018;database=reborn_datastatistics;CharSet=utf8mb4; Convert Zero Datetime=true; "
,
"DataStatisticsConnectionPName"
:
"MySql.Data.MySqlClient"
,
"LogConnection"
:
"server=192.168.20.214;user id=reborn;password=Reborn@2018;database=reborn_sys;CharSet=utf8mb4; Convert Zero Datetime=true; "
,
"LogConnectionPName"
:
"MySql.Data.MySqlClient"
,
"MallConnection"
:
"server=192.168.20.214;user id=reborn;password=Reborn@2018;database=test_reborn_mall;CharSet=utf8mb4; Convert Zero Datetime=true; "
,
"MallConnectionPName"
:
"MySql.Data.MySqlClient"
},
"Logging"
:
{
"LogLevel"
:
{
"Default"
:
"Information"
,
"Microsoft"
:
"Warning"
,
"Microsoft.Hosting.Lifetime"
:
"Information"
}
},
"SettlementRate"
:
"0.60"
,
"SellCommissionFFBL"
:
"0.15"
,
"JwtSecretKey"
:
"@VIITTOREBORN*2018"
,
"MallJwtSecretKey"
:
"@VIITTOREBORN*2018123"
,
"JwtExpirTime"
:
86400
,
"IsSendMsg"
:
2
,
"AllowedHosts"
:
"*"
,
"OpenValidation"
:
"False"
,
"UploadSiteUrl"
:
"http://192.168.1.36:8120"
,
"ViewFileSiteUrl"
:
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com"
,
"ErpViewFileSiteUrl"
:
"http://imgfile.oytour.com"
,
"ErpUrl"
:
"http://localhost:8181/#"
,
"Mongo"
:
"mongodb://47.96.25.130:27017"
,
"MongoDBName"
:
"Edu"
,
"WkHtmlToPdfPath"
:
"D:/wkhtmltopdf/bin/"
,
"FinanceKey"
:
"FinanceMallInsertToERPViitto2020"
,
"PaymentFinanceApi"
:
"http://192.168.20.6:8083/api/Mall/InsertFinanceBatchForMallOut"
,
"IncomeFinanceApi"
:
"http://192.168.20.6:8083/api/Mall/InsertFinanceBatchForMallIn"
,
"sTenpayNotifyUrl"
:
"http://eduapi.oytour.com/api/WeChatPay/WxPayCallback"
,
//下单回调地址
"sTenpayNotifyRefundUrl"
:
"http://eduapi.oytour.com/api/WeChatPay/Refunds"
,
//退款回调地址
"FinanceDateBase"
:
"reborn_finance"
,
"EduDateBase"
:
"uat_reborn_edu"
,
"JHTenantId"
:
"15"
,
"JHMallBaseId"
:
"5"
,
"JHMallUserOpenId"
:
"oshxs5I-6uR1J91Rs3QVyi2rJIm4"
,
"Notice_BaseKey"
:
"Notice_BaseKey"
,
"EducationContractSchool"
:
"EducationContractSchool"
,
"EducationContractAdmin"
:
"EducationContractAdmin"
,
"QYWeiChatToken"
:
"b3e0ebf63301f80cb8e741cf72fdaf3c"
,
"QYWeiChatEncodingAESKey"
:
"ODRjOGEwYWQxNWJkNDRkMTg2NGJiOWY1ZTE4LCE0NmY"
,
"RabbitMqConfig"
:
{
"HostName"
:
"47.96.25.130"
,
"VirtualHost"
:
"/"
,
"Port"
:
5672
,
"UserName"
:
"guest"
,
"Password"
:
"viitto2019"
,
"QueenName"
:
"vt_sys_message_test"
},
"RedisSetting"
:
{
"RedisServer"
:
"47.96.23.199"
,
"RedisPort"
:
"6379"
,
"RedisPwd"
:
"Viitto2018"
},
"VirtualDirectory"
:
"WebFile"
,
//未填写
未打分
下降比例
"OKRMatterValue"
:
"30,100,100"
,
//是否是线上环境
"IsOnline"
:
false
,
//退课流程编号
"BackClassFlowId"
:
1
,
//分区校长岗位编号
"SchoolPostId"
:
3
,
//教务长
"JiaoWuZhang"
:
8
,
//留学就业部门主管审核编号
[
王涛
]
"StudyAbroadDirectorId"
:
64
,
//留学就业部门负责人审核编号
[
姚顺先
]
"StudyAbroadManagerId"
:
52
,
//合同默认抬头
"ContractDefaultTitle"
:
"JH-DZ-CD-"
,
//消息推送AppId
"PushAppId"
:
"JiaHeJiaoYu"
,
//是否推送消息
"IsPushMessage"
:
"1"
,
//超过下班时间
60
分钟不能打卡
"MoreThanMinutes"
:
60
,
//连续缺课课时
"AbsentHours"
:
12
,
//值班时间验证日期
"DutyDate"
:
"2021-06-30"
,
//调课流程编号
"ChangeClassFlowId"
:
2
,
//停课流程编号
"StopClassFlowId"
:
3
,
//临时上课邀请流程编号
"TempInvitationClassFlowId"
:
4
,
//订单转班流程编号
"OrderTransClassFlowId"
:
5
,
//订单分拆流程编号
"OrderSplitClassFlowId"
:
6
,
//是否开启调课数据验证
"IsOpenChangeClassVerify"
:
1
,
//是否是本地服务
"IsLocal"
:
"1"
,
//临时Token
"TempToken"
:
"47_oXN2xrKRE9InhFMtcCuFx_8Psl2i9TgCYhdHIsvuii5TweFkXvM1J0miUS1sLiRO5GggPOSQqCL1mfVK_ZR9HzV0JAn12TUKctzrBf2p6cFN0gzSUP88Q-iEA3yNgVkL9-DtNpzPL2stAfD7GTRaAIAANL"
,
//学生请假流程编号
"StudentLeaveFlowId"
:
7
,
//组卷审批流程编号
"ZuJuanFlowId"
:
8
,
//考试申请流程编号
"ExamApplyFlowId"
:
9
}
\ No newline at end of file
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