@@ -275,31 +292,143 @@
                                  {/eq}
 
                             >
-                                
-                                
-                                    
+
+
+
+
+                        
+
+
+                        
+
+
+
+                        
+
+
+
+
+
+                    
+
+                            
+
+
+                            
+
+
+
+                    
+
+
+                    
+
+
+                    
+
+
+
+                    
+
+                    
+
+
+
+                    
+
+
+                    
+
+
+                    
+
+
+                    
 
 
                     
diff --git a/application/manystore/view/school/classes/classes_lib/index.html b/application/manystore/view/school/classes/classes_lib/index.html
index 9c9ad63..9eb72ab 100644
--- a/application/manystore/view/school/classes/classes_lib/index.html
+++ b/application/manystore/view/school/classes/classes_lib/index.html
@@ -22,15 +22,16 @@
                         个人认证用户只能开设基于公益性质的免费课程
                         机构认证身份可设置付费课程
                     
+                    {$check_full_msg}
 
 
 
                     
diff --git a/public/assets/js/backend/manystore/index.js b/public/assets/js/backend/manystore/index.js
index 991af8c..29c8d35 100644
--- a/public/assets/js/backend/manystore/index.js
+++ b/public/assets/js/backend/manystore/index.js
@@ -176,7 +176,14 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
                             ], events: Table.api.events.operate, formatter: Table.api.formatter.operate},
 
                         {field: 'id', title: 'ID'},
-                         {field: 'shop.name', title: __('申请姓名|机构名'), operate: 'LIKE'},
+                        {field: 'check_full', title: __('是否完善展示信息'), operate:false,formatter:function (value, row, index) {
+                                if(row.check_full){
+                                    return '
已完善';
+                                }else{
+                                    return '
未完善';
+                                }
+                            }},
+                        {field: 'shop.name', title: __('申请姓名|机构名'), operate: 'LIKE'},
                         {field: 'shop.logo', title: __('Logo'), operate: false, events: Table.api.events.image, formatter: Table.api.formatter.image},
 
 
@@ -192,6 +199,9 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
                         {field: 'user.mobile', title: __('User.mobile'), operate: 'LIKE'},
                         {field: 'user.avatar', title: __('User.avatar'), operate: 'LIKE', events: Table.api.events.image, formatter: Table.api.formatter.image},
 
+                        {field: 'shop.shop_star', title: __('机构评分'),sortable:true},
+                        {field: 'shop.star_number', title: __('评价数'),sortable:true},
+
 
                         // {field: 'user_id', title: __('申请姓名|机构名'), operate: 'LIKE'},
                         {field: 'shop.image', title: __('Image'), operate: false, events: Table.api.events.image, formatter: Table.api.formatter.image},
@@ -264,6 +274,10 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
                 Fast.api.open(url,title,options);
             });
 
+            $(document).ready(function() {
+                generrate.listen();
+                generrate.setOfflineType($("#c-type").val());
+            });
 
 
             Form.api.bindevent($("form[role=form]"));
@@ -306,6 +320,12 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
             });
 
 
+            $(document).ready(function() {
+                generrate.listen();
+                generrate.setOfflineType($("#c-type").val());
+
+            });
+
             Form.api.bindevent($("form[role=form]"));
         }
     };
@@ -341,5 +361,72 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
         return 'manystore/user_auth/index?shop_id='+row.id;
     }
 
+
+
+
+
+    var generrate = {
+        listen:function () {
+            this.offlineListen();
+            this.priceListen();
+        },
+        offlineListen:function () {
+            var that = this;
+            // console.log($("input:radio[name='row[address_type]']").val())
+            // this.setOfflineType($("input:radio[name='row[address_type]']").val());
+            // $("input:radio[name='shop[type]']").change(function (){
+            //     that.setOfflineType($(this).val());
+            // });
+            $(document).on("change", "#c-type", function(){
+                //变更后的回调事件
+                that.setOfflineType($(this).val());
+            });
+
+
+        },
+        setOfflineType:function (val) {
+            switch (val) { //1=个人,2=机构
+                case '1': //1=个人
+                    $('#c_person').show();
+                    $('#c_institution').hide();
+                    $('.c_institution').hide();
+
+
+
+                    $(document).ready(function() {
+                        $('#c-yyzzdm').removeAttr('data-rule');
+                        $('#c-yyzz_images').removeAttr('data-rule');
+                        $('#c-legal_entity').removeAttr('data-rule');
+                    });
+
+
+                    break;
+                case '2': //2=机构
+                    $('#c_person').hide();
+                    //data-rule="required"
+                    $('#c_institution').show();
+                    $('.c_institution').show();
+
+                    // $('#c-yyzzdm').attr('data-rule', 'required');
+                    // $('#c-yyzz_images').attr('data-rule', 'required');
+
+                    $(document).ready(function() {
+                        $('#c-yyzzdm').attr('data-rule', 'required');
+                        $('#c-yyzz_images').attr('data-rule', 'required');
+                        $('#c-legal_entity').attr('data-rule', 'required');
+                    });
+
+                    break;
+            }
+            Form.api.bindevent($("form[role=form]"));
+        },
+        priceListen:function () {
+            // $('#spec').bind('input propertychange', function(){
+            //     var length = $("#spec").val().length;
+            //     console.log(length);
+            // });
+        }
+    }
+
     return Controller;
 });
