ZN
6 天以前 7ff67bff3b4ac5e503ca4291f03eee1ac213fd33
src/pages/financialManagement/revenueManagement/index.vue
@@ -4,18 +4,12 @@
    <view class="search-section">
      <view class="search-bar">
        <view class="search-input">
          <uni-datetime-picker type="daterange" v-model="filters.entryDate" @change="onDateChange" />
          <up-input class="search-text" placeholder="请输入客户名称搜索" v-model="searchForm.customerName" clearable />
        </view>
        <view class="search-input">
          <up-input readonly placeholder="收款方式" v-model="incomeMethodLabel" @click="methodPickerShow = true" />
        </view>
        <view class="filter-button" @click="getList">
          <up-icon name="search" size="24" color="#999" />
        <view class="filter-button" @click="handleQuery">
          <up-icon name="search" size="24" color="#999"></up-icon>
        </view>
      </view>
    <view class="actions">
        <u-button type="primary" size="small" @click="goAdd">新增</u-button>
    </view>
    </view>
    <view class="ledger-list" v-if="list.length>0">
      <view class="ledger-item" v-for="item in list" :key="item.id">
@@ -31,14 +25,10 @@
        <up-divider></up-divider>
        <view class="item-details">
          <view class="detail-row"><text class="detail-label">收入日期</text><text class="detail-value">{{ item.incomeDate || '--' }}</text></view>
          <view class="detail-row"><text class="detail-label">收入类型</text><text class="detail-value">{{ incomeTypeText(item.incomeType) || '--' }}</text></view>
          <view class="detail-row"><text class="detail-label">收入类型</text><text class="detail-value">{{ incomeTypeText(item.incomeMethod) || '其他收入' }}</text></view>
          <view class="detail-row"><text class="detail-label">收入金额(元)</text><text class="detail-value highlight">{{ fmtAmount(item.incomeMoney) }}</text></view>
          <view class="detail-row"><text class="detail-label">发票号码</text><text class="detail-value">{{ item.invoiceNumber || '--' }}</text></view>
          <view class="detail-row"><text class="detail-label">备注</text><text class="detail-value">{{ item.note || '--' }}</text></view>
        </view>
        <view class="card-actions">
          <u-button size="small" @click="goEdit(item)" :disabled="!!item.businessId">编辑</u-button>
          <u-button size="small" type="error" @click="confirmDelete(item)" :disabled="!!item.businessId">删除</u-button>
        </view>
      </view>
    </view>
@@ -61,28 +51,24 @@
const incomeTypes = ref([]);
const methodPickerShow = ref(false);
const incomeMethodLabel = ref("");
const searchForm = reactive({ customerName: null,current:1,size:100 });
const syncDict = () => {
  paymentMethods.value = (payment_methods?.value || []).map(i => ({ label: i.label, value: i.value }));
  incomeTypes.value = (income_types?.value || []).filter(i=>i.value!=3).map(i => ({ label: i.label, value: i.value }));
  incomeTypes.value = (income_types?.value || []).map(i => ({ label: i.label, value: i.value }));
};
const getList = () => {
  listPage({ incomeMethod: filters.incomeMethod, entryDateStart: filters.entryDateStart, entryDateEnd: filters.entryDateEnd, current: 1, size: 100 })
  listPage({ ...searchForm })
    .then(res => {
      const records = res?.data?.records ?? res?.records ?? [];
      list.value = records;
    });
};
const onDateChange = (val) => {
  if (val && val.length === 2) {
    filters.entryDateStart = val[0];
    filters.entryDateEnd = val[1];
  } else {
    filters.entryDateStart = undefined;
    filters.entryDateEnd = undefined;
  }
const handleQuery = () => {
  searchForm.current = 1;
  getList();
};
const onSelectMethod = (e) => {