Forráskód Böngészése

Merge remote-tracking branch 'origin/master'

# Conflicts:
#	apps/tenant/operation_help/views.py
wushaodong 4 éve
szülő
commit
b1cba439fe

+ 36 - 0
apps/tenant/operation_help/models.py

@@ -60,3 +60,39 @@ class OperationHelpImg(models.Model):
         image = self.image
         # self.delete()
         DeleteFile(image)
+
+class OperationHelpRadio(models.Model):
+    radio_path = models.CharField(verbose_name=u'视频路径', max_length=250)
+    radio_size = models.FloatField(verbose_name="视频大小",blank=True, default=0)
+    radio_time = models.FloatField(verbose_name="视频时长",blank=True, default=0)
+
+    class Meta:
+        db_table = 'operation_help_radio'
+        ordering = ['-id']
+        verbose_name = u'运维帮助视频'
+
+    def _add_radio(self, file, user_id):
+
+
+        path = "operation_help_radio/"
+        filename = UploadFile(file, path, user_id)
+        fullname = "%s%s" % (settings.MEDIA_ROOT, filename)
+
+        # try:
+        #     img = Image.open(fullname)
+        #     width, height = img.size
+        #     # 缩略图压缩宽或高最大200
+        #     if width > 1440:
+        #         img = img.resize((1440, int((height / width) * 1440)), Image.ANTIALIAS)
+        #         img.save(fullname)
+        #         width, height = img.size
+        # except:
+        #     pass
+
+        self.radio_path = "%s%s" % (settings.MEDIA_URL, filename)
+        self.save()
+
+    def del_radio(self):
+        radio = self.radio
+        # self.delete()
+        DeleteFile(radio)

+ 0 - 2
apps/tenant/operation_help/serializer.py

@@ -17,8 +17,6 @@ class OperationHelpSerializer(serializers.ModelSerializer):
         fields = '__all__'
 
     def create(self, validated_data):
-        if 'file' in self.initial_data:
-            validated_data['images'] = self.initial_data['file'].split(',')
         validated_data['create_user'] = self.context['request'].user
         validated_data['tenant'] = self.context['request'].user.employee.tenant
         instance = super(OperationHelpSerializer, self).create(validated_data)

+ 9 - 1
apps/tenant/operation_help/views.py

@@ -4,7 +4,7 @@ from utils.custom_modelviewset import CustomModelViewSet
 from rest_framework.decorators import action
 import json
 
-from .models import OperationHelp,OperationHelpImg
+from .models import OperationHelp,OperationHelpImg,OperationHelpRadio
 from utils.permission import IsAdministratorUser
 from .serializer import OperationHelpSerializer
 from apps.tenant import tenant_log
@@ -44,3 +44,11 @@ class OperationHelpViewSet(CustomModelViewSet):
         if img:
             return response_ok(img.image)
         return response_error('上传失败,请重新上传!')
+
+    @action(methods=['post'], detail=False)
+    def upload_radio(self, request):
+        file = self.request.FILES.get('file')
+        radio_path = OperationHelpRadio.objects._add_img(file, request.user)
+        if radio_path:
+            return response_ok(radio_path)
+        return response_error('上传失败,请重新上传!')

A különbségek nem kerülnek megjelenítésre, a fájl túl nagy
+ 0 - 1
uis/layuiadmin/layui/lay/modules/layedit.js


+ 3 - 0
uis/tenant/index.html

@@ -90,6 +90,9 @@
                             <dd data-name="nav" data-user_type="1">
                                 <a lay-href="banner/index.html">首页轮播</a>
                             </dd>
+                            <dd data-name="nav" data-user_type="1">
+                                <a lay-href="operation_help/index.html">运维宝典</a>
+                            </dd>
                         </dl>
                     </li>
                     <li data-name="set" class="layui-nav-item">

+ 0 - 6
uis/tenant/operation_help/detail.html

@@ -50,12 +50,6 @@
             <li class="tenant-li">
                 <h3>是否在用:{{ d.enable_text }}</h3>
             </li>