diff --git a/public/assets/js/backend/school/classes/classes_lib.js b/public/assets/js/backend/school/classes/classes_lib.js
index 0b45793..1dd17a6 100644
--- a/public/assets/js/backend/school/classes/classes_lib.js
+++ b/public/assets/js/backend/school/classes/classes_lib.js
@@ -6,7 +6,7 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
             Table.api.init({
                 extend: {
                     index_url: 'school/classes/classes_lib/index' + location.search,
-                    add_url: 'school/classes/classes_lib/add'+ location.search,
+                    add_url: 'school/classes/classes_lib/addnew'+ location.search,
                     addnew_url: 'school/classes/classes_lib/addnew'+ location.search,
                     edit_url: 'school/classes/classes_lib/edit'+ location.search,
                     del_url: 'school/classes/classes_lib/del',
@@ -103,6 +103,21 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
                                     //     return row.status == '2'||row.status == '3';
                                     // }
                                 },
+                                {
+                                    name: 'evaluate',
+                                    text: __('查看用户评价'),
+                                    title: __('查看用户评价'),
+                                    classname: 'btn btn-xs btn-primary btn-dialog',
+                                    icon: 'fa fa-list',
+                                    url: evaluate_url,
+                                    callback: function (data) {
+
+                                    },
+                                    // visible: function (row) {
+                                    //     return row.classes_evaluate_id;
+                                    // }
+                                },
+
                                 //
                                 // {name: 'unsetmockauth',
                                 //     text: '取消加圈资格',
@@ -166,6 +181,9 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
                          {field: 'collect', title: __('实际收藏量'),sortable:true},
                         {field: 'views', title: __('浏览量'),sortable:true},
 
+                        {field: 'classes_star', title: __('课程评分'),sortable:true},
+                        {field: 'star_number', title: __('评价数'),sortable:true},
+
 
                         {field: 'address_type', title: __('Address_type'), searchList: {"1":__('Address_type 1'),"2":__('Address_type 2')}, formatter: Table.api.formatter.normal},
                         {field: 'sale', title: __('Sale'),sortable:true},
@@ -491,5 +509,10 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
     }
 
 
+    var evaluate_url= function (row,dom) {
+        return 'school/classes/evaluate/index?classes_lib_id='+row.id+ '&shop_id='+row.shop_id+ '&teacher_id='+row.teacher_id;
+    }
+
+
     return Controller;
 });
