public async Task <HttpResponseMessage> GetEvalResult([FromUri] EvalMasterBaseReq req) { var obj = await EvalMasterBE.GetEvalResult(req); if (obj != null) { return(this.OkResult(obj)); } return(this.ErrorResult(new Error(EnumError.EvalMasterNotExist))); }
public async Task <EvalMaster> GetPeriodAndEmployee(EvalMasterBaseReq req) { var obj = await GetAsync(c => c.EvalMasterId == req.EvalMasterId); if (obj != null && obj.Any()) { return(obj.FirstOrDefault()); } return(null); }
public async Task <bool> CancelFinal(EvalMasterBaseReq req) { var obj = await GetAsync(c => c.EvalMasterId == req.EvalMasterId); if (obj != null && obj.Any()) { var update = obj.FirstOrDefault(); update.IsFinal = false; return(Update(update)); } return(false); }
public async Task <List <EvalDetail> > GetEvalDetailByMasterId(EvalMasterBaseReq req) { if (req == null) { return(null); } var obj = await EvalDetailBE.GetAsync(c => c.EvalMasterId == req.EvalMasterId); if (obj != null && obj.Any()) { return(obj.ToList()); } return(null); }
public async Task <HttpResponseMessage> CancelFinal([FromBody] EvalMasterBaseReq req) { var evalMaster = await EvalMasterBE.GetById(req); if (evalMaster == null) { return(this.ErrorResult(new Error(EnumError.EvalMasterNotExist))); } var obj = await EvalMasterBE.CancelFinal(req); if (obj) { return(this.OkResult(obj)); } return(this.ErrorResult(new Error(EnumError.UpdateFaile))); }
public async Task <bool> IsAllowEdit(EvalMasterBaseReq req) { var evalMaster = (from mt in (await GetAsync(p => p.EvalMasterId == req.EvalMasterId)) join p in EvalPeriodBE.GetAll() on mt.EvalPeriodId equals p.EvalPeriodId select new { mt.BeEvalEmployeeId, mt.IsFinal, p.ToDate }).FirstOrDefault(); if (evalMaster == null) { return(false); } var printMaster = await GetAsync(p => p.BeEvalEmployeeId == evalMaster.BeEvalEmployeeId && p.IsFinal == true); if (printMaster.Any()) { return(false); } if ((evalMaster.IsFinal ?? false) || DateTime.Now > evalMaster.ToDate.CheckDateEx()) { return(false); } return(true); }
public async Task <HttpResponseMessage> CompleteFinal([FromBody] EvalMasterBaseReq req) { var evalMaster = await EvalMasterBE.GetById(req); if (evalMaster == null) { return(this.ErrorResult(new Error(EnumError.EvalMasterNotExist))); } var objExits = (await EvalMasterBE.GetAsync(p => p.EvalPeriodId == evalMaster.EvalPeriodId))?.FirstOrDefault(); if (objExits != null && objExits.EvalMasterId == req.EvalMasterId) { return(this.ErrorResult(new Error(EnumError.EvalMasterFinalHasExits))); } var obj = await EvalMasterBE.CompleteFinal(req); if (obj) { return(this.OkResult(obj)); } return(this.ErrorResult(new Error(EnumError.UpdateFaile))); }
public async Task <HttpResponseMessage> IsAllowEdit([FromBody] EvalMasterBaseReq req) { var obj = await EvalMasterBE.IsAllowEdit(req); return(this.OkResult(obj)); }
public async Task <EvalResult> GetEvalResult(EvalMasterBaseReq req) { if (req == null) { return(null); } var evalMaster = await GetById(req); if (evalMaster == null) { return(null); } var evalPeriod = _uoW.Context.EvalPeriods.FirstOrDefault(p => p.EvalPeriodId == evalMaster.EvalPeriodId); var schoolLevelCode = _uoW.Context.Schools.FirstOrDefault(p => p.SchoolId == evalPeriod.SchoolId)?.SchoolLevelCode; var objDetails = from dt in _uoW.Context.EvalDetails join c in _uoW.Context.EvalCriterias on dt.EvalCriteriaId equals c.EvalCriteriaId join r in _uoW.Context.EvalResults on dt.EvalResultCode equals r.EvalResultCode into gr from r in gr.DefaultIfEmpty() where dt.EvalMasterId == req.EvalMasterId select new { c.EvalCriteriaCode, r.EvalResultCode, r.Idx }; var result = ""; if (evalPeriod.EvalTypeCode == EnumEvalType.Primary) { if (schoolLevelCode == EnumSchoolLevel.PrimarySchool) { // EXC if (objDetails.Where(p => p.Idx > 1).Count() == objDetails.Count() && objDetails.Where(p => p.Idx > 1).Count() / objDetails.Count() >= 2 / 3 && (objDetails.Where(p => p.Idx == 3 && "TC1,TC2,TC4,TC5,TC6,TC8,TC10,TC12,TC13,TC14".Contains(p.EvalCriteriaCode)).Count() > 9)) { result = EnumEvalResult.Tot; } // Khá else if (objDetails.Where(p => p.Idx > 0).Count() == objDetails.Count() && objDetails.Where(p => p.Idx > 0).Count() / objDetails.Count() >= 2 / 3 && (objDetails.Where(p => p.Idx > 1 && "TC1,TC2,TC4,TC5,TC6,TC8,TC10,TC12,TC13,TC14".Contains(p.EvalCriteriaCode)).Count() > 9)) { result = EnumEvalResult.Kha; } // Khá else if (objDetails.Where(p => p.Idx > 0).Count() == objDetails.Count() && objDetails.Where(p => p.Idx > 0).Count() / objDetails.Count() >= 2 / 3 && (objDetails.Where(p => p.Idx > 0 && "TC1,TC2,TC4,TC5,TC6,TC8,TC10,TC12,TC13,TC14".Contains(p.EvalCriteriaCode)).Count() > 9)) { result = EnumEvalResult.Dat; } else { result = EnumEvalResult.KhongDat; } } else if (schoolLevelCode == EnumSchoolLevel.PresSchool) { // EXC if (objDetails.Where(p => p.Idx > 1).Count() == objDetails.Count() && objDetails.Where(p => p.Idx > 1).Count() / objDetails.Count() >= 2 / 3 && (objDetails.Where(p => p.Idx == 3 && "TC1,TC2,TC4,TC5,TC6,TC8,TC10,TC12,TC13,TC14".Contains(p.EvalCriteriaCode)).Count() > 9)) { result = EnumEvalResult.Tot; } // Khá else if (objDetails.Where(p => p.Idx > 0).Count() == objDetails.Count() && objDetails.Where(p => p.Idx > 0).Count() / objDetails.Count() >= 2 / 3 && (objDetails.Where(p => p.Idx > 1 && "TC1,TC2,TC4,TC5,TC6,TC8,TC10,TC12,TC13,TC14".Contains(p.EvalCriteriaCode)).Count() > 9)) { result = EnumEvalResult.Kha; } // Khá else if (objDetails.Where(p => p.Idx > 0).Count() == objDetails.Count() && objDetails.Where(p => p.Idx > 0).Count() / objDetails.Count() >= 2 / 3 && (objDetails.Where(p => p.Idx > 0 && "TC1,TC2,TC4,TC5,TC6,TC8,TC10,TC12,TC13,TC14".Contains(p.EvalCriteriaCode)).Count() > 9)) { result = EnumEvalResult.Dat; } else { result = EnumEvalResult.KhongDat; } } else if (schoolLevelCode == EnumSchoolLevel.JuniorHighSchool) { // EXC if (objDetails.Where(p => p.Idx > 1).Count() == objDetails.Count() && objDetails.Where(p => p.Idx > 1).Count() / objDetails.Count() >= 2 / 3 && (objDetails.Where(p => p.Idx == 3 && "TC1,TC2,TC4,TC5,TC6,TC8,TC10,TC12,TC13,TC14".Contains(p.EvalCriteriaCode)).Count() > 9)) { result = EnumEvalResult.Tot; } // Khá else if (objDetails.Where(p => p.Idx > 0).Count() == objDetails.Count() && objDetails.Where(p => p.Idx > 0).Count() / objDetails.Count() >= 2 / 3 && (objDetails.Where(p => p.Idx > 1 && "TC1,TC2,TC4,TC5,TC6,TC8,TC10,TC12,TC13,TC14".Contains(p.EvalCriteriaCode)).Count() > 9)) { result = EnumEvalResult.Kha; } // Khá else if (objDetails.Where(p => p.Idx > 0).Count() == objDetails.Count() && objDetails.Where(p => p.Idx > 0).Count() / objDetails.Count() >= 2 / 3 && (objDetails.Where(p => p.Idx > 0 && "TC1,TC2,TC4,TC5,TC6,TC8,TC10,TC12,TC13,TC14".Contains(p.EvalCriteriaCode)).Count() > 9)) { result = EnumEvalResult.Dat; } else { result = EnumEvalResult.KhongDat; } } if (schoolLevelCode == EnumSchoolLevel.HighSchool) { // EXC if (objDetails.Where(p => p.Idx > 1).Count() == objDetails.Count() && objDetails.Where(p => p.Idx > 1).Count() / objDetails.Count() >= 2 / 3 && (objDetails.Where(p => p.Idx == 3 && "TC1,TC2,TC4,TC5,TC6,TC8,TC10,TC12,TC13,TC14".Contains(p.EvalCriteriaCode)).Count() > 9)) { result = EnumEvalResult.Tot; } // Khá else if (objDetails.Where(p => p.Idx > 0).Count() == objDetails.Count() && objDetails.Where(p => p.Idx > 0).Count() / objDetails.Count() >= 2 / 3 && (objDetails.Where(p => p.Idx > 1 && "TC1,TC2,TC4,TC5,TC6,TC8,TC10,TC12,TC13,TC14".Contains(p.EvalCriteriaCode)).Count() > 9)) { result = EnumEvalResult.Kha; } // Khá else if (objDetails.Where(p => p.Idx > 0).Count() == objDetails.Count() && objDetails.Where(p => p.Idx > 0).Count() / objDetails.Count() >= 2 / 3 && (objDetails.Where(p => p.Idx > 0 && "TC1,TC2,TC4,TC5,TC6,TC8,TC10,TC12,TC13,TC14".Contains(p.EvalCriteriaCode)).Count() > 9)) { result = EnumEvalResult.Dat; } else { result = EnumEvalResult.KhongDat; } } } else if (evalPeriod.EvalTypeCode == EnumEvalType.Teacher) { if (schoolLevelCode == EnumSchoolLevel.PrimarySchool) { // EXC if (objDetails.Where(p => p.Idx > 1).Count() == objDetails.Count() && objDetails.Where(p => p.Idx > 1).Count() / objDetails.Count() >= 2 / 3 && (objDetails.Where(p => p.Idx == 3 && "TC1,TC2,TC4,TC5,TC6,TC8,TC10,TC12,TC13,TC14".Contains(p.EvalCriteriaCode)).Count() > 9)) { result = EnumEvalResult.Tot; } // Khá else if (objDetails.Where(p => p.Idx > 0).Count() == objDetails.Count() && objDetails.Where(p => p.Idx > 0).Count() / objDetails.Count() >= 2 / 3 && (objDetails.Where(p => p.Idx > 1 && "TC1,TC2,TC4,TC5,TC6,TC8,TC10,TC12,TC13,TC14".Contains(p.EvalCriteriaCode)).Count() > 9)) { result = EnumEvalResult.Kha; } // Đạt else if (objDetails.Where(p => p.Idx > 0).Count() == objDetails.Count()) { result = EnumEvalResult.Dat; } else { result = EnumEvalResult.KhongDat; } } else if (schoolLevelCode == EnumSchoolLevel.PresSchool) { // EXC if (objDetails.Where(p => p.Idx > 1).Count() == objDetails.Count() && objDetails.Where(p => p.Idx > 1).Count() / objDetails.Count() >= 2 / 3 && (objDetails.Where(p => p.Idx == 3 && "TC1,TC2,TC4,TC5,TC6,TC8,TC10,TC12,TC13,TC14".Contains(p.EvalCriteriaCode)).Count() > 9)) { result = EnumEvalResult.Tot; } // Khá else if (objDetails.Where(p => p.Idx > 0).Count() == objDetails.Count() && objDetails.Where(p => p.Idx > 0).Count() / objDetails.Count() >= 2 / 3 && (objDetails.Where(p => p.Idx > 1 && "TC1,TC2,TC4,TC5,TC6,TC8,TC10,TC12,TC13,TC14".Contains(p.EvalCriteriaCode)).Count() > 9)) { result = EnumEvalResult.Kha; } // Đạt else if (objDetails.Where(p => p.Idx > 0).Count() == objDetails.Count()) { result = EnumEvalResult.Dat; } else { result = EnumEvalResult.KhongDat; } } else if (schoolLevelCode == EnumSchoolLevel.JuniorHighSchool) { // EXC if (objDetails.Where(p => p.Idx > 1).Count() == objDetails.Count() && objDetails.Where(p => p.Idx > 1).Count() / objDetails.Count() >= 2 / 3 && (objDetails.Where(p => p.Idx == 3 && "TC1,TC2,TC4,TC5,TC6,TC8,TC10,TC12,TC13,TC14".Contains(p.EvalCriteriaCode)).Count() > 9)) { result = EnumEvalResult.Tot; } // Khá else if (objDetails.Where(p => p.Idx > 0).Count() == objDetails.Count() && objDetails.Where(p => p.Idx > 0).Count() / objDetails.Count() >= 2 / 3 && (objDetails.Where(p => p.Idx > 1 && "TC1,TC2,TC4,TC5,TC6,TC8,TC10,TC12,TC13,TC14".Contains(p.EvalCriteriaCode)).Count() > 9)) { result = EnumEvalResult.Kha; } // Đạt else if (objDetails.Where(p => p.Idx > 0).Count() == objDetails.Count()) { result = EnumEvalResult.Dat; } else { result = EnumEvalResult.KhongDat; } } else if (schoolLevelCode == EnumSchoolLevel.HighSchool) { // EXC if (objDetails.Where(p => p.Idx > 1).Count() == objDetails.Count() && objDetails.Where(p => p.Idx > 1).Count() / objDetails.Count() >= 2 / 3 && (objDetails.Where(p => p.Idx == 3 && "TC1,TC2,TC4,TC5,TC6,TC8,TC10,TC12,TC13,TC14".Contains(p.EvalCriteriaCode)).Count() > 9)) { result = EnumEvalResult.Tot; } // Khá else if (objDetails.Where(p => p.Idx > 0).Count() == objDetails.Count() && objDetails.Where(p => p.Idx > 0).Count() / objDetails.Count() >= 2 / 3 && (objDetails.Where(p => p.Idx > 1 && "TC1,TC2,TC4,TC5,TC6,TC8,TC10,TC12,TC13,TC14".Contains(p.EvalCriteriaCode)).Count() > 9)) { result = EnumEvalResult.Kha; } // Đạt else if (objDetails.Where(p => p.Idx > 0).Count() == objDetails.Count()) { result = EnumEvalResult.Dat; } else { result = EnumEvalResult.KhongDat; } } } return(_uoW.Context.EvalResults.FirstOrDefault(p => p.EvalResultCode == result)); }