Browse Source

update fe

master
wanggang 1 year ago
parent
commit
4b01dab49e
  1. 7
      code/src/Modules/SettleAccount/host/SettleAccount.HttpApi.Host/Program.cs
  2. 1
      code/src/Modules/SettleAccount/host/SettleAccount.HttpApi.Host/Startup.cs
  3. 42
      code/src/Modules/SettleAccount/host/SettleAccount.HttpApi.Host/wwwroot/components/table/index.js
  4. 62
      code/src/Modules/SettleAccount/host/SettleAccount.HttpApi.Host/wwwroot/models/_extraProperties.js
  5. 54
      code/src/Modules/SettleAccount/host/SettleAccount.HttpApi.Host/wwwroot/models/input/jie-suan-detail.js
  6. 231
      code/src/Modules/SettleAccount/host/SettleAccount.HttpApi.Host/wwwroot/views/settle/_check.js

7
code/src/Modules/SettleAccount/host/SettleAccount.HttpApi.Host/Program.cs

@ -55,9 +55,10 @@ public class Program
webBuilder.ConfigureKestrel((context, options) => webBuilder.ConfigureKestrel((context, options) =>
{ {
//设置应用服务器Kestrel请求体最大为50MB //设置应用服务器Kestrel请求体最大为50MB
options.Limits.MaxRequestBodySize = 5242880000; options.Limits.MaxRequestBodySize = long.MaxValue;
options.Limits.MaxRequestBufferSize = 302768; options.Limits.MaxRequestBufferSize = long.MaxValue;
options.Limits.MaxRequestLineSize = 302768; options.Limits.MaxRequestLineSize = int.MaxValue;
options.Limits.KeepAliveTimeout= TimeSpan.MaxValue;
}); });
webBuilder.UseStartup<Startup>(); webBuilder.UseStartup<Startup>();
}) })

1
code/src/Modules/SettleAccount/host/SettleAccount.HttpApi.Host/Startup.cs

