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
3a3eef4e
Commit
3a3eef4e
authored
Jul 21, 2021
by
liudong1993
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of
http://gitlab.oytour.com/Kui2/education
parents
c361414a
74a902ca
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
210 additions
and
88 deletions
+210
-88
RB_Class_ViewModel.cs
Edu.Model/ViewModel/Course/RB_Class_ViewModel.cs
+1
-1
RB_Order_Change_ViewModel.cs
Edu.Model/ViewModel/EduTask/RB_Order_Change_ViewModel.cs
+63
-1
EducationReceiptModule.cs
Edu.Module.EduTask/EducationReceiptModule.cs
+0
-1
OrderChangeModule.cs
Edu.Module.EduTask/OrderChangeModule.cs
+144
-84
RB_ClassRepository.cs
Edu.Repository/Course/RB_ClassRepository.cs
+2
-1
No files found.
Edu.Model/ViewModel/Course/RB_Class_ViewModel.cs
View file @
3a3eef4e
...
@@ -75,7 +75,7 @@ namespace Edu.Model.ViewModel.Course
...
@@ -75,7 +75,7 @@ namespace Edu.Model.ViewModel.Course
public
int
OrderStudentCount
{
get
;
set
;
}
public
int
OrderStudentCount
{
get
;
set
;
}
/// <summary>
/// <summary>
/// 学
习
名称
/// 学
校
名称
/// </summary>
/// </summary>
public
string
SchoolName
{
get
;
set
;
}
public
string
SchoolName
{
get
;
set
;
}
...
...
Edu.Model/ViewModel/EduTask/RB_Order_Change_ViewModel.cs
View file @
3a3eef4e
using
Edu.Model.Entity.EduTask
;
using
Edu.Model.CacheModel
;
using
Edu.Model.Entity.EduTask
;
using
System
;
using
System
;
using
System.Collections.Generic
;
using
System.Collections.Generic
;
using
System.Text
;
using
System.Text
;
...
@@ -45,4 +46,65 @@ namespace Edu.Model.ViewModel.EduTask
...
@@ -45,4 +46,65 @@ namespace Edu.Model.ViewModel.EduTask
/// </summary>
/// </summary>
public
string
EffectiveDateStr
{
get
{
return
Common
.
ConvertHelper
.
FormatDate
(
this
.
EffectiveDate
);
}
}
public
string
EffectiveDateStr
{
get
{
return
Common
.
ConvertHelper
.
FormatDate
(
this
.
EffectiveDate
);
}
}
}
}
/// <summary>
/// 订单转班分拆生成财务单据实体类
/// </summary>
public
class
OrderChangeFinace
{
/// <summary>
/// 更改类型(1-转班,2-分拆)
/// </summary>
public
int
ChangeType
{
get
;
set
;
}
/// <summary>
/// 应收/退款
/// </summary>
public
decimal
InCome
{
get
;
set
;
}
/// <summary>
/// 学员编号
/// </summary>
public
int
GuestId
{
get
;
set
;
}
/// <summary>
/// 学员名称
/// </summary>
public
string
GuestName
{
get
;
set
;
}
/// <summary>
/// 操作人员
/// </summary>
public
UserInfo
UserInfo
{
get
;
set
;
}
/// <summary>
/// 班级编号
/// </summary>
public
int
ClassId
{
get
;
set
;
}
/// <summary>
/// 班级所在校区编号
/// </summary>
public
int
Class_School_Id
{
get
;
set
;
}
/// <summary>
/// 校区名称
/// </summary>
public
string
SName
{
get
;
set
;
}
/// <summary>
/// 班级名称
/// </summary>
public
string
ClassName
{
get
;
set
;
}
/// <summary>
/// 订单编号
/// </summary>
public
int
OrderId
{
get
;
set
;
}
/// <summary>
/// 关联财务单号
/// </summary>
public
int
ReFinanceId
{
get
;
set
;
}
}
}
}
Edu.Module.EduTask/EducationReceiptModule.cs
View file @
3a3eef4e
...
@@ -1156,7 +1156,6 @@ namespace Edu.Module.EduTask
...
@@ -1156,7 +1156,6 @@ namespace Edu.Module.EduTask
{
{
student_BackClassRepository
.
UpdateGuestStateRepository
(
receiptModel
,
auditModel
);
student_BackClassRepository
.
UpdateGuestStateRepository
(
receiptModel
,
auditModel
);
}
}
}
}
return
flag
;
return
flag
;
}
}
...
...
Edu.Module.EduTask/OrderChangeModule.cs
View file @
3a3eef4e
...
@@ -68,11 +68,6 @@ namespace Edu.Module.EduTask
...
@@ -68,11 +68,6 @@ namespace Edu.Module.EduTask
/// </summary>
/// </summary>
private
readonly
RB_Order_GuestRepository
guestRepository
=
new
RB_Order_GuestRepository
();
private
readonly
RB_Order_GuestRepository
guestRepository
=
new
RB_Order_GuestRepository
();
/// <summary>
/// 校区仓储层对象
/// </summary>
private
readonly
RB_SchoolRepository
schoolRepository
=
new
RB_SchoolRepository
();
/// <summary>
/// <summary>
/// 用户日志
/// 用户日志
/// </summary>
/// </summary>
...
@@ -201,7 +196,11 @@ namespace Edu.Module.EduTask
...
@@ -201,7 +196,11 @@ namespace Edu.Module.EduTask
return
false
;
return
false
;
}
}
var
oldOrderModel
=
orderRepository
.
GetEntity
(
orderChangeModel
.
SourceOrderId
);
var
oldOrderModel
=
orderRepository
.
GetEntity
(
orderChangeModel
.
SourceOrderId
);
var
newClassModel
=
classRepository
.
GetEntity
(
orderChangeModel
.
NewClassId
);
var
classList
=
classRepository
.
GetClassListRepository
(
new
RB_Class_ViewModel
()
{
Q_ClassIds
=
orderChangeModel
.
NewClassId
+
","
+
oldOrderModel
.
ClassId
});
var
oldClassModel
=
classList
?.
Where
(
qitem
=>
qitem
.
ClassId
==
oldOrderModel
.
ClassId
)?.
FirstOrDefault
()
??
new
RB_Class_ViewModel
();
var
newClassModel
=
classList
?.
Where
(
qitem
=>
qitem
.
ClassId
==
orderChangeModel
.
NewClassId
)?.
FirstOrDefault
()
??
new
RB_Class_ViewModel
();
var
newCourseModel
=
courseRepository
.
GetEntity
(
orderChangeModel
.
NewCourseId
);
var
newCourseModel
=
courseRepository
.
GetEntity
(
orderChangeModel
.
NewCourseId
);
var
userInfo
=
UserReidsCache
.
GetUserLoginInfo
(
oldOrderModel
.
EnterID
);
var
userInfo
=
UserReidsCache
.
GetUserLoginInfo
(
oldOrderModel
.
EnterID
);
var
guestClassHours
=
GetGuestFinishMinutesModule
(
orderChangeModel
.
OrderGuestId
.
ToString
());
var
guestClassHours
=
GetGuestFinishMinutesModule
(
orderChangeModel
.
OrderGuestId
.
ToString
());
...
@@ -292,8 +291,36 @@ namespace Edu.Module.EduTask
...
@@ -292,8 +291,36 @@ namespace Edu.Module.EduTask
if
(
flag
)
if
(
flag
)
{
{
var
RelevanceFrId
=
CreateExpenditure
(
newPreferPrice
,
guestModel
.
Id
,
guestModel
.
GuestName
,
userInfo
,
oldOrderModel
.
ClassId
,
oldOrderModel
.
OrderId
,
out
string
msg1
);
var
changeModel
=
new
OrderChangeFinace
()
var
InCome
=
CreateInCome
(
newPreferPrice
,
orderModel
.
NewGuestId
,
guestModel
.
GuestName
,
userInfo
,
orderModel
.
ClassId
,
orderModel
.
OrderId
,
RelevanceFrId
,
out
string
msg2
);
{
ChangeType
=
1
,
InCome
=
newPreferPrice
,
GuestId
=
guestModel
.
Id
,
GuestName
=
guestModel
.
GuestName
,
UserInfo
=
userInfo
,
ClassId
=
oldOrderModel
.
ClassId
,
ClassName
=
oldClassModel
.
ClassName
,
Class_School_Id
=
oldClassModel
.
School_Id
,
SName
=
oldClassModel
.
SchoolName
,
OrderId
=
oldOrderModel
.
OrderId
,
};
var
RelevanceFrId
=
CreateExpenditure
(
changeModel
,
out
string
msg1
);
var
changeModel2
=
new
OrderChangeFinace
()
{
ChangeType
=
1
,
InCome
=
newPreferPrice
,
GuestId
=
orderModel
.
NewGuestId
,
GuestName
=
guestModel
.
GuestName
,
UserInfo
=
userInfo
,
ClassId
=
orderModel
.
ClassId
,
ClassName
=
newClassModel
.
ClassName
,
Class_School_Id
=
newClassModel
.
School_Id
,
SName
=
newClassModel
.
SchoolName
,
OrderId
=
orderModel
.
OrderId
,
ReFinanceId
=
RelevanceFrId
};
var
InCome
=
CreateInCome
(
changeModel2
,
out
string
msg2
);
flag
=
RelevanceFrId
>
0
&&
InCome
>
0
;
flag
=
RelevanceFrId
>
0
&&
InCome
>
0
;
}
}
#
endregion
#
endregion
...
@@ -313,9 +340,9 @@ namespace Edu.Module.EduTask
...
@@ -313,9 +340,9 @@ namespace Edu.Module.EduTask
}
}
/// <summary>
/// <summary>
/// 转班收入
/// 转班
、分拆
收入
/// </summary>
/// </summary>
public
int
CreateInCome
(
decimal
InCome
,
int
guestId
,
string
GuestName
,
UserInfo
userInfo
,
int
classId
,
int
orderId
,
int
ReFinanceId
,
out
string
msg
)
public
int
CreateInCome
(
OrderChangeFinace
change
,
out
string
msg
)
{
{
msg
=
""
;
msg
=
""
;
#
region
新增财务单据
#
region
新增财务单据
...
@@ -325,13 +352,12 @@ namespace Edu.Module.EduTask
...
@@ -325,13 +352,12 @@ namespace Edu.Module.EduTask
{
{
CostTypeId
=
533
,
CostTypeId
=
533
,
Number
=
1
,
Number
=
1
,
OriginalMoney
=
InCome
,
OriginalMoney
=
change
.
InCome
,
UnitPrice
=
InCome
,
UnitPrice
=
change
.
InCome
,
Remark
=
"学员【"
+
GuestName
+
"】收入"
Remark
=
"学员【"
+
change
.
GuestName
+
"】收入"
}
}
};
};
var
classModel
=
classRepository
.
GetEntity
(
classId
);
string
Remark
=
"【"
+
(
change
.
ClassName
??
""
)
+
"】下,订单"
+
change
.
OrderId
+
" 客人"
+(
change
.
ChangeType
==
1
?
"转班"
:
"分拆"
);
string
Remark
=
"【"
+
(
classModel
?.
ClassName
??
""
)
+
"】下,订单"
+
orderId
+
" 客人转班"
;
var
financeObj
=
new
var
financeObj
=
new
{
{
BType
=
1
,
BType
=
1
,
...
@@ -339,28 +365,28 @@ namespace Edu.Module.EduTask
...
@@ -339,28 +365,28 @@ namespace Edu.Module.EduTask
IsPublic
=
7
,
IsPublic
=
7
,
ClientType
=
3659
,
ClientType
=
3659
,
CurrencyId
=
1
,
CurrencyId
=
1
,
GuestId
=
g
uestId
,
GuestId
=
change
.
G
uestId
,
WBMoney
=
InCome
,
WBMoney
=
change
.
InCome
,
PayDate
=
DateTime
.
Now
.
ToString
(
"yyyy-MM-dd"
),
PayDate
=
DateTime
.
Now
.
ToString
(
"yyyy-MM-dd"
),
TemplateId
=
186
,
TemplateId
=
186
,
OrderSource
=
17
,
OrderSource
=
17
,
OrderID
=
o
rderId
,
OrderID
=
change
.
O
rderId
,
TCIDList
=
new
List
<
int
>()
{
classId
},
TCIDList
=
new
List
<
int
>()
{
c
hange
.
C
lassId
},
OtherType
=
0
,
OtherType
=
0
,
ReFinanceId
,
change
.
ReFinanceId
,
CallBackReFrId
=
ReFinanceId
,
CallBackReFrId
=
change
.
ReFinanceId
,
Remark
,
Remark
,
detailList
,
detailList
,
CreateBy
=
u
serInfo
.
Id
,
CreateBy
=
change
.
U
serInfo
.
Id
,
RB_Branch_Id
=
c
lassModel
.
School_Id
,
RB_Branch_Id
=
c
hange
.
Class_
School_Id
,
RB_Depart_Id
=
u
serInfo
.
DeptId
,
RB_Depart_Id
=
change
.
U
serInfo
.
DeptId
,
RB_Group_Id
=
u
serInfo
.
Group_Id
,
RB_Group_Id
=
change
.
U
serInfo
.
Group_Id
,
RB_CreateByName
=
u
serInfo
.
AccountName
,
RB_CreateByName
=
change
.
U
serInfo
.
AccountName
,
RB_DepartName
=
u
serInfo
.
DeptName
,
RB_DepartName
=
change
.
U
serInfo
.
DeptName
,
RB_BranchName
=
schoolRepository
.
GetEntity
(
classModel
.
School_Id
)
?.
SName
??
""
,
RB_BranchName
=
change
?.
SName
??
""
,
RB_GroupName
=
u
serInfo
.
GroupName
,
RB_GroupName
=
change
.
U
serInfo
.
GroupName
,
FinanceType
=
2
,
FinanceType
=
2
,
RemitterName
=
"转班
"
,
RemitterName
=
change
.
ChangeType
==
1
?
"转班"
:
"分拆
"
,
TradeDate
=
Common
.
ConvertHelper
.
FormatDate
(
DateTime
.
Now
),
TradeDate
=
Common
.
ConvertHelper
.
FormatDate
(
DateTime
.
Now
),
AccountNumber
=
Common
.
ConvertHelper
.
FormatDate
(
DateTime
.
Now
),
AccountNumber
=
Common
.
ConvertHelper
.
FormatDate
(
DateTime
.
Now
),
};
};
...
@@ -381,29 +407,31 @@ namespace Edu.Module.EduTask
...
@@ -381,29 +407,31 @@ namespace Edu.Module.EduTask
{
{
Id
=
0
,
Id
=
0
,
Type
=
1
,
Type
=
1
,
CreateBy
=
u
serInfo
.
Id
,
CreateBy
=
change
.
U
serInfo
.
Id
,
CreateTime
=
DateTime
.
Now
,
CreateTime
=
DateTime
.
Now
,
Group_Id
=
u
serInfo
.
Group_Id
,
Group_Id
=
change
.
U
serInfo
.
Group_Id
,
LogContent
=
"生成学员
转班财务单据【"
+
o
rderId
+
"】"
,
LogContent
=
"生成学员
"
+(
change
.
ChangeType
==
1
?
"转班"
:
"分拆"
)
+
"财务单据【"
+
change
.
O
rderId
+
"】"
,
School_Id
=
u
serInfo
.
School_Id
,
School_Id
=
change
.
U
serInfo
.
School_Id
,
SourceId
=
0
SourceId
=
0
});
});
}
}
else
else
{
{
string
message
=
parmsJob
.
GetStringValue
(
"message"
);
string
message
=
parmsJob
.
GetStringValue
(
"message"
);
LogHelper
.
Write
(
"CreateInCome:"
+
message
);
LogHelper
.
Write
(
"CreateInCome:"
+
message
);
msg
+=
o
rderId
+
"创建财务单据失败;"
;
msg
+=
change
.
O
rderId
+
"创建财务单据失败;"
;
}
}
#
endregion
#
endregion
return
frid
;
return
frid
;
}
}
/// <summary>
/// <summary>
/// 转班支出
/// 转班
、分拆
支出
/// </summary>
/// </summary>
public
int
CreateExpenditure
(
decimal
BackMoney
,
int
guestId
,
string
GuestName
,
UserInfo
userInfo
,
int
classId
,
int
orderId
,
out
string
msg
)
/// <param name="change"></param>
/// <param name="msg"></param>
/// <returns></returns>
public
int
CreateExpenditure
(
OrderChangeFinace
change
,
out
string
msg
)
{
{
msg
=
""
;
msg
=
""
;
#
region
新增财务单据
#
region
新增财务单据
...
@@ -413,37 +441,36 @@ namespace Edu.Module.EduTask
...
@@ -413,37 +441,36 @@ namespace Edu.Module.EduTask
{
{
CostTypeId
=
533
,
CostTypeId
=
533
,
Number
=
1
,
Number
=
1
,
OriginalMoney
=
BackMoney
,
OriginalMoney
=
change
.
InCome
,
UnitPrice
=
BackMoney
,
UnitPrice
=
change
.
InCome
,
Remark
=
"学员【"
+
GuestName
+
"】转班支出"
Remark
=
"学员【"
+
change
.
GuestName
+
"】转班支出"
}
}
};
};
var
classModel
=
classRepository
.
GetEntity
(
classId
);
string
Remark
=
"【"
+
(
change
.
ClassName
)
+
"】下,订单"
+
change
.
OrderId
+
" 学员"
+
(
change
.
ChangeType
==
1
?
"转班"
:
"分拆"
)
+
"支出!"
;
string
Remark
=
"【"
+
(
classModel
?.
ClassName
??
""
)
+
"】下,订单"
+
orderId
+
" 学员转班支出!"
;
var
financeObj
=
new
var
financeObj
=
new
{
{
IsPublic
=
7
,
IsPublic
=
7
,
ClientType
=
10
,
ClientType
=
10
,
ClientID
=
3659
,
ClientID
=
3659
,
CurrencyId
=
1
,
CurrencyId
=
1
,
GuestId
=
g
uestId
,
GuestId
=
change
.
G
uestId
,
WBMoney
=
BackMoney
,
WBMoney
=
change
.
InCome
,
PayDate
=
DateTime
.
Now
.
ToString
(
"yyyy-MM-dd"
),
PayDate
=
DateTime
.
Now
.
ToString
(
"yyyy-MM-dd"
),
TemplateId
=
185
,
TemplateId
=
185
,
OrderSource
=
17
,
OrderSource
=
17
,
OrderID
=
o
rderId
,
OrderID
=
change
.
O
rderId
,
TCIDList
=
new
List
<
int
>()
{
classId
},
TCIDList
=
new
List
<
int
>()
{
c
hange
.
C
lassId
},
OtherType
=
0
,
OtherType
=
0
,
Remark
,
Remark
,
detailList
,
detailList
,
CreateBy
=
u
serInfo
.
Id
,
CreateBy
=
change
.
U
serInfo
.
Id
,
RB_Branch_Id
=
c
lassModel
.
School_Id
,
RB_Branch_Id
=
c
hange
.
Class_
School_Id
,
RB_Depart_Id
=
u
serInfo
.
DeptId
,
RB_Depart_Id
=
change
.
U
serInfo
.
DeptId
,
RB_Group_Id
=
u
serInfo
.
Group_Id
,
RB_Group_Id
=
change
.
U
serInfo
.
Group_Id
,
RB_CreateByName
=
u
serInfo
.
AccountName
,
RB_CreateByName
=
change
.
U
serInfo
.
AccountName
,
RB_DepartName
=
u
serInfo
.
DeptName
,
RB_DepartName
=
change
.
U
serInfo
.
DeptName
,
RB_BranchName
=
schoolRepository
.
GetEntity
(
classModel
.
School_Id
)
?.
SName
??
""
,
RB_BranchName
=
change
?.
SName
??
""
,
RB_GroupName
=
u
serInfo
.
GroupName
,
RB_GroupName
=
change
.
U
serInfo
.
GroupName
,
FinanceType
=
2
FinanceType
=
2
};
};
string
sign
=
EncryptionHelper
.
AesEncrypt
(
JsonHelper
.
Serialize
(
financeObj
),
Config
.
ReadConfigKey
(
"FinanceKey"
));
string
sign
=
EncryptionHelper
.
AesEncrypt
(
JsonHelper
.
Serialize
(
financeObj
),
Config
.
ReadConfigKey
(
"FinanceKey"
));
...
@@ -451,7 +478,6 @@ namespace Edu.Module.EduTask
...
@@ -451,7 +478,6 @@ namespace Edu.Module.EduTask
{
{
msg
=
sign
msg
=
sign
};
};
string
apiResult
=
HttpHelper
.
HttpPost
(
Config
.
ReadConfigKey
(
"PaymentFinanceApi"
),
JsonHelper
.
Serialize
(
resultInfo
),
""
);
string
apiResult
=
HttpHelper
.
HttpPost
(
Config
.
ReadConfigKey
(
"PaymentFinanceApi"
),
JsonHelper
.
Serialize
(
resultInfo
),
""
);
JObject
parmsJob
=
JObject
.
Parse
(
apiResult
);
JObject
parmsJob
=
JObject
.
Parse
(
apiResult
);
string
resultCode
=
parmsJob
.
GetStringValue
(
"resultCode"
);
string
resultCode
=
parmsJob
.
GetStringValue
(
"resultCode"
);
...
@@ -463,11 +489,11 @@ namespace Edu.Module.EduTask
...
@@ -463,11 +489,11 @@ namespace Edu.Module.EduTask
{
{
Id
=
0
,
Id
=
0
,
Type
=
1
,
Type
=
1
,
CreateBy
=
u
serInfo
.
Id
,
CreateBy
=
change
.
U
serInfo
.
Id
,
CreateTime
=
DateTime
.
Now
,
CreateTime
=
DateTime
.
Now
,
Group_Id
=
u
serInfo
.
Group_Id
,
Group_Id
=
change
.
U
serInfo
.
Group_Id
,
LogContent
=
"生成学员
转班财务单据【"
+
o
rderId
+
"】"
,
LogContent
=
"生成学员
"
+(
change
.
ChangeType
==
1
?
"转班"
:
"分拆"
)+
"财务单据【"
+
change
.
O
rderId
+
"】"
,
School_Id
=
u
serInfo
.
School_Id
,
School_Id
=
change
.
U
serInfo
.
School_Id
,
SourceId
=
0
SourceId
=
0
});
});
}
}
...
@@ -475,7 +501,7 @@ namespace Edu.Module.EduTask
...
@@ -475,7 +501,7 @@ namespace Edu.Module.EduTask
{
{
string
message
=
parmsJob
.
GetStringValue
(
"message"
);
string
message
=
parmsJob
.
GetStringValue
(
"message"
);
LogHelper
.
Write
(
"CreateExpenditure:"
+
message
);
LogHelper
.
Write
(
"CreateExpenditure:"
+
message
);
msg
+=
o
rderId
+
"创建财务单据失败;"
;
msg
+=
change
.
O
rderId
+
"创建财务单据失败;"
;
}
}
#
endregion
#
endregion
return
frid
;
return
frid
;
...
@@ -544,26 +570,33 @@ namespace Edu.Module.EduTask
...
@@ -544,26 +570,33 @@ namespace Edu.Module.EduTask
if
(
orderChangeModel
!=
null
&&
orderChangeModel
.
Id
>
0
)
if
(
orderChangeModel
!=
null
&&
orderChangeModel
.
Id
>
0
)
{
{
//计算新班级课时数
//计算新班级课时数
var
planList
=
class_PlanRepository
.
GetClassPlanListExtRepository
(
new
RB_Class_Plan_ViewModel
()
{
ClassId
=
orderChangeModel
.
NewClassId
,
StartTime
=
Common
.
ConvertHelper
.
FormatDate
(
orderChangeModel
.
EffectiveDate
)
});
//原订单实体
var
oldOrderModel
=
orderRepository
.
GetEntity
(
orderChangeModel
.
SourceOrderId
);
var
oldOrderModel
=
orderRepository
.
GetEntity
(
orderChangeModel
.
SourceOrderId
);
var
newClassModel
=
classRepository
.
GetEntity
(
orderChangeModel
.
NewClassId
);
var
classList
=
classRepository
.
GetClassListRepository
(
new
RB_Class_ViewModel
()
{
Q_ClassIds
=
orderChangeModel
.
NewClassId
+
","
+
oldOrderModel
.
ClassId
});
var
oldClassModel
=
classList
?.
Where
(
qitem
=>
qitem
.
ClassId
==
oldOrderModel
.
ClassId
)?.
FirstOrDefault
()
??
new
RB_Class_ViewModel
();
var
newClassModel
=
classList
?.
Where
(
qitem
=>
qitem
.
ClassId
==
orderChangeModel
.
NewClassId
)?.
FirstOrDefault
()
??
new
RB_Class_ViewModel
();
//班级有效课时
var
courseValidHourse
=
planList
?.
Sum
(
qitem
=>
qitem
.
TimeHour
)??
0
;
//课程信息
var
newCourseModel
=
courseRepository
.
GetEntity
(
orderChangeModel
.
NewCourseId
);
var
newCourseModel
=
courseRepository
.
GetEntity
(
orderChangeModel
.
NewCourseId
);
//新班级课程的应收
var
newPreferPrice
=
Math
.
Round
(
newCourseModel
.
SellPrice
/
newCourseModel
.
ClassHours
*
courseValidHourse
,
2
);
//原业务员
var
userInfo
=
UserReidsCache
.
GetUserLoginInfo
(
oldOrderModel
.
EnterID
);
var
userInfo
=
UserReidsCache
.
GetUserLoginInfo
(
oldOrderModel
.
EnterID
);
var
guestClassHours
=
GetGuestFinishMinutesModule
(
orderChangeModel
.
OrderGuestId
.
ToString
());
//原学员信息
var
guestModel
=
guestRepository
.
GetEntity
(
orderChangeModel
.
OrderGuestId
);
var
guestModel
=
guestRepository
.
GetEntity
(
orderChangeModel
.
OrderGuestId
);
//计算课时单价
//老订单应收
//原订单应收=原订单应收-新班级课程的应收
//单个人员的课时单价
decimal
oldPreferPrice
=
oldOrderModel
.
PreferPrice
-
newPreferPrice
;
var
unitPrice
=
(
oldOrderModel
.
Income
+
oldOrderModel
.
PlatformTax
)
/
oldOrderModel
.
GuestNum
/
guestModel
.
TotalHours
;
//单人已完成应收
var
singleFinishPrice
=
Math
.
Round
(
guestClassHours
.
FinishClassHours
*
unitPrice
,
2
);
//单人应收
var
singlePreferPrice
=
Math
.
Round
(
guestModel
.
TotalHours
*
unitPrice
,
2
);
//原订单应收=原订单应收-单人应收+单人完成
decimal
oldPreferPrice
=
oldOrderModel
.
PreferPrice
-
singlePreferPrice
+
singleFinishPrice
;
//新订单应收和退款一致
decimal
newPreferPrice
=
singlePreferPrice
-
singleFinishPrice
;
#
region
生成新订单
#
region
生成新订单
var
orderModel
=
new
RB_Order_ViewModel
()
var
orderModel
=
new
RB_Order_ViewModel
()
{
{
...
@@ -589,8 +622,8 @@ namespace Edu.Module.EduTask
...
@@ -589,8 +622,8 @@ namespace Edu.Module.EduTask
StartClassHours
=
0
,
StartClassHours
=
0
,
UpOrderId
=
0
,
UpOrderId
=
0
,
VisitorReserveId
=
0
,
VisitorReserveId
=
0
,
JoinType
=
Common
.
Enum
.
Sale
.
OrderJoinTypeEnum
.
Trans
Order
,
JoinType
=
Common
.
Enum
.
Sale
.
OrderJoinTypeEnum
.
Split
Order
,
TargetJoinType
=
Common
.
Enum
.
Sale
.
OrderJoinTypeEnum
.
Normal
,
TargetJoinType
=
oldOrderModel
.
JoinType
,
EffectTime
=
orderChangeModel
.
EffectiveDate
,
EffectTime
=
orderChangeModel
.
EffectiveDate
,
};
};
orderModel
.
SourceOrderId
=
orderChangeModel
.
SourceOrderId
;
orderModel
.
SourceOrderId
=
orderChangeModel
.
SourceOrderId
;
...
@@ -616,7 +649,7 @@ namespace Edu.Module.EduTask
...
@@ -616,7 +649,7 @@ namespace Edu.Module.EduTask
{
{
{
nameof
(
RB_Order_ViewModel
.
TargetOrderId
),
orderModel
.
OrderId
},
{
nameof
(
RB_Order_ViewModel
.
TargetOrderId
),
orderModel
.
OrderId
},
{
nameof
(
RB_Order_ViewModel
.
PreferPrice
),
oldPreferPrice
},
{
nameof
(
RB_Order_ViewModel
.
PreferPrice
),
oldPreferPrice
},
{
nameof
(
RB_Order_ViewModel
.
TargetJoinType
),(
int
)
Common
.
Enum
.
Sale
.
OrderJoinTypeEnum
.
Trans
Order
},
{
nameof
(
RB_Order_ViewModel
.
TargetJoinType
),(
int
)
Common
.
Enum
.
Sale
.
OrderJoinTypeEnum
.
Split
Order
},
};
};
flag
=
orderRepository
.
Update
(
fileds
,
new
WhereHelper
(
nameof
(
RB_Order_ViewModel
.
OrderId
),
orderChangeModel
.
SourceOrderId
));
flag
=
orderRepository
.
Update
(
fileds
,
new
WhereHelper
(
nameof
(
RB_Order_ViewModel
.
OrderId
),
orderChangeModel
.
SourceOrderId
));
#
endregion
#
endregion
...
@@ -624,7 +657,7 @@ namespace Edu.Module.EduTask
...
@@ -624,7 +657,7 @@ namespace Edu.Module.EduTask
#
region
修改老学员课时相关
#
region
修改老学员课时相关
Dictionary
<
string
,
object
>
guestFileds
=
new
Dictionary
<
string
,
object
>()
Dictionary
<
string
,
object
>
guestFileds
=
new
Dictionary
<
string
,
object
>()
{
{
{
nameof
(
RB_Order_Guest_ViewModel
.
TotalHours
),
guest
ClassHours
.
FinishClassHours
},
{
nameof
(
RB_Order_Guest_ViewModel
.
TotalHours
),
guest
Model
.
TotalHours
-
courseValidHourse
},
{
nameof
(
RB_Order_Guest_ViewModel
.
GuestState
),
7
},
{
nameof
(
RB_Order_Guest_ViewModel
.
GuestState
),
7
},
};
};
if
(
flag
)
if
(
flag
)
...
@@ -637,9 +670,36 @@ namespace Edu.Module.EduTask
...
@@ -637,9 +670,36 @@ namespace Edu.Module.EduTask
if
(
flag
)
if
(
flag
)
{
{
//var RelevanceFrId = CreateExpenditure(newPreferPrice, guestModel.Id, guestModel.GuestName, userInfo, oldOrderModel.ClassId, oldOrderModel.OrderId, out string msg1);
var
change1
=
new
OrderChangeFinace
()
//var InCome = CreateInCome(newPreferPrice, orderModel.NewGuestId, guestModel.GuestName, userInfo, orderModel.ClassId, orderModel.OrderId, RelevanceFrId, out string msg2);
{
//flag = RelevanceFrId > 0 && InCome > 0;
ChangeType
=
2
,
InCome
=
newPreferPrice
,
GuestId
=
guestModel
.
Id
,
GuestName
=
guestModel
.
GuestName
,
UserInfo
=
userInfo
,
ClassId
=
oldOrderModel
.
ClassId
,
ClassName
=
oldClassModel
.
ClassName
,
Class_School_Id
=
oldClassModel
.
School_Id
,
SName
=
oldClassModel
.
SchoolName
,
OrderId
=
oldOrderModel
.
OrderId
};
var
RelevanceFrId
=
CreateExpenditure
(
change1
,
out
string
msg1
);
var
change2
=
new
OrderChangeFinace
()
{
ChangeType
=
2
,
InCome
=
newPreferPrice
,
GuestId
=
orderModel
.
NewGuestId
,
GuestName
=
guestModel
.
GuestName
,
UserInfo
=
userInfo
,
ClassId
=
orderModel
.
ClassId
,
ClassName
=
newClassModel
.
ClassName
,
Class_School_Id
=
newClassModel
.
School_Id
,
SName
=
newClassModel
.
SchoolName
,
OrderId
=
orderModel
.
OrderId
,
ReFinanceId
=
RelevanceFrId
,
};
var
InCome
=
CreateInCome
(
change2
,
out
string
msg2
);
flag
=
RelevanceFrId
>
0
&&
InCome
>
0
;
}
}
#
endregion
#
endregion
}
}
...
...
Edu.Repository/Course/RB_ClassRepository.cs
View file @
3a3eef4e
...
@@ -24,9 +24,10 @@ namespace Edu.Repository.Course
...
@@ -24,9 +24,10 @@ namespace Edu.Repository.Course
{
{
StringBuilder
builder
=
new
StringBuilder
();
StringBuilder
builder
=
new
StringBuilder
();
builder
.
AppendFormat
(
@"
builder
.
AppendFormat
(
@"
SELECT A.* ,IFNULL(B.CourseName,'') AS CourseName,IFNULL(C.GuestNum,0) AS GuestNum
SELECT A.* ,IFNULL(B.CourseName,'') AS CourseName,IFNULL(C.GuestNum,0) AS GuestNum
,IFNULL(D.SName,'') AS SchoolName
FROM rb_class AS A LEFT JOIN rb_course AS B ON A.CouseId=B.CourseId
FROM rb_class AS A LEFT JOIN rb_course AS B ON A.CouseId=B.CourseId
LEFT JOIN(SELECT ClassId,SUM(GuestNum) AS GuestNum FROM rb_order WHERE OrderState=1 GROUP BY ClassId) AS C ON A.ClassId=C.ClassId
LEFT JOIN(SELECT ClassId,SUM(GuestNum) AS GuestNum FROM rb_order WHERE OrderState=1 GROUP BY ClassId) AS C ON A.ClassId=C.ClassId
LEFT JOIN rb_school AS D ON A.School_Id=D.SId
WHERE 1=1
WHERE 1=1
"
);
"
);
builder
.
AppendFormat
(
" AND A.{0}={1} "
,
nameof
(
RB_Class_ViewModel
.
Status
),
(
int
)
DateStateEnum
.
Normal
);
builder
.
AppendFormat
(
" AND A.{0}={1} "
,
nameof
(
RB_Class_ViewModel
.
Status
),
(
int
)
DateStateEnum
.
Normal
);
...
...
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