计量客户

This commit is contained in:
‘huanghaiixia’
2026-03-17 15:19:11 +08:00
parent 1114535f59
commit 6cfb1c77c5
9 changed files with 578 additions and 40 deletions

View File

@ -144,7 +144,7 @@
import { getCompDept } from '/@/api/approve/Appro';
import { useUserStore } from '/@/store/modules/user';
import { getDictionary } from '/@/api/sales/Customer';
import { getLngPngDemandContractList, getLngPngDemandPointDely, getLngPngDemandContractQty, getLngPngDemandPurList, getLngPngDemandRate } from '/@/api/dayPlan/Demand';
import { getLngLngDemandContractList, getLngLngDemandStationList } from '/@/api/dayPlan/LngDemand';
const userStore = useUserStore();
const userInfo = userStore.getUserInfo;
@ -203,7 +203,7 @@
cuCode:formState.value.cuCode,
datePlan: dayjs(formState.value.datePlan).format('YYYY-MM-DD')
}
let res = await getLngPngDemandContractList(obj)
let res = await getLngLngDemandContractList(obj)
contractList.value = res || []
if (contractList.value.length == 1) {
formState.value.kName = contractList.value[0].kName
@ -240,7 +240,7 @@
getPurList()
}
const getPointDely = async () => {
let res = await getLngPngDemandPointDely({kId: formState.value.ksId})
let res = await getLngLngDemandStationList({kId: formState.value.ksId})
pointDelyList.value = res || []
if (pointDelyList.value.length == 1) {
formState.value.pointDelyName = pointDelyList.value[0].pointDelyName

View File

@ -22,7 +22,7 @@
import { message } from 'ant-design-vue';
import { useUserStore } from '/@/store/modules/user';
import { BasicTable, useTable, FormSchema, BasicColumn, TableAction } from '/@/components/Table';
import { getLngPngMeasureSalesPurPageAdd, addLngPngMeasureSalesPur } from '/@/api/dayPlan/PngMeasureSalesPur';
import { getLngLngMeasurePageAdd, addLngLngMeasure } from '/@/api/dayPlan/LngMeasureSales';
import NP from 'number-precision';
const userStore = useUserStore();
@ -172,7 +172,7 @@
const selectedValues = ref([]);
const [registerTable, { reload,setPagination }] = useTable({
title: t('LNG计量(客户)新增列表'),
api: getLngPngMeasureSalesPurPageAdd,
api: getLngLngMeasurePageAdd,
columns: columns,
pagination: true,
@ -219,7 +219,7 @@
spinning.value = true;
try {
await addLngPngMeasureSalesPur(selectedValues.value);
await addLngLngMeasure(selectedValues.value);
spinning.value = false;
notification.success({
message: '提示',

View File

@ -62,7 +62,7 @@
import { Modal } from 'ant-design-vue';
import { ExclamationCircleOutlined } from '@ant-design/icons-vue';
import { BasicTable, useTable, TableAction, ActionItem } from '/@/components/Table';
import { getLngLngMeasurePage, deleteLngLngMeasure} from '/@/api/dayPlan/LngMeasureSales';
import { getLngLngMeasurePage, deleteLngLngMeasure,addLngLngMeasure, updateLngLngMeasure,cancelLngLngMeasure} from '/@/api/dayPlan/LngMeasureSales';
import { PageWrapper } from '/@/components/Page';
import { useMessage } from '/@/hooks/web/useMessage';
import { useI18n } from '/@/hooks/web/useI18n';
@ -70,7 +70,6 @@
import { useFormConfig } from '/@/hooks/web/useFormConfig';
import { useRouter } from 'vue-router';
import { setIndexFlowStatus } from '/@/utils/flow/index'
import { getLngLngMeasure } from '/@/api/dayPlan/LngMeasureSales';
import { useModal } from '/@/components/Modal';
import LngMeasureSalesModal from './components/LngMeasureSalesModal.vue';
import {formConfig, searchFormSchema, columns } from './components/config';
@ -81,7 +80,11 @@
import { parseDownloadUrl} from '/@/api/system/file';
import { downloadByUrl } from '/@/utils/file/download';
import { DeleteOutlined } from '@ant-design/icons-vue';
import { getCompDept } from '/@/api/approve/Appro';
import { useUserStore } from '/@/store/modules/user';
const userStore = useUserStore();
const userInfo = userStore.getUserInfo;
const curCuCode = ref('')
const { bus, CREATE_FLOW, FLOW_PROCESSED, FORM_LIST_MODIFIED } = useEventBus();
const { notification } = useMessage();
@ -95,7 +98,6 @@
const customSearchFormSchema =ref(searchFormSchema);
const selectedKeys = ref<string[]>([]);
const selectedRowsData = ref<any[]>([]);
const curCuCode = ref('')
const tableRef = ref();
const curIdx = ref('')
//所有按钮
@ -149,8 +151,9 @@
fieldMapToTime: [['datePlan', ['startDate', 'endDate'], 'YYYY-MM-DD']],
showResetButton: false,
},
immediate: false,
beforeFetch: (params) => {
return { ...params, FormId: formIdComputedRef.value, PK: 'id',page:params.limit };
return { ...params, FormId: formIdComputedRef.value, PK: 'id',page:params.limit,cuCode:curCuCode.value };
},
afterFetch: (res) => {
tableRef.value.setToolBarWidth();
@ -233,7 +236,7 @@
} else {
selectedRowsData.value= [{...val}]
}
await cancelLngPngMeasureSalesPur(selectedRowsData.value)
await cancelLngLngMeasure(selectedRowsData.value)
handleSuccess();
notification.success({
message: '提示',
@ -254,7 +257,7 @@
selectedRowsData.value= [{...val}]
}
await updateLngPngMeasureSalesPur(selectedRowsData.value)
await updateLngLngMeasure(selectedRowsData.value)
handleSuccess();
notification.success({
message: '提示',
@ -274,7 +277,7 @@
} else {
selectedRowsData.value= [{...val}]
}
await addLngPngMeasureSalesPur(selectedRowsData.value)
await addLngLngMeasure(selectedRowsData.value)
handleSuccess();
notification.success({
message: '提示',
@ -312,8 +315,10 @@
reload();
}
onMounted(() => {
onMounted(async() => {
const res = await getCompDept(userInfo.id)
curCuCode.value = res?.comp?.cuCode
reload({searchInfo:{'limit':1,'size':10,'page':1}});
if (schemaIdComputedRef.value) {
bus.on(FLOW_PROCESSED, handleRefresh);
bus.on(CREATE_FLOW, handleRefresh);

View File

@ -34,9 +34,9 @@
</a-form-item>
</a-col>
<a-col :span="8">
<a-form-item label="账期内含预收付款" name="rpSign">
<a-select v-model:value="formState.rpSign" style="width: 100%" allow-clear :disabled="isDisable">
<a-select-option v-for="item in optionSelect.signList" :key="item.code" :value="item.code">
<a-form-item label="状态" name="approCode">
<a-select v-model:value="formState.approCode" disabled style="width: 100%" allow-clear>
<a-select-option v-for="item in optionSelect.approCodeList" :key="item.code" :value="item.code">
{{ item.name }}
</a-select-option>
</a-select>
@ -57,15 +57,6 @@
<a-input v-model:value="formState.amount" disabled/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-form-item label="状态" name="approCode">
<a-select v-model:value="formState.approCode" disabled style="width: 100%" allow-clear>
<a-select-option v-for="item in optionSelect.approCodeList" :key="item.code" :value="item.code">
{{ item.name }}
</a-select-option>
</a-select>
</a-form-item>
</a-col>
<a-col :span="24">
<a-form-item label="结算说明" name="settleDesc" :label-col="{ span: 3 }" :wrapper-col="{ span: 24 }">
<a-textarea v-model:value="formState.settleDesc" :disabled="isDisable" :auto-size="{ minRows: 2, maxRows: 5 }"/>
@ -78,15 +69,16 @@
</a-col>
</a-row>
</Card>
<Card>
<settleSalesPurList :list="dataList" :disabled="isDisable" pageType="customer" :formState="formState" @change="settleChange"></settleSalesPurList>
</Card>
<Card title="对账单" :bordered="false" >
<UploadList :disabled="isDisable" btnTip="上传对账单" :list="dataFileAccount" :value="formState.filePath" :tableName="tableName" :columnName="columnName" @change="uploadChange"/>
</Card>
<Card title="附件信息" :bordered="false" >
<UploadList :disabled="isDisable" :list="dataFile" :value="formState.filePath" :tableName="tableName" :columnName="columnName" @change="uploadListChange"/>
</Card>
<Card>
<settleLngHdrList :list="dataList" :disabled="isDisable" pageType="customer" :formState="formState" @change="settleChange"></settleLngHdrList>
</Card>
</a-form>
</div>
<customerListModal @register="registerCustomer" @success="handleSuccessCustomer" selectType="radio" />
@ -112,7 +104,7 @@
import { message } from 'ant-design-vue';
import UploadList from '/@/components/Form/src/components/UploadList.vue';
import customerListModal from '/@/components/common/customerListModal.vue';
import settleSalesPurList from '/@/components/common/settleSalesPurList.vue';
import settleLngHdrList from '/@/components/common/settleLngHdrList.vue';
import { getAllCom} from '/@/api/contract/ContractPurInt';
import { DataFormat, FormatOption, DATE_FORMAT, FormatType } from '/@/utils/dataFormat';

View File

@ -110,7 +110,7 @@
const taskIdRef = ref('');
const visibleFlowRecordModal = ref(false);
const [registerModal, { openModal }] = useModal();
const formName='LNG销售结算';
const formName=currentRoute.value.meta?.title;
const [registerTable, { reload, }] = useTable({
title: '' || (formName + '列表'),
api: getLngLngSettleHdrPage,