大宝管理后台代码
1
zzzz
2024-04-21 cd75d091a8ebbe28499f4326ba31afe665a942f4
1
11 files modified
1166 ■■■■■ changed files
.env.development 4 ●●●● patch | view | raw | blame | history
src/api/newshares.js 64 ●●●●● patch | view | raw | blame | history
src/config/router.config.js 260 ●●●● patch | view | raw | blame | history
src/views/newshares/dazonglist.vue 6 ●●●● patch | view | raw | blame | history
src/views/newshares/newshareslist.vue 40 ●●●●● patch | view | raw | blame | history
src/views/position/components/financing-flat.vue 9 ●●●●● patch | view | raw | blame | history
src/views/position/components/financing-hold.vue 8 ●●●●● patch | view | raw | blame | history
src/views/product/shares.vue 32 ●●●● patch | view | raw | blame | history
src/views/risksetting/productsetting.vue 4 ●●●● patch | view | raw | blame | history
src/views/risksetting/sharessetting.vue 734 ●●●● patch | view | raw | blame | history
src/views/userlist/components/EditUserinfodialog.vue 5 ●●●●● patch | view | raw | blame | history
.env.development
@@ -1,8 +1,8 @@
NODE_ENV=development
VUE_APP_PREVIEW=true
# VUE_APP_API_BASE_URL=http://www.jqydl.com:8091/
 VUE_APP_API_BASE_URL=https://api.3falcon.com/
#  VUE_APP_API_BASE_URL=http://192.168.0.101:8091/
#  VUE_APP_API_BASE_URL=https://api.3falcon.com/
 VUE_APP_API_BASE_URL=http://192.168.0.106:8091/
# VUE_APP_API_BASE_URL=https://www.rksv.store:8091/
# VUE_APP_API_BASE_URL=http://www.ojwuf.com:8091/
# VUE_APP_API_BASE_URL=https://192.168.0.102:8091/
src/api/newshares.js
@@ -12,7 +12,7 @@
  getDzListByAdmin: '/admin/stockDz/getDzListByAdmin.do', // 大宗交易列表
  addByAdmin: '/admin/stockDz/addByAdmin.do', // 大宗交易添加
  updateByAdmin: '/admin/stockDz/updateByAdmin.do', // 大宗交易修改
  deleteByAdmin: '/admin/stockDz/deleteByAdmin.do' // 大宗交易删除
  deleteByAdmin: '/admin/stockDz/deleteByAdmin.do', // 大宗交易删除
}
/**
@@ -27,98 +27,112 @@
 * @returns {*}
 */
export function subscribelist (parameter) {
export function subscribelist(parameter) {
  return request({
    url: userApi.subscribelist,
    method: 'post',
    data: qs.stringify(parameter)
    data: qs.stringify(parameter),
  })
}
export function subscribeadd (parameter) {
export function subscribeadd(parameter) {
  return request({
    url: userApi.subscribeadd,
    method: 'post',
    data: qs.stringify(parameter)
    data: qs.stringify(parameter),
  })
}
export function subscribeupdate (parameter) {
export function subscribeupdate(parameter) {
  return request({
    url: userApi.subscribeupdate,
    method: 'post',
    data: qs.stringify(parameter)
    data: qs.stringify(parameter),
  })
}
export function subscribedel (parameter) {
export function subscribedel(parameter) {
  return request({
    url: userApi.subscribedel,
    method: 'post',
    data: qs.stringify(parameter)
    data: qs.stringify(parameter),
  })
}
export function getStockSubscribeList (parameter) {
export function getStockSubscribeList(parameter) {
  return request({
    url: userApi.getStockSubscribeList,
    method: 'post',
    data: qs.stringify(parameter)
    data: qs.stringify(parameter),
  })
}
export function saveStockSubscribe (parameter) {
export function saveStockSubscribe(parameter) {
  return request({
    url: userApi.saveStockSubscribe,
    method: 'post',
    data: qs.stringify(parameter)
    data: qs.stringify(parameter),
  })
}
export function delStockSubscribe (parameter) {
export function delStockSubscribe(parameter) {
  return request({
    url: userApi.delStockSubscribe,
    method: 'post',
    data: qs.stringify(parameter)
    data: qs.stringify(parameter),
  })
}
export function addUserPosition (parameter) {
export function addUserPosition(parameter) {
  return request({
    url: userApi.addUserPosition,
    method: 'post',
    data: qs.stringify(parameter)
    data: qs.stringify(parameter),
  })
}
export function getDzListByAdmin (parameter) {
export function getDzListByAdmin(parameter) {
  return request({
    url: userApi.getDzListByAdmin,
    method: 'post',
    data: qs.stringify(parameter)
    data: qs.stringify(parameter),
  })
}
export function addByAdmin (parameter) {
export function addByAdmin(parameter) {
  return request({
    url: userApi.addByAdmin,
    method: 'post',
    data: qs.stringify(parameter)
    data: qs.stringify(parameter),
  })
}
export function updateByAdmin (parameter) {
export function updateByAdmin(parameter) {
  return request({
    url: userApi.updateByAdmin,
    method: 'post',
    data: qs.stringify(parameter)
    data: qs.stringify(parameter),
  })
}
export function deleteByAdmin (parameter) {
export function deleteByAdmin(parameter) {
  return request({
    url: userApi.deleteByAdmin,
    method: 'post',
    data: qs.stringify(parameter)
    data: qs.stringify(parameter),
  })
}
export function queryStockConfig(parameter) {
  return request({
    url: '/admin/stock/config/queryStockConfig.do',
    method: 'post',
    data: qs.stringify(parameter),
  })
}
export function updateConfig(parameter) {
  return request({
    url: '/admin/stock/config/updateConfig.do',
    method: 'post',
    data: qs.stringify(parameter),
  })
}
src/config/router.config.js
@@ -4,7 +4,7 @@
const RouteView = {
  name: 'RouteView',
  render: (h) => h('router-view')
  render: (h) => h('router-view'),
}
export const asyncRouterMap = [
@@ -39,9 +39,9 @@
            path: '/dashboard/workplace',
            name: 'Workplace',
            component: () => import('@/views/dashboard/Workplace'),
            meta: { title: 'menu.dashboard.workplace', keepAlive: true, permission: ['dashboard'] }
          }
        ]
            meta: { title: 'menu.dashboard.workplace', keepAlive: true, permission: ['dashboard'] },
          },
        ],
      },
      {
        path: '/userlist',
@@ -53,15 +53,15 @@
            path: '/userlist/index',
            name: 'Userlist',
            component: () => import('@/views/userlist/index'),
            meta: { title: '用户列表', keepAlive: true, permission: ['userlist'] }
            meta: { title: '用户列表', keepAlive: true, permission: ['userlist'] },
          },
          {
            path: '/userlist/agentlist',
            name: 'Agentlist',
            component: () => import('@/views/userlist/agentlist'),
            meta: { title: '代理列表', keepAlive: true, permission: ['agentlist'] }
          }
        ]
            meta: { title: '代理列表', keepAlive: true, permission: ['agentlist'] },
          },
        ],
      },
      // {
      //   path: '/allotment',
@@ -124,14 +124,14 @@
            path: '/product/shares',
            name: 'shares',
            component: () => import('@/views/product/shares'),
            meta: { title: '股票产品', keepAlive: true, permission: ['shares'] }
            meta: { title: '股票产品', keepAlive: true, permission: ['shares'] },
          },
          {
            path: '/product/markettrading',
            name: 'markettrading',
            component: () => import('@/views/product/markettrading'),
            meta: { title: '盘前交易', keepAlive: true, permission: ['markettrading'] }
          }
            meta: { title: '盘前交易', keepAlive: true, permission: ['markettrading'] },
          },
          // {
          //   path: '/product/index',
          //   name: 'index',
@@ -150,7 +150,7 @@
          //   component: () => import('@/views/product/futures'),
          //   meta: { title: '期货产品', keepAlive: true, permission: ['futures'] }
          // },
        ]
        ],
      },
      // 持仓管理
      {
@@ -163,15 +163,15 @@
            path: '/position/financing',
            name: 'financing',
            component: () => import('@/views/position/financing'),
            meta: { title: '持仓管理', keepAlive: true, permission: ['financing'] }
            meta: { title: '持仓管理', keepAlive: true, permission: ['financing'] },
          },
          {
            path: '/position/createfinancing',
            name: 'createfinancing',
            component: () => import('@/views/position/createFinancing'),
            meta: { title: '创建股票持仓', keepAlive: true, permission: ['createfinancing'] }
          }
        ]
          // {
          //   path: '/position/createfinancing',
          //   name: 'createfinancing',
          //   component: () => import('@/views/position/createFinancing'),
          //   meta: { title: '创建股票持仓', keepAlive: true, permission: ['createfinancing'] },
          // },
        ],
      },
      // 新股管理
      {
@@ -184,21 +184,21 @@
            path: '/newshares/newshareslist',
            name: 'newshareslist',
            component: () => import('@/views/newshares/newshareslist'),
            meta: { title: '新股列表', keepAlive: true, permission: ['newshareslist'] }
            meta: { title: '新股列表', keepAlive: true, permission: ['newshareslist'] },
          },
          {
            path: '/newshares/newsharesrecord',
            name: 'newsharesrecord',
            component: () => import('@/views/newshares/newsharesrecord'),
            meta: { title: '申购记录', keepAlive: true, permission: ['newsharesrecord'] }
          }
          // {
          //   path: '/newshares/dazonglist',
          //   name: 'dazonglist',
          //   component: () => import('@/views/newshares/dazonglist'),
          //   meta: { title: '大宗交易列表', keepAlive: true, permission: ['dazonglist'] },
          // },
        ]
            meta: { title: '申购记录', keepAlive: true, permission: ['newsharesrecord'] },
          },
          {
            path: '/newshares/dazonglist',
            name: 'dazonglist',
            component: () => import('@/views/newshares/dazonglist'),
            meta: { title: '大宗交易列表', keepAlive: true, permission: ['dazonglist'] },
          },
        ],
      },
      // 资金管理
      {
@@ -211,14 +211,14 @@
            path: '/capital/rechargelist',
            name: 'rechargelist',
            component: () => import('@/views/capital/rechargelist'),
            meta: { title: '充值列表', keepAlive: true, permission: ['rechargelist'] }
            meta: { title: '充值列表', keepAlive: true, permission: ['rechargelist'] },
          },
          {
            path: '/capital/withdrawallist',
            name: 'withdrawallist',
            component: () => import('@/views/capital/withdrawallist'),
            meta: { title: '提现列表', keepAlive: true, permission: ['withdrawallist'] }
          }
            meta: { title: '提现列表', keepAlive: true, permission: ['withdrawallist'] },
          },
          // {
          //   path: '/capital/fundrecords',
          //   name: 'fundrecords',
