npmapps 1.0.24 → 1.0.26

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 (210) hide show
  1. package/app/.codegraph/daemon.pid +6 -0
  2. package/app/.eslintrc.js +19 -0
  3. package/app/README.md +24 -0
  4. package/app/babel.config.js +5 -0
  5. package/app/devtool-windows-amd64.zip +0 -0
  6. package/app/docs/superpowers/plans/2026-05-29-quill-editor.md +836 -0
  7. package/app/docs/superpowers/specs/2026-05-29-quill-editor-design.md +210 -0
  8. package/app/docs/superpowers/specs/2026-06-06-lazy-cascader-design.md +400 -0
  9. package/app/jsconfig.json +19 -0
  10. package/app/package-lock.json +21347 -0
  11. package/app/package.json +63 -0
  12. package/app/postcss.config.js +10 -0
  13. package/app/public/favicon.ico +0 -0
  14. package/app/public/index.html +17 -0
  15. package/app/public//344/270/200/351/224/256/351/273/221/346/232/227.html +136 -0
  16. package/app/src/App.vue +110 -0
  17. package/app/src/assets/bpmn-camunda.jpg +0 -0
  18. package/app/src/assets/css/diagram.less +17 -0
  19. package/app/src/assets/icon/Icon.less +31 -0
  20. package/app/src/assets/icon/font/app-codes.css +26 -0
  21. package/app/src/assets/icon/font/app.eot +0 -0
  22. package/app/src/assets/icon/font/app.svg +60 -0
  23. package/app/src/assets/icon/font/app.ttf +0 -0
  24. package/app/src/assets/icon/font/app.woff +0 -0
  25. package/app/src/assets/icon/font/app.woff2 +0 -0
  26. package/app/src/assets/icon/font/config.json +248 -0
  27. package/app/src/assets/icon/font/source/raw/align-bottom-tool.svg +30 -0
  28. package/app/src/assets/icon/font/source/raw/align-horizontal-center-tool.svg +85 -0
  29. package/app/src/assets/icon/font/source/raw/align-left-tool.svg +84 -0
  30. package/app/src/assets/icon/font/source/raw/align-right-tool.svg +80 -0
  31. package/app/src/assets/icon/font/source/raw/align-top-tool.svg +84 -0
  32. package/app/src/assets/icon/font/source/raw/align-vertical-center-tool.svg +89 -0
  33. package/app/src/assets/icon/font/source/raw/distribute-horizontally-tool.svg +95 -0
  34. package/app/src/assets/icon/font/source/raw/distribute-vertically-tool.svg +99 -0
  35. package/app/src/assets/icon/font/source/raw/set-color-tool.svg +111 -0
  36. package/app/src/assets/icon/font/source/symbols/align-bottom-tool.svg +30 -0
  37. package/app/src/assets/icon/font/source/symbols/align-horizontal-center-tool.svg +30 -0
  38. package/app/src/assets/icon/font/source/symbols/align-left-tool.svg +30 -0
  39. package/app/src/assets/icon/font/source/symbols/align-right-tool.svg +30 -0
  40. package/app/src/assets/icon/font/source/symbols/align-top-tool.svg +30 -0
  41. package/app/src/assets/icon/font/source/symbols/align-vertical-center-tool.svg +30 -0
  42. package/app/src/assets/icon/font/source/symbols/distribute-horizontally-tool.svg +30 -0
  43. package/app/src/assets/icon/font/source/symbols/distribute-vertically-tool.svg +30 -0
  44. package/app/src/assets/icon/font/source/symbols/set-color-tool.svg +63 -0
  45. package/app/src/assets/logo.png +0 -0
  46. package/app/src/components/EllTable/README.md +70 -0
  47. package/app/src/components/EllTable/article.md +184 -0
  48. package/app/src/components/EllTable/index.js +213 -0
  49. package/app/src/components/FormulaEditor/FunctionSelector.vue +123 -0
  50. package/app/src/components/FormulaEditor/OperatorSelector.vue +184 -0
  51. package/app/src/components/FormulaEditor/ParameterSelector.vue +123 -0
  52. package/app/src/components/FormulaEditor/api.js +69 -0
  53. package/app/src/components/FormulaEditor/index.vue +435 -0
  54. package/app/src/components/HelloWorld.vue +58 -0
  55. package/app/src/components/PageHeader/index.vue +158 -0
  56. package/app/src/components/Splitter/README.md +144 -0
  57. package/app/src/components/Splitter/example.vue +88 -0
  58. package/app/src/components/Splitter/index.vue +203 -0
  59. package/app/src/components/diagram/ToolBar.vue +357 -0
  60. package/app/src/components/diagram/customTranslate/customTranslate.js +12 -0
  61. package/app/src/components/diagram/customTranslate/translationsGerman.js +241 -0
  62. package/app/src/components/diagram/index.vue +261 -0
  63. package/app/src/components/diagram/xmlData.js +29 -0
  64. package/app/src/directives/filldown.js +155 -0
  65. package/app/src/directives/filldownTable.js +291 -0
  66. package/app/src/main.js +40 -0
  67. package/app/src/router/index.js +63 -0
  68. package/app/src/store/index.js +23 -0
  69. package/app/src/utils/winBox.js +23 -0
  70. package/app/src/views/Extend/A.vue +12 -0
  71. package/app/src/views/Extend/B.vue +10 -0
  72. package/app/src/views/Extend/MagicalComponentsForELFormItem.vue +87 -0
  73. package/app/src/views/Extend/index.vue +59 -0
  74. package/app/src/views/Extend/tableMouseHorizontalWheel.vue +193 -0
  75. package/app/src/views/Home.vue +37 -0
  76. package/app/src/views/RouterJump.vue +155 -0
  77. package/app/src/views/css.vue +57 -0
  78. package/app/src/views/cssComponents/EllipsisText.vue +83 -0
  79. package/app/src/views/cssComponents/HoverCard.vue +79 -0
  80. package/app/src/views/cssComponents/TableHover.vue +140 -0
  81. package/app/src/views/cssComponents/inputSlo.vue +52 -0
  82. package/app/src/views/cssComponents/tableFixed.vue +158 -0
  83. package/app/src/views/echarts/echart-dome.vue +82 -0
  84. package/app/src/views/echarts/index.vue +118 -0
  85. package/app/src/views/echarts/pei3d.vue +667 -0
  86. package/app/src/views/element/bpmn/index.vue +18 -0
  87. package/app/src/views/element/components/attendanceCycle/index.vue +131 -0
  88. package/app/src/views/element/components/attendanceGroup/index.vue +147 -0
  89. package/app/src/views/element/components/attendancePersonnel/index.vue +158 -0
  90. package/app/src/views/element/components/companyCalendar/index.vue +147 -0
  91. package/app/src/views/element/components/shift/index.vue +147 -0
  92. package/app/src/views/element/components/shiftRotationSystem/index.vue +147 -0
  93. package/app/src/views/element/elTableJsx/columnManagement.vue +340 -0
  94. package/app/src/views/element/elTableJsx/dialogInput.vue +71 -0
  95. package/app/src/views/element/elTableJsx/elTableJsx.vue +1826 -0
  96. package/app/src/views/element/elTableJsx/formTable.vue +598 -0
  97. package/app/src/views/element/elTableJsx/index.vue +29 -0
  98. package/app/src/views/element/elTableJsx/simpleTable.vue +192 -0
  99. package/app/src/views/element/elTableJsx.zip +0 -0
  100. package/app/src/views/element/index.vue +44 -0
  101. package/app/src/views/element/lazyCascader/LazyCascader.vue +302 -0
  102. package/app/src/views/element/lazyCascader/data.js +205 -0
  103. package/app/src/views/element/lazyCascader/index.vue +315 -0
  104. package/app/src/views/element/quillEditor/README.md +163 -0
  105. package/app/src/views/element/quillEditor/example.vue +314 -0
  106. package/app/src/views/element/quillEditor/index.vue +409 -0
  107. package/app/src/views/element/quillEditor/toolbar.js +122 -0
  108. package/app/vue.config.js +15 -0
  109. package/package.json +1 -1
  110. package/app/wujie-vue3-child/.claude/settings.local.json +0 -8
  111. package/app/wujie-vue3-child/.vscode/extensions.json +0 -3
  112. package/app/wujie-vue3-child/PROJECT_MEMORY.md +0 -427
  113. package/app/wujie-vue3-child/README.md +0 -5
  114. package/app/wujie-vue3-child/index.html +0 -13
  115. package/app/wujie-vue3-child/package-lock.json +0 -5744
  116. package/app/wujie-vue3-child/package.json +0 -28
  117. package/app/wujie-vue3-child/public/vite.svg +0 -1
  118. package/app/wujie-vue3-child/src/App.vue +0 -130
  119. package/app/wujie-vue3-child/src/assets/vue.svg +0 -1
  120. package/app/wujie-vue3-child/src/components/HelloWorld.vue +0 -43
  121. package/app/wujie-vue3-child/src/components/tags-view.vue +0 -193
  122. package/app/wujie-vue3-child/src/components/tags-view1.vue +0 -131
  123. package/app/wujie-vue3-child/src/directives/aiLoading.js +0 -182
  124. package/app/wujie-vue3-child/src/hooks/useClickOutside.js +0 -11
  125. package/app/wujie-vue3-child/src/hooks/useTableDragSort.js +0 -28
  126. package/app/wujie-vue3-child/src/main.js +0 -18
  127. package/app/wujie-vue3-child/src/router/index.js +0 -104
  128. package/app/wujie-vue3-child/src/store/tagsViewStroe.js +0 -34
  129. package/app/wujie-vue3-child/src/style.css +0 -171
  130. package/app/wujie-vue3-child/src/views/aiCoach/collapseExpand/index.jsx +0 -108
  131. package/app/wujie-vue3-child/src/views/aiCoach/collapseExpand/index.module.scss +0 -97
  132. package/app/wujie-vue3-child/src/views/aiCoach/departmentPersonnel/README.md +0 -836
  133. package/app/wujie-vue3-child/src/views/aiCoach/departmentPersonnel/REFLEX_EXAMPLES.md +0 -728
  134. package/app/wujie-vue3-child/src/views/aiCoach/departmentPersonnel/components/DepartmentPersonnelSelector.jsx +0 -687
  135. package/app/wujie-vue3-child/src/views/aiCoach/departmentPersonnel/components/DepartmentPersonnelSelector.module.scss +0 -560
  136. package/app/wujie-vue3-child/src/views/aiCoach/departmentPersonnel/components/DepartmentSelector.jsx +0 -570
  137. package/app/wujie-vue3-child/src/views/aiCoach/departmentPersonnel/components/DepartmentSelector.module.scss +0 -330
  138. package/app/wujie-vue3-child/src/views/aiCoach/departmentPersonnel/components/DepartmentSelectorV2.jsx +0 -378
  139. package/app/wujie-vue3-child/src/views/aiCoach/departmentPersonnel/components/DepartmentSelectorV2.module.scss +0 -228
  140. package/app/wujie-vue3-child/src/views/aiCoach/departmentPersonnel/components/OptionsSelector.jsx +0 -399
  141. package/app/wujie-vue3-child/src/views/aiCoach/departmentPersonnel/components/OptionsSelector.module.scss +0 -252
  142. package/app/wujie-vue3-child/src/views/aiCoach/departmentPersonnel/components/PersonnelSelector.jsx +0 -585
  143. package/app/wujie-vue3-child/src/views/aiCoach/departmentPersonnel/components/PersonnelSelector.module.scss +0 -331
  144. package/app/wujie-vue3-child/src/views/aiCoach/departmentPersonnel/components/PopoverSelector.jsx +0 -392
  145. package/app/wujie-vue3-child/src/views/aiCoach/departmentPersonnel/components/PopoverSelector.module.scss +0 -39
  146. package/app/wujie-vue3-child/src/views/aiCoach/departmentPersonnel/components/README.md +0 -248
  147. package/app/wujie-vue3-child/src/views/aiCoach/departmentPersonnel/components/SelectorTrigger.jsx +0 -194
  148. package/app/wujie-vue3-child/src/views/aiCoach/departmentPersonnel/index.jsx +0 -1459
  149. package/app/wujie-vue3-child/src/views/aiCoach/departmentPersonnel/mockData.js +0 -301
  150. package/app/wujie-vue3-child/src/views/aiCoach/dialogueSegment/index.jsx +0 -182
  151. package/app/wujie-vue3-child/src/views/aiCoach/dialogueSegment/index.module.scss +0 -28
  152. package/app/wujie-vue3-child/src/views/aiCoach/index.jsx +0 -293
  153. package/app/wujie-vue3-child/src/views/aiCoach/practiceStatus/components/ChartsPanel/index.jsx +0 -121
  154. package/app/wujie-vue3-child/src/views/aiCoach/practiceStatus/components/ChartsPanel/index.module.scss +0 -76
  155. package/app/wujie-vue3-child/src/views/aiCoach/practiceStatus/components/DonutChart/index.jsx +0 -104
  156. package/app/wujie-vue3-child/src/views/aiCoach/practiceStatus/components/PracticeTable/index.jsx +0 -75
  157. package/app/wujie-vue3-child/src/views/aiCoach/practiceStatus/components/PracticeTable/index.module.scss +0 -12
  158. package/app/wujie-vue3-child/src/views/aiCoach/practiceStatus/components/RankBarChart/index.jsx +0 -62
  159. package/app/wujie-vue3-child/src/views/aiCoach/practiceStatus/components/RankBarChart/index.module.scss +0 -43
  160. package/app/wujie-vue3-child/src/views/aiCoach/practiceStatus/components/RankingGroup/index.jsx +0 -29
  161. package/app/wujie-vue3-child/src/views/aiCoach/practiceStatus/components/RankingGroup/index.module.scss +0 -5
  162. package/app/wujie-vue3-child/src/views/aiCoach/practiceStatus/components/RankingList/index.jsx +0 -58
  163. package/app/wujie-vue3-child/src/views/aiCoach/practiceStatus/components/RankingList/index.module.scss +0 -85
  164. package/app/wujie-vue3-child/src/views/aiCoach/practiceStatus/components/ScriptStatsPanel/index.jsx +0 -92
  165. package/app/wujie-vue3-child/src/views/aiCoach/practiceStatus/components/ScriptStatsPanel/index.module.scss +0 -56
  166. package/app/wujie-vue3-child/src/views/aiCoach/practiceStatus/components/StatCardsRow/index.jsx +0 -40
  167. package/app/wujie-vue3-child/src/views/aiCoach/practiceStatus/components/StatCardsRow/index.module.scss +0 -53
  168. package/app/wujie-vue3-child/src/views/aiCoach/practiceStatus/components/echarts/EchartsDonut.jsx +0 -106
  169. package/app/wujie-vue3-child/src/views/aiCoach/practiceStatus/components/echarts/EchartsRankBar.jsx +0 -132
  170. package/app/wujie-vue3-child/src/views/aiCoach/practiceStatus/index.jsx +0 -176
  171. package/app/wujie-vue3-child/src/views/aiCoach/practiceStatus/index.module.scss +0 -96
  172. package/app/wujie-vue3-child/src/views/aiCoach/reportDetail/components/CoachReport/index.jsx +0 -162
  173. package/app/wujie-vue3-child/src/views/aiCoach/reportDetail/components/CoachReport/index.module.scss +0 -16
  174. package/app/wujie-vue3-child/src/views/aiCoach/reportDetail/components/ComprehensiveEvaluation/index.jsx +0 -29
  175. package/app/wujie-vue3-child/src/views/aiCoach/reportDetail/components/ComprehensiveEvaluation/index.module.scss +0 -25
  176. package/app/wujie-vue3-child/src/views/aiCoach/reportDetail/components/DialogueBubble/index.jsx +0 -106
  177. package/app/wujie-vue3-child/src/views/aiCoach/reportDetail/components/DialogueBubble/index.module.scss +0 -164
  178. package/app/wujie-vue3-child/src/views/aiCoach/reportDetail/components/DialogueRecord/index.jsx +0 -182
  179. package/app/wujie-vue3-child/src/views/aiCoach/reportDetail/components/DialogueRecord/index.module.scss +0 -203
  180. package/app/wujie-vue3-child/src/views/aiCoach/reportDetail/components/DimensionDetail/index.jsx +0 -145
  181. package/app/wujie-vue3-child/src/views/aiCoach/reportDetail/components/DimensionDetail/index.module.scss +0 -126
  182. package/app/wujie-vue3-child/src/views/aiCoach/reportDetail/components/DimensionScores/index.jsx +0 -67
  183. package/app/wujie-vue3-child/src/views/aiCoach/reportDetail/components/DimensionScores/index.module.scss +0 -105
  184. package/app/wujie-vue3-child/src/views/aiCoach/reportDetail/components/ReportHeader/index.jsx +0 -81
  185. package/app/wujie-vue3-child/src/views/aiCoach/reportDetail/components/ReportHeader/index.module.scss +0 -47
  186. package/app/wujie-vue3-child/src/views/aiCoach/reportDetail/components/RoleInfo/index.jsx +0 -64
  187. package/app/wujie-vue3-child/src/views/aiCoach/reportDetail/components/RoleInfo/index.module.scss +0 -85
  188. package/app/wujie-vue3-child/src/views/aiCoach/reportDetail/components/ScoreBadge/index.jsx +0 -39
  189. package/app/wujie-vue3-child/src/views/aiCoach/reportDetail/components/ScoreBadge/index.module.scss +0 -44
  190. package/app/wujie-vue3-child/src/views/aiCoach/reportDetail/components/SubDimensionItem/index.jsx +0 -83
  191. package/app/wujie-vue3-child/src/views/aiCoach/reportDetail/components/SubDimensionItem/index.module.scss +0 -101
  192. package/app/wujie-vue3-child/src/views/aiCoach/reportDetail/index.jsx +0 -50
  193. package/app/wujie-vue3-child/src/views/aiCoach/reportDetail/index.module.scss +0 -25
  194. package/app/wujie-vue3-child/src/views/aiCoach/scriptTable/index.jsx +0 -196
  195. package/app/wujie-vue3-child/src/views/aiCoach/scriptTable/index.module.scss +0 -41
  196. package/app/wujie-vue3-child/src/views/aiCoach/scriptTable/inputColumn/index.jsx +0 -183
  197. package/app/wujie-vue3-child/src/views/aiCoach/scriptTable/inputColumn/index.module.scss +0 -115
  198. package/app/wujie-vue3-child/src/views/child-to-parent.vue +0 -117
  199. package/app/wujie-vue3-child/src/views/home.vue +0 -53
  200. package/app/wujie-vue3-child/src/views/jsx/btnSelect/btnSelect.vue +0 -169
  201. package/app/wujie-vue3-child/src/views/jsx/btnSelect/index.vue +0 -69
  202. package/app/wujie-vue3-child/src/views/jsx/com.vue +0 -44
  203. package/app/wujie-vue3-child/src/views/jsx/dialog.jsx +0 -66
  204. package/app/wujie-vue3-child/src/views/jsx/index.vue +0 -72
  205. package/app/wujie-vue3-child/src/views/jsx/props.vue +0 -33
  206. package/app/wujie-vue3-child/src/views/parent-to-child.vue +0 -225
  207. package/app/wujie-vue3-child/src/views/phone-code.vue +0 -318
  208. package/app/wujie-vue3-child/src/views/router-jump.vue +0 -123
  209. package/app/wujie-vue3-child/src/views/test.vue +0 -192
  210. package/app/wujie-vue3-child/vite.config.js +0 -15
