huangbin há 4 anos atrás
pai
commit
568ffd65e9
31 ficheiros alterados com 269 adições e 2265 exclusões
  1. 111 0
      src/common/constants/modalNameEnum.ts
  2. 65 0
      src/common/setup/modal/batchModal.ts
  3. 0 362
      src/views/birkin-bag/custom/compoments/add/index.vue
  4. 0 27
      src/views/birkin-bag/custom/compoments/add/interface.ts
  5. 0 79
      src/views/birkin-bag/custom/compoments/add/setup.ts
  6. 0 86
      src/views/birkin-bag/custom/compoments/cancel/index.vue
  7. 0 117
      src/views/birkin-bag/custom/compoments/check/index.vue
  8. 0 114
      src/views/birkin-bag/custom/compoments/common-detail/index.vue
  9. 0 74
      src/views/birkin-bag/custom/compoments/delete/index.vue
  10. 0 62
      src/views/birkin-bag/custom/compoments/detail/index.vue
  11. 0 81
      src/views/birkin-bag/custom/compoments/disable/index.vue
  12. 0 48
      src/views/birkin-bag/custom/compoments/filterTable/index.vue
  13. 0 15
      src/views/birkin-bag/custom/compoments/index.ts
  14. 0 426
      src/views/birkin-bag/custom/compoments/modify/index.vue
  15. 0 78
      src/views/birkin-bag/custom/compoments/recover/index.vue
  16. 0 115
      src/views/birkin-bag/custom/list/checkpending/index.vue
  17. 0 6
      src/views/birkin-bag/custom/list/index.ts
  18. 0 108
      src/views/birkin-bag/custom/list/normal-use/index.vue
  19. 0 35
      src/views/birkin-bag/custom/list/setup.ts
  20. 0 111
      src/views/birkin-bag/custom/list/stop-use/index.vue
  21. 0 123
      src/views/birkin-bag/custom/list/unsubmit/index.vue
  22. 0 12
      src/views/birkin-bag/custom/setup.ts
  23. 72 0
      src/views/information/custom/compoments/controlModal/index.vue
  24. 1 1
      src/views/information/custom/compoments/delete/index.vue
  25. 4 4
      src/views/information/custom/compoments/detail/index.vue
  26. 3 14
      src/views/information/custom/list/checkpending/index.vue
  27. 4 11
      src/views/information/custom/list/normal-use/index.vue
  28. 5 13
      src/views/information/custom/list/stop-use/index.vue
  29. 0 58
      src/views/information/custom/list/unsubmit/compoments/controlModal/index.vue
  30. 0 68
      src/views/information/custom/list/unsubmit/compoments/delete/index.vue
  31. 4 17
      src/views/information/custom/list/unsubmit/index.vue

+ 111 - 0
src/common/constants/modalNameEnum.ts

@@ -0,0 +1,111 @@
+export enum ModalEnum {
+    notice = 'notice',  // 消息
+    logout = 'logout', // 退出登录
+    commomOrder = 'commom-order', // 下单通用界面
+
+    detail = 'detail', // 详情
+
+    custom_info_btn_add = 'custom_info_btn_add', // 客户资料 添加
+    custom_info_btn_modify = 'custom_info_btn_modify',// 客户资料 修改
+    custom_info_btn_disable = 'custom_info_btn_disable',// 客户资料 停用
+    custom_info_btn_recover = 'custom_info_btn_recover',// 客户资料 恢复
+    custom_info_btn_delete = 'custom_info_btn_delete',// 客户资料 删除
+    custom_info_btn_cancel = 'custom_info_btn_cancel',// 客户资料 撤销
+    custom_info_btn_check = 'custom_info_btn_check',// 客户资料 审核
+
+    goods_info_spot_normal_add = 'goods_info_spot_normal_add', // 现货品种 新增
+    goods_info_spot_normal_modify = 'goods_info_spot_normal_modify', // 现货品种 修改
+    goods_info_spot_normal_disable = 'goods_info_spot_normal_disable', // 现货品种 停用
+    goods_info_spot_disable_recover = 'goods_info_spot_disable_recover', // 现货品种 恢复
+
+    goods_info_hedge_normal_modify = 'goods_info_hedge_normal_modify', // 套保品种  修改
+
+    spot_contract_btn_add = 'spot_contract_btn_add', // 现货合同 添加
+    spot_contract_btn_resubmit = 'spot_contract_btn_resubmit', // 现货合同 重新提交
+    spot_contract_btn_modify = 'spot_contract_btn_modify', // 现货合同 修改
+    spot_contract_btn_delete = 'spot_contract_btn_delete', // 现货合同 删除
+    spot_contract_btn_finish = 'spot_contract_btn_finish', // 现货合同 正常完结
+    spot_contract_btn_check = 'spot_contract_btn_check', // 现货合同 审核
+    spot_contract_btn_cancel = 'spot_contract_btn_cancel', // 现货合同 撤销
+
+    account_info_business_btn_add = 'account_info_business_btn_add', // 业务账户 新增
+    account_info_business_btn_modify = 'account_info_business_btn_modify', // 业务账户 修改
+    account_info_business_btn_reset = 'account_info_business_btn_reset', // 业务账户 重置密码
+    account_info_business_btn_locked = 'account_info_business_btn_locked', // 业务账户 锁定
+    account_info_business_btn_cancel = 'account_info_business_btn_cancel', // 业务账户 注销
+    account_info_business_btn_unlocked = 'account_info_business_btn_unlocked', // 业务账户 解锁
+
+    account_info_trade_btn_add = 'account_info_trade_btn_add',// 交易员 新增
+    account_info_trade_child_btn_add = 'account_info_trade_child_btn_add',// 交易账户 新增
+    account_info_trade_btn_modify = 'account_info_trade_btn_modify',// 交易账户 修改
+    account_info_trade_btn_child_modify = 'account_info_trade_btn_child_modify',// 交易子账户 修改
+    account_info_trade_btn_child_locked = 'account_info_trade_btn_child_locked',// 交易账户 锁定
+    account_info_trade_btn_child_unlocked = 'account_info_trade_btn_child_unlocked',// 交易账户 解锁
+    account_info_trade_btn_child_reset = 'account_info_trade_btn_child_reset',// 交易账户 重置密码
+    account_info_trade_btn_child_logout = 'account_info_trade_btn_child_logout',// 业务账户 注销
+
+    account_info_manager_btn_add = 'account_info_manager_btn_add', // 管理账户 新增
+    account_info_manager_btn_child_add = 'account_info_manager_btn_child_add', // 管理子账户 新增
+    account_info_manager_btn_modify = 'account_info_manager_btn_modify', // 管理账户 修改
+    account_info_manager_btn_setting = 'account_info_manager_btn_setting', // 管理账户 权限设置
+    account_info_manager_btn_setting_modify = 'account_info_manager_btn_setting_modify', // 管理账户 权限修改
+    account_info_manager_btn_setting_delete = 'account_info_manager_btn_setting_delete', // 管理账户 权限删除
+    account_info_manager_btn_setting_detail = 'account_info_manager_btn_setting_detail', // 管理账户 权限详情
+
+    account_info_manager_btn_permission_add = 'account_info_manager_btn_permission_add', // 管理账户 新增
+    account_info_manager_btn_reset = 'account_info_manager_btn_reset', // 管理账户 重置密码
+    account_info_manager_btn_locked = 'account_info_manager_btn_locked', // 管理账户 锁定
+    account_info_manager_btn_unlocked = 'account_info_manager_btn_unlocked', // 管理账户 解锁
+    account_info_manager_btn_logout = 'account_info_manager_btn_logout', // 管理账户 注销
+
+    account_info_futures_btn_add = 'account_info_futures_btn_add', // 期货账户   新增
+    account_info_futures_btn_child_add = 'account_info_futures_btn_child_add', // 期货子账户 新增
+    account_info_futures_btn_modify = 'account_info_futures_btn_modify', // 期货账户 修改
+    account_info_futures_btn_child_modify = 'account_info_futures_btn_child_modify', // 期货子账户 修改
+    account_info_futures_btn_credit = 'account_info_futures_btn_credit', // 期货账户 授权
+    account_info_futures_btn_child_cancel = 'account_info_futures_btn_child_cancel', // 期货账户 注销
+    account_info_futures_btn_child_credit = 'account_info_futures_btn_child_credit', // 期货账户 授信
+
+    warehouse_info_btn_add = 'warehouse_info_btn_add', // 仓库信息 新增
+    warehouse_info_btn_modify = 'warehouse_info_btn_modify', // 现货合同 修改
+    warehouse_info_btn_disable = 'warehouse_info_btn_disable', // 现货合同 停用
+    warehouse_info_btn_recover = 'warehouse_info_btn_recover', // 现货合同 恢复
+
+    purchase_pending_someprice = 'purchase_pending_someprice', // 采购 点价登记
+    purchase_pending_settlement = 'purchase_pending_settlement', // 采购 交收登记
+    purchase_pending_funds = 'purchase_pending_funds', // 采购 款项登记
+    purchase_pending_invoice = 'purchase_pending_invoice', // 采购 发票登记
+    purchase_pending_storage = 'purchase_pending_storage', // 采购 入库登记
+
+    sell_pending_someprice = 'sell_pending_someprice', // 销售 点价登记
+    sell_pending_settlement = 'sell_pending_settlement', // 销售 交收登记
+    sell_pending_funds = 'sell_pending_funds', // 销售 款项登记
+    sell_pending_invoice = 'sell_pending_invoice', // 销售 发票登记
+    sell_pending_storage = 'sell_pending_storage', // 销售 出库登记
+
+    plan_uncommitted_recommit = 'plan_uncommitted_recommit', // 计划 重新提交
+    plan_uncommitted_modify = 'plan_uncommitted_modify', // 计划 修改
+    plan_uncommitted_delete = 'plan_uncommitted_delete', // 计划 删除
+    plan_audit_audit = 'plan_audit_audit', // 计划 审核
+    plan_audit_cancel = 'plan_audit_cancel', // 计划 撤销
+    plan_btn_add = 'plan_btn_add', // 计划 新增
+
+    business_review_someprice_audit = 'business_review_someprice_audit', // 点价 审核
+    business_review_someprice_cancel = 'business_review_someprice_cancel', // 点价 撤销
+
+    business_review_settlement_audit = 'business_review_settlement_audit', // 交收 审核
+    business_review_settlement_cancel = 'business_review_settlement_cancel', // 交收 撤销
+
+    finance_review_funds_audit = 'finance_review_funds_audit', // 款项 审核
+    finance_review_funds_cancel = 'finance_review_funds_cancel', // 款项 撤销
+
+    finance_review_invoice_audit = 'finance_review_invoice_audit', // 发票 审核
+    finance_review_invoice_cancel = 'finance_review_invoice_cancel', // 发票 撤销
+
+    inventory_review_checkin_audit = 'inventory_review_checkin_audit', // 入库 审核
+    inventory_review_checkin_cancel = 'inventory_review_checkin_cancel', // 入库 撤销
+    inventory_review_checkout_audit = 'inventory_review_checkout_audit', // 出库 审核
+    inventory_review_checkout_cancel = 'inventory_review_checkout_cancel', // 出库 撤销
+
+    inventory_current_add = 'inventory_current_add', // 库存查询 新增
+}

