Browse Source

plm BM

master
ruanqi 2 years ago
parent
commit
e37d821c60
  1. 1
      src/api/sampleManagement/technicalSpecificationList.js
  2. 6
      src/assets/scss/rq.scss
  3. 4
      src/store/modules/user.js
  4. 28
      src/views/modules/part/bomManagement.vue
  5. 26
      src/views/modules/part/routingManagement.vue
  6. 6
      src/views/modules/quotation/sellForQuotation.vue
  7. 13
      src/views/modules/sampleManagement/technicalSpecificationDetail/com_bm_bom.vue
  8. 6
      src/views/modules/sampleManagement/technicalSpecificationDetail/com_bm_customerInformation.vue
  9. 16
      src/views/modules/sampleManagement/technicalSpecificationDetail/com_bm_routing.vue
  10. 43
      src/views/modules/sampleManagement/technicalSpecificationDetail/com_tsd_basicInformation.vue

1
src/api/sampleManagement/technicalSpecificationList.js

@ -98,3 +98,4 @@ export const searchBMRemarkPage= data => createAPI(`/technicalSpecification/sear
export const updateBMRemarkPage= data => createAPI(`/technicalSpecification/updateBMRemarkPage`,'post',data) export const updateBMRemarkPage= data => createAPI(`/technicalSpecification/updateBMRemarkPage`,'post',data)
export const updateBMProcess= data => createAPI(`/technicalSpecification/updateBMProcess`,'post',data) export const updateBMProcess= data => createAPI(`/technicalSpecification/updateBMProcess`,'post',data)
export const searchPartLastQuotationNo= data => createAPI(`/technicalSpecification/searchPartLastQuotationNo`,'post',data)

6
src/assets/scss/rq.scss

@ -68,12 +68,12 @@
} }
.superInput { .superInput {
border-bottom: 1px solid #00fff7; /* 下划线样式 */
border-bottom: 1px solid rgb(23, 179, 163); /* 下划线样式 */
font-weight: bold; /* 加粗文字 */ font-weight: bold; /* 加粗文字 */
color: #00fff7; /* 文字颜色 */
color: rgb(23, 179, 163); /* 文字颜色 */
} }
.blue-input .el-input__inner { .blue-input .el-input__inner {
font-weight: bold; font-weight: bold;
color: dodgerblue;
color: rgb(23, 179, 163);
} }

4
src/store/modules/user.js

@ -10,8 +10,8 @@ export default {
multiLanguage: '', multiLanguage: '',
authControl: '', authControl: '',
userSite: 0, userSite: 0,
bmPicUrl:'http://172.19.1.142:80/upload/',
// bmPicUrl:'http://192.168.1.83:81/upload/',
// bmPicUrl:'http://172.19.1.142:80/upload/',
bmPicUrl:'http://192.168.1.83:81/upload/',
}, },
mutations: { mutations: {
updateId (state, id) { updateId (state, id) {

28
src/views/modules/part/bomManagement.vue

@ -8,6 +8,12 @@
<el-form-item :label="'物料名称'"> <el-form-item :label="'物料名称'">
<el-input v-model="searchData.partDesc" clearable style="width: 120px"></el-input> <el-input v-model="searchData.partDesc" clearable style="width: 120px"></el-input>
</el-form-item> </el-form-item>
<el-form-item :label="'制造类型'">
<el-input v-model="searchData.bomType" clearable style="width: 120px"></el-input>
</el-form-item>
<el-form-item :label="'配方版本号'">
<el-input v-model="searchData.engChgLevel" clearable style="width: 120px"></el-input>
</el-form-item>
<el-form-item :label="' '"> <el-form-item :label="' '">
<el-button :loading="queryLoading" @click="getDataList()">查询</el-button> <el-button :loading="queryLoading" @click="getDataList()">查询</el-button>
<el-button type="primary" @click="addModal()">新增</el-button> <el-button type="primary" @click="addModal()">新增</el-button>
@ -881,6 +887,8 @@ export default {
site: this.$store.state.user.site, site: this.$store.state.user.site,
partNo: '', partNo: '',
partDesc: '', partDesc: '',
bomType:'',
engChgLevel:'',
page: 1, page: 1,
limit: 10 limit: 10
}, },
@ -2467,6 +2475,14 @@ export default {
* 获取数据列表 * 获取数据列表
*/ */
getDataList () { getDataList () {
//
if(localStorage.getItem('bomData')!=undefined){
let data=JSON.parse(localStorage.getItem('bomData'));
this.searchData.partNo=data.partNo
this.searchData.bomType=data.bomType
this.searchData.engChgLevel=data.engChgLevel
}
this.searchData.limit = this.pageSize this.searchData.limit = this.pageSize
this.searchData.page = this.pageIndex this.searchData.page = this.pageIndex
this.queryLoading = true this.queryLoading = true
@ -2477,9 +2493,21 @@ export default {
this.pageSize = data.page.pageSize this.pageSize = data.page.pageSize
this.totalPage = data.page.totalCount this.totalPage = data.page.totalCount
this.$refs.selectDiv.setLengthAll( this.dataList.length) this.$refs.selectDiv.setLengthAll( this.dataList.length)
if(localStorage.getItem('bomData')!=undefined){
this.updateModal(this.dataList[0])
}
} }
this.queryLoading = false this.queryLoading = false
if(localStorage.getItem('bomData')!=undefined){
this.$nextTick(function () {
localStorage.removeItem('bomData');
})
}
}) })
}, },
/** /**
* 复选列表信息 * 复选列表信息

26
src/views/modules/part/routingManagement.vue

@ -8,6 +8,12 @@
<el-form-item :label="'物料名称'"> <el-form-item :label="'物料名称'">
<el-input v-model="searchData.partDesc" clearable style="width: 120px"></el-input> <el-input v-model="searchData.partDesc" clearable style="width: 120px"></el-input>
</el-form-item> </el-form-item>
<el-form-item :label="'工艺类型'">
<el-input v-model="searchData.routingType" clearable style="width: 120px"></el-input>
</el-form-item>
<el-form-item :label="'Routing版本号'">
<el-input v-model="searchData.routingRevision" clearable style="width: 120px"></el-input>
</el-form-item>
<el-form-item :label="' '"> <el-form-item :label="' '">
<el-button :loading="queryLoading" @click="getDataList()">查询</el-button> <el-button :loading="queryLoading" @click="getDataList()">查询</el-button>
<el-button type="primary" @click="addModal()">新增</el-button> <el-button type="primary" @click="addModal()">新增</el-button>
@ -907,6 +913,8 @@ export default {
site: this.$store.state.user.site, site: this.$store.state.user.site,
partNo: '', partNo: '',
partDesc: '', partDesc: '',
routingType:'',
routingRevision:'',
page: 1, page: 1,
limit: 10 limit: 10
}, },
@ -2341,6 +2349,13 @@ export default {
* 获取数据列表 * 获取数据列表
*/ */
getDataList () { getDataList () {
//
if(localStorage.getItem('routeData')!=undefined){
let data=JSON.parse(localStorage.getItem('routeData'));
this.searchData.partNo=data.partNo
this.searchData.routingType=data.routingType
this.searchData.routingRevision=data.routingRevision
}
this.searchData.limit = this.pageSize this.searchData.limit = this.pageSize
this.searchData.page = this.pageIndex this.searchData.page = this.pageIndex
this.queryLoading = true this.queryLoading = true
@ -2351,9 +2366,20 @@ export default {
this.pageSize = data.page.pageSize this.pageSize = data.page.pageSize
this.totalPage = data.page.totalCount this.totalPage = data.page.totalCount
this.$refs.selectDiv.setLengthAll( this.dataList.length) this.$refs.selectDiv.setLengthAll( this.dataList.length)
if(localStorage.getItem('routeData')!=undefined){
this.updateModal(this.dataList[0])
}
} }
this.queryLoading = false this.queryLoading = false
if(localStorage.getItem('routeData')!=undefined){
this.$nextTick(function () {
localStorage.removeItem('routeData');
})
}
}) })
}, },
/** /**
* 复选列表信息 * 复选列表信息

6
src/views/modules/quotation/sellForQuotation.vue

@ -740,6 +740,12 @@ export default {
}, },
// //
initData() { initData() {
//
if(localStorage.getItem('quotationData')!=undefined){
let data=JSON.parse(localStorage.getItem('quotationData'));
this.searchData.quotationNo=data.quotationNo
localStorage.removeItem('quotationData');
}
let ids = "" let ids = ""
if (this.$route.params.ids) { if (this.$route.params.ids) {
ids = "?" ids = "?"

13
src/views/modules/sampleManagement/technicalSpecificationDetail/com_bm_bom.vue

@ -16,6 +16,7 @@
<el-form-item label=" "> <el-form-item label=" ">
<el-button type="primary" @click="searchTable()" >刷新</el-button> <el-button type="primary" @click="searchTable()" >刷新</el-button>
<el-button type="primary" @click="changeBomRev()" >变更</el-button> <el-button type="primary" @click="changeBomRev()" >变更</el-button>
<el-button type="primary" @click="jumpBom()" >跳转至BOM</el-button>
<!-- <el-button type="primary" @click="newData()" v-if="!ifDisableFlag">新增</el-button>--> <!-- <el-button type="primary" @click="newData()" v-if="!ifDisableFlag">新增</el-button>-->
</el-form-item> </el-form-item>
@ -441,7 +442,7 @@
}) })
return false; return false;
} }
if(this.currentRow.status!='Buildable'){
if(this.currentRow.status!=='Buildable'){
this.$alert('只有Buildable状态的可以保存!', '错误', { this.$alert('只有Buildable状态的可以保存!', '错误', {
confirmButtonText: '确定' confirmButtonText: '确定'
}) })
@ -464,6 +465,16 @@
} }
}) })
}, },
jumpBom(){
let inData={
site:this.searchData.site,
partNo:this.bomData.partNo,
bomType:this.bomData.bomType,
engChgLevel:this.bomData.engChgLevel,
}
localStorage.setItem('bomData', JSON.stringify(inData))
window.open('#/part-bomManagement');
},
}, },
} }
</script> </script>

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

@ -54,7 +54,10 @@
</div></el-col> </div></el-col>
<el-col :span="6"><div class="grid-content bg-purple"> <el-col :span="6"><div class="grid-content bg-purple">
<el-form-item :label="'材料或成品/Material Or Label'"> <el-form-item :label="'材料或成品/Material Or Label'">
<el-input v-model="dataForm.partFamily" disabled style="" ></el-input>
<el-select v-model="dataForm.materialType" :disabled="ifDisableFlag">
<el-option label="Label" value="Label"></el-option>
<el-option label="Material" value="Material"></el-option>
</el-select>
</el-form-item> </el-form-item>
</div></el-col> </div></el-col>
</el-row> </el-row>
@ -176,6 +179,7 @@
}, },
ifDisableFlag:false, ifDisableFlag:false,
dataForm:{ dataForm:{
materialType:'',
site: '', site: '',
codeNo:'', codeNo:'',
finalCustomerNo:'', finalCustomerNo:'',

16
src/views/modules/sampleManagement/technicalSpecificationDetail/com_bm_routing.vue

@ -166,6 +166,7 @@
<el-form-item label=" "> <el-form-item label=" ">
<el-button type="primary" @click="searchTable()" >刷新</el-button> <el-button type="primary" @click="searchTable()" >刷新</el-button>
<el-button type="primary" @click="changeRouteRev()" >变更</el-button> <el-button type="primary" @click="changeRouteRev()" >变更</el-button>
<el-button type="primary" @click="jumpRoute()" >调整至Route</el-button>
</el-form-item> </el-form-item>
</el-form> </el-form>
@ -1282,13 +1283,14 @@
}) })
}, },
updateBMRouteRev(){ updateBMRouteRev(){
if(this.currentRoute==null){ if(this.currentRoute==null){
this.$alert('请点击选择Route版本!', '错误', { this.$alert('请点击选择Route版本!', '错误', {
confirmButtonText: '确定' confirmButtonText: '确定'
}) })
return false; return false;
} }
if(this.currentRow.status!='Buildable'){
if(this.currentRoute.status!=='Buildable'){
this.$alert('只有Buildable状态的可以保存!', '错误', { this.$alert('只有Buildable状态的可以保存!', '错误', {
confirmButtonText: '确定' confirmButtonText: '确定'
}) })
@ -1316,6 +1318,18 @@
}) })
}) })
}, },
jumpRoute(){
let inData={
site:this.searchData.site,
partNo:this.routeData.partNo,
routingType:this.routeData.routingType,
routingRevision:this.routeData.routingRevision,
}
localStorage.setItem('routeData', JSON.stringify(inData))
window.open('#/part-routingManagement');
},
}, },
} }
</script> </script>

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

@ -37,12 +37,17 @@
<el-input v-model="dataForm.createDate" disabled style="" ></el-input> <el-input v-model="dataForm.createDate" disabled style="" ></el-input>
</el-form-item> </el-form-item>
</div></el-col> </div></el-col>
<el-col :span="12"><div class="grid-content bg-purple">
<el-form-item >
<span slot="label" style="" @click="quotationOfficerChooseModal()"><a herf="#">Select Quote Specialist</a></span>
<el-input v-model="dataForm.quotationOfficer" readonly style="" @focus="quotationOfficerChooseModal()" ></el-input>
<el-col :span="6"><div class="grid-content bg-purple">
<el-form-item :label="'最新报价单'">
<el-input @focus="jumpPage('C')" ref="jumpC" class="blue-input" v-model="quotationNo" readonly style="" ></el-input>
</el-form-item> </el-form-item>
</div></el-col> </div></el-col>
<!-- <el-col :span="12"><div class="grid-content bg-purple">-->
<!-- <el-form-item >-->
<!-- <span slot="label" style="" @click="quotationOfficerChooseModal()"><a herf="#">Select Quote Specialist</a></span>-->
<!-- <el-input v-model="dataForm.quotationOfficer" readonly style="" @focus="quotationOfficerChooseModal()" ></el-input>-->
<!-- </el-form-item>-->
<!-- </div></el-col>-->
</el-row> </el-row>
<el-row :gutter="20"> <el-row :gutter="20">
@ -53,7 +58,7 @@
</div></el-col> </div></el-col>
<el-col :span="6"><div class="grid-content bg-purple"> <el-col :span="6"><div class="grid-content bg-purple">
<el-form-item :label="'ECN Number'"> <el-form-item :label="'ECN Number'">
<el-input @focus="jumpPage('A')" class="blue-input" v-model="dataForm.ecnNo" readonly style="" ></el-input>
<el-input @focus="jumpPage('A')" ref="jumpA" class="blue-input" v-model="dataForm.ecnNo" readonly style="" ></el-input>
</el-form-item> </el-form-item>
</div></el-col> </div></el-col>
<el-col :span="12"><div class="grid-content bg-purple"> <el-col :span="12"><div class="grid-content bg-purple">
@ -74,7 +79,7 @@
<el-form-item :label="'Production Stage'"> <el-form-item :label="'Production Stage'">
<el-select v-model="dataForm.stage" :disabled="ifDisableFlag"> <el-select v-model="dataForm.stage" :disabled="ifDisableFlag">
<el-option label="Sample" value="Sample"></el-option> <el-option label="Sample" value="Sample"></el-option>
<el-option label="MassProduction" value="N"></el-option>
<el-option label="Mass Production" value="Mass Production"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
</div></el-col> </div></el-col>
@ -85,7 +90,7 @@
</div></el-col> </div></el-col>
<el-col :span="6"><div class="grid-content bg-purple"> <el-col :span="6"><div class="grid-content bg-purple">
<el-form-item :label="'Sample Application No'"> <el-form-item :label="'Sample Application No'">
<el-input @focus="jumpPage('B')" class="blue-input" v-model="dataForm.proofingNo" readonly style="" ></el-input>
<el-input @focus="jumpPage('B')" ref="jumpB" class="blue-input" v-model="dataForm.proofingNo" readonly style="" ></el-input>
</el-form-item> </el-form-item>
</div></el-col> </div></el-col>
</el-row> </el-row>
@ -167,6 +172,7 @@
tsdBasicInformationSearch, tsdBasicInformationSearch,
searchTechnicalSpecificationTeamStr, searchTechnicalSpecificationTeamStr,
updateBMBasicInformation, updateBMBasicInformation,
searchPartLastQuotationNo,
} from "@/api/sampleManagement/technicalSpecificationList.js" } from "@/api/sampleManagement/technicalSpecificationList.js"
import { import {
searchOperatorWithSite, searchOperatorWithSite,
@ -178,6 +184,7 @@
}, },
data() { data() {
return { return {
quotationNo:'',
searchData: { searchData: {
site: '', site: '',
username: this.$store.state.user.name, username: this.$store.state.user.name,
@ -302,7 +309,15 @@
searchTechnicalSpecificationTeamStr(inData3).then(({data}) => { searchTechnicalSpecificationTeamStr(inData3).then(({data}) => {
this.dataForm.engineerList = data.rows this.dataForm.engineerList = data.rows
}) })
let inData4={
site:data.row.site,
productNo:data.row.testPartNo,
}
searchPartLastQuotationNo(inData4).then(({data}) => {
if(data.rows.length>0){
this.quotationNo = data.rows[0].quotationNo
}
})
} else { } else {
this.dataList = ''; this.dataList = '';
} }
@ -404,6 +419,7 @@
}, },
jumpPage(type){ jumpPage(type){
if(type==="A"&& this.dataForm.ecnNo!==null&&this.dataForm.ecnNo!==''){ if(type==="A"&& this.dataForm.ecnNo!==null&&this.dataForm.ecnNo!==''){
this.$refs.jumpA.blur();
let inData={ let inData={
ecnNo:this.dataForm.ecnNo ecnNo:this.dataForm.ecnNo
} }
@ -411,11 +427,22 @@
window.open('#/changeManagement-changeRecord'); window.open('#/changeManagement-changeRecord');
} }
if(type==="B"&& this.dataForm.proofingNo!==null&&this.dataForm.proofingNo!==''){ if(type==="B"&& this.dataForm.proofingNo!==null&&this.dataForm.proofingNo!==''){
this.$refs.jumpB.blur();
let inData={ let inData={
proofingNo:this.dataForm.proofingNo proofingNo:this.dataForm.proofingNo
} }
localStorage.setItem('proofingData', JSON.stringify(inData)) localStorage.setItem('proofingData', JSON.stringify(inData))
window.open('#/proofing-requestForProofing'); window.open('#/proofing-requestForProofing');
}
if(type==="C"&& this.quotationNo!==null&&this.quotationNo!==''){
this.$refs.jumpC.blur();
let inData={
quotationNo:this.quotationNo
}
localStorage.setItem('quotationData', JSON.stringify(inData))
window.open('#/quotation-sellForQuotation');
} }
} }
}, },

Loading…
Cancel
Save