@@ -243,7 +243,7 @@
          //   component: () => import('@/views/capital/Withdrawal_channel'),
          //   meta: { title: '提现通道', keepAlive: true, permission: ['Withdrawal_channel'] },
          // },
        ]
        ],
      },
      // 日志管理
      {
@@ -256,8 +256,8 @@
            path: '/logmanage/loginlog',
            name: 'loginlog',
            component: () => import('@/views/logmanage/loginlog'),
            meta: { title: '登录日志', keepAlive: true, permission: ['loginlog'] }
          }
            meta: { title: '登录日志', keepAlive: true, permission: ['loginlog'] },
          },
          // {
          //   path: '/logmanage/smslog',
          //   name: 'smslog',
@@ -276,7 +276,7 @@
          //   component: () => import('@/views/logmanage/stationmessage'),
          //   meta: { title: '站内消息', keepAlive: true, permission: ['stationmessage'] },
          // },
        ]
        ],
      },
      // 管理设置
@@ -290,9 +290,9 @@
            path: '/managesettings/managelist',
            name: 'managelist',
            component: () => import('@/views/managesettings/managelist'),
            meta: { title: '管理列表', keepAlive: true, permission: ['managelist'] }
          }
        ]
            meta: { title: '管理列表', keepAlive: true, permission: ['managelist'] },
          },
        ],
      },
      // 风控设置
      {
@@ -305,20 +305,20 @@
            path: '/risksetting/productsetting',
            name: 'productsetting',
            component: () => import('@/views/risksetting/productsetting'),
            meta: { title: '产品配置', keepAlive: true, permission: ['productsetting'] }
            meta: { title: '产品配置', keepAlive: true, permission: ['productsetting'] },
          },
          {
            path: '/risksetting/sharessetting',
            name: 'sharessetting',
            component: () => import('@/views/risksetting/sharessetting'),
            meta: { title: '股票风控', keepAlive: true, permission: ['sharessetting'] }
            meta: { title: '股票风控', keepAlive: true, permission: ['sharessetting'] },
          },
          {
            path: '/risksetting/timelist',
            name: 'timelist',
            component: () => import('@/views/risksetting/timelist'),
            meta: { title: '股票时间列表', keepAlive: true, permission: ['timelist'] }
          }
            meta: { title: '股票时间列表', keepAlive: true, permission: ['timelist'] },
          },
          // {
          //   path: '/risksetting/indexsetting',
          //   name: 'indexsetting',
@@ -332,7 +332,7 @@
          //   component: () => import('@/views/risksetting/spreadsetting'),
          //   meta: { title: '点差设置', keepAlive: true, permission: ['spreadsetting'] },
          // },
        ]
        ],
      },
      // 系统设置
      {
@@ -345,21 +345,21 @@
            path: '/allsetting/noticesetting',
            name: 'noticesetting',
            component: () => import('@/views/allsetting/noticesetting'),
            meta: { title: '公告设置', keepAlive: true, permission: ['noticesetting'] }
            meta: { title: '公告设置', keepAlive: true, permission: ['noticesetting'] },
          },
          {
            path: '/allsetting/bannersetting',
            name: 'bannersetting',
            component: () => import('@/views/allsetting/bannersetting'),
            meta: { title: '轮播图设置', keepAlive: true, permission: ['bannersetting'] }
            meta: { title: '轮播图设置', keepAlive: true, permission: ['bannersetting'] },
          },
          {
            path: '/allsetting/paysetting',
            name: 'paysetting',
            component: () => import('@/views/allsetting/paysetting'),
            meta: { title: '支付渠道设置', keepAlive: true, permission: ['paysetting'] }
          }
        ]
            meta: { title: '支付渠道设置', keepAlive: true, permission: ['paysetting'] },
          },
        ],
      },
      // forms
