Exemplo n.º 1
0
        public override ValidationResult SaveDelete(PaymentItemsViewModel formData, ModelStateDictionary modelState)
        {
            ValidationResult result = new ValidationResult();

            result = ValidateFormData(formData, modelState);
            if (result.ErrorFlag)
            {
                return(result);
            }
            try
            {
                using (TransactionScope scope = new TransactionScope())
                {
                    var entPYMItems = new PAYMENT_ITEMS();

                    //Copy data from viewmodel to model - for header
                    MVMMappingService.MoveData(formData, entPYMItems);

                    using (var context = new PYMFEEEntities())
                    {
                        //Delete header
                        context.Entry(entPYMItems).State = System.Data.Entity.EntityState.Deleted;
                        context.SaveChanges();

                        //Delete item
                        context.PAYMENT_ITEMS_CHAGE.RemoveRange(context.PAYMENT_ITEMS_CHAGE.Where(m => m.COMPANY_CODE == entPYMItems.COMPANY_CODE && m.PAYMENT_ITEMS_ID == entPYMItems.ID));
                        context.SaveChanges();
                    }

                    //Commit Header and Item
                    scope.Complete();

                    result.Message     = ResourceText.SuccessfulDelete;
                    result.MessageType = "S";
                }
            }
            catch (Exception ex)
            {
                result.Message = ex.ToString();
                result.ModelStateErrorList.Add(new ModelStateError("", ex.ToString()));
                result.ErrorFlag = true;
            }

            return(result);
        }
