1代码合并
This commit is contained in:
parent
4bbce72980
commit
5712066e0a
|
|
@ -20,7 +20,6 @@
|
|||
/SUBQHSE/DataExchange/bin
|
||||
/SUBQHSE/DataExchange/obj/Debug
|
||||
/SUBQHSEPackFile
|
||||
/SGGLPackFile
|
||||
*.user
|
||||
/SUBQHSE/FineUIPro.Web/File/Excel/Temp
|
||||
*.xml
|
||||
|
|
@ -37,4 +36,3 @@
|
|||
/SUBQHSEPackFile_2023-8-31_001/PackFile/aspnet_client/FreeTextBox/images/css/toolbarbutton.off.over.gif
|
||||
/SUBQHSE/Backup
|
||||
/SUBQHSE/BLLTests1
|
||||
/SGGL/FineUIPro.Web/ErrLog.txt
|
||||
Binary file not shown.
|
|
@ -0,0 +1,85 @@
|
|||
{
|
||||
"Version": 1,
|
||||
"WorkspaceRootPath": "E:\\\u8BFA\u5FC5\u8FBE\\\u65B0\u7586\u6CB9\u5EFA\\",
|
||||
"Documents": [],
|
||||
"DocumentGroupContainers": [
|
||||
{
|
||||
"Orientation": 1,
|
||||
"VerticalTabListWidth": 256,
|
||||
"DocumentGroups": [
|
||||
{
|
||||
"DockedHeight": 1230,
|
||||
"SelectedChildIndex": -1,
|
||||
"Children": [
|
||||
{
|
||||
"$type": "Bookmark",
|
||||
"Name": "ST:143:0:{116d2292-e37d-41cd-a077-ebacac4c8cc4}"
|
||||
},
|
||||
{
|
||||
"$type": "Bookmark",
|
||||
"Name": "ST:149:0:{1fc202d4-d401-403c-9834-5b218574bb67}"
|
||||
},
|
||||
{
|
||||
"$type": "Bookmark",
|
||||
"Name": "ST:144:0:{116d2292-e37d-41cd-a077-ebacac4c8cc4}"
|
||||
},
|
||||
{
|
||||
"$type": "Bookmark",
|
||||
"Name": "ST:129:0:{1fc202d4-d401-403c-9834-5b218574bb67}"
|
||||
},
|
||||
{
|
||||
"$type": "Bookmark",
|
||||
"Name": "ST:147:0:{116d2292-e37d-41cd-a077-ebacac4c8cc4}"
|
||||
},
|
||||
{
|
||||
"$type": "Bookmark",
|
||||
"Name": "ST:148:0:{116d2292-e37d-41cd-a077-ebacac4c8cc4}"
|
||||
},
|
||||
{
|
||||
"$type": "Bookmark",
|
||||
"Name": "ST:173:0:{116d2292-e37d-41cd-a077-ebacac4c8cc4}"
|
||||
},
|
||||
{
|
||||
"$type": "Bookmark",
|
||||
"Name": "ST:174:0:{116d2292-e37d-41cd-a077-ebacac4c8cc4}"
|
||||
},
|
||||
{
|
||||
"$type": "Bookmark",
|
||||
"Name": "ST:172:0:{116d2292-e37d-41cd-a077-ebacac4c8cc4}"
|
||||
},
|
||||
{
|
||||
"$type": "Bookmark",
|
||||
"Name": "ST:145:0:{116d2292-e37d-41cd-a077-ebacac4c8cc4}"
|
||||
},
|
||||
{
|
||||
"$type": "Bookmark",
|
||||
"Name": "ST:146:0:{116d2292-e37d-41cd-a077-ebacac4c8cc4}"
|
||||
},
|
||||
{
|
||||
"$type": "Bookmark",
|
||||
"Name": "ST:0:0:{aa2115a1-9712-457b-9047-dbb71ca2cdd2}"
|
||||
},
|
||||
{
|
||||
"$type": "Bookmark",
|
||||
"Name": "ST:0:0:{1c4feeaa-4718-4aa9-859d-94ce25d182ba}"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"DockedHeight": 228,
|
||||
"SelectedChildIndex": -1,
|
||||
"Children": [
|
||||
{
|
||||
"$type": "Bookmark",
|
||||
"Name": "ST:0:0:{d78612c7-9962-4b83-95d9-268046dad23a}"
|
||||
},
|
||||
{
|
||||
"$type": "Bookmark",
|
||||
"Name": "ST:0:0:{34e76e81-ee4a-11d0-ae2e-00a0c90fffc3}"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
|
|
@ -1660,302 +1660,5 @@ namespace BLL
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
#region 根据培训类型获取项目培训人员信息
|
||||
/// <summary>
|
||||
/// 根据培训类型获取项目培训人员信息
|
||||
/// </summary>
|
||||
/// <param name="projectId">项目ID</param>
|
||||
/// <param name="unitIds">培训单位ID</param>
|
||||
/// <param name="workPostIds">培训岗位ID</param>
|
||||
/// <param name="trainTypeId">培训类型ID</param>
|
||||
/// <returns></returns>
|
||||
public static List<Model.PersonItem> getTrainingPersonListByTrainTypeId(string projectId, string unitIds, string workPostIds, string departIds, string trainTypeId, string InTime, string strParam)
|
||||
{
|
||||
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
|
||||
{
|
||||
DateTime inDateTime = DateTime.Now;
|
||||
if (!string.IsNullOrEmpty(InTime) && !"null".Equals(InTime))
|
||||
{
|
||||
inDateTime = DateTime.Parse(InTime);
|
||||
}
|
||||
|
||||
List<string> unitIdList = Funs.GetStrListByStr(unitIds, ',');
|
||||
var getPersons = (from x in db.View_SitePerson_Person
|
||||
where x.ProjectId == projectId && unitIdList.Contains(x.UnitId) && x.IsUsed == true && (string.IsNullOrEmpty(strParam) || x.PersonName.Contains(strParam)) && (string.IsNullOrEmpty(InTime) || x.InTime < inDateTime)
|
||||
&& x.InTime <= DateTime.Now && (!x.OutTime.HasValue || x.OutTime >= DateTime.Now)
|
||||
select new Model.PersonItem
|
||||
{
|
||||
PersonId = x.PersonId,
|
||||
CardNo = x.CardNo,
|
||||
PersonName = x.PersonName,
|
||||
SexName = x.SexName,
|
||||
IdentityCard = x.IdentityCard,
|
||||
Address = x.Address,
|
||||
ProjectId = x.ProjectId,
|
||||
ProjectCode = x.ProjectCode,
|
||||
ProjectName = x.ProjectName,
|
||||
UnitId = x.UnitId,
|
||||
UnitCode = x.UnitCode,
|
||||
UnitName = x.UnitName,
|
||||
TeamGroupId = x.TeamGroupId,
|
||||
TeamGroupName = x.TeamGroupName,
|
||||
WorkPostId = x.WorkPostId,
|
||||
WorkPostName = x.WorkPostName,
|
||||
InTime = string.Format("{0:yyyy-MM-dd}", x.InTime),
|
||||
OutTime = string.Format("{0:yyyy-MM-dd}", x.OutTime),
|
||||
OutResult = x.OutResult,
|
||||
Telephone = x.Telephone,
|
||||
PhotoUrl = x.PhotoUrl,
|
||||
DepartName = x.DepartName,
|
||||
}).ToList();
|
||||
|
||||
|
||||
|
||||
|
||||
if (!string.IsNullOrEmpty(workPostIds))
|
||||
{
|
||||
List<string> workPostIdList = Funs.GetStrListByStr(workPostIds, ',');
|
||||
getPersons = getPersons.Where(x => workPostIdList.Contains(x.WorkPostId)).ToList();
|
||||
}
|
||||
if (!string.IsNullOrEmpty(trainTypeId) && trainTypeId == Const.SpecialSafeTrainId)//专项安全培训
|
||||
{
|
||||
var ids = db.Base_WorkPost.Where(x => x.PostType == "2").Select(x => x.WorkPostId).ToList();
|
||||
getPersons = getPersons.Where(x => ids.Contains(x.WorkPostId)).ToList();
|
||||
}
|
||||
List<Model.PersonItem> getTrainPersonList = new List<Model.PersonItem>();
|
||||
var getTrainType = TrainTypeService.GetTrainTypeById(trainTypeId);
|
||||
if (getTrainType != null && (!getTrainType.IsRepeat.HasValue || getTrainType.IsRepeat.Value == false))
|
||||
{
|
||||
int score = 80;
|
||||
var sysTestRule = db.Sys_TestRule.FirstOrDefault();
|
||||
if (sysTestRule != null)
|
||||
{
|
||||
if (sysTestRule.PassingScore > 0)
|
||||
{
|
||||
score = sysTestRule.PassingScore;
|
||||
}
|
||||
}
|
||||
foreach (var item in getPersons)
|
||||
{
|
||||
var getTrainPersonIdList3 = (from x in db.Training_TestRecord
|
||||
join y in db.Training_TestPlan on x.TestPlanId equals y.TestPlanId
|
||||
where y.ProjectId == projectId && y.TrainTypeId == trainTypeId && y.States != "3" && x.TestManId == item.PersonId
|
||||
where x.TestScores > score
|
||||
select x).FirstOrDefault();
|
||||
if (getTrainPersonIdList3 != null)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
var getTrainPersonIdList1 = (from x in db.EduTrain_TrainRecordDetail
|
||||
join y in db.EduTrain_TrainRecord on x.TrainingId equals y.TrainingId
|
||||
where y.ProjectId == projectId && y.TrainTypeId == trainTypeId && x.CheckResult == true && x.PersonId == item.PersonId
|
||||
select x).FirstOrDefault();
|
||||
if (getTrainPersonIdList1 == null)
|
||||
{
|
||||
var getTrainPersonIdList2 = (from x in db.Training_Task
|
||||
join y in db.Training_Plan on x.PlanId equals y.PlanId
|
||||
where y.ProjectId == projectId && y.TrainTypeId == trainTypeId && y.States != "3" && x.UserId == item.PersonId
|
||||
|
||||
select x).FirstOrDefault();
|
||||
if (getTrainPersonIdList2 == null)
|
||||
{
|
||||
getTrainPersonList.Add(item);
|
||||
}
|
||||
}
|
||||
}
|
||||
return getTrainPersonList;
|
||||
}
|
||||
else if (getTrainType != null && getTrainType.IsRepeat.HasValue && getTrainType.IsRepeat.Value == true)//重复的 过滤人员
|
||||
{
|
||||
foreach (var item in getPersons)
|
||||
{
|
||||
//int score = 80;
|
||||
//var sysTestRule = db.Sys_TestRule.FirstOrDefault();
|
||||
//if (sysTestRule != null)
|
||||
//{
|
||||
// if (sysTestRule.PassingScore > 0)
|
||||
// {
|
||||
// score = sysTestRule.PassingScore;
|
||||
// }
|
||||
//}
|
||||
//var getTrainPersonIdList2 = (from x in db.Training_TestRecord
|
||||
// join y in db.Training_TestPlan on x.TestPlanId equals y.TestPlanId
|
||||
// where y.ProjectId == projectId && y.TrainTypeId == trainTypeId && y.States != "3" && x.TestManId == item.PersonId
|
||||
// where x.TestScores > score
|
||||
// select x).FirstOrDefault();
|
||||
//if (getTrainPersonIdList2 != null)
|
||||
//{
|
||||
// continue;
|
||||
//}
|
||||
getTrainPersonList.Add(item);
|
||||
}
|
||||
return getTrainPersonList;
|
||||
}
|
||||
//else if (getTrainType != null && (!getTrainType.IsRepeat.HasValue || getTrainType.IsRepeat == false))//重复的 过滤人员
|
||||
//{
|
||||
// int score = 80;
|
||||
// var sysTestRule = db.Sys_TestRule.FirstOrDefault();
|
||||
// if (sysTestRule != null)
|
||||
// {
|
||||
// if (sysTestRule.PassingScore > 0)
|
||||
// {
|
||||
// score = sysTestRule.PassingScore;
|
||||
// }
|
||||
// }
|
||||
// foreach (var item in getPersons)
|
||||
// {
|
||||
|
||||
// var getTrainPersonIdList2 = (from x in db.Training_TestRecord
|
||||
// join y in db.Training_TestPlan on x.TestPlanId equals y.TestPlanId
|
||||
// where y.ProjectId == projectId && y.TrainTypeId == trainTypeId && y.States != "3" && x.TestManId == item.PersonId
|
||||
// where x.TestScores > score
|
||||
// select x).FirstOrDefault();
|
||||
// if (getTrainPersonIdList2 != null)
|
||||
// {
|
||||
// continue;
|
||||
// }
|
||||
// getTrainPersonList.Add(item);
|
||||
// }
|
||||
// return getTrainPersonList;
|
||||
//}
|
||||
else
|
||||
{
|
||||
return getPersons.ToList();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#endregion
|
||||
|
||||
#region 根据培训类型获取项目培训人员信息
|
||||
/// <summary>
|
||||
/// 根据培训类型获取项目培训人员信息
|
||||
/// </summary>
|
||||
/// <param name="projectId">项目ID</param>
|
||||
/// <param name="unitIds">培训单位ID</param>
|
||||
/// <param name="departIds">培训岗位ID</param>
|
||||
/// <param name="trainTypeId">培训类型ID</param>
|
||||
/// <returns></returns>
|
||||
public static List<Model.PersonItem> getTrainingPersonListByDepartAndTrainTypeId(string unitIds, string departIds, string trainTypeId)
|
||||
{
|
||||
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
|
||||
{
|
||||
List<string> unitIdList = Funs.GetStrListByStr(unitIds, ',');
|
||||
var getPersons = from x in db.Sys_User
|
||||
where unitIdList.Contains(x.UnitId)
|
||||
|
||||
select new Model.PersonItem
|
||||
{
|
||||
PersonId = x.UserId,
|
||||
PersonName = x.UserName,
|
||||
SexName = x.Sex,
|
||||
IdentityCard = x.IdentityCard,
|
||||
UnitId = x.UnitId,
|
||||
WorkPostId = x.WorkPostId,
|
||||
Telephone = x.Telephone,
|
||||
PhotoUrl = x.PhotoUrl,
|
||||
DepartId = x.DepartId
|
||||
};
|
||||
if (!string.IsNullOrEmpty(departIds))
|
||||
{
|
||||
List<string> departIdList = Funs.GetStrListByStr(departIds, ',');
|
||||
getPersons = getPersons.Where(x => departIdList.Contains(x.DepartId));
|
||||
}
|
||||
foreach (var item in getPersons)
|
||||
{
|
||||
Model.Base_Unit unit = db.Base_Unit.FirstOrDefault(x => x.UnitId == item.UnitId);
|
||||
if (!string.IsNullOrEmpty(item.UnitId))
|
||||
{
|
||||
if (unit != null)
|
||||
{
|
||||
item.UnitCode = unit.UnitCode;
|
||||
item.UnitName = unit.UnitName;
|
||||
}
|
||||
}
|
||||
if (!string.IsNullOrEmpty(item.DepartId))
|
||||
{
|
||||
Model.Base_Depart depart = db.Base_Depart.FirstOrDefault(x => x.DepartId == item.DepartId);
|
||||
if (depart != null)
|
||||
{
|
||||
item.DepartName = depart.DepartName;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
if (!string.IsNullOrEmpty(trainTypeId) && trainTypeId == Const.SpecialSafeTrainId)//专项安全培训
|
||||
{
|
||||
var ids = db.Base_WorkPost.Where(x => x.PostType == "2").Select(x => x.WorkPostId).ToList();
|
||||
getPersons = getPersons.Where(x => ids.Contains(x.WorkPostId));
|
||||
}
|
||||
|
||||
List<Model.PersonItem> getTrainPersonList = new List<Model.PersonItem>();
|
||||
var getTrainType = db.Base_TrainType.FirstOrDefault(e => e.TrainTypeId == trainTypeId);
|
||||
|
||||
|
||||
|
||||
|
||||
if (getTrainType != null && (!getTrainType.IsRepeat.HasValue || getTrainType.IsRepeat == false))
|
||||
{
|
||||
int score = 80;
|
||||
var sysTestRule = db.Sys_TestRule.FirstOrDefault();
|
||||
if (sysTestRule != null)
|
||||
{
|
||||
if (sysTestRule.PassingScore > 0)
|
||||
{
|
||||
score = sysTestRule.PassingScore;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
foreach (var item in getPersons)
|
||||
{
|
||||
var getTrainPersonIdList3 = (from x in db.Training_TestRecord
|
||||
join y in db.Training_TestPlan on x.TestPlanId equals y.TestPlanId
|
||||
where y.TrainTypeId == trainTypeId && y.States != "3" && x.TestManId == item.PersonId
|
||||
where x.TestScores > score
|
||||
select x).FirstOrDefault();
|
||||
if (getTrainPersonIdList3 != null)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
var getTrainPersonIdList1 = (from x in db.EduTrain_TrainRecordDetail
|
||||
join y in db.EduTrain_TrainRecord on x.TrainingId equals y.TrainingId
|
||||
where y.ProjectId == null && y.TrainTypeId == trainTypeId && x.CheckResult == true && x.PersonId == item.PersonId
|
||||
select x).FirstOrDefault();
|
||||
if (getTrainPersonIdList1 == null)
|
||||
{
|
||||
var getTrainPersonIdList2 = (from x in db.Training_Task
|
||||
join y in db.Training_Plan on x.PlanId equals y.PlanId
|
||||
where y.ProjectId == null && y.TrainTypeId == trainTypeId && y.States != "3" && x.UserId == item.PersonId
|
||||
select x).FirstOrDefault();
|
||||
if (getTrainPersonIdList2 == null)
|
||||
{
|
||||
getTrainPersonList.Add(item);
|
||||
}
|
||||
}
|
||||
}
|
||||
return getTrainPersonList;
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
|
||||
|
||||
return getPersons.ToList();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -17,37 +17,7 @@ namespace BLL
|
|||
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
|
||||
{
|
||||
var getUser = db.View_Sys_User.FirstOrDefault(x => (x.Account == userInfo.Account || x.Telephone == userInfo.Telephone) && x.IsPost == true && x.Password == Funs.EncryptionPassword(userInfo.Password));
|
||||
if (getUser != null)
|
||||
{
|
||||
return ObjectMapperManager.DefaultInstance.GetMapper<Model.View_Sys_User, Model.UserItem>().Map(getUser);
|
||||
}
|
||||
else
|
||||
{
|
||||
var getPerson = from x in db.SitePerson_Person
|
||||
where (x.Telephone == userInfo.Account || x.PersonName == userInfo.Account)
|
||||
&& (x.Password == Funs.EncryptionPassword(userInfo.Password)
|
||||
|| (x.IdentityCard != null && x.IdentityCard.Substring(x.IdentityCard.Length - 4) == userInfo.Password))
|
||||
&& x.IsUsed == true
|
||||
orderby x.InTime descending
|
||||
select new Model.UserItem
|
||||
{
|
||||
UserId = x.PersonId,
|
||||
UserCode = x.CardNo,
|
||||
Password = x.Password,
|
||||
UserName = x.PersonName,
|
||||
UnitId = x.UnitId,
|
||||
LoginProjectId = x.ProjectId,
|
||||
IdentityCard = x.IdentityCard,
|
||||
Account = x.PersonName,
|
||||
UnitName = db.Base_Unit.First(u => u.UnitId == x.UnitId).UnitName,
|
||||
LoginProjectName = db.Base_Project.First(u => u.ProjectId == x.ProjectId).ProjectName,
|
||||
Telephone = x.Telephone,
|
||||
WorkPostId = x.WorkPostId,
|
||||
WorkPostName = db.Base_WorkPost.First(w => w.WorkPostId == x.WorkPostId).WorkPostName,
|
||||
};
|
||||
return getPerson.FirstOrDefault();
|
||||
}
|
||||
|
||||
return ObjectMapperManager.DefaultInstance.GetMapper<Model.View_Sys_User, Model.UserItem>().Map(getUser);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -24,53 +24,24 @@ namespace BLL
|
|||
{
|
||||
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
|
||||
{
|
||||
if (string.IsNullOrEmpty(projectId))
|
||||
{
|
||||
var getDataLists = (from x in db.Training_TestPlan
|
||||
where (x.ProjectId == null || x.ProjectId=="") && (x.States == states || states == null)
|
||||
orderby x.TestStartTime descending
|
||||
select new Model.TestPlanItem
|
||||
{
|
||||
TestPlanId = x.TestPlanId,
|
||||
TestPlanCode = x.PlanCode,
|
||||
TestPlanName = x.PlanName,
|
||||
ProjectId = x.ProjectId,
|
||||
DepartIds = x.DepartIds,
|
||||
DepartNames = WorkPostService.getDepartNamesByIdsForApi(x.DepartIds),
|
||||
TestPlanManId = x.PlanManId,
|
||||
TestPlanManName = db.Sys_User.First(y => y.UserId == x.PlanManId).UserName,
|
||||
TestPalce = x.TestPalce,
|
||||
TestStartTime = string.Format("{0:yyyy-MM-dd HH:mm}", x.TestStartTime),
|
||||
TestEndTime = string.Format("{0:yyyy-MM-dd HH:mm}", x.TestEndTime),
|
||||
States = x.States,
|
||||
QRCodeUrl = x.QRCodeUrl.Replace('\\', '/'),
|
||||
}).ToList();
|
||||
return getDataLists;
|
||||
}
|
||||
else
|
||||
{
|
||||
var getDataLists = (from x in db.Training_TestPlan
|
||||
where x.ProjectId == projectId && (x.States == states || states == null)
|
||||
orderby x.TestStartTime descending
|
||||
select new Model.TestPlanItem
|
||||
{
|
||||
TestPlanId = x.TestPlanId,
|
||||
TestPlanCode = x.PlanCode,
|
||||
TestPlanName = x.PlanName,
|
||||
ProjectId = x.ProjectId,
|
||||
TestPlanManId = x.PlanManId,
|
||||
DepartIds = x.DepartIds,
|
||||
DepartNames = WorkPostService.getDepartNamesByIdsForApi(x.DepartIds),
|
||||
TestPlanManName = db.Sys_User.First(y => y.UserId == x.PlanManId).UserName,
|
||||
TestPalce = x.TestPalce,
|
||||
TestStartTime = string.Format("{0:yyyy-MM-dd HH:mm}", x.TestStartTime),
|
||||
TestEndTime = string.Format("{0:yyyy-MM-dd HH:mm}", x.TestEndTime),
|
||||
States = x.States,
|
||||
QRCodeUrl = x.QRCodeUrl.Replace('\\', '/'),
|
||||
}).ToList();
|
||||
return getDataLists;
|
||||
|
||||
}
|
||||
var getDataLists = (from x in db.Training_TestPlan
|
||||
where x.ProjectId == projectId && (x.States == states || states == null)
|
||||
orderby x.TestStartTime descending
|
||||
select new Model.TestPlanItem
|
||||
{
|
||||
TestPlanId = x.TestPlanId,
|
||||
TestPlanCode = x.PlanCode,
|
||||
TestPlanName = x.PlanName,
|
||||
ProjectId = x.ProjectId,
|
||||
TestPlanManId = x.PlanManId,
|
||||
TestPlanManName = db.Sys_User.First(y => y.UserId == x.PlanManId).UserName,
|
||||
TestPalce = x.TestPalce,
|
||||
TestStartTime = string.Format("{0:yyyy-MM-dd HH:mm}", x.TestStartTime),
|
||||
TestEndTime = string.Format("{0:yyyy-MM-dd HH:mm}", x.TestEndTime),
|
||||
States = x.States,
|
||||
QRCodeUrl = x.QRCodeUrl.Replace('\\', '/'),
|
||||
}).ToList();
|
||||
return getDataLists;
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
|
|
@ -109,13 +80,9 @@ namespace BLL
|
|||
UnitNames = UnitService.getUnitNamesUnitIds(x.UnitIds),
|
||||
WorkPostIds = x.WorkPostIds,
|
||||
WorkPostNames = WorkPostService.getWorkPostNamesWorkPostIds(x.WorkPostIds),
|
||||
DepartIds = x.DepartIds,
|
||||
DepartNames = WorkPostService.getDepartNamesByIdsForApi(x.DepartIds),
|
||||
States = x.States,
|
||||
QRCodeUrl = x.QRCodeUrl.Replace('\\', '/'),
|
||||
TrainingPlanId = x.PlanId,
|
||||
TrainTypeId = x.TrainTypeId,
|
||||
TrainTypeName = db.Base_TrainType.Where(xx => xx.TrainTypeId == x.TrainTypeId).Select(xx => xx.TrainTypeName).FirstOrDefault()
|
||||
};
|
||||
return getDataLists.FirstOrDefault();
|
||||
}
|
||||
|
|
@ -263,9 +230,8 @@ namespace BLL
|
|||
////新增考试人员明细
|
||||
foreach (var item in getTestPlan.TestRecordItems)
|
||||
{
|
||||
var user = db.Sys_User.FirstOrDefault(e => e.UserId == item.TestManId);
|
||||
var person = db.SitePerson_Person.FirstOrDefault(e => e.PersonId == item.TestManId);
|
||||
if (user != null || person != null)
|
||||
var person = db.SitePerson_Person.FirstOrDefault(e => e.PersonId == item.TestManId);
|
||||
if (person != null)
|
||||
{
|
||||
Model.Training_TestRecord newTrainDetail = new Model.Training_TestRecord
|
||||
{
|
||||
|
|
@ -388,17 +354,15 @@ namespace BLL
|
|||
TestStartTime = DateTime.Now,
|
||||
TestPalce = getTrainingPlan.TeachAddress,
|
||||
UnitIds = getTrainingPlan.UnitIds,
|
||||
UnitNames = UnitService.getUnitNamesUnitIdsForApi(getTrainingPlan.UnitIds),
|
||||
UnitNames = UnitService.getUnitNamesUnitIds(getTrainingPlan.UnitIds),
|
||||
WorkPostIds = getTrainingPlan.WorkPostId,
|
||||
WorkPostNames = WorkPostService.getWorkPostNamesWorkPostIdsForApi(getTrainingPlan.WorkPostId),
|
||||
DepartIds = getTrainingPlan.DepartIds,
|
||||
DepartNames = WorkPostService.getDepartNamesByIdsForApi(getTrainingPlan.DepartIds),
|
||||
WorkPostNames = WorkPostService.getWorkPostNamesWorkPostIds(getTrainingPlan.WorkPostId),
|
||||
PlanId = getTrainingPlan.PlanId,
|
||||
States = "0",
|
||||
};
|
||||
|
||||
string unitId = string.Empty;
|
||||
var user = db.Sys_User.FirstOrDefault(e => e.UserId == userId);
|
||||
var user = db.Sys_User.FirstOrDefault(e => e.UserId == userId);
|
||||
if (user != null)
|
||||
{
|
||||
unitId = user.UnitId;
|
||||
|
|
@ -448,7 +412,7 @@ namespace BLL
|
|||
{
|
||||
db.Training_TestPlan.InsertOnSubmit(newTestPlan);
|
||||
db.SubmitChanges();
|
||||
CodeRecordsService.InsertCodeRecordsByMenuIdProjectIdUnitIdForApi(Const.ProjectTestPlanMenuId, newTestPlan.ProjectId, null, testPlanId, newTestPlan.PlanDate);
|
||||
CodeRecordsService.InsertCodeRecordsByMenuIdProjectIdUnitId(Const.ProjectTestPlanMenuId, newTestPlan.ProjectId, null, testPlanId, newTestPlan.PlanDate);
|
||||
///培训人员
|
||||
var getTrainingTask = (from x in db.Training_Task where x.PlanId == trainingPlanId select x).ToList();
|
||||
foreach (var itemTask in getTrainingTask)
|
||||
|
|
@ -459,7 +423,7 @@ namespace BLL
|
|||
ProjectId = getTrainingPlan.ProjectId,
|
||||
TestPlanId = testPlanId,
|
||||
TestManId = itemTask.UserId,
|
||||
TestType = db.Base_TrainType.First(z => z.TrainTypeId == getTrainingPlan.TrainTypeId).TrainTypeName,
|
||||
TestType= db.Base_TrainType.First(z=>z.TrainTypeId == getTrainingPlan.TrainTypeId).TrainTypeName,
|
||||
};
|
||||
|
||||
db.Training_TestRecord.InsertOnSubmit(newTestRecord);
|
||||
|
|
|
|||
|
|
@ -29,7 +29,7 @@ namespace BLL
|
|||
ProjectId = x.ProjectId,
|
||||
TestPlanId = x.TestPlanId,
|
||||
TestManId = x.TestManId,
|
||||
TestManName = getPname(x.TestManId),
|
||||
TestManName = db.SitePerson_Person.FirstOrDefault(p => p.PersonId == x.TestManId).PersonName,
|
||||
TestStartTime = string.Format("{0:yyyy-MM-dd HH:mm}", x.TestStartTime),
|
||||
TestEndTime = string.Format("{0:yyyy-MM-dd HH:mm}", x.TestEndTime),
|
||||
TestScores = x.TestScores ?? 0,
|
||||
|
|
@ -39,26 +39,6 @@ namespace BLL
|
|||
return getDataLists;
|
||||
}
|
||||
}
|
||||
|
||||
private static string getPname(string TestManId) {
|
||||
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString)) {
|
||||
var pname = "";
|
||||
var personModel = db.SitePerson_Person.FirstOrDefault(p => p.PersonId == TestManId);
|
||||
if (personModel==null)
|
||||
{
|
||||
var unameModel = db.Sys_User.FirstOrDefault(p=>p.UserId== TestManId);
|
||||
if (unameModel!=null)
|
||||
{
|
||||
pname = unameModel.UserName;
|
||||
}
|
||||
}
|
||||
else {
|
||||
pname = personModel.PersonName;
|
||||
}
|
||||
|
||||
return pname;
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region 根据试卷ID获取试卷记录详细
|
||||
|
|
@ -101,7 +81,7 @@ namespace BLL
|
|||
/// </summary>
|
||||
/// <param name="testPlanId"></param>
|
||||
/// <returns></returns>
|
||||
public static string CreateTestRecordItem(Model.Training_TestPlan getTestPlan, string testRecordId, Model.SitePerson_Person person, Model.Sys_User user)
|
||||
public static string CreateTestRecordItem(Model.Training_TestPlan getTestPlan, string testRecordId, Model.SitePerson_Person person)
|
||||
{
|
||||
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
|
||||
{
|
||||
|
|
@ -128,22 +108,9 @@ namespace BLL
|
|||
int sumTestType3Count = testPlanTrainings.Sum(x => x.TestType3Count) ?? 0;
|
||||
|
||||
////获取类型下适合岗位试题集合
|
||||
List<Model.Training_TestTrainingItem> getTestTrainingItemALLs;
|
||||
string WorkPostId = "";
|
||||
string DepartId = "";
|
||||
if (person != null)
|
||||
{
|
||||
WorkPostId = person.WorkPostId;
|
||||
}
|
||||
if (user != null)
|
||||
{
|
||||
DepartId = user.DepartId;
|
||||
}
|
||||
|
||||
getTestTrainingItemALLs = (from x in db.Training_TestTrainingItem
|
||||
where x.TrainingId != null && (x.WorkPostIds == null || string.IsNullOrEmpty(WorkPostId) || x.WorkPostIds.Contains(WorkPostId)) || (x.DepartIds == null || string.IsNullOrEmpty(DepartId) || x.DepartIds.Contains(DepartId))
|
||||
|
||||
select x).ToList();
|
||||
var getTestTrainingItemALLs = from x in db.Training_TestTrainingItem
|
||||
where x.TrainingId != null && (x.WorkPostIds == null || (x.WorkPostIds.Contains(person.WorkPostId) && person.WorkPostId != null))
|
||||
select x;
|
||||
foreach (var itemT in testPlanTrainings)
|
||||
{
|
||||
//// 获取类型下的题目
|
||||
|
|
@ -234,170 +201,12 @@ namespace BLL
|
|||
|
||||
db.Training_TestRecordItem.InsertAllOnSubmit(getItems);
|
||||
db.SubmitChanges();
|
||||
BLL.RedisHelper redis = new BLL.RedisHelper();
|
||||
redis.SetObjString(testRecordId, getItems);
|
||||
}
|
||||
}
|
||||
}
|
||||
return testRecordId;
|
||||
}
|
||||
#endregion
|
||||
|
||||
public static string CreateTestRecordItem(Model.Training_CompanyTrainingItem getCompanyTraining, string testRecordId, Model.SitePerson_Person person, Model.Sys_User user)
|
||||
{
|
||||
|
||||
|
||||
|
||||
|
||||
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
|
||||
{
|
||||
var trainingIds = getCompanyTraining.TestTrainingIds.Split(',');
|
||||
var testTrainings = db.Training_TestTraining.Where(x => trainingIds.Contains(x.TrainingId));
|
||||
var getTestRecord = db.Training_TestRecord.FirstOrDefault(x => x.TestRecordId == testRecordId);
|
||||
if (getTestRecord != null && !getTestRecord.TestStartTime.HasValue)
|
||||
{
|
||||
////考试时长
|
||||
getTestRecord.Duration = 120;
|
||||
getTestRecord.TestStartTime = DateTime.Now;
|
||||
db.SubmitChanges();
|
||||
}
|
||||
|
||||
////当前人考试记录 未加入考试计划的 当考试开始扫码时 不允许再参与考试
|
||||
var item = db.Training_TestRecordItem.FirstOrDefault(x => x.TestRecordId == getTestRecord.TestRecordId);
|
||||
if (item == null)
|
||||
{
|
||||
List<Model.Training_TestTrainingItem> getTestTrainingItemList = new List<Model.Training_TestTrainingItem>();
|
||||
//var testPlanTrainings = from x in db.Training_TestPlanTraining
|
||||
// where x.TestPlanId == getTestPlan.TestPlanId
|
||||
// select x;
|
||||
//// 计划考试中单选、多选、判断题总数
|
||||
var sysTestRule = Funs.DB.Sys_TestRule.FirstOrDefault();
|
||||
|
||||
int sumTestType1Count = 0;// testPlanTrainings.Sum(x => x.TestType1Count) ?? 0;
|
||||
int sumTestType2Count = 0;//testPlanTrainings.Sum(x => x.TestType2Count) ?? 0;
|
||||
int sumTestType3Count = 0;//testPlanTrainings.Sum(x => x.TestType3Count) ?? 0;
|
||||
if (sysTestRule != null)
|
||||
{
|
||||
|
||||
sumTestType1Count = sysTestRule.SCount;
|
||||
sumTestType2Count = sysTestRule.MCount;
|
||||
sumTestType3Count = sysTestRule.JCount;
|
||||
}
|
||||
////获取类型下适合岗位试题集合
|
||||
List<Model.Training_TestTrainingItem> getTestTrainingItemALLs;
|
||||
string WorkPostId = "";
|
||||
string DepartId = "";
|
||||
if (person != null)
|
||||
{
|
||||
WorkPostId = person.WorkPostId;
|
||||
}
|
||||
if (user != null)
|
||||
{
|
||||
DepartId = user.DepartId;
|
||||
}
|
||||
|
||||
getTestTrainingItemALLs = (from x in db.Training_TestTrainingItem
|
||||
where x.TrainingId != null && (x.WorkPostIds == null || string.IsNullOrEmpty(WorkPostId) || x.WorkPostIds.Contains(WorkPostId)) || (x.DepartIds == null || string.IsNullOrEmpty(DepartId) || x.DepartIds.Contains(DepartId))
|
||||
select x).ToList();
|
||||
foreach (var itemT in testTrainings)
|
||||
{
|
||||
//// 获取类型下的题目
|
||||
var getTestTrainingItems = getTestTrainingItemALLs.Where(x => x.TrainingId == itemT.TrainingId).ToList();
|
||||
if (getTestTrainingItems.Count() > 0)
|
||||
{
|
||||
////单选题
|
||||
var getSItem = getTestTrainingItems.Where(x => x.TestType == "1").OrderBy(x => Guid.NewGuid()).Take(sumTestType1Count);
|
||||
if (getSItem.Count() > 0)
|
||||
{
|
||||
getTestTrainingItemList.AddRange(getSItem);
|
||||
}
|
||||
///多选题
|
||||
var getMItem = getTestTrainingItems.Where(x => x.TestType == "2").OrderBy(x => Guid.NewGuid()).Take(sumTestType2Count);
|
||||
if (getMItem.Count() > 0)
|
||||
{
|
||||
getTestTrainingItemList.AddRange(getMItem);
|
||||
}
|
||||
///判断题
|
||||
var getJItem = getTestTrainingItems.Where(x => x.TestType == "3").OrderBy(x => Guid.NewGuid()).Take(sumTestType3Count);
|
||||
if (getJItem.Count() > 0)
|
||||
{
|
||||
getTestTrainingItemList.AddRange(getJItem);
|
||||
}
|
||||
}
|
||||
}
|
||||
//// 获取得到的单选题、多选题、判断题 数量
|
||||
int getDiffTestType1Count = sumTestType1Count - getTestTrainingItemList.Where(x => x.TestType == "1").Count();
|
||||
int getDiffTestType2Count = sumTestType2Count - getTestTrainingItemList.Where(x => x.TestType == "2").Count();
|
||||
int getDiffTestType3Count = sumTestType3Count - getTestTrainingItemList.Where(x => x.TestType == "3").Count();
|
||||
if (getDiffTestType1Count > 0 || getDiffTestType2Count > 0 || getDiffTestType3Count > 0)
|
||||
{
|
||||
var getTestTrainingItemNulls = getTestTrainingItemALLs.Where(x => x.WorkPostIds == null).ToList();
|
||||
if (getTestTrainingItemNulls.Count() > 0)
|
||||
{
|
||||
/// 通用且未选择的题目
|
||||
var getTestTrainingItemDiffs = getTestTrainingItemNulls.Except(getTestTrainingItemList).ToList();
|
||||
////单选题
|
||||
if (getDiffTestType1Count > 0)
|
||||
{
|
||||
var getSItemD = getTestTrainingItemDiffs.Where(x => x.TestType == "1").OrderBy(x => Guid.NewGuid()).Take(getDiffTestType1Count);
|
||||
if (getSItemD.Count() > 0)
|
||||
{
|
||||
getTestTrainingItemList.AddRange(getSItemD);
|
||||
}
|
||||
}
|
||||
///多选题
|
||||
if (getDiffTestType2Count > 0)
|
||||
{
|
||||
var getMItemD = getTestTrainingItemDiffs.Where(x => x.TestType == "2").OrderBy(x => Guid.NewGuid()).Take(getDiffTestType2Count);
|
||||
if (getMItemD.Count() > 0)
|
||||
{
|
||||
getTestTrainingItemList.AddRange(getMItemD);
|
||||
}
|
||||
}
|
||||
///判断题
|
||||
if (getDiffTestType3Count > 0)
|
||||
{
|
||||
var getJItemD = getTestTrainingItemDiffs.Where(x => x.TestType == "3").OrderBy(x => Guid.NewGuid()).Take(getDiffTestType3Count);
|
||||
if (getJItemD.Count() > 0)
|
||||
{
|
||||
getTestTrainingItemList.AddRange(getJItemD);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (getTestTrainingItemList.Count() > 0)
|
||||
{
|
||||
var getItems = from x in getTestTrainingItemList
|
||||
select new Model.Training_TestRecordItem
|
||||
{
|
||||
TestRecordItemId = SQLHelper.GetNewID(),
|
||||
TestRecordId = getTestRecord.TestRecordId,
|
||||
TrainingItemName = x.TrainingItemName,
|
||||
TrainingItemCode = x.TrainingItemCode,
|
||||
Abstracts = x.Abstracts,
|
||||
AttachUrl = x.AttachUrl,
|
||||
TestType = x.TestType,
|
||||
AItem = x.AItem,
|
||||
BItem = x.BItem,
|
||||
CItem = x.CItem,
|
||||
DItem = x.DItem,
|
||||
EItem = x.EItem,
|
||||
AnswerItems = x.AnswerItems,
|
||||
Score = x.TestType == "1" ? sysTestRule.SValue : (x.TestType == "2" ? sysTestRule.MValue : sysTestRule.JValue),
|
||||
};
|
||||
|
||||
db.Training_TestRecordItem.InsertAllOnSubmit(getItems);
|
||||
db.SubmitChanges();
|
||||
BLL.RedisHelper redis = new BLL.RedisHelper();
|
||||
redis.SetObjString(testRecordId, getItems);
|
||||
}
|
||||
}
|
||||
}
|
||||
return testRecordId;
|
||||
}
|
||||
|
||||
|
||||
#region 根据PersonId、TestPlanId生成试卷 扫码生成试卷
|
||||
/// <summary>
|
||||
/// 根据PersonId、TestPlanId生成试卷 扫码生成试卷
|
||||
|
|
@ -580,7 +389,7 @@ namespace BLL
|
|||
var getDataLists = (from x in db.Training_TestRecord
|
||||
join y in db.Training_TestPlan on x.TestPlanId equals y.TestPlanId
|
||||
join z in db.SitePerson_Person on x.TestManId equals z.PersonId
|
||||
where ((string.IsNullOrEmpty(projectId) && x.ProjectId == null) || (!string.IsNullOrEmpty(projectId) && x.ProjectId == projectId)) && x.TestStartTime.HasValue && x.TestEndTime.HasValue
|
||||
where x.ProjectId == projectId && x.TestStartTime.HasValue && x.TestEndTime.HasValue
|
||||
orderby x.TestStartTime descending
|
||||
select new Model.TestRecordItem
|
||||
{
|
||||
|
|
@ -864,103 +673,29 @@ namespace BLL
|
|||
/// <param name="testRecord"></param>
|
||||
public static string getResitTestRecord(Model.Training_TestRecord getTestRecord)
|
||||
{
|
||||
using (var db = new Model.SGGLDB(Funs.ConnString))
|
||||
Model.Training_TestRecord newTestRecord = new Model.Training_TestRecord
|
||||
{
|
||||
Model.Training_TestRecord newTestRecord = new Model.Training_TestRecord
|
||||
{
|
||||
TestRecordId = SQLHelper.GetNewID(),
|
||||
ProjectId = getTestRecord.ProjectId,
|
||||
TestPlanId = getTestRecord.TestPlanId,
|
||||
TestManId = getTestRecord.TestManId,
|
||||
TestType = getTestRecord.TestType,
|
||||
TemporaryUser = getTestRecord.TemporaryUser,
|
||||
Duration = getTestRecord.Duration,
|
||||
// TestStartTime = DateTime.Now,
|
||||
};
|
||||
TestRecordId = SQLHelper.GetNewID(),
|
||||
ProjectId = getTestRecord.ProjectId,
|
||||
TestPlanId = getTestRecord.TestPlanId,
|
||||
TestManId = getTestRecord.TestManId,
|
||||
TestType = getTestRecord.TestType,
|
||||
TemporaryUser = getTestRecord.TemporaryUser,
|
||||
Duration = getTestRecord.Duration,
|
||||
// TestStartTime = DateTime.Now,
|
||||
};
|
||||
|
||||
db.Training_TestRecord.InsertOnSubmit(newTestRecord);
|
||||
db.SubmitChanges();
|
||||
Funs.DB.Training_TestRecord.InsertOnSubmit(newTestRecord);
|
||||
Funs.DB.SubmitChanges();
|
||||
|
||||
var getTestPlan = db.Training_TestPlan.FirstOrDefault(x => x.TestPlanId == newTestRecord.TestPlanId);
|
||||
var user = db.Sys_User.FirstOrDefault(x => x.UserId == newTestRecord.TestManId);
|
||||
var person = PersonService.GetPersonByUserIdForApi(newTestRecord.TestManId, getTestPlan.ProjectId);
|
||||
if (getTestPlan != null && person != null)
|
||||
{
|
||||
CreateTestRecordItem(getTestPlan, newTestRecord.TestRecordId, person, user);
|
||||
}
|
||||
return newTestRecord.TestRecordId;
|
||||
var getTestPlan = Funs.DB.Training_TestPlan.FirstOrDefault(x => x.TestPlanId == newTestRecord.TestPlanId);
|
||||
var person = PersonService.GetPersonByUserId(newTestRecord.TestManId, getTestPlan.ProjectId);
|
||||
if (getTestPlan != null && person != null)
|
||||
{
|
||||
CreateTestRecordItem(getTestPlan, newTestRecord.TestRecordId, person);
|
||||
}
|
||||
return newTestRecord.TestRecordId;
|
||||
}
|
||||
#endregion
|
||||
|
||||
public static List<Model.TestRecordItem> getTrainingTestRecordListByDepartId(string unitId, string departId, string strPass, string strParam)
|
||||
{
|
||||
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
|
||||
{
|
||||
var getDataLists = (from x in db.Training_TestRecord
|
||||
join y in db.Training_TestPlan on x.TestPlanId equals y.TestPlanId
|
||||
join z in db.Sys_User on x.TestManId equals z.UserId
|
||||
where x.ProjectId == null && x.TestStartTime.HasValue && x.TestEndTime.HasValue
|
||||
orderby x.TestStartTime descending
|
||||
select new Model.TestRecordItem
|
||||
{
|
||||
TestRecordId = x.TestRecordId,
|
||||
ProjectId = x.ProjectId,
|
||||
TestPlanId = x.TestPlanId,
|
||||
TestPlanName = y.PlanName,
|
||||
UnitId = z.UnitId,
|
||||
UnitName = getUnitName(z.UnitId),
|
||||
WorkPostId = z.WorkPostId,
|
||||
WorkPostName = db.Base_WorkPost.FirstOrDefault(p => p.WorkPostId == z.WorkPostId).WorkPostName,
|
||||
DepartId = z.DepartId,
|
||||
TestManId = x.TestManId,
|
||||
TestManName = db.SitePerson_Person.FirstOrDefault(p => p.PersonId == x.TestManId).PersonName,
|
||||
TestStartTime = string.Format("{0:yyyy-MM-dd HH:mm}", x.TestStartTime),
|
||||
TestEndTime = string.Format("{0:yyyy-MM-dd HH:mm}", x.TestEndTime),
|
||||
Duration = x.Duration,
|
||||
TestPlanEndTime = string.Format("{0:yyyy-MM-dd HH:mm}", x.TestStartTime.Value.AddMinutes(x.Duration)),
|
||||
TotalScore = y.TotalScore ?? 0,
|
||||
TestScores = x.TestScores ?? 0,
|
||||
TestType = x.TestType,
|
||||
TemporaryUser = x.TemporaryUser,
|
||||
});
|
||||
if (!string.IsNullOrEmpty(unitId))
|
||||
{
|
||||
getDataLists = getDataLists.Where(x => x.UnitId == unitId);
|
||||
}
|
||||
if (!string.IsNullOrEmpty(departId))
|
||||
{
|
||||
getDataLists = getDataLists.Where(x => x.DepartId == departId);
|
||||
}
|
||||
if (!string.IsNullOrEmpty(strParam))
|
||||
{
|
||||
getDataLists = getDataLists.Where(x => x.TestManName.Contains(strParam));
|
||||
}
|
||||
if (!string.IsNullOrEmpty(strPass))
|
||||
{
|
||||
int PassingScore = SysConstSetService.getPassScoreForApi();
|
||||
if (strPass == "0")
|
||||
{
|
||||
getDataLists = getDataLists.Where(x => x.TestScores < PassingScore);
|
||||
}
|
||||
else
|
||||
{
|
||||
getDataLists = getDataLists.Where(x => x.TestScores >= PassingScore);
|
||||
}
|
||||
}
|
||||
foreach (var item in getDataLists)
|
||||
{
|
||||
var depart = db.Base_Depart.FirstOrDefault(x => x.DepartId == item.DepartId);
|
||||
if (depart != null)
|
||||
{
|
||||
item.DepartName = depart.DepartName;
|
||||
}
|
||||
|
||||
}
|
||||
return getDataLists.ToList();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
|
@ -21,8 +21,7 @@ namespace BLL
|
|||
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
|
||||
{
|
||||
var getDataLists = (from x in db.EduTrain_TrainRecord
|
||||
where ((string.IsNullOrEmpty(projectId) && x.ProjectId == null)
|
||||
|| (!string.IsNullOrEmpty(projectId) && (x.ProjectId == null || x.ProjectId == ""))) && x.TrainTypeId == trainTypeId
|
||||
where x.ProjectId == projectId && x.TrainTypeId == trainTypeId
|
||||
orderby x.TrainStartDate descending
|
||||
select new Model.TrainRecordItem
|
||||
{
|
||||
|
|
|
|||
|
|
@ -22,7 +22,7 @@ namespace BLL
|
|||
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
|
||||
{
|
||||
var getDataLists = (from x in db.Training_TrainTestRecord
|
||||
where ((string.IsNullOrEmpty(projectId) && (x.ProjectId == null || x.ProjectId == "")) || (!string.IsNullOrEmpty(projectId) && x.ProjectId == projectId))
|
||||
where x.ProjectId == projectId
|
||||
orderby x.DateA descending
|
||||
select new Model.HSSE.TrainTestRecordItem
|
||||
{
|
||||
|
|
|
|||
|
|
@ -21,15 +21,7 @@ namespace BLL
|
|||
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
|
||||
{
|
||||
var getDataLists = (from x in db.Training_Plan
|
||||
where
|
||||
(
|
||||
(string.IsNullOrEmpty(projectId) && (x.ProjectId == null || x.ProjectId == ""))
|
||||
||
|
||||
(!string.IsNullOrEmpty(projectId) && x.ProjectId == projectId)
|
||||
)
|
||||
|
||||
&& (x.States == states || states == null)
|
||||
&& x.TrainTypeId == trainTypeId
|
||||
where x.ProjectId == projectId && (x.States == states || states == null) && x.TrainTypeId == trainTypeId
|
||||
orderby x.TrainStartDate descending
|
||||
select new Model.TrainingPlanItem
|
||||
{
|
||||
|
|
@ -84,18 +76,14 @@ namespace BLL
|
|||
TeachMan = x.TeachMan,
|
||||
UnitIds = x.UnitIds,
|
||||
WorkPostId = x.WorkPostId,
|
||||
DepartIds = x.DepartIds,
|
||||
DepartNames = WorkPostService.getDepartNamesByIdsForApi(x.DepartIds),
|
||||
TrainContent = x.TrainContent,
|
||||
UnitNames = UnitService.getUnitNamesUnitIdsForApi(x.UnitIds),
|
||||
WorkPostNames = WorkPostService.getWorkPostNamesWorkPostIdsForApi(x.WorkPostId),
|
||||
UnitNames = UnitService.getUnitNamesUnitIds(x.UnitIds),
|
||||
WorkPostNames = WorkPostService.getWorkPostNamesWorkPostIds(x.WorkPostId),
|
||||
DesignerId = x.DesignerId,
|
||||
DesignerName = db.Sys_User.First(y => y.UserId == x.DesignerId).UserName,
|
||||
DesignerDate = string.Format("{0:yyyy-MM-dd HH:mm}", x.TrainStartDate),
|
||||
States = x.States,
|
||||
QRCodeUrl = x.QRCodeUrl.Replace('\\', '/'),
|
||||
|
||||
TrainingTasks = getTrainingTasks(x.PlanId)
|
||||
};
|
||||
return getDataLists.FirstOrDefault();
|
||||
}
|
||||
|
|
@ -148,7 +136,7 @@ namespace BLL
|
|||
{
|
||||
PlanId = trainingPlan.PlanId,
|
||||
PlanCode = trainingPlan.PlanCode,
|
||||
|
||||
ProjectId = trainingPlan.ProjectId,
|
||||
DesignerId = trainingPlan.DesignerId,
|
||||
PlanName = trainingPlan.PlanName,
|
||||
TrainContent = trainingPlan.TrainContent,
|
||||
|
|
@ -159,15 +147,9 @@ namespace BLL
|
|||
TrainTypeId = trainingPlan.TrainTypeId,
|
||||
UnitIds = trainingPlan.UnitIds,
|
||||
WorkPostId = trainingPlan.WorkPostId,
|
||||
DepartIds = trainingPlan.DepartIds,
|
||||
DepartNames = trainingPlan.DepartNames,
|
||||
States = trainingPlan.States,
|
||||
};
|
||||
if (!string.IsNullOrEmpty(trainingPlan.ProjectId))
|
||||
{
|
||||
newTrainingPlan.ProjectId = trainingPlan.ProjectId;
|
||||
|
||||
}
|
||||
if (!string.IsNullOrEmpty(trainingPlan.TrainLevelId))
|
||||
{
|
||||
newTrainingPlan.TrainLevelId = trainingPlan.TrainLevelId;
|
||||
|
|
@ -218,8 +200,6 @@ namespace BLL
|
|||
isUpdate.UnitIds = newTrainingPlan.UnitIds;
|
||||
isUpdate.WorkPostId = newTrainingPlan.WorkPostId;
|
||||
isUpdate.States = newTrainingPlan.States;
|
||||
isUpdate.DepartIds = newTrainingPlan.DepartIds;
|
||||
isUpdate.DepartNames = newTrainingPlan.DepartNames;
|
||||
db.SubmitChanges();
|
||||
}
|
||||
////删除培训任务
|
||||
|
|
@ -295,24 +275,6 @@ namespace BLL
|
|||
}
|
||||
}
|
||||
|
||||
public static List<Model.TrainingTaskItem> getTrainingTasks(string planId) {
|
||||
var list = new List<Model.TrainingTaskItem>();
|
||||
var taskList = Funs.DB.Training_Task.Where(x => x.PlanId == planId);
|
||||
if (taskList.Count()>0)
|
||||
{
|
||||
foreach (var item in taskList)
|
||||
{
|
||||
var model = new Model.TrainingTaskItem();
|
||||
model.TaskId = item.TaskId;
|
||||
model.PlanId = item.PlanId;
|
||||
model.PersonId = item.UserId;
|
||||
model.PersonName = UserService.GetUserNameByUserId(item.UserId);
|
||||
list.Add(model);
|
||||
}
|
||||
}
|
||||
return list;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 新增 培训人员明细
|
||||
/// </summary>
|
||||
|
|
|
|||
|
|
@ -21,7 +21,7 @@ namespace BLL
|
|||
personId = PersonService.GetPersonIdByUserId(personId);
|
||||
var getDataLists = (from x in db.Training_Task
|
||||
join y in db.Training_Plan on x.PlanId equals y.PlanId
|
||||
where ((string.IsNullOrEmpty(projectId) && (x.ProjectId == null || x.ProjectId == "")) || (!string.IsNullOrEmpty(projectId) && x.ProjectId == projectId)) && x.UserId == personId && y.States != "0"
|
||||
where x.ProjectId == projectId && x.UserId == personId && y.States != "0"
|
||||
orderby x.TaskDate descending
|
||||
select new Model.TrainingTaskItem
|
||||
{
|
||||
|
|
@ -31,30 +31,17 @@ namespace BLL
|
|||
PlanName = y.PlanName,
|
||||
TrainStartDate = string.Format("{0:yyyy-MM-dd HH:mm}", y.TrainStartDate),
|
||||
TeachAddress = y.TeachAddress,
|
||||
PersonId = x.UserId,
|
||||
//PersonId = x.UserId,
|
||||
PersonName = db.SitePerson_Person.FirstOrDefault(p => p.PersonId == x.UserId).PersonName,
|
||||
TaskDate = string.Format("{0:yyyy-MM-dd HH:mm}", x.TaskDate),
|
||||
TrainTypeName = db.Base_TrainType.FirstOrDefault(b => b.TrainTypeId == y.TrainTypeId).TrainTypeName,
|
||||
TrainLevelName = db.Base_TrainLevel.FirstOrDefault(b => b.TrainLevelId == y.TrainLevelId).TrainLevelName,
|
||||
PlanStatesName = y.States == "3" ? "已完成" : "培训中",
|
||||
TaskStatesName = x.States == "2" ? "已完成" : "培训中",
|
||||
TrainingItemCode = getTrainingItemCode(y.PlanId)
|
||||
}).ToList();
|
||||
|
||||
}).ToList();
|
||||
return getDataLists;
|
||||
}
|
||||
}
|
||||
|
||||
public static string getTrainingItemCode(string PlanId)
|
||||
{
|
||||
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
|
||||
{
|
||||
var ids = db.Training_PlanItem.Where(xx => xx.PlanId == PlanId).Select(x => x.CompanyTrainingItemId).ToList();
|
||||
var codes = db.Training_CompanyTrainingItem.Where(x => ids.Contains(x.CompanyTrainingItemId)).Select(x => x.CompanyTrainingItemCode);
|
||||
string res = string.Join(",", codes);
|
||||
return res;
|
||||
}
|
||||
return "";
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region 根据TaskId获取培训任务教材明细列表
|
||||
|
|
@ -71,8 +58,6 @@ namespace BLL
|
|||
GetDataService.CreateTrainingTaskItemByTaskId(taskId);
|
||||
|
||||
var getDataLists = (from x in db.Training_TaskItem
|
||||
join y in db.Training_CompanyTrainingItem on x.TrainingItemCode equals y.CompanyTrainingItemCode into temp
|
||||
from y in temp.DefaultIfEmpty()
|
||||
where x.TaskId == taskId
|
||||
orderby x.TrainingItemCode
|
||||
select new Model.TrainingTaskItemItem
|
||||
|
|
@ -80,16 +65,15 @@ namespace BLL
|
|||
TaskItemId = x.TaskItemId,
|
||||
TaskId = x.TaskId,
|
||||
PlanId = x.PlanId,
|
||||
StartTime = x.StartTime,
|
||||
EndTime = x.EndTime,
|
||||
LearningTime = x.LearnTime,
|
||||
AttachTime = y.LearningTime,
|
||||
VideoProgress = x.VideoProgress,
|
||||
PersonId = x.PersonId,
|
||||
TrainingItemCode = x.TrainingItemCode,
|
||||
StartTime = x.StartTime,
|
||||
EndTime = x.EndTime,
|
||||
LearnTime = x.LearnTime,
|
||||
VideoProgress = x.VideoProgress,
|
||||
TrainingItemCode = x.TrainingItemCode,
|
||||
TrainingItemName = x.TrainingItemName,
|
||||
AttachUrl = x.AttachUrl.Replace('\\', '/'),
|
||||
}).ToList();
|
||||
}).ToList();
|
||||
return getDataLists;
|
||||
}
|
||||
}
|
||||
|
|
@ -226,29 +210,10 @@ namespace BLL
|
|||
TaskId = x.TaskId,
|
||||
PlanId = x.PlanId,
|
||||
PersonId = x.UserId,
|
||||
|
||||
PersonName = db.SitePerson_Person.FirstOrDefault(p => p.PersonId == x.UserId).PersonName,
|
||||
TaskDate = string.Format("{0:yyyy-MM-dd HH:mm}", x.TaskDate),
|
||||
States = x.States,
|
||||
States = x.States,
|
||||
}).ToList();
|
||||
|
||||
foreach (var item in getDataLists)
|
||||
{
|
||||
var person = db.SitePerson_Person.FirstOrDefault(p => p.PersonId == item.PersonId);
|
||||
if (person != null)
|
||||
{
|
||||
item.PersonName = person.PersonName;
|
||||
}
|
||||
else
|
||||
{
|
||||
var sysUser = db.Sys_User.FirstOrDefault(p => p.UserId == item.PersonId);
|
||||
if (sysUser != null)
|
||||
{
|
||||
item.PersonName = sysUser.UserName;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
return getDataLists;
|
||||
}
|
||||
}
|
||||
|
|
@ -276,41 +241,19 @@ namespace BLL
|
|||
item.StartTime = startTime;
|
||||
}
|
||||
|
||||
//if (!item.LearnTime.HasValue)
|
||||
//{
|
||||
// item.LearnTime = 0;
|
||||
//}
|
||||
if (!item.LearnTime.HasValue)
|
||||
{
|
||||
item.LearnTime = 0;
|
||||
}
|
||||
if (!string.IsNullOrEmpty(VideoProgress))
|
||||
{
|
||||
//if (!item.VideoProgress.HasValue)
|
||||
//{
|
||||
// item.VideoProgress = 0;
|
||||
//}
|
||||
item.VideoProgress = int.Parse(VideoProgress);
|
||||
}
|
||||
var span = endTime.Subtract(startTime);
|
||||
if (!item.LearnTime.HasValue)
|
||||
{
|
||||
item.LearnTime = 0;
|
||||
}
|
||||
item.LearnTime = item.LearnTime.Value + (int)span.TotalSeconds;
|
||||
item.EndTime = endTime;
|
||||
|
||||
item.LearnTime = item.LearnTime.Value + (int)span.TotalMinutes;
|
||||
item.EndTime = endTime;
|
||||
db.SubmitChanges();
|
||||
|
||||
var companyTrainingItem = db.Training_CompanyTrainingItem.FirstOrDefault(x => x.CompanyTrainingItemCode == item.TrainingItemCode);
|
||||
int companyTrainingItemLearnTime = companyTrainingItem?.LearningTime ?? 0; //培训教材时长(秒)
|
||||
|
||||
|
||||
//如果学习时长大于培训教材时长,则关闭状态
|
||||
if (item.LearnTime > companyTrainingItemLearnTime)
|
||||
{
|
||||
var taskModel = db.Training_Task.FirstOrDefault(x => x.TaskId == item.TaskId);
|
||||
taskModel.States = "2";
|
||||
db.SubmitChanges();
|
||||
}
|
||||
|
||||
return item;
|
||||
return item;
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
|
|
|
|||
|
|
@ -21,8 +21,6 @@
|
|||
<SccProvider>
|
||||
</SccProvider>
|
||||
<TargetFrameworkProfile />
|
||||
<NuGetPackageImportStamp>
|
||||
</NuGetPackageImportStamp>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
|
|
@ -68,11 +66,8 @@
|
|||
<Reference Include="ICSharpCode.SharpZipLib, Version=1.3.3.11, Culture=neutral, PublicKeyToken=1b03e6acf1164f73, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\SharpZipLib.1.3.3\lib\net45\ICSharpCode.SharpZipLib.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Bcl.AsyncInterfaces, Version=5.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.Bcl.AsyncInterfaces.5.0.0\lib\net461\Microsoft.Bcl.AsyncInterfaces.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Extensions.Logging.Abstractions, Version=6.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.Extensions.Logging.Abstractions.6.0.0\lib\net461\Microsoft.Extensions.Logging.Abstractions.dll</HintPath>
|
||||
<Reference Include="Microsoft.Extensions.Logging.Abstractions, Version=2.1.1.0, Culture=neutral, PublicKeyToken=adb9793829ddae60, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.Extensions.Logging.Abstractions.2.1.1\lib\netstandard2.0\Microsoft.Extensions.Logging.Abstractions.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Office.Interop.Excel, Version=15.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.Office.Interop.Excel.15.0.4795.1001\lib\net20\Microsoft.Office.Interop.Excel.dll</HintPath>
|
||||
|
|
@ -105,18 +100,12 @@
|
|||
<HintPath>..\packages\MicrosoftOfficeCore.15.0.0\lib\net35\Office.dll</HintPath>
|
||||
<EmbedInteropTypes>False</EmbedInteropTypes>
|
||||
</Reference>
|
||||
<Reference Include="Pipelines.Sockets.Unofficial, Version=1.0.0.0, Culture=neutral, PublicKeyToken=42ea0a778e13fbe2, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Pipelines.Sockets.Unofficial.2.2.8\lib\net461\Pipelines.Sockets.Unofficial.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Quartz, Version=3.7.0.0, Culture=neutral, PublicKeyToken=f6b8c98a402cc8a4, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Quartz.3.7.0\lib\netstandard2.0\Quartz.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="RestSharp, Version=106.15.0.0, Culture=neutral, PublicKeyToken=598062e77f915f75, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\RestSharp.106.15.0\lib\net452\RestSharp.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="StackExchange.Redis, Version=2.0.0.0, Culture=neutral, PublicKeyToken=c219ff1ca8c2ce46, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\StackExchange.Redis.2.8.16\lib\net461\StackExchange.Redis.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Buffers, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Buffers.4.5.1\lib\net461\System.Buffers.dll</HintPath>
|
||||
|
|
@ -133,14 +122,6 @@
|
|||
</Reference>
|
||||
<Reference Include="System.DirectoryServices" />
|
||||
<Reference Include="System.Drawing" />
|
||||
<Reference Include="System.IO.Compression, Version=4.1.2.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.IO.Compression.4.3.0\lib\net46\System.IO.Compression.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="System.IO.Pipelines, Version=5.0.0.1, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.IO.Pipelines.5.0.1\lib\net461\System.IO.Pipelines.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Management" />
|
||||
<Reference Include="System.Memory, Version=4.0.1.1, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Memory.4.5.4\lib\net461\System.Memory.dll</HintPath>
|
||||
|
|
@ -157,11 +138,6 @@
|
|||
<Reference Include="System.Runtime.CompilerServices.Unsafe, Version=4.0.4.1, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Runtime.CompilerServices.Unsafe.4.5.3\lib\net461\System.Runtime.CompilerServices.Unsafe.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Runtime.InteropServices.RuntimeInformation, Version=4.0.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Runtime.InteropServices.RuntimeInformation.4.3.0\lib\net45\System.Runtime.InteropServices.RuntimeInformation.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="System.Runtime.Serialization" />
|
||||
<Reference Include="System.Security" />
|
||||
<Reference Include="System.Security.AccessControl, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
|
|
@ -175,12 +151,6 @@
|
|||
</Reference>
|
||||
<Reference Include="System.ServiceModel" />
|
||||
<Reference Include="System.ServiceProcess" />
|
||||
<Reference Include="System.Threading.Channels, Version=5.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Threading.Channels.5.0.0\lib\net461\System.Threading.Channels.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Threading.Tasks.Extensions, Version=4.2.0.1, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Threading.Tasks.Extensions.4.5.4\lib\net461\System.Threading.Tasks.Extensions.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Transactions" />
|
||||
<Reference Include="System.Web" />
|
||||
<Reference Include="System.Web.DataVisualization" />
|
||||
|
|
@ -200,7 +170,6 @@
|
|||
<Compile Include="API\APICommonService.cs" />
|
||||
<Compile Include="API\APIGetHttpService.cs" />
|
||||
<Compile Include="API\APIIDCardInfoService.cs" />
|
||||
<Compile Include="API\APIIndexService.cs" />
|
||||
<Compile Include="API\APIPersonService.cs" />
|
||||
<Compile Include="API\APIProjectService.cs" />
|
||||
<Compile Include="API\APIUnitService.cs" />
|
||||
|
|
@ -299,9 +268,6 @@
|
|||
<Compile Include="Common\NPOIHelper.cs" />
|
||||
<Compile Include="Common\PrinterDocService.cs" />
|
||||
<Compile Include="Common\ProjectDataFlowSetService.cs" />
|
||||
<Compile Include="Common\Redis\ICache.cs" />
|
||||
<Compile Include="Common\Redis\Redis.cs" />
|
||||
<Compile Include="Common\Redis\RedisHelper.cs" />
|
||||
<Compile Include="Common\UploadFileService.cs" />
|
||||
<Compile Include="Common\UpLoadImageService.cs" />
|
||||
<Compile Include="Common\UserShowColumnsService.cs" />
|
||||
|
|
@ -1175,13 +1141,6 @@
|
|||
</ItemGroup>
|
||||
<ItemGroup />
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
<Import Project="..\packages\Microsoft.Extensions.Logging.Abstractions.6.0.0\build\Microsoft.Extensions.Logging.Abstractions.targets" Condition="Exists('..\packages\Microsoft.Extensions.Logging.Abstractions.6.0.0\build\Microsoft.Extensions.Logging.Abstractions.targets')" />
|
||||
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
|
||||
<PropertyGroup>
|
||||
<ErrorText>这台计算机上缺少此项目引用的 NuGet 程序包。使用“NuGet 程序包还原”可下载这些程序包。有关更多信息,请参见 http://go.microsoft.com/fwlink/?LinkID=322105。缺少的文件是 {0}。</ErrorText>
|
||||
</PropertyGroup>
|
||||
<Error Condition="!Exists('..\packages\Microsoft.Extensions.Logging.Abstractions.6.0.0\build\Microsoft.Extensions.Logging.Abstractions.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Microsoft.Extensions.Logging.Abstractions.6.0.0\build\Microsoft.Extensions.Logging.Abstractions.targets'))" />
|
||||
</Target>
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
<Target Name="BeforeBuild">
|
||||
|
|
|
|||
|
|
@ -260,84 +260,5 @@ namespace BLL
|
|||
return workPostName;
|
||||
}
|
||||
#endregion
|
||||
|
||||
public static string getDepartNamesByIds(object departIdsIds)
|
||||
{
|
||||
string departName = string.Empty;
|
||||
if (departIdsIds != null)
|
||||
{
|
||||
string[] ids = departIdsIds.ToString().Split(',');
|
||||
foreach (string id in ids)
|
||||
{
|
||||
var q = GetDepartById(id);
|
||||
if (q != null)
|
||||
{
|
||||
departName += q.DepartName + ",";
|
||||
}
|
||||
}
|
||||
if (departName != string.Empty)
|
||||
{
|
||||
departName = departName.Substring(0, departName.Length - 1); ;
|
||||
}
|
||||
}
|
||||
|
||||
return departName;
|
||||
}
|
||||
public static Model.Base_Depart GetDepartById(string departId)
|
||||
{
|
||||
return Funs.DB.Base_Depart.FirstOrDefault(e => e.DepartId == departId);
|
||||
}
|
||||
|
||||
public static string getDepartNamesByIdsForApi(object departIdsIds)
|
||||
{
|
||||
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
|
||||
{
|
||||
string departName = string.Empty;
|
||||
if (departIdsIds != null)
|
||||
{
|
||||
string[] ids = departIdsIds.ToString().Split(',');
|
||||
foreach (string id in ids)
|
||||
{
|
||||
var q = db.Base_Depart.FirstOrDefault(e => e.DepartId == id);
|
||||
if (q != null)
|
||||
{
|
||||
departName += q.DepartName + ",";
|
||||
}
|
||||
}
|
||||
if (departName != string.Empty)
|
||||
{
|
||||
departName = departName.Substring(0, departName.Length - 1); ;
|
||||
}
|
||||
}
|
||||
|
||||
return departName;
|
||||
}
|
||||
}
|
||||
|
||||
public static string getWorkPostNamesWorkPostIdsForApi(object workPostIds)
|
||||
{
|
||||
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
|
||||
{
|
||||
string workPostName = string.Empty;
|
||||
if (workPostIds != null)
|
||||
{
|
||||
string[] ids = workPostIds.ToString().Split(',');
|
||||
foreach (string id in ids)
|
||||
{
|
||||
var q = db.Base_WorkPost.FirstOrDefault(e => e.WorkPostId == id);
|
||||
if (q != null)
|
||||
{
|
||||
workPostName += q.WorkPostName + ",";
|
||||
}
|
||||
}
|
||||
if (workPostName != string.Empty)
|
||||
{
|
||||
workPostName = workPostName.Substring(0, workPostName.Length - 1); ;
|
||||
}
|
||||
}
|
||||
|
||||
return workPostName;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -468,135 +468,5 @@ namespace BLL
|
|||
}
|
||||
}
|
||||
#endregion
|
||||
|
||||
public static string InsertCodeRecordsByMenuIdProjectIdUnitIdForApi(string menuId, string projectId, string unitId, string dataId, DateTime? compileDate)
|
||||
{
|
||||
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
|
||||
{
|
||||
string ruleCode = string.Empty;
|
||||
var IsHaveCodeRecords = db.Sys_CodeRecords.FirstOrDefault(x => x.DataId == dataId);
|
||||
if (IsHaveCodeRecords == null) ///是否已存在编码
|
||||
{
|
||||
string ruleCodeower = string.Empty;
|
||||
int digit = 4; ///流水位数
|
||||
string symbolower = "-"; ///业主间隔符
|
||||
int digitower = 4; ///业主流水位数
|
||||
string symbol = "-"; ///间隔符
|
||||
var project = db.Base_Project.FirstOrDefault(e => e.ProjectId == projectId); ////项目
|
||||
if (project != null && !string.IsNullOrEmpty(dataId))
|
||||
{
|
||||
string projectCode = project.ProjectCode; ///项目编号
|
||||
////编码规则表
|
||||
var sysCodeTemplateRule = db.ProjectData_CodeTemplateRule.FirstOrDefault(x => x.MenuId == menuId && x.ProjectId == projectId);
|
||||
if (sysCodeTemplateRule != null)
|
||||
{
|
||||
symbol = sysCodeTemplateRule.Symbol;
|
||||
symbolower = sysCodeTemplateRule.OwerSymbol;
|
||||
|
||||
if (sysCodeTemplateRule.Digit.HasValue)
|
||||
{
|
||||
digit = sysCodeTemplateRule.Digit.Value;
|
||||
}
|
||||
if (sysCodeTemplateRule.OwerDigit.HasValue)
|
||||
{
|
||||
digitower = sysCodeTemplateRule.OwerDigit.Value;
|
||||
}
|
||||
if (sysCodeTemplateRule.IsProjectCode == true)
|
||||
{
|
||||
ruleCode = projectCode + symbol;
|
||||
}
|
||||
if (sysCodeTemplateRule.OwerIsProjectCode == true)
|
||||
{
|
||||
ruleCodeower = projectCode + symbolower;
|
||||
}
|
||||
if (!string.IsNullOrEmpty(sysCodeTemplateRule.Prefix))
|
||||
{
|
||||
ruleCode += sysCodeTemplateRule.Prefix + symbol;
|
||||
}
|
||||
if (!string.IsNullOrEmpty(sysCodeTemplateRule.OwerPrefix))
|
||||
{
|
||||
ruleCodeower += sysCodeTemplateRule.OwerPrefix + symbolower;
|
||||
}
|
||||
if (sysCodeTemplateRule.IsUnitCode == true || sysCodeTemplateRule.OwerIsUnitCode == true)
|
||||
{
|
||||
var unit = db.Base_Unit.FirstOrDefault(x => x.UnitId == unitId);
|
||||
if (unit != null)
|
||||
{
|
||||
if (sysCodeTemplateRule.IsUnitCode == true)
|
||||
{ ruleCode = unit.UnitCode + symbol; }
|
||||
|
||||
if (sysCodeTemplateRule.OwerIsUnitCode == true)
|
||||
{
|
||||
ruleCodeower = unit.UnitCode + symbolower;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
////获取编码记录表最大排列序号
|
||||
int maxNewSortIndex = 0;
|
||||
if (!String.IsNullOrEmpty(projectId))
|
||||
{
|
||||
var maxSortIndex = db.Sys_CodeRecords.Where(x => x.ProjectId == projectId && x.MenuId == menuId).Select(x => x.SortIndex).Max();
|
||||
if (maxSortIndex.HasValue)
|
||||
{
|
||||
maxNewSortIndex = maxSortIndex.Value;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
var maxSortIndexNull = db.Sys_CodeRecords.Where(x => x.MenuId == menuId).Select(x => x.SortIndex).Max();
|
||||
if (maxSortIndexNull.HasValue)
|
||||
{
|
||||
maxNewSortIndex = maxSortIndexNull.Value;
|
||||
}
|
||||
}
|
||||
maxNewSortIndex = maxNewSortIndex + 1;
|
||||
////插入数据库
|
||||
Model.Sys_CodeRecords newCodeRecords = new Model.Sys_CodeRecords
|
||||
{
|
||||
CodeRecordId = SQLHelper.GetNewID(typeof(Model.Sys_CodeRecords))
|
||||
};
|
||||
if (project != null)
|
||||
{
|
||||
newCodeRecords.ProjectId = project.ProjectId;
|
||||
}
|
||||
newCodeRecords.MenuId = menuId;
|
||||
newCodeRecords.DataId = dataId;
|
||||
newCodeRecords.UnitId = unitId;
|
||||
newCodeRecords.SortIndex = maxNewSortIndex;
|
||||
newCodeRecords.CompileDate = compileDate;
|
||||
newCodeRecords.RuleCodes = ruleCode;
|
||||
newCodeRecords.Digit = digit;
|
||||
newCodeRecords.OwnerRuleCodes = ruleCodeower;
|
||||
newCodeRecords.OwerDigit = digitower;
|
||||
if (!string.IsNullOrEmpty(ruleCode))
|
||||
{
|
||||
newCodeRecords.Code = ruleCode + (maxNewSortIndex.ToString().PadLeft(digit, '0')); ///字符自动补零 编码
|
||||
}
|
||||
else
|
||||
{
|
||||
newCodeRecords.Code = (maxNewSortIndex.ToString().PadLeft(digit, '0'));
|
||||
}
|
||||
if (!string.IsNullOrEmpty(ruleCodeower))
|
||||
{
|
||||
newCodeRecords.OwnerCode = ruleCodeower + (maxNewSortIndex.ToString().PadLeft(digitower, '0')); ///字符自动补零 业主编码
|
||||
}
|
||||
else
|
||||
{
|
||||
newCodeRecords.OwnerCode = (maxNewSortIndex.ToString().PadLeft(digitower, '0'));
|
||||
}
|
||||
db.Sys_CodeRecords.InsertOnSubmit(newCodeRecords);
|
||||
db.SubmitChanges();
|
||||
}
|
||||
else
|
||||
{
|
||||
ruleCode = IsHaveCodeRecords.Code;
|
||||
}
|
||||
|
||||
return ruleCode;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -6415,20 +6415,5 @@ namespace BLL
|
|||
/// 施工作业风险
|
||||
/// </summary>
|
||||
public const string ConstructionRiskMenuId = "F531D523-35BC-4D13-88D3-CB2554C4185C";
|
||||
|
||||
/// <summary>
|
||||
/// 专项安全培训 id
|
||||
/// </summary>
|
||||
public static string SpecialSafeTrainId = "0e7fdf78-eaa0-4d00-a60b-490040bbea18";
|
||||
|
||||
/// <summary>
|
||||
/// 公司看板数据维护
|
||||
/// </summary>
|
||||
public const string BoardDataMenuId = "B06DD352-61C6-453C-A9C7-9CF10918AF08";
|
||||
|
||||
/// <summary>
|
||||
/// 项目看板数据维护
|
||||
/// </summary>
|
||||
public const string ProjectBoardDataMenuId = "087F4FAF-3B00-462A-9040-4CB3556F8177";
|
||||
}
|
||||
}
|
||||
|
|
@ -1412,7 +1412,7 @@
|
|||
sb.Append("<meta http-equiv=\"content-type\" content=\"application/word; charset=UTF-8\"/>");
|
||||
sb.Append("<table width=\"100% \" cellspacing=\"0\" rules=\"all\" border=\"0\" style=\"border-collapse:collapse;font-size: 12pt;\">");
|
||||
sb.Append("<tr style=\"height: 35px\">");
|
||||
sb.AppendFormat("<td align=\"center\" style=\"width: 100%; font-size: 12pt; font-weight: bold;\">{0}</td> ", "新疆邮建" + ProjectService.GetProjectNameByProjectId(getTestRecord.ProjectId));
|
||||
sb.AppendFormat("<td align=\"center\" style=\"width: 100%; font-size: 12pt; font-weight: bold;\">{0}</td> ", "中国天辰" + ProjectService.GetProjectNameByProjectId(getTestRecord.ProjectId));
|
||||
sb.Append("</tr>");
|
||||
sb.Append("<tr style=\"height:35px\">");
|
||||
var getTrainTypeName = (from x in db.Training_TestPlan
|
||||
|
|
|
|||
|
|
@ -33,8 +33,6 @@ namespace BLL
|
|||
newCompanyTrainingItem.AttachUrl = companyTrainingItem.AttachUrl;
|
||||
newCompanyTrainingItem.CompileMan = companyTrainingItem.CompileMan;
|
||||
newCompanyTrainingItem.CompileDate = companyTrainingItem.CompileDate;
|
||||
newCompanyTrainingItem.LearningTime = companyTrainingItem.LearningTime;
|
||||
newCompanyTrainingItem.TestTrainingIds = companyTrainingItem.TestTrainingIds;
|
||||
db.Training_CompanyTrainingItem.InsertOnSubmit(newCompanyTrainingItem);
|
||||
db.SubmitChanges();
|
||||
}
|
||||
|
|
@ -53,8 +51,6 @@ namespace BLL
|
|||
newCompanyTrainingItem.AttachUrl = companyTrainingItem.AttachUrl;
|
||||
newCompanyTrainingItem.CompileMan = companyTrainingItem.CompileMan;
|
||||
newCompanyTrainingItem.CompileDate = companyTrainingItem.CompileDate;
|
||||
newCompanyTrainingItem.LearningTime = companyTrainingItem.LearningTime;
|
||||
newCompanyTrainingItem.TestTrainingIds = companyTrainingItem.TestTrainingIds;
|
||||
db.SubmitChanges();
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -152,37 +152,5 @@ namespace BLL
|
|||
}
|
||||
return icount;
|
||||
}
|
||||
|
||||
public static void AddTestRecordForApi(Model.Training_TestRecord testRecord)
|
||||
{
|
||||
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
|
||||
{
|
||||
Model.Training_TestRecord newTestRecord = new Model.Training_TestRecord
|
||||
{
|
||||
TestRecordId = testRecord.TestRecordId,
|
||||
ProjectId = testRecord.ProjectId,
|
||||
TestPlanId = testRecord.TestPlanId,
|
||||
TestManId = testRecord.TestManId,
|
||||
TestType = testRecord.TestType,
|
||||
};
|
||||
|
||||
if (string.IsNullOrEmpty(newTestRecord.TestType))
|
||||
{
|
||||
var getTrainTypeName = (from x in db.Training_TestPlan
|
||||
join y in db.Training_Plan on x.PlanId equals y.PlanId
|
||||
join z in db.Base_TrainType on y.TrainTypeId equals z.TrainTypeId
|
||||
where x.TestPlanId == testRecord.TestPlanId
|
||||
select z).FirstOrDefault();
|
||||
|
||||
if (getTrainTypeName != null)
|
||||
{
|
||||
testRecord.TestType = getTrainTypeName.TrainTypeName;
|
||||
}
|
||||
}
|
||||
|
||||
db.Training_TestRecord.InsertOnSubmit(newTestRecord);
|
||||
db.SubmitChanges();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -52,8 +52,7 @@ namespace BLL
|
|||
ResourcesFromType = trainingItem.ResourcesFromType,
|
||||
IsPass = trainingItem.IsPass,
|
||||
UnitId = trainingItem.UnitId,
|
||||
UpState = trainingItem.UpState,
|
||||
LearningTime = trainingItem.LearningTime
|
||||
UpState = trainingItem.UpState
|
||||
};
|
||||
|
||||
db.Training_TrainingItem.InsertOnSubmit(newTrainingItem);
|
||||
|
|
@ -81,7 +80,6 @@ namespace BLL
|
|||
newTrainingItem.ResourcesFrom = trainingItem.ResourcesFrom;
|
||||
newTrainingItem.ResourcesFromType = trainingItem.ResourcesFromType;
|
||||
newTrainingItem.UpState = trainingItem.UpState;
|
||||
newTrainingItem.LearningTime = trainingItem.LearningTime;
|
||||
|
||||
db.SubmitChanges();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -750,23 +750,5 @@ namespace BLL
|
|||
};
|
||||
}
|
||||
#endregion
|
||||
|
||||
public static Model.SitePerson_Person GetPersonByUserIdForApi(string userId, string projectId)
|
||||
{
|
||||
using (var db = new Model.SGGLDB(Funs.ConnString))
|
||||
{
|
||||
var getPerson = db.SitePerson_Person.FirstOrDefault(e => e.PersonId == userId);
|
||||
if (getPerson == null)
|
||||
{
|
||||
var getUser = db.Sys_User.FirstOrDefault(e => e.UserId == userId);
|
||||
if (getUser != null)
|
||||
{
|
||||
getPerson = db.SitePerson_Person.FirstOrDefault(e => e.IdentityCard == getUser.IdentityCard && e.ProjectId == projectId);
|
||||
}
|
||||
}
|
||||
|
||||
return getPerson;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -53,34 +53,6 @@ namespace BLL
|
|||
}
|
||||
}
|
||||
}
|
||||
else {
|
||||
var getSysuser = db.Sys_User.FirstOrDefault(e => e.UserId == item.UserId);
|
||||
if (getSysuser!=null)
|
||||
{
|
||||
////获取计划下 人员培训教材明细
|
||||
var getDataList = db.Sp_GetTraining_TaskItemTraining(item.PlanId, getSysuser.WorkPostId);
|
||||
foreach (var dataItem in getDataList)
|
||||
{
|
||||
Model.Training_TaskItem newTaskItem = new Model.Training_TaskItem
|
||||
{
|
||||
TaskId = item.TaskId,
|
||||
PlanId = item.PlanId,
|
||||
PersonId = item.UserId,
|
||||
TrainingItemCode = dataItem.TrainingItemCode,
|
||||
TrainingItemName = dataItem.TrainingItemName,
|
||||
AttachUrl = dataItem.AttachUrl,
|
||||
};
|
||||
|
||||
var getTaskItem = db.Training_TaskItem.FirstOrDefault(x => x.TaskId == item.TaskId && x.TrainingItemName == newTaskItem.TrainingItemName && x.AttachUrl == newTaskItem.AttachUrl);
|
||||
if (getTaskItem == null)
|
||||
{
|
||||
newTaskItem.TaskItemId = SQLHelper.GetNewID();
|
||||
db.Training_TaskItem.InsertOnSubmit(newTaskItem);
|
||||
db.SubmitChanges();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
////更新培训任务
|
||||
item.States = Const.State_1;
|
||||
|
|
|
|||
|
|
@ -972,29 +972,5 @@ namespace BLL
|
|||
maxId = GetIntValue(str);
|
||||
return maxId;
|
||||
}
|
||||
|
||||
public static DataTable GetDataTableRunCommand(SqlCommand cmd)
|
||||
{
|
||||
try
|
||||
{
|
||||
using (SqlConnection conn = new SqlConnection(connectionString))
|
||||
{
|
||||
cmd.Connection = conn;
|
||||
conn.Open();
|
||||
|
||||
using (SqlDataAdapter adapter = new SqlDataAdapter(cmd))
|
||||
{
|
||||
DataTable dataTable = new DataTable();
|
||||
adapter.Fill(dataTable);
|
||||
return dataTable;
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
Console.WriteLine(ex.ToString());
|
||||
return null;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -380,19 +380,5 @@
|
|||
}
|
||||
}
|
||||
#endregion
|
||||
|
||||
public static int getPassScoreForApi()
|
||||
{
|
||||
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
|
||||
{
|
||||
int passScore = 80;
|
||||
var testRule = db.Sys_TestRule.FirstOrDefault();
|
||||
if (testRule != null)
|
||||
{
|
||||
passScore = testRule.PassingScore;
|
||||
}
|
||||
return passScore;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -927,31 +927,5 @@ namespace BLL
|
|||
return q;
|
||||
}
|
||||
}
|
||||
|
||||
public static string getUnitNamesUnitIdsForApi(object unitIds)
|
||||
{
|
||||
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
|
||||
{
|
||||
string unitName = string.Empty;
|
||||
if (unitIds != null)
|
||||
{
|
||||
string[] ids = unitIds.ToString().Split(',');
|
||||
foreach (string id in ids)
|
||||
{
|
||||
var q = db.Base_Unit.FirstOrDefault(x => x.UnitId == id);
|
||||
if (q != null)
|
||||
{
|
||||
unitName += q.UnitName + ",";
|
||||
}
|
||||
}
|
||||
if (unitName != string.Empty)
|
||||
{
|
||||
unitName = unitName.Substring(0, unitName.Length - 1); ;
|
||||
}
|
||||
}
|
||||
|
||||
return unitName;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1024,673 +1024,6 @@ IP地址:::1
|
|||
启用环境定时器开始!
|
||||
启用环境定时器结束!
|
||||
通用定时器结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
通用定时器开启!
|
||||
启用环境定时器开始!
|
||||
启用环境定时器结束!
|
||||
通用定时器结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
通用定时器开启!
|
||||
启用环境定时器开始!
|
||||
启用环境定时器结束!
|
||||
通用定时器结束!
|
||||
通用定时器开启!
|
||||
启用环境定时器开始!
|
||||
启用环境定时器结束!
|
||||
通用定时器结束!
|
||||
|
||||
错误信息开始=====>
|
||||
错误类型:SqlException
|
||||
错误信息:INSERT 语句与 FOREIGN KEY 约束"FK_Training_TrainingItem_Training_Training"冲突。该冲突发生于数据库"SGGLDB_XJYJ",表"dbo.Training_Training", column 'TrainingId'。
|
||||
语句已终止。
|
||||
错误堆栈:
|
||||
在 System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
|
||||
在 System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
|
||||
在 System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose)
|
||||
在 System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady)
|
||||
在 System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString, Boolean isInternal, Boolean forDescribeParameterEncryption, Boolean shouldCacheForAlwaysEncrypted)
|
||||
在 System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async, Int32 timeout, Task& task, Boolean asyncWrite, Boolean inRetry, SqlDataReader ds, Boolean describeParameterEncryptionRequest)
|
||||
在 System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, TaskCompletionSource`1 completion, Int32 timeout, Task& task, Boolean& usedCache, Boolean asyncWrite, Boolean inRetry)
|
||||
在 System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(TaskCompletionSource`1 completion, String methodName, Boolean sendToPipe, Int32 timeout, Boolean& usedCache, Boolean asyncWrite, Boolean inRetry)
|
||||
在 System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
|
||||
在 System.Data.Linq.SqlClient.SqlProvider.Execute(Expression query, QueryInfo queryInfo, IObjectReaderFactory factory, Object[] parentArgs, Object[] userArgs, ICompiledSubQuery[] subQueries, Object lastResult)
|
||||
在 System.Data.Linq.SqlClient.SqlProvider.ExecuteAll(Expression query, QueryInfo[] queryInfos, IObjectReaderFactory factory, Object[] userArguments, ICompiledSubQuery[] subQueries)
|
||||
在 System.Data.Linq.SqlClient.SqlProvider.System.Data.Linq.Provider.IProvider.Execute(Expression query)
|
||||
在 System.Data.Linq.ChangeDirector.StandardChangeDirector.DynamicInsert(TrackedObject item)
|
||||
在 System.Data.Linq.ChangeDirector.StandardChangeDirector.Insert(TrackedObject item)
|
||||
在 System.Data.Linq.ChangeProcessor.SubmitChanges(ConflictMode failureMode)
|
||||
在 System.Data.Linq.DataContext.SubmitChanges(ConflictMode failureMode)
|
||||
在 System.Data.Linq.DataContext.SubmitChanges()
|
||||
在 BLL.TrainingItemService.AddTrainingItem(Training_TrainingItem trainingItem) 位置 G:\公司项目\新疆油建\SGGL_TCC\SGGL\BLL\HSSE\EduTrain\TrainingItemService.cs:行号 60
|
||||
在 FineUIPro.Web.HSSE.EduTrain.TrainingItemSave.SaveData(Boolean isClose) 位置 G:\公司项目\新疆油建\SGGL_TCC\SGGL\FineUIPro.Web\HSSE\EduTrain\TrainingItemSave.aspx.cs:行号 121
|
||||
在 FineUIPro.Web.HSSE.EduTrain.TrainingItemSave.btnSave_Click(Object sender, EventArgs e) 位置 G:\公司项目\新疆油建\SGGL_TCC\SGGL\FineUIPro.Web\HSSE\EduTrain\TrainingItemSave.aspx.cs:行号 148
|
||||
在 FineUIPro.Button.OnClick(EventArgs e)
|
||||
在 (Button , EventArgs )
|
||||
在 FineUIPro.Button.RaisePostBackEvent(String eventArgument)
|
||||
在 System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument)
|
||||
在 System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData)
|
||||
在 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
|
||||
出错时间:11/19/2024 14:30:27
|
||||
出错文件:http://localhost:4528/HSSE/EduTrain/TrainingItemSave.aspx?TrainingId=0
|
||||
IP地址:::1
|
||||
操作人员:JT
|
||||
|
||||
出错时间:11/19/2024 14:30:27
|
||||
|
||||
|
||||
错误信息开始=====>
|
||||
错误类型:SqlException
|
||||
错误信息:INSERT 语句与 FOREIGN KEY 约束"FK_Training_TrainingItem_Training_Training"冲突。该冲突发生于数据库"SGGLDB_XJYJ",表"dbo.Training_Training", column 'TrainingId'。
|
||||
语句已终止。
|
||||
错误堆栈:
|
||||
在 System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
|
||||
在 System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
|
||||
在 System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose)
|
||||
在 System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady)
|
||||
在 System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString, Boolean isInternal, Boolean forDescribeParameterEncryption, Boolean shouldCacheForAlwaysEncrypted)
|
||||
在 System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async, Int32 timeout, Task& task, Boolean asyncWrite, Boolean inRetry, SqlDataReader ds, Boolean describeParameterEncryptionRequest)
|
||||
在 System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, TaskCompletionSource`1 completion, Int32 timeout, Task& task, Boolean& usedCache, Boolean asyncWrite, Boolean inRetry)
|
||||
在 System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(TaskCompletionSource`1 completion, String methodName, Boolean sendToPipe, Int32 timeout, Boolean& usedCache, Boolean asyncWrite, Boolean inRetry)
|
||||
在 System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
|
||||
在 System.Data.Linq.SqlClient.SqlProvider.Execute(Expression query, QueryInfo queryInfo, IObjectReaderFactory factory, Object[] parentArgs, Object[] userArgs, ICompiledSubQuery[] subQueries, Object lastResult)
|
||||
在 System.Data.Linq.SqlClient.SqlProvider.ExecuteAll(Expression query, QueryInfo[] queryInfos, IObjectReaderFactory factory, Object[] userArguments, ICompiledSubQuery[] subQueries)
|
||||
在 System.Data.Linq.SqlClient.SqlProvider.System.Data.Linq.Provider.IProvider.Execute(Expression query)
|
||||
在 System.Data.Linq.ChangeDirector.StandardChangeDirector.DynamicInsert(TrackedObject item)
|
||||
在 System.Data.Linq.ChangeDirector.StandardChangeDirector.Insert(TrackedObject item)
|
||||
在 System.Data.Linq.ChangeProcessor.SubmitChanges(ConflictMode failureMode)
|
||||
在 System.Data.Linq.DataContext.SubmitChanges(ConflictMode failureMode)
|
||||
在 System.Data.Linq.DataContext.SubmitChanges()
|
||||
在 BLL.TrainingItemService.AddTrainingItem(Training_TrainingItem trainingItem) 位置 G:\公司项目\新疆油建\SGGL_TCC\SGGL\BLL\HSSE\EduTrain\TrainingItemService.cs:行号 60
|
||||
在 FineUIPro.Web.HSSE.EduTrain.TrainingItemSave.SaveData(Boolean isClose) 位置 G:\公司项目\新疆油建\SGGL_TCC\SGGL\FineUIPro.Web\HSSE\EduTrain\TrainingItemSave.aspx.cs:行号 121
|
||||
在 FineUIPro.Web.HSSE.EduTrain.TrainingItemSave.btnSave_Click(Object sender, EventArgs e) 位置 G:\公司项目\新疆油建\SGGL_TCC\SGGL\FineUIPro.Web\HSSE\EduTrain\TrainingItemSave.aspx.cs:行号 148
|
||||
在 FineUIPro.Button.OnClick(EventArgs e)
|
||||
在 (Button , EventArgs )
|
||||
在 FineUIPro.Button.RaisePostBackEvent(String eventArgument)
|
||||
在 System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument)
|
||||
在 System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData)
|
||||
在 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
|
||||
出错时间:11/19/2024 14:31:31
|
||||
出错文件:http://localhost:4528/HSSE/EduTrain/TrainingItemSave.aspx?TrainingId=0
|
||||
IP地址:::1
|
||||
操作人员:JT
|
||||
|
||||
出错时间:11/19/2024 14:31:31
|
||||
|
||||
通用定时器开启!
|
||||
启用环境定时器开始!
|
||||
启用环境定时器结束!
|
||||
通用定时器结束!
|
||||
|
||||
错误信息开始=====>
|
||||
错误类型:HttpParseException
|
||||
错误信息:未能加载类型“FineUIPro.Web.Person.EduTrain.Plan”。
|
||||
错误堆栈:
|
||||
在 System.Web.UI.TemplateParser.ProcessException(Exception ex)
|
||||
在 System.Web.UI.TemplateParser.ParseStringInternal(String text, Encoding fileEncoding)
|
||||
在 System.Web.UI.TemplateParser.ParseString(String text, VirtualPath virtualPath, Encoding fileEncoding)
|
||||
----错误类型:HttpException
|
||||
----错误信息:
|
||||
----未能加载类型“FineUIPro.Web.Person.EduTrain.Plan”。
|
||||
----错误堆栈:
|
||||
在 System.Web.UI.TemplateParser.GetType(String typeName, Boolean ignoreCase, Boolean throwOnError)
|
||||
在 System.Web.UI.TemplateParser.ProcessInheritsAttribute(String baseTypeName, String codeFileBaseTypeName, String src, Assembly assembly)
|
||||
在 System.Web.UI.TemplateParser.PostProcessMainDirectiveAttributes(IDictionary parseData)
|
||||
出错时间:11/19/2024 14:50:11
|
||||
出错文件:http://localhost:4528/Person/EduTrain/Plan.aspx
|
||||
IP地址:::1
|
||||
|
||||
出错时间:11/19/2024 14:50:11
|
||||
|
||||
|
||||
错误信息开始=====>
|
||||
错误类型:HttpParseException
|
||||
错误信息:未能加载类型“FineUIPro.Web.Person.EduTrain.Task”。
|
||||
错误堆栈:
|
||||
在 System.Web.UI.TemplateParser.ProcessException(Exception ex)
|
||||
在 System.Web.UI.TemplateParser.ParseStringInternal(String text, Encoding fileEncoding)
|
||||
在 System.Web.UI.TemplateParser.ParseString(String text, VirtualPath virtualPath, Encoding fileEncoding)
|
||||
----错误类型:HttpException
|
||||
----错误信息:
|
||||
----未能加载类型“FineUIPro.Web.Person.EduTrain.Task”。
|
||||
----错误堆栈:
|
||||
在 System.Web.UI.TemplateParser.GetType(String typeName, Boolean ignoreCase, Boolean throwOnError)
|
||||
在 System.Web.UI.TemplateParser.ProcessInheritsAttribute(String baseTypeName, String codeFileBaseTypeName, String src, Assembly assembly)
|
||||
在 System.Web.UI.TemplateParser.PostProcessMainDirectiveAttributes(IDictionary parseData)
|
||||
出错时间:11/19/2024 14:50:21
|
||||
出错文件:http://localhost:4528/Person/EduTrain/Task.aspx
|
||||
IP地址:::1
|
||||
|
||||
出错时间:11/19/2024 14:50:21
|
||||
|
||||
通用定时器开启!
|
||||
启用环境定时器开始!
|
||||
启用环境定时器结束!
|
||||
通用定时器结束!
|
||||
通用定时器开启!
|
||||
启用环境定时器开始!
|
||||
启用环境定时器结束!
|
||||
通用定时器结束!
|
||||
通用定时器开启!
|
||||
启用环境定时器开始!
|
||||
启用环境定时器结束!
|
||||
通用定时器结束!
|
||||
通用定时器开启!
|
||||
启用环境定时器开始!
|
||||
启用环境定时器结束!
|
||||
通用定时器结束!
|
||||
通用定时器开启!
|
||||
启用环境定时器开始!
|
||||
启用环境定时器结束!
|
||||
通用定时器结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
通用定时器开启!
|
||||
启用环境定时器开始!
|
||||
启用环境定时器结束!
|
||||
通用定时器结束!
|
||||
通用定时器开启!
|
||||
启用环境定时器开始!
|
||||
启用环境定时器结束!
|
||||
通用定时器结束!
|
||||
通用定时器开启!
|
||||
启用环境定时器开始!
|
||||
启用环境定时器结束!
|
||||
通用定时器结束!
|
||||
通用定时器开启!
|
||||
启用环境定时器开始!
|
||||
启用环境定时器结束!
|
||||
通用定时器结束!
|
||||
通用定时器开启!
|
||||
启用环境定时器开始!
|
||||
启用环境定时器结束!
|
||||
通用定时器结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
通用定时器开启!
|
||||
启用环境定时器开始!
|
||||
启用环境定时器结束!
|
||||
通用定时器结束!
|
||||
|
||||
错误信息开始=====>
|
||||
错误类型:HttpException
|
||||
错误信息:文件“/ZHGL/InformationProject/BoardData.aspx”不存在。
|
||||
错误堆栈:
|
||||
在 System.Web.UI.Util.CheckVirtualFileExists(VirtualPath virtualPath)
|
||||
在 System.Web.Compilation.BuildManager.GetVPathBuildResultInternal(VirtualPath virtualPath, Boolean noBuild, Boolean allowCrossApp, Boolean allowBuildInPrecompile, Boolean throwIfNotFound, Boolean ensureIsUpToDate)
|
||||
在 System.Web.Compilation.BuildManager.GetVPathBuildResultWithNoAssert(HttpContext context, VirtualPath virtualPath, Boolean noBuild, Boolean allowCrossApp, Boolean allowBuildInPrecompile, Boolean throwIfNotFound, Boolean ensureIsUpToDate)
|
||||
在 System.Web.Compilation.BuildManager.GetVirtualPathObjectFactory(VirtualPath virtualPath, HttpContext context, Boolean allowCrossApp, Boolean throwIfNotFound)
|
||||
在 System.Web.Compilation.BuildManager.CreateInstanceFromVirtualPath(VirtualPath virtualPath, Type requiredBaseType, HttpContext context, Boolean allowCrossApp)
|
||||
在 System.Web.UI.PageHandlerFactory.GetHandlerHelper(HttpContext context, String requestType, VirtualPath virtualPath, String physicalPath)
|
||||
在 System.Web.UI.PageHandlerFactory.GetHandler(HttpContext context, String requestType, String virtualPath, String path)
|
||||
在 System.Web.HttpApplication.MaterializeHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
|
||||
在 System.Web.HttpApplication.ExecuteStepImpl(IExecutionStep step)
|
||||
在 System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)
|
||||
出错时间:11/27/2024 09:29:55
|
||||
出错文件:http://localhost:4528/ZHGL/InformationProject/BoardData.aspx
|
||||
IP地址:::1
|
||||
|
||||
出错时间:11/27/2024 09:29:56
|
||||
|
||||
通用定时器开启!
|
||||
启用环境定时器开始!
|
||||
启用环境定时器结束!
|
||||
通用定时器结束!
|
||||
通用定时器开启!
|
||||
启用环境定时器开始!
|
||||
启用环境定时器结束!
|
||||
通用定时器结束!
|
||||
通用定时器开启!
|
||||
启用环境定时器开始!
|
||||
启用环境定时器结束!
|
||||
通用定时器结束!
|
||||
通用定时器开启!
|
||||
启用环境定时器开始!
|
||||
启用环境定时器结束!
|
||||
通用定时器结束!
|
||||
通用定时器开启!
|
||||
启用环境定时器开始!
|
||||
启用环境定时器结束!
|
||||
通用定时器结束!
|
||||
通用定时器开启!
|
||||
启用环境定时器开始!
|
||||
启用环境定时器结束!
|
||||
通用定时器结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
通用定时器开启!
|
||||
启用环境定时器开始!
|
||||
启用环境定时器结束!
|
||||
通用定时器结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
通用定时器开启!
|
||||
启用环境定时器开始!
|
||||
启用环境定时器结束!
|
||||
通用定时器结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
通用定时器开启!
|
||||
启用环境定时器开始!
|
||||
启用环境定时器结束!
|
||||
通用定时器结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
通用定时器开启!
|
||||
启用环境定时器开始!
|
||||
启用环境定时器结束!
|
||||
通用定时器结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
通用定时器开启!
|
||||
启用环境定时器开始!
|
||||
启用环境定时器结束!
|
||||
通用定时器结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
通用定时器开启!
|
||||
启用环境定时器开始!
|
||||
启用环境定时器结束!
|
||||
通用定时器结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
通用定时器开启!
|
||||
启用环境定时器开始!
|
||||
启用环境定时器结束!
|
||||
通用定时器结束!
|
||||
通用定时器开启!
|
||||
启用环境定时器开始!
|
||||
启用环境定时器结束!
|
||||
通用定时器结束!
|
||||
通用定时器开启!
|
||||
启用环境定时器开始!
|
||||
启用环境定时器结束!
|
||||
通用定时器结束!
|
||||
通用定时器开启!
|
||||
启用环境定时器开始!
|
||||
启用环境定时器结束!
|
||||
通用定时器结束!
|
||||
通用定时器开启!
|
||||
启用环境定时器开始!
|
||||
启用环境定时器结束!
|
||||
通用定时器结束!
|
||||
通用定时器开启!
|
||||
启用环境定时器开始!
|
||||
启用环境定时器结束!
|
||||
通用定时器结束!
|
||||
通用定时器开启!
|
||||
启用环境定时器开始!
|
||||
启用环境定时器结束!
|
||||
通用定时器结束!
|
||||
通用定时器开启!
|
||||
启用环境定时器开始!
|
||||
启用环境定时器结束!
|
||||
通用定时器结束!
|
||||
|
||||
错误信息开始=====>
|
||||
错误类型:ChangeConflictException
|
||||
错误信息:找不到行或行已更改。
|
||||
错误堆栈:
|
||||
在 System.Data.Linq.ChangeProcessor.SubmitChanges(ConflictMode failureMode)
|
||||
在 System.Data.Linq.DataContext.SubmitChanges(ConflictMode failureMode)
|
||||
在 System.Data.Linq.DataContext.SubmitChanges()
|
||||
在 FineUIPro.Web.HSSE.BoardData.btnSave_OnClick(Object sender, EventArgs e) 位置 G:\公司项目\新疆油建\SGGL_TCC\SGGL\FineUIPro.Web\HSSE\BoardData.aspx.cs:行号 152
|
||||
在 FineUIPro.Button.OnClick(EventArgs e)
|
||||
在 (Button , EventArgs )
|
||||
在 FineUIPro.Button.RaisePostBackEvent(String eventArgument)
|
||||
在 System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument)
|
||||
在 System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData)
|
||||
在 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
|
||||
出错时间:12/04/2024 09:50:05
|
||||
出错文件:http://localhost:4528/HSSE/BoardData.aspx
|
||||
IP地址:::1
|
||||
操作人员:JT
|
||||
|
||||
出错时间:12/04/2024 09:50:05
|
||||
|
||||
通用定时器开启!
|
||||
启用环境定时器开始!
|
||||
启用环境定时器结束!
|
||||
通用定时器结束!
|
||||
通用定时器开启!
|
||||
启用环境定时器开始!
|
||||
启用环境定时器结束!
|
||||
通用定时器结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
通用定时器开启!
|
||||
启用环境定时器开始!
|
||||
启用环境定时器结束!
|
||||
通用定时器结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
通用定时器开启!
|
||||
启用环境定时器开始!
|
||||
启用环境定时器结束!
|
||||
通用定时器结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
通用定时器开启!
|
||||
启用环境定时器开始!
|
||||
启用环境定时器结束!
|
||||
通用定时器结束!
|
||||
通用定时器开启!
|
||||
启用环境定时器开始!
|
||||
启用环境定时器结束!
|
||||
通用定时器结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
环境数据同步开始!
|
||||
环境数据同步结束!
|
||||
通用定时器开启!
|
||||
启用环境定时器开始!
|
||||
启用环境定时器结束!
|
||||
通用定时器结束!
|
||||
通用定时器开启!
|
||||
启用环境定时器开始!
|
||||
启用环境定时器结束!
|
||||
|
|
|
|||
|
|
@ -72,15 +72,6 @@
|
|||
<Reference Include="BouncyCastle.Crypto, Version=1.8.9.0, Culture=neutral, PublicKeyToken=0e99375e54769942, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Portable.BouncyCastle.1.8.9\lib\net40\BouncyCastle.Crypto.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="BouncyCastle.Cryptography, Version=2.0.0.0, Culture=neutral, PublicKeyToken=072edcf4a5328938, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\BouncyCastle.Cryptography.2.3.1\lib\net461\BouncyCastle.Cryptography.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Enums.NET, Version=4.0.0.0, Culture=neutral, PublicKeyToken=7ea1c1650d506225, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Enums.NET.4.0.1\lib\net45\Enums.NET.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="ExtendedNumerics.BigDecimal, Version=2025.1001.2.129, Culture=neutral, PublicKeyToken=65f1315a45ad8949, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\ExtendedNumerics.BigDecimal.2025.1001.2.129\lib\net46\ExtendedNumerics.BigDecimal.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="FastReport, Version=2021.3.0.0, Culture=neutral, PublicKeyToken=db7e5ce63278458c, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>..\FineUIPro\Reference BLL\FastReport.dll</HintPath>
|
||||
|
|
@ -102,21 +93,14 @@
|
|||
<HintPath>..\FineUIPro\FineUIPro.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="ICSharpCode.SharpZipLib, Version=1.3.3.11, Culture=neutral, PublicKeyToken=1b03e6acf1164f73, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\SharpZipLib.1.4.2\lib\netstandard2.0\ICSharpCode.SharpZipLib.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
<HintPath>..\packages\SharpZipLib.1.3.3\lib\net45\ICSharpCode.SharpZipLib.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Interop.WIA, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<EmbedInteropTypes>False</EmbedInteropTypes>
|
||||
<HintPath>..\FineUIPro\Reference BLL\Interop.WIA.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="MathNet.Numerics, Version=5.0.0.0, Culture=neutral, PublicKeyToken=cd8b63ad3d691a37, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\MathNet.Numerics.Signed.5.0.0\lib\net461\MathNet.Numerics.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.CSharp" />
|
||||
<Reference Include="Microsoft.IO.RecyclableMemoryStream, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.IO.RecyclableMemoryStream.3.0.0\lib\netstandard2.0\Microsoft.IO.RecyclableMemoryStream.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.JScript" />
|
||||
<Reference Include="Microsoft.Office.Interop.Excel, Version=15.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.Office.Interop.Excel.15.0.4420.1017\lib\net20\Microsoft.Office.Interop.Excel.dll</HintPath>
|
||||
|
|
@ -151,68 +135,15 @@
|
|||
<Reference Include="RestSharp, Version=106.15.0.0, Culture=neutral, PublicKeyToken=598062e77f915f75, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\RestSharp.106.15.0\lib\net452\RestSharp.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="SixLabors.Fonts, Version=1.0.0.0, Culture=neutral, PublicKeyToken=d998eea7b14cab13, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\SixLabors.Fonts.1.0.1\lib\netstandard2.0\SixLabors.Fonts.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="SixLabors.ImageSharp, Version=2.0.0.0, Culture=neutral, PublicKeyToken=d998eea7b14cab13, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\SixLabors.ImageSharp.2.1.9\lib\netstandard2.0\SixLabors.ImageSharp.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Buffers, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Buffers.4.5.1\lib\net461\System.Buffers.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.ComponentModel.DataAnnotations" />
|
||||
<Reference Include="System.Data.DataSetExtensions" />
|
||||
<Reference Include="System.Data.Linq" />
|
||||
<Reference Include="System.DirectoryServices" />
|
||||
<Reference Include="System.Formats.Asn1, Version=8.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Formats.Asn1.8.0.1\lib\netstandard2.0\System.Formats.Asn1.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.IO.Compression" />
|
||||
<Reference Include="System.IO.Compression.FileSystem" />
|
||||
<Reference Include="System.Management" />
|
||||
<Reference Include="System.Memory, Version=4.0.1.2, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Memory.4.5.5\lib\net461\System.Memory.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Numerics" />
|
||||
<Reference Include="System.Numerics.Vectors, Version=4.1.4.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Numerics.Vectors.4.5.0\lib\net46\System.Numerics.Vectors.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Runtime.CompilerServices.Unsafe, Version=5.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Runtime.CompilerServices.Unsafe.5.0.0\lib\net45\System.Runtime.CompilerServices.Unsafe.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Runtime.Serialization" />
|
||||
<Reference Include="System.Security.Cryptography.Algorithms, Version=4.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Security.Cryptography.Algorithms.4.3.1\lib\net461\System.Security.Cryptography.Algorithms.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="System.Security.Cryptography.Cng, Version=5.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Security.Cryptography.Cng.5.0.0\lib\net461\System.Security.Cryptography.Cng.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Security.Cryptography.Pkcs, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Security.Cryptography.Pkcs.8.0.1\lib\netstandard2.0\System.Security.Cryptography.Pkcs.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Security.Cryptography.Primitives, Version=4.0.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Security.Cryptography.Primitives.4.3.0\lib\net46\System.Security.Cryptography.Primitives.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="System.Security.Cryptography.Xml, Version=8.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Security.Cryptography.Xml.8.0.2\lib\netstandard2.0\System.Security.Cryptography.Xml.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.ServiceModel" />
|
||||
<Reference Include="System.Text.Encoding.CodePages, Version=5.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Text.Encoding.CodePages.5.0.0\lib\net461\System.Text.Encoding.CodePages.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Threading.Tasks.Extensions, Version=4.2.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Threading.Tasks.Extensions.4.5.2\lib\netstandard2.0\System.Threading.Tasks.Extensions.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Transactions" />
|
||||
<Reference Include="System.ValueTuple, Version=4.0.2.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.ValueTuple.4.4.0\lib\net461\System.ValueTuple.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="System.Web.DataVisualization" />
|
||||
<Reference Include="System.Web.DynamicData" />
|
||||
<Reference Include="System.Web.Entity" />
|
||||
|
|
@ -342,13 +273,7 @@
|
|||
<Content Include="BaseInfo\WorkPost.aspx" />
|
||||
<Content Include="BaseInfo\WorkStage.aspx" />
|
||||
<Content Include="common\css\base.css" />
|
||||
<Content Include="common\css\index.css" />
|
||||
<Content Include="common\css\projectIndex.css" />
|
||||
<Content Include="common\css\swiper-bundle.min.css" />
|
||||
<Content Include="common\images\01.png" />
|
||||
<Content Include="common\images\h01.png" />
|
||||
<Content Include="common\images\m06.png" />
|
||||
<Content Include="common\images\n.png" />
|
||||
<Content Include="common\image\bj 1.jpg" />
|
||||
<Content Include="common\image\img1\04.png" />
|
||||
<Content Include="common\image\img1\Slice 40.png" />
|
||||
|
|
@ -377,8 +302,6 @@
|
|||
<Content Include="common\mainMenu_SubPackManage.aspx" />
|
||||
<Content Include="common\mainMenu_SYHSE.aspx" />
|
||||
<Content Include="common\mainMenu_SYHSEN.aspx" />
|
||||
<Content Include="common\mainNew.aspx" />
|
||||
<Content Include="common\mainProjectNew.aspx" />
|
||||
<Content Include="common\mainProjectSY.aspx" />
|
||||
<Content Include="common\mainProjects.aspx" />
|
||||
<Content Include="common\mains.aspx" />
|
||||
|
|
@ -1828,7 +1751,6 @@
|
|||
<Content Include="HSSE\Administrative\DriverManager.aspx" />
|
||||
<Content Include="HSSE\Administrative\DriverManagerEdit.aspx" />
|
||||
<Content Include="HSSE\Administrative\DriverManagerView.aspx" />
|
||||
<Content Include="HSSE\BoardData.aspx" />
|
||||
<Content Include="HSSE\Check\CheckColligation.aspx" />
|
||||
<Content Include="HSSE\Check\CheckColligationDetailEdit.aspx" />
|
||||
<Content Include="HSSE\Check\CheckColligationEdit.aspx" />
|
||||
|
|
@ -2302,7 +2224,6 @@
|
|||
<Content Include="HSSE\SitePerson\MonthReportEdit.aspx" />
|
||||
<Content Include="HSSE\SitePerson\MonthReportIn.aspx" />
|
||||
<Content Include="HSSE\SitePerson\MonthReportView.aspx" />
|
||||
<Content Include="HSSE\SitePerson\OnePersonPerFile.aspx" />
|
||||
<Content Include="HSSE\SitePerson\PersonAskForLeaveEdit.aspx" />
|
||||
<Content Include="HSSE\SitePerson\PersonAskForLeaveList.aspx" />
|
||||
<Content Include="HSSE\SitePerson\PersonAutoDetail.aspx" />
|
||||
|
|
@ -2457,51 +2378,6 @@
|
|||
<Content Include="Personal\FileSearch.aspx" />
|
||||
<Content Include="Personal\PersonCheckInfo.aspx" />
|
||||
<Content Include="Personal\PersonDuty.aspx" />
|
||||
<Content Include="Person\EduTrain\AccidentCase.aspx" />
|
||||
<Content Include="Person\EduTrain\AccidentCaseItemSave.aspx" />
|
||||
<Content Include="Person\EduTrain\AccidentCaseItemSelectCloumn.aspx" />
|
||||
<Content Include="Person\EduTrain\AccidentCaseSave.aspx" />
|
||||
<Content Include="Person\EduTrain\CompanyTraining.aspx" />
|
||||
<Content Include="Person\EduTrain\CompanyTrainingItemSave.aspx" />
|
||||
<Content Include="Person\EduTrain\CompanyTrainingSave.aspx" />
|
||||
<Content Include="Person\EduTrain\Plan.aspx" />
|
||||
<Content Include="Person\EduTrain\PlanEdit.aspx" />
|
||||
<Content Include="Person\EduTrain\PlanView.aspx" />
|
||||
<Content Include="Person\EduTrain\ShowPerson.aspx" />
|
||||
<Content Include="Person\EduTrain\Task.aspx" />
|
||||
<Content Include="Person\EduTrain\TaskNotice.aspx" />
|
||||
<Content Include="Person\EduTrain\TaskNoticeEdit.aspx" />
|
||||
<Content Include="Person\EduTrain\TaskRecordView.aspx" />
|
||||
<Content Include="Person\EduTrain\TaskView.aspx" />
|
||||
<Content Include="Person\EduTrain\TestPlan.aspx" />
|
||||
<Content Include="Person\EduTrain\TestPlanView.aspx" />
|
||||
<Content Include="Person\EduTrain\TestRecord.aspx" />
|
||||
<Content Include="Person\EduTrain\TestRecordItem.aspx" />
|
||||
<Content Include="Person\EduTrain\TestRecordPrint.aspx" />
|
||||
<Content Include="Person\EduTrain\TestRecordView.aspx" />
|
||||
<Content Include="Person\EduTrain\TestStatistics.aspx" />
|
||||
<Content Include="Person\EduTrain\TestTraining.aspx" />
|
||||
<Content Include="Person\EduTrain\TestTrainingItemIn.aspx" />
|
||||
<Content Include="Person\EduTrain\TestTrainingItemSave.aspx" />
|
||||
<Content Include="Person\EduTrain\TestTrainingOut.aspx" />
|
||||
<Content Include="Person\EduTrain\TestTrainingSave.aspx" />
|
||||
<Content Include="Person\EduTrain\TestTrainRecord.aspx" />
|
||||
<Content Include="Person\EduTrain\TrainDB.aspx" />
|
||||
<Content Include="Person\EduTrain\TrainFind.aspx" />
|
||||
<Content Include="Person\EduTrain\TrainingItemSave.aspx" />
|
||||
<Content Include="Person\EduTrain\TrainingSave.aspx" />
|
||||
<Content Include="Person\EduTrain\TrainRecord.aspx" />
|
||||
<Content Include="Person\EduTrain\TrainRecordEdit.aspx" />
|
||||
<Content Include="Person\EduTrain\TrainRecordIn.aspx" />
|
||||
<Content Include="Person\EduTrain\TrainRecordView.aspx" />
|
||||
<Content Include="Person\EduTrain\TrainTest.aspx" />
|
||||
<Content Include="Person\EduTrain\TrainTestDB.aspx" />
|
||||
<Content Include="Person\EduTrain\TrainTestDBEdit.aspx" />
|
||||
<Content Include="Person\EduTrain\TrainTestDBSelectCloumn.aspx" />
|
||||
<Content Include="Person\EduTrain\TrainTestItemEdit.aspx" />
|
||||
<Content Include="Person\EduTrain\TrainTestRecord.aspx" />
|
||||
<Content Include="Person\EduTrain\TrainTestRecordEdit.aspx" />
|
||||
<Content Include="Person\EduTrain\TrainTestView.aspx" />
|
||||
<Content Include="Person\PersonCheck.aspx" />
|
||||
<Content Include="Person\PersonChecking.aspx" />
|
||||
<Content Include="Person\PersonCheckingView.aspx" />
|
||||
|
|
@ -3393,7 +3269,6 @@
|
|||
<Content Include="ZHGL\HSSESystem\HSSEOrganize.aspx" />
|
||||
<Content Include="ZHGL\HSSESystem\SafetyInstitution.aspx" />
|
||||
<Content Include="ZHGL\HSSESystem\SafetyInstitutionEdit.aspx" />
|
||||
<Content Include="ZHGL\InformationProject\BoardData.aspx" />
|
||||
<Content Include="ZHGL\InformationProject\FileCabinetA.aspx" />
|
||||
<Content Include="ZHGL\InformationProject\FileCabinetAEdit.aspx" />
|
||||
<Content Include="ZHGL\InformationProject\FileCabinetAItemEdit.aspx" />
|
||||
|
|
@ -8019,20 +7894,6 @@
|
|||
<Compile Include="common\mainMenu_SYHSEN.aspx.designer.cs">
|
||||
<DependentUpon>mainMenu_SYHSEN.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="common\mainNew.aspx.cs">
|
||||
<DependentUpon>mainNew.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="common\mainNew.aspx.designer.cs">
|
||||
<DependentUpon>mainNew.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="common\mainProjectNew.aspx.cs">
|
||||
<DependentUpon>mainProjectNew.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="common\mainProjectNew.aspx.designer.cs">
|
||||
<DependentUpon>mainProjectNew.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="common\mainProjectSY.aspx.cs">
|
||||
<DependentUpon>mainProjectSY.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
|
|
@ -11990,13 +11851,6 @@
|
|||
<Compile Include="HSSE\Administrative\DriverManagerView.aspx.designer.cs">
|
||||
<DependentUpon>DriverManagerView.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="HSSE\BoardData.aspx.cs">
|
||||
<DependentUpon>BoardData.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="HSSE\BoardData.aspx.designer.cs">
|
||||
<DependentUpon>BoardData.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="HSSE\Check\CheckColligation.aspx.cs">
|
||||
<DependentUpon>CheckColligation.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
|
|
@ -15308,13 +15162,6 @@
|
|||
<Compile Include="HSSE\SitePerson\MonthReportView.aspx.designer.cs">
|
||||
<DependentUpon>MonthReportView.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="HSSE\SitePerson\OnePersonPerFile.aspx.cs">
|
||||
<DependentUpon>OnePersonPerFile.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="HSSE\SitePerson\OnePersonPerFile.aspx.designer.cs">
|
||||
<DependentUpon>OnePersonPerFile.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="HSSE\SitePerson\PersonAskForLeaveEdit.aspx.cs">
|
||||
<DependentUpon>PersonAskForLeaveEdit.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
|
|
@ -16092,321 +15939,6 @@
|
|||
<Compile Include="Personal\PersonDuty.aspx.designer.cs">
|
||||
<DependentUpon>PersonDuty.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\AccidentCase.aspx.cs">
|
||||
<DependentUpon>AccidentCase.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\AccidentCase.aspx.designer.cs">
|
||||
<DependentUpon>AccidentCase.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\AccidentCaseItemSave.aspx.cs">
|
||||
<DependentUpon>AccidentCaseItemSave.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\AccidentCaseItemSave.aspx.designer.cs">
|
||||
<DependentUpon>AccidentCaseItemSave.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\AccidentCaseItemSelectCloumn.aspx.cs">
|
||||
<DependentUpon>AccidentCaseItemSelectCloumn.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\AccidentCaseItemSelectCloumn.aspx.designer.cs">
|
||||
<DependentUpon>AccidentCaseItemSelectCloumn.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\AccidentCaseSave.aspx.cs">
|
||||
<DependentUpon>AccidentCaseSave.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\AccidentCaseSave.aspx.designer.cs">
|
||||
<DependentUpon>AccidentCaseSave.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\CompanyTraining.aspx.cs">
|
||||
<DependentUpon>CompanyTraining.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\CompanyTraining.aspx.designer.cs">
|
||||
<DependentUpon>CompanyTraining.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\CompanyTrainingItemSave.aspx.cs">
|
||||
<DependentUpon>CompanyTrainingItemSave.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\CompanyTrainingItemSave.aspx.designer.cs">
|
||||
<DependentUpon>CompanyTrainingItemSave.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\CompanyTrainingSave.aspx.cs">
|
||||
<DependentUpon>CompanyTrainingSave.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\CompanyTrainingSave.aspx.designer.cs">
|
||||
<DependentUpon>CompanyTrainingSave.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\Plan.aspx.cs">
|
||||
<DependentUpon>Plan.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\Plan.aspx.designer.cs">
|
||||
<DependentUpon>Plan.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\PlanEdit.aspx.cs">
|
||||
<DependentUpon>PlanEdit.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\PlanEdit.aspx.designer.cs">
|
||||
<DependentUpon>PlanEdit.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\PlanView.aspx.cs">
|
||||
<DependentUpon>PlanView.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\PlanView.aspx.designer.cs">
|
||||
<DependentUpon>PlanView.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\ShowPerson.aspx.cs">
|
||||
<DependentUpon>ShowPerson.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\ShowPerson.aspx.designer.cs">
|
||||
<DependentUpon>ShowPerson.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\Task.aspx.cs">
|
||||
<DependentUpon>Task.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\Task.aspx.designer.cs">
|
||||
<DependentUpon>Task.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TaskNotice.aspx.cs">
|
||||
<DependentUpon>TaskNotice.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TaskNotice.aspx.designer.cs">
|
||||
<DependentUpon>TaskNotice.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TaskNoticeEdit.aspx.cs">
|
||||
<DependentUpon>TaskNoticeEdit.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TaskNoticeEdit.aspx.designer.cs">
|
||||
<DependentUpon>TaskNoticeEdit.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TaskRecordView.aspx.cs">
|
||||
<DependentUpon>TaskRecordView.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TaskRecordView.aspx.designer.cs">
|
||||
<DependentUpon>TaskRecordView.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TaskView.aspx.cs">
|
||||
<DependentUpon>TaskView.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TaskView.aspx.designer.cs">
|
||||
<DependentUpon>TaskView.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TestPlan.aspx.cs">
|
||||
<DependentUpon>TestPlan.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TestPlan.aspx.designer.cs">
|
||||
<DependentUpon>TestPlan.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TestPlanView.aspx.cs">
|
||||
<DependentUpon>TestPlanView.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TestPlanView.aspx.designer.cs">
|
||||
<DependentUpon>TestPlanView.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TestRecord.aspx.cs">
|
||||
<DependentUpon>TestRecord.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TestRecord.aspx.designer.cs">
|
||||
<DependentUpon>TestRecord.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TestRecordItem.aspx.cs">
|
||||
<DependentUpon>TestRecordItem.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TestRecordItem.aspx.designer.cs">
|
||||
<DependentUpon>TestRecordItem.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TestRecordPrint.aspx.cs">
|
||||
<DependentUpon>TestRecordPrint.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TestRecordPrint.aspx.designer.cs">
|
||||
<DependentUpon>TestRecordPrint.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TestRecordView.aspx.cs">
|
||||
<DependentUpon>TestRecordView.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TestRecordView.aspx.designer.cs">
|
||||
<DependentUpon>TestRecordView.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TestStatistics.aspx.cs">
|
||||
<DependentUpon>TestStatistics.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TestStatistics.aspx.designer.cs">
|
||||
<DependentUpon>TestStatistics.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TestTraining.aspx.cs">
|
||||
<DependentUpon>TestTraining.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TestTraining.aspx.designer.cs">
|
||||
<DependentUpon>TestTraining.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TestTrainingItemIn.aspx.cs">
|
||||
<DependentUpon>TestTrainingItemIn.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TestTrainingItemIn.aspx.designer.cs">
|
||||
<DependentUpon>TestTrainingItemIn.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TestTrainingItemSave.aspx.cs">
|
||||
<DependentUpon>TestTrainingItemSave.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TestTrainingItemSave.aspx.designer.cs">
|
||||
<DependentUpon>TestTrainingItemSave.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TestTrainingOut.aspx.cs">
|
||||
<DependentUpon>TestTrainingOut.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TestTrainingOut.aspx.designer.cs">
|
||||
<DependentUpon>TestTrainingOut.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TestTrainingSave.aspx.cs">
|
||||
<DependentUpon>TestTrainingSave.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TestTrainingSave.aspx.designer.cs">
|
||||
<DependentUpon>TestTrainingSave.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TestTrainRecord.aspx.cs">
|
||||
<DependentUpon>TestTrainRecord.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TestTrainRecord.aspx.designer.cs">
|
||||
<DependentUpon>TestTrainRecord.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TrainDB.aspx.cs">
|
||||
<DependentUpon>TrainDB.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TrainDB.aspx.designer.cs">
|
||||
<DependentUpon>TrainDB.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TrainFind.aspx.cs">
|
||||
<DependentUpon>TrainFind.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TrainFind.aspx.designer.cs">
|
||||
<DependentUpon>TrainFind.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TrainingItemSave.aspx.cs">
|
||||
<DependentUpon>TrainingItemSave.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TrainingItemSave.aspx.designer.cs">
|
||||
<DependentUpon>TrainingItemSave.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TrainingSave.aspx.cs">
|
||||
<DependentUpon>TrainingSave.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TrainingSave.aspx.designer.cs">
|
||||
<DependentUpon>TrainingSave.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TrainRecord.aspx.cs">
|
||||
<DependentUpon>TrainRecord.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TrainRecord.aspx.designer.cs">
|
||||
<DependentUpon>TrainRecord.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TrainRecordEdit.aspx.cs">
|
||||
<DependentUpon>TrainRecordEdit.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TrainRecordEdit.aspx.designer.cs">
|
||||
<DependentUpon>TrainRecordEdit.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TrainRecordIn.aspx.cs">
|
||||
<DependentUpon>TrainRecordIn.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TrainRecordIn.aspx.designer.cs">
|
||||
<DependentUpon>TrainRecordIn.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TrainRecordView.aspx.cs">
|
||||
<DependentUpon>TrainRecordView.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TrainRecordView.aspx.designer.cs">
|
||||
<DependentUpon>TrainRecordView.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TrainTest.aspx.cs">
|
||||
<DependentUpon>TrainTest.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TrainTest.aspx.designer.cs">
|
||||
<DependentUpon>TrainTest.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TrainTestDB.aspx.cs">
|
||||
<DependentUpon>TrainTestDB.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TrainTestDB.aspx.designer.cs">
|
||||
<DependentUpon>TrainTestDB.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TrainTestDBEdit.aspx.cs">
|
||||
<DependentUpon>TrainTestDBEdit.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TrainTestDBEdit.aspx.designer.cs">
|
||||
<DependentUpon>TrainTestDBEdit.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TrainTestDBSelectCloumn.aspx.cs">
|
||||
<DependentUpon>TrainTestDBSelectCloumn.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TrainTestDBSelectCloumn.aspx.designer.cs">
|
||||
<DependentUpon>TrainTestDBSelectCloumn.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TrainTestItemEdit.aspx.cs">
|
||||
<DependentUpon>TrainTestItemEdit.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TrainTestItemEdit.aspx.designer.cs">
|
||||
<DependentUpon>TrainTestItemEdit.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TrainTestRecord.aspx.cs">
|
||||
<DependentUpon>TrainTestRecord.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TrainTestRecord.aspx.designer.cs">
|
||||
<DependentUpon>TrainTestRecord.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TrainTestRecordEdit.aspx.cs">
|
||||
<DependentUpon>TrainTestRecordEdit.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TrainTestRecordEdit.aspx.designer.cs">
|
||||
<DependentUpon>TrainTestRecordEdit.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TrainTestView.aspx.cs">
|
||||
<DependentUpon>TrainTestView.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Person\EduTrain\TrainTestView.aspx.designer.cs">
|
||||
<DependentUpon>TrainTestView.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Person\PersonCheck.aspx.cs">
|
||||
<DependentUpon>PersonCheck.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
|
|
@ -19006,13 +18538,6 @@
|
|||
<Compile Include="ZHGL\HSSESystem\SafetyInstitutionEdit.aspx.designer.cs">
|
||||
<DependentUpon>SafetyInstitutionEdit.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="ZHGL\InformationProject\BoardData.aspx.cs">
|
||||
<DependentUpon>BoardData.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="ZHGL\InformationProject\BoardData.aspx.designer.cs">
|
||||
<DependentUpon>BoardData.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="ZHGL\InformationProject\FileCabinetA.aspx.cs">
|
||||
<DependentUpon>FileCabinetA.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@
|
|||
<Items>
|
||||
<f:Grid ID="Grid1" Width="850px" ShowBorder="true" ShowHeader="false" EnableCollapse="true" ForceFit="true"
|
||||
runat="server" BoxFlex="1" DataKeyNames="CompanyTrainingItemIdNum" DataIDField="CompanyTrainingItemIdNum"
|
||||
AllowSorting="true" SortField="CompileDate" OnRowCommand="Grid1_RowCommand"
|
||||
AllowSorting="true" SortField="CompanyTrainingItemCode" OnRowCommand="Grid1_RowCommand"
|
||||
SortDirection="DESC" OnSort="Grid1_Sort" AllowPaging="true" IsDatabasePaging="true"
|
||||
PageSize="10" OnPageIndexChange="Grid1_PageIndexChange" EnableRowDoubleClickEvent="true"
|
||||
OnRowDoubleClick="Grid1_RowDoubleClick" EnableTextSelection="True" EnableColumnLines="true">
|
||||
|
|
|
|||
|
|
@ -39,27 +39,6 @@
|
|||
</f:DatePicker>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:NumberBox ID="txtLearningTime" Label="时长(分钟)" Required="true"
|
||||
ShowRedStar="true" runat="server" DecimalPrecision="0" NoDecimal="true" NoNegative="true" ></f:NumberBox>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:DropDownBox runat="server" ID="ddTestTraining" Required="true"
|
||||
ShowRedStar="true" Label="考试题库" EnableMultiSelect="true" CustomData="true">
|
||||
<PopPanel>
|
||||
<f:Tree ID="treeTestTraining" ShowHeader="false" Hidden="true" runat="server" EnableCheckBox="true" CascadeCheck="true">
|
||||
|
||||
</f:Tree>
|
||||
</PopPanel>
|
||||
<Listeners>
|
||||
<f:Listener Event="poppanelshow" Handler="onPopPanelShow" />
|
||||
</Listeners>
|
||||
</f:DropDownBox>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
</Rows>
|
||||
<Toolbars>
|
||||
<f:Toolbar ID="Toolbar1" Position="Bottom" ToolbarAlign="Right" runat="server">
|
||||
|
|
@ -89,45 +68,3 @@
|
|||
</form>
|
||||
</body>
|
||||
</html>
|
||||
<script type="text/javascript">
|
||||
var ddTestTraining = '<%= ddTestTraining.ClientID %>';
|
||||
var treeTestTraining = '<%= treeTestTraining.ClientID %>';
|
||||
|
||||
function onPopPanelShow(event) {
|
||||
var nodes = this.getValue();
|
||||
|
||||
F.noEvent(function () {
|
||||
// 第二个参数true:是否递归调用子节点
|
||||
F(treeTestTraining).checkNodes(nodes, true);
|
||||
|
||||
// 启用树控件的级联选择时,确保把树控件的选中值全部同步到下拉框
|
||||
syncToDropDownBox();
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
// 将树控件的选中值同步到下拉框
|
||||
function syncToDropDownBox() {
|
||||
var values = [], texts = [];
|
||||
var checkedNodes = F(treeTestTraining).getCheckedNodes(true);
|
||||
$.each(checkedNodes, function (index, node) {
|
||||
debugger;
|
||||
values.push(node.id);
|
||||
texts.push(node.text);
|
||||
});
|
||||
|
||||
F(ddTestTraining).setValue(values, texts);
|
||||
}
|
||||
|
||||
F.ready(function () {
|
||||
|
||||
F(treeTestTraining).on('nodecheck', function (event, nodeId, checked) {
|
||||
// 加个延迟,等待复选框的级联选择完成
|
||||
window.setTimeout(function () {
|
||||
syncToDropDownBox();
|
||||
});
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
</script>
|
||||
|
|
@ -2,7 +2,6 @@
|
|||
using System.Linq;
|
||||
using Model;
|
||||
using BLL;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace FineUIPro.Web.HSSE.EduTrain
|
||||
{
|
||||
|
|
@ -47,7 +46,7 @@ namespace FineUIPro.Web.HSSE.EduTrain
|
|||
{
|
||||
this.GetButtonPower();
|
||||
btnClose.OnClientClick = ActiveWindow.GetHideReference();
|
||||
BoundTree(treeTestTraining.Nodes, "0");
|
||||
|
||||
this.CompanyTrainingItemId = Request.QueryString["CompanyTrainingItemId"];
|
||||
this.CompanyTrainingId = Request.QueryString["CompanyTrainingId"];
|
||||
if (!string.IsNullOrEmpty(this.CompanyTrainingItemId))
|
||||
|
|
@ -60,25 +59,6 @@ namespace FineUIPro.Web.HSSE.EduTrain
|
|||
txtCompanyTrainingItemName.Text = q.CompanyTrainingItemName;
|
||||
txtCompileMan.Text = q.CompileMan;
|
||||
hdCompileMan.Text = q.CompileMan;
|
||||
if (!string.IsNullOrEmpty(q.TestTrainingIds))
|
||||
{
|
||||
ddTestTraining.Values = q.TestTrainingIds.Split(',');
|
||||
string text = "";
|
||||
var trains = Funs.DB.Training_TestTraining.ToList();
|
||||
foreach (var ids in ddTestTraining.Values)
|
||||
{
|
||||
var t = trains.FirstOrDefault(x => x.TrainingId == ids);
|
||||
if (t != null)
|
||||
{
|
||||
text += "[" + t.TrainingCode + "]" + t.TrainingName + ",";
|
||||
}
|
||||
}
|
||||
ddTestTraining.Text = text.TrimEnd(new char[] { ',' });
|
||||
}
|
||||
if (q.LearningTime.HasValue)
|
||||
{
|
||||
txtLearningTime.Text = (q.LearningTime.Value / 60).ToString();
|
||||
}
|
||||
if (q.CompileDate != null)
|
||||
{
|
||||
txtCompileDate.Text = string.Format("{0:yyyy-MM-dd}", q.CompileDate);
|
||||
|
|
@ -101,45 +81,6 @@ namespace FineUIPro.Web.HSSE.EduTrain
|
|||
}
|
||||
#endregion
|
||||
|
||||
private List<Model.Training_TestTraining> GetNewTraining(string parentId)
|
||||
{
|
||||
return (from x in Funs.DB.Training_TestTraining
|
||||
where x.SupTrainingId == parentId
|
||||
orderby x.TrainingCode
|
||||
select x).ToList();
|
||||
}
|
||||
private void BoundTree(TreeNodeCollection nodes, string parentId)
|
||||
{
|
||||
var dt = GetNewTraining(parentId);
|
||||
if (dt.Count() > 0)
|
||||
{
|
||||
TreeNode tn = null;
|
||||
foreach (var dr in dt)
|
||||
{
|
||||
string name = dr.TrainingName;
|
||||
if (!string.IsNullOrEmpty(dr.TrainingCode))
|
||||
{
|
||||
name = "[" + dr.TrainingCode + "]" + dr.TrainingName;
|
||||
}
|
||||
tn = new TreeNode
|
||||
{
|
||||
|
||||
Text = name,
|
||||
NodeID = dr.TrainingId,
|
||||
EnableClickEvent = true,
|
||||
ToolTip = dr.TrainingName
|
||||
};
|
||||
nodes.Add(tn);
|
||||
///是否存在下级节点
|
||||
var sup = Funs.DB.Training_TestTraining.FirstOrDefault(x => x.SupTrainingId == tn.NodeID);
|
||||
if (sup != null)
|
||||
{
|
||||
BoundTree(tn.Nodes, tn.NodeID);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#region 保存
|
||||
/// <summary>
|
||||
/// 保存数据
|
||||
|
|
@ -152,14 +93,6 @@ namespace FineUIPro.Web.HSSE.EduTrain
|
|||
CompanyTrainingItemName = this.txtCompanyTrainingItemName.Text.Trim(),
|
||||
CompileMan = hdCompileMan.Text.Trim()
|
||||
};
|
||||
if (ddTestTraining.Values != null && ddTestTraining.Values.Length > 0)
|
||||
{
|
||||
newCompanyTrainItem.TestTrainingIds = string.Join(",", ddTestTraining.Values);
|
||||
}
|
||||
if (!string.IsNullOrEmpty(txtLearningTime.Text))
|
||||
{
|
||||
newCompanyTrainItem.LearningTime = int.Parse(txtLearningTime.Text) * 60;
|
||||
}
|
||||
if (!string.IsNullOrEmpty(txtCompileDate.Text.Trim()))
|
||||
{
|
||||
newCompanyTrainItem.CompileDate = Convert.ToDateTime(txtCompileDate.Text.Trim());
|
||||
|
|
|
|||
|
|
@ -7,13 +7,11 @@
|
|||
// </自动生成>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace FineUIPro.Web.HSSE.EduTrain
|
||||
{
|
||||
|
||||
|
||||
public partial class CompanyTrainingItemSave
|
||||
{
|
||||
|
||||
namespace FineUIPro.Web.HSSE.EduTrain {
|
||||
|
||||
|
||||
public partial class CompanyTrainingItemSave {
|
||||
|
||||
/// <summary>
|
||||
/// form1 控件。
|
||||
/// </summary>
|
||||
|
|
@ -22,7 +20,7 @@ namespace FineUIPro.Web.HSSE.EduTrain
|
|||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// PageManager1 控件。
|
||||
/// </summary>
|
||||
|
|
@ -31,7 +29,7 @@ namespace FineUIPro.Web.HSSE.EduTrain
|
|||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.PageManager PageManager1;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// SimpleForm1 控件。
|
||||
/// </summary>
|
||||
|
|
@ -40,7 +38,7 @@ namespace FineUIPro.Web.HSSE.EduTrain
|
|||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Form SimpleForm1;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// txtCompanyTrainingItemCode 控件。
|
||||
/// </summary>
|
||||
|
|
@ -49,7 +47,7 @@ namespace FineUIPro.Web.HSSE.EduTrain
|
|||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.TextBox txtCompanyTrainingItemCode;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// txtCompanyTrainingItemName 控件。
|
||||
/// </summary>
|
||||
|
|
@ -58,7 +56,7 @@ namespace FineUIPro.Web.HSSE.EduTrain
|
|||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.TextBox txtCompanyTrainingItemName;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// txtCompileMan 控件。
|
||||
/// </summary>
|
||||
|
|
@ -67,7 +65,7 @@ namespace FineUIPro.Web.HSSE.EduTrain
|
|||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.TextBox txtCompileMan;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// txtCompileDate 控件。
|
||||
/// </summary>
|
||||
|
|
@ -76,34 +74,7 @@ namespace FineUIPro.Web.HSSE.EduTrain
|
|||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DatePicker txtCompileDate;
|
||||
|
||||
/// <summary>
|
||||
/// txtLearningTime 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.NumberBox txtLearningTime;
|
||||
|
||||
/// <summary>
|
||||
/// ddTestTraining 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DropDownBox ddTestTraining;
|
||||
|
||||
/// <summary>
|
||||
/// treeTestTraining 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Tree treeTestTraining;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// Toolbar1 控件。
|
||||
/// </summary>
|
||||
|
|
@ -112,7 +83,7 @@ namespace FineUIPro.Web.HSSE.EduTrain
|
|||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Toolbar Toolbar1;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// lbTemp 控件。
|
||||
/// </summary>
|
||||
|
|
@ -121,7 +92,7 @@ namespace FineUIPro.Web.HSSE.EduTrain
|
|||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Label lbTemp;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// btnAttachUrl 控件。
|
||||
/// </summary>
|
||||
|
|
@ -130,7 +101,7 @@ namespace FineUIPro.Web.HSSE.EduTrain
|
|||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnAttachUrl;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// ToolbarFill1 控件。
|
||||
/// </summary>
|
||||
|
|
@ -139,7 +110,7 @@ namespace FineUIPro.Web.HSSE.EduTrain
|
|||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.ToolbarFill ToolbarFill1;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// btnSave 控件。
|
||||
/// </summary>
|
||||
|
|
@ -148,7 +119,7 @@ namespace FineUIPro.Web.HSSE.EduTrain
|
|||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnSave;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// btnClose 控件。
|
||||
/// </summary>
|
||||
|
|
@ -157,7 +128,7 @@ namespace FineUIPro.Web.HSSE.EduTrain
|
|||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnClose;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// hdCompileMan 控件。
|
||||
/// </summary>
|
||||
|
|
@ -166,7 +137,7 @@ namespace FineUIPro.Web.HSSE.EduTrain
|
|||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.HiddenField hdCompileMan;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// WindowAtt 控件。
|
||||
/// </summary>
|
||||
|
|
|
|||
|
|
@ -39,11 +39,6 @@
|
|||
</f:DatePicker>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:NumberBox ID="txtLearningTime" Label="时长" runat="server" DecimalPrecision="0" NoDecimal="true" NoNegative="true" ></f:NumberBox>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
</Rows>
|
||||
<Toolbars>
|
||||
<f:Toolbar ID="Toolbar1" Position="Bottom" ToolbarAlign="Right" runat="server">
|
||||
|
|
|
|||
|
|
@ -62,14 +62,6 @@ namespace FineUIPro.Web.HSSE.EduTrain
|
|||
{
|
||||
txtCompileDate.Text = string.Format("{0:yyyy-MM-dd}", q.CompileDate);
|
||||
}
|
||||
if (q.LearningTime.HasValue)
|
||||
{
|
||||
txtLearningTime.Text = q.LearningTime.Value.ToString();
|
||||
}
|
||||
if (q.CompileDate != null)
|
||||
{
|
||||
txtCompileDate.Text = string.Format("{0:yyyy-MM-dd}", q.CompileDate);
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
|
|
@ -104,10 +96,6 @@ namespace FineUIPro.Web.HSSE.EduTrain
|
|||
CompileMan = hdCompileMan.Text.Trim(),
|
||||
UnitId = this.CurrUser.UnitId
|
||||
};
|
||||
if (!string.IsNullOrEmpty(this.txtLearningTime.Text))
|
||||
{
|
||||
trainingItem.LearningTime = int.Parse(this.txtLearningTime.Text);
|
||||
}
|
||||
if (!string.IsNullOrEmpty(txtCompileDate.Text.Trim()))
|
||||
{
|
||||
trainingItem.CompileDate = Convert.ToDateTime(txtCompileDate.Text.Trim());
|
||||
|
|
|
|||
|
|
@ -7,13 +7,11 @@
|
|||
// </自动生成>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace FineUIPro.Web.HSSE.EduTrain
|
||||
{
|
||||
|
||||
|
||||
public partial class TrainingItemSave
|
||||
{
|
||||
|
||||
namespace FineUIPro.Web.HSSE.EduTrain {
|
||||
|
||||
|
||||
public partial class TrainingItemSave {
|
||||
|
||||
/// <summary>
|
||||
/// form1 控件。
|
||||
/// </summary>
|
||||
|
|
@ -22,7 +20,7 @@ namespace FineUIPro.Web.HSSE.EduTrain
|
|||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// PageManager1 控件。
|
||||
/// </summary>
|
||||
|
|
@ -31,7 +29,7 @@ namespace FineUIPro.Web.HSSE.EduTrain
|
|||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.PageManager PageManager1;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// SimpleForm1 控件。
|
||||
/// </summary>
|
||||
|
|
@ -40,7 +38,7 @@ namespace FineUIPro.Web.HSSE.EduTrain
|
|||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Form SimpleForm1;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// txtTrainingItemCode 控件。
|
||||
/// </summary>
|
||||
|
|
@ -49,7 +47,7 @@ namespace FineUIPro.Web.HSSE.EduTrain
|
|||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.TextBox txtTrainingItemCode;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// txtTrainingItemName 控件。
|
||||
/// </summary>
|
||||
|
|
@ -58,7 +56,7 @@ namespace FineUIPro.Web.HSSE.EduTrain
|
|||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.TextBox txtTrainingItemName;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// txtCompileMan 控件。
|
||||
/// </summary>
|
||||
|
|
@ -67,7 +65,7 @@ namespace FineUIPro.Web.HSSE.EduTrain
|
|||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.TextBox txtCompileMan;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// txtCompileDate 控件。
|
||||
/// </summary>
|
||||
|
|
@ -76,16 +74,7 @@ namespace FineUIPro.Web.HSSE.EduTrain
|
|||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DatePicker txtCompileDate;
|
||||
|
||||
/// <summary>
|
||||
/// txtLearningTime 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.NumberBox txtLearningTime;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// Toolbar1 控件。
|
||||
/// </summary>
|
||||
|
|
@ -94,7 +83,7 @@ namespace FineUIPro.Web.HSSE.EduTrain
|
|||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Toolbar Toolbar1;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// lbTemp 控件。
|
||||
/// </summary>
|
||||
|
|
@ -103,7 +92,7 @@ namespace FineUIPro.Web.HSSE.EduTrain
|
|||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Label lbTemp;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// btnAttachUrl 控件。
|
||||
/// </summary>
|
||||
|
|
@ -112,7 +101,7 @@ namespace FineUIPro.Web.HSSE.EduTrain
|
|||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnAttachUrl;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// ToolbarFill1 控件。
|
||||
/// </summary>
|
||||
|
|
@ -121,7 +110,7 @@ namespace FineUIPro.Web.HSSE.EduTrain
|
|||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.ToolbarFill ToolbarFill1;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// btnSave 控件。
|
||||
/// </summary>
|
||||
|
|
@ -130,7 +119,7 @@ namespace FineUIPro.Web.HSSE.EduTrain
|
|||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnSave;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// btnClose 控件。
|
||||
/// </summary>
|
||||
|
|
@ -139,7 +128,7 @@ namespace FineUIPro.Web.HSSE.EduTrain
|
|||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnClose;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// hdCompileMan 控件。
|
||||
/// </summary>
|
||||
|
|
@ -148,7 +137,7 @@ namespace FineUIPro.Web.HSSE.EduTrain
|
|||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.HiddenField hdCompileMan;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// WindowAtt 控件。
|
||||
/// </summary>
|
||||
|
|
|
|||
|
|
@ -28,7 +28,7 @@
|
|||
</div>
|
||||
<div class="right-content" >
|
||||
<div class="logo">
|
||||
<div class="logo-txt" style="font-size:20px; font-weight:700;text-align: center;">新疆油建管理数字化平台</div>
|
||||
<div class="logo-txt" style="font-size:20px; font-weight:700;text-align: center;">中油(新疆)石油工程有限公司管理数字化平台</div>
|
||||
</div>
|
||||
<div id="div_login_form" class="login-main">
|
||||
<div class="login-layout">
|
||||
|
|
@ -46,7 +46,7 @@
|
|||
<div id="gs" class="checkbox-content"></div>
|
||||
</div>
|
||||
</div>
|
||||
<span>公司</span>
|
||||
<span>公司/分公司</span>
|
||||
</div>
|
||||
|
||||
<div id="rb_sg" class="login-help-left" style="margin-left: 60px;">
|
||||
|
|
@ -55,7 +55,7 @@
|
|||
<div id="sg" class="checkbox-content"></div>
|
||||
</div>
|
||||
</div>
|
||||
<span>项目</span>
|
||||
<span>工程</span>
|
||||
</div>
|
||||
|
||||
<%-- <div id="rb_sy" class="login-help-left">
|
||||
|
|
|
|||
|
|
@ -116,9 +116,9 @@ namespace FineUIPro.Web
|
|||
}
|
||||
else
|
||||
{
|
||||
Response.Redirect("~/Login.aspx");
|
||||
Response.Redirect("https://cas.china-tcc.com/cas/login?service=https://tccsg.cntcc.cn:17001/sggl/indexProject.aspx");
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
var pm = PageManager.Instance;
|
||||
if (pm != null)
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -695,23 +695,6 @@
|
|||
$(".bgbtn,.bgbtntop").removeClass("activeClick")
|
||||
});
|
||||
|
||||
$(".t-head-set").click(function () {
|
||||
var $item = $('.f-tabstrip-header')
|
||||
$item.attr('style', ";display:block !important;")
|
||||
});
|
||||
|
||||
$(".t-head-nav").click(function () {
|
||||
var $item = $('.f-tabstrip-header')
|
||||
$item.attr('style', ";display:block !important;")
|
||||
});
|
||||
|
||||
$(".t-head-log").click(function () {
|
||||
var $item = $('.f-tabstrip-header')
|
||||
$item.attr('style', ";display:none !important;")
|
||||
$(".bgbtn,.bgbtntop").removeClass("activeClick")
|
||||
});
|
||||
|
||||
|
||||
$(".bgbtn,.bgbtntop").click(function () {
|
||||
// 切换下tab样式
|
||||
var $this = $(this)
|
||||
|
|
|
|||
|
|
@ -404,7 +404,7 @@ namespace FineUIPro.Web
|
|||
{
|
||||
this.leftPanel.Hidden = true;
|
||||
this.XmlDataSource1.DataFile = "common/Menu_Personal.xml";
|
||||
this.Tab1.IFrameUrl = "~/common/mainNew.aspx";
|
||||
this.Tab1.IFrameUrl = "~/common/main3.aspx";
|
||||
}
|
||||
|
||||
UserService.UpdateLastUserInfo(this.CurrUser.UserId, type, true, string.Empty);
|
||||
|
|
@ -515,7 +515,7 @@ namespace FineUIPro.Web
|
|||
else
|
||||
{
|
||||
this.hdHomePage.Text = "1";
|
||||
this.Tab1.IFrameUrl = "~/common/mainNew.aspx";
|
||||
this.Tab1.IFrameUrl = "~/common/main3.aspx";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -263,9 +263,6 @@
|
|||
#index-project>.f-field-dropdownlist-pop::-webkit-scrollbar{
|
||||
display: none;
|
||||
}
|
||||
.project-select{
|
||||
font-size: .175rem;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body class="wrap" id="index-project">
|
||||
|
|
@ -308,6 +305,10 @@
|
|||
<div class="h-nav-bar" data-id="7"><f:Button runat="server" CssClass="bgbtn" Text="分包管理" CssStyle="color: #ffffff;" OnClick="butSubPackMage_Click" OnClientClick="parent.removeActiveTab();"
|
||||
EnablePostBack="true" EnableDefaultState="true" EnableDefaultCorner="false" ID="butSubPackMage">
|
||||
</f:Button></div>
|
||||
|
||||
<div class="h-nav-bar" data-id="8"><f:Button runat="server" CssClass="bgbtn" Text="五星管理" CssStyle="color: #ffffff;" OnClick="butFiveStars_Click" OnClientClick="parent.removeActiveTab();"
|
||||
EnablePostBack="true" EnableDefaultState="true" EnableDefaultCorner="false" ID="btnFiveStars">
|
||||
</f:Button></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="nav-bars flex-row flex-center">
|
||||
|
|
@ -409,7 +410,7 @@
|
|||
<Tabs>
|
||||
<%--.f-tabstrip-noheader>.f-panel-header--%>
|
||||
<f:Tab ID="Tab1" Title="首页" IconFont="Home" CssClass=".bgbtn"
|
||||
EnableIFrame="true" IFrameUrl="~/common/mainProjectNew.aspx" runat="server">
|
||||
EnableIFrame="true" IFrameUrl="~/common/mainProject.aspx" runat="server">
|
||||
</f:Tab>
|
||||
</Tabs>
|
||||
<Tools>
|
||||
|
|
@ -769,30 +770,11 @@
|
|||
$item.attr('style', ";display:block !important;")
|
||||
});
|
||||
|
||||
$(".bgbtn").click(function () {
|
||||
var $item = $('.f-tabstrip-header')
|
||||
$item.attr('style', ";display:block !important;")
|
||||
});
|
||||
|
||||
$(".bgbtn2").click(function () {
|
||||
var $item = $('.f-tabstrip-header')
|
||||
$item.attr('style', ";display:block !important;")
|
||||
});
|
||||
|
||||
$(".js-hiddenTab-item").click(function () {
|
||||
var $item = $('.f-tabstrip-header')
|
||||
$item.attr('style', ";display:none !important;")
|
||||
$(".bgbtn,.bgbtntop").removeClass("activeClick")
|
||||
});
|
||||
|
||||
$(".logo").click(function () {
|
||||
var $item = $('.f-tabstrip-header')
|
||||
$item.attr('style', ";display:none !important;")
|
||||
$(".bgbtn,.bgbtntop").removeClass("activeClick")
|
||||
});
|
||||
|
||||
|
||||
|
||||
$(".bgbtn,.bgbtntop").click(function () {
|
||||
// 切换下tab样式
|
||||
var $this = $(this)
|
||||
|
|
|
|||
|
|
@ -591,7 +591,7 @@ namespace FineUIPro.Web
|
|||
this.CurrUser.LoginProjectId = this.drpProject.SelectedValue;
|
||||
this.XmlDataSource1.DataFile = "common/Menu_Personal.xml";
|
||||
this.leftPanel.Hidden = true;
|
||||
this.Tab1.IFrameUrl = "~/common/mainProjectNew.aspx";
|
||||
this.Tab1.IFrameUrl = "~/common/mainProject.aspx";
|
||||
this.CurrUser.LastProjectId = null;
|
||||
if (!string.IsNullOrEmpty(type))
|
||||
{
|
||||
|
|
|
|||
|
|
@ -131,6 +131,15 @@ namespace FineUIPro.Web
|
|||
/// </remarks>
|
||||
protected global::FineUIPro.Button butSubPackMage;
|
||||
|
||||
/// <summary>
|
||||
/// btnFiveStars 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnFiveStars;
|
||||
|
||||
/// <summary>
|
||||
/// drpProject 控件。
|
||||
/// </summary>
|
||||
|
|
|
|||
|
|
@ -395,9 +395,5 @@ namespace Model
|
|||
get;
|
||||
set;
|
||||
}
|
||||
/// <summary>
|
||||
/// 部门ID
|
||||
/// </summary>
|
||||
public string DepartId { get; set; }
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -179,24 +179,6 @@ namespace Model
|
|||
get;
|
||||
set;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 考试部门ID
|
||||
/// </summary>
|
||||
public string DepartIds
|
||||
{
|
||||
get;
|
||||
set;
|
||||
}
|
||||
/// <summary>
|
||||
/// 考试部门名称
|
||||
/// </summary>
|
||||
public string DepartNames
|
||||
{
|
||||
get;
|
||||
set;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 考试二维码
|
||||
/// </summary>
|
||||
|
|
@ -245,18 +227,5 @@ namespace Model
|
|||
get;
|
||||
set;
|
||||
}
|
||||
/// <summary>
|
||||
/// 培训类型ID
|
||||
/// </summary>
|
||||
public string TrainTypeId
|
||||
{
|
||||
get;
|
||||
set;
|
||||
}
|
||||
public string TrainTypeName
|
||||
{
|
||||
get;
|
||||
set;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -248,19 +248,7 @@ namespace Model
|
|||
set;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 签名
|
||||
/// </summary>
|
||||
public string Signature
|
||||
{
|
||||
get;
|
||||
set;
|
||||
}
|
||||
public string Fingerprint
|
||||
{
|
||||
get;
|
||||
set;
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -210,22 +210,5 @@ namespace Model
|
|||
get;
|
||||
set;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 培训部门ID
|
||||
/// </summary>
|
||||
public string DepartIds
|
||||
{
|
||||
get;
|
||||
set;
|
||||
}
|
||||
/// <summary>
|
||||
/// 培训部门
|
||||
/// </summary>
|
||||
public string DepartNames
|
||||
{
|
||||
get;
|
||||
set;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -48,14 +48,6 @@ namespace Model
|
|||
set;
|
||||
}
|
||||
/// <summary>
|
||||
/// 培训任务状态
|
||||
/// </summary>
|
||||
public string TaskStatesName
|
||||
{
|
||||
get;
|
||||
set;
|
||||
}
|
||||
/// <summary>
|
||||
/// 培训计划时间
|
||||
/// </summary>
|
||||
public string TrainStartDate
|
||||
|
|
@ -119,10 +111,5 @@ namespace Model
|
|||
get;
|
||||
set;
|
||||
}
|
||||
public string TrainingItemCode
|
||||
{
|
||||
get;
|
||||
set;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -109,21 +109,6 @@ namespace Model
|
|||
get;
|
||||
set;
|
||||
}
|
||||
/// <summary>
|
||||
/// 学习时长(秒)
|
||||
/// </summary>
|
||||
public int? LearningTime
|
||||
{
|
||||
get;
|
||||
set;
|
||||
}
|
||||
/// <summary>
|
||||
/// 教材时长(秒)
|
||||
/// </summary>
|
||||
public int? AttachTime
|
||||
{
|
||||
get;
|
||||
set;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -22,7 +22,7 @@ namespace Model
|
|||
using System;
|
||||
|
||||
|
||||
public partial class SGGLDB : System.Data.Linq.DataContext
|
||||
public partial class SGGLDB : System.Data.Linq.DataContext
|
||||
{
|
||||
|
||||
private static System.Data.Linq.Mapping.MappingSource mappingSource = new AttributeMappingSource();
|
||||
|
|
@ -394714,10 +394714,6 @@ namespace Model
|
|||
|
||||
private string _WorkPostIds;
|
||||
|
||||
private System.Nullable<int> _LearningTime;
|
||||
|
||||
private string _TestTrainingIds;
|
||||
|
||||
private EntitySet<Person_TrainingTask> _Person_TrainingTask;
|
||||
|
||||
private EntityRef<Training_CompanyTraining> _Training_CompanyTraining;
|
||||
|
|
@ -394742,10 +394738,6 @@ namespace Model
|
|||
partial void OnCompileDateChanged();
|
||||
partial void OnWorkPostIdsChanging(string value);
|
||||
partial void OnWorkPostIdsChanged();
|
||||
partial void OnLearningTimeChanging(System.Nullable<int> value);
|
||||
partial void OnLearningTimeChanged();
|
||||
partial void OnTestTrainingIdsChanging(string value);
|
||||
partial void OnTestTrainingIdsChanged();
|
||||
#endregion
|
||||
|
||||
public Training_CompanyTrainingItem()
|
||||
|
|
@ -394919,46 +394911,6 @@ namespace Model
|
|||
}
|
||||
}
|
||||
|
||||
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_LearningTime", DbType="Int")]
|
||||
public System.Nullable<int> LearningTime
|
||||
{
|
||||
get
|
||||
{
|
||||
return this._LearningTime;
|
||||
}
|
||||
set
|
||||
{
|
||||
if ((this._LearningTime != value))
|
||||
{
|
||||
this.OnLearningTimeChanging(value);
|
||||
this.SendPropertyChanging();
|
||||
this._LearningTime = value;
|
||||
this.SendPropertyChanged("LearningTime");
|
||||
this.OnLearningTimeChanged();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_TestTrainingIds", DbType="NVarChar(MAX)", UpdateCheck=UpdateCheck.Never)]
|
||||
public string TestTrainingIds
|
||||
{
|
||||
get
|
||||
{
|
||||
return this._TestTrainingIds;
|
||||
}
|
||||
set
|
||||
{
|
||||
if ((this._TestTrainingIds != value))
|
||||
{
|
||||
this.OnTestTrainingIdsChanging(value);
|
||||
this.SendPropertyChanging();
|
||||
this._TestTrainingIds = value;
|
||||
this.SendPropertyChanged("TestTrainingIds");
|
||||
this.OnTestTrainingIdsChanged();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Data.Linq.Mapping.AssociationAttribute(Name="FK_Person_TrainingTask_Training_CompanyTrainingItem", Storage="_Person_TrainingTask", ThisKey="CompanyTrainingItemId", OtherKey="CompanyTrainingItemId", DeleteRule="NO ACTION")]
|
||||
public EntitySet<Person_TrainingTask> Person_TrainingTask
|
||||
{
|
||||
|
|
@ -395727,10 +395679,6 @@ namespace Model
|
|||
|
||||
private string _Cycle;
|
||||
|
||||
private string _DepartIds;
|
||||
|
||||
private string _DepartNames;
|
||||
|
||||
private EntitySet<EduTrain_TrainRecord> _EduTrain_TrainRecord;
|
||||
|
||||
private EntityRef<Base_Project> _Base_Project;
|
||||
|
|
@ -395793,10 +395741,6 @@ namespace Model
|
|||
partial void OnQRCodeUrlChanged();
|
||||
partial void OnCycleChanging(string value);
|
||||
partial void OnCycleChanged();
|
||||
partial void OnDepartIdsChanging(string value);
|
||||
partial void OnDepartIdsChanged();
|
||||
partial void OnDepartNamesChanging(string value);
|
||||
partial void OnDepartNamesChanged();
|
||||
#endregion
|
||||
|
||||
public Training_Plan()
|
||||
|
|
@ -396229,46 +396173,6 @@ namespace Model
|
|||
}
|
||||
}
|
||||
|
||||
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DepartIds", DbType="NVarChar(2000)")]
|
||||
public string DepartIds
|
||||
{
|
||||
get
|
||||
{
|
||||
return this._DepartIds;
|
||||
}
|
||||
set
|
||||
{
|
||||
if ((this._DepartIds != value))
|
||||
{
|
||||
this.OnDepartIdsChanging(value);
|
||||
this.SendPropertyChanging();
|
||||
this._DepartIds = value;
|
||||
this.SendPropertyChanged("DepartIds");
|
||||
this.OnDepartIdsChanged();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DepartNames", DbType="NVarChar(2000)")]
|
||||
public string DepartNames
|
||||
{
|
||||
get
|
||||
{
|
||||
return this._DepartNames;
|
||||
}
|
||||
set
|
||||
{
|
||||
if ((this._DepartNames != value))
|
||||
{
|
||||
this.OnDepartNamesChanging(value);
|
||||
this.SendPropertyChanging();
|
||||
this._DepartNames = value;
|
||||
this.SendPropertyChanged("DepartNames");
|
||||
this.OnDepartNamesChanged();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Data.Linq.Mapping.AssociationAttribute(Name="FK_EduTrain_TrainRecord_Training_Plan", Storage="_EduTrain_TrainRecord", ThisKey="PlanId", OtherKey="PlanId", DeleteRule="NO ACTION")]
|
||||
public EntitySet<EduTrain_TrainRecord> EduTrain_TrainRecord
|
||||
{
|
||||
|
|
@ -397258,8 +397162,6 @@ namespace Model
|
|||
|
||||
private System.Nullable<int> _VideoProgress;
|
||||
|
||||
private string _CompanyTrainingItemId;
|
||||
|
||||
private EntityRef<SitePerson_Person> _SitePerson_Person;
|
||||
|
||||
private EntityRef<Training_Plan> _Training_Plan;
|
||||
|
|
@ -397292,8 +397194,6 @@ namespace Model
|
|||
partial void OnLearnTimeChanged();
|
||||
partial void OnVideoProgressChanging(System.Nullable<int> value);
|
||||
partial void OnVideoProgressChanged();
|
||||
partial void OnCompanyTrainingItemIdChanging(string value);
|
||||
partial void OnCompanyTrainingItemIdChanged();
|
||||
#endregion
|
||||
|
||||
public Training_TaskItem()
|
||||
|
|
@ -397536,26 +397436,6 @@ namespace Model
|
|||
}
|
||||
}
|
||||
|
||||
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CompanyTrainingItemId", DbType="NVarChar(100)")]
|
||||
public string CompanyTrainingItemId
|
||||
{
|
||||
get
|
||||
{
|
||||
return this._CompanyTrainingItemId;
|
||||
}
|
||||
set
|
||||
{
|
||||
if ((this._CompanyTrainingItemId != value))
|
||||
{
|
||||
this.OnCompanyTrainingItemIdChanging(value);
|
||||
this.SendPropertyChanging();
|
||||
this._CompanyTrainingItemId = value;
|
||||
this.SendPropertyChanged("CompanyTrainingItemId");
|
||||
this.OnCompanyTrainingItemIdChanged();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Data.Linq.Mapping.AssociationAttribute(Name="FK_Training_TaskItem_SitePerson_Person", Storage="_SitePerson_Person", ThisKey="PersonId", OtherKey="PersonId", IsForeignKey=true)]
|
||||
public SitePerson_Person SitePerson_Person
|
||||
{
|
||||
|
|
@ -397733,8 +397613,6 @@ namespace Model
|
|||
|
||||
private int _JValue;
|
||||
|
||||
private string _TrainTypeId;
|
||||
|
||||
private EntityRef<Base_Project> _Base_Project;
|
||||
|
||||
private EntityRef<Sys_User> _Sys_User;
|
||||
|
|
@ -397797,8 +397675,6 @@ namespace Model
|
|||
partial void OnMValueChanged();
|
||||
partial void OnJValueChanging(int value);
|
||||
partial void OnJValueChanged();
|
||||
partial void OnTrainTypeIdChanging(string value);
|
||||
partial void OnTrainTypeIdChanged();
|
||||
#endregion
|
||||
|
||||
public Training_TestPlan()
|
||||
|
|
@ -398303,26 +398179,6 @@ namespace Model
|
|||
}
|
||||
}
|
||||
|
||||
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_TrainTypeId", DbType="NVarChar(50)")]
|
||||
public string TrainTypeId
|
||||
{
|
||||
get
|
||||
{
|
||||
return this._TrainTypeId;
|
||||
}
|
||||
set
|
||||
{
|
||||
if ((this._TrainTypeId != value))
|
||||
{
|
||||
this.OnTrainTypeIdChanging(value);
|
||||
this.SendPropertyChanging();
|
||||
this._TrainTypeId = value;
|
||||
this.SendPropertyChanged("TrainTypeId");
|
||||
this.OnTrainTypeIdChanged();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Data.Linq.Mapping.AssociationAttribute(Name="FK_Training_TestPlan_Base_Project", Storage="_Base_Project", ThisKey="ProjectId", OtherKey="ProjectId", IsForeignKey=true)]
|
||||
public Base_Project Base_Project
|
||||
{
|
||||
|
|
@ -398788,12 +398644,6 @@ namespace Model
|
|||
|
||||
private int _Duration;
|
||||
|
||||
private string _Signature;
|
||||
|
||||
private string _Fingerprint;
|
||||
|
||||
private string _CompanyTrainingItemId;
|
||||
|
||||
private EntityRef<Base_Project> _Base_Project;
|
||||
|
||||
private EntityRef<SitePerson_Person> _SitePerson_Person;
|
||||
|
|
@ -398828,12 +398678,6 @@ namespace Model
|
|||
partial void OnIsFiledChanged();
|
||||
partial void OnDurationChanging(int value);
|
||||
partial void OnDurationChanged();
|
||||
partial void OnSignatureChanging(string value);
|
||||
partial void OnSignatureChanged();
|
||||
partial void OnFingerprintChanging(string value);
|
||||
partial void OnFingerprintChanged();
|
||||
partial void OnCompanyTrainingItemIdChanging(string value);
|
||||
partial void OnCompanyTrainingItemIdChanged();
|
||||
#endregion
|
||||
|
||||
public Training_TestRecord()
|
||||
|
|
@ -399077,66 +398921,6 @@ namespace Model
|
|||
}
|
||||
}
|
||||
|
||||
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Signature", DbType="NVarChar(1000)")]
|
||||
public string Signature
|
||||
{
|
||||
get
|
||||
{
|
||||
return this._Signature;
|
||||
}
|
||||
set
|
||||
{
|
||||
if ((this._Signature != value))
|
||||
{
|
||||
this.OnSignatureChanging(value);
|
||||
this.SendPropertyChanging();
|
||||
this._Signature = value;
|
||||
this.SendPropertyChanged("Signature");
|
||||
this.OnSignatureChanged();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Fingerprint", DbType="NVarChar(1000)")]
|
||||
public string Fingerprint
|
||||
{
|
||||
get
|
||||
{
|
||||
return this._Fingerprint;
|
||||
}
|
||||
set
|
||||
{
|
||||
if ((this._Fingerprint != value))
|
||||
{
|
||||
this.OnFingerprintChanging(value);
|
||||
this.SendPropertyChanging();
|
||||
this._Fingerprint = value;
|
||||
this.SendPropertyChanged("Fingerprint");
|
||||
this.OnFingerprintChanged();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CompanyTrainingItemId", DbType="NVarChar(50)")]
|
||||
public string CompanyTrainingItemId
|
||||
{
|
||||
get
|
||||
{
|
||||
return this._CompanyTrainingItemId;
|
||||
}
|
||||
set
|
||||
{
|
||||
if ((this._CompanyTrainingItemId != value))
|
||||
{
|
||||
this.OnCompanyTrainingItemIdChanging(value);
|
||||
this.SendPropertyChanging();
|
||||
this._CompanyTrainingItemId = value;
|
||||
this.SendPropertyChanged("CompanyTrainingItemId");
|
||||
this.OnCompanyTrainingItemIdChanged();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Data.Linq.Mapping.AssociationAttribute(Name="FK_Training_TestRecord_Base_Project", Storage="_Base_Project", ThisKey="ProjectId", OtherKey="ProjectId", IsForeignKey=true)]
|
||||
public Base_Project Base_Project
|
||||
{
|
||||
|
|
@ -400185,10 +399969,6 @@ namespace Model
|
|||
|
||||
private string _EItemEng;
|
||||
|
||||
private string _DepartNames;
|
||||
|
||||
private string _DepartIds;
|
||||
|
||||
private EntityRef<Training_TestTraining> _Training_TestTraining;
|
||||
|
||||
private EntityRef<Training_TestTraining> _Training;
|
||||
|
|
@ -400241,10 +400021,6 @@ namespace Model
|
|||
partial void OnDItemEngChanged();
|
||||
partial void OnEItemEngChanging(string value);
|
||||
partial void OnEItemEngChanged();
|
||||
partial void OnDepartNamesChanging(string value);
|
||||
partial void OnDepartNamesChanged();
|
||||
partial void OnDepartIdsChanging(string value);
|
||||
partial void OnDepartIdsChanged();
|
||||
#endregion
|
||||
|
||||
public Training_TestTrainingItem()
|
||||
|
|
@ -400698,46 +400474,6 @@ namespace Model
|
|||
}
|
||||
}
|
||||
|
||||
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DepartNames", DbType="NVarChar(MAX)", UpdateCheck=UpdateCheck.Never)]
|
||||
public string DepartNames
|
||||
{
|
||||
get
|
||||
{
|
||||
return this._DepartNames;
|
||||
}
|
||||
set
|
||||
{
|
||||
if ((this._DepartNames != value))
|
||||
{
|
||||
this.OnDepartNamesChanging(value);
|
||||
this.SendPropertyChanging();
|
||||
this._DepartNames = value;
|
||||
this.SendPropertyChanged("DepartNames");
|
||||
this.OnDepartNamesChanged();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DepartIds", DbType="NVarChar(4000)")]
|
||||
public string DepartIds
|
||||
{
|
||||
get
|
||||
{
|
||||
return this._DepartIds;
|
||||
}
|
||||
set
|
||||
{
|
||||
if ((this._DepartIds != value))
|
||||
{
|
||||
this.OnDepartIdsChanging(value);
|
||||
this.SendPropertyChanging();
|
||||
this._DepartIds = value;
|
||||
this.SendPropertyChanged("DepartIds");
|
||||
this.OnDepartIdsChanged();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Data.Linq.Mapping.AssociationAttribute(Name="FK_Training_TestTrainingItem_Training_TestTraining", Storage="_Training_TestTraining", ThisKey="TrainingId", OtherKey="TrainingId", IsForeignKey=true)]
|
||||
public Training_TestTraining Training_TestTraining
|
||||
{
|
||||
|
|
@ -401151,8 +400887,6 @@ namespace Model
|
|||
|
||||
private string _UpState;
|
||||
|
||||
private System.Nullable<int> _LearningTime;
|
||||
|
||||
private EntitySet<Training_PlanItem> _Training_PlanItem;
|
||||
|
||||
private EntityRef<Sys_User> _Sys_User;
|
||||
|
|
@ -401195,8 +400929,6 @@ namespace Model
|
|||
partial void OnUnitIdChanged();
|
||||
partial void OnUpStateChanging(string value);
|
||||
partial void OnUpStateChanged();
|
||||
partial void OnLearningTimeChanging(System.Nullable<int> value);
|
||||
partial void OnLearningTimeChanged();
|
||||
#endregion
|
||||
|
||||
public Training_TrainingItem()
|
||||
|
|
@ -401535,26 +401267,6 @@ namespace Model
|
|||
}
|
||||
}
|
||||
|
||||
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_LearningTime", DbType="Int")]
|
||||
public System.Nullable<int> LearningTime
|
||||
{
|
||||
get
|
||||
{
|
||||
return this._LearningTime;
|
||||
}
|
||||
set
|
||||
{
|
||||
if ((this._LearningTime != value))
|
||||
{
|
||||
this.OnLearningTimeChanging(value);
|
||||
this.SendPropertyChanging();
|
||||
this._LearningTime = value;
|
||||
this.SendPropertyChanged("LearningTime");
|
||||
this.OnLearningTimeChanged();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Data.Linq.Mapping.AssociationAttribute(Name="FK_Training_PlanItem_Training_TrainingItem", Storage="_Training_PlanItem", ThisKey="TrainingItemId", OtherKey="TrainingEduItemId", DeleteRule="NO ACTION")]
|
||||
public EntitySet<Training_PlanItem> Training_PlanItem
|
||||
{
|
||||
|
|
@ -456993,10 +456705,6 @@ namespace Model
|
|||
|
||||
private string _AnswerItems;
|
||||
|
||||
private string _DepartIds;
|
||||
|
||||
private string _DepartNames;
|
||||
|
||||
public View_Training_TestTrainingItem()
|
||||
{
|
||||
}
|
||||
|
|
@ -457384,38 +457092,6 @@ namespace Model
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DepartIds", DbType="NVarChar(4000)")]
|
||||
public string DepartIds
|
||||
{
|
||||
get
|
||||
{
|
||||
return this._DepartIds;
|
||||
}
|
||||
set
|
||||
{
|
||||
if ((this._DepartIds != value))
|
||||
{
|
||||
this._DepartIds = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DepartNames", DbType="NVarChar(MAX)", UpdateCheck=UpdateCheck.Never)]
|
||||
public string DepartNames
|
||||
{
|
||||
get
|
||||
{
|
||||
return this._DepartNames;
|
||||
}
|
||||
set
|
||||
{
|
||||
if ((this._DepartNames != value))
|
||||
{
|
||||
this._DepartNames = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.View_Training_TrainingItem")]
|
||||
|
|
|
|||
|
|
@ -73,14 +73,10 @@
|
|||
<Compile Include="APIItem\CNCEC\UpCheckReportItem.cs" />
|
||||
<Compile Include="APIItem\CNCEC\UpCheckReportItemItem.cs" />
|
||||
<Compile Include="APIItem\CNCEC\UpCheckReportItemItem2.cs" />
|
||||
<Compile Include="APIItem\CQMSItem.cs" />
|
||||
<Compile Include="APIItem\DefectItem.cs" />
|
||||
<Compile Include="APIItem\EnergyReport.cs" />
|
||||
<Compile Include="APIItem\EnergyReportItem.cs" />
|
||||
<Compile Include="APIItem\Environmental_OperationReportDto.cs" />
|
||||
<Compile Include="APIItem\EPSummaryReport.cs" />
|
||||
<Compile Include="APIItem\HiddenDangerItem.cs" />
|
||||
<Compile Include="APIItem\HJGLItem.cs" />
|
||||
<Compile Include="APIItem\HJGL\BSSteelItem.cs" />
|
||||
<Compile Include="APIItem\HJGL\ConsumablesItem.cs" />
|
||||
<Compile Include="APIItem\HJGL\ElectrodeRecoveryItem.cs" />
|
||||
|
|
@ -90,7 +86,6 @@
|
|||
<Compile Include="APIItem\HJGL\WelderItem.cs" />
|
||||
<Compile Include="APIItem\HJGL\WelderPerformanceItem.cs" />
|
||||
<Compile Include="APIItem\HJGL\WeldingMethodItem.cs" />
|
||||
<Compile Include="APIItem\HSSEItem.cs" />
|
||||
<Compile Include="APIItem\HSSE\ChartAnalysisItem.cs" />
|
||||
<Compile Include="APIItem\HSSE\CheckSpecialDetailItem.cs" />
|
||||
<Compile Include="APIItem\HSSE\CheckSpecialItem.cs" />
|
||||
|
|
@ -177,7 +172,6 @@
|
|||
<Compile Include="APIItem\SHHSE\NewSYHSEDataItem.cs" />
|
||||
<Compile Include="APIItem\SHHSE\NewSYHSEDataRealTimeDeviceItem.cs" />
|
||||
<Compile Include="APIItem\SHHSE\NewSYHSEDataRiskControlItem.cs" />
|
||||
<Compile Include="APIItem\SYHSEItem.cs" />
|
||||
<Compile Include="APIItem\SYHSE\DataEnvironmentProtectionItem.cs" />
|
||||
<Compile Include="APIItem\SYHSE\DataProjectItem.cs" />
|
||||
<Compile Include="APIItem\SYHSE\DataRiskItem.cs" />
|
||||
|
|
|
|||
|
|
@ -1,7 +1,5 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Data;
|
||||
using System.Data.SqlClient;
|
||||
using System.Linq;
|
||||
using System.Net;
|
||||
using System.Net.Http;
|
||||
|
|
@ -186,95 +184,5 @@ namespace WebAPI.Controllers
|
|||
return responeData;
|
||||
}
|
||||
#endregion
|
||||
|
||||
public Model.ResponeData GetReportQueryByProjectId(string projectId, string unitId)
|
||||
{
|
||||
var responeData = new Model.ResponeData();
|
||||
try
|
||||
{
|
||||
List<Dictionary<string, string>> res = new List<Dictionary<string, string>>();
|
||||
Dictionary<string, Dictionary<string, string>> tempDic = new Dictionary<string, Dictionary<string, string>>();
|
||||
|
||||
string sql31 = @"SELECT WorkArea.WorkAreaId, WorkArea.WorkAreaName, SUM(JOT_Size) total_jot, SUM(JOT_DoneDin) finished_total_jot
|
||||
FROM pw_jointinfo
|
||||
LEFT JOIN pw_isoinfo ON pw_jointinfo.ISO_ID = pw_isoinfo.ISO_ID
|
||||
LEFT JOIN ProjectData_WorkArea WorkArea ON WorkArea.WorkAreaId = pw_isoinfo.WorkAreaId
|
||||
WHERE pw_jointinfo.ProjectId = @projectId";
|
||||
if (!string.IsNullOrEmpty(unitId) || unitId != CommonService.GetThisUnitId())
|
||||
{
|
||||
sql31 += " AND pw_isoinfo.UnitId = @unitId";
|
||||
}
|
||||
sql31 += " GROUP BY WorkArea.WorkAreaId, WorkArea.WorkAreaName";
|
||||
|
||||
SqlCommand command = new SqlCommand(sql31);
|
||||
command.Parameters.AddWithValue("@projectId", projectId);
|
||||
if (!string.IsNullOrEmpty(unitId))
|
||||
{
|
||||
command.Parameters.AddWithValue("@unitId", unitId);
|
||||
}
|
||||
|
||||
DataTable tb31 = SQLHelper.GetDataTableRunCommand(command);
|
||||
if (tb31 != null)
|
||||
{
|
||||
foreach (DataRow row in tb31.Rows)
|
||||
{
|
||||
Dictionary<string, string> dic = new Dictionary<string, string>();
|
||||
dic.Add("WorkAreaName", row["WorkAreaName"].ToString());
|
||||
dic.Add("finishRate", (100.0 * Funs.GetNewDoubleOrZero(row["finished_total_jot"].ToString()) / Funs.GetNewDoubleOrZero(row["total_jot"].ToString())).ToString("#0.00"));
|
||||
tempDic.Add(row["WorkAreaName"].ToString(), dic);
|
||||
res.Add(dic);
|
||||
}
|
||||
}
|
||||
|
||||
string sql41 = @"SELECT WorkArea.WorkAreaId, WorkArea.WorkAreaName, SUM(cht_totalfilm) total_film, SUM(cht_passfilm) pass_film
|
||||
FROM CH_CheckItem ch_checkitem
|
||||
LEFT JOIN PW_JointInfo JointInfo ON JointInfo.JOT_ID = ch_checkitem.JOT_ID
|
||||
LEFT JOIN PW_IsoInfo IsoInfo ON IsoInfo.ISO_ID = JointInfo.ISO_ID
|
||||
LEFT JOIN ProjectData_WorkArea WorkArea ON WorkArea.WorkAreaId = IsoInfo.WorkAreaId
|
||||
WHERE JointInfo.ProjectId = @projectId";
|
||||
if (!string.IsNullOrEmpty(unitId) || unitId != CommonService.GetThisUnitId())
|
||||
{
|
||||
sql41 += " AND IsoInfo.UnitId = @unitId";
|
||||
}
|
||||
sql41 += " GROUP BY WorkArea.WorkAreaId, WorkArea.WorkAreaName";
|
||||
|
||||
SqlCommand command2 = new SqlCommand(sql41);
|
||||
command2.Parameters.AddWithValue("@projectId", projectId);
|
||||
if (!string.IsNullOrEmpty(unitId))
|
||||
{
|
||||
command2.Parameters.AddWithValue("@unitId", unitId);
|
||||
}
|
||||
|
||||
DataTable tb41 = SQLHelper.GetDataTableRunCommand(command2);
|
||||
if (tb41 != null)
|
||||
{
|
||||
foreach (DataRow row in tb41.Rows)
|
||||
{
|
||||
Dictionary<string, string> dic;
|
||||
if (tempDic.TryGetValue(row["WorkAreaName"].ToString(), out dic))
|
||||
{
|
||||
dic.Add("passRate", (100.0 * Funs.GetNewDoubleOrZero(row["pass_film"].ToString()) / Funs.GetNewDoubleOrZero(row["total_film"].ToString())).ToString("#0.00"));
|
||||
}
|
||||
else
|
||||
{
|
||||
dic = new Dictionary<string, string>();
|
||||
dic.Add("WorkAreaName", row["WorkAreaName"].ToString());
|
||||
dic.Add("finishRate", "0");
|
||||
dic.Add("passRate", (100.0 * Funs.GetNewDoubleOrZero(row["pass_film"].ToString()) / Funs.GetNewDoubleOrZero(row["total_film"].ToString())).ToString("#0.00"));
|
||||
res.Add(dic);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
responeData.data = res;
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
responeData.code = 0;
|
||||
responeData.message = ex.Message;
|
||||
}
|
||||
|
||||
return responeData;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -35,84 +35,5 @@ namespace WebAPI.Controllers
|
|||
return responeData;
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region 根据项目ID 获取整改单数据
|
||||
/// <summary>
|
||||
/// 根据项目ID 获取整改单数据
|
||||
/// </summary>
|
||||
/// <param name="projectId">项目ID</param>
|
||||
/// <returns></returns>
|
||||
public Model.ResponeData getHSSERectifyNoticesChartAnalysis(string projectId)
|
||||
{
|
||||
var responeData = new Model.ResponeData();
|
||||
try
|
||||
{
|
||||
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
|
||||
{
|
||||
int allCount = 0, uCount = 0, cCount = 0;
|
||||
double rate = 1;
|
||||
var getRectifyNotices = from x in db.Check_RectifyNotices
|
||||
where x.States != Const.State_0 && x.States != null && x.ProjectId == projectId
|
||||
select x;
|
||||
if (!string.IsNullOrEmpty(projectId) && projectId != "")
|
||||
{
|
||||
getRectifyNotices = getRectifyNotices.Where(x => x.ProjectId == projectId);
|
||||
}
|
||||
//// 整改总数
|
||||
allCount = getRectifyNotices.Count();
|
||||
if (allCount > 0)
|
||||
{
|
||||
//// 已闭环
|
||||
cCount = getRectifyNotices.Where(x => x.States == "5").Count();
|
||||
uCount = allCount - cCount;
|
||||
rate = Math.Round(uCount * 1.0 / allCount * 100, 1);
|
||||
}
|
||||
|
||||
responeData.data = new { allCount, uCount, rate };
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
responeData.code = 0;
|
||||
responeData.message = ex.Message;
|
||||
}
|
||||
|
||||
return responeData;
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region 根据项目ID 获取资质预警数据
|
||||
/// <summary>
|
||||
/// 根据项目ID 获取整改单数据
|
||||
/// </summary>
|
||||
/// <param name="projectId">项目ID</param>
|
||||
/// <returns></returns>
|
||||
public Model.ResponeData getHSSEPersonQualityChartAnalysis(string projectId)
|
||||
{
|
||||
var responeData = new Model.ResponeData();
|
||||
try
|
||||
{
|
||||
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
|
||||
{
|
||||
int allCount = 0;
|
||||
var getPersonQualitys = from x in db.QualityAudit_PersonQuality
|
||||
join y in db.SitePerson_Person on x.PersonId equals y.PersonId
|
||||
where (projectId == null || projectId == "" || y.ProjectId == projectId)
|
||||
&& x.LimitDate.HasValue && x.LimitDate < DateTime.Now
|
||||
select x;
|
||||
//// 预警人数
|
||||
allCount = getPersonQualitys.Count();
|
||||
responeData.data = new { allCount };
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
responeData.code = 0;
|
||||
responeData.message = ex.Message;
|
||||
}
|
||||
|
||||
return responeData;
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -74,46 +74,29 @@ namespace WebAPI.Controllers
|
|||
/// <param name="trainingPlanId">培训计划ID</param>
|
||||
/// <param name="userId">用户ID</param>
|
||||
/// <returns></returns>
|
||||
public Model.ResponeData getSaveTestPlanByTrainingPlanId(string trainingPlanId, string userId)
|
||||
public Model.ResponeData getSaveTestPlanByTrainingPlanId(string trainingPlanId,string userId)
|
||||
{
|
||||
var responeData = new Model.ResponeData();
|
||||
try
|
||||
{
|
||||
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
|
||||
var getTasks = new Model.SGGLDB(Funs.ConnString).Training_Task.FirstOrDefault(x => x.PlanId == trainingPlanId);
|
||||
if (getTasks != null)
|
||||
{
|
||||
var getTasks = db.Training_Task.FirstOrDefault(x => x.PlanId == trainingPlanId);
|
||||
if (getTasks != null)
|
||||
if (CommonService.IsMainUnitOrAdmin(userId))
|
||||
{
|
||||
bool result = false;
|
||||
if (userId == Const.sysglyId || userId == Const.hfnbdId)
|
||||
{
|
||||
result = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
var user = db.Sys_User.FirstOrDefault(e => e.UserId == userId);
|
||||
if (user != null && user.UnitId == CommonService.GetThisUnitId())
|
||||
{
|
||||
result = true;
|
||||
}
|
||||
}
|
||||
if (result)
|
||||
//if (CommonService.IsMainUnitOrAdmin(userId))
|
||||
{
|
||||
responeData.data = APITestPlanService.SaveTestPlanByTrainingPlanId(trainingPlanId, userId);
|
||||
}
|
||||
else
|
||||
{
|
||||
responeData.code = 0;
|
||||
responeData.message = "非本单位用户,不能生成考试计划!";
|
||||
}
|
||||
responeData.data = APITestPlanService.SaveTestPlanByTrainingPlanId(trainingPlanId, userId);
|
||||
}
|
||||
else
|
||||
{
|
||||
responeData.code = 0;
|
||||
responeData.message = "培训计划下没有培训人员,不能生成考试计划!";
|
||||
responeData.message = "非本单位用户,不能生成考试计划!";
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
responeData.code = 0;
|
||||
responeData.message = "培训计划下没有培训人员,不能生成考试计划!";
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
|
|
@ -209,89 +192,45 @@ namespace WebAPI.Controllers
|
|||
var responeData = new Model.ResponeData();
|
||||
try
|
||||
{
|
||||
using (var db = new Model.SGGLDB(Funs.ConnString))
|
||||
var getTestPlan = new Model.SGGLDB(Funs.ConnString).Training_TestPlan.FirstOrDefault(e => e.TestPlanId == testPlanId && e.States != "3" && e.TestStartTime <= DateTime.Now && e.TestEndTime >= DateTime.Now);
|
||||
if (getTestPlan != null)
|
||||
{
|
||||
var getTestPlan = db.Training_TestPlan.FirstOrDefault(e => e.TestPlanId == testPlanId && e.States != "3" && e.TestStartTime <= DateTime.Now && e.TestEndTime >= DateTime.Now);
|
||||
if (getTestPlan != null)
|
||||
var person = PersonService.GetPersonByUserId(personId, getTestPlan.ProjectId);
|
||||
if (person != null )
|
||||
{
|
||||
var user = db.Sys_User.FirstOrDefault(x => x.UserId == personId);
|
||||
Model.SitePerson_Person person;
|
||||
if (user != null)
|
||||
//2-考试中;生成考试试卷
|
||||
if (getTestPlan.States == "2" )
|
||||
{
|
||||
person = db.SitePerson_Person.FirstOrDefault(e => (e.PersonId == personId || e.IdentityCard == user.IdentityCard) && e.ProjectId == getTestPlan.ProjectId);// PersonService.GetPersonByUserId(personId, getTestPlan.ProjectId);
|
||||
var testRecord = new Model.SGGLDB(Funs.ConnString).Training_TestRecord.FirstOrDefault(x => x.TestPlanId == getTestPlan.TestPlanId && x.TestManId == person.PersonId && !x.TestEndTime.HasValue);
|
||||
if (testRecord != null)
|
||||
{
|
||||
string testRecordId = APITestRecordService.CreateTestRecordItem(getTestPlan, testRecord.TestRecordId, person);
|
||||
responeData.code = 2;
|
||||
responeData.data = new { testRecordId };
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
person = db.SitePerson_Person.FirstOrDefault(e => e.PersonId == personId && e.ProjectId == getTestPlan.ProjectId);// PersonService.GetPersonByUserId(personId, getTestPlan.ProjectId);
|
||||
|
||||
}
|
||||
if (person != null || user != null)
|
||||
{
|
||||
//2-考试中;生成考试试卷
|
||||
if (getTestPlan.States == "2")
|
||||
if (string.IsNullOrEmpty(getTestPlan.PlanId) && getTestPlan.UnitIds.Contains(person.UnitId) && (getTestPlan.WorkPostIds == null || getTestPlan.WorkPostIds.Contains(person.WorkPostId)))
|
||||
{
|
||||
var testRecord = db.Training_TestRecord.FirstOrDefault(x => x.TestPlanId == getTestPlan.TestPlanId && x.TestManId == personId && !x.TestEndTime.HasValue);
|
||||
if (testRecord != null)
|
||||
//0-待提交;1-已发布未考试 将人员添加进考试记录
|
||||
var testTRecord = new Model.SGGLDB(Funs.ConnString).Training_TestRecord.FirstOrDefault(x => x.TestPlanId == testPlanId && x.TestManId == personId);
|
||||
if ((getTestPlan.States == "0" || getTestPlan.States == "1") && testTRecord == null && !string.IsNullOrEmpty(personId))
|
||||
{
|
||||
string testRecordId = APITestRecordService.CreateTestRecordItem(getTestPlan, testRecord.TestRecordId, person, user);
|
||||
responeData.code = 2;
|
||||
responeData.data = new { testRecordId };
|
||||
}
|
||||
else if (person != null)
|
||||
{
|
||||
var testRecord2 = db.Training_TestRecord.FirstOrDefault(x => x.TestPlanId == getTestPlan.TestPlanId && x.TestManId == person.PersonId && !x.TestEndTime.HasValue);
|
||||
if (testRecord2 != null)
|
||||
Model.Training_TestRecord newTestRecord = new Model.Training_TestRecord
|
||||
{
|
||||
string testRecordId = APITestRecordService.CreateTestRecordItem(getTestPlan, testRecord2.TestRecordId, person, user);
|
||||
responeData.code = 2;
|
||||
responeData.data = new { testRecordId };
|
||||
}
|
||||
TestRecordId = SQLHelper.GetNewID(),
|
||||
ProjectId = getTestPlan.ProjectId,
|
||||
TestPlanId = getTestPlan.TestPlanId,
|
||||
TestManId = personId,
|
||||
};
|
||||
TestRecordService.AddTestRecord(newTestRecord);
|
||||
responeData.code = 3;
|
||||
responeData.message = "您已加入考试计划!";
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (person != null && string.IsNullOrEmpty(getTestPlan.PlanId) && getTestPlan.UnitIds.Contains(person.UnitId) && (getTestPlan.WorkPostIds == null || getTestPlan.WorkPostIds.Contains(person.WorkPostId)))
|
||||
{
|
||||
//0-待提交;1-已发布未考试 将人员添加进考试记录
|
||||
var testTRecord = db.Training_TestRecord.FirstOrDefault(x => x.TestPlanId == testPlanId && x.TestManId == person.PersonId);
|
||||
if ((getTestPlan.States == "0" || getTestPlan.States == "1") && testTRecord == null && !string.IsNullOrEmpty(personId))
|
||||
{
|
||||
Model.Training_TestRecord newTestRecord = new Model.Training_TestRecord
|
||||
{
|
||||
TestRecordId = SQLHelper.GetNewID(),
|
||||
ProjectId = getTestPlan.ProjectId,
|
||||
TestPlanId = getTestPlan.TestPlanId,
|
||||
TestManId = personId,
|
||||
};
|
||||
TestRecordService.AddTestRecordForApi(newTestRecord);
|
||||
responeData.code = 3;
|
||||
responeData.message = "您已加入考试计划!";
|
||||
}
|
||||
}
|
||||
|
||||
if (user != null && string.IsNullOrEmpty(getTestPlan.PlanId) && getTestPlan.UnitIds.Contains(user.UnitId) && (getTestPlan.DepartIds == null || getTestPlan.DepartIds.Contains(user.DepartId)))
|
||||
{
|
||||
//0-待提交;1-已发布未考试 将人员添加进考试记录
|
||||
var testTRecord = db.Training_TestRecord.FirstOrDefault(x => x.TestPlanId == testPlanId && x.TestManId == personId);
|
||||
if ((getTestPlan.States == "0" || getTestPlan.States == "1") && testTRecord == null && !string.IsNullOrEmpty(personId))
|
||||
{
|
||||
Model.Training_TestRecord newTestRecord = new Model.Training_TestRecord
|
||||
{
|
||||
TestRecordId = SQLHelper.GetNewID(),
|
||||
ProjectId = getTestPlan.ProjectId,
|
||||
TestPlanId = getTestPlan.TestPlanId,
|
||||
TestManId = personId,
|
||||
};
|
||||
TestRecordService.AddTestRecordForApi(newTestRecord);
|
||||
responeData.code = 3;
|
||||
responeData.message = "您已加入考试计划!";
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (responeData.code == 1)
|
||||
|
|
@ -353,83 +292,6 @@ namespace WebAPI.Controllers
|
|||
}
|
||||
#endregion
|
||||
|
||||
public Model.ResponeData getTrainingPlanTestRecordItemByTestPlanIdPersonId(string companyTrainingItemCode, string personId, string projectId)
|
||||
{
|
||||
var responeData = new Model.ResponeData();
|
||||
try
|
||||
{
|
||||
using (var db = new Model.SGGLDB(Funs.ConnString))
|
||||
{
|
||||
var getCompanyTraining = db.Training_CompanyTrainingItem.FirstOrDefault(e => e.CompanyTrainingItemCode == companyTrainingItemCode);
|
||||
if (getCompanyTraining != null)
|
||||
{
|
||||
var user = db.Sys_User.FirstOrDefault(x => x.UserId == personId);
|
||||
Model.SitePerson_Person person;
|
||||
if (user != null)
|
||||
{
|
||||
person = db.SitePerson_Person.FirstOrDefault(e => (e.PersonId == personId || e.IdentityCard == user.IdentityCard) && e.ProjectId == projectId);// PersonService.GetPersonByUserId(personId, getTestPlan.ProjectId);
|
||||
}
|
||||
else
|
||||
{
|
||||
person = db.SitePerson_Person.FirstOrDefault(e => e.PersonId == personId && e.ProjectId == projectId);// PersonService.GetPersonByUserId(personId, getTestPlan.ProjectId);
|
||||
|
||||
}
|
||||
if (person != null || user != null)
|
||||
{
|
||||
var testRecord = db.Training_TestRecord.FirstOrDefault(x => x.CompanyTrainingItemId == getCompanyTraining.CompanyTrainingItemId && x.TestManId == personId && !x.TestEndTime.HasValue);
|
||||
if (testRecord != null)
|
||||
{
|
||||
string testRecordId = APITestRecordService.CreateTestRecordItem(getCompanyTraining, testRecord.TestRecordId, person, user);
|
||||
responeData.code = 2;
|
||||
responeData.data = new { testRecordId };
|
||||
}
|
||||
else if (person != null)
|
||||
{
|
||||
var testRecord2 = db.Training_TestRecord.FirstOrDefault(x => x.CompanyTrainingItemId == getCompanyTraining.CompanyTrainingItemId && x.TestManId == person.PersonId && !x.TestEndTime.HasValue);
|
||||
if (testRecord2 != null)
|
||||
{
|
||||
string testRecordId = APITestRecordService.CreateTestRecordItem(getCompanyTraining, testRecord2.TestRecordId, person, user);
|
||||
responeData.code = 2;
|
||||
responeData.data = new { testRecordId };
|
||||
}
|
||||
else
|
||||
{
|
||||
Model.Training_TestRecord training_TestRecord = new Model.Training_TestRecord();
|
||||
training_TestRecord.TestRecordId = Guid.NewGuid().ToString();
|
||||
training_TestRecord.ProjectId = projectId;
|
||||
training_TestRecord.CompanyTrainingItemId = getCompanyTraining.CompanyTrainingItemId;
|
||||
training_TestRecord.TestManId = person.PersonId;
|
||||
db.Training_TestRecord.InsertOnSubmit(training_TestRecord);
|
||||
db.SubmitChanges();
|
||||
string testRecordId = APITestRecordService.CreateTestRecordItem(getCompanyTraining, training_TestRecord.TestRecordId, person, user);
|
||||
responeData.code = 2;
|
||||
responeData.data = new { testRecordId };
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
Model.Training_TestRecord training_TestRecord = new Model.Training_TestRecord();
|
||||
training_TestRecord.TestRecordId = Guid.NewGuid().ToString();
|
||||
training_TestRecord.ProjectId = projectId;
|
||||
training_TestRecord.CompanyTrainingItemId = getCompanyTraining.CompanyTrainingItemId;
|
||||
training_TestRecord.TestManId = user.UserId;
|
||||
db.Training_TestRecord.InsertOnSubmit(training_TestRecord);
|
||||
db.SubmitChanges();
|
||||
string testRecordId = APITestRecordService.CreateTestRecordItem(getCompanyTraining, training_TestRecord.TestRecordId, person, user);
|
||||
responeData.code = 2;
|
||||
responeData.data = new { testRecordId };
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
responeData.code = 0;
|
||||
responeData.message = ex.Message;
|
||||
}
|
||||
return responeData;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,15 +1,10 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Configuration;
|
||||
using System.Drawing;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Net;
|
||||
using System.Net.Http;
|
||||
using System.Web.Http;
|
||||
using BLL;
|
||||
using Model;
|
||||
|
||||
namespace WebAPI.Controllers
|
||||
{
|
||||
/// <summary>
|
||||
|
|
@ -223,33 +218,18 @@ namespace WebAPI.Controllers
|
|||
/// <param name="strPass">0-未通过;1通过;空所有</param>
|
||||
/// <param name="pageIndex">页码</param>
|
||||
/// <returns>考试记录列表</returns>
|
||||
public Model.ResponeData getTrainingTestRecordListQuery(string projectId, string unitId, string workPostId, string departId, string strPass, int pageIndex)
|
||||
public Model.ResponeData getTrainingTestRecordListQuery(string projectId, string unitId, string workPostId, string strPass, int pageIndex)
|
||||
{
|
||||
var responeData = new Model.ResponeData();
|
||||
try
|
||||
{
|
||||
if (!string.IsNullOrEmpty(departId))
|
||||
var getDataLists = APITestRecordService.getTrainingTestRecordListByProjectId(projectId, unitId, workPostId, strPass, string.Empty);
|
||||
int pageCount = getDataLists.Count;
|
||||
if (pageCount > 0 && pageIndex > 0)
|
||||
{
|
||||
var getDataLists = APITestRecordService.getTrainingTestRecordListByDepartId(unitId, departId, strPass, string.Empty);
|
||||
int pageCount = getDataLists.Count;
|
||||
if (pageCount > 0 && pageIndex > 0)
|
||||
{
|
||||
getDataLists = getDataLists.OrderByDescending(x => x.TestStartTime).Skip(Funs.PageSize * (pageIndex - 1)).Take(Funs.PageSize).ToList();
|
||||
}
|
||||
responeData.data = new { pageCount, getDataLists };
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
var getDataLists = APITestRecordService.getTrainingTestRecordListByProjectId(projectId, unitId, workPostId, strPass, string.Empty);
|
||||
int pageCount = getDataLists.Count;
|
||||
if (pageCount > 0 && pageIndex > 0)
|
||||
{
|
||||
getDataLists = getDataLists.OrderByDescending(x => x.TestStartTime).Skip(Funs.PageSize * (pageIndex - 1)).Take(Funs.PageSize).ToList();
|
||||
}
|
||||
responeData.data = new { pageCount, getDataLists };
|
||||
|
||||
getDataLists = getDataLists.OrderByDescending(x => x.TestStartTime).Skip(Funs.PageSize * (pageIndex - 1)).Take(Funs.PageSize).ToList();
|
||||
}
|
||||
responeData.data = new { pageCount, getDataLists };
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
|
|
@ -260,6 +240,38 @@ namespace WebAPI.Controllers
|
|||
}
|
||||
#endregion
|
||||
|
||||
#region 根据ProjectId获取所有考试记录列表
|
||||
/// <summary>
|
||||
/// 根据ProjectId获取所有考试记录列表
|
||||
/// </summary>
|
||||
/// <param name="projectId">项目ID</param>
|
||||
/// <param name="unitId">单位ID</param>
|
||||
/// <param name="workPostId">岗位ID</param>
|
||||
/// <param name="strPass">0-未通过;1通过;空所有</param>
|
||||
/// <param name="strParam">参数</param>
|
||||
/// <param name="pageIndex">页码</param>
|
||||
/// <returns>考试记录列表</returns>
|
||||
public Model.ResponeData getTrainingTestRecordListQuery(string projectId, string unitId, string workPostId, string strPass,string strParam, int pageIndex)
|
||||
{
|
||||
var responeData = new Model.ResponeData();
|
||||
try
|
||||
{
|
||||
var getDataLists = APITestRecordService.getTrainingTestRecordListByProjectId(projectId, unitId, workPostId, strPass, strParam);
|
||||
int pageCount = getDataLists.Count;
|
||||
if (pageCount > 0 && pageIndex > 0)
|
||||
{
|
||||
getDataLists = getDataLists.OrderByDescending(x => x.TestStartTime).Skip(Funs.PageSize * (pageIndex - 1)).Take(Funs.PageSize).ToList();
|
||||
}
|
||||
responeData.data = new { pageCount, getDataLists };
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
responeData.code = 0;
|
||||
responeData.message = ex.Message;
|
||||
}
|
||||
return responeData;
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region 根据TestRecordItemId、selectedItem 考生答题
|
||||
/// <summary>
|
||||
|
|
@ -272,129 +284,25 @@ namespace WebAPI.Controllers
|
|||
var responeData = new Model.ResponeData();
|
||||
try
|
||||
{
|
||||
if (!string.IsNullOrEmpty(testRecordItemId) && !string.IsNullOrEmpty(selectedItem))
|
||||
var getItem = TestRecordItemService.GetTestRecordItemTestRecordItemId(testRecordItemId);
|
||||
if (getItem != null)
|
||||
{
|
||||
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
|
||||
//更新没有结束时间且超时的考试记录
|
||||
int closeCount = TestRecordService.UpdateTestEndTimeNull(getItem.TestRecordId);
|
||||
if (closeCount > 0)
|
||||
{
|
||||
var getTItem = db.Training_TestRecordItem.FirstOrDefault(x => x.TestRecordItemId == testRecordItemId);
|
||||
if (getTItem != null)
|
||||
{
|
||||
getTItem.SubjectScore = 0;
|
||||
getTItem.SelectedItem = selectedItem;
|
||||
if (!string.IsNullOrEmpty(selectedItem))
|
||||
{
|
||||
if (getTItem.AnswerItems == selectedItem)
|
||||
{
|
||||
getTItem.SubjectScore = getTItem.Score ?? 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
var listA = Funs.GetStrListByStr(getTItem.AnswerItems.ToUpper(), ',');
|
||||
var listS = Funs.GetStrListByStr(selectedItem.ToUpper(), ',');
|
||||
if (getTItem.TestType == "2" && listA.Count >= listS.Count)
|
||||
{
|
||||
int i = 0;
|
||||
foreach (var item in listS)
|
||||
{
|
||||
if (!listA.Contains(item))
|
||||
{
|
||||
i++;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (i == 0)
|
||||
{
|
||||
if (listA.Count == listS.Count)
|
||||
{
|
||||
getTItem.SubjectScore = getTItem.Score ?? 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
getTItem.SubjectScore = Convert.ToDecimal((getTItem.Score ?? 0) * 1.0 / 2);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
db.SubmitChanges();
|
||||
}
|
||||
responeData.code = 2;
|
||||
responeData.message = "本次考试已结束,系统自动交卷!";
|
||||
}
|
||||
else
|
||||
{
|
||||
APITestRecordService.getTestRecordItemAnswerBySelectedItem(getItem, selectedItem);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
responeData.code = 0;
|
||||
responeData.message = "答题为空选项!";
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
responeData.code = 0;
|
||||
responeData.message = ex.Message;
|
||||
}
|
||||
|
||||
return responeData;
|
||||
}
|
||||
|
||||
public Model.ResponeData getTestRecordItemAnswerBySelectedItem(string testRecordId, string testRecordItemId, string selectedItem)
|
||||
{
|
||||
var responeData = new Model.ResponeData();
|
||||
try
|
||||
{
|
||||
if (!string.IsNullOrEmpty(testRecordId) && !string.IsNullOrEmpty(testRecordItemId) && !string.IsNullOrEmpty(selectedItem))
|
||||
{
|
||||
BLL.RedisHelper redis = new RedisHelper();
|
||||
var trainingTestRecordItems = redis.GetObjString<List<Training_TestRecordItem>>(testRecordId); //根据试卷ID获取试卷题目列表
|
||||
var getTItem = trainingTestRecordItems?.FirstOrDefault(x => x.TestRecordItemId == testRecordItemId); //获取试题
|
||||
if (getTItem == null)
|
||||
{
|
||||
responeData.code = 0;
|
||||
responeData.message = "答题为空选项!";
|
||||
return responeData;
|
||||
}
|
||||
getTItem.SubjectScore = 0;
|
||||
getTItem.SelectedItem = selectedItem;
|
||||
if (!string.IsNullOrEmpty(selectedItem))
|
||||
{
|
||||
if (getTItem.AnswerItems == selectedItem)
|
||||
{
|
||||
getTItem.SubjectScore = getTItem.Score ?? 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
var listA = Funs.GetStrListByStr(getTItem.AnswerItems.ToUpper(), ',');
|
||||
var listS = Funs.GetStrListByStr(selectedItem.ToUpper(), ',');
|
||||
if (getTItem.TestType == "2" && listA.Count >= listS.Count)
|
||||
{
|
||||
int i = 0;
|
||||
foreach (var item in listS)
|
||||
{
|
||||
if (!listA.Contains(item))
|
||||
{
|
||||
i++;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (i == 0)
|
||||
{
|
||||
if (listA.Count == listS.Count)
|
||||
{
|
||||
getTItem.SubjectScore = getTItem.Score ?? 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
getTItem.SubjectScore = Convert.ToDecimal((getTItem.Score ?? 0) * 1.0 / 2);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
redis.SetObjString(testRecordId, getTItem);
|
||||
}
|
||||
else
|
||||
{
|
||||
responeData.code = 0;
|
||||
responeData.message = "参数不足!";
|
||||
return responeData;
|
||||
responeData.message = "试题有问题!";
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
|
|
@ -458,132 +366,5 @@ namespace WebAPI.Controllers
|
|||
return responeData;
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region 交卷
|
||||
/// <summary>
|
||||
/// 交卷
|
||||
/// </summary>
|
||||
public Model.ResponeData SaveSubmitTestRecordByTestRecordId(Model.TestRecordItem testRecordItem)
|
||||
{
|
||||
string testRecordId = testRecordItem.TestRecordId;
|
||||
string Signature = testRecordItem.Signature;
|
||||
string Fingerprint = testRecordItem.Fingerprint;
|
||||
var responeData = new Model.ResponeData();
|
||||
try
|
||||
{
|
||||
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
|
||||
{
|
||||
#region 将答题记录保存到数据库
|
||||
RedisHelper redis = new RedisHelper();
|
||||
var trainingTestRecordItems = redis.GetObjString<List<Training_TestRecordItem>>(testRecordId);
|
||||
|
||||
if (trainingTestRecordItems != null)
|
||||
{
|
||||
var modeltestRecordItem = from x in db.Training_TestRecordItem
|
||||
where x.TestRecordId == testRecordId
|
||||
select x;
|
||||
if (modeltestRecordItem.Any())
|
||||
{
|
||||
db.Training_TestRecordItem.DeleteAllOnSubmit(modeltestRecordItem);
|
||||
db.SubmitChanges();
|
||||
}
|
||||
db.Training_TestRecordItem.InsertAllOnSubmit(trainingTestRecordItems);
|
||||
}
|
||||
#endregion
|
||||
|
||||
|
||||
var getTestRecord = db.Training_TestRecord.FirstOrDefault(e => e.TestRecordId == testRecordId);
|
||||
if (getTestRecord != null)
|
||||
{
|
||||
string rootUrl = ConfigurationManager.AppSettings["localRoot"];
|
||||
string SignatureUrl = @"FileUpload\TestRecord\" + getTestRecord.TestRecordId + "~签名" + ".png";
|
||||
string FingerprintUrl = @"FileUpload\TestRecord\" + getTestRecord.TestRecordId + "~指纹" + ".png";
|
||||
string Signaturefilename = rootUrl + SignatureUrl;
|
||||
string Fingerprintfilename = rootUrl + FingerprintUrl;
|
||||
|
||||
if (!string.IsNullOrEmpty(Signature))
|
||||
{
|
||||
Signature = Signature.Replace("data:image/svg+xml;base64,", "").Replace("data:image/png;base64,", "").Replace("data:image/jgp;base64,", "").Replace("data:image/jpg;base64,", "").Replace("data:image/jpeg;base64,", "");//将base64头部信息替换
|
||||
byte[] bytes = Convert.FromBase64String(Signature);
|
||||
|
||||
MemoryStream memStream = new MemoryStream(bytes);
|
||||
Image mImage = Image.FromStream(memStream);
|
||||
Bitmap bp = new Bitmap(mImage);
|
||||
MemoryStream ms = new MemoryStream();
|
||||
bp.Save(Signaturefilename, System.Drawing.Imaging.ImageFormat.Png);
|
||||
// System.IO.File.WriteAllBytes(Signaturefilename, Convert.FromBase64String(Signature));
|
||||
|
||||
getTestRecord.Signature = Signaturefilename.Replace(rootUrl, "");
|
||||
|
||||
}
|
||||
if (!string.IsNullOrEmpty(Fingerprint))
|
||||
{
|
||||
Fingerprint = Fingerprint.Replace("data:image/svg+xml;base64,", "").Replace("data:image/png;base64,", "").Replace("data:image/jgp;base64,", "").Replace("data:image/jpg;base64,", "").Replace("data:image/jpeg;base64,", "");//将base64头部信息替换
|
||||
|
||||
byte[] bytes = Convert.FromBase64String(Fingerprint);
|
||||
|
||||
MemoryStream memStream = new MemoryStream(bytes);
|
||||
Image mImage = Image.FromStream(memStream);
|
||||
Bitmap bp = new Bitmap(mImage);
|
||||
MemoryStream ms = new MemoryStream();
|
||||
bp.Save(Fingerprintfilename, System.Drawing.Imaging.ImageFormat.Png);
|
||||
|
||||
getTestRecord.Fingerprint = Fingerprintfilename.Replace(rootUrl, "");
|
||||
|
||||
}
|
||||
db.SubmitChanges();
|
||||
// APITestRecordService.updateTestRecord(getTestRecord);
|
||||
string returnTestRecordId = string.Empty;
|
||||
////考试分数
|
||||
decimal getTestScores = APITestRecordService.getSubmitTestRecord(getTestRecord);
|
||||
|
||||
if (!string.IsNullOrEmpty(getTestRecord.TestPlanId))
|
||||
{ ////及格分数
|
||||
int getPassScores = 80;
|
||||
var testRule = db.Sys_TestRule.FirstOrDefault();
|
||||
if (testRule != null)
|
||||
{
|
||||
getPassScores = testRule.PassingScore;
|
||||
}
|
||||
if (getTestScores <= getPassScores)
|
||||
{
|
||||
int testCount = db.Training_TestRecord.Where(x => x.TestPlanId == getTestRecord.TestPlanId && x.TestManId == getTestRecord.TestManId).Count();
|
||||
if (testCount < 2)
|
||||
{
|
||||
////重新生成一条考试记录 以及考试试卷
|
||||
returnTestRecordId = APITestRecordService.getResitTestRecord(getTestRecord);
|
||||
responeData.message = "考试不合格!您的成绩为:【" + getTestScores.ToString() + "】,您将进入补考。";
|
||||
}
|
||||
else
|
||||
{
|
||||
APITestRecordService.updateAll(getTestRecord.TestPlanId);
|
||||
responeData.message = "考试不合格!您的成绩为:【" + getTestScores.ToString() + "】,请再次参加培训后补考。";
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
APITestRecordService.updateAll(getTestRecord.TestPlanId);
|
||||
responeData.message = "恭喜考试通过!您的成绩为:【" + getTestScores.ToString() + "】。";
|
||||
}
|
||||
responeData.data = new { getTestScores, getPassScores, returnTestRecordId };
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
responeData.data = new { getTestScores };
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
responeData.code = 0;
|
||||
responeData.message = ex.Message;
|
||||
}
|
||||
return responeData;
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -352,33 +352,18 @@ namespace WebAPI.Controllers
|
|||
/// <param name="trainTypeId">培训类型ID(可为空)</param>
|
||||
/// <param name="pageIndex">分页</param>
|
||||
/// <returns></returns>
|
||||
public Model.ResponeData getTrainingPersonListByTrainTypeId(string projectId, string unitIds, string workPostIds, string trainTypeId, int pageIndex, string departIds="", string strParam="", string InTime="")
|
||||
public Model.ResponeData getTrainingPersonListByTrainTypeId(string projectId, string unitIds, string workPostIds, string trainTypeId, int pageIndex)
|
||||
{
|
||||
var responeData = new Model.ResponeData();
|
||||
try
|
||||
{
|
||||
if (string.IsNullOrEmpty(projectId))
|
||||
var getDataList = APIPersonService.getTrainingPersonListByTrainTypeId(projectId, unitIds, workPostIds, trainTypeId).OrderBy(x => x.UnitName).ThenBy(x => x.ProjectName).ToList();
|
||||
int pageCount = getDataList.Count;
|
||||
if (pageCount > 0 && pageIndex > 0)
|
||||
{
|
||||
var getDataList = APIPersonService.getTrainingPersonListByDepartAndTrainTypeId(unitIds, departIds, trainTypeId).OrderBy(x => x.UnitName).ThenBy(x => x.ProjectName).ToList();
|
||||
int pageCount = getDataList.Count;
|
||||
if (pageCount > 0 && pageIndex > 0)
|
||||
{
|
||||
getDataList = getDataList.OrderBy(u => u.UnitName).ThenBy(u => u.PersonName).Skip(Funs.PageSize * (pageIndex - 1)).Take(Funs.PageSize).ToList(); ////200 ->Funs.PageSize
|
||||
}
|
||||
responeData.data = new { pageCount, getDataList };
|
||||
getDataList = getDataList.OrderBy(u => u.UnitName).ThenBy(u => u.PersonName).Skip(Funs.PageSize * (pageIndex - 1)).Take(Funs.PageSize).ToList(); ////200 ->Funs.PageSize
|
||||
}
|
||||
else
|
||||
{
|
||||
var getDataList = APIPersonService.getTrainingPersonListByTrainTypeId(projectId, unitIds, workPostIds, departIds, trainTypeId, InTime, strParam).OrderBy(x => x.UnitName).ThenBy(x => x.ProjectName).ToList();
|
||||
|
||||
int pageCount = getDataList.Count;
|
||||
if (pageCount > 0 && pageIndex > 0)
|
||||
{
|
||||
getDataList = getDataList.OrderBy(u => u.UnitName).ThenBy(u => u.PersonName).Skip(Funs.PageSize * (pageIndex - 1)).Take(Funs.PageSize).ToList(); ////200 ->Funs.PageSize
|
||||
}
|
||||
responeData.data = new { pageCount, getDataList };
|
||||
}
|
||||
|
||||
responeData.data = new { pageCount, getDataList };
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
|
|
@ -1141,6 +1126,6 @@ namespace WebAPI.Controllers
|
|||
#endregion
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
|
@ -145,7 +145,7 @@ namespace WebAPI.Controllers
|
|||
db.SubmitChanges();
|
||||
// FormsAuthentication.SetAuthCookie(person.PersonId, true, FormsAuthentication.FormsCookiePath);
|
||||
FormsAuthenticationTicket Tick = new FormsAuthenticationTicket(1,
|
||||
person.PersonName,
|
||||
sysUser.Account,
|
||||
DateTime.Now,
|
||||
DateTime.Now.AddYears(10), //十年有效期
|
||||
false,
|
||||
|
|
|
|||
|
|
@ -4,13 +4,13 @@ https://go.microsoft.com/fwlink/?LinkID=208121.
|
|||
-->
|
||||
<Project>
|
||||
<PropertyGroup>
|
||||
<DeleteExistingFiles>True</DeleteExistingFiles>
|
||||
<ExcludeApp_Data>False</ExcludeApp_Data>
|
||||
<LaunchSiteAfterPublish>True</LaunchSiteAfterPublish>
|
||||
<DeleteExistingFiles>false</DeleteExistingFiles>
|
||||
<ExcludeApp_Data>false</ExcludeApp_Data>
|
||||
<LaunchSiteAfterPublish>true</LaunchSiteAfterPublish>
|
||||
<LastUsedBuildConfiguration>Release</LastUsedBuildConfiguration>
|
||||
<LastUsedPlatform>Any CPU</LastUsedPlatform>
|
||||
<PublishProvider>FileSystem</PublishProvider>
|
||||
<PublishUrl>G:\发布</PublishUrl>
|
||||
<PublishUrl>D:\发布</PublishUrl>
|
||||
<WebPublishMethod>FileSystem</WebPublishMethod>
|
||||
<_TargetId>Folder</_TargetId>
|
||||
<SiteUrlToLaunchAfterPublish />
|
||||
|
|
|
|||
|
|
@ -229,7 +229,6 @@
|
|||
<Compile Include="Controllers\HomeController.cs" />
|
||||
<Compile Include="Controllers\PersonController.cs" />
|
||||
<Compile Include="Controllers\ProjectController.cs" />
|
||||
<Compile Include="Controllers\ShouYeController.cs" />
|
||||
<Compile Include="Controllers\SYHSE\SYController.cs" />
|
||||
<Compile Include="Controllers\ToDoItemController.cs" />
|
||||
<Compile Include="Controllers\UnitController.cs" />
|
||||
|
|
|
|||
Loading…
Reference in New Issue