Преглед изворни кода

Merge remote-tracking branch 'origin/master'

yu.jie пре 4 година
родитељ
комит
a5d0c66666
44 измењених фајлова са 2195 додато и 76 уклоњено
  1. 27 1
      src/assets/styles/mixin.less
  2. 6 0
      src/common/constants/buttonType.ts
  3. 9 3
      src/common/setup/table/button.ts
  4. 11 1
      src/common/setup/table/interface.ts
  5. 0 8
      src/views/business/plan/list/uncommitted/index.vue
  6. 0 8
      src/views/information/custom/list/unsubmit/index.vue
  7. 0 9
      src/views/information/spot-contract/list/unsubmitted/index.vue
  8. 0 9
      src/views/information/warehouse-info/list/normal-use/index.vue
  9. 0 8
      src/views/platinum/platinum_customer_info/list/unsubmit/index.vue
  10. 52 0
      src/views/platinum/platinum_document_query/compoments/filter/index.vue
  11. 27 0
      src/views/platinum/platinum_document_query/compoments/setup.ts
  12. 67 2
      src/views/platinum/platinum_document_query/list/order/index.vue
  13. 51 0
      src/views/platinum/platinum_document_query/list/order/setup.ts
  14. 45 0
      src/views/platinum/platinum_document_query/list/position/compoments/filter/index.vue
  15. 67 2
      src/views/platinum/platinum_document_query/list/position/index.vue
  16. 51 0
      src/views/platinum/platinum_document_query/list/position/setup.ts
  17. 67 2
      src/views/platinum/platinum_document_query/list/success/index.vue
  18. 51 0
      src/views/platinum/platinum_document_query/list/success/setup.ts
  19. 67 2
      src/views/platinum/platinum_document_query/list/waiting/index.vue
  20. 51 0
      src/views/platinum/platinum_document_query/list/waiting/setup.ts
  21. 202 0
      src/views/platinum/platinum_financing_information/list/tab/compoments/detail/index.vue
  22. 72 0
      src/views/platinum/platinum_financing_information/list/tab/compoments/filter/index.vue
  23. 69 2
      src/views/platinum/platinum_financing_information/list/tab/index.vue
  24. 51 0
      src/views/platinum/platinum_financing_information/list/tab/setup.ts
  25. 61 0
      src/views/platinum/platinum_fixed_investment_price_query/compoments/filter/index.vue
  26. 67 2
      src/views/platinum/platinum_fixed_investment_price_query/list/tab/index.vue
  27. 51 0
      src/views/platinum/platinum_fixed_investment_price_query/list/tab/setup.ts
  28. 65 0
      src/views/platinum/platinum_fixed_investment_query/list/flow/compoments/filter/index.vue
  29. 67 2
      src/views/platinum/platinum_fixed_investment_query/list/flow/index.vue
  30. 51 0
      src/views/platinum/platinum_fixed_investment_query/list/flow/setup.ts
  31. 70 0
      src/views/platinum/platinum_fixed_investment_query/list/plan/compoments/filter/index.vue
  32. 67 2
      src/views/platinum/platinum_fixed_investment_query/list/plan/index.vue
  33. 51 0
      src/views/platinum/platinum_fixed_investment_query/list/plan/setup.ts
  34. 72 0
      src/views/platinum/platinum_pick_query/compoments/filter/index.vue
  35. 91 0
      src/views/platinum/platinum_pick_query/list/tab/compoments/common-detail/index.vue
  36. 44 0
      src/views/platinum/platinum_pick_query/list/tab/compoments/complete_stocking/index.vue
  37. 44 0
      src/views/platinum/platinum_pick_query/list/tab/compoments/confirm_pickup/index.vue
  38. 57 0
      src/views/platinum/platinum_pick_query/list/tab/compoments/controlModal/index.vue
  39. 44 0
      src/views/platinum/platinum_pick_query/list/tab/compoments/detail/index.vue
  40. 44 0
      src/views/platinum/platinum_pick_query/list/tab/compoments/query_receipt/index.vue
  41. 81 0
      src/views/platinum/platinum_pick_query/list/tab/compoments/upload_logistics/index.vue
  42. 74 3
      src/views/platinum/platinum_pick_query/list/tab/index.vue
  43. 51 0
      src/views/platinum/platinum_pick_query/list/tab/setup.ts
  44. 0 10
      src/views/platinum/platinum_recharge_withdrawal_review/list/recharge/index.vue

+ 27 - 1
src/assets/styles/mixin.less

@@ -256,6 +256,12 @@
         background-color: transparent;
         color:  @m-grey17;
     }
