public async Task <IActionResult> OnPostRejectAsync()
        {
            string storeId    = Request.Form["id-store"];
            bool   completeOk = bool.TryParse(Request.Form["checkbox-complete"], out bool completeCheck);
            bool   stageOk    = int.TryParse(Request.Form["next-stage"], out int stageId);

            if (!stageOk || !completeOk)
            {
                return(NotFound());
            }

            WebAppUser webAppUser = await _userHandler.GetUserAsync(HttpContext.User);

            ApprovalHandler approvalHandler = new ApprovalHandler(_context, storeId);

            bool isFirstStage = await approvalHandler.IsFirstStageAsync();

            bool isApprover = await approvalHandler.IsApproverAsync(webAppUser);

            if (!isApprover || isFirstStage)
            {
                return(NotFound());
            }

            bool isOk = await approvalHandler.ActionReject(completeCheck, stageId, webAppUser);

            if (isOk)
            {
                await SendEmailReject(approvalHandler);
            }
            return(Ok());
        }
Exemple #2
0
        public async Task <IViewComponentResult> InvokeAsync(string idForm)
        {
            var user = await _userManager.GetUserAsync(HttpContext.User);

            var mtdFormList = await ApprovalHandler.GetWaitStoreIds(_context, user, idForm);

            int pending = mtdFormList.Count();

            string    searchText = "";
            bool      whiteList  = false;
            MtdFilter filter     = await _context.MtdFilter.FirstOrDefaultAsync(x => x.IdUser == user.Id && x.MtdForm == idForm);

            if (filter != null)
            {
                searchText = filter.SearchText;
                whiteList  = filter.WaitList == 0 ? false : true;
            }

            HeaderModelView headerModelView = new HeaderModelView
            {
                IdForm         = idForm,
                SearchText     = searchText,
                WaitList       = whiteList,
                Pending        = pending,
                IsApprovalForm = await ApprovalHandler.IsApprovalFormAsync(_context, idForm)
            };

            return(View("Default", headerModelView));
        }
        private async Task <bool> SendEmailApprove(ApprovalHandler approvalHandler)
        {
            string ownerId = await approvalHandler.GetOwnerID();

            WebAppUser userCurrent = await _userHandler.GetUserAsync(HttpContext.User);

            WebAppUser userOwner = _userHandler.Users.Where(x => x.Id == ownerId).FirstOrDefault();
            string     storeId   = await approvalHandler.GetStoreID();

            MtdForm mtdForm = await approvalHandler.GetFormAsync();

            MtdApprovalStage stageNext = await approvalHandler.GetNextStageAsync();

            if (stageNext != null)
            {
                WebAppUser userNext   = _userHandler.Users.Where(x => x.Id == stageNext.UserId).FirstOrDefault();
                BlankEmail blankEmail = new BlankEmail
                {
                    Subject = _localizer["Approval event"],
                    Email   = userNext.Email,
                    Header  = _localizer["Approval required"],
                    Content = new List <string> {
                        $"<strong>{_localizer["Document"]} - {mtdForm.Name}</strong>",
                        $"{_localizer["User"]} {userCurrent.Title} {_localizer["approved the document at"]} {DateTime.Now}",
                        $"{_localizer["Click on the link to view the document that required to approve."]}",
                        $"<a href='http://{HttpContext.Request.Host}/workplace/store/details?id={storeId}'>{_localizer["Document link"]}</a>"
                    }
                };

                await _emailSender.SendEmailBlankAsync(blankEmail);
            }

            bool IsFirstStage = await approvalHandler.IsFirstStageAsync();

            if (!IsFirstStage)
            {
                BlankEmail blankEmail = new BlankEmail
                {
                    Subject = _localizer["Approval event"],
                    Email   = userOwner.Email,
                    Header  = _localizer["Approval process event"],
                    Content = new List <string> {
                        $"<strong>{_localizer["Document"]} - {mtdForm.Name}</strong>",
                        $"{_localizer["User"]} {userCurrent.Title} {_localizer["approved the document at"]} {DateTime.Now}",
                        $"{_localizer["Click on the link to view the document."]}",
                        $"<a href='http://{HttpContext.Request.Host}/workplace/store/details?id={storeId}'>{_localizer["Document link"]}</a>"
                    }
                };
                await _emailSender.SendEmailBlankAsync(blankEmail);
            }

            return(true);
        }
