private static ApplicantFileHeader ConcreateApplicantFileHeader(ApplicantHeaderRequest request) { String[] header = request.LineData; ApplicantFileHeader applicantHeader; applicantHeader = new ApplicantFileHeader(request); applicantHeader.PROVINCE_CODE = header.GetIndexOf(1); applicantHeader.COMP_CODE = header.GetIndexOf(2); applicantHeader.LICENSE_TYPE_CODE = header.GetIndexOf(3); applicantHeader.TESTING_DATE = PhaseDateHelper.PhaseToDateNull(header.GetIndexOf(4)); applicantHeader.EXAM_APPLY = PhaseApplyAmountHelper.Phase(header.GetIndexOf(5)); applicantHeader.EXAM_AMOUNT = PhaseCurrencyAmount.Phase(header.GetIndexOf(6)); applicantHeader.TEST_TIME_CODE = header.GetIndexOf(7); return(applicantHeader); }
private ApplicantFileHeader CreateHeader() { String testingNumber = "561644"; DTO.UserProfile userProfile = CreateUserProfile(); String filename = "test.txt"; String[] _lineData = _header.Split(','); ApplicantHeaderRequest request = new ApplicantHeaderRequest() { Context = ctx, UserProfile = userProfile, FileName = filename, TestingNumber = testingNumber, LineData = _lineData }; ApplicantFileHeader applicantHeader = ConcreateApplicantFileHeader(request); return(applicantHeader); }
public void ApplicantFileDetail_Can_Read_Text_To_Object() { ApplicantFileHeader applicantHeader = CreateHeader(); String[] data = _lines.FirstOrDefault().Split(','); ApplicantFileDetail detial = new ApplicantFileDetail(ctx) { LOAD_STATUS = "", APPLICANT_CODE = PhaseAppliantCodeHelper.Phase(data.GetIndexOf(0)), ID_CARD_NO = data.GetIndexOf(1), PRE_NAME_CODE = PreNameHelper.ConvertToCode(ctx, data.GetIndexOf(2)), NAMES = data.GetIndexOf(3), LASTNAME = data.GetIndexOf(4), BIRTH_DATE = PhaseDateHelper.PhaseToDateNull(data.GetIndexOf(5)), SEX = data.GetIndexOf(6), EDUCATION_CODE = data.GetIndexOf(7), ADDRESS1 = data.GetIndexOf(9), AREA_CODE = data.GetIndexOf(10), INSUR_COMP_CODE = data.GetIndexOf(8), TITLE = data.GetIndexOf(2) }; }
public static DTO.SummaryReceiveApplicant ConvertToSummaryReceiveApplicants(this ApplicantFileHeader applicantFileHeader) { DTO.SummaryReceiveApplicant summarize = new DTO.SummaryReceiveApplicant(); summarize.UploadGroupNo = applicantFileHeader.UPLOAD_GROUP_NO; summarize.Header = new DTO.UploadHeader(); IList <DTO.ApplicantTemp> details = new List <DTO.ApplicantTemp>(); Int32 errorAmount = applicantFileHeader.ApplicantFileDetails.Count(a => a.LOAD_STATUS == "F"); Int32 passAmount = applicantFileHeader.ApplicantFileDetails.Count(a => a.LOAD_STATUS == "T"); summarize.Header.RightTrans = passAmount; summarize.Header.MissingTrans = errorAmount; summarize.Header.Totals = applicantFileHeader.ApplicantFileDetails.Count(); summarize.Header.UploadFileName = applicantFileHeader.FILENAME; summarize.Header.FileName = applicantFileHeader.FileName; if (applicantFileHeader.GetBrokenRules().Count() > 0) { StringBuilder errorMessage = new StringBuilder(""); foreach (BusinessRule item in applicantFileHeader.GetBrokenRules()) { errorMessage.AppendLine(String.Format("- {0} <br />", item.Rule)); } summarize.MessageError = errorMessage.ToString(); //applicantFileHeader.e = errorMessage.ToString(); } if (applicantFileHeader.EXAM_APPLY != applicantFileHeader.ApplicantFileDetails.Count()) { summarize.MessageError = String.Format("- {0} <br />", ApplicantFileHeaderBusinessRules.EXAM_APPLY_Required.Rule); } Decimal price = new Decimal(); AG_PETITION_TYPE_R ent = applicantFileHeader.CTX.AG_PETITION_TYPE_R.SingleOrDefault(s => s.PETITION_TYPE_CODE == "01"); if (ent != null && ent.FEE != null) { price = ((Decimal)ent.FEE); } //Decimal sumAmount = price * applicantFileHeader.ApplicantFileDetails.Count(); //if (applicantFileHeader.EXAM_AMOUNT != null && sumAmount != applicantFileHeader.EXAM_AMOUNT) //{ // summarize.MessageError += ApplicantFileHeaderBusinessRules.EXAM_AMOUNT_Required.Rule; //} applicantFileHeader.ValidCiticenDuplicate(); foreach (ApplicantFileDetail item in applicantFileHeader.ApplicantFileDetails) { DTO.ApplicantTemp detail = new DTO.ApplicantTemp() { LOAD_STATUS = item.LOAD_STATUS, APPLICANT_CODE = item.APPLICANT_CODE, TESTING_NO = item.TESTING_NO, EXAM_PLACE_CODE = item.EXAM_PLACE_CODE, ACCEPT_OFF_CODE = item.ACCEPT_OFF_CODE, APPLY_DATE = item.APPLY_DATE, ID_CARD_NO = item.ID_CARD_NO, PRE_NAME_CODE = item.PRE_NAME_CODE, NAMES = item.NAMES, LASTNAME = item.LASTNAME, BIRTH_DATE = item.BIRTH_DATE, SEX = item.SEX, EDUCATION_CODE = item.EDUCATION_CODE, ADDRESS1 = item.ADDRESS1, ADDRESS2 = item.ADDRESS2, AREA_CODE = item.AREA_CODE, PROVINCE_CODE = item.PROVINCE_CODE, ZIPCODE = item.ZIPCODE, TELEPHONE = item.TELEPHONE, AMOUNT_TRAN_NO = item.AMOUNT_TRAN_NO, PAYMENT_NO = item.PAYMENT_NO, INSUR_COMP_CODE = item.INSUR_COMP_CODE, ABSENT_EXAM = item.ABSENT_EXAM, RESULT = item.RESULT, EXPIRE_DATE = item.EXPIRE_DATE, LICENSE = item.LICENSE, CANCEL_REASON = item.CANCEL_REASON, RECORD_STATUS = item.RECORD_STATUS, USER_ID = item.USER_ID, USER_DATE = item.USER_DATE, EXAM_STATUS = item.EXAM_STATUS, REQUEST_NO = item.REQUEST_NO, UPLOAD_GROUP_NO = item.UPLOAD_GROUP_NO, SEQ_NO = item.SEQ_NO, TITLE = item.TITLE, ERROR_MSG = item.ERROR_MSG, Header = summarize.Header }; details.Add(detail); } summarize.ReceiveApplicantDetails = details; return(summarize); }
public void ApplicantFileFactory_Can_Create_ApplicationFileHeader() { IAS.DAL.Interfaces.IIASPersonEntities ctx = DAL.DALFactory.GetPersonContext(); DTO.ApplicantUploadRequest request = new DTO.ApplicantUploadRequest() { FileName = "ApplicantFile.csv", TestingNo = "561655", UploadData = GetUploadDatafromVariable(), UserProfile = CreateUserProfile() }; DTO.ResponseService <ApplicantFileHeader> response = ApplicantFileFactory.ConcreateApplicantFileRequest(ctx, request); ApplicantFileHeader headFile = response.DataResponse; Assert.IsNotNull(headFile.UPLOAD_GROUP_NO); Assert.AreNotEqual(headFile.UPLOAD_GROUP_NO, ""); Assert.AreEqual(headFile.SOURCE_TYPE, "C"); Assert.AreEqual(headFile.PROVINCE_CODE, "30"); Assert.AreEqual(headFile.COMP_CODE, "444"); Assert.AreEqual(headFile.TESTING_DATE, new DateTime(2013, 10, 10)); Assert.AreEqual(headFile.EXAM_APPLY, (short)220); Assert.AreEqual(headFile.EXAM_AMOUNT, 4400m); Assert.AreEqual(headFile.TEST_TIME_CODE, "23"); Assert.IsNotNull(headFile.ExamPlace); //"1,9990000002203,นาง,Imp Broker221,นายหน้าประกันชีวิต221,17/1/2533,ญ,04,1001,," ApplicantFileDetail detail_1 = headFile.ApplicantFileDetails.SingleOrDefault(a => a.ID_CARD_NO == "9156460258875"); Assert.AreEqual(detail_1.LOAD_STATUS, "F"); Assert.AreEqual(detail_1.APPLICANT_CODE, 1); Assert.AreEqual(detail_1.TESTING_NO, "561655"); Assert.AreEqual(detail_1.EXAM_PLACE_CODE, "30444"); Assert.IsNull(detail_1.ACCEPT_OFF_CODE); Assert.IsNotNull(detail_1.APPLY_DATE); Assert.AreEqual(detail_1.ID_CARD_NO, "9156460258875"); Assert.AreEqual(detail_1.PRE_NAME_CODE, "3"); Assert.AreEqual(detail_1.NAMES, "Imp Broker221"); Assert.AreEqual(detail_1.LASTNAME, "นายหน้าประกันชีวิต221"); Assert.AreEqual(detail_1.BIRTH_DATE, (new DateTime(1990, 1, 17))); // "17/1/2533"); Assert.AreEqual(detail_1.SEX, "F"); Assert.AreEqual(detail_1.EDUCATION_CODE, "04"); Assert.AreEqual(detail_1.ADDRESS1, ""); Assert.IsNull(detail_1.ADDRESS2); Assert.IsTrue(String.IsNullOrEmpty(detail_1.AREA_CODE)); Assert.IsTrue(String.IsNullOrEmpty(detail_1.PROVINCE_CODE)); Assert.IsTrue(String.IsNullOrEmpty(detail_1.ZIPCODE)); Assert.IsTrue(String.IsNullOrEmpty(detail_1.TELEPHONE)); Assert.IsTrue(String.IsNullOrEmpty(detail_1.AMOUNT_TRAN_NO)); Assert.IsTrue(String.IsNullOrEmpty(detail_1.PAYMENT_NO)); Assert.AreEqual(detail_1.INSUR_COMP_CODE, "1001"); Assert.IsTrue(String.IsNullOrEmpty(detail_1.ABSENT_EXAM)); Assert.IsTrue(String.IsNullOrEmpty(detail_1.RESULT)); Assert.IsNull(detail_1.EXPIRE_DATE); Assert.IsTrue(String.IsNullOrEmpty(detail_1.LICENSE)); Assert.IsTrue(String.IsNullOrEmpty(detail_1.CANCEL_REASON)); Assert.IsTrue(String.IsNullOrEmpty(detail_1.RECORD_STATUS)); Assert.AreEqual(detail_1.USER_ID, "131106132209758"); Assert.IsNotNull(detail_1.USER_DATE); Assert.IsTrue(String.IsNullOrEmpty(detail_1.EXAM_STATUS)); Assert.IsTrue(String.IsNullOrEmpty(detail_1.REQUEST_NO)); Assert.AreEqual(detail_1.UPLOAD_GROUP_NO, headFile.UPLOAD_GROUP_NO); Assert.AreEqual(detail_1.SEQ_NO, (1).ToString("0000")); Assert.AreEqual(detail_1.TITLE, "นาง"); Assert.IsFalse(String.IsNullOrEmpty(detail_1.ERROR_MSG)); //"2,9990000002211,นางสาว,Imp Broker222,นายหน้าประกันชีวิต222,18/1/2533,ญ,05,1001,," ApplicantFileDetail detail_2 = headFile.ApplicantFileDetails.SingleOrDefault(a => a.ID_CARD_NO == "1990000002211"); Assert.AreEqual(detail_2.LOAD_STATUS, "F"); Assert.AreEqual(detail_2.APPLICANT_CODE, 2); Assert.AreEqual(detail_2.TESTING_NO, "561655"); Assert.AreEqual(detail_2.EXAM_PLACE_CODE, "30444"); Assert.IsNull(detail_2.ACCEPT_OFF_CODE); Assert.IsNotNull(detail_2.APPLY_DATE); Assert.AreEqual(detail_2.ID_CARD_NO, "1990000002211"); Assert.AreEqual(detail_2.PRE_NAME_CODE, "2"); Assert.AreEqual(detail_2.NAMES, "Imp Broker222"); Assert.AreEqual(detail_2.LASTNAME, "นายหน้าประกันชีวิต222"); Assert.AreEqual(detail_2.BIRTH_DATE, (new DateTime(1990, 1, 18))); // "17/1/2533"); Assert.AreEqual(detail_2.SEX, "F"); Assert.AreEqual(detail_2.EDUCATION_CODE, "05"); Assert.AreEqual(detail_2.ADDRESS1, ""); Assert.IsNull(detail_2.ADDRESS2); Assert.IsTrue(String.IsNullOrEmpty(detail_2.AREA_CODE)); Assert.IsTrue(String.IsNullOrEmpty(detail_2.PROVINCE_CODE)); Assert.IsTrue(String.IsNullOrEmpty(detail_2.ZIPCODE)); Assert.IsTrue(String.IsNullOrEmpty(detail_2.TELEPHONE)); Assert.IsTrue(String.IsNullOrEmpty(detail_2.AMOUNT_TRAN_NO)); Assert.IsTrue(String.IsNullOrEmpty(detail_2.PAYMENT_NO)); Assert.AreEqual(detail_2.INSUR_COMP_CODE, "1001"); Assert.IsTrue(String.IsNullOrEmpty(detail_2.ABSENT_EXAM)); Assert.IsTrue(String.IsNullOrEmpty(detail_2.RESULT)); Assert.IsNull(detail_2.EXPIRE_DATE); Assert.IsTrue(String.IsNullOrEmpty(detail_2.LICENSE)); Assert.IsTrue(String.IsNullOrEmpty(detail_2.CANCEL_REASON)); Assert.IsTrue(String.IsNullOrEmpty(detail_2.RECORD_STATUS)); Assert.AreEqual(detail_2.USER_ID, "131106132209758"); Assert.IsNotNull(detail_2.USER_DATE); Assert.IsTrue(String.IsNullOrEmpty(detail_2.EXAM_STATUS)); Assert.IsTrue(String.IsNullOrEmpty(detail_2.REQUEST_NO)); Assert.AreEqual(detail_2.UPLOAD_GROUP_NO, headFile.UPLOAD_GROUP_NO); Assert.AreEqual(detail_2.SEQ_NO, (2).ToString("0000")); Assert.AreEqual(detail_2.TITLE, "นางสาว"); Assert.IsFalse(String.IsNullOrEmpty(detail_2.ERROR_MSG)); //"3,9990000002220,นาย,Imp Broker223,นายหน้าประกันชีวิต223,19/1/2533,ช,04,1001,," ApplicantFileDetail detail_3 = headFile.ApplicantFileDetails.SingleOrDefault(a => a.ID_CARD_NO == "9990000002220"); Assert.AreEqual(detail_3.LOAD_STATUS, "F"); Assert.AreEqual(detail_3.APPLICANT_CODE, 3); Assert.AreEqual(detail_3.TESTING_NO, "561655"); Assert.AreEqual(detail_3.EXAM_PLACE_CODE, "30444"); Assert.IsNull(detail_3.ACCEPT_OFF_CODE); Assert.IsNotNull(detail_3.APPLY_DATE); Assert.AreEqual(detail_3.ID_CARD_NO, "9990000002220"); Assert.AreEqual(detail_3.PRE_NAME_CODE, "1"); Assert.AreEqual(detail_3.NAMES, "Imp Broker223"); Assert.AreEqual(detail_3.LASTNAME, "นายหน้าประกันชีวิต223"); Assert.AreEqual(detail_3.BIRTH_DATE, (new DateTime(1990, 1, 19))); // "17/1/2533"); Assert.AreEqual(detail_3.SEX, "M"); Assert.AreEqual(detail_3.EDUCATION_CODE, "04"); Assert.AreEqual(detail_3.ADDRESS1, ""); Assert.IsNull(detail_3.ADDRESS2); Assert.IsTrue(String.IsNullOrEmpty(detail_3.AREA_CODE)); Assert.IsTrue(String.IsNullOrEmpty(detail_3.PROVINCE_CODE)); Assert.IsTrue(String.IsNullOrEmpty(detail_3.ZIPCODE)); Assert.IsTrue(String.IsNullOrEmpty(detail_3.TELEPHONE)); Assert.IsTrue(String.IsNullOrEmpty(detail_3.AMOUNT_TRAN_NO)); Assert.IsTrue(String.IsNullOrEmpty(detail_3.PAYMENT_NO)); Assert.AreEqual(detail_3.INSUR_COMP_CODE, "1001"); Assert.IsTrue(String.IsNullOrEmpty(detail_3.ABSENT_EXAM)); Assert.IsTrue(String.IsNullOrEmpty(detail_3.RESULT)); Assert.IsNull(detail_3.EXPIRE_DATE); Assert.IsTrue(String.IsNullOrEmpty(detail_3.LICENSE)); Assert.IsTrue(String.IsNullOrEmpty(detail_3.CANCEL_REASON)); Assert.IsTrue(String.IsNullOrEmpty(detail_3.RECORD_STATUS)); Assert.AreEqual(detail_3.USER_ID, "131106132209758"); Assert.IsNotNull(detail_3.USER_DATE); Assert.IsTrue(String.IsNullOrEmpty(detail_3.EXAM_STATUS)); Assert.IsTrue(String.IsNullOrEmpty(detail_3.REQUEST_NO)); Assert.AreEqual(detail_3.UPLOAD_GROUP_NO, headFile.UPLOAD_GROUP_NO); Assert.AreEqual(detail_3.SEQ_NO, (3).ToString("0000")); Assert.AreEqual(detail_3.TITLE, "นาย"); Assert.IsFalse(String.IsNullOrEmpty(detail_3.ERROR_MSG)); }