+ 65 - 0
src/common/setup/modal/batchModal.ts

@@ -0,0 +1,65 @@
+import { ModalEnum } from '@/common/constants/modalNameEnum';
+import { inject, Ref, ref, SetupContext, watchEffect } from 'vue';
+
+
+export function closeModal(modelName: ModalEnum, context?: SetupContext) {
+    // 控制弹窗 flag
+    const visible = ref<boolean>(false);
+    const show = inject(modelName, ref<boolean>(false))
+    watchEffect(() => {
+        visible.value = show.value
+    })
+    /**
+     * 取消弹窗
+     */
+    function cancel() {
+        visible.value = false;
+        show.value = false
+    }
+    // 组件关闭弹窗需要刷新列表数据
+    function refresh() {
+        context?.emit('refresh')
+        cancel()
+
+    }
+    return { visible, cancel, refresh }
+}
+// 批量处理引入关闭弹窗逻辑
+export function batchCloseMal(arr: ModalEnum[], context?: SetupContext) {
+    // 控制每个关闭弹窗的flag
+    type VisibleItem = Ref<boolean>
+    interface CacheFunction {
+        cancel: Function;
+        refresh: Function;
+    }
+    // 缓存控制关闭弹窗的逻辑函数
+    const cache = new Map<ModalEnum, CacheFunction>()
+    // 控制弹窗flag 列表:此列表与 arr 的索引对应上
+    const visibleList = ref<VisibleItem[]>([])
+    arr.forEach(el => {
+        const { visible, cancel, refresh } = closeModal(el, context)
+        visibleList.value.push(visible)
+        if (!cache.has(el)) {
+            cache.set(el, { cancel, refresh })
+        }
+    })
+    // 关闭弹窗
+    function cancel(modalName: ModalEnum) {
+        if (cache.has(modalName)) {
+            cache.get(modalName)?.cancel()
+        } else {
+            console.warn('未找到关闭弹窗名:${modalName}')
+        }
+    }
+    // 刷新页面
+    function refresh(modalName: ModalEnum) {
+        if (cache.has(modalName)) {
+            cache.get(modalName)?.refresh()
+        } else {
+            console.warn('未找到关闭弹窗名:${modalName}')
+        }
+    }
+    return { visibleList, cancel, refresh }
+}
+
+export { ModalEnum };

+ 0 - 362
src/views/birkin-bag/custom/compoments/add/index.vue

@@ -1,362 +0,0 @@
-<template>
-  <!-- 新增客户资料 -->
-  <a-modal class="add-custom"
-           title="新增客户资料"
-           v-model:visible="visible"
-           @cancel="cancel"
-           centered
-           :maskClosable="false"
-           width="890px">
-    <template #footer>
-      <a-button key="submit"
-                class="cancelBtn"
-                @click="submit(1)">保存草稿
-      </a-button>
-      <a-button key="submit"
-                type="primary"
-                :loading="loading"
-                @click="submit(2)">提交审核
-      </a-button>
-    </template>
-    <a-form class="inlineForm"
-            ref="formRef"
-            :model="formState"
-            :rules="rules">
-      <a-row :gutter="24">
-        <a-col :span="12">
-          <a-form-item label="客户类型"
-                       name="userinfotype">
-            <a-select class="typeSelect"
-                      style="width: 200px"
-                      v-model:value="formState.userinfotype"
-                      placeholder="请选择客户类型">
-              <a-select-option value="1">
-                个人
-              </a-select-option>
-              <a-select-option value="2">
-                企业
-              </a-select-option>
-            </a-select>
-          </a-form-item>
-        </a-col>
-        <template v-if="!isPersonal()">
-          <a-col :span="12">
-            <a-form-item label="企业名称"
-                         name="customername">
-              <a-input class="dialogInput"
-                       v-model:value="formState.customername"
-                       style="width: 200px"
-                       placeholder="请输入企业名称" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="企业简称"
-                         name="nickname">
-              <a-input class="dialogInput"
-                       style="width: 200px"
-                       v-model:value="formState.nickname"
-                       placeholder="请输入企业简称" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="证件类型"
-                         name="cardtype">
-              <a-select class="inlineFormSelect"
-                        v-model:value="formState.cardtype"
-                        style="width: 200px"
-                        placeholder="请选择证件类型">
-                <a-select-option :value="item.enumitemname"
-                                 v-for="item in cardTypeList"
-                                 :key="item.autoid">
-                  {{ item.enumdicname }}
-                </a-select-option>
-              </a-select>
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="法定代表人"
-                         name="legalpersonname">
-              <a-input class="dialogInput"
-                       style="width: 200px"
-                       v-model:value="formState.legalpersonname"
-                       placeholder="请输入法定代表人" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="证件号码"
-                         name="cardnum">
-              <a-input class="dialogInput"
-                       style="width: 200px"
-                       v-model:value="formState.cardnum"
-                       placeholder="请输入证件号码" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="纳税人识别号"
-                         name="taxpayernum">
-              <a-input class="dialogInput"
-                       style="width: 200px"
-                       v-model:value="formState.taxpayernum"
-                       placeholder="请输入纳税人识别号" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="营业执照">
-              <UploadImg :visible="visible"
-                         @upload="attachmentUpLoad" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="联系人"
-                         name="contactname">
-              <a-input class="dialogInput"
-                       style="width: 200px"
-                       v-model:value="formState.contactname"
-                       placeholder="请输入联系人" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="联系人手机号"
-                         name="mobilephone">
-              <a-input class="dialogInput"
-                       style="width: 200px"
-                       v-model:value="formState.mobilephone"
-                       placeholder="请输入联系人手机号" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="联系电话"
-                         name="telphone">
-              <a-input class="dialogInput"
-                       style="width: 200px"
-                       v-model:value="formState.telphone"
-                       placeholder="请输入联系电话" />
-            </a-form-item>
-          </a-col>
-        </template>
-        <template v-else>
-          <a-col :span="12">
-            <a-form-item label="姓名"
-                         name="username">
-              <a-input class="dialogInput"
-                       style="width: 200px"
-                       v-model:value="formState.username"
-                       placeholder="请输入姓名" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="身份证号码"
-                         name="cardnum">
-              <a-input class="dialogInput"
-                       style="width: 200px"
-                       v-model:value="formState.cardnum"
-                       placeholder="请输入身份证号码" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="手机号码"
-                         name="mobilephone">
-              <a-input class="dialogInput"
-                       style="width: 200px"
-                       v-model:value="formState.mobilephone"
-                       placeholder="请输入手机号码" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="身份证正面照"
-                         name="cardbackphotourl">
-              <UploadImg :visible="visible"
-                         @upload="cardfrontphotourlUpLoad" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="邮箱"
-                         name="email">
-              <a-input class="dialogInput"
-                       style="width: 200px"
-                       v-model:value="formState.email"
-                       placeholder="请输入邮箱" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="24">
-            <a-form-item label="身份证反面照"
-                         name="cardfrontphotourl">
-              <UploadImg :visible="visible"
-                         @upload="cardbackphotourlUpLoad" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="联系电话"
-                         name="telphone">
-              <a-input class="dialogInput"
-                       style="width: 200px"
-                       v-model:value="formState.telphone"
-                       placeholder="请输入联系电话" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item>
-              &nbsp;
-            </a-form-item>
-          </a-col>
-        </template>
-        <a-col :span="24">
-          <a-form-item label="通讯地址">
-            <a-select class="inlineFormSelect"
-                      style="width: 205px"
-                      v-model:value="formState.provinceid"
-                      @change="getCityList"
-                      placeholder="请选择省">
-              <a-select-option v-for="item in provinceList"
-                               :key="item.autoid"
-                               :value="item.autoid">
-                {{ item.divisionname }}
-              </a-select-option>
-            </a-select>
-            <a-select class="inlineFormSelect ml9"
-                      style="width: 205px"
-                      v-model:value="formState.cityid"
-                      @change="getDistrictList"
-                      placeholder="请选择市">
-              <a-select-option v-for="item in cityList"
-                               :key="item.autoid"
-                               :value="item.autoid">
-                {{ item.divisionname }}
-              </a-select-option>
-            </a-select>
-            <a-select class="inlineFormSelect ml9"
-                      v-model:value="formState.districtid"
-                      style="width: 205px"
-                      placeholder="请选择县(区)">
-              <a-select-option v-for="item in districtList"
-                               :key="item.autoid"
-                               :value="item.autoid">
-                {{ item.divisionname }}
-              </a-select-option>
-            </a-select>
-          </a-form-item>
-        </a-col>
-        <a-col :span="24">
-          <a-form-item label="&nbsp;"
-                       name="cardaddress">
-            <a-input class="dialogInput"
-                     style="width: 635px"
-                     v-model:value="formState.cardaddress"
-                     placeholder="请输入详细地址" />
-          </a-form-item>
-        </a-col>
-        <a-col :span="24">
-          <a-form-item label="备注"
-                       name="remark">
-            <a-input class="dialogInput"
-                     style="width: 635px"
-                     v-model:value="formState.remark"
-                     placeholder="请输入备注" />
-          </a-form-item>
-        </a-col>
-      </a-row>
-    </a-form>
-  </a-modal>
-</template>
-
-<script lang="ts">
-import { closeModal } from '@/common/setup/modal/index';
-import { defineComponent, ref } from 'vue';
-import { getCardType, handleForm } from './setup';
-import { AllEnums } from '@/services/go/commonService/interface';
-import { FormState } from './interface';
-import { getAddress } from '@/services/go/adress';
-import { AddUserInfoApplyReq } from '@/services/go/ermcp/customInfo/interface';
-import { getUserId } from '@/services/bus/account';
-import { requestResultLoadingAndInfo } from '@/common/methods/request/resultInfo';
-import { QueryAddUserInfoApply } from '@/services/go/ermcp/customInfo';
-import { validateAction } from '@/common/setup/form';
-import UploadImg from '@/common/components/uploadImg/index.vue';
-import { getUploadImg } from '@/common/setup/upload';
-
-export default defineComponent({
-    name: 'add-custom',
-    components: { UploadImg },
-    setup(props, context) {
-        // 控制关闭弹窗
-        const { visible, cancel } = closeModal('custom_info_btn_add');
-        const loading = ref<boolean>(false);
-        // 证件类型
-        const cardTypeList = ref<AllEnums[]>(getCardType());
-        // 表单
-        const { formRef, formState, rules } = handleForm();
-        // 地址
-        const { cityList, districtList, provinceList, getCityList, getDistrictList } = getAddress();
-        // 营业执照
-        const { getFirstImg: getAttachmentImg, uploadImgAction: attachmentUpLoad } = getUploadImg();
-        // 背面证件照地址
-        const { getFirstImg: getBackImg, uploadImgAction: cardbackphotourlUpLoad } = getUploadImg();
-        // 正面证件照地址
-        const { getFirstImg: getFrontImg, uploadImgAction: cardfrontphotourlUpLoad } = getUploadImg();
-        function isPersonal(): boolean {
-            return formState.userinfotype === '1';
-        }
-
-        function submit(OperateType: 1 | 2) {
-            validateAction<FormState>(formRef, formState).then((param) => {
-                const reqParam: AddUserInfoApplyReq = {
-                    customername: Number(param.userinfotype) === 1 ? param.username : param.customername, // 必填
-                    userid: 1, // 写死 必填
-                    memberareaid: getUserId(),
-                    userinfotype: Number(param.userinfotype),
-                    username: param.username,
-                    userstate: OperateType, // 1: 保存草稿 2: 新增
-                    // 以上必填
-                    cardtype: param.cardtype, // 证件类型
-                    cardnum: param.cardnum, // 证件号码
-                    nickname: param.nickname, // 昵称
-                    remark: param.remark, // 备注
-                    mobilephone: param.mobilephone, //  手机号码
-                    telphone: param.telphone, // 电话
-                    cardfrontphotourl: getFrontImg(), // 正面照片
-                    cardbackphotourl: getBackImg(), // 背面证件照地址
-                    cardaddress: param.cardaddress, // 证件地址
-                    cityid: param.cityid, //
-                    districtid: param.districtid, // 地区
-                    // countryid: param.,9
-                    provinceid: param.provinceid, //省
-                    contactname: param.contactname, // 联系人
-                    legalpersonname: param.legalpersonname, // 法人姓名(企业)
-                    taxpayernum: param.taxpayernum, // 纳税人识别号
-                    email: param.email, // email
-                    attachment1: getAttachmentImg(), // 营业执照
-                };
-                requestResultLoadingAndInfo(QueryAddUserInfoApply, reqParam, loading, OperateType === 1 ? ['保存草稿成功', '保存草稿失败:'] : ['新增客户资料成功', '新增客户资料失败:']).then(() => {
-                    cancel();
-                    context.emit('refresh');
-                });
-            });
-        }
-        return {
-            formState,
-            rules,
-            formRef,
-            cardTypeList,
-            isPersonal,
-            visible,
-            cancel,
-            submit,
-            loading,
-            cityList,
-            districtList,
-            provinceList,
-            getCityList,
-            getDistrictList,
-            attachmentUpLoad,
-            cardbackphotourlUpLoad,
-            cardfrontphotourlUpLoad,
-        };
-    },
-});
-</script>
-
-<style lang="less">
-.add-custom {
-}
-</style
->;