@ -21,6 +21,7 @@ public class Startup
{ {
public void ConfigureServices(IServiceCollection services) public void ConfigureServices(IServiceCollection services)
{ {
services.AddRequestTimeouts();
services.Configure<GzipCompressionProviderOptions>(options => options.Level = CompressionLevel.Fastest); services.Configure<GzipCompressionProviderOptions>(options => options.Level = CompressionLevel.Fastest);
services.AddResponseCompression(options => services.AddResponseCompression(options =>
{ {

42
code/src/Modules/SettleAccount/host/SettleAccount.HttpApi.Host/wwwroot/components/table/index.js

@ -4,20 +4,42 @@ import { reactive, ref } from "vue";
export default { export default {
template: html`<div class="app-table el-table" ref="tableRef"> template: html`<div class="app-table el-table" ref="tableRef">
<div class="row"> <div class="row">
<div class="cell el-table__cell" v-for="item in columns"> <template v-for="(item,key) in columns.properties">
<div class="cell" style="text-align:center;" v-if="item.input==='selection'"> <div class="cell el-table__cell" v-if="item.input==='selection'">
<input class="el-checkbox__input" type="checkbox" v-model="checkAll" :indeterminate="checkAllIndeterminate" @click="checkAllClick($event)" /> <div class="cell" style="text-align:center;">
<input class="el-checkbox__input" type="checkbox" v-model="checkAll" :indeterminate="checkAllIndeterminate" @click="checkAllClick($event)" />
</div>
</div> </div>
<div class="cell" v-else-if="!item.hidden">{{item.title}}</div> <template v-else-if="item.type==='object'">
</div> <template v-for="(item2,key2) in item.properties">
<div class="cell el-table__cell" v-if="!item2.hidden">
<div class="cell">{{item2.title}}</div>
</div>
</template>
</template>
<div class="cell el-table__cell" v-else-if="!item.hidden">
<div class="cell">{{item.title}}</div>
</div>
</template>
</div> </div>
<div v-for="(row,index) in data" class="row"> <div v-for="(row,index) in data" class="row">
<div class="cell el-table__cell" v-for="item in columns"> <template v-for="(item,key) in columns.properties">
<div class="cell" style="text-align:center;" v-if="item.input==='selection'"> <div class="cell el-table__cell" v-if="item.input==='selection'">
<input class="el-checkbox__input row" type="checkbox" :value="index" @click="checkClick" /> <div class="cell" style="text-align:center;" v-if="item.input==='selection'">
<input class="el-checkbox__input row" type="checkbox" :value="index" @click="checkClick" />
</div>
</div>
<template v-else-if="item.type==='object'">
<template v-for="(item2,key2) in item.properties">
<div class="cell el-table__cell" v-if="!item2.hidden">
<div class="cell" v-if="row[key]&&!item.hidden">{{row[key][key2]}}</div>
</div>
</template>
</template>
<div class="cell el-table__cell" v-else-if="!item.hidden">
<div class="cell">{{row[key]}}</div>
</div> </div>
<div class="cell" v-else-if="!item.hidden">{{row[item.dataKey]}}</div> </template>
</div>
</div> </div>
</div>`, </div>`,
styles: html`<style> styles: html`<style>

62
code/src/Modules/SettleAccount/host/SettleAccount.HttpApi.Host/wwwroot/models/_extraProperties.js

@ -0,0 +1,62 @@
export default {
title: "扩展属性",
type: "object",
properties: {
DeliveryNumber: {
type: "string",
title: "交货号",
},
InvoiceNumber: {
type: "string",
title: "发票号",
},
VendorCode: {
type: "string",
title: "供应商代码",
},
VendorName: {
type: "string",
title: "供应商名称",
},
PurchaseOrderNumber: {
type: "string",
title: "采购订单号",
},
DeliveryIndexNumber: {
type: "string",
title: "交付索引号",
},
PartName: {
type: "string",
title: "零件名称",
},
Price: {
type: "number",
title: "价格",
},
Amount: {
title: "金额",
type: "number",
},
Tallage: {
type: "number",
title: "税额",
},
Total: {
type: "number",
title: "价税合计",
},
ProtocolNumber: {
type: "string",
title: "协议编号",
},
Remark: {
type: "string",
title: "备注",
},
CommodityGroup: {
type: "string",
title: "商品组",
},
},
};

54
code/src/Modules/SettleAccount/host/SettleAccount.HttpApi.Host/wwwroot/models/input/jie-suan-detail.js

@ -1,4 +1,5 @@
import { version, state } from "../_options.js"; import { version, state } from "../_options.js";
import extraProperties from "../_extraProperties.js";
const schema = { const schema = {
title: "结算数据", title: "结算数据",
@ -32,58 +33,7 @@ const schema = {
title: "生产号", title: "生产号",
type: "string", type: "string",
}, },
extraProperties: { extraProperties,
title: "扩展属性",
type: "object",
properties: {
DeliveryNumber: {
title: "交货号",
},
InvoiceNumber: {
title: "发票号",
},
VendorCode: {
title: "供应商代码",
},
VendorName: {
title: "供应商名称",
},
PurchaseOrderNumber: {
title: "采购订单号",
},
DeliveryIndexNumber: {
title: "交付索引号",
},
PartName: {
title: "零件名称",
},
Price: {
title: "价格",
type: "number",
},
Amount: {
title: "金额",
type: "number",
},
Tallage: {
title: "税额",
type: "number",
},
Total: {
title: "价税合计",
type: "number",
},
ProtocolNumber: {
title: "协议编号",
},
Remark: {
title: "备注",
},
CommodityGroup: {
title: "商品组",
},
},
},
}, },
}; };

231
code/src/Modules/SettleAccount/host/SettleAccount.HttpApi.Host/wwwroot/views/settle/_check.js

@ -4,7 +4,7 @@ import { ref, nextTick, onMounted, watch } from "vue";
import request from "../../request/index.js"; import request from "../../request/index.js";
import AppForm from "../../components/form/index.js"; import AppForm from "../../components/form/index.js";
import AppTable from "../../components/table/index.js"; import AppTable from "../../components/table/index.js";
import { getUrl } from "../../request/index.js"; import extraProperties from "../../models/_extraProperties.js";
export default { export default {
components: { AppForm, AppTable }, components: { AppForm, AppTable },
@ -13,22 +13,22 @@ export default {
<el-row style="height:calc(100vh - 160px);" v-loading="loading"> <el-row style="height:calc(100vh - 160px);" v-loading="loading">
<el-col> <el-col>
<el-tabs> <el-tabs>
<el-tab-pane label="发票和结算分组对应关系" v-if="model.invoicE_MAP_GROUP.length"> <el-tab-pane :label="columns1.title" v-if="model.invoicE_MAP_GROUP.length">
<el-scrollbar> <el-scrollbar>
<app-table :data="model.invoicE_MAP_GROUP" :columns="columns1" /> <app-table :data="model.invoicE_MAP_GROUP" :columns="columns1" />
</el-scrollbar> </el-scrollbar>
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="发票明细" v-if="model.invoicE_WAIT_DETAIL.length"> <el-tab-pane :label="columns2.title" v-if="model.invoicE_WAIT_DETAIL.length">
<el-scrollbar> <el-scrollbar>
<app-table :data="model.invoicE_WAIT_DETAIL" :columns="columns2" /> <app-table :data="model.invoicE_WAIT_DETAIL" :columns="columns2" />
</el-scrollbar> </el-scrollbar>
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="已结分组包含不可结算零件" v-if="model.invoicE_NOT_SETTLE.length"> <el-tab-pane :label="columns3.title" v-if="model.invoicE_NOT_SETTLE.length">
<el-scrollbar> <el-scrollbar>
<app-table :data="model.invoicE_NOT_SETTLE" :columns="columns3" /> <app-table :data="model.invoicE_NOT_SETTLE" :columns="columns3" />
</el-scrollbar> </el-scrollbar>
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="发票调整明细" v-if="model.adJ_DETAIL.length"> <el-tab-pane :label="columns4.title" v-if="model.adJ_DETAIL.length">
<el-scrollbar> <el-scrollbar>
<app-table :data="model.adJ_DETAIL" :columns="columns4" /> <app-table :data="model.adJ_DETAIL" :columns="columns4" />
</el-scrollbar> </el-scrollbar>
@ -157,110 +157,132 @@ export default {
adJ_DETAIL: [], adJ_DETAIL: [],
}); });
// //
const columns1 = [ const columns1 = {
{ type: "object",
dataKey: "invbillNum", title: "发票和结算分组对应关系",
title: "发票号", properties: {
}, invbillNum: {
{ type: "string",
dataKey: "invGroupNum", title: "发票号",
title: "发票分组号", },
}, invGroupNum: {
{ type: "string",
dataKey: "settleGroupNum", title: "发票分组号",
title: "结算分组号", },
}, settleGroupNum: {
{ type: "string",
dataKey: "amt", title: "结算分组号",
title: "金额", },
},
];
const columns2 = [
{
dataKey: "invbillNum",
title: "发票号",
},
{
dataKey: "invGroupNum",
title: "发票分组号",
},
{
dataKey: "lu",
title: "零件号",
},
{
dataKey: "price",
title: "单价",
},
{
dataKey: "qty",
title: "数量",
},
{
dataKey: "amt",
title: "金额",
},
{
dataKey: "bussiessType",
title: "业务分类",
},
];
const columns3 = [
{
dataKey: "invGroupNum",
title: "发票分组号",
},
{
dataKey: "settleGroupNum",
title: "结算分组号",
},
{
dataKey: "lu",
title: "可结算分组号",
},
{
dataKey: "lu1",
title: "不可结算分组号",
},
];
const columns4 = [
{
dataKey: "oldInvBillNum",
title: "作废发票号",
},
{
dataKey: "invBillNum",
title: "发票号",
},
{
dataKey: "settleDate",
title: "下线日期",
},
{
dataKey: "invGroupNum",
title: "发票分组号",
}, },
{ };
dataKey: "lu", const columns2 = {
title: "零件号", type: "object",
title: "发票明细",
properties: {
invbillNum: {
type: "string",
title: "发票号",
},
invGroupNum: {
type: "string",
title: "发票分组号",
},
lu: {
type: "string",
title: "零件号",
},
price: {
type: "number",
title: "单价",
},
qty: {
type: "number",
title: "数量",
},
amt: {
type: "number",
title: "金额",
},
bussiessType: {
type: "number",
title: "业务分类",
},
extraProperties,
}, },
{ };
dataKey: "pn", const columns3 = {
title: "标识号", type: "object",
title: "已结分组包含不可结算零件",
properties: {
invGroupNum: {
type: "string",
title: "发票分组号",
},
settleGroupNum: {
type: "string",
title: "结算分组号",
},
lu: {
type: "string",
title: "可结算分组号",
},
lu1: {
type: "string",
title: "不可结算分组号",
},
}, },
{ };
dataKey: "qty", const columns4 = {
title: "数量", type: "object",
title: "发票调整明细",
properties: {
oldInvBillNum: {
type: "string",
title: "作废发票号",
},
invBillNum: {
type: "string",
title: "发票号",
},
settleDate: {
type: "string",
title: "下线日期",
input: "datetime",
},
invGroupNum: {
type: "string",
title: "发票分组号",
},
lu: {
type: "string",
title: "零件号",
},
pn: {
type: "string",
title: "标识号",
},
qty: {
type: "number",
title: "数量",
},
groupNum: {
type: "number",
title: "结算分组",
},
}, },
{ };
dataKey: "groupNum", const columns5 = {
title: "结算分组", type: "object",
title: "",
properties: {
selection: {
input: "selection",
},
...columns4.properties,
}, },
]; };
const columns5 = columns4.filter((o) => o.dataKey !== "oldInvBillNum" && o.dataKey !== "invGroupNum"); delete columns5.properties["oldInvBillNum"];
columns5.unshift({ delete columns5.properties["invGroupNum"];
input: "selection",
});
//显示重开发票对话框 //显示重开发票对话框
const setupDialogVisable = ref(false); const setupDialogVisable = ref(false);
const setupRef = ref(1); const setupRef = ref(1);
@ -437,7 +459,6 @@ export default {
columns2, columns2,
columns3, columns3,
columns4, columns4,
columns4,
columns5, columns5,
showSetupDialog, showSetupDialog,
setupRef, setupRef,

Loading…
Cancel
Save