Exemple #4
0
        public async Task <IViewComponentResult> InvokeAsync(string idForm)
        {
            var user = await _userHandler.GetUserAsync(HttpContext.User);

            List <string> partIds = await _userHandler.GetAllowPartsForView(user, idForm);

            FilterHandler handlerFilter = new FilterHandler(_context, idForm, user, _userHandler);
            Incomer       incomer       = await handlerFilter.GetIncomerDataAsync();

            TypeQuery typeQuery = await handlerFilter.GetTypeQueryAsync();

            OutFlow outFlow = await handlerFilter.GetStackFlowAsync(incomer, typeQuery);

            IList <MtdStore> mtdStore = outFlow.MtdStores;

            decimal count = (decimal)outFlow.Count / incomer.PageSize;

            pageCount = Convert.ToInt32(Math.Round(count, MidpointRounding.AwayFromZero));
            pageCount = pageCount == 0 ? 1 : pageCount;

            IList <string> storeIds = mtdStore.Select(s => s.Id).ToList();
            IList <string> fieldIds = fieldIds = incomer.FieldForColumn.Select(x => x.Id).ToList();

            IList <string> allowFiieldIds = await _context.MtdFormPartField.Where(x => partIds.Contains(x.MtdFormPart)).Select(x => x.Id).ToListAsync();

            fieldIds = allowFiieldIds.Where(x => fieldIds.Contains(x)).ToList();

            StackHandler          handlerStack  = new StackHandler(_context);
            IList <MtdStoreStack> mtdStoreStack = await handlerStack.GetStackAsync(storeIds, fieldIds);

            IList <MtdStoreApproval> mtdStoreApprovals = await _context.MtdStoreApproval.Where(x => storeIds.Contains(x.Id)).ToListAsync();

            List <ApprovalStore> approvalStores = await ApprovalHandler.GetStoreStatusAsync(_context, storeIds, user);

            bool isApprovalForm = await ApprovalHandler.IsApprovalFormAsync(_context, idForm);

            RowsModelView rowsModel = new RowsModelView
            {
                IdForm            = idForm,
                SearchNumber      = incomer.SearchNumber,
                PageCount         = pageCount,
                MtdFormPartFields = incomer.FieldForColumn.Where(x => fieldIds.Contains(x.Id)).ToList(),
                MtdStores         = mtdStore,
                MtdStoreStack     = mtdStoreStack,
                WaitList          = incomer.WaitList == 1 ? true : false,
                ShowDate          = await handlerFilter.IsShowDate(),
                ShowNumber        = await handlerFilter.IsShowNumber(),
                ApprovalStores    = approvalStores,
                IsAppromalForm    = isApprovalForm
            };

            return(View("Default", rowsModel));
        }
        public async Task <IActionResult> OnPostApproveAsync()
        {
            string     storeId    = Request.Form["id-store"];
            WebAppUser webAppUser = await _userHandler.GetUserAsync(HttpContext.User);

            ApprovalHandler approvalHandler = new ApprovalHandler(_context, storeId);
            bool            isApprover      = await approvalHandler.IsApproverAsync(webAppUser);

            if (!isApprover)
            {
                return(NotFound());
            }

            bool isOk = await approvalHandler.ActionApprove(webAppUser);

            if (isOk)
            {
                await SendEmailApprove(approvalHandler);
            }
            return(Ok());
        }
