供应商价目表源码

This commit is contained in:
mzr 2025-06-19 15:48:00 +08:00
parent 141fe50d1d
commit e3b6ac2e82
39 changed files with 2839 additions and 0 deletions

View File

@ -0,0 +1,93 @@
/*wcAyGzXIuLMPKe72bAn4f72BcH03jamWKj7p/ELKGtY=*/
/*
* @Author: ligangt
* @PageInfo: 供应商价目表常量
* @Date: 2018-04-23 19:40:59
* @Last Modified by: tianzhyw
* @Last Modified time: 2023-01-05 20:13:03
*/
/**
* 请求地址
*/
const URL = {
save: '/nccloud/purp/supplierprice/save.do',
edit: '/nccloud/purp/supplierprice/edit.do',
delete: '/nccloud/purp/supplierprice/delete.do',
query: '/nccloud/purp/supplierprice/query.do',
queryByPk: '/nccloud/purp/supplierprice/queryByPk.do',
assgin: '/nccloud/purp/supplierprice/assign.do',
afterEdit: '/nccloud/purp/supplierprice/afterEdit.do',
orgChange: '/nccloud/purp/supplierprice/orgChange.do',
fixRate: '/nccloud/pu/arrival/fixRate.do',
print: '/nccloud/purp/supplierprice/print.do',
excel: '/nccloud/purp/supplierprice/excel.do'
};
const ROOT = '#app';
/**
* 区域编码
*/
const AREA = {
listTable: 'listTable',
searchArea: 'searchArea'
};
// 页面模板编码
const PAGECODE = {
listPagecode: '400500000_list',
appcode: '400500000' // 应用编码
};
/**
* 页面状态
*/
const STATUS = {
edit: 'edit',
browse: 'browse'
};
const PAGEID = '400500000_list';
const COMMON = {
oid: '1001Z81000000000AJRY'
};
const BUTTONAREA = {
listhead: 'list_head',
listinner: 'list_inner'
};
const ALLBUTTONS = [
'Add',
'Edit',
'Export',
'Import',
'Assign',
'Delete',
'Save',
'Cancel',
'Print',
'Output',
'Refresh',
'PrintPop',
'ExportImport'
];
const BROWSEBUTTONS = [
'Add',
'Edit',
'Delete',
'Export',
'Import',
'Assign',
'ExportImport',
'Refresh',
'PrintPop',
'Print',
'Output'
];
const EDITBUTTONS = [ 'Add', 'Save', 'Delete', 'Cancel' ];
const APPID = '0001Z810000000030YVU';
export { URL, STATUS, AREA, ROOT, PAGEID, APPID, COMMON, BUTTONAREA, EDITBUTTONS, ALLBUTTONS, BROWSEBUTTONS, PAGECODE };
/*wcAyGzXIuLMPKe72bAn4f72BcH03jamWKj7p/ELKGtY=*/

View File

@ -0,0 +1,20 @@
/*q2LCmxM8POvl78IL0Liydg1dcQgxyofotE/WgPzUuy0=*/
/*
* @Author: ligangt
* @PageInfo: 按钮点击事件
* @Date: 2018-04-09 16:31:22
* @Last Modified by: heyfn
* @Last Modified time: 2022-04-22 20:23:16
*/
import ActionHandler from '../viewController/actionHandler';
export default function (props, id) {
ActionHandler.getInstance(this).doAction(id);
if (id == 'Add') {
this.setState({
status: 'edit'
});
}
}
/*q2LCmxM8POvl78IL0Liydg1dcQgxyofotE/WgPzUuy0=*/

View File

@ -0,0 +1,9 @@
/*wcAyGzXIuLMPKe72bAn4f72BcH03jamWKj7p/ELKGtY=*/
import buttonClick from './buttonClick';
import searchBtnClick from './searchBtnClick';
import tableButtonClick from './tableButtonClick';
import pageInfoClick from './pageInfoClick';
export { buttonClick, searchBtnClick, tableButtonClick, pageInfoClick };
/*wcAyGzXIuLMPKe72bAn4f72BcH03jamWKj7p/ELKGtY=*/

View File

@ -0,0 +1,56 @@
/*j07c8riwYnz20MYibuDbtEZex4qb2Efv3mNJRwOPM4g=*/
/*
 * @Author: tianzhyw 
 * @PageInfo: 根据pk查询供应商价目表
 * @Date: 2023-01-05 19:33:05 
 * @Last Modified by: tianzhyw 
 * @Last Modified time: 2023-01-05 19:33:05 
 */
import { ajax } from 'nc-lightapp-front';
import { AREA, URL, STATUS, ALLBUTTONS, BROWSEBUTTONS } from '../../constance';
import { showQueryResultInfoForNoPage } from '../../../../../scmpub/scmpub/pub/tool/messageUtil';
export default function(props, pks) {
let data = {
pks: pks,
pageid: AREA.listTable
};
//得到数据渲染到页面
ajax({
url: URL.queryByPk,
data: data,
success: (res) => {
this.setState({
searchData: data
});
if (res && res.data.grid && res.data.grid[AREA.listTable]) {
this.props.editTable.setTableData(AREA.listTable, res.data.grid.listTable);
this.props.editTable.setStatus(AREA.listTable, STATUS.browse);
showQueryResultInfoForNoPage(res.data.count);
} else {
this.props.editTable.setTableData(AREA.listTable, { rows: [], areacode: AREA.listTable });
this.props.editTable.setStatus(AREA.listTable, STATUS.browse);
showQueryResultInfoForNoPage();
}
this.props.button.setButtonVisible(ALLBUTTONS, false);
this.props.button.setButtonVisible(BROWSEBUTTONS, true);
this.props.button.setButtonDisabled(
[ 'Delete', 'Print', 'Edit', 'Output', 'Assign', 'PrintPop', 'Export' ],
true
);
this.props.button.setButtonDisabled([ 'Refresh' ], false);
let count = this.props.editTable.getNumberOfRows(AREA.listTable);
if (count > 0) {
this.props.button.setButtonDisabled([ 'Edit' ], false);
} else {
this.props.button.setButtonDisabled([ 'Edit' ], true);
}
if (res.formulamsg && res.formulamsg instanceof Array && res.formulamsg.length > 0) {
this.props.dealFormulamsg(
res.formulamsg //参数一:返回的公式对象
);
}
}
});
}
/*j07c8riwYnz20MYibuDbtEZex4qb2Efv3mNJRwOPM4g=*/

View File

@ -0,0 +1,97 @@
/*YuO8szH0cVixePu/Bt+mG26jsTjmE/kuwOQHfbIg/PM=*/
/*
* @Author: ligangt
* @PageInfo: 查询按钮点击事件处理
* @Date: 2018-04-03 11:02:47
* @Last Modified by: hechenk
* @Last Modified time: 2023-08-15 09:37:50
*/
import { ajax, NCMessage, toast } from 'nc-lightapp-front';
import { AREA, URL, STATUS, COMMON, PAGEID, ALLBUTTONS, BROWSEBUTTONS, EDITBUTTONS } from '../../constance';
import { initLang, getLangByResId } from '../../../../../scmpub/scmpub/pub/tool/multiLangUtil';
import { showQueryResultInfoForNoPage } from '../../../../../scmpub/scmpub/pub/tool/messageUtil';
//点击查询,获取查询区数据
export default function(value) {
let pageinfo = { pageIndex: 0, pageSize: 10 };
let searchVal = this.props.search.getAllSearchData(AREA.searchArea);
let queryInfo = this.props.search.getQueryInfo(AREA.searchArea);
if (!queryInfo.querycondition) {
return;
}
if (
!this.state.pk_org &&
!((this.props.search.getSearchValByField(AREA.searchArea, 'pk_org') || {}).value || {}).firstvalue
) {
toast({
content: getLangByResId(this, '4005SUPPLIERPRICE-000012') /* 国际化处理: 财务组织不能为空*/,
color: 'warning'
});
return;
}
let pk_org = this.props.search.getSearchValByField(AREA.searchArea, 'pk_org');
if (pk_org.value.firstvalue != this.state.pk_org) {
if (queryInfo.querycondition.conditions) {
let conditions = queryInfo.querycondition.conditions.filter((item) => {
return item.field == 'pk_org' ? true : false;
});
if (Array.isArray(conditions) && conditions.length > 0) {
let condition = conditions[0];
this.refs.mainorg.onChange({ refname: condition.display, refpk: condition.value.firstvalue });
} else if (Array.isArray(conditions) && conditions.length == 0) {
queryInfo.querycondition.conditions.push({
field: 'pk_org',
value: { firstvalue: this.state.pk_org },
oprtype: '='
});
}
}
}
let data = {
queryInfo: queryInfo,
pageCode: PAGEID //页面编码
};
//得到数据渲染到页面
ajax({
url: URL.query,
data: data,
success: (res) => {
this.setState({
searchData: data
});
if (res && res.data.grid && res.data.grid[AREA.listTable]) {
this.props.editTable.setTableData(AREA.listTable, res.data.grid.listTable);
this.props.editTable.setStatus(AREA.listTable, STATUS.browse);
showQueryResultInfoForNoPage(res.data.count);
} else {
this.props.editTable.setTableData(AREA.listTable, { rows: [], areacode: AREA.listTable });
this.props.editTable.setStatus(AREA.listTable, STATUS.browse);
showQueryResultInfoForNoPage();
}
let flag = this.state.status != 'browse';
let editButtons = [ 'Save', 'Cancel' ];
let browseButtons = [ 'Edit', 'Export', 'Import', 'Assign', 'ExportExcel' ];
this.props.button.setButtonVisible(ALLBUTTONS, false);
this.props.button.setButtonVisible(BROWSEBUTTONS, true);
this.props.button.setButtonDisabled(
[ 'Delete', 'Print', 'Edit', 'Output', 'Assign', 'PrintPop', 'Export' ],
true
);
this.props.button.setButtonDisabled([ 'Refresh' ], false);
let count = this.props.editTable.getNumberOfRows(AREA.listTable);
if (count > 0) {
this.props.button.setButtonDisabled([ 'Edit' ], false);
} else {
this.props.button.setButtonDisabled([ 'Edit' ], true);
}
if (res.formulamsg && res.formulamsg instanceof Array && res.formulamsg.length > 0) {
this.props.dealFormulamsg(
res.formulamsg //参数一:返回的公式对象
);
}
}
});
}
/*YuO8szH0cVixePu/Bt+mG26jsTjmE/kuwOQHfbIg/PM=*/

View File

@ -0,0 +1,70 @@
/*0GI1xcoeligdpMeXoHBphkuen3+hi44FWDFQN+UGL9s=*/
import { ajax, base, toast } from 'nc-lightapp-front';
import { URL, STATUS, AREA, PAGEID } from '../../constance';
import { initLang, getLangByResId } from '../../../../../scmpub/scmpub/pub/tool/multiLangUtil';
export default function tableButtonClick(props, key, text, record, index) {
let rows = [ record ];
ajax({
method: 'post',
data: {
pageid: PAGEID,
model: {
areaType: 'table',
areacode: AREA.listTable,
rows: rows
}
},
url: URL.delete,
success: (res) => {
if (props.editTable.getStatus(AREA.listTable) == 'edit') {
props.editTable.delRow(AREA.listTable, index);
let checked = props.editTable.getCheckedRows(AREA.listTable);
if (checked.length == 0) {
this.props.button.setButtonDisabled([ 'Delete' ], true);
}
} else {
this.state.delIndex = index;
props.editTable.delRow(AREA.listTable, index);
let data = this.props.editTable.getAllData(AREA.listTable);
ajax({
url: URL.save,
data: {
pageid: PAGEID,
model: {
areaType: 'table',
areacode: AREA.listTable,
PageInfo: {},
rows: data.rows
}
},
success: (res) => {
if (res && res.data && res.data[AREA.listTable]) {
this.props.editTable.setTableData(AREA.listTable, res.data.listTable);
//this.props.editTable.delRow(AREA.listTable, this.state.delIndex, true);
} else {
this.props.editTable.setTableData(AREA.listTable, {
rows: [],
areacode: AREA.listTable
});
}
//this.props.button.setButtonDisabled([ 'Delete', 'Print', 'Output', 'Assign', 'PrintPop', 'Export' ], true);
let count = this.props.editTable.getNumberOfRows(AREA.listTable);
if (count > 0) {
this.props.button.setButtonDisabled([ 'Edit' ], false);
} else {
this.props.button.setButtonDisabled([ 'Edit' ], true);
}
let checked = props.editTable.getCheckedRows(AREA.listTable);
if (checked.length == 0) {
this.props.button.setButtonDisabled([ 'Delete' ], true);
}
toast({ title: getLangByResId(this, '4005SUPPLIERPRICE-000013'), color: 'success' });/* 国际化处理: 删除成功*/
}
});
}
}
});
}
/*0GI1xcoeligdpMeXoHBphkuen3+hi44FWDFQN+UGL9s=*/

View File

