|
|
@@ -99,25 +99,12 @@ namespace OASystem.Infrastructure.Repositories.Groups
|
|
|
processs.Add(
|
|
|
Grp_ProcessOverview.Create(groupId, 1, GroupProcessType.Invitation, ProcessStatus.InProgress, currUserId,
|
|
|
new List<Grp_ProcessNode>()
|
|
|
- //{
|
|
|
- // Grp_ProcessNode.Create(1, "报批基础资料准备",oaNode1Tips,ProcessStatus.InProgress, true,false,false,false,currUserId,oaNodeOpUsers),
|
|
|
- // //Grp_ProcessNode.Create(2, "报批邀请函资料准备",oaNode2Tips, ProcessStatus.InProgress, false,false,false,false,currUserId,oaNodeOpUsers),
|
|
|
- // Grp_ProcessNode.Create(2, "具体名单下放",oaNode2Tips, ProcessStatus.InProgress, false,false,false,false,currUserId,oaNodeOpUsers),
|
|
|
- // //Grp_ProcessNode.Create(3, "获得批件",oaNode3Tips,ProcessStatus.InProgress, false,false,false,false, currUserId ,oaNodeOpUsers),
|
|
|
- // Grp_ProcessNode.Create(3, "提交客户所需报件材料完毕",oaNode3Tips,ProcessStatus.InProgress, false,false,false,false, currUserId ,oaNodeOpUsers),
|
|
|
- // Grp_ProcessNode.Create(4, "对接公务",oaNode4Tips,ProcessStatus.InProgress, false,false,false,false, currUserId,oaNodeOpUsers),
|
|
|
- // //Grp_ProcessNode.Create(5, "参与翻译对接",oaNode5Tips,ProcessStatus.InProgress, false,false,false,true, currUserId,oaNodeOpUsers),
|
|
|
- // Grp_ProcessNode.Create(5, "参与公务翻译人员落实",oaNode5Tips,ProcessStatus.InProgress, false,false,false,true, currUserId,oaNodeOpUsers),
|
|
|
- // Grp_ProcessNode.Create(6, "商邀文案配合",oaNode6Tips,ProcessStatus.InProgress, false,false,false,false, currUserId,oaNodeOpUsers),
|
|
|
- // //Grp_ProcessNode.Create(7, "票据上传(相关票据)",oaNode7Tips,ProcessStatus.InProgress, false,false,true,false, currUserId,oaNodeOpUsers),
|
|
|
- // Grp_ProcessNode.Create(7, "公务邀请数据有效录入",oaNode7Tips,ProcessStatus.InProgress, false,false,true,false, currUserId,oaNodeOpUsers),
|
|
|
- //}
|
|
|
{
|
|
|
- Grp_ProcessNode.Create(1, "报批基础资料准备",oaNode1Tips,ProcessStatus.InProgress, true,false,false,false,currUserId,oaNodeOpUsers),
|
|
|
- Grp_ProcessNode.Create(2, "具体名单下放",oaNode2Tips, ProcessStatus.InProgress, false,false,false,false,currUserId,oaNodeOpUsers),
|
|
|
- Grp_ProcessNode.Create(3, "提交客户所需报件材料完毕",oaNode3Tips,ProcessStatus.InProgress, false,false,false,false, currUserId ,oaNodeOpUsers),
|
|
|
- Grp_ProcessNode.Create(4, "对接公务",oaNode4Tips,ProcessStatus.InProgress, false,false,false,false, currUserId,oaNodeOpUsers),
|
|
|
- Grp_ProcessNode.Create(5, "参与公务翻译人员落实",oaNode5Tips,ProcessStatus.InProgress, false,false,false,true, currUserId,oaNodeOpUsers),
|
|
|
+ Grp_ProcessNode.Create(1, "初期报批文字材料",oaNode1Tips,ProcessStatus.InProgress, true,false,false,false,currUserId,oaNodeOpUsers),
|
|
|
+ Grp_ProcessNode.Create(2, "第一轮对接",oaNode2Tips, ProcessStatus.InProgress, false,false,false,false,currUserId,oaNodeOpUsers),
|
|
|
+ Grp_ProcessNode.Create(3, "第二轮对接",oaNode3Tips,ProcessStatus.InProgress, false,false,false,false, currUserId ,oaNodeOpUsers),
|
|
|
+ Grp_ProcessNode.Create(4, "取得邀请函",oaNode4Tips,ProcessStatus.InProgress, false,false,false,false, currUserId,oaNodeOpUsers),
|
|
|
+ Grp_ProcessNode.Create(5, "公务等事项确认",oaNode5Tips,ProcessStatus.InProgress, false,false,false,true, currUserId,oaNodeOpUsers),
|
|
|
Grp_ProcessNode.Create(6, "公务邀请数据有效录入",oaNode6Tips,ProcessStatus.InProgress, false,false,false,true, currUserId,oaNodeOpUsers),
|
|
|
Grp_ProcessNode.Create(7, "文件上传",oaNode7Tips,ProcessStatus.InProgress, false,false,true,false, currUserId,oaNodeOpUsers),
|
|
|
}
|
|
|
@@ -484,6 +471,43 @@ namespace OASystem.Infrastructure.Repositories.Groups
|
|
|
return new Result { Code = 200, Data = processes, Msg = "查询成功!" };
|
|
|
}
|
|
|
|
|
|
+ /// <summary>
|
|
|
+ /// 指定日期增加工作日
|
|
|
+ /// </summary>
|
|
|
+ /// <param name="startDate"></param>
|
|
|
+ /// <param name="days"></param>
|
|
|
+ /// <returns></returns>
|
|
|
+ private static DateTime AddWeekdays(DateTime startDate, int days)
|
|
|
+ {
|
|
|
+ DateTime currentDate = startDate;
|
|
|
+ if (days >= 0)
|
|
|
+ {
|
|
|
+ while (days > 0)
|
|
|
+ {
|
|
|
+ currentDate = currentDate.AddDays(1);
|
|
|
+ DayOfWeek day = currentDate.DayOfWeek;
|
|
|
+ if (day != DayOfWeek.Saturday && day != DayOfWeek.Sunday)
|
|
|
+ {
|
|
|
+ days--;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ days = Math.Abs(days);
|
|
|
+ while (days > 0)
|
|
|
+ {
|
|
|
+ currentDate = currentDate.AddDays(-1);
|
|
|
+ DayOfWeek day = currentDate.DayOfWeek;
|
|
|
+ if (day != DayOfWeek.Saturday && day != DayOfWeek.Sunday)
|
|
|
+ {
|
|
|
+ days--;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return currentDate;
|
|
|
+ }
|
|
|
+
|
|
|
/// <summary>
|
|
|
/// 节点提示消息
|
|
|
/// </summary>
|
|
|
@@ -495,44 +519,52 @@ namespace OASystem.Infrastructure.Repositories.Groups
|
|
|
{
|
|
|
string msg = string.Empty;
|
|
|
int groupId = groupInfo.Id;
|
|
|
+ groupInfo.VisitDate = groupInfo.VisitDate.AddDays(1); //第二天开始计算
|
|
|
switch (procType)
|
|
|
{
|
|
|
case GroupProcessType.Invitation:
|
|
|
switch (nodeOrder)
|
|
|
{
|
|
|
case 1:
|
|
|
- msg = "更新报批行程和请示,提供其他报批所需材料,4个工作日内完成。";
|
|
|
+ msg = "“完成基础请示、报批日程初稿”,4个工作日(仍需根据客户意见和联系情况及时修改补充所需其他材料,例如印证文件、成果表等,直至终稿)";
|
|
|
+
|
|
|
+ if (groupInfo.Step == 1 || groupInfo.Step == 2)
|
|
|
+ {
|
|
|
+ if (groupInfo.StepOperationTime.HasValue)
|
|
|
+ {
|
|
|
+ msg = $"请于{AddWeekdays(groupInfo.StepOperationTime.Value, 4):yyyy年MM月dd日}内完成该项工作(“完成基础请示、报批日程初稿”,4个工作日(仍需根据客户意见和联系情况及时修改补充所需其他材料,例如印证文件、成果表等,直至终稿))";
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
break;
|
|
|
case 2:
|
|
|
+ msg = $"请于{AddWeekdays(groupInfo.VisitDate, 7):yyyy年MM月dd日}内完成该项工作(7个工作日,所有报批机构前部联系,邀请机构一个国家不少于4家进行重点对接(4家机构中,其中3家机构需有效对接,其中1家可为付费机构备选))";
|
|
|
+ break;
|
|
|
+ case 3:
|
|
|
+ msg = "10个工作日,根据最新情况,联系公务机构1/3取得回应;邀请机构基本明确。";
|
|
|
+ break;
|
|
|
+ case 4:
|
|
|
var custInfo = _sqlSugar.Queryable<Grp_TourClientList>()
|
|
|
.Where(c => c.DiId == groupId && c.IsDel == 0)
|
|
|
.OrderByDescending(c => c.CreateTime)
|
|
|
.First();
|
|
|
- //msg = "客户提供完整名单后,2周内取得邀请函(翻译件)。";
|
|
|
- //if (custInfo != null)
|
|
|
- //{
|
|
|
- // msg = $"请于{custInfo.CreateTime.AddDays(14):yyyy年MM月dd日}内完成该项工作(客户提供完整名单后,2周内取得邀请函(翻译件))";
|
|
|
- //}
|
|
|
- msg = "下放后两周取得邀请函";
|
|
|
+
|
|
|
+ msg = $"正式名单下放后2周内(含非工作日)。如团组前期准备时间已经较长,则按客户要求尽快提供。 加急团组备注特殊情况。";
|
|
|
+
|
|
|
if (custInfo != null)
|
|
|
{
|
|
|
- msg = $"请于{custInfo.CreateTime.AddDays(14):yyyy年MM月dd日}内完成该项工作(下放后两周取得邀请函)";
|
|
|
+ msg = $"请于{custInfo.CreateTime.AddDays(14):yyyy年MM月dd日}内完成该项工作(正式名单下放后2周内(含非工作日)。如团组前期准备时间已经较长,则按客户要求尽快提供。 加急团组备注特殊情况。)";
|
|
|
}
|
|
|
-
|
|
|
- break;
|
|
|
- case 3:
|
|
|
- msg = "提供完整的报批全套资源。";
|
|
|
- break;
|
|
|
- case 4:
|
|
|
- msg = $"请于{groupInfo.VisitDate.AddDays(-5):yyyy年MM月dd日}内完成该项工作(按进度实际公务活动落实情况,出发前5日落实公务)";
|
|
|
break;
|
|
|
case 5:
|
|
|
+ groupInfo.VisitDate = groupInfo.VisitDate.AddDays(-1); //时间倒推,调整回原始出发日期
|
|
|
+ msg = $"请于{AddWeekdays(groupInfo.VisitDate,-5):yyyy年MM月dd日}内完成该项工作(团组出发前,5个工作日完成所有公务确认工作。";
|
|
|
+
|
|
|
break;
|
|
|
case 6:
|
|
|
break;
|
|
|
case 7:
|
|
|
- //msg = $"请于{groupInfo.VisitEndDate.AddDays(-5):yyyy年MM月dd日}内完成该项工作(团组结束前完成)";
|
|
|
- msg = $"请于{groupInfo.VisitEndDate.AddDays(-5):yyyy年MM月dd日}内完成该项工作(如果需要上传请在团组结束前完成)";
|
|
|
+ msg = $"请于{groupInfo.VisitEndDate:yyyy年MM月dd日}内完成该项工作(如果需要上传请在团组结束前完成)";
|
|
|
break;
|
|
|
}
|
|
|
break;
|
|
|
@@ -567,15 +599,15 @@ namespace OASystem.Infrastructure.Repositories.Groups
|
|
|
case 4:
|
|
|
break;
|
|
|
case 5:
|
|
|
- msg = $"请于{groupInfo.VisitDate.AddDays(-5):yyyy年MM月dd日}内完成该项工作(团组出发前5日)";
|
|
|
+ msg = $"请于{AddWeekdays(groupInfo.VisitDate,2):yyyy年MM月dd日}内完成该项工作(团组出发前2个工作日)";
|
|
|
break;
|
|
|
case 6:
|
|
|
break;
|
|
|
case 7:
|
|
|
- msg = $"请于{groupInfo.VisitEndDate.AddDays(5):yyyy年MM月dd日}内完成该项工作(机票蓝联打票及上传机票超支费用账单,团组归国后5个工作日内)";
|
|
|
+ msg = $"请于{AddWeekdays(groupInfo.VisitEndDate,5):yyyy年MM月dd日}内完成该项工作(机票蓝联打票及上传机票超支费用账单,团组归国后5个工作日内)";
|
|
|
break;
|
|
|
case 8:
|
|
|
- msg = $"1. 票据上传(机票报销蓝联、行程单及机票说明) \r\n 2. 请于{groupInfo.VisitEndDate.AddDays(10):yyyy年MM月dd日}内完成该项工作(团组归国后10个工作日内) *按机票报价*0.999折扣出具机票报销蓝联、行程单及机票说明";
|
|
|
+ msg = $"1. 票据上传(机票报销蓝联、行程单及机票说明) \r\n 2. 请于{AddWeekdays(groupInfo.VisitEndDate,10):yyyy年MM月dd日}内完成该项工作(团组归国后10个工作日内) *按机票报价*0.999折扣出具机票报销蓝联、行程单及机票说明";
|
|
|
break;
|
|
|
}
|
|
|
break;
|
|
|
@@ -588,7 +620,7 @@ namespace OASystem.Infrastructure.Repositories.Groups
|
|
|
{
|
|
|
if (groupInfo.StepOperationTime.HasValue)
|
|
|
{
|
|
|
- msg = $"请于{groupInfo.StepOperationTime.Value.AddDays(2):yyyy年MM月dd日}内完成该项工作(建团后打勾确认出团的时候开始2个工作日)";
|
|
|
+ msg = $"请于{AddWeekdays(groupInfo.StepOperationTime.Value, 2):yyyy年MM月dd日}内完成该项工作(建团后打勾确认出团的时候开始2个工作日)";
|
|
|
}
|
|
|
}
|
|
|
break;
|
|
|
@@ -597,10 +629,10 @@ namespace OASystem.Infrastructure.Repositories.Groups
|
|
|
case 3:
|
|
|
break;
|
|
|
case 4:
|
|
|
- msg = $"1.行前再次确认酒店订单、付款状态及入住安排 \r\n 2.请于{groupInfo.VisitDate.AddDays(-5):yyyy年MM月dd日}内完成该项工作(团组出发前5天)";
|
|
|
+ msg = $"1.行前再次确认酒店订单、付款状态及入住安排 \r\n 2.请于{AddWeekdays(groupInfo.VisitDate,-2):yyyy年MM月dd日}内完成该项工作(团组出发前2个工作日)";
|
|
|
break;
|
|
|
case 5:
|
|
|
- msg = $"1.行程结束后整理酒店发票(含超支费用发票)与结算 \r\n 2.请于{groupInfo.VisitEndDate.AddDays(5):yyyy年MM月dd日}内完成该项工作(团组结束后5天内)";
|
|
|
+ msg = $"1.行程结束后整理酒店发票(含超支费用发票)与结算 \r\n 2.请于{AddWeekdays(groupInfo.VisitEndDate,5):yyyy年MM月dd日}内完成该项工作(团组结束后5个工作日内)";
|
|
|
break;
|
|
|
}
|
|
|
break;
|
|
|
@@ -615,17 +647,17 @@ namespace OASystem.Infrastructure.Repositories.Groups
|
|
|
msg = $"机票行程代码最后一段录入后1个工作日内。";
|
|
|
if (airTripCodeInfo != null)
|
|
|
{
|
|
|
- msg = $"请于{airTripCodeInfo.CreateTime.AddDays(1):yyyy年MM月dd日}内完成该项工作(机票行程代码最后一段录入后1个工作日内)";
|
|
|
+ msg = $"请于{AddWeekdays(airTripCodeInfo.CreateTime, 1):yyyy年MM月dd日}内完成该项工作(机票行程代码最后一段录入后1个工作日内)";
|
|
|
}
|
|
|
break;
|
|
|
case 2:
|
|
|
- msg = $"1.联系并询价地接、餐厅、用车、景点等供应商 \r\n 2. 请于{groupInfo.CreateTime.AddDays(7):yyyy年MM月dd日}内完成该项工作(建团完成后7个工作日内)";
|
|
|
+ msg = $"1.联系并询价地接、餐厅、用车、景点等供应商 \r\n 2. 请于{AddWeekdays(groupInfo.VisitDate, 20):yyyy年MM月dd日}内完成该项工作(团组出行前20个工作日)";
|
|
|
break;
|
|
|
case 3:
|
|
|
- msg = $"请于{groupInfo.CreateTime.AddDays(10):yyyy年MM月dd日}内完成该项工作(上一步往后3个工作日内)";
|
|
|
+ msg = $"请于{AddWeekdays(groupInfo.CreateTime, 10):yyyy年MM月dd日}内完成该项工作(上一步往后3个工作日内)";
|
|
|
break;
|
|
|
case 4:
|
|
|
- msg = $"请于{groupInfo.CreateTime.AddDays(12):yyyy年MM月dd日}内完成该项工作(上一步往后2个工作日内)";
|
|
|
+ msg = $"请于{AddWeekdays(groupInfo.CreateTime, 12):yyyy年MM月dd日}内完成该项工作(上一步往后2个工作日内)";
|
|
|
break;
|
|
|
case 5:
|
|
|
var backListInfo = _sqlSugar.Queryable<Grp_InvertedList>().Where(x => x.DiId == groupId && x.IsDel == 0).First();
|
|
|
@@ -641,7 +673,7 @@ namespace OASystem.Infrastructure.Repositories.Groups
|
|
|
case 6:
|
|
|
break;
|
|
|
case 7:
|
|
|
- msg = $"请于{groupInfo.VisitEndDate.AddDays(5):yyyy年MM月dd日}内完成该项工作(团组归国后5个工作日内) *上传最终报批行程,确定城市间交通最终版报价分配;地接账单(清楚标注超时及其他项超支费用)、地接交通费用原始票据、城市间交通明细表;";
|
|
|
+ msg = $"请于{AddWeekdays( groupInfo.VisitEndDate,5):yyyy年MM月dd日}内完成该项工作(团组归国后5个工作日内) *上传最终报批行程,确定城市间交通最终版报价分配;地接账单(清楚标注超时及其他项超支费用)、地接交通费用原始票据、城市间交通明细表;";
|
|
|
break;
|
|
|
}
|
|
|
break;
|
|
|
@@ -655,7 +687,7 @@ namespace OASystem.Infrastructure.Repositories.Groups
|
|
|
msg = "团组报批前三公费用表";
|
|
|
break;
|
|
|
case 3:
|
|
|
- msg = $"1.整理统计团组超支费用、三公报销资料给到各单位 \r\n 2. 请于{groupInfo.VisitEndDate.AddDays(12):yyyy年MM月dd日}内完成该项工作(团组归国后12个工作日内)";
|
|
|
+ msg = $"1.整理统计团组超支费用、三公报销资料给到各单位 \r\n 2. 请于{AddWeekdays(groupInfo.VisitEndDate,12):yyyy年MM月dd日}内完成该项工作(团组归国后12个工作日内)";
|
|
|
break;
|
|
|
case 4:
|
|
|
break;
|