Exemple #6
0
        public async Task <IActionResult> OnGetAsync(string id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            MtdStore = await _context.MtdStore.FirstOrDefaultAsync(m => m.Id == id);

            if (MtdStore == null)
            {
                return(NotFound());
            }

            var user = await _userHandler.GetUserAsync(HttpContext.User);

            bool isViewer = await _userHandler.IsViewer(user, MtdStore.MtdForm, MtdStore.Id);

            IsEditor = await _userHandler.IsEditor(user, MtdStore.MtdForm, MtdStore.Id);

            IsInstallerOwner = await _userHandler.IsInstallerOwner(user, MtdStore.MtdForm, MtdStore.Id);

            if (!isViewer)
            {
                return(Forbid());
            }


            MtdForm = await _context.MtdForm.Include(m => m.InverseParentNavigation).FirstOrDefaultAsync(x => x.Id == MtdStore.MtdForm);

            MtdLogDocument edited = await _context.MtdLogDocument.Where(x => x.MtdStore == MtdStore.Id).OrderByDescending(x => x.TimeCh).FirstOrDefaultAsync();

            MtdLogDocument created = await _context.MtdLogDocument.Where(x => x.MtdStore == MtdStore.Id).OrderBy(x => x.TimeCh).FirstOrDefaultAsync();

            StoreOwner = await _context.MtdStoreOwner.Where(x => x.Id == MtdStore.Id).FirstOrDefaultAsync();

            ChangesHistory = new ChangesHistory
            {
                CreateByTime = MtdStore.Timecr.ToString()
            };

            if (edited != null)
            {
                ChangesHistory.LastEditedUser = edited.UserName;
                ChangesHistory.LastEditedTime = edited.TimeCh.ToString();
            }

            if (created != null)
            {
                if (MtdStore.Timecr.Date == created.TimeCh.Date)
                {
                    ChangesHistory.CreateByUser = created.UserName;
                }
            }

            List <WebAppUser> webAppUsers = await _userHandler.GetUsersInGroupsAsync(user);

            ViewData["UsersList"] = new SelectList(webAppUsers, "Id", "Title");

            ApprovalHandler approvalHandler = new ApprovalHandler(_context, MtdStore.Id);

            IsApprover = await approvalHandler.IsApproverAsync(user);

            IsFirstStage = await approvalHandler.IsFirstStageAsync();

            IList <MtdApprovalStage> stages = await approvalHandler.GetStagesDownAsync();

            ViewData["Stages"] = new SelectList(stages.OrderByDescending(x => x.Stage), "Id", "Name");

            List <string> partIds = await approvalHandler.GetWilBeBlockedPartsIds();

            BlockParts = new List <MtdFormPart>();
            if (partIds.Count > 0)
            {
                BlockParts = await _context.MtdFormPart.Where(x => partIds.Contains(x.Id)).OrderBy(x => x.Sequence).ToListAsync();
            }
            IsFormApproval = await approvalHandler.IsApprovalFormAsync();

            if (IsFormApproval)
            {
                ApprovalStatus = await approvalHandler.GetStatusAsync(user);
            }


            return(Page());
        }
Exemple #7
0
        public async Task <OutFlow> GetStackFlowAsync(Incomer incomer, TypeQuery typeQuery)
        {
            OutFlow outFlow = new OutFlow();

            if (incomer.WaitList == 1)
            {
                List <string> storesForUser = await ApprovalHandler.GetWaitStoreIds(_context, _user, incomer.IdForm);

                queryMtdStore = queryMtdStore.Where(x => storesForUser.Contains(x.Id));
                outFlow       = new OutFlow
                {
                    Count     = queryMtdStore.Count(),
                    MtdStores = await queryMtdStore.OrderByDescending(x => x.Sequence).Skip((incomer.Page - 1) * incomer.PageSize).Take(incomer.PageSize).ToListAsync()
                };

                return(outFlow);
            }

            IList <MtdFilterScript> scripts = await GetScriptsAsync();

            if (scripts != null && scripts.Count > 0)
            {
                foreach (var fs in scripts)
                {
                    if (fs.Apply == 1)
                    {
                        queryMtdStore = queryMtdStore.FromSql(fs.Script);
                    }
                }
            }

            IList <Claim> claims = await _userHandler.GetClaimsAsync(_user);

            bool ownOnly = claims.Where(x => x.Type == incomer.IdForm && x.Value.Contains("view-own")).Any();

            if (ownOnly)
            {
                IList <string> storeIds = await _context.MtdStoreOwner.Where(x => x.UserId == _user.Id).Select(x => x.Id).ToListAsync();

                queryMtdStore = queryMtdStore.Where(x => storeIds.Contains(x.Id));
            }

            bool groupView = claims.Where(x => x.Type == incomer.IdForm && x.Value.Contains("view-group")).Any();

            if (groupView)
            {
                IList <WebAppUser> appUsers = await _userHandler.GetUsersInGroupsAsync(_user);

                List <string>  userIds  = appUsers.Select(x => x.Id).ToList();
                IList <string> storeIds = await _context.MtdStoreOwner.Where(x => userIds.Contains(x.UserId)).Select(x => x.Id).ToListAsync();

                queryMtdStore = queryMtdStore.Where(x => storeIds.Contains(x.Id));
            }

            switch (typeQuery)
            {
            case TypeQuery.number:
            {
                outFlow = await GetDataForNumberAsync(incomer);

                break;
            }

            case TypeQuery.text:
            {
                outFlow = await GetDataForTextAsync(incomer);

                break;
            }

            case TypeQuery.field:
            case TypeQuery.textField:
            {
                outFlow = await GetDataForFieldAsync(incomer);

                break;
            }

            default:
            {
                outFlow = await GetDataForEmptyAsync(incomer);

                break;
            }
            }

            return(outFlow);
        }
