Example #1
0
        public IActionResult IsTotalRatioNotGreaterThenOneForEdit([Bind(include: "Id,ContractId,Ratio")] EditUserContractViewModel model)
        {
            string message = null;
            var    result  = IsTotalRatioNotGreaterThenOne(model.Id, model.ContractId, model.Ratio);

            if (result)
            {
                return(Json(true));
            }
            else
            {
                message = $"产值分配比例之和不能大于1";
                return(Json(message));
            }
        }
Example #2
0
        public async Task <IActionResult> Edit(EditUserContractViewModel model)
        {
            if (!IsTotalRatioNotGreaterThenOne(model.Id, model.ContractId, model.Ratio))
            {
                ModelState.AddModelError("Ratio", "产值总比例之和不能大于1");
            }

            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var user = await _userManager.GetUserAsync(User).ConfigureAwait(false);

            var contract = _contractRepository.EntityItems.Where(x => x.Id == model.ContractId).FirstOrDefault();

            if (user.Id != contract.UserId)
            {
                return(View("AccessDenied"));    //?View
            }

            try
            {
                //var userContractToEdit = _mapper.Map<UserContract>(model);
                var userContractToEdit = _userContractRepository.EntityItems.Where(x => x.Id == model.Id).FirstOrDefault();
                userContractToEdit.UserId   = model.UserId;
                userContractToEdit.UserName = model.StaffName;
                userContractToEdit.Labor    = (int)model.Labor;
                userContractToEdit.Ratio    = model.Ratio;

                await _userContractRepository.EditAsync(userContractToEdit);

                //StatusMessage = $"成功编辑\"参与人员\"{model.StaffName}";
                StatusMessage = $"成功编辑\"参与人员\"";
            }
            catch (Exception ex)
            {
                throw (ex);
            }

            return(RedirectToAction("Details", "Contract", new { Id = model.ContractId }));
        }