+    .operBtn.ant-btn {
+        margin-top: 0;
+        margin-bottom: 0;
+        height: 26px;
+        line-height: 26px;
+    }
 }
 // 展开行操作按钮显示问题
 .topOrderTable {
@@ -1497,4 +1503,24 @@ input:-internal-autofill-selected {
 
   .ant-layout-sider-has-trigger {
       padding-bottom: 40px;
-  }
+  }
+
+  // 弹窗中表格内容居中
+.tableContextCenter {
+    .dialogTable {
+        .ant-table-thead {
+            tr {
+                th {
+                    text-align: center;
+                }
+            }
+        }
+        .ant-table-tbody {
+            tr {
+                td {
+                    text-align: center;
+                }
+            }
+        }
+    }
+}

+ 6 - 0
src/common/constants/buttonType.ts

@@ -111,4 +111,10 @@ export interface ButtonType {
     platinum_recharge_review_refuse: string; // 千海金 充值审核 审核拒绝
     platinum_withdrawal_review_confirm_withdrawal: string; // 千海金 提现审核 确认提现
     platinum_withdrawal_review_refuse: string; // 千海金 提现审核 审核拒绝
+
+    platinum_pick_query_complete_stocking: string; // 千海金 提货查询 完成备货
+    platinum_pick_query_upload_logistics: string; // 千海金 提货查询 上传物流
+    platinum_pick_query_receipt: string; // 千海金 提货查询 确认收货
+    platinum_pick_query_confirm_pickup: string; // 千海金 提货查询 确认提货
+    platinum_financing_information_detail: string; // 千海金 融资明细
 }

+ 9 - 3
src/common/setup/table/button.ts

@@ -13,7 +13,8 @@ import { BtnClassName, BtnList, ButtonListKey } from './interface';
 function getClassName(val: string): BtnClassName {
     let result: BtnClassName = 'btnDeafault'
     const btnDanger = ['disable', 'cancle', 'cancel', 'delete', 'logout', 'locked', 'refuse']
-    const operBtn = ['add', 'modify', 'reset', 'credit', 'payment', 'confirm_withdrawal']
+    const operBtn = ['add', 'modify', 'reset', 'credit', 'payment', 'confirm_withdrawal', 'complete_stocking', 'upload_logistics',
+        'receipt', 'confirm_pickup']
     const map = new Map<BtnClassName, string[]>([
         ['btnDanger', btnDanger],
         ['operBtn', operBtn],
@@ -92,9 +93,14 @@ export function _handleBtnList(list: OperationTabMenu | undefined, hasDetail: bo
     }
     // 详情
     if (hasDetail) {
-        const len = result.value.length;
         const { openAction } = openModal('detail')
-        result.value[len - 1].push({ lable: '详情', callback: openAction, className: getClassName('') })
+        const item = { lable: '详情', callback: openAction, className: getClassName('') }
+        const len = result.value.length;
+        if (len) {
+            result.value[len - 1].push(item)
+        } else {
+            result.value = [[item]]
+        }
     }
 
 

+ 11 - 1
src/common/setup/table/interface.ts

@@ -82,5 +82,15 @@ export interface ButtonListKey {
 
     platinum_withdrawal_review_tab: string; // 千海金 提现审核
     platinum_recharge_review_tab: string; // 千海金 充值审核
-
+    platinum_pick_query_tab: string; // 千海金 提货查询
+
+    platinum_fixed_investment_price_query_tab: string; // 千海金 定投价查询
+    platinum_fixed_investment_flow_query: string; // 千海金 定投流水查询
+    platinum_fixed_investment_plan_query: string; // 千海金 定投计划查询
+    platinum_document_query_position: string; // 千海金 单据查询 持仓
+    platinum_document_query_order: string; // 千海金 单据查询 委托单
+    platinum_document_query_waiting: string; // 千海金 单据查询 待付单
+    platinum_document_query_success: string; // 千海金 单据查询 成交单
+    platinum_financing_information_tab: string; // 千海金 融资信息
+}
 }

+ 0 - 8
src/views/business/plan/list/uncommitted/index.vue

@@ -113,13 +113,5 @@ export default defineComponent({
 
 <style lang="less">
 .plan-uncommitted {
-  .topTable {
-    .operBtn.ant-btn {
-      margin-top: 0;
-      margin-bottom: 0;
-      height: 26px;
-      line-height: 26px;
-    }
-  }
 }
 </style>;

+ 0 - 8
src/views/information/custom/list/unsubmit/index.vue

@@ -94,13 +94,5 @@ export default defineComponent({
 
 <style lang="less">
 .custom_info_unsubmit {
-    .topTable {
-        .operBtn.ant-btn {
-            margin-top: 0;
-            margin-bottom: 0;
-            height: 26px;
-            line-height: 26px;
-        }
-    }
 }
 </style>

+ 0 - 9
src/views/information/spot-contract/list/unsubmitted/index.vue

@@ -167,15 +167,6 @@ export default defineComponent({
 
 <style lang="less">
 .spot-contract-not-commit {
-  .topTable {
-    .operBtn.ant-btn {
-      margin-top: 0;
-      margin-bottom: 0;
-      height: 26px;
-      line-height: 26px;
-      
-    }
-  }
 }
 </style
 >;

+ 0 - 9
src/views/information/warehouse-info/list/normal-use/index.vue

@@ -103,15 +103,6 @@ export default defineComponent({
 
 <style lang="less">
 .warehouse-info-normal {
-  .topTable {
-    .operBtn.ant-btn {
-      margin-top: 0;
-      margin-bottom: 0;
-      height: 26px;
-      line-height: 26px;
-      
-    }
-  }
 }
 </style
 >;

+ 0 - 8
src/views/platinum/platinum_customer_info/list/unsubmit/index.vue

@@ -94,13 +94,5 @@ export default defineComponent({
 
 <style lang="less">
 .custom_info_unsubmit {
-    .topTable {
-        .operBtn.ant-btn {
-            margin-top: 0;
-            margin-bottom: 0;
-            height: 26px;
-            line-height: 26px;
-        }
-    }
 }
 </style>

+ 52 - 0
src/views/platinum/platinum_document_query/compoments/filter/index.vue

@@ -0,0 +1,52 @@
+<template>
+  <!-- 过滤 -->
+  <div class="filterTable">
+    <a-range-picker v-model:value="date"
+                    class="commonPicker"
+                    style="width: 200px"
+                    :show-time="{hideDisabledOptions: true}"
+                    format="YYYY-MM-DD" />
+    <FilterOption :selectList="selectList"
+                  :inputList="inputList"
+                  :fixedBtnList="fixedBtnList" />
+    <slot></slot>
+  </div>
+</template>
+
+<script lang="ts">
+import FilterOption from '@/common/components/filter/index.vue';
+import { defineComponent, ref } from 'vue';
+import { handleFilter } from '@/common/setup/filter';
+import { Moment } from 'moment';
+import { handleFilterOption } from '../setup';
+export default defineComponent({
+    name: 'filter-platinum_pick_query',
+    components: { FilterOption },
+    setup(props, context) {
+        const date = ref<Moment[]>([]);
+        const { select, input } = handleFilterOption();
+        const { selectList, inputList, fixedBtnList } = handleFilter(select, input, context);
+        return {
+            date,
+            selectList,
+            inputList,
+            fixedBtnList,
+        };
+    },
+});
+</script>
+
+<style lang="less">
+.filterTable {
+    .commonPicker.ant-calendar-picker {
+        display: inline-flex;
+        padding-top: 9px;
+        padding-bottom: 6px;
+        margin-right: 10px;
+        .ant-input {
+            border: 0;
+            background: @m-grey9;
+        }
+    }
+}
+</style>;

+ 27 - 0
src/views/platinum/platinum_document_query/compoments/setup.ts

@@ -0,0 +1,27 @@
+import { InputList, SelectList } from "@/common/setup/filter/interface";
+
+export function handleFilterOption() {
+    const select: SelectList[] = [
+        {
+            value: undefined,
+            key: 'contracttype1',
+            placeholder: '账号类型',
+            list: [
+                { value: 1, lable: '个人' },
+                { value: -1, lable: '企业' },
+            ],
+        },
+        {
+            value: undefined,
+            key: 'contracttype2',
+            placeholder: '选择商品',
+            list: [
+                { value: 1, lable: '采购' },
+                { value: -1, lable: '销售' },
+            ],
+        },
+    ];
+    const input: InputList[] = [{ value: '', placeholder: '模糊搜索账号', key: 'account' }];
+
+    return { select, input }
+}

+ 67 - 2
src/views/platinum/platinum_document_query/list/order/index.vue

@@ -1,8 +1,73 @@
 <template>
   <!-- 单据查询 委托单-->
-  <div>单据查询 委托单-</div>
+  <div class="platinum_document_query_order">
+    <Filter />
+    <contextMenu :contextMenuList="firstBtn">
+      <a-table :columns="columns"
+               class="topTable hiddenFirstCol"
+               :pagination="false"
+               :expandedRowKeys="expandedRowKeys"
+               :customRow="Rowclick"
+               rowKey="key"
+               :data-source="tableList">
+        <!-- 额外的展开行 -->
+        <template #expandedRowRender="{  }">
+          <BtnList :btnList="firstBtn"
+                   @onClick="btnClick" />
+        </template>
+      </a-table>
+    </contextMenu>
+    <!-- <ControlModal :selectedRow="selectedRow" /> -->
+  </div>
 </template>
 
 <script lang="ts">
-export default {};
+import { defineComponent, initData, getTableColumns, getTableEvent, getBtnList, contextMenu, BtnList, _getBtnList } from '@/common/export/table';
+import { ErmcpWareHouseInfo } from '@/views/information/warehouse-info/list';
+import Filter from '../../compoments/filter/index.vue';
+import { queryTableList } from './setup';
+// import ControlModal from './compoments/controlModal/index.vue';
+
+export default defineComponent({
+    name: 'platinum_document_query_order',
+    components: { Filter, contextMenu, BtnList },
+    setup() {
+        // 表头数据
+        const { columns, registerColumn, updateColumn, filteredInfo } = getTableColumns();
+        // 表格事件
+        const { expandedRowKeys, selectedRow, Rowclick, btnClick } = getTableEvent<ErmcpWareHouseInfo>({});
+        // 表格操作按钮列表
+        const [firstBtn] = _getBtnList('platinum_document_query_order', false).value;
+        // 表格列表数据
+        const { loading, tableList, queryTable } = queryTableList('in');
+        initData(() => {
+            // 获取列表数据
+            queryTable();
+            // 注册表头信息 过滤
+            registerColumn('table_pcweb_warehouse', ['warehousetype', 'warehousename', 'address']);
+            // registerColumn('table_pcweb_qhj_withdrawal_review', ['warehousetype', 'warehousename', 'address']);
+        });
+
+        // 查询
+        function search(value: any) {
+            filteredInfo.value = value;
+            // 更新表信息
+            updateColumn();
+        }
+
+        return {
+            columns,
+            filteredInfo,
+            expandedRowKeys,
+            selectedRow,
+            Rowclick,
+            firstBtn,
+            loading,
+            tableList,
+            search,
+            queryTable,
+            btnClick,
+        };
+    },
+});
 </script>

+ 51 - 0
src/views/platinum/platinum_document_query/list/order/setup.ts

@@ -0,0 +1,51 @@
+import { QueryWareHouse } from '@/services/go/ermcp/warehouse-info/index';
+import { ErmcpWareHouseInfo } from '@/services/go/ermcp/warehouse-info/interface';
+import { message } from 'ant-design-vue';
+import { ref } from 'vue';
+
+
+
+/**
+ * 获取表格列表数据
+ * @param type 
+ * @returns 
+ */
+export function queryTableList(type: string) {
+    // 加载状态
+    const loading = ref<boolean>(false);
+    // 表格数据
+    const tableList = ref<ErmcpWareHouseInfo[]>([]);
+    function queryTable() {
+        QueryWareHouse('1')
+            .then((res) => {
+                tableList.value = res.map((e, i) => {
+                    return { ...e, key: String(i) };
+                });
+                loading.value = false;
+                console.log('查询列表', tableList);
+            })
+            .catch((err) => {
+                message.error(err);
+                loading.value = false;
+            });
+    }
+    return { loading, tableList, queryTable }
+}
+
+// export function queryTableList(type: 'in' | 'out') {
+//     // 加载状态
+//     const loading = ref<boolean>(false);
+//     // 表格数据
+//     const tableList = ref<QhjAccountOutInApply[]>([]);
+//     function queryTable() {
+//         queryResultLoadingAndInfo(queryAccountInOutApply, loading)
+//             .then(res => {
+//                 //申请类型 - 1:出金 2:入金 3: 单边账调整:入金; 4:单边账调整:出金 5:外部母账户调整:入金 6:外部母账户调整:出金 7:外部子账户:入金 8:外部子账户:出金
+//                 const arr = type === 'in' ? [1, 3, 5, 7] : [2, 4, 6, 8]
+//                 tableList.value = res.filter((e: QhjAccountOutInApply) => arr.includes(e.executetype)).map((e: QhjAccountOutInApply, i: number) => {
+//                     return { ...e, key: String(i) };
+//                 });
+//             })
+//     }
+//     return { loading, tableList, queryTable }
+// }

+ 45 - 0
src/views/platinum/platinum_document_query/list/position/compoments/filter/index.vue

@@ -0,0 +1,45 @@
+<template>
+  <!-- 过滤 -->
+  <div class="filterTable">
+    <FilterOption :selectList="selectList"
+                  :inputList="inputList"
+                  :fixedBtnList="fixedBtnList" />
+    <slot></slot>
+  </div>
+</template>
+
+<script lang="ts">
+import FilterOption from '@/common/components/filter/index.vue';
+import { defineComponent } from 'vue';
+import { handleFilter } from '@/common/setup/filter';
+import { handleFilterOption } from '@/views/platinum/platinum_document_query/compoments/setup';
+
+export default defineComponent({
+    name: 'filter-platinum_pick_query',
+    components: { FilterOption },
+    setup(props, context) {
+        const { select, input } = handleFilterOption();
+        const { selectList, inputList, fixedBtnList } = handleFilter(select, input, context);
+        return {
+            selectList,
+            inputList,
+            fixedBtnList,
+        };
+    },
+});
+</script>
+
+<style lang="less">
+.filterTable {
+    .commonPicker.ant-calendar-picker {
+        display: inline-flex;
+        padding-top: 9px;
+        padding-bottom: 6px;
+        margin-right: 10px;
+        .ant-input {
+            border: 0;
+            background: @m-grey9;
+        }
+    }
+}
+</style>;

+ 67 - 2
src/views/platinum/platinum_document_query/list/position/index.vue

@@ -1,8 +1,73 @@
 <template>
   <!-- 单据查询 持仓-->
-  <div>单据查询 持仓</div>
+  <div class="platinum_document_query_position">
+    <Filter />
+    <contextMenu :contextMenuList="firstBtn">
+      <a-table :columns="columns"
+               class="topTable hiddenFirstCol"
+               :pagination="false"
+               :expandedRowKeys="expandedRowKeys"
+               :customRow="Rowclick"
+               rowKey="key"
+               :data-source="tableList">
+        <!-- 额外的展开行 -->
+        <template #expandedRowRender="{  }">
+          <BtnList :btnList="firstBtn"
+                   @onClick="btnClick" />
+        </template>
+      </a-table>
+    </contextMenu>
+    <!-- <ControlModal :selectedRow="selectedRow" /> -->
+  </div>
 </template>
 
 <script lang="ts">
-export default {};
+import { defineComponent, initData, getTableColumns, getTableEvent, getBtnList, contextMenu, BtnList, _getBtnList } from '@/common/export/table';
+import { ErmcpWareHouseInfo } from '@/views/information/warehouse-info/list';
+import Filter from './compoments/filter/index.vue';
+import { queryTableList } from './setup';
+// import ControlModal from './compoments/controlModal/index.vue';
+
+export default defineComponent({
+    name: 'platinum_document_query_position',
+    components: { Filter, contextMenu, BtnList },
+    setup() {
+        // 表头数据
+        const { columns, registerColumn, updateColumn, filteredInfo } = getTableColumns();
+        // 表格事件
+        const { expandedRowKeys, selectedRow, Rowclick, btnClick } = getTableEvent<ErmcpWareHouseInfo>({});
+        // 表格操作按钮列表
+        const [firstBtn] = _getBtnList('platinum_document_query_position', false).value;
+        // 表格列表数据
+        const { loading, tableList, queryTable } = queryTableList('in');
+        initData(() => {
+            // 获取列表数据
+            queryTable();
+            // 注册表头信息 过滤
+            registerColumn('table_pcweb_warehouse', ['warehousetype', 'warehousename', 'address']);
+            // registerColumn('table_pcweb_qhj_withdrawal_review', ['warehousetype', 'warehousename', 'address']);
+        });
+
+        // 查询
+        function search(value: any) {
+            filteredInfo.value = value;
+            // 更新表信息
+            updateColumn();
+        }
+
+        return {
+            columns,
+            filteredInfo,
+            expandedRowKeys,
+            selectedRow,
+            Rowclick,
+            firstBtn,
+            loading,
+            tableList,
+            search,
+            queryTable,
+            btnClick,
+        };
+    },
+});
 </script>

+ 51 - 0
src/views/platinum/platinum_document_query/list/position/setup.ts

@@ -0,0 +1,51 @@
+import { QueryWareHouse } from '@/services/go/ermcp/warehouse-info/index';
+import { ErmcpWareHouseInfo } from '@/services/go/ermcp/warehouse-info/interface';
+import { message } from 'ant-design-vue';
+import { ref } from 'vue';
+
+
+
+/**
+ * 获取表格列表数据
+ * @param type 
+ * @returns 
+ */
+export function queryTableList(type: string) {
+    // 加载状态
+    const loading = ref<boolean>(false);
+    // 表格数据
+    const tableList = ref<ErmcpWareHouseInfo[]>([]);
+    function queryTable() {
+        QueryWareHouse('1')
+            .then((res) => {
+                tableList.value = res.map((e, i) => {
+                    return { ...e, key: String(i) };
+                });
+                loading.value = false;
+                console.log('查询列表', tableList);
+            })
+            .catch((err) => {
+                message.error(err);
+                loading.value = false;
+            });
+    }
+    return { loading, tableList, queryTable }
+}
+
+// export function queryTableList(type: 'in' | 'out') {
+//     // 加载状态
+//     const loading = ref<boolean>(false);
+//     // 表格数据
+//     const tableList = ref<QhjAccountOutInApply[]>([]);
+//     function queryTable() {
+//         queryResultLoadingAndInfo(queryAccountInOutApply, loading)
+//             .then(res => {
+//                 //申请类型 - 1:出金 2:入金 3: 单边账调整:入金; 4:单边账调整:出金 5:外部母账户调整:入金 6:外部母账户调整:出金 7:外部子账户:入金 8:外部子账户:出金
+//                 const arr = type === 'in' ? [1, 3, 5, 7] : [2, 4, 6, 8]
+//                 tableList.value = res.filter((e: QhjAccountOutInApply) => arr.includes(e.executetype)).map((e: QhjAccountOutInApply, i: number) => {
+//                     return { ...e, key: String(i) };
+//                 });
+//             })
+//     }
+//     return { loading, tableList, queryTable }
+// }

+ 67 - 2
src/views/platinum/platinum_document_query/list/success/index.vue

@@ -1,8 +1,73 @@
 <template>
   <!-- 单据查询 成交单-->
-  <div>单据查询 成交单-</div>
+  <div class="platinum_document_query_success">
+    <Filter />
+    <contextMenu :contextMenuList="firstBtn">
+      <a-table :columns="columns"
+               class="topTable hiddenFirstCol"
+               :pagination="false"
+               :expandedRowKeys="expandedRowKeys"
+               :customRow="Rowclick"
+               rowKey="key"
+               :data-source="tableList">
+        <!-- 额外的展开行 -->
+        <template #expandedRowRender="{  }">
+          <BtnList :btnList="firstBtn"
+                   @onClick="btnClick" />
+        </template>
+      </a-table>
+    </contextMenu>
+    <!-- <ControlModal :selectedRow="selectedRow" /> -->
+  </div>
 </template>
 
 <script lang="ts">
-export default {};
+import { defineComponent, initData, getTableColumns, getTableEvent, getBtnList, contextMenu, BtnList, _getBtnList } from '@/common/export/table';
+import { ErmcpWareHouseInfo } from '@/views/information/warehouse-info/list';
+import Filter from '../../compoments/filter/index.vue';
+import { queryTableList } from './setup';
+// import ControlModal from './compoments/controlModal/index.vue';
+
+export default defineComponent({
+    name: 'platinum_document_query_success',
+    components: { Filter, contextMenu, BtnList },
+    setup() {
+        // 表头数据
+        const { columns, registerColumn, updateColumn, filteredInfo } = getTableColumns();
+        // 表格事件
+        const { expandedRowKeys, selectedRow, Rowclick, btnClick } = getTableEvent<ErmcpWareHouseInfo>({});
+        // 表格操作按钮列表
+        const [firstBtn] = _getBtnList('platinum_document_query_success', false).value;
+        // 表格列表数据
+        const { loading, tableList, queryTable } = queryTableList('in');
+        initData(() => {
+            // 获取列表数据
+            queryTable();
+            // 注册表头信息 过滤
+            registerColumn('table_pcweb_warehouse', ['warehousetype', 'warehousename', 'address']);
+            // registerColumn('table_pcweb_qhj_withdrawal_review', ['warehousetype', 'warehousename', 'address']);
+        });
+
+        // 查询
+        function search(value: any) {
+            filteredInfo.value = value;
+            // 更新表信息
+            updateColumn();
+        }
+
+        return {
+            columns,
+            filteredInfo,
+            expandedRowKeys,
+            selectedRow,
+            Rowclick,
+            firstBtn,
+            loading,
+            tableList,
+            search,
+            queryTable,
+            btnClick,
+        };
+    },
+});
 </script>

+ 51 - 0
src/views/platinum/platinum_document_query/list/success/setup.ts

@@ -0,0 +1,51 @@
+import { QueryWareHouse } from '@/services/go/ermcp/warehouse-info/index';
+import { ErmcpWareHouseInfo } from '@/services/go/ermcp/warehouse-info/interface';
+import { message } from 'ant-design-vue';
+import { ref } from 'vue';
+
+
+
+/**
+ * 获取表格列表数据
+ * @param type 
+ * @returns 
+ */
+export function queryTableList(type: string) {
+    // 加载状态
+    const loading = ref<boolean>(false);
+    // 表格数据
+    const tableList = ref<ErmcpWareHouseInfo[]>([]);
+    function queryTable() {
+        QueryWareHouse('1')
+            .then((res) => {
+                tableList.value = res.map((e, i) => {
+                    return { ...e, key: String(i) };
+                });
+                loading.value = false;
+                console.log('查询列表', tableList);
+            })
+            .catch((err) => {
+                message.error(err);
+                loading.value = false;
+            });
+    }
+    return { loading, tableList, queryTable }
+}
+
+// export function queryTableList(type: 'in' | 'out') {
+//     // 加载状态
+//     const loading = ref<boolean>(false);
+//     // 表格数据
+//     const tableList = ref<QhjAccountOutInApply[]>([]);
+//     function queryTable() {
+//         queryResultLoadingAndInfo(queryAccountInOutApply, loading)
+//             .then(res => {
+//                 //申请类型 - 1:出金 2:入金 3: 单边账调整:入金; 4:单边账调整:出金 5:外部母账户调整:入金 6:外部母账户调整:出金 7:外部子账户:入金 8:外部子账户:出金
+//                 const arr = type === 'in' ? [1, 3, 5, 7] : [2, 4, 6, 8]
+//                 tableList.value = res.filter((e: QhjAccountOutInApply) => arr.includes(e.executetype)).map((e: QhjAccountOutInApply, i: number) => {
+//                     return { ...e, key: String(i) };
+//                 });
+//             })
+//     }
+//     return { loading, tableList, queryTable }
+// }

+ 67 - 2
src/views/platinum/platinum_document_query/list/waiting/index.vue

@@ -1,8 +1,73 @@
 <template>
   <!-- 单据查询 待付单-->
-  <div>单据查询 待付单-</div>
+  <div class="platinum_document_query_waiting">
+    <Filter />
+    <contextMenu :contextMenuList="firstBtn">
+      <a-table :columns="columns"
+               class="topTable hiddenFirstCol"
+               :pagination="false"
+               :expandedRowKeys="expandedRowKeys"
+               :customRow="Rowclick"
+               rowKey="key"
+               :data-source="tableList">
+        <!-- 额外的展开行 -->
+        <template #expandedRowRender="{  }">
+          <BtnList :btnList="firstBtn"
+                   @onClick="btnClick" />
+        </template>
+      </a-table>
+    </contextMenu>
+    <!-- <ControlModal :selectedRow="selectedRow" /> -->
+  </div>
 </template>
 
 <script lang="ts">
-export default {};
+import { defineComponent, initData, getTableColumns, getTableEvent, getBtnList, contextMenu, BtnList, _getBtnList } from '@/common/export/table';
+import { ErmcpWareHouseInfo } from '@/views/information/warehouse-info/list';
+import Filter from '../../compoments/filter/index.vue';
+import { queryTableList } from './setup';
+// import ControlModal from './compoments/controlModal/index.vue';
+
+export default defineComponent({
+    name: 'platinum_document_query_waiting',
+    components: { Filter, contextMenu, BtnList },
+    setup() {
+        // 表头数据
+        const { columns, registerColumn, updateColumn, filteredInfo } = getTableColumns();
+        // 表格事件
+        const { expandedRowKeys, selectedRow, Rowclick, btnClick } = getTableEvent<ErmcpWareHouseInfo>({});
+        // 表格操作按钮列表
+        const [firstBtn] = _getBtnList('platinum_document_query_waiting', false).value;
+        // 表格列表数据
+        const { loading, tableList, queryTable } = queryTableList('in');
+        initData(() => {
+            // 获取列表数据
+            queryTable();
+            // 注册表头信息 过滤
+            registerColumn('table_pcweb_warehouse', ['warehousetype', 'warehousename', 'address']);
+            // registerColumn('table_pcweb_qhj_withdrawal_review', ['warehousetype', 'warehousename', 'address']);
+        });
+
+        // 查询
+        function search(value: any) {
+            filteredInfo.value = value;
+            // 更新表信息
+            updateColumn();
+        }
+
+        return {
+            columns,
+            filteredInfo,
+            expandedRowKeys,
+            selectedRow,
+            Rowclick,
+            firstBtn,
+            loading,
+            tableList,
+            search,
+            queryTable,
+            btnClick,
+        };
+    },
+});
 </script>

+ 51 - 0
src/views/platinum/platinum_document_query/list/waiting/setup.ts

@@ -0,0 +1,51 @@
+import { QueryWareHouse } from '@/services/go/ermcp/warehouse-info/index';
+import { ErmcpWareHouseInfo } from '@/services/go/ermcp/warehouse-info/interface';
+import { message } from 'ant-design-vue';
+import { ref } from 'vue';
+
+
+
+/**
+ * 获取表格列表数据
+ * @param type 
+ * @returns 
+ */
+export function queryTableList(type: string) {
+    // 加载状态
+    const loading = ref<boolean>(false);
+    // 表格数据
+    const tableList = ref<ErmcpWareHouseInfo[]>([]);
+    function queryTable() {
+        QueryWareHouse('1')
+            .then((res) => {
+                tableList.value = res.map((e, i) => {
+                    return { ...e, key: String(i) };
+                });
+                loading.value = false;
+                console.log('查询列表', tableList);
+            })
+            .catch((err) => {
+                message.error(err);
+                loading.value = false;
+            });
+    }
+    return { loading, tableList, queryTable }
+}
+
+// export function queryTableList(type: 'in' | 'out') {
+//     // 加载状态
+//     const loading = ref<boolean>(false);
+//     // 表格数据
+//     const tableList = ref<QhjAccountOutInApply[]>([]);
+//     function queryTable() {
+//         queryResultLoadingAndInfo(queryAccountInOutApply, loading)
+//             .then(res => {
+//                 //申请类型 - 1:出金 2:入金 3: 单边账调整:入金; 4:单边账调整:出金 5:外部母账户调整:入金 6:外部母账户调整:出金 7:外部子账户:入金 8:外部子账户:出金
+//                 const arr = type === 'in' ? [1, 3, 5, 7] : [2, 4, 6, 8]
+//                 tableList.value = res.filter((e: QhjAccountOutInApply) => arr.includes(e.executetype)).map((e: QhjAccountOutInApply, i: number) => {
+//                     return { ...e, key: String(i) };
+//                 });
+//             })
+//     }
+//     return { loading, tableList, queryTable }
+// }

+ 202 - 0
src/views/platinum/platinum_financing_information/list/tab/compoments/detail/index.vue

@@ -0,0 +1,202 @@
+<template>
+  <a-modal class="add-custom custom-detail"
+           title="融资明细"
+           centered
+           v-model:visible="visible"
+           :maskClosable="false"
+           @cancel="cancel"
+           width="890px">
+    <template #footer>
+      <a-button key="submit"
+                type="primary"
+                :loading="loading.loading"
+                @click="cancel">关闭</a-button>
+    </template>
+    <!-- <Des :list="desList" /> -->
+    <a-form class="inlineForm">
+      <fieldset class="formFieldSet">
+        <legend>融资信息</legend>
+        <a-row :gutter="24">
+          <a-col :span="12">
+            <a-form-item label="账号类型">
+              <span class="white">企业</span>
+            </a-form-item>
+          </a-col>
+          <a-col :span="12">
+            <a-form-item label="企业名称">
+              <span class="white">深圳首饰加工厂</span>
+            </a-form-item>
+          </a-col>
+        </a-row>
+        <a-row :gutter="24">
+          <a-col :span="12">
+            <a-form-item label="账号">
+              <span class="white">2732175</span>
+            </a-form-item>
+          </a-col>
+          <a-col :span="12">
+            <a-form-item label="融资商品">
+              <span class="white">黄金</span>
+            </a-form-item>
+          </a-col>
+        </a-row>
+        <a-row :gutter="24">
+          <a-col :span="12">
+            <a-form-item label="数量">
+              <span class="white">50g</span>
+            </a-form-item>
+          </a-col>
+          <a-col :span="12">
+            <a-form-item label="成本价">
+              <span class="white">366.06</span>
+            </a-form-item>
+          </a-col>
+        </a-row>
+        <a-row :gutter="24">
+          <a-col :span="12">
+            <a-form-item label="订单总额">
+              <span class="white">17320.00</span>
+            </a-form-item>
+          </a-col>
+          <a-col :span="12">
+            <a-form-item label="首付款">
+              <span class="white">2400.00</span>
+            </a-form-item>
+          </a-col>
+        </a-row>
+        <a-row :gutter="24">
+          <a-col :span="12">
+            <a-form-item label="已付货款">
+              <span class="white">4500.00</span>
+            </a-form-item>
+          </a-col>
+          <a-col :span="12">
+            <a-form-item label="融资额">
+              <span class="white">12820.00</span>
+            </a-form-item>
+          </a-col>
+        </a-row>
+        <a-row :gutter="24">
+          <a-col :span="12">
+            <a-form-item label="利息">
+              <span class="white">25.34</span>
+            </a-form-item>
+          </a-col>
+          <a-col :span="12">
+            <a-form-item label="状态">
+              <span class="red">预警(需追加5000.00)</span>
+            </a-form-item>
+          </a-col>
+        </a-row>
+      </fieldset>
+      <fieldset class="formFieldSet">
+        <legend>还款信息</legend>
+        <div class="tableDatas tableContextCenter">
+            <a-table class="dialogTable"
+                    :columns="columns"
+                    :data-source="dataSource"
+                    :pagination="false">
+
+            </a-table>
+            </div>
+      </fieldset>
+    </a-form>
+  </a-modal>
+</template>
+
+<script lang="ts">
+import { defineComponent, PropType, ref, watchEffect } from 'vue';
+import { QueryCustomInfoType } from '@/services/go/ermcp/customInfo/interface';
+import { formatValue } from '@/common/methods';
+import { Des, handleDesList } from '@/common/components/commonDes';
+import { closeModal } from '@/common/setup/modal';
+
+export default defineComponent({
+    name: 'platinum_financing_information_detail',
+    components: { Des },
+    props: {
+        selectedRow: {
+            type: Object as PropType<QueryCustomInfoType>,
+            default: {},
+        },
+    },
+    setup(props) {
+        const { visible, cancel } = closeModal('platinum_financing_information_detail');
+        const loading = ref<boolean>(false);
+        const { desList, getDesList } = handleDesList();
+        const dataSource =  [
+            {
+                key: '1',
+                name: 'Mike',
+                age: 32,
+                address: '10 Downing Street',
+            },
+            {
+                key: '2',
+                name: 'John',
+                age: 42,
+                address: '10 Downing Street',
+            }
+            ];
+
+            const columns = [
+            {
+                title: '追加/还款时间',
+                dataIndex: 'name',
+                key: 'name',
+            },
+            {
+                title: '金额',
+                dataIndex: 'age',
+                key: 'age',
+            },
+            {
+                title: '剩余款',
+                dataIndex: 'address',
+                key: 'address',
+            }
+            ];
+        watchEffect(() => {
+            // if (props.selectedRow.customername) {
+            const data = props.selectedRow;
+            // 个人
+            const person = [
+                { label: '客户类型', value: '个人' },
+                { label: '姓名', value: data.customername },
+                { label: '身份证号码', value: formatValue(data.cardnum) },
+                { label: '手机号码', value: formatValue(data.mobile) },
+                { label: '邮箱', value: formatValue(data.email) },
+                { label: '联系电话', value: formatValue(data.telphone) },
+                { label: '通讯地址', value: formatValue(data.address) },
+                { label: '备注', value: formatValue(data.remark) },
+            ];
+            getDesList(person);
+            
+        });
+        return {
+            desList,
+            cancel,
+            visible,
+            loading,
+            dataSource,
+            columns,
+        };
+    },
+});
+</script>
+
+<style lang="less">
+.custom-detail {
+    .ant-form.inlineForm {
+        margin-top: 20px;
+    }
+    .upload {
+        .look {
+            margin-left: 0;
+        }
+    }
+    .red {
+        color: @m-red1;
+    }
+}
+</style>;

+ 72 - 0
src/views/platinum/platinum_financing_information/list/tab/compoments/filter/index.vue

@@ -0,0 +1,72 @@
+<template>
+  <!-- 过滤 -->
+  <div class="filterTable">
+    <a-range-picker v-model:value="date"
+                    class="commonPicker"
+                    style="width: 200px"
+                    :show-time="{hideDisabledOptions: true}"
+                    format="YYYY-MM-DD" />
+    <FilterOption :selectList="selectList"
+                  :inputList="inputList"
+                  :fixedBtnList="fixedBtnList" />
+    <slot></slot>
+  </div>
+</template>
+
+<script lang="ts">
+import FilterOption from '@/common/components/filter/index.vue';
+import { defineComponent, ref } from 'vue';
+import { handleFilter, InputList, SelectList } from '@/common/setup/filter';
+import { Moment } from 'moment';
+
+export default defineComponent({
+    name: 'filter-platinum_pick_query',
+    components: { FilterOption },
+    setup(props, context) {
+        const date = ref<Moment[]>([]);
+        const select: SelectList[] = [
+            {
+                value: undefined,
+                key: 'contracttype1',
+                placeholder: '账号类型',
+                list: [
+                    { value: 1, lable: '个人' },
+                    { value: -1, lable: '企业' },
+                ],
+            },
+            {
+                value: undefined,
+                key: 'contracttype2',
+                placeholder: '选择商品',
+                list: [
+                    { value: 1, lable: '采购' },
+                    { value: -1, lable: '销售' },
+                ],
+            },
+        ];
+        const input: InputList[] = [{ value: '', placeholder: '模糊搜索账号', key: 'account' }];
+        const { selectList, inputList, fixedBtnList } = handleFilter(select, input, context);
+        return {
+            date,
+            selectList,
+            inputList,
+            fixedBtnList,
+        };
+    },
+});
+</script>
+
+<style lang="less">
+.filterTable {
+    .commonPicker.ant-calendar-picker {
+        display: inline-flex;
+        padding-top: 9px;
+        padding-bottom: 6px;
+        margin-right: 10px;
+        .ant-input {
+            border: 0;
+            background: @m-grey9;
+        }
+    }
+}
+</style>;

+ 69 - 2
src/views/platinum/platinum_financing_information/list/tab/index.vue

@@ -1,8 +1,75 @@
 <template>
   <!-- 融资信息 -->
-  <div>融资信息</div>
+  <div class="platinum_financing_information_tab">
+    <Filter />
+    <contextMenu :contextMenuList="firstBtn">
+      <a-table :columns="columns"
+               class="topTable hiddenFirstCol"
+               :pagination="false"
+               :expandedRowKeys="expandedRowKeys"
+               :customRow="Rowclick"
+               rowKey="key"
+               :data-source="tableList">
+        <!-- 额外的展开行 -->
+        <template #expandedRowRender="{  }">
+          <BtnList :btnList="firstBtn"
+                   @onClick="btnClick" />
+        </template>
+      </a-table>
+    </contextMenu>
+    <Detail :selectedRow="selectedRow" />
+    <!-- <ControlModal :selectedRow="selectedRow" /> -->
+  </div>
 </template>
 
 <script lang="ts">
-export default {};
+import { defineComponent, initData, getTableColumns, getTableEvent, getBtnList, contextMenu, BtnList, _getBtnList } from '@/common/export/table';
+import { ErmcpWareHouseInfo } from '@/views/information/warehouse-info/list';
+import Filter from './compoments/filter/index.vue';
+import { queryTableList } from './setup';
+import Detail from './compoments/detail/index.vue';
+// import ControlModal from './compoments/controlModal/index.vue';
+
+export default defineComponent({
+    name: 'platinum_financing_information_tab',
+    components: { Filter, contextMenu, BtnList, Detail },
+    setup() {
+        // 表头数据
+        const { columns, registerColumn, updateColumn, filteredInfo } = getTableColumns();
+        // 表格事件
+        const { expandedRowKeys, selectedRow, Rowclick, btnClick } = getTableEvent<ErmcpWareHouseInfo>({});
+        // 表格操作按钮列表
+        const [firstBtn] = _getBtnList('platinum_financing_information_tab', false).value;
+        // 表格列表数据
+        const { loading, tableList, queryTable } = queryTableList('in');
+        initData(() => {
+            // 获取列表数据
+            queryTable();
+            // 注册表头信息 过滤
+            registerColumn('table_pcweb_warehouse', ['warehousetype', 'warehousename', 'address']);
+            // registerColumn('table_pcweb_qhj_withdrawal_review', ['warehousetype', 'warehousename', 'address']);
+        });
+
+        // 查询
+        function search(value: any) {
+            filteredInfo.value = value;
+            // 更新表信息
+            updateColumn();
+        }
+
+        return {
+            columns,
+            filteredInfo,
+            expandedRowKeys,
+            selectedRow,
+            Rowclick,
+            firstBtn,
+            loading,
+            tableList,
+            search,
+            queryTable,
+            btnClick,
+        };
+    },
+});
 </script>

+ 51 - 0
src/views/platinum/platinum_financing_information/list/tab/setup.ts

@@ -0,0 +1,51 @@
+import { QueryWareHouse } from '@/services/go/ermcp/warehouse-info/index';
+import { ErmcpWareHouseInfo } from '@/services/go/ermcp/warehouse-info/interface';
+import { message } from 'ant-design-vue';
+import { ref } from 'vue';
+
+
+
+/**
+ * 获取表格列表数据
+ * @param type 
+ * @returns 
+ */
+export function queryTableList(type: string) {
+    // 加载状态
+    const loading = ref<boolean>(false);
+    // 表格数据
+    const tableList = ref<ErmcpWareHouseInfo[]>([]);
+    function queryTable() {
+        QueryWareHouse('1')
+            .then((res) => {
+                tableList.value = res.map((e, i) => {
+                    return { ...e, key: String(i) };
+                });
+                loading.value = false;
+                console.log('查询列表', tableList);
+            })
+            .catch((err) => {
+                message.error(err);
+                loading.value = false;
+            });
+    }
+    return { loading, tableList, queryTable }
+}
+
+// export function queryTableList(type: 'in' | 'out') {
+//     // 加载状态
+//     const loading = ref<boolean>(false);
+//     // 表格数据
+//     const tableList = ref<QhjAccountOutInApply[]>([]);
+//     function queryTable() {
+//         queryResultLoadingAndInfo(queryAccountInOutApply, loading)
+//             .then(res => {
+//                 //申请类型 - 1:出金 2:入金 3: 单边账调整:入金; 4:单边账调整:出金 5:外部母账户调整:入金 6:外部母账户调整:出金 7:外部子账户:入金 8:外部子账户:出金
+//                 const arr = type === 'in' ? [1, 3, 5, 7] : [2, 4, 6, 8]
+//                 tableList.value = res.filter((e: QhjAccountOutInApply) => arr.includes(e.executetype)).map((e: QhjAccountOutInApply, i: number) => {
+//                     return { ...e, key: String(i) };
+//                 });
+//             })
+//     }
+//     return { loading, tableList, queryTable }
+// }

+ 61 - 0
src/views/platinum/platinum_fixed_investment_price_query/compoments/filter/index.vue

@@ -0,0 +1,61 @@
+<template>
+  <!-- 过滤 -->
+  <div class="filterTable">
+    <a-space>
+      <a-date-picker v-model:value="date" />
+    </a-space>
+    <FilterOption :selectList="selectList"
+                  :inputList="inputList"
+                  :fixedBtnList="fixedBtnList" />
+    <slot></slot>
+  </div>
+</template>
+
+<script lang="ts">
+import FilterOption from '@/common/components/filter/index.vue';
+import { defineComponent, ref } from 'vue';
+import { handleFilter, InputList, SelectList } from '@/common/setup/filter';
+import { Moment } from 'moment';
+
+export default defineComponent({
+    name: 'filter-platinum_pick_query',
+    components: { FilterOption },
+    setup(props, context) {
+        const date = ref<Moment[]>();
+        const select: SelectList[] = [
+            {
+                value: undefined,
+                key: 'contracttype1',
+                placeholder: '选择商品',
+                list: [
+                    { value: 1, lable: '采购' },
+                    { value: -1, lable: '销售' },
+                ],
+            },
+        ];
+        const input: InputList[] = [];
+        const { selectList, inputList, fixedBtnList } = handleFilter(select, input, context);
+        return {
+            date,
+            selectList,
+            inputList,
+            fixedBtnList,
+        };
+    },
+});
+</script>
+
+<style lang="less">
+.filterTable {
+    .commonPicker.ant-calendar-picker {
+        display: inline-flex;
+        padding-top: 9px;
+        padding-bottom: 6px;
+        margin-right: 10px;
+        .ant-input {
+            border: 0;
+            background: @m-grey9;
+        }
+    }
+}
+</style>;

+ 67 - 2
src/views/platinum/platinum_fixed_investment_price_query/list/tab/index.vue

@@ -1,8 +1,73 @@
 <template>
   <!-- 定投价查询 -->
-  <div>platinum_fixed_investment_price_query_tab</div>
+  <div class="platinum_fixed_investment_price_query_tab">
+    <Filter />
+    <contextMenu :contextMenuList="firstBtn">
+      <a-table :columns="columns"
+               class="topTable hiddenFirstCol"
+               :pagination="false"
+               :expandedRowKeys="expandedRowKeys"
+               :customRow="Rowclick"
+               rowKey="key"
+               :data-source="tableList">
+        <!-- 额外的展开行 -->
+        <template #expandedRowRender="{  }">
+          <BtnList :btnList="firstBtn"
+                   @onClick="btnClick" />
+        </template>
+      </a-table>
+    </contextMenu>
+    <!-- <ControlModal :selectedRow="selectedRow" /> -->
+  </div>
 </template>
 
 <script lang="ts">
-export default {};
+import { defineComponent, initData, getTableColumns, getTableEvent, getBtnList, contextMenu, BtnList, _getBtnList } from '@/common/export/table';
+import { ErmcpWareHouseInfo } from '@/views/information/warehouse-info/list';
+import Filter from '../../compoments/filter/index.vue';
+import { queryTableList } from './setup';
+// import ControlModal from './compoments/controlModal/index.vue';
+
+export default defineComponent({
+    name: 'platinum_fixed_investment_price_query_tab',
+    components: { Filter, contextMenu, BtnList },
+    setup() {
+        // 表头数据
+        const { columns, registerColumn, updateColumn, filteredInfo } = getTableColumns();
+        // 表格事件
+        const { expandedRowKeys, selectedRow, Rowclick, btnClick } = getTableEvent<ErmcpWareHouseInfo>({});
+        // 表格操作按钮列表
+        const [firstBtn] = _getBtnList('platinum_fixed_investment_price_query_tab', false).value;
+        // 表格列表数据
+        const { loading, tableList, queryTable } = queryTableList('in');
+        initData(() => {
+            // 获取列表数据
+            queryTable();
+            // 注册表头信息 过滤
+            registerColumn('table_pcweb_warehouse', ['warehousetype', 'warehousename', 'address']);
+            // registerColumn('table_pcweb_qhj_withdrawal_review', ['warehousetype', 'warehousename', 'address']);
+        });
+
+        // 查询
+        function search(value: any) {
+            filteredInfo.value = value;
+            // 更新表信息
+            updateColumn();
+        }
+
+        return {
+            columns,
+            filteredInfo,
+            expandedRowKeys,
+            selectedRow,
+            Rowclick,
+            firstBtn,
+            loading,
+            tableList,
+            search,
+            queryTable,
+            btnClick,
+        };
+    },
+});
 </script>

+ 51 - 0
src/views/platinum/platinum_fixed_investment_price_query/list/tab/setup.ts

@@ -0,0 +1,51 @@
+import { QueryWareHouse } from '@/services/go/ermcp/warehouse-info/index';
+import { ErmcpWareHouseInfo } from '@/services/go/ermcp/warehouse-info/interface';
+import { message } from 'ant-design-vue';
+import { ref } from 'vue';
+
+
+
+/**
+ * 获取表格列表数据
+ * @param type 
+ * @returns 
+ */
+export function queryTableList(type: string) {
+    // 加载状态
+    const loading = ref<boolean>(false);
+    // 表格数据
+    const tableList = ref<ErmcpWareHouseInfo[]>([]);
+    function queryTable() {
+        QueryWareHouse('1')
+            .then((res) => {
+                tableList.value = res.map((e, i) => {
+                    return { ...e, key: String(i) };
+                });
+                loading.value = false;
+                console.log('查询列表', tableList);
+            })
+            .catch((err) => {
+                message.error(err);
+                loading.value = false;
+            });
+    }
+    return { loading, tableList, queryTable }
+}
+
+// export function queryTableList(type: 'in' | 'out') {
+//     // 加载状态
+//     const loading = ref<boolean>(false);
+//     // 表格数据
+//     const tableList = ref<QhjAccountOutInApply[]>([]);
+//     function queryTable() {
+//         queryResultLoadingAndInfo(queryAccountInOutApply, loading)
+//             .then(res => {
+//                 //申请类型 - 1:出金 2:入金 3: 单边账调整:入金; 4:单边账调整:出金 5:外部母账户调整:入金 6:外部母账户调整:出金 7:外部子账户:入金 8:外部子账户:出金
+//                 const arr = type === 'in' ? [1, 3, 5, 7] : [2, 4, 6, 8]
+//                 tableList.value = res.filter((e: QhjAccountOutInApply) => arr.includes(e.executetype)).map((e: QhjAccountOutInApply, i: number) => {
+//                     return { ...e, key: String(i) };
+//                 });
+//             })
+//     }
+//     return { loading, tableList, queryTable }
+// }

+ 65 - 0
src/views/platinum/platinum_fixed_investment_query/list/flow/compoments/filter/index.vue

@@ -0,0 +1,65 @@
+<template>
+  <!-- 过滤 -->
+  <div class="filterTable">
+    <a-space>
+      <a-range-picker v-model:value="date"
+                      class="commonPicker"
+                      style="width: 200px"
+                      :show-time="{hideDisabledOptions: true}"
+                      format="YYYY-MM-DD" />
+    </a-space>
+    <FilterOption :selectList="selectList"
+                  :inputList="inputList"
+                  :fixedBtnList="fixedBtnList" />
+    <slot></slot>
+  </div>
+</template>
+
+<script lang="ts">
+import FilterOption from '@/common/components/filter/index.vue';
+import { defineComponent, ref } from 'vue';
+import { handleFilter, InputList, SelectList } from '@/common/setup/filter';
+import { Moment } from 'moment';
+
+export default defineComponent({
+    name: 'filter-flow',
+    components: { FilterOption },
+    setup(props, context) {
+        const date = ref<Moment[]>([]);
+        const select: SelectList[] = [
+            {
+                value: undefined,
+                key: 'contracttype1',
+                placeholder: '选择商品',
+                list: [
+                    { value: 1, lable: '采购' },
+                    { value: -1, lable: '销售' },
+                ],
+            },
+        ];
+        const input: InputList[] = [{ value: '', placeholder: '模糊搜索账号', key: 'account' }];
+        const { selectList, inputList, fixedBtnList } = handleFilter(select, input, context);
+        return {
+            date,
+            selectList,
+            inputList,
+            fixedBtnList,
+        };
+    },
+});
+</script>
+
+<style lang="less">
+.filterTable {
+    .commonPicker.ant-calendar-picker {
+        display: inline-flex;
+        padding-top: 9px;
+        padding-bottom: 6px;
+        margin-right: 10px;
+        .ant-input {
+            border: 0;
+            background: @m-grey9;
+        }
+    }
+}
+</style>;

+ 67 - 2
src/views/platinum/platinum_fixed_investment_query/list/flow/index.vue

@@ -1,8 +1,73 @@
 <template>
   <!-- 定投流水查询 -->
-  <div>platinum_fixed_investment_flow_query</div>
+  <div class="platinum_fixed_investment_flow_query">
+    <Filter />
+    <contextMenu :contextMenuList="firstBtn">
+      <a-table :columns="columns"
+               class="topTable hiddenFirstCol"
+               :pagination="false"
+               :expandedRowKeys="expandedRowKeys"
+               :customRow="Rowclick"
+               rowKey="key"
+               :data-source="tableList">
+        <!-- 额外的展开行 -->
+        <template #expandedRowRender="{  }">
+          <BtnList :btnList="firstBtn"
+                   @onClick="btnClick" />
+        </template>
+      </a-table>
+    </contextMenu>
+    <!-- <ControlModal :selectedRow="selectedRow" /> -->
+  </div>
 </template>
 
 <script lang="ts">
-export default {};
+import { defineComponent, initData, getTableColumns, getTableEvent, getBtnList, contextMenu, BtnList, _getBtnList } from '@/common/export/table';
+import { ErmcpWareHouseInfo } from '@/views/information/warehouse-info/list';
+import Filter from './compoments/filter/index.vue';
+import { queryTableList } from './setup';
+// import ControlModal from './compoments/controlModal/index.vue';
+
+export default defineComponent({
+    name: 'platinum_fixed_investment_flow_query',
+    components: { Filter, contextMenu, BtnList },
+    setup() {
+        // 表头数据
+        const { columns, registerColumn, updateColumn, filteredInfo } = getTableColumns();
+        // 表格事件
+        const { expandedRowKeys, selectedRow, Rowclick, btnClick } = getTableEvent<ErmcpWareHouseInfo>({});
+        // 表格操作按钮列表
+        const [firstBtn] = _getBtnList('platinum_fixed_investment_flow_query', false).value;
+        // 表格列表数据
+        const { loading, tableList, queryTable } = queryTableList('in');
+        initData(() => {
+            // 获取列表数据
+            queryTable();
+            // 注册表头信息 过滤
+            registerColumn('table_pcweb_warehouse', ['warehousetype', 'warehousename', 'address']);
+            // registerColumn('table_pcweb_qhj_withdrawal_review', ['warehousetype', 'warehousename', 'address']);
+        });
+
+        // 查询
+        function search(value: any) {
+            filteredInfo.value = value;
+            // 更新表信息
+            updateColumn();
+        }
+
+        return {
+            columns,
+            filteredInfo,
+            expandedRowKeys,
+            selectedRow,
+            Rowclick,
+            firstBtn,
+            loading,
+            tableList,
+            search,
+            queryTable,
+            btnClick,
+        };
+    },
+});
 </script>

+ 51 - 0
src/views/platinum/platinum_fixed_investment_query/list/flow/setup.ts

@@ -0,0 +1,51 @@
+import { QueryWareHouse } from '@/services/go/ermcp/warehouse-info/index';
+import { ErmcpWareHouseInfo } from '@/services/go/ermcp/warehouse-info/interface';
+import { message } from 'ant-design-vue';
+import { ref } from 'vue';
+
+
+
+/**
+ * 获取表格列表数据
+ * @param type 
+ * @returns 
+ */
+export function queryTableList(type: string) {
+    // 加载状态
+    const loading = ref<boolean>(false);
+    // 表格数据
+    const tableList = ref<ErmcpWareHouseInfo[]>([]);
+    function queryTable() {
+        QueryWareHouse('1')
+            .then((res) => {
+                tableList.value = res.map((e, i) => {
+                    return { ...e, key: String(i) };
+                });
+                loading.value = false;
+                console.log('查询列表', tableList);
+            })
+            .catch((err) => {
+                message.error(err);
+                loading.value = false;
+            });
+    }
+    return { loading, tableList, queryTable }
+}
+
+// export function queryTableList(type: 'in' | 'out') {
+//     // 加载状态
+//     const loading = ref<boolean>(false);
+//     // 表格数据
+//     const tableList = ref<QhjAccountOutInApply[]>([]);
+//     function queryTable() {
+//         queryResultLoadingAndInfo(queryAccountInOutApply, loading)
+//             .then(res => {
+//                 //申请类型 - 1:出金 2:入金 3: 单边账调整:入金; 4:单边账调整:出金 5:外部母账户调整:入金 6:外部母账户调整:出金 7:外部子账户:入金 8:外部子账户:出金
+//                 const arr = type === 'in' ? [1, 3, 5, 7] : [2, 4, 6, 8]
+//                 tableList.value = res.filter((e: QhjAccountOutInApply) => arr.includes(e.executetype)).map((e: QhjAccountOutInApply, i: number) => {
+//                     return { ...e, key: String(i) };
+//                 });
+//             })
+//     }
+//     return { loading, tableList, queryTable }
+// }

+ 70 - 0
src/views/platinum/platinum_fixed_investment_query/list/plan/compoments/filter/index.vue

@@ -0,0 +1,70 @@
+<template>
+  <!-- 过滤 -->
+  <div class="filterTable">
+    <a-space>
+      <a-date-picker v-model:value="date" />
+    </a-space>
+    <FilterOption :selectList="selectList"
+                  :inputList="inputList"
+                  :fixedBtnList="fixedBtnList" />
+    <slot></slot>
+  </div>
+</template>
+
+<script lang="ts">
+import FilterOption from '@/common/components/filter/index.vue';
+import { defineComponent, ref } from 'vue';
+import { handleFilter, InputList, SelectList } from '@/common/setup/filter';
+import { Moment } from 'moment';
+
+export default defineComponent({
+    name: 'filter-plan',
+    components: { FilterOption },
+    setup(props, context) {
+        const date = ref<Moment[]>();
+        const select: SelectList[] = [
+            {
+                value: undefined,
+                key: 'contracttype1',
+                placeholder: '选择商品',
+                list: [
+                    { value: 1, lable: '采购' },
+                    { value: -1, lable: '销售' },
+                ],
+            },
+            {
+                value: undefined,
+                key: 'contracttype2',
+                placeholder: '选择计划状态',
+                list: [
+                    { value: 1, lable: '采购' },
+                    { value: -1, lable: '销售' },
+                ],
+            },
+        ];
+        const input: InputList[] = [{ value: '', placeholder: '模糊搜索账号', key: 'account' }];
+        const { selectList, inputList, fixedBtnList } = handleFilter(select, input, context);
+        return {
+            date,
+            selectList,
+            inputList,
+            fixedBtnList,
+        };
+    },
+});
+</script>
+
+<style lang="less">
+.filterTable {
+    .commonPicker.ant-calendar-picker {
+        display: inline-flex;
+        padding-top: 9px;
+        padding-bottom: 6px;
+        margin-right: 10px;
+        .ant-input {
+            border: 0;
+            background: @m-grey9;
+        }
+    }
+}
+</style>;

+ 67 - 2
src/views/platinum/platinum_fixed_investment_query/list/plan/index.vue

@@ -1,8 +1,73 @@
 <template>
   <!-- 定投计划查询 -->
-  <div>platinum_fixed_investment_plan_query</div>
+  <div class="platinum_fixed_investment_plan_query">
+    <Filter />
+    <contextMenu :contextMenuList="firstBtn">
+      <a-table :columns="columns"
+               class="topTable hiddenFirstCol"
+               :pagination="false"
+               :expandedRowKeys="expandedRowKeys"
+               :customRow="Rowclick"
+               rowKey="key"
+               :data-source="tableList">
+        <!-- 额外的展开行 -->
+        <template #expandedRowRender="{  }">
+          <BtnList :btnList="firstBtn"
+                   @onClick="btnClick" />
+        </template>
+      </a-table>
+    </contextMenu>
+    <!-- <ControlModal :selectedRow="selectedRow" /> -->
+  </div>
 </template>
 
 <script lang="ts">
-export default {};
+import { defineComponent, initData, getTableColumns, getTableEvent, getBtnList, contextMenu, BtnList, _getBtnList } from '@/common/export/table';
+import { ErmcpWareHouseInfo } from '@/views/information/warehouse-info/list';
+import Filter from './compoments/filter/index.vue';
+import { queryTableList } from './setup';
+// import ControlModal from './compoments/controlModal/index.vue';
+
+export default defineComponent({
+    name: 'platinum_fixed_investment_plan_query',
+    components: { Filter, contextMenu, BtnList },
+    setup() {
+        // 表头数据
+        const { columns, registerColumn, updateColumn, filteredInfo } = getTableColumns();
+        // 表格事件
+        const { expandedRowKeys, selectedRow, Rowclick, btnClick } = getTableEvent<ErmcpWareHouseInfo>({});
+        // 表格操作按钮列表
+        const [firstBtn] = _getBtnList('platinum_fixed_investment_plan_query', false).value;
+        // 表格列表数据
+        const { loading, tableList, queryTable } = queryTableList('in');
+        initData(() => {
+            // 获取列表数据
+            queryTable();
+            // 注册表头信息 过滤
+            registerColumn('table_pcweb_warehouse', ['warehousetype', 'warehousename', 'address']);
+            // registerColumn('table_pcweb_qhj_withdrawal_review', ['warehousetype', 'warehousename', 'address']);
+        });
+
+        // 查询
+        function search(value: any) {
+            filteredInfo.value = value;
+            // 更新表信息
+            updateColumn();
+        }
+
+        return {
+            columns,
+            filteredInfo,
+            expandedRowKeys,
+            selectedRow,
+            Rowclick,
+            firstBtn,
+            loading,
+            tableList,
+            search,
+            queryTable,
+            btnClick,
+        };
+    },
+});
 </script>

+ 51 - 0
src/views/platinum/platinum_fixed_investment_query/list/plan/setup.ts

@@ -0,0 +1,51 @@
+import { QueryWareHouse } from '@/services/go/ermcp/warehouse-info/index';
+import { ErmcpWareHouseInfo } from '@/services/go/ermcp/warehouse-info/interface';
+import { message } from 'ant-design-vue';
+import { ref } from 'vue';
+
+
+
+/**
+ * 获取表格列表数据
+ * @param type 
+ * @returns 
+ */
+export function queryTableList(type: string) {
+    // 加载状态
+    const loading = ref<boolean>(false);
+    // 表格数据
+    const tableList = ref<ErmcpWareHouseInfo[]>([]);
+    function queryTable() {
+        QueryWareHouse('1')
+            .then((res) => {
+                tableList.value = res.map((e, i) => {
+                    return { ...e, key: String(i) };
+                });
+                loading.value = false;
+                console.log('查询列表', tableList);
+            })
+            .catch((err) => {
+                message.error(err);
+                loading.value = false;
+            });
+    }
+    return { loading, tableList, queryTable }
+}
+
+// export function queryTableList(type: 'in' | 'out') {
+//     // 加载状态
+//     const loading = ref<boolean>(false);
+//     // 表格数据
+//     const tableList = ref<QhjAccountOutInApply[]>([]);
+//     function queryTable() {
+//         queryResultLoadingAndInfo(queryAccountInOutApply, loading)
+//             .then(res => {
+//                 //申请类型 - 1:出金 2:入金 3: 单边账调整:入金; 4:单边账调整:出金 5:外部母账户调整:入金 6:外部母账户调整:出金 7:外部子账户:入金 8:外部子账户:出金
+//                 const arr = type === 'in' ? [1, 3, 5, 7] : [2, 4, 6, 8]
+//                 tableList.value = res.filter((e: QhjAccountOutInApply) => arr.includes(e.executetype)).map((e: QhjAccountOutInApply, i: number) => {
+//                     return { ...e, key: String(i) };
+//                 });
+//             })
+//     }
+//     return { loading, tableList, queryTable }
+// }

+ 72 - 0
src/views/platinum/platinum_pick_query/compoments/filter/index.vue

@@ -0,0 +1,72 @@
+<template>
+  <!-- 过滤 -->
+  <div class="filterTable">
+    <a-range-picker v-model:value="date"
+                    class="commonPicker"
+                    style="width: 200px"
+                    :show-time="{hideDisabledOptions: true}"
+                    format="YYYY-MM-DD" />
+    <FilterOption :selectList="selectList"
+                  :inputList="inputList"
+                  :fixedBtnList="fixedBtnList" />
+    <slot></slot>
+  </div>
+</template>
+
+<script lang="ts">
+import FilterOption from '@/common/components/filter/index.vue';
+import { defineComponent, ref } from 'vue';
+import { handleFilter, InputList, SelectList } from '@/common/setup/filter';
+import { Moment } from 'moment';
+
+export default defineComponent({
+    name: 'filter-platinum_pick_query',
+    components: { FilterOption },
+    setup(props, context) {
+        const date = ref<Moment[]>([]);
+        const select: SelectList[] = [
+            {
+                value: undefined,
+                key: 'contracttype1',
+                placeholder: '选择提货商品',
+                list: [
+                    { value: 1, lable: '采购' },
+                    { value: -1, lable: '销售' },
+                ],
+            },
+            {
+                value: undefined,
+                key: 'contracttype2',
+                placeholder: '选择提货状态',
+                list: [
+                    { value: 1, lable: '采购' },
+                    { value: -1, lable: '销售' },
+                ],
+            },
+        ];
+        const input: InputList[] = [{ value: '', placeholder: '模糊搜索商品名称', key: 'account' }];
+        const { selectList, inputList, fixedBtnList } = handleFilter(select, input, context);
+        return {
+            date,
+            selectList,
+            inputList,
+            fixedBtnList,
+        };
+    },
+});
+</script>
+
+<style lang="less">
+.filterTable {
+    .commonPicker.ant-calendar-picker {
+        display: inline-flex;
+        padding-top: 9px;
+        padding-bottom: 6px;
+        margin-right: 10px;
+        .ant-input {
+            border: 0;
+            background: @m-grey9;
+        }
+    }
+}
+</style>;

+ 91 - 0
src/views/platinum/platinum_pick_query/list/tab/compoments/common-detail/index.vue

@@ -0,0 +1,91 @@
+<template>
+  <div>
+    <Des :list="desList" />
+  </div>
+
+</template>
+
+<script lang="ts">
+import { defineComponent, PropType, watchEffect } from 'vue';
+import { QueryCustomInfoType } from '@/services/go/ermcp/customInfo/interface';
+import { getStatusName } from '@/common/constants/enumsName';
+import { formatValue } from '@/common/methods';
+import { getCardTypeEnumItemName } from '@/common/constants/enumsName';
+import { Des, handleDesList } from '@/common/components/commonDes';
+import { handlePreviewImg } from '@/common/setup/upload';
+
+export default defineComponent({
+    name: 'custom-detail-desc',
+    components: { Des },
+    props: {
+        selectedRow: {
+            type: Object as PropType<QueryCustomInfoType>,
+            default: {},
+        },
+    },
+    setup(props) {
+        function isPersonal() {
+            return props.selectedRow.userinfotype === '1';
+        }
+        const { desList, getDesList } = handleDesList();
+        // 预览附件
+        const { previewVisible, previewImage, cancelImg, previewImg, getImgName } = handlePreviewImg();
+
+        watchEffect(() => {
+            if (props.selectedRow.customername) {
+                const data = props.selectedRow;
+                // 个人
+                const person = [
+                    { label: '客户类型', value: '个人' },
+                    { label: '姓名', value: data.customername },
+                    { label: '身份证号码', value: formatValue(data.cardnum) },
+                    { label: '手机号码', value: formatValue(data.mobile) },
+                    { label: '身份证正面照', value: formatValue(getImgName(data.cardfrontphotourl)), className: 'blue' },
+                    { label: '身份证反面照', value: formatValue(getImgName(data.cardbackphotourl)), className: 'blue' },
+                    { label: '邮箱', value: formatValue(data.email) },
+                    { label: '联系电话', value: formatValue(data.telphone) },
+                    { label: '通讯地址', value: formatValue(data.address) },
+                    { label: '备注', value: formatValue(data.remark) },
+                ];
+                // 企业
+                const company = [
+                    { label: '客户类型', value: '企业' },
+                    { label: '企业名称', value: data.customername },
+                    { label: '企业简称', value: formatValue(data.nickname) },
+                    { label: '证件类型', value: getCardTypeEnumItemName(data.cardtype) },
+                    { label: '法定代表人', value: formatValue(data.legalpersonname) },
+                    { label: '证件号码', value: formatValue(data.cardnum) },
+                    { label: '纳税人识别号', value: formatValue(data.taxpayernum) },
+                    { label: '营业执照', value: formatValue(getImgName(data.attachment1)), className: 'blue' },
+                    { label: '联系人', value: formatValue(data.contactname) },
+                    { label: '联系人手机号', value: formatValue(data.mobile) },
+                    { label: '联系电话', value: formatValue(data.telphone) },
+                    { label: '状态', value: getStatusName(data.status), className: 'green' },
+                    { label: '通讯地址', value: formatValue(data.address) },
+                    { label: '备注', value: formatValue(data.remark) },
+                ];
+                getDesList(isPersonal() ? person : company);
+            }
+        });
+        return {
+            desList,
+            previewVisible,
+            previewImage,
+            cancelImg,
+        };
+    },
+});
+</script>
+
+<style lang="less">
+.custom-detail {
+    .ant-form.inlineForm {
+        margin-top: 20px;
+    }
+    .upload {
+        .look {
+            margin-left: 0;
+        }
+    }
+}
+</style>;

+ 44 - 0
src/views/platinum/platinum_pick_query/list/tab/compoments/complete_stocking/index.vue

@@ -0,0 +1,44 @@
+<template>
+  <!-- 提货查询 完成备货-->
+  <a-modal class="add-custom custom-detail"
+           title="完成备货"
+           centered
+           v-model:visible="visible"
+           :maskClosable="false"
+           @cancel="cancel"
+           width="890px">
+    <template #footer>
+      <a-button key="submit"
+                type="primary"
+                :loading="loading.loading"
+                @click="cancel">关闭</a-button>
+    </template>
+    <CommomDetail :selectedRow="selectedRow" />
+  </a-modal>
+</template>
+<script lang="ts">
+import { defineComponent, PropType, ref } from 'vue';
+import { closeModal } from '@/common/setup/modal/index';
+import { QueryCustomInfoType } from '@/services/go/ermcp/customInfo/interface';
+import CommomDetail from '../common-detail/index.vue';
+
+export default defineComponent({
+    name: 'platinum_pick_query_complete_stocking',
+    components: { CommomDetail },
+    props: {
+        selectedRow: {
+            type: Object as PropType<QueryCustomInfoType>,
+            default: {},
+        },
+    },
+    setup(props, context) {
+        const { visible, cancel } = closeModal('platinum_pick_query_complete_stocking');
+        const loading = ref<boolean>(false);
+        return {
+            cancel,
+            visible,
+            loading,
+        };
+    },
+});
+</script>

+ 44 - 0
src/views/platinum/platinum_pick_query/list/tab/compoments/confirm_pickup/index.vue

@@ -0,0 +1,44 @@
+<template>
+  <!-- 提货查询 确认提货-->
+  <a-modal class="add-custom custom-detail"
+           title="确认提货"
+           centered
+           v-model:visible="visible"
+           :maskClosable="false"
+           @cancel="cancel"
+           width="890px">
+    <template #footer>
+      <a-button key="submit"
+                type="primary"
+                :loading="loading.loading"
+                @click="cancel">关闭</a-button>
+    </template>
+    <CommomDetail :selectedRow="selectedRow" />
+  </a-modal>
+</template>
+<script lang="ts">
+import { defineComponent, PropType, ref } from 'vue';
+import { closeModal } from '@/common/setup/modal/index';
+import { QueryCustomInfoType } from '@/services/go/ermcp/customInfo/interface';
+import CommomDetail from '../common-detail/index.vue';
+
+export default defineComponent({
+    name: 'platinum_pick_query_confirm_pickup',
+    components: { CommomDetail },
+    props: {
+        selectedRow: {
+            type: Object as PropType<QueryCustomInfoType>,
+            default: {},
+        },
+    },
+    setup(props, context) {
+        const { visible, cancel } = closeModal('platinum_pick_query_confirm_pickup');
+        const loading = ref<boolean>(false);
+        return {
+            cancel,
+            visible,
+            loading,
+        };
+    },
+});
+</script>

+ 57 - 0
src/views/platinum/platinum_pick_query/list/tab/compoments/controlModal/index.vue

@@ -0,0 +1,57 @@
+<template>
+  <div>
+    <!-- 详情 -->
+    <Detail :selectedRow="selectedRow" />
+    <!-- 完成备货- -->
+    <CompleteStocking :selectedRow="selectedRow" />
+    <!-- 确认提货 -->
+    <ConfirmPickup :selectedRow="selectedRow" />
+    <!-- 确认收货 -->
+    <Receipt :selectedRow="selectedRow" />
+    <!-- 上传物流 -->
+    <UploadLogistics :selectedRow="selectedRow" />
+  </div>
+</template>
+
+<script lang="ts">
+import { defineComponent, PropType } from 'vue';
+import { QueryCustomInfoType } from '@/services/go/ermcp/customInfo/interface';
+import Detail from '../detail/index.vue';
+import CompleteStocking from '../complete_stocking/index.vue';
+import ConfirmPickup from '../confirm_pickup/index.vue';
+import Receipt from '../query_receipt/index.vue';
+import UploadLogistics from '../upload_logistics/index.vue';
+
+export default defineComponent({
+    name: 'custom-control-modal',
+    components: { Detail, CompleteStocking, ConfirmPickup, Receipt, UploadLogistics },
+    props: {
+        selectedRow: {
+            type: Object as PropType<QueryCustomInfoType>,
+            default: {},
+        },
+    },
+    setup(props, context) {
+        function refresh() {
+            context.emit('context');
+        }
+        return {
+            refresh,
+        };
+    },
+});
+</script>
+
+<style lang="less">
+.custom-detail {
+    .ant-form.inlineForm {
+        margin-top: 20px;
+    }
+    .upload {
+        .look {
+            margin-left: 0;
+        }
+    }
+}
+</style>;
+

+ 44 - 0
src/views/platinum/platinum_pick_query/list/tab/compoments/detail/index.vue

@@ -0,0 +1,44 @@
+<template>
+  <!-- 提货查询详情-->
+  <a-modal class="add-custom custom-detail"
+           title="提货查询详情"
+           centered
+           v-model:visible="visible"
+           :maskClosable="false"
+           @cancel="cancel"
+           width="890px">
+    <template #footer>
+      <a-button key="submit"
+                type="primary"
+                :loading="loading.loading"
+                @click="cancel">关闭</a-button>
+    </template>
+    <CommomDetail :selectedRow="selectedRow" />
+  </a-modal>
+</template>
+<script lang="ts">
+import { defineComponent, PropType, ref } from 'vue';
+import { closeModal } from '@/common/setup/modal/index';
+import { QueryCustomInfoType } from '@/services/go/ermcp/customInfo/interface';
+import CommomDetail from '../common-detail/index.vue';
+
+export default defineComponent({
+    name: 'platinum_withdrawal_review_detail-desc',
+    components: { CommomDetail },
+    props: {
+        selectedRow: {
+            type: Object as PropType<QueryCustomInfoType>,
+            default: {},
+        },
+    },
+    setup(props, context) {
+        const { visible, cancel } = closeModal('detail');
+        const loading = ref<boolean>(false);
+        return {
+            cancel,
+            visible,
+            loading,
+        };
+    },
+});
+</script>

+ 44 - 0
src/views/platinum/platinum_pick_query/list/tab/compoments/query_receipt/index.vue

@@ -0,0 +1,44 @@
+<template>
+  <!-- 提货查询 确认收货-->
+  <a-modal class="add-custom custom-detail"
+           title="确认收货"
+           centered
+           v-model:visible="visible"
+           :maskClosable="false"
+           @cancel="cancel"
+           width="890px">
+    <template #footer>
+      <a-button key="submit"
+                type="primary"
+                :loading="loading.loading"
+                @click="cancel">关闭</a-button>
+    </template>
+    <CommomDetail :selectedRow="selectedRow" />
+  </a-modal>
+</template>
+<script lang="ts">
+import { defineComponent, PropType, ref } from 'vue';
+import { closeModal } from '@/common/setup/modal/index';
+import { QueryCustomInfoType } from '@/services/go/ermcp/customInfo/interface';
+import CommomDetail from '../common-detail/index.vue';
+
+export default defineComponent({
+    name: 'platinum_pick_query_receipt',
+    components: { CommomDetail },
+    props: {
+        selectedRow: {
+            type: Object as PropType<QueryCustomInfoType>,
+            default: {},
+        },
+    },
+    setup(props, context) {
+        const { visible, cancel } = closeModal('platinum_pick_query_receipt');
+        const loading = ref<boolean>(false);
+        return {
+            cancel,
+            visible,
+            loading,
+        };
+    },
+});
+</script>

+ 81 - 0
src/views/platinum/platinum_pick_query/list/tab/compoments/upload_logistics/index.vue

@@ -0,0 +1,81 @@
+<template>
+  <!-- 提货查询 上传物流-->
+  <a-modal class="add-custom upload_logistics"
+           title="上传物流"
+           centered
+           v-model:visible="visible"
+           :maskClosable="false"
+           @cancel="cancel"
+           width="600px">
+    <template #footer>
+      <a-button key="submit"
+                type="primary"
+                :loading="loading.loading"
+                @click="cancel">完成</a-button>
+    </template>
+    <a-form class="inlineForm mt10"
+            ref="formRef"
+            >
+      <a-row :gutter="24">
+        <a-col :span="24">
+          <a-form-item label="物流公司"
+                       name="">
+            <a-select class="inlineFormSelect"
+                      style="width: 200px"
+                      placeholder="请选择物流公司">
+              <a-select-option value="顺丰快递">
+                顺丰快递
+              </a-select-option>
+            </a-select>
+          </a-form-item>
+        </a-col>
+      </a-row>
+      <a-row :gutter="24">
+        <a-col :span="24">
+          <a-form-item label="物流单号"
+                       name="">
+            <a-input class="dialogInput"
+                     style="width: 200px"
+                     placeholder="请输入物流单号" />
+          </a-form-item>
+        </a-col>
+      </a-row>
+    </a-form>
+    <!-- <CommomDetail :selectedRow="selectedRow" /> -->
+  </a-modal>
+</template>
+<script lang="ts">
+import { defineComponent, PropType, ref } from 'vue';
+import { closeModal } from '@/common/setup/modal/index';
+import { QueryCustomInfoType } from '@/services/go/ermcp/customInfo/interface';
+import CommomDetail from '../common-detail/index.vue';
+
+export default defineComponent({
+    name: 'platinum_pick_query_upload_logistics',
+    components: { CommomDetail },
+    props: {
+        selectedRow: {
+            type: Object as PropType<QueryCustomInfoType>,
+            default: {},
+        },
+    },
+    setup(props, context) {
+        const { visible, cancel } = closeModal('platinum_pick_query_upload_logistics');
+        const loading = ref<boolean>(false);
+        return {
+            cancel,
+            visible,
+            loading,
+        };
+    },
+});
+</script>
+
+<style lang="less">
+.upload_logistics {
+    .ant-form.inlineForm .ant-row.ant-form-item .ant-form-item-label {
+        width: 200px;
+        text-align: right;
+    }
+}
+</style>

+ 74 - 3
src/views/platinum/platinum_pick_query/list/tab/index.vue

@@ -1,8 +1,79 @@
 <template>
   <!-- 提货查询 -->
-  <div>platinum_pick_query_tab</div>
+  <div class="platinum_pick_query_tab">
+    <Filter />
+    <contextMenu :contextMenuList="firstBtn">
+      <a-table :columns="columns"
+               class="topTable hiddenFirstCol"
+               :pagination="false"
+               :expandedRowKeys="expandedRowKeys"
+               :customRow="Rowclick"
+               rowKey="key"
+               :data-source="tableList">
+        <!-- 额外的展开行 -->
+        <template #expandedRowRender="{  }">
+          <BtnList :btnList="firstBtn"
+                   @onClick="btnClick" />
+        </template>
+      </a-table>
+    </contextMenu>
+    <ControlModal :selectedRow="selectedRow" />
+  </div>
 </template>
 
 <script lang="ts">
-export default {};
-</script>
+import { defineComponent, initData, getTableColumns, getTableEvent, getBtnList, contextMenu, BtnList, _getBtnList } from '@/common/export/table';
+import { ErmcpWareHouseInfo } from '@/views/information/warehouse-info/list';
+import Filter from '../../compoments/filter/index.vue';
+import { queryTableList } from './setup';
+import ControlModal from './compoments/controlModal/index.vue';
+
+export default defineComponent({
+    name: 'platinum_pick_query_tab',
+    components: { Filter, contextMenu, BtnList, ControlModal },
+    setup() {
+        // 表头数据
+        const { columns, registerColumn, updateColumn, filteredInfo } = getTableColumns();
+        // 表格事件
+        const { expandedRowKeys, selectedRow, Rowclick, btnClick } = getTableEvent<ErmcpWareHouseInfo>({});
+        // 表格操作按钮列表
+        const [firstBtn] = _getBtnList('platinum_pick_query_tab', true).value;
+        // 表格列表数据
+        const { loading, tableList, queryTable } = queryTableList('in');
+        initData(() => {
+            // 获取列表数据
+            queryTable();
+            // 注册表头信息 过滤
+            registerColumn('table_pcweb_warehouse', ['warehousetype', 'warehousename', 'address']);
+            // registerColumn('table_pcweb_qhj_withdrawal_review', ['warehousetype', 'warehousename', 'address']);
+        });
+
+        // 查询
+        function search(value: any) {
+            filteredInfo.value = value;
+            // 更新表信息
+            updateColumn();
+        }
+
+        return {
+            columns,
+            filteredInfo,
+            expandedRowKeys,
+            selectedRow,
+            Rowclick,
+            firstBtn,
+            loading,
+            tableList,
+            search,
+            queryTable,
+            btnClick,
+        };
+    },
+});
+</script>
+
+<style lang="less">
+.platinum_recharge_review_tab {
+
+}
+</style>;

+ 51 - 0
src/views/platinum/platinum_pick_query/list/tab/setup.ts

@@ -0,0 +1,51 @@
+import { QueryWareHouse } from '@/services/go/ermcp/warehouse-info/index';
+import { ErmcpWareHouseInfo } from '@/services/go/ermcp/warehouse-info/interface';
+import { message } from 'ant-design-vue';
+import { ref } from 'vue';
+
+
+
+/**
+ * 获取表格列表数据
+ * @param type 
+ * @returns 
+ */
+export function queryTableList(type: string) {
+    // 加载状态
+    const loading = ref<boolean>(false);
+    // 表格数据
+    const tableList = ref<ErmcpWareHouseInfo[]>([]);
+    function queryTable() {
+        QueryWareHouse('1')
+            .then((res) => {
+                tableList.value = res.map((e, i) => {
+                    return { ...e, key: String(i) };
+                });
+                loading.value = false;
+                console.log('查询列表', tableList);
+            })
+            .catch((err) => {
+                message.error(err);
+                loading.value = false;
+            });
+    }
+    return { loading, tableList, queryTable }
+}
+
+// export function queryTableList(type: 'in' | 'out') {
+//     // 加载状态
+//     const loading = ref<boolean>(false);
+//     // 表格数据
+//     const tableList = ref<QhjAccountOutInApply[]>([]);
+//     function queryTable() {
+//         queryResultLoadingAndInfo(queryAccountInOutApply, loading)
+//             .then(res => {
+//                 //申请类型 - 1:出金 2:入金 3: 单边账调整:入金; 4:单边账调整:出金 5:外部母账户调整:入金 6:外部母账户调整:出金 7:外部子账户:入金 8:外部子账户:出金
+//                 const arr = type === 'in' ? [1, 3, 5, 7] : [2, 4, 6, 8]
+//                 tableList.value = res.filter((e: QhjAccountOutInApply) => arr.includes(e.executetype)).map((e: QhjAccountOutInApply, i: number) => {
+//                     return { ...e, key: String(i) };
+//                 });
+//             })
+//     }
+//     return { loading, tableList, queryTable }
+// }

+ 0 - 10
src/views/platinum/platinum_recharge_withdrawal_review/list/recharge/index.vue

@@ -1,5 +1,3 @@
-
-
 <template>
   <!-- 充值审核 -->
   <div class="platinum_recharge_review_tab">
@@ -76,13 +74,5 @@ export default defineComponent({
 
 <style lang="less">
 .platinum_recharge_review_tab {
-    .topTable {
-        .operBtn.ant-btn {
-            margin-top: 0;
-            margin-bottom: 0;
-            height: 26px;
-            line-height: 26px;
-        }
-    }
 }
 </style>;