20240205
luoJunYong.123 3 years ago
parent 3628b87a7b
commit 365902eac9
  1. 35
      src/App.vue
  2. 103
      src/components/case/index.vue
  3. 22
      src/components/selectBusiness/index.vue
  4. 126
      src/pages/counter/list/index.vue
  5. 41
      src/pages/lobbyManager/list/index.vue

@ -1,8 +1,10 @@
<template> <template>
<div id="app" > <div id="app" >
<select-business class="selectBusiness" /> <select-business class="selectBusiness" :showIt.sync="showIt" />
<router-view></router-view> <router-view></router-view>
<vCase></vCase> <vCase :showIt.sync="showIt"></vCase>
</div> </div>
</template> </template>
<script> <script>
@ -10,6 +12,7 @@
import Setting from '@/setting'; import Setting from '@/setting';
import util from '@/libs/util'; import util from '@/libs/util';
import selectBusiness from '@/components/selectBusiness' import selectBusiness from '@/components/selectBusiness'
import { mapState, mapMutations } from 'vuex'
export default { export default {
name: 'App', name: 'App',
components: { components: {
@ -28,11 +31,37 @@
util.local.get(Setting.tokenKey) && util.local.set(Setting.storeKey,this.$store.state) util.local.get(Setting.tokenKey) && util.local.set(Setting.storeKey,this.$store.state)
sessionStorage.setItem('systemData', this.$store.system.state) sessionStorage.setItem('systemData', this.$store.system.state)
}) })
} },
data() {
return {
showIt: true
}
},
methods: {
...mapMutations({
setShowBusiness: 'system/setShowBusiness'
}),
},
watch: {
showIt(newVal) {
if(!newVal && !this.businessKey) {
this.setShowBusiness(true)
}
}
},
computed: {
...mapState({
businessKey: state => state.system.businessKey
})
},
} }
</script> </script>
<style scoped> <style scoped>
#app {
min-width: 1300px;
}
.selectBusiness { .selectBusiness {
width: 100%; width: 100%;
height: 100%; height: 100%;

@ -1,6 +1,6 @@
<template> <template>
<div> <div>
<el-container class="scrollbar" v-if="caseVisible"> <el-container class="scrollbar animate__animated animate__bounceInLeft" v-show="showIt">
<el-header> <el-header>
<div class="flex a-center j-between"> <div class="flex a-center j-between">
<div class="flex a-center" style="width: 28%"> <div class="flex a-center" style="width: 28%">
@ -40,6 +40,8 @@
</div> </div>
</div> </div>
</el-header> </el-header>
<el-container> <el-container>
<el-aside width="30%"> <el-aside width="30%">
<div class="aside-header"> <div class="aside-header">
@ -63,7 +65,7 @@
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
<el-card shadow="hover"> <el-card shadow="hover">
<el-table :data="requires" stripe height="405" v-loading="loading"> <el-table :data="requires" stripe height="405" v-loading="loading" ref='testTable'>
<el-table-column type="index"></el-table-column> <el-table-column type="index"></el-table-column>
<el-table-column prop="name" label="判分指标" align="center"> <el-table-column prop="name" label="判分指标" align="center">
</el-table-column> </el-table-column>
@ -95,13 +97,13 @@
<div class="break-all" v-html="projectManage.experimentDescription"></div> <div class="break-all" v-html="projectManage.experimentDescription"></div>
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="实验要求" name="second"> <el-tab-pane label="实验要求" name="second">
<el-collapse v-model="activeNames" accordion > <el-collapse :value="activeNames" accordion >
<el-collapse-item v-for="(item,index) in requires" :key="index" :name="item.id"> <el-collapse-item v-for="(item,index) in requires" :key="index" :name="item.id">
<template slot="title" style='line-height: 0px;font-size: 16px'> <template slot="title" style='line-height: 0px;font-size: 16px'>
<i class='el-icon-s-ticket'></i> <i class='el-icon-s-ticket'></i>
<span style="margin: 0px 10px">{{ item.name }}</span> <span style="margin: 0px 10px;font-size: 16px">{{ item.name }}</span>
</template> </template>
<div class="break-all" v-html="item.experimentalRequirements"></div> <div class="break-all" style="font-size: 16px" v-html="item.experimentalRequirements"></div>
</el-collapse-item> </el-collapse-item>
<p ref="scrollTag"></p> <p ref="scrollTag"></p>
</el-collapse> </el-collapse>
@ -114,14 +116,19 @@
</el-container> </el-container>
</el-container> </el-container>
<!-- </div> --> <!-- </div> -->
<div class="panel" :class="{active: caseVisible}"> <div class="panel" :class="{active: showIt}">
<div @click="toggleCase"> <div @click="toggleCase">
<img src="../../assets/img/case/left.png" alt v-if="caseVisible" /> <img src="../../assets/img/case/left.png" alt v-if="showIt" />
<img src="../../assets/img/case/right.png" alt v-else /> <img src="../../assets/img/case/right.png" alt v-else />
</div> </div>
</div> </div>
<div class='popContainer' v-if='popContainer'></div> <div class='popContainer' v-if='popContainer'></div>
<div class="absolute z-50 w-screen h-screen bg-transparent inset-0" v-show="showIt"></div>
</div> </div>
</template> </template>
<script> <script>
@ -131,6 +138,28 @@ import Setting from '@/setting'
import {getProjectBySystemId,getProjectDetail,submit,getQueryCache,deleteCache,checkTest,checkTest2} from "@/api/http.js"; import {getProjectBySystemId,getProjectDetail,submit,getQueryCache,deleteCache,checkTest,checkTest2} from "@/api/http.js";
import { mapMutations } from 'vuex' import { mapMutations } from 'vuex'
export default { export default {
props: {
sendSync: {
type: Boolean,
default: false
},
autoStart: {
type: Boolean,
default: false
},
defaultVal: {
type: Number,
default: null
},
codeId: {
type: Number,
default: 0
},
showIt: {
type: Boolean,
required: true
}
},
data() { data() {
return { return {
intervalJudge: {}, intervalJudge: {},
@ -192,6 +221,7 @@ export default {
} }
}, },
created() { created() {
let assessmentId = this.getQueryVariable('assessmentId') let assessmentId = this.getQueryVariable('assessmentId')
sessionStorage.setItem('assessmentId',assessmentId) sessionStorage.setItem('assessmentId',assessmentId)
this.assessmentId = assessmentId this.assessmentId = assessmentId
@ -239,30 +269,13 @@ export default {
} }
} }
}, },
caseVisible(newVal) { // caseVisible(newVal) {
if(!newVal) { // if(!newVal) {
console.log(this.$refs.scrollTag) // console.log(this.$refs.scrollTag)
} // }
} // }
},
props: {
sendSync: {
type: Boolean,
default: false
},
autoStart: {
type: Boolean,
default: false
},
defaultVal: {
type: Number,
default: null
},
codeId: {
type: Number,
default: 0
},
}, },
computed: { computed: {
needSendSunc: function() { needSendSunc: function() {
return this.sendSync; return this.sendSync;
@ -783,7 +796,8 @@ export default {
return param < 10 ? "0" + param : param; return param < 10 ? "0" + param : param;
}, },
toggleCase() { toggleCase() {
this.caseVisible = !this.caseVisible this.$emit('update:showIt', !this.showIt)
// this.caseVisible = !this.caseVisible
}, },
collapse(){ collapse(){
@ -814,6 +828,10 @@ export default {
<style lang="scss" scoped> <style lang="scss" scoped>
$togetherFontSize: 16px; $togetherFontSize: 16px;
.scrollbar {
z-index: 100000000;
}
.popContainer { .popContainer {
position: absolute; position: absolute;
width:100%; /*宽度设置为100%,这样才能使隐藏背景层覆盖原页面*/ width:100%; /*宽度设置为100%,这样才能使隐藏背景层覆盖原页面*/
@ -921,7 +939,7 @@ $togetherFontSize: 16px;
} }
.el-input--suffix .el-input__inner { .el-input--suffix .el-input__inner {
color: #333; color: #333;
font-size: 14px; font-size: $togetherFontSize;
border-radius: 30px; border-radius: 30px;
border: none; border: none;
background-color: #fff; background-color: #fff;
@ -982,7 +1000,7 @@ $togetherFontSize: 16px;
} }
thead{ thead{
color: #ffffff; color: #ffffff;
font-size: 10px; font-size: togetherFontSize;
font-size: $togetherFontSize; font-size: $togetherFontSize;
th{ th{
padding: 5px 0; padding: 5px 0;
@ -990,7 +1008,7 @@ $togetherFontSize: 16px;
} }
th > .cell{ th > .cell{
font-weight: 100; font-weight: 100;
font-size: 14px; font-size: togetherFontSize;
font-size: $togetherFontSize; font-size: $togetherFontSize;
} }
th,tr{ th,tr{
@ -1018,22 +1036,27 @@ $togetherFontSize: 16px;
background-color: #badfff!important; background-color: #badfff!important;
} }
} }
/deep/ .el-collapse{
font-size: $togetherFontSize;
}
.el-collapse-item__content{ .el-collapse-item__content{
padding-left: 10px; padding-left: 10px;
padding-right: 10px; padding-right: 10px;
font-size: $togetherFontSize;
} }
.el-collapse-item__wrap { .el-collapse-item__wrap {
border-bottom: none; border-bottom: none;
} }
.el-collapse-item__header { .el-collapse-item__header {
font-size: 18px; font-size: togetherFontSize;
border-bottom: none; border-bottom: none;
} }
.el-tabs__content { .el-tabs__content {
margin: 0 20px; margin: 0 20px;
} }
.el-icon-s-ticket:before { .el-icon-s-ticket:before {
font-size: 18px; font-size: togetherFontSize;
//padding: 5px; //padding: 5px;
color: $main-color; color: $main-color;
} }
@ -1067,6 +1090,12 @@ $togetherFontSize: 16px;
height: 500px; height: 500px;
overflow: hidden; overflow: hidden;
overflow-y: auto; overflow-y: auto;
}
/deep/.el-collapse-item {
font-size: $togetherFontSize;
background-color: red;
color: red;
} }
.el-tabs__item.is-active { .el-tabs__item.is-active {
color: #fff; color: #fff;
@ -1083,7 +1112,7 @@ $togetherFontSize: 16px;
} }
.panel{ .panel{
position: fixed; position: fixed;
z-index: 1001; z-index: 10010000;
top: 50%; top: 50%;
&.active{ &.active{
//z-index: 10; //z-index: 10;

@ -1,12 +1,12 @@
<template> <template>
<el-dialog :visible.sync="showBusiness" class="" @close="closeData" :close-on-click-modal="false" :show-close="false" custom-class="data-dia 2xl:w-7/12 xl:w-9/12 lg:w-full h-9/12"> <el-dialog :visible="showBusiness" class="" @close="closeData" :close-on-click-modal="false" :show-close="false" custom-class="animate__animated animate__bounceIn data-dia 2xl:w-7/12 xl:w-9/12 lg:w-full h-9/12">
<div slot="title" class="dia-header2"> <div slot="title" class="dia-header2">
<div class="data-title2">请选择业务</div> <div class="data-title2">请选择业务</div>
<div class="close"><img v-lazy="closeImg" alt="" @click="showBusinessSelect(false)" /></div> <div class="close"><img v-lazy="closeImg" alt="" @click="showBusinessSelect(false)" /></div>
</div> </div>
<p class="tips2">请选择您要办理的业务</p> <p class="tips2">请选择您要办理的业务</p>
<ul class="take-list2"> <ul class="take-list2">
<li v-for="(item) in businessArr" :class="{checked: takeCheck == item.myKey}" :key="item.myKey" @click="checkTake(item.myKey)"> <li v-for="(item) in businessArr" :class="{checked: takeCheck == item.myKey,'animate-pulse': takeCheck == item.myKey}" class=" duration-1000" :key="item.myKey" @click="checkTake(item.myKey)">
<img v-lazy="businessImg" alt=""> <img v-lazy="businessImg" alt="">
<p>{{ item.myKey + item.text}}</p> <p>{{ item.myKey + item.text}}</p>
</li> </li>
@ -169,7 +169,7 @@ export default {
closeData() { closeData() {
this.checkList = []; this.checkList = [];
}, },
showBusinessSelect (judge) { async showBusinessSelect (judge) {
if(!judge && !this.businessKey) { if(!judge && !this.businessKey) {
// this.$confirm(', ?', '', { // this.$confirm(', ?', '', {
// confirmButtonText: '', // confirmButtonText: '',
@ -184,9 +184,19 @@ export default {
// message: '' // message: ''
// }); // });
// }); // });
this.$message({ await this.$confirm('由于您未选择一个业务,这将回到项目列表,是否继续?', '提示', {
type: 'info', confirmButtonText: '确定',
message: '请选择一个业务' cancelButtonText: '取消',
center: true,
type: 'warning'
}).then(() => {
this.$emit('update:showIt', true)
this.setShowBusiness(false)
}).catch(() => {
this.$message({
type: 'info',
message: '请选择一个业务'
});
}); });
return return
} }

@ -1,5 +1,5 @@
<template> <template>
<div class="wrap"> <div class="wrap minWidthJudge">
<back-Button /> <back-Button />
<!-- <img class="sth bg" v-lazy="lazyImg[2]" alt="" /> --> <!-- <img class="sth bg" v-lazy="lazyImg[2]" alt="" /> -->
<!-- <img class="sth guide" src="@/assets/img/guide.png" alt="" /> --> <!-- <img class="sth guide" src="@/assets/img/guide.png" alt="" /> -->
@ -12,8 +12,8 @@
<div slot="content" class="computerContent" style="" @click="showManage"> <div slot="content" class="computerContent" style="" @click="showManage">
<img style="height: 150px;" v-lazy="lazyImg[3]" alt="" /> <img style="height: 150px;" v-lazy="lazyImg[3]" alt="" />
</div> </div>
<div class="bg-gray-50" @click="showManage"> <div class="bg-gray-50 " @click="showManage">
<img class="sth computer cp" v-lazy="lazyImg[4]" alt="" @click="showManage"/> <img class="sth computer cp rotateComputer" v-lazy="lazyImg[4]" alt="" @click="showManage"/>
</div> </div>
</el-tooltip> </el-tooltip>
<!-- 点击打开传票栏--> <!-- 点击打开传票栏-->
@ -105,7 +105,13 @@
<div ref="goods" class="goods-dia" :class="{ active: showGoods }"> <div ref="goods" class="goods-dia" :class="{ active: showGoods }">
<!-- goodsShelfTotalData goods2 --> <!-- goodsShelfTotalData goods2 -->
<div :id="item.name" v-for="(item) in goodsShelfTotalData" :key="item.id" class=" justify-center" :class="{ checked: checkList.includes(item.id),file:true }" @click="goodsDblClickFn(item)"> <div :id="item.name" v-for="(item) in goodsShelfTotalData" :key="item.id" class=" justify-center" :class="{ checked: checkList.includes(item.id),file:true }" @click="goodsDblClickFn(item)">
<img :style="item.name==='开户申请书'?'margin-top:10px;':''" :src="item.src" alt="" /> <!-- <img :style="item.name==='开户申请书'?'margin-top:10px;':''" :src="item.src" alt="" /> -->
<el-image
style="width: 90%; height: 70px; top: 10px;"
:src="item.src"
fit="scale-down"
:title="item.name"
:alt="item.name"></el-image>
<p>{{item.name}}</p> <p>{{item.name}}</p>
</div> </div>
</div> </div>
@ -126,7 +132,9 @@
<p v-if="popText=='密码器'" class="tips"></p> <p v-if="popText=='密码器'" class="tips"></p>
<p v-else-if="popText=='重要空白凭证箱'||popText=='普通凭证箱'" class="tips">- 请从以下物品中选取所需材料 -</p> <p v-else-if="popText=='重要空白凭证箱'||popText=='普通凭证箱'" class="tips">- 请从以下物品中选取所需材料 -</p>
<p v-else class="tips">- 请从物品栏选中或拖拽所需材料 -</p> <p v-else class="tips">- 请从物品栏选中或拖拽所需材料 -</p>
<div v-if="popText==='密码器'" style="width:800px;padding-right:150px;padding-top:80px">
<!-- 动画开始 -->
<div v-if="popText==='密码器'" style="width:800px;padding-right:150px;padding-top:80px">
<el-form :model="passwordForm" :rules="passwordRules" ref="form" label-width="180px"> <el-form :model="passwordForm" :rules="passwordRules" ref="form" label-width="180px">
<el-form-item label="密码" prop="passwordAgain"> <el-form-item label="密码" prop="passwordAgain">
<el-input v-focus show-password v-model="passwordForm.passwordAgain" maxlength="6" onkeyup="{this.value=this.value.replace(/\D/g,'')}" autocomplete="off"></el-input> <el-input v-focus show-password v-model="passwordForm.passwordAgain" maxlength="6" onkeyup="{this.value=this.value.replace(/\D/g,'')}" autocomplete="off"></el-input>
@ -140,7 +148,7 @@
</el-form> </el-form>
</div> </div>
<div v-else-if="popText==='印章盒'" class="seal 2xl:w-7/12 xl:w-9/12 lg:w-full h-5/6"> <div v-else-if="popText==='印章盒'" class="seal 2xl:w-7/12 xl:w-9/12 lg:w-full h-5/6 animate__animated animate__bounceIn">
<div class="left min-h-full"> <div class="left min-h-full">
<!-- dblClickFn(item) --> <!-- dblClickFn(item) -->
<div v-for="(item, index) in sealArr" :key="item.id" :class="{ checked: sealChecked.includes(item.id),file:true }" @click="checkSeal(item.id)"> <div v-for="(item, index) in sealArr" :key="item.id" :class="{ checked: sealChecked.includes(item.id),file:true }" @click="checkSeal(item.id)">
@ -161,29 +169,37 @@
</div> </div>
</div> </div>
<div v-else-if="popText==='重要空白凭证箱'" class="seal" style="width:1200px;"> <div v-else-if="popText==='重要空白凭证箱'" class="seal animate__animated animate__bounceIn" style="width:1200px;">
<div class="left else"> <div class="left else">
<div v-for="(item) in importanceArr" :key="item.id" :class="{ checked: importantChecked.includes(item.id),file:true, importanceArrClass: true }" @click="dblClickFn(item)"> <div v-for="(item) in importanceArr" :key="item.id" :class="{ checked: importantChecked.includes(item.id),file:true, importanceArrClass: true }" @click="dblClickFn(item)">
<img :src="item.src" alt="" /> <!-- <img :src="item.src" alt="" /> -->
<el-image
style="width: 100px; height: 70px;margin-top: 10px;"
:src="item.src"
:fit="fit"></el-image>
<p>{{item.name}}</p> <p>{{item.name}}</p>
</div> </div>
</div> </div>
</div> </div>
<div v-else-if="popText==='普通凭证箱'" class="seal" style="width:1200px;"> <div v-else-if="popText==='普通凭证箱'" class="seal animate__animated animate__bounceIn" style="width:1200px;">
<div class="left else"> <div class="left else">
<div v-for="(item) in commonArr" :key="item.id" :class="{ checked: commonChecked.includes(item.id),file:true }" @click="dblClickFn(item)"> <div v-for="(item) in commonArr" :key="item.id" :class="{ checked: commonChecked.includes(item.id),file:true }" @click="dblClickFn(item)">
<img :src="item.src" alt="" /> <!-- <img :src="item.src" alt="" /> -->
<el-image
style="width: 100px; height: 70px;margin-top: 10px;"
:src="item.src"
:fit="fit"></el-image>
<p>{{item.name}}</p> <p>{{item.name}}</p>
</div> </div>
</div> </div>
</div> </div>
<div v-else-if="popText==='身份证扫描仪'" class="list" ref="popUp"> <div v-else-if="popText==='身份证扫描仪'" class="list animate__animated animate__bounceIn" ref="popUp">
<div class="img-wrap" :class="{ checked: commonChecked.includes(item.id),'img-wrap':true }" v-for="(item, index) in receptionList" :key="item.id" @click='dislodgeItem(index)'> <div class="img-wrap" :class="{ checked: commonChecked.includes(item.id),'img-wrap':true }" v-for="(item, index) in receptionList" :key="item.id" @click='dislodgeItem(index)'>
<img :src="item.src" class="file" alt="" /> <img :src="item.src" class="file" alt="" />
<p class="text">{{item.name}}</p> <p class="text">{{item.name}}</p>
</div> </div>
</div> </div>
<div v-else-if="popText==='身份证扫描器'" class="list" ref="popUp"> <div v-else-if="popText==='身份证扫描器'" class="list animate__animated animate__bounceIn" ref="popUp">
<div class="img-wrap" v-for="(item, index) in receptionList" :class="{ checked: commonChecked.includes(item.id),'img-wrap':true }" :key="item.id" @click='dislodgeItem(index)'> <div class="img-wrap" v-for="(item, index) in receptionList" :class="{ checked: commonChecked.includes(item.id),'img-wrap':true }" :key="item.id" @click='dislodgeItem(index)'>
<img :src="item.src" class="file" alt="" /> <img :src="item.src" class="file" alt="" />
<p class="text">{{item.name}}</p> <p class="text">{{item.name}}</p>
@ -191,7 +207,7 @@
</div> </div>
<div v-else-if="popText==='刷卡器'" ref="popUp" class="list"> <div v-else-if="popText==='刷卡器'" ref="popUp" class="list animate__animated animate__bounceIn">
<div class="img-wrap" v-for="(item, index) in receptionList" :class="{ checked: commonChecked.includes(item.id),'img-wrap':true }" @click='dislodgeItem(index)' :key="item.id"> <div class="img-wrap" v-for="(item, index) in receptionList" :class="{ checked: commonChecked.includes(item.id),'img-wrap':true }" @click='dislodgeItem(index)' :key="item.id">
<img :src="item.src" class="file" alt="" /> <img :src="item.src" class="file" alt="" />
<p class="text">{{item.name}}</p> <p class="text">{{item.name}}</p>
@ -200,13 +216,13 @@
<!-- 客户签字 --> <!-- 客户签字 -->
<div v-else-if="popText==='客户签字'" class="list" ref="popUp"> <div v-else-if="popText==='客户签字'" class="list animate__animated animate__bounceIn" ref="popUp">
<div class="img-wrap" v-for="(item, index) in goodState" :class="{ checked: commonChecked.includes(item.id),'img-wrap':true }" @click='dislodgeItem(index)' :key="item.id"> <div class="img-wrap" v-for="(item, index) in goodState" :class="{ checked: commonChecked.includes(item.id),'img-wrap':true }" @click='dislodgeItem(index)' :key="item.id">
<img :src="item.src" class="file" alt="" /> <img :src="item.src" class="file" alt="" />
<p class="text">{{item.name}}</p> <p class="text">{{item.name}}</p>
</div> </div>
</div> </div>
<div v-else-if="popText==='返还资料'" class="list" ref="popUp"> <div v-else-if="popText==='返还资料'" class="list animate__animated animate__bounceIn" ref="popUp">
<div class="img-wrap" v-for="(item, index) in goodState" :class="{ checked: commonChecked.includes(item.id),'img-wrap':true }" @click='dislodgeItem(index)' :key="item.id"> <div class="img-wrap" v-for="(item, index) in goodState" :class="{ checked: commonChecked.includes(item.id),'img-wrap':true }" @click='dislodgeItem(index)' :key="item.id">
<img :src="item.src" class="file" alt="" /> <img :src="item.src" class="file" alt="" />
<p class="text">{{item.name}}</p> <p class="text">{{item.name}}</p>
@ -215,7 +231,7 @@
<!-- 暂时未确定是否公共使用一个弹框 receptionList--> <!-- 暂时未确定是否公共使用一个弹框 receptionList-->
<div v-else class="list" ref="popUp"><!-- 钱箱 / 传票栏 ... 一系列可存物品弹框 --> <div v-else class="list animate__animated animate__bounceIn" ref="popUp"><!-- 钱箱 / 传票栏 ... 一系列可存物品弹框 -->
<div class="img-wrap" v-for="(item, index) in goodState" @click='dislodgeItem(index)' :class="{ checked: commonChecked.includes(item.id),'img-wrap':true }" :key="item.id"> <div class="img-wrap" v-for="(item, index) in goodState" @click='dislodgeItem(index)' :class="{ checked: commonChecked.includes(item.id),'img-wrap':true }" :key="item.id">
<img :src="item.src" class="file" alt="" /> <img :src="item.src" class="file" alt="" />
<p class="text">{{item.name }}</p> <p class="text">{{item.name }}</p>
@ -240,12 +256,15 @@
<router-view></router-view> <router-view></router-view>
</transition> </transition>
</div> </div>
<!-- 图片查看器 -->
<el-dialog <el-dialog
custom-class="data-dia" custom-class="data-dia imgIndex"
:visible.sync="showImg" :visible.sync="showImg"
width="634px" width="634px"
> >
<img :src="imgSrc" class="imgPop" alt=""> <img :src="imgSrc" class="imgPop imgIndex" alt="">
<!-- <div :style="{'background':'url('+imgSrc+')','height':'500px','background-repeat': 'no-repeat',--> <!-- <div :style="{'background':'url('+imgSrc+')','height':'500px','background-repeat': 'no-repeat',-->
<!-- 'background-size': '100% 100%'}" class="imgPop">--> <!-- 'background-size': '100% 100%'}" class="imgPop">-->
<!-- </div>--> <!-- </div>-->
@ -341,6 +360,7 @@ export default {
} }
}; };
return { return {
controlGoodsDblClickFn: null,
// cultureIn: [], // // cultureIn: [], //
// peopleSign: [], // peopleSign: [],
// moneyBox: [], // moneyBox: [],
@ -1009,6 +1029,12 @@ export default {
}) })
}, },
watch: { watch: {
showImg(newVal) {
if(!newVal) {
this.imgSrc = ''
}
},
'$route.path': function (val) { '$route.path': function (val) {
// //
let arr = val.split('/').slice(-2); let arr = val.split('/').slice(-2);
@ -1360,24 +1386,6 @@ export default {
this.$store.commit('system/changePop',{show:true,text:type, id: this.id}) this.$store.commit('system/changePop',{show:true,text:type, id: this.id})
} }
}, },
checkData(item) {/* 选中物品 */
let _this = this
_this.clickNum++;
if (_this.clickNum === 2) {
_this.clickNum = 0;
// ...
_this.showImg = true
_this.imgSrc = item.src
}
setTimeout(function () {
if (_this.clickNum === 1) {
_this.clickNum = 0;
// ...
console.log('单击事件');
_this.checkList.includes(item.id) ? _this.checkList.splice(_this.checkList.indexOf(item.id), 1) : _this.checkList.push(item.id);
}
}, 200)
},
dblClickFn(item,val){/* 选中/预览 单/双击函数 */ dblClickFn(item,val){/* 选中/预览 单/双击函数 */
let that = this let that = this
this.clickNum++ this.clickNum++
@ -1414,9 +1422,15 @@ export default {
}, 200) }, 200)
}, },
goodsDblClickFn(item){/* 选中/预览 单/双击函数 */ goodsDblClickFn(item){/* 选中/预览 单/双击函数 */
this.clickNum2++ this.clickNum2++;
if (this.clickNum2 === 2) { // if (this.clickNum2 === 2) { //
// 西 // 西
if(this.controlGoodsDblClickFn) {
clearTimeout(this.controlGoodsDblClickFn)
this.controlGoodsDblClickFn = null
}
const judge = item.name.includes('本联') || item.name.includes('凭证联') || item.name.includes('回单') || (item.name.includes('复印件') && !item.name.includes('身份证复印件')) const judge = item.name.includes('本联') || item.name.includes('凭证联') || item.name.includes('回单') || (item.name.includes('复印件') && !item.name.includes('身份证复印件'))
if(!(judge)) { if(!(judge)) {
this.clickNum2 = 0; this.clickNum2 = 0;
@ -1425,22 +1439,23 @@ export default {
this.magnifyData = item this.magnifyData = item
this.imgSrc = item.src this.imgSrc = item.src
} }
} }else {
setTimeout(() => { this.controlGoodsDblClickFn = setTimeout(() => {
if(this.myMap) { if(this.myMap) {
this.outThingsGoods([ item.id ]) this.outThingsGoods([ item.id ])
this.pushThings({ idArr: [item.id], name: this.myMap}) this.pushThings({ idArr: [item.id], name: this.myMap})
console.log(this.goodState) }else {
}else { const index = this.receptionList.findIndex(item2 => item2.id === item.id)
const index = this.receptionList.findIndex(item2 => item2.id === item.id) if(index === -1) {
if(index === -1) { this.receptionList.push(item)
this.receptionList.push(item) }
} }
} this.clickNum2 = 0
this.clickNum2 = 0 }, 200)
}, 200) }
}, },
checkSeal(id) {/* 选中印章 */ checkSeal(id) {/* 选中印章 */
this.sealChecked.includes(id) ? this.sealChecked.splice(this.sealChecked.indexOf(id), 1) : this.sealChecked.push(id); this.sealChecked.includes(id) ? this.sealChecked.splice(this.sealChecked.indexOf(id), 1) : this.sealChecked.push(id);
@ -3095,9 +3110,10 @@ export default {
left: 50%; left: 50%;
transform: translate(-50%, 0); transform: translate(-50%, 0);
padding: 0 15px 15px; padding: 0 15px 15px;
z-index: 99799; z-index: 999;
border: 1px solid #e6e6e6; border: 1px solid #e6e6e6;
border-color: #f40; border-color: black;
box-shadow: 0 2px 4px rgba(0, 0, 0, .12), 0 0 6px rgba(0, 0, 0, .04);
max-height: 600px; max-height: 600px;
//overflow: auto; //overflow: auto;
.dia-header { .dia-header {
@ -3285,6 +3301,7 @@ export default {
background: url(../../../assets/img/data-frame.png) 0 0 / cover no-repeat; background: url(../../../assets/img/data-frame.png) 0 0 / cover no-repeat;
cursor: pointer; cursor: pointer;
margin: 5px 7px; margin: 5px 7px;
&:last-child { &:last-child {
margin-right: 0; margin-right: 0;
} }
@ -3293,6 +3310,7 @@ export default {
} }
img { img {
width: 90px; width: 90px;
height: 70px;
max-height: 90px; max-height: 90px;
margin: 10px auto 0; margin: 10px auto 0;
z-index: 9; z-index: 9;
@ -3480,4 +3498,8 @@ color: #fff;
opacity: .9; opacity: .9;
} }
} }
.imgIndex {
z-index: 9999!important;
}
</style> </style>

@ -7,13 +7,13 @@
</div> </div>
<div class="actions"> <div class="actions">
<ul class="btns"> <ul class="btns">
<li @click="showTake">取号</li> <li @click="showTake" class="animate-pulse duration-1000">取号</li>
<li @click="showData">填单</li> <li @click="showData" class="animate-pulse duration-1000">填单</li>
<li @click="showCopy">复印</li> <li @click="showCopy" class="animate-pulse duration-1000">复印</li>
<li @click="showRecaption">取回</li> <li @click="showRecaption" class="animate-pulse duration-1000">取回</li>
</ul> </ul>
</div> </div>
<el-dialog :visible.sync="takeVisible" style="width: 100%" @close="closeTake" :close-on-click-modal="false" :show-close="false" custom-class="data-dia"> <el-dialog :visible.sync="takeVisible" style="width: 100%" @close="closeTake" :close-on-click-modal="false" :show-close="false" custom-class="data-dia animate__animated animate__bounceIn">
<div slot="title" class="dia-header"> <div slot="title" class="dia-header">
<div class="data-title">取号机</div> <div class="data-title">取号机</div>
<img class="close" src="@/assets/svg/close.svg" alt="" @click="closeTakeDia"> <img class="close" src="@/assets/svg/close.svg" alt="" @click="closeTakeDia">
@ -47,7 +47,7 @@
</div> </div>
</el-dialog> </el-dialog>
<!-- :visible.sync="takeResultVisible" --> <!-- :visible.sync="takeResultVisible" -->
<el-dialog :visible.sync="takeResultVisible" width="400px" :close-on-click-modal="false" :show-close="false" custom-class="data-dia"> <el-dialog :visible.sync="takeResultVisible" width="400px" :close-on-click-modal="false" :show-close="false" custom-class="data-dia animate__animated animate__pulse">
<div slot="title" class="dia-header"> <div slot="title" class="dia-header">
<div class="data-title">{{ workingName + '机'}}</div> <div class="data-title">{{ workingName + '机'}}</div>
<img class="close" src="@/assets/svg/close.svg" alt="" @click="takeResultVisible = false"> <img class="close" src="@/assets/svg/close.svg" alt="" @click="takeResultVisible = false">
@ -61,7 +61,7 @@
</div> </div>
</el-dialog> </el-dialog>
<el-dialog :visible.sync="dataVisible" style="width: 100%" @close="closeData" :close-on-click-modal="false" :show-close="false" custom-class="data-dia"> <el-dialog :visible.sync="dataVisible" style="width: 100%" @close="closeData" :close-on-click-modal="false" :show-close="false" custom-class="data-dia animate__animated animate__bounceIn">
<div slot="title" class="dia-header"> <div slot="title" class="dia-header">
<div class="data-title">银行单据</div> <div class="data-title">银行单据</div>
<img class="close" src="@/assets/svg/close.svg" alt="" @click="closeDataDia"> <img class="close" src="@/assets/svg/close.svg" alt="" @click="closeDataDia">
@ -153,7 +153,7 @@
</div> </div>
</el-dialog> </el-dialog>
<el-dialog :visible.sync="copyVisible" style="width: 100%" @close="closeData" :close-on-click-modal="false" :show-close="false" custom-class="data-dia"> <el-dialog :visible.sync="copyVisible" style="width: 100%" @close="closeData" :close-on-click-modal="false" :show-close="false" custom-class="data-dia animate__animated animate__bounceIn">
<div slot="title" class="dia-header"> <div slot="title" class="dia-header">
<div class="data-title">复印</div> <div class="data-title">复印</div>
<img class="close" src="@/assets/svg/close.svg" alt="" @click="closeCopyDia"> <img class="close" src="@/assets/svg/close.svg" alt="" @click="closeCopyDia">
@ -175,18 +175,18 @@
</div> </div>
</el-dialog> </el-dialog>
<el-dialog :visible.sync="recaptionVisible" style="width: 100%" @close="closeData" :close-on-click-modal="false" :show-close="false" custom-class="data-dia"> <el-dialog :visible.sync="recaptionVisible" style="width: 100%" @close="closeData" :close-on-click-modal="false" :show-close="false" custom-class="data-dia animate__animated animate__bounceIn">
<div slot="title" class="dia-header"> <div slot="title" class="dia-header">
<div class="data-title">取回</div> <div class="data-title">取回</div>
<img class="close" src="@/assets/svg/close.svg" alt="" @click="closeRecaption"> <img class="close" src="@/assets/svg/close.svg" alt="" @click="closeRecaption">
</div> </div>
<p class="tips">- 请单击选中复印材料双击可放大预览 -</p> <p class="tips">- 请单击选中复印材料双击可放大预览 -</p>
<ul class="list" style="justify-content: center"> <ul class="list" style="justify-content: center">
<li :class="{checked: checkList.includes(1)}" @click="checkData(1)"> <li :class="{checked: checkList.includes(13)}" @click="checkData(13)">
<img src="@/assets/img/idCard-sm.png" alt=""> <img src="@/assets/img/idCard-sm.png" alt="">
<p>身份证</p> <p>身份证</p>
</li> </li>
<li :class="{checked: checkList.includes(3)}" @click="checkData(3)" style='margin-left: 10px'> <li :class="{checked: checkList.includes(405)}" @click="checkData(405)" style='margin-left: 10px'>
<!-- <img style="margin-top: 0" src="@/assets/img/open-account-apply-sm.png" alt=""> --> <!-- <img style="margin-top: 0" src="@/assets/img/open-account-apply-sm.png" alt=""> -->
<el-image <el-image
style="margin-top: -10" style="margin-top: -10"
@ -197,7 +197,7 @@
</li> </li>
</ul> </ul>
<div class="dia-footer"> <div class="dia-footer">
<button type="button" v-throttle>确定</button> <button type="button" v-throttle @click="takeBack">确定</button>
</div> </div>
</el-dialog> </el-dialog>
@ -257,7 +257,7 @@ export default {
elImg2: [ elImg2: [
{ img: require('@/assets/img/goods/accountApplyBook.jpg'), name: '开户申请书', key: 405 }, { img: require('@/assets/img/goods/accountApplyBook.jpg'), name: '开户申请书', key: 405 },
{ img: require('@/assets/img/idCard-sm.png'), name: '身份证', key: 14 }, { img: require('@/assets/img/idCard-sm.png'), name: '身份证', key: 13 },
], ],
listLi1 : [ listLi1 : [
@ -327,7 +327,7 @@ export default {
if(this.takeResultVisible) { if(this.takeResultVisible) {
this.takeResultVisible = false this.takeResultVisible = false
} }
}, 2000) }, 700)
}).catch((error)=>{ }).catch((error)=>{
this.$message({ this.$message({
showClose: true, showClose: true,
@ -369,7 +369,7 @@ export default {
if(this.takeResultVisible) { if(this.takeResultVisible) {
this.takeResultVisible = false this.takeResultVisible = false
} }
}, 2000) }, 700)
}).catch((error)=>{ }).catch((error)=>{
this.$message({ this.$message({
showClose: true, showClose: true,
@ -409,7 +409,7 @@ export default {
if(this.takeResultVisible) { if(this.takeResultVisible) {
this.takeResultVisible = false this.takeResultVisible = false
} }
}, 2000) }, 700)
}).catch((error)=>{ }).catch((error)=>{
this.$message({ this.$message({
showClose: true, showClose: true,
@ -419,6 +419,7 @@ export default {
}); });
}) })
}, },
//
takeBack() { takeBack() {
const formList = []; const formList = [];
const checkList = [...this.checkList] const checkList = [...this.checkList]
@ -431,24 +432,24 @@ export default {
return return
} }
for(let i=0; i<checkList.length; i++) { for(let i=0; i<checkList.length; i++) {
formList.push({"answerId":checkList[i],"emptyOne": "", "emptyTwo": '', "operationIds": '285,' + this.$store.state.system.businessSelect[this.$store.state.system.businessKey].id + ',286,416,' + checkList[i], "type": ""}) formList.push({"answerId":checkList[i],"emptyOne": "", "emptyTwo": '', "operationIds": '285,' + this.$store.state.system.businessSelect[this.$store.state.system.businessKey].id + ',286,553,' + checkList[i], "type": ""})
} }
const params= { const params= {
parentId: '285,' + this.$store.state.system.businessSelect[this.$store.state.system.businessKey].id + ',286, 416', parentId: '285,' + this.$store.state.system.businessSelect[this.$store.state.system.businessKey].id + ',286, 553',
lcJudgmentRuleReq:formList, lcJudgmentRuleReq:formList,
projectId:+projectId, projectId:+projectId,
startTime:startTime, startTime:startTime,
} }
addOperation(params).then((data)=>{ addOperation(params).then((data)=>{
// ... // ...
this.copyVisible = false this.recaptionVisible = false
this.checkList = [] this.checkList = []
this.takeResultVisible = true this.takeResultVisible = true
setTimeout(() => { setTimeout(() => {
if(this.takeResultVisible) { if(this.takeResultVisible) {
this.takeResultVisible = false this.takeResultVisible = false
} }
}, 2000) }, 700)
}).catch((error)=>{ }).catch((error)=>{
this.$message({ this.$message({
showClose: true, showClose: true,

Loading…
Cancel
Save