|
@@ -1,1059 +0,0 @@
|
|
-<template>
|
|
|
|
- <div id="addreport">
|
|
|
|
- <div
|
|
|
|
- id="leftfroala"
|
|
|
|
- :class="{'full':!isRightFormShow,'block':isRightFormShow}"
|
|
|
|
- v-loading="importChartNum>0"
|
|
|
|
- :element-loading-text="$t('ReportManage.ReportList.chart_insertion_progress')"
|
|
|
|
- element-loading-spinner="el-icon-loading"
|
|
|
|
- element-loading-background="rgba(0, 0, 0, 0.8)"
|
|
|
|
- >
|
|
|
|
- <froala
|
|
|
|
- id="froala-editor"
|
|
|
|
- ref="froalaEditor"
|
|
|
|
- :tag="'textarea'"
|
|
|
|
- :config="CNEditorConfig"
|
|
|
|
- v-model="aeForm.content"
|
|
|
|
- ></froala>
|
|
|
|
- </div>
|
|
|
|
- <div id="rightitems" v-show="isRightFormShow">
|
|
|
|
- <!-- 通过接口判断是否走审批流,按钮显示的不一致,干脆判断完成再显示所有按钮-->
|
|
|
|
- <div v-if="!pageLoading"
|
|
|
|
- style="
|
|
|
|
- text-align: right;
|
|
|
|
- padding: 0px 0 15px 0;
|
|
|
|
- box-sizing: border-box;
|
|
|
|
- "
|
|
|
|
- >
|
|
|
|
- <div v-show="lastsavetime" style="color: #666; margin-bottom: 15px">
|
|
|
|
- {{$t('ReportManage.ReportList.last_save_time')}}:{{ lastsavetime }}
|
|
|
|
- </div>
|
|
|
|
- <el-button
|
|
|
|
- type="primary"
|
|
|
|
- size="medium"
|
|
|
|
- plain
|
|
|
|
- @click.native="refreshReport"
|
|
|
|
- >
|
|
|
|
- {{$t('ReportManage.ReportList.click_refresh_btn')}}
|
|
|
|
- </el-button>
|
|
|
|
- <el-button v-permission="permissionBtn.reportManageBtn.reportManage_reportView"
|
|
|
|
- type="primary"
|
|
|
|
- size="medium"
|
|
|
|
- plain
|
|
|
|
- @click.native="clickreportadd('yl')"
|
|
|
|
- >{{$t('ReportManage.ReportList.preview_btn')}}</el-button
|
|
|
|
- >
|
|
|
|
- <el-button
|
|
|
|
- type="primary"
|
|
|
|
- size="medium"
|
|
|
|
- plain
|
|
|
|
- @click.native="clickreportadd('cg')"
|
|
|
|
- >{{$t('ReportManage.ReportList.save_draft_btn')}}</el-button
|
|
|
|
- >
|
|
|
|
- <!--不走审批流-->
|
|
|
|
- <template v-if="!isApprove||!hasApproveFlow">
|
|
|
|
- <el-button v-permission="permissionBtn.reportManageBtn.reportManage_publish"
|
|
|
|
- type="primary"
|
|
|
|
- size="medium"
|
|
|
|
- :disabled="checkLoading"
|
|
|
|
- @click.native="clickreportadd('dsfb')"
|
|
|
|
- >{{$t('ReportManage.ReportList.scheduled_publish_btn')}}</el-button
|
|
|
|
- >
|
|
|
|
- <el-button v-permission="permissionBtn.reportManageBtn.reportManage_publish"
|
|
|
|
- type="primary"
|
|
|
|
- size="medium"
|
|
|
|
- :disabled="checkLoading"
|
|
|
|
- @click.native="clickreportadd('fb')"
|
|
|
|
- :loading="isPublishloading"
|
|
|
|
- >{{$t('ReportManage.ReportList.publish_btn')}}</el-button
|
|
|
|
- >
|
|
|
|
- </template>
|
|
|
|
- <template v-if="isApprove&&hasApproveFlow">
|
|
|
|
- <el-button v-permission="permissionBtn.reportManageBtn.reportManage_publish"
|
|
|
|
- :disabled="checkLoading"
|
|
|
|
- type="primary" size="medium" @click="clickreportadd('submit')">{{$t('ReportManage.ReportList.submission_btn')}}</el-button>
|
|
|
|
- </template>
|
|
|
|
- </div>
|
|
|
|
- <div
|
|
|
|
- style="
|
|
|
|
- margin: 0px 0 0 20px;
|
|
|
|
- padding: 10px 20px;
|
|
|
|
- box-sizing: border-box;
|
|
|
|
- background: #fff;
|
|
|
|
- border: 1px solid #3464e0;
|
|
|
|
- "
|
|
|
|
- >
|
|
|
|
- <el-tabs v-model="tabsactive">
|
|
|
|
- <el-tab-pane :label="tab.label" :name="tab.key" v-for="tab in panelTabs" :key="tab.key"></el-tab-pane>
|
|
|
|
- </el-tabs>
|
|
|
|
- <div
|
|
|
|
- v-if="tabsactive == '基础信息'"
|
|
|
|
- style="height: calc(100vh - 280px); overflow-y: auto"
|
|
|
|
- >
|
|
|
|
- <el-form
|
|
|
|
- :model="aeForm"
|
|
|
|
- :rules="aerules"
|
|
|
|
- ref="aeForm"
|
|
|
|
- label-position="right"
|
|
|
|
- label-width="90px"
|
|
|
|
- class="demo-aeForm"
|
|
|
|
- id="login-container"
|
|
|
|
- @submit.native.prevent
|
|
|
|
- >
|
|
|
|
- <el-form-item prop="add_type" :label="$t('ReportManage.ReportList.new_method_btn')">
|
|
|
|
- <el-select
|
|
|
|
- v-model="aeForm.add_type"
|
|
|
|
- @change="userclassidreportdetail"
|
|
|
|
- :placeholder="$t('ReportManage.CategoryList.please_select')"
|
|
|
|
- size="medium"
|
|
|
|
- style="width: 270px"
|
|
|
|
- >
|
|
|
|
- <el-option :label="$t('ReportManage.ReportList.new_report_radio')" :value="1"></el-option>
|
|
|
|
- <el-option :label="$t('ReportManage.ReportList.inherit_report_radio')" :value="2"></el-option>
|
|
|
|
- </el-select>
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item prop="classifynameArr" :label="$t('ReportManage.ReportList.classificiation_selest')">
|
|
|
|
- <el-cascader
|
|
|
|
- @change="userclassidreportdetail"
|
|
|
|
- ref="cascader"
|
|
|
|
- :options="optionsArr"
|
|
|
|
- v-model="aeForm.classifynameArr"
|
|
|
|
- :placeholder="$t('ReportManage.smart_type_filtering')"
|
|
|
|
- size="medium"
|
|
|
|
- style="width: 270px"
|
|
|
|
- ></el-cascader>
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item prop="title" :label="$t('ReportManage.ReportList.title_ipt')">
|
|
|
|
- <el-input
|
|
|
|
- type="textarea"
|
|
|
|
- :rows="2"
|
|
|
|
- :placeholder="$t('ReportManage.CategoryList.please_input')"
|
|
|
|
- v-model="aeForm.title"
|
|
|
|
- size="medium"
|
|
|
|
- ></el-input>
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item :label="$t('ReportManage.ReportList.abstract_ipt')">
|
|
|
|
- <el-input
|
|
|
|
- type="textarea"
|
|
|
|
- :rows="2"
|
|
|
|
- :placeholder="$t('ReportManage.CategoryList.please_input')"
|
|
|
|
- v-model="aeForm.abstract"
|
|
|
|
- size="medium"
|
|
|
|
- ></el-input>
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item :label="$t('ReportManage.ReportList.author_select')">
|
|
|
|
- <el-select
|
|
|
|
- v-model="aeForm.author"
|
|
|
|
- multiple
|
|
|
|
- :placeholder="$t('ReportManage.CategoryList.please_select')"
|
|
|
|
- size="medium"
|
|
|
|
- style="width: 270px"
|
|
|
|
- >
|
|
|
|
- <el-option
|
|
|
|
- v-for="(item, i) in authorlist"
|
|
|
|
- :key="i"
|
|
|
|
- :label="item.ReportAuthor"
|
|
|
|
- :value="item.ReportAuthor"
|
|
|
|
- ></el-option>
|
|
|
|
- </el-select>
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item :label="$t('ReportManage.ReportList.frequency_select')">
|
|
|
|
- <el-select
|
|
|
|
- v-model="aeForm.frequency"
|
|
|
|
- :placeholder="$t('ReportManage.CategoryList.please_select')"
|
|
|
|
- size="medium"
|
|
|
|
- style="width: 270px"
|
|
|
|
- >
|
|
|
|
- <el-option :label="$t('ReportManage.smart_annually')" value="年度"></el-option>
|
|
|
|
- <el-option :label="$t('ReportManage.smart_semi_annually')" value="半年度"></el-option>
|
|
|
|
- <el-option :label="$t('ReportManage.smart_quarterly')" value="季度"></el-option>
|
|
|
|
- <el-option :label="$t('ReportManage.smart_monthly')" value="月度"></el-option>
|
|
|
|
- <el-option :label="$t('ReportManage.smart_bi_weekly')" value="双周度"></el-option>
|
|
|
|
- <el-option :label="$t('ReportManage.smart_weekly')" value="周度"></el-option>
|
|
|
|
- <el-option :label="$t('ReportManage.smart_daily')" value="日度"></el-option>
|
|
|
|
- <el-option :label="$t('ReportManage.smart_irregularly')" value="不定时"></el-option>
|
|
|
|
- </el-select>
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item :label="$t('ReportManage.ReportList.creation_time_select')">
|
|
|
|
- <el-date-picker
|
|
|
|
- v-model="aeForm.create_time"
|
|
|
|
- type="date"
|
|
|
|
- value-format="yyyy-MM-dd"
|
|
|
|
- :placeholder="$t('ReportManage.ReportList.select_date')"
|
|
|
|
- size="medium"
|
|
|
|
- :clearable="false"
|
|
|
|
- style="width: 270px"
|
|
|
|
- ></el-date-picker>
|
|
|
|
- </el-form-item>
|
|
|
|
- </el-form>
|
|
|
|
- </div>
|
|
|
|
- <div v-if="tabsactive == '图表插入'">
|
|
|
|
- <el-input
|
|
|
|
- :placeholder="$t('ReportManage.ReportList.chart_name')"
|
|
|
|
- v-model="key_word"
|
|
|
|
- size="medium"
|
|
|
|
- prefix-icon="el-icon-search"
|
|
|
|
- @input="() => {search_page=1;$refs.chartListRef.scrollTop = 0;getreportlist(key_word)}"
|
|
|
|
- >
|
|
|
|
- </el-input>
|
|
|
|
- <el-radio-group v-model="chart_source" @change="() => {search_page=1;$refs.chartListRef.scrollTop = 0;getreportlist()}" style="margin-top: 10px;">
|
|
|
|
- <el-radio :label="1">{{$t('ReportManage.ReportList.chart_inventory_radio')}}</el-radio>
|
|
|
|
- <el-radio :label="2">{{$t('ReportManage.ReportList.price_curve_radio')}}</el-radio>
|
|
|
|
- <el-radio :label="3">{{$t('ReportManage.ReportList.related_charts_radio')}}</el-radio>
|
|
|
|
- <el-radio :label="6">{{$t('ReportManage.ReportList.curve_fitting_radio')}}</el-radio>
|
|
|
|
- <el-radio :label="7">{{$t('ReportManage.ReportList.statistical_feature_radio')}}</el-radio>
|
|
|
|
- <el-radio :label="10">{{$t('ReportManage.ReportList.intercommodity_analysis_radio')}}</el-radio>
|
|
|
|
- </el-radio-group>
|
|
|
|
- <div style="margin: 10px 0">
|
|
|
|
- <el-checkbox v-model="isShowMe" @change="() => {search_page=1;$refs.chartListRef.scrollTop = 0;getreportlist(key_word)}">{{$t('ReportManage.ReportList.just_mine_radio')}}</el-checkbox>
|
|
|
|
- </div>
|
|
|
|
- <div
|
|
|
|
- id="reportwin"
|
|
|
|
- ref="chartListRef"
|
|
|
|
- style="
|
|
|
|
- height: calc(100vh - 370px);
|
|
|
|
- overflow-x: hidden;
|
|
|
|
- overflow-y: auto;
|
|
|
|
- "
|
|
|
|
- v-infinite-scroll="loadReportHandle"
|
|
|
|
- :infinite-scroll-immediate="false"
|
|
|
|
- >
|
|
|
|
- <template v-if="newreportlist.length">
|
|
|
|
- <div
|
|
|
|
- v-for="(item, index) in newreportlist"
|
|
|
|
- :key="item.ChartInfoId"
|
|
|
|
- :style="item.Disabled && 'cursor: not-allowed;'"
|
|
|
|
- class="liststy"
|
|
|
|
- >
|
|
|
|
- <p class="color_primary">{{ item.ChartName }}</p>
|
|
|
|
- <img
|
|
|
|
- :src="!item.HaveOperaAuth?$icons.lock_big:item.ChartImage"
|
|
|
|
- :id="'listnode' + index"
|
|
|
|
- @click="insertHtml(item)"
|
|
|
|
- />
|
|
|
|
- </div>
|
|
|
|
- </template>
|
|
|
|
-
|
|
|
|
- <tableNoData :text="$t('ReportManage.ReportList.no_chart_table_available')" size="mini" v-else/>
|
|
|
|
- </div>
|
|
|
|
-
|
|
|
|
- </div>
|
|
|
|
- <div v-if="tabsactive == '沙盘插入'">
|
|
|
|
- <el-input
|
|
|
|
- :placeholder="$t('ReportManage.ReportList.no_reports_msg')"
|
|
|
|
- v-model="sandTabelQuery.Keyword"
|
|
|
|
- size="medium"
|
|
|
|
- prefix-icon="el-icon-search"
|
|
|
|
- >
|
|
|
|
- </el-input>
|
|
|
|
- <div
|
|
|
|
- id="sandTable-container"
|
|
|
|
- ref="sandTable"
|
|
|
|
- style="
|
|
|
|
- height: calc(100vh - 370px);
|
|
|
|
- overflow-x: hidden;
|
|
|
|
- overflow-y: auto;
|
|
|
|
- "
|
|
|
|
- @scroll="sandTableHandleScroll"
|
|
|
|
- >
|
|
|
|
- <template v-if="sandTableList.length">
|
|
|
|
- <div
|
|
|
|
- v-for="(item, index) in sandTableList"
|
|
|
|
- :key="item.SandboxId"
|
|
|
|
- class="liststy"
|
|
|
|
- >
|
|
|
|
- <p class="color_primary">{{ item.Name }}</p>
|
|
|
|
- <img
|
|
|
|
- :src="item.PicUrl"
|
|
|
|
- :id="'sandTable' + index"
|
|
|
|
- @click="insertHtml(item,'image')"
|
|
|
|
- />
|
|
|
|
- <!-- <p class="source-identification">来源:弘则研究</p> -->
|
|
|
|
- </div>
|
|
|
|
- </template>
|
|
|
|
- <tableNoData :text="$t('Table.prompt_slogan')" size="mini" v-else/>
|
|
|
|
- </div>
|
|
|
|
- </div>
|
|
|
|
- <div v-if="tabsactive == '表格插入'">
|
|
|
|
- <el-input
|
|
|
|
- :placeholder="$t('ReportManage.ReportList.table_name_tabs')"
|
|
|
|
- v-model="sheetSearchObj.Keyword"
|
|
|
|
- size="medium"
|
|
|
|
- prefix-icon="el-icon-search"
|
|
|
|
- @input="getSheetList"
|
|
|
|
- >
|
|
|
|
- </el-input>
|
|
|
|
- <div
|
|
|
|
- style="
|
|
|
|
- height: calc(100vh - 370px);
|
|
|
|
- overflow-x: hidden;
|
|
|
|
- overflow-y: auto;
|
|
|
|
- "
|
|
|
|
- >
|
|
|
|
- <template v-if="sheetSearchList.length">
|
|
|
|
- <div
|
|
|
|
- v-for="item in sheetSearchList"
|
|
|
|
- :key="item.ExcelInfoId"
|
|
|
|
- class="liststy"
|
|
|
|
- >
|
|
|
|
- <p class="color_primary">{{ item.ExcelName }}</p>
|
|
|
|
- <img
|
|
|
|
- :src="!item.HaveOperaAuth?$icons.lock_big:item.ExcelImage"
|
|
|
|
- :id="'sheet' + item.ExcelInfoId"
|
|
|
|
- style="object-fit: contain;height: 250px;"
|
|
|
|
- @click="insertHtml(item,'sheet')"
|
|
|
|
- />
|
|
|
|
- </div>
|
|
|
|
- </template>
|
|
|
|
-
|
|
|
|
- <tableNoData :text="$t('Table.prompt_slogan')" size="mini" v-else/>
|
|
|
|
- </div>
|
|
|
|
- </div>
|
|
|
|
- <div v-if="tabsactive == 'MyETA批量插入'">
|
|
|
|
- <importMyChart @handleImportMyChart="handleImportMyChart"/>
|
|
|
|
- </div>
|
|
|
|
- <div v-if="tabsactive == '语义分析插入'">
|
|
|
|
- <importSemantics @handleImportSemantic="(item)=>insertHtml(item,'image')"/>
|
|
|
|
- </div>
|
|
|
|
- </div>
|
|
|
|
- </div>
|
|
|
|
- <span
|
|
|
|
- class="slide-icon slide-btn-icon"
|
|
|
|
- :class="{'slide-left':!isRightFormShow,'slide-right':isRightFormShow}"
|
|
|
|
- @click="isRightFormShow = !isRightFormShow"
|
|
|
|
- >
|
|
|
|
- <i :class="{'el-icon-d-arrow-left':!isRightFormShow,'el-icon-d-arrow-right':isRightFormShow}"></i>
|
|
|
|
- </span>
|
|
|
|
-
|
|
|
|
- <!-- 定时发布弹窗 -->
|
|
|
|
- <el-dialog
|
|
|
|
- v-dialogDrag
|
|
|
|
- :append-to-body="true"
|
|
|
|
- :visible.sync="showDSFB"
|
|
|
|
- width="500px"
|
|
|
|
- :title="$t('ReportManage.ReportList.scheduled_publish_btn')"
|
|
|
|
- >
|
|
|
|
- <div>
|
|
|
|
- <div>
|
|
|
|
- <span>{{$t('ReportManage.ReportList.publish_time')}}</span>
|
|
|
|
- <el-date-picker
|
|
|
|
- v-model="taskTime"
|
|
|
|
- type="datetime"
|
|
|
|
- :placeholder="$t('ReportManage.ReportList.select_date_and_time')"
|
|
|
|
- value-format="yyyy-MM-dd HH:mm"
|
|
|
|
- :picker-options="timePickerOpt"
|
|
|
|
- />
|
|
|
|
- </div>
|
|
|
|
- <p style="margin:15px 0">{{$t('ReportManage.ReportList.the_report_will_be_posted_on_time')}}</p>
|
|
|
|
- <div style="text-align:right;margin:20px 0">
|
|
|
|
- <el-button type="primary" plain @click="showDSFB=false">{{$t('Dialog.cancel_btn')}}</el-button>
|
|
|
|
- <el-button type="primary" @click="handleSetReportPrepublish">{{$t('Dialog.confirm_btn')}}</el-button>
|
|
|
|
- </div>
|
|
|
|
- </div>
|
|
|
|
- </el-dialog>
|
|
|
|
- </div>
|
|
|
|
-</template>
|
|
|
|
-
|
|
|
|
-<script>
|
|
|
|
-import {
|
|
|
|
- autosave,
|
|
|
|
- reportadd,
|
|
|
|
- reportedit,
|
|
|
|
- classifylist,
|
|
|
|
- classifyIdDetail,
|
|
|
|
- reportpublish,
|
|
|
|
- reportauthor,
|
|
|
|
- getDraft,
|
|
|
|
- dataBaseInterface,
|
|
|
|
- sandInterface,
|
|
|
|
- reportSetPrepublish,
|
|
|
|
- departInterence
|
|
|
|
-} from '@/api/api.js';
|
|
|
|
-import http from '@/api/http.js';
|
|
|
|
-import VueFroala from 'vue-froala-wysiwyg';
|
|
|
|
-import urlSlug from 'url-slug';
|
|
|
|
-import mixinMsg from './mixins/messagePush'
|
|
|
|
-import reportMixin from './mixins/reportMixin';
|
|
|
|
-import reportApproveConfig from "@/mixins/reportApproveConfig.js"
|
|
|
|
-import importMyChart from './components/importMyChart.vue'
|
|
|
|
-import importSemantics from './components/importSemantics.vue';
|
|
|
|
-export default {
|
|
|
|
- mixins:[mixinMsg,reportMixin,reportApproveConfig],
|
|
|
|
- data() {
|
|
|
|
- var that = this;
|
|
|
|
- return {
|
|
|
|
- //批量导入图表
|
|
|
|
- importChartNum:0,//批量导入图表的数量 如果大于0则说明在加载
|
|
|
|
- tabsactive: '基础信息',
|
|
|
|
- optionsArr: [],
|
|
|
|
- key_word: '',
|
|
|
|
- // 沙盘插入 ----------start
|
|
|
|
- sandTabelQuery:{
|
|
|
|
- PageSize: 13,
|
|
|
|
- CurrentIndex: 1,
|
|
|
|
- Keyword: '',
|
|
|
|
- }, // 沙盘图查询参数
|
|
|
|
- sandTableLoading:false,
|
|
|
|
- sandTableTotal:0,//沙盘总共条数
|
|
|
|
- sandTableList:[],
|
|
|
|
- isRequesting:false,
|
|
|
|
- loadedText:'', // 全部加载完的文字提示
|
|
|
|
- // 沙盘插入 ------------- end
|
|
|
|
- originreportlist: [],
|
|
|
|
- newreportlist: [], //图表列表
|
|
|
|
- authorlist: [],
|
|
|
|
- aeForm: {
|
|
|
|
- add_type: 1,
|
|
|
|
- classify_name: 1,
|
|
|
|
- classifynameArr: [],
|
|
|
|
- title: '',
|
|
|
|
- abstract: '',
|
|
|
|
- author: ['投研团队'],
|
|
|
|
- frequency: '日度',
|
|
|
|
- create_time: http.dateFormatter(new Date(), false).replace(/\./g,'-'),
|
|
|
|
- content: '',
|
|
|
|
- },
|
|
|
|
- aerules: {
|
|
|
|
- add_type: [
|
|
|
|
- {
|
|
|
|
- required: true,
|
|
|
|
- message: '',
|
|
|
|
- trigger: 'blur',
|
|
|
|
- },
|
|
|
|
- ],
|
|
|
|
- classifynameArr: [
|
|
|
|
- {
|
|
|
|
- required: true,
|
|
|
|
- message: '',
|
|
|
|
- trigger: 'blur',
|
|
|
|
- },
|
|
|
|
- ],
|
|
|
|
- title: [
|
|
|
|
- {
|
|
|
|
- required: true,
|
|
|
|
- message: '请输入',
|
|
|
|
- trigger: 'blur',
|
|
|
|
- },
|
|
|
|
- ],
|
|
|
|
- },
|
|
|
|
- lastEditRange: null,
|
|
|
|
- report_draft_id: 0,
|
|
|
|
- waterMarkStr:''
|
|
|
|
- };
|
|
|
|
- },
|
|
|
|
- mounted() {
|
|
|
|
- this.getclassifylist();
|
|
|
|
- this.getreportlist('');
|
|
|
|
- this.getreportauthor();
|
|
|
|
- this.getSandTable();
|
|
|
|
- this.getSheetList();
|
|
|
|
- this.getSystemUserInfo()
|
|
|
|
- this.timer = setInterval(() => {
|
|
|
|
- this.autoSave();
|
|
|
|
- }, 6000);
|
|
|
|
-
|
|
|
|
- window.addEventListener('message',this.reInitIframe)
|
|
|
|
- },
|
|
|
|
- destroyed() {
|
|
|
|
- window.removeEventListener('message',this.reInitIframe)
|
|
|
|
- if (this.timer) {
|
|
|
|
- clearInterval(this.timer);
|
|
|
|
- }
|
|
|
|
- },
|
|
|
|
- updated() {
|
|
|
|
- $('#leftfroala').find('p').css({ fontSize: '16px',width:'100%' });
|
|
|
|
- $('#leftfroala').find('p strong span').css({ fontSize: '16px' });
|
|
|
|
- $('#leftfroala')
|
|
|
|
- .find('.fr-placeholder')
|
|
|
|
- .css({ fontSize: '16px', lineHeight: '25.6px' });
|
|
|
|
- },
|
|
|
|
- methods: {
|
|
|
|
- // 每十秒自动保存
|
|
|
|
- autoSave() {
|
|
|
|
- console.log(this.ischange,this.autoSaveFlag);
|
|
|
|
- if (this.report_draft_id&&this.autoSaveFlag) {
|
|
|
|
- //如果富文本中有未上传完成的图片,去除这个dom
|
|
|
|
- $('.fr-element').find('img.fr-uploading').length&&$('.fr-element').find('img.fr-uploading').remove()
|
|
|
|
- autosave({
|
|
|
|
- ReportId: Number(this.report_draft_id),
|
|
|
|
- Content: $('.fr-element').html(),
|
|
|
|
- NoChange:this.ischange?0:1
|
|
|
|
- }).then((res) => {
|
|
|
|
- if (res.Ret === 200) {
|
|
|
|
- this.report_id = res.Data.ReportId;
|
|
|
|
- this.lastsavetime = http.dateFormatter(new Date(), true);
|
|
|
|
- }
|
|
|
|
- });
|
|
|
|
- this.ischange = false;
|
|
|
|
- }
|
|
|
|
- },
|
|
|
|
- getDrafts() {
|
|
|
|
- getDraft({}).then((res) => {
|
|
|
|
- if (res.Ret == 200) {
|
|
|
|
- this.report_draft_id = res.Data.Id;
|
|
|
|
- this.aeForm = {
|
|
|
|
- classifynameArr:
|
|
|
|
- res.Data.ClassifyIdSecond && res.Data.ClassifyNameSecond
|
|
|
|
- ? [
|
|
|
|
- JSON.stringify({
|
|
|
|
- l: res.Data.ClassifyNameFirst,
|
|
|
|
- v: parseInt(res.Data.ClassifyIdFirst),
|
|
|
|
- }),
|
|
|
|
- JSON.stringify({
|
|
|
|
- l: res.Data.ClassifyNameSecond,
|
|
|
|
- v: parseInt(res.Data.ClassifyIdSecond),
|
|
|
|
- }),
|
|
|
|
- ]
|
|
|
|
- : [
|
|
|
|
- JSON.stringify({
|
|
|
|
- l: res.Data.ClassifyNameFirst,
|
|
|
|
- v: parseInt(res.Data.ClassifyIdFirst),
|
|
|
|
- }),
|
|
|
|
- ],
|
|
|
|
- title: res.Data.Title,
|
|
|
|
- abstract: res.Data.Abstract,
|
|
|
|
- author: res.Data.Author ? res.Data.Author.split(',') : '',
|
|
|
|
- frequency: res.Data.Frequency,
|
|
|
|
- content: res.Data.Content,
|
|
|
|
- };
|
|
|
|
- let classify = this.aeForm.classifynameArr.map(i=>{
|
|
|
|
- return JSON.parse(i).v||0
|
|
|
|
- })
|
|
|
|
- this.checkClassifyNameArr(1,classify)
|
|
|
|
- }
|
|
|
|
- });
|
|
|
|
- },
|
|
|
|
- getreportauthor() {
|
|
|
|
- reportauthor({}).then((res) => {
|
|
|
|
- if (res.Ret == 200) {
|
|
|
|
- this.authorlist = res.Data.List || [];
|
|
|
|
- }
|
|
|
|
- });
|
|
|
|
- },
|
|
|
|
- userclassidreportdetail() {
|
|
|
|
- //检查classifynameArr是否有审批流
|
|
|
|
- let classify = this.aeForm.classifynameArr.map(i=>{
|
|
|
|
- return JSON.parse(i).v||0
|
|
|
|
- })
|
|
|
|
- this.checkClassifyNameArr(1,classify)
|
|
|
|
-
|
|
|
|
- if (this.aeForm.add_type == 1) {
|
|
|
|
- if (this.aeForm.classifynameArr.length == 2) {
|
|
|
|
- this.aeForm.title = JSON.parse(this.aeForm.classifynameArr[1]).l;
|
|
|
|
- }
|
|
|
|
- return false;
|
|
|
|
- }
|
|
|
|
- if (this.aeForm.classifynameArr.length == 0) {
|
|
|
|
- return false;
|
|
|
|
- }
|
|
|
|
- let params = {
|
|
|
|
- ClassifyIdFirst: JSON.parse(this.aeForm.classifynameArr[0]).v,
|
|
|
|
- };
|
|
|
|
- if (this.aeForm.classifynameArr.length == 2) {
|
|
|
|
- params.ClassifyIdSecond = JSON.parse(
|
|
|
|
- this.aeForm.classifynameArr[1]
|
|
|
|
- ).v;
|
|
|
|
- } else {
|
|
|
|
- params.ClassifyIdSecond = 0;
|
|
|
|
- }
|
|
|
|
- classifyIdDetail(params).then((res) => {
|
|
|
|
- if (res.Ret == 200) {
|
|
|
|
- if (res.Data == null) {
|
|
|
|
- this.$message.error(this.$t('ReportManage.ReportList.no_reports_msg'));
|
|
|
|
- return false;
|
|
|
|
- }
|
|
|
|
- let obj=JSON.parse(JSON.stringify(this.aeForm.classifynameArr))
|
|
|
|
- this.aeForm = {
|
|
|
|
- add_type: 2,
|
|
|
|
- classify_name: 1,
|
|
|
|
- classifynameArr:obj,
|
|
|
|
- title: res.Data.Title,
|
|
|
|
- abstract: res.Data.Abstract,
|
|
|
|
- author: res.Data.Author ? res.Data.Author.split(',') : '',
|
|
|
|
- frequency: res.Data.Frequency,
|
|
|
|
- create_time:
|
|
|
|
- this.aeForm.add_type == 2
|
|
|
|
- ? http.dateFormatter(new Date(), false)
|
|
|
|
- : res.Data.CreateTime,
|
|
|
|
- content: res.Data.Content,
|
|
|
|
- };
|
|
|
|
- }
|
|
|
|
- });
|
|
|
|
- },
|
|
|
|
- clickreportadd(tp) {
|
|
|
|
- console.log(this.aeForm.classifynameArr);
|
|
|
|
- if (
|
|
|
|
- !this.aeForm.classifynameArr ||
|
|
|
|
- this.aeForm.classifynameArr.length == 0
|
|
|
|
- ) {
|
|
|
|
- this.$message.error(this.$t('ReportManage.ReportList.please_select_category'));
|
|
|
|
- return false;
|
|
|
|
- }
|
|
|
|
- if (!this.aeForm.title) {
|
|
|
|
- this.$message.error(this.$t('ReportManage.ReportList.input_title_please'));
|
|
|
|
- return false;
|
|
|
|
- }
|
|
|
|
- if(!this.autoSaveFlag){
|
|
|
|
- this.$message.error(this.$t('ReportManage.smart_msg.img_wait'))
|
|
|
|
- return false
|
|
|
|
- }
|
|
|
|
- //如果富文本中有未上传完成的图片,去除这个dom
|
|
|
|
- $('.fr-element').find('img.fr-uploading').length&&$('.fr-element').find('img.fr-uploading').remove()
|
|
|
|
- let params = {
|
|
|
|
- AddType: this.aeForm.add_type,
|
|
|
|
- ClassifyIdFirst: JSON.parse(this.aeForm.classifynameArr[0]).v,
|
|
|
|
- ClassifyNameFirst: JSON.parse(this.aeForm.classifynameArr[0]).l,
|
|
|
|
- Title: this.aeForm.title,
|
|
|
|
- Abstract: this.aeForm.abstract,
|
|
|
|
- Author:
|
|
|
|
- this.aeForm.author.length > 0
|
|
|
|
- ? this.aeForm.author.join(',')
|
|
|
|
- : '',
|
|
|
|
- Frequency: this.aeForm.frequency,
|
|
|
|
- // content:this.aeForm.content,create_time:this.aeForm.create_time
|
|
|
|
- Content: $('.fr-element').html(),
|
|
|
|
- CreateTime: this.aeForm.create_time,
|
|
|
|
- ReportVersion: 2
|
|
|
|
- };
|
|
|
|
-
|
|
|
|
- if (this.aeForm.classifynameArr.length == 2) {
|
|
|
|
- params.ClassifyIdSecond = JSON.parse(
|
|
|
|
- this.aeForm.classifynameArr[1]
|
|
|
|
- ).v;
|
|
|
|
- params.ClassifyNameSecond = JSON.parse(
|
|
|
|
- this.aeForm.classifynameArr[1]
|
|
|
|
- ).l;
|
|
|
|
- }
|
|
|
|
- params.State = 1;
|
|
|
|
- if (tp == 'yl') {
|
|
|
|
- sessionStorage.setItem('reportdtl', JSON.stringify(params));
|
|
|
|
- let { href } = this.$router.resolve({ name: '预览报告' });
|
|
|
|
- window.open(href, '_blank');
|
|
|
|
- return false;
|
|
|
|
- }
|
|
|
|
- if (tp == 'fb'||tp == 'submit') {
|
|
|
|
- this.isPublishloading = true;
|
|
|
|
- }
|
|
|
|
- const isPost = this.permissionBtn.checkPermissionBtn(this.permissionBtn.reportManageBtn.reportManage_sendMsg)&&(!this.isApprove)
|
|
|
|
- // 如果已经添加过就修改 否则新增
|
|
|
|
- if (this.isAddEnter) {
|
|
|
|
- let params2 = {
|
|
|
|
- ReportId: Number(this.report_draft_id),
|
|
|
|
- State: 1,
|
|
|
|
- AddType: this.aeForm.add_type,
|
|
|
|
- ClassifyIdFirst: JSON.parse(this.aeForm.classifynameArr[0]).v,
|
|
|
|
- ClassifyNameFirst: JSON.parse(this.aeForm.classifynameArr[0]).l,
|
|
|
|
- Title: this.aeForm.title,
|
|
|
|
- Abstract: this.aeForm.abstract,
|
|
|
|
- Author:
|
|
|
|
- this.aeForm.author.length > 0
|
|
|
|
- ? this.aeForm.author.join(',')
|
|
|
|
- : '',
|
|
|
|
- Frequency: this.aeForm.frequency,
|
|
|
|
- // content:this.aeForm.content,
|
|
|
|
- Content: $('.fr-element').html(),
|
|
|
|
- CreateTime: this.aeForm.create_time,
|
|
|
|
- };
|
|
|
|
- if (this.aeForm.classifynameArr.length == 2) {
|
|
|
|
- params2.ClassifyIdSecond = JSON.parse(
|
|
|
|
- this.aeForm.classifynameArr[1]
|
|
|
|
- ).v;
|
|
|
|
- params2.ClassifyNameSecond = JSON.parse(
|
|
|
|
- this.aeForm.classifynameArr[1]
|
|
|
|
- ).l;
|
|
|
|
- }
|
|
|
|
- if(tp=='fb') {
|
|
|
|
- const hasTel=this.aeForm.classifynameArr.length == 2?JSON.parse(this.aeForm.classifynameArr[1]).HasTeleconference:JSON.parse(this.aeForm.classifynameArr[0]).HasTeleconference
|
|
|
|
- if(hasTel==1){
|
|
|
|
- this.isMessagePost = false;
|
|
|
|
- this.reporteditMsg(params2,tp)
|
|
|
|
- }else if(isPost){
|
|
|
|
- this.$confirm(this.$t('ReportManage.smart_msg.publishing_messages'), this.$t('ReportManage.smart_release_prompt_btn'), {
|
|
|
|
- confirmButtonText: this.$t('ReportManage.smart_btn.push'),
|
|
|
|
- cancelButtonText: this.$t('ReportManage.smart_btn.not_push'),
|
|
|
|
- type: 'warning',
|
|
|
|
- distinguishCancelAndClose:true,
|
|
|
|
- beforeClose:(action, instance,done)=>{
|
|
|
|
- if(action=='close') {
|
|
|
|
- //右上角
|
|
|
|
- this.isPublishloading = false;
|
|
|
|
- } else if(action=='cancel') {
|
|
|
|
- //cancelButton
|
|
|
|
- this.isMessagePost = false;
|
|
|
|
- this.reporteditMsg(params2,tp)
|
|
|
|
- }else {
|
|
|
|
- //confirmButton
|
|
|
|
- this.isMessagePost = true;
|
|
|
|
- this.reporteditMsg(params2,tp)
|
|
|
|
- }
|
|
|
|
- done()
|
|
|
|
- }
|
|
|
|
- })
|
|
|
|
- }else{
|
|
|
|
- this.isMessagePost = false;
|
|
|
|
- this.reporteditMsg(params2,tp)
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- }else {
|
|
|
|
- this.reporteditMsg(params2,tp)
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- } else {
|
|
|
|
- if(tp=='fb') {
|
|
|
|
- const hasTel=this.aeForm.classifynameArr.length == 2?JSON.parse(this.aeForm.classifynameArr[1]).HasTeleconference:JSON.parse(this.aeForm.classifynameArr[0]).HasTeleconference
|
|
|
|
- if(hasTel==1){
|
|
|
|
- this.isMessagePost = false;
|
|
|
|
- this.reportaddMsg(params,tp)
|
|
|
|
- }else if(isPost){
|
|
|
|
- this.$confirm(this.$t('ReportManage.smart_msg.publishing_messages'), this.$t('ReportManage.smart_release_prompt_btn'), {
|
|
|
|
- confirmButtonText: this.$t('ReportManage.smart_btn.push'),
|
|
|
|
- cancelButtonText: this.$t('ReportManage.smart_btn.not_push'),
|
|
|
|
- type: 'warning',
|
|
|
|
- distinguishCancelAndClose:true,
|
|
|
|
- beforeClose:(action, instance,done)=>{
|
|
|
|
- console.log(action, instance);
|
|
|
|
- if(action==='close') {
|
|
|
|
- //右上角
|
|
|
|
- this.isPublishloading = false;
|
|
|
|
- } else if(action==='cancel') {
|
|
|
|
- //cancelButton
|
|
|
|
- this.isMessagePost = false;
|
|
|
|
- this.reportaddMsg(params,tp)
|
|
|
|
- }else {
|
|
|
|
- //confirmButton
|
|
|
|
- this.isMessagePost = true;
|
|
|
|
- this.reportaddMsg(params,tp)
|
|
|
|
- }
|
|
|
|
- done()
|
|
|
|
- }
|
|
|
|
- })
|
|
|
|
- }else{
|
|
|
|
- this.isMessagePost = false;
|
|
|
|
- this.reportaddMsg(params,tp)
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- }else {
|
|
|
|
- this.reportaddMsg(params,tp)
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- },
|
|
|
|
- publishreport(id,code) {
|
|
|
|
- //发布报告
|
|
|
|
- reportpublish({ ReportIds: String(id) ,ReportUrl:this.generatePdfLinks(code)}).then((res) => {
|
|
|
|
- if (res.Ret == 200) {
|
|
|
|
- this.isPublishloading = false;
|
|
|
|
- this.$router.push({ path: '/reportlist' });
|
|
|
|
- }
|
|
|
|
- });
|
|
|
|
- },
|
|
|
|
- generatePdfLinks(Code){
|
|
|
|
- const baseUrl= localStorage.getItem('dynamicOutLinks') ? JSON.parse(localStorage.getItem('dynamicOutLinks')).ReportViewUrl : '';
|
|
|
|
- return `${baseUrl}/reportshare_pdf?code=${Code}&flag=${this.waterMarkStr}`
|
|
|
|
- },
|
|
|
|
- // 定时发布报告
|
|
|
|
- handleSetReportPrepublish(){
|
|
|
|
- if(!this.taskTime){
|
|
|
|
- this.$message.warning(this.$t('ReportManage.smart_msg.select_push_time'))
|
|
|
|
- return
|
|
|
|
- }
|
|
|
|
- const now=this.$moment().format('YYYY-MM-DD HH:mm:ss')
|
|
|
|
- console.log(now);
|
|
|
|
- console.log(this.taskTime);
|
|
|
|
- if(this.$moment(this.taskTime).isBefore(now,'second')){
|
|
|
|
- this.$message.warning(this.$t('ReportManage.smart_msg.than_current_time'))
|
|
|
|
- return
|
|
|
|
- }
|
|
|
|
- const isPost = this.permissionBtn.checkPermissionBtn(this.permissionBtn.reportManageBtn.reportManage_sendMsg)
|
|
|
|
- this.$confirm(isPost?this.$t('ReportManage.smart_msg.push_report_msg'):this.$t('ReportManage.smart_msg.is_push_timed'), this.$t('ReportManage.smart_release_prompt_btn'), {
|
|
|
|
- confirmButtonText: isPost?this.$t('ReportManage.smart_btn.push'):this.$t('ReportManage.smart_btn.publish'),
|
|
|
|
- cancelButtonText: isPost?this.$t('ReportManage.smart_btn.not_push'):this.$t('Dialog.cancel_btn'),
|
|
|
|
- type: 'warning',
|
|
|
|
- distinguishCancelAndClose:true,
|
|
|
|
- beforeClose:(action, instance,done)=>{
|
|
|
|
- console.log(action, instance);
|
|
|
|
- if(action==='close'||action==='cancel') {
|
|
|
|
- if(isPost) {
|
|
|
|
- //右上角或者不推送
|
|
|
|
- reportSetPrepublish({
|
|
|
|
- ReportId:Number(this.report_draft_id),
|
|
|
|
- PrePublishTime:this.taskTime,
|
|
|
|
- PreMsgSend:0,
|
|
|
|
- ReportUrl:this.generatePdfLinks(this.reportCode)
|
|
|
|
- }).then(res=>{
|
|
|
|
- if(res.Ret===200){
|
|
|
|
- this.$message.success(this.$t('ReportManage.smart_msg.timed_success'))
|
|
|
|
- this.$router.push({ path: '/reportlist' });
|
|
|
|
- }
|
|
|
|
- })
|
|
|
|
- }
|
|
|
|
- } else {
|
|
|
|
- //confirmButton
|
|
|
|
- reportSetPrepublish({
|
|
|
|
- ReportId:Number(this.report_draft_id),
|
|
|
|
- PrePublishTime:this.taskTime,
|
|
|
|
- PreMsgSend:isPost?1:0,
|
|
|
|
- ReportUrl:this.generatePdfLinks(this.reportCode)
|
|
|
|
- }).then(res=>{
|
|
|
|
- if(res.Ret===200){
|
|
|
|
- this.$message.success(this.$t('ReportManage.smart_msg.timed_success'))
|
|
|
|
- this.$router.push({ path: '/reportlist' });
|
|
|
|
- }
|
|
|
|
- })
|
|
|
|
- }
|
|
|
|
- done()
|
|
|
|
- }
|
|
|
|
- })
|
|
|
|
-
|
|
|
|
- },
|
|
|
|
- //批量插入我的图表
|
|
|
|
- handleImportMyChart(data){
|
|
|
|
- //设置编辑器获取焦点
|
|
|
|
- this.editor.events.focus();
|
|
|
|
- // 获取选定对象
|
|
|
|
- const selection = getSelection();
|
|
|
|
- // 判断是否有最后光标对象存在
|
|
|
|
- if (this.lastEditRange) {
|
|
|
|
- // 存在最后光标对象,选定对象清除所有光标并添加最后光标还原之前的状态
|
|
|
|
- selection.removeAllRanges();
|
|
|
|
- selection.addRange(this.lastEditRange);
|
|
|
|
- }
|
|
|
|
- //插入内容
|
|
|
|
- let htmlStr=''
|
|
|
|
- const LINK_CHART_URL = this.$setting.dynamicOutLinks.ChartViewUrl+'/chartshow';
|
|
|
|
-
|
|
|
|
- data.forEach(item=>{
|
|
|
|
- const t=new Date().getTime()
|
|
|
|
- item.domId=item.UniqueCode+t //避免多次添加同一图表 id相同
|
|
|
|
- htmlStr=htmlStr+`<p style='text-align:left; margin-top:10px;'>
|
|
|
|
- <iframe id='${item.domId}' src='${LINK_CHART_URL}?code=${item.UniqueCode}&lang=${this.currentLang}' width='100%' height='350' style='border-width:0px; min-height:350px;'></iframe>
|
|
|
|
- </p>`
|
|
|
|
- })
|
|
|
|
- this.$nextTick(()=>{
|
|
|
|
- console.log('import start',data);
|
|
|
|
- this.importChartNum=data.length
|
|
|
|
- this.editor.html.insert(htmlStr)
|
|
|
|
- this.handleListenIframeLoad(data)
|
|
|
|
- })
|
|
|
|
-
|
|
|
|
- this.lastEditRange = selection.getRangeAt(0);
|
|
|
|
- },
|
|
|
|
- // 监听批量导入的iframe是否加载完
|
|
|
|
- handleListenIframeLoad(list){
|
|
|
|
- list.forEach(item=>{
|
|
|
|
- let ifm=document.getElementById(item.domId)
|
|
|
|
- ifm.onload=(e)=>{
|
|
|
|
- this.importChartNum--
|
|
|
|
- }
|
|
|
|
- })
|
|
|
|
- },
|
|
|
|
-
|
|
|
|
- // 获取沙盘图列表 分页
|
|
|
|
- getSandTable(){
|
|
|
|
- this.sandTableLoading = true
|
|
|
|
- this.isRequesting = true
|
|
|
|
- sandInterface.sandlistByQuote(this.sandTabelQuery).then(({Data:{List,Paging}})=>{
|
|
|
|
- if(this.sandTabelQuery.CurrentIndex>1){
|
|
|
|
- this.sandTableList = [...this.sandTableList,...List]
|
|
|
|
- }else{
|
|
|
|
- this.sandTableList = List
|
|
|
|
- this.sandTableTotal = Paging.Totals
|
|
|
|
- if(this.sandTableList.length ==0){
|
|
|
|
- this.loadedText = this.$t('Table.prompt_slogan')
|
|
|
|
- }else if(this.sandTableList.length>=this.sandTableTotal){
|
|
|
|
- this.loadedText = this.$t('ReportManage.smart_msg.all_loaded_have')
|
|
|
|
- }else{
|
|
|
|
-
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- })
|
|
|
|
- .finally(()=>{
|
|
|
|
- this.sandTableLoading = false
|
|
|
|
- this.isRequesting = false
|
|
|
|
- })
|
|
|
|
- },
|
|
|
|
- // 沙盘列表滚动事件,触底加载下一页数据 防抖
|
|
|
|
- sandTableHandleScroll:_.debounce(function (e) {
|
|
|
|
- if(this.sandTableList.length>=this.sandTableTotal){
|
|
|
|
- this.loadedText = this.$t('ReportManage.smart_msg.all_loaded_have')
|
|
|
|
- return
|
|
|
|
- }
|
|
|
|
- if(e.target.scrollHeight-e.target.clientHeight-e.target.scrollTop<10 && !this.isRequesting){
|
|
|
|
- this.sandTabelQuery.CurrentIndex++
|
|
|
|
- this.getSandTable()
|
|
|
|
- }
|
|
|
|
- },100),
|
|
|
|
- getclassifylist() {
|
|
|
|
- //获取分类列表
|
|
|
|
- let params = { Enabled:1, KeyWord: '',HideDayWeek:1,/*不显示晨报/周报*/ };
|
|
|
|
- classifylist(params).then((res) => {
|
|
|
|
- if (res.Ret == 200 && Array.isArray(res.Data.List)) {
|
|
|
|
- this.optionsArr = [];
|
|
|
|
- res.Data.List.forEach((item, index) => {
|
|
|
|
- let newitem = {
|
|
|
|
- label: item.ClassifyName,
|
|
|
|
- value: JSON.stringify({
|
|
|
|
- l: item.ClassifyName,
|
|
|
|
- v: parseInt(item.Id),
|
|
|
|
- HasTeleconference:item.HasTeleconference
|
|
|
|
- }),
|
|
|
|
- };
|
|
|
|
- if (item.Child && item.Child.length > 0) {
|
|
|
|
- let childnode = [];
|
|
|
|
- item.Child.forEach((itemchild, i) => {
|
|
|
|
- childnode.push({
|
|
|
|
- label: itemchild.ClassifyName,
|
|
|
|
- value: JSON.stringify({
|
|
|
|
- l: itemchild.ClassifyName,
|
|
|
|
- v: parseInt(itemchild.Id),
|
|
|
|
- HasTeleconference:itemchild.HasTeleconference
|
|
|
|
- }),
|
|
|
|
- });
|
|
|
|
- });
|
|
|
|
- newitem.children = childnode;
|
|
|
|
- } else {
|
|
|
|
- newitem.children = undefined;
|
|
|
|
- newitem.disabled=true
|
|
|
|
- }
|
|
|
|
- this.optionsArr.push(newitem);
|
|
|
|
- });
|
|
|
|
- console.log(this.optionsArr);
|
|
|
|
- }
|
|
|
|
- });
|
|
|
|
- },
|
|
|
|
- getSystemUserInfo(){
|
|
|
|
- departInterence.systemUserInfo().then(res=>{
|
|
|
|
- if(res.Ret===200){
|
|
|
|
- const systemUserInfo=res.Data
|
|
|
|
- // 设置水印文案
|
|
|
|
- let waterMarkString=''
|
|
|
|
- if(systemUserInfo){
|
|
|
|
- waterMarkString=`${systemUserInfo.RealName}${systemUserInfo.Mobile?systemUserInfo.Mobile:systemUserInfo.Email}`
|
|
|
|
- waterMarkString=encodeURIComponent(waterMarkString)
|
|
|
|
- this.waterMarkStr=Base64.encode(waterMarkString)
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- })
|
|
|
|
- },
|
|
|
|
- },
|
|
|
|
- components: {importMyChart,importSemantics},
|
|
|
|
- watch: {
|
|
|
|
- 'aeForm.add_type'(to, from) {
|
|
|
|
- if (from == 2 && to == 1) {
|
|
|
|
- this.aeForm = {
|
|
|
|
- add_type: 1,
|
|
|
|
- classify_name: 1,
|
|
|
|
- classifynameArr: [],
|
|
|
|
- title: '',
|
|
|
|
- abstract: '',
|
|
|
|
- author: ['投研团队'],
|
|
|
|
- frequency: this.$t('ReportManage.smart_daily'),
|
|
|
|
- create_time: http.dateFormatter(new Date(), false),
|
|
|
|
- content: '',
|
|
|
|
- };
|
|
|
|
- }
|
|
|
|
- },
|
|
|
|
- 'sandTabelQuery.Keyword'(newval,oldval){
|
|
|
|
- this.$refs.sandTable.scrollTop=0
|
|
|
|
- this.sandTabelQuery.CurrentIndex = 1
|
|
|
|
- this.getSandTable()
|
|
|
|
- }
|
|
|
|
- },
|
|
|
|
-};
|
|
|
|
-</script>
|
|
|
|
-
|
|
|
|
-<style scoped lang="scss">
|
|
|
|
-#addreport {
|
|
|
|
- display: flex;
|
|
|
|
- overflow: hidden;
|
|
|
|
- #leftfroala {
|
|
|
|
- flex: 1;
|
|
|
|
- overflow: hidden;
|
|
|
|
- &.full{
|
|
|
|
- max-width: calc(100vw - 200px - 60px);
|
|
|
|
- }
|
|
|
|
- &.block{
|
|
|
|
- max-width: calc(100vw - 200px - 60px - 500px);
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- #rightitems {
|
|
|
|
- width: 500px;
|
|
|
|
- flex: 500px 0 0;
|
|
|
|
- overflow: hidden;
|
|
|
|
- position: fixed;
|
|
|
|
- right: 30px;
|
|
|
|
- #tabs {
|
|
|
|
- padding: 0px 20px;
|
|
|
|
- box-sizing: border-box;
|
|
|
|
- margin-bottom: 15px;
|
|
|
|
- overflow: hidden;
|
|
|
|
- > p {
|
|
|
|
- /* display: inline-block; */
|
|
|
|
- float: left;
|
|
|
|
- // width: 50%;
|
|
|
|
- width: 25%;
|
|
|
|
- font-size: 18px;
|
|
|
|
- cursor: pointer;
|
|
|
|
- color: #1f2e4d;
|
|
|
|
- padding: 10px 0;
|
|
|
|
- text-align: center;
|
|
|
|
- }
|
|
|
|
- > p.active {
|
|
|
|
- border-bottom: 2px solid #3464e0;
|
|
|
|
- color: #3464e0;
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- .liststy {
|
|
|
|
- width: 100%;
|
|
|
|
- margin: 20px 0;
|
|
|
|
- padding: 20px;
|
|
|
|
- box-sizing: border-box;
|
|
|
|
- border: 1px solid #eaeaea;
|
|
|
|
- border-radius: 10px;
|
|
|
|
- position: relative;
|
|
|
|
- overflow: hidden;
|
|
|
|
- > p {
|
|
|
|
- text-align: center;
|
|
|
|
- font-size: 16px;
|
|
|
|
- margin-bottom: 10px;
|
|
|
|
- }
|
|
|
|
- > img {
|
|
|
|
- width: 100%;
|
|
|
|
- height: auto;
|
|
|
|
- }
|
|
|
|
- // .source-identification{
|
|
|
|
- // text-align: left;
|
|
|
|
- // }
|
|
|
|
- }
|
|
|
|
- .loaded-text{
|
|
|
|
- height: 20px;
|
|
|
|
- text-align: center;
|
|
|
|
- color: #666;
|
|
|
|
- font-size: 14px;
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- .slide-icon {
|
|
|
|
- cursor: pointer;
|
|
|
|
- position: fixed;
|
|
|
|
- top: 50%;
|
|
|
|
- transform: translateY(-50%);
|
|
|
|
- z-index: 99;
|
|
|
|
- &:hover {
|
|
|
|
- background-color: #e0e0e0;
|
|
|
|
- }
|
|
|
|
- &.slide-left {
|
|
|
|
- right: 30px;
|
|
|
|
- }
|
|
|
|
- &.slide-right {
|
|
|
|
- right: 500px;
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-</style>
|
|
|
|
-<style lang="scss">
|
|
|
|
-#addreport {
|
|
|
|
- .el-tabs__nav-wrap::after {
|
|
|
|
- height: 0;
|
|
|
|
- }
|
|
|
|
- .el-tabs__item { font-size: 16px; }
|
|
|
|
-}
|
|
|
|
-</style>
|
|
|