Bladeren bron

微网站

xiaoming_global 4 jaren geleden
bovenliggende
commit
a65a2945d5

+ 53 - 2
package-lock.json Bestand weergeven

@@ -354,8 +354,7 @@
354 354
     "array-find-index": {
355 355
       "version": "1.0.2",
356 356
       "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz",
357
-      "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=",
358
-      "dev": true
357
+      "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E="
359 358
     },
360 359
     "array-flatten": {
361 360
       "version": "1.1.1",
@@ -1511,6 +1510,14 @@
1511 1510
         "tweetnacl": "^0.14.3"
1512 1511
       }
1513 1512
     },
1513
+    "better-scroll": {
1514
+      "version": "1.12.6",
1515
+      "resolved": "https://registry.npmjs.org/better-scroll/-/better-scroll-1.12.6.tgz",
1516
+      "integrity": "sha512-blo8gDgoJKJphhdNeklkSNT6pWrQvNk+sZ9q9yDo7dQXJZj8aKAMJdSJp+cwU0pxNTtScaYkxYT8yJ5ZttAN/w==",
1517
+      "requires": {
1518
+        "babel-runtime": "^6.0.0"
1519
+      }
1520
+    },
1514 1521
     "big.js": {
1515 1522
       "version": "5.2.2",
1516 1523
       "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz",
@@ -3097,6 +3104,15 @@
3097 3104
         }
3098 3105
       }
3099 3106
     },
3107
+    "cube-ui": {
3108
+      "version": "1.12.26",
3109
+      "resolved": "https://registry.npmjs.org/cube-ui/-/cube-ui-1.12.26.tgz",
3110
+      "integrity": "sha512-iAKHdXbKupv+Vf5aD1kNjdafAKe6W2AlNVJpuDL3wFxEo2jL3m2kE6PU7xwnwFV0od5NUyhxAyWechFv9uzvhw==",
3111
+      "requires": {
3112
+        "better-scroll": "~1.12.6",
3113
+        "vue-create-api": "^0.2.0"
3114
+      }
3115
+    },
3100 3116
     "cuint": {
3101 3117
       "version": "0.2.2",
3102 3118
       "resolved": "https://registry.npmjs.org/cuint/-/cuint-0.2.2.tgz",
@@ -7423,6 +7439,16 @@
7423 7439
       "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=",
7424 7440
       "dev": true
7425 7441
     },
7442
+    "mint-ui": {
7443
+      "version": "2.2.13",
7444
+      "resolved": "https://registry.npmjs.org/mint-ui/-/mint-ui-2.2.13.tgz",
7445
+      "integrity": "sha512-Xz1SFagHSzKOprwQv3fcekXT5RJvhh939zwZHcWeazk1OJrCjsD4I2qm49AEUCfT1AoYzC+rsZIwGP/J6LwVVw==",
7446
+      "requires": {
7447
+        "array-find-index": "^1.0.2",
7448
+        "raf.js": "0.0.4",
7449
+        "vue-lazyload": "^1.0.1"
7450
+      }
7451
+    },
7426 7452
     "mississippi": {
7427 7453
       "version": "2.0.0",
7428 7454
       "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-2.0.0.tgz",
@@ -11556,6 +11582,11 @@
11556 11582
         "fast-diff": "1.1.2"
11557 11583
       }
11558 11584
     },
11585
+    "raf.js": {
11586
+      "version": "0.0.4",
11587
+      "resolved": "https://registry.npmjs.org/raf.js/-/raf.js-0.0.4.tgz",
11588
+      "integrity": "sha1-8Vr0RdJBsn+nExpXRQtn75xAL+w="
11589
+    },
11559 11590
     "randomatic": {
11560 11591
       "version": "3.1.1",
11561 11592
       "resolved": "https://registry.npmjs.org/randomatic/-/randomatic-3.1.1.tgz",
@@ -14230,6 +14261,11 @@
14230 14261
       "resolved": "https://registry.npmjs.org/vue-count-to/-/vue-count-to-1.0.13.tgz",
14231 14262
       "integrity": "sha512-6R4OVBVNtQTlcbXu6SJ8ENR35M2/CdWt3Jmv57jOUM+1ojiFmjVGvZPH8DfHpMDSA+ITs+EW5V6qthADxeyYOQ=="
14232 14263
     },
14264
+    "vue-create-api": {
14265
+      "version": "0.2.1",
14266
+      "resolved": "https://registry.npmjs.org/vue-create-api/-/vue-create-api-0.2.1.tgz",
14267
+      "integrity": "sha512-qV0mtqLm2FodUKHuOENL06mvx29ZhCc3elmrxvuWwMfFUnusJfnOIUziv9xJ6WgUfYs3Rc1kty8NpVvd6sgyAw=="
14268
+    },
14233 14269
     "vue-hot-reload-api": {
14234 14270
       "version": "2.3.3",
14235 14271
       "resolved": "https://registry.npmjs.org/vue-hot-reload-api/-/vue-hot-reload-api-2.3.3.tgz",
@@ -14241,6 +14277,16 @@
14241 14277
       "resolved": "https://registry.npmjs.org/vue-i18n/-/vue-i18n-7.3.2.tgz",
14242 14278
       "integrity": "sha512-4NBhqrH4Pe1etecC2aafXEKH9gJY+TaO4EHYZ0EBYPwFakUp4FyDHHf+r2N1keSX60iEm1k25WcVMD+OxAH/yw=="
14243 14279
     },
14280
+    "vue-infinite-scroll": {
14281
+      "version": "2.0.2",
14282
+      "resolved": "https://registry.npmjs.org/vue-infinite-scroll/-/vue-infinite-scroll-2.0.2.tgz",
14283
+      "integrity": "sha512-n+YghR059YmciANGJh9SsNWRi1YZEBVlODtmnb/12zI+4R72QZSWd+EuZ5mW6auEo/yaJXgxzwsuhvALVnm73A=="
14284
+    },
14285
+    "vue-lazyload": {
14286
+      "version": "1.3.1",
14287
+      "resolved": "https://registry.npmjs.org/vue-lazyload/-/vue-lazyload-1.3.1.tgz",
14288
+      "integrity": "sha512-sQ4O3TRq95SL3MyK9VaLI/KGFoEK5054/gtDvSwem+UvSGQYy94DX6VzOeCHc/oTQg3r5M8HSlMSBBQu873Mww=="
14289
+    },
14244 14290
     "vue-loader": {
14245 14291
       "version": "13.7.2",
14246 14292
       "resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-13.7.2.tgz",
@@ -14328,6 +14374,11 @@
14328 14374
         }
14329 14375
       }
14330 14376
     },
