Showing
4 changed files
with
10 additions
and
139 deletions
| ... | @@ -9,7 +9,7 @@ export const useUpload = () => { | ... | @@ -9,7 +9,7 @@ export const useUpload = () => { |
| 9 | let lock_btn = ref(false); // 保存按钮锁 | 9 | let lock_btn = ref(false); // 保存按钮锁 |
| 10 | let fileList = ref([]); | 10 | let fileList = ref([]); |
| 11 | let metaId = ref(''); | 11 | let metaId = ref(''); |
| 12 | - let upload_image = reactive({ meta_id: '' }); | 12 | + let upload_image = reactive({ src: '' }); |
| 13 | const afterRead = (res) => { | 13 | const afterRead = (res) => { |
| 14 | lock_btn.value = true; // 上传开始, 不能保存 | 14 | lock_btn.value = true; // 上传开始, 不能保存 |
| 15 | let affix = uuidv4(); | 15 | let affix = uuidv4(); |
| ... | @@ -43,7 +43,7 @@ export const useUpload = () => { | ... | @@ -43,7 +43,7 @@ export const useUpload = () => { |
| 43 | filekey: info.filekey, | 43 | filekey: info.filekey, |
| 44 | })) | 44 | })) |
| 45 | .then(res => { | 45 | .then(res => { |
| 46 | - upload_image.meta_id = res.data.data.meta_id; | 46 | + upload_image.src = res.data.data.src; |
| 47 | lock_btn.value = false; // 头像上传完成, 打开锁 | 47 | lock_btn.value = false; // 头像上传完成, 打开锁 |
| 48 | }) | 48 | }) |
| 49 | .catch(err => { | 49 | .catch(err => { |
| ... | @@ -73,8 +73,7 @@ export const useUpload = () => { | ... | @@ -73,8 +73,7 @@ export const useUpload = () => { |
| 73 | }) | 73 | }) |
| 74 | }; | 74 | }; |
| 75 | const beforeDelete = () => { // 删除图片回调 | 75 | const beforeDelete = () => { // 删除图片回调 |
| 76 | - metaId = ''; | 76 | + upload_image.src = ''; |
| 77 | - upload_image.meta_id = ''; | ||
| 78 | return true; | 77 | return true; |
| 79 | } | 78 | } |
| 80 | 79 | ||
| ... | @@ -86,4 +85,4 @@ export const useUpload = () => { | ... | @@ -86,4 +85,4 @@ export const useUpload = () => { |
| 86 | afterRead, | 85 | afterRead, |
| 87 | beforeDelete | 86 | beforeDelete |
| 88 | } | 87 | } |
| 89 | -} | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 88 | +} | ... | ... |
src/views/me/addUser.vue
deleted
100644 → 0
| 1 | -<template> | ||
| 2 | - <div class="add-user-page"> | ||
| 3 | - <p style="color: #713610; font-size: 1.25rem; padding: 1rem; text-align: center; font-weight: bold;">请录入儿童的信息</p> | ||
| 4 | - <div style=""> | ||
| 5 | - <van-config-provider :theme-vars="themeVars"> | ||
| 6 | - <van-form> | ||
| 7 | - <van-cell-group inset> | ||
| 8 | - <van-field v-model="user_info.kindergarten" name="幼儿园" label="幼儿园" placeholder="" disabled /> | ||
| 9 | - <van-field v-model="user_info.name" name="儿童姓名" label="儿童姓名" placeholder="请输入儿童姓名" /> | ||
| 10 | - <van-row style="padding: 2vh 0;"> | ||
| 11 | - <van-col span="7"><span style="font-size: 14px; color: #323233; margin-left: 2vh;">儿童头像</span></van-col> | ||
| 12 | - <van-col span="17"><span style="font-size: 12px; color: #B0B0B0;">请上传一张清晰的儿童照片</span></van-col> | ||
| 13 | - </van-row> | ||
| 14 | - <van-row style="padding-bottom: 2vh;"> | ||
| 15 | - <van-col span="16" offset="8"> | ||
| 16 | - <van-uploader v-model="fileList" :after-read="afterRead" :before-delete="beforeDelete" :max-count="1" /> | ||
| 17 | - </van-col> | ||
| 18 | - </van-row> | ||
| 19 | - </van-cell-group> | ||
| 20 | - <div style="margin: 2vh;"> | ||
| 21 | - <van-button v-if="lock_btn" loading type="primary" loading-text="上传中..." style="width: 100%;" round></van-button> | ||
| 22 | - <van-button v-else @click="validForm" :disabled="lock_btn" type="primary" native-type="submit" style="width: 100%;" round>保存</van-button> | ||
| 23 | - </div> | ||
| 24 | - </van-form> | ||
| 25 | - </van-config-provider> | ||
| 26 | - </div> | ||
| 27 | - </div> | ||
| 28 | -</template> | ||
| 29 | - | ||
| 30 | -<script setup> | ||
| 31 | -import { useUpload } from '@/composables/useUpload.js' | ||
| 32 | - | ||
| 33 | -import { ref, reactive, onMounted } from 'vue' | ||
| 34 | -import { useRoute, useRouter } from 'vue-router' | ||
| 35 | -import axios from '@/utils/axios'; | ||
| 36 | -import $ from 'jquery' | ||
| 37 | -import { Toast } from 'vant'; | ||
| 38 | - | ||
| 39 | -const { lock_btn, fileList, upload_image, metaId, afterRead, beforeDelete } = useUpload(); // 上传图片模块 | ||
| 40 | - | ||
| 41 | -const $route = useRoute(); | ||
| 42 | -const $router = useRouter(); | ||
| 43 | - | ||
| 44 | -const themeVars = { | ||
| 45 | - buttonPrimaryBackground: '#F9D95C', | ||
| 46 | - buttonPrimaryBorderColor: '#F9D95C', | ||
| 47 | - buttonPrimaryColor: '#713610', | ||
| 48 | -}; | ||
| 49 | - | ||
| 50 | -// 验证输入项 | ||
| 51 | -const validForm = () => { | ||
| 52 | - // if (!user_info.name) { | ||
| 53 | - // Toast.fail('儿童姓名不能为空') | ||
| 54 | - // return false; | ||
| 55 | - // } | ||
| 56 | - // if (!fileList.value.length) { | ||
| 57 | - // Toast.fail('儿童头像不能为空') | ||
| 58 | - // return false; | ||
| 59 | - // } | ||
| 60 | - saveInfo() | ||
| 61 | -}; | ||
| 62 | - | ||
| 63 | -let user_info = reactive({ | ||
| 64 | - kg_id: $route.query.kg_id, | ||
| 65 | - kindergarten: $route.query.kg_name, | ||
| 66 | - name: '', | ||
| 67 | - meta_id: metaId.value | ||
| 68 | -}); | ||
| 69 | - | ||
| 70 | -onMounted(() => { | ||
| 71 | - // | ||
| 72 | - $('.content-section').height($(document).height() - $('.title-section').height()); | ||
| 73 | -}) | ||
| 74 | - | ||
| 75 | -// 保存用户信息 | ||
| 76 | -const saveInfo = () => { | ||
| 77 | - axios.post('/srv/?a=add_performer', { | ||
| 78 | - kg_id: user_info.kg_id, | ||
| 79 | - perf_name: user_info.name, | ||
| 80 | - perf_avatar: '', | ||
| 81 | - meta_id: upload_image.meta_id ? upload_image.meta_id : metaId, | ||
| 82 | - }) | ||
| 83 | - .then(res => { | ||
| 84 | - if (res.data.code === 1) { | ||
| 85 | - Toast.success({ | ||
| 86 | - message: '保存成功', | ||
| 87 | - duration: 1000, | ||
| 88 | - onClose: () => { | ||
| 89 | - $router.go(-1) | ||
| 90 | - } | ||
| 91 | - }); | ||
| 92 | - } else { | ||
| 93 | - console.warn(res); | ||
| 94 | - Toast({ | ||
| 95 | - icon: 'close', | ||
| 96 | - message: res.data.msg | ||
| 97 | - }); | ||
| 98 | - } | ||
| 99 | - }) | ||
| 100 | - .catch(err => { | ||
| 101 | - console.error(err); | ||
| 102 | - }) | ||
| 103 | -} | ||
| 104 | -</script> | ||
| 105 | - | ||
| 106 | -<script> | ||
| 107 | -import mixin from 'common/mixin'; | ||
| 108 | - | ||
| 109 | -export default { | ||
| 110 | - mixins: [mixin.init], | ||
| 111 | - data () { | ||
| 112 | - return { | ||
| 113 | - | ||
| 114 | - } | ||
| 115 | - }, | ||
| 116 | - mounted () { | ||
| 117 | - | ||
| 118 | - }, | ||
| 119 | - methods: { | ||
| 120 | - | ||
| 121 | - } | ||
| 122 | -} | ||
| 123 | -</script> | ||
| 124 | - | ||
| 125 | -<style lang="less" scoped> | ||
| 126 | -.add-user-page { | ||
| 127 | - padding: 1rem; | ||
| 128 | -} | ||
| 129 | -</style> | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| ... | @@ -69,21 +69,20 @@ const validForm = () => { | ... | @@ -69,21 +69,20 @@ const validForm = () => { |
| 69 | }; | 69 | }; |
| 70 | 70 | ||
| 71 | let user_info = reactive({ | 71 | let user_info = reactive({ |
| 72 | + perf_id: $route.query.perf_id, | ||
| 72 | kg_id: $route.query.kg_id, | 73 | kg_id: $route.query.kg_id, |
| 73 | kindergarten: $route.query.kg_name, | 74 | kindergarten: $route.query.kg_name, |
| 74 | name: $route.query.name, | 75 | name: $route.query.name, |
| 75 | - meta_id: metaId.value | ||
| 76 | }); | 76 | }); |
| 77 | 77 | ||
| 78 | // 保存用户信息 | 78 | // 保存用户信息 |
| 79 | const saveInfo = () => { | 79 | const saveInfo = () => { |
| 80 | - // TODO: 需要一个修改儿童信息的接口 | 80 | + let url = $route.query.type === 'ADD' ? 'add_performer' : 'modify_performer'; |
| 81 | - let url = $route.query.type === 'Add' ? 'add_performer' : 'add_performer'; | ||
| 82 | axios.post(`/srv/?a=${url}`, { | 81 | axios.post(`/srv/?a=${url}`, { |
| 82 | + perf_id: $route.query.type !== 'ADD' ? user_info.perf_id : '', | ||
| 83 | kg_id: user_info.kg_id, | 83 | kg_id: user_info.kg_id, |
| 84 | perf_name: user_info.name, | 84 | perf_name: user_info.name, |
| 85 | - perf_avatar: '', | 85 | + perf_avatar: upload_image.src ? upload_image.src : $route.query.avatar |
| 86 | - meta_id: upload_image.meta_id ? upload_image.meta_id : metaId, | ||
| 87 | }) | 86 | }) |
| 88 | .then(res => { | 87 | .then(res => { |
| 89 | if (res.data.code === 1) { | 88 | if (res.data.code === 1) { | ... | ... |
| ... | @@ -234,6 +234,7 @@ const handleUser = (type) => { | ... | @@ -234,6 +234,7 @@ const handleUser = (type) => { |
| 234 | $router.push({ | 234 | $router.push({ |
| 235 | path: '/me/handleUser', | 235 | path: '/me/handleUser', |
| 236 | query: { | 236 | query: { |
| 237 | + perf_id: userInfo.value.perf_id, | ||
| 237 | kg_id: userInfo.value.kg_id, | 238 | kg_id: userInfo.value.kg_id, |
| 238 | kg_name: userInfo.value.kg_name, | 239 | kg_name: userInfo.value.kg_name, |
| 239 | type | 240 | type |
| ... | @@ -245,6 +246,7 @@ const handleUser = (type) => { | ... | @@ -245,6 +246,7 @@ const handleUser = (type) => { |
| 245 | query: { | 246 | query: { |
| 246 | avatar: userInfo.value.avatar, | 247 | avatar: userInfo.value.avatar, |
| 247 | name: userInfo.value.name, | 248 | name: userInfo.value.name, |
| 249 | + perf_id: userInfo.value.perf_id, | ||
| 248 | kg_id: userInfo.value.kg_id, | 250 | kg_id: userInfo.value.kg_id, |
| 249 | kg_name: userInfo.value.kg_name, | 251 | kg_name: userInfo.value.kg_name, |
| 250 | type | 252 | type | ... | ... |
-
Please register or login to post a comment