2021-04-30 10:28:37 +08:00
|
|
|
|
using System;
|
|
|
|
|
using System.Collections.Generic;
|
|
|
|
|
using System.Linq;
|
|
|
|
|
using System.Text;
|
|
|
|
|
using System.Threading.Tasks;
|
|
|
|
|
|
|
|
|
|
namespace BLL
|
|
|
|
|
{
|
|
|
|
|
/// <summary>
|
|
|
|
|
///
|
|
|
|
|
/// </summary>
|
|
|
|
|
public static class AnalyseResourceService
|
|
|
|
|
{
|
|
|
|
|
public static List<Model.SpResourceCollection> GetListResourceCollection(List<string> unitIdList, string userName, DateTime? startTime, DateTime? endTime)
|
|
|
|
|
{
|
|
|
|
|
var resourceCollections = new List<Model.SpResourceCollection>();
|
|
|
|
|
var units = BLL.UnitService.GetUnitDropDownList();
|
|
|
|
|
if (unitIdList.Count() > 0)
|
|
|
|
|
{
|
|
|
|
|
units = units.Where(x => unitIdList.Contains(x.UnitId)).ToList();
|
|
|
|
|
}
|
|
|
|
|
///本单位
|
|
|
|
|
string thisUnitId = BLL.Const.UnitId_CWCEC;
|
2023-05-09 19:56:06 +08:00
|
|
|
|
//var unitThis = BLL.Const.UnitId_CWCEC;
|
2021-04-30 10:28:37 +08:00
|
|
|
|
//if (unitThis != null)
|
|
|
|
|
//{
|
|
|
|
|
// thisUnitId = unitThis.UnitId;
|
|
|
|
|
//}
|
|
|
|
|
if (units.Count() > 0)
|
|
|
|
|
{
|
|
|
|
|
foreach (var unitItem in units)
|
|
|
|
|
{
|
|
|
|
|
List<string> userNameList = new List<string>();
|
|
|
|
|
////法律法规
|
|
|
|
|
var LawRegulationList = from x in Funs.DB.Law_LawRegulationList
|
|
|
|
|
where (x.UnitId == unitItem.UnitId || (x.UnitId == null && unitItem.UnitId == thisUnitId)) && (!startTime.HasValue || x.CompileDate >= startTime) && (!endTime.HasValue || x.CompileDate <= endTime)
|
|
|
|
|
select x;
|
|
|
|
|
if (!string.IsNullOrEmpty(userName))
|
|
|
|
|
{
|
|
|
|
|
LawRegulationList = LawRegulationList.Where(x => x.CompileMan.Contains(userName));
|
|
|
|
|
}
|
|
|
|
|
////取上传人 姓名列表
|
|
|
|
|
var nameList1 = LawRegulationList.Select(x => x.CompileMan).Distinct();
|
|
|
|
|
if (nameList1.Count() > 0)
|
|
|
|
|
{
|
|
|
|
|
userNameList.AddRange(nameList1);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
////标准规范
|
|
|
|
|
var HSSEStandardsList = from x in Funs.DB.Law_HSSEStandardsList
|
|
|
|
|
where (x.UnitId == unitItem.UnitId || (x.UnitId == null && unitItem.UnitId == thisUnitId)) && (!startTime.HasValue || x.CompileDate >= startTime) && (!endTime.HasValue || x.CompileDate <= endTime)
|
|
|
|
|
select x;
|
|
|
|
|
if (!string.IsNullOrEmpty(userName))
|
|
|
|
|
{
|
|
|
|
|
HSSEStandardsList = HSSEStandardsList.Where(x => x.CompileMan.Contains(userName));
|
|
|
|
|
}
|
|
|
|
|
////取上传人 姓名列表
|
|
|
|
|
var nameList2 = HSSEStandardsList.Select(x => x.CompileMan).Distinct();
|
|
|
|
|
if (nameList2.Count() > 0)
|
|
|
|
|
{
|
|
|
|
|
userNameList.AddRange(nameList2);
|
|
|
|
|
}
|
|
|
|
|
////规章制度
|
|
|
|
|
var RulesRegulations = from x in Funs.DB.Law_RulesRegulations
|
|
|
|
|
where (x.UnitId == unitItem.UnitId || (x.UnitId == null && unitItem.UnitId == thisUnitId)) && (!startTime.HasValue || x.CompileDate >= startTime) && (!endTime.HasValue || x.CompileDate <= endTime)
|
|
|
|
|
select x;
|
|
|
|
|
if (!string.IsNullOrEmpty(userName))
|
|
|
|
|
{
|
|
|
|
|
RulesRegulations = RulesRegulations.Where(x => x.CompileMan.Contains(userName));
|
|
|
|
|
}
|
|
|
|
|
var nameList3 = RulesRegulations.Select(x => x.CompileMan).Distinct();
|
|
|
|
|
if (nameList3.Count() > 0)
|
|
|
|
|
{
|
|
|
|
|
userNameList.AddRange(nameList3);
|
|
|
|
|
}
|
|
|
|
|
////管理规定
|
|
|
|
|
var ManageRule = from x in Funs.DB.Law_ManageRule
|
|
|
|
|
where (x.UnitId == unitItem.UnitId || (x.UnitId == null && unitItem.UnitId == thisUnitId)) && (!startTime.HasValue || x.CompileDate >= startTime) && (!endTime.HasValue || x.CompileDate <= endTime)
|
|
|
|
|
select x;
|
|
|
|
|
if (!string.IsNullOrEmpty(userName))
|
|
|
|
|
{
|
|
|
|
|
ManageRule = ManageRule.Where(x => x.CompileMan.Contains(userName));
|
|
|
|
|
}
|
|
|
|
|
var nameList4 = ManageRule.Select(x => x.CompileMan).Distinct();
|
|
|
|
|
if (nameList4.Count() > 0)
|
|
|
|
|
{
|
|
|
|
|
userNameList.AddRange(nameList4);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
////培训教材
|
|
|
|
|
var TrainingItem = from x in Funs.DB.Training_TrainingItem
|
|
|
|
|
where (x.UnitId == unitItem.UnitId || (x.UnitId == null && unitItem.UnitId == thisUnitId)) && (!startTime.HasValue || x.CompileDate >= startTime) && (!endTime.HasValue || x.CompileDate <= endTime)
|
|
|
|
|
select x;
|
|
|
|
|
if (!string.IsNullOrEmpty(userName))
|
|
|
|
|
{
|
|
|
|
|
TrainingItem = TrainingItem.Where(x => x.CompileMan.Contains(userName));
|
|
|
|
|
}
|
|
|
|
|
var nameList5 = TrainingItem.Select(x => x.CompileMan).Distinct();
|
|
|
|
|
if (nameList5.Count() > 0)
|
|
|
|
|
{
|
|
|
|
|
userNameList.AddRange(nameList5);
|
|
|
|
|
}
|
|
|
|
|
////安全试题库
|
|
|
|
|
var TrainTestDBItem = from x in Funs.DB.Training_TrainTestDBItem
|
|
|
|
|
where (x.UnitId == unitItem.UnitId || (x.UnitId == null && unitItem.UnitId == thisUnitId)) && (!startTime.HasValue || x.CompileDate >= startTime) && (!endTime.HasValue || x.CompileDate <= endTime)
|
|
|
|
|
select x;
|
|
|
|
|
if (!string.IsNullOrEmpty(userName))
|
|
|
|
|
{
|
|
|
|
|
TrainTestDBItem = TrainTestDBItem.Where(x => x.CompileMan.Contains(userName));
|
|
|
|
|
}
|
|
|
|
|
var nameList6 = TrainTestDBItem.Select(x => x.CompileMan).Distinct();
|
|
|
|
|
if (nameList6.Count() > 0)
|
|
|
|
|
{
|
|
|
|
|
userNameList.AddRange(nameList6);
|
|
|
|
|
}
|
|
|
|
|
////事故案例库
|
|
|
|
|
var AccidentCaseItem = from x in Funs.DB.EduTrain_AccidentCaseItem
|
|
|
|
|
where (x.UnitId == unitItem.UnitId || (x.UnitId == null && unitItem.UnitId == thisUnitId)) && (!startTime.HasValue || x.CompileDate >= startTime) && (!endTime.HasValue || x.CompileDate <= endTime)
|
|
|
|
|
select x;
|
|
|
|
|
if (!string.IsNullOrEmpty(userName))
|
|
|
|
|
{
|
|
|
|
|
AccidentCaseItem = AccidentCaseItem.Where(x => x.CompileMan.Contains(userName));
|
|
|
|
|
}
|
|
|
|
|
////取上传人 姓名列表
|
|
|
|
|
var nameList7 = AccidentCaseItem.Select(x => x.CompileMan).Distinct();
|
|
|
|
|
if (nameList7.Count() > 0)
|
|
|
|
|
{
|
|
|
|
|
userNameList.AddRange(nameList7);
|
|
|
|
|
}
|
|
|
|
|
////应知应会库
|
|
|
|
|
var KnowledgeDB = from x in Funs.DB.Training_KnowledgeItem
|
|
|
|
|
where (x.UnitId == unitItem.UnitId || (x.UnitId == null && unitItem.UnitId == thisUnitId)) && (!startTime.HasValue || x.CompileDate >= startTime) && (!endTime.HasValue || x.CompileDate <= endTime)
|
|
|
|
|
select x;
|
|
|
|
|
if (!string.IsNullOrEmpty(userName))
|
|
|
|
|
{
|
|
|
|
|
KnowledgeDB = KnowledgeDB.Where(x => x.CompileMan.Contains(userName));
|
|
|
|
|
}
|
|
|
|
|
////取上传人 姓名列表
|
|
|
|
|
var nameList8 = KnowledgeDB.Select(x => x.CompileMan).Distinct();
|
|
|
|
|
if (nameList8.Count() > 0)
|
|
|
|
|
{
|
|
|
|
|
userNameList.AddRange(nameList8);
|
|
|
|
|
}
|
|
|
|
|
////危险源
|
|
|
|
|
var HazardList = from x in Funs.DB.Technique_HazardList
|
|
|
|
|
where (x.UnitId == unitItem.UnitId || (x.UnitId == null && unitItem.UnitId == thisUnitId)) && (!startTime.HasValue || x.CompileDate >= startTime) && (!endTime.HasValue || x.CompileDate <= endTime)
|
|
|
|
|
select x;
|
|
|
|
|
if (!string.IsNullOrEmpty(userName))
|
|
|
|
|
{
|
|
|
|
|
HazardList = HazardList.Where(x => x.CompileMan.Contains(userName));
|
|
|
|
|
}
|
|
|
|
|
////取上传人 姓名列表
|
|
|
|
|
var nameList9 = HazardList.Select(x => x.CompileMan).Distinct();
|
|
|
|
|
if (nameList9.Count() > 0)
|
|
|
|
|
{
|
|
|
|
|
userNameList.AddRange(nameList9);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
////安全隐患
|
|
|
|
|
var Rectify = from x in Funs.DB.Technique_RectifyItem
|
|
|
|
|
where (x.UnitId == unitItem.UnitId || (x.UnitId == null && unitItem.UnitId == thisUnitId)) && (!startTime.HasValue || x.CompileDate >= startTime) && (!endTime.HasValue || x.CompileDate <= endTime)
|
|
|
|
|
select x;
|
|
|
|
|
if (!string.IsNullOrEmpty(userName))
|
|
|
|
|
{
|
|
|
|
|
Rectify = Rectify.Where(x => x.CompileMan.Contains(userName));
|
|
|
|
|
}
|
|
|
|
|
////取上传人 姓名列表
|
|
|
|
|
var nameList10 = Rectify.Select(x => x.CompileMan).Distinct();
|
|
|
|
|
if (nameList10.Count() > 0)
|
|
|
|
|
{
|
|
|
|
|
userNameList.AddRange(nameList10);
|
|
|
|
|
}
|
|
|
|
|
////HAZOP管理
|
|
|
|
|
var HAZOP = from x in Funs.DB.Technique_HAZOP
|
|
|
|
|
where (x.UnitId == unitItem.UnitId || (x.UnitId == null && unitItem.UnitId == thisUnitId)) && (!startTime.HasValue || x.CompileDate >= startTime) && (!endTime.HasValue || x.CompileDate <= endTime)
|
|
|
|
|
select x;
|
|
|
|
|
if (!string.IsNullOrEmpty(userName))
|
|
|
|
|
{
|
|
|
|
|
HAZOP = HAZOP.Where(x => x.CompileMan.Contains(userName));
|
|
|
|
|
}
|
|
|
|
|
////取上传人 姓名列表
|
|
|
|
|
var nameList11 = HAZOP.Select(x => x.CompileMan).Distinct();
|
|
|
|
|
if (nameList11.Count() > 0)
|
|
|
|
|
{
|
|
|
|
|
userNameList.AddRange(nameList11);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
////AppraiseCount管理
|
|
|
|
|
var Appraise = from x in Funs.DB.Technique_Appraise
|
|
|
|
|
where (x.UnitId == unitItem.UnitId || (x.UnitId == null && unitItem.UnitId == thisUnitId)) && (!startTime.HasValue || x.CompileDate >= startTime) && (!endTime.HasValue || x.CompileDate <= endTime)
|
|
|
|
|
select x;
|
|
|
|
|
if (!string.IsNullOrEmpty(userName))
|
|
|
|
|
{
|
|
|
|
|
Appraise = Appraise.Where(x => x.CompileMan.Contains(userName));
|
|
|
|
|
}
|
|
|
|
|
////取上传人 姓名列表
|
|
|
|
|
var nameListAppraise = Appraise.Select(x => x.CompileMan).Distinct();
|
|
|
|
|
if (nameListAppraise.Count() > 0)
|
|
|
|
|
{
|
|
|
|
|
userNameList.AddRange(nameListAppraise);
|
|
|
|
|
}
|
|
|
|
|
////安全专家
|
|
|
|
|
var Expert = from x in Funs.DB.Technique_Expert
|
|
|
|
|
where (x.UnitId == unitItem.UnitId || (x.UnitId == null && unitItem.UnitId == thisUnitId)) && (!startTime.HasValue || x.CompileDate >= startTime) && (!endTime.HasValue || x.CompileDate <= endTime)
|
|
|
|
|
select x;
|
|
|
|
|
if (!string.IsNullOrEmpty(userName))
|
|
|
|
|
{
|
|
|
|
|
Expert = Expert.Where(x => x.CompileMan.Contains(userName));
|
|
|
|
|
}
|
|
|
|
|
////取上传人 姓名列表
|
|
|
|
|
var nameList12 = Expert.Select(x => x.CompileMan).Distinct();
|
|
|
|
|
if (nameList12.Count() > 0)
|
|
|
|
|
{
|
|
|
|
|
userNameList.AddRange(nameList12);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
////应急预案
|
|
|
|
|
var Emergency = from x in Funs.DB.Technique_Emergency
|
|
|
|
|
where (x.UnitId == unitItem.UnitId || (x.UnitId == null && unitItem.UnitId == thisUnitId)) && (!startTime.HasValue || x.CompileDate >= startTime) && (!endTime.HasValue || x.CompileDate <= endTime)
|
|
|
|
|
select x;
|
|
|
|
|
if (!string.IsNullOrEmpty(userName))
|
|
|
|
|
{
|
|
|
|
|
Emergency = Emergency.Where(x => x.CompileMan.Contains(userName));
|
|
|
|
|
}
|
|
|
|
|
////取上传人 姓名列表
|
|
|
|
|
var nameList13 = Emergency.Select(x => x.CompileMan).Distinct();
|
|
|
|
|
if (nameList13.Count() > 0)
|
|
|
|
|
{
|
|
|
|
|
userNameList.AddRange(nameList13);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
////专项方案
|
|
|
|
|
var SpecialScheme = from x in Funs.DB.Technique_SpecialScheme
|
|
|
|
|
where (x.UnitId == unitItem.UnitId || (x.UnitId == null && unitItem.UnitId == thisUnitId)) && (!startTime.HasValue || x.CompileDate >= startTime) && (!endTime.HasValue || x.CompileDate <= endTime)
|
|
|
|
|
select x;
|
|
|
|
|
if (!string.IsNullOrEmpty(userName))
|
|
|
|
|
{
|
|
|
|
|
SpecialScheme = SpecialScheme.Where(x => x.CompileMan.Contains(userName));
|
|
|
|
|
}
|
|
|
|
|
////取上传人 姓名列表
|
|
|
|
|
var nameList14 = SpecialScheme.Select(x => x.CompileMan).Distinct();
|
|
|
|
|
if (nameList14.Count() > 0)
|
|
|
|
|
{
|
|
|
|
|
userNameList.AddRange(nameList14);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (userNameList.Count() > 0)
|
|
|
|
|
{
|
|
|
|
|
userNameList = userNameList.Distinct().ToList();
|
|
|
|
|
foreach (var userItem in userNameList)
|
|
|
|
|
{
|
|
|
|
|
Model.SpResourceCollection spItem = new Model.SpResourceCollection
|
|
|
|
|
{
|
|
|
|
|
UnitName = unitItem.UnitName,
|
|
|
|
|
UserName = userItem,
|
|
|
|
|
|
|
|
|
|
////法律法规
|
|
|
|
|
LawRegulationCount = LawRegulationList.Where(x => x.CompileMan == userItem).Count()
|
|
|
|
|
};
|
|
|
|
|
int LawRegulationPass = LawRegulationList.Where(x => x.CompileMan == userItem && x.IsPass == true).Count();
|
|
|
|
|
spItem.TotalCount += spItem.LawRegulationCount;
|
|
|
|
|
spItem.TotalUsedCount += LawRegulationPass;
|
|
|
|
|
|
|
|
|
|
////标准规范
|
|
|
|
|
spItem.HSSEStandardListCount = HSSEStandardsList.Where(x => x.CompileMan == userItem).Count();
|
|
|
|
|
int HSSEStandardListPass = HSSEStandardsList.Where(x => x.CompileMan == userItem && x.IsPass == true).Count();
|
|
|
|
|
spItem.TotalCount += spItem.HSSEStandardListCount;
|
|
|
|
|
spItem.TotalUsedCount += HSSEStandardListPass;
|
|
|
|
|
|
|
|
|
|
////规章制度
|
|
|
|
|
spItem.RulesRegulationsCount = RulesRegulations.Where(x => x.CompileMan == userItem).Count();
|
|
|
|
|
int RulesRegulationsPass = RulesRegulations.Where(x => x.CompileMan == userItem && x.IsPass == true).Count();
|
|
|
|
|
spItem.TotalCount += spItem.RulesRegulationsCount;
|
|
|
|
|
spItem.TotalUsedCount += RulesRegulationsPass;
|
|
|
|
|
|
|
|
|
|
////管理规定
|
|
|
|
|
spItem.ManageRuleCount = ManageRule.Where(x => x.CompileMan == userItem).Count();
|
|
|
|
|
int ManageRulePass = ManageRule.Where(x => x.CompileMan == userItem && x.IsPass == true).Count();
|
|
|
|
|
spItem.TotalCount += spItem.ManageRuleCount;
|
|
|
|
|
spItem.TotalUsedCount += ManageRulePass;
|
|
|
|
|
|
|
|
|
|
////培训教材
|
|
|
|
|
spItem.TrainDBCount = TrainingItem.Where(x => x.CompileMan == userItem).Count();
|
|
|
|
|
int TrainingItemPass = TrainingItem.Where(x => x.CompileMan == userItem && x.IsPass == true).Count();
|
|
|
|
|
spItem.TotalCount += spItem.TrainDBCount;
|
|
|
|
|
spItem.TotalUsedCount += TrainingItemPass;
|
|
|
|
|
|
|
|
|
|
////安全试题库
|
|
|
|
|
spItem.TrainTestDBCount = TrainTestDBItem.Where(x => x.CompileMan == userItem).Count();
|
|
|
|
|
int TrainTestDBItemPass = TrainTestDBItem.Where(x => x.CompileMan == userItem && x.IsPass == true).Count();
|
|
|
|
|
spItem.TotalCount += spItem.TrainTestDBCount;
|
|
|
|
|
spItem.TotalUsedCount += TrainTestDBItemPass;
|
|
|
|
|
|
|
|
|
|
////事故案例库
|
|
|
|
|
spItem.AccidentCaseCount = AccidentCaseItem.Where(x => x.CompileMan == userItem).Count();
|
|
|
|
|
int AccidentCaseItemPass = AccidentCaseItem.Where(x => x.CompileMan == userItem && x.IsPass == true).Count();
|
|
|
|
|
spItem.TotalCount += spItem.AccidentCaseCount;
|
|
|
|
|
spItem.TotalUsedCount += AccidentCaseItemPass;
|
|
|
|
|
|
|
|
|
|
////应知应会库
|
|
|
|
|
spItem.KnowledgeDBCount = KnowledgeDB.Where(x => x.CompileMan == userItem).Count();
|
|
|
|
|
int KnowledgeDBPass = KnowledgeDB.Where(x => x.CompileMan == userItem && x.IsPass == true).Count();
|
|
|
|
|
spItem.TotalCount += spItem.KnowledgeDBCount;
|
|
|
|
|
spItem.TotalUsedCount += KnowledgeDBPass;
|
|
|
|
|
|
|
|
|
|
////危险源
|
|
|
|
|
spItem.HazardListCount = HazardList.Where(x => x.CompileMan == userItem).Count();
|
|
|
|
|
int HazardListPass = HazardList.Where(x => x.CompileMan == userItem && x.IsPass == true).Count();
|
|
|
|
|
spItem.TotalCount += spItem.HazardListCount;
|
|
|
|
|
spItem.TotalUsedCount += HazardListPass;
|
|
|
|
|
|
|
|
|
|
////安全隐患
|
|
|
|
|
spItem.RectifyCount = Rectify.Where(x => x.CompileMan == userItem).Count();
|
|
|
|
|
int RectifyPass = Rectify.Where(x => x.CompileMan == userItem && x.IsPass == true).Count();
|
|
|
|
|
spItem.TotalCount += spItem.RectifyCount;
|
|
|
|
|
spItem.TotalUsedCount += RectifyPass;
|
|
|
|
|
|
|
|
|
|
////HAZOP管理
|
|
|
|
|
spItem.HAZOPCount = HAZOP.Where(x => x.CompileMan == userItem).Count();
|
|
|
|
|
int HAZOPPass = HAZOP.Where(x => x.CompileMan == userItem && x.IsPass == true).Count();
|
|
|
|
|
spItem.TotalCount += spItem.HAZOPCount;
|
|
|
|
|
spItem.TotalUsedCount += HAZOPPass;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
////AppraiseCount管理
|
|
|
|
|
spItem.AppraiseCount = Appraise.Where(x => x.CompileMan == userItem).Count();
|
|
|
|
|
int AppraisePass = Appraise.Where(x => x.CompileMan == userItem && x.IsPass == true).Count();
|
|
|
|
|
spItem.TotalCount += spItem.AppraiseCount;
|
|
|
|
|
spItem.TotalUsedCount += AppraisePass;
|
|
|
|
|
|
|
|
|
|
////安全专家
|
|
|
|
|
spItem.ExpertCount = Expert.Where(x => x.CompileMan == userItem).Count();
|
|
|
|
|
int ExpertPass = Expert.Where(x => x.CompileMan == userItem && x.IsPass == true).Count();
|
|
|
|
|
spItem.TotalCount += spItem.ExpertCount;
|
|
|
|
|
spItem.TotalUsedCount += ExpertPass;
|
|
|
|
|
|
|
|
|
|
////应急预案
|
|
|
|
|
spItem.EmergencyCount = Emergency.Where(x => x.CompileMan == userItem).Count();
|
|
|
|
|
int EmergencyPass = Emergency.Where(x => x.CompileMan == userItem && x.IsPass == true).Count();
|
|
|
|
|
spItem.TotalCount += spItem.EmergencyCount;
|
|
|
|
|
spItem.TotalUsedCount += EmergencyPass;
|
|
|
|
|
|
|
|
|
|
////专项方案
|
|
|
|
|
spItem.SpecialSchemeCount = SpecialScheme.Where(x => x.CompileMan == userItem).Count();
|
|
|
|
|
int SpecialSchemePass = SpecialScheme.Where(x => x.CompileMan == userItem && x.IsPass == true).Count();
|
|
|
|
|
spItem.TotalCount += spItem.SpecialSchemeCount;
|
|
|
|
|
spItem.TotalUsedCount += SpecialSchemePass;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
string rate = string.Empty;
|
|
|
|
|
if (spItem.TotalCount > 0)
|
|
|
|
|
{
|
|
|
|
|
decimal totalUsedRate = Convert.ToDecimal(spItem.TotalUsedCount) / Convert.ToDecimal(spItem.TotalCount);
|
|
|
|
|
totalUsedRate = Math.Round(totalUsedRate * 100, 2, MidpointRounding.AwayFromZero);
|
|
|
|
|
if (totalUsedRate == 1)
|
|
|
|
|
{
|
|
|
|
|
rate = "100.00";
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
rate = totalUsedRate.ToString();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
rate = "0";
|
|
|
|
|
}
|
|
|
|
|
spItem.TotalUsedRate = rate + "%";
|
|
|
|
|
resourceCollections.Add(spItem);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
Model.SpResourceCollection spResourceCollection = new Model.SpResourceCollection
|
|
|
|
|
{
|
|
|
|
|
UnitName = unitItem.UnitName
|
|
|
|
|
};
|
|
|
|
|
resourceCollections.Add(spResourceCollection);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return resourceCollections;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|