+ 0 - 27
src/views/birkin-bag/custom/compoments/add/interface.ts

@@ -1,27 +0,0 @@
-export interface FormState {
-    userinfotype: string; //客户类型
-    customername: string; //客户名称(企业名称)
-    nickname: string; //企业简称
-    cardtype: number | undefined; //证件类型
-
-    cardnum: string; //证件号码 (加密存储)
-    legalpersonname: string; //法人姓名(企业)
-    taxpayernum: string; //纳税人识别号
-    attachment1: string; //附件1
-    attachment2: string; //附件2
-    attachment3: string; //附件3
-    attachment4: string; //附件4
-    attachment5: string; //附件5
-    contactname: string; //联系人
-    mobilephone: string; //手机号码 (加密存储)
-    telphone: string; //联系电话(加密存储)
-    provinceid: number | undefined; //省
-    cityid: number | undefined; //市
-    districtid: number | undefined; //地区
-    remark: string; //备注
-    cardaddress: string; //证件地址 (加密存储)
-    username: string;//用户姓名
-    cardbackphotourl: string;//背面证件照地址
-    cardfrontphotourl: string;//正面证件照地址
-    email: string;//Email地址(加密存储)
-}

+ 0 - 79
src/views/birkin-bag/custom/compoments/add/setup.ts

@@ -1,79 +0,0 @@
-
-import { getCardTypeEnumList } from '@/common/constants/enumsList';
-import { validateCommon } from '@/common/setup/validate';
-import { QueryAddUserInfoApply } from '@/services/go/ermcp/customInfo';
-import { AddUserInfoApplyReq } from '@/services/go/ermcp/customInfo/interface';
-import { message } from 'ant-design-vue';
-import { RuleObject } from 'ant-design-vue/lib/form/interface';
-import { reactive, ref, UnwrapRef } from 'vue';
-import { FormState } from './interface';
-
-/**
- * 获取证件类型
- * @returns 
- */
-export function getCardType() {
-    const arr = [2, 4, 18, 21];
-    return getCardTypeEnumList().filter(e => arr.includes(e.enumitemname))
-}
-
-export function handleForm() {
-    const formRef = ref();
-    const formState: UnwrapRef<FormState> = reactive(initFormState());
-    // 验证仓库类型
-    async function v_cardtype(rule: RuleObject, value: number) {
-        return validateCommon(value, '请选择证件类型')
-    }
-    const rules = {
-        userinfotype: [{ required: true, message: '请选择客户类型', trigger: 'change' }],
-        customername: [{ required: true, message: '请输入企业名称', trigger: 'blur' }],
-        nickname: [{ required: true, message: '请输入企业简称', trigger: 'blur' }],
-        cardtype: [{ required: true, validator: v_cardtype, trigger: 'change' }],
-    };
-    return { formRef, formState, rules }
-}
-
-/**
- * 初始化表单数据
- * @returns 
- */
-export function initFormState(): FormState {
-    return {
-        userinfotype: '2',
-        customername: '',
-        nickname: '',
-        cardtype: undefined,
-        cardnum: '',
-        legalpersonname: '',
-        taxpayernum: '',
-        attachment1: '',
-        attachment2: '',
-        attachment3: '',
-        attachment4: '',
-        attachment5: '',
-        contactname: '',
-        mobilephone: '',
-        telphone: '',
-        provinceid: undefined,
-        cityid: undefined,
-        districtid: undefined,
-        cardaddress: '',
-        remark: '',
-        username: '',
-        cardbackphotourl: '',
-        cardfrontphotourl: '',
-        email: '',
-    }
-}
-
-export function handleApply() {
-    const loading = ref<boolean>(false);
-    function applyAction(param: AddUserInfoApplyReq) {
-        loading.value = true;
-        QueryAddUserInfoApply(param).then(res => {
-        }).catch(err => {
-            message.error(err)
-        }).finally(() => loading.value = false)
-    }
-    return { loading, applyAction }
-}

+ 0 - 86
src/views/birkin-bag/custom/compoments/cancel/index.vue

@@ -1,86 +0,0 @@
-<template>
-  <!-- 撤销客户资料-->
-  <a-modal class="commonModal custom_info_btn_cancel"
-           title="撤销客户资料"
-           v-model:visible="visible"
-           @cancel="cancel"
-           centered
-           width="890px">
-    <template #footer>
-      <a-button key="submit"
-                class="cancelBtn"
-                @click="cancel">取消</a-button>
-      <a-button key="submit"
-                type="primary"
-                :loading="loading"
-                @click="submit">确认撤销</a-button>
-    </template>
-    <Detail :selectedRow="selectedRow" />
-  </a-modal>
-</template>
-
-<script lang="ts">
-import { defineComponent, PropType, ref } from 'vue';
-import { closeModal } from '@/common/setup/modal/index';
-import { Modal } from 'ant-design-vue';
-import { ModifyUserInfoReq, QueryCustomInfoType } from '@/services/go/ermcp/customInfo/interface';
-import { requestResultLoadingAndInfo } from '@/common/methods/request/resultInfo';
-import { QueryModifyUserInfo } from '@/services/go/ermcp/customInfo';
-import Detail from '../common-detail/index.vue';
-
-export default defineComponent({
-    name: 'custom_info_btn_cancel',
-    components: { Detail },
-    props: {
-        selectedRow: {
-            type: Object as PropType<QueryCustomInfoType>,
-            default: {},
-        },
-    },
-    setup(props, context) {
-        const { visible, cancel } = closeModal('custom_info_btn_cancel');
-        const loading = ref<boolean>(false);
-        function submit() {
-            loading.value = true;
-            Modal.confirm({
-                title: '是否确认撤销客户资料',
-                content: '是否撤销',
-                okText: '确认撤销',
-                cancelText: '取消',
-                onOk() {
-                    const reqParam: ModifyUserInfoReq = {
-                        userid: props.selectedRow.userid, //用户ID
-                        userstate: 1, //开户状态 - 1:未提交 2: 待初审 3:初审拒绝 4:待复审 5:复审拒绝 6:测评不通过 (必填)
-                    };
-                    requestResultLoadingAndInfo(QueryModifyUserInfo, reqParam, loading, ['撤销成功', '撤销失败:']).then(() => {
-                        cancel();
-                        context.emit('refresh');
-                    });
-                },
-                onCancel() {
-                    loading.value = false;
-                },
-                class: 'test',
-            });
-        }
-
-        return {
-            visible,
-            cancel,
-            submit,
-            loading,
-        };
-    },
-});
-</script>
-
-<style lang="less">
-.custom_info_btn_cancel {
-    .upload {
-        .look {
-            margin-left: 0;
-        }
-    }
-}
-</style
->;

+ 0 - 117
src/views/birkin-bag/custom/compoments/check/index.vue

@@ -1,117 +0,0 @@
-<template>
-  <!-- 审核客户资料-->
-  <a-modal class="commonModal custom_info_btn_check"
-           title="审核客户资料"
-           v-model:visible="visible"
-           @cancel="cancel"
-           centered
-           width="890px">
-    <template #footer>
-      <a-button key="submit"
-                class="cancelBtn"
-                @click="cancel">取消
-      </a-button>
-      <a-button key="submit"
-                type="primary"
-                :loading="loading"
-                @click="submit">审核通过
-      </a-button>
-      <a-button key="submit"
-                type="primary"
-                :loading="loading"
-                @click="refuseSubmit">审核拒绝
-      </a-button>
-    </template>
-    <Detail :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 { UserInfoCheckMangeReq } from '@/services/proto/accountinfo/interface';
-import { getUserId } from '@/services/bus/account';
-import { Modal } from 'ant-design-vue';
-import { requestResultLoadingAndInfo } from '@/common/methods/request/resultInfo';
-import { userInfoCheck } from '@/services/proto/accountinfo';
-import Detail from '../common-detail/index.vue';
-
-export default defineComponent({
-    name: 'custom_info_btn_check',
-    components: { Detail },
-    props: {
-        selectedRow: {
-            type: Object as PropType<QueryCustomInfoType>,
-            default: {},
-        },
-    },
-    setup(props, context) {
-        const loading = ref<boolean>(false);
-        const { visible, cancel } = closeModal('custom_info_btn_check');
-
-        // 审核通过
-        function submit() {
-            Modal.confirm({
-                title: '是否确认审核通过',
-                okText: '确认通过',
-                cancelText: '取消',
-                onOk() {
-                    let reqParam: UserInfoCheckMangeReq = {
-                        audituserid: getUserId(),
-                        userid: props.selectedRow.userid,
-                        auditflag: 1,
-                        remark: '',
-                    };
-                    requestResultLoadingAndInfo(userInfoCheck, reqParam, loading, ['审核成功', '审核失败:']).then(() => {
-                        cancel();
-                        context.emit('refresh');
-                    });
-                },
-                onCancel() {},
-            });
-        }
-
-        // 审核拒绝
-        function refuseSubmit() {
-            Modal.confirm({
-                title: '是否确认审核拒绝',
-                okText: '审核拒绝',
-                cancelText: '取消',
-                onOk() {
-                    let reqParam: UserInfoCheckMangeReq = {
-                        audituserid: getUserId(),
-                        userid: props.selectedRow.userid,
-                        auditflag: 2,
-                        remark: '',
-                    };
-                    requestResultLoadingAndInfo(userInfoCheck, reqParam, loading, ['审核拒绝成功', '审核拒绝失败:']).then(() => {
-                        cancel();
-                        context.emit('refresh');
-                    });
-                },
-                onCancel() {},
-            });
-        }
-
-        return {
-            visible,
-            cancel,
-            submit,
-            loading,
-            refuseSubmit,
-        };
-    },
-});
-</script>
-
-<style lang="less">
-.custom_info_btn_check {
-    .upload {
-        .look {
-            margin-left: 0;
-        }
-    }
-}
-</style
->;

