Commit eb2034c8 by 李承祥

读取excel

parent 0b05c1c9
......@@ -565,6 +565,9 @@
<member name="F:Performance.DtoModels.SheetType.ComputeNurseAccount">
<summary> 临床科室护士绩效测算表 </summary>
</member>
<member name="F:Performance.DtoModels.SheetType.ClinicEmployee">
<summary> 临床人员名单 </summary>
</member>
<member name="T:Performance.DtoModels.AccountUnitType">
<summary>
核算单元类型
......@@ -758,6 +761,11 @@
保底绩效系数
</summary>
</member>
<member name="P:Performance.DtoModels.PerDataAccountBaisc.WorkSlopeFactor">
<summary>
工作量倾斜系数
</summary>
</member>
<member name="P:Performance.DtoModels.PerDataAccountBaisc.MinimumFee">
<summary>
保底绩效金额
......@@ -793,6 +801,86 @@
实发绩效
</summary>
</member>
<member name="P:Performance.DtoModels.PerDataClinicEmployee.UnitType">
<summary>
核算单元分类
</summary>
</member>
<member name="P:Performance.DtoModels.PerDataClinicEmployee.AccountingUnit">
<summary>
核算单元
</summary>
</member>
<member name="P:Performance.DtoModels.PerDataClinicEmployee.Department">
<summary>
科室名称
</summary>
</member>
<member name="P:Performance.DtoModels.PerDataClinicEmployee.DoctorName">
<summary>
医生姓名
</summary>
</member>
<member name="P:Performance.DtoModels.PerDataClinicEmployee.JobTitle">
<summary>
职称
</summary>
</member>
<member name="P:Performance.DtoModels.PerDataClinicEmployee.PostCoefficient">
<summary>
岗位系数
</summary>
</member>
<member name="P:Performance.DtoModels.PerDataClinicEmployee.Efficiency">
<summary>
效率绩效系数
</summary>
</member>
<member name="P:Performance.DtoModels.PerDataClinicEmployee.Scale">
<summary>
规模绩效系数
</summary>
</member>
<member name="P:Performance.DtoModels.PerDataClinicEmployee.Management">
<summary>
管理绩效发放系数
</summary>
</member>
<member name="P:Performance.DtoModels.PerDataClinicEmployee.WorkTime">
<summary>
参加工作时间
</summary>
</member>
<member name="P:Performance.DtoModels.PerDataClinicEmployee.ScoreAverageRate">
<summary>
考核得分率
</summary>
</member>
<member name="P:Performance.DtoModels.PerDataClinicEmployee.Attendance">
<summary>
出勤率
</summary>
</member>
<member name="P:Performance.DtoModels.PerDataClinicEmployee.OthePerfor">
<summary>
其他绩效
</summary>
</member>
<member name="P:Performance.DtoModels.PerDataClinicEmployee.Punishment">
<summary>
医院奖罚
</summary>
</member>
<member name="P:Performance.DtoModels.PerDataClinicEmployee.Adjust">
<summary>
调节系数
</summary>
</member>
<member name="P:Performance.DtoModels.PerDataClinicEmployee.RowNumber">
<summary>
行号
</summary>
</member>
<member name="P:Performance.DtoModels.PerDataEmployee.AccountingUnit">
<summary>
核算单元
......
......@@ -1459,6 +1459,11 @@
调节系数
</summary>
</member>
<member name="P:Performance.EntityModels.im_accountbasic.WorkSlopeFactor">
<summary>
工作量倾斜系数
</summary>
</member>
<member name="T:Performance.EntityModels.im_data">
<summary>
......@@ -1654,6 +1659,116 @@
发放系数
</summary>
</member>
<member name="T:Performance.EntityModels.im_employee_clinic">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.im_employee_clinic.ID">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.im_employee_clinic.AllotID">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.im_employee_clinic.SheetID">
<summary>
sheet页id
</summary>
</member>
<member name="P:Performance.EntityModels.im_employee_clinic.RowNumber">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.im_employee_clinic.UnitType">
<summary>
核算单元分类
</summary>
</member>
<member name="P:Performance.EntityModels.im_employee_clinic.AccountingUnit">
<summary>
核算单元
</summary>
</member>
<member name="P:Performance.EntityModels.im_employee_clinic.Department">
<summary>
科室名称
</summary>
</member>
<member name="P:Performance.EntityModels.im_employee_clinic.DoctorName">
<summary>
医生姓名
</summary>
</member>
<member name="P:Performance.EntityModels.im_employee_clinic.JobTitle">
<summary>
职称
</summary>
</member>
<member name="P:Performance.EntityModels.im_employee_clinic.PostCoefficient">
<summary>
岗位系数
</summary>
</member>
<member name="P:Performance.EntityModels.im_employee_clinic.Efficiency">
<summary>
效率绩效系数
</summary>
</member>
<member name="P:Performance.EntityModels.im_employee_clinic.Scale">
<summary>
规模绩效系数
</summary>
</member>
<member name="P:Performance.EntityModels.im_employee_clinic.Management">
<summary>
管理绩效发放系数
</summary>
</member>
<member name="P:Performance.EntityModels.im_employee_clinic.ScoreAverageRate">
<summary>
考核得分率
</summary>
</member>
<member name="P:Performance.EntityModels.im_employee_clinic.Attendance">
<summary>
出勤率
</summary>
</member>
<member name="P:Performance.EntityModels.im_employee_clinic.PeopleNumber">
<summary>
核算单元医生数
</summary>
</member>
<member name="P:Performance.EntityModels.im_employee_clinic.Workload">
<summary>
工作量绩效
</summary>
</member>
<member name="P:Performance.EntityModels.im_employee_clinic.OtherPerfor">
<summary>
其他绩效
</summary>
</member>
<member name="P:Performance.EntityModels.im_employee_clinic.Punishment">
<summary>
医院奖罚
</summary>
</member>
<member name="P:Performance.EntityModels.im_employee_clinic.Adjust">
<summary>
调节系数
</summary>
</member>
<member name="P:Performance.EntityModels.im_employee_clinic.Grant">
<summary>
发放系数
</summary>
</member>
<member name="T:Performance.EntityModels.im_header">
<summary>
......@@ -3004,6 +3119,11 @@
1 标准库 2 绩效库
</summary>
</member>
<member name="P:Performance.EntityModels.sys_hospitalconfig.DataBaseType">
<summary>
1、Sql Server 2、Orcale
</summary>
</member>
<member name="T:Performance.EntityModels.sys_menu">
<summary>
菜单表
......
......@@ -193,6 +193,7 @@ public AutoMapperConfigs()
CreateMap<ag_temp, SecondTempResponse>();
CreateMap<ag_secondallot, SecondListResponse>().ReverseMap();
CreateMap<im_employee_clinic, PerDataClinicEmployee>().ReverseMap();
}
}
}
......@@ -72,6 +72,10 @@ public enum SheetType
/// <summary> 临床科室护士绩效测算表 </summary>
[Description("临床科室护士绩效测算表")]
ComputeNurseAccount = 14,
/// <summary> 临床人员名单 </summary>
[Description("临床人员名单")]
ClinicEmployee = 15,
}
/// <summary>
......
......@@ -102,6 +102,11 @@ public class PerDataAccountBaisc : IPerData
/// 保底绩效系数
/// </summary>
public Nullable<decimal> MinimumFactor { get; set; }
/// <summary>
/// 工作量倾斜系数
/// </summary>
public Nullable<decimal> WorkSlopeFactor { get; set; }
#endregion
......
using System;
using System.Collections.Generic;
using System.Text;
namespace Performance.DtoModels
{
public class PerDataClinicEmployee : IPerData
{
/// <summary>
/// 核算单元分类
/// </summary>
public string UnitType { get; set; }
/// <summary>
/// 核算单元
/// </summary>
public string AccountingUnit { get; set; }
/// <summary>
/// 科室名称
/// </summary>
public string Department { get; set; }
/// <summary>
/// 医生姓名
/// </summary>
public string DoctorName { get; set; }
/// <summary>
/// 职称
/// </summary>
public string JobTitle { get; set; }
/// <summary>
/// 岗位系数
/// </summary>
public Nullable<decimal> PostCoefficient { get; set; }
/// <summary>
/// 效率绩效系数
/// </summary>
public Nullable<decimal> Efficiency { get; set; }
/// <summary>
/// 规模绩效系数
/// </summary>
public Nullable<decimal> Scale { get; set; }
/// <summary>
/// 管理绩效发放系数
/// </summary>
public Nullable<decimal> Management { get; set; }
/// <summary>
/// 参加工作时间
/// </summary>
public Nullable<DateTime> WorkTime { get; set; }
/// <summary>
/// 考核得分率
/// </summary>
public Nullable<decimal> ScoreAverageRate { get; set; }
/// <summary>
/// 出勤率
/// </summary>
public Nullable<decimal> Attendance { get; set; }
/// <summary>
/// 其他绩效
/// </summary>
public Nullable<decimal> OthePerfor { get; set; }
/// <summary>
/// 医院奖罚
/// </summary>
public Nullable<decimal> Punishment { get; set; }
/// <summary>
/// 调节系数
/// </summary>
public Nullable<decimal> Adjust { get; set; }
/// <summary>
/// 行号
/// </summary>
public int RowNumber { get; set; }
}
}
......@@ -74,9 +74,10 @@ public PerformanceDbContext(DbContextOptions<PerformanceDbContext> options)
public virtual DbSet<im_data> im_data { get; set; }
/// <summary> </summary>
public virtual DbSet<im_employee> im_employee { get; set; }
/// <summary> </summary>
public virtual DbSet<im_header> im_header { get; set; }
/// <summary> 特殊科室核算 </summary>
public virtual DbSet<im_employee_clinic> im_employee_clinic { get; set; }
/// <summary> </summary>
public virtual DbSet<im_header> im_header { get; set; }
/// <summary> 特殊科室核算 </summary>
public virtual DbSet<im_specialunit> im_specialunit { get; set; }
/// <summary> </summary>
public virtual DbSet<log_check> log_check { get; set; }
......
......@@ -70,7 +70,7 @@ public class ag_secondallot
/// 审核人
/// </summary>
public Nullable<int> AuditUser { get; set; }
/// <summary>
/// 备注
/// </summary>
......
......@@ -180,5 +180,10 @@ public class im_accountbasic
/// 调节系数
/// </summary>
public Nullable<decimal> NurseAdjustFactor { get; set; }
/// <summary>
/// 工作量倾斜系数
/// </summary>
public Nullable<decimal> WorkSlopeFactor { get; set; }
}
}
//-----------------------------------------------------------------------
// <copyright file=" im_employee_clinic.cs">
// * FileName: .cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
namespace Performance.EntityModels
{
/// <summary>
///
/// </summary>
[Table("im_employee_clinic")]
public class im_employee_clinic
{
/// <summary>
///
/// </summary>
[Key]
public int ID { get; set; }
/// <summary>
///
/// </summary>
public Nullable<int> AllotID { get; set; }
/// <summary>
/// sheet页id
/// </summary>
public Nullable<int> SheetID { get; set; }
/// <summary>
///
/// </summary>
public Nullable<int> RowNumber { get; set; }
/// <summary>
/// 核算单元分类
/// </summary>
public string UnitType { get; set; }
/// <summary>
/// 核算单元
/// </summary>
public string AccountingUnit { get; set; }
/// <summary>
/// 科室名称
/// </summary>
public string Department { get; set; }
/// <summary>
/// 医生姓名
/// </summary>
public string DoctorName { get; set; }
/// <summary>
/// 职称
/// </summary>
public string JobTitle { get; set; }
/// <summary>
/// 岗位系数
/// </summary>
public Nullable<decimal> PostCoefficient { get; set; }
/// <summary>
/// 效率绩效系数
/// </summary>
public Nullable<decimal> Efficiency { get; set; }
/// <summary>
/// 规模绩效系数
/// </summary>
public Nullable<decimal> Scale { get; set; }
/// <summary>
/// 管理绩效发放系数
/// </summary>
public Nullable<decimal> Management { get; set; }
/// <summary>
/// 考核得分率
/// </summary>
public Nullable<decimal> ScoreAverageRate { get; set; }
/// <summary>
/// 出勤率
/// </summary>
public Nullable<decimal> Attendance { get; set; }
/// <summary>
/// 核算单元医生数
/// </summary>
public Nullable<int> PeopleNumber { get; set; }
/// <summary>
/// 工作量绩效
/// </summary>
public Nullable<decimal> Workload { get; set; }
/// <summary>
/// 其他绩效
/// </summary>
public Nullable<decimal> OtherPerfor { get; set; }
/// <summary>
/// 医院奖罚
/// </summary>
public Nullable<decimal> Punishment { get; set; }
/// <summary>
/// 调节系数
/// </summary>
public Nullable<decimal> Adjust { get; set; }
/// <summary>
/// 发放系数
/// </summary>
public Nullable<decimal> Grant { get; set; }
}
}
......@@ -13,47 +13,47 @@ namespace Performance.EntityModels
///
/// </summary>
[Table("sys_hospitalconfig")]
public class sys_hospitalconfig
public class sys_hospitalconfig
{
/// <summary>
///
/// </summary>
[Key]
public int Id { get; set; }
public int Id { get; set; }
/// <summary>
///
/// </summary>
public Nullable<int> HospitalId { get; set; }
/// <summary>
///
/// </summary>
public string DbSource { get; set; }
/// <summary>
///
/// </summary>
public string DbName { get; set; }
/// <summary>
///
/// </summary>
public string DbUser { get; set; }
/// <summary>
///
/// </summary>
public string DbPassword { get; set; }
/// <summary>
/// 1 标准库 2 绩效库
/// </summary>
public Nullable<int> Type { get; set; }
/// <summary>
/// 1、Sql Server 2、Orcale
/// </summary>
public int DataBaseType{get;set;}
public int DataBaseType { get; set; }
}
}
//-----------------------------------------------------------------------
// <copyright file=" im_employee_clinic.cs">
// * FileName: im_employee_clinic.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
{
/// <summary>
/// im_employee_clinic Repository
/// </summary>
public partial class PerforImemployeeclinicRepository : PerforRepository<im_employee_clinic>
{
public PerforImemployeeclinicRepository(PerformanceDbContext context) : base(context)
{
}
}
}
......@@ -27,6 +27,7 @@ public class ImportDataService : IAutoInjection
private PerforImemployeeRepository perforImEmployeeRepository;
private PerforImaccountbasicRepository perforImaccountbasicRepository;
private PerforImspecialunitRepository perforImspecialunitRepository;
private PerforImemployeeclinicRepository perforImemployeeclinicRepository;
//private PerforLogdbugRepository logdbug;
private readonly LogManageService logManageService;
public ImportDataService(PerSheetService perSheetService,
......@@ -37,6 +38,7 @@ public class ImportDataService : IAutoInjection
PerforImemployeeRepository perforImEmployeeRepository,
PerforImaccountbasicRepository perforImaccountbasicRepository,
PerforImspecialunitRepository perforImspecialunitRepository,
PerforImemployeeclinicRepository perforImemployeeclinicRepository,
//PerforLogdbugRepository logdbug
LogManageService logManageService)
{
......@@ -48,6 +50,7 @@ public class ImportDataService : IAutoInjection
this.perforImEmployeeRepository = perforImEmployeeRepository;
this.perforImaccountbasicRepository = perforImaccountbasicRepository;
this.perforImspecialunitRepository = perforImspecialunitRepository;
this.perforImemployeeclinicRepository = perforImemployeeclinicRepository;
//this.logdbug = logdbug;
this.logManageService = logManageService;
}
......@@ -146,6 +149,44 @@ private void SaveEmployee(PerSheet sheet, int allotId)
perforImEmployeeRepository.AddRange(addList.ToArray());
}
/// <summary>
/// 保存临床人员
/// </summary>
/// <param name="sheet"></param>
/// <param name="allotId"></param>
/// <returns></returns>
private void SaveClinicEmployee(PerSheet sheet, int allotId)
{
var imsheet = new per_sheet { AllotID = allotId, SheetName = sheet.SheetName, Source = 1, SheetType = (int)sheet.SheetType };
perforPerSheetRepository.Add(imsheet);
var dataList = sheet.PerData.Select(t => (PerDataClinicEmployee)t);
//新上传名单中无人员名单,取到最后日期的数据
if (dataList == null || dataList.Count() <= 0)
{
var allot = perforPerallotRepository.GetEntity(t => t.ID == allotId);
var allotList = perforPerallotRepository.GetEntities(t => t.HospitalId == allot.HospitalId)
.OrderByDescending(t => t.Year).ThenByDescending(t => t.Month);
foreach (var item in allotList)
{
var employeeList = perforImemployeeclinicRepository.GetEntities(t => t.AllotID == item.ID);
if (employeeList != null && employeeList.Count > 0)
{
dataList = Mapper.Map<List<PerDataClinicEmployee>>(employeeList);
break;
}
}
}
List<im_employee_clinic> addList = new List<im_employee_clinic>();
foreach (var data in dataList)
{
var imdata = Mapper.Map<im_employee_clinic>(data);
imdata.SheetID = imsheet.ID;
imdata.AllotID = allotId;
imdata.OtherPerfor = data.OthePerfor;
addList.Add(imdata);
}
perforImemployeeclinicRepository.AddRange(addList.ToArray());
}
/// <summary>
/// 保存科室绩效基础表
......@@ -246,6 +287,10 @@ private bool Save(PerExcel excel, int allotId)
{
SaveEmployee(sheet, allotId);
}
else if (sheet.SheetType == SheetType.ClinicEmployee)
{
SaveClinicEmployee(sheet, allotId);
}
else if (sheet.SheetType == SheetType.AccountBasic)
{
SaveAccountBasic(sheet, allotId);
......
......@@ -23,6 +23,9 @@ public static IPerSheetDataRead GetDataRead(SheetType sheetType, bool isnew = fa
case SheetType.Employee:
dataread = new PerSheetDataReadEmployee();
break;
case SheetType.ClinicEmployee:
dataread = new PerSheetDataReadClinicEmployee();
break;
case SheetType.Income:
if (isnew)
dataread = new PerSheetDataReadBillIncome();
......
......@@ -59,8 +59,10 @@ public PerSheet Sheet(ISheet sheet, bool isnew)
/// <returns></returns>
public SheetType GetSheetType(string sheetName)
{
if (sheetName.StartsWith("医院人员名单"))
if (sheetName.StartsWith("行政人员名单"))
return SheetType.Employee;
else if (sheetName.StartsWith("临床人员名单"))
return SheetType.ClinicEmployee;
else if (sheetName.StartsWith("1.0"))
return SheetType.OtherIncome;
else if (sheetName.StartsWith("1."))
......
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using NPOI.SS.UserModel;
using Performance.DtoModels;
using Performance.Infrastructure;
namespace Performance.Services
{
public class PerSheetDataReadClinicEmployee : IPerSheetDataRead
{
public PerSheetPoint Point => new PerSheetPoint
{
HeaderFirstRowNum = 1,
HeaderLastRowNum = 1,
HeaderFirstCellNum = 0,
DataFirstRowNum = 2,
};
public List<IPerData> ReadData(ISheet sheet, List<PerHeader> perHeader)
{
List<IPerData> dataList = new List<IPerData>();
for (int r = Point.DataFirstRowNum.Value; r < sheet.LastRowNum + 1; r++)
{
var row = sheet.GetRow(r);
if (row == null) continue;
PerDataClinicEmployee clinicEmployee = new PerDataClinicEmployee
{
RowNumber = r,
UnitType = row.GetCell(perHeader.FirstOrDefault(p => p.CellValue == "核算单元分类").PointCell)?.StringCellValue,
AccountingUnit = row.GetCell(perHeader.FirstOrDefault(p => p.CellValue == "核算单元").PointCell)?.StringCellValue,
Department = row.GetCell(perHeader.FirstOrDefault(p => p.CellValue == "核算单元").PointCell)?.StringCellValue,
DoctorName = row.GetCell(perHeader.FirstOrDefault(p => p.CellValue == "医生姓名").PointCell)?.StringCellValue,
JobTitle = row.GetCell(perHeader.FirstOrDefault(p => p.CellValue == "职称").PointCell)?.StringCellValue,
PostCoefficient = ConvertHelper.To<decimal?>(row.GetCell(perHeader.FirstOrDefault(p => p.CellValue == "岗位系数").PointCell)?.NumericCellValue),
Efficiency = ConvertHelper.To<decimal?>(row.GetCell(perHeader.FirstOrDefault(p => p.CellValue == "效率绩效系数").PointCell)?.NumericCellValue),
Scale = ConvertHelper.To<decimal?>(row.GetCell(perHeader.FirstOrDefault(p => p.CellValue == "规模绩效系数").PointCell)?.NumericCellValue),
Management = ConvertHelper.To<decimal?>(row.GetCell(perHeader.FirstOrDefault(p => p.CellValue == "管理绩效发放系数").PointCell)?.NumericCellValue),
ScoreAverageRate = ConvertHelper.To<decimal?>(row.GetCell(perHeader.FirstOrDefault(p => p.CellValue == "考核得分率").PointCell)?.NumericCellValue),
Attendance = ConvertHelper.To<decimal?>(row.GetCell(perHeader.FirstOrDefault(p => p.CellValue == "出勤率").PointCell)?.NumericCellValue),
OthePerfor = ConvertHelper.To<decimal?>(row.GetCell(perHeader.FirstOrDefault(p => p.CellValue == "其他绩效").PointCell)?.NumericCellValue),
Punishment = ConvertHelper.To<decimal?>(row.GetCell(perHeader.FirstOrDefault(p => p.CellValue == "医院奖罚").PointCell)?.NumericCellValue),
Adjust = ConvertHelper.To<decimal?>(row.GetCell(perHeader.FirstOrDefault(p => p.CellValue == "调节系数").PointCell)?.NumericCellValue),
};
dataList.Add(clinicEmployee);
}
return dataList;
}
}
}
......@@ -39,9 +39,10 @@ public List<IPerData> ReadData(ISheet sheet, List<PerHeader> perHeader)
unifyUnit.Number = ConvertHelper.To<decimal>(row.GetCell(perHeader.FirstOrDefault(p => p.CellValue == "核算单元人员数量").PointCell)?.NumericCellValue);
unifyUnit.BasicFactor = ConvertHelper.To<decimal>(row.GetCell(perHeader.FirstOrDefault(p => p.CellValue == "预算比例").PointCell)?.NumericCellValue);
unifyUnit.SlopeFactor = ConvertHelper.To<decimal>(row.GetCell(perHeader.FirstOrDefault(p => p.CellValue == "倾斜系数").PointCell)?.NumericCellValue);
unifyUnit.Scale = ConvertHelper.To<decimal>(row.GetCell(perHeader.FirstOrDefault(p => p.CellValue == "规模绩效系数").PointCell)?.NumericCellValue);
unifyUnit.Effic = ConvertHelper.To<decimal>(row.GetCell(perHeader.FirstOrDefault(p => p.CellValue == "效率绩效系数").PointCell)?.NumericCellValue);
unifyUnit.Grant = ConvertHelper.To<decimal>(row.GetCell(perHeader.FirstOrDefault(p => p.CellValue == "管理绩效发放系数").PointCell)?.NumericCellValue);
//unifyUnit.Scale = ConvertHelper.To<decimal>(row.GetCell(perHeader.FirstOrDefault(p => p.CellValue == "规模绩效系数").PointCell)?.NumericCellValue);
//unifyUnit.Effic = ConvertHelper.To<decimal>(row.GetCell(perHeader.FirstOrDefault(p => p.CellValue == "效率绩效系数").PointCell)?.NumericCellValue);
//unifyUnit.Grant = ConvertHelper.To<decimal>(row.GetCell(perHeader.FirstOrDefault(p => p.CellValue == "管理绩效发放系数").PointCell)?.NumericCellValue);工作量倾斜系数
unifyUnit.WorkSlopeFactor = ConvertHelper.To<decimal>(row.GetCell(perHeader.FirstOrDefault(p => p.CellValue == "工作量倾斜系数").PointCell)?.NumericCellValue);
unifyUnit.MinimumReference = row.GetCell(perHeader.FirstOrDefault(p => p.CellValue == "保底绩效参考标准").PointCell)?.StringCellValue;
unifyUnit.MinimumFactor = ConvertHelper.To<decimal>(row.GetCell(perHeader.FirstOrDefault(p => p.CellValue == "保底绩效系数").PointCell)?.NumericCellValue);
unifyUnit.OtherPerfor1 = ConvertHelper.To<decimal>(row.GetCell(perHeader.FirstOrDefault(p => p.CellValue == "其他绩效1").PointCell)?.NumericCellValue);
......
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