diff --git a/public/assets/js/backend/school/classes/evaluate.js b/public/assets/js/backend/school/classes/evaluate.js
index f89a6aa..12c9830 100644
--- a/public/assets/js/backend/school/classes/evaluate.js
+++ b/public/assets/js/backend/school/classes/evaluate.js
@@ -6,8 +6,8 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
             Table.api.init({
                 extend: {
                     index_url: 'school/classes/evaluate/index' + location.search,
-                    add_url: 'school/classes/evaluate/add',
-                    edit_url: 'school/classes/evaluate/edit',
+                    add_url: 'school/classes/evaluate/add' + location.search,
+                    edit_url: 'school/classes/evaluate/edit' + location.search,
                     del_url: 'school/classes/evaluate/del',
                     multi_url: 'school/classes/evaluate/multi',
                     import_url: 'school/classes/evaluate/import',
@@ -28,36 +28,51 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
                     [
                         {checkbox: true},
                         {field: 'id', title: __('Id')},
-                        {field: 'user_id', title: __('User_id')},
-                        {field: 'classes_lib_id', title: __('Classes_lib_id')},
-                        {field: 'classes_order_id', title: __('Classes_order_id')},
-                        {field: 'manystore_id', title: __('Manystore_id')},
-                        {field: 'shop_id', title: __('Shop_id')},
-                        {field: 'teacher_id', title: __('Teacher_id')},
+
                         {field: 'image', title: __('Image'), operate: false, events: Table.api.events.image, formatter: Table.api.formatter.image},
                         {field: 'nickname', title: __('Nickname'), operate: 'LIKE', table: table, class: 'autocontent', formatter: Table.api.formatter.content},
                         {field: 'classes_star', title: __('Classes_star'), operate:'BETWEEN'},
                         {field: 'teacher_star', title: __('Teacher_star'), operate:'BETWEEN'},
                         {field: 'shop_star', title: __('Shop_star'), operate:'BETWEEN'},
+                        {field: 'message_text', title: __('Message_text'), operate:'BETWEEN'},
+
+
+
                         {field: 'evaluate_time', title: __('Evaluate_time'), operate:'RANGE', addclass:'datetimerange', autocomplete:false, formatter: Table.api.formatter.datetime},
                         {field: 'status', title: __('Status'), searchList: {"1":__('Status 1'),"2":__('Status 2')}, formatter: Table.api.formatter.status},
                         {field: 'top', title: __('Top'), searchList: {"0":__('Top 0'),"1":__('Top 1')}, formatter: Table.api.formatter.normal},
                         {field: 'weigh', title: __('Weigh'), operate: false},
-                        {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: 'user_id', title: __('User_id')},
                         {field: 'user.nickname', title: __('User.nickname'), operate: 'LIKE'},
-                        {field: 'user.realname', title: __('User.realname'), operate: 'LIKE'},
-                        {field: 'user.mobile', title: __('User.mobile'), operate: 'LIKE'},
-                        {field: 'user.avatar', title: __('User.avatar'), operate: 'LIKE', events: Table.api.events.image, formatter: Table.api.formatter.image},
+                        {field: 'user.realname', title: __('User.realname'),visible:false, operate: 'LIKE'},
+                        {field: 'user.mobile', title: __('User.mobile'),visible:false, operate: 'LIKE'},
+                        {field: 'user.avatar', title: __('User.avatar'),visible:false, operate: 'LIKE', events: Table.api.events.image, formatter: Table.api.formatter.image},
+
+
+                        {field: 'shop.name', title: __('Shop.name'), operate: 'LIKE'},
+
                         {field: 'lib.title', title: __('Lib.title'), operate: 'LIKE', table: table, class: 'autocontent', formatter: Table.api.formatter.content},
                         {field: 'lib.headimage', title: __('Lib.headimage'), operate: false, events: Table.api.events.image, formatter: Table.api.formatter.image},
-                        {field: 'classesorder.order_no', title: __('Order.order_no'), operate: 'LIKE', table: table, class: 'autocontent', formatter: Table.api.formatter.content},
-                        {field: 'manystore.nickname', title: __('Manystore.nickname'), operate: 'LIKE'},
-                        {field: 'shop.name', title: __('Shop.name'), operate: 'LIKE'},
-                        {field: 'shop.logo', title: __('Shop.logo'), operate: 'LIKE'},
+
+
                         {field: 'teacher.name', title: __('Teacher.name'), operate: 'LIKE', table: table, class: 'autocontent', formatter: Table.api.formatter.content},
                         {field: 'teacher.head_image', title: __('Teacher.head_image'), operate: false, events: Table.api.events.image, formatter: Table.api.formatter.image},
-                        {field: 'operate', title: __('Operate'), table: table, events: Table.api.events.operate, formatter: Table.api.formatter.operate}
+
+
+
+                        {field: 'classes_lib_id', title: __('Classes_lib_id'),visible:false},
+                        {field: 'classes_order_id', title: __('Classes_order_id'),visible:false},
+                        {field: 'manystore_id', title: __('Manystore_id'),visible:false},
+                        {field: 'shop_id', title: __('Shop_id'),visible:false},
+                        {field: 'teacher_id', title: __('Teacher_id'),visible:false},
+
+                        {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: 'classesorder.order_no', title: __('Order.order_no'),visible:false, operate: 'LIKE', table: table, class: 'autocontent', formatter: Table.api.formatter.content},
+                        {field: 'manystore.nickname', title: __('Manystore.nickname'),visible:false, operate: 'LIKE'},
+                         {field: 'shop.logo', title: __('Shop.logo'),visible:false, operate: 'LIKE'},
+                                               {field: 'operate', title: __('Operate'), table: table, events: Table.api.events.operate, formatter: Table.api.formatter.operate}
                     ]
                 ]
             });
@@ -78,19 +93,19 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
 
                 $("#c-classes_order_id").data("params", function (obj) {
                     //obj为SelectPage对象
-                    return {custom: {shop_id: $("#c-shop_id").val(),classes_lib_id: $("#c-classes_lib_id").val()}};
+                    return {custom: {shop_id: $("#c-shop_id").val(),classes_lib_id: $("#c-classes_lib_id").val(),user_id: $("#c-user_id").val()}};
                 });
 
 
                 //老师必须是上面机构中的
                 $("#c-teacher_id").data("params", function (obj) {
                     //obj为SelectPage对象
-                    return {custom: {shop_id: $("#c-shop_id").val(),classes_lib_id: $("#c-classes_lib_id").val()}};
+                    return {custom: {shop_id: $("#c-shop_id").val()}};
                 });
 
                 $("#c-classes_lib_id").data("params", function (obj) {
                     //obj为SelectPage对象
-                    return {custom: {shop_id: $("#c-shop_id").val()}};
+                    return {custom: {shop_id: $("#c-shop_id").val(),teacher_id: $("#c-teacher_id").val()}};
                 });
 
                 //机构清除老师也要清除
@@ -99,9 +114,12 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
                     $("#c-classes_lib_id").selectPageClear();
                     $("#c-classes_order_id").selectPageClear();
                 });
+                $("#c-teacher_id").change(function () {
+                    $("#c-classes_lib_id").selectPageClear();
+                    $("#c-classes_order_id").selectPageClear();
+                });
 
                 $("#c-classes_lib_id").change(function () {
-                    $("#c-teacher_id").selectPageClear();
                     $("#c-classes_order_id").selectPageClear();
                 });
 
@@ -111,6 +129,7 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
 
 
 
+
                 $(document).on('click', '.btn-changeuser', function (event) {
                     var url = $(this).attr('data-url');
                     if(!url) return false;
diff --git a/public/assets/js/backend/school/classes/order/order.js b/public/assets/js/backend/school/classes/order/order.js
index 70f7768..8599ba6 100644
--- a/public/assets/js/backend/school/classes/order/order.js
+++ b/public/assets/js/backend/school/classes/order/order.js
@@ -82,7 +82,7 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
                                     },
                                     visible: function (row) {
                                         //只有付费订单有售后
-                                        return row.status == '3'  && row.detail.feel == '0';
+                                        return (row.status == '3' || row.status == '9')  && row.detail.feel == '0';
                                     }
                                 },
 
