@liuqiongqiong/vue-pages 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (45) hide show
  1. package/README.md +345 -0
  2. package/dist/index.esm.js +15 -0
  3. package/dist/index.js +15 -0
  4. package/package.json +68 -0
  5. package/src/components/Pagination/index.vue +94 -0
  6. package/src/components/PreviewFile/index.vue +140 -0
  7. package/src/index.js +123 -0
  8. package/src/pages/SettlementManagement/PreSettlement/index.vue +939 -0
  9. package/src/pages/SettlementManagement/ceshi/index.vue +221 -0
  10. package/src/pages/SettlementManagement/reconciliation/index.vue +690 -0
  11. package/src/pages/SettlementManagement/settlement/index.vue +1325 -0
  12. package/src/pages/SettlementManagement/zeroSettlement/index.vue +429 -0
  13. package/src/pages/customerManagement/EvaluationModification/index.vue +371 -0
  14. package/src/pages/customerManagement/abnormal/index.vue +730 -0
  15. package/src/pages/customerManagement/addressModification/index.vue +378 -0
  16. package/src/pages/customerManagement/carePlan/index.vue +2706 -0
  17. package/src/pages/customerManagement/complaint/index.vue +487 -0
  18. package/src/pages/customerManagement/customer/index.vue +1594 -0
  19. package/src/pages/customerManagement/evaluate/index.vue +399 -0
  20. package/src/pages/customerManagement/potentialCustomers/index.vue +640 -0
  21. package/src/pages/institution/Information/index.vue +1165 -0
  22. package/src/pages/institution/agreement/index.vue +411 -0
  23. package/src/pages/nurse/cardReplacementApplication/index.vue +313 -0
  24. package/src/pages/nurse/clock/index.vue +847 -0
  25. package/src/pages/nurse/give/index.vue +0 -0
  26. package/src/pages/nurse/personnel/index.vue +1070 -0
  27. package/src/pages/nurse/timeStatistics/index.vue +249 -0
  28. package/src/pages/nurseProjects/NursingPackage/index.vue +1030 -0
  29. package/src/pages/nurseProjects/NursingProjects/index.vue +748 -0
  30. package/src/pages/sys/Bluetooth/index.vue +471 -0
  31. package/src/pages/sys/WeChatUsers/index.vue +391 -0
  32. package/src/pages/sys/index.vue +0 -0
  33. package/src/pages/sys/menu/index.vue +341 -0
  34. package/src/pages/sys/msg/index.vue +201 -0
  35. package/src/pages/sys/role/index.vue +312 -0
  36. package/src/pages/sys/system/index.vue +279 -0
  37. package/src/pages/sys/unit/img/role.png +0 -0
  38. package/src/pages/sys/unit/img/unit.png +0 -0
  39. package/src/pages/sys/unit/img/user.png +0 -0
  40. package/src/pages/sys/unit/index.vue +1186 -0
  41. package/src/pages/sys/user/index.vue +355 -0
  42. package/src/utils/auth.js +15 -0
  43. package/src/utils/index.js +4 -0
  44. package/src/utils/scroll-to.js +58 -0
  45. package/src/utils/validate.js +83 -0