14377
+    "vuescroll": {
14378
+      "version": "4.13.1",
14379
+      "resolved": "https://registry.npmjs.org/vuescroll/-/vuescroll-4.13.1.tgz",
14380
+      "integrity": "sha512-cwp+ptQHZRYwjlDjwxDYMypYzML1e6Y7XhDVWrkz274OxbpAnoXW0zLUaMN0Yvgquf81CgksEXSZgD/Ae/xQ3w=="
14381
+    },
14331 14382
     "vuex": {
14332 14383
       "version": "3.0.1",
14333 14384
       "resolved": "https://registry.npmjs.org/vuex/-/vuex-3.0.1.tgz",

+ 4 - 0
package.json Bestand weergeven

@@ -43,6 +43,7 @@
43 43
     "clipboard": "1.7.1",
44 44
     "codemirror": "5.32.0",
45 45
     "connect": "3.6.6",
46
+    "cube-ui": "^1.12.26",
46 47
     "driver.js": "0.5.2",
47 48
     "dropzone": "5.2.0",
48 49
     "echarts": "3.8.5",
@@ -52,6 +53,7 @@
52 53
     "js-cookie": "2.2.0",
53 54
     "jsonlint": "1.6.3",
54 55
     "jszip": "3.1.5",
56
+    "mint-ui": "^2.2.13",
55 57
     "mockjs": "1.0.1-beta3",
56 58
     "normalize.css": "7.0.0",
57 59
     "nprogress": "0.2.0",
@@ -67,10 +69,12 @@
67 69
     "vue": "2.5.16",
68 70
     "vue-count-to": "1.0.13",
69 71
     "vue-i18n": "7.3.2",
72
+    "vue-infinite-scroll": "^2.0.2",
70 73
     "vue-multiselect": "2.0.8",
71 74
     "vue-router": "3.0.1",
72 75
     "vue-splitpane": "1.0.2",
73 76
     "vuedraggable": "^2.16.0",
77
+    "vuescroll": "^4.13.1",
74 78
     "vuex": "3.0.1",
75 79
     "webim-tencent": "^1.0.2",
76 80
     "xlsx": "^0.11.16"

+ 38 - 0
src/api/site/site.js Bestand weergeven

@@ -0,0 +1,38 @@
1
+import request from '@/utils/request'
2
+
3
+
4
+export function saveHispital(data){
5
+    console.log("添加医院",data);
6
+    return request({
7
+        url:"/api/site/savehispital",
8
+        method:"Post",
9
+        data:data,
10
+    })
11
+}
12
+
13
+export function addOffices(data){
14
+    console.log("添加科室",data);
15
+    return request({
16
+        url:"/api/site/addoffices",
17
+        method:"Post",
18
+        data:data,
19
+    })
20
+}
21
+
22
+export function AddDoctor(data){
23
+    console.log("添加名医",data);
24
+    return request({
25
+        url:"/api/site/adddoctor",
26
+        method:"Post",
27
+        data:data,
28
+    })
29
+}
30
+
31
+export function AddDoctorInfo(data){
32
+   console.log("编辑名医介绍",data);
33
+   return request({
34
+       url:"/api/site/adddoctorinfo",
35
+       method:"Post",
36
+       data:data,
37
+   })
38
+}

BIN
src/assets/img/b.jpg Bestand weergeven


BIN
src/assets/img/c.jpg Bestand weergeven


BIN
src/assets/img/d.jpg Bestand weergeven


BIN
src/assets/img/dian.png Bestand weergeven


BIN
src/assets/img/phone.png Bestand weergeven


BIN
src/assets/img/shouye.png Bestand weergeven


BIN
src/assets/img/u.png Bestand weergeven


BIN
src/assets/img/u213.png Bestand weergeven


BIN
src/assets/img/u216.png Bestand weergeven


BIN
src/assets/img/u289.png Bestand weergeven


BIN
src/assets/img/u290.png Bestand weergeven


BIN
src/assets/img/u291.png Bestand weergeven


BIN
src/assets/img/u292.png Bestand weergeven


BIN
src/assets/img/u293.png Bestand weergeven


BIN
src/assets/img/u294.png Bestand weergeven


BIN
src/assets/img/u295.png Bestand weergeven


BIN
src/assets/img/u296.png Bestand weergeven


BIN
src/assets/img/u373.png Bestand weergeven


BIN
src/assets/img/wifi.png Bestand weergeven


BIN
src/assets/img/xinhao.png Bestand weergeven


+ 1 - 0
src/lang/zh.js Bestand weergeven

@@ -175,6 +175,7 @@ export default {
175 175
     SMSManage: "短信管理",
176 176
     SMSSend: "群发短信",
177 177
     site:"微网站",
178
+    preview:"预览"
178 179
   },
179 180
   navbar: {
180 181
     logOut: '退出登录',

+ 9 - 0
src/main.js Bestand weergeven

@@ -23,6 +23,15 @@ import './xt_permission'
23 23
 
24 24
 import * as filters from './filters' // global filters
25 25
 
26
+//引入mint-ui
27
+import Mint from 'mint-ui';
28
+Vue.use(Mint);
29
+
30
+//引入无线滚条
31
+import vuescroll from 'vuescroll'
32
+import { read } from 'fs';
33
+import 'vuescroll/dist/vuescroll.css';
34
+Vue.use(vuescroll)
26 35
 Vue.use(Element, {
27 36
   size: 'medium', // set element-ui default size
28 37
   i18n: (key, value) => i18n.t(key, value)

+ 3 - 0
src/scrm_pages/site/components/add-contact.vue Bestand weergeven

@@ -251,6 +251,9 @@ export default {
251 251
         name: ""
252 252
       }
253 253
     };
254
+  },
255
+  methods:{
256
+    
254 257
   }
255 258
 };
256 259
 </script>

+ 595 - 71
src/scrm_pages/site/components/new-feature.vue Bestand weergeven

@@ -60,83 +60,89 @@
60 60
     :visible.sync="dialogVisible"
61 61
     width="550px"
62 62
     :before-close="handleClose">
63
-    <el-form ref="form" :model="form" label-width="80px">
64
-      <el-form-item label="模块标题: ">
65
-        <el-input v-model="form.name"></el-input>
63
+    <el-form ref="rotationform" :model="rotationform" label-width="90px" rules="rules" >
64
+      <el-form-item label="模块标题: " required prop="title">
65
+        <el-input v-model="rotationform.title"></el-input>
66 66
       </el-form-item>
67
-      <el-form-item label="排序值: ">
68
-        <el-input v-model="form.name"></el-input>
67
+      <el-form-item label="排序值: " required prop="sort">
68
+        <el-input v-model="rotationform.sort"></el-input>
69 69
         <p class="tips">请输入1-99的整数,数值越小,模块排序越靠前</p>
70 70
       </el-form-item>
71
-      <el-form-item label="添加图片: ">
71
+      <el-form-item label="添加图片: " v-model="rotationform.rotationImages" required prop="rotationImages">
72 72
         <el-upload
73
-          action="https://jsonplaceholder.typicode.com/posts/"
73
+          limit="2"
74
+          :data="rotationData"
75
+          action="https://upload.qiniup.com"
74 76
           list-type="picture-card"
75
-          :on-preview="handlePictureCardPreview"
76
-          :on-remove="handleRemove">
77
+          :on-success="RotationchartSuccess"
78
+          :before-upload="beforeRotationUpload"
79
+          :file-list="filelist">
77 80
           <i class="el-icon-plus"></i>
78
-        </el-upload>
81
+        </el-upload>   
79 82
       </el-form-item>
83
+       <span class="uploadfont">图片已上传0张,最多上传9张图片</span>
80 84
     </el-form>
81 85
     <span slot="footer" class="dialog-footer">
82 86
       <el-button @click="dialogVisible = false">取 消</el-button>
83
-      <el-button type="primary" @click="dialogVisible = false">确 定</el-button>
87
+      <el-button type="primary" @click="AddRotationChart('rotationform')">确 定</el-button>
84 88
     </span>
85 89
   </el-dialog>
90
+
86 91
   <!-- 新增医院介绍 -->
87 92
   <el-dialog
88 93
     title="新增医院介绍"
89 94
     :visible.sync="two"
90 95
     width="550px"
91 96
     :before-close="handleClose">
92
-    <el-form ref="form" :model="form" label-width="80px">
93
-      <el-form-item label="模块标题: ">
94
-        <el-input v-model="form.name"></el-input>
97
+    <el-form ref="hispitalform" :model="hispitalform" label-width="90px" :rules="rules">
98
+      <el-form-item label="模块标题:" required prop="title">
99
+        <el-input v-model="hispitalform.title"></el-input>
95 100
       </el-form-item>
96
-      <el-form-item label="排序值: ">
97
-        <el-input v-model="form.name"></el-input>
101
+      <el-form-item label="排序值:" required prop="sort">
102
+        <el-input v-model="hispitalform.sort" ></el-input>
98 103
         <p class="tips">请输入1-99的整数,数值越小,模块排序越靠前</p>
99 104
       </el-form-item>
100
-      <el-form-item label="医院介绍: ">
105
+      <el-form-item label="医院介绍:" required prop="introduction">
101 106
         <el-input
102 107
           type="textarea"
103 108
           :rows="6"
104 109
           placeholder="请输入内容"
105
-          v-model="textarea">
110
+          v-model="hispitalform.introduction">
106 111
         </el-input>
107 112
       </el-form-item>
108 113
     </el-form>
109 114
     <span slot="footer" class="dialog-footer">
110 115
       <el-button @click="two = false">取 消</el-button>
111
-      <el-button type="primary" @click="two = false">确 定</el-button>
116
+       <el-button type="primary" @click="saveHispital('hispitalform');">确 定</el-button> 
112 117
     </span>
113 118
   </el-dialog>
119
+
114 120
   <!-- 新增科室介绍 -->
115 121
   <el-dialog
116 122
     title="新增科室介绍"
117 123
     :visible.sync="three"
118 124
     width="550px"
119 125
     :before-close="handleClose">
120
-    <el-form ref="form" :model="form" label-width="80px">
121
-      <el-form-item label="模块标题: ">
122
-        <el-input v-model="form.name"></el-input>
126
+    <el-form ref="administform" :model="administform" label-width="90px" :rules="rules">
127
+      <el-form-item label="模块标题:" required prop="title">
128
+        <el-input v-model="administform.title"></el-input>
123 129
       </el-form-item>
124
-      <el-form-item label="排序值: ">
125
-        <el-input v-model="form.name"></el-input>
130
+      <el-form-item label="排序值:" required prop="sort">
131
+        <el-input v-model="administform.sort" ></el-input>
126 132
         <p class="tips">请输入1-99的整数,数值越小,模块排序越靠前</p>
127 133
       </el-form-item>
128
-      <el-form-item label="科室介绍: ">
134
+      <el-form-item label="科室介绍:" required prop="introduction">
129 135
         <el-input
130 136
           type="textarea"
131 137
           :rows="6"
132 138
           placeholder="请输入内容"
133
-          v-model="textarea">
139
+          v-model="administform.introduction">
134 140
         </el-input>
135 141
       </el-form-item>
136 142
     </el-form>
137 143
     <span slot="footer" class="dialog-footer">
138 144
       <el-button @click="three = false">取 消</el-button>
139
-      <el-button type="primary" @click="three = false">确 定</el-button>
145
+      <el-button type="primary" @click="addAdminist('administform');">确 定</el-button>
140 146
     </span>
141 147
   </el-dialog>
142 148
 
@@ -146,51 +152,90 @@
146 152
     :visible.sync="four"
147 153
     width="550px"
148 154
     :before-close="handleClose">
149
-    <el-form ref="form" :model="form" label-width="80px">
150
-      <el-form-item label="模块标题: ">
151
-        <el-input v-model="form.name"></el-input>
155
+    <el-form ref="doctorform" :model="doctorform" label-width="90px" :rules="rules">
156
+      <el-form-item label="模块标题:" required prop="title">
157
+        <el-input v-model="doctorform.title"></el-input>
152 158
       </el-form-item>
153
-      <el-form-item label="排序值: ">
154
-        <el-input v-model="form.name"></el-input>
159
+      <el-form-item label="排序值: " required prop="sort">
160
+        <el-input v-model="doctorform.sort"></el-input>
155 161
         <p class="tips">请输入1-99的整数,数值越小,模块排序越靠前</p>
156 162
       </el-form-item>
157
-      <el-form-item label="新增名医: ">
163
+      <el-form-item label="新增名医:" required prop="image">       
164
+        <div class="flex-img">
165
+        <div class="el-upload-list el-upload-list--picture-card" v-show="hideShow">            
166
+            <div class="el-upload-list__item is-success">              
167
+                 <img class="flex-img__image" :src="doctorform.image" v-if="doctorform.image">              
168
+                <label class="el-upload-list__item-status-label">
169
+                    <i class="el-icon-upload-success el-icon-check"></i>
170
+                </label>
171
+                <span class="el-upload-list__item-actions">
172
+                    <span class="el-upload-list__item-delete">
173
+                        <i class="el-icon-edit-outline" @click="editDoctor()"></i>
174
+                        <i class="el-icon-delete" @click="deleteDoctor"></i>
175
+                    </span>
176
+                </span>
177
+            </div>         
178
+        </div>
158 179
         <el-upload
159
-          action="https://jsonplaceholder.typicode.com/posts/"
160
-          list-type="picture-card"
161
-          :on-preview="handlePictureCardPreview"
162
-          :on-remove="handleRemove">
163
-          <i class="el-icon-plus"></i>
164
-        </el-upload>
165
-      </el-form-item>
180
+            class="image-uploader"
181
+            action="https://upload.qiniup.com"
182
+            :show-file-list="false"
183
+            :data="uploadData"
184
+            accept="image/jpeg,image/jpg,image/png"
185
+            :on-success="imageUploadSuccess"
186
+            :before-upload="beforeUpload"
187
+            v-show="!hideShow">
188
+            <i class="el-icon-plus"></i>
189
+        </el-upload>          
190
+    </div>
191
+   </el-form-item>
166 192
     </el-form>
167 193
     <span slot="footer" class="dialog-footer">
168 194
       <el-button @click="four = false">取 消</el-button>
169
-      <el-button type="primary" @click="four = false">确 定</el-button>
195
+      <el-button type="primary" @click="AddDoctor('doctorform')">确 定</el-button>
170 196
     </span>
171 197
   </el-dialog>
198
+  
172 199
   <!-- 新增科室环境 -->
173 200
    <el-dialog
174 201
     title="新增科室环境"
175 202
     :visible.sync="five"
176 203
     width="550px"
177 204
     :before-close="handleClose">
178
-    <el-form ref="form" :model="form" label-width="100px">
179
-      <el-form-item label="模块标题: ">
180
-        <el-input v-model="form.name"></el-input>
205
+    <el-form ref="keform" :model="keform" label-width="110px" rules="rules">
206
+      <el-form-item label="模块标题: " required prop="title">
207
+        <el-input v-model="keform.title"></el-input>
181 208
       </el-form-item>
182
-      <el-form-item label="排序值: ">
183
-        <el-input v-model="form.name"></el-input>
209
+      <el-form-item label="排序值: " required prop="sort">
210
+        <el-input v-model="keform.sort"></el-input>
184 211
         <p class="tips">请输入1-99的整数,数值越小,模块排序越靠前</p>
185 212
       </el-form-item>
186
-      <el-form-item label="新增科室环境: ">
187
-        <el-upload
188
-          action="https://jsonplaceholder.typicode.com/posts/"
189
-          list-type="picture-card"
190
-          :on-preview="handlePictureCardPreview"
191
-          :on-remove="handleRemove">
192
-          <i class="el-icon-plus"></i>
213
+      <el-form-item label="新增科室环境: " required prop="keimages">
214
+        <div class="flex-img">
215
+          <div class="el-upload-list el-upload-list--picture-card" v-show="keshow">            
216
+            <div class="el-upload-list__item is-success">              
217
+                 <img class="flex-img__image" :src="keform.images">              
218
+                <label class="el-upload-list__item-status-label">
219
+                    <i class="el-icon-upload-success el-icon-check"></i>
220
+                </label>
221
+                <span class="el-upload-list__item-actions">
222
+                    <span class="el-upload-list__item-delete">
223
+                        <i class="el-icon-edit-outline" ></i>
224
+                        <i class="el-icon-delete"></i>
225
+                    </span>
226
+                </span>
227
+            </div>   
228
+        </div>   
229
+          <el-upload
230
+           :data="keData"
231
+            action="https://upload.qiniup.com"
232
+            list-type="picture-card"
233
+            :on-success="handleSuccess"
234
+            :before-upload="beforehandleUpload"
235
+            v-show="!keshow">
236
+            <i class="el-icon-plus"></i>
193 237
         </el-upload>
238
+        </div>
194 239
       </el-form-item>
195 240
     </el-form>
196 241
     <span slot="footer" class="dialog-footer">
@@ -274,7 +319,8 @@
274 319
           action="https://jsonplaceholder.typicode.com/posts/"
275 320
           list-type="picture-card"
276 321
           :on-preview="handlePictureCardPreview"
277
-          :on-remove="handleRemove">
322
+          :on-remove="handleRemove"
323
+          >
278 324
           <i class="el-icon-plus"></i>
279 325
         </el-upload>
280 326
       </el-form-item>
@@ -284,14 +330,69 @@
284 330
       <el-button type="primary" @click="eight = false">确 定</el-button>
285 331
     </span>
286 332
   </el-dialog>
333
+    
334
+    <!-- 编辑名医介绍 -->
335
+   <el-dialog
336
+      title="编辑医生介绍"
337
+      :visible.sync="centerDialogVisible"
338
+      width="30%"
339
+      center>
340
+       <el-form label-width="90px" class="clearfix" :model="eidtDoctorform" ref="eidtDoctorform" :rules="rules">
341
+          <el-row :span=20>
342
+            <el-form-item label="医生姓名:" required prop="docname">
343
+              <el-input v-model="eidtDoctorform.docname">
287 344
 
345
+              </el-input>
346
+            </el-form-item>
347
+          </el-row>
348
+          <el-row :span=20>
349
+               <el-form-item label="医生头像:" required prop="docHead">
350
+                   <el-upload
351
+                       :data="doctorData"
352
+                       class="avatar-uploader"
353
+                       action="https://upload.qiniup.com"
354
+                       :show-file-list="false"
355
+                       :on-success="handleAvatarSuccess"
356
+                       :before-upload="beforeAvatarUpload">
357
+                       <img v-if="eidtDoctorform.docHead" :src="eidtDoctorform.docHead" class="avatar">
358
+                       <i v-else class="el-icon-plus avatar-uploader-icon"></i>
359
+                   </el-upload>
360
+               </el-form-item>  
361
+          </el-row>
362
+          <el-row :span=20>
363
+            <el-form-item label="医生职称:" required prop="docpositional">
364
+              <el-input v-model="eidtDoctorform.docpositional">
288 365
 
366
+              </el-input>
367
+            </el-form-item>
368
+          </el-row>
369
+          <el-row :span=20>
370
+            <el-form-item label="医生简介:" required prop="docintroduction">      
371
+                <div style="margin: 10px 0;"></div>
372
+                <el-input
373
+                 type="textarea"
374
+                :autosize="{ minRows: 2, maxRows: 4}"
375
+                 v-model="eidtDoctorform.docintroduction">
376
+                </el-input>
377
+            </el-form-item>
378
+          </el-row>
379
+        </el-form>
380
+     <span slot="footer" class="dialog-footer">
381
+      <el-button @click="centerDialogVisible = false">取 消</el-button>
382
+      <el-button type="primary" @click="AddDoctorInfo('eidtDoctorform')">确 定</el-button>
383
+      </span>
384
+   </el-dialog>
289 385
 </div>
290 386
 </template>
291 387
 
292 388
 <script>
389
+   import { saveHispital,addOffices,AddDoctor,AddDoctorInfo } from '@/api/site/site'  
390
+   import { getToken } from '@/api/qiniu'
391
+   import { getFileExtension} from '@/utils/tools'
392
+   import { isIP } from 'net';
293 393
 export default {
294 394
   name: "newfeature",
395
+  props: ['image', 'clearList'],
295 396
   data() {
296 397
     return {
297 398
       new1: require("../../../assets/preview/new-1.png"),
@@ -303,27 +404,450 @@ export default {
303 404
       six: false,
304 405
       seven: false,
305 406
       eight: false,
407
+      dialogImageUrl: '',
408
+      disabled: false,
409
+      qiniuDomain: 'https://images.shengws.com/',
410
+      uploadData: { token: '', key: '' },
411
+      doctorData: { token: '' ,key: '' },
412
+      rotationData: { token:'',key: '' },
413
+      keData: { token: '' ,key: ''},
414
+      file: this.image ? this.image : '',
415
+      hideShow:false,
416
+      keshow:false,
417
+      show:false,
418
+      keShow:false,
419
+      centerDialogVisible:false,
420
+      filelist:[],
306 421
       form: {
307
-        name: ""
308
-      }
422
+        name: "",
423
+        sort:"", 
424
+        textarea:"",
425
+        image:"",
426
+      },
427
+      hispitalform:{
428
+        title:"",
429
+        sort:"",
430
+        introduction:"",
431
+      },
432
+      administform:{
433
+         title:"",
434
+         sort:"",
435
+         introduction:"", 
436
+      },
437
+      doctorform:{
438
+        title:"",
439
+        sort:"",
440
+        image:"",
441
+      },
442
+      eidtDoctorform:{
443
+       docname:"",
444
+       docHead:"",
445
+       docpositional:"",
446
+       docintroduction:"",
447
+      },
448
+      rotationform:{
449
+        title:"",
450
+        sort:"",
451
+        rotationImages:[],
452
+      },
453
+      keform:{
454
+        title:"",
455
+        sort:"",
456
+        keImages:[],
457
+        images:"",
458
+      },
459
+       rules: {
460
+         title: [{required: true, message: "请填写模块标题",},],
461
+         sort: [{required: true,message:"请填写排序值"}],
462
+         introduction: [{required: true,message:"请填写医院介绍"}],
463
+         image: [{required: true,message:"请填写新增名医"}],
464
+         docname: [{required:true,message:"请填写医生姓名"}],
465
+         docHead: [{required: true,message:"请填写医生头像"}],
466
+         docpositional:[{required:true,message:"请填写医生职位"}],
467
+         docintroduction:[{required:true,message:"请填写医生简介"}]
468
+      },
309 469
     };
310
-  }
311
-};
470
+  },
471
+  // 医院介绍模块
472
+  methods:{    
473
+      handleRemove(file) {
474
+        console.log(file);
475
+      },
476
+      handlePictureCardPreview(file,res) {
477
+        //  this.dialogImageUrl = this.qiniuDomain + res.url;   
478
+        //  this.dialogVisible = true;
479
+      },
480
+      handleDownload(file) {
481
+        console.log(file);
482
+      },
483
+      handleClose(done){
484
+         this.$confirm('确认关闭?').then(_ =>{
485
+           done();
486
+         })
487
+         .catch(_ =>{});
488
+      }, 
489
+
490
+      handleSuccess(res,file){
491
+         this.keform.keImages.push(this.qiniuDomain + res.url);
492
+         this.keform.images = this.qiniuDomain + res.url;
493
+         this.keshow = true;
494
+      },
495
+      beforehandleUpload(file){
496
+        const isJPG = file.type === 'image/jpeg';
497
+        const isLt2M = file.size / 1024 / 1024 < 2;
498
+        if (!isJPG) {
499
+          this.$message.error('上传头像图片只能是 JPG 格式!');
500
+         }
501
+        if (!isLt2M) {
502
+          this.$message.error('上传头像图片大小不能超过 2MB!');
503
+        }
504
+           var date = new Date()
505
+            var ext = getFileExtension(file.name)
506
+            var key = date.getFullYear() + (date.getMonth() + 1) + date.getDate() + date.getHours()  + date.getMinutes()  + date.getSeconds()  +'_o_' + file.uid + '.' + ext;
507
+            this.uploading = true;
508
+            this.loadingText = '封面图片上传中'
509
+
510
+            const _self = this
511
+            return new Promise((resolve, reject) => {
512
+                getToken().then(response => {
513
+                    const tokentree = response.data.data.uptoken
514
+                    console.log("科室token是什么?",tokentree)
515
+                    _self._data.keData.token = tokentree;
516
+                    _self._data.keData.key = key;
517
+                    resolve(true)
518
+                }).catch(err => {
519
+                    reject(false)
520
+                    this.uploading = false;
521
+                })
522
+            })
523
+    
524
+      },
525
+      
526
+      imageUploadSuccess(res,file) {
527
+        this.doctorform.image = this.qiniuDomain + res.url;  
528
+        this.hideShow = true;
529
+        console.log("這是啥?",this.qiniuDomain+res.url)
530
+      },
531
+      beforeUpload(file) {   
532
+        const isJPG = file.type === 'image/jpeg';
533
+        const isLt2M = file.size / 1024 / 1024 < 2;
534
+        if (!isJPG) {
535
+          this.$message.error('上传头像图片只能是 JPG 格式!');
536
+         }
537
+        if (!isLt2M) {
538
+          this.$message.error('上传头像图片大小不能超过 2MB!');
539
+        }
540
+           var date = new Date()
541
+            var ext = getFileExtension(file.name)
542
+            var key = date.getFullYear() + (date.getMonth() + 1) + date.getDate() + date.getHours()  + date.getMinutes()  + date.getSeconds()  +'_o_' + file.uid + '.' + ext;
543
+            this.uploading = true;
544
+            this.loadingText = '封面图片上传中'
545
+
546
+            const _self = this
547
+            return new Promise((resolve, reject) => {
548
+                getToken().then(response => {
549
+                    const tokentree = response.data.data.uptoken
550
+                    console.log("token是什么?",tokentree)
551
+                    _self._data.uploadData.token = tokentree;
552
+                    _self._data.uploadData.key = key;
553
+                    resolve(true)
554
+                }).catch(err => {
555
+                    reject(false)
556
+                    this.uploading = false;
557
+                })
558
+            })
559
+
560
+        },
561
+        handleRemove() {
562
+            this.file = '';
563
+      },
564
+
565
+
566
+      handleAvatarSuccess(res, file) {
567
+         this.eidtDoctorform.docHead = this.qiniuDomain + res.url;  
568
+      },
569
+      beforeAvatarUpload(file) {
570
+        console.log("尺寸",file.size)
571
+        const isJPG = file.type === 'image/jpeg';
572
+        const isLt2M = file.size / 1024 / 1024 < 2;
573
+       
574
+        if (!isJPG) {
575
+          this.$message.error('上传头像图片只能是 JPG 格式!');
576
+        }
577
+        if (!isLt2M) {
578
+          this.$message.error('上传头像图片大小不能超过 2MB!');
579
+        }
580
+      
581
+         var date = new Date()
582
+            var ext = getFileExtension(file.name)
583
+            var key = date.getFullYear() + (date.getMonth() + 1) + date.getDate() + date.getHours()  + date.getMinutes()  + date.getSeconds()  +'_o_' + file.uid + '.' + ext;
584
+            this.uploading = true;
585
+            this.loadingText = '封面图片上传中'
586
+
587
+            const _self = this
588
+            return new Promise((resolve, reject) => {
589
+                getToken().then(response => {
590
+                    const token= response.data.data.uptoken
591
+                    console.log("医生头像token是什么?",token)
592
+                    _self._data.doctorData.token = token;
593
+                    _self._data.doctorData.key = key;
594
+                    resolve(true)
595
+                }).catch(err => {
596
+                    reject(false)
597
+                    this.uploading = false;
598
+                })
599
+            })
600
+          return isJPG && isLt2M;
601
+      },
602
+
603
+      //轮播图
604
+      RotationchartSuccess(res,file,filelist){         
605
+         this.rotationform.rotationImages.push(this.qiniuDomain + res.url);         
606
+         console.log("轮播图地址",this.rotationform.rotationImages); 
607
+      },
608
+      beforeRotationUpload(file){
609
+           console.log("尺寸",file.size)
610
+        const isJPG = file.type === 'image/jpeg';
611
+        const isLt2M = file.size / 1024 / 1024 < 2;
612
+       
613
+        if (!isJPG) {
614
+          this.$message.error('上传头像图片只能是 JPG 格式!');
615
+        }
616
+        if (!isLt2M) {
617
+          this.$message.error('上传头像图片大小不能超过 2MB!');
618
+        }
619
+      
620
+         var date = new Date()
621
+            var ext = getFileExtension(file.name)
622
+            var key = date.getFullYear() + (date.getMonth() + 1) + date.getDate() + date.getHours()  + date.getMinutes()  + date.getSeconds()  +'_o_' + file.uid + '.' + ext;
623
+            this.uploading = true;
624
+            this.loadingText = '封面图片上传中'
625
+
626
+            const _self = this
627
+            return new Promise((resolve, reject) => {
628
+                getToken().then(response => {
629
+                    const token= response.data.data.uptoken
630
+                    console.log("轮播图token是什么?",token)
631
+                    _self._data.rotationData.token = token;
632
+                    _self._data.rotationData.key = key;
633
+                    resolve(true)
634
+                }).catch(err => {
635
+                    reject(false)
636
+                    this.uploading = false;
637
+                })
638
+            })
639
+          return isJPG && isLt2M;
640
+      },
641
+
642
+      //新增轮播图
643
+      AddRotationChart(forName){
644
+          this.$refs[formName].validate((valid)=>{
645
+            if(valid){
646
+              AddRotationChart(this.rotationform).then(response=>{
647
+                  if(response.data.state==1){
648
+
649
+                  }
650
+              })
651
+            }
652
+          })  
653
+      },
654
+
655
+    //医院介绍
656
+     saveHispital(formName){
657
+        this.$refs[formName].validate((valid)=>{
658
+          if(valid){
659
+             saveHispital(this.hispitalform).then(response=>{
660
+                  if(response.data.state==1){
661
+                    var hospital = response.data.data.hospital;
662
+                    console.log("返回数据",hospital)
663
+                     this.$message.success("添加医院介绍成功");  
664
+                     this.two = false;    
665
+                  }
666
+             })
667
+          }
668
+        })
669
+     },
670
+
671
+     //科室介绍
672
+     addAdminist(formName){
673
+        this.$refs[formName].validate((valid)=>{
674
+          if(valid){
675
+             addOffices(this.administform).then(response=>{
676
+                 if(response.data.state==1){
677
+                    var offices = response.data.data.offices;
678
+                    console.log("返回数据",offices);
679
+                    this.$message.success("添加科室介绍成功");
680
+                    this.three = false;
681
+                 }
682
+             })
683
+          }
684
+        })
685
+     },
686
+
687
+     //名医介绍
688
+     AddDoctor(formName){
689
+         this.$refs[formName].validate((valid)=>{
690
+           if(valid){
691
+              AddDoctor(this.doctorform).then(response=>{
692
+                if(response.data.state==1){
693
+                    var doctor = response.data.data.doctor;
694
+                    console.log("返回数据",doctor);
695
+                    this.$message.success("添加名医成功");
696
+                    this.four = false;
697
+                }
698
+              })
699
+           }
700
+         })
701
+     },
702
+     editDoctor(){
703
+        this.centerDialogVisible = true;
704
+     },
705
+     deleteDoctor(){
706
+       this.hideShow = false;
707
+     },
708
+
709
+     //编辑医生介绍
710
+     AddDoctorInfo(formName){
711
+         this.$refs[formName].validate((valid)=>{
712
+           if(valid){
713
+             AddDoctorInfo(this.eidtDoctorform).then(response=>{
714
+               if(response.data.state==1){
715
+                  var doctor  =  response.data.data.doctor;
716
+                  console.log("返回数据",doctor);
717
+                  this.$message.success("编辑名医成功");
718
+                  this.centerDialogVisible = false;
719
+               }
720
+             })
721
+           }
722
+         })
723
+     },   
724
+  },  
725
+ };
312 726
 </script>
