wujianwei
2025-09-29 045fbc240ced1e1bc005b734098e59779b67bb1c
Merge remote-tracking branch 'origin/yagwly_fa_master' into yagwly_fa_master
6个文件已修改
247 ■■■■ 已修改文件
ui/admin-ui3/src/views/cwgl/estimatedReceivable/index.vue 21 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ui/admin-ui3/src/views/cwgl/keyCollectionInfo/index.vue 64 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ui/admin-ui3/src/views/cwgl/pendingSettlementBusiness/index.vue 47 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ui/admin-ui3/src/views/cwgl/requestStatusLog/index.vue 24 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ui/admin-ui3/src/views/cwgl/returnLog/index.vue 21 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ui/admin-ui3/src/views/cwgl/smartLockerApplication/index.vue 70 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ui/admin-ui3/src/views/cwgl/estimatedReceivable/index.vue
@@ -245,11 +245,22 @@
    },
    orderDate: {
      label: '下单日期',
      search: true,
      minWidth: 180,
      type: 'datetime',  // 改为 datetime 类型
      format: 'YYYY-MM-DD HH:mm:ss',
      valueFormat: 'YYYY-MM-DD HH:mm:ss',
    },
    orderDateArray: {
      label: '下单日期',
      search: true,
      searchRange: true,
      type: 'daterange',
      startPlaceholder: '开始日期',
      endPlaceholder: '结束日期',
      valueFormat: 'YYYY-MM-DD',
      hide: true,
      addDisplay: false,
      editDisplay: false,
    },
    feeName: {
      label: '费用名称',
@@ -411,9 +422,13 @@
    },
    getBeginListFunc: (params = {}) => {
      params.feeType = 0;
      return params
      let newParams = { ...params };
      newParams.feeType = 0;
      newParams = proxy.addDateRangeNew(newParams, newParams?.orderDateArray, 'orderDate') || [];
      delete newParams.orderDateArray;
      return newParams
    }
  })
ui/admin-ui3/src/views/cwgl/keyCollectionInfo/index.vue
@@ -6,12 +6,12 @@
      @search-reset="searchReset" @selection-change="selectionChange" @current-change="currentChange"
      @size-change="sizeChange" @on-load="onLoad">
      <template #menu-left>
        <el-button type="success" icon="Edit" :disabled="pageF.single" v-hasPermi="['cwgl:keyCollectionInfo:edit']"
        <!-- <el-button type="success" icon="Edit" :disabled="pageF.single" v-hasPermi="['cwgl:keyCollectionInfo:edit']"
          @click="handleUpdate">修改
        </el-button>
        <el-button type="danger" icon="Delete" :disabled="pageF.multiple" @click="handleDelete"
          v-hasPermi="['cwgl:keyCollectionInfo:remove']">删除
        </el-button>
        </el-button> -->
        <el-button type="warning" plain icon="Download" @click="handleExport"
          v-hasPermi="['cwgl:keyCollectionInfo:export']">导出
        </el-button>
@@ -69,8 +69,9 @@
    // },
    customerName: {
      label: '客户名称',
      minWidth: 200,
        search: true,
      minWidth: 220,
      search: true,
      showOverflowTooltip: true,
    },
    carrier: {
      label: '承运商',
@@ -80,7 +81,7 @@
    dispatchNo: {
      label: '调度单号',
      minWidth: 200,
        search: true,
      search: true,
    },
    driverName: {
      label: '司机名称',
@@ -96,29 +97,62 @@
    orderTime: {
      label: '订单下单时间',
      minWidth: 180,
        search: true,
      type: 'datetime',  // 改为 datetime 类型
      format: 'YYYY-MM-DD HH:mm:ss',
      valueFormat: 'YYYY-MM-DD HH:mm:ss',
      minWidth: 200,
    },
    orderTimeArray: {
      label: '订单下单时间',
      search: true,
      searchRange: true,
      type: 'daterange',
      startPlaceholder: '开始日期',
      endPlaceholder: '结束日期',
      valueFormat: 'YYYY-MM-DD',
      hide: true,
      addDisplay: false,
      editDisplay: false,
    },
    orderCreatedTime: {
      label: '订单创建时间',
      minWidth: 180,
        search: true,
      type: 'datetime',  // 改为 datetime 类型
      format: 'YYYY-MM-DD HH:mm:ss',
      valueFormat: 'YYYY-MM-DD HH:mm:ss',
      minWidth: 200,
    },
    orderCreatedTimeArray: {
      label: '订单创建时间',
      search: true,
      searchRange: true,
      type: 'daterange',
      startPlaceholder: '开始日期',
      endPlaceholder: '结束日期',
      valueFormat: 'YYYY-MM-DD',
      hide: true,
      addDisplay: false,
      editDisplay: false,
    },
    dispatchCreatedTime: {
      label: '调度单创建时间',
      minWidth: 180,
        search: true,
      type: 'datetime',  // 改为 datetime 类型
      format: 'YYYY-MM-DD HH:mm:ss',
      valueFormat: 'YYYY-MM-DD HH:mm:ss',
      minWidth: 200,
    },
    dispatchCreatedTimeArray: {
      label: '调度单创建时间',
      search: true,
      searchRange: true,
      type: 'daterange',
      startPlaceholder: '开始日期',
      endPlaceholder: '结束日期',
      valueFormat: 'YYYY-MM-DD',
      hide: true,
      addDisplay: false,
      editDisplay: false,
    },
    keyCollectionTime: {
      label: '钥匙领取时间',
@@ -205,7 +239,21 @@
    },
    handleSelectionChangeFunc: (selection: any) => {
      selectionList.value = selection;
    },
    getBeginListFunc: (params = {}) => {
      let newParams = { ...params };
      newParams = proxy.addDateRangeNew(newParams, newParams?.orderTimeArray, 'orderTime') || [];
      newParams = proxy.addDateRangeNew(newParams, newParams?.orderCreatedTimeArray, 'orderCreatedTime') ||  [] ;
      newParams = proxy.addDateRangeNew(newParams, newParams?.dispatchCreatedTimeArray, 'dispatchCreatedTime') || [];
      delete newParams.orderTimeArray;
      delete newParams.orderCreatedTimeArray;
      delete newParams.dispatchCreatedTimeArray;
      return newParams;
    }
  })
ui/admin-ui3/src/views/cwgl/pendingSettlementBusiness/index.vue
@@ -204,14 +204,28 @@
    vehicleType: {
      label: '车型', search: true,
    },
    // createdTime: {
    //   label: '下单时间',
    //   display: false,
    //   search: true,
    //   type: 'date',
    //   format: 'YYYY-MM-DD',
    //   searchSpan: 5, minWidth: 120,
    //   valueFormat: 'YYYY-MM-DD',
    // },
    createdTimeArray: {
      label: '下单时间',
      search: true,
      searchRange: true,
      type: 'daterange',
      startPlaceholder: '开始日期',
      endPlaceholder: '结束日期',
      valueFormat: 'YYYY-MM-DD',
      hide: true
    },
    createdTime: {
      label: '下单时间',
      display: false,
      search: true,
      type: 'date',
      format: 'YYYY-MM-DD',
      searchSpan: 5, minWidth: 120,
      valueFormat: 'YYYY-MM-DD',
      minWidth: 180,
    },
    operationMode: {
      label: '运营模式',
@@ -256,7 +270,7 @@
    },
    arrivalLocation: {
      label: '目的地',
      minWidth:  220,
      minWidth: 220,
      showOverflowTooltip: true,
    },
@@ -311,7 +325,7 @@
      minWidth: 120,
    },
        isCreate: {
    isCreate: {
      label: '是否已入账', dataType: 'string',
      type: 'select',
      fixed: 'right',
@@ -330,7 +344,7 @@
      type: 'select',
      dataType: 'string',
      minWidth: 120,
      dicUrl: '/system/dict/data/type/sys_matching_status',
    },
    isCostMatched: {
@@ -468,7 +482,16 @@
        generateDisabled.value = false;
      }
      selectionList.value = selection;
    },
    getBeginListFunc: (params = {}) => {
      // 创建新参数对象
      let newParams = { ...params };
       newParams = proxy.addDateRangeNew(newParams, newParams?.createdTimeArray, 'createdTime') || [];
      delete newParams.createdTimeArray;
      return newParams;
    }
  })
