|
@@ -16,7 +16,7 @@
|
|
</a-col>
|
|
</a-col>
|
|
<a-col :span="12">
|
|
<a-col :span="12">
|
|
<a-form-item label="报价项目(quotation project)" v-bind="validateInfos.quotationProjectName" id="quotationFormForm-quotationProjectName" name="quotationProjectName">
|
|
<a-form-item label="报价项目(quotation project)" v-bind="validateInfos.quotationProjectName" id="quotationFormForm-quotationProjectName" name="quotationProjectName">
|
|
- <a-input-search v-model:value="formData.quotationProjectName" placeholder="请输入报价项目(inquiry project)" allow-clear enter-button="Search" :disabled="saleQuotationFormProductTable.dataSource.length!==0" @search="onSearchProject"></a-input-search>
|
|
|
|
|
|
+ <a-input-search v-model:value="formData.quotationProjectName" placeholder="请输入报价项目(inquiry project)" allow-clear enter-button="Search" :disabled="notAllowEdit" @search="onSearchProject"></a-input-search>
|
|
</a-form-item>
|
|
</a-form-item>
|
|
</a-col>
|
|
</a-col>
|
|
<a-col :span="12">
|
|
<a-col :span="12">
|
|
@@ -168,7 +168,7 @@
|
|
</a-tab-pane>
|
|
</a-tab-pane>
|
|
</a-tabs>
|
|
</a-tabs>
|
|
<SelectShipSModal ref="SelectShipSModalRef" @select="addShip"></SelectShipSModal>
|
|
<SelectShipSModal ref="SelectShipSModalRef" @select="addShip"></SelectShipSModal>
|
|
- <BaseShipArchiveAccessoriesList ref="BaseShipArchiveAccessoriesListRef"></BaseShipArchiveAccessoriesList>
|
|
|
|
|
|
+ <BaseShipArchiveAccessoriesModal ref="BaseShipArchiveAccessoriesListRef"></BaseShipArchiveAccessoriesModal>
|
|
<SelectPrpductModal ref="SelectPrpductModalRef" @selectProduct="addProduct"></SelectPrpductModal>
|
|
<SelectPrpductModal ref="SelectPrpductModalRef" @selectProduct="addProduct"></SelectPrpductModal>
|
|
<SelectProjectModal ref="SelectProjectModalRef" @selectProject="addProject"></SelectProjectModal>
|
|
<SelectProjectModal ref="SelectProjectModalRef" @selectProject="addProject"></SelectProjectModal>
|
|
<ViewHistoryQuotationModal ref="ViewHistoryQuotationModalRef" ></ViewHistoryQuotationModal>
|
|
<ViewHistoryQuotationModal ref="ViewHistoryQuotationModalRef" ></ViewHistoryQuotationModal>
|
|
@@ -183,17 +183,17 @@
|
|
import { querysaleQuotationFormShipListByMainId,querysaleVersonFormShipListByMainId,querySaleQuotationFormProductListByMainId, querySaleVersonProductListByMainId,queryDataById, saveOrUpdate,HistoryQuotation,queryVersonHistoryById } from '../quotationForm.api';
|
|
import { querysaleQuotationFormShipListByMainId,querysaleVersonFormShipListByMainId,querySaleQuotationFormProductListByMainId, querySaleVersonProductListByMainId,queryDataById, saveOrUpdate,HistoryQuotation,queryVersonHistoryById } from '../quotationForm.api';
|
|
import { JVxeTable } from '/@/components/jeecg/JVxeTable';
|
|
import { JVxeTable } from '/@/components/jeecg/JVxeTable';
|
|
import {saleQuotationFormShipColumns, saleQuotationFormProductColumns} from '../quotationForm.data';
|
|
import {saleQuotationFormShipColumns, saleQuotationFormProductColumns} from '../quotationForm.data';
|
|
- import SelectShipSModal from './SelectShipSModal.vue';
|
|
|
|
- import BaseShipArchiveAccessoriesList from './BaseShipArchiveAccessoriesModal.vue';
|
|
|
|
- import SelectPrpductModal from './SelectPrpductModal.vue';
|
|
|
|
- import SelectProjectModal from './SelectProjectModal.vue';
|
|
|
|
|
|
+ import SelectShipSModal from '../../../publicComponents/SelectShipSModal.vue';
|
|
|
|
+ import BaseShipArchiveAccessoriesModal from '../../../publicComponents/BaseShipArchiveAccessoriesModal.vue';
|
|
|
|
+ import SelectPrpductModal from '../../../publicComponents/SelectPrpductModal.vue';
|
|
|
|
+ import SelectProjectModal from '../../../publicComponents/SelectProjectModal.vue';
|
|
import SelectSupplierQuotation from './SelectSupplierQuotation.vue';
|
|
import SelectSupplierQuotation from './SelectSupplierQuotation.vue';
|
|
import ViewHistoryQuotationModal from './ViewHistoryQuotationModal.vue';
|
|
import ViewHistoryQuotationModal from './ViewHistoryQuotationModal.vue';
|
|
import JFormContainer from '/@/components/Form/src/container/JFormContainer.vue';
|
|
import JFormContainer from '/@/components/Form/src/container/JFormContainer.vue';
|
|
import JUpload from '/@/components/Form/src/jeecg/components/JUpload/JUpload.vue';
|
|
import JUpload from '/@/components/Form/src/jeecg/components/JUpload/JUpload.vue';
|
|
import { JDictSelectTag,JSelectMultiple} from '/@/components/Form';
|
|
import { JDictSelectTag,JSelectMultiple} from '/@/components/Form';
|
|
import JSelectInput from '/@/components/Form/src/jeecg/components/JSelectInput.vue';
|
|
import JSelectInput from '/@/components/Form/src/jeecg/components/JSelectInput.vue';
|
|
- import { Form } from 'ant-design-vue';
|
|
|
|
|
|
+ import { Form,message } from 'ant-design-vue';
|
|
import { useUserStore } from '/@/store/modules/user';
|
|
import { useUserStore } from '/@/store/modules/user';
|
|
import moment from 'moment';
|
|
import moment from 'moment';
|
|
import { useGlobSetting } from '/@/hooks/setting';
|
|
import { useGlobSetting } from '/@/hooks/setting';
|
|
@@ -206,7 +206,7 @@
|
|
JVxeTable,
|
|
JVxeTable,
|
|
JFormContainer,
|
|
JFormContainer,
|
|
SelectShipSModal,
|
|
SelectShipSModal,
|
|
- BaseShipArchiveAccessoriesList,
|
|
|
|
|
|
+ BaseShipArchiveAccessoriesModal,
|
|
SelectPrpductModal,
|
|
SelectPrpductModal,
|
|
JUpload,
|
|
JUpload,
|
|
SelectProjectModal,
|
|
SelectProjectModal,
|
|
@@ -249,6 +249,7 @@
|
|
var SelectShipSModalRef = ref();
|
|
var SelectShipSModalRef = ref();
|
|
var BaseShipArchiveAccessoriesListRef = ref();
|
|
var BaseShipArchiveAccessoriesListRef = ref();
|
|
const activeKey = ref('saleQuotationFormShip');
|
|
const activeKey = ref('saleQuotationFormShip');
|
|
|
|
+ var notAllowEdit = ref(false);
|
|
var classOption = ref([]);
|
|
var classOption = ref([]);
|
|
var customerOption =ref([]);
|
|
var customerOption =ref([]);
|
|
const formData = reactive<Record<string, any>>({
|
|
const formData = reactive<Record<string, any>>({
|
|
@@ -334,7 +335,7 @@
|
|
getCustomerOptions()
|
|
getCustomerOptions()
|
|
quotationPeriod.value[0]=formData.quotationPeriodBegin?moment(formData.quotationPeriodBegin):''
|
|
quotationPeriod.value[0]=formData.quotationPeriodBegin?moment(formData.quotationPeriodBegin):''
|
|
quotationPeriod.value[1]=formData.quotationPeriodEnd?moment(formData.quotationPeriodEnd):''
|
|
quotationPeriod.value[1]=formData.quotationPeriodEnd?moment(formData.quotationPeriodEnd):''
|
|
-
|
|
|
|
|
|
+ notAllowEdit.value=true
|
|
}
|
|
}
|
|
//获取主表
|
|
//获取主表
|
|
async function queryMainData(id) {
|
|
async function queryMainData(id) {
|
|
@@ -372,15 +373,19 @@
|
|
}
|
|
}
|
|
//保存
|
|
//保存
|
|
async function submitForm() {
|
|
async function submitForm() {
|
|
- const mainData = await getFormData();
|
|
|
|
- const subData = await getSubFormAndTableData();
|
|
|
|
- const values = Object.assign({}, dbData, mainData, subData);
|
|
|
|
- console.log('表单提交数据', values)
|
|
|
|
- const isUpdate = values.id ? true : false
|
|
|
|
- const isRevise = values.status=='1' ? true : false
|
|
|
|
- await saveOrUpdate(values, isUpdate,isRevise);
|
|
|
|
- //关闭弹窗
|
|
|
|
- emit('success');
|
|
|
|
|
|
+ if(formData.sourceCode==''){
|
|
|
|
+ message.warning('请选择供应商报价单')
|
|
|
|
+ }else{
|
|
|
|
+ const mainData = await getFormData();
|
|
|
|
+ const subData = await getSubFormAndTableData();
|
|
|
|
+ const values = Object.assign({}, dbData, mainData, subData);
|
|
|
|
+ console.log('表单提交数据', values)
|
|
|
|
+ const isUpdate = values.id ? true : false
|
|
|
|
+ const isRevise = values.status=='1' ? true : false
|
|
|
|
+ await saveOrUpdate(values, isUpdate,isRevise);
|
|
|
|
+ //关闭弹窗
|
|
|
|
+ emit('success');
|
|
|
|
+ }
|
|
}
|
|
}
|
|
|
|
|
|
function setFieldsValue(values) {
|
|
function setFieldsValue(values) {
|
|
@@ -410,6 +415,21 @@
|
|
var newArray = [...saleQuotationFormProductTable.dataSource]
|
|
var newArray = [...saleQuotationFormProductTable.dataSource]
|
|
newArray.splice(prop.rowIndex, 1)
|
|
newArray.splice(prop.rowIndex, 1)
|
|
saleQuotationFormProductTable.dataSource = newArray
|
|
saleQuotationFormProductTable.dataSource = newArray
|
|
|
|
+ if( saleQuotationFormProductTable.dataSource.length!==0){
|
|
|
|
+ var arr = []
|
|
|
|
+ saleQuotationFormProductTable.dataSource.map(item=>{
|
|
|
|
+ if(item.sourceId){
|
|
|
|
+ arr.push(item.sourceId)
|
|
|
|
+ }
|
|
|
|
+ })
|
|
|
|
+ if(arr.length==0){
|
|
|
|
+ formData.sourceCode=''
|
|
|
|
+ notAllowEdit.value=false
|
|
|
|
+ }
|
|
|
|
+ }else{
|
|
|
|
+ formData.sourceCode=''
|
|
|
|
+ notAllowEdit.value=false
|
|
|
|
+ }
|
|
}
|
|
}
|
|
//查询船
|
|
//查询船
|
|
function selectShip(){
|
|
function selectShip(){
|
|
@@ -435,15 +455,20 @@
|
|
}
|
|
}
|
|
//选择项目
|
|
//选择项目
|
|
function addProject(data) {
|
|
function addProject(data) {
|
|
- formData.quotationProject = data[0].id
|
|
|
|
- formData.quotationProjectName = data[0].name
|
|
|
|
- formData.quotationCustomer =data[0].customerId
|
|
|
|
- formData.quotationCustomerName =data[0].customerId_dictText
|
|
|
|
- customerOption.value.map(item=>{
|
|
|
|
- if(item.value==data[0].customerId){
|
|
|
|
- formData.priority =item.priority
|
|
|
|
- }
|
|
|
|
- })
|
|
|
|
|
|
+ if(data.length==0){
|
|
|
|
+ formData.quotationProject =
|
|
|
|
+ formData.quotationProjectName = ''
|
|
|
|
+ }else{
|
|
|
|
+ formData.quotationProject = data[0].id
|
|
|
|
+ formData.quotationProjectName = data[0].name
|
|
|
|
+ formData.quotationCustomer =data[0].customerId
|
|
|
|
+ formData.quotationCustomerName =data[0].customerId_dictText
|
|
|
|
+ customerOption.value.map(item=>{
|
|
|
|
+ if(item.value==data[0].customerId){
|
|
|
|
+ formData.priority =item.priority
|
|
|
|
+ }
|
|
|
|
+ })
|
|
|
|
+ }
|
|
}
|
|
}
|
|
//获取客户列表
|
|
//获取客户列表
|
|
function getCustomerOptions(){
|
|
function getCustomerOptions(){
|
|
@@ -555,6 +580,7 @@
|
|
item.supplierCurrency = item.currency
|
|
item.supplierCurrency = item.currency
|
|
})
|
|
})
|
|
saleQuotationFormProductTable.dataSource=arrProduct
|
|
saleQuotationFormProductTable.dataSource=arrProduct
|
|
|
|
+ notAllowEdit.value=true
|
|
formData.quotationProject = data[0].quotationProject
|
|
formData.quotationProject = data[0].quotationProject
|
|
formData.quotationProjectName = data[0].projectName
|
|
formData.quotationProjectName = data[0].projectName
|
|
formData.sourceCode = data[0].billCode
|
|
formData.sourceCode = data[0].billCode
|
|
@@ -613,7 +639,8 @@
|
|
baseUrl,
|
|
baseUrl,
|
|
VersionDetail,
|
|
VersionDetail,
|
|
queryVersonHistoryData,
|
|
queryVersonHistoryData,
|
|
- addProductFromSupplier
|
|
|
|
|
|
+ addProductFromSupplier,
|
|
|
|
+ notAllowEdit
|
|
}
|
|
}
|
|
}
|
|
}
|
|
});
|
|
});
|