+ 0 - 114
src/views/birkin-bag/custom/compoments/common-detail/index.vue

@@ -1,114 +0,0 @@
-<template>
-  <div>
-    <Des :list="desList"
-         @onClick="imgClick" />
-    <a-modal :visible="previewVisible"
-             :footer="null"
-             @cancel="cancelImg">
-      <img alt="预览附件"
-           style="width: 100%"
-           :src="previewImage" />
-    </a-modal>
-  </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, DescriptionsList, 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();
-        //
-        function imgClick({ label }: DescriptionsList) {
-            const { attachment1, cardfrontphotourl, cardbackphotourl } = props.selectedRow;
-            switch (label) {
-                case '营业执照':
-                    previewImg(attachment1);
-                    break;
-                case '身份证正面照':
-                    previewImg(cardfrontphotourl);
-                    break;
-                case '身份证反面照':
-                    previewImg(cardbackphotourl);
-                    break;
-            }
-        }
-        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,
-            imgClick,
-        };
-    },
-});
-</script>
-
-<style lang="less">
-.custom-detail {
-    .ant-form.inlineForm {
-        margin-top: 20px;
-    }
-    .upload {
-        .look {
-            margin-left: 0;
-        }
-    }
-}
-</style>;

+ 0 - 74
src/views/birkin-bag/custom/compoments/delete/index.vue

@@ -1,74 +0,0 @@
-<template>
-  <!-- 删除客户资料-->
-  <a-modal class="commonModal recover-custom"
-           title="删除客户资料"
-           v-model:visible="visible"
-           @cancel="cancel"
-           centered
-           width="890px">
-    <template #footer>
-      <a-button key="submit"
-                type="primary"
-                :loading="loading"
-                @click="submit">删除客户资料
-      </a-button>
-    </template>
-    <Detail :selectedRow="selectedRow" />
-  </a-modal>
-</template>
-
-<script lang="ts">
-import { defineComponent, PropType, ref } from 'vue';
-import { closeModal } from '@/common/setup/modal/index';
-import { DeleteUserReq, QueryCustomInfoType } from '@/services/go/ermcp/customInfo/interface';
-import { Modal } from 'ant-design-vue';
-import { requestResultLoadingAndInfo } from '@/common/methods/request/resultInfo';
-import { QueryDeleteUserInfoApply } from '@/services/go/ermcp/customInfo';
-import Detail from '../common-detail/index.vue';
-
-export default defineComponent({
-    name: 'recover-custom',
-    components: { Detail },
-    props: {
-        selectedRow: {
-            type: Object as PropType<QueryCustomInfoType>,
-            default: {},
-        },
-    },
-    setup(props, context) {
-        const { visible, cancel } = closeModal('custom_info_btn_delete');
-        const loading = ref<boolean>(false);
-
-        function submit() {
-            Modal.confirm({
-                title: '是否确认删除客户资料',
-                okText: '确认删除',
-                cancelText: '取消',
-                onOk() {
-                    let reqParams: DeleteUserReq = {
-                        userID: props.selectedRow.userid,
-                    };
-                    requestResultLoadingAndInfo(QueryDeleteUserInfoApply, reqParams, loading, ['删除成功', '删除失败:']).then(() => {
-                        cancel();
-                        context.emit('refresh');
-                    });
-                },
-                onCancel() {},
-            });
-        }
-
-        return {
-            visible,
-            cancel,
-            submit,
-            loading,
-        };
-    },
-});
-</script>
-
-<style lang="less">
-.recover-custom {
-}
-</style
->;

+ 0 - 62
src/views/birkin-bag/custom/compoments/detail/index.vue

@@ -1,62 +0,0 @@
-<template>
-  <!-- 客户资料详情-->
-  <a-modal class="add-custom custom-detail"
-           title="客户资料详情"
-           v-model:visible="visible"
-           centered
-           :maskClosable="maskClosableFlag"
-           @cancel="cancel"
-           width="890px">
-    <template #footer>
-      <a-button key="submit"
-                type="primary"
-                :loading="loading.loading"
-                @click="cancel">关闭</a-button>
-    </template>
-    <Detail :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 Detail from '../common-detail/index.vue';
-
-export default defineComponent({
-    name: 'custom-detail',
-    components: { Detail },
-    props: {
-        selectedRow: {
-            type: Object as PropType<QueryCustomInfoType>,
-            default: {},
-        },
-    },
-    setup(props) {
-        console.log('open');
-
-        const { visible, cancel } = closeModal('detail');
-        const loading = ref<boolean>(false);
-        const maskClosableFlag = ref<boolean>(false);
-        return {
-            visible,
-            cancel,
-            loading,
-            maskClosableFlag,
-        };
-    },
-});
-</script>
-
-<style lang="less">
-.custom-detail {
-    .ant-form.inlineForm {
-        margin-top: 20px;
-    }
-    .upload {
-        .look {
-            margin-left: 0;
-        }
-    }
-}
-</style>;

+ 0 - 81
src/views/birkin-bag/custom/compoments/disable/index.vue

@@ -1,81 +0,0 @@
-<template>
-  <!-- 停用客户资料-->
-  <a-modal class="commonModal warehouse-disable"
-           title="停用客户资料"
-           v-model:visible="visible"
-           centered
-           :maskClosable="maskClosableFlag"
-           @cancel="cancel"
-           width="890px">
-    <template #footer>
-      <a-button key="submit"
-                class="cancelBtn"
-                @click="cancel">取消
-      </a-button>
-      <a-button key="submit"
-                type="primary"
-                :loading="loading"
-                @click="submit">确认停用
-      </a-button>
-    </template>
-    <Detail :selectedRow="selectedRow" />
-  </a-modal>
-</template>
-
-<script lang="ts">
-import { defineComponent, PropType, ref } from 'vue';
-import { closeModal } from '@/common/setup/modal/index';
-import { QueryCustomInfoType, UpdateUserAccountReq } from '@/services/go/ermcp/customInfo/interface';
-import { Modal } from 'ant-design-vue';
-import { requestResultLoadingAndInfo } from '@/common/methods/request/resultInfo';
-import { UpdateUserAccountStatus } from '@/services/go/ermcp/customInfo';
-import Detail from '../common-detail/index.vue';
-
-export default defineComponent({
-    name: 'custom-disable',
-    components: { Detail },
-    props: {
-        selectedRow: {
-            type: Object as PropType<QueryCustomInfoType>,
-            default: {},
-        },
-    },
-    setup(props, context) {
-        const { visible, cancel } = closeModal('custom_info_btn_disable');
-        const maskClosableFlag = ref<boolean>(false);
-        const loading = ref<boolean>(false);
-
-        function submit() {
-            Modal.confirm({
-                title: '是否确认停用客户资料',
-                okText: '确认停用',
-                cancelText: '取消',
-                onOk() {
-                    let reqParams: UpdateUserAccountReq = {
-                        userID: props.selectedRow.userid,
-                        accountStatus: 6,
-                    };
-                    requestResultLoadingAndInfo(UpdateUserAccountStatus, reqParams, loading, ['停用成功', '停用失败:']).then(() => {
-                        cancel();
-                        context.emit('refresh');
-                    });
-                },
-                onCancel() {},
-            });
-        }
-
-        return {
-            visible,
-            cancel,
-            submit,
-            loading,
-            maskClosableFlag,
-        };
-    },
-});
-</script>
-
-<style lang="less">
-.warehouse-disable {
-}
-</style>

+ 0 - 48
src/views/birkin-bag/custom/compoments/filterTable/index.vue

@@ -1,48 +0,0 @@
-<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, InputList, SelectList } from '@/common/setup/filter';
-
-export default defineComponent({
-    name: 'filter-custom-table',
-    components: { FilterOption },
-    setup(props, context) {
-        const select: SelectList[] = [
-            {
-                value: undefined,
-                key: 'userinfotype',
-                placeholder: '全部客户类型',
-                list: [
-                    { value: 1, lable: '个人' },
-                    { value: 2, lable: '企业' },
-                ],
-            },
-        ];
-        const input: InputList[] = [
-            { value: '', placeholder: '模糊搜索客户简称', key: 'nickname' },
-            { value: '', placeholder: '模糊搜索客户名称', key: 'name' },
-            { value: '', placeholder: '模糊搜索手机号码', key: 'phone' },
-        ];
-        const { selectList, inputList, fixedBtnList } = handleFilter(select, input, context);
-        return {
-            selectList,
-            inputList,
-            fixedBtnList,
-        };
-    },
-});
-</script>
-
-<style lang="less">
-
-</style>;

+ 0 - 15
src/views/birkin-bag/custom/compoments/index.ts

@@ -1,15 +0,0 @@
-import AddCustom from './add/index.vue';
-import Cancel from './cancel/index.vue';
-import Check from './check/index.vue';
-import DeleteCustom from './delete/index.vue';
-import CustomDetail from './detail/index.vue';
-import DisableCustom from './disable/index.vue';
-import filterCustomTable from './filterTable/index.vue';
-import ModifyCustom from './modify/index.vue';
-import RecoverCustom from './recover/index.vue';
-
-export {
-    filterCustomTable, CustomDetail, DeleteCustom, RecoverCustom, ModifyCustom,
-    DisableCustom, AddCustom, Cancel, Check
-};
-

+ 0 - 426
src/views/birkin-bag/custom/compoments/modify/index.vue

