pit-docs-mcp 1.0.2

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 (203) hide show
  1. package/README.md +180 -0
  2. package/dist/codegen.d.ts +5 -0
  3. package/dist/codegen.d.ts.map +1 -0
  4. package/dist/codegen.js +112 -0
  5. package/dist/constants.d.ts +6 -0
  6. package/dist/constants.d.ts.map +1 -0
  7. package/dist/constants.js +10 -0
  8. package/dist/index.d.ts +3 -0
  9. package/dist/index.d.ts.map +1 -0
  10. package/dist/index.js +115 -0
  11. package/dist/resources.d.ts +3 -0
  12. package/dist/resources.d.ts.map +1 -0
  13. package/dist/resources.js +80 -0
  14. package/dist/tools.d.ts +3 -0
  15. package/dist/tools.d.ts.map +1 -0
  16. package/dist/tools.js +258 -0
  17. package/dist/utils.d.ts +26 -0
  18. package/dist/utils.d.ts.map +1 -0
  19. package/dist/utils.js +198 -0
  20. package/docs/codegen/pit-simplify-web.md +686 -0
  21. package/docs/pitBusinessUi/README.md +102 -0
  22. package/docs/pitBusinessUi/add-date-picker.md +57 -0
  23. package/docs/pitBusinessUi/add-operation.md +64 -0
  24. package/docs/pitBusinessUi/batch-download.md +44 -0
  25. package/docs/pitBusinessUi/bill-tree-dialog.md +82 -0
  26. package/docs/pitBusinessUi/collapse.md +88 -0
  27. package/docs/pitBusinessUi/date-time-picker.md +74 -0
  28. package/docs/pitBusinessUi/design-report-explain.md +47 -0
  29. package/docs/pitBusinessUi/dialog.md +89 -0
  30. package/docs/pitBusinessUi/dic-radio.md +67 -0
  31. package/docs/pitBusinessUi/dic.md +78 -0
  32. package/docs/pitBusinessUi/document-preview.md +54 -0
  33. package/docs/pitBusinessUi/drawer.md +67 -0
  34. package/docs/pitBusinessUi/editor.md +63 -0
  35. package/docs/pitBusinessUi/expand-search-form.md +65 -0
  36. package/docs/pitBusinessUi/file-preview.md +56 -0
  37. package/docs/pitBusinessUi/flow-table-status.md +47 -0
  38. package/docs/pitBusinessUi/icon-box.md +74 -0
  39. package/docs/pitBusinessUi/image-preview.md +55 -0
  40. package/docs/pitBusinessUi/image.md +53 -0
  41. package/docs/pitBusinessUi/input-formatter.md +100 -0
  42. package/docs/pitBusinessUi/input-number.md +47 -0
  43. package/docs/pitBusinessUi/input-select.md +68 -0
  44. package/docs/pitBusinessUi/input.md +56 -0
  45. package/docs/pitBusinessUi/jm-preview.md +47 -0
  46. package/docs/pitBusinessUi/json-editor.md +71 -0
  47. package/docs/pitBusinessUi/loading-btn.md +64 -0
  48. package/docs/pitBusinessUi/monaco.md +82 -0
  49. package/docs/pitBusinessUi/money-input.md +59 -0
  50. package/docs/pitBusinessUi/pagination.md +70 -0
  51. package/docs/pitBusinessUi/password-strength.md +59 -0
  52. package/docs/pitBusinessUi/positive-number.md +63 -0
  53. package/docs/pitBusinessUi/preview-image.md +62 -0
  54. package/docs/pitBusinessUi/preview-office.md +50 -0
  55. package/docs/pitBusinessUi/preview.md +57 -0
  56. package/docs/pitBusinessUi/quill.md +52 -0
  57. package/docs/pitBusinessUi/runflow-btn.md +52 -0
  58. package/docs/pitBusinessUi/search-date-picker.md +60 -0
  59. package/docs/pitBusinessUi/select-bid-list.md +66 -0
  60. package/docs/pitBusinessUi/select-color.md +38 -0
  61. package/docs/pitBusinessUi/select-contract-tree.md +41 -0
  62. package/docs/pitBusinessUi/select-dept.md +38 -0
  63. package/docs/pitBusinessUi/select-project-unit.md +48 -0
  64. package/docs/pitBusinessUi/select-section-tree.md +45 -0
  65. package/docs/pitBusinessUi/select-section.md +66 -0
  66. package/docs/pitBusinessUi/select-string.md +60 -0
  67. package/docs/pitBusinessUi/select-system-unit.md +41 -0
  68. package/docs/pitBusinessUi/select-user-by-role.md +51 -0
  69. package/docs/pitBusinessUi/switch.md +43 -0
  70. package/docs/pitBusinessUi/table-contract.md +66 -0
  71. package/docs/pitBusinessUi/table-operation.md +81 -0
  72. package/docs/pitBusinessUi/table.md +75 -0
  73. package/docs/pitBusinessUi/tag.md +86 -0
  74. package/docs/pitBusinessUi/textarea.md +65 -0
  75. package/docs/pitBusinessUi/transfer-direct.md +57 -0
  76. package/docs/pitBusinessUi/transfer-user-project.md +78 -0
  77. package/docs/pitBusinessUi/transfer.md +68 -0
  78. package/docs/pitBusinessUi/tree-lazy.md +72 -0
  79. package/docs/pitBusinessUi/tree-select-name.md +59 -0
  80. package/docs/pitBusinessUi/tree-select-plus.md +106 -0
  81. package/docs/pitBusinessUi/tree-select.md +86 -0
  82. package/docs/pitBusinessUi/upload-avatar.md +60 -0
  83. package/docs/pitBusinessUi/upload-file-dialog.md +86 -0
  84. package/docs/pitBusinessUi/upload-file.md +77 -0
  85. package/docs/pitBusinessUi/upload-list-card.md +62 -0
  86. package/docs/pitBusinessUi/upload-table.md +77 -0
  87. package/docs/pitBusinessUi/user-transform.md +72 -0
  88. package/docs/pitBusinessUi/utils.md +272 -0
  89. package/docs/pitBusinessUtils/README.md +144 -0
  90. package/docs/pitBusinessUtils/auth.md +170 -0
  91. package/docs/pitBusinessUtils/clipboard.md +72 -0
  92. package/docs/pitBusinessUtils/filePreview.md +60 -0
  93. package/docs/pitBusinessUtils/formValidate.md +75 -0
  94. package/docs/pitBusinessUtils/generateTitle.md +49 -0
  95. package/docs/pitBusinessUtils/get-page-title.md +65 -0
  96. package/docs/pitBusinessUtils/i18n.md +130 -0
  97. package/docs/pitBusinessUtils/jwks.md +82 -0
  98. package/docs/pitBusinessUtils/oss.md +391 -0
  99. package/docs/pitBusinessUtils/passwordValidate.md +120 -0
  100. package/docs/pitBusinessUtils/pit.md +496 -0
  101. package/docs/pitBusinessUtils/print.md +126 -0
  102. package/docs/pitBusinessUtils/request.md +137 -0
  103. package/docs/pitBusinessUtils/scroll-to.md +68 -0
  104. package/docs/pitBusinessUtils/utils.md +762 -0
  105. package/docs/pitBusinessUtils/validate.md +224 -0
  106. package/docs/pitElementUi/alert.md +238 -0
  107. package/docs/pitElementUi/avatar.md +147 -0
  108. package/docs/pitElementUi/backtop.md +60 -0
  109. package/docs/pitElementUi/badge.md +120 -0
  110. package/docs/pitElementUi/base-tabs.md +73 -0
  111. package/docs/pitElementUi/border.md +135 -0
  112. package/docs/pitElementUi/breadcrumb.md +44 -0
  113. package/docs/pitElementUi/button.md +301 -0
  114. package/docs/pitElementUi/calendar.md +66 -0
  115. package/docs/pitElementUi/card.md +170 -0
  116. package/docs/pitElementUi/carousel.md +212 -0
  117. package/docs/pitElementUi/cascader.md +1966 -0
  118. package/docs/pitElementUi/checkbox.md +283 -0
  119. package/docs/pitElementUi/collapse.md +131 -0
  120. package/docs/pitElementUi/color-picker.md +123 -0
  121. package/docs/pitElementUi/color.md +244 -0
  122. package/docs/pitElementUi/container.md +240 -0
  123. package/docs/pitElementUi/custom-theme.md +131 -0
  124. package/docs/pitElementUi/date-picker.md +448 -0
  125. package/docs/pitElementUi/datetime-picker.md +254 -0
  126. package/docs/pitElementUi/descriptions.md +191 -0
  127. package/docs/pitElementUi/dialog-header.md +53 -0
  128. package/docs/pitElementUi/dialog.md +239 -0
  129. package/docs/pitElementUi/divider.md +61 -0
  130. package/docs/pitElementUi/drawer.md +307 -0
  131. package/docs/pitElementUi/dropdown.md +308 -0
  132. package/docs/pitElementUi/empty.md +61 -0
  133. package/docs/pitElementUi/font-family.md +90 -0
  134. package/docs/pitElementUi/form-base.md +1239 -0
  135. package/docs/pitElementUi/form-item-checkbox-group.md +48 -0
  136. package/docs/pitElementUi/form-item-date.md +60 -0
  137. package/docs/pitElementUi/form-item-dic.md +18 -0
  138. package/docs/pitElementUi/form-item-editor.md +16 -0
  139. package/docs/pitElementUi/form-item-input-money.md +19 -0
  140. package/docs/pitElementUi/form-item-input-number.md +20 -0
  141. package/docs/pitElementUi/form-item-input.md +18 -0
  142. package/docs/pitElementUi/form-item-radio-group.md +21 -0
  143. package/docs/pitElementUi/form-item-select.md +21 -0
  144. package/docs/pitElementUi/form-item-switch.md +15 -0
  145. package/docs/pitElementUi/form-item-textarea.md +20 -0
  146. package/docs/pitElementUi/form-item-tree-select.md +27 -0
  147. package/docs/pitElementUi/form-item-upload-card.md +18 -0
  148. package/docs/pitElementUi/form-item-upload.md +1 -0
  149. package/docs/pitElementUi/form-two.md +102 -0
  150. package/docs/pitElementUi/form.md +952 -0
  151. package/docs/pitElementUi/i18n.md +228 -0
  152. package/docs/pitElementUi/icon-custom.md +99 -0
  153. package/docs/pitElementUi/icon-line-custom.md +12 -0
  154. package/docs/pitElementUi/icon.md +28 -0
  155. package/docs/pitElementUi/image.md +178 -0
  156. package/docs/pitElementUi/infiniteScroll.md +87 -0
  157. package/docs/pitElementUi/input-number.md +197 -0
  158. package/docs/pitElementUi/input-select.md +1 -0
  159. package/docs/pitElementUi/input.md +800 -0
  160. package/docs/pitElementUi/installation.md +9 -0
  161. package/docs/pitElementUi/layout-column.md +376 -0
  162. package/docs/pitElementUi/layout-tree.md +715 -0
  163. package/docs/pitElementUi/layout.md +354 -0
  164. package/docs/pitElementUi/link.md +66 -0
  165. package/docs/pitElementUi/loading.md +208 -0
  166. package/docs/pitElementUi/menu.md +403 -0
  167. package/docs/pitElementUi/message-box.md +326 -0
  168. package/docs/pitElementUi/message.md +219 -0
  169. package/docs/pitElementUi/notification.md +311 -0
  170. package/docs/pitElementUi/page-header.md +40 -0
  171. package/docs/pitElementUi/pagination.md +200 -0
  172. package/docs/pitElementUi/popconfirm.md +60 -0
  173. package/docs/pitElementUi/popover.md +167 -0
  174. package/docs/pitElementUi/progress.md +178 -0
  175. package/docs/pitElementUi/quickstart.md +290 -0
  176. package/docs/pitElementUi/radio.md +211 -0
  177. package/docs/pitElementUi/rate.md +135 -0
  178. package/docs/pitElementUi/result.md +76 -0
  179. package/docs/pitElementUi/select-tree.md +661 -0
  180. package/docs/pitElementUi/select.md +586 -0
  181. package/docs/pitElementUi/skeleton.md +316 -0
  182. package/docs/pitElementUi/slider.md +237 -0
  183. package/docs/pitElementUi/steps.md +154 -0
  184. package/docs/pitElementUi/switch.md +142 -0
  185. package/docs/pitElementUi/table.md +4023 -0
  186. package/docs/pitElementUi/tabs.md +303 -0
  187. package/docs/pitElementUi/tag.md +203 -0
  188. package/docs/pitElementUi/time-picker.md +199 -0
  189. package/docs/pitElementUi/timeline.md +154 -0
  190. package/docs/pitElementUi/tooltip.md +177 -0
  191. package/docs/pitElementUi/transfer.md +249 -0
  192. package/docs/pitElementUi/transition.md +155 -0
  193. package/docs/pitElementUi/tree.md +1157 -0
  194. package/docs/pitElementUi/typography.md +151 -0
  195. package/docs/pitElementUi/upload-table.md +39 -0
  196. package/docs/pitElementUi/upload.md +392 -0
  197. package/docs/pitElementUi/virtual-list.md +154 -0
  198. package/docs/pitElementUi/virtual-select-tree.md +243 -0
  199. package/docs/pitElementUi/virtual-select.md +451 -0
  200. package/docs/pitElementUi/virtual-table-column.md +1 -0
  201. package/docs/pitElementUi/virtual-table.md +490 -0
  202. package/docs/pitElementUi/virtual-tree.md +119 -0
  203. package/package.json +33 -0