const dialog = reactive({
  visible: false,
@@ -556,7 +579,7 @@
  dispatchNo.value = row.dispatchNo;
  dialog.title = '费用明细';
  if (activeName.value == 'first') {
    listEstimatedReceivable({ dispatchNo: row.dispatchNo, feeType: 1,isConfirmed:1 }).then((res) => {
    listEstimatedReceivable({ dispatchNo: row.dispatchNo, feeType: 1, isConfirmed: 1 }).then((res) => {
      if (res.code === 200) {
        dialog.detail = true;
        tableDataList.value = res.rows || [];
@@ -564,7 +587,7 @@
    })
  } else if (activeName.value == 'second') {
    // 这里可以添加查询收入相关的逻辑
    listEstimatedReceivable({ dispatchNo: row.dispatchNo, feeType: 0,isConfirmed:1 }).then((res) => {
    listEstimatedReceivable({ dispatchNo: row.dispatchNo, feeType: 0, isConfirmed: 1 }).then((res) => {
      if (res.code === 200) {
        dialog.detail = true;
        tableDataList.value = res.rows || [];
@@ -573,7 +596,7 @@
  }
}
const getListVable = (dispatchNo, feeType) => {
  listEstimatedReceivable({ dispatchNo: dispatchNo, feeType: feeType,isConfirmed:1 }).then((res) => {
  listEstimatedReceivable({ dispatchNo: dispatchNo, feeType: feeType, isConfirmed: 1 }).then((res) => {
    if (res.code === 200) {
      tableDataList.value = res.rows || [];
    }
ui/admin-ui3/src/views/cwgl/requestStatusLog/index.vue
@@ -96,6 +96,18 @@
      format: 'YYYY-MM-DD HH:mm:ss',
      valueFormat: 'YYYY-MM-DD HH:mm:ss',
    },
    reqTimeArray: {
      label: '请求开门时间',
      search: true,
      searchRange: true,
      type: 'daterange',
      startPlaceholder: '开始日期',
      endPlaceholder: '结束日期',
      valueFormat: 'YYYY-MM-DD',
      hide: true,
      addDisplay: false,
      editDisplay: false,
    },
    // reqTime: {
    //   label: '请求时间',
    //   minWidth: 150,
@@ -133,11 +145,13 @@
    handleSelectionChangeFunc: (selection: any) => {
      selectionList.value = selection;
    },
    getBeginListFunc: (params = {}) => {
      params.type = 0;
      return params
    }
      getBeginListFunc: (params = {}) => {
            let newParams = { ...params };
            newParams.type = 0;
            newParams = proxy.addDateRangeNew(newParams, newParams?.reqTimeArray, 'reqTime') || [];
            delete newParams.reqTimeArray;
            return newParams
        }
  })
ui/admin-ui3/src/views/cwgl/returnLog/index.vue
@@ -92,10 +92,21 @@
        reqTime: {
            label: '存入时间',
            minWidth: 150,
            search: true,
            type: 'datetime',  // 改为 datetime 类型
            format: 'YYYY-MM-DD HH:mm:ss',
            valueFormat: 'YYYY-MM-DD HH:mm:ss',
        },
        reqTimeArray: {
            label: '存入时间',
            search: true,
            searchRange: true,
            type: 'daterange',
            startPlaceholder: '开始日期',
            endPlaceholder: '结束日期',
            valueFormat: 'YYYY-MM-DD',
            hide: true,
            addDisplay: false,
            editDisplay: false,
        },
        // reqTime: {
        //   label: '请求时间',
@@ -135,9 +146,11 @@
            selectionList.value = selection;
        },
        getBeginListFunc: (params = {}) => {
            params.type = 1;
            return params
            let newParams = { ...params };
            newParams.type = 1;
            newParams = proxy.addDateRangeNew(newParams, newParams?.reqTimeArray, 'reqTime') || [];
            delete newParams.reqTimeArray;
            return newParams
        }
    })
ui/admin-ui3/src/views/cwgl/smartLockerApplication/index.vue
@@ -16,13 +16,25 @@
          v-hasPermi="['cwgl:smartLockerApplication:export']">导出
        </el-button> -->
      </template>
      <template #itemName-form="{ row, size, }">
        <div style="cursor: pointer;">
          <el-input v-if="itemTypeIShow" v-model="form.itemName" placeholder="请输入 物品名称">
          </el-input>
          <el-input v-if="!itemTypeIShow" v-model="form.itemName" @click="debouncedItemNameChange"
            placeholder="请输入 车牌号">
          </el-input>
        </div>
      </template>
      <template #menu="{ size, row, index }">
       <el-link class="link-btn" type="primary" :underline="false" plain :size="size"
          @click="handleEditBtn(row, index)" v-if="row.status == 0"
          v-hasPermi="['cwgl:smartLockerApplication:cancel']"> 编辑
        <el-link class="link-btn" type="primary" :underline="false" plain :size="size"
          @click="handleEditBtn(row, index)" v-if="row.status == 0" v-hasPermi="['cwgl:smartLockerApplication:cancel']">
          编辑
        </el-link>
        <el-link class="link-btn"  v-if="row.status == 0" type="primary" :underline="false" plain  @click="handleInvalid(row)"
          v-hasPermi="['cwgl:smartLockerApplication:invalid']"> 作废
        <el-link class="link-btn" v-if="row.status == 0" type="primary" :underline="false" plain
          @click="handleInvalid(row)" v-hasPermi="['cwgl:smartLockerApplication:invalid']"> 作废
        </el-link>
      </template>
    </avue-crud>
@@ -30,9 +42,10 @@
</template>
<script setup name="smartLockerApplication" lang="ts">
import { SmartLockerApplicationI, addSmartLockerApplication, delSmartLockerApplication, exportSmartLockerApplication, getSmartLockerApplication, listSmartLockerApplication, updateSmartLockerApplication, smartLockerApplicationQuery,
import {
  SmartLockerApplicationI, addSmartLockerApplication, delSmartLockerApplication, exportSmartLockerApplication, getSmartLockerApplication, listSmartLockerApplication, updateSmartLockerApplication, smartLockerApplicationQuery,
  smartLockerApplicationInvalid
 } from "@/api/cwgl/smartLockerApplication";
} from "@/api/cwgl/smartLockerApplication";
import useCurrentInstance from "@/utils/useCurrentInstance";
import { computed, reactive, ref, toRefs } from "vue";
import { PagesInterface, PageQueryInterface } from "@/utils/globalInterface";
@@ -60,8 +73,10 @@
    currentPage: 1,
  },
  selectionList: [],
  itemTypeIShow: true, // 控制 itemType 显示隐藏
  itemTypeIcon: '物品名称不能为空',
})
const { queryParams, form, page, selectionList } = toRefs(data);
const { queryParams, form, page, selectionList, itemTypeIShow, itemTypeIcon } = toRefs(data);
const option = ref({
  pageKey: 'SmartLockerApplication',
  rowKey: 'id',
@@ -122,6 +137,27 @@
      // editDisplay: false, // 修改时不显示
      dicUrl: '/system/dict/data/type/sys_item_type',
      change: (val: any) => {
        if (val.value === '0') {
          itemTypeIShow.value = false;
          itemTypeIcon.value = '车牌号不能为空'
        } else {
          itemTypeIShow.value = true;
          itemTypeIcon.value = '物品名称不能为空'
        }
        option.value.column.itemName.rules = [
          {
            required: true,
            message: itemTypeIcon.value,
            trigger: "blur"
          }
        ];
        // 清除之前的校验状态
        if (crudRef.value) {
          crudRef.value.clearValidate('itemName');
        }
        if (val.value === '1') {
          if (form.value.itemName !== '' && form.value.itemName !== undefined) {
@@ -137,7 +173,7 @@
      rules: [
        {
          required: true,
          message: "物品名称不能为空", trigger: "blur"
          message: itemTypeIcon.value, trigger: "blur"
        }
      ],
      change: (val: any) => {
@@ -182,7 +218,7 @@
      valueFormat: 'YYYY-MM-DD HH:mm:ss',
      addDisplay: true,  // 新增时不显示
      minWidth: 200,
        rules: [
      rules: [
        {
          required: true,
          message: "领取截止时间不能为空", trigger: "change"
@@ -276,9 +312,9 @@
    handleBeforeOpenFunc: (done: Function, type: string) => {
      if (done == 'add') {
        option.value.column.lockerNo.value = '接驳站智能钥匙柜'
        option.value.column.deadlineTime.value =formatDateTime(new Date(Date.now() + 24 * 60 * 60 * 1000));
        option.value.column.deadlineTime.value = formatDateTime(new Date(Date.now() + 24 * 60 * 60 * 1000));
      }
    },
    handleSelectionChangeFunc: (selection: any) => {
@@ -286,7 +322,7 @@
    }
  })
  const formatDateTime = (date) => {
const formatDateTime = (date) => {
  const year = date.getFullYear();
  const month = String(date.getMonth() + 1).padStart(2, '0');
  const day = String(date.getDate()).padStart(2, '0');
@@ -328,8 +364,8 @@
  if (form.value.itemType === '0' && val) {
    // 在这里添加你的请求接口逻辑
    smartLockerApplicationQuery({ licensePlateNumber: val }).then(response => {
      if(response.code == 200){
         form.value.lockerPort = response.data || '';
      if (response.code == 200) {
        form.value.lockerPort = response.data || '';
      }
      // 处理响应
    })
@@ -347,7 +383,7 @@
  })
}
const handleEditBtn = (row, index) => {
const handleEditBtn = (row:any, index:any) => {
  crudRef.value.rowEdit(row, index)
  // option.value.editBtn = true;
}