Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
P
performance
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
zry
performance
Commits
a7bd8716
Commit
a7bd8716
authored
May 19, 2023
by
ruyun.zhang
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'feature/考核' into develop
parents
7e9e1e15
99c264e7
Show whitespace changes
Inline
Side-by-side
Showing
40 changed files
with
5551 additions
and
628 deletions
+5551
-628
performance/Performance.Api/Controllers/AssessController.cs
+145
-145
performance/Performance.Api/Controllers/AssessNewController.cs
+601
-0
performance/Performance.Api/Controllers/ConfigController.cs
+1
-0
performance/Performance.Api/wwwroot/Performance.Api.xml
+235
-0
performance/Performance.Api/wwwroot/Performance.DtoModels.xml
+571
-0
performance/Performance.Api/wwwroot/Performance.EntityModels.xml
+613
-0
performance/Performance.DtoModels/AutoMapper/AutoMapperConfigs.cs
+15
-0
performance/Performance.DtoModels/Enum.cs
+19
-0
performance/Performance.DtoModels/Request/AssessCategoryRequest.cs
+24
-0
performance/Performance.DtoModels/Request/AssessColumnRequest.cs
+40
-40
performance/Performance.DtoModels/Request/AssessDataRequest.cs
+31
-31
performance/Performance.DtoModels/Request/AssessRequest.cs
+42
-42
performance/Performance.DtoModels/Request/AssessSchemeEnterRequest.cs
+75
-0
performance/Performance.DtoModels/Request/AssessSchemeItemsRequest.cs
+95
-0
performance/Performance.DtoModels/Request/AssessSchemeRequest.cs
+30
-0
performance/Performance.DtoModels/Response/AssessSchemeDataResponse.cs
+336
-0
performance/Performance.DtoModels/Response/PerAssessmentStatisticsResponse.cs
+157
-0
performance/Performance.EntityModels/Context/PerformanceDbContext.cs
+19
-2
performance/Performance.EntityModels/Entity/per_assess_category.cs
+53
-0
performance/Performance.EntityModels/Entity/per_assess_issue_scheme.cs
+149
-0
performance/Performance.EntityModels/Entity/per_assess_scheme.cs
+61
-0
performance/Performance.EntityModels/Entity/per_assess_scheme_items.cs
+85
-0
performance/Performance.EntityModels/Entity/per_assess_scheme_target.cs
+65
-0
performance/Performance.EntityModels/Other/view_assess_issue.cs
+86
-0
performance/Performance.EntityModels/Other/view_assess_result.cs
+66
-0
performance/Performance.Infrastructure/Performance.Infrastructure.csproj
+2
-1
performance/Performance.Repository/PerforPerAllotRepository.cs
+69
-2
performance/Performance.Repository/Repository/PerfoPperAttendanceTypeRepository.cs
+2
-2
performance/Performance.Repository/Repository/PerforPerAssessCategoryRepository.cs
+19
-0
performance/Performance.Repository/Repository/PerforPerAssessIssueSchemeRepository.cs
+19
-0
performance/Performance.Repository/Repository/PerforPerAssessSchemeItemsRepository.cs
+19
-0
performance/Performance.Repository/Repository/PerforPerAssessSchemeRepository.cs
+19
-0
performance/Performance.Repository/Repository/PerforPerAssessSchemeTargetRepository.cs
+19
-0
performance/Performance.Services/AssessNewService.cs
+1175
-0
performance/Performance.Services/AssessService.cs
+356
-356
performance/Performance.Services/AttendanceService.cs
+0
-1
performance/Performance.Services/ConfigService.cs
+2
-1
performance/Performance.Services/CopyService.cs
+216
-4
performance/Performance.Services/DownloadService.cs
+1
-1
performance/Performance.Services/SecondAllotService.cs
+19
-0
No files found.
performance/Performance.Api/Controllers/AssessController.cs
View file @
a7bd8716
using
FluentValidation.AspNetCore
;
//using FluentValidation.AspNetCore;
using
Microsoft.AspNetCore.Mvc
;
//using Microsoft.AspNetCore.Mvc;
using
Performance.DtoModels
;
//using Performance.DtoModels;
using
Performance.Services
;
//using Performance.Services;
namespace
Performance.Api.Controllers
//namespace Performance.Api.Controllers
{
//{
[
Route
(
"api/[controller]"
)]
// [Route("api/[controller]")]
public
class
AssessController
:
Controller
// public class AssessController : Controller
{
// {
private
ClaimService
claimService
;
// private ClaimService claimService;
private
AssessService
assessService
;
// private AssessService assessService;
private
UserService
userService
;
// private UserService userService;
public
AssessController
(
ClaimService
claimService
,
// public AssessController(ClaimService claimService,
AssessService
assessService
,
UserService
userService
)
// AssessService assessService, UserService userService)
{
// {
this
.
claimService
=
claimService
;
// this.claimService = claimService;
this
.
assessService
=
assessService
;
// this.assessService = assessService;
this
.
userService
=
userService
;
// this.userService = userService;
}
// }
//考核类别列表
// //考核类别列表
[
HttpPost
]
// [HttpPost]
[
Route
(
"assesslist"
)]
// [Route("assesslist")]
public
ApiResponse
AssessList
([
CustomizeValidator
(
RuleSet
=
"List"
),
FromBody
]
AssessRequest
request
)
// public ApiResponse AssessList([CustomizeValidator(RuleSet = "List"), FromBody] AssessRequest request)
{
// {
return
assessService
.
AssessList
(
request
.
AllotID
);
// return assessService.AssessList(request.AllotID);
}
// }
//新增考核类别
// //新增考核类别
[
HttpPost
]
// [HttpPost]
[
Route
(
"addassess"
)]
// [Route("addassess")]
public
ApiResponse
AddAssess
([
CustomizeValidator
(
RuleSet
=
"Add"
),
FromBody
]
AssessRequest
request
)
// public ApiResponse AddAssess([CustomizeValidator(RuleSet = "Add"), FromBody] AssessRequest request)
{
// {
return
assessService
.
AddAssess
(
request
.
AllotID
,
request
.
AssessName
);
// return assessService.AddAssess(request.AllotID, request.AssessName);
}
// }
//修改考核类别
// //修改考核类别
[
HttpPost
]
// [HttpPost]
[
Route
(
"editassess"
)]
// [Route("editassess")]
public
ApiResponse
EditAssess
([
CustomizeValidator
(
RuleSet
=
"Update"
),
FromBody
]
AssessRequest
request
)
// public ApiResponse EditAssess([CustomizeValidator(RuleSet = "Update"), FromBody] AssessRequest request)
{
// {
return
assessService
.
EditAssess
(
request
.
AssessID
,
request
.
AssessName
);
// return assessService.EditAssess(request.AssessID, request.AssessName);
}
// }
//删除考核类别
// //删除考核类别
[
HttpPost
]
// [HttpPost]
[
Route
(
"delassess"
)]
// [Route("delassess")]
public
ApiResponse
DelAssess
([
CustomizeValidator
(
RuleSet
=
"Del"
),
FromBody
]
AssessRequest
request
)
// public ApiResponse DelAssess([CustomizeValidator(RuleSet = "Del"), FromBody] AssessRequest request)
{
// {
return
assessService
.
DelAssess
(
request
.
AssessID
);
// return assessService.DelAssess(request.AssessID);
}
// }
//获取所有科室列表
// //获取所有科室列表
[
HttpPost
]
// [HttpPost]
[
Route
(
"departmentlist"
)]
// [Route("departmentlist")]
public
ApiResponse
DepartmentList
([
CustomizeValidator
(
RuleSet
=
"Use"
),
FromBody
]
AssessRequest
request
)
// public ApiResponse DepartmentList([CustomizeValidator(RuleSet = "Use"), FromBody] AssessRequest request)
{
// {
var
department
=
assessService
.
Department
(
request
);
// var department = assessService.Department(request);
return
new
ApiResponse
(
ResponseType
.
OK
,
"ok"
,
department
);
// return new ApiResponse(ResponseType.OK, "ok", department);
}
// }
//设置科室考核分类
// //设置科室考核分类
[
HttpPost
]
// [HttpPost]
[
Route
(
"setassesstype"
)]
// [Route("setassesstype")]
public
ApiResponse
SetAssessType
([
FromBody
]
SetAssessRequest
request
)
// public ApiResponse SetAssessType([FromBody] SetAssessRequest request)
{
// {
return
assessService
.
SetAssessType
(
request
);
// return assessService.SetAssessType(request);
}
// }
//考核列头列表
// //考核列头列表
[
HttpPost
]
// [HttpPost]
[
Route
(
"columnlist"
)]
// [Route("columnlist")]
public
ApiResponse
ColumnList
([
CustomizeValidator
(
RuleSet
=
"List"
),
FromBody
]
AssessColumnRequest
request
)
// public ApiResponse ColumnList([CustomizeValidator(RuleSet = "List"), FromBody] AssessColumnRequest request)
{
// {
return
assessService
.
ColumnList
(
request
.
AssessID
);
// return assessService.ColumnList(request.AssessID);
}
// }
//新增考核项
// //新增考核项
[
HttpPost
]
// [HttpPost]
[
Route
(
"addcolumn"
)]
// [Route("addcolumn")]
public
ApiResponse
AddColumn
([
CustomizeValidator
(
RuleSet
=
"Add"
),
FromBody
]
AssessColumnRequest
request
)
// public ApiResponse AddColumn([CustomizeValidator(RuleSet = "Add"), FromBody] AssessColumnRequest request)
{
// {
return
assessService
.
AddColumn
(
request
.
AssessID
,
request
.
ParentID
,
request
.
ColumnName
,
request
.
Sort
);
// return assessService.AddColumn(request.AssessID, request.ParentID, request.ColumnName, request.Sort);
}
// }
//修改考核项
// //修改考核项
[
HttpPost
]
// [HttpPost]
[
Route
(
"editcolumn"
)]
// [Route("editcolumn")]
public
ApiResponse
EditColumn
([
CustomizeValidator
(
RuleSet
=
"Update"
),
FromBody
]
AssessColumnRequest
request
)
// public ApiResponse EditColumn([CustomizeValidator(RuleSet = "Update"), FromBody] AssessColumnRequest request)
{
// {
return
assessService
.
EditColumn
(
request
.
ColumnID
,
request
.
ColumnName
,
request
.
Sort
);
// return assessService.EditColumn(request.ColumnID, request.ColumnName, request.Sort);
}
// }
//删除考核项
// //删除考核项
[
HttpPost
]
// [HttpPost]
[
Route
(
"delcolumn"
)]
// [Route("delcolumn")]
public
ApiResponse
DelColumn
([
CustomizeValidator
(
RuleSet
=
"Del"
),
FromBody
]
AssessColumnRequest
request
)
// public ApiResponse DelColumn([CustomizeValidator(RuleSet = "Del"), FromBody] AssessColumnRequest request)
{
// {
return
assessService
.
DelColumn
(
request
.
ColumnID
);
// return assessService.DelColumn(request.ColumnID);
}
// }
//考核数据列表
// //考核数据列表
[
HttpPost
]
// [HttpPost]
[
Route
(
"datalist"
)]
// [Route("datalist")]
public
ApiResponse
DataList
([
CustomizeValidator
(
RuleSet
=
"List"
),
FromBody
]
AssessDataRequest
request
)
// public ApiResponse DataList([CustomizeValidator(RuleSet = "List"), FromBody] AssessDataRequest request)
{
// {
return
assessService
.
DataList
(
request
.
AssessID
);
// return assessService.DataList(request.AssessID);
}
// }
//考核数据修改
// //考核数据修改
[
HttpPost
]
// [HttpPost]
[
Route
(
"editassessdata"
)]
// [Route("editassessdata")]
public
ApiResponse
EditAssessData
([
CustomizeValidator
(
RuleSet
=
"Edit"
),
FromBody
]
AssessDataRequest
request
)
// public ApiResponse EditAssessData([CustomizeValidator(RuleSet = "Edit"), FromBody] AssessDataRequest request)
{
// {
return
assessService
.
EditAssessData
(
request
.
AssessRow
);
// return assessService.EditAssessData(request.AssessRow);
}
// }
//考核模版列表
// //考核模版列表
[
HttpPost
]
// [HttpPost]
[
Route
(
"tempassesslist"
)]
// [Route("tempassesslist")]
public
ApiResponse
TempAssessList
()
// public ApiResponse TempAssessList()
{
// {
return
assessService
.
TempAssessList
();
// return assessService.TempAssessList();
}
// }
//模板列头列表
// //模板列头列表
[
HttpPost
]
// [HttpPost]
[
Route
(
"tempcolumnlist"
)]
// [Route("tempcolumnlist")]
public
ApiResponse
TempColumnList
([
CustomizeValidator
(
RuleSet
=
"List"
),
FromBody
]
AssessColumnRequest
request
)
// public ApiResponse TempColumnList([CustomizeValidator(RuleSet = "List"), FromBody] AssessColumnRequest request)
{
// {
return
assessService
.
TempColumnList
(
request
.
AssessID
);
// return assessService.TempColumnList(request.AssessID);
}
// }
//使用考核模版
// //使用考核模版
[
HttpPost
]
// [HttpPost]
[
Route
(
"usetemplate"
)]
// [Route("usetemplate")]
public
ApiResponse
UseTemplate
([
CustomizeValidator
(
RuleSet
=
"Use"
),
FromBody
]
AssessRequest
request
)
// public ApiResponse UseTemplate([CustomizeValidator(RuleSet = "Use"), FromBody] AssessRequest request)
{
// {
return
assessService
.
UseTemplate
(
request
.
AllotID
,
request
.
AssessID
);
// return assessService.UseTemplate(request.AllotID, request.AssessID);
}
// }
}
// }
}
//}
\ No newline at end of file
\ No newline at end of file
performance/Performance.Api/Controllers/AssessNewController.cs
0 → 100644
View file @
a7bd8716
using
Masuit.Tools.Models
;
using
Microsoft.AspNetCore.Hosting
;
using
Microsoft.AspNetCore.Http
;
using
Microsoft.AspNetCore.Mvc
;
using
Microsoft.AspNetCore.StaticFiles
;
using
Newtonsoft.Json
;
using
Performance.DtoModels
;
using
Performance.DtoModels.Request
;
using
Performance.EntityModels
;
using
Performance.Infrastructure
;
using
Performance.Infrastructure.Models
;
using
Performance.Services
;
using
System
;
using
System.Collections.Generic
;
using
System.IO
;
using
System.Linq
;
using
System.Threading.Tasks
;
namespace
Performance.Api.Controllers
{
/// <summary>
/// 考核管理
/// </summary>
[
Route
(
"api/assess"
)]
public
class
AssessNewController
:
Controller
{
private
readonly
AssessNewService
_service
;
private
ClaimService
claim
;
public
AssessNewController
(
AssessNewService
service
,
ClaimService
claim
)
{
_service
=
service
;
this
.
claim
=
claim
;
}
#
region
考核类别
/// <summary>
/// 考核类别列表
/// </summary>
/// <param name="allotId"></param>
/// <returns></returns>
[
HttpPost
]
[
Route
(
"category/list"
)]
public
ApiResponse
<
List
<
per_assess_category
>>
CategoryList
([
FromQuery
]
int
allotId
)
{
return
_service
.
CategoryList
(
allotId
);
}
/// <summary>
/// 考核类别新增
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
[
HttpPost
]
[
Route
(
"category/add"
)]
public
ApiResponse
CategoryAdd
([
FromBody
]
AddAssessCategoryRequest
request
)
{
var
userid
=
claim
.
GetUserId
();
return
_service
.
CategoryAdd
(
request
,
userid
);
}
/// <summary>
/// 考核类别修改
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
[
HttpPost
]
[
Route
(
"category/update"
)]
public
ApiResponse
CategoryUpdate
([
FromBody
]
UpdateAssessCategoryRequest
request
)
{
var
userid
=
claim
.
GetUserId
();
return
_service
.
CategoryUpdate
(
request
,
userid
);
}
/// <summary>
/// 考核类别删除
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
[
HttpPost
]
[
Route
(
"category/delete"
)]
public
ApiResponse
CategoryDelete
([
FromBody
]
BatchAssessCategoryRequest
request
)
{
return
_service
.
CategoryDelete
(
request
);
}
/// <summary>
/// 考核下发(检查下发受影响的上报内容)
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
[
HttpPost
]
[
Route
(
"category/issue/check"
)]
public
ApiResponse
<
List
<
PerAssessmentStatisticsResponse
>>
CategoryIssueCheck
([
FromBody
]
UpdateAssessCategoryRequest
request
)
{
return
_service
.
CategoryIssueCheck
(
request
);
}
/// <summary>
/// 考核下发
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
[
HttpPost
]
[
Route
(
"category/issue/confirm"
)]
public
ApiResponse
CategoryIssueConfirm
([
FromBody
]
UpdateAssessCategoryRequest
request
)
{
var
userid
=
claim
.
GetUserId
();
return
_service
.
CategoryIssueConfirm
(
request
,
userid
);
}
#
endregion
#
region
考核方案
/// <summary>
/// 考核方案列表
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
[
HttpPost
]
[
Route
(
"scheme/list"
)]
[
ProducesResponseType
(
typeof
(
PagedList
<
AssessSchemeDataResponse
>),
StatusCodes
.
Status200OK
)]
public
ApiResponse
SchemeList
([
FromBody
]
QuerySchemeList
query
)
{
return
new
ApiResponse
(
ResponseType
.
OK
,
""
,
_service
.
SchemeList
(
query
));
}
/// <summary>
/// 考核方案新增
/// </summary>
/// <param name="request"></param>
/// <remarks>
/// 编码自动生成,不能修改
/// </remarks>
/// <returns></returns>
[
HttpPost
]
[
Route
(
"scheme/add"
)]
public
ApiResponse
SchemeAdd
([
FromBody
]
AddAssessSchemeRequest
request
)
{
var
userid
=
claim
.
GetUserId
();
return
_service
.
SchemeAdd
(
request
,
userid
);
}
/// <summary>
/// 考核方案修改
/// </summary>
/// <param name="request"></param>
/// <remarks>
/// 编码不能修改
/// </remarks>
/// <returns></returns>
[
HttpPost
]
[
Route
(
"scheme/update"
)]
public
ApiResponse
<
UpdateAssessSchemeRequest
>
SchemeUpdate
([
FromBody
]
UpdateAssessSchemeRequest
request
)
{
var
userid
=
claim
.
GetUserId
();
return
_service
.
SchemeUpdate
(
request
,
userid
);
}
/// <summary>
/// 考核方案删除
/// </summary>
/// <param name="request"></param>
/// <remarks>
/// 允许批量删除,删除时要检查有没有外表引用,提示一起删除
/// </remarks>
/// <returns></returns>
[
HttpPost
]
[
Route
(
"scheme/delete"
)]
public
ApiResponse
SchemeDelete
([
FromBody
]
BatchAssessSchemeRequest
request
)
{
return
_service
.
SchemeDelete
(
request
);
}
/// <summary>
/// 考核方案下载
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
[
HttpPost
]
[
Route
(
"scheme/download"
)]
[
Produces
(
"application/octet-stream"
,
Type
=
typeof
(
FileResult
))]
public
IActionResult
SchemeDownload
([
FromBody
]
AddAssessSchemeRequest
query
)
{
List
<
ExcelDownloadHeads
>
excelDownloadHeads
=
new
List
<
ExcelDownloadHeads
>()
{
new
ExcelDownloadHeads
{
Alias
=
"考核方案ID"
,
Name
=
nameof
(
RecordAssessScheme
.
SchemeCode
)
},
new
ExcelDownloadHeads
{
Alias
=
"考核方案名称"
,
Name
=
nameof
(
RecordAssessScheme
.
SchemeName
)
},
new
ExcelDownloadHeads
{
Alias
=
"考核方案类型"
,
Name
=
nameof
(
RecordAssessScheme
.
AssessName
)
},
new
ExcelDownloadHeads
{
Alias
=
"备注"
,
Name
=
nameof
(
RecordAssessScheme
.
SchemeRemarks
)
},
};
var
q
=
new
QuerySchemeList
{
Page
=
1
,
PageSize
=
int
.
MaxValue
,
AllotId
=
query
.
AllotId
,
CategoryId
=
query
.
CategoryId
,
SchemeName
=
query
.
SchemeName
,
};
var
result
=
_service
.
SchemeList
(
q
).
Data
;
var
ser
=
JsonConvert
.
SerializeObject
(
result
);
var
rows
=
JsonConvert
.
DeserializeObject
<
List
<
Dictionary
<
string
,
object
>>>(
ser
);
var
filepath
=
_service
.
ExcelDownload
(
rows
,
"考核方案"
,
excelDownloadHeads
);
var
memoryStream
=
new
MemoryStream
();
using
(
var
stream
=
new
FileStream
(
filepath
,
FileMode
.
Open
))
{
stream
.
CopyToAsync
(
memoryStream
).
Wait
();
}
memoryStream
.
Seek
(
0
,
SeekOrigin
.
Begin
);
var
provider
=
new
FileExtensionContentTypeProvider
();
FileInfo
fileInfo
=
new
FileInfo
(
filepath
);
var
memi
=
provider
.
Mappings
[
".xlsx"
];
return
File
(
memoryStream
,
memi
,
Path
.
GetFileName
(
fileInfo
.
Name
));
}
///// <summary>
///// 考核方案上传
///// </summary>
///// <param name="categoryId"></param>
///// <param name="form"></param>
///// <remarks>
///// 上传文件中的编码无效,不能修改,自动生成,按编码作为匹配依据,进行增删改
///// </remarks>
///// <returns></returns>
//[HttpPost]
//[Route("scheme/upload")]
//public ApiResponse SchemeUpload([FromQuery] int categoryId, [FromForm] IFormCollection form)
//{
// return _service.SchemeUpload(categoryId, form);
//}
#
endregion
#
region
考核指标
/// <summary>
/// 考核指标项列表
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
[
HttpPost
]
[
Route
(
"scheme/items/list"
)]
[
ProducesResponseType
(
typeof
(
PagedList
<
per_assess_scheme_items
>),
StatusCodes
.
Status200OK
)]
public
ApiResponse
SchemeItemsList
([
FromBody
]
QuerySchemeItemsList
query
)
{
return
new
ApiResponse
(
ResponseType
.
OK
,
""
,
_service
.
SchemeItemsList
(
query
));
}
/// <summary>
/// 考核指标项新增
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
[
HttpPost
]
[
Route
(
"scheme/items/add"
)]
public
ApiResponse
<
AddAssessSchemeItemsRequest
>
SchemeItemsAdd
([
FromBody
]
AddAssessSchemeItemsRequest
request
)
{
var
userid
=
claim
.
GetUserId
();
return
_service
.
SchemeItemsAdd
(
request
,
userid
);
}
/// <summary>
/// 考核指标项修改
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
[
HttpPost
]
[
Route
(
"scheme/items/update"
)]
public
ApiResponse
<
UpdateAssessSchemeItemsRequest
>
SchemeItemsUpdate
([
FromBody
]
UpdateAssessSchemeItemsRequest
request
)
{
var
userid
=
claim
.
GetUserId
();
return
_service
.
SchemeItemsUpdate
(
request
,
userid
);
}
/// <summary>
/// 考核指标项删除
/// </summary>
/// <param name="request"></param>
/// <remarks>
/// 允许批量删除,删除时要检查有没有外表引用,提示一起删除
/// </remarks>
/// <returns></returns>
[
HttpPost
]
[
Route
(
"scheme/items/delete"
)]
public
ApiResponse
SchemeItemsDelete
([
FromBody
]
BatchAssessSchemeItemsRequest
request
)
{
return
_service
.
SchemeItemsDelete
(
request
);
}
/// <summary>
/// 考核指标项下载
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
[
HttpPost
]
[
Route
(
"scheme/items/download"
)]
[
Produces
(
"application/octet-stream"
,
Type
=
typeof
(
FileResult
))]
public
IActionResult
SchemeItemsDownload
([
FromBody
]
QuerySchemeItemsList
query
)
{
List
<
ExcelDownloadHeads
>
excelDownloadHeads
=
new
List
<
ExcelDownloadHeads
>()
{
new
ExcelDownloadHeads
{
Alias
=
"考核指标编码"
,
Name
=
nameof
(
per_assess_scheme_items
.
ItemCode
)
},
new
ExcelDownloadHeads
{
Alias
=
"一级指标名称"
,
Name
=
nameof
(
per_assess_scheme_items
.
ItemName1
)
},
new
ExcelDownloadHeads
{
Alias
=
"二级指标名称"
,
Name
=
nameof
(
per_assess_scheme_items
.
ItemName2
)
},
new
ExcelDownloadHeads
{
Alias
=
"考核分值"
,
Name
=
nameof
(
per_assess_scheme_items
.
AssessScore
)
},
new
ExcelDownloadHeads
{
Alias
=
"考核标准"
,
Name
=
nameof
(
per_assess_scheme_items
.
AssessNorm
)
},
new
ExcelDownloadHeads
{
Alias
=
"考核单元组别"
,
Name
=
nameof
(
per_assess_scheme_items
.
UnitType
)
},
new
ExcelDownloadHeads
{
Alias
=
"考核单元名称"
,
Name
=
nameof
(
per_assess_scheme_items
.
AccountingUnit
)
},
};
query
.
Page
=
1
;
query
.
PageSize
=
int
.
MaxValue
;
var
result
=
_service
.
SchemeItemsList
(
query
).
Data
;
var
ser
=
JsonConvert
.
SerializeObject
(
result
);
var
rows
=
JsonConvert
.
DeserializeObject
<
List
<
Dictionary
<
string
,
object
>>>(
ser
);
var
filepath
=
_service
.
ExcelDownload
(
rows
,
"考核指标项"
,
excelDownloadHeads
);
var
memoryStream
=
new
MemoryStream
();
using
(
var
stream
=
new
FileStream
(
filepath
,
FileMode
.
Open
))
{
stream
.
CopyToAsync
(
memoryStream
).
Wait
();
}
memoryStream
.
Seek
(
0
,
SeekOrigin
.
Begin
);
var
provider
=
new
FileExtensionContentTypeProvider
();
FileInfo
fileInfo
=
new
FileInfo
(
filepath
);
var
memi
=
provider
.
Mappings
[
".xlsx"
];
return
File
(
memoryStream
,
memi
,
Path
.
GetFileName
(
fileInfo
.
Name
));
}
/// <summary>
/// 考核指标项上传
/// </summary>
/// <param name="schemeId"></param>
/// <param name="allotId"></param>
/// <param name="form"></param>
/// <returns></returns>
[
HttpPost
]
[
Route
(
"scheme/items/upload"
)]
public
ApiResponse
SchemeItemsUpload
([
FromQuery
]
int
schemeId
,
int
allotId
,
[
FromForm
]
IFormCollection
form
)
{
var
userid
=
claim
.
GetUserId
();
return
_service
.
SchemeItemsUpload
(
schemeId
,
allotId
,
form
,
userid
);
}
/// <summary>
/// 考核对象核算单元列表清单
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
[
HttpPost
]
[
Route
(
"scheme/items/target/list"
)]
[
ProducesResponseType
(
typeof
(
PagedList
<
AssessSchemeTargetResponse
>),
StatusCodes
.
Status200OK
)]
public
ApiResponse
SchemeItemsTargetList
([
FromBody
]
QuerySchemeItemsTargetList
query
)
{
return
new
ApiResponse
(
ResponseType
.
OK
,
""
,
_service
.
SchemeItemsTargetList
(
query
));
}
/// <summary>
/// 考核对象核算单元保存
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
[
HttpPost
]
[
Route
(
"scheme/items/target/save"
)]
public
ApiResponse
SchemeItemsTargetSave
([
FromBody
]
TargetAssessSchemeItemsRequest
request
)
{
var
userid
=
claim
.
GetUserId
();
return
_service
.
SchemeItemsTargetSave
(
request
,
userid
);
}
/// <summary>
/// 考核对象核算单元修改
/// </summary>
/// <param name="edit"></param>
/// <returns></returns>
[
HttpPost
]
[
Route
(
"scheme/items/target/edit"
)]
public
ApiResponse
SchemeItemsTargetEdit
([
FromBody
]
TargetSchemeItemsTargetEdit
edit
)
{
var
userid
=
claim
.
GetUserId
();
return
_service
.
SchemeItemsTargetEdit
(
edit
,
userid
);
}
/// <summary>
/// 考核对象核算单元删除
/// </summary>
/// <param name="delete"></param>
/// <returns></returns>
[
HttpPost
]
[
Route
(
"scheme/items/target/delete"
)]
public
ApiResponse
SchemeItemsTargetDelete
([
FromBody
]
TargetSchemeItemsTargetDelete
delete
)
{
return
_service
.
SchemeItemsTargetDelete
(
delete
);
}
#
endregion
#
region
核算单元上报考核结果
/// <summary>
/// 考核结果列表
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
[
HttpPost
]
[
Route
(
"scheme/result/list"
)]
[
ProducesResponseType
(
typeof
(
PagedList
<
AssessSchemeResultListResponse
>),
StatusCodes
.
Status200OK
)]
public
ApiResponse
SchemeResultList
([
FromBody
]
QuerySchemeResultList
query
)
{
return
new
ApiResponse
(
ResponseType
.
OK
,
""
,
_service
.
SchemeResultList
(
query
));
}
/// <summary>
/// 考核结果下载
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
[
HttpPost
]
[
Route
(
"scheme/result/download"
)]
public
IActionResult
SchemeEnterDownload
([
FromBody
]
QuerySchemeResultList
query
)
{
List
<
ExcelDownloadHeads
>
excelDownloadHeads
=
new
List
<
ExcelDownloadHeads
>()
{
new
ExcelDownloadHeads
{
Alias
=
"核算组别"
,
Name
=
nameof
(
AssessSchemeResultListResponse
.
TargetUnitType
)
},
new
ExcelDownloadHeads
{
Alias
=
"核算单元名称"
,
Name
=
nameof
(
AssessSchemeResultListResponse
.
TargetAccountingUnit
)
},
};
query
.
Page
=
1
;
query
.
PageSize
=
int
.
MaxValue
;
var
result
=
_service
.
SchemeResultList
(
query
).
Data
;
foreach
(
var
item
in
result
.
SelectMany
(
w
=>
w
.
DictionaryResults
).
Select
(
w
=>
w
.
Title
).
Distinct
())
{
excelDownloadHeads
.
Add
(
new
ExcelDownloadHeads
()
{
Alias
=
item
,
Name
=
item
});
}
excelDownloadHeads
.
Add
(
new
ExcelDownloadHeads
()
{
Alias
=
"合计"
,
Name
=
"TotalAssessScore"
});
var
ser
=
JsonConvert
.
SerializeObject
(
result
);
var
rows
=
JsonConvert
.
DeserializeObject
<
List
<
Dictionary
<
string
,
object
>>>(
ser
);
var
filepath
=
_service
.
ExcelDownload
(
rows
,
"考核结果"
,
excelDownloadHeads
);
var
memoryStream
=
new
MemoryStream
();
using
(
var
stream
=
new
FileStream
(
filepath
,
FileMode
.
Open
))
{
stream
.
CopyToAsync
(
memoryStream
).
Wait
();
}
memoryStream
.
Seek
(
0
,
SeekOrigin
.
Begin
);
var
provider
=
new
FileExtensionContentTypeProvider
();
FileInfo
fileInfo
=
new
FileInfo
(
filepath
);
var
memi
=
provider
.
Mappings
[
".xlsx"
];
return
File
(
memoryStream
,
memi
,
Path
.
GetFileName
(
fileInfo
.
Name
));
}
/// <summary>
/// 核算单元上报考核列表
/// </summary>
/// <param name="allotId"></param>
/// <returns></returns>
[
HttpPost
]
[
Route
(
"scheme/enter/list"
)]
public
ApiResponse
<
List
<
AssessSchemeEnterListResponse
>>
SchemeEnterList
([
FromQuery
]
int
allotId
)
{
var
userid
=
claim
.
GetUserId
();
return
_service
.
SchemeEnterList
(
allotId
,
userid
);
}
/// <summary>
/// 核算单元上报考核指标项清单
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
[
HttpPost
]
[
Route
(
"scheme/enter/detail/list"
)]
[
ProducesResponseType
(
typeof
(
PagedList
<
AssessSchemeEnterDetaiListResponse
>),
StatusCodes
.
Status200OK
)]
public
ApiResponse
SchemeEnterDetailList
([
FromBody
]
QuerySchemeEnterDetailList
query
)
{
return
new
ApiResponse
(
ResponseType
.
OK
,
""
,
_service
.
SchemeEnterDetailList
(
query
));
}
/// <summary>
/// 核算单元上报考核指标项修改
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
[
HttpPost
]
[
Route
(
"scheme/enter/detail/edit"
)]
public
ApiResponse
SchemeEnterEdit
([
FromBody
]
EditAssessSchemeEnterRequest
request
)
{
var
userid
=
claim
.
GetUserId
();
return
_service
.
SchemeEnterEdit
(
request
,
userid
);
}
///// <summary>
///// 核算单元上报考核结果确认前检查
///// </summary>
///// <param name="issueId"></param>
///// <remarks>
///// 编辑:真实用途只是保存数据
///// 确认:数据编辑完成了,需要确认下,确认类似于确认无误,没有实际意义
///// 提交:数据必须全部确认完成才能提交
///// 需要检查确认的考核指标项中,有没有没有填写的数据
///// </remarks>
///// <returns></returns>
//[HttpPost]
//[Route("scheme/enter/detail/check")]
//public ApiResponse SchemeEnterCheck([FromQuery] int schemeId, int issueId)
//{
// //return _service.SchemeEnterCheck(schemeId, issueId);
// throw new NotImplementedException();
//}
///// <summary>
///// 核算单元上报考核结果确认
///// </summary>
///// <param name="issueId"></param>
///// <remarks>
///// 编辑:真实用途只是保存数据
///// 确认:数据编辑完成了,需要确认下,确认类似于确认无误,没有实际意义
///// 提交:数据必须全部确认完成才能提交
///// </remarks>
///// <returns></returns>
//[HttpPost]
//[Route("scheme/enter/detail/confirm")]
//public IActionResult SchemeEnterConfirm([FromQuery] int issueId)
//{
// throw new NotImplementedException();
//}
/// <summary>
/// 核算单元上报考核结果提交
/// </summary>
/// <param name="allotId"></param>
/// <param name="itemId"></param>
/// <returns></returns>
/// <exception cref="NotImplementedException"></exception>
[
HttpPost
]
[
Route
(
"scheme/enter/submit"
)]
public
ApiResponse
SchemeEnterSubmit
([
FromQuery
]
int
allotId
,
int
itemId
)
{
var
userid
=
claim
.
GetUserId
();
return
_service
.
SchemeEnterSubmit
(
allotId
,
itemId
,
userid
);
}
/// <summary>
/// 核算单元上报考核结果审核
/// </summary>
/// <param name="audit"></param>
/// <returns></returns>
[
HttpPost
]
[
Route
(
"scheme/enter/audit"
)]
public
ApiResponse
SchemeEnterAudit
([
FromBody
]
EditSchemeEnterAudit
audit
)
{
var
realName
=
claim
.
GetUserClaim
(
JwtClaimTypes
.
RealName
);
return
_service
.
SchemeEnterAudit
(
audit
,
realName
);
}
/// <summary>
/// 核算单元上报考核指标项下载
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
[
HttpPost
]
[
Route
(
"scheme/enter/download"
)]
public
IActionResult
SchemeEnterDownload
([
FromBody
]
QuerySchemeEnterDetailList
query
)
{
List
<
ExcelDownloadHeads
>
excelDownloadHeads
=
new
List
<
ExcelDownloadHeads
>()
{
new
ExcelDownloadHeads
{
Alias
=
"核算组别"
,
Name
=
nameof
(
AssessSchemeEnterDetaiListResponse
.
TargetUnitType
)
},
new
ExcelDownloadHeads
{
Alias
=
"核算单元名称"
,
Name
=
nameof
(
AssessSchemeEnterDetaiListResponse
.
TargetAccountingUnit
)
},
new
ExcelDownloadHeads
{
Alias
=
"一级指标名称"
,
Name
=
nameof
(
AssessSchemeEnterDetaiListResponse
.
ItemName1
)
},
new
ExcelDownloadHeads
{
Alias
=
"考核项目"
,
Name
=
nameof
(
AssessSchemeEnterDetaiListResponse
.
ItemName2
)
},
new
ExcelDownloadHeads
{
Alias
=
"考核标准"
,
Name
=
nameof
(
AssessSchemeEnterDetaiListResponse
.
AssessNorm
)
},
new
ExcelDownloadHeads
{
Alias
=
"考核分值"
,
Name
=
nameof
(
AssessSchemeEnterDetaiListResponse
.
AssessScore
)
},
new
ExcelDownloadHeads
{
Alias
=
"考核扣分"
,
Name
=
nameof
(
AssessSchemeEnterDetaiListResponse
.
Score
)
},
new
ExcelDownloadHeads
{
Alias
=
"扣分原因"
,
Name
=
nameof
(
AssessSchemeEnterDetaiListResponse
.
ScoreRemark
)
},
};
query
.
Page
=
1
;
query
.
PageSize
=
int
.
MaxValue
;
var
result
=
_service
.
SchemeEnterDetailList
(
query
).
Data
;
var
ser
=
JsonConvert
.
SerializeObject
(
result
);
var
rows
=
JsonConvert
.
DeserializeObject
<
List
<
Dictionary
<
string
,
object
>>>(
ser
);
var
filepath
=
_service
.
ExcelDownload
(
rows
,
"考核详情"
,
excelDownloadHeads
);
var
memoryStream
=
new
MemoryStream
();
using
(
var
stream
=
new
FileStream
(
filepath
,
FileMode
.
Open
))
{
stream
.
CopyToAsync
(
memoryStream
).
Wait
();
}
memoryStream
.
Seek
(
0
,
SeekOrigin
.
Begin
);
var
provider
=
new
FileExtensionContentTypeProvider
();
FileInfo
fileInfo
=
new
FileInfo
(
filepath
);
var
memi
=
provider
.
Mappings
[
".xlsx"
];
return
File
(
memoryStream
,
memi
,
Path
.
GetFileName
(
fileInfo
.
Name
));
}
/// <summary>
/// 核算单元上报考核指标项上传
/// </summary>
/// <param name="itemId"></param>
/// <param name="form"></param>
/// <remarks>
/// 上传文件中只有考核扣分、扣分原因有效,其他只做展示不参与修改操作
/// </remarks>
/// <returns></returns>
[
HttpPost
]
[
Route
(
"scheme/enter/upload"
)]
public
ApiResponse
SchemeEnterUpload
([
FromQuery
]
int
itemId
,
[
FromForm
]
IFormCollection
form
)
{
var
userid
=
claim
.
GetUserId
();
return
_service
.
SchemeEnterUpload
(
itemId
,
form
,
userid
);
}
#
endregion
}
}
\ No newline at end of file
performance/Performance.Api/Controllers/ConfigController.cs
View file @
a7bd8716
...
@@ -902,6 +902,7 @@ public ApiResponse CopyDropDown()
...
@@ -902,6 +902,7 @@ public ApiResponse CopyDropDown()
new
CopyDrop
{
Label
=
"支出费用类别"
,
Value
=
"drugTypeDisburses"
},
new
CopyDrop
{
Label
=
"支出费用类别"
,
Value
=
"drugTypeDisburses"
},
new
CopyDrop
{
Label
=
"费用类别系数"
,
Value
=
"drugTypeFactors"
},
new
CopyDrop
{
Label
=
"费用类别系数"
,
Value
=
"drugTypeFactors"
},
new
CopyDrop
{
Label
=
"考勤类型"
,
Value
=
"attendanceType"
},
new
CopyDrop
{
Label
=
"考勤类型"
,
Value
=
"attendanceType"
},
new
CopyDrop
{
Label
=
"绩效考核"
,
Value
=
"assessType"
},
//new CopyDrop{Label="科室类型",Value="deptTypes"},
//new CopyDrop{Label="科室类型",Value="deptTypes"},
new
CopyDrop
{
Label
=
"二次绩效配置"
,
Value
=
"agains"
},
new
CopyDrop
{
Label
=
"二次绩效配置"
,
Value
=
"agains"
},
};
};
...
...
performance/Performance.Api/wwwroot/Performance.Api.xml
View file @
a7bd8716
...
@@ -302,6 +302,241 @@
...
@@ -302,6 +302,241 @@
记录创建、下发、归档、上传绩效
记录创建、下发、归档、上传绩效
</summary>
</summary>
</member>
</member>
<member
name=
"T:Performance.Api.Controllers.AssessNewController"
>
<summary>
考核管理
</summary>
</member>
<member
name=
"M:Performance.Api.Controllers.AssessNewController.CategoryList(System.Int32)"
>
<summary>
考核类别列表
</summary>
<param
name=
"allotId"
></param>
<returns></returns>
</member>
<member
name=
"M:Performance.Api.Controllers.AssessNewController.CategoryAdd(Performance.DtoModels.Request.AddAssessCategoryRequest)"
>
<summary>
考核类别新增
</summary>
<param
name=
"request"
></param>
<returns></returns>
</member>
<member
name=
"M:Performance.Api.Controllers.AssessNewController.CategoryUpdate(Performance.DtoModels.Request.UpdateAssessCategoryRequest)"
>
<summary>
考核类别修改
</summary>
<param
name=
"request"
></param>
<returns></returns>
</member>
<member
name=
"M:Performance.Api.Controllers.AssessNewController.CategoryDelete(Performance.DtoModels.Request.BatchAssessCategoryRequest)"
>
<summary>
考核类别删除
</summary>
<param
name=
"request"
></param>
<returns></returns>
</member>
<member
name=
"M:Performance.Api.Controllers.AssessNewController.CategoryIssueCheck(Performance.DtoModels.Request.UpdateAssessCategoryRequest)"
>
<summary>
考核下发(检查下发受影响的上报内容)
</summary>
<param
name=
"request"
></param>
<returns></returns>
</member>
<member
name=
"M:Performance.Api.Controllers.AssessNewController.CategoryIssueConfirm(Performance.DtoModels.Request.UpdateAssessCategoryRequest)"
>
<summary>
考核下发
</summary>
<param
name=
"request"
></param>
<returns></returns>
</member>
<member
name=
"M:Performance.Api.Controllers.AssessNewController.SchemeList(Performance.DtoModels.Request.QuerySchemeList)"
>
<summary>
考核方案列表
</summary>
<param
name=
"query"
></param>
<returns></returns>
</member>
<member
name=
"M:Performance.Api.Controllers.AssessNewController.SchemeAdd(Performance.DtoModels.Request.AddAssessSchemeRequest)"
>
<summary>
考核方案新增
</summary>
<param
name=
"request"
></param>
<remarks>
编码自动生成,不能修改
</remarks>
<returns></returns>
</member>
<member
name=
"M:Performance.Api.Controllers.AssessNewController.SchemeUpdate(Performance.DtoModels.Request.UpdateAssessSchemeRequest)"
>
<summary>
考核方案修改
</summary>
<param
name=
"request"
></param>
<remarks>
编码不能修改
</remarks>
<returns></returns>
</member>
<member
name=
"M:Performance.Api.Controllers.AssessNewController.SchemeDelete(Performance.DtoModels.Request.BatchAssessSchemeRequest)"
>
<summary>
考核方案删除
</summary>
<param
name=
"request"
></param>
<remarks>
允许批量删除,删除时要检查有没有外表引用,提示一起删除
</remarks>
<returns></returns>
</member>
<member
name=
"M:Performance.Api.Controllers.AssessNewController.SchemeDownload(Performance.DtoModels.Request.AddAssessSchemeRequest)"
>
<summary>
考核方案下载
</summary>
<param
name=
"query"
></param>
<returns></returns>
</member>
<member
name=
"M:Performance.Api.Controllers.AssessNewController.SchemeItemsList(Performance.DtoModels.Request.QuerySchemeItemsList)"
>
<summary>
考核指标项列表
</summary>
<param
name=
"query"
></param>
<returns></returns>
</member>
<member
name=
"M:Performance.Api.Controllers.AssessNewController.SchemeItemsAdd(Performance.DtoModels.Request.AddAssessSchemeItemsRequest)"
>
<summary>
考核指标项新增
</summary>
<param
name=
"request"
></param>
<returns></returns>
</member>
<member
name=
"M:Performance.Api.Controllers.AssessNewController.SchemeItemsUpdate(Performance.DtoModels.Request.UpdateAssessSchemeItemsRequest)"
>
<summary>
考核指标项修改
</summary>
<param
name=
"request"
></param>
<returns></returns>
</member>
<member
name=
"M:Performance.Api.Controllers.AssessNewController.SchemeItemsDelete(Performance.DtoModels.Request.BatchAssessSchemeItemsRequest)"
>
<summary>
考核指标项删除
</summary>
<param
name=
"request"
></param>
<remarks>
允许批量删除,删除时要检查有没有外表引用,提示一起删除
</remarks>
<returns></returns>
</member>
<member
name=
"M:Performance.Api.Controllers.AssessNewController.SchemeItemsDownload(Performance.DtoModels.Request.QuerySchemeItemsList)"
>
<summary>
考核指标项下载
</summary>
<param
name=
"query"
></param>
<returns></returns>
</member>
<member
name=
"M:Performance.Api.Controllers.AssessNewController.SchemeItemsUpload(System.Int32,System.Int32,Microsoft.AspNetCore.Http.IFormCollection)"
>
<summary>
考核指标项上传
</summary>
<param
name=
"schemeId"
></param>
<param
name=
"allotId"
></param>
<param
name=
"form"
></param>
<returns></returns>
</member>
<member
name=
"M:Performance.Api.Controllers.AssessNewController.SchemeItemsTargetList(Performance.DtoModels.Request.QuerySchemeItemsTargetList)"
>
<summary>
考核对象核算单元列表清单
</summary>
<param
name=
"query"
></param>
<returns></returns>
</member>
<member
name=
"M:Performance.Api.Controllers.AssessNewController.SchemeItemsTargetSave(Performance.DtoModels.Request.TargetAssessSchemeItemsRequest)"
>
<summary>
考核对象核算单元保存
</summary>
<param
name=
"request"
></param>
<returns></returns>
</member>
<member
name=
"M:Performance.Api.Controllers.AssessNewController.SchemeItemsTargetEdit(Performance.DtoModels.Request.TargetSchemeItemsTargetEdit)"
>
<summary>
考核对象核算单元修改
</summary>
<param
name=
"edit"
></param>
<returns></returns>
</member>
<member
name=
"M:Performance.Api.Controllers.AssessNewController.SchemeItemsTargetDelete(Performance.DtoModels.Request.TargetSchemeItemsTargetDelete)"
>
<summary>
考核对象核算单元删除
</summary>
<param
name=
"delete"
></param>
<returns></returns>
</member>
<member
name=
"M:Performance.Api.Controllers.AssessNewController.SchemeResultList(Performance.DtoModels.Request.QuerySchemeResultList)"
>
<summary>
考核结果列表
</summary>
<param
name=
"query"
></param>
<returns></returns>
</member>
<member
name=
"M:Performance.Api.Controllers.AssessNewController.SchemeEnterDownload(Performance.DtoModels.Request.QuerySchemeResultList)"
>
<summary>
考核结果下载
</summary>
<param
name=
"query"
></param>
<returns></returns>
</member>
<member
name=
"M:Performance.Api.Controllers.AssessNewController.SchemeEnterList(System.Int32)"
>
<summary>
核算单元上报考核列表
</summary>
<param
name=
"allotId"
></param>
<returns></returns>
</member>
<member
name=
"M:Performance.Api.Controllers.AssessNewController.SchemeEnterDetailList(Performance.DtoModels.Request.QuerySchemeEnterDetailList)"
>
<summary>
核算单元上报考核指标项清单
</summary>
<param
name=
"query"
></param>
<returns></returns>
</member>
<member
name=
"M:Performance.Api.Controllers.AssessNewController.SchemeEnterEdit(Performance.DtoModels.Request.EditAssessSchemeEnterRequest)"
>
<summary>
核算单元上报考核指标项修改
</summary>
<param
name=
"request"
></param>
<returns></returns>
</member>
<member
name=
"M:Performance.Api.Controllers.AssessNewController.SchemeEnterSubmit(System.Int32,System.Int32)"
>
<summary>
核算单元上报考核结果提交
</summary>
<param
name=
"allotId"
></param>
<param
name=
"itemId"
></param>
<returns></returns>
<exception
cref=
"T:System.NotImplementedException"
></exception>
</member>
<member
name=
"M:Performance.Api.Controllers.AssessNewController.SchemeEnterAudit(Performance.DtoModels.Request.EditSchemeEnterAudit)"
>
<summary>
核算单元上报考核结果审核
</summary>
<param
name=
"audit"
></param>
<returns></returns>
</member>
<member
name=
"M:Performance.Api.Controllers.AssessNewController.SchemeEnterDownload(Performance.DtoModels.Request.QuerySchemeEnterDetailList)"
>
<summary>
核算单元上报考核指标项下载
</summary>
<param
name=
"query"
></param>
<returns></returns>
</member>
<member
name=
"M:Performance.Api.Controllers.AssessNewController.SchemeEnterUpload(System.Int32,Microsoft.AspNetCore.Http.IFormCollection)"
>
<summary>
核算单元上报考核指标项上传
</summary>
<param
name=
"itemId"
></param>
<param
name=
"form"
></param>
<remarks>
上传文件中只有考核扣分、扣分原因有效,其他只做展示不参与修改操作
</remarks>
<returns></returns>
</member>
<member
name=
"M:Performance.Api.Controllers.AttendanceController.GetCallIn(System.Int32)"
>
<member
name=
"M:Performance.Api.Controllers.AttendanceController.GetCallIn(System.Int32)"
>
<summary>
<summary>
查询绩效调动记录
查询绩效调动记录
...
...
performance/Performance.Api/wwwroot/Performance.DtoModels.xml
View file @
a7bd8716
...
@@ -2100,6 +2100,92 @@
...
@@ -2100,6 +2100,92 @@
<member
name=
"P:Performance.DtoModels.AprAmountMarkRequest.TypeInDepartments"
>
<member
name=
"P:Performance.DtoModels.AprAmountMarkRequest.TypeInDepartments"
>
<summary>
需要审计的科室,支持多个科室一起审计
</summary>
<summary>
需要审计的科室,支持多个科室一起审计
</summary>
</member>
</member>
<member
name=
"P:Performance.DtoModels.Request.QuerySchemeEnterDetailList.TargetUnitType"
>
<summary>
考核目标核算组别
</summary>
</member>
<member
name=
"P:Performance.DtoModels.Request.QuerySchemeEnterDetailList.TargetAccountingUnit"
>
<summary>
考核目标核算单元
</summary>
</member>
<member
name=
"P:Performance.DtoModels.Request.QuerySchemeEnterDetailList.State"
>
<summary>
操作类型 未提交 = 1,待审核 = 2,审核通过 = 3,驳回 = 4,
</summary>
</member>
<member
name=
"P:Performance.DtoModels.Request.QuerySchemeEnterDetailList.ItemName2"
>
<summary>
二级指标名称
</summary>
</member>
<member
name=
"P:Performance.DtoModels.Request.EditSchemeEnterAudit.State"
>
<summary>
操作类型 未提交 = 1,待审核 = 2,审核通过 = 3,驳回 = 4,
</summary>
</member>
<member
name=
"P:Performance.DtoModels.Request.EditSchemeEnterAudit.AuditRemark"
>
<summary>
审核或驳回原因
</summary>
</member>
<member
name=
"P:Performance.DtoModels.Request.EditAssessSchemeEnterRequest.Score"
>
<summary>
考核扣分
</summary>
</member>
<member
name=
"P:Performance.DtoModels.Request.EditAssessSchemeEnterRequest.ScoreRemark"
>
<summary>
扣分原因
</summary>
</member>
<member
name=
"P:Performance.DtoModels.Request.AddAssessSchemeItemsRequest.SchemeId"
>
<summary>
方案ID
</summary>
</member>
<member
name=
"P:Performance.DtoModels.Request.AddAssessSchemeItemsRequest.ItemName1"
>
<summary>
一级指标名称
</summary>
</member>
<member
name=
"P:Performance.DtoModels.Request.AddAssessSchemeItemsRequest.ItemName2"
>
<summary>
二级指标名称
</summary>
</member>
<member
name=
"P:Performance.DtoModels.Request.AddAssessSchemeItemsRequest.AssessScore"
>
<summary>
考核分值
</summary>
</member>
<member
name=
"P:Performance.DtoModels.Request.AddAssessSchemeItemsRequest.AssessNorm"
>
<summary>
考核标准
</summary>
</member>
<!-- Badly formed XML comment ignored for member "P:Performance.DtoModels.Request.AddAssessSchemeItemsRequest.UnitType" -->
<member
name=
"P:Performance.DtoModels.Request.AddAssessSchemeItemsRequest.AccountingUnit"
>
<summary>
责任部门核算单元
</summary>
</member>
<member
name=
"P:Performance.DtoModels.Request.QuerySchemeItemsList.UnitType"
>
<summary>
核算组别
</summary>
</member>
<member
name=
"P:Performance.DtoModels.Request.QuerySchemeItemsList.AccountingUnit"
>
<summary>
核算单元
</summary>
</member>
<member
name=
"P:Performance.DtoModels.Request.QuerySchemeItemsList.ItemName2"
>
<summary>
二级指标名称
</summary>
</member>
<member
name=
"P:Performance.DtoModels.Request.AttendanceDeptAudit.State"
>
<member
name=
"P:Performance.DtoModels.Request.AttendanceDeptAudit.State"
>
<summary>
<summary>
状态(通过 = 3,驳回 = 4)
状态(通过 = 3,驳回 = 4)
...
@@ -2993,6 +3079,376 @@
...
@@ -2993,6 +3079,376 @@
科室
科室
</summary>
</summary>
</member>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeDataResponse.Id"
>
<summary>
考核方案ID
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeDataResponse.AllotId"
>
<summary>
绩效ID
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeDataResponse.AssessId"
>
<summary>
考核类型ID
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeDataResponse.AssessCode"
>
<summary>
考核类型编码
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeDataResponse.AssessName"
>
<summary>
考核类别名称
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeDataResponse.SchemeCode"
>
<summary>
考核方案编码
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeDataResponse.SchemeName"
>
<summary>
考核方案名称
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeDataResponse.SchemeRemarks"
>
<summary>
考核方案备注
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeDataResponse.CreateBy"
>
<summary>
创建人
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeDataResponse.CreateTime"
>
<summary>
创建时间
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeDataResponse.UpdateBy"
>
<summary>
最后修改人
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeDataResponse.UpdateTime"
>
<summary>
修改时间
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeTargetResponse.TargetId"
>
<summary>
目标Id
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeTargetResponse.Code"
>
<summary>
核算单元编码
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeTargetResponse.UnitType"
>
<summary>
核算组别
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeTargetResponse.AccountingUnit"
>
<summary>
核算单元
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeTargetResponse.SchemeName"
>
<summary>
已设置方案
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeTargetResponse.SchemeState"
>
<summary>
状态 全部 = 0, 已设置其他方案= 1,未设置方案=2,已设置方案(不可勾选) = 3,
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeTargetResponse.CreateBy"
>
<summary>
创建人
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeTargetResponse.CreateTime"
>
<summary>
创建时间
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeTargetResponse.UpdateBy"
>
<summary>
最后修改人
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeTargetResponse.UpdateTime"
>
<summary>
修改时间
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeResultListResponse.TargetUnitType"
>
<summary>
考核目标核算组别
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeResultListResponse.TargetAccountingUnit"
>
<summary>
考核目标核算单元
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeResultListResponse.ItemName2"
>
<summary>
二级指标名称
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeResultListResponse.TotalAssessScore"
>
<summary>
合计
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeEnterListResponse.UnitType"
>
<summary>
核算组别
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeEnterListResponse.AccountingUnit"
>
<summary>
核算单元
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeEnterListResponse.AssessId"
>
<summary>
考核类型ID
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeEnterListResponse.AssessCode"
>
<summary>
考核类型编码
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeEnterListResponse.AssessName"
>
<summary>
考核类型
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeEnterListResponse.ItemId"
>
<summary>
考核指标Id
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeEnterListResponse.ItemCode"
>
<summary>
考核指标编码
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeEnterListResponse.ItemName2"
>
<summary>
二级指标名称
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeEnterListResponse.State"
>
<summary>
状态
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeEnterListResponse.SubmitTime"
>
<summary>
提交时间
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeEnterListResponse.AuditBy"
>
<summary>
审核人
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeEnterListResponse.AuditTime"
>
<summary>
审核时间
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeEnterListResponse.Count"
>
<summary>
总下发数
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeEnterListResponse.ConfirmCount"
>
<summary>
确认数
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeEnterListResponse.RejectCount"
>
<summary>
驳回数
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeEnterListResponse.AwaitCount"
>
<summary>
待审核数
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeEnterListResponse.AuditRemark"
>
<summary>
审核或驳回原因
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeEnterListResponse.AssessNorm"
>
<summary>
考核标准
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeEnterDetaiListResponse.TargetUnitType"
>
<summary>
考核目标核算组别
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeEnterDetaiListResponse.TargetAccountingUnit"
>
<summary>
考核目标核算单元
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeEnterDetaiListResponse.Id"
>
<summary>
下发Id
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeEnterDetaiListResponse.ItemId"
>
<summary>
考核指标Id
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeEnterDetaiListResponse.ItemCode"
>
<summary>
指标编码
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeEnterDetaiListResponse.ItemName1"
>
<summary>
一级指标名称
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeEnterDetaiListResponse.ItemName2"
>
<summary>
二级指标名称
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeEnterDetaiListResponse.AssessScore"
>
<summary>
考核分值
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeEnterDetaiListResponse.Score"
>
<summary>
考核扣分
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeEnterDetaiListResponse.ScoreRemark"
>
<summary>
扣分原因
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeEnterDetaiListResponse.State"
>
<summary>
状态 未提交 = 1,待审核 = 2,审核通过 = 3,驳回 = 4,
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeEnterDetaiListResponse.CreateBy"
>
<summary>
创建人
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeEnterDetaiListResponse.CreateTime"
>
<summary>
创建时间
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeEnterDetaiListResponse.UpdateBy"
>
<summary>
最后修改人
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeEnterDetaiListResponse.UpdateTime"
>
<summary>
修改时间
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeEnterDetaiListResponse.SubmitBy"
>
<summary>
提交人
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeEnterDetaiListResponse.SubmitTime"
>
<summary>
提交时间
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeEnterDetaiListResponse.AuditBy"
>
<summary>
审核人
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeEnterDetaiListResponse.AuditTime"
>
<summary>
审核时间
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeEnterDetaiListResponse.AuditRemark"
>
<summary>
审核或驳回原因
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeEnterDetaiListResponse.AssessNorm"
>
<summary>
考核标准
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeItemsUploadResponse.ItemName1"
>
<summary>
一级指标名称
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeItemsUploadResponse.ItemName2"
>
<summary>
二级指标名称
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeItemsUploadResponse.AssessScore"
>
<summary>
考核分值
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeItemsUploadResponse.AssessNorm"
>
<summary>
考核标准
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeItemsUploadResponse.UnitCode"
>
<summary>
责任部门核算单元编码
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeItemsUploadResponse.UnitType"
>
<summary>
责任部门核算组别
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeItemsUploadResponse.AccountingUnit"
>
<summary>
责任部门核算单元
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeItemsUploadResponse.ItemCode"
>
<summary>
指标编码
</summary>
</member>
<member
name=
"P:Performance.DtoModels.AssessSchemeItemsUploadResponse.OperationType"
>
<summary>
操作类型 新增 = 1, 修改 = 2, 删除 = 3,
</summary>
</member>
<member
name=
"P:Performance.DtoModels.Response.AttendanceAuditDetail.AttendanceIsueId"
>
<member
name=
"P:Performance.DtoModels.Response.AttendanceAuditDetail.AttendanceIsueId"
>
<summary>
<summary>
考勤结果id(确认or驳回调用)
考勤结果id(确认or驳回调用)
...
@@ -4407,6 +4863,121 @@
...
@@ -4407,6 +4863,121 @@
发放时间,空则不显示
发放时间,空则不显示
</summary>
</summary>
</member>
</member>
<member
name=
"T:Performance.DtoModels.PerAssessmentStatisticsResponse"
>
<summary>
考核下发结果统计
</summary>
</member>
<member
name=
"P:Performance.DtoModels.PerAssessmentStatisticsResponse.Id"
>
<summary>
</summary>
</member>
<member
name=
"P:Performance.DtoModels.PerAssessmentStatisticsResponse.AllotId"
>
<summary>
绩效ID
</summary>
</member>
<member
name=
"P:Performance.DtoModels.PerAssessmentStatisticsResponse.AssessId"
>
<summary>
考核类型ID
</summary>
</member>
<member
name=
"P:Performance.DtoModels.PerAssessmentStatisticsResponse.AssessCode"
>
<summary>
考核类型编码
</summary>
</member>
<member
name=
"P:Performance.DtoModels.PerAssessmentStatisticsResponse.AssessName"
>
<summary>
考核类型名称
</summary>
</member>
<member
name=
"P:Performance.DtoModels.PerAssessmentStatisticsResponse.SchemeId"
>
<summary>
考核方案ID
</summary>
</member>
<member
name=
"P:Performance.DtoModels.PerAssessmentStatisticsResponse.SchemeCode"
>
<summary>
考核方案编码
</summary>
</member>
<member
name=
"P:Performance.DtoModels.PerAssessmentStatisticsResponse.SchemeName"
>
<summary>
考核方案名称
</summary>
</member>
<member
name=
"P:Performance.DtoModels.PerAssessmentStatisticsResponse.ItemId"
>
<summary>
考核指标Id
</summary>
</member>
<member
name=
"P:Performance.DtoModels.PerAssessmentStatisticsResponse.ItemCode"
>
<summary>
指标编码
</summary>
</member>
<member
name=
"P:Performance.DtoModels.PerAssessmentStatisticsResponse.ItemName1"
>
<summary>
一级指标名称
</summary>
</member>
<member
name=
"P:Performance.DtoModels.PerAssessmentStatisticsResponse.ItemName2"
>
<summary>
二级指标名称
</summary>
</member>
<member
name=
"P:Performance.DtoModels.PerAssessmentStatisticsResponse.AssessScore"
>
<summary>
考核分值
</summary>
</member>
<member
name=
"P:Performance.DtoModels.PerAssessmentStatisticsResponse.AssessNorm"
>
<summary>
考核标准
</summary>
</member>
<member
name=
"P:Performance.DtoModels.PerAssessmentStatisticsResponse.UnitCode"
>
<summary>
责任部门核算单元编码
</summary>
</member>
<member
name=
"P:Performance.DtoModels.PerAssessmentStatisticsResponse.UnitType"
>
<summary>
责任部门核算组别
</summary>
</member>
<member
name=
"P:Performance.DtoModels.PerAssessmentStatisticsResponse.AccountingUnit"
>
<summary>
责任部门核算单元
</summary>
</member>
<member
name=
"P:Performance.DtoModels.PerAssessmentStatisticsResponse.TargetUnitCode"
>
<summary>
考核目标核算单元编码
</summary>
</member>
<member
name=
"P:Performance.DtoModels.PerAssessmentStatisticsResponse.TargetUnitType"
>
<summary>
考核目标核算组别
</summary>
</member>
<member
name=
"P:Performance.DtoModels.PerAssessmentStatisticsResponse.TargetAccountingUnit"
>
<summary>
考核目标核算单元
</summary>
</member>
<member
name=
"P:Performance.DtoModels.PerAssessmentStatisticsResponse.OperationType"
>
<summary>
操作类型 新增 = 1, 修改 = 2, 删除 = 3,
</summary>
</member>
<member
name=
"P:Performance.DtoModels.PerAssessmentStatisticsResponse.Describe"
>
<summary>
操作描述
</summary>
</member>
<member
name=
"P:Performance.DtoModels.PerEmployeeResponse.WorkTime"
>
<member
name=
"P:Performance.DtoModels.PerEmployeeResponse.WorkTime"
>
<summary>
<summary>
参加工作时间
参加工作时间
...
...
performance/Performance.Api/wwwroot/Performance.EntityModels.xml
View file @
a7bd8716
...
@@ -298,6 +298,9 @@
...
@@ -298,6 +298,9 @@
<member
name=
"P:Performance.EntityModels.PerformanceDbContext.report_statistics"
>
<member
name=
"P:Performance.EntityModels.PerformanceDbContext.report_statistics"
>
<summary>
</summary>
<summary>
</summary>
</member>
</member>
<member
name=
"P:Performance.EntityModels.PerformanceDbContext.report_statistics_selection"
>
<summary>
</summary>
</member>
<member
name=
"P:Performance.EntityModels.PerformanceDbContext.res_account"
>
<member
name=
"P:Performance.EntityModels.PerformanceDbContext.res_account"
>
<summary>
科室核算结果
</summary>
<summary>
科室核算结果
</summary>
</member>
</member>
...
@@ -343,6 +346,45 @@
...
@@ -343,6 +346,45 @@
<member
name=
"P:Performance.EntityModels.PerformanceDbContext.sys_user_role"
>
<member
name=
"P:Performance.EntityModels.PerformanceDbContext.sys_user_role"
>
<summary>
用户角色关联表
</summary>
<summary>
用户角色关联表
</summary>
</member>
</member>
<member
name=
"P:Performance.EntityModels.PerformanceDbContext.sys_version"
>
<summary></summary>
</member>
<member
name=
"P:Performance.EntityModels.PerformanceDbContext.per_attendance"
>
<summary>
调动记录表
</summary>
</member>
<member
name=
"P:Performance.EntityModels.PerformanceDbContext.per_attendance_dept"
>
<summary>
考勤结果
</summary>
</member>
<member
name=
"P:Performance.EntityModels.PerformanceDbContext.per_attendance_type"
>
<summary>
考勤类型
</summary>
</member>
<member
name=
"P:Performance.EntityModels.PerformanceDbContext.per_attendance_vacation"
>
<summary>
考勤记录表
</summary>
</member>
<member
name=
"P:Performance.EntityModels.PerformanceDbContext.per_allot_action"
>
<summary>
绩效分配操作记录表
</summary>
</member>
<member
name=
"P:Performance.EntityModels.PerformanceDbContext.per_apr_amount_type"
>
<summary>
医院其他绩效类型
</summary>
</member>
<member
name=
"P:Performance.EntityModels.PerformanceDbContext.per_apr_amount_hide_type"
>
<summary>
不公示其他绩效类型
</summary>
</member>
<member
name=
"P:Performance.EntityModels.PerformanceDbContext.per_assess_category"
>
<summary>
考核分类
</summary>
</member>
<member
name=
"P:Performance.EntityModels.PerformanceDbContext.per_assess_scheme"
>
<summary>
考核方案
</summary>
</member>
<member
name=
"P:Performance.EntityModels.PerformanceDbContext.per_assess_issue_scheme"
>
<summary>
考核方案下发到责任科室指标清单
</summary>
</member>
<member
name=
"P:Performance.EntityModels.PerformanceDbContext.per_assess_scheme_items"
>
<summary>
考核方案指标项
</summary>
</member>
<member
name=
"P:Performance.EntityModels.PerformanceDbContext.per_assess_scheme_target"
>
<summary>
被考核对象
</summary>
</member>
<member
name=
"T:Performance.EntityModels.ag_againsituation"
>
<member
name=
"T:Performance.EntityModels.ag_againsituation"
>
<summary>
<summary>
二次分配概览
二次分配概览
...
@@ -6553,6 +6595,416 @@
...
@@ -6553,6 +6595,416 @@
审计状态 1 已审计
审计状态 1 已审计
</summary>
</summary>
</member>
</member>
<member
name=
"T:Performance.EntityModels.per_assess_category"
>
<summary>
考核类别
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_category.Id"
>
<summary>
考核类别Id
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_category.AllotId"
>
<summary>
绩效ID
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_category.AssessCode"
>
<summary>
考核类型编码
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_category.AssessName"
>
<summary>
考核类型
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_category.CreateBy"
>
<summary>
创建人
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_category.CreateTime"
>
<summary>
创建时间
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_category.UpdateBy"
>
<summary>
最后修改人
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_category.UpdateTime"
>
<summary>
修改时间
</summary>
</member>
<member
name=
"T:Performance.EntityModels.per_assess_issue_scheme"
>
<summary>
考核方案下发到责任科室指标清单
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_issue_scheme.Id"
>
<summary>
考核方案下发到责任科室指标清单Id
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_issue_scheme.AllotId"
>
<summary>
绩效ID
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_issue_scheme.AssessId"
>
<summary>
考核类型ID
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_issue_scheme.AssessCode"
>
<summary>
考核类型编码
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_issue_scheme.AssessName"
>
<summary>
考核类型名称
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_issue_scheme.SchemeId"
>
<summary>
考核方案ID
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_issue_scheme.SchemeCode"
>
<summary>
考核方案编码
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_issue_scheme.SchemeName"
>
<summary>
考核方案名称
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_issue_scheme.ItemId"
>
<summary>
考核指标Id
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_issue_scheme.ItemCode"
>
<summary>
指标编码
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_issue_scheme.ItemName1"
>
<summary>
一级指标名称
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_issue_scheme.ItemName2"
>
<summary>
二级指标名称
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_issue_scheme.AssessScore"
>
<summary>
考核分值
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_issue_scheme.AssessNorm"
>
<summary>
考核标准
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_issue_scheme.UnitCode"
>
<summary>
责任部门核算单元编码
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_issue_scheme.UnitType"
>
<summary>
责任部门核算组别
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_issue_scheme.AccountingUnit"
>
<summary>
责任部门核算单元
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_issue_scheme.State"
>
<summary>
状态
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_issue_scheme.CreateBy"
>
<summary>
创建人
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_issue_scheme.CreateTime"
>
<summary>
创建时间
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_issue_scheme.UpdateBy"
>
<summary>
最后修改人
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_issue_scheme.UpdateTime"
>
<summary>
修改时间
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_issue_scheme.Score"
>
<summary>
考核扣分
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_issue_scheme.ScoreRemark"
>
<summary>
扣分原因
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_issue_scheme.TargetUnitCode"
>
<summary>
考核目标核算单元编码
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_issue_scheme.TargetUnitType"
>
<summary>
考核目标核算组别
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_issue_scheme.TargetAccountingUnit"
>
<summary>
考核目标核算单元
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_issue_scheme.SubmitBy"
>
<summary>
提交人
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_issue_scheme.SubmitTime"
>
<summary>
提交时间
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_issue_scheme.AuditBy"
>
<summary>
审核人
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_issue_scheme.AuditTime"
>
<summary>
审核时间
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_issue_scheme.AuditRemark"
>
<summary>
审核或驳回原因
</summary>
</member>
<member
name=
"T:Performance.EntityModels.per_assess_scheme"
>
<summary>
考核方案
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_scheme.Id"
>
<summary>
考核方案Id
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_scheme.AllotId"
>
<summary>
绩效ID
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_scheme.AssessId"
>
<summary>
考核类型ID
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_scheme.SchemeCode"
>
<summary>
考核方案编码
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_scheme.SchemeName"
>
<summary>
考核方案名称
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_scheme.SchemeRemarks"
>
<summary>
考核方案备注
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_scheme.CreateBy"
>
<summary>
创建人
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_scheme.CreateTime"
>
<summary>
创建时间
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_scheme.UpdateBy"
>
<summary>
最后修改人
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_scheme.UpdateTime"
>
<summary>
修改时间
</summary>
</member>
<member
name=
"T:Performance.EntityModels.per_assess_scheme_items"
>
<summary>
考核方案指标项
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_scheme_items.Id"
>
<summary>
指标项Id
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_scheme_items.AllotId"
>
<summary>
绩效ID
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_scheme_items.AssessId"
>
<summary>
考核类型ID
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_scheme_items.SchemeId"
>
<summary>
考核方案Id
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_scheme_items.ItemCode"
>
<summary>
指标编码
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_scheme_items.ItemName1"
>
<summary>
一级指标名称
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_scheme_items.ItemName2"
>
<summary>
二级指标名称
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_scheme_items.AssessScore"
>
<summary>
考核分值
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_scheme_items.AssessNorm"
>
<summary>
考核标准
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_scheme_items.UnitCode"
>
<summary>
责任部门核算单元编码
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_scheme_items.UnitType"
>
<summary>
责任部门核算组别
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_scheme_items.AccountingUnit"
>
<summary>
责任部门核算单元
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_scheme_items.CreateBy"
>
<summary>
创建人
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_scheme_items.CreateTime"
>
<summary>
创建时间
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_scheme_items.UpdateBy"
>
<summary>
最后修改人
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_scheme_items.UpdateTime"
>
<summary>
修改时间
</summary>
</member>
<member
name=
"T:Performance.EntityModels.per_assess_scheme_target"
>
<summary>
被考核对象
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_scheme_target.Id"
>
<summary>
被考核对象Id
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_scheme_target.AllotId"
>
<summary>
绩效ID
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_scheme_target.AssessId"
>
<summary>
考核类型ID
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_scheme_target.SchemeId"
>
<summary>
考核方案Id
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_scheme_target.UnitCode"
>
<summary>
考核目标核算单元编码
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_scheme_target.UnitType"
>
<summary>
考核目标核算组别
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_scheme_target.AccountingUnit"
>
<summary>
考核目标核算单元
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_scheme_target.CreateBy"
>
<summary>
创建人
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_scheme_target.CreateTime"
>
<summary>
创建时间
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_scheme_target.UpdateBy"
>
<summary>
最后修改人
</summary>
</member>
<member
name=
"P:Performance.EntityModels.per_assess_scheme_target.UpdateTime"
>
<summary>
修改时间
</summary>
</member>
<member
name=
"T:Performance.EntityModels.per_batch"
>
<member
name=
"T:Performance.EntityModels.per_batch"
>
<summary>
<summary>
分批发放记录
分批发放记录
...
@@ -9668,6 +10120,167 @@
...
@@ -9668,6 +10120,167 @@
核算单元编码
核算单元编码
</summary>
</summary>
</member>
</member>
<member
name=
"P:Performance.EntityModels.Other.view_assess_issue.AllotId"
>
<summary>
绩效ID
</summary>
</member>
<member
name=
"P:Performance.EntityModels.Other.view_assess_issue.AssessCode"
>
<summary>
考核类型编码
</summary>
</member>
<member
name=
"P:Performance.EntityModels.Other.view_assess_issue.AssessName"
>
<summary>
考核类型
</summary>
</member>
<member
name=
"P:Performance.EntityModels.Other.view_assess_issue.AssessId"
>
<summary>
考核类型ID
</summary>
</member>
<member
name=
"P:Performance.EntityModels.Other.view_assess_issue.SchemeId"
>
<summary>
考核方案ID
</summary>
</member>
<member
name=
"P:Performance.EntityModels.Other.view_assess_issue.SchemeCode"
>
<summary>
考核方案编码
</summary>
</member>
<member
name=
"P:Performance.EntityModels.Other.view_assess_issue.SchemeName"
>
<summary>
考核方案名称
</summary>
</member>
<member
name=
"P:Performance.EntityModels.Other.view_assess_issue.ItemId"
>
<summary>
指标Id
</summary>
</member>
<member
name=
"P:Performance.EntityModels.Other.view_assess_issue.ItemCode"
>
<summary>
指标编码
</summary>
</member>
<member
name=
"P:Performance.EntityModels.Other.view_assess_issue.ItemName1"
>
<summary>
一级指标名称
</summary>
</member>
<member
name=
"P:Performance.EntityModels.Other.view_assess_issue.ItemName2"
>
<summary>
二级指标名称
</summary>
</member>
<member
name=
"P:Performance.EntityModels.Other.view_assess_issue.AssessScore"
>
<summary>
考核分值
</summary>
</member>
<member
name=
"P:Performance.EntityModels.Other.view_assess_issue.AssessNorm"
>
<summary>
考核标准
</summary>
</member>
<member
name=
"P:Performance.EntityModels.Other.view_assess_issue.UnitCode"
>
<summary>
责任部门核算单元编码
</summary>
</member>
<member
name=
"P:Performance.EntityModels.Other.view_assess_issue.UnitType"
>
<summary>
责任部门核算组别
</summary>
</member>
<member
name=
"P:Performance.EntityModels.Other.view_assess_issue.AccountingUnit"
>
<summary>
责任部门核算单元
</summary>
</member>
<member
name=
"P:Performance.EntityModels.Other.view_assess_issue.TargetUnitCode"
>
<summary>
考核目标核算单元编码
</summary>
</member>
<member
name=
"P:Performance.EntityModels.Other.view_assess_issue.TargetUnitType"
>
<summary>
考核目标核算组别
</summary>
</member>
<member
name=
"P:Performance.EntityModels.Other.view_assess_issue.TargetAccountingUnit"
>
<summary>
考核目标核算单元
</summary>
</member>
<member
name=
"P:Performance.EntityModels.Other.view_assess_result.AllotId"
>
<summary>
绩效ID
</summary>
</member>
<member
name=
"P:Performance.EntityModels.Other.view_assess_result.AssessId"
>
<summary>
考核类型ID
</summary>
</member>
<member
name=
"P:Performance.EntityModels.Other.view_assess_result.SchemeId"
>
<summary>
考核方案ID
</summary>
</member>
<member
name=
"P:Performance.EntityModels.Other.view_assess_result.ItemId"
>
<summary>
指标Id
</summary>
</member>
<!-- Badly formed XML comment ignored for member "P:Performance.EntityModels.Other.view_assess_result.ItemName2" -->
<member
name=
"P:Performance.EntityModels.Other.view_assess_result.State"
>
<summary>
状态
</summary>
</member>
<member
name=
"P:Performance.EntityModels.Other.view_assess_result.AssessScore"
>
<summary>
分值标准
</summary>
</member>
<member
name=
"P:Performance.EntityModels.Other.view_assess_result.Score"
>
<summary>
扣分值
</summary>
</member>
<member
name=
"P:Performance.EntityModels.Other.view_assess_result.UnitCode"
>
<summary>
责任部门核算单元编码
</summary>
</member>
<member
name=
"P:Performance.EntityModels.Other.view_assess_result.UnitType"
>
<summary>
责任部门核算组别
</summary>
</member>
<member
name=
"P:Performance.EntityModels.Other.view_assess_result.AccountingUnit"
>
<summary>
责任部门核算单元
</summary>
</member>
<member
name=
"P:Performance.EntityModels.Other.view_assess_result.TargetUnitCode"
>
<summary>
考核目标核算单元编码
</summary>
</member>
<member
name=
"P:Performance.EntityModels.Other.view_assess_result.TargetUnitType"
>
<summary>
考核目标核算组别
</summary>
</member>
<member
name=
"P:Performance.EntityModels.Other.view_assess_result.TargetAccountingUnit"
>
<summary>
考核目标核算单元
</summary>
</member>
<member
name=
"P:Performance.EntityModels.Other.view_attendance.UnitType"
>
<member
name=
"P:Performance.EntityModels.Other.view_attendance.UnitType"
>
<summary>
<summary>
人员类别
人员类别
...
...
performance/Performance.DtoModels/AutoMapper/AutoMapperConfigs.cs
View file @
a7bd8716
...
@@ -3,6 +3,7 @@
...
@@ -3,6 +3,7 @@
using
Performance.DtoModels.Response
;
using
Performance.DtoModels.Response
;
using
Performance.EntityModels
;
using
Performance.EntityModels
;
using
Performance.EntityModels.Entity
;
using
Performance.EntityModels.Entity
;
using
Performance.EntityModels.Other
;
using
Performance.Infrastructure
;
using
Performance.Infrastructure
;
using
System.Linq
;
using
System.Linq
;
...
@@ -278,6 +279,20 @@ public AutoMapperConfigs()
...
@@ -278,6 +279,20 @@ public AutoMapperConfigs()
.
ReverseMap
();
.
ReverseMap
();
CreateMap
<
cof_again
,
CofAgainRequest
>().
ReverseMap
();
CreateMap
<
cof_again
,
CofAgainRequest
>().
ReverseMap
();
CreateMap
<
AddAssessSchemeItemsRequest
,
per_assess_scheme_items
>()
.
ReverseMap
();
CreateMap
<
per_assess_scheme_items
,
PerAssessmentStatisticsResponse
>()
.
ReverseMap
();
CreateMap
<
cof_accounting
,
AssessSchemeTargetResponse
>()
.
ReverseMap
();
CreateMap
<
AssessSchemeTargetResponse
,
per_assess_scheme_target
>()
.
ReverseMap
();
CreateMap
<
per_assess_issue_scheme
,
AssessSchemeEnterDetaiListResponse
>()
.
ReverseMap
();
CreateMap
<
per_assess_scheme
,
AssessSchemeDataResponse
>()
.
ReverseMap
();
CreateMap
<
AttendanceData
,
per_attendance
>().
ReverseMap
();
CreateMap
<
AttendanceData
,
per_attendance
>().
ReverseMap
();
CreateMap
<
AttendanceVacationData
,
per_attendance_vacation
>().
ReverseMap
();
CreateMap
<
AttendanceVacationData
,
per_attendance_vacation
>().
ReverseMap
();
}
}
...
...
performance/Performance.DtoModels/Enum.cs
View file @
a7bd8716
...
@@ -142,6 +142,25 @@ public enum OperationType
...
@@ -142,6 +142,25 @@ public enum OperationType
删除
=
3
,
删除
=
3
,
}
}
}
}
public
class
Assess
{
public
enum
SchemeItemsTarget
{
全部
=
0
,
已设置其他方案
=
1
,
未设置方案
=
2
,
已设置方案
=
4
,
}
public
enum
AssessState
{
未提交
=
1
,
待审核
=
2
,
审核通过
=
3
,
驳回
=
4
,
}
}
public
class
SecondAllot
public
class
SecondAllot
{
{
...
...
performance/Performance.DtoModels/Request/AssessCategoryRequest.cs
0 → 100644
View file @
a7bd8716
using
System
;
using
System.Collections.Generic
;
using
System.Linq
;
using
System.Text
;
using
System.Threading.Tasks
;
namespace
Performance.DtoModels.Request
{
public
class
AddAssessCategoryRequest
{
public
int
AllotId
{
get
;
set
;
}
public
string
Category
{
get
;
set
;
}
}
public
class
UpdateAssessCategoryRequest
:
AddAssessCategoryRequest
{
public
int
SchemeId
{
get
;
set
;
}
public
int
CategoryId
{
get
;
set
;
}
}
public
class
BatchAssessCategoryRequest
{
public
int
[]
CategoryId
{
get
;
set
;
}
public
int
AllotId
{
get
;
set
;
}
}
}
performance/Performance.DtoModels/Request/AssessColumnRequest.cs
View file @
a7bd8716
using
FluentValidation
;
//
using FluentValidation;
using
System
;
//
using System;
using
System.Collections.Generic
;
//
using System.Collections.Generic;
using
System.Text
;
//
using System.Text;
namespace
Performance.DtoModels
//
namespace Performance.DtoModels
{
//
{
public
class
AssessColumnRequest
//
public class AssessColumnRequest
{
//
{
public
int
ColumnID
{
get
;
set
;
}
//
public int ColumnID { get; set; }
public
int
AssessID
{
get
;
set
;
}
//
public int AssessID { get; set; }
public
int
ParentID
{
get
;
set
;
}
//
public int ParentID { get; set; }
public
string
ColumnName
{
get
;
set
;
}
//
public string ColumnName { get; set; }
public
int
Sort
{
get
;
set
;
}
//
public int Sort { get; set; }
}
//
}
public
class
AssessColumnRequestValidator
:
AbstractValidator
<
AssessColumnRequest
>
//
public class AssessColumnRequestValidator : AbstractValidator<AssessColumnRequest>
{
//
{
public
AssessColumnRequestValidator
()
//
public AssessColumnRequestValidator()
{
//
{
RuleSet
(
"Del"
,
()
=>
//
RuleSet("Del", () =>
{
//
{
RuleFor
(
t
=>
t
.
ColumnID
).
NotNull
().
GreaterThan
(
0
);
//
RuleFor(t => t.ColumnID).NotNull().GreaterThan(0);
});
//
});
RuleSet
(
"Update"
,
()
=>
//
RuleSet("Update", () =>
{
//
{
RuleFor
(
t
=>
t
.
ColumnID
).
NotNull
().
GreaterThan
(
0
);
//
RuleFor(t => t.ColumnID).NotNull().GreaterThan(0);
RuleFor
(
t
=>
t
.
ColumnName
).
NotNull
().
NotEmpty
();
//
RuleFor(t => t.ColumnName).NotNull().NotEmpty();
});
//
});
RuleSet
(
"Add"
,
()
=>
//
RuleSet("Add", () =>
{
//
{
RuleFor
(
t
=>
t
.
AssessID
).
NotNull
().
GreaterThan
(
0
);
//
RuleFor(t => t.AssessID).NotNull().GreaterThan(0);
RuleFor
(
t
=>
t
.
ParentID
).
NotNull
().
GreaterThan
(-
1
);
//
RuleFor(t => t.ParentID).NotNull().GreaterThan(-1);
RuleFor
(
t
=>
t
.
ColumnName
).
NotNull
().
NotEmpty
();
//
RuleFor(t => t.ColumnName).NotNull().NotEmpty();
});
//
});
RuleSet
(
"List"
,
()
=>
//
RuleSet("List", () =>
{
//
{
RuleFor
(
t
=>
t
.
AssessID
).
NotNull
().
GreaterThan
(
0
);
//
RuleFor(t => t.AssessID).NotNull().GreaterThan(0);
});
//
});
}
//
}
}
//
}
}
//
}
performance/Performance.DtoModels/Request/AssessDataRequest.cs
View file @
a7bd8716
using
FluentValidation
;
//
using FluentValidation;
using
System
;
//
using System;
using
System.Collections.Generic
;
//
using System.Collections.Generic;
using
System.Text
;
//
using System.Text;
namespace
Performance.DtoModels
//
namespace Performance.DtoModels
{
//
{
public
class
AssessDataRequest
//
public class AssessDataRequest
{
//
{
public
int
AssessID
{
get
;
set
;
}
//
public int AssessID { get; set; }
public
List
<
AssessRow
>
AssessRow
{
get
;
set
;
}
//
public List<AssessRow> AssessRow { get; set; }
}
//
}
public
class
AssessRow
//
public class AssessRow
{
//
{
public
int
DataID
{
get
;
set
;
}
//
public int DataID { get; set; }
public
string
DataValue
{
get
;
set
;
}
//
public string DataValue { get; set; }
}
//
}
public
class
AssessDataRequestValidator
:
AbstractValidator
<
AssessDataRequest
>
//
public class AssessDataRequestValidator : AbstractValidator<AssessDataRequest>
{
//
{
public
AssessDataRequestValidator
()
//
public AssessDataRequestValidator()
{
//
{
RuleSet
(
"List"
,
()
=>
//
RuleSet("List", () =>
{
//
{
RuleFor
(
t
=>
t
.
AssessID
).
NotNull
().
GreaterThan
(
0
);
//
RuleFor(t => t.AssessID).NotNull().GreaterThan(0);
});
//
});
RuleSet
(
"Edit"
,
()
=>
//
RuleSet("Edit", () =>
{
//
{
RuleFor
(
t
=>
t
.
AssessRow
).
NotNull
().
Must
(
p
=>
p
!=
null
&&
p
.
Count
>
0
);
//
RuleFor(t => t.AssessRow).NotNull().Must(p => p != null && p.Count > 0);
});
//
});
}
//
}
}
//
}
}
//
}
performance/Performance.DtoModels/Request/AssessRequest.cs
View file @
a7bd8716
using
FluentValidation
;
//
using FluentValidation;
using
System
;
//
using System;
using
System.Collections.Generic
;
//
using System.Collections.Generic;
using
System.Text
;
//
using System.Text;
namespace
Performance.DtoModels
//
namespace Performance.DtoModels
{
//
{
public
class
AssessRequest
//
public class AssessRequest
{
//
{
public
int
AssessID
{
get
;
set
;
}
//
public int AssessID { get; set; }
public
int
AllotID
{
get
;
set
;
}
//
public int AllotID { get; set; }
public
string
AssessName
{
get
;
set
;
}
//
public string AssessName { get; set; }
}
//
}
public
class
AssessRequestValidator
:
AbstractValidator
<
AssessRequest
>
//
public class AssessRequestValidator : AbstractValidator<AssessRequest>
{
//
{
public
AssessRequestValidator
()
//
public AssessRequestValidator()
{
//
{
RuleSet
(
"Del"
,
()
=>
//
RuleSet("Del", () =>
{
//
{
RuleFor
(
t
=>
t
.
AssessID
).
NotNull
().
GreaterThan
(
0
);
//
RuleFor(t => t.AssessID).NotNull().GreaterThan(0);
});
//
});
RuleSet
(
"Update"
,
()
=>
//
RuleSet("Update", () =>
{
//
{
RuleFor
(
t
=>
t
.
AssessID
).
NotNull
().
GreaterThan
(
0
);
//
RuleFor(t => t.AssessID).NotNull().GreaterThan(0);
RuleFor
(
t
=>
t
.
AssessName
).
NotNull
().
NotEmpty
();
//
RuleFor(t => t.AssessName).NotNull().NotEmpty();
});
//
});
RuleSet
(
"Add"
,
()
=>
//
RuleSet("Add", () =>
{
//
{
RuleFor
(
t
=>
t
.
AllotID
).
NotNull
().
NotEmpty
();
//
RuleFor(t => t.AllotID).NotNull().NotEmpty();
RuleFor
(
t
=>
t
.
AssessName
).
NotNull
().
NotEmpty
();
//
RuleFor(t => t.AssessName).NotNull().NotEmpty();
});
//
});
RuleSet
(
"List"
,
()
=>
//
RuleSet("List", () =>
{
//
{
RuleFor
(
t
=>
t
.
AllotID
).
NotNull
().
NotEmpty
();
//
RuleFor(t => t.AllotID).NotNull().NotEmpty();
});
//
});
RuleSet
(
"Use"
,
()
=>
//
RuleSet("Use", () =>
{
//
{
RuleFor
(
t
=>
t
.
AllotID
).
NotNull
().
NotEmpty
();
//
RuleFor(t => t.AllotID).NotNull().NotEmpty();
RuleFor
(
t
=>
t
.
AssessID
).
NotNull
().
NotEmpty
();
//
RuleFor(t => t.AssessID).NotNull().NotEmpty();
});
//
});
}
//
}
}
//
}
}
//
}
performance/Performance.DtoModels/Request/AssessSchemeEnterRequest.cs
0 → 100644
View file @
a7bd8716
namespace
Performance.DtoModels.Request
{
public
class
QuerySchemeResultList
{
///// <summary>
///// 核算组别(页面带进来)
///// </summary>
//public string UnitType { get; set; }
///// <summary>
///// 核算单元(页面带进来)
///// </summary>
//public string AccountingUnit { get; set; }
public
int
SchemeId
{
get
;
set
;
}
public
int
AllotId
{
get
;
set
;
}
public
string
?
TargetUnitType
{
get
;
set
;
}
public
string
?
TargetAccountingUnit
{
get
;
set
;
}
public
string
?
ItemName2
{
get
;
set
;
}
public
int
Page
{
get
;
set
;
}
=
1
;
public
int
PageSize
{
get
;
set
;
}
=
20
;
}
public
class
QuerySchemeEnterDetailList
{
public
int
AllotId
{
get
;
set
;
}
public
int
ItemId
{
get
;
set
;
}
/// <summary>
/// 考核目标核算组别
/// </summary>
public
string
?
TargetUnitType
{
get
;
set
;
}
/// <summary>
/// 考核目标核算单元
/// </summary>
public
string
?
TargetAccountingUnit
{
get
;
set
;
}
/// <summary>
/// 操作类型 未提交 = 1,待审核 = 2,审核通过 = 3,驳回 = 4,
/// </summary>
public
Assess
.
AssessState
State
{
get
;
set
;
}
/// <summary>
/// 二级指标名称
/// </summary>
public
string
?
ItemName2
{
get
;
set
;
}
public
int
Page
{
get
;
set
;
}
=
1
;
public
int
PageSize
{
get
;
set
;
}
=
20
;
}
public
class
EditSchemeEnterAudit
{
public
int
AllotId
{
get
;
set
;
}
public
int
IssueId
{
get
;
set
;
}
public
int
ItemId
{
get
;
set
;
}
/// <summary>
/// 操作类型 未提交 = 1,待审核 = 2,审核通过 = 3,驳回 = 4,
/// </summary>
public
Assess
.
AssessState
State
{
get
;
set
;
}
/// <summary>
/// 审核或驳回原因
/// </summary>
public
string
?
AuditRemark
{
get
;
set
;
}
}
public
class
EditAssessSchemeEnterRequest
{
public
int
IssueId
{
get
;
set
;
}
/// <summary>
/// 考核扣分
/// </summary>
public
decimal
?
Score
{
get
;
set
;
}
/// <summary>
/// 扣分原因
/// </summary>
public
string
?
ScoreRemark
{
get
;
set
;
}
}
}
performance/Performance.DtoModels/Request/AssessSchemeItemsRequest.cs
0 → 100644
View file @
a7bd8716
using
System.Collections.Generic
;
namespace
Performance.DtoModels.Request
{
public
class
AddAssessSchemeItemsRequest
{
public
int
AllotId
{
get
;
set
;
}
/// <summary>
/// 方案ID
/// </summary>
public
int
SchemeId
{
get
;
set
;
}
/// <summary>
/// 一级指标名称
/// </summary>
public
string
ItemName1
{
get
;
set
;
}
/// <summary>
/// 二级指标名称
/// </summary>
public
string
ItemName2
{
get
;
set
;
}
/// <summary>
/// 考核分值
/// </summary>
public
decimal
AssessScore
{
get
;
set
;
}
/// <summary>
/// 考核标准
/// </summary>
public
string
AssessNorm
{
get
;
set
;
}
/// <summary>
/// <summary>
/// 责任部门核算组别
/// </summary>
public
string
UnitType
{
get
;
set
;
}
/// <summary>
/// 责任部门核算单元
/// </summary>
public
string
AccountingUnit
{
get
;
set
;
}
}
public
class
UpdateAssessSchemeItemsRequest
:
AddAssessSchemeItemsRequest
{
public
int
SchemeItemsId
{
get
;
set
;
}
}
public
class
BatchAssessSchemeItemsRequest
{
public
int
[]
SchemeItemsId
{
get
;
set
;
}
}
public
class
QuerySchemeItemsTargetList
{
public
int
AllotId
{
get
;
set
;
}
public
int
AssessId
{
get
;
set
;
}
public
int
SchemeId
{
get
;
set
;
}
public
Assess
.
SchemeItemsTarget
SchemeItemsTarget
{
get
;
set
;
}
public
string
UnitType
{
get
;
set
;
}
public
string
AccountingUnit
{
get
;
set
;
}
public
int
Page
{
get
;
set
;
}
=
1
;
public
int
PageSize
{
get
;
set
;
}
=
20
;
}
public
class
QuerySchemeItemsList
{
public
int
AllotId
{
get
;
set
;
}
public
int
SchemeId
{
get
;
set
;
}
/// <summary>
/// 核算组别
/// </summary>
public
string
?
UnitType
{
get
;
set
;
}
/// <summary>
/// 核算单元
/// </summary>
public
string
?
AccountingUnit
{
get
;
set
;
}
/// <summary>
/// 二级指标名称
/// </summary>
public
string
?
ItemName2
{
get
;
set
;
}
public
int
Page
{
get
;
set
;
}
=
1
;
public
int
PageSize
{
get
;
set
;
}
=
20
;
}
public
class
TargetAssessSchemeItemsRequest
{
public
List
<
AssessSchemeTargetResponse
>
SchemeTargetResponse
{
get
;
set
;
}
public
int
SchemeId
{
get
;
set
;
}
}
public
class
TargetSchemeItemsTargetEdit
{
public
int
AllotId
{
get
;
set
;
}
public
int
TargetId
{
get
;
set
;
}
public
string
UnitType
{
get
;
set
;
}
public
string
AccountingUnit
{
get
;
set
;
}
}
public
class
TargetSchemeItemsTargetDelete
{
public
int
[]
TargetId
{
get
;
set
;
}
}
}
performance/Performance.DtoModels/Request/AssessSchemeRequest.cs
0 → 100644
View file @
a7bd8716
namespace
Performance.DtoModels.Request
{
public
class
AddAssessSchemeRequest
{
public
int
AllotId
{
get
;
set
;
}
public
int
CategoryId
{
get
;
set
;
}
public
string
SchemeName
{
get
;
set
;
}
public
string
SchemeRemarks
{
get
;
set
;
}
}
public
class
UpdateAssessSchemeRequest
:
AddAssessSchemeRequest
{
public
int
SchemeId
{
get
;
set
;
}
}
public
class
BatchAssessSchemeRequest
{
public
int
[]
SchemeId
{
get
;
set
;
}
}
public
class
QuerySchemeList
:
AddAssessSchemeRequest
{
public
int
Page
{
get
;
set
;
}
=
1
;
public
int
PageSize
{
get
;
set
;
}
=
20
;
}
public
class
RecordAssessScheme
:
AssessSchemeDataResponse
{
public
string
AssessSchemeName
{
get
;
set
;
}
}
}
performance/Performance.DtoModels/Response/AssessSchemeDataResponse.cs
0 → 100644
View file @
a7bd8716
using
System
;
using
System.Collections.Generic
;
namespace
Performance.DtoModels
{
public
class
AssessSchemeDataResponse
{
/// <summary>
/// 考核方案ID
/// </summary>
public
int
Id
{
get
;
set
;
}
/// <summary>
/// 绩效ID
/// </summary>
public
int
AllotId
{
get
;
set
;
}
/// <summary>
/// 考核类型ID
/// </summary>
public
int
AssessId
{
get
;
set
;
}
/// <summary>
/// 考核类型编码
/// </summary>
public
string
AssessCode
{
get
;
set
;
}
/// <summary>
/// 考核类别名称
/// </summary>
public
string
AssessName
{
get
;
set
;
}
/// <summary>
/// 考核方案编码
/// </summary>
public
string
SchemeCode
{
get
;
set
;
}
/// <summary>
/// 考核方案名称
/// </summary>
public
string
SchemeName
{
get
;
set
;
}
/// <summary>
/// 考核方案备注
/// </summary>
public
string
SchemeRemarks
{
get
;
set
;
}
/// <summary>
/// 创建人
/// </summary>
public
int
CreateBy
{
get
;
set
;
}
/// <summary>
/// 创建时间
/// </summary>
public
DateTime
?
CreateTime
{
get
;
set
;
}
/// <summary>
/// 最后修改人
/// </summary>
public
int
UpdateBy
{
get
;
set
;
}
/// <summary>
/// 修改时间
/// </summary>
public
DateTime
?
UpdateTime
{
get
;
set
;
}
}
public
class
AssessSchemeTargetResponse
{
public
int
SchemeId
{
get
;
set
;
}
/// <summary>
/// 目标Id
/// </summary>
public
int
TargetId
{
get
;
set
;
}
/// <summary>
/// 核算单元编码
/// </summary>
public
string
Code
{
get
;
set
;
}
/// <summary>
/// 核算组别
/// </summary>
public
string
UnitType
{
get
;
set
;
}
/// <summary>
/// 核算单元
/// </summary>
public
string
AccountingUnit
{
get
;
set
;
}
/// <summary>
/// 已设置方案
/// </summary>
public
string
SchemeName
{
get
;
set
;
}
/// <summary>
/// 状态 全部 = 0, 已设置其他方案= 1,未设置方案=2,已设置方案(不可勾选) = 3,
/// </summary>
public
int
SchemeState
{
get
;
set
;
}
/// <summary>
/// 创建人
/// </summary>
public
int
CreateBy
{
get
;
set
;
}
/// <summary>
/// 创建时间
/// </summary>
public
DateTime
?
CreateTime
{
get
;
set
;
}
/// <summary>
/// 最后修改人
/// </summary>
public
int
UpdateBy
{
get
;
set
;
}
/// <summary>
/// 修改时间
/// </summary>
public
DateTime
?
UpdateTime
{
get
;
set
;
}
}
public
class
AssessSchemeResultListResponse
{
/// <summary>
/// 考核目标核算组别
/// </summary>
public
string
?
TargetUnitType
{
get
;
set
;
}
/// <summary>
/// 考核目标核算单元
/// </summary>
public
string
?
TargetAccountingUnit
{
get
;
set
;
}
/// <summary>
/// 二级指标名称
/// </summary>
public
string
?
ItemName2
{
get
;
set
;
}
public
List
<
AssessSchemeDictionaryResults
>
DictionaryResults
{
get
;
set
;
}
public
decimal
?
Score
{
get
;
set
;
}
/// <summary>
/// 合计
/// </summary>
public
decimal
?
TotalAssessScore
{
get
;
set
;
}
}
public
class
AssessSchemeDictionaryResults
{
public
decimal
?
Value
{
get
;
set
;
}
public
string
Title
{
get
;
set
;
}
}
public
class
AssessSchemeEnterListResponse
{
/// <summary>
/// 核算组别
/// </summary>
public
string
UnitType
{
get
;
set
;
}
/// <summary>
/// 核算单元
/// </summary>
public
string
AccountingUnit
{
get
;
set
;
}
/// <summary>
/// 考核类型ID
/// </summary>
public
int
AssessId
{
get
;
set
;
}
/// <summary>
/// 考核类型编码
/// </summary>
public
string
AssessCode
{
get
;
set
;
}
/// <summary>
/// 考核类型
/// </summary>
public
string
AssessName
{
get
;
set
;
}
/// <summary>
/// 考核指标Id
/// </summary>
public
int
?
ItemId
{
get
;
set
;
}
/// <summary>
/// 考核指标编码
/// </summary>
public
string
ItemCode
{
get
;
set
;
}
/// <summary>
/// 二级指标名称
/// </summary>
public
string
ItemName2
{
get
;
set
;
}
/// <summary>
/// 状态
/// </summary>
public
int
State
{
get
;
set
;
}
/// <summary>
/// 提交时间
/// </summary>
public
DateTime
?
SubmitTime
{
get
;
set
;
}
/// <summary>
/// 审核人
/// </summary>
public
string
?
AuditBy
{
get
;
set
;
}
/// <summary>
/// 审核时间
/// </summary>
public
DateTime
?
AuditTime
{
get
;
set
;
}
/// <summary>
/// 总下发数
/// </summary>
public
int
Count
{
get
;
set
;
}
/// <summary>
/// 确认数
/// </summary>
public
int
ConfirmCount
{
get
;
set
;
}
/// <summary>
/// 驳回数
/// </summary>
public
int
RejectCount
{
get
;
set
;
}
/// <summary>
/// 待审核数
/// </summary>
public
int
AwaitCount
{
get
;
set
;
}
/// <summary>
/// 审核或驳回原因
/// </summary>
public
string
?
AuditRemark
{
get
;
set
;
}
/// <summary>
/// 考核标准
/// </summary>
public
string
AssessNorm
{
get
;
set
;
}
}
public
class
AssessSchemeEnterDetaiListResponse
{
/// <summary>
/// 考核目标核算组别
/// </summary>
public
string
?
TargetUnitType
{
get
;
set
;
}
/// <summary>
/// 考核目标核算单元
/// </summary>
public
string
?
TargetAccountingUnit
{
get
;
set
;
}
/// <summary>
/// 下发Id
/// </summary>
public
int
?
Id
{
get
;
set
;
}
/// <summary>
/// 考核指标Id
/// </summary>
public
int
?
ItemId
{
get
;
set
;
}
/// <summary>
/// 指标编码
/// </summary>
public
string
?
ItemCode
{
get
;
set
;
}
/// <summary>
/// 一级指标名称
/// </summary>
public
string
?
ItemName1
{
get
;
set
;
}
/// <summary>
/// 二级指标名称
/// </summary>
public
string
?
ItemName2
{
get
;
set
;
}
/// <summary>
/// 考核分值
/// </summary>
public
decimal
AssessScore
{
get
;
set
;
}
/// <summary>
/// 考核扣分
/// </summary>
public
decimal
?
Score
{
get
;
set
;
}
/// <summary>
/// 扣分原因
/// </summary>
public
string
?
ScoreRemark
{
get
;
set
;
}
/// <summary>
/// 状态 未提交 = 1,待审核 = 2,审核通过 = 3,驳回 = 4,
/// </summary>
public
int
State
{
get
;
set
;
}
public
int
SchemeState
{
get
;
set
;
}
/// <summary>
/// 创建人
/// </summary>
public
int
CreateBy
{
get
;
set
;
}
/// <summary>
/// 创建时间
/// </summary>
public
DateTime
?
CreateTime
{
get
;
set
;
}
/// <summary>
/// 最后修改人
/// </summary>
public
int
UpdateBy
{
get
;
set
;
}
/// <summary>
/// 修改时间
/// </summary>
public
DateTime
?
UpdateTime
{
get
;
set
;
}
/// <summary>
/// 提交人
/// </summary>
public
int
?
SubmitBy
{
get
;
set
;
}
/// <summary>
/// 提交时间
/// </summary>
public
DateTime
?
SubmitTime
{
get
;
set
;
}
/// <summary>
/// 审核人
/// </summary>
public
string
?
AuditBy
{
get
;
set
;
}
/// <summary>
/// 审核时间
/// </summary>
public
DateTime
?
AuditTime
{
get
;
set
;
}
/// <summary>
/// 审核或驳回原因
/// </summary>
public
string
?
AuditRemark
{
get
;
set
;
}
/// <summary>
/// 考核标准
/// </summary>
public
string
AssessNorm
{
get
;
set
;
}
}
//上传
public
class
AssessSchemeItemsUploadResponse
{
/// <summary>
/// 一级指标名称
/// </summary>
public
string
ItemName1
{
get
;
set
;
}
/// <summary>
/// 二级指标名称
/// </summary>
public
string
ItemName2
{
get
;
set
;
}
/// <summary>
/// 考核分值
/// </summary>
public
decimal
AssessScore
{
get
;
set
;
}
/// <summary>
/// 考核标准
/// </summary>
public
string
AssessNorm
{
get
;
set
;
}
/// <summary>
/// 责任部门核算单元编码
/// </summary>
public
string
UnitCode
{
get
;
set
;
}
/// <summary>
/// 责任部门核算组别
/// </summary>
public
string
UnitType
{
get
;
set
;
}
/// <summary>
/// 责任部门核算单元
/// </summary>
public
string
AccountingUnit
{
get
;
set
;
}
public
int
sort
{
get
;
set
;
}
/// <summary>
/// 指标编码
/// </summary>
public
string
ItemCode
{
get
;
set
;
}
/// <summary>
/// 操作类型 新增 = 1, 修改 = 2, 删除 = 3,
/// </summary>
public
int
OperationType
{
get
;
set
;
}
}
}
performance/Performance.DtoModels/Response/PerAssessmentStatisticsResponse.cs
0 → 100644
View file @
a7bd8716
using
Performance.EntityModels
;
using
Performance.EntityModels.Other
;
using
System
;
namespace
Performance.DtoModels
{
/// <summary>
/// 考核下发结果统计
/// </summary>
public
class
PerAssessmentStatisticsResponse
{
public
PerAssessmentStatisticsResponse
()
{
}
public
PerAssessmentStatisticsResponse
(
view_assess_issue
item
)
{
Id
=
0
;
AllotId
=
item
.
AllotId
;
AssessId
=
item
.
AssessId
;
AssessCode
=
item
.
AssessCode
;
AssessName
=
item
.
AssessName
;
SchemeId
=
item
.
SchemeId
;
SchemeCode
=
item
.
SchemeCode
;
SchemeName
=
item
.
SchemeName
;
ItemId
=
item
.
ItemId
;
ItemCode
=
item
.
ItemCode
;
ItemName1
=
item
.
ItemName1
;
ItemName2
=
item
.
ItemName2
;
AssessScore
=
item
.
AssessScore
;
AssessNorm
=
item
.
AssessNorm
;
UnitCode
=
item
.
UnitCode
;
UnitType
=
item
.
UnitType
;
AccountingUnit
=
item
.
AccountingUnit
;
TargetUnitCode
=
item
.
TargetUnitCode
;
TargetUnitType
=
item
.
TargetUnitType
;
TargetAccountingUnit
=
item
.
TargetAccountingUnit
;
OperationType
=
(
int
)
Attendance
.
OperationType
.
新增
;
Describe
=
"添加数据"
;
}
public
PerAssessmentStatisticsResponse
(
per_assess_issue_scheme
item
)
{
Id
=
item
.
Id
;
AllotId
=
item
.
AllotId
;
AssessId
=
item
.
AssessId
;
AssessCode
=
item
.
AssessCode
;
AssessName
=
item
.
AssessName
;
SchemeId
=
item
.
SchemeId
??
0
;
SchemeCode
=
item
.
SchemeCode
;
SchemeName
=
item
.
SchemeName
;
ItemId
=
item
.
ItemId
??
0
;
ItemCode
=
item
.
ItemCode
;
ItemName1
=
item
.
ItemName1
;
ItemName2
=
item
.
ItemName2
;
AssessScore
=
item
.
AssessScore
;
AssessNorm
=
item
.
AssessNorm
;
UnitCode
=
item
.
UnitCode
;
UnitType
=
item
.
UnitType
;
AccountingUnit
=
item
.
AccountingUnit
;
TargetUnitCode
=
item
.
TargetUnitCode
;
TargetUnitType
=
item
.
TargetUnitType
;
TargetAccountingUnit
=
item
.
TargetAccountingUnit
;
OperationType
=
(
int
)
Attendance
.
OperationType
.
删除
;
Describe
=
"删除数据"
;
}
/// <summary>
///
/// </summary>
public
int
?
Id
{
get
;
set
;
}
/// <summary>
/// 绩效ID
/// </summary>
public
Nullable
<
int
>
AllotId
{
get
;
set
;
}
/// <summary>
/// 考核类型ID
/// </summary>
public
int
AssessId
{
get
;
set
;
}
/// <summary>
/// 考核类型编码
/// </summary>
public
string
AssessCode
{
get
;
set
;
}
/// <summary>
/// 考核类型名称
/// </summary>
public
string
AssessName
{
get
;
set
;
}
/// <summary>
/// 考核方案ID
/// </summary>
public
int
SchemeId
{
get
;
set
;
}
/// <summary>
/// 考核方案编码
/// </summary>
public
string
SchemeCode
{
get
;
set
;
}
/// <summary>
/// 考核方案名称
/// </summary>
public
string
SchemeName
{
get
;
set
;
}
/// <summary>
/// 考核指标Id
/// </summary>
public
int
ItemId
{
get
;
set
;
}
/// <summary>
/// 指标编码
/// </summary>
public
string
ItemCode
{
get
;
set
;
}
/// <summary>
/// 一级指标名称
/// </summary>
public
string
ItemName1
{
get
;
set
;
}
/// <summary>
/// 二级指标名称
/// </summary>
public
string
ItemName2
{
get
;
set
;
}
/// <summary>
/// 考核分值
/// </summary>
public
decimal
AssessScore
{
get
;
set
;
}
/// <summary>
/// 考核标准
/// </summary>
public
string
AssessNorm
{
get
;
set
;
}
/// <summary>
/// 责任部门核算单元编码
/// </summary>
public
string
UnitCode
{
get
;
set
;
}
/// <summary>
/// 责任部门核算组别
/// </summary>
public
string
UnitType
{
get
;
set
;
}
/// <summary>
/// 责任部门核算单元
/// </summary>
public
string
AccountingUnit
{
get
;
set
;
}
/// <summary>
/// 考核目标核算单元编码
/// </summary>
public
string
TargetUnitCode
{
get
;
set
;
}
/// <summary>
/// 考核目标核算组别
/// </summary>
public
string
TargetUnitType
{
get
;
set
;
}
/// <summary>
/// 考核目标核算单元
/// </summary>
public
string
TargetAccountingUnit
{
get
;
set
;
}
/// <summary>
/// 操作类型 新增 = 1, 修改 = 2, 删除 = 3,
/// </summary>
public
int
OperationType
{
get
;
set
;
}
/// <summary>
/// 操作描述
/// </summary>
public
string
Describe
{
get
;
set
;
}
}
}
performance/Performance.EntityModels/Context/PerformanceDbContext.cs
View file @
a7bd8716
...
@@ -212,6 +212,7 @@ public PerformanceDbContext(DbContextOptions<PerformanceDbContext> options)
...
@@ -212,6 +212,7 @@ public PerformanceDbContext(DbContextOptions<PerformanceDbContext> options)
public
virtual
DbSet
<
report_performance_tags
>
report_performance_tags
{
get
;
set
;
}
public
virtual
DbSet
<
report_performance_tags
>
report_performance_tags
{
get
;
set
;
}
/// <summary> </summary>
/// <summary> </summary>
public
virtual
DbSet
<
report_statistics
>
report_statistics
{
get
;
set
;
}
public
virtual
DbSet
<
report_statistics
>
report_statistics
{
get
;
set
;
}
/// <summary> </summary>
public
virtual
DbSet
<
report_statistics_selection
>
report_statistics_selection
{
get
;
set
;
}
public
virtual
DbSet
<
report_statistics_selection
>
report_statistics_selection
{
get
;
set
;
}
public
virtual
DbSet
<
report_statistics_selection_record
>
report_statistics_selection_record
{
get
;
set
;
}
public
virtual
DbSet
<
report_statistics_selection_record
>
report_statistics_selection_record
{
get
;
set
;
}
public
virtual
DbSet
<
report_statistics_store
>
report_statistics_store
{
get
;
set
;
}
public
virtual
DbSet
<
report_statistics_store
>
report_statistics_store
{
get
;
set
;
}
...
@@ -252,17 +253,33 @@ public PerformanceDbContext(DbContextOptions<PerformanceDbContext> options)
...
@@ -252,17 +253,33 @@ public PerformanceDbContext(DbContextOptions<PerformanceDbContext> options)
public
virtual
DbSet
<
sys_user_hospital
>
sys_user_hospital
{
get
;
set
;
}
public
virtual
DbSet
<
sys_user_hospital
>
sys_user_hospital
{
get
;
set
;
}
/// <summary> 用户角色关联表 </summary>
/// <summary> 用户角色关联表 </summary>
public
virtual
DbSet
<
sys_user_role
>
sys_user_role
{
get
;
set
;
}
public
virtual
DbSet
<
sys_user_role
>
sys_user_role
{
get
;
set
;
}
/// <summary></summary>
public
virtual
DbSet
<
sys_version
>
sys_version
{
get
;
set
;
}
public
virtual
DbSet
<
sys_version
>
sys_version
{
get
;
set
;
}
/// <summary>调动记录表</summary>
public
virtual
DbSet
<
per_attendance
>
per_attendance
{
get
;
set
;
}
public
virtual
DbSet
<
per_attendance
>
per_attendance
{
get
;
set
;
}
/// <summary>考勤结果</summary>
public
virtual
DbSet
<
per_attendance_dept
>
per_attendance_dept
{
get
;
set
;
}
public
virtual
DbSet
<
per_attendance_dept
>
per_attendance_dept
{
get
;
set
;
}
public
virtual
DbSet
<
per_attendance_dept_report
>
per_attendance_dept_report
{
get
;
set
;
}
public
virtual
DbSet
<
per_attendance_dept_report
>
per_attendance_dept_report
{
get
;
set
;
}
public
virtual
DbSet
<
per_attendance_issue
>
per_attendance_issue
{
get
;
set
;
}
public
virtual
DbSet
<
per_attendance_issue
>
per_attendance_issue
{
get
;
set
;
}
/// <summary>考勤类型</summary>
public
virtual
DbSet
<
per_attendance_type
>
per_attendance_type
{
get
;
set
;
}
public
virtual
DbSet
<
per_attendance_type
>
per_attendance_type
{
get
;
set
;
}
/// <summary>考勤记录表</summary>
public
virtual
DbSet
<
per_attendance_vacation
>
per_attendance_vacation
{
get
;
set
;
}
public
virtual
DbSet
<
per_attendance_vacation
>
per_attendance_vacation
{
get
;
set
;
}
/// <summary>绩效分配操作记录表</summary>
public
virtual
DbSet
<
per_allot_action
>
per_allot_action
{
get
;
set
;
}
public
virtual
DbSet
<
per_allot_action
>
per_allot_action
{
get
;
set
;
}
/// <summary>医院其他绩效类型</summary>
public
virtual
DbSet
<
per_apr_amount_type
>
per_apr_amount_type
{
get
;
set
;
}
public
virtual
DbSet
<
per_apr_amount_type
>
per_apr_amount_type
{
get
;
set
;
}
/// <summary>不公示其他绩效类型</summary>
public
virtual
DbSet
<
per_apr_amount_hide_type
>
per_apr_amount_hide_type
{
get
;
set
;
}
public
virtual
DbSet
<
per_apr_amount_hide_type
>
per_apr_amount_hide_type
{
get
;
set
;
}
/// <summary>考核分类</summary>
public
virtual
DbSet
<
per_assess_category
>
per_assess_category
{
get
;
set
;
}
/// <summary>考核方案</summary>
public
virtual
DbSet
<
per_assess_scheme
>
per_assess_scheme
{
get
;
set
;
}
/// <summary>考核方案下发到责任科室指标清单</summary>
public
virtual
DbSet
<
per_assess_issue_scheme
>
per_assess_issue_scheme
{
get
;
set
;
}
/// <summary>考核方案指标项</summary>
public
virtual
DbSet
<
per_assess_scheme_items
>
per_assess_scheme_items
{
get
;
set
;
}
/// <summary>被考核对象</summary>
public
virtual
DbSet
<
per_assess_scheme_target
>
per_assess_scheme_target
{
get
;
set
;
}
}
}
}
}
performance/Performance.EntityModels/Entity/per_assess_category.cs
0 → 100644
View file @
a7bd8716
//-----------------------------------------------------------------------
// <copyright file=" per_assess_category.cs">
// * FileName: 考核类别.cs
// </copyright>
//-----------------------------------------------------------------------
using
System
;
using
System.ComponentModel.DataAnnotations
;
using
System.ComponentModel.DataAnnotations.Schema
;
namespace
Performance.EntityModels
{
/// <summary>
/// 考核类别
/// </summary>
[
Table
(
"per_assess_category"
)]
public
class
per_assess_category
{
/// <summary>
/// 考核类别Id
/// </summary>
[
Key
]
public
int
Id
{
get
;
set
;
}
/// <summary>
/// 绩效ID
/// </summary>
public
Nullable
<
int
>
AllotId
{
get
;
set
;
}
/// <summary>
/// 考核类型编码
/// </summary>
public
string
AssessCode
{
get
;
set
;
}
/// <summary>
/// 考核类型
/// </summary>
public
string
AssessName
{
get
;
set
;
}
/// <summary>
/// 创建人
/// </summary>
public
int
CreateBy
{
get
;
set
;
}
/// <summary>
/// 创建时间
/// </summary>
public
DateTime
?
CreateTime
{
get
;
set
;
}
/// <summary>
/// 最后修改人
/// </summary>
public
int
UpdateBy
{
get
;
set
;
}
/// <summary>
/// 修改时间
/// </summary>
public
DateTime
?
UpdateTime
{
get
;
set
;
}
}
}
performance/Performance.EntityModels/Entity/per_assess_issue_scheme.cs
0 → 100644
View file @
a7bd8716
//-----------------------------------------------------------------------
// <copyright file=" per_assess_scheme.cs">
// * FileName: 考核方案.cs
// </copyright>
//-----------------------------------------------------------------------
using
System
;
using
System.ComponentModel.DataAnnotations
;
using
System.ComponentModel.DataAnnotations.Schema
;
namespace
Performance.EntityModels
{
/// <summary>
/// 考核方案下发到责任科室指标清单
/// </summary>
[
Table
(
"per_assess_issue_scheme"
)]
public
class
per_assess_issue_scheme
{
/// <summary>
/// 考核方案下发到责任科室指标清单Id
/// </summary>
[
Key
]
public
int
Id
{
get
;
set
;
}
/// <summary>
/// 绩效ID
/// </summary>
public
Nullable
<
int
>
AllotId
{
get
;
set
;
}
/// <summary>
/// 考核类型ID
/// </summary>
public
int
AssessId
{
get
;
set
;
}
/// <summary>
/// 考核类型编码
/// </summary>
public
string
AssessCode
{
get
;
set
;
}
/// <summary>
/// 考核类型名称
/// </summary>
public
string
AssessName
{
get
;
set
;
}
/// <summary>
/// 考核方案ID
/// </summary>
public
int
?
SchemeId
{
get
;
set
;
}
/// <summary>
/// 考核方案编码
/// </summary>
public
string
SchemeCode
{
get
;
set
;
}
/// <summary>
/// 考核方案名称
/// </summary>
public
string
SchemeName
{
get
;
set
;
}
/// <summary>
/// 考核指标Id
/// </summary>
public
int
?
ItemId
{
get
;
set
;
}
/// <summary>
/// 指标编码
/// </summary>
public
string
?
ItemCode
{
get
;
set
;
}
/// <summary>
/// 一级指标名称
/// </summary>
public
string
ItemName1
{
get
;
set
;
}
/// <summary>
/// 二级指标名称
/// </summary>
public
string
ItemName2
{
get
;
set
;
}
/// <summary>
/// 考核分值
/// </summary>
public
decimal
AssessScore
{
get
;
set
;
}
/// <summary>
/// 考核标准
/// </summary>
public
string
AssessNorm
{
get
;
set
;
}
/// <summary>
/// 责任部门核算单元编码
/// </summary>
public
string
UnitCode
{
get
;
set
;
}
/// <summary>
/// 责任部门核算组别
/// </summary>
public
string
UnitType
{
get
;
set
;
}
/// <summary>
/// 责任部门核算单元
/// </summary>
public
string
AccountingUnit
{
get
;
set
;
}
/// <summary>
/// 状态
/// </summary>
public
int
State
{
get
;
set
;
}
/// <summary>
/// 创建人
/// </summary>
public
int
CreateBy
{
get
;
set
;
}
/// <summary>
/// 创建时间
/// </summary>
public
DateTime
?
CreateTime
{
get
;
set
;
}
/// <summary>
/// 最后修改人
/// </summary>
public
int
UpdateBy
{
get
;
set
;
}
/// <summary>
/// 修改时间
/// </summary>
public
DateTime
?
UpdateTime
{
get
;
set
;
}
/// <summary>
/// 考核扣分
/// </summary>
public
decimal
?
Score
{
get
;
set
;
}
/// <summary>
/// 扣分原因
/// </summary>
public
string
?
ScoreRemark
{
get
;
set
;
}
/// <summary>
/// 考核目标核算单元编码
/// </summary>
public
string
TargetUnitCode
{
get
;
set
;
}
/// <summary>
/// 考核目标核算组别
/// </summary>
public
string
TargetUnitType
{
get
;
set
;
}
/// <summary>
/// 考核目标核算单元
/// </summary>
public
string
TargetAccountingUnit
{
get
;
set
;
}
/// <summary>
/// 提交人
/// </summary>
public
int
?
SubmitBy
{
get
;
set
;
}
/// <summary>
/// 提交时间
/// </summary>
public
DateTime
?
SubmitTime
{
get
;
set
;
}
/// <summary>
/// 审核人
/// </summary>
public
string
?
AuditBy
{
get
;
set
;
}
/// <summary>
/// 审核时间
/// </summary>
public
DateTime
?
AuditTime
{
get
;
set
;
}
/// <summary>
/// 审核或驳回原因
/// </summary>
public
string
?
AuditRemark
{
get
;
set
;
}
}
}
performance/Performance.EntityModels/Entity/per_assess_scheme.cs
0 → 100644
View file @
a7bd8716
//-----------------------------------------------------------------------
// <copyright file=" per_assess_scheme.cs">
// * FileName: 考核方案.cs
// </copyright>
//-----------------------------------------------------------------------
using
System
;
using
System.ComponentModel.DataAnnotations
;
using
System.ComponentModel.DataAnnotations.Schema
;
namespace
Performance.EntityModels
{
/// <summary>
/// 考核方案
/// </summary>
[
Table
(
"per_assess_scheme"
)]
public
class
per_assess_scheme
{
/// <summary>
/// 考核方案Id
/// </summary>
[
Key
]
public
int
Id
{
get
;
set
;
}
/// <summary>
/// 绩效ID
/// </summary>
public
Nullable
<
int
>
AllotId
{
get
;
set
;
}
/// <summary>
/// 考核类型ID
/// </summary>
public
int
AssessId
{
get
;
set
;
}
/// <summary>
/// 考核方案编码
/// </summary>
public
string
SchemeCode
{
get
;
set
;
}
/// <summary>
/// 考核方案名称
/// </summary>
public
string
SchemeName
{
get
;
set
;
}
/// <summary>
/// 考核方案备注
/// </summary>
public
string
SchemeRemarks
{
get
;
set
;
}
/// <summary>
/// 创建人
/// </summary>
public
int
CreateBy
{
get
;
set
;
}
/// <summary>
/// 创建时间
/// </summary>
public
DateTime
?
CreateTime
{
get
;
set
;
}
/// <summary>
/// 最后修改人
/// </summary>
public
int
UpdateBy
{
get
;
set
;
}
/// <summary>
/// 修改时间
/// </summary>
public
DateTime
?
UpdateTime
{
get
;
set
;
}
}
}
performance/Performance.EntityModels/Entity/per_assess_scheme_items.cs
0 → 100644
View file @
a7bd8716
//-----------------------------------------------------------------------
// <copyright file=" per_assess_scheme_items.cs">
// * FileName: 考核方案指标项.cs
// </copyright>
//-----------------------------------------------------------------------
using
System
;
using
System.ComponentModel.DataAnnotations
;
using
System.ComponentModel.DataAnnotations.Schema
;
namespace
Performance.EntityModels
{
/// <summary>
/// 考核方案指标项
/// </summary>
[
Table
(
"per_assess_scheme_items"
)]
public
class
per_assess_scheme_items
{
/// <summary>
/// 指标项Id
/// </summary>
[
Key
]
public
int
Id
{
get
;
set
;
}
/// <summary>
/// 绩效ID
/// </summary>
public
Nullable
<
int
>
AllotId
{
get
;
set
;
}
/// <summary>
/// 考核类型ID
/// </summary>
public
int
AssessId
{
get
;
set
;
}
/// <summary>
/// 考核方案Id
/// </summary>
public
int
SchemeId
{
get
;
set
;
}
/// <summary>
/// 指标编码
/// </summary>
public
string
ItemCode
{
get
;
set
;
}
/// <summary>
/// 一级指标名称
/// </summary>
public
string
ItemName1
{
get
;
set
;
}
/// <summary>
/// 二级指标名称
/// </summary>
public
string
ItemName2
{
get
;
set
;
}
/// <summary>
/// 考核分值
/// </summary>
public
decimal
AssessScore
{
get
;
set
;
}
/// <summary>
/// 考核标准
/// </summary>
public
string
AssessNorm
{
get
;
set
;
}
/// <summary>
/// 责任部门核算单元编码
/// </summary>
public
string
UnitCode
{
get
;
set
;
}
/// <summary>
/// 责任部门核算组别
/// </summary>
public
string
UnitType
{
get
;
set
;
}
/// <summary>
/// 责任部门核算单元
/// </summary>
public
string
AccountingUnit
{
get
;
set
;
}
/// <summary>
/// 创建人
/// </summary>
public
int
CreateBy
{
get
;
set
;
}
/// <summary>
/// 创建时间
/// </summary>
public
DateTime
?
CreateTime
{
get
;
set
;
}
/// <summary>
/// 最后修改人
/// </summary>
public
int
UpdateBy
{
get
;
set
;
}
/// <summary>
/// 修改时间
/// </summary>
public
DateTime
?
UpdateTime
{
get
;
set
;
}
}
}
performance/Performance.EntityModels/Entity/per_assess_scheme_target.cs
0 → 100644
View file @
a7bd8716
//-----------------------------------------------------------------------
// <copyright file=" per_assess_scheme_target.cs">
// * FileName: 被考核对象.cs
// </copyright>
//-----------------------------------------------------------------------
using
System
;
using
System.ComponentModel.DataAnnotations
;
using
System.ComponentModel.DataAnnotations.Schema
;
namespace
Performance.EntityModels
{
/// <summary>
/// 被考核对象
/// </summary>
[
Table
(
"per_assess_scheme_target"
)]
public
class
per_assess_scheme_target
{
/// <summary>
/// 被考核对象Id
/// </summary>
[
Key
]
public
int
Id
{
get
;
set
;
}
/// <summary>
/// 绩效ID
/// </summary>
public
Nullable
<
int
>
AllotId
{
get
;
set
;
}
/// <summary>
/// 考核类型ID
/// </summary>
public
int
AssessId
{
get
;
set
;
}
/// <summary>
/// 考核方案Id
/// </summary>
public
int
SchemeId
{
get
;
set
;
}
/// <summary>
/// 考核目标核算单元编码
/// </summary>
public
string
UnitCode
{
get
;
set
;
}
/// <summary>
/// 考核目标核算组别
/// </summary>
public
string
UnitType
{
get
;
set
;
}
/// <summary>
/// 考核目标核算单元
/// </summary>
public
string
AccountingUnit
{
get
;
set
;
}
/// <summary>
/// 创建人
/// </summary>
public
int
CreateBy
{
get
;
set
;
}
/// <summary>
/// 创建时间
/// </summary>
public
DateTime
?
CreateTime
{
get
;
set
;
}
/// <summary>
/// 最后修改人
/// </summary>
public
int
UpdateBy
{
get
;
set
;
}
/// <summary>
/// 修改时间
/// </summary>
public
DateTime
?
UpdateTime
{
get
;
set
;
}
}
}
performance/Performance.EntityModels/Other/view_assess_issue.cs
0 → 100644
View file @
a7bd8716
using
Performance.EntityModels.Entity
;
using
System
;
namespace
Performance.EntityModels.Other
{
public
class
view_assess_issue
{
/// <summary>
/// 绩效ID
/// </summary>
public
Nullable
<
int
>
AllotId
{
get
;
set
;
}
/// <summary>
/// 考核类型编码
/// </summary>
public
string
AssessCode
{
get
;
set
;
}
/// <summary>
/// 考核类型
/// </summary>
public
string
AssessName
{
get
;
set
;
}
/// <summary>
/// 考核类型ID
/// </summary>
public
int
AssessId
{
get
;
set
;
}
/// <summary>
/// 考核方案ID
/// </summary>
public
int
SchemeId
{
get
;
set
;
}
/// <summary>
/// 考核方案编码
/// </summary>
public
string
SchemeCode
{
get
;
set
;
}
/// <summary>
/// 考核方案名称
/// </summary>
public
string
SchemeName
{
get
;
set
;
}
/// <summary>
/// 指标Id
/// </summary>
public
int
ItemId
{
get
;
set
;
}
/// <summary>
/// 指标编码
/// </summary>
public
string
ItemCode
{
get
;
set
;
}
/// <summary>
/// 一级指标名称
/// </summary>
public
string
ItemName1
{
get
;
set
;
}
/// <summary>
/// 二级指标名称
/// </summary>
public
string
ItemName2
{
get
;
set
;
}
/// <summary>
/// 考核分值
/// </summary>
public
decimal
AssessScore
{
get
;
set
;
}
/// <summary>
/// 考核标准
/// </summary>
public
string
AssessNorm
{
get
;
set
;
}
/// <summary>
/// 责任部门核算单元编码
/// </summary>
public
string
UnitCode
{
get
;
set
;
}
/// <summary>
/// 责任部门核算组别
/// </summary>
public
string
UnitType
{
get
;
set
;
}
/// <summary>
/// 责任部门核算单元
/// </summary>
public
string
AccountingUnit
{
get
;
set
;
}
/// <summary>
/// 考核目标核算单元编码
/// </summary>
public
string
TargetUnitCode
{
get
;
set
;
}
/// <summary>
/// 考核目标核算组别
/// </summary>
public
string
TargetUnitType
{
get
;
set
;
}
/// <summary>
/// 考核目标核算单元
/// </summary>
public
string
TargetAccountingUnit
{
get
;
set
;
}
}
}
performance/Performance.EntityModels/Other/view_assess_result.cs
0 → 100644
View file @
a7bd8716
using
Performance.EntityModels.Entity
;
using
System
;
namespace
Performance.EntityModels.Other
{
public
class
view_assess_result
{
/// <summary>
/// 绩效ID
/// </summary>
public
Nullable
<
int
>
AllotId
{
get
;
set
;
}
/// <summary>
/// 考核类型ID
/// </summary>
public
int
AssessId
{
get
;
set
;
}
/// <summary>
/// 考核方案ID
/// </summary>
public
int
SchemeId
{
get
;
set
;
}
/// <summary>
/// 指标Id
/// </summary>
public
int
ItemId
{
get
;
set
;
}
/// 二级指标名称
/// </summary>
public
string
ItemName2
{
get
;
set
;
}
/// <summary>
/// 状态
/// </summary>
public
int
State
{
get
;
set
;
}
/// <summary>
/// 分值标准
/// </summary>
public
decimal
?
AssessScore
{
get
;
set
;
}
/// <summary>
/// 扣分值
/// </summary>
public
decimal
?
Score
{
get
;
set
;
}
/// <summary>
/// 责任部门核算单元编码
/// </summary>
public
string
UnitCode
{
get
;
set
;
}
/// <summary>
/// 责任部门核算组别
/// </summary>
public
string
UnitType
{
get
;
set
;
}
/// <summary>
/// 责任部门核算单元
/// </summary>
public
string
AccountingUnit
{
get
;
set
;
}
/// <summary>
/// 考核目标核算单元编码
/// </summary>
public
string
TargetUnitCode
{
get
;
set
;
}
/// <summary>
/// 考核目标核算组别
/// </summary>
public
string
TargetUnitType
{
get
;
set
;
}
/// <summary>
/// 考核目标核算单元
/// </summary>
public
string
TargetAccountingUnit
{
get
;
set
;
}
}
}
performance/Performance.Infrastructure/Performance.Infrastructure.csproj
View file @
a7bd8716
...
@@ -7,6 +7,8 @@
...
@@ -7,6 +7,8 @@
<ItemGroup>
<ItemGroup>
<PackageReference Include="Dapper" Version="2.0.123" />
<PackageReference Include="Dapper" Version="2.0.123" />
<PackageReference Include="Dapper.Contrib" Version="2.0.78" />
<PackageReference Include="Dapper.Contrib" Version="2.0.78" />
<PackageReference Include="EPPlus" Version="4.5.3.2" />
<PackageReference Include="Masuit.Tools.Core" Version="2.4.4" />
<PackageReference Include="Microsoft.EntityFrameworkCore" Version="5.0.10" />
<PackageReference Include="Microsoft.EntityFrameworkCore" Version="5.0.10" />
<PackageReference Include="MySql.Data" Version="8.0.27" />
<PackageReference Include="MySql.Data" Version="8.0.27" />
<PackageReference Include="Pomelo.EntityFrameworkCore.MySql" Version="5.0.1" />
<PackageReference Include="Pomelo.EntityFrameworkCore.MySql" Version="5.0.1" />
...
@@ -15,7 +17,6 @@
...
@@ -15,7 +17,6 @@
<PackageReference Include="Newtonsoft.Json" Version="13.0.1" />
<PackageReference Include="Newtonsoft.Json" Version="13.0.1" />
<PackageReference Include="AutoMapper" Version="10.1.1" />
<PackageReference Include="AutoMapper" Version="10.1.1" />
<PackageReference Include="FluentValidation.AspNetCore" Version="10.3.3" />
<PackageReference Include="FluentValidation.AspNetCore" Version="10.3.3" />
<PackageReference Include="EPPlus" Version="4.5.3.2" />
<PackageReference Include="AutoMapper.Extensions.Microsoft.DependencyInjection" Version="8.1.1" />
<PackageReference Include="AutoMapper.Extensions.Microsoft.DependencyInjection" Version="8.1.1" />
<PackageReference Include="Microsoft.AspNetCore.Authentication.JwtBearer" Version="5.0.10" />
<PackageReference Include="Microsoft.AspNetCore.Authentication.JwtBearer" Version="5.0.10" />
<PackageReference Include="Microsoft.AspNetCore.Mvc.NewtonsoftJson" Version="5.0.10" />
<PackageReference Include="Microsoft.AspNetCore.Mvc.NewtonsoftJson" Version="5.0.10" />
...
...
performance/Performance.Repository/PerforPerAllotRepository.cs
View file @
a7bd8716
...
@@ -17,7 +17,7 @@
...
@@ -17,7 +17,7 @@
namespace
Performance.Repository
namespace
Performance.Repository
{
{
/// <summary>
/// <summary>
/// sys_allot Repository
/// sys_allot
(per_allot)
Repository
/// </summary>
/// </summary>
public
partial
class
PerforPerallotRepository
:
PerforRepository
<
per_allot
>
public
partial
class
PerforPerallotRepository
:
PerforRepository
<
per_allot
>
{
{
...
@@ -316,7 +316,11 @@ public IEnumerable<string> GetSecondWorkloadMaps(int hospitalId)
...
@@ -316,7 +316,11 @@ public IEnumerable<string> GetSecondWorkloadMaps(int hospitalId)
/// <summary>
/// 考勤视图
/// </summary>
/// <param name="allotId"></param>
/// <returns></returns>
public
IEnumerable
<
view_attendance
>
GetAttendance
(
int
allotId
)
public
IEnumerable
<
view_attendance
>
GetAttendance
(
int
allotId
)
{
{
var
connection
=
context
.
Database
.
GetDbConnection
();
var
connection
=
context
.
Database
.
GetDbConnection
();
...
@@ -332,6 +336,47 @@ public IEnumerable<view_attendance> GetAttendance(int allotId)
...
@@ -332,6 +336,47 @@ public IEnumerable<view_attendance> GetAttendance(int allotId)
throw
;
throw
;
}
}
}
}
/// <summary>
/// 考核视图
/// </summary>
/// <param name="allotId"></param>
/// <returns></returns>
public
IEnumerable
<
view_assess_issue
>
GetAssessIssue
(
int
allotId
)
{
var
connection
=
context
.
Database
.
GetDbConnection
();
if
(
connection
.
State
!=
ConnectionState
.
Open
)
connection
.
Open
();
try
{
string
query
=
$@"SELECT * FROM view_assess_issue where AllotId = @allotId"
;
return
connection
.
Query
<
view_assess_issue
>(
query
,
new
{
allotId
},
commandTimeout
:
60
*
60
);
}
catch
(
Exception
)
{
throw
;
}
}
/// <summary>
/// 考核结果视图
/// </summary>
/// <param name="allotId"></param>
/// <returns></returns>
public
IEnumerable
<
view_assess_result
>
GetAssessResult
(
int
allotId
)
{
var
connection
=
context
.
Database
.
GetDbConnection
();
if
(
connection
.
State
!=
ConnectionState
.
Open
)
connection
.
Open
();
try
{
string
query
=
$@"SELECT * FROM view_assess_result where AllotId = @allotId"
;
return
connection
.
Query
<
view_assess_result
>(
query
,
new
{
allotId
},
commandTimeout
:
60
*
60
);
}
catch
(
Exception
)
{
throw
;
}
}
/// <summary>
/// <summary>
/// 查询人员字典
/// 查询人员字典
/// </summary>
/// </summary>
...
@@ -428,5 +473,26 @@ public void PerAttendanceIssueBackup(int allotId)
...
@@ -428,5 +473,26 @@ public void PerAttendanceIssueBackup(int allotId)
}
}
}
}
}
}
/// <summary>
/// 考核-考核下发备份
/// </summary>
/// <param name="allot"></param>
public
void
PerAssessIssueSchemeBackup
(
int
allotId
)
{
using
(
var
connection
=
context
.
Database
.
GetDbConnection
())
{
if
(
connection
.
State
!=
ConnectionState
.
Open
)
connection
.
Open
();
try
{
connection
.
Execute
(
"call proc_assess_issue_scheme_backup(@allotId);"
,
new
{
allotId
},
commandTimeout
:
60
*
60
);
}
catch
(
Exception
)
{
throw
;
}
}
}
}
}
}
}
\ No newline at end of file
performance/Performance.Repository/Repository/PerfoPperAttendanceTypeRepository.cs
View file @
a7bd8716
...
@@ -8,11 +8,11 @@
...
@@ -8,11 +8,11 @@
namespace
Performance.Repository.Repository
namespace
Performance.Repository.Repository
{
{
public
partial
class
PerfoPperAttendanceTypeRepository
:
PerforRepository
<
per_attendance_type
>
{
/// <summary>
/// <summary>
/// per_attendance_type Repository
/// per_attendance_type Repository
/// </summary>
/// </summary>
public
partial
class
PerfoPperAttendanceTypeRepository
:
PerforRepository
<
per_attendance_type
>
{
public
PerfoPperAttendanceTypeRepository
(
PerformanceDbContext
context
)
:
base
(
context
)
public
PerfoPperAttendanceTypeRepository
(
PerformanceDbContext
context
)
:
base
(
context
)
{
{
}
}
...
...
performance/Performance.Repository/Repository/PerforPerAssessCategoryRepository.cs
0 → 100644
View file @
a7bd8716
//-----------------------------------------------------------------------
// <copyright file=" per_assess_category.cs">
// * FileName: per_assess_category.cs
// </copyright>
//-----------------------------------------------------------------------
using
Performance.EntityModels
;
namespace
Performance.Repository
{
/// <summary>
/// per_assess_category Repository
/// </summary>
public
partial
class
PerforPerAssessCategoryRepository
:
PerforRepository
<
per_assess_category
>
{
public
PerforPerAssessCategoryRepository
(
PerformanceDbContext
context
)
:
base
(
context
)
{
}
}
}
performance/Performance.Repository/Repository/PerforPerAssessIssueSchemeRepository.cs
0 → 100644
View file @
a7bd8716
//-----------------------------------------------------------------------
// <copyright file=" per_assess_issue_scheme.cs">
// * FileName: per_assess_issue_scheme.cs
// </copyright>
//-----------------------------------------------------------------------
using
Performance.EntityModels
;
namespace
Performance.Repository
{
/// <summary>
/// per_assess_issue_scheme Repository
/// </summary>
public
partial
class
PerforPerAssessIssueSchemeRepository
:
PerforRepository
<
per_assess_issue_scheme
>
{
public
PerforPerAssessIssueSchemeRepository
(
PerformanceDbContext
context
)
:
base
(
context
)
{
}
}
}
performance/Performance.Repository/Repository/PerforPerAssessSchemeItemsRepository.cs
0 → 100644
View file @
a7bd8716
//-----------------------------------------------------------------------
// <copyright file=" per_assess_scheme_items.cs">
// * FileName: per_assess_scheme_items.cs
// </copyright>
//-----------------------------------------------------------------------
using
Performance.EntityModels
;
namespace
Performance.Repository
{
/// <summary>
/// per_assess_scheme_items Repository
/// </summary>
public
partial
class
PerforPerAssessSchemeItemsRepository
:
PerforRepository
<
per_assess_scheme_items
>
{
public
PerforPerAssessSchemeItemsRepository
(
PerformanceDbContext
context
)
:
base
(
context
)
{
}
}
}
performance/Performance.Repository/Repository/PerforPerAssessSchemeRepository.cs
0 → 100644
View file @
a7bd8716
//-----------------------------------------------------------------------
// <copyright file=" per_assess_scheme.cs">
// * FileName: per_assess_scheme.cs
// </copyright>
//-----------------------------------------------------------------------
using
Performance.EntityModels
;
namespace
Performance.Repository
{
/// <summary>
/// per_assess_scheme Repository
/// </summary>
public
partial
class
PerforPerAssessSchemeRepository
:
PerforRepository
<
per_assess_scheme
>
{
public
PerforPerAssessSchemeRepository
(
PerformanceDbContext
context
)
:
base
(
context
)
{
}
}
}
performance/Performance.Repository/Repository/PerforPerAssessSchemeTargetRepository.cs
0 → 100644
View file @
a7bd8716
//-----------------------------------------------------------------------
// <copyright file=" per_assess_scheme_target.cs">
// * FileName: per_assess_scheme_target.cs
// </copyright>
//-----------------------------------------------------------------------
using
Performance.EntityModels
;
namespace
Performance.Repository
{
/// <summary>
/// per_assess_scheme_target Repository
/// </summary>
public
partial
class
PerforPerAssessSchemeTargetRepository
:
PerforRepository
<
per_assess_scheme_target
>
{
public
PerforPerAssessSchemeTargetRepository
(
PerformanceDbContext
context
)
:
base
(
context
)
{
}
}
}
performance/Performance.Services/AssessNewService.cs
0 → 100644
View file @
a7bd8716
using
AutoMapper
;
using
Masuit.Tools
;
using
Masuit.Tools.Models
;
using
Microsoft.AspNetCore.Hosting
;
using
Microsoft.AspNetCore.Http
;
using
Microsoft.Extensions.Logging
;
using
Newtonsoft.Json
;
using
OfficeOpenXml
;
using
OfficeOpenXml.Style
;
using
Performance.DtoModels
;
using
Performance.DtoModels.Request
;
using
Performance.EntityModels
;
using
Performance.EntityModels.Other
;
using
Performance.Infrastructure
;
using
Performance.Repository
;
using
System
;
using
System.Collections.Generic
;
using
System.Data
;
using
System.IO
;
using
System.Linq
;
using
System.Reflection
;
namespace
Performance.Services
{
public
class
AssessNewService
:
IAutoInjection
{
private
readonly
IMapper
mapper
;
private
readonly
ILogger
<
AssessNewService
>
logger
;
private
readonly
IWebHostEnvironment
evn
;
private
readonly
PerforUserRepository
_userRepository
;
private
readonly
PerforCofaccountingRepository
cofaccountingRepository
;
private
readonly
PerforPerallotRepository
perforPerallotRepository
;
private
readonly
PerforPerAssessCategoryRepository
perforPerAssessCategoryRepository
;
private
readonly
PerforPerAssessSchemeRepository
perforPerAssessSchemeRepository
;
private
readonly
PerforPerAssessSchemeItemsRepository
perforPerAssessSchemeItemsRepository
;
private
readonly
PerforPerAssessSchemeTargetRepository
perforPerAssessSchemeTargetRepository
;
private
readonly
PerforPerAssessIssueSchemeRepository
perforPerAssessIssueSchemeRepository
;
public
AssessNewService
(
IMapper
mapper
,
ILogger
<
AssessNewService
>
logger
,
IWebHostEnvironment
evn
,
PerforPerAssessCategoryRepository
perforPerAssessCategoryRepository
,
PerforPerallotRepository
perforPerallotRepository
,
PerforPerAssessSchemeRepository
perforPerAssessSchemeRepository
,
PerforPerAssessSchemeItemsRepository
perforPerAssessSchemeItemsRepository
,
PerforPerAssessSchemeTargetRepository
perforPerAssessSchemeTargetRepository
,
PerforCofaccountingRepository
cofaccountingRepository
,
PerforPerAssessIssueSchemeRepository
perforPerAssessIssueSchemeRepository
,
PerforUserRepository
userRepository
)
{
this
.
mapper
=
mapper
;
this
.
logger
=
logger
;
this
.
evn
=
evn
;
this
.
perforPerAssessCategoryRepository
=
perforPerAssessCategoryRepository
;
this
.
perforPerallotRepository
=
perforPerallotRepository
;
this
.
perforPerAssessSchemeRepository
=
perforPerAssessSchemeRepository
;
this
.
perforPerAssessSchemeItemsRepository
=
perforPerAssessSchemeItemsRepository
;
this
.
perforPerAssessSchemeTargetRepository
=
perforPerAssessSchemeTargetRepository
;
this
.
cofaccountingRepository
=
cofaccountingRepository
;
this
.
perforPerAssessIssueSchemeRepository
=
perforPerAssessIssueSchemeRepository
;
_userRepository
=
userRepository
;
}
#
region
考核类别
public
ApiResponse
<
List
<
per_assess_category
>>
CategoryList
(
int
allotId
)
{
var
result
=
perforPerAssessCategoryRepository
.
GetEntities
(
t
=>
t
.
AllotId
==
allotId
);
if
(
result
!=
null
)
result
=
result
.
OrderByDescending
(
w
=>
w
.
UpdateTime
).
ToList
();
return
new
ApiResponse
<
List
<
per_assess_category
>>(
ResponseType
.
OK
,
result
);
}
public
ApiResponse
CategoryAdd
(
AddAssessCategoryRequest
request
,
int
userid
)
{
var
allot
=
perforPerallotRepository
.
GetEntity
(
w
=>
w
.
ID
==
request
.
AllotId
);
if
(
allot
==
null
)
throw
new
PerformanceException
(
"当前绩效记录不存在"
);
var
categoryData
=
perforPerAssessCategoryRepository
.
GetEntities
();
var
temp
=
categoryData
.
FirstOrDefault
(
w
=>
w
.
AllotId
==
request
.
AllotId
&&
w
.
AssessName
==
request
.
Category
);
if
(
temp
!=
null
)
throw
new
PerformanceException
(
"当前考核类别已存在"
);
int
codeMax
=
0
;
if
(
categoryData
.
Any
())
int
.
TryParse
(
categoryData
.
Max
(
w
=>
w
.
AssessCode
.
Substring
(
1
)),
out
codeMax
);
string
assessCode
=
codeMax
<=
99
?
$"A
{(
codeMax
+
1
):
D3
}
"
:
$"A
{
codeMax
+
1
}
"
;
var
dateTime
=
DateTime
.
Now
;
var
per_assess_category
=
new
per_assess_category
()
{
AllotId
=
request
.
AllotId
,
AssessCode
=
assessCode
,
AssessName
=
request
.
Category
,
CreateBy
=
userid
,
CreateTime
=
dateTime
,
UpdateBy
=
userid
,
UpdateTime
=
dateTime
,
};
if
(
perforPerAssessCategoryRepository
.
Add
(
per_assess_category
))
return
new
ApiResponse
(
ResponseType
.
OK
,
"添加成功"
);
else
return
new
ApiResponse
(
ResponseType
.
Fail
,
"添加失败"
);
}
public
ApiResponse
CategoryUpdate
(
UpdateAssessCategoryRequest
request
,
int
userid
)
{
var
allot
=
perforPerallotRepository
.
GetEntity
(
w
=>
w
.
ID
==
request
.
AllotId
);
if
(
allot
==
null
)
throw
new
PerformanceException
(
"当前绩效记录不存在"
);
var
any
=
perforPerAssessCategoryRepository
.
GetEntity
(
w
=>
w
.
Id
==
request
.
CategoryId
);
if
(
any
==
null
)
throw
new
PerformanceException
(
"当前操作错误,请刷新后重试"
);
any
.
AllotId
=
request
.
AllotId
;
any
.
AssessName
=
request
.
Category
;
any
.
UpdateBy
=
userid
;
var
dateTime
=
DateTime
.
Now
;
any
.
UpdateTime
=
dateTime
;
if
(
perforPerAssessCategoryRepository
.
Update
(
any
))
return
new
ApiResponse
(
ResponseType
.
OK
,
"修改成功"
);
else
return
new
ApiResponse
(
ResponseType
.
Fail
,
"修改失败"
);
}
public
ApiResponse
CategoryDelete
(
BatchAssessCategoryRequest
request
)
{
var
temp
=
perforPerAssessSchemeRepository
.
GetEntity
(
w
=>
request
.
CategoryId
.
Contains
(
w
.
AssessId
));
if
(
temp
!=
null
||
temp
?.
Id
>
0
)
throw
new
PerformanceException
(
"请先删除类别下的方案"
);
var
any
=
perforPerAssessCategoryRepository
.
GetEntities
(
w
=>
request
.
CategoryId
.
Contains
(
w
.
Id
));
if
(
any
==
null
)
throw
new
PerformanceException
(
"当前操作错误,请刷新后重试"
);
if
(
perforPerAssessCategoryRepository
.
RemoveRange
(
any
.
ToArray
()))
return
new
ApiResponse
(
ResponseType
.
OK
,
"删除成功"
);
else
return
new
ApiResponse
(
ResponseType
.
Fail
,
"删除失败"
);
}
public
ApiResponse
<
List
<
PerAssessmentStatisticsResponse
>>
CategoryIssueCheck
(
UpdateAssessCategoryRequest
request
)
{
var
allot
=
perforPerallotRepository
.
GetEntity
(
w
=>
w
.
ID
==
request
.
AllotId
);
if
(
allot
==
null
)
throw
new
PerformanceException
(
"当前绩效记录不存在"
);
var
issueDatas
=
perforPerallotRepository
.
GetAssessIssue
(
request
.
AllotId
);
var
issueSchemeDatas
=
perforPerAssessIssueSchemeRepository
.
GetEntities
(
w
=>
w
.
AllotId
==
request
.
AllotId
);
if
(
request
.
CategoryId
>
0
)
{
issueDatas
=
issueDatas
.
Where
(
w
=>
w
.
AssessId
==
request
.
CategoryId
).
ToList
();
issueSchemeDatas
=
issueSchemeDatas
.
Where
(
w
=>
w
.
AssessId
==
request
.
CategoryId
).
ToList
();
}
if
(
request
.
SchemeId
>
0
)
{
issueDatas
=
issueDatas
.
Where
(
w
=>
w
.
SchemeId
==
request
.
SchemeId
).
ToList
();
issueSchemeDatas
=
issueSchemeDatas
.
Where
(
w
=>
w
.
SchemeId
==
request
.
SchemeId
).
ToList
();
}
if
(
issueDatas
.
Count
()
<=
0
||
!
issueDatas
.
Any
())
throw
new
PerformanceException
(
"未设置考核内容或未设置考核单元!"
);
var
statisticdates
=
new
List
<
PerAssessmentStatisticsResponse
>();
Func
<
per_assess_issue_scheme
,
view_assess_issue
,
bool
>
func
=
(
schemes
,
issues
)
=>
{
var
result
=
schemes
.
AssessId
==
issues
.
AssessId
&&
schemes
.
AssessCode
==
issues
.
AssessCode
&&
schemes
.
AssessName
==
issues
.
AssessName
&&
schemes
.
SchemeCode
==
issues
.
SchemeCode
&&
schemes
.
SchemeName
==
issues
.
SchemeName
&&
schemes
.
ItemCode
==
issues
.
ItemCode
&&
schemes
.
ItemName1
==
issues
.
ItemName1
&&
schemes
.
ItemName2
==
issues
.
ItemName2
&&
schemes
.
AssessScore
==
issues
.
AssessScore
&&
schemes
.
AssessNorm
==
issues
.
AssessNorm
&&
schemes
.
UnitCode
==
issues
.
UnitCode
&&
schemes
.
UnitType
==
issues
.
UnitType
&&
schemes
.
AccountingUnit
==
issues
.
AccountingUnit
&&
schemes
.
TargetUnitCode
==
issues
.
TargetUnitCode
&&
schemes
.
TargetUnitType
==
issues
.
TargetUnitType
&&
schemes
.
TargetAccountingUnit
==
issues
.
TargetAccountingUnit
;
return
result
;
};
statisticdates
=
issueDatas
.
Select
(
issue
=>
{
var
issueData
=
issueDatas
.
SingleOrDefault
(
w
=>
w
.
ItemCode
==
issue
.
ItemCode
&&
w
.
TargetUnitType
==
issue
.
TargetUnitType
&&
w
.
TargetAccountingUnit
==
issue
.
TargetAccountingUnit
);
var
issueschemeData
=
issueSchemeDatas
.
SingleOrDefault
(
w
=>
w
.
ItemCode
==
issue
.
ItemCode
&&
w
.
TargetUnitType
==
issue
.
TargetUnitType
&&
w
.
TargetAccountingUnit
==
issue
.
TargetAccountingUnit
);
if
(
issueschemeData
==
null
)
return
new
PerAssessmentStatisticsResponse
(
issueData
);
if
(
issueschemeData
!=
null
&&
issueData
!=
null
)
{
if
(
func
(
issueschemeData
,
issueData
))
return
null
;
return
new
PerAssessmentStatisticsResponse
(
issueData
)
{
Id
=
issueschemeData
.
Id
,
OperationType
=
(
int
)
Attendance
.
OperationType
.
修改
,
Describe
=
"修改数据"
,
};
}
return
null
;
}).
ToList
();
foreach
(
var
scheme
in
issueSchemeDatas
)
{
var
issueData
=
issueDatas
.
SingleOrDefault
(
w
=>
w
.
ItemCode
==
scheme
.
ItemCode
&&
w
.
TargetUnitType
==
scheme
.
TargetUnitType
&&
w
.
TargetAccountingUnit
==
scheme
.
TargetAccountingUnit
);
var
issueschemeData
=
issueSchemeDatas
.
SingleOrDefault
(
w
=>
w
.
ItemCode
==
scheme
.
ItemCode
&&
w
.
TargetUnitType
==
scheme
.
TargetUnitType
&&
w
.
TargetAccountingUnit
==
scheme
.
TargetAccountingUnit
);
if
(
issueData
==
null
)
{
statisticdates
.
Add
(
new
PerAssessmentStatisticsResponse
(
issueschemeData
));
}
}
statisticdates
=
statisticdates
.
Where
(
r
=>
r
!=
null
).
ToList
();
return
new
ApiResponse
<
List
<
PerAssessmentStatisticsResponse
>>(
ResponseType
.
OK
,
statisticdates
);
}
//考核下发(把当前考核类别下所有方案下发)
public
ApiResponse
CategoryIssueConfirm
(
UpdateAssessCategoryRequest
request
,
int
userid
)
{
var
categoryIssueCheck
=
CategoryIssueCheck
(
request
).
Data
;
if
(
categoryIssueCheck
==
null
)
throw
new
PerformanceException
(
"暂无数据需要下发"
);
var
schemedatas
=
perforPerAssessIssueSchemeRepository
.
GetEntities
(
w
=>
w
.
AllotId
==
request
.
AllotId
);
if
(
request
.
CategoryId
>
0
)
{
schemedatas
=
schemedatas
.
Where
(
w
=>
w
.
AssessId
==
request
.
CategoryId
).
ToList
();
}
if
(
request
.
SchemeId
>
0
)
{
schemedatas
=
schemedatas
.
Where
(
w
=>
w
.
SchemeId
==
request
.
SchemeId
).
ToList
();
}
var
insertIssueChecks
=
categoryIssueCheck
.
Where
(
w
=>
w
.
OperationType
==
(
int
)
Attendance
.
OperationType
.
新增
).
ToList
();
var
updateIssueChecks
=
categoryIssueCheck
.
Where
(
w
=>
w
.
OperationType
==
(
int
)
Attendance
.
OperationType
.
修改
).
ToList
();
var
deleteIssueChecks
=
categoryIssueCheck
.
Where
(
w
=>
w
.
OperationType
==
(
int
)
Attendance
.
OperationType
.
删除
).
Select
(
w
=>
w
.
Id
).
ToList
();
var
dateTime
=
DateTime
.
Now
;
if
(
insertIssueChecks
.
Any
())
{
var
inserts
=
insertIssueChecks
.
Select
(
item
=>
{
return
new
per_assess_issue_scheme
()
{
AllotId
=
item
.
AllotId
,
AssessId
=
item
.
AssessId
,
AssessCode
=
item
.
AssessCode
,
AssessName
=
item
.
AssessName
,
SchemeId
=
item
.
SchemeId
,
SchemeCode
=
item
.
SchemeCode
,
SchemeName
=
item
.
SchemeName
,
ItemId
=
item
.
ItemId
,
ItemCode
=
item
.
ItemCode
,
ItemName1
=
item
.
ItemName1
,
ItemName2
=
item
.
ItemName2
,
AssessScore
=
item
.
AssessScore
,
AssessNorm
=
item
.
AssessNorm
,
UnitCode
=
item
.
UnitCode
,
UnitType
=
item
.
UnitType
,
Score
=
null
,
ScoreRemark
=
""
,
AccountingUnit
=
item
.
AccountingUnit
,
TargetUnitCode
=
item
.
TargetUnitCode
,
TargetUnitType
=
item
.
TargetUnitType
,
TargetAccountingUnit
=
item
.
TargetAccountingUnit
,
State
=
(
int
)
Assess
.
AssessState
.
未提交
,
CreateBy
=
userid
,
CreateTime
=
dateTime
,
UpdateBy
=
userid
,
UpdateTime
=
dateTime
,
};
}).
ToList
();
perforPerAssessIssueSchemeRepository
.
AddRange
(
inserts
.
ToArray
());
}
if
(
updateIssueChecks
.
Any
())
{
List
<
per_assess_issue_scheme
>
updateIssuedates
=
new
List
<
per_assess_issue_scheme
>();
foreach
(
var
item
in
updateIssueChecks
)
{
var
data
=
schemedatas
.
FirstOrDefault
(
w
=>
w
.
Id
==
item
.
Id
);
if
(
data
==
null
)
continue
;
data
.
AllotId
=
item
.
AllotId
;
data
.
AssessId
=
item
.
AssessId
;
data
.
AssessCode
=
item
.
AssessCode
;
data
.
AssessName
=
item
.
AssessName
;
data
.
SchemeId
=
item
.
SchemeId
;
data
.
SchemeCode
=
item
.
SchemeCode
;
data
.
SchemeName
=
item
.
SchemeName
;
data
.
ItemId
=
item
.
ItemId
;
data
.
ItemCode
=
item
.
ItemCode
;
data
.
ItemName1
=
item
.
ItemName1
;
data
.
ItemName2
=
item
.
ItemName2
;
data
.
AssessScore
=
item
.
AssessScore
;
data
.
AssessNorm
=
item
.
AssessNorm
;
data
.
UnitCode
=
item
.
UnitCode
;
data
.
UnitType
=
item
.
UnitType
;
data
.
Score
=
null
;
data
.
ScoreRemark
=
""
;
data
.
AccountingUnit
=
item
.
AccountingUnit
;
data
.
TargetUnitCode
=
item
.
TargetUnitCode
;
data
.
TargetUnitType
=
item
.
TargetUnitType
;
data
.
TargetAccountingUnit
=
item
.
TargetAccountingUnit
;
data
.
State
=
(
int
)
Assess
.
AssessState
.
未提交
;
data
.
UpdateBy
=
userid
;
data
.
UpdateTime
=
dateTime
;
data
.
SubmitBy
=
null
;
data
.
SubmitTime
=
null
;
data
.
AuditBy
=
null
;
data
.
AuditTime
=
null
;
data
.
AuditRemark
=
null
;
updateIssuedates
.
Add
(
data
);
}
perforPerAssessIssueSchemeRepository
.
UpdateRange
(
updateIssuedates
.
ToArray
());
}
if
(
deleteIssueChecks
.
Any
())
{
var
daletes
=
schemedatas
.
Where
(
w
=>
deleteIssueChecks
.
Contains
(
w
.
Id
)).
ToList
();
perforPerAssessIssueSchemeRepository
.
RemoveRange
(
daletes
.
ToArray
());
}
perforPerallotRepository
.
PerAssessIssueSchemeBackup
(
request
.
AllotId
);
return
new
ApiResponse
(
ResponseType
.
OK
,
"下发成功"
);
}
#
endregion
#
region
考核方案
public
PagedList
<
AssessSchemeDataResponse
>
SchemeList
(
QuerySchemeList
query
)
{
var
scheme
=
perforPerAssessSchemeRepository
.
GetEntities
(
t
=>
t
.
AllotId
==
query
.
AllotId
);
var
category
=
perforPerAssessCategoryRepository
.
GetEntities
(
t
=>
t
.
AllotId
==
query
.
AllotId
);
if
(
query
.
CategoryId
>
0
)
{
scheme
=
scheme
.
Where
(
w
=>
w
.
AssessId
==
query
.
CategoryId
).
ToList
();
category
=
category
.
Where
(
w
=>
w
.
Id
==
query
.
CategoryId
).
ToList
();
}
var
result
=
mapper
.
Map
<
List
<
AssessSchemeDataResponse
>>(
scheme
);
foreach
(
var
item
in
result
)
{
item
.
AssessCode
=
category
.
FirstOrDefault
(
w
=>
w
.
Id
==
item
.
AssessId
).
AssessCode
;
item
.
AssessName
=
category
.
FirstOrDefault
(
w
=>
w
.
Id
==
item
.
AssessId
).
AssessName
;
}
result
=
result
.
OrderByDescending
(
w
=>
w
.
UpdateTime
).
ToList
();
if
(!
string
.
IsNullOrEmpty
(
query
.
SchemeName
))
result
=
result
.
Where
(
w
=>
w
.
SchemeName
.
Contains
(
query
.
SchemeName
)).
ToList
();
var
totalItems
=
result
.
Count
();
var
pagedIssueSchemes
=
result
.
Skip
((
query
.
Page
-
1
)
*
query
.
PageSize
).
Take
(
query
.
PageSize
).
ToList
();
return
new
PagedList
<
AssessSchemeDataResponse
>(
pagedIssueSchemes
,
query
.
Page
,
query
.
PageSize
,
totalItems
);
}
public
ApiResponse
SchemeAdd
(
AddAssessSchemeRequest
request
,
int
userid
)
{
var
categorydata
=
perforPerAssessCategoryRepository
.
GetEntity
(
w
=>
w
.
Id
==
request
.
CategoryId
);
if
(
categorydata
==
null
)
throw
new
PerformanceException
(
"当前考核类别不存在"
);
var
schemeData
=
perforPerAssessSchemeRepository
.
GetEntities
();
var
temp
=
schemeData
.
FirstOrDefault
(
w
=>
w
.
AllotId
==
categorydata
.
AllotId
&&
w
.
SchemeName
==
request
.
SchemeName
);
if
(
temp
!=
null
)
throw
new
PerformanceException
(
"当前考核方案已存在"
);
//查询最大编号或赋初始值
int
codeMax
=
0
;
if
(
schemeData
.
Any
())
int
.
TryParse
(
schemeData
.
Max
(
w
=>
w
.
SchemeCode
.
Substring
(
1
)),
out
codeMax
);
string
schemeCode
=
codeMax
<=
101009
?
$"B
{
101010
}
"
:
$"B
{
codeMax
+
1
}
"
;
var
dateTime
=
DateTime
.
Now
;
var
per_assess_scheme
=
new
per_assess_scheme
()
{
AllotId
=
categorydata
.
AllotId
,
AssessId
=
request
.
CategoryId
,
SchemeCode
=
schemeCode
,
SchemeName
=
request
.
SchemeName
,
SchemeRemarks
=
request
.
SchemeRemarks
,
CreateBy
=
userid
,
CreateTime
=
dateTime
,
UpdateBy
=
userid
,
UpdateTime
=
dateTime
,
};
if
(
perforPerAssessSchemeRepository
.
Add
(
per_assess_scheme
))
return
new
ApiResponse
(
ResponseType
.
OK
,
"添加成功"
);
else
return
new
ApiResponse
(
ResponseType
.
Fail
,
"添加失败"
);
}
public
ApiResponse
<
UpdateAssessSchemeRequest
>
SchemeUpdate
(
UpdateAssessSchemeRequest
request
,
int
userid
)
{
var
categorydata
=
perforPerAssessCategoryRepository
.
GetEntity
(
w
=>
w
.
Id
==
request
.
CategoryId
);
if
(
categorydata
==
null
)
throw
new
PerformanceException
(
"当前考核类别不存在"
);
var
any
=
perforPerAssessSchemeRepository
.
GetEntity
(
w
=>
w
.
Id
==
request
.
SchemeId
);
any
.
AssessId
=
request
.
CategoryId
;
any
.
SchemeName
=
request
.
SchemeName
;
any
.
SchemeRemarks
=
request
.
SchemeRemarks
;
any
.
UpdateBy
=
userid
;
any
.
UpdateTime
=
DateTime
.
Now
;
if
(
perforPerAssessSchemeRepository
.
Update
(
any
))
return
new
ApiResponse
<
UpdateAssessSchemeRequest
>(
ResponseType
.
OK
,
"修改成功"
);
else
return
new
ApiResponse
<
UpdateAssessSchemeRequest
>(
ResponseType
.
Fail
,
"修改失败"
);
}
//考核方案删除(允许批量删除,删除时要检查有没有外表引用,提示一起删除)
public
ApiResponse
SchemeDelete
(
BatchAssessSchemeRequest
request
)
{
var
temp
=
perforPerAssessSchemeItemsRepository
.
GetEntity
(
w
=>
request
.
SchemeId
.
Contains
(
w
.
SchemeId
));
if
(
temp
!=
null
||
temp
?.
Id
>
0
)
throw
new
PerformanceException
(
"请先删除方案下的考核内容"
);
var
temp1
=
perforPerAssessSchemeTargetRepository
.
GetEntity
(
w
=>
request
.
SchemeId
.
Contains
(
w
.
SchemeId
));
if
(
temp1
!=
null
||
temp1
?.
Id
>
0
)
throw
new
PerformanceException
(
"请先删除方案下的核算单元"
);
var
issuedates
=
perforPerAssessSchemeRepository
.
GetEntities
(
w
=>
request
.
SchemeId
.
Contains
(
w
.
Id
)).
ToList
();
if
(
perforPerAssessSchemeRepository
.
RemoveRange
(
issuedates
.
ToArray
()))
return
new
ApiResponse
(
ResponseType
.
OK
,
"删除成功"
);
else
return
new
ApiResponse
(
ResponseType
.
Fail
,
"删除失败"
);
}
public
string
ExcelDownload
(
List
<
Dictionary
<
string
,
object
>>
rows
,
string
name
,
List
<
ExcelDownloadHeads
>
headList
)
{
var
data
=
new
List
<
Dictionary
<
string
,
object
>>();
foreach
(
var
obj
in
rows
)
{
Dictionary
<
string
,
object
>
nobj
=
new
Dictionary
<
string
,
object
>();
foreach
(
var
item
in
obj
)
{
var
lower
=
item
.
Key
.
ToLower
();
if
(
lower
.
Contains
(
"etime"
))
nobj
[
lower
]
=
Convert
.
ToDateTime
(
item
.
Value
).
ToString
(
"d"
);
else
if
(
lower
.
Contains
(
"results"
))
{
var
detRows
=
JsonConvert
.
DeserializeObject
<
List
<
Dictionary
<
string
,
object
>>>(
item
.
Value
.
ToString
());
foreach
(
var
detlist
in
detRows
)
{
object
value
=
null
;
foreach
(
var
detitem
in
detlist
)
{
if
(
detitem
.
Key
.
Equals
(
"Value"
,
StringComparison
.
OrdinalIgnoreCase
))
value
=
detitem
.
Value
;
if
(
detitem
.
Key
.
Equals
(
"Title"
,
StringComparison
.
OrdinalIgnoreCase
))
nobj
[
detitem
.
Value
.
ToString
()]
=
value
;
}
}
}
else
nobj
[
lower
]
=
item
.
Value
;
}
data
.
Add
(
nobj
);
}
var
dpath
=
Path
.
Combine
(
AppDomain
.
CurrentDomain
.
BaseDirectory
,
"Files"
);
if
(!
Directory
.
Exists
(
dpath
))
Directory
.
CreateDirectory
(
dpath
);
string
filepath
=
Path
.
Combine
(
dpath
,
$"
{
name
}{
DateTime
.
Now
:
yyyy
年
MM
月
dd
日
}
"
);
if
(
File
.
Exists
(
filepath
))
File
.
Delete
(
filepath
);
using
(
FileStream
fs
=
new
FileStream
(
filepath
,
FileMode
.
OpenOrCreate
))
using
(
ExcelPackage
package
=
new
ExcelPackage
(
fs
))
{
var
worksheet
=
package
.
Workbook
.
Worksheets
.
Add
(
name
);
for
(
int
col
=
0
;
col
<
headList
.
Count
;
col
++)
{
worksheet
.
SetValue
(
1
,
col
+
1
,
headList
[
col
].
Alias
);
}
for
(
int
col
=
0
;
col
<
headList
.
Count
;
col
++)
{
for
(
int
row
=
0
;
row
<
data
.
Count
();
row
++)
{
var
temp
=
data
.
ElementAt
(
row
);
var
low
=
temp
.
Keys
.
ToString
().
ToLower
();
var
value
=
temp
.
GetValue
(
headList
[
col
].
Name
,
""
);
worksheet
.
Cells
[
row
+
2
,
col
+
1
].
Value
=
value
;
}
}
#
region
样式设置
for
(
int
row
=
worksheet
.
Dimension
.
Start
.
Row
;
row
<=
worksheet
.
Dimension
.
End
.
Row
;
row
++)
{
worksheet
.
Row
(
row
).
Height
=
20
;
for
(
int
col
=
worksheet
.
Dimension
.
Start
.
Column
;
col
<=
worksheet
.
Dimension
.
End
.
Column
;
col
++)
{
worksheet
.
Cells
[
row
,
col
].
Style
.
Border
.
BorderAround
(
ExcelBorderStyle
.
Thin
);
worksheet
.
Cells
[
row
,
col
].
Style
.
VerticalAlignment
=
ExcelVerticalAlignment
.
Center
;
worksheet
.
Cells
[
row
,
col
].
Style
.
HorizontalAlignment
=
ExcelHorizontalAlignment
.
Center
;
}
}
worksheet
.
Cells
[
1
,
1
,
1
,
headList
.
Count
].
Style
.
Font
.
Bold
=
true
;
worksheet
.
View
.
FreezePanes
(
1
,
1
);
worksheet
.
Cells
.
AutoFitColumns
();
for
(
int
col
=
worksheet
.
Dimension
.
Start
.
Column
;
col
<=
worksheet
.
Dimension
.
End
.
Column
;
col
++)
{
worksheet
.
Column
(
col
).
Width
=
worksheet
.
Column
(
col
).
Width
>
20
?
20
:
worksheet
.
Column
(
col
).
Width
;
}
#
endregion
package
.
Save
();
}
return
filepath
;
}
#
endregion
#
region
考核指标
// 考核指标项列表
public
PagedList
<
per_assess_scheme_items
>
SchemeItemsList
(
QuerySchemeItemsList
query
)
{
var
result
=
perforPerAssessSchemeItemsRepository
.
GetEntities
(
t
=>
t
.
SchemeId
==
query
.
SchemeId
&&
t
.
AllotId
==
query
.
AllotId
).
OrderByDescending
(
w
=>
w
.
UpdateTime
).
ToList
();
result
=
result
.
Where
(
w
=>
(
string
.
IsNullOrEmpty
(
query
.
UnitType
)
||
w
.
UnitType
.
Contains
(
query
.
UnitType
))
&&
(
string
.
IsNullOrEmpty
(
query
.
AccountingUnit
)
||
w
.
AccountingUnit
.
Contains
(
query
.
AccountingUnit
))
&&
(
string
.
IsNullOrEmpty
(
query
.
ItemName2
)
||
w
.
ItemName2
.
Contains
(
query
.
ItemName2
))).
ToList
();
var
totalItems
=
result
.
Count
();
var
pagedIssueSchemes
=
result
.
Skip
((
query
.
Page
-
1
)
*
query
.
PageSize
).
Take
(
query
.
PageSize
).
ToList
();
return
new
PagedList
<
per_assess_scheme_items
>(
pagedIssueSchemes
,
query
.
Page
,
query
.
PageSize
,
totalItems
);
}
// 考核指标项新增
public
ApiResponse
<
AddAssessSchemeItemsRequest
>
SchemeItemsAdd
(
AddAssessSchemeItemsRequest
request
,
int
userid
)
{
var
cofAccounting
=
cofaccountingRepository
.
GetEntity
(
w
=>
w
.
AllotId
==
request
.
AllotId
&&
w
.
AccountingUnit
==
request
.
AccountingUnit
&&
w
.
UnitType
==
request
.
UnitType
);
if
(
cofAccounting
==
null
)
throw
new
PerformanceException
(
"当前的核算组别或者核算单元错误"
);
var
scheme
=
perforPerAssessSchemeRepository
.
GetEntities
().
FirstOrDefault
(
w
=>
w
.
Id
==
request
.
SchemeId
&&
w
.
AllotId
==
request
.
AllotId
);
if
(
scheme
==
null
)
throw
new
PerformanceException
(
"当前考核方案有误,请刷新!"
);
var
categoryData
=
perforPerAssessSchemeItemsRepository
.
GetEntities
();
var
temp
=
categoryData
.
FirstOrDefault
(
w
=>
w
.
SchemeId
==
request
.
SchemeId
&&
w
.
ItemName2
==
request
.
ItemName2
);
if
(
temp
!=
null
)
throw
new
PerformanceException
(
"当前指标已存在"
);
int
codeMax
=
0
;
if
(
categoryData
.
Any
())
int
.
TryParse
(
categoryData
.
Max
(
w
=>
w
.
ItemCode
.
Substring
(
1
)),
out
codeMax
);
string
code
=
codeMax
<=
1009
?
$"C
{
1010
}
"
:
$"C
{
codeMax
+
1
}
"
;
var
dateTime
=
DateTime
.
Now
;
var
data
=
mapper
.
Map
<
per_assess_scheme_items
>(
request
);
data
.
AllotId
=
request
.
AllotId
;
data
.
AssessId
=
scheme
.
AssessId
;
data
.
ItemCode
=
code
;
data
.
UnitCode
=
cofAccounting
.
Code
;
data
.
CreateBy
=
userid
;
data
.
CreateTime
=
dateTime
;
data
.
UpdateBy
=
userid
;
data
.
UpdateTime
=
dateTime
;
if
(
perforPerAssessSchemeItemsRepository
.
Add
(
data
))
return
new
ApiResponse
<
AddAssessSchemeItemsRequest
>(
ResponseType
.
OK
,
"添加成功"
);
else
return
new
ApiResponse
<
AddAssessSchemeItemsRequest
>(
ResponseType
.
Fail
,
"添加失败"
);
}
// 考核指标项修改
public
ApiResponse
<
UpdateAssessSchemeItemsRequest
>
SchemeItemsUpdate
(
UpdateAssessSchemeItemsRequest
request
,
int
userid
)
{
var
cofAccounting
=
cofaccountingRepository
.
GetEntity
(
w
=>
w
.
AllotId
==
request
.
AllotId
&&
w
.
AccountingUnit
==
request
.
AccountingUnit
&&
w
.
UnitType
==
request
.
UnitType
);
if
(
cofAccounting
==
null
)
throw
new
PerformanceException
(
"当前的核算组别或者核算单元错误"
);
var
any
=
perforPerAssessSchemeItemsRepository
.
GetEntity
(
w
=>
w
.
AllotId
==
request
.
AllotId
&&
w
.
Id
==
request
.
SchemeItemsId
);
any
.
ItemName1
=
request
.
ItemName1
;
any
.
ItemName2
=
request
.
ItemName2
;
any
.
AssessScore
=
request
.
AssessScore
;
any
.
AssessNorm
=
request
.
AssessNorm
;
any
.
UnitCode
=
cofAccounting
.
Code
;
any
.
UnitType
=
request
.
UnitType
;
any
.
AccountingUnit
=
request
.
AccountingUnit
;
any
.
UpdateBy
=
userid
;
any
.
UpdateTime
=
DateTime
.
Now
;
if
(
perforPerAssessSchemeItemsRepository
.
Update
(
any
))
return
new
ApiResponse
<
UpdateAssessSchemeItemsRequest
>(
ResponseType
.
OK
,
"修改成功"
);
else
return
new
ApiResponse
<
UpdateAssessSchemeItemsRequest
>(
ResponseType
.
Fail
,
"修改失败"
);
}
// 考核指标项删除(允许批量删除,删除时要检查有没有外表引用,提示一起删除)
public
ApiResponse
SchemeItemsDelete
(
BatchAssessSchemeItemsRequest
request
)
{
var
issuedates
=
perforPerAssessSchemeItemsRepository
.
GetEntities
(
w
=>
request
.
SchemeItemsId
.
Contains
(
w
.
Id
)).
ToList
();
if
(
perforPerAssessSchemeItemsRepository
.
RemoveRange
(
issuedates
.
ToArray
()))
return
new
ApiResponse
(
ResponseType
.
OK
,
"删除成功"
);
else
return
new
ApiResponse
(
ResponseType
.
Fail
,
"删除失败"
);
}
//考核对象核算单元列表清单
public
PagedList
<
AssessSchemeTargetResponse
>
SchemeItemsTargetList
(
QuerySchemeItemsTargetList
query
)
{
//查询全部的方案
var
schemes
=
perforPerAssessSchemeRepository
.
GetEntities
(
w
=>
w
.
AllotId
==
query
.
AllotId
);
if
(
schemes
==
null
||
!
schemes
.
Any
())
throw
new
PerformanceException
(
"未找到方案"
);
//查询方案的考核对象
var
schemeTargets
=
perforPerAssessSchemeTargetRepository
.
GetEntities
(
w
=>
w
.
AssessId
==
query
.
AssessId
&&
w
.
AllotId
==
query
.
AllotId
);
//查询当前方案的考核对象
var
currentTargers
=
schemeTargets
.
Where
(
w
=>
w
.
SchemeId
==
query
.
SchemeId
).
ToList
();
////查询其他方案的考核对象
var
otherTargers
=
schemeTargets
.
Where
(
w
=>
w
.
SchemeId
!=
query
.
SchemeId
).
ToList
();
//查询全部的核算单元
var
cofaccounting
=
cofaccountingRepository
.
GetEntities
(
w
=>
w
.
AllotId
==
query
.
AllotId
);
if
(
cofaccounting
.
Count
()
==
0
||
!
cofaccounting
.
Any
())
throw
new
PerformanceException
(
"暂无核算单元数据"
);
var
stateOrders
=
new
int
[]
{
(
int
)
Assess
.
SchemeItemsTarget
.
未设置方案
,
(
int
)
Assess
.
SchemeItemsTarget
.
已设置其他方案
,
(
int
)
Assess
.
SchemeItemsTarget
.
已设置方案
};
var
result
=
new
List
<
AssessSchemeTargetResponse
>();
foreach
(
var
cof
in
cofaccounting
)
{
var
currentScheme
=
currentTargers
.
Where
(
w
=>
w
.
AccountingUnit
==
cof
.
AccountingUnit
&&
w
.
UnitType
==
cof
.
UnitType
).
FirstOrDefault
();
var
otherScheme
=
otherTargers
.
Where
(
w
=>
w
.
AccountingUnit
==
cof
.
AccountingUnit
&&
w
.
UnitType
==
cof
.
UnitType
).
FirstOrDefault
();
var
data
=
mapper
.
Map
<
AssessSchemeTargetResponse
>(
cof
);
if
(
currentScheme
?.
Id
>
0
)
{
data
.
TargetId
=
currentScheme
.
Id
;
data
.
SchemeId
=
currentScheme
.
SchemeId
;
data
.
CreateBy
=
currentScheme
.
CreateBy
;
data
.
CreateTime
=
currentScheme
.
CreateTime
;
data
.
UpdateBy
=
currentScheme
.
UpdateBy
;
data
.
UpdateTime
=
currentScheme
.
UpdateTime
;
data
.
SchemeName
=
schemes
.
Where
(
w
=>
w
.
Id
==
currentScheme
.
SchemeId
).
FirstOrDefault
().
SchemeName
;
data
.
SchemeState
=
(
int
)
Assess
.
SchemeItemsTarget
.
已设置方案
;
}
else
if
(
otherScheme
?.
Id
>
0
)
{
data
.
TargetId
=
otherScheme
.
Id
;
data
.
SchemeId
=
otherScheme
.
SchemeId
;
data
.
SchemeName
=
schemes
.
Where
(
w
=>
w
.
Id
==
otherScheme
.
SchemeId
).
FirstOrDefault
().
SchemeName
;
data
.
SchemeState
=
(
int
)
Assess
.
SchemeItemsTarget
.
已设置其他方案
;
}
else
{
data
.
SchemeName
=
"无"
;
data
.
SchemeState
=
(
int
)
Assess
.
SchemeItemsTarget
.
未设置方案
;
}
result
.
Add
(
data
);
}
if
((
int
)
query
.
SchemeItemsTarget
==
(
int
)
Assess
.
SchemeItemsTarget
.
未设置方案
)
result
=
result
.
Where
(
w
=>
w
.
SchemeState
==
(
int
)
query
.
SchemeItemsTarget
).
ToList
();
if
((
int
)
query
.
SchemeItemsTarget
==
(
int
)
Assess
.
SchemeItemsTarget
.
已设置方案
)
result
=
result
.
Where
(
w
=>
w
.
SchemeState
==
(
int
)
Assess
.
SchemeItemsTarget
.
已设置方案
).
ToList
();
result
=
result
.
OrderBy
(
w
=>
Array
.
IndexOf
(
stateOrders
,
w
.
SchemeState
)).
ToList
();
result
=
result
.
Where
(
w
=>
(
string
.
IsNullOrEmpty
(
query
.
UnitType
)
||
w
.
UnitType
.
Contains
(
query
.
UnitType
))
&&
(
string
.
IsNullOrEmpty
(
query
.
AccountingUnit
)
||
w
.
AccountingUnit
.
Contains
(
query
.
AccountingUnit
))).
ToList
();
var
totalItems
=
result
.
Count
();
var
pagedIssueSchemes
=
result
.
Skip
((
query
.
Page
-
1
)
*
query
.
PageSize
).
Take
(
query
.
PageSize
).
ToList
();
return
new
PagedList
<
AssessSchemeTargetResponse
>(
pagedIssueSchemes
,
query
.
Page
,
query
.
PageSize
,
totalItems
);
}
// 考核对象核算单元保存
public
ApiResponse
SchemeItemsTargetSave
(
TargetAssessSchemeItemsRequest
request
,
int
userid
)
{
if
(!
request
.
SchemeTargetResponse
.
Any
())
throw
new
PerformanceException
(
"当前没有需要添加或者修改的内容"
);
var
schemes
=
perforPerAssessSchemeRepository
.
GetEntity
(
w
=>
w
.
Id
==
request
.
SchemeId
);
var
dateTime
=
DateTime
.
Now
;
foreach
(
var
item
in
request
.
SchemeTargetResponse
)
{
var
any
=
perforPerAssessSchemeTargetRepository
.
GetEntity
(
w
=>
w
.
Id
==
item
.
TargetId
);
if
(
any
!=
null
||
any
?.
Id
>
0
)
{
any
.
AllotId
=
schemes
.
AllotId
;
any
.
AssessId
=
schemes
.
AssessId
;
any
.
SchemeId
=
request
.
SchemeId
;
any
.
UpdateBy
=
userid
;
any
.
UpdateTime
=
dateTime
;
perforPerAssessSchemeTargetRepository
.
Update
(
any
);
}
else
{
var
data
=
mapper
.
Map
<
per_assess_scheme_target
>(
item
);
data
.
AllotId
=
schemes
.
AllotId
;
data
.
AssessId
=
schemes
.
AssessId
;
data
.
SchemeId
=
request
.
SchemeId
;
data
.
UnitCode
=
item
.
Code
;
data
.
CreateBy
=
userid
;
data
.
CreateTime
=
dateTime
;
data
.
UpdateBy
=
userid
;
data
.
UpdateTime
=
dateTime
;
perforPerAssessSchemeTargetRepository
.
Add
(
data
);
}
}
return
new
ApiResponse
(
ResponseType
.
OK
);
}
public
ApiResponse
SchemeItemsTargetEdit
(
TargetSchemeItemsTargetEdit
edit
,
int
userid
)
{
var
cofAccounting
=
cofaccountingRepository
.
GetEntity
(
w
=>
w
.
AllotId
==
edit
.
AllotId
&&
w
.
UnitType
==
edit
.
UnitType
&&
w
.
AccountingUnit
==
edit
.
AccountingUnit
);
if
(
cofAccounting
==
null
)
throw
new
PerformanceException
(
"当前的核算组别或者核算单元错误"
);
var
schemeTarget
=
perforPerAssessSchemeTargetRepository
.
GetEntity
(
w
=>
w
.
Id
==
edit
.
TargetId
&&
w
.
AllotId
==
edit
.
AllotId
);
if
(
schemeTarget
==
null
)
throw
new
PerformanceException
(
"考核对象未找到,请刷新后重试!"
);
schemeTarget
.
UnitCode
=
cofAccounting
.
Code
;
schemeTarget
.
UnitType
=
cofAccounting
.
UnitType
;
schemeTarget
.
AccountingUnit
=
edit
.
AccountingUnit
;
schemeTarget
.
UpdateBy
=
userid
;
schemeTarget
.
UpdateTime
=
DateTime
.
Now
;
if
(
perforPerAssessSchemeTargetRepository
.
Update
(
schemeTarget
))
return
new
ApiResponse
(
ResponseType
.
OK
,
"修改成功"
);
else
return
new
ApiResponse
(
ResponseType
.
Fail
,
"修改失败"
);
}
public
ApiResponse
SchemeItemsTargetDelete
(
TargetSchemeItemsTargetDelete
delete
)
{
var
issuedates
=
perforPerAssessSchemeTargetRepository
.
GetEntities
(
w
=>
delete
.
TargetId
.
Contains
(
w
.
Id
)).
ToList
();
if
(
perforPerAssessSchemeTargetRepository
.
RemoveRange
(
issuedates
.
ToArray
()))
return
new
ApiResponse
(
ResponseType
.
OK
,
"删除成功"
);
else
return
new
ApiResponse
(
ResponseType
.
Fail
,
"删除失败"
);
}
public
ApiResponse
SchemeItemsUpload
(
int
schemeId
,
int
allotId
,
IFormCollection
form
,
int
userid
)
{
var
file
=
((
FormFileCollection
)
form
.
Files
).
FirstOrDefault
();
if
(!
file
.
FileName
.
EndsWith
(
".xlsx"
))
throw
new
PerformanceException
(
"请检查是否为xlsx格式"
);
//查询全部的核算单元
var
cofaccountingdatas
=
cofaccountingRepository
.
GetEntities
(
w
=>
w
.
AllotId
==
allotId
);
//查询指标
var
itemsDatas
=
perforPerAssessSchemeItemsRepository
.
GetEntities
(
t
=>
t
.
SchemeId
==
schemeId
);
var
allot
=
perforPerallotRepository
.
GetEntity
(
t
=>
t
.
ID
==
allotId
);
if
(
allot
==
null
)
return
new
ApiResponse
(
ResponseType
.
Fail
,
"allotid不存在"
);
var
name
=
FileHelper
.
GetFileNameNoExtension
(
file
.
FileName
)
+
DateTime
.
Now
.
ToString
(
"yyyyMMddHHmmssfff"
);
var
ext
=
FileHelper
.
GetExtension
(
file
.
FileName
);
var
dpath
=
Path
.
Combine
(
evn
.
ContentRootPath
,
"Files"
,
$"
{
allot
.
HospitalId
}
"
,
$"
{
allot
.
Year
}{
allot
.
Month
.
ToString
().
PadLeft
(
2
,
'0'
)}
"
);
FileHelper
.
CreateDirectory
(
dpath
);
var
path
=
Path
.
Combine
(
dpath
,
$"
{
name
}{
ext
}
"
);
using
(
var
stream
=
file
.
OpenReadStream
())
{
byte
[]
bytes
=
new
byte
[
stream
.
Length
];
stream
.
Read
(
bytes
,
0
,
bytes
.
Length
);
if
(!
FileHelper
.
CreateFile
(
path
,
bytes
))
return
new
ApiResponse
(
ResponseType
.
Fail
,
$"
{
file
.
FileName
}
上传失败"
);
}
var
dt
=
Read
(
path
);
var
datas
=
ToListDictionary
(
dt
);
if
(
datas
.
Count
==
0
||
!
datas
.
Any
())
throw
new
PerformanceException
(
"未在文件中找到数据"
);
Tables
error
=
new
Tables
(
"行"
,
"考核指标编码"
,
"一级指标名称"
,
"二级指标名称"
,
"考核分值"
,
"考核标准"
,
"考核单元组别"
,
"考核单元名称"
,
"原因"
);
var
upload
=
new
List
<
AssessSchemeItemsUploadResponse
>();
foreach
(
var
item
in
datas
.
Select
((
value
,
i
)
=>
new
{
value
,
index
=
$"第
{
i
+
1
}
行"
}))
{
if
(
string
.
IsNullOrEmpty
(
string
.
Join
(
""
,
item
.
value
.
Values
)))
continue
;
var
eItemCode
=
item
.
value
.
GetOrAdd
(
"考核指标编码"
,
""
)?.
ToString
()
??
""
;
var
eItemName1
=
item
.
value
.
GetOrAdd
(
"一级指标名称"
,
""
)?.
ToString
()
??
""
;
var
eItemName2
=
item
.
value
.
GetOrAdd
(
"二级指标名称"
,
""
)?.
ToString
()
??
""
;
var
eAssessScore
=
item
.
value
.
GetOrAdd
(
"考核分值"
,
""
)?.
ToString
()
??
""
;
var
eAssessNorm
=
item
.
value
.
GetOrAdd
(
"考核标准"
,
""
)?.
ToString
()
??
""
;
var
eUnitType
=
item
.
value
.
GetOrAdd
(
"考核单元组别"
,
""
)?.
ToString
()
??
""
;
var
eAccountingUnit
=
item
.
value
.
GetOrAdd
(
"考核单元名称"
,
""
)?.
ToString
()
??
""
;
eAssessScore
=
String
.
IsNullOrEmpty
(
eAssessScore
)
?
"0"
:
eAssessScore
;
error
.
AddIf
(
string
.
IsNullOrEmpty
(
eItemName1
),
item
.
index
,
""
,
eItemName1
,
eItemName2
,
eAssessScore
,
eAssessNorm
,
eAccountingUnit
,
"一级指标名称空值无效,请检查后重试!"
);
error
.
AddIf
(
string
.
IsNullOrEmpty
(
eItemName2
),
item
.
index
,
""
,
eItemName1
,
eItemName2
,
eAssessScore
,
eAssessNorm
,
eAccountingUnit
,
"二级指标名称空值无效,请检查后重试!"
);
error
.
AddIf
(!
decimal
.
TryParse
(
eAssessScore
,
out
decimal
eAScore
),
item
.
index
,
""
,
eItemName1
,
eItemName2
,
eAssessScore
,
eAssessNorm
,
eAccountingUnit
,
"考核分值填写无效,请检查后重试!"
);
error
.
AddIf
(
eAScore
==
0
,
item
.
index
,
""
,
eItemName1
,
eItemName2
,
eAssessScore
,
eAssessNorm
,
eAccountingUnit
,
"考核分值不能为0,请检查后重试!"
);
error
.
AddIf
(
string
.
IsNullOrEmpty
(
eAssessNorm
),
item
.
index
,
""
,
eItemName1
,
eItemName2
,
eAssessScore
,
eAssessNorm
,
eAccountingUnit
,
"考核标准空值无效,请检查后重试!"
);
error
.
AddIf
(
string
.
IsNullOrEmpty
(
eUnitType
),
item
.
index
,
""
,
eItemName1
,
eItemName2
,
eAssessScore
,
eAssessNorm
,
eAccountingUnit
,
"考核单元组别空值无效,请检查后重试!"
);
error
.
AddIf
(
string
.
IsNullOrEmpty
(
eAccountingUnit
),
item
.
index
,
""
,
eItemName1
,
eItemName2
,
eAssessScore
,
eAssessNorm
,
eAccountingUnit
,
"考核单元名称空值无效,请检查后重试!"
);
var
cofaccountingdata
=
cofaccountingdatas
.
FirstOrDefault
(
w
=>
w
.
AccountingUnit
==
eAccountingUnit
&&
w
.
UnitType
==
eUnitType
);
error
.
AddIf
(
cofaccountingdata
==
null
,
item
.
index
,
""
,
eItemName1
,
eItemName2
,
eAssessScore
,
eAssessNorm
,
eAccountingUnit
,
"未找到相关考核单元组别或者考核单元名称,请检查后重试!"
);
if
(
cofaccountingdata
==
null
)
continue
;
var
itemsData
=
itemsDatas
.
FirstOrDefault
(
w
=>
w
.
ItemCode
==
eItemCode
);
var
data
=
new
AssessSchemeItemsUploadResponse
();
if
(
itemsData
==
null
||
itemsData
?.
Id
<
0
)
{
data
=
new
AssessSchemeItemsUploadResponse
()
{
ItemName1
=
eItemName1
,
ItemName2
=
eItemName2
,
AssessScore
=
eAScore
,
AssessNorm
=
eAssessNorm
,
UnitCode
=
cofaccountingdata
.
Code
,
UnitType
=
eUnitType
,
AccountingUnit
=
eAccountingUnit
,
OperationType
=
(
int
)
Attendance
.
OperationType
.
新增
};
}
else
{
data
=
new
AssessSchemeItemsUploadResponse
()
{
ItemCode
=
itemsData
.
ItemCode
,
ItemName1
=
eItemName1
,
ItemName2
=
eItemName2
,
AssessScore
=
eAScore
,
AssessNorm
=
eAssessNorm
,
UnitCode
=
cofaccountingdata
.
Code
,
UnitType
=
eUnitType
,
AccountingUnit
=
eAccountingUnit
,
OperationType
=
(
int
)
Attendance
.
OperationType
.
修改
};
}
upload
.
Add
(
data
);
}
if
(
error
.
Any
())
return
new
ApiResponse
(
ResponseType
.
WarningTable
,
"操作被拒绝,详细请看更多信息"
,
error
);
saveUploadResult
(
upload
,
schemeId
,
allotId
,
userid
);
return
new
ApiResponse
(
ResponseType
.
OK
);
}
public
ApiResponse
saveUploadResult
(
List
<
AssessSchemeItemsUploadResponse
>
upload
,
int
schemeId
,
int
allotId
,
int
userid
)
{
var
categoryData
=
perforPerAssessSchemeRepository
.
GetEntity
(
t
=>
t
.
Id
==
schemeId
);
if
(
categoryData
==
null
||
categoryData
.
Id
<
0
)
throw
new
PerformanceException
(
"方案有误,请刷新重试!"
);
var
itemsDatas
=
perforPerAssessSchemeItemsRepository
.
GetEntities
(
w
=>
w
.
AllotId
==
allotId
);
var
dataDelete
=
itemsDatas
.
Where
(
t
=>
t
.
SchemeId
==
schemeId
);
var
dataAdds
=
upload
.
Where
(
w
=>
w
.
OperationType
==
(
int
)
Attendance
.
OperationType
.
新增
).
ToList
();
int
sort
=
0
;
dataAdds
.
ForEach
(
t
=>
{
t
.
sort
=
sort
++;
int
codeMax
=
0
;
if
(
itemsDatas
.
Any
())
int
.
TryParse
(
itemsDatas
.
Max
(
w
=>
w
.
ItemCode
.
Substring
(
1
)),
out
codeMax
);
string
code
=
codeMax
<=
1009
?
$"C
{
1010
+
sort
}
"
:
$"C
{
codeMax
+
sort
}
"
;
t
.
ItemCode
=
code
;
});
var
dataUpdates
=
upload
.
Where
(
w
=>
w
.
OperationType
==
(
int
)
Attendance
.
OperationType
.
修改
).
ToList
();
//删除
var
dataDeletes
=
from
temp1
in
dataDelete
join
temp2
in
dataUpdates
on
temp1
.
ItemCode
equals
temp2
.
ItemCode
into
tempJoin
from
temp2
in
tempJoin
.
DefaultIfEmpty
()
where
temp2
==
null
select
temp1
;
var
dateTime
=
DateTime
.
Now
;
if
(
dataAdds
.
Any
())
{
var
inserts
=
dataAdds
.
Select
(
item
=>
{
return
new
per_assess_scheme_items
()
{
AllotId
=
allotId
,
AssessId
=
categoryData
.
AssessId
,
SchemeId
=
schemeId
,
ItemCode
=
item
.
ItemCode
,
ItemName1
=
item
.
ItemName1
,
ItemName2
=
item
.
ItemName2
,
AssessScore
=
item
.
AssessScore
,
AssessNorm
=
item
.
AssessNorm
,
UnitCode
=
item
.
UnitCode
,
UnitType
=
item
.
UnitType
,
AccountingUnit
=
item
.
AccountingUnit
,
CreateBy
=
userid
,
CreateTime
=
dateTime
,
UpdateBy
=
userid
,
UpdateTime
=
dateTime
,
};
}).
ToList
();
perforPerAssessSchemeItemsRepository
.
AddRange
(
inserts
.
ToArray
());
}
if
(
dataUpdates
.
Any
())
{
List
<
per_assess_scheme_items
>
itemsdatas
=
new
List
<
per_assess_scheme_items
>();
foreach
(
var
item
in
dataUpdates
)
{
var
itemsData
=
itemsDatas
.
FirstOrDefault
(
w
=>
w
.
ItemCode
==
item
.
ItemCode
);
if
(
itemsData
==
null
)
continue
;
itemsData
.
ItemCode
=
item
.
ItemCode
;
itemsData
.
ItemName1
=
item
.
ItemName1
;
itemsData
.
ItemName2
=
item
.
ItemName2
;
itemsData
.
AssessScore
=
item
.
AssessScore
;
itemsData
.
AssessNorm
=
item
.
AssessNorm
;
itemsData
.
UnitType
=
item
.
UnitType
;
itemsData
.
AccountingUnit
=
item
.
AccountingUnit
;
itemsData
.
UpdateBy
=
userid
;
itemsData
.
UpdateTime
=
dateTime
;
itemsdatas
.
Add
(
itemsData
);
}
perforPerAssessSchemeItemsRepository
.
UpdateRange
(
itemsdatas
.
ToArray
());
}
if
(
dataDeletes
.
Any
())
{
perforPerAssessSchemeItemsRepository
.
RemoveRange
(
dataDeletes
.
ToArray
());
}
return
new
ApiResponse
(
ResponseType
.
OK
);
}
#
endregion
#
region
核算单元上报考核结果
public
ApiResponse
<
List
<
AssessSchemeEnterListResponse
>>
SchemeEnterList
(
int
allotId
,
int
userid
)
{
var
issueSchemes
=
perforPerAssessIssueSchemeRepository
.
GetEntities
(
w
=>
w
.
AllotId
==
allotId
);
//当角色对应时过滤
var
userInfo
=
_userRepository
.
GetUser
(
userid
);
if
(
userInfo
?.
User
==
null
)
throw
new
NotImplementedException
(
"当前用户不存在"
);
if
(
userInfo
?.
URole
==
null
)
throw
new
NotImplementedException
(
"当前用户暂未分配角色"
);
var
unitTypes
=
UnitTypeUtil
.
GetMaps
(
userInfo
?.
URole
.
Type
??
0
);
if
(
unitTypes
?.
Any
()
==
true
)
issueSchemes
=
issueSchemes
.
Where
(
w
=>
w
.
AccountingUnit
==
userInfo
.
User
.
Department
&&
UnitTypeUtil
.
Is
(
w
.
UnitType
,
unitTypes
)).
ToList
();
var
stateOrders
=
new
int
[]
{
(
int
)
Assess
.
AssessState
.
待审核
,
(
int
)
Assess
.
AssessState
.
驳回
,
(
int
)
Assess
.
AssessState
.
审核通过
,
(
int
)
Assess
.
AssessState
.
未提交
};
var
items
=
issueSchemes
.
GroupBy
(
w
=>
new
{
w
.
AssessId
,
w
.
AssessCode
,
w
.
AssessName
,
w
.
AssessNorm
,
w
.
ItemId
,
w
.
ItemCode
,
w
.
ItemName2
,
w
.
UnitType
,
w
.
AccountingUnit
})
.
Select
(
w
=>
new
AssessSchemeEnterListResponse
{
AssessId
=
w
.
Key
.
AssessId
,
AssessCode
=
w
.
Key
.
AssessCode
,
AssessName
=
w
.
Key
.
AssessName
,
AssessNorm
=
w
.
Key
.
AssessNorm
,
UnitType
=
w
.
Key
.
UnitType
,
AccountingUnit
=
w
.
Key
.
AccountingUnit
,
ItemId
=
w
.
Key
.
ItemId
,
ItemCode
=
w
.
Key
.
ItemCode
,
ItemName2
=
w
.
Key
.
ItemName2
,
Count
=
w
.
Count
(),
SubmitTime
=
w
.
OrderByDescending
(
o
=>
o
.
SubmitTime
).
Select
(
s
=>
s
.
SubmitTime
).
FirstOrDefault
(),
AuditBy
=
w
.
OrderByDescending
(
o
=>
o
.
AuditTime
).
Select
(
s
=>
s
.
AuditBy
).
FirstOrDefault
(),
AuditTime
=
w
.
OrderByDescending
(
o
=>
o
.
AuditTime
).
Select
(
s
=>
s
.
AuditTime
).
FirstOrDefault
(),
ConfirmCount
=
w
.
Count
(
p
=>
p
.
State
==
(
int
)
Assess
.
AssessState
.
审核通过
),
RejectCount
=
w
.
Count
(
p
=>
p
.
State
==
(
int
)
Assess
.
AssessState
.
驳回
),
AwaitCount
=
w
.
Count
(
p
=>
p
.
State
==
(
int
)
Assess
.
AssessState
.
待审核
),
AuditRemark
=
string
.
Join
(
";"
,
w
.
Select
(
p
=>
p
.
AuditRemark
).
Where
(
s
=>
!
string
.
IsNullOrEmpty
(
s
)).
Distinct
()),
}).
ToList
();
foreach
(
var
item
in
items
)
{
item
.
State
=
(
int
)
Assess
.
AssessState
.
未提交
;
if
(
item
.
AwaitCount
>
0
)
item
.
State
=
(
int
)
Assess
.
AssessState
.
待审核
;
if
(
item
.
RejectCount
>
0
)
item
.
State
=
(
int
)
Assess
.
AssessState
.
驳回
;
else
if
(
item
.
ConfirmCount
==
item
.
Count
)
item
.
State
=
(
int
)
Assess
.
AssessState
.
审核通过
;
}
items
=
items
.
OrderBy
(
w
=>
stateOrders
.
Contains
(
w
.
State
)
?
Array
.
IndexOf
(
stateOrders
,
w
.
State
)
:
int
.
MaxValue
).
ToList
();
return
new
ApiResponse
<
List
<
AssessSchemeEnterListResponse
>>(
ResponseType
.
OK
,
items
);
}
public
PagedList
<
AssessSchemeResultListResponse
>
SchemeResultList
(
QuerySchemeResultList
query
)
{
var
allot
=
perforPerallotRepository
.
GetEntity
(
w
=>
w
.
ID
==
query
.
AllotId
);
if
(
allot
==
null
)
throw
new
PerformanceException
(
"当前绩效记录不存在"
);
var
viewAResult
=
perforPerallotRepository
.
GetAssessResult
(
query
.
AllotId
);
var
viewAResultQuery
=
viewAResult
.
AsQueryable
();
if
(
query
.
SchemeId
>
0
)
viewAResultQuery
=
viewAResultQuery
.
Where
(
w
=>
w
.
SchemeId
==
query
.
SchemeId
);
if
(!
string
.
IsNullOrEmpty
(
query
.
TargetUnitType
))
viewAResultQuery
=
viewAResultQuery
.
Where
(
w
=>
w
.
TargetUnitType
==
query
.
TargetUnitType
);
if
(!
string
.
IsNullOrEmpty
(
query
.
TargetAccountingUnit
))
viewAResultQuery
=
viewAResultQuery
.
Where
(
w
=>
w
.
TargetAccountingUnit
==
query
.
TargetAccountingUnit
);
if
(!
string
.
IsNullOrEmpty
(
query
.
ItemName2
))
viewAResultQuery
=
viewAResultQuery
.
Where
(
w
=>
w
.
ItemName2
==
query
.
ItemName2
);
var
result
=
viewAResultQuery
.
ToList
();
var
data
=
result
.
Select
(
item
=>
{
return
new
AssessSchemeResultListResponse
()
{
TargetUnitType
=
item
.
TargetUnitType
,
TargetAccountingUnit
=
item
.
TargetAccountingUnit
,
ItemName2
=
item
.
ItemName2
,
Score
=
(
item
.
Score
==
null
?
0
:
item
.
Score
)
+
item
.
AssessScore
,
};
}).
ToList
();
var
columns
=
data
.
Select
(
item
=>
item
.
ItemName2
).
Distinct
().
ToList
();
var
results
=
data
.
GroupBy
(
item
=>
new
{
item
.
TargetUnitType
,
item
.
TargetAccountingUnit
})
.
Select
(
t
=>
{
var
dict
=
new
Dictionary
<
string
,
object
>
{
{
"TargetUnitType"
,
t
.
Key
.
TargetUnitType
},
{
"TargetAccountingUnit"
,
t
.
Key
.
TargetAccountingUnit
},
};
var
newResultss
=
new
List
<
AssessSchemeDictionaryResults
>();
foreach
(
var
column
in
columns
)
{
var
score
=
t
.
FirstOrDefault
(
w
=>
w
.
ItemName2
==
column
).
Score
;
dict
.
Add
(
column
,
score
);
var
newResults
=
new
AssessSchemeDictionaryResults
()
{
Title
=
column
,
Value
=
score
};
newResultss
.
Add
(
newResults
);
}
var
totalAssessScore
=
dict
.
Where
(
w
=>
columns
.
Contains
(
w
.
Key
)).
Sum
(
w
=>
(
decimal
?)
w
.
Value
);
dict
.
AddOrUpdate
(
"TotalAssessScore"
,
totalAssessScore
);
return
new
AssessSchemeResultListResponse
()
{
TargetUnitType
=
t
.
Key
.
TargetUnitType
,
TargetAccountingUnit
=
t
.
Key
.
TargetAccountingUnit
,
DictionaryResults
=
newResultss
,
TotalAssessScore
=
totalAssessScore
};
}).
ToList
();
var
totalItems
=
results
.
Count
();
var
pagedIssueSchemes
=
results
.
Skip
((
query
.
Page
-
1
)
*
query
.
PageSize
).
Take
(
query
.
PageSize
).
ToList
();
return
new
PagedList
<
AssessSchemeResultListResponse
>(
pagedIssueSchemes
,
query
.
Page
,
query
.
PageSize
,
totalItems
);
}
public
PagedList
<
AssessSchemeEnterDetaiListResponse
>
SchemeEnterDetailList
(
QuerySchemeEnterDetailList
query
)
{
var
issueSchemes
=
perforPerAssessIssueSchemeRepository
.
GetEntities
(
w
=>
w
.
AllotId
==
query
.
AllotId
);
if
(!
issueSchemes
.
Any
())
throw
new
PerformanceException
(
"暂无数据"
);
var
issueSchemesQuery
=
issueSchemes
.
AsQueryable
();
if
(
query
.
ItemId
>
0
)
issueSchemesQuery
=
issueSchemesQuery
.
Where
(
w
=>
w
.
ItemId
==
query
.
ItemId
);
if
(!
string
.
IsNullOrEmpty
(
query
.
TargetUnitType
))
issueSchemesQuery
=
issueSchemesQuery
.
Where
(
w
=>
w
.
TargetUnitType
==
query
.
TargetUnitType
);
if
(!
string
.
IsNullOrEmpty
(
query
.
TargetAccountingUnit
))
issueSchemesQuery
=
issueSchemesQuery
.
Where
(
w
=>
w
.
TargetAccountingUnit
==
query
.
TargetAccountingUnit
);
if
(!
string
.
IsNullOrEmpty
(
query
.
ItemName2
))
issueSchemesQuery
=
issueSchemesQuery
.
Where
(
w
=>
w
.
ItemName2
==
query
.
ItemName2
);
if
((
int
)
query
.
State
==
(
int
)
Assess
.
AssessState
.
审核通过
)
issueSchemesQuery
=
issueSchemesQuery
.
Where
(
w
=>
w
.
State
==
(
int
)
query
.
State
);
var
result
=
issueSchemesQuery
.
ToList
();
var
stateOrders
=
new
int
[]
{
(
int
)
Assess
.
AssessState
.
待审核
,
(
int
)
Assess
.
AssessState
.
驳回
,
(
int
)
Assess
.
AssessState
.
审核通过
,
(
int
)
Assess
.
AssessState
.
未提交
};
var
datas
=
mapper
.
Map
<
List
<
AssessSchemeEnterDetaiListResponse
>>(
result
);
datas
=
datas
.
OrderBy
(
w
=>
stateOrders
.
Contains
(
w
.
State
)
?
Array
.
IndexOf
(
stateOrders
,
w
.
State
)
:
int
.
MaxValue
).
ToList
();
var
totalItems
=
datas
.
Count
();
var
pagedIssueSchemes
=
datas
.
Skip
((
query
.
Page
-
1
)
*
query
.
PageSize
).
Take
(
query
.
PageSize
).
ToList
();
return
new
PagedList
<
AssessSchemeEnterDetaiListResponse
>(
pagedIssueSchemes
,
query
.
Page
,
query
.
PageSize
,
totalItems
);
}
public
ApiResponse
SchemeEnterAudit
(
EditSchemeEnterAudit
audit
,
string
realName
)
{
var
issueSchemes
=
perforPerAssessIssueSchemeRepository
.
GetEntities
(
w
=>
w
.
AllotId
==
audit
.
AllotId
&&
w
.
ItemId
==
audit
.
ItemId
);
if
(
audit
.
IssueId
>
0
)
issueSchemes
=
issueSchemes
.
Where
(
w
=>
w
.
Id
==
audit
.
IssueId
).
ToList
();
var
temp
=
issueSchemes
.
FirstOrDefault
(
w
=>
w
.
State
==
(
int
)
Assess
.
AssessState
.
未提交
);
if
(
temp
!=
null
||
temp
?.
Id
>
0
)
throw
new
PerformanceException
(
"未提交的数据无法审核"
);
var
dateTime
=
DateTime
.
Now
;
foreach
(
var
issueScheme
in
issueSchemes
)
{
issueScheme
.
State
=
(
int
)
audit
.
State
;
issueScheme
.
AuditRemark
=
audit
.
AuditRemark
;
issueScheme
.
AuditBy
=
realName
;
issueScheme
.
AuditTime
=
dateTime
;
}
perforPerAssessIssueSchemeRepository
.
UpdateRange
(
issueSchemes
.
ToArray
());
return
new
ApiResponse
(
ResponseType
.
OK
,
"修改成功"
);
}
public
ApiResponse
SchemeEnterEdit
(
EditAssessSchemeEnterRequest
request
,
int
userid
)
{
var
issueSchemes
=
perforPerAssessIssueSchemeRepository
.
GetEntity
(
w
=>
w
.
Id
==
request
.
IssueId
);
if
(
issueSchemes
==
null
)
throw
new
PerformanceException
(
"未找到需要修改的数据,请刷新"
);
issueSchemes
.
Score
=
request
.
Score
;
issueSchemes
.
ScoreRemark
=
request
.
ScoreRemark
;
issueSchemes
.
UpdateBy
=
userid
;
issueSchemes
.
State
=
(
int
)
Assess
.
AssessState
.
未提交
;
issueSchemes
.
UpdateTime
=
DateTime
.
Now
;
if
(
perforPerAssessIssueSchemeRepository
.
Update
(
issueSchemes
))
return
new
ApiResponse
(
ResponseType
.
OK
,
"修改成功"
);
else
return
new
ApiResponse
(
ResponseType
.
Fail
,
"修改失败"
);
}
public
ApiResponse
SchemeEnterSubmit
(
int
allotId
,
int
itemId
,
int
userid
)
{
var
issueSchemes
=
perforPerAssessIssueSchemeRepository
.
GetEntities
(
w
=>
w
.
AllotId
==
allotId
&&
w
.
ItemId
==
itemId
&&
w
.
State
!=
(
int
)
Assess
.
AssessState
.
审核通过
);
if
(!
issueSchemes
.
Any
())
throw
new
PerformanceException
(
"未找到需要提交的数据,请稍后在试"
);
var
dateTime
=
DateTime
.
Now
;
foreach
(
var
item
in
issueSchemes
)
{
item
.
AuditBy
=
null
;
item
.
AuditTime
=
null
;
item
.
AuditRemark
=
null
;
item
.
State
=
(
int
)
Assess
.
AssessState
.
待审核
;
item
.
SubmitBy
=
userid
;
item
.
SubmitTime
=
dateTime
;
item
.
UpdateBy
=
userid
;
item
.
UpdateTime
=
dateTime
;
}
if
(
perforPerAssessIssueSchemeRepository
.
UpdateRange
(
issueSchemes
.
ToArray
()))
return
new
ApiResponse
(
ResponseType
.
OK
,
"修改成功"
);
else
return
new
ApiResponse
(
ResponseType
.
Fail
,
"修改失败"
);
}
public
ApiResponse
SchemeEnterUpload
(
int
itemId
,
IFormCollection
form
,
int
userid
)
{
var
file
=
((
FormFileCollection
)
form
.
Files
).
FirstOrDefault
();
if
(!
file
.
FileName
.
EndsWith
(
".xlsx"
))
throw
new
PerformanceException
(
"请检查是否为xlsx格式"
);
//查询指标
var
itemsDatas
=
perforPerAssessSchemeItemsRepository
.
GetEntity
(
t
=>
t
.
Id
==
itemId
);
if
(
itemsDatas
==
null
||
itemsDatas
.
Id
<
0
)
throw
new
PerformanceException
(
"上传失败,请刷新后重新上传!"
);
//查询下发结果
var
issueDatas
=
perforPerAssessIssueSchemeRepository
.
GetEntities
(
w
=>
w
.
ItemId
==
itemId
);
var
allot
=
perforPerallotRepository
.
GetEntity
(
w
=>
w
.
ID
==
itemsDatas
.
AllotId
);
if
(
allot
==
null
)
return
new
ApiResponse
(
ResponseType
.
Fail
,
"allotid不存在"
);
var
name
=
FileHelper
.
GetFileNameNoExtension
(
file
.
FileName
)
+
DateTime
.
Now
.
ToString
(
"yyyyMMddHHmmssfff"
);
var
ext
=
FileHelper
.
GetExtension
(
file
.
FileName
);
var
dpath
=
Path
.
Combine
(
evn
.
ContentRootPath
,
"Files"
,
$"
{
allot
.
HospitalId
}
"
,
$"
{
allot
.
Year
}{
allot
.
Month
.
ToString
().
PadLeft
(
2
,
'0'
)}
"
);
FileHelper
.
CreateDirectory
(
dpath
);
var
path
=
Path
.
Combine
(
dpath
,
$"
{
name
}{
ext
}
"
);
using
(
var
stream
=
file
.
OpenReadStream
())
{
byte
[]
bytes
=
new
byte
[
stream
.
Length
];
stream
.
Read
(
bytes
,
0
,
bytes
.
Length
);
if
(!
FileHelper
.
CreateFile
(
path
,
bytes
))
return
new
ApiResponse
(
ResponseType
.
Fail
,
$"
{
file
.
FileName
}
上传失败"
);
}
var
dt
=
Read
(
path
);
var
datas
=
ToListDictionary
(
dt
);
if
(
datas
.
Count
==
0
||
!
datas
.
Any
())
throw
new
PerformanceException
(
"未在文件中找到数据"
);
Tables
error
=
new
Tables
(
"行"
,
"核算组别"
,
"核算单元名称"
,
"一级指标名称"
,
"考核项目"
,
"考核分值"
,
"考核扣分"
,
"扣分原因"
,
"原因"
);
var
issues
=
new
List
<
per_assess_issue_scheme
>();
foreach
(
var
item
in
datas
.
Select
((
value
,
i
)
=>
new
{
value
,
index
=
$"第
{
i
+
1
}
行"
}))
{
if
(
string
.
IsNullOrEmpty
(
string
.
Join
(
""
,
item
.
value
.
Values
)))
continue
;
var
eTargetUnitType
=
item
.
value
.
GetOrAdd
(
"核算组别"
,
""
)?.
ToString
()
??
""
;
var
eTargetAccountingUnit
=
item
.
value
.
GetOrAdd
(
"核算单元名称"
,
""
)?.
ToString
()
??
""
;
var
eItemName1
=
item
.
value
.
GetOrAdd
(
"一级指标名称"
,
""
)?.
ToString
()
??
""
;
var
eItemName2
=
item
.
value
.
GetOrAdd
(
"考核项目"
,
""
)?.
ToString
()
??
""
;
var
eAssessScore
=
item
.
value
.
GetOrAdd
(
"考核分值"
,
""
)?.
ToString
()
??
""
;
var
eScore
=
item
.
value
.
GetOrAdd
(
"考核扣分"
,
""
)?.
ToString
()
??
""
;
var
eScoreRemark
=
item
.
value
.
GetOrAdd
(
"扣分原因"
,
""
)?.
ToString
()
??
""
;
eScore
=
String
.
IsNullOrEmpty
(
eScore
)
?
"0"
:
eScore
;
eAssessScore
=
String
.
IsNullOrEmpty
(
eAssessScore
)
?
"0"
:
eAssessScore
;
decimal
.
TryParse
(
eAssessScore
,
out
decimal
eAScore
);
error
.
AddIf
(
string
.
IsNullOrEmpty
(
eTargetAccountingUnit
),
item
.
index
,
eTargetAccountingUnit
,
eTargetUnitType
,
eItemName1
,
eItemName2
,
eAssessScore
,
eScore
,
eScoreRemark
,
"核算单元空值无效,请检查后重试!"
);
error
.
AddIf
(
string
.
IsNullOrEmpty
(
eTargetUnitType
),
item
.
index
,
eTargetAccountingUnit
,
eTargetUnitType
,
eItemName1
,
eItemName2
,
eAssessScore
,
eScore
,
eScoreRemark
,
"核算单元空值无效,请检查后重试!"
);
error
.
AddIf
(!
decimal
.
TryParse
(
eScore
,
out
decimal
escore
),
item
.
index
,
eTargetAccountingUnit
,
eTargetUnitType
,
eItemName1
,
eItemName2
,
eAssessScore
,
eScore
,
eScoreRemark
,
"考核扣分值无效,请检查后重试!"
);
error
.
AddIf
(
escore
>
eAScore
,
item
.
index
,
eTargetAccountingUnit
,
eTargetUnitType
,
eItemName1
,
eItemName2
,
eAssessScore
,
eScore
,
eScoreRemark
,
"考核扣分大于考核分值,请检查后重试!"
);
var
issueData
=
issueDatas
.
FirstOrDefault
(
w
=>
w
.
ItemId
==
itemId
&&
w
.
TargetAccountingUnit
==
eTargetAccountingUnit
&&
w
.
TargetUnitType
==
eTargetUnitType
);
error
.
AddIf
(
issueData
==
null
,
item
.
index
,
eTargetAccountingUnit
,
eTargetUnitType
,
eItemName1
,
eItemName2
,
eAssessScore
,
eScore
,
eScoreRemark
,
"未找到部门,请检查后重试!"
);
if
(
issueData
==
null
)
continue
;
issueData
.
Score
=
escore
==
0
?
null
:
escore
;
issueData
.
ScoreRemark
=
eScoreRemark
;
issueData
.
UpdateBy
=
userid
;
issueData
.
UpdateTime
=
DateTime
.
Now
;
issues
.
Add
(
issueData
);
}
if
(
error
.
Any
())
return
new
ApiResponse
(
ResponseType
.
WarningTable
,
"操作被拒绝,详细请看更多信息"
,
error
);
if
(
issues
.
Any
())
perforPerAssessIssueSchemeRepository
.
UpdateRange
(
issues
.
ToArray
());
return
new
ApiResponse
(
ResponseType
.
OK
);
}
#
endregion
public
static
DataTable
Read
(
string
path
,
int
startRow
=
1
,
int
startCol
=
1
)
{
using
ExcelPackage
package
=
new
ExcelPackage
(
new
FileInfo
(
path
));
// 选择工作表
ExcelWorksheet
worksheet
=
package
.
Workbook
.
Worksheets
[
0
];
var
dt
=
new
DataTable
(
worksheet
.
Name
);
for
(
int
i
=
startCol
;
i
<=
worksheet
.
Dimension
.
End
.
Column
;
i
++)
{
dt
.
Columns
.
Add
(
worksheet
.
Cells
[
startRow
,
i
].
Value
.
ToString
());
}
for
(
int
i
=
startRow
+
1
;
i
<=
worksheet
.
Dimension
.
End
.
Row
;
i
++)
{
var
row
=
dt
.
NewRow
();
for
(
int
j
=
startCol
;
j
<=
worksheet
.
Dimension
.
End
.
Column
;
j
++)
{
row
[
j
-
startCol
]
=
worksheet
.
Cells
[
i
,
j
].
Value
;
}
dt
.
Rows
.
Add
(
row
);
}
return
dt
;
}
public
static
List
<
Dictionary
<
string
,
object
>>
ToListDictionary
(
DataTable
dt
)
{
List
<
Dictionary
<
string
,
object
>>
list
=
new
List
<
Dictionary
<
string
,
object
>>();
foreach
(
DataRow
dr
in
dt
.
Rows
)
{
Dictionary
<
string
,
object
>
dic
=
new
Dictionary
<
string
,
object
>();
foreach
(
DataColumn
dc
in
dt
.
Columns
)
{
dic
.
Add
(
dc
.
ColumnName
,
dr
[
dc
.
ColumnName
]);
}
list
.
Add
(
dic
);
}
return
list
;
}
/// <summary>
/// 表格展示
/// </summary>
public
class
Tables
:
List
<
Dictionary
<
string
,
object
>>
{
private
readonly
string
[]
Cols
;
/// ctor
public
Tables
(
params
string
[]
cols
)
{
if
(
cols
.
Length
==
0
)
throw
new
ArgumentNullException
(
nameof
(
cols
));
if
(
cols
.
Any
(
w
=>
string
.
IsNullOrEmpty
(
w
)))
throw
new
ArgumentException
(
$"
{
nameof
(
cols
)}
存在空列名"
);
if
(
cols
.
Distinct
().
Count
()
<
cols
.
Length
)
throw
new
ArgumentException
(
$"
{
nameof
(
cols
)}
列名重复"
);
Cols
=
cols
;
}
/// <summary>
/// 添加行
/// </summary>
/// <param name="values">需要和Colums保持个数一致</param>
/// <exception cref="ArgumentNullException"></exception>
public
void
Add
(
params
string
[]
values
)
{
var
row
=
new
Dictionary
<
string
,
object
>();
for
(
int
i
=
0
;
i
<
Cols
.
Length
;
i
++)
{
row
.
Add
(
Cols
[
i
],
values
.
Length
>
i
?
values
[
i
]
:
""
);
}
Add
(
row
);
}
/// <summary>
/// 添加行
/// </summary>
/// <param name="right"></param>
/// <param name="values">需要和Colums保持个数一致</param>
/// <exception cref="ArgumentNullException"></exception>
public
void
AddIf
(
bool
right
,
params
string
[]
values
)
{
if
(
right
)
{
var
row
=
new
Dictionary
<
string
,
object
>();
for
(
int
i
=
0
;
i
<
Cols
.
Length
;
i
++)
{
row
.
Add
(
Cols
[
i
],
values
.
Length
>
i
?
values
[
i
]
:
""
);
}
Add
(
row
);
}
}
}
}
}
performance/Performance.Services/AssessService.cs
View file @
a7bd8716
using
Performance.DtoModels
;
//
using Performance.DtoModels;
using
Performance.EntityModels
;
//
using Performance.EntityModels;
using
Performance.Infrastructure
;
//
using Performance.Infrastructure;
using
Performance.Repository
;
//
using Performance.Repository;
using
System
;
//
using System;
using
System.Collections.Generic
;
//
using System.Collections.Generic;
using
System.Linq
;
//
using System.Linq;
using
System.Text
;
//
using System.Text;
namespace
Performance.Services
//
namespace Performance.Services
{
//
{
public
class
AssessService
:
IAutoInjection
//
public class AssessService : IAutoInjection
{
//
{
private
PerforAsassessRepository
perforAsassessRepository
;
//
private PerforAsassessRepository perforAsassessRepository;
private
PerforAsdataRepository
perforAsdataRepository
;
//
private PerforAsdataRepository perforAsdataRepository;
private
PerforAscolumnsRepository
perforAscolumnsRepository
;
//
private PerforAscolumnsRepository perforAscolumnsRepository;
private
PerforAstempassessRepository
perforAstempassessRepository
;
//
private PerforAstempassessRepository perforAstempassessRepository;
private
PerforAstempcolumnsRepository
perforAstempcolumnsRepository
;
//
private PerforAstempcolumnsRepository perforAstempcolumnsRepository;
private
PerforPerallotRepository
perforPerallotRepository
;
//
private PerforPerallotRepository perforPerallotRepository;
private
PerforImemployeeRepository
perforImemployeeRepository
;
//
private PerforImemployeeRepository perforImemployeeRepository;
private
PerforImaccountbasicRepository
perforImaccountbasicRepository
;
//
private PerforImaccountbasicRepository perforImaccountbasicRepository;
public
AssessService
(
PerforAsassessRepository
perforAsassessRepository
,
//
public AssessService(PerforAsassessRepository perforAsassessRepository,
PerforAsdataRepository
perforAsdataRepository
,
//
PerforAsdataRepository perforAsdataRepository,
PerforAscolumnsRepository
perforAscolumnsRepository
,
//
PerforAscolumnsRepository perforAscolumnsRepository,
PerforAstempassessRepository
perforAstempassessRepository
,
//
PerforAstempassessRepository perforAstempassessRepository,
PerforAstempcolumnsRepository
perforAstempcolumnsRepository
,
//
PerforAstempcolumnsRepository perforAstempcolumnsRepository,
PerforPerallotRepository
perforPerallotRepository
,
//
PerforPerallotRepository perforPerallotRepository,
PerforImemployeeRepository
perforImemployeeRepository
,
//
PerforImemployeeRepository perforImemployeeRepository,
PerforImaccountbasicRepository
perforImaccountbasicRepository
)
//
PerforImaccountbasicRepository perforImaccountbasicRepository)
{
//
{
this
.
perforAsassessRepository
=
perforAsassessRepository
;
//
this.perforAsassessRepository = perforAsassessRepository;
this
.
perforAsdataRepository
=
perforAsdataRepository
;
//
this.perforAsdataRepository = perforAsdataRepository;
this
.
perforAscolumnsRepository
=
perforAscolumnsRepository
;
//
this.perforAscolumnsRepository = perforAscolumnsRepository;
this
.
perforAstempassessRepository
=
perforAstempassessRepository
;
//
this.perforAstempassessRepository = perforAstempassessRepository;
this
.
perforAstempcolumnsRepository
=
perforAstempcolumnsRepository
;
//
this.perforAstempcolumnsRepository = perforAstempcolumnsRepository;
this
.
perforPerallotRepository
=
perforPerallotRepository
;
//
this.perforPerallotRepository = perforPerallotRepository;
this
.
perforImemployeeRepository
=
perforImemployeeRepository
;
//
this.perforImemployeeRepository = perforImemployeeRepository;
this
.
perforImaccountbasicRepository
=
perforImaccountbasicRepository
;
//
this.perforImaccountbasicRepository = perforImaccountbasicRepository;
}
//
}
#
region
考核类别
//
#region 考核类别
/// <summary>
//
/// <summary>
/// 考核类别列表
//
/// 考核类别列表
/// </summary>
//
/// </summary>
/// <param name="allotID"></param>
//
/// <param name="allotID"></param>
/// <returns></returns>
//
/// <returns></returns>
public
ApiResponse
AssessList
(
int
allotID
)
//
public ApiResponse AssessList(int allotID)
{
//
{
var
list
=
perforAsassessRepository
.
GetEntities
(
t
=>
t
.
AllotID
==
allotID
);
//
var list = perforAsassessRepository.GetEntities(t => t.AllotID == allotID);
return
new
ApiResponse
(
ResponseType
.
OK
,
list
);
//
return new ApiResponse(ResponseType.OK, list);
}
//
}
/// <summary>
//
/// <summary>
/// 新增
//
/// 新增
/// </summary>
//
/// </summary>
/// <param name="allotID"></param>
//
/// <param name="allotID"></param>
/// <param name="assessName"></param>
//
/// <param name="assessName"></param>
/// <returns></returns>
//
/// <returns></returns>
public
ApiResponse
AddAssess
(
int
allotID
,
string
assessName
)
//
public ApiResponse AddAssess(int allotID, string assessName)
{
//
{
var
entity
=
perforAsassessRepository
.
GetEntities
(
t
=>
t
.
AllotID
==
allotID
&&
t
.
AssessName
==
assessName
);
//
var entity = perforAsassessRepository.GetEntities(t => t.AllotID == allotID && t.AssessName == assessName);
if
(
entity
!=
null
&&
entity
.
Count
>
0
)
//
if (entity != null && entity.Count > 0)
return
new
ApiResponse
(
ResponseType
.
Fail
,
"考核类别重复"
);
//
return new ApiResponse(ResponseType.Fail, "考核类别重复");
var
assess
=
new
as_assess
{
AllotID
=
allotID
,
AssessName
=
assessName
};
//
var assess = new as_assess { AllotID = allotID, AssessName = assessName };
var
result
=
perforAsassessRepository
.
Add
(
assess
);
//
var result = perforAsassessRepository.Add(assess);
return
result
?
new
ApiResponse
(
ResponseType
.
OK
,
assess
)
:
new
ApiResponse
(
ResponseType
.
Fail
);
//
return result ? new ApiResponse(ResponseType.OK, assess) : new ApiResponse(ResponseType.Fail);
}
//
}
/// <summary>
//
/// <summary>
/// 修改
//
/// 修改
/// </summary>
//
/// </summary>
/// <param name="assessID"></param>
//
/// <param name="assessID"></param>
/// <param name="assessName"></param>
//
/// <param name="assessName"></param>
/// <returns></returns>
//
/// <returns></returns>
public
ApiResponse
EditAssess
(
int
assessID
,
string
assessName
)
//
public ApiResponse EditAssess(int assessID, string assessName)
{
//
{
var
entity
=
perforAsassessRepository
.
GetEntity
(
t
=>
t
.
ID
==
assessID
);
//
var entity = perforAsassessRepository.GetEntity(t => t.ID == assessID);
if
(
entity
==
null
)
//
if (entity == null)
return
new
ApiResponse
(
ResponseType
.
Fail
,
"考核类别ID无效"
);
//
return new ApiResponse(ResponseType.Fail, "考核类别ID无效");
entity
.
AssessName
=
assessName
;
//
entity.AssessName = assessName;
var
result
=
perforAsassessRepository
.
Update
(
entity
);
//
var result = perforAsassessRepository.Update(entity);
return
result
?
new
ApiResponse
(
ResponseType
.
OK
,
entity
)
:
new
ApiResponse
(
ResponseType
.
Fail
);
//
return result ? new ApiResponse(ResponseType.OK, entity) : new ApiResponse(ResponseType.Fail);
}
//
}
/// <summary>
//
/// <summary>
/// 删除
//
/// 删除
/// </summary>
//
/// </summary>
/// <param name="assessID"></param>
//
/// <param name="assessID"></param>
/// <returns></returns>
//
/// <returns></returns>
public
ApiResponse
DelAssess
(
int
assessID
)
//
public ApiResponse DelAssess(int assessID)
{
//
{
var
entity
=
perforAsassessRepository
.
GetEntity
(
t
=>
t
.
ID
==
assessID
);
//
var entity = perforAsassessRepository.GetEntity(t => t.ID == assessID);
if
(
entity
==
null
)
//
if (entity == null)
return
new
ApiResponse
(
ResponseType
.
Fail
,
"考核类别ID无效"
);
//
return new ApiResponse(ResponseType.Fail, "考核类别ID无效");
var
result
=
perforAsassessRepository
.
Remove
(
entity
);
//
var result = perforAsassessRepository.Remove(entity);
var
columns
=
perforAscolumnsRepository
.
GetEntities
(
t
=>
t
.
AssessID
==
assessID
);
//
var columns = perforAscolumnsRepository.GetEntities(t => t.AssessID == assessID);
if
(
result
&&
columns
!=
null
&&
columns
.
Count
>
0
)
//
if (result && columns != null && columns.Count > 0)
result
=
perforAscolumnsRepository
.
RemoveRange
(
columns
.
ToArray
());
//
result = perforAscolumnsRepository.RemoveRange(columns.ToArray());
return
result
?
new
ApiResponse
(
ResponseType
.
OK
)
:
new
ApiResponse
(
ResponseType
.
Fail
);
//
return result ? new ApiResponse(ResponseType.OK) : new ApiResponse(ResponseType.Fail);
}
//
}
/// <summary>
//
/// <summary>
/// 科室考核类别归纳
//
/// 科室考核类别归纳
/// </summary>
//
/// </summary>
/// <param name="request"></param>
//
/// <param name="request"></param>
/// <returns></returns>
//
/// <returns></returns>
public
ApiResponse
SetAssessType
(
SetAssessRequest
request
)
//
public ApiResponse SetAssessType(SetAssessRequest request)
{
//
{
var
entity
=
perforAsassessRepository
.
GetEntity
(
t
=>
t
.
ID
==
request
.
AssessID
);
//
var entity = perforAsassessRepository.GetEntity(t => t.ID == request.AssessID);
if
(
entity
==
null
)
//
if (entity == null)
return
new
ApiResponse
(
ResponseType
.
Fail
,
"考核类别ID无效"
);
//
return new ApiResponse(ResponseType.Fail, "考核类别ID无效");
var
entities
=
perforAsdataRepository
.
GetEntities
(
t
=>
t
.
AllotID
==
request
.
AllotID
);
//
var entities = perforAsdataRepository.GetEntities(t => t.AllotID == request.AllotID);
if
(
entities
!=
null
)
//
if (entities != null)
{
//
{
//保留共有
//
//保留共有
var
intersectList
=
entities
.
Where
(
t
=>
t
.
AssessID
==
request
.
AssessID
).
Select
(
t
=>
t
.
Department
).
Intersect
(
request
.
Department
).
ToList
();
//
var intersectList = entities.Where(t => t.AssessID == request.AssessID).Select(t => t.Department).Intersect(request.Department).ToList();
if
(
intersectList
!=
null
&&
intersectList
.
Count
()
>
0
)
//
if (intersectList != null && intersectList.Count() > 0)
intersectList
.
ForEach
(
t
=>
request
.
Department
.
Remove
(
t
));
//
intersectList.ForEach(t => request.Department.Remove(t));
//删除更改
//
//删除更改
var
removeList
=
perforAsdataRepository
.
GetEntities
(
t
=>
!
intersectList
.
Contains
(
t
.
Department
)
&&
t
.
AssessID
==
request
.
AssessID
);
//
var removeList = perforAsdataRepository.GetEntities(t => !intersectList.Contains(t.Department) && t.AssessID == request.AssessID);
if
(
removeList
!=
null
&&
removeList
.
Count
()
>
0
)
//
if (removeList != null && removeList.Count() > 0)
perforAsdataRepository
.
RemoveRange
(
removeList
.
ToArray
());
//
perforAsdataRepository.RemoveRange(removeList.ToArray());
}
//
}
//添加新增
//
//添加新增
var
addList
=
request
.
Department
.
Select
(
t
=>
new
as_data
{
AllotID
=
request
.
AllotID
,
AssessID
=
request
.
AssessID
,
Department
=
t
}).
ToArray
();
//
var addList = request.Department.Select(t => new as_data { AllotID = request.AllotID, AssessID = request.AssessID, Department = t }).ToArray();
var
result
=
(
addList
!=
null
&&
addList
.
Count
()
>
0
)
?
perforAsdataRepository
.
AddRange
(
addList
)
:
true
;
//
var result = (addList != null && addList.Count() > 0) ? perforAsdataRepository.AddRange(addList) : true;
return
result
?
new
ApiResponse
(
ResponseType
.
OK
)
:
new
ApiResponse
(
ResponseType
.
Fail
);
//
return result ? new ApiResponse(ResponseType.OK) : new ApiResponse(ResponseType.Fail);
}
//
}
#
endregion
//
#endregion
#
region
考核项
//
#region 考核项
/// <summary>
//
/// <summary>
/// 列头列表
//
/// 列头列表
/// </summary>
//
/// </summary>
/// <param name="assessID"></param>
//
/// <param name="assessID"></param>
/// <returns></returns>
//
/// <returns></returns>
public
ApiResponse
ColumnList
(
int
assessID
)
//
public ApiResponse ColumnList(int assessID)
{
//
{
var
list
=
perforAscolumnsRepository
.
GetEntities
(
t
=>
t
.
AssessID
==
assessID
).
OrderBy
(
t
=>
t
.
ParentID
).
ThenBy
(
t
=>
t
.
Sort
);
//
var list = perforAscolumnsRepository.GetEntities(t => t.AssessID == assessID).OrderBy(t => t.ParentID).ThenBy(t => t.Sort);
return
new
ApiResponse
(
ResponseType
.
OK
,
list
);
//
return new ApiResponse(ResponseType.OK, list);
}
//
}
/// <summary>
//
/// <summary>
/// 新增考核项
//
/// 新增考核项
/// </summary>
//
/// </summary>
/// <param name="assessID"></param>
//
/// <param name="assessID"></param>
/// <param name="parentID"></param>
//
/// <param name="parentID"></param>
/// <param name="columnName"></param>
//
/// <param name="columnName"></param>
/// <returns></returns>
//
/// <returns></returns>
public
ApiResponse
AddColumn
(
int
assessID
,
int
parentID
,
string
columnName
,
int
sort
)
//
public ApiResponse AddColumn(int assessID, int parentID, string columnName, int sort)
{
//
{
var
entity
=
perforAsassessRepository
.
GetEntity
(
t
=>
t
.
ID
==
assessID
);
//
var entity = perforAsassessRepository.GetEntity(t => t.ID == assessID);
if
(
entity
==
null
)
//
if (entity == null)
return
new
ApiResponse
(
ResponseType
.
Fail
,
"考核类别ID无效"
);
//
return new ApiResponse(ResponseType.Fail, "考核类别ID无效");
if
(
parentID
>
0
)
//
if (parentID > 0)
{
//
{
var
centity
=
perforAscolumnsRepository
.
GetEntity
(
t
=>
t
.
ID
==
parentID
);
//
var centity = perforAscolumnsRepository.GetEntity(t => t.ID == parentID);
if
(
centity
==
null
)
//
if (centity == null)
return
new
ApiResponse
(
ResponseType
.
Fail
,
"考核项目父级ID无效"
);
//
return new ApiResponse(ResponseType.Fail, "考核项目父级ID无效");
}
//
}
var
clist
=
perforAscolumnsRepository
.
GetEntities
(
t
=>
t
.
ParentID
==
parentID
&&
t
.
AssessID
==
assessID
&&
t
.
Sort
>=
sort
).
OrderBy
(
t
=>
t
.
Sort
).
ToList
();
//
var clist = perforAscolumnsRepository.GetEntities(t => t.ParentID == parentID && t.AssessID == assessID && t.Sort >= sort).OrderBy(t => t.Sort).ToList();
if
(
clist
!=
null
&&
clist
.
Count
>
0
)
//
if (clist != null && clist.Count > 0)
{
//
{
int
atsort
=
sort
;
//
int atsort = sort;
clist
.
ForEach
(
t
=>
{
t
.
Sort
=
atsort
+
1
;
atsort
++;
});
//
clist.ForEach(t => { t.Sort = atsort + 1; atsort++; });
perforAscolumnsRepository
.
UpdateRange
(
clist
.
ToArray
());
//
perforAscolumnsRepository.UpdateRange(clist.ToArray());
}
//
}
var
column
=
new
as_columns
{
AssessID
=
assessID
,
ParentID
=
parentID
,
ColumnName
=
columnName
,
Sort
=
sort
};
//
var column = new as_columns { AssessID = assessID, ParentID = parentID, ColumnName = columnName, Sort = sort };
var
result
=
perforAscolumnsRepository
.
Add
(
column
);
//
var result = perforAscolumnsRepository.Add(column);
return
result
?
new
ApiResponse
(
ResponseType
.
OK
,
column
)
:
new
ApiResponse
(
ResponseType
.
Fail
);
//
return result ? new ApiResponse(ResponseType.OK, column) : new ApiResponse(ResponseType.Fail);
}
//
}
/// <summary>
//
/// <summary>
/// 修改考核项
//
/// 修改考核项
/// </summary>
//
/// </summary>
/// <param name="columnID"></param>
//
/// <param name="columnID"></param>
/// <param name="columnName"></param>
//
/// <param name="columnName"></param>
/// <returns></returns>
//
/// <returns></returns>
public
ApiResponse
EditColumn
(
int
columnID
,
string
columnName
,
int
sort
)
//
public ApiResponse EditColumn(int columnID, string columnName, int sort)
{
//
{
var
entity
=
perforAscolumnsRepository
.
GetEntity
(
t
=>
t
.
ID
==
columnID
);
//
var entity = perforAscolumnsRepository.GetEntity(t => t.ID == columnID);
if
(
entity
==
null
)
//
if (entity == null)
return
new
ApiResponse
(
ResponseType
.
Fail
,
"考核项目父级ID无效"
);
//
return new ApiResponse(ResponseType.Fail, "考核项目父级ID无效");
entity
.
ColumnName
=
columnName
;
//
entity.ColumnName = columnName;
//entity.Sort = sort;
//
//entity.Sort = sort;
var
result
=
perforAscolumnsRepository
.
Update
(
entity
);
//
var result = perforAscolumnsRepository.Update(entity);
return
result
?
new
ApiResponse
(
ResponseType
.
OK
,
entity
)
:
new
ApiResponse
(
ResponseType
.
Fail
);
//
return result ? new ApiResponse(ResponseType.OK, entity) : new ApiResponse(ResponseType.Fail);
}
//
}
/// <summary>
//
/// <summary>
/// 删除考核项
//
/// 删除考核项
/// </summary>
//
/// </summary>
/// <param name="columnID"></param>
//
/// <param name="columnID"></param>
/// <returns></returns>
//
/// <returns></returns>
public
ApiResponse
DelColumn
(
int
columnID
)
//
public ApiResponse DelColumn(int columnID)
{
//
{
var
entity
=
perforAscolumnsRepository
.
GetEntity
(
t
=>
t
.
ID
==
columnID
);
//
var entity = perforAscolumnsRepository.GetEntity(t => t.ID == columnID);
if
(
entity
==
null
)
//
if (entity == null)
return
new
ApiResponse
(
ResponseType
.
Fail
,
"考核项目父级ID无效"
);
//
return new ApiResponse(ResponseType.Fail, "考核项目父级ID无效");
var
result
=
perforAscolumnsRepository
.
Remove
(
entity
);
//
var result = perforAscolumnsRepository.Remove(entity);
return
result
?
new
ApiResponse
(
ResponseType
.
OK
)
:
new
ApiResponse
(
ResponseType
.
Fail
);
//
return result ? new ApiResponse(ResponseType.OK) : new ApiResponse(ResponseType.Fail);
}
//
}
#
endregion
//
#endregion
#
region
考核数据
//
#region 考核数据
/// <summary>
//
/// <summary>
/// 考核数据列表
//
/// 考核数据列表
/// </summary>
//
/// </summary>
/// <param name="assessID"></param>
//
/// <param name="assessID"></param>
/// <returns></returns>
//
/// <returns></returns>
public
ApiResponse
DataList
(
int
assessID
)
//
public ApiResponse DataList(int assessID)
{
//
{
var
entity
=
perforAsassessRepository
.
GetEntity
(
t
=>
t
.
ID
==
assessID
);
//
var entity = perforAsassessRepository.GetEntity(t => t.ID == assessID);
if
(
entity
==
null
)
//
if (entity == null)
return
new
ApiResponse
(
ResponseType
.
Fail
,
"考核类别ID无效"
);
//
return new ApiResponse(ResponseType.Fail, "考核类别ID无效");
var
list
=
perforAsdataRepository
.
GetEntities
(
t
=>
t
.
AssessID
==
assessID
);
//
var list = perforAsdataRepository.GetEntities(t => t.AssessID == assessID);
if
(
list
!=
null
)
//
if (list != null)
{
//
{
var
response
=
list
.
Select
(
t
=>
new
AssessDataResponse
//
var response = list.Select(t => new AssessDataResponse
{
//
{
ID
=
t
.
ID
,
//
ID = t.ID,
AssessID
=
t
.
AssessID
,
//
AssessID = t.AssessID,
Department
=
t
.
Department
,
//
Department = t.Department,
RowData
=
t
.
RowData
//
RowData = t.RowData
});
//
});
return
new
ApiResponse
(
ResponseType
.
OK
,
response
);
//
return new ApiResponse(ResponseType.OK, response);
}
//
}
return
new
ApiResponse
(
ResponseType
.
OK
);
//
return new ApiResponse(ResponseType.OK);
}
//
}
/// <summary>
//
/// <summary>
/// 编辑考核数据
//
/// 编辑考核数据
/// </summary>
//
/// </summary>
/// <param name="request"></param>
//
/// <param name="request"></param>
/// <returns></returns>
//
/// <returns></returns>
public
ApiResponse
EditAssessData
(
List
<
AssessRow
>
request
)
//
public ApiResponse EditAssessData(List<AssessRow> request)
{
//
{
var
dataIDList
=
request
.
Select
(
t
=>
t
.
DataID
).
ToList
();
//
var dataIDList = request.Select(t => t.DataID).ToList();
var
dataList
=
perforAsdataRepository
.
GetEntities
(
t
=>
dataIDList
.
Contains
(
t
.
ID
));
//
var dataList = perforAsdataRepository.GetEntities(t => dataIDList.Contains(t.ID));
foreach
(
var
item
in
request
)
//
foreach (var item in request)
{
//
{
var
entity
=
dataList
.
FirstOrDefault
(
t
=>
t
.
ID
==
item
.
DataID
);
//
var entity = dataList.FirstOrDefault(t => t.ID == item.DataID);
if
(
entity
!=
null
)
//
if (entity != null)
{
//
{
entity
.
RowData
=
item
.
DataValue
;
//
entity.RowData = item.DataValue;
perforAsdataRepository
.
Update
(
entity
);
//
perforAsdataRepository.Update(entity);
}
//
}
}
//
}
return
new
ApiResponse
(
ResponseType
.
OK
);
//
return new ApiResponse(ResponseType.OK);
}
//
}
#
endregion
//
#endregion
#
region
模版
//
#region 模版
/// <summary>
//
/// <summary>
/// 考核模版列表
//
/// 考核模版列表
/// </summary>
//
/// </summary>
/// <param name="allotID"></param>
//
/// <param name="allotID"></param>
/// <returns></returns>
//
/// <returns></returns>
public
ApiResponse
TempAssessList
()
//
public ApiResponse TempAssessList()
{
//
{
var
list
=
perforAstempassessRepository
.
GetEntities
();
//
var list = perforAstempassessRepository.GetEntities();
return
new
ApiResponse
(
ResponseType
.
OK
,
list
);
//
return new ApiResponse(ResponseType.OK, list);
}
//
}
/// <summary>
//
/// <summary>
/// 模版列头列表
//
/// 模版列头列表
/// </summary>
//
/// </summary>
/// <param name="assessID"></param>
//
/// <param name="assessID"></param>
/// <returns></returns>
//
/// <returns></returns>
public
ApiResponse
TempColumnList
(
int
assessID
)
//
public ApiResponse TempColumnList(int assessID)
{
//
{
var
list
=
perforAstempcolumnsRepository
.
GetEntities
(
t
=>
t
.
AssessID
==
assessID
)?.
OrderBy
(
t
=>
t
.
ParentID
).
ThenBy
(
t
=>
t
.
Sort
);
//
var list = perforAstempcolumnsRepository.GetEntities(t => t.AssessID == assessID)?.OrderBy(t => t.ParentID).ThenBy(t => t.Sort);
return
new
ApiResponse
(
ResponseType
.
OK
,
list
);
//
return new ApiResponse(ResponseType.OK, list);
}
//
}
/// <summary>
//
/// <summary>
/// 使用模版
//
/// 使用模版
/// </summary>
//
/// </summary>
/// <returns></returns>
//
/// <returns></returns>
public
ApiResponse
UseTemplate
(
int
allotID
,
int
assessID
)
//
public ApiResponse UseTemplate(int allotID, int assessID)
{
//
{
var
allot
=
perforPerallotRepository
.
GetEntity
(
t
=>
t
.
ID
==
allotID
);
//
var allot = perforPerallotRepository.GetEntity(t => t.ID == allotID);
var
temp
=
perforAstempassessRepository
.
GetEntity
(
t
=>
t
.
ID
==
assessID
);
//
var temp = perforAstempassessRepository.GetEntity(t => t.ID == assessID);
if
(
temp
!=
null
&&
allot
!=
null
)
//
if (temp != null && allot != null)
{
//
{
string
assessName
=
temp
.
AssessName
;
//
string assessName = temp.AssessName;
var
assess
=
perforAsassessRepository
.
GetEntity
(
t
=>
t
.
AssessName
==
assessName
&&
t
.
AllotID
==
allotID
);
//
var assess = perforAsassessRepository.GetEntity(t => t.AssessName == assessName && t.AllotID == allotID);
if
(
assess
!=
null
)
//
if (assess != null)
return
new
ApiResponse
(
ResponseType
.
Fail
,
"该模版已经被使用"
);
//
return new ApiResponse(ResponseType.Fail, "该模版已经被使用");
assess
=
new
as_assess
//
assess = new as_assess
{
//
{
AllotID
=
allotID
,
//
AllotID = allotID,
AssessName
=
assessName
//
AssessName = assessName
};
//
};
//copy模版信息
//
//copy模版信息
var
result
=
perforAsassessRepository
.
Add
(
assess
);
//
var result = perforAsassessRepository.Add(assess);
var
tempColumns
=
perforAstempcolumnsRepository
.
GetEntities
(
t
=>
t
.
AssessID
==
assessID
);
//
var tempColumns = perforAstempcolumnsRepository.GetEntities(t => t.AssessID == assessID);
var
columns
=
tempColumns
?.
Select
(
t
=>
new
as_columns
//
var columns = tempColumns?.Select(t => new as_columns
{
//
{
AssessID
=
assess
.
ID
,
//
AssessID = assess.ID,
ParentID
=
t
.
ParentID
,
//
ParentID = t.ParentID,
ColumnName
=
t
.
ColumnName
,
//
ColumnName = t.ColumnName,
TempColumnID
=
t
.
ID
,
//
TempColumnID = t.ID,
Sort
=
t
.
Sort
//
Sort = t.Sort
}).
ToList
();
//
}).ToList();
//copy模版列头
//
//copy模版列头
if
(
result
&&
columns
!=
null
&&
columns
.
Count
>
0
)
//
if (result && columns != null && columns.Count > 0)
{
//
{
result
=
perforAscolumnsRepository
.
AddRange
(
columns
.
ToArray
());
//
result = perforAscolumnsRepository.AddRange(columns.ToArray());
if
(
result
)
//
if (result)
{
//
{
var
parentList
=
columns
.
Select
(
t
=>
t
.
ParentID
).
Distinct
();
//
var parentList = columns.Select(t => t.ParentID).Distinct();
var
keyvalue
=
new
Dictionary
<
int
?,
int
>();
//
var keyvalue = new Dictionary<int?, int>();
foreach
(
var
item
in
columns
.
Where
(
t
=>
parentList
.
Contains
(
t
.
TempColumnID
)))
//
foreach (var item in columns.Where(t => parentList.Contains(t.TempColumnID)))
{
//
{
keyvalue
.
Add
(
item
.
TempColumnID
,
item
.
ID
);
//
keyvalue.Add(item.TempColumnID, item.ID);
}
//
}
columns
=
columns
.
Where
(
t
=>
t
.
ParentID
.
HasValue
&&
t
.
ParentID
!=
0
).
ToList
();
//
columns = columns.Where(t => t.ParentID.HasValue && t.ParentID != 0).ToList();
columns
?.
ForEach
(
t
=>
t
.
ParentID
=
keyvalue
[
t
.
ParentID
]);
//
columns?.ForEach(t => t.ParentID = keyvalue[t.ParentID]);
result
=
perforAscolumnsRepository
.
UpdateRange
(
columns
.
ToArray
());
//
result = perforAscolumnsRepository.UpdateRange(columns.ToArray());
}
//
}
}
//
}
return
result
?
new
ApiResponse
(
ResponseType
.
OK
)
:
new
ApiResponse
(
ResponseType
.
Fail
);
//
return result ? new ApiResponse(ResponseType.OK) : new ApiResponse(ResponseType.Fail);
}
//
}
return
allot
==
null
?
new
ApiResponse
(
ResponseType
.
Fail
,
"绩效ID无效"
)
:
new
ApiResponse
(
ResponseType
.
Fail
,
"模版信息不存在"
);
//
return allot == null ? new ApiResponse(ResponseType.Fail, "绩效ID无效") : new ApiResponse(ResponseType.Fail, "模版信息不存在");
}
//
}
#
endregion
//
#endregion
/// <summary>
//
/// <summary>
/// 科室列表
//
/// 科室列表
/// </summary>
//
/// </summary>
/// <returns></returns>
//
/// <returns></returns>
public
List
<
TitleValue
>
Department
(
AssessRequest
request
)
//
public List<TitleValue> Department(AssessRequest request)
{
//
{
var
allot
=
perforPerallotRepository
.
GetEntity
(
t
=>
t
.
ID
==
request
.
AllotID
);
//
var allot = perforPerallotRepository.GetEntity(t => t.ID == request.AllotID);
if
(
allot
!=
null
)
//
if (allot != null)
{
//
{
var
result
=
new
List
<
TitleValue
>();
//
var result = new List<TitleValue>();
//取到该家医院下所有科室
//
//取到该家医院下所有科室
var
idList
=
perforPerallotRepository
.
GetEntities
(
t
=>
t
.
HospitalId
==
allot
.
HospitalId
).
Select
(
s
=>
s
.
ID
).
ToList
();
//
var idList = perforPerallotRepository.GetEntities(t => t.HospitalId == allot.HospitalId).Select(s => s.ID).ToList();
//var department = perforImaccountbasicRepository.GetEntities(t => t.Department != "" && idList.Contains(t.AllotID.Value))?.Select(t => t.Department).Distinct().ToList();
//
//var department = perforImaccountbasicRepository.GetEntities(t => t.Department != "" && idList.Contains(t.AllotID.Value))?.Select(t => t.Department).Distinct().ToList();
//if (department != null && department.Count > 0)
//
//if (department != null && department.Count > 0)
//{
//
//{
var
department
=
perforImaccountbasicRepository
.
GetEntities
(
t
=>
t
.
DoctorAccountingUnit
!=
""
&&
idList
.
Contains
(
t
.
AllotID
.
Value
))?.
Select
(
t
=>
t
.
DoctorAccountingUnit
).
Distinct
().
ToList
();
//
var department = perforImaccountbasicRepository.GetEntities(t => t.DoctorAccountingUnit != "" && idList.Contains(t.AllotID.Value))?.Select(t => t.DoctorAccountingUnit).Distinct().ToList();
if
(
department
!=
null
&&
department
.
Count
>
0
)
//
if (department != null && department.Count > 0)
{
//
{
//自己选的
//
//自己选的
var
_checked
=
perforAsdataRepository
.
GetEntities
(
t
=>
t
.
AssessID
==
request
.
AssessID
)?.
Select
(
t
=>
t
.
Department
).
ToList
();
//
var _checked = perforAsdataRepository.GetEntities(t => t.AssessID == request.AssessID)?.Select(t => t.Department).ToList();
if
(
_checked
!=
null
&&
_checked
.
Count
>
0
)
//
if (_checked != null && _checked.Count > 0)
result
=
_checked
.
Select
(
t
=>
new
TitleValue
{
Title
=
t
,
Value
=
t
,
State
=
1
}).
ToList
();
//
result = _checked.Select(t => new TitleValue { Title = t, Value = t, State = 1 }).ToList();
//已经被选择
//
//已经被选择
var
assessId
=
perforAsassessRepository
.
GetEntities
(
t
=>
t
.
AllotID
==
request
.
AllotID
)?.
Select
(
t
=>
t
.
ID
).
ToList
();
//
var assessId = perforAsassessRepository.GetEntities(t => t.AllotID == request.AllotID)?.Select(t => t.ID).ToList();
if
(
assessId
.
Count
>
0
&&
assessId
!=
null
)
//
if (assessId.Count > 0 && assessId != null)
{
//
{
assessId
.
Remove
(
request
.
AssessID
);
//
assessId.Remove(request.AssessID);
_checked
=
perforAsdataRepository
.
GetEntities
(
t
=>
assessId
.
Contains
(
t
.
AssessID
.
Value
))?.
Select
(
t
=>
t
.
Department
).
ToList
();
//
_checked = perforAsdataRepository.GetEntities(t => assessId.Contains(t.AssessID.Value))?.Select(t => t.Department).ToList();
if
(
_checked
!=
null
&&
_checked
.
Count
>
0
)
//
if (_checked != null && _checked.Count > 0)
{
//
{
result
=
result
.
Union
(
_checked
.
Select
(
t
=>
new
TitleValue
{
Title
=
t
,
Value
=
t
,
State
=
3
})).
ToList
();
//
result = result.Union(_checked.Select(t => new TitleValue { Title = t, Value = t, State = 3 })).ToList();
}
//
}
}
//
}
//未被选择
//
//未被选择
if
(
result
!=
null
||
result
.
Count
>
0
)
//
if (result != null || result.Count > 0)
department
=
department
.
Except
(
result
.
Select
(
t
=>
t
.
Title
)).
ToList
();
//
department = department.Except(result.Select(t => t.Title)).ToList();
result
=
result
.
Union
(
department
.
Select
(
t
=>
new
TitleValue
{
Title
=
t
,
Value
=
t
,
State
=
2
})).
OrderBy
(
t
=>
t
.
State
).
ThenBy
(
t
=>
t
.
Title
).
ToList
();
//
result = result.Union(department.Select(t => new TitleValue { Title = t, Value = t, State = 2 })).OrderBy(t => t.State).ThenBy(t => t.Title).ToList();
}
//
}
return
result
;
//
return result;
}
//
}
return
new
List
<
TitleValue
>();
//
return new List<TitleValue>();
}
//
}
}
//
}
}
//
}
performance/Performance.Services/AttendanceService.cs
View file @
a7bd8716
...
@@ -2629,6 +2629,5 @@ public string ExcelDownload(List<Dictionary<string, object>> rows, string name,
...
@@ -2629,6 +2629,5 @@ public string ExcelDownload(List<Dictionary<string, object>> rows, string name,
return
filepath
;
return
filepath
;
}
}
#
endregion
#
endregion
}
}
}
}
performance/Performance.Services/ConfigService.cs
View file @
a7bd8716
...
@@ -741,7 +741,7 @@ public void Copy(per_allot allot)
...
@@ -741,7 +741,7 @@ public void Copy(per_allot allot)
NewCopy
(
new
CopyRequest
()
NewCopy
(
new
CopyRequest
()
{
{
AllotId
=
allot
.
ID
,
AllotId
=
allot
.
ID
,
Type
=
new
[]
{
"personnels"
,
"workItems"
,
"drugTypeDisburses"
,
"drugTypeFactors"
,
"deptTypes"
,
"agains"
,
"accountings"
,
"department"
,
"attendanceType"
}
Type
=
new
[]
{
"personnels"
,
"workItems"
,
"drugTypeDisburses"
,
"drugTypeFactors"
,
"deptTypes"
,
"agains"
,
"accountings"
,
"department"
,
"attendanceType"
,
"assessType"
}
});
});
}
}
...
@@ -769,6 +769,7 @@ public void NewCopy(CopyRequest request)
...
@@ -769,6 +769,7 @@ public void NewCopy(CopyRequest request)
{
"agains"
,
(
allot
,
prevAllotId
)
=>
_copyService
.
Copy_Agains
(
allot
,
prevAllotId
,
delHistotyData
:
true
)
},
{
"agains"
,
(
allot
,
prevAllotId
)
=>
_copyService
.
Copy_Agains
(
allot
,
prevAllotId
,
delHistotyData
:
true
)
},
{
"accountings"
,
(
allot
,
prevAllotId
)
=>
_copyService
.
Copy_Accountings
(
allot
,
prevAllotId
,
delHistotyData
:
true
)
},
{
"accountings"
,
(
allot
,
prevAllotId
)
=>
_copyService
.
Copy_Accountings
(
allot
,
prevAllotId
,
delHistotyData
:
true
)
},
{
"attendanceType"
,
(
allot
,
prevAllotId
)
=>
_copyService
.
Copy_AttendanceType
(
allot
,
prevAllotId
,
delHistotyData
:
true
)
},
{
"attendanceType"
,
(
allot
,
prevAllotId
)
=>
_copyService
.
Copy_AttendanceType
(
allot
,
prevAllotId
,
delHistotyData
:
true
)
},
{
"assessType"
,
(
allot
,
prevAllotId
)
=>
_copyService
.
Copy_AssessType
(
allot
,
prevAllotId
,
delHistotyData
:
true
)
},
{
"department"
,
(
allot
,
prevAllotId
)
=>
_copyService
.
Copy_DeptDic
(
allot
,
prevAllotId
,
delHistotyData
:
true
)
},
{
"department"
,
(
allot
,
prevAllotId
)
=>
_copyService
.
Copy_DeptDic
(
allot
,
prevAllotId
,
delHistotyData
:
true
)
},
};
};
...
...
performance/Performance.Services/CopyService.cs
View file @
a7bd8716
using
Microsoft.Extensions.Logging
;
using
Microsoft.Extensions.Logging
;
using
Performance.DtoModels
;
using
Performance.EntityModels
;
using
Performance.EntityModels
;
using
Performance.EntityModels.Entity
;
using
Performance.EntityModels.Entity
;
using
Performance.Repository
;
using
Performance.Repository
;
...
@@ -21,6 +22,12 @@ public class CopyService : IAutoInjection
...
@@ -21,6 +22,12 @@ public class CopyService : IAutoInjection
private
readonly
PerforCofdrugtypeDisburseRepository
_drugtypeDisburseRepository
;
private
readonly
PerforCofdrugtypeDisburseRepository
_drugtypeDisburseRepository
;
private
readonly
PerforCofdrugtypefactorRepository
_cofdrugtypefactorRepository
;
private
readonly
PerforCofdrugtypefactorRepository
_cofdrugtypefactorRepository
;
private
readonly
PerfoPperAttendanceTypeRepository
_pperAttendanceTypeRepository
;
private
readonly
PerfoPperAttendanceTypeRepository
_pperAttendanceTypeRepository
;
private
readonly
PerforPerAssessCategoryRepository
_perforPerAssessCategoryRepository
;
private
readonly
PerforPerAssessSchemeRepository
_perforPerAssessSchemeRepository
;
private
readonly
PerforPerAssessSchemeItemsRepository
_perforPerAssessSchemeItemsRepository
;
private
readonly
PerforPerAssessSchemeTargetRepository
_perforPerAssessSchemeTargetRepository
;
private
readonly
PerforPerAssessIssueSchemeRepository
_perforPerAssessIssueSchemeRepository
;
private
readonly
PerforPerAttendanceDeptRepository
_perforPerAttendanceDeptRepository
;
public
CopyService
(
public
CopyService
(
ILogger
<
ConfigService
>
logger
,
ILogger
<
ConfigService
>
logger
,
...
@@ -32,7 +39,14 @@ public class CopyService : IAutoInjection
...
@@ -32,7 +39,14 @@ public class CopyService : IAutoInjection
PerforCofaccountingRepository
cofaccountingRepository
,
PerforCofaccountingRepository
cofaccountingRepository
,
PerforCofdrugtypeDisburseRepository
drugtypeDisburseRepository
,
PerforCofdrugtypeDisburseRepository
drugtypeDisburseRepository
,
PerforCofdrugtypefactorRepository
cofdrugtypefactorRepository
,
PerforCofdrugtypefactorRepository
cofdrugtypefactorRepository
,
PerfoPperAttendanceTypeRepository
pperAttendanceTypeRepository
)
PerfoPperAttendanceTypeRepository
pperAttendanceTypeRepository
,
PerforPerAssessCategoryRepository
perforPerAssessCategoryRepository
,
PerforPerAssessSchemeRepository
perforPerAssessSchemeRepository
,
PerforPerAssessSchemeItemsRepository
perforPerAssessSchemeItemsRepository
,
PerforPerAssessSchemeTargetRepository
perforPerAssessSchemeTargetRepository
,
PerforPerAssessIssueSchemeRepository
perforPerAssessIssueSchemeRepository
,
PerforPerAttendanceDeptRepository
perforPerAttendanceDeptRepository
)
{
{
_logger
=
logger
;
_logger
=
logger
;
_perdeptdicRepository
=
perdeptdicRepository
;
_perdeptdicRepository
=
perdeptdicRepository
;
...
@@ -44,6 +58,12 @@ public class CopyService : IAutoInjection
...
@@ -44,6 +58,12 @@ public class CopyService : IAutoInjection
_drugtypeDisburseRepository
=
drugtypeDisburseRepository
;
_drugtypeDisburseRepository
=
drugtypeDisburseRepository
;
_cofdrugtypefactorRepository
=
cofdrugtypefactorRepository
;
_cofdrugtypefactorRepository
=
cofdrugtypefactorRepository
;
_pperAttendanceTypeRepository
=
pperAttendanceTypeRepository
;
_pperAttendanceTypeRepository
=
pperAttendanceTypeRepository
;
_perforPerAssessCategoryRepository
=
perforPerAssessCategoryRepository
;
_perforPerAssessSchemeRepository
=
perforPerAssessSchemeRepository
;
_perforPerAssessSchemeItemsRepository
=
perforPerAssessSchemeItemsRepository
;
_perforPerAssessSchemeTargetRepository
=
perforPerAssessSchemeTargetRepository
;
_perforPerAssessIssueSchemeRepository
=
perforPerAssessIssueSchemeRepository
;
_perforPerAttendanceDeptRepository
=
perforPerAttendanceDeptRepository
;
}
}
...
@@ -244,10 +264,11 @@ public void Copy_AttendanceType(per_allot allot, int prevAllotId, bool delHistot
...
@@ -244,10 +264,11 @@ public void Copy_AttendanceType(per_allot allot, int prevAllotId, bool delHistot
{
{
var
flag
=
delHistotyData
;
var
flag
=
delHistotyData
;
_logger
.
LogInformation
(
$"copy attendanceType"
);
_logger
.
LogInformation
(
$"copy attendanceType"
);
var
UpdateattendanceTypes
=
_pperAttendanceTypeRepository
.
GetEntities
(
t
=>
t
.
AllotId
==
allot
.
ID
);
if
(
delHistotyData
&&
UpdateattendanceTypes
!=
null
&&
UpdateattendanceTypes
.
Any
())
UpdateattendanceTypes
.
ForEach
(
t
=>
t
.
AllotId
=
0
);
flag
=
_pperAttendanceTypeRepository
.
UpdateRange
(
UpdateattendanceTypes
.
ToArray
());
var
attendanceTypes
=
_pperAttendanceTypeRepository
.
GetEntities
(
t
=>
t
.
AllotId
==
allot
.
ID
);
var
attendanceTypes
=
_pperAttendanceTypeRepository
.
GetEntities
(
t
=>
t
.
AllotId
==
allot
.
ID
);
if
(
delHistotyData
&&
attendanceTypes
!=
null
&&
attendanceTypes
.
Any
())
flag
=
_pperAttendanceTypeRepository
.
RemoveRange
(
attendanceTypes
.
ToArray
());
if
(
flag
||
attendanceTypes
==
null
||
!
attendanceTypes
.
Any
())
if
(
flag
||
attendanceTypes
==
null
||
!
attendanceTypes
.
Any
())
{
{
attendanceTypes
=
_pperAttendanceTypeRepository
.
GetEntities
(
t
=>
t
.
AllotId
==
prevAllotId
)
??
_pperAttendanceTypeRepository
.
GetEntities
(
t
=>
t
.
AllotId
==
-
1
);
attendanceTypes
=
_pperAttendanceTypeRepository
.
GetEntities
(
t
=>
t
.
AllotId
==
prevAllotId
)
??
_pperAttendanceTypeRepository
.
GetEntities
(
t
=>
t
.
AllotId
==
-
1
);
...
@@ -263,7 +284,198 @@ public void Copy_AttendanceType(per_allot allot, int prevAllotId, bool delHistot
...
@@ -263,7 +284,198 @@ public void Copy_AttendanceType(per_allot allot, int prevAllotId, bool delHistot
_pperAttendanceTypeRepository
.
AddRange
(
newAttendanceTypes
.
ToArray
());
_pperAttendanceTypeRepository
.
AddRange
(
newAttendanceTypes
.
ToArray
());
}
}
}
}
var
attendanceDepts
=
_perforPerAttendanceDeptRepository
.
GetEntities
(
t
=>
t
.
AllotId
==
allot
.
ID
);
var
attendanceTypess
=
_pperAttendanceTypeRepository
.
GetEntities
(
t
=>
t
.
AllotId
==
allot
.
ID
||
t
.
AllotId
==
0
);
foreach
(
var
item
in
attendanceDepts
)
{
for
(
int
i
=
1
;
i
<=
30
;
i
++)
{
int
?
dayValue
=
(
int
?)
typeof
(
per_attendance_dept
).
GetProperty
(
"Day"
+
i
.
ToString
(
"D2"
))?.
GetValue
(
item
);
if
(
dayValue
!=
null
&&
dayValue
>
0
)
{
string
attendanceName
=
attendanceTypess
.
FirstOrDefault
(
t
=>
t
.
Id
==
dayValue
)?.
AttendanceName
;
if
(!
string
.
IsNullOrEmpty
(
attendanceName
))
{
int
?
attendanceId
=
attendanceTypess
.
FirstOrDefault
(
w
=>
w
.
AttendanceName
==
attendanceName
&&
w
.
AllotId
==
allot
.
ID
)?.
Id
;
if
(
attendanceId
!=
null
)
{
typeof
(
per_attendance_dept
).
GetProperty
(
"Day"
+
i
.
ToString
(
"D2"
))?.
SetValue
(
item
,
attendanceId
);
}
}
}
}
}
flag
=
_perforPerAttendanceDeptRepository
.
UpdateRange
(
attendanceDepts
.
ToArray
());
if
(
flag
)
{
attendanceTypess
=
attendanceTypess
.
Where
(
t
=>
t
.
AllotId
==
0
).
ToList
();
_pperAttendanceTypeRepository
.
RemoveRange
(
attendanceTypess
.
ToArray
());
}
}
public
void
Copy_AssessType
(
per_allot
allot
,
int
prevAllotId
,
bool
delHistotyData
=
false
)
{
var
flag
=
delHistotyData
;
_logger
.
LogInformation
(
$"copy assessType"
);
var
aCategory
=
_perforPerAssessCategoryRepository
.
GetEntities
(
t
=>
t
.
AllotId
==
allot
.
ID
);
if
(
delHistotyData
&&
aCategory
!=
null
&&
aCategory
.
Any
())
flag
=
_perforPerAssessCategoryRepository
.
RemoveRange
(
aCategory
.
ToArray
());
var
aScheme
=
_perforPerAssessSchemeRepository
.
GetEntities
(
t
=>
t
.
AllotId
==
allot
.
ID
);
if
(
delHistotyData
&&
aScheme
!=
null
&&
aScheme
.
Any
())
flag
=
_perforPerAssessSchemeRepository
.
RemoveRange
(
aScheme
.
ToArray
());
var
aSchemeItems
=
_perforPerAssessSchemeItemsRepository
.
GetEntities
(
t
=>
t
.
AllotId
==
allot
.
ID
);
if
(
delHistotyData
&&
aSchemeItems
!=
null
&&
aSchemeItems
.
Any
())
flag
=
_perforPerAssessSchemeItemsRepository
.
RemoveRange
(
aSchemeItems
.
ToArray
());
var
aSchemeTarget
=
_perforPerAssessSchemeTargetRepository
.
GetEntities
(
t
=>
t
.
AllotId
==
allot
.
ID
);
if
(
delHistotyData
&&
aSchemeTarget
!=
null
&&
aSchemeTarget
.
Any
())
flag
=
_perforPerAssessSchemeTargetRepository
.
RemoveRange
(
aSchemeTarget
.
ToArray
());
var
aIssueScheme
=
_perforPerAssessIssueSchemeRepository
.
GetEntities
(
t
=>
t
.
AllotId
==
allot
.
ID
);
if
(
delHistotyData
&&
aIssueScheme
!=
null
&&
aIssueScheme
.
Any
())
flag
=
_perforPerAssessIssueSchemeRepository
.
RemoveRange
(
aIssueScheme
.
ToArray
());
var
dateTimeNow
=
DateTime
.
Now
;
if
(
flag
||
aCategory
==
null
||
!
aCategory
.
Any
())
{
aCategory
=
_perforPerAssessCategoryRepository
.
GetEntities
(
t
=>
t
.
AllotId
==
prevAllotId
)
??
_perforPerAssessCategoryRepository
.
GetEntities
(
t
=>
t
.
AllotId
==
-
1
);
if
(
aCategory
!=
null
&&
aCategory
.
Any
())
{
var
newaCategorys
=
aCategory
.
Select
(
t
=>
new
per_assess_category
{
Id
=
0
,
AllotId
=
allot
.
ID
,
AssessCode
=
t
.
AssessCode
,
AssessName
=
t
.
AssessName
,
CreateBy
=
t
.
CreateBy
,
CreateTime
=
dateTimeNow
,
UpdateBy
=
t
.
UpdateBy
,
UpdateTime
=
dateTimeNow
,
});
var
aCategoryTemp
=
_perforPerAssessCategoryRepository
.
AddRange
(
newaCategorys
.
ToArray
());
//if (!aCategoryTemp) throw new PerformanceException("考核分类未继承成功,请检查后在尝试!");
}
}
var
aCategoryss
=
_perforPerAssessCategoryRepository
.
GetEntities
(
t
=>
t
.
AllotId
==
allot
.
ID
);
if
(
flag
||
aScheme
==
null
||
!
aScheme
.
Any
())
{
aScheme
=
_perforPerAssessSchemeRepository
.
GetEntities
(
t
=>
t
.
AllotId
==
prevAllotId
)
??
_perforPerAssessSchemeRepository
.
GetEntities
(
t
=>
t
.
AllotId
==
-
1
);
if
(
aScheme
!=
null
&&
aScheme
.
Any
())
{
var
newaSchemes
=
aScheme
.
Select
(
t
=>
new
per_assess_scheme
{
Id
=
0
,
AllotId
=
allot
.
ID
,
AssessId
=
aCategoryss
.
FirstOrDefault
(
w
=>
w
.
AssessCode
==
aCategory
.
FirstOrDefault
(
s
=>
s
.
Id
==
t
.
AssessId
).
AssessCode
&&
w
.
AllotId
==
allot
.
ID
).
Id
,
SchemeCode
=
t
.
SchemeCode
,
SchemeName
=
t
.
SchemeName
,
SchemeRemarks
=
t
.
SchemeRemarks
,
CreateBy
=
t
.
CreateBy
,
CreateTime
=
dateTimeNow
,
UpdateBy
=
t
.
UpdateBy
,
UpdateTime
=
dateTimeNow
,
});
var
aSchemeTemp
=
_perforPerAssessSchemeRepository
.
AddRange
(
newaSchemes
.
ToArray
());
// if (!aSchemeTemp) throw new PerformanceException("考核方案未继承成功,请检查后在尝试!");
}
}
var
aSchemes
=
_perforPerAssessSchemeRepository
.
GetEntities
(
t
=>
t
.
AllotId
==
allot
.
ID
);
if
(
flag
||
aSchemeItems
==
null
||
!
aSchemeItems
.
Any
())
{
aSchemeItems
=
_perforPerAssessSchemeItemsRepository
.
GetEntities
(
t
=>
t
.
AllotId
==
prevAllotId
)
??
_perforPerAssessSchemeItemsRepository
.
GetEntities
(
t
=>
t
.
AllotId
==
-
1
);
if
(
aSchemeItems
!=
null
&&
aSchemeItems
.
Any
())
{
var
newaSchemeItems
=
aSchemeItems
.
Select
(
t
=>
new
per_assess_scheme_items
{
Id
=
0
,
AllotId
=
allot
.
ID
,
AssessId
=
aCategoryss
.
FirstOrDefault
(
w
=>
w
.
AssessCode
==
aCategory
.
FirstOrDefault
(
s
=>
s
.
Id
==
t
.
AssessId
).
AssessCode
&&
w
.
AllotId
==
allot
.
ID
).
Id
,
SchemeId
=
aSchemes
.
FirstOrDefault
(
w
=>
w
.
SchemeCode
==
aScheme
.
FirstOrDefault
(
s
=>
s
.
Id
==
t
.
SchemeId
).
SchemeCode
&&
w
.
AllotId
==
allot
.
ID
).
Id
,
ItemCode
=
t
.
ItemCode
,
ItemName1
=
t
.
ItemName1
,
ItemName2
=
t
.
ItemName2
,
UnitCode
=
t
.
UnitCode
,
UnitType
=
t
.
UnitType
,
AccountingUnit
=
t
.
AccountingUnit
,
AssessNorm
=
t
.
AssessNorm
,
AssessScore
=
t
.
AssessScore
,
CreateBy
=
t
.
CreateBy
,
CreateTime
=
dateTimeNow
,
UpdateBy
=
t
.
UpdateBy
,
UpdateTime
=
dateTimeNow
,
});
var
aSchemeItemsTemp
=
_perforPerAssessSchemeItemsRepository
.
AddRange
(
newaSchemeItems
.
ToArray
());
// if (!aSchemeItemsTemp) throw new PerformanceException("考核方案指标未继承成功,请检查后在尝试!");
}
}
}
var
aSchemeItemss
=
_perforPerAssessSchemeItemsRepository
.
GetEntities
(
t
=>
t
.
AllotId
==
allot
.
ID
);
if
(
flag
||
aSchemeTarget
==
null
||
!
aSchemeTarget
.
Any
())
{
aSchemeTarget
=
_perforPerAssessSchemeTargetRepository
.
GetEntities
(
t
=>
t
.
AllotId
==
prevAllotId
)
??
_perforPerAssessSchemeTargetRepository
.
GetEntities
(
t
=>
t
.
AllotId
==
-
1
);
if
(
aSchemeTarget
!=
null
&&
aSchemeTarget
.
Any
())
{
var
newaSchemeTarget
=
aSchemeTarget
.
Select
(
t
=>
new
per_assess_scheme_target
{
Id
=
0
,
AllotId
=
allot
.
ID
,
AssessId
=
aCategoryss
.
FirstOrDefault
(
w
=>
w
.
AssessCode
==
aCategory
.
FirstOrDefault
(
s
=>
s
.
Id
==
t
.
AssessId
).
AssessCode
&&
w
.
AllotId
==
allot
.
ID
).
Id
,
SchemeId
=
aSchemes
.
FirstOrDefault
(
w
=>
w
.
SchemeCode
==
aScheme
.
FirstOrDefault
(
s
=>
s
.
Id
==
t
.
SchemeId
).
SchemeCode
&&
w
.
AllotId
==
allot
.
ID
).
Id
,
UnitCode
=
t
.
UnitCode
,
UnitType
=
t
.
UnitType
,
AccountingUnit
=
t
.
AccountingUnit
,
CreateBy
=
t
.
CreateBy
,
CreateTime
=
dateTimeNow
,
UpdateBy
=
t
.
UpdateBy
,
UpdateTime
=
dateTimeNow
,
});
var
aSchemeTargetTemp
=
_perforPerAssessSchemeTargetRepository
.
AddRange
(
newaSchemeTarget
.
ToArray
());
// if (!aSchemeTargetTemp) throw new PerformanceException("考核对象未继承成功,请检查后在尝试!");
}
}
if
(
flag
||
aIssueScheme
==
null
||
!
aIssueScheme
.
Any
())
{
aIssueScheme
=
_perforPerAssessIssueSchemeRepository
.
GetEntities
(
t
=>
t
.
AllotId
==
prevAllotId
)
??
_perforPerAssessIssueSchemeRepository
.
GetEntities
(
t
=>
t
.
AllotId
==
-
1
);
if
(
aIssueScheme
!=
null
&&
aIssueScheme
.
Any
())
{
var
newaIssueSchemess
=
aIssueScheme
.
Select
(
t
=>
new
per_assess_issue_scheme
{
Id
=
0
,
AllotId
=
allot
.
ID
,
AssessId
=
aCategoryss
.
FirstOrDefault
(
w
=>
w
.
AssessCode
==
aCategory
.
FirstOrDefault
(
s
=>
s
.
Id
==
t
.
AssessId
).
AssessCode
&&
w
.
AllotId
==
allot
.
ID
).
Id
,
AssessCode
=
t
.
AssessCode
,
AssessName
=
t
.
AssessName
,
SchemeId
=
aSchemes
.
FirstOrDefault
(
w
=>
w
.
SchemeCode
==
aScheme
.
FirstOrDefault
(
s
=>
s
.
Id
==
t
.
SchemeId
).
SchemeCode
&&
w
.
AllotId
==
allot
.
ID
).
Id
,
SchemeCode
=
t
.
SchemeCode
,
SchemeName
=
t
.
SchemeName
,
ItemId
=
aSchemeItemss
.
FirstOrDefault
(
w
=>
w
.
ItemCode
==
aSchemeItems
.
FirstOrDefault
(
s
=>
s
.
Id
==
t
.
ItemId
).
ItemCode
&&
w
.
AllotId
==
allot
.
ID
).
Id
,
ItemCode
=
t
.
ItemCode
,
ItemName1
=
t
.
ItemName1
,
ItemName2
=
t
.
ItemName2
,
AssessNorm
=
t
.
AssessNorm
,
AssessScore
=
t
.
AssessScore
,
UnitCode
=
t
.
UnitCode
,
UnitType
=
t
.
UnitType
,
AccountingUnit
=
t
.
AccountingUnit
,
State
=
(
int
)
Assess
.
AssessState
.
未提交
,
CreateBy
=
t
.
CreateBy
,
CreateTime
=
dateTimeNow
,
UpdateBy
=
t
.
UpdateBy
,
UpdateTime
=
dateTimeNow
,
Score
=
null
,
ScoreRemark
=
null
,
TargetUnitCode
=
t
.
TargetUnitCode
,
TargetUnitType
=
t
.
TargetUnitType
,
TargetAccountingUnit
=
t
.
TargetAccountingUnit
,
SubmitBy
=
null
,
SubmitTime
=
null
,
AuditBy
=
null
,
AuditTime
=
null
,
AuditRemark
=
null
,
});
var
aIssueSchemeTemp
=
_perforPerAssessIssueSchemeRepository
.
AddRange
(
newaIssueSchemess
.
ToArray
());
// if (!aSchemeItemsTemp) throw new PerformanceException("考核下发未继承成功,请检查后在尝试!");
}
}
}
}
}
}
}
performance/Performance.Services/DownloadService.cs
View file @
a7bd8716
...
@@ -245,7 +245,7 @@ public string AllComputerDown(sys_hospital hospital, List<dynamic> dynamics, str
...
@@ -245,7 +245,7 @@ public string AllComputerDown(sys_hospital hospital, List<dynamic> dynamics, str
{
{
var
temp
=
data
.
ElementAt
(
row
);
var
temp
=
data
.
ElementAt
(
row
);
var
low
=
temp
.
Keys
.
ToString
().
ToLower
();
var
low
=
temp
.
Keys
.
ToString
().
ToLower
();
var
value
=
temp
[
headList
[
col
].
Name
.
ToLower
()]
;
var
value
=
temp
.
GetValue
(
headList
[
col
].
Name
,
""
)
;
worksheet
.
Cells
[
row
+
3
,
col
+
1
].
Value
=
value
;
worksheet
.
Cells
[
row
+
3
,
col
+
1
].
Value
=
value
;
}
}
...
...
performance/Performance.Services/SecondAllotService.cs
View file @
a7bd8716
...
@@ -4,6 +4,7 @@
...
@@ -4,6 +4,7 @@
using
Microsoft.Extensions.DependencyInjection
;
using
Microsoft.Extensions.DependencyInjection
;
using
Microsoft.Extensions.Logging
;
using
Microsoft.Extensions.Logging
;
using
Microsoft.Extensions.Options
;
using
Microsoft.Extensions.Options
;
using
OfficeOpenXml.FormulaParsing.Excel.Functions.DateTime
;
using
Performance.DtoModels
;
using
Performance.DtoModels
;
using
Performance.DtoModels.AppSettings
;
using
Performance.DtoModels.AppSettings
;
using
Performance.EntityModels
;
using
Performance.EntityModels
;
...
@@ -184,6 +185,24 @@ public List<SecondListResponse> GetSecondList(int userId)
...
@@ -184,6 +185,24 @@ public List<SecondListResponse> GetSecondList(int userId)
secondList
.
AddRange
(
histroys
.
Where
(
w
=>
!
sids
.
Contains
(
w
.
Id
)));
secondList
.
AddRange
(
histroys
.
Where
(
w
=>
!
sids
.
Contains
(
w
.
Id
)));
}
}
foreach
(
var
item
in
allotList
)
{
if
(!
secondList
.
Any
(
w
=>
w
.
AllotId
==
item
.
ID
&&
w
.
Year
==
item
.
Year
&&
w
.
Month
==
item
.
Month
))
{
secondList
.
Add
(
new
ag_secondallot
{
AllotId
=
item
.
ID
,
UseTempId
=
null
,
Year
=
item
.
Year
,
Month
=
item
.
Month
,
UnitType
=
unitType
.
FirstOrDefault
(),
Department
=
userInfo
.
User
.
Department
,
RealGiveFee
=
0
,
PreRealGiveFee
=
0
,
Status
=
0
,
});
}
}
var
list
=
_mapper
.
Map
<
List
<
SecondListResponse
>>(
secondList
);
var
list
=
_mapper
.
Map
<
List
<
SecondListResponse
>>(
secondList
);
// 二次分配只支持单医院
// 二次分配只支持单医院
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment