yyb
5 天以前 ee6bc0af77ef179dda201c96c4cbc05817643d77
src/pages/sales/salesAccount/index.vue
@@ -29,7 +29,7 @@
      <!-- 销售台账瀑布流 -->
      <view class="ledger-list" v-if="total > 0">
         <view v-for="(item, index) in ledgerList" :key="index">
            <view class="ledger-item" @click="handleItemClick(item)">
            <view class="ledger-item" @click="handleInfo('edit', item)">
               <view class="item-header">
                  <view class="item-left">
                     <view class="document-icon">
@@ -92,15 +92,18 @@
      </view>
      
      <!-- 浮动操作按钮 -->
      <view class="fab-button" @click="handleAdd">
      <view class="fab-button" @click="handleInfo('add')">
         <up-icon name="plus" size="24" color="#ffffff"></up-icon>
      </view>
   </view>
</template>
<script setup>
import { ref, reactive, onMounted } from 'vue';
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('');
@@ -126,34 +129,59 @@
         // tableLoading.value = false;
   });
};
// 显示筛选选项
const showFilterOptions = () => {
   uni.showActionSheet({
      itemList: ['按日期筛选', '按状态筛选', '按金额筛选'],
      success: (res) => {
         console.log('选择了筛选选项:', res.tapIndex);
      }
   });
// 处理台账信息操作(查看/编辑/新增)
const handleInfo = (type, 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'
    });
  }
};
// 点击列表项
const handleItemClick = (item) => {
   uni.showToast({
      title: `查看合同: ${item.contractId}`,
      icon: 'none'
   });
};
// 添加新记录
const handleAdd = () => {
  uni.navigateTo({
    url: '/pages/sales/salesAccount/detail'
  });
};
onMounted(() => {
   // 页面加载完成后的初始化逻辑
   getList()
onShow(() => {
    // 页面显示时刷新列表
    getList();
});
</script>