feat: 更新数据表及样式编辑页面

- 在serial.csv、cost.csv和dict.csv中添加新数据记录
- 更新role-edit.vue和style-edit.vue中的图标和表格模板
- 在style-edit.component.ts中新增processTypes和settingTypes的加载逻辑
This commit is contained in:
user 2025-04-13 00:03:26 +08:00
parent 4359af9aa5
commit ef1d4bdd55
6 changed files with 78 additions and 12 deletions

View File

@ -1,4 +1,5 @@
id;number;name;mat_group;mat_type;process;quality;depart;product_type;style_no;order_no;lost_type;lost_rate;unit_labor;unit_hour;property;remark;status;sort_no;organization;created_by;created_date;updated_by;updated_date;version
1;C001;18K金石料;GD;RM;FL;LQ;d005;RN;S001;O001;1;0.02;100;1.5;{"color":"yellow"};测试数据;1;1;ORG001;admin;2024-01-24 10:00:00;admin;2025-04-04 09:54:30;5
2;C002;PT950石料;PT;RM;抛光;NQ;d006;项链;S002;O002;2;0.025;150;2.5;{"purity":"95%"};测试数据;1;2;ORG001;admin;2024-01-24 10:00:00;admin;2025-04-04 09:55:08;5
3;C003;925银石料;SL;RP;打磨;HQ;d004;手链;S003;O003;3;0.015;80;2.3;{"finish":"high"};测试数据;1;3;ORG001;admin;2024-01-24 10:00:00;admin;2025-04-04 09:55:35;2
1;C001;18K金石料;GD;RM;FL;LQ;d005;RN;S001;O001;1;0.02;100;1.5;{"color":"yellow"};测试数据;1;1;ORG001;admin;2024-01-24 10:00:00;admin;2025-04-12 22:26:01;6
2;C002;PT950石料;PT;RM;PL;NQ;d006;项链;S002;O002;2;0.025;150;2.5;{"purity":"95%"};测试数据;1;2;ORG001;admin;2024-01-24 10:00:00;admin;2025-04-12 22:26:12;6
3;C003;925银石料;SL;RP;ST;HQ;d004;手链;S003;O003;3;0.015;80;2.3;{"finish":"high"};测试数据;1;3;ORG001;admin;2024-01-24 10:00:00;admin;2025-04-12 22:26:29;3
4;NDD1STNQ00001;爪镶钻石D1;ND;D1;ST;NQ;d001;RN;;;;0;0;0;;;1;0;ORG001;admin;2025-04-12 22:30:59;admin;2025-04-12 22:30:59;0

Can't render this file because it contains an unexpected character in line 2 and column 67.

View File

@ -172,3 +172,13 @@ id;number;parent_number;name;property;remark;status;sort_no;organization;created
184;E;DataScope;修改;;EDIT;1;5;ORG001;admin;2025-04-07 11:31:17;admin;2025-04-07 11:31:17;0
185;D;DataScope;删除;{"color":"danger"};DELETE;1;5;ORG001;admin;2025-04-07 11:31:17;admin;2025-04-07 11:31:17;0
186;P;DataScope;打印;;PRINT;1;5;ORG001;admin;2025-04-07 11:31:17;admin;2025-04-07 11:31:17;0
187;*;ProductType;*;;;1;0;ORG001;admin;2025-04-12 22:33:11;admin;2025-04-12 22:33:11;0
188;SettingType;;镶嵌类别;;;1;0;ORG001;admin;2025-04-12 22:34:14;admin;2025-04-12 22:34:14;0
189;PR;SettingType;爪镶;;;1;0;ORG001;admin;2025-04-12 22:37:04;admin;2025-04-12 22:37:04;0
190;BZ;SettingType;包镶;;;1;0;ORG001;admin;2025-04-12 22:37:20;admin;2025-04-12 22:37:20;0
191;MP;SettingType;微镶;;;1;0;ORG001;admin;2025-04-12 22:37:32;admin;2025-04-12 22:37:32;0
192;CS;SettingType;钉镶;;;1;0;ORG001;admin;2025-04-12 22:38:00;admin;2025-04-12 22:38:00;0
193;CH;SettingType;迫镶;;;1;0;ORG001;admin;2025-04-12 22:38:52;admin;2025-04-12 22:38:52;0
194;GS;SettingType;粘镶;;;1;0;ORG001;admin;2025-04-12 22:39:21;admin;2025-04-12 22:39:21;0
195;IS;SettingType;无边镶;;;1;0;ORG001;admin;2025-04-12 22:39:43;admin;2025-04-12 22:39:43;0
196;FS;SettingType;面镶;;;1;0;ORG001;admin;2025-04-12 22:42:14;admin;2025-04-12 22:42:14;0

Can't render this file because it contains an unexpected character in line 13 and column 31.

View File

@ -4,3 +4,4 @@ id;number;name;serial_number;property;remark;status;sort_no;organization;created
3;SER003;物料流水号;1;;物料编号;1;3;ORG001;system;2024-03-25 00:00:00;;;0
4;SER004;成本流水号;1;;成本编号;1;4;ORG001;system;2024-03-25 00:00:00;;;0
5;SER005;交收流水号;1;;交收编号;1;5;ORG001;system;2024-03-25 00:00:00;;;0
6;NDD1STNQ;NDD1STNQ;1;;;1;;ORG001;admin;2025-04-12 22:30:59;admin;2025-04-12 22:30:59;0

