zhouhongjun
11 months ago
3 changed files with 500 additions and 0 deletions
@ -0,0 +1,452 @@ |
|||||
|
import balanSchema from "./vmi.js"; |
||||
|
|
||||
|
function balanceSchema() { |
||||
|
return { |
||||
|
title: "寄售库存", |
||||
|
type: "object", |
||||
|
properties: { |
||||
|
year: { |
||||
|
title: "年", |
||||
|
type: "string", |
||||
|
rules: [ |
||||
|
{ |
||||
|
required: true, |
||||
|
}, |
||||
|
], |
||||
|
}, |
||||
|
realPartCode: { |
||||
|
title: "厂内零件号", |
||||
|
type: "string", |
||||
|
rules: [ |
||||
|
{ |
||||
|
required: true, |
||||
|
}, |
||||
|
], |
||||
|
}, |
||||
|
erpToLoc: { |
||||
|
title: "ERP库位", |
||||
|
type: "string", |
||||
|
rules: [ |
||||
|
{ |
||||
|
required: true, |
||||
|
}, |
||||
|
], |
||||
|
}, |
||||
|
|
||||
|
historyQty: { |
||||
|
title: "历史库存数量", |
||||
|
type: "string", |
||||
|
input: "number", |
||||
|
rules: [ |
||||
|
{ |
||||
|
required: true, |
||||
|
}, |
||||
|
], |
||||
|
}, |
||||
|
balanceQty: { |
||||
|
title: "当年库存数量", |
||||
|
type: "string", |
||||
|
input: "number", |
||||
|
rules: [ |
||||
|
{ |
||||
|
required: true, |
||||
|
}, |
||||
|
], |
||||
|
}, |
||||
|
inventQty: { |
||||
|
title: "库存余额数量", |
||||
|
type: "string", |
||||
|
input: "number", |
||||
|
rules: [ |
||||
|
{ |
||||
|
required: true, |
||||
|
}, |
||||
|
], |
||||
|
}, |
||||
|
settleQty: { |
||||
|
title: "有结无发合计", |
||||
|
type: "string", |
||||
|
input: "number", |
||||
|
rules: [ |
||||
|
{ |
||||
|
required: true, |
||||
|
}, |
||||
|
], |
||||
|
}, |
||||
|
january: { |
||||
|
title: "1月", |
||||
|
type: "string", |
||||
|
input: "number", |
||||
|
rules: [ |
||||
|
{ |
||||
|
required: true, |
||||
|
}, |
||||
|
], |
||||
|
}, |
||||
|
|
||||
|
settleJanuary: { |
||||
|
title: "1月有结无发", |
||||
|
type: "string", |
||||
|
input: "number", |
||||
|
rules: [ |
||||
|
{ |
||||
|
required: true, |
||||
|
}, |
||||
|
], |
||||
|
}, |
||||
|
|
||||
|
february: { |
||||
|
title: "2月", |
||||
|
type: "string", |
||||
|
input: "number", |
||||
|
rules: [ |
||||
|
{ |
||||
|
required: true, |
||||
|
}, |
||||
|
], |
||||
|
}, |
||||
|
|
||||
|
settleFebruary: { |
||||
|
title: "2月有结无发", |
||||
|
type: "string", |
||||
|
input: "number", |
||||
|
rules: [ |
||||
|
{ |
||||
|
required: true, |
||||
|
}, |
||||
|
], |
||||
|
}, |
||||
|
|
||||
|
march: { |
||||
|
title: "3月", |
||||
|
type: "string", |
||||
|
input: "number", |
||||
|
rules: [ |
||||
|
{ |
||||
|
required: true, |
||||
|
}, |
||||
|
], |
||||
|
}, |
||||
|
|
||||
|
settleMarch: { |
||||
|
title: "3月有结无发", |
||||
|
type: "string", |
||||
|
input: "number", |
||||
|
rules: [ |
||||
|
{ |
||||
|
required: true, |
||||
|
}, |
||||
|
], |
||||
|
}, |
||||
|
april: { |
||||
|
title: "4月", |
||||
|
type: "string", |
||||
|
input: "number", |
||||
|
rules: [ |
||||
|
{ |
||||
|
required: true, |
||||
|
}, |
||||
|
], |
||||
|
}, |
||||
|
|
||||
|
settleApril: { |
||||
|
title: "4月有结无发", |
||||
|
type: "string", |
||||
|
input: "number", |
||||
|
rules: [ |
||||
|
{ |
||||
|
required: true, |
||||
|
}, |
||||
|
], |
||||
|
}, |
||||
|
|
||||
|
may: { |
||||
|
title: "5月", |
||||
|
type: "string", |
||||
|
input: "number", |
||||
|
rules: [ |
||||
|
{ |
||||
|
required: true, |
||||
|
}, |
||||
|
], |
||||
|
}, |
||||
|
|
||||
|
settleMay: { |
||||
|
title: "5月有结无发", |
||||
|
type: "string", |
||||
|
input: "number", |
||||
|
rules: [ |
||||
|
{ |
||||
|
required: true, |
||||
|
}, |
||||
|
], |
||||
|
}, |
||||
|
|
||||
|
june: { |
||||
|
title: "6月", |
||||
|
type: "string", |
||||
|
input: "number", |
||||
|
rules: [ |
||||
|
{ |
||||
|
required: true, |
||||
|
}, |
||||
|
], |
||||
|
}, |
||||
|
|
||||
|
settleJune: { |
||||
|
title: "6月有结无发", |
||||
|
type: "string", |
||||
|
input: "number", |
||||
|
rules: [ |
||||
|
{ |
||||
|
required: true, |
||||
|
}, |
||||
|
], |
||||
|
}, |
||||
|
|
||||
|
july: { |
||||
|
title: "7月", |
||||
|
type: "string", |
||||
|
input: "number", |
||||
|
rules: [ |
||||
|
{ |
||||
|
required: true, |
||||
|
}, |
||||
|
], |
||||
|
}, |
||||
|
|
||||
|
settleJuly: { |
||||
|
title: "7月有结无发", |
||||
|
type: "string", |
||||
|
input: "number", |
||||
|
rules: [ |
||||
|
{ |
||||
|
required: true, |
||||
|
}, |
||||
|
], |
||||
|
}, |
||||
|
|
||||
|
august: { |
||||
|
title: "8月", |
||||
|
type: "string", |
||||
|
input: "number", |
||||
|
rules: [ |
||||
|
{ |
||||
|
required: true, |
||||
|
}, |
||||
|
], |
||||
|
}, |
||||
|
|
||||
|
settleAugust: { |
||||
|
title: "8月有结无发", |
||||
|
type: "string", |
||||
|
input: "number", |
||||
|
rules: [ |
||||
|
{ |
||||
|
required: true, |
||||
|
}, |
||||
|
], |
||||
|
}, |
||||
|
|
||||
|
september: { |
||||
|
title: "9月", |
||||
|
type: "string", |
||||
|
input: "number", |
||||
|
rules: [ |
||||
|
{ |
||||
|
required: true, |
||||
|
}, |
||||
|
], |
||||
|
}, |
||||
|
|
||||
|
settleSeptember: { |
||||
|
title: "9月有结无发", |
||||
|
type: "string", |
||||
|
input: "number", |
||||
|
rules: [ |
||||
|
{ |
||||
|
required: true, |
||||
|
}, |
||||
|
], |
||||
|
}, |
||||
|
|
||||
|
october: { |
||||
|
title: "10月", |
||||
|
type: "string", |
||||
|
input: "number", |
||||
|
rules: [ |
||||
|
{ |
||||
|
required: true, |
||||
|
}, |
||||
|
], |
||||
|
}, |
||||
|
|
||||
|
settleOctober: { |
||||
|
title: "10月有结无发", |
||||
|
type: "string", |
||||
|
input: "number", |
||||
|
rules: [ |
||||
|
{ |
||||
|
required: true, |
||||
|
}, |
||||
|
], |
||||
|
}, |
||||
|
|
||||
|
november: { |
||||
|
title: "11月", |
||||
|
type: "string", |
||||
|
input: "number", |
||||
|
rules: [ |
||||
|
{ |
||||
|
required: true, |
||||
|
}, |
||||
|
], |
||||
|
}, |
||||
|
|
||||
|
settleNovember: { |
||||
|
title: "11月有结无发", |
||||
|
type: "string", |
||||
|
input: "number", |
||||
|
rules: [ |
||||
|
{ |
||||
|
required: true, |
||||
|
}, |
||||
|
], |
||||
|
}, |
||||
|
|
||||
|
december: { |
||||
|
title: "12月", |
||||
|
type: "string", |
||||
|
input: "number", |
||||
|
rules: [ |
||||
|
{ |
||||
|
required: true, |
||||
|
}, |
||||
|
], |
||||
|
}, |
||||
|
|
||||
|
settleDecember: { |
||||
|
title: "12月有结无发", |
||||
|
type: "string", |
||||
|
input: "number", |
||||
|
rules: [ |
||||
|
{ |
||||
|
required: true, |
||||
|
}, |
||||
|
], |
||||
|
}, |
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
// reMark: {
|
||||
|
// title: "备注",
|
||||
|
// type: "string",
|
||||
|
// input: "textarea",
|
||||
|
// },
|
||||
|
}, |
||||
|
}; |
||||
|
} |
||||
|
|
||||
|
|
||||
|
const schema = balanceSchema(); |
||||
|
|
||||
|
const baseUrl = "settleaccount/vmi"; |
||||
|
const queryUrl = `${baseUrl}/balance-sum-by-version`; |
||||
|
const detailsUrl = `${baseUrl}/get/%s`; |
||||
|
const createUrl = `${baseUrl}/create`; |
||||
|
const updateUrl = `${baseUrl}/update/%s`; |
||||
|
const deleteUrl = `${baseUrl}/delete-list`; |
||||
|
const importUrl = `${baseUrl}/code-setting-upload-excel-import`; |
||||
|
const exportUrl = `${baseUrl}/balance-sum-by-version-export`; |
||||
|
const queryMethod = "POST"; |
||||
|
const detailsMethod = "POST"; |
||||
|
const createMethod = "POST"; |
||||
|
const updateMethod = "POST"; |
||||
|
const deleteMethod = "POST"; |
||||
|
const importMethod = "POST"; |
||||
|
const exportMethod = "POST"; |
||||
|
|
||||
|
export default function () { |
||||
|
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: "erpToLoc", |
||||
|
action: "like", |
||||
|
value: null, |
||||
|
readOnly: true, |
||||
|
}, |
||||
|
{ |
||||
|
logic: "and", |
||||
|
column: "realPartCode", |
||||
|
action: "like", |
||||
|
value: null, |
||||
|
readOnly: true, |
||||
|
}, |
||||
|
|
||||
|
], |
||||
|
}, |
||||
|
skipCount: { |
||||
|
hidden: true, |
||||
|
default: 0, |
||||
|
}, |
||||
|
maxResultCount: { |
||||
|
hidden: true, |
||||
|
default: 10, |
||||
|
}, |
||||
|
sorting: { |
||||
|
hidden: true, |
||||
|
}, |
||||
|
}, |
||||
|
}, |
||||
|
}, |
||||
|
table: { |
||||
|
schema: schema, |
||||
|
}, |
||||
|
edit: { |
||||
|
detailsUrl, |
||||
|
createUrl, |
||||
|
updateUrl, |
||||
|
deleteUrl, |
||||
|
importUrl, |
||||
|
exportUrl, |
||||
|
detailsMethod, |
||||
|
createMethod, |
||||
|
updateMethod, |
||||
|
deleteMethod, |
||||
|
importMethod, |
||||
|
exportMethod, |
||||
|
schema: schema, |
||||
|
}, |
||||
|
}; |
||||
|
} |
@ -0,0 +1,44 @@ |
|||||
|
import AppList from "../../components/list/index.js"; |
||||
|
import html from "html"; |
||||
|
import { ref, onMounted, onUnmounted } from "vue"; |
||||
|
import { useRoute } from "vue-router"; |
||||
|
import { ElNotification } from "element-plus"; |
||||
|
import request from "../../request/index.js"; |
||||
|
|
||||
|
export default { |
||||
|
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); |
||||
|
}; |
||||
|
const showMessage = async (data) => { |
||||
|
await ElNotification.closeAll(); |
||||
|
ElNotification({ |
||||
|
position: "bottom-right", |
||||
|
title: "提示", |
||||
|
message: `待同步库存数量: ${data}`, |
||||
|
duration: 0, |
||||
|
}); |
||||
|
}; |
||||
|
const event = "VmiBalance"; |
||||
|
onMounted(async () => { |
||||
|
const model = "vmi/balance-month"; |
||||
|
const useConfig = (await import(`../../models/${model}.js`)).default; |
||||
|
config.value = useConfig(route.meta?.businessType, route.meta); |
||||
|
const result = await request("settleaccount/vmi-async-message/get-message-count", null, { method: "POST" }); |
||||
|
if (!result.errors) { |
||||
|
//showMessage(result.data);
|
||||
|
} |
||||
|
PubSub.subscribe(event, async (_, data) => { |
||||
|
if (route.path === "/vmi/balance") { |
||||
|
//showMessage(data);
|
||||
|
} |
||||
|
}); |
||||
|
}); |
||||
|
onUnmounted(() => PubSub.unsubscribe(event)); |
||||
|
return { config, onCommand }; |
||||
|
}, |
||||
|
}; |
Loading…
Reference in new issue