作者 何书鹏
1 个管道 的构建 通过 耗费 1 秒

商品多规格提交

@@ -516,7 +516,7 @@ class User extends Api @@ -516,7 +516,7 @@ class User extends Api
516 { 516 {
517 $post = $this->request->post(); 517 $post = $this->request->post();
518 $model = UserSize::detail($this->user['id'], $post['user_size_id']); 518 $model = UserSize::detail($this->user['id'], $post['user_size_id']);
519 - $this->success(json_encode($model->edit($post))); 519 + $this->success($model->edit($post));
520 if(empty($model)){ 520 if(empty($model)){
521 $this->error(__('尺寸信息不存在')); 521 $this->error(__('尺寸信息不存在'));
522 } 522 }
@@ -79,13 +79,13 @@ class UserSize extends Model @@ -79,13 +79,13 @@ class UserSize extends Model
79 empty($data['isdefault']) && $data['isdefault'] = '0'; 79 empty($data['isdefault']) && $data['isdefault'] = '0';
80 // 该地址设为默认,其他地址就设为非默认 80 // 该地址设为默认,其他地址就设为非默认
81 if($data['isdefault'] == '1'){ 81 if($data['isdefault'] == '1'){
  82 + return 1;
82 $this->where('user_id',$this['user_id'])->update(['isdefault'=>'0']); 83 $this->where('user_id',$this['user_id'])->update(['isdefault'=>'0']);
83 } 84 }
84 // 对象转json字符串 85 // 对象转json字符串
85 if(!empty($data['body_info']) && is_array($data['body_info'])){ 86 if(!empty($data['body_info']) && is_array($data['body_info'])){
86 $data['body_info'] = json_encode($data['body_info']); 87 $data['body_info'] = json_encode($data['body_info']);
87 } 88 }
88 - return $data;  
89 return $this->allowField(true)->save($data); 89 return $this->allowField(true)->save($data);
90 } 90 }
91 91
@@ -70,6 +70,27 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form', 'backend/goods.spec'] @@ -70,6 +70,27 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form', 'backend/goods.spec']
70 var specMany = new GoodsSpec({ 70 var specMany = new GoodsSpec({
71 container: '.goods-spec-many' 71 container: '.goods-spec-many'
72 }); 72 });
  73 +
  74 + Form.api.bindevent($("form[role=form]"), function(data, ret){
  75 + //如果我们需要在提交表单成功后做跳转,可以在此使用location.href="链接";进行跳转
  76 + Toastr.success("成功");
  77 + }, function(data, ret){
  78 + Toastr.error("失败");
  79 + }, function(success, error){
  80 + //bindevent的第三个参数为提交前的回调
  81 + //如果我们需要在表单提交前做一些数据处理,则可以在此方法处理
  82 + //注意如果我们需要阻止表单,可以在此使用return false;即可
  83 + //如果我们处理完成需要再次提交表单则可以使用submit提交,如下
  84 + //Form.api.submit(this, success, error);
  85 + var specType = $('select[name="row[spec_type]"]').val();
  86 + if (specType === '2') {
  87 + var isEmpty = specMany.isEmptySkuList();
  88 + isEmpty === true && Toastr.error('商品规格不能为空');
  89 + $('input[name="row[spec_many]"]').val(JSON.stringify(specMany.getData()));
  90 + return !isEmpty;
  91 + }
  92 + return true;
  93 + });
73 }, 94 },
74 edit: function () { 95 edit: function () {
75 Controller.api.bindevent(); 96 Controller.api.bindevent();
@@ -80,6 +101,27 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form', 'backend/goods.spec'] @@ -80,6 +101,27 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form', 'backend/goods.spec']
80 var specMany = new GoodsSpec({ 101 var specMany = new GoodsSpec({
81 container: '.goods-spec-many' 102 container: '.goods-spec-many'
82 }, Config.specData); 103 }, Config.specData);
  104 +
  105 + Form.api.bindevent($("form[role=form]"), function(data, ret){
  106 + //如果我们需要在提交表单成功后做跳转,可以在此使用location.href="链接";进行跳转
  107 + Toastr.success("成功");
  108 + }, function(data, ret){
  109 + Toastr.error("失败");
  110 + }, function(success, error){
  111 + //bindevent的第三个参数为提交前的回调
  112 + //如果我们需要在表单提交前做一些数据处理,则可以在此方法处理
  113 + //注意如果我们需要阻止表单,可以在此使用return false;即可
  114 + //如果我们处理完成需要再次提交表单则可以使用submit提交,如下
  115 + //Form.api.submit(this, success, error);
  116 + var specType = $('select[name="row[spec_type]"]').val();
  117 + if (specType === '2') {
  118 + var isEmpty = specMany.isEmptySkuList();
  119 + isEmpty === true && Toastr.error('商品规格不能为空');
  120 + $('input[name="row[spec_many]"]').val(JSON.stringify(specMany.getData()));
  121 + return !isEmpty;
  122 + }
  123 + return true;
  124 + });
83 }, 125 },
84 style: function () { 126 style: function () {
85 Form.api.bindevent($("form[role=form]")); 127 Form.api.bindevent($("form[role=form]"));
@@ -201,27 +243,6 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form', 'backend/goods.spec'] @@ -201,27 +243,6 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form', 'backend/goods.spec']
201 }, 243 },
202 api: { 244 api: {
203 bindevent: function () { 245 bindevent: function () {
204 - Form.api.bindevent($("form[role=form]"), function(data, ret){  
205 - //如果我们需要在提交表单成功后做跳转,可以在此使用location.href="链接";进行跳转  
206 - Toastr.success("成功");  
207 - }, function(data, ret){  
208 - Toastr.error("失败");  
209 - }, function(success, error){  
210 - //bindevent的第三个参数为提交前的回调  
211 - //如果我们需要在表单提交前做一些数据处理,则可以在此方法处理  
212 - //注意如果我们需要阻止表单,可以在此使用return false;即可  
213 - //如果我们处理完成需要再次提交表单则可以使用submit提交,如下  
214 - //Form.api.submit(this, success, error);  
215 - var specType = $('select[name="row[spec_type]"]').val();  
216 - if (specType === '2') {  
217 - var isEmpty = specMany.isEmptySkuList();  
218 - isEmpty === true && Toastr.error('商品规格不能为空');  
219 - $('input[name="row[spec_many]"]').val(JSON.stringify(specMany.getData()));  
220 - return !isEmpty;  
221 - }  
222 - return true;  
223 - });  
224 -  
225 // 切换单/多规格 246 // 切换单/多规格
226 $('select[name="row[spec_type]"]').change(function (e) { 247 $('select[name="row[spec_type]"]').change(function (e) {
227 var $goodsSpecMany = $('.goods-spec-many') 248 var $goodsSpecMany = $('.goods-spec-many')