gaoluyang
5 天以前 424304d58e1acbe096fad794605906482c3a2ef7
src/pages/sales/salesAccount/index.vue
@@ -1,14 +1,14 @@
<template>
   <view class="sales-account">
      <!-- 页面头部 -->
      <view class="page-header">
         <view class="header-left">
            <up-icon name="arrow-left" size="20" color="#333" @click="goBack"></up-icon>
         </view>
         <view class="header-center">
            <text class="page-title">销售台账</text>
         </view>
      </view>
      <van-nav-bar
         title="销售台账"
         left-text="返回"
         left-arrow
         @click-left="goBack"
         fixed
         placeholder
      />
      
      <!-- 搜索和筛选区域 -->
      <view class="search-filter-section">
@@ -50,7 +50,7 @@
                  </view>
                  <view class="detail-row">
                     <text class="detail-label">客户合同号</text>
                     <text class="detail-value highlight">{{ item.customerContractNo }}</text>
                     <text class="detail-value">{{ item.customerContractNo }}</text>
                  </view>
                  <view class="detail-row">
                     <text class="detail-label">业务员</text>
@@ -102,6 +102,8 @@
import { ref } from 'vue';
import { onShow } from '@dcloudio/uni-app';
import {ledgerListPage} from "@/api/salesManagement/salesLedger";
import useUserStore from "@/store/modules/user";
const userStore = useUserStore()
// 搜索关键词
const searchKeyword = ref('');
@@ -127,33 +129,54 @@
         // tableLoading.value = false;
   });
};
// 显示筛选选项
const showFilterOptions = () => {
   uni.showActionSheet({
      itemList: ['按日期筛选', '按状态筛选', '按金额筛选'],
      success: (res) => {
         console.log('选择了筛选选项:', res.tapIndex);
      }
   });
};
// 点击列表项
const handleItemClick = (item) => {
   uni.showToast({
      title: `查看合同: ${item.contractId}`,
      icon: 'none'
   });
};
// 添加新记录
// 处理台账信息操作(查看/编辑/新增)
const handleInfo = (type, row) => {
  uni.setStorageSync('operationType', type);
  if (row) {
    uni.setStorageSync('editData', JSON.stringify(row));
  try {
    // 设置操作类型
    uni.setStorageSync('operationType', type);
    // 如果是查看或编辑操作
    if (type !== 'add') {
      // 验证行数据是否存在
      if (!row) {
        uni.showToast({
          title: '数据不存在',
          icon: 'error'
        });
        return;
      }
      // 检查权限:只有录入人才能编辑
      if (row.entryPerson != userStore.id) {
        // 非录入人跳转到只读详情页面
        uni.setStorageSync('editData', JSON.stringify(row));
        uni.navigateTo({
          url: '/pages/sales/salesAccount/view'
        });
        return;
      }
      // 录入人编辑:存储数据并跳转到编辑页面
      uni.setStorageSync('editData', JSON.stringify(row));
      uni.navigateTo({
        url: '/pages/sales/salesAccount/detail'
      });
      return;
    }
    // 新增操作:直接跳转到编辑页面
    uni.navigateTo({
      url: '/pages/sales/salesAccount/detail'
    });
  } catch (error) {
    console.error('处理台账信息操作失败:', error);
    uni.showToast({
      title: '操作失败,请重试',
      icon: 'error'
    });
  }
  uni.navigateTo({
    url: '/pages/sales/salesAccount/detail'
  });
};
onShow(() => {