313 727
 
314 728
 <style rel="stylesheet/scss" lang="scss" scoped>
315 729
 
316
-.clearfix {
317
-  clear: both;
318
-}
319
-
320
-.el-upload--picture-card {
321
-  width: 80px !important;
322
-  height: 80px !important;
323
-  line-height: 80px !important;
324
-}
325
-.tips {
326
-  font-size: 12px;
327
-  line-height: 18px;
328
-}
730
+     .clearfix {
731
+        clear: both;
732
+    }
733
+
734
+    .el-upload--picture-card {
735
+      width: 80px !important;
736
+      height: 80px !important;
737
+      line-height: 80px !important;
738
+   }
739
+   .tips {
740
+    font-size: 12px;
741
+    line-height: 18px;
742
+  }
743
+
744
+    //上传样式
745
+    .uploadfont{
746
+      font-size: 14px;
747
+      margin-left: 75px;
748
+    }
749
+    // 名医介绍样式
750
+    .flex-img {
751
+        display: flex;
752
+    }
753
+
754
+    .image-uploader {
755
+        background-color: #fbfdff;
756
+        border: 1px dashed #c0ccda;
757
+        width: 148px;
758
+        height: auto;
759
+        cursor: pointer;
760
+        line-height: 146px;
761
+        text-align: center
762
+    }
763
+
764
+    .image-uploader {
765
+        font-size: 28px;
766
+        color: #8c939d;
767
+    }
768
+
769
+    //编辑名医样式
770
+  .avatar-uploader{
771
+    border: 1px dashed #d9d9d9;
772
+    border-radius: 6px;
773
+    cursor: pointer;
774
+    position: relative;
775
+    overflow: hidden;
776
+    width: 148px;
777
+    height: 148px;
778
+  }
779
+  .avatar-uploader{
780
+    border-color: #409EFF;
781
+  }
782
+  .avatar-uploader-icon {
783
+    font-size: 28px;
784
+    color: #8c939d;
785
+    width: 148px;
786
+    height: 148px;
787
+    line-height: 148px;
788
+    text-align: center;
789
+  }
790
+  .avatar {
791
+    width: 178px;
792
+    height: 178px;
793
+    display: block;
794
+  }
795
+</style>
796
+<style  /deep/scoped>
797
+     .disabled {
798
+        display: none;
799
+    }
800
+
801
+    .el-upload--picture-card {
802
+        height: auto
803
+    }
804
+
805
+    .el-upload-list--picture-card .el-upload-list__item {
806
+        height: auto;
807
+    }
808
+
809
+    .el-upload-list--picture-card .el-upload-list__item {
810
+        overflow: hidden;
811
+        background-color: #fff;
812
+        border: 1px solid #c0ccda;
813
+        border-radius: 6px;
814
+        -webkit-box-sizing: border-box;
815
+        box-sizing: border-box;
816
+        width: 148px;
817
+        height: auto;
818
+        margin: 0 8px 8px 0;
819
+        display: inline-block;
820
+    }
821
+
822
+    .el-upload-list__item.is-success .el-upload-list__item-status-label {
823
+        display: block;
824
+        position: absolute;
825
+        right: -15px;
826
+        top: -6px;
827
+        width: 40px;
828
+        height: 24px;
829
+        background: #13ce66;
830
+        text-align: center;
831
+        -webkit-transform: rotate(45deg);
832
+        transform: rotate(45deg);
833
+        -webkit-box-shadow: 0 0 1pc 1px rgba(0, 0, 0, 0.2);
834
+        box-shadow: 0 0 1pc 1px rgba(0, 0, 0, 0.2);
835
+    }
836
+
837
+    .el-upload-list--picture-card .el-upload-list__item-actions {
838
+        position: absolute;
839
+        width: 100%;
840
+        height: 100%;
841
+        left: 0;
842
+        top: 0;
843
+        cursor: default;
844
+        text-align: center;
845
+        color: #fff;
846
+        opacity: 0;
847
+        font-size: 20px;
848
+        background-color: rgba(0, 0, 0, 0.5);
849
+        -webkit-transition: opacity .3s;
850
+        transition: opacity .3s;
851
+    }
329 852
 </style>
