iv-npm 1.1.4 → 1.1.5
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.
- package/package.json +1 -1
- package/packages/ui/README.md +89 -7
- package/packages/ui/dist/api/api.config.d.ts +4 -0
- package/packages/ui/dist/business-ui/component/IVMrpLineDropdown.d.ts +43 -0
- package/packages/ui/dist/business-ui/index.d.ts +2 -1
- package/packages/ui/dist/index.cjs.js +195 -22
- package/packages/ui/dist/index.d.ts +2 -2
- package/packages/ui/dist/index.esm.js +193 -21
- package/packages/ui/dist/index.umd.js +195 -22
- package/packages/ui/dist/index.umd.js.map +1 -1
package/package.json
CHANGED
package/packages/ui/README.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
ui工具包
|
|
4
4
|
|
|
5
|
-
##
|
|
5
|
+
## 快速开始
|
|
6
6
|
|
|
7
7
|
> npm i iv-npm
|
|
8
8
|
|
|
@@ -26,6 +26,8 @@ app.use(ivUi)
|
|
|
26
26
|
|
|
27
27
|
## 组织架构/部门下拉
|
|
28
28
|
|
|
29
|
+
> <IVMrpOrgDropdown />
|
|
30
|
+
|
|
29
31
|
- 组件API
|
|
30
32
|
|
|
31
33
|
```js
|
|
@@ -60,10 +62,90 @@ app.use(ivUi)
|
|
|
60
62
|
</script>
|
|
61
63
|
```
|
|
62
64
|
|
|
63
|
-
| props | describe | type
|
|
64
|
-
| ------------- | ------------------------------ |
|
|
65
|
-
| v-model:value | 绑定值 | any
|
|
66
|
-
| params | GET请求参数(响应式,值改变会触发接口) | object
|
|
67
|
-
| data | POST请求参数(响应式,值改变会触发接口) | object
|
|
68
|
-
| replaceFields | 指定value,key,label, children字段名 | ReplaceFields |
|
|
65
|
+
| props | describe | type |
|
|
66
|
+
| ------------- | ------------------------------ | ------------------- |
|
|
67
|
+
| v-model:value | 绑定值 | any |
|
|
68
|
+
| params | GET请求参数(响应式,值改变会触发接口) | object |
|
|
69
|
+
| data | POST请求参数(响应式,值改变会触发接口) | object |
|
|
70
|
+
| replaceFields | 指定value,key,label, children字段名 | ReplaceFields,存在默认值 |
|
|
71
|
+
|
|
72
|
+
## 生产基地下拉
|
|
73
|
+
|
|
74
|
+
> <IVMrpProdBaseDropdown/>
|
|
75
|
+
|
|
76
|
+
- 组件API
|
|
77
|
+
|
|
78
|
+
```js
|
|
79
|
+
{
|
|
80
|
+
method: "GET",
|
|
81
|
+
url:'/api/basis-management/production-base/all',
|
|
82
|
+
}
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
|
|
86
|
+
|
|
87
|
+
|
|
88
|
+
- 示例
|
|
89
|
+
|
|
90
|
+
```vue
|
|
91
|
+
<template>
|
|
92
|
+
<IVMrpProdBaseDropdown
|
|
93
|
+
v-model:value="Detail.organizationIds"
|
|
94
|
+
:params="{type:1}"
|
|
95
|
+
:data="{name:123}"
|
|
96
|
+
:fieldNames="{
|
|
97
|
+
label: "displayName",
|
|
98
|
+
value: "id",
|
|
99
|
+
}"
|
|
100
|
+
/>
|
|
101
|
+
</template>
|
|
102
|
+
<script setup lang="ts">
|
|
103
|
+
import { IVMrpProdBaseDropdown } from "iv-npm/packages/ui";
|
|
104
|
+
</script>
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
| props | describe | type |
|
|
108
|
+
| ------------- | ---------------------- | ---------------- |
|
|
109
|
+
| v-model:value | 绑定值 | any |
|
|
110
|
+
| params | GET请求参数(响应式,值改变会触发接口) | object |
|
|
111
|
+
| data | POST请求参数(响应式,值改变会触发接口) | object |
|
|
112
|
+
| fieldNames | 指定value,label字段名 | FieldNames,存在默认值 |
|
|
113
|
+
|
|
114
|
+
## 条线下拉
|
|
115
|
+
|
|
116
|
+
> <IVMrpLineDropdown/>
|
|
117
|
+
|
|
118
|
+
- 组件API
|
|
119
|
+
|
|
120
|
+
```js
|
|
121
|
+
{
|
|
122
|
+
method: "GET",
|
|
123
|
+
url:'/api/basis-management/production-base/all',
|
|
124
|
+
}
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
|
|
128
|
+
|
|
129
|
+
|
|
130
|
+
- 示例
|
|
131
|
+
|
|
132
|
+
```vue
|
|
133
|
+
<template>
|
|
134
|
+
<IVMrpLineDropdown
|
|
135
|
+
v-model:value="Detail.lineIds"
|
|
136
|
+
:params="{type:1}"
|
|
137
|
+
:data="{name:123}"
|
|
138
|
+
:fieldNames="{
|
|
139
|
+
label: "displayName",
|
|
140
|
+
value: "id",
|
|
141
|
+
}"
|
|
142
|
+
/>
|
|
143
|
+
</template>
|
|
144
|
+
<script setup lang="ts">
|
|
145
|
+
import { IVMrpLineDropdown } from "iv-npm/packages/ui";
|
|
146
|
+
</script>
|
|
147
|
+
```
|
|
69
148
|
|
|
149
|
+
| props |
|
|
150
|
+
| -------- |
|
|
151
|
+
| 参考生产基地下拉 |
|
|
@@ -8,6 +8,10 @@ declare const API_OPTION: {
|
|
|
8
8
|
url: string;
|
|
9
9
|
option: any;
|
|
10
10
|
};
|
|
11
|
+
getIVMrpLineDropdown: {
|
|
12
|
+
url: string;
|
|
13
|
+
option: any;
|
|
14
|
+
};
|
|
11
15
|
};
|
|
12
16
|
export declare const formatHTTP: (fetch: any) => Promise<any>;
|
|
13
17
|
export declare const formatUrl: (base: string, api: string, params: object) => string;
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 组件定义-------------------------------------
|
|
3
|
+
* */
|
|
4
|
+
declare const _default: import("vue").DefineComponent<{
|
|
5
|
+
value: {
|
|
6
|
+
type: null;
|
|
7
|
+
required: true;
|
|
8
|
+
};
|
|
9
|
+
params: {
|
|
10
|
+
type: ObjectConstructor;
|
|
11
|
+
required: false;
|
|
12
|
+
};
|
|
13
|
+
data: {
|
|
14
|
+
type: ObjectConstructor;
|
|
15
|
+
required: false;
|
|
16
|
+
};
|
|
17
|
+
fieldNames: {
|
|
18
|
+
type: null;
|
|
19
|
+
required: false;
|
|
20
|
+
};
|
|
21
|
+
}, (_ctx: any, _cache: any) => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
|
|
22
|
+
[key: string]: any;
|
|
23
|
+
}>, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "update:value"[], "update:value", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
24
|
+
value: {
|
|
25
|
+
type: null;
|
|
26
|
+
required: true;
|
|
27
|
+
};
|
|
28
|
+
params: {
|
|
29
|
+
type: ObjectConstructor;
|
|
30
|
+
required: false;
|
|
31
|
+
};
|
|
32
|
+
data: {
|
|
33
|
+
type: ObjectConstructor;
|
|
34
|
+
required: false;
|
|
35
|
+
};
|
|
36
|
+
fieldNames: {
|
|
37
|
+
type: null;
|
|
38
|
+
required: false;
|
|
39
|
+
};
|
|
40
|
+
}>> & {
|
|
41
|
+
"onUpdate:value"?: ((...args: any[]) => any) | undefined;
|
|
42
|
+
}, {}>;
|
|
43
|
+
export default _default;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
import IVMrpOrgDropdown from "./component/IVMrpOrgDropdown.vue";
|
|
2
2
|
import IVMrpProdBaseDropdown from "./component/IVMrpProdBaseDropdown.vue";
|
|
3
|
-
|
|
3
|
+
import IVMrpLineDropdown from "./component/IVMrpLineDropdown.vue";
|
|
4
|
+
export { IVMrpOrgDropdown, IVMrpProdBaseDropdown, IVMrpLineDropdown };
|
|
@@ -4,7 +4,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
4
4
|
|
|
5
5
|
var vue = require('vue');
|
|
6
6
|
|
|
7
|
-
var _hoisted_1$
|
|
7
|
+
var _hoisted_1$3 = /*#__PURE__*/vue.createTextVNode("npm包");
|
|
8
8
|
/**
|
|
9
9
|
* show:Boolean 是否显示弹窗 v-model:show="Visible"
|
|
10
10
|
*
|
|
@@ -19,7 +19,7 @@ var _hoisted_1$2 = /*#__PURE__*/vue.createTextVNode("npm包");
|
|
|
19
19
|
*
|
|
20
20
|
* */
|
|
21
21
|
|
|
22
|
-
var script$
|
|
22
|
+
var script$3 = /*#__PURE__*/vue.defineComponent({
|
|
23
23
|
__name: 'IVMrpModal',
|
|
24
24
|
props: {
|
|
25
25
|
show: {
|
|
@@ -59,7 +59,7 @@ var script$2 = /*#__PURE__*/vue.defineComponent({
|
|
|
59
59
|
}, {
|
|
60
60
|
title: vue.withCtx(function () {
|
|
61
61
|
return [vue.renderSlot(_ctx.$slots, "title", {}, function () {
|
|
62
|
-
return [_hoisted_1$
|
|
62
|
+
return [_hoisted_1$3];
|
|
63
63
|
})];
|
|
64
64
|
}),
|
|
65
65
|
closeIcon: vue.withCtx(function () {
|
|
@@ -80,7 +80,7 @@ var script$2 = /*#__PURE__*/vue.defineComponent({
|
|
|
80
80
|
}
|
|
81
81
|
});
|
|
82
82
|
|
|
83
|
-
script$
|
|
83
|
+
script$3.__file = "src/function-ui/component/IVMrpModal.vue";
|
|
84
84
|
|
|
85
85
|
function ownKeys(object, enumerableOnly) {
|
|
86
86
|
var keys = Object.keys(object);
|
|
@@ -563,6 +563,12 @@ var API_OPTION = {
|
|
|
563
563
|
option: _objectSpread2({
|
|
564
564
|
method: "GET"
|
|
565
565
|
}, DEFIND_OPTION)
|
|
566
|
+
},
|
|
567
|
+
getIVMrpLineDropdown: {
|
|
568
|
+
url: "/api/basis-management/line/all",
|
|
569
|
+
option: _objectSpread2({
|
|
570
|
+
method: "GET"
|
|
571
|
+
}, DEFIND_OPTION)
|
|
566
572
|
}
|
|
567
573
|
};
|
|
568
574
|
var formatHTTP = function formatHTTP(fetch) {
|
|
@@ -590,7 +596,7 @@ var formatUrl = function formatUrl(base, api, params) {
|
|
|
590
596
|
return base + api + "?" + urlTemparr.join("&");
|
|
591
597
|
};
|
|
592
598
|
|
|
593
|
-
var _hoisted_1$
|
|
599
|
+
var _hoisted_1$2 = /*#__PURE__*/vue.createElementVNode("div", {
|
|
594
600
|
"class": "text-[#0000006D] text-[14px]"
|
|
595
601
|
}, "所属组织", -1
|
|
596
602
|
/* HOISTED */
|
|
@@ -599,7 +605,7 @@ var _hoisted_1$1 = /*#__PURE__*/vue.createElementVNode("div", {
|
|
|
599
605
|
* 组件定义-------------------------------------
|
|
600
606
|
* */
|
|
601
607
|
|
|
602
|
-
var script$
|
|
608
|
+
var script$2 = /*#__PURE__*/vue.defineComponent({
|
|
603
609
|
__name: 'IVMrpOrgDropdown',
|
|
604
610
|
props: {
|
|
605
611
|
value: {
|
|
@@ -725,10 +731,10 @@ var script$1 = /*#__PURE__*/vue.defineComponent({
|
|
|
725
731
|
}]
|
|
726
732
|
}, {
|
|
727
733
|
label: vue.withCtx(function () {
|
|
728
|
-
return [_hoisted_1$
|
|
734
|
+
return [_hoisted_1$2];
|
|
729
735
|
}),
|
|
730
736
|
"default": vue.withCtx(function () {
|
|
731
|
-
return [vue.createVNode(_component_a_tree_select,
|
|
737
|
+
return [vue.createVNode(_component_a_tree_select, {
|
|
732
738
|
value: vue.unref(inputV),
|
|
733
739
|
"onUpdate:value": _cache[0] || (_cache[0] = function ($event) {
|
|
734
740
|
return vue.isRef(inputV) ? inputV.value = $event : null;
|
|
@@ -744,8 +750,8 @@ var script$1 = /*#__PURE__*/vue.defineComponent({
|
|
|
744
750
|
"width": "300px"
|
|
745
751
|
},
|
|
746
752
|
replaceFields: replaceFields.value
|
|
747
|
-
}
|
|
748
|
-
/*
|
|
753
|
+
}, null, 8
|
|
754
|
+
/* PROPS */
|
|
749
755
|
, ["value", "tree-data", "getPopupContainer", "replaceFields"])];
|
|
750
756
|
}),
|
|
751
757
|
_: 1
|
|
@@ -756,9 +762,9 @@ var script$1 = /*#__PURE__*/vue.defineComponent({
|
|
|
756
762
|
}
|
|
757
763
|
});
|
|
758
764
|
|
|
759
|
-
script$
|
|
765
|
+
script$2.__file = "src/business-ui/component/IVMrpOrgDropdown.vue";
|
|
760
766
|
|
|
761
|
-
var _hoisted_1 = /*#__PURE__*/vue.createElementVNode("div", {
|
|
767
|
+
var _hoisted_1$1 = /*#__PURE__*/vue.createElementVNode("div", {
|
|
762
768
|
"class": "text-[#0000006D] text-[14px]"
|
|
763
769
|
}, "所属基地", -1
|
|
764
770
|
/* HOISTED */
|
|
@@ -767,7 +773,7 @@ var _hoisted_1 = /*#__PURE__*/vue.createElementVNode("div", {
|
|
|
767
773
|
* 组件定义-------------------------------------
|
|
768
774
|
* */
|
|
769
775
|
|
|
770
|
-
var script = /*#__PURE__*/vue.defineComponent({
|
|
776
|
+
var script$1 = /*#__PURE__*/vue.defineComponent({
|
|
771
777
|
__name: 'IVMrpProdBaseDropdown',
|
|
772
778
|
props: {
|
|
773
779
|
value: {
|
|
@@ -886,12 +892,178 @@ var script = /*#__PURE__*/vue.defineComponent({
|
|
|
886
892
|
required: true,
|
|
887
893
|
message: '请选择所属基地'
|
|
888
894
|
}]
|
|
895
|
+
}, {
|
|
896
|
+
label: vue.withCtx(function () {
|
|
897
|
+
return [_hoisted_1$1];
|
|
898
|
+
}),
|
|
899
|
+
"default": vue.withCtx(function () {
|
|
900
|
+
return [vue.createVNode(_component_a_select, {
|
|
901
|
+
getPopupContainer: function getPopupContainer(triggerNode) {
|
|
902
|
+
return triggerNode.parentNode;
|
|
903
|
+
},
|
|
904
|
+
value: vue.unref(inputV),
|
|
905
|
+
"onUpdate:value": _cache[0] || (_cache[0] = function ($event) {
|
|
906
|
+
return vue.isRef(inputV) ? inputV.value = $event : null;
|
|
907
|
+
}),
|
|
908
|
+
mode: "multiple",
|
|
909
|
+
style: {
|
|
910
|
+
"width": "100%"
|
|
911
|
+
},
|
|
912
|
+
placeholder: "请选择",
|
|
913
|
+
options: dataV.value,
|
|
914
|
+
fieldNames: fieldNames.value
|
|
915
|
+
}, null, 8
|
|
916
|
+
/* PROPS */
|
|
917
|
+
, ["getPopupContainer", "value", "options", "fieldNames"])];
|
|
918
|
+
}),
|
|
919
|
+
_: 1
|
|
920
|
+
/* STABLE */
|
|
921
|
+
|
|
922
|
+
});
|
|
923
|
+
};
|
|
924
|
+
}
|
|
925
|
+
});
|
|
926
|
+
|
|
927
|
+
script$1.__file = "src/business-ui/component/IVMrpProdBaseDropdown.vue";
|
|
928
|
+
|
|
929
|
+
var _hoisted_1 = /*#__PURE__*/vue.createElementVNode("div", {
|
|
930
|
+
"class": "text-[#0000006D] text-[14px]"
|
|
931
|
+
}, "所属条线", -1
|
|
932
|
+
/* HOISTED */
|
|
933
|
+
);
|
|
934
|
+
/**
|
|
935
|
+
* 组件定义-------------------------------------
|
|
936
|
+
* */
|
|
937
|
+
|
|
938
|
+
var script = /*#__PURE__*/vue.defineComponent({
|
|
939
|
+
__name: 'IVMrpLineDropdown',
|
|
940
|
+
props: {
|
|
941
|
+
value: {
|
|
942
|
+
type: null,
|
|
943
|
+
required: true
|
|
944
|
+
},
|
|
945
|
+
params: {
|
|
946
|
+
type: Object,
|
|
947
|
+
required: false
|
|
948
|
+
},
|
|
949
|
+
data: {
|
|
950
|
+
type: Object,
|
|
951
|
+
required: false
|
|
952
|
+
},
|
|
953
|
+
fieldNames: {
|
|
954
|
+
type: null,
|
|
955
|
+
required: false
|
|
956
|
+
}
|
|
957
|
+
},
|
|
958
|
+
emits: ["update:value"],
|
|
959
|
+
setup: function setup(__props, _ref) {
|
|
960
|
+
var emit = _ref.emit;
|
|
961
|
+
|
|
962
|
+
var _a;
|
|
963
|
+
|
|
964
|
+
var props = __props;
|
|
965
|
+
/**
|
|
966
|
+
* 获取数据-------------------------------------
|
|
967
|
+
* */
|
|
968
|
+
|
|
969
|
+
var dataV = vue.ref();
|
|
970
|
+
|
|
971
|
+
var getData = /*#__PURE__*/function () {
|
|
972
|
+
var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
|
|
973
|
+
var _option,
|
|
974
|
+
_a,
|
|
975
|
+
_yield$formatHTTP,
|
|
976
|
+
items,
|
|
977
|
+
_args = arguments;
|
|
978
|
+
|
|
979
|
+
return _regeneratorRuntime().wrap(function _callee$(_context) {
|
|
980
|
+
while (1) {
|
|
981
|
+
switch (_context.prev = _context.next) {
|
|
982
|
+
case 0:
|
|
983
|
+
_option = _args.length > 0 && _args[0] !== undefined ? _args[0] : {};
|
|
984
|
+
_context.next = 3;
|
|
985
|
+
return formatHTTP(fetch(formatUrl(BASE_URL, API_OPTION.getIVMrpLineDropdown.url, _option.params), assign({
|
|
986
|
+
data: (_a = _option.data) !== null && _a !== void 0 ? _a : null
|
|
987
|
+
}, API_OPTION.getIVMrpLineDropdown.option)));
|
|
988
|
+
|
|
989
|
+
case 3:
|
|
990
|
+
_yield$formatHTTP = _context.sent;
|
|
991
|
+
items = _yield$formatHTTP.items;
|
|
992
|
+
dataV.value = items;
|
|
993
|
+
|
|
994
|
+
case 6:
|
|
995
|
+
case "end":
|
|
996
|
+
return _context.stop();
|
|
997
|
+
}
|
|
998
|
+
}
|
|
999
|
+
}, _callee);
|
|
1000
|
+
}));
|
|
1001
|
+
|
|
1002
|
+
return function getData() {
|
|
1003
|
+
return _ref2.apply(this, arguments);
|
|
1004
|
+
};
|
|
1005
|
+
}();
|
|
1006
|
+
/**
|
|
1007
|
+
* 默认参数-------------------------------------
|
|
1008
|
+
* */
|
|
1009
|
+
|
|
1010
|
+
|
|
1011
|
+
var fieldNames = vue.ref((_a = props.fieldNames) !== null && _a !== void 0 ? _a : {
|
|
1012
|
+
label: "name",
|
|
1013
|
+
value: "id"
|
|
1014
|
+
});
|
|
1015
|
+
var inputV = vue.computed({
|
|
1016
|
+
get: function get() {
|
|
1017
|
+
return props.value;
|
|
1018
|
+
},
|
|
1019
|
+
set: function set(value) {
|
|
1020
|
+
emit("update:value", value);
|
|
1021
|
+
}
|
|
1022
|
+
});
|
|
1023
|
+
/**
|
|
1024
|
+
* 侦听器-------------------------------------
|
|
1025
|
+
* */
|
|
1026
|
+
|
|
1027
|
+
vue.watchEffect( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2() {
|
|
1028
|
+
var _a, _b;
|
|
1029
|
+
|
|
1030
|
+
return _regeneratorRuntime().wrap(function _callee2$(_context2) {
|
|
1031
|
+
while (1) {
|
|
1032
|
+
switch (_context2.prev = _context2.next) {
|
|
1033
|
+
case 0:
|
|
1034
|
+
// 由于打包问题,侦听器一定要在最后,否则找不到getData方法
|
|
1035
|
+
getData({
|
|
1036
|
+
params: (_a = props.params) !== null && _a !== void 0 ? _a : null,
|
|
1037
|
+
data: (_b = props.data) !== null && _b !== void 0 ? _b : null
|
|
1038
|
+
});
|
|
1039
|
+
|
|
1040
|
+
case 1:
|
|
1041
|
+
case "end":
|
|
1042
|
+
return _context2.stop();
|
|
1043
|
+
}
|
|
1044
|
+
}
|
|
1045
|
+
}, _callee2);
|
|
1046
|
+
})));
|
|
1047
|
+
return function (_ctx, _cache) {
|
|
1048
|
+
var _component_a_select = vue.resolveComponent("a-select");
|
|
1049
|
+
|
|
1050
|
+
var _component_a_form_item = vue.resolveComponent("a-form-item");
|
|
1051
|
+
|
|
1052
|
+
return vue.openBlock(), vue.createBlock(_component_a_form_item, {
|
|
1053
|
+
name: "lineIds",
|
|
1054
|
+
"wrapper-col": {
|
|
1055
|
+
span: 8
|
|
1056
|
+
},
|
|
1057
|
+
rules: [{
|
|
1058
|
+
required: true,
|
|
1059
|
+
message: '请选择所属条线'
|
|
1060
|
+
}]
|
|
889
1061
|
}, {
|
|
890
1062
|
label: vue.withCtx(function () {
|
|
891
1063
|
return [_hoisted_1];
|
|
892
1064
|
}),
|
|
893
1065
|
"default": vue.withCtx(function () {
|
|
894
|
-
return [vue.createVNode(_component_a_select,
|
|
1066
|
+
return [vue.createVNode(_component_a_select, {
|
|
895
1067
|
getPopupContainer: function getPopupContainer(triggerNode) {
|
|
896
1068
|
return triggerNode.parentNode;
|
|
897
1069
|
},
|
|
@@ -906,8 +1078,8 @@ var script = /*#__PURE__*/vue.defineComponent({
|
|
|
906
1078
|
placeholder: "请选择",
|
|
907
1079
|
options: dataV.value,
|
|
908
1080
|
fieldNames: fieldNames.value
|
|
909
|
-
}
|
|
910
|
-
/*
|
|
1081
|
+
}, null, 8
|
|
1082
|
+
/* PROPS */
|
|
911
1083
|
, ["getPopupContainer", "value", "options", "fieldNames"])];
|
|
912
1084
|
}),
|
|
913
1085
|
_: 1
|
|
@@ -918,14 +1090,14 @@ var script = /*#__PURE__*/vue.defineComponent({
|
|
|
918
1090
|
}
|
|
919
1091
|
});
|
|
920
1092
|
|
|
921
|
-
script.__file = "src/business-ui/component/
|
|
1093
|
+
script.__file = "src/business-ui/component/IVMrpLineDropdown.vue";
|
|
922
1094
|
|
|
923
1095
|
/*
|
|
924
1096
|
* @Author: Mr.Cong Wei
|
|
925
1097
|
* @Date: 2022-08-08 18:47:06
|
|
926
|
-
* @LastEditTime: 2022-08-10
|
|
1098
|
+
* @LastEditTime: 2022-08-10 17:17:22
|
|
927
1099
|
*/
|
|
928
|
-
var components = [script$2, script$1, script];
|
|
1100
|
+
var components = [script$3, script$2, script$1, script];
|
|
929
1101
|
installComponents(); // 单独引用
|
|
930
1102
|
|
|
931
1103
|
function installComponents() {
|
|
@@ -947,7 +1119,8 @@ var cAll = {
|
|
|
947
1119
|
install: install
|
|
948
1120
|
};
|
|
949
1121
|
|
|
950
|
-
exports.
|
|
951
|
-
exports.
|
|
952
|
-
exports.
|
|
1122
|
+
exports.IVMrpLineDropdown = script;
|
|
1123
|
+
exports.IVMrpModal = script$3;
|
|
1124
|
+
exports.IVMrpOrgDropdown = script$2;
|
|
1125
|
+
exports.IVMrpProdBaseDropdown = script$1;
|
|
953
1126
|
exports["default"] = cAll;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { IVMrpModal } from "./function-ui/index";
|
|
2
|
-
import { IVMrpOrgDropdown, IVMrpProdBaseDropdown } from "./business-ui/index";
|
|
2
|
+
import { IVMrpOrgDropdown, IVMrpProdBaseDropdown, IVMrpLineDropdown } from "./business-ui/index";
|
|
3
3
|
import "./index.css";
|
|
4
4
|
declare const cAll: {
|
|
5
5
|
install: (app: any) => void;
|
|
6
6
|
};
|
|
7
|
-
export { IVMrpModal, IVMrpOrgDropdown, IVMrpProdBaseDropdown };
|
|
7
|
+
export { IVMrpModal, IVMrpOrgDropdown, IVMrpProdBaseDropdown, IVMrpLineDropdown, };
|
|
8
8
|
export default cAll;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { defineComponent, ref, resolveComponent, openBlock, createBlock, withCtx, renderSlot, createVNode, createTextVNode, computed, watchEffect,
|
|
1
|
+
import { defineComponent, ref, resolveComponent, openBlock, createBlock, withCtx, renderSlot, createVNode, createTextVNode, computed, watchEffect, unref, isRef, createElementVNode } from 'vue';
|
|
2
2
|
|
|
3
|
-
var _hoisted_1$
|
|
3
|
+
var _hoisted_1$3 = /*#__PURE__*/createTextVNode("npm包");
|
|
4
4
|
/**
|
|
5
5
|
* show:Boolean 是否显示弹窗 v-model:show="Visible"
|
|
6
6
|
*
|
|
@@ -15,7 +15,7 @@ var _hoisted_1$2 = /*#__PURE__*/createTextVNode("npm包");
|
|
|
15
15
|
*
|
|
16
16
|
* */
|
|
17
17
|
|
|
18
|
-
var script$
|
|
18
|
+
var script$3 = /*#__PURE__*/defineComponent({
|
|
19
19
|
__name: 'IVMrpModal',
|
|
20
20
|
props: {
|
|
21
21
|
show: {
|
|
@@ -55,7 +55,7 @@ var script$2 = /*#__PURE__*/defineComponent({
|
|
|
55
55
|
}, {
|
|
56
56
|
title: withCtx(function () {
|
|
57
57
|
return [renderSlot(_ctx.$slots, "title", {}, function () {
|
|
58
|
-
return [_hoisted_1$
|
|
58
|
+
return [_hoisted_1$3];
|
|
59
59
|
})];
|
|
60
60
|
}),
|
|
61
61
|
closeIcon: withCtx(function () {
|
|
@@ -76,7 +76,7 @@ var script$2 = /*#__PURE__*/defineComponent({
|
|
|
76
76
|
}
|
|
77
77
|
});
|
|
78
78
|
|
|
79
|
-
script$
|
|
79
|
+
script$3.__file = "src/function-ui/component/IVMrpModal.vue";
|
|
80
80
|
|
|
81
81
|
function ownKeys(object, enumerableOnly) {
|
|
82
82
|
var keys = Object.keys(object);
|
|
@@ -559,6 +559,12 @@ var API_OPTION = {
|
|
|
559
559
|
option: _objectSpread2({
|
|
560
560
|
method: "GET"
|
|
561
561
|
}, DEFIND_OPTION)
|
|
562
|
+
},
|
|
563
|
+
getIVMrpLineDropdown: {
|
|
564
|
+
url: "/api/basis-management/line/all",
|
|
565
|
+
option: _objectSpread2({
|
|
566
|
+
method: "GET"
|
|
567
|
+
}, DEFIND_OPTION)
|
|
562
568
|
}
|
|
563
569
|
};
|
|
564
570
|
var formatHTTP = function formatHTTP(fetch) {
|
|
@@ -586,7 +592,7 @@ var formatUrl = function formatUrl(base, api, params) {
|
|
|
586
592
|
return base + api + "?" + urlTemparr.join("&");
|
|
587
593
|
};
|
|
588
594
|
|
|
589
|
-
var _hoisted_1$
|
|
595
|
+
var _hoisted_1$2 = /*#__PURE__*/createElementVNode("div", {
|
|
590
596
|
"class": "text-[#0000006D] text-[14px]"
|
|
591
597
|
}, "所属组织", -1
|
|
592
598
|
/* HOISTED */
|
|
@@ -595,7 +601,7 @@ var _hoisted_1$1 = /*#__PURE__*/createElementVNode("div", {
|
|
|
595
601
|
* 组件定义-------------------------------------
|
|
596
602
|
* */
|
|
597
603
|
|
|
598
|
-
var script$
|
|
604
|
+
var script$2 = /*#__PURE__*/defineComponent({
|
|
599
605
|
__name: 'IVMrpOrgDropdown',
|
|
600
606
|
props: {
|
|
601
607
|
value: {
|
|
@@ -721,10 +727,10 @@ var script$1 = /*#__PURE__*/defineComponent({
|
|
|
721
727
|
}]
|
|
722
728
|
}, {
|
|
723
729
|
label: withCtx(function () {
|
|
724
|
-
return [_hoisted_1$
|
|
730
|
+
return [_hoisted_1$2];
|
|
725
731
|
}),
|
|
726
732
|
"default": withCtx(function () {
|
|
727
|
-
return [createVNode(_component_a_tree_select,
|
|
733
|
+
return [createVNode(_component_a_tree_select, {
|
|
728
734
|
value: unref(inputV),
|
|
729
735
|
"onUpdate:value": _cache[0] || (_cache[0] = function ($event) {
|
|
730
736
|
return isRef(inputV) ? inputV.value = $event : null;
|
|
@@ -740,8 +746,8 @@ var script$1 = /*#__PURE__*/defineComponent({
|
|
|
740
746
|
"width": "300px"
|
|
741
747
|
},
|
|
742
748
|
replaceFields: replaceFields.value
|
|
743
|
-
}
|
|
744
|
-
/*
|
|
749
|
+
}, null, 8
|
|
750
|
+
/* PROPS */
|
|
745
751
|
, ["value", "tree-data", "getPopupContainer", "replaceFields"])];
|
|
746
752
|
}),
|
|
747
753
|
_: 1
|
|
@@ -752,9 +758,9 @@ var script$1 = /*#__PURE__*/defineComponent({
|
|
|
752
758
|
}
|
|
753
759
|
});
|
|
754
760
|
|
|
755
|
-
script$
|
|
761
|
+
script$2.__file = "src/business-ui/component/IVMrpOrgDropdown.vue";
|
|
756
762
|
|
|
757
|
-
var _hoisted_1 = /*#__PURE__*/createElementVNode("div", {
|
|
763
|
+
var _hoisted_1$1 = /*#__PURE__*/createElementVNode("div", {
|
|
758
764
|
"class": "text-[#0000006D] text-[14px]"
|
|
759
765
|
}, "所属基地", -1
|
|
760
766
|
/* HOISTED */
|
|
@@ -763,7 +769,7 @@ var _hoisted_1 = /*#__PURE__*/createElementVNode("div", {
|
|
|
763
769
|
* 组件定义-------------------------------------
|
|
764
770
|
* */
|
|
765
771
|
|
|
766
|
-
var script = /*#__PURE__*/defineComponent({
|
|
772
|
+
var script$1 = /*#__PURE__*/defineComponent({
|
|
767
773
|
__name: 'IVMrpProdBaseDropdown',
|
|
768
774
|
props: {
|
|
769
775
|
value: {
|
|
@@ -882,12 +888,178 @@ var script = /*#__PURE__*/defineComponent({
|
|
|
882
888
|
required: true,
|
|
883
889
|
message: '请选择所属基地'
|
|
884
890
|
}]
|
|
891
|
+
}, {
|
|
892
|
+
label: withCtx(function () {
|
|
893
|
+
return [_hoisted_1$1];
|
|
894
|
+
}),
|
|
895
|
+
"default": withCtx(function () {
|
|
896
|
+
return [createVNode(_component_a_select, {
|
|
897
|
+
getPopupContainer: function getPopupContainer(triggerNode) {
|
|
898
|
+
return triggerNode.parentNode;
|
|
899
|
+
},
|
|
900
|
+
value: unref(inputV),
|
|
901
|
+
"onUpdate:value": _cache[0] || (_cache[0] = function ($event) {
|
|
902
|
+
return isRef(inputV) ? inputV.value = $event : null;
|
|
903
|
+
}),
|
|
904
|
+
mode: "multiple",
|
|
905
|
+
style: {
|
|
906
|
+
"width": "100%"
|
|
907
|
+
},
|
|
908
|
+
placeholder: "请选择",
|
|
909
|
+
options: dataV.value,
|
|
910
|
+
fieldNames: fieldNames.value
|
|
911
|
+
}, null, 8
|
|
912
|
+
/* PROPS */
|
|
913
|
+
, ["getPopupContainer", "value", "options", "fieldNames"])];
|
|
914
|
+
}),
|
|
915
|
+
_: 1
|
|
916
|
+
/* STABLE */
|
|
917
|
+
|
|
918
|
+
});
|
|
919
|
+
};
|
|
920
|
+
}
|
|
921
|
+
});
|
|
922
|
+
|
|
923
|
+
script$1.__file = "src/business-ui/component/IVMrpProdBaseDropdown.vue";
|
|
924
|
+
|
|
925
|
+
var _hoisted_1 = /*#__PURE__*/createElementVNode("div", {
|
|
926
|
+
"class": "text-[#0000006D] text-[14px]"
|
|
927
|
+
}, "所属条线", -1
|
|
928
|
+
/* HOISTED */
|
|
929
|
+
);
|
|
930
|
+
/**
|
|
931
|
+
* 组件定义-------------------------------------
|
|
932
|
+
* */
|
|
933
|
+
|
|
934
|
+
var script = /*#__PURE__*/defineComponent({
|
|
935
|
+
__name: 'IVMrpLineDropdown',
|
|
936
|
+
props: {
|
|
937
|
+
value: {
|
|
938
|
+
type: null,
|
|
939
|
+
required: true
|
|
940
|
+
},
|
|
941
|
+
params: {
|
|
942
|
+
type: Object,
|
|
943
|
+
required: false
|
|
944
|
+
},
|
|
945
|
+
data: {
|
|
946
|
+
type: Object,
|
|
947
|
+
required: false
|
|
948
|
+
},
|
|
949
|
+
fieldNames: {
|
|
950
|
+
type: null,
|
|
951
|
+
required: false
|
|
952
|
+
}
|
|
953
|
+
},
|
|
954
|
+
emits: ["update:value"],
|
|
955
|
+
setup: function setup(__props, _ref) {
|
|
956
|
+
var emit = _ref.emit;
|
|
957
|
+
|
|
958
|
+
var _a;
|
|
959
|
+
|
|
960
|
+
var props = __props;
|
|
961
|
+
/**
|
|
962
|
+
* 获取数据-------------------------------------
|
|
963
|
+
* */
|
|
964
|
+
|
|
965
|
+
var dataV = ref();
|
|
966
|
+
|
|
967
|
+
var getData = /*#__PURE__*/function () {
|
|
968
|
+
var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
|
|
969
|
+
var _option,
|
|
970
|
+
_a,
|
|
971
|
+
_yield$formatHTTP,
|
|
972
|
+
items,
|
|
973
|
+
_args = arguments;
|
|
974
|
+
|
|
975
|
+
return _regeneratorRuntime().wrap(function _callee$(_context) {
|
|
976
|
+
while (1) {
|
|
977
|
+
switch (_context.prev = _context.next) {
|
|
978
|
+
case 0:
|
|
979
|
+
_option = _args.length > 0 && _args[0] !== undefined ? _args[0] : {};
|
|
980
|
+
_context.next = 3;
|
|
981
|
+
return formatHTTP(fetch(formatUrl(BASE_URL, API_OPTION.getIVMrpLineDropdown.url, _option.params), assign({
|
|
982
|
+
data: (_a = _option.data) !== null && _a !== void 0 ? _a : null
|
|
983
|
+
}, API_OPTION.getIVMrpLineDropdown.option)));
|
|
984
|
+
|
|
985
|
+
case 3:
|
|
986
|
+
_yield$formatHTTP = _context.sent;
|
|
987
|
+
items = _yield$formatHTTP.items;
|
|
988
|
+
dataV.value = items;
|
|
989
|
+
|
|
990
|
+
case 6:
|
|
991
|
+
case "end":
|
|
992
|
+
return _context.stop();
|
|
993
|
+
}
|
|
994
|
+
}
|
|
995
|
+
}, _callee);
|
|
996
|
+
}));
|
|
997
|
+
|
|
998
|
+
return function getData() {
|
|
999
|
+
return _ref2.apply(this, arguments);
|
|
1000
|
+
};
|
|
1001
|
+
}();
|
|
1002
|
+
/**
|
|
1003
|
+
* 默认参数-------------------------------------
|
|
1004
|
+
* */
|
|
1005
|
+
|
|
1006
|
+
|
|
1007
|
+
var fieldNames = ref((_a = props.fieldNames) !== null && _a !== void 0 ? _a : {
|
|
1008
|
+
label: "name",
|
|
1009
|
+
value: "id"
|
|
1010
|
+
});
|
|
1011
|
+
var inputV = computed({
|
|
1012
|
+
get: function get() {
|
|
1013
|
+
return props.value;
|
|
1014
|
+
},
|
|
1015
|
+
set: function set(value) {
|
|
1016
|
+
emit("update:value", value);
|
|
1017
|
+
}
|
|
1018
|
+
});
|
|
1019
|
+
/**
|
|
1020
|
+
* 侦听器-------------------------------------
|
|
1021
|
+
* */
|
|
1022
|
+
|
|
1023
|
+
watchEffect( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2() {
|
|
1024
|
+
var _a, _b;
|
|
1025
|
+
|
|
1026
|
+
return _regeneratorRuntime().wrap(function _callee2$(_context2) {
|
|
1027
|
+
while (1) {
|
|
1028
|
+
switch (_context2.prev = _context2.next) {
|
|
1029
|
+
case 0:
|
|
1030
|
+
// 由于打包问题,侦听器一定要在最后,否则找不到getData方法
|
|
1031
|
+
getData({
|
|
1032
|
+
params: (_a = props.params) !== null && _a !== void 0 ? _a : null,
|
|
1033
|
+
data: (_b = props.data) !== null && _b !== void 0 ? _b : null
|
|
1034
|
+
});
|
|
1035
|
+
|
|
1036
|
+
case 1:
|
|
1037
|
+
case "end":
|
|
1038
|
+
return _context2.stop();
|
|
1039
|
+
}
|
|
1040
|
+
}
|
|
1041
|
+
}, _callee2);
|
|
1042
|
+
})));
|
|
1043
|
+
return function (_ctx, _cache) {
|
|
1044
|
+
var _component_a_select = resolveComponent("a-select");
|
|
1045
|
+
|
|
1046
|
+
var _component_a_form_item = resolveComponent("a-form-item");
|
|
1047
|
+
|
|
1048
|
+
return openBlock(), createBlock(_component_a_form_item, {
|
|
1049
|
+
name: "lineIds",
|
|
1050
|
+
"wrapper-col": {
|
|
1051
|
+
span: 8
|
|
1052
|
+
},
|
|
1053
|
+
rules: [{
|
|
1054
|
+
required: true,
|
|
1055
|
+
message: '请选择所属条线'
|
|
1056
|
+
}]
|
|
885
1057
|
}, {
|
|
886
1058
|
label: withCtx(function () {
|
|
887
1059
|
return [_hoisted_1];
|
|
888
1060
|
}),
|
|
889
1061
|
"default": withCtx(function () {
|
|
890
|
-
return [createVNode(_component_a_select,
|
|
1062
|
+
return [createVNode(_component_a_select, {
|
|
891
1063
|
getPopupContainer: function getPopupContainer(triggerNode) {
|
|
892
1064
|
return triggerNode.parentNode;
|
|
893
1065
|
},
|
|
@@ -902,8 +1074,8 @@ var script = /*#__PURE__*/defineComponent({
|
|
|
902
1074
|
placeholder: "请选择",
|
|
903
1075
|
options: dataV.value,
|
|
904
1076
|
fieldNames: fieldNames.value
|
|
905
|
-
}
|
|
906
|
-
/*
|
|
1077
|
+
}, null, 8
|
|
1078
|
+
/* PROPS */
|
|
907
1079
|
, ["getPopupContainer", "value", "options", "fieldNames"])];
|
|
908
1080
|
}),
|
|
909
1081
|
_: 1
|
|
@@ -914,14 +1086,14 @@ var script = /*#__PURE__*/defineComponent({
|
|
|
914
1086
|
}
|
|
915
1087
|
});
|
|
916
1088
|
|
|
917
|
-
script.__file = "src/business-ui/component/
|
|
1089
|
+
script.__file = "src/business-ui/component/IVMrpLineDropdown.vue";
|
|
918
1090
|
|
|
919
1091
|
/*
|
|
920
1092
|
* @Author: Mr.Cong Wei
|
|
921
1093
|
* @Date: 2022-08-08 18:47:06
|
|
922
|
-
* @LastEditTime: 2022-08-10
|
|
1094
|
+
* @LastEditTime: 2022-08-10 17:17:22
|
|
923
1095
|
*/
|
|
924
|
-
var components = [script$2, script$1, script];
|
|
1096
|
+
var components = [script$3, script$2, script$1, script];
|
|
925
1097
|
installComponents(); // 单独引用
|
|
926
1098
|
|
|
927
1099
|
function installComponents() {
|
|
@@ -943,4 +1115,4 @@ var cAll = {
|
|
|
943
1115
|
install: install
|
|
944
1116
|
};
|
|
945
1117
|
|
|
946
|
-
export { script$
|
|
1118
|
+
export { script as IVMrpLineDropdown, script$3 as IVMrpModal, script$2 as IVMrpOrgDropdown, script$1 as IVMrpProdBaseDropdown, cAll as default };
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global["@IVNPM/ui"] = {}, global.vue));
|
|
5
5
|
})(this, (function (exports, vue) { 'use strict';
|
|
6
6
|
|
|
7
|
-
var _hoisted_1$
|
|
7
|
+
var _hoisted_1$3 = /*#__PURE__*/vue.createTextVNode("npm包");
|
|
8
8
|
/**
|
|
9
9
|
* show:Boolean 是否显示弹窗 v-model:show="Visible"
|
|
10
10
|
*
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
*
|
|
20
20
|
* */
|
|
21
21
|
|
|
22
|
-
var script$
|
|
22
|
+
var script$3 = /*#__PURE__*/vue.defineComponent({
|
|
23
23
|
__name: 'IVMrpModal',
|
|
24
24
|
props: {
|
|
25
25
|
show: {
|
|
@@ -59,7 +59,7 @@
|
|
|
59
59
|
}, {
|
|
60
60
|
title: vue.withCtx(function () {
|
|
61
61
|
return [vue.renderSlot(_ctx.$slots, "title", {}, function () {
|
|
62
|
-
return [_hoisted_1$
|
|
62
|
+
return [_hoisted_1$3];
|
|
63
63
|
})];
|
|
64
64
|
}),
|
|
65
65
|
closeIcon: vue.withCtx(function () {
|
|
@@ -80,7 +80,7 @@
|
|
|
80
80
|
}
|
|
81
81
|
});
|
|
82
82
|
|
|
83
|
-
script$
|
|
83
|
+
script$3.__file = "src/function-ui/component/IVMrpModal.vue";
|
|
84
84
|
|
|
85
85
|
function ownKeys(object, enumerableOnly) {
|
|
86
86
|
var keys = Object.keys(object);
|
|
@@ -563,6 +563,12 @@
|
|
|
563
563
|
option: _objectSpread2({
|
|
564
564
|
method: "GET"
|
|
565
565
|
}, DEFIND_OPTION)
|
|
566
|
+
},
|
|
567
|
+
getIVMrpLineDropdown: {
|
|
568
|
+
url: "/api/basis-management/line/all",
|
|
569
|
+
option: _objectSpread2({
|
|
570
|
+
method: "GET"
|
|
571
|
+
}, DEFIND_OPTION)
|
|
566
572
|
}
|
|
567
573
|
};
|
|
568
574
|
var formatHTTP = function formatHTTP(fetch) {
|
|
@@ -590,7 +596,7 @@
|
|
|
590
596
|
return base + api + "?" + urlTemparr.join("&");
|
|
591
597
|
};
|
|
592
598
|
|
|
593
|
-
var _hoisted_1$
|
|
599
|
+
var _hoisted_1$2 = /*#__PURE__*/vue.createElementVNode("div", {
|
|
594
600
|
"class": "text-[#0000006D] text-[14px]"
|
|
595
601
|
}, "所属组织", -1
|
|
596
602
|
/* HOISTED */
|
|
@@ -599,7 +605,7 @@
|
|
|
599
605
|
* 组件定义-------------------------------------
|
|
600
606
|
* */
|
|
601
607
|
|
|
602
|
-
var script$
|
|
608
|
+
var script$2 = /*#__PURE__*/vue.defineComponent({
|
|
603
609
|
__name: 'IVMrpOrgDropdown',
|
|
604
610
|
props: {
|
|
605
611
|
value: {
|
|
@@ -725,10 +731,10 @@
|
|
|
725
731
|
}]
|
|
726
732
|
}, {
|
|
727
733
|
label: vue.withCtx(function () {
|
|
728
|
-
return [_hoisted_1$
|
|
734
|
+
return [_hoisted_1$2];
|
|
729
735
|
}),
|
|
730
736
|
"default": vue.withCtx(function () {
|
|
731
|
-
return [vue.createVNode(_component_a_tree_select,
|
|
737
|
+
return [vue.createVNode(_component_a_tree_select, {
|
|
732
738
|
value: vue.unref(inputV),
|
|
733
739
|
"onUpdate:value": _cache[0] || (_cache[0] = function ($event) {
|
|
734
740
|
return vue.isRef(inputV) ? inputV.value = $event : null;
|
|
@@ -744,8 +750,8 @@
|
|
|
744
750
|
"width": "300px"
|
|
745
751
|
},
|
|
746
752
|
replaceFields: replaceFields.value
|
|
747
|
-
}
|
|
748
|
-
/*
|
|
753
|
+
}, null, 8
|
|
754
|
+
/* PROPS */
|
|
749
755
|
, ["value", "tree-data", "getPopupContainer", "replaceFields"])];
|
|
750
756
|
}),
|
|
751
757
|
_: 1
|
|
@@ -756,9 +762,9 @@
|
|
|
756
762
|
}
|
|
757
763
|
});
|
|
758
764
|
|
|
759
|
-
script$
|
|
765
|
+
script$2.__file = "src/business-ui/component/IVMrpOrgDropdown.vue";
|
|
760
766
|
|
|
761
|
-
var _hoisted_1 = /*#__PURE__*/vue.createElementVNode("div", {
|
|
767
|
+
var _hoisted_1$1 = /*#__PURE__*/vue.createElementVNode("div", {
|
|
762
768
|
"class": "text-[#0000006D] text-[14px]"
|
|
763
769
|
}, "所属基地", -1
|
|
764
770
|
/* HOISTED */
|
|
@@ -767,7 +773,7 @@
|
|
|
767
773
|
* 组件定义-------------------------------------
|
|
768
774
|
* */
|
|
769
775
|
|
|
770
|
-
var script = /*#__PURE__*/vue.defineComponent({
|
|
776
|
+
var script$1 = /*#__PURE__*/vue.defineComponent({
|
|
771
777
|
__name: 'IVMrpProdBaseDropdown',
|
|
772
778
|
props: {
|
|
773
779
|
value: {
|
|
@@ -886,12 +892,178 @@
|
|
|
886
892
|
required: true,
|
|
887
893
|
message: '请选择所属基地'
|
|
888
894
|
}]
|
|
895
|
+
}, {
|
|
896
|
+
label: vue.withCtx(function () {
|
|
897
|
+
return [_hoisted_1$1];
|
|
898
|
+
}),
|
|
899
|
+
"default": vue.withCtx(function () {
|
|
900
|
+
return [vue.createVNode(_component_a_select, {
|
|
901
|
+
getPopupContainer: function getPopupContainer(triggerNode) {
|
|
902
|
+
return triggerNode.parentNode;
|
|
903
|
+
},
|
|
904
|
+
value: vue.unref(inputV),
|
|
905
|
+
"onUpdate:value": _cache[0] || (_cache[0] = function ($event) {
|
|
906
|
+
return vue.isRef(inputV) ? inputV.value = $event : null;
|
|
907
|
+
}),
|
|
908
|
+
mode: "multiple",
|
|
909
|
+
style: {
|
|
910
|
+
"width": "100%"
|
|
911
|
+
},
|
|
912
|
+
placeholder: "请选择",
|
|
913
|
+
options: dataV.value,
|
|
914
|
+
fieldNames: fieldNames.value
|
|
915
|
+
}, null, 8
|
|
916
|
+
/* PROPS */
|
|
917
|
+
, ["getPopupContainer", "value", "options", "fieldNames"])];
|
|
918
|
+
}),
|
|
919
|
+
_: 1
|
|
920
|
+
/* STABLE */
|
|
921
|
+
|
|
922
|
+
});
|
|
923
|
+
};
|
|
924
|
+
}
|
|
925
|
+
});
|
|
926
|
+
|
|
927
|
+
script$1.__file = "src/business-ui/component/IVMrpProdBaseDropdown.vue";
|
|
928
|
+
|
|
929
|
+
var _hoisted_1 = /*#__PURE__*/vue.createElementVNode("div", {
|
|
930
|
+
"class": "text-[#0000006D] text-[14px]"
|
|
931
|
+
}, "所属条线", -1
|
|
932
|
+
/* HOISTED */
|
|
933
|
+
);
|
|
934
|
+
/**
|
|
935
|
+
* 组件定义-------------------------------------
|
|
936
|
+
* */
|
|
937
|
+
|
|
938
|
+
var script = /*#__PURE__*/vue.defineComponent({
|
|
939
|
+
__name: 'IVMrpLineDropdown',
|
|
940
|
+
props: {
|
|
941
|
+
value: {
|
|
942
|
+
type: null,
|
|
943
|
+
required: true
|
|
944
|
+
},
|
|
945
|
+
params: {
|
|
946
|
+
type: Object,
|
|
947
|
+
required: false
|
|
948
|
+
},
|
|
949
|
+
data: {
|
|
950
|
+
type: Object,
|
|
951
|
+
required: false
|
|
952
|
+
},
|
|
953
|
+
fieldNames: {
|
|
954
|
+
type: null,
|
|
955
|
+
required: false
|
|
956
|
+
}
|
|
957
|
+
},
|
|
958
|
+
emits: ["update:value"],
|
|
959
|
+
setup: function setup(__props, _ref) {
|
|
960
|
+
var emit = _ref.emit;
|
|
961
|
+
|
|
962
|
+
var _a;
|
|
963
|
+
|
|
964
|
+
var props = __props;
|
|
965
|
+
/**
|
|
966
|
+
* 获取数据-------------------------------------
|
|
967
|
+
* */
|
|
968
|
+
|
|
969
|
+
var dataV = vue.ref();
|
|
970
|
+
|
|
971
|
+
var getData = /*#__PURE__*/function () {
|
|
972
|
+
var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
|
|
973
|
+
var _option,
|
|
974
|
+
_a,
|
|
975
|
+
_yield$formatHTTP,
|
|
976
|
+
items,
|
|
977
|
+
_args = arguments;
|
|
978
|
+
|
|
979
|
+
return _regeneratorRuntime().wrap(function _callee$(_context) {
|
|
980
|
+
while (1) {
|
|
981
|
+
switch (_context.prev = _context.next) {
|
|
982
|
+
case 0:
|
|
983
|
+
_option = _args.length > 0 && _args[0] !== undefined ? _args[0] : {};
|
|
984
|
+
_context.next = 3;
|
|
985
|
+
return formatHTTP(fetch(formatUrl(BASE_URL, API_OPTION.getIVMrpLineDropdown.url, _option.params), assign({
|
|
986
|
+
data: (_a = _option.data) !== null && _a !== void 0 ? _a : null
|
|
987
|
+
}, API_OPTION.getIVMrpLineDropdown.option)));
|
|
988
|
+
|
|
989
|
+
case 3:
|
|
990
|
+
_yield$formatHTTP = _context.sent;
|
|
991
|
+
items = _yield$formatHTTP.items;
|
|
992
|
+
dataV.value = items;
|
|
993
|
+
|
|
994
|
+
case 6:
|
|
995
|
+
case "end":
|
|
996
|
+
return _context.stop();
|
|
997
|
+
}
|
|
998
|
+
}
|
|
999
|
+
}, _callee);
|
|
1000
|
+
}));
|
|
1001
|
+
|
|
1002
|
+
return function getData() {
|
|
1003
|
+
return _ref2.apply(this, arguments);
|
|
1004
|
+
};
|
|
1005
|
+
}();
|
|
1006
|
+
/**
|
|
1007
|
+
* 默认参数-------------------------------------
|
|
1008
|
+
* */
|
|
1009
|
+
|
|
1010
|
+
|
|
1011
|
+
var fieldNames = vue.ref((_a = props.fieldNames) !== null && _a !== void 0 ? _a : {
|
|
1012
|
+
label: "name",
|
|
1013
|
+
value: "id"
|
|
1014
|
+
});
|
|
1015
|
+
var inputV = vue.computed({
|
|
1016
|
+
get: function get() {
|
|
1017
|
+
return props.value;
|
|
1018
|
+
},
|
|
1019
|
+
set: function set(value) {
|
|
1020
|
+
emit("update:value", value);
|
|
1021
|
+
}
|
|
1022
|
+
});
|
|
1023
|
+
/**
|
|
1024
|
+
* 侦听器-------------------------------------
|
|
1025
|
+
* */
|
|
1026
|
+
|
|
1027
|
+
vue.watchEffect( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2() {
|
|
1028
|
+
var _a, _b;
|
|
1029
|
+
|
|
1030
|
+
return _regeneratorRuntime().wrap(function _callee2$(_context2) {
|
|
1031
|
+
while (1) {
|
|
1032
|
+
switch (_context2.prev = _context2.next) {
|
|
1033
|
+
case 0:
|
|
1034
|
+
// 由于打包问题,侦听器一定要在最后,否则找不到getData方法
|
|
1035
|
+
getData({
|
|
1036
|
+
params: (_a = props.params) !== null && _a !== void 0 ? _a : null,
|
|
1037
|
+
data: (_b = props.data) !== null && _b !== void 0 ? _b : null
|
|
1038
|
+
});
|
|
1039
|
+
|
|
1040
|
+
case 1:
|
|
1041
|
+
case "end":
|
|
1042
|
+
return _context2.stop();
|
|
1043
|
+
}
|
|
1044
|
+
}
|
|
1045
|
+
}, _callee2);
|
|
1046
|
+
})));
|
|
1047
|
+
return function (_ctx, _cache) {
|
|
1048
|
+
var _component_a_select = vue.resolveComponent("a-select");
|
|
1049
|
+
|
|
1050
|
+
var _component_a_form_item = vue.resolveComponent("a-form-item");
|
|
1051
|
+
|
|
1052
|
+
return vue.openBlock(), vue.createBlock(_component_a_form_item, {
|
|
1053
|
+
name: "lineIds",
|
|
1054
|
+
"wrapper-col": {
|
|
1055
|
+
span: 8
|
|
1056
|
+
},
|
|
1057
|
+
rules: [{
|
|
1058
|
+
required: true,
|
|
1059
|
+
message: '请选择所属条线'
|
|
1060
|
+
}]
|
|
889
1061
|
}, {
|
|
890
1062
|
label: vue.withCtx(function () {
|
|
891
1063
|
return [_hoisted_1];
|
|
892
1064
|
}),
|
|
893
1065
|
"default": vue.withCtx(function () {
|
|
894
|
-
return [vue.createVNode(_component_a_select,
|
|
1066
|
+
return [vue.createVNode(_component_a_select, {
|
|
895
1067
|
getPopupContainer: function getPopupContainer(triggerNode) {
|
|
896
1068
|
return triggerNode.parentNode;
|
|
897
1069
|
},
|
|
@@ -906,8 +1078,8 @@
|
|
|
906
1078
|
placeholder: "请选择",
|
|
907
1079
|
options: dataV.value,
|
|
908
1080
|
fieldNames: fieldNames.value
|
|
909
|
-
}
|
|
910
|
-
/*
|
|
1081
|
+
}, null, 8
|
|
1082
|
+
/* PROPS */
|
|
911
1083
|
, ["getPopupContainer", "value", "options", "fieldNames"])];
|
|
912
1084
|
}),
|
|
913
1085
|
_: 1
|
|
@@ -918,14 +1090,14 @@
|
|
|
918
1090
|
}
|
|
919
1091
|
});
|
|
920
1092
|
|
|
921
|
-
script.__file = "src/business-ui/component/
|
|
1093
|
+
script.__file = "src/business-ui/component/IVMrpLineDropdown.vue";
|
|
922
1094
|
|
|
923
1095
|
/*
|
|
924
1096
|
* @Author: Mr.Cong Wei
|
|
925
1097
|
* @Date: 2022-08-08 18:47:06
|
|
926
|
-
* @LastEditTime: 2022-08-10
|
|
1098
|
+
* @LastEditTime: 2022-08-10 17:17:22
|
|
927
1099
|
*/
|
|
928
|
-
var components = [script$2, script$1, script];
|
|
1100
|
+
var components = [script$3, script$2, script$1, script];
|
|
929
1101
|
installComponents(); // 单独引用
|
|
930
1102
|
|
|
931
1103
|
function installComponents() {
|
|
@@ -947,9 +1119,10 @@
|
|
|
947
1119
|
install: install
|
|
948
1120
|
};
|
|
949
1121
|
|
|
950
|
-
exports.
|
|
951
|
-
exports.
|
|
952
|
-
exports.
|
|
1122
|
+
exports.IVMrpLineDropdown = script;
|
|
1123
|
+
exports.IVMrpModal = script$3;
|
|
1124
|
+
exports.IVMrpOrgDropdown = script$2;
|
|
1125
|
+
exports.IVMrpProdBaseDropdown = script$1;
|
|
953
1126
|
exports["default"] = cAll;
|
|
954
1127
|
|
|
955
1128
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.umd.js","sources":["../../shared/dist/utils/index.mjs"],"sourcesContent":["// utils/arr/tree.ts\nfunction arrToTree(list, parentMark, childrenMark) {\n let result = [], temp;\n for (let i = 0; i < list.length; i++) {\n if (!list[i][parentMark]) {\n temp = list.filter(\n (item) => item[parentMark] === list[i][childrenMark]\n );\n if (temp.length > 0) {\n list[i].children = temp;\n }\n result.push(list[i]);\n }\n }\n return result;\n}\nfunction _loadChildren(obj, list) {\n const arr = list.filter((x) => x.parentId == obj.id);\n if (!arr.length)\n return;\n obj.children = arr;\n obj.children.forEach((x) => {\n _loadChildren(x, list);\n });\n return obj;\n}\nfunction tranListToTreeData(list) {\n const results = list.filter((x) => x.parentId == null);\n results.forEach((x) => _loadChildren(x, list));\n return results;\n}\nfunction findTree(id, list, idName) {\n let result;\n if (!list.length)\n return;\n const fn = (id2, list2, idName2) => {\n list2.find((_e) => {\n if (_e[idName2] === id2) {\n result = _e;\n } else if (_e.children && _e.children.length !== 0)\n return fn(id2, _e.children, idName2);\n });\n };\n fn(id, list, idName);\n return result;\n}\n\n// utils/obj/judge.ts\nfunction isPlainObject(obj) {\n let proto, Ctor;\n if (!obj || toString.call(obj) !== \"[object Object]\") {\n return false;\n }\n proto = Object.getPrototypeOf(obj);\n if (!proto) {\n return true;\n }\n Ctor = {}.hasOwnProperty.call(proto, \"constructor\") && proto.constructor;\n return typeof Ctor === \"function\" && {}.hasOwnProperty.toString.call(Ctor) === {}.hasOwnProperty.toString.call(Object);\n}\nvar isObject = (val) => val !== null && typeof val === \"object\";\n\n// utils/obj/cache.ts\nvar assign = Object.assign;\nexport {\n arrToTree,\n assign,\n findTree,\n isObject,\n isPlainObject,\n tranListToTreeData\n};\n"],"names":["_loadChildren","obj","list","arr","filter","x","parentId","id","length","children","forEach","tranListToTreeData","results","isObject","val","assign","Object"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgBA,SAASA,aAAT,CAAuBC,GAAvB,EAA4BC,IAA5B,EAAkC;EAChC,EAAA,IAAMC,GAAG,GAAGD,IAAI,CAACE,MAAL,CAAY,UAACC,CAAD,EAAA;EAAA,IAAA,OAAOA,CAAC,CAACC,QAAF,IAAcL,GAAG,CAACM,EAAzB,CAAA;EAAA,GAAZ,CAAZ,CAAA;EACA,EAAA,IAAI,CAACJ,GAAG,CAACK,MAAT,EACE,OAAA;IACFP,GAAG,CAACQ,QAAJ,GAAeN,GAAf,CAAA;EACAF,EAAAA,GAAG,CAACQ,QAAJ,CAAaC,OAAb,CAAqB,UAACL,CAAD,EAAO;EAC1BL,IAAAA,aAAa,CAACK,CAAD,EAAIH,IAAJ,CAAb,CAAA;KADF,CAAA,CAAA;EAGA,EAAA,OAAOD,GAAP,CAAA;EACD,CAAA;EACD,SAASU,kBAAT,CAA4BT,IAA5B,EAAkC;EAChC,EAAA,IAAMU,OAAO,GAAGV,IAAI,CAACE,MAAL,CAAY,UAACC,CAAD,EAAA;EAAA,IAAA,OAAOA,CAAC,CAACC,QAAF,IAAc,IAArB,CAAA;EAAA,GAAZ,CAAhB,CAAA;EACAM,EAAAA,OAAO,CAACF,OAAR,CAAgB,UAACL,CAAD,EAAA;EAAA,IAAA,OAAOL,aAAa,CAACK,CAAD,EAAIH,IAAJ,CAApB,CAAA;KAAhB,CAAA,CAAA;EACA,EAAA,OAAOU,OAAP,CAAA;EACD,CAAA;EA8BD,IAAIC,QAAQ,GAAG,SAAXA,QAAW,CAACC,GAAD,EAAA;EAAA,EAAA,OAASA,GAAG,KAAK,IAAR,IAAgB,OAAOA,CAAAA,GAAP,MAAe,QAAxC,CAAA;EAAA,CAAf;EAGA,IAAIC,MAAM,GAAGC,MAAM,CAACD,MAApB
|
|
1
|
+
{"version":3,"file":"index.umd.js","sources":["../../shared/dist/utils/index.mjs"],"sourcesContent":["// utils/arr/tree.ts\nfunction arrToTree(list, parentMark, childrenMark) {\n let result = [], temp;\n for (let i = 0; i < list.length; i++) {\n if (!list[i][parentMark]) {\n temp = list.filter(\n (item) => item[parentMark] === list[i][childrenMark]\n );\n if (temp.length > 0) {\n list[i].children = temp;\n }\n result.push(list[i]);\n }\n }\n return result;\n}\nfunction _loadChildren(obj, list) {\n const arr = list.filter((x) => x.parentId == obj.id);\n if (!arr.length)\n return;\n obj.children = arr;\n obj.children.forEach((x) => {\n _loadChildren(x, list);\n });\n return obj;\n}\nfunction tranListToTreeData(list) {\n const results = list.filter((x) => x.parentId == null);\n results.forEach((x) => _loadChildren(x, list));\n return results;\n}\nfunction findTree(id, list, idName) {\n let result;\n if (!list.length)\n return;\n const fn = (id2, list2, idName2) => {\n list2.find((_e) => {\n if (_e[idName2] === id2) {\n result = _e;\n } else if (_e.children && _e.children.length !== 0)\n return fn(id2, _e.children, idName2);\n });\n };\n fn(id, list, idName);\n return result;\n}\n\n// utils/obj/judge.ts\nfunction isPlainObject(obj) {\n let proto, Ctor;\n if (!obj || toString.call(obj) !== \"[object Object]\") {\n return false;\n }\n proto = Object.getPrototypeOf(obj);\n if (!proto) {\n return true;\n }\n Ctor = {}.hasOwnProperty.call(proto, \"constructor\") && proto.constructor;\n return typeof Ctor === \"function\" && {}.hasOwnProperty.toString.call(Ctor) === {}.hasOwnProperty.toString.call(Object);\n}\nvar isObject = (val) => val !== null && typeof val === \"object\";\n\n// utils/obj/cache.ts\nvar assign = Object.assign;\nexport {\n arrToTree,\n assign,\n findTree,\n isObject,\n isPlainObject,\n tranListToTreeData\n};\n"],"names":["_loadChildren","obj","list","arr","filter","x","parentId","id","length","children","forEach","tranListToTreeData","results","isObject","val","assign","Object"],"mappings":"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"}
|