@ -0,0 +1,12 @@
{
"dependModuleName": [
"uap/common/components/excelImportconfig",
"uap/common/components/ExcelOutput",
"scmpub/scmpub/components/MainOrgRef"
],
"dependjs": [
"../../../../uap/common/components/excelImportconfig/index.js",
"../../../../uap/common/components/ExcelOutput/index.js",
"../../../../scmpub/scmpub/components/MainOrgRef/index.js"
]
}

View File

@ -0,0 +1,307 @@
/*DncIqBreQz6WZRX+v7OzgWYa9tLP3pPQrtj7ivO7JpE=*/
/*
* @Author: ligangt
* @PageInfo: 编辑后事件处理
* @Date: 2018-04-12 16:54:10
* @Last Modified by: zhangmi
* @Last Modified time: 2021-09-07 09:21:35
*/
import { ajax, toast } from 'nc-lightapp-front';
import { URL, AREA, PAGEID } from '../../constance';
import { RownoUtils } from '../../../../../scmpub/scmpub/pub/tool/editTableTools';
import { getLangByResId } from '../../../../../scmpub/scmpub/pub/tool/multiLangUtil';
export default function(props, id, key, value, data, index, record) {
//有来源的供应商价目表保存修改的字段通过updateKeys是否有值判断是否非法操作
if (record.values.fpricesrctype.value != 3) {
//判断值是否发生变化,修改的字段是否是失效日期。
if (!(data[0].oldvalue.value == data[0].newvalue.value || key == 'dinvaliddate')) {
this.updateKeys.push(key);
}
}
if (key == 'bsc') {
// BSC 标记
//handleBSCEvent(props, id, key, value, data, index, record);
} else if (key == 'dinvaliddate') {
// 失效日期
handleInvalidateEvent.call(this, props, id, key, value, data, index, record);
} else if (key == 'dvaliddate') {
// 生效日期
handleValidateEvent.call(this, props, id, key, value, data, index, record);
} else if (key == 'pk_material') {
// 物料
handleMaterialEvent.call(this, props, id, key, value, data, index, record);
} else if (key == 'corigcurrencyid') {
// 币种
handleCurrencyEvent.call(this, props, id, key, value, data, index, record);
} else if (key == 'pk_org') {
// 采购组织
handleOrgEvent.call(this, props, id, key, value, data, index, record);
} else if (key == 'ntaxrate') {
// 税率
handleTaxrateEvent.call(this, props, id, key, value, data, index, record);
} else if (key == 'castunitid') {
postEvent.call(this, props, id, key, value, data, record, index);
} else if (key == 'pk_supplier_v' || key == 'pk_supplier') {
postEvent.call(this, props, id, key, value, data, record, index);
} else if (
key == 'nnum' ||
key == 'nastnum' ||
key == 'nastorigprice' ||
key == 'norigprice' ||
key == 'nastorigtaxprice' ||
key == 'norigtaxprice' ||
key == 'ntaxrate' ||
key == 'vchangerate' ||
key == 'nimpost' ||
key == 'ninsurance' ||
key == 'ntransportmny' ||
key == 'pk_dept' ||
key == 'ftaxtypeflag' ||
key == 'pk_bizpsn'
) {
postEvent.call(this, props, id, key, value, data, record, index);
} else if (key == 'crowno') {
let old = data[0].oldvalue;
if (old == value) {
return;
}
if (!/^-?[1-9]\d*$/.test(value)) {
toast({ content: getLangByResId(this, '4005SUPPLIERPRICE-000014'), color: 'warning' }); /* 国际化处理: 行号必须是整数*/
props.editTable.setValByKeyAndIndex(id, index, 'crowno', { value: null });
RownoUtils.setRowNo(props, AREA.listTable, 'crowno');
}
if (value <= 0) {
toast({ content: getLangByResId(this, '4005SUPPLIERPRICE-000015'), color: 'warning' }); /* 国际化处理: 行号必须大于零*/
props.editTable.setValByKeyAndIndex(id, index, 'crowno', { value: null });
RownoUtils.setRowNo(props, AREA.listTable, 'crowno');
} else {
let rownoSet = {};
let rows = props.editTable.getAllRows(AREA.listTable, true);
rows.map((row) => {
if (!rownoSet[row.values.crowno.value]) {
rownoSet[row.values.crowno.value] = 1;
} else {
rownoSet[row.values.crowno.value] += 1;
}
});
if (rownoSet[value] > 1) {
toast({
content: getLangByResId(this, '4005SUPPLIERPRICE-000016'),
color: 'warning'
}); /* 国际化处理: 行号不能重复*/
props.editTable.setValByKeyAndIndex(id, index, 'crowno', { value: null });
RownoUtils.setRowNo(props, AREA.listTable, 'crowno');
}
}
}
}
/**
*
* @param {*} props
* @param {*} id
* @param {*} key
* @param {*} value
* @param {*} data
* @param {*} index
*/
function handleBSCEvent(props, id, key, value, data, index, record) {
if (value == null || typeof value == 'undefined' || value == '') {
toast({ color: 'warning', content: getLangByResId(this, '4005SUPPLIERPRICE-000017') }); /* 国际化处理: 是否为外为选择,请确定*/
}
}
/**
*
* @param {j} props
* @param {*} id
* @param {*} key
* @param {*} value
* @param {*} data
* @param {*} index
*/
function handleInvalidateEvent(props, id, key, value, data, index, record) {
let dvalidate =
(record && record['values'] && record['values']['dvaliddate'] && record['values']['dvaliddate']['value']) ||
null;
let nullValue = {
display: null,
scale: -1,
value: null
};
let dinvalidate = value || null;
if (dinvalidate != null && dvalidate != null) {
let beginDate = new Date(dvalidate.replace(/-/g, '/'));
let endDate = new Date(dinvalidate.replace(/-/g, '/'));
if (beginDate > endDate) {
props.cardTable.setValByKeyAndIndex(id, index, key, nullValue);
toast({
color: 'warning',
content: getLangByResId(this, '4005SUPPLIERPRICE-000018')
}); /* 国际化处理: 价格失效日期不能在价格生效日期之前*/
}
}
}
/**
*
* @param {*} props
* @param {*} id
* @param {*} key
* @param {*} value
* @param {*} data
* @param {*} index
*/
function handleValidateEvent(props, id, key, value, data, index, record) {
let dinvalidate =
(record && record['values'] && record['values']['dinvaliddate'] && record['values']['dinvaliddate']['value']) ||
null;
let dvalidate = value || null;
let nullValue = {
display: null,
scale: 0,
value: null
};
if (dinvalidate != null && dvalidate != null) {
let beginDate = new Date(dvalidate.replace(/-/g, '/'));
let endDate = new Date(dinvalidate.replace(/-/g, '/'));
if (beginDate > endDate) {
props.editTable.setValByKeyAndIndex(id, index, key, nullValue);
toast({
color: 'warning',
content: getLangByResId(this, '4005SUPPLIERPRICE-000019')
}); /* 国际化处理: 价格生效日期不能在价格失效日期之后*/
}
}
}
/**
*
* @param {*} props
* @param {*} id
* @param {*} key
* @param {*} value
* @param {*} data
* @param {*} index
*/
function handleMaterialEvent(props, id, key, value, data, index, record) {
if (!(value || {}).refpk) {
//toast({ color: 'warning', content: getLangByResId(this, '4005SUPPLIERPRICE-000020') });/* 国际化处理: 物料不能为空!*/
return;
}
// TODO
postEvent(props, id, key, value, data, record, index);
}
/**
*
* @param {*} props
* @param {*} id
* @param {*} key
* @param {*} value
* @param {*} data
* @param {*} index
*/
function handleCurrencyEvent(props, id, key, value, data, index, record) {
if (data[0].oldvalue.value == data[0].newvalue.value) {
return;
}
const clearField = [
'nimpost',
'ninsurance',
'ntransportmny',
'norigprice',
'norigtaxprice',
'nastorigprice',
'nastorigtaxprice'
];
let nullValue = {
display: null,
scale: -1,
value: null
};
clearField.forEach((k) => {
props.editTable.setValByKeyAndIndex(id, index, k, nullValue);
record.values[k].value = null;
});
if (!data[0].newvalue.value) {
toast({ color: 'warning', content: getLangByResId(this, '4005SUPPLIERPRICE-000021') }); /* 国际化处理: 币种未定义,请先定义币种*/
return;
}
//postEvent(props, id, key, value, data, record, index);
}
/**
*
* @param {*} props
* @param {*} id
* @param {*} key
* @param {*} value
* @param {*} data
* @param {*} index
*/
function handleOrgEvent(props, id, key, value, data, index, record) {
if (data.oldvalue.value == data.newvalue.value) {
return;
}
// TODO
postEvent(props, id, key, value, data, record, index);
// let nullValue = {
// display: null,
// scale: 0,
// value: null
// };
// for (let k in record.values) {
// props.editTable.setValByKeyAndRowId(id, record.rowId, k.key, nullValue);
// }
}
/**
*
* @param {*} props
* @param {*} id
* @param {*} key
* @param {*} value
* @param {*} data
* @param {*} index
*/
function handleTaxrateEvent(props, id, key, value, data, index, record) {
let nullValue = {
display: null,
scale: -1,
value: null
};
if (value != null && value < 0) {
props.editTable.setValByKeyAndIndex(id, index, key, nullValue);
} else {
postEvent(props, id, key, value, data, record, index);
}
}
function postEvent(props, moduleId, key, value, changedrows, record, index) {
let event = props.createGridAfterEventData(PAGEID, AREA.listTable, moduleId, key, changedrows);
event.grid[AREA.listTable].rows = event.grid[AREA.listTable].rows.filter((row) => {
return row.rowid == changedrows[0].rowid;
});
ajax({
method: 'POST',
url: URL.afterEdit,
data: event,
async: false,
success: (res) => {
if (res && res.data && res.data.listTable) {
// TODO 设置一行的数据
props.editTable.updateDataByIndexs(AREA.listTable, [
{ index: index, data: res.data[AREA.listTable].rows[0] }
]);
//props.editTable.setTableData(AREA.listTable, res.data[AREA.listTable], false);
}
props.editTable.setStatus(AREA.listTable, 'edit');
}
});
}
/*DncIqBreQz6WZRX+v7OzgWYa9tLP3pPQrtj7ivO7JpE=*/

View File

@ -0,0 +1,142 @@
/*lA7FrGfHlashLvM+HJWGNdDKF1wgFQs5JTy0O+TZOQ4=*/
import { ajax, toast } from 'nc-lightapp-front';
import { URL } from '../../constance';
import { getLangByResId } from '../../../../../scmpub/scmpub/pub/tool/multiLangUtil';
export default async function(props, moduleId, item, index, value, record) {
if (record.values.fpricesrctype.value != 3) {
//有来源的供应商价目表“价格失效日期”支持修改
if (item.key == 'dinvaliddate') {
return true;
}
return false;
}
if (item.key == 'pk_bizpsn') {
if (!(record.values.pk_org_v || {}).value) {
toast({ content: getLangByResId(this, '4005SUPPLIERPRICE-000022'), color: 'danger' }); /* 国际化处理: 采购组织不能为空*/
return false;
}
let meta = props.meta.getMeta();
let item_v = meta[moduleId].items.find((e) => e.attrcode == 'pk_bizpsn');
item_v.queryCondition = () => {
return {
pk_org: (record.values.pk_org || {}).value,
busifuncode: 'pu' // 这里对record.values.materiel要做一下非空校验
};
};
props.meta.setMeta(meta);
return true;
} else if (item.key == 'pk_dept') {
if (!(record.values.pk_org_v || {}).value) {
toast({ content: getLangByResId(this, '4005SUPPLIERPRICE-000022'), color: 'danger' }); /* 国际化处理: 采购组织不能为空*/
return false;
}
let item = meta[moduleId].items.find((e) => e.attrcode == 'pk_dept');
item.queryCondition = () => {
return {
pk_org: (record.values.pk_org || {}).value,
busifuncode: 'pu'
};
};
props.meta.setMeta(meta);
return true;
} else if (item.key == 'pk_material') {
if (!(record.values.pk_org_v || {}).value) {
toast({ content: getLangByResId(this, '4005SUPPLIERPRICE-000022'), color: 'danger' }); /* 国际化处理: 采购组织不能为空*/
return false;
}
let meta = props.meta.getMeta();
let item_v = meta[moduleId].items.find((e) => e.attrcode == 'pk_material');
item_v.queryCondition = () => {
return {
pk_org: (record.values.pk_org || {}).value // 这里对record.values.materiel要做一下非空校验
};
};
props.meta.setMeta(meta);
return true;
} else if (item.key == 'pk_supplier_v' || item.key == 'pk_supplier') {
if (!(record.values.pk_org_v || {}).value) {
toast({ content: getLangByResId(this, '4005SUPPLIERPRICE-000022'), color: 'danger' }); /* 国际化处理: 采购组织不能为空*/
return false;
}
let meta = props.meta.getMeta();
let item_v = meta[moduleId].items.find((e) => e.attrcode == 'pk_supplier_v');
item_v.queryCondition = () => {
return {
pk_org: (record.values.pk_org || {}).value
};
};
let item = meta[moduleId].items.find((e) => e.attrcode == 'pk_supplier');
item.queryCondition = () => {
return {
pk_org: (record.values.pk_org || {}).value
};
};
props.meta.setMeta(meta);
return true;
} else if (item.key == 'pk_dept_v') {
// 部门
let meta = props.meta.getMeta();
let item_v = meta[moduleId].items.find((e) => e.attrcode == 'pk_dept_v');
item_v.queryCondition = () => {
return {
pk_org: (record.values.pk_org || {}).value,
busifuncode: 'pu'
};
};
props.meta.setMeta(meta);
return true;
} else if (item.key == 'ipurprior') {
if ((record.cscid || {}).value) {
return false;
} else {
return true;
}
} else if (item.key == 'vchangerate') {
if (!(record.values.pk_material || {}).value) {
return false;
}
let cunitid = (record.values.cunitid || {}).value;
let castunitid = (record.values.castunitid || {}).value;
if (cunitid && castunitid) {
let fn = new Promise(function(resolve, reject) {
ajax({
method: 'post',
url: URL.fixRate,
data: { pk_material: record.values.pk_material.value, castunitid: castunitid },
success: (res) => {
let fixRate = res.data;
if (cunitid == castunitid || fixRate) {
resolve(false);
} else {
resolve(true);
}
}
});
});
return await fn.then((result) => result);
} else {
return false;
}
} else if (item.key == 'nnum' || item.key == 'nastnum' || item.key == 'castunitid') {
if (item.key == 'castunitid') {
let meta = props.meta.getMeta();
let item_v = meta[moduleId].items.find((e) => e.attrcode == 'castunitid');
item_v.queryCondition = () => {
return {
scm_cmaterialid: (record.values.pk_srcmaterial || {}).value,
GridRefActionExt: 'nccloud.web.scmpub.ref.MeasdocRefFilterUtils'
};
};
props.meta.setMeta(meta);
}
if (!(record.values.pk_material || {}).value) {
return false;
} else {
return true;
}
} else {
return true;
}
}
/*lA7FrGfHlashLvM+HJWGNdDKF1wgFQs5JTy0O+TZOQ4=*/

