Compare commits

...

2 Commits

4 changed files with 123 additions and 24 deletions

16
mock/modules/ycy.js Normal file
View File

@ -0,0 +1,16 @@
import Mock from "mockjs";
const StockList = Mock.mock({
"list|20-30": [
{
"id|+1": "0",
billserial: "@integer(10000000000,19999999999)",
billType: "@integer(0,5)",
stockNum: "前端",
unit: "前端",
stockDate: "@date",
operator: "@cname",
remark: " @integer(10000000000,19999999999)",
},
],
});

View File

@ -1,12 +1,12 @@
<template>
<div class="box">
<div style="height: 100%">
<t-menu>
<t-submenu value="1" title="财务票据管理">
<template #icon>
<t-icon name="application" />
</template>
<t-menu-item value="1-1" to="/Bill/BillStock">
<span>菜单二</span>
<span>票据入库管理</span>
</t-menu-item>
</t-submenu>
<t-submenu value="2" title="应收款管理">

View File

@ -4,28 +4,93 @@
<t-form
ref="form"
:data="formData"
label-width="calc(2em + 24px)"
label-width="calc(2em + 40px)"
:layout="formData.layout"
scroll-to-first-error="smooth"
@reset="onReset"
@submit="onSubmit"
class="scarch-from"
>
<t-form-item label="名字" name="name">
<t-input v-model="formData.name"></t-input>
</t-form-item>
<div style="margin-left: 1rem">
<t-form-item label="票据编号:" name="name">
<t-input v-model="formData.name"></t-input>
</t-form-item>
<t-form-item label="密码" name="password">
<t-input v-model="formData.password" type="password"></t-input>
<t-form-item label="入库日期:" name="password">
<t-input v-model="formData.password"></t-input>
</t-form-item>
</div>
<t-form-item>
<t-button theme="primary" @click="onSubmit">查询</t-button>
<t-button theme="primary" @click="onReset">重置</t-button>
</t-form-item>
</t-form>
</div>
<div class="table-box">
<t-base-table
row-key="index"
:data="tableData"
:columns="columns"
></t-base-table>
</div>
</div>
</template>
<script setup>
import { reactive } from "vue";
import { reactive, ref } from "vue";
import { MessagePlugin } from "tdesign-vue-next";
const tableData = ref();
const columns = ref([
{
title: "票据编号",
colkey: "billserial",
align: "center",
width: 100,
},
{
title: "票据类型",
colkey: "billType",
align: "center",
width: 100,
},
{
title: "入库数量",
colkey: "stockNum",
align: "center",
width: 100,
},
{
title: "单位(如:本、张)",
colkey: "unit",
align: "center",
width: 100,
},
{
title: "入库日期",
colkey: "stockDate",
align: "center",
width: 100,
},
{
title: "操作员",
colkey: "operator",
align: "center",
width: 100,
},
{
title: "备注",
colkey: "remark",
align: "center",
width: 100,
},
{
colKey: "status",
title: "操作",
width: 120,
align: "center",
fixed: "right",
},
]);
const formData = reactive({
layout: "inline",
name: "",
@ -49,7 +114,21 @@ const onSubmit = ({ validateResult, firstError }) => {
<style scoped lang="less">
.scarch-box {
width: 100%;
height: 10%;
background-color: @base-white-color;
margin-bottom: 2rem;
.scarch-from {
height: 60px;
display: flex;
justify-content: space-between;
align-items: center;
}
}
.table-box {
height: 41rem;
background-color: @base-white-color;
padding: 1rem;
}
/deep/ .t-form__controls-content {
justify-content: space-between;
}
</style>

View File

@ -45,48 +45,48 @@
<script setup>
import { MessagePlugin } from "tdesign-vue-next";
import { reactive,ref } from "vue";
import { reactive, ref } from "vue";
// import { DesktopIcon, LockOnIcon } from "tdesign-icons-vue";
const INITIAL_DATA = {
account: "",
password: "",
};
const from = ref()
const from = ref();
const formData = reactive({
...INITIAL_DATA,
});
const rules = reactive({
account: [
account: [
{
required: true,
message: '必须填写',
message: "必须填写",
},
{
min: 10,
message: '输入不正确',
message: "输入不正确",
},
{
max: 10,
message: '输入不正确',
message: "输入不正确",
},
],
password: [
password: [
{
required: true,
message: '密码必填',
message: "密码必填",
},
{
len: 8,
message: '请输入 8 位密码',
message: "请输入 8 位密码",
},
{
pattern: /[A-Z]+/,
message: '密码必须包含大写字母',
message: "密码必须包含大写字母",
},
],
})
});
const onReset = () => {
MessagePlugin.success("重置成功");
@ -99,6 +99,10 @@ const onSubmit = ({ validateResult, firstError }) => {
MessagePlugin.warning(firstError);
}
};
const Login = async () => {
await reqLogin();
};
</script>
<style lang="less" scoped>
@ -136,4 +140,4 @@ const onSubmit = ({ validateResult, firstError }) => {
align-items: center;
justify-content: center;
}
</style>
</style>