Browse Source

系统公告

lizhen_gitee 1 year ago
parent
commit
0d78aa279e

+ 1 - 0
application/admin/controller/Messagesys.php

@@ -23,6 +23,7 @@ class Messagesys extends Backend
         parent::_initialize();
         $this->model = new \app\admin\model\Messagesys;
         $this->view->assign("isIndexList", $this->model->getIsIndexList());
+        $this->view->assign("isShowList", $this->model->getIsShowList());
     }
 
 

+ 7 - 1
application/admin/lang/zh-cn/messagesys.php

@@ -3,9 +3,15 @@
 return [
     'Id'         => 'ID',
     'Title'      => '消息标题',
+    'Title_en'   => '消息标题(en)',
     'Info'       => '消息内容',
+    'Info_en'    => '消息内容(en)',
     'Createtime' => '创建时间',
     'Is_index'   => '放到首页',
     'Is_index 0' => '否',
-    'Is_index 1' => '是'
+    'Is_index 1' => '是',
+    'Is_show'    => '是否显示',
+    'Is_show 1'  => '上架',
+    'Is_show 0'  => '下架',
+    'Weigh'      => '排序'
 ];

+ 23 - 1
application/admin/model/Messagesys.php

@@ -25,16 +25,30 @@ class Messagesys extends Model
 
     // 追加属性
     protected $append = [
-        'is_index_text'
+        'is_index_text',
+        'is_show_text'
     ];
     
 
+    protected static function init()
+    {
+        self::afterInsert(function ($row) {
+            $pk = $row->getPk();
+            $row->getQuery()->where($pk, $row[$pk])->update(['weigh' => $row[$pk]]);
+        });
+    }
+
     
     public function getIsIndexList()
     {
         return ['0' => __('Is_index 0'), '1' => __('Is_index 1')];
     }
 
+    public function getIsShowList()
+    {
+        return ['1' => __('Is_show 1'), '0' => __('Is_show 0')];
+    }
+
 
     public function getIsIndexTextAttr($value, $data)
     {
@@ -44,6 +58,14 @@ class Messagesys extends Model
     }
 
 
+    public function getIsShowTextAttr($value, $data)
+    {
+        $value = $value ? $value : (isset($data['is_show']) ? $data['is_show'] : '');
+        $list = $this->getIsShowList();
+        return isset($list[$value]) ? $list[$value] : '';
+    }
+
+
 
 
 }

+ 30 - 0
application/admin/view/messagesys/add.html

@@ -7,12 +7,24 @@
         </div>
     </div>
     <div class="form-group">
+        <label class="control-label col-xs-12 col-sm-2">{:__('Title_en')}:</label>
+        <div class="col-xs-12 col-sm-8">
+            <input id="c-title_en" data-rule="required" class="form-control" name="row[title_en]" type="text" value="">
+        </div>
+    </div>
+    <div class="form-group">
         <label class="control-label col-xs-12 col-sm-2">{:__('Info')}:</label>
         <div class="col-xs-12 col-sm-8">
             <textarea id="c-info" class="form-control " rows="5" name="row[info]" cols="50"></textarea>
         </div>
     </div>
     <div class="form-group">
+        <label class="control-label col-xs-12 col-sm-2">{:__('Info_en')}:</label>
+        <div class="col-xs-12 col-sm-8">
+            <textarea id="c-info_en" class="form-control " rows="5" name="row[info_en]" cols="50"></textarea>
+        </div>
+    </div>
+    <div class="form-group">
         <label class="control-label col-xs-12 col-sm-2">{:__('Is_index')}:</label>
         <div class="col-xs-12 col-sm-8">
                         
@@ -24,6 +36,24 @@
 
         </div>
     </div>
+    <div class="form-group">
+        <label class="control-label col-xs-12 col-sm-2">{:__('Is_show')}:</label>
+        <div class="col-xs-12 col-sm-8">
+                        
+            <select  id="c-is_show" data-rule="required" class="form-control selectpicker" name="row[is_show]">
+                {foreach name="isShowList" item="vo"}
+                    <option value="{$key}" {in name="key" value="1"}selected{/in}>{$vo}</option>
+                {/foreach}
+            </select>
+
+        </div>
+    </div>
+    <div class="form-group">
+        <label class="control-label col-xs-12 col-sm-2">{:__('Weigh')}:</label>
+        <div class="col-xs-12 col-sm-8">
+            <input id="c-weigh" class="form-control" name="row[weigh]" type="number" value="0">
+        </div>
+    </div>
     <div class="form-group layer-footer">
         <label class="control-label col-xs-12 col-sm-2"></label>
         <div class="col-xs-12 col-sm-8">