View File

@ -0,0 +1,7 @@
/*wcAyGzXIuLMPKe72bAn4f72BcH03jamWKj7p/ELKGtY=*/
import afterEvent from './afterEvent';
import beforeEvent from './beforeEvent';
export { afterEvent, beforeEvent };
/*wcAyGzXIuLMPKe72bAn4f72BcH03jamWKj7p/ELKGtY=*/

View File

@ -0,0 +1,456 @@
/*wcAyGzXIuLMPKe72bAn4f72BcH03jamWKj7p/ELKGtY=*/
/*
* @Author: ligangt
* @PageInfo: 供应商价目表列表组件
* @Date: 2018-04-02 14:57:46
* @Last Modified by: yinliangc
* @Last Modified time: 2023-11-21 10:29:27
*/
import React, { Component } from 'react';
import ReactDOM from 'react-dom';
import { createPage, ajax, base, toast, high } from 'nc-lightapp-front';
import { afterEvent, beforeEvent } from './events';
import { searchBtnClick, buttonClick } from './btnClicks';
import { initTemplate } from './init';
import { URL, AREA, ROOT, BUTTONAREA, ALLBUTTONS, EDITBUTTONS, BROWSEBUTTONS, PAGEID } from '../constance';
import MainOrgRef from 'scmpub/scmpub/components/MainOrgRef';
// import PurchaseOrgGridRef from 'uapbd/refer/org/PurchaseOrgGridRef';
import { dateFormat } from '../../../public';
import { initLang, getLangByResId } from '../../../../scmpub/scmpub/pub/tool/multiLangUtil';
import { RownoUtils } from '../../../../scmpub/scmpub/pub/tool/editTableTools';
import { createListTitle } from '../../../../scmpub/scmpub/pub/tool/titleUtil.js';
import ExcelOutput from 'uap/common/components/ExcelOutput';
const { NCDiv } = base;
const { Refer } = high;
let { ReferLoader } = Refer;
class SupplierPriceList extends Component {
constructor(props) {
super(props);
props.use.search(AREA.searchArea);
props.use.editTable(AREA.listTable);
this.state = {
status: 'browse',
defaultVO: null,
pk_org: '',
mainOrg: {},
searchData: null,
selectedPKS: [],
delIndex: -1
};
//增加全局变量,用于记录修改有来源的供应商价目表除失效日期外的字段
this.updateKeys = new Array();
initLang(this, [ '4005supplierprice' ], 'purp', initTemplate.bind(this, this.props));
//initTemplate.call(this, this.props);
}
componentDidMount() {
this.props.editTable.setTableData(AREA.listTable, { rows: [] });
//this.getData();
this.toggleShow();
}
toggleShow = () => {
let flag = this.state.status != 'browse';
this.props.button.setButtonVisible(ALLBUTTONS, false);
this.props.button.setButtonVisible(BROWSEBUTTONS, true);
if (this.state.pk_org === '') {
let disable = {};
ALLBUTTONS.forEach((v) => {
disable[v] = false;
});
this.props.button.setDisabled(disable);
}
};
orgAfterEvent = (field, value) => {
if (field == 'pk_org' && Array.isArray(value) && value.length > 0) {
console.log(value);
this.refs.mainorg.onChange(value[0]);
}
};
renderCompleteEvent = () => {
let pk_org = this.props.search.getSearchValByField(AREA.searchArea, 'pk_org');
if (pk_org && pk_org.value && pk_org.value.firstvalue) {
let value = pk_org.value.firstvalue;
let arr = value.split(',');
let refname = pk_org.display;
arr = arr.map((item) => {
return { refpk: item, refname: refname };
});
this.orgAfterEvent.call(this, 'pk_org', arr);
}
};
render() {
const { editTable, search } = this.props;
const { createEditTable } = editTable;
const { NCCreateSearch } = search;
return (
<div className="nc-bill-list">
<NCDiv areaCode={NCDiv.config.HEADER} className="nc-bill-header-area">
<div className="header-title-search-area">
{createListTitle(this)}
{/* 国际化处理: 供应商价目表*/}
<MainOrgRef
refName={getLangByResId(this, '4005SUPPLIERPRICE-000023')} /* 国际化处理: 采购组织*/
refPath="org/PurchaseOrgGridRef/index.js"
placeholder={getLangByResId(this, '4005SUPPLIERPRICE-000023')} /* 国际化处理: 采购组织*/
ref="mainorg"
refType="grid"
required={true}
refCode={'pk_org'}
queryGridUrl={'/nccloud/uapbd/ref/PurchaseOrgGridRef.do'}
value={this.state.mainOrg}
disabled={this.state.status == 'edit'}
queryCondition={() => {
return { GridRefActionExt: 'nccloud.web.scmpub.ref.AppPermissionOrgRefFilter' };
}}
onChange={(event) => {
if (event.refpk && event.refpk != this.state.pk_org) {
ajax({
method: 'POST',
url: URL.orgChange,
asycn: false,
data: {
key: 'pk_org',
value: event.refpk,
pagecode: PAGEID
},
success: (res) => {
if (res && res.data) {
this.setState(
{
pk_org: event.refpk,
mainOrg: event,
defaultVO: null
},
() => {
this.props.editTable.setTableData(AREA.listTable, { rows: [] });
this.state.defaultVO = res.data[AREA.listTable].rows[0];
let disable = {};
ALLBUTTONS.forEach((v) => {
disable[v] = false;
});
let meta = this.props.meta.getMeta();
meta[AREA.searchArea].items.map((item) => {
item.isShowUnit = false;
});
this.props.meta.setMeta(meta);
this.props.button.setDisabled(disable);
this.props.search.setSearchValByField(
AREA.searchArea,
'pk_org',
{
value: event.refpk,
display: event.refname
}
);
this.props.button.setButtonDisabled(
[
'Print',
'PrintPop',
'Delete',
'Output',
'Assign',
'Refresh',
'Export'
],
true
);
let count = this.props.editTable.getNumberOfRows(
AREA.listTable
);
if (count > 0) {
this.props.button.setButtonDisabled([ 'Edit' ], false);
} else {
this.props.button.setButtonDisabled([ 'Edit' ], true);
}
}
);
}
}
});
} else if (!event.refpk) {
this.state.defaultVO = null;
this.state.pk_org = '';
//this.props.search.setDisabled(AREA.searchArea, true);
let disable = {};
ALLBUTTONS.forEach((v) => {
disable[v] = true;
});
let meta = this.props.meta.getMeta();
meta[AREA.searchArea].items.map((item) => {
item.isShowUnit = true;
});
this.props.meta.setMeta(meta);
this.props.button.setDisabled(disable);
}
}}
/>
</div>
<div className="header-button-area">
{this.props.button.createButtonApp({
area: BUTTONAREA.listhead,
onButtonClick: buttonClick.bind(this)
})}
<div>
{/* 分配按钮 弹出组织参照,使用一个空的 div 来实现点击弹出参照框 */}
<ReferLoader
fieldid="SCM_supplierprice_purchaseOrg"
refcode={'uapbd/refer/org/PurchaseOrgGridRef/index'}
clickContainer={<div id="assignRef" ref={(dom) => (this.realAssignBtn = dom)} />}
ref="assign"
isMultiSelectedEnabled={true}
isShow={true}
isAlwaysEmitOnChange={true}
onChange={(value) => {
if (value) {
let orgs = value.map((org) => {
return org.refpk;
});
let rows = this.props.editTable.getCheckedRows(AREA.listTable);
if (Array.isArray(rows) && rows.length > 0) {
ajax({
method: 'post',
url: URL.assgin,
data: {
pk_org: orgs,
pks: rows.map((row) => {
return row.data.values.pk_supplierprice.value;
})
},
success: (res) => {
toast({
title: getLangByResId(this, '4005SUPPLIERPRICE-000029'),
color: 'success',
content: getLangByResId(this, '4005SUPPLIERPRICE-000036', {
i: res.data
})
}); /* 国际化处理: 分配成功*/
}
});
} else {
toast({
content: getLangByResId(this, '4005SUPPLIERPRICE-000010'),
color: 'warning'
}); /* 国际化处理: 请先选择待分配的价目表*/
}
}
}}
queryCondition={() => {
return { GridRefActionExt: 'nccloud.web.scmpub.ref.AppPermissionOrgRefFilter' };
}}
/>
{/* <PurchaseOrgGridRef
clickContainer={<div id="assignRef" ref={(dom) => (this.realAssignBtn = dom)} />}
ref="assign"
isMultiSelectedEnabled={true}
isShow={true}
isAlwaysEmitOnChange={true}
onChange={(value) => {
if (value) {
let orgs = value.map((org) => {
return org.refpk;
});
let rows = this.props.editTable.getCheckedRows(AREA.listTable);
if (Array.isArray(rows) && rows.length > 0) {
ajax({
method: 'post',
url: URL.assgin,
data: {
pk_org: orgs,
pks: rows.map((row) => {
return row.data.values.pk_supplierprice.value;
})
},
success: (res) => {
toast({
title: getLangByResId(this, '4005SUPPLIERPRICE-000029'),
color: 'success',
content: getLangByResId(this, '4005SUPPLIERPRICE-000036', {
i: res.data
})
}); 国际化处理 分配成功
}
});
} else {
toast({
content: getLangByResId(this, '4005SUPPLIERPRICE-000010'),
color: 'warning'
}); 国际化处理 请先选择待分配的价目表
}
}
}}
queryCondition={() => {
return { GridRefActionExt: 'nccloud.web.scmpub.ref.AppPermissionOrgRefFilter' };
}}
/> */}
</div>
</div>
<ExcelOutput
{...Object.assign(this.props)}
moduleName="purp"
billType="4221"
appcode="400500000"
pagecode={PAGEID}
selectedPKS={this.state.selectedPKS}
//referVO = {{ignoreTemplate: true}}
exportTreeUrl={URL.excel}
/>
</NCDiv>
{this.state.status === 'browse' && (
<div className="nc-bill-search-area nc-theme-area-split-bc">
{/* 查询区 */}
{NCCreateSearch(AREA.searchArea, {
clickSearchBtn: searchBtnClick.bind(this),
onAfterEvent: (key, value) => {
if (key == 'pk_org') {
let data = {};
data.refpk = value.refpk;
data.refname = value.refname;
this.refs.mainorg.onChange(data);
}
},
renderCompleteEvent: this.renderCompleteEvent,
statusChangeEvent: this.renderCompleteEvent,
defaultConditionsNum: 4
})}
</div>
)}
<div className="nc-bill-table-area">
{createEditTable(AREA.listTable, {
showIndex: true,
showCheck: true,
adaptionHeight: true,
isAddRow: true,
onAfterEvent: afterEvent.bind(this),
onBeforeEvent: beforeEvent.bind(this),
selectedChange: () => {
let rows = this.props.editTable.getCheckedRows(AREA.listTable);
if (rows && rows.length == 0) {
this.props.button.setButtonDisabled(
[ 'Print', 'Delete', 'Output', 'Assign', 'Export', 'PrintPop' ],
true
);
} else if (rows && rows.length == 1) {
if (rows[0].data.values.fpricesrctype.value == 3) {
this.props.button.setButtonDisabled(
[ 'Print', 'Delete', 'Output', 'Assign', 'Export', 'PrintPop' ],
false
);
} else {
this.props.button.setButtonDisabled(
[ 'Print', 'Output', 'Assign', 'Export', 'PrintPop' ],
false
);
}
} else if (rows && rows.length > 1) {
this.props.button.setButtonDisabled(
[ 'Print', 'Delete', 'Output', 'Assign', 'Export', 'PrintPop' ],
false
);
}
},
onSelected: onSelect.bind(this),
onBatchSelected: onSelect.bind(this),
selectAll: onSelect.bind(this),
addRowCallback: () => {
this.setState({
status: 'edit'
});
let props = this.props;
props.button.setPopContent('Delete', '');
//props.search.setDisabled(AREA.searchArea, true);
props.button.setButtonVisible(ALLBUTTONS, false);
props.button.setButtonVisible(EDITBUTTONS, true);
if (!this.state.defaultVO) {
toast({
content: getLangByResId(this, '4005SUPPLIERPRICE-000006'),
color: 'warning'
}); /* 国际化处理: 主组织不能为空*/
return;
}
//props.editTable.addRow(AREA.listTable, undefined,true);
if (this.props.editTable.getStatus(AREA.listTable) != 'edit') {
this.props.button.setButtonDisabled([ 'Delete' ], true);
}
let row = props.editTable.getNumberOfRows(AREA.listTable) - 1;
RownoUtils.setRowNoByIndex(props, AREA.listTable, 'crowno', row);
let defaultKey = [ 'pk_org', 'pk_org_v', 'pk_group', 'corigcurrencyid', 'tcreatetime' ];
let _this = this;
defaultKey.forEach((key) => {
_this.props.editTable.setValByKeyAndIndex(
AREA.listTable,
row,
key,
_this.state.defaultVO.values[key]
);
});
//设置自制 生效时间 生成时间
dateFormat();
let time = new Date();
props.editTable.setValByKeyAndIndex(AREA.listTable, row, 'dvaliddate', {
value: time.Format('yyyy-MM-dd') + ' 00:00:00',
display: time.Format('yyyy-MM-dd')
});
props.editTable.setValByKeyAndIndex(AREA.listTable, row, 'tcreatetime', {
value: time.Format('yyyy-MM-dd hh:mm:ss'),
display: time.Format('yyyy-MM-dd')
});
props.editTable.setValByKeyAndIndex(AREA.listTable, row, 'ftaxtypeflag', {
value: '1',
display: getLangByResId(this, '4005SUPPLIERPRICE-000007')
}); /* 国际化处理: 应税外加*/
props.editTable.setValByKeyAndIndex(AREA.listTable, row, 'fpricesrctype', {
value: '3',
display: getLangByResId(this, '4005SUPPLIERPRICE-000008')
}); /* 国际化处理: 自制*/
}
})}
</div>
</div>
);
}
}
function onSelect(props, moduleId, record, index, status) {
let rows = this.props.editTable.getCheckedRows(moduleId);
if (rows && rows.length == 1) {
if (rows[0].data.values.fpricesrctype.value == 3) {
this.props.button.setButtonDisabled(
[ 'Print', 'Delete', 'Output', 'Edit', 'Assign', 'Export', 'PrintPop' ],
false
);
} else {
this.props.button.setButtonDisabled([ 'Print', 'Output', 'Edit', 'Assign', 'Export', 'PrintPop' ], false);
}
} else if (rows && rows.length > 1) {
this.props.button.setButtonDisabled(
[ 'Print', 'Delete', 'Output', 'Edit', 'Assign', 'Export', 'PrintPop' ],
false
);
}
}
SupplierPriceList = createPage({
billinfo: {
billtype: 'grid',
pagecode: PAGEID,
bodycode: {
[AREA.listTable]: 'editTable' //此处发生变化了,需要传一个对象
}
}
})(SupplierPriceList);
ReactDOM.render(<SupplierPriceList />, document.querySelector(ROOT));
/*wcAyGzXIuLMPKe72bAn4f72BcH03jamWKj7p/ELKGtY=*/

