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. 32
      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. 149
      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 =>
{ {

32
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'">
<div class="cell" style="text-align:center;">
<input class="el-checkbox__input" type="checkbox" v-model="checkAll" :indeterminate="checkAllIndeterminate" @click="checkAllClick($event)" /> <input class="el-checkbox__input" type="checkbox" v-model="checkAll" :indeterminate="checkAllIndeterminate" @click="checkAllClick($event)" />
</div> </div>
<div class="cell" v-else-if="!item.hidden">{{item.title}}</div>
</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">{{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 el-table__cell" v-if="item.input==='selection'">
<div class="cell" style="text-align:center;" v-if="item.input==='selection'"> <div class="cell" style="text-align:center;" v-if="item.input==='selection'">
<input class="el-checkbox__input row" type="checkbox" :value="index" @click="checkClick" /> <input class="el-checkbox__input row" type="checkbox" :value="index" @click="checkClick" />
</div> </div>
<div class="cell" v-else-if="!item.hidden">{{row[item.dataKey]}}</div>
</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>
</template>
</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: "商品组",
},
},
},
}, },
}; };

149
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: "发票和结算分组对应关系",
properties: {
invbillNum: {
type: "string",
title: "发票号", title: "发票号",
}, },
{ invGroupNum: {
dataKey: "invGroupNum", type: "string",
title: "发票分组号", title: "发票分组号",
}, },
{ settleGroupNum: {
dataKey: "settleGroupNum", type: "string",
title: "结算分组号", title: "结算分组号",
}, },
{
dataKey: "amt",
title: "金额",
}, },
]; };
const columns2 = [ const columns2 = {
{ type: "object",
dataKey: "invbillNum", title: "发票明细",
properties: {
invbillNum: {
type: "string",
title: "发票号", title: "发票号",
}, },
{ invGroupNum: {
dataKey: "invGroupNum", type: "string",
title: "发票分组号", title: "发票分组号",
}, },
{ lu: {
dataKey: "lu", type: "string",
title: "零件号", title: "零件号",
}, },
{ price: {
dataKey: "price", type: "number",
title: "单价", title: "单价",
}, },
{ qty: {
dataKey: "qty", type: "number",
title: "数量", title: "数量",
}, },
{ amt: {
dataKey: "amt", type: "number",
title: "金额", title: "金额",
}, },
{ bussiessType: {
dataKey: "bussiessType", type: "number",
title: "业务分类", title: "业务分类",
}, },
]; extraProperties,
const columns3 = [ },
{ };
dataKey: "invGroupNum", const columns3 = {
type: "object",
title: "已结分组包含不可结算零件",
properties: {
invGroupNum: {
type: "string",
title: "发票分组号", title: "发票分组号",
}, },
{ settleGroupNum: {
dataKey: "settleGroupNum", type: "string",
title: "结算分组号", title: "结算分组号",
}, },
{ lu: {
dataKey: "lu", type: "string",
title: "可结算分组号", title: "可结算分组号",
}, },
{ lu1: {
dataKey: "lu1", type: "string",
title: "不可结算分组号", title: "不可结算分组号",
}, },
]; },
const columns4 = [ };
{ const columns4 = {
dataKey: "oldInvBillNum", type: "object",
title: "发票调整明细",
properties: {
oldInvBillNum: {
type: "string",
title: "作废发票号", title: "作废发票号",
}, },
{ invBillNum: {
dataKey: "invBillNum", type: "string",
title: "发票号", title: "发票号",
}, },
{ settleDate: {
dataKey: "settleDate", type: "string",
title: "下线日期", title: "下线日期",
input: "datetime",
}, },
{ invGroupNum: {
dataKey: "invGroupNum", type: "string",
title: "发票分组号", title: "发票分组号",
}, },
{ lu: {
dataKey: "lu", type: "string",
title: "零件号", title: "零件号",
}, },
{ pn: {
dataKey: "pn", type: "string",
title: "标识号", title: "标识号",
}, },
{ qty: {
dataKey: "qty", type: "number",
title: "数量", title: "数量",
}, },
{ groupNum: {
dataKey: "groupNum", type: "number",
title: "结算分组", title: "结算分组",
}, },
]; },
const columns5 = columns4.filter((o) => o.dataKey !== "oldInvBillNum" && o.dataKey !== "invGroupNum"); };
columns5.unshift({ const columns5 = {
type: "object",
title: "",
properties: {
selection: {
input: "selection", input: "selection",
}); },
...columns4.properties,
},
};
delete columns5.properties["oldInvBillNum"];
delete columns5.properties["invGroupNum"];
//显示重开发票对话框 //显示重开发票对话框
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