李志伟 3 anos atrás
pai
commit
49975e296b
2 arquivos alterados com 39 adições e 19 exclusões
  1. 2
    0
      jsconfig.json
  2. 37
    19
      src/pages/resumeWorkForm/index.vue

+ 2
- 0
jsconfig.json Ver arquivo

4
     "paths": {
4
     "paths": {
5
       "@/assets": ["src/assets"],
5
       "@/assets": ["src/assets"],
6
       "@/components": ["src/components"],
6
       "@/components": ["src/components"],
7
+      "@/services": ["src/services"],
8
+      "@/utils": ["src/utils"],
7
     }
9
     }
8
   },
10
   },
9
   "exclude": ["node_modules", "dist"]
11
   "exclude": ["node_modules", "dist"]

+ 37
- 19
src/pages/resumeWorkForm/index.vue Ver arquivo

1
 <template>
1
 <template>
2
   <div>
2
   <div>
3
-    <Image :src="headImg" width='100vw' />
3
+    <Image :src="headImg" width="100vw" />
4
     <h3>复工申请单</h3>
4
     <h3>复工申请单</h3>
5
     <Form @submit="onSumbmit">
5
     <Form @submit="onSumbmit">
6
-      
7
       <CellGroup inset>
6
       <CellGroup inset>
8
         <Field
7
         <Field
9
           v-model="orgId"
8
           v-model="orgId"
40
           :rules="[{ required: true, message: '请选择抗原截图' }]"
39
           :rules="[{ required: true, message: '请选择抗原截图' }]"
41
         >
40
         >
42
           <template #input>
41
           <template #input>
43
-            <!-- deletable是否显示删除按钮 preview-full-image-->
44
             <Uploader
42
             <Uploader
45
               v-model="antigenImage"
43
               v-model="antigenImage"
46
-              :max-count="1"        
47
               :preview-size='40'      
44
               :preview-size='40'      
48
               :after-read="antigenImageChange"
45
               :after-read="antigenImageChange"
49
-            />
46
+              :preview-image="false"
47
+            >
48
+            <i v-if="!antigenImageurl" class="van-badge__wrapper van-icon van-icon-photograph van-uploader__upload-icon"></i>
49
+            <Image
50
+                v-else
51
+                :src="antigenImageurl"
52
+                width="40px"
53
+                height="40px"
54
+              />              
55
+            </Uploader>
50
           </template>
56
           </template>
51
         </Field>
57
         </Field>
52
         <Field
58
         <Field
64
         </Field>
70
         </Field>
65
       </CellGroup>
71
       </CellGroup>
66
       <!-- <v-spacer /> -->
72
       <!-- <v-spacer /> -->
67
-      <CellGroup inset title="核酸">
73
+      <CellGroup inset title="核酸">        
68
         <Field
74
         <Field
69
           name="nucleicImage"
75
           name="nucleicImage"
70
           label="截图"
76
           label="截图"
74
           <template #input>
80
           <template #input>
75
             <Uploader
81
             <Uploader
76
               v-model="nucleicImage"
82
               v-model="nucleicImage"
77
-              :max-count="1"
78
-              :preview-size='40'
83
+              :preview-size="40"
79
               :after-read="nucleicImageChange"
84
               :after-read="nucleicImageChange"
80
-            />
85
+              :preview-image="false"
86
+            >
87
+            <i v-if="!nucleicimageurl" class="van-badge__wrapper van-icon van-icon-photograph van-uploader__upload-icon"></i>
88
+            <Image
89
+                v-else
90
+                :src="nucleicimageurl"
91
+                width="40px"
92
+                height="40px"
93
+              />
94
+            </Uploader>
81
           </template>
95
           </template>
82
         </Field>
96
         </Field>
83
         <Field
97
         <Field
113
 <script setup>
127
 <script setup>
114
 import { onMounted, reactive, ref } from 'vue';
128
 import { onMounted, reactive, ref } from 'vue';
115
 import { useRouter } from 'vue-router'
129
 import { useRouter } from 'vue-router'