@@ -547,7 +547,7 @@
                path: '/account/settings/basic',
                name: 'BasicSettings',
                component: () => import('@/views/account/settings/BasicSetting'),
                meta: { title: 'account.settings.menuMap.basic', hidden: true, permission: ['user'] }
                meta: { title: 'account.settings.menuMap.basic', hidden: true, permission: ['user'] },
              },
              {
                path: '/account/settings/security',
@@ -557,14 +557,14 @@
                  title: 'account.settings.menuMap.security',
                  hidden: true,
                  keepAlive: true,
                  permission: ['user']
                }
                  permission: ['user'],
                },
              },
              {
                path: '/account/settings/custom',
                name: 'CustomSettings',
                component: () => import('@/views/account/settings/Custom'),
                meta: { title: 'account.settings.menuMap.custom', hidden: true, keepAlive: true, permission: ['user'] }
                meta: { title: 'account.settings.menuMap.custom', hidden: true, keepAlive: true, permission: ['user'] },
              },
              {
                path: '/account/settings/binding',
@@ -574,8 +574,8 @@
                  title: 'account.settings.menuMap.binding',
                  hidden: true,
                  keepAlive: true,
                  permission: ['user']
                }
                  permission: ['user'],
                },
              },
              {
                path: '/account/settings/notification',
@@ -585,71 +585,71 @@
                  title: 'account.settings.menuMap.notification',
                  hidden: true,
                  keepAlive: true,
                  permission: ['user']
                }
              }
            ]
          }
        ]
      },
      {
        path: '/loanmanage',
        redirect: '/loanmanage/index',
        component: RouteView,
        meta: { title: '贷款管理', icon: 'usergroup-delete', permission: ['loanmanage'] },
        children: [
          {
            path: '/loanmanage/index',
            name: 'Loanmanage',
            component: () => import('@/views/loanmanage/index'),
            meta: { title: '贷款列表', keepAlive: true, permission: ['loanmanage'] }
                  permission: ['user'],
                },
              },
            ],
          },
          {
            path: '/loanmanage/institution',
            name: 'institution',
            component: () => import('@/views/loanmanage/institution'),
            meta: { title: '贷款机构', keepAlive: true, permission: ['institution'] }
          }
          // {
          //   path: '/loanmanage/institution',
          //   name: 'Institution',
          //   component: () => import('@/views/loanmanage/institution'),
          //   meta: { title: '贷款机构', keepAlive: true, permission: ['institution'] }
          // }
          // {
          //   path: '/loanmanage/index',
          //   name: 'Loanmanage',
          //   component: () => import('@/views/loanmanage/index'),
          //   meta: { title: '贷款机构', keepAlive: true, permission: ['loanmanage'] }
          // }
        ]
        ],
      },
      {
        path: '/interesttreasure',
        redirect: '/interesttreasure/index',
        component: RouteView,
        meta: { title: '利息宝管理', icon: 'usergroup-delete', permission: ['interesttreasure'] },
        children: [
          {
            path: '/interesttreasure/index',
            name: 'InterestTreasure',
            component: () => import('@/views/interesttreasure/index'),
            meta: { title: '利息宝列表', keepAlive: true, permission: ['interesttreasure'] }
          },
          {
            path: '/interesttreasure/set',
            name: 'set',
            component: () => import('@/views/interesttreasure/set'),
            meta: { title: '利息宝设置', keepAlive: true, permission: ['set'] }
          }
          // {
          //   path: '/userlist/agentlist',
          //   name: 'Agentlist',
          //   component: () => import('@/views/userlist/agentlist'),
          //   meta: { title: '代理列表', keepAlive: true, permission: ['agentlist'] }
          // }
        ]
      }
      // {
      //   path: '/loanmanage',
      //   redirect: '/loanmanage/index',
      //   component: RouteView,
      //   meta: { title: '贷款管理', icon: 'usergroup-delete', permission: ['loanmanage'] },
      //   children: [
      //     {
      //       path: '/loanmanage/index',
      //       name: 'Loanmanage',
      //       component: () => import('@/views/loanmanage/index'),
      //       meta: { title: '贷款列表', keepAlive: true, permission: ['loanmanage'] }
      //     },
      //     {
      //       path: '/loanmanage/institution',
      //       name: 'institution',
      //       component: () => import('@/views/loanmanage/institution'),
      //       meta: { title: '贷款机构', keepAlive: true, permission: ['institution'] }
      //     }
      //     // {
      //     //   path: '/loanmanage/institution',
      //     //   name: 'Institution',
      //     //   component: () => import('@/views/loanmanage/institution'),
      //     //   meta: { title: '贷款机构', keepAlive: true, permission: ['institution'] }
      //     // }
      //     // {
      //     //   path: '/loanmanage/index',
      //     //   name: 'Loanmanage',
      //     //   component: () => import('@/views/loanmanage/index'),
      //     //   meta: { title: '贷款机构', keepAlive: true, permission: ['loanmanage'] }
      //     // }
      //   ]
      // },
      // {
      //   path: '/interesttreasure',
      //   redirect: '/interesttreasure/index',
      //   component: RouteView,
      //   meta: { title: '利息宝管理', icon: 'usergroup-delete', permission: ['interesttreasure'] },
      //   children: [
      //     {
      //       path: '/interesttreasure/index',
      //       name: 'InterestTreasure',
      //       component: () => import('@/views/interesttreasure/index'),
      //       meta: { title: '利息宝列表', keepAlive: true, permission: ['interesttreasure'] }
      //     },
      //     {
      //       path: '/interesttreasure/set',
      //       name: 'set',
      //       component: () => import('@/views/interesttreasure/set'),
      //       meta: { title: '利息宝设置', keepAlive: true, permission: ['set'] }
      //     }
      //     // {
      //     //   path: '/userlist/agentlist',
      //     //   name: 'Agentlist',
      //     //   component: () => import('@/views/userlist/agentlist'),
      //     //   meta: { title: '代理列表', keepAlive: true, permission: ['agentlist'] }
      //     // }
      //   ]
      // }
      // other
      /*
      {
@@ -711,13 +711,13 @@
          }
        ]
      } */
    ]
    ],
  },
  {
    path: '*',
    redirect: '/404',
    hidden: true
  }
    hidden: true,
  },
]
/**
@@ -734,28 +734,28 @@
      {
        path: 'login',
        name: 'login',
        component: () => import(/* webpackChunkName: "user" */ '@/views/user/Login')
        component: () => import(/* webpackChunkName: "user" */ '@/views/user/Login'),
      },
      {
        path: 'register',
        name: 'register',
        component: () => import(/* webpackChunkName: "user" */ '@/views/user/Register')
        component: () => import(/* webpackChunkName: "user" */ '@/views/user/Register'),
      },
      {
        path: 'register-result',
        name: 'registerResult',
        component: () => import(/* webpackChunkName: "user" */ '@/views/user/RegisterResult')
        component: () => import(/* webpackChunkName: "user" */ '@/views/user/RegisterResult'),
      },
      {
        path: 'recover',
        name: 'recover',
        component: undefined
      }
    ]
        component: undefined,
      },
    ],
  },
  {
    path: '/404',
    component: () => import(/* webpackChunkName: "fail" */ '@/views/exception/404')
  }
    component: () => import(/* webpackChunkName: "fail" */ '@/views/exception/404'),
  },
]
src/views/newshares/dazonglist.vue
@@ -163,7 +163,7 @@
        },
        {
          title: '新股代码',
          dataIndex: 'stockCode',
          dataIndex: 'stockSpell',
          align: 'center',
        },
        {
@@ -344,7 +344,7 @@
      this.loading = true
      getDzListByAdmin(this.queryParam).then((res) => {
        this.datalist = res.data
        // this.pagination.total = res.data.total
        this.pagination.total = res.data.total
        this.loading = false
      })
    },
@@ -355,7 +355,7 @@
    },
    onSizeChange(current, pageSize) {
      this.queryParam.pageNum = current
      this.pagination.current = page
      this.queryParam.pageSize = pageSize
      this.getlist()
    },
src/views/newshares/newshareslist.vue
@@ -161,13 +161,13 @@
        </a-row>
        <a-row :gutter="48">
          <a-col :md="12" :lg="12" :sm="12">
            <a-form-item label="股票类型" :labelCol="labelCol" :wrapperCol="wrapperCol">
            <a-form-item label="显示状态" :labelCol="labelCol" :wrapperCol="wrapperCol">
              <a-select
                placeholder="请选择股票类型"
                v-decorator="['stockType', { rules: [{ required: true, message: '请选择股票类型' }] }]"
                placeholder="请选择显示状态"
                v-decorator="['zt', { rules: [{ required: true, message: '请选择显示状态' }] }]"
              >
                <a-select-option :value="'nse'">nse</a-select-option>
                <a-select-option :value="'bse'">bse</a-select-option>
                <a-select-option :value="0">显示</a-select-option>
                <a-select-option :value="1">隐藏</a-select-option>
              </a-select>
            </a-form-item>
          </a-col>
