学 赵
1 year ago
41 changed files with 5949 additions and 272 deletions
@ -0,0 +1,145 @@ |
|||||
|
import version from "../version.js"; |
||||
|
import { state2 } from "../state.js"; |
||||
|
import businessType from "../businessType.js"; |
||||
|
import invoiceState from "../invoiceState.js"; |
||||
|
|
||||
|
const state = Object.assign({}, state2); |
||||
|
state.input = "tabs"; |
||||
|
const schema = { |
||||
|
title: "商务审批", |
||||
|
type: "object", |
||||
|
properties: { |
||||
|
version, |
||||
|
realnvBillNum: { |
||||
|
title: "金税发票号", |
||||
|
type: "string", |
||||
|
}, |
||||
|
invbillNum: { |
||||
|
title: "系统发票号", |
||||
|
type: "string", |
||||
|
link: true, |
||||
|
}, |
||||
|
amt: { |
||||
|
title: "未税金额", |
||||
|
type: "number", |
||||
|
}, |
||||
|
taxAmt: { |
||||
|
title: "税后金额", |
||||
|
type: "number", |
||||
|
}, |
||||
|
invGroupNum: { |
||||
|
title: "发票分组号", |
||||
|
type: "number", |
||||
|
link: true, |
||||
|
}, |
||||
|
businessType, |
||||
|
state, |
||||
|
invoiceState, |
||||
|
taxDiff: { |
||||
|
title: "发票税后尾差", |
||||
|
type: "number", |
||||
|
}, |
||||
|
clientCode: { |
||||
|
title: "客户代码", |
||||
|
type: "string", |
||||
|
}, |
||||
|
}, |
||||
|
}; |
||||
|
|
||||
|
export default function () { |
||||
|
const service = "invoice_service"; |
||||
|
const queryUrl = `settleaccount/${service}/main-query`; |
||||
|
const exportUrl = `settleaccount/${service}/export`; |
||||
|
const invoiceUrl = `settleaccount/${service}/generate-invoice`; |
||||
|
const receivedUrl = `settleaccount/${service}/received`; |
||||
|
const rejectUrl = `settleaccount/${service}/reject`; |
||||
|
const reissueUrl = `settleaccount/${service}/reissue-invoice`; |
||||
|
const queryMethod = "POST"; |
||||
|
const exportMethod = "POST"; |
||||
|
const invoiceMethod = "POST"; |
||||
|
const receivedMethod = "POST"; |
||||
|
const rejectMethod = "POST"; |
||||
|
const reissueMethod = "POST"; |
||||
|
return { |
||||
|
query: { |
||||
|
url: queryUrl, |
||||
|
method: queryMethod, |
||||
|
hasFilter: true, |
||||
|
schema: { |
||||
|
title: "商务审批", |
||||
|
type: "object", |
||||
|
properties: { |
||||
|
filters: { |
||||
|
title: "项目", |
||||
|
type: "array", |
||||
|
hidden: true, |
||||
|
items: { |
||||
|
type: "object", |
||||
|
properties: { |
||||
|
logic: { |
||||
|
type: "int", |
||||
|
}, |
||||
|
column: { |
||||
|
type: "string", |
||||
|
}, |
||||
|
action: { |
||||
|
type: "int", |
||||
|
}, |
||||
|
value: { |
||||
|
type: "string", |
||||
|
}, |
||||
|
}, |
||||
|
}, |
||||
|
default: [ |
||||
|
{ |
||||
|
logic: "and", |
||||
|
column: "version", |
||||
|
action: "equal", |
||||
|
value: null, |
||||
|
readOnly: true, |
||||
|
}, |
||||
|
{ |
||||
|
logic: "and", |
||||
|
column: "state", |
||||
|
action: "equal", |
||||
|
value: null, |
||||
|
readOnly: true, |
||||
|
}, |
||||
|
], |
||||
|
}, |
||||
|
skipCount: { |
||||
|
hidden: true, |
||||
|
default: 0, |
||||
|
}, |
||||
|
maxResultCount: { |
||||
|
hidden: true, |
||||
|
default: 10, |
||||
|
}, |
||||
|
sorting: { |
||||
|
hidden: true, |
||||
|
}, |
||||
|
businessType: { |
||||
|
hidden: true, |
||||
|
default: 0, |
||||
|
}, |
||||
|
}, |
||||
|
}, |
||||
|
}, |
||||
|
table: { |
||||
|
schema: schema, |
||||
|
}, |
||||
|
edit: { |
||||
|
exportUrl, |
||||
|
invoiceUrl, |
||||
|
receivedUrl, |
||||
|
rejectUrl, |
||||
|
reissueUrl, |
||||
|
exportMethod, |
||||
|
invoiceMethod, |
||||
|
receivedMethod, |
||||
|
rejectMethod, |
||||
|
reissueMethod, |
||||
|
schema: schema, |
||||
|
}, |
||||
|
}; |
||||
|
} |
@ -0,0 +1,23 @@ |
|||||
|
import AppList from "../../components/list/index.js"; |
||||
|
import html from "html"; |
||||
|
import { ref, onMounted } from "vue"; |
||||
|
import { useRoute } from "vue-router"; |
||||
|
|
||||
|
export default function (model) { |
||||
|
return { |
||||
|
components: { AppList }, |
||||
|
template: html`<app-list v-if="config" :config="config" @command="onCommand" />`, |
||||
|
setup() { |
||||
|
const config = ref(null); |
||||
|
const route = useRoute(); |
||||
|
const onCommand = async (item, rows) => { |
||||
|
console.log(item.path, item, rows); |
||||
|
}; |
||||
|
onMounted(async () => { |
||||
|
const useConfig = (await import(`../models/${model}.js`)).default; |
||||
|
config.value = useConfig(route.meta?.businessType); |
||||
|
}); |
||||
|
return { config, onCommand }; |
||||
|
}, |
||||
|
}; |
||||
|
} |
@ -1,15 +1,2 @@ |
|||||
import AppList from "../../components/list/index.js"; |
import useList from "../_list.js"; |
||||
import html from "html"; |
export default useList("base-data/bei-jian"); |
||||
import useConfig from "../../models/base-data/bei-jian.js"; |
|
||||
|
|
||||
export default { |
|
||||
components: { AppList }, |
|
||||
template: html`<app-list :config="config" @command="onCommand" />`, |
|
||||
setup() { |
|
||||
const config = useConfig(); |
|
||||
const onCommand = async (item, rows) => { |
|
||||
console.log(item.path, item, rows); |
|
||||
}; |
|
||||
return { config, onCommand }; |
|
||||
}, |
|
||||
}; |
|
||||
|
@ -1,15 +1,2 @@ |
|||||
import AppList from "../../components/list/index.js"; |
import useList from "../_list.js"; |
||||
import html from "html"; |
export default useList("base-data/bom"); |
||||
import useConfig from "../../models/base-data/bom.js"; |
|
||||
|
|
||||
export default { |
|
||||
components: { AppList }, |
|
||||
template: html`<app-list :config="config" @command="onCommand" />`, |
|
||||
setup() { |
|
||||
const config = useConfig(); |
|
||||
const onCommand = async (item, rows) => { |
|
||||
console.log(item.path, item, rows); |
|
||||
}; |
|
||||
return { config, onCommand }; |
|
||||
}, |
|
||||
}; |
|
||||
|
@ -1,15 +1,2 @@ |
|||||
import AppList from "../../components/list/index.js"; |
import useList from "../_list.js"; |
||||
import html from "html"; |
export default useList("base-data/cai-gou"); |
||||
import useConfig from "../../models/base-data/cai-gou.js"; |
|
||||
|
|
||||
export default { |
|
||||
components: { AppList }, |
|
||||
template: html`<app-list :config="config" @command="onCommand" />`, |
|
||||
setup() { |
|
||||
const config = useConfig(); |
|
||||
const onCommand = async (item, rows) => { |
|
||||
console.log(item.path, item, rows); |
|
||||
}; |
|
||||
return { config, onCommand }; |
|
||||
}, |
|
||||
}; |
|
||||
|
@ -1,15 +1,2 @@ |
|||||
import AppList from "../../components/list/index.js"; |
import useList from "../_list.js"; |
||||
import html from "html"; |
export default useList("base-data/code-setting"); |
||||
import useConfig from "../../models/base-data/code-setting.js"; |
|
||||
|
|
||||
export default { |
|
||||
components: { AppList }, |
|
||||
template: html`<app-list :config="config" @command="onCommand" />`, |
|
||||
setup() { |
|
||||
const config = useConfig(); |
|
||||
const onCommand = async (item, rows) => { |
|
||||
console.log(item.path, item, rows); |
|
||||
}; |
|
||||
return { config, onCommand }; |
|
||||
}, |
|
||||
}; |
|
||||
|
@ -1,15 +1,2 @@ |
|||||
import AppList from "../../components/list/index.js"; |
import useList from "../_list.js"; |
||||
import html from "html"; |
export default useList("base-data/ke-hu"); |
||||
import useConfig from "../../models/base-data/ke-hu.js"; |
|
||||
|
|
||||
export default { |
|
||||
components: { AppList }, |
|
||||
template: html`<app-list :config="config" @command="onCommand" />`, |
|
||||
setup() { |
|
||||
const config = useConfig(); |
|
||||
const onCommand = async (item, rows) => { |
|
||||
console.log(item.path, item, rows); |
|
||||
}; |
|
||||
return { config, onCommand }; |
|
||||
}, |
|
||||
}; |
|
||||
|
@ -1,15 +1,2 @@ |
|||||
import AppList from "../../components/list/index.js"; |
import useList from "../_list.js"; |
||||
import html from "html"; |
export default useList("base-data/material-relationship"); |
||||
import useConfig from "../../models/base-data/material-relationship.js"; |
|
||||
|
|
||||
export default { |
|
||||
components: { AppList }, |
|
||||
template: html`<app-list :config="config" @command="onCommand" />`, |
|
||||
setup() { |
|
||||
const config = useConfig(); |
|
||||
const onCommand = async (item, rows) => { |
|
||||
console.log(item.path, item, rows); |
|
||||
}; |
|
||||
return { config, onCommand }; |
|
||||
}, |
|
||||
}; |
|
||||
|
@ -1,15 +1,2 @@ |
|||||
import AppList from "../../components/list/index.js"; |
import useList from "../_list.js"; |
||||
import html from "html"; |
export default useList("base-data/material"); |
||||
import useConfig from "../../models/base-data/material.js"; |
|
||||
|
|
||||
export default { |
|
||||
components: { AppList }, |
|
||||
template: html`<app-list :config="config" @command="onCommand" />`, |
|
||||
setup() { |
|
||||
const config = useConfig(); |
|
||||
const onCommand = async (item, rows) => { |
|
||||
console.log(item.path, item, rows); |
|
||||
}; |
|
||||
return { config, onCommand }; |
|
||||
}, |
|
||||
}; |
|
||||
|
@ -1,15 +1,2 @@ |
|||||
import AppList from "../../components/list/index.js"; |
import useList from "../_list.js"; |
||||
import html from "html"; |
export default useList("base-data/parts-relationship"); |
||||
import useConfig from "../../models/base-data/parts-relationship.js"; |
|
||||
|
|
||||
export default { |
|
||||
components: { AppList }, |
|
||||
template: html`<app-list :config="config" @command="onCommand" />`, |
|
||||
setup() { |
|
||||
const config = useConfig(); |
|
||||
const onCommand = async (item, rows) => { |
|
||||
console.log(item.path, item, rows); |
|
||||
}; |
|
||||
return { config, onCommand }; |
|
||||
}, |
|
||||
}; |
|
||||
|
@ -1,15 +1,2 @@ |
|||||
import AppList from "../../components/list/index.js"; |
import useList from "../_list.js"; |
||||
import html from "html"; |
export default useList("base-data/xiao-shou"); |
||||
import useConfig from "../../models/base-data/xiaos-hou.js"; |
|
||||
|
|
||||
export default { |
|
||||
components: { AppList }, |
|
||||
template: html`<app-list :config="config" @command="onCommand" />`, |
|
||||
setup() { |
|
||||
const config = useConfig(); |
|
||||
const onCommand = async (item, rows) => { |
|
||||
console.log(item.path, item, rows); |
|
||||
}; |
|
||||
return { config, onCommand }; |
|
||||
}, |
|
||||
}; |
|
||||
|
@ -1,3 +1,2 @@ |
|||||
import useCompare from "./_compare.js" |
import useCompare from "./_compare.js"; |
||||
|
|
||||
export default useCompare("fa-yun"); |
export default useCompare("fa-yun"); |
||||
|
@ -1,3 +1,2 @@ |
|||||
import useCompare from "./_compare.js"; |
import useCompare from "./_compare.js"; |
||||
|
|
||||
export default useCompare("jie-suan"); |
export default useCompare("jie-suan"); |
||||
|
@ -1,18 +1,2 @@ |
|||||
import AppList from "../../components/list/index.js"; |
import useList from "../_list.js"; |
||||
import html from "html"; |
export default useList("input/edi"); |
||||
import { useRoute } from "vue-router"; |
|
||||
import useConfig from "../../models/input/edi.js"; |
|
||||
|
|
||||
export default { |
|
||||
components: { AppList }, |
|
||||
template: html`<app-list :config="config" @command="onCommand" />`, |
|
||||
setup() { |
|
||||
const route = useRoute(); |
|
||||
const businessType = route.meta.businessType; |
|
||||
const config = useConfig(businessType); |
|
||||
const onCommand = async (item, rows) => { |
|
||||
console.log(item.path, item, rows); |
|
||||
}; |
|
||||
return { config, onCommand }; |
|
||||
}, |
|
||||
}; |
|
||||
|
@ -1,18 +1,2 @@ |
|||||
import AppList from "../../components/list/index.js"; |
import useList from "../_list.js"; |
||||
import html from "html"; |
export default useList("input/jie-suan"); |
||||
import { useRoute } from "vue-router"; |
|
||||
import useConfig from "../../models/input/jie-suan.js"; |
|
||||
|
|
||||
export default { |
|
||||
components: { AppList }, |
|
||||
template: html`<app-list :config="config" @command="onCommand" />`, |
|
||||
setup() { |
|
||||
const route = useRoute(); |
|
||||
const businessType = route.meta.businessType; |
|
||||
const config = useConfig(businessType); |
|
||||
const onCommand = async (item, rows) => { |
|
||||
console.log(item.path, item, rows); |
|
||||
}; |
|
||||
return { config, onCommand }; |
|
||||
}, |
|
||||
}; |
|
||||
|
@ -1,18 +1,37 @@ |
|||||
import AppList from "../../components/list/index.js"; |
import AppList from "../../components/list/index.js"; |
||||
import html from "html"; |
import html from "html"; |
||||
|
import { ref } from "vue"; |
||||
import { useRoute } from "vue-router"; |
import { useRoute } from "vue-router"; |
||||
|
import { ElMessageBox } from "element-plus"; |
||||
import useConfig from "../../models/settle/usable.js"; |
import useConfig from "../../models/settle/usable.js"; |
||||
|
import request from "../../request/index.js"; |
||||
|
|
||||
export default { |
export default { |
||||
components: { AppList }, |
components: { AppList }, |
||||
template: html`<app-list :config="config" @command="onCommand" />`, |
template: html`<app-list ref="appListRef" :config="config" @command="onCommand" />`, |
||||
setup() { |
setup() { |
||||
|
const appListRef = ref(null); |
||||
const route = useRoute(); |
const route = useRoute(); |
||||
const businessType = route.meta.businessType; |
const businessType = route.meta.businessType; |
||||
const config = useConfig(businessType); |
const config = useConfig(businessType); |
||||
const onCommand = async (item, rows) => { |
const onCommand = async (item, rows) => { |
||||
console.log(item.path, item, rows); |
const url = config.edit.addUrl; |
||||
|
if (item.path === "add") { |
||||
|
const invbillNum = rows[0].billNum; |
||||
|
try { |
||||
|
await ElMessageBox.confirm(`"确认为${invbillNum}创建发票?`, "提示", { |
||||
|
type: "warning", |
||||
|
}); |
||||
|
appListRef.value.tableLoading = true; |
||||
|
const result = request(url, { invbillNum }, { method: "POST" }); |
||||
|
console.log(result); |
||||
|
} catch (e) { |
||||
|
console.log(e); |
||||
|
} finally { |
||||
|
appListRef.value.tableLoading = false; |
||||
|
} |
||||
|
} |
||||
}; |
}; |
||||
return { config, onCommand }; |
return { appListRef, config, onCommand }; |
||||
}, |
}, |
||||
}; |
}; |
||||
|
File diff suppressed because it is too large
@ -0,0 +1,45 @@ |
|||||
|
using System; |
||||
|
using Microsoft.EntityFrameworkCore.Migrations; |
||||
|
|
||||
|
namespace Win.Sfs.SettleAccount.Migrations |
||||
|
{ |
||||
|
public partial class _202308174 : Migration |
||||
|
{ |
||||
|
protected override void Up(MigrationBuilder migrationBuilder) |
||||
|
{ |
||||
|
migrationBuilder.DeleteData( |
||||
|
table: "Set_VmiBalance", |
||||
|
keyColumn: "Id", |
||||
|
keyValue: new Guid("9574edd9-55aa-48b6-bb63-fae78eaf5cf7")); |
||||
|
|
||||
|
migrationBuilder.AddColumn<int>( |
||||
|
name: "BusinessType", |
||||
|
table: "Set_HBPO_SE_DETAIL", |
||||
|
type: "int", |
||||
|
nullable: false, |
||||
|
defaultValue: 0); |
||||
|
|
||||
|
migrationBuilder.InsertData( |
||||
|
table: "Set_VmiBalance", |
||||
|
columns: new[] { "Id", "BackupTime", "BillTime", "BillType", "CodeType", "ConcurrencyStamp", "Configcode", "CustomerPartCode", "DeliverTime", "ErpToLoc", "MatchNumber", "OrderNum", "PartCode", "PjsNum", "Qty", "ReMark", "RealCode", "Seq", "SubBillType", "UniqueCode", "VinCode", "factory" }, |
||||
|
values: new object[] { new Guid("65c2e515-7ca9-4b2e-8c16-a066175d1190"), null, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1, null, "2ccdf785b5c648349a36813097be6165", null, null, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), "ErpToLoc", null, "OrderNum", "PartCode", null, 0m, null, null, null, 0, null, "VinCode", null }); |
||||
|
} |
||||
|
|
||||
|
protected override void Down(MigrationBuilder migrationBuilder) |
||||
|
{ |
||||
|
migrationBuilder.DeleteData( |
||||
|
table: "Set_VmiBalance", |
||||
|
keyColumn: "Id", |
||||
|
keyValue: new Guid("65c2e515-7ca9-4b2e-8c16-a066175d1190")); |
||||
|
|
||||
|
migrationBuilder.DropColumn( |
||||
|
name: "BusinessType", |
||||
|
table: "Set_HBPO_SE_DETAIL"); |
||||
|
|
||||
|
migrationBuilder.InsertData( |
||||
|
table: "Set_VmiBalance", |
||||
|
columns: new[] { "Id", "BackupTime", "BillTime", "BillType", "CodeType", "ConcurrencyStamp", "Configcode", "CustomerPartCode", "DeliverTime", "ErpToLoc", "MatchNumber", "OrderNum", "PartCode", "PjsNum", "Qty", "ReMark", "RealCode", "Seq", "SubBillType", "UniqueCode", "VinCode", "factory" }, |
||||
|
values: new object[] { new Guid("9574edd9-55aa-48b6-bb63-fae78eaf5cf7"), null, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1, null, "14dfff8fd6ae4d639ca21b8c8c950de5", null, null, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), "ErpToLoc", null, "OrderNum", "PartCode", null, 0m, null, null, null, 0, null, "VinCode", null }); |
||||
|
} |
||||
|
} |
||||
|
} |
Loading…
Reference in new issue