作者 李忠强
1 个管道 的构建 通过 耗费 3 秒

更新

@@ -54,7 +54,7 @@ class Idea extends Backend @@ -54,7 +54,7 @@ class Idea extends Backend
54 list($where, $sort, $order, $offset, $limit) = $this->buildparams(); 54 list($where, $sort, $order, $offset, $limit) = $this->buildparams();
55 55
56 $list = $this->model 56 $list = $this->model
57 - ->with(['ideatype','ideaweather','ideaarea']) 57 + ->with(['ideatype','ideaweather','ideaarea','ideafeel'])
58 ->where($where) 58 ->where($where)
59 ->order($sort, $order) 59 ->order($sort, $order)
60 ->paginate($limit); 60 ->paginate($limit);
@@ -64,6 +64,7 @@ class Idea extends Backend @@ -64,6 +64,7 @@ class Idea extends Backend
64 $row->getRelation('ideatype')->visible(['name']); 64 $row->getRelation('ideatype')->visible(['name']);
65 $row->getRelation('ideaweather')->visible(['name']); 65 $row->getRelation('ideaweather')->visible(['name']);
66 $row->getRelation('ideaarea')->visible(['name']); 66 $row->getRelation('ideaarea')->visible(['name']);
  67 + $row->getRelation('ideafeel')->visible(['name']);
67 } 68 }
68 69
69 $result = array("total" => $list->total(), "rows" => $list->items()); 70 $result = array("total" => $list->total(), "rows" => $list->items());
@@ -5,7 +5,7 @@ return [ @@ -5,7 +5,7 @@ return [
5 'Title' => '点子标题', 5 'Title' => '点子标题',
6 'Key_word' => '点子关键词', 6 'Key_word' => '点子关键词',
7 'Duration' => '时长(分钟)', 7 'Duration' => '时长(分钟)',
8 - 'Mid_feel' => '体验感受中位数', 8 + 'Mid_feel' => '体验感受中位数id',
9 'All_number' => '体验总人数', 9 'All_number' => '体验总人数',
10 'Collection' => '收藏数', 10 'Collection' => '收藏数',
11 'Idea_area_id' => '城市id', 11 'Idea_area_id' => '城市id',
@@ -53,4 +53,9 @@ class Idea extends Model @@ -53,4 +53,9 @@ class Idea extends Model
53 { 53 {
54 return $this->belongsTo('IdeaArea', 'idea_area_id', 'id', [], 'LEFT')->setEagerlyType(0); 54 return $this->belongsTo('IdeaArea', 'idea_area_id', 'id', [], 'LEFT')->setEagerlyType(0);
55 } 55 }
  56 +
  57 + public function ideafeel()
  58 + {
  59 + return $this->belongsTo('IdeaFeel', 'idea_feel_id', 'id', [], 'LEFT')->setEagerlyType(0);
  60 + }
56 } 61 }
@@ -27,7 +27,7 @@ @@ -27,7 +27,7 @@
27 <div class="form-group"> 27 <div class="form-group">
28 <label class="control-label col-xs-12 col-sm-2">{:__('Mid_feel')}:</label> 28 <label class="control-label col-xs-12 col-sm-2">{:__('Mid_feel')}:</label>
29 <div class="col-xs-12 col-sm-8"> 29 <div class="col-xs-12 col-sm-8">
30 - <input id="c-mid_feel" class="form-control" name="row[mid_feel]" type="text"> 30 + <input id="c-mid_feel" class="form-control selectpage" data-source="idea_feel/index" name="row[idea_feel_id]" type="text">
31 </div> 31 </div>
32 </div> 32 </div>
33 <!-- <div class="form-group">--> 33 <!-- <div class="form-group">-->
@@ -27,7 +27,7 @@ @@ -27,7 +27,7 @@
27 <div class="form-group"> 27 <div class="form-group">
28 <label class="control-label col-xs-12 col-sm-2">{:__('Mid_feel')}:</label> 28 <label class="control-label col-xs-12 col-sm-2">{:__('Mid_feel')}:</label>
29 <div class="col-xs-12 col-sm-8"> 29 <div class="col-xs-12 col-sm-8">
30 - <input id="c-mid_feel" class="form-control" name="row[mid_feel]" type="text" value="{$row.mid_feel|htmlentities}"> 30 + <input id="c-mid_feel" class="form-control selectpage" name="row[idea_feel_id]" data-source="idea_feel/index" type="text" value="{$row.idea_feel_id|htmlentities}">
31 </div> 31 </div>
32 </div> 32 </div>
33 <!-- <div class="form-group">--> 33 <!-- <div class="form-group">-->
@@ -409,13 +409,31 @@ class Index extends Api @@ -409,13 +409,31 @@ class Index extends Api
409 } 409 }
410 $images = implode(',',$imgarr); 410 $images = implode(',',$imgarr);
411 } 411 }
412 - $ideaname = Db::name('idea')->where('id',$ideaid)->find(); 412 +
  413 +
  414 + //计算中位数
  415 + $feel = Db::name('idea_feel')->where('id',$feel_id)->find();
  416 + if ($feel['fraction'] !== 0){
  417 + Db::name('idea')->where('id',$ideaid)->setInc('feel_number');
  418 + Db::name('idea')->where('id',$ideaid)->setInc('feel_number',$feel['fraction']);
  419 + }
  420 + $idea = Db::name('idea')->where('id',$ideaid)->find();
  421 + $fraction = $idea['feel_fraction']/$idea['feel_number'];
  422 + if ($fraction > 19){
  423 + $fraction = 19;
  424 + }elseif ($fraction < 1){
  425 + $fraction = 1;
  426 + }else{
  427 + $fraction = (int)$fraction;
  428 + }
  429 +
  430 +
