예제 #1
0
        public async Task <ActionResult> Create(int objectId, EditPdSectionModel model)
        {
            model.VerifyEmployeeSelection(ModelState);

            if (ModelState.IsValid)
            {
                await _mediator.Send(new SavePdSectionCommand()
                {
                    BuildingObjectId    = model.BuildingObjectId.Value,
                    EmployeeId          = model.EmployeeId,
                    Name                = model.Name,
                    OneTimeEmployeeName = model.OneTimeEmployeeName,
                    Price               = model.Price.Value,
                    UseOneTimeEmployee  = model.UseOneTimeEmployee
                });

                return(RedirectToAction(nameof(BuildingObjectController.Details), "BuildingObject",
                                        new { id = model.SelectedBuildingObjectId }));
            }

            model.BuildingObjects = (await _mediator.Send(new ListBuildingObjectsQuery())).Select(item => new SelectListItem
            {
                Value    = item.Id.ToString(),
                Text     = item.Name,
                Selected = item.Id == objectId
            });
            model.Employees = (await _mediator.Send(new ListEmployeesQuery())).Select(item => new SelectListItem
            {
                Text  = item.FullName,
                Value = item.Id.ToString()
            });

            return(View(model));
        }
예제 #2
0
        // GET: PdSection/Edit/5
        public async Task <ActionResult> Edit(int id)
        {
            PdSection pdSection = await _mediator.Send(new GetPdSectionByIdQuery(id));

            var model = new EditPdSectionModel
            {
                Id                  = pdSection.Id,
                Name                = pdSection.Name,
                Price               = pdSection.Price,
                EmployeeId          = pdSection.EmployeeId,
                OneTimeEmployeeName = pdSection.OneTimeEmployeeName,
                UseOneTimeEmployee  = !string.IsNullOrWhiteSpace(pdSection.OneTimeEmployeeName),
                Employees           = (await _mediator.Send(new ListEmployeesQuery())).Select(item => new SelectListItem
                {
                    Text  = item.FullName,
                    Value = item.Id.ToString()
                }),
                BuildingObjects = (await _mediator.Send(new ListBuildingObjectsQuery())).Select(item => new SelectListItem
                {
                    Value    = item.Id.ToString(),
                    Text     = item.Name,
                    Selected = item.Id == pdSection.BuildingObjectId
                }),
                BuildingObjectId         = pdSection.BuildingObjectId,
                SelectedBuildingObjectId = pdSection.BuildingObjectId
            };

            return(View(model));
        }
예제 #3
0
        // GET: PdSection/Create
        public async Task <ActionResult> Create(int objectId)
        {
            var model = new EditPdSectionModel
            {
                Employees = (await _mediator.Send(new ListEmployeesQuery())).Select(item => new SelectListItem
                {
                    Text  = item.FullName,
                    Value = item.Id.ToString()
                }),
                BuildingObjects = (await _mediator.Send(new ListBuildingObjectsQuery())).Select(item => new SelectListItem
                {
                    Value    = item.Id.ToString(),
                    Text     = item.Name,
                    Selected = item.Id == objectId
                }),
                BuildingObjectId         = objectId,
                SelectedBuildingObjectId = objectId,
                IsCreateMode             = true
            };

            return(View(model));
        }