Merge branch 'bigPic'
This commit is contained in:
@ -4,7 +4,7 @@
|
||||
<vue-seamless-scroll
|
||||
ref="seamlessScroll"
|
||||
:data="listData"
|
||||
class="warp"
|
||||
class="warp-scroll"
|
||||
:class-option="{
|
||||
openWatch: true,
|
||||
singleHeight: 35,
|
||||
@ -185,7 +185,7 @@ export default {
|
||||
}
|
||||
}
|
||||
|
||||
.warp {
|
||||
.warp-scroll {
|
||||
height: 280px;
|
||||
width: 440px;
|
||||
margin: 0 auto;
|
||||
|
@ -1,62 +1,82 @@
|
||||
<template>
|
||||
<div>
|
||||
<container4 title="今日动态">
|
||||
<vue-seamless-scroll :data="listData" class="warp" :class-option="{
|
||||
singleHeight: 35
|
||||
}">
|
||||
<vue-seamless-scroll
|
||||
:data="listData"
|
||||
class="warp-scroll"
|
||||
:class-option="{
|
||||
singleHeight: 35,
|
||||
}"
|
||||
>
|
||||
<ul class="item">
|
||||
<li>
|
||||
<el-row>
|
||||
<el-col :span="10"><img src="./img/center2/1.png">今日收入</el-col>
|
||||
<el-col :span="10"
|
||||
><img src="./img/center2/1.png" />今日收入</el-col
|
||||
>
|
||||
<el-col :span="5">1234万</el-col>
|
||||
<el-col :span="7"></el-col>
|
||||
</el-row>
|
||||
</li>
|
||||
<li>
|
||||
<el-row>
|
||||
<el-col :span="10"><img src="./img/center2/2.png">今日支出</el-col>
|
||||
<el-col :span="10"
|
||||
><img src="./img/center2/2.png" />今日支出</el-col
|
||||
>
|
||||
<el-col :span="5">1234万</el-col>
|
||||
<el-col :span="7"></el-col>
|
||||
</el-row>
|
||||
</li>
|
||||
<li>
|
||||
<el-row>
|
||||
<el-col :span="10"><img src="./img/center2/3.png">今日新签合同</el-col>
|
||||
<el-col :span="10"
|
||||
><img src="./img/center2/3.png" />今日新签合同</el-col
|
||||
>
|
||||
<el-col :span="5">1234份</el-col>
|
||||
<el-col :span="7"></el-col>
|
||||
</el-row>
|
||||
</li>
|
||||
<li>
|
||||
<el-row>
|
||||
<el-col :span="10"><img src="./img/center2/4.png">今日安全问题</el-col>
|
||||
<el-col :span="10"
|
||||
><img src="./img/center2/4.png" />今日安全问题</el-col
|
||||
>
|
||||
<el-col :span="5">1234个</el-col>
|
||||
<el-col :span="7"></el-col>
|
||||
</el-row>
|
||||
</li>
|
||||
<li>
|
||||
<el-row>
|
||||
<el-col :span="10"><img src="./img/center2/5.png">今日质量问题</el-col>
|
||||
<el-col :span="10"
|
||||
><img src="./img/center2/5.png" />今日质量问题</el-col
|
||||
>
|
||||
<el-col :span="5">1234个</el-col>
|
||||
<el-col :span="7"></el-col>
|
||||
</el-row>
|
||||
</li>
|
||||
<li>
|
||||
<el-row>
|
||||
<el-col :span="10"><img src="./img/center2/6.png">今日设备数</el-col>
|
||||
<el-col :span="10"
|
||||
><img src="./img/center2/6.png" />今日设备数</el-col
|
||||
>
|
||||
<el-col :span="5">123台</el-col>
|
||||
<el-col :span="7">运行率:88%</el-col>
|
||||
</el-row>
|
||||
</li>
|
||||
<li>
|
||||
<el-row>
|
||||
<el-col :span="10"><img src="./img/center2/7.png">今日职工数</el-col>
|
||||
<el-col :span="10"
|
||||
><img src="./img/center2/7.png" />今日职工数</el-col
|
||||
>
|
||||
<el-col :span="5">890人</el-col>
|
||||
<el-col :span="7">出勤率:73%</el-col>
|
||||
</el-row>
|
||||
</li>
|
||||
<li>
|
||||
<el-row>
|
||||
<el-col :span="10"><img src="./img/center2/8.png">今日生产任务</el-col>
|
||||
<el-col :span="10"
|
||||
><img src="./img/center2/8.png" />今日生产任务</el-col
|
||||
>
|
||||
<el-col :span="5">890个</el-col>
|
||||
<el-col :span="7">完成率:66%</el-col>
|
||||
</el-row>
|
||||
@ -65,39 +85,32 @@
|
||||
</vue-seamless-scroll>
|
||||
</container4>
|
||||
</div>
|
||||
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import container4 from "./components/container4/index.vue";
|
||||
import rocketTit from "../components/rocketTit/index.vue";
|
||||
import vueSeamlessScroll from 'vue-seamless-scroll'
|
||||
import echarts from 'echarts'
|
||||
require('echarts/theme/macarons') // echarts theme
|
||||
import resize from '../../dashboard/mixins/resize'
|
||||
import vueSeamlessScroll from "vue-seamless-scroll";
|
||||
import echarts from "echarts";
|
||||
require("echarts/theme/macarons"); // echarts theme
|
||||
import resize from "../../dashboard/mixins/resize";
|
||||
export default {
|
||||
mixins: [resize],
|
||||
name: 'left1',
|
||||
name: "left1",
|
||||
components: {
|
||||
container4,
|
||||
rocketTit,
|
||||
vueSeamlessScroll
|
||||
vueSeamlessScroll,
|
||||
},
|
||||
data () {
|
||||
data() {
|
||||
return {
|
||||
listData: [1, 2, 3, 4, 5, 6, 7, 8],
|
||||
}
|
||||
};
|
||||
},
|
||||
mounted () {
|
||||
|
||||
},
|
||||
beforeDestroy () {
|
||||
|
||||
},
|
||||
methods: {
|
||||
|
||||
}
|
||||
}
|
||||
mounted() {},
|
||||
beforeDestroy() {},
|
||||
methods: {},
|
||||
};
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@ -133,7 +146,7 @@ export default {
|
||||
}
|
||||
}
|
||||
|
||||
.warp {
|
||||
.warp-scroll {
|
||||
height: 280px;
|
||||
width: 440px;
|
||||
margin: 0 auto;
|
||||
|
@ -50,11 +50,10 @@
|
||||
<div class="data-item">
|
||||
<div><span style="font-weight: bold">产品错、漏检率</span></div>
|
||||
<div class="box">
|
||||
<span
|
||||
>{{ dataInfo.realErrorCheckRate }}%/{{
|
||||
dataInfo.targetErrorCheckRate
|
||||
}}%</span
|
||||
>
|
||||
<span>
|
||||
{{ dataInfo.realErrorCheckRate }}%
|
||||
<!-- /{{dataInfo.targetErrorCheckRate}}% -->
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="data-item">
|
||||
@ -110,6 +109,8 @@ export default {
|
||||
commonlyProblemTotal: 0,
|
||||
lowProblemTotal: 0,
|
||||
smallProductCate: 0,
|
||||
realErrorCheckRate: 0,
|
||||
targetErrorCheckRate: 0,
|
||||
errorCheckRate: 0,
|
||||
leakCheckRate: 0,
|
||||
planCompleteRate: 0,
|
||||
|
@ -113,7 +113,7 @@ export default {
|
||||
yAxis: {
|
||||
type: "value",
|
||||
name: "",
|
||||
min: 0,
|
||||
min: resData.spc.lowerLimit - 50,
|
||||
// max: 250,
|
||||
// interval: 50,
|
||||
axisLabel: {
|
||||
|
@ -53,7 +53,7 @@
|
||||
step: 0.5,
|
||||
direction: 2,
|
||||
}"
|
||||
class="warp"
|
||||
class="warp-scroll"
|
||||
>
|
||||
<ul class="ul-item">
|
||||
<li
|
||||
@ -246,7 +246,7 @@ export default {
|
||||
float: right;
|
||||
}
|
||||
}
|
||||
.warp {
|
||||
.warp-scroll {
|
||||
// height: 100px;
|
||||
margin: 0 auto;
|
||||
margin-top: 25px;
|
||||
|
@ -10,7 +10,9 @@
|
||||
<div class="trends-item-content">
|
||||
<div class="tit">作业工房/总数</div>
|
||||
<div class="value">
|
||||
{{ dataInfo.workingWorkshopTotal }}/<span class="small">{{ dataInfo.workshopTotal }}</span>
|
||||
{{ dataInfo.workingWorkshopTotal }}/<span class="small">{{
|
||||
dataInfo.workshopTotal
|
||||
}}</span>
|
||||
</div>
|
||||
<div class="progressBar">
|
||||
<progressBar :percentage="percentage" v-if="percentage" />
|
||||
@ -26,7 +28,9 @@
|
||||
<div class="trends-item-content">
|
||||
<div class="tit">人员数量/出勤率</div>
|
||||
<div class="value">
|
||||
{{ dataInfo.realAttendance }}/<span class="small">{{ (dataInfo.attendanceRate - 0).toFixed(0) }}%</span>
|
||||
{{ dataInfo.realAttendance }}/<span class="small"
|
||||
>{{ (dataInfo.attendanceRate - 0).toFixed(0) }}%</span
|
||||
>
|
||||
</div>
|
||||
<div class="progressBar">
|
||||
<progressBar :percentage="dataInfo.attendanceRate" />
|
||||
@ -46,7 +50,9 @@
|
||||
<div class="trends-item-content">
|
||||
<div class="tit">设备运行数量/运行率</div>
|
||||
<div class="value">
|
||||
{{ dataInfo.equipmentRunTotal }}/<span class="small">{{ dataInfo.equipmentRunRate }}%</span>
|
||||
{{ dataInfo.equipmentRunTotal }}/<span class="small"
|
||||
>{{ dataInfo.equipmentRunRate }}%</span
|
||||
>
|
||||
</div>
|
||||
<div class="progressBar">
|
||||
<progressBar :percentage="dataInfo.equipmentRunRate" />
|
||||
@ -76,17 +82,22 @@
|
||||
<div class="right">{{ carTotal.useTotal }}<span>辆</span></div>
|
||||
</div>
|
||||
<div style="margin: 5px 0 10px 0">
|
||||
<progressBar :percentage="carTotal.useTotal / carTotal.total || 0" :strokeWidth="12" />
|
||||
<progressBar
|
||||
:percentage="carTotal.useTotal / carTotal.total || 0"
|
||||
:strokeWidth="12"
|
||||
/>
|
||||
</div>
|
||||
<div class="describe">
|
||||
<div class="left">总车辆数:{{ carTotal.total }}</div>
|
||||
<div class="right">使用率:{{ carTotal.useTotal / carTotal.total || 0 }}%</div>
|
||||
<div class="right">
|
||||
使用率:{{ carTotal.useTotal / carTotal.total || 0 }}%
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<vue-seamless-scroll
|
||||
ref="seamlessScroll"
|
||||
:data="listData"
|
||||
class="warp"
|
||||
class="warp-scroll"
|
||||
:class-option="{
|
||||
singleHeight: 48,
|
||||
}"
|
||||
@ -94,13 +105,23 @@
|
||||
<ul class="item">
|
||||
<li v-for="item in listData" :key="item.id">
|
||||
<el-row>
|
||||
<el-col :span="10"><img src="./img/1.png" />{{ item.carName }}</el-col>
|
||||
<el-col :span="10"
|
||||
><img src="./img/1.png" />{{ item.carName }}</el-col
|
||||
>
|
||||
<el-col :span="6">
|
||||
<div class="state success" v-if="item.carStatus == '使用中'">{{ item.carStatus }}</div>
|
||||
<div class="state info" v-if="item.carStatus == '闲置'">{{ item.carStatus }}</div>
|
||||
<div class="state fault" v-if="item.carStatus == '故障'">{{ item.carStatus }}</div>
|
||||
<div class="state success" v-if="item.carStatus == '使用中'">
|
||||
{{ item.carStatus }}
|
||||
</div>
|
||||
<div class="state info" v-if="item.carStatus == '闲置'">
|
||||
{{ item.carStatus }}
|
||||
</div>
|
||||
<div class="state fault" v-if="item.carStatus == '故障'">
|
||||
{{ item.carStatus }}
|
||||
</div>
|
||||
</el-col>
|
||||
<el-col :span="8" style="text-align: right"><img src="./img/2.png" />{{ item.nowAddress }}</el-col>
|
||||
<el-col :span="8" style="text-align: right"
|
||||
><img src="./img/2.png" />{{ item.nowAddress }}</el-col
|
||||
>
|
||||
</el-row>
|
||||
</li>
|
||||
</ul>
|
||||
@ -110,9 +131,9 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import container1 from './components/container1/index.vue'
|
||||
import progressBar from '@/views/bigScreen/components/progress/index.vue'
|
||||
import vueSeamlessScroll from 'vue-seamless-scroll'
|
||||
import container1 from "./components/container1/index.vue";
|
||||
import progressBar from "@/views/bigScreen/components/progress/index.vue";
|
||||
import vueSeamlessScroll from "vue-seamless-scroll";
|
||||
export default {
|
||||
components: {
|
||||
container1, //#endregion,
|
||||
@ -123,49 +144,51 @@ export default {
|
||||
return {
|
||||
listData: [],
|
||||
dataInfo: {
|
||||
workingWorkshopTotal:0,
|
||||
workshopTotal:0,
|
||||
realAttendance:0,
|
||||
attendanceRate:0,
|
||||
equipmentRunTotal:0,
|
||||
equipmentRunRate:0,
|
||||
videoCollectionRate:0,
|
||||
workingWorkshopTotal: 0,
|
||||
workshopTotal: 0,
|
||||
realAttendance: 0,
|
||||
attendanceRate: 0,
|
||||
equipmentRunTotal: 0,
|
||||
equipmentRunRate: 0,
|
||||
videoCollectionRate: 0,
|
||||
},
|
||||
carTotal: {
|
||||
total:0,
|
||||
useTotal:0
|
||||
total: 0,
|
||||
useTotal: 0,
|
||||
},
|
||||
}
|
||||
};
|
||||
},
|
||||
computed: {
|
||||
percentage() {
|
||||
return (this.dataInfo.workingWorkshopTotal / this.dataInfo.workshopTotal) * 100
|
||||
return (
|
||||
(this.dataInfo.workingWorkshopTotal / this.dataInfo.workshopTotal) * 100
|
||||
);
|
||||
},
|
||||
},
|
||||
methods: {
|
||||
getList() {
|
||||
this.request({
|
||||
url: '/hx/scientificProduction/getHxFactoryResourcesPic',
|
||||
url: "/hx/scientificProduction/getHxFactoryResourcesPic",
|
||||
}).then(({ data }) => {
|
||||
this.dataInfo = data
|
||||
})
|
||||
this.dataInfo = data;
|
||||
});
|
||||
this.request({
|
||||
url: '/hx/scientificProduction/getHxCarUsePic1',
|
||||
url: "/hx/scientificProduction/getHxCarUsePic1",
|
||||
}).then(({ data }) => {
|
||||
this.carTotal = data
|
||||
})
|
||||
this.carTotal = data;
|
||||
});
|
||||
this.request({
|
||||
url: '/hx/scientificProduction/getHxCarUsePic2',
|
||||
url: "/hx/scientificProduction/getHxCarUsePic2",
|
||||
}).then(({ data }) => {
|
||||
this.listData = data
|
||||
this.$refs.seamlessScroll.reset()
|
||||
})
|
||||
this.listData = data;
|
||||
this.$refs.seamlessScroll.reset();
|
||||
});
|
||||
},
|
||||
},
|
||||
created() {
|
||||
this.getList()
|
||||
this.getList();
|
||||
},
|
||||
}
|
||||
};
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@ -261,7 +284,7 @@ export default {
|
||||
}
|
||||
}
|
||||
|
||||
.warp {
|
||||
.warp-scroll {
|
||||
height: 128px;
|
||||
width: 100%;
|
||||
margin: 10px auto 0 auto;
|
||||
@ -294,7 +317,7 @@ export default {
|
||||
.state {
|
||||
position: relative;
|
||||
&::before {
|
||||
content: '';
|
||||
content: "";
|
||||
display: block;
|
||||
position: absolute;
|
||||
left: -16px;
|
||||
|
@ -2,32 +2,52 @@
|
||||
<container3 title="全厂作业明细" :width="535" :height="975">
|
||||
<vue-seamless-scroll
|
||||
:data="listData"
|
||||
class="warp"
|
||||
class="warp-scroll"
|
||||
:class-option="{
|
||||
singleHeight: 84,
|
||||
}"
|
||||
>
|
||||
<ul>
|
||||
<li class="item" :class="item.dangerLevel == '一级' ? 'active' : ''" v-for="item in listData" :key="item.id">
|
||||
<li
|
||||
class="item"
|
||||
:class="item.dangerLevel == '一级' ? 'active' : ''"
|
||||
v-for="item in listData"
|
||||
:key="item.id"
|
||||
>
|
||||
<div class="item-tit">{{ item.workHome }}</div>
|
||||
<div class="item-content">
|
||||
<el-row>
|
||||
<el-col :span="12"
|
||||
><span class="text-tit">车间:</span><span class="text-val">{{ item.workshop }}</span></el-col
|
||||
><span class="text-tit">车间:</span
|
||||
><span class="text-val">{{ item.workshop }}</span></el-col
|
||||
>
|
||||
<el-col :span="12"
|
||||
><span class="text-tit">产品:</span><span class="text-val">{{ item.product }}</span></el-col
|
||||
><span class="text-tit">产品:</span
|
||||
><span class="text-val">{{ item.product }}</span></el-col
|
||||
>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="12"
|
||||
><span class="text-tit">工序:</span><span class="text-val">{{ item.procedure }}</span></el-col
|
||||
><span class="text-tit">工序:</span
|
||||
><span class="text-val">{{ item.procedure }}</span></el-col
|
||||
>
|
||||
<el-col :span="12">
|
||||
<span class="text-tit">危险级别:</span>
|
||||
<span class="text-val level1" v-if="item.dangerLevel == '一级'">{{ item.dangerLevel }}</span>
|
||||
<span class="text-val level2" v-if="item.dangerLevel == '二级'">{{ item.dangerLevel }}</span>
|
||||
<span class="text-val level3" v-if="item.dangerLevel == '三级'">{{ item.dangerLevel }}</span>
|
||||
<span
|
||||
class="text-val level1"
|
||||
v-if="item.dangerLevel == '一级'"
|
||||
>{{ item.dangerLevel }}</span
|
||||
>
|
||||
<span
|
||||
class="text-val level2"
|
||||
v-if="item.dangerLevel == '二级'"
|
||||
>{{ item.dangerLevel }}</span
|
||||
>
|
||||
<span
|
||||
class="text-val level3"
|
||||
v-if="item.dangerLevel == '三级'"
|
||||
>{{ item.dangerLevel }}</span
|
||||
>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
@ -36,7 +56,9 @@
|
||||
</vue-seamless-scroll>
|
||||
<div class="sub">
|
||||
<div class="sub-left">
|
||||
<div class="sub-tit"><img src="./img/sub/sub1.png" alt="" />装药当前作业内容</div>
|
||||
<div class="sub-tit">
|
||||
<img src="./img/sub/sub1.png" alt="" />装药当前作业内容
|
||||
</div>
|
||||
<div class="sub-content">
|
||||
<div class="sub-item">
|
||||
<div class="sub-item-tit">编 号:</div>
|
||||
@ -65,7 +87,9 @@
|
||||
</div>
|
||||
</div>
|
||||
<div class="sub-right">
|
||||
<div class="sub-tit"><img src="./img/sub/sub2.png" alt="" />酯生产量</div>
|
||||
<div class="sub-tit">
|
||||
<img src="./img/sub/sub2.png" alt="" />硝酸酯生产量
|
||||
</div>
|
||||
<div class="sub-content">
|
||||
<div class="sub-item">
|
||||
<div class="sub-item-tit">{{ twoData.jobContent }}</div>
|
||||
@ -79,7 +103,7 @@
|
||||
<div class="sub-item-val">{{ twoData.forecastEndDate }}</div>
|
||||
</div>
|
||||
<div class="sub-item">
|
||||
<div class="sub-item-tit">酯生产量:</div>
|
||||
<div class="sub-item-tit">硝酸酯生产量:</div>
|
||||
<div class="sub-item-val">{{ twoData.esterProduction }}</div>
|
||||
</div>
|
||||
<div class="sub-item">
|
||||
@ -92,8 +116,8 @@
|
||||
</container3>
|
||||
</template>
|
||||
<script>
|
||||
import container3 from './components/container3/index.vue'
|
||||
import vueSeamlessScroll from 'vue-seamless-scroll'
|
||||
import container3 from "./components/container3/index.vue";
|
||||
import vueSeamlessScroll from "vue-seamless-scroll";
|
||||
export default {
|
||||
components: {
|
||||
container3, //#endregion,
|
||||
@ -104,41 +128,41 @@ export default {
|
||||
listData: [],
|
||||
oneData: {},
|
||||
twoData: {},
|
||||
}
|
||||
};
|
||||
},
|
||||
methods: {
|
||||
getList() {
|
||||
// 全厂作业明细
|
||||
this.request({
|
||||
url: '/hx/scientificProduction/getHxJobDetailsPic',
|
||||
url: "/hx/scientificProduction/getHxJobDetailsPic",
|
||||
}).then(({ data }) => {
|
||||
this.listData = data
|
||||
})
|
||||
this.listData = data;
|
||||
});
|
||||
// 装药当前作业内容
|
||||
this.request({
|
||||
url: '/hx/scientificProduction/getChargeJobContentPic',
|
||||
url: "/hx/scientificProduction/getChargeJobContentPic",
|
||||
}).then(({ data }) => {
|
||||
this.oneData = data
|
||||
})
|
||||
this.oneData = data;
|
||||
});
|
||||
},
|
||||
getTwoList() {
|
||||
// 酯生产量
|
||||
// 硝酸酯量
|
||||
this.request({
|
||||
url: '/hx/scientificProduction/getHxEsterProductionPic',
|
||||
url: "/hx/scientificProduction/getHxEsterProductionPic",
|
||||
}).then(({ data }) => {
|
||||
this.twoData = data
|
||||
})
|
||||
this.twoData = data;
|
||||
});
|
||||
},
|
||||
},
|
||||
created() {
|
||||
this.getList()
|
||||
this.getTwoList()
|
||||
this.getList();
|
||||
this.getTwoList();
|
||||
},
|
||||
}
|
||||
};
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.warp {
|
||||
.warp-scroll {
|
||||
height: 416px;
|
||||
width: 100%;
|
||||
margin: 10px auto 0 auto;
|
||||
|
@ -3,29 +3,54 @@
|
||||
<container1 title="物资计划">
|
||||
<div class="left3-content">
|
||||
<el-col :span="24" style="margin-bottom: 1px">
|
||||
<el-row style="height: 42px; line-height: 42px; background: rgba(0, 255, 255, 0.3)">
|
||||
<el-row
|
||||
style="
|
||||
height: 42px;
|
||||
line-height: 42px;
|
||||
background: rgba(0, 255, 255, 0.3);
|
||||
"
|
||||
>
|
||||
<el-col style="text-align: center" :span="4">序号</el-col>
|
||||
<el-col style="text-align: center" :span="4">物资名称</el-col>
|
||||
<el-col style="text-align: center" :span="3">现有库存</el-col>
|
||||
<el-col style="text-align: center" :span="6">是否开始备货采购</el-col>
|
||||
<el-col style="text-align: center" :span="6"
|
||||
>是否开始备货采购</el-col
|
||||
>
|
||||
<el-col style="text-align: center" :span="3">采购数量</el-col>
|
||||
<el-col style="text-align: center" :span="4">入库时间</el-col>
|
||||
</el-row>
|
||||
</el-col>
|
||||
<vue-seamless-scroll ref="seamlessScroll" :data="listData" class="warp" :class-option="{singleHeight: 42,}">
|
||||
<vue-seamless-scroll
|
||||
ref="seamlessScroll"
|
||||
:data="listData"
|
||||
class="warp-scroll"
|
||||
:class-option="{ singleHeight: 42 }"
|
||||
>
|
||||
<ul class="item">
|
||||
<li v-for="item in scrollList" :key="item.id">
|
||||
<el-row>
|
||||
<el-col style="text-align: center" :span="4">{{item.id}}</el-col>
|
||||
<el-col style="text-align: center" :title="item.materialName" :span="4">{{item.materialName}}</el-col>
|
||||
<el-col style="text-align: center" :span="3">{{item.stock}}</el-col>
|
||||
<el-col style="text-align: center" :span="4">{{
|
||||
item.id
|
||||
}}</el-col>
|
||||
<el-col
|
||||
style="text-align: center"
|
||||
:title="item.materialName"
|
||||
:span="4"
|
||||
>{{ item.materialName }}</el-col
|
||||
>
|
||||
<el-col style="text-align: center" :span="3">{{
|
||||
item.stock
|
||||
}}</el-col>
|
||||
|
||||
<el-col style="text-align: center" :span="6">
|
||||
{{item.startPurchase}}
|
||||
{{ item.startPurchase }}
|
||||
</el-col>
|
||||
<el-col style="text-align: center" :span="3">{{item.purchaseNumber}}</el-col>
|
||||
<el-col style="text-align: center" :span="4">{{item.createTime}}</el-col>
|
||||
|
||||
<el-col style="text-align: center" :span="3">{{
|
||||
item.purchaseNumber
|
||||
}}</el-col>
|
||||
<el-col style="text-align: center" :span="4">{{
|
||||
item.createTime
|
||||
}}</el-col>
|
||||
</el-row>
|
||||
</li>
|
||||
</ul>
|
||||
@ -33,49 +58,48 @@
|
||||
</div>
|
||||
</container1>
|
||||
</div>
|
||||
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import container1 from "./components/container1/index.vue";
|
||||
|
||||
import echarts from 'echarts'
|
||||
require('echarts/theme/macarons') // echarts theme
|
||||
import resize from '../../../dashboard/mixins/resize'
|
||||
import vueSeamlessScroll from 'vue-seamless-scroll'
|
||||
import echarts from "echarts";
|
||||
require("echarts/theme/macarons"); // echarts theme
|
||||
import resize from "../../../dashboard/mixins/resize";
|
||||
import vueSeamlessScroll from "vue-seamless-scroll";
|
||||
export default {
|
||||
mixins: [resize],
|
||||
name: 'left2',
|
||||
name: "left2",
|
||||
components: {
|
||||
container1,
|
||||
vueSeamlessScroll,
|
||||
},
|
||||
data () {
|
||||
data() {
|
||||
return {
|
||||
listData: [1, 2, 3, 4, 5, 6, 7, 8],
|
||||
scrollList: [],
|
||||
}
|
||||
};
|
||||
},
|
||||
mounted () {
|
||||
mounted() {
|
||||
this.$nextTick(() => {
|
||||
this.getData()
|
||||
})
|
||||
this.getData();
|
||||
});
|
||||
},
|
||||
methods: {
|
||||
getData () {
|
||||
getData() {
|
||||
this.request({
|
||||
url: '/hx/scientificProduction/getMaterialPlanPic',
|
||||
method: 'get',
|
||||
}).then(res => {
|
||||
url: "/hx/scientificProduction/getMaterialPlanPic",
|
||||
method: "get",
|
||||
}).then((res) => {
|
||||
if (200 == res.code) {
|
||||
this.scrollList = res.data;
|
||||
this.listData = Array(this.scrollList.length).fill(0);
|
||||
this.$refs.seamlessScroll.reset();
|
||||
}
|
||||
})
|
||||
});
|
||||
},
|
||||
}
|
||||
}
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@ -84,7 +108,7 @@ export default {
|
||||
|
||||
font-size: 14px;
|
||||
}
|
||||
.warp {
|
||||
.warp-scroll {
|
||||
height: 168px;
|
||||
width: 100%;
|
||||
margin: 10px auto 0 auto;
|
||||
|
@ -1,12 +1,30 @@
|
||||
<template>
|
||||
<div>
|
||||
<container1 title="里程牌及瓶颈短线工作计划">
|
||||
<el-select clearable slot="datePicker" v-model="value" size="mini" placeholder="请选择">
|
||||
<el-option v-for="item in selectData" :key="item" :label="item" :value="item"> </el-option>
|
||||
<el-select
|
||||
clearable
|
||||
slot="datePicker"
|
||||
v-model="value"
|
||||
size="mini"
|
||||
placeholder="请选择"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in selectData"
|
||||
:key="item"
|
||||
:label="item"
|
||||
:value="item"
|
||||
>
|
||||
</el-option>
|
||||
</el-select>
|
||||
<div class="left3-content">
|
||||
<el-col :span="24" style="margin-bottom: 1px">
|
||||
<el-row style="height: 42px; line-height: 42px; background: rgba(0, 255, 255, 0.3)">
|
||||
<el-row
|
||||
style="
|
||||
height: 42px;
|
||||
line-height: 42px;
|
||||
background: rgba(0, 255, 255, 0.3);
|
||||
"
|
||||
>
|
||||
<el-col style="text-align: center" :span="3">项目</el-col>
|
||||
<el-col style="text-align: center" :span="5">工作内容</el-col>
|
||||
<el-col style="text-align: center" :span="5">进展情况</el-col>
|
||||
@ -14,26 +32,47 @@
|
||||
<el-col style="text-align: center" :span="4">目标完成时间</el-col>
|
||||
</el-row>
|
||||
</el-col>
|
||||
<vue-seamless-scroll ref="seamlessScroll" :data="listData" class="warp" :class-option="{singleHeight: 42,}">
|
||||
<vue-seamless-scroll
|
||||
ref="seamlessScroll"
|
||||
:data="listData"
|
||||
class="warp-scroll"
|
||||
:class-option="{ singleHeight: 42 }"
|
||||
>
|
||||
<ul class="item">
|
||||
<li v-for="item in scrollList" :key="item.id">
|
||||
<el-row>
|
||||
<el-col style="text-align: center" :title="item.projectName" :span="3">{{ item.projectName }}</el-col>
|
||||
<el-col style="text-align: center" :title="item.jobContent" :span="5">{{ item.jobContent }}</el-col>
|
||||
<el-col
|
||||
style="text-align: center"
|
||||
:title="item.projectName"
|
||||
:span="3"
|
||||
>{{ item.projectName }}</el-col
|
||||
>
|
||||
<el-col
|
||||
style="text-align: center"
|
||||
:title="item.jobContent"
|
||||
:span="5"
|
||||
>{{ item.jobContent }}</el-col
|
||||
>
|
||||
<el-col style="text-align: center" :span="5">
|
||||
<span class="state" :class="{success: item.progress == '已完成',
|
||||
<span
|
||||
class="state"
|
||||
:class="{
|
||||
success: item.progress == '已完成',
|
||||
fault: item.progress == '未完成',
|
||||
progress: item.progress == '未开始',
|
||||
}">
|
||||
}"
|
||||
>
|
||||
<section v-if="item.progress == 1">已完成</section>
|
||||
<section v-else-if="item.progress == 3">未完成</section>
|
||||
<section v-else>未开始</section>
|
||||
</span>
|
||||
|
||||
</el-col>
|
||||
<el-col style="text-align: center" :span="7">{{item.forecastCompleteTime}}</el-col>
|
||||
<el-col style="text-align: center" :span="4">{{item.targetCompleteTime}}</el-col>
|
||||
|
||||
<el-col style="text-align: center" :span="7">{{
|
||||
item.forecastCompleteTime
|
||||
}}</el-col>
|
||||
<el-col style="text-align: center" :span="4">{{
|
||||
item.targetCompleteTime
|
||||
}}</el-col>
|
||||
</el-row>
|
||||
</li>
|
||||
</ul>
|
||||
@ -41,52 +80,51 @@
|
||||
</div>
|
||||
</container1>
|
||||
</div>
|
||||
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import container1 from "./components/container1/index.vue";
|
||||
|
||||
import echarts from 'echarts'
|
||||
require('echarts/theme/macarons') // echarts theme
|
||||
import resize from '../../../dashboard/mixins/resize'
|
||||
import vueSeamlessScroll from 'vue-seamless-scroll'
|
||||
import echarts from "echarts";
|
||||
require("echarts/theme/macarons"); // echarts theme
|
||||
import resize from "../../../dashboard/mixins/resize";
|
||||
import vueSeamlessScroll from "vue-seamless-scroll";
|
||||
export default {
|
||||
mixins: [resize],
|
||||
name: 'left2',
|
||||
name: "left2",
|
||||
components: {
|
||||
container1,
|
||||
vueSeamlessScroll,
|
||||
},
|
||||
data () {
|
||||
data() {
|
||||
return {
|
||||
selectData: [],
|
||||
value: '',
|
||||
value: "",
|
||||
listData: [1, 2, 3, 4, 5, 6, 7, 8],
|
||||
scrollList: [],
|
||||
}
|
||||
};
|
||||
},
|
||||
watch: {
|
||||
value (newVal, oldVal) {
|
||||
this.getData(newVal)
|
||||
value(newVal, oldVal) {
|
||||
this.getData(newVal);
|
||||
},
|
||||
},
|
||||
mounted () {
|
||||
mounted() {
|
||||
this.$nextTick(() => {
|
||||
this.getData()
|
||||
})
|
||||
this.getData();
|
||||
});
|
||||
},
|
||||
methods: {
|
||||
getData (projectName) {
|
||||
getData(projectName) {
|
||||
let params = {};
|
||||
if (projectName) {
|
||||
params['projectName'] = projectName
|
||||
params["projectName"] = projectName;
|
||||
}
|
||||
this.request({
|
||||
url: '/hx/scientificProduction/getMilepostAndBottleneckPic',
|
||||
method: 'get',
|
||||
url: "/hx/scientificProduction/getMilepostAndBottleneckPic",
|
||||
method: "get",
|
||||
params,
|
||||
}).then(res => {
|
||||
}).then((res) => {
|
||||
if (200 == res.code) {
|
||||
this.scrollList = res.data.list;
|
||||
this.listData = Array(this.scrollList.length).fill(0);
|
||||
@ -95,10 +133,10 @@ export default {
|
||||
this.selectData = res.data.allProject;
|
||||
}
|
||||
}
|
||||
})
|
||||
});
|
||||
},
|
||||
}
|
||||
}
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@ -107,7 +145,7 @@ export default {
|
||||
|
||||
font-size: 14px;
|
||||
}
|
||||
.warp {
|
||||
.warp-scroll {
|
||||
height: 168px;
|
||||
width: 100%;
|
||||
margin: 10px auto 0 auto;
|
||||
|
@ -3,7 +3,13 @@
|
||||
<container1 title="调度会">
|
||||
<div class="left3-content">
|
||||
<el-col :span="24" style="margin-bottom: 1px">
|
||||
<el-row style="height: 42px; line-height: 42px; background: rgba(0, 255, 255, 0.3)">
|
||||
<el-row
|
||||
style="
|
||||
height: 42px;
|
||||
line-height: 42px;
|
||||
background: rgba(0, 255, 255, 0.3);
|
||||
"
|
||||
>
|
||||
<el-col style="text-align: center" :span="4">工作内容</el-col>
|
||||
<el-col style="text-align: center" :span="5">会议名称</el-col>
|
||||
<el-col style="text-align: center" :span="5">督办领导</el-col>
|
||||
@ -11,22 +17,50 @@
|
||||
<el-col style="text-align: center" :span="3">工作进展</el-col>
|
||||
</el-row>
|
||||
</el-col>
|
||||
<vue-seamless-scroll ref="seamlessScroll" :data="listData" class="warp" :class-option="{singleHeight: 42,}">
|
||||
<vue-seamless-scroll
|
||||
ref="seamlessScroll"
|
||||
:data="listData"
|
||||
class="warp-scroll"
|
||||
:class-option="{ singleHeight: 42 }"
|
||||
>
|
||||
<ul class="item">
|
||||
<li v-for="item in scrollList" :key="item.id">
|
||||
<el-row>
|
||||
<el-col style="text-align: center" :title="item.jobContent" :span="4">{{item.jobContent}}</el-col>
|
||||
<el-col style="text-align: center" :title="item.meetingName" :span="5">{{item.meetingName}}</el-col>
|
||||
<el-col style="text-align: center" :title="item.checkLeader" :span="5">
|
||||
{{item.checkLeader}}
|
||||
<el-col
|
||||
style="text-align: center"
|
||||
:title="item.jobContent"
|
||||
:span="4"
|
||||
>{{ item.jobContent }}</el-col
|
||||
>
|
||||
<el-col
|
||||
style="text-align: center"
|
||||
:title="item.meetingName"
|
||||
:span="5"
|
||||
>{{ item.meetingName }}</el-col
|
||||
>
|
||||
<el-col
|
||||
style="text-align: center"
|
||||
:title="item.checkLeader"
|
||||
:span="5"
|
||||
>
|
||||
{{ item.checkLeader }}
|
||||
</el-col>
|
||||
<el-col style="text-align: center" :title="item.responsibleUnit" :span="7">{{item.responsibleUnit}}</el-col>
|
||||
<el-col
|
||||
style="text-align: center"
|
||||
:title="item.responsibleUnit"
|
||||
:span="7"
|
||||
>{{ item.responsibleUnit }}</el-col
|
||||
>
|
||||
<el-col style="text-align: center" :span="3">
|
||||
<span class="state" :class="{success: item.workProgress == '已完成',
|
||||
<span
|
||||
class="state"
|
||||
:class="{
|
||||
success: item.workProgress == '已完成',
|
||||
fault: item.workProgress == '未完成',
|
||||
progress: item.workProgress == '未开始',
|
||||
}">
|
||||
<section>{{item.workProgress|| '未开始'}}</section>
|
||||
}"
|
||||
>
|
||||
<section>{{ item.workProgress || "未开始" }}</section>
|
||||
</span>
|
||||
</el-col>
|
||||
</el-row>
|
||||
@ -36,50 +70,48 @@
|
||||
</div>
|
||||
</container1>
|
||||
</div>
|
||||
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import container1 from "./components/container1/index.vue";
|
||||
|
||||
import echarts from 'echarts'
|
||||
require('echarts/theme/macarons') // echarts theme
|
||||
import resize from '../../../dashboard/mixins/resize'
|
||||
import vueSeamlessScroll from 'vue-seamless-scroll'
|
||||
import echarts from "echarts";
|
||||
require("echarts/theme/macarons"); // echarts theme
|
||||
import resize from "../../../dashboard/mixins/resize";
|
||||
import vueSeamlessScroll from "vue-seamless-scroll";
|
||||
export default {
|
||||
mixins: [resize],
|
||||
name: 'left2',
|
||||
name: "left2",
|
||||
components: {
|
||||
container1,
|
||||
vueSeamlessScroll,
|
||||
},
|
||||
data () {
|
||||
data() {
|
||||
return {
|
||||
listData: [1, 2, 3, 4, 5, 6, 7, 8],
|
||||
scrollList: [
|
||||
],
|
||||
}
|
||||
scrollList: [],
|
||||
};
|
||||
},
|
||||
mounted () {
|
||||
mounted() {
|
||||
this.$nextTick(() => {
|
||||
this.getData()
|
||||
})
|
||||
this.getData();
|
||||
});
|
||||
},
|
||||
methods: {
|
||||
getData () {
|
||||
getData() {
|
||||
this.request({
|
||||
url: '/hx/scientificProduction/getDispatchMeetingPic',
|
||||
method: 'get',
|
||||
}).then(res => {
|
||||
url: "/hx/scientificProduction/getDispatchMeetingPic",
|
||||
method: "get",
|
||||
}).then((res) => {
|
||||
if (200 == res.code) {
|
||||
this.scrollList = res.data;
|
||||
this.listData = Array(this.scrollList.length).fill(0);
|
||||
this.$refs.seamlessScroll.reset();
|
||||
}
|
||||
})
|
||||
});
|
||||
},
|
||||
}
|
||||
}
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@ -88,7 +120,7 @@ export default {
|
||||
|
||||
font-size: 14px;
|
||||
}
|
||||
.warp {
|
||||
.warp-scroll {
|
||||
height: 168px;
|
||||
width: 100%;
|
||||
margin: 10px auto 0 auto;
|
||||
|
@ -3,7 +3,13 @@
|
||||
<container1 title="人员管理">
|
||||
<div class="left3-content">
|
||||
<el-col :span="24" style="margin-bottom: 1px">
|
||||
<el-row style="height: 42px; line-height: 42px; background: rgba(0, 255, 255, 0.3)">
|
||||
<el-row
|
||||
style="
|
||||
height: 42px;
|
||||
line-height: 42px;
|
||||
background: rgba(0, 255, 255, 0.3);
|
||||
"
|
||||
>
|
||||
<el-col style="text-align: center" :span="4">班组名称</el-col>
|
||||
<el-col style="text-align: center" :span="4">人员数量</el-col>
|
||||
<el-col style="text-align: center" :span="4">班次数</el-col>
|
||||
@ -11,16 +17,33 @@
|
||||
<el-col style="text-align: center" :span="8">到岗人员</el-col>
|
||||
</el-row>
|
||||
</el-col>
|
||||
<vue-seamless-scroll ref="seamlessScroll" :data="listData" class="warp" :class-option="{singleHeight: 42,}">
|
||||
<vue-seamless-scroll
|
||||
ref="seamlessScroll"
|
||||
:data="listData"
|
||||
class="warp-scroll"
|
||||
:class-option="{ singleHeight: 42 }"
|
||||
>
|
||||
<ul class="item">
|
||||
<li v-for="item in scrollList" :key="item.id">
|
||||
<el-row>
|
||||
<el-col style="text-align: center" :span="4">{{item.teamName}}</el-col>
|
||||
<el-col style="text-align: center" :span="4">{{item.peopleTotal}}人</el-col>
|
||||
<el-col style="text-align: center" :span="4">{{item.shift}}
|
||||
<el-col style="text-align: center" :span="4">{{
|
||||
item.teamName
|
||||
}}</el-col>
|
||||
<el-col style="text-align: center" :span="4"
|
||||
>{{ item.peopleTotal }}人</el-col
|
||||
>
|
||||
<el-col style="text-align: center" :span="4"
|
||||
>{{ item.shift }}
|
||||
</el-col>
|
||||
<el-col style="text-align: center" :span="4">{{item.realWorkerTotal}}人</el-col>
|
||||
<el-col style="text-align: center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;" :span="8" :title="item.peopleList">{{item.peopleList}}</el-col>
|
||||
<el-col style="text-align: center" :span="4"
|
||||
>{{ item.realWorkerTotal }}人</el-col
|
||||
>
|
||||
<el-col
|
||||
style="text-align: center"
|
||||
:span="8"
|
||||
:title="item.peopleList"
|
||||
>{{ item.peopleList }}</el-col
|
||||
>
|
||||
</el-row>
|
||||
</li>
|
||||
</ul>
|
||||
@ -28,49 +51,48 @@
|
||||
</div>
|
||||
</container1>
|
||||
</div>
|
||||
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import container1 from "./components/container1/index.vue";
|
||||
|
||||
import echarts from 'echarts'
|
||||
require('echarts/theme/macarons') // echarts theme
|
||||
import resize from '../../../dashboard/mixins/resize'
|
||||
import vueSeamlessScroll from 'vue-seamless-scroll'
|
||||
import echarts from "echarts";
|
||||
require("echarts/theme/macarons"); // echarts theme
|
||||
import resize from "../../../dashboard/mixins/resize";
|
||||
import vueSeamlessScroll from "vue-seamless-scroll";
|
||||
export default {
|
||||
mixins: [resize],
|
||||
name: 'left2',
|
||||
name: "left2",
|
||||
components: {
|
||||
container1,
|
||||
vueSeamlessScroll,
|
||||
},
|
||||
data () {
|
||||
data() {
|
||||
return {
|
||||
listData: [1, 2, 3, 4, 5, 6, 7, 8],
|
||||
scrollList: [],
|
||||
}
|
||||
};
|
||||
},
|
||||
mounted () {
|
||||
mounted() {
|
||||
this.$nextTick(() => {
|
||||
this.getData()
|
||||
})
|
||||
this.getData();
|
||||
});
|
||||
},
|
||||
methods: {
|
||||
getData () {
|
||||
getData() {
|
||||
this.request({
|
||||
url: '/hx/scientificProduction/getTeamAttendancePic',
|
||||
method: 'get',
|
||||
}).then(res => {
|
||||
url: "/hx/scientificProduction/getTeamAttendancePic",
|
||||
method: "get",
|
||||
}).then((res) => {
|
||||
if (200 == res.code) {
|
||||
this.scrollList = res.data;
|
||||
this.listData = Array(this.scrollList.length).fill(0);
|
||||
this.$refs.seamlessScroll.reset();
|
||||
}
|
||||
})
|
||||
});
|
||||
},
|
||||
}
|
||||
}
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@ -79,7 +101,7 @@ export default {
|
||||
|
||||
font-size: 14px;
|
||||
}
|
||||
.warp {
|
||||
.warp-scroll {
|
||||
height: 168px;
|
||||
width: 100%;
|
||||
margin: 10px auto 0 auto;
|
||||
|
@ -1,7 +1,11 @@
|
||||
<template>
|
||||
<div style="display: flex">
|
||||
<container2 title="型号原材料及配套件">
|
||||
<bigScreenTabs slot="datePicker" v-model="index" :titleArr="['原材料', '配套件']"></bigScreenTabs>
|
||||
<bigScreenTabs
|
||||
slot="datePicker"
|
||||
v-model="index"
|
||||
:titleArr="['原材料', '配套件']"
|
||||
></bigScreenTabs>
|
||||
<el-select
|
||||
style="position: absolute; z-index: 1; left: 30px"
|
||||
v-model="value"
|
||||
@ -9,7 +13,13 @@
|
||||
placeholder="请选择"
|
||||
@change="getLeftChartData"
|
||||
>
|
||||
<el-option v-for="item in selectData" :key="item" :label="item" :value="item"> </el-option>
|
||||
<el-option
|
||||
v-for="item in selectData"
|
||||
:key="item"
|
||||
:label="item"
|
||||
:value="item"
|
||||
>
|
||||
</el-option>
|
||||
</el-select>
|
||||
<div class="tit_box">
|
||||
<div style="border: 1px solid #f6d97e">
|
||||
@ -31,7 +41,13 @@
|
||||
</div>
|
||||
<div style="height: 100%; width: 60%; padding-right: 15px">
|
||||
<div style="margin-bottom: 1px">
|
||||
<el-row style="height: 42px; line-height: 42px; background: rgba(0, 255, 255, 0.3)">
|
||||
<el-row
|
||||
style="
|
||||
height: 42px;
|
||||
line-height: 42px;
|
||||
background: rgba(0, 255, 255, 0.3);
|
||||
"
|
||||
>
|
||||
<el-col style="text-align: center" :span="4">项目</el-col>
|
||||
<el-col style="text-align: center" :span="7">关键原材料</el-col>
|
||||
<el-col style="text-align: center" :span="5">数量</el-col>
|
||||
@ -49,11 +65,21 @@
|
||||
<ul class="item">
|
||||
<li v-for="(item, index) in scrollData" :key="index">
|
||||
<el-row>
|
||||
<el-col style="text-align: center" :span="4">{{ item.projectName }}</el-col>
|
||||
<el-col style="text-align: center" :span="7">{{ item.category }}</el-col>
|
||||
<el-col style="text-align: center" :span="5">{{ item.total }}</el-col>
|
||||
<el-col style="text-align: center" :span="5">{{ item.arrivalTotal }}</el-col>
|
||||
<el-col style="text-align: center" :span="3">{{ item.usedTotal }}</el-col>
|
||||
<el-col style="text-align: center" :span="4">{{
|
||||
item.projectName
|
||||
}}</el-col>
|
||||
<el-col style="text-align: center" :span="7">{{
|
||||
item.category
|
||||
}}</el-col>
|
||||
<el-col style="text-align: center" :span="5">{{
|
||||
item.total
|
||||
}}</el-col>
|
||||
<el-col style="text-align: center" :span="5">{{
|
||||
item.arrivalTotal
|
||||
}}</el-col>
|
||||
<el-col style="text-align: center" :span="3">{{
|
||||
item.usedTotal
|
||||
}}</el-col>
|
||||
</el-row>
|
||||
</li>
|
||||
</ul>
|
||||
@ -62,7 +88,11 @@
|
||||
</div>
|
||||
</container2>
|
||||
<container1 style="margin-left: 14px" title="型号工位">
|
||||
<bigScreenTabs slot="datePicker" v-model="index2" :titleArr="['工位', '明细']"></bigScreenTabs>
|
||||
<bigScreenTabs
|
||||
slot="datePicker"
|
||||
v-model="index2"
|
||||
:titleArr="['工位', '明细']"
|
||||
></bigScreenTabs>
|
||||
<div class="trends">
|
||||
<div style="height: 100%; width: 100%" ref="chart2"></div>
|
||||
</div>
|
||||
@ -70,7 +100,13 @@
|
||||
<container1 style="margin-left: 14px" title="库房信息">
|
||||
<div class="trends">
|
||||
<div style="margin-bottom: 1px">
|
||||
<el-row style="height: 42px; line-height: 42px; background: rgba(0, 255, 255, 0.3)">
|
||||
<el-row
|
||||
style="
|
||||
height: 42px;
|
||||
line-height: 42px;
|
||||
background: rgba(0, 255, 255, 0.3);
|
||||
"
|
||||
>
|
||||
<el-col style="text-align: center" :span="5">名称</el-col>
|
||||
<el-col style="text-align: center" :span="5">库位编号</el-col>
|
||||
<el-col style="text-align: center" :span="7">库位类型</el-col>
|
||||
@ -87,15 +123,25 @@
|
||||
<ul class="item">
|
||||
<li v-for="(item, index) in scrollList" :key="index">
|
||||
<el-row>
|
||||
<el-col style="text-align: center" :span="5">{{ item.name }}</el-col>
|
||||
<el-col style="text-align: center" :span="5">{{ item.numberNo }}</el-col>
|
||||
<el-col style="text-align: center" :span="7">{{ item.category }}</el-col>
|
||||
<el-col style="text-align: center" :span="5">{{
|
||||
item.name
|
||||
}}</el-col>
|
||||
<el-col style="text-align: center" :span="5">{{
|
||||
item.numberNo
|
||||
}}</el-col>
|
||||
<el-col style="text-align: center" :span="7">{{
|
||||
item.category
|
||||
}}</el-col>
|
||||
<el-col style="text-align: center" :span="7">
|
||||
<section class="box">
|
||||
<span v-if="item.status == '使用中'" style="color: #6fd1b4; font-size: 25px; margin-right: 3px"
|
||||
<span
|
||||
v-if="item.status == '使用中'"
|
||||
style="color: #6fd1b4; font-size: 25px; margin-right: 3px"
|
||||
>·</span
|
||||
>
|
||||
<span v-else style="font-size: 25px; margin-right: 3px"
|
||||
>·</span
|
||||
>
|
||||
<span v-else style="font-size: 25px; margin-right: 3px">·</span>
|
||||
<span v-if="item.status == '使用中'">使用中</span>
|
||||
<span v-else>未启用</span>
|
||||
</section>
|
||||
@ -109,12 +155,12 @@
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import container1 from './components/container1/index.vue'
|
||||
import container2 from './components/container2/index.vue'
|
||||
import bigScreenTabs from '../../components/bigScreenTabs/index.vue'
|
||||
import vueSeamlessScroll from 'vue-seamless-scroll'
|
||||
import colorList from '@/utils/colorPalette'
|
||||
import echarts from 'echarts'
|
||||
import container1 from "./components/container1/index.vue";
|
||||
import container2 from "./components/container2/index.vue";
|
||||
import bigScreenTabs from "../../components/bigScreenTabs/index.vue";
|
||||
import vueSeamlessScroll from "vue-seamless-scroll";
|
||||
import colorList from "@/utils/colorPalette";
|
||||
import echarts from "echarts";
|
||||
export default {
|
||||
components: {
|
||||
container1,
|
||||
@ -127,105 +173,105 @@ export default {
|
||||
index: 0,
|
||||
index2: 0,
|
||||
chart: null,
|
||||
titVal: '原材料',
|
||||
titVal: "原材料",
|
||||
selectData: [],
|
||||
value: '',
|
||||
value: "",
|
||||
scrollData: [],
|
||||
scrollList: [],
|
||||
|
||||
dataList: [],
|
||||
pic1List: [],
|
||||
}
|
||||
};
|
||||
},
|
||||
mounted() {
|
||||
this.$nextTick(() => {
|
||||
this.initChart()
|
||||
this.initChart2()
|
||||
})
|
||||
this.initChart();
|
||||
this.initChart2();
|
||||
});
|
||||
},
|
||||
watch: {
|
||||
index(newVal, oldVal) {
|
||||
if (newVal == 0) {
|
||||
this.titVal = '原材料'
|
||||
this.titVal = "原材料";
|
||||
} else {
|
||||
this.titVal = '配套件'
|
||||
this.titVal = "配套件";
|
||||
}
|
||||
this.initChart()
|
||||
this.initChart();
|
||||
},
|
||||
},
|
||||
methods: {
|
||||
getData() {
|
||||
this.request({
|
||||
url: '/hx/scientificProduction/getStorehousePic',
|
||||
url: "/hx/scientificProduction/getStorehousePic",
|
||||
}).then(({ data }) => {
|
||||
this.scrollList = data
|
||||
})
|
||||
this.scrollList = data;
|
||||
});
|
||||
},
|
||||
getLeftChartData(e) {
|
||||
for (let i = 0; i < this.pic1List.length; i++) {
|
||||
const item = this.pic1List[i]
|
||||
const item = this.pic1List[i];
|
||||
if (e == item.model) {
|
||||
// lack // 缺少
|
||||
// used // 已用
|
||||
// arrival // 到货
|
||||
// existing // 现有
|
||||
if (item.lack) {
|
||||
this.dataList[0] = item.lack
|
||||
this.dataList[0] = item.lack;
|
||||
}
|
||||
if (item.used) {
|
||||
this.dataList[1] = item.used
|
||||
this.dataList[1] = item.used;
|
||||
}
|
||||
if (item.arrival) {
|
||||
this.dataList[2] = item.arrival
|
||||
this.dataList[2] = item.arrival;
|
||||
}
|
||||
if (item.existing) {
|
||||
this.dataList[3] = item.existing
|
||||
this.dataList[3] = item.existing;
|
||||
}
|
||||
this.setOptions()
|
||||
this.setOptions();
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
initChart() {
|
||||
this.request({
|
||||
url: '/hx/scientificProduction/getMaterialsAccessoriesPic',
|
||||
url: "/hx/scientificProduction/getMaterialsAccessoriesPic",
|
||||
params: {
|
||||
type: this.titVal,
|
||||
},
|
||||
}).then(({ data }) => {
|
||||
this.selectData = data.modelList
|
||||
this.value = data.modelList[0]
|
||||
this.pic1List = data.pic1
|
||||
this.scrollData = data.pic2
|
||||
this.selectData = data.modelList;
|
||||
this.value = data.modelList[0];
|
||||
this.pic1List = data.pic1;
|
||||
this.scrollData = data.pic2;
|
||||
for (let i = 0; i < data.pic1.length; i++) {
|
||||
const item = data.pic1[i]
|
||||
const item = data.pic1[i];
|
||||
if (this.value == item.model) {
|
||||
// lack // 缺少
|
||||
// used // 已用
|
||||
// arrival // 到货
|
||||
// existing // 现有
|
||||
if (item.lack) {
|
||||
this.dataList[0] = item.lack
|
||||
this.dataList[0] = item.lack;
|
||||
}
|
||||
if (item.used) {
|
||||
this.dataList[1] = item.used
|
||||
this.dataList[1] = item.used;
|
||||
}
|
||||
if (item.arrival) {
|
||||
this.dataList[2] = item.arrival
|
||||
this.dataList[2] = item.arrival;
|
||||
}
|
||||
if (item.existing) {
|
||||
this.dataList[3] = item.existing
|
||||
this.dataList[3] = item.existing;
|
||||
}
|
||||
this.chart = echarts.init(this.$refs.chart)
|
||||
this.setOptions()
|
||||
this.chart = echarts.init(this.$refs.chart);
|
||||
this.setOptions();
|
||||
}
|
||||
}
|
||||
})
|
||||
});
|
||||
},
|
||||
setOptions() {
|
||||
this.chart.setOption({
|
||||
polar: {
|
||||
radius: [100, '80%'],
|
||||
radius: [100, "80%"],
|
||||
},
|
||||
angleAxis: {
|
||||
max: Math.max(...this.dataList) + 100,
|
||||
@ -238,12 +284,12 @@ export default {
|
||||
},
|
||||
radiusAxis: {
|
||||
show: false,
|
||||
type: 'category',
|
||||
data: ['缺少', '已用', '到货', '现有'],
|
||||
type: "category",
|
||||
data: ["缺少", "已用", "到货", "现有"],
|
||||
z: 3,
|
||||
axisLabel: {
|
||||
show: false,
|
||||
color: '#f00',
|
||||
color: "#f00",
|
||||
},
|
||||
},
|
||||
// tooltip: {
|
||||
@ -273,78 +319,78 @@ export default {
|
||||
// },
|
||||
// },
|
||||
series: {
|
||||
type: 'bar',
|
||||
type: "bar",
|
||||
barWidth: 20,
|
||||
data: this.dataList,
|
||||
coordinateSystem: 'polar',
|
||||
coordinateSystem: "polar",
|
||||
label: {
|
||||
show: false,
|
||||
position: 'middle',
|
||||
formatter: '{b}: {c}',
|
||||
position: "middle",
|
||||
formatter: "{b}: {c}",
|
||||
},
|
||||
roundCap: true,
|
||||
itemStyle: {
|
||||
borderColor: 'green',
|
||||
borderColor: "green",
|
||||
opacity: 0.8,
|
||||
borderWidth: 1,
|
||||
normal: {
|
||||
//每个柱子的颜色即为colorList数组里的每一项,如果柱子数目多于colorList的长度,则柱子颜色循环使用该数组
|
||||
color: function (params) {
|
||||
var colorList = ['#fa8c16', '#8bb1ed', '#55c5a2', '#f6d97e']
|
||||
return colorList[params.dataIndex]
|
||||
var colorList = ["#fa8c16", "#8bb1ed", "#55c5a2", "#f6d97e"];
|
||||
return colorList[params.dataIndex];
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
})
|
||||
});
|
||||
},
|
||||
initChart2() {
|
||||
this.request({
|
||||
url: '/hx/scientificProduction/getModelStationPic',
|
||||
url: "/hx/scientificProduction/getModelStationPic",
|
||||
}).then(({ data }) => {
|
||||
this.chart2 = echarts.init(this.$refs.chart2)
|
||||
this.setOptions2(data)
|
||||
})
|
||||
this.chart2 = echarts.init(this.$refs.chart2);
|
||||
this.setOptions2(data);
|
||||
});
|
||||
},
|
||||
setOptions2(resData) {
|
||||
let titList = []
|
||||
let newData = []
|
||||
let titList = [];
|
||||
let newData = [];
|
||||
// coolingNumber // 降温数
|
||||
// freeNumber // 空闲数
|
||||
// riseNumber // 升温数
|
||||
// warmNumber // 保温数
|
||||
for (const key in resData) {
|
||||
if (Object.hasOwnProperty.call(resData, key)) {
|
||||
const item = resData[key]
|
||||
const item = resData[key];
|
||||
titList.push({
|
||||
name: key,
|
||||
value: item.total,
|
||||
})
|
||||
});
|
||||
for (const k in item) {
|
||||
if (Object.hasOwnProperty.call(item, k)) {
|
||||
let name = ''
|
||||
if (k == 'coolingNumber') name = '降温数'
|
||||
else if (k == 'freeNumber') name = '空闲数'
|
||||
else if (k == 'riseNumber') name = '升温数'
|
||||
else if (k == 'warmNumber') name = '保温数'
|
||||
if (name != '') {
|
||||
let name = "";
|
||||
if (k == "coolingNumber") name = "降温数";
|
||||
else if (k == "freeNumber") name = "空闲数";
|
||||
else if (k == "riseNumber") name = "升温数";
|
||||
else if (k == "warmNumber") name = "保温数";
|
||||
if (name != "") {
|
||||
newData.push({
|
||||
name,
|
||||
value:
|
||||
name == '降温数'
|
||||
? item['coolingNumber']
|
||||
: name == '空闲数'
|
||||
? item['freeNumber']
|
||||
: name == '升温数'
|
||||
? item['riseNumber']
|
||||
: name == '保温数'
|
||||
? item['warmNumber']
|
||||
: '',
|
||||
name == "降温数"
|
||||
? item["coolingNumber"]
|
||||
: name == "空闲数"
|
||||
? item["freeNumber"]
|
||||
: name == "升温数"
|
||||
? item["riseNumber"]
|
||||
: name == "保温数"
|
||||
? item["warmNumber"]
|
||||
: "",
|
||||
itemStyle: {
|
||||
color: item.stationName == '硫化' ? '#5B8FF9' : '#5AD8A6',
|
||||
borderColor: '#fff',
|
||||
color: item.stationName == "硫化" ? "#5B8FF9" : "#5AD8A6",
|
||||
borderColor: "#fff",
|
||||
},
|
||||
})
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -353,27 +399,27 @@ export default {
|
||||
|
||||
this.chart2.setOption({
|
||||
tooltip: {
|
||||
trigger: 'item',
|
||||
formatter: '{b}: {c}',
|
||||
position: 'inner',
|
||||
trigger: "item",
|
||||
formatter: "{b}: {c}",
|
||||
position: "inner",
|
||||
},
|
||||
series: [
|
||||
{
|
||||
name: '详情',
|
||||
type: 'pie',
|
||||
center: ['45%', '50%'],
|
||||
radius: ['60%', '80%'],
|
||||
name: "详情",
|
||||
type: "pie",
|
||||
center: ["45%", "50%"],
|
||||
radius: ["60%", "80%"],
|
||||
avoidLabelOverlap: false,
|
||||
hoverAnimation: false, // hover 效果
|
||||
label: {
|
||||
show: false,
|
||||
position: 'center',
|
||||
position: "center",
|
||||
},
|
||||
emphasis: {
|
||||
label: {
|
||||
show: false,
|
||||
fontSize: '40',
|
||||
fontWeight: 'bold',
|
||||
fontSize: "40",
|
||||
fontWeight: "bold",
|
||||
},
|
||||
},
|
||||
labelLine: {
|
||||
@ -388,8 +434,8 @@ export default {
|
||||
normal: {
|
||||
label: {
|
||||
show: true,
|
||||
formatter: '{b}',
|
||||
position: 'inner',
|
||||
formatter: "{b}",
|
||||
position: "inner",
|
||||
},
|
||||
labelLine: {
|
||||
show: true,
|
||||
@ -398,21 +444,21 @@ export default {
|
||||
},
|
||||
},
|
||||
{
|
||||
name: '详情',
|
||||
type: 'pie',
|
||||
radius: ['35%', '55%'],
|
||||
center: ['45%', '50%'],
|
||||
name: "详情",
|
||||
type: "pie",
|
||||
radius: ["35%", "55%"],
|
||||
center: ["45%", "50%"],
|
||||
avoidLabelOverlap: false,
|
||||
hoverAnimation: false, // hover 效果
|
||||
label: {
|
||||
show: false,
|
||||
position: 'center',
|
||||
position: "center",
|
||||
},
|
||||
emphasis: {
|
||||
label: {
|
||||
show: false,
|
||||
fontSize: '40',
|
||||
fontWeight: 'bold',
|
||||
fontSize: "40",
|
||||
fontWeight: "bold",
|
||||
},
|
||||
},
|
||||
labelLine: {
|
||||
@ -428,24 +474,24 @@ export default {
|
||||
normal: {
|
||||
label: {
|
||||
show: true,
|
||||
formatter: '{b}',
|
||||
position: 'inner',
|
||||
formatter: "{b}",
|
||||
position: "inner",
|
||||
},
|
||||
labelLine: {
|
||||
show: true,
|
||||
},
|
||||
},
|
||||
},
|
||||
color: ['#5B8FF9', '#5AD8A6'],
|
||||
color: ["#5B8FF9", "#5AD8A6"],
|
||||
},
|
||||
],
|
||||
})
|
||||
});
|
||||
},
|
||||
},
|
||||
created() {
|
||||
this.getData()
|
||||
this.getData();
|
||||
},
|
||||
}
|
||||
};
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
.tit_box {
|
||||
|
@ -1,32 +1,48 @@
|
||||
<template>
|
||||
<div class="app-container">
|
||||
<el-divider content-position="left"><span class="text-bold-18">全厂资源动态</span></el-divider>
|
||||
<el-divider content-position="left"
|
||||
><span class="text-bold-18">全厂资源动态</span></el-divider
|
||||
>
|
||||
<left1 />
|
||||
<el-divider content-position="left"><span class="text-bold-18">车辆管理</span></el-divider>
|
||||
<el-divider content-position="left"
|
||||
><span class="text-bold-18">车辆管理</span></el-divider
|
||||
>
|
||||
<left2 />
|
||||
<el-divider content-position="left"><span class="text-bold-18">本周计划</span></el-divider>
|
||||
<el-divider content-position="left"
|
||||
><span class="text-bold-18">本周计划</span></el-divider
|
||||
>
|
||||
<left3 />
|
||||
<el-divider content-position="left"><span class="text-bold-18">全厂工房作业信息</span></el-divider>
|
||||
<el-divider content-position="left"
|
||||
><span class="text-bold-18">全厂工房作业信息</span></el-divider
|
||||
>
|
||||
<center1 />
|
||||
<el-divider content-position="left"><span class="text-bold-18">危险点、工房图片管理</span></el-divider>
|
||||
<el-divider content-position="left"
|
||||
><span class="text-bold-18">危险点、工房图片管理</span></el-divider
|
||||
>
|
||||
<center2 />
|
||||
<el-divider content-position="left"><span class="text-bold-18">全厂作业明细</span></el-divider>
|
||||
<el-divider content-position="left"
|
||||
><span class="text-bold-18">全厂作业明细</span></el-divider
|
||||
>
|
||||
<right1 />
|
||||
<el-divider content-position="left"><span class="text-bold-18">装药当前作业内容</span></el-divider>
|
||||
<el-divider content-position="left"
|
||||
><span class="text-bold-18">装药当前作业内容</span></el-divider
|
||||
>
|
||||
<right2 />
|
||||
<el-divider content-position="left"><span class="text-bold-18">酯生产量</span></el-divider>
|
||||
<el-divider content-position="left"
|
||||
><span class="text-bold-18">硝酸酯生产量</span></el-divider
|
||||
>
|
||||
<right3 />
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import left1 from './left1.vue'
|
||||
import left2 from './left2.vue'
|
||||
import left3 from './left3.vue'
|
||||
import center1 from './center1.vue'
|
||||
import center2 from './center2.vue'
|
||||
import right1 from './right1.vue'
|
||||
import right2 from './right2.vue'
|
||||
import right3 from './right3.vue'
|
||||
import left1 from "./left1.vue";
|
||||
import left2 from "./left2.vue";
|
||||
import left3 from "./left3.vue";
|
||||
import center1 from "./center1.vue";
|
||||
import center2 from "./center2.vue";
|
||||
import right1 from "./right1.vue";
|
||||
import right2 from "./right2.vue";
|
||||
import right3 from "./right3.vue";
|
||||
export default {
|
||||
components: {
|
||||
left1,
|
||||
@ -38,7 +54,7 @@ export default {
|
||||
right2,
|
||||
right3,
|
||||
},
|
||||
}
|
||||
};
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
.app-container {
|
||||
|
@ -4,7 +4,14 @@
|
||||
<el-col :span="24" :xs="24">
|
||||
<el-row :gutter="10" class="mb8 fr">
|
||||
<el-col :span="1.5">
|
||||
<el-button type="info" plain icon="el-icon-upload2" size="mini" @click="handleImport">导入</el-button>
|
||||
<el-button
|
||||
type="info"
|
||||
plain
|
||||
icon="el-icon-upload2"
|
||||
size="mini"
|
||||
@click="handleImport"
|
||||
>导入</el-button
|
||||
>
|
||||
</el-col>
|
||||
<el-col :span="1.5">
|
||||
<el-button
|
||||
@ -23,9 +30,21 @@
|
||||
<el-table-column label="序号" align="center" prop="id" width="80" />
|
||||
<el-table-column label="酯工作内容" align="center" prop="jobContent" />
|
||||
<el-table-column label="开车时间" align="center" prop="driveDate" />
|
||||
<el-table-column label="预计结束时间" align="center" prop="forecastEndDate" />
|
||||
<el-table-column label="酯生产量" align="center" prop="esterProduction" />
|
||||
<el-table-column label="粘合剂干燥情况" align="center" prop="cleanStatus" />
|
||||
<el-table-column
|
||||
label="预计结束时间"
|
||||
align="center"
|
||||
prop="forecastEndDate"
|
||||
/>
|
||||
<el-table-column
|
||||
label="硝酸酯生产量"
|
||||
align="center"
|
||||
prop="esterProduction"
|
||||
/>
|
||||
<el-table-column
|
||||
label="粘合剂干燥情况"
|
||||
align="center"
|
||||
prop="cleanStatus"
|
||||
/>
|
||||
</el-table>
|
||||
|
||||
<pagination
|
||||
@ -39,7 +58,12 @@
|
||||
/>
|
||||
</el-col>
|
||||
<!-- 用户导入对话框 -->
|
||||
<el-dialog :title="upload.title" :visible.sync="upload.open" width="400px" append-to-body>
|
||||
<el-dialog
|
||||
:title="upload.title"
|
||||
:visible.sync="upload.open"
|
||||
width="400px"
|
||||
append-to-body
|
||||
>
|
||||
<el-upload
|
||||
ref="upload"
|
||||
:limit="1"
|
||||
@ -66,8 +90,8 @@
|
||||
</el-row>
|
||||
</template>
|
||||
<script>
|
||||
import { rightThreeList, rightThreeImportTemplate } from './indexApi'
|
||||
import { getToken } from '@/utils/auth'
|
||||
import { rightThreeList, rightThreeImportTemplate } from "./indexApi";
|
||||
import { getToken } from "@/utils/auth";
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
@ -89,27 +113,27 @@ export default {
|
||||
// 是否显示弹出层(用户导入)
|
||||
open: false,
|
||||
// 弹出层标题(用户导入)
|
||||
title: '',
|
||||
title: "",
|
||||
// 是否禁用上传
|
||||
isUploading: false,
|
||||
// 是否更新已经存在的用户数据
|
||||
updateSupport: 0,
|
||||
// 设置上传的请求头部
|
||||
headers: { Authorization: 'Bearer ' + getToken() },
|
||||
headers: { Authorization: "Bearer " + getToken() },
|
||||
// 上传的地址
|
||||
url: process.env.VUE_APP_BASE_API + '/hx/esterProduction/importData',
|
||||
url: process.env.VUE_APP_BASE_API + "/hx/esterProduction/importData",
|
||||
},
|
||||
}
|
||||
};
|
||||
},
|
||||
methods: {
|
||||
/** 查询用户列表 */
|
||||
getList() {
|
||||
this.loading = true
|
||||
rightThreeList(this.queryParams).then(res => {
|
||||
this.userList = res.rows
|
||||
this.total = res.total
|
||||
this.loading = false
|
||||
})
|
||||
this.loading = true;
|
||||
rightThreeList(this.queryParams).then((res) => {
|
||||
this.userList = res.rows;
|
||||
this.total = res.total;
|
||||
this.loading = false;
|
||||
});
|
||||
},
|
||||
/** 删除按钮操作 */
|
||||
// handleDelete(row) {
|
||||
@ -126,49 +150,49 @@ export default {
|
||||
// },
|
||||
/** 导出按钮操作 */
|
||||
handleExport() {
|
||||
const queryParams = this.queryParams
|
||||
const queryParams = this.queryParams;
|
||||
this.$modal
|
||||
.confirm('是否确认导出所有数据项?')
|
||||
.confirm("是否确认导出所有数据项?")
|
||||
.then(() => {
|
||||
this.exportLoading = true
|
||||
return exportUser(queryParams)
|
||||
this.exportLoading = true;
|
||||
return exportUser(queryParams);
|
||||
})
|
||||
.then(response => {
|
||||
this.$download.name(response.msg)
|
||||
this.exportLoading = false
|
||||
.then((response) => {
|
||||
this.$download.name(response.msg);
|
||||
this.exportLoading = false;
|
||||
})
|
||||
.catch(() => {})
|
||||
.catch(() => {});
|
||||
},
|
||||
/** 导入按钮操作 */
|
||||
handleImport() {
|
||||
this.upload.title = '数据导入'
|
||||
this.upload.open = true
|
||||
this.upload.title = "数据导入";
|
||||
this.upload.open = true;
|
||||
},
|
||||
/** 下载模板操作 */
|
||||
importTemplate() {
|
||||
rightThreeImportTemplate().then(response => {
|
||||
this.$download.name(response.msg)
|
||||
})
|
||||
rightThreeImportTemplate().then((response) => {
|
||||
this.$download.name(response.msg);
|
||||
});
|
||||
},
|
||||
// 文件上传中处理
|
||||
handleFileUploadProgress(event, file, fileList) {
|
||||
this.upload.isUploading = true
|
||||
this.upload.isUploading = true;
|
||||
},
|
||||
// 文件上传成功处理
|
||||
handleFileSuccess(response, file, fileList) {
|
||||
this.upload.open = false
|
||||
this.upload.isUploading = false
|
||||
this.$refs.upload.clearFiles()
|
||||
this.$alert(response.msg, '导入结果', { dangerouslyUseHTMLString: true })
|
||||
this.getList()
|
||||
this.upload.open = false;
|
||||
this.upload.isUploading = false;
|
||||
this.$refs.upload.clearFiles();
|
||||
this.$alert(response.msg, "导入结果", { dangerouslyUseHTMLString: true });
|
||||
this.getList();
|
||||
},
|
||||
// 提交上传文件
|
||||
submitFileForm() {
|
||||
this.$refs.upload.submit()
|
||||
this.$refs.upload.submit();
|
||||
},
|
||||
},
|
||||
created() {
|
||||
this.getList()
|
||||
this.getList();
|
||||
},
|
||||
}
|
||||
};
|
||||
</script>
|
||||
|
@ -35,7 +35,7 @@ module.exports = {
|
||||
[process.env.VUE_APP_BASE_API]: {
|
||||
// target: `http://localhost:1818`,
|
||||
// target: `http://120.26.107.74:1818`,
|
||||
target: `http://192.168.0.115:1818`,
|
||||
target: `http://192.168.0.154:1818`,
|
||||
// target: `http://124.70.138.50:1818`,
|
||||
changeOrigin: true,
|
||||
pathRewrite: {
|
||||
|
Reference in New Issue
Block a user