示例#1
0
        public async Task <ActionResult> Index(MachineDetailPage currentPage, string maid)
        {
            var organization = UserManager.GetActiveCustomer(HttpContext);

            if (organization == null)
            {
                return(View("~/Views/Machine/MachineDetail/Index.cshtml", new MachineDetailPageViewModel(currentPage)
                {
                    Machine = new Machine()
                }));
            }
            var userRoles = await _orgUserRepo.GetUserCustomerRolesAsync(SiteUser.UserName, organization.CustomerNo);

            var machine = await _machineRepository.GetDetailMachineById(maid);

            var bookServiceUrl = ContentExtensions.GetPageUnderSettingUrl(x => x.BookServicePage);

            var model = new MachineDetailPageViewModel(currentPage)
            {
                Machine            = machine ?? new Machine(),
                IsHasMachineWRight = userRoles?.Any(r => r.RoleName.Equals(Machine_W)) ?? false,
                UrlBookService     = bookServiceUrl
            };

            var machineOwnerPic = await _machineRepository.GetMachinePicUrl(organization.CustomerId, maid);

            model.IsHasMachineOwnerPicture = !string.IsNullOrEmpty(machineOwnerPic?.PictureUrl);

            model.Machine.ImageUrl = machineOwnerPic != null
                ? machineOwnerPic.PictureUrl
                : _groMachineService.GetMachineImageUrl(model.Machine.Images);

            foreach (var doc in model.Machine.Documents)
            {
                if (!string.IsNullOrEmpty(doc.Url))
                {
                    continue;
                }

                var fileExtension         = Path.GetExtension(doc.FileName);
                var fullNameWithExtension = $"{doc.Id}{fileExtension}";
                doc.Url = _groMachineService.GetVirtualPath(VirtualPathConfig.DocumentsFolder, fullNameWithExtension);
            }

            return(View("~/Views/Machine/MachineDetail/Index.cshtml", model));
        }
示例#2
0
        public async Task <ActionResult> Index(AddDeliveryAddressPage currentPage, AddressViewModel model)
        {
            var activeCustomer = UserManager.GetActiveCustomer(HttpContext);
            var customerId     = activeCustomer?.CustomerId ?? 0;
            var addedSuccess   = false;

            if (customerId > 0)
            {
                model.Silos  = OrganizationViewHelper.PopulateSilos(model.Silos);
                addedSuccess = await AddNewDeliveryAddress(customerId, model);
            }

            var targetPageUrl = ContentExtensions.GetPageUnderSettingUrl(s => s.HandleAddressPage);

            targetPageUrl = string.IsNullOrEmpty(targetPageUrl) ? ContentExtensions.GetStartPageUrl() : $"{targetPageUrl}?hasAdded={addedSuccess}";
            return(Redirect(targetPageUrl));
        }