@@ -130,6 +130,22 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
                                     //     return row.status == '2'||row.status == '3';
                                     // }
                                 },
+                                {
+                                    name: 'evaluate',
+                                    text: __('查看用户评价'),
+                                    title: __('查看用户评价'),
+                                    classname: 'btn btn-xs btn-primary btn-dialog',
+                                    icon: 'fa fa-list',
+                                    url: evaluate_url,
+                                    callback: function (data) {
+
+                                    },
+                                    visible: function (row) {
+                                        return row.classes_evaluate_id;
+                                    }
+                                },
+
+
                                 //
                                 // {name: 'unsetmockauth',
                                 //     text: '取消加圈资格',
@@ -327,6 +343,9 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
         return 'school/classes/order/service_order/index?id='+row.classes_service_order_id;
     }
 
+    var evaluate_url= function (row,dom) {
+        return 'school/classes/evaluate/index?classes_order_id='+row.id + '&classes_lib_id='+row.classes_lib_id+ '&shop_id='+row.shop_id+ '&teacher_id='+row.detail.teacher_id+ '&user_id='+row.user_id+ '&nickname='+row.user.nickname  + '&image='+row.user.avatar;
+    }
 
     return Controller;
 });
diff --git a/public/assets/js/backend/school/classes/order/service_order.js b/public/assets/js/backend/school/classes/order/service_order.js
index 4915205..675bd10 100644
--- a/public/assets/js/backend/school/classes/order/service_order.js
+++ b/public/assets/js/backend/school/classes/order/service_order.js
@@ -127,6 +127,21 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
                                     //     return row.paytime;
                                     // }
                                 },
+                                 {
+                                     name: 'order',
+                                     text: __('课程订单查看'),
+                                     title: __('课程订单查看'),
+                                     classname: 'btn btn-xs btn-primary btn-dialog',
+                                     icon: 'fa fa-list',
+                                     url: order_url,
+                                     callback: function (data) {
+
+                                     },
+                                     // visible: function (row) {
+                                     //     return row.status == '2'||row.status == '3';
+                                     // }
+                                 },
+
                                 //
                                 // {name: 'unsetmockauth',
                                 //     text: '取消加圈资格',
@@ -342,5 +357,9 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
     }
 
 
+    var order_url = function (row,dom) {
+        return 'school/classes/order/order/index?id='+row.classes_order_id;
+    }
+
     return Controller;
 });
diff --git a/public/assets/js/backend/school/classes/teacher.js b/public/assets/js/backend/school/classes/teacher.js
index b52b597..547a57a 100644
--- a/public/assets/js/backend/school/classes/teacher.js
+++ b/public/assets/js/backend/school/classes/teacher.js
@@ -27,6 +27,40 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
                 columns: [
                     [
                         {checkbox: true},
+                        {field: 'operate', title: __('Operate'), table: table , buttons: [
+                                {
+                                    name: 'classes',
+                                    text: __('讲师的课程'),
+                                    title: __('讲师的课程'),
+                                    classname: 'btn btn-xs btn-danger btn-magic  btn-dialog',
+                                    icon: 'fa fa-list',
+                                    url: classes_url,
+                                    callback: function (data) {
+
+                                    },
+                                    // visible: function (row) {
+                                    //     return row.status == '2'||row.status == '3';
+                                    // }
+                                },
+                                {
+                                    name: 'evaluate',
+                                    text: __('查看用户评价'),
+                                    title: __('查看用户评价'),
+                                    classname: 'btn btn-xs btn-primary btn-dialog',
+                                    icon: 'fa fa-list',
+                                    url: evaluate_url,
+                                    callback: function (data) {
+
+                                    },
+                                    // visible: function (row) {
+                                    //     return row.classes_evaluate_id;
+                                    // }
+                                },
+
+                            ], events: Table.api.events.operate, formatter: Table.api.formatter.operate},
+
+
+
                         {field: 'id', title: __('Id')},
                         {field: 'manystore_id', title: __('Manystore_id')},
                         {field: 'shop_id', title: __('Shop_id')},
@@ -38,6 +72,11 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
 
                         {field: 'expert_image', title: __('Expert_image'), operate: false, events: Table.api.events.image, formatter: Table.api.formatter.image},
                         {field: 'weigh', title: __('Weigh'), operate: false},
+
+                        {field: 'teacher_star', title: __('老师评分'),sortable:true},
+                        {field: 'star_number', title: __('评价数'),sortable:true},
+
+
                         {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: 'user.nickname', title: __('User.nickname'), operate: 'LIKE'},
@@ -54,7 +93,7 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
                         {field: 'shop.district', title: __('Shop.district')},
                         {field: 'shop.address', title: __('Shop.address'), operate: 'LIKE'},
                         {field: 'shop.address_detail', title: __('Shop.address_detail'), operate: 'LIKE'},
-                        {field: 'operate', title: __('Operate'), table: table, events: Table.api.events.operate, formatter: Table.api.formatter.operate}
+                        // {field: 'operate', title: __('Operate'), table: table, events: Table.api.events.operate, formatter: Table.api.formatter.operate}
                     ]
                 ]
             });
