/// <summary> /// Validate search condition before proceed search incident /// </summary> /// <param name="condition"></param> /// <returns></returns> public ActionResult CTS310_ValidateSearch(SearchIncidentCondition condition) { ObjectResultData res = new ObjectResultData(); try { res.MessageType = MessageModel.MESSAGE_TYPE.WARNING; ValidatorUtil.BuildErrorMessage(res, this, new object[] { condition }); if (condition.SpecfyPeriod == null && (condition.SpecifyPeriodFrom.HasValue || condition.SpecifyPeriodTo.HasValue)) { res.AddErrorMessage(MessageUtil.MODULE_COMMON, MessageUtil.MessageList.MSG0116, null, new string[] { "cboSpecifiedPeriod" }); } if (condition.SpecfyPeriod != null && condition.SpecifyPeriodFrom.HasValue && condition.SpecifyPeriodTo.HasValue && condition.SpecifyPeriodFrom.Value.CompareTo(condition.SpecifyPeriodTo.Value) > 0) { res.AddErrorMessage(MessageUtil.MODULE_COMMON, MessageUtil.MessageList.MSG0090, null, new string[] { "datePeriodFrom", "datePeriodTo" }); } if (!res.IsError) { res.ResultData = condition; } } catch (Exception ex) { res.AddErrorMessage(ex); } return(Json(res)); }
/// <summary> /// Search incident by criteria when click [Search] button on Incident list by role section /// </summary> /// <param name="condition"></param> /// <returns></returns> public ActionResult CTS310_searchIncidentList(SearchIncidentCondition condition) { ObjectResultData res = new ObjectResultData(); try { CommonUtil c = new CommonUtil(); condition.ContractCode = c.ConvertContractCode(condition.ContractCode, CommonUtil.CONVERT_TYPE.TO_LONG); IIncidentHandler hand = ServiceContainer.GetService <IIncidentHandler>() as IIncidentHandler; List <dtIncidentList> incidentList = hand.SearchIncidentList(condition); foreach (var item in incidentList) { // Set default if (item.DueDateDeadLine.HasValue) { item.DueDateDeadLine = new DateTime(item.DueDateDeadLine.Value.Year, item.DueDateDeadLine.Value.Month, item.DueDateDeadLine.Value.Day, 23, 59, 59); if (item.DueDateTime.HasValue) { item.DueDateDeadLine = new DateTime(item.DueDateDeadLine.Value.Year, item.DueDateDeadLine.Value.Month, item.DueDateDeadLine.Value.Day, item.DueDateTime.Value.Hours, item.DueDateTime.Value.Minutes, item.DueDateTime.Value.Seconds); } } item.IncidentNo = (String.IsNullOrEmpty(item.IncidentNo)) ? CommonUtil.GetLabelFromResource("Contract", "CTS310", "lblNA") : item.IncidentNo; } CommonUtil.MappingObjectLanguage <dtIncidentList>(incidentList); MiscTypeMappingList miscMapList = new MiscTypeMappingList(); miscMapList.AddMiscType(incidentList.ToArray()); ICommonHandler comh = ServiceContainer.GetService <ICommonHandler>() as ICommonHandler; comh.MiscTypeMappingList(miscMapList); CTS310_ScreenParameter param = GetScreenObject <CTS310_ScreenParameter>(); foreach (var incident in incidentList) { if (CommonUtil.IsNullOrEmpty(incident.IncidentNo)) { incident.IncidentNo = incident.IncidentID.ToString(); } doHasIncidentPermission hasPermission = hand.HasIncidentPermission(incident.IncidentID); incident.canViewConfidential = param.isAdmin || (!incident.ConfidentialFlag.Value) || hasPermission.ViewConfidentialIncidentFlag; setColStyle(incident); } string xml = CommonUtil.ConvertToXml <dtIncidentList>(incidentList, "Contract\\CTS310", CommonUtil.GRID_EMPTY_TYPE.SEARCH); res.ResultData = xml; } catch (Exception ex) { res.AddErrorMessage(ex); } return(Json(res)); }