Browse Source

意见反馈

codeMan 1 year ago
parent
commit
2dd8774b42

+ 0 - 1
cloud/businessCard/edit.vue

@@ -473,7 +473,6 @@ export default {
     box-sizing: border-box;
     padding: 5px 10px;
     display: flex;
-    align-items: center;
     .add {
         display: flex;
         align-items: center;

+ 6 - 2
cloud/contacts/index.vue

@@ -15,8 +15,11 @@
             </view>
             
             <view class="list">
-                <My_listbox ref="List" @getlist="getList" :bottomHeight="70">
-                    <List :list="list"></List>
+                <My_listbox ref="List" @getlist="getList" :bottomHeight="70" :isShowEmpty="false">
+                    <List :list="list" v-if="list.length"></List>
+                    <view v-else :style="{marginTop:tovw(150)}">
+                        <u-empty mode="data" size="small"/>
+                    </view>
                 </My_listbox>
             </view>
         </view>
@@ -106,6 +109,7 @@ export default {
         .type-list {
             background: #F7F7F7;
             width: 90px;
+            flex-basis: 90px;
             .type-item {
                 font-weight: 400;
                 font-size: 14px;

+ 299 - 4
cloud/feedback/detail.vue

@@ -1,13 +1,308 @@
 <template>
-    <view>
-        意见反馈详情
+    <view class="detail">
+        <view class="header-info">
+            <view class="title">反馈描述</view>
+            <view class="type">
+                <text>反馈类型:</text>
+                {{ detail.type }}
+            </view>
+            <view class="remarks">
+                <text>反馈描述:</text>
+                {{ detail.remarks }}
+            </view>
+            <view class="file-box">
+                <block v-for="item in detail.attinfos" :key="item.attachmentid">
+                    <view v-if="item.fileType == 'image'" @click="viewImages(item.url)" class="item">
+                        <u-image :src="item.url" :width="tovw(105)" :height="tovw(105)" :lazy-load="true" radius="5"></u-image>
+                    </view>
+                    <view v-else-if="item.fileType == 'video'" class="item">
+                        <video class="video" :style="{width:tovw(105),height:tovw(105)}" :poster="item.subfiles[0].url"
+                        :src="item.url" />  
+                    </view>
+                </block>
+            </view>
+        </view>
+        <view class="message-box">
+            <view class="message-header">
+                <text>回复</text>
+                <text>共{{ total }}条</text>
+            </view>
+            <My_listbox ref="List" @getlist="getComment">
+                <view class="content">
+                    <view class="message-item" v-for="item in list" :key="item.sys_datacommentid">
+                        <u-image :src="item.headpic ? item.headpic : 'https://yossys06593.obs.cn-east-3.myhuaweicloud.com:443/202404231713854678447B26b4363.svg'" :width="tovw(32)" :height="tovw(32)" :lazy-load="true" radius="50%"></u-image>
+                        <view class="user-info">
+                            <text class="name">{{ item.name }}</text>
+                            <view class="message-text">
+                                {{ item.content }}
+                            </view>
+                            <text class="time">{{ item.createdate }}</text>
+                        </view>
+                    </view>
+                </view>
+            </My_listbox>
+        </view>
+        
+        <view :style="{height:tovw(70)}"></view>
+        <view class="footer">
+            <view class="input-box" hover-class="navigator-hover">
+                <input class="input" type="text" placeholder="评论" :value="commentText" maxlength="499"
+                    @input="changeComment" confirm-type="send" @confirm="onSend">
+                <icon v-if="commentText" class="icon" type="clear" size="3.733vw" @click="onClear" />
+            </view>
+            <view class="add-box">
+                <view class="add" hover-class="navigator-hover"
+                    @click="loading ? '' : onSend()">
+                    <u-loading-icon v-if="loading" />
+                    <block v-else>
+                        发送
+                    </block>
+                </view>
+            </view>
+            
+        </view>
     </view>
 </template>
 
 <script>
+import { formattedFiles,viewImage } from "../../utils/settleFiles.js"
 export default {
-
+    data () {
+        return {
+            detail:{attinfos:[]},
+            "content": {
+                "sa_feedbackid": '',
+                "pageNumber": 1,
+                "pageSize": 20
+            },
+            list:[],
+            id:'',
+            commentText:'',
+            total:0,
+            loading:false
+        }
+    },
+    methods: {
+        async getDetail(id) {
+            let res = await this.$Http.basic({
+                "id": 20240517102602,
+                "content": {
+                    sa_feedbackid: id
+                },
+            })
+            res.data.attinfos = formattedFiles(res.data.attinfos)
+            this.detail = res.data
+            console.log(this.detail, '反馈信息');
+        },
+        async getComment (init = false) {
+            return new Promise(async (resolve, reject) => {
+                if (this.paging(this.content, init)) return resolve();
+                this.content.sa_feedbackid  = this.id
+                await this.$Http.basic({
+                    "id": 20240517103002,
+                    content:this.content
+                }).then(res => {
+                    this.$refs.List.RefreshToComplete()
+                    resolve();
+                    if (this.cutoff(res.msg)) return;
+                    this.list = res.pageNumber == 1 ? res.data : this.list.concat(res.data);
+                    this.content = this.$refs.List.paging(this.content, res)
+                    this.total = res.total;
+                    this.$refs.List.setHeight()
+                    console.log('回复列表',this.list);
+                })
+            })
+            
+        },
+        /* 预览图片 */
+        viewImages (url) {
+            viewImage(url)
+        },
+        changeComment(e) {
+            this.commentText = e.detail.value;
+        },
+        onSend() {
+            if (this.commentText == '') return uni.showToast({
+                title: '还未输入评论内容!',
+                duration: 2000,
+                icon: "none"
+            });
+            this.loading = true
+            this.$Http.basic({
+                "id": 20240417161502,
+                "content": {
+                    "ownertable": "sa_feedback",
+                    "ownerid": this.id,
+                    "contentstr": this.commentText
+                },
+            }).then(res => {
+                console.log("发送评论", res)
+                this.loading = false
+                if (this.cutoff(res.msg, '评论成功')) return;
+                this.commentText = '';
+                this.getComment(true)
+            })
+        },
+        onClear() {
+            let that = this;
+            uni.showModal({
+                title: '提示',
+                content: '是否确定清空评论?',
+                success: ({ confirm }) => {
+                    if (confirm) that.commentText = ""
+                },
+            })
+        },
+    },
+    onLoad (options) {
+        this.id = options.id
+        this.getDetail(options.id)
+        this.getComment(true)
+    }
 }
 </script>
 
-<style></style>
+<style lang="scss">
+.detail {
+    box-sizing: border-box;
+    font-family: Source Han Sans SC, Source Han Sans SC;
+    .header-info {
+        display: flex;
+        flex-direction: column;
+        padding: 15px 10px;
+        margin: 10px;
+        border-radius: 8px 8px 8px 8px;
+        background: #FFFFFF;
+        .title {
+            font-weight: bold;
+            font-size: 16px;
+            color: #333333;
+        }
+        .type {
+            display: flex;
+            align-items: center;
+            font-weight: 400;
+            font-size: 12px;
+            color: #666666;
+            margin: 10px 0;
+            text {
+
+            }
+        }
+        .remarks {
+            font-weight: 400;
+            font-size: 12px;
+            color: #666666;
+            margin-bottom: 10px;
+        }
+        .file-box {
+            display: block;
+            .item {
+                margin: 0 10px 10px 0;
+                display: inline-block;
+                &:nth-child(3n) {
+                    margin-right: 0 !important;
+                }
+            }
+        }
+    }
+    .message-box {
+        background: #FFFFFF;
+        padding: 12px 10px 0 10px;
+        .message-header {
+            display: flex;
+            justify-content:space-between;
+            padding-bottom: 20px;
+            text {
+                color: #333333;
+                &:first-child {
+                    font-weight: 500;
+                    font-size: 16px;
+                }
+                &:last-child {
+                    font-weight: 400;
+                    font-size: 14px;
+                    letter-spacing: 5px;
+                }
+            }
+        }
+        .content {
+            .message-item {
+                margin-bottom: 20px;
+                display: flex;
+                align-self: self-start;
+                padding-bottom: 10px;
+                .user-info {
+                    display: flex;
+                    flex-direction: column;
+                    margin-left: 10px;
+                    .name {
+                        font-weight: 500;
+                        font-size: 14px;
+                        color: #666666;
+                    }
+                    .message-text {
+                        font-weight: 400;
+                        font-size: 14px;
+                        color: #333333;
+                        margin: 10px 0;
+                    }
+                    .time {
+                        font-weight: 400;
+                        font-size: 12px;
+                        color: #999999;
+                    }
+                }
+            }
+        }
+    }
+    .footer {
+        display: flex;
+        position: fixed;
+        bottom: 0;
+        left: 0;
+        width: 375px;
+        background: #FFFFFF;
+        box-shadow: 0px -2px 6px 1px rgba(0, 0, 0, 0.16);
+        padding: 10px 10px 15px 10px;
+        .add-box {
+            padding:0 20px 0 20px;
+        }
+        .add {
+            display: flex;
+            align-items: center;
+            align-content: center;
+            justify-content: center;
+            width: 95px;
+            height: 45px;
+            background: #C30D23;
+            border-radius: 5px;
+            font-family: PingFang SC, PingFang SC;
+            font-size: 14px;
+            color: #FFFFFF;
+        }
+        .input-box {
+            display: flex;
+            align-items: center;
+            flex:1;
+            height: 45px;
+            background: #F7F7F7;
+            border-radius: 50px;
+            border: 1px solid #CCCCCC;
+            padding: 0 10px 0 20px;
+            box-sizing: border-box;
+
+            .input {
+                flex: 1;
+                height: 45px;
+                line-height: 45px;
+            }
+
+            .icon {
+                margin-left: 5px;
+            }
+        }
+    }
+}
+
+</style>

+ 170 - 3
cloud/feedback/index.vue

@@ -1,13 +1,180 @@
 <template>
     <view>
-        意见反馈列表
+        <My_listbox ref="List" @getlist="getList" :bottomHeight="70">
+            <view class="item-box">
+                <navigator :url="'/cloud/feedback/detail?id='+item.sa_feedbackid" class="item" v-for="item in list" :key="item.sa_feedbackid">   
+                    <view class="header">
+                        <view class="header-left">
+                            <text>{{ item.type }}</text>
+                        </view>
+                        <view class="header-right" v-if="item.isnew">
+                            <text>新消息</text>
+                        </view>
+                    </view>
+                    <view class="content">
+                        {{ item.remarks }}
+                    </view>
+                    <view class="footer">
+                        <view class="footer-left">
+                            {{ item.createdate }}
+                        </view>
+                        <view class="footer-right">回复:{{ item.replycount }}</view>
+                    </view>
+                </navigator>
+            </view>
+        </My_listbox>
+        <view class="bottom">
+            <navigator @click="updateList" class="but" url="/cloud/feedback/insert">
+                <view class="but">
+                    <text>我要反馈</text>
+                </view>
+            </navigator>
+        </view>
     </view>
 </template>
 
 <script>
 export default {
-
+    data () {
+        return {
+            list:[],
+            content: {
+                "pageNumber": 1,
+                "pageSize": 20,
+                "where": {
+                    "condition": "",
+                    "type": ""
+                }
+            },
+        }
+    },
+    methods: {
+        getList(init = false) {
+            return new Promise((resolve, reject) => {
+                if (this.paging(this.content, init)) return resolve();
+                this.$Http.basic({
+                    "id": "20240517102902",
+                    content: this.content
+                }).then(res => {
+                    this.$refs.List.RefreshToComplete()
+                    console.log("获取意见列表", res)
+                    resolve();
+                    if (this.cutoff(res.msg)) return;
+                    this.list = res.pageNumber == 1 ? res.data : this.list.concat(res.data);
+                    this.content = this.$refs.List.paging(this.content, res)
+                    this.total = res.total;
+                    this.$refs.List.setHeight()
+                })
+            })
+        },
+        updateList () {
+            this.$Http.updateList = function(res) {
+                this.getList(true)
+                delete this.$Http.updateList
+            }.bind(this)
+        }
+    },
+    onLoad (options) {
+        uni.setNavigationBarTitle({
+            title:'意见反馈',
+        })
+        this.getList(true)
+    }
 }
 </script>
 
-<style></style>
+<style lang="scss">
+    .item-box {
+        padding: 10px;
+        .item {
+            background: #ffffff;
+            padding: 19px 0 10px 10px;
+            border-radius: 8px 8px 8px 8px;
+            font-family: Source Han Sans SC, Source Han Sans SC;
+            margin-top: 10px;
+            &:first-child {
+                margin-top: 0 !important;
+            }
+            .header {
+                display: flex;
+                justify-content: space-between;
+                align-items: center;
+                padding-right: 10px;
+                .header-left {
+                    position: relative;
+                    padding-left: 10px;
+                    &::after {
+                        content:'';
+                        width: 4px;
+                        height: 16px;
+                        background: #C30D23;
+                        position: absolute;
+                        left: 0;
+                        top: 2px;
+                    }
+                }
+                .header-right {
+                    font-weight: 400;
+                    font-size: 12px;
+                    color: #E3041F;
+                    position: relative;
+                    &::after {
+                        content:'';
+                        width: 5px;
+                        height: 5px;
+                        border-radius: 50%;
+                        background: #E3041F;
+                        position: absolute;
+                        left: -8px;
+                        top: 6px;
+                    }
+                }
+            }
+            .content {
+                font-weight: 400;
+                font-size: 14px;
+                color: #666666;
+                margin: 10px 0;
+                padding:0 10px 10px 0;
+                border-bottom: 1px solid #DDDDDD;
+            }
+            .footer {
+                display: flex;
+                align-items: center;
+                justify-content: space-between;
+                font-weight: 400;
+                font-size: 12px;
+                color: #999999;
+                padding-right: 10px;
+            }
+        }
+    }
+    .bottom {
+        display: flex;
+        position: fixed;
+        bottom: 0;
+        left: 0;
+        width: 375px;
+        height: 64px;
+        background: #FFFFFF;
+        box-shadow: 0px -2px 6px 1px rgba(0, 0, 0, 0.16);
+        box-sizing: border-box;
+        z-index: 9999999;
+        padding: 10px;
+        .but { 
+            width: 355px;
+            height: 45px;
+            font-family: PingFang SC, PingFang SC;
+            font-weight: 500;
+            font-size: 14px;
+            color: #FFFFFF;
+            background: #C30D23;
+            border-radius: 5px 5px 5px 5px;
+            border: 1px solid #FFFFFF;
+            display: flex;
+            align-items: center;
+            align-content: center;
+            justify-content: space-evenly;
+        }
+    }
+</style>

+ 134 - 2
cloud/feedback/insert.vue

@@ -1,13 +1,145 @@
 <template>
     <view>
-        新建
+        <my_form ref="form" :form="form" @isUncomplete="isUncomplete" @onUploading="onUploading" />
+        <view class="footer">
+            <view class="but" :class="(uncomplete || onUpload) ? 'forbidden' : ''" hover-class="navigator-hover"
+                @click="(uncomplete || onUpload) ? '' : submit()">
+                立即提交
+            </view>
+        </view>
+        <view style="height: 75px;" />
     </view>
 </template>
 
 <script>
 export default {
+    data() {
+        return {
+            form: [],
+            uncomplete: true,
+            pageType: 4,
+            onUpload: false,
+            isSubmit: false,
+        }
+    },
+    onUnload() {
+        if (!this.isSubmit) this.$refs.form.deleteFiles()
+    },
+    onLoad(options) {
+        this.pageType = options.pageType == '设计' ? 4 : 5
+        uni.setNavigationBarTitle({
+            title: '意见反馈'
+        });
+        this.initForm()
+    },
+    methods: {
+        async initForm() {
+            this.form = [{
+                key: "type",
+                type: "customClass",
+                label: "选择反馈类型",
+                isMust: true,//是否必填
+                isMultipleChoice: false,//是否多选
+                value: '',
+                list: [{remarks:'建议',value:'建议'},{remarks:'投诉',value:'投诉'}],
+                marginTop: 10
+            }, {
+                key: "remarks",
+                type: "textarea2",
+                label: "反馈描述",
+                isMust: true,//是否必填
+                value: '',
+                unBorBot:true,
+                marginTop: 10,
 
+            },{
+                key: "attachmentids",
+                type: "upload",
+                label: "图片/视频",
+                placeholder: "上传凭证(图片/视频)",
+                accept: "image*/,video*/",
+                ownertable: "temporary",
+                ownerid: 999,
+                usetype: 'default',
+                allowUpload: true,
+                allowDelete: true,
+                value: [],
+                marginTop: 10
+            }]
+        },
+        isUncomplete(uncomplete) {
+            this.uncomplete = uncomplete;
+        },
+        submit() {
+            this.$refs.form.submit().then(data => {
+                this.onUpload = true;
+                this.$Http.basic({
+                    "id": 20240517102502,
+                    "content": {
+                        "sa_feedbackid": 0,
+                        "type": data.type,
+                        "remarks": data.remarks
+                    },
+                }).then(async res => {
+                    this.onUpload = false;
+                    console.log("新建", res)
+                    if (this.cutoff(res.msg)) return;
+                    if (data.files.temporarys.length) {
+                        this.onUpload = true;
+                        await this.$Http.basic({
+                            "classname": "system.attachment.Attachment",
+                            "method": "createFileLink",
+                            "content": {
+                                ownertable: 'sa_feedback',
+                                ownerid: res.data.sa_feedbackid,
+                                usetype: 'default',
+                                attachmentids: data.files.temporarys
+                            }
+                        }).then(async s => {
+                            this.isSubmit = true;
+                            this.onUpload = false;
+                            console.log("绑定附加", s)
+                            if (this.cutoff(s.msg)) return;
+                        })
+                    };
+                    if (this.$Http.updateList) return this.$Http.updateList(res.data);
+                    uni.navigateBack()
+                })
+                console.log("页面", data)
+            })
+        },
+        onUploading(ing) {
+            this.onUpload = ing;
+        },
+
+    },
 }
 </script>
 
-<style></style>
+<style lang="scss" scoped>
+.footer {
+    position: fixed;
+    bottom: 0;
+    width: 375px;
+    height: 65px;
+    background: #FFFFFF;
+    box-shadow: 0px -2px 6px 1px rgba(0, 0, 0, 0.16);
+    border-radius: 0px 0px 0px 0px;
+
+    .but {
+        width: 355px;
+        height: 45px;
+        background: #C30D23;
+        border-radius: 5px;
+        margin: 5px auto;
+        text-align: center;
+        line-height: 45px;
+        font-size: 14px;
+        color: #FFFFFF;
+    }
+
+    .forbidden {
+        opacity: .6;
+    }
+}
+</style>

+ 39 - 0
components/my_form.vue

@@ -57,6 +57,17 @@
                         :placeholder="item.placeholder || '请填写' + item.label" :value="item.value"
                         @input="onInput($event, index)" :maxlength="item.maxlength || '499'" confirm-type="done" />
                 </view>
+                <!-- 文本域2 -->
+                <view class="textarea-box2" v-else-if="item.type == 'textarea2'" :style="{ marginTop: tovw(item.marginTop || 0)}">
+                    <view class="label">
+                        <text class="must" v-if="item.isMust">*</text>
+                        {{ item.label }}:
+                    </view>
+                    <textarea class="textarea" :class="item.unBorBot ? '' : 'borBot'" :disabled="item.disabled"
+                        placeholder-style="color: #BBBBBB;font-family: Source Han Sans SC, Source Han Sans SC;" type="text"
+                        :placeholder="item.placeholder || '请填写' + item.label" :value="item.value"
+                        @input="onInput($event, index)" :maxlength="item.maxlength || '499'" confirm-type="done" />
+                </view>
                 <!-- 自定义选项分类 -->
                 <view class="custom-class-box" v-else-if="item.type == 'customClass'"
                     :style="{ marginTop: tovw(item.marginTop || 0) }">
@@ -749,6 +760,34 @@ export default {
         margin: 0 auto;
     }
 }
+.textarea-box2 {
+    width: 100%;
+    display: flex;
+    flex-direction: column;
+    background: #ffffff;
+    padding: 15px 0 15px 10px;
+    .label {
+        width: 100px;
+        margin-right: 10px;
+        line-height: 20px;
+        font-family: Source Han Sans SC, Source Han Sans SC;
+        font-size: 14px;
+        color: #666666;
+        flex-shrink: 0;
+
+        .must {
+            color: #E3041F;
+            margin-right: 5px;
+        }
+    }
+    .textarea {
+        width: 355px;
+        height: 160px;
+        padding: 15px 10px;
+        box-sizing: border-box;
+        margin: 0 auto;
+    }
+}
 
 .input-box {
     width: 100vw;

+ 9 - 19
packageA/exam/result.vue

@@ -10,8 +10,6 @@
             <view class="crumbs">
                 <view class="crumb" v-for="item in crumbs" :key="item.classname">{{ item.classname }}</view>
             </view>
-            <u-tabs :list="status" :activeStyle="{ fontWeight: 'bold', color: '#C30D23' }" lineColor="#C30D23"
-                keyName="name" @change="statusChange" />
         </view>
         <view style="height: 1px;" />
         <filtrate ref="Filtrate" :filtrateList="filtrateList" @onFiltration="onFiltration" @onInterrupt="onInterrupt" />
@@ -56,20 +54,11 @@ export default {
             "content": {
                 "where": {
                     "condition": "",
-                    "status": "",
+                    "status": "已完成",
                     "sat_courseware_classids": [[]]
                 }
             },
             filtrateList: [],
-            status: [{
-                name: "全部"
-            }, {
-                name: "未开始"
-            }, {
-                name: "进行中"
-            }, {
-                name: "已完成"
-            }]
         }
     },
     onLoad(options) {
@@ -83,7 +72,7 @@ export default {
         this.getType()
         this.getList(true)
         uni.setNavigationBarTitle({
-            title: '考试',
+            title: '考试成绩',
         })
     },
     onShow() {
@@ -125,7 +114,7 @@ export default {
                 content: this.content
             }).then(res => {
                 this.$refs.List.RefreshToComplete()
-                console.log("获取试卷列表", res)
+                console.log("获取成绩列表", res)
                 if (this.cutoff(res.msg)) return;
                 this.list = res.pageNumber == 1 ? res.data : this.list.concat(res.data);
                 this.content = this.$refs.List.paging(this.content, res)
@@ -184,14 +173,15 @@ export default {
                 classname: e.二级分类.classname,
                 parentid: e.二级分类.sat_courseware_classid
             })
-
+            if (e.一级分类 == '') {
+                crumbs.push({
+                    classname:'全部',
+                    parentid: ''
+                })
+            }
             this.crumbs = crumbs;
             this.getList(true)
         },
-        statusChange({ name }) {
-            this.content.where.status = name == '全部' ? '' : name;
-            this.getList(true)
-        }
     }
 }
 </script>

+ 12 - 35
pages/index/cloud/workbench.vue

@@ -94,37 +94,10 @@ export default {
             this.userInfoValue = res.data
             console.log(this.userInfoValue,'用户信息')
         },
-        // //处理权限
-        // handleAppRole () {
-        //     this.roles = uni.getStorageSync("authList")
-        //     let keys = Object.keys(this.roles.工作台)
-        //     for (let index = 0; index < this.list.length; index++) {
-        //         for (let index2 = 0; index2 < keys.length; index2++) {
-        //             if (this.roles.工作台[keys[index2]] && this.roles.工作台[keys[index2]].name == this.list[index].name) {
-        //                 this.list[index] = Object.assign({},this.list[index],this.roles.工作台[keys[index2]])
-        //                 break;
-        //             }
-        //         }
-        //     }
-
-        //     let keys2 = Object.keys(this.roles.工作台导航)
-        //     for (let index = 0; index < this.list2.length; index++) {
-        //         for (let index2 = 0; index2 < keys2.length; index2++) {
-        //             if (this.roles.工作台导航[keys2[index2]] && this.roles.工作台导航[keys2[index2]].name == this.list2[index].name) {
-        //                 this.list2[index] = Object.assign({},this.list2[index],this.roles.工作台导航[keys2[index2]])
-        //                 break;
-        //             }
-        //         }
-        //     }
-        //     console.log(this.roles,this.list2,'权限');
-            
-        // },
+   
         onSearch () {
             uni.navigateTo({
                 url: '/cloud/globalSearch/index',
-                // fail: (fail) => {
-                //     viewImage(item.attinfos[0].url)
-                // },
             })
         }
     },
@@ -172,16 +145,15 @@ export default {
         margin: 10px 0;
         background: #ffffff;
         border-radius: 8px 8px 8px 8px;
-        padding: 16px 16px 0 16px;
+        box-sizing: border-box;
         .app {
-            margin-right: 33px;
             display: flex;
             flex-direction: column;
             align-items: center;
-            margin-bottom: 30px;
-            &:nth-child(4),&:nth-child(8) {
-                margin-right: 0;
-            }
+            border-radius: 8px;
+            padding: 15px;
+            width: 25%;
+            box-sizing: border-box;
             .bg {
                 width: 44px;
                 height: 44px;
@@ -205,7 +177,6 @@ export default {
                 color: #333333;
                 margin-top: 10px;
                 text-align: center;
-                width: 56px;
             }
         }
     }
@@ -215,7 +186,13 @@ export default {
         font-family: Source Han Sans SC, Source Han Sans SC;
         .option {
             padding: 15px 0 0 10px;
+            &:first-child {
+                border-top-left-radius: 8px;
+                border-top-right-radius: 8px;
+            }
             &:last-child {
+                border-bottom-left-radius: 8px;
+                border-bottom-right-radius: 8px;
                 .box {
                     border: none;
                 }

+ 0 - 19
pages/index/index/videoDetail.vue

@@ -1,19 +0,0 @@
-<!--  -->
-<template>
-  <div>
-    1111111
-  </div>
-</template>
-
-<script>
-export default {
-  data () {
-    return {
-    }
-  }
-}
-</script>
-
-<style  scoped>
-
-</style>

+ 11 - 3
pages/index/index/videos.vue

@@ -82,7 +82,7 @@ export default {
                         value: "",
                         isAll: true,
                         defaultVal: "",
-                        rang: res.data,
+                        rang: [{ classname: "全部", sat_sharematerial_classid: "" }].concat(res.data),
                     }]
                     this.$refs.Filtrate.changeShow();
             } else {
@@ -101,9 +101,12 @@ export default {
                     value: "",
                     defaultVal: "",
                     isAll: true,
-                    rang: option.children,
+                    rang: [{ classname: "全部", sat_sharematerial_classid: "" }].concat(option.children)
                 })
             }
+            if (option.sat_sharematerial_classid === '') {
+                this.$refs.Filtrate.list.splice(index+1,this.$refs.Filtrate.list.length - 1)
+            }
             
             console.log(item,index,option);
         },
@@ -122,7 +125,12 @@ export default {
                 classname: e.下级分类3.classname,
                 parentid: e.下级分类3.sat_sharematerial_classid
             })
-
+            if (e.分类1 == '') {
+                crumbs.push({
+                    classname:'全部',
+                    parentid: ''
+                })
+            }
             this.crumbs = crumbs;
             this.getList(true)
         },

+ 0 - 0
static/workbench/品质服务管理.svg → static/workbench/qualityService.svg