@@ -1,426 +0,0 @@
-<template>
-  <!-- 修改客户资料 -->
-  <a-modal class="commonModal modify-custom"
-           title="修改客户资料"
-           v-if="visible"
-           v-model:visible="visible"
-           centered
-           :maskClosable="maskClosableFlag"
-           @cancel="cancel"
-           width="890px">
-    <template #footer>
-      <a-button key="submit"
-                class="cancelBtn"
-                @click="submit(1)">保存草稿
-      </a-button>
-      <a-button key="submit"
-                type="primary"
-                :loading="loading"
-                @click="submit(2)">提交修改</a-button>
-    </template>
-    <a-form class="inlineForm"
-            ref="formRef"
-            :model="formState"
-            :rules="rules">
-      <a-row :gutter="24">
-        <a-col :span="12">
-          <a-form-item label="客户类型"
-                       name="userinfotype">
-            <a-select class="typeSelect"
-                      style="width: 200px"
-                      v-model:value="formState.userinfotype"
-                      placeholder="请选择客户类型">
-              <a-select-option value="1">
-                个人
-              </a-select-option>
-              <a-select-option value="2">
-                企业
-              </a-select-option>
-            </a-select>
-          </a-form-item>
-        </a-col>
-        <template v-if="!isPersonal()">
-          <a-col :span="12">
-            <a-form-item label="企业名称"
-                         name="customername">
-              <a-input class="dialogInput"
-                       v-model:value="formState.customername"
-                       style="width: 200px"
-                       placeholder="请输入企业名称" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="企业简称"
-                         name="nickname">
-              <a-input class="dialogInput"
-                       style="width: 200px"
-                       v-model:value="formState.nickname"
-                       placeholder="请输入企业简称" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="证件类型"
-                         name="cardtype">
-              <a-select class="inlineFormSelect"
-                        v-model:value="formState.cardtype"
-                        style="width: 200px"
-                        placeholder="请选择证件类型">
-                <a-select-option :value="item.enumitemname"
-                                 v-for="item in cardTypeList"
-                                 :key="item.autoid">
-                  {{ item.enumdicname }}
-                </a-select-option>
-              </a-select>
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="法定代表人"
-                         name="legalpersonname">
-              <a-input class="dialogInput"
-                       style="width: 200px"
-                       v-model:value="formState.legalpersonname"
-                       placeholder="请输入法定代表人" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="证件号码"
-                         name="cardnum">
-              <a-input class="dialogInput"
-                       style="width: 200px"
-                       v-model:value="formState.cardnum"
-                       placeholder="请输入证件号码" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="纳税人识别号"
-                         name="taxpayernum">
-              <a-input class="dialogInput"
-                       style="width: 200px"
-                       v-model:value="formState.taxpayernum"
-                       placeholder="请输入纳税人识别号" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="营业执照">
-              <UploadImg :visible="visible"
-                         :imgList="attachmentImgList"
-                         @upload="attachmentUpload" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="联系人"
-                         name="contactname">
-              <a-input class="dialogInput"
-                       style="width: 200px"
-                       v-model:value="formState.contactname"
-                       placeholder="请输入联系人" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="联系人手机号"
-                         name="mobilephone">
-              <a-input class="dialogInput"
-                       style="width: 200px"
-                       v-model:value="formState.mobilephone"
-                       placeholder="请输入联系人手机号" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="联系电话"
-                         name="telphone">
-              <a-input class="dialogInput"
-                       style="width: 200px"
-                       v-model:value="formState.telphone"
-                       placeholder="请输入联系电话" />
-            </a-form-item>
-          </a-col>
-        </template>
-        <template v-else>
-          <a-col :span="12">
-            <a-form-item label="姓名"
-                         name="username">
-              <a-input class="dialogInput"
-                       style="width: 200px"
-                       v-model:value="formState.username"
-                       placeholder="请输入姓名" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="身份证号码"
-                         name="cardnum">
-              <a-input class="dialogInput"
-                       style="width: 200px"
-                       v-model:value="formState.cardnum"
-                       placeholder="请输入身份证号码" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="手机号码"
-                         name="mobilephone">
-              <a-input class="dialogInput"
-                       style="width: 200px"
-                       v-model:value="formState.mobilephone"
-                       placeholder="请输入手机号码" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="身份证正面照"
-                         name="cardbackphotourl">
-              <UploadImg :visible="visible"
-                         :imgList="cardfrontImgList"
-                         @upload="cardfrontUpload" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="邮箱"
-                         name="email">
-              <a-input class="dialogInput"
-                       style="width: 200px"
-                       v-model:value="formState.email"
-                       placeholder="请输入邮箱" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="24">
-            <a-form-item label="身份证反面照"
-                         name="cardfrontphotourl">
-              <UploadImg :visible="visible"
-                         :imgList="cardbackImgList"
-                         @upload="cardbackUpload" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="联系电话"
-                         name="telphone">
-              <a-input class="dialogInput"
-                       style="width: 200px"
-                       v-model:value="formState.telphone"
-                       placeholder="请输入联系电话" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item>
-              &nbsp;
-            </a-form-item>
-          </a-col>
-        </template>
-        <a-col :span="24">
-          <a-form-item label="通讯地址">
-            <a-select class="inlineFormSelect"
-                      style="width: 205px"
-                      v-model:value="formState.provinceid"
-                      @change="getCityList"
-                      placeholder="请选择省">
-              <a-select-option v-for="item in provinceList"
-                               :key="item.autoid"
-                               :value="item.autoid">
-                {{ item.divisionname }}
-              </a-select-option>
-            </a-select>
-            <a-select class="inlineFormSelect ml9"
-                      style="width: 205px"
-                      v-model:value="formState.cityid"
-                      @change="getDistrictList"
-                      placeholder="请选择市">
-              <a-select-option v-for="item in cityList"
-                               :key="item.autoid"
-                               :value="item.autoid">
-                {{ item.divisionname }}
-              </a-select-option>
-            </a-select>
-            <a-select class="inlineFormSelect ml9"
-                      v-model:value="formState.districtid"
-                      style="width: 205px"
-                      placeholder="请选择县(区)">
-              <a-select-option v-for="item in districtList"
-                               :key="item.autoid"
-                               :value="item.autoid">
-                {{ item.divisionname }}
-              </a-select-option>
-            </a-select>
-          </a-form-item>
-        </a-col>
-        <a-col :span="24">
-          <a-form-item label="&nbsp;"
-                       name="cardaddress">
-            <a-input class="dialogInput"
-                     style="width: 635px"
-                     v-model:value="formState.cardaddress"
-                     placeholder="请输入详细地址" />
-          </a-form-item>
-        </a-col>
-        <a-col :span="24">
-          <a-form-item label="备注"
-                       name="remark">
-            <a-input class="dialogInput"
-                     style="width: 635px"
-                     v-model:value="formState.remark"
-                     placeholder="请输入备注" />
-          </a-form-item>
-        </a-col>
-      </a-row>
-    </a-form>
-  </a-modal>
-</template>
-
-<script lang="ts">
-import { closeModal } from '@/common/setup/modal/index';
-import { defineComponent, PropType, ref, watchEffect } from 'vue';
-import { getCardType, handleForm, initFormState } from '../add/setup';
-import { AllEnums } from '@/services/go/commonService/interface';
-import { FormState } from '../add/interface';
-import { getAddress } from '@/services/go/adress';
-import { ModifyUserInfoApplyReq, QueryCustomInfoType } from '@/services/go/ermcp/customInfo/interface';
-import { getUserId } from '@/services/bus/account';
-import { requestResultLoadingAndInfo } from '@/common/methods/request/resultInfo';
-import { QueryModifyUserInfoApply } from '@/services/go/ermcp/customInfo';
-import { mergeTwoObj } from '@/utils/objHandle';
-import { validateAction } from '@/common/setup/form';
-import { delAddress } from '@/services/socket/address';
-import UploadImg from '@/common/components/uploadImg/index.vue';
-import { getUploadImg } from '@/common/setup/upload';
-
-export default defineComponent({
-    name: 'modify-custom',
-    components: { UploadImg },
-    props: {
-        selectedRow: {
-            default: initFormState,
-            type: Object as PropType<QueryCustomInfoType>,
-        },
-    },
-    setup(props, context) {
-        const { visible, cancel } = closeModal('custom_info_btn_modify');
-        const loading = ref<boolean>(false);
-        // 证件类型
-        const cardTypeList = ref<AllEnums[]>(getCardType());
-        // 表单
-        const { formRef, formState, rules } = handleForm();
-        // 地址
-        const { cityList, districtList, provinceList, getCityList, getDistrictList } = getAddress();
-        // 营业执照
-        const { uploadImgAction: attachmentUpload, uploadImgList: attachmentImgList, handleImg: attachmentHandle } = getUploadImg();
-        // 背面证件照地址
-        const { uploadImgAction: cardbackUpload, uploadImgList: cardbackImgList, handleImg: cardbackHandle } = getUploadImg();
-        // 正面证件照地址
-        const { uploadImgAction: cardfrontUpload, uploadImgList: cardfrontImgList, handleImg: cardfrontHandle } = getUploadImg();
-
-        function isPersonal(): boolean {
-            return formState.userinfotype === '1';
-        }
-
-        const userid = ref<number>(0);
-        const countryid = ref<number>(0);
-        watchEffect(() => {
-            if (visible.value) {
-                userid.value = props.selectedRow.userid;
-                countryid.value = props.selectedRow.countryid;
-                mergeTwoObj(formState, props.selectedRow);
-                if (isPersonal()) {
-                    formState.username = props.selectedRow.customername;
-                }
-                const { provinceid, cityid, address, mobile, attachment1, cardfrontphotourl, cardbackphotourl } = props.selectedRow;
-                formState.cardaddress = address;
-                formState.mobilephone = mobile;
-                provinceid ? getCityList(provinceid) : (formState.provinceid = undefined);
-                cityid ? getDistrictList(cityid) : ((formState.cityid = undefined), (formState.districtid = undefined));
-                if (attachment1) {
-                    // 营业执照
-                    attachmentImgList.value = attachmentHandle(attachment1);
-                }
-                if (cardbackphotourl) {
-                    // 背面证件照地址
-                    cardbackImgList.value = cardbackHandle(cardbackphotourl);
-                }
-                if (cardbackphotourl) {
-                    // 正面证件照地址
-                    cardfrontImgList.value = cardfrontHandle(cardbackphotourl);
-                }
-            }
-        });
-        function submit(OperateType: 1 | 2) {
-            validateAction<FormState>(formRef, formState).then((param) => {
-                const reqParam: ModifyUserInfoApplyReq = {
-                    customername: Number(param.userinfotype) === 1 ? param.username : param.customername, // 必填
-                    username: param.username,
-                    userid: userid.value,
-                    memberareaid: getUserId(),
-                    userinfotype: Number(param.userinfotype),
-                    userstate: OperateType, // 1: 保存草稿 2: 新增
-                    cardtype: param.cardtype, // 证件类型
-                    cardnum: param.cardnum, // 证件号码
-                    nickname: param.nickname, // 昵称
-                    remark: param.remark, // 备注
-                    mobilephone: param.mobilephone, //  手机号码
-                    telphone: param.telphone, // 电话
-                    cardfrontphotourl: param.cardfrontphotourl, // 正面照片
-                    cardaddress: param.cardaddress, // 证件地址
-                    cityid: param.cityid, //
-                    districtid: param.districtid, // 地区
-                    countryid: countryid.value,
-                    provinceid: param.provinceid, //省
-                    contactname: param.contactname, // 联系人
-                    legalpersonname: param.legalpersonname, // 法人姓名(企业)
-                    taxpayernum: param.taxpayernum, // 纳税人识别号
-                    email: param.email, // email
-                };
-                requestResultLoadingAndInfo(QueryModifyUserInfoApply, reqParam, loading, OperateType === 1 ? ['保存草稿成功', '保存草稿失败:'] : ['新增客户资料成功', '新增客户资料失败:']).then(() => {
-                    cancel();
-                    context.emit('refresh');
-                });
-            });
-        }
-        return {
-            formState,
-            rules,
-            formRef,
-            cardTypeList,
-            isPersonal,
-            visible,
-            cancel,
-            submit,
-            loading,
-            cityList,
-            districtList,
-            provinceList,
-            getCityList,
-            getDistrictList,
-            attachmentUpload,
-            attachmentImgList,
-            cardbackUpload,
-            cardbackImgList,
-            cardfrontUpload,
-            cardfrontImgList,
-        };
-    },
-});
-</script>
-
-<style lang="less">
-.modify-custom {
-    .upload {
-        display: inline-flex;
-        .ant-btn.uploadBtn {
-            width: 60px;
-            height: 30px;
-            background: @m-blue0;
-            border: 0;
-            padding: 0;
-            text-align: center;
-            font-size: 14px;
-            color: @m-white0;
-            .rounded-corners(3px);
-            &:hover {
-                background: rgba(@m-blue0, 0);
-                color: rgba(@m-white0, 0.8);
-            }
-        }
-        .look {
-            color: @m-blue0;
-            font-size: 14px;
-            margin-left: 10px;
-            cursor: pointer;
-        }
-    }
-}
-</style
->;