@@ -0,0 +1,48 @@
1
+ # pit-select-project-unit 项目单位选择器
2
+
3
+ 自动拉取当前项目的参建单位树,基于 `PitTreeSelectPlus`,支持按施工单位类型筛选。
4
+
5
+ ## 前置依赖
6
+
7
+ - `localStorage.projectId` — 当前项目 ID
8
+ - 后端接口:`getProjectUnit`
9
+
10
+ ## Props
11
+
12
+ | 参数 | 说明 | 类型 | 默认值 |
13
+ | --- | --- | --- | --- |
14
+ | value / v-model | 已选单位 ID(逗号分隔字符串) | String | `null` |
15
+ | multiple | 是否多选 | Boolean | `false` |
16
+ | disabled | 是否禁用 | Boolean | `false` |
17
+ | clearable | 是否可清空 | Boolean | `true` |
18
+ | appendToBody | 下拉插入 body | Boolean | `true` |
19
+ | isAll | 多选时显示全选 | Boolean | `false` |
20
+ | isSGDW | 是否只筛选施工单位 | Boolean | `false` |
21
+ | companyType | 按单位类型筛选(传入类型编码) | String | `null` |
22
+
23
+ > 其余 `PitTreeSelectPlus` 属性通过 `v-bind="$attrs"`、`v-on="$listeners"` 透传。
24
+
25
+ ## Events
26
+
27
+ | 事件名 | 说明 | 参数 |
28
+ | --- | --- | --- |
29
+ | input | 值变化(v-model) | `value` |
30
+ | change | 值变化(同 PitTreeSelectPlus) | `value, nodeData` |
31
+
32
+ ## 示例
33
+
34
+ ```vue
35
+ <!-- 单选所有参建单位 -->
36
+ <pit-select-project-unit v-model="form.unitId" />
37
+
38
+ <!-- 只筛选施工单位,多选 -->
39
+ <pit-select-project-unit
40
+ v-model="form.unitIds"
41
+ multiple
42
+ :is-s-g-d-w="true" />
43
+
44
+ <!-- 按类型筛选 -->
45
+ <pit-select-project-unit
46
+ v-model="form.unitId"
47
+ company-type="01" />
48
+ ```
@@ -0,0 +1,45 @@
1
+ # pit-select-section-tree 标段树选择器
2
+
3
+ 与 `PitSelectSection` 功能相同,区别在于数据以树形结构呈现(保留父子层级),而非平铺列表,节点键为 `bidId`。
4
+
5
+ ## 前置依赖
6
+
7
+ 同 `PitSelectSection`(`localStorage.projectId`,标段列表接口)
8
+
9
+ ## Props
10
+
11
+ `PitSelectSection` 全部 Props 均适用,参数基本一致:
12
+
13
+ | 参数 | 说明 | 类型 | 默认值 |
14
+ | --- | --- | --- | --- |
15
+ | value / v-model | 已选标段 ID(逗号分隔字符串) | String | `null` |
16
+ | multiple | 是否多选 | Boolean | `false` |
17
+ | disabled | 是否禁用 | Boolean | `false` |
18
+ | clearable | 是否可清空 | Boolean | `true` |
19
+ | flat | 是否平级模式 | Boolean | `false` |
20
+ | isAll | 显示全选 | Boolean | `false` |
21
+ | appendToBody | 插入 body | Boolean | `true` |
22
+ | bidCategory | 标段分类筛选 | String | — |
23
+ | isJL | 只查监理标段 | Boolean | — |
24
+ | isSelectedFirstVal | 自动选中第一个 | Boolean | `false` |
25
+ | callback | 选中回调 | Function | `() => {}` |
26
+
27
+ ## 与 PitSelectSection 的区别
28
+
29
+ | 特性 | PitSelectSection | PitSelectSectionTree |
30
+ | --- | --- | --- |
31
+ | 数据接口 | `getBidList`(列表) | `getBidTreeAll`(树形) |
32
+ | 节点键字段 | 由 API 决定 | `bidId` |
33
+ | 父子层级 | 无 | 保留树结构 |
34
+
35
+ ## 示例
36
+
37
+ ```vue
38
+ <pit-select-section-tree v-model="form.bidId" />
39
+
40
+ <pit-select-section-tree
41
+ v-model="form.bidIds"
42
+ multiple
43
+ is-all
44
+ :flat="true" />
45
+ ```
@@ -0,0 +1,66 @@
1
+ # pit-select-section 标段选择器
2
+
3
+ 自动从项目 API 加载标段树数据的树形下拉组件,基于 `PitTreeSelectPlus`,展示字段优先使用 `bidShortName`(短名称),其次 `bidName`。
4
+
5
+ ## 前置依赖
6
+
7
+ - `localStorage.projectId` — 当前项目 ID(组件初始化时自动读取)
8
+ - 后端接口:`/api/project/pj-bid-entity/getBidList` 或 `getBidTreeAll`
9
+
10
+ ## Props
11
+
12
+ | 参数 | 说明 | 类型 | 默认值 |
13
+ | --- | --- | --- | --- |
14
+ | value / v-model | 已选标段 ID(逗号分隔字符串) | String | `null` |
15
+ | multiple | 是否多选 | Boolean | `false` |
16
+ | disabled | 是否禁用 | Boolean | `false` |
17
+ | clearable | 是否可清空 | Boolean | `true` |
18
+ | flat | 是否启用平级模式 | Boolean | `false` |
19
+ | isAll | 多选时显示全选 | Boolean | `false` |
20
+ | appendToBody | 下拉面板插入 body | Boolean | `true` |
21
+ | bidCategory | 标段分类筛选 | String | — |
22
+ | isJL | 是否只查询监理标段 | Boolean | — |
23
+ | isSelectedFirstVal | 初始化时是否自动选中第一个 | Boolean | `false` |
24
+ | callback | 选中后回调函数 | Function | `() => {}` |
25
+
26
+ ## Events
27
+
28
+ | 事件名 | 说明 | 参数 |
29
+ | --- | --- | --- |
30
+ | input | 值变化(v-model) | `value` |
31
+ | change | 值变化 | `value, nodeData` |
32
+
33
+ ## 示例
34
+
35
+ ### 单选
36
+
37
+ ```vue
38
+ <pit-select-section v-model="form.bidId" />
39
+ ```
40
+
41
+ ### 多选,按监理标段筛选
42
+
43
+ ```vue
44
+ <pit-select-section
45
+ v-model="form.bidIds"
46
+ multiple
47
+ :is-j-l="true"
48
+ is-all />
49
+ ```
50
+
51
+ ### 选中后触发回调
52
+
53
+ ```vue
54
+ <pit-select-section
55
+ v-model="form.bidId"
56
+ :callback="onBidChange" />
57
+
58
+ <script>
59
+ methods: {
60
+ onBidChange(value) {
61
+ // 根据标段 ID 联动加载其他数据
62
+ this.loadContracts(value)
63
+ }
64
+ }
65
+ </script>
66
+ ```
@@ -0,0 +1,60 @@
1
+ # pit-select-string 多值字符串下拉
2
+
3
+ 封装 `el-select`,将多选值自动在 `String`(逗号分隔)和 `Array` 之间相互转换,让调用方无需手动处理格式。
4
+
5
+ ## Props
6
+
7
+ | 参数 | 说明 | 类型 | 默认值 |
8
+ | --- | --- | --- | --- |
9
+ | value / v-model | 绑定值(英文逗号分隔的字符串) | String | — |
10
+
11
+ > 其余 `el-select` 属性通过 `v-bind="$attrs"` 透传(如 `placeholder`、`disabled`、`filterable` 等)。
12
+
13
+ ## 内置特性
14
+
15
+ - `multiple`、`clearable`、`filterable` 已默认开启。
16
+ - `value` 字符串 → 内部拆分为数组;内部选中数组 → emit 为逗号拼接字符串。
17
+
18
+ ## Events
19
+
20
+ | 事件名 | 说明 | 参数 |
21
+ | --- | --- | --- |
22
+ | input | 值变化(v-model) | `String`(逗号分隔) |
23
+ | change | 值变化 | `String`(逗号分隔) |
24
+
25
+ ## Slots
26
+
27
+ | 插槽名 | 说明 |
28
+ | --- | --- |
29
+ | default | 放置 `el-option` 列表 |
30
+
31
+ ## 示例
32
+
33
+ ### 基础用法
34
+
35
+ ```vue
36
+ <pit-select-string v-model="form.roleIds" placeholder="请选择角色">
37
+ <el-option
38
+ v-for="item in roleList"
39
+ :key="item.id"
40
+ :label="item.roleName"
41
+ :value="item.id" />
42
+ </pit-select-string>
43
+ ```
44
+
45
+ ### 结合字典数据
46
+
47
+ ```vue
48
+ <pit-select-string v-model="form.tagIds">
49
+ <el-option
50
+ v-for="tag in tags"
51
+ :key="tag.value"
52
+ :label="tag.label"
53
+ :value="tag.value" />
54
+ </pit-select-string>
55
+ ```
56
+
57
+ ## 注意事项
58
+
59
+ - `value` 为空字符串 `""` 时,组件内部会过滤后得到空数组,不会出现空 option 项。
60
+ - 分隔符固定为英文逗号 `,`,不可配置。
@@ -0,0 +1,41 @@
1
+ # pit-select-system-unit 系统单位选择器
2
+
3
+ 自动拉取系统(全局)关联单位列表(非项目级),基于 `el-select`,单选,显示字段为 `fullName`,绑定值为 `id`。
4
+
5
+ ## 前置依赖
6
+
7
+ - 后端接口:`getAllRelationList`(`/api/project/pj-project-info/getAllRelationList`)
8
+
9
+ ## Props
10
+
11
+ | 参数 | 说明 | 类型 | 默认值 |
12
+ | --- | --- | --- | --- |
13
+ | value / v-model | 已选单位 ID | String | `""` |
14
+ | placeholder | 占位文字 | String | 国际化默认值 |
15
+ | disabled | 是否禁用 | Boolean | `false` |
16
+ | clearable | 是否可清空 | Boolean | `true` |
17
+ | filterable | 是否可搜索 | Boolean | `true` |
18
+ | callback | 选中回调 `(value) => void` | Function | `() => {}` |
19
+
20
+ ## Events
21
+
22
+ | 事件名 | 说明 | 参数 |
23
+ | --- | --- | --- |
24
+ | input | 值变化(v-model) | `String`(单位 ID) |
25
+
26
+ ## 示例
27
+
28
+ ```vue
29
+ <pit-select-system-unit v-model="form.companyId" />
30
+
31
+ <pit-select-system-unit
32
+ v-model="form.companyId"
33
+ :callback="onUnitChange" />
34
+ ```
35
+
36
+ ## 与 PitSelectProjectUnit 的区别
37
+
38
+ | 组件 | 数据范围 | 多选 | 树形 |
39
+ | --- | --- | --- | --- |
40
+ | PitSelectProjectUnit | 当前项目参建单位 | ✅ | ✅ |
41
+ | PitSelectSystemUnit | 系统所有关联单位 | ❌ | ❌ |
@@ -0,0 +1,51 @@
1
+ # pit-select-user-by-role 按角色选用户
2
+
3
+ 根据流程节点角色自动拉取可选用户列表,基于 `el-select` 多选,绑定值为用户 ID 数组。
4
+
5
+ ## 前置依赖
6
+
7
+ - 后端接口:`getUserListByRole`、`getUserListByRoleNextUsers`(`/api/bpm/deployment/...`)
8
+
9
+ ## Props
10
+
11
+ | 参数 | 说明 | 类型 | 默认值 |
12
+ | --- | --- | --- | --- |
13
+ | value / v-model | 已选用户 ID 数组 | Array | `[]` |
14
+ | placeholder | 占位文字 | String | 国际化"请选择下一审批人" |
15
+ | clearable | 是否可清空 | Boolean | `true` |
16
+ | disabled | 是否禁用 | Boolean | `false` |
17
+ | filterable | 是否可搜索 | Boolean | `true` |
18
+ | isFirstNode | 是否为发起节点(影响调用接口) | Boolean | `false` |
19
+ | interfaceParams | 调用接口的额外参数对象 | Object | `null` |
20
+ | nextNodeRole | 下一节点角色编码(`isFirstNode=true` 时使用) | String | `""` |
21
+
22
+ ## Events
23
+
24
+ | 事件名 | 说明 | 参数 |
25
+ | --- | --- | --- |
26
+ | input | 值变化(v-model) | `Array`(用户 ID 数组) |
27
+ | change | 值变化 | `Array` |
28
+
29
+ ## 示例
30
+
31
+ ### 基础(非发起节点)
32
+
33
+ ```vue
34
+ <pit-select-user-by-role
35
+ v-model="form.nextApproverIds"
36
+ :interface-params="{ roleId: currentRoleId }" />
37
+ ```
38
+
39
+ ### 发起节点(第一个审批环节)
40
+
41
+ ```vue
42
+ <pit-select-user-by-role
43
+ v-model="form.nextApproverIds"
44
+ :is-first-node="true"
45
+ next-node-role="APPROVE_ROLE_CODE" />
46
+ ```
47
+
48
+ ## 注意事项
49
+
50
+ - 组件挂载(`mounted`)时自动请求用户列表,切换参数后需通过外部 key 触发重渲染,或监听参数变化后手动调用 refresh。
51
+ - 绑定值为 **ID 数组**(非逗号字符串),与其他 Select 类组件不同,注意区分。
@@ -0,0 +1,43 @@
1
+ # pit-switch 开关
2
+
3
+ 对 `el-switch` 的极简封装,统一 v-model 双向绑定。
4
+
5
+ ## Props
6
+
7
+ | 参数 | 说明 | 类型 | 默认值 |
8
+ | --- | --- | --- | --- |
9
+ | value / v-model | 绑定值 | Boolean | — |
10
+
11
+ > 其余 `el-switch` 属性(`active-text`、`inactive-text`、`active-color`、`disabled` 等)通过 `v-bind="$attrs"` 透传。
12
+
13
+ ## Events
14
+
15
+ | 事件名 | 说明 | 参数 |
16
+ | --- | --- | --- |
17
+ | input | 值变化(v-model) | `Boolean` |
18
+ | change | 值变化 | `Boolean` |
19
+
20
+ ## 示例
21
+
22
+ ### 基础用法
23
+
24
+ ```vue
25
+ <pit-switch v-model="form.enabled" />
26
+ ```
27
+
28
+ ### 带文字标签与颜色
29
+
30
+ ```vue
31
+ <pit-switch
32
+ v-model="form.enabled"
33
+ active-text="启用"
34
+ inactive-text="禁用"
35
+ active-color="#409EFF"
36
+ inactive-color="#909399" />
37
+ ```
38
+
39
+ ### 禁用状态
40
+
41
+ ```vue
42
+ <pit-switch v-model="form.enabled" disabled />
43
+ ```
@@ -0,0 +1,66 @@
1
+ # pit-table-contract 合同选择器(弹窗)
2
+
3
+ 弹窗形式的合同选择器,通过内部表格分页查询合同列表,支持按合同名称/编号搜索,选中后返回合同 ID。
4
+
5
+ ## 前置依赖
6
+
7
+ - `localStorage.projectId` — 当前项目 ID
8
+ - `this.$route.meta.modelId` — 当前菜单 ID
9
+ - 后端接口:`/api/contract/contract-base-information/getContractListByCompanyId`
10
+
11
+ ## Props
12
+
13
+ | 参数 | 说明 | 类型 | 默认值 |
14
+ | --- | --- | --- | --- |
15
+ | value / v-model | 已选合同 ID | String | `""` |
16
+ | initInnerValue | 回显用的合同名称 | String | `""` |
17
+ | classNumber | 合同分类编号(传入时固定合同类型,不显示类型筛选器) | String | `""` |
18
+ | currencyId | 货币 ID(传递给查询接口) | String | `""` |
19
+
20
+ ## Events
21
+
22
+ | 事件名 | 说明 | 参数 |
23
+ | --- | --- | --- |
24
+ | input | 值变化(v-model) | `String`(合同 ID) |
25
+ | change | 表格行确认选中 | `rowData`(合同完整对象) |
26
+
27
+ ## Methods
28
+
29
+ | 方法名 | 说明 |
30
+ | --- | --- |
31
+ | `open()` | 手动打开弹窗 |
32
+
33
+ ## 示例
34
+
35
+ ```vue
36
+ <el-form-item label="合同" prop="contractId">
37
+ <pit-input
38
+ v-model="form.contractName"
39
+ readonly
40
+ placeholder="请选择合同"
41
+ @click.native="$refs.contractSelector.open()">
42
+ <i slot="suffix" class="el-icon-arrow-down" />
43
+ </pit-input>
44
+ <pit-table-contract
45
+ ref="contractSelector"
46
+ v-model="form.contractId"
47
+ :init-inner-value="form.contractName"
48
+ @change="onContractSelected" />
49
+ </el-form-item>
50
+
51
+ <script>
52
+ methods: {
53
+ onContractSelected(row) {
54
+ this.form.contractName = row.contractName
55
+ this.form.contractNumber = row.contractNumber
56
+ }
57
+ }
58
+ </script>
59
+ ```
60
+
61
+ ## 注意事项
62
+
63
+ - 表格展示字段:合同名称、合同编号、合同类型、乙方名称。
64
+ - 表格高度通过 `this.$Business.selectBidListStyle` 配置(默认 `{ height: '461px' }`)。
65
+ - 双击行或点击"确认"均可完成选择;点击"取消"关闭弹窗不修改值。
66
+ - `classNumber` 为空时,上方显示合同类型下拉筛选;否则隐藏该筛选项。
@@ -0,0 +1,81 @@
1
+ # pit-table-operation 表格行操作
2
+
3
+ 表格行内操作按钮组,默认包含"编辑"和"删除",支持权限控制,提供三个插槽扩展。
4
+
5
+ ## Props
6
+
7
+ | 参数 | 说明 | 类型 | 默认值 |
8
+ | --- | --- | --- | --- |
9
+ | hasEdit | 是否显示编辑按钮 | Boolean | `true` |
10
+ | hasDel | 是否显示删除按钮 | Boolean | `true` |
11
+ | editText | 编辑按钮文案 | String | `"编辑"` |
12
+ | delText | 删除按钮文案 | String | `"删除"` |
13
+ | editDisabled | 编辑按钮是否禁用 | Boolean | `false` |
14
+ | delDisabled | 删除按钮是否禁用 | Boolean | `false` |
15
+ | editPerCode | 编辑按钮权限标识 | String | `"btn_edit"` |
16
+ | delPerCode | 删除按钮权限标识 | String | `"btn_remove"` |
17
+ | isJudgePer | 是否启用权限判断 | Boolean | `false` |
18
+
19
+ ## Events
20
+
21
+ | 事件名 | 说明 | 参数 |
22
+ | --- | --- | --- |
23
+ | edit | 点击编辑按钮 | — |
24
+ | del | 点击删除按钮 | — |
25
+
26
+ ## Slots
27
+
28
+ | 插槽名 | 说明 |
29
+ | --- | --- |
30
+ | left | 编辑按钮左侧扩展区 |
31
+ | center | 编辑与删除按钮之间扩展区 |
32
+ | default | 删除按钮右侧扩展区 |
33
+
34
+ ## 示例
35
+
36
+ ### 基础用法
37
+
38
+ ```vue
39
+ <el-table-column label="操作" width="120">
40
+ <template slot-scope="{ row }">
41
+ <pit-table-operation
42
+ @edit="handleEdit(row)"
43
+ @del="handleDel(row)" />
44
+ </template>
45
+ </el-table-column>
46
+ ```
47
+
48
+ ### 开启权限控制
49
+
50
+ ```vue
51
+ <pit-table-operation
52
+ :is-judge-per="true"
53
+ edit-per-code="project:edit"
54
+ del-per-code="project:delete"
55
+ @edit="handleEdit(row)"
56
+ @del="handleDel(row)" />
57
+ ```
58
+
59
+ ### 新增自定义按钮
60
+
61
+ ```vue
62
+ <pit-table-operation @edit="handleEdit(row)" @del="handleDel(row)">
63
+ <!-- 编辑与删除之间 -->
64
+ <template slot="center">
65
+ <el-button size="mini" type="text" @click="handleView(row)">查看</el-button>
66
+ </template>
67
+ <!-- 删除按钮右侧 -->
68
+ <el-button size="mini" type="text" @click="handleLog(row)">日志</el-button>
69
+ </pit-table-operation>
70
+ ```
71
+
72
+ ### 仅保留删除
73
+
74
+ ```vue
75
+ <pit-table-operation :has-edit="false" @del="handleDel(row)" />
76
+ ```
77
+
78
+ ## 注意事项
79
+
80
+ - `isJudgePer` 为 `false` 时,`editPerCode`/`delPerCode` 不生效。
81
+ - 权限判断依赖全局 `v-has` 指令,需确保已注册权限指令(通过 `Vue.use(PitBusinessUI, { store })` 注入)。
@@ -0,0 +1,75 @@
1
+ # pit-table 表格
2
+
3
+ 对 `el-table` 的轻量封装,内置序号列、多选列自动布局,数据变化时自动触发 `doLayout`。
4
+
5
+ ## Props
6
+
7
+ | 参数 | 说明 | 类型 | 默认值 |
8
+ | --- | --- | --- | --- |
9
+ | data | 表格数据 | Array | `[]` |
10
+ | hasNO | 是否显示序号列 | Boolean | `true` |
11
+ | hasC | 是否显示多选列 | Boolean | `false` |
12
+ | border | 是否带边框 | Boolean | `false` |
13
+ | height | 表格高度 | String / Number | `"100%"` |
14
+ | columnData | 列配置(预留,暂未直接渲染) | Array | `[]` |
15
+
16
+ > 其余 `el-table` 支持的属性均可通过 `v-bind="$attrs"` 透传。
17
+
18
+ ## Events
19
+
20
+ `el-table` 所有事件均通过 `v-on="$listeners"` 透传,无额外自定义事件。
21
+
22
+ ## Slots
23
+
24
+ | 插槽名 | 说明 |
25
+ | --- | --- |
26
+ | default | 放置 `el-table-column` 列配置 |
27
+
28
+ ## Methods
29
+
30
+ | 方法名 | 说明 | 参数 |
31
+ | --- | --- | --- |
32
+ | doLayout | 手动触发重新布局(内部已在数据变化时自动调用) | — |
33
+
34
+ ## 示例
35
+
36
+ ### 基础用法
37
+
38
+ ```vue
39
+ <template>
40
+ <pit-table :data="tableData">
41
+ <el-table-column prop="name" label="姓名" />
42
+ <el-table-column prop="age" label="年龄" />
43
+ </pit-table>
44
+ </template>
45
+
46
+ <script>
47
+ export default {
48
+ data() {
49
+ return {
50
+ tableData: [
51
+ { name: '张三', age: 28 },
52
+ { name: '李四', age: 32 }
53
+ ]
54
+ }
55
+ }
56
+ }
57
+ </script>
58
+ ```
59
+
60
+ ### 带多选与无序号
61
+
62
+ ```vue
63
+ <pit-table :data="tableData" :has-n-o="false" :has-c="true" @selection-change="onSelect" />
64
+ ```
65
+
66
+ ### 固定高度 + 边框
67
+
68
+ ```vue
69
+ <pit-table :data="tableData" height="400px" border />
70
+ ```
71
+
72
+ ## 注意事项
73
+
74
+ - 内部已处理数据变化时的 `doLayout`,一般无需手动调用。
75
+ - 更多列配置请直接使用 `el-table-column`,使用方式与官方一致。
@@ -0,0 +1,86 @@
1
+ # pit-tag 标签
2
+
3
+ 对 `el-tag` 的封装,支持通过键值映射对象动态确定标签类型(颜色),适用于状态标签场景。
4
+
5
+ ## Props
6
+
7
+ | 参数 | 说明 | 类型 | 默认值 |
8
+ | --- | --- | --- | --- |
9
+ | tagKey | 当前值(用于匹配 `tagObj` 中的 key) | String / Number / Boolean | `""` |
10
+ | tagObj | 键值映射对象,key 为竖线分隔的值列表,value 为 el-tag type | Object | `{}` |
11
+
12
+ > 其余 `el-tag` 属性(`size`、`effect`、`closable` 等)通过 `v-bind="$attrs"` 透传,事件通过 `v-on="$listeners"` 透传。
13
+
14
+ ## Slots
15
+
16
+ | 插槽名 | 说明 |
17
+ | --- | --- |
18
+ | default | 标签显示文字 |
19
+
20
+ ## tagObj 格式说明
21
+
22
+ ```js
23
+ // key 为竖线分隔的匹配值列表,value 为 el-tag type
24
+ {
25
+ '0': 'info', // tagKey === '0' → info(灰色)
26
+ '1': 'success', // tagKey === '1' → success(绿色)
27
+ '2|3': 'warning', // tagKey === '2' 或 '3' → warning(橙色)
28
+ '4': 'danger' // tagKey === '4' → danger(红色)
29
+ }
30
+ ```
31
+
32
+ **el-tag type 可选值**:`''`(蓝色)、`'success'`、`'warning'`、`'danger'`、`'info'`
33
+
34
+ ## 示例
35
+
36
+ ### 基础用法(状态标签)
37
+
38
+ ```vue
39
+ <template>
40
+ <pit-tag :tag-key="row.status" :tag-obj="statusMap">
41
+ {{ statusLabel }}
42
+ </pit-tag>
43
+ </template>
44
+
45
+ <script>
46
+ export default {
47
+ data() {
48
+ return {
49
+ statusMap: {
50
+ '0': 'info',
51
+ '1': 'success',
52
+ '2': 'warning',
53
+ '3': 'danger'
54
+ }
55
+ }
56
+ }
57
+ }
58
+ </script>
59
+ ```
60
+
61
+ ### 在表格列中使用
62
+
63
+ ```vue
64
+ <el-table-column label="状态" width="100">
65
+ <template slot-scope="{ row }">
66
+ <pit-tag :tag-key="String(row.status)" :tag-obj="statusTagMap">
67
+ {{ statusText[row.status] }}
68
+ </pit-tag>
69
+ </template>
70
+ </el-table-column>
71
+ ```
72
+
73
+ ### 多值共用同一类型
74
+
75
+ ```vue
76
+ <!-- row.type 为 'draft' 或 'pending' 时均显示 warning 样式 -->
77
+ <pit-tag :tag-key="row.type" :tag-obj="{ 'draft|pending': 'warning', 'approved': 'success' }">
78
+ {{ row.typeName }}
79
+ </pit-tag>
80
+ ```
81
+
82
+ ## 注意事项
83
+
84
+ - `tagObj` 的 key 使用 `|` 分隔多个匹配值,可实现多值共用同一 type。
85
+ - `tagKey` 匹配时为**字符串精确匹配**,若值为数字请手动转成字符串(`String(row.status)`)。
86
+ - 未匹配到任何 key 时,`type` 为空字符串(默认蓝色 el-tag 样式)。