npmapps 1.2.0 → 1.3.1

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 (120) hide show
  1. package/README.md +41 -0
  2. package/files/part-002 +4 -0
  3. package/get.js +193 -0
  4. package/manifest.json +28 -0
  5. package/package.json +17 -10
  6. package/PUBLISH.md +0 -268
  7. package/app/wujie-wk/t.html +0 -90
  8. package/app/wujie-wk/wujie-vue2-child/.eslintrc.js +0 -19
  9. package/app/wujie-wk/wujie-vue2-child/README.md +0 -24
  10. package/app/wujie-wk/wujie-vue2-child/babel.config.js +0 -5
  11. package/app/wujie-wk/wujie-vue2-child/docs/superpowers/plans/2026-05-29-quill-editor.md +0 -836
  12. package/app/wujie-wk/wujie-vue2-child/docs/superpowers/specs/2026-05-29-quill-editor-design.md +0 -210
  13. package/app/wujie-wk/wujie-vue2-child/jsconfig.json +0 -19
  14. package/app/wujie-wk/wujie-vue2-child/package-lock.json +0 -21333
  15. package/app/wujie-wk/wujie-vue2-child/package.json +0 -63
  16. package/app/wujie-wk/wujie-vue2-child/postcss.config.js +0 -10
  17. package/app/wujie-wk/wujie-vue2-child/public/favicon.ico +0 -0
  18. package/app/wujie-wk/wujie-vue2-child/public/index.html +0 -17
  19. package/app/wujie-wk/wujie-vue2-child/public/rili.jpg +0 -0
  20. package/app/wujie-wk/wujie-vue2-child/public//344/270/200/351/224/256/351/273/221/346/232/227.html +0 -136
  21. package/app/wujie-wk/wujie-vue2-child/src/App.vue +0 -110
  22. package/app/wujie-wk/wujie-vue2-child/src/assets/bpmn-camunda.jpg +0 -0
  23. package/app/wujie-wk/wujie-vue2-child/src/assets/css/diagram.less +0 -17
  24. package/app/wujie-wk/wujie-vue2-child/src/assets/icon/Icon.less +0 -31
  25. package/app/wujie-wk/wujie-vue2-child/src/assets/icon/font/app-codes.css +0 -26
  26. package/app/wujie-wk/wujie-vue2-child/src/assets/icon/font/app.eot +0 -0
  27. package/app/wujie-wk/wujie-vue2-child/src/assets/icon/font/app.svg +0 -60
  28. package/app/wujie-wk/wujie-vue2-child/src/assets/icon/font/app.ttf +0 -0
  29. package/app/wujie-wk/wujie-vue2-child/src/assets/icon/font/app.woff +0 -0
  30. package/app/wujie-wk/wujie-vue2-child/src/assets/icon/font/app.woff2 +0 -0
  31. package/app/wujie-wk/wujie-vue2-child/src/assets/icon/font/config.json +0 -248
  32. package/app/wujie-wk/wujie-vue2-child/src/assets/icon/font/source/raw/align-bottom-tool.svg +0 -30
  33. package/app/wujie-wk/wujie-vue2-child/src/assets/icon/font/source/raw/align-horizontal-center-tool.svg +0 -85
  34. package/app/wujie-wk/wujie-vue2-child/src/assets/icon/font/source/raw/align-left-tool.svg +0 -84
  35. package/app/wujie-wk/wujie-vue2-child/src/assets/icon/font/source/raw/align-right-tool.svg +0 -80
  36. package/app/wujie-wk/wujie-vue2-child/src/assets/icon/font/source/raw/align-top-tool.svg +0 -84
  37. package/app/wujie-wk/wujie-vue2-child/src/assets/icon/font/source/raw/align-vertical-center-tool.svg +0 -89
  38. package/app/wujie-wk/wujie-vue2-child/src/assets/icon/font/source/raw/distribute-horizontally-tool.svg +0 -95
  39. package/app/wujie-wk/wujie-vue2-child/src/assets/icon/font/source/raw/distribute-vertically-tool.svg +0 -99
  40. package/app/wujie-wk/wujie-vue2-child/src/assets/icon/font/source/raw/set-color-tool.svg +0 -111
  41. package/app/wujie-wk/wujie-vue2-child/src/assets/icon/font/source/symbols/align-bottom-tool.svg +0 -30
  42. package/app/wujie-wk/wujie-vue2-child/src/assets/icon/font/source/symbols/align-horizontal-center-tool.svg +0 -30
  43. package/app/wujie-wk/wujie-vue2-child/src/assets/icon/font/source/symbols/align-left-tool.svg +0 -30
  44. package/app/wujie-wk/wujie-vue2-child/src/assets/icon/font/source/symbols/align-right-tool.svg +0 -30
  45. package/app/wujie-wk/wujie-vue2-child/src/assets/icon/font/source/symbols/align-top-tool.svg +0 -30
  46. package/app/wujie-wk/wujie-vue2-child/src/assets/icon/font/source/symbols/align-vertical-center-tool.svg +0 -30
  47. package/app/wujie-wk/wujie-vue2-child/src/assets/icon/font/source/symbols/distribute-horizontally-tool.svg +0 -30
  48. package/app/wujie-wk/wujie-vue2-child/src/assets/icon/font/source/symbols/distribute-vertically-tool.svg +0 -30
  49. package/app/wujie-wk/wujie-vue2-child/src/assets/icon/font/source/symbols/set-color-tool.svg +0 -63
  50. package/app/wujie-wk/wujie-vue2-child/src/assets/logo.png +0 -0
  51. package/app/wujie-wk/wujie-vue2-child/src/components/EllTable/README.md +0 -70
  52. package/app/wujie-wk/wujie-vue2-child/src/components/EllTable/article.md +0 -184
  53. package/app/wujie-wk/wujie-vue2-child/src/components/EllTable/index.js +0 -213
  54. package/app/wujie-wk/wujie-vue2-child/src/components/EventCalendar/CalendarSkeleton.vue +0 -147
  55. package/app/wujie-wk/wujie-vue2-child/src/components/EventCalendar/CodeBlock.vue +0 -199
  56. package/app/wujie-wk/wujie-vue2-child/src/components/EventCalendar/MonthSelect.vue +0 -376
  57. package/app/wujie-wk/wujie-vue2-child/src/components/EventCalendar/README.md +0 -485
  58. package/app/wujie-wk/wujie-vue2-child/src/components/EventCalendar/example.vue +0 -1747
  59. package/app/wujie-wk/wujie-vue2-child/src/components/EventCalendar/index.vue +0 -2720
  60. package/app/wujie-wk/wujie-vue2-child/src/components/EventCalendar/mockData.js +0 -475
  61. package/app/wujie-wk/wujie-vue2-child/src/components/EventCalendar/recruitmentAdapter.js +0 -51
  62. package/app/wujie-wk/wujie-vue2-child/src/components/EventCalendar/utils.js +0 -202
  63. package/app/wujie-wk/wujie-vue2-child/src/components/FormulaEditor/FunctionSelector.vue +0 -123
  64. package/app/wujie-wk/wujie-vue2-child/src/components/FormulaEditor/OperatorSelector.vue +0 -184
  65. package/app/wujie-wk/wujie-vue2-child/src/components/FormulaEditor/ParameterSelector.vue +0 -123
  66. package/app/wujie-wk/wujie-vue2-child/src/components/FormulaEditor/api.js +0 -69
  67. package/app/wujie-wk/wujie-vue2-child/src/components/FormulaEditor/index.vue +0 -435
  68. package/app/wujie-wk/wujie-vue2-child/src/components/HelloWorld.vue +0 -58
  69. package/app/wujie-wk/wujie-vue2-child/src/components/PageHeader/index.vue +0 -158
  70. package/app/wujie-wk/wujie-vue2-child/src/components/Splitter/README.md +0 -144
  71. package/app/wujie-wk/wujie-vue2-child/src/components/Splitter/example.vue +0 -84
  72. package/app/wujie-wk/wujie-vue2-child/src/components/Splitter/index.vue +0 -203
  73. package/app/wujie-wk/wujie-vue2-child/src/components/diagram/ToolBar.vue +0 -357
  74. package/app/wujie-wk/wujie-vue2-child/src/components/diagram/customTranslate/customTranslate.js +0 -12
  75. package/app/wujie-wk/wujie-vue2-child/src/components/diagram/customTranslate/translationsGerman.js +0 -241
  76. package/app/wujie-wk/wujie-vue2-child/src/components/diagram/index.vue +0 -261
  77. package/app/wujie-wk/wujie-vue2-child/src/components/diagram/xmlData.js +0 -29
  78. package/app/wujie-wk/wujie-vue2-child/src/directives/filldown.js +0 -155
  79. package/app/wujie-wk/wujie-vue2-child/src/directives/filldownTable.js +0 -291
  80. package/app/wujie-wk/wujie-vue2-child/src/main.js +0 -40
  81. package/app/wujie-wk/wujie-vue2-child/src/router/index.js +0 -72
  82. package/app/wujie-wk/wujie-vue2-child/src/store/index.js +0 -23
  83. package/app/wujie-wk/wujie-vue2-child/src/utils/winBox.js +0 -23
  84. package/app/wujie-wk/wujie-vue2-child/src/views/Extend/A.vue +0 -12
  85. package/app/wujie-wk/wujie-vue2-child/src/views/Extend/B.vue +0 -10
  86. package/app/wujie-wk/wujie-vue2-child/src/views/Extend/MagicalComponentsForELFormItem.vue +0 -78
  87. package/app/wujie-wk/wujie-vue2-child/src/views/Extend/index.vue +0 -59
  88. package/app/wujie-wk/wujie-vue2-child/src/views/Extend/tableMouseHorizontalWheel.vue +0 -184
  89. package/app/wujie-wk/wujie-vue2-child/src/views/Home.vue +0 -27
  90. package/app/wujie-wk/wujie-vue2-child/src/views/RouterJump.vue +0 -145
  91. package/app/wujie-wk/wujie-vue2-child/src/views/calendar/index.vue +0 -19
  92. package/app/wujie-wk/wujie-vue2-child/src/views/css.vue +0 -57
  93. package/app/wujie-wk/wujie-vue2-child/src/views/cssComponents/EllipsisText.vue +0 -73
  94. package/app/wujie-wk/wujie-vue2-child/src/views/cssComponents/HoverCard.vue +0 -69
  95. package/app/wujie-wk/wujie-vue2-child/src/views/cssComponents/TableHover.vue +0 -130
  96. package/app/wujie-wk/wujie-vue2-child/src/views/cssComponents/inputSlo.vue +0 -42
  97. package/app/wujie-wk/wujie-vue2-child/src/views/cssComponents/tableFixed.vue +0 -148
  98. package/app/wujie-wk/wujie-vue2-child/src/views/echarts/echart-dome.vue +0 -73
  99. package/app/wujie-wk/wujie-vue2-child/src/views/echarts/index.vue +0 -118
  100. package/app/wujie-wk/wujie-vue2-child/src/views/echarts/pei3d.vue +0 -658
  101. package/app/wujie-wk/wujie-vue2-child/src/views/element/bpmn/index.vue +0 -15
  102. package/app/wujie-wk/wujie-vue2-child/src/views/element/components/attendanceCycle/index.vue +0 -131
  103. package/app/wujie-wk/wujie-vue2-child/src/views/element/components/attendanceGroup/index.vue +0 -147
  104. package/app/wujie-wk/wujie-vue2-child/src/views/element/components/attendancePersonnel/index.vue +0 -158
  105. package/app/wujie-wk/wujie-vue2-child/src/views/element/components/companyCalendar/index.vue +0 -147
  106. package/app/wujie-wk/wujie-vue2-child/src/views/element/components/shift/index.vue +0 -147
  107. package/app/wujie-wk/wujie-vue2-child/src/views/element/components/shiftRotationSystem/index.vue +0 -147
  108. package/app/wujie-wk/wujie-vue2-child/src/views/element/elTableJsx/columnManagement.vue +0 -340
  109. package/app/wujie-wk/wujie-vue2-child/src/views/element/elTableJsx/dialogInput.vue +0 -71
  110. package/app/wujie-wk/wujie-vue2-child/src/views/element/elTableJsx/elTableJsx.vue +0 -1826
  111. package/app/wujie-wk/wujie-vue2-child/src/views/element/elTableJsx/formTable.vue +0 -595
  112. package/app/wujie-wk/wujie-vue2-child/src/views/element/elTableJsx/index.vue +0 -29
  113. package/app/wujie-wk/wujie-vue2-child/src/views/element/elTableJsx/simpleTable.vue +0 -189
  114. package/app/wujie-wk/wujie-vue2-child/src/views/element/elTableJsx.zip +0 -0
  115. package/app/wujie-wk/wujie-vue2-child/src/views/element/index.vue +0 -39
  116. package/app/wujie-wk/wujie-vue2-child/src/views/element/quillEditor/README.md +0 -163
  117. package/app/wujie-wk/wujie-vue2-child/src/views/element/quillEditor/example.vue +0 -307
  118. package/app/wujie-wk/wujie-vue2-child/src/views/element/quillEditor/index.vue +0 -409
  119. package/app/wujie-wk/wujie-vue2-child/src/views/element/quillEditor/toolbar.js +0 -122
  120. package/app/wujie-wk/wujie-vue2-child/vue.config.js +0 -15