Exemple #8
0
        private async Task <DataSet> CreateDataSetAsync(MtdStore store, FormType type = FormType.Details)
        {
            if (store == null)
            {
                return(null);
            }
            WebAppUser webAppUser = await _userHandler.GetUserAsync(HttpContext.User);

            List <MtdFormPart>  mtdFormParts = new List <MtdFormPart>();
            IList <MtdFormPart> parts        = await GetPartsAsync(store.MtdForm);

            bool isReviewer = await _userHandler.IsReviewer(webAppUser, store.MtdForm);

            ApprovalHandler approvalHandler = new ApprovalHandler(_context, store.Id);
            List <string>   blockedParts    = new List <string>();

            if (!isReviewer)
            {
                blockedParts = await approvalHandler.GetBlockedPartsIds();
            }

            foreach (MtdFormPart formPart in parts)
            {
                if (type == FormType.Edit)
                {
                    bool isEditor = await _userHandler.IsEditorPartAsync(webAppUser, formPart.Id);

                    if (isEditor && !blockedParts.Contains(formPart.Id))
                    {
                        mtdFormParts.Add(formPart);
                    }
                }
                else
                {
                    bool isViewer = await _userHandler.IsViewerPartAsync(webAppUser, formPart.Id);

                    if (isViewer)
                    {
                        mtdFormParts.Add(formPart);
                    }
                }
            }

            IList <MtdFormPartField> mtdFormPartFields = await GetFieldsAsync(mtdFormParts);

            var mtdStore = await _context.MtdStore
                           .Include(m => m.ParentNavigation)
                           .Include(m => m.MtdFormNavigation)
                           .ThenInclude(m => m.MtdFormHeader)
                           .Include(m => m.MtdFormNavigation)
                           .ThenInclude(m => m.ParentNavigation)
                           .FirstOrDefaultAsync(m => m.Id == store.Id);

            IList <long> ids = await _context.MtdStoreStack.Where(x => x.MtdStore == mtdStore.Id).Select(x => x.Id).ToListAsync();

            IList <MtdStoreStack> stack = await _context.MtdStoreStack
                                          .Include(m => m.MtdStoreStackText)
                                          .Include(m => m.MtdStoreStackDecimal)
                                          .Include(m => m.MtdStoreStackFile)
                                          .Include(m => m.MtdStoreStackDate)
                                          .Include(m => m.MtdStoreStackInt)
                                          .Include(m => m.MtdStoreLink)
                                          .Where(x => ids.Contains(x.Id))
                                          .ToListAsync();


            DataSet result = new DataSet()
            {
                Store  = mtdStore,
                Parts  = mtdFormParts,
                Fields = mtdFormPartFields,
                Stack  = stack,
            };

            return(result);
        }
