|
|
@@ -1,7 +1,7 @@
|
|
|
<template>
|
|
|
<div class="ele-body">
|
|
|
<el-card shadow="never">
|
|
|
- <el-form label-width="90px" ref="form" :model="form" :rules="rules">
|
|
|
+ <el-form label-width="120px" ref="form" :model="form" :rules="rules">
|
|
|
<div class="body-top">
|
|
|
<div class="top-left">
|
|
|
<div class="ele-page-header ele-cell">
|
|
|
@@ -9,8 +9,8 @@
|
|
|
</div>
|
|
|
<el-row :gutter="24">
|
|
|
<el-col :span="24">
|
|
|
- <el-form-item label="物料组" label-width="70px" prop="categoryLevelRootName">
|
|
|
- <el-input @click.native="chooseMaterial" v-model="form.categoryLevelRootName"/>
|
|
|
+ <el-form-item label="物料组" label-width="70px" prop="categoryLevelGroupName">
|
|
|
+ <el-input @click.native="chooseMaterial" v-model="form.categoryLevelGroupName"/>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
@@ -39,53 +39,154 @@
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8">
|
|
|
- <el-form-item label="分类" prop="categoryName">
|
|
|
- <el-input v-model="form.categoryName"/>
|
|
|
+ <el-form-item label="分类" prop="categoryLevelName">
|
|
|
+ <el-input v-model="form.categoryLevelName"/>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8">
|
|
|
- <el-form-item label="牌号" prop="brand">
|
|
|
- <el-input v-model="form.brand"/>
|
|
|
+ <el-form-item label="牌号" prop="brandNum">
|
|
|
+ <el-input v-model="form.brandNum"/>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8">
|
|
|
- <el-form-item label="规格" prop="specifications">
|
|
|
- <el-input v-model="form.specifications"/>
|
|
|
+ <el-form-item label="规格" prop="specification">
|
|
|
+ <el-input v-model="form.specification"/>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8">
|
|
|
- <el-form-item label="型号" prop="model">
|
|
|
- <el-input v-model="form.model"/>
|
|
|
+ <el-form-item label="型号" prop="modelType">
|
|
|
+ <el-input v-model="form.modelType"/>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="计量单位" prop="measuringUnit">
|
|
|
+ <DictSelection dictName="计量单位" clearable v-model="form.measuringUnit">
|
|
|
+ </DictSelection>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="包装单位" prop="packingUnit">
|
|
|
+ <DictSelection dictName="包装单位" clearable v-model="form.packingUnit">
|
|
|
+ </DictSelection>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="体积">
|
|
|
+ <div class="form-line">
|
|
|
+ <el-input v-model="form.volume"/>
|
|
|
+ <DictSelection class="line-select" dictName="体积单位" clearable v-model="form.volumeUnit">
|
|
|
+ </DictSelection>
|
|
|
+ </div>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="毛重">
|
|
|
+ <div class="form-line">
|
|
|
+ <el-input v-model="form.roughWeight"/>
|
|
|
+ <DictSelection class="line-select" dictName="重量单位" clearable v-model="form.roughWeightUnit">
|
|
|
+ </DictSelection>
|
|
|
+ </div>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="净重">
|
|
|
+ <div class="form-line">
|
|
|
+ <el-input v-model="form.netWeight"/>
|
|
|
+ <DictSelection class="line-select" dictName="重量单位" clearable v-model="form.netWeightUnit">
|
|
|
+ </DictSelection>
|
|
|
+ </div>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="是否产品" prop="isProduct">
|
|
|
+ <el-switch v-model="form.isProduct"> </el-switch>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="所属部门">
|
|
|
+ <deptSelect v-model="form.deptLeaderId" @changeGroup="searchDeptNodeClick"/>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="负责人">
|
|
|
+ <personSelect
|
|
|
+ ref="directorRef"
|
|
|
+ v-model="form.deptId"
|
|
|
+ @selfChange="handleDirectorChange"
|
|
|
+ :init="false"
|
|
|
+ />
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="产品分类">
|
|
|
+ <el-input v-model="form.categoryLevelName"/>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
-
|
|
|
-
|
|
|
</el-form>
|
|
|
</el-card>
|
|
|
|
|
|
<!-- 物料组弹窗 -->
|
|
|
<GroupDialog ref="groupRefs" @changeMaterial='determineChoose'/>
|
|
|
+
|
|
|
+ <!-- 仓储配置 -->
|
|
|
+ <WarehouseInfo ref="warehouseRefs" :form="form"/>
|
|
|
+ <!-- 采购 -->
|
|
|
+ <ProcureInfo ref="procureRefs" :form="form"/>
|
|
|
+ <!-- 生产信息 -->
|
|
|
+ <ProductionInfo ref="productionRefs" :form="form"/>
|
|
|
+ <!-- 计划 -->
|
|
|
+ <PlanInfo ref="planRefs" :form="form"/>
|
|
|
+ <!-- 销售信息 -->
|
|
|
+ <SalesInfo ref="salesRefs" :form="form"/>
|
|
|
+ <!-- 质量配置 -->
|
|
|
+ <QualityInfo ref="qualityRefs" :form="form"/>
|
|
|
+ <!-- 舟皿信息 -->
|
|
|
+ <BoatInfo ref="qualityRefs" :form="form"/>
|
|
|
+ <!-- 周转车信息 -->
|
|
|
+ <TurnoverInfo ref="turnoverRefs" :form="form"/>
|
|
|
+ <!-- 模具信息 -->
|
|
|
+ <MoldInfo ref="moldRefs" :form="form"/>
|
|
|
+ <!-- 备注信息 -->
|
|
|
+ <RemarkInfo ref="remarkRefs" :form="form"/>
|
|
|
</div>
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
- import GroupDialog from './components/GroupDialog.vue'
|
|
|
+ import GroupDialog from './components/GroupDialog.vue';
|
|
|
+ import WarehouseInfo from './components/WarehouseInfo.vue';
|
|
|
+ import ProcureInfo from './components/ProcureInfo.vue';
|
|
|
+ import ProductionInfo from './components/ProductionInfo.vue';
|
|
|
+ import PlanInfo from './components/PlanInfo.vue';
|
|
|
+ import SalesInfo from './components/SalesInfo.vue';
|
|
|
+ import QualityInfo from './components/QualityInfo.vue';
|
|
|
+ import BoatInfo from './components/BoatInfo.vue';
|
|
|
+ import TurnoverInfo from './components/TurnoverInfo.vue';
|
|
|
+ import MoldInfo from './components/MoldInfo.vue';
|
|
|
+ import RemarkInfo from './components/RemarkInfo.vue';
|
|
|
+ import deptSelect from '@/components/CommomSelect/dept-select.vue';
|
|
|
+ import personSelect from '@/components/CommomSelect/person-select.vue';
|
|
|
export default {
|
|
|
name: 'ManageMaterial',
|
|
|
- components: { GroupDialog },
|
|
|
+ components: {
|
|
|
+ GroupDialog , deptSelect , personSelect , WarehouseInfo , ProcureInfo ,ProductionInfo ,
|
|
|
+ PlanInfo , SalesInfo , QualityInfo , BoatInfo , TurnoverInfo , MoldInfo , RemarkInfo
|
|
|
+ },
|
|
|
data() {
|
|
|
return {
|
|
|
form:{
|
|
|
- categoryLevelRootName:'',
|
|
|
- categoryName:''
|
|
|
+ categoryLevelGroupName:'',
|
|
|
+ categoryLevelName:'',
|
|
|
+ files:[]
|
|
|
},
|
|
|
// 表单验证规则
|
|
|
rules: {
|
|
|
- categoryLevelRootName:[{ required: true, message: '请选择所属物料组', trigger: 'change' }],
|
|
|
+ categoryLevelGroupName:[{ required: true, message: '请选择所属物料组', trigger: 'change' }],
|
|
|
code:[{ required: true, message: '请输入编码', trigger: 'blur' }],
|
|
|
name:[{ required: true, message: '请输入名称', trigger: 'blur' }],
|
|
|
- categoryName:[{ required: true, message: '请选择所属分类', trigger: 'change' }],
|
|
|
+ categoryLevelName:[{ required: true, message: '请选择所属分类', trigger: 'change' }],
|
|
|
+ measuringUnit:[{ required: true, message: '请选择计量单位', trigger: 'change' }],
|
|
|
+ isProduct:[{ required: true, message: '请选择是否产品', trigger: 'change' }],
|
|
|
},
|
|
|
chooseItem:null,
|
|
|
|
|
|
@@ -94,12 +195,25 @@
|
|
|
},
|
|
|
|
|
|
methods: {
|
|
|
+ // 选择所属部门
|
|
|
+ searchDeptNodeClick (id, info) {
|
|
|
+ // 根据部门获取人员
|
|
|
+ const params = { executeGroupId: id };
|
|
|
+ this.$nextTick(() => {
|
|
|
+ this.$refs.directorRef.getList(params);
|
|
|
+ });
|
|
|
+ },
|
|
|
+ //选择负责人
|
|
|
+ handleDirectorChange (id, info) {
|
|
|
+ },
|
|
|
+
|
|
|
chooseMaterial(){
|
|
|
this.$refs.groupRefs.open(this.chooseItem)
|
|
|
},
|
|
|
determineChoose(row){
|
|
|
this.chooseItem = row
|
|
|
- this.$set(this.form,'categoryLevelRootName',row.name)
|
|
|
+ this.$set(this.form,'categoryLevelGroupName',row.name)
|
|
|
+ this.$set(this.form,'categoryLevelGroupId',row.id)
|
|
|
},
|
|
|
cancel(){
|
|
|
this.$router.go(-1)
|
|
|
@@ -149,4 +263,12 @@
|
|
|
height: 2px;
|
|
|
}
|
|
|
}
|
|
|
+ .form-line{
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ justify-content: space-between;
|
|
|
+ .line-select{
|
|
|
+ margin-left:15px;
|
|
|
+ }
|
|
|
+ }
|
|
|
</style>
|