+ 0 - 78
src/views/birkin-bag/custom/compoments/recover/index.vue

@@ -1,78 +0,0 @@
-<template>
-  <!-- 恢复客户资料-->
-  <a-modal class="commonModal warehouse-disable"
-           title="恢复客户资料"
-           v-model:visible="visible"
-           @cancel="cancel"
-           centered
-           width="890px">
-    <template #footer>
-      <a-button key="submit"
-                class="cancelBtn"
-                @click="cancel">取消
-      </a-button>
-      <a-button key="submit"
-                type="primary"
-                :loading="loading"
-                @click="recover">完成
-      </a-button>
-    </template>
-    <Detail :selectedRow="selectedRow" />
-  </a-modal>
-</template>
-
-<script lang="ts">
-import { defineComponent, PropType, ref } from 'vue';
-import { closeModal } from '@/common/setup/modal/index';
-import { QueryCustomInfoType, UpdateUserAccountReq } from '@/services/go/ermcp/customInfo/interface';
-import { Modal } from 'ant-design-vue';
-import { requestResultLoadingAndInfo } from '@/common/methods/request/resultInfo';
-import { UpdateUserAccountStatus } from '@/services/go/ermcp/customInfo';
-import Detail from '../common-detail/index.vue';
-
-export default defineComponent({
-    name: 'modify-custom',
-    components: { Detail },
-    props: {
-        selectedRow: {
-            type: Object as PropType<QueryCustomInfoType>,
-            default: {},
-        },
-    },
-    setup(props, context) {
-        const { visible, cancel } = closeModal('custom_info_btn_recover');
-        const loading = ref<boolean>(false);
-        // 恢复方法
-        function recover() {
-            Modal.confirm({
-                title: '是否确认恢复客户资料',
-                okText: '确认恢复',
-                cancelText: '取消',
-                onOk() {
-                    let reqParams: UpdateUserAccountReq = {
-                        userID: props.selectedRow.userid,
-                        accountStatus: 4,
-                    };
-                    requestResultLoadingAndInfo(UpdateUserAccountStatus, reqParams, loading, ['恢复成功', '恢复失败:']).then(() => {
-                        cancel();
-                        context.emit('refresh');
-                    });
-                },
-                onCancel() {},
-            });
-        }
-        return {
-            visible,
-            cancel,
-            recover,
-            loading,
-        };
-    },
-});
-</script>
-
-<style lang="less">
-.modify-custom {
-}
-</style
->;

+ 0 - 115
src/views/birkin-bag/custom/list/checkpending/index.vue

@@ -1,115 +0,0 @@
-<template>
-  <!-- 客户信息: 正常 -->
-  <div class="custom_info_checkpending"
-       :loading="loading">
-    <filterCustomTable @search="search">
-      <BtnList :btnList="commonBtn" />
-    </filterCustomTable>
-    <contextMenu :contextMenuList="forDataBtn">
-      <a-table :columns="columns"
-               class="topTable hiddenFirstCol"
-               :pagination="false"
-               :expandedRowKeys="expandedRowKeys"
-               :customRow="Rowclick"
-               rowKey="key"
-               :data-source="tableList">
-        <!-- 额外的展开行 -->
-        <template #expandedRowRender="{  }">
-          <BtnList :btnList="forDataBtn" />
-        </template>
-        <template #userinfotype="{ text }">
-          <a>{{ text === '2' ? '企业' : '个人' }}</a>
-        </template>
-        <template #status="{ text }">
-          <a>{{ getStatusName(text) }}</a>
-        </template>
-        <template #cardtype="{ text }">
-          <a>{{ getCardTypeEnumItemName(text) }}</a>
-        </template>
-      </a-table>
-    </contextMenu>
-    <!-- 新增 -->
-    <AddCustom />
-    <!-- 详情 -->
-    <CustomDetail :selectedRow="selectedRow" />
-    <!-- 修改 -->
-    <ModifyCustom :selectedRow="selectedRow"
-                  @refresh="queryTable" />
-    <!-- 停用 -->
-    <DisableCustom />
-    <!-- 撤销 -->
-    <Cancel :selectedRow="selectedRow"
-            @refresh="queryTable" />
-    <!-- 审核客户资料 -->
-    <Check :selectedRow="selectedRow"
-           @refresh="queryTable" />
-  </div>
-</template>
-
-<script lang="ts">
-import { defineComponent, initData, getTableColumns, getTableEvent, getBtnList, contextMenu, BtnList } from '@/common/export/table';
-
-import { filterCustomTable, CustomDetail, ModifyCustom, DisableCustom, AddCustom, Cancel, Check } from '../../compoments';
-import { queryTableList, QueryCustomInfoType } from '../index';
-import { getStatusName } from '@/common/constants/enumsName';
-import { getCardTypeEnumItemName } from '@/common/constants/enumsName';
-
-export default defineComponent({
-    name: 'custom_info_checkpending',
-    components: {
-        filterCustomTable,
-        contextMenu,
-        CustomDetail,
-        ModifyCustom,
-        DisableCustom,
-        AddCustom,
-        BtnList,
-        Cancel,
-        Check,
-    },
-    setup() {
-        // 表头数据
-        const { columns, registerColumn, updateColumn, filteredInfo } = getTableColumns();
-        // 表格事件
-        const { expandedRowKeys, selectedRow, Rowclick } = getTableEvent<QueryCustomInfoType>({});
-        // 表格操作按钮列表
-        const { commonBtn, forDataBtn } = getBtnList('custom_info_checkpending', true);
-        // 表格列表数据
-        const { loading, tableList, queryTable } = queryTableList(2);
-        initData(() => {
-            // 获取列表数据
-            queryTable();
-            // 注册表头信息 过滤
-            registerColumn('table_pcweb_userinfo', ['userinfotype', 'nickname', 'contactname', 'mobile']);
-        });
-
-        // 查询
-        function search(value: any) {
-            filteredInfo.value = value;
-            // 更新表信息
-            updateColumn();
-        }
-
-        return {
-            columns,
-            filteredInfo,
-            expandedRowKeys,
-            selectedRow,
-            Rowclick,
-            commonBtn,
-            forDataBtn,
-            loading,
-            tableList,
-            search,
-            getStatusName,
-            getCardTypeEnumItemName,
-            queryTable,
-        };
-    },
-});
-</script>
-
-<style lang="less">
-.custom_info_checkpending {
-}
-</style>

+ 0 - 6
src/views/birkin-bag/custom/list/index.ts

@@ -1,6 +0,0 @@
-import { QueryCustomInfoType } from '@/services/go/ermcp/customInfo/interface';
-import { queryTableList } from './setup';
-
-export { queryTableList };
-export type { QueryCustomInfoType };
-

+ 0 - 108
src/views/birkin-bag/custom/list/normal-use/index.vue

@@ -1,108 +0,0 @@
-<template>
-  <!-- 客户信息: 正常 -->
-  <div class="custom-normal"
-       :loading="loading">
-    <filterCustomTable @search="search">
-      <BtnList :btnList="commonBtn" />
-    </filterCustomTable>
-    <contextMenu :contextMenuList="forDataBtn">
-      <a-table :columns="columns"
-               class="topTable hiddenFirstCol"
-               :pagination="false"
-               :expandedRowKeys="expandedRowKeys"
-               :customRow="Rowclick"
-               rowKey="key"
-               :data-source="tableList">
-        <!-- 额外的展开行 -->
-        <template #expandedRowRender="{  }">
-          <BtnList :btnList="forDataBtn" />
-        </template>
-        <template #userinfotype="{ text }">
-          <a>{{ text === '2' ? '企业' : '个人' }}</a>
-        </template>
-        <template #status="{ text }">
-          <a>{{ getStatusName(text) }}</a>
-        </template>
-        <template #cardtype="{ text }">
-          <a>{{ getCardTypeEnumItemName(text) }}</a>
-        </template>
-      </a-table>
-    </contextMenu>
-    <!-- 新增 -->
-    <AddCustom @refresh="queryTable" />
-    <!-- 详情 -->
-    <CustomDetail :selectedRow="selectedRow"
-                  @refresh="queryTable" />
-    <!--        &lt;!&ndash; 修改 &ndash;&gt;-->
-    <!--        <ModifyCustom :selectedRow="selectedRow" @refresh="queryTable"/>-->
-    <!-- 停用 -->
-    <DisableCustom :selectedRow="selectedRow"
-                   @refresh="queryTable" />
-  </div>
-</template>
-
-<script lang="ts">
-import { defineComponent, initData, getTableColumns, getTableEvent, getBtnList, contextMenu, BtnList } from '@/common/export/table';
-
-import { filterCustomTable, CustomDetail, ModifyCustom, DisableCustom, AddCustom } from '../../compoments';
-import { queryTableList, QueryCustomInfoType } from '../index';
-import { getStatusName } from '@/common/constants/enumsName';
-import { getCardTypeEnumItemName } from '@/common/constants/enumsName';
-
-export default defineComponent({
-    name: 'custom-normal',
-    components: {
-        filterCustomTable,
-        contextMenu,
-        CustomDetail,
-        ModifyCustom,
-        DisableCustom,
-        AddCustom,
-        BtnList,
-    },
-    setup() {
-        // 表头数据
-        const { columns, registerColumn, updateColumn, filteredInfo } = getTableColumns();
-        // 表格事件
-        const { expandedRowKeys, selectedRow, Rowclick } = getTableEvent<QueryCustomInfoType>({});
-        // 表格操作按钮列表
-        const { commonBtn, forDataBtn } = getBtnList('custom_info_normal', true);
-        // 表格列表数据
-        const { loading, tableList, queryTable } = queryTableList(3);
-        initData(() => {
-            // 获取列表数据
-            queryTable();
-            // 注册表头信息 过滤
-            registerColumn('table_pcweb_userinfo', ['userinfotype', 'nickname', 'contactname', 'mobile']);
-        });
-
-        // 查询
-        function search(value: any) {
-            filteredInfo.value = value;
-            // 更新表信息
-            updateColumn();
-        }
-
-        return {
-            columns,
-            filteredInfo,
-            expandedRowKeys,
-            selectedRow,
-            Rowclick,
-            commonBtn,
-            forDataBtn,
-            loading,
-            tableList,
-            search,
-            getStatusName,
-            getCardTypeEnumItemName,
-            queryTable,
-        };
-    },
-});
-</script>
-
-<style lang="less">
-.custom-normal {
-}
-</style>

+ 0 - 35
src/views/birkin-bag/custom/list/setup.ts

