Quellcode durchsuchen

在线文档-市场-新的需求

fan vor 2 Jahren
Ursprung
Commit
e947be197f

+ 152 - 54
public/static/views/onlineShareExcelMarket.html

@@ -73,7 +73,14 @@
         </form>
     </div>
     <div style="float: right;padding-right: 10px" id="shareBtn">
-        <button id="share" class="btn btn-primary" style="padding:3px 6px;font-size: 18px;margin-right: 10px;width: 100px">分享</button>
+        <button id="share" class="btn btn-primary"
+                style="padding:3px 6px;font-size: 18px;margin-right: 10px;width: 100px">分享
+        </button>
+    </div>
+    <div style="float: right;padding-right: 10px" id="newShareBtn">
+        <button id="newShare" class="btn btn-primary"
+                style="padding:3px 6px;font-size: 18px;margin-right: 10px;width: 100px">分享
+        </button>
     </div>
 </div>
 <div style="height:90%;width: 100%;">
@@ -169,11 +176,11 @@
                     initExcel(res.body.excelJson);
                 }
             });
-            initExcel()
+            //initExcel()
         }
 
         // 表格初始化
-        function initExcel(data,name) {
+        function initExcel(data, name) {
             if (type == '1') {
                 flag = false
             } else {
@@ -183,7 +190,7 @@
                 adminFlag = true;
             }
             var fileName = excelInfo.fileName;
-            if ($.trim(name)!=''){
+            if ($.trim(name) != '') {
                 fileName = name;
             }
             try {
@@ -299,18 +306,95 @@
                 $("#editFrom").attr('disabled', true);
                 $("#editTo").attr('disabled', true);
                 $("#shareBtn").hide();
+                $("#newShareBtn").hide();
             } else {
                 $("#editStatus").attr('disabled', false);
                 $("#editFrom").attr('disabled', false);
                 $("#editTo").attr('disabled', false);
                 $("#shareBtn").show();
+                $("#newShareBtn").show();
             }
             if (emptyExcel == true) {
                 $("#shareBtn").show();
                 $("#saves").hide();
+                $("#newShareBtn").hide();
             } else {
                 $("#shareBtn").hide();
                 $("#saves").show();
+                if (isAdmin) {
+                    $("#newShareBtn").show();
+                }
+                console.log("执行自动保存定时器")
+                var t1 = window.setInterval(function autoSave() {
+                    console.log("执行自动保存")
+                    var excelId = $(window.parent.document).find("#excelId").attr("value");
+                    var sheetName = luckysheet.getSheet().name;
+                    var excelData = luckysheet.getSheet(sheetName);
+                    var urlsave = '/market/cOnlineExcelMarket/saveExcel';
+                    var editFrom = $("#editFrom").val();
+                    var editTo = $("#editTo").val();
+                    var editStatus = $("#editStatus").val();
+                    var excelName = luckysheet.toJson().title;
+                    if ($.trim(editFrom) == '' && $.trim(editTo) == '') {
+
+                    } else if (/^\d*$/.test(editFrom) && /^\d*$/.test(editTo)) {
+                        if (editFrom == 0) {
+                            window.top.$vm.$message({
+                                message: '自动保存出错:可编辑列开始不能为0',
+                                type: 'info'
+                            })
+                            return;
+                        }
+                        if (editFrom > editTo) {
+                            window.top.$vm.$message({
+                                message: '自动保存出错:可编辑列的起始列不能大于结束列',
+                                type: 'info'
+                            })
+                            return;
+                        }
+                    } else if (/^[a-zA-Z]+$/.test(editFrom) && /^[a-zA-Z]+$/.test(editTo)) {
+
+                    } else {
+                        window.top.$vm.$message({
+                            message: '自动保存出错:可编辑列必须全部为字母或数字',
+                            type: 'info'
+                        });
+                        return;
+                    }
+                    util.ajaxJson(null, ctx + '/market/cOnlineExcelMarket/checkExcelEmpty', {
+                        data: excelData,
+                    }, function (data) {
+                        if (data.result == 1) {
+                            window.top.$vm.$message({
+                                message: data.desc,
+                                type: 'error'
+                            });
+                        } else {
+                            util.ajaxJson(null, ctx + urlsave, {
+                                data: excelData,
+                                id: excelId,
+                                editConStart: editFrom,
+                                editConEnd: editTo,
+                                excelName: excelName,
+                                editStatus: editStatus
+                            }, function (data) {
+                                if (data.result == 1) {
+                                    window.top.$vm.$message({
+                                        message: data.desc,
+                                        type: 'error'
+                                    })
+                                } else {
+                                    // window.top.$vm.$message({
+                                    //     message: '自动保存成功',
+                                    //     type: 'info'
+                                    // });
+                                    //console.log(data);
+                                    //getData()
+                                }
+                            });
+                        }
+                    });
+                }, 15000)
             }
             if (excelInfo.shareStatus == '1') {
                 $("#editTo").attr('disabled', true);
@@ -333,13 +417,65 @@
             }
         }
 
+        function processShare(type) {
+            //  当前工作表名
+            var excelId = $(window.parent.document).find("#excelId").attr("value");
+            var sheetName = luckysheet.getSheet().name;
+            var excelData = luckysheet.getSheet(sheetName);
+            var urlsave = '/market/cOnlineExcelMarket/saveExcel';
+            var editFrom = $("#editFrom").val();
+            var editTo = $("#editTo").val();
+            var editStatus = $("#editStatus").val();
+            var excelName = luckysheet.toJson().title;
+            //校验可编辑列
+            if ($.trim(editFrom) == '' && $.trim(editTo) == '') {
+
+            } else if (/^\d*$/.test(editFrom) && /^\d*$/.test(editTo)) {
+                if (editFrom == 0) {
+                    window.top.$vm.$message({
+                        message: '可编辑列开始不能为0',
+                        type: 'info'
+                    })
+                    return;
+                }
+                if (editFrom > editTo) {
+                    window.top.$vm.$message({
+                        message: '可编辑列的起始列不能大于结束列',
+                        type: 'info'
+                    })
+                    return;
+                }
+            } else if (/^[a-zA-Z]+$/.test(editFrom) && /^[a-zA-Z]+$/.test(editTo)) {
+
+            } else {
+                window.top.$vm.$message({
+                    message: '可编辑列必须全部为字母或数字',
+                    type: 'info'
+                })
+                return;
+            }
+            util.ajaxJson("正在加载中", ctx + '/market/cOnlineExcelMarketMarket/checkExcelEmpty', {
+                data: excelData,
+            }, function (data) {
+                if (data.result == 1) {
+                    window.top.$vm.$message({
+                        message: data.desc,
+                        type: 'error'
+                    });
+                } else {
+                    //excelJson, editFrom, editTo, editStatus, excelName, excelId, type
+                    window.parent['shareExcel'](excelData, editFrom, editTo, editStatus, excelName, excelId, type);
+                }
+            });
+        }
+
         // 绑定按钮事件
         function initHandel() {
             $("#closeExcel").on("click", function () {
                 window.parent['backToExcelList']('true');
             })
             $("#fullScreen").on("click", function () {
-                if (fullScreenState){
+                if (fullScreenState) {
                     fullScreenState = false;
                     $("#fullScreen").html('全屏显示');
                 } else {
@@ -355,59 +491,21 @@
             })
             //分享
             $('#share').off("click").click(function () {
-                if (fullScreenState){
+                if (fullScreenState) {
                     fullScreenState = false;
                     $("#fullScreen").html('全屏显示');
                     window.parent['fullScreen']('true');
                 }
-                //  当前工作表名
-                var excelId = $(window.parent.document).find("#excelId").attr("value");
-                var sheetName = luckysheet.getSheet().name;
-                var excelData = luckysheet.getSheet(sheetName);
-                var urlsave = '/market/cOnlineExcelMarket/saveExcel';
-                var editFrom = $("#editFrom").val();
-                var editTo = $("#editTo").val();
-                var editStatus = $("#editStatus").val();
-                var excelName = luckysheet.toJson().title;
-                //校验可编辑列
-                if ($.trim(editFrom) == '' && $.trim(editTo) == '') {
-
-                } else if (/^\d*$/.test(editFrom) && /^\d*$/.test(editTo)) {
-                    if (editFrom == 0) {
-                        window.top.$vm.$message({
-                            message: '可编辑列开始不能为0',
-                            type: 'info'
-                        })
-                        return;
-                    }
-                    if (editFrom > editTo) {
-                        window.top.$vm.$message({
-                            message: '可编辑列的起始列不能大于结束列',
-                            type: 'info'
-                        })
-                        return;
-                    }
-                } else if (/^[a-zA-Z]+$/.test(editFrom) && /^[a-zA-Z]+$/.test(editTo)) {
-
-                } else {
-                    window.top.$vm.$message({
-                        message: '可编辑列必须全部为字母或数字',
-                        type: 'info'
-                    })
-                    return;
+                processShare(1);
+            });
+            //新增分享
+            $('#newShare').off("click").click(function () {
+                if (fullScreenState) {
+                    fullScreenState = false;
+                    $("#fullScreen").html('全屏显示');
+                    window.parent['fullScreen']('true');
                 }
-                util.ajaxJson("正在加载中", ctx + '/market/cOnlineExcelMarket/checkExcelEmpty', {
-                    data: excelData,
-                }, function (data) {
-                    if (data.result == 1) {
-                        window.top.$vm.$message({
-                            message: data.desc,
-                            type: 'error'
-                        });
-                    } else {
-                        window.parent['shareExcel'](excelData, editFrom, editTo, editStatus, excelName,excelId);
-                    }
-                });
+                processShare(2);
             });
             // 保存
             $('#saves').off("click").click(function () {
@@ -415,7 +513,7 @@
                 var excelId = $(window.parent.document).find("#excelId").attr("value");
                 var sheetName = luckysheet.getSheet().name;
                 var excelData = luckysheet.getSheet(sheetName);
-                var urlsave = '/market/cOnlineExcelMarket/saveExcel';
+                var urlsave = '/market/cOnlineExcelMarketMarket/saveExcel';
                 var editFrom = $("#editFrom").val();
                 var editTo = $("#editTo").val();
                 var editStatus = $("#editStatus").val();

+ 46 - 0
src/components/myMessageRadio.vue

@@ -0,0 +1,46 @@
+<template>
+    <div class="myMessage">
+        <el-dialog title="提示" :visible.sync="centerDialogVisible" top="30vh" width="30%" :close-on-press-escape="false"
+                   :show-close="true" :destroy-on-close="true" :modal-append-to-body="false"
+                   :close-on-click-modal="false" :before-close="realClose">
+            <div style="height: 70px;line-height: 30px;overflow: hidden;">
+                <i class="el-icon-warning" style="font-size: 30px;float:left;padding:0 10px;color: orange;"></i>
+                <span style="height: 30px;line-height: 30px;display: inline-block;float:left">{{ messTit }}</span><br/>
+                <div style="margin-left: 40px">
+                        <el-radio v-model="radioStatus" label="1" style="margin: 10px">{{ yesBtnName }}</el-radio>
+                        <el-radio v-model="radioStatus" label="2" style="margin: 10px">{{ noBtnName }}</el-radio>
+                </div>
+            </div>
+            <span slot="footer" class="dialog-footer">
+                <el-button size="small" type="primary" @click="closemessage()">{{ okBtnName }}</el-button>
+            </span>
+        </el-dialog>
+    </div>
+</template>
+
+<script>
+export default {
+    props: ["centerDialogVisible", "messTit", 'type', 'yesBtnName', 'noBtnName', 'okBtnName'],
+    data() {
+        return {
+            radioStatus: '2'
+        };
+    },
+    methods: {
+        closemessage(v) {
+            this.$emit("closeMessage", this.radioStatus)
+        },
+        realClose(v) {
+            this.$emit("closeMessage", '3')
+        }
+    },
+    mounted() {
+    },
+    created() {
+    },
+};
+</script>
+
+
+<style>
+</style>

+ 14 - 6
src/pages/main/onlineExcel/index.vue

@@ -188,8 +188,8 @@
         </el-dialog>
         <myMessage :messTit='messTit' @closeMessage="processDel" :centerDialogVisible="delVisible"
                    v-if="delVisible"></myMessage>
-        <myMessageNew :messTit='oaTitle' @closeMessage="processOa" :centerDialogVisible="oaVisible"
-                   v-if="oaVisible" yesBtnName="是" noBtnName="否"></myMessageNew>
+        <myMessageRadio :messTit='oaTitle' @closeMessage="processOa" :centerDialogVisible="oaVisible"
+                        v-if="oaVisible" yesBtnName="是" noBtnName="否" ok-btn-name="提交"></myMessageRadio>
     </div>
     </fullscreen>
 </template>
@@ -199,6 +199,7 @@ import pForm from "../../../components/p-form";
 import toolList from "../../../components/toolList";
 import myMessage from "../../../components/myMessage.vue";
 import myMessageNew from "../../../components/myMessageNew.vue";
+import myMessageRadio from "../../../components/myMessageRadio.vue";
 import deptTreeUserNew from "../../../components/deptTreeUserNew.vue"
 
 export default {
@@ -207,6 +208,7 @@ export default {
         toolList,
         myMessage,
         myMessageNew,
+        myMessageRadio,
         deptTreeUserNew,
     },
     data() {
@@ -284,7 +286,7 @@ export default {
                     }
                 } else {
                     _this.$message({
-                        message: '成功',
+                        message: '请填写完毕后点击“保存”按钮',
                         type: 'success'
                     });
                     var id = res.data.desc;
@@ -349,13 +351,15 @@ export default {
         },
         //判断是否提交oa待办
         processOa(v) {
+            console.log(v);
             if (v == 1) {
                 this.oaType = 1;
-            } else {
+                this.processExcelShare(this.shareType);
+            } else if (v == 2){
                 this.oaType = 0;
+                this.processExcelShare(this.shareType);
             }
             this.oaVisible = false;
-            this.processExcelShare(this.shareType);
         },
         //打开oa待办选项框
         openOADialog(shareType) {
@@ -380,8 +384,12 @@ export default {
             console.log('oa:' + this.oaType);
             console.log('share:' + shareType);
             //提交
+            var url = '/market/cOnlineExcelMarket/saveExcelShare';
+            if (this.addShareType == '2') {
+                url = '/market/cOnlineExcelMarket/reShare';
+            }
             this.$http({
-                url: '/market/cOnlineExcel/saveExcelShare',
+                url: url,
                 method: "post",
                 headers: {
                     "Content-Type": "application/json",