Browse Source

plm字段权限

master
ruanqi 2 years ago
parent
commit
a0242c42fb
  1. 1
      src/api/sampleManagement/technicalSpecificationList.js
  2. 3
      src/router/index.js
  3. 260
      src/views/modules/sampleManagement/technicalSpecificationDetail/com_bm_customerInformation.vue
  4. 2
      src/views/modules/sampleManagement/technicalSpecificationDetail/com_tsd_basicInformation.vue
  5. 12
      src/views/modules/sampleManagement/technicalSpecificationDetail/technicalSpecificationDetail.vue
  6. 3
      src/views/modules/sampleManagement/technicalSpecificationList.vue

1
src/api/sampleManagement/technicalSpecificationList.js

@ -10,3 +10,4 @@ export const getTestPartChangeData = data => createAPI(`/technicalSpecification/
export const BMBasicInformationSearch = data => createAPI(`/technicalSpecification/BMBasicInformationSearch`,'post',data)
export const getProofingDataByUserRole= data => createAPI(`/technicalSpecification/getProofingDataByUserRole`,'post',data)
export const updateBMBasicInformation= data => createAPI(`/technicalSpecification/updateBMBasicInformation`,'post',data)
export const searchBMcustomerInfo= data => createAPI(`/technicalSpecification/searchBMcustomerInfo`,'post',data)

3
src/router/index.js

@ -19,7 +19,8 @@ const _import = require('./import-' + process.env.NODE_ENV)
// 全局路由(无需嵌套上左右整体布局)
const globalRoutes = [
{ path: '/404', component: _import('common/404'), name: '404', meta: { title: '404未找到' } },
{ path: '/login', component: _import('common/login'), name: 'login', meta: { title: '登录' } }
{ path: '/login', component: _import('common/login'), name: 'login', meta: { title: '登录' } },
{ path: '/BMPage', component: _import('modules/sampleManagement/technicalSpecificationDetail/technicalSpecificationDetail'), name: 'BM', meta: { title: '技术参数卡' } },
]
// 主入口路由(需嵌套上左右整体布局)

260
src/views/modules/sampleManagement/technicalSpecificationDetail/com_bm_customerInformation.vue

@ -0,0 +1,260 @@
<template>
<div class="mod-config">
<el-form label-position="top" style="margin-top: 1px; margin-left: 0px;">
<el-row :gutter="20">
<el-col :span="6"><div class="grid-content bg-purple">
<el-form-item :label="'终端客户/End Customer'">
<el-input v-model="dataForm.finalCustomerNo" disabled ></el-input>
</el-form-item>
</div></el-col>
<el-col :span="6"><div class="grid-content bg-purple">
<el-form-item :label="'客户名称'">
<el-input v-model="dataForm.finalCustomerDesc" disabled ></el-input>
</el-form-item>
</div></el-col>
<el-col :span="6"><div class="grid-content bg-purple">
<el-form-item :label="'直接客户/Direct Customer'" >
<el-input v-model="dataForm.directCustomerNo" disabled ></el-input>
</el-form-item>
</div></el-col>
<el-col :span="6"><div class="grid-content bg-purple">
<el-form-item :label="'客户名称'">
<el-input v-model="dataForm.directCustomerDesc" disabled ></el-input>
</el-form-item>
</div></el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="6"><div class="grid-content bg-purple">
<el-form-item :label="'产品编号/Part Number'">
<el-input v-model="dataForm.partNo" disabled style="" ></el-input>
</el-form-item>
</div></el-col>
<el-col :span="12"><div class="grid-content bg-purple">
<el-form-item :label="'产品描述/Part Description'">
<el-input v-model="dataForm.partDesc" disabled style="" ></el-input>
</el-form-item>
</div></el-col>
<el-col :span="6"><div class="grid-content bg-purple">
<el-form-item :label="'客户版本/Customer Rev.'">
<el-input v-model="dataForm.customerRevNo" disabled style="" ></el-input>
</el-form-item>
</div></el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="6"><div class="grid-content bg-purple">
<el-form-item :label="'图号/Drawing Number'">
<el-input v-model="dataForm.materialNumber" disabled style="" ></el-input>
</el-form-item>
</div></el-col>
<el-col :span="6"><div class="grid-content bg-purple">
<el-form-item :label="'需要的认证/Certificates Needed'">
<el-input v-model="dataForm.certification" disabled style="" ></el-input>
</el-form-item>
</div></el-col>
<el-col :span="6"><div class="grid-content bg-purple">
<el-form-item :label="'材料或成品/Material Or Label'">
<el-input v-model="dataForm.partFamily" disabled style="" ></el-input>
</el-form-item>
</div></el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="24"><div class="grid-content bg-purple">
<el-form-item :label="'客户应用/要求/Customer App./Req.'">
<el-input
type="textarea"
v-model="dataForm.customerRemark "
:rows="3"
resize='none'
maxlength="120"
show-word-limit
style="height: 60px" disabled>
</el-input>
</el-form-item>
</div></el-col>
</el-row>
<el-row :gutter="20" style="margin-top: 60px">
<el-col :span="24"><div class="grid-content bg-purple">
<el-form-item :label="'其他特殊要求/Other Requirement'">
<el-input
type="textarea"
v-model="dataForm.projectRemark "
:rows="3"
resize='none'
maxlength="120"
show-word-limit
style="height: 60px" disabled>
</el-input>
</el-form-item>
</div></el-col>
</el-row>
<el-row :gutter="20" style="margin-top: 60px">
<el-col :span="24"><div class="grid-content bg-purple">
<el-form-item :label="'附加客户图纸/Attach Customer Drawing'">
<el-input v-model="dataForm.pictureAddess" :disabled="ifDisableFlag" ></el-input>
</el-form-item>
</div></el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="24"><div class="grid-content bg-purple">
<el-form-item :label="'客户图纸变更说明/Attach Customer Drawing'">
<el-input
type="textarea"
v-model="dataForm.customerPictureChangeRemark "
:rows="3"
resize='none'
maxlength="120"
show-word-limit
style="height: 60px" :disabled="ifDisableFlag">
</el-input>
</el-form-item>
</div></el-col>
</el-row>
<el-row :gutter="20" style="margin-top: 60px">
<el-col :span="24"><div class="grid-content bg-purple">
<el-form-item :label="'转量产附档说明/MP Comments'">
<el-input
type="textarea"
v-model="dataForm.productionFileComments "
:rows="3"
resize='none'
maxlength="120"
show-word-limit
style="height: 60px" :disabled="ifDisableFlag">
</el-input>
</el-form-item>
</div></el-col>
</el-row>
<el-row :gutter="20" style="margin-top: 60px">
<el-col :span="24"><div class="grid-content bg-purple">
<el-form-item :label="'备注/Comments'">
<el-input
type="textarea"
v-model="dataForm.remark"
:rows="3"
resize='none'
maxlength="120"
show-word-limit
style="height: 60px" :disabled="ifDisableFlag">
</el-input>
</el-form-item>
</div></el-col>
</el-row>
</el-form>
<el-form label-position="top" style="margin-top: 60px; margin-left: 0px;text-align:center">
<el-button type="primary" @click="saveData()" v-if="!ifDisableFlag">保存</el-button>
</el-form>
<Chooselist ref="baseList" @getBaseData="getBaseData"></Chooselist>
</div>
</template>
<script>
import {
searchBMcustomerInfo,
} from "@/api/sampleManagement/technicalSpecificationList.js"
import Chooselist from '@/views/modules/common/Chooselist'
export default {
components: {
Chooselist
},
data() {
return {
searchData: {
site: '',
username: this.$store.state.user.name,
codeNo: '',
bu:'',
},
ifDisableFlag:false,
dataForm:{
site: '',
codeNo:'',
finalCustomerNo:'',
finalCustomerDesc:'',
directCustomerNo:'',
directCustomerDesc:'',
partNo:'',
partDesc:'',
customerRevNo:'',
certification:'',
partFamily:'',
customerRemark:'',
projectRemark:'',
pictureAddess:'',
customerPictureChangeRemark:'',
productionFileComments:'',
remark:'',
},
dataRole: {
partTypeDesc: [
{
required: true,
message: ' ',
trigger: 'change'
}
],
partName: [
{
required: true,
message: ' ',
trigger: 'change'
}
],
}
}
},
methods: {
// S
getBaseList (val, type) {
this.tagNo = val
this.tagNo1 = type
this.$nextTick(() => {
let strVal = ''
if (val === 1013) {
if(type==1) {
strVal = this.dataForm.partType
}
}
this.$refs.baseList.init(val, strVal)
})
},
/* 列表方法的回调 */
getBaseData (val) {
if (this.tagNo === 1013) {
if(this.tagNo1==1) {
this.dataForm.partType = val.Base_id
this.dataForm.partTypeDesc = val.Base_desc
}
}
},
//
init(inData) {
if(this.dataForm.codeNo!=null&&this.dataForm.codeNo!=''){
return false;
}
//
this.searchData = JSON.parse(JSON.stringify(inData));
//
this.searchTable();
},
searchTable(){
searchBMcustomerInfo(this.searchData).then(({data}) => {
this.dataForm = data.rows[0];
});
}
},
}
</script>
<style scoped>
</style>

2
src/views/modules/sampleManagement/technicalSpecificationDetail/com_tsd_basicInformation.vue

@ -104,7 +104,7 @@
</el-form>
<el-form label-position="top" style="margin-top: 5px; margin-left: 0px;text-align:center">
<el-button type="primary" @click="saveData()">保存</el-button>
<el-button type="primary" @click="saveData()" v-if="!ifDisableFlag">保存</el-button>
</el-form>
<el-dialog
width="530px"

12
src/views/modules/sampleManagement/technicalSpecificationDetail/technicalSpecificationDetail.vue

@ -5,7 +5,7 @@
<basicInformation ref="basicInformation" ></basicInformation>
</el-tab-pane>
<el-tab-pane label="客户信息" name="customerInfo">
777
<customerInfo ref="customerInfo" ></customerInfo>
</el-tab-pane>
<el-tab-pane label="工艺信息" name="customerInfo" v-if="false">
777
@ -22,11 +22,12 @@
<script>
import basicInformation from "./com_tsd_basicInformation";/*組件*/
import customerInfo from "./com_bm_customerInformation";/*組件*/
export default {
name: "technicalSpecificationDetail",
components: {
basicInformation,
customerInfo,
},
data() {
return {
@ -51,7 +52,7 @@
this.$nextTick(() => {
//
var tabsElement = document.querySelector('.tabs');
tabsElement.style.minHeight = window.innerHeight-100+'px';
tabsElement.style.minHeight = window.innerHeight+'px';
this.refreshCurrentTabTable()
})
},
@ -59,11 +60,16 @@
refreshCurrentTabTable(){
if (this.activeName == 'baseInfo') {
this.getBaseInfoData();
}else if(this.activeName == 'customerInfo'){
this.getCustomerInfo();
}
},
getBaseInfoData(){
this.$refs.basicInformation.init(JSON.parse(JSON.stringify(this.dataForm)))
},
getCustomerInfo(){
this.$refs.customerInfo.init(JSON.parse(JSON.stringify(this.dataForm)))
}
},
}
</script>

3
src/views/modules/sampleManagement/technicalSpecificationList.vue

@ -705,7 +705,8 @@
codeNo:row.codeNo,
username:this.$store.state.user.name};
localStorage.setItem('tsfData', JSON.stringify(inData))
this.$router.replace('sampleManagement-technicalSpecificationDetail/technicalSpecificationDetail')
window.open('#/BMPage');
// this.$router.replace('sampleManagement-technicalSpecificationDetail/technicalSpecificationDetail')
},
deleteData(row){

Loading…
Cancel
Save