Exemplo n.º 2
0
        public override ValidationResult SaveEdit(PaymentItemsViewModel formData, ModelStateDictionary modelState)
        {
            ValidationResult result = new ValidationResult();

            try
            {
                result = ValidateFormData(formData, modelState);
                //Error
                if (result.ErrorFlag)
                {
                    return(result);
                }

                using (TransactionScope scope = new TransactionScope())
                {
                    PAYMENT_ITEMS entPYMItems = new PAYMENT_ITEMS();



                    //Copy data from viewmodel to model - for header
                    MVMMappingService.MoveData(formData, entPYMItems);

                    //Save Header
                    using (var context = new PYMFEEEntities())
                    {
                        context.Entry(entPYMItems).State = System.Data.Entity.EntityState.Modified;
                        context.SaveChanges();


                        #region Update any Table
                        //Update

                        //#region //FEE_ACCRUED_PLAN_ITEM
                        //var entaccr = context.FEE_ACCRUED_PLAN_ITEM.Where(m => m.PAYMENT_ITEMS_NAME == entPYMItems.PAYMENT_ITEMS_NAME && m.COMPANY_CODE == entPYMItems.COMPANY_CODE).ToList();
                        //foreach (var accr in entaccr)
                        //{
                        //    FEE_ACCRUED_PLAN_ITEM ent_accr_item = new FEE_ACCRUED_PLAN_ITEM();
                        //    ent_accr_item = context.FEE_ACCRUED_PLAN_ITEM.Find(accr.ACCRUED_ITEM_ID) ;
                        //    ent_accr_item.PAYMENT_ITEMS_NAME = entPYMItems.PAYMENT_ITEMS_NAME;
                        //    ent_accr_item.CCT_CODE = entPYMItems.CCT_CODE;
                        //    ent_accr_item.COST_CENTER = entPYMItems.COST_CENTER;
                        //    ent_accr_item.FUND_CODE = entPYMItems.FUND_CODE;
                        //    ent_accr_item.GL_ACCOUNT = entPYMItems.GL_ACCOUNT;
                        //    ent_accr_item.CHANNELS = entPYMItems.CHANNELS;
                        //    context.FEE_ACCRUED_PLAN_ITEM.Attach(ent_accr_item);
                        //    context.Entry(ent_accr_item).State = System.Data.Entity.EntityState.Modified;
                        //    context.SaveChanges();

                        //}
                        //#endregion
                        //#region//FEE_ACCRUED_PLAN_ITEM_SUB
                        //var entaccrsub = context.FEE_ACCRUED_PLAN_ITEM_SUB.Where(m => m.PAYMENT_ITEMS_NAME == entPYMItems.PAYMENT_ITEMS_NAME && m.COMPANY_CODE == entPYMItems.COMPANY_CODE).ToList();
                        //foreach (var accr in entaccrsub)
                        //{
                        //    FEE_ACCRUED_PLAN_ITEM_SUB ent_accr_item = new FEE_ACCRUED_PLAN_ITEM_SUB();
                        //    ent_accr_item = context.FEE_ACCRUED_PLAN_ITEM_SUB.Find(accr.ID);
                        //    ent_accr_item.PAYMENT_ITEMS_NAME = entPYMItems.PAYMENT_ITEMS_NAME;
                        //    ent_accr_item.CCT_CODE = entPYMItems.CCT_CODE;
                        //    ent_accr_item.COST_CENTER = entPYMItems.COST_CENTER;
                        //    ent_accr_item.FUND_CODE = entPYMItems.FUND_CODE;
                        //    ent_accr_item.GL_ACCOUNT = entPYMItems.GL_ACCOUNT;
                        //    ent_accr_item.CHANNELS = entPYMItems.CHANNELS;
                        //    context.FEE_ACCRUED_PLAN_ITEM_SUB.Attach(ent_accr_item);
                        //    context.Entry(ent_accr_item).State = System.Data.Entity.EntityState.Modified;
                        //    context.SaveChanges();

                        //}
                        //#endregion
                        //#region //FEE_ACCRUED_PLAN_UPLOAD_ITEM_LOG
                        //var entaccrup = context.FEE_ACCRUED_PLAN_UPLOAD_ITEM_LOG.Where(m => m.FEE == entPYMItems.PAYMENT_ITEMS_NAME && m.COMPANY_CODE == entPYMItems.COMPANY_CODE).ToList();
                        //foreach (var accr in entaccrup)
                        //{
                        //    FEE_ACCRUED_PLAN_UPLOAD_ITEM_LOG ent_accr_item = new FEE_ACCRUED_PLAN_UPLOAD_ITEM_LOG();
                        //    ent_accr_item = context.FEE_ACCRUED_PLAN_UPLOAD_ITEM_LOG.Find(accr.ID);
                        //    ent_accr_item.FEE = entPYMItems.PAYMENT_ITEMS_NAME;
                        //    ent_accr_item.CCT_CODE = entPYMItems.CCT_CODE;
                        //    ent_accr_item.FUND_CODE = entPYMItems.FUND_CODE;
                        //    ent_accr_item.GL_ACCOUNT = entPYMItems.GL_ACCOUNT;
                        //    context.FEE_ACCRUED_PLAN_UPLOAD_ITEM_LOG.Attach(ent_accr_item);
                        //    context.Entry(ent_accr_item).State = System.Data.Entity.EntityState.Modified;
                        //    context.SaveChanges();

                        //}
                        //#endregion
                        //#region//FEE_INVOICE
                        //var entinv = context.FEE_INVOICE.Where(m => m.PAYMENT_ITEMS_NAME == entPYMItems.PAYMENT_ITEMS_NAME && m.COMPANY_CODE == entPYMItems.COMPANY_CODE).ToList();
                        //foreach (var accr in entinv)
                        //{
                        //    FEE_INVOICE ent_accr_item = new FEE_INVOICE();
                        //    ent_accr_item = context.FEE_INVOICE.Find(accr.ID);
                        //    ent_accr_item.PAYMENT_ITEMS_NAME = entPYMItems.PAYMENT_ITEMS_NAME;
                        //    ent_accr_item.CCT_CODE = entPYMItems.CCT_CODE;
                        //    ent_accr_item.COST_CENTER = entPYMItems.COST_CENTER;
                        //    ent_accr_item.FUND_CODE = entPYMItems.FUND_CODE;
                        //    ent_accr_item.GL_ACCOUNT = entPYMItems.GL_ACCOUNT;
                        //    ent_accr_item.CHANNELS = entPYMItems.CHANNELS;
                        //    context.FEE_INVOICE.Attach(ent_accr_item);
                        //    context.Entry(ent_accr_item).State = System.Data.Entity.EntityState.Modified;
                        //    context.SaveChanges();

                        //}
                        //#endregion
                        //#region //FEE_INVOICE_ITEM
                        //var entinvitem = context.FEE_INVOICE_ITEM.Where(m => m.PAYMENT_ITEMS_NAME == entPYMItems.PAYMENT_ITEMS_NAME && m.COMPANY_CODE == entPYMItems.COMPANY_CODE).ToList();
                        //foreach (var accr in entinvitem)
                        //{
                        //    FEE_INVOICE_ITEM ent_accr_item = new FEE_INVOICE_ITEM();
                        //    ent_accr_item = context.FEE_INVOICE_ITEM.Find(accr.INV_ITEM_NO);
                        //    ent_accr_item.PAYMENT_ITEMS_NAME = entPYMItems.PAYMENT_ITEMS_NAME;
                        //    ent_accr_item.COST_CENTER = entPYMItems.COST_CENTER;
                        //    ent_accr_item.FUND_CODE = entPYMItems.FUND_CODE;
                        //    ent_accr_item.GL_ACCOUNT = entPYMItems.GL_ACCOUNT;
                        //    ent_accr_item.CHANNELS = entPYMItems.CHANNELS;
                        //    context.FEE_INVOICE_ITEM.Attach(ent_accr_item);
                        //    context.Entry(ent_accr_item).State = System.Data.Entity.EntityState.Modified;
                        //    context.SaveChanges();

                        //}
                        //#endregion
                        //#region//FEE_INVOICE_UPLOAD_ITEM_LOG
                        //var entinvtup = context.FEE_INVOICE_UPLOAD_ITEM_LOG.Where(m => m.FEE == entPYMItems.PAYMENT_ITEMS_NAME && m.COMPANY_CODE == entPYMItems.COMPANY_CODE).ToList();
                        //foreach (var accr in entinvtup)
                        //{
                        //    FEE_INVOICE_UPLOAD_ITEM_LOG ent_accr_item = new FEE_INVOICE_UPLOAD_ITEM_LOG();
                        //    ent_accr_item = context.FEE_INVOICE_UPLOAD_ITEM_LOG.Find(accr.ID);
                        //    ent_accr_item.FEE = entPYMItems.PAYMENT_ITEMS_NAME;
                        //    ent_accr_item.CCT_CODE = entPYMItems.CCT_CODE;
                        //    ent_accr_item.FUND_CODE = entPYMItems.FUND_CODE;
                        //    ent_accr_item.GL_ACCOUNT = entPYMItems.GL_ACCOUNT;
                        //    ent_accr_item.CHANNELS = entPYMItems.CHANNELS;
                        //    context.FEE_INVOICE_UPLOAD_ITEM_LOG.Attach(ent_accr_item);
                        //    context.Entry(ent_accr_item).State = System.Data.Entity.EntityState.Modified;
                        //    context.SaveChanges();

                        //}
                        //#endregion

                        #endregion
                        //Save Item
                        int sequence = 1;

                        foreach (var item in formData.pymItemsChargeList)
                        {
                            var entPYMItemsCharge = new PAYMENT_ITEMS_CHAGE();
                            item.PAYMENT_ITEMS_ID   = entPYMItems.ID;
                            item.SEQUENCE           = sequence;
                            item.COMPANY_CODE       = formData.COMPANY_CODE;
                            item.PAYMENT_ITEMS_NAME = formData.PAYMENT_ITEMS_NAME;
                            MVMMappingService.MoveData(item, entPYMItemsCharge);
                            if (item.DeleteFlag)
                            {
                                ValidationResult resultdel = new ValidationResult();
                                resultdel = ValidateDeleteData(formData);
                                //Error
                                if (resultdel.ErrorFlag)
                                {
                                    return(resultdel);
                                }
                                else
                                {
                                    if (entPYMItemsCharge.ID != 0)
                                    {
                                        //Delete item
                                        context.Entry(entPYMItemsCharge).State = System.Data.Entity.EntityState.Deleted;
                                        context.SaveChanges();
                                    }
                                }
                            }
                            else
                            {
                                entPYMItemsCharge.SEQUENCE = sequence;
                                sequence++;
                                if (entPYMItemsCharge.ID != 0)
                                {
                                    context.Entry(entPYMItemsCharge).State = System.Data.Entity.EntityState.Modified;
                                }
                                else
                                {
                                    context.PAYMENT_ITEMS_CHAGE.Add(entPYMItemsCharge);
                                }
                            }

                            context.SaveChanges();
                        }
                    }

                    //Commit Header and Item
                    scope.Complete();

                    result.Message     = ResourceText.SuccessfulEdit;
                    result.MessageType = "S";
                }
            }
            catch (Exception ex)
            {
                result.Message = ex.ToString();
                result.ModelStateErrorList.Add(new ModelStateError("", ex.ToString()));
                result.ErrorFlag = true;
            }

            return(result);
        }
