Commit 308279fa authored by 吴春's avatar 吴春

Merge branch 'master' of http://gitlab.oytour.com/Kui2/education

parents 53f73e78 aeeb1282
using Edu.Common.Enum;
using System;
namespace Edu.Model.Entity.Duty
{
/// <summary>
/// 值班内容实体类
/// </summary>
public class RB_Duty_Content
{
/// <summary>
/// 主键编号
/// </summary>
public int Id { get; set; }
/// <summary>
/// 值班班次
/// </summary>
public int PlanShift { get; set; }
/// <summary>
/// 值班类型(1-值班事项,2-交接事项,3-突发事项)
/// </summary>
public int PlanType { get; set; }
/// <summary>
/// 值班编号
/// </summary>
public int PlanId { get; set; }
/// <summary>
/// 附件内容
/// </summary>
public string FileContent { get; set; }
/// <summary>
/// 文本内容
/// </summary>
public string Content { get; set; }
/// <summary>
/// 备注
/// </summary>
public string Remark { get; set; }
/// <summary>
/// 创建人
/// </summary>
public int CreateBy { get; set; }
/// <summary>
/// 创建时间
/// </summary>
public DateTime CreateTime { get; set; }
/// <summary>
/// 集团编号
/// </summary>
public int Group_Id { get; set; }
/// <summary>
/// 值班事项(值班类型为1是使用)
/// </summary>
public string PlanContent { get; set; }
/// <summary>
/// 删除状态
/// </summary>
public DateStateEnum Status { get; set; }
}
}
using Edu.Common.Enum;
using System;
using VT.FW.DB;
namespace Edu.Model.Entity.Duty
{
/// <summary>
/// 值班计划实体类
/// </summary>
[Serializable]
[DB(ConnectionName = "DefaultConnection")]
public class RB_Duty_Plan
{
/// <summary>
/// 主键编号
/// </summary>
public int Id { get; set; }
/// <summary>
/// 值班时间
/// </summary>
public DateTime Date { get; set; }
/// <summary>
/// 校区编号
/// </summary>
public int School_Id { get; set; }
/// <summary>
/// 集团编号
/// </summary>
public int Group_Id { get; set; }
/// <summary>
/// 删除状态(1-删除)
/// </summary>
public DateStateEnum Status { get; set; }
/// <summary>
/// 创建人
/// </summary>
public int CreateBy { get; set; }
/// <summary>
/// 创建时间
/// </summary>
public DateTime CreateTime { get; set; }
/// <summary>
/// 更新人
/// </summary>
public int UpdateBy { get; set; }
/// <summary>
/// 更新时间
/// </summary>
public DateTime UpdateTime { get; set; }
}
}
using Edu.Common.Enum;
using System;
using VT.FW.DB;
namespace Edu.Model.Entity.Duty
{
/// <summary>
/// 值班班次实体类
/// </summary>
[Serializable]
[DB(ConnectionName = "DefaultConnection")]
public class RB_Duty_PlanDetails
{
/// <summary>
/// 主键(排版详情编号)
/// </summary>
public int Id { get; set; }
/// <summary>
/// 排班计划编号
/// </summary>
public int? PlanId { get; set; }
/// <summary>
/// 班次
/// </summary>
public int Shift { get; set; }
/// <summary>
/// 值班人员
/// </summary>
public int DutyMan { get; set; }
/// <summary>
/// 状态
/// </summary>
public DateStateEnum Status { get; set; }
}
}
using Edu.Common.Enum;
using System;
using VT.FW.DB;
namespace Edu.Model.Entity.Duty
{
/// <summary>
/// 访客实体类
/// </summary>
[Serializable]
[DB(ConnectionName = "DefaultConnection")]
public class RB_Visitor
{
/// <summary>
/// 访客编号
/// </summary>
public int Id { get; set; }
/// <summary>
/// 访客姓名
/// </summary>
public string Name { get; set; }
/// <summary>
/// 访客电话
/// </summary>
public string Tel { get; set; }
/// <summary>
/// 访客微信号
/// </summary>
public int? WeChatNum { get; set; }
/// <summary>
/// 兴趣课程
/// </summary>
public string CourseName { get; set; }
/// <summary>
/// 学习时间
/// </summary>
public string StudyTime { get; set; }
/// <summary>
/// 当前水平
/// </summary>
public string LevelType { get; set; }
/// <summary>
/// 关联人员
/// </summary>
public string CreateBy { get; set; }
/// <summary>
/// 访客状态(1-正常,2-贵宾,3-黑名单)
/// </summary>
public int VisitorStatus { get; set; }
/// <summary>
/// 删除状态
/// </summary>
public DateStateEnum Status { get; set; }
/// <summary>
/// 意向评估
/// </summary>
public string Evaluate { get; set; }
/// <summary>
/// 到访次数
/// </summary>
public int VisitTimes { get; set; }
/// <summary>
/// 备注
/// </summary>
public string Remark { get; set; }
/// <summary>
/// 集团编号
/// </summary>
public int? Group_Id { get; set; }
/// <summary>
/// 值班编号
/// </summary>
public int PlanId { get; set; }
}
}
using Edu.Model.Entity.Duty;
using System;
using System.Collections.Generic;
using System.Text;
namespace Edu.Model.ViewModel.Duty
{
/// <summary>
/// 值班内容视图实体类
/// </summary>
public class RB_Duty_Content_ViewModel : RB_Duty_Content
{
}
}
using Edu.Model.Entity.Duty;
using System;
using System.Collections.Generic;
using System.Text;
namespace Edu.Model.ViewModel.Duty
{
/// <summary>
/// 值班班次视图实体类
/// </summary>
public class RB_Duty_PlanDetails_ViewModel : RB_Duty_PlanDetails
{
/// <summary>
/// 计划编号【查询使用】
/// </summary>
public string QPlanIds { get; set; }
/// <summary>
/// 班次名称
/// </summary>
public string ShiftName { get; set; }
/// <summary>
/// 值班开始时间
/// </summary>
public string StartTime { get; set; }
/// <summary>
/// 值班结束时间
/// </summary>
public string EndTime { get; set; }
/// <summary>
/// 值班人员姓名
/// </summary>
public string DutyManName { get; set; }
}
}
using Edu.Model.Entity.Duty;
using System;
using System.Collections.Generic;
using System.Text;
namespace Edu.Model.ViewModel.Duty
{
/// <summary>
/// 值班计划视图实体类
/// </summary>
public class RB_Duty_Plan_ViewModel : RB_Duty_Plan
{
/// <summary>
/// 值班详情
/// </summary>
public List<RB_Duty_PlanDetails_ViewModel> PlanDetails { get; set; }
/// <summary>
/// 创建人
/// </summary>
public string CreateByName { get; set; }
/// <summary>
/// 修改人
/// </summary>
public string UpdateByName { get; set; }
/// <summary>
/// 校区名称
/// </summary>
public string SchoolName { get; set; }
/// <summary>
/// 值班人员
/// </summary>
public int QDutyMan { get; set; }
}
}
using Edu.Model.Entity.Duty;
namespace Edu.Model.ViewModel.Duty
{
/// <summary>
/// 访客视图实体类
/// </summary>
public class RB_Visitor_ViewModel : RB_Visitor
{
}
}
using Edu.Common.Enum;
using Edu.Model.ViewModel.Duty;
using Edu.Model.ViewModel.User;
using Edu.Repository.Duty;
using Edu.Repository.User;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using VT.FW.AOP.CustomerAttribute;
using VT.FW.DB;
namespace Edu.Module.Duty
{
/// <summary>
/// 值班计划处理类
/// </summary>
public class DutyPlanModule
{
/// <summary>
/// 值班计划仓储层对象
/// </summary>
private readonly RB_Duty_PlanRepository duty_PlanRepository = new RB_Duty_PlanRepository();
/// <summary>
/// 值班班次仓储层对象
/// </summary>
private readonly RB_Duty_PlanDetailsRepository duty_PlanDetailsRepository = new RB_Duty_PlanDetailsRepository();
/// <summary>
/// 账号仓储层对象
/// </summary>
private readonly RB_AccountRepository accountRepository = new RB_AccountRepository();
/// <summary>
/// 获取值班计划分页列表【管理端】
/// </summary>
/// <param name="pageIndex"></param>
/// <param name="pageSize"></param>
/// <param name="rowsCount"></param>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Duty_Plan_ViewModel> GetDutyPlanPageModule(int pageIndex, int pageSize, out long rowsCount, RB_Duty_Plan_ViewModel query)
{
var list = duty_PlanRepository.GetDutyPlanPageRepository(pageIndex, pageSize, out rowsCount, query);
if (list != null && list.Count > 0)
{
var ids = string.Join(",", list.Select(qitem => qitem.Id));
List<RB_Duty_PlanDetails_ViewModel> planDetails = new List<RB_Duty_PlanDetails_ViewModel>();
if (!string.IsNullOrEmpty(ids))
{
planDetails= GetDutyPlanDetailsListModule(new RB_Duty_PlanDetails_ViewModel() { QPlanIds = ids },IsQueryDutyMan:true);
}
foreach (var item in list)
{
item.PlanDetails = planDetails?.Where(qitem => qitem.PlanId == item.Id)?.ToList() ?? new List<RB_Duty_PlanDetails_ViewModel>();
}
}
return list;
}
/// <summary>
/// 获取我的值班计划分页列表
/// </summary>
/// <param name="pageIndex"></param>
/// <param name="pageSize"></param>
/// <param name="rowsCount"></param>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Duty_Plan_ViewModel> GetMyDutyPlanPageModule(int pageIndex, int pageSize, out long rowsCount, RB_Duty_Plan_ViewModel query)
{
var list = duty_PlanRepository.GetMyDutyPlanPageRepository(pageIndex, pageSize, out rowsCount, query);
if (list != null && list.Count > 0)
{
var ids = string.Join(",", list.Select(qitem => qitem.Id));
List<RB_Duty_PlanDetails_ViewModel> planDetails = new List<RB_Duty_PlanDetails_ViewModel>();
if (!string.IsNullOrEmpty(ids))
{
planDetails = GetDutyPlanDetailsListModule(new RB_Duty_PlanDetails_ViewModel() { QPlanIds = ids }, IsQueryDutyMan: true);
}
foreach (var item in list)
{
item.PlanDetails = planDetails?.Where(qitem => qitem.PlanId == item.Id)?.ToList() ?? new List<RB_Duty_PlanDetails_ViewModel>();
}
}
return list;
}
/// <summary>
/// 获取值班班次详情列表
/// </summary>
/// <param name="query"></param>
/// <param name="IsQueryDutyMan">true-查询人员</param>
/// <returns></returns>
public List<RB_Duty_PlanDetails_ViewModel> GetDutyPlanDetailsListModule(RB_Duty_PlanDetails_ViewModel query,bool IsQueryDutyMan=false)
{
var list = duty_PlanDetailsRepository.GetDutyPlanDetailsListRepository(query);
if (IsQueryDutyMan && list != null && list.Count > 0)
{
var ids = string.Join(",", list.Select(qitem => qitem.DutyMan));
List<Employee_ViewModel> empList = new List<Employee_ViewModel>();
if (!string.IsNullOrEmpty(ids))
{
empList= accountRepository.GetEmployeeListRepository(new Model.ViewModel.User.Employee_ViewModel() { QIds = ids });
}
foreach (var item in list)
{
item.DutyManName = empList?.Where(qitem => qitem.Id == item.DutyMan)?.FirstOrDefault()?.EmployeeName ?? "";
}
}
return list;
}
/// <summary>
/// 新增修改值班计划
/// </summary>
/// <param name="model"></param>
/// <returns></returns>
[TransactionCallHandler]
public virtual bool SetDutyPlanModule(RB_Duty_Plan_ViewModel model)
{
bool flag = false;
if (model.Id > 0)
{
Dictionary<string, object> fileds = new Dictionary<string, object>()
{
{ nameof(RB_Duty_Plan_ViewModel.Date), model.Date},
{ nameof(RB_Duty_Plan_ViewModel.School_Id), model.School_Id},
{ nameof(RB_Duty_Plan_ViewModel.UpdateBy), model.UpdateBy},
{ nameof(RB_Duty_Plan_ViewModel.UpdateTime), model.UpdateTime},
};
flag = duty_PlanRepository.Update(fileds, new WhereHelper(nameof(RB_Duty_Plan_ViewModel.Id), model.Id));
}
else
{
var newId = duty_PlanRepository.Insert(model);
model.Id = newId;
flag = newId > 0;
}
//原班次列表
var oldPlanDetailsList = GetDutyPlanDetailsListModule(new RB_Duty_PlanDetails_ViewModel()
{
PlanId = model.Id
});
//原没有班次信息
if (oldPlanDetailsList == null || (oldPlanDetailsList != null && oldPlanDetailsList.Count == 0))
{
if (model.PlanDetails != null && model.PlanDetails.Count > 0)
{
foreach (var item in model.PlanDetails)
{
item.PlanId = model.Id;
duty_PlanDetailsRepository.Insert(item);
}
}
}
else
{
//现在没有阶梯报价了【直接删除以前的阶梯报价】
if (model.PlanDetails == null || (model.PlanDetails != null && model.PlanDetails.Count == 0))
{
duty_PlanDetailsRepository.DeletePlanDetailsRepository(model.Id);
}
//找出差异的数据
var deleteList = oldPlanDetailsList.Where(qitem => !model.PlanDetails.Any(oldItem => qitem.Id == oldItem.Id)).ToList();
foreach (var dItem in deleteList)
{
if (dItem.Id > 0)
{
duty_PlanDetailsRepository.Delete(dItem.Id);
}
}
foreach (var item in model.PlanDetails)
{
item.PlanId = model.Id;
if (item.Id == 0)
{
duty_PlanDetailsRepository.Insert(item);
}
else
{
duty_PlanDetailsRepository.Update(item);
}
}
}
return flag;
}
/// <summary>
/// 根据编号获取计划详情
/// </summary>
/// <param name="Id"></param>
/// <returns></returns>
public RB_Duty_Plan_ViewModel GetDutyPlanModule(int Id)
{
RB_Duty_Plan_ViewModel model = duty_PlanRepository.GetEntity<RB_Duty_Plan_ViewModel>(Id);
if (model != null && model.Id > 0)
{
model.PlanDetails = GetDutyPlanDetailsListModule(new RB_Duty_PlanDetails_ViewModel() { PlanId = model.Id });
}
return model;
}
/// <summary>
/// 删除值班计划
/// </summary>
/// <param name="Id"></param>
/// <returns></returns>
public bool RemoveDutyPlanModule(int Id)
{
Dictionary<string, object> fileds = new Dictionary<string, object>()
{
{ nameof(RB_Duty_Plan_ViewModel.Status),(int) DateStateEnum.Delete}
};
var flag = duty_PlanRepository.Update(fileds, new WhereHelper(nameof(RB_Duty_Plan_ViewModel.Id), Id));
return flag;
}
}
}
using Edu.Model.Entity.Duty;
using Edu.Model.ViewModel.Duty;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Edu.Repository.Duty
{
/// <summary>
/// 值班内容仓储层
/// </summary>
public class RB_Duty_ContentRepository : BaseRepository<RB_Duty_Content>
{
/// <summary>
/// 获取值班内容列表
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Duty_Content_ViewModel> GetDutyContentListRepository(RB_Duty_Content_ViewModel query)
{
StringBuilder builder = new StringBuilder();
builder.AppendFormat(@"
SELECT A.*
FROM RB_Duty_Content AS A
WHERE 1=1
");
if (query == null)
{
return new List<RB_Duty_Content_ViewModel>();
}
else
{
if (query.Group_Id > 0)
{
builder.AppendFormat(@" AND A.{0}={1} ", nameof(RB_Duty_Content_ViewModel.Group_Id), query.Group_Id);
}
if (query.PlanId > 0)
{
builder.AppendFormat(@" AND A.{0}={1} ", nameof(RB_Duty_Content_ViewModel.PlanId), query.PlanId);
}
}
return Get<RB_Duty_Content_ViewModel>(builder.ToString()).ToList();
}
}
}
using Edu.Model.Entity.Duty;
using Edu.Model.ViewModel.Duty;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Edu.Repository.Duty
{
/// <summary>
/// 值班班次仓储层
/// </summary>
public class RB_Duty_PlanDetailsRepository:BaseRepository<RB_Duty_PlanDetails>
{
/// <summary>
/// 获取值班班次详情列表
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Duty_PlanDetails_ViewModel> GetDutyPlanDetailsListRepository(RB_Duty_PlanDetails_ViewModel query)
{
StringBuilder builder = new StringBuilder();
builder.AppendFormat(@"
SELECT A.*,IFNULL(B.Name,'') AS ShiftName,IFNULL(B.StartTime,'') AS StartTime,IFNULL(B.EndTime,'') AS EndTime
FROM RB_Duty_PlanDetails AS A LEFT JOIN rb_duty_frequency AS B ON A.Shift=B.Id
WHERE 1=1
");
if (query == null)
{
return new List<RB_Duty_PlanDetails_ViewModel>();
}
else
{
if (query.PlanId > 0)
{
builder.AppendFormat(@" AND A.{0}={1} ", nameof(RB_Duty_PlanDetails_ViewModel.PlanId), query.PlanId);
}
if (!string.IsNullOrEmpty(query.QPlanIds))
{
builder.AppendFormat(@" AND A.{0} IN({1}) ", nameof(RB_Duty_PlanDetails_ViewModel.PlanId), query.QPlanIds);
}
}
builder.AppendFormat(" ORDER BY B.{0} ASC ", nameof(RB_Duty_Frequency_ViewModel.StartTime));
return Get<RB_Duty_PlanDetails_ViewModel>(builder.ToString()).ToList();
}
/// <summary>
/// 根据计划编号删除班次
/// </summary>
/// <param name="PlanId"></param>
/// <returns></returns>
public bool DeletePlanDetailsRepository(int PlanId)
{
bool flag = base.DeleteOne(new VT.FW.DB.WhereHelper(nameof(RB_Duty_PlanDetails_ViewModel.PlanId), PlanId));
return flag;
}
}
}
using Edu.Common.Enum;
using Edu.Model.Entity.Duty;
using Edu.Model.ViewModel.Duty;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Edu.Repository.Duty
{
/// <summary>
/// 值班计划仓储层
/// </summary>
public class RB_Duty_PlanRepository : BaseRepository<RB_Duty_Plan>
{
/// <summary>
/// 获取值班计划分页列表【管理端】
/// </summary>
/// <param name="pageIndex"></param>
/// <param name="pageSize"></param>
/// <param name="rowsCount"></param>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Duty_Plan_ViewModel> GetDutyPlanPageRepository(int pageIndex, int pageSize, out long rowsCount, RB_Duty_Plan_ViewModel query)
{
rowsCount = 0;
StringBuilder builder = new StringBuilder();
builder.AppendFormat(@"
SELECT A.* ,IFNULL(B.SName,'') AS SchoolName
FROM RB_Duty_Plan AS A LEFT JOIN rb_school AS B ON A.School_Id=B.SId
WHERE 1=1
");
builder.AppendFormat(@" AND A.{0}={1} ", nameof(RB_Duty_Plan_ViewModel.Status), (int)DateStateEnum.Normal);
if (query == null)
{
return new List<RB_Duty_Plan_ViewModel>();
}
else
{
if (query.Group_Id > 0)
{
builder.AppendFormat(@" AND A.{0}={1} ", nameof(RB_Duty_Plan_ViewModel.Group_Id), query.Group_Id);
}
if (query.School_Id > 0)
{
builder.AppendFormat(@" AND A.{0}={1} ", nameof(RB_Duty_Plan_ViewModel.School_Id), query.School_Id);
}
}
builder.AppendFormat(@" ORDER BY A.{0} ASC ", nameof(RB_Duty_Plan_ViewModel.Date));
return GetPage<RB_Duty_Plan_ViewModel>(pageIndex, pageSize, out rowsCount, builder.ToString()).ToList();
}
/// <summary>
/// 获取我的值班计划分页列表
/// </summary>
/// <param name="pageIndex"></param>
/// <param name="pageSize"></param>
/// <param name="rowsCount"></param>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Duty_Plan_ViewModel> GetMyDutyPlanPageRepository(int pageIndex, int pageSize, out long rowsCount, RB_Duty_Plan_ViewModel query)
{
rowsCount = 0;
StringBuilder builder = new StringBuilder();
builder.AppendFormat(@"
SELECT A.ID,A.Date
FROM RB_Duty_Plan AS A INNER JOIN rb_duty_plandetails AS B ON A.Id=B.PlanId
WHERE 1=1 AND A.`Status`=0 AND B.`Status`=0
");
if (query == null)
{
return new List<RB_Duty_Plan_ViewModel>();
}
else
{
if (query.Group_Id > 0)
{
builder.AppendFormat(@" AND A.{0}={1} ", nameof(RB_Duty_Plan_ViewModel.Group_Id), query.Group_Id);
}
if (query.QDutyMan > 0)
{
builder.AppendFormat(@" AND B.{0}={1} ", nameof(RB_Duty_PlanDetails_ViewModel.DutyMan), query.QDutyMan);
}
}
builder.AppendFormat(" GROUP BY A.Id,A.Date ");
builder.AppendFormat(" ORDER BY A.Date ASC ");
return GetPage<RB_Duty_Plan_ViewModel>(pageIndex, pageSize, out rowsCount, builder.ToString()).ToList();
}
}
}
using Edu.Model.Entity.Duty;
using Edu.Model.ViewModel.Duty;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Edu.Repository.Duty
{
/// <summary>
/// 访客仓储层
/// </summary>
public class RB_VisitorRepository : BaseRepository<RB_Visitor>
{
/// <summary>
/// 获取访客分页列表
/// </summary>
/// <param name="pageIndex"></param>
/// <param name="pageSize"></param>
/// <param name="rowsCount"></param>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Visitor_ViewModel> GetVisitorPageRepository(int pageIndex, int pageSize, out long rowsCount, RB_Visitor_ViewModel query)
{
StringBuilder builder = new StringBuilder();
builder.AppendFormat(@"
SELECT A.*
FROM RB_Visitor AS A
WHERE 1=1
");
if (query == null)
{
rowsCount = 0;
return new List<RB_Visitor_ViewModel>();
}
else
{
if (query.Group_Id > 0)
{
builder.AppendFormat(@" AND A.{0}={1} ", nameof(RB_Visitor_ViewModel.Group_Id), query.Group_Id);
}
}
return GetPage<RB_Visitor_ViewModel>(pageIndex, pageSize, out rowsCount, builder.ToString()).ToList();
}
}
}
using Edu.Cache.User;
using Edu.Common.API;
using Edu.Common.Plugin;
using Edu.Model.ViewModel.Duty;
using Edu.Module.Duty;
using Edu.WebApi.Filter;
using Microsoft.AspNetCore.Cors;
using Microsoft.AspNetCore.Mvc;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
namespace Edu.WebApi.Controllers.Duty
{
/// <summary>
/// 值班计划控制器
/// </summary>
[Route("api/[controller]/[action]")]
[ApiExceptionFilter]
[ApiController]
[EnableCors("AllowCors")]
public class DutyPlanController : BaseController
{
private readonly DutyPlanModule dutyPlanModule = AOP.AOPHelper.CreateAOPObject<DutyPlanModule>();
/// <summary>
/// 获取值班计划分页列表【管理端】
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetDutyPlanPage()
{
var pageModel = Common.Plugin.JsonHelper.DeserializeObject<ResultPageModel>(RequestParm.Msg.ToString());
var query = new RB_Duty_Plan_ViewModel()
{
School_Id = base.ParmJObj.GetInt("School_Id")
};
query.Group_Id = base.UserInfo.Group_Id;
List<object> result = new List<object>();
var list = dutyPlanModule.GetDutyPlanPageModule(pageModel.PageIndex, pageModel.PageSize, out long rowsCount, query);
foreach (var item in list)
{
if (item.CreateBy > 0)
{
item.CreateByName = UserReidsCache.GetUserLoginInfo(item.CreateBy)?.AccountName ?? "";
}
if (item.UpdateBy > 0)
{
item.UpdateByName = UserReidsCache.GetUserLoginInfo(item.UpdateBy)?.AccountName ?? "";
}
result.Add(new
{
item.Id,
PlanDate = Common.ConvertHelper.FormatDate(item.Date),
item.SchoolName,
item.School_Id,
PlanDetails = item?.PlanDetails?.Select(qitem => new
{
qitem.Id,
qitem.PlanId,
qitem.DutyMan,
qitem.DutyManName,
qitem.StartTime,
qitem.EndTime,
qitem.Shift,
qitem.ShiftName
})
});
}
pageModel.Count = rowsCount;
pageModel.PageData = result;
return ApiResult.Success(data: pageModel);
}
/// <summary>
/// 获取我的值班计划分页列表
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetMyDutyPlanPage()
{
var pageModel = Common.Plugin.JsonHelper.DeserializeObject<ResultPageModel>(RequestParm.Msg.ToString());
var query = new RB_Duty_Plan_ViewModel()
{
School_Id = base.ParmJObj.GetInt("School_Id")
};
query.Group_Id = base.UserInfo.Group_Id;
List<object> result = new List<object>();
var list = dutyPlanModule.GetMyDutyPlanPageModule(pageModel.PageIndex, pageModel.PageSize, out long rowsCount, query);
foreach (var item in list)
{
if (item.CreateBy > 0)
{
item.CreateByName = UserReidsCache.GetUserLoginInfo(item.CreateBy)?.AccountName ?? "";
}
if (item.UpdateBy > 0)
{
item.UpdateByName = UserReidsCache.GetUserLoginInfo(item.UpdateBy)?.AccountName ?? "";
}
if (item.PlanDetails != null && item.PlanDetails.Count > 0)
{
}
result.Add(new
{
item.Id,
PlanDate = Common.ConvertHelper.FormatDate(item.Date),
item.SchoolName,
item.School_Id,
});
}
pageModel.Count = rowsCount;
pageModel.PageData = result;
return ApiResult.Success(data: pageModel);
}
/// <summary>
/// 新增修改排班计划
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult SaveDutyPlan()
{
var model = new RB_Duty_Plan_ViewModel()
{
Id=base.ParmJObj.GetInt("Id"),
Date=base.ParmJObj.GetDateTime("Date"),
School_Id = base.ParmJObj.GetInt("School_Id")
};
try
{
model.PlanDetails = Common.Plugin.JsonHelper.DeserializeObject<List<RB_Duty_PlanDetails_ViewModel>>(base.ParmJObj.GetStringValue("PlanDetails"));
}
catch (Exception ex)
{
Common.Plugin.LogHelper.Write(ex, "SaveDutyPlan_PlanDetails");
}
model.Group_Id = base.UserInfo.Group_Id;
model.Status = Common.Enum.DateStateEnum.Normal;
model.CreateBy = base.UserInfo.Id;
model.CreateTime = DateTime.Now;
model.UpdateBy = base.UserInfo.Id;
model.UpdateTime = DateTime.Now;
bool flag = dutyPlanModule.SetDutyPlanModule(model);
return flag ? ApiResult.Success() : ApiResult.Failed();
}
/// <summary>
/// 获取排班计划详情
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetDutyPlan()
{
var Id = base.ParmJObj.GetInt("Id");
var model = dutyPlanModule.GetDutyPlanModule(Id);
return ApiResult.Success(data: model);
}
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment