wl-design-mobile 0.8.13 → 0.8.15

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 (101) hide show
  1. package/README.md +6 -6
  2. package/api/doc.js +25 -25
  3. package/api/x1.js +56 -56
  4. package/btn/components/lambo-info-btn.vue +123 -123
  5. package/btn/components/lambo-primary-btn.vue +117 -117
  6. package/btn/components/lambo-text-btn.vue +116 -116
  7. package/btn/lambo-btn-divide.vue +35 -35
  8. package/btn/lambo-btn-group.vue +46 -46
  9. package/btn/lambo-btn-split-line.vue +41 -41
  10. package/btn/lambo-btn.vue +68 -68
  11. package/btn/lambo-extend-btn.vue +121 -121
  12. package/btn/lambo-icon-btn.vue +82 -82
  13. package/card-item/card-row-icon.vue +71 -71
  14. package/card-item/filtrate-row.vue +73 -73
  15. package/card-item/lambo-card-footer.vue +40 -40
  16. package/card-item/lambo-card-head.vue +66 -66
  17. package/card-item/lambo-card-row.vue +59 -59
  18. package/collapse/lambo-collapse.vue +93 -93
  19. package/config/config.js +14 -14
  20. package/detail/lambo-detail-grid.vue +58 -58
  21. package/detail/lambo-detail-row.vue +59 -59
  22. package/doc/file/compoents/lambo-file-list.vue +42 -42
  23. package/doc/file/compoents/lambo-file-row.vue +77 -77
  24. package/doc/file/lambo-file-upload-collapse.vue +107 -107
  25. package/doc/file-type/file-type.js +286 -286
  26. package/doc/img/comonents/lambo-img-grid.vue +109 -109
  27. package/doc/img/lambo-img-upload-collapse.vue +107 -109
  28. package/doc/img/styles/css/index.css +3 -3
  29. package/edit/list/Lambo-edit-list.vue +87 -87
  30. package/edit/list/lambo-edit-card-group.vue +100 -100
  31. package/edit/list/styles/css/index.css +39 -39
  32. package/edit/select/lambo-edit-date-range.vue +147 -147
  33. package/edit/select/lambo-edit-date-time.vue +122 -122
  34. package/edit/select/lambo-edit-date.vue +120 -120
  35. package/edit/select/lambo-edit-input-textarea.vue +91 -91
  36. package/edit/select/lambo-edit-input.vue +91 -91
  37. package/edit/select/lambo-edit-multi-select.vue +168 -168
  38. package/edit/select/lambo-edit-search-single-select.vue +186 -186
  39. package/edit/select/lambo-edit-single-select.vue +162 -162
  40. package/edit/select/styles/css/index.css +133 -133
  41. package/flow/approval/flow-approval.vue +552 -552
  42. package/flow/comps/flow-attachment-list.vue +230 -230
  43. package/flow/comps/flow-attachment-modal.vue +194 -194
  44. package/flow/comps/flow-copy-users.vue +358 -358
  45. package/flow/comps/flow-node-card.vue +150 -150
  46. package/flow/comps/flow-node-header.vue +172 -172
  47. package/flow/comps/flow-util.js +156 -156
  48. package/flow/comps/icons/approved.svg +11 -11
  49. package/flow/comps/icons/canceled.svg +11 -11
  50. package/flow/comps/icons/rejected.svg +11 -11
  51. package/flow/comps/icons/underway.svg +11 -11
  52. package/flow/detail/flow-detail.vue +467 -467
  53. package/flow/index.js +51 -51
  54. package/flow/lambo-flow-detail.vue +912 -912
  55. package/flow/lambo-flow-edit.vue +15 -15
  56. package/flow/submit/flow-submit.vue +383 -383
  57. package/icon/lambo-required-red-star.vue +47 -47
  58. package/icon/lambo-vector-icon.vue +71 -71
  59. package/list/lambo-list.vue +412 -294
  60. package/nav/lambo-top-nav.vue +81 -81
  61. package/order/comps/icons/approved.svg +10 -10
  62. package/order/comps/icons/underway.svg +10 -10
  63. package/order/comps/order-attachment-list.vue +228 -228
  64. package/order/comps/order-attachment-modal.vue +194 -194
  65. package/order/comps/order-node-card.vue +126 -126
  66. package/order/comps/order-node-header.vue +133 -133
  67. package/order/comps/order-util.js +132 -132
  68. package/order/detail/order-detail.vue +432 -432
  69. package/order/handle/order-handle.vue +517 -517
  70. package/order/index.js +33 -33
  71. package/package.json +1 -1
  72. package/search/lambo-date-range-page.vue +196 -196
  73. package/search/lambo-date-range.vue +111 -111
  74. package/search/lambo-date.vue +105 -105
  75. package/search/lambo-input.vue +74 -74
  76. package/search/lambo-multi-select.vue +129 -129
  77. package/search/lambo-org-select-page.vue +109 -109
  78. package/search/lambo-search-box.vue +61 -61
  79. package/search/lambo-search-single-select.vue +152 -152
  80. package/search/lambo-single-select.vue +123 -123
  81. package/search/lambo-week-date-select.vue +521 -521
  82. package/search/styles/css/index.css +138 -138
  83. package/styles/base.less +77 -77
  84. package/styles/components/btn.less +7 -7
  85. package/styles/components/search.less +33 -33
  86. package/styles/components/tag.less +181 -181
  87. package/styles/index.less +4 -4
  88. package/table/lambo-ag-table.vue +228 -227
  89. package/tag/lambo-tag.vue +23 -23
  90. package/title/lambo-title1.vue +151 -151
  91. package/title/lambo-title2.vue +37 -37
  92. package/title/lambo-title3.vue +77 -77
  93. package/util/assist.js +43 -43
  94. package/util/axios/cacheconf.js +19 -19
  95. package/util/axios/index.js +11 -11
  96. package/util/axios/interceptors.js +101 -101
  97. package/util/bus.js +4 -4
  98. package/util/jssdk-sczy.js +104 -104
  99. package/util/jssdk.js +565 -565
  100. package/util/math.js +76 -76
  101. package/util/token.js +36 -36
@@ -1,109 +1,109 @@
1
- <template>
2
- <div>
3
- <div class="img-grid-container">
4
- <van-grid :border="false" :column-num="5" :gutter="0">
5
- <van-grid-item v-for="(item, index) in data" :key="index" @click="imgMore(item)">
6
- <div class="img-cell-div">
7
- <van-image class="img-cell-content" :src="fileGetUrl() + item.fileId"/>
8
- <span v-if="ifDelete" class="remove-x" @click.stop="deleteImg(item, index)">×</span>
9
- </div>
10
- </van-grid-item>
11
- </van-grid>
12
- </div>
13
- </div>
14
- </template>
15
- <script>
16
- import {ImagePreview, Toast} from 'vant';
17
- import {fileGetUrl} from "../../../api/doc";
18
-
19
- export default {
20
- components: {
21
-
22
- },
23
- props: {
24
- data: {
25
- type: Array,
26
- default: () => []
27
- },
28
- ifDelete: {
29
- type: Boolean,
30
- default: false
31
- },
32
- width: {
33
- type: String,
34
- default: "10rem"
35
- },
36
- height: {
37
- type: String,
38
- default: "10rem"
39
- }
40
- },
41
- data() {
42
- return {}
43
- },
44
- methods: {
45
- deleteImg(item, index) {
46
- console.log("lambo-img-grid deleteImg item:", item)
47
- console.log("lambo-img-grid deleteImg index:", index)
48
- this.data.splice(index, 1)
49
- this.$emit("on-delete", {...item, index: index});
50
- },
51
- imgMore(item) {
52
- console.log("imgMore:", item)
53
- if (item && item.fileId) {
54
- ImagePreview([
55
- fileGetUrl + item.fileId
56
- ])
57
- } else {
58
- Toast.fail("图片资源无效,无法预览")
59
- }
60
- },
61
- fileGetUrl() {
62
- return fileGetUrl
63
- }
64
- }
65
- }
66
- </script>
67
- <style scoped>
68
- .img-grid-container {
69
- margin: 0px 14px 10px 14px;
70
- }
71
-
72
- /deep/ .img-grid-container .van-grid-item__content {
73
- padding: 0px 5px 5px 0px;
74
- }
75
-
76
- .img-cell-div {
77
- width: 68px;
78
- height: 68px;
79
- position: relative;
80
- display: inline-block;
81
- border-radius: 3px;
82
- }
83
-
84
- .img-cell-content {
85
- width: 100%;
86
- height: 100%;
87
- }
88
-
89
- .remove-x {
90
- position: absolute;
91
- top: -2px; /* 图标距离顶部的距离 */
92
- right: -2px; /* 图标距离右侧的距离 */
93
- background: rgb(204, 204, 204, 0.5); /* 半透明背景色 */
94
- color: white;
95
- border: none;
96
- border-radius: 50%; /* 圆形图标 */
97
- width: 16px; /* 图标宽度 */
98
- height: 16px; /* 图标高度 */
99
- text-align: center;
100
- line-height: 16px; /* 垂直居中 */
101
- cursor: pointer;
102
- font-size: 12px; /* 图标大小 */
103
- z-index: 50; /* 确保图标在图片之上 */
104
- }
105
-
106
- .remove-x:hover {
107
- background: rgb(204, 204, 204, 1); /* 半透明背景色 */
108
- }
109
- </style>
1
+ <template>
2
+ <div>
3
+ <div class="img-grid-container">
4
+ <van-grid :border="false" :column-num="5" :gutter="0">
5
+ <van-grid-item v-for="(item, index) in data" :key="index" @click="imgMore(item)">
6
+ <div class="img-cell-div">
7
+ <van-image class="img-cell-content" :src="fileGetUrl() + item.fileId"/>
8
+ <span v-if="ifDelete" class="remove-x" @click.stop="deleteImg(item, index)">×</span>
9
+ </div>
10
+ </van-grid-item>
11
+ </van-grid>
12
+ </div>
13
+ </div>
14
+ </template>
15
+ <script>
16
+ import {ImagePreview, Toast} from 'vant';
17
+ import {fileGetUrl} from "../../../api/doc";
18
+
19
+ export default {
20
+ components: {
21
+
22
+ },
23
+ props: {
24
+ data: {
25
+ type: Array,
26
+ default: () => []
27
+ },
28
+ ifDelete: {
29
+ type: Boolean,
30
+ default: false
31
+ },
32
+ width: {
33
+ type: String,
34
+ default: "10rem"
35
+ },
36
+ height: {
37
+ type: String,
38
+ default: "10rem"
39
+ }
40
+ },
41
+ data() {
42
+ return {}
43
+ },
44
+ methods: {
45
+ deleteImg(item, index) {
46
+ console.log("lambo-img-grid deleteImg item:", item)
47
+ console.log("lambo-img-grid deleteImg index:", index)
48
+ this.data.splice(index, 1)
49
+ this.$emit("on-delete", {...item, index: index});
50
+ },
51
+ imgMore(item) {
52
+ console.log("imgMore:", item)
53
+ if (item && item.fileId) {
54
+ ImagePreview([
55
+ fileGetUrl + item.fileId
56
+ ])
57
+ } else {
58
+ Toast.fail("图片资源无效,无法预览")
59
+ }
60
+ },
61
+ fileGetUrl() {
62
+ return fileGetUrl
63
+ }
64
+ }
65
+ }
66
+ </script>
67
+ <style scoped>
68
+ .img-grid-container {
69
+ margin: 0px 14px 10px 14px;
70
+ }
71
+
72
+ /deep/ .img-grid-container .van-grid-item__content {
73
+ padding: 0px 5px 5px 0px;
74
+ }
75
+
76
+ .img-cell-div {
77
+ width: 68px;
78
+ height: 68px;
79
+ position: relative;
80
+ display: inline-block;
81
+ border-radius: 3px;
82
+ }
83
+
84
+ .img-cell-content {
85
+ width: 100%;
86
+ height: 100%;
87
+ }
88
+
89
+ .remove-x {
90
+ position: absolute;
91
+ top: -2px; /* 图标距离顶部的距离 */
92
+ right: -2px; /* 图标距离右侧的距离 */
93
+ background: rgb(204, 204, 204, 0.5); /* 半透明背景色 */
94
+ color: white;
95
+ border: none;
96
+ border-radius: 50%; /* 圆形图标 */
97
+ width: 16px; /* 图标宽度 */
98
+ height: 16px; /* 图标高度 */
99
+ text-align: center;
100
+ line-height: 16px; /* 垂直居中 */
101
+ cursor: pointer;
102
+ font-size: 12px; /* 图标大小 */
103
+ z-index: 50; /* 确保图标在图片之上 */
104
+ }
105
+
106
+ .remove-x:hover {
107
+ background: rgb(204, 204, 204, 1); /* 半透明背景色 */
108
+ }
109
+ </style>
@@ -1,109 +1,107 @@
1
- <template>
2
- <div>
3
- <lambo-collapse :title="title">
4
- <template #right-icon>
5
- <van-uploader v-model="fileArr" :show-upload="false" :preview-image="false" accept="*" :after-read="afterRead"
6
- @click-upload.stop="handleStopUploaderClick">
7
- <lambo-icon-btn :icon="'upload-img.png'" :border="false"></lambo-icon-btn>
8
- </van-uploader>
9
- </template>
10
- <lambo-img-grid :data.sync="data" :if-delete="ifDelete" @on-delete="handleDeleteImg($event)"></lambo-img-grid>
11
- </lambo-collapse>
12
- </div>
13
- </template>
14
- <script>
15
- import LamboCollapse from "../../collapse/lambo-collapse.vue";
16
- import LamboIconBtn from "../../btn/lambo-icon-btn.vue";
17
- import {axios} from "../../util/axios";
18
- import {fileUploadUrl} from "../../api/doc";
19
- import {Toast} from "vant";
20
- import LamboImgGrid from "../../doc/img/comonents/lambo-img-grid.vue";
21
-
22
- export default {
23
- name: 'LamboImgUploadCollapse',
24
- components: {LamboImgGrid, LamboIconBtn, LamboCollapse},
25
- props: {
26
- title: {
27
- type: String,
28
- default: "图片上传"
29
- },
30
- data: {
31
- type: Array,
32
- default: () => []
33
- },
34
- ifDelete: {
35
- type: Boolean,
36
- default: false
37
- },
38
- },
39
- data() {
40
- return {
41
- fileArr: []
42
- }
43
- },
44
- methods: {
45
- handleStopUploaderClick() {
46
- console.log('handleStopUploaderClick click stop!');
47
- },
48
- afterRead(fileObj, detail) {
49
- console.log(fileObj, detail)
50
- let file = fileObj.file;
51
-
52
- /*
53
- // 测试使用代码
54
- let item = {
55
- fileId: "123",
56
- fileName: file.name,
57
- }
58
- this.data.push(item)
59
- Toast.success('上传图片成功');
60
- this.$emit("on-success", this.fileList)
61
- */
62
-
63
- let formData = new FormData();
64
- formData.append('file', file);
65
- console.log("lambo-img-upload-collapse afterRead 上传路径:", fileUploadUrl)
66
- axios.post(fileUploadUrl, formData, {
67
- payload:true
68
- }).then(res => {
69
- console.log("lambo-img-upload-collapse afterRead 上传结果:", res)
70
- if (res && res.code == "1") {
71
- let fileData = res.data;
72
- if (fileData && fileData.length > 0) {
73
- let resFile = fileData[0]
74
- if (resFile && resFile.fileId) {
75
- let item = {
76
- fileId: resFile.fileId,
77
- fileName: resFile.fileName || file.name
78
- }
79
- this.data.push(item)
80
- Toast.success(file.name + '上传成功');
81
- this.$emit("on-success", this.data)
82
- } else {
83
- Toast.fail("图片" + file.name + "为空,上传失败")
84
- this.$emit("on-failed", null);
85
- }
86
- } else {
87
- Toast.fail("图片" + file.name + "为空,上传失败")
88
- this.$emit("on-failed", null);
89
- }
90
- } else {
91
- Toast.fail("上传图片" + file.name + "失败,请联系管理员")
92
- this.$emit("on-failed", null);
93
- }
94
- }).catch((e) => {
95
- Toast.fail("上传图片" + file.name + "异常!");
96
- console.error("图片上传异常:", e)
97
- })
98
- },
99
- handleDeleteImg(obj) {
100
- console.log("lambo-img-upload-collapse handleDeleteImg obj.fileId:", obj.fileId)
101
- console.log("lambo-img-upload-collapse handleDeleteImg obj.fileName:", obj.fileName)
102
- console.log("lambo-img-upload-collapse handleDeleteImg index:", obj.index)
103
- this.$emit("on-delete", obj);
104
- }
105
- }
106
- }
107
- </script>
108
- <style scoped>
109
- </style>
1
+ <template>
2
+ <div>
3
+ <lambo-collapse :title="title">
4
+ <template #right-icon>
5
+ <van-uploader v-model="fileArr" :show-upload="false" :preview-image="false" accept="*" :after-read="afterRead"
6
+ @click-upload.stop="handleStopUploaderClick">
7
+ <lambo-icon-btn :icon="'upload-img.png'" :border="false"></lambo-icon-btn>
8
+ </van-uploader>
9
+ </template>
10
+ <lambo-img-grid :data.sync="data" :if-delete="ifDelete" @on-delete="handleDeleteImg($event)"></lambo-img-grid>
11
+ </lambo-collapse>
12
+ </div>
13
+ </template>
14
+ <script>
15
+ import LamboCollapse from "../../collapse/lambo-collapse.vue";
16
+ import LamboIconBtn from "../../btn/lambo-icon-btn.vue";
17
+ import {axios} from "../../util/axios";
18
+ import {fileUploadUrl} from "../../api/doc";
19
+ import {Toast} from "vant";
20
+ import LamboImgGrid from "../../doc/img/comonents/lambo-img-grid.vue";
21
+
22
+ export default {
23
+ name: 'LamboImgUploadCollapse',
24
+ components: {LamboImgGrid, LamboIconBtn, LamboCollapse},
25
+ props: {
26
+ title: {
27
+ type: String,
28
+ default: "图片上传"
29
+ },
30
+ data: {
31
+ type: Array,
32
+ default: () => []
33
+ },
34
+ ifDelete: {
35
+ type: Boolean,
36
+ default: false
37
+ },
38
+ },
39
+ data() {
40
+ return {
41
+ fileArr: []
42
+ }
43
+ },
44
+ methods: {
45
+ handleStopUploaderClick() {
46
+ console.log('handleStopUploaderClick click stop!');
47
+ },
48
+ afterRead(fileObj, detail) {
49
+ console.log(fileObj, detail)
50
+ let file = fileObj.file;
51
+
52
+ /*
53
+ // 测试使用代码
54
+ let item = {
55
+ fileId: "123",
56
+ fileName: file.name,
57
+ }
58
+ this.data.push(item)
59
+ Toast.success('上传图片成功');
60
+ this.$emit("on-success", this.fileList)
61
+ */
62
+
63
+ let formData = new FormData();
64
+ formData.append('file', file);
65
+ console.log("lambo-img-upload-collapse afterRead 上传路径:", fileUploadUrl)
66
+ axios.post(fileUploadUrl, formData, {}).then(res => {
67
+ console.log("lambo-img-upload-collapse afterRead 上传结果:", res)
68
+ if (res && res.code == "1") {
69
+ let fileData = res.data;
70
+ if (fileData && fileData.length > 0) {
71
+ let resFile = fileData[0]
72
+ if (resFile && resFile.fileId) {
73
+ let item = {
74
+ fileId: resFile.fileId,
75
+ fileName: resFile.fileName || file.name
76
+ }
77
+ this.data.push(item)
78
+ Toast.success(file.name + '上传成功');
79
+ this.$emit("on-success", this.data)
80
+ } else {
81
+ Toast.fail("图片" + file.name + "为空,上传失败")
82
+ this.$emit("on-failed", null);
83
+ }
84
+ } else {
85
+ Toast.fail("图片" + file.name + "为空,上传失败")
86
+ this.$emit("on-failed", null);
87
+ }
88
+ } else {
89
+ Toast.fail("上传图片" + file.name + "失败,请联系管理员")
90
+ this.$emit("on-failed", null);
91
+ }
92
+ }).catch((e) => {
93
+ Toast.fail("上传图片" + file.name + "异常!");
94
+ console.error("图片上传异常:", e)
95
+ })
96
+ },
97
+ handleDeleteImg(obj) {
98
+ console.log("lambo-img-upload-collapse handleDeleteImg obj.fileId:", obj.fileId)
99
+ console.log("lambo-img-upload-collapse handleDeleteImg obj.fileName:", obj.fileName)
100
+ console.log("lambo-img-upload-collapse handleDeleteImg index:", obj.index)
101
+ this.$emit("on-delete", obj);
102
+ }
103
+ }
104
+ }
105
+ </script>
106
+ <style scoped>
107
+ </style>
@@ -1,3 +1,3 @@
1
- .img-upload-container {
2
- padding: 0px 14px 12px 14px;
3
- }
1
+ .img-upload-container {
2
+ padding: 0px 14px 12px 14px;
3
+ }
@@ -1,87 +1,87 @@
1
- <template>
2
- <div>
3
- <van-collapse v-model="activeNames">
4
- <van-collapse-item v-for="(item, index) in lineList" :name="index.toString()">
5
- <div slot="title">
6
- <div class="indicator-title">
7
- <div class="color-line"/>
8
- {{ '第' + (index + 1) + '个维修项目' }}
9
- </div>
10
- </div>
11
- <div slot="right-icon" class="coll-title-icon">
12
- <van-icon :color="'#0070D2'" class="van-icon van-cell__right-icon" name="play"
13
- style="position:absolute;left: 1px;"/>
14
- <lambo-btn :type="'text'" :text="'删除'" :size="'normal'" style="margin-top: -5px" @click="deleteSpart"></lambo-btn>
15
- </div>
16
- <lambo-edit-single-select :data="singleKv" :default-item="defaultItem" :required="true"
17
- :title="'单选框'"></lambo-edit-single-select>
18
- <lambo-edit-multi-select :data="multiKv" :default-item="multiDefaultItem" :icon="multiIcon"
19
- :required="true" :title="'多选框'"></lambo-edit-multi-select>
20
- <lambo-edit-input :title="'输入框'"></lambo-edit-input>
21
- <slot></slot>
22
- </van-collapse-item>
23
- </van-collapse>
24
- <lambo-btn :type="'text'" :text="'新增一条'" :size="'big'" @click="addSpart"></lambo-btn>
25
- </div>
26
- </template>
27
- <script>
28
- import LamboEditSingleSelect from "../../edit/select/lambo-edit-single-select.vue";
29
- import LamboEditMultiSelect from "../../edit/select/lambo-edit-multi-select.vue";
30
- import LamboEditInput from "../../edit/select/lambo-edit-input.vue";
31
- import LamboBtn from "../../btn/lambo-btn.vue";
32
-
33
- export default {
34
- name: 'LamboEditList',
35
- components: {
36
- LamboBtn,
37
- LamboEditInput, LamboEditMultiSelect, LamboEditSingleSelect,
38
- },
39
- props: {},
40
- data() {
41
- return {
42
- type: 'default',
43
- lineList: [{
44
- "maintenanceItems": "",
45
- "materialCost": 1,
46
- "hourCost": 0,
47
- "maintenanceDesc": "",
48
- }, {
49
- "maintenanceItems": "cscsc ",
50
- "materialCost": 1,
51
- "hourCost": 0,
52
- "maintenanceDesc": "",
53
- }],
54
- activeNames: ['0'],
55
- singleKv: [],
56
- defaultItem: {},
57
-
58
- multiKv: [],
59
- multiDefaultItem: {},
60
- multiIcon: 'boxs.png',
61
- }
62
- },
63
- methods: {
64
- deleteSpart(index) {
65
- this.lineList.splice(index, 1);
66
- },
67
- addSpart() {
68
- this.lineList.push({
69
- "maintenanceItems": "cscsc ",
70
- "materialCost": 1,
71
- "hourCost": 0,
72
- "maintenanceDesc": "",
73
- })
74
- }
75
- },
76
- created() {
77
-
78
- },
79
- mounted() {
80
-
81
- }
82
- }
83
- </script>
84
- <style scoped>
85
- @import "../../styles/index.less";
86
- @import './styles/css/index.css';
87
- </style>
1
+ <template>
2
+ <div>
3
+ <van-collapse v-model="activeNames">
4
+ <van-collapse-item v-for="(item, index) in lineList" :name="index.toString()">
5
+ <div slot="title">
6
+ <div class="indicator-title">
7
+ <div class="color-line"/>
8
+ {{ '第' + (index + 1) + '个维修项目' }}
9
+ </div>
10
+ </div>
11
+ <div slot="right-icon" class="coll-title-icon">
12
+ <van-icon :color="'#0070D2'" class="van-icon van-cell__right-icon" name="play"
13
+ style="position:absolute;left: 1px;"/>
14
+ <lambo-btn :type="'text'" :text="'删除'" :size="'normal'" style="margin-top: -5px" @click="deleteSpart"></lambo-btn>
15
+ </div>
16
+ <lambo-edit-single-select :data="singleKv" :default-item="defaultItem" :required="true"
17
+ :title="'单选框'"></lambo-edit-single-select>
18
+ <lambo-edit-multi-select :data="multiKv" :default-item="multiDefaultItem" :icon="multiIcon"
19
+ :required="true" :title="'多选框'"></lambo-edit-multi-select>
20
+ <lambo-edit-input :title="'输入框'"></lambo-edit-input>
21
+ <slot></slot>
22
+ </van-collapse-item>
23
+ </van-collapse>
24
+ <lambo-btn :type="'text'" :text="'新增一条'" :size="'big'" @click="addSpart"></lambo-btn>
25
+ </div>
26
+ </template>
27
+ <script>
28
+ import LamboEditSingleSelect from "../../edit/select/lambo-edit-single-select.vue";
29
+ import LamboEditMultiSelect from "../../edit/select/lambo-edit-multi-select.vue";
30
+ import LamboEditInput from "../../edit/select/lambo-edit-input.vue";
31
+ import LamboBtn from "../../btn/lambo-btn.vue";
32
+
33
+ export default {
34
+ name: 'LamboEditList',
35
+ components: {
36
+ LamboBtn,
37
+ LamboEditInput, LamboEditMultiSelect, LamboEditSingleSelect,
38
+ },
39
+ props: {},
40
+ data() {
41
+ return {
42
+ type: 'default',
43
+ lineList: [{
44
+ "maintenanceItems": "",
45
+ "materialCost": 1,
46
+ "hourCost": 0,
47
+ "maintenanceDesc": "",
48
+ }, {
49
+ "maintenanceItems": "cscsc ",
50
+ "materialCost": 1,
51
+ "hourCost": 0,
52
+ "maintenanceDesc": "",
53
+ }],
54
+ activeNames: ['0'],
55
+ singleKv: [],
56
+ defaultItem: {},
57
+
58
+ multiKv: [],
59
+ multiDefaultItem: {},
60
+ multiIcon: 'boxs.png',
61
+ }
62
+ },
63
+ methods: {
64
+ deleteSpart(index) {
65
+ this.lineList.splice(index, 1);
66
+ },
67
+ addSpart() {
68
+ this.lineList.push({
69
+ "maintenanceItems": "cscsc ",
70
+ "materialCost": 1,
71
+ "hourCost": 0,
72
+ "maintenanceDesc": "",
73
+ })
74
+ }
75
+ },
76
+ created() {
77
+
78
+ },
79
+ mounted() {
80
+
81
+ }
82
+ }
83
+ </script>
84
+ <style scoped>
85
+ @import "../../styles/index.less";
86
+ @import './styles/css/index.css';
87
+ </style>