Commit db72294d authored by 周远喜's avatar 周远喜

ok

parent d0886e23
...@@ -223,8 +223,8 @@ export default { ...@@ -223,8 +223,8 @@ export default {
return Api.delete(`${fileUrl}/delete/${id}`,) return Api.delete(`${fileUrl}/delete/${id}`,)
}, },
//获取用户菜单 //获取用户菜单
getusermenu() { getusermenu(params) {
return Api.get(`${systemUrl}/menu/getusermenu`); return Api.get(`${systemUrl}/menu/getusermenu`,params);
}, },
//获取全部菜单 //获取全部菜单
getmarstermenu() { getmarstermenu() {
......
...@@ -67,7 +67,7 @@ export default { ...@@ -67,7 +67,7 @@ export default {
methods: { methods: {
getMenu() { getMenu() {
this.$http.sysUser.getusermenu().then(res => { this.$http.sysUser.getusermenu({id:"portal"}).then(res => {
if (res.result) { if (res.result) {
this.menus = res.result[0].children; this.menus = res.result[0].children;
this.toMenu(this.menus); this.toMenu(this.menus);
......
<template>
<div>{{msg}}</div>
</template>
<script>
import Oidc from 'oidc-client'
var mgr = new Oidc.UserManager({ response_mode: 'query' })
export default {
name: 'CallBack',
layout: 'empty',
data() {
return {
msg: '授权登录成功,即将回到网站...'
}
},
beforeCreate() {
mgr.signinRedirectCallback()
.then(function() {
//console.log("callback...");
window.location = '/'
})
.catch(function(e) {})
}
}
</script>
<template>
<div id="gomap"></div>
</template>
<script>
import go from 'gojs'
const $ = go.GraphObject.make
export default {
layout: 'empty',
data() {
return {}
},
mounted() {
let map = $(go.Diagram, 'gomap', {
'undoManager.isEnabled': true // enable Ctrl-Z to undo and Ctrl-Y to redo
})
var myModel = $(go.Model)
map.nodeTemplate = $(
go.Node,
'Horizontal',
$(
go.Panel,
'Auto',
$(
go.TextBlock, //节点形状和背景颜色的设置
"hello",
new go.Binding('text','key')
),
{
click: function(e, node) {
// 双击事件
// handlerDC(e, node);//双击执行的方法
alert(node.part.key)
console.log(node)
}
}
)
)
myModel.nodeDataArray = [{ key: 'henq' }, { key: 'lily' }, { key: 'xinyi' }]
map.model = myModel
},
methods: {}
}
</script>
<style lang="less">
@basecolor: #249e91;
@endcolor: #d1dedc;
@fontColor: white;
#gomap {
canvas{
border:0;
outline:none;
}
width: 100%;
height: 100%;
position: fixed;
top: 0;
left: 0;
}
</style>
\ No newline at end of file
<template>
<Form ref="form" :model="entity" :rules="rules" :label-width="90">
<Row>
<Col :span="12">
<FormItem :label="l('upId')" prop="upId">
<InputNumber v-model="entity.upId"></InputNumber>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('mesCode')" prop="mesCode">
<Input v-model="entity.mesCode"></Input>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('taskType')" prop="taskType">
<Input v-model="entity.taskType"></Input>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('productId')" prop="productId">
<InputNumber v-model="entity.productId"></InputNumber>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('stage')" prop="stage">
<Input v-model="entity.stage"></Input>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('materialId')" prop="materialId">
<Input v-model="entity.materialId"></Input>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('quantity')" prop="quantity">
<InputNumber v-model="entity.quantity"></InputNumber>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('guestName')" prop="guestName">
<Input v-model="entity.guestName"></Input>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('printSupply')" prop="printSupply">
<Input v-model="entity.printSupply"></Input>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('functionaryOffice')" prop="functionaryOffice">
<Input v-model="entity.functionaryOffice"></Input>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('mainDepartmentId')" prop="mainDepartmentId">
<Input v-model="entity.mainDepartmentId"></Input>
</FormItem>
</Col>
<Col :span="24">
<FormItem :label="l('remark')" prop="remark">
<Input v-model="entity.remark" type="textarea" :rows="5"></Input>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('taskInputDate')" prop="taskInputDate">
<DatePicker type="date" v-model="entity.taskInputDate"></DatePicker>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('taskRequire')" prop="taskRequire">
<Input v-model="entity.taskRequire"></Input>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('putintDocmentCode')" prop="putintDocmentCode">
<Input v-model="entity.putintDocmentCode"></Input>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('technologyDocmentCode')" prop="technologyDocmentCode">
<Input v-model="entity.technologyDocmentCode"></Input>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('outerDrawnNumber')" prop="outerDrawnNumber">
<Input v-model="entity.outerDrawnNumber"></Input>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('modelVersion')" prop="modelVersion">
<Input v-model="entity.modelVersion"></Input>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('taskCode')" prop="taskCode">
<Input v-model="entity.taskCode"></Input>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('designer')" prop="designer">
<Input v-model="entity.designer"></Input>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('officeFunctionary')" prop="officeFunctionary">
<Input v-model="entity.officeFunctionary"></Input>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('mainRoutingPeople')" prop="mainRoutingPeople">
<Input v-model="entity.mainRoutingPeople"></Input>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('status')" prop="status">
<Dictionary code="mes_xingchi_plan.mes_order.status" v-model="entity.status"></Dictionary>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('workHours')" prop="workHours">
<InputNumber v-model="entity.workHours"></InputNumber>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('printPeriod')" prop="printPeriod">
<InputNumber v-model="entity.printPeriod"></InputNumber>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('equipment')" prop="equipment">
<Input v-model="entity.equipment"></Input>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('materialWeight')" prop="materialWeight">
<InputNumber v-model="entity.materialWeight"></InputNumber>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('isSupportingFinish')" prop="isSupportingFinish">
<Dictionary
code="mes_xingchi_plan.mes_order.is_supporting_finish"
v-model="entity.isSupportingFinish"
></Dictionary>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('demandStartDate')" prop="demandStartDate">
<DatePicker type="date" v-model="entity.demandStartDate"></DatePicker>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('demandFinishDate')" prop="demandFinishDate">
<DatePicker type="date" v-model="entity.demandFinishDate"></DatePicker>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('actualStartDate')" prop="actualStartDate">
<DatePicker type="date" v-model="entity.actualStartDate"></DatePicker>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('actualFinishDate')" prop="actualFinishDate">
<DatePicker type="date" v-model="entity.actualFinishDate"></DatePicker>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('isDeleted')" prop="isDeleted">
<Dictionary code="mes_xingchi_plan.mes_order.is_deleted" v-model="entity.isDeleted"></Dictionary>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('creatorUserId')" prop="creatorUserId">
<InputNumber v-model="entity.creatorUserId"></InputNumber>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('creationTime')" prop="creationTime">
<DatePicker type="date" v-model="entity.creationTime"></DatePicker>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('lastModifierUserId')" prop="lastModifierUserId">
<InputNumber v-model="entity.lastModifierUserId"></InputNumber>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('lastModificationTime')" prop="lastModificationTime">
<DatePicker type="date" v-model="entity.lastModificationTime"></DatePicker>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('orderQuotationStatus')" prop="orderQuotationStatus">
<Dictionary
code="mes_xingchi_plan.mes_order.order_quotation_status"
v-model="entity.orderQuotationStatus"
></Dictionary>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('distributeMainRouting')" prop="distributeMainRouting">
<InputNumber v-model="entity.distributeMainRouting"></InputNumber>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('mainRoutingFinishDate')" prop="mainRoutingFinishDate">
<DatePicker type="date" v-model="entity.mainRoutingFinishDate"></DatePicker>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('majorRoutingPeople')" prop="majorRoutingPeople">
<InputNumber v-model="entity.majorRoutingPeople"></InputNumber>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('majorRoutingFinishDate')" prop="majorRoutingFinishDate">
<DatePicker type="date" v-model="entity.majorRoutingFinishDate"></DatePicker>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('checkUpPeople')" prop="checkUpPeople">
<InputNumber v-model="entity.checkUpPeople"></InputNumber>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('checkUpFinishDate')" prop="checkUpFinishDate">
<DatePicker type="date" v-model="entity.checkUpFinishDate"></DatePicker>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('productingPreparationPeople')" prop="productingPreparationPeople">
<InputNumber v-model="entity.productingPreparationPeople"></InputNumber>
</FormItem>
</Col>
<Col :span="12">
<FormItem
:label="l('productingPreparationFinishDate')"
prop="productingPreparationFinishDate"
>
<DatePicker type="date" v-model="entity.productingPreparationFinishDate"></DatePicker>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('quotationPeople')" prop="quotationPeople">
<InputNumber v-model="entity.quotationPeople"></InputNumber>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('quotationFinishDate')" prop="quotationFinishDate">
<DatePicker type="date" v-model="entity.quotationFinishDate"></DatePicker>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('routingMethod')" prop="routingMethod">
<Input v-model="entity.routingMethod"></Input>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('outerEnvelopeSize')" prop="outerEnvelopeSize">
<Input v-model="entity.outerEnvelopeSize"></Input>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('divideMark')" prop="divideMark">
<Dictionary code="mes_xingchi_plan.mes_order.divide_mark" v-model="entity.divideMark"></Dictionary>
</FormItem>
</Col>
<Col :span="24">
<FormItem :label="l('productCode')" prop="productCode">
<Input v-model="entity.productCode" type="textarea" :rows="5"></Input>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('productName')" prop="productName">
<Input v-model="entity.productName"></Input>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('drawnNumber')" prop="drawnNumber">
<Input v-model="entity.drawnNumber"></Input>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('qualifiedQuantity')" prop="qualifiedQuantity">
<InputNumber v-model="entity.qualifiedQuantity"></InputNumber>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('uncertificateQuantity')" prop="uncertificateQuantity">
<InputNumber v-model="entity.uncertificateQuantity"></InputNumber>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('mainRoutingSetStatus')" prop="mainRoutingSetStatus">
<Dictionary
code="mes_xingchi_plan.mes_order.main_routing_set_status"
v-model="entity.mainRoutingSetStatus"
></Dictionary>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('majorRoutingSetStatus')" prop="majorRoutingSetStatus">
<Dictionary
code="mes_xingchi_plan.mes_order.major_routing_set_status"
v-model="entity.majorRoutingSetStatus"
></Dictionary>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('materialBillSetStatus')" prop="materialBillSetStatus">
<Dictionary
code="mes_xingchi_plan.mes_order.material_bill_set_status"
v-model="entity.materialBillSetStatus"
></Dictionary>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('routingDataSetStatus')" prop="routingDataSetStatus">
<Dictionary
code="mes_xingchi_plan.mes_order.routing_data_set_status"
v-model="entity.routingDataSetStatus"
></Dictionary>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('rootId')" prop="rootId">
<InputNumber v-model="entity.rootId"></InputNumber>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('mainRoutingExecuteStatus')" prop="mainRoutingExecuteStatus">
<Dictionary
code="mes_xingchi_plan.mes_order.main_routing_execute_status"
v-model="entity.mainRoutingExecuteStatus"
></Dictionary>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('majorRoutingExecuteStatus')" prop="majorRoutingExecuteStatus">
<Dictionary
code="mes_xingchi_plan.mes_order.major_routing_execute_status"
v-model="entity.majorRoutingExecuteStatus"
></Dictionary>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('mainRoutingActualStartDate')" prop="mainRoutingActualStartDate">
<DatePicker type="date" v-model="entity.mainRoutingActualStartDate"></DatePicker>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('mainRoutingActualFinishDate')" prop="mainRoutingActualFinishDate">
<DatePicker type="date" v-model="entity.mainRoutingActualFinishDate"></DatePicker>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('majorRoutingActualStartDate')" prop="majorRoutingActualStartDate">
<DatePicker type="date" v-model="entity.majorRoutingActualStartDate"></DatePicker>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('majorRoutingActualFinishDate')" prop="majorRoutingActualFinishDate">
<DatePicker type="date" v-model="entity.majorRoutingActualFinishDate"></DatePicker>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('batchNumber')" prop="batchNumber">
<Input v-model="entity.batchNumber"></Input>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('projectNumber')" prop="projectNumber">
<Input v-model="entity.projectNumber"></Input>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('urgencyLevel')" prop="urgencyLevel">
<Input v-model="entity.urgencyLevel"></Input>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('materialName')" prop="materialName">
<Input v-model="entity.materialName"></Input>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('isPreschedule')" prop="isPreschedule">
<Dictionary
code="mes_xingchi_plan.mes_order.is_preschedule"
v-model="entity.isPreschedule"
></Dictionary>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('spareQty')" prop="spareQty">
<InputNumber v-model="entity.spareQty"></InputNumber>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('demandStart')" prop="demandStart">
<DatePicker type="date" v-model="entity.demandStart"></DatePicker>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('demandFinish')" prop="demandFinish">
<DatePicker type="date" v-model="entity.demandFinish"></DatePicker>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('partNamePro')" prop="partNamePro">
<Input v-model="entity.partNamePro"></Input>
</FormItem>
</Col>
</Row>
<FormItem>
<Button type="primary" @click="handleSubmit" :disabled="disabled">保存</Button>
<Button @click="handleClose" class="ml20">取消</Button>
</FormItem>
</Form>
</template>
<script>
import Api from './api'
export default {
name: 'Add',
data() {
return {
disabled: false,
entity: {},
rules: {
name: [{ required: true, message: '必填', trigger: 'blur' }]
}
}
},
props: {
v: Object
},
methods: {
handleSubmit() {
this.$refs.form.validate((v) => {
if (v) {
this.disabled = true
Api.create(this.entity)
.then((r) => {
this.disabled = false
if (r.success) {
this.$Message.success('保存成功')
this.$emit('on-ok')
} else {
this.$Message.error('保存失败')
}
})
.catch((err) => {
this.disabled = false
this.$Message.error('保存失败')
console.warn(err)
})
}
})
},
handleClose() {
this.$emit('on-close')
},
l(key) {
key = 'mes_order' + '.' + key
return this.$t(key)
}
},
watch: {
v() {
this.entity = this.$u.clone(this.v)
}
}
}
</script>
import Api from '@/plugins/request'
export default {
index: `${PlanUrl}/mesorders/paged`,
paged(params) {
return Api.post(`${PlanUrl}/mesorders/paged`, params);
},
get(params) {
return Api.get(`${PlanUrl}/mesorders/get`, params);
},
create(params) {
return Api.post(`${PlanUrl}/mesorders/create`, params);
},
update(params) {
return Api.post(`${PlanUrl}/mesorders/update`, params);
},
//删除:
delete(params) {
return Api.delete(`${PlanUrl}/mesorders/delete`, {
params: params
});
},
}
\ No newline at end of file
<template>
<div class="detail">
<Row>
<Filed :span="12" :name="l('upId')">{{entity.upId}}</Filed>
<Filed :span="12" :name="l('mesCode')">{{entity.mesCode}}</Filed>
<Filed :span="12" :name="l('taskType')">{{entity.taskType}}</Filed>
<Filed :span="12" :name="l('productId')">{{entity.productId}}</Filed>
<Filed :span="12" :name="l('stage')">{{entity.stage}}</Filed>
<Filed :span="12" :name="l('materialId')">{{entity.materialId}}</Filed>
<Filed :span="12" :name="l('quantity')">{{entity.quantity}}</Filed>
<Filed :span="12" :name="l('guestName')">{{entity.guestName}}</Filed>
<Filed :span="12" :name="l('printSupply')">{{entity.printSupply}}</Filed>
<Filed :span="12" :name="l('functionaryOffice')">{{entity.functionaryOffice}}</Filed>
<Filed :span="12" :name="l('mainDepartmentId')">{{entity.mainDepartmentId}}</Filed>
<Filed :span="24" :name="l('remark')">{{entity.remark}}</Filed>
<Filed :span="12" :name="l('taskInputDate')">{{entity.taskInputDate}}</Filed>
<Filed :span="12" :name="l('taskRequire')">{{entity.taskRequire}}</Filed>
<Filed :span="12" :name="l('putintDocmentCode')">{{entity.putintDocmentCode}}</Filed>
<Filed :span="12" :name="l('technologyDocmentCode')">{{entity.technologyDocmentCode}}</Filed>
<Filed :span="12" :name="l('outerDrawnNumber')">{{entity.outerDrawnNumber}}</Filed>
<Filed :span="12" :name="l('modelVersion')">{{entity.modelVersion}}</Filed>
<Filed :span="12" :name="l('taskCode')">{{entity.taskCode}}</Filed>
<Filed :span="12" :name="l('designer')">{{entity.designer}}</Filed>
<Filed :span="12" :name="l('officeFunctionary')">{{entity.officeFunctionary}}</Filed>
<Filed :span="12" :name="l('mainRoutingPeople')">{{entity.mainRoutingPeople}}</Filed>
<Filed :span="12" :name="l('status')">{{entity.status}}</Filed>
<Filed :span="12" :name="l('workHours')">{{entity.workHours}}</Filed>
<Filed :span="12" :name="l('printPeriod')">{{entity.printPeriod}}</Filed>
<Filed :span="12" :name="l('equipment')">{{entity.equipment}}</Filed>
<Filed :span="12" :name="l('materialWeight')">{{entity.materialWeight}}</Filed>
<Filed :span="12" :name="l('isSupportingFinish')">{{entity.isSupportingFinish}}</Filed>
<Filed :span="12" :name="l('demandStartDate')">{{entity.demandStartDate}}</Filed>
<Filed :span="12" :name="l('demandFinishDate')">{{entity.demandFinishDate}}</Filed>
<Filed :span="12" :name="l('actualStartDate')">{{entity.actualStartDate}}</Filed>
<Filed :span="12" :name="l('actualFinishDate')">{{entity.actualFinishDate}}</Filed>
<Filed :span="12" :name="l('isDeleted')">{{entity.isDeleted}}</Filed>
<Filed :span="12" :name="l('creatorUserId')">{{entity.creatorUserId}}</Filed>
<Filed :span="12" :name="l('creationTime')">{{entity.creationTime}}</Filed>
<Filed :span="12" :name="l('lastModifierUserId')">{{entity.lastModifierUserId}}</Filed>
<Filed :span="12" :name="l('lastModificationTime')">{{entity.lastModificationTime}}</Filed>
<Filed :span="12" :name="l('orderQuotationStatus')">{{entity.orderQuotationStatus}}</Filed>
<Filed :span="12" :name="l('distributeMainRouting')">{{entity.distributeMainRouting}}</Filed>
<Filed :span="12" :name="l('mainRoutingFinishDate')">{{entity.mainRoutingFinishDate}}</Filed>
<Filed :span="12" :name="l('majorRoutingPeople')">{{entity.majorRoutingPeople}}</Filed>
<Filed :span="12" :name="l('majorRoutingFinishDate')">{{entity.majorRoutingFinishDate}}</Filed>
<Filed :span="12" :name="l('checkUpPeople')">{{entity.checkUpPeople}}</Filed>
<Filed :span="12" :name="l('checkUpFinishDate')">{{entity.checkUpFinishDate}}</Filed>
<Filed
:span="12"
:name="l('productingPreparationPeople')"
>{{entity.productingPreparationPeople}}</Filed>
<Filed
:span="12"
:name="l('productingPreparationFinishDate')"
>{{entity.productingPreparationFinishDate}}</Filed>
<Filed :span="12" :name="l('quotationPeople')">{{entity.quotationPeople}}</Filed>
<Filed :span="12" :name="l('quotationFinishDate')">{{entity.quotationFinishDate}}</Filed>
<Filed :span="12" :name="l('routingMethod')">{{entity.routingMethod}}</Filed>
<Filed :span="12" :name="l('outerEnvelopeSize')">{{entity.outerEnvelopeSize}}</Filed>
<Filed :span="12" :name="l('divideMark')">{{entity.divideMark}}</Filed>
<Filed :span="24" :name="l('productCode')">{{entity.productCode}}</Filed>
<Filed :span="12" :name="l('productName')">{{entity.productName}}</Filed>
<Filed :span="12" :name="l('drawnNumber')">{{entity.drawnNumber}}</Filed>
<Filed :span="12" :name="l('qualifiedQuantity')">{{entity.qualifiedQuantity}}</Filed>
<Filed :span="12" :name="l('uncertificateQuantity')">{{entity.uncertificateQuantity}}</Filed>
<Filed :span="12" :name="l('mainRoutingSetStatus')">{{entity.mainRoutingSetStatus}}</Filed>
<Filed :span="12" :name="l('majorRoutingSetStatus')">{{entity.majorRoutingSetStatus}}</Filed>
<Filed :span="12" :name="l('materialBillSetStatus')">{{entity.materialBillSetStatus}}</Filed>
<Filed :span="12" :name="l('routingDataSetStatus')">{{entity.routingDataSetStatus}}</Filed>
<Filed :span="12" :name="l('rootId')">{{entity.rootId}}</Filed>
<Filed :span="12" :name="l('mainRoutingExecuteStatus')">{{entity.mainRoutingExecuteStatus}}</Filed>
<Filed :span="12" :name="l('majorRoutingExecuteStatus')">{{entity.majorRoutingExecuteStatus}}</Filed>
<Filed
:span="12"
:name="l('mainRoutingActualStartDate')"
>{{entity.mainRoutingActualStartDate}}</Filed>
<Filed
:span="12"
:name="l('mainRoutingActualFinishDate')"
>{{entity.mainRoutingActualFinishDate}}</Filed>
<Filed
:span="12"
:name="l('majorRoutingActualStartDate')"
>{{entity.majorRoutingActualStartDate}}</Filed>
<Filed
:span="12"
:name="l('majorRoutingActualFinishDate')"
>{{entity.majorRoutingActualFinishDate}}</Filed>
<Filed :span="12" :name="l('batchNumber')">{{entity.batchNumber}}</Filed>
<Filed :span="12" :name="l('projectNumber')">{{entity.projectNumber}}</Filed>
<Filed :span="12" :name="l('urgencyLevel')">{{entity.urgencyLevel}}</Filed>
<Filed :span="12" :name="l('materialName')">{{entity.materialName}}</Filed>
<Filed :span="12" :name="l('isPreschedule')">{{entity.isPreschedule}}</Filed>
<Filed :span="12" :name="l('spareQty')">{{entity.spareQty}}</Filed>
<Filed :span="12" :name="l('demandStart')">{{entity.demandStart}}</Filed>
<Filed :span="12" :name="l('demandFinish')">{{entity.demandFinish}}</Filed>
<Filed :span="12" :name="l('partNamePro')">{{entity.partNamePro}}</Filed>
</Row>
</div>
</template>
<script>
import Api from './api'
export default {
name: 'Add',
data() {
return {
entity: {},
rules: {
name: [{ required: true, message: '必填', trigger: 'blur' }],
code: [{ required: true, message: '必填', trigger: 'blur' }]
}
}
},
props: {
eid: Number
},
methods: {
load(v) {
Api.get({ id: v }).then((r) => {
this.entity = r.result
this.$emit('on-load')
})
},
handleClose() {
this.$emit('on-close')
},
l(key) {
key = 'mes_order' + '.' + key
return this.$t(key)
}
},
watch: {
eid(v) {
if (v != 0) {
this.load(v)
}
}
}
}
</script>
<template>
<Form ref="form" :model="entity" :rules="rules" :label-width="90">
<Row>
<Col :span="12">
<FormItem :label="l('upId')" prop="upId">
<InputNumber v-model="entity.upId"></InputNumber>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('mesCode')" prop="mesCode">
<Input v-model="entity.mesCode"></Input>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('taskType')" prop="taskType">
<Input v-model="entity.taskType"></Input>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('productId')" prop="productId">
<InputNumber v-model="entity.productId"></InputNumber>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('stage')" prop="stage">
<Input v-model="entity.stage"></Input>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('materialId')" prop="materialId">
<Input v-model="entity.materialId"></Input>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('quantity')" prop="quantity">
<InputNumber v-model="entity.quantity"></InputNumber>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('guestName')" prop="guestName">
<Input v-model="entity.guestName"></Input>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('printSupply')" prop="printSupply">
<Input v-model="entity.printSupply"></Input>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('functionaryOffice')" prop="functionaryOffice">
<Input v-model="entity.functionaryOffice"></Input>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('mainDepartmentId')" prop="mainDepartmentId">
<Input v-model="entity.mainDepartmentId"></Input>
</FormItem>
</Col>
<Col :span="24">
<FormItem :label="l('remark')" prop="remark">
<Input v-model="entity.remark" type="textarea" :rows="5"></Input>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('taskInputDate')" prop="taskInputDate">
<DatePicker type="date" v-model="entity.taskInputDate"></DatePicker>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('taskRequire')" prop="taskRequire">
<Input v-model="entity.taskRequire"></Input>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('putintDocmentCode')" prop="putintDocmentCode">
<Input v-model="entity.putintDocmentCode"></Input>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('technologyDocmentCode')" prop="technologyDocmentCode">
<Input v-model="entity.technologyDocmentCode"></Input>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('outerDrawnNumber')" prop="outerDrawnNumber">
<Input v-model="entity.outerDrawnNumber"></Input>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('modelVersion')" prop="modelVersion">
<Input v-model="entity.modelVersion"></Input>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('taskCode')" prop="taskCode">
<Input v-model="entity.taskCode"></Input>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('designer')" prop="designer">
<Input v-model="entity.designer"></Input>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('officeFunctionary')" prop="officeFunctionary">
<Input v-model="entity.officeFunctionary"></Input>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('mainRoutingPeople')" prop="mainRoutingPeople">
<Input v-model="entity.mainRoutingPeople"></Input>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('status')" prop="status">
<Dictionary code="mes_xingchi_plan.mes_order.status" v-model="entity.status"></Dictionary>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('workHours')" prop="workHours">
<InputNumber v-model="entity.workHours"></InputNumber>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('printPeriod')" prop="printPeriod">
<InputNumber v-model="entity.printPeriod"></InputNumber>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('equipment')" prop="equipment">
<Input v-model="entity.equipment"></Input>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('materialWeight')" prop="materialWeight">
<InputNumber v-model="entity.materialWeight"></InputNumber>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('isSupportingFinish')" prop="isSupportingFinish">
<Dictionary
code="mes_xingchi_plan.mes_order.is_supporting_finish"
v-model="entity.isSupportingFinish"
></Dictionary>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('demandStartDate')" prop="demandStartDate">
<DatePicker type="date" v-model="entity.demandStartDate"></DatePicker>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('demandFinishDate')" prop="demandFinishDate">
<DatePicker type="date" v-model="entity.demandFinishDate"></DatePicker>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('actualStartDate')" prop="actualStartDate">
<DatePicker type="date" v-model="entity.actualStartDate"></DatePicker>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('actualFinishDate')" prop="actualFinishDate">
<DatePicker type="date" v-model="entity.actualFinishDate"></DatePicker>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('isDeleted')" prop="isDeleted">
<Dictionary code="mes_xingchi_plan.mes_order.is_deleted" v-model="entity.isDeleted"></Dictionary>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('creatorUserId')" prop="creatorUserId">
<InputNumber v-model="entity.creatorUserId"></InputNumber>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('creationTime')" prop="creationTime">
<DatePicker type="date" v-model="entity.creationTime"></DatePicker>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('lastModifierUserId')" prop="lastModifierUserId">
<InputNumber v-model="entity.lastModifierUserId"></InputNumber>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('lastModificationTime')" prop="lastModificationTime">
<DatePicker type="date" v-model="entity.lastModificationTime"></DatePicker>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('orderQuotationStatus')" prop="orderQuotationStatus">
<Dictionary
code="mes_xingchi_plan.mes_order.order_quotation_status"
v-model="entity.orderQuotationStatus"
></Dictionary>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('distributeMainRouting')" prop="distributeMainRouting">
<InputNumber v-model="entity.distributeMainRouting"></InputNumber>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('mainRoutingFinishDate')" prop="mainRoutingFinishDate">
<DatePicker type="date" v-model="entity.mainRoutingFinishDate"></DatePicker>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('majorRoutingPeople')" prop="majorRoutingPeople">
<InputNumber v-model="entity.majorRoutingPeople"></InputNumber>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('majorRoutingFinishDate')" prop="majorRoutingFinishDate">
<DatePicker type="date" v-model="entity.majorRoutingFinishDate"></DatePicker>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('checkUpPeople')" prop="checkUpPeople">
<InputNumber v-model="entity.checkUpPeople"></InputNumber>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('checkUpFinishDate')" prop="checkUpFinishDate">
<DatePicker type="date" v-model="entity.checkUpFinishDate"></DatePicker>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('productingPreparationPeople')" prop="productingPreparationPeople">
<InputNumber v-model="entity.productingPreparationPeople"></InputNumber>
</FormItem>
</Col>
<Col :span="12">
<FormItem
:label="l('productingPreparationFinishDate')"
prop="productingPreparationFinishDate"
>
<DatePicker type="date" v-model="entity.productingPreparationFinishDate"></DatePicker>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('quotationPeople')" prop="quotationPeople">
<InputNumber v-model="entity.quotationPeople"></InputNumber>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('quotationFinishDate')" prop="quotationFinishDate">
<DatePicker type="date" v-model="entity.quotationFinishDate"></DatePicker>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('routingMethod')" prop="routingMethod">
<Input v-model="entity.routingMethod"></Input>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('outerEnvelopeSize')" prop="outerEnvelopeSize">
<Input v-model="entity.outerEnvelopeSize"></Input>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('divideMark')" prop="divideMark">
<Dictionary code="mes_xingchi_plan.mes_order.divide_mark" v-model="entity.divideMark"></Dictionary>
</FormItem>
</Col>
<Col :span="24">
<FormItem :label="l('productCode')" prop="productCode">
<Input v-model="entity.productCode" type="textarea" :rows="5"></Input>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('productName')" prop="productName">
<Input v-model="entity.productName"></Input>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('drawnNumber')" prop="drawnNumber">
<Input v-model="entity.drawnNumber"></Input>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('qualifiedQuantity')" prop="qualifiedQuantity">
<InputNumber v-model="entity.qualifiedQuantity"></InputNumber>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('uncertificateQuantity')" prop="uncertificateQuantity">
<InputNumber v-model="entity.uncertificateQuantity"></InputNumber>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('mainRoutingSetStatus')" prop="mainRoutingSetStatus">
<Dictionary
code="mes_xingchi_plan.mes_order.main_routing_set_status"
v-model="entity.mainRoutingSetStatus"
></Dictionary>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('majorRoutingSetStatus')" prop="majorRoutingSetStatus">
<Dictionary
code="mes_xingchi_plan.mes_order.major_routing_set_status"
v-model="entity.majorRoutingSetStatus"
></Dictionary>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('materialBillSetStatus')" prop="materialBillSetStatus">
<Dictionary
code="mes_xingchi_plan.mes_order.material_bill_set_status"
v-model="entity.materialBillSetStatus"
></Dictionary>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('routingDataSetStatus')" prop="routingDataSetStatus">
<Dictionary
code="mes_xingchi_plan.mes_order.routing_data_set_status"
v-model="entity.routingDataSetStatus"
></Dictionary>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('rootId')" prop="rootId">
<InputNumber v-model="entity.rootId"></InputNumber>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('mainRoutingExecuteStatus')" prop="mainRoutingExecuteStatus">
<Dictionary
code="mes_xingchi_plan.mes_order.main_routing_execute_status"
v-model="entity.mainRoutingExecuteStatus"
></Dictionary>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('majorRoutingExecuteStatus')" prop="majorRoutingExecuteStatus">
<Dictionary
code="mes_xingchi_plan.mes_order.major_routing_execute_status"
v-model="entity.majorRoutingExecuteStatus"
></Dictionary>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('mainRoutingActualStartDate')" prop="mainRoutingActualStartDate">
<DatePicker type="date" v-model="entity.mainRoutingActualStartDate"></DatePicker>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('mainRoutingActualFinishDate')" prop="mainRoutingActualFinishDate">
<DatePicker type="date" v-model="entity.mainRoutingActualFinishDate"></DatePicker>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('majorRoutingActualStartDate')" prop="majorRoutingActualStartDate">
<DatePicker type="date" v-model="entity.majorRoutingActualStartDate"></DatePicker>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('majorRoutingActualFinishDate')" prop="majorRoutingActualFinishDate">
<DatePicker type="date" v-model="entity.majorRoutingActualFinishDate"></DatePicker>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('batchNumber')" prop="batchNumber">
<Input v-model="entity.batchNumber"></Input>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('projectNumber')" prop="projectNumber">
<Input v-model="entity.projectNumber"></Input>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('urgencyLevel')" prop="urgencyLevel">
<Input v-model="entity.urgencyLevel"></Input>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('materialName')" prop="materialName">
<Input v-model="entity.materialName"></Input>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('isPreschedule')" prop="isPreschedule">
<Dictionary
code="mes_xingchi_plan.mes_order.is_preschedule"
v-model="entity.isPreschedule"
></Dictionary>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('spareQty')" prop="spareQty">
<InputNumber v-model="entity.spareQty"></InputNumber>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('demandStart')" prop="demandStart">
<DatePicker type="date" v-model="entity.demandStart"></DatePicker>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('demandFinish')" prop="demandFinish">
<DatePicker type="date" v-model="entity.demandFinish"></DatePicker>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('partNamePro')" prop="partNamePro">
<Input v-model="entity.partNamePro"></Input>
</FormItem>
</Col>
</Row>
<FormItem>
<Button type="primary" @click="handleSubmit" :disabled="disabled">保存</Button>
<Button @click="handleClose" class="ml20">取消</Button>
</FormItem>
</Form>
</template>
<script>
import Api from './api'
export default {
name: 'Edit',
data() {
return {
disabled: false,
entity: {},
rules: {
name: [{ required: true, message: '必填', trigger: 'blur' }]
}
}
},
props: {
eid: Number
},
methods: {
load(v) {
Api.get({ id: v }).then((r) => {
this.entity = r.result
this.$emit('on-load')
})
},
handleSubmit() {
this.$refs.form.validate((v) => {
if (v) {
this.disabled = true
Api.update(this.entity)
.then((r) => {
this.disabled = false
if (r.success) {
this.$Message.success('保存成功')
this.$emit('on-ok')
} else {
this.$Message.error('保存失败')
}
})
.catch((err) => {
this.disabled = false
this.$Message.error('保存失败')
console.warn(err)
})
}
})
},
handleClose() {
this.$emit('on-close')
},
l(key) {
key = 'mes_order' + '.' + key
return this.$t(key)
}
},
watch: {
eid(v) {
if (v != 0) {
this.load(v)
}
}
}
}
</script>
<template>
<Layout class="full">
<Sider hide-trigger :style="{background: '#fff'}" width="260">
<div class="zh-tree" :style="{height:treeHeight+'px'}">
<h3 class="zh-title">产品结构</h3>
<div class="zh-box">
<Input search placeholder="请输入查询条件" v-model="treeInputSearch" />
<Tree
:data="searchList"
:style="{height:(treeHeight-95)+'px'}"
style="overflow:auto;width:215px;"
@on-select-change="selectTreeNode"
></Tree>
</div>
</div>
</Sider>
<Content class="content">
<DataGrid :columns="columns" ref="grid" :action="action" @on-selection-change="selectInfo">
<template slot="easySearch">
<Form ref="formInline" :model="easySearch" inline>
<FormItem prop="keys">
<Input placeholder="请输入关键字" v-model="easySearch.keys.value" />
</FormItem>
<FormItem>
<Button type="primary" @click="search">查询</Button>
</FormItem>
</Form>
</template>
<template slot="searchForm">
<Search />
</template>
<template slot="buttons">
<Button type="primary" @click="addModal=true">新增</Button>
</template>
</DataGrid>
<Modal v-model="addModal" title="新增" footer-hide width="1200">
<Add @on-close="cancel" @on-ok="addOk" />
</Modal>
<Modal v-model="editModal" title="编辑" footer-hide width="1200">
<Edit :eid="curId" @on-close="cancel" @on-ok="addOk" />
</Modal>
<Modal v-model="detailModal" title="详情" width="1200">
<Detail :eid="curId" />
</Modal>
<Modal v-model="deletelModal" title="删除" @on-ok="removeOk" @on-cancel="cancel">
<p>确定删除?</p>
</Modal>
</Content>
</Layout>
</template>
<script>
import Api from './api'
import Add from './add'
import Edit from './edit'
import Detail from './detail'
import Search from './search'
export default {
name: 'list',
components: {
Add,
Edit,
Detail,
Search
},
data() {
return {
action: Api.index,
easySearch: {
keys: {
op: 'mesCode',
value: null
}
},
addModal: false,
editModal: false,
detailModal: false,
deletelModal: false,
curId: 0,
columns: [
{
type: 'selection',
width: 70,
align: 'center'
},
{ key: 'id', title: this.l('id'), hide: true, align: 'left' },
{ key: 'upId', title: this.l('upId'), hide: true, align: 'left' },
{
key: 'mesCode',
title: this.l('mesCode'),
align: 'left',
easy: true,
high: true
},
{
key: 'taskType',
title: this.l('taskType'),
align: 'left',
easy: true,
high: true
},
{
key: 'productId',
title: this.l('productId'),
hide: true,
align: 'left'
},
{
key: 'stage',
title: this.l('stage'),
align: 'left',
easy: true,
high: true
},
{
key: 'quantity',
title: this.l('quantity'),
align: 'left',
high: true,
hide: true
},
{
key: 'guestName',
title: this.l('guestName'),
align: 'left',
easy: true,
high: true,
hide: true
},
{
key: 'printSupply',
title: this.l('printSupply'),
hide: true,
align: 'left'
},
{
key: 'functionaryOffice',
title: this.l('functionaryOffice'),
hide: true,
align: 'left'
},
{
key: 'mainDepartmentId',
title: this.l('mainDepartmentId'),
hide: true,
align: 'left'
},
{
key: 'taskInputDate',
title: this.l('taskInputDate'),
align: 'left',
hide: true,
high: true
},
{
key: 'taskRequire',
title: this.l('taskRequire'),
align: 'left',
easy: true,
hide: true,
high: true
},
{
key: 'putintDocmentCode',
title: this.l('putintDocmentCode'),
hide: true,
align: 'left'
},
{
key: 'technologyDocmentCode',
title: this.l('technologyDocmentCode'),
hide: true,
align: 'left'
},
{
key: 'outerDrawnNumber',
title: this.l('outerDrawnNumber'),
hide: true,
align: 'left'
},
{
key: 'modelVersion',
title: this.l('modelVersion'),
hide: true,
align: 'left'
},
{
key: 'taskCode',
title: this.l('taskCode'),
align: 'left',
hide: true,
easy: true,
high: true
},
{
key: 'designer',
title: this.l('designer'),
hide: true,
align: 'left'
},
{
key: 'officeFunctionary',
title: this.l('officeFunctionary'),
hide: true,
align: 'left'
},
{
key: 'mainRoutingPeople',
title: this.l('mainRoutingPeople'),
hide: true,
align: 'left'
},
{
key: 'status',
title: this.l('status'),
align: 'left',
high: true,
code: 'mes_xingchi_plan.mes_order.status'
},
{
key: 'workHours',
title: this.l('workHours'),
align: 'left',
hide: true,
high: true
},
{
key: 'printPeriod',
title: this.l('printPeriod'),
align: 'left',
hide: true,
high: true
},
{
key: 'equipment',
title: this.l('equipment'),
align: 'left',
easy: true,
hide: true,
high: true
},
{
key: 'materialWeight',
title: this.l('materialWeight'),
align: 'left',
high: true
},
{
key: 'isSupportingFinish',
title: this.l('isSupportingFinish'),
align: 'left',
hide: true,
high: true,
code: 'mes_xingchi_plan.mes_order.is_supporting_finish'
},
{
key: 'demandStartDate',
title: this.l('demandStartDate'),
hide: true,
align: 'left'
},
{
key: 'demandFinishDate',
title: this.l('demandFinishDate'),
hide: true,
align: 'left'
},
{
key: 'actualStartDate',
title: this.l('actualStartDate'),
align: 'left',
hide: true,
high: true
},
{
key: 'actualFinishDate',
title: this.l('actualFinishDate'),
align: 'left',
hide: true,
high: true
},
{
key: 'isDeleted',
title: this.l('isDeleted'),
hide: true,
align: 'left',
code: 'mes_xingchi_plan.mes_order.is_deleted'
},
{
key: 'creatorUserId',
title: this.l('creatorUserId'),
align: 'left',
hide: true,
high: true
},
{
key: 'creationTime',
title: this.l('creationTime'),
align: 'left',
hide: true,
high: true
},
{
key: 'lastModifierUserId',
title: this.l('lastModifierUserId'),
align: 'left',
hide: true,
high: true
},
{
key: 'lastModificationTime',
title: this.l('lastModificationTime'),
align: 'left',
hide: true,
high: true
},
{
key: 'orderQuotationStatus',
title: this.l('orderQuotationStatus'),
align: 'left',
high: true,
code: 'mes_xingchi_plan.mes_order.order_quotation_status'
},
{
key: 'distributeMainRouting',
title: this.l('distributeMainRouting'),
hide: true,
align: 'left'
},
{
key: 'mainRoutingFinishDate',
title: this.l('mainRoutingFinishDate'),
hide: true,
align: 'left'
},
{
key: 'majorRoutingPeople',
title: this.l('majorRoutingPeople'),
hide: true,
align: 'left'
},
{
key: 'majorRoutingFinishDate',
title: this.l('majorRoutingFinishDate'),
hide: true,
align: 'left'
},
{
key: 'checkUpPeople',
title: this.l('checkUpPeople'),
hide: true,
align: 'left'
},
{
key: 'checkUpFinishDate',
title: this.l('checkUpFinishDate'),
hide: true,
align: 'left'
},
{
key: 'productingPreparationPeople',
title: this.l('productingPreparationPeople'),
hide: true,
align: 'left'
},
{
key: 'productingPreparationFinishDate',
title: this.l('productingPreparationFinishDate'),
hide: true,
align: 'left'
},
{
key: 'quotationPeople',
title: this.l('quotationPeople'),
hide: true,
align: 'left'
},
{
key: 'quotationFinishDate',
title: this.l('quotationFinishDate'),
hide: true,
align: 'left'
},
{
key: 'routingMethod',
title: this.l('routingMethod'),
align: 'left',
easy: true,
high: true
},
{
key: 'outerEnvelopeSize',
title: this.l('outerEnvelopeSize'),
align: 'left',
easy: true,
high: true
},
{
key: 'divideMark',
title: this.l('divideMark'),
hide: true,
align: 'left',
code: 'mes_xingchi_plan.mes_order.divide_mark'
},
{
key: 'productCode',
title: this.l('productCode'),
align: 'left',
easy: true,
hide: true,
high: true
},
{
key: 'productName',
title: this.l('productName'),
align: 'left',
easy: true,
high: true
},
{
key: 'drawnNumber',
title: this.l('drawnNumber'),
align: 'left',
easy: true,
high: true
},
{
key: 'qualifiedQuantity',
title: this.l('qualifiedQuantity'),
align: 'left'
},
{
key: 'uncertificateQuantity',
title: this.l('uncertificateQuantity'),
hide: true,
align: 'left'
},
{
key: 'mainRoutingSetStatus',
title: this.l('mainRoutingSetStatus'),
hide: true,
align: 'left',
code: 'mes_xingchi_plan.mes_order.main_routing_set_status'
},
{
key: 'batchNumber',
title: this.l('batchNumber'),
align: 'left',
easy: true,
high: true
},
{
key: 'projectNumber',
title: this.l('projectNumber'),
align: 'left',
easy: true,
high: true
},
{
key: 'urgencyLevel',
title: this.l('urgencyLevel'),
align: 'left',
easy: true,
high: true
},
{
key: 'materialName',
title: this.l('materialName'),
align: 'left',
easy: true,
high: true
},
{
key: 'isPreschedule',
title: this.l('isPreschedule'),
align: 'left',
hide: true,
code: 'mes_xingchi_plan.mes_order.is_preschedule'
},
{
key: 'spareQty',
title: this.l('spareQty'),
hide: true,
align: 'left'
},
{
key: 'demandStart',
title: this.l('demandStart'),
hide: true,
align: 'left'
},
{
key: 'demandFinish',
title: this.l('demandFinish'),
hide: true,
align: 'left'
},
{
key: 'partNamePro',
title: this.l('partNamePro'),
hide: true,
align: 'left'
},
{
title: '操作',
key: 'action',
width: 240,
align: 'center',
render: (h, params) => {
return h('div', { class: 'action' }, [
h(
'op',
{
attrs: { oprate: 'detail' },
on: { click: () => this.detail(params.row.id) }
},
'查看'
),
h(
'op',
{
attrs: { oprate: 'edit' },
on: { click: () => this.edit(params.row.id) }
},
'编辑'
),
h(
'op',
{
attrs: { oprate: 'remove' },
on: { click: () => this.remove(params.row.id) }
},
'删除'
),
h(
'op',
{
attrs: { oprate: 'edit' },
on: { click: () => this.edit(params.row.id) }
},
'派发'
),
h(
'op',
{
attrs: { oprate: 'remove' },
on: { click: () => this.remove(params.row.id) }
},
'分解'
)
])
}
}
],
treeData: [],
treeInputSearch: '',
ocolumn: [],
treeHeight: '',
tableHeight: '',
ids: []
}
},
computed: {
searchList() {
let nodeList = this.treeData
var text = this.treeInputSearch
var newNodeList = []
function searchTree(nodeLists, value) {
for (let i = 0; i < nodeLists.length; i++) {
if (nodeLists[i].title.indexOf(value) != -1) {
newNodeList.push(nodeLists[i])
} else if (nodeLists[i].children.length > 0) {
searchTree(nodeLists[i].children, value)
}
}
}
if (text != '') {
searchTree(nodeList, text)
} else {
return nodeList
}
return newNodeList
}
},
mounted() {
this.initTree()
console.log(this)
},
async fetch({ store, params }) {
await store.dispatch('loadDictionary') // 加载数据字典
},
methods: {
initTree() {
var sumData = []
this.$http.order.getallselecttree().then((res) => {
if (res.result) {
for (var i = 0; i < res.result.length; i++) {
sumData = sumData.concat(res.result[i])
}
this.treeData = sumData
this.data1 = JSON.parse(JSON.stringify(sumData))
} else {
this.$Message.error('加载产品树失败!')
}
})
},
selectTreeNode(value) {
if (value.length > 0) {
this.ids = []
this.getAllIds(value)
if (this.ids.length > 0) {
this.orderSearchForm.productId = this.ids.join(',')
} else {
this.orderSearchForm.productId = '-1'
this.orderSearchForm.productName = ''
}
this.$refs.CustomTable.easySearch(this.orderSearchForm)
}
},
//得到此树节点下所有是产品的productId
getAllIds(trees) {
trees.forEach((data, index) => {
var that = this
if (data.isProduct) {
this.ids.push(data.productId)
}
if (data.children.length > 0) {
this.getAllIds(data.children)
}
})
},
addOk() {
this.$refs.grid.load()
this.addModal = false
this.detailModal = false
this.editModal = false
this.curId = 0
},
search() {
this.$refs.grid.reload(this.easySearch)
},
detail(id) {
this.detailModal = true
this.curId = id
},
edit(id) {
this.editModal = true
this.curId = id
},
remove(id) {
this.deletelModal = true
this.curId = id
},
removeOk() {
Api.delete({ id: this.curId }).then((r) => {
if (r.success) {
this.$refs.grid.load()
this.deletelModal = false
this.$Message.success('删除成功')
}
})
},
removeCancel() {
this.deletelModal = false
},
cancel() {
this.curId = 0
this.addModal = false
this.detailModal = false
this.editModal = false
this.deletedlModal = false
},
l(key) {
let vkey = 'mes_order' + '.' + key
return this.$t(vkey) || key
}
}
}
</script>
<style lang="less" scoped>
.full {
margin-top: 0;
.content {
margin-top: 10px;
}
}
</style>
\ No newline at end of file
<template>
<Form ref="form" :model="condition" :label-width="90">
<Row>
<Col :span="12" :v-if="condition.id.show">
<FormItem :label="l('id')" prop="id">
<Input v-model="condition.id.value"></Input>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.upId.show">
<FormItem :label="l('upId')" prop="upId">
<Input v-model="condition.upId.value"></Input>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.mesCode.show">
<FormItem :label="l('mesCode')" prop="mesCode">
<Input v-model="condition.mesCode.value"></Input>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.taskType.show">
<FormItem :label="l('taskType')" prop="taskType">
<Input v-model="condition.taskType.value"></Input>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.productId.show">
<FormItem :label="l('productId')" prop="productId">
<Input v-model="condition.productId.value"></Input>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.stage.show">
<FormItem :label="l('stage')" prop="stage">
<Input v-model="condition.stage.value"></Input>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.materialId.show">
<FormItem :label="l('materialId')" prop="materialId">
<Input v-model="condition.materialId.value"></Input>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.quantity.show">
<FormItem :label="l('quantity')" prop="quantity">
<Input v-model="condition.quantity.value"></Input>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.guestName.show">
<FormItem :label="l('guestName')" prop="guestName">
<Input v-model="condition.guestName.value"></Input>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.printSupply.show">
<FormItem :label="l('printSupply')" prop="printSupply">
<Input v-model="condition.printSupply.value"></Input>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.functionaryOffice.show">
<FormItem :label="l('functionaryOffice')" prop="functionaryOffice">
<Input v-model="condition.functionaryOffice.value"></Input>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.mainDepartmentId.show">
<FormItem :label="l('mainDepartmentId')" prop="mainDepartmentId">
<Input v-model="condition.mainDepartmentId.value"></Input>
</FormItem>
</Col>
<Col :span="24" :v-if="condition.remark.show">
<FormItem :label="l('remark')" prop="remark">
<Input v-model="condition.remark.value"></Input>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.taskInputDate.show">
<FormItem :label="l('taskInputDate')" prop="taskInputDate">
<DatePicker type="daterange" v-model="condition.taskInputDate.value"></DatePicker>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.taskRequire.show">
<FormItem :label="l('taskRequire')" prop="taskRequire">
<Input v-model="condition.taskRequire.value"></Input>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.putintDocmentCode.show">
<FormItem :label="l('putintDocmentCode')" prop="putintDocmentCode">
<Input v-model="condition.putintDocmentCode.value"></Input>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.technologyDocmentCode.show">
<FormItem :label="l('technologyDocmentCode')" prop="technologyDocmentCode">
<Input v-model="condition.technologyDocmentCode.value"></Input>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.outerDrawnNumber.show">
<FormItem :label="l('outerDrawnNumber')" prop="outerDrawnNumber">
<Input v-model="condition.outerDrawnNumber.value"></Input>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.modelVersion.show">
<FormItem :label="l('modelVersion')" prop="modelVersion">
<Input v-model="condition.modelVersion.value"></Input>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.taskCode.show">
<FormItem :label="l('taskCode')" prop="taskCode">
<Input v-model="condition.taskCode.value"></Input>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.designer.show">
<FormItem :label="l('designer')" prop="designer">
<Input v-model="condition.designer.value"></Input>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.officeFunctionary.show">
<FormItem :label="l('officeFunctionary')" prop="officeFunctionary">
<Input v-model="condition.officeFunctionary.value"></Input>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.mainRoutingPeople.show">
<FormItem :label="l('mainRoutingPeople')" prop="mainRoutingPeople">
<Input v-model="condition.mainRoutingPeople.value"></Input>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.status.show">
<FormItem :label="l('status')" prop="status">
<Dictionary code="mes_xingchi_plan.mes_order.status" v-model="condition.status.value"></Dictionary>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.workHours.show">
<FormItem :label="l('workHours')" prop="workHours">
<Input v-model="condition.workHours.value"></Input>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.printPeriod.show">
<FormItem :label="l('printPeriod')" prop="printPeriod">
<Input v-model="condition.printPeriod.value"></Input>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.equipment.show">
<FormItem :label="l('equipment')" prop="equipment">
<Input v-model="condition.equipment.value"></Input>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.materialWeight.show">
<FormItem :label="l('materialWeight')" prop="materialWeight">
<Input v-model="condition.materialWeight.value"></Input>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.isSupportingFinish.show">
<FormItem :label="l('isSupportingFinish')" prop="isSupportingFinish">
<Dictionary
code="mes_xingchi_plan.mes_order.is_supporting_finish"
v-model="condition.isSupportingFinish.value"
></Dictionary>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.demandStartDate.show">
<FormItem :label="l('demandStartDate')" prop="demandStartDate">
<DatePicker type="daterange" v-model="condition.demandStartDate.value"></DatePicker>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.demandFinishDate.show">
<FormItem :label="l('demandFinishDate')" prop="demandFinishDate">
<DatePicker type="daterange" v-model="condition.demandFinishDate.value"></DatePicker>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.actualStartDate.show">
<FormItem :label="l('actualStartDate')" prop="actualStartDate">
<DatePicker type="daterange" v-model="condition.actualStartDate.value"></DatePicker>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.actualFinishDate.show">
<FormItem :label="l('actualFinishDate')" prop="actualFinishDate">
<DatePicker type="daterange" v-model="condition.actualFinishDate.value"></DatePicker>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.isDeleted.show">
<FormItem :label="l('isDeleted')" prop="isDeleted">
<Dictionary
code="mes_xingchi_plan.mes_order.is_deleted"
v-model="condition.isDeleted.value"
></Dictionary>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.creatorUserId.show">
<FormItem :label="l('creatorUserId')" prop="creatorUserId">
<Input v-model="condition.creatorUserId.value"></Input>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.creationTime.show">
<FormItem :label="l('creationTime')" prop="creationTime">
<DatePicker type="daterange" v-model="condition.creationTime.value"></DatePicker>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.lastModifierUserId.show">
<FormItem :label="l('lastModifierUserId')" prop="lastModifierUserId">
<Input v-model="condition.lastModifierUserId.value"></Input>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.lastModificationTime.show">
<FormItem :label="l('lastModificationTime')" prop="lastModificationTime">
<DatePicker type="daterange" v-model="condition.lastModificationTime.value"></DatePicker>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.orderQuotationStatus.show">
<FormItem :label="l('orderQuotationStatus')" prop="orderQuotationStatus">
<Dictionary
code="mes_xingchi_plan.mes_order.order_quotation_status"
v-model="condition.orderQuotationStatus.value"
></Dictionary>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.distributeMainRouting.show">
<FormItem :label="l('distributeMainRouting')" prop="distributeMainRouting">
<Input v-model="condition.distributeMainRouting.value"></Input>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.mainRoutingFinishDate.show">
<FormItem :label="l('mainRoutingFinishDate')" prop="mainRoutingFinishDate">
<DatePicker type="daterange" v-model="condition.mainRoutingFinishDate.value"></DatePicker>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.majorRoutingPeople.show">
<FormItem :label="l('majorRoutingPeople')" prop="majorRoutingPeople">
<Input v-model="condition.majorRoutingPeople.value"></Input>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.majorRoutingFinishDate.show">
<FormItem :label="l('majorRoutingFinishDate')" prop="majorRoutingFinishDate">
<DatePicker type="daterange" v-model="condition.majorRoutingFinishDate.value"></DatePicker>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.checkUpPeople.show">
<FormItem :label="l('checkUpPeople')" prop="checkUpPeople">
<Input v-model="condition.checkUpPeople.value"></Input>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.checkUpFinishDate.show">
<FormItem :label="l('checkUpFinishDate')" prop="checkUpFinishDate">
<DatePicker type="daterange" v-model="condition.checkUpFinishDate.value"></DatePicker>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.productingPreparationPeople.show">
<FormItem :label="l('productingPreparationPeople')" prop="productingPreparationPeople">
<Input v-model="condition.productingPreparationPeople.value"></Input>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.productingPreparationFinishDate.show">
<FormItem
:label="l('productingPreparationFinishDate')"
prop="productingPreparationFinishDate"
>
<DatePicker type="daterange" v-model="condition.productingPreparationFinishDate.value"></DatePicker>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.quotationPeople.show">
<FormItem :label="l('quotationPeople')" prop="quotationPeople">
<Input v-model="condition.quotationPeople.value"></Input>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.quotationFinishDate.show">
<FormItem :label="l('quotationFinishDate')" prop="quotationFinishDate">
<DatePicker type="daterange" v-model="condition.quotationFinishDate.value"></DatePicker>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.routingMethod.show">
<FormItem :label="l('routingMethod')" prop="routingMethod">
<Input v-model="condition.routingMethod.value"></Input>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.outerEnvelopeSize.show">
<FormItem :label="l('outerEnvelopeSize')" prop="outerEnvelopeSize">
<Input v-model="condition.outerEnvelopeSize.value"></Input>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.divideMark.show">
<FormItem :label="l('divideMark')" prop="divideMark">
<Dictionary
code="mes_xingchi_plan.mes_order.divide_mark"
v-model="condition.divideMark.value"
></Dictionary>
</FormItem>
</Col>
<Col :span="24" :v-if="condition.productCode.show">
<FormItem :label="l('productCode')" prop="productCode">
<Input v-model="condition.productCode.value"></Input>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.productName.show">
<FormItem :label="l('productName')" prop="productName">
<Input v-model="condition.productName.value"></Input>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.drawnNumber.show">
<FormItem :label="l('drawnNumber')" prop="drawnNumber">
<Input v-model="condition.drawnNumber.value"></Input>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.qualifiedQuantity.show">
<FormItem :label="l('qualifiedQuantity')" prop="qualifiedQuantity">
<Input v-model="condition.qualifiedQuantity.value"></Input>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.uncertificateQuantity.show">
<FormItem :label="l('uncertificateQuantity')" prop="uncertificateQuantity">
<Input v-model="condition.uncertificateQuantity.value"></Input>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.mainRoutingSetStatus.show">
<FormItem :label="l('mainRoutingSetStatus')" prop="mainRoutingSetStatus">
<Dictionary
code="mes_xingchi_plan.mes_order.main_routing_set_status"
v-model="condition.mainRoutingSetStatus.value"
></Dictionary>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.majorRoutingSetStatus.show">
<FormItem :label="l('majorRoutingSetStatus')" prop="majorRoutingSetStatus">
<Dictionary
code="mes_xingchi_plan.mes_order.major_routing_set_status"
v-model="condition.majorRoutingSetStatus.value"
></Dictionary>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.materialBillSetStatus.show">
<FormItem :label="l('materialBillSetStatus')" prop="materialBillSetStatus">
<Dictionary
code="mes_xingchi_plan.mes_order.material_bill_set_status"
v-model="condition.materialBillSetStatus.value"
></Dictionary>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.routingDataSetStatus.show">
<FormItem :label="l('routingDataSetStatus')" prop="routingDataSetStatus">
<Dictionary
code="mes_xingchi_plan.mes_order.routing_data_set_status"
v-model="condition.routingDataSetStatus.value"
></Dictionary>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.rootId.show">
<FormItem :label="l('rootId')" prop="rootId">
<Input v-model="condition.rootId.value"></Input>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.mainRoutingExecuteStatus.show">
<FormItem :label="l('mainRoutingExecuteStatus')" prop="mainRoutingExecuteStatus">
<Dictionary
code="mes_xingchi_plan.mes_order.main_routing_execute_status"
v-model="condition.mainRoutingExecuteStatus.value"
></Dictionary>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.majorRoutingExecuteStatus.show">
<FormItem :label="l('majorRoutingExecuteStatus')" prop="majorRoutingExecuteStatus">
<Dictionary
code="mes_xingchi_plan.mes_order.major_routing_execute_status"
v-model="condition.majorRoutingExecuteStatus.value"
></Dictionary>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.mainRoutingActualStartDate.show">
<FormItem :label="l('mainRoutingActualStartDate')" prop="mainRoutingActualStartDate">
<DatePicker type="daterange" v-model="condition.mainRoutingActualStartDate.value"></DatePicker>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.mainRoutingActualFinishDate.show">
<FormItem :label="l('mainRoutingActualFinishDate')" prop="mainRoutingActualFinishDate">
<DatePicker type="daterange" v-model="condition.mainRoutingActualFinishDate.value"></DatePicker>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.majorRoutingActualStartDate.show">
<FormItem :label="l('majorRoutingActualStartDate')" prop="majorRoutingActualStartDate">
<DatePicker type="daterange" v-model="condition.majorRoutingActualStartDate.value"></DatePicker>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.majorRoutingActualFinishDate.show">
<FormItem :label="l('majorRoutingActualFinishDate')" prop="majorRoutingActualFinishDate">
<DatePicker type="daterange" v-model="condition.majorRoutingActualFinishDate.value"></DatePicker>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.batchNumber.show">
<FormItem :label="l('batchNumber')" prop="batchNumber">
<Input v-model="condition.batchNumber.value"></Input>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.projectNumber.show">
<FormItem :label="l('projectNumber')" prop="projectNumber">
<Input v-model="condition.projectNumber.value"></Input>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.urgencyLevel.show">
<FormItem :label="l('urgencyLevel')" prop="urgencyLevel">
<Input v-model="condition.urgencyLevel.value"></Input>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.materialName.show">
<FormItem :label="l('materialName')" prop="materialName">
<Input v-model="condition.materialName.value"></Input>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.isPreschedule.show">
<FormItem :label="l('isPreschedule')" prop="isPreschedule">
<Dictionary
code="mes_xingchi_plan.mes_order.is_preschedule"
v-model="condition.isPreschedule.value"
></Dictionary>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.spareQty.show">
<FormItem :label="l('spareQty')" prop="spareQty">
<Input v-model="condition.spareQty.value"></Input>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.demandStart.show">
<FormItem :label="l('demandStart')" prop="demandStart">
<DatePicker type="daterange" v-model="condition.demandStart.value"></DatePicker>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.demandFinish.show">
<FormItem :label="l('demandFinish')" prop="demandFinish">
<DatePicker type="daterange" v-model="condition.demandFinish.value"></DatePicker>
</FormItem>
</Col>
<Col :span="12" :v-if="condition.partNamePro.show">
<FormItem :label="l('partNamePro')" prop="partNamePro">
<Input v-model="condition.partNamePro.value"></Input>
</FormItem>
</Col>
</Row>
</Form>
</template>
<script>
import Api from './api'
export default {
name: 'Add',
data() {
return {
condition: {
id: { op: 'Equal', value: null, show: false },
upId: { op: 'Equal', value: null, show: false },
mesCode: { op: 'Equal', value: null, show: true },
taskType: { op: 'Equal', value: null, show: true },
productId: { op: 'Equal', value: null, show: false },
stage: { op: 'Equal', value: null, show: true },
materialId: { op: 'Equal', value: null, show: true },
quantity: { op: 'Equal', value: null, show: true },
guestName: { op: 'Equal', value: null, show: true },
printSupply: { op: 'Equal', value: null, show: false },
functionaryOffice: { op: 'Equal', value: null, show: false },
mainDepartmentId: { op: 'Equal', value: null, show: false },
remark: { op: 'Equal', value: null, show: false },
taskInputDate: { op: 'Range', value: null, show: true },
taskRequire: { op: 'Equal', value: null, show: true },
putintDocmentCode: { op: 'Equal', value: null, show: false },
technologyDocmentCode: { op: 'Equal', value: null, show: false },
outerDrawnNumber: { op: 'Equal', value: null, show: false },
modelVersion: { op: 'Equal', value: null, show: false },
taskCode: { op: 'Equal', value: null, show: true },
designer: { op: 'Equal', value: null, show: false },
officeFunctionary: { op: 'Equal', value: null, show: false },
mainRoutingPeople: { op: 'Equal', value: null, show: false },
status: { op: 'Equal', value: null, show: true },
workHours: { op: 'Equal', value: null, show: true },
printPeriod: { op: 'Equal', value: null, show: true },
equipment: { op: 'Equal', value: null, show: true },
materialWeight: { op: 'Equal', value: null, show: true },
isSupportingFinish: { op: 'Equal', value: null, show: true },
demandStartDate: { op: 'Range', value: null, show: false },
demandFinishDate: { op: 'Range', value: null, show: false },
actualStartDate: { op: 'Range', value: null, show: true },
actualFinishDate: { op: 'Range', value: null, show: true },
isDeleted: { op: 'Equal', value: null, show: false },
creatorUserId: { op: 'Equal', value: null, show: true },
creationTime: { op: 'Range', value: null, show: true },
lastModifierUserId: { op: 'Equal', value: null, show: true },
lastModificationTime: { op: 'Range', value: null, show: true },
orderQuotationStatus: { op: 'Equal', value: null, show: true },
distributeMainRouting: { op: 'Equal', value: null, show: false },
mainRoutingFinishDate: { op: 'Range', value: null, show: false },
majorRoutingPeople: { op: 'Equal', value: null, show: false },
majorRoutingFinishDate: { op: 'Range', value: null, show: false },
checkUpPeople: { op: 'Equal', value: null, show: false },
checkUpFinishDate: { op: 'Range', value: null, show: false },
productingPreparationPeople: { op: 'Equal', value: null, show: false },
productingPreparationFinishDate: {
op: 'Range',
value: null,
show: false
},
quotationPeople: { op: 'Equal', value: null, show: false },
quotationFinishDate: { op: 'Range', value: null, show: false },
routingMethod: { op: 'Equal', value: null, show: true },
outerEnvelopeSize: { op: 'Equal', value: null, show: true },
divideMark: { op: 'Equal', value: null, show: false },
productCode: { op: 'Equal', value: null, show: true },
productName: { op: 'Equal', value: null, show: true },
drawnNumber: { op: 'Equal', value: null, show: true },
qualifiedQuantity: { op: 'Equal', value: null, show: false },
uncertificateQuantity: { op: 'Equal', value: null, show: false },
mainRoutingSetStatus: { op: 'Equal', value: null, show: false },
majorRoutingSetStatus: { op: 'Equal', value: null, show: false },
materialBillSetStatus: { op: 'Equal', value: null, show: false },
routingDataSetStatus: { op: 'Equal', value: null, show: false },
rootId: { op: 'Equal', value: null, show: false },
mainRoutingExecuteStatus: { op: 'Equal', value: null, show: false },
majorRoutingExecuteStatus: { op: 'Equal', value: null, show: false },
mainRoutingActualStartDate: { op: 'Range', value: null, show: false },
mainRoutingActualFinishDate: { op: 'Range', value: null, show: false },
majorRoutingActualStartDate: { op: 'Range', value: null, show: false },
majorRoutingActualFinishDate: { op: 'Range', value: null, show: false },
batchNumber: { op: 'Equal', value: null, show: true },
projectNumber: { op: 'Equal', value: null, show: true },
urgencyLevel: { op: 'Equal', value: null, show: true },
materialName: { op: 'Equal', value: null, show: true },
isPreschedule: { op: 'Equal', value: null, show: false },
spareQty: { op: 'Equal', value: null, show: false },
demandStart: { op: 'Range', value: null, show: false },
demandFinish: { op: 'Range', value: null, show: false },
partNamePro: { op: 'Equal', value: null, show: false }
}
}
},
methods: {
handleClose() {
this.$emit('on-close')
},
l(key) {
key = 'mes_order' + '.' + key
return this.$t(key)
}
}
}
</script>
<template>
<Form ref="form" :model="entity" :rules="rules" :label-width="120">
<Row>
<Col :span="24">
<FormItem :label="l('name')" prop="name">
<Input v-model="entity.name"></Input>
</FormItem>
</Col>
</Row>
<Row>
<Col :span="24">
<FormItem :label="l('ip')" prop="ip">
<Input v-model="entity.ip"></Input>
</FormItem>
</Col>
</Row>
<Row>
<Col :span="24">
<FormItem :label="l('user')" prop="user">
<Input v-model="entity.user"></Input>
</FormItem>
</Col>
</Row>
<Row>
<Col :span="24">
<FormItem :label="l('password')" prop="password">
<Input v-model="entity.password"></Input>
</FormItem>
</Col>
</Row>
<Row>
<Col :span="24">
<FormItem :label="l('port')" prop="port">
<InputNumber v-model="entity.port"></InputNumber>
</FormItem>
</Col>
</Row>
<Row>
<FormItem>
<Button type="primary" @click="handleSubmit" :disabled="disabled">保存</Button>
<Button @click="handleClose" class="ml20">取消</Button>
</FormItem>
</Row>
</Form>
</template>
<script>
import Api from './api'
export default {
name: 'Add',
data() {
return {
disabled: false,
entity: {
name: '',
ip: '',
user: '',
password: '',
port: 22,
id: 0
},
rules: {
name: [{ required: true, message: '必填', trigger: 'blur' }],
ip: [{ required: true, message: '必填', trigger: 'blur' }],
user: [{ required: true, message: '必填', trigger: 'blur' }],
password: [{ required: true, message: '必填', trigger: 'blur' }]
}
}
},
props: {
v: Object
},
methods: {
handleSubmit() {
this.$refs.form.validate((v) => {
if (v) {
this.disabled = true
Api.create(this.entity)
.then((r) => {
this.disabled = false
if (r.success) {
this.$Message.success('保存成功')
this.$emit('on-ok')
} else {
this.$Message.error('保存失败')
}
})
.catch((err) => {
this.disabled = false
this.$Message.error('保存失败')
console.warn(err)
})
}
})
},
handleClose() {
this.$emit('on-close')
},
l(key) {
key = 'host' + '.' + key
return this.$t(key)
}
},
watch: {
v() {
this.entity = this.$u.clone(this.v)
}
}
}
</script>
\ No newline at end of file
import Api from '@/plugins/request'
export default {
index:`${authUrl}/api/services/app/host/paged`,
paged(params){
return Api.post(`${authUrl}/api/services/app/host/paged`,params);
},
get(params){
return Api.get(`${authUrl}/api/services/app/host/get`,params);
},
create(params){
return Api.post(`${authUrl}/api/services/app/host/create`,params);
},
update(params){
return Api.post(`${authUrl}/api/services/app/host/update`,params);
},
//删除:
delete(params) {
return Api.delete(`${authUrl}/api/services/app/host/delete`,{params:params});
},
}
\ No newline at end of file
<template>
<div class="detail">
<Row>
<Filed :span="24" :name="l('name')">{{entity.name}}</Filed>
<Filed :span="24" :name="l('ip')">{{entity.ip}}</Filed>
<Filed :span="24" :name="l('user')">{{entity.user}}</Filed>
<Filed :span="24" :name="l('password')">{{entity.password}}</Filed>
<Filed :span="24" :name="l('port')">{{entity.port}}</Filed>
</Row>
</div>
</template>
<script>
import Api from './api'
export default {
name: 'Add',
data() {
return {
entity: {},
rules: {
name: [{ required: true, message: '必填', trigger: 'blur' }],
code: [{ required: true, message: '必填', trigger: 'blur' }]
}
}
},
props: {
eid: Number
},
methods: {
load(v) {
Api.get({ id: v }).then(r => {
this.entity = r.result;
this.$emit('on-load')
})
},
handleClose() {
this.$emit('on-close')
},
l(key) {
key = "host" + "." + key;
return this.$t(key)
}
},
watch: {
eid(v) {
if (v != 0) {
this.load(v);
}
}
}
}
</script>
\ No newline at end of file
<template>
<Form ref="form" :model="entity" :rules="rules" :label-width="120">
<Row>
<Col :span="24">
<FormItem :label="l('name')" prop="name">
<Input v-model="entity.name"></Input>
</FormItem>
</Col>
<Col :span="24">
<FormItem :label="l('ip')" prop="ip">
<Input v-model="entity.ip"></Input>
</FormItem>
</Col>
<Col :span="24">
<FormItem :label="l('user')" prop="user">
<Input v-model="entity.user"></Input>
</FormItem>
</Col>
<Col :span="24">
<FormItem :label="l('password')" prop="password">
<Input v-model="entity.password"></Input>
</FormItem>
</Col>
<Col :span="24">
<FormItem :label="l('port')" prop="port">
<InputNumber v-model="entity.port"></InputNumber>
</FormItem>
</Col>
</Row>
<FormItem>
<Button type="primary" @click="handleSubmit" :disabled="disabled">保存</Button>
<Button @click="handleClose" class="ml20">取消</Button>
</FormItem>
</Form>
</template>
<script>
import Api from './api'
export default {
name: 'Edit',
data() {
return {
disabled: false,
entity: { name: '', ip: '', user: '', password: '', port: 22, id: 0 },
rules: {
name: [{ required: true, message: '必填', trigger: 'blur' }],
ip: [{ required: true, message: '必填', trigger: 'blur' }],
user: [{ required: true, message: '必填', trigger: 'blur' }],
password: [{ required: true, message: '必填', trigger: 'blur' }]
}
}
},
props: {
eid: Number
},
methods: {
load(v) {
Api.get({ id: v }).then((r) => {
this.entity = r.result
this.$emit('on-load')
})
},
handleSubmit() {
this.$refs.form.validate((v) => {
if (v) {
this.disabled = true
Api.update(this.entity)
.then((r) => {
this.disabled = false
if (r.success) {
this.$Message.success('保存成功')
this.$emit('on-ok')
} else {
this.$Message.error('保存失败')
}
})
.catch((err) => {
this.disabled = false
this.$Message.error('保存失败')
console.warn(err)
})
}
})
},
handleClose() {
this.$emit('on-close')
},
l(key) {
key = 'host' + '.' + key
return this.$t(key)
}
},
watch: {
eid(v) {
if (v != 0) {
this.load(v)
}
}
}
}
</script>
\ No newline at end of file
<template>
<div>
<DataGrid :columns="columns" ref="grid" :action="action"><template slot="easySearch"><Form ref="formInline" :model="easySearch" inline><FormItem prop="keys"><Input placeholder="请输入数据源/服务器/用户" class="w200" v-model="easySearch.keys.value" /> </FormItem>
<FormItem><Button type="primary" @click="search">查询</Button></FormItem>
</Form></template>
<template slot="searchForm">
<Search />
</template>
<template slot="buttons">
<Button type="primary" @click="addModal=true">新增</Button>
</template>
</DataGrid>
<Modal v-model="addModal" width="720px" title="新增" footer-hide>
<Add @on-close="cancel" @on-ok="addOk" />
</Modal>
<Modal v-model="editModal" width="720px" title="编辑" footer-hide>
<Edit :eid="curId" @on-close="cancel" @on-ok="addOk" />
</Modal>
<Modal v-model="detailModal" width="720px" title="详情">
<Detail :eid="curId" />
</Modal>
<Modal v-model="deletelModal" title="删除" @on-ok="removeOk"
@on-cancel="cancel">
<p>确定删除?</p>
</Modal>
</div>
</template>
<script>
import Api from './api'
import Add from './add'
import Edit from './edit'
import Detail from './detail'
import Search from './search'
export default {
name: 'list',
components:{
Add,Edit,Detail,Search
},
data() {
return {
action: Api.index,
easySearch: {
keys:{op:"name,ip,user",value:null}
},
addModal: false,
editModal: false,
detailModal: false,
deletelModal: false,
curId: 0,
columns: [
{ key:"id",title:this.l("id") ,hide:true ,align:"left" },
{ key:"name",title:this.l("name") ,align:"left" ,easy:true ,high:true },
{ key:"ip",title:this.l("ip") ,align:"left" ,easy:true ,high:true },
{ key:"user",title:this.l("user") ,align:"left" ,easy:true ,high:true },
{ key:"password",title:this.l("password") ,align:"left" },
{ key:"port",title:this.l("port") ,align:"left" ,high:true },
{ key:"creationTime",title:this.l("creationTime") ,hide:true ,align:"left" },
{ key:"creatorUserId",title:this.l("creatorUserId") ,hide:true ,align:"left" },
{ key:"lastModificationTime",title:this.l("lastModificationTime") ,hide:true ,align:"left" },
{ key:"lastModifierUserId",title:this.l("lastModifierUserId") ,hide:true ,align:"left" },
{ key:"isDeleted",title:this.l("isDeleted") ,hide:true ,align:"left" },
{ key:"deletionTime",title:this.l("deletionTime") ,hide:true ,align:"left" },
{ key:"deleterUserId",title:this.l("deleterUserId") ,hide:true ,align:"left" },
{
title: '操作',
key: 'id',
width: 140,
align: 'center',
render: (h, params) => {
return h('div', { class: "action" }, [
h('op', { attrs: { oprate: 'detail' }, on: { click: () => this.detail(params.row.id) } }, '查看'),
h('op', { attrs: { oprate: 'edit'}, on: { click: () => this.edit(params.row.id) } }, '编辑'),
h('op', { attrs: { oprate: 'remove' }, on: { click: () => this.remove(params.row.id) } }, '删除')
])
}
},
]
}
},
mounted(){
this.$refs.grid.load()
},
async fetch({ store, params }) {
await store.dispatch('loadDictionary') // 加载数据字典
},
methods:{
addOk() {
this.$refs.grid.load()
this.addModal = false
this.detailModal = false
this.editModal = false;
this.curId = 0;
},
search() {
this.$refs.grid.reload(this.easySearch)
},
detail(id) {
this.detailModal = true;
this.curId = id;
},
edit(id) {
this.editModal = true;
this.curId = id;
},
remove(id) {
this.deletelModal = true;
this.curId = id;
},
removeOk() {
Api.delete({ id: this.curId }).then((r) => {
if (r.success) {
this.$refs.grid.load();
this.deletelModal = false;
this.$Message.success('删除成功')
}
})
},
removeCancel() {
this.deletelModal = false;
},
cancel() {
this.curId = 0;
this.addModal = false
this.detailModal = false
this.editModal = false;
this.deletedlModal = false;
},
l(key) {
/*
host:{
id:'',
name:'数据源名称',
ip:'服务器地址',
user:'用户名',
password:'密码',
port:'ssh端口',
creationTime:'创建时间',
creatorUserId:'创建人',
lastModificationTime:'更新时间',
lastModifierUserId:'更新人',
isDeleted:'是否删除',
deletionTime:'删除时间',
deleterUserId:'删除人',
}
*/
let vkey = "host" + "." + key;
return this.$t(vkey)||key
}
}
}
</script>
<style lang="less">
</style>
\ No newline at end of file
<template>
<Form ref="form" :model="condition" :label-width="90">
<Row>
<Col :span="24" :v-if="condition.id.show"><FormItem :label="l('id')" prop="id"> <Input v-model="condition.id.value"> </Input>
</FormItem></Col>
<Col :span="24" :v-if="condition.name.show"><FormItem :label="l('name')" prop="name"> <Input v-model="condition.name.value"> </Input>
</FormItem></Col>
<Col :span="24" :v-if="condition.ip.show"><FormItem :label="l('ip')" prop="ip"> <Input v-model="condition.ip.value"> </Input>
</FormItem></Col>
<Col :span="24" :v-if="condition.user.show"><FormItem :label="l('user')" prop="user"> <Input v-model="condition.user.value"> </Input>
</FormItem></Col>
<Col :span="24" :v-if="condition.password.show"><FormItem :label="l('password')" prop="password"> <Input v-model="condition.password.value"> </Input>
</FormItem></Col>
<Col :span="24" :v-if="condition.port.show"><FormItem :label="l('port')" prop="port"> <Input v-model="condition.port.value"> </Input>
</FormItem></Col>
<Col :span="12" :v-if="condition.creationTime.show"><FormItem :label="l('creationTime')" prop="creationTime"> <DatePicker type="daterange" v-model="condition.creationTime.value"></DatePicker>
</FormItem></Col>
<Col :span="12" :v-if="condition.creatorUserId.show"><FormItem :label="l('creatorUserId')" prop="creatorUserId"> <Input v-model="condition.creatorUserId.value"> </Input>
</FormItem></Col>
<Col :span="12" :v-if="condition.lastModificationTime.show"><FormItem :label="l('lastModificationTime')" prop="lastModificationTime"> <DatePicker type="daterange" v-model="condition.lastModificationTime.value"></DatePicker>
</FormItem></Col>
<Col :span="12" :v-if="condition.lastModifierUserId.show"><FormItem :label="l('lastModifierUserId')" prop="lastModifierUserId"> <Input v-model="condition.lastModifierUserId.value"> </Input>
</FormItem></Col>
<Col :span="12" :v-if="condition.isDeleted.show"><FormItem :label="l('isDeleted')" prop="isDeleted"> <Input v-model="condition.isDeleted.value"> </Input>
</FormItem></Col>
<Col :span="12" :v-if="condition.deletionTime.show"><FormItem :label="l('deletionTime')" prop="deletionTime"> <DatePicker type="daterange" v-model="condition.deletionTime.value"></DatePicker>
</FormItem></Col>
<Col :span="12" :v-if="condition.deleterUserId.show"><FormItem :label="l('deleterUserId')" prop="deleterUserId"> <Input v-model="condition.deleterUserId.value"> </Input>
</FormItem></Col>
</Row>
</Form>
</template>
<script>
import Api from './api'
export default {
name: 'Add',
data() {
return {
condition: {
id:{op:"Equal",value:null,show:false},
name:{op:"Equal",value:null,show:true},
ip:{op:"Equal",value:null,show:true},
user:{op:"Equal",value:null,show:true},
password:{op:"Equal",value:null,show:false},
port:{op:"Equal",value:null,show:true},
creationTime:{op:"Range",value:null,show:false},
creatorUserId:{op:"Equal",value:null,show:false},
lastModificationTime:{op:"Range",value:null,show:false},
lastModifierUserId:{op:"Equal",value:null,show:false},
isDeleted:{op:"Equal",value:null,show:false},
deletionTime:{op:"Range",value:null,show:false},
deleterUserId:{op:"Equal",value:null,show:false},
},
}
},
methods: {
handleClose() {
this.$emit('on-close')
},
l(key) {
key = "host" + "." + key;
return this.$t(key)
}
}
}
</script>
\ No newline at end of file
<template>
<Form ref="form" :model="entity" :rules="rules" :label-width="120">
<Row>
<Col :span="24">
<FormItem :label="l('name')" prop="name">
<Input v-model="entity.name"></Input>
</FormItem>
</Col>
<Col :span="24">
<FormItem :label="l('code')" prop="code">
<Input v-model="entity.code"></Input>
</FormItem>
</Col>
<Col :span="24">
<FormItem :label="l('typeId')" prop="typeId">
<Dictionary code="system.Tanant.type" v-model="entity.typeId" type="select"></Dictionary>
</FormItem>
</Col>
<Col :span="24">
<FormItem :label="l('startTime')" prop="startTime">
<DatePicker type="date" v-model="entity.startTime"></DatePicker>
</FormItem>
</Col>
<Col :span="24">
<FormItem :label="l('endTime')" prop="endTime">
<DatePicker type="date" v-model="entity.endTime"></DatePicker>
</FormItem>
</Col>
<Col :span="24">
<FormItem :label="l('hostId')" prop="hostId">
<Select @on-change="onchange_host" v-model="entity.hostId">
<Option v-for="(item,index) in hostlist" :key="index" :value="item.id">{{item.name}}</Option>
</Select>
</FormItem>
</Col>
</Row>
<FormItem>
<Button type="primary" @click="handleSubmit" :disabled="disabled">保存</Button>
<Button @click="handleClose" class="ml20">取消</Button>
</FormItem>
</Form>
</template>
<script>
import Api from './api'
export default {
name: 'Add',
data() {
return {
disabled: false,
entity: {
id: 0,
name: '',
code: '',
typeId: 0,
startTime: '',
endTime: '',
initialized: 0,
dataSourceId: 0,
hostId: '0',
},
hostlist: [],
rules: {
name: [{ required: true, message: '必填', trigger: 'blur' }],
code: [{ required: true, message: '必填', trigger: 'blur' }]
}
}
},
props: {
v: Object
},
mounted() {
Api.bindhostlist()
.then((r) => {
if (r.success) {
this.hostlist = r.result
} else {
}
})
.catch((err) => {
console.warn(err)
})
},
methods: {
handleSubmit() {
console.log(this.entity.hostId)
this.$refs.form.validate((v) => {
if (v) {
this.disabled = true
Api.create(this.entity)
.then((r) => {
this.disabled = false
if (r.success) {
this.$Message.success('保存成功')
this.$emit('on-ok')
} else {
this.$Message.error('保存失败')
}
})
.catch((err) => {
this.disabled = false
this.$Message.error('保存失败')
console.warn(err)
})
}
})
},
onchange_host(val) {
this.entity.hostId = val
},
handleClose() {
this.$emit('on-close')
},
l(key) {
key = 'tanant' + '.' + key
return this.$t(key)
}
},
watch: {
v() {
this.entity = this.$u.clone(this.v)
}
}
}
</script>
\ No newline at end of file
import Api from '@/plugins/request'
export default {
index: `${authUrl}/api/services/app/tanant/paged`,
paged(params) {
return Api.post(`${authUrl}/api/services/app/tanant/paged`, params);
},
get(params) {
return Api.get(`${authUrl}/api/services/app/tanant/get`, params);
},
create(params) {
return Api.post(`${authUrl}/api/services/app/tanant/create`, params);
},
update(params) {
return Api.post(`${authUrl}/api/services/app/tanant/update`, params);
},
//删除:
delete(params) {
return Api.delete(`${authUrl}/api/services/app/tanant/delete`, { params: params });
},
bindhostlist() {
return Api.post(`${authUrl}/api/services/app/host/list`, {});
},
tanantinit(params) {
return Api.post(`${authUrl}/api/services/app/tanant/tanantinit`,params );
},
}
\ No newline at end of file
<template>
<div class="detail">
<Row>
<Filed :span="24" :label-width="120" :name="l('name')">{{entity.name}}</Filed>
<Filed :span="24" :label-width="120" :name="l('code')">{{entity.code}}</Filed>
<Filed :span="24" :label-width="120" :name="l('typeId')">{{entity.typeId}}</Filed>
<Filed :span="24" :label-width="120" :name="l('startTime')">{{entity.startTime}}</Filed>
<Filed :span="24" :label-width="120" :name="l('endTime')">{{entity.endTime}}</Filed>
<!-- <Filed :span="24" :name="l('initialized')">{{entity.initialized}}</Filed>
<Filed :span="24" :name="l('hostId')">{{entity.hostId}}</Filed> -->
</Row>
</div>
</template>
<script>
import Api from './api'
export default {
name: 'Add',
data() {
return {
entity: {},
rules: {
name: [{ required: true, message: '必填', trigger: 'blur' }],
code: [{ required: true, message: '必填', trigger: 'blur' }]
}
}
},
props: {
eid: Number
},
methods: {
load(v) {
Api.get({ id: v }).then((r) => {
this.entity = r.result
this.$emit('on-load')
})
},
handleClose() {
this.$emit('on-close')
},
l(key) {
key = 'tanant' + '.' + key
return this.$t(key)
}
},
watch: {
eid(v) {
if (v != 0) {
this.load(v)
}
}
}
}
</script>
\ No newline at end of file
<template>
<Form ref="form" :model="entity" :rules="rules" :label-width="90">
<Row>
<Col :span="24">
<FormItem :label="l('name')" prop="name">
<Input v-model="entity.name"></Input>
</FormItem>
</Col>
<Col :span="24">
<FormItem :label="l('code')" prop="code">
<Input v-model="entity.code"></Input>
</FormItem>
</Col>
<Col :span="24">
<FormItem :label="l('typeId')" prop="typeId">
<Dictionary code="system.Tanant.type" v-model="entity.typeId" type="select"></Dictionary>
</FormItem>
</Col>
<Col :span="24">
<FormItem :label="l('startTime')" prop="startTime">
<DatePicker type="date" v-model="entity.startTime"></DatePicker>
</FormItem>
</Col>
<Col :span="24">
<FormItem :label="l('endTime')" prop="endTime">
<DatePicker type="date" v-model="entity.endTime"></DatePicker>
</FormItem>
</Col>
<Col :span="24">
<FormItem :label="l('hostId')" prop="hostId">
<Select @on-change="onchange_host" v-model="entity.hostId">
<Option v-for="(item,index) in hostlist" :key="index" :value="item.id">{{item.name}}</Option>
</Select>
</FormItem>
</Col>
</Row>
<FormItem>
<Button type="primary" @click="handleSubmit" :disabled="disabled">保存</Button>
<Button @click="handleClose" class="ml20">取消</Button>
</FormItem>
</Form>
</template>
<script>
import Api from './api'
export default {
name: 'Edit',
data() {
return {
disabled: false,
entity: {
id: 0,
name: '',
code: '',
typeId: 0,
startTime: '',
endTime: '',
initialized: 0,
dataSourceId: 0,
hostId: 0
},
hostlist: [],
rules: {
name: [{ required: true, message: '必填', trigger: 'blur' }],
code: [{ required: true, message: '必填', trigger: 'blur' }]
// hostId: [{ required: true, message: '必填', trigger: 'blur' }]
}
}
},
props: {
eid: Number
},
mounted() {
Api.bindhostlist()
.then((r) => {
if (r.success) {
this.hostlist = r.result
} else {
}
})
.catch((err) => {
console.warn(err)
})
},
methods: {
load(v) {
Api.get({ id: v }).then((r) => {
this.entity = r.result
this.$emit('on-load')
})
},
handleSubmit() {
this.$refs.form.validate((v) => {
if (v) {
this.disabled = true
Api.update(this.entity)
.then((r) => {
this.disabled = false
if (r.success) {
this.$Message.success('保存成功')
this.$emit('on-ok')
} else {
this.$Message.error('保存失败')
}
})
.catch((err) => {
this.disabled = false
this.$Message.error('保存失败')
console.warn(err)
})
}
})
},
onchange_host(val) {
this.entity.hostId = val
},
handleClose() {
this.$emit('on-close')
},
l(key) {
key = 'tanant' + '.' + key
return this.$t(key)
}
},
watch: {
eid(v) {
if (v != 0) {
this.load(v)
}
}
}
}
</script>
\ No newline at end of file
<template>
<div>
<DataGrid :columns="columns" ref="grid" :action="action">
<template slot="easySearch">
<Form ref="formInline" :model="easySearch" inline>
<FormItem prop="keys">
<Input placeholder="请输入公司名称/公司编码" v-model="easySearch.keys.value" class="w200"/>
</FormItem>
<FormItem>
<Button type="primary" @click="search">查询</Button>
</FormItem>
</Form>
</template>
<template slot="searchForm">
<Search />
</template>
<template slot="buttons">
<Button type="primary" @click="addModal=true">新增</Button>
</template>
</DataGrid>
<Modal v-model="addModal" title="新增" footer-hide>
<Add @on-close="cancel" @on-ok="addOk" />
</Modal>
<Modal v-model="editModal" title="编辑" footer-hide>
<Edit :eid="curId" @on-close="cancel" @on-ok="addOk" />
</Modal>
<Modal v-model="detailModal" title="详情">
<Detail :eid="curId" />
</Modal>
<Modal v-model="datadetailModal" title="数据源详情">
<dataDetail :eid="datacurId" />
</Modal>
<Modal v-model="deletelModal" title="删除" @on-ok="removeOk" @on-cancel="cancel">
<p>确定删除?</p>
</Modal>
</div>
</template>
<script>
import Api from './api'
import Add from './add'
import Edit from './edit'
import Detail from './detail'
import Search from './search'
import dataDetail from '../data_source/detail'
export default {
name: 'list',
components: {
Add,
Edit,
Detail,
Search,
dataDetail
},
data() {
return {
action: Api.index,
easySearch: {
keys: { op: 'name,code', value: null }
},
addModal: false,
editModal: false,
detailModal: false,
deletelModal: false,
datadetailModal: false,
curId: 0,
datacurId: 0,
columns: [
{ key: 'id', title: this.l('id'), hide: true, align: 'left' },
{
key: 'name',
title: this.l('name'),
align: 'left',
easy: true,
high: true
},
{
key: 'code',
title: this.l('code'),
align: 'left',
easy: true,
high: true
},
{
key: 'typeId',
title: this.l('typeId'),
align: 'left',
high: true,
code: 'system.Tanant.type'
},
{
key: 'startTime',
title: this.l('startTime'),
align: 'left',
high: true
},
{ key: 'endTime', title: this.l('endTime'), align: 'left', high: true },
{
key: 'initialized',
title: this.l('initialized'),
align: 'left',
high: true,
code: 'system.Tanant.init'
},
{
key: 'hostTitle',
title: this.l('hostId'),
align: 'left',
high: true
},
{
key: 'dataSourceTitle',
title: this.l('dataSourceId'),
align: 'left',
render: (h, params) => {
if (params.row.dataSourceId == 0) {
return ''
}
return h('div', { class: 'action' }, [
h(
'op',
{
attrs: { oprate: 'detail' },
on: {
click: () => this.datadetail(params.row.dataSourceId)
}
},
params.row.dataSourceTitle
)
])
}
},
{
key: 'creationTime',
title: this.l('creationTime'),
hide: true,
align: 'left'
},
{
key: 'creatorUserId',
title: this.l('creatorUserId'),
hide: true,
align: 'left'
},
{
key: 'lastModificationTime',
title: this.l('lastModificationTime'),
hide: true,
align: 'left'
},
{
key: 'lastModifierUserId',
title: this.l('lastModifierUserId'),
hide: true,
align: 'left'
},
{
key: 'isDeleted',
title: this.l('isDeleted'),
hide: true,
align: 'left'
},
{
key: 'deletionTime',
title: this.l('deletionTime'),
hide: true,
align: 'left'
},
{
key: 'deleterUserId',
title: this.l('deleterUserId'),
hide: true,
align: 'left'
},
{
title: '操作',
key: 'id',
width: 180,
align: 'center',
render: (h, params) => {
if (params.row.initialized == 1) {
return h('div', { class: 'action' }, [
h(
'op',
{
attrs: { oprate: 'detail' },
on: { click: () => this.detail(params.row.id) }
},
'查看'
)
])
} else {
return h('div', { class: 'action' }, [
h(
'op',
{
attrs: { oprate: 'detail' },
on: { click: () => this.detail(params.row.id) }
},
'查看'
),
h(
'op',
{
attrs: { oprate: 'edit' },
on: { click: () => this.edit(params.row.id) }
},
'编辑'
),
h(
'op',
{
attrs: { oprate: 'edit' },
on: { click: () => this.TanantInit(params.row) }
},
'初始化'
),
h(
'op',
{
attrs: { oprate: 'remove' },
on: { click: () => this.remove(params.row.id) }
},
'删除'
)
])
}
}
}
]
}
},
mounted() {
this.$refs.grid.load()
},
async fetch({ store, params }) {
await store.dispatch('loadDictionary') // 加载数据字典
},
methods: {
addOk() {
this.$refs.grid.load()
this.addModal = false
this.detailModal = false
this.editModal = false
this.curId = 0
},
search() {
this.$refs.grid.reload(this.easySearch)
},
detail(id) {
this.detailModal = true
this.curId = id
},
datadetail(id) {
this.datadetailModal = true
this.datacurId = id
},
edit(id) {
this.editModal = true
this.curId = id
},
TanantInit(rowdata) {
let obj = {
id: rowdata.id,
hostId: rowdata.hostId
}
Api.tanantinit(obj)
.then((r) => {
if (r.success) {
this.$refs.grid.load()
this.$Message.success('初始化成功')
} else {
this.$Message.error('初始化失败')
}
})
.catch((err) => {
console.warn(err)
})
},
remove(id) {
this.deletelModal = true
this.curId = id
},
removeOk() {
Api.delete({ id: this.curId }).then((r) => {
if (r.success) {
this.$refs.grid.load()
this.deletelModal = false
this.$Message.success('删除成功')
}
})
},
removeCancel() {
this.deletelModal = false
},
cancel() {
this.curId = 0
this.addModal = false
this.detailModal = false
this.editModal = false
this.deletedlModal = false
},
l(key) {
/*
tanant:{
id:'',
name:'公司名称',
code:'公司编码',
typeId:'公司类型',
startTime:'服务开始时间',
endTime:'服务结束时间',
initialized:'是否已初始化',
dataSourceId:'数据源ID',
creationTime:'创建时间',
creatorUserId:'创建人',
lastModificationTime:'更新时间',
lastModifierUserId:'更新人',
isDeleted:'是否删除',
deletionTime:'删除时间',
deleterUserId:'删除人',
hostId:'服务器ID',
}
*/
let vkey = 'tanant' + '.' + key
return this.$t(vkey) || key
}
}
}
</script>
<style lang="less">
</style>
\ No newline at end of file
<template>
<Form ref="form" :model="condition" :label-width="90">
<Row>
<Col :span="12" :v-if="condition.id.show"><FormItem :label="l('id')" prop="id"> <Input v-model="condition.id.value"> </Input>
</FormItem></Col>
<Col :span="12" :v-if="condition.name.show"><FormItem :label="l('name')" prop="name"> <Input v-model="condition.name.value"> </Input>
</FormItem></Col>
<Col :span="12" :v-if="condition.code.show"><FormItem :label="l('code')" prop="code"> <Input v-model="condition.code.value"> </Input>
</FormItem></Col>
<Col :span="12" :v-if="condition.typeId.show"><FormItem :label="l('typeId')" prop="typeId"> <Input v-model="condition.typeId.value"> </Input>
</FormItem></Col>
<Col :span="12" :v-if="condition.startTime.show"><FormItem :label="l('startTime')" prop="startTime"> <DatePicker type="daterange" v-model="condition.startTime.value"></DatePicker>
</FormItem></Col>
<Col :span="12" :v-if="condition.endTime.show"><FormItem :label="l('endTime')" prop="endTime"> <DatePicker type="daterange" v-model="condition.endTime.value"></DatePicker>
</FormItem></Col>
<Col :span="12" :v-if="condition.initialized.show"><FormItem :label="l('initialized')" prop="initialized"> <Dictionary code="system.tanant.initialized" v-model="condition.initialized.value"></Dictionary>
</FormItem></Col>
<Col :span="12" :v-if="condition.dataSourceId.show"><FormItem :label="l('dataSourceId')" prop="dataSourceId"> <Input v-model="condition.dataSourceId.value"> </Input>
</FormItem></Col>
<Col :span="12" :v-if="condition.creationTime.show"><FormItem :label="l('creationTime')" prop="creationTime"> <DatePicker type="daterange" v-model="condition.creationTime.value"></DatePicker>
</FormItem></Col>
<Col :span="12" :v-if="condition.creatorUserId.show"><FormItem :label="l('creatorUserId')" prop="creatorUserId"> <Input v-model="condition.creatorUserId.value"> </Input>
</FormItem></Col>
<Col :span="12" :v-if="condition.lastModificationTime.show"><FormItem :label="l('lastModificationTime')" prop="lastModificationTime"> <DatePicker type="daterange" v-model="condition.lastModificationTime.value"></DatePicker>
</FormItem></Col>
<Col :span="12" :v-if="condition.lastModifierUserId.show"><FormItem :label="l('lastModifierUserId')" prop="lastModifierUserId"> <Input v-model="condition.lastModifierUserId.value"> </Input>
</FormItem></Col>
<Col :span="12" :v-if="condition.isDeleted.show"><FormItem :label="l('isDeleted')" prop="isDeleted"> <Input v-model="condition.isDeleted.value"> </Input>
</FormItem></Col>
<Col :span="12" :v-if="condition.deletionTime.show"><FormItem :label="l('deletionTime')" prop="deletionTime"> <DatePicker type="daterange" v-model="condition.deletionTime.value"></DatePicker>
</FormItem></Col>
<Col :span="12" :v-if="condition.deleterUserId.show"><FormItem :label="l('deleterUserId')" prop="deleterUserId"> <Input v-model="condition.deleterUserId.value"> </Input>
</FormItem></Col>
<Col :span="12" :v-if="condition.hostId.show"><FormItem :label="l('hostId')" prop="hostId"> <Input v-model="condition.hostId.value"> </Input>
</FormItem></Col>
</Row>
</Form>
</template>
<script>
import Api from './api'
export default {
name: 'Add',
data() {
return {
condition: {
id:{op:"Equal",value:null,show:false},
name:{op:"Equal",value:null,show:true},
code:{op:"Equal",value:null,show:true},
typeId:{op:"Equal",value:null,show:true},
startTime:{op:"Range",value:null,show:true},
endTime:{op:"Range",value:null,show:true},
initialized:{op:"Equal",value:null,show:true},
dataSourceId:{op:"Equal",value:null,show:false},
creationTime:{op:"Range",value:null,show:false},
creatorUserId:{op:"Equal",value:null,show:false},
lastModificationTime:{op:"Range",value:null,show:false},
lastModifierUserId:{op:"Equal",value:null,show:false},
isDeleted:{op:"Equal",value:null,show:false},
deletionTime:{op:"Range",value:null,show:false},
deleterUserId:{op:"Equal",value:null,show:false},
hostId:{op:"Equal",value:null,show:true},
},
}
},
methods: {
handleClose() {
this.$emit('on-close')
},
l(key) {
key = "tanant" + "." + key;
return this.$t(key)
}
}
}
</script>
\ No newline at end of file
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