View File

@ -0,0 +1,5 @@
/*wcAyGzXIuLMPKe72bAn4f72BcH03jamWKj7p/ELKGtY=*/
import initTemplate from './initTemplate';
export { initTemplate };
/*wcAyGzXIuLMPKe72bAn4f72BcH03jamWKj7p/ELKGtY=*/

View File

@ -0,0 +1,356 @@
/*pmFWCFu5nhKkBzYmrkBakX+/XbX5a6FrqsufOjG4HL0=*/
/*
* @Author: ligangt
* @PageInfo: 供应商价目表列表界面元数据初始化
* @Date: 2018-04-02 13:46:03
* @Last Modified by: yinliangc
* @Last Modified time: 2023-12-01 18:21:48
*/
import excelImportconfig from 'uap/common/components/excelImportconfig';
import { tableButtonClick, pageInfoClick } from '../btnClicks';
import { PAGEID, BUTTONAREA, AREA, ALLBUTTONS, BROWSEBUTTONS, PAGECODE } from '../../constance';
import { getLangByResId } from '../../../../../scmpub/scmpub/pub/tool/multiLangUtil';
import { setPsndocShowLeavePower, setRefShowDisabledData } from '../../../../../scmpub/scmpub/pub/tool';
import { columnSortUtils } from '../../../../../scmpub/scmpub/pub/tool/columnSortUtils';
// import { high } from 'nc-lightapp-front';
// const { Refer } = high;
// let { ReferLoader } = Refer;
export default function(props) {
let excelimportconfig = excelImportconfig(props, 'purp', '4221', true, '', {
appcode: PAGECODE.appcode,
pagecode: PAGECODE.listPagecode
});
let _this = this;
props.createUIDom(
{
pagecode: PAGEID
},
function(data) {
if (data) {
if (data.template) {
let meta = data.template;
modifierMeta.call(_this, props, meta);
props.meta.setMeta(meta);
}
if (data.button) {
let button = data.button;
props.button.setPopContent(
'Delete',
getLangByResId(_this, '4005SUPPLIERPRICE-000005')
); /* 国际化处理: 确认删除?*/
props.button.setUploadConfig('Import', excelimportconfig);
props.button.setButtons(button);
props.button.setButtonVisible(ALLBUTTONS, false);
props.button.setButtonVisible(BROWSEBUTTONS, true);
let disable = {};
ALLBUTTONS.forEach((v) => {
disable[v] = true;
});
// props.search.setDisabled(AREA.searchArea, false);
props.button.setDisabled(disable);
}
let pk_org = _this.props.getUrlParam('pk_org');
let pk_orgName = _this.props.getUrlParam('pk_orgName');
if ((data.context && data.context.pk_org) || pk_org) {
let pk_og1 = data.context.pk_org;
let pk_orgName1 = data.context.org_Name;
if (pk_org && pk_orgName) {
pk_og1 = pk_org;
pk_orgName1 = pk_orgName;
}
_this.setState(
{
mainOrg: {
refpk: pk_og1,
refname: pk_orgName1
}
},
() => {
_this.refs.mainorg.onChange({
refpk: pk_og1,
refname: pk_orgName1
});
}
);
}
// 采购订单价格来源跳转过来
let pk = _this.props.getUrlParam('id');
if (pk) {
let pks = new Array();
pks.push(pk);
// 根据pk查询数据
pageInfoClick.call(_this, _this.props, pks);
}
}
}
);
}
/**
* 自定义元数据样式
* @param {*} props
* @param {*} meta
*/
function modifierMeta(props, meta) {
let listTable = meta.listTable;
// 参照过滤
/**
* 1有来源单据不允许修改
* 2对字段进行参照过滤
*/
let _this = this;
meta[AREA.searchArea].items.map((item) => {
setPsndocShowLeavePower(item);
setRefShowDisabledData(item);
if (item.attrcode == 'pk_org') {
console.log(item);
item.queryCondition = () => {
return { GridRefActionExt: 'nccloud.web.scmpub.ref.AppPermissionOrgRefFilter' };
};
} else if (item.attrcode == 'pk_dept') {
item.isShowUnit = true;
item.queryCondition = () => {
let pk_org = (props.search.getSearchValByField(AREA.searchArea, 'pk_org') || {}).value; // 调用相应组件的取值API
if (pk_org == null || pk_org.firstvalue == null || pk_org.firstvalue == '') {
pk_org.firstvalue = this.state.pk_org;
}
return { pk_org: pk_org ? pk_org.firstvalue : '', busifuncode: 'pu' }; // 根据pk_org过滤
};
} else if (item.attrcode == 'pk_srcmaterial') {
item.isShowUnit = true;
item.queryCondition = () => {
let pk_org = (props.search.getSearchValByField(AREA.searchArea, 'pk_org') || {}).value; // 调用相应组件的取值API
if (pk_org == null || pk_org.firstvalue == null || pk_org.firstvalue == '') {
pk_org.firstvalue = this.state.pk_org;
}
return { pk_org: pk_org ? pk_org.firstvalue : '' }; // 根据pk_org过滤
};
} else if (item.attrcode == 'pk_bizpsn') {
item.queryCondition = () => {
let pk_org = (props.search.getSearchValByField(AREA.searchArea, 'pk_org') || {}).value; // 调用相应组件的取值API
if (pk_org == null || pk_org.firstvalue == null || pk_org.firstvalue == '') {
pk_org.firstvalue = this.state.pk_org;
}
return { pk_org: pk_org ? pk_org.firstvalue : '' }; // 根据pk_org过滤
};
} else if (item.attrcode == 'pk_supplier') {
item.isShowUnit = true;
item.queryCondition = () => {
let pk_org = (props.search.getSearchValByField(AREA.searchArea, 'pk_org') || {}).value; // 调用相应组件的取值API
if (pk_org == null || pk_org.firstvalue == null || pk_org.firstvalue == '') {
pk_org.firstvalue = this.state.pk_org;
}
return { pk_org: pk_org ? pk_org.firstvalue : '' }; // 根据pk_org过滤
};
} else if (item.attrcode == 'pk_material.pk_marbasclass') {
item.isShowUnit = true;
item.queryCondition = () => {
let pk_org = (props.search.getSearchValByField(AREA.searchArea, 'pk_org') || {}).value; // 调用相应组件的取值API
if (pk_org == null || pk_org.firstvalue == null || pk_org.firstvalue == '') {
pk_org.firstvalue = this.state.pk_org;
}
return { pk_org: pk_org ? pk_org.firstvalue : '' }; // 根据pk_org过滤
};
} else if (item.attrcode.startsWith('vbdef')) {
item.isShowUnit = true;
item.queryCondition = () => {
let pk_org = (props.search.getSearchValByField(AREA.searchArea, 'pk_org') || {}).value;
if (pk_org == null || pk_org.firstvalue == null || pk_org.firstvalue == '') {
pk_org.firstvalue = this.state.pk_org;
}
return { pk_org: pk_org ? pk_org.firstvalue : '' };
};
} else if (item.attrcode == 'fpricesrctype') {
//价格来源日期删除EC价格库显示
let options = item.options;
let resultOptions = [];
options.map((param) => {
if ('2' != param.value) {
resultOptions.push(param);
}
});
/**
* 拼装最终的options内容
*/
item.options = resultOptions;
}
});
listTable.items.map((item) => {
if (item.attrcode === 'pk_bizpsn') {
// item.render = function(text, record, index) {
// // return PsndocTreeGridRef({
// // queryCondition: () => {
// // return {
// // pk_org: (record.values.pk_org || {}).value,
// // busifuncode: 'pu' // 这里对record.values.materiel要做一下非空校验
// // };
// // }
// // });
// return (
// <ReferLoader
// fieldid="SCM_supplierprice_psndoc"
// refcode={'uapbd/refer/psninfo/PsndocTreeGridRef/index'}
// queryCondition={() => {
// return {
// pk_org: (record.values.pk_org || {}).value,
// busifuncode: 'pu' // 这里对record.values.materiel要做一下非空校验
// };
// }}
// />
// );
// };
} else if (item.attrcode === 'castunitid') {
// item.render = function(text, record, index) {
// // return MeasdocDefaultGridRef({
// // queryCondition: () => {
// // return {
// // scm_cmaterialid: (record.values.pk_srcmaterial || {}).value,
// // GridRefActionExt: 'nccloud.web.scmpub.ref.MeasdocRefFilterUtils'
// // };
// // }
// // });
// return (
// <ReferLoader
// fieldid="SCM_supplierprice_measdoc"
// refcode={'uapbd/refer/material/MeasdocDefaultGridRef/index'}
// queryCondition={() => {
// return {
// scm_cmaterialid: (record.values.pk_srcmaterial || {}).value,
// GridRefActionExt: 'nccloud.web.scmpub.ref.MeasdocRefFilterUtils'
// };
// }}
// />
// );
// };
} else if (item.attrcode === 'pk_material') {
item.isShowUnit = false;
// item.render = function(text, record, index) {
// // return MaterialMultiVersionGridRef({
// // queryCondition: () => {
// // return {
// // pk_org: (record.values.pk_org || {}).value // 这里对record.values.materiel要做一下非空校验
// // };
// // }
// // });
// return (
// <ReferLoader
// fieldid="SCM_supplierprice_materialMultiVersion"
// refcode={'uapbd/refer/pub/MaterialMultiVersionGridRef/index'}
// queryCondition={() => {
// return {
// pk_org: (record.values.pk_org || {}).value // 这里对record.values.materiel要做一下非空校验
// };
// }}
// />
// );
// };
} else if (item.attrcode === 'pk_dept') {
item.isShowUnit = false;
// item.render = function(text, record, index) {
// // return DeptNCTreeRef({
// // queryCondition: () => {
// // return {
// // pk_org: (record.values.pk_org || {}).value,
// // busifuncode: 'pu'
// // };
// // }
// // });
// return (
// <ReferLoader
// fieldid="SCM_supplierprice_deptNCTree"
// refcode={'uapbd/refer/org/DeptNCTreeRef/index'}
// queryCondition={() => {
// return {
// pk_org: (record.values.pk_org || {}).value,
// busifuncode: 'pu'
// };
// }}
// />
// );
// };
} else if (item.attrcode === 'pk_dept_v') {
item.isShowUnit = false;
// item.render = function(text, record, index) {
// // return DeptNCVersionTreeRef({
// // queryCondition: () => {
// // return {
// // pk_org: (record.values.pk_org || {}).value,
// // busifuncode: 'pu'
// // };
// // }
// // });
// return (
// <ReferLoader
// fieldid="SCM_supplierprice_deptNCVersionTree"
// refcode={'uapbd/refer/orgv/DeptNCVersionTreeRef/index'}
// queryCondition={() => {
// return {
// pk_org: (record.values.pk_org || {}).value,
// busifuncode: 'pu'
// };
// }}
// />
// );
// };
} else if (item.attrcode == 'pk_supplier_v' || item.attrcode == 'pk_supplier') {
item.isShowUnit = false;
// item.render = function(text, record, index) {
// // return SupplierVersionRefTreeGridRef({
// // queryCondition: () => {
// // return {
// // pk_org: (record.values.pk_org || {}).value
// // };
// // }
// // });
// return (
// <ReferLoader
// fieldid="SCM_supplierprice_supplierVersionRefTree"
// refcode={'uapbd/refer/supplier/SupplierVersionRefTreeGridRef/index'}
// queryCondition={() => {
// return {
// pk_org: (record.values.pk_org || {}).value
// };
// }}
// />
// );
// };
} else if (item.attrcode.startsWith('vbdef')) {
item.isShowUnit = false;
item.queryCondition = () => {
return { pk_org: _this.state.pk_org };
};
}
});
// 操作列
if (listTable) {
let event = {
itemtype: 'customer',
visible: true,
label: getLangByResId(this, '4005SUPPLIERPRICE-000031') /* 国际化处理: 操作*/,
width: 150,
attrcode: 'opr',
fixed: 'right',
render(text, record, index) {
if (undefined !== record && record != null) {
let buttonAry = [];
if (record.values.fpricesrctype.value == 3) {
buttonAry = [ 'Delete' ];
}
return props.button.createOprationButton(buttonAry, {
area: BUTTONAREA.listinner,
ignoreHotkeyCode: [ 'Delete' ],
buttonLimit: 3,
onButtonClick: (props, key) => tableButtonClick.call(_this, props, key, text, record, index)
});
}
}
};
listTable.items.push(event);
}
columnSortUtils.numberSort(meta, AREA.listTable, 'crowno');
return meta;
}
/*pmFWCFu5nhKkBzYmrkBakX+/XbX5a6FrqsufOjG4HL0=*/

