From bff85d777d7eb1e362adce089a287fd9bc85c03c Mon Sep 17 00:00:00 2001
From: shishuaikang <280848880@qq.com>
Date: 星期四, 07 十二月 2023 15:11:00 +0800
Subject: [PATCH] 1.搅合站分辨率修改 2.拌和站屏管理添加材料改成input 3.巡检任务bug修改
---
web/src/views/MixingInfo/messageInfo.vue | 117 ++++++++++++++++-------------
web/src/views/SecureManage/RiskGrad/AreaPolling.vue | 13 +++
web/src/views/SecureManage/RiskGrad/components/TaskPunchcard.vue | 21 +++-
web/src/views/SecureManage/RiskGrad/components/PollingTask.vue | 13 +++
web/src/views/GoodManage/MixRatioScreen.vue | 45 ++++++-----
5 files changed, 126 insertions(+), 83 deletions(-)
diff --git a/web/src/views/GoodManage/MixRatioScreen.vue b/web/src/views/GoodManage/MixRatioScreen.vue
index af1f047..16cdfa1 100644
--- a/web/src/views/GoodManage/MixRatioScreen.vue
+++ b/web/src/views/GoodManage/MixRatioScreen.vue
@@ -110,10 +110,11 @@
<div style="display: flex;">
<div style="margin-right: 10px;" v-for="(item, index) in ruleForm.infos " :key="index">
<el-form-item :label="index === 0 ? '材料名称' : ''" :prop="`infos.${index}.dictId`">
- <el-select v-model="item.dictId" size="mini" placeholder="请选择材料名称">
+ <!-- <el-select v-model="item.dictId" size="mini" placeholder="请选择材料名称">
<el-option v-for="item in selects.materials" :key="item.value" :label="item.label"
:value="item.value"></el-option>
- </el-select>
+ </el-select> -->
+ <el-input v-model="item.dictId" size="mini" placeholder="请输入" clearable></el-input>
</el-form-item>
<el-form-item :label="index === 0 ? '规格型号' : ''" :prop="`infos.${index}.spec`">
<el-input v-model="item.spec" size="mini" placeholder="请输入" clearable></el-input>
@@ -153,7 +154,7 @@
times: [], // 时间范围
selects: {
screenNames: [], // 配合比屏
- materials: [] // 材料名称
+ // materials: [] // 材料名称[先改成输入,,字典表材料不匹配]
}, // 下拉框状态选择汇总
tableData: [{
inType: '', // 录入方式
@@ -166,7 +167,7 @@
construction: '', // 施工部位
mixingConsumeId: '', // 每个材料id
dataLists: [
- {name: '材料名称', type: 'dictName', value: []}, // 材料名称
+ {name: '材料名称', type: 'dictId', value: []}, // 材料名称
{name: '规格型号', type: 'spec', value: []}, // 规格型号
{name: '生产厂家', type: 'manufacturer', value: []}, // 生产厂家
{name: '材料含水率(%)', type: 'watFull', value: []}, // 含水率
@@ -252,7 +253,7 @@
construction: '', // 施工部位
mixingConsumeId: '', // 每个材料id
dataLists: [
- {name: '材料名称', type: 'dictName', value: []}, // 材料名称
+ {name: '材料名称', type: 'dictId', value: []}, // 材料名称
{name: '规格型号', type: 'spec', value: []}, // 规格型号
{name: '生产厂家', type: 'manufacturer', value: []}, // 生产厂家
{name: '材料含水率(%)', type: 'watFull', value: []}, // 含水率
@@ -307,18 +308,18 @@
})
},
//获取字典表材料名称
- async getDicFilteredData() {
- let params = {pageNum: 1, pageSize: 100000000}
- let {data} = await this.$api.Dictionary.searchDictionary(params)
- data.list.forEach(item => {
- if (item.dictType === 'pipe_materials') {
- this.selects.materials.push({
- label: item.dictName,
- value: item.dictId,
- })
- }
- })
- },
+ // async getDicFilteredData() {
+ // let params = {pageNum: 1, pageSize: 100000000}
+ // let {data} = await this.$api.Dictionary.searchDictionary(params)
+ // data.list.forEach(item => {
+ // if (item.dictType === 'pipe_materials') {
+ // this.selects.materials.push({
+ // label: item.dictName,
+ // value: item.dictId,
+ // })
+ // }
+ // })
+ // },
// 获取配比屏名称
async getScreenNames() {
const params = {pageNum: 1, pageSize: 9999}
@@ -351,9 +352,9 @@
if (!this.isRenderDialog) {
this.isRenderDialog = true
}
- if (!this.selects.materials.length) {
- await this.getDicFilteredData()
- }
+ // if (!this.selects.materials.length) {
+ // await this.getDicFilteredData()
+ // }
this.asyncVisible = true
this.$nextTick(() => {
resolve()
@@ -372,7 +373,6 @@
this.submitMode = 'update'
this.showDialog().then(() => {
const {mixingSignboardId, proName, constructionUnit, saveStamp, construction, dataListFlat} = this.tableData[i]
- console.log(constructionUnit)
this.ruleForm = Object.assign(this.ruleForm, {
mixingSignboardId,
proName,
@@ -543,8 +543,11 @@
justify-content: center;
align-items: center;
flex: 1;
+ padding: 0 4px;
+ line-height: 24px;
margin: -1px -1px -1px 0;
border: 1px solid #01B3EF;
+ word-break: break-all;
}
}
}
diff --git a/web/src/views/MixingInfo/messageInfo.vue b/web/src/views/MixingInfo/messageInfo.vue
index dd43d75..26e9899 100644
--- a/web/src/views/MixingInfo/messageInfo.vue
+++ b/web/src/views/MixingInfo/messageInfo.vue
@@ -6,34 +6,37 @@
<div class="mixing_main">
<div class="mixing_left">
<div class="mixing_left_num">
- <div class="">{{mixingList&&mixingList.tableNum}}</div>
+ <div class="">{{ mixingList && mixingList.tableNum }}</div>
</div>
- <div class="mixing_left_name">{{mixingList&&mixingList.materialName}}</div>
+ <div class="mixing_left_name">{{ mixingList && mixingList.materialName }}</div>
</div>
<div class="mixing_right">
<div class="mixing_rows">
<div class="mixing_rows_titles">产地名称:</div>
- <div class="mixing_rows_datas">{{mixingList&&mixingList.nameOfOrigin}}</div>
+ <div class="mixing_rows_datas">{{ mixingList && mixingList.nameOfOrigin }}</div>
</div>
<div class="mixing_rows">
<div class="mixing_rows_titles">进场数量:</div>
- <div class="mixing_rows_datas">{{mixingList&&mixingList.incomingQuantity}} t</div>
+ <div class="mixing_rows_datas">{{ mixingList && mixingList.incomingQuantity }} t</div>
</div>
<div class="mixing_rows">
<div class="mixing_rows_titles">进场日期:</div>
- <div class="mixing_rows_datas">{{mixingList&&mixingList.inTime}}</div>
+ <div class="mixing_rows_datas">{{ mixingList && mixingList.inTime }}</div>
</div>
<div class="mixing_rows">
<div class="mixing_rows_titles">检验日期:</div>
- <div class="mixing_rows_datas">{{mixingList&&mixingList.inspectionDate}}</div>
+ <div class="mixing_rows_datas">{{ mixingList && mixingList.inspectionDate }}</div>
</div>
<div class="mixing_rows">
<div class="mixing_rows_titles">检验状态:</div>
- <div class="mixing_rows_datas" :class="{'standardStyle':mixingList.status===1,'notStandardStyle':mixingList.status!==1}">{{mixingList&&mixingList.status===1?'合格':mixingList&&mixingList.status===2?'待检':''}}</div>
+ <div class="mixing_rows_datas"
+ :class="{ 'standardStyle': mixingList.status === 1, 'notStandardStyle': mixingList.status !== 1 }">
+ {{ mixingList && mixingList.status === 1 ? '合格' : mixingList && mixingList.status === 2 ? '待检' : ''
+ }}</div>
</div>
<div class="mixing_rows">
<div class="mixing_rows_titles">报告编号:</div>
- <div class="mixing_rows_datas">{{mixingList&&mixingList.reportNumber}}</div>
+ <div class="mixing_rows_datas">{{ mixingList && mixingList.reportNumber }}</div>
</div>
</div>
</div>
@@ -41,21 +44,21 @@
</template>
<script>
export default {
- data(){
- return{
- timer:null,//定时器
- mixingList:null,//展示数据
+ data() {
+ return {
+ timer: null,//定时器
+ mixingList: [],//展示数据
}
},
- created(){
+ created() {
this.searchMixingInfos()
},
- mounted(){
+ mounted() {
const that = this;
// that.searchMixingInfos()
- that.timer = setInterval(()=>{
+ that.timer = setInterval(() => {
that.searchMixingInfos()
- },60000 * 10)
+ }, 60000 * 10)
let width = document.getElementsByClassName('mixing_index')[0].clientWidth
let $html = document.getElementsByTagName('html')[0]
@@ -71,15 +74,15 @@
clearInterval(this.timer);
this.timer = null;
},
- methods:{
- searchMixingInfos(){
- let params={
- tableNum:window.location.href.split('/')[5].split('=')[1]
+ methods: {
+ searchMixingInfos() {
+ let params = {
+ tableNum: window.location.href.split('/')[5].split('=')[1]
}
- this.$api.Infos.showHmixings(params).then(res=>{
- if(res.statusMsg==='ok'){
- this.mixingList = res.data===null?[]:res.data
- }else{
+ this.$api.Infos.showHmixings(params).then(res => {
+ if (res.statusMsg === 'ok') {
+ this.mixingList = res.data === null ? [] : res.data
+ } else {
this.$message.warning('请检查网络或联系管理员!!!')
}
})
@@ -88,18 +91,18 @@
}
</script>
<style scoped lang="scss">
-.mixing_index{
+.mixing_index {
display: flex;
flex-direction: column;
width: 100%;
height: 100%;
- padding: 5px;
+ padding: 0.4rem;
background: url("../../assets/mixing/mixing_bg3.png") no-repeat;
background-size: 100% 100%;
background-position: center center;
-
- .mixing_header{
+
+ .mixing_header {
width: 100%;
height: 3.2rem;
position: relative;
@@ -107,8 +110,8 @@
display: flex;
justify-content: center;
align-items: center;
-
- span{
+
+ span {
position: absolute;
font-size: 5rem;
font-weight: bold;
@@ -120,7 +123,7 @@
}
}
- .mixing_main{
+ .mixing_main {
overflow: hidden;
flex: 1;
width: 100%;
@@ -128,17 +131,17 @@
padding: 6rem;
display: flex;
- .mixing_left{
+ .mixing_left {
display: flex;
flex-direction: column;
- width: 45%;
- margin-right: 15px;
+ flex: 1;
+ margin-right: 3rem;
display: flex;
flex-direction: column;
align-items: center;
justify-content: space-between;
- .mixing_left_num{
+ .mixing_left_num {
position: relative;
overflow: hidden;
padding: 1rem;
@@ -146,7 +149,8 @@
width: 100%;
background: url("../../assets/mixing/mixing_left_bg.png") no-repeat;
background-size: 100% 100%;
- >div{
+
+ > div {
display: flex;
justify-content: center;
align-items: center;
@@ -158,51 +162,58 @@
background-color: rgba(37, 129, 255, 0.29);
}
}
- .mixing_left_name{
+
+ .mixing_left_name {
flex: 1;
width: 100%;
display: flex;
justify-content: center;
align-items: center;
- text-shadow: 5px 7px 0px rgba(0,66,255,0.2), 16px 23px 16px rgba(14,19,48,0.15);
- background: linear-gradient(to bottom,#FFFFFF 0%,rgba(140, 186, 255, 0.88) 100%);
+ text-shadow: 5px 7px 0px rgba(0, 66, 255, 0.2), 16px 23px 16px rgba(14, 19, 48, 0.15);
+ background: linear-gradient(to bottom, #FFFFFF 0%, rgba(140, 186, 255, 0.88) 100%);
background-clip: text;
-webkit-background-clip: text;
- text-fill-color: transparent;
-webkit-text-fill-color: transparent;
color: #FFFFFF;
font-size: 9rem;
font-weight: 500;
}
}
- .mixing_right{
- width: calc(55% - 100px);
- background: linear-gradient(to right,#0D3776 0%,#041A40 100%);
+
+ .mixing_right {
+ flex: 1.2;
+ background: linear-gradient(to right, #0D3776 0%, #041A40 100%);
display: flex;
flex-direction: column;
justify-content: space-between;
- .mixing_rows{
- padding: 10px 20px;
+ padding: 2rem 4rem;
+
+ .mixing_rows {
+ overflow: hidden;
display: flex;
- .mixing_rows_titles{
+
+ .mixing_rows_titles {
flex: none;
color: #FFFFFF;
font-weight: 400;
font-size: 5rem;
}
- .mixing_rows_datas{
+
+ .mixing_rows_datas {
flex: none;
color: #FFFFFF;
font-weight: 400;
font-size: 5rem;
}
- .standardStyle{
- color:#15EF48;
- font-size:8rem;
+
+ .standardStyle {
+ color: #15EF48;
+ font-size: 8rem;
}
- .notStandardStyle{
- color:rgba(255, 102, 0, 1);
- font-size:8rem;
+
+ .notStandardStyle {
+ color: rgba(255, 102, 0, 1);
+ font-size: 8rem;
}
}
}
diff --git a/web/src/views/SecureManage/RiskGrad/AreaPolling.vue b/web/src/views/SecureManage/RiskGrad/AreaPolling.vue
index 3a0ed7f..61cee9b 100644
--- a/web/src/views/SecureManage/RiskGrad/AreaPolling.vue
+++ b/web/src/views/SecureManage/RiskGrad/AreaPolling.vue
@@ -7,7 +7,9 @@
<el-tab-pane label="任务打卡" name="second"></el-tab-pane>
</el-tabs>
</div>
- <component :is="cpns[activeName]"></component>
+ <div class="content">
+ <component :is="cpns[activeName]"></component>
+ </div>
</div>
</template>
<script>
@@ -32,4 +34,13 @@
<style lang="scss" scoped>
@import '@/style/layout-main.scss';
+
+.main {
+ display: flex;
+
+ .content {
+ overflow: hidden;
+ flex: 1;
+ }
+}
</style>
\ No newline at end of file
diff --git a/web/src/views/SecureManage/RiskGrad/components/PollingTask.vue b/web/src/views/SecureManage/RiskGrad/components/PollingTask.vue
index e02fce3..0f171c6 100644
--- a/web/src/views/SecureManage/RiskGrad/components/PollingTask.vue
+++ b/web/src/views/SecureManage/RiskGrad/components/PollingTask.vue
@@ -1,6 +1,6 @@
<!-- 安全管理 ==> 风险分级管控 => 区域巡检(巡检任务)-->
<template>
- <div>
+ <div class="wrap">
<div class="main_header">
<div class="header_item">
<span class="header_label">巡检任务:</span>
@@ -385,6 +385,17 @@
<style lang="scss" scoped>
@import '@/style/layout-main.scss';
+.wrap {
+ display: flex;
+ flex-direction: column;
+ height: 100%;
+
+ .main_content {
+ overflow: hidden;
+ flex: 1;
+ }
+}
+
.divider {
position: relative;
margin-bottom: 30px;
diff --git a/web/src/views/SecureManage/RiskGrad/components/TaskPunchcard.vue b/web/src/views/SecureManage/RiskGrad/components/TaskPunchcard.vue
index 28afc51..50c2238 100644
--- a/web/src/views/SecureManage/RiskGrad/components/TaskPunchcard.vue
+++ b/web/src/views/SecureManage/RiskGrad/components/TaskPunchcard.vue
@@ -1,6 +1,6 @@
<!-- 安全管理 ==> 风险分级管控 => 区域巡检(任务打卡)-->
<template>
- <div>
+ <div class="wrap">
<div class="main_header">
<div class="header_item">
<span class="header_label">巡检人:</span>
@@ -8,7 +8,7 @@
</div>
<div class="header_item">
<span class="header_label">巡检状态:</span>
- <el-select size="mini" v-model="queryInfo.status">
+ <el-select size="mini" v-model="queryInfo.status" clearable>
<el-option v-for="item in queryStatus" :key="item.value" :label="item.label" :value="item.value"
placeholder="请选择巡检状态"></el-option>
</el-select>
@@ -72,8 +72,6 @@
<el-image class="image" v-for="(item, index) in regionInfos.img" :key="index" :src="item" fit="contain"
:preview-src-list="regionInfos.img"></el-image>
</el-form-item>
-
- <el-form-item label="获取当前位置:">{{ regionInfos.location }}</el-form-item>
</el-form>
</el-dialog>
</div>
@@ -120,7 +118,6 @@
region: '', // 巡检区域
res: '', // 巡检结果
img: '', // 上传的图片
- location: '', // 位置
}
}
},
@@ -230,13 +227,12 @@
this.regionInfos.time = res.data.inspectionTime
this.regionInfos.region = res.data.region
this.regionInfos.res = res.data.result
- this.regionInfos.location = res.data.location
this.regionInfos.img = []
if (res.data.imgPaths) {
let arr = []
res.data.imgPaths.split(',').forEach(item => {
- arr.push(process.env.VUE_APP_BASE_URL + '/' + item)
+ arr.push('https://szpipe.thhy-tj.com/' + item) // 是生产地址
})
this.regionInfos.img.push(...arr)
}
@@ -265,6 +261,17 @@
<style lang="scss" scoped>
@import '@/style/layout-main.scss';
+.wrap {
+ display: flex;
+ flex-direction: column;
+ height: 100%;
+
+ .main_content {
+ overflow: hidden;
+ flex: 1;
+ }
+}
+
.rule_form {
color: #fff;
--
Gitblit v1.9.3