@@ -185,14 +185,15 @@
        </a-row>
        <a-row :gutter="48">
          <a-col :md="12" :lg="12" :sm="12">
            <a-form-item label="显示状态" :labelCol="labelCol" :wrapperCol="wrapperCol">
              <a-select
                placeholder="请选择显示状态"
                v-decorator="['zt', { rules: [{ required: true, message: '请选择显示状态' }] }]"
            <a-form-item label="认缴时间" :labelCol="labelCol" :wrapperCol="wrapperCol">
              <a-date-picker
                show-time
                style="width: 100%"
                @change="getsubscriptionTime"
                v-decorator="['subscriptionTime', { rules: [{ required: true, message: '请填写认缴时间' }] }]"
                format="YYYY-MM-DD HH:mm:ss"
              >
                <a-select-option :value="0">显示</a-select-option>
                <a-select-option :value="1">隐藏</a-select-option>
              </a-select>
              </a-date-picker>
            </a-form-item>
          </a-col>
          <a-col :md="12" :lg="12" :sm="12">
@@ -210,12 +211,12 @@
        </a-row>
        <a-row :gutter="48">
          <a-col :md="12" :lg="12" :sm="12">
            <a-form-item label="认缴时间" :labelCol="labelCol" :wrapperCol="wrapperCol">
            <a-form-item label="上市时间" :labelCol="labelCol" :wrapperCol="wrapperCol">
              <a-date-picker
                show-time
                style="width: 100%"
                @change="getsubscriptionTime"
                v-decorator="['subscriptionTime', { rules: [{ required: true, message: '请填写认缴时间' }] }]"
                @change="getlistDate"
                v-decorator="['listDate', { rules: [{ required: true, message: '请填写上市时间' }] }]"
                format="YYYY-MM-DD HH:mm:ss"
              >
              </a-date-picker>