View File

@ -0,0 +1,83 @@
/*4fHBPsdsATx+m/nB2sxnoTTnuEzKt7xMAIOzPJFi1fg=*/
import AddAction from './addAction';
import EditAction from './editAction';
import DeleteAction from './deleteAction';
import CancelAction from './cancelAction';
import SaveAction from './saveAction';
import AssignAction from './assignAction';
import ExportAction from './exportAction';
import PrintAction from './printAction';
import OutputAction from './outputAction';
import RefreshAction from './refreshAction';
class ActionHandler {
constructor(page) {
this.props = page.props;
this.page = page;
this.instance = null;
this.handlerMap = null;
}
static getInstance(page) {
if (this.instance == null) {
this.instance = new ActionHandler(page);
}
return this.instance;
}
/**
* 动作执行
* @param {*} key
*/
doAction(key) {
if (this.handlerMap == null) {
this.init();
}
let action = this.handlerMap.get(key)
if (action == null) {
console.log('can not find a action named' +key);
} else {
this.before(key);
action.doAction(this.page);
this.after(key);
}
}
/**
* 动作前处理
* @param {*} key
*/
before(key) {
//TODO
}
/**
* 动作后处理
* @param {*} key
*/
after(key) {
//TODO
}
/**
* 加载对应按钮的action
*/
init() {
let map = new Map();
map.set('Add', new AddAction());
map.set('Delete', new DeleteAction());
map.set('Save', new SaveAction());
map.set('Cancel', new CancelAction());
map.set('Edit', new EditAction());
map.set('PrintPop', new PrintAction());
map.set('Output', new OutputAction());
map.set('Export', new ExportAction());
map.set('Assign', new AssignAction());
map.set('Refresh', new RefreshAction());
this.handlerMap = map;
}
}
export default ActionHandler;
/*4fHBPsdsATx+m/nB2sxnoTTnuEzKt7xMAIOzPJFi1fg=*/

View File

@ -0,0 +1,66 @@
/*R/JW7QQ4vCyCLghhsQtj9ACv322tydgH79JUNJ8w2gw=*/
import ButtonController from './buttonController';
import { toast } from 'nc-lightapp-front';
import { AREA } from '../../constance';
import { dateFormat } from '../../../../public';
import { RownoUtils } from '../../../../../scmpub/scmpub/pub/tool/editTableTools';
import { getLangByResId } from '../../../../../scmpub/scmpub/pub/tool/multiLangUtil';
class AddAction {
doAction(page) {
this.before(page);
let buttonController = ButtonController.getInstance(page);
let props = page.props;
page.state.status = 'edit';
// props.search.setDisabled(AREA.searchArea, true);
if (!page.state.defaultVO) {
toast({
content: getLangByResId(page, '4005SUPPLIERPRICE-000006'),
color: 'warning'
}); /* 国际化处理: 主组织不能为空*/
return;
}
let row = props.editTable.getNumberOfRows(AREA.listTable);
props.editTable.addRow(AREA.listTable, undefined, true);
RownoUtils.setRowNoByIndex(props, AREA.listTable, 'crowno', row);
buttonController.changeUiStatus.call(page);
let defaultKey = [ 'pk_org', 'pk_org_v', 'pk_group', 'corigcurrencyid', 'tcreatetime' ];
let _this = page;
defaultKey.forEach((key) => {
_this.props.editTable.setValByKeyAndIndex(AREA.listTable, row, key, _this.state.defaultVO.values[key]);
});
//设置自制 生效时间 生成时间
dateFormat();
let time = new Date();
props.editTable.setValByKeyAndIndex(AREA.listTable, row, 'dvaliddate', {
value: time.Format('yyyy-MM-dd') + ' 00:00:00',
display: time.Format('yyyy-MM-dd')
});
props.editTable.setValByKeyAndIndex(AREA.listTable, row, 'tcreatetime', {
value: time.Format('yyyy-MM-dd hh:mm:ss'),
display: time.Format('yyyy-MM-dd')
});
props.editTable.setValByKeyAndIndex(AREA.listTable, row, 'ftaxtypeflag', {
value: '1',
display: getLangByResId(page, '4005SUPPLIERPRICE-000007')
}); /* 国际化处理: 应税外加*/
props.editTable.setValByKeyAndIndex(AREA.listTable, row, 'fpricesrctype', {
value: '3',
display: getLangByResId(page, '4005SUPPLIERPRICE-000008')
}); /* 国际化处理: 自制*/
this.after(page);
}
before(page) {
// TODO
}
after(page) {
// TODO
}
}
export default AddAction;
/*R/JW7QQ4vCyCLghhsQtj9ACv322tydgH79JUNJ8w2gw=*/

View File

@ -0,0 +1,33 @@
/*qxKWoeDu8IaE1rXD+suU1jRmKAXnASKwQS47GZaZ68c=*/
import { toast } from 'nc-lightapp-front';
import { AREA } from '../../constance';
import { getLangByResId } from '../../../../../scmpub/scmpub/pub/tool/multiLangUtil';
class AssignAction {
doAction(page) {
this.before(page);
let props = page.props;
let rows = props.editTable.getCheckedRows(AREA.listTable);
if (Array.isArray(rows) && rows.length > 0) {
page.realAssignBtn.click();
} else {
toast({
content: getLangByResId(page, '4005SUPPLIERPRICE-000010'),
color: 'warning'
}); /* 国际化处理: 请先选择待分配的价目表*/
}
this.after(page);
}
before(page) {
// TODO
}
after(page) {
// TODO
}
}
export default AssignAction;
/*qxKWoeDu8IaE1rXD+suU1jRmKAXnASKwQS47GZaZ68c=*/

View File

@ -0,0 +1,90 @@
/*kmMeNHXPpdljPj98yiqeQRh1ynCojIjmL/AFRx6VYrQ=*/
import { URL, STATUS, AREA, PAGEID, ALLBUTTONS, EDITBUTTONS, BROWSEBUTTONS } from '../../constance';
import { initLang, getLangByResId } from '../../../../../scmpub/scmpub/pub/tool/multiLangUtil';
class ButtonController {
constructor(page) {
this.props = page.props;
this.page = page;
this.instance = null;
}
static getInstance(page) {
if (this.instance == null) {
this.instance = new ButtonController(page);
}
return this.instance;
}
/**
* 获得单表状态
* 编辑态 'edit'
* 浏览态 'browse'
*/
getUiStatus = () => {
return this.props.editTable.getStatus(AREA.listTable);
};
/**
* 切换气泡按钮状态
*/
togglePopButton = () => {
let { props } = this.page;
if (STATUS.edit == this.page.state.status) {
props.button.setPopContent('Delete', '');
} else {
props.button.setPopContent(
'Delete',
getLangByResId(this.page, '4005SUPPLIERPRICE-000005')
); /* 国际化处理: 确认删除?*/
}
};
/**
* 列表按钮状态切换
*/
toggleMainButton = () => {
let { props } = this.page;
if (STATUS.edit == this.page.state.status) {
props.button.setButtonVisible(ALLBUTTONS, false);
props.button.setButtonVisible(EDITBUTTONS, true);
props.editTable.selectAllRows(AREA.listTable, false);
} else {
props.button.setButtonVisible(ALLBUTTONS, false);
props.button.setButtonVisible(BROWSEBUTTONS, true);
props.button.setButtonDisabled([ 'Delete', 'Print', 'Output', 'Assign', 'Export', 'PrintPop' ], true);
let count = props.editTable.getNumberOfRows(AREA.listTable);
if (count > 0) {
props.button.setButtonDisabled([ 'Edit' ], false);
} else {
props.button.setButtonDisabled([ 'Edit' ], true);
}
}
//切换状态时清空全局变量updateKeys。
this.page.updateKeys.splice(0, this.page.updateKeys.length);
};
/**
* 单表状态切换
*/
changeUiStatus = () => {
this.toggleMainButton();
this.togglePopButton();
};
/**
* 刷新变更按钮状态
*/
refresh = () => {
let props = this.props;
props.button.setButtonVisible(ALLBUTTONS, false);
props.button.setButtonVisible(BROWSEBUTTONS, true);
props.button.setButtonDisabled([ 'Delete', 'Print', 'Export', 'Output' ], true);
let count = props.editTable.getNumberOfRows(AREA.listTable);
if (count > 0) {
props.button.setButtonDisabled([ 'Edit' ], false);
} else {
props.button.setButtonDisabled([ 'Edit' ], true);
}
};
}
export default ButtonController;
/*kmMeNHXPpdljPj98yiqeQRh1ynCojIjmL/AFRx6VYrQ=*/

View File