116
-import { Button, Form, Field, CellGroup,Image, Uploader, RadioGroup, Radio, Switch, Popup, Picker, Toast } from 'vant';
117
-import { getOrgList } from '../../services/org'
118
-import { addResume } from '../../services/resume'
130
+import { Button, Form, Field, CellGroup, Image, Uploader, RadioGroup, Radio, Switch, Popup, Picker, Toast } from 'vant';
131
+import { getOrgList } from '@/services/org'
132
+import { addResume } from '@/services/resume'
119
 import { upload } from '@/services/oss'
133
 import { upload } from '@/services/oss'
120
-import headImg from '../../assets/headImg.png'
134
+import headImg from '@/assets/headImg.png'
135
+
136
+const fileList = ref();
121
 
137
 
122
 const orgId = ref('');
138
 const orgId = ref('');
123
 const userName = ref('');
139
 const userName = ref('');
124
 const antigenImage = ref();
140
 const antigenImage = ref();
125
-let antigenImageurl = ''
141
+const antigenImageurl = ref();
126
 const antigenIsNormal = ref('');
142
 const antigenIsNormal = ref('');
127
 const nucleicImage = ref();
143
 const nucleicImage = ref();
128
-let nucleicimageurl = ''
144
+const nucleicimageurl = ref();
129
 const nucleicIsNormal = ref('');
145
 const nucleicIsNormal = ref('');
130
 const showPicker = ref(false);
146
 const showPicker = ref(false);
131
 let columns = ref([]);
147
 let columns = ref([]);
132
 let orgList = ref([]);
148
 let orgList = ref([]);
133
 let loading = ref(false);
149
 let loading = ref(false);
134
 
150
 
151
+
135
 const router = useRouter()
152
 const router = useRouter()
136
 
153
 
137
 onMounted(() => {
154
 onMounted(() => {
155
+  console.log(antigenImageurl);
138
   getOrgList({ pageSize: 500 }).then((res) => {
156
   getOrgList({ pageSize: 500 }).then((res) => {
139
     orgList.value = res.records;
157
     orgList.value = res.records;
140
     columns.value = res.records.map(item => item.orgName);
158
     columns.value = res.records.map(item => item.orgName);
151
   upload(file.file).then(
169
   upload(file.file).then(
152
     (url) => {
170
     (url) => {
153
       file.status = 'done';
171
       file.status = 'done';
154
-      antigenImageurl = url;
172
+      antigenImageurl.value = url;
155
     }
173
     }
156
   ).catch(err => {
174
   ).catch(err => {
157
     file.stetus = 'failed';
175
     file.stetus = 'failed';
165
   upload(file.file).then(
183
   upload(file.file).then(
166
     (url) => {
184
     (url) => {
167
       file.status = 'done';
185
       file.status = 'done';
168
-      nucleicimageurl = url;
186
+      nucleicimageurl.value = url;
169
     }
187
     }
170
   ).catch(err => {
188
   ).catch(err => {
171
     file.stetus = 'failed';
189
     file.stetus = 'failed';
179
 const onSumbmit = (values) => {
197
 const onSumbmit = (values) => {
180
   let orgid = orgList.value.filter(item => item.orgName = values.orgId)[0].orgId;
198
   let orgid = orgList.value.filter(item => item.orgName = values.orgId)[0].orgId;
181
   loading.value = true;
199
   loading.value = true;
182
-  addResume({ ...values, orgId: orgid, antigenImage: antigenImageurl, nucleicImage: nucleicimageurl }).then(res => {
200
+  addResume({ ...values, orgId: orgid, antigenImage: antigenImageurl.value, nucleicImage: nucleicimageurl.value }).then(res => {
183
     router.replace({
201
     router.replace({
184
       path: '/result'
202
       path: '/result'
185
     })
203
     })
199
   text-align: center;
217
   text-align: center;
200
 }
218
 }
201
 
219
 
202
-::v-deep .van-field__control--custom{
220
+::v-deep .van-field__control--custom {
203
   justify-content: end;
221
   justify-content: end;
204
 }
222
 }
205
 </style>
223
 </style>