diff --git a/src/api/base/properties.js b/src/api/base/properties.js
index 915fdcc..1c5ea5d 100644
--- a/src/api/base/properties.js
+++ b/src/api/base/properties.js
@@ -45,5 +45,6 @@ export const goDownItem= data => createAPI(`/properties/goDownItem`,'post',data)
export const updateBMModal= data => createAPI(`/technicalSpecification/updateBMModal`,'post',data)
export const searchMenuAllListId= (data) => createAPI(`/properties/menu/list`,'post',data)
+export const searchBUList= (data) => createAPI(`/properties/bu/list`,'post',data)
export const searchPropertiesGroup= (data) => createAPI(`/properties/group/list`,'post',data)
diff --git a/src/api/test/testInformation.js b/src/api/test/testInformation.js
index 716d15c..35864ac 100644
--- a/src/api/test/testInformation.js
+++ b/src/api/test/testInformation.js
@@ -49,6 +49,8 @@ export const checkTestStatus = data => createAPI(`/plm/testInformation/checkTest
* @returns {*}
*/
export const getFileContentList = data => createAPI(`/plm/testInformation/getFileContentList`,'post',data)
+export const removeFile = data => createAPI(`/upload/remove`,'post',data)
+export const uploadFileList = (url,data) => createAPI(url,'post',data)
/**
* 文件删除
* @param data
diff --git a/src/views/modules/base/propertiesItem/propertiesModel.vue b/src/views/modules/base/propertiesItem/propertiesModel.vue
index 8925dc3..40490fa 100644
--- a/src/views/modules/base/propertiesItem/propertiesModel.vue
+++ b/src/views/modules/base/propertiesItem/propertiesModel.vue
@@ -23,6 +23,11 @@
+
+
+
+
+
@@ -408,7 +413,7 @@
import Chooselist from '@/views/modules/common/Chooselist'
import {userFavoriteList, saveUserFavorite, removeUserFavorite} from '@/api/userFavorite.js'
import DictDataSelect from "../../sys/dict-data-select.vue";
- import {searchMenuAllListId, searchPropertiesGroup} from "../../../../api/base/properties";
+ import {searchBUList, searchMenuAllListId, searchPropertiesGroup} from "../../../../api/base/properties";
export default {
components: {
DictDataSelect,
@@ -444,6 +449,7 @@
},
data () {
return {
+ BUList:[],
menuList:[],
// 是否收藏
favorite: false,
@@ -458,6 +464,7 @@
searchData: {
site: this.$store.state.user.site,
group:'',
+ bu:'',
codeNo: '',
codeDesc: '',
active:'Y',
@@ -816,9 +823,9 @@
this.height = window.innerHeight - 210
})
},
- created () {
- this.getDataList();
- this.searchMenuList();
+ async created () {
+ await this.searchBUList();
+ await this.searchMenuList();
},
methods: {
searchMenuList(){
@@ -831,6 +838,24 @@
if (this.menuList.length > 0){
this.searchData.group = this.menuList[0].menuId
}
+ this.getDataList();
+ }else {
+ this.$message.warning(data.msg)
+ }
+ }).catch((error)=>{
+ this.$message.error(error)
+ })
+ },
+ searchBUList(){
+ let params = {
+ site:this.$store.state.user.site
+ }
+ searchBUList(params).then(({data})=>{
+ if (data && data.code === 0){
+ this.BUList = data.rows;
+ if (this.BUList.length > 0){
+ this.searchData.bu = this.BUList[0].buNo
+ }
}else {
this.$message.warning(data.msg)
}
@@ -1056,9 +1081,6 @@
})
this.detailModelFlag = true;
},
-
-
-
deleteModalDetails(row){
this.$confirm(`是否删除这个属性项目?`, '提示', {
confirmButtonText: '确定',
diff --git a/src/views/modules/common/uploadFileList.vue b/src/views/modules/common/uploadFileList.vue
new file mode 100644
index 0000000..37ef395
--- /dev/null
+++ b/src/views/modules/common/uploadFileList.vue
@@ -0,0 +1,117 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ 将文件拖到此处,或点击上传
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/modules/quotation/requestForQuote.vue b/src/views/modules/quotation/requestForQuote.vue
index 215aac6..4520155 100644
--- a/src/views/modules/quotation/requestForQuote.vue
+++ b/src/views/modules/quotation/requestForQuote.vue
@@ -283,54 +283,150 @@
项目物料
-
-
-
-
-
-
-
-
-
- 查询
-
-
-
-
-
-
-
- {{ scope.row[item.columnProp] }}
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+ 查询
+
+
+
+
+
+
+
+ {{ scope.row[item.columnProp] }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
保存
@@ -666,6 +762,52 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
{
- if (data && data.code === 0) {
- this.getDataList()
- this.modalFlag = false
- this.$message({
- message: '操作成功',
- type: 'success',
- duration: 1500,
- onClose: () => {
- }
- })
- } else {
- this.$alert(data.msg, '错误', {
- confirmButtonText: '确定'
- })
+ // 验证详情
+ this.$refs[this.modalData.flag === '1'?'saveDetailForm':'editDetailForm'].validate((valid) => {
+ if (!valid){
+ if (this.priceCheckDetail.associatedPartNo === ''|| this.savePriceDetail.associatedPartNo === ''){
+ this.$message.warning('请输入关联零件号信息!')
+ return
}
- })
- } else {
- quotationInformationEdit(this.modalData).then(({data}) => {
- if (data && data.code === 0) {
- this.getDataList()
- this.modalFlag = false
- this.$message({
- message: '操作成功',
- type: 'success',
- duration: 1500,
- onClose: () => {
+ if (this.priceCheckDetail.materialRequired === '' || this.savePriceDetail.materialRequired === ''){
+ this.$message.warning('请输入所需材料!')
+ return
+ }
+ if (this.priceCheckDetail.yearlyOrMonthlyRequirement === '' || this.savePriceDetail.yearlyOrMonthlyRequirement === ''){
+ this.$message.warning('请输入年度/月度需求!')
+ return
+ }
+ if (this.priceCheckDetail.runningWidth === '' || this.savePriceDetail.yearlyOrMonthlyRequirement === ''){
+ this.$message.warning('请输入运行宽度!')
+ return
+ }
+ }else {
+ if (this.modalData.flag === '1') {
+ this.modalData.priceCheckDetail = this.savePriceDetail
+ quotationInformationSave(this.modalData).then(({data}) => {
+ if (data && data.code === 0) {
+ this.getDataList()
+ this.modalFlag = false
+ this.$message({
+ message: '操作成功',
+ type: 'success',
+ duration: 1500,
+ onClose: () => {
+ }
+ })
+ } else {
+ this.$alert(data.msg, '错误', {
+ confirmButtonText: '确定'
+ })
}
})
} else {
- this.$alert(data.msg, '错误', {
- confirmButtonText: '确定'
+ this.modalData.priceCheckDetail = this.priceCheckDetail
+ quotationInformationEdit(this.modalData).then(({data}) => {
+ if (data && data.code === 0) {
+ this.getDataList()
+ this.modalFlag = false
+ this.$message({
+ message: '操作成功',
+ type: 'success',
+ duration: 1500,
+ onClose: () => {
+ }
+ })
+ } else {
+ this.$alert(data.msg, '错误', {
+ confirmButtonText: '确定'
+ })
+ }
})
}
- })
- }
+ }
+ })
}
})
},
@@ -2396,9 +2586,10 @@ export default {
* @param row
*/
quotationClickRow(row) {
- this.$refs.quotationTable.toggleRowSelection(row)
+ // this.$refs.quotationTable.toggleRowSelection(row)
this.quotationCurrentRow = JSON.parse(JSON.stringify(row))
this.quotationDetailData = row;
+ this.priceCheckDetail = row.priceCheckDetail
this.getPriceCheckProperties(row)
},
getPriceCheckProperties(row) {
@@ -3017,6 +3208,7 @@ export default {
},
// 保存弹框关闭事件
closeSaveDataDialog() {
+ this.activeTab='part';
this.$refs.saveDataForm.resetFields(); // 先清空缓存选中
this.$nextTick(() => this.$refs.projectPartTable.clearSelection())
// 拿到选中的产品编号
@@ -3028,6 +3220,9 @@ export default {
partName: '',
projectId: '',
}
+ if (this.modalData.flag === '1'){
+ this.$refs.saveDetailForm.resetFields();
+ }
},
// 保存弹框打开事件
openSaveDataDialog() {
@@ -3116,5 +3311,8 @@ export default {
/deep/ .el-checkbox__input.is-disabled.is-checked .el-checkbox__inner::after {
border-color: #FFF
}
+/deep/ .el-form-item--medium .el-form-item__content{
+ height: auto;
+}
diff --git a/src/views/modules/quotation/sellForQuotation/quotationDetail/billOfMateriel.vue b/src/views/modules/quotation/sellForQuotation/quotationDetail/billOfMateriel.vue
index 4daca29..ced0ae4 100644
--- a/src/views/modules/quotation/sellForQuotation/quotationDetail/billOfMateriel.vue
+++ b/src/views/modules/quotation/sellForQuotation/quotationDetail/billOfMateriel.vue
@@ -187,7 +187,7 @@ export default {
serialNumber: '102003Table4PrintUnitName',
tableId: "102003Table4",
tableName: "报价材料信息",
- columnProp: 'printUnitName',
+ columnProp: 'printUnit',
headerAlign: "center",
align: "center",
columnLabel: '单位',
diff --git a/src/views/modules/quotation/sellForQuotation/quotationDetail/quoteRouting.vue b/src/views/modules/quotation/sellForQuotation/quotationDetail/quoteRouting.vue
index d51b6b1..6d454cd 100644
--- a/src/views/modules/quotation/sellForQuotation/quotationDetail/quoteRouting.vue
+++ b/src/views/modules/quotation/sellForQuotation/quotationDetail/quoteRouting.vue
@@ -265,7 +265,7 @@ export default {
columnProp: 'machRunFactor',
headerAlign: "center",
align: "right",
- columnLabel: '机器运行速度',
+ columnLabel: '机器单位产出',
columnHidden: false,
columnImage: false,
columnSortable: false,
@@ -282,7 +282,7 @@ export default {
columnProp: 'machSetupTime',
headerAlign: "center",
align: "right",
- columnLabel: '调机时长',
+ columnLabel: '调机时间',
columnHidden: false,
columnImage: false,
columnSortable: false,
@@ -316,7 +316,7 @@ export default {
columnProp: 'laborRunFactor',
headerAlign: "center",
align: "right",
- columnLabel: '人工生产速度',
+ columnLabel: '人工单位产出',
columnHidden: false,
columnImage: false,
columnSortable: false,
@@ -333,7 +333,7 @@ export default {
columnProp: 'laborSetupTime',
headerAlign: "center",
align: "right",
- columnLabel: '人工调机时长',
+ columnLabel: '人工调机时间',
columnHidden: false,
columnImage: false,
columnSortable: false,
@@ -401,7 +401,7 @@ export default {
columnProp: 'setupLaborClassNo',
headerAlign: "center",
align: "left",
- columnLabel: '调机人员等级',
+ columnLabel: '调机过程中人员等级',
columnHidden: false,
columnImage: false,
columnSortable: false,
diff --git a/src/views/modules/test/file/testFile.vue b/src/views/modules/test/file/testFile.vue
new file mode 100644
index 0000000..7765141
--- /dev/null
+++ b/src/views/modules/test/file/testFile.vue
@@ -0,0 +1,138 @@
+
+
+
+
+
+ 上传文件
+
+
+
+
+ {{scope.row[item.columnProp]}}
+
+
+
+
+
+ 下载
+ 删除
+
+
+
+
+
+
+
+
+
diff --git a/src/views/modules/test/requestForTest.vue b/src/views/modules/test/requestForTest.vue
index 9c304d7..1aa1f9d 100644
--- a/src/views/modules/test/requestForTest.vue
+++ b/src/views/modules/test/requestForTest.vue
@@ -262,6 +262,21 @@
+
+
+ 是否需要Artwork
+
+
+
+
+
+
+
+
+
+ 是否需要计划
+
+
@@ -356,9 +371,12 @@
-
+
+
+
+
@@ -687,9 +705,13 @@
-
+
+
+
+
+
@@ -1072,9 +1094,11 @@
import {partPropertiesList} from "../../../api/base/properties";
import TestProperties from "./testAttribute/testProperties.vue";
import {getTestPropertiesList} from "../../../api/test/testProperties";
+ import TestFile from "./file/testFile.vue";
export default {
name:"test",
components: {
+ TestFile,
TestProperties,
TestAttribute,
TestRoutingTable,
@@ -1129,6 +1153,7 @@
},
data () {
return {
+ testFileList:[],
dialogProperties:[],
attributeList:[],
testSoRoutingList:[],
@@ -1191,6 +1216,8 @@
engineerName: '',
priorityLevel: '一般',
testNumber: 1,
+ doesNeedArtwork:'',
+ doesNeedPlanner:'',
requiredDeliveryDate: '',
remark: '',
technicalConsiderations: '',
@@ -1700,7 +1727,7 @@
serialNumber: '103001Table2CreatedBy',
tableId: '103001Table2',
tableName: '文件信息表',
- columnProp: 'createdBy',
+ columnProp: 'createBy',
headerAlign: 'center',
align: 'center',
columnLabel: '上传人',
@@ -2162,6 +2189,21 @@
this.refreshCurrentTabTable()
}
},
+ getFileContentList(){
+ let params = {
+ orderRef1:this.$store.state.user.site,
+ orderRef2:this.testCurrentRow.testNo
+ }
+ getFileContentList(params).then(({data})=>{
+ if (data && data.code === 0){
+ this.testFileList = data.rows;
+ }else {
+ this.$message.warning(data.msg)
+ }
+ }).catch((error)=>{
+ this.$message.error(error)
+ })
+ },
/**
* 刷新页签的table数据
*/
@@ -2284,6 +2326,8 @@
projectId: row.projectId,
projectName: row.projectName,
tracker: row.tracker,
+ doesNeedArtwork:row.doesNeedArtwork,
+ doesNeedPlanner:row.doesNeedPlanner,
trackerName: row.trackerName,
testPartNo: row.testPartNo,
partName: row.partName,
@@ -2313,7 +2357,7 @@
nextToDo: row.nextToDo,
updateBy: this.$store.state.user.name
}
- this.activeTabList = ['product','process','attribute','partAttribute']
+ this.activeTabList = ['product','process','attribute','partAttribute','file']
this.$nextTick(()=>{
this.$refs.dialogSoBom.clearTable();
})
@@ -2383,6 +2427,8 @@
if (this.modalData.flag === '1'){
this.testSoRoutingList = []
this.testSoBomList = []
+ this.testFileList = [];
+ this.testPropertiesList = [];
this.saveTest()
}else {
this.updateTest()
@@ -2448,7 +2494,7 @@
testInformationSave(this.modalData).then(({data}) => {
if (data && data.code === 0) {
this.getDataList();
- this.activeTabList = ['product','process','attribute','partAttribute']
+ this.activeTabList = ['product','process','attribute','partAttribute','file']
this.activeTab = 'product'
this.modalData.testNo = data.row
// this.modalFlag = false
@@ -2531,6 +2577,7 @@
this.selectTestSoRoutingList()
this.getPartPropertiesList();
this.getTestProperties();
+ this.getFileContentList()
}
},
/**
@@ -2969,6 +3016,8 @@
customerNo: '',
customerDesc: '',
projectId: '',
+ doesNeedArtwork:'',
+ doesNeedPlanner:'',
projectName: '',
tracker: '',
trackerName: '',
diff --git a/src/views/modules/test/testSoBom/testTable.vue b/src/views/modules/test/testSoBom/testTable.vue
index 9fbbf6c..22d3000 100644
--- a/src/views/modules/test/testSoBom/testTable.vue
+++ b/src/views/modules/test/testSoBom/testTable.vue
@@ -200,7 +200,7 @@ export default {
serialNumber: '102001Table3UmName',
tableId: '102001Table3',
tableName: '测试产品结构',
- columnProp: 'umName',
+ columnProp: 'umId',
headerAlign: 'center',
align: 'left',
columnLabel: '计量单位',
@@ -640,7 +640,7 @@ export default {
-
+
diff --git a/src/views/modules/test/test_upload_file.vue b/src/views/modules/test/test_upload_file.vue
index ec4f111..1d3d1c1 100644
--- a/src/views/modules/test/test_upload_file.vue
+++ b/src/views/modules/test/test_upload_file.vue
@@ -36,8 +36,6 @@
-
-