Exemplo n.º 3
0
        public override ValidationResult SaveCreate(PaymentItemsViewModel formData, ModelStateDictionary modelState)
        {
            ValidationResult result = new ValidationResult();

            try
            {
                result = ValidateFormData(formData, modelState);
                //Error
                if (result.ErrorFlag)
                {
                    return(result);
                }

                using (TransactionScope scope = new TransactionScope())
                {
                    var entPYMItems = new PAYMENT_ITEMS();
                    //Generate Auto Code
                    GeneratePaymentItemCode(formData);
                    //Copy data from viewmodel to model - for header
                    MVMMappingService.MoveData(formData, entPYMItems);

                    //Save Header
                    using (var context = new PYMFEEEntities())
                    {
                        context.PAYMENT_ITEMS.Add(entPYMItems);
                        context.SaveChanges();

                        //Save Item
                        //Copy data from viewmodel to model - for line item
                        int sequence = 1;

                        foreach (var item in formData.pymItemsChargeList)
                        {
                            if (item.DeleteFlag)
                            {
                                continue;
                            }

                            var entPYMItemsCharge = new PAYMENT_ITEMS_CHAGE();
                            item.PAYMENT_ITEMS_ID   = entPYMItems.ID;
                            item.SEQUENCE           = sequence;
                            item.COMPANY_CODE       = formData.COMPANY_CODE;
                            item.PAYMENT_ITEMS_NAME = formData.PAYMENT_ITEMS_NAME;
                            MVMMappingService.MoveData(item, entPYMItemsCharge);
                            context.PAYMENT_ITEMS_CHAGE.Add(entPYMItemsCharge);
                            context.SaveChanges();

                            sequence++;
                        }
                    }

                    scope.Complete();

                    result.Message     = ResourceText.SuccessfulSave;
                    result.MessageType = "S";
                }
            }
            catch (Exception ex)
            {
                result.Message = ex.ToString();
                result.ModelStateErrorList.Add(new ModelStateError("", ex.ToString()));
                result.ErrorFlag = true;
            }

            return(result);
        }