diff --git a/src/api/book/index.js b/src/api/book/index.js
index 3e90588..3981a9d 100644
--- a/src/api/book/index.js
+++ b/src/api/book/index.js
@@ -55,13 +55,14 @@ export function destroy(params) {
})
}
-export function retry(params) {
+export function retry(params, config = {}) {
return request({
method: "get",
url: "/api/admin/appointments/retry-appointment",
- params
+ params,
+ headers: config.headers,
+ isLoading: config.isLoading
})
}
-
diff --git a/src/api/qccEnterpriseAccount/index.js b/src/api/qccEnterpriseAccount/index.js
new file mode 100644
index 0000000..15d5c7d
--- /dev/null
+++ b/src/api/qccEnterpriseAccount/index.js
@@ -0,0 +1,21 @@
+import request from '@/utils/request'
+
+export function candidates(params, isLoading = false) {
+ return request({ method: 'get', url: '/api/admin/qcc-enterprise-accounts/candidates', params, isLoading })
+}
+
+export function index(params, isLoading = false) {
+ return request({ method: 'get', url: '/api/admin/qcc-enterprise-accounts/index', params, isLoading })
+}
+
+export function select(data) {
+ return request({ method: 'post', url: '/api/admin/qcc-enterprise-accounts/select', data, isLoading: true })
+}
+
+export function cancel(data) {
+ return request({ method: 'post', url: '/api/admin/qcc-enterprise-accounts/cancel', data, isLoading: true })
+}
+
+export function unknownConfirm(data) {
+ return request({ method: 'post', url: '/api/admin/qcc-enterprise-accounts/unknown-confirm', data, isLoading: true })
+}
diff --git a/src/api/user.js b/src/api/user.js
index f3f71f5..22aafa0 100644
--- a/src/api/user.js
+++ b/src/api/user.js
@@ -37,8 +37,8 @@ export function getAuthMenu(token) {
export function getMsg(param) {
return request({
url: '/api/admin/auth/send-sms',
- method: 'get',
- params:param,
+ method: 'post',
+ data: param,
isLoading: false
})
}
@@ -46,8 +46,8 @@ export function getMsg(param) {
export function loginMsg(param) {
return request({
url: '/api/admin/auth/sms-login',
- method: 'get',
- params:param,
+ method: 'post',
+ data: param,
isLoading: false
})
}
diff --git a/src/store/modules/user.js b/src/store/modules/user.js
index d269186..b91e85b 100644
--- a/src/store/modules/user.js
+++ b/src/store/modules/user.js
@@ -76,14 +76,16 @@ const actions = {
loginMsg({
commit
}, userInfo) {
- const {
- mobile,
- code
+ const {
+ mobile,
+ code,
+ challenge_id
} = userInfo
return new Promise((resolve, reject) => {
loginMsg({
- mobile: mobile,
- code: code
+ mobile: mobile,
+ code: code,
+ challenge_id: challenge_id
}).then(response => {
console.log(response)
const {
diff --git a/src/views/book/components/checkBook.vue b/src/views/book/components/checkBook.vue
index b2808af..ff822a4 100644
--- a/src/views/book/components/checkBook.vue
+++ b/src/views/book/components/checkBook.vue
@@ -80,7 +80,7 @@
@@ -174,9 +174,10 @@
data() {
return {
isShow: false,
- type: 'show',
- id: '',
- submitObj: {},
+ type: 'show',
+ id: '',
+ retrying: false,
+ submitObj: {},
thirdArr: [],
baseUrl: `${process.env.VUE_APP_BASE_API}`,
form: {
@@ -220,16 +221,31 @@
this.$emit('refresh')
})
},
- sendBook(id) {
- retry({
- id: id
- }).then(res => {
- this.$message({
- type: 'success',
- message: '重新发送预约成功'
- })
- this.getDetail()
- })
+ async sendBook(id) {
+ const traceId = `retry-${id}-${Date.now()}-${Math.random().toString(36).slice(2, 8)}`
+ this.retrying = true
+ try {
+ await retry({
+ id: id
+ }, {
+ headers: {
+ 'X-Retry-Trace-Id': traceId
+ },
+ isLoading: true
+ })
+ this.$message({
+ type: 'success',
+ message: `已提交重新预约(追踪号:${traceId})`
+ })
+ await this.getDetail()
+ } catch (error) {
+ const message = error.response && error.response.data && error.response.data.errmsg
+ ? error.response.data.errmsg
+ : (error.message || '请求未收到响应')
+ this.$message.error(`重新预约失败:${message}(追踪号:${traceId})`)
+ } finally {
+ this.retrying = false
+ }
},
formatHH(val) {
if (val) {
@@ -253,7 +269,8 @@
if (newVal) {
this.getDetail()
} else {
- this.id = ''
+ this.id = ''
+ this.retrying = false
this.submitObj = {}
this.$refs['dialog'].reset()
}
diff --git a/src/views/login/index.vue b/src/views/login/index.vue
index a17ec28..74d590c 100644
--- a/src/views/login/index.vue
+++ b/src/views/login/index.vue
@@ -96,9 +96,12 @@
hasSend: false,
count: 60,
sendTimer: null,
- loginForm: {
- username: '',
- password: ''
+ loginForm: {
+ username: '',
+ password: '',
+ mobile: '',
+ code: '',
+ challenge_id: ''
},
loginRules: {
username: [{
@@ -168,7 +171,8 @@
getMsg({
mobile: this.loginForm.mobile
}).then(res => {
- this.base.showMessage("发送成功",'success')
+ this.base.showMessage("发送成功",'success')
+ this.loginForm.challenge_id = res.challenge_id
// this.$Message.success('发送成功')
// 短信发送后 60s
this.hasSend = true
@@ -194,6 +198,10 @@
this.base.showMessage("请输入验证码",'error')
return
}
+ if (this.base.isNull(this.loginForm.challenge_id)) {
+ this.base.showMessage("请先获取验证码",'error')
+ return
+ }
this.loading = true
let that = this
this.$store.dispatch('user/loginMsg', this.loginForm).then(() => {
diff --git a/src/views/qccEnterpriseAccount/components/AccountList.vue b/src/views/qccEnterpriseAccount/components/AccountList.vue
new file mode 100644
index 0000000..5e4734f
--- /dev/null
+++ b/src/views/qccEnterpriseAccount/components/AccountList.vue
@@ -0,0 +1,45 @@
+
+
+
+ {{ scope.row.company && scope.row.company.company_name }}
+ {{ scope.row.company && scope.row.company.credit_code }}
+ {{ statusLabel(scope.row.status) }}
+
+
+
+
+ 人工确认
+
+
+
+
+
+
+
+
diff --git a/src/views/qccEnterpriseAccount/index.vue b/src/views/qccEnterpriseAccount/index.vue
new file mode 100644
index 0000000..da0b232
--- /dev/null
+++ b/src/views/qccEnterpriseAccount/index.vue
@@ -0,0 +1,69 @@
+
+
+
+
+
+
+
+
+
+
+
+ 查询
+ 纳入候选池
+
+
+
+
+ {{ scope.row.credit_code || '缺失,不能纳入' }}
+ {{ statusLabel(accountStatus(scope.row)) }}
+
+ 取消候选人工确认
+
+
+
+
+
+
+
+
+
+
+ 确认未成功确认已占额
+
+
+ 取消确认
+
+
+
+
+
+
+
diff --git a/vue.config.js b/vue.config.js
index 04f5077..c6d3ff5 100644
--- a/vue.config.js
+++ b/vue.config.js
@@ -32,7 +32,7 @@ module.exports = {
// outputDir: '/Users/mac/Documents/朗业/2024/s-苏州科技商学院/wx.sstbc.com/public/admin',
// 测试
// outputDir: '/Users/mac/Documents/朗业/2025/s-苏州科技商学院/wx.sstbc.com/public/admin',
- outputDir: '/Users/mac/Documents/朗业/2026/s-苏州科技商学院/code/wx.sstbc.com/public/admin',
+ outputDir: '../backend/public/admin',
assetsDir: 'static',
css: {
loaderOptions: { // 向 CSS 相关的 loader 传递选项