Commit 645e117f by lcx

Merge branch 'feature/划拨' into release/v20210709功能分支合并

# Conflicts:
#	performance/Performance.Api/wwwroot/Performance.DtoModels.xml
#	performance/Performance.Api/wwwroot/Performance.EntityModels.xml
#	performance/Performance.DtoModels/AutoMapper/AutoMapperConfigs.cs
#	performance/Performance.EntityModels/Context/PerformanceDbContext.cs
#	performance/Performance.EntityModels/Entity/cof_alias.cs
#	performance/Performance.EntityModels/Entity/per_employee.cs
#	performance/Performance.EntityModels/Entity/res_compute.cs
parents e345c2de c80be479
......@@ -34,6 +34,7 @@ public class AllotController : Controller
private ILogger<AllotController> _logger;
private ClaimService _claim;
private LogManageService _logManageService;
private readonly CostTransferService costTransferService;
private IBackgroundTaskQueue _backgroundTaskQueue;
private IServiceScopeFactory _serviceScopeFactory;
......@@ -45,7 +46,8 @@ public class AllotController : Controller
IBackgroundTaskQueue backgroundTaskQueue,
IServiceScopeFactory serviceScopeFactory,
ClaimService claim,
LogManageService logManageService)
LogManageService logManageService,
CostTransferService costTransferService)
{
_allotService = allotService;
_resultComputeService = resultComputeService;
......@@ -53,6 +55,7 @@ public class AllotController : Controller
_evn = evn;
_claim = claim;
_logManageService = logManageService;
this.costTransferService = costTransferService;
_configService = configService;
_backgroundTaskQueue = backgroundTaskQueue;
_serviceScopeFactory = serviceScopeFactory;
......@@ -96,6 +99,8 @@ public ApiResponse Insert([FromBody] AllotRequest request)
var userId = _claim.GetUserId();
var result = _allotService.InsertAllot(request, userId);
_configService.Copy(result);
//带出上月划拨记录
costTransferService.IntoLastTiemData(request.HospitalId.Value, result.ID);
return new ApiResponse(ResponseType.OK, result);
}
......@@ -421,6 +426,8 @@ public ApiResponse Issued([FromBody] AllotRequest request)
_allotService.UpdateAllotStates(allot.ID, (int)AllotStates.GenerateSucceed, EnumHelper.GetDescription(AllotStates.GenerateSucceed));
// 科室下发
_resultComputeService.GenerateSecondAllot(allot);
//绩效划拨,下发驳回
costTransferService.RejectedApplicat(allot.ID);
return new ApiResponse(ResponseType.OK);
}
......
using Microsoft.AspNetCore.Mvc;
using Performance.DtoModels;
using Performance.EntityModels;
using Performance.Services;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
namespace Performance.Api.Controllers
{
[Route("api/[controller]")]
public class CostTransferController : Controller
{
private readonly CostTransferService costTransferService;
private readonly ClaimService claim;
private readonly RoleService roleService;
private readonly UserService userService;
public CostTransferController(
CostTransferService costTransferService,
ClaimService claim,
RoleService roleService,
UserService userService)
{
this.costTransferService = costTransferService;
this.claim = claim;
this.roleService = roleService;
this.userService = userService;
}
/// <summary>
/// 申请划拨
/// </summary>
/// <returns></returns>
[Route("submit")]
[HttpPost]
public ApiResponse SubmitApplications([FromBody] CostTransferRequest request)
{
if (request.AllotId <= 0)
return new ApiResponse(ResponseType.ParameterError, "参数AllotId无效!");
var result = costTransferService.Applicat(request);
return new ApiResponse(ResponseType.OK, result);
}
/// <summary>
///
/// </summary>
/// <returns></returns>
[Route("common/{hospitalId}/allot/{allotId}")]
[HttpPost]
public ApiResponse Common(int hospitalId, int allotId, [FromBody] DepartmentDetail detail)
{
if (hospitalId <= 0)
return new ApiResponse(ResponseType.ParameterError, "参数HospitalId无效!");
if (allotId <= 0)
return new ApiResponse(ResponseType.ParameterError, "参数AllotId无效!");
var userid = claim.GetUserId();
var user = userService.GetUser(userid);
var role = roleService.GetARole(user.UserID);
var result = costTransferService.Common(allotId, hospitalId, role.Type.Value, user.Department, detail);
result.deparment = user.Department ?? "";
return new ApiResponse(ResponseType.OK, result);
}
/// <summary>
/// 当前科室、类别
/// </summary>
/// <returns></returns>
[Route("deptdetial/{hospitalId}/allot/{allotId}")]
[HttpPost]
public ApiResponse DeptDetial(int hospitalId, int allotId)
{
if (hospitalId <= 0)
return new ApiResponse(ResponseType.ParameterError, "参数HospitalId无效!");
if (allotId <= 0)
return new ApiResponse(ResponseType.ParameterError, "参数AllotId无效!");
var userid = claim.GetUserId();
var user = userService.GetUser(userid);
var role = roleService.GetARole(user.UserID);
var result = costTransferService.DeptDetial(allotId, hospitalId, role.Type.Value, user.Department);
result.Item2.Department = user.Department ?? "";
return new ApiResponse(ResponseType.OK, result.Item2);
}
/// <summary>
/// 撤回提交
/// </summary>
/// <param name="itemId"></param>
/// <returns></returns>
[Route("withdrawsubmit/{itemId}")]
[HttpPost]
public ApiResponse WithdrawSubmit(int itemId)
{
if (itemId <= 0)
return new ApiResponse(ResponseType.ParameterError, "参数itemId无效!");
costTransferService.WithdrawSubmit(itemId);
return new ApiResponse(ResponseType.OK);
}
/// <summary>
/// 审核列表
/// </summary>
/// <param name="allotId"></param>
/// <param name="menuType"></param>
/// <returns></returns>
[Route("auditlist/{allotId}/menuType/{menuType}")]
[HttpPost]
public ApiResponse AuditList(int allotId, int menuType)
{
if (allotId <= 0)
return new ApiResponse(ResponseType.ParameterError, "参数AllotId无效!");
var userid = claim.GetUserId();
var user = userService.GetUser(userid);
var role = roleService.GetARole(user.UserID);
var result = costTransferService.GetAuditList(allotId, menuType, role.Type.Value, user.Department);
return new ApiResponse(ResponseType.OK, result);
}
/// <summary>
/// 划拨审核
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
[Route("costtransferaudit")]
[HttpPost]
public ApiResponse Audit([FromBody] AuditRequest request)
{
if (request.AllotId <= 0)
return new ApiResponse(ResponseType.ParameterError, "参数AllotId无效!");
var userid = claim.GetUserId();
var user = userService.GetUser(userid);
var role = roleService.GetARole(user.UserID);
var roleArr = new[] { 1, 2, 5 };
if (roleArr.Contains(role.Type.Value))
costTransferService.CostTransferAudit(request, true);
else
costTransferService.CostTransferAudit(request, false);
return new ApiResponse(ResponseType.OK);
}
/// <summary>
/// 驳回修改
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
[Route("updateapplicat")]
[HttpPost]
public ApiResponse UpdateApplicat([FromBody] CostTransferUpdateRequest request)
{
if (request.AllotId <= 0)
return new ApiResponse(ResponseType.ParameterError, "参数AllotId无效!");
costTransferService.UpdateApplicat(request);
return new ApiResponse(ResponseType.OK);
}
/// <summary>
/// 划拨报表
/// </summary>
/// <param name="allotId"></param>
/// <param name="auditType"></param>
/// <param name="detail"></param>
/// <returns></returns>
[Route("transfercontent/{allotId}/auditType/{auditType}")]
[HttpPost]
public ApiResponse TransferContent(int allotId,int auditType ,[FromBody] DepartmentDetail detail)
{
if (allotId <= 0)
return new ApiResponse(ResponseType.ParameterError, "参数AllotId无效!");
var result=costTransferService.TransferContent(allotId,auditType,detail);
return new ApiResponse(ResponseType.OK,result);
}
}
}
......@@ -10,7 +10,7 @@ https://go.microsoft.com/fwlink/?LinkID=208121.
<LastUsedBuildConfiguration>Release</LastUsedBuildConfiguration>
<LastUsedPlatform>Any CPU</LastUsedPlatform>
<PublishProvider>FileSystem</PublishProvider>
<PublishUrl>bin\Release\netcoreapp2.2\publish\</PublishUrl>
<PublishUrl>D:\publish\jx.suvalue.com2</PublishUrl>
<WebPublishMethod>FileSystem</WebPublishMethod>
<SiteUrlToLaunchAfterPublish />
<TargetFramework>netcoreapp2.2</TargetFramework>
......
......@@ -742,6 +742,62 @@
</summary>
<returns></returns>
</member>
<member name="M:Performance.Api.Controllers.CostTransferController.SubmitApplications(Performance.DtoModels.CostTransferRequest)">
<summary>
申请划拨
</summary>
<returns></returns>
</member>
<member name="M:Performance.Api.Controllers.CostTransferController.Common(System.Int32,System.Int32,Performance.DtoModels.DepartmentDetail)">
<summary>
</summary>
<returns></returns>
</member>
<member name="M:Performance.Api.Controllers.CostTransferController.DeptDetial(System.Int32,System.Int32)">
<summary>
当前科室、类别
</summary>
<returns></returns>
</member>
<member name="M:Performance.Api.Controllers.CostTransferController.WithdrawSubmit(System.Int32)">
<summary>
撤回提交
</summary>
<param name="itemId"></param>
<returns></returns>
</member>
<member name="M:Performance.Api.Controllers.CostTransferController.AuditList(System.Int32,System.Int32)">
<summary>
审核列表
</summary>
<param name="allotId"></param>
<param name="menuType"></param>
<returns></returns>
</member>
<member name="M:Performance.Api.Controllers.CostTransferController.Audit(Performance.DtoModels.AuditRequest)">
<summary>
划拨审核
</summary>
<param name="request"></param>
<returns></returns>
</member>
<member name="M:Performance.Api.Controllers.CostTransferController.UpdateApplicat(Performance.DtoModels.CostTransferUpdateRequest)">
<summary>
驳回修改
</summary>
<param name="request"></param>
<returns></returns>
</member>
<member name="M:Performance.Api.Controllers.CostTransferController.TransferContent(System.Int32,System.Int32,Performance.DtoModels.DepartmentDetail)">
<summary>
划拨报表
</summary>
<param name="allotId"></param>
<param name="auditType"></param>
<param name="detail"></param>
<returns></returns>
</member>
<member name="M:Performance.Api.Controllers.EmployeeController.GetEmployeeList(Performance.DtoModels.EmployeeRequest)">
<summary>
获取人员列表
......
......@@ -158,7 +158,7 @@
<summary> 归档 </summary>
</member>
<member name="F:Performance.DtoModels.AllotStates.Wait">
<summary> 归档 </summary>
<summary> 等待 </summary>
</member>
<member name="F:Performance.DtoModels.AllotStates.GenerateAccomplish">
<summary> 绩效结果解析成功 </summary>
......@@ -2977,6 +2977,36 @@
职称
</summary>
</member>
<member name="P:Performance.DtoModels.CostTransferResponse.AllotId">
<summary>
</summary>
</member>
<member name="P:Performance.DtoModels.CostTransferResponse.ApplicantUnitType">
<summary>
申请者核算单元类型
</summary>
</member>
<member name="P:Performance.DtoModels.CostTransferResponse.ApplicantDepartment">
<summary>
申请者科室
</summary>
</member>
<member name="P:Performance.DtoModels.CostTransferResponse.AdoptedUnitType">
<summary>
审核者核算单元类型
</summary>
</member>
<member name="P:Performance.DtoModels.CostTransferResponse.AdoptedDepartment">
<summary>
审核者科室
</summary>
</member>
<member name="P:Performance.DtoModels.CostTransferResponse.Status">
<summary>
0 未审核 1 部分审核 2 全部审核
</summary>
</member>
<member name="P:Performance.DtoModels.DeptDataDetails`1.Pandect">
<summary> 概览</summary>
</member>
......
......@@ -133,6 +133,12 @@
<member name="P:Performance.EntityModels.PerformanceDbContext.collect_permission">
<summary> </summary>
</member>
<member name="P:Performance.EntityModels.PerformanceDbContext.cost_transfer">
<summary> </summary>
</member>
<member name="P:Performance.EntityModels.PerformanceDbContext.cost_transfer_item">
<summary> </summary>
</member>
<member name="P:Performance.EntityModels.PerformanceDbContext.cust_script">
<summary> 自定义导出 </summary>
</member>
......@@ -1187,7 +1193,7 @@
</member>
<member name="P:Performance.EntityModels.ag_secondallot.SubmitType">
<summary>
提交类型 1 使用模板 2 其他类型数据
提交类型 1使用模板 2 其他类型数据
</summary>
</member>
<member name="P:Performance.EntityModels.ag_secondallot.SubmitTime">
......@@ -1387,7 +1393,7 @@
</member>
<member name="P:Performance.EntityModels.ag_workload.WorkTypeId">
<summary>
1、单项奖励 2、工作量占比 ..(自定义占比)
-1、单项奖励 0、工作量占比 ..(自定义占比)
</summary>
</member>
<member name="T:Performance.EntityModels.ag_workload_source">
......@@ -1437,12 +1443,12 @@
</member>
<member name="P:Performance.EntityModels.ag_workload_source.WorkTypeId">
<summary>
1、单项奖励 2、工作量占比 ..(自定义占比)
-1、单项奖励 0、工作量占比 ..(自定义占比)
</summary>
</member>
<member name="T:Performance.EntityModels.ag_workload_type">
<summary>
二次绩效工作量绩效分类
</summary>
</member>
<member name="P:Performance.EntityModels.ag_workload_type.Id">
......@@ -1695,6 +1701,46 @@
参数值
</summary>
</member>
<member name="T:Performance.EntityModels.cof_alias">
<summary>
别名配置
</summary>
</member>
<member name="P:Performance.EntityModels.cof_alias.Id">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.cof_alias.HospitalId">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.cof_alias.Route">
<summary>
前端路由地址
</summary>
</member>
<member name="P:Performance.EntityModels.cof_alias.Name">
<summary>
描述名称
</summary>
</member>
<member name="P:Performance.EntityModels.cof_alias.OriginalName">
<summary>
原始名
</summary>
</member>
<member name="P:Performance.EntityModels.cof_alias.Alias">
<summary>
别名
</summary>
</member>
<member name="P:Performance.EntityModels.cof_alias.States">
<summary>
状态 1 可用 0 禁用
</summary>
</member>
<member name="T:Performance.EntityModels.cof_check">
<summary>
上传excel文件校验配置
......@@ -2270,6 +2316,126 @@
是否附带上次绩效 0 附带 1 不附带
</summary>
</member>
<member name="T:Performance.EntityModels.cost_transfer">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.cost_transfer.Id">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.cost_transfer.AllotId">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.cost_transfer.ApplicantUnitType">
<summary>
申请者核算单元类型
</summary>
</member>
<member name="P:Performance.EntityModels.cost_transfer.ApplicantDepartment">
<summary>
申请者科室
</summary>
</member>
<member name="P:Performance.EntityModels.cost_transfer.AdoptedUnitType">
<summary>
审核者核算单元类型
</summary>
</member>
<member name="P:Performance.EntityModels.cost_transfer.AdoptedDepartment">
<summary>
审核者科室
</summary>
</member>
<member name="P:Performance.EntityModels.cost_transfer.Status">
<summary>
0 未审核 1 全部通过 2 部分通过 3 全部驳回 4 含有下发驳回
</summary>
</member>
<member name="P:Performance.EntityModels.cost_transfer.AdminStatus">
<summary>
0 未审核 1 全部通过 2 部分通过 3 全部驳回 4 含有下发驳回
</summary>
</member>
<member name="T:Performance.EntityModels.cost_transfer_item">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.cost_transfer_item.Id">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.cost_transfer_item.TransferId">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.cost_transfer_item.Source">
<summary>
来源,sheet名称
</summary>
</member>
<member name="P:Performance.EntityModels.cost_transfer_item.Category">
<summary>
费用类型
</summary>
</member>
<member name="P:Performance.EntityModels.cost_transfer_item.Amount">
<summary>
金额
</summary>
</member>
<member name="P:Performance.EntityModels.cost_transfer_item.Ratio">
<summary>
分割比例
</summary>
</member>
<member name="P:Performance.EntityModels.cost_transfer_item.CalculationAmount">
<summary>
实际金额
</summary>
</member>
<member name="P:Performance.EntityModels.cost_transfer_item.IsUseRatio">
<summary>
是否使用分割比例
</summary>
</member>
<member name="P:Performance.EntityModels.cost_transfer_item.ApplicationRemark">
<summary>
申请理由
</summary>
</member>
<member name="P:Performance.EntityModels.cost_transfer_item.DepartmentRemark">
<summary>
科室备注
</summary>
</member>
<member name="P:Performance.EntityModels.cost_transfer_item.AdminRemark">
<summary>
管理员备注
</summary>
</member>
<member name="P:Performance.EntityModels.cost_transfer_item.Status">
<summary>
0 默认 1 通过 2 驳回 3 下发驳回 4 撤回
</summary>
</member>
<member name="P:Performance.EntityModels.cost_transfer_item.AdminStatus">
<summary>
0 默认 1 通过 2 驳回 3 下发驳回 4 撤回
</summary>
</member>
<member name="P:Performance.EntityModels.cost_transfer_item.IsWrited">
<summary>
数据是否被写入
</summary>
</member>
<member name="T:Performance.EntityModels.cust_script">
<summary>
自定义导出
......@@ -4492,7 +4658,7 @@
</member>
<member name="T:Performance.EntityModels.per_apr_amount_hide">
<summary>
医院其他绩效
</summary>
</member>
<member name="P:Performance.EntityModels.per_apr_amount_hide.Id">
......@@ -5020,24 +5186,24 @@
医院Id
</summary>
</member>
<member name="P:Performance.EntityModels.per_dept_dic.CreateTime">
<member name="P:Performance.EntityModels.per_dept_dic.IsVerify">
<summary>
0 未通过验证 1 通过验证
</summary>
</member>
<member name="P:Performance.EntityModels.per_dept_dic.CreateUser">
<member name="P:Performance.EntityModels.per_dept_dic.VerifyMessage">
<summary>
验证失败描述
</summary>
</member>
<member name="P:Performance.EntityModels.per_dept_dic.IsVerify">
<member name="P:Performance.EntityModels.per_dept_dic.CreateTime">
<summary>
0 未通过验证 1 通过验证
</summary>
</member>
<member name="P:Performance.EntityModels.per_dept_dic.VerifyMessage">
<member name="P:Performance.EntityModels.per_dept_dic.CreateUser">
<summary>
验证失败描述
</summary>
</member>
<member name="T:Performance.EntityModels.per_employee">
......@@ -5102,7 +5268,7 @@
</member>
<member name="P:Performance.EntityModels.per_employee.UnitType">
<summary>
核算单元类别
人员类别
</summary>
</member>
<member name="P:Performance.EntityModels.per_employee.Attendance">
......@@ -6690,14 +6856,14 @@
调节后其他绩效
</summary>
</member>
<member name="P:Performance.EntityModels.res_compute.AssessLaterManagementFee">
<member name="P:Performance.EntityModels.res_compute.NeedSecondAllot">
<summary>
考核后管理绩效
是否需要二次分配
</summary>
</member>
<member name="P:Performance.EntityModels.res_compute.NeedSecondAllot">
<member name="P:Performance.EntityModels.res_compute.AssessLaterManagementFee">
<summary>
是否需要二次分配
考核后管理绩效
</summary>
</member>
<member name="T:Performance.EntityModels.res_reserved">
......
......@@ -236,6 +236,11 @@ public AutoMapperConfigs()
.ForMember(dest => dest.PersonTime, opt => opt.MapFrom(src => src.ResultData))
.ReverseMap();
CreateMap<cost_transfer, CostTransferResponse>(
).ForMember(back => back.Items, n => n.Ignore());
CreateMap<cost_transfer, cost_transfer>(
).ForMember(back => back.Id, n => n.Ignore());
CreateMap<ag_headsource, SecPrintHeaderResponse>().ReverseMap();
}
}
......
......@@ -74,7 +74,7 @@ public enum AllotStates
/// <summary> 归档 </summary>
[Description("归档")]
Archive = 8,
/// <summary> 归档 </summary>
/// <summary> 等待 </summary>
[Description("等待")]
Wait = 9,
/// <summary> 绩效结果解析成功 </summary>
......
using System;
using System.Collections.Generic;
using System.Text;
namespace Performance.DtoModels
{
public class CostTransferItemRequest
{
public string Category { get; set; }
public string Source { get; set; }
public decimal? Ratio { get; set; }
public decimal? Amount { get; set; }
public decimal? CalculationAmount { get; set; }
public int IsUseRatio { get; set; }
public string ApplicationRemark { get; set; }
}
}
using Performance.EntityModels;
using System;
using System.Collections.Generic;
using System.Text;
namespace Performance.DtoModels
{
public class CostTransferRequest
{
public int AllotId { get; set; }
public DepartmentDetail Applicant { get; set; }
public DepartmentDetail Adopted { get; set; }
public List<CostTransferItemRequest> Items { get; set; }
}
public class DepartmentDetail
{
public string UnitType { get; set; }
public string Department { get; set; }
}
public class CostTransferUpdateRequest : CostTransferRequest
{
public int TransferId { get; set; }
public new List<cost_transfer_item> Items { get; set; }
}
public class AuditRequest
{
public int AllotId { get; set; }
public int[] TransferItemId { get; set; }
public int Status { get; set; }
public string Remake { get; set; }
}
}
using Performance.EntityModels;
using System;
using System.Collections.Generic;
using System.Text;
namespace Performance.DtoModels
{
public class CostTransferResponse
{
public int Id { get; set; }
/// <summary>
///
/// </summary>
public int AllotId { get; set; }
/// <summary>
/// 申请者核算单元类型
/// </summary>
public string ApplicantUnitType { get; set; }
/// <summary>
/// 申请者科室
/// </summary>
public string ApplicantDepartment { get; set; }
/// <summary>
/// 审核者核算单元类型
/// </summary>
public string AdoptedUnitType { get; set; }
/// <summary>
/// 审核者科室
/// </summary>
public string AdoptedDepartment { get; set; }
/// <summary>
/// 0 未审核 1 部分审核 2 全部审核
/// </summary>
public int Status { get; set; }
public int AdminStatus { get; set; }
public decimal AmountSum { get; set; }
public List<Option> Items { get; set; }
}
public class CommonResponse
{
public string deparment { get; set; }
public string unitType { get; set; }
public List<TitleValue> account { get; set; }
public List<Common> Data { get; set; }
}
public class Common
{
public string Source { get; set; }
public string Category { get; set; }
public decimal Ratio { get; set; }
}
public class Option : cost_transfer_item
{
public string[] options { get; set; }
public string ApplicantDepartment { get; set; }
public string AdoptedDepartment { get; set; }
}
}
using Performance.EntityModels;
using System;
using System.Collections.Generic;
using System.Text;
namespace Performance.DtoModels
{
public class TransferReportResponse
{
public List<Transfer> Transfers { get; set; }
public List<TransferItem> Items { get; set; }
}
public class Transfer
{
public string ApplicantUnitType { get; set; }
public string ApplicantDepartment { get; set; }
public decimal? AmountSum { get; set; }
public string AdoptedUnitType { get; set; }
public string AdoptedDepartment { get; set; }
public decimal? PassAmountSum { get; set; }
}
public class TransferItem : cost_transfer_item
{
public string ApplicantUnitType { get; set; }
public string ApplicantDepartment { get; set; }
public string AdoptedUnitType { get; set; }
public string AdoptedDepartment { get; set; }
}
}
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Metadata;
using System;
......@@ -94,11 +93,14 @@ public PerformanceDbContext(DbContextOptions<PerformanceDbContext> options)
public virtual DbSet<cof_workloadtype> cof_workloadtype { get; set; }
/// <summary> 工龄对应绩效系数配置 </summary>
public virtual DbSet<cof_workyear> cof_workyear { get; set; }
/// <summary> </summary>
public virtual DbSet<collect_data> collect_data { get; set; }
/// <summary> </summary>
public virtual DbSet<collect_permission> collect_permission { get; set; }
/// <summary> </summary>
public virtual DbSet<cost_transfer> cost_transfer { get; set; }
/// <summary> </summary>
public virtual DbSet<cost_transfer_item> cost_transfer_item { get; set; }
/// <summary> 自定义导出 </summary>
public virtual DbSet<cust_script> cust_script { get; set; }
/// <summary> </summary>
......
......@@ -29,7 +29,7 @@ public class ag_headsource
/// <summary>
/// 可分配绩效
/// </summary>
public Nullable<decimal> TotalPerformance { get; set; }
public decimal TotalPerformance { get; set; }
/// <summary>
/// 医院其他绩效
......
......@@ -82,7 +82,7 @@ public class ag_secondallot
public Nullable<int> Status { get; set; }
/// <summary>
/// 提交类型 1 使用模板 2 其他类型数据
/// 提交类型 1使用模板 2 其他类型数据
/// </summary>
public Nullable<int> SubmitType { get; set; }
......@@ -125,9 +125,10 @@ public class ag_secondallot
/// 护理部审核状态 2 等待审核 3 审核通过 4 驳回
/// </summary>
public Nullable<int> NursingDeptStatus { get; set; }
/// <summary>
/// 夜班绩效
/// </summary>
public decimal? NightShiftWorkPerforFee { get; set; }
public Nullable<decimal> NightShiftWorkPerforFee { get; set; }
}
}
......@@ -3,7 +3,6 @@
// * FileName: 二次绩效模板.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
......
......@@ -57,7 +57,7 @@ public class ag_workload
public Nullable<decimal> Sort { get; set; }
/// <summary>
/// 1、单项奖励 2、工作量占比 ..(自定义占比)
/// -1、单项奖励 0、工作量占比 ..(自定义占比)
/// </summary>
public int WorkTypeId { get; set; }
}
......
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
// <copyright file=" ag_workload_source.cs">
// * FileName: .cs
// </copyright>
......@@ -57,7 +57,7 @@ public class ag_workload_source
public Nullable<decimal> Value { get; set; }
/// <summary>
/// 1、单项奖励 2、工作量占比 ..(自定义占比)
/// -1、单项奖励 0、工作量占比 ..(自定义占比)
/// </summary>
public Nullable<int> WorkTypeId { get; set; }
}
......
//-----------------------------------------------------------------------
// <copyright file=" ag_workload_type.cs">
// * FileName: .cs
// * FileName: 二次绩效工作量绩效分类.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
namespace Performance.EntityModels
{
/// <summary>
///
/// 二次绩效工作量绩效分类
/// </summary>
[Table("ag_workload_type")]
public class ag_workload_type
......
//-----------------------------------------------------------------------
// <copyright file=" ag_worktype_source.cs">
// * FileName: ag_worktype_source.cs
// * FileName: .cs
// </copyright>
//-----------------------------------------------------------------------
using System;
......
......@@ -3,7 +3,6 @@
// * FileName: 考核类别.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
......
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
// <copyright file=" cof_accounting.cs">
// * FileName: .cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
......
using System.ComponentModel.DataAnnotations;
//-----------------------------------------------------------------------
// <copyright file=" cof_alias.cs">
// * FileName: 别名配置.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
namespace Performance.EntityModels
{
/// <summary>
/// 别名配置
/// </summary>
[Table("cof_alias")]
public class cof_alias
{
/// <summary>
///
/// </summary>
[Key]
public int Id { get; set; }
/// <summary>
///
/// </summary>
public int HospitalId { get; set; }
/// <summary>
/// 前端路由地址
/// </summary>
public string Route { get; set; }
/// <summary>
/// 描述名称
/// </summary>
public string Name { get; set; }
/// <summary>
/// 原始名
/// </summary>
public string OriginalName { get; set; }
/// <summary>
/// 别名
/// </summary>
public string Alias { get; set; }
public int States { get; set; }
/// <summary>
/// 状态 1 可用 0 禁用
/// </summary>
public Nullable<int> States { get; set; }
}
}
......@@ -3,7 +3,6 @@
// * FileName: .cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
......
......@@ -3,7 +3,6 @@
// * FileName: .cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
......
......@@ -3,7 +3,6 @@
// * FileName: .cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
......
//-----------------------------------------------------------------------
// <copyright file=" cost_transfer.cs">
// * FileName: .cs
// </copyright>
//-----------------------------------------------------------------------
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
namespace Performance.EntityModels
{
/// <summary>
///
/// </summary>
[Table("cost_transfer")]
public class cost_transfer
{
/// <summary>
///
/// </summary>
[Key]
public int Id { get; set; }
/// <summary>
///
/// </summary>
public int AllotId { get; set; }
/// <summary>
/// 申请者核算单元类型
/// </summary>
public string ApplicantUnitType { get; set; }
/// <summary>
/// 申请者科室
/// </summary>
public string ApplicantDepartment { get; set; }
/// <summary>
/// 审核者核算单元类型
/// </summary>
public string AdoptedUnitType { get; set; }
/// <summary>
/// 审核者科室
/// </summary>
public string AdoptedDepartment { get; set; }
/// <summary>
/// 0 未审核 1 全部通过 2 部分通过 3 全部驳回 4 含有下发驳回
/// </summary>
public int Status { get; set; }
/// <summary>
/// 0 未审核 1 全部通过 2 部分通过 3 全部驳回 4 含有下发驳回
/// </summary>
public int AdminStatus { get; set; }
}
}
//-----------------------------------------------------------------------
// <copyright file=" cost_transfer_item.cs">
// * FileName: .cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
namespace Performance.EntityModels
{
/// <summary>
///
/// </summary>
[Table("cost_transfer_item")]
public class cost_transfer_item
{
/// <summary>
///
/// </summary>
[Key]
public int Id { get; set; }
/// <summary>
///
/// </summary>
public int TransferId { get; set; }
/// <summary>
/// 来源,sheet名称
/// </summary>
public string Source { get; set; }
/// <summary>
/// 费用类型
/// </summary>
public string Category { get; set; }
/// <summary>
/// 金额
/// </summary>
public Nullable<decimal> Amount { get; set; }
/// <summary>
/// 分割比例
/// </summary>
public Nullable<decimal> Ratio { get; set; }
/// <summary>
/// 实际金额
/// </summary>
public Nullable<decimal> CalculationAmount { get; set; }
/// <summary>
/// 是否使用分割比例
/// </summary>
public int IsUseRatio { get; set; }
/// <summary>
/// 申请理由
/// </summary>
public string ApplicationRemark { get; set; }
/// <summary>
/// 科室备注
/// </summary>
public string DepartmentRemark { get; set; }
/// <summary>
/// 管理员备注
/// </summary>
public string AdminRemark { get; set; }
/// <summary>
/// 0 默认 1 通过 2 驳回 3 下发驳回 4 撤回
/// </summary>
public int Status { get; set; }
/// <summary>
/// 0 默认 1 通过 2 驳回 3 下发驳回 4 撤回
/// </summary>
public int AdminStatus { get; set; }
/// <summary>
/// 数据是否被写入
/// </summary>
public int IsWrited { get; set; }
}
}
......@@ -3,7 +3,6 @@
// * FileName: 自定义导出.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
......
......@@ -3,7 +3,6 @@
// * FileName: .cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
......
......@@ -3,7 +3,6 @@
// * FileName: .cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
......
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
// <copyright file=" per_apr_amount_hide.cs">
// * FileName: .cs
// * FileName: 医院其他绩效.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
......@@ -10,7 +10,7 @@
namespace Performance.EntityModels
{
/// <summary>
///
/// 医院其他绩效
/// </summary>
[Table("per_apr_amount_hide")]
public class per_apr_amount_hide
......@@ -84,7 +84,7 @@ public class per_apr_amount_hide
/// <summary>
/// 0 未通过验证 1 通过验证
/// </summary>
public int? IsVerify { get; set; }
public Nullable<int> IsVerify { get; set; }
/// <summary>
/// 验证失败描述
......
......@@ -52,23 +52,23 @@ public class per_dept_dic
public Nullable<int> HospitalId { get; set; }
/// <summary>
///
/// 0 未通过验证 1 通过验证
/// </summary>
public Nullable<DateTime> CreateTime { get; set; }
public Nullable<int> IsVerify { get; set; }
/// <summary>
///
/// 验证失败描述
/// </summary>
public Nullable<int> CreateUser { get; set; }
public string VerifyMessage { get; set; }
/// <summary>
/// 0 未通过验证 1 通过验证
///
/// </summary>
public int? IsVerify { get; set; }
public Nullable<DateTime> CreateTime { get; set; }
/// <summary>
/// 验证失败描述
///
/// </summary>
public string VerifyMessage { get; set; }
public Nullable<int> CreateUser { get; set; }
}
}
......@@ -72,7 +72,7 @@ public class per_employee
public string JobTitle { get; set; }
/// <summary>
/// 核算单元类别
/// 人员类别
/// </summary>
public string UnitType { get; set; }
......@@ -129,7 +129,7 @@ public class per_employee
/// <summary>
/// 0 未通过验证 1 通过验证
/// </summary>
public int? IsVerify { get; set; }
public Nullable<int> IsVerify { get; set; }
/// <summary>
/// 验证失败描述
......
......@@ -29,12 +29,12 @@ public class report_performance_category
/// <summary>
///
/// </summary>
public int Year { get; set; }
public Nullable<int> Year { get; set; }
/// <summary>
///
/// </summary>
public int Month { get; set; }
public Nullable<int> Month { get; set; }
/// <summary>
///
......
......@@ -195,6 +195,7 @@ public class res_account
/// 是否需要二次分配
/// </summary>
public string NeedSecondAllot { get; set; }
/// <summary>
/// 夜班绩效
/// </summary>
......
......@@ -247,13 +247,13 @@ public class res_compute
public Nullable<decimal> AdjustLaterOtherFee { get; set; }
/// <summary>
/// 考核后管理绩效
/// 是否需要二次分配
/// </summary>
public Nullable<decimal> AssessLaterManagementFee { get; set; }
public string NeedSecondAllot { get; set; }
/// <summary>
/// 是否需要二次分配
/// 考核后管理绩效
/// </summary>
public string NeedSecondAllot { get; set; }
public Nullable<decimal> AssessLaterManagementFee { get; set; }
}
}
......@@ -135,6 +135,7 @@ public class res_specialunit
/// 调节后其他绩效
/// </summary>
public Nullable<decimal> AdjustLaterOtherFee { get; set; }
/// <summary>
/// 夜班绩效
/// </summary>
......
......@@ -3,7 +3,6 @@
// * FileName: 角色菜单关联表.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
......
......@@ -3,7 +3,6 @@
// * FileName: 用户角色关联表.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
......
using System;
using System.Collections.Generic;
using System.Text;
namespace Performance.EntityModels
namespace Performance.EntityModels
{
public class AccountUnitEntity
{
......
using System;
using System.Collections.Generic;
using System.Text;
namespace Performance.EntityModels
{
......
using System;
using System.Collections.Generic;
using System.Text;
namespace Performance.EntityModels
namespace Performance.EntityModels
{
public class PerReport
{
......
using System;
using System.Collections.Generic;
using System.Text;
namespace Performance.Repository
namespace Performance.Repository
{
public enum DatabaseType
{
......
......@@ -5,8 +5,6 @@
//-----------------------------------------------------------------------
using Dapper;
using Performance.EntityModels;
using System;
using System.Collections;
using System.Collections.Generic;
using System.Data;
......
......@@ -4,7 +4,6 @@
// </copyright>
//-----------------------------------------------------------------------
using Performance.EntityModels;
using System;
using System.Collections.Generic;
namespace Performance.Repository
......
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Performance.Repository
{
......
......@@ -5,7 +5,6 @@
// </copyright>
//-----------------------------------------------------------------------
using Performance.EntityModels;
using System;
using System.Collections.Generic;
using System.Linq;
......
......@@ -10,7 +10,6 @@
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
namespace Performance.Repository
......
......@@ -3,11 +3,11 @@
// * FileName: per_apr_amount.cs
// </copyright>
//-----------------------------------------------------------------------
using Performance.EntityModels;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Linq.Expressions;
using Performance.EntityModels;
namespace Performance.Repository
{
......
......@@ -3,11 +3,11 @@
// * FileName: per_apr_amount.cs
// </copyright>
//-----------------------------------------------------------------------
using Performance.EntityModels;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Linq.Expressions;
using Performance.EntityModels;
namespace Performance.Repository
{
......
......@@ -3,9 +3,8 @@
// * FileName: per_dept_dic.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using System.Collections.Generic;
using Performance.EntityModels;
using System.Collections.Generic;
namespace Performance.Repository
{
......
......@@ -3,11 +3,11 @@
// * FileName: per_employee.cs
// </copyright>
//-----------------------------------------------------------------------
using Performance.EntityModels;
using Performance.Infrastructure.Models;
using System;
using System.Linq;
using System.Linq.Expressions;
using Performance.EntityModels;
using Performance.Infrastructure.Models;
namespace Performance.Repository
{
......
using Performance.DtoModels;
using Performance.EntityModels;
using System;
using System.Collections.Generic;
using System.Linq;
......
using Microsoft.EntityFrameworkCore;
using Performance.EntityModels;
using System;
using System.Collections.Generic;
using System.Text;
using Performance.EntityModels;
namespace Performance.Repository
{
......
......@@ -5,7 +5,6 @@
// </copyright>
//-----------------------------------------------------------------------
using Performance.EntityModels;
using System;
using System.Collections.Generic;
using System.Linq;
......
......@@ -3,7 +3,6 @@
// * FileName: ag_againsituation.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: ag_bodysource.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: ag_compute.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: ag_data.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: ag_employee.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: ag_fixatitem.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: ag_header.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: ag_headsource.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: ag_itemvalue.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: ag_othersource.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: ag_secondallot.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: ag_temp.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: ag_tempitem.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: ag_usetemp.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: ag_workload.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: ag_workload_source.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: ag_workload_type.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: ag_worktype_source.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: as_assess.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: as_columns.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: as_data.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: as_tempassess.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: as_tempcolumns.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
using System;
using System.Collections.Generic;
using System.Text;
using Performance.EntityModels;
using Performance.EntityModels;
namespace Performance.Repository.Repository
{
public partial class PerforCofHrpDeptRepository:PerforRepository<cof_hrp_department>
public partial class PerforCofHrpDeptRepository : PerforRepository<cof_hrp_department>
{
public PerforCofHrpDeptRepository(PerformanceDbContext context) : base(context)
{
......
......@@ -3,7 +3,6 @@
// * FileName: cof_accounting.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
......
......@@ -3,7 +3,6 @@
// * FileName: cof_again.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -2,7 +2,7 @@
namespace Performance.Repository
{
public class PerforCofaliasRepository: PerforRepository<cof_alias>
public class PerforCofaliasRepository : PerforRepository<cof_alias>
{
public PerforCofaliasRepository(PerformanceDbContext context) : base(context)
{
......
......@@ -3,7 +3,6 @@
// * FileName: cof_check.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: cof_cmi.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: cof_depttype.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: cof_director.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: cof_drugprop.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: cof_drugtype.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: cof_guarantee.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: cof_hrp_department.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: cof_income.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: cof_singlefactor.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: cof_workitem.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: cof_workloadtype.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: cof_workyear.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
//-----------------------------------------------------------------------
// <copyright file=" cost_transfer.cs">
// * FileName: cost_transfer.cs
// </copyright>
//-----------------------------------------------------------------------
using Performance.EntityModels;
namespace Performance.Repository
{
/// <summary>
/// cost_transfer Repository
/// </summary>
public partial class PerforCosttransferRepository : PerforRepository<cost_transfer>
{
public PerforCosttransferRepository(PerformanceDbContext context) : base(context)
{
}
}
}
//-----------------------------------------------------------------------
// <copyright file=" cost_transfer_item.cs">
// * FileName: cost_transfer_item.cs
// </copyright>
//-----------------------------------------------------------------------
using Performance.EntityModels;
namespace Performance.Repository
{
/// <summary>
/// cost_transfer_item Repository
/// </summary>
public partial class PerforCosttransferitemRepository : PerforRepository<cost_transfer_item>
{
public PerforCosttransferitemRepository(PerformanceDbContext context) : base(context)
{
}
}
}
......@@ -3,7 +3,6 @@
// * FileName: ex_item.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: ex_module.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: ex_result.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: ex_script.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: ex_special.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: sys_extract.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: ex_type.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: his_data.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: his_import_account.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: his_import_baiscnorm.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: his_import_clinic.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: his_importdata.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: his_script.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: hos_personfee.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: sys_hospital.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: sys_hospitalconfig.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: im_accountbasic.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: im_data.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: im_employee.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: im_employee_clinic.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: im_employee_logistics.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: im_header.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: im_specialunit.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: log_check.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: log_dbug.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: sys_menu.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: mod_dic.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: mod_extract.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: mod_item.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: mod_module.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: mod_special.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: per_againallot.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: per_allot.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,9 +3,6 @@
// * FileName: per_apr_amount.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using System.Collections.Generic;
using System.Linq;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,9 +3,6 @@
// * FileName: per_apr_amount.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using System.Collections.Generic;
using System.Linq;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: per_budget_amount.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: per_budget_ratio.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: per_budget_result.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: per_dept_dic.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: per_employee.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: per_first.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: per_sheet.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: rep_group.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: rep_group_selection.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: rep_importconfig.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: report_global.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: report_original_persontime.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: report_original_stays.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: report_original_surgery.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: report_performance.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: report_performance_person_tags.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: report_performance_tags.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: rep_report.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: rep_selection.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: res_account.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: res_accountdoctor.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: res_accountnurse.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: res_baiscnorm.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: res_compute.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: res_specialunit.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: sys_role.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: sys_role_menu.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: sys_sms.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: sys_task.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: sys_user.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: sys_user_hospital.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: sys_user_role.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: collect_data.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: collect_permission.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: cust_script.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
......@@ -3,7 +3,6 @@
// * FileName: res_reserved.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
......
using AutoMapper;
using Microsoft.EntityFrameworkCore.Internal;
using Microsoft.Extensions.Logging;
using Microsoft.Extensions.Options;
using OfficeOpenXml.FormulaParsing.Excel.Functions.Text;
using Performance.DtoModels;
using Performance.DtoModels.AppSettings;
using Performance.EntityModels;
using Performance.Infrastructure;
using Performance.Repository;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Linq.Expressions;
using System.Text.RegularExpressions;
namespace Performance.Services
{
public class CostTransferService : IAutoInjection
{
private readonly ILogger<CostTransferService> logger;
private readonly Application application;
private readonly PerforCosttransferRepository costtransferRepository;
private readonly PerforCosttransferitemRepository costtransferitemRepository;
private readonly PerforCofdrugtypeRepository cofdrugtypeRepository;
private readonly PerforPersheetRepository persheetRepository;
private readonly PerforCofaccountingRepository cofaccountingRepository;
private readonly PerforPerdeptdicRepository perdeptdicRepository;
private readonly PerforPerallotRepository perallotRepository;
private readonly PerforImdataRepository imdataRepository;
public CostTransferService(
ILogger<CostTransferService> logger,
IOptions<Application> application,
PerforCosttransferRepository costtransferRepository,
PerforCosttransferitemRepository costtransferitemRepository,
PerforCofdrugtypeRepository cofdrugtypeRepository,
PerforPersheetRepository persheetRepository,
PerforCofaccountingRepository cofaccountingRepository,
PerforPerdeptdicRepository perdeptdicRepository,
PerforPerallotRepository perallotRepository,
PerforImdataRepository imdataRepository
)
{
this.logger = logger;
this.application = application.Value;
this.costtransferRepository = costtransferRepository;
this.costtransferitemRepository = costtransferitemRepository;
this.cofdrugtypeRepository = cofdrugtypeRepository;
this.persheetRepository = persheetRepository;
this.cofaccountingRepository = cofaccountingRepository;
this.perdeptdicRepository = perdeptdicRepository;
this.perallotRepository = perallotRepository;
this.imdataRepository = imdataRepository;
}
/// <summary>
/// 审核页面
/// </summary>
/// <param name="allotId"></param>
/// <param name="menuType">1:申请 2:审核</param>
/// <param name="roleType"></param>
/// <param name="Department"></param>
/// <returns></returns>
public List<CostTransferResponse> GetAuditList(int allotId, int menuType, int roleType, string Department)
{
var roleTypes = new[] { 1, 2, 5 }.Contains(roleType);
var account = GetAccounting(allotId, roleType, Department);
Expression<Func<cost_transfer, bool>> exp = t => t.AllotId == allotId;
if (roleType == application.DirectorRole)
if (menuType == 1)
exp = exp.And(t => new List<string> { UnitType.医生组.ToString(), UnitType.医技组.ToString() }.Contains(t.ApplicantUnitType));
else
exp = exp.And(t => new List<string> { UnitType.医生组.ToString(), UnitType.医技组.ToString() }.Contains(t.AdoptedUnitType));
else if (roleType == application.NurseRole)
if (menuType == 1)
exp = exp.And(t => t.ApplicantUnitType == UnitType.护理组.ToString());
else
exp = exp.And(t => t.AdoptedUnitType == UnitType.护理组.ToString());
/*
else if (roleType == application.SpecialRole)
exp = exp.And(t => t.AdoptedUnitType == UnitType.特殊核算组.ToString());
else if (roleType == application.OfficeRole)
exp = exp.And(t => t.AdoptedUnitType == UnitType.行政后勤.ToString()); */
var costTransfers = costtransferRepository.GetEntities(exp);
if (!roleTypes)
if (menuType == 1)
costTransfers = costTransfers?.FindAll(t => t.ApplicantDepartment == Department);
else
costTransfers = costTransfers?.FindAll(t => t.AdoptedDepartment == Department);
if (costTransfers == null || !costTransfers.Any())
return new List<CostTransferResponse>();
var response = new List<CostTransferResponse>();
var costsId = costTransfers?.Select(w => w.Id);
//var transfer = costTransfers.FirstOrDefault();
var costItem = costtransferitemRepository.GetEntities(t => costsId.Contains(t.TransferId));
if (menuType != 1)
costItem = costItem?.FindAll(t => t.Status != 4);
//如果是绩效办显示已经被科室同意的数据
//if (roleTypes)
// costItem = costItem?.FindAll(t => t.Status == 1);
foreach (var item in costTransfers)
{
var result = new CostTransferResponse();
result = Mapper.Map<CostTransferResponse>(item);
result.Items = costItem?.Where(t => t.TransferId == item.Id)?.Select(t => new Option
{
Id = t.Id,
TransferId = t.TransferId,
Source = t.Source,
Category = t.Category,
Amount = t.Amount,
Ratio = t.Ratio,
IsUseRatio = t.IsUseRatio,
CalculationAmount = t.CalculationAmount,
Status = t.Status,
AdminStatus = t.AdminStatus,
ApplicationRemark = t.ApplicationRemark,
DepartmentRemark = t.DepartmentRemark,
AdminRemark = t.AdminRemark,
options = new string[] { },
ApplicantDepartment = result.ApplicantDepartment,
AdoptedDepartment = result.AdoptedDepartment
}).OrderBy(t => t.Status).ThenBy(t => t.AdminStatus).ToList();
response.Add(result);
}
return response.OrderBy(t => t.Status).ThenBy(t => t.AdminStatus).ToList();
}
public cof_accounting GetAccounting(int allotId, int roleType, string Department = null)
{
Expression<Func<cof_accounting, bool>> exp = t => t.AllotId == allotId && t.AccountingUnit == Department;
if (roleType == application.DirectorRole)
exp = exp.And(t => new List<string> { UnitType.医生组.ToString(), UnitType.医技组.ToString() }.Contains(t.UnitType));
else if (roleType == application.NurseRole)
exp = exp.And(t => t.UnitType == UnitType.护理组.ToString());
else if (roleType == application.SpecialRole)
exp = exp.And(t => t.UnitType == UnitType.特殊核算组.ToString());
else if (roleType == application.OfficeRole)
exp = exp.And(t => t.UnitType == UnitType.行政后勤.ToString());
var account = cofaccountingRepository.GetEntity(exp);
return account;
}
/// <summary>
/// 申请页面下拉选项
/// </summary>
/// <param name="allotId"></param>
/// <param name="hospitalId"></param>
/// <param name="roleType"></param>
/// <param name="deparment"></param>
/// <param name="detail"></param>
/// <returns></returns>
public CommonResponse Common(int allotId, int hospitalId, int roleType, string deparment, DepartmentDetail detail)
{
var common = new CommonResponse();
common.account = cofaccountingRepository.GetEntities(t => t.AllotId == allotId)
?.Select(t => new TitleValue { Title = t.AccountingUnit, Value = t.AccountingUnit }).ToDistinct().ToList();
var (prevAllotList, deptDetail) = DeptDetial(allotId, hospitalId, roleType, deparment);
common.unitType = deptDetail.UnitType ?? "";
var sheets = persheetRepository.GetEntities(t => t.AllotID == allotId && t.SheetType == (int)SheetType.Income);
if (sheets != null && sheets.Any())
{
var sheetId = sheets.Select(t => t.ID);
int imDataAllotId = prevAllotList.FirstOrDefault(t => new int[] { 6, 8, 10 }.Contains(t.States))?.ID ?? 0;
var unitValue = EnumHelper.GetItems<UnitType>().Find(t => t.Name == detail.UnitType)?.Value;
var imData = imdataRepository.GetEntities(t => t.AllotID == imDataAllotId && sheetId.Contains(t.SheetID.Value) && t.UnitType == unitValue);
if (imData == null || !imData.Any()) return common;
var commons = new List<Common>();
if (imData != null && imData.Any())
{
var datas = from im in imData
group im by new { im.SheetID, im.TypeName, im.FactorValue } into i
select new { i.Key, i };
commons = datas.Select(t => new Common
{
Source = Regex.Replace(sheets.Find(w => w.ID == t.Key.SheetID).SheetName, @"\d.", ""),
Category = t.Key.TypeName,
Ratio = t.Key.FactorValue.Value
}).ToList();
}
common.Data = commons;
}
return common;
}
public (List<per_allot>, DepartmentDetail) DeptDetial(int allotId, int hospitalId, int roleType, string deparment)
{
var detail = new DepartmentDetail();
var prevAllotList = PrevAllotList(hospitalId, allotId);
if (prevAllotList != null && prevAllotList.Any())
{
foreach (var prevAllot in prevAllotList)
{
string unittype = GetAccounting(prevAllot.ID, roleType, deparment)?.UnitType;
if (!string.IsNullOrEmpty(unittype))
{
detail.UnitType = unittype;
break;
}
}
}
return (prevAllotList, detail);
}
/// <summary>
/// 申请划拨
/// </summary>
public bool Applicat(CostTransferRequest request)
{
if (request.AllotId == 0)
throw new PerformanceException("参数错误,绩效记录不存在");
if (request.Applicant == null || request.Adopted == null)
throw new PerformanceException("参数错误,申请/被划拨科室信息缺失");
if (string.IsNullOrEmpty(request.Applicant.UnitType) || string.IsNullOrEmpty(request.Applicant.Department))
throw new PerformanceException("当前科室未配置科室类别,无法提交申请");
if (string.IsNullOrEmpty(request.Adopted.UnitType) || string.IsNullOrEmpty(request.Adopted.Department))
throw new PerformanceException("参数错误,被划拨科室信息缺失");
if (request.Items == null || !request.Items.Any())
throw new PerformanceException("参数错误,申请条目为空");
if (request.Adopted.Department == request.Applicant.Department && request.Adopted.UnitType == request.Applicant.UnitType)
throw new PerformanceException("参数错误,提交科室相同");
var allot = perallotRepository.GetEntity(t => t.ID == request.AllotId);
var allotStatus = new[] { (int)AllotStates.GenerateSucceed, (int)AllotStates.Archive };
if (allotStatus.Contains(allot.States))
throw new PerformanceException("绩效已下发或归档");
var transfer = new cost_transfer
{
AllotId = request.AllotId,
ApplicantDepartment = request.Applicant.Department,
ApplicantUnitType = request.Applicant.UnitType,
AdoptedDepartment = request.Adopted.Department,
AdoptedUnitType = request.Adopted.UnitType,
Status = 0,
AdminStatus = 0
};
var result = costtransferRepository.Add(transfer);
if (!result)
throw new PerformanceException("提交申请失败,请重试");
var items = request.Items?.Select(t => new cost_transfer_item
{
TransferId = transfer.Id,
Source = t.Source ?? "",
Category = t.Category,
Amount = t.Amount,
Ratio = t.Ratio,
CalculationAmount = t.CalculationAmount,
IsUseRatio = t.IsUseRatio,
ApplicationRemark = t.ApplicationRemark,
Status = 0,
AdminStatus = 0
}).ToArray();
result = costtransferitemRepository.AddRange(items);
if (!result)
costtransferRepository.Remove(transfer);
return result;
}
/// <summary>
/// 撤回提交
/// </summary>
/// <param name="itemId"></param>
public void WithdrawSubmit(int itemId)
{
var item = costtransferitemRepository.GetEntity(t => t.Id == itemId);
if (item == null) throw new PerformanceException("申请记录不存在");
item.Status = 4;
item.AdminStatus = 4;
costtransferitemRepository.Update(item);
}
/// <summary>
/// 申请划拨信息修改
/// </summary>
public void UpdateApplicat(CostTransferUpdateRequest request)
{
var transfer = costtransferRepository.GetEntity(t => t.Id == request.TransferId);
if (transfer == null)
throw new PerformanceException("划拨申请记录不存在");
/*
transfer.AllotId = request.AllotId;
transfer.ApplicantDepartment = request.Applicant.Department;
transfer.ApplicantUnitType = request.Applicant.UnitType;
transfer.AdoptedDepartment = request.Adopted.Department;
transfer.AdoptedUnitType = request.Adopted.UnitType;
var result = costtransferRepository.Update(transfer);
if (!result)
throw new PerformanceException("修改划拨申请记录失败");*/
var items = costtransferitemRepository.GetEntities(t => t.TransferId == request.TransferId);
if (items == null)
{
if (request.Items != null && request.Items.Any())
{
request.Items.ForEach(t =>
{
t.Id = 0;
t.TransferId = request.TransferId;
t.Status = 0;
});
costtransferitemRepository.AddRange(request.Items.ToArray());
}
}
else
{
if (request.Items == null || !request.Items.Any())
costtransferitemRepository.RemoveRange(items.ToArray());
else
{
if (request.Items.Any(t => t.Id > 0))
{
var hasPrimaryValueItmes = request.Items.Where(t => t.Id > 0).ToList();
/*
// 删除
var notExistItems = items.Where(item => !hasPrimaryValueItmes.Select(t => t.Id).Contains(item.Id));
if (notExistItems != null && notExistItems.Any())
costtransferitemRepository.RemoveRange(notExistItems.ToArray());*/
// 更新
var updateItems = items.Where(item => hasPrimaryValueItmes.Select(t => t.Id).Contains(item.Id));
foreach (var update in updateItems)
{
var item = hasPrimaryValueItmes.FirstOrDefault(t => t.Id == update.Id);
update.Source = item.Source;
update.Category = item.Category;
update.Amount = item.Amount;
update.Ratio = item.Ratio;
update.CalculationAmount = item.CalculationAmount;
update.IsUseRatio = item.IsUseRatio;
update.ApplicationRemark = item.ApplicationRemark;
update.Status = 0;
update.AdminStatus = 0;
hasPrimaryValueItmes.Remove(item);
}
costtransferitemRepository.UpdateRange(updateItems.ToArray());
/*
// 添加
if (hasPrimaryValueItmes != null && hasPrimaryValueItmes.Any())
{
hasPrimaryValueItmes.ForEach(t =>
{
t.Id = 0;
t.TransferId = request.TransferId;
t.Status = 0;
});
costtransferitemRepository.AddRange(hasPrimaryValueItmes.ToArray());
} */
}
/*
if (request.Items.Any(t => t.Id == 0)) // 添加
{
costtransferitemRepository.AddRange(request.Items.Where(t => t.Id == 0).ToArray());
} */
}
}
UpdateCostTransferStatus(request.TransferId);
}
/// <summary>
/// 删除划拨申请记录
/// </summary>
public void DeleteApplicat(int transferId)
{
var transfer = costtransferRepository.GetEntity(t => t.Id == transferId);
if (transfer == null)
throw new PerformanceException("划拨申请记录不存在");
var result = costtransferRepository.Update(transfer);
if (!result)
throw new PerformanceException("删除划拨申请记录失败");
var items = costtransferitemRepository.GetEntities(t => t.TransferId == transferId);
if (items != null && items.Any())
{
costtransferitemRepository.RemoveRange(items.ToArray());
}
}
/// <summary>
/// 划拨审核
/// </summary>
public bool CostTransferAudit(AuditRequest request, bool isAdmin)
{
if (request.TransferItemId.Length <= 0)
throw new PerformanceException("科室未审核或已驳回,不能一键通过");
var costItems = costtransferitemRepository.GetEntities(t => request.TransferItemId.Contains(t.Id));
var transferId = costItems?.Select(t => t.TransferId).Distinct();
var transfers = costtransferRepository.GetEntities(t => transferId.Contains(t.Id));
if (transfers.Any(t => t.AllotId != request.AllotId)) return false;
if (isAdmin)
{
costItems.ForEach(t =>
{
t.AdminStatus = request.Status;
t.AdminRemark = request.Remake;
});
}
else
{
costItems.ForEach(t =>
{
if (request.Status == 2 && t.AdminStatus != 0)
t.AdminStatus = 2;
t.Status = request.Status;
t.DepartmentRemark = request.Remake;
});
}
//if (costItems == null || !costItems.Any()) return;
var result = costtransferitemRepository.UpdateRange(costItems.ToArray());
if (result)
foreach (var item in transferId)
{
UpdateCostTransferStatus(item);
}
return result;
}
/// <summary>
/// 下发驳回
/// </summary>
/// <param name="allotId"></param>
/// <param name="transferId"></param>
/// <param name="issue"></param>
/// <returns></returns>
public bool RejectedApplicat(int allotId)
{
var costTransfers = costtransferRepository.GetEntities(t => t.AllotId == allotId && new[] { 0, 2 }.Contains(t.AdminStatus));
if (costTransfers == null || !costTransfers.Any()) return true;
var costId = costTransfers?.Select(t => t.Id);
var costItems = costtransferitemRepository.GetEntities(t => costId.Contains(t.TransferId) && t.AdminStatus == 0);
costItems.ForEach(t =>
{
t.Status = 3;
t.AdminStatus = 3;
});
costTransfers.ForEach(t =>
{
t.Status = 4;
t.AdminStatus = 4;
});
costtransferitemRepository.UpdateRange(costItems.ToArray());
costtransferRepository.UpdateRange(costTransfers.ToArray());
return true;
}
/// <summary>
/// 带入下个月数据
/// </summary>
/// <param name="hospitalId"></param>
/// <param name="allotId"></param>
public void IntoLastTiemData(int hospitalId, int allotId)
{
var allotList = perallotRepository.GetEntities(w => w.HospitalId == hospitalId)?.OrderBy(s => s.Year).ThenBy(s => s.Month).ToList();
if (allotList == null || !allotList.Any()) return;
var allot = allotList.FirstOrDefault(w => w.ID == allotId);
if (allot == null) return;
var index = allotList.IndexOf(allot);
if (index == 0) return;
var prevAllot = allotList[index - 1];
if (prevAllot == null) return;
var transfers = costtransferRepository.GetEntities(t => t.AllotId == prevAllot.ID);
if (transfers == null || !transfers.Any()) return;
var transferLastId = transfers.Select(t => t.Id);
var costItems = costtransferitemRepository.GetEntities(t => transferLastId.Contains(t.TransferId) && (t.Status == 3 || t.AdminStatus == 3));
if (costItems == null || !costItems.Any()) return;
var costItemLastId = costItems.Select(t => t.TransferId).Distinct();
var transferLast = transfers.Where(t => costItemLastId.Contains(t.Id));
foreach (var item in transferLast)
{
var newTransfers = new cost_transfer();
newTransfers = Mapper.Map<cost_transfer>(item);
newTransfers.AllotId = allotId;
newTransfers.Status = 0;
newTransfers.AdminStatus = 0;
costtransferRepository.Add(newTransfers);
var newCostItem = costItems.Where(t => t.TransferId == item.Id).Select(t => new cost_transfer_item
{
TransferId = newTransfers.Id,
Source = t.Source,
Category = t.Category,
Amount = t.Amount,
Ratio = t.Ratio,
CalculationAmount = t.CalculationAmount,
IsUseRatio = t.IsUseRatio,
ApplicationRemark = t.ApplicationRemark,
Status = 0,
AdminStatus = 0,
IsWrited = 0
}).ToArray();
costtransferitemRepository.AddRange(newCostItem);
}
}
private List<per_allot> PrevAllotList(int hospitalId, int allotId)
{
var allotList = perallotRepository.GetEntities(w => w.HospitalId == hospitalId)?.OrderByDescending(s => s.Year).ThenByDescending(s => s.Month).ToList();
if (allotList == null || !allotList.Any()) return new List<per_allot>();
var allot = allotList.FirstOrDefault(w => w.ID == allotId);
if (allot == null) return new List<per_allot>();
return allotList.Where(t => t.Year <= allot.Year && t.Month <= allot.Month)?.ToList();
}
/// <summary>
/// 修改申请记录的状态
/// </summary>
/// <param name="transferId"></param>
public void UpdateCostTransferStatus(int transferId)
{
try
{
var transfer = costtransferRepository.GetEntity(t => t.Id == transferId);
if (transfer == null) return;
var items = costtransferitemRepository.GetEntities(t => t.TransferId == transferId);
switch (items)
{
case var data when data == null || !data.Any():
transfer.Status = 3;
transfer.AdminStatus = 0;
break;
//科室部分通过,绩效办部分通过
case var data when data.Any(t => t.Status == 1) && data.Any(t => t.Status != 1) && data.Any(t => t.AdminStatus == 1) && data.Any(t => t.AdminStatus != 1):
transfer.Status = 2;
transfer.AdminStatus = 2;
break;
//科室部分通过,绩效办全部驳回
case var data when data.Any(t => t.Status == 1) && data.Any(t => t.Status != 1) && data.Any(t => t.AdminStatus == 2):
transfer.Status = 2;
transfer.AdminStatus = 3;
break;
//科室部分通过,绩效办待审核
case var data when data.Any(t => t.Status == 1) && data.Any(t => t.Status != 1) && data.Any(t => t.AdminStatus == 0):
transfer.Status = 2;
transfer.AdminStatus = 0;
break;
//科室全部通过,绩效办待审核
case var data when data.Any(t => t.Status == 1) && data.Any(t => t.AdminStatus == 0):
transfer.Status = 1;
transfer.AdminStatus = 0;
break;
//科室全部通过,绩效办部分通过
case var data when data.Any(t => t.Status == 1) && data.Any(t => t.AdminStatus == 1) && data.Any(t => t.AdminStatus != 1):
transfer.Status = 1;
transfer.AdminStatus = 2;
break;
//科室全部通过,绩效办全部通过
case var data when data.Any(t => t.Status == 1) && data.Any(t => t.AdminStatus == 1):
transfer.Status = 1;
transfer.AdminStatus = 1;
break;
//科室全部通过,绩效办全部驳回
case var data when data.Any(t => t.Status == 1) && data.Any(t => t.AdminStatus == 2):
transfer.Status = 1;
transfer.AdminStatus = 3;
break;
//科室全部驳回,绩效办待审核
case var data when data.Any(t => t.Status == 2) && data.Any(t => t.AdminStatus == 0):
transfer.Status = 3;
transfer.AdminStatus = 0;
break;
//科室全部驳回,绩效办全部驳回
case var data when data.Any(t => t.Status == 2) && data.Any(t => t.AdminStatus == 2):
transfer.Status = 3;
transfer.AdminStatus = 3;
break;
//科室待审核,绩效办待审核
case var data when data.Any(t => t.Status == 0) && data.Any(t => t.AdminStatus == 0):
transfer.Status = 0;
transfer.AdminStatus = 0;
break;
default:
break;
}
costtransferRepository.Update(transfer);
}
catch (Exception ex)
{
logger.LogError($"修改申请记录的状态异常:{ex}");
}
}
#region 划拨报表
public TransferReportResponse TransferContent(int allotId, int auditType, DepartmentDetail detail)
{
var transfers = costtransferRepository.GetEntities(t => t.AllotId == allotId && t.Status != 3 && t.AdminStatus != 3);
if (transfers == null || !transfers.Any()) return new TransferReportResponse();
switch (auditType)
{
case 1:
transfers = transfers.Where(t => t.ApplicantDepartment == detail.Department && t.ApplicantUnitType == detail?.UnitType).ToList();
break;
case 2:
transfers = transfers.Where(t => t.AdoptedDepartment == detail.Department && t.AdoptedUnitType == detail?.UnitType).ToList();
break;
default:
break;
}
var transferItems = costtransferitemRepository.GetEntities(t => transfers.Select(w => w.Id).Contains(t.TransferId));
if (transferItems == null || !transferItems.Any()) return new TransferReportResponse();
var allItems = transferItems.Where(t => t.Status == 1 && t.AdminStatus == 1);
var finalTransfer = transfers.Where(t => allItems.Select(w => w.TransferId).Distinct().Contains(t.Id));
var result = new TransferReportResponse();
result.Transfers = finalTransfer.Select(t => new Transfer
{
ApplicantDepartment = t.ApplicantDepartment,
ApplicantUnitType = t.ApplicantUnitType,
AmountSum = transferItems.Where(w => w.TransferId == t.Id)?.Sum(w => w.CalculationAmount.Value),
AdoptedDepartment = t.AdoptedDepartment,
AdoptedUnitType = t.AdoptedUnitType,
PassAmountSum = allItems.Where(w => w.TransferId == t.Id)?.Sum(w => w.CalculationAmount.Value),
}).ToList();
result.Items = allItems.Select(c => new TransferItem
{
ApplicantDepartment = transfers.FirstOrDefault(t => t.Id == c.TransferId)?.ApplicantDepartment,
ApplicantUnitType = transfers.FirstOrDefault(t => t.Id == c.TransferId)?.ApplicantUnitType,
AdoptedDepartment = transfers.FirstOrDefault(t => t.Id == c.TransferId)?.AdoptedDepartment,
AdoptedUnitType = transfers.FirstOrDefault(t => t.Id == c.TransferId)?.AdoptedUnitType,
IsUseRatio = c.IsUseRatio,
Source = c.Source,
Category = c.Category,
Ratio = c.Ratio,
CalculationAmount = c.CalculationAmount
}).OrderBy(c => c.TransferId).ToList();
return result;
}
#endregion
}
}
......@@ -19,6 +19,7 @@ public class ExtractService : IAutoInjection
private readonly QueryService queryService;
private readonly PersonService personService;
private readonly PerSheetService perSheetService;
private readonly CostTransferDataWrite costTransfer;
private readonly DictionaryService dictionaryService;
private readonly CustomDataWrite customDataWrite;
private readonly PerforPerallotRepository perallotRepository;
......@@ -32,6 +33,7 @@ public class ExtractService : IAutoInjection
QueryService queryService,
PersonService personService,
PerSheetService perSheetService,
CostTransferDataWrite costTransfer,
DictionaryService dictionaryService,
CustomDataWrite customDataWrite,
PerforPerallotRepository perallotRepository,
......@@ -45,6 +47,7 @@ PerforPerdeptdicRepository perdeptdicRepository
this.queryService = queryService;
this.personService = personService;
this.perSheetService = perSheetService;
this.costTransfer = costTransfer;
this.dictionaryService = dictionaryService;
this.customDataWrite = customDataWrite;
this.perallotRepository = perallotRepository;
......@@ -213,6 +216,9 @@ private void WriteDataToFile(IWorkbook workbook, per_allot allot, Dictionary<ExD
customer.WriteSheetData(sheet, point, sheetType, style, data, exdict);
}
if (sheetName.StartsWith("1.0.1"))
costTransfer.WriteSheetData(sheet, point, style, allot.ID, allot.HospitalId);
logService.ReturnTheLog(allot.ID, groupName, 2, "写入数据", $"sheet“{sheet.SheetName}”已完成数据写入", 1, isSingle);
}
catch (Exception ex)
......
using Microsoft.Extensions.Logging;
using NPOI.SS.UserModel;
using Performance.DtoModels;
using Performance.EntityModels;
using Performance.Repository;
using System;
using System.Collections.Generic;
using System.Linq;
namespace Performance.Services.ExtractExcelService.SheetDataWrite
{
public class CostTransferDataWrite : IAutoInjection
{
private readonly ILogger logger;
private readonly PerforCosttransferRepository costtransferRepository;
private readonly PerforCosttransferitemRepository costtransferitemRepository;
private readonly PerforPerdeptdicRepository perdeptdicRepository;
public CostTransferDataWrite(
ILogger<CostTransferDataWrite> logger,
PerforCosttransferRepository costtransferRepository,
PerforCosttransferitemRepository costtransferitemRepository,
PerforPerdeptdicRepository perdeptdicRepository
)
{
this.logger = logger;
this.costtransferRepository = costtransferRepository;
this.costtransferitemRepository = costtransferitemRepository;
this.perdeptdicRepository = perdeptdicRepository;
}
private readonly string[] Unittypes = new string[] { UnitType.护理组.ToString(), UnitType.医生组.ToString(), UnitType.医技组.ToString() };
public void WriteSheetData(ISheet sheet, PerSheetPoint point, ExcelStyle style, int allotId, int hospitalId)
{
try
{
var costTransfers = costtransferRepository.GetEntities(t => t.AllotId == allotId);
if (costTransfers == null || !costTransfers.Any()) return;
var costTransferItems = costtransferitemRepository.GetEntities(t => costTransfers.Select(c => c.Id).Contains(t.TransferId) && t.Status == 1 && t.AdminStatus == 1);
if (costTransferItems == null || !costTransferItems.Any()) return;
var columns = SupplySheetHeader(sheet, point);
if (columns == null || !columns.Any()) return;
var departments = costTransfers.Select(t => t.AdoptedDepartment ?? "").Union(costTransfers.Select(t => t.ApplicantDepartment ?? "")).Distinct().ToList();
var cellStyle = style.SetBgkColorAndFormat(style.GetCellStyle(), StyleType.数据);
WriteSheetDataExistent(sheet, cellStyle, point, columns, departments, costTransfers, costTransferItems);
if (departments == null || !departments.Any()) return;
var standardDict = perdeptdicRepository.GetEntities(t => t.HospitalId == hospitalId && departments.Contains(t.Department)) ?? new List<per_dept_dic>();
WriteSheetDataNonexistent(sheet, cellStyle, point, columns, departments, standardDict, costTransfers, costTransferItems);
}
catch (Exception ex)
{
logger.LogError("写入划拨数据异常:" + ex);
}
}
private Dictionary<string, int> SupplySheetHeader(ISheet sheet, PerSheetPoint point)
{
Dictionary<string, int> pairs = new Dictionary<string, int>();
var header = sheet.GetRow(point.HeaderFirstRowNum.Value);
if (header == null) return pairs;
List<string> fixedColumns = new List<string> { $"划拨收入({UnitType.医技组})", $"划拨收入({UnitType.医生组})", $"划拨收入({UnitType.护理组})" };
for (int i = point.HeaderFirstCellNum.Value; i < header.LastCellNum; i++)
{
var column = header.GetCell(i)?.GetDecodeEscapes().Replace("(", "(").Replace(")", ")");
if (!string.IsNullOrEmpty(column) && fixedColumns.Any(t => t == column))
{
if (!pairs.ContainsKey(column))
pairs.Add(column, i);
fixedColumns.Remove(column);
}
}
if (fixedColumns != null && fixedColumns.Any())
{
var index = header.LastCellNum + 1;
foreach (var column in fixedColumns)
{
var cell = header.CreateCell(index);
cell.SetCellValue(column);
if (!pairs.ContainsKey(column))
pairs.Add(column, index);
index++;
}
}
return pairs;
}
private void WriteSheetDataExistent(ISheet sheet, ICellStyle style, PerSheetPoint point, Dictionary<string, int> columns, List<string> departments,
List<cost_transfer> costTransfers, List<cost_transfer_item> costTransferItems)
{
for (int i = point.DataFirstRowNum.Value; i < sheet.LastRowNum + 1; i++)
{
var row = sheet.GetOrCreate(i);
var department = row.GetOrCreate(point.DataFirstCellNum.Value - 1).GetDecodeEscapes();
foreach (var unittype in Unittypes)
{
var key = columns.Keys.FirstOrDefault(t => t.Contains(unittype));
if (string.IsNullOrEmpty(key)) continue;
var index = columns[key];
var cell = row.GetOrCreate(index);
var score = GetTransfersByDeptAndUnittype(costTransfers, costTransferItems, department, unittype);
cell.SetCellOValue(score);
cell.CellStyle = style;
}
departments.Remove(department);
}
}
private void WriteSheetDataNonexistent(ISheet sheet, ICellStyle style, PerSheetPoint point, Dictionary<string, int> columns, List<string> departments,
List<per_dept_dic> standardDict, List<cost_transfer> costTransfers, List<cost_transfer_item> costTransferItems)
{
int indexrow = sheet.LastRowNum + 1;
Dictionary<string, int> accountingUnits = new Dictionary<string, int>
{
{ UnitType.护理组.ToString(), 2 } ,{ UnitType.医生组.ToString(), 3 } ,{ UnitType.医技组.ToString(), 4 },
};
foreach (var department in departments)
{
var row = sheet.GetOrCreate(indexrow);
foreach (var unittype in Unittypes)
{
var key = columns.Keys.FirstOrDefault(t => t.Contains(unittype));
if (!string.IsNullOrEmpty(key) && columns.ContainsKey(key))
{
var index = columns[key];
var cell = row.GetOrCreate(index);
var score = GetTransfersByDeptAndUnittype(costTransfers, costTransferItems, department, unittype);
cell.SetCellOValue(score);
cell.CellStyle = style;
}
if (accountingUnits.ContainsKey(unittype))
{
var cell = row.GetOrCreate(point.DataFirstRowNum.Value - accountingUnits[unittype]);
var value = standardDict.Where(t => t.Department == department && t.UnitType == unittype)
?.Select(t => t.AccountingUnit).FirstOrDefault(t => !string.IsNullOrEmpty(t)) ?? "";
cell.SetCellValue(value);
cell.CellStyle = style;
}
}
indexrow++;
}
}
private decimal GetTransfersByDeptAndUnittype(List<cost_transfer> costTransfers, List<cost_transfer_item> costTransferItems, string department, string unittype)
{
if (costTransfers == null || !costTransfers.Any()) return 0;
var isApplications = new bool[] { true, false };
var scores = new List<decimal>();
foreach (var isApplication in isApplications)
{
var data = isApplication
? costTransfers.Where(t => t.ApplicantDepartment == department && t.ApplicantUnitType == unittype)?.ToList()
: costTransfers.Where(t => t.AdoptedDepartment == department && t.AdoptedUnitType == unittype)?.ToList();
if (data == null || !data.Any()) continue;
var items = costTransferItems.Where(t => data.Select(s => s.Id).Contains(t.TransferId))?.ToList();
if (items == null || !items.Any()) continue;
items.ForEach(t => t.IsWrited = 1);
costtransferitemRepository.UpdateRange(items.ToArray());
int sign = isApplication ? 1 : -1;
var value = items.Sum(t => (t.CalculationAmount ?? 0) * sign);
scores.Add(value);
}
return scores.Sum(t => t);
}
}
}
......@@ -430,7 +430,9 @@ public dynamic GetWorkloadDict(int secondId)
{
Title = t.ItemId,
Value = t.ItemName,
Factor = t.FactorValue
Factor = t.FactorValue,
WorkTypeId = t.WorkTypeId,
Sort = t.Sort
});
}
......@@ -448,7 +450,9 @@ private dynamic GetWorkloadDictAfterAudit(int secondId)
{
Title = t.Key.ItemId,
Value = t.Key.ItemName,
Factor = t.Key.FactorValue
Factor = t.Key.FactorValue,
WorkTypeId = t.Key.WorkTypeId,
Sort = t.Key.Sort
});
return dict;
......
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