+ 30 - 0
application/admin/view/messagesys/edit.html

@@ -7,12 +7,24 @@
         </div>
     </div>
     <div class="form-group">
+        <label class="control-label col-xs-12 col-sm-2">{:__('Title_en')}:</label>
+        <div class="col-xs-12 col-sm-8">
+            <input id="c-title_en" data-rule="required" class="form-control" name="row[title_en]" type="text" value="{$row.title_en|htmlentities}">
+        </div>
+    </div>
+    <div class="form-group">
         <label class="control-label col-xs-12 col-sm-2">{:__('Info')}:</label>
         <div class="col-xs-12 col-sm-8">
             <textarea id="c-info" class="form-control " rows="5" name="row[info]" cols="50">{$row.info|htmlentities}</textarea>
         </div>
     </div>
     <div class="form-group">
+        <label class="control-label col-xs-12 col-sm-2">{:__('Info_en')}:</label>
+        <div class="col-xs-12 col-sm-8">
+            <textarea id="c-info_en" class="form-control " rows="5" name="row[info_en]" cols="50">{$row.info_en|htmlentities}</textarea>
+        </div>
+    </div>
+    <div class="form-group">
         <label class="control-label col-xs-12 col-sm-2">{:__('Is_index')}:</label>
         <div class="col-xs-12 col-sm-8">
                         
@@ -24,6 +36,24 @@
 
         </div>
     </div>
+    <div class="form-group">
+        <label class="control-label col-xs-12 col-sm-2">{:__('Is_show')}:</label>
+        <div class="col-xs-12 col-sm-8">
+                        
+            <select  id="c-is_show" data-rule="required" class="form-control selectpicker" name="row[is_show]">
+                {foreach name="isShowList" item="vo"}
+                    <option value="{$key}" {in name="key" value="$row.is_show"}selected{/in}>{$vo}</option>
+                {/foreach}
+            </select>
+
+        </div>
+    </div>
+    <div class="form-group">
+        <label class="control-label col-xs-12 col-sm-2">{:__('Weigh')}:</label>
+        <div class="col-xs-12 col-sm-8">
+            <input id="c-weigh" class="form-control" name="row[weigh]" type="number" value="{$row.weigh|htmlentities}">
+        </div>
+    </div>
     <div class="form-group layer-footer">
         <label class="control-label col-xs-12 col-sm-2"></label>
         <div class="col-xs-12 col-sm-8">

+ 4 - 1
public/assets/js/backend/messagesys.js

@@ -21,14 +21,17 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
             table.bootstrapTable({
                 url: $.fn.bootstrapTable.defaults.extend.index_url,
                 pk: 'id',
-                sortName: 'id',
+                sortName: 'weigh',
                 columns: [
                     [
                         {checkbox: true},
                         {field: 'id', title: __('Id')},
                         {field: 'title', title: __('Title'), operate: 'LIKE'},
+                        {field: 'title_en', title: __('Title_en'), operate: 'LIKE'},
                         {field: 'createtime', title: __('Createtime'), operate:'RANGE', addclass:'datetimerange', autocomplete:false, formatter: Table.api.formatter.datetime},
                         {field: 'is_index', title: __('Is_index'), searchList: {"0":__('Is_index 0'),"1":__('Is_index 1')}, formatter: Table.api.formatter.normal},
+                        {field: 'is_show', title: __('Is_show'), searchList: {"1":__('Is_show 1'),"0":__('Is_show 0')}, formatter: Table.api.formatter.normal},
+                        {field: 'weigh', title: __('Weigh'), operate: false},
                         {field: 'operate', title: __('Operate'), table: table, events: Table.api.events.operate, formatter: Table.api.formatter.operate}
                     ]
                 ]