853
+

+ 568 - 3
src/scrm_pages/site/preview.vue Bestand weergeven

@@ -28,7 +28,127 @@
28 28
                     </el-tab-pane>
29 29
                 </el-tabs>
30 30
             <!-- 已使用 -->
31
-           
31
+            
32
+             <div class="phone">
33
+                <div class="time">9:42</div>
34
+                <div class="xinhao"></div>
35
+                <div class="wifi"></div>
36
+                <div class="dian"></div>
37
+                 <div class="scroll" v-show="show">
38
+                   <vue-scroll :ops="ops" style="width:348px;height:100%;right:37px">  
39
+                     <div>              
40
+                      <mt-swipe :auto="4000">
41
+                       <mt-swipe-item><img src="static/images/b.jpg" style="width:380px;height:250px"></mt-swipe-item>
42
+                       <mt-swipe-item><img src="static/images/c.jpg" style="width:380px;height:200px"></mt-swipe-item>
43
+                       <mt-swipe-item><img src="static/images/d.jpg" style="width:380px;height:200px"></mt-swipe-item>
44
+                       </mt-swipe>  
45
+                     </div>  
46
+                     <div class="box"></div>
47
+                     <div class="list"></div>  
48
+                     <div class="listfont"><span>名医列表</span></div>
49
+                     <div class="sbbk"></div>
50
+                     <div class="sbfont"><span>肾病百科</span></div>
51
+                     <div class="sbyy"></div>
52
+                     <div class="sbyfont">肾病医院</div>
53
+                     <div class="zxkf"></div>
54
+                     <div class="zxfont">在线客服</div>
55
+                     <div class="lxwm"></div>
56
+                     <div class="lxfont">联系我们</div>
57
+                     <div class="zxsc"></div>
58
+                     <div class="zxsfont">在线商城</div>
59
+                     <div class="kfdh"></div>
60
+                     <div class="kffont">客服电话</div>
61
+                     <div class="mylb"></div>
62
+                     <div class="myfont">名医列表</div>
63
+                     <div class="box2"></div>
64
+                     <div class="u"></div>
65
+                     <div class="yyjs">医院介绍</div>
66
+                     <div class="ckgd"><span @click="more()">查看更多</span></div>
67
+                     <div class="ljtp"></div>
68
+                     <div class="yytp">
69
+                       <img src="static/images/a.jpg" style="width:322px;height:100%">
70
+                     </div>
71
+                     <div class="yyjj">
72
+                        <span>深圳市人民医院始建于1946年,前身是宝安县卫生院,1979年伴随深圳经济特区成立更名为深圳市人民医院。
73
+                              1994年被评为深圳首家“三级甲等”医院。1996年经国务院侨办批准成为暨南大学医学院第二附属医院
74
+                              2005年升格为暨南大学第二临床医学院。伴随着经济....</span>
75
+                     </div>
76
+                     <div class="box3"></div>
77
+                     <div class="u2"></div>
78
+                     <div class="kejsfont">科室介绍</div>
79
+                     <div class="ckgd2">查看更多</div>
80
+                     <div class="ljtp2"></div>
81
+                     <div class="ketp">
82
+                        <img src="static/images/a.jpg" style="width:322px;height:100%">
83
+                     </div>
84
+                     <div class="kejj">
85
+                         <span>
86
+                           深圳市人民医院始建于1946年,前身是宝安县卫生院,1979年伴随深圳经济特区成立更名为深圳市人民医院。
87
+                           1994年被评为深圳首家“三级甲等”医院。1996年经国务院侨办批准成为暨南大学医学院第二附属医院
88
+                           2005年升格为暨南大学第二临床医学院。伴随着经济....
89
+                         </span>
90
+                     </div>
91
+                     <div class="box4"></div>
92
+                     <div class="u3"></div>
93
+                     <div class="myjsfont">名医介绍</div>
94
+                     <div class="ckgd3">查看更多</div>
95
+                     <div class="ljtp2"></div>
96
+                     <div class="ketp2">
97
+                        <div class="ketp3">
98
+                          <img src="static/images/a.jpg" style="width:100%;height:100%">
99
+                        </div>
100
+                        <div class="ketp4">
101
+                            <div class="docname">吴教授</div>
102
+                            <div class="docintroduction">北京医科大学硕士,曾工作与中国医大二院妇、辽宁省...</div>
103
+                        </div>
104
+                     </div>
105
+
106
+                      <div class="ketp2">
107
+                        <div class="ketp3">
108
+                          <img src="static/images/a.jpg" style="width:100%;height:100%">
109
+                        </div>
110
+                        <div class="ketp4">
111
+                            <div class="docname">吴教授</div>
112
+                            <div class="docintroduction">北京医科大学硕士,曾工作与中国医大二院妇、辽宁省...</div>
113
+                        </div>
114
+                     </div>
115
+
116
+                     <div class="box4"></div>
117
+                     <div class="u3"></div>
118
+                     <div class="myjsfont">科室环境</div>
119
+                     <div class="ckgd3">查看更多</div>
120
+                     <div class="ljtp2"></div>
121
+                     <div>              
122
+                      <mt-swipe :auto="4000">
123
+                       <mt-swipe-item><img src="static/images/a.jpg" style="width:380px;height:250px"></mt-swipe-item>
124
+                       <mt-swipe-item><img src="static/images/a.jpg" style="width:380px;height:200px"></mt-swipe-item>
125
+                       <mt-swipe-item><img src="static/images/a.jpg" style="width:380px;height:200px"></mt-swipe-item>
126
+                       </mt-swipe>  
127
+                     </div> 
128
+                      <div>              
129
+                      <mt-swipe :auto="4000">
130
+                       <mt-swipe-item><img src="static/images/a.jpg" style="width:380px;height:250px"></mt-swipe-item>
131
+                       <mt-swipe-item><img src="static/images/a.jpg" style="width:380px;height:200px"></mt-swipe-item>
132
+                       <mt-swipe-item><img src="static/images/a.jpg" style="width:380px;height:200px"></mt-swipe-item>
133
+                       </mt-swipe>  
134
+                     </div>    
135
+                 </vue-scroll>
136
+               </div>                 
137
+            </div>  
138
+              <!-- 查看更多 -->
139
+              <div class="xiangqing" v-show="shows">
140
+                <vue-scroll :ops="ops" style="width:310px;height:100%;">
141
+                <img src="static/images/a.jpg">
142
+                 深圳市人民医院始建于1946年,前身是宝安县卫生院,1979年伴随深圳经济特区成立更名为深圳市人民医院。1994年被评为深圳首家“三级甲等”医院。1996年经国务院侨办批准成为暨南大学医学院第二附属医院,2005年升格为暨南大学第二临床医学院。伴随着经济特区的成长,深圳市人民医院已发展成为一个功能齐全、设备先进、人才结 构合理、技术力量雄厚,集医疗、教学、科研、保健为一体的深圳市最大的现代化综合性医院。
143
+                 深圳市人民医院始建于1946年,前身是宝安县卫生院,1979年伴随深圳经济特区成立更名为深圳市人民医院。1994年被评为深圳首家“三级甲等”医院。1996年经国务院侨办批准成为暨南大学医学院第二附属医院,2005年升格为暨南大学第二临床医学院。伴随着经济特区的成长,深圳市人民医院已发展成为一个功能齐全、设备先进、人才结 构合理、技术力量雄厚,集医疗、教学、科研、保健为一体的深圳市最大的现代化综合性医院。
144
+                 深圳市人民医院始建于1946年,前身是宝安县卫生院,1979年伴随深圳经济特区成立更名为深圳市人民医院。1994年被评为深圳首家“三级甲等”医院。1996年经国务院侨办批准成为暨南大学医学院第二附属医院,2005年升格为暨南大学第二临床医学院。伴随着经济特区的成长,深圳市人民医院已发展成为一个功能齐全、设备先进、人才结 构合理、技术力量雄厚,集医疗、教学、科研、保健为一体的深圳市最大的现代化综合性医院。
145
+                 深圳市人民医院始建于1946年,前身是宝安县卫生院,1979年伴随深圳经济特区成立更名为深圳市人民医院。1994年被评为深圳首家“三级甲等”医院。1996年经国务院侨办批准成为暨南大学医学院第二附属医院,2005年升格为暨南大学第二临床医学院。伴随着经济特区的成长,深圳市人民医院已发展成为一个功能齐全、设备先进、人才结 构合理、技术力量雄厚,集医疗、教学、科研、保健为一体的深圳市最大的现代化综合性医院。
146
+                 深圳市人民医院始建于1946年,前身是宝安县卫生院,1979年伴随深圳经济特区成立更名为深圳市人民医院。1994年被评为深圳首家“三级甲等”医院。1996年经国务院侨办批准成为暨南大学医学院第二附属医院,2005年升格为暨南大学第二临床医学院。伴随着经济特区的成长,深圳市人民医院已发展成为一个功能齐全、设备先进、人才结 构合理、技术力量雄厚,集医疗、教学、科研、保健为一体的深圳市最大的现代化综合性医院。   
147
+                  <img src="static/images/a.jpg">   
148
+                  <div class="shouye" @click="indexone()">首页</div> 
149
+                </vue-scroll>            
150
+              </div>  
151
+                       
32 152
       </div>