@ -0,0 +1,48 @@
/*BPItCcel61E9+QkiAaTxp+QjNnFgcHep4yQHVORR6E0=*/
import ButtonController from './buttonController';
import { promptBox } from 'nc-lightapp-front';
import { AREA } from '../../constance';
import { getLangByResId } from '../../../../../scmpub/scmpub/pub/tool/multiLangUtil';
class CancelAction {
doAction(page) {
this.before(page);
let props = page.props;
let buttonController = ButtonController.getInstance(page);
promptBox({
color: 'warning', // 提示类别默认"success" "success"/"info"/"warning"/"danger",非必输
title: getLangByResId(page, '4005SUPPLIERPRICE-000004'), // 提示标题, 默认不同类别下分别为:"已成功"/"帮助信息"/"请注意"/"出错啦",非必输/* 国际化处理: 确认取消*/
content: getLangByResId(page, '4005SUPPLIERPRICE-000002'), // 提示内容,非必输/* 国际化处理: 是否确认要取消?*/
noFooter: false, // 是否显示底部按钮(确定、取消),默认显示(false),非必输
noCancelBtn: false, // 是否显示取消按钮,,默认显示(false),非必输
beSureBtnName: getLangByResId(page, '4005SUPPLIERPRICE-000003'), // 确定按钮名称, 默认为"确定",非必输/* 国际化处理: 确定*/
cancelBtnName: getLangByResId(page, '4005SUPPLIERPRICE-000004'), // 取消按钮名称, 默认为"取消",非必输/* 国际化处理: 取消*/
hasCloseBtn: false, //显示“X”按钮默认不显示不显示是false显示是true
beSureBtnClick: () => {
page.setState(
{
status: 'browse'
},
() => {
props.editTable.cancelEdit(AREA.listTable);
buttonController.changeUiStatus.call(page);
}
);
// props.search.setDisabled(AREA.searchArea, false);
} // 确定按钮点击调用函数,非必输
});
this.after(page);
}
before(page) {
// TODO
}
after(page) {
// TODO
}
}
export default CancelAction;
/*BPItCcel61E9+QkiAaTxp+QjNnFgcHep4yQHVORR6E0=*/

View File

@ -0,0 +1,142 @@
/*w+zEC2IhjYdPMKcDQ9Ljk3hS4laSIWcGisOK0IA+W9c=*/
import { ajax, toast,promptBox } from 'nc-lightapp-front';
import { URL, AREA, PAGEID} from '../../constance';
import { getLangByResId } from '../../../../../scmpub/scmpub/pub/tool/multiLangUtil';
class DeleteAction {
doAction(page) {
this.before(page);
let props = page.props;
let rows = props.editTable.getCheckedRows(AREA.listTable);
rows = rows.map((row) => {
return row.data;
});
ajax({
method: 'post',
data: {
pageid: PAGEID,
model: {
areaType: 'table',
areacode: AREA.listTable,
rows: rows
}
},
url: URL.delete,
success: (res) => {
if (props.editTable.getStatus(AREA.listTable) == 'edit') {
let indexSet = new Set();
let checkeddata = props.editTable.getCheckedRows(AREA.listTable);
let canDel = true;
checkeddata.map((row) => {
if (row.data.values.fpricesrctype.value == 3) {
indexSet.add(row.index);
} else {
canDel = false;
}
});
if (!canDel) {
toast({ content: getLangByResId(page, '4005SUPPLIERPRICE-000027'), color: 'warning' });
return;
}
props.editTable.deleteTableRowsByIndex(AREA.listTable, Array.from(indexSet));
props.button.setButtonDisabled(
[ 'Delete', 'Print', 'Output', 'Assign', 'PrintPop', 'Export' ],
true
);
let count = props.editTable.getNumberOfRows(AREA.listTable);
if (count > 0) {
props.button.setButtonDisabled([ 'Edit' ], false);
} else {
props.button.setButtonDisabled([ 'Edit' ], true);
}
} else {
promptBox({
color: 'warning', // 提示类别默认"success" "success"/"info"/"warning"/"danger",非必输
title: getLangByResId(page, '4005SUPPLIERPRICE-000037') /* 国际化处理: 提示信息*/,
content: getLangByResId(page, '4005SUPPLIERPRICE-000026') /* 国际化处理: 是否确认删除?*/,
noFooter: false, // 是否显示底部按钮(确定、取消),默认显示(false),非必输
noCancelBtn: false, // 是否显示取消按钮,,默认显示(false),非必输
beSureBtnName: getLangByResId(page, '4005SUPPLIERPRICE-000003'), // 确定按钮名称, 默认为"确定",非必输/* 国际化处理: 确定*/
cancelBtnName: getLangByResId(page, '4005SUPPLIERPRICE-000004'), // 取消按钮名称, 默认为"取消",非必输/* 国际化处理: 取消*/
hasCloseBtn: false, //显示“X”按钮默认不显示不显示是false显示是true
beSureBtnClick: () => {
let indexSet = new Set();
let checkeddata = props.editTable.getCheckedRows(AREA.listTable);
let canDel = true;
checkeddata.map((row) => {
if (row.data.values.fpricesrctype.value == 3) {
indexSet.add(row.index);
} else {
canDel = false;
}
});
if (!canDel) {
toast({
content: getLangByResId(page, '4005SUPPLIERPRICE-000027'),
color: 'warning'
}); /* 国际化处理: 只能删除自制的供应商价目表*/
return;
}
props.editTable.deleteTableRowsByIndex(AREA.listTable, Array.from(indexSet));
if (props.editTable.getStatus(AREA.listTable) == 'edit') {
props.button.setButtonDisabled([ 'Delete' ], true);
return;
}
let data = props.editTable.getAllData(AREA.listTable);
ajax({
url: URL.save,
data: {
pageid: PAGEID,
model: {
areaType: 'table',
areacode: AREA.listTable,
rows: data.rows
}
},
success: (res) => {
if (res && res.data && res.data[AREA.listTable]) {
props.editTable.setTableData(AREA.listTable, res.data.listTable);
} else {
props.editTable.setTableData(AREA.listTable, {
rows: [],
areacode: AREA.listTable
});
}
toast({
title: getLangByResId(page, '4005SUPPLIERPRICE-000013'),
content: getLangByResId(page, '4005SUPPLIERPRICE-000036', { i: indexSet.size }),
color: 'success'
}); /* 国际化处理: 删除成功*/
props.button.setButtonDisabled(
[ 'Delete', 'Print', 'Output', 'Assign', 'PrintPop', 'Export' ],
true
);
let count = props.editTable.getNumberOfRows(AREA.listTable);
if (count > 0) {
props.button.setButtonDisabled([ 'Edit' ], false);
} else {
props.button.setButtonDisabled([ 'Edit' ], true);
}
}
});
} // 确定按钮点击调用函数,非必输
});
}
}
});
this.after(page);
}
before(page) {
// TODO
}
after(page) {
// TODO
}
}
export default DeleteAction;
/*w+zEC2IhjYdPMKcDQ9Ljk3hS4laSIWcGisOK0IA+W9c=*/

View File

@ -0,0 +1,53 @@
/*gQSvRI0XtVkOmPBu+w3g4JWrTvrCZrOuI725vcr8uCA=*/
import ButtonController from './buttonController';
import { ajax } from 'nc-lightapp-front';
import { AREA, URL, PAGEID } from '../../constance';
class EditAction {
doAction(page) {
this.before(page);
let props = page.props;
let buttonController = ButtonController.getInstance(page);
let rows = props.editTable.getCheckedRows(AREA.listTable);
rows = rows.map((row) => {
return row.data;
});
ajax({
method: 'post',
data: {
pageid: PAGEID,
model: {
areaType: 'table',
areacode: AREA.listTable,
rows: rows
}
},
url: URL.edit,
success: (res) => {
page.setState({
status: 'edit'
});
props.editTable.setStatus(AREA.listTable, 'edit');
buttonController.changeUiStatus.call(page);
if (res.formulamsg && res.formulamsg instanceof Array && res.formulamsg.length > 0) {
props.dealFormulamsg(
res.formulamsg //参数一:返回的公式对象
);
}
}
});
this.after(page);
}
before(page) {
// TODO
}
after(page) {
// TODO
}
}
export default EditAction;
/*gQSvRI0XtVkOmPBu+w3g4JWrTvrCZrOuI725vcr8uCA=*/

View File

@ -0,0 +1,43 @@
/*Y9mpBFax8ocymRgGWvYqlK5Iy6p5puIXPdQSSMdJW6I=*/
import { AREA } from '../../constance';
import { toast } from 'nc-lightapp-front';
import { getLangByResId } from '../../../../../scmpub/scmpub/pub/tool/multiLangUtil';
class ExportAction {
doAction(page) {
this.before(page);
let props = page.props;
let rows = props.editTable.getCheckedRows(AREA.listTable);
if (Array.isArray(rows) && rows.length > 0) {
let selectpks = rows.map((row) => {
return row.data.values.pk_supplierprice.value;
});
page.setState(
{
selectedPKS: selectpks
},
() => {
props.modal.show('exportFileModal');
}
);
} else {
toast({
content: getLangByResId(page, '4005SUPPLIERPRICE-000009'),
color: 'warning'
}); /* 国际化处理: 请选择导出数据*/
}
this.after(page);
}
before(page) {
// TODO
}
after(page) {
// TODO
}
}
export default ExportAction;
/*Y9mpBFax8ocymRgGWvYqlK5Iy6p5puIXPdQSSMdJW6I=*/

View File

@ -0,0 +1,42 @@
/*gEoP1PwBfwh3hahZCuMumI6RkNjBJwrAXODCGpQY0sU=*/
import {toast, output } from 'nc-lightapp-front';
import { AREA, URL } from '../../constance';
import { getLangByResId } from '../../../../../scmpub/scmpub/pub/tool/multiLangUtil';
class OutputAction {
doAction(page) {
this.before(page);
let props = page.props;
let rows = props.editTable.getCheckedRows(AREA.listTable);
if (rows.length == 0) {
toast({
content: getLangByResId(page, '4005SUPPLIERPRICE-000011'),
color: 'warning'
}); /* 国际化处理: 请先选择数据*/
return;
}
let ids = rows.map((row) => {
return row.data.values.pk_supplierprice.value;
});
output({
url: URL.print, //后台服务url
data: {
oids: ids, // 功能节点的数据主键 oids含有多个元素(['1001A41000000000A9LR','1001A410000000009JDD'])时为批量打印,
outputType: 'output'
}
});
this.after(page);
}
before(page) {
// TODO
}
after(page) {
// TODO
}
}
export default OutputAction;
/*gEoP1PwBfwh3hahZCuMumI6RkNjBJwrAXODCGpQY0sU=*/

View File

@ -0,0 +1,43 @@
/*UefxjZLs4rMUopjT6SfhujtWarB3h13D6b4tRG6/3I4=*/
import {toast, print } from 'nc-lightapp-front';
import { AREA, URL } from '../../constance';
import { getLangByResId } from '../../../../../scmpub/scmpub/pub/tool/multiLangUtil';
class PrintAction {
doAction(page) {
this.before(page);
let props = page.props;
let rows = props.editTable.getCheckedRows(AREA.listTable);
if (rows.length == 0) {
toast({
content: getLangByResId(page, '4005SUPPLIERPRICE-000011'),
color: 'warning'
}); /* 国际化处理: 请先选择数据*/
return;
}
let ids = rows.map((row) => {
return row.data.values.pk_supplierprice.value;
});
print(
'pdf', //支持两类: 'html'为模板打印, 'pdf'为pdf打印
URL.print, //后台服务url
{
oids: ids // 功能节点的数据主键 oids含有多个元素(['1001A41000000000A9LR','1001A410000000009JDD'])时为批量打印,
// 打印按钮不用传该参数,输出按钮(文件下载)需加参数outputType,值为output。
}
);
this.after(page);
}
before(page) {
// TODO
}
after(page) {
// TODO
}
}
export default PrintAction;
/*UefxjZLs4rMUopjT6SfhujtWarB3h13D6b4tRG6/3I4=*/

View File

@ -0,0 +1,47 @@
/*zK5+8Cs1fYtHndsZZI4DWsM/N3Q5X843dAzZp8PYhvo=*/
import { ajax, toast } from 'nc-lightapp-front';
import { URL, STATUS, AREA } from '../../constance';
import ButtonController from './buttonController';
import { getLangByResId } from '../../../../../scmpub/scmpub/pub/tool/multiLangUtil';
import { showRefreshInfo } from '../../../../../scmpub/scmpub/pub/tool/messageUtil';
class RefreshAction {
doAction(page) {
this.before(page);
let props = page.props;
let buttonController = ButtonController.getInstance(page);
let data = page.state.searchData;
if (!data) {
toast({ content: getLangByResId(page, '4005SUPPLIERPRICE-000033', { i: 0 }), color: 'success' });
return;
}
ajax({
url: URL.query,
data: data,
success: (res) => {
if (res && res.data.grid && res.data.grid[AREA.listTable]) {
props.editTable.setTableData(AREA.listTable, res.data.grid.listTable);
props.editTable.setStatus(AREA.listTable, STATUS.browse);
} else {
props.editTable.setTableData(AREA.listTable, { rows: [], areacode: AREA.listTable });
props.editTable.setStatus(AREA.listTable, STATUS.browse);
}
let flag = page.state.status != 'browse';
buttonController.refresh();
showRefreshInfo();
}
});
this.after(page);
}
before(page) {
// TODO
}
after(page) {
// TODO
}
}
export default RefreshAction;
/*zK5+8Cs1fYtHndsZZI4DWsM/N3Q5X843dAzZp8PYhvo=*/