@@ -155,5 +194,15 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
             }
         }
     };
+
+    var evaluate_url= function (row,dom) {
+        return 'school/classes/evaluate/index?shop_id='+row.shop_id+ '&teacher_id='+row.id;
+    }
+
+    var classes_url= function (row,dom) {
+        return 'school/classes/classes_lib/index?shop_id='+row.shop_id+ '&teacher_id='+row.id;
+    }
+
+
     return Controller;
 });
diff --git a/public/assets/js/manystore/general/profile.js b/public/assets/js/manystore/general/profile.js
index cb6ad50..186d478 100644
--- a/public/assets/js/manystore/general/profile.js
+++ b/public/assets/js/manystore/general/profile.js
@@ -35,8 +35,81 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form', 'upload'], function (
                 }
             });
 
+            $(document).ready(function() {
+                generrate.listen();
+                generrate.setOfflineType($("#c-type").val());
+
+            });
+
+
             Form.api.bindevent($("#shop-form"));
         },
     };
+
+
+    var generrate = {
+        listen:function () {
+            this.offlineListen();
+            this.priceListen();
+        },
+        offlineListen:function () {
+            var that = this;
+            // console.log($("input:radio[name='row[address_type]']").val())
+            // this.setOfflineType($("input:radio[name='row[address_type]']").val());
+            // $("input:radio[name='shop[type]']").change(function (){
+            //     that.setOfflineType($(this).val());
+            // });
+            $(document).on("change", "#c-type", function(){
+                //变更后的回调事件
+                that.setOfflineType($(this).val());
+            });
+
+
+        },
+        setOfflineType:function (val) {
+            switch (val) { //1=个人,2=机构
+                case '1': //1=个人
+                    $('#c_person').show();
+                    $('#c_institution').hide();
+                    $('.c_institution').hide();
+
+
+
+                    $(document).ready(function() {
+                        $('#c-yyzzdm').removeAttr('data-rule');
+                        $('#c-yyzz_images').removeAttr('data-rule');
+                        $('#c-legal_entity').removeAttr('data-rule');
+                    });
+
+
+                    break;
+                case '2': //2=机构
+                    $('#c_person').hide();
+                    //data-rule="required"
+                    $('#c_institution').show();
+                    $('.c_institution').show();
+
+                    // $('#c-yyzzdm').attr('data-rule', 'required');
+                    // $('#c-yyzz_images').attr('data-rule', 'required');
+
+                    $(document).ready(function() {
+                        $('#c-yyzzdm').attr('data-rule', 'required');
+                        $('#c-yyzz_images').attr('data-rule', 'required');
+                        $('#c-legal_entity').attr('data-rule', 'required');
+                    });
+
+                    break;
+            }
+            Form.api.bindevent($("form[role=form]"));
+        },
+        priceListen:function () {
+            // $('#spec').bind('input propertychange', function(){
+            //     var length = $("#spec").val().length;
+            //     console.log(length);
+            // });
+        }
+    }
+
+
     return Controller;
 });
diff --git a/public/assets/js/manystore/school/classes/classes_lib.js b/public/assets/js/manystore/school/classes/classes_lib.js
index a0d2582..194261b 100644
--- a/public/assets/js/manystore/school/classes/classes_lib.js
+++ b/public/assets/js/manystore/school/classes/classes_lib.js
@@ -6,7 +6,7 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
             Table.api.init({
                 extend: {
                     index_url: 'school/classes/classes_lib/index' + location.search,
-                    add_url: 'school/classes/classes_lib/add'+ location.search,
+                    add_url: 'school/classes/classes_lib/addnew'+ location.search,
                      addnew_url: 'school/classes/classes_lib/addnew'+ location.search,
                     edit_url: 'school/classes/classes_lib/edit'+ location.search,
                     del_url: 'school/classes/classes_lib/del',
@@ -99,6 +99,22 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
                                     //     return row.status == '2'||row.status == '3';
                                     // }
                                 },
+                                {
+                                    name: 'evaluate',
+                                    text: __('查看用户评价'),
+                                    title: __('查看用户评价'),
+                                    classname: 'btn btn-xs btn-primary btn-dialog',
+                                    icon: 'fa fa-list',
+                                    url: evaluate_url,
+                                    callback: function (data) {
+
+                                    },
+                                    // visible: function (row) {
+                                    //     return row.classes_evaluate_id;
+                                    // }
+                                },
+
+
                                 // {name: 'unsetmockauth',
                                 //     text: '取消加圈资格',
                                 //     icon: 'fa fa-sign-in',
@@ -165,6 +181,11 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
                         {field: 'views', title: __('浏览量'),sortable:true},
 
 
+                        {field: 'classes_star', title: __('课程评分'),sortable:true},
+                        {field: 'star_number', title: __('评价数'),sortable:true},
+
+
+
                         {field: 'address_type', title: __('Address_type'), searchList: {"1":__('Address_type 1'),"2":__('Address_type 2')}, formatter: Table.api.formatter.normal},
                         {field: 'sale', title: __('Sale'),sortable:true},
                         {field: 'price', title: __('Price'),sortable:true, operate:'BETWEEN'},
@@ -487,5 +508,10 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
         return 'school/classes/hourorder/order/index?classes_lib_id='+row.id;
     }
 
+    var evaluate_url= function (row,dom) {
+        return 'school/classes/evaluate/index?classes_lib_id='+row.id+ '&shop_id='+row.shop_id+ '&teacher_id='+row.teacher_id;
+    }
+
+
     return Controller;
 });
