Compare commits

...

4 Commits

Author SHA1 Message Date
A0066811 cf2d0c8d00 hgwms-2098 fix 定时设置弹窗修改 2025-11-07 10:59:24 +08:00
A0066811 4efee0ebad hgwms-2098 fix 托盘信息管理弹窗修改 2025-11-07 10:16:12 +08:00
A0066811 87e3bdf933 hgwms-2098 fix 物料分类弹窗修改 2025-11-07 09:56:41 +08:00
A0066811 ce4105b45c hgwms-2098 fix 物料主档弹窗修改 2025-11-07 09:52:25 +08:00
8 changed files with 901 additions and 679 deletions

View File

@ -11,9 +11,9 @@
ref="formRef"
:model="formState"
:rules="formRules"
:label-col="labelCol"
:wrapper-col="wrapperCol"
layout="vertical"
>
<a-col :span="24">
<a-form-item ref="name" label="名称" name="name">
<a-input v-model:value="formState.name" />
</a-form-item>
@ -32,6 +32,7 @@
<a-form-item label="备注" name="remark">
<a-textarea v-model:value="formState.remark" />
</a-form-item>
</a-col>
</a-form>
</a-modal>
</template>

View File

@ -8,30 +8,31 @@
@cancel="cancel"
>
<a-form
ref="formRef"
ref="formRef"
:model="formState"
:rules="formRules"
:label-col="labelCol"
:wrapper-col="wrapperCol"
layout="vertical"
>
<a-form-item ref="name" label="名称" name="name">
<a-input v-model:value="formState.name" />
</a-form-item>
<a-form-item ref="beanName" label="目标" name="beanName">
<a-input v-model:value="formState.beanName" />
</a-form-item>
<a-form-item ref="param" label="参数" name="param">
<a-input v-model:value="formState.param" />
</a-form-item>
<a-form-item ref="cronExpression" label="cron" name="cronExpression">
<a-input v-model:value="formState.cronExpression" />
</a-form-item>
<a-form-item label="状态" name="enable">
<a-switch v-model:checked="formState.enable" />
</a-form-item>
<a-form-item label="备注" name="remark">
<a-textarea v-model:value="formState.remark" />
</a-form-item>
<a-col :span="24">
<a-form-item ref="name" label="名称" name="name">
<a-input v-model:value="formState.name" />
</a-form-item>
<a-form-item ref="beanName" label="目标" name="beanName">
<a-input v-model:value="formState.beanName" />
</a-form-item>
<a-form-item ref="param" label="参数" name="param">
<a-input v-model:value="formState.param" />
</a-form-item>
<a-form-item ref="cronExpression" label="cron" name="cronExpression">
<a-input v-model:value="formState.cronExpression" />
</a-form-item>
<a-form-item label="状态" name="enable">
<a-switch v-model:checked="formState.enable" />
</a-form-item>
<a-form-item label="备注" name="remark">
<a-textarea v-model:value="formState.remark" />
</a-form-item>
</a-col>
</a-form>
</a-modal>
</template>
@ -44,26 +45,25 @@ export default defineComponent({
},
record: {
type: Object,
}
},
},
emit: ["close"],
setup(props, context) {
const formRef = ref();
const formState = reactive({});
watch(props, (props) => {
formState.id = props.record.id
formState.name = props.record.name
formState.beanName = props.record.beanName
formState.param = props.record.param
formState.cronExpression = props.record.cronExpression
formState.remark = props.record.remark
formState.enable = props.record.enable
})
formState.id = props.record.id;
formState.name = props.record.name;
formState.beanName = props.record.beanName;
formState.param = props.record.param;
formState.cronExpression = props.record.cronExpression;
formState.remark = props.record.remark;
formState.enable = props.record.enable;
});
const formRules = { };
const formRules = {};
const submit = (e) => {
formRef.value.resetFields();

View File

@ -8,86 +8,109 @@
@cancel="cancel"
>
<a-form
ref="formRef"
ref="formRef"
:model="formState"
:rules="formRules"
:label-col="labelCol"
:wrapper-col="wrapperCol"
layout="vertical"
>
<a-form-item ref="name" label="名称" name="name">
<a-input v-model:value="formState.name" />
</a-form-item>
<a-form-item ref="beanName" label="目标" name="beanName">
<a-input v-model:value="formState.beanName" />
</a-form-item>
<a-form-item ref="param" label="参数" name="param">
<a-input v-model:value="formState.param" />
</a-form-item>
<a-form-item ref="cronExpression" label="cron" name="cronExpression">
<cron @onChange="(val)=>{formState.cronExpression = val}"/>
</a-form-item>
<a-form-item label="状态" name="enable">
<a-switch v-model:checked="formState.enable" />
</a-form-item>
<a-form-item label="备注" name="remark">
<a-textarea v-model:value="formState.remark" />
</a-form-item>
<a-row :gutter="[16, 0]">
<a-col :span="24">
<a-form-item ref="name" label="名称" name="name">
<a-input v-model:value="formState.name" />
</a-form-item>
</a-col>
<a-col :span="24">
<a-form-item ref="beanName" label="目标" name="beanName">
<a-input v-model:value="formState.beanName" />
</a-form-item>
</a-col>
<a-col :span="24">
<a-form-item ref="param" label="参数" name="param">
<a-input v-model:value="formState.param" />
</a-form-item>
</a-col>
<a-col :span="24">
<a-form-item ref="cronExpression" label="cron" name="cronExpression">
<cron
@onChange="
(val) => {
formState.cronExpression = val;
}
"
/>
</a-form-item>
</a-col>
<a-col :span="24">
<a-form-item label="状态" name="enable">
<a-switch v-model:checked="formState.enable" />
</a-form-item>
</a-col>
<a-col :span="24">
<a-form-item label="备注" name="remark">
<a-textarea v-model:value="formState.remark" />
</a-form-item>
</a-col>
</a-row>
</a-form>
</a-modal>
</template>
<script>
import {message} from '@hwork/ant-design-vue';
import {save} from "@/api/module/job";
import {defineComponent, reactive, ref, toRaw} from "vue";
import cron from "../cron/index.vue";
import { message } from "@hwork/ant-design-vue";
import { save } from "@/api/module/job";
import { defineComponent, reactive, ref, toRaw } from "vue";
import cron from "../cron/index.vue";
export default defineComponent({
components: {
cron
export default defineComponent({
components: {
cron,
},
props: {
visible: {
type: Boolean,
},
props: {
visible: {
type: Boolean,
},
},
emit: ["close"],
setup(props, context) {
},
emit: ["close"],
setup(props, context) {
const formRef = ref();
const formRef = ref();
const formState = reactive({
enable: true,
cronExpression: "* * * * * ? *",
});
const formState = reactive({
enable: true,
cronExpression: "* * * * * ? *",
});
const formRules = {
name: [{ required: true, message: "请输入任务名称", trigger: "blur" }],
beanName: [
{ required: true, message: "请输入任务目标", trigger: "blur" },
],
cronExpression: [{ required: true, message: "请输入任务周期" }],
};
const formRules = {
name: [{required: true, message: '请输入任务名称', trigger: 'blur'}],
beanName: [{required: true, message: '请输入任务目标', trigger: 'blur'}],
cronExpression: [{required: true, message: '请输入任务周期'}]
};
const saveKey = "save";
const saveKey = "save";
const submit = (e) => {
formRef.value
.validate()
.then(() => {
message.loading({content: '提交中...', key: saveKey});
save(toRaw(formState)).then((response) => {
if (response.success) {
message.success({content: '保存成功', key: saveKey, duration: 1}).then(() => {
const submit = (e) => {
formRef.value
.validate()
.then(() => {
message.loading({ content: "提交中...", key: saveKey });
save(toRaw(formState)).then((response) => {
if (response.success) {
message
.success({ content: "保存成功", key: saveKey, duration: 1 })
.then(() => {
cancel();
});
} else {
message.success({content: '保存失败', key: saveKey, duration: 1}).then(() => {
} else {
message
.success({ content: "保存失败", key: saveKey, duration: 1 })
.then(() => {
cancel();
});
}
});
})
.catch(error => {
console.log('error', error);
}
});
})
.catch((error) => {
console.log("error", error);
});
};

View File

@ -1,31 +1,79 @@
<template>
<a-modal :open="visible" title="修改物料信息" cancelText="取消" okText="提交" @ok="submit" @cancel="cancel">
<a-form ref="formRef" :model="formState" :rules="formRules" :label-col="labelCol" :wrapper-col="wrapperCol">
<a-form-item ref="skuCode" label="物料编号" name="skuCode">
<a-input v-model:value="formState.skuCode" placeholder="请输入物料编号" :disabled="true"/>
</a-form-item>
<a-form-item ref="skuName" label="物料名称" name="skuName">
<a-input v-model:value="formState.skuName" placeholder="请输入物料名称" />
</a-form-item>
<!-- <a-form-item ref="barCode" label="条码" name="barCode">
<a-modal
:open="visible"
title="修改物料信息"
cancelText="取消"
okText="提交"
@ok="submit"
@cancel="cancel"
>
<a-form
ref="formRef"
:model="formState"
:rules="formRules"
layout="vertical"
>
<a-row :gutter="[16, 0]">
<a-col :span="12">
<a-form-item ref="skuCode" label="物料编号" name="skuCode">
<a-input
v-model:value="formState.skuCode"
placeholder="请输入物料编号"
:disabled="true"
/>
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item ref="skuName" label="物料名称" name="skuName">
<a-input
v-model:value="formState.skuName"
placeholder="请输入物料名称"
/>
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item label="ABC分类" name="abc">
<a-select
v-model:value="formState.abc"
:options="skuAbc"
placeholder="请选择ABC分类"
>
</a-select>
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item ref="baseUnit" label="库存单位" name="baseUnit">
<a-input
v-model:value="formState.baseUnit"
placeholder="请选择库存单位"
:disabled="true"
/>
</a-form-item>
</a-col>
<a-col :span="24">
<a-form-item ref="remark" label="备注" name="remark">
<a-textarea
v-model:value="formState.remark"
laceholder="请输入备注"
/>
</a-form-item>
</a-col>
</a-row>
<!-- <a-form-item ref="barCode" label="条码" name="barCode">
<a-input v-model:value="formState.barCode" placeholder="请输入条码" />
</a-form-item> -->
<a-form-item label="ABC分类" name="abc">
<a-select v-model:value="formState.abc" :options="skuAbc" placeholder="请选择ABC分类">
</a-select>
</a-form-item>
<!-- <a-form-item ref="categoryCode" label="种类编号" name="categoryCode">
<a-input v-model:value="formState.categoryCode" placeholder="请选择种类编号" />
</a-form-item> -->
<!-- <a-form-item label="种类名称" name="categoryName">
<!-- <a-form-item label="种类名称" name="categoryName">
<a-select v-model:value="formState.categoryName" :options="skuCategoryName" placeholder="请选择种类名称">
<a-select-option value="成品">成品</a-select-option>
<a-select-option value="原材料">原材料</a-select-option>
</a-select>
</a-form-item> -->
<a-form-item ref="baseUnit" label="库存单位" name="baseUnit">
<a-input v-model:value="formState.baseUnit" placeholder="请选择库存单位" :disabled="true" />
</a-form-item>
<!-- <a-form-item ref="primaryUnit" label="换算单位" name="primaryUnit">
<a-input v-model:value="formState.primaryUnit" placeholder="请选择换算单位" />
</a-form-item> -->
@ -49,170 +97,163 @@
<!-- <a-form-item ref="fullQty" label="满盘数量" name="fullQty">
<a-input v-model:value="formState.fullQty" placeholder="请输入满盘数量" />
</a-form-item> -->
<!-- <a-form-item ref="expire" label="有效期" name="expire">
<!-- <a-form-item ref="expire" label="有效期" name="expire">
<a-input-number v-model:value="formState.expire" placeholder="请选择有效期" style="width: 100%" />
</a-form-item> -->
<!--
<!--
<a-form-item label="使用标志" name="useFlag">
<a-switch v-model:checked="formState.useFlag" checked-children="" un-checked-children=""/>
</a-form-item> -->
<a-form-item ref="remark" label="备注" name="remark">
<a-textarea v-model:value="formState.remark" laceholder="请输入备注" />
</a-form-item>
</a-form>
</a-modal>
</template>
<script>
import {
message
} from '@hwork/ant-design-vue';
import {
edit
} from "@/api/wms/sku";
import {
defineComponent,
reactive,
ref,
toRaw,
watch
} from "vue";
export default defineComponent({
props: {
visible: {
type: Boolean,
import { message } from "@hwork/ant-design-vue";
import { edit } from "@/api/wms/sku";
import { defineComponent, reactive, ref, toRaw, watch } from "vue";
export default defineComponent({
props: {
visible: {
type: Boolean,
},
record: {
type: Object,
},
},
emit: ["close"],
setup(props, context) {
const formRef = ref();
const formState = reactive({});
watch(props, (props) => {
formState.id = props.record.id;
formState.skuCode = props.record.skuCode;
formState.skuName = props.record.skuName;
formState.barCode = props.record.barCode;
formState.abc = props.record.abc;
formState.categoryCode = props.record.categoryCode;
formState.categoryName = props.record.categoryName;
formState.baseUnit = props.record.baseUnit;
formState.primaryUnit = props.record.primaryUnit;
formState.ext3 = props.record.ext3;
formState.stackType = props.record.stackType;
formState.ext1 = props.record.ext1;
formState.ext2 = props.record.ext2;
formState.fullQty = props.record.fullQty;
formState.expire = props.record.expire;
formState.useFlag = props.record.useFlag;
});
const formRules = {};
const editKey = "add";
const skuAbc = ref([
{
value: "A类",
label: "A类",
},
record: {
type: Object,
}
},
emit: ["close"],
setup(props, context) {
{
value: "B类",
label: "B类",
},
{
value: "C类",
label: "C类",
},
]);
const formRef = ref();
const skuCategoryName = ref([
{
value: "成品",
label: "成品",
},
{
value: "原材料",
label: "原材料",
},
]);
const formState = reactive({});
const skuPrimaryUnit = ref([
{
value: "台",
label: "台",
},
{
value: "箱",
label: "箱",
},
{
value: "盒",
label: "盒",
},
]);
watch(props, (props) => {
formState.id = props.record.id
formState.skuCode = props.record.skuCode
formState.skuName = props.record.skuName
formState.barCode = props.record.barCode
formState.abc = props.record.abc
formState.categoryCode = props.record.categoryCode
formState.categoryName = props.record.categoryName
formState.baseUnit = props.record.baseUnit
formState.primaryUnit = props.record.primaryUnit
formState.ext3 = props.record.ext3
formState.stackType = props.record.stackType
formState.ext1 = props.record.ext1
formState.ext2 = props.record.ext2
formState.fullQty = props.record.fullQty
formState.expire = props.record.expire
formState.useFlag = props.record.useFlag
const valueChanged = (e) => {
formState.ext3 = formState.ext3.toFixed(2);
};
})
const formRules = {};
const editKey = "add";
const skuAbc = ref([{
value: 'A类',
label: 'A类',
}, {
value: 'B类',
label: 'B类',
}, {
value: 'C类',
label: 'C类',
}]);
const skuCategoryName = ref([{
value: '成品',
label: '成品',
},
{
value: '原材料',
label: '原材料',
},
]);
const skuPrimaryUnit = ref([{
value: '台',
label: '台',
},
{
value: '箱',
label: '箱',
},
{
value: '盒',
label: '盒',
},
]);
const valueChanged = (e) => {
formState.ext3 = (formState.ext3).toFixed(2);
}
const submit = (e) => {
message.loading({
content: '提交中...',
key: editKey
});
formRef.value
.validate()
.then(() => {
edit(toRaw(formState)).then((response) => {
if (response.success) {
message.success({
content: '保存成功',
const submit = (e) => {
message.loading({
content: "提交中...",
key: editKey,
});
formRef.value
.validate()
.then(() => {
edit(toRaw(formState)).then((response) => {
if (response.success) {
message
.success({
content: "保存成功",
key: editKey,
duration: 1
}).then(() => {
duration: 1,
})
.then(() => {
cancel();
});
} else {
message.success({
content: '保存失败',
} else {
message
.success({
content: "保存失败",
key: editKey,
duration: 1
}).then(() => {
duration: 1,
})
.then(() => {
cancel();
});
}
});
})
.catch(error => {
console.log('error', error);
}
});
};
})
.catch((error) => {
console.log("error", error);
});
};
const cancel = (e) => {
formRef.value.resetFields();
context.emit("close", false);
};
const cancel = (e) => {
formRef.value.resetFields();
context.emit("close", false);
};
return {
return {
submit,
cancel,
formRef,
formState,
formRules,
valueChanged,
skuAbc,
skuCategoryName,
skuPrimaryUnit,
submit,
cancel,
formRef,
formState,
formRules,
valueChanged,
skuAbc,
skuCategoryName,
skuPrimaryUnit,
labelCol: {
span: 8
},
wrapperCol: {
span: 12
},
};
},
});
labelCol: {
span: 8,
},
wrapperCol: {
span: 12,
},
};
},
});
</script>

View File

@ -1,17 +1,17 @@
<template>
<a-modal :open="visible" title="新增物料信息" cancelText="取消" okText="提交" @ok="submit" @cancel="cancel" :width='1000'>
<a-form ref="formRef" :model="formState" :rules="formRules" :label-col="labelCol" :wrapper-col="wrapperCol">
<a-modal :open="visible" title="新增物料信息" cancelText="取消" okText="提交" @ok="submit" @cancel="cancel" :width='720'>
<a-form ref="formRef" :model="formState" :rules="formRules" layout="vertical">
<div>
<page-layout>
<a-row :gutter="[0, 0]">
<a-col :span="24">
<a-row>
<a-col :span="8">
<!-- <a-row :gutter="[0, 0]"> -->
<!-- <a-col :span="24"> -->
<a-row :gutter="[16, 0]">
<a-col :span="12">
<a-form-item ref="skuCode" label="物料编号" name="skuCode">
<a-input v-model:value="formState.skuCode" placeholder="请输入物料编号" />
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item ref="skuName" label="物料名称" name="skuName">
<a-input v-model:value="formState.skuName" placeholder="请输入物料名称" />
</a-form-item>
@ -28,14 +28,14 @@
</a-col> -->
</a-row>
<a-row>
<a-col :span="8">
<a-row :gutter="[16, 0]">
<a-col :span="12">
<a-form-item label="ABC分类" name="abc">
<a-select v-model:value="formState.abc" :options="skuAbc" placeholder="请选择ABC分类">
</a-select>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item ref="categoryCode" label="物料种类" name="categoryCode">
<a-select v-model:value="formState.categoryCode" show-search placeholder="请选择物料种类"
style="width: 100%" :default-active-first-option="false" :show-arrow="false"
@ -47,11 +47,16 @@
</a-select>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="12">
<a-form-item ref="baseUnit" label="库存单位" name="baseUnit">
<a-input v-model:value="formState.baseUnit" placeholder="请选择库存单位" :disabled="true" />
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item label="使用标志" name="useFlag">
<a-switch v-model:checked="formState.useFlag" checked-children="" un-checked-children="" />
</a-form-item>
</a-col>
</a-row>
<!-- <a-row>
<a-col :span="8">
@ -101,19 +106,15 @@
<a-input-number v-model:value="formState.expire" placeholder="请选择有效期" style="width: 100%" />
</a-form-item>
</a-col> -->
<a-col :span="8">
<a-form-item label="使用标志" name="useFlag">
<a-switch v-model:checked="formState.useFlag" checked-children="" un-checked-children="" />
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :span="24">
<a-form-item ref="remark" label="备注" name="remark">
<a-textarea v-model:value="formState.remark" laceholder="请输入备注" />
</a-form-item>
</a-col>
</a-row>
</a-col>
</a-row>
<!-- </a-col> -->
<!-- </a-row> -->
</page-layout>
</div>
<!-- <a-form-item ref="skuCode" label="物料编号" name="skuCode">

View File

@ -1,138 +1,179 @@
<template>
<a-modal :open="visible" title="修改" cancelText="取消" okText="提交" @ok="submit" @cancel="cancel">
<a-form ref="formRef" :model="formState" :rules="formRules" :label-col="labelCol" :wrapper-col="wrapperCol">
<a-form-item ref="categoryCode" label="种类编号" name="categoryCode">
<a-input v-model:value="formState.categoryCode" placeholder="请输入种类编号"/>
</a-form-item>
<a-form-item ref="categoryName" label="种类名称" name="categoryName">
<a-input v-model:value="formState.categoryName" placeholder="请输入种类名称"/>
</a-form-item>
<a-form-item ref="categoryDesc" label="种类描述" name="categoryDesc">
<a-input v-model:value="formState.categoryDesc" placeholder="请输入种类描述"/>
</a-form-item>
<a-form-item ref="treeLevel" label="树层级" name="treeLevel">
<a-input v-model:value="formState.treeLevel" placeholder="请输入树层级"/>
</a-form-item>
<a-form-item ref="treeCode" label="树编号" name="treeCode">
<a-input v-model:value="formState.treeCode" placeholder="请输入树编号"/>
</a-form-item>
<a-form-item ref="isActive" label="是否有效" name="isActive">
<a-select v-model:value="formState.isActive" :options="skuCategoryIsActive" laceholder="请选择是否有效"/>
</a-form-item>
<a-form-item label="备注" name="remark">
<a-textarea v-model:value="formState.remark" />
</a-form-item>
<a-modal
:open="visible"
title="修改"
cancelText="取消"
okText="提交"
@ok="submit"
@cancel="cancel"
>
<a-form
ref="formRef"
:model="formState"
:rules="formRules"
layout="vertical"
>
<a-row :gutter="[16, 0]">
<a-col :span="12">
<a-form-item ref="categoryCode" label="种类编号" name="categoryCode">
<a-input
v-model:value="formState.categoryCode"
placeholder="请输入种类编号"
/>
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item ref="categoryName" label="种类名称" name="categoryName">
<a-input
v-model:value="formState.categoryName"
placeholder="请输入种类名称"
/>
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item ref="categoryDesc" label="种类描述" name="categoryDesc">
<a-input
v-model:value="formState.categoryDesc"
placeholder="请输入种类描述"
/>
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item ref="treeLevel" label="树层级" name="treeLevel">
<a-input
v-model:value="formState.treeLevel"
placeholder="请输入树层级"
/>
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item ref="treeCode" label="树编号" name="treeCode">
<a-input
v-model:value="formState.treeCode"
placeholder="请输入树编号"
/>
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item ref="isActive" label="是否有效" name="isActive">
<a-select
v-model:value="formState.isActive"
:options="skuCategoryIsActive"
laceholder="请选择是否有效"
/>
</a-form-item>
</a-col>
<a-col :span="24">
<a-form-item label="备注" name="remark">
<a-textarea v-model:value="formState.remark" />
</a-form-item>
</a-col>
</a-row>
</a-form>
</a-modal>
</template>
<script>
import {
message
} from '@hwork/ant-design-vue';
import {
edit
} from "@/api/wms/skuCategory";
import {
defineComponent,
reactive,
ref,
toRaw,
watch
} from "vue";
export default defineComponent({
props: {
visible: {
type: Boolean,
import { message } from "@hwork/ant-design-vue";
import { edit } from "@/api/wms/skuCategory";
import { defineComponent, reactive, ref, toRaw, watch } from "vue";
export default defineComponent({
props: {
visible: {
type: Boolean,
},
record: {
type: Object,
},
},
emit: ["close"],
setup(props, context) {
const formRef = ref();
const formState = reactive({});
const skuCategoryIsActive = ref([
{
value: "1",
label: "是",
},
record: {
type: Object,
}
},
emit: ["close"],
setup(props, context) {
{
value: "0",
label: "否",
},
]);
const formRef = ref();
watch(props, (props) => {
formState.id = props.record.id;
formState.categoryName = props.record.categoryName;
formState.categoryDesc = props.record.categoryDesc;
formState.categoryCode = props.record.categoryCode;
formState.treeLevel = props.record.treeLevel;
formState.treeCode = props.record.treeCode;
formState.fullTreeCode = props.record.fullTreeCode;
formState.isActive = props.record.isActive;
formState.remark = props.record.remark;
});
const formState = reactive({});
const skuCategoryIsActive = ref([{
value: '1',
label: '是',
}, {
value: '0',
label: '否',
}, ]);
const formRules = {};
watch(props, (props) => {
formState.id = props.record.id
formState.categoryName = props.record.categoryName
formState.categoryDesc = props.record.categoryDesc
formState.categoryCode = props.record.categoryCode
formState.treeLevel = props.record.treeLevel
formState.treeCode = props.record.treeCode
formState.fullTreeCode = props.record.fullTreeCode
formState.isActive = props.record.isActive
formState.remark = props.record.remark
})
const editKey = "add";
const formRules = {
};
const editKey = "add";
const submit = (e) => {
message.loading({
content: '提交中...',
key: editKey
});
formRef.value
.validate()
.then(() => {
edit(toRaw(formState)).then((response) => {
if (response.success) {
message.success({
content: '保存成功',
const submit = (e) => {
message.loading({
content: "提交中...",
key: editKey,
});
formRef.value
.validate()
.then(() => {
edit(toRaw(formState)).then((response) => {
if (response.success) {
message
.success({
content: "保存成功",
key: editKey,
duration: 1
}).then(() => {
duration: 1,
})
.then(() => {
cancel();
});
} else {
message.success({
content: '保存失败',
} else {
message
.success({
content: "保存失败",
key: editKey,
duration: 1
}).then(() => {
duration: 1,
})
.then(() => {
cancel();
});
}
});
})
.catch(error => {
console.log('error', error);
}
});
};
})
.catch((error) => {
console.log("error", error);
});
};
const cancel = (e) => {
formRef.value.resetFields();
context.emit("close", false);
};
const cancel = (e) => {
formRef.value.resetFields();
context.emit("close", false);
};
return {
return {
submit,
cancel,
formRef,
formState,
formRules,
skuCategoryIsActive,
submit,
cancel,
formRef,
formState,
formRules,
skuCategoryIsActive,
labelCol: {
span: 8
},
wrapperCol: {
span: 12
},
};
},
});
labelCol: {
span: 8,
},
wrapperCol: {
span: 12,
},
};
},
});
</script>

View File

@ -1,157 +1,215 @@
<template>
<a-modal :open="visible" title="新增" cancelText="取消" okText="提交" @ok="submit" @cancel="cancel">
<a-form ref="formRef" :model="formState" :rules="formRules" :label-col="labelCol" :wrapper-col="wrapperCol">
<a-form-item ref="categoryCode" label="种类编号" name="categoryCode">
<a-input v-model:value="formState.categoryCode" placeholder="请输入种类编号" />
</a-form-item>
<a-form-item ref="categoryName" label="种类名称" name="categoryName">
<a-input v-model:value="formState.categoryName" placeholder="请输入种类名称" />
</a-form-item>
<a-form-item ref="categoryDesc" label="种类描述" name="categoryDesc">
<a-input v-model:value="formState.categoryDesc" placeholder="请输入种类描述" />
</a-form-item>
<a-form-item ref="treeLevel" label="树层级" name="treeLevel">
<a-input v-model:value="formState.treeLevel" placeholder="请输入树层级" />
</a-form-item>
<a-form-item ref="treeCode" label="树编号" name="treeCode">
<a-input v-model:value="formState.treeCode" placeholder="请输入树编号" />
</a-form-item>
<a-form-item ref="isActive" label="是否有效" name="isActive">
<a-select v-model:value="formState.isActive" :options="skuCategoryIsActive" :disabled="false" placeholder="请选择是否有效" />
</a-form-item>
<a-form-item label="备注" name="remark">
<a-textarea v-model:value="formState.remark"/>
</a-form-item>
<a-modal
:open="visible"
title="新增"
cancelText="取消"
okText="提交"
@ok="submit"
@cancel="cancel"
>
<a-form
ref="formRef"
:model="formState"
:rules="formRules"
layout="vertical"
>
<a-row :gutter="[16, 0]">
<a-col :span="12">
<a-form-item ref="categoryCode" label="种类编号" name="categoryCode">
<a-input
v-model:value="formState.categoryCode"
placeholder="请输入种类编号"
/>
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item ref="categoryName" label="种类名称" name="categoryName">
<a-input
v-model:value="formState.categoryName"
placeholder="请输入种类名称"
/>
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item ref="categoryDesc" label="种类描述" name="categoryDesc">
<a-input
v-model:value="formState.categoryDesc"
placeholder="请输入种类描述"
/>
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item ref="treeLevel" label="树层级" name="treeLevel">
<a-input
v-model:value="formState.treeLevel"
placeholder="请输入树层级"
/>
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item ref="treeCode" label="树编号" name="treeCode">
<a-input
v-model:value="formState.treeCode"
placeholder="请输入树编号"
/>
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item ref="isActive" label="是否有效" name="isActive">
<a-select
v-model:value="formState.isActive"
:options="skuCategoryIsActive"
:disabled="false"
placeholder="请选择是否有效"
/>
</a-form-item>
</a-col>
<a-col :span="24">
<a-form-item label="备注" name="remark">
<a-textarea v-model:value="formState.remark" />
</a-form-item>
</a-col>
</a-row>
</a-form>
</a-modal>
</template>
<script>
import {
message
} from '@hwork/ant-design-vue';
import {
save
} from "@/api/wms/skuCategory";
import { message } from "@hwork/ant-design-vue";
import { save } from "@/api/wms/skuCategory";
import {
defineComponent,
reactive,
ref,
toRaw
} from "vue";
export default defineComponent({
props: {
visible: {
type: Boolean,
import { defineComponent, reactive, ref, toRaw } from "vue";
export default defineComponent({
props: {
visible: {
type: Boolean,
},
},
emit: ["close"],
setup(props, context) {
const formRef = ref();
const formState = reactive({
isActive: "1",
});
const skuCategoryIsActive = ref([
{
value: "1",
label: "是",
},
},
emit: ["close"],
setup(props, context) {
]);
const formRef = ref();
const formRules = {
categoryCode: [
{
required: true,
message: "请输入种类编号",
trigger: "blur",
},
],
categoryName: [
{
required: true,
message: "请输入种类名称",
trigger: "blur",
},
],
categoryDesc: [
{
required: true,
message: "请输入种类描述",
trigger: "blur",
},
],
treeLevel: [
{
required: true,
message: "请输入树层级",
trigger: "blur",
},
],
treeCode: [
{
required: true,
message: "请输入树编号",
trigger: "blur",
},
],
fullTreeCode: [
{
required: true,
message: "请输入全树编号",
trigger: "blur",
},
],
isActive: [
{
required: true,
message: "是否有效",
trigger: "blur",
},
],
};
const formState = reactive({
isActive: "1",
const saveKey = "save";
const submit = (e) => {
message.loading({
content: "提交中...",
key: saveKey,
});
const skuCategoryIsActive = ref([{
value: '1',
label: '是',
}]);
const formRules = {
categoryCode: [{
required: true,
message: '请输入种类编号',
trigger: 'blur'
}],
categoryName: [{
required: true,
message: '请输入种类名称',
trigger: 'blur'
}],
categoryDesc: [{
required: true,
message: '请输入种类描述',
trigger: 'blur'
}],
treeLevel: [{
required: true,
message: '请输入树层级',
trigger: 'blur'
}],
treeCode: [{
required: true,
message: '请输入树编号',
trigger: 'blur'
}],
fullTreeCode: [{
required: true,
message: '请输入全树编号',
trigger: 'blur'
}],
isActive: [{
required: true,
message: '是否有效',
trigger: 'blur'
}],
};
const saveKey = "save";
const submit = (e) => {
message.loading({
content: '提交中...',
key: saveKey
});
formRef.value
.validate()
.then(() => {
save(toRaw(formState)).then((response) => {
if (response.success) {
message.success({
content: '保存成功',
formRef.value
.validate()
.then(() => {
save(toRaw(formState)).then((response) => {
if (response.success) {
message
.success({
content: "保存成功",
key: saveKey,
duration: 1
}).then(() => {
duration: 1,
})
.then(() => {
cancel();
});
} else {
message.success({
content: '保存失败',
} else {
message
.success({
content: "保存失败",
key: saveKey,
duration: 1
}).then(() => {
duration: 1,
})
.then(() => {
cancel();
});
}
});
})
.catch(error => {
console.log('error', error);
}
});
};
})
.catch((error) => {
console.log("error", error);
});
};
const cancel = (e) => {
formRef.value.resetFields();
context.emit("close", false);
};
const cancel = (e) => {
formRef.value.resetFields();
context.emit("close", false);
};
return {
submit,
cancel,
formRef,
formState,
formRules,
skuCategoryIsActive,
return {
submit,
cancel,
formRef,
formState,
formRules,
skuCategoryIsActive,
labelCol: {
span: 8
},
wrapperCol: {
span: 12
},
};
},
});
labelCol: {
span: 8,
},
wrapperCol: {
span: 12,
},
};
},
});
</script>

View File

@ -1,21 +1,77 @@
<template>
<a-modal :open="visible" title="修改托盘明细信息" cancelText="取消" okText="提交" @ok="submit" @cancel="cancel">
<a-form ref="formRef" :model="formState" :rules="formRules" :label-col="labelCol" :wrapper-col="wrapperCol">
<a-form-item ref="palletCode" label="托盘号" name="palletCode">
<a-input v-model:value="formState.palletCode" placeholder="请输入托盘号" disabled />
</a-form-item>
<a-form-item ref="skuCode" label="物料编号" name="skuCode">
<a-input v-model:value="formState.skuCode" placeholder="请输入物料编号" />
</a-form-item>
<a-form-item ref="skuName" label="物料描述" name="skuName">
<a-input v-model:value="formState.skuName" placeholder="请输入物料描述" disabled />
</a-form-item>
<a-form-item ref="skuType" label="物料类型" name="skuType">
<a-input v-model:value="formState.skuType" placeholder="请输入物料类型" disabled />
</a-form-item>
<a-form-item ref="batch" label="批次" name="batch">
<a-input v-model:value="formState.batch" placeholder="请输入批次" />
</a-form-item>
<a-modal
:open="visible"
title="修改托盘明细信息"
cancelText="取消"
okText="提交"
@ok="submit"
@cancel="cancel"
>
<a-form
ref="formRef"
:model="formState"
:rules="formRules"
layout="vertical"
>
<a-row :gutter="[16, 0]">
<a-col :span="12">
<a-form-item ref="palletCode" label="托盘号" name="palletCode">
<a-input
v-model:value="formState.palletCode"
placeholder="请输入托盘号"
disabled
/>
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item ref="skuCode" label="物料编号" name="skuCode">
<a-input
v-model:value="formState.skuCode"
placeholder="请输入物料编号"
/>
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item ref="skuName" label="物料描述" name="skuName">
<a-input
v-model:value="formState.skuName"
placeholder="请输入物料描述"
disabled
/>
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item ref="skuType" label="物料类型" name="skuType">
<a-input
v-model:value="formState.skuType"
placeholder="请输入物料类型"
disabled
/>
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item ref="batch" label="批次" name="batch">
<a-input v-model:value="formState.batch" placeholder="请输入批次" />
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item ref="customer" label="线体" name="customer">
<a-input
v-model:value="formState.customer"
placeholder="请输入客户"
/>
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item ref="skuQty" label="物料数量" name="skuQty">
<a-input
v-model:value="formState.skuQty"
placeholder="请输入物料数量"
/>
</a-form-item>
</a-col>
</a-row>
<!-- <a-form-item ref="serial" label="序列号" name="serial">
<a-input v-model:value="formState.serial" placeholder="请输入序列号" />
</a-form-item>
@ -25,18 +81,14 @@
<a-form-item ref="producer" label="厂家" name="producer">
<a-input v-model:value="formState.producer" placeholder="请输入厂家" />
</a-form-item> -->
<a-form-item ref="customer" label="线体" name="customer">
<a-input v-model:value="formState.customer" placeholder="请输入客户" />
</a-form-item>
<!-- <a-form-item ref="produceDate" label="生产日期" name="produceDate">
<a-date-picker v-model:value="formState.produceDate" style="width: 100%"/>
</a-form-item>
<a-form-item ref="overdue" label="过期日期" name="overdue">
<a-date-picker v-model:value="formState.overdue" style="width: 100%"/>
</a-form-item> -->
<a-form-item ref="skuQty" label="物料数量" name="skuQty">
<a-input v-model:value="formState.skuQty" placeholder="请输入物料数量" />
</a-form-item>
<!-- <a-form-item ref="lockQty" label="锁定数量" name="lockQty">
<a-input v-model:value="formState.lockQty" placeholder="请输入锁定数量" />
</a-form-item>
@ -68,153 +120,158 @@
</a-modal>
</template>
<script>
import {
message
} from '@hwork/ant-design-vue';
import {
edit,
} from "@/api/wms/palletDetail";
import {
defineComponent,
reactive,
ref,
toRaw,
watch
} from "vue";
export default defineComponent({
props: {
visible: {
type: Boolean,
},
record: {
type: Object,
}
import { message } from "@hwork/ant-design-vue";
import { edit } from "@/api/wms/palletDetail";
import { defineComponent, reactive, ref, toRaw, watch } from "vue";
export default defineComponent({
props: {
visible: {
type: Boolean,
},
emit: ["close"],
setup(props, context) {
record: {
type: Object,
},
},
emit: ["close"],
setup(props, context) {
const formRef = ref();
const formRef = ref();
// const state = reactive({});
// const state = reactive({});
const formState = reactive({});
const formState = reactive({});
const formRules = {
palletCode: [{
const formRules = {
palletCode: [
{
required: true,
message: '请输入托盘号',
trigger: 'blur'
}],
skuCode: [{
message: "请输入托盘号",
trigger: "blur",
},
],
skuCode: [
{
required: true,
message: '请输入物料编号',
trigger: 'change'
}],
skuQty: [{
message: "请输入物料编号",
trigger: "change",
},
],
skuQty: [
{
required: true,
message: '请输入物料数量',
trigger: 'blur',
type: 'number',
}],
baseUnit: [{
message: "请输入物料数量",
trigger: "blur",
type: "number",
},
],
baseUnit: [
{
required: true,
message: '请输入物流单位',
trigger: 'change',
}],
convertQty: [{
message: "请输入物流单位",
trigger: "change",
},
],
convertQty: [
{
required: true,
message: '请输入统计数量',
trigger: 'blur',
type: 'number',
}],
primaryUnit: [{
message: "请输入统计数量",
trigger: "blur",
type: "number",
},
],
primaryUnit: [
{
required: true,
message: '请输入统计单位',
trigger: 'change',
}],
}
message: "请输入统计单位",
trigger: "change",
},
],
};
watch(props, (props) => {
console.log("state.record", props.record)
formState.id = props.record.id
formState.palletCode = props.record.palletCode
formState.skuCode = props.record.skuCode;
formState.skuName = props.record.skuName;
formState.skuType = props.record.skuType;
formState.batch = props.record.batch;
formState.serial = props.record.serial;
formState.master = props.record.master;
formState.producer = props.record.producer;
formState.customer = props.record.customer;
formState.produceDate = props.record.produceDate;
formState.overdue = props.record.overdue;
formState.skuQty = props.record.skuQty;
formState.lockQty = props.record.lockQty;
formState.baseUnit = props.record.baseUnit;
formState.convertQty = props.record.convertQty;
formState.primaryUnit = props.record.primaryUnit;
formState.spInv = props.record.spInv;
formState.invType = props.record.invType;
formState.qualityStatus = props.record.qualityStatus;
formState.note = props.record.note;
formState.remark = props.record.remark;
})
watch(props, (props) => {
console.log("state.record", props.record);
formState.id = props.record.id;
formState.palletCode = props.record.palletCode;
formState.skuCode = props.record.skuCode;
formState.skuName = props.record.skuName;
formState.skuType = props.record.skuType;
formState.batch = props.record.batch;
formState.serial = props.record.serial;
formState.master = props.record.master;
formState.producer = props.record.producer;
formState.customer = props.record.customer;
formState.produceDate = props.record.produceDate;
formState.overdue = props.record.overdue;
formState.skuQty = props.record.skuQty;
formState.lockQty = props.record.lockQty;
formState.baseUnit = props.record.baseUnit;
formState.convertQty = props.record.convertQty;
formState.primaryUnit = props.record.primaryUnit;
formState.spInv = props.record.spInv;
formState.invType = props.record.invType;
formState.qualityStatus = props.record.qualityStatus;
formState.note = props.record.note;
formState.remark = props.record.remark;
});
const editKey = "add";
const editKey = "add";
const submit = (e) => {
message.loading({
content: '提交中...',
key: editKey
});
formRef.value
.validate()
.then(() => {
edit(toRaw(formState)).then((response) => {
if (response.success) {
message.success({
content: '保存成功',
const submit = (e) => {
message.loading({
content: "提交中...",
key: editKey,
});
formRef.value
.validate()
.then(() => {
edit(toRaw(formState)).then((response) => {
if (response.success) {
message
.success({
content: "保存成功",
key: editKey,
duration: 1
}).then(() => {
duration: 1,
})
.then(() => {
cancel();
});
} else {
message.error({
} else {
message
.error({
content: response.msg,
key: editKey,
duration: 1
}).then(() => {
duration: 1,
})
.then(() => {
// cancel();
});
}
});
})
.catch(error => {
console.log('error', error);
}
});
};
})
.catch((error) => {
console.log("error", error);
});
};
const cancel = (e) => {
formRef.value.resetFields();
context.emit("close", false);
};
const cancel = (e) => {
formRef.value.resetFields();
context.emit("close", false);
};
return {
// state,
submit,
cancel,
formRef,
formState,
formRules,
return {
// state,
submit,
cancel,
formRef,
formState,
formRules,
labelCol: {
span: 8
},
wrapperCol: {
span: 12
},
};
},
});
labelCol: {
span: 8,
},
wrapperCol: {
span: 12,
},
};
},
});
</script>