提交 3b5b5584 authored 作者: 王鹏飞's avatar 王鹏飞

dev-build

上级 a682a3d4
NODE_ENV=production
VUE_APP_LOGIN_API=https://e-learning3.ezijing.com
VUE_APP_BASE_API=https://lms-api.ezijing.com
...@@ -5,6 +5,7 @@ ...@@ -5,6 +5,7 @@
"scripts": { "scripts": {
"serve": "vue-cli-service serve", "serve": "vue-cli-service serve",
"build": "vue-cli-service build", "build": "vue-cli-service build",
"dev-build": "vue-cli-service build --mode dev",
"lint": "vue-cli-service lint" "lint": "vue-cli-service lint"
}, },
"dependencies": { "dependencies": {
......
public/favicon.ico

4.2 KB | W: | H:

public/favicon.ico

16.6 KB | W: | H:

public/favicon.ico
public/favicon.ico
public/favicon.ico
public/favicon.ico
  • 2-up
  • Swipe
  • Onion skin
...@@ -11,22 +11,26 @@ ...@@ -11,22 +11,26 @@
</template> </template>
<div class="p-item"> <div class="p-item">
<div class="p-title">审核状态:</div> <div class="p-title">审核状态:</div>
<div class="p-content is-red">{{ data.status }}</div> <div class="p-content" :class="{ 'is-red': notPass }">
{{ statusText }}
</div>
</div> </div>
<div class="p-item"> <div class="p-item">
<div class="p-title">审核时间:</div> <div class="p-title">审核时间:</div>
<div class="p-content">{{ data.apply_time }}</div> <div class="p-content">{{ data.apply_time }}</div>
</div> </div>
<div class="p-item" v-if="data.remark"> <div class="p-item" v-if="data.remark1 || data.remark2">
<div class="p-title">备注:</div> <div class="p-title">备注:</div>
<div class="p-content is-red">{{ data.remark }}}</div> <div class="p-content is-red">
{{ data.remark1 || data.remark2 }}
</div>
</div> </div>
</div> </div>
<div class="card-aside"> <div class="card-aside">
<div class="card-status"> <div class="card-status" v-if="isPass">
<div class="icon-seal"></div> <div class="icon-seal"></div>
</div> </div>
<div class="card-tools"> <div class="card-tools" v-if="!isPass">
<div class="card-button" @click="onEdit">编辑</div> <div class="card-button" @click="onEdit">编辑</div>
<div class="card-button" @click="onRemove">删除</div> <div class="card-button" @click="onRemove">删除</div>
</div> </div>
...@@ -53,6 +57,25 @@ export default { ...@@ -53,6 +57,25 @@ export default {
} }
} }
}, },
computed: {
statusText() {
const map = {
'-1': '待审核',
'0': '未通过',
'1': '通过',
'2': '通过',
'3': '未通过',
'4': '通过'
}
return map[this.data.status]
},
isPass() {
return [1, 2, 4].includes(this.data.status)
},
notPass() {
return [0, 3].includes(this.data.status)
}
},
methods: { methods: {
onEdit() { onEdit() {
this.$router.push({ this.$router.push({
......
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
<ul class="menu-list"> <ul class="menu-list">
<li @click="toPage({ name: 'channel' })">首页</li> <li @click="toPage({ name: 'channel' })">首页</li>
<li <li
v-for="item in menuList" v-for="item in affairTypes"
:key="item.id" :key="item.id"
@click=" @click="
toPage({ toPage({
...@@ -32,13 +32,16 @@ ...@@ -32,13 +32,16 @@
</template> </template>
<script> <script>
import * as api from '@/api/index'
export default { export default {
name: 'PageContainer', name: 'PageContainer',
data() { data() {
return { return {
menuVisible: false, menuVisible: false
menuList: [] }
},
computed: {
affairTypes() {
return this.$store.state.affairTypes
} }
}, },
methods: { methods: {
...@@ -53,9 +56,9 @@ export default { ...@@ -53,9 +56,9 @@ export default {
}) })
}, },
getList() { getList() {
api.getAffairType().then(response => { if (!this.affairTypes.length) {
this.menuList = response this.$store.dispatch('getAffairTypes')
}) }
} }
}, },
beforeMount() { beforeMount() {
......
...@@ -40,8 +40,7 @@ export default { ...@@ -40,8 +40,7 @@ export default {
file.message = '上传失败' file.message = '上传失败'
} }
}) })
.catch(error => { .catch(() => {
console.log(error)
file.status = 'failed' file.status = 'failed'
file.message = '上传失败' file.message = '上传失败'
}) })
......
...@@ -11,6 +11,9 @@ Vue.use(VueMeta) ...@@ -11,6 +11,9 @@ Vue.use(VueMeta)
import { Notify } from 'vant' import { Notify } from 'vant'
Vue.use(Notify) Vue.use(Notify)
import { Toast } from 'vant'
Vue.use(Toast)
import { Dialog } from 'vant' import { Dialog } from 'vant'
Vue.use(Dialog) Vue.use(Dialog)
......
import Vue from 'vue' import Vue from 'vue'
import Vuex from 'vuex' import Vuex from 'vuex'
import { getAffairType } from '@/api/index'
Vue.use(Vuex) Vue.use(Vuex)
export default new Vuex.Store({ export default new Vuex.Store({
state: { state: {
menuCollapse: false affairTypes: [] // 事务类型列表
}, },
mutations: { mutations: {
toggleMenuCollapse(state, collapse) { updateAffairTypes(state, types) {
state.menuCollapse = collapse state.affairTypes = types
} }
}, },
actions: {} actions: {
async getAffairTypes({ commit }) {
const affairTypes = await getAffairType()
commit('updateAffairTypes', affairTypes)
}
}
}) })
import axios from 'axios' import axios from 'axios'
import qs from 'qs' import qs from 'qs'
import { Toast } from 'vant' import { Notify } from 'vant'
import router from '@/router' import router from '@/router'
const httpRequest = axios.create({ const httpRequest = axios.create({
...@@ -37,7 +37,7 @@ httpRequest.interceptors.response.use( ...@@ -37,7 +37,7 @@ httpRequest.interceptors.response.use(
if (error.response) { if (error.response) {
const { status, message } = error.response.data const { status, message } = error.response.data
if (status === 400) { if (status === 400) {
Toast({ type: 'error', message: message }) Notify({ type: 'error', message: message })
} else if (status === 403) { } else if (status === 403) {
router.replace({ router.replace({
path: '/login', path: '/login',
...@@ -45,7 +45,7 @@ httpRequest.interceptors.response.use( ...@@ -45,7 +45,7 @@ httpRequest.interceptors.response.use(
}) })
} }
} else { } else {
Toast({ type: 'error', message: error }) Notify({ type: 'error', message: error })
} }
return Promise.reject(error) return Promise.reject(error)
} }
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
<h2 class="choose-title">请选择事务</h2> <h2 class="choose-title">请选择事务</h2>
<div class="choose-list"> <div class="choose-list">
<van-radio-group v-model="radio"> <van-radio-group v-model="radio">
<div class="choose-item" v-for="item in list" :key="item.value"> <div class="choose-item" v-for="item in affairTypes" :key="item.value">
<van-radio :name="item.id">{{ item.affair_name }}</van-radio> <van-radio :name="item.id">{{ item.affair_name }}</van-radio>
</div> </div>
</van-radio-group> </van-radio-group>
...@@ -16,22 +16,24 @@ ...@@ -16,22 +16,24 @@
</div> </div>
</template> </template>
<script> <script>
import * as api from '@/api/index'
export default { export default {
data() { data() {
return { return {
list: [],
radio: '' radio: ''
} }
}, },
computed: { computed: {
affairTypes() {
return this.$store.state.affairTypes
},
currentItem() { currentItem() {
return this.list.find(item => item.id === this.radio) return this.affairTypes.find(item => item.id === this.radio)
} }
}, },
methods: { methods: {
toListPage() { toListPage() {
if (!this.radio) { if (!this.radio) {
this.$toast('请选择事务')
return return
} }
this.$router.push({ this.$router.push({
...@@ -43,11 +45,12 @@ export default { ...@@ -43,11 +45,12 @@ export default {
}) })
}, },
getList() { getList() {
api.getAffairType().then(response => { if (this.affairTypes.length) {
let [first] = response const [first] = this.affairTypes
this.radio = first.id this.radio = first.id
this.list = response } else {
}) this.$store.dispatch('getAffairTypes')
}
} }
}, },
beforeMount() { beforeMount() {
......
...@@ -64,9 +64,11 @@ export default { ...@@ -64,9 +64,11 @@ export default {
let data = this.$refs.form.ruleForm let data = this.$refs.form.ruleForm
data.affair_id = this.channelId data.affair_id = this.channelId
api.createAffair(data).then(() => { api.createAffair(data).then(() => {
this.$dialog.alert({ message: '提交成功' }).then(() => { this.$dialog
this.$router.push({ name: 'list', query: this.$route.query }) .alert({ confirmButtonText: '确定', message: '提交成功' })
}) .then(() => {
this.$router.push({ name: 'list', query: this.$route.query })
})
}) })
} }
} }
......
...@@ -74,14 +74,22 @@ export default { ...@@ -74,14 +74,22 @@ export default {
let data = this.$refs.form.ruleForm let data = this.$refs.form.ruleForm
data.affair_id = this.channelId data.affair_id = this.channelId
api.updateAffair(this.viewId, data).then(() => { api.updateAffair(this.viewId, data).then(() => {
this.$dialog.alert({ message: '修改成功' }).then(() => { this.$dialog
this.$router.push({ name: 'list', query: this.$route.query }) .alert({ confirmButtonText: '确定', message: '修改成功' })
}) .then(() => {
this.$router.push({ name: 'list', query: this.$route.query })
})
}) })
}, },
getDetail() { getDetail() {
const toast = this.$toast.loading({
message: '加载中...',
forbidClick: true,
duration: 0
})
api.getAffair(this.viewId).then(response => { api.getAffair(this.viewId).then(response => {
this.formModel = response.form this.formModel = response.form
toast.clear()
}) })
} }
}, },
......
...@@ -69,8 +69,14 @@ export default { ...@@ -69,8 +69,14 @@ export default {
}, },
methods: { methods: {
getList() { getList() {
const toast = this.$toast.loading({
message: '加载中...',
forbidClick: true,
duration: 0
})
api.getAffairList({ affair_id: this.channelId }).then(response => { api.getAffairList({ affair_id: this.channelId }).then(response => {
this.list = response this.list = response
toast.clear()
}) })
}, },
onLoad() { onLoad() {
...@@ -82,9 +88,8 @@ export default { ...@@ -82,9 +88,8 @@ export default {
onRemove(data) { onRemove(data) {
this.$dialog this.$dialog
.confirm({ .confirm({
title: '提示',
confirmButtonText: '确定', confirmButtonText: '确定',
message: '确定删除' message: '确定要删除吗?'
}) })
.then(() => { .then(() => {
api.deleteAffair(data.id).then(() => { api.deleteAffair(data.id).then(() => {
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论