package/README.md ADDED
@@ -0,0 +1,345 @@
1
+ # @changhuxian/vue-pages
2
+
3
+ > 长护险管理系统业务页面组件库 - 包含结算管理、客户管理、护理管理等完整业务模块
4
+
5
+ ## 📦 安装
6
+
7
+ ```bash
8
+ npm install @changhuxian/vue-pages
9
+ # 或
10
+ yarn add @changhuxian/vue-pages
11
+ # 或
12
+ pnpm add @changhuxian/vue-pages
13
+ ```
14
+
15
+ ## 🔨 使用方法
16
+
17
+ ### 1. 完整引入(不推荐)
18
+
19
+ ```javascript
20
+ import Vue from 'vue'
21
+ import ChanghuxianPages from '@changhuxian/vue-pages'
22
+
23
+ // 这会注册所有页面组件和通用组件
24
+ Vue.use(ChanghuxianPages)
25
+ ```
26
+
27
+ ### 2. 按需引入(推荐)
28
+
29
+ #### 在路由中引入页面组件
30
+
31
+ ```javascript
32
+ import Vue from 'vue'
33
+ import Router from 'vue-router'
34
+
35
+ // 按需导入所需的页面组件
36
+ import {
37
+ SettlementIndex,
38
+ PreSettlementIndex,
39
+ CustomerIndex,
40
+ CarePlanIndex
41
+ } from '@changhuxian/vue-pages'
42
+
43
+ Vue.use(Router)
44
+
45
+ export default new Router({
46
+ routes: [
47
+ {
48
+ path: '/settlement',
49
+ name: 'Settlement',
50
+ component: SettlementIndex
51
+ },
52
+ {
53
+ path: '/pre-settlement',
54
+ name: 'PreSettlement',
55
+ component: PreSettlementIndex
56
+ },
57
+ {
58
+ path: '/customer',
59
+ name: 'Customer',
60
+ component: CustomerIndex
61
+ },
62
+ {
63
+ path: '/care-plan',
64
+ name: 'CarePlan',
65
+ component: CarePlanIndex
66
+ }
67
+ ]
68
+ })
69
+ ```
70
+
71
+ #### 使用通用组件
72
+
73
+ ```vue
74
+ <template>
75
+ <div>
76
+ <!-- 分页组件 -->
77
+ <pagination
78
+ :total="total"
79
+ :page.sync="listQuery.pageNo"
80
+ :limit.sync="listQuery.size"
81
+ @pagination="getList"
82
+ />
83
+
84
+ <!-- 文件预览组件 -->
85
+ <preview-file
86
+ :file-url="fileUrl"
87
+ :visible.sync="previewVisible"
88
+ />
89
+ </div>
90
+ </template>
91
+
92
+ <script>
93
+ import { Pagination, PreviewFile } from '@changhuxian/vue-pages'
94
+
95
+ export default {
96
+ components: {
97
+ Pagination,
98
+ PreviewFile
99
+ },
100
+ data() {
101
+ return {
102
+ total: 100,
103
+ listQuery: {
104
+ pageNo: 1,
105
+ size: 20
106
+ },
107
+ fileUrl: '',
108
+ previewVisible: false
109
+ }
110
+ },
111
+ methods: {
112
+ getList() {
113
+ // 获取列表数据
114
+ }
115
+ }
116
+ }
117
+ </script>
118
+ ```
119
+
120
+ #### 使用工具函数
121
+
122
+ ```javascript
123
+ import { utils } from '@changhuxian/vue-pages'
124
+
125
+ // 使用认证相关工具
126
+ const token = utils.getToken()
127
+ utils.setToken('your-token')
128
+ utils.removeToken()
129
+
130
+ // 使用表单验证工具
131
+ const isValidEmail = utils.validEmail('test@example.com')
132
+ const isValidURL = utils.validURL('https://example.com')
133
+
134
+ // 使用滚动工具
135
+ utils.scrollTo(0, 800)
136
+ ```
137
+
138
+ ## 📚 可用页面组件
139
+
140
+ ### 结算管理模块
141
+
142
+ | 组件名 | 说明 | 导出名称 |
143
+ |--------|------|----------|
144
+ | 结算管理 | 结算单管理页面 | `SettlementIndex` |
145
+ | 预结算 | 预结算管理页面 | `PreSettlementIndex` |
146
+ | 对账管理 | 对账单管理页面 | `ReconciliationIndex` |
147
+
148
+ **使用示例:**
149
+
150
+ ```javascript
151
+ import { SettlementIndex, PreSettlementIndex } from '@changhuxian/vue-pages'
152
+
153
+ export default {
154
+ routes: [
155
+ { path: '/settlement', component: SettlementIndex },
156
+ { path: '/pre-settlement', component: PreSettlementIndex }
157
+ ]
158
+ }
159
+ ```
160
+
161
+ ### 客户管理模块
162
+
163
+ | 组件名 | 说明 | 导出名称 |
164
+ |--------|------|----------|
165
+ | 客户管理 | 客户信息管理页面 | `CustomerIndex` |
166
+ | 护理计划 | 护理计划管理页面 | `CarePlanIndex` |
167
+
168
+ ### 护理项目模块
169
+
170
+ | 组件名 | 说明 | 导出名称 |
171
+ |--------|------|----------|
172
+ | 护理项目 | 护理项目配置页面 | `NursingProjectsIndex` |
173
+ | 护理套餐 | 护理套餐配置页面 | `NursingPackageIndex` |
174
+
175
+ ### 护理员管理模块
176
+
177
+ | 组件名 | 说明 | 导出名称 |
178
+ |--------|------|----------|
179
+ | 护理员管理 | 护理员信息管理页面 | `NurseIndex` |
180
+
181
+ ### 机构管理模块
182
+
183
+ | 组件名 | 说明 | 导出名称 |
184
+ |--------|------|----------|
185
+ | 机构管理 | 机构信息管理页面 | `InstitutionIndex` |
186
+
187
+ ### 系统管理模块
188
+
189
+ | 组件名 | 说明 | 导出名称 |
190
+ |--------|------|----------|
191
+ | 用户管理 | 系统用户管理页面 | `SysUserIndex` |
192
+ | 角色管理 | 角色权限管理页面 | `SysRoleIndex` |
193
+
194
+ ## 🧩 通用组件
195
+
196
+ ### Pagination - 分页组件
197
+
198
+ 高度封装的分页组件,支持自动滚动、自定义样式等功能。
199
+
200
+ ```vue
201
+ <pagination
202
+ :total="total"
203
+ :page.sync="listQuery.pageNo"
204
+ :limit.sync="listQuery.size"
205
+ :page-sizes="[10, 20, 50, 100]"
206
+ layout="total, sizes, prev, pager, next, jumper"
207
+ @pagination="handlePagination"
208
+ />
209
+ ```
210
+
211
+ **Props:**
212
+
213
+ | 参数 | 说明 | 类型 | 默认值 |
214
+ |------|------|------|--------|
215
+ | total | 总条目数 | Number | - |
216
+ | page | 当前页数 | Number | 1 |
217
+ | limit | 每页显示条目个数 | Number | 20 |
218
+ | pageSizes | 每页显示个数选择器的选项设置 | Array | [10, 20, 30, 50] |
219
+ | layout | 组件布局 | String | 'total, sizes, prev, pager, next, jumper' |
220
+ | background | 是否为分页按钮添加背景色 | Boolean | true |
221
+ | autoScroll | 分页后是否自动滚动到顶部 | Boolean | true |
222
+
223
+ ### PreviewFile - 文件预览组件
224
+
225
+ 支持预览Word、PDF等多种文件格式。
226
+
227
+ ```vue
228
+ <preview-file
229
+ :file-url="fileUrl"
230
+ :visible.sync="dialogVisible"
231
+ title="文件预览"
232
+ />
233
+ ```
234
+
235
+ ## 🛠️ 工具函数
236
+
237
+ ### Auth 认证相关
238
+
239
+ ```javascript
240
+ import { utils } from '@changhuxian/vue-pages'
241
+
242
+ // 获取token
243
+ const token = utils.getToken()
244
+
245
+ // 设置token
246
+ utils.setToken('your-token')
247
+
248
+ // 移除token
249
+ utils.removeToken()
250
+ ```
251
+
252
+ ### Validate 表单验证
253
+
254
+ ```javascript
255
+ import { utils } from '@changhuxian/vue-pages'
256
+
257
+ // 邮箱验证
258
+ utils.validEmail('test@example.com') // true/false
259
+
260
+ // URL验证
261
+ utils.validURL('https://example.com') // true/false
262
+
263
+ // 字符串验证
264
+ utils.isString('hello') // true
265
+ utils.isArray([1, 2, 3]) // true
266
+ ```
267
+
268
+ ### ScrollTo 页面滚动
269
+
270
+ ```javascript
271
+ import { utils } from '@changhuxian/vue-pages'
272
+
273
+ // 滚动到顶部,动画时长800ms
274
+ utils.scrollTo(0, 800)
275
+
276
+ // 滚动到指定位置,带回调
277
+ utils.scrollTo(500, 1000, () => {
278
+ console.log('滚动完成')
279
+ })
280
+ ```
281
+
282
+ ## 📋 依赖要求
283
+
284
+ 本组件库依赖以下库,请确保您的项目中已安装:
285
+
286
+ - Vue 2.6+
287
+ - Element UI 2.13+
288
+ - Vue Router 3.0+
289
+ - Vuex 3.1+
290
+
291
+ ## 🔧 开发
292
+
293
+ ```bash
294
+ # 安装依赖
295
+ npm install
296
+
297
+ # 开发模式(监听文件变化)
298
+ npm run dev
299
+
300
+ # 构建生产版本
301
+ npm run build
302
+ ```
303
+
304
+ ## 📝 发布到npm
305
+
306
+ ```bash
307
+ # 1. 登录npm账号
308
+ npm login
309
+
310
+ # 2. 发布包
311
+ npm publish --access public
312
+ ```
313
+
314
+ ## 🤝 贡献
315
+
316
+ 欢迎提交 Issue 和 Pull Request!
317
+
318
+ ## 📄 License
319
+
320
+ MIT License
321
+
322
+ ## 👥 维护者
323
+
324
+ ChangHuXian Development Team
325
+
326
+ ## 🔗 相关链接
327
+
328
+ - [Gitee仓库](https://gitee.com/VueAppDemo/changhuxian-vue-components)
329
+ - [问题反馈](https://gitee.com/VueAppDemo/changhuxian-vue-components/issues)
330
+ - [Element UI文档](https://element.eleme.cn/)
331
+
332
+ ## 📮 联系方式
333
+
334
+ 如有问题请提Issue或联系维护团队。
335
+
336
+ ---
337
+
338
+ **注意事项:**
339
+
340
+ 1. 本组件库是业务页面组件库,包含完整的业务逻辑
341
+ 2. 使用前请确保已配置好API接口地址
342
+ 3. 建议按需引入,避免打包体积过大
343
+ 4. 页面组件需要配合相应的API接口使用
344
+
345
+ **更新日志:** 查看 [CHANGELOG.md](./CHANGELOG.md)