Commit c79bc466 authored by 何远江's avatar 何远江

添加打样管理申请页面

parent dde9ef48
......@@ -26,7 +26,7 @@ export default {
<style lang="scss">
.page-header {
background: #fff;
padding: 10px 0 7px;
padding: 10px 0 4px;
box-shadow: 0 2px 3px #e3e3e3;
.page-buttons {
padding: 0 20px;
......
<template>
<div class="page-wrapper">
<el-scrollbar style="padding: 10px 0;" :style="{ height: scrollHeight }">
<el-scrollbar style="padding: 20px 20px 10px;" :style="{ height: scrollHeight }">
<slot />
</el-scrollbar>
</div>
......@@ -20,7 +20,4 @@ export default {
</script>
<style lang="scss" scoped>
.page-wrapper {
}
</style>
<template>
<el-dialog title="产品BOM物料选择"
<el-dialog
title="产品BOM物料选择"
v-if="showFlag"
:visible.sync="showFlag"
:modal= false
:modal="true"
width="80%"
center
>
<el-table v-loading="loading" :data="bomList" @current-change="handleCurrent" @row-dblclick="handleRowDbClick">
<el-table-column width="50" align="center" >
<template v-slot="scope">
<el-radio v-model="selectedItemId" :label="scope.row.bomItemId" @change="handleRowChange(scope.row)">{{""}}</el-radio>
</template>
</el-table-column>
<el-table-column label="物料编码" align="center" prop="bomItemCode" />
<el-table-column label="物料名称" align="center" prop="bomItemName" :show-overflow-tooltip="true" />
<el-table-column label="规格" align="center" prop="bomItemSpec" :show-overflow-tooltip="true" />
<el-table-column label="单位" width="60px" align="center" prop="unitOfMeasure" />
<el-table-column label="使用比例" width="90px" align="center" prop="quantity" />
<el-table-column label="备注" align="center" prop="remark" :show-overflow-tooltip="true" />
</el-table>
<pagination
v-show="total>0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getList"
<el-table
v-loading="loading"
:data="bomList"
@current-change="handleCurrent"
@row-dblclick="handleRowDbClick"
>
<el-table-column width="50" align="center">
<template v-slot="scope">
<el-radio
v-model="selectedItemId"
:label="scope.row.bomItemId"
@change="handleRowChange(scope.row)"
>{{ "" }}</el-radio
>
</template>
</el-table-column>
<el-table-column label="物料编码" align="center" prop="bomItemCode" />
<el-table-column
label="物料名称"
align="center"
prop="bomItemName"
:show-overflow-tooltip="true"
/>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="confirmSelect">确 定</el-button>
<el-button @click="showFlag=false">取 消</el-button>
<el-table-column
label="规格"
align="center"
prop="bomItemSpec"
:show-overflow-tooltip="true"
/>
<el-table-column
label="单位"
width="60px"
align="center"
prop="unitOfMeasure"
/>
<el-table-column
label="使用比例"
width="90px"
align="center"
prop="quantity"
/>
<el-table-column
label="备注"
align="center"
prop="remark"
:show-overflow-tooltip="true"
/>
</el-table>
<pagination
v-show="total > 0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="confirmSelect">确 定</el-button>
<el-button @click="showFlag = false">取 消</el-button>
</div>
</el-dialog>
</el-dialog>
</template>
</template>
<script>
import { listBom } from "@/api/mes/md/bom";
export default {
name: "ItemBomSelectSingle",
props: {
itemId: undefined
<script>
import { listBom } from "@/api/mes/md/bom";
export default {
name: "ItemBomSelectSingle",
props: {
itemId: undefined,
},
data() {
return {
showFlag: false,
// 遮罩层
loading: true,
selectedItemId: undefined,
selectedRows: undefined,
// 非单个禁用
single: true,
// 非多个禁用
multiple: true,
// 显示搜索条件
showSearch: true,
// 总条数
total: 0,
// 产品BOM关系表格数据
bomList: [],
// 弹出层标题
title: "",
// 是否显示弹出层
open: false,
// 查询参数
queryParams: {
pageNum: 1,
pageSize: 10,
itemId: this.itemId,
bomItemId: null,
bomItemCode: null,
bomItemName: null,
bomItemSpec: null,
unitOfMeasure: null,
quantity: null,
enableFlag: null,
attr1: null,
attr2: null,
attr3: null,
attr4: null,
},
};
},
created() {
this.getList();
},
methods: {
/** 查询产品BOM关系列表 */
getList() {
debugger;
this.loading = true;
listBom(this.queryParams).then((response) => {
this.bomList = response.rows;
this.total = response.total;
this.loading = false;
});
},
data() {
return {
showFlag: false,
// 遮罩层
loading: true,
selectedItemId: undefined,
selectedRows: undefined,
// 非单个禁用
single: true,
// 非多个禁用
multiple: true,
// 显示搜索条件
showSearch: true,
// 总条数
total: 0,
// 产品BOM关系表格数据
bomList: [],
// 弹出层标题
title: "",
// 是否显示弹出层
open: false,
// 查询参数
queryParams: {
pageNum: 1,
pageSize: 10,
itemId: this.itemId,
bomItemId: null,
bomItemCode: null,
bomItemName: null,
bomItemSpec: null,
unitOfMeasure: null,
quantity: null,
enableFlag: null,
attr1: null,
attr2: null,
attr3: null,
attr4: null,
}
};
handleCurrent(row) {
if (row) {
this.selectedRows = row;
}
},
created() {
this.getList();
handleRowDbClick(row) {
if (row) {
this.selectedRows = row;
this.$emit("onSelected", this.selectedRows);
this.showFlag = false;
}
},
// 单选选中数据
handleRowChange(row) {
if (row) {
this.selectedRows = row;
}
},
methods: {
/** 查询产品BOM关系列表 */
getList() {
debugger;
this.loading = true;
listBom(this.queryParams).then(response => {
this.bomList = response.rows;
this.total = response.total;
this.loading = false;
});
},
handleCurrent(row){
if(row){
this.selectedRows = row;
}
},
handleRowDbClick(row){
if(row){
this.selectedRows = row;
this.$emit('onSelected',this.selectedRows);
this.showFlag = false;
}
},
// 单选选中数据
handleRowChange(row) {
if(row){
this.selectedRows = row;
}
},
//确定选中
confirmSelect(){
if(this.selectedItemId ==null || this.selectedItemId==0){
this.$notify({
title:'提示',
type:'warning',
message: '请至少选择一条数据!'
});
return;
}
this.$emit('onSelected',this.selectedRows);
this.showFlag = false;
}
}
};
</script>
\ No newline at end of file
//确定选中
confirmSelect() {
if (this.selectedItemId == null || this.selectedItemId == 0) {
this.$notify({
title: "提示",
type: "warning",
message: "请至少选择一条数据!",
});
return;
}
this.$emit("onSelected", this.selectedRows);
this.showFlag = false;
},
},
};
</script>
......@@ -2,7 +2,7 @@
<el-dialog title="物料产品选择"
v-if="showFlag"
:visible.sync="showFlag"
:modal= false
:modal="true"
width="80%"
center
>
......
<template>
<div>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
type="primary"
plain
icon="el-icon-plus"
size="mini"
@click="handleAdd"
>新增</el-button
>
</el-col>
<el-col :span="1.5">
<el-button
type="danger"
plain
icon="el-icon-delete"
size="mini"
@click="handleDelete"
>删除</el-button
>
</el-col>
<el-col :span="1.5">
<el-button
type="primary"
plain
icon="el-icon-delete"
size="mini"
>产品分类导入</el-button
>
</el-col>
<el-col :span="1.5">
<el-button
type="primary"
plain
icon="el-icon-delete"
size="mini"
@click="$refs['ItemBomSelectRef'].showFlag = true"
>产品导入</el-button
>
<ItemBomSelect ref="ItemBomSelectRef" @onSelected="onItemBomSelect" />
</el-col>
</el-row>
<el-table :data="tableData" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<el-table-column
label="组件数量"
align="center"
prop="quantity"
width="120"
/>
<el-table-column
label="计量单位"
align="center"
prop="unitOfMeasure"
width="120"
/>
<el-table-column
label="报废百分比"
align="center"
prop="scrapPercentage"
width="120"
/>
<el-table-column
label="替代组"
align="center"
prop="alternativeGroup"
width="120"
/>
<el-table-column
label="替代优先级"
align="center"
prop="alternativePriorities"
width="120"
/>
<el-table-column
label="策略"
align="center"
prop="alternativeStrategy"
width="120"
/>
<el-table-column
label="使用概率"
align="center"
prop="alternativeProbability"
width="120"
/>
<el-table-column
label="BOM行备注"
align="center"
prop="bomItemRemark"
width="120"
/>
<el-table-column
label="物料备注"
align="center"
prop="itemRemark"
width="120"
/>
<el-table-column label="操作" align="center" width="120">
<template slot-scope="{ row, index }">
<el-button
type="text"
icon="el-icon-edit"
size="small"
@click="updateRow(row)"
>修改</el-button
>
<el-button
type="text"
icon="el-icon-delete"
size="small"
@click="deleteRow(index)"
>删除</el-button
>
</template>
</el-table-column>
</el-table>
<el-dialog :visible.sync="showFlag" width="700px" title="添加BOM">
<el-form
ref="form"
:model="form"
:rules="rules"
inline
label-width="100px"
size="small"
>
<el-row>
<el-col :span="12">
<el-form-item label="组件数量" prop="quantity">
<el-input
type="number"
v-model="form.quantity"
placeholder="请输入组件数量"
></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="计量单位" prop="unitOfMeasure">
<el-input
v-model="form.unitOfMeasure"
placeholder="请输入计量单位"
></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="报废百分比" prop="scrapPercentage">
<el-input
v-model="form.scrapPercentage"
placeholder="请输入报废百分比"
></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="替代组" prop="alternativeGroup">
<el-input
v-model="form.alternativeGroup"
placeholder="请输入替代组"
></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="替代优先级" prop="alternativePriorities">
<el-input
v-model="form.alternativePriorities"
placeholder="请输入替代优先级"
></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="策略" prop="alternativeStrategy">
<el-input
v-model="form.alternativeStrategy"
placeholder="请输入策略"
></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="使用概率" prop="alternativeProbability">
<el-input
v-model="form.alternativeProbability"
placeholder="请输入使用概率"
></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="BOM行备注" prop="bomItemRemark">
<el-input
v-model="form.bomItemRemark"
placeholder="请输入BOM行备注"
></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="物料备注" prop="itemRemark">
<el-input
v-model="form.itemRemark"
placeholder="请输入物料备注"
></el-input>
</el-form-item>
</el-col>
</el-row>
</el-form>
<div slot="footer">
<el-button type="primary" @click="submitForm">确定</el-button>
<el-button type="default" @click="showFlag = false">取消</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import ItemBomSelect from "@/components/itemBomSelect/single.vue";
export default {
components: { ItemBomSelect },
data() {
return {
/**弹窗状态 */
showFlag: false,
/**表格数据 */
tableData: [],
/**表单规则 */
rules: {},
/**多选 */
selection: [],
/**表单初始化数据 */
form: {
quantity: "",
unitOfMeasure: "",
scrapPercentage: "",
alternativeGroup: "",
alternativePriorities: "",
alternativeStrategy: "",
alternativeProbability: "",
bomItemRemark: "",
itemRemark: "",
},
};
},
methods: {
/**多选 */
handleSelectionChange(val) {
this.selection = val;
},
/**删除操作 */
handleDelete() {},
/**添加操作 */
handleAdd() {
this.resetForm();
this.showFlag = true;
},
/**更新行 */
updateRow(row) {
Object.assign(this.form, row);
this.showFlag = true;
},
/**删除行 */
deleteRow(index) {
this.tableData.splice(index, 1);
},
onItemBomSelect(row) {
// if (row != undefined && row != null) {
// this.tableData.unshift({...row})
// }
},
/**表单提交 */
submitForm() {
this.$refs["form"].validate((valid) => {
if (valid) {
this.tableData.unshift({ ...this.form });
this.showFlag = false;
}
});
},
/**重置表单 */
resetForm() {
this.form = {
quantity: "",
unitOfMeasure: "",
scrapPercentage: "",
alternativeGroup: "",
alternativePriorities: "",
alternativeStrategy: "",
alternativeProbability: "",
bomItemRemark: "",
itemRemark: "",
};
},
/**获取组件数据 */
getComData() {
return this.tableData
}
},
};
</script>
<style></style>
<template>
<div>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
type="primary"
plain
icon="el-icon-plus"
size="mini"
@click="handleAdd"
>新增</el-button
>
</el-col>
<el-col :span="1.5">
<el-button
type="danger"
plain
icon="el-icon-delete"
size="mini"
@click="handleDelete"
>删除</el-button
>
</el-col>
</el-row>
<el-table :data="tableData" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="工序名称" prop="processName" width="120" align="center" />
<el-table-column label="工序编码" prop="processCode" width="120" align="center" />
<el-table-column label="与下一道工序关系" prop="linkType" width="160" align="center" />
<el-table-column label="工作站" prop="workstationId" width="120" align="center" />
<el-table-column label="甘特图显示颜色" prop="colorCode" width="120" align="center" />
<el-table-column label="操作" align="center" width="120">
<template slot-scope="{ row, index }">
<el-button
type="text"
icon="el-icon-edit"
size="small"
@click="updateRow(row)"
>修改</el-button
>
<el-button
type="text"
icon="el-icon-delete"
size="small"
@click="deleteRow(index)"
>删除</el-button
>
</template>
</el-table-column>
</el-table>
<el-dialog :visible.sync="showFlag" width="700px" title="添加工艺">
<el-form
ref="form"
:model="form"
:rules="rules"
inline
label-width="100px"
size="small"
>
<el-row>
<el-col :span="12">
<el-form-item label="组件数量" prop="quantity">
<el-input
type="number"
v-model="form.quantity"
placeholder="请输入组件数量"
></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="计量单位" prop="unitOfMeasure">
<el-input
v-model="form.unitOfMeasure"
placeholder="请输入计量单位"
></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="报废百分比" prop="scrapPercentage">
<el-input
v-model="form.scrapPercentage"
placeholder="请输入报废百分比"
></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="替代组" prop="alternativeGroup">
<el-input
v-model="form.alternativeGroup"
placeholder="请输入替代组"
></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="替代优先级" prop="alternativePriorities">
<el-input
v-model="form.alternativePriorities"
placeholder="请输入替代优先级"
></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="策略" prop="alternativeStrategy">
<el-input
v-model="form.alternativeStrategy"
placeholder="请输入策略"
></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="使用概率" prop="alternativeProbability">
<el-input
v-model="form.alternativeProbability"
placeholder="请输入使用概率"
></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="BOM行备注" prop="bomItemRemark">
<el-input
v-model="form.bomItemRemark"
placeholder="请输入BOM行备注"
></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="物料备注" prop="itemRemark">
<el-input
v-model="form.itemRemark"
placeholder="请输入物料备注"
></el-input>
</el-form-item>
</el-col>
</el-row>
</el-form>
<div slot="footer">
<el-button type="primary" @click="submitForm">确定</el-button>
<el-button type="default" @click="showFlag = false">取消</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import ItemBomSelect from "@/components/itemBomSelect/single.vue";
export default {
components: { ItemBomSelect },
data() {
return {
/**弹窗状态 */
showFlag: false,
/**表格数据 */
tableData: [],
/**表单规则 */
rules: {},
/**多选 */
selection: [],
/**表单初始化数据 */
form: {
quantity: "",
unitOfMeasure: "",
scrapPercentage: "",
alternativeGroup: "",
alternativePriorities: "",
alternativeStrategy: "",
alternativeProbability: "",
bomItemRemark: "",
itemRemark: "",
},
};
},
methods: {
/**多选 */
handleSelectionChange(val) {
this.selection = val;
},
/**删除操作 */
handleDelete() {},
/**添加操作 */
handleAdd() {
this.resetForm();
this.showFlag = true;
},
/**更新行 */
updateRow(row) {
Object.assign(this.form, row);
this.showFlag = true;
},
/**删除行 */
deleteRow(index) {
this.tableData.splice(index, 1);
},
onItemBomSelect(row) {
// if (row != undefined && row != null) {
// this.tableData.unshift({...row})
// }
},
/**表单提交 */
submitForm() {
this.$refs["form"].validate((valid) => {
if (valid) {
this.tableData.unshift({ ...this.form });
this.showFlag = false;
}
});
},
getComData() {},
/**重置表单 */
resetForm() {
this.form = {
quantity: "",
unitOfMeasure: "",
scrapPercentage: "",
alternativeGroup: "",
alternativePriorities: "",
alternativeStrategy: "",
alternativeProbability: "",
bomItemRemark: "",
itemRemark: "",
};
},
},
};
</script>
<style></style>
<template>
<div class="form-page">
<div class="page-title">打样申请</div>
<!-- <div class="page-query-form">
</div> -->
<div class="query-card">
<el-row>
<el-button size="small" type="default">返回</el-button>
<el-button size="small" type="primary">保存</el-button>
</el-row>
<div class="query-card-title">基本信息</div>
<div class="query-card__body">
<el-form
:model="queryParams"
ref="form"
size="small"
:inline="true"
label-width="7em"
>
<el-row :gutter="12">
<el-col :span="6">
<el-form-item label="申请单号" prop="proofingApplyNo">
<el-input
v-model="form.proofingApplyNo"
placeholder="自动生成"
disabled
/>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="产品编码" prop="product_code">
<el-input
v-model="form.product_code"
placeholder="请输入产品编码"
@keyup.enter.native="enterClick"
clearable
>
<template slot="suffix">
<i
class="el-icon-more"
@click="openSelectDialog($event, 'client')"
></i>
</template>
</el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="产品名称" prop="product_name">
<el-input
v-model="form.product_name"
placeholder="请输入产品名称"
/>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="品牌客户" prop="customer_code">
<el-input
v-model="form.customer_code"
placeholder="请输入品牌客户编码"
/>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="中文名称" prop="sample_cn_name">
<el-input
v-model="form.sample_cn_name"
placeholder="请输入样品中文名称"
/>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="英文名称" prop="sample_en_name">
<el-input
v-model="form.sample_en_name"
placeholder="请输入样品英文名称"
/>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="样品规格" prop="sample_specification">
<el-input
v-model="form.sample_specification"
placeholder="请输入样品规格"
/>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="样品数量" prop="sample_num">
<el-input
v-model="form.sample_num"
placeholder="请输入样品数量"
/>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="打样形式" prop="proofing_type">
<el-select
v-model="queryParams.proofing_type"
clearable
placeholder="请选择打样形式"
>
<el-option
v-for="dict in dict.type.proofing_way"
:key="dict.value"
:label="dict.label"
:value="dict.value"
>
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="分配方式" prop="modality">
<el-select
v-model="queryParams.modality"
clearable
placeholder="请选择分配方式"
>
<el-option
v-for="dict in dict.type.allocation_way"
:key="dict.value"
:label="dict.label"
:value="dict.value"
>
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="表面处理" prop="surface_treatment">
<el-input
v-model="form.surface_treatment"
placeholder="请输入表面处理"
/>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="完成日期" prop="finish_date">
<el-date-picker
clearable
v-model="queryParams.finish_date"
type="date"
value-format="yyyy-MM-dd"
placeholder="请选择完成日期"
>
</el-date-picker>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="版面需求时间" prop="requirement_date">
<el-date-picker
clearable
v-model="queryParams.requirement_date"
type="date"
value-format="yyyy-MM-dd"
placeholder="请选择版面需求时间"
>
</el-date-picker>
</el-form-item>
</el-col>
</el-row>
</el-form>
</div>
<div class="query-card-title">样品外观</div>
<div class="query-card__body">
<el-form
:model="queryParams"
ref="form"
size="small"
:inline="true"
label-width="7em"
>
<el-row :gutter="12">
<el-col :span="6">
<el-form-item label="厚度" prop="product_thick">
<el-input
v-model="form.product_thick"
placeholder="请输入厚度(单位mm)"
/>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="单层厚" prop="product_single_layer">
<el-input
v-model="form.product_code"
placeholder="请输入单层厚(单位丝)"
/>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="层数" prop="product_layer_num">
<el-input
v-model="form.product_name"
placeholder="请输入层数"
/>
</el-form-item>
</el-col>
</el-row>
</el-form>
</div>
</div>
<PageTitle>
打样申请单
<template slot="buttons">
<el-button size="mini" @click="resetForm">重置</el-button>
<el-button size="mini" type="primary">提交</el-button>
</template>
</PageTitle>
<el-tabs
style="margin: 0 40px"
type="border-card"
v-if="form.routeId != null"
v-show="showForm"
>
<el-tab-pane label="BOM信息">
<Routebominfo v-if="form.routeId != null" :routeId="form.routeId">
</Routebominfo>
</el-tab-pane>
<PageWrapper>
<el-form
:model="form"
ref="form"
size="small"
:inline="true"
label-width="100px"
>
<el-row>
<el-col :md="8" :xs="12">
<el-form-item label="申请单编码" prop="prototypeRequestCode">
<el-input
disabled
v-model="form.prototypeRequestCode"
placeholder="自动生成"
></el-input>
</el-form-item>
</el-col>
<el-tab-pane label="工艺路线">
<Routeprocess v-if="form.routeId != null" :routeId="form.routeId">
</Routeprocess>
</el-tab-pane>
<el-col :md="8" :xs="12" style="height: 50.5px">
<el-form-item label="产品" prop="itemId">
<el-input v-model="form.itemId" readonly placeholder="请选择产品">
<el-button
slot="append"
icon="el-icon-search"
@click="$refs['ItemSelectRef'].showFlag = true"
></el-button>
</el-input>
<ItemSelect ref="ItemSelectRef" @onSelected="onItemSelect" />
</el-form-item>
</el-col>
<el-col :md="8" :xs="12" style="height: 50.5px">
<el-form-item label="工艺路线" prop="routeId">
<el-input v-model="form.routeId" placeholder="请选择工艺路线">
<el-button slot="append" icon="el-icon-search"></el-button>
</el-input>
</el-form-item>
</el-col>
<el-col :md="8" :xs="12">
<el-form-item label="简称" prop="abbreviation">
<el-input
v-model="form.abbreviation"
placeholder="请输入简称"
></el-input>
</el-form-item>
</el-col>
<el-col :md="8" :xs="12">
<el-form-item label="样品英文名" prop="enName">
<el-input
v-model="form.enName"
placeholder="请输入样品英文名称"
></el-input>
</el-form-item>
</el-col>
<el-col :md="8" :xs="12">
<el-form-item label="样品数量" prop="num">
<el-input
v-model="form.num"
placeholder="请输入样品数量"
></el-input>
</el-form-item>
</el-col>
<el-col :md="8" :xs="12">
<el-form-item label="打样形式" prop="type">
<el-input
v-model="form.type"
placeholder="请选择打样形式"
></el-input>
</el-form-item>
</el-col>
<el-col :md="8" :xs="12">
<el-form-item label="分配方式" prop="modality">
<el-input
v-model="form.modality"
placeholder="请选择分配方式"
></el-input>
</el-form-item>
</el-col>
<el-col :md="8" :xs="12">
<el-form-item label="表面处理" prop="surfaceTreatment">
<el-input
v-model="form.surfaceTreatment"
placeholder="请输入表面处理"
></el-input>
</el-form-item>
</el-col>
<el-col :md="8" :xs="12">
<el-form-item label="NG原因" prop="ngReason">
<el-input
v-model="form.ngReason"
placeholder="请输入NG原因"
></el-input>
</el-form-item>
</el-col>
<el-col :md="8" :xs="12">
<el-form-item label="计划完成日期" prop="plannedFinishDate">
<el-date-picker
value-format="YYYY-MM-dd"
v-model="form.plannedFinishDate"
placeholder="请输入计划完成日期"
></el-date-picker>
</el-form-item>
</el-col>
<el-col :md="8" :xs="12">
<el-form-item label="版面需求时间" prop="plannedLayoutDate">
<el-date-picker
value-format="YYYY-MM-dd"
v-model="form.plannedLayoutDate"
placeholder="请输入版面需求时间"
></el-date-picker>
</el-form-item>
</el-col>
<el-col :md="8" :xs="12">
<el-form-item label="测试标准" prop="testStandard">
<el-input
v-model="form.testStandard"
placeholder="测试标准"
></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :md="8" :xs="12">
<el-form-item label="备注" prop="remark">
<el-input
type="textarea"
:rows="3"
v-model="form.remark"
placeholder="备注"
></el-input>
</el-form-item>
</el-col>
</el-row>
</el-form>
<el-tab-pane label="质检信息"> </el-tab-pane>
</el-tabs>
<el-dialog
v-dialogDrag
v-dialogDragWidth
v-dialogDragHeight
:title="dialogTitle"
:visible.sync="showDialog"
width="70%"
:append-to-body="true"
>
<template v-if="showDialog">
<client-select v-if="showDialogType === 'client'" ref="dialogEdit" />
<sale-plan-select
v-if="showDialogType === 'salePlan'"
ref="dialogEdit"
:info="conditions"
:item="innerCurrentDetail"
/>
<sale-product-select
v-if="showDialogType === 'product'"
ref="dialogEdit"
:info="productParams"
/>
</template>
<div slot="footer">
<el-button
type="default"
size="small"
icon="el-icon-circle-close"
@click="showDialog = false"
>取消</el-button
>
<el-button
type="primary"
size="small"
icon="el-icon-circle-check"
@click="submitHandle"
>确认</el-button
>
</div>
</el-dialog>
<el-tabs type="border-card">
<el-tab-pane label="BOM">
<ProogingBom ref="ProogingBomRef" />
</el-tab-pane>
<el-tab-pane label="工艺">
<ProogingProcess ref="ProogingProcessRef" />
</el-tab-pane>
</el-tabs>
</PageWrapper>
</div>
</template>
<script>
import Routebominfo from "./routebominfo";
import Routeprocess from "./routeprocess";
import ProogingBom from "./components/ProogingBom.vue";
import ProogingProcess from "./components/ProogingProcess.vue";
import ItemSelect from "@/components/itemSelect/single.vue";
export default {
components: { Routebominfo, Routeprocess },
dicts: ['proofing_way','allocation_way'],
components: { ProogingBom, ProogingProcess, ItemSelect },
dicts: [],
data() {
return {
dialogTitle: "选择产品",
innerCurrentDetail: "",
showDialogType: "",
item_type: "",
//显示BOM表单
showDialog: false,
showForm: false,
// 表单参数
form: {
workorderCode: "",
prototypeRequestCode: "",
itemId: "",
itemName: "",
routeId: "",
},
queryParams: {
abbreviation: "",
enName: "",
num: "",
type: "",
modality: "",
surfaceTreatment: "",
ngReason: "",
plannedFinishDate: "",
plannedLayoutDate: "",
testStandard: "",
remark: "",
},
rules: {},
};
},
created() {
console.log('this.vue', this)
computed: {
scrollHeight() {
return "calc(100vh - 73px - 83px)";
},
},
created() {},
methods: {
enterClick() {
this.showForm = true;
onItemSelect(row) {
if (row != undefined && row != null) {
this.form.itemId = row.itemId;
this.form.itemName = row.itemName;
}
},
openSelectDialog(e) {
e.target.blur();
this.showDialog = true;
},
submitHandle() {
this.$refs.dialogEdit.submitForm().then(async (res) => {
switch (this.showDialogType) {
case "product":
this.selectProduct(res);
break;
case "client":
this.selectClient(res);
break;
case "salePlan":
this.selectSalePlan(res);
}
this.showDialog = false;
});
/**重置表单 */
resetForm() {
this.form = {
prototypeRequestCode: "",
itemId: "",
itemName: "",
routeId: "",
abbreviation: "",
enName: "",
num: "",
type: "",
modality: "",
surfaceTreatment: "",
ngReason: "",
plannedFinishDate: "",
plannedLayoutDate: "",
testStandard: "",
remark: "",
};
},
},
};
</script>
<style lang='scss' scoped>
.page-title {
font-size: 18px;
text-align: center;
margin: 20px 0;
font-weight: 600;
}
.query-card {
margin: 0 40px 20px;
// border: 1px solid #e3e3e3;
border-radius: 5px;
.query-card-title {
line-height: 40px;
font-size: 16px;
font-weight: 600;
padding-left: 10px;
// border-top: 1px solid #e3e3e3;
&:first-child {
border: none;
}
}
.query-card__body {
padding: 0 15px;
}
}
</style>
\ No newline at end of file
<style lang="scss" scoped></style>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment