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
a7e1c459
Commit
a7e1c459
authored
May 08, 2021
by
liudong1993
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of
http://gitlab.oytour.com/Kui2/education
parents
8a4f7afc
842448a2
Show whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
284 additions
and
256 deletions
+284
-256
ConvertHelper.cs
Edu.Common/Plugin/ConvertHelper.cs
+12
-2
RB_Duty_PlanDetails.cs
Edu.Model/Entity/Duty/RB_Duty_PlanDetails.cs
+13
-2
RB_Duty_PlanDetails_ViewModel.cs
Edu.Model/ViewModel/Duty/RB_Duty_PlanDetails_ViewModel.cs
+32
-0
RB_Duty_Plan_ViewModel.cs
Edu.Model/ViewModel/Duty/RB_Duty_Plan_ViewModel.cs
+0
-18
DutyPlanModule.cs
Edu.Module.Duty/DutyPlanModule.cs
+216
-234
RB_Duty_PlanDetailsRepository.cs
Edu.Repository/Duty/RB_Duty_PlanDetailsRepository.cs
+4
-0
DutyPlanController.cs
Edu.WebApi/Controllers/Duty/DutyPlanController.cs
+7
-0
No files found.
Edu.Common/Plugin/ConvertHelper.cs
View file @
a7e1c459
...
@@ -63,8 +63,6 @@ namespace Edu.Common
...
@@ -63,8 +63,6 @@ namespace Edu.Common
return
timeStr
;
return
timeStr
;
}
}
/// <summary>
/// <summary>
/// 获取时间格式
/// 获取时间格式
/// </summary>
/// </summary>
...
@@ -223,6 +221,18 @@ namespace Edu.Common
...
@@ -223,6 +221,18 @@ namespace Edu.Common
return
weekDay
;
return
weekDay
;
}
}
/// <summary>
/// 计算两个时间相差分钟数
/// </summary>
/// <param name="start"></param>
/// <param name="end"></param>
/// <returns></returns>
public
static
int
CalcMinutes
(
DateTime
start
,
DateTime
end
)
{
int
minutes
=
Convert
.
ToInt32
((
end
-
start
).
TotalMinutes
);
return
minutes
;
}
/// <summary>
/// <summary>
/// 是否为时间型字符串
/// 是否为时间型字符串
/// </summary>
/// </summary>
...
...
Edu.Model/Entity/Duty/RB_Duty_PlanDetails.cs
View file @
a7e1c459
using
Edu.Common.Enum
;
using
Edu.Common.Enum
;
using
Edu.Common.Enum.Duty
;
using
System
;
using
System
;
using
VT.FW.DB
;
using
VT.FW.DB
;
...
@@ -32,9 +33,9 @@ namespace Edu.Model.Entity.Duty
...
@@ -32,9 +33,9 @@ namespace Edu.Model.Entity.Duty
public
int
DutyMan
{
get
;
set
;
}
public
int
DutyMan
{
get
;
set
;
}
/// <summary>
/// <summary>
/// 状态
(1-打卡,2-交接)
/// 状态
/// </summary>
/// </summary>
public
int
Status
{
get
;
set
;
}
public
DutyStatusEnum
Status
{
get
;
set
;
}
/// <summary>
/// <summary>
/// 打卡时间
/// 打卡时间
...
@@ -45,5 +46,15 @@ namespace Edu.Model.Entity.Duty
...
@@ -45,5 +46,15 @@ namespace Edu.Model.Entity.Duty
/// 交接时间
/// 交接时间
/// </summary>
/// </summary>
public
DateTime
FinishTime
{
get
;
set
;
}
public
DateTime
FinishTime
{
get
;
set
;
}
/// <summary>
/// 迟到分钟数
/// </summary>
public
int
CheckLateTime
{
get
;
set
;
}
/// <summary>
/// 早退分钟数
/// </summary>
public
int
FinishLateTime
{
get
;
set
;
}
}
}
}
}
Edu.Model/ViewModel/Duty/RB_Duty_PlanDetails_ViewModel.cs
View file @
a7e1c459
...
@@ -97,6 +97,38 @@ namespace Edu.Model.ViewModel.Duty
...
@@ -97,6 +97,38 @@ namespace Edu.Model.ViewModel.Duty
/// 交接工作总数
/// 交接工作总数
/// </summary>
/// </summary>
public
int
HandoverCount
{
get
;
set
;
}
public
int
HandoverCount
{
get
;
set
;
}
/// <summary>
/// 上班打卡时间
/// </summary>
public
string
CheckTimeStr
{
get
{
string
str
=
Common
.
ConvertHelper
.
FormatTimeStr
(
this
.
CheckTime
);
if
(
str
==
""
)
{
str
=
"未打卡"
;
}
return
str
;
}
}
/// <summary>
/// 下班打卡时间
/// </summary>
public
string
FinishTimeStr
{
get
{
string
str
=
Common
.
ConvertHelper
.
FormatTimeStr
(
this
.
FinishTime
);
if
(
str
==
""
)
{
str
=
"未打卡"
;
}
return
str
;
}
}
}
}
/// <summary>
/// <summary>
...
...
Edu.Model/ViewModel/Duty/RB_Duty_Plan_ViewModel.cs
View file @
a7e1c459
...
@@ -47,24 +47,6 @@ namespace Edu.Model.ViewModel.Duty
...
@@ -47,24 +47,6 @@ namespace Edu.Model.ViewModel.Duty
/// </summary>
/// </summary>
public
int
QShift
{
get
;
set
;
}
public
int
QShift
{
get
;
set
;
}
/// <summary>
/// 值班状态(见枚举)
/// </summary>
public
DutyStatusEnum
DutyStatus
{
get
;
set
;
}
/// <summary>
/// 值班状态字符串
/// </summary>
public
string
DutyStatusStr
{
get
{
string
str
=
Common
.
Plugin
.
EnumHelper
.
ToName
(
this
.
DutyStatus
);
return
str
;
}
}
/// <summary>
/// <summary>
/// 校区查询
/// 校区查询
/// </summary>
/// </summary>
...
...
Edu.Module.Duty/DutyPlanModule.cs
View file @
a7e1c459
...
@@ -74,22 +74,22 @@ namespace Edu.Module.Duty
...
@@ -74,22 +74,22 @@ namespace Edu.Module.Duty
foreach
(
var
item
in
list
)
foreach
(
var
item
in
list
)
{
{
item
.
PlanDetails
=
planDetails
?.
Where
(
qitem
=>
qitem
.
PlanId
==
item
.
Id
)?.
ToList
()
??
new
List
<
RB_Duty_PlanDetails_ViewModel
>();
item
.
PlanDetails
=
planDetails
?.
Where
(
qitem
=>
qitem
.
PlanId
==
item
.
Id
)?.
ToList
()
??
new
List
<
RB_Duty_PlanDetails_ViewModel
>();
item
.
DutyStatus
=
0
;
//
item.DutyStatus = 0;
if
(
item
.
PlanDetails
!=
null
&&
item
.
PlanDetails
.
Count
>
0
)
//
if (item.PlanDetails != null && item.PlanDetails.Count > 0)
{
//
{
foreach
(
var
subItem
in
item
.
PlanDetails
)
//
foreach (var subItem in item.PlanDetails)
{
//
{
if
(
subItem
.
Status
==
2
)
//
if (subItem.Status == 2)
{
//
{
subItem
.
DutyStatus
=
DutyStatusEnum
.
DutyFinished
;
//
subItem.DutyStatus = DutyStatusEnum.DutyFinished;
}
//
}
else
//
else
{
//
{
subItem
.
DutyStatus
=
CalcDutyPlanStatusModule
(
item
.
Date
,
subItem
?.
StartTime
,
subItem
?.
EndTime
);
//
subItem.DutyStatus = CalcDutyPlanStatusModule(item.Date, subItem?.StartTime, subItem?.EndTime);
}
//
}
}
//
}
item
.
DutyStatus
=
CalcDutyStatusModule
(
item
.
PlanDetails
);
//
item.DutyStatus = CalcDutyStatusModule(item.PlanDetails);
}
//
}
}
}
}
}
return
list
;
return
list
;
...
@@ -142,78 +142,78 @@ namespace Edu.Module.Duty
...
@@ -142,78 +142,78 @@ namespace Edu.Module.Duty
foreach
(
var
subItem
in
item
.
PlanDetails
)
foreach
(
var
subItem
in
item
.
PlanDetails
)
{
{
subItem
.
WorkContentList
=
new
List
<
RB_Duty_PlanWork_ViewModel
>();
subItem
.
WorkContentList
=
new
List
<
RB_Duty_PlanWork_ViewModel
>();
if
(
subItem
.
Status
==
2
)
//
if (subItem.Status == 2)
{
//
{
subItem
.
DutyStatus
=
DutyStatusEnum
.
DutyFinished
;
//
subItem.DutyStatus = DutyStatusEnum.DutyFinished;
}
//
}
else
//
else
{
//
{
subItem
.
DutyStatus
=
CalcDutyPlanStatusModule
(
item
.
Date
,
subItem
.
StartTime
,
subItem
.
EndTime
);
//
subItem.DutyStatus = CalcDutyPlanStatusModule(item.Date, subItem.StartTime, subItem.EndTime);
}
//
}
if
(
subItem
.
DutyStatus
==
DutyStatusEnum
.
DutyFinished
)
//
if (subItem.DutyStatus == DutyStatusEnum.DutyFinished)
{
//
{
foreach
(
var
dItem
in
dutyContentList
.
Where
(
qitem
=>
qitem
.
PlanType
==
1
&&
qitem
.
PlanId
==
item
.
Id
&&
qitem
.
PlanShift
==
subItem
.
Shift
))
//
foreach (var dItem in dutyContentList.Where(qitem => qitem.PlanType==1 && qitem.PlanId == item.Id && qitem.PlanShift == subItem.Shift))
{
//
{
var
dutyItem
=
dutyItemList
?.
Where
(
qitem
=>
qitem
.
Shifts
.
Contains
(
subItem
.
Shift
.
ToString
())
&&
qitem
.
Id
==
dItem
.
ItemId
&&
qitem
.
ItemSchools
.
Contains
(
item
.
School_Id
.
ToString
()))?.
FirstOrDefault
();
//
var dutyItem = dutyItemList?.Where(qitem => qitem.Shifts.Contains(subItem.Shift.ToString()) && qitem.Id == dItem.ItemId && qitem.ItemSchools.Contains(item.School_Id.ToString()))?.FirstOrDefault();
int
isFinish
=
0
;
//
int isFinish = 0;
if
(
dutyItem
.
ItemType
==
ItemTypeEnum
.
Choice
)
//
if (dutyItem.ItemType == ItemTypeEnum.Choice)
{
//
{
isFinish
=
dItem
.
WorkIsFinish
;
//
isFinish = dItem.WorkIsFinish;
}
//
}
else
if
(
dutyItem
.
ItemType
==
ItemTypeEnum
.
FillIn
)
//
else if (dutyItem.ItemType == ItemTypeEnum.FillIn)
{
//
{
if
(!
string
.
IsNullOrEmpty
(
dItem
.
WorkContent
))
//
if (!string.IsNullOrEmpty(dItem.WorkContent))
{
//
{
isFinish
=
1
;
//
isFinish = 1;
}
//
}
}
//
}
subItem
.
WorkContentList
.
Add
(
new
RB_Duty_PlanWork_ViewModel
()
//
subItem.WorkContentList.Add(new RB_Duty_PlanWork_ViewModel()
{
//
{
Id
=
dItem
.
Id
,
//
Id = dItem.Id,
ItemId
=
dutyItem
?.
Id
??
0
,
//
ItemId = dutyItem?.Id ?? 0,
ItemType
=
dutyItem
?.
ItemType
??
ItemTypeEnum
.
Choice
,
//
ItemType = dutyItem?.ItemType ?? ItemTypeEnum.Choice,
ItemName
=
dutyItem
?.
ItemName
??
""
,
//
ItemName = dutyItem?.ItemName ?? "",
WorkContent
=
dItem
?.
WorkContent
??
""
,
//
WorkContent = dItem?.WorkContent ?? "",
IsChecked
=
isFinish
//
IsChecked=isFinish
});
//
});
}
//
}
}
//
}
else
//
else
{
//
{
foreach
(
var
dutyItem
in
dutyItemList
.
Where
(
qitem
=>
qitem
.
ItemSchools
.
Contains
(
item
.
School_Id
.
ToString
())
&&
qitem
.
Shifts
.
Contains
(
subItem
.
Shift
.
ToString
())))
//
foreach (var dutyItem in dutyItemList.Where(qitem => qitem.ItemSchools.Contains(item.School_Id.ToString()) && qitem.Shifts.Contains(subItem.Shift.ToString())))
{
//
{
int
isFinish
=
0
;
//
int isFinish = 0;
var
dItem
=
dutyContentList
.
Where
(
qitem
=>
qitem
.
PlanType
==
1
&&
qitem
.
PlanId
==
item
.
Id
&&
qitem
.
PlanShift
==
subItem
.
Shift
&&
qitem
.
ItemId
==
dutyItem
.
Id
)?.
FirstOrDefault
();
//
var dItem = dutyContentList.Where(qitem => qitem.PlanType == 1 && qitem.PlanId == item.Id && qitem.PlanShift == subItem.Shift && qitem.ItemId == dutyItem.Id)?.FirstOrDefault();
if
(
dutyItem
.
ItemType
==
ItemTypeEnum
.
Choice
)
//
if (dutyItem.ItemType == ItemTypeEnum.Choice)
{
//
{
isFinish
=
dItem
?.
WorkIsFinish
??
0
;
//
isFinish = dItem?.WorkIsFinish??0;
}
//
}
else
if
(
dutyItem
.
ItemType
==
ItemTypeEnum
.
FillIn
)
//
else if (dutyItem.ItemType == ItemTypeEnum.FillIn)
{
//
{
if
(!
string
.
IsNullOrEmpty
(
dItem
?.
WorkContent
))
//
if (!string.IsNullOrEmpty(dItem?.WorkContent))
{
//
{
isFinish
=
1
;
//
isFinish = 1;
}
//
}
}
//
}
subItem
.
WorkContentList
.
Add
(
new
RB_Duty_PlanWork_ViewModel
()
//
subItem.WorkContentList.Add(new RB_Duty_PlanWork_ViewModel()
{
//
{
Id
=
dItem
?.
Id
??
0
,
//
Id = dItem?.Id??0,
ItemId
=
dutyItem
?.
Id
??
0
,
//
ItemId = dutyItem?.Id ?? 0,
ItemType
=
dutyItem
?.
ItemType
??
ItemTypeEnum
.
Choice
,
//
ItemType = dutyItem?.ItemType ?? ItemTypeEnum.Choice,
ItemName
=
dutyItem
?.
ItemName
??
""
,
//
ItemName = dutyItem?.ItemName ?? "",
WorkContent
=
dItem
?.
WorkContent
??
""
,
//
WorkContent = dItem?.WorkContent ?? "",
IsChecked
=
isFinish
//
IsChecked = isFinish
});
//
});
}
//
}
}
//
}
subItem
.
BurstCount
=
dutyContentList
?.
Where
(
qitem
=>
qitem
.
PlanType
==
3
&&
qitem
.
PlanId
==
item
.
Id
&&
qitem
.
CreateBy
==
subItem
.
DutyMan
)?.
Count
()
??
0
;
//
subItem.BurstCount = dutyContentList?.Where(qitem => qitem.PlanType == 3 && qitem.PlanId == item.Id && qitem.CreateBy == subItem.DutyMan)?.Count() ?? 0;
if
(
subItem
.
Status
==
2
)
//
if (subItem.Status == 2)
{
//
{
subItem
.
HandoverCount
=
dutyContentList
?.
Where
(
qitem
=>
qitem
.
PlanType
==
2
&&
qitem
.
PlanId
==
item
.
Id
&&
qitem
.
CreateBy
==
subItem
.
DutyMan
)?.
Count
()
??
0
;
//
subItem.HandoverCount = dutyContentList?.Where(qitem => qitem.PlanType == 2 && qitem.PlanId == item.Id && qitem.CreateBy == subItem.DutyMan)?.Count() ?? 0;
}
//
}
}
}
}
}
item
.
TotalBurstCount
=
item
.
PlanDetails
.
Sum
(
qitem
=>
qitem
.
BurstCount
);
item
.
TotalBurstCount
=
item
.
PlanDetails
.
Sum
(
qitem
=>
qitem
.
BurstCount
);
...
@@ -257,18 +257,18 @@ namespace Edu.Module.Duty
...
@@ -257,18 +257,18 @@ namespace Edu.Module.Duty
public
DutyStatusEnum
CalcDutyStatusModule
(
List
<
RB_Duty_PlanDetails_ViewModel
>
PlanDetails
)
public
DutyStatusEnum
CalcDutyStatusModule
(
List
<
RB_Duty_PlanDetails_ViewModel
>
PlanDetails
)
{
{
DutyStatusEnum
dutyStatus
=
DutyStatusEnum
.
NoStart
;
DutyStatusEnum
dutyStatus
=
DutyStatusEnum
.
NoStart
;
if
(
PlanDetails
.
Where
(
qitem
=>
qitem
.
DutyStatus
==
DutyStatusEnum
.
NoStart
).
Count
()
==
PlanDetails
.
Count
)
//
if (PlanDetails.Where(qitem => qitem.DutyStatus == DutyStatusEnum.NoStart).Count() == PlanDetails.Count)
{
//
{
dutyStatus
=
DutyStatusEnum
.
NoStart
;
//
dutyStatus = DutyStatusEnum.NoStart;
}
//
}
else
if
(
PlanDetails
.
Where
(
qitem
=>
qitem
.
DutyStatus
==
DutyStatusEnum
.
DutyFinished
).
Count
()
==
PlanDetails
.
Count
)
//
else if (PlanDetails.Where(qitem => qitem.DutyStatus == DutyStatusEnum.DutyFinished).Count() == PlanDetails.Count)
{
//
{
dutyStatus
=
DutyStatusEnum
.
DutyFinished
;
//
dutyStatus = DutyStatusEnum.DutyFinished;
}
//
}
else
//
else
{
//
{
dutyStatus
=
DutyStatusEnum
.
DutyIng
;
//
dutyStatus = DutyStatusEnum.DutyIng;
}
//
}
return
dutyStatus
;
return
dutyStatus
;
}
}
...
@@ -476,7 +476,7 @@ namespace Edu.Module.Duty
...
@@ -476,7 +476,7 @@ namespace Edu.Module.Duty
{
{
dutyStatusEnum
=
DutyStatusEnum
.
DutyFinished
;
dutyStatusEnum
=
DutyStatusEnum
.
DutyFinished
;
}
}
item
.
DutyStatus
=
dutyStatusEnum
;
//
item.DutyStatus = dutyStatusEnum;
}
}
}
}
}
}
...
@@ -623,70 +623,70 @@ namespace Edu.Module.Duty
...
@@ -623,70 +623,70 @@ namespace Edu.Module.Duty
}
}
List
<
object
>
pList
=
new
List
<
object
>();
List
<
object
>
pList
=
new
List
<
object
>();
var
currentPlanContetList
=
contentList
.
Where
(
qitem
=>
qitem
.
PlanShift
==
Shift
&&
qitem
.
PlanType
==
1
)?.
ToList
();
var
currentPlanContetList
=
contentList
.
Where
(
qitem
=>
qitem
.
PlanShift
==
Shift
&&
qitem
.
PlanType
==
1
)?.
ToList
();
if
(
currentModel
.
DutyStatus
==
DutyStatusEnum
.
DutyFinished
)
//
if (currentModel.DutyStatus == DutyStatusEnum.DutyFinished)
{
//
{
foreach
(
var
item
in
currentPlanContetList
)
//
foreach (var item in currentPlanContetList)
{
//
{
var
c_itemModel
=
dutyItemList
?.
Where
(
qitem
=>
qitem
.
Id
==
item
.
ItemId
)?.
FirstOrDefault
();
//
var c_itemModel = dutyItemList?.Where(qitem => qitem.Id == item.ItemId)?.FirstOrDefault();
if
(
c_itemModel
!=
null
)
//
if (c_itemModel != null)
{
//
{
var
itemType
=
c_itemModel
.
ItemType
;
//
var itemType = c_itemModel.ItemType;
int
workIsFinish
=
0
;
//
int workIsFinish = 0;
if
(
itemType
==
ItemTypeEnum
.
FillIn
)
//
if (itemType == ItemTypeEnum.FillIn )
{
//
{
if
(!
string
.
IsNullOrEmpty
(
item
?.
WorkContent
))
//
if (!string.IsNullOrEmpty(item?.WorkContent))
{
//
{
workIsFinish
=
1
;
//
workIsFinish = 1;
}
//
}
}
//
}
else
//
else
{
//
{
workIsFinish
=
item
?.
WorkIsFinish
??
0
;
//
workIsFinish = item?.WorkIsFinish ?? 0;
}
//
}
var
pObj
=
new
//
var pObj = new
{
//
{
Id
=
item
?.
Id
??
0
,
//
Id = item?.Id ?? 0,
ItemId
=
item
.
ItemId
,
//
ItemId = item.ItemId,
ItemName
=
c_itemModel
?.
ItemName
??
""
,
//
ItemName = c_itemModel?.ItemName ?? "",
ItemType
=
c_itemModel
?.
ItemType
??
ItemTypeEnum
.
FillIn
,
//
ItemType = c_itemModel?.ItemType ?? ItemTypeEnum.FillIn,
IsChecked
=
workIsFinish
,
//
IsChecked = workIsFinish,
WorkContent
=
item
?.
WorkContent
??
""
,
//
WorkContent = item?.WorkContent ?? "",
};
//
};
pList
.
Add
(
pObj
);
//
pList.Add(pObj);
}
//
}
}
//
}
}
//
}
else
//
else
{
//
{
foreach
(
var
item
in
PlanList
)
//
foreach (var item in PlanList)
{
//
{
var
c_workModel
=
currentPlanContetList
?.
Where
(
qitem
=>
qitem
.
ItemId
==
item
.
Id
)?.
FirstOrDefault
();
//
var c_workModel = currentPlanContetList?.Where(qitem => qitem.ItemId == item.Id)?.FirstOrDefault();
var
itemType
=
item
.
ItemType
;
//
var itemType = item.ItemType;
int
workIsFinish
=
0
;
//
int workIsFinish = 0;
if
(
itemType
==
ItemTypeEnum
.
FillIn
)
//
if (itemType == ItemTypeEnum.FillIn)
{
//
{
if
(!
string
.
IsNullOrEmpty
(
c_workModel
?.
WorkContent
))
//
if (!string.IsNullOrEmpty(c_workModel?.WorkContent))
{
//
{
workIsFinish
=
1
;
//
workIsFinish = 1;
}
//
}
}
//
}
else
//
else
{
//
{
workIsFinish
=
c_workModel
?.
WorkIsFinish
??
0
;
//
workIsFinish = c_workModel?.WorkIsFinish ?? 0;
}
//
}
var
pObj
=
new
//
var pObj = new
{
//
{
Id
=
c_workModel
?.
Id
??
0
,
//
Id = c_workModel?.Id ?? 0,
ItemId
=
item
.
Id
,
//
ItemId = item.Id,
item
.
ItemName
,
//
item.ItemName,
item
.
ItemType
,
//
item.ItemType,
IsChecked
=
workIsFinish
,
//
IsChecked = workIsFinish,
WorkContent
=
c_workModel
?.
WorkContent
??
""
,
//
WorkContent = c_workModel?.WorkContent ?? "",
};
//
};
pList
.
Add
(
pObj
);
//
pList.Add(pObj);
}
//
}
}
//
}
result
.
Add
(
"WorkList"
,
pList
);
result
.
Add
(
"WorkList"
,
pList
);
//突发事项列表
//突发事项列表
...
@@ -727,35 +727,35 @@ namespace Edu.Module.Duty
...
@@ -727,35 +727,35 @@ namespace Edu.Module.Duty
List
<
object
>
HandoverList
=
new
List
<
object
>();
List
<
object
>
HandoverList
=
new
List
<
object
>();
foreach
(
var
item
in
model
.
PlanDetails
)
foreach
(
var
item
in
model
.
PlanDetails
)
{
{
if
(
item
.
Id
!=
currentModel
.
Id
)
//
if ( item.Id != currentModel.Id)
{
//
{
if
(
item
.
Status
==
2
)
//
if (item.Status == 2)
{
//
{
var
tempHandOverList
=
contentList
?.
Where
(
qitem
=>
qitem
.
PlanType
==
2
&&
qitem
.
PlanId
==
item
.
PlanId
&&
qitem
.
PlanShift
==
item
.
Shift
)?.
ToList
()
??
new
List
<
RB_Duty_Content_ViewModel
>();
//
var tempHandOverList = contentList?.Where(qitem => qitem.PlanType == 2 && qitem.PlanId == item.PlanId && qitem.PlanShift == item.Shift)?.ToList() ?? new List<RB_Duty_Content_ViewModel>();
if
(
tempHandOverList
!=
null
&&
tempHandOverList
.
Count
>
0
)
//
if (tempHandOverList != null && tempHandOverList.Count > 0)
{
//
{
foreach
(
var
subItem
in
tempHandOverList
)
//
foreach (var subItem in tempHandOverList)
{
//
{
subItem
.
IsOperate
=
0
;
//
subItem.IsOperate = 0;
subItem
.
CreateByName
=
empList
?.
Where
(
qitem
=>
qitem
.
Id
==
subItem
.
CreateBy
)?.
FirstOrDefault
()?.
EmployeeName
??
""
;
//
subItem.CreateByName = empList?.Where(qitem => qitem.Id == subItem.CreateBy)?.FirstOrDefault()?.EmployeeName ?? "";
}
//
}
HandoverList
.
AddRange
(
tempHandOverList
);
//
HandoverList.AddRange(tempHandOverList);
}
//
}
}
//
}
}
//
}
else
//
else
{
//
{
var
tempHandOverList
=
contentList
?.
Where
(
qitem
=>
qitem
.
PlanType
==
2
&&
qitem
.
PlanId
==
item
.
PlanId
&&
qitem
.
PlanShift
==
item
.
Shift
)?.
ToList
()
??
new
List
<
RB_Duty_Content_ViewModel
>();
//
var tempHandOverList = contentList?.Where(qitem => qitem.PlanType == 2 && qitem.PlanId == item.PlanId && qitem.PlanShift == item.Shift)?.ToList() ?? new List<RB_Duty_Content_ViewModel>();
if
(
tempHandOverList
!=
null
&&
tempHandOverList
.
Count
>
0
)
//
if (tempHandOverList != null && tempHandOverList.Count > 0)
{
//
{
foreach
(
var
subItem
in
tempHandOverList
)
//
foreach (var subItem in tempHandOverList)
{
//
{
subItem
.
IsOperate
=
1
;
//
subItem.IsOperate = 1;
subItem
.
CreateByName
=
empList
?.
Where
(
qitem
=>
qitem
.
Id
==
subItem
.
CreateBy
)?.
FirstOrDefault
()?.
EmployeeName
??
""
;
//
subItem.CreateByName = empList?.Where(qitem => qitem.Id == subItem.CreateBy)?.FirstOrDefault()?.EmployeeName ?? "";
}
//
}
HandoverList
.
AddRange
(
tempHandOverList
);
//
HandoverList.AddRange(tempHandOverList);
}
//
}
}
//
}
}
}
result
.
Add
(
"HandoverList"
,
HandoverList
);
result
.
Add
(
"HandoverList"
,
HandoverList
);
...
@@ -763,51 +763,11 @@ namespace Edu.Module.Duty
...
@@ -763,51 +763,11 @@ namespace Edu.Module.Duty
result
.
Add
(
"GiveMan"
,
previousModel
?.
DutyManName
??
""
);
result
.
Add
(
"GiveMan"
,
previousModel
?.
DutyManName
??
""
);
}
}
result
.
Add
(
"DutyStatus"
,
currentModel
?.
DutyStatus
);
//
result.Add("DutyStatus", currentModel?.DutyStatus);
result
.
Add
(
"DutyStatusStr"
,
(
currentModel
?.
Status
==
2
?
Common
.
Plugin
.
EnumHelper
.
ToName
(
DutyStatusEnum
.
DutyFinished
):
currentModel
?.
DutyStatusStr
));
//
result.Add("DutyStatusStr", (currentModel?.Status==2?Common.Plugin.EnumHelper.ToName(DutyStatusEnum.DutyFinished):currentModel?.DutyStatusStr));
return
result
;
return
result
;
}
}
/// <summary>
/// 计算当前值班人员索引
/// </summary>
/// <param name="planDate">值班日期</param>
/// <param name="PlanDetails">值班班次列表</param>
/// <param name="dutyManId">值班人</param>
/// <returns></returns>
public
int
CalcCurrentDutyManIndexModule
(
DateTime
planDate
,
List
<
RB_Duty_PlanDetails_ViewModel
>
PlanDetails
,
int
dutyManId
)
{
//当前值班人员索引
int
currentIndex
=
0
;
if
(
Common
.
ConvertHelper
.
FormatDate
(
planDate
)
==
Common
.
ConvertHelper
.
FormatDate
(
DateTime
.
Now
))
{
var
currentDayNow
=
Convert
.
ToDateTime
(
Common
.
ConvertHelper
.
FormatDate
(
planDate
)
+
" "
+
DateTime
.
Now
.
ToString
(
"HH:mm:ss"
));
for
(
var
i
=
0
;
i
<
PlanDetails
.
Count
;
i
++)
{
var
sStartTime
=
Convert
.
ToDateTime
(
Common
.
ConvertHelper
.
FormatDate
(
planDate
)
+
" "
+
PlanDetails
[
i
].
StartTime
);
var
sEndTime
=
Convert
.
ToDateTime
(
Common
.
ConvertHelper
.
FormatDate
(
planDate
)
+
" "
+
PlanDetails
[
i
].
EndTime
);
if
(
currentDayNow
>=
sStartTime
&&
currentDayNow
<=
sEndTime
&&
PlanDetails
[
i
].
DutyMan
==
dutyManId
)
{
currentIndex
=
i
;
}
}
}
else
{
var
currentDayNow
=
DateTime
.
Now
;
for
(
var
i
=
0
;
i
<
PlanDetails
.
Count
;
i
++)
{
var
sStartTime
=
Convert
.
ToDateTime
(
Common
.
ConvertHelper
.
FormatDate
(
planDate
)
+
" "
+
PlanDetails
[
i
].
StartTime
);
var
sEndTime
=
Convert
.
ToDateTime
(
Common
.
ConvertHelper
.
FormatDate
(
planDate
)
+
" "
+
PlanDetails
[
i
].
EndTime
);
if
(
currentDayNow
>=
sStartTime
&&
currentDayNow
<=
sEndTime
&&
PlanDetails
[
i
].
DutyMan
==
dutyManId
)
{
currentIndex
=
i
;
}
}
}
return
currentIndex
;
}
/// <summary>
/// <summary>
/// 计算当前值班人员索引
/// 计算当前值班人员索引
/// </summary>
/// </summary>
...
@@ -906,13 +866,35 @@ namespace Edu.Module.Duty
...
@@ -906,13 +866,35 @@ namespace Edu.Module.Duty
{
{
{
nameof
(
RB_Duty_PlanDetails_ViewModel
.
Status
),
Status
},
{
nameof
(
RB_Duty_PlanDetails_ViewModel
.
Status
),
Status
},
};
};
DateTime
dt
=
DateTime
.
Now
;
var
planModel
=
GetDutyPlanDetailsListModule
(
new
RB_Duty_PlanDetails_ViewModel
()
{
PlanId
=
Id
,
Shift
=
Shift
,
QDutyMan
=
DutyMan
.
ToString
()
})?.
FirstOrDefault
();
var
startTime
=
Convert
.
ToDateTime
(
Common
.
ConvertHelper
.
FormatDate
(
dt
)
+
" "
+
planModel
?.
StartTime
);
var
endTime
=
Convert
.
ToDateTime
(
Common
.
ConvertHelper
.
FormatDate
(
dt
)
+
" "
+
planModel
?.
EndTime
);
if
(
Status
==
1
)
if
(
Status
==
1
)
{
{
fileds
.
Add
(
nameof
(
RB_Duty_PlanDetails_ViewModel
.
CheckTime
),
DateTime
.
Now
);
fileds
.
Add
(
nameof
(
RB_Duty_PlanDetails_ViewModel
.
CheckTime
),
dt
);
int
minute
=
Common
.
ConvertHelper
.
CalcMinutes
(
startTime
,
dt
);
if
(
minute
>
0
)
{
fileds
.
Add
(
nameof
(
RB_Duty_PlanDetails_ViewModel
.
CheckLateTime
),
minute
);
}
else
{
fileds
.
Add
(
nameof
(
RB_Duty_PlanDetails_ViewModel
.
CheckLateTime
),
0
);
}
}
}
if
(
Status
==
2
)
if
(
Status
==
2
)
{
{
fileds
.
Add
(
nameof
(
RB_Duty_PlanDetails_ViewModel
.
FinishTime
),
DateTime
.
Now
);
fileds
.
Add
(
nameof
(
RB_Duty_PlanDetails_ViewModel
.
FinishTime
),
dt
);
int
minute
=
Common
.
ConvertHelper
.
CalcMinutes
(
dt
,
endTime
);
if
(
minute
>
0
)
{
fileds
.
Add
(
nameof
(
RB_Duty_PlanDetails_ViewModel
.
FinishLateTime
),
minute
);
}
else
{
fileds
.
Add
(
nameof
(
RB_Duty_PlanDetails_ViewModel
.
FinishLateTime
),
0
);
}
}
}
List
<
WhereHelper
>
list
=
new
List
<
WhereHelper
>()
List
<
WhereHelper
>
list
=
new
List
<
WhereHelper
>()
{
{
...
...
Edu.Repository/Duty/RB_Duty_PlanDetailsRepository.cs
View file @
a7e1c459
...
@@ -39,6 +39,10 @@ WHERE 1=1
...
@@ -39,6 +39,10 @@ WHERE 1=1
{
{
builder
.
AppendFormat
(
@" AND A.{0} IN({1}) "
,
nameof
(
RB_Duty_PlanDetails_ViewModel
.
PlanId
),
query
.
QPlanIds
);
builder
.
AppendFormat
(
@" AND A.{0} IN({1}) "
,
nameof
(
RB_Duty_PlanDetails_ViewModel
.
PlanId
),
query
.
QPlanIds
);
}
}
if
(
query
.
Shift
>
0
)
{
builder
.
AppendFormat
(
@" AND A.{0}={1} "
,
nameof
(
RB_Duty_PlanDetails_ViewModel
.
Shift
),
query
.
Shift
);
}
if
(!
string
.
IsNullOrEmpty
(
query
.
QDutyMan
))
if
(!
string
.
IsNullOrEmpty
(
query
.
QDutyMan
))
{
{
builder
.
AppendFormat
(
@" AND A.{0} IN({1}) "
,
nameof
(
RB_Duty_PlanDetails_ViewModel
.
DutyMan
),
query
.
QDutyMan
);
builder
.
AppendFormat
(
@" AND A.{0} IN({1}) "
,
nameof
(
RB_Duty_PlanDetails_ViewModel
.
DutyMan
),
query
.
QDutyMan
);
...
...
Edu.WebApi/Controllers/Duty/DutyPlanController.cs
View file @
a7e1c459
...
@@ -77,6 +77,11 @@ namespace Edu.WebApi.Controllers.Duty
...
@@ -77,6 +77,11 @@ namespace Edu.WebApi.Controllers.Duty
qitem
.
ShiftName
,
qitem
.
ShiftName
,
qitem
.
DutyStatus
,
qitem
.
DutyStatus
,
qitem
.
DutyStatusStr
,
qitem
.
DutyStatusStr
,
qitem
.
Status
,
qitem
.
CheckTimeStr
,
qitem
.
FinishTimeStr
,
qitem
.
FinishLateTime
,
qitem
.
CheckLateTime
,
})
})
});
});
}
}
...
@@ -160,6 +165,8 @@ namespace Edu.WebApi.Controllers.Duty
...
@@ -160,6 +165,8 @@ namespace Edu.WebApi.Controllers.Duty
currentModel
.
StartTime
,
currentModel
.
StartTime
,
currentModel
.
EndTime
,
currentModel
.
EndTime
,
PlanList
=
currentModel
?.
WorkContentList
??
new
List
<
RB_Duty_PlanWork_ViewModel
>(),
PlanList
=
currentModel
?.
WorkContentList
??
new
List
<
RB_Duty_PlanWork_ViewModel
>(),
currentModel
.
CheckLateTime
,
currentModel
.
FinishLateTime
,
currentModel
.
BurstCount
,
currentModel
.
BurstCount
,
currentModel
.
HandoverCount
,
currentModel
.
HandoverCount
,
ReciveMan
=
jieBanMan
,
ReciveMan
=
jieBanMan
,
...
...
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