xyvcard-hairstyle 0.0.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.
- package/README.md +51 -0
- package/dist/_plugin-vue_export-helper-DSAIRWI6.mjs +89 -0
- package/dist/edit-CBqg1DMz.mjs +230 -0
- package/dist/index-D-Zb3RFd.mjs +417 -0
- package/dist/index.mjs +48 -0
- package/dist/info-C2BzE-Wh.mjs +167 -0
- package/dist/style.css +1 -0
- package/dts/src/App.vue.d.ts +2 -0
- package/dts/src/api/file/types.d.ts +7 -0
- package/dts/src/api/hairstyle/dict.d.ts +7 -0
- package/dts/src/api/hairstyle/hairstyle-info/index.d.ts +15 -0
- package/dts/src/api/hairstyle/hairstyle-info/types.d.ts +76 -0
- package/dts/src/api/hairstyle/index.d.ts +6 -0
- package/dts/src/constant.d.ts +17 -0
- package/dts/src/index.d.ts +5 -0
- package/dts/src/lang/hairstyle/en.d.ts +14 -0
- package/dts/src/lang/hairstyle/zh-cn.d.ts +20 -0
- package/dts/src/lang/index.d.ts +1 -0
- package/dts/src/main.d.ts +5 -0
- package/dts/src/permission.d.ts +1 -0
- package/dts/src/views/hairstyle/hairstyle-info/edit.vue.d.ts +28 -0
- package/dts/src/views/hairstyle/hairstyle-info/index.vue.d.ts +2 -0
- package/dts/src/views/hairstyle/hairstyle-info/info.vue.d.ts +26 -0
- package/package.json +57 -0
package/README.md
ADDED
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
# pnpm publish --no-git-checks
|
|
2
|
+
npm config set registry https://registry.npmjs.org/
|
|
3
|
+
|
|
4
|
+
# pnpm install
|
|
5
|
+
npm config set registry https://registry.npmmirror.com/
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
This template should help get you started developing with Vue 3 in Vite.
|
|
9
|
+
|
|
10
|
+
## Recommended IDE Setup
|
|
11
|
+
|
|
12
|
+
[VSCode](https://code.visualstudio.com/) + [Volar](https://marketplace.visualstudio.com/items?itemName=Vue.volar) (and disable Vetur) + [TypeScript Vue Plugin (Volar)](https://marketplace.visualstudio.com/items?itemName=Vue.vscode-typescript-vue-plugin).
|
|
13
|
+
|
|
14
|
+
## Type Support for `.vue` Imports in TS
|
|
15
|
+
|
|
16
|
+
TypeScript cannot handle type information for `.vue` imports by default, so we replace the `tsc` CLI with `vue-tsc` for type checking. In editors, we need [TypeScript Vue Plugin (Volar)](https://marketplace.visualstudio.com/items?itemName=Vue.vscode-typescript-vue-plugin) to make the TypeScript language service aware of `.vue` types.
|
|
17
|
+
|
|
18
|
+
If the standalone TypeScript plugin doesn't feel fast enough to you, Volar has also implemented a [Take Over Mode](https://github.com/johnsoncodehk/volar/discussions/471#discussioncomment-1361669) that is more performant. You can enable it by the following steps:
|
|
19
|
+
|
|
20
|
+
1. Disable the built-in TypeScript Extension
|
|
21
|
+
1) Run `Extensions: Show Built-in Extensions` from VSCode's command palette
|
|
22
|
+
2) Find `TypeScript and JavaScript Language Features`, right click and select `Disable (Workspace)`
|
|
23
|
+
2. Reload the VSCode window by running `Developer: Reload Window` from the command palette.
|
|
24
|
+
|
|
25
|
+
## Customize configuration
|
|
26
|
+
|
|
27
|
+
See [Vite Configuration Reference](https://vitejs.dev/config/).
|
|
28
|
+
|
|
29
|
+
## Project Setup
|
|
30
|
+
|
|
31
|
+
```sh
|
|
32
|
+
pnpm install
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
### Compile and Hot-Reload for Development
|
|
36
|
+
|
|
37
|
+
```sh
|
|
38
|
+
pnpm dev
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
### Type-Check, Compile and Minify for Production
|
|
42
|
+
|
|
43
|
+
```sh
|
|
44
|
+
pnpm build
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
### Lint with [ESLint](https://eslint.org/)
|
|
48
|
+
|
|
49
|
+
```sh
|
|
50
|
+
pnpm lint
|
|
51
|
+
```
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import { useUserStore as a, clearEmpty as r, request as s } from "jmash-core";
|
|
2
|
+
class o {
|
|
3
|
+
getKey(t) {
|
|
4
|
+
return {
|
|
5
|
+
hairstyleId: t.hairstyleId
|
|
6
|
+
};
|
|
7
|
+
}
|
|
8
|
+
// 查询翻页信息发型信息
|
|
9
|
+
findPage(t) {
|
|
10
|
+
const n = a().user.tenant;
|
|
11
|
+
return t && (t.hasGender = (t == null ? void 0 : t.gender) != null, t.hasStatus = (t == null ? void 0 : t.status) != null), r(t), s({
|
|
12
|
+
url: "/v1/hairstyle/hairstyle_info/page/" + n,
|
|
13
|
+
method: "get",
|
|
14
|
+
params: t
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
// 查询发型信息
|
|
18
|
+
findById(t) {
|
|
19
|
+
const n = a().user.tenant;
|
|
20
|
+
return r(t), s({
|
|
21
|
+
url: "/v1/hairstyle/hairstyle_info/id/" + n + "/" + t.hairstyleId,
|
|
22
|
+
method: "get"
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
// 创建实体发型信息
|
|
26
|
+
create(t) {
|
|
27
|
+
return t.tenant = a().user.tenant, r(t), s({
|
|
28
|
+
url: "/v1/hairstyle/hairstyle_info",
|
|
29
|
+
method: "post",
|
|
30
|
+
data: t
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
// 修改实体发型信息
|
|
34
|
+
update(t) {
|
|
35
|
+
return t.tenant = a().user.tenant, r(t), s({
|
|
36
|
+
url: "/v1/hairstyle/hairstyle_info",
|
|
37
|
+
method: "patch",
|
|
38
|
+
data: t
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
// 上移下移
|
|
42
|
+
move(t, n) {
|
|
43
|
+
let e = { ...t };
|
|
44
|
+
return e.tenant = a().user.tenant, e.up = n, r(e), s({
|
|
45
|
+
url: "/v1/hairstyle/hairstyle_info/move",
|
|
46
|
+
method: "put",
|
|
47
|
+
data: e
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
// 启用/禁用
|
|
51
|
+
enable(t, n) {
|
|
52
|
+
let e = { ...t };
|
|
53
|
+
return e.tenant = a().user.tenant, e.enable = n, r(e), s({
|
|
54
|
+
url: "/v1/hairstyle/hairstyle_info/enable",
|
|
55
|
+
method: "put",
|
|
56
|
+
data: e
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
// 删除发型信息
|
|
60
|
+
delete(t) {
|
|
61
|
+
return t.tenant = a().user.tenant, r(t), s({
|
|
62
|
+
url: "/v1/hairstyle/hairstyle_info/id",
|
|
63
|
+
method: "delete",
|
|
64
|
+
params: t
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
// 批量删除发型信息
|
|
68
|
+
batchDelete(t) {
|
|
69
|
+
const n = t.map((i) => i.hairstyleId), e = {
|
|
70
|
+
tenant: a().user.tenant,
|
|
71
|
+
hairstyleId: n
|
|
72
|
+
};
|
|
73
|
+
return r(e), s({
|
|
74
|
+
url: "/v1/hairstyle/hairstyle_info/batch",
|
|
75
|
+
method: "put",
|
|
76
|
+
data: e
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
const d = new o(), p = (l, t) => {
|
|
81
|
+
const n = l.__vccOpts || l;
|
|
82
|
+
for (const [e, i] of t)
|
|
83
|
+
n[e] = i;
|
|
84
|
+
return n;
|
|
85
|
+
};
|
|
86
|
+
export {
|
|
87
|
+
p as _,
|
|
88
|
+
d as h
|
|
89
|
+
};
|
|
@@ -0,0 +1,230 @@
|
|
|
1
|
+
import { defineComponent as D, ref as v, reactive as M, useModel as H, resolveComponent as s, openBlock as R, createBlock as A, withCtx as t, createVNode as l, unref as n, createElementVNode as G, createTextVNode as N, toDisplayString as P, mergeModels as w } from "vue";
|
|
2
|
+
import { ElMessage as $ } from "element-plus";
|
|
3
|
+
import { useI18n as T } from "vue-i18n";
|
|
4
|
+
import { h as c, _ as z } from "./_plugin-vue_export-helper-DSAIRWI6.mjs";
|
|
5
|
+
const J = { class: "dialog-footer" }, L = /* @__PURE__ */ D({
|
|
6
|
+
__name: "edit",
|
|
7
|
+
props: /* @__PURE__ */ w({
|
|
8
|
+
entityKey: {
|
|
9
|
+
type: Object,
|
|
10
|
+
default: () => {
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
}, {
|
|
14
|
+
modelValue: { type: Boolean },
|
|
15
|
+
modelModifiers: {}
|
|
16
|
+
}),
|
|
17
|
+
emits: /* @__PURE__ */ w(["refresh"], ["update:modelValue"]),
|
|
18
|
+
setup(f, { emit: j }) {
|
|
19
|
+
const { t: m } = T(), h = v(), k = Math.random() * 10 + "";
|
|
20
|
+
let o = M({
|
|
21
|
+
requestId: k,
|
|
22
|
+
updateMask: "hairstyleName,gender,hairstyleModel,hairstylePic,prompt"
|
|
23
|
+
});
|
|
24
|
+
const C = M({
|
|
25
|
+
hairstyleName: [
|
|
26
|
+
{
|
|
27
|
+
required: !0,
|
|
28
|
+
message: m("hairstyleInfo.hairstyleName"),
|
|
29
|
+
trigger: "change"
|
|
30
|
+
}
|
|
31
|
+
],
|
|
32
|
+
gender: [
|
|
33
|
+
{
|
|
34
|
+
required: !0,
|
|
35
|
+
message: m("hairstyleInfo.gender"),
|
|
36
|
+
trigger: "change"
|
|
37
|
+
}
|
|
38
|
+
],
|
|
39
|
+
hairstyleModel: [
|
|
40
|
+
{
|
|
41
|
+
required: !0,
|
|
42
|
+
message: m("hairstyleInfo.hairstyleModel"),
|
|
43
|
+
trigger: "change"
|
|
44
|
+
}
|
|
45
|
+
],
|
|
46
|
+
hairstylePic: [
|
|
47
|
+
{
|
|
48
|
+
required: !0,
|
|
49
|
+
message: m("hairstyleInfo.hairstylePic"),
|
|
50
|
+
trigger: "change"
|
|
51
|
+
}
|
|
52
|
+
]
|
|
53
|
+
}), i = H(f, "modelValue"), y = f, g = j, U = Object.keys(y.entityKey), _ = v(U.length >= 1);
|
|
54
|
+
_.value && c.findById(y.entityKey).then(({ data: e }) => {
|
|
55
|
+
Object.assign(o, e);
|
|
56
|
+
});
|
|
57
|
+
const q = async () => {
|
|
58
|
+
var e;
|
|
59
|
+
await ((e = h.value) == null ? void 0 : e.validate((a) => {
|
|
60
|
+
a && (_.value ? c.update(o).then((r) => {
|
|
61
|
+
console.log(r), r.status === 200 && ($({
|
|
62
|
+
message: m("common.submitSuccess"),
|
|
63
|
+
type: "success"
|
|
64
|
+
}), i.value && (i.value = !1), g("refresh", r.status === 200));
|
|
65
|
+
}) : c.create(o).then((r) => {
|
|
66
|
+
console.log(r), r.status === 200 && ($({
|
|
67
|
+
message: m("common.submitSuccess"),
|
|
68
|
+
type: "success"
|
|
69
|
+
}), i.value && (i.value = !1), g("refresh", r.status === 200));
|
|
70
|
+
}));
|
|
71
|
+
}));
|
|
72
|
+
};
|
|
73
|
+
function b() {
|
|
74
|
+
i.value && (i.value = !1);
|
|
75
|
+
}
|
|
76
|
+
function F(e) {
|
|
77
|
+
o.hairstyleModel = e.response.fileSrc;
|
|
78
|
+
}
|
|
79
|
+
function S(e) {
|
|
80
|
+
o.hairstylePic = e.response.fileSrc;
|
|
81
|
+
}
|
|
82
|
+
return (e, a) => {
|
|
83
|
+
const r = s("jmash-single-image-upload"), u = s("el-form-item"), p = s("el-col"), I = s("el-input"), B = s("jmash-enum-select"), E = s("el-row"), K = s("el-form"), V = s("el-button"), O = s("el-dialog");
|
|
84
|
+
return R(), A(O, {
|
|
85
|
+
modelValue: i.value,
|
|
86
|
+
"onUpdate:modelValue": a[3] || (a[3] = (d) => i.value = d),
|
|
87
|
+
onClose: b
|
|
88
|
+
}, {
|
|
89
|
+
footer: t(() => [
|
|
90
|
+
G("div", J, [
|
|
91
|
+
l(V, { onClick: b }, {
|
|
92
|
+
default: t(() => [
|
|
93
|
+
N(P(e.$t("common.cancel")), 1)
|
|
94
|
+
]),
|
|
95
|
+
_: 1
|
|
96
|
+
}),
|
|
97
|
+
l(V, {
|
|
98
|
+
type: "primary",
|
|
99
|
+
onClick: q
|
|
100
|
+
}, {
|
|
101
|
+
default: t(() => [
|
|
102
|
+
N(P(e.$t("common.confirm")), 1)
|
|
103
|
+
]),
|
|
104
|
+
_: 1
|
|
105
|
+
})
|
|
106
|
+
])
|
|
107
|
+
]),
|
|
108
|
+
default: t(() => [
|
|
109
|
+
l(K, {
|
|
110
|
+
ref_key: "hairstyleInfoFormRef",
|
|
111
|
+
ref: h,
|
|
112
|
+
model: n(o),
|
|
113
|
+
"label-width": "120px",
|
|
114
|
+
rules: C
|
|
115
|
+
}, {
|
|
116
|
+
default: t(() => [
|
|
117
|
+
l(E, null, {
|
|
118
|
+
default: t(() => [
|
|
119
|
+
l(p, { span: 12 }, {
|
|
120
|
+
default: t(() => [
|
|
121
|
+
l(u, {
|
|
122
|
+
label: e.$t("hairstyleInfo.hairstyleModel"),
|
|
123
|
+
prop: "hairstyleModel"
|
|
124
|
+
}, {
|
|
125
|
+
default: t(() => [
|
|
126
|
+
l(r, {
|
|
127
|
+
"picture-url": n(o).hairstyleModel,
|
|
128
|
+
onUploadFile: F
|
|
129
|
+
}, null, 8, ["picture-url"])
|
|
130
|
+
]),
|
|
131
|
+
_: 1
|
|
132
|
+
}, 8, ["label"])
|
|
133
|
+
]),
|
|
134
|
+
_: 1
|
|
135
|
+
}),
|
|
136
|
+
l(p, { span: 12 }, {
|
|
137
|
+
default: t(() => [
|
|
138
|
+
l(u, {
|
|
139
|
+
label: e.$t("hairstyleInfo.hairstylePic"),
|
|
140
|
+
prop: "hairstylePic"
|
|
141
|
+
}, {
|
|
142
|
+
default: t(() => [
|
|
143
|
+
l(r, {
|
|
144
|
+
"picture-url": n(o).hairstylePic,
|
|
145
|
+
onUploadFile: S
|
|
146
|
+
}, null, 8, ["picture-url"])
|
|
147
|
+
]),
|
|
148
|
+
_: 1
|
|
149
|
+
}, 8, ["label"])
|
|
150
|
+
]),
|
|
151
|
+
_: 1
|
|
152
|
+
}),
|
|
153
|
+
l(p, { span: 12 }, {
|
|
154
|
+
default: t(() => [
|
|
155
|
+
l(u, {
|
|
156
|
+
label: e.$t("hairstyleInfo.hairstyleName"),
|
|
157
|
+
prop: "hairstyleName"
|
|
158
|
+
}, {
|
|
159
|
+
default: t(() => [
|
|
160
|
+
l(I, {
|
|
161
|
+
modelValue: n(o).hairstyleName,
|
|
162
|
+
"onUpdate:modelValue": a[0] || (a[0] = (d) => n(o).hairstyleName = d),
|
|
163
|
+
placeholder: e.$t("hairstyleInfo.hairstyleNamePlaceholder"),
|
|
164
|
+
maxlength: "200",
|
|
165
|
+
"show-word-limit": "",
|
|
166
|
+
clearable: ""
|
|
167
|
+
}, null, 8, ["modelValue", "placeholder"])
|
|
168
|
+
]),
|
|
169
|
+
_: 1
|
|
170
|
+
}, 8, ["label"])
|
|
171
|
+
]),
|
|
172
|
+
_: 1
|
|
173
|
+
}),
|
|
174
|
+
l(p, { span: 12 }, {
|
|
175
|
+
default: t(() => [
|
|
176
|
+
l(u, {
|
|
177
|
+
label: e.$t("hairstyleInfo.gender"),
|
|
178
|
+
prop: "gender"
|
|
179
|
+
}, {
|
|
180
|
+
default: t(() => [
|
|
181
|
+
l(B, {
|
|
182
|
+
modelValue: n(o).gender,
|
|
183
|
+
"onUpdate:modelValue": a[1] || (a[1] = (d) => n(o).gender = d),
|
|
184
|
+
clearable: "",
|
|
185
|
+
placeholder: e.$t("hairstyleInfo.genderPlaceholder"),
|
|
186
|
+
"enum-type": "jmash.protobuf.Gender",
|
|
187
|
+
class: "w-full"
|
|
188
|
+
}, null, 8, ["modelValue", "placeholder"])
|
|
189
|
+
]),
|
|
190
|
+
_: 1
|
|
191
|
+
}, 8, ["label"])
|
|
192
|
+
]),
|
|
193
|
+
_: 1
|
|
194
|
+
}),
|
|
195
|
+
l(p, { span: 24 }, {
|
|
196
|
+
default: t(() => [
|
|
197
|
+
l(u, {
|
|
198
|
+
label: e.$t("hairstyleInfo.prompt"),
|
|
199
|
+
prop: "prompt"
|
|
200
|
+
}, {
|
|
201
|
+
default: t(() => [
|
|
202
|
+
l(I, {
|
|
203
|
+
modelValue: n(o).prompt,
|
|
204
|
+
"onUpdate:modelValue": a[2] || (a[2] = (d) => n(o).prompt = d),
|
|
205
|
+
placeholder: e.$t("hairstyleInfo.promptPlaceholder"),
|
|
206
|
+
maxlength: "300",
|
|
207
|
+
"show-word-limit": "",
|
|
208
|
+
type: "textarea"
|
|
209
|
+
}, null, 8, ["modelValue", "placeholder"])
|
|
210
|
+
]),
|
|
211
|
+
_: 1
|
|
212
|
+
}, 8, ["label"])
|
|
213
|
+
]),
|
|
214
|
+
_: 1
|
|
215
|
+
})
|
|
216
|
+
]),
|
|
217
|
+
_: 1
|
|
218
|
+
})
|
|
219
|
+
]),
|
|
220
|
+
_: 1
|
|
221
|
+
}, 8, ["model", "rules"])
|
|
222
|
+
]),
|
|
223
|
+
_: 1
|
|
224
|
+
}, 8, ["modelValue"]);
|
|
225
|
+
};
|
|
226
|
+
}
|
|
227
|
+
}), Z = /* @__PURE__ */ z(L, [["__scopeId", "data-v-a419856c"]]);
|
|
228
|
+
export {
|
|
229
|
+
Z as default
|
|
230
|
+
};
|
|
@@ -0,0 +1,417 @@
|
|
|
1
|
+
import { defineComponent as ne, ref as c, reactive as E, resolveComponent as i, resolveDirective as ie, openBlock as u, createElementBlock as C, createElementVNode as f, createVNode as t, withCtx as o, withKeys as se, unref as n, createTextVNode as y, toDisplayString as p, withDirectives as V, createBlock as I, isRef as Q, createCommentVNode as U } from "vue";
|
|
2
|
+
import { useTableHooks as re, fileApi as $ } from "jmash-core";
|
|
3
|
+
import { D as T, h as de } from "./info-C2BzE-Wh.mjs";
|
|
4
|
+
import { useI18n as ue } from "vue-i18n";
|
|
5
|
+
import { h as me } from "./_plugin-vue_export-helper-DSAIRWI6.mjs";
|
|
6
|
+
import pe from "./edit-CBqg1DMz.mjs";
|
|
7
|
+
const ce = { class: "app-container" }, fe = { class: "search-container" }, ye = ["onClick"], he = ["onClick"], ve = ["onClick"], Ie = /* @__PURE__ */ ne({
|
|
8
|
+
__name: "index",
|
|
9
|
+
setup(_e) {
|
|
10
|
+
const { t: h } = ue(), r = c({}), {
|
|
11
|
+
tableHooks: s,
|
|
12
|
+
multipleTableRef: L,
|
|
13
|
+
queryFormRef: K,
|
|
14
|
+
listLoading: q,
|
|
15
|
+
tableData: A,
|
|
16
|
+
total: g
|
|
17
|
+
} = re(h, me, r);
|
|
18
|
+
let v = c([
|
|
19
|
+
{
|
|
20
|
+
label: "hairstyleInfo.hairstyleName",
|
|
21
|
+
prop: "hairstyleName",
|
|
22
|
+
width: "300",
|
|
23
|
+
isColumn: !0
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
label: "hairstyleInfo.gender",
|
|
27
|
+
prop: "gender",
|
|
28
|
+
width: "100",
|
|
29
|
+
slotName: "sexType",
|
|
30
|
+
columnType: "slot",
|
|
31
|
+
isColumn: !0
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
label: "hairstyleInfo.hairstyleModel",
|
|
35
|
+
prop: "hairstyleModel",
|
|
36
|
+
width: "200",
|
|
37
|
+
isColumn: !0,
|
|
38
|
+
slotName: "hairstyleModel",
|
|
39
|
+
columnType: "slot"
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
label: "hairstyleInfo.hairstylePic",
|
|
43
|
+
prop: "hairstylePic",
|
|
44
|
+
width: "200",
|
|
45
|
+
isColumn: !0,
|
|
46
|
+
slotName: "hairstylePic",
|
|
47
|
+
columnType: "slot"
|
|
48
|
+
},
|
|
49
|
+
{
|
|
50
|
+
label: "hairstyleInfo.orderBy",
|
|
51
|
+
prop: "orderBy",
|
|
52
|
+
width: "100",
|
|
53
|
+
isColumn: !0,
|
|
54
|
+
slotName: "listOrder",
|
|
55
|
+
columnType: "slot"
|
|
56
|
+
},
|
|
57
|
+
{
|
|
58
|
+
label: "hairstyleInfo.status",
|
|
59
|
+
prop: "status",
|
|
60
|
+
width: "100",
|
|
61
|
+
slotName: "status",
|
|
62
|
+
columnType: "slot",
|
|
63
|
+
isColumn: !0
|
|
64
|
+
},
|
|
65
|
+
{
|
|
66
|
+
label: "common.operate",
|
|
67
|
+
width: "200",
|
|
68
|
+
slotName: "operation",
|
|
69
|
+
columnType: "slot",
|
|
70
|
+
fixed: "right",
|
|
71
|
+
isColumn: !0
|
|
72
|
+
}
|
|
73
|
+
]);
|
|
74
|
+
const d = c({
|
|
75
|
+
title: h("common.edit"),
|
|
76
|
+
visible: !1
|
|
77
|
+
});
|
|
78
|
+
c(!1);
|
|
79
|
+
let P = E({});
|
|
80
|
+
function x() {
|
|
81
|
+
P = E({}), d.value.title = h("common.add"), d.value.visible = !0;
|
|
82
|
+
}
|
|
83
|
+
function F(a) {
|
|
84
|
+
P.hairstyleId = a.hairstyleId, d.value.title = h("common.edit"), d.value.visible = !0;
|
|
85
|
+
}
|
|
86
|
+
function H(a) {
|
|
87
|
+
s.selectionRows.value = a;
|
|
88
|
+
}
|
|
89
|
+
function O(a) {
|
|
90
|
+
s.handleSort(a.prop, a.order);
|
|
91
|
+
}
|
|
92
|
+
function G() {
|
|
93
|
+
r.value = {}, s.resetQuery();
|
|
94
|
+
}
|
|
95
|
+
function R(a) {
|
|
96
|
+
a && s.getList();
|
|
97
|
+
}
|
|
98
|
+
s.getList();
|
|
99
|
+
const _ = c({
|
|
100
|
+
title: h("common.view"),
|
|
101
|
+
visible: !1
|
|
102
|
+
}), S = c({});
|
|
103
|
+
function J(a) {
|
|
104
|
+
S.value.hairstyleId = a.hairstyleId, _.value.visible = !0;
|
|
105
|
+
}
|
|
106
|
+
return (a, l) => {
|
|
107
|
+
const W = i("el-input"), w = i("el-form-item"), b = i("el-col"), z = i("jmash-select"), D = i("el-row"), N = i("el-button"), X = i("el-form"), Y = i("jmash-column-select"), j = i("el-image"), Z = i("Bottom"), M = i("el-icon"), B = i("el-tooltip"), ee = i("Top"), le = i("el-switch"), te = i("jmash-table"), oe = i("jmash-pagination"), ae = i("el-card"), k = ie("hasPerm");
|
|
108
|
+
return u(), C("div", ce, [
|
|
109
|
+
f("div", fe, [
|
|
110
|
+
t(X, {
|
|
111
|
+
ref_key: "queryFormRef",
|
|
112
|
+
ref: K,
|
|
113
|
+
model: r.value,
|
|
114
|
+
inline: !0
|
|
115
|
+
}, {
|
|
116
|
+
default: o(() => [
|
|
117
|
+
t(D, null, {
|
|
118
|
+
default: o(() => [
|
|
119
|
+
t(b, { span: 6 }, {
|
|
120
|
+
default: o(() => [
|
|
121
|
+
t(w, {
|
|
122
|
+
label: a.$t("hairstyleInfo.hairstyleName"),
|
|
123
|
+
prop: "hairstyleName"
|
|
124
|
+
}, {
|
|
125
|
+
default: o(() => [
|
|
126
|
+
t(W, {
|
|
127
|
+
modelValue: r.value.like_hairstyle_name,
|
|
128
|
+
"onUpdate:modelValue": l[0] || (l[0] = (e) => r.value.like_hairstyle_name = e),
|
|
129
|
+
placeholder: a.$t("hairstyleInfo.hairstyleNamePlaceholder"),
|
|
130
|
+
clearable: "",
|
|
131
|
+
onKeyup: l[1] || (l[1] = se((e) => n(s).handleQuery(), ["enter"]))
|
|
132
|
+
}, null, 8, ["modelValue", "placeholder"])
|
|
133
|
+
]),
|
|
134
|
+
_: 1
|
|
135
|
+
}, 8, ["label"])
|
|
136
|
+
]),
|
|
137
|
+
_: 1
|
|
138
|
+
}),
|
|
139
|
+
t(b, { span: 6 }, {
|
|
140
|
+
default: o(() => [
|
|
141
|
+
t(w, {
|
|
142
|
+
label: a.$t("hairstyleInfo.gender"),
|
|
143
|
+
prop: "gender"
|
|
144
|
+
}, {
|
|
145
|
+
default: o(() => [
|
|
146
|
+
t(z, {
|
|
147
|
+
modelValue: r.value.gender,
|
|
148
|
+
"onUpdate:modelValue": l[2] || (l[2] = (e) => r.value.gender = e),
|
|
149
|
+
placeholder: a.$t("hairstyleInfo.genderPlaceholder"),
|
|
150
|
+
data: n(T).genderEnum.values,
|
|
151
|
+
clearable: "",
|
|
152
|
+
onChange: l[3] || (l[3] = (e) => n(s).handleQuery())
|
|
153
|
+
}, null, 8, ["modelValue", "placeholder", "data"])
|
|
154
|
+
]),
|
|
155
|
+
_: 1
|
|
156
|
+
}, 8, ["label"])
|
|
157
|
+
]),
|
|
158
|
+
_: 1
|
|
159
|
+
}),
|
|
160
|
+
t(b, { span: 6 }, {
|
|
161
|
+
default: o(() => [
|
|
162
|
+
t(w, {
|
|
163
|
+
label: a.$t("hairstyleInfo.status"),
|
|
164
|
+
prop: "status"
|
|
165
|
+
}, {
|
|
166
|
+
default: o(() => [
|
|
167
|
+
t(z, {
|
|
168
|
+
modelValue: r.value.status,
|
|
169
|
+
"onUpdate:modelValue": l[4] || (l[4] = (e) => r.value.status = e),
|
|
170
|
+
placeholder: a.$t("hairstyleInfo.statusPlaceholder"),
|
|
171
|
+
data: n(T).statusDict.values,
|
|
172
|
+
clearable: "",
|
|
173
|
+
onChange: l[5] || (l[5] = (e) => n(s).handleQuery())
|
|
174
|
+
}, null, 8, ["modelValue", "placeholder", "data"])
|
|
175
|
+
]),
|
|
176
|
+
_: 1
|
|
177
|
+
}, 8, ["label"])
|
|
178
|
+
]),
|
|
179
|
+
_: 1
|
|
180
|
+
})
|
|
181
|
+
]),
|
|
182
|
+
_: 1
|
|
183
|
+
}),
|
|
184
|
+
t(w, { class: "search-btn" }, {
|
|
185
|
+
default: o(() => [
|
|
186
|
+
t(N, {
|
|
187
|
+
type: "primary",
|
|
188
|
+
onClick: l[6] || (l[6] = (e) => n(s).handleQuery())
|
|
189
|
+
}, {
|
|
190
|
+
default: o(() => [
|
|
191
|
+
y(p(a.$t("common.search")), 1)
|
|
192
|
+
]),
|
|
193
|
+
_: 1
|
|
194
|
+
}),
|
|
195
|
+
t(N, { onClick: G }, {
|
|
196
|
+
default: o(() => [
|
|
197
|
+
y(p(a.$t("common.reset")), 1)
|
|
198
|
+
]),
|
|
199
|
+
_: 1
|
|
200
|
+
})
|
|
201
|
+
]),
|
|
202
|
+
_: 1
|
|
203
|
+
})
|
|
204
|
+
]),
|
|
205
|
+
_: 1
|
|
206
|
+
}, 8, ["model"]),
|
|
207
|
+
l[14] || (l[14] = f("div", { class: "clear" }, null, -1))
|
|
208
|
+
]),
|
|
209
|
+
t(ae, {
|
|
210
|
+
shadow: "never",
|
|
211
|
+
class: "table-container"
|
|
212
|
+
}, {
|
|
213
|
+
header: o(() => [
|
|
214
|
+
t(D, null, {
|
|
215
|
+
default: o(() => [
|
|
216
|
+
t(b, { span: 17 }, {
|
|
217
|
+
default: o(() => [
|
|
218
|
+
V((u(), I(N, {
|
|
219
|
+
type: "primary",
|
|
220
|
+
onClick: x
|
|
221
|
+
}, {
|
|
222
|
+
default: o(() => [
|
|
223
|
+
y(p(a.$t("common.add")), 1)
|
|
224
|
+
]),
|
|
225
|
+
_: 1
|
|
226
|
+
})), [
|
|
227
|
+
[k, ["hairstyle:hairstyle_info:add"]]
|
|
228
|
+
])
|
|
229
|
+
]),
|
|
230
|
+
_: 1
|
|
231
|
+
}),
|
|
232
|
+
t(b, {
|
|
233
|
+
span: 7,
|
|
234
|
+
class: "container-float"
|
|
235
|
+
}, {
|
|
236
|
+
default: o(() => [
|
|
237
|
+
t(Y, {
|
|
238
|
+
modelValue: n(v),
|
|
239
|
+
"onUpdate:modelValue": l[7] || (l[7] = (e) => Q(v) ? v.value = e : v = e),
|
|
240
|
+
"label-name": "hairstyle/hairstyle-info"
|
|
241
|
+
}, null, 8, ["modelValue"])
|
|
242
|
+
]),
|
|
243
|
+
_: 1
|
|
244
|
+
})
|
|
245
|
+
]),
|
|
246
|
+
_: 1
|
|
247
|
+
})
|
|
248
|
+
]),
|
|
249
|
+
footer: o(() => [
|
|
250
|
+
n(g) > 0 ? (u(), I(oe, {
|
|
251
|
+
key: 0,
|
|
252
|
+
total: n(g),
|
|
253
|
+
"onUpdate:total": l[8] || (l[8] = (e) => Q(g) ? g.value = e : null),
|
|
254
|
+
"current-page": r.value.curPage,
|
|
255
|
+
"onUpdate:currentPage": l[9] || (l[9] = (e) => r.value.curPage = e),
|
|
256
|
+
"page-size": r.value.pageSize,
|
|
257
|
+
"onUpdate:pageSize": l[10] || (l[10] = (e) => r.value.pageSize = e),
|
|
258
|
+
onPagination: l[11] || (l[11] = (e) => n(s).getList())
|
|
259
|
+
}, null, 8, ["total", "current-page", "page-size"])) : U("", !0)
|
|
260
|
+
]),
|
|
261
|
+
default: o(() => [
|
|
262
|
+
t(te, {
|
|
263
|
+
ref_key: "multipleTableRef",
|
|
264
|
+
ref: L,
|
|
265
|
+
"row-key": "hairstyleId",
|
|
266
|
+
"list-loading": n(q),
|
|
267
|
+
data: n(A),
|
|
268
|
+
"table-label": n(v),
|
|
269
|
+
onSelectionChange: H,
|
|
270
|
+
onSortChange: O,
|
|
271
|
+
isSelection: !1
|
|
272
|
+
}, {
|
|
273
|
+
sexType: o((e) => [
|
|
274
|
+
f("span", null, p(n(T).genderEnum.getEnumValue(e.data.row.gender)), 1)
|
|
275
|
+
]),
|
|
276
|
+
hairstyleModel: o((e) => [
|
|
277
|
+
f("span", null, [
|
|
278
|
+
t(j, {
|
|
279
|
+
src: n($).imageUrl(
|
|
280
|
+
e.data.row.hairstyleModel,
|
|
281
|
+
90,
|
|
282
|
+
120,
|
|
283
|
+
"trans"
|
|
284
|
+
),
|
|
285
|
+
"zoom-rate": 1.2,
|
|
286
|
+
"max-scale": 7,
|
|
287
|
+
"min-scale": 0.2,
|
|
288
|
+
"preview-src-list": [
|
|
289
|
+
n($).imageUrl(e.data.row.hairstyleModel)
|
|
290
|
+
],
|
|
291
|
+
"preview-teleported": "",
|
|
292
|
+
"hide-on-click-modal": "",
|
|
293
|
+
fit: "contain"
|
|
294
|
+
}, null, 8, ["src", "preview-src-list"])
|
|
295
|
+
])
|
|
296
|
+
]),
|
|
297
|
+
hairstylePic: o((e) => [
|
|
298
|
+
f("span", null, [
|
|
299
|
+
t(j, {
|
|
300
|
+
src: n($).imageUrl(e.data.row.hairstylePic, 90, 120, "trans"),
|
|
301
|
+
"zoom-rate": 1.2,
|
|
302
|
+
"max-scale": 7,
|
|
303
|
+
"min-scale": 0.2,
|
|
304
|
+
"preview-src-list": [
|
|
305
|
+
n($).imageUrl(e.data.row.hairstylePic)
|
|
306
|
+
],
|
|
307
|
+
"preview-teleported": "",
|
|
308
|
+
"hide-on-click-modal": "",
|
|
309
|
+
fit: "contain"
|
|
310
|
+
}, null, 8, ["src", "preview-src-list"])
|
|
311
|
+
])
|
|
312
|
+
]),
|
|
313
|
+
listOrder: o((e) => [
|
|
314
|
+
t(B, {
|
|
315
|
+
class: "box-item",
|
|
316
|
+
effect: "dark",
|
|
317
|
+
content: "下移",
|
|
318
|
+
placement: "top"
|
|
319
|
+
}, {
|
|
320
|
+
default: o(() => [
|
|
321
|
+
t(M, {
|
|
322
|
+
size: "16",
|
|
323
|
+
onClick: (m) => n(s).handleMove(e.data.row, !1)
|
|
324
|
+
}, {
|
|
325
|
+
default: o(() => [
|
|
326
|
+
t(Z)
|
|
327
|
+
]),
|
|
328
|
+
_: 1
|
|
329
|
+
}, 8, ["onClick"])
|
|
330
|
+
]),
|
|
331
|
+
_: 2
|
|
332
|
+
}, 1024),
|
|
333
|
+
t(B, {
|
|
334
|
+
class: "box-item",
|
|
335
|
+
effect: "dark",
|
|
336
|
+
content: "上移",
|
|
337
|
+
placement: "top"
|
|
338
|
+
}, {
|
|
339
|
+
default: o(() => [
|
|
340
|
+
t(M, {
|
|
341
|
+
size: "16",
|
|
342
|
+
onClick: (m) => n(s).handleMove(e.data.row, !0)
|
|
343
|
+
}, {
|
|
344
|
+
default: o(() => [
|
|
345
|
+
t(ee)
|
|
346
|
+
]),
|
|
347
|
+
_: 1
|
|
348
|
+
}, 8, ["onClick"])
|
|
349
|
+
]),
|
|
350
|
+
_: 2
|
|
351
|
+
}, 1024)
|
|
352
|
+
]),
|
|
353
|
+
status: o((e) => [
|
|
354
|
+
f("span", null, [
|
|
355
|
+
t(le, {
|
|
356
|
+
modelValue: e.data.row.status,
|
|
357
|
+
"onUpdate:modelValue": (m) => e.data.row.status = m,
|
|
358
|
+
onChange: (m) => n(s).enableRecord(e.data.row, e.data.row.status)
|
|
359
|
+
}, null, 8, ["modelValue", "onUpdate:modelValue", "onChange"])
|
|
360
|
+
])
|
|
361
|
+
]),
|
|
362
|
+
operation: o((e) => [
|
|
363
|
+
V((u(), C("span", {
|
|
364
|
+
class: "el-button-color",
|
|
365
|
+
onClick: (m) => J(e.data.row)
|
|
366
|
+
}, [
|
|
367
|
+
y(p(a.$t("common.view")), 1)
|
|
368
|
+
], 8, ye)), [
|
|
369
|
+
[k, ["hairstyle:hairstyle_info:view"]]
|
|
370
|
+
]),
|
|
371
|
+
V((u(), C("span", {
|
|
372
|
+
class: "el-button-color dropdown-left",
|
|
373
|
+
onClick: (m) => F(e.data.row)
|
|
374
|
+
}, [
|
|
375
|
+
y(p(a.$t("common.edit")), 1)
|
|
376
|
+
], 8, he)), [
|
|
377
|
+
[k, ["hairstyle:hairstyle_info:update"]]
|
|
378
|
+
]),
|
|
379
|
+
V((u(), C("span", {
|
|
380
|
+
class: "el-button-color dropdown-left",
|
|
381
|
+
onClick: (m) => n(s).deleteRecord(e.data.row)
|
|
382
|
+
}, [
|
|
383
|
+
y(p(a.$t("common.delete")), 1)
|
|
384
|
+
], 8, ve)), [
|
|
385
|
+
[k, ["hairstyle:hairstyle_info:delete"]]
|
|
386
|
+
])
|
|
387
|
+
]),
|
|
388
|
+
_: 1
|
|
389
|
+
}, 8, ["list-loading", "data", "table-label"])
|
|
390
|
+
]),
|
|
391
|
+
_: 1
|
|
392
|
+
}),
|
|
393
|
+
d.value.visible ? (u(), I(pe, {
|
|
394
|
+
key: 0,
|
|
395
|
+
modelValue: d.value.visible,
|
|
396
|
+
"onUpdate:modelValue": l[12] || (l[12] = (e) => d.value.visible = e),
|
|
397
|
+
title: d.value.title,
|
|
398
|
+
"entity-key": n(P),
|
|
399
|
+
onRefresh: R,
|
|
400
|
+
width: "900px"
|
|
401
|
+
}, null, 8, ["modelValue", "title", "entity-key"])) : U("", !0),
|
|
402
|
+
_.value.visible ? (u(), I(de, {
|
|
403
|
+
key: 1,
|
|
404
|
+
modelValue: _.value.visible,
|
|
405
|
+
"onUpdate:modelValue": l[13] || (l[13] = (e) => _.value.visible = e),
|
|
406
|
+
title: _.value.title,
|
|
407
|
+
"entity-key": S.value,
|
|
408
|
+
onRefresh: R,
|
|
409
|
+
width: "900px"
|
|
410
|
+
}, null, 8, ["modelValue", "title", "entity-key"])) : U("", !0)
|
|
411
|
+
]);
|
|
412
|
+
};
|
|
413
|
+
}
|
|
414
|
+
});
|
|
415
|
+
export {
|
|
416
|
+
Ie as default
|
|
417
|
+
};
|
package/dist/index.mjs
ADDED
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { deepMerge as t, addViteMenus as s, i18n as o } from "jmash-core";
|
|
2
|
+
const r = {
|
|
3
|
+
// 发型信息
|
|
4
|
+
hairstyleInfo: {
|
|
5
|
+
name: "发型信息",
|
|
6
|
+
tenantId: "租户号",
|
|
7
|
+
hairstyleId: "发型ID",
|
|
8
|
+
hairstyleName: "发型名称",
|
|
9
|
+
gender: "性别",
|
|
10
|
+
hairstyleModel: "模特发型图",
|
|
11
|
+
hairstylePic: "发型图",
|
|
12
|
+
orderBy: "排序",
|
|
13
|
+
status: "状态"
|
|
14
|
+
}
|
|
15
|
+
}, i = {
|
|
16
|
+
// 发型信息
|
|
17
|
+
hairstyleInfo: {
|
|
18
|
+
name: "发型信息",
|
|
19
|
+
tenantId: "租户号",
|
|
20
|
+
hairstyleId: "发型ID",
|
|
21
|
+
hairstyleName: "发型名称",
|
|
22
|
+
hairstyleNamePlaceholder: "请输入发型名称",
|
|
23
|
+
gender: "性别",
|
|
24
|
+
genderPlaceholder: "请选择性别",
|
|
25
|
+
hairstyleModel: "模特发型图",
|
|
26
|
+
hairstylePic: "发型图",
|
|
27
|
+
prompt: "提示词",
|
|
28
|
+
promptPlaceholder: "请输入提示词",
|
|
29
|
+
orderBy: "排序",
|
|
30
|
+
status: "状态",
|
|
31
|
+
statusPlaceholder: "请选择状态",
|
|
32
|
+
createTime: "创建时间"
|
|
33
|
+
}
|
|
34
|
+
};
|
|
35
|
+
function n(e) {
|
|
36
|
+
let a = e.global.getLocaleMessage("zh-cn");
|
|
37
|
+
a = t(a, i);
|
|
38
|
+
let l = e.global.getLocaleMessage("en");
|
|
39
|
+
l = t(l, r), e.global.setLocaleMessage("zh-cn", a), e.global.setLocaleMessage("en", l);
|
|
40
|
+
}
|
|
41
|
+
const h = /* @__PURE__ */ Object.assign({ "./views/hairstyle/hairstyle-info/edit.vue": () => import("./edit-CBqg1DMz.mjs"), "./views/hairstyle/hairstyle-info/index.vue": () => import("./index-D-Zb3RFd.mjs"), "./views/hairstyle/hairstyle-info/info.vue": () => import("./info-C2BzE-Wh.mjs").then((e) => e.i) }), d = {
|
|
42
|
+
install(e) {
|
|
43
|
+
s(h, 7), n(o);
|
|
44
|
+
}
|
|
45
|
+
};
|
|
46
|
+
export {
|
|
47
|
+
d as default
|
|
48
|
+
};
|
|
@@ -0,0 +1,167 @@
|
|
|
1
|
+
var I = Object.defineProperty;
|
|
2
|
+
var M = (l, e, t) => e in l ? I(l, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : l[e] = t;
|
|
3
|
+
var a = (l, e, t) => M(l, typeof e != "symbol" ? e + "" : e, t);
|
|
4
|
+
import { ref as y, reactive as V, defineComponent as S, useModel as T, resolveComponent as d, openBlock as N, createBlock as k, withCtx as n, createVNode as s, unref as u, createTextVNode as p, toDisplayString as f, mergeModels as x } from "vue";
|
|
5
|
+
import { h as A, _ as j } from "./_plugin-vue_export-helper-DSAIRWI6.mjs";
|
|
6
|
+
import { EnumDict as B, fileApi as m } from "jmash-core";
|
|
7
|
+
class i {
|
|
8
|
+
}
|
|
9
|
+
//模块
|
|
10
|
+
a(i, "MODULE_DICT", "dict"), //字典类型枚举
|
|
11
|
+
a(i, "ENUM_ENTRY_TYPES", "jmash.dict.protobuf.EntryTypes"), // 学历
|
|
12
|
+
a(i, "DICT_DEGREE", "FirstDegree"), // 模块
|
|
13
|
+
a(i, "MODULE_RBAC", "rbac"), // 性别枚举
|
|
14
|
+
a(i, "ENUM_GENDER", "jmash.protobuf.Gender"), // 状态
|
|
15
|
+
a(i, "STATUS_VALUES", y([
|
|
16
|
+
{ key: !0, value: "启用" },
|
|
17
|
+
{ key: !1, value: "禁用" }
|
|
18
|
+
]));
|
|
19
|
+
class O {
|
|
20
|
+
constructor(e, t) {
|
|
21
|
+
a(this, "values", V([]));
|
|
22
|
+
a(this, "query");
|
|
23
|
+
this.values.length = 0, this.values.push(...e.value), this.query = t;
|
|
24
|
+
}
|
|
25
|
+
// 根据给定键获取业务数据项的值的方法
|
|
26
|
+
getValue(e) {
|
|
27
|
+
for (const t of this.values)
|
|
28
|
+
if (t.key == e)
|
|
29
|
+
return t.value;
|
|
30
|
+
return "";
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
class h {
|
|
34
|
+
}
|
|
35
|
+
// 性别枚举
|
|
36
|
+
a(h, "genderEnum", new B(
|
|
37
|
+
i.MODULE_RBAC,
|
|
38
|
+
i.ENUM_GENDER
|
|
39
|
+
)), // 状态字典
|
|
40
|
+
a(h, "statusDict", new O(i.STATUS_VALUES, {}));
|
|
41
|
+
const R = /* @__PURE__ */ S({
|
|
42
|
+
__name: "info",
|
|
43
|
+
props: /* @__PURE__ */ x({
|
|
44
|
+
entityKey: {
|
|
45
|
+
type: Object,
|
|
46
|
+
default: () => {
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
}, {
|
|
50
|
+
modelValue: { type: Boolean },
|
|
51
|
+
modelModifiers: {}
|
|
52
|
+
}),
|
|
53
|
+
emits: ["update:modelValue"],
|
|
54
|
+
setup(l) {
|
|
55
|
+
const e = T(l, "modelValue"), t = l, g = Object.keys(t.entityKey), E = y(g.length >= 1), o = y({});
|
|
56
|
+
E.value && A.findById(t.entityKey).then(({ data: r }) => {
|
|
57
|
+
o.value = r;
|
|
58
|
+
});
|
|
59
|
+
function b() {
|
|
60
|
+
e.value && (e.value = !1);
|
|
61
|
+
}
|
|
62
|
+
return (r, _) => {
|
|
63
|
+
const v = d("el-image"), c = d("el-descriptions-item"), U = d("el-descriptions"), D = d("el-dialog");
|
|
64
|
+
return N(), k(D, {
|
|
65
|
+
modelValue: e.value,
|
|
66
|
+
"onUpdate:modelValue": _[0] || (_[0] = (w) => e.value = w),
|
|
67
|
+
onClose: b
|
|
68
|
+
}, {
|
|
69
|
+
default: n(() => [
|
|
70
|
+
s(U, {
|
|
71
|
+
column: 2,
|
|
72
|
+
border: ""
|
|
73
|
+
}, {
|
|
74
|
+
default: n(() => [
|
|
75
|
+
s(c, {
|
|
76
|
+
label: r.$t("hairstyleInfo.hairstyleModel")
|
|
77
|
+
}, {
|
|
78
|
+
default: n(() => [
|
|
79
|
+
s(v, {
|
|
80
|
+
style: { width: "70px", height: "70px" },
|
|
81
|
+
src: u(m).imageUrl(
|
|
82
|
+
o.value.hairstyleModel,
|
|
83
|
+
void 0,
|
|
84
|
+
70,
|
|
85
|
+
"white"
|
|
86
|
+
),
|
|
87
|
+
"zoom-rate": 1.2,
|
|
88
|
+
"max-scale": 7,
|
|
89
|
+
"min-scale": 0.2,
|
|
90
|
+
"initial-index": 4,
|
|
91
|
+
"preview-src-list": [
|
|
92
|
+
u(m).imageUrl(o.value.hairstyleModel)
|
|
93
|
+
],
|
|
94
|
+
"preview-teleported": "",
|
|
95
|
+
"hide-on-click-modal": "",
|
|
96
|
+
fit: "contain"
|
|
97
|
+
}, null, 8, ["src", "preview-src-list"])
|
|
98
|
+
]),
|
|
99
|
+
_: 1
|
|
100
|
+
}, 8, ["label"]),
|
|
101
|
+
s(c, {
|
|
102
|
+
label: r.$t("hairstyleInfo.hairstylePic")
|
|
103
|
+
}, {
|
|
104
|
+
default: n(() => [
|
|
105
|
+
s(v, {
|
|
106
|
+
style: { width: "70px", height: "70px" },
|
|
107
|
+
src: u(m).imageUrl(
|
|
108
|
+
o.value.hairstylePic,
|
|
109
|
+
void 0,
|
|
110
|
+
70,
|
|
111
|
+
"white"
|
|
112
|
+
),
|
|
113
|
+
"zoom-rate": 1.2,
|
|
114
|
+
"max-scale": 7,
|
|
115
|
+
"min-scale": 0.2,
|
|
116
|
+
"initial-index": 4,
|
|
117
|
+
"preview-src-list": [
|
|
118
|
+
u(m).imageUrl(o.value.hairstylePic)
|
|
119
|
+
],
|
|
120
|
+
"preview-teleported": "",
|
|
121
|
+
"hide-on-click-modal": "",
|
|
122
|
+
fit: "contain"
|
|
123
|
+
}, null, 8, ["src", "preview-src-list"])
|
|
124
|
+
]),
|
|
125
|
+
_: 1
|
|
126
|
+
}, 8, ["label"]),
|
|
127
|
+
s(c, {
|
|
128
|
+
label: r.$t("hairstyleInfo.hairstyleName")
|
|
129
|
+
}, {
|
|
130
|
+
default: n(() => [
|
|
131
|
+
p(f(o.value.hairstyleName), 1)
|
|
132
|
+
]),
|
|
133
|
+
_: 1
|
|
134
|
+
}, 8, ["label"]),
|
|
135
|
+
s(c, {
|
|
136
|
+
label: r.$t("hairstyleInfo.gender")
|
|
137
|
+
}, {
|
|
138
|
+
default: n(() => [
|
|
139
|
+
p(f(u(h).genderEnum.getEnumValue(o.value.gender)), 1)
|
|
140
|
+
]),
|
|
141
|
+
_: 1
|
|
142
|
+
}, 8, ["label"]),
|
|
143
|
+
s(c, {
|
|
144
|
+
label: r.$t("hairstyleInfo.prompt")
|
|
145
|
+
}, {
|
|
146
|
+
default: n(() => [
|
|
147
|
+
p(f(o.value.prompt), 1)
|
|
148
|
+
]),
|
|
149
|
+
_: 1
|
|
150
|
+
}, 8, ["label"])
|
|
151
|
+
]),
|
|
152
|
+
_: 1
|
|
153
|
+
})
|
|
154
|
+
]),
|
|
155
|
+
_: 1
|
|
156
|
+
}, 8, ["modelValue"]);
|
|
157
|
+
};
|
|
158
|
+
}
|
|
159
|
+
}), L = /* @__PURE__ */ j(R, [["__scopeId", "data-v-1e87fd47"]]), C = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
160
|
+
__proto__: null,
|
|
161
|
+
default: L
|
|
162
|
+
}, Symbol.toStringTag, { value: "Module" }));
|
|
163
|
+
export {
|
|
164
|
+
h as D,
|
|
165
|
+
L as h,
|
|
166
|
+
C as i
|
|
167
|
+
};
|
package/dist/style.css
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.position-center[data-v-a419856c]{position:absolute;right:0;top:30%;transform:translateY(-30%)}.plus-position[data-v-a419856c]{position:absolute;right:0;top:0;margin-top:8px}[data-v-1e87fd47] .el-descriptions__label{width:150px}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
declare const _default: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
2
|
+
export default _default;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { AxiosPromise } from "axios";
|
|
2
|
+
import type { HairstyleInfoApi, HairstyleInfoReq, HairstyleInfoModel, HairstyleInfoPage, HairstyleInfoKey, HairstyleInfoCreateReq, HairstyleInfoUpdateReq } from "./types";
|
|
3
|
+
declare class HairstyleInfoApiImpl implements HairstyleInfoApi {
|
|
4
|
+
getKey(model: HairstyleInfoModel): HairstyleInfoKey;
|
|
5
|
+
findPage(query?: HairstyleInfoReq): AxiosPromise<HairstyleInfoPage>;
|
|
6
|
+
findById(query: HairstyleInfoKey): AxiosPromise<HairstyleInfoModel>;
|
|
7
|
+
create(data: HairstyleInfoCreateReq): AxiosPromise<HairstyleInfoModel>;
|
|
8
|
+
update(data: HairstyleInfoUpdateReq): AxiosPromise<HairstyleInfoModel>;
|
|
9
|
+
move(key: HairstyleInfoKey, up: boolean): AxiosPromise<boolean>;
|
|
10
|
+
enable(key: HairstyleInfoKey, enable: boolean): AxiosPromise<boolean>;
|
|
11
|
+
delete(query: HairstyleInfoKey): AxiosPromise<HairstyleInfoModel>;
|
|
12
|
+
batchDelete(keys: HairstyleInfoKey[]): AxiosPromise<number>;
|
|
13
|
+
}
|
|
14
|
+
declare const hairstyleInfoApi: HairstyleInfoApiImpl;
|
|
15
|
+
export { hairstyleInfoApi };
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import type { EntityApi, EntityReq, EntityModel, EntityList, EntityPage, EntityTotal, EntityKey, EntityKeyList, EntityCreateReq, EntityUpdateReq, EntityExportReq, EntityImportReq } from "jmash-core";
|
|
2
|
+
export interface HairstyleInfoApi extends EntityApi {
|
|
3
|
+
}
|
|
4
|
+
export interface HairstyleInfoReq extends EntityReq {
|
|
5
|
+
like_hairstyle_name?: string;
|
|
6
|
+
hasGender?: boolean;
|
|
7
|
+
gender?: string;
|
|
8
|
+
hasStatus?: boolean;
|
|
9
|
+
status?: boolean;
|
|
10
|
+
}
|
|
11
|
+
export interface HairstyleInfoModel extends EntityModel {
|
|
12
|
+
tenantId?: string;
|
|
13
|
+
hairstyleId?: string;
|
|
14
|
+
hairstyleName?: string;
|
|
15
|
+
gender?: string;
|
|
16
|
+
hairstyleModel?: string;
|
|
17
|
+
hairstylePic?: string;
|
|
18
|
+
prompt?: string;
|
|
19
|
+
orderBy?: number;
|
|
20
|
+
status?: boolean;
|
|
21
|
+
version?: number;
|
|
22
|
+
createBy?: string;
|
|
23
|
+
createTime?: string;
|
|
24
|
+
updateBy?: string;
|
|
25
|
+
updateTime?: string;
|
|
26
|
+
}
|
|
27
|
+
export interface HairstyleInfoList extends EntityList {
|
|
28
|
+
results: Array<HairstyleInfoModel>;
|
|
29
|
+
}
|
|
30
|
+
export interface HairstyleInfoPage extends EntityPage {
|
|
31
|
+
results: Array<HairstyleInfoModel>;
|
|
32
|
+
subTotalDto: HairstyleInfoModelTotal;
|
|
33
|
+
totalDto: HairstyleInfoModelTotal;
|
|
34
|
+
}
|
|
35
|
+
export interface HairstyleInfoModelTotal extends EntityTotal {
|
|
36
|
+
totalSize: number;
|
|
37
|
+
}
|
|
38
|
+
export interface HairstyleInfoKey extends EntityKey {
|
|
39
|
+
tenant?: string;
|
|
40
|
+
hairstyleId?: string;
|
|
41
|
+
}
|
|
42
|
+
export interface HairstyleInfoKeyList extends EntityKeyList {
|
|
43
|
+
tenant?: string;
|
|
44
|
+
hairstyleId?: Array<string>;
|
|
45
|
+
}
|
|
46
|
+
export interface HairstyleInfoCreateReq extends EntityCreateReq {
|
|
47
|
+
hairstyleName?: string;
|
|
48
|
+
gender?: string;
|
|
49
|
+
hairstyleModel?: string;
|
|
50
|
+
hairstylePic?: string;
|
|
51
|
+
prompt?: string;
|
|
52
|
+
}
|
|
53
|
+
export interface HairstyleInfoUpdateReq extends EntityUpdateReq {
|
|
54
|
+
hairstyleId?: string;
|
|
55
|
+
hairstyleName?: string;
|
|
56
|
+
gender?: string;
|
|
57
|
+
hairstyleModel?: string;
|
|
58
|
+
hairstylePic?: string;
|
|
59
|
+
prompt?: string;
|
|
60
|
+
}
|
|
61
|
+
export type HairstyleInfoFormReq = HairstyleInfoCreateReq | HairstyleInfoUpdateReq;
|
|
62
|
+
export interface HairstyleInfoExportReq extends EntityExportReq {
|
|
63
|
+
req: HairstyleInfoReq;
|
|
64
|
+
}
|
|
65
|
+
export interface HairstyleInfoImportReq extends EntityImportReq {
|
|
66
|
+
}
|
|
67
|
+
export interface HairstyleInfoMoveKey {
|
|
68
|
+
tenant?: string;
|
|
69
|
+
hairstyleId?: string;
|
|
70
|
+
up?: boolean;
|
|
71
|
+
}
|
|
72
|
+
export interface HairstyleInfoEnableKey {
|
|
73
|
+
tenant?: string;
|
|
74
|
+
hairstyleId?: string;
|
|
75
|
+
enable?: boolean;
|
|
76
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export declare class Constant {
|
|
2
|
+
static readonly MODULE_DICT = "dict";
|
|
3
|
+
static readonly ENUM_ENTRY_TYPES = "jmash.dict.protobuf.EntryTypes";
|
|
4
|
+
static readonly DICT_DEGREE = "FirstDegree";
|
|
5
|
+
static readonly MODULE_RBAC = "rbac";
|
|
6
|
+
static readonly ENUM_GENDER = "jmash.protobuf.Gender";
|
|
7
|
+
static readonly STATUS_VALUES: import("vue").Ref<{
|
|
8
|
+
key: boolean;
|
|
9
|
+
value: string;
|
|
10
|
+
}[], {
|
|
11
|
+
key: boolean;
|
|
12
|
+
value: string;
|
|
13
|
+
}[] | {
|
|
14
|
+
key: boolean;
|
|
15
|
+
value: string;
|
|
16
|
+
}[]>;
|
|
17
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
declare const _default: {
|
|
2
|
+
hairstyleInfo: {
|
|
3
|
+
name: string;
|
|
4
|
+
tenantId: string;
|
|
5
|
+
hairstyleId: string;
|
|
6
|
+
hairstyleName: string;
|
|
7
|
+
gender: string;
|
|
8
|
+
hairstyleModel: string;
|
|
9
|
+
hairstylePic: string;
|
|
10
|
+
orderBy: string;
|
|
11
|
+
status: string;
|
|
12
|
+
};
|
|
13
|
+
};
|
|
14
|
+
export default _default;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
declare const _default: {
|
|
2
|
+
hairstyleInfo: {
|
|
3
|
+
name: string;
|
|
4
|
+
tenantId: string;
|
|
5
|
+
hairstyleId: string;
|
|
6
|
+
hairstyleName: string;
|
|
7
|
+
hairstyleNamePlaceholder: string;
|
|
8
|
+
gender: string;
|
|
9
|
+
genderPlaceholder: string;
|
|
10
|
+
hairstyleModel: string;
|
|
11
|
+
hairstylePic: string;
|
|
12
|
+
prompt: string;
|
|
13
|
+
promptPlaceholder: string;
|
|
14
|
+
orderBy: string;
|
|
15
|
+
status: string;
|
|
16
|
+
statusPlaceholder: string;
|
|
17
|
+
createTime: string;
|
|
18
|
+
};
|
|
19
|
+
};
|
|
20
|
+
export default _default;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function loadLang(i18n: any): void;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import "nprogress/nprogress.css";
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { type PropType } from "vue";
|
|
2
|
+
import type { HairstyleInfoKey } from "@/api/hairstyle/hairstyle-info/types";
|
|
3
|
+
declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
|
4
|
+
entityKey: {
|
|
5
|
+
type: PropType<HairstyleInfoKey>;
|
|
6
|
+
default: () => void;
|
|
7
|
+
};
|
|
8
|
+
modelValue: {
|
|
9
|
+
type: PropType<boolean>;
|
|
10
|
+
};
|
|
11
|
+
}>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
12
|
+
refresh: (...args: any[]) => void;
|
|
13
|
+
"update:modelValue": (value: boolean | undefined) => void;
|
|
14
|
+
}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
|
15
|
+
entityKey: {
|
|
16
|
+
type: PropType<HairstyleInfoKey>;
|
|
17
|
+
default: () => void;
|
|
18
|
+
};
|
|
19
|
+
modelValue: {
|
|
20
|
+
type: PropType<boolean>;
|
|
21
|
+
};
|
|
22
|
+
}>> & Readonly<{
|
|
23
|
+
onRefresh?: ((...args: any[]) => any) | undefined;
|
|
24
|
+
"onUpdate:modelValue"?: ((value: boolean | undefined) => any) | undefined;
|
|
25
|
+
}>, {
|
|
26
|
+
entityKey: HairstyleInfoKey;
|
|
27
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
28
|
+
export default _default;
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
declare const _default: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
2
|
+
export default _default;
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { type PropType } from "vue";
|
|
2
|
+
import type { HairstyleInfoKey } from "@/api/hairstyle/hairstyle-info/types";
|
|
3
|
+
declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
|
4
|
+
entityKey: {
|
|
5
|
+
type: PropType<HairstyleInfoKey>;
|
|
6
|
+
default: () => void;
|
|
7
|
+
};
|
|
8
|
+
modelValue: {
|
|
9
|
+
type: PropType<boolean>;
|
|
10
|
+
};
|
|
11
|
+
}>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
12
|
+
"update:modelValue": (value: boolean | undefined) => any;
|
|
13
|
+
}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
|
14
|
+
entityKey: {
|
|
15
|
+
type: PropType<HairstyleInfoKey>;
|
|
16
|
+
default: () => void;
|
|
17
|
+
};
|
|
18
|
+
modelValue: {
|
|
19
|
+
type: PropType<boolean>;
|
|
20
|
+
};
|
|
21
|
+
}>> & Readonly<{
|
|
22
|
+
"onUpdate:modelValue"?: ((value: boolean | undefined) => any) | undefined;
|
|
23
|
+
}>, {
|
|
24
|
+
entityKey: HairstyleInfoKey;
|
|
25
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
26
|
+
export default _default;
|
package/package.json
ADDED
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "xyvcard-hairstyle",
|
|
3
|
+
"version": "0.0.1",
|
|
4
|
+
"private": false,
|
|
5
|
+
"module": "dist/index.mjs",
|
|
6
|
+
"types": "dts/src/index.d.ts",
|
|
7
|
+
"files": [
|
|
8
|
+
"dist",
|
|
9
|
+
"dts/src"
|
|
10
|
+
],
|
|
11
|
+
"peerDependencies": {
|
|
12
|
+
"axios": "^1.9.0",
|
|
13
|
+
"element-plus": "^2.11.5",
|
|
14
|
+
"pinia": "^2.3.1",
|
|
15
|
+
"vue": "^3.5.13",
|
|
16
|
+
"vue-i18n": "^9.14.4",
|
|
17
|
+
"vue-router": "^4.5.1",
|
|
18
|
+
"jmash-core": "^0.1.42",
|
|
19
|
+
"jmash-dict": "^0.1.6",
|
|
20
|
+
"jmash-rbac": "^0.1.28"
|
|
21
|
+
},
|
|
22
|
+
"devDependencies": {
|
|
23
|
+
"@eslint/js": "^9.14.0",
|
|
24
|
+
"@tsconfig/node20": "^20.1.2",
|
|
25
|
+
"@types/node": "^20.11.10",
|
|
26
|
+
"@vitejs/plugin-vue": "^5.0.3",
|
|
27
|
+
"@vue/tsconfig": "^0.5.1",
|
|
28
|
+
"eslint": "^9.14.0",
|
|
29
|
+
"eslint-plugin-vue": "^9.30.0",
|
|
30
|
+
"globals": "^15.12.0",
|
|
31
|
+
"npm-run-all2": "^6.1.1",
|
|
32
|
+
"prettier": "^3.0.3",
|
|
33
|
+
"sass": "^1.72.0",
|
|
34
|
+
"typescript": "~5.3.0",
|
|
35
|
+
"typescript-eslint": "^8.13.0",
|
|
36
|
+
"unplugin-auto-import": "^0.17.5",
|
|
37
|
+
"unplugin-vue-components": "^0.26.0",
|
|
38
|
+
"vite": "^5.0.11",
|
|
39
|
+
"vue-tsc": "^2.1.10"
|
|
40
|
+
},
|
|
41
|
+
"dependencies": {
|
|
42
|
+
"file-saver": "^2.0.5",
|
|
43
|
+
"nprogress": "^0.2.0",
|
|
44
|
+
"@vueuse/core": "^10.9.0",
|
|
45
|
+
"qs": "^6.14.0"
|
|
46
|
+
},
|
|
47
|
+
"scripts": {
|
|
48
|
+
"dev": "vite",
|
|
49
|
+
"build": "vite build && pnpm build:dts",
|
|
50
|
+
"build:dts": "vue-tsc --declaration --emitDeclarationOnly",
|
|
51
|
+
"preview": "vite preview",
|
|
52
|
+
"build-only": "vite build",
|
|
53
|
+
"type-check": "vue-tsc --build --force",
|
|
54
|
+
"lint": "eslint . --ext .vue,.js,.jsx,.cjs,.mjs,.ts,.tsx,.cts,.mts --fix --ignore-path .gitignore",
|
|
55
|
+
"format": "prettier --write src/"
|
|
56
|
+
}
|
|
57
|
+
}
|