413 if ($area == ''){ 431 if ($area == ''){
414 - $area = Db::name('idea_area')->where('id',$ideaname['idea_area_id'])->value('name'); 432 + $area = Db::name('idea_area')->where('id',$idea['idea_area_id'])->value('name');
415 } 433 }
416 $data = [ 434 $data = [
417 'idea_id'=>$ideaid, 435 'idea_id'=>$ideaid,
418 - 'idea_name'=>'#'.$ideaname['title'], 436 + 'idea_name'=>'#'.$idea['title'],
419 'user_id'=>$this->auth->id, 437 'user_id'=>$this->auth->id,
420 'comment'=>$comment, 438 'comment'=>$comment,
421 'area'=>$area, 439 'area'=>$area,
@@ -424,6 +442,8 @@ class Index extends Api @@ -424,6 +442,8 @@ class Index extends Api
424 'createtime'=>time(), 442 'createtime'=>time(),
425 ]; 443 ];
426 Db::name('idea_comment')->insert($data); 444 Db::name('idea_comment')->insert($data);
  445 + $feel = Db::name('idea_feel')->where('fraction',$fraction)->find();
  446 + Db::name('idea')->where('id',$ideaid)->update(['idea_feel_id'=>$feel['id']]);
427 $this->success('发布成功'); 447 $this->success('发布成功');
428 } 448 }
429 449
@@ -32,7 +32,8 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin @@ -32,7 +32,8 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
32 {field: 'title', title: __('Title'), operate: 'LIKE'}, 32 {field: 'title', title: __('Title'), operate: 'LIKE'},
33 {field: 'key_word', title: __('Key_word'), operate: 'LIKE'}, 33 {field: 'key_word', title: __('Key_word'), operate: 'LIKE'},
34 {field: 'duration', title: __('Duration')}, 34 {field: 'duration', title: __('Duration')},
35 - {field: 'mid_feel', title: __('Mid_feel'), operate: false}, 35 + {field: 'idea_feel_id', title: __('Mid_feel')},
  36 + {field: 'ideafeel.name', title: __('体验感受名称'), operate: 'LIKE'},
36 {field: 'all_number', title: __('All_number')}, 37 {field: 'all_number', title: __('All_number')},
37 {field: 'collection', title: __('Collection')}, 38 {field: 'collection', title: __('Collection')},
38 {field: 'idea_area_id', title: __('Idea_area_id'),visible:false,operate: false}, 39 {field: 'idea_area_id', title: __('Idea_area_id'),visible:false,operate: false},