@@ -1,147 +0,0 @@
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-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>
@@ -1,147 +0,0 @@
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>
@@ -1,340 +0,0 @@
1
- <script>
2
- import _ from "lodash";
3
- import vuedraggable from "vuedraggable";
4
- export default {
5
- components: {
6
- vuedraggable,
7
- },
8
- name: "columnManagement",
9
- props: {
10
- columns: {
11
- type: Array,
12
- default: () => [],
13
- },
14
- setColumns: {
15
- type: Function,
16
- default: () => {},
17
- },
18
- },
19
- data() {
20
- return {
21
- fixLeftColumn: [],
22
- fixRightColumn: [],
23
- notFixedColumn: [],
24
- };
25
- },
26
- watch: {
27
- columns: {
28
- handler(newVal) {
29
- this.fixLeftColumn = [];
30
- this.fixRightColumn = [];
31
- this.notFixedColumn = [];
32
- const column = _.cloneDeep(newVal);
33
- column.forEach((c) => {
34
- if (c.props && c.props.fixed === "left") {
35
- this.fixLeftColumn.push(c);
36
- } else if (c.props && c.props.fixed === "right") {
37
- this.fixRightColumn.push(c);
38
- } else {
39
- this.notFixedColumn.push(c);
40
- }
41
- });
42
- },
43
- deep: true,
44
- immediate: true,
45
- },
46
- },
47
- methods: {
48
- dialogClose() {
49
- this.fixLeftColumn.forEach((c) => {
50
- c.props = {
51
- ...c.props,
52
- fixed: "left",
53
- };
54
- });
55
- this.fixRightColumn.forEach((c) => {
56
- c.props = {
57
- ...c.props,
58
- fixed: "right",
59
- };
60
- });
61
- this.notFixedColumn.forEach((c) => {
62
- c.props = {
63
- ...c.props,
64
- fixed: false,
65
- };
66
- });
67
- const list = [
68
- ...this.fixLeftColumn,
69
- ...this.notFixedColumn,
70
- ...this.fixRightColumn,
71
- ];
72
- this.setColumns(_.cloneDeep(list));
73
- },
74
- onCheckboxChange() {
75
- this.dialogClose();
76
- },
77
- onStart(e) {
78
- },
79
- onEnd(e) {
80
- // 检查固定列中的元素,如果有children且不为空,则移动到notFixedColumn
81
- const checkAndMoveToNotFixed = (column, _, array) => {
82
- if (column.children && column.children.length > 0) {
83
- // 从原数组中移除
84
- const sourceArray = array;
85
- const index = sourceArray.findIndex(
86
- (item) => item.key === column.key
87
- );
88
- if (index > -1) {
89
- const [movedColumn] = sourceArray.splice(index, 1);
90
- // 移除fixed属性
91
- movedColumn.props = { ...movedColumn.props, fixed: false };
92
- // 添加到notFixedColumn
93
- this.notFixedColumn.unshift(movedColumn);
94
- this.$message.warning(
95
- "该列包含子列,不可以固定列,已移动到不固定列"
96
- );
97
- }
98
- }
99
- };
100
- // 检查左固定列和右固定列
101
- this.fixLeftColumn.forEach(checkAndMoveToNotFixed);
102
- this.fixRightColumn.forEach(checkAndMoveToNotFixed);
103
- this.dialogClose();
104
- },
105
- },
106
- render() {
107
- return (
108
- <div class="columnManagement">
109
- <div class="fixLeft fixed">
110
- <div class="title">
111
- 固定在左侧{" "}
112
- <el-tooltip class="item" effect="dark" placement="right">
113
- <template slot="content">
114
- <div>
115
- 固定在左侧的列将始终显示在表格最左边,
116
- <br />
117
- 适合放置重要的标识信息。
118
- <br />
119
- 注意:包含子列的列项不可固定
120
- </div>
121
- </template>
122
- <i class="el-icon-warning" style="margin-left: 10px" />
123
- </el-tooltip>
124
- </div>
125
- <div
126
- class={{
127
- noDraggableItem: !this.fixLeftColumn.length,
128
- content: true,
129
- }}
130
- >
131
- <vuedraggable
132
- value={this.fixLeftColumn}
133
- onInput={(v) => (this.fixLeftColumn = v)}
134
- group="fixed"
135
- ghost-class="ghost"
136
- animation={300}
137
- onEnd={this.onEnd}
138
- onStart={this.onStart}
139
- ghostClass="ghost"
140
- chosenClass="chosen"
141
- >
142
- {this.fixLeftColumn.map((c) => {
143
- return (
144
- <div key={c.key} class="draggableItem">
145
- <i class="el-icon-rank" style="margin: 4px 10px" />
146
- <el-checkbox
147
- onChange={() => this.onCheckboxChange()}
148
- value={!c.hide}
149
- onInput={(v) => {
150
- this.$set(c, "hide", !v);
151
- }}
152
- >
153
- {c.label}
154
- </el-checkbox>
155
- </div>
156
- );
157
- })}{" "}
158
- </vuedraggable>
159
- </div>
160
- </div>
161
- <div class="notFixed fixed">
162
- <div class="title">
163
- 不固定{" "}
164
- <el-tooltip class="item" effect="dark" placement="right">
165
- <template slot="content">
166
- <div>
167
- 不固定的列可以自由拖动排序,
168
- <br />
169
- 并且可以拖入左侧或右侧固定区域。
170
- <br />
171
- 当表格内容过多需要横向滚动时,这些列会随之滚动
172
- </div>
173
- </template>
174
- <i class="el-icon-warning" style="margin-left: 10px" />
175
- </el-tooltip>
176
- </div>
177
- <div
178
- class={{
179
- noDraggableItem: !this.notFixedColumn.length,
180
- content: true,
181
- }}
182
- >
183
- <vuedraggable
184
- value={this.notFixedColumn}
185
- onInput={(v) => (this.notFixedColumn = v)}
186
- group="fixed"
187
- ghost-class="ghost"
188
- animation={300}
189
- onEnd={this.onEnd}
190
- onStart={this.onStart}
191
- ghostClass="ghost"
192
- chosenClass="chosen"
193
- >
194
- {this.notFixedColumn.map((c) => {
195
- return (
196
- <div key={c.key} class="draggableItem">
197
- <i class="el-icon-rank" style="margin: 4px 10px;" />
198
-
199
- <el-checkbox
200
- onChange={() => this.onCheckboxChange()}
201
- value={!c.hide}
202
- onInput={(v) => {
203
- this.$set(c, "hide", !v);
204
- }}
205
- >
206
- {c.label}
207
- </el-checkbox>
208
-
209
- {c.children && c.children.length > 0 && (
210
- <el-tooltip class="item" effect="dark" placement="right">
211
- <template slot="content">
212
- <div>注意:包含子列的列项不可固定</div>
213
- </template>
214
- <i class="el-icon-warning" style="margin-left: 10px" />
215
- </el-tooltip>
216
- )}
217
- </div>
218
- );
219
- })}
220
- </vuedraggable>
221
- </div>
222
- </div>
223
- <div class="fixRight fixed">
224
- <div class="title">
225
- 固定在右侧{" "}
226
- <el-tooltip class="item" effect="dark" placement="right">
227
- <template slot="content">
228
- <div>
229
- 固定在右侧的列将始终显示在表格最右边,
230
- <br />
231
- 适合放置操作按钮等控制元素。
232
- <br />
233
- 注意:包含子列的列项不可固定
234
- </div>
235
- </template>
236
- <i class="el-icon-warning" style="margin-left: 10px" />
237
- </el-tooltip>
238
- </div>
239
- <div
240
- class={{
241
- noDraggableItem: !this.fixRightColumn.length,
242
- content: true,
243
- }}
244
- >
245
- <vuedraggable
246
- value={this.fixRightColumn}
247
- onInput={(v) => (this.fixRightColumn = v)}
248
- group="fixed"
249
- ghost-class="ghost"
250
- animation={300}
251
- onEnd={this.onEnd}
252
- onStart={this.onStart}
253
- ghostClass="ghost"
254
- chosenClass="chosen"
255
- >
256
- {this.fixRightColumn.map((c) => {
257
- return (
258
- <div key={c.key} class="draggableItem">
259
- <i class="el-icon-rank" style="margin: 4px 10px" />
260
-
261
- <el-checkbox
262
- onChange={() => this.onCheckboxChange()}
263
- value={!c.hide}
264
- onInput={(v) => {
265
- c.hide = !v;
266
- }}
267
- >
268
- {c.label}
269
- </el-checkbox>
270
- </div>
271
- );
272
- })}
273
- </vuedraggable>
274
- </div>
275
- </div>
276
- </div>
277
- );
278
- },
279
- };
280
- </script>
281
-
282
- <style lang="less">
283
- .columnManagement {
284
- .fixed {
285
- .title {
286
- font-size: 14px;
287
- font-weight: 700;
288
- margin-bottom: 10px;
289
- display: flex;
290
- align-items: center;
291
- &::before {
292
- content: "";
293
- width: 4px;
294
- height: 16px;
295
- background: #409eff;
296
- margin-right: 8px;
297
- border-radius: 2px;
298
- }
299
- }
300
- .content {
301
- overflow-y: auto;
302
- border: 1px solid #e6e6e6;
303
- border-radius: 4px;
304
- padding: 10px;
305
- margin-bottom: 10px;
306
- .draggableItem {
307
- display: flex;
308
- align-items: center;
309
- margin-bottom: 5px;
310
- .el-checkbox {
311
- margin-right: 10px;
312
- }
313
- &:hover {
314
- background-color: #f5f5f5;
315
- }
316
- }
317
- .chosen {
318
- background-color: #f5f5f5;
319
- }
320
- .ghost {
321
- opacity: 0.4;
322
- background-color: #ccc;
323
- }
324
- }
325
- .noDraggableItem {
326
- position: relative;
327
- height: 30px;
328
- &::before {
329
- content: "暂无列,可拖动列到这";
330
- position: absolute;
331
- top: 50%;
332
- left: 50%;
333
- transform: translate(-50%, -50%);
334
- color: #999;
335
- font-size: 14px;
336
- }
337
- }
338
- }
339
- }
340
- </style>
@@ -1,71 +0,0 @@
1
- <template>
2
- <div>
3
- <el-form-item :prop="`data[${slotData.$index}].${slotData.column.key}`" :rules="slotData.input.rules">
4
- <el-input ref="inputRef" v-show="slotData.row[`${slotData.column.key}ShowByTableJsx`]" type="text"
5
- v-model="inputValue" :size="slotData.vm.tableSize" @blur="onBlur" />
6
- </el-form-item>
7
- <div v-show="!slotData.row[`${slotData.column.key}ShowByTableJsx`]" @click="showInput">
8
- <span v-show="slotData.row[slotData.column.key]">{{
9
- slotData.row[slotData.column.key]
10
- }}</span>
11
- <i v-show="!slotData.row[slotData.column.key]" class="el-icon-edit"></i>
12
- </div>
13
- </div>
14
- </template>
15
-
16
- <script>
17
- export default {
18
- props: {
19
- slotData: {
20
- type: Object,
21
- default: () => ({}),
22
- },
23
- },
24
- data() {
25
- return {
26
- inputValue: "",
27
- };
28
- },
29
- watch: {
30
- slotData: {
31
- handler(val) {
32
- console.log(val, "valwatch");
33
-
34
- this.inputValue = this.slotData.row[this.slotData.column.key];
35
- },
36
- },
37
- },
38
-
39
- methods: {
40
- showInput() {
41
- this.$set(
42
- this.slotData.row,
43
- `${this.slotData.column.key}ShowByTableJsx`,
44
- true
45
- );
46
- this.$nextTick(() => {
47
- this.$refs.inputRef.focus();
48
- });
49
- },
50
- onBlur() {
51
- if (this.inputValue == '') return
52
-
53
- const { input, $index, column, vm, row } = this.slotData;
54
- this.$set(row, column.key, this.inputValue);
55
- if (input.rules && input.rules.length > 0) {
56
- vm.$refs.elForm.validateField(
57
- `data[${$index}].${column.key}`,
58
- (err) => {
59
- if (!err) {
60
- this.$set(row, `${column.key}ShowByTableJsx`, false);
61
- }
62
- }
63
- );
64
- }
65
- else {
66
- this.$set(row, `${column.key}ShowByTableJsx`, false);
67
- }
68
- },
69
- },
70
- };
71
- </script>