Пример #1
0
        public static PositionRecord CreateRecord(this PositionCreateViewModel model)
        {
            var record = new PositionRecord();

            record.InjectFrom(model);
            return(record);
        }
        public async Task <ActionResult <ResponseModel> > Create(PositionCreateViewModel model)
        {
            var response = ResponseModelFactory.CreateInstance;

            if (model.Name.Trim().Length <= 0)
            {
                response.SetFailed("请输入职位名称");
                return(Ok(response));
            }

            await using (_dbContext)
            {
                if (_dbContext.DncRole.Count(x => x.Name == model.Name) > 0)
                {
                    response.SetFailed("职位已存在");
                    return(Ok(response));
                }
                var entity = _mapper.Map <PositionCreateViewModel, UserPosition>(model);

                entity.CreatedOn         = DateTime.Now;
                entity.Code              = RandomHelper.GetRandomizer(8, true, false, true, true);
                entity.CreatedByUserGuid = AuthContextService.CurrentUser.Guid;
                entity.CreatedByUserName = AuthContextService.CurrentUser.DisplayName;

                await _dbContext.UserPosition.AddAsync(entity);

                await _dbContext.SaveChangesAsync();

                response.SetSuccess();
                return(Ok(response));
            }
        }
        public async Task <ActionResult <ResponseModel> > Edit(PositionCreateViewModel model)
        {
            var response = ResponseModelFactory.CreateInstance;

            if (ConfigurationManager.AppSettings.IsTrialVersion)
            {
                response.SetIsTrial();
                return(Ok(response));
            }

            await using (_dbContext)
            {
                if (await _dbContext.UserPosition.
                    CountAsync(x => x.Name == model.Name && x.Code != model.Code) > 0)
                {
                    response.SetFailed("职位已存在");
                    return(Ok(response));
                }

                var entity = await _dbContext.UserPosition.FindAsync(model.Code);

                entity.SortID = model.SortID;
                entity.Name   = model.Name;
                entity.Status = model.Status;

                entity.ModifiedOn         = DateTime.Now;
                entity.ModifiedByUserGuid = AuthContextService.CurrentUser.Guid;
                entity.ModifiedByUserName = AuthContextService.CurrentUser.DisplayName;

                _dbContext.Entry(entity).State = EntityState.Modified;
                await _dbContext.SaveChangesAsync();

                return(Ok(response));
            }
        }
Пример #4
0
        public async Task <IHttpActionResult> Createposition()
        {
            ResponseDataDTO <position> response = new ResponseDataDTO <position>();

            try
            {
                var path = Path.GetTempPath();

                if (!Request.Content.IsMimeMultipartContent("form-data"))
                {
                    throw new HttpResponseException(Request.CreateResponse(HttpStatusCode.UnsupportedMediaType));
                }

                MultipartFormDataStreamProvider streamProvider = new MultipartFormDataStreamProvider(path);

                await Request.Content.ReadAsMultipartAsync(streamProvider);

                if (streamProvider.FormData["pos_name"] == null)
                {
                    response.Code    = HttpCode.INTERNAL_SERVER_ERROR;
                    response.Message = "Chức vụ không được để trống";
                    response.Data    = null;
                    return(Ok(response));
                }
                // get data from formdata
                PositionCreateViewModel positionCreateViewModel = new PositionCreateViewModel
                {
                    pos_name           = Convert.ToString(streamProvider.FormData["pos_name"]),
                    pos_competence     = Convert.ToString(streamProvider.FormData["pos_competence"]),
                    pos_abilty         = Convert.ToString(streamProvider.FormData["pos_abilty"]),
                    pos_authority      = Convert.ToString(streamProvider.FormData["pos_authority"]),
                    pos_responsibility = Convert.ToString(streamProvider.FormData["pos_responsibility"]),
                    pos_description    = Convert.ToString(streamProvider.FormData["pos_description"]),
                };


                // mapping view model to entity
                var createdposition = _mapper.Map <position>(positionCreateViewModel);


                // save new position
                _positionservice.Create(createdposition);
                // return response
                response.Code    = HttpCode.OK;
                response.Message = MessageResponse.SUCCESS;
                response.Data    = createdposition;
                return(Ok(response));
            }
            catch (Exception ex)
            {
                response.Code    = HttpCode.INTERNAL_SERVER_ERROR;
                response.Message = ex.Message;
                response.Data    = null;
                Console.WriteLine(ex.ToString());

                return(Ok(response));
            }
        }
Пример #5
0
 public ActionResult CreatePositionPost(PositionCreateViewModel model)
 {
     if (ModelState.IsValid)
     {
         //perform creating new position
         var record = model.CreateRecord();
         _departmentService.CreatePosition(record);
         _orchardServices.Notifier.Add(NotifyType.Information, T("The position information has been created."));
         return(RedirectToAction("ListPositions"));
     }
     return(View(model));
 }
        public async Task <ActionResult> Create(PositionCreateViewModel model)
        {
            if (ModelState.IsValid)
            {
                var teachers = await UserManager.GetNoPositionTeachersAsync();

                ViewBag.selectListTeacher = new SelectList(teachers, "Id", "Name");

                var departs = await DepartmentManager.GetAllEntities().ToListAsync();

                ViewBag.selectListDepart = new SelectList(departs, "Id", "Name");

                var offices = await OfficeManager.GetOfficesForDepartment(departs.ElementAtOrDefault(0)).ToListAsync();

                ViewBag.selectListOffice = new SelectList(offices, "Id", "Name");

                var user = await UserManager.FindByIdAsync(model.UserId);

                if (user == null)
                {
                    ModelState.AddModelError("", "用户不存在");
                    return(View(model));
                }
                var office = await OfficeManager.FindEntityByIdAsync(model.OfficeId);

                if (office == null)
                {
                    ModelState.AddModelError("", "部门不存在");
                    return(View(model));
                }
                var position = new Position()
                {
                    Name        = model.Name,
                    Description = model.Description,
                    HeadUser    = user.TeacherInfo,
                    Office      = office
                };
                position = await PositionManager.AddEntityAsync(position);

                user.TeacherInfo.Position = position;
                await UserManager.UpdateAsync(user);

                return(RedirectToAction("Index"));
            }
            return(View(model));
        }
Пример #7
0
        public async Task <IActionResult> Create(PositionCreateViewModel model)
        {
            if (ModelState.IsValid)
            {
                var position = new PositionJob()
                {
                    Id = model.Id,
                    PositionJobCode = model.PositionJobCode,
                    PositionJobName = model.PositionJobName,
                    InsuranceMoney  = model.InsuranceMoney,
                    Status          = true
                };
                await _positionService.CreateAsync(position);

                return(RedirectToAction(nameof(Index)));
            }
            return(View());
        }
Пример #8
0
        public IActionResult Create()
        {
            var model = new PositionCreateViewModel();

            return(View(model));
        }