diff --git a/public/assets/js/manystore/school/classes/evaluate.js b/public/assets/js/manystore/school/classes/evaluate.js
index cda08c9..2baa696 100644
--- a/public/assets/js/manystore/school/classes/evaluate.js
+++ b/public/assets/js/manystore/school/classes/evaluate.js
@@ -25,37 +25,58 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
                 columns: [
                     [
                         {checkbox: true},
+
+
                         {field: 'id', title: __('Id')},
-                        {field: 'user_id', title: __('User_id')},
-                        {field: 'classes_lib_id', title: __('Classes_lib_id')},
-                        {field: 'classes_order_id', title: __('Classes_order_id')},
-                        {field: 'manystore_id', title: __('Manystore_id')},
-                        {field: 'shop_id', title: __('Shop_id')},
-                        {field: 'teacher_id', title: __('Teacher_id')},
+
                         {field: 'image', title: __('Image'), operate: false, events: Table.api.events.image, formatter: Table.api.formatter.image},
-                        {field: 'nickname', title: __('Nickname'), operate: 'LIKE'},
+                        {field: 'nickname', title: __('Nickname'), operate: 'LIKE', table: table, class: 'autocontent', formatter: Table.api.formatter.content},
                         {field: 'classes_star', title: __('Classes_star'), operate:'BETWEEN'},
                         {field: 'teacher_star', title: __('Teacher_star'), operate:'BETWEEN'},
                         {field: 'shop_star', title: __('Shop_star'), operate:'BETWEEN'},
-                        {field: 'evaluate_time', title: __('Evaluate_time')},
+                        {field: 'message_text', title: __('Message_text'), operate:'BETWEEN'},
+
+
+
+                        {field: 'evaluate_time', title: __('Evaluate_time'), operate:'RANGE', addclass:'datetimerange', autocomplete:false, formatter: Table.api.formatter.datetime},
                         {field: 'status', title: __('Status'), searchList: {"1":__('Status 1'),"2":__('Status 2')}, formatter: Table.api.formatter.status},
                         {field: 'top', title: __('Top'), searchList: {"0":__('Top 0'),"1":__('Top 1')}, formatter: Table.api.formatter.normal},
                         {field: 'weigh', title: __('Weigh'), operate: false},
-                        {field: 'createtime', title: __('Createtime')},
-                        {field: 'updatetime', title: __('Updatetime')},
+
+
+
+                        {field: 'user_id', title: __('User_id')},
                         {field: 'user.nickname', title: __('User.nickname'), operate: 'LIKE'},
-                        {field: 'user.realname', title: __('User.realname'), operate: 'LIKE'},
-                        {field: 'user.mobile', title: __('User.mobile'), operate: 'LIKE'},
-                        {field: 'user.avatar', title: __('User.avatar'), operate: 'LIKE', events: Table.api.events.image, formatter: Table.api.formatter.image},
+                        {field: 'user.realname', title: __('User.realname'),visible:false, operate: 'LIKE'},
+                        {field: 'user.mobile', title: __('User.mobile'),visible:false, operate: 'LIKE'},
+                        {field: 'user.avatar', title: __('User.avatar'),visible:false, operate: 'LIKE', events: Table.api.events.image, formatter: Table.api.formatter.image},
+
                         {field: 'schoolclasseslib.title', title: __('Schoolclasseslib.title'), operate: 'LIKE'},
                         {field: 'schoolclasseslib.headimage', title: __('Schoolclasseslib.headimage'), operate: false, events: Table.api.events.image, formatter: Table.api.formatter.image},
-                        {field: 'schoolclassesorder.order_no', title: __('Schoolclassesorder.order_no'), operate: 'LIKE'},
-                        {field: 'manystore.nickname', title: __('Manystore.nickname'), operate: 'LIKE'},
-                        {field: 'manystoreshop.name', title: __('Manystoreshop.name'), operate: 'LIKE'},
-                        {field: 'manystoreshop.logo', title: __('Manystoreshop.logo'), operate: 'LIKE'},
+
                         {field: 'schoolteacher.name', title: __('Schoolteacher.name'), operate: 'LIKE'},
                         {field: 'schoolteacher.head_image', title: __('Schoolteacher.head_image'), operate: false, events: Table.api.events.image, formatter: Table.api.formatter.image},
-                        {field: 'operate', title: __('Operate'), table: table, events: Table.api.events.operate, formatter: Table.api.formatter.operate}
+
+
+                        {field: 'manystoreshop.name', title: __('Manystoreshop.name'), operate: 'LIKE'},
+
+                        {field: 'classes_lib_id', title: __('Classes_lib_id'),visible:false},
+                        {field: 'classes_order_id', title: __('Classes_order_id'),visible:false},
+                        {field: 'manystore_id', title: __('Manystore_id'),visible:false},
+                        {field: 'shop_id', title: __('Shop_id'),visible:false},
+                        {field: 'teacher_id', title: __('Teacher_id'),visible:false},
+
+
+
+
+                        {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: 'schoolclassesorder.order_no',visible:false, title: __('Schoolclassesorder.order_no'), operate: 'LIKE'},
+                        {field: 'manystore.nickname',visible:false, title: __('Manystore.nickname'), operate: 'LIKE'},
+
+                        {field: 'manystoreshop.logo',visible:false, title: __('Manystoreshop.logo'), operate: 'LIKE'},
+                                                {field: 'operate', title: __('Operate'), table: table, events: Table.api.events.operate, formatter: Table.api.formatter.operate}
                     ]
                 ]
             });
