123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995 |
- <template>
- <fullscreen :fullscreen.sync="fullscreen" class="container">
- <div class="container-box">
- <toolList @iconCli="iconCli" :tooltit="tooltit"></toolList>
- <div style="overflow: hidden">
- <el-button
- style="float: right; margin-top: 10px"
- type="primary"
- @click="dialogCheck(3)"
- >添加</el-button
- >
- <el-button
- style="float: right; margin-top: 10px; margin-right: 20px"
- type="primary"
- @click="getStanding"
- >台账</el-button
- >
- </div>
- <div class="tabbox">
- <el-table
- height="calc(100% - 40px)"
- class="com-table"
- ref="multipleTable"
- :data="tableData"
- tooltip-effect="dark"
- size="small"
- border
- style="width: 100%"
- v-loading="loading"
- >
- <el-table-column prop="demandName" label="需求名称">
- </el-table-column>
- <el-table-column prop="createName" label="申请姓名">
- </el-table-column>
- <el-table-column prop="createTimeStr" label="申请时间">
- </el-table-column>
- <el-table-column prop="stsDesc" label="状态">
- <template slot-scope="scope">
- {{
- scope.row.taskName == "信息补填" && scope.row.stsDesc == "待办"
- ? "未办结"
- : scope.row.stsDesc
- }}
- </template>
- </el-table-column>
- <el-table-column label="操作" width="120px" align="center">
- <template slot-scope="scope">
- <el-button
- size="mini"
- type="primary"
- @click="dialogCheck(1, scope.row)"
- >查看</el-button
- >
- <el-button
- size="mini"
- type="danger"
- v-if="scope.row.sts !== '4'"
- @click="dialogCheck(2, scope.row)"
- >处理</el-button
- >
- <!-- <el-button size="mini" type="danger" @click="delLine(scope.row)">删除</el-button> -->
- </template>
- </el-table-column>
- </el-table>
- <el-pagination
- class="pageBox"
- @current-change="currchange"
- layout="prev, pager, next"
- background
- :total="total"
- >
- </el-pagination>
- </div>
- </div>
- <el-dialog
- :title="titname"
- :visible.sync="dialogStatus"
- width="50%"
- :destroy-on-close="true"
- :modal-append-to-body="false"
- :close-on-click-modal="false"
- :before-close="closedia"
- :fullscreen="true"
- :key="number"
- >
- <div v-loading="loadinged" class="simple-dialog">
- <el-form :model="infolist" ref="infolist" :rules="rules">
- <div class="info-line">
- <el-form-item prop="demandName">
- <span>需求名称</span>
- <el-input
- v-model="infolist.demandName"
- placeholder="需求名称"
- :disabled="disableStatus"
- >
- </el-input>
- </el-form-item>
- <el-form-item>
- <span>需求编号</span>
- <el-input
- v-model="infolist.demandNo"
- placeholder="需求编号"
- disabled
- >
- </el-input>
- </el-form-item>
- <!-- <el-form-item prop="terminal">
- <span>申请流程</span>
- <el-select clearable v-model="terminal" placeholder="申请流程" :disabled="disableStatus">
- <el-option v-for="items in options" :key="items.procId" :label="items.procName"
- :value="items.procId">
- </el-option>
- </el-select>
- </el-form-item> -->
- <el-form-item>
- <span>紧急程度</span>
- <el-select
- clearable
- v-model="infolist.urgDegree"
- placeholder="紧急程度"
- :disabled="disableStatus"
- >
- <el-option
- v-for="items in urgDegreeopt"
- :key="items.id"
- :label="items.name"
- :value="items.name"
- >
- </el-option>
- </el-select>
- </el-form-item>
- <el-form-item>
- <span>业务主题</span>
- <el-input
- v-model="infolist.busiSubject"
- placeholder="业务主题"
- :disabled="disableStatus"
- >
- </el-input>
- </el-form-item>
- <el-form-item>
- <span>需求类别</span>
- <el-select
- clearable
- v-model="infolist.demandTypeCode"
- placeholder="需求类别"
- :disabled="disableStatus"
- >
- <el-option
- v-for="items in demandTypeopt"
- :key="items.dataCode"
- :label="items.dataName"
- :value="items.dataCode"
- >
- </el-option>
- </el-select>
- </el-form-item>
- <el-form-item>
- <span>承载渠道</span>
- <!-- //multiple -->
- <el-select
- clearable
- multiple
- v-model="infolist.carryChannelCode"
- placeholder="承载渠道"
- :disabled="disableStatus"
- >
- <el-option
- v-for="items in carryChannelopt"
- :key="items.dataCode"
- :label="items.dataName"
- :value="items.dataCode"
- >
- </el-option>
- </el-select>
- </el-form-item>
- <el-form-item>
- <span>加载周期</span>
- <el-date-picker
- :disabled="disableStatus"
- v-model="busiTime"
- type="daterange"
- placeholder="加载周期"
- style="display: inline-flex; width: calc(100% - 120px)"
- >
- </el-date-picker>
- </el-form-item>
- </div>
- <el-form-item class="info-line online">
- <span>需求背景</span>
- <el-input
- v-model="infolist.demandBackground"
- placeholder="需求背景"
- type="textarea"
- :autosize="{ minRows: 3, maxRows: 10 }"
- :disabled="disableStatus"
- >
- </el-input>
- </el-form-item>
- <el-form-item class="info-line online">
- <span>需求描述</span>
- <el-input
- v-model="infolist.demandDesc"
- placeholder="需求描述"
- type="textarea"
- :autosize="{ minRows: 3, maxRows: 10 }"
- :disabled="disableStatus"
- >
- </el-input>
- </el-form-item>
- <!-- 附件展示 -->
- <div
- style="padding: 0 20px 0 120px; margin-bottom: 20px"
- v-if="disableStatus"
- >
- <uploadDown
- :datalist="datalist"
- :dialogStatus="uploadstatus"
- ></uploadDown>
- </div>
- <!-- 附件上传 -->
- <div v-if="!disableStatus" class="info-line online">
- <span style="width: 80px">附件</span>
- <el-upload
- class="info-upload"
- :limit="3"
- action=""
- :on-preview="handlePreview"
- :on-remove="handleRemove"
- :http-request="handleSuccess"
- :file-list="file"
- drag
- multiple
- >
- <div class="upload">
- <i class="el-icon-upload"></i>
- <p class="el-upload__text">
- 将文件拖到此处,或<em>点击上传</em>
- </p>
- </div>
- </el-upload>
- </div>
- <!-- 信息补填的情况 -->
- <el-upload
- v-if="vision == '信息补填'"
- style="float: right; margin-bottom: 20px"
- action=""
- :http-request="handleMessage"
- :show-file-list="false"
- ><el-button
- size="small"
- type="primary"
- :disabled="tableSatus === '4'"
- >导入</el-button
- ></el-upload
- >
- <div
- style="margin: 20px 0; padding: 0 20px"
- v-if="vision == '信息补填'"
- >
- <el-table
- class="com-table"
- ref="multipleTable"
- :data="infodatas"
- tooltip-effect="dark"
- size="small"
- border
- style="width: 100%"
- >
- <el-table-column prop="infoName" label="需求承接支撑方">
- <template slot-scope="scope">
- <el-input
- v-model="scope.row.factoryName"
- :disabled="tableSatus === '4'"
- ></el-input>
- </template>
- </el-table-column>
- <el-table-column prop="infoName" label="涉及发生工作量">
- <template slot-scope="scope">
- <el-input
- v-model="scope.row.workLoad"
- :disabled="tableSatus === '4'"
- ></el-input>
- </template>
- </el-table-column>
- <el-table-column
- label="操作"
- width="120px"
- align="center"
- v-if="titname == '审批'"
- >
- <template slot-scope="scope">
- <el-button
- size="mini"
- type="primary"
- :disabled="tableSatus === '4'"
- @click="choline(1, scope)"
- >添加</el-button
- >
- <el-button
- size="mini"
- type="danger"
- :disabled="tableSatus === '4'"
- @click="choline(2, scope)"
- >删除</el-button
- >
- </template>
- </el-table-column>
- </el-table>
- </div>
- <el-form-item class="info-line online" v-if="visionsts == '2'">
- <span>审批说明</span>
- <el-input
- v-model="remark"
- placeholder="审批说明"
- type="textarea"
- :rows="3"
- :disabled="titname == '查看'"
- >
- </el-input>
- </el-form-item>
- <div
- style="margin: 20px 0px; padding: 0 20px"
- v-if="titname !== '添加'"
- >
- <el-table
- class="com-table"
- :data="rovaList"
- tooltip-effect="dark"
- size="small"
- border
- style="width: 100%"
- >
- <el-table-column prop="logNo" label="编号"> </el-table-column>
- <el-table-column prop="stepName" label="环节"> </el-table-column>
- <el-table-column prop="processName" label="处理人">
- </el-table-column>
- <el-table-column prop="processWorkNo" label="处理人工号">
- </el-table-column>
- <el-table-column prop="updateTimeStr" label="处理时间">
- </el-table-column>
- <el-table-column prop="remark" label="备注"> </el-table-column>
- </el-table>
- </div>
- </el-form>
- <div slot="footer" class="info-footer">
- <div v-if="titname === '添加' || step === '0'">
- <el-button type="primary" @click="handleApprove('送部门人员审核')"
- >送部门人员审核</el-button
- >
- <el-button type="primary" @click="handleApprove('送领导审核')"
- >送领导审核</el-button
- >
- <el-button @click="handleApprove('取消')">取消</el-button>
- </div>
- <div v-else>
- <el-button
- v-for="(item, index) in buttonList"
- :key="index"
- type="primary"
- @click="handleApprove(item)"
- >{{ item }}</el-button
- >
- <el-button @click="handleApprove('取消')">取消</el-button>
- </div>
- </div>
- </div>
- </el-dialog>
- <el-dialog
- title="选择审批领导"
- :visible.sync="checkLaeder"
- width="500px"
- :destroy-on-close="true"
- :modal-append-to-body="false"
- :close-on-click-modal="false"
- >
- <div>
- <el-form>
- <el-form-item
- label="审批领导"
- :rules="{
- required: true,
- message: '请选择审批领导',
- trigger: 'change',
- }"
- >
- <el-select v-model="leader">
- <el-option
- v-for="(item, index) in leaderList"
- :key="index"
- :label="item.label"
- :value="item.value"
- >
- </el-option>
- </el-select> </el-form-item
- ></el-form>
- </div>
- <div slot="footer">
- <el-button type="primary" size="small" @click="formSubmit(2)"
- >确 定</el-button
- >
- <el-button @click="checkLaeder = false" size="small">取 消</el-button>
- </div>
- </el-dialog>
- <el-dialog
- title="选择审批人"
- :visible.sync="checkexa"
- width="50%"
- :destroy-on-close="true"
- :modal-append-to-body="false"
- :close-on-click-modal="false"
- >
- <div>
- <el-form :model="infolist" ref="infolist" :rules="rules">
- <el-form-item prop="visiblec" class="info-line online">
- <span>审批人员</span>
- <deptTreeOnly
- class="tree"
- @treeCheck="treeCheckonly"
- :defaultList="defaultList"
- :type="depttype"
- :closeList="closeList"
- :reset-list="treeList"
- :only="only"
- ></deptTreeOnly>
- <div class="tree treeUser">
- <p v-for="(item, index) in treeList" :key="index">
- {{ item.label }}
- <i
- v-if="item.label"
- @click="deletes(item)"
- class="el-icon-error"
- ></i>
- </p>
- </div>
- </el-form-item>
- </el-form>
- <div slot="footer" style="text-align: right; padding-bottom: 20px">
- <el-button type="primary" @click="formSubmit(1)">确 定</el-button>
- <el-button @click="checkexa = false">取 消</el-button>
- </div>
- </div>
- </el-dialog>
- <myMessage
- :messTit="messTit"
- @closeMessage="closeMessage"
- :centerDialogVisible="centerDialogVisible"
- v-if="centerDialogVisible"
- ></myMessage>
- </fullscreen>
- </template>
- <script>
- import myMessage from "../../../components/myMessage.vue";
- import toolList from "../../../components/toolList";
- import myUpload from "../../../components/upload";
- import uploadDown from "../../../components/uploadDown.vue";
- import deptTreeOnly from "../performance/components/deptTreeOnly.vue";
- const Excel = require("exceljs");
- export default {
- components: {
- // mySearch,
- myMessage,
- toolList,
- myUpload,
- uploadDown,
- deptTreeOnly,
- },
- data() {
- return {
- rules: {
- demandName: [
- {
- required: true,
- trigger: "blur",
- message: "不能为空",
- },
- ],
- },
- // 操作名称
- operateName: "",
- woNo: "",
- fileDeletId: [],
- // 当前进行到的步骤计数
- step: "",
- tooltit: "线上渠道业务需求",
- fullscreen: false,
- total: 0,
- // pageSize: 1,
- tableData: [],
- disableStatus: true,
- // 查看 审批 添加 弹出层 状态
- page: 1,
- pageSize: 10,
- file: [], // 附件数组
- titname: "",
- dialogStatus: false,
- // 查看是否办结
- tableSatus: null,
- number: 0,
- // 按钮标识
- type: "",
- // 联系人
- checkLaeder: false,
- checkexa: false,
- // 审核人组件只可选一人
- leader: "",
- leaderList: [
- {
- label: "王其侠(二级经理正职)",
- value: "wangqixia",
- },
- {
- label: "张志伟(二级经理副职)",
- value: "zhangzhiwei",
- },
- {
- label: "金鑫(二级经理副职)",
- value: "jinxin",
- },
- {
- label: "于洋(二级经理副职)",
- value: "yuyang01",
- },
- ],
- // 用来控制多选里的单选
- only: false,
- // 信息回显
- infolist: {},
- // 用户信息
- userInfo: {},
- buttonList: [],
- params: {},
- centerDialogVisible: false,
- messTit: "",
- delid: "",
- loading: false,
- loadinged: false,
- fileInfo: {
- limit: 5,
- url: "/bpm/api/upload",
- fileList: [],
- },
- rovaList: [],
- vision: "",
- datalist: {
- url: "/bpm/api/download",
- type: 1,
- },
- uploadstatus: false,
- mydisable: 1,
- opname: "",
- opno: "",
- attList: [],
- options: [],
- terminal: "729289304205336576",
- // terminal: '722743473704595456',//722743473704595456省722748981018685440
- remark: "",
- visionsts: "1",
- visionchonly: false,
- ifopt: [
- {
- id: 1,
- name: "是",
- },
- {
- id: 0,
- name: "否",
- },
- ],
- infodatas: [],
- busiTime: [],
- urgDegreeopt: [
- {
- id: 1,
- name: "正常",
- },
- {
- id: 2,
- name: "紧急",
- },
- {
- id: 3,
- name: "非常紧急",
- },
- ],
- demandTypeopt: [],
- carryChannelopt: [],
- treeList: [],
- treeListonly: {},
- defaultList: [],
- closeList: false,
- depttype: 0,
- fileInfoin: {
- type: "btn",
- typename: "导入",
- btntype: "primary",
- limit: 1,
- url: "/market/cChannelDemand/demandCarryImport",
- fileList: [],
- },
- tempSave: false,
- };
- },
- watch: {
- "datalist.attList"() {
- this.number++;
- },
- // tempSave(value) {
- // if (value) {
- // // 监听编辑状态,每20秒请求一次,注意函数不加()
- // this.timer = window.setInterval(this.temp, 20000);
- // } else {
- // // 停止监听
- // clearInterval(this.timer);
- // }
- // },
- },
- methods: {
- // 新的处理方法
- handlePreview(file) {
- console.log(file, "Preview");
- },
- handleRemove(file) {
- if (file.id) {
- this.fileDeletId.push(file.id);
- }
- this.file = this.file.filter((el) => el.uid !== file.uid);
- },
- handleSuccess({ file }) {
- this.file.push(file);
- },
- handleMessage({ file }) {
- const workbook = new Excel.Workbook();
- // workbook.xlsx.readFile(file.path) // use path
- const Array = [];
- workbook.xlsx.load(file).then(async () => {
- const worksheet = await workbook.getWorksheet(1);
- worksheet.eachRow(({ values }) => {
- let obj = {
- factoryName: values[1],
- workLoad: values[2],
- };
- Array.push(obj);
- });
- if (
- this.infodatas.length === 1 &&
- !this.infodatas[0].factoryName &&
- !this.infodatas[0].workLoad
- ) {
- this.infodatas = Array;
- } else {
- this.infodatas.push(...Array);
- }
- });
- },
- handleApprove(type) {
- if (type === "取消") {
- // this.dialogStatus = false;
- // this.disableStatus = false;
- // this.only = false;
- // this.number++;
- // this.infolist = {};
- this.closedia();
- return;
- }
- this.$refs.infolist.validate((val) => {
- if (val) {
- switch (type) {
- case "送部门人员审核":
- this.operateName = "送部门人员审核";
- this.checkexa = true;
- this.type = "0";
- console.log("送部门人员审核");
- break;
- case "送领导审核":
- this.operateName = "送领导审核";
- this.type = "1";
- this.checkLaeder = true;
- console.log("送领导审核");
- break;
- case "送起草人编号发送":
- this.operateName = "送起草人编号";
- this.handleSendNo();
- break;
- case "确认编号":
- this.operateName = "确认编号";
- this.handleComfirmNo();
- break;
- case "打回":
- this.operateName = "打回";
- this.handleBackRecord();
- break;
- case "确认需求":
- this.checkexa = true;
- this.type = "0";
- this.operateName = "确认需求";
- break;
- case "送项目经理会签":
- this.checkexa = true;
- this.type = "0";
- this.operateName = "送项目经理会签";
- break;
- case "送电商接口人阅办":
- this.operateName = "送电商接口人阅办";
- this.handleDeliverReadOfficeOrOtherDo("1");
- break;
- case "送其他人办理":
- this.checkexa = true;
- this.only = true;
- this.operateName = "送其他人办理";
- break;
- case "确认上线":
- this.operateName = "确认上线";
- this.handleConfirmOnline("1");
- break;
- case "已办结":
- this.operateName = "已办结";
- this.handleConfirmOnline("2");
- break;
- case "保存":
- this.operateName = "保存";
- this.handleConfirmOnline("3");
- break;
- }
- }
- });
- },
- // 确认上线/已办结
- handleConfirmOnline(type) {
- let flag = 1;
- const factoryName = [];
- const workLoad = [];
- this.infodatas.forEach((el) => {
- // 判断条件
- if (el.factoryName && el.workLoad) {
- flag = flag * 1;
- factoryName.push(el.factoryName);
- workLoad.push(el.workLoad);
- } else {
- flag = flag * 0;
- }
- });
- if (flag) {
- let reqdata = {
- operateName: this.operateName,
- type,
- support: factoryName,
- workload: workLoad,
- woNo: this.woNo + "",
- };
- this.$http({
- url: "/market/mkOnlineChannel/confirmOnline",
- method: "post",
- headers: {
- "Content-Type": "application/json",
- },
- data: reqdata,
- }).then(({ data: { desc } }) => {
- console.log(desc);
- if (desc === "操作成功") {
- this.$message.success("操作成功");
- this.dialogStatus = false;
- this.handleInit();
- this.closedia();
- } else {
- this.$message.error("操作失败");
- }
- });
- } else {
- this.$message.error("请输入必要的信息");
- }
- },
- // 送电商接口人阅办或送其他人办理
- handleDeliverReadOfficeOrOtherDo(type) {
- console.log(this.operateName, type);
- let receiveId = [];
- let receiveName = [];
- // console.log(this.treeList);
- this.treeList.forEach((item) => {
- receiveId.push(item.loginNoStr);
- receiveName.push(item.label);
- });
- let reqdata = {
- operateName: this.operateName,
- type,
- reviewOpinion: this.remark,
- woId: this.woNo + "",
- };
- if (type === "2") {
- reqdata = {
- ...reqdata,
- receiveId: receiveId.join(","),
- receiveName: receiveName.join(","),
- };
- }
- console.log(reqdata);
- this.$http({
- url: "/market/mkOnlineChannel/deliverReadOfficeOrOtherDo",
- method: "post",
- headers: {
- "Content-Type": "application/json",
- },
- data: reqdata,
- }).then(({ data: { desc } }) => {
- console.log(desc);
- if (desc === "操作成功") {
- this.$message.success("操作成功");
- this.checkexa = false;
- this.dialogStatus = false;
- this.handleInit();
- this.closedia();
- } else {
- this.$message.error("操作失败");
- }
- });
- },
- // 电商接口人阅办---送项目经理会签
- handleCountersigned() {
- let receiveId = [];
- let receiveName = [];
- console.log(this.treeList);
- this.treeList.forEach((item) => {
- receiveId.push(item.loginNoStr);
- receiveName.push(item.label);
- });
- let reqdata = {
- operateName: this.operateName,
- receiveId: receiveId.join(","),
- receiveName: receiveName.join(","),
- reviewOpinion: this.remark,
- woNo: this.woNo + "",
- };
- console.log(reqdata);
- this.$http({
- url: "/market/mkOnlineChannel/countersigned",
- method: "post",
- headers: {
- "Content-Type": "application/json",
- },
- data: reqdata,
- }).then(({ data: { desc } }) => {
- console.log(desc);
- if (desc === "操作成功") {
- this.$message.success("操作成功");
- this.checkexa = false;
- this.dialogStatus = false;
- this.handleInit();
- this.closedia();
- } else {
- this.$message.error("操作失败");
- }
- });
- },
- // 确认需求
- handleNeedyComfirm() {
- let receiveId = [];
- let receiveName = [];
- // console.log(this.treeList);
- this.treeList.forEach((item) => {
- receiveId.push(item.loginNoStr);
- receiveName.push(item.label);
- });
- let reqdata = {
- operateName: this.operateName,
- receiveId: receiveId.join(","),
- receiveName: receiveName.join(","),
- reviewOpinion: this.remark,
- woNo: this.woNo + "",
- };
- console.log(reqdata);
- this.$http({
- url: "/market/mkOnlineChannel/confirmDemand",
- method: "post",
- headers: {
- "Content-Type": "application/json",
- },
- data: reqdata,
- }).then(({ data: { desc } }) => {
- console.log(desc);
- if (desc === "操作成功") {
- this.$message.success("操作成功");
- this.checkexa = false;
- this.dialogStatus = false;
- this.handleInit();
- this.closedia();
- } else {
- this.$message.error("操作失败");
- }
- });
- },
- // 打回方法
- handleBackRecord() {
- this.$http({
- url: "/market/mkOnlineChannel/backRecord",
- method: "get",
- headers: {
- "Content-Type": "application/json",
- },
- params: {
- woNo: this.woNo,
- remark: [this.operateName, this.remark]
- .filter((el) => el !== "")
- .join(","),
- },
- }).then(({ data: { desc } }) => {
- console.log(desc);
- if (desc === "操作成功") {
- this.$message.success("操作成功");
- this.dialogStatus = false;
- this.handleInit();
- this.closedia();
- } else {
- this.$message.error("操作失败");
- }
- });
- },
- // 表单提交
- formSubmit(type) {
- if (type === 1) {
- if (!this.treeList.length) {
- this.$message.error("请选择审核人员");
- return;
- }
- } else {
- if (!this.leader) {
- this.$message.error("请选择审核领导");
- return;
- }
- }
- let request = 0;
- let formData = new FormData();
- let origin_params = {};
- if (this.infolist.woNo) {
- origin_params = {
- // 需求编号
- woNo: this.infolist.woNo,
- createId: this.infolist.createId,
- createName: this.infolist.createName,
- id: this.infolist.id,
- delFileId: this.fileDeletId.join(","),
- };
- }
- let params = {
- ...origin_params,
- // 需求名称
- demandName: this.infolist.demandName,
- // 紧急程度
- urgDegree: this.infolist.urgDegree,
- // 业务主题
- busiSubject: this.infolist.busiSubject,
- // 需求类别
- demandTypeCode: this.infolist.demandTypeCode,
- //承载渠道
- carryChannelCode: this.infolist.carryChannelCode.join(","),
- // 加载周期 起止
- busiStartTime: this.busiTime[0]
- ? this.$formatDate(this.busiTime[0], "YYYY-MM-DD")
- : "",
- busiEndTime: this.busiTime[1]
- ? this.$formatDate(this.busiTime[1], "YYYY-MM-DD")
- : "",
- // 需求背景
- demandBackground: this.infolist.demandBackground,
- // 需求描述
- demandDesc: this.infolist.demandDesc,
- // 审批说明
- remark: [this.operateName, this.remark]
- .filter((el) => el !== "")
- .join(","),
- // 审核人员
- loginNameList: this.treeList.length
- ? this.treeList.map((el) => {
- return el.label;
- })
- : [this.leader],
- loginNoList: this.treeList.length
- ? this.treeList.map((el) => {
- return el.loginNoStr;
- })
- : [this.leader],
- type: this.type,
- // fileList: this.file,
- };
- // 处理其他参数
- for (let key in params) {
- formData.append(key, params[key]);
- }
- // 这是处理文件的参数
- if (this.file.length) {
- this.file.forEach((el, index) => {
- if (el.constructor.name === "File") {
- formData.append(`file${index + 1}`, el);
- }
- });
- }
- if (this.operateName === "确认需求") {
- this.handleNeedyComfirm();
- return;
- }
- if (this.operateName === "送项目经理会签") {
- this.handleCountersigned();
- return;
- }
- if (this.operateName === "送其他人办理") {
- this.handleDeliverReadOfficeOrOtherDo("2");
- return;
- }
- request = 1;
- if (request) {
- this.$http({
- url: "/market/mkOnlineChannel/saveOrUpdate",
- method: "post",
- headers: {
- "Content-Type": "multipart/form-data",
- },
- data: formData,
- }).then(({ data }) => {
- if (data && data.desc === "操作成功") {
- this.$message({
- type: "success",
- message: data.desc,
- });
- this.closedia();
- this.handleInit();
- }
- });
- }
- },
- // 送起草人编号发送
- handleSendNo() {
- this.$http({
- url: "/market/mkOnlineChannel/createDemandNo",
- method: "get",
- headers: {
- "Content-Type": "application/json",
- },
- params: {
- woNo: this.woNo,
- remark: [this.operateName, this.remark]
- .filter((el) => el !== "")
- .join(","),
- },
- }).then(({ data: { desc } }) => {
- console.log(desc);
- if (desc === "操作成功") {
- this.$message.success("操作成功");
- this.handleInit();
- this.closedia();
- } else {
- this.$message.error("操作失败");
- }
- });
- },
- // 确认编号
- handleComfirmNo() {
- this.$http({
- url: "/market/mkOnlineChannel/confirmNumber",
- method: "post",
- headers: {
- "Content-Type": "application/json",
- },
- data: {
- woNo: this.woNo + "",
- remark: [this.operateName, this.remark]
- .filter((el) => el !== "")
- .join(","),
- },
- }).then(({ data: { desc } }) => {
- console.log(desc);
- if (desc === "操作成功") {
- this.$message.success("操作成功");
- this.handleInit();
- this.closedia();
- } else {
- this.$message.error("操作失败");
- }
- });
- },
- // 初始化列表接口
- handleInit() {
- this.$http({
- url: "/market/mkOnlineChannel/queryPage",
- method: "post",
- headers: {
- "Content-Type": "application/json",
- },
- data: {
- page: this.page,
- pageSize: this.pageSize,
- },
- }).then(
- ({
- data: {
- body: { data, count },
- },
- }) => {
- this.total = count;
- this.tableData = data;
- }
- );
- },
- // 查看详情接口封装
- queryDetails(id) {
- this.$http({
- url: "/market/mkOnlineChannel/getMkOnlineChannelById",
- method: "post",
- headers: {
- "Content-Type": "application/json",
- },
- data: id,
- }).then(
- ({
- data: {
- body: { button, mkOnlineChannel },
- },
- }) => {
- this.infolist = {
- ...mkOnlineChannel,
- carryChannelCode: mkOnlineChannel.carryChannelCode.split(","),
- };
- this.busiTime = [
- mkOnlineChannel.busiStartTime,
- mkOnlineChannel.busiEndTime,
- ];
- this.rovaList = mkOnlineChannel.logList;
- this.datalist = {
- ...this.datalist,
- attList: mkOnlineChannel.attList,
- };
- this.file = [
- ...mkOnlineChannel.attList.map((el) => ({
- ...el,
- name: el.fileName,
- })),
- ];
- //表单编号
- this.woNo = mkOnlineChannel.woNo;
- // 步骤
- this.step = mkOnlineChannel.step;
- // 最后一步是否办结
- this.tableSatus = mkOnlineChannel.sts;
- this.dialogStatus = true;
- if (this.titname === "添加") {
- // 审批说明
- this.visionsts = "";
- this.disableStatus = false;
- } else {
- if (this.titname === "查看") {
- this.buttonList = [];
- this.disableStatus = true;
- this.visionsts = "";
- if (this.step === "7") {
- this.vision = "信息补填";
- // 查看也不能操作数据
- this.tableSatus = "4";
- this.visionsts = "";
- this.infodatas = mkOnlineChannel.workloadAndsupport.length
- ? mkOnlineChannel.workloadAndsupport.map((el) => ({
- factoryName: el.support,
- workLoad: el.workload,
- }))
- : [
- {
- factoryName: "",
- workLoad: "",
- },
- ];
- }
- } else {
- this.buttonList = button;
- // 这里就是审批
- if (this.step === "0") {
- this.disableStatus = false;
- this.visionsts = "";
- return;
- }
- this.disableStatus = true;
- this.dialogStatus = true;
- if (this.step === "7") {
- this.vision = "信息补填";
- this.visionsts = "";
- this.infodatas = mkOnlineChannel.workloadAndsupport.length
- ? mkOnlineChannel.workloadAndsupport.map((el) => ({
- factoryName: el.support,
- workLoad: el.workload,
- }))
- : [
- {
- factoryName: "",
- workLoad: "",
- },
- ];
- } else {
- this.visionsts = "2";
- }
- }
- }
- }
- );
- },
- // 老方法
- temp() {
- if (JSON.stringify(this.infolist) == "{}") {
- return;
- }
- let params = {};
- params.infolist = this.infolist;
- params.fileList = [];
- params.attList = [];
- this.attList.forEach((item) => {
- let file = {
- id: item.fileCode,
- fileCode: item.fileCode,
- fileName: item.fileName,
- name: item.fileName,
- };
- params.fileList.push(file);
- params.attList.push(file);
- });
- this.$http({
- url: "/market/bpmTemp/temp",
- method: "post",
- headers: {
- "Content-Type": "application/json",
- },
- data: {
- bpmType: "1",
- content: JSON.stringify(params),
- },
- }).then((res) => {
- //console.log(res)
- });
- },
- deletes(v) {
- // this.treeListonly = {};
- this.treeList = this.treeList.filter(
- (el) => el.loginNoStr !== v.loginNoStr
- );
- this.closeList = !this.closeList;
- },
- treeCheckonly(v) {
- this.treeList = v;
- // this.treeListonly = v;
- },
- choline(v, n) {
- if (v == 1) {
- this.infodatas.push({});
- } else {
- this.infodatas.splice(n.$index, 1);
- }
- },
- closedia() {
- // dialog回显信息
- this.infolist = {};
- // 图片
- this.attList = [];
- this.file = [];
- // 审核人
- this.treeList = [];
- // 时间
- this.busiTime = [];
- // 领导人
- this.checkLaeder = false;
- // 审核领导
- this.leader = "";
- this.remark = "";
- // 审批状态的图片
- delete this.datalist.attList;
- this.fileInfo.fileList = [];
- // 弹出层
- this.dialogStatus = false;
- // 审核人
- this.checkexa = false;
- // 审核人单选是否开启
- this.only = false;
- },
- //获取列表
- getList(v, n) {
- this.pageSize = n;
- let _this = this;
- this.loading = true;
- v.procName = "业务需求申请(地市公司),业务需求申请(省公司)";
- this.$http({
- url: "/bpm/api/queryToDoAndFinishTaskList",
- method: "post",
- headers: {
- "Content-Type": "application/json",
- page: '{"pageNo":"' + n + '","pageSize":"10"}',
- },
- data: v,
- }).then((res) => {
- this.tableData = res.data.data;
- this.total = res.data.totalRecord;
- this.loading = false;
- });
- },
- // 分页
- currchange(v) {
- this.page = v;
- this.handleInit();
- },
- //申请 // 打开弹出层
- dialogCheck(type, data) {
- // let infolist = Object.assign({}, n);
- this.vision = "";
- this.visionsts = "";
- if (type === 1) {
- this.titname = "查看";
- this.visionsts = "2";
- this.queryDetails(data.woNo);
- } else if (type === 2) {
- this.titname = "审批";
- this.visionsts = "2";
- this.queryDetails(data.woNo);
- } else if (type === 3) {
- this.titname = "添加";
- this.dialogStatus = true;
- this.visionchonly = false;
- this.disableStatus = false;
- // this.$http({
- // url: "/market/bpmTemp/query",
- // method: "post",
- // headers: { "Content-Type": "application/json" },
- // data: { bpmType: "1" },
- // }).then((res) => {
- // if (res.data) {
- // let content = JSON.parse(res.data.content);
- // this.infolist = content.infolist;
- // this.attList = content.attList;
- // this.fileInfo.fileList = content.fileList;
- // }
- // // this.tempSave = true;
- // });
- // return;
- }
- // this.$http({
- // url: "/bpm/api/taskInit",
- // method: "post",
- // headers: {
- // "Content-Type": "application/json",
- // },
- // data: {
- // woNo: n.woNo,
- // },
- // }).then((res) => {
- // // this.infolist = Object.assign({}, res.data);
- // this.terminal = infolist.procId;
- // this.opname = res.data.opName;
- // this.opno = res.data.opNo;
- // this.infolist = JSON.parse(res.data.params.terminalRes);
- // res.data.params.fillList
- // ? (this.infodatas = JSON.parse(res.data.params.fillList))
- // : "";
- // this.infolist.procId = infolist.procId;
- // this.infolist.procVersion = infolist.procVersion;
- // this.remark = infolist.remark;
- // this.infolist.stepId = infolist.stepId;
- // this.infolist.taskId = infolist.taskId;
- // this.infolist.taskName = infolist.taskName;
- // this.infolist.opName = infolist.opName;
- // this.infolist.opNo = infolist.opNo;
- // this.infolist.opTime = infolist.opTime;
- // this.infolist.woNo = infolist.woNo;
- // this.busiTime = [];
- // this.busiTime[0] = this.infolist.busiStartTime;
- // this.busiTime[1] = this.infolist.busiEndTime;
- // this.visionchonly = false;
- // if (
- // res.data.taskList[res.data.taskList.length - 1].taskName == "流程发起"
- // ) {
- // this.vision = "流程发起";
- // if (this.titname == "审批") {
- // this.disableStatus = false;
- // }
- // this.visionchonly = true;
- // } else if (
- // res.data.taskList[res.data.taskList.length - 1].taskName ==
- // "科室主任初审"
- // ) {
- // this.vision = "科室主任初审";
- // this.visionsts = "2";
- // this.visionchonly = true;
- // } else if (
- // res.data.taskList[res.data.taskList.length - 1].taskName ==
- // "部门副主任复审"
- // ) {
- // this.vision = "部门副主任复审";
- // this.visionsts = "2";
- // this.visionchonly = true;
- // } else if (
- // res.data.taskList[res.data.taskList.length - 1].taskName ==
- // "主管副总终审" ||
- // res.data.taskList[res.data.taskList.length - 1].taskName ==
- // "部门副主任终审"
- // ) {
- // this.vision = "主管副总终审";
- // this.visionsts = "2";
- // this.visionchonly = true;
- // } else if (
- // res.data.taskList[res.data.taskList.length - 1].taskName ==
- // "需求预评估"
- // ) {
- // this.vision = "需求预评估";
- // this.visionsts = "2";
- // this.visionchonly = true;
- // } else if (
- // res.data.taskList[res.data.taskList.length - 1].taskName ==
- // "需求预评估初审"
- // ) {
- // this.vision = "需求预评估初审";
- // this.visionsts = "2";
- // this.visionchonly = true;
- // } else if (
- // res.data.taskList[res.data.taskList.length - 1].taskName ==
- // "需求预评估复审"
- // ) {
- // this.vision = "需求预评估复审";
- // this.visionsts = "2";
- // this.visionchonly = true;
- // } else if (
- // res.data.taskList[res.data.taskList.length - 1].taskName ==
- // "渠道经理会签"
- // ) {
- // this.vision = "渠道经理会签";
- // this.visionsts = "2";
- // this.visionchonly = true;
- // } else if (
- // res.data.taskList[res.data.taskList.length - 1].taskName == "需求确认"
- // ) {
- // this.vision = "需求确认";
- // this.visionsts = "3";
- // this.visionchonly = true;
- // } else if (
- // res.data.taskList[res.data.taskList.length - 1].taskName == "上线管理"
- // ) {
- // this.vision = "上线管理";
- // this.visionsts = "3";
- // this.visionchonly = true;
- // } else if (
- // res.data.taskList[res.data.taskList.length - 1].taskName == "上线验证"
- // ) {
- // this.vision = "上线验证";
- // this.visionsts = "3";
- // this.visionchonly = true;
- // } else if (
- // res.data.taskList[res.data.taskList.length - 1].taskName == "信息补填"
- // ) {
- // this.vision = "信息补填";
- // this.visionsts = "4";
- // }
- // this.datalist.attList = JSON.parse(res.data.params.attList);
- // this.attList = [];
- // this.fileInfo.fileList = [];
- // this.datalist.attList.forEach((item) => {
- // item.id = item.attchFileId;
- // this.fileInfo.fileList.push({
- // name: item.fileName,
- // url: "",
- // id: item.id,
- // attchFileId: item.attchFileId,
- // fileName: item.fileName,
- // });
- // this.attList.push({
- // name: item.fileName,
- // url: "",
- // id: item.id,
- // attchFileId: item.attchFileId,
- // fileName: item.fileName,
- // });
- // });
- // this.rovaList = res.data.taskList;
- // this.uploadstatus = true;
- // });
- },
- //审批
- dialogCli(v) {
- this.dialogStatus = false;
- if (v === 3) {
- this.infolist = {};
- this.attList = [];
- this.fileInfo.fileList = [];
- this.checkexa = false;
- this.tempSave = false;
- return;
- }
- let _this = this;
- this.infolist.opTime = _this.$formatDate(new Date(), "YYYY-MM-DD");
- if (v === 1) {
- let params = {
- dealType: "1",
- dealTypeDesc: "打回",
- procId: this.infolist.procId,
- procVersion: this.infolist.procVersion,
- remark: this.remark,
- stepId: this.infolist.stepId,
- taskId: this.infolist.taskId,
- taskName: this.infolist.taskName,
- opName: this.infolist.opName,
- opNo: this.opno,
- opTime: this.infolist.opTime,
- params: {
- procExeCondiVal: "不同意",
- terminalRes: JSON.stringify(this.infolist),
- assigneeNo: this.opno,
- assigneeName: this.opname,
- },
- woNo: this.infolist.woNo,
- };
- this.submitInfo("/bpm/api/submitTask", params);
- } else if (v === 2) {
- let param = {
- dealType: "0",
- dealTypeDesc: "提交",
- procId: this.infolist.procId,
- procVersion: this.infolist.procVersion,
- remark: this.remark,
- stepId: this.infolist.stepId,
- taskId: this.infolist.taskId,
- taskName: this.infolist.taskName,
- opName: this.infolist.opName,
- opNo: this.opno,
- opTime: this.infolist.opTime,
- params: {
- woType: this.infolist.woType,
- terminalRes: JSON.stringify(this.infolist),
- },
- woNo: this.infolist.woNo,
- };
- if (this.visionchonly) {
- param.params.assigneeNo = this.treeListonly.leaderAuditNo;
- param.params.assigneeName = this.treeListonly.leaderAuditName;
- }
- // if(this.vision == '科室主任初审'||this.vision == '部门副主任复审'){
- // this.$http({
- // url: "/sysmgr/csysuserinfo/queryUserListByLoginNoAndDuty",
- // method: "post",
- // headers: {
- // "Content-Type": "application/json",
- // "page": '{"pageNo":"' + 1 + '","pageSize":"100"}'
- // },
- // data: {"duty":"7,12"},
- // }).then((res) => {
- // if(res.data.length == 0){
- // this.$message({
- // message: '暂无领导审批,发起失败!',
- // type: 'error'
- // });
- // return
- // }else{
- // param.params.assigneeNo=res.data[0].loginNoStr;
- // param.params.assigneeName=res.data[0].loginNameStr;
- // _this.submitInfo("/bpm/api/submitTask", param);
- // return
- // }
- // });
- // }else if(this.vision == '渠道经理会签'||this.vision == '上线管理'){
- // param.params.assigneeNo= this.opno;
- // param.params.assigneeName= this.opname;
- // this.submitInfo("/bpm/api/submitTask", param);
- // }
- if (this.vision == "信息补填") {
- param.params.fillList = JSON.stringify(this.infodatas);
- this.submitInfo("/bpm/api/submitTask", param);
- } else {
- if (this.vision == "流程发起") {
- let attList = [];
- for (let i = 0; i < this.attList.length; i++) {
- attList.push({
- id: this.attList[i].id,
- fileCode: this.attList[i].fileCode,
- fileName: this.attList[i].fileName,
- opName: this.attList[i].opName,
- opNo: this.attList[i].opNo,
- opTime: this.attList[i].opTime,
- woNo: this.infolist.woNo,
- attchFileId: this.attList[i].attchFileId,
- });
- }
- param.params.attList = JSON.stringify(attList);
- this.$http({
- url: "/market/bpmTemp/del",
- method: "post",
- headers: {
- "Content-Type": "application/json",
- },
- data: {
- bpmType: "1",
- },
- }).then((res) => {
- //console.log(res)
- });
- }
- this.submitInfo("/bpm/api/submitTask", param);
- }
- }
- this.checkexa = false;
- },
- //添加
- dialogCliadd(v) {
- let _this = this;
- let info = {};
- info.params = {};
- info.opTime = _this.$formatDate(new Date(), "YYYY-MM-DD");
- info.opNo = this.userInfo.loginNo;
- info.opName = this.userInfo.loginName;
- info.woTitle = this.infolist.demandName;
- info.params.terminalRes = this.infolist;
- info.params.terminalRes.busiStartTime = this.busiTime[0]
- ? _this.$formatDate(this.busiTime[0], "YYYY-MM-DD")
- : "";
- info.params.terminalRes.busiEndTime = this.busiTime[1]
- ? _this.$formatDate(this.busiTime[1], "YYYY-MM-DD")
- : "";
- info.procId = this.terminal;
- info.params.assigneeNo = this.treeListonly.leaderAuditNo;
- info.params.assigneeName = this.treeListonly.leaderAuditName;
- for (let i = 0; i < this.options.length; i++) {
- if (this.terminal == this.options[i].procId) {
- info.procName = this.options[i].procName;
- info.procVersion = this.options[i].procVersion;
- }
- }
- let attList = [];
- for (let i = 0; i < this.attList.length; i++) {
- attList.push({
- id: this.attList[i].id,
- fileCode: this.attList[i].fileCode,
- fileName: this.attList[i].fileName,
- opName: this.attList[i].opName,
- opNo: this.attList[i].opNo,
- opTime: this.attList[i].opTime,
- woNo: this.infolist.woNo,
- attchFileId: this.attList[i].attchFileId,
- });
- }
- let fillList = [{}, {}];
- info.params.fillList = JSON.stringify(fillList);
- info.params.attList = JSON.stringify(attList);
- info.params.terminalRes = JSON.stringify(info.params.terminalRes);
- this.checkexa = false;
- this.visionchonly = false;
- this.submitInfo("/bpm/api/startProc", info);
- },
- submitInfo(u, v) {
- let _this = this;
- this.$refs.infolist.validate((valid) => {
- if (valid) {
- this.$http({
- url: u,
- method: "post",
- headers: {
- "Content-Type": "application/json",
- },
- data: v,
- }).then((res) => {
- if (res.data.result === 1) {
- _this.$message({
- message: res.data.desc,
- type: "error",
- });
- } else {
- _this.$message({
- message: "成功",
- type: "success",
- });
- _this.closedia();
- _this.infolist = {};
- _this.attList = [];
- _this.fileInfo.fileList = [];
- _this.getList(this.params, this.pageSize);
- }
- });
- }
- });
- },
- getStanding() {
- this.$router.push({
- path: "/ywStanding",
- });
- this.setabList("线上业务需求台账", "/ywStanding");
- },
- setabList(n, p) {
- let params = {
- children: "",
- name: n,
- rountPath: p,
- target: "_self",
- };
- for (let i = 0; i < this.$store.state.tabList.length; i++) {
- if (this.$store.state.tabList[i].name === params.name) {
- this.$store.state.tabList[i] = params;
- }
- }
- let set = new Set([...this.$store.state.tabList, params]);
- set.add(params);
- this.$store.commit("setDefaultActive", params.rountPath);
- this.$store.commit("setTabList", Array.from(set));
- },
- //流程
- getTermianl() {
- this.$http({
- url: "/bpm/api/queryBpmProcList",
- method: "post",
- headers: {
- "Content-Type": "application/json",
- page: '{"pageNo":"' + 1 + '","pageSize":"100"}',
- },
- data: {},
- }).then((res) => {
- this.options = res.data.data;
- });
- },
- closeMessage(v) {
- this.centerDialogVisible = false;
- let _this = this;
- if (v === 1) {
- _this
- .$http({
- url: "/bpm/api/deleteBpmPrePlugin",
- method: "post",
- headers: {
- "Content-Type": "application/json",
- },
- data: {
- id: this.delid,
- },
- })
- .then((res) => {
- if (res.data.result === 1) {
- _this.$message({
- message: res.data.desc,
- type: "error",
- });
- } else {
- _this.$message({
- message: "删除成功",
- type: "success",
- });
- _this.getList(this.params, this.pageSize);
- }
- });
- }
- },
- //删除
- delLine(v) {
- this.centerDialogVisible = true;
- this.messTit = "即将删除此条数据, 是否删除?";
- this.delid = v.id;
- },
- //文件返回值
- uploadBack(v) {
- this.attList = v;
- },
- uploadBackin(v) {
- console.log(v, "v");
- let x = [];
- for (let i = 1; i < v.data.body.length; i++) {
- x.push({
- factoryName: v.data.body[i].factoryName,
- workLoad: v.data.body[i].workLoad,
- });
- }
- this.infodatas = x;
- },
- //功能栏
- iconCli(v) {
- if (v === 1) {
- this.handleInit();
- }
- if (v === 2) {
- this.fullscreen = !this.fullscreen;
- }
- },
- getUser() {
- this.userInfo = JSON.parse(window.sessionStorage.userInfo);
- },
- // 字典
- // 需求类别 demandType
- // 承载渠道 demandChnl
- getsaleChnl() {
- this.$http({
- url: "/market/cfgDataDict/queryList",
- method: "post",
- headers: {
- "Content-Type": "application/json",
- },
- data: {
- dictCode: "demandType",
- },
- }).then((res) => {
- this.demandTypeopt = res.data;
- });
- this.$http({
- url: "/market/cfgDataDict/queryList",
- method: "post",
- headers: {
- "Content-Type": "application/json",
- },
- data: {
- dictCode: "demandChnl",
- },
- }).then((res) => {
- this.carryChannelopt = res.data;
- });
- },
- },
- mounted() {
- // 调用初始化接口
- this.handleInit();
- // this.getList({}, 1);
- this.getUser();
- this.getTermianl();
- this.getsaleChnl();
- },
- created() {},
- };
- </script>
- <style scoped lang="scss">
- .onetab {
- margin-bottom: 20px;
- padding: 0 20px;
- }
- .simple-dialog {
- position: relative;
- min-height: 90vh;
- }
- .info {
- &-footer {
- display: flex;
- margin-top: 50px;
- justify-content: flex-end;
- margin-bottom: 50px;
- }
- &-upload {
- width: 500px !important;
- position: relative;
- }
- }
- .titbox {
- div {
- float: right;
- i {
- font-size: 22px;
- margin-left: 20px;
- cursor: pointer;
- }
- }
- }
- .upload {
- position: relative;
- left: calc(50% - 229px / 2);
- top: -4px;
- display: flex !important;
- flex-direction: column;
- }
- .tabbox {
- margin-top: 15px;
- }
- .pageBox {
- text-align: right;
- margin-top: 10px;
- }
- .info-line {
- width: 100%;
- display: block;
- padding-left: 20px;
- div {
- width: 50%;
- display: inline-block;
- }
- span {
- width: 100px;
- display: inline-block;
- text-align: left;
- i {
- color: red;
- display: inline-block;
- padding-right: 5px;
- }
- }
- .el-select,
- .el-input {
- width: calc(100% - 120px);
- }
- }
- .online {
- width: 100%;
- .el-select {
- width: calc(100% - 100px);
- }
- span {
- vertical-align: top;
- }
- .el-textarea {
- width: calc(100% - 120px);
- }
- .tree {
- width: calc(50% - 60px);
- display: inline-block;
- margin-right: 20px;
- height: 300px;
- overflow-y: scroll;
- .el-icon-error {
- float: right;
- font-size: 20px;
- margin-top: 9px;
- cursor: pointer;
- }
- }
- .treeUser {
- margin: 0;
- border: 1px solid #ddd;
- p {
- background: #f4f4f4;
- padding: 0 20px;
- border-bottom: 1px solid #fff;
- }
- }
- .treeUserb {
- width: calc(100% - 100px);
- border: 1px solid #ddd;
- background: #f4f4f4;
- border-radius: 3px;
- height: auto;
- overflow: hidden;
- p {
- display: inline-block;
- padding: 0 20px;
- // margin-bottom: 5px;
- }
- }
- }
- .adv-type {
- margin-top: 20px;
- display: flex;
- justify-content: space-between;
- flex-wrap: wrap;
- // border: 1px solid #ddd;
- border-radius: 5px;
- padding: 20px;
- box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1);
- div {
- width: 33%;
- text-align: center;
- height: 80px;
- overflow: hidden;
- min-width: 100px;
- cursor: pointer;
- padding-top: 10px;
- margin: 10px 0;
- }
- div:hover {
- background: #cfe8fc;
- border-radius: 5px;
- }
- span {
- width: 100%;
- display: inline-block;
- height: 40px;
- // line-height: 40px;
- i {
- color: #0074d9;
- font-size: 36px;
- }
- }
- }
- </style>
|