Browse Source

Merge branch 'Luckysheet-mk' into luckysheet

luckysheet-xiaowang-Intelligen
mk 8 months ago
parent
commit
7899e3953b
  1. 7
      public/index.html
  2. 3
      src/utils/luckysheetConfig.js
  3. 105
      src/views/modules/base/smartExcel/cpts/excel-add.vue
  4. 192
      src/views/modules/base/smartExcel/cpts/excel-view.vue
  5. 165
      src/views/modules/base/smartExcel/cpts/filling-info.vue
  6. 0
      src/views/modules/base/smartExcel/cpts/filling-smart.vue
  7. 34
      src/views/modules/base/smartExcel/filling.vue
  8. 14
      src/views/modules/base/smartExcel/index.vue

7
public/index.html

@ -57,6 +57,13 @@
console.log('============调试版本:1.0.3')
console.log('nodeEnv', window.SITE_CONFIG['nodeEnv'])
$.ajaxSetup({
headers: {
"Authorization": window.localStorage.token,
"token":window.localStorage.token
}
});
</script>
</head>

3
src/utils/luckysheetConfig.js

@ -41,9 +41,10 @@ const options = {
findAndReplace: true, //查找替换
protection: true, // 工作表保护
print: true, //打印
allowUpdate:true,
},
showinfobar: true, //是否显示顶部信息栏
showsheetbar: true, //是否显示底部sheet页按钮
showsheetbar: false, //是否显示底部sheet页按钮
hook: {
//钩子函数

105
src/views/modules/base/smartExcel/cpts/excel-add.vue

@ -7,17 +7,17 @@
<el-button type="text" round @click="handelClickBack" icon="el-icon-back">返回</el-button>
</div>
<el-form :model="form" label-width="120px" :rules="dataRule" ref="dataForm">
<el-form-item prop="theme" label="任务主题">
<el-input v-model="form.theme" placeholder="请输入内容" clearable class="cell-width-1"></el-input>
<el-form-item prop="taskTitle" label="任务主题">
<el-input v-model="form.taskTitle" placeholder="请输入内容" clearable class="cell-width-1"></el-input>
</el-form-item>
<el-form-item label="任务类型" prop="type">
<el-select v-model.trim="form.type" placeholder="请选择" size="small" clearable class="cell-width-1">
<el-form-item label="任务类型" prop="taskType">
<el-select v-model.trim="form.taskType" placeholder="请选择" size="small" clearable class="cell-width-1" disabled>
<el-option v-for="item in typeList" :key="item.value" :label="item.label" :value="item.value">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="任务周期" prop="cycle">
<el-radio-group v-model.trim="form.cycle" @change="handleChangeCycle">
<el-form-item label="任务周期" prop="taskPeriod">
<el-radio-group v-model.trim="form.taskPeriod" @change="handleChangetaskPeriod">
<el-radio label="once">一次性</el-radio>
<el-radio label="week">每周</el-radio>
<!-- <el-radio label="halfAMonth">每半月</el-radio>
@ -26,27 +26,34 @@
</el-radio-group>
<span>说明当任务周期选择每周/每月/每半月/每季度时系统会于每个时间阶段的第一天自动创建阶段性子任务</span>
</el-form-item>
<el-form-item label="完成时限" prop="timeLimit" v-if="form.cycle">
<template v-if="form.cycle === 'once'">
<el-date-picker v-model="form.timeLimit" type="datetime" placeholder="选择日期时间">
<el-form-item label="完成时限" prop="completeLimitHour" v-if="form.taskPeriod">
<template v-if="form.taskPeriod === 'once'">
<el-date-picker
v-model="form.completeLimitDay"
type="date"
placeholder="选择日期" value-format="yyyy-MM-dd">
</el-date-picker>
<el-time-picker
v-model="form.completeLimitHour"
class="cell-width-1"
placeholder="任意时间点" style="margin-left: 10px;" value-format="HH:mm:ss">
</el-time-picker>
</template>
<template v-if="form.cycle === 'week'">
<el-select v-model.trim="form.week" placeholder="请选择" size="small" clearable
<template v-if="form.taskPeriod === 'week'">
<el-select v-model.trim="form.completeLimitDay" placeholder="请选择" size="small" clearable
class="cell-width-1" style="margin-left: 10px;">
<el-option v-for="item in weekList" :key="item.value" :label="item.label"
:value="item.value">
<el-option v-for="item in weekList" :key="item.value" :label="item.label" :value="item.value">
</el-option>
</el-select>
<el-time-picker class="cell-width-1" v-model="form.timeLimit" placeholder="选择时间" style="margin-left: 10px;">
<el-time-picker class="cell-width-1" v-model="form.completeLimitHour" placeholder="选择时间" style="margin-left: 10px;" value-format="HH:mm:ss">
</el-time-picker>
</template>
</el-form-item>
<el-form-item label="分发人员" prop="distributionPersonnel">
<el-form-item label="分发人员" prop="receiverIds">
<el-cascader class="u-item-width-normal" size="small" ref="myCascader" v-model="cascaderAgencyId"
@change="handleChangeAgency" :options="orgOptions" :props="orgOptionProps"
:show-all-levels="false" clearable></el-cascader>
<el-select v-model.trim="form.distributionPersonnel" placeholder="请选择" size="small" clearable
<el-select v-model.trim="form.receiverIds" placeholder="请选择" size="small" clearable
@remove-tag="removeTag" multiple class="cell-width-1" collapse-tags style="margin-left: 10px;"
@change="changeTag" c>
<el-option v-for="item in allStafflist" :key="item.value" :label="item.name"
@ -63,9 +70,9 @@
</el-tag>
</div>
</el-form-item>
<el-form-item label="上传模板" prop="templateUrl">
<el-form-item label="上传模板" prop="moduleUrl">
<el-upload :headers="$getElUploadHeaders()" ref="upload" class="upload-btn" :action="uploadUlr"
v-if="!form.templateUrl" :limit="1" :accept="'.xlsx'" :with-credentials="true"
v-if="!form.moduleUrl" :limit="1" :accept="'.xlsx'" :with-credentials="true"
:show-file-list="false" :auto-upload="true" :on-success="handleExcelSuccess"
:before-upload="beforeExcelUpload">
<template #trigger>
@ -78,9 +85,9 @@
<el-button type="text" @click="removeFile(file)" style="margin-left: 16px;"> 删除</el-button>
</section>
</el-form-item>
<el-form-item label="任务要求" prop="taskRequirements" style="display: block">
<el-form-item label="任务要求" prop="taskIntroduction" style="display: block">
<el-input class="cell-width-2" type="textarea" maxlength="500" show-word-limit :rows="5"
placeholder="请输入事件内容,不超过500字" v-model.trim="form.taskRequirements"></el-input>
placeholder="请输入事件内容,不超过500字" v-model.trim="form.taskIntroduction"></el-input>
</el-form-item>
</el-form>
<div class="div-btn">
@ -92,7 +99,7 @@
</div>
</div>
<div v-if="showTemplate">
<ExcelTemplateConfirmation :showTemplate="showTemplate" :fileUrl="form.templateUrl" :fileName="fileName"
<ExcelTemplateConfirmation :showTemplate="showTemplate" :fileUrl="form.moduleUrl" :fileName="fileName"
@handelHideTemplate="handelHideTemplate" @saveLuckysheetJson="getSheetJson" />
</div>
</div>
@ -110,7 +117,7 @@ export default {
fileName: '',
orgOptions: [],
orgOptionProps: {
// multiple: false,
multiple: false,
value: 'agencyId',
label: 'agencyName',
children: 'subAgencyList',
@ -119,21 +126,22 @@ export default {
"/oss/file/upload",
showTemplate: false,
form: {
theme: '',//
type: '1',//
cycle: 'once',//
timeLimit: '',//
week: '',//
distributionPersonnel: [],//
templateUrl: '',//
taskRequirements: '',//
taskTitle: '',//
taskType: '1',//
taskPeriod: 'once',//
completeLimitDay: '',//
completeLimitHour: '',//
receiverIds: [],//
moduleUrl: 'https://elink-esua-epdc.oss-cn-qingdao.aliyuncs.com/epmet-saas/dev/20250109/30b1c877b8a94297b993c34d15e8e501.xlsx',//
taskIntroduction: '',//
wordBookId:''//簿id
},
dataRule: {
theme: [{ required: true, message: "任务主题不能为空", trigger: "blur" },],
cycle: [{ required: 'true', message: '任务周期不能为空', trigger: 'blur' }],
distributionPersonnel: [{ required: 'true', message: '分发人员不能为空', trigger: 'blur' }],
templateUrl: [{ required: 'true', message: '模板不能为空', trigger: 'blur' }],
timeLimit: [{ required: 'true', message: '完成时限不能为空', trigger: 'blur' }],
taskTitle: [{ required: true, message: "任务主题不能为空", trigger: "blur" },],
taskPeriod: [{ required: 'true', message: '任务周期不能为空', trigger: 'blur' }],
receiverIds: [{ required: 'true', message: '分发人员不能为空', trigger: 'blur' }],
moduleUrl: [{ required: 'true', message: '模板不能为空', trigger: 'blur' }],
completeLimitHour: [{ required: 'true', message: '完成时限不能为空', trigger: 'blur' }],
},
typeList: [
{
@ -176,7 +184,7 @@ export default {
selfTag: [],
sarr: [],
agencyId: '',
agencylevel: ''
agencylevel: '',
};
},
created() { },
@ -215,7 +223,6 @@ export default {
// this.workPersonnelList = resp.data.data.staffList;
if (resp.data.data.staffList) {
this.allStafflist = this.allStafflist.concat(resp.data.data.staffList)
console.log(this.allStafflist);
}
});
},
@ -248,7 +255,7 @@ export default {
handleExcelSuccess(e) {
if (e.code === 0) {
this.showTemplate = true;
this.form.templateUrl = e.data.url
this.form.moduleUrl = e.data.url
}
},
beforeExcelUpload(file) {
@ -284,25 +291,22 @@ export default {
},
removeTag(val) {
const valueToRemove = val.staffId || val[0];
this.form.distributionPersonnel = this.form.distributionPersonnel.filter(item => item != valueToRemove);
this.selfTag = this.workPersonnelList.filter(item => this.form.distributionPersonnel.includes(item.staffId));
this.form.receiverIds = this.form.receiverIds.filter(item => item != valueToRemove);
this.selfTag = this.allStafflist.filter(item => this.form.receiverIds.includes(item.staffId));
},
changeTag() {
this.selfTag = this.allStafflist.filter(item => this.form.distributionPersonnel.includes(item.staffId));
this.selfTag = this.allStafflist.filter(item => this.form.receiverIds.includes(item.staffId));
},
handleChangeCycle(val){
if(val === 'once'){
this.form.week = '';
this.form.timeLimit = '';
}else{
this.form.timeLimit = '';
}
handleChangetaskPeriod(val){
this.form.completeLimitDay = '';
this.form.completeLimitHour = '';
},
handleClickSave() {
console.log(this.form, 'addForm');
this.$refs['dataForm'].validate(valid => {
if (valid) {
this.saveLuckysheet()
this.saveEvent()
}
})
},
@ -312,13 +316,14 @@ export default {
const { data, code, msg } = await requestPost(`/actual/base/luckySheet/workbook/createByJson?fileName=${this.fileName}`, this.luckysheetJson)
if (code === 0) {
console.log(data, '新建成功');
this.form.wordBookId = data
} else {
console.log(msg);
}
},
removeFile() {
this.form.templateUrl = '';
this.form.moduleUrl = '';
this.fileName = '';
this.luckysheetJson = {}
},

192
src/views/modules/base/smartExcel/cpts/excel-view.vue

@ -3,14 +3,6 @@
<div class='flex' :style="{ height: tableHeight }">
<div class="left_menu flex flex-y">
<el-button type="text" round @click="handelClickBack" icon="el-icon-back">返回</el-button>
<!-- <el-upload ref="upload" class="upload-demo"
action="https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15" :limit="1" :on-change="handleFileChange"
:auto-upload="false" accept=".xlsx">
<template #trigger>
<el-button type="primary">上传报表模板</el-button>
</template>
</el-upload> -->
<div :class="{ 'menu_item': true, 'active': menuActive === index }" v-for="(item, index) in menuList"
:key="index" @click="handleClickMenu(index)">
<span>{{ item.name }}</span>
@ -20,72 +12,17 @@
<div class="flex flex-y luckysheet-wrap">
<div class="top_btn flex flex-end">
<div>
<el-button type="primary"> 自动检测</el-button>
<el-button type="warning"> 自动检测</el-button>
</div>
<div>
<el-button type="primary"> 驳回重提</el-button>
<el-button type="danger"> 驳回重提</el-button>
<el-button type="primary"> 审核存档</el-button>
</div>
</div>
<div id="luckysheet"></div>
</div>
</div>
<!-- <el-drawer title="设置面板" :visible.sync="drawer" :direction="direction" :before-close="handleClose">
<el-container>
<el-header>选中单元格<b>{{ selectedCell }}</b></el-header>
<el-main>
<el-row>
<el-col :span="24">
设置统计条件
</el-col>
</el-row>
<el-tabs v-model="activeName" @tab-click="handleTabClick">
<el-tab-pane label="常规统计项" name="first">
<div>老年人</div>
<div>
<el-radio v-model="radio1" label="1" border>60以上老年人</el-radio>
<el-radio v-model="radio1" label="2" border>80以上老年人</el-radio>
</div>
<div>
<el-radio v-model="radio1" label="3" border>独居老年人</el-radio>
<el-radio v-model="radio1" label="4" border>空巢老年人</el-radio>
<el-radio v-model="radio1" label="5" border>失能老年人</el-radio>
</div>
<div>政治面貌</div>
<div>
<el-radio v-model="radio1" label="6" border>中共党员数</el-radio>
<el-radio v-model="radio1" label="7" border>中共流动党员数</el-radio>
<el-radio v-model="radio1" label="8" border>共青团员数</el-radio>
</div>
<div>
<el-radio v-model="radio1" label="9" border>民主党派成员数</el-radio>
<el-radio v-model="radio1" label="10" border>无党派民主人士数</el-radio>
<el-radio v-model="radio1" label="11" border>群众</el-radio>
</div>
<div>健康状况</div>
<div>
<el-radio v-model="radio1" label="6" border>残疾人数</el-radio>
<el-radio v-model="radio1" label="7" border>大病人数</el-radio>
<el-radio v-model="radio1" label="8" border>慢病人数</el-radio>
</div>
<div>关注人群</div>
<div>
<el-radio v-model="radio1" label="6" border>流动人员数</el-radio>
<el-radio v-model="radio1" label="7" border>退役军人数</el-radio>
<el-radio v-model="radio1" label="8" border>低保人数</el-radio>
</div>
</el-tab-pane>
<el-tab-pane label="自定义统计项" name="second"></el-tab-pane>
</el-tabs>
</el-main>
<el-footer>
<el-col :span="24" align="right">
<el-button style="margin-left: 10px" type="default ">取消</el-button>
<el-button style="margin-left: 20px" type="primary ">确定</el-button>
</el-col>
</el-footer>
</el-container>
</el-drawer> -->
</div>
</template>
@ -99,12 +36,7 @@ import { requestPost, requestGet } from "@/js/dai/request";
export default {
data() {
return {
drawer: false,
direction: 'rtl',
selectedCell: '',
activeName: 'first',
radio1: '1',
radio2: '1',
menuList: [
{
name: '2024年11月第三周(已提交)'
@ -124,7 +56,6 @@ export default {
],
menuActive: 0,
socket: null,
};
},
props: {
@ -145,44 +76,49 @@ export default {
},
watch: {},
mounted() {
this.initSocket()
// this.initSocket()
this.loadWorkBook()
},
methods: {
async loadWorkBook() {
const { data, code, msg } = await requestGet(`/actual/base/luckySheet/workbook/load?workbookId=${this.workbookId}`)
if (code === 0) {
loadWorkBook() {
// const { data, code, msg } = await requestGet(`/actual/base/luckySheet/workbook/load?workbookId=${this.workbookId}`)
// if (code === 0) {
window.luckysheet.destroy();
options.data = data
// options.data = data.sheets;
// options.title = data.fileName;
const {id} = this.$store.state.user;
options.loadUrl = `http://219.146.91.110:30801/api/actual/base/luckySheet/workbook/load?wordbookId=${this.workbookId}`
options.updateUrl = `ws://219.146.91.110:30801/api/actual/base/ws/luckysheet/${this.workbookId}/${id}`
window.luckysheet.create({
...options,
hook: {
cellEditBefore: this.handleCellEditBefore,
// cellUpdateBefore: this.handleCellUpdateBefore,
sheetCreateAfter: this.handleSheetCreateAfter
sheetCreateAfter: this.handleSheetCreateAfter,
cellUpdated: this.handleCellUpdated,
},
});
} else {
console.log(msg);
}
// } else {
// console.log(msg);
// }
},
handleSheetCreateAfter(e) {
console.log('setsheet', e);
},
initSocket() {
this.socket = new WebSocket('');
const {id} = this.$store.state.user;//${location.origin}
const token = localStorage.getItem("token")
this.socket = new WebSocket(`ws://192.168.1.144/api/actual/base/ws/luckysheet/${this.workbookId}/${id}`,token);
this.socket.addEventListener('open', () => {
console.log('WebSocket连接已打开');
});
this.socket.addEventListener('message', (event) => {
console.log(event, '接收到消息了');
const message = JSON.parse(event.data);
});
},
sendMessage() {
const message = {
sender: '客户端'
};
sendMessage(message) {
this.socket.send(JSON.stringify(message));
this.newMessage = '';
},
@ -234,85 +170,24 @@ export default {
// },
handleFileChange(file, newFileList) {
const selectedFile = file.raw;
if (!(selectedFile instanceof File)) {
console.error('传入了非文件对象');
return;
}
if (selectedFile.type === 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet') {
console.log('文件是xlsx类型');
} else {
console.error('不是xlsx文件');
return;
handleCellUpdated(r, c, oldValue, newValue, isRefresh) {
console.log(r, c, oldValue, newValue, isRefresh, '--11')
let obj = {
r,
c,
...newValue
}
this.loadExcel();
// let filename = selectedFile.name.replace(/\.[^/.]+$/, ""); //
// let reader = new FileReader();
// reader.onload = async (e) => {
// let fileData = e.target.result;
// try {
// LuckyExcel.transformExcelToLucky(fileData, async (exportJson, luckysheetfile) => {
// console.log(exportJson.sheets)
// creatExcel(filename, JSON.stringify(exportJson.sheets))
// });
// } catch (e) {
// console.error(e);
// }
// };
// reader.onerror = function() {
// console.error("File could not be read! Code " + reader.error.code);
// };
// reader.readAsArrayBuffer(selectedFile);
},
// creatExcel(title, content){
// const options = {
// container: 'luckysheet', // DOMid
// title: 'excel ', //
// lang: 'zh', //
// hook: {
// updated: (e) => {
// //,1s
// $('#luckysheet_info_detail_save').text("")
// let title = $('#luckysheet_info_detail_input').val();
// let content = luckysheet.getAllSheets();
// //,
// for (let i in content)
// content[i].data = undefined
// console.log(title)
// console.log(content)
// }
// },
// }
// options.data = JSON.parse(content)
// options.title = title;
// window.luckysheet.create(options)
// }
handleClose(done) {
done();
// this.$confirm('')
// .then(_ => {
// done();
// })
// .catch(_ => { });
this.sendMessage(obj)
},
handleCellEditBefore(e) {
console.log(e, 'seeeeeee');
this.drawer = true;
console.log(e, '--11')
let column = parseInt(e[0].column[0]) + 1, row = parseInt(e[0].row[0]) + 1;
this.selectedCell = "第" + row + "行" + "第" + column + "列";
},
handleCellUpdateBefore() {
this.drawer = false;
this.selectedCell = "";
},
handleTabClick(tab, event) {
@ -323,6 +198,7 @@ export default {
},
},
beforeDestroy() {
this.$store.state.sidebarFold = false;
if (this.socket) {
this.socket.close();
}

165
src/views/modules/base/smartExcel/cpts/filling-info.vue

@ -0,0 +1,165 @@
<template>
<div class=''>
<div class="card" :style="{ height: tableHeight }">
<div class="flex title">
<h3>任务信息</h3>
<el-button type="text" round @click="handelClickBack" icon="el-icon-back">返回</el-button>
</div>
<div class="basic">
<el-row>
<el-col :span="8" class="flex">
<div class="label">
任务主题
</div>
<div class="value">
请各社区提报党员信息
</div>
</el-col>
<el-col :span="8" class="flex">
<div class="label">
任务主题
</div>
<div class="value">
请各社区提报党员信息
</div>
</el-col>
<el-col :span="8" class="flex">
</el-col>
</el-row>
<el-row>
<el-col :span="8" class="flex">
<div class="label">
任务主题
</div>
<div class="value">
请各社区提报党员信息
</div>
</el-col>
<el-col :span="8" class="flex">
<div class="label">
任务主题
</div>
<div class="value">
请各社区提报党员信息
</div>
</el-col>
<el-col :span="8" class="flex">
<div class="label">
任务主题
</div>
<div class="value">
请各社区提报党员信息
</div>
</el-col>
</el-row>
<el-row>
<el-col :span="8" class="flex">
<div class="label">
任务主题
</div>
<div class="value">
请各社区提报党员信息
</div>
</el-col>
<el-col :span="8" class="flex">
<div class="label">
任务主题
</div>
<div class="value">
请各社区提报党员信息
</div>
</el-col>
<el-col :span="8" class="flex">
</el-col>
</el-row>
<el-row>
<el-col :span="24" class="flex">
<div class="label">
任务说明
</div>
<div class="value">
测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测测去
</div>
</el-col>
</el-row>
</div>
<div class="flex title flex-center-deputy">
<h3>任务提醒</h3>
<span>点击以下表格开始提报任务</span>
</div>
</div>
</div>
</template>
<script>
import { mapGetters } from 'vuex'
export default {
data() {
return {};
},
created() { },
methods: {
handelClickBack() {
this.$emit('handleShowPage')
},
},
components: {},
computed: {
tableHeight() {
return (this.clientHeight - 140) + 'px'
},
...mapGetters(['clientHeight', 'resolution']),
},
watch: {},
}
</script>
<style lang='scss' scoped>
.card {
background-color: #ffffff;
border-radius: 5px;
margin: 10px 16px;
}
.basic {
padding: 0 30px;
box-sizing: border-box;
.el-row{
margin-bottom: 16px;
.label{
min-width: 80px;
}
}
}
.title {
position: relative;
margin: 0 16px;
&::after {
content: '';
width: 4px;
height: 16px;
background: #5493ff;
display: block;
position: absolute;
top: 16px;
left: -16px;
}
}
.item {
margin-right: 16px;
width: 16%;
margin-bottom: 16px;
img {
width: 80px;
height: 80px;
}
}
</style>

0
src/views/modules/base/smartExcel/cpts/filling-smart.vue

34
src/views/modules/base/smartExcel/filling.vue

@ -10,12 +10,12 @@
:show-all-levels="false" @change="handleChangeAgency" clearable></el-cascader>
</el-form-item>
<el-form-item label="事件内容" prop="eventContent">
<el-form-item label="任务主题" prop="eventContent">
<el-input v-model.trim="formData.eventContent" class="u-item-width-normal" size="small"
clearable placeholder="请输入">
</el-input>
</el-form-item>
<el-form-item label="创建时间" prop="startTime">
<el-form-item label="发布时间" prop="startTime">
<el-date-picker v-model.trim="formData.startTime" :picker-options="startPickerOptions"
class="u-item-width-daterange" size="small" type="date"
value-format="yyyy-MM-dd HH:mm:ss" value="yyyy-MM-dd" placeholder="开始时间">
@ -56,36 +56,25 @@
</el-table-column>
<el-table-column prop="categoryName" label="任务主题" min-width="140" align="center"
:show-overflow-tooltip="true" />
<el-table-column prop="eventContent" label="分发人数" align="center" :show-overflow-tooltip="true"
width="100">
</el-table-column>
<el-table-column prop="responsibleName" align="center" width="100" label="任务周期"
:show-overflow-tooltip="true">
</el-table-column>
<el-table-column prop="responsibleMobile" align="center" width="110" label="任务进度"
:show-overflow-tooltip="true">
</el-table-column>
<el-table-column prop="name" align="center" width="100" label="任务状态" :show-overflow-tooltip="true">
</el-table-column>
<el-table-column prop="satisfactionName" align="center" width="100" label="创建人"
<el-table-column prop="satisfactionName" align="center" width="100" label="发布人"
:show-overflow-tooltip="true">
</el-table-column>
<el-table-column prop="happenTime" align="center" width="140" :show-overflow-tooltip="true"
label="创建时间">
label="发布时间">
</el-table-column>
<el-table-column fixed="right" label="操作" align="center" width="200px">
<template slot-scope="scope">
<el-button @click="handleWatch(scope.row)" type="text" size="small">查看</el-button>
<!-- 取消操作需要做密码校验 -->
<el-button @click="handleCancel(scope.row)" type="text" size="small" class="">取消</el-button>
<!-- 取消后可进行删除 -->
<el-button @click="handleDel(scope.row)" type="text" size="small" class="">取消</el-button>
<el-button @click="handleInfo(scope.row)" type="text" size="small">查看</el-button>
</template>
</el-table-column>
</el-table>
@ -99,7 +88,7 @@
</div>
</div>
<div v-if="pageType == 'info'">
<FillingInfo @handleShowPage="handleShowPage"></FillingInfo>
</div>
@ -109,10 +98,10 @@
<script>
import { requestPost } from "@/js/dai/request";
import nextTick from "dai-js/tools/nextTick";
import { mapGetters } from "vuex";
import FillingInfo from "./cpts/filling-info.vue";
export default {
components: {},
components: { FillingInfo },
data() {
let endDisabledDate = (time) => {
@ -190,9 +179,13 @@ export default {
watch: {
},
mounted() {
this.getTableData()
this.getOrgTreeList()
},
methods: {
handleInfo() {
this.pageType = 'info'
},
handleChangeAgency(val) {
this.sarr = []
this.getLastItem(
@ -271,6 +264,9 @@ export default {
this.$message.error(msg);
}
},
handleShowPage() {
this.pageType = 'list'
},
handleSearch() {
this.pageNo = 1;
this.getTableData();

14
src/views/modules/base/smartExcel/index.vue

@ -10,7 +10,7 @@
clearable></el-cascader>
</el-form-item>
<el-form-item label="事件内容" prop="eventContent">
<el-form-item label="任务主题" prop="eventContent">
<el-input v-model.trim="formData.eventContent" class="u-item-width-normal" size="small" clearable
placeholder="请输入">
</el-input>
@ -155,14 +155,14 @@ export default {
},
statusArray: [
{
label: '',
value: ''
label: '1',
value: '1'
}, {
label: '',
value: ''
label: '2',
value: '2'
}, {
label: '',
value: ''
label: '3',
value: '3'
},
],
orgOptionProps,

Loading…
Cancel
Save