@@ -74,25 +95,21 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
 
 
 
-
-
                 $("#c-classes_order_id").data("params", function (obj) {
                     //obj为SelectPage对象
-                    return {custom: {shop_id: $("#c-shop_id").val(),classes_lib_id: $("#c-classes_lib_id").val()}};
+                    return {custom: {shop_id: $("#c-shop_id").val(),classes_lib_id: $("#c-classes_lib_id").val(),user_id: $("#c-user_id").val()}};
                 });
 
 
-
-
                 //老师必须是上面机构中的
                 $("#c-teacher_id").data("params", function (obj) {
                     //obj为SelectPage对象
-                    return {custom: {shop_id: $("#c-shop_id").val(),classes_lib_id: $("#c-classes_lib_id").val()}};
+                    return {custom: {shop_id: $("#c-shop_id").val()}};
                 });
 
                 $("#c-classes_lib_id").data("params", function (obj) {
                     //obj为SelectPage对象
-                    return {custom: {shop_id: $("#c-shop_id").val()}};
+                    return {custom: {shop_id: $("#c-shop_id").val(),teacher_id: $("#c-teacher_id").val()}};
                 });
 
                 //机构清除老师也要清除
@@ -101,9 +118,12 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
                     $("#c-classes_lib_id").selectPageClear();
                     $("#c-classes_order_id").selectPageClear();
                 });
+                $("#c-teacher_id").change(function () {
+                    $("#c-classes_lib_id").selectPageClear();
+                    $("#c-classes_order_id").selectPageClear();
+                });
 
                 $("#c-classes_lib_id").change(function () {
-                    $("#c-teacher_id").selectPageClear();
                     $("#c-classes_order_id").selectPageClear();
                 });
 
@@ -114,7 +134,6 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
 
 
 
-
                 $(document).on('click', '.btn-changeuser', function (event) {
                     var url = $(this).attr('data-url');
                     if(!url) return false;
diff --git a/public/assets/js/manystore/school/classes/order/order.js b/public/assets/js/manystore/school/classes/order/order.js
index 9a8d8e1..3ab6dcd 100644
--- a/public/assets/js/manystore/school/classes/order/order.js
+++ b/public/assets/js/manystore/school/classes/order/order.js
@@ -10,6 +10,7 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
                     edit_url: 'school/classes/order/order/edit',
                     del_url: 'school/classes/order/order/del',
                     cancel_url: 'school/classes/order/order/cancel',
+                    after_sales_url: 'school/classes/order/order/after_sales',
                     multi_url: 'school/classes/order/order/multi',
                     import_url: 'school/classes/order/order/import',
                     table: 'school_classes_order',
@@ -112,6 +113,38 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
                                     //     return row.status == '2'||row.status == '3';
                                     // }
                                 },
+
+                                {
+                                    name: 'evaluate',
+                                    text: __('查看用户评价'),
+                                    title: __('查看用户评价'),
+                                    classname: 'btn btn-xs btn-primary btn-dialog',
+                                    icon: 'fa fa-list',
+                                    url: evaluate_url,
+                                    callback: function (data) {
+
+                                    },
+                                    visible: function (row) {
+                                        return row.classes_evaluate_id;
+                                    }
+                                },
+
+                                {
+                                    name: 'after_sales',
+                                    text: __('机构主动发起售后'),
+                                    title: __('机构主动发起售后'),
+                                    classname: 'btn btn-xs btn-danger btn-dialog',
+                                    icon: 'fa fa-sign-in',
+                                    url: $.fn.bootstrapTable.defaults.extend.after_sales_url,
+                                    callback: function (data) {
+
+                                    },
+                                    visible: function (row) {
+                                        //只有付费订单有售后
+                                        return (row.status == '3' || row.status == '9')  && row.schoolclassesorderdetail.feel == '0';
+                                    }
+                                },
+
                                 //
                                 // {name: 'unsetmockauth',
                                 //     text: '取消加圈资格',
@@ -276,6 +309,12 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
         edit: function () {
             Controller.api.bindevent();
         },
+        after_sales: function(){
+            $("#after_sales").on('click', function() {
+                $("#after_sales-form").attr("action",'school/classes/order/order/after_sales').submit();
+            });
+            Controller.api.bindevent();
+        },
         api: {
             bindevent: function () {
                 Form.api.bindevent($("form[role=form]"));
@@ -300,5 +339,9 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
         return 'school/classes/order/service_order/index?classes_order_id='+row.id;
     }
 
+
+    var evaluate_url= function (row,dom) {
+        return 'school/classes/evaluate/index?classes_order_id='+row.id + '&classes_lib_id='+row.classes_lib_id+ '&shop_id='+row.shop_id+ '&teacher_id='+row.schoolclassesorderdetail.teacher_id+ '&user_id='+row.user_id+ '&nickname='+row.user.nickname  + '&image='+row.user.avatar;
+    }
     return Controller;
 });