@@ -0,0 +1,131 @@
1
+ <template>
2
+ <div class="attendanceCycle" v-loading="loading">
3
+ <div class="header">
4
+ <div class="left">
5
+ <el-button size="mini" type="primary" @click="onSave">选择</el-button>
6
+ </div>
7
+ <div class="right">
8
+ <el-select
9
+ size="mini"
10
+ v-model="year"
11
+ placeholder="请选择"
12
+ @change="yearChange"
13
+ >
14
+ <el-option
15
+ v-for="item in options"
16
+ :key="item.yearId"
17
+ :label="item.yearName"
18
+ :value="item.yearId"
19
+ >
20
+ </el-option>
21
+ </el-select>
22
+ </div>
23
+ </div>
24
+ <el-table
25
+ size="mini"
26
+ :data="tableData"
27
+ style="width: 100%"
28
+ border
29
+ @row-click="handleRowClick"
30
+ >
31
+ <!-- 单选框列 -->
32
+ <el-table-column width="50">
33
+ <template slot-scope="scope">
34
+ <el-radio
35
+ :value="currentRow.monthId"
36
+ :label="scope.row.monthId"
37
+ >&nbsp;</el-radio>
38
+ </template>
39
+ </el-table-column>
40
+ <el-table-column prop="monthName" label="名称"></el-table-column>
41
+ <el-table-column prop="monthName" label="开始日期"></el-table-column>
42
+ <el-table-column prop="monthName" label="结束日期"></el-table-column>
43
+ </el-table>
44
+ </div>
45
+ </template>
46
+
47
+ <script>
48
+ import {
49
+ getOpenAttendanceCycleMonthListApi,
50
+ getOpenAttendanceCycleYearListApi,
51
+ } from "../../employeeSchedulingManagement/data.js";
52
+
53
+ export default {
54
+ // 考勤周期
55
+ props: {
56
+ close: {
57
+ type: Function,
58
+ default: () => {},
59
+ },
60
+ setData:{
61
+ type: Function,
62
+ default: () => {},
63
+ },
64
+ },
65
+
66
+ data() {
67
+ return {
68
+ loading: false,
69
+ tableData: [],
70
+ year: "2025",
71
+ options: [],
72
+ currentRow: {
73
+ monthId: "",
74
+ }, // 当前选中的行
75
+ };
76
+ },
77
+ mounted() {
78
+ this.loading = false;
79
+ this.getTableData();
80
+ this.getYearList();
81
+ },
82
+ methods: {
83
+ getTableData() {
84
+ this.loading = true;
85
+ getOpenAttendanceCycleMonthListApi(this.year).then((res) => {
86
+ this.tableData = res;
87
+ console.log(res, "res");
88
+ this.loading = false;
89
+ });
90
+ },
91
+ getYearList() {
92
+ getOpenAttendanceCycleYearListApi().then((res) => {
93
+ this.options = res;
94
+ });
95
+ },
96
+ yearChange() {
97
+ this.getTableData();
98
+ },
99
+ handleRowClick(row) {
100
+ this.currentRow = row; // 点击行时更新选中状态
101
+ },
102
+ onSave() {
103
+ if (this.currentRow.monthId === "") {
104
+ return this.$message.error("请选择");
105
+ }
106
+ this.close();
107
+ this.setData(this.currentRow);
108
+ },
109
+
110
+ },
111
+ };
112
+ </script>
113
+
114
+ <style lang="less" scoped>
115
+ .attendanceCycle {
116
+ .header {
117
+ display: flex;
118
+ justify-content: space-between;
119
+ align-items: center;
120
+ margin-bottom: 10px;
121
+ .left {
122
+ display: flex;
123
+ align-items: center;
124
+ }
125
+ .right {
126
+ display: flex;
127
+ align-items: center;
128
+ }
129
+ }
130
+ }
131
+ </style>
@@ -0,0 +1,147 @@
1
+ <template>
2
+ <div class="attendanceCycle" v-loading="loading">
3
+ <div class="header">
4
+ <div class="left">
5
+ <el-button size="mini" type="primary" @click="onSave">选择</el-button>
6
+ </div>
7
+ <div class="right">
8
+
9
+ </div>
10
+ </div>
11
+ <el-table
12
+ size="mini"
13
+ :data="tableData"
14
+ style="width: 100%"
15
+ border
16
+ @row-click="handleRowClick"
17
+ >
18
+ <!-- 单选框列 -->
19
+ <el-table-column width="50">
20
+ <template slot-scope="scope">
21
+ <el-radio
22
+ :value="currentRow.monthId"
23
+ :label="scope.row.monthId"
24
+ >&nbsp;</el-radio>
25
+ </template>
26
+ </el-table-column>
27
+ <el-table-column prop="monthId" label="编码"></el-table-column>
28
+ <el-table-column prop="monthName" label="名称"></el-table-column>
29
+ <el-table-column prop="monthName" label="企业日历"></el-table-column>
30
+ <el-table-column prop="monthName" label="轮班制度"></el-table-column>
31
+ <el-table-column prop="monthName" label="状态"></el-table-column>
32
+ </el-table>
33
+ <div class="footer">
34
+ <div class="left">
35
+
36
+ </div>
37
+ <div class="right">
38
+ <el-pagination
39
+ @size-change="handleSizeChange"
40
+ @current-change="handleCurrentChange"
41
+ :current-page="currentPage"
42
+ :page-sizes="[10, 20, 30, 100]"
43
+ :page-size="10"
44
+ layout="total, sizes, prev, pager, next"
45
+ :total="total"
46
+ >
47
+ </el-pagination>
48
+ </div>
49
+ </div>
50
+ </div>
51
+ </template>
52
+
53
+ <script>
54
+ import {
55
+ getOpenAttendanceCycleMonthListApi,
56
+ } from "../../employeeSchedulingManagement/data.js";
57
+
58
+ export default {
59
+ // 考勤组
60
+ props: {
61
+ close: {
62
+ type: Function,
63
+ default: () => {},
64
+ },
65
+ setData:{
66
+ type: Function,
67
+ default: () => {},
68
+ },
69
+ },
70
+
71
+ data() {
72
+ return {
73
+ loading: false,
74
+ tableData: [],
75
+ year: "2025",
76
+ options: [],
77
+ currentRow: {
78
+ monthId: "",
79
+ }, // 当前选中的行
80
+ currentPage: 1,
81
+ total: 11110,
82
+ };
83
+ },
84
+ mounted() {
85
+ this.loading = false;
86
+ this.getTableData();
87
+ this.getYearList();
88
+ },
89
+ methods: {
90
+ getTableData() {
91
+ this.loading = true;
92
+ getOpenAttendanceCycleMonthListApi(this.year).then((res) => {
93
+ this.tableData = res;
94
+ console.log(res, "res");
95
+ this.loading = false;
96
+ });
97
+ },
98
+
99
+ yearChange() {
100
+ this.getTableData();
101
+ },
102
+ handleRowClick(row) {
103
+ this.currentRow = row; // 点击行时更新选中状态
104
+ },
105
+ onSave() {
106
+ if (this.currentRow.monthId === "") {
107
+ return this.$message.error("请选择");
108
+ }
109
+ this.close();
110
+ this.setData(this.currentRow);
111
+ },
112
+ handleSizeChange(val) {
113
+ this.currentPage = 1;
114
+ this.getTableData();
115
+ },
116
+ handleCurrentChange(val) {
117
+ this.currentPage = val;
118
+ this.getTableData();
119
+ },
120
+
121
+
122
+ },
123
+ };
124
+ </script>
125
+
126
+ <style lang="less" scoped>
127
+ .attendanceCycle {
128
+ .header {
129
+ display: flex;
130
+ justify-content: space-between;
131
+ align-items: center;
132
+ margin-bottom: 10px;
133
+ .left {
134
+ display: flex;
135
+ align-items: center;
136
+ }
137
+ .right {
138
+ display: flex;
139
+ align-items: center;
140
+ }
141
+ }
142
+ .footer {
143
+ display: flex;
144
+ justify-content: space-between;
145
+ }
146
+ }
147
+ </style>
@@ -0,0 +1,158 @@
1
+ <template>
2
+ <div class="attendanceCycle" v-loading="loading">
3
+ <div class="header">
4
+ <div class="left">
5
+ <el-button size="mini" type="primary" @click="onSave">选择</el-button>
6
+ </div>
7
+ <div class="right"></div>
8
+ </div>
9
+ <el-table
10
+ size="mini"
11
+ :data="tableData"
12
+ style="width: 100%"
13
+ border
14
+ @row-click="handleRowClick"
15
+ @selection-change="handleSelectionChange"
16
+ ref="multipleTable"
17
+ >
18
+ <!-- 单选框列 -->
19
+ <el-table-column width="50" v-if="!multiple">
20
+ <template slot-scope="scope">
21
+ <el-radio :value="currentRow.monthId" :label="scope.row.monthId"
22
+ >&nbsp;</el-radio
23
+ >
24
+ </template>
25
+ </el-table-column>
26
+ <el-table-column v-else type="selection" width="55"></el-table-column>
27
+ <el-table-column prop="monthId" label="工号"></el-table-column>
28
+ <el-table-column prop="monthName" label="姓名"></el-table-column>
29
+ <el-table-column prop="monthName" label="机构"></el-table-column>
30
+ <el-table-column prop="monthName" label="部门"></el-table-column>
31
+ <el-table-column prop="monthName" label="考勤组"></el-table-column>
32
+ <el-table-column prop="monthName" label="生效日期"></el-table-column>
33
+ </el-table>
34
+ <div class="footer">
35
+ <div class="left"></div>
36
+ <div class="right">
37
+ <el-pagination
38
+ @size-change="handleSizeChange"
39
+ @current-change="handleCurrentChange"
40
+ :current-page="currentPage"
41
+ :page-sizes="[10, 20, 30, 100]"
42
+ :page-size="10"
43
+ layout="total, sizes, prev, pager, next"
44
+ :total="total"
45
+ >
46
+ </el-pagination>
47
+ </div>
48
+ </div>
49
+ </div>
50
+ </template>
51
+
52
+ <script>
53
+ import { getOpenAttendanceCycleMonthListApi } from "../../employeeSchedulingManagement/data.js";
54
+
55
+ export default {
56
+ // 考勤人员
57
+ props: {
58
+ close: {
59
+ type: Function,
60
+ default: () => {},
61
+ },
62
+ setData: {
63
+ type: Function,
64
+ default: () => {},
65
+ },
66
+ multiple: {
67
+ type: Boolean,
68
+ default: false,
69
+ },
70
+ },
71
+
72
+ data() {
73
+ return {
74
+ loading: false,
75
+ tableData: [],
76
+ year: "2025",
77
+ options: [],
78
+ currentRow: {
79
+ monthId: "",
80
+ }, // 当前选中的行
81
+ currentPage: 1,
82
+ total: 11110,
83
+ multipleSelection: [],
84
+ };
85
+ },
86
+ mounted() {
87
+ this.loading = false;
88
+ this.getTableData();
89
+ },
90
+ methods: {
91
+ getTableData() {
92
+ this.loading = true;
93
+ getOpenAttendanceCycleMonthListApi(this.year).then((res) => {
94
+ this.tableData = res;
95
+ console.log(res, "res");
96
+ this.loading = false;
97
+ });
98
+ },
99
+
100
+ yearChange() {
101
+ this.getTableData();
102
+ },
103
+ handleRowClick(row) {
104
+ this.currentRow = row; // 点击行时更新选中状态
105
+ },
106
+ onSave() {
107
+ let data;
108
+ if (this.multiple) {
109
+ if (this.multipleSelection.length === 0)
110
+ return this.$message.error("请选择");
111
+ data = this.multipleSelection;
112
+ } else {
113
+ if (this.currentRow.monthId === "") {
114
+ return this.$message.error("请选择");
115
+ }
116
+ data = this.currentRow;
117
+ }
118
+ this.close();
119
+ this.setData(data);
120
+ },
121
+ handleSizeChange(val) {
122
+ this.currentPage = 1;
123
+ this.getTableData();
124
+ },
125
+ handleCurrentChange(val) {
126
+ this.currentPage = val;
127
+ this.getTableData();
128
+ },
129
+
130
+ handleSelectionChange(val) {
131
+ this.multipleSelection = val;
132
+ },
133
+ },
134
+ };
135
+ </script>
136
+
137
+ <style lang="less" scoped>
138
+ .attendanceCycle {
139
+ .header {
140
+ display: flex;
141
+ justify-content: space-between;
142
+ align-items: center;
143
+ margin-bottom: 10px;
144
+ .left {
145
+ display: flex;
146
+ align-items: center;
147
+ }
148
+ .right {
149
+ display: flex;
150
+ align-items: center;
151
+ }
152
+ }
153
+ .footer {
154
+ display: flex;
155
+ justify-content: space-between;
156
+ }
157
+ }
158
+ </style>
@@ -0,0 +1,147 @@
1
+ <template>
2
+ <div class="attendanceCycle" v-loading="loading">
3
+ <div class="header">
4
+ <div class="left">
5
+ <el-button size="mini" type="primary" @click="onSave">选择</el-button>
6
+ </div>
7
+ <div class="right">
8
+
9
+ </div>
10
+ </div>
11
+ <el-table
12
+ size="mini"
13
+ :data="tableData"
14
+ style="width: 100%"
15
+ border
16
+ @row-click="handleRowClick"
17
+ >
18
+ <!-- 单选框列 -->
19
+ <el-table-column width="50">
20
+ <template slot-scope="scope">
21
+ <el-radio
22
+ :value="currentRow.monthId"
23
+ :label="scope.row.monthId"
24
+ >&nbsp;</el-radio>
25
+ </template>
26
+ </el-table-column>
27
+ <el-table-column prop="monthId" label="表集合"></el-table-column>
28
+ <el-table-column prop="monthId" label="编码"></el-table-column>
29
+ <el-table-column prop="monthName" label="名称"></el-table-column>
30
+ <el-table-column prop="monthName" label="起始年度"></el-table-column>
31
+ <el-table-column prop="monthName" label="终止年度"></el-table-column>
32
+ <el-table-column prop="monthName" label="公共假日为工作日"></el-table-column>
33
+ </el-table>
34
+ <div class="footer">
35
+ <div class="left">
36
+
37
+ </div>
38
+ <div class="right">
39
+ <el-pagination
40
+ @size-change="handleSizeChange"
41
+ @current-change="handleCurrentChange"
42
+ :current-page="currentPage"
43
+ :page-sizes="[10, 20, 30, 100]"
44
+ :page-size="10"
45
+ layout="total, sizes, prev, pager, next"
46
+ :total="total"
47
+ >
48
+ </el-pagination>
49
+ </div>
50
+ </div>
51
+ </div>
52
+ </template>
53
+
54
+ <script>
55
+ import {
56
+ getOpenAttendanceCycleMonthListApi,
57
+ } from "../../employeeSchedulingManagement/data.js";
58
+
59
+ export default {
60
+ // 企业日历
61
+ props: {
62
+ close: {
63
+ type: Function,
64
+ default: () => {},
65
+ },
66
+ setData:{
67
+ type: Function,
68
+ default: () => {},
69
+ },
70
+ },
71
+
72
+ data() {
73
+ return {
74
+ loading: false,
75
+ tableData: [],
76
+ year: "2025",
77
+ options: [],
78
+ currentRow: {
79
+ monthId: "",
80
+ }, // 当前选中的行
81
+ currentPage: 1,
82
+ total: 11110,
83
+ };
84
+ },
85
+ mounted() {
86
+ this.loading = false;
87
+ this.getTableData();
88
+ },
89
+ methods: {
90
+ getTableData() {
91
+ this.loading = true;
92
+ getOpenAttendanceCycleMonthListApi(this.year).then((res) => {
93
+ this.tableData = res;
94
+ console.log(res, "res");
95
+ this.loading = false;
96
+ });
97
+ },
98
+
99
+ yearChange() {
100
+ this.getTableData();
101
+ },
102
+ handleRowClick(row) {
103
+ this.currentRow = row; // 点击行时更新选中状态
104
+ },
105
+ onSave() {
106
+ if (this.currentRow.monthId === "") {
107
+ return this.$message.error("请选择");
108
+ }
109
+ this.close();
110
+ this.setData(this.currentRow);
111
+ },
112
+ handleSizeChange(val) {
113
+ this.currentPage = 1;
114
+ this.getTableData();
115
+ },
116
+ handleCurrentChange(val) {
117
+ this.currentPage = val;
118
+ this.getTableData();
119
+ },
120
+
121
+
122
+ },
123
+ };
124
+ </script>
125
+
126
+ <style lang="less" scoped>
127
+ .attendanceCycle {
128
+ .header {
129
+ display: flex;
130
+ justify-content: space-between;
131
+ align-items: center;
132
+ margin-bottom: 10px;
133
+ .left {
134
+ display: flex;
135
+ align-items: center;
136
+ }
137
+ .right {
138
+ display: flex;
139
+ align-items: center;
140
+ }
141
+ }
142
+ .footer {
143
+ display: flex;
144
+ justify-content: space-between;
145
+ }
146
+ }
147
+ </style>