Browse Source

重建试课订单

lizhen_gitee 1 year ago
parent
commit
09851d0fe5

+ 5 - 3
application/admin/lang/zh-cn/trylessonorder.php

@@ -5,14 +5,15 @@ return [
     'Order_no'          => '订单号',
     'User_id'           => '用户id',
     'Trylesson_id'      => '课程id',
+    'Lesson_ids'        => '课程ids',
     'Order_amount'      => '订单金额',
     'Order_status'      => '状态',
     'Order_status 0'    => '待支付',
     'Order_status 10'   => '已支付',
-    'Order_status 20'   => '已点名',
-    'Order_status 30'   => '已取消',
-    'Order_status 40'   => '已退课',
+    'Order_status 20'   => '已预约',
     'Paytime'           => '支付时间',
+    'Starttime'         => '开始时间',
+    'Endtime'           => '到期时间',
     'Firstname'         => '名',
     'Lastname'          => '姓',
     'Mobile'            => '手机号',
@@ -29,6 +30,7 @@ return [
     'Is_first 1'        => '是',
     'Createtime'        => '创建时间',
     'Updatetime'        => '更新时间',
+    'Lesson_order_id'   => '下单订单id',
     'User.firstname'    => '名',
     'User.lastname'     => '姓',
     'Trylesson.name'    => '标题',

+ 27 - 1
application/admin/model/Trylessonorder.php

@@ -27,6 +27,8 @@ class Trylessonorder extends Model
     protected $append = [
         'order_status_text',
         'paytime_text',
+        'starttime_text',
+        'endtime_text',
         'is_first_text'
     ];
     
@@ -34,7 +36,7 @@ class Trylessonorder extends Model
     
     public function getOrderStatusList()
     {
-        return ['0' => __('Order_status 0'), '10' => __('Order_status 10'), '20' => __('Order_status 20'), '30' => __('Order_status 30'), '40' => __('Order_status 40')];
+        return ['0' => __('Order_status 0'), '10' => __('Order_status 10'), '20' => __('Order_status 20')];
     }
 
     public function getIsFirstList()
@@ -58,6 +60,20 @@ class Trylessonorder extends Model
     }
 
 
+    public function getStarttimeTextAttr($value, $data)
+    {
+        $value = $value ? $value : (isset($data['starttime']) ? $data['starttime'] : '');
+        return is_numeric($value) ? date("Y-m-d H:i:s", $value) : $value;
+    }
+
+
+    public function getEndtimeTextAttr($value, $data)
+    {
+        $value = $value ? $value : (isset($data['endtime']) ? $data['endtime'] : '');
+        return is_numeric($value) ? date("Y-m-d H:i:s", $value) : $value;
+    }
+
+
     public function getIsFirstTextAttr($value, $data)
     {
         $value = $value ? $value : (isset($data['is_first']) ? $data['is_first'] : '');
@@ -70,6 +86,16 @@ class Trylessonorder extends Model
         return $value === '' ? null : ($value && !is_numeric($value) ? strtotime($value) : $value);
     }
 
+    protected function setStarttimeAttr($value)
+    {
+        return $value === '' ? null : ($value && !is_numeric($value) ? strtotime($value) : $value);
+    }
+
+    protected function setEndtimeAttr($value)
+    {
+        return $value === '' ? null : ($value && !is_numeric($value) ? strtotime($value) : $value);
+    }
+
 
     public function user()
     {

+ 24 - 0
application/admin/view/trylessonorder/add.html

@@ -19,6 +19,12 @@
         </div>
     </div>
     <div class="form-group">
+        <label class="control-label col-xs-12 col-sm-2">{:__('Lesson_ids')}:</label>
+        <div class="col-xs-12 col-sm-8">
+            <input id="c-lesson_ids" data-rule="required" data-source="lesson/index" data-multiple="true" class="form-control selectpage" name="row[lesson_ids]" type="text" value="">
+        </div>
+    </div>
+    <div class="form-group">
         <label class="control-label col-xs-12 col-sm-2">{:__('Order_amount')}:</label>
         <div class="col-xs-12 col-sm-8">
             <input id="c-order_amount" data-rule="required" class="form-control" step="0.01" name="row[order_amount]" type="number" value="0.00">
@@ -43,6 +49,18 @@
         </div>
     </div>
     <div class="form-group">
+        <label class="control-label col-xs-12 col-sm-2">{:__('Starttime')}:</label>
+        <div class="col-xs-12 col-sm-8">
+            <input id="c-starttime" data-rule="required" class="form-control datetimepicker" data-date-format="YYYY-MM-DD HH:mm:ss" data-use-current="true" name="row[starttime]" type="text" value="{:date('Y-m-d H:i:s')}">
+        </div>
+    </div>
+    <div class="form-group">
+        <label class="control-label col-xs-12 col-sm-2">{:__('Endtime')}:</label>
+        <div class="col-xs-12 col-sm-8">
+            <input id="c-endtime" data-rule="required" class="form-control datetimepicker" data-date-format="YYYY-MM-DD HH:mm:ss" data-use-current="true" name="row[endtime]" type="text" value="{:date('Y-m-d H:i:s')}">
+        </div>
+    </div>
+    <div class="form-group">
         <label class="control-label col-xs-12 col-sm-2">{:__('Firstname')}:</label>
         <div class="col-xs-12 col-sm-8">
             <input id="c-firstname" class="form-control" name="row[firstname]" type="text" value="">
@@ -120,6 +138,12 @@
 
         </div>
     </div>
+    <div class="form-group">
+        <label class="control-label col-xs-12 col-sm-2">{:__('Lesson_order_id')}:</label>
+        <div class="col-xs-12 col-sm-8">
+            <input id="c-lesson_order_id" data-rule="required" data-source="lesson/order/index" class="form-control selectpage" name="row[lesson_order_id]" type="text" value="">
+        </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">

+ 24 - 0
application/admin/view/trylessonorder/edit.html

@@ -19,6 +19,12 @@
         </div>
     </div>
     <div class="form-group">
+        <label class="control-label col-xs-12 col-sm-2">{:__('Lesson_ids')}:</label>
+        <div class="col-xs-12 col-sm-8">
+            <input id="c-lesson_ids" disabled data-rule="required" data-source="lesson/index" data-multiple="true" class="form-control selectpage" name="row[lesson_ids]" type="text" value="{$row.lesson_ids|htmlentities}">
+        </div>
+    </div>
+    <div class="form-group">
         <label class="control-label col-xs-12 col-sm-2">{:__('Order_amount')}:</label>
         <div class="col-xs-12 col-sm-8">
             <input id="c-order_amount" disabled data-rule="required" class="form-control" step="0.01" name="row[order_amount]" type="number" value="{$row.order_amount|htmlentities}">
@@ -43,6 +49,18 @@
         </div>
     </div>
     <div class="form-group">
+        <label class="control-label col-xs-12 col-sm-2">{:__('Starttime')}:</label>
+        <div class="col-xs-12 col-sm-8">
+            <input id="c-starttime" disabled data-rule="required" class="form-control datetimepicker" data-date-format="YYYY-MM-DD HH:mm:ss" data-use-current="true" name="row[starttime]" type="text" value="{:$row.starttime?datetime($row.starttime):''}">
+        </div>
+    </div>
+    <div class="form-group">
+        <label class="control-label col-xs-12 col-sm-2">{:__('Endtime')}:</label>
+        <div class="col-xs-12 col-sm-8">
+            <input id="c-endtime" data-rule="required" class="form-control datetimepicker" data-date-format="YYYY-MM-DD HH:mm:ss" data-use-current="true" name="row[endtime]" type="text" value="{:$row.endtime?datetime($row.endtime):''}">
+        </div>
+    </div>
+    <div class="form-group">
         <label class="control-label col-xs-12 col-sm-2">{:__('Firstname')}:</label>
         <div class="col-xs-12 col-sm-8">
             <input id="c-firstname" class="form-control" name="row[firstname]" type="text" value="{$row.firstname|htmlentities}">
@@ -120,6 +138,12 @@
 
         </div>
     </div>
+    <!--<div class="form-group">
+        <label class="control-label col-xs-12 col-sm-2">{:__('Lesson_order_id')}:</label>
+        <div class="col-xs-12 col-sm-8">
+            <input id="c-lesson_order_id" data-rule="required" data-source="lesson/order/index" class="form-control selectpage" name="row[lesson_order_id]" type="text" value="{$row.lesson_order_id|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">

+ 5 - 3
public/assets/js/backend/trylessonorder.js

@@ -33,11 +33,14 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
 //                        {field: 'user.firstname', title: __('User.firstname'), operate: 'LIKE'},
 //                        {field: 'user.lastname', title: __('User.lastname'), operate: 'LIKE'},
                         {field: 'trylesson_id', title: __('Trylesson_id')},
+                        {field: 'lesson_ids', title: __('Lesson_ids'), operate: 'LIKE'},
                         {field: 'trylesson.name', title: __('Trylesson.name'), operate: 'LIKE'},
                         {field: 'trylesson.name_en', title: __('Trylesson.name_en'), operate: 'LIKE'},
                         {field: 'order_amount', title: __('Order_amount'), operate:'BETWEEN'},
-                        {field: 'order_status', title: __('Order_status'), searchList: {"0":__('Order_status 0'),"10":__('Order_status 10'),"20":__('Order_status 20'),"30":__('Order_status 30'),"40":__('Order_status 40')}, formatter: Table.api.formatter.status},
+                        {field: 'order_status', title: __('Order_status'), searchList: {"0":__('Order_status 0'),"10":__('Order_status 10'),"20":__('Order_status 20')}, formatter: Table.api.formatter.status},
                         {field: 'paytime', title: __('Paytime'), operate:'RANGE', addclass:'datetimerange', autocomplete:false, formatter: Table.api.formatter.datetime},
+                        {field: 'starttime', title: __('Starttime'), operate:'RANGE', addclass:'datetimerange', autocomplete:false, formatter: Table.api.formatter.datetime},
+                        {field: 'endtime', title: __('Endtime'), operate:'RANGE', addclass:'datetimerange', autocomplete:false, formatter: Table.api.formatter.datetime},
                         {field: 'firstname', title: __('Firstname'), operate: 'LIKE'},
                         {field: 'lastname', title: __('Lastname'), operate: 'LIKE'},
                         {field: 'mobile', title: __('Mobile'), operate: 'LIKE'},
@@ -52,8 +55,7 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
                         {field: 'is_first', title: __('Is_first'), searchList: {"0":__('Is_first 0'),"1":__('Is_first 1')}, formatter: Table.api.formatter.normal},
                         {field: 'createtime', title: __('Createtime'), operate:'RANGE', addclass:'datetimerange', autocomplete:false, formatter: Table.api.formatter.datetime},
                         {field: 'updatetime', title: __('Updatetime'), operate:'RANGE', addclass:'datetimerange', autocomplete:false, formatter: Table.api.formatter.datetime},
-
-
+//                        {field: 'lesson_order_id', title: __('Lesson_order_id')},
                         {field: 'operate', title: __('Operate'), table: table, events: Table.api.events.operate, formatter: Table.api.formatter.operate}
                     ]
                 ]