@@ -366,6 +367,7 @@
      currentdetail: '',
      subscribeTime: '',
      subscriptionTime: '',
      listDate: '',
    }
  },
  created() {
@@ -398,6 +400,9 @@
    getsubscribeTime(date, dateString) {
      this.subscribeTime = dateString
    },
    getlistDate(date, dateString) {
      this.listDate = dateString
    },
    getsubscriptionTime(date, dateString) {
      this.subscriptionTime = dateString
    },
@@ -411,6 +416,9 @@
        subscriptionTime: moment(val.subscriptionTime ? val.subscriptionTime : currentTime).format(
          'YYYY-MM-DD HH:mm:ss'
        ),
      })
      this.addUserform.setFieldsValue({
        listDate: moment(val.listDate ? val.listDate : currentTime).format('YYYY-MM-DD HH:mm:ss'),
      })
      this.addUserform.setFieldsValue({
        subscribeTime: moment(val.subscribeTime ? val.subscribeTime : currentTime).format('YYYY-MM-DD HH:mm:ss'),
@@ -433,6 +441,7 @@
            values.newlistId = this.currentdetail.newlistId
            values.subscriptionTime = this.subscriptionTime
            values.subscribeTime = this.subscribeTime
            values.listDate = this.listDate
            subscribeupdate(values).then((res) => {
              if (res.status == 0) {
                this.addUserdialog = false
@@ -448,6 +457,7 @@
            this.addUserDialogloading = true
            values.subscriptionTime = this.subscriptionTime
            values.subscribeTime = this.subscribeTime
            values.listDate = this.listDate
            subscribeadd(values).then((res) => {
              if (res.status == 0) {
                this.addUserdialog = false
src/views/position/components/financing-flat.vue
@@ -33,6 +33,11 @@
              </a-form-item>
            </a-col>
            <a-col :md="12" :lg="6" :sm="24">
              <a-form-item label="手机号">
                <a-input v-model="queryParam.phone" style="width: 100%" placeholder="请输入手机号" />
              </a-form-item>
            </a-col>
            <a-col :md="12" :lg="6" :sm="24">
              <a-form-item label="持仓订单号">
                <a-input v-model="queryParam.positionSn" style="width: 100%" placeholder="请输入持仓订单号" />
              </a-form-item>
@@ -429,6 +434,8 @@
        agentId: undefined,
        userId: '',
        positionSn: '',
        phone: '',
        state: 1,
        beginTime: '',
        endTime: '',
@@ -482,6 +489,7 @@
        agentId: undefined,
        userId: '',
        positionSn: '',
        phone: '',
        state: 1,
        beginTime: '',
        endTime: '',
@@ -498,6 +506,7 @@
        pageNum: 1,
        pageSize: 10,
        positionType: '',
        phone: '',
        agentId: undefined,
        userId: '',
        positionSn: '',
src/views/position/components/financing-hold.vue
@@ -33,6 +33,11 @@
              </a-form-item>
            </a-col>
            <a-col :md="12" :lg="6" :sm="24">
              <a-form-item label="手机号">
                <a-input v-model="queryParam.phone" style="width: 100%" placeholder="请输入手机号" />
              </a-form-item>
            </a-col>
            <a-col :md="12" :lg="6" :sm="24">
              <a-form-item label="持仓订单号">
                <a-input v-model="queryParam.positionSn" style="width: 100%" placeholder="请输入持仓订单号" />
              </a-form-item>
@@ -323,6 +328,7 @@
        userId: '',
        positionSn: '',
        state: 0,
        phone: '',
      },
      datalist: [],
      agentlist: [],
@@ -434,6 +440,7 @@
        userId: '',
        positionSn: '',
        state: 0,
        phone: '',
      }
      this.getlist()
    },
@@ -446,6 +453,7 @@
        userId: '',
        positionSn: '',
        state: 0,
        phone: '',
      }
    },
    getagentlist() {
src/views/product/shares.vue
@@ -4,25 +4,6 @@
      <div class="table-page-search-wrapper">
        <a-form layout="inline">
          <a-row :gutter="48">
            <!-- <a-col :md="12" :lg="6" :sm="24">
              <a-form-item label="股票类型">
                <a-select v-model="queryParam.stockPlate" placeholder="请选择股票类型">
                  <a-select-option :value="'A股'">股票</a-select-option>
                  <a-select-option :value="'科创'">科创</a-select-option>
                </a-select>
              </a-form-item>
            </a-col> -->
            <!-- <a-col :md="12" :lg="6" :sm="24">
              <a-form-item label="沪深股">
                <a-select v-model="queryParam.stockType" placeholder="请选择显示状态">
                  <a-select-option value="sh">沪股</a-select-option>
                  <a-select-option value="sz">深股</a-select-option>
                  <a-select-option value="bj">京股</a-select-option>
                  <a-select-option value="hk">港股</a-select-option>
                  <a-select-option value="us">美股</a-select-option>
                </a-select>
              </a-form-item>
            </a-col> -->
            <a-col :md="12" :lg="6" :sm="24">
              <a-form-item label="锁定状态">
                <a-select v-model="queryParam.lockState" placeholder="请选择锁定状态">
@@ -63,13 +44,6 @@
                    @click=";(queryParam.pageNum = 1), (pagination.current = 1), getlist()"
                    >查询
                  </a-button>
                  <!-- <a-button
                    type="primary"
                    icon="plus"
                    style="margin-left: 8px"
                    @click="addUserdialog = true">
                    添加股票</a-button> -->
                </span>
              </a-form-item>
            </a-col>
@@ -91,8 +65,10 @@
          <template>
            <div>
              <span style="margin-right: 10px">{{ record.stockName }}</span>
              <a-tag color="green">{{ record.stockCode }} </a-tag>
              <a-tag color="green">{{ record.stockSpell }} </a-tag>
            </div>
            <!-- stockSpell -->
          </template>
        </span>
        <span slot="stockType" slot-scope="text, record">
@@ -203,7 +179,7 @@
        <a-form-item label="股票代码" :labelCol="labelCol" :wrapperCol="wrapperCol">
          <a-input
            placeholder="请输入股票代码"
            v-decorator="['stockCode', { rules: [{ required: true, message: '请输入股票代码' }] }]"
            v-decorator="['stockSpell', { rules: [{ required: true, message: '请输入股票代码' }] }]"
          />
        </a-form-item>
        <a-form-item label="股票类型" :labelCol="labelCol" :wrapperCol="wrapperCol">
src/views/risksetting/productsetting.vue
@@ -1,7 +1,7 @@
<template>
  <page-header-wrapper>
    <a-form :form="addUserform" class="form" ref="addUserform">
      <a-card class="card" title="A股" :bordered="false" :loading="loading">
      <!-- <a-card class="card" title="A股" :bordered="false" :loading="loading">
        <span slot="extra">状态为开启即表示用户可以进行该产品的交易</span>
        <a-row class="form-row" :gutter="48">
          <a-col :md="8" :lg="8" :sm="12">
@@ -29,7 +29,7 @@
            </a-form-item>
          </a-col>
        </a-row>
      </a-card>
      </a-card> -->
      <!-- <a-card class="card" title="期货" :bordered="false" :loading="loading"> -->
      <!-- <span slot="extra">状态为开启即表示用户可以进行该产品的交易</span>
                <a-row class="form-row" :gutter="48">
src/views/risksetting/sharessetting.vue
@@ -1,535 +1,168 @@
<template>
  <page-header-wrapper>
    <a-form :form="addUserform" class="form" ref="addUserform">
      <a-card class="card" title="时间设置" :bordered="false" :loading="loading">
        <span slot="extra">填写规则请按照括号中的示例填写,":"统一为英文中的字符,提现时间为24小时制,请填写整数</span>
        <a-row class="form-row" :gutter="48">
          <a-col :md="12" :lg="6" :sm="12">
            <a-form-item label="上午开始交易时间(例:9:30)">
              <a-input
                placeholder="请输入上午开始交易时间"
                v-decorator="['transAmBegin', { rules: [{ required: true, message: '请输入上午开始交易时间' }] }]"
              />
            </a-form-item>
          </a-col>
          <a-col :md="12" :lg="6" :sm="12">
            <a-form-item label="上午结束交易时间(例:10:30)">
              <a-input
                placeholder="请输入上午结束交易时间"
                v-decorator="['transAmEnd', { rules: [{ required: true, message: '请输入上午结束交易时间' }] }]"
              />
            </a-form-item>
          </a-col>
          <a-col :md="12" :lg="6" :sm="12">
            <a-form-item label="下午开始交易时间(例:13:30)">
              <a-input
                placeholder="请输入下午开始交易时间"
                v-decorator="['transPmBegin', { rules: [{ required: true, message: '请输入下午开始交易时间' }] }]"
              />
            </a-form-item>
          </a-col>
          <a-col :md="12" :lg="6" :sm="12">
            <a-form-item label="下午结束交易时间(例:15:00)">
              <a-input
                placeholder="请输入下午结束交易时间"
                v-decorator="['transPmEnd', { rules: [{ required: true, message: '请输入下午结束交易时间' }] }]"
              />
            </a-form-item>
          </a-col>
        </a-row>
        <a-row class="form-row" :gutter="48">
          <a-col :md="12" :lg="6" :sm="12">
            <a-form-item label="大宗交易 上午开始交易时间(例:9:30)">
              <a-input
                placeholder="请输入上午开始交易时间"
                v-decorator="['transAmBeginUs', { rules: [{ required: true, message: '请输入上午开始交易时间' }] }]"
              />
            </a-form-item>
          </a-col>
          <a-col :md="12" :lg="6" :sm="12">
            <a-form-item label="大宗交易 上午结束交易时间(例:10:30)">
              <a-input
                placeholder="请输入上午结束交易时间"
                v-decorator="['transAmEndUs', { rules: [{ required: true, message: '请输入上午结束交易时间' }] }]"
              />
            </a-form-item>
          </a-col>
          <a-col :md="12" :lg="6" :sm="12">
            <a-form-item label="大宗交易 下午开始交易时间(例:13:30)">
              <a-input
                placeholder="请输入下午开始交易时间"
                v-decorator="['transPmBeginUs', { rules: [{ required: true, message: '请输入下午开始交易时间' }] }]"
              />
            </a-form-item>
          </a-col>
          <a-col :md="12" :lg="6" :sm="12">
            <a-form-item label="大宗交易 下午结束交易时间(例:15:00)">
              <a-input
                placeholder="请输入下午结束交易时间"
                v-decorator="['transPmEndUs', { rules: [{ required: true, message: '请输入下午结束交易时间' }] }]"
              />
            </a-form-item>
          </a-col>
        </a-row>
        <!-- <a-row class="form-row" :gutter="48">
          <a-col :md="12" :lg="6" :sm="12">
            <a-form-item label="港股上午开始交易时间(例:9:30)">
              <a-input
                placeholder="请输入上午开始交易时间"
                v-decorator="['transAmBeginhk', { rules: [{ required: true, message: '请输入上午开始交易时间', }] }]" />
            </a-form-item>
          </a-col>
          <a-col :md="12" :lg="6" :sm="12">
            <a-form-item label="港股上午结束交易时间(例:10:30)">
              <a-input
                placeholder="请输入上午结束交易时间"
                v-decorator="['transAmEndhk', { rules: [{ required: true, message: '请输入上午结束交易时间', }] }]" />
            </a-form-item>
          </a-col>
          <a-col :md="12" :lg="6" :sm="12">
            <a-form-item label="港股下午开始交易时间(例:13:30)">
              <a-input
                placeholder="请输入下午开始交易时间"
                v-decorator="['transPmBeginhk', { rules: [{ required: true, message: '请输入下午开始交易时间', }] }]" />
            </a-form-item>
          </a-col>
          <a-col :md="12" :lg="6" :sm="12">
            <a-form-item label="港股下午结束交易时间(例:15:00)">
              <a-input
                placeholder="请输入下午结束交易时间"
                v-decorator="['transPmEndhk', { rules: [{ required: true, message: '请输入下午结束交易时间', }] }]" />
            </a-form-item>
          </a-col>
        </a-row> -->
        <a-row class="form-row" :gutter="48">
          <a-col :md="12" :lg="6" :sm="12">
            <a-form-item label="提现开始时间(例:9)">
              <a-input
                placeholder="请输入提现开始时间"
                v-decorator="['withTimeBegin', { rules: [{ required: true, message: '请输入提现开始时间' }] }]"
              />
            </a-form-item>
          </a-col>
          <a-col :md="12" :lg="6" :sm="12">
            <a-form-item label="提现结束时间(例:18)">
              <a-input
                placeholder="请输入提现结束时间"
                v-decorator="['withTimeEnd', { rules: [{ required: true, message: '请输入提现结束时间' }] }]"
              />
            </a-form-item>
          </a-col>
        </a-row>
      </a-card>
      <a-card class="card" title="费用设置" :bordered="false" :loading="loading">
        <span slot="extra">请按照括号中的示例填写</span>
        <a-row class="form-row" :gutter="48">
          <a-col :md="12" :lg="6" :sm="12">
            <a-form-item label="买入手续费(例:0.001)">
              <a-input
                placeholder="请输入买入手续费"
                v-decorator="['buyFee', { rules: [{ required: true, message: '请输入买入手续费' }] }]"
              />
            </a-form-item>
          </a-col>
          <a-col :md="12" :lg="6" :sm="12">
            <a-form-item label="卖出手续费(例:0.001)">
              <a-input
                placeholder="请输入卖出手续费"
                v-decorator="['sellFee', { rules: [{ required: true, message: '请输入卖出手续费' }] }]"
              />
            </a-form-item>
          </a-col>
          <a-col :md="12" :lg="6" :sm="12">
            <a-form-item label="留仓费(例:0.001)">
              <a-input
                placeholder="请输入留仓费"
                v-decorator="['stayFee', { rules: [{ required: true, message: '请输入留仓费' }] }]"
              />
            </a-form-item>
          </a-col>
          <a-col :md="12" :lg="6" :sm="12">
            <a-form-item label="印花税(例:0.001)">
              <a-input
                placeholder="请输入印花税"
                v-decorator="['dutyFee', { rules: [{ required: true, message: '请输入印花税' }] }]"
              />
            </a-form-item>
          </a-col>
        </a-row>
      </a-card>
      <a-card class="card" title="购买设置" :bordered="false" :loading="loading">
        <span slot="extra">请按照括号中的示例填写</span>
        <a-row class="form-row" :gutter="48">
          <a-col :md="12" :lg="6" :sm="12">
            <a-form-item label="最小购买金额(例:1000)">
              <a-input
                placeholder="请输入最小购买金额"
                v-decorator="['buyMinAmt', { rules: [{ required: true, message: '请输入最小购买金额' }] }]"
              />
            </a-form-item>
          </a-col>
          <a-col :md="12" :lg="6" :sm="12">
            <a-form-item label="最大买入比例(例:0.8)">
              <a-input
                placeholder="请输入最大买入比例"
                v-decorator="['buyMaxAmtPercent', { rules: [{ required: true, message: '请输入最大买入比例' }] }]"
              />
            </a-form-item>
          </a-col>
          <a-col :md="12" :lg="6" :sm="12">
            <a-form-item label="最小购买股数(例:5000)">
              <a-input
                placeholder="请输入最小购买股数"
                v-decorator="['buyMinNum', { rules: [{ required: true, message: '请输入最小购买股数' }] }]"
              />
            </a-form-item>
          </a-col>
          <a-col :md="12" :lg="6" :sm="12">
            <a-form-item label="最大买入股数(例:1000000)">
              <a-input
                placeholder="请输入最大买入股数"
                v-decorator="['buyMaxNum', { rules: [{ required: true, message: '请输入最大买入股数' }] }]"
              />
            </a-form-item>
          </a-col>
        </a-row>
        <a-row class="form-row" :gutter="48">
          <a-col :md="12" :lg="6" :sm="12">
            <a-form-item label="杠杆倍数(例:100/50/30)">
              <a-input
                placeholder="请输入杠杆倍数"
                v-decorator="['siteLever', { rules: [{ required: true, message: '请输入杠杆倍数' }] }]"
              />
            </a-form-item>
          </a-col>
          <a-col :md="12" :lg="6" :sm="12">
            <a-form-item label="买入多长时间内不能平仓/分钟(例:30)">
              <a-input-number
                placeholder="请输入时间"
                style="width: 100%"
                v-decorator="['cantSellTimes', { rules: [{ required: true, message: '请输入时间' }] }]"
              />
            </a-form-item>
          </a-col>
          <a-col :md="12" :lg="6" :sm="12">
            <a-form-item label="VIP抢筹密钥">
              <a-input
                placeholder="请输入VIP抢筹密钥"
                v-decorator="['vipPassword', { rules: [{ required: true, message: '请输入VIP抢筹密钥' }] }]"
              />
            </a-form-item>
          </a-col>
          <a-col :md="12" :lg="6" :sm="12">
            <a-form-item label="大宗交易赠送比例">
              <a-input
                type="number"
                @mousewheel.native.prevent
                @DOMMouseScroll.native.prevent
                placeholder="请输入大宗交易赠送比例"
                v-decorator="['dzSongP', { rules: [{ required: true, message: '请输入大宗交易赠送比例' }] }]"
                @keydown.native="handleInputlimit"
              />
            </a-form-item>
          </a-col>
          <a-col :md="12" :lg="6" :sm="12">
            <a-form-item label="大宗交易最低">
              <a-input
                type="number"
                @mousewheel.native.prevent
                @DOMMouseScroll.native.prevent
                placeholder="请输入大宗交易最低"
                v-decorator="['dzMinByCount', { rules: [{ required: true, message: '请输入大宗交易最低' }] }]"
                @keydown.native="handleInputlimit"
              />
            </a-form-item>
          </a-col>
        </a-row>
        <a-row class="form-row" :gutter="48">
          <a-col :md="24" :lg="24" :sm="24">
            <a-form-item label="设置多少分钟内同一只股票不得下单多少次(同一用户)">
              <a-input-number
                placeholder="请输入分钟数"
                style="width: 300px"
                v-decorator="['buySameTimes', { rules: [{ required: true, message: '请输入分钟数' }] }]"
              />
              分钟内同一只股票不得下单
              <a-input-number
                placeholder="请输入下单次数"
                style="width: 300px"
                v-decorator="['buySameNums', { rules: [{ required: true, message: '请输入下单次数' }] }]"
              />
              次
            </a-form-item>
          </a-col>
        </a-row>
        <a-row class="form-row" :gutter="48">
          <a-col :md="24" :lg="24" :sm="24">
            <a-form-item label="设置多少分钟内交易手数不得超过多少手(同一用户)">
              <a-input-number
                placeholder="请输入分钟数"
                style="width: 300px"
                v-decorator="['buyNumTimes', { rules: [{ required: true, message: '请输入分钟数' }] }]"
              />
              分钟内交易手数不得超过
              <a-input-number
                placeholder="请输入下单手数"
                style="width: 300px"
                v-decorator="['buyNumLots', { rules: [{ required: true, message: '请输入下单手数' }] }]"
              />
              手
            </a-form-item>
          </a-col>
        </a-row>
        <a-row class="form-row" :gutter="48">
          <a-col :md="24" :lg="24" :sm="24">
            <a-form-item label="同一股票连续 x 天 内涨幅超过 y 不能买入(同一用户)">
              同一股票连续
              <a-input-number
                placeholder="请输入天数"
                style="width: 300px"
                v-decorator="['stockDays', { rules: [{ required: true, message: '请输入天数' }] }]"
              />
              天 内涨幅超过
              <a-input-number
                placeholder="请输入下单次数"
                style="width: 300px"
                v-decorator="['stockRate', { rules: [{ required: true, message: '请输入下单次数' }] }]"
              />
              次不能买入(同一用户)
            </a-form-item>
          </a-col>
        </a-row>
        <a-row class="form-row" :gutter="48">
          <a-col :md="12" :lg="6" :sm="12">
            <a-form-item label="A股超过多少个点不能买入(例:7)">
              <a-input-number
                placeholder="请输入点数"
                style="width: 300px"
                v-decorator="['creaseMaxPercent', { rules: [{ required: true, message: '请输入点数' }] }]"
              />
            </a-form-item>
          </a-col>
          <a-col :md="12" :lg="6" :sm="12">
            <a-form-item label="科创板超过多少个点不能买入(例:7)">
              <a-input-number
                placeholder="请输入点数"
                style="width: 300px"
                v-decorator="['kcCreaseMaxPercent', { rules: [{ required: true, message: '请输入点数' }] }]"
              />
            </a-form-item>
          </a-col>
        </a-row>
      </a-card>
      <a-card class="card" title="强制平仓设置" :bordered="false" :loading="loading">
        <span slot="extra"
          >请按照括号中的示例填写,比例均采用小数来表示&nbsp;&nbsp;&nbsp;&nbsp;强制平仓线计算规则:可用资金 +
          (冻结保证金 * 强制平仓比例)</span
        >
        <a-row class="form-row" :gutter="48">
          <a-col :md="12" :lg="6" :sm="12">
            <a-form-item label="强制平仓比例(例:0.7)">
              <a-input
                placeholder="请输入强制平仓比例"
                v-decorator="['forceStopPercent', { rules: [{ required: true, message: '请输入强制平仓比例' }] }]"
              />
            </a-form-item>
          </a-col>
          <a-col :md="12" :lg="6" :sm="12">
            <a-form-item label="连续涨停强制平仓(例:0.2)">
              <a-input
                placeholder="请输入连续涨停强制平仓比例"
                v-decorator="['hightAndLow', { rules: [{ required: true, message: '请输入连续涨停强制平仓比例' }] }]"
              />
            </a-form-item>
          </a-col>
          <a-col :md="12" :lg="6" :sm="12">
            <a-form-item label="最大留仓天数(例:15)">
              <a-input
                placeholder="请输入最大留仓天数"
                v-decorator="['stayMaxDays', { rules: [{ required: true, message: '请输入最大留仓天数' }] }]"
              />
            </a-form-item>
          </a-col>
          <a-col :md="12" :lg="6" :sm="12">
            <a-form-item label="强制平仓手续费(例:0.001)">
              <a-input
                placeholder="请输入强制平仓手续费"
                v-decorator="['forceStopFee', { rules: [{ required: true, message: '请输入强制平仓手续费' }] }]"
              />
            </a-form-item>
          </a-col>
        </a-row>
        <a-row class="form-row" :gutter="48">
          <a-col :md="12" :lg="6" :sm="12">
            <a-form-item label="强制平仓提醒比例(例:0.5)">
              <a-input
                placeholder="请输入强制平仓提醒比例"
                v-decorator="[
                  'forceStopRemindRatio',
                  { rules: [{ required: true, message: '请输入强制平仓提醒比例' }] },
                ]"
              />
            </a-form-item>
          </a-col>
        </a-row>
      </a-card>
      <a-card class="card" title="充值提现设置" :bordered="false" :loading="loading">
        <span slot="extra">请按照括号中的示例填写,比例均采用小数来表示</span>
        <a-row class="form-row" :gutter="48">
          <a-col :md="12" :lg="6" :sm="12">
            <a-form-item label="最小充值金额(例:1000)">
              <a-input
                placeholder="请输入最小充值金额"
                v-decorator="['chargeMinAmt', { rules: [{ required: true, message: '请输入最小充值金额' }] }]"
              />
            </a-form-item>
          </a-col>
          <a-col :md="12" :lg="6" :sm="12">
            <a-form-item label="最小提现金额(例:1000)">
              <a-input
                placeholder="请输入最小提现金额"
                v-decorator="['withMinAmt', { rules: [{ required: true, message: '请输入最小提现金额' }] }]"
              />
            </a-form-item>
          </a-col>
          <a-col :md="12" :lg="6" :sm="12">
            <a-form-item label="提现单笔手续费(例:5)">
              <a-input
                placeholder="请输入提现单笔手续费"
                v-decorator="['withFeeSingle', { rules: [{ required: true, message: '请输入提现单笔手续费' }] }]"
              />
            </a-form-item>
          </a-col>
          <a-col :md="12" :lg="6" :sm="12">
            <a-form-item label="提现手续费百分比(例:0.005)">
              <a-input
                placeholder="请输入提现手续费百分比"
                v-decorator="['withFeePercent', { rules: [{ required: true, message: '请输入提现手续费百分比' }] }]"
              />
            </a-form-item>
          </a-col>
          <a-col :md="12" :lg="6" :sm="12">
            <a-form-item label="提现通道设置">
              <a-input
                placeholder="提现通道设置"
                v-decorator="['withdraw', { rules: [{ required: true, message: '请输入提现手续费百分比' }] }]"
              />
            </a-form-item>
          </a-col>
          <a-col :md="12" :lg="6" :sm="12">
            <a-form-item label="汇率设置(美元)">
              <a-input
                placeholder="请输入汇率设置"
                v-decorator="['exchangeRate', { rules: [{ required: true, message: '请输入汇率设置' }] }]"
              />
            </a-form-item>
          </a-col>
        </a-row>
      </a-card>
    </a-form>
    <div class="bottomfixed">
      <div style="float: right">
        <a-button type="primary" @click="OkaddUserdialog" :loading="addUserDialogloading"> 保存当前设置 </a-button>
    <a-card :bordered="false">
      <div class="table-page-search-wrapper">
        <a-form layout="inline">
          <a-row :gutter="48">
            <a-col :md="12" :lg="6" :sm="24">
              <a-form-item label="描述">
                <a-input v-model="queryParam.cDesc" style="width: 100%" placeholder="请输入描述" />
              </a-form-item>
            </a-col>
            <a-col :md="12" :lg="6" :sm="24">
              <a-form-item>
                <span class="table-page-search-submitButtons">
                  <a-button @click="getqueryParam" icon="redo"> 重置</a-button>
                  <a-button type="primary" icon="search" style="margin-left: 8px" @click="getlist()">查询 </a-button>
                </span>
              </a-form-item>
            </a-col>
          </a-row>
        </a-form>
      </div>
    </div>
    </a-card>
    <a-card :bordered="false">
      <a-table bordered :loading="loading" :columns="columns" :data-source="datalist" rowKey="id">
        <template slot="cValue" slot-scope="text, record">
          <div v-if="record.cValueType === 'bool'">{{ text === '1' ? '开启' : '关闭' }}</div>
          <div v-else>{{ text }}</div>
        </template>
        <template slot="action" slot-scope="text, record">
          <a slot="action" href="javascript:;" @click="geteditStock(record)">{{ '修改记录' }}</a>
        </template>
      </a-table>
    </a-card>
    <a-modal
      :title="'修改记录'"
      :width="700"
      :visible="addUserdialog"
      :confirmLoading="addUserDialogloading"
      @ok="OkaddUserdialog"
      @cancel="CanceladdUserdialog"
    >
      <a-form :form="addUserform" ref="addUserform">
        <a-form-item label="id" :labelCol="labelCol" :wrapperCol="wrapperCol">
          <a-input disabled v-decorator="['id']" />
        </a-form-item>
        <a-form-item
          v-if="currentdetail.cValueType !== 'bool'"
          label="值"
          :labelCol="labelCol"
          :wrapperCol="wrapperCol"
        >
          <a-input
            placeholder="请输入值"
            v-decorator="['cValue', { rules: [{ required: true, message: '请输入值' }] }]"
          />
        </a-form-item>
        <a-form-item v-else label="值" :labelCol="labelCol" :wrapperCol="wrapperCol">
          <a-radio-group
            v-decorator="['cValue', { rules: [{ required: true, message: '请输入值' }] }]"
            name="radioGroup"
          >
            <a-radio value="1">开启</a-radio>
            <a-radio value="0">关闭</a-radio>
          </a-radio-group>
        </a-form-item>
        <a-form-item label="描述" :labelCol="labelCol" :wrapperCol="wrapperCol">
          <a-input disabled placeholder="cDesc" v-decorator="['cDesc']" />
        </a-form-item>
        <a-form-item v-show="false" label="key" :labelCol="labelCol" :wrapperCol="wrapperCol">
          <a-input disabled placeholder="cKey" v-decorator="['cKey']" />
        </a-form-item>
        <a-form-item v-show="false" label="key" :labelCol="labelCol" :wrapperCol="wrapperCol">
          <a-input disabled placeholder="cValueType" v-decorator="['cValueType']" />
        </a-form-item>
      </a-form>
    </a-modal>
  </page-header-wrapper>
</template>
<script>
import { admingetSetting, setupdate } from '@/api/risksetting'
import { queryStockConfig, updateConfig } from '@/api/newshares'
import pick from 'lodash.pick'
export default {
  name: 'Sharessetting',
  name: 'Shares',
  data() {
    return {
      addUserform: this.$form.createForm(this),
      loading: false,
      fields: [
        'buyFee',
        'sellFee',
        'stayFee',
        'dutyFee',
        'stayMaxDays',
        'buyMinAmt',
        'chargeMinAmt',
        'buyMinNum',
        'forceStopFee',
        'buyMaxAmtPercent',
        'forceStopPercent',
        'hightAndLow',
        'withMinAmt',
        'creaseMaxPercent',
        'kcCreaseMaxPercent',
        'buyMaxNum',
        'cantSellTimes',
        'buySameTimes',
        'buySameNums',
        'buyNumTimes',
        'buyNumLots',
        'stockDays',
        'stockRate',
        'withTimeBegin',
        'withTimeEnd',
        'transAmBegin',
        'transAmEnd',
        'transPmBegin',
        'transPmEnd',
        'transAmBeginUs',
        'transAmEndUs',
        'transPmBeginUs',
        'transPmEndUs',
        'transAmBeginhk',
        'transAmEndhk',
        'transPmBeginhk',
        'transPmEndhk',
        'withdraw',
        'exchangeRate',
        'withFeeSingle',
        'withFeePercent',
        'siteLever',
        'forceStopRemindRatio',
        'vipPassword',
        'dzSongP',
        'dzMinByCount',
      columns: [
        {
          title: 'ID',
          dataIndex: 'id',
          align: 'center',
        },
        {
          title: '值',
          dataIndex: 'cValue',
          align: 'center',
          scopedSlots: { customRender: 'cValue' },
        },
        {
          title: '描述',
          dataIndex: 'cDesc',
          align: 'center',
        },
        {
          title: '操作',
          key: 'action',
          align: 'center',
          scopedSlots: { customRender: 'action' },
        },
      ],
      // 表头
      loading: false,
      queryParam: {
        cDesc: '',
      },
      datalist: [],
      labelCol: {
        xs: { span: 10 },
        sm: { span: 10 },
        md: { span: 10 },
        xs: { span: 8 },
        sm: { span: 8 },
        md: { span: 8 },
      },
      wrapperCol: {
        xs: { span: 14 },
        sm: { span: 14 },
        md: { span: 14 },
      },
      addUserform: this.$form.createForm(this),
      addUserdialog: false,
      addUserDialogloading: false,
      details: {},
      fields: ['id', 'cValue', 'cDesc', 'cKey', 'status', 'cValueType'],
      currentdetail: {},
    }
  },
  mounted() {
    this.getdetail()
  created() {
    this.getlist()
  },
  methods: {
    // 禁止输入e, -
    handleInputlimit(e) {
      if (e.key === 'e' || e.key === '-') {
        e.returnValue = false
        return false
      }
      return true
    geteditStock(val) {
      this.currentdetail = val
      this.addUserdialog = true
      this.fields.forEach((v) => this.addUserform.getFieldDecorator(v))
      this.addUserform.setFieldsValue(pick(val, this.fields))
    },
    CanceladdUserdialog() {
      this.addUserdialog = false
      const form = this.$refs.addUserform.form
      form.resetFields()
    },
    OkaddUserdialog() {
      const form = this.$refs.addUserform.form
      form.validateFields((errors, values) => {
        if (!errors) {
          this.addUserDialogloading = true
          this.loading = true
          values.id = this.details.id
          setupdate(values).then((res) => {
            if (res.status === 0) {
          updateConfig(values).then((res) => {
            if (res.status == 0) {
              this.addUserdialog = false
              this.$message.success(res.msg)
              this.getdetail()
              form.resetFields()
              this.getlist()
            } else {
              this.$message.error(res.msg)
            }
@@ -538,96 +171,19 @@
        }
      })
    },
    getdetail() {
      var that = this
    getqueryParam() {
      this.queryParam = {
        cDesc: '',
      }
    },
    getlist() {
      this.loading = true
      admingetSetting().then((res) => {
        this.details = res.data
        this.fields.forEach((v) => this.addUserform.getFieldDecorator(v))
        this.addUserform.setFieldsValue(pick(res.data, this.fields))
        setTimeout(() => {
          that.loading = false
        }, 500)
      queryStockConfig(this.queryParam).then((res) => {
        this.datalist = res.data
        this.loading = false
      })
    },
  },
}
</script>
<style lang="less" scoped>
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
}
input[type='number'] {
  -moz-appearance: textfield;
}
form .ant-input-number-handler-wrap {
  display: none;
}
.bottomfixed {
  position: fixed;
  right: 0;
  bottom: 0;
  z-index: 9;
  width: 100%;
  height: 56px;
  padding: 0 24px;
  line-height: 56px;
  background: #fff;
  border-top: 1px solid #e8e8e8;
}
.card {
  margin-bottom: 24px;
}
/deep/ .ant-pro-global-footer {
  margin: 0 0 48px 0 !important;
}
.popover-wrapper {
  :deep(.antd-pro-pages-forms-style-errorPopover .ant-popover-inner-content) {
    min-width: 256px;
    max-height: 290px;
    padding: 0;
    overflow: auto;
  }
}
.antd-pro-pages-forms-style-errorIcon {
  user-select: none;
  margin-right: 24px;
  color: #f5222d;
  cursor: pointer;
  i {
    margin-right: 4px;
  }
}
.antd-pro-pages-forms-style-errorListItem {
  padding: 8px 16px;
  list-style: none;
  border-bottom: 1px solid #e8e8e8;
  cursor: pointer;
  transition: all 0.3s;
  &:hover {
    background: #e6f7ff;
  }
  .antd-pro-pages-forms-style-errorIcon {
    float: left;
    margin-top: 4px;
    margin-right: 12px;
    padding-bottom: 22px;
    color: #f5222d;
  }
  .antd-pro-pages-forms-style-errorField {
    margin-top: 2px;
    color: rgba(0, 0, 0, 0.45);
    font-size: 12px;
  }
}
</style>
src/views/userlist/components/EditUserinfodialog.vue
@@ -23,7 +23,7 @@
          <a-input placeholder="请输入用户名" v-decorator="['realName', {}]" />
        </a-form-item>
        <a-form-item label="密码" :labelCol="labelCol" :wrapperCol="wrapperCol">
          <a-input placeholder="请输入密码" v-decorator="['pwd', {}]" />
          <a-input placeholder="请输入密码" v-decorator="['userPwd', {}]" />
        </a-form-item>
        <a-form-item label="身份证号码" :labelCol="labelCol" :wrapperCol="wrapperCol">
          <a-input placeholder="请输入身份证号码" v-decorator="['idCard', {}]" />
@@ -71,12 +71,13 @@
      editUserform: this.$form.createForm(this),
      editUserdialog: false,
      editUserDialogloading: false,
      fields: ['agentId', 'phone', 'realName', 'pwd', 'idCard', 'isLogin', 'isLock'],
      fields: ['agentId', 'phone', 'realName', 'userPwd', 'idCard', 'isLogin', 'isLock'],
      currentDetails: {},
    }
  },
  methods: {
    getEditorder(val) {
      delete val.userPwd
      this.currentDetails = val
      this.editUserdialog = true
      this.fields.forEach((v) => this.editUserform.getFieldDecorator(v))