@@ -1,35 +0,0 @@
-import { QueryCustomInfo } from '@/services/go/ermcp/customInfo';
-import { QueryCustomInfoType } from '@/services/go/ermcp/customInfo/interface';
-import { QueryCustomInfoEnum } from '@/services/go/ermcp/customInfo/type';
-import { message } from 'ant-design-vue';
-import { ref } from 'vue';
-
-/**
- * 获取表格列表数据
- * @param type 
- * @returns 
- */
-export function queryTableList(type: QueryCustomInfoEnum) {
-    // 加载状态
-    const loading = ref<boolean>(false);
-    // 表格数据
-    const tableList = ref<QueryCustomInfoType[]>([]);
-    function queryTable() {
-        QueryCustomInfo(type)
-            .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 }
-}
-
-
-

+ 0 - 111
src/views/birkin-bag/custom/list/stop-use/index.vue

@@ -1,111 +0,0 @@
-<template>
-  <!-- 客户信息: 停用 -->
-  <div class="custom-normal"
-       :loading="loading">
-    <filterCustomTable @search="search">
-      <BtnList :btnList="commonBtn" />
-    </filterCustomTable>
-    <contextMenu :contextMenuList="forDataBtn">
-      <a-table :columns="columns"
-               class="topTable hiddenFirstCol"
-               :expandedRowKeys="expandedRowKeys"
-               :customRow="Rowclick"
-               :pagination="false"
-               rowKey="key"
-               :data-source="tableList">
-        <!-- 额外的展开行 -->
-        <template #expandedRowRender="{  }">
-          <BtnList :btnList="forDataBtn" />
-        </template>
-        <template #userinfotype="{ text }">
-          <a>{{ text === '2' ? '企业' : '个人' }}</a>
-        </template>
-        <template #status="{ text }">
-          <a>{{ getStatusName(text) }}</a>
-        </template>
-        <template #cardtype="{ text }">
-          <a>{{ getCardTypeEnumItemName(text) }}</a>
-        </template>
-      </a-table>
-    </contextMenu>
-    <!-- 新增 -->
-    <AddCustom />
-    <!-- 详情 -->
-    <CustomDetail :selectedRow="selectedRow"
-                  @refresh="queryTable" />
-    <!-- 删除 -->
-    <DeleteCustom :selectedRow="selectedRow"
-                  @refresh="queryTable" />
-    <!-- 恢复客户资料 -->
-    <RecoverCustom :selectedRow="selectedRow"
-                   @refresh="queryTable" />
-  </div>
-</template>
-
-<script lang="ts">
-import { defineComponent, initData, getTableColumns, getTableEvent, getBtnList, contextMenu, BtnList } from '@/common/export/table';
-
-import { filterCustomTable, CustomDetail, DeleteCustom, RecoverCustom, AddCustom } from '../../compoments';
-
-import { queryTableList, QueryCustomInfoType } from '../index';
-import { getStatusName } from '@/common/constants/enumsName';
-import { getCardTypeEnumItemName } from '@/common/constants/enumsName';
-
-export default defineComponent({
-    name: 'custom-normal',
-    components: {
-        filterCustomTable,
-        contextMenu,
-        CustomDetail,
-        DeleteCustom,
-        RecoverCustom,
-        AddCustom,
-        BtnList,
-    },
-    setup() {
-        // 表头数据
-        const { columns, registerColumn, updateColumn, filteredInfo } = getTableColumns();
-        // 表格事件
-        const { expandedRowKeys, selectedRow, Rowclick } = getTableEvent<QueryCustomInfoType>({});
-        // 表格操作按钮列表
-        const { commonBtn, forDataBtn } = getBtnList('custom_info_disabled', true);
-        // 表格列表数据
-        const { loading, tableList, queryTable } = queryTableList(4);
-        initData(() => {
-            // 获取列表数据
-            queryTable();
-            // 注册表头信息 过滤
-            registerColumn('table_pcweb_userinfo', ['userinfotype', 'nickname', 'contactname', 'mobile']);
-        });
-
-        // 查询
-        function search(value: any) {
-            filteredInfo.value = value;
-            // 更新表信息
-            updateColumn();
-        }
-
-        return {
-            columns,
-            filteredInfo,
-            expandedRowKeys,
-            selectedRow,
-            Rowclick,
-            commonBtn,
-            forDataBtn,
-            loading,
-            tableList,
-            search,
-            getStatusName,
-            getCardTypeEnumItemName,
-            queryTable,
-        };
-    },
-});
-</script>
-
-<style lang="less">
-.custom-normal {
-}
-</style
->;

+ 0 - 123
src/views/birkin-bag/custom/list/unsubmit/index.vue

@@ -1,123 +0,0 @@
-<template>
-  <!-- 客户信息: 正常 -->
-  <div class="custom_info_unsubmit"
-       :loading="loading">
-    <filterCustomTable @search="search">
-      <BtnList :btnList="commonBtn" />
-    </filterCustomTable>
-    <contextMenu :contextMenuList="forDataBtn">
-      <a-table :columns="columns"
-               class="topTable hiddenFirstCol"
-               :pagination="false"
-               :expandedRowKeys="expandedRowKeys"
-               :customRow="Rowclick"
-               rowKey="key"
-               :data-source="tableList">
-        <!-- 额外的展开行 -->
-        <template #expandedRowRender="{  }">
-          <BtnList :btnList="forDataBtn" />
-        </template>
-        <template #userinfotype="{ text }">
-          <a>{{ text === '2' ? '企业' : '个人' }}</a>
-        </template>
-        <template #status="{ text }">
-          <a>{{ getStatusName(text) }}</a>
-        </template>
-        <template #cardtype="{ text }">
-          <a>{{ getCardTypeEnumItemName(text) }}</a>
-        </template>
-      </a-table>
-    </contextMenu>
-    <!-- 新增 -->
-    <AddCustom @refresh="queryTable" />
-    <!-- 详情 -->
-    <!-- <CustomDetail :selectedRow="selectedRow"
-                  @refresh="queryTable" /> -->
-    <Middle :selectedRow="selectedRow" />
-    <!-- 修改 -->
-    <ModifyCustom :selectedRow="selectedRow"
-                  @refresh="queryTable" />
-    <!-- 删除 -->
-    <DeleteCustom :selectedRow="selectedRow"
-                  @refresh="queryTable" />
-
-  </div>
-</template>
-
-<script lang="ts">
-import { defineComponent, initData, getTableColumns, getTableEvent, getBtnList, contextMenu, BtnList } from '@/common/export/table';
-
-import { filterCustomTable, CustomDetail, ModifyCustom, DisableCustom, AddCustom, DeleteCustom } from '../../compoments';
-import { queryTableList, QueryCustomInfoType } from '../index';
-import { getStatusName } from '@/common/constants/enumsName';
-import { getCardTypeEnumItemName } from '@/common/constants/enumsName';
-import Middle from './compoments/controlModal/index.vue';
-
-export default defineComponent({
-    name: 'custom_info_unsubmit',
-    components: {
-        filterCustomTable,
-        contextMenu,
-        CustomDetail,
-        ModifyCustom,
-        DisableCustom,
-        AddCustom,
-        DeleteCustom,
-        BtnList,
-        Middle,
-    },
-    setup() {
-        // 表头数据
-        const { columns, registerColumn, updateColumn, filteredInfo } = getTableColumns();
-        // 表格事件
-        const { expandedRowKeys, selectedRow, Rowclick } = getTableEvent<QueryCustomInfoType>({});
-        // 表格操作按钮列表
-        const { commonBtn, forDataBtn } = getBtnList('custom_info_unsubmit', true);
-        // 表格列表数据
-        const { loading, tableList, queryTable } = queryTableList(1);
-        initData(() => {
-            // 获取列表数据
-            queryTable();
-            // 注册表头信息 过滤
-            registerColumn('table_pcweb_userinfo', ['userinfotype', 'nickname', 'contactname', 'mobile']);
-        });
-
-        // 查询
-        function search(value: any) {
-            filteredInfo.value = value;
-            // 更新表信息
-            updateColumn();
-        }
-
-        return {
-            columns,
-            filteredInfo,
-            expandedRowKeys,
-            selectedRow,
-            Rowclick,
-            commonBtn,
-            forDataBtn,
-            loading,
-            tableList,
-            search,
-            DeleteCustom,
-            getStatusName,
-            getCardTypeEnumItemName,
-            queryTable,
-        };
-    },
-});
-</script>
-
-<style lang="less">
-.custom_info_unsubmit {
-    .topTable {
-        .operBtn.ant-btn {
-            margin-top: 0;
-            margin-bottom: 0;
-            height: 26px;
-            line-height: 26px;
-        }
-    }
-}
-</style>

+ 0 - 12
src/views/birkin-bag/custom/setup.ts

@@ -1,12 +0,0 @@
-import { ResultInfo } from "@/common/methods/request/interface";
-
-
-
-/************** 接口相关提示 **************** /
- *
- */
-
-export const ChangeCustomInfoSign = new Map<number, ResultInfo>([
-    [1, ['修改客户资料草稿成功', '修改客户资料草稿失败:']],
-    [2, ['修改客户资料成功', '修改客户资料失败:']],
-])

+ 72 - 0
src/views/information/custom/compoments/controlModal/index.vue

