public void AddDetail(ExamFileDetail detail) { detail.SetHeader(this); detail.UPLOAD_GROUP_NO = this.UPLOAD_GROUP_NO; detail.AssociateName = this.ASSOCIATE_NAME; detail.AssociateCode = this.ASSOCIATE_CODE; detail.ProvinceCode = this.PROVINCE_CODE; detail.TestingDate = this.TESTING_DATE; detail.LicenseTypeCode = this.LICENSE_TYPE_CODE; detail.TimeCode = this.EXAM_TIME_CODE; VW_IAS_COM_CODE ent = this.CTX.VW_IAS_COM_CODE.SingleOrDefault(s => s.ID == "01"); detail.InsurCompName = ent.NAME; string examResult = detail.EXAM_RESULT; if ("P_F".Contains(examResult)) { detail.EXAM_RESULT = examResult; } else if (examResult == "M") { detail.ABSENT_EXAM = examResult; } string title = detail.TITLE == "น.ส." ? "นางสาว" : detail.TITLE; //ตรวจสอบคำนำหน้าชื่อ VW_IAS_TITLE_NAME entTitle = this.CTX.VW_IAS_TITLE_NAME.ToList().FirstOrDefault(s => s.NAME == title); if (entTitle != null) { detail.PRE_NAME_CODE = entTitle.ID.ToString(); } else { detail.ERROR_MSG = Resources.errorExamFileHeader_001; } IEnumerable <BusinessRule> rules = detail.GetBrokenRules(); if (rules != null && rules.Count() > 0) { StringBuilder errmsg = new StringBuilder(""); foreach (BusinessRule rule in rules) { errmsg.AppendLine(String.Format("- {0} <br />", rule.Rule)); } detail.ERROR_MSG = errmsg.ToString(); } _examFileDetails.Add(detail); }
protected void Validate() { if (_userProfile.MemberType == 2) { VW_IAS_COM_CODE comEnt = _ctx.VW_IAS_COM_CODE.SingleOrDefault(a => a.ID == COMP_CODE); if (String.IsNullOrEmpty(COMP_CODE)) { AddBrokenRule(LicenseFileHeaderBusinessRules.COMP_CODE_Required); } else if (COMP_CODE != _userProfile.CompCode) { AddBrokenRule(LicenseFileHeaderBusinessRules.COMP_CODE_Required); } else if (comEnt == null) { AddBrokenRule(LicenseFileHeaderBusinessRules.COMP_CODE_Required); } } else if (_userProfile.MemberType == 3) { if ((new[] { "03", "04" }).Contains(this.LICENSE_TYPE_CODE)) { if (!String.IsNullOrEmpty(COMP_CODE)) { var comEnt = _ctx.VW_IAS_COM_CODE.SingleOrDefault(a => a.ID == COMP_CODE).ID; if (String.IsNullOrEmpty(comEnt)) { AddBrokenRule(LicenseFileHeaderBusinessRules.COMP_CODE_Required); } else { if (!comEnt.StartsWith("3")) { AddBrokenRule(LicenseFileHeaderBusinessRules.COMP_CODE_Required); } } } } else { if (String.IsNullOrEmpty(COMP_CODE)) { AddBrokenRule(LicenseFileHeaderBusinessRules.COMP_CODE_Required); } else { if (!string.IsNullOrEmpty(COMP_CODE)) { var comEnt = _ctx.VW_IAS_COM_CODE.SingleOrDefault(a => a.ID == COMP_CODE).ID; if (String.IsNullOrEmpty(comEnt)) { AddBrokenRule(LicenseFileHeaderBusinessRules.COMP_CODE_Required); } else { if ((new[] { "01", "07" }).Contains(this.LICENSE_TYPE_CODE)) { if (!comEnt.StartsWith("1")) { AddBrokenRule(LicenseFileHeaderBusinessRules.COMP_CODE_Required); } } else if ((new[] { "02", "05", "06", "08" }).Contains(this.LICENSE_TYPE_CODE)) { if (!comEnt.StartsWith("2")) { AddBrokenRule(LicenseFileHeaderBusinessRules.COMP_CODE_Required); } } } } } } } else if (this.COMP_CODE.Length == 4) { VW_IAS_COM_CODE comEnt = _ctx.VW_IAS_COM_CODE.SingleOrDefault(a => a.ID == COMP_CODE); } else { AG_EXAM_PLACE_GROUP_R compEnt = _ctx.AG_EXAM_PLACE_GROUP_R.SingleOrDefault(s => s.EXAM_PLACE_GROUP_CODE == COMP_CODE); if (compEnt == null) { AddBrokenRule(LicenseFileHeaderBusinessRules.COMP_CODE_Required); } } if (IMPORT_ID == 0) { AddBrokenRule(LicenseFileHeaderBusinessRules.IMPORT_ID_Required); } if (String.IsNullOrEmpty(FILE_NAME)) { AddBrokenRule(LicenseFileHeaderBusinessRules.FILE_NAME_Required); } //if (!String.IsNullOrEmpty(PETTITION_TYPE)) // AddBrokenRule(LicenseFileHeaderBusinessRules.PETTITION_TYPE_Required); if (PetitionTypeR == null) { AddBrokenRule(LicenseFileHeaderBusinessRules.PETTITION_TYPE_Required); } if (String.IsNullOrEmpty(LICENSE_TYPE_CODE)) { AddBrokenRule(LicenseFileHeaderBusinessRules.LICENSE_TYPE_CODE_Required); } else if (LicenseTypeR == null) { AddBrokenRule(LicenseFileHeaderBusinessRules.LICENSE_TYPE_Required); } else if (LICENSE_TYPE_CODE != _licenseTypeUserRequest) { AddBrokenRule(LicenseFileHeaderBusinessRules.LICENSE_TYPE_CODE_Required); } if (_userProfile.MemberType == 2) { if (String.IsNullOrEmpty(COMP_NAME)) { AddBrokenRule(LicenseFileHeaderBusinessRules.COMP_NAME_Required); } } if (String.IsNullOrEmpty(LICENSE_TYPE)) { AddBrokenRule(LicenseFileHeaderBusinessRules.LICENSE_TYPE_Required); } if (SEND_DATE == null || SEND_DATE == DateTime.MinValue) { AddBrokenRule(LicenseFileHeaderBusinessRules.SEND_DATE_Required); } else if (!(((DateTime)SEND_DATE).Date == DateTime.Now.Date)) { AddBrokenRule(LicenseFileHeaderBusinessRules.SEND_DATE_Required); } if (TOTAL_AGENT == null || TOTAL_AGENT == 0) { AddBrokenRule(LicenseFileHeaderBusinessRules.TOTAL_AGENT_Required); } else if (TOTAL_AGENT != LicenseFileDetails.Count()) { AddBrokenRule(LicenseFileHeaderBusinessRules.TOTAL_AGENT_Required); } //ใบแทนใบอนุญาตเปลี่ยนชื่อสกุลค่าธรรมเนียมเป็น 0 if (PetitionTypeR.PETITION_TYPE_CODE == "16" && replaceType == DTO.ReplateType.ChangeNameandSur.GetEnumValue().ToString()) { if (TOTAL_FEE == null || TOTAL_FEE != 0) { AddBrokenRule(LicenseFileHeaderBusinessRules.TOTAL_FEE_Required); } } else if (PetitionTypeR.PETITION_TYPE_CODE == "11" && (new[] { "11", "12" }).Contains(this.LICENSE_TYPE_CODE)) { if (TOTAL_FEE == null || TOTAL_FEE != 0) { AddBrokenRule(LicenseFileHeaderBusinessRules.TOTAL_FEE_Required); } } else { if (TOTAL_FEE == null || TOTAL_FEE == 0) { AddBrokenRule(LicenseFileHeaderBusinessRules.TOTAL_FEE_Required); } AG_PETITION_TYPE_R free = _ctx.AG_PETITION_TYPE_R.SingleOrDefault(s => s.PETITION_TYPE_CODE == PetitionTypeR.PETITION_TYPE_CODE); Decimal?count = LicenseFileDetails.Count(); Decimal?total = 0; Decimal value = new Decimal(); foreach (var item in LicenseFileDetails) { if (string.IsNullOrEmpty(item.LICENSE_FEE.ToString()) || !Decimal.TryParse(item.LICENSE_FEE.ToString(), out value)) { item.LICENSE_FEE = 0; } total += item.LICENSE_FEE; } if (TOTAL_FEE != total) { AddBrokenRule(LicenseFileHeaderBusinessRules.TOTAL_FEE_Required); } } //if (String.IsNullOrEmpty(ERR_MSG)) // AddBrokenRule(LicenseFileHeaderBusinessRules.ERR_MSG_Required); //if (String.IsNullOrEmpty(APPROVE_COMPCODE)) // AddBrokenRule(LicenseFileHeaderBusinessRules.APPROVE_COMPCODE_Required); }