Commit 072dee28 by lcx

抽取

parent cba3328a
......@@ -31,7 +31,7 @@ public PersonController(PersonService personService, ClaimService claimService)
[HttpPost]
public ApiResponse GetPersons(int allotId)
{
var list = personService.GetPersons(allotId);
var list = personService.GetPersons(allotId, claimService.GetUserId());
return new ApiResponse(ResponseType.OK, list);
}
......@@ -42,7 +42,7 @@ public ApiResponse GetPersons(int allotId)
/// <returns></returns>
[Route("person/add")]
[HttpPost]
public ApiResponse CreatePerson([FromBody] per_employee request)
public ApiResponse CreatePerson([FromBody] PerEmployeeResponse request)
{
request.CreateUser = claimService.GetUserId();
var employeee = personService.CreatePerson(request);
......@@ -57,7 +57,7 @@ public ApiResponse CreatePerson([FromBody] per_employee request)
/// <returns></returns>
[Route("person/edit")]
[HttpPost]
public ApiResponse UpdatePerson([FromBody] per_employee request)
public ApiResponse UpdatePerson([FromBody] PerEmployeeResponse request)
{
var result = personService.UpdatePerson(request);
return result ? new ApiResponse(ResponseType.OK, "修改成功!")
......@@ -87,7 +87,7 @@ public ApiResponse DeletePerson(int employeeId)
[HttpPost]
public ApiResponse GetDepartments(int hospitalId)
{
var list = personService.GetPersons(hospitalId);
var list = personService.GetDepartments(hospitalId);
return new ApiResponse(ResponseType.OK, list);
}
......@@ -100,6 +100,9 @@ public ApiResponse GetDepartments(int hospitalId)
[HttpPost]
public ApiResponse CreateDeptDic([FromBody] per_dept_dic request)
{
if (string.IsNullOrEmpty(request.Department) || string.IsNullOrEmpty(request.HISDeptName))
return new ApiResponse(ResponseType.ParameterError, "标准科室,系统科室不可为空!");
request.CreateUser = claimService.GetUserId();
var employeee = personService.CreateDeptDic(request);
return employeee.Id > 0 ? new ApiResponse(ResponseType.OK, "添加成功!", employeee)
......@@ -113,8 +116,11 @@ public ApiResponse CreateDeptDic([FromBody] per_dept_dic request)
/// <returns></returns>
[Route("deptdic/edit")]
[HttpPost]
public ApiResponse UpdateDeptDic([FromBody] per_dept_dic request)
public ApiResponse UpdateDeptDic([FromBody] DeptdicResponse request)
{
if (string.IsNullOrEmpty(request.Department) || string.IsNullOrEmpty(request.HISDeptName))
return new ApiResponse(ResponseType.ParameterError, "标准科室,系统科室不可为空!");
var result = personService.UpdateDeptDic(request);
return result ? new ApiResponse(ResponseType.OK, "修改成功!")
: new ApiResponse(ResponseType.OK, "修改失败!");
......@@ -123,15 +129,32 @@ public ApiResponse UpdateDeptDic([FromBody] per_dept_dic request)
/// <summary>
/// 删除科室
/// </summary>
/// <param name="deptdicId"></param>
/// <param name="request"></param>
/// <returns></returns>
[Route("deptdic/delete/{deptdicId}")]
[Route("deptdic/delete")]
[HttpPost]
public ApiResponse DeleteDeptDic(int deptdicId)
public ApiResponse DeleteDeptDic([FromBody] DeptdicResponse request)
{
var result = personService.DeleteDeptDic(deptdicId);
var result = personService.DeleteDeptDic(request);
return result ? new ApiResponse(ResponseType.OK, "删除成功!")
: new ApiResponse(ResponseType.OK, "删除失败!");
}
/// <summary>
/// 系统/标准科室字典
/// </summary>
/// <param name="hospitalId">医院Id</param>
/// <param name="type">1系统科室 2标准科室 3核算单元</param>
/// <returns></returns>
[Route("deptdic/{hospitalId}/dict/{type}")]
[HttpPost]
public ApiResponse DeptDics(int hospitalId, int type)
{
if (!new int[] { 1, 2, 3 }.Contains(type))
return new ApiResponse(ResponseType.ParameterError, "参数错误!");
var result = personService.DeptDics(hospitalId, type);
return new ApiResponse(ResponseType.OK, result);
}
}
}
......@@ -796,14 +796,14 @@
<param name="allotId"></param>
<returns></returns>
</member>
<member name="M:Performance.Api.Controllers.PersonController.CreatePerson(Performance.EntityModels.per_employee)">
<member name="M:Performance.Api.Controllers.PersonController.CreatePerson(Performance.DtoModels.PerEmployeeResponse)">
<summary>
新增员工信息
</summary>
<param name="request"></param>
<returns></returns>
</member>
<member name="M:Performance.Api.Controllers.PersonController.UpdatePerson(Performance.EntityModels.per_employee)">
<member name="M:Performance.Api.Controllers.PersonController.UpdatePerson(Performance.DtoModels.PerEmployeeResponse)">
<summary>
修改员工信息
</summary>
......@@ -831,18 +831,26 @@
<param name="request"></param>
<returns></returns>
</member>
<member name="M:Performance.Api.Controllers.PersonController.UpdateDeptDic(Performance.EntityModels.per_dept_dic)">
<member name="M:Performance.Api.Controllers.PersonController.UpdateDeptDic(Performance.DtoModels.DeptdicResponse)">
<summary>
修改科室信息
</summary>
<param name="request"></param>
<returns></returns>
</member>
<member name="M:Performance.Api.Controllers.PersonController.DeleteDeptDic(System.Int32)">
<member name="M:Performance.Api.Controllers.PersonController.DeleteDeptDic(Performance.DtoModels.DeptdicResponse)">
<summary>
删除科室
</summary>
<param name="deptdicId"></param>
<param name="request"></param>
<returns></returns>
</member>
<member name="M:Performance.Api.Controllers.PersonController.DeptDics(System.Int32,System.Int32)">
<summary>
系统/标准科室字典
</summary>
<param name="hospitalId">医院Id</param>
<param name="type">1系统科室 2标准科室 3核算单元</param>
<returns></returns>
</member>
<member name="T:Performance.Api.Controllers.ReportController">
......
......@@ -2590,6 +2590,16 @@
菜单状态 1 启用 2禁用
</summary>
</member>
<member name="P:Performance.DtoModels.PerEmployeeResponse.WorkTime">
<summary>
参加工作时间
</summary>
</member>
<member name="P:Performance.DtoModels.PerEmployeeResponse.BirthDate">
<summary>
出生年月
</summary>
</member>
<member name="P:Performance.DtoModels.ResComputeResponse.ID">
<summary>
......
......@@ -3233,9 +3233,14 @@
出勤率
</summary>
</member>
<member name="P:Performance.EntityModels.per_employee.Efficiency">
<member name="P:Performance.EntityModels.per_employee.PermanentStaff">
<summary>
效率绩效
核算人数
</summary>
</member>
<member name="P:Performance.EntityModels.per_employee.EfficiencyNumber">
<summary>
效率人数
</summary>
</member>
<member name="P:Performance.EntityModels.per_employee.WorkTime">
......
......@@ -209,6 +209,11 @@ public AutoMapperConfigs()
CreateMap<per_budget_ratio, BudgetResponse>()
.ForMember(dest => dest.Type, opt => opt.MapFrom(src => 2));
CreateMap<BudgetResponse, per_budget_ratio>();
CreateMap<per_employee, PerEmployeeResponse>()
.ForMember(dest => dest.WorkTime, opt => opt.MapFrom(src => src.WorkTime == null ? null : src.WorkTime.ToString()))
.ForMember(dest => dest.BirthDate, opt => opt.MapFrom(src => src.BirthDate == null ? null : src.BirthDate.ToString()))
.ReverseMap();
}
}
}
using System;
using System.Collections.Generic;
using System.Text;
namespace Performance.DtoModels
{
public class DeptdicResponse
{
public int HospitalId { get; set; }
public string HISDeptName { get; set; }
public string Department { get; set; }
public Deptdic OutDoctorAccounting { get; set; }
public Deptdic OutNurseAccounting { get; set; }
public Deptdic OutTechnicAccounting { get; set; }
public Deptdic InpatDoctorAccounting { get; set; }
public Deptdic InpatNurseAccounting { get; set; }
public Deptdic InpatTechnicAccounting { get; set; }
public DateTime? CreateTime { get; set; }
}
public class Deptdic
{
public int Id { get; set; }
public string AccountingUnit { get; set; }
}
}
using Performance.EntityModels;
using System;
using System.Collections.Generic;
using System.Text;
namespace Performance.DtoModels
{
public class PerEmployeeResponse : per_employee
{
/// <summary>
/// 参加工作时间
/// </summary>
public new string WorkTime { get; set; }
/// <summary>
/// 出生年月
/// </summary>
public new string BirthDate { get; set; }
}
}
......@@ -7,55 +7,55 @@
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
namespace Performance.EntityModels
namespace Performance.EntityModels
{
/// <summary>
/// 绩效人员表
/// </summary>
[Table("per_employee")]
public class per_employee
public class per_employee
{
/// <summary>
///
/// </summary>
[Key]
public int Id { get; set; }
public int Id { 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 PersonnelNumber { get; set; }
/// <summary>
/// 正式/临聘
/// </summary>
public string JobCategory { get; set; }
/// <summary>
/// 职务
/// </summary>
public string Duty { get; set; }
/// <summary>
/// 职称
/// </summary>
public string JobTitle { get; set; }
/// <summary>
/// 人员类别
/// </summary>
......@@ -70,37 +70,43 @@ public class per_employee
/// 出勤率
/// </summary>
public Nullable<decimal> Attendance { get; set; }
/// <summary>
/// 效率绩效
/// 核算人数
/// </summary>
public Nullable<decimal> Efficiency { get; set; }
public Nullable<decimal> PermanentStaff { get; set; }
/// <summary>
/// 效率人数
/// </summary>
public Nullable<decimal> EfficiencyNumber { get; set; }
/// <summary>
/// 参加工作时间
/// </summary>
public Nullable<DateTime> WorkTime { get; set; }
/// <summary>
/// 出生年月
/// </summary>
public Nullable<DateTime> BirthDate { get; set; }
/// <summary>
/// 年龄
/// </summary>
public Nullable<int> Age { get; set; }
/// <summary>
/// 备注
/// </summary>
public string Remark { get; set; }
/// <summary>
/// 医院Id
/// </summary>
public Nullable<int> HospitalId { get; set; }
/// <summary>
/// 绩效Id
/// </summary>
......
......@@ -21,12 +21,12 @@ namespace Performance.Extract.Api.Controllers
[Route("api/[controller]")]
public class ExtractController : Controller
{
private readonly DFExtractService extractService;
private readonly DFExtractService1 extractService;
private readonly HospitalService hospitalService;
private readonly WebapiUrl url;
private readonly ILogger<ExtractController> logger;
private readonly IHostingEnvironment evn;
public ExtractController(DFExtractService extractService,
public ExtractController(DFExtractService1 extractService,
HospitalService hospitalService,
IOptions<WebapiUrl> url,
ILogger<ExtractController> logger,
......
......@@ -13,6 +13,7 @@ public enum StyleType
列头,
系数,
数据,
Remove,
默认,
}
public enum CellFormat
......@@ -69,6 +70,10 @@ public static ICellStyle CreateCellStyle(IWorkbook wb, StyleType type = StyleTyp
cellStyle.FillForegroundColor = HSSFColor.SkyBlue.Index;
cellStyle.FillPattern = FillPattern.SolidForeground;
break;
case StyleType.Remove:
cellStyle.FillForegroundColor = HSSFColor.LightTurquoise.Index;
cellStyle.FillPattern = FillPattern.SolidForeground;
break;
case StyleType.默认:
cellStyle.SetFont(font);
break;
......
......@@ -375,16 +375,30 @@ private bool QueryAndAddItem(List<sys_hospitalconfig> hospitalconfigs, string sq
{
var connection = ConnectionBuilder.Create((DatabaseType)hospitalConfig.DataBaseType, hospitalConfig.DbSource, hospitalConfig.DbName, hospitalConfig.DbUser, hospitalConfig.DbPassword);
logger.LogInformation($"执行sql:{sql}");
var dataList = extractRepository.ExecuteScript(connection, sql, null);
logger.LogInformation($"获取数据{dataList?.Count ?? 0}条");
if (dataList != null && dataList.Any())
itemNames.AddRange(dataList.Select(t => t.Value.ToString()));
try
{
var dataList = extractRepository.ExecuteScript(connection, sql, null);
logger.LogInformation($"获取数据{dataList?.Count ?? 0}条");
if (dataList != null && dataList.Any())
itemNames.AddRange(dataList.Select(t => t.Value.ToString()));
}
catch (Exception ex)
{
logger.LogError(ex.ToString());
}
}
var items = exitemRepository.GetEntities(t => t.ModuleId == module.Id);
if (items == null && (itemNames == null || !itemNames.Any()))
return true;
var delItems = items?.Where(t => !itemNames.Contains(t.ItemName));
if (delItems != null && delItems.Any())
{
logger.LogInformation($"删除默认收费项 受影响行数{delItems.Count()}");
exitemRepository.RemoveRange(delItems.ToArray());
}
if (itemNames != null && itemNames.Any(t => !string.IsNullOrEmpty(t)))
{
if (items != null)
......
......@@ -27,6 +27,7 @@ public class UserService : IAutoInjection
private PerforPerallotRepository _perforPerallotRepository;
private PerforImaccountbasicRepository _imaccountbasicRepository;
private PerforImspecialunitRepository _imspecialunitRepository;
private PerforPerdeptdicRepository _perdeptdicRepository;
public UserService(IOptions<Application> application,
PerforSmsRepository smsRepository,
PerforUserRepository userRepository,
......@@ -37,7 +38,8 @@ public class UserService : IAutoInjection
PerforImemployeeRepository employeeRepository,
PerforPerallotRepository perforPerallotRepository,
PerforImaccountbasicRepository imaccountbasicRepository,
PerforImspecialunitRepository imspecialunitRepository)
PerforImspecialunitRepository imspecialunitRepository,
PerforPerdeptdicRepository perdeptdicRepository)
{
this.application = application.Value;
this._userRepository = userRepository;
......@@ -50,6 +52,7 @@ public class UserService : IAutoInjection
this._perforPerallotRepository = perforPerallotRepository;
this._imaccountbasicRepository = imaccountbasicRepository;
this._imspecialunitRepository = imspecialunitRepository;
this._perdeptdicRepository = perdeptdicRepository;
}
/// <summary>
......@@ -330,9 +333,9 @@ public List<sys_role> RoleList(int userId)
/// 科室列表
/// </summary>
/// <returns></returns>
public List<TitleValue> Department(int hospitalID)
public List<TitleValue> Department(int hospitalId)
{
var allotList = _perforPerallotRepository.GetEntities(t => t.HospitalId == hospitalID);
var allotList = _perforPerallotRepository.GetEntities(t => t.HospitalId == hospitalId);
var result = new List<string>();
if (allotList != null)
{
......@@ -355,6 +358,10 @@ public List<TitleValue> Department(int hospitalID)
result = result.Distinct().OrderBy(t => t).ToList();
}
}
//var list = _perdeptdicRepository.GetEntities(t => t.HospitalId == hospitalId);
//if (list == null || !list.Any()) return new List<TitleValue>();
//var result = list.Select(t => t.AccountingUnit).Distinct().OrderBy(t => t);
return result?.Select(t => new TitleValue { Title = t, Value = t }).ToList();
}
......
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