View File

@ -0,0 +1,140 @@
/*Z6Ki8FTZpL6p+CVAxoVh+sS1xEQgjeFJPvUCcgzj1UQ=*/
import { ajax, toast } from 'nc-lightapp-front';
import { URL, STATUS, AREA, PAGEID } from '../../constance';
import ButtonController from './buttonController';
import { getLangByResId } from '../../../../../scmpub/scmpub/pub/tool/multiLangUtil';
class SaveAction {
doAction(page) {
this.before(page);
let props = page.props;
let buttonController = ButtonController.getInstance(page);
let rows = props.editTable.getAllRows(AREA.listTable, true);
let delRow = [];
// 空行过滤
for (let i = 0; i < rows.length; i++) {
if (
!rows[i].values.pk_material.value &&
!rows[i].values.norigprice.value &&
!rows[i].values.norigtaxprice.value &&
!rows[i].values.nastorigprice.value &&
!rows[i].values.nastorigtaxprice.value &&
!rows[i].values.vchangerate.value
) {
delRow.push(i);
}
}
props.editTable.deleteTableRowsByIndex(AREA.listTable, delRow);
rows = props.editTable.getAllRows(AREA.listTable, true);
// 必输项校验
let flag = props.editTable.checkRequired(AREA.listTable, rows);
if (!flag) {
return;
}
let data = {
pageid: PAGEID,
model: {
areaType: 'table',
areacode: AREA.listTable,
rows: rows
}
};
//设置伪列
data.model.rows.map((row, index) => {
// 设置pseudocolumn字段值用于前后台合并
row.values.pseudocolumn.value = index + '';
});
setTimeout(function() {
props.validateToSave(data, () => {
ajax({
url: URL.save,
data: {
pageid: PAGEID,
model: {
areaType: 'table',
areacode: AREA.listTable,
rows: rows
},
userjson: JSON.stringify(page.updateKeys)
},
success: (res) => {
if (res && res.data) {
props.beforeUpdatePage();
let data = page.state.searchData;
if (res && res.data && res.data[AREA.listTable]) {
props.editTable.setTableData(AREA.listTable, res.data.listTable);
props.editTable.setStatus(AREA.listTable, STATUS.browse);
} else {
props.editTable.setTableData(AREA.listTable, {
rows: [],
areacode: AREA.listTable
});
props.editTable.setStatus(AREA.listTable, STATUS.browse);
}
// props.search.setDisabled(AREA.searchArea, false);
page.setState(
{
status: 'browse'
},
() => {
buttonController.changeUiStatus.call(page);
}
);
props.updatePage(null, AREA.listTable);
toast({
title: getLangByResId(page, '4005SUPPLIERPRICE-000000'),
color: 'success'
}); /* 国际化处理: 保存成功*/
if (res.formulamsg && res.formulamsg instanceof Array && res.formulamsg.length > 0) {
props.dealFormulamsg(
res.formulamsg //参数一:返回的公式对象
);
}
} else {
props.editTable.setTableData(AREA.listTable, {
rows: [],
areacode: AREA.listTable
});
props.editTable.setStatus(AREA.listTable, STATUS.browse);
let flag = page.state.status != 'browse';
// props.search.setDisabled(AREA.searchArea, false);
page.setState(
{
status: 'browse'
},
() => {
buttonController.changeUiStatus.call(page);
}
);
toast({
content: getLangByResId(page, '4005SUPPLIERPRICE-000000'),
color: 'success'
}); /* 国际化处理: 保存成功*/
if (res.formulamsg && res.formulamsg instanceof Array && res.formulamsg.length > 0) {
props.dealFormulamsg(
res.formulamsg //参数一:返回的公式对象
);
}
}
}
});
});
}, 200);
this.after(page);
}
before(page) {
// TODO
}
after(page) {
// TODO
}
}
export default SaveAction;
/*Z6Ki8FTZpL6p+CVAxoVh+sS1xEQgjeFJPvUCcgzj1UQ=*/

View File

@ -0,0 +1,26 @@
/*92QcCQ1MRjkSEFQIgla9r73mHh2xeDx6yTSZkGTtqEE=*/
export function dateFormat() {
Date.prototype.Format = function (fmt) {
//author: meizz
var o = {
'M+': this.getMonth() + 1, //月份
'd+': this.getDate(), //日
'h+': this.getHours(), //小时
'm+': this.getMinutes(), //分
's+': this.getSeconds(), //秒
'q+': Math.floor((this.getMonth() + 3) / 3), //季度
S: this.getMilliseconds(), //毫秒
};
if (/(y+)/.test(fmt)) {
fmt = fmt.replace(RegExp.$1, (this.getFullYear() + '').substr(4 - RegExp.$1.length));
}
for (var k in o){
if (new RegExp('(' + k + ')').test(fmt)) {
fmt = fmt.replace(RegExp.$1, RegExp.$1.length == 1 ? o[k] : ('00' + o[k]).substr(('' + o[k]).length));
}
}
return fmt;
};
}
/*92QcCQ1MRjkSEFQIgla9r73mHh2xeDx6yTSZkGTtqEE=*/

4
src/purp/public/index.js Normal file
View File

@ -0,0 +1,4 @@
/*wcAyGzXIuLMPKe72bAn4f72BcH03jamWKj7p/ELKGtY=*/
import {dateFormat} from './dateformat';
export {dateFormat};
/*wcAyGzXIuLMPKe72bAn4f72BcH03jamWKj7p/ELKGtY=*/

View File

@ -0,0 +1,62 @@
{
"4005ASKBILL-000000": "询报价单",
"4005ASKBILL-000001": "确定要删除吗?",
"4005ASKBILL-000002": "当前单据未保存,您确认离开此页面?",
"4005ASKBILL-000003": "删除成功",
"4005ASKBILL-000004": "操作",
"4005ASKBILL-000005": "请选择数据",
"4005ASKBILL-000006": "删除",
"4005ASKBILL-000007": "失败!",
"4005ASKBILL-000008": "取消成功",
"4005ASKBILL-000009": "请选择行!",
"4005ASKBILL-000010": "应税外加",
"4005ASKBILL-000011": "自由",
"4005ASKBILL-000012": "所选物料行为空,不可增加供应商行",
"4005ASKBILL-000013": "请选择要删除的物料行",
"4005ASKBILL-000014": "无符合条件数据",
"4005ASKBILL-000015": "请选择要删除的供应商行",
"4005ASKBILL-000016": "提示",
"4005ASKBILL-000017": "有未处理完的单据,是否退出转单?",
"4005ASKBILL-000018": "注意",
"4005ASKBILL-000019": "有未处理完的单据,是否返回?",
"4005ASKBILL-000020": "选择供应商",
"4005ASKBILL-000021": "表体应至少有一行物料,否则无法选择供应商!",
"4005ASKBILL-000022": "邮箱设置",
"4005ASKBILL-000023": "是否删除",
"4005ASKBILL-000024": "用户信息?",
"4005ASKBILL-000025": "发出",
"4005ASKBILL-000026": "导出数据项目设置",
"4005ASKBILL-000027": "发送邮件",
"4005ASKBILL-000029": "确定",
"4005ASKBILL-000030": "取消",
"4005ASKBILL-000031": "生成Excel",
"4005ASKBILL-000032": "发送",
"4005ASKBILL-000033": "未选择发送供应商",
"4005ASKBILL-000034": "待选",
"4005ASKBILL-000035": "已选",
"4005ASKBILL-000036": "收件人",
"4005ASKBILL-000037": "收件人不能为空",
"4005ASKBILL-000038": "主题",
"4005ASKBILL-000039": "附件",
"4005ASKBILL-000040": "备注",
"4005ASKBILL-000041": "已存在完成的供应商行时不能删除,请检查",
"4005ASKBILL-000042": "询报价单号(",
"4005ASKBILL-000043": ")_供应商(",
"4005ASKBILL-000044": "成功",
"4005ASKBILL-000045": "发送成功!",
"4005ASKBILL-000046": "到货日期不能小于询价日期",
"4005ASKBILL-000047": "报价失效日期不能在报价生效日期之前",
"4005ASKBILL-000048": "导出格式文件设置",
"4005ASKBILL-000049": "文件类型",
"4005ASKBILL-000050": "发送成功",
"4005ASKBILL-000051": "请选择待询价的供应商!",
"4005ASKBILL-000052": "不存在需要报价的行",
"4005ASKBILL-000053": "邮箱地址不合法",
"4005ASKBILL-000054": "有供应商行不支持拖拽复制!",
"4005ASKBILL-000055": "上一步",
"4005ASKBILL-000056": "下一步",
"4005ASKBILL-000057": "发送",
"4005ASKBILL-000058": "请选择供应商",
"4005ASKBILL-000059": "请在“导出数据项目设置”中选择导出的数据",
"4005ASKBILL-000060": "请在“发送邮件”中录入收件人"
}

View File

@ -0,0 +1,5 @@
{
"4005CHECKITEM-000000": "检验项目",
"4005CHECKITEM-000001": "检验项目编码",
"4005CHECKITEM-000002": "检验项目名称"
}

View File

@ -0,0 +1,15 @@
{
"4005DISCOUNT-000000": "确认修改",
"4005DISCOUNT-000001": "是否修改组织,这样会清空您录入的信息?",
"4005DISCOUNT-000002": "保存成功",
"4005DISCOUNT-000003": "当前单据未保存,您确认离开此页面",
"4005DISCOUNT-000004": "采购折扣",
"4005DISCOUNT-000005": "基本信息",
"4005DISCOUNT-000006": "操作",
"4005DISCOUNT-000007": "折扣梯度",
"4005DISCOUNT-000008": "单品折扣",
"4005DISCOUNT-000009": "组合折扣",
"4005DISCOUNT-000010": "适用组织",
"4005DISCOUNT-000011": "请选择数据",
"4005DISCOUNT-000012": "确定要删除吗?"
}

View File

@ -0,0 +1,19 @@
{
"4005ECHARTS-000001": "采购执行价对比分析",
"4005ECHARTS-000002": "期间",
"4005ECHARTS-000003": "价格(元)",
"4005ECHARTS-000004": "采购执行价",
"4005ECHARTS-000005": "平均价",
"4005ECHARTS-000006": "参考成本",
"4005ECHARTS-000007": "平均价",
"4005ECHARTS-000008": "历史价格折线图",
"4005ECHARTS-000009": "报价",
"4005ECHARTS-000010": "审批价",
"4005ECHARTS-000011": "交易价",
"4005ECHARTS-000012": "加载中",
"4005ECHARTS-000013": "历史价格",
"4005ECHARTS-000014": "执行价对比分析",
"4005ECHARTS-000015": "按日分析",
"4005ECHARTS-000016": "按周分析",
"4005ECHARTS-000017": "按月分析"
}

View File

@ -0,0 +1,3 @@
{
"4005NEWPRICEQUERY-000000": "业务数据月数最多可查询36个月请检查"
}

View File

