|
@@ -26,7 +26,7 @@
|
|
|
</a-col>
|
|
|
<a-col :span="12">
|
|
|
<a-form-item label="项目(project)" v-bind="validateInfos.projectName" id="SaleOrderForm-projectName" name="projectName">
|
|
|
- <a-input v-model:value="formData.projectName" placeholder="请输入项目(project)" allow-clear ></a-input>
|
|
|
+ <a-input-search v-model:value="formData.projectName" placeholder="请输入项目(project)" :disabled="notAllowEdit" allow-clear enter-button="Search" @search="onSearchProject"></a-input-search>
|
|
|
</a-form-item>
|
|
|
</a-col>
|
|
|
<a-col :span="12">
|
|
@@ -55,6 +55,7 @@
|
|
|
:rowNumber="true"
|
|
|
:rowSelection="true"
|
|
|
asyncRemove
|
|
|
+ @valueChange="changeValues"
|
|
|
>
|
|
|
<template #action="props">
|
|
|
<a-popconfirm title="确定删除吗?" @confirm="handleDelete(props)">
|
|
@@ -66,7 +67,8 @@
|
|
|
</j-vxe-table>
|
|
|
</a-tab-pane>
|
|
|
</a-tabs>
|
|
|
- <SelectStaningStockModal ref="SelectStaningStockModalRef"></SelectStaningStockModal>
|
|
|
+ <SelectProjectModal ref="SelectProjectModalRef" @selectProject="addProject"></SelectProjectModal>
|
|
|
+ <SelectStaningStockModal ref="SelectStaningStockModalRef" @SelectStaningStock="addSonList"></SelectStaningStockModal>
|
|
|
</a-spin>
|
|
|
</template>
|
|
|
|
|
@@ -76,6 +78,7 @@
|
|
|
import { querystockDetailsByMainId, queryDataById, saveOrUpdate} from '../inventoryCheckForm.api';
|
|
|
import {stockDetailColumns} from '../inventoryCheckForm.data';
|
|
|
import SelectStaningStockModal from './SelectStaningStockModal.vue';
|
|
|
+ import SelectProjectModal from '../../../publicComponents/SelectProjectModal.vue';
|
|
|
import { JVxeTable } from '/@/components/jeecg/JVxeTable';
|
|
|
import JFormContainer from '/@/components/Form/src/container/JFormContainer.vue';
|
|
|
import JUpload from '/@/components/Form/src/jeecg/components/JUpload/JUpload.vue';
|
|
@@ -90,7 +93,8 @@
|
|
|
JFormContainer,
|
|
|
JUpload,
|
|
|
JDictSelectTag,
|
|
|
- SelectStaningStockModal
|
|
|
+ SelectStaningStockModal,
|
|
|
+ SelectProjectModal
|
|
|
},
|
|
|
props:{
|
|
|
formDisabled:{
|
|
@@ -104,6 +108,7 @@
|
|
|
setup(props, {emit}) {
|
|
|
const loading = ref(false);
|
|
|
const formRef = ref();
|
|
|
+ const SelectProjectModalRef = ref()
|
|
|
const stockDetailsTableRef = ref();
|
|
|
const stockDetailsTable = reactive<Record<string, any>>({
|
|
|
loading: false,
|
|
@@ -116,13 +121,10 @@
|
|
|
id: '',
|
|
|
status: undefined,
|
|
|
delFlag: undefined,
|
|
|
- sourceCode:'',
|
|
|
billCode:'',
|
|
|
billDate: moment(new Date()).format('YYYY-MM-DD'),
|
|
|
project: '',
|
|
|
projectName:'',
|
|
|
- customer:"",
|
|
|
- customerName:'',
|
|
|
productionClass: '',
|
|
|
goodsAllocation:'',
|
|
|
warehouse:'',
|
|
@@ -180,7 +182,7 @@
|
|
|
}
|
|
|
|
|
|
const {getSubFormAndTableData, transformData} = useValidateAntFormAndTable(activeKey, {
|
|
|
- 'storePurchaseInDetails': stockDetailsTableRef,
|
|
|
+ 'storeCheckDetails': stockDetailsTableRef,
|
|
|
});
|
|
|
|
|
|
async function getFormData() {
|
|
@@ -200,11 +202,12 @@
|
|
|
}
|
|
|
|
|
|
async function submitForm() {
|
|
|
- if( formData.sourceCode==''){
|
|
|
- message.error('请添加出库明细!');
|
|
|
+ const mainData = await getFormData();
|
|
|
+ const subData = await getSubFormAndTableData();
|
|
|
+ if(!subData.storeCheckDetailsList||subData.storeCheckDetailsList.lenght==0){
|
|
|
+ message.error('请添加库存明细!');
|
|
|
}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
|
|
@@ -227,28 +230,6 @@
|
|
|
var newArray = [...stockDetailsTable.dataSource]
|
|
|
newArray.splice(prop.rowIndex, 1)
|
|
|
stockDetailsTable.dataSource = newArray
|
|
|
- if(stockDetailsTable.dataSource.length==0){
|
|
|
- formData.sourceCode=''
|
|
|
- }
|
|
|
- }
|
|
|
- function addstockDetailsList(data){
|
|
|
- formData.project = data[0].project
|
|
|
- formData.projectName = data[0].projectName
|
|
|
- formData.supplier = data[0].supplier
|
|
|
- formData.supplierName = data[0].supplierName
|
|
|
- formData.delivery = data[0].delivery
|
|
|
- formData.productionClass = data[0].productionClass
|
|
|
- formData.model = data[0].model
|
|
|
- formData.maker = data[0].maker
|
|
|
- formData.sourceCode = data[0].billCode
|
|
|
- formData.arrivalDetails = data[0].arrivalDetails
|
|
|
- var arr = data.concat(stockDetailsTable.dataSource)
|
|
|
- arr.map(item=>{
|
|
|
- item.model = item.childModel
|
|
|
- item.sourceId = item.childId
|
|
|
- item.arrivalQuantity = item.quantity
|
|
|
- })
|
|
|
- stockDetailsTable.dataSource=arr
|
|
|
}
|
|
|
/**
|
|
|
* 值改变事件触发-树控件回调
|
|
@@ -262,7 +243,47 @@
|
|
|
SelectStaningStockModalRef.value.getTable(formData)
|
|
|
|
|
|
}
|
|
|
-
|
|
|
+ function onSearchProject(){
|
|
|
+ SelectProjectModalRef.value.getTable()
|
|
|
+ }
|
|
|
+ function addProject(data){
|
|
|
+ if(data.lenght==0){
|
|
|
+ formData.projectName = ''
|
|
|
+ formData.projectName = ''
|
|
|
+ }else{
|
|
|
+ formData.project = data[0].id
|
|
|
+ formData.projectName = data[0].name
|
|
|
+ }
|
|
|
+ }
|
|
|
+ function addSonList(data){
|
|
|
+ formData.project = data[0].project
|
|
|
+ formData.projectName = data[0].projectName
|
|
|
+ formData.goodsAllocation = data[0].goodsAllocation
|
|
|
+ formData.warehouse = data[0].warehouse
|
|
|
+ formData.productionClass = data[0].productionClass
|
|
|
+ var arr = data.concat(stockDetailsTable.dataSource)
|
|
|
+ arr.map(item=>{
|
|
|
+ item.model = item.childModel
|
|
|
+ item.batchId = item.id
|
|
|
+ item.productClass = item.productionClass_dictText
|
|
|
+ item.inventoryQuantity = item.quantity?item.quantity:0
|
|
|
+ item.countedQuantity = 0
|
|
|
+ item.inventory = Number(item.countedQuantity)-Number(item.inventoryQuantity)
|
|
|
+ })
|
|
|
+ stockDetailsTable.dataSource=arr
|
|
|
+ }
|
|
|
+ function changeValues(prop){
|
|
|
+ if(prop.col.key=='countedQuantity'){
|
|
|
+ if(prop.row.countedQuantity){
|
|
|
+ prop.row.inventory = Number(prop.row.countedQuantity)-Number(prop.row.inventoryQuantity)
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if(prop.col.key=='inventory'){
|
|
|
+ if(prop.row.inventory){
|
|
|
+ prop.row.countedQuantity = Number(prop.row.inventoryQuantity)+Number(prop.row.inventory)
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
return {
|
|
|
stockDetailsTableRef,
|
|
|
stockDetailsTable,
|
|
@@ -282,7 +303,12 @@
|
|
|
formRef,
|
|
|
handleDelete,
|
|
|
SelectStaningStockModalRef,
|
|
|
- selectStandingStock
|
|
|
+ selectStandingStock,
|
|
|
+ onSearchProject,
|
|
|
+ SelectProjectModalRef,
|
|
|
+ addProject,
|
|
|
+ addSonList,
|
|
|
+ changeValues
|
|
|
}
|
|
|
}
|
|
|
});
|