1 id number name serial_number property remark status sort_no organization created_by created_date updated_by updated_date version
4 3 SER003 物料流水号 1 物料编号 1 3 ORG001 system 2024-03-25 00:00:00 0
5 4 SER004 成本流水号 1 成本编号 1 4 ORG001 system 2024-03-25 00:00:00 0
6 5 SER005 交收流水号 1 交收编号 1 5 ORG001 system 2024-03-25 00:00:00 0
7 6 NDD1STNQ NDD1STNQ 1 1 ORG001 admin 2025-04-12 22:30:59 admin 2025-04-12 22:30:59 0

View File

@ -57,7 +57,7 @@
</vxe-form>
<vxe-tabs v-model="activeTab">
<vxe-tab-pane name="menu" :title="$t('jewpmsApp.role.menu.title')" icon="list">
<vxe-tab-pane name="menu" :title="$t('jewpmsApp.role.menu.title')" icon="vxe-icon-menu">
<vxe-tree
ref="menuTree"
v-model:check-node-keys="checkNodeKeys"
@ -76,7 +76,7 @@
</template>
</vxe-tree>
</vxe-tab-pane>
<vxe-tab-pane name="api" :title="$t('jewpmsApp.role.api.title')" icon="shield"> 内容2 </vxe-tab-pane>
<vxe-tab-pane name="api" :title="$t('jewpmsApp.role.api.title')" icon="vxe-icon-swap"> 内容2 </vxe-tab-pane>
</vxe-tabs>
</div>
</div>

View File

@ -19,6 +19,8 @@ export default defineComponent({
const loading = ref(false);
const isSaving = ref(false);
const productTypes = ref([]);
const processTypes = ref([]);
const settingTypes = ref([]);
const baseDtls = ref([]);
const settingDtls = ref([]);
const activeTab = ref('base');
@ -86,8 +88,11 @@ export default defineComponent({
try {
const { data } = await axios.get('api/dicts', {
params: {
parentNumber: 'PRODUCTTYPE',
status: '1',
number: { name: '' },
name: { name: '' },
property: { name: '' },
parentNumber: { op: '=', value: 'ProductType' },
status: { op: '=', value: '1' },
},
});
productTypes.value = data;
@ -99,7 +104,38 @@ export default defineComponent({
const loadData = async () => {
loading.value = true;
try {
await loadProductTypes();
const [productTypesRes, processTypesRes, settingTypesRes] = await Promise.all([
axios.get('api/dicts', {
params: {
number: { name: '' },
name: { name: '' },
property: { name: '' },
parentNumber: { op: '=', value: 'ProductType' },
status: { op: '=', value: '1' },
},
}),
axios.get('api/dicts', {
params: {
number: { name: '' },
name: { name: '' },
property: { name: '' },
parentNumber: { op: '=', value: 'ProcessType' },
status: { op: '=', value: '1' },
},
}),
axios.get('api/dicts', {
params: {
number: { name: '' },
name: { name: '' },
property: { name: '' },
parentNumber: { op: '=', value: 'SettingType' },
status: { op: '=', value: '1' },
},
}),
]);
productTypes.value = productTypesRes.data;
processTypes.value = processTypesRes.data;
settingTypes.value = settingTypesRes.data;
const id = route.params?.id;
if (id) {
const { data } = await axios.get(`api/styles/${id}`);
@ -224,6 +260,8 @@ export default defineComponent({
isSaving,
style,
productTypes,
processTypes,
settingTypes,
baseDtls,
settingDtls,
styleForm,

View File

@ -128,7 +128,7 @@
</vxe-form>
<vxe-tabs v-model="activeTab">
<vxe-tab-pane name="base" :title="$t('jewpmsApp.style.base.title')" icon="list">
<vxe-tab-pane name="base" :title="$t('jewpmsApp.style.base.title')" icon="vxe-icon-custom-column">
<vxe-table v-if="baseDtls && baseDtls.length > 0" :data="baseDtls" stripe>
<vxe-column type="seq" width="50"></vxe-column>
<vxe-column
@ -138,10 +138,18 @@
:title="$t(column.title)"
:sortable="column.sortable"
:width="column.width"
></vxe-column>
>
<template #default="{ row }" v-if="column.field === 'process'">
{{ processTypes.find(s => s.number === String(row.process))?.name || row.process }}
</template>
<template #header="{ column }" v-else-if="column.title === 'entity.action.actions'">
<span>{{ column.title }}</span>
<vxe-button mode="text" icon="vxe-icon-square-plus-square" @click="openCustomEvent"></vxe-button>
</template>
</vxe-column>
</vxe-table>
</vxe-tab-pane>
<vxe-tab-pane name="setting" :title="$t('jewpmsApp.style.setting.title')" icon="shield">
<vxe-tab-pane name="setting" :title="$t('jewpmsApp.style.setting.title')" icon="vxe-icon-edit">
<vxe-table v-if="settingDtls && settingDtls.length > 0" :data="settingDtls" stripe>
<vxe-column type="seq" width="50"></vxe-column>
<vxe-column
@ -151,7 +159,15 @@
:title="$t(column.title)"
:sortable="column.sortable"
:width="column.width"
></vxe-column>
>
<template #default="{ row }" v-if="column.field === 'process'">
{{ settingTypes.find(s => s.number === String(row.process))?.name || row.process }}
</template>
<template #header="{ column }" v-else-if="column.title === 'entity.action.actions'">
<span>{{ column.title }}</span>
<vxe-button mode="text" icon="vxe-icon-square-plus-square" @click="openCustomEvent"></vxe-button>
</template>
</vxe-column>
</vxe-table>
</vxe-tab-pane>
</vxe-tabs>