Пример #1
0
        public ActionResult Second(string id, string linkMan)
        {
            SaleOrderSecondModel model = new SaleOrderSecondModel(id, linkMan);

            if (string.IsNullOrWhiteSpace(model.Id) || this.Session[model.Id] == null)
            {
                return(RedirectToAction("First", "SaleOrder"));
            }

            SaleOrderAddDTO dto = (SaleOrderAddDTO)this.Session[model.Id];

            List <SaleOrderDetailAddDTO> saleOrderDetails = dto.SaleOrderDetails;
            List <CustomerAddress>       entities         = this.customerAddressService.SearchByLinkMan(linkMan);

            foreach (CustomerAddress entity in entities)
            {
                CustomerAddressSelectModel address = new CustomerAddressSelectModel(entity);
                if (saleOrderDetails.Count > 0)
                {
                    SaleOrderDetailAddDTO saleOrderDetail = saleOrderDetails.Find(x => x.Id == entity.Id);
                    if (saleOrderDetail != null)
                    {
                        address.Selected    = Constant.COMMON_Y;
                        address.NeedExpress = saleOrderDetail.NeedExpress;
                    }
                }
                model.CustomerAddress.Add(address);
            }
            return(View(model));
        }
Пример #2
0
        public ActionResult Selected(string id, SaleOrderDetailAddModel model)
        {
            JsonResultModel result = new JsonResultModel();

            try
            {
                Validate validate = new Validate();
                validate.CheckStringArgument(WebResource.Field_Id, id, true);
                validate.CheckObjectArgument <SaleOrderDetailAddModel>("model", model);
                if (validate.IsFailed)
                {
                    result.BuilderErrorMessage(validate.ErrorMessages);
                    return(Json(result));
                }

                if (this.Session[id] == null)
                {
                    result.BuilderErrorMessage(WebResource.Message_DeliverySessionOut);
                    result.Data = "/SaleOrder/First";
                    return(Json(result));
                }
                model.PostValidate(ref validate);
                if (validate.IsFailed)
                {
                    result.BuilderErrorMessage(validate.ErrorMessages);
                    return(Json(result));
                }
                SaleOrderAddDTO       dto       = (SaleOrderAddDTO)this.Session[id];
                SaleOrderDetailAddDTO saleOrder = dto.SaleOrderDetails.Find(x => x.CustomerId == model.CustomerId);
                if (saleOrder != null)
                {
                    dto.SaleOrderDetails.RemoveAll(x => x.Id == model.Id);
                }
                if (model.Selected == Constant.COMMON_Y)
                {
                    dto.SaleOrderDetails.Add(new SaleOrderDetailAddDTO {
                        CustomerId = model.CustomerId, Linkman = model.Linkman, Mobile = model.Mobile, Address = model.Address, NeedExpress = model.NeedExpress, Selected = model.Selected, Id = model.Id
                    });
                }
                this.Session[id] = dto;
                result.Result    = true;
            }
            catch (Exception ex)
            {
                result.BuilderErrorMessage(ex.Message);
            }
            return(Json(result));
        }