Commit 4126b0e8 by lcx

Merge branch 'feature/审核' into develop0926

parents 8279aa70 90fbff9b
......@@ -109,10 +109,78 @@ public ApiResponse SaveCollectData(int allotId, [FromBody] SaveCollectData reque
{
if (allotId <= 0)
return new ApiResponse(ResponseType.ParameterError, "参数无效");
collectService.SaveCollectData(allotId, request);
collectService.SaveCollectData(allotId, request, claim.GetUserId());
return new ApiResponse(ResponseType.OK);
}
/// <summary>
/// 提交采集信息
/// </summary>
[HttpPost]
[Route("submitcollectdata/{allotId}")]
public ApiResponse SubmitCollectData(int allotId, [FromBody] SaveCollectData request)
{
if (allotId <= 0)
return new ApiResponse(ResponseType.ParameterError, "参数无效");
collectService.SaveCollectData(allotId, request, claim.GetUserId(), 2);
return new ApiResponse(ResponseType.OK);
}
}
}
\ No newline at end of file
/// <summary>
/// 数据录入显示列表
/// </summary>
[HttpPost]
[Route("collectdatalist/{hospitalId}")]
public ApiResponse CollectDataList(int hospitalId)
{
if (hospitalId <= 0)
return new ApiResponse(ResponseType.ParameterError, "参数无效");
var data = collectService.CollectDataList(hospitalId);
return new ApiResponse(ResponseType.OK, data);
}
/// <summary>
/// 核算办显示列表
/// </summary>
[HttpPost]
[Route("performanceforlist/{allotId}")]
public ApiResponse PerformanceforList(int allotId)
{
if (allotId <= 0)
return new ApiResponse(ResponseType.ParameterError, "参数无效");
var data = collectService.PerformanceforList(allotId);
return new ApiResponse(ResponseType.OK, data);
}
/// <summary>
/// 科室显示列表
/// </summary>
[HttpPost]
[Route("departmentlist/{allotId}")]
public ApiResponse DepartmentList(int allotId, [FromQuery] int userId)
{
if (allotId <= 0)
return new ApiResponse(ResponseType.ParameterError, "参数无效");
var data = collectService.DepartmentList(allotId, userId);
return new ApiResponse(ResponseType.OK, data);
}
/// <summary>
/// 提交数据审核
/// </summary>
[HttpPost]
[Route("collectdataaudit")]
public ApiResponse CollectDataAudit([FromBody] CollectAuditRequest request)
{
if (request == null || request.AllotId <= 0 || request.UserId <= 0 || !new int[] { 3, 4 }.Contains(request.Status))
return new ApiResponse(ResponseType.ParameterError, "参数无效");
var result = collectService.CollectDataAudit(request.AllotId, request.UserId, request.Status);
string remark = request.Status == 3 ? "审核通过" : "驳回成功";
return result ? new ApiResponse(ResponseType.OK, remark) : new ApiResponse(ResponseType.Fail, "操作失败");
}
}
}
......@@ -8,7 +8,7 @@ public JobRegistry()
{
//Schedule<ExtractDataJob>().ToRunNow().AndEvery(1).Days().At(23, 0);
//Schedule<ExtractDataJob>().ToRunEvery(1).Days().At(23, 0);
Schedule<ExtractGenerateJob>().ToRunEvery(1).Days().At(14, 00);
Schedule<ExtractGenerateJob>().ToRunEvery(1).Days().At(23, 00);
}
}
}
......@@ -403,6 +403,31 @@
保存采集内容
</summary>
</member>
<member name="M:Performance.Api.Controllers.CollectController.SubmitCollectData(System.Int32,Performance.DtoModels.SaveCollectData)">
<summary>
提交采集信息
</summary>
</member>
<member name="M:Performance.Api.Controllers.CollectController.CollectDataList(System.Int32)">
<summary>
数据录入显示列表
</summary>
</member>
<member name="M:Performance.Api.Controllers.CollectController.PerformanceforList(System.Int32)">
<summary>
核算办显示列表
</summary>
</member>
<member name="M:Performance.Api.Controllers.CollectController.DepartmentList(System.Int32,System.Int32)">
<summary>
科室显示列表
</summary>
</member>
<member name="M:Performance.Api.Controllers.CollectController.CollectDataAudit(Performance.DtoModels.CollectAuditRequest)">
<summary>
提交数据审核
</summary>
</member>
<member name="M:Performance.Api.Controllers.ComputeController.GetCompute(Performance.DtoModels.ComputerRequest)">
<summary>
获取绩效发放列表
......
......@@ -1993,6 +1993,11 @@
参数值
</summary>
</member>
<member name="P:Performance.DtoModels.CollectAuditRequest.Status">
<summary>
3 审核通过 4 驳回
</summary>
</member>
<member name="P:Performance.DtoModels.ComputerRequest.ComputeId">
<summary>
绩效数据id
......
......@@ -2270,6 +2270,26 @@
单元格value
</summary>
</member>
<member name="P:Performance.EntityModels.collect_data.Status">
<summary>
1 保存 2 提交(等待审核) 3 审核通过 4 驳回
</summary>
</member>
<member name="P:Performance.EntityModels.collect_data.SavedUser">
<summary>
保存数据的用户
</summary>
</member>
<member name="P:Performance.EntityModels.collect_data.SavedTime">
<summary>
保存数据的时间
</summary>
</member>
<member name="P:Performance.EntityModels.collect_data.SubmitUser">
<summary>
提交数据的用户
</summary>
</member>
<member name="T:Performance.EntityModels.collect_permission">
<summary>
......
......@@ -26,6 +26,8 @@ public class HandsonTable : HandsonTableBase
{
private IEnumerable<collect_permission> _permissions;
public bool ReadOnly { get; set; } = false;
public HandsonTable(int sheetType, string[] cols, List<collect_permission> permissions)
: base()
{
......@@ -48,12 +50,12 @@ public void SetRowData(IEnumerable<HandsonRowData> datas, bool isTypein)
var dic = CreateDataRow("编号", dt.Row.ToString());
foreach (var item in dt.CellData)
{
if (dic.ContainsKey(item.Name.ToLower()) && isTypein && _permissions.Any(w => w.HeadName.ToLower() == item.Name.ToLower()))
dic[item.Name.ToLower()] = item.Value?.ToString() ?? "";
else if (dic.ContainsKey(item.Name.ToLower()) && _permissions.Any(w => w.HeadName.ToLower() == item.Name.ToLower() && w.AttachLast > 0))
dic[item.Name.ToLower()] = item.Value?.ToString() ?? "";
else if (dic.ContainsKey(item.Name.ToLower()) && _permissions.Any(w => w.HeadName.ToLower() == item.Name.ToLower()))
dic[item.Name.ToLower()] = item.Value?.ToString() ?? "";
//if (dic.ContainsKey(item.Name.ToLower()) && isTypein && _permissions.Any(w => w.HeadName.ToLower() == item.Name.ToLower()))
// dic[item.Name.ToLower()] = item.Value?.ToString() ?? "";
//else if (dic.ContainsKey(item.Name.ToLower()) && _permissions.Any(w => w.HeadName.ToLower() == item.Name.ToLower() && w.AttachLast > 0))
// dic[item.Name.ToLower()] = item.Value?.ToString() ?? "";
//else if (dic.ContainsKey(item.Name.ToLower()) && _permissions.Any(w => w.HeadName.ToLower() == item.Name.ToLower()))
dic[item.Name.ToLower()] = item.Value?.ToString() ?? "";
}
Data.Add(dic);
}
......@@ -66,6 +68,7 @@ private void InitColHeaders(int sheetType, string[] cols)
new DefalutHandsonHeader{ SheetType = SheetType.OtherIncome, Necessity = new[] { "核算单元(医技组)","核算单元(医生组)","核算单元(护理组)","科室名称" } },
new DefalutHandsonHeader{ SheetType = SheetType.Expend, Necessity = new[] { "核算单元(医技组)","核算单元(医生组)","核算单元(护理组)","科室名称" } },
new DefalutHandsonHeader{ SheetType = SheetType.Workload, Necessity = new[] { "核算单元","科室名称" } },
new DefalutHandsonHeader{ SheetType = SheetType.SpecialUnit, Necessity = new[] { "科室名称" } },
//new DefalutHandsonHeader{ SheetType = SheetType.AccountExtra, Necessity = new[] { "核算单元","科室名称" } },
//new DefalutHandsonHeader{ SheetType = SheetType.PersonExtra, Necessity = new[] { "核算单元","科室名称" } },
};
......@@ -85,12 +88,16 @@ private void InitColHeaders(int sheetType, string[] cols)
private void InitColumns(List<collect_permission> permissions)
{
var defaults = new List<string> { "核算单元(医技组)", "核算单元(医生组)", "核算单元(护理组)", "核算单元", "科室名称" };
List<HandsonColumn> columns = new List<HandsonColumn>();
foreach (var col in ColHeaders)
{
var item = col.ToLower();
var readnoly = _permissions.FirstOrDefault(f => f.HeadName == item)?.Readnoly == 1;
columns.Add(new HandsonColumn(item.ToLower(), readnoly));
DataFormat format = defaults.Contains(col) ? DataFormat.普通格式 : DataFormat.小数;
columns.Add(new HandsonColumn(item.ToLower(), readnoly, format));
}
Columns = columns;
}
......
namespace Performance.DtoModels
{
public class CollectAuditRequest
{
public int AllotId { get; set; }
public int UserId { get; set; }
/// <summary>
/// 3 审核通过 4 驳回
/// </summary>
public int Status { get; set; }
}
}
......@@ -3,6 +3,7 @@
// * FileName: .cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
......@@ -79,5 +80,25 @@ public class collect_data
/// 单元格value
/// </summary>
public string CellValue { get; set; }
/// <summary>
/// 1 保存 2 提交(等待审核) 3 审核通过 4 驳回
/// </summary>
public int Status { get; set; }
/// <summary>
/// 保存数据的用户
/// </summary>
public int SavedUser { get; set; }
/// <summary>
/// 保存数据的时间
/// </summary>
public Nullable<DateTime> SavedTime { get; set; }
/// <summary>
/// 提交数据的用户
/// </summary>
public Nullable<int> SubmitUser { get; set; }
}
}
......@@ -148,7 +148,7 @@ private void WriteDataToFile(IWorkbook workbook, per_allot allot, Dictionary<ExD
ExtractHelper.CreateNotExistSheet(models, workbook);
var employeeDict = peremployeeRepository.GetEntities(t => t.AllotId == allot.ID);
var collectData = collectdataRepository.GetEntities(t => t.AllotID == allot.ID);
var collectData = collectdataRepository.GetEntities(t => t.AllotID == allot.ID && t.Status == 3);
var drugfactorData = drugtypefactorRepository.GetEntities(t => t.AllotID == allot.ID) ?? new List<cof_drugtype_factor>();
if (!exdict.ContainsKey(ExDataDict.IncomeFactor))
......
......@@ -22,6 +22,17 @@ public SpecialUnitDataWrite(ILogger logger)
public void WriteCollectData(ISheet sheet, PerSheetPoint point, SheetType sheetType, ExcelStyle style, List<collect_data> collects, Dictionary<ExDataDict, object> exdict = null)
{
if (collects == null || !collects.Any()) return;
var data = collects.Select(t => new ExtractTransDto
{
Department = t.Department,
SpecialAccounting = t.Department,
Category = t.TypeName,
Value = ConvertHelper.To<decimal>(t.CellValue)
}).ToList();
WriteSheetData(sheet, point, sheetType, style, data, exdict);
}
public void WriteSheetData(ISheet sheet, PerSheetPoint point, SheetType sheetType, ExcelStyle style, object data, Dictionary<ExDataDict, object> exdict = null)
......
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