33 153
    </div>
34 154
 </template>
@@ -38,6 +158,12 @@ import BreadCrumb from "../components/bread-crumb";
38 158
 import NewFeature from "./components/new-feature";
39 159
 import UsedList from "./components/used-list";
40 160
 import AddContact from "./components/add-contact";
161
+import { Swipe, SwipeItem } from 'mint-ui';
162
+import Vue from 'vue';
163
+import 'mint-ui/lib/style.css';
164
+Vue.component(Swipe.name, Swipe);
165
+Vue.component(SwipeItem.name, SwipeItem);
166
+
41 167
 export default {
42 168
   name: "preview",
43 169
   components: {
@@ -49,13 +175,452 @@ export default {
49 175
   data() {
50 176
     return {
51 177
       crumbs: [{ path: false, name: "预览" }],
52
-      activeName: 'first'
178
+      activeName: 'first',
179
+      name: "car",
180
+      show:true,
181
+      shows:false,
182
+       ops: {
183
+          vuescroll: {},
184
+          scrollPanel: {},
185
+          ail: {
186
+            keepShow:true
187
+          },
188
+          bar: {
189
+            hoverStyle: false,
190
+            onlyShowBarOnScroll: true, //是否只有滚动的时候才显示滚动条
191
+            background: 'white',
192
+          }
193
+        },
53 194
     };
195
+  },
196
+
197
+  methods:{
198
+    more(){
199
+      this.show = false;
200
+      this.shows = true;
201
+    },
202
+    indexone(){
203
+      this.shows = false;
204
+      this.show = true;
205
+    }
54 206
   }
55
-};
207
+}
56 208
 </script>
57 209
 
58 210
 <style rel="stylesheet/scss" lang="scss" scoped>
211
+  
212
+.phone{
213
+   margin-top: -490px;
214
+   margin-right: 670px;
215
+   float: right;
216
+   width: 380px;
217
+   height: 750px;
218
+   background: url(../../assets/img/phone.png) 50% no-repeat;
219
+  }
220
+
221
+ .time{
222
+   width: 34px;
223
+   height: 20px;
224
+   margin-top: 44px;
225
+   margin-left: 55px;
226
+   font-size: 8px;
227
+ } 
228
+ .xinhao{
229
+   width: 50px;
230
+   height: 50px;
231
+   background: url(../../assets/img/xinhao.png) 30% no-repeat;
232
+   margin-top: -40px;
233
+   margin-left: 270px;
234
+   background-size: 15px;
235
+ }
236
+
237
+ .wifi{
238
+    background: url(../../assets/img/wifi.png) 30% no-repeat;
239
+    width: 70px;
240
+    height: 60px;
241
+    background-size: 10px;
242
+    margin-top: -55px;
243
+    margin-left: 280px;
244
+ }
245
+ .dian{
246
+   background: url(../../assets/img/dian.png) 30% no-repeat;
247
+   width: 70px;
248
+   height: 60px;
249
+   background-size: 12px;
250
+   margin-top: -58px;
251
+   margin-left: 300px;
252
+ }
253
+   
254
+ .mint-swipe{
255
+   height: 200px;
256
+   width: 318px;
257
+   left: 33px;
258
+   top:-22px;
259
+ }
260
+ .mint-swipe-item{
261
+   &:nth-child(1){
262
+     background-color: red;
263
+   }
264
+   &:nth-child(2){
265
+     background-color: blue;
266
+   }
267
+   &:nth-child(3){
268
+     background-color: cyan;
269
+   }
270
+ }
271
+
272
+//滚动条
273
+ .scroll{
274
+   margin-left: 36px;
275
+   width: 310px;
276
+   height: 660px;
277
+   border: 1px;
278
+   margin-top:-22px;
279
+ }
280
+
281
+  .box{
282
+     width: 320px;
283
+     height: 6px;
284
+     background-color: rgba(204, 204, 204, 1);
285
+     margin-left: 33px;
286
+     margin-top:-22px;
287
+  }
288
+  
289
+   .box2{
290
+     width: 320px;
291
+     height: 6px;
292
+     background-color: rgba(204, 204, 204, 1);
293
+     margin-left: 33px;
294
+     margin-top:5px;
295
+  }
296
+
297
+  .box3{
298
+    width: 320px;
299
+    height: 6px;
300
+    border: 1px;
301
+    background-color: rgba(204, 204, 204, 1);
302
+    margin-left: 35px;
303
+    margin-top: -100px;
304
+    margin-bottom: 25px;
305
+  }
306
+
307
+  .box4{
308
+    width: 320px;
309
+    height: 6px;
310
+    border: 1px;
311
+    background-color:  rgba(204, 204, 204, 1);
312
+    margin-left: 35px;
313
+    margin-top: -100px;
314
+    margin-bottom: 100px;
315
+
316
+  }
317
+ //名医列表
318
+   .list{
319
+    width:50px;
320
+    height: 50px;
321
+    border: 1px;
322
+    background: url(../../assets/img/u289.png) 50% no-repeat;
323
+    margin-left: 55px;
324
+    margin-top: 8px;
325
+   }
326
+
327
+   .listfont{
328
+     font-size: 14px;
329
+     margin-left: 50px;
330
+     margin-top: 10px;
331
+   }
332
+   .sbbk{
333
+     width: 50px;
334
+     height: 50px;
335
+     border: 1px;
336
+     background: url(../../assets/img/u292.png) 50% no-repeat;
337
+     margin-left: 120px;
338
+     margin-top: -75px;
339
+   }
340
+   .sbfont{
341
+     font-size: 14px;
342
+     margin-top: 8px;
343
+     margin-left: 120px;
344
+   }
345
+
346
+   .sbyy{
347
+     width: 50px;
348
+     height: 50px;
349
+     border: 1px;
350
+     background: url(../../assets/img/u290.png) 50% no-repeat;
351
+     margin-left: 190px;
352
+     margin-top: -74px;
353
+   }
354
+   .sbyfont{
355
+     font-size: 14px;
356
+     margin-top: 8px;
357
+     margin-left: 190px;
358
+   }
359
+
360
+   .zxkf{
361
+     width: 50px;
362
+     height: 50px;
363
+     border: 1px;
364
+     background: url(../../assets/img/u291.png) 50% no-repeat;
365
+     margin-left: 265px;
366
+     margin-top: -74px;
367
+   }
368
+
369
+   .zxfont{
370
+     font-size: 14px;
371
+     margin-top: 8px;
372
+     margin-left: 265px;
373
+   }
374
+
375
+   .lxwm{
376
+     width: 50px;
377
+     height: 50px;
378
+     border: 1px;
379
+     background: url(../../assets/img/u293.png) 50% no-repeat;
380
+     margin-left: 55px;
381
+     margin-top: 15px;
382
+   }
383
+   .lxfont{
384
+     font-size: 14px;
385
+     margin-top: 10px;
386
+     margin-left: 50px;
387
+   }
388
+   .zxsc{
389
+     width: 50px;
390
+     height: 50px;
391
+     border: 1px;
392
+     background: url(../../assets/img/u294.png) 50% no-repeat;
393
+     margin-left: 120px;
394
+     margin-top: -75px;
395
+   }
396
+
397
+   .zxsfont{
398
+     font-size: 14px;
399
+     margin-top: 8px;
400
+     margin-left: 120px;
401
+   }
402
+
403
+   .kfdh{
404
+     width: 50px;
405
+     height: 50px;
406
+     border: 1px;
407
+     background: url(../../assets/img/u295.png) 50% no-repeat;
408
+     margin-left: 195px;
409
+     margin-top: -74px;
410
+   }
411
+
412
+   .kffont{
413
+     font-size: 14px;
414
+     margin-top: 8px;
415
+     margin-left: 195px;
416
+   }
417
+
418
+   .mylb{
419
+     width: 50px;
420
+     height: 50px;
421
+     border: 1px;
422
+     background: url(../../assets/img/u296.png) 50% no-repeat;
423
+     margin-left: 270px;
424
+     margin-top: -74px;
425
+   }
426
+
427
+   .myfont{
428
+     font-size: 14px;
429
+     margin-top: 8px;
430
+     margin-left: 265px;
431
+   }
432
+   .u{
433
+     width: 6px;
434
+     height: 22px;
435
+     border: 1px;
436
+     background: url(../../assets/img/u.png) 50% no-repeat;
437
+     margin-left: 33px;
438
+     margin-top: 8px;
439
+   }
440
+   
441
+   .u2{
442
+     width: 6px;
443
+     height: 22px;
444
+     border: 1px solid red;
445
+     background: url(../../assets/img/u.png) 50% no-repeat;
446
+     margin-left: 33px;
447
+     margin-top: -16px;
448
+     margin-bottom: 100px;
449
+   }
450
+   
451
+   .u3{
452
+     width: 6px;
453
+     height: 22px;
454
+     border: 1px solid red;
455
+     background: url(../../assets/img/u.png) 50% no-repeat;
456
+     margin-left: 33px;
457
+     margin-top: -90px;
458
+     margin-bottom: 100px;
459
+   }
460
+
461
+   .yyjs{
462
+     font-size: 14px;
463
+     margin-top: -19px;
464
+     margin-left: 40px;
465
+     color: #FF6600;
466
+   }
467
+
468
+   .ckgd{
469
+     font-size: 14px;
470
+     margin-top: -17px;
471
+     margin-left: 250px;
472
+   }
473
+
474
+   .ljtp{
475
+     width: 20px;
476
+     height: 20px;
477
+     border: 1px;
478
+     background: url(../../assets/img/u216.png) 50% no-repeat;
479
+     margin-left: 315px;
480
+     margin-top: -20px;
481
+   }
482
+   .yytp{
483
+     width: 318px;
484
+     height: 120px;
485
+     border: 1px;
486
+     margin-left: 32px; 
487
+     margin-top: 10px;   
488
+   }
489
+
490
+   .yyjj{
491
+     font-size: 14px;
492
+     width: 320px;
493
+     height: 100px;
494
+     border: 1px;
495
+     margin-left: 35px;
496
+     margin-top: 8px;
497
+     margin-bottom: 100px;
498
+   }
499
+
500
+   .kejsfont{
501
+     font-size: 14px;
502
+     margin-top: -120px;
503
+     margin-bottom: 100px;
504
+     margin-left: 40px;
505
+     color: #FF6600;
506
+   }
507
+   
508
+   .ckgd2{
509
+     font-size: 14px;
510
+     margin-top: -115px;
511
+     margin-bottom: 100px;
512
+     margin-left: 250px;
513
+   }
514
+  
515
+    .ckgd3{
516
+      font-size: 14px;
517
+      margin-top: -115px;
518
+      margin-bottom: 100px;
519
+      margin-left: 250px;
520
+    }
521
+
522
+   .ljtp2{
523
+     width: 20px;
524
+     height: 20px;
525
+     border: 1px;
526
+     background: url(../../assets/img/u216.png) 50% no-repeat;
527
+     margin-left: 315px;
528
+     margin-top: -120px;
529
+     margin-bottom: 100px;
530
+   }
531
+
532
+   .xiangqing{
533
+     position: absolute;
534
+     width: 313px;
535
+     height: 650px;
536
+     border: 1px;
537
+     margin-left: 662px;
538
+     margin-top: -430px;
539
+     font-size: 14px;
540
+   }
541
+
542
+   .shouye{
543
+     width:  50px;
544
+     height: 50px;
545
+     border: 1px solid red;
546
+     background: url(../../assets/img/u373.png) 50% no-repeat;
547
+     background-color:white; 
548
+     margin-left: 250px;
549
+     margin-top: -350px;
550
+     margin-bottom: 100px;
551
+   }
552
+
553
+   .ketp{
554
+     width: 318px;
555
+     height: 120px;
556
+     border:1px;
557
+     margin-top: -90px;
558
+     margin-left: 33px;
559
+     margin-bottom: 200px;
560
+   }
561
+
562
+    .ketp2{
563
+     width: 318px;
564
+     height: 120px;
565
+     border:1px solid rgba(242, 242, 242, 1);
566
+     margin-top: -90px;
567
+     margin-left: 33px;
568
+     margin-bottom: 100px;
569
+     background-color:  rgba(242, 242, 242, 1)
570
+   }
571
+
572
+   .ketp3{
573
+     width: 100px;
574
+     height: 100px;
575
+     border:1px;
576
+     margin-left: 15px;
577
+     margin-top: 10px;
578
+   }
579
+
580
+   .ketp4{
581
+     width: 170px;
582
+     height: 100px;
583
+     border:1px;
584
+     margin-left: 140px;
585
+     margin-top: -100px;
586
+     font-size: 14px;
587
+   }
588
+
589
+   .docname{
590
+     width: 50px;
591
+     height: 20px;
592
+     border:1px ;
593
+     margin-top: 10px;
594
+     font-size: 14px;
595
+   }
596
+
597
+   .docintroduction{
598
+     width: 160px;
599
+     height: 50px;
600
+     border: 1px;
601
+     margin-top: 10px;
602
+     font-size: 14px;
603
+   }
604
+
605
+   .kejj{
606
+     width: 320px;
607
+     height: 100px;
608
+     border:1px;
609
+     font-size: 14px;
610
+     margin-bottom: 100px;
611
+     margin-top: -195px;
612
+     margin-left: 33px;
613
+   }
614
+
615
+   .myjsfont{
616
+     font-size: 14px;
617
+     margin-top: -120px;
618
+     margin-bottom: 100px;
619
+     margin-left: 40px;
620
+     color: #FF6600;
621
+   }
59 622
 </style>
60 623
 
61 624
 
625
+
626
+

BIN
static/images/b.jpg Bestand weergeven


BIN
static/images/c.jpg Bestand weergeven


BIN
static/images/d.jpg Bestand weergeven