/// <summary> /// 提交商品数据 /// </summary> /// <returns></returns> public JsonResult AjaxAddGoods() { string userToken = CurrentToken; string goods = Request["goods"]; string del_items = Request["del_items"] ?? ""; RespResult response = new RespResult(); if (string.IsNullOrEmpty(goods)) { response.Error = DataStructure.AppError.ERROR_INVALID_PARAMETER; response.ErrorMessage = "数据丢失!"; } else { try { ProductModel product = JsonHelper.Deserialize <ProductModel>(goods); product.QQ = product.QQ == "QQ" ? string.Empty : product.QQ; product.Phone = product.Phone == "手机号" ? string.Empty : product.Phone; if (!string.IsNullOrEmpty(CurrentToken)) { userToken = CurrentToken; } //未登录的情况(先注册) else { string username = string.IsNullOrEmpty(product.Phone) || product.Phone == "手机号" ? product.QQ : product.Phone; UserServiceClient userclient = new UserServiceClient(); try { response = userclient.Register(username, SecurityHelper.MD5("000000")); if (response.Error == AppError.ERROR_SUCCESS) { AdvancedResult <string> regLogin = userclient.Login(username, SecurityHelper.MD5("000000")); userToken = regLogin.Data; } } finally { userclient.Close(); userclient = null; } } ProductServiceClient client = new ProductServiceClient(); if (product == null) { response.Error = DataStructure.AppError.ERROR_INVALID_PARAMETER; response.ErrorMessage = "无效数据!"; } else { AdvancedResult <int> productResponse; if (product.Id > 0) { RespResult result = client.EditBBPostInfo(product.Id, product.Title, product.QQ, product.Phone, product.Description, product.IsWash, product.Price, product.Age, product.ItemType, product.ItemSort, product.Sex, userToken); productResponse = new AdvancedResult <int>(); productResponse.Data = product.Id; productResponse.Error = result.Error; productResponse.ErrorMessage = result.ErrorMessage; productResponse.ExMessage = result.ExMessage; } else { productResponse = client.publishBBPost(product.Title, product.QQ, product.Phone, product.Description, product.IsWash, product.Price, product.Age, product.ItemType, product.ItemSort, product.Sex, userToken); } if (productResponse.Error == DataStructure.AppError.ERROR_SUCCESS) { foreach (var pitem in product.Pics) { //if (pitem.Pid > 0) //{ // client.EditeBBPic(pitem.Pid, pitem.PicId, CurrentToken); //} //else //{ client.BindBBPic(productResponse.Data, pitem.PicId, userToken); //} } } response.ErrorMessage = productResponse.ErrorMessage; response.ExMessage = productResponse.ExMessage; response.Error = productResponse.Error; } int[] delItemsList = del_items.Split(new[] { ',' }, StringSplitOptions.RemoveEmptyEntries).Select(a => Convert.ToInt32(a)).Where(a => a > 0).ToArray(); foreach (int itemId in delItemsList) { client.DeleteBBPic(itemId, userToken); } client.Close(); client = null; } catch (Exception ex) { response.ExMessage = "保存失败!" + ex.Message; response.Error = DataStructure.AppError.ERROR_FAILED; } } return(Json(response)); }