Esempio n. 1
0
        public ActionResult AddOrEditUserReceiveAddress(int addressId, string consignee, string mobile, string tel, int countyID, string address, int isDefault)
        {
            if (string.IsNullOrWhiteSpace(consignee))
            {
                return this.Json(new AjaxResponse(0, "收货人地址不正确"));
            }

            if (!string.IsNullOrWhiteSpace(mobile) && !CustomValidator.IsMobile(mobile))
            {
                return this.Json(new AjaxResponse(0, "收货人手机号码不正确"));
            }

            if (!string.IsNullOrWhiteSpace(tel) && !CustomValidator.IsPhone(tel))
            {
                return this.Json( new AjaxResponse(0, "收货人电话号码不正确"));
            }

            if (string.IsNullOrWhiteSpace(mobile) && string.IsNullOrWhiteSpace(tel))
            {
                return this.Json(new AjaxResponse(0,"收货人电话号码和手机号码不能都为空"));
            }

            if (countyID < 1)
            {
                return this.Json(new AjaxResponse(0, "收货人省市区地址不正确"));
            }

            if (string.IsNullOrWhiteSpace(address))
            {
                return this.Json(new AjaxResponse(0, "收货人详细地址信息不能为空"));
            }

            var userReceiveAddressService = new UserReceiveAddressService();
            var model = new UserReceiveAddressModel
            {
                Consignee = consignee,
                Mobile = mobile,
                Tel = tel,
                CountyID = countyID,
                UserID = this.UserSession.UserID,
                IsDefault = false,
                Address = address
            };

            SqlTransaction transaction = null;
            try
            {
                if (addressId > 0)
                {
                    var userReceiveAddress = DataTransfer.Transfer<User_RecieveAddress>(model, typeof(UserReceiveAddressModel));
                    userReceiveAddress.ID = addressId;
                    userReceiveAddress.IsDefault = isDefault == 1;
                    userReceiveAddressService.Modify(userReceiveAddress, out transaction);
                    transaction.Commit();
                }
                else
                {
                    var userReceiveAddress = DataTransfer.Transfer<User_RecieveAddress>(model, typeof(UserReceiveAddressModel));
                    userReceiveAddress.IsDefault = isDefault == 1;
                    addressId = userReceiveAddressService.Add(userReceiveAddress, null);
                }

                model.ID = addressId;
                return this.PartialView("Partial/NewAddress", model);
            }
            catch (Exception exception)
            {
                if (transaction != null)
                {
                    transaction.Rollback();
                }

                LogUtils.Log(
                    "前台用户下单时添加或修改收货地址出错,错误原因:" + exception.Message,
                    "前台添加用户收货信息",
                    Category.Error,
                    this.Session.SessionID,
                    this.UserSession.UserID,
                    "Order/AddOrEditUserReceiveAddress");
                TextLogger.Instance.Log("前台用户下单时添加或修改收货地址出错", Category.Error, exception);
                return Json(new AjaxResponse(-1, "操作失败"));
            }
        }
Esempio n. 2
0
        /// <summary>
        /// 添加用户基本信息和收件地址
        /// </summary>
        /// <param name="user">
        /// 用户对象
        /// </param>
        public void AddUserInfo(User user)
        {
            if (user != null)
            {
                var userService = new UserService();
                var userReceiceAddressService = new UserReceiveAddressService();
                SqlTransaction sqlTransact = null;
                try
                {
                    var userId = userService.AddUser(user, out sqlTransact);
                    var userReceiveAddress = new User_RecieveAddress
                    {
                        UserID = userId,
                        CountyID = user.CountyID,
                        Address = user.Address,
                        Consignee = user.Name,
                        Mobile = user.Mobile,
                        Tel = user.Tel,
                        IsDefault = true,
                        CreateTime = DateTime.Now
                    };

                    userReceiceAddressService.Add(userReceiveAddress, sqlTransact);
                    sqlTransact.Commit();
                    user.ID = userId;
                }
                catch
                {
                    if (sqlTransact != null)
                    {
                        sqlTransact.Rollback();
                    }

                    throw;
                }
            }
        }
        public ActionResult AddUserReceiveAddress([DataSourceRequest] DataSourceRequest request, string consignee, string mobile, string tel, int currentCountyID, string address, int currentUserID)
        {
            var userReceiveAddressService = new UserReceiveAddressService();
            var model = new UserReceiveAddressModel
                            {
                                Consignee = consignee,
                                Mobile = mobile,
                                Tel = tel,
                                CountyID = currentCountyID,
                                UserID = currentUserID,
                                IsDefault = false,
                                Address = address
                            };
            var userReceiveAddress = DataTransfer.Transfer<User_RecieveAddress>(model, typeof(UserReceiveAddressModel));
            int addressId = userReceiveAddressService.Add(userReceiveAddress, null);
            model.ID = addressId;

            return Json(new[] { model }.ToDataSourceResult(request, ModelState));
        }