@@ -0,0 +1,72 @@
+<template>
+  <div>
+    <!-- 详情 -->
+    <Detail :selectedRow="selectedRow" />
+    <!-- 删除客户资料 -->
+    <Delete :selectedRow="selectedRow"
+            @refresh="refresh" />
+    <!-- 新增客户资料 -->
+    <Add @refresh="refresh" />
+    <!-- 修改 -->
+    <Modify :selectedRow="selectedRow"
+            @refresh="refresh" />
+    <!-- 恢复客户资料 -->
+    <Recover :selectedRow="selectedRow"
+             @refresh="refresh" />
+    <!-- 停用 -->
+    <Disable :selectedRow="selectedRow"
+             @refresh="refresh" />
+    <!-- 撤销 -->
+    <Cancel :selectedRow="selectedRow"
+            @refresh="refresh" />
+    <!-- 审核客户资料 -->
+    <Check :selectedRow="selectedRow"
+           @refresh="refresh" />
+  </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 Delete from '../delete/index.vue';
+import Add from '../add/index.vue';
+import Modify from '../modify/index.vue';
+import Recover from '../recover/index.vue';
+import Disable from '../disable/index.vue';
+import Cancel from '../cancel/index.vue';
+import Check from '../check/index.vue';
+
+export default defineComponent({
+    name: 'custom-control-modal',
+    components: { Detail, Delete, Add, Modify, Recover, Disable, Cancel, Check },
+    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>;
+

+ 1 - 1
src/views/information/custom/compoments/delete/index.vue

@@ -38,7 +38,7 @@ export default defineComponent({
     setup(props, context) {
         const { visible, cancel } = closeModal('custom_info_btn_delete');
         const loading = ref<boolean>(false);
-
+        console.log('是否确认删除客户资料');
         function submit() {
             Modal.confirm({
                 title: '是否确认删除客户资料',

+ 4 - 4
src/views/information/custom/compoments/detail/index.vue

@@ -2,8 +2,8 @@
   <!-- 客户资料详情-->
   <a-modal class="add-custom custom-detail"
            title="客户资料详情"
-           v-model:visible="visible"
            centered
+           v-model:visible="visible"
            :maskClosable="maskClosableFlag"
            @cancel="cancel"
            width="890px">
@@ -18,7 +18,7 @@
 </template>
 
 <script lang="ts">
-import { defineComponent, PropType, ref } from 'vue';
+import { computed, defineComponent, PropType, ref } from 'vue';
 import { closeModal } from '@/common/setup/modal/index';
 import { QueryCustomInfoType } from '@/services/go/ermcp/customInfo/interface';
 import Detail from '../common-detail/index.vue';
@@ -32,13 +32,13 @@ export default defineComponent({
             default: {},
         },
     },
-    setup(props) {
+    setup(props, context) {
         const { visible, cancel } = closeModal('detail');
         const loading = ref<boolean>(false);
         const maskClosableFlag = ref<boolean>(false);
         return {
-            visible,
             cancel,
+            visible,
             loading,
             maskClosableFlag,
         };

+ 3 - 14
src/views/information/custom/list/checkpending/index.vue

@@ -28,21 +28,8 @@
         </template>
       </a-table>
     </contextMenu>
-    <!-- 新增 -->
-    <AddCustom />
-    <!-- 详情 -->
-    <CustomDetail :selectedRow="selectedRow" />
-    <!-- 修改 -->
-    <ModifyCustom :selectedRow="selectedRow"
-                  @refresh="queryTable" />
-    <!-- 停用 -->
-    <DisableCustom />
-    <!-- 撤销 -->
-    <Cancel :selectedRow="selectedRow"
+    <Middle :selectedRow="selectedRow"
             @refresh="queryTable" />
-    <!-- 审核客户资料 -->
-    <Check :selectedRow="selectedRow"
-           @refresh="queryTable" />
   </div>
 </template>
 
@@ -53,6 +40,7 @@ import { filterCustomTable, CustomDetail, ModifyCustom, DisableCustom, AddCustom
 import { queryTableList, QueryCustomInfoType } from '../index';
 import { getStatusName } from '@/common/constants/enumsName';
 import { getCardTypeEnumItemName } from '@/common/constants/enumsName';
+import Middle from '@/views/information/custom/compoments/controlModal/index.vue';
 
 export default defineComponent({
     name: 'custom_info_checkpending',
@@ -66,6 +54,7 @@ export default defineComponent({
         BtnList,
         Cancel,
         Check,
+        Middle,
     },
     setup() {
         // 表头数据

+ 4 - 11
src/views/information/custom/list/normal-use/index.vue

@@ -28,16 +28,8 @@
         </template>
       </a-table>
     </contextMenu>
-    <!-- 新增 -->
-    <AddCustom @refresh="queryTable" />
-    <!-- 详情 -->
-    <CustomDetail :selectedRow="selectedRow"
-                  @refresh="queryTable" />
-    <!--        &lt;!&ndash; 修改 &ndash;&gt;-->
-    <!--        <ModifyCustom :selectedRow="selectedRow" @refresh="queryTable"/>-->
-    <!-- 停用 -->
-    <DisableCustom :selectedRow="selectedRow"
-                   @refresh="queryTable" />
+    <Middle :selectedRow="selectedRow"
+            @refresh="queryTable" />
   </div>
 </template>
 
@@ -48,7 +40,7 @@ import { filterCustomTable, CustomDetail, ModifyCustom, DisableCustom, AddCustom
 import { queryTableList, QueryCustomInfoType } from '../index';
 import { getStatusName } from '@/common/constants/enumsName';
 import { getCardTypeEnumItemName } from '@/common/constants/enumsName';
-
+import Middle from '@/views/information/custom/compoments/controlModal/index.vue';
 export default defineComponent({
     name: 'custom-normal',
     components: {
@@ -59,6 +51,7 @@ export default defineComponent({
         DisableCustom,
         AddCustom,
         BtnList,
+        Middle,
     },
     setup() {
         // 表头数据

+ 5 - 13
src/views/information/custom/list/stop-use/index.vue

@@ -28,28 +28,20 @@
         </template>
       </a-table>
     </contextMenu>
-    <!-- 新增 -->
-    <AddCustom />
-    <!-- 详情 -->
-    <CustomDetail :selectedRow="selectedRow"
-                  @refresh="queryTable" />
-    <!-- 删除 -->
-    <DeleteCustom :selectedRow="selectedRow"
-                  @refresh="queryTable" />
-    <!-- 恢复客户资料 -->
-    <RecoverCustom :selectedRow="selectedRow"
-                   @refresh="queryTable" />
+    <Middle :selectedRow="selectedRow"
+            @refresh="queryTable" />
   </div>
 </template>
 
 <script lang="ts">
 import { defineComponent, initData, getTableColumns, getTableEvent, getBtnList, contextMenu, BtnList } from '@/common/export/table';
 
-import { filterCustomTable, CustomDetail, DeleteCustom, RecoverCustom, AddCustom } from '../../compoments';
+import { filterCustomTable, CustomDetail, RecoverCustom, AddCustom } from '../../compoments';
 
 import { queryTableList, QueryCustomInfoType } from '../index';
 import { getStatusName } from '@/common/constants/enumsName';
 import { getCardTypeEnumItemName } from '@/common/constants/enumsName';
+import Middle from '@/views/information/custom/compoments/controlModal/index.vue';
 
 export default defineComponent({
     name: 'custom-normal',
@@ -57,10 +49,10 @@ export default defineComponent({
         filterCustomTable,
         contextMenu,
         CustomDetail,
-        DeleteCustom,
         RecoverCustom,
         AddCustom,
         BtnList,
+        Middle,
     },
     setup() {
         // 表头数据

+ 0 - 58
src/views/information/custom/list/unsubmit/compoments/controlModal/index.vue

@@ -1,58 +0,0 @@
-<template>
-  <div>
-    <!-- 详情 -->
-    <Detail :selectedRow="selectedRow"
-            @cancel="cancelDetail"
-            v-if="visibleDetail" />
-    <!-- 删除客户资料 -->
-    <Delete :selectedRow="selectedRow"
-            @cancel="cancelDelete"
-            @refresh="refreshDelete"
-            v-if="visibleDelete" />
-  </div>
-</template>
-
-<script lang="ts">
-import { defineComponent, PropType } from 'vue';
-import { QueryCustomInfoType } from '@/services/go/ermcp/customInfo/interface';
-import { closeModal } from '@/common/setup/modal';
-import Detail from '@/views/birkin-bag/custom/compoments/detail/index.vue';
-import Delete from '../delete/index.vue';
-
-export default defineComponent({
-    name: 'custom-detail-modal',
-    components: { Detail, Delete },
-    props: {
-        selectedRow: {
-            type: Object as PropType<QueryCustomInfoType>,
-            default: {},
-        },
-    },
-    setup(props, context) {
-        // 详情
-        const { visible: visibleDetail, cancel: cancelDetail } = closeModal('detail');
-        // 删除客户资料
-        const { visible: visibleDelete, cancel: cancelDelete, refresh: refreshDelete } = closeModal('custom_info_btn_delete', context);
-        return {
-            visibleDetail,
-            cancelDetail,
-            visibleDelete,
-            cancelDelete,
-            refreshDelete,
-        };
-    },
-});
-</script>
-
-<style lang="less">
-.custom-detail {
-    .ant-form.inlineForm {
-        margin-top: 20px;
-    }
-    .upload {
-        .look {
-            margin-left: 0;
-        }
-    }
-}
-</style>;

+ 0 - 68
src/views/information/custom/list/unsubmit/compoments/delete/index.vue

@@ -1,68 +0,0 @@
-<template>
-  <!-- 删除客户资料-->
-  <a-modal class="commonModal recover-custom"
-           title="删除客户资料"
-           :visible="true"
-           @cancel="cancel"
-           centered
-           width="890px">
-    <template #footer>
-      <a-button key="submit"
-                type="primary"
-                :loading="loading"
-                @click="submit">删除客户资料
-      </a-button>
-    </template>
-    <Detail :selectedRow="selectedRow" />
-  </a-modal>
-</template>
-
-<script lang="ts">
-import { defineComponent, PropType, ref } from 'vue';
-import { DeleteUserReq, QueryCustomInfoType } from '@/services/go/ermcp/customInfo/interface';
-import { Modal } from 'ant-design-vue';
-import { requestResultLoadingAndInfo } from '@/common/methods/request/resultInfo';
-import { QueryDeleteUserInfoApply } from '@/services/go/ermcp/customInfo';
-import Detail from '@/views/information/custom/compoments/common-detail/index.vue';
-
-export default defineComponent({
-    name: 'recover-custom',
-    components: { Detail },
-    props: {
-        selectedRow: {
-            type: Object as PropType<QueryCustomInfoType>,
-            default: {},
-        },
-    },
-    setup(props, context) {
-        const loading = ref<boolean>(false);
-        function submit() {
-            Modal.confirm({
-                title: '是否确认删除客户资料',
-                okText: '确认删除',
-                cancelText: '取消',
-                onOk() {
-                    let reqParams: DeleteUserReq = {
-                        userID: props.selectedRow.userid,
-                    };
-                    requestResultLoadingAndInfo(QueryDeleteUserInfoApply, reqParams, loading, ['删除成功', '删除失败:']).then(() => {
-                        context.emit('refresh');
-                    });
-                },
-                onCancel() {},
-            });
-        }
-
-        return {
-            submit,
-            loading,
-        };
-    },
-});
-</script>
-
-<style lang="less">
-.recover-custom {
-}
-</style
->;

+ 4 - 17
src/views/information/custom/list/unsubmit/index.vue

@@ -28,30 +28,19 @@
         </template>
       </a-table>
     </contextMenu>
-    <!-- 新增 -->
-    <AddCustom @refresh="queryTable" />
-    <!-- 详情 -->
-    <!-- <CustomDetail :selectedRow="selectedRow"
-                  @refresh="queryTable" /> -->
-    <Middle :selectedRow="selectedRow" @refresh="queryTable"/>
-    <!-- 修改 -->
-    <ModifyCustom :selectedRow="selectedRow"
-                  @refresh="queryTable" />
-    <!-- 删除 -->
-    <!-- <DeleteCustom :selectedRow="selectedRow"
-                  @refresh="queryTable" /> -->
-
+    <Middle :selectedRow="selectedRow"
+            @refresh="queryTable" />
   </div>
 </template>
 
 <script lang="ts">
 import { defineComponent, initData, getTableColumns, getTableEvent, getBtnList, contextMenu, BtnList } from '@/common/export/table';
 
-import { filterCustomTable, CustomDetail, ModifyCustom, DisableCustom, AddCustom, DeleteCustom } from '../../compoments';
+import { filterCustomTable, CustomDetail, ModifyCustom, DisableCustom, AddCustom } from '../../compoments';
 import { queryTableList, QueryCustomInfoType } from '../index';
 import { getStatusName } from '@/common/constants/enumsName';
 import { getCardTypeEnumItemName } from '@/common/constants/enumsName';
-import Middle from './compoments/controlModal/index.vue';
+import Middle from '@/views/information/custom/compoments/controlModal/index.vue';
 
 export default defineComponent({
     name: 'custom_info_unsubmit',
@@ -62,7 +51,6 @@ export default defineComponent({
         ModifyCustom,
         DisableCustom,
         AddCustom,
-        DeleteCustom,
         BtnList,
         Middle,
     },
@@ -100,7 +88,6 @@ export default defineComponent({
             loading,
             tableList,
             search,
-            DeleteCustom,
             getStatusName,
             getCardTypeEnumItemName,
             queryTable,