@ -0,0 +1,77 @@
{
"4005PRICEAUDIT-000000": "输入值必须为(0,∞]或者(0,∞]/(0,∞]",
"4005PRICEAUDIT-000001": "清空组织会清空您录入的信息!",
"4005PRICEAUDIT-000002": "是否修改组织,这样会清空您录入的信息?",
"4005PRICEAUDIT-000003": "提示",
"4005PRICEAUDIT-000004": "有未处理完的单据,是否退出转单",
"4005PRICEAUDIT-000005": "有未处理完的单据,是否退出转单?",
"4005PRICEAUDIT-000006": "确定要取消吗?",
"4005PRICEAUDIT-000007": "取消成功",
"4005PRICEAUDIT-000008": "操作成功!",
"4005PRICEAUDIT-000009": "行关闭失败!",
"4005PRICEAUDIT-000010": "请选择需要操作的数据!",
"4005PRICEAUDIT-000011": "行关闭成功!",
"4005PRICEAUDIT-000012": "合并显示",
"4005PRICEAUDIT-000013": "委外订单合并显示: ",
"4005PRICEAUDIT-000014": "确定要删除所选数据吗?",
"4005PRICEAUDIT-000015": "删除成功!",
"4005PRICEAUDIT-000016": "第",
"4005PRICEAUDIT-000017": "行来源于资产配置申请, 不能删除\n",
"4005PRICEAUDIT-000018": "行已经关闭\n",
"4005PRICEAUDIT-000019": "行已经有后续单据\n",
"4005PRICEAUDIT-000020": "行打开失败!",
"4005PRICEAUDIT-000021": "表体为空",
"4005PRICEAUDIT-000022": "是否继续保存?",
"4005PRICEAUDIT-000023": "当前单据未保存,您确定离开此页面?",
"4005PRICEAUDIT-000024": "价格审批单",
"4005PRICEAUDIT-000025": "指派",
"4005PRICEAUDIT-000026": "删除",
"4005PRICEAUDIT-000027": "是否确定删除?",
"4005PRICEAUDIT-000028": "操作",
"4005PRICEAUDIT-000029": "提交成功!",
"4005PRICEAUDIT-000030": "请选择需要提交的数据!",
"4005PRICEAUDIT-000031": "设置页签数量的默认值",
"4005PRICEAUDIT-000032": "请选择需要删除的数据!",
"4005PRICEAUDIT-000033": "请选择要输出的订单!",
"4005PRICEAUDIT-000034": "请选择要打印的订单!",
"4005PRICEAUDIT-000035": "请选择需要收回的数据!",
"4005PRICEAUDIT-000036": "注意",
"4005PRICEAUDIT-000037": "确定要删除吗?",
"4005PRICEAUDIT-000038": "待提交",
"4005PRICEAUDIT-000039": "审批中",
"4005PRICEAUDIT-000040": "执行中",
"4005PRICEAUDIT-000041": "全部",
"4005PRICEAUDIT-000042": "首页",
"4005PRICEAUDIT-000043": "委外订单管理",
"4005PRICEAUDIT-000044": "物资需求申请",
"4005PRICEAUDIT-000045": "查询结果为空",
"4005PRICEAUDIT-000046": "生成价格审批单",
"4005PRICEAUDIT-000047": "选择请购单",
"4005PRICEAUDIT-000048": "提交失败!",
"4005PRICEAUDIT-000049": "保存成功!",
"4005PRICEAUDIT-000050": "收回成功!",
"4005PRICEAUDIT-000051": "刷新成功",
"4005PRICEAUDIT-000052": "查询成功!",
"4005PRICEAUDIT-000053": "整单打开成功!",
"4005PRICEAUDIT-000054": "整单关闭成功!",
"4005PRICEAUDIT-000055": "行打开成功!",
"4005PRICEAUDIT-000056": "提交",
"4005PRICEAUDIT-000057": "删除",
"4005PRICEAUDIT-000058": "收回",
"4005PRICEAUDIT-000059": "保存提交成功!",
"4005PRICEAUDIT-000060": "确定修改",
"4005PRICEAUDIT-000061": "取消",
"4005PRICEAUDIT-000062": "刷新失败",
"4005PRICEAUDIT-000063": "删除失败!",
"4005PRICEAUDIT-000064": "请先确定表头库存组织的值。",
"4005PRICEAUDIT-000065": "请先确定表头收货客户的值。",
"4005PRICEAUDIT-000066": "选择采购合同",
"4005PRICEAUDIT-000067": "未选中表体行,或没有联副数据!",
"4005PRICEAUDIT-000068": "请勾选一行表体!",
"4005PRICEAUDIT-000069": "请先录入物料!",
"4005PRICEAUDIT-000070": "生成询报价单",
"4005PRICEAUDIT-000071": "选择询报价单",
"4005PRICEAUDIT-000072": "请启用相应模块!",
"4005PRICEAUDIT-000073": "选中行没有物料,请录入物料",
"4005PRICEAUDIT-000074": "有供应商行不支持拖拽复制!"
}

View File

@ -0,0 +1,6 @@
{
"4005PUB-000000": "无符合条件数据",
"4005PUB-000001": "请选择要删除的物料行",
"4005PUB-000002": "请选择要删除的供应商行",
"4005pub-000003": "行号不能重复"
}

View File

@ -0,0 +1,48 @@
{
"4005QPSCHM-000000": "优质优价标准重复",
"4005QPSCHM-000001": "删除成功",
"4005QPSCHM-000002": "组织节点只能维护当前节点有权限组织的数据",
"4005QPSCHM-000003": "历史版本",
"4005QPSCHM-000004": "表体行不能为空",
"4005QPSCHM-000005": "提示",
"4005QPSCHM-000006": "保存为新版本吗?",
"4005QPSCHM-000007": "是",
"4005QPSCHM-000008": "否",
"4005QPSCHM-000009": "扣吨公式:",
"4005QPSCHM-000010": "调价公式:",
"4005QPSCHM-000011": "优质优价方案-集团",
"4005QPSCHM-000012": "优质优价方案-采购组织",
"4005QPSCHM-000013": "如果",
"4005QPSCHM-000014": "否则",
"4005QPSCHM-000015": "则",
"4005QPSCHM-000016": "并且",
"4005QPSCHM-000017": "或者",
"4005QPSCHM-000018": "元数据属性",
"4005QPSCHM-000019": "表和字段",
"4005QPSCHM-000020": "项目和内容",
"4005QPSCHM-000021": "操作",
"4005QPSCHM-000022": "失效日期应大于等于生效日期",
"4005QPSCHM-000023": "扣吨公式为空",
"4005QPSCHM-000024": "表体扣吨页签中,优质优价标准为空,因此扣吨公式不应有值!",
"4005QPSCHM-000025": "调价公式为空",
"4005QPSCHM-000026": "表体调价页签中,优质优价标准为空,因此调价公式不应有值!",
"4005QPSCHM-000027": "扣吨的计算优先级设置错误...",
"4005QPSCHM-000028": "调价的计算优先级设置错误...",
"4005QPSCHM-000029": "先决条件公式设置错误,包含非法检验项目,类型:",
"4005QPSCHM-000030": "扣吨",
"4005QPSCHM-000031": "调价",
"4005QPSCHM-000032": "优先级",
"4005QPSCHM-000033": "类型",
"4005QPSCHM-000034": "先决条件公式设置错误,包含非法检验项目",
"4005QPSCHM-000035": "公式中包含非法变量 ",
"4005QPSCHM-000036": "查询成功",
"4005QPSCHM-000037": "请选择要删除的数据",
"4005QPSCHM-000038": "删除",
"4005QPSCHM-000039": "确定要删除吗?",
"4005QPSCHM-000040": "删除失败",
"4005QPSCHM-000041": "请选择要打印的订单!",
"4005QPSCHM-000042": "优质优价方案",
"4005QPSCHM-000043": "方案编码",
"4005QPSCHM-000044": "方案名称",
"4005QPSCHM-000045": "当前单据未保存,您确认离开此页面"
}

View File

@ -0,0 +1,44 @@
{
"4005QPSTANDARD-000000": "组织节点只能维护当前节点有权限组织的数据",
"4005QPSTANDARD-000001": "删除成功",
"4005QPSTANDARD-000002": "历史版本",
"4005QPSTANDARD-000003": "提示",
"4005QPSTANDARD-000004": "保存为新版本吗?",
"4005QPSTANDARD-000005": "是",
"4005QPSTANDARD-000006": "否",
"4005QPSTANDARD-000007": "上下限值不相等",
"4005QPSTANDARD-000008": "数据输入错误",
"4005QPSTANDARD-000009": "上限值不能小于下限值",
"4005QPSTANDARD-000010": " 上限值不能小于下限值",
"4005QPSTANDARD-000011": " 上下限值不相等",
"4005QPSTANDARD-000012": "当前单据未保存,您确认离开此页面",
"4005QPSTANDARD-000013": "优质优价标准-集团",
"4005QPSTANDARD-000014": "优质优价标准-采购组织",
"4005QPSTANDARD-000015": "如果",
"4005QPSTANDARD-000016": "否则",
"4005QPSTANDARD-000017": "则",
"4005QPSTANDARD-000018": "并且",
"4005QPSTANDARD-000019": "或者",
"4005QPSTANDARD-000020": "元数据属性",
"4005QPSTANDARD-000021": "表和字段",
"4005QPSTANDARD-000022": "项目和内容",
"4005QPSTANDARD-000023": "操作",
"4005QPSTANDARD-000024": " 无表体行,无法保存!",
"4005QPSTANDARD-000025": "失效日期应大于等于生效日期",
"4005QPSTANDARD-000026": "字符型标准值,累计方式只能选择不累计",
"4005QPSTANDARD-000027": " 区间为空,序号:",
"4005QPSTANDARD-000028": " 区间重叠:",
"4005QPSTANDARD-000029": " 上下限值不等,序号:",
"4005QPSTANDARD-000030": " 上下限必须全部包含,序号:",
"4005QPSTANDARD-000031": " 区间重叠,序号:",
"4005QPSTANDARD-000032": "不是数字型",
"4005QPSTANDARD-000033": "不是数字型,表体序号:",
"4005QPSTANDARD-000034": " 表头基准区间与调整区间重叠,表体序号:",
"4005QPSTANDARD-000035": "请选择要删除的数据",
"4005QPSTANDARD-000036": "请选择要打印的订单!",
"4005QPSTANDARD-000037": "确定要删除吗?",
"4005QPSTANDARD-000038": "优质优价标准",
"4005QPSTANDARD-000039": "优质优价编码",
"4005QPSTANDARD-000040": "优质优价名称",
"4005QPSTANDARD-000041": "表头标准值类型不能为空!"
}

View File

@ -0,0 +1,9 @@
{
"1880000025-000000": "期间",
"1880000025-000001": "价格(元)",
"1880000025-000002": "平均价",
"1880000025-000003": "参考成本",
"1880000025-000004": "查询条件分析区间为其他时,天数不能为空",
"1880000025-000005": "价格",
"1880000025-000006": "供应商报价对比分析"
}

View File

@ -0,0 +1,40 @@
{
"4005SUPPLIERPRICE-000000": "保存成功",
"4005SUPPLIERPRICE-000001": "确认取消",
"4005SUPPLIERPRICE-000002": "确定要取消吗?",
"4005SUPPLIERPRICE-000003": "确定",
"4005SUPPLIERPRICE-000004": "取消",
"4005SUPPLIERPRICE-000005": "确定要删除吗?",
"4005SUPPLIERPRICE-000006": "主组织不能为空",
"4005SUPPLIERPRICE-000007": "应税外加",
"4005SUPPLIERPRICE-000008": "自制",
"4005SUPPLIERPRICE-000009": "请选择导出数据",
"4005SUPPLIERPRICE-000010": "请先选择待分配的价目表",
"4005SUPPLIERPRICE-000011": "请先选择数据",
"4005SUPPLIERPRICE-000012": "采购组织不能为空",
"4005SUPPLIERPRICE-000013": "删除成功",
"4005SUPPLIERPRICE-000014": "行号必须是整数",
"4005SUPPLIERPRICE-000015": "行号必须大于零",
"4005SUPPLIERPRICE-000016": "行号不能重复",
"4005SUPPLIERPRICE-000017": "是否为外为选择,请确定",
"4005SUPPLIERPRICE-000018": "价格失效日期不能在价格生效日期之前",
"4005SUPPLIERPRICE-000019": "价格生效日期不能在价格失效日期之后",
"4005SUPPLIERPRICE-000020": "物料不能为空!",
"4005SUPPLIERPRICE-000021": "币种未定义,请先定义币种",
"4005SUPPLIERPRICE-000022": "采购组织不能为空",
"4005SUPPLIERPRICE-000023": "采购组织",
"4005SUPPLIERPRICE-000024": "提示信息",
"4005SUPPLIERPRICE-000025": "是否确认取消?",
"4005SUPPLIERPRICE-000026": "确定要删除所选数据?",
"4005SUPPLIERPRICE-000027": "只能删除自制的供应商价目表",
"4005SUPPLIERPRICE-000028": "分配",
"4005SUPPLIERPRICE-000029": "分配成功",
"4005SUPPLIERPRICE-000030": "供应商价目表",
"4005SUPPLIERPRICE-000031": "操作",
"4005SUPPLIERPRICE-000032": "刷新成功!",
"4005SUPPLIERPRICE-000033": "查询成功,共{i}条",
"4005SUPPLIERPRICE-000034": "未查询出符合条件的数据!",
"4005SUPPLIERPRICE-000035": "查询结果大于100条请缩小条件再试",
"4005SUPPLIERPRICE-000036": "处理成功{i}条",
"4005SUPPLIERPRICE-000037": "删除"
}

View File

@ -0,0 +1,21 @@
{
"4005WORKBENCH-000000": "第",
"4005WORKBENCH-000001": "年",
"4005WORKBENCH-000002": "季度",
"4005WORKBENCH-000003": "月",
"4005WORKBENCH-000004": "上旬",
"4005WORKBENCH-000005": "中旬",
"4005WORKBENCH-000006": "下旬",
"4005WORKBENCH-000007": "周",
"4005WORKBENCH-000008": "日",
"4005WORKBENCH-000009": "订单采购执行价变动趋势",
"4005WORKBENCH-000010": "采购价格查询",
"4005WORKBENCH-000011": "提交成功",
"4005WORKBENCH-000012": "价格审批单",
"4005WORKBENCH-000013": "提交指派",
"4005WORKBENCH-000014": "张",
"4005WORKBENCH-000015": "行",
"4005WORKBENCH-000016": "待报价",
"4005WORKBENCH-000017": "暂无数据",
"4005WORKBENCH-000018": "提交"
}