\ No newline at end of file
diff --git a/public/assets/js/manystore/school/classes/order/service_order.js b/public/assets/js/manystore/school/classes/order/service_order.js
index c012985..f824cae 100644
--- a/public/assets/js/manystore/school/classes/order/service_order.js
+++ b/public/assets/js/manystore/school/classes/order/service_order.js
@@ -79,6 +79,20 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
                                     //     return row.paytime;
                                     // }
                                 },
+                               {
+                                   name: 'order',
+                                   text: __('课程订单查看'),
+                                   title: __('课程订单查看'),
+                                   classname: 'btn btn-xs btn-primary btn-dialog',
+                                   icon: 'fa fa-list',
+                                   url: order_url,
+                                   callback: function (data) {
+
+                                   },
+                                   // visible: function (row) {
+                                   //     return row.status == '2'||row.status == '3';
+                                   // }
+                               },
                                 //
                                 // {name: 'unsetmockauth',
                                 //     text: '取消加圈资格',
@@ -292,6 +306,9 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
         }
     }
 
+    var order_url = function (row,dom) {
+        return 'school/classes/order/order/index?id='+row.classes_order_id;
+    }
 
     return Controller;
 });
\ No newline at end of file
diff --git a/public/assets/js/manystore/school/classes/teacher.js b/public/assets/js/manystore/school/classes/teacher.js
index cc5641d..6a41e95 100644
--- a/public/assets/js/manystore/school/classes/teacher.js
+++ b/public/assets/js/manystore/school/classes/teacher.js
@@ -25,6 +25,41 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
                 columns: [
                     [
                         {checkbox: true},
+
+                        {field: 'operate', title: __('Operate'), table: table , buttons: [
+                                {
+                                    name: 'classes',
+                                    text: __('讲师的课程'),
+                                    title: __('讲师的课程'),
+                                    classname: 'btn btn-xs btn-danger btn-magic  btn-dialog',
+                                    icon: 'fa fa-list',
+                                    url: classes_url,
+                                    callback: function (data) {
+
+                                    },
+                                    // visible: function (row) {
+                                    //     return row.status == '2'||row.status == '3';
+                                    // }
+                                },
+                                {
+                                    name: 'evaluate',
+                                    text: __('查看用户评价'),
+                                    title: __('查看用户评价'),
+                                    classname: 'btn btn-xs btn-primary btn-dialog',
+                                    icon: 'fa fa-list',
+                                    url: evaluate_url,
+                                    callback: function (data) {
+
+                                    },
+                                    // visible: function (row) {
+                                    //     return row.classes_evaluate_id;
+                                    // }
+                                },
+
+                            ], events: Table.api.events.operate, formatter: Table.api.formatter.operate},
+
+
+
                         {field: 'id', title: __('Id')},
                         {field: 'manystore_id', title: __('Manystore_id'),visible:false},
                         {field: 'shop_id', title: __('Shop_id'),visible:false},
@@ -38,6 +73,12 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
                         {field: 'status', title: __('Status'), searchList: {"1":__('Status 1'),"2":__('Status 2')}, formatter: Table.api.formatter.status},
                         {field: 'expert_image', title: __('Expert_image'), operate: false, events: Table.api.events.image, formatter: Table.api.formatter.image},
                         {field: 'weigh', title: __('Weigh'), operate: false},
+
+
+                        {field: 'teacher_star', title: __('老师评分'),sortable:true},
+                        {field: 'star_number', title: __('评价数'),sortable:true},
+
+
                         {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: 'manystore.nickname', title: __('Manystore.nickname'), operate: 'LIKE',visible:false},
@@ -49,7 +90,7 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
                         // {field: 'manystoreshop.district', title: __('Manystoreshop.district')},
                         // {field: 'manystoreshop.address', title: __('Manystoreshop.address'), operate: 'LIKE'},
                         // {field: 'manystoreshop.address_detail', title: __('Manystoreshop.address_detail'), operate: 'LIKE'},
-                        {field: 'operate', title: __('Operate'), table: table, events: Table.api.events.operate, formatter: Table.api.formatter.operate}
+                        // {field: 'operate', title: __('Operate'), table: table, events: Table.api.events.operate, formatter: Table.api.formatter.operate}
                     ]
                 ]
             });
@@ -149,5 +190,16 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
             }
         }
     };
+
+
+    var evaluate_url= function (row,dom) {
+        return 'school/classes/evaluate/index?shop_id='+row.shop_id+ '&teacher_id='+row.id;
+    }
+
+    var classes_url= function (row,dom) {
+        return 'school/classes/classes_lib/index?shop_id='+row.shop_id+ '&teacher_id='+row.id;
+    }
+
+
     return Controller;
 });
\ No newline at end of file