Exemple #9
0
        public async Task <IActionResult> OnPostSaveAsync()
        {
            IFormCollection requestForm = await Request.ReadFormAsync();

            string Id = requestForm["idStore"];

            MtdStore mtdStore = await _context.MtdStore.FirstOrDefaultAsync(x => x.Id == Id);

            if (mtdStore == null)
            {
                return(NotFound());
            }

            WebAppUser webAppUser = await _userHandler.GetUserAsync(HttpContext.User);

            bool isEditor = await _userHandler.IsEditor(webAppUser, mtdStore.MtdForm, mtdStore.Id);

            ApprovalHandler approvalHandler = new ApprovalHandler(_context, mtdStore.Id);
            ApprovalStatus  approvalStatus  = await approvalHandler.GetStatusAsync(webAppUser);

            if (!isEditor || approvalStatus == ApprovalStatus.Rejected || approvalStatus == ApprovalStatus.Waiting)
            {
                return(Ok(403));
            }

            MtdLogDocument mtdLog = new MtdLogDocument
            {
                MtdStore = mtdStore.Id,
                TimeCh   = DateTime.Now,
                UserId   = webAppUser.Id,
                UserName = webAppUser.Title
            };


            OutData outData = await CreateDataAsync(Id, webAppUser, TypeAction.Edit, requestForm);

            List <MtdStoreStack> stackNew = outData.MtdStoreStacks;


            IList <MtdStoreStack> stackOld = await _context.MtdStoreStack
                                             .Include(m => m.MtdStoreStackText)
                                             .Include(m => m.MtdStoreStackDecimal)
                                             .Include(m => m.MtdStoreStackFile)
                                             .Include(m => m.MtdStoreStackDate)
                                             .Include(m => m.MtdStoreStackInt)
                                             .Include(m => m.MtdStoreLink)
                                             .Where(x => x.MtdStore == Id).ToListAsync();

            foreach (MtdStoreStack stack in stackOld)
            {
                MtdStoreStack stackForField = stackNew.SingleOrDefault(x => x.MtdFormPartField == stack.MtdFormPartField);
                if (stackForField != null)
                {
                    stack.MtdStoreStackText    = stackForField.MtdStoreStackText;
                    stack.MtdStoreLink         = stackForField.MtdStoreLink;
                    stack.MtdStoreStackDate    = stackForField.MtdStoreStackDate;
                    stack.MtdStoreStackDecimal = stackForField.MtdStoreStackDecimal;
                    stack.MtdStoreStackFile    = stackForField.MtdStoreStackFile;
                    stack.MtdStoreStackInt     = stackForField.MtdStoreStackInt;
                }
            }


            try
            {
                if (stackNew.Count > 0)
                {
                    int count = await _context.MtdStoreLink.Where(x => x.MtdStore == Id).CountAsync();

                    if (count > 0)
                    {
                        string titleText             = outData.MtdStoreStacks.FirstOrDefault(x => x.MtdFormPartField == outData.MtdFormPartField.Id).MtdStoreStackText.Register;
                        IList <MtdStoreLink> linkIds = await _context.MtdStoreLink.Where(x => x.MtdStore == Id).Select(x => new MtdStoreLink {
                            Id = x.Id, MtdStore = x.MtdStore, Register = titleText
                        }).ToListAsync();

                        _context.MtdStoreLink.UpdateRange(linkIds);
                    }

                    _context.MtdStoreStack.UpdateRange(stackOld);


                    List <MtdStoreStack> stackNewOnly = stackNew.Where(x => !stackOld.Select(f => f.MtdFormPartField).Contains(x.MtdFormPartField)).ToList();

                    if (stackNewOnly.Any())
                    {
                        await _context.MtdStoreStack.AddRangeAsync(stackNewOnly);
                    }

                    _context.MtdLogDocument.Add(mtdLog);
                    await _context.SaveChangesAsync();
                }
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!MtdStoreExists(Id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(Ok());
        }
Exemple #10
0
        private async Task <OutData> CreateDataAsync(string Id, WebAppUser user, TypeAction typeAction, IFormCollection requestForm)
        {
            var store = await _context.MtdStore
                        .Include(m => m.MtdFormNavigation)
                        .ThenInclude(p => p.MtdFormPart)
                        .FirstOrDefaultAsync(m => m.Id == Id);

            List <string> partsIds   = new List <string>();
            bool          isReviewer = await _userHandler.IsReviewer(user, store.MtdForm);

            ApprovalHandler approvalHandler = new ApprovalHandler(_context, store.Id);
            List <string>   blockedParts    = new List <string>();

            if (!isReviewer)
            {
                blockedParts = await approvalHandler.GetBlockedPartsIds();
            }

            foreach (var part in store.MtdFormNavigation.MtdFormPart)
            {
                switch (typeAction)
                {
                case TypeAction.Create:
                {
                    if (await _userHandler.IsCreatorPartAsync(user, part.Id))
                    {
                        partsIds.Add(part.Id);
                    }
                    break;
                }

                default:
                {
                    if (await _userHandler.IsEditorPartAsync(user, part.Id) && !blockedParts.Contains(part.Id))
                    {
                        partsIds.Add(part.Id);
                    }
                    break;
                }
                }
            }


            var fields = await _context.MtdFormPartField.Include(m => m.MtdFormPartNavigation)
                         .Where(x => partsIds.Contains(x.MtdFormPartNavigation.Id))
                         .OrderBy(x => x.MtdFormPartNavigation.Sequence)
                         .ThenBy(x => x.Sequence)
                         .ToListAsync();

            var titleField = fields.FirstOrDefault(x => x.MtdSysType == 1);

            List <MtdStoreStack> stackNew = new List <MtdStoreStack>();

            foreach (MtdFormPartField field in fields)
            {
                string        data          = requestForm[field.Id];
                MtdStoreStack mtdStoreStack = new MtdStoreStack()
                {
                    MtdStore         = Id,
                    MtdFormPartField = field.Id
                };


                switch (field.MtdSysType)
                {
                case 2:
                {
                    if (data != string.Empty)
                    {
                        bool isOkInt = int.TryParse(data, out int result);
                        if (isOkInt)
                        {
                            mtdStoreStack.MtdStoreStackInt = new MtdStoreStackInt {
                                Register = result
                            };
                        }
                    }
                    break;
                }

                case 3:
                {
                    if (data != string.Empty)
                    {
                        string separ       = CultureInfo.CurrentCulture.NumberFormat.NumberDecimalSeparator;
                        bool   isOkDecimal = decimal.TryParse(data.Replace(".", separ), out decimal result);
                        if (isOkDecimal)
                        {
                            mtdStoreStack.MtdStoreStackDecimal = new MtdStoreStackDecimal {
                                Register = result
                            };
                        }
                    }
                    break;
                }

                case 5:
                case 6:
                case 10:
                {
                    if (data != string.Empty)
                    {
                        bool isOkDate = DateTime.TryParse(data, out DateTime dateTime);
                        if (isOkDate)
                        {
                            mtdStoreStack.MtdStoreStackDate = new MtdStoreStackDate {
                                Register = dateTime
                            };
                        }
                    }
                    break;
                }

                case 7:
                case 8:
                {
                    var actionDelete = requestForm[$"{field.Id}-delete"];

                    if (actionDelete.FirstOrDefault() == null || actionDelete.FirstOrDefault() == "false")
                    {
                        IFormFile file = requestForm.Files.FirstOrDefault(x => x.Name == field.Id);

                        if (file != null)
                        {
                            byte[] streamArray = new byte[file.Length];
                            await file.OpenReadStream().ReadAsync(streamArray, 0, streamArray.Length);

                            mtdStoreStack.MtdStoreStackFile = new MtdStoreStackFile()
                            {
                                Register = streamArray,
                                FileName = file.FileName,
                                FileSize = streamArray.Length,
                                FileType = file.ContentType
                            };
                        }

                        if (file == null)
                        {
                            MtdStoreStack stackOld = await _context.MtdStoreStack
                                                     .Include(m => m.MtdStoreStackFile)
                                                     .OrderByDescending(x => x.Id)
                                                     .FirstOrDefaultAsync(x => x.MtdStore == Id & x.MtdFormPartField == field.Id);

                            if (stackOld != null && stackOld.MtdStoreStackFile != null)
                            {
                                mtdStoreStack.MtdStoreStackFile = new MtdStoreStackFile()
                                {
                                    FileName = stackOld.MtdStoreStackFile.FileName,
                                    FileSize = stackOld.MtdStoreStackFile.FileSize,
                                    Register = stackOld.MtdStoreStackFile.Register,
                                    FileType = stackOld.MtdStoreStackFile.FileType,
                                };
                            }
                        }
                    }

                    break;
                }

                case 11:
                {
                    if (data != string.Empty)
                    {
                        string datalink = Request.Form[$"{field.Id}-datalink"];
                        mtdStoreStack.MtdStoreLink = new MtdStoreLink {
                            MtdStore = data, Register = datalink
                        };
                    }

                    break;
                }

                case 12:
                {
                    bool isOkCheck = bool.TryParse(data, out bool check);
                    if (isOkCheck)
                    {
                        mtdStoreStack.MtdStoreStackInt = new MtdStoreStackInt {
                            Register = check ? 1 : 0
                        };
                    }
                    break;
                }

                default:
                {
                    if (data != string.Empty)
                    {
                        mtdStoreStack.MtdStoreStackText = new MtdStoreStackText()
                        {
                            Register = data
                        };
                    }
                    break;
                }
                }

                stackNew.Add(mtdStoreStack);
            }

            OutData outParam = new OutData()
            {
                MtdFormPartField = titleField,
                MtdStoreStacks   = stackNew,
            };

            return(outParam);
        }
Exemple #11
0
 public ApprovalHandler RegisterNext(ApprovalHandler next)
 {
     Next = next;
     return(Next);
 }