-            {{# if(d.image){ }}
-            <li class="tenant-li">
-                <h3 style="margin-bottom: 10px">轮播图:</h3>
-                <img src="{{d.image}}" class="imgStyle" />
-            </li>
-            {{# } }}
         </ui>
     </div>
 </script>

+ 42 - 124
uis/tenant/operation_help/edit.html

@@ -2,7 +2,7 @@
 <html>
 <head>
     <meta charset="utf-8">
-    <title>添加轮播图</title>
+    <title>添加运维宝典</title>
     <meta name="renderer" content="webkit">
     <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
     <meta name="viewport"
@@ -34,16 +34,6 @@
                                 <textarea class="layui-textarea" placeholder="请输内容" id="content_demo"></textarea>
                             </div>
                         </div>
-                        <div class="layui-col-lg6">
-                            <label class="layui-form-label"><font color='red' size="4">*</font>位置:</label>
-                            <div class="layui-input-block">
-                                <select name="location" lay-verify="required" style="width: 40px;">
-                                    <option value=""></option>
-                                    <option value='1' selected>轮播</option>
-                                    <!--option value='2'>弹窗</option-->
-                                </select>
-                            </div>
-                        </div>
                         <div class="layui-form-item">
                             <label class="layui-form-label"><font color='red' size="4">*</font>是否在用:</label>
                             <div class="layui-input-block">
@@ -52,15 +42,6 @@
                             </div>
                         </div>
 
-                        <div class="layui-form-item">
-                            <label class="layui-form-label"><font color='red' size="4">*</font>轮播图:</label>
-                            <div class="layui-input-block">
-                                <button type="button" class="layui-btn-sm" id="banner_img">上传图片</button>
-                                <br><br>
-                                <img class="layui-upload-img" id="banner_img_demo" style="max-height: 100px;">
-                            </div>
-                        </div>
-
                         <button class="layui-btn" id="id_save" lay-submit lay-filter="component-form-element"
                                 style="display: none">保存
                         </button>
@@ -91,19 +72,24 @@
         var editIndex = layedit.build('content_demo', {
             height: 180,
             tool: [
-              'strong' //加粗
-              ,'italic' //斜体
-              ,'underline' //下划线
-              ,'del' //删除线
-              ,'|' //分割线
-              ,'left' //左对齐
-              ,'center' //居中对齐
-              ,'right' //右对齐
-              ,'link' //超链接
-              ,'unlink' //清除链接
-              ,'face' //表情
-              ,'help' //帮助
-            ]
+                'code', 'strong', 'italic', 'underline', 'del', 'addhr', '|', 'fontFomatt', 'colorpicker', 'face'
+                , '|', 'left', 'center', 'right', '|', 'link', 'unlink', 'image_alt', 'video', 'anchors'
+                , '|', 'fullScreen'
+            ],
+             uploadImage: {
+                url: '/tenant/poster/',
+                accept: 'image',
+                acceptMime: 'image/*',
+                exts: 'jpg|png|gif|bmp|jpeg',
+                size: '10240'
+             },
+             uploadVideo: {
+                 url: '/upload/uploadVideo/',
+                 accept: 'video',
+                 acceptMime: 'video/*',
+                 exts: 'mp4|flv|avi|rm|rmvb',
+                 size: '20480'
+             }
         });
 
         form.render(null, 'component-form-element');
@@ -114,110 +100,42 @@
             if(editdata.content){
               layedit.setContent(editIndex, editdata.content, false);
             }
-            $('#banner_img_demo').attr('src', editdata.image);
         }
         var form_data = {},
             url = id ? '/tenant/poster/' + id + '/update_poster/' : '/tenant/poster/',
-            method = id ? 'post' : 'put',
-            banner_img = '';
-
-        upload.render({
-            elem: "#banner_img",
-            url: url,
-            auto: false,
-            field: 'banner_img',
-            bindAction: "#upload_image",
-            choose: function (obj) {
-                obj.preview(
-                    function (index, file, result) {
-                        $("#banner_img_demo").attr("src", result)
-                    }
-                )
-            },
-            data: {
-                data: function () {
-                    return JSON.stringify(form_data)
-                }
-            },
-            done: function (res) {
-                if (res.code != 0) {
-                    layer.msg(res.msg);
-                } else {
-                    layer.open({
-                        type: 1
-                        , content: '<div style="padding: 20px 100px;">保存成功</div>'
-                        , btn: '关闭'
-                        , btnAlign: 'c' //按钮居中
-                        , shade: 0 //不显示遮罩
-                        , yes: function () {
-                            parent.layer.closeAll('iframe');
-                            parent.layui.table.reload('datagrid', {});
-                        }
-                    });
-                }
-            },
-            error: function () {
-                layer.msg('保存失败');
-            }
-        });
+            method = id ? 'post' : 'put'
 
         form.on('submit(component-form-element)', function (data) {
             //layer.msg(JSON.stringify(data.field));
-
-            if (!data.field.banner_img) {
-                data.field.banner_img = banner_img
-            } else {
-                banner_img = data.field.banner_img
-            }
             //富文本中的内容
             data.field.content = layedit.getContent(editIndex);
             if(!data.field.enable){
                 data.field.enable = 0
             }
-            if (!id) {
-                if (!data.field.banner_img) {
-                    layer.msg('请选择轮播图图片');
-                    return false;
-                }
-                form_data = data.field
-                delete form_data.banner_img
-                delete form_data.file
-                setTimeout($('#upload_image').click(), 30000)
-            } else {
-                if (data.field.banner_img) { // 修改了图片
-                    form_data = data.field
-                    delete form_data.banner_img
-                    delete form_data.file
-                    setTimeout($('#upload_image').click(), 30000)
-                } else {
-                    // 没有修改了图片
-                    form_data = data.field
-                    delete form_data.banner_img
-                    delete form_data.file
-                    admin.req({
-                        url: url
-                        , data: {data:JSON.stringify(form_data)}
-                        , type: method
-                        , done: function (res) {
-                            if (res.code != 0) {
-                                layer.msg(res.msg);
-                            } else {
-                                layer.open({
-                                    type: 1
-                                    , content: '<div style="padding: 20px 100px;">保存成功</div>'
-                                    , btn: '关闭'
-                                    , btnAlign: 'c' //按钮居中
-                                    , shade: 0 //不显示遮罩
-                                    , yes: function () {
-                                        parent.layer.closeAll('iframe');
-                                        parent.layui.table.reload('datagrid', {});
-                                    }
-                                });
+            // 调用接口新增或者修改运维宝典数据
+            form_data = data.field
+            admin.req({
+                url: url
+                , data: {data:JSON.stringify(form_data)}
+                , type: method
+                , done: function (res) {
+                    if (res.code != 0) {
+                        layer.msg(res.msg);
+                    } else {
+                        layer.open({
+                            type: 1
+                            , content: '<div style="padding: 20px 100px;">保存成功</div>'
+                            , btn: '关闭'
+                            , btnAlign: 'c' //按钮居中
+                            , shade: 0 //不显示遮罩
+                            , yes: function () {
+                                parent.layer.closeAll('iframe');
+                                parent.layui.table.reload('datagrid', {});
                             }
-                        }
-                    });
+                        });
+                    }
                 }
-            }
+            });
             return false;
         });
 

+ 2 - 6
uis/tenant/operation_help/index.html

@@ -2,7 +2,7 @@
 <html>
 <head>
     <meta charset="utf-8">
-    <title>轮播管理</title>
+    <title>运维宝典</title>
     <meta name="renderer" content="webkit">
     <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
     <meta name="viewport"
@@ -110,11 +110,7 @@
             , cols: [[
                 {field: 'title', title: '标题', width: 150}
                 ,{field: 'content', title: '内容', width: 280}
-                ,{field: 'location_text', title: '位置', width: 100}
-                ,{field: 'create_user_name', title: '添加人', width: 100}
-                ,{field: 'tenant_name', title: '企业', width: 200}
-                ,{field: 'create_time', title: '添加时间', width: 200}
-                ,{field: 'enable_text', title: '是否在用', width: 100}
+                ,{field: 'create_time', title: '创建时间', width: 200}
                 , {title: "操作", width: 150, align: 'left', fixed: 'right', toolbar: '#datagrid-operate-bar'}
             ]]
             , page: true

Nem az összes módosított fájl került megjelenítésre, mert túl sok fájl változott