Commit c08afedf authored by jingnan's avatar jingnan 👀

Merge branch 'online'

parents b4a9d83e f7516e03
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -199,7 +199,7 @@ export default {
this.$api.searchApi('ExtProcessSkillUser', params).then(res => {
if (res.items.content.length) {
const arr = []
this.basicData.prodTask.forEach(element => {
this.basicData.prodTask && this.basicData.prodTask.forEach(element => {
arr.push(element.extProcessSkillUserId)
})
res.items.content.forEach(item => {
......
......@@ -239,7 +239,7 @@ export default {
this.$api.searchApi('ExtProcessSkillUser', params).then(res => {
if (res.items.content.length) {
const arr = []
this.basicData.prodTask.forEach(element => {
this.basicData.prodTask && this.basicData.prodTask.forEach(element => {
arr.push(element.extProcessSkillUserId)
})
res.items.content.forEach(item => {
......
......@@ -108,6 +108,7 @@
type="textarea"
:rows="3"
placeholder="请输入备注"
@blur="rmark(item)"
/>
</div>
<i slot="reference" class="el-icon-info" />
......@@ -275,12 +276,24 @@ export default {
default: () => null
},
year: {
type: String,
type: [String, Number],
default: () => null
},
unitNo: {
type: [String, Number],
default: () => null
},
activeName: {
type: String,
default: () => null
},
sqcdpParams: {
type: Object,
default: () => {
return {
query: {}
}
}
}
},
data() {
......@@ -306,8 +319,8 @@ export default {
],
C: [
// { id: 1, dictKey: 'Yellow', dictValue: '13243' },
{ id: 2, dictKey: 'Red', dictValue: '无成本损失' },
{ id: 3, dictKey: 'null', dictValue: '产生报废单' }
{ id: 3, dictKey: 'Red', dictValue: '产生报废单' },
{ id: 2, dictKey: 'null', dictValue: '无成本损失' }
],
D: [
// { id: 1, dictKey: 'Yellow', dictValue: '13243' },
......@@ -319,8 +332,8 @@ export default {
{ id: 2, dictKey: 'Red', dictValue: '出勤率小于90%' },
{ id: 3, dictKey: 'null', dictValue: '出勤率大于90%' }
]
},
unitNo: null
}
// unitNo: null
}
},
computed: { },
......@@ -337,7 +350,7 @@ export default {
// 创建确认调用
init() {
this.$nextTick(() => {
this.getData(this.year, this.month)
// this.getData(this.year, this.month)
})
},
// 初始化日历
......@@ -346,11 +359,11 @@ export default {
this.day = []
this.enull = 0
if (year === null || month === null || year === undefined) return
var date = null
let date = null
date = new Date(`${year}-${month}-1`).getDay()
var month1 = null
var month2 = null
var year2 = year
let month1 = null
let month2 = null
let year2 = year
if (month <= 9) {
month1 = '0' + month
month2 = '0' + (month + 1)
......@@ -366,15 +379,11 @@ export default {
month2 = month + 1
}
this.loading = true
var data = []
var sorties = ''
let data = []
let sorties = ''
try {
data =
this.$parent.$parent.$parent.$parent.$parent.$parent.sqcdpParams.query
.data
sorties =
this.$parent.$parent.$parent.$parent.$parent.$parent.sqcdpParams.query
.sorties
data = this.sqcdpParams.query.data
sorties = this.sqcdpParams.query.sorties
} catch (err) {
console.info(err)
}
......@@ -388,7 +397,7 @@ export default {
this.enull = date - 1
}
this.loading = false
this.$parent.$parent.$parent.$parent.sqcdpParams.query.sorties = false
// this.sqcdpParams.query.sorties = false
} else {
const params = {
searchItems: {
......@@ -418,11 +427,11 @@ export default {
}
]
}
if (unitNo && unitNo !== '工厂') {
if (this.unitNo && this.unitNo !== '工厂') {
params.searchItems.items.push({
fieldName: 'unitNo',
operator: 'EQ',
value: unitNo
value: this.unitNo
})
} else {
params.searchItems.items.push({
......@@ -475,7 +484,7 @@ export default {
},
// /风险颜色修改
selectClasses(item, index) {
var params = {}
let params = {}
switch (this.activeName) {
case 'S':
params = {
......@@ -529,7 +538,7 @@ export default {
},
// 备注
rmark(item, index) {
var params = {}
let params = {}
switch (this.activeName) {
case 'S':
params = {
......
......@@ -57,8 +57,16 @@ export default {
default: () => []
},
year: {
type: String,
type: [String, Number],
default: () => null
},
sqcdpParams: {
type: Object,
default: () => {
return {
query: {}
}
}
}
},
data() {
......@@ -144,18 +152,18 @@ export default {
})
}).catch(err => console.log(err)).finally(() => {
}).finally(() => {
this.stance = '工厂'
// var serialNumber = false
// try {
// serialNumber = this.$parent.$parent.$parent.$parent.sqcdpParams.query.serialNumber
// } catch (err) {
// console.info(err)
// }
// if (serialNumber) {
// this.stance = serialNumber
// } else {
// this.stance = '工厂'
// }
let serialNumber = false
try {
serialNumber = this.sqcdpParams.query.serialNumber || '工厂'
} catch (err) {
console.info(err)
}
if (serialNumber) {
this.stance = serialNumber
} else {
this.stance = '工厂'
}
})
},
// 返回站位名称
......
<!--
* @Author: ljm
* @Date: 2021-06-22
* @LastEditTime:
* @LastEditTime: 2024-08-07 16:23:30
* @Description: sqcdp维护
* @FilePath: applications/dee-mes/src/views/mes/baseData/sqcdp/index.vue
-->
......@@ -9,6 +9,7 @@
<section class="wordCalendar">
<Header
ref="header"
:sqcdp-params="sqcdpParams"
:year-data="yearData"
:year="year"
@getMonth="handleMonth"
......@@ -17,19 +18,19 @@
/>
<el-tabs v-model="activeName" type="card" @tab-click="tabClick">
<el-tab-pane label="S(安全)" name="S">
<Calender ref="calenderS" :active-name="activeName" :month="month" :year="year" />
<Calender ref="calenderS" :sqcdp-params="sqcdpParams" :unit-no="unitNo" :active-name="activeName" :month="month" :year="year" />
</el-tab-pane>
<el-tab-pane label="Q(质量)" name="Q">
<Calender ref="calenderQ" :active-name="activeName" :month="month" :year="year" />
<Calender ref="calenderQ" :sqcdp-params="sqcdpParams" :unit-no="unitNo" :active-name="activeName" :month="month" :year="year" />
</el-tab-pane>
<el-tab-pane label="C(成本)" name="C">
<Calender ref="calenderC" :active-name="activeName" :month="month" :year="year" />
<Calender ref="calenderC" :sqcdp-params="sqcdpParams" :unit-no="unitNo" :active-name="activeName" :month="month" :year="year" />
</el-tab-pane>
<el-tab-pane label="D(进度)" name="D">
<Calender ref="calenderD" :active-name="activeName" :month="month" :year="year" />
<Calender ref="calenderD" :sqcdp-params="sqcdpParams" :unit-no="unitNo" :active-name="activeName" :month="month" :year="year" />
</el-tab-pane>
<el-tab-pane label="P(人员)" name="P">
<Calender ref="calenderP" :active-name="activeName" :month="month" :year="year" />
<Calender ref="calenderP" :sqcdp-params="sqcdpParams" :unit-no="unitNo" :active-name="activeName" :month="month" :year="year" />
</el-tab-pane>
</el-tabs>
<!-- <Calender ref="calender" :unit-no="unitNo" :month="month" :year="year" /> -->
......@@ -49,6 +50,16 @@ export default {
Header,
Calender
},
props: {
sqcdpParams: {
type: Object,
default: () => {
return {
query: {}
}
}
}
},
data() {
return {
activeName: 'S',
......@@ -59,7 +70,9 @@ export default {
}
},
mounted() {
if (!this.sqcdpParams.name) {
this.initYear()
}
},
created() {},
methods: {
......@@ -72,7 +85,9 @@ export default {
this.selectTab($event.name)
},
selectTab(activeName) {
this.$nextTick(() => {
this.$refs['calender' + activeName].getData(this.year, this.month, this.unitNo)
})
},
// 年份下拉框触发
handleYear(year) {
......@@ -94,26 +109,25 @@ export default {
post('/FactoryCalendar/getAllFactoryYear')
.then((res) => {
this.yearData = res.items.sort()
this.year = res.items[0]
this.year = new Date().getFullYear()
this.month = new Date().getMonth() + 1
})
.catch((err) => console.log(err))
.finally(() => {
let name = ''
let serialNumber = ''
try {
name = this.sqcdpParams.query.name
serialNumber = this.sqcdpParams.query.serialNumber
} catch (err) {
console.info(err)
}
if (name) {
this.activeName = name
this.handleStance(serialNumber)
} else {
this.$refs['calender' + this.activeName].getData(this.year, this.month, this.unitNo)
// var name = ''
// var serialNumber = ''
// try {
// name = this.$parent.$parent.$parent.sqcdpParams.query.name
// serialNumber = this.$parent.$parent.$parent.sqcdpParams.query.serialNumber
// } catch (err) {
// console.info(err)
// }
// if (name) {
// this.activeName = name
// this.handleStance(serialNumber)
// } else {
// }
}
})
}
......
......@@ -62,9 +62,9 @@ export default {
immediate: true,
deep: true,
handler: function(val) {
// 粘度里的杯根据理论粘度截取(从第一个“,“截取到第一个”杯“,有杯没有逗号的截取杯前的所有字符串)
// this.cup没有值得时候粘度里的杯根据理论粘度截取(从第一个“,“截取到第一个”杯“,有杯没有逗号的截取杯前的所有字符串)
const splitFromBei = val && val.includes('杯') ? val.split('杯')[0] + '杯' : ''
if (splitFromBei) {
if (splitFromBei && !this.cup) {
const str = splitFromBei.includes(',') || splitFromBei.includes(',') ? splitFromBei : (',' + splitFromBei)
const formatVal = str.replace(/,/g, ',')
const regex = new RegExp(`,(.*?)杯`)
......
......@@ -1901,15 +1901,16 @@
@click="isFullClick"
>
</div>
<SQCDPDialog ref="SQCDPDialog" />
<SQCDPDialog ref="SQCDPDialog" :sqcdp-params="sqcdpParams" />
<ExpireWarningDialog ref="ExpireWarningDialog" />
<SummaryOfStationMissingPartsDialog
ref="SummaryOfStationMissingPartsDialog"
/>
<SiteProblemManagementSummaryDialog
ref="SiteProblemManagementSummaryDialog"
:site-problem-management-summary-params="siteProblemManagementSummaryParams"
/>
<ActionitemsDialog ref="ActionitemsDialog" />
<ActionitemsDialog ref="ActionitemsDialog" :action-items-params="actionItemsParams" />
</div>
</template>
......@@ -2484,7 +2485,8 @@ export default {
storageExpireWarningParams: {},
summaryOfStationMissingPartsParams: {},
siteProblemManagementSummaryParams: {},
actionitemsParams: {}
actionItemsParams: {},
sqcdpParams: {}
}
},
computed: {
......@@ -2778,6 +2780,7 @@ export default {
* 现场督办
*/
initSupervise() {
this.resetSuperviseOptionData()
const superviseOption = this.superviseOption
const params = {
aircraftType: this.$route.query.model,
......@@ -2798,10 +2801,6 @@ export default {
const chartDom = document.getElementById('superviseEchart')
const myChart = echarts.init(chartDom)
myChart.on('click', function(params) {
if (params) {
console.log('跳转暂时未做,需要做的时候删除这段代码!')
return
}
that.routerSiteProblemManagementSummary(params.name)
})
myChart.setOption(superviseOption)
......@@ -2811,6 +2810,7 @@ export default {
* 行动项
*/
initActionitems() {
this.resetSuperviseOptionData()
const superviseOption = this.superviseOption
const params = {
aircraftType: this.$route.query.model,
......@@ -2831,15 +2831,17 @@ export default {
const chartDom = document.getElementById('superviseEchart')
const myChart = echarts.init(chartDom)
myChart.on('click', function(params) {
if (params) {
console.log('跳转暂时未做,需要做的时候删除这段代码!')
return
}
that.routerActionitems(params.name)
})
myChart.setOption(superviseOption)
})
},
resetSuperviseOptionData() {
this.superviseOption.series[0].data.map(item => {
item.value = 0
return item
})
},
selectSuperviseTabs(key) {
// 销毁echart
const chartDom = document.getElementById('superviseEchart')
......@@ -2861,6 +2863,7 @@ export default {
query: {
title: '站位看板',
planId: item.id,
serialNumber: item.serialNumber,
model: this.$route.query.model,
sorties: this.$route.query.sorties,
data: JSON.stringify(item)
......@@ -2891,10 +2894,6 @@ export default {
})
},
routerWordCalendar(name) {
if (name) {
console.log('跳转暂时未做,需要做的时候删除这段代码!')
return
}
let data = []
switch (name) {
case 'S':
......@@ -2943,6 +2942,7 @@ export default {
query: {
name: name,
sorties: this.info.aircraftSorties.defCode,
// serialNumber: this.$route.query.serialNumber,
data: data
}
}
......@@ -2955,8 +2955,11 @@ export default {
this.siteProblemManagementSummaryParams = {
name: 'siteProblemManagementSummary',
query: {
// serialNumber: this.$route.query.serialNumber,
name: name,
planId: null,
rootPage: 'AssembleKanban',
planId: this.$route.query.planId,
model: this.$route.query.model,
sorties: this.$route.query.sorties
}
}
......@@ -2966,11 +2969,11 @@ export default {
* 行动项
*/
routerActionitems(name) {
this.actionitemsParams = {
name: 'actionitemsParams',
this.actionItemsParams = {
name: 'actionItemsParams',
query: {
name: name,
planId: this.info.airModel.resName,
model: this.$route.query.model,
sorties: this.$route.query.sorties
}
}
......@@ -3344,7 +3347,7 @@ export default {
}
&.s52 {
top: 332px;
left: 110px;
left: 90px;
width: 111px;
height: 65px;
z-index: 9;
......@@ -3399,8 +3402,8 @@ export default {
}
}
&.s51 {
top: 369px;
left: 249px;
top: 359px;
left: 189px;
width: 181px;
height: 89px;
> .model {
......@@ -3454,10 +3457,10 @@ export default {
}
}
&.s41 {
top: 415px;
left: 453px;
width: 209px;
height: 102px;
top: 405px;
left: 330px;
width: 199px;
height: 92px;
> .model {
width: 100%;
height: 100%;
......@@ -3484,7 +3487,7 @@ export default {
> .stage {
width: 215px;
height: 50px;
top: 89px;
top: 79px;
left: 11px;
position: absolute;
background-image: url("../../../assets/看板2/站台/41底座.png");
......@@ -3494,7 +3497,7 @@ export default {
> .tai {
width: 157px;
height: 23px;
top: 92px;
top: 82px;
left: 41px;
position: absolute;
background-repeat: no-repeat; //不重复
......@@ -3508,10 +3511,10 @@ export default {
}
}
&.s31 {
top: 476px;
left: 714px;
width: 220px;
height: 115px;
top: 450px;
left: 524px;
width: 200px;
height: 105px;
> .model {
width: 100%;
height: 100%;
......@@ -3529,6 +3532,60 @@ export default {
background-image: url("../../../assets/看板2/31灰.png");
}
}
> .stage {
width: 260px;
height: 75px;
top: 77px;
left: -15px;
position: absolute;
background-image: url("../../../assets/看板2/站台/31底座.png");
background-repeat: no-repeat; //不重复
background-size: 100% 100%; // 满屏
}
> .tai {
width: 196px;
height: 36px;
top: 84px;
left: 25px;
position: absolute;
background-repeat: no-repeat; //不重复
background-size: 100% 100%; // 满屏
&.stage-dong {
background-image: url("../../../assets/看板2/站台/动台.gif");
}
&.stage-jing {
background-image: url("../../../assets/看板2/站台/静台.png");
}
}
> p {
top: -18px;
left: 96px;
width: 62px;
text-align: center;
}
}
&.s21 {
top: 506px;
left: 734px;
width: 220px;
height: 115px;
> .model {
width: 100%;
height: 100%;
z-index: 9;
position: absolute;
background-repeat: no-repeat; //不重复
background-size: 100% 100%; // 满屏
&.New {
background-image: url("../../../assets/看板2/21线.png");
}
&.Run {
background-image: url("../../../assets/看板2/21黄.png");
}
&.Finish {
background-image: url("../../../assets/看板2/21灰.png");
}
}
> .stage {
width: 277px;
height: 85px;
......@@ -3561,6 +3618,7 @@ export default {
text-align: center;
}
}
}
}
> footer {
......
......@@ -10,20 +10,28 @@
@close="close"
@opened="opened"
>
<!-- <Actionitems /> -->Actionitems
<dee-as-com
ref="table"
class="list-table"
:lay-config="cmpOptions"
/>
</el-dialog>
</template>
<script>
// import Actionitems from '@/views/mes/actionItemManagement/actionItemManagementSearch/index'
export default {
name: 'ActionitemsDialog',
components: {
// Actionitems
},
props: { },
props: {
actionItemsParams: {
type: Object,
default: () => {}
}
},
data() {
return {
visible: false
visible: false,
cmpOptions: { typeName: 'ActionItem', layKey: 'ActionItemTable_onlyReadCopy' }
}
},
computed: {
......@@ -31,11 +39,36 @@ export default {
created() {},
methods: {
opened() {
this.$children[0].$children[0].getAirModelList()
const queryData = this.actionItemsParams.query
const extraParams = [
{
'fieldName': 'state',
'operator': 'EQ',
'value': 'TF_WWC'
},
{
'fieldName': 'airModel',
'operator': 'EQ',
'value': queryData.model
},
{
'fieldName': 'serialNo',
'operator': 'EQ',
'value': queryData.sorties
},
{
'fieldName': 'categoryCode',
'operator': 'EQ',
'value': queryData.name
}
]
setTimeout(() => {
this.$refs.table.$refs.asCom.getData(extraParams)
}, 500)
},
close() {
this.visible = false
this.$parent.actionitemsParams = {}
}
}
}
......
......@@ -10,28 +10,70 @@
@close="close"
@opened="opened"
>
JobPlanExecutionQuery <!-- <JobPlanExecutionQuery /> -->
<dee-as-com
ref="table"
class="list-table"
:lay-config="cmpOptions"
/>
</el-dialog>
</template>
<script>
// import JobPlanExecutionQuery from '@/views/mes/physicalQualityAndConfiguratioCnontrol/jobPlanExecutionSummary'
export default {
name: 'JobPlanExecutionQueryDialog',
components: {
// JobPlanExecutionQuery
},
props: {},
props: {
jobPlanExecutionQueryParams: {
type: Object,
default: () => {}
}
},
data() {
return {
visible: false
visible: false,
cmpOptions: { typeName: 'JoExecutePlan', layKey: 'JoExecutePlanTable' }
}
},
computed: {},
created() {},
methods: {
opened() {
this.$children[0].$children[0].getAirModelList()
// this.$parent.JobPlanExecutionQueryParams = {}
const queryData = this.jobPlanExecutionQueryParams.query
const extraParams = [
{
'fieldName': 'planeType',
'operator': 'EQ',
'value': queryData.model
},
{
'fieldName': 'sorties',
'operator': 'EQ',
'value': queryData.sorties
},
{
'fieldName': 'positionNumber',
'operator': 'LIKE',
'value': queryData.serialNumber
}
]
if (queryData.rootPage === 'ProductionKanban') {
extraParams.push({
'fieldName': 'joExecutePlan.planState',
'operator': 'IN',
'value': queryData.planStateCode
})
} else {
extraParams.push({
'fieldName': 'joExecutePlan.scheduledEnd',
'operator': 'BTWN',
'value': queryData.date && queryData.date.value,
'value1': queryData.date && queryData.date.value1
})
}
setTimeout(() => {
this.$refs.table.$refs.asCom.getData(extraParams)
}, 500)
},
close() {
this.visible = false
......
......@@ -11,17 +11,22 @@
@close="close"
@opened="opened"
>
<!-- <SQCDP /> -->SQCDP
<SQCDP ref="SQCDP" :sqcdp-params="sqcdpParams" />
</el-dialog>
</template>
<script>
// import SQCDP from '@/views/mes/baseData/sqcdp/index.vue'
import SQCDP from '../../Sqcdp'
export default {
name: 'SQCDPDialog',
components: {
// SQCDP
SQCDP
},
props: {
sqcdpParams: {
type: Object,
default: () => {}
}
},
props: { },
data() {
return {
visible: false
......@@ -32,10 +37,10 @@ export default {
created() {},
methods: {
opened() {
this.$children[0].$children[0].initYear()
this.$refs.SQCDP.initYear()
},
close() {
this.$parent.sqcdpParams = {}
// this.$parent.sqcdpParams = {}
this.visible = false
}
}
......@@ -46,6 +51,7 @@ export default {
position: absolute;
.el-dialog__header{
text-align: center;
// background: linear-gradient(90deg, #2F70A4 0%, #4E85A3 64%, #55A781 100%);
}
.el-dialog {
max-height:100%;
......
......@@ -11,20 +11,28 @@
@close="close"
@opened="opened"
>
SiteProblemManagementSummary<!-- <SiteProblemManagementSummary /> -->
<dee-as-com
ref="table"
class="list-table"
:lay-config="cmpOptions"
/>
</el-dialog>
</template>
<script>
// import SiteProblemManagementSummary from '@/views/mes/physicalQualityAndConfiguratioCnontrol/siteProblemManagementSummary/index.vue'
export default {
name: 'SQCDPDialog',
name: 'SiteProblemManagementSummary',
components: {
// SiteProblemManagementSummary
},
props: { },
props: {
siteProblemManagementSummaryParams: {
type: Object,
default: () => {}
}
},
data() {
return {
visible: false
visible: false,
cmpOptions: { typeName: 'SpotProblem', layKey: 'defaultResultCopy' }
}
},
computed: {
......@@ -32,11 +40,36 @@ export default {
created() {},
methods: {
opened() {
this.$children[0].$children[0].init()
this.$parent.siteProblemManagementSummaryParams = {}
const queryData = this.siteProblemManagementSummaryParams.query
const extraParams = [
{
'fieldName': 'sptype',
'operator': 'LIKE',
'value': queryData.name
},
{
'fieldName': 'airModel',
'operator': 'EQ',
'value': queryData.model
},
{
'fieldName': 'sorties',
'operator': 'EQ',
'value': queryData.sorties
}
]
if (queryData.rootPage === 'ExperimentKanban') {
extraParams.push({
'fieldName': 'standPosition',
'operator': 'EQ',
'value': queryData.serialNumber
})
}
setTimeout(() => {
this.$refs.table.$refs.asCom.getData(extraParams)
}, 500)
},
close() {
this.$parent.siteProblemManagementSummaryParams = {}
this.visible = false
}
}
......
......@@ -1977,10 +1977,10 @@
@click="isFullClick"
>
</div>
<JobPlanExecutionQueryDialog ref="JobPlanExecutionQueryDialog" />
<SQCDPDialog ref="SQCDPDialog" />
<JobPlanExecutionQueryDialog ref="JobPlanExecutionQueryDialog" :job-plan-execution-query-params="JobPlanExecutionQueryParams" />
<SQCDPDialog ref="SQCDPDialog" :sqcdp-params="sqcdpParams" />
<SummaryOfStationMissingPartsDialog ref="SummaryOfStationMissingPartsDialog" />
<SiteProblemManagementSummaryDialog ref="SiteProblemManagementSummaryDialog" />
<SiteProblemManagementSummaryDialog ref="SiteProblemManagementSummaryDialog" :site-problem-management-summary-params="siteProblemManagementSummaryParams" />
</div>
</template>
......@@ -1988,7 +1988,6 @@
import * as echarts from 'echarts'
import $ from 'jquery'
import elementResizeDetectorMaker from 'element-resize-detector'
import JobPlanExecutionQueryDialog from './Dialog/JobPlanExecutionQueryDialog.vue'
import SQCDPDialog from './Dialog/SQCDPDialog.vue'
import SummaryOfStationMissingPartsDialog from './Dialog/SummaryOfStationMissingPartsDialog.vue'
......@@ -2565,10 +2564,6 @@ export default {
const chartDom = document.getElementById('experimentKanbanEchart')
const myChart = echarts.init(chartDom)
myChart.on('click', function(params) {
if (params) {
console.log('跳转暂时未做,需要做的时候删除这段代码!')
return
}
that.routerJobPlanExecutionSummary(params)
})
myChart.setOption(optionTrend)
......@@ -2630,10 +2625,6 @@ export default {
const chartDom = document.getElementById('superviseEchart')
const myChart = echarts.init(chartDom)
myChart.on('click', function(params) {
if (params) {
console.log('跳转暂时未做,需要做的时候删除这段代码!')
return
}
that.routerSiteProblemManagementSummary(params.name)
})
myChart.setOption(superviseOption)
......@@ -2723,29 +2714,59 @@ export default {
* sqcdp维护
*/
routerWordCalendar(name) {
if (name) {
console.log('跳转暂时未做,需要做的时候删除这段代码!')
return
let data = []
switch (name) {
case 'S':
data = this.sqcdpData.S.map((p) => {
return {
calendar: p.date.substr(5, 5),
srisk: p.color === 'Green' ? 'null' : p.color
}
})
break
case 'Q':
data = this.sqcdpData.Q.map((p) => {
return {
calendar: p.date.substr(5, 5),
qrisk: p.color === 'Green' ? 'null' : p.color
}
})
break
case 'C':
data = this.sqcdpData.C.map((p) => {
return {
calendar: p.date.substr(5, 5),
crisk: p.color === 'Green' ? 'null' : p.color
}
})
break
case 'D':
data = this.sqcdpData.D.map((p) => {
return {
calendar: p.date.substr(5, 5),
drisk: p.color === 'Green' ? 'null' : p.color
}
})
break
case 'P':
data = this.sqcdpData.P.map((p) => {
return {
calendar: p.date.substr(5, 5),
prisk: p.color === 'Green' ? 'null' : p.color
}
})
break
}
this.sqcdpParams = {
name: 'sqcdpMaintain',
query: {
name: name,
sorties: false,
serialNumber: this.info.serialNumber,
data: []
serialNumber: this.$route.query.serialNumber,
data: data
}
}
this.$refs.SQCDPDialog.visible = true
// this.$router.push({
// name: 'sqcdpMaintain',
// query: {
// name: name,
// sorties: false,
// serialNumber: this.info.serialNumber,
// data: []
// }
// })
},
/**
* 路由跳转作业计划执行查询
......@@ -2754,12 +2775,11 @@ export default {
this.JobPlanExecutionQueryParams = {
name: 'jobPlanExecutionSummary',
query: {
serialNumber: this.$route.query.planId,
// planId: this.$route.query.planId,
serialNumber: this.$route.query.serialNumber,
rootPage: 'ExperimentKanban',
model: this.$route.query.model,
sorties: this.$route.query.sorties,
date: params.name,
isOk: params.seriesName === '计划完工' ? 'Y' : 'N'
date: { value: params.name + ' 00:00:00', value1: params.name + ' 23:59:59' }
}
}
this.$refs.JobPlanExecutionQueryDialog.visible = true
......@@ -2771,9 +2791,12 @@ export default {
this.siteProblemManagementSummaryParams = {
name: 'siteProblemManagementSummary',
query: {
serialNumber: this.$route.query.serialNumber,
name: name,
rootPage: 'ExperimentKanban',
planId: this.$route.query.planId,
sorties: null// this.$route.query.sorties
model: this.$route.query.model,
sorties: this.$route.query.sorties
}
}
this.$refs.SiteProblemManagementSummaryDialog.visible = true
......@@ -3131,6 +3154,23 @@ export default {
background-image: url("../../../assets/看板/内页飞机切图/31灰内.png");
}
}
&.s21 {
top: 180px;
left: 105px;
width: 570px;
height: 245px;
background-repeat: no-repeat; //不重复
background-size: 100% 100%; // 满屏
&.New {
background-image: url("../../../assets/看板/内页飞机切图/31线内.png");
}
&.Run {
background-image: url("../../../assets/看板/内页飞机切图/31黄内.png");
}
&.Finish {
background-image: url("../../../assets/看板/内页飞机切图/31灰内.png");
}
}
}
> .stage {
width: 651px;
......
......@@ -19,7 +19,7 @@
<div
v-for="item in stationData"
:key="item.serialNumber"
:class="stationClass(item.serialNumber, item.extPositionPlans&&item.extPositionPlans[0].planState)"
:class="stationClass(item.serialNumber, item.extPositionPlans&&item.extPositionPlans[0].planState||'Run')"
@dblclick="routerExperiment(item)"
@click="selectStation(item.serialNumber)"
>
......@@ -103,7 +103,7 @@
@click="isFullClick"
>
</div>
<JobPlanExecutionQueryDialog ref="JobPlanExecutionQueryDialog" />
<JobPlanExecutionQueryDialog ref="JobPlanExecutionQueryDialog" :job-plan-execution-query-params="JobPlanExecutionQueryParams" />
</div>
</template>
......@@ -178,6 +178,12 @@ export default {
name: '',
progress: 0,
isLogo: false
},
{
serialNumber: '21',
name: '',
progress: 0,
isLogo: false
}
],
JobPlanExecutionQueryParams: {},
......@@ -332,6 +338,7 @@ export default {
query: {
title: '站位看板',
planId: item.id,
serialNumber: item.serialNumber,
model: this.sortiesRow.aircraftType.defName,
sorties: this.sortiesRow.aircraftSorties.defCode,
data: JSON.stringify(item)
......@@ -342,14 +349,11 @@ export default {
* 路由跳转作业计划执行查询
*/
routerJobPlanExecutionSummary(planStateCode) {
if (planStateCode) {
console.log('跳转暂时未做,需要做的时候删除这段代码!')
return
}
const params = {
name: 'jobPlanExecutionSummary',
query: {
serialNumber: this.stationRow.id,
rootPage: 'ProductionKanban',
serialNumber: this.stationRow.serialNumber,
model: this.sortiesRow.aircraftType.defName,
sorties: this.sortiesRow.aircraftSorties.defCode,
planStateCode: false
......@@ -357,25 +361,25 @@ export default {
}
switch (planStateCode) {
case '架次总数':
params.query.planStateCode = ['执行中', '已派工', '已下发', '已下达', '完工', '未下达']
params.query.planStateCode = ['Run', 'Delivery', 'Issued', 'Yes', 'Finish', 'Not', 'Paused', 'Reserved', 'TF_ZF']
params.query.serialNumber = null
break
case '架次已开工':
params.query.planStateCode = ['执行中', '已派工', '已下发']
params.query.planStateCode = ['Run', 'Delivery', 'Issued']
params.query.serialNumber = null
break
case '架次已完工':
params.query.planStateCode = ['完工']
params.query.planStateCode = ['Finish']
params.query.serialNumber = null
break
case '站位总数':
params.query.planStateCode = ['执行中', '已派工', '已下发', '已下达', '完工', '未下达']
params.query.planStateCode = ['Run', 'Delivery', 'Issued', 'Yes', 'Finish', 'Not', 'Paused', 'Reserved', 'TF_ZF']
break
case '站位已开工':
params.query.planStateCode = ['执行中', '已派工', '已下发']
params.query.planStateCode = ['Run', 'Delivery', 'Issued']
break
case '站位已完工':
params.query.planStateCode = ['完工']
params.query.planStateCode = ['Finish']
break
default:
params.query.planStateCode = false
......@@ -395,6 +399,7 @@ export default {
path: '/page/1365d099-837a-4a7d-8e61-5a59eb8d75d4',
query: {
title: '飞机组装总体站位看板',
serialNumber: this.stationRow.serialNumber,
model: this.sortiesRow.aircraftType.defName,
sorties: this.sortiesRow.aircraftSorties.defCode,
data: JSON.stringify(data)
......@@ -523,8 +528,8 @@ position: relative;
cursor: pointer;
z-index: 9;
&.s54 {
left: 670px;
top: 278px;
left: 546px;
top: 206px;
width: 127px;
height: 150px;
> .model {
......@@ -571,10 +576,10 @@ position: relative;
}
}
&.s53 {
top: 525px;
left: 50px;
width: 394px;
height: 138px;
top: 427px;
left: 35px;
width: 374px;
height: 128px;
background-repeat: no-repeat; //不重复
background-size: 100% 100%; // 满屏
> .model {
......@@ -597,7 +602,7 @@ position: relative;
> .stage {
width: 446px;
height: 104px;
top: 110px;
top: 94px;
left: -21px;
position: absolute;
background-image: url("../../../assets/看板2/站台/53底座.png");
......@@ -607,7 +612,7 @@ position: relative;
> .tai {
width: 323px;
height: 45px;
top: 120px;
top: 110px;
left: 45px;
position: absolute;
background-repeat: no-repeat; //不重复
......@@ -621,10 +626,10 @@ position: relative;
}
}
&.s52 {
top: 325px;
left: 150px;
width: 262px;
height: 153px;
top: 268px;
left: 100px;
width: 200px;
height: 116px;
background-repeat: no-repeat; //不重复
background-size: 100% 100%; // 满屏
> .model {
......@@ -646,19 +651,19 @@ position: relative;
}
}
> .stage {
width: 391px;
height: 92px;
top: 137px;
left: -55px;
width: 321px;
height: 56px;
top: 104px;
left: -52px;
position: absolute;
background-image: url("../../../assets/看板2/站台/52底座.png");
background-repeat: no-repeat; //不重复
background-size: 100% 100%; // 满屏
}
> .tai {
width: 283px;
height: 45px;
top: 140px;
width: 213px;
height: 26px;
top: 110px;
left: 3px;
position: absolute;
background-repeat: no-repeat; //不重复
......@@ -672,10 +677,10 @@ position: relative;
}
}
&.s51 {
top: 395px;
left: 427px;
width: 427px;
height: 210px;
top: 326px;
left: 357px;
width: 262px;
height: 133px;
background-repeat: no-repeat; //不重复
background-size: 100% 100%; // 满屏
> .model {
......@@ -697,20 +702,20 @@ position: relative;
}
}
> .stage {
width: 450px;
height: 105px;
top: 180px;
left: 20px;
width: 391px;
height: 92px;
top: 102px;
left: -55px;
position: absolute;
background-image: url("../../../assets/看板2/站台/51底座.png");
background-repeat: no-repeat; //不重复
background-size: 100% 100%; // 满屏
}
> .tai {
width: 322px;
height: 47px;
top: 190px;
left: 90px;
width: 283px;
height: 45px;
top: 110px;
left: 3px;
position: absolute;
background-repeat: no-repeat; //不重复
background-size: 100% 100%; // 满屏
......@@ -723,10 +728,10 @@ position: relative;
}
}
&.s41 {
top: 483px;
left: 822px;
width: 493px;
height: 241px;
top: 390px;
left: 577px;
width: 397px;
height: 170px;
background-repeat: no-repeat; //不重复
background-size: 100% 100%; // 满屏
> .model {
......@@ -746,20 +751,70 @@ position: relative;
background-image: url("../../../assets/看板2/41灰.png");
}
}
> .stage {
width: 450px;
height: 105px;
top: 140px;
left: 10px;
position: absolute;
background-image: url("../../../assets/看板2/站台/41底座.png");
background-repeat: no-repeat; //不重复
background-size: 100% 100%; // 满屏
}
> .tai {
width: 322px;
height: 47px;
top: 150px;
left: 80px;
position: absolute;
background-repeat: no-repeat; //不重复
background-size: 100% 100%; // 满屏
&.stage-dong {
background-image: url("../../../assets/看板2/站台/动台.gif");
}
&.stage-jing {
background-image: url("../../../assets/看板2/站台/静台.png");
}
}
}
&.s31{
top: 470px;
left: 920px;
width: 473px;
height: 221px;
background-repeat: no-repeat; //不重复
background-size: 100% 100%; // 满屏
> .model {
width: 100%;
height: 100%;
z-index: 9;
position: absolute;
background-repeat: no-repeat; //不重复
background-size: 100% 100%; // 满屏
&.New {
background-image: url("../../../assets/看板2/31线.png");
}
&.Run {
background-image: url("../../../assets/看板2/31黄.png");
}
&.Finish {
background-image: url("../../../assets/看板2/31灰.png");
}
}
> .stage {
width: 507px;
height: 118px;
top: 209px;
top: 189px;
left: 20px;
position: absolute;
background-image: url("../../../assets/看板2/站台/41底座.png");
background-image: url("../../../assets/看板2/站台/31底座.png");
background-repeat: no-repeat; //不重复
background-size: 100% 100%; // 满屏
}
> .tai {
width: 369px;
height: 54px;
top: 218px;
top: 198px;
left: 90px;
position: absolute;
background-repeat: no-repeat; //不重复
......@@ -772,8 +827,8 @@ position: relative;
}
}
}
&.s31 {
top: 601px;
&.s21 {
top: 589px;
left: 1358px;
width: 518px;
height: 269px;
......@@ -787,13 +842,13 @@ position: relative;
background-repeat: no-repeat; //不重复
background-size: 100% 100%; // 满屏
&.New {
background-image: url("../../../assets/看板2/31线.png");
background-image: url("../../../assets/看板2/21线.png");
}
&.Run {
background-image: url("../../../assets/看板2/31黄.png");
background-image: url("../../../assets/看板2/21黄.png");
}
&.Finish {
background-image: url("../../../assets/看板2/31灰.png");
background-image: url("../../../assets/看板2/21灰.png");
}
}
> .stage {
......
......@@ -625,6 +625,10 @@ export default {
{
'fieldName': 'initials',
'sortOrder': 'asc'
},
{
'fieldName': 'createTime',
'sortOrder': 'desc'
}
],
'toValidateKeys': ''
......
......@@ -709,6 +709,10 @@ export default {
{
'fieldName': 'initials',
'sortOrder': 'asc'
},
{
'fieldName': 'createTime',
'sortOrder': 'desc'
}
],
'toValidateKeys': ''
......
......@@ -192,7 +192,10 @@ export default {
// 发送请求
post('/ExtScanCodeRecord/search', params)
.then((res) => {
this.tableData = res.items.content || []
this.tableData = res.items.content.map(item => {
item.amount = Number(item.amount).toFixed(20).replace(/\.0+$/, '').replace(/(\.\d+[1-9])0+$/, '$1')
return item
}) || []
this.tablePagination.total = res.items.totalElements
})
.catch((err) => console.log(err))
......
......@@ -81,7 +81,10 @@ export default {
basicData: { selectData: _that.selectData, selectionRows: [] },
loadingMaterial: false,
loadingAirEquipment: false,
loadingOutSource: false
loadingOutSource: false,
firstMaterialClick: true,
firstOutSourceClick: false,
firstAirEquipmentClick: false
}
},
computed: {
......@@ -135,6 +138,16 @@ export default {
},
tabClick() {
this.$set(this.basicData, 'selectionRows', [])
if (this['first' + this.active + 'Click']) return
this['first' + this.active + 'Click'] = true
if (['AirEquipment', 'OutSource'].includes(this.active)) {
this.$nextTick(() => {
const com = this.$utils._get(this.$refs[this.active + 'Table'], '$refs.asCom')
if (com && com.showData) {
com.showData = [...com.showData]
}
})
}
}
}
}
......
<!--
* @Author: gjn
* @Date: 2023-08-04 10:29:39
* @Description:批量签审_理化实验入库响应
-->
<template>
<div class="jobResponseInExperiment">
<dee-as-com
ref="applyTable"
class="list-table"
:basic-data=" { selectData,selectionRows }"
:lay-config="{ typeName: 'JobResponseInStorage', layKey: 'batchSign_jobResponseInExperiment'}"
@selectionChange="selectionChange"
/>
</div>
</template>
<script>
export default {
name: 'JobResponseInExperiment',
components: {},
props: {
selectData: {
type: Object,
default: () => {}
}
},
data() {
return {
selectionRows: []
}
},
computed: {},
watch: {},
created() {},
mounted() {},
// 组件方法
methods: {
selectionChange(val) {
this.selectionRows = val
}
}
}
</script>
<style lang='scss'>
.jobResponseInExperiment{
width: 100%;
height: 100%;
box-sizing: border-box;
padding:0 4px;
}
</style>
......@@ -12,7 +12,7 @@
@searchEvent="searchEvent"
/>
<!-- tab页签 -->
<el-tabs v-model="active" type="border-card" class="detailTabs">
<el-tabs v-model="active" type="border-card" class="detailTabs" @tab-click="tabClick">
<el-tab-pane :label="'器材验收单(' + totals.MaterialTotal + ')'" name="Material">
<dee-as-com
ref="MaterialTable"
......@@ -75,7 +75,10 @@ export default {
],
loadingMaterial: false,
loadingAirEquipment: false,
loadingOutSource: false
loadingOutSource: false,
firstMaterialClick: true,
firstOutSourceClick: false,
firstAirEquipmentClick: false
}
},
computed: {
......@@ -122,6 +125,18 @@ export default {
el.$refs.asCom.getData(this.searchItems)
}
})
},
tabClick(val) {
if (this['first' + this.active + 'Click']) return
this['first' + this.active + 'Click'] = true
if (['AirEquipment', 'OutSource'].includes(this.active)) {
this.$nextTick(() => {
const com = this.$utils._get(this.$refs[this.active + 'Table'], '$refs.asCom')
if (com && com.showData) {
com.showData = [...com.showData]
}
})
}
}
}
}
......
......@@ -81,7 +81,10 @@ export default {
basicData: { selectData: _that.selectData, selectionRows: [] },
loadingMaterial: false,
loadingAirEquipment: false,
loadingOutSource: false
loadingOutSource: false,
firstMaterialClick: true,
firstOutSourceClick: false,
firstAirEquipmentClick: false
}
},
computed: {
......@@ -127,6 +130,16 @@ export default {
},
tabClick() {
this.$set(this.basicData, 'selectionRows', [])
if (this['first' + this.active + 'Click']) return
this['first' + this.active + 'Click'] = true
if (['AirEquipment', 'OutSource'].includes(this.active)) {
this.$nextTick(() => {
const com = this.$utils._get(this.$refs[this.active + 'Table'], '$refs.asCom')
if (com && com.showData) {
com.showData = [...com.showData]
}
})
}
}
}
}
......
......@@ -81,7 +81,10 @@ export default {
basicData: { selectData: _that.selectData, selectionRows: [] },
loadingMaterial: false,
loadingAirEquipment: false,
loadingOutSource: false
loadingOutSource: false,
firstMaterialClick: true,
firstOutSourceClick: false,
firstAirEquipmentClick: false
}
},
computed: {
......@@ -135,6 +138,16 @@ export default {
},
tabClick() {
this.$set(this.basicData, 'selectionRows', [])
if (this['first' + this.active + 'Click']) return
this['first' + this.active + 'Click'] = true
if (['AirEquipment', 'OutSource'].includes(this.active)) {
this.$nextTick(() => {
const com = this.$utils._get(this.$refs[this.active + 'Table'], '$refs.asCom')
if (com && com.showData) {
com.showData = [...com.showData]
}
})
}
}
}
}
......
<!--
* @Author: gjn
* @Date: 2023-11-10 10:29:39
* @Description:批量签审_检验入库响应
-->
<template>
<div class="warehouseInTest">
<dee-as-com
:key="refreshKey"
ref="applyTable"
class="list-table"
:basic-data=" { selectData,selectionRows }"
:lay-config="{ typeName: 'JobResponseInStorage', layKey: 'batchSign_jobResponseInTest'}"
@selectionChange="selectionChange"
/>
</div>
</template>
<script>
export default {
name: 'WarehouseInTest',
components: {},
props: {
selectData: {
type: Object,
default: () => {}
}
},
data() {
return {
selectionRows: [],
refreshKey: 1
}
},
computed: {},
watch: {},
created() {},
mounted() {
this.$bus.$on('refreshBackItem', () => {
this.$nextTick(() => {
this.refreshKey++
})
})
},
// 组件方法
methods: {
selectionChange(val) {
this.selectionRows = val
}
}
}
</script>
<style lang='scss'>
.warehouseInTest{
width: 100%;
height: 100%;
box-sizing: border-box;
padding:0 4px;
}
</style>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment