Commit a675cd63 authored by jingnan's avatar jingnan 👀

Merge branch 'dev' of http://94.191.100.41/tfmom/tf-mom-web into dev

parents be668cdb aa2a18bf
/**
* @Description: 新增项目维护生成按钮
* @author xioln
* @date 2023-09-12
* @FilePath: applications/dee-mes/src/privateComponents/components/GenerateCreateOrproductionButton/index.vue
*/
<template>
<div class="className">
<dee-as-com
ref="oRProduction"
:lay-config="{
typeName: 'ORProduction',
layKey: 'create_orproduction'
}"
:basic-data="basicData"
@on-createGenerate="createGenerate"
/>
</div>
</template>
<script>
import { post } from '@/utils/http'
export default {
componentName: '新增项目维护生成按钮',
name: 'GenerateCreateOrproductionButton',
components: {},
props: {
basicData: {
type: Object,
default: () => null
},
form: {
type: Object,
default: () => null
}
},
data() {
return {
}
},
computed: {},
created() {
// 初始化数据
},
methods: {
createGenerate(v) {
const form = this.$refs.oRProduction.$children[0].form
const params = {
operator: 'ADD',
'isValid': 'Y',
'subTypeName': 'ORProduction',
'oRProductionUpdateRecords': [],
'assemblyStartTime': form.assemblyTime[0],
'assemblyEndTime': form.assemblyTime[1],
'jobNo': form.jobNo,
'soritesType': { type: form.soritesType.type },
'aircraftTypeId': form.aircraftTypeId,
'aircraftSortiesId': form.aircraftSortiesId
}
post(`/ORProduction/create`, params).then(res => {
const id = res.items.id
post(`/MilestonePlan/generate?orProductionId=${id}`).then(res => {
this.$util.showMessageSuccess(res.message)
this.$emit('cancel')
}).catch((err) => {
console.log(err)
})
this.$emit('cancel')
}).catch((err) => {
console.log(err)
})
}
}
}
</script>
<style lang='scss'>
</style>
export default {
props: {},
layoutConfigData: [
{
title: '高级组件配置',
data: [
{
key: 'linkageAttr',
title: '架次联动属性',
component: {
defaultValue: 'sorties',
name: 'el-input',
placeholder: '架次ID'
}
},
{
key: 'linkageAttr1',
title: '机型联动属性',
component: {
defaultValue: 'aircraftType',
name: 'el-input',
placeholder: '机型ID'
}
}
]
}
],
data() {
return {
}
},
created() {
},
computed: {
},
methods: {
}
}
......@@ -17,10 +17,14 @@
</div>
</template>
<script>
import config from './config'
import _get from 'lodash.get'
export default {
componentName: '作业令号',
name: 'JobNumberSelect', // name写在组件的最前方,自定义组件为必填
components: {},
mixins: [config],
props: {
itemObj: {
type: Object,
......@@ -48,28 +52,21 @@ export default {
},
computed: {},
watch: {
'form.sorties': {
form: {
immediate: true,
deep: true,
handler(val, oldVal) {
if (val !== oldVal) {
const params = {
searchItems: {
items: [
{ 'fieldName': 'aircraftTypeId', operator: 'EQ', value: this.form.aircraftType.split('+')[0] },
{ 'fieldName': 'aircraftSortiesId', operator: 'EQ', value: val.split('+')[0] }
],
operator: 'AND'
}
handler(val) {
if (val) {
if (!this.itemObj.linkageAttr) {
return
}
const _val = _get(this.form, this.itemObj.linkageAttr)
const _val1 = _get(this.form, this.itemObj.linkageAttr1)
if (_val !== this.linkageValue || _val1 !== this.linkageValue1) {
this.linkageValue = _val
this.linkageValue1 = _val1
this.getData(_val, _val1)
}
this.$api.searchApi('ORProduction', params).then(res => {
this.options = res.items.content.map(row => {
return {
value: row.id,
label: row.jobNo
}
})
})
}
}
},
......@@ -95,6 +92,27 @@ export default {
created() {
},
methods: {
getData(val, val1) {
if (val && val1) {
const params = {
searchItems: {
items: [
{ 'fieldName': 'aircraftTypeId', operator: 'EQ', value: val1 },
{ 'fieldName': 'aircraftSortiesId', operator: 'EQ', value: val }
],
operator: 'AND'
}
}
this.$api.searchApi('ORProduction', params).then(res => {
this.options = res.items.content.map(row => {
return {
value: row.id,
label: row.jobNo
}
})
})
}
},
changeVal() {
this.$emit('input', this.selVal)
}
......
export default {
props: {},
layoutConfigData: [
{
title: '高级组件配置',
data: [
{
key: 'linkageAttr',
title: '联动属性',
component: {
defaultValue: 'extWorkCenterId',
name: 'el-input'
}
}
]
}
],
data() {
return {
}
},
created() {
},
computed: {
},
methods: {
}
}
/**
* @Description: 架次根据机型选择
* @author xioln
* @date 2023-08-14
* @FilePath: applications/dee-mes/src/privateComponents/components/getSortiesSelect/index.vue
*/
<template>
<div class="getSorties-select">
<el-select v-model="selVal" placeholder="请选择" size="mini" :disabled="disabledVal" @change="changeVal">
<el-option
v-for="item in options"
:key="item.value"
:label="item.label"
:value="item.value"
/>
</el-select>
</div>
</template>
<script>
import config from './config'
import _get from 'lodash.get'
export default {
componentName: '架次',
name: 'GetSortiesSelect', // name写在组件的最前方,自定义组件为必填
components: {},
mixins: [config],
props: {
itemObj: {
type: Object,
default: null
},
form: {
type: Object,
default: () => {}
},
middleForm: {
type: Object,
default: () => {}
},
value: {
type: [Number, String, Object],
default: () => ''
}
},
data() {
return {
options: [],
selVal: '',
disabledVal: false,
linkageValue: ''
}
},
computed: {},
watch: {
form: {
immediate: true,
deep: true,
handler(val) {
if (val) {
if (!this.itemObj.linkageAttr) {
return
}
const _val = _get(this.form, this.itemObj.linkageAttr)
if (_val !== this.linkageValue) {
this.linkageValue = _val
this.getData(_val)
}
}
}
},
itemObj: {
immediate: true,
deep: true,
handler(v) {
if (v.component.hasOwnProperty('disabled')) {
this.disabledVal = v.component.disabled
}
}
},
value: {
immediate: true,
deep: true,
handler(v) {
if (v) {
this.selVal = this.value
}
}
}
},
created() {
// 初始化数据
},
methods: {
getData(val) {
if (val) {
const params = {
searchItems: {
items: [{ 'fieldName': 'aircraftTypeId', operator: 'EQ', value: val }],
operator: 'AND'
}
}
this.$api.searchApi('AircraftSorties', params).then(res => {
this.options = res.items.content.map(row => {
return {
value: row.id,
label: row.defName
}
})
})
}
},
changeVal() {
this.$emit('input', this.selVal)
}
}
}
</script>
<style lang='scss'>
</style>
......@@ -18,7 +18,7 @@
</template>
<script>
export default {
componentName: '架次',
componentName: '供外出库架次',
name: 'GetSortiesSelect', // name写在组件的最前方,自定义组件为必填
components: {},
props: {
......
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