组装单及其相关的前端源码
This commit is contained in:
parent
9a30a4f9ea
commit
a3b5d19f5a
|
|
@ -1,4 +1,3 @@
|
|||
/*AUyQQ2otIZtZVYw4Vp1UwxfAflXWc1r8zmcCOYFK2ZaUlUveT32NH63YKxcE0f4i*/
|
||||
/*
|
||||
* @Author: yinliang
|
||||
* @PageInfo: 库存调整,组装、拆卸,单据使用的特殊的公共编辑后事件
|
||||
|
|
@ -191,5 +190,3 @@ function createBodyAfterEventData(
|
|||
}
|
||||
return data;
|
||||
}
|
||||
|
||||
/*AUyQQ2otIZtZVYw4Vp1UwxfAflXWc1r8zmcCOYFK2ZaUlUveT32NH63YKxcE0f4i*/
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*mzNJ6TAzI7cdHAQfVuHqtok1/qsAGhZh1ApdnXO+Q9LqYlGtymcwlJH+lK0VnKzO*/
|
||||
/*
|
||||
* @Author: yinliang
|
||||
* @PageInfo: 库存调整单据,物料公共编辑后事件
|
||||
|
|
@ -191,5 +190,3 @@ export default function cmaterialAfterEvent(props, moduleId, key, value, changed
|
|||
});
|
||||
}
|
||||
}
|
||||
|
||||
/*mzNJ6TAzI7cdHAQfVuHqtok1/qsAGhZh1ApdnXO+Q9LqYlGtymcwlJH+lK0VnKzO*/
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*+qNzC8BhERHWYnJYS1BAY+30KhnKRJWLIqCc4Sxf9w7dCBUP6Y/Bassq/zVeq7Yk*/
|
||||
/*
|
||||
* @Author: yinliang
|
||||
* @PageInfo: 库存调整单据,数量、主数量、单价、金额等只会导致单行变化的公共编辑后事件
|
||||
|
|
@ -89,5 +88,3 @@ function getUpdateRows(index, rows) {
|
|||
return [ { index: index, data: rows[0] } ];
|
||||
}
|
||||
}
|
||||
|
||||
/*+qNzC8BhERHWYnJYS1BAY+30KhnKRJWLIqCc4Sxf9w7dCBUP6Y/Bassq/zVeq7Yk*/
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*xWyFPW5coWP2PlRk1hOCNoIiv3xnLWMMFwnl4jy8kbA=*/
|
||||
import { ajax, base, toast } from 'nc-lightapp-front';
|
||||
import { locationUtil } from '../../pub/utils';
|
||||
import { updateFeeDetail } from '../../purchasein/card/afterEvents/bodyAfterEvent';
|
||||
|
|
@ -49,5 +48,3 @@ export default function afterEvent(props, moduleId, key, changedrows, index, con
|
|||
}
|
||||
});
|
||||
}
|
||||
|
||||
/*xWyFPW5coWP2PlRk1hOCNoIiv3xnLWMMFwnl4jy8kbA=*/
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*wBi03ug+JB0SCAC2h37b4vPJV+Wn4pMOz3NVJN/3Gb4aYrQNOPxPQfPZLG3Z9IQn*/
|
||||
import { ajax, toast } from 'nc-lightapp-front';
|
||||
/**
|
||||
*
|
||||
|
|
@ -33,5 +32,4 @@ function clocationidQueryAfterEvent(newValue,currentIndex) {
|
|||
});
|
||||
}
|
||||
|
||||
export { clocationidQueryAfterEvent};
|
||||
/*wBi03ug+JB0SCAC2h37b4vPJV+Wn4pMOz3NVJN/3Gb4aYrQNOPxPQfPZLG3Z9IQn*/
|
||||
export { clocationidQueryAfterEvent};
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*8qmVI9P5f8WKM9EVOYlAs2qj1QzBa0Cxjc5Ubtod4IA=*/
|
||||
/*
|
||||
* @Author: raoczh
|
||||
* @PageInfo: 通用表体编辑后事件功能(提供成功后回调函数)
|
||||
|
|
@ -150,5 +149,3 @@ function getUpdateRows(index, rows) {
|
|||
return [ { index: index, data: rows[0] } ];
|
||||
}
|
||||
}
|
||||
|
||||
/*8qmVI9P5f8WKM9EVOYlAs2qj1QzBa0Cxjc5Ubtod4IA=*/
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*DXsN6NBKcdw209OlGknNibXuiAC6mM2aIDUGVAxXYdE=*/
|
||||
/*
|
||||
* @Author: raoczh
|
||||
* @PageInfo: 通用表头编辑后事件功能
|
||||
|
|
@ -98,5 +97,3 @@ export default function afterEvent(
|
|||
});
|
||||
}
|
||||
}
|
||||
|
||||
/*DXsN6NBKcdw209OlGknNibXuiAC6mM2aIDUGVAxXYdE=*/
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*8CdHYS+a9Q2smogIeoYriEP5x7vzqBeEXoSMjia1I4E=*/
|
||||
import orgAfterEvent from './orgAfterEvent';
|
||||
import materialAfterEvent from './materialAfterEvent';
|
||||
import commonBodyEvent from './commonBodyEvent';
|
||||
|
|
@ -19,5 +18,3 @@ export {
|
|||
adjustCommonBodyAfterEvents,
|
||||
adjust4LAnd4MBodyAfterEvents
|
||||
};
|
||||
|
||||
/*8CdHYS+a9Q2smogIeoYriEP5x7vzqBeEXoSMjia1I4E=*/
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*4SrEs5VVpsI6N9do6I+3UFJprTEJMfIPGJxrZ168Jt8=*/
|
||||
/*
|
||||
* @Author: raoczh
|
||||
* @PageInfo: 物料编辑后事件
|
||||
|
|
@ -231,5 +230,3 @@ export default function afterEvent(props, moduleId, key, changedrows, index, con
|
|||
});
|
||||
}
|
||||
}
|
||||
|
||||
/*4SrEs5VVpsI6N9do6I+3UFJprTEJMfIPGJxrZ168Jt8=*/
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*50WLnzGeq39Tfv85RWLaWbCisqQm+aXAH5k2ejpw428=*/
|
||||
/*
|
||||
* @Author: raoczh
|
||||
* @PageInfo: 主组织编辑后事件功能
|
||||
|
|
@ -180,5 +179,3 @@ const changeOrg = function (props, moduleId, key, value, constance, callback, ..
|
|||
}
|
||||
}
|
||||
};
|
||||
|
||||
/*50WLnzGeq39Tfv85RWLaWbCisqQm+aXAH5k2ejpw428=*/
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*xx+NJ0Env0EIX9ukWkHgyW98ijYQ96Tew79BNRZH/Wb61dfJnJ5TL6lW0q+rOd/e*/
|
||||
/*
|
||||
* @Author: zhengxinm
|
||||
* @PageInfo: 页面功能描述
|
||||
|
|
@ -142,5 +141,3 @@ export default function afterEvent(props, moduleId, value, changedrows, index, r
|
|||
// callback: afterEvent //请求成功的回调(业务组自己的编辑后事件)
|
||||
// });
|
||||
}
|
||||
|
||||
/*xx+NJ0Env0EIX9ukWkHgyW98ijYQ96Tew79BNRZH/Wb61dfJnJ5TL6lW0q+rOd/e*/
|
||||
|
|
@ -1,6 +1,3 @@
|
|||
/*8CdHYS+a9Q2smogIeoYriEP5x7vzqBeEXoSMjia1I4E=*/
|
||||
import pubBatchEvents from './pubBatchEvents';
|
||||
|
||||
export { pubBatchEvents };
|
||||
|
||||
/*8CdHYS+a9Q2smogIeoYriEP5x7vzqBeEXoSMjia1I4E=*/
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*LAz++BtTYn4fNSKmfT2TYKaXAaP8RSoOaBxQxocvquk=*/
|
||||
/*
|
||||
* @Author: zhengxinm
|
||||
* @PageInfo: 表体编辑后事件 批量
|
||||
|
|
@ -744,5 +743,3 @@ function bodyAfterEdit(res, areaCode, attrcode, constance, callFun) {
|
|||
}
|
||||
});
|
||||
}
|
||||
|
||||
/*LAz++BtTYn4fNSKmfT2TYKaXAaP8RSoOaBxQxocvquk=*/
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*/X0hEifPZfQqQw9tLsMEmBXxWfZ9mKX4md4i1rMiFWfIE6I0M3fkVn/mFRR0aE2/*/
|
||||
import { ajax, toast } from 'nc-lightapp-front';
|
||||
/**
|
||||
*
|
||||
|
|
@ -46,5 +45,3 @@ function batchcodeMultiBeforeEdit(index, pk_org, cmaterialvid, data) {
|
|||
|
||||
export { batchcodeMultiBeforeEdit};
|
||||
|
||||
|
||||
/*/X0hEifPZfQqQw9tLsMEmBXxWfZ9mKX4md4i1rMiFWfIE6I0M3fkVn/mFRR0aE2/*/
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*OPdKo1ixwIpSxwd8Nf0fjych4LcXRNJNAM14x3uwfcg=*/
|
||||
/**
|
||||
* 库存状态编辑前处理,需要物料的固定辅助属性库存状态启用
|
||||
* 这类方法必须有返回值,返回true为可编辑,false为不可编辑
|
||||
|
|
@ -46,5 +45,3 @@ export default function(props, constance) {
|
|||
}
|
||||
});
|
||||
}
|
||||
|
||||
/*OPdKo1ixwIpSxwd8Nf0fjych4LcXRNJNAM14x3uwfcg=*/
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*//T2pnv+zhyRaUMoO08P5igQRllhICswVvEUQckq62929jgCkOxZVy5gf3byyCBq*/
|
||||
import { ajax, toast } from 'nc-lightapp-front';
|
||||
/**
|
||||
*
|
||||
|
|
@ -45,5 +44,3 @@ function cstateidMiltiBeforeEvent(index, pk_org, cmaterialvid, data) {
|
|||
|
||||
export { cstateidMiltiBeforeEvent};
|
||||
|
||||
|
||||
/*//T2pnv+zhyRaUMoO08P5igQRllhICswVvEUQckq62929jgCkOxZVy5gf3byyCBq*/
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*YHHaNIF/RZ2idEJC+q3i310N4gtBN6Zlk3MoSywdCXdOyC6KhSW93/7sAGmjV/Lf*/
|
||||
/**
|
||||
* 暂时只判断仓库是否是直运采购
|
||||
*/
|
||||
|
|
@ -53,5 +52,3 @@ export default function(props, constance) {
|
|||
}
|
||||
});
|
||||
}
|
||||
|
||||
/*YHHaNIF/RZ2idEJC+q3i310N4gtBN6Zlk3MoSywdCXdOyC6KhSW93/7sAGmjV/Lf*/
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*QJ0MxOiSS+uFpuqFtUGLlDPMtYCENMeBKSl07I0cVAN2ZZJRB15uhXb7cq4kbuyH*/
|
||||
/*
|
||||
* @Author: 李浩
|
||||
* @PageInfo: 生效日期编辑前
|
||||
|
|
@ -48,5 +47,3 @@ export default function (props, key, pk_org, cmaterialvid) {
|
|||
}
|
||||
});
|
||||
}
|
||||
|
||||
/*QJ0MxOiSS+uFpuqFtUGLlDPMtYCENMeBKSl07I0cVAN2ZZJRB15uhXb7cq4kbuyH*/
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*OTa4jH+s+Xy1bcd9ZPZMCesuRQlXYmpWPLzyZGi48nM=*/
|
||||
/**
|
||||
* 换算率编辑前处理,只适用于cardtable
|
||||
* 这类方法必须有返回值,返回true为可编辑,false为不可编辑
|
||||
|
|
@ -79,5 +78,3 @@ export default function(props, constance) {
|
|||
}
|
||||
});
|
||||
}
|
||||
|
||||
/*OTa4jH+s+Xy1bcd9ZPZMCesuRQlXYmpWPLzyZGi48nM=*/
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*w9yDONqr21hXJLv7cY6LkK3INZAemK/72SH9H+KkU2M=*/
|
||||
import { ajax } from 'nc-lightapp-front';
|
||||
/**
|
||||
*
|
||||
|
|
@ -46,5 +45,4 @@ function hslMultiBeforeEvent(index, pk_org, cmaterialvid,cuntid,castunid,ccorres
|
|||
}
|
||||
}
|
||||
|
||||
export { hslMultiBeforeEvent};
|
||||
/*w9yDONqr21hXJLv7cY6LkK3INZAemK/72SH9H+KkU2M=*/
|
||||
export { hslMultiBeforeEvent};
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*8CdHYS+a9Q2smogIeoYriEP5x7vzqBeEXoSMjia1I4E=*/
|
||||
import cstateidBeforeEvent from './cstateidBeforeEvent';
|
||||
import vbatchcodeBeforeEvent from './vbatchcodeBeforeEvent';
|
||||
import vfreeBeforeEvent from './vfreeBeforeEvent';
|
||||
|
|
@ -19,5 +18,3 @@ export {
|
|||
locationBeforeEvent,
|
||||
serialcodeBodyBeforeEvent
|
||||
};
|
||||
|
||||
/*8CdHYS+a9Q2smogIeoYriEP5x7vzqBeEXoSMjia1I4E=*/
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*3irMiIv9m7p/8mmQh7YExcMuBfJy4YFkiPMUyfpD5s4=*/
|
||||
/**
|
||||
* 库存状态编辑前处理,需要物料的固定辅助属性库存状态启用
|
||||
* 这类方法必须有返回值,返回true为可编辑,false为不可编辑
|
||||
|
|
@ -37,5 +36,3 @@ export default function(props, params, key) {
|
|||
});
|
||||
});
|
||||
}
|
||||
|
||||
/*3irMiIv9m7p/8mmQh7YExcMuBfJy4YFkiPMUyfpD5s4=*/
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*O91RlCur1cKC1PywqjsYAHAsfFxZCu3HHbpFC+rSUVnaxqxXwH1b8KUcywPTTfLD*/
|
||||
/*
|
||||
* @Author: 李浩
|
||||
* @PageInfo: 序列号编辑控制
|
||||
|
|
@ -73,5 +72,3 @@ export default async function (props, moduleId, index, record, headarea) {
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*O91RlCur1cKC1PywqjsYAHAsfFxZCu3HHbpFC+rSUVnaxqxXwH1b8KUcywPTTfLD*/
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*2QSFMHzFNRTkiDh+kC5tFxkSofKBH3TJ+SCyzBYNNgRCJ4wvGDJbiMnNxSvrrBSG*/
|
||||
import { ajax, toast } from 'nc-lightapp-front';
|
||||
/**
|
||||
*
|
||||
|
|
@ -68,5 +67,3 @@ export default function (props, constance, record) {
|
|||
});
|
||||
});
|
||||
}
|
||||
|
||||
/*2QSFMHzFNRTkiDh+kC5tFxkSofKBH3TJ+SCyzBYNNgRCJ4wvGDJbiMnNxSvrrBSG*/
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*rV0bQibesG0UGdyoLFMSM3+sPuNKyFsqfWAJfuqNZ4k=*/
|
||||
/**
|
||||
* 库存状态编辑前处理,需要物料的固定辅助属性库存状态启用
|
||||
* 这类方法必须有返回值,返回true为可编辑,false为不可编辑
|
||||
|
|
@ -47,5 +46,3 @@ export default function (props, constance) {
|
|||
}
|
||||
});
|
||||
}
|
||||
|
||||
/*rV0bQibesG0UGdyoLFMSM3+sPuNKyFsqfWAJfuqNZ4k=*/
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*VN6N61ClU/zPuqLSyAXrv8u+w2MHKRRnUQpWLWei33I=*/
|
||||
/**
|
||||
* 物料自由辅助属性编辑前处理,需要物料的固定辅助属性库存状态启用
|
||||
* 这类方法必须有返回值,返回true为可编辑,false为不可编辑
|
||||
|
|
@ -57,5 +56,3 @@ export default function(props, constance) {
|
|||
}
|
||||
});
|
||||
}
|
||||
|
||||
/*VN6N61ClU/zPuqLSyAXrv8u+w2MHKRRnUQpWLWei33I=*/
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*QwCcdu/06Kz5BGRJW8BXmLtsb+2grawkWZtrnedNMfA=*/
|
||||
import { ajax } from 'nc-lightapp-front';
|
||||
export default function addBtnClick(props, constance) {
|
||||
props.pushTo('/card', {
|
||||
|
|
@ -9,5 +8,3 @@ export default function addBtnClick(props, constance) {
|
|||
// status: 'edit'
|
||||
// });
|
||||
}
|
||||
|
||||
/*QwCcdu/06Kz5BGRJW8BXmLtsb+2grawkWZtrnedNMfA=*/
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*7SDMIgexLY9TFEYuO69iBrPYs0O9JerGMRgAZ2k3sUo=*/
|
||||
/*
|
||||
* @Author: maopch
|
||||
* @PageInfo: 列表页面审批详情点击事件
|
||||
|
|
@ -22,5 +21,3 @@ export default function(record, hidcode, vbilltypecode, billtypeCode = 'vtrantyp
|
|||
let hid = record[hidcode].value;
|
||||
this.setState({ billtype, showApprove: true, hid });
|
||||
}
|
||||
|
||||
/*7SDMIgexLY9TFEYuO69iBrPYs0O9JerGMRgAZ2k3sUo=*/
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*a6tRBI3RAFEYxGMChuDg5RgpfzMrDD5bJzXQDDXFFYM=*/
|
||||
import { print } from 'nc-lightapp-front';
|
||||
import codeNfig from 'uap/common/components/codeConfigModal';
|
||||
import { showErrorInfo } from '../../../../scmpub/scmpub/pub/tool/messageUtil';
|
||||
|
|
@ -48,5 +47,3 @@ export default function(props, params) {
|
|||
false
|
||||
);
|
||||
}
|
||||
|
||||
/*a6tRBI3RAFEYxGMChuDg5RgpfzMrDD5bJzXQDDXFFYM=*/
|
||||
|
|
@ -0,0 +1,124 @@
|
|||
import { ajax } from 'nc-lightapp-front';
|
||||
import { showErrorInfo, showSuccessInfo } from '../../../../scmpub/scmpub/pub/tool/messageUtil';
|
||||
import { getLangByResId } from '../../../../scmpub/scmpub/pub/tool/multiLangUtil';
|
||||
import { processBillBeforeAfterEvent } from '../utils';
|
||||
/*
|
||||
* @Author: fangmj7
|
||||
* @PageInfo: 取借出信息按钮点击事件
|
||||
* @Date: 2018-05-10 15:29:46
|
||||
* @Last Modified by: yangtaow
|
||||
* @Last Modified time: 2023-05-27 16:51:24
|
||||
*/
|
||||
|
||||
export default function(props, constance, record) {
|
||||
const { FIELD, PAGECODE, URL, ATTRCODE, SUBCHILD, appcode, pagecodecard, pagecodechi, AREA } = constance;
|
||||
let seletedrows = props.cardTable.getCheckedRows(AREA.bodyTable);
|
||||
let indexs = [];
|
||||
let visibleRows = props.cardTable.getAllRows(AREA.bodyTable);
|
||||
let index = 0;
|
||||
if (record) {
|
||||
for (let j = 0; j < visibleRows.length; j++) {
|
||||
if (visibleRows[j].rowid == record.rowid) {
|
||||
indexs.push(index);
|
||||
}
|
||||
index++;
|
||||
}
|
||||
} else {
|
||||
for (let k = 0; k < seletedrows.length; k++) {
|
||||
indexs.push(seletedrows[k].index);
|
||||
}
|
||||
}
|
||||
|
||||
let pk_org = props.form.getFormItemsValue(AREA.formArea, 'pk_org');
|
||||
if (!pk_org && !pk_org.value) {
|
||||
showErrorInfo(null, getLangByResId(this, '4008PUB-000018')); /* 国际化处理: 库粗组织为空*/
|
||||
|
||||
return;
|
||||
}
|
||||
let cwarehouseid = props.form.getFormItemsValue(AREA.formArea, FIELD.cwarehouseid);
|
||||
if (!cwarehouseid || !cwarehouseid.value || cwarehouseid.value == '') {
|
||||
showErrorInfo(null, getLangByResId(this, '4008PUB-000019')); /* 国际化处理: 仓库为空*/
|
||||
|
||||
return false;
|
||||
}
|
||||
//传给后台的行数据数组
|
||||
let rows = [];
|
||||
if (record) {
|
||||
let data = {
|
||||
record
|
||||
};
|
||||
if (!record.values.cmaterialvid.value) {
|
||||
showErrorInfo(null, getLangByResId(this, '4008PUB-000020')); /* 国际化处理: 表体物料行为空*/
|
||||
return false;
|
||||
}
|
||||
rows.push(record);
|
||||
} else {
|
||||
//获取选中的行,不包括删除行
|
||||
let selectedrows = props.cardTable.getCheckedRows(AREA.bodyTable);
|
||||
if (!selectedrows && selectedrows.length == 0) {
|
||||
showErrorInfo(null, getLangByResId(this, '4008PUB-000020')); /* 国际化处理: 表体物料行为空*/
|
||||
return false;
|
||||
}
|
||||
selectedrows.map((item) => {
|
||||
if (item.data.values.cmaterialvid.value) {
|
||||
rows.push(item);
|
||||
}
|
||||
});
|
||||
}
|
||||
//先触发应收/发主数量的编辑后
|
||||
let data = props.createBodyAfterEventData('400800836_card', 'head', 'body', 'body', 'nnum', [
|
||||
{ oldvalue: { value: '' }, newvalue: { value: 1 } }
|
||||
]);
|
||||
data.index = -1;
|
||||
let lastrows = [];
|
||||
if (record) {
|
||||
lastrows.push(rows[0]);
|
||||
} else {
|
||||
for (let i = 0; i < rows.length; i++) {
|
||||
lastrows.push(rows[i].data);
|
||||
}
|
||||
}
|
||||
|
||||
data.card.body['body'].rows = lastrows;
|
||||
|
||||
processBillBeforeAfterEvent(data, 'head', 'body');
|
||||
let updateArray = [];
|
||||
if (!data || data.card.body['body'].rows.length < 1) {
|
||||
showErrorInfo('', getLangByResId(this, '4008RETURNIN-000022')); /* 国际化处理: 请先选择数据*/
|
||||
return;
|
||||
}
|
||||
ajax({
|
||||
url: URL.getBorrowoutInformationURL,
|
||||
mode: 'normal',
|
||||
data: data,
|
||||
success: (res) => {
|
||||
if (res.data && res.data.error && res.data.error.message) {
|
||||
if (res.data.error.message == '04008011-0043') {
|
||||
showErrorInfo('', getLangByResId(this, '4008RETURNIN-000021')); /* 国际化处理: 表头仓库与表体货位不一致*/
|
||||
} else {
|
||||
showErrorInfo(res.data.error.message);
|
||||
}
|
||||
} else if (res.data.data) {
|
||||
let rows = res.data.data.billCard.body['body'].rows;
|
||||
for (let i = 0; i < rows.length; i++) {
|
||||
let obj = { index: indexs[i], data: rows[i] };
|
||||
// if (obj.data.values.clocationid.value) {
|
||||
//let nnum = obj.data.values.nnum.value;
|
||||
//for (let j = 0; j < nnum; j++) {
|
||||
// let lo = locationUtil.clocationidAfterEvent(rows[i]);
|
||||
// props.cardTable.updateDataByIndexs('body', [ { index: index, data: lo } ]);
|
||||
//}
|
||||
// }
|
||||
|
||||
updateArray.push(obj);
|
||||
}
|
||||
//更新数据
|
||||
props.cardTable.updateDataByIndexs('body', updateArray);
|
||||
|
||||
showSuccessInfo(getLangByResId(this, '4008RETURNIN-000023')); /* 国际化处理: 处理成功!*/
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
this.setState(this.state);
|
||||
}
|
||||
|
|
@ -0,0 +1,12 @@
|
|||
import { ajax } from 'nc-lightapp-front';
|
||||
export default function cardAddBtnClick(props, constance) {
|
||||
const { cardURL, AREA } = constance;
|
||||
props.pushTo('/card', {
|
||||
status: 'edit',
|
||||
id: ''
|
||||
});
|
||||
|
||||
props.form.EmptyAllFormValue(AREA.formArea);
|
||||
props.cardTable.setTableData(AREA.bodyTable, []);
|
||||
this.toggleShow();
|
||||
}
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*cz2SA5FACCMgP10cWLuQJYluQi812iqkLx8sPBuGVz5YJyYPRihS7VdqhH5zrnL+*/
|
||||
/*
|
||||
* @Author: yinliang
|
||||
* @PageInfo: 出库入库合并显示
|
||||
|
|
@ -185,5 +184,3 @@ function getNumColumnAll(props, right, constance) {
|
|||
});
|
||||
return numColumnAll;
|
||||
}
|
||||
|
||||
/*cz2SA5FACCMgP10cWLuQJYluQi812iqkLx8sPBuGVz5YJyYPRihS7VdqhH5zrnL+*/
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
{
|
||||
"dependModuleName": [ "uap/common/components/codeConfigModal" ],
|
||||
"dependjs": [ "../../../../uap/common/components/codeConfigModal/index.js" ]
|
||||
}
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*j5Rddi+EiXr6lL+2HQtAzXKAs5uNyAYqlXB5AoVEuY0=*/
|
||||
/*
|
||||
* @Author: hujieh
|
||||
* @PageInfo: 复制
|
||||
|
|
@ -25,5 +24,3 @@ export default function copyBtnClick(props, copyURL, PAGECARDCODE, id, constance
|
|||
}
|
||||
});
|
||||
}
|
||||
|
||||
/*j5Rddi+EiXr6lL+2HQtAzXKAs5uNyAYqlXB5AoVEuY0=*/
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*cxqDO8Y5zn4jjifkgQKk7lUgqBs5bprWAMQTAgABgc0=*/
|
||||
/*
|
||||
* @Author: 李浩
|
||||
* @PageInfo:按钮处理方法
|
||||
|
|
@ -165,5 +164,3 @@ function besureBtn(props, constance, text, dex, skipCodes) {
|
|||
}
|
||||
});
|
||||
}
|
||||
|
||||
/*cxqDO8Y5zn4jjifkgQKk7lUgqBs5bprWAMQTAgABgc0=*/
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*rzxqFeC1Q4Nf7h12KpqtZa+HKlhJRSPfpVA5T06lSbc=*/
|
||||
import { ajax, cacheTools } from 'nc-lightapp-front';
|
||||
export default function editBtnClick(props, constance, record) {
|
||||
const { cardURL, tabCodeKey, URL } = constance;
|
||||
|
|
@ -28,5 +27,3 @@ export default function editBtnClick(props, constance, record) {
|
|||
});
|
||||
}
|
||||
}
|
||||
|
||||
/*rzxqFeC1Q4Nf7h12KpqtZa+HKlhJRSPfpVA5T06lSbc=*/
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*HZP0dfblajL4ikDSlpQ1bzHq+LuD35APDsWA9oXzeBs=*/
|
||||
import { formDownload } from 'nc-lightapp-front';
|
||||
export default function() {
|
||||
formDownload({
|
||||
|
|
@ -7,5 +6,3 @@ export default function() {
|
|||
enctype: 1
|
||||
});
|
||||
}
|
||||
|
||||
/*HZP0dfblajL4ikDSlpQ1bzHq+LuD35APDsWA9oXzeBs=*/
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*QcLSJcLBIfi1P6u/kyYYQlMbyShXTMTSbG4AgjJskfQG8PkDjzL3pYaMFvIx6t5R*/
|
||||
/*
|
||||
* @Author: yangtaow
|
||||
* @PageInfo: 附件批量下载
|
||||
|
|
@ -43,5 +42,3 @@ export default function(props, tableArea, billType, hIdType) {
|
|||
};
|
||||
batchDownloadAttachments(params, additionParams);
|
||||
}
|
||||
|
||||
/*QcLSJcLBIfi1P6u/kyYYQlMbyShXTMTSbG4AgjJskfQG8PkDjzL3pYaMFvIx6t5R*/
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*UC3KFNsdJ4jV41rtqOOrw6DBCG3S9aDmZSukqcE475Q=*/
|
||||
/*
|
||||
* @Author: raoczh
|
||||
* @PageInfo: 附件管理
|
||||
|
|
@ -30,5 +29,3 @@ export default function(props, constance) {
|
|||
pk: pk
|
||||
});
|
||||
}
|
||||
|
||||
/*UC3KFNsdJ4jV41rtqOOrw6DBCG3S9aDmZSukqcE475Q=*/
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*M/R6A8jbfu8m8vUGf6G+3/FQfgooAUYvk94Ce4nY0aU=*/
|
||||
/*
|
||||
* @Author: 李浩
|
||||
* @PageInfo: 导入按钮
|
||||
|
|
@ -10,5 +9,3 @@
|
|||
export default function importBtnClick(props, constance, billtype) {
|
||||
props.modal.show('exportFileModal');
|
||||
}
|
||||
|
||||
/*M/R6A8jbfu8m8vUGf6G+3/FQfgooAUYvk94Ce4nY0aU=*/
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*YInZLc9/kvMC1mGq3o4LwAszAXwVlsNyvp/9X8WPLW8=*/
|
||||
import searchBtnClick from './searchBtnClick';
|
||||
import refreshBtnClick from './refreshBtnClick';
|
||||
import addBtnClick from './addBtnClick';
|
||||
|
|
@ -45,5 +44,3 @@ export {
|
|||
barCodePrintBtnClick,
|
||||
printbarCodeBtnClick
|
||||
};
|
||||
|
||||
/*YInZLc9/kvMC1mGq3o4LwAszAXwVlsNyvp/9X8WPLW8=*/
|
||||
|
|
@ -0,0 +1,13 @@
|
|||
/*
|
||||
* @Author: yinliang
|
||||
* @PageInfo: 库存调整单,卡片页面,表体增行按钮
|
||||
* @Date: 2018-04-02 16:11:22
|
||||
* @Last Modified by: yinliang
|
||||
* @Last Modified time: 2018-12-14 10:07:28
|
||||
*/
|
||||
import { RownoUtils } from '../../../../../scmpub/scmpub/pub/tool/cardTableTools';
|
||||
export default function(props, constance) {
|
||||
let { AREA, FIELD } = constance;
|
||||
props.cardTable.addRow(AREA.body);
|
||||
RownoUtils.setRowNo(props, AREA.body, FIELD.crowno);
|
||||
}
|
||||
|
|
@ -0,0 +1,22 @@
|
|||
/*
|
||||
* @Author: yinliang
|
||||
* @PageInfo: 库存调整,卡片页面,审批详情按钮
|
||||
* @Date: 2018-07-20 13:58:42
|
||||
* @Last Modified by: yinliang
|
||||
* @Last Modified time: 2019-04-13 16:38:09
|
||||
*/
|
||||
export default function(props, constance) {
|
||||
let { AREA, FIELD } = constance;
|
||||
let pk = '';
|
||||
if (FIELD.cspecialhid) {
|
||||
pk = props.form.getFormItemsValue(AREA.head, FIELD.cspecialhid).value;
|
||||
} else if (FIELD.cgeneralhid) {
|
||||
pk = props.form.getFormItemsValue(AREA.head, FIELD.cgeneralhid).value;
|
||||
}
|
||||
let vtrantypecode = props.form.getFormItemsValue(AREA.head, FIELD.vtrantypecode).value;
|
||||
this.setState({
|
||||
show: true,
|
||||
billId: pk,
|
||||
vtrantypecode: vtrantypecode
|
||||
});
|
||||
}
|
||||
|
|
@ -0,0 +1,13 @@
|
|||
/*
|
||||
* @Author: yinliang
|
||||
* @PageInfo: 库存调整,返回按钮
|
||||
* @Date: 2018-04-02 16:08:20
|
||||
* @Last Modified by: yinliang
|
||||
* @Last Modified time: 2018-12-14 10:08:27
|
||||
*/
|
||||
export default function(props, constance) {
|
||||
let { URL, AREA, UISTATE } = constance;
|
||||
props.cardTable.setStatus(AREA.body, UISTATE.browse);
|
||||
props.form.setFormStatus(AREA.head, UISTATE.browse);
|
||||
props.pushTo(URL.gotoList);
|
||||
}
|
||||
|
|
@ -0,0 +1,35 @@
|
|||
/*
|
||||
* @Author: yinliang
|
||||
* @PageInfo: 库存调整,卡片页面,按钮工具类
|
||||
* @Date: 2018-12-21 16:22:41
|
||||
* @Last Modified by: yinliang
|
||||
* @Last Modified time: 2018-12-21 16:43:00
|
||||
*/
|
||||
|
||||
/**
|
||||
* 控制修改按钮是为主次按钮逻辑
|
||||
* @param {*} props
|
||||
* @param {*} billflag
|
||||
* @param {*} constance
|
||||
*/
|
||||
export function setEditBtnStatus(props, billflag, constance) {
|
||||
let { BUTTONID } = constance;
|
||||
/**
|
||||
* 设置按钮为主要按钮或次要按钮(T 主要/ F 次要)
|
||||
* 当单据状态为审批不通过时,修改按钮为主要按钮
|
||||
* 当单据状态不是审批不通过时,不是主要按钮
|
||||
* 审批类型单据的候选项:
|
||||
* ******************************************
|
||||
* dispaly-----value
|
||||
* 自由-----1
|
||||
* 审批中-----2
|
||||
* 审批未通过-----3
|
||||
* 审批通过-----4
|
||||
* 删除-----5
|
||||
*/
|
||||
if (billflag == '3') {
|
||||
props.button.setMainButton(BUTTONID.Edit, true);
|
||||
} else {
|
||||
props.button.setMainButton(BUTTONID.Edit, false);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,23 @@
|
|||
/*
|
||||
* @Author: yinliang
|
||||
* @PageInfo: 库存调整,复制行取消按钮
|
||||
* @Date: 2018-04-02 16:11:22
|
||||
* @Last Modified by: yinliang
|
||||
* @Last Modified time: 2018-12-21 10:19:41
|
||||
*/
|
||||
import { rowCopyPasteUtils } from '../../../../../scmpub/scmpub/pub/tool/cardTableTools/rowCopyPasteUtils';
|
||||
import { RownoUtils } from '../../../../../scmpub/scmpub/pub/tool/cardTableTools';
|
||||
import setButtonUsability from './setButtonUsability';
|
||||
export default function(props, constance) {
|
||||
let { COPYPASTEBTNS, DISABLEBTNS, AREA, FIELD, BUTTONID } = constance;
|
||||
rowCopyPasteUtils.cancel.call(
|
||||
this,
|
||||
props,
|
||||
AREA.body,
|
||||
COPYPASTEBTNS.initBtns,
|
||||
COPYPASTEBTNS.pasteBtns,
|
||||
FIELD.crowno
|
||||
);
|
||||
RownoUtils.setRowNo(props, AREA.body, FIELD.crowno);
|
||||
setButtonUsability.call(this, this.props, { DISABLEBTNS, AREA, FIELD, BUTTONID });
|
||||
}
|
||||
|
|
@ -0,0 +1,48 @@
|
|||
/*
|
||||
* @Author: yinliang
|
||||
* @PageInfo: 库存管理-库存调整,单据复制按钮
|
||||
* @Date: 2019-01-15 15:35:46
|
||||
* @Last Modified by: yinliang
|
||||
* @Last Modified time: 2019-01-18 15:14:27
|
||||
*/
|
||||
import { ajax } from 'nc-lightapp-front';
|
||||
export default function(props, id, constance, callback) {
|
||||
let { AREA, FIELD, UISTATE, URL, PAGECODE, buttonController } = constance;
|
||||
let data = { pageid: PAGECODE.card, pk: id };
|
||||
ajax({
|
||||
url: URL.copy,
|
||||
data: data,
|
||||
method: 'post',
|
||||
success: (res) => {
|
||||
// 效率优化添加,避免多次刷新state,导致刷多次页面,开关-开
|
||||
this.props.beforeUpdatePage();
|
||||
/**
|
||||
* 设值
|
||||
*/
|
||||
props.form.setAllFormValue({ [AREA.head]: res.data.billcard.head[AREA.head] });
|
||||
props.cardTable.setTableData(AREA.body, res.data.billcard.body[AREA.body]);
|
||||
props.resMetaAfterPkorgEdit();
|
||||
this.billcode = '';
|
||||
this.status = UISTATE.add;
|
||||
//更新路径中的状态和id
|
||||
props.pushTo(URL.gotoCard, {
|
||||
status: UISTATE.edit,
|
||||
id: props.getUrlParam(FIELD.cardId),
|
||||
copy: 'true'
|
||||
});
|
||||
// 设值主组织为不可编辑
|
||||
props.form.setFormItemsDisabled(AREA.head, { pk_org_v: true });
|
||||
|
||||
// 执行回调函数,例如盘点需要设值一些列不可编辑
|
||||
if (typeof callback == 'function') {
|
||||
callback.call(this, props);
|
||||
}
|
||||
|
||||
// 按钮控制
|
||||
buttonController.setButtonStatus.call(this, props, this.status);
|
||||
buttonController.setRowButtonStatus.call(this, props);
|
||||
// 效率优化添加,避免多次刷新state,导致刷多次页面,开关-关
|
||||
this.props.updatePage(AREA.head, AREA.body);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
|
@ -0,0 +1,18 @@
|
|||
/*
|
||||
* @Author: yinliang
|
||||
* @PageInfo: 库存调整,复制行按钮
|
||||
* @Date: 2018-05-31 20:54:04
|
||||
* @Last Modified by: yinliang
|
||||
* @Last Modified time: 2018-12-14 10:07:02
|
||||
*/
|
||||
import { rowCopyPasteUtils } from '../../../../../scmpub/scmpub/pub/tool/cardTableTools/rowCopyPasteUtils';
|
||||
export default function(props, record, index, constance) {
|
||||
let { AREA, COPYPASTEBTNS } = constance;
|
||||
if (index >= 0 && record) {
|
||||
//行操作
|
||||
rowCopyPasteUtils.copyRow.call(this, props, AREA.body, record, COPYPASTEBTNS.initBtns, COPYPASTEBTNS.pasteBtns);
|
||||
} else {
|
||||
//批操作
|
||||
rowCopyPasteUtils.copyRows.call(this, props, AREA.body, COPYPASTEBTNS.initBtns, COPYPASTEBTNS.pasteBtns);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,21 @@
|
|||
/*
|
||||
* @Author: yinliang
|
||||
* @PageInfo: 库存调整,表体删行按钮
|
||||
* @Date: 2018-04-02 16:11:22
|
||||
* @Last Modified by: yinliang
|
||||
* @Last Modified time: 2018-12-21 10:01:07
|
||||
*/
|
||||
import setButtonUsability from './setButtonUsability';
|
||||
export default function(props, record, index, constance) {
|
||||
let { DISABLEBTNS, AREA, FIELD, BUTTONID } = constance;
|
||||
let rows = props.cardTable.getCheckedRows(AREA.body);
|
||||
let rowIds = [];
|
||||
rows.map((item, index) => {
|
||||
rowIds.push(item.index);
|
||||
});
|
||||
if (record) {
|
||||
rowIds = index;
|
||||
}
|
||||
props.cardTable.delRowsByIndex(AREA.body, rowIds);
|
||||
setButtonUsability.call(this, this.props, { DISABLEBTNS, AREA, FIELD, BUTTONID });
|
||||
}
|
||||
|
|
@ -0,0 +1,26 @@
|
|||
/*
|
||||
* @Author: yinliang
|
||||
* @PageInfo: 库存调整,附件管理
|
||||
* @Date: 2018-06-25 10:17:12
|
||||
* @Last Modified by: yinliang
|
||||
* @Last Modified time: 2019-02-13 16:49:06
|
||||
*/
|
||||
export default function(props, constance) {
|
||||
let { AREA, FIELD } = constance;
|
||||
let pk = '';
|
||||
/**
|
||||
* 废品处理,表头主键为cgeneralhid
|
||||
* 盘点、转库、组装、拆卸、形态转换,表头主键为cspecialhid
|
||||
*/
|
||||
if (FIELD.cspecialhid) {
|
||||
pk = props.form.getFormItemsValue(AREA.head, FIELD.cspecialhid).value;
|
||||
} else if (FIELD.cgeneralhid) {
|
||||
pk = props.form.getFormItemsValue(AREA.head, FIELD.cgeneralhid).value;
|
||||
}
|
||||
let fileFlag = this.state.showUploader;
|
||||
this.setState({
|
||||
showUploader: !fileFlag,
|
||||
pk: pk
|
||||
// target: event.target
|
||||
});
|
||||
}
|
||||
|
|
@ -0,0 +1,46 @@
|
|||
import addRowBtnClick from './addRowBtnClick';
|
||||
import approveInfo from './approveInfo';
|
||||
import backBtnClick from './backBtnClick';
|
||||
import cancelPasteBtnClick from './cancelPasteBtnClick';
|
||||
import copyRowsBtnClick from './copyRowsBtnClick';
|
||||
import delRowBtnClick from './delRowBtnClick';
|
||||
import fileClick from './fileClick';
|
||||
import insertRowBtnClick from './insertRowBtnClick';
|
||||
import linkQuery from './linkQuery';
|
||||
import outPut from './outPut';
|
||||
import printBtnClick from './printBtnClick';
|
||||
import pasteLineBtnClick from './pasteLineBtnClick';
|
||||
import rowChangeEditBtnClick from './rowChangeEditBtnClick';
|
||||
import rowChangeViewBtnClick from './rowChangeViewBtnClick';
|
||||
import sortLineNum from './sortLineNum';
|
||||
import setButtonUsability from './setButtonUsability';
|
||||
import saveBtnClick from './saveBtnClick';
|
||||
import saveAndCommitBtnClick from './saveAndCommitBtnClick';
|
||||
import copyBtnClick from './copyBtnClick';
|
||||
import onhandBtnClick from './onhandBtnClick';
|
||||
import { setBackButtonVisiblePub, setUIStatePub } from './pubButtonController';
|
||||
|
||||
export {
|
||||
addRowBtnClick,
|
||||
approveInfo,
|
||||
backBtnClick,
|
||||
cancelPasteBtnClick,
|
||||
copyRowsBtnClick,
|
||||
delRowBtnClick,
|
||||
fileClick,
|
||||
insertRowBtnClick,
|
||||
linkQuery,
|
||||
outPut,
|
||||
printBtnClick,
|
||||
pasteLineBtnClick,
|
||||
rowChangeEditBtnClick,
|
||||
rowChangeViewBtnClick,
|
||||
sortLineNum,
|
||||
setButtonUsability,
|
||||
saveBtnClick,
|
||||
saveAndCommitBtnClick,
|
||||
setBackButtonVisiblePub,
|
||||
setUIStatePub,
|
||||
copyBtnClick,
|
||||
onhandBtnClick
|
||||
};
|
||||
|
|
@ -0,0 +1,62 @@
|
|||
/*
|
||||
* @Author: yinliang
|
||||
* @PageInfo: 库存调整单,插入行按钮
|
||||
* @Date: 2018-05-31 21:31:46
|
||||
* @Last Modified by: yinliang
|
||||
* @Last Modified time: 2018-12-18 09:16:11
|
||||
*/
|
||||
import { getLangByResId } from '../../../../../scmpub/scmpub/pub/tool/multiLangUtil';
|
||||
import { RownoUtils } from '../../../../../scmpub/scmpub/pub/tool/cardTableTools';
|
||||
export default function(props, index, constance) {
|
||||
let { AREA, FIELD } = constance;
|
||||
/**
|
||||
* 废品处理,表头主键为cgeneralhid
|
||||
* 盘点、转库、组装、拆卸、形态转换,表头主键为cspecialhid
|
||||
*/
|
||||
let headPk = '';
|
||||
if (FIELD.cspecialhid) {
|
||||
// 调整单中,表头主键为cspecialhid分支
|
||||
headPk = props.form.getFormItemsValue(AREA.head, FIELD.cspecialhid);
|
||||
// if (param.from != 'assembly' && param.from != 'teardown') {
|
||||
// 组装 - 4L,拆卸 - 4M
|
||||
if (FIELD.billtype != '4L' && FIELD.billtype != '4M') {
|
||||
props.cardTable.addRow(AREA.body, index, { cspecialhid: headPk });
|
||||
// } else if (param.from == 'assembly' || param.from == 'teardown') {
|
||||
} else if (FIELD.billtype == '4L' || FIELD.billtype == '4M') {
|
||||
/**
|
||||
* 组装、拆卸,对新增的表体行为套件、配件信息,有特殊处理,这里需要特殊处理一下
|
||||
*/
|
||||
let rowsNum = props.cardTable.getAllRows(AREA.body);
|
||||
|
||||
let typeDisplay = '';
|
||||
let typeValue = '';
|
||||
if (rowsNum.length) {
|
||||
/**
|
||||
* 这里需要处理一下多语的问题,组装、拆卸是不同的多语
|
||||
*/
|
||||
if (FIELD.billtype == '4L') {
|
||||
typeDisplay = getLangByResId(this, '4008ASSEMBLY-000007'); /* 国际化处理: 配件*/
|
||||
} else if (FIELD.billtype == '4M') {
|
||||
typeDisplay = getLangByResId(this, '4008TEARDOWN-000007'); /* 国际化处理: 配件*/
|
||||
}
|
||||
typeValue = '1';
|
||||
}
|
||||
|
||||
props.cardTable.addRow(AREA.body, index, {
|
||||
cspecialhid: headPk,
|
||||
type: {
|
||||
display: typeDisplay,
|
||||
value: typeValue
|
||||
}
|
||||
});
|
||||
}
|
||||
} else if (FIELD.cgeneralhid) {
|
||||
// 调整单中,表头主键为cgeneralhid分支
|
||||
headPk = props.form.getFormItemsValue(AREA.head, FIELD.cgeneralhid);
|
||||
if (FIELD.billtype != '4L' && FIELD.billtype != '4M') {
|
||||
props.cardTable.addRow(AREA.body, index, { cgeneralhid: headPk });
|
||||
}
|
||||
}
|
||||
|
||||
RownoUtils.setRowNo(this.props, AREA.body, FIELD.crowno);
|
||||
}
|
||||
|
|
@ -0,0 +1,27 @@
|
|||
/*
|
||||
* @Author: yinliang
|
||||
* @PageInfo: 库存调整,单据追溯
|
||||
* @Date: 2018-06-25 10:17:12
|
||||
* @Last Modified by: yinliang
|
||||
* @Last Modified time: 2018-12-14 10:54:19
|
||||
*/
|
||||
export default function(props, constance) {
|
||||
let { AREA, FIELD } = constance;
|
||||
let pk = '';
|
||||
if (FIELD.cspecialhid) {
|
||||
/**
|
||||
* 盘点、转库、形态转换、组装、拆卸,表头主键为cspecialhid
|
||||
*/
|
||||
pk = props.form.getFormItemsValue(AREA.head, FIELD.cspecialhid).value;
|
||||
} else if (FIELD.cgeneralhid) {
|
||||
/**
|
||||
* 废品处理,表头主键为cgeneralhid
|
||||
*/
|
||||
pk = props.form.getFormItemsValue(AREA.head, FIELD.cgeneralhid).value;
|
||||
}
|
||||
|
||||
this.setState({
|
||||
pk: pk,
|
||||
showTrack: true
|
||||
});
|
||||
}
|
||||
|
|
@ -0,0 +1,42 @@
|
|||
/*
|
||||
* @Author: zhengxinm
|
||||
* @PageInfo: 存量查拣点击按钮
|
||||
* @Date: 2019-01-21 10:22:28
|
||||
* @Last Modified by: fangmj7
|
||||
* @Last Modified time: 2021-07-29 10:15:34
|
||||
*/
|
||||
|
||||
import { processBeforeOnHand } from '../../../pub/utils';
|
||||
export default function onhandBtnClick(constance) {
|
||||
const { AREA, FIELD } = constance;
|
||||
let head = this.props.form.getAllFormValue(AREA.head);
|
||||
//勾选表体行之后展示勾选的表体行数据,不勾选的话,展示所有表体行物料的数据的涉及到的单据
|
||||
let body = this.props.cardTable.getCheckedRows(AREA.body);
|
||||
body = body.map((item) => item.data);
|
||||
if (body.length == 0) {
|
||||
body = this.props.cardTable.getVisibleRows(AREA.body);
|
||||
}
|
||||
//需要知道传入的是第几行的数据 后面存量查拣需要对表体赋值 map的key为rowid value为行序号
|
||||
let rowAndrowid = new Map();
|
||||
let indexToRowMap = new Map();
|
||||
let allrows = this.props.cardTable.getVisibleRows(AREA.body);
|
||||
for (let i = 0; i < allrows.length; i++) {
|
||||
rowAndrowid.set(allrows[i].rowid, i);
|
||||
}
|
||||
for (let j = 0; j < body.length; j++) {
|
||||
indexToRowMap.set(body[j].rowid, rowAndrowid.get(body[j].rowid));
|
||||
}
|
||||
let onHandRows = processBeforeOnHand.call(
|
||||
this,
|
||||
FIELD.billtype,
|
||||
head,
|
||||
{ rows: body },
|
||||
[ FIELD.pk_org, FIELD.cwarehouseid ],
|
||||
indexToRowMap
|
||||
);
|
||||
this.setState({
|
||||
headRows: onHandRows,
|
||||
indexToRowMap: indexToRowMap
|
||||
});
|
||||
this.toggleOnhandShow(); // 控制弹窗的显示隐藏
|
||||
}
|
||||
|
|
@ -0,0 +1,34 @@
|
|||
/*
|
||||
* @Author: yinliang
|
||||
* @PageInfo: 库存调整,输出
|
||||
* @Date: 2018-07-19 18:59:04
|
||||
* @Last Modified by: yinliang
|
||||
* @Last Modified time: 2018-12-14 11:09:46
|
||||
*/
|
||||
|
||||
import { output } from 'nc-lightapp-front';
|
||||
export default function(props, constance) {
|
||||
let { FIELD, URL, AREA } = constance;
|
||||
let pk = '';
|
||||
if (FIELD.cspecialhid) {
|
||||
/**
|
||||
* 盘点、转库、形态转换、组装、拆卸,表头主键为cspecialhid
|
||||
*/
|
||||
pk = props.form.getFormItemsValue(AREA.head, FIELD.cspecialhid).value;
|
||||
} else if (FIELD.cgeneralhid) {
|
||||
/**
|
||||
* 废品处理,表头主键为cgeneralhid
|
||||
*/
|
||||
pk = props.form.getFormItemsValue(AREA.head, FIELD.cgeneralhid).value;
|
||||
}
|
||||
let pks = [];
|
||||
pks.push(pk);
|
||||
output({
|
||||
url: URL.print,
|
||||
data: {
|
||||
oids: pks,
|
||||
nodekey: null, //模板节点标识,
|
||||
outputType: 'output'
|
||||
}
|
||||
});
|
||||
}
|
||||
|
|
@ -0,0 +1,55 @@
|
|||
/*
|
||||
* @Author: yinliang
|
||||
* @PageInfo: 库存调整,表体粘贴按钮
|
||||
* @Date: 2018-12-17 14:06:04
|
||||
* @Last Modified by: yinliang
|
||||
* @Last Modified time: 2019-07-16 15:50:15
|
||||
*/
|
||||
|
||||
import { rowCopyPasteUtils } from '../../../../../scmpub/scmpub/pub/tool/cardTableTools/rowCopyPasteUtils';
|
||||
import { RownoUtils } from '../../../../../scmpub/scmpub/pub/tool/cardTableTools';
|
||||
import setButtonUsability from './setButtonUsability';
|
||||
export default function(props, record, index = -1, constance) {
|
||||
let { DISABLEBTNS, COPYPASTEBTNS, FIELD, AREA, BUTTONID } = constance;
|
||||
let hid = '';
|
||||
if (FIELD.cspecialbid) {
|
||||
/**
|
||||
* 盘点、转库、形态转换、组装、拆卸,表体主键为cspecialbid
|
||||
*/
|
||||
hid = FIELD.cspecialbid;
|
||||
} else if (FIELD.cgeneralbid) {
|
||||
/**
|
||||
* 废品处理,表体主键为cgeneralbid
|
||||
*/
|
||||
hid = FIELD.cgeneralbid;
|
||||
}
|
||||
// 效率优化开启
|
||||
props.beforeUpdatePage();
|
||||
if (index >= 0 && record) {
|
||||
//行操作
|
||||
rowCopyPasteUtils.pasteRowsToIndex.call(
|
||||
this,
|
||||
props,
|
||||
AREA.body,
|
||||
index,
|
||||
COPYPASTEBTNS.initBtns,
|
||||
COPYPASTEBTNS.pasteBtns,
|
||||
[ FIELD.crowno, hid, FIELD.ts ]
|
||||
);
|
||||
} else {
|
||||
//批操作
|
||||
rowCopyPasteUtils.pasteRowsToTail.call(
|
||||
this,
|
||||
props,
|
||||
AREA.body,
|
||||
COPYPASTEBTNS.initBtns,
|
||||
COPYPASTEBTNS.pasteBtns,
|
||||
[ FIELD.crowno, hid, FIELD.ts ]
|
||||
);
|
||||
}
|
||||
// 行号处理
|
||||
RownoUtils.setRowNo(this.props, AREA.body, FIELD.crowno);
|
||||
setButtonUsability.call(this, this.props, { DISABLEBTNS, AREA, FIELD, BUTTONID });
|
||||
// 效率优化关闭
|
||||
props.updatePage(AREA.head, AREA.body);
|
||||
}
|
||||
|
|
@ -0,0 +1,87 @@
|
|||
/*
|
||||
* @Author: yinliang
|
||||
* @PageInfo: 库存调整,卡片,打印按钮
|
||||
* @Date: 2018-04-02 13:49:46
|
||||
* @Last Modified by: yangtaow
|
||||
* @Last Modified time: 2023-07-19 15:12:32
|
||||
*/
|
||||
import { print, ajax } from 'nc-lightapp-front';
|
||||
import { showErrorInfo } from '../../../../../scmpub/scmpub/pub/tool/messageUtil';
|
||||
import { getLangByResId } from '../../../../../scmpub/scmpub/pub/tool/multiLangUtil';
|
||||
import poc from 'uap/common/components/printOnClient';
|
||||
const { printPreview } = poc;
|
||||
export default function(props, constance) {
|
||||
let { FIELD, URL, AREA } = constance;
|
||||
let pk = '';
|
||||
// 废品处理不需要打印次数控制
|
||||
let printLimitFlag = false;
|
||||
if (FIELD.cspecialhid) {
|
||||
/**
|
||||
* 盘点、转库、形态转换、组装、拆卸,表头主键为cspecialhid
|
||||
*/
|
||||
pk = props.form.getFormItemsValue(AREA.head, FIELD.cspecialhid).value;
|
||||
} else if (FIELD.cgeneralhid) {
|
||||
/**
|
||||
* 废品处理,表头主键为cgeneralhid
|
||||
*/
|
||||
pk = props.form.getFormItemsValue(AREA.head, FIELD.cgeneralhid).value;
|
||||
printLimitFlag = true;
|
||||
}
|
||||
if (!pk) {
|
||||
showErrorInfo(null, getLangByResId(this, '4008PUB-000208')); /* 国际化处理: 请选择要打印的单据!*/
|
||||
return;
|
||||
}
|
||||
let pk_org = props.form.getFormItemsValue(AREA.head, FIELD.pk_org).value;
|
||||
let pks = [];
|
||||
pks.push(pk);
|
||||
let delinfos = [ { id: pk } ];
|
||||
// 用于校验的数组
|
||||
let data = { delinfos: delinfos };
|
||||
// 先发一个请求校验权限,然后再发请求去打印
|
||||
ajax({
|
||||
url: URL.printpermission,
|
||||
data: data,
|
||||
method: 'post',
|
||||
success: (res) => {
|
||||
if (res.success) {
|
||||
if (printLimitFlag) {
|
||||
print(
|
||||
'pdf', //支持两类: 'html'为模板打印, 'pdf'为pdf打印
|
||||
URL.print,
|
||||
{
|
||||
nodekey: null, //模板节点标识
|
||||
oids: pks // 功能节点的数据主键 oids含有多个元素(['1001A41000000000A9LR','1001A410000000009JDD'])时为批量打印,
|
||||
}
|
||||
);
|
||||
} else {
|
||||
let printParams = {
|
||||
appcode: props.getAppCode(),
|
||||
nodekey: null,
|
||||
oids: pks,
|
||||
printType: true,
|
||||
realData: true,
|
||||
pk_org: [ pk_org ],
|
||||
billtype: FIELD.billtype,
|
||||
controlPrintNum: true
|
||||
};
|
||||
// 审批场景再传这个参数(transactiontype-交易类型编码, billtype-单据类型,这两个参数每次只能传一个)
|
||||
if (FIELD.approve == props.getUrlParam(FIELD.scene)) {
|
||||
// 其他情况,需要根据单据类型找维护应用
|
||||
//printParams.appcode = null;
|
||||
printParams.istransbilltype = true;
|
||||
printParams.userjson = JSON.stringify({ istransbilltype: true });
|
||||
}
|
||||
/**
|
||||
* appcode 单据的应用编码(一般不用传,方法内部自己抓取,如果需要打印的模板和当前appcode不同,需要业务组自己传一下)
|
||||
* nodekey 模板节点标识
|
||||
* oids 单据主键
|
||||
* printType 传true表示根据打印次数设置走插件打印,传false直接走pdf打印
|
||||
* realData 传true表示打印真数据,传false表示打印假数据
|
||||
* controlPrintNum 加了这个参数前端才会走打印次数查询,默认不走次数查询
|
||||
*/
|
||||
printPreview(props, URL.print, printParams);
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
|
@ -0,0 +1,71 @@
|
|||
/*
|
||||
* @Author: yinliang
|
||||
* @PageInfo: 按钮控制公共方法
|
||||
* @Date: 2019-01-07 15:24:54
|
||||
* @Last Modified by: yinliang
|
||||
* @Last Modified time: 2019-01-07 15:47:35
|
||||
*/
|
||||
|
||||
/**
|
||||
* 设置卡片页面返回按钮显示隐藏逻辑
|
||||
* @param {*} props
|
||||
* @param {*} status 单据状态,浏览、新怎、修改
|
||||
* @param {*} constance 常量
|
||||
*/
|
||||
function setBackButtonVisiblePub(props, status, constance) {
|
||||
let { FIELD, UISTATE } = constance;
|
||||
let showBackBtn = false; // 显示返回按钮标志,true为显示
|
||||
let showBillCode = false; // 显示单据编号标志,true为显示
|
||||
let billCode = this.billcode; // 单据号
|
||||
let scene = props.getUrlParam(FIELD.scene); // 审批中心来源标志
|
||||
if (status == UISTATE.add) {
|
||||
/**
|
||||
* 新增时,隐藏返回按钮,清空单据号
|
||||
* 复制时,同新增处理
|
||||
*/
|
||||
showBackBtn = false;
|
||||
showBillCode = false;
|
||||
billCode = '';
|
||||
} else if (status == UISTATE.edit) {
|
||||
/**
|
||||
* 修改时,隐藏返回按钮,显示单据号
|
||||
*/
|
||||
showBackBtn = false;
|
||||
showBillCode = true;
|
||||
billCode = this.billcode;
|
||||
} else if (status == UISTATE.browse) {
|
||||
/**
|
||||
* 浏览态时,页面有数据,显示返回按钮,显示单据号
|
||||
* 浏览态时,页面无数据,显示返回按钮,清空单据号
|
||||
* 审批中心不展示返回按钮
|
||||
*/
|
||||
if (scene == FIELD.approve) {
|
||||
showBackBtn = false;
|
||||
} else {
|
||||
showBackBtn = true;
|
||||
}
|
||||
showBillCode = this.billcode ? true : false;
|
||||
billCode = this.billcode;
|
||||
}
|
||||
// 设置返回按钮
|
||||
props.BillHeadInfo.setBillHeadInfoVisible({
|
||||
showBackBtn: showBackBtn, //控制显示返回按钮: true为显示,false为隐藏 ---非必传
|
||||
showBillCode: showBillCode, //控制显示单据号:true为显示,false为隐藏 ---非必传
|
||||
billCode: billCode //修改单据号---非必传
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 设置页面状态-浏览态、编辑态
|
||||
* @param {*} props
|
||||
* @param {*} status
|
||||
*/
|
||||
function setUIStatePub(props, status, param, constance) {
|
||||
let { UISTATE } = constance;
|
||||
const { setFormStatus } = props.form;
|
||||
const { setStatus } = props.cardTable;
|
||||
// cardTable,状态add不能变成编辑态,只有edit才能使表格变成编辑态
|
||||
setStatus(param.tableArea, status != UISTATE.browse ? UISTATE.edit : UISTATE.browse);
|
||||
setFormStatus(param.formArea, status);
|
||||
}
|
||||
export { setBackButtonVisiblePub, setUIStatePub };
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
/*
|
||||
* @Author: yinliang
|
||||
* @PageInfo: 库存调整,卡片,编辑态,行操作:展开(更多)
|
||||
* @Date: 2018-05-25 15:30:36
|
||||
* @Last Modified by: yinliang
|
||||
* @Last Modified time: 2018-12-17 14:51:19
|
||||
*/
|
||||
export default function(props, record, index, constance) {
|
||||
let { AREA, UISTATE } = constance;
|
||||
props.cardTable.openModel(AREA.body, UISTATE.edit, record, index);
|
||||
}
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
/*
|
||||
* @Author: yinliang
|
||||
* @PageInfo: 库存调整,卡片,浏览态,行操作:展开(切换视图)
|
||||
* @Date: 2018-05-25 15:31:42
|
||||
* @Last Modified by: yinliang
|
||||
* @Last Modified time: 2018-12-17 15:52:14
|
||||
*/
|
||||
export default function(props, record, constance) {
|
||||
let { AREA } = constance;
|
||||
props.cardTable.toggleRowView(AREA.body, record);
|
||||
}
|
||||
|
|
@ -0,0 +1,294 @@
|
|||
/*
|
||||
* @Author: yinliang
|
||||
* @PageInfo: 保存 提交
|
||||
* @Date: 2018-04-12 10:39:26
|
||||
* @Last Modified by: guoylei
|
||||
* @Last Modified time: 2021-07-29 10:15:24
|
||||
*/
|
||||
import { ajax } from 'nc-lightapp-front';
|
||||
import { addCacheData, updateCacheData } from '../../../../../scmpub/scmpub/pub/cache';
|
||||
import { showResumeModal } from 'scmpub/scmpub/components/ResumeModal';
|
||||
import { showWarningInfo } from '../../../../../scmpub/scmpub/pub/tool/messageUtil';
|
||||
import { showErrorInfo, showSaveAndCommitInfo } from '../../../../../scmpub/scmpub/pub/tool/messageUtil';
|
||||
import { beforeSave } from '../../../pub/utils';
|
||||
import { getLangByResId } from '../../../../../scmpub/scmpub/pub/tool/multiLangUtil';
|
||||
/**
|
||||
* 库存调整
|
||||
* @param {*} props
|
||||
* @param {*} param 参数,其中存放常量信息constance,以及是否保存提交标志isCommit
|
||||
* @param {*} skipCodes
|
||||
*/
|
||||
export default function(props, param = {}, skipCodes, assign) {
|
||||
let { PAGECODE, FIELD, URL, UISTATE, AREA, CONSTFIELD } = param.constance;
|
||||
// 表头必输校验
|
||||
// let formCheck = props.form.isCheckNow(AREA.head);
|
||||
// if (!formCheck) {
|
||||
// return;
|
||||
// }
|
||||
|
||||
// 保存时,清空子表空行
|
||||
if (FIELD.billtype && [ '4R', '4K', '4P', '4L', '4N', '4M' ].includes(FIELD.billtype)) {
|
||||
// 盘点(4R)、转库(4K)、废品处理(4P)、组装(4L)、拆卸(4N)、形态转换(4M),只要表体行上没有物料vid,就是空行
|
||||
this.props.cardTable.filterEmptyRows(AREA.body, [ FIELD.cmaterialvid ], 'include');
|
||||
} else {
|
||||
this.props.cardTable.filterEmptyRows(AREA.body, [ FIELD.crowno ]);
|
||||
}
|
||||
|
||||
//校验,在保存单据时,单据表头和表体同时校验,如果有错误信息,同时提示
|
||||
let flag = this.props.validatePageToToast([
|
||||
{
|
||||
name: AREA.head,
|
||||
type: 'form'
|
||||
},
|
||||
{
|
||||
name: AREA.body,
|
||||
type: 'cardTable'
|
||||
}
|
||||
]);
|
||||
if (!flag.allPassed) {
|
||||
return;
|
||||
}
|
||||
|
||||
// 保存时,清空子表空行
|
||||
// if (FIELD.type) {
|
||||
// this.props.cardTable.filterEmptyRows(AREA.body, [ FIELD.crowno, FIELD.type ]);
|
||||
// } else
|
||||
|
||||
// 表体必输项校验
|
||||
// let tableCheck = this.props.cardTable.checkTableRequired(AREA.body);
|
||||
// if (!tableCheck) {
|
||||
// return;
|
||||
// }
|
||||
// 校验保存时,表体行是否为空,解决修改时,删除表体行之后,只是修改了表体行的status状态的情况
|
||||
let checkRows = this.props.cardTable.getVisibleRows(AREA.body);
|
||||
if (checkRows <= 0) {
|
||||
showWarningInfo(null, getLangByResId(this, '4008PUB-000035'), 'infinity'); /* 国际化处理: 无表体行,无法保存!*/
|
||||
return;
|
||||
}
|
||||
// 拼接主子表json方法,参数分别为:pageid(模板id),form区id,table区id,调用此方法即可自动拼接向后台传的json(data)
|
||||
let data = props.createMasterChildDataSimple(PAGECODE.card, AREA.head, AREA.body);
|
||||
|
||||
// 删除表体没有主键,且status为3的表体数据
|
||||
data = beforeSave(data, AREA.body, FIELD.cspecialbid);
|
||||
|
||||
// 交互式异常 begin
|
||||
skipCodes = skipCodes ? skipCodes : new Array();
|
||||
data['skipCodes'] = skipCodes;
|
||||
// 交互式异常 end
|
||||
|
||||
// 提交指派
|
||||
if (assign) {
|
||||
data['assign'] = JSON.stringify(assign);
|
||||
}
|
||||
|
||||
// 自定义参数:isCommit是否保存提交操作
|
||||
data.userjson = `{isCommit:${param.isCommit}}`;
|
||||
|
||||
/*
|
||||
* 转库修改保存时,如果应到货日期、因发货日期为空时,会在查询可用量的时候报错,因此这里需要控制一下,只改了NCC
|
||||
* 校验逻辑:修改保存时,前端校验应到货日期(dshldarrivedate)、应发货日期(dshlddiliverdate)为空时,提示这两个日期不可为空
|
||||
*/
|
||||
if (FIELD.billtype == '4K' && this.status == 'edit') {
|
||||
let dshldarrivedate = props.form.getFormItemsValue(AREA.head, FIELD.dshldarrivedate);
|
||||
let dshlddiliverdate = props.form.getFormItemsValue(AREA.head, FIELD.dshlddiliverdate);
|
||||
let ddErrMsg = null;
|
||||
if (dshldarrivedate && !dshldarrivedate.value && dshlddiliverdate && !dshlddiliverdate.value) {
|
||||
ddErrMsg = getLangByResId(this, '4008WHSTRANS-000012'); /* 国际化处理: 应到货日期、应发货日期不能为空!*/
|
||||
} else if (dshldarrivedate && !dshldarrivedate.value) {
|
||||
ddErrMsg = getLangByResId(this, '4008WHSTRANS-000013'); /* 国际化处理: 应到货日期不能为空!*/
|
||||
} else if (dshlddiliverdate && !dshlddiliverdate.value) {
|
||||
ddErrMsg = getLangByResId(this, '4008WHSTRANS-000014'); /* 国际化处理: 应发货日期不能为空!*/
|
||||
}
|
||||
if (ddErrMsg) {
|
||||
showErrorInfo(null, ddErrMsg);
|
||||
return;
|
||||
}
|
||||
}
|
||||
/**
|
||||
* 形态转换 表体行校验
|
||||
* 必须存在一个转换前行一个转换后行
|
||||
*/
|
||||
if (FIELD.billtype == '4N' && this.status == 'edit') {
|
||||
let rows = data.body.transform_b.rows;
|
||||
if (rows) {
|
||||
let flag1 = false;
|
||||
let flag2 = false;
|
||||
if (rows.length == 1) {
|
||||
showErrorInfo(null, getLangByResId(this, '4008TRANSFORM-000008')); /* 国际化处理: 至少存在一个转换前行和一个转换后行!*/
|
||||
return;
|
||||
} else {
|
||||
for (let i = 0; i < rows.length; i++) {
|
||||
if (rows[i].status != '3') {
|
||||
if (rows[i].values.fbillrowflag.value == '2') {
|
||||
flag1 = true;
|
||||
} else {
|
||||
flag2 = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if (!flag1 || !flag2) {
|
||||
showErrorInfo(null, getLangByResId(this, '4008TRANSFORM-000008')); /* 国际化处理: 至少存在一个转换前行和一个转换后行!*/
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
// 调用平台的保存方法,单据模板用例添加逻辑,add by yinl 20180822 begin
|
||||
this.props.validateToSave(data, () => {
|
||||
//原来的 ajax 请求
|
||||
ajax({
|
||||
url: URL.saveAndCommit,
|
||||
data: data,
|
||||
success: (res) => {
|
||||
// 交互式异常
|
||||
if (res.data && res.data.isResume && res.data.isResume == true) {
|
||||
showResumeModal.bind(this)(
|
||||
props,
|
||||
'ResumeMessageDlg',
|
||||
skipCodes,
|
||||
res.data,
|
||||
saveAndCommitBtnClick,
|
||||
props,
|
||||
text,
|
||||
record,
|
||||
index
|
||||
);
|
||||
return;
|
||||
} else {
|
||||
let pkCache = '';
|
||||
// 提交指派添加 begin
|
||||
if (
|
||||
res.data &&
|
||||
res.data.workflow &&
|
||||
(res.data.workflow == 'approveflow' || res.data.workflow == 'workflow')
|
||||
) {
|
||||
// 提示
|
||||
// showSuccessInfo(getLangByResId(this, '4008PUB-000036')); /* 国际化处理: 保存成功!*/
|
||||
//缓存当前数据
|
||||
this.skipCodes = data['skipCodes'];
|
||||
this.saveAndCommit = true;
|
||||
//缓存当前数据
|
||||
this.setState({
|
||||
compositedata: res.data,
|
||||
compositedisplay: true
|
||||
});
|
||||
return;
|
||||
} else {
|
||||
this.props.beforeUpdatePage();
|
||||
/**
|
||||
* 变成编辑态时,不保留勾选
|
||||
* selectAllRows(moduleId, checked)
|
||||
* moduleId 区域ID
|
||||
* checked为true 全选
|
||||
* checked为false 全不选
|
||||
*/
|
||||
this.props.cardTable.selectAllRows(AREA.body, false);
|
||||
// 差异化处理之后,返回的表体字段不全,需要这里不全,然后再放入缓存中
|
||||
let fullTableData = props.cardTable.updateDataByRowId(
|
||||
AREA.body,
|
||||
res.data.retcard.body[AREA.body],
|
||||
true
|
||||
);
|
||||
res.data.retcard.body[AREA.body] = fullTableData;
|
||||
// 填充子表数据
|
||||
if (this.status == 'edit') {
|
||||
// 修改后处理逻辑
|
||||
pkCache = this.props.getUrlParam(FIELD.cardId);
|
||||
/*
|
||||
* FIELD.cspecialhid: 数据主键的命名
|
||||
* pkCache:数据主键的值
|
||||
* AREA.head: 卡片表头的区域编码
|
||||
* CONSTFIELD.dataSource: 缓存数据命名空间
|
||||
*/
|
||||
updateCacheData(
|
||||
this.props,
|
||||
FIELD.cspecialhid,
|
||||
pkCache,
|
||||
res.data.retcard,
|
||||
AREA.head,
|
||||
CONSTFIELD.dataSource
|
||||
);
|
||||
} else {
|
||||
// 新增处理逻辑
|
||||
// 需要将新增的pk添加到cardPagination中,卡片态翻页时使用
|
||||
pkCache = res.data.retcard.head.head.rows[0].values[FIELD.cspecialhid].value;
|
||||
/*
|
||||
* 新增后操作:
|
||||
* pkCache:数据主键的值
|
||||
* AREA.head: 卡片表头的区域编码
|
||||
* CONSTFIELD.dataSource: 缓存数据命名空间
|
||||
*/
|
||||
addCacheData(
|
||||
this.props,
|
||||
FIELD.cspecialhid,
|
||||
pkCache,
|
||||
res.data.retcard,
|
||||
AREA.head,
|
||||
CONSTFIELD.dataSource
|
||||
);
|
||||
}
|
||||
|
||||
//更新路径中的状态和id
|
||||
let scene = this.props.getUrlParam(FIELD.scene);
|
||||
this.props.pushTo(URL.gotoCard, {
|
||||
status: UISTATE.browse,
|
||||
id: pkCache,
|
||||
scene: scene
|
||||
});
|
||||
/**
|
||||
* 提示需要放在pushTo后面,否则提示会被冲掉
|
||||
* 保存操作时,提示保存成功
|
||||
* 保存提交操作时,提示保存成功,提交成功
|
||||
*/
|
||||
showSaveAndCommitInfo();
|
||||
// 填充form数据
|
||||
props.form.setAllFormValue({ head: res.data.retcard.head.head });
|
||||
|
||||
// 拼装提示信息
|
||||
let toastMsg = '';
|
||||
if (res.data.errorMsg) {
|
||||
// toastMsg = res.data.errorMsg;
|
||||
// // 提示
|
||||
// showErrorInfo(null, toastMsg);
|
||||
} else {
|
||||
// 单据模板用例添加,保存成功之后,要执行如下代码 add by yinl 20180822 begin
|
||||
if (res.formulamsg && res.formulamsg instanceof Array && res.formulamsg.length > 0) {
|
||||
props.dealFormulamsg(
|
||||
res.formulamsg //参数一:返回的公式对象
|
||||
);
|
||||
}
|
||||
// 单据模板用例添加,保存成功之后,要执行如下代码 add by yinl 20180822 end
|
||||
}
|
||||
// 设置界面状态为浏览态
|
||||
this.status = UISTATE.browse;
|
||||
this.billcode = res.data.retcard.head.head.rows[0].values.vbillcode.value;
|
||||
|
||||
// 回调函数,这里控制按钮显示等逻辑
|
||||
if (typeof param.callback == 'function') {
|
||||
param.callback.call(
|
||||
this,
|
||||
props,
|
||||
res.data.retcard.head.head.rows[0].values[FIELD.fbillflag].value
|
||||
);
|
||||
}
|
||||
// 清空复制行缓存数据
|
||||
this.copyRowDatas = null; //复制行数据
|
||||
// 将所有的多选框置为可用
|
||||
props.cardTable.setAllCheckboxAble(AREA.body, true);
|
||||
//设置状态,设置肩头的单据号
|
||||
// this.props.BillHeadInfo.setBillHeadInfoVisible({
|
||||
// showBackBtn: true, //控制显示返回按钮: true为显示,false为隐藏 ---非必传
|
||||
// showBillCode: true, //控制显示单据号:true为显示,false为隐藏 ---非必传
|
||||
// billCode: res.data.retcard.head.head.rows[0].values.vbillcode.value //修改单据号---非必传
|
||||
// });
|
||||
this.props.updatePage(AREA.head, AREA.body);
|
||||
}
|
||||
// 提交指派添加 end
|
||||
|
||||
this.skipCodes = []; // 清空交互式异常数组
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
// 调用平台的保存方法,单据模板用例添加逻辑,add by yinl 20180822 end
|
||||
}
|
||||
|
|
@ -0,0 +1,255 @@
|
|||
/*
|
||||
* @Author: yinliang
|
||||
* @PageInfo: 保存
|
||||
* @Date: 2018-04-12 10:39:26
|
||||
* @Last Modified by: zhengylr
|
||||
* @Last Modified time: 2022-10-27 10:45:01
|
||||
*/
|
||||
import { ajax } from 'nc-lightapp-front';
|
||||
import { addCacheData, updateCacheData } from '../../../../../scmpub/scmpub/pub/cache';
|
||||
import { showResumeModal } from 'scmpub/scmpub/components/ResumeModal';
|
||||
import { showWarningInfo } from '../../../../../scmpub/scmpub/pub/tool/messageUtil';
|
||||
import { showSuccessInfo, showErrorInfo } from '../../../../../scmpub/scmpub/pub/tool/messageUtil';
|
||||
import { beforeSave } from '../../../pub/utils';
|
||||
import { getLangByResId } from '../../../../../scmpub/scmpub/pub/tool/multiLangUtil';
|
||||
import { changeUrlParam } from '../../../../../scmpub/scmpub/pub/cache';
|
||||
/**
|
||||
* 库存调整
|
||||
* @param {*} props
|
||||
* @param {*} param 参数,其中存放常量信息constance,以及是否保存提交标志isCommit
|
||||
* @param {*} skipCodes
|
||||
*/
|
||||
export default function(props, param = {}, skipCodes) {
|
||||
let { PAGECODE, FIELD, URL, UISTATE, AREA, CONSTFIELD } = param.constance;
|
||||
// 表头必输校验
|
||||
// let formCheck = props.form.isCheckNow(AREA.head);
|
||||
// if (!formCheck) {
|
||||
// return;
|
||||
// }
|
||||
//
|
||||
|
||||
// 保存时,清空子表空行
|
||||
if (FIELD.billtype && [ '4R', '4K', '4P', '4L', '4N', '4M' ].includes(FIELD.billtype)) {
|
||||
// 盘点(4R)、转库(4K)、废品处理(4P)、组装(4L)、拆卸(4N)、形态转换(4M),只要表体行上没有物料vid,就是空行
|
||||
this.props.cardTable.filterEmptyRows(AREA.body, [ FIELD.cmaterialvid ], 'include');
|
||||
} else {
|
||||
this.props.cardTable.filterEmptyRows(AREA.body, [ FIELD.crowno ]);
|
||||
}
|
||||
|
||||
//校验,在保存单据时,单据表头和表体同时校验,如果有错误信息,同时提示
|
||||
let flag = this.props.validatePageToToast([
|
||||
{
|
||||
name: AREA.head,
|
||||
type: 'form'
|
||||
},
|
||||
{
|
||||
name: AREA.body,
|
||||
type: 'cardTable'
|
||||
}
|
||||
]);
|
||||
if (!flag.allPassed) {
|
||||
return;
|
||||
}
|
||||
|
||||
// // 表体必输项校验
|
||||
// let tableCheck = this.props.cardTable.checkTableRequired(AREA.body);
|
||||
// if (!tableCheck) {
|
||||
// return;
|
||||
// }
|
||||
// 校验保存时,表体行是否为空,解决修改时,删除表体行之后,只是修改了表体行的status状态的情况
|
||||
let checkRows = this.props.cardTable.getVisibleRows(AREA.body);
|
||||
if (checkRows <= 0) {
|
||||
showWarningInfo(null, getLangByResId(this, '4008PUB-000035'), 'infinity'); /* 国际化处理: 无表体行,无法保存!*/
|
||||
return;
|
||||
}
|
||||
// 拼接主子表json方法,参数分别为:pageid(模板id),form区id,table区id,调用此方法即可自动拼接向后台传的json(data)
|
||||
// props.createMasterChildData(PAGECODE.card, AREA.head, AREA.body)这个方法不会去掉display
|
||||
// props.createMasterChildDataSimple(PAGECODE.card, AREA.head, AREA.body)这个方法会去掉display
|
||||
let data = props.createMasterChildDataSimple(PAGECODE.card, AREA.head, AREA.body);
|
||||
|
||||
// 删除表体没有主键,且status为3的表体数据
|
||||
data = beforeSave(data, AREA.body, FIELD.cspecialbid);
|
||||
|
||||
// 交互式异常 begin
|
||||
skipCodes = skipCodes ? skipCodes : new Array();
|
||||
data['skipCodes'] = skipCodes;
|
||||
// 交互式异常 end
|
||||
|
||||
// 自定义参数:isCommit是否保存提交操作,这个参数在云原生去掉了,保存提交走单独的action
|
||||
// data.userjson = `{isCommit:${param.isCommit}}`;
|
||||
|
||||
/*
|
||||
* 转库修改保存时,如果应到货日期、因发货日期为空时,会在查询可用量的时候报错,因此这里需要控制一下,只改了NCC
|
||||
* 校验逻辑:修改保存时,前端校验应到货日期(dshldarrivedate)、应发货日期(dshlddiliverdate)为空时,提示这两个日期不可为空
|
||||
*/
|
||||
if (FIELD.billtype == '4K' && this.status == 'edit') {
|
||||
let dshldarrivedate = props.form.getFormItemsValue(AREA.head, FIELD.dshldarrivedate);
|
||||
let dshlddiliverdate = props.form.getFormItemsValue(AREA.head, FIELD.dshlddiliverdate);
|
||||
let ddErrMsg = null;
|
||||
if (dshldarrivedate && !dshldarrivedate.value && dshlddiliverdate && !dshlddiliverdate.value) {
|
||||
ddErrMsg = getLangByResId(this, '4008WHSTRANS-000012'); /* 国际化处理: 应到货日期、应发货日期不能为空!*/
|
||||
} else if (dshldarrivedate && !dshldarrivedate.value) {
|
||||
ddErrMsg = getLangByResId(this, '4008WHSTRANS-000013'); /* 国际化处理: 应到货日期不能为空!*/
|
||||
} else if (dshlddiliverdate && !dshlddiliverdate.value) {
|
||||
ddErrMsg = getLangByResId(this, '4008WHSTRANS-000014'); /* 国际化处理: 应发货日期不能为空!*/
|
||||
}
|
||||
if (ddErrMsg) {
|
||||
showErrorInfo(null, ddErrMsg);
|
||||
return;
|
||||
}
|
||||
}
|
||||
/**
|
||||
* 形态转换 表体行校验
|
||||
* 必须存在一个转换前行一个转换后行
|
||||
*/
|
||||
if (FIELD.billtype == '4N' && this.status == 'edit') {
|
||||
let rows = data.body.transform_b.rows;
|
||||
if (rows) {
|
||||
let flag1 = false;
|
||||
let flag2 = false;
|
||||
if (rows.length == 1) {
|
||||
showErrorInfo(null, getLangByResId(this, '4008TRANSFORM-000008')); /* 国际化处理: 至少存在一个转换前行和一个转换后行!*/
|
||||
return;
|
||||
} else {
|
||||
for (let i = 0; i < rows.length; i++) {
|
||||
if (rows[i].status != '3') {
|
||||
if (rows[i].values.fbillrowflag.value == '2') {
|
||||
flag1 = true;
|
||||
} else {
|
||||
flag2 = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if (!flag1 || !flag2) {
|
||||
showErrorInfo(null, getLangByResId(this, '4008TRANSFORM-000008')); /* 国际化处理: 至少存在一个转换前行和一个转换后行!*/
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
// 调用平台的保存方法,单据模板用例添加逻辑,add by yinl 20180822 begin
|
||||
this.props.validateToSave(data, () => {
|
||||
//原来的 ajax 请求
|
||||
ajax({
|
||||
url: URL.save,
|
||||
data: data,
|
||||
success: (res) => {
|
||||
// 交互式异常
|
||||
if (res.data && res.data.isResume && res.data.isResume == true) {
|
||||
showResumeModal.bind(this)(
|
||||
props,
|
||||
'ResumeMessageDlg',
|
||||
skipCodes,
|
||||
res.data,
|
||||
commitBtnClick,
|
||||
props,
|
||||
text,
|
||||
record,
|
||||
index
|
||||
);
|
||||
return;
|
||||
} else {
|
||||
let pkCache = '';
|
||||
this.props.beforeUpdatePage();
|
||||
/**
|
||||
* 变成编辑态时,不保留勾选
|
||||
* selectAllRows(moduleId, checked)
|
||||
* moduleId 区域ID
|
||||
* checked为true 全选
|
||||
* checked为false 全不选
|
||||
*/
|
||||
this.props.cardTable.selectAllRows(AREA.body, false);
|
||||
// 差异化处理之后,返回的表体字段不全,需要这里不全,然后再放入缓存中
|
||||
let fullTableData = props.cardTable.updateDataByRowId(
|
||||
AREA.body,
|
||||
res.data.retcard.body[AREA.body],
|
||||
true
|
||||
);
|
||||
res.data.retcard.body[AREA.body] = fullTableData;
|
||||
// 填充子表数据
|
||||
if (this.status == 'edit') {
|
||||
// 修改后处理逻辑
|
||||
pkCache = this.props.getUrlParam(FIELD.cardId);
|
||||
/*
|
||||
* FIELD.cspecialhid: 数据主键的命名
|
||||
* pkCache:数据主键的值
|
||||
* AREA.head: 卡片表头的区域编码
|
||||
* CONSTFIELD.dataSource: 缓存数据命名空间
|
||||
*/
|
||||
updateCacheData(
|
||||
this.props,
|
||||
FIELD.cspecialhid,
|
||||
pkCache,
|
||||
res.data.retcard,
|
||||
AREA.head,
|
||||
CONSTFIELD.dataSource
|
||||
);
|
||||
} else {
|
||||
// 新增处理逻辑
|
||||
// 需要将新增的pk添加到cardPagination中,卡片态翻页时使用
|
||||
pkCache = res.data.retcard.head.head.rows[0].values[FIELD.cspecialhid].value;
|
||||
/*
|
||||
* 新增后操作:
|
||||
* pkCache:数据主键的值
|
||||
* AREA.head: 卡片表头的区域编码
|
||||
* CONSTFIELD.dataSource: 缓存数据命名空间
|
||||
*/
|
||||
addCacheData(
|
||||
this.props,
|
||||
FIELD.cspecialhid,
|
||||
pkCache,
|
||||
res.data.retcard,
|
||||
AREA.head,
|
||||
CONSTFIELD.dataSource
|
||||
);
|
||||
}
|
||||
|
||||
//更新路径中的状态和id
|
||||
let scene = this.props.getUrlParam(FIELD.scene);
|
||||
// this.props.pushTo(URL.gotoCard, {
|
||||
changeUrlParam(this.props, {
|
||||
status: UISTATE.browse,
|
||||
id: pkCache,
|
||||
scene: scene
|
||||
});
|
||||
// props.cardTable.setStatus(AREA.body, UISTATE.browse);
|
||||
// 填充form数据
|
||||
props.form.setAllFormValue({ head: res.data.retcard.head.head });
|
||||
// props.form.setFormStatus(AREA.head, UISTATE.browse);
|
||||
|
||||
// 拼装提示信息
|
||||
let toastMsg = '';
|
||||
if (!res.data.errorMsg) {
|
||||
// 单据模板用例添加,保存成功之后,要执行如下代码 add by yinl 20180822 begin
|
||||
if (res.formulamsg && res.formulamsg instanceof Array && res.formulamsg.length > 0) {
|
||||
props.dealFormulamsg(
|
||||
res.formulamsg //参数一:返回的公式对象
|
||||
);
|
||||
}
|
||||
// 单据模板用例添加,保存成功之后,要执行如下代码 add by yinl 20180822 end
|
||||
}
|
||||
// 设置界面状态为浏览态
|
||||
this.status = UISTATE.browse;
|
||||
this.billcode = res.data.retcard.head.head.rows[0].values.vbillcode.value;
|
||||
|
||||
showSuccessInfo(getLangByResId(this, '4008PUB-000036')); /* 国际化处理: 保存成功!*/
|
||||
|
||||
// 回调函数,这里控制按钮显示等逻辑
|
||||
if (typeof param.callback == 'function') {
|
||||
param.callback.call(
|
||||
this,
|
||||
props,
|
||||
res.data.retcard.head.head.rows[0].values[FIELD.fbillflag].value
|
||||
);
|
||||
}
|
||||
// 清空复制行缓存数据
|
||||
this.copyRowDatas = null; //复制行数据
|
||||
// 将所有的多选框置为可用
|
||||
props.cardTable.setAllCheckboxAble(AREA.body, true);
|
||||
this.props.updatePage(AREA.head, AREA.body);
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
// 调用平台的保存方法,单据模板用例添加逻辑,add by yinl 20180822 end
|
||||
}
|
||||
|
|
@ -0,0 +1,45 @@
|
|||
/*
|
||||
* @Author: yinliang
|
||||
* @PageInfo: 库存调整单据,审批流单据,卡片,按钮可用性设置
|
||||
* @Date: 2018-07-05 21:15:32
|
||||
* @Last Modified by: yinliang
|
||||
* @Last Modified time: 2018-12-26 16:58:44
|
||||
*/
|
||||
export default function(props, constance) {
|
||||
let { DISABLEBTNS, AREA, FIELD, BUTTONID } = constance;
|
||||
|
||||
// 调整单按钮可用性控制,公共逻辑
|
||||
let pk_org = this.props.form.getFormItemsValue(AREA.head, FIELD.pk_org_v);
|
||||
if (!pk_org || !pk_org.value) {
|
||||
props.button.setButtonDisabled(
|
||||
DISABLEBTNS.card.upd.concat(DISABLEBTNS.card.oth).concat(DISABLEBTNS.card.add),
|
||||
true
|
||||
);
|
||||
} else {
|
||||
//2.选择了主组织,表体没有行,除了增行,其它都不可用
|
||||
let rows = props.cardTable.getAllRows(AREA.body);
|
||||
if (!rows || rows.length == 0) {
|
||||
props.button.setButtonDisabled(DISABLEBTNS.card.add.concat(DISABLEBTNS.card.oth), false);
|
||||
props.button.setButtonDisabled(DISABLEBTNS.card.upd, true);
|
||||
} else {
|
||||
//3.表体有行,没有勾选,除了删行、复制行,其它都可用
|
||||
let checkedrows = props.cardTable.getCheckedRows(AREA.body);
|
||||
if (!checkedrows || Object.keys(checkedrows).length == 0) {
|
||||
//没有选中
|
||||
props.button.setButtonDisabled(DISABLEBTNS.card.upd, true);
|
||||
props.button.setButtonDisabled(DISABLEBTNS.card.add.concat(DISABLEBTNS.card.oth), false);
|
||||
} else {
|
||||
//4.表体有行且有勾选,所有都可用
|
||||
props.button.setButtonDisabled(
|
||||
DISABLEBTNS.card.add.concat(DISABLEBTNS.card.upd).concat(DISABLEBTNS.card.oth),
|
||||
false
|
||||
);
|
||||
}
|
||||
// 特殊处理转库单的逻辑 begin
|
||||
if (FIELD.billtype == '4K') {
|
||||
props.button.setButtonDisabled(BUTTONID.OnhandQuery, false);
|
||||
}
|
||||
// 特殊处理转库单的逻辑 end
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,15 @@
|
|||
/*
|
||||
* @Author: yinliang
|
||||
* @PageInfo: 库存调整,重排行号
|
||||
* @Date: 2018-06-25 11:15:04
|
||||
* @Last Modified by: yinliang
|
||||
* @Last Modified time: 2019-07-30 15:12:32
|
||||
*/
|
||||
|
||||
import { RownoUtils } from '../../../../../scmpub/scmpub/pub/tool/cardTableTools';
|
||||
export default function sortLineNum(props, constance) {
|
||||
let { FIELD, AREA } = constance;
|
||||
props.beforeUpdatePage(); // 效率优化开启
|
||||
RownoUtils.resetRowNo(props, AREA.body, FIELD.crowno);
|
||||
props.updatePage(AREA.head, AREA.body); // 效率优化关闭
|
||||
}
|
||||
|
|
@ -0,0 +1,62 @@
|
|||
/*
|
||||
* @Author: zhengxinm
|
||||
* @PageInfo: 生成出入库按钮事件
|
||||
* @Date: 2019-01-02 15:32:24
|
||||
* @Last Modified by: yinliang
|
||||
* @Last Modified time: 2019-01-05 19:48:13
|
||||
*/
|
||||
|
||||
import { ajax } from 'nc-lightapp-front';
|
||||
import { showWarningInfo } from '../../../../../scmpub/scmpub/pub/tool/messageUtil';
|
||||
import { getLangByResId } from '../../../../../scmpub/scmpub/pub/tool/multiLangUtil';
|
||||
/**
|
||||
* 生成其它出其它入弹窗按钮控制时间
|
||||
* @param {*} props
|
||||
* @param {*} head
|
||||
* @param {*} url
|
||||
* @param {*} param 转库添加的参数,其他单据也可以用,这个 参数中可以传各种参数,from:标识来源单据,currentTab:默认页签,inflag,outflag标识其它出,其它入是否置灰
|
||||
*/
|
||||
export default function(props, head, url, param = { from: null, currentTab: 1, inflag: false, outflag: false }) {
|
||||
let checkdatas = props.table.getCheckedRows(head);
|
||||
if (!checkdatas || Object.keys(checkdatas).length == 0) {
|
||||
showWarningInfo(null, getLangByResId(this, '4008PUB-000206')); /* 国际化处理: 请先选择数据!*/
|
||||
return;
|
||||
}
|
||||
let pks = [];
|
||||
checkdatas.forEach((element) => {
|
||||
let pk = '';
|
||||
pk = element.data.values.cspecialhid.value;
|
||||
this.rowPK = pk;
|
||||
let fbillflag = element.data.values.fbillflag.value;
|
||||
if (fbillflag == 4) {
|
||||
pks.push(pk);
|
||||
}
|
||||
});
|
||||
let data = JSON.stringify({
|
||||
type: 'list',
|
||||
pks: pks
|
||||
});
|
||||
// 查询数据,并展示其他入其他出弹框
|
||||
ajax({
|
||||
url: url,
|
||||
data: data,
|
||||
success: (res) => {
|
||||
// let inTabFlag = false; // 其他入库单页签是否可用标志,true为不可用
|
||||
// let outTabFlag = false; // 其他出库单页签是否可用标志,true为不可用
|
||||
if (!res.data) {
|
||||
showWarningInfo(null, getLangByResId(this, '4008PUB-000222')); /* 国际化处理: 没有符合条件的数据!*/
|
||||
return;
|
||||
}
|
||||
let showRealationModal = true;
|
||||
let inTab = param.inflag ? true : false;
|
||||
let outTab = param.outflag ? true : false;
|
||||
this.setState({
|
||||
showRealationModal: showRealationModal,
|
||||
currentTab: param.currentTab,
|
||||
inoutData: res.data,
|
||||
inTab: inTab,
|
||||
outTab: outTab
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
|
|
@ -0,0 +1,14 @@
|
|||
/*
|
||||
* @Author: yinliang
|
||||
* @PageInfo: 库存调整,列表页面,审批详情按钮
|
||||
* @Date: 2018-07-20 13:58:42
|
||||
* @Last Modified by: yinliang
|
||||
* @Last Modified time: 2019-04-13 16:33:32
|
||||
*/
|
||||
export default function(record) {
|
||||
this.setState({
|
||||
show: true,
|
||||
billId: record.cspecialhid ? record.cspecialhid.value : record.cgeneralhid.value,
|
||||
vtrantypecode: record.vtrantypecode.value
|
||||
});
|
||||
}
|
||||
|
|
@ -0,0 +1,30 @@
|
|||
/*
|
||||
* @Author: yinliang
|
||||
* @PageInfo: 库存调整,列表,双击跳转页面
|
||||
* @Date: 2018-05-13 15:02:02
|
||||
* @Last Modified by: yinliang
|
||||
* @Last Modified time: 2018-12-18 13:36:27
|
||||
*/
|
||||
export default function doubleClick(record, constance) {
|
||||
let { URL, FIELD, UISTATE } = constance;
|
||||
/**
|
||||
* 废品处理,表头主键为cgeneralhid
|
||||
* 盘点、转库、组装、拆卸、形态转换,表头主键为cspecialhid
|
||||
*/
|
||||
let hid = '';
|
||||
if (FIELD.cspecialhid) {
|
||||
/**
|
||||
* 盘点、转库、形态转换、组装、拆卸,表头主键为cspecialhid
|
||||
*/
|
||||
hid = FIELD.cspecialhid;
|
||||
} else if (FIELD.cgeneralhid) {
|
||||
/**
|
||||
* 废品处理,表头主键为cgeneralhid
|
||||
*/
|
||||
hid = FIELD.cgeneralhid;
|
||||
}
|
||||
this.props.pushTo(URL.gotoCard, {
|
||||
status: UISTATE.browse,
|
||||
id: record[hid].value
|
||||
});
|
||||
}
|
||||
|
|
@ -0,0 +1,35 @@
|
|||
/*
|
||||
* @Author: yinliang
|
||||
* @PageInfo: 库存调整,附件管理
|
||||
* @Date: 2018-06-25 10:17:12
|
||||
* @Last Modified by: yinliang
|
||||
* @Last Modified time: 2019-02-13 16:49:15
|
||||
*/
|
||||
import { getLangByResId } from '../../../../../scmpub/scmpub/pub/tool/multiLangUtil';
|
||||
import { showWarningInfo } from '../../../../../scmpub/scmpub/pub/tool/messageUtil';
|
||||
export default function(props, constance) {
|
||||
let { AREA } = constance;
|
||||
let checkdatas = props.table.getCheckedRows(AREA.head);
|
||||
if (!checkdatas || Object.keys(checkdatas).length == 0) {
|
||||
showWarningInfo(null, getLangByResId(this, '4008ASSEMBLY-000038')); /* 国际化处理: 请先选择数据!*/
|
||||
return;
|
||||
}
|
||||
/**
|
||||
* 废品处理,表头主键为cgeneralhid
|
||||
* 盘点、转库、组装、拆卸、形态转换,表头主键为cspecialhid
|
||||
*/
|
||||
let pk = '';
|
||||
if (props.table.getCheckedRows(AREA.head)[0].data.values.cspecialhid) {
|
||||
pk = props.table.getCheckedRows(AREA.head)[0].data.values.cspecialhid.value;
|
||||
} else if (props.table.getCheckedRows(AREA.head)[0].data.values.cgeneralhid) {
|
||||
pk = props.table.getCheckedRows(AREA.head)[0].data.values.cgeneralhid.value;
|
||||
}
|
||||
let billcode = props.table.getCheckedRows(AREA.head)[0].data.values.vbillcode.value;
|
||||
let fileFlag = this.state.showUploader;
|
||||
this.setState({
|
||||
showUploader: !fileFlag,
|
||||
pk: pk,
|
||||
// target: event.target,
|
||||
billcode: billcode
|
||||
});
|
||||
}
|
||||
|
|
@ -0,0 +1,23 @@
|
|||
import approveInfo from './approveInfo';
|
||||
import fileClick from './fileClick';
|
||||
import linkQuery from './linkQuery';
|
||||
import outPut from './outPut';
|
||||
import printBtnClick from './printBtnClick';
|
||||
import printListBtnClick from './printListBtnClick';
|
||||
import setButtonUsability4Approve from './setButtonUsability4Approve';
|
||||
import setButtonUsability4Sign from './setButtonUsability4Sign';
|
||||
import pubDoubleClick from './doubleClick';
|
||||
import adjustBtnClick from './adjustBtnClick';
|
||||
|
||||
export {
|
||||
approveInfo,
|
||||
fileClick,
|
||||
linkQuery,
|
||||
outPut,
|
||||
printBtnClick,
|
||||
printListBtnClick,
|
||||
setButtonUsability4Approve,
|
||||
setButtonUsability4Sign,
|
||||
pubDoubleClick,
|
||||
adjustBtnClick
|
||||
};
|
||||
|
|
@ -0,0 +1,33 @@
|
|||
/*
|
||||
* @Author: yinliang
|
||||
* @PageInfo: 库存调整,单据追溯
|
||||
* @Date: 2018-06-25 10:17:12
|
||||
* @Last Modified by: yinliang
|
||||
* @Last Modified time: 2018-12-14 10:54:18
|
||||
*/
|
||||
import { getLangByResId } from '../../../../../scmpub/scmpub/pub/tool/multiLangUtil';
|
||||
import { showWarningInfo } from '../../../../../scmpub/scmpub/pub/tool/messageUtil';
|
||||
export default function(props, constance) {
|
||||
let { AREA } = constance;
|
||||
let checkdatas = props.table.getCheckedRows(AREA.head);
|
||||
if (!checkdatas || Object.keys(checkdatas).length == 0) {
|
||||
showWarningInfo(null, getLangByResId(this, '4008PUB-000206')); /* 国际化处理: 请先选择数据!*/
|
||||
return;
|
||||
}
|
||||
let pk = '';
|
||||
if (props.table.getCheckedRows(AREA.head)[0].data.values.cspecialhid) {
|
||||
/**
|
||||
* 盘点、转库、形态转换、组装、拆卸,表头主键为cspecialhid
|
||||
*/
|
||||
pk = props.table.getCheckedRows(AREA.head)[0].data.values.cspecialhid.value;
|
||||
} else if (props.table.getCheckedRows(AREA.head)[0].data.values.cgeneralhid) {
|
||||
/**
|
||||
* 废品处理,表头主键为cgeneralhid
|
||||
*/
|
||||
pk = props.table.getCheckedRows(AREA.head)[0].data.values.cgeneralhid.value;
|
||||
}
|
||||
this.setState({
|
||||
pk: pk,
|
||||
showTrack: true
|
||||
});
|
||||
}
|
||||
|
|
@ -0,0 +1,43 @@
|
|||
/*
|
||||
* @Author: yinliang
|
||||
* @PageInfo: 库存调整,输出
|
||||
* @Date: 2018-07-19 18:59:04
|
||||
* @Last Modified by: yinliang
|
||||
* @Last Modified time: 2018-12-14 11:08:39
|
||||
*/
|
||||
import { getLangByResId } from '../../../../../scmpub/scmpub/pub/tool/multiLangUtil';
|
||||
import { output } from 'nc-lightapp-front';
|
||||
import { showWarningInfo } from '../../../../../scmpub/scmpub/pub/tool/messageUtil';
|
||||
export default function(props, constance) {
|
||||
let { URL, AREA } = constance;
|
||||
let checkeddatas = props.table.getCheckedRows(AREA.head);
|
||||
if (checkeddatas.length == 0) {
|
||||
showWarningInfo(null, getLangByResId(this, '4008PUB - 000206')); /* 国际化处理: 请先选择数据!*/
|
||||
return;
|
||||
}
|
||||
let pks = [];
|
||||
checkeddatas.forEach((element) => {
|
||||
let pk = '';
|
||||
if (element.data.values.cspecialhid) {
|
||||
/**
|
||||
* 盘点、转库、形态转换、组装、拆卸,表头主键为cspecialhid
|
||||
*/
|
||||
pk = element.data.values.cspecialhid.value;
|
||||
} else if (element.data.values.cgeneralhid) {
|
||||
/**
|
||||
* 废品处理,表头主键为cgeneralhid
|
||||
*/
|
||||
pk = element.data.values.cgeneralhid.value;
|
||||
}
|
||||
|
||||
pks.push(pk);
|
||||
});
|
||||
output({
|
||||
url: URL.print,
|
||||
data: {
|
||||
oids: pks,
|
||||
nodekey: null, //模板节点标识,
|
||||
outputType: 'output'
|
||||
}
|
||||
});
|
||||
}
|
||||
|
|
@ -0,0 +1,90 @@
|
|||
/*
|
||||
* @Author: yinliang
|
||||
* @PageInfo: 库存调整,列表,打印按钮
|
||||
* @Date: 2018-04-02 13:49:46
|
||||
* @Last Modified by: yangtaow
|
||||
* @Last Modified time: 2023-07-10 10:52:48
|
||||
*/
|
||||
import { print, ajax } from 'nc-lightapp-front';
|
||||
import { showErrorInfo } from '../../../../../scmpub/scmpub/pub/tool/messageUtil';
|
||||
import { getLangByResId } from '../../../../../scmpub/scmpub/pub/tool/multiLangUtil';
|
||||
import poc from 'uap/common/components/printOnClient';
|
||||
const { printPreview } = poc;
|
||||
export default function(props, constance) {
|
||||
let { URL, AREA, FIELD } = constance;
|
||||
let checkeddatas = props.table.getCheckedRows(AREA.head);
|
||||
if (checkeddatas.length == 0) {
|
||||
showErrorInfo(null, getLangByResId(this, '4008PUB-000208')); /* 国际化处理: 请选择要打印的单据!*/
|
||||
return;
|
||||
}
|
||||
let pks = [];
|
||||
let delinfos = [];
|
||||
let pk_orgs = new Set();
|
||||
let billtype = FIELD ? FIELD.billtype : null;
|
||||
// 废品处理不需要打印次数控制
|
||||
let printLimitFlag = false;
|
||||
checkeddatas.forEach((element) => {
|
||||
let pk = '';
|
||||
if (element.data.values.cspecialhid) {
|
||||
/**
|
||||
* 盘点、转库、形态转换、组装、拆卸,表头主键为cspecialhid
|
||||
*/
|
||||
pk = element.data.values.cspecialhid.value;
|
||||
} else if (element.data.values.cgeneralhid) {
|
||||
/**
|
||||
* 废品处理,表头主键为cgeneralhid
|
||||
*/
|
||||
pk = element.data.values.cgeneralhid.value;
|
||||
printLimitFlag = true;
|
||||
}
|
||||
|
||||
pks.push(pk);
|
||||
// 拼装校验打印权限的数组
|
||||
let pkData = {
|
||||
id: pk
|
||||
};
|
||||
delinfos.push(pkData);
|
||||
pk_orgs.add(element.data.values.pk_org.value);
|
||||
});
|
||||
// 用于校验的数组
|
||||
let data = { delinfos: delinfos };
|
||||
// 先发一个请求校验权限,然后再发请求去打印
|
||||
ajax({
|
||||
url: URL.printpermission,
|
||||
data: data,
|
||||
method: 'post',
|
||||
success: (res) => {
|
||||
if (res.success) {
|
||||
if (printLimitFlag) {
|
||||
print(
|
||||
'pdf', //支持两类: 'html'为模板打印, 'pdf'为pdf打印
|
||||
URL.print,
|
||||
{
|
||||
nodekey: null, //模板节点标识
|
||||
oids: pks // 功能节点的数据主键 oids含有多个元素(['1001A41000000000A9LR','1001A410000000009JDD'])时为批量打印,
|
||||
}
|
||||
);
|
||||
} else {
|
||||
/**
|
||||
* appcode 单据的应用编码(一般不用传,方法内部自己抓取,如果需要打印的模板和当前appcode不同,需要业务组自己传一下)
|
||||
* nodekey 模板节点标识
|
||||
* oids 单据主键
|
||||
* printType 传true表示根据打印次数设置走插件打印,传false直接走pdf打印
|
||||
* realData 传true表示打印真数据,传false表示打印假数据
|
||||
* controlPrintNum 加了这个参数前端才会走打印次数查询,默认不走次数查询
|
||||
*/
|
||||
printPreview(props, URL.print, {
|
||||
appcode: props.getAppCode(),
|
||||
nodekey: null,
|
||||
oids: pks,
|
||||
printType: true,
|
||||
realData: true,
|
||||
pk_org: pk_orgs,
|
||||
billtype: billtype,
|
||||
controlPrintNum: true
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
|
@ -0,0 +1,88 @@
|
|||
/*
|
||||
* @Author: zhengylr
|
||||
* @PageInfo: 库存调整,列表,打印清单按钮
|
||||
* @Date: 2022-01-06 16:39:35
|
||||
*/
|
||||
import { print, ajax } from 'nc-lightapp-front';
|
||||
import { showErrorInfo } from '../../../../../scmpub/scmpub/pub/tool/messageUtil';
|
||||
import { getLangByResId } from '../../../../../scmpub/scmpub/pub/tool/multiLangUtil';
|
||||
import poc from 'uap/common/components/printOnClient';
|
||||
const { printPreview } = poc;
|
||||
export default function(props, constance) {
|
||||
let { URL, AREA, FIELD } = constance;
|
||||
let checkeddatas = props.table.getCheckedRows(AREA.head);
|
||||
if (checkeddatas.length == 0) {
|
||||
showErrorInfo(null, getLangByResId(this, '4008PUB-000208')); /* 国际化处理: 请选择要打印的单据!*/
|
||||
return;
|
||||
}
|
||||
let pks = [];
|
||||
let delinfos = [];
|
||||
let pk_orgs = new Set();
|
||||
let billtype = FIELD ? FIELD.billtype : null;
|
||||
// 废品处理不需要打印次数控制
|
||||
let printLimitFlag = false;
|
||||
checkeddatas.forEach((element) => {
|
||||
let pk = '';
|
||||
if (element.data.values.cspecialhid) {
|
||||
/**
|
||||
* 盘点、转库、形态转换、组装、拆卸,表头主键为cspecialhid
|
||||
*/
|
||||
pk = element.data.values.cspecialhid.value;
|
||||
} else if (element.data.values.cgeneralhid) {
|
||||
/**
|
||||
* 废品处理,表头主键为cgeneralhid
|
||||
*/
|
||||
pk = element.data.values.cgeneralhid.value;
|
||||
printLimitFlag = true;
|
||||
}
|
||||
|
||||
pks.push(pk);
|
||||
// 拼装校验打印权限的数组
|
||||
let pkData = {
|
||||
id: pk
|
||||
};
|
||||
delinfos.push(pkData);
|
||||
pk_orgs.add(element.data.values.pk_org.value);
|
||||
});
|
||||
// 用于校验的数组
|
||||
let data = { delinfos: delinfos };
|
||||
// 先发一个请求校验权限,然后再发请求去打印
|
||||
ajax({
|
||||
url: URL.printpermission,
|
||||
data: data,
|
||||
method: 'post',
|
||||
success: (res) => {
|
||||
if (res.success) {
|
||||
if (printLimitFlag) {
|
||||
print(
|
||||
'pdf', //支持两类: 'html'为模板打印, 'pdf'为pdf打印
|
||||
URL.print,
|
||||
{
|
||||
nodekey: null, //模板节点标识
|
||||
oids: pks // 功能节点的数据主键 oids含有多个元素(['1001A41000000000A9LR','1001A410000000009JDD'])时为批量打印,
|
||||
}
|
||||
);
|
||||
} else {
|
||||
/**
|
||||
* appcode 单据的应用编码(一般不用传,方法内部自己抓取,如果需要打印的模板和当前appcode不同,需要业务组自己传一下)
|
||||
* nodekey 模板节点标识
|
||||
* oids 单据主键
|
||||
* printType 传true表示根据打印次数设置走插件打印,传false直接走pdf打印
|
||||
* realData 传true表示打印真数据,传false表示打印假数据
|
||||
* controlPrintNum 加了这个参数前端才会走打印次数查询,默认不走次数查询
|
||||
*/
|
||||
printPreview(props, URL.print, {
|
||||
appcode: props.getAppCode(),
|
||||
nodekey: 'listing_print',
|
||||
oids: pks,
|
||||
pk_org: pk_orgs,
|
||||
billtype: billtype,
|
||||
printType: true,
|
||||
realData: true,
|
||||
controlPrintNum: true
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
|
@ -0,0 +1,128 @@
|
|||
/*
|
||||
* @Author: yinliang
|
||||
* @PageInfo: 库存调整,审批流单据,列表,按钮可用性设置
|
||||
* @Date: 2018-12-17 16:57:21
|
||||
* @Last Modified by: yinliang
|
||||
* @Last Modified time: 2019-01-05 19:24:48
|
||||
*/
|
||||
|
||||
export default function clickBtn(props, refresh, constance) {
|
||||
let { BUTTONID, DISABLEBTNS, AREA, FIELD, GENERATEBILL } = constance;
|
||||
let checkedrows = props.table.getCheckedRows(AREA.head);
|
||||
//处理卡片态返回 按钮控制问题
|
||||
let data = this.props.ViewModel.getData(FIELD.dataSource);
|
||||
if (data && data.simpleTable && checkedrows.length == 0 && !refresh) {
|
||||
let rows = data.simpleTable.rows;
|
||||
for (let i = 0; i < rows.length; i++) {
|
||||
if (rows[i].selected) {
|
||||
checkedrows.push({ index: i, data: rows[i] });
|
||||
}
|
||||
}
|
||||
}
|
||||
if (!checkedrows || Object.keys(checkedrows).length == 0) {
|
||||
//没有选中
|
||||
props.button.setButtonDisabled(DISABLEBTNS.list, true);
|
||||
props.button.setButtonDisabled(GENERATEBILL, true);
|
||||
} else {
|
||||
//有选中,设置全部可用
|
||||
props.button.setButtonDisabled(DISABLEBTNS.list, false);
|
||||
props.button.setButtonDisabled(GENERATEBILL, true);
|
||||
let tabCode = this.state.tabInfo;
|
||||
if (tabCode == 0) {
|
||||
//自由态
|
||||
props.button.setButtonDisabled([ BUTTONID.UnCommit ], true);
|
||||
// 待提交页签下,如果选中的数据有一条审批中、审批通过的单据,收回按钮可用
|
||||
if (checkedrows && checkedrows.length > 1) {
|
||||
// 选择多条数据时,如果有一条单据是审批中状态的,收回按钮可用
|
||||
for (let i = 0; i < checkedrows.length; i++) {
|
||||
if (
|
||||
checkedrows[i].data.values.fbillflag.value == 2 ||
|
||||
checkedrows[i].data.values.fbillflag.value == 4
|
||||
) {
|
||||
props.button.setButtonDisabled([ BUTTONID.UnCommit ], false);
|
||||
//审批通过的单据生成出入库可用
|
||||
if (checkedrows[i].data.values.fbillflag.value == 4) {
|
||||
props.button.setButtonDisabled(GENERATEBILL, false);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
} else if (checkedrows.length == 1) {
|
||||
// 选中一条数据时,如果单据状态不是自由态,提交按钮不可用
|
||||
if (checkedrows[0].data.values.fbillflag.value != 1) {
|
||||
props.button.setButtonDisabled([ BUTTONID.Commit ], true);
|
||||
}
|
||||
// 选中一条数据时,如果单据状态为审批中或者审批通过的单据,收回按钮可用
|
||||
if (
|
||||
checkedrows[0].data.values.fbillflag.value == 2 ||
|
||||
checkedrows[0].data.values.fbillflag.value == 4
|
||||
) {
|
||||
props.button.setButtonDisabled([ BUTTONID.UnCommit ], false);
|
||||
props.button.setButtonDisabled([ BUTTONID.Delete ], true);
|
||||
//审批通过的单据生成出入库可用
|
||||
if (checkedrows[0].data.values.fbillflag.value == 4) {
|
||||
props.button.setButtonDisabled(GENERATEBILL, false);
|
||||
}
|
||||
}
|
||||
}
|
||||
} else if (tabCode == 1) {
|
||||
//审批中
|
||||
props.button.setButtonDisabled([ BUTTONID.Delete, BUTTONID.Commit ], true);
|
||||
// 待提交页签下,如果选中的数据有一条自由态的单据,提交按钮可用
|
||||
if (checkedrows && checkedrows.length > 1) {
|
||||
// 选择多条数据时,如果有一条单据是自由状态的,提交按钮可用
|
||||
for (let i = 0; i < checkedrows.length; i++) {
|
||||
if (checkedrows[i].data.values.fbillflag.value == 1) {
|
||||
props.button.setButtonDisabled([ BUTTONID.Commit ], false);
|
||||
break;
|
||||
}
|
||||
//选择多条时 如果是审批通过状态 设置生成出入库可用
|
||||
if (checkedrows[i].data.values.fbillflag.value == 4) {
|
||||
props.button.setButtonDisabled(GENERATEBILL, false);
|
||||
}
|
||||
}
|
||||
} else if (checkedrows.length == 1) {
|
||||
// 选中一条数据时,如果单据状态不是审批中、审批通过的状态,收回按钮不可用
|
||||
if (
|
||||
checkedrows[0].data.values.fbillflag.value != 2 &&
|
||||
checkedrows[0].data.values.fbillflag.value != 4
|
||||
) {
|
||||
props.button.setButtonDisabled([ BUTTONID.UnCommit ], true);
|
||||
if (checkedrows[0].data.values.fbillflag.value == 4) {
|
||||
props.button.setButtonDisabled(GENERATEBILL, false);
|
||||
}
|
||||
}
|
||||
// 选中一条数据时,如果单据状态为自由态,提交可用
|
||||
if (checkedrows[0].data.values.fbillflag.value == 1) {
|
||||
props.button.setButtonDisabled([ BUTTONID.Commit ], false);
|
||||
props.button.setButtonDisabled([ BUTTONID.Delete ], false);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
if (checkedrows && checkedrows.length == 1) {
|
||||
let billflag = checkedrows[0].data.values.fbillflag.value;
|
||||
if (billflag == 1) {
|
||||
//自由
|
||||
props.button.setButtonDisabled([ BUTTONID.UnCommit ], true);
|
||||
} else if (billflag == 2 || billflag == 4) {
|
||||
props.button.setButtonDisabled([ BUTTONID.Delete, BUTTONID.Commit ], true);
|
||||
//审批中 审批通过
|
||||
if (billflag == 4) {
|
||||
props.button.setButtonDisabled(GENERATEBILL, false);
|
||||
}
|
||||
} else {
|
||||
props.button.setButtonDisabled([ BUTTONID.UnCommit, BUTTONID.Commit ], true);
|
||||
//审批不通过
|
||||
}
|
||||
} else if (checkedrows && checkedrows.length > 1) {
|
||||
// 选择多条数据时,如果有一条单据是自由状态的,提交按钮可用
|
||||
for (let i = 0; i < checkedrows.length; i++) {
|
||||
//选择多条时 如果是审批通过状态 设置生成出入库可用
|
||||
if (checkedrows[i].data.values.fbillflag.value == 4) {
|
||||
props.button.setButtonDisabled(GENERATEBILL, false);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,63 @@
|
|||
/*
|
||||
* @Author: yinliang
|
||||
* @PageInfo: 库存调整,签字单据,列表,按钮可用性设置
|
||||
* @Date: 2018-12-17 16:58:43
|
||||
* @Last Modified by: yinliang
|
||||
* @Last Modified time: 2018-12-17 17:43:02
|
||||
*/
|
||||
|
||||
export default function clickBtn(props, refresh, constance) {
|
||||
let { BUTTONID, DISABLEBTNS, AREA, CONSTFIELD } = constance;
|
||||
let checkedrows = props.table.getCheckedRows(AREA.head);
|
||||
//处理卡片态返回 按钮控制问题
|
||||
let data = this.props.ViewModel.getData(CONSTFIELD.dataSource);
|
||||
if (data && data.simpleTable && checkedrows.length == 0 && !refresh) {
|
||||
let rows = data.simpleTable.rows;
|
||||
for (let i = 0; i < rows.length; i++) {
|
||||
if (rows[i].selected) {
|
||||
checkedrows.push({ index: i, data: rows[i] });
|
||||
}
|
||||
}
|
||||
}
|
||||
if (!checkedrows || Object.keys(checkedrows).length == 0) {
|
||||
//没有选中
|
||||
props.button.setButtonDisabled(DISABLEBTNS.list, true);
|
||||
} else {
|
||||
//有选中,设置全部可用
|
||||
props.button.setButtonDisabled(DISABLEBTNS.list, false);
|
||||
let tabCode = this.state.tabInfo;
|
||||
if (tabCode == 0) {
|
||||
//待签字
|
||||
props.button.setButtonDisabled([ BUTTONID.CancelSign ], true);
|
||||
// 待提待签字页签下,如果选中的数据有一条签字的单据,取消按钮可用
|
||||
if (checkedrows && checkedrows.length > 1) {
|
||||
// 选择多条数据时,如果有一条单据是签字状态的,取消按钮可用
|
||||
for (let i = 0; i < checkedrows.length; i++) {
|
||||
if (checkedrows[i].data.values.fbillflag.value == 3) {
|
||||
props.button.setButtonDisabled([ BUTTONID.CancelSign ], false);
|
||||
break;
|
||||
}
|
||||
}
|
||||
} else if (checkedrows.length == 1) {
|
||||
// 选中一条数据时,如果单据状态不是自由态,签字按钮不可用
|
||||
if (checkedrows[0].data.values.fbillflag.value != 2) {
|
||||
props.button.setButtonDisabled([ BUTTONID.Sign ], true);
|
||||
}
|
||||
// 选中一条数据时,如果单据状态为签字状态的单据,取消签字按钮可用
|
||||
if (checkedrows[0].data.values.fbillflag.value == 3) {
|
||||
props.button.setButtonDisabled([ BUTTONID.CancelSign ], false);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
if (checkedrows && checkedrows.length == 1) {
|
||||
let billflag = checkedrows[0].data.values.fbillflag.value;
|
||||
if (billflag == '2') {
|
||||
//自由
|
||||
} else if (billflag == '3') {
|
||||
//签字
|
||||
props.button.setButtonDisabled([ BUTTONID.Delete, BUTTONID.Sign ], true);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*PPY79RJFFJyDYoTmREUl4+NJDAezS6CHL3b8zM+buPc=*/
|
||||
/*
|
||||
* @Author: raoczh
|
||||
* @PageInfo: 单据追溯
|
||||
|
|
@ -30,5 +29,3 @@ export default function(props, constance) {
|
|||
showTrack: true
|
||||
});
|
||||
}
|
||||
|
||||
/*PPY79RJFFJyDYoTmREUl4+NJDAezS6CHL3b8zM+buPc=*/
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*uT5k+oEednkc6hjX29M6fNGikoAFYg/c44Tc1jMGGIE=*/
|
||||
import { ajax, toast } from 'nc-lightapp-front';
|
||||
import { locationUtil } from '../utils';
|
||||
import { deepClone } from '../../../../scmpub/scmpub/pub/tool/index';
|
||||
|
|
@ -193,5 +192,3 @@ export default function(props, constance, record) {
|
|||
// 设置按钮可用性
|
||||
props.button.setButtonDisabled([ 'CopyLine', 'DeleteLine' ], selectRowNum.length > 0 ? false : true);
|
||||
}
|
||||
|
||||
/*uT5k+oEednkc6hjX29M6fNGikoAFYg/c44Tc1jMGGIE=*/
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*oWmnioR2+Pc+eaaaFt06wq2c8PguFVOei2c+rhN2Aqc=*/
|
||||
import { deepClone } from '../../../../scmpub/scmpub/pub/tool';
|
||||
import { RownoUtils } from '../../../../scmpub/scmpub/pub/tool/cardTableTools';
|
||||
/*
|
||||
|
|
@ -341,5 +340,3 @@ function processCurRow(oldRow, newRow, cwarehouseid) {
|
|||
// }
|
||||
// });
|
||||
// }
|
||||
|
||||
/*oWmnioR2+Pc+eaaaFt06wq2c8PguFVOei2c+rhN2Aqc=*/
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*oqNJ9vD5fVuRxk3NBUNHcZxWoYSR88QmXRLGljqSDSM=*/
|
||||
/*
|
||||
* @Author: xiaoyaoj
|
||||
* @PageInfo: 存量出库按钮处理
|
||||
|
|
@ -22,5 +21,3 @@ export default function clickOutBtn(props, FIELDS) {
|
|||
{ paramInUrl: true }
|
||||
);
|
||||
}
|
||||
|
||||
/*oqNJ9vD5fVuRxk3NBUNHcZxWoYSR88QmXRLGljqSDSM=*/
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*QwCcdu/06Kz5BGRJW8BXmKNGYP2hO1xB37vODmyNC7s=*/
|
||||
import { ajax } from 'nc-lightapp-front';
|
||||
export default function addBtnClick(props, constance) {
|
||||
const { cardURL, FIELD } = constance;
|
||||
|
|
@ -15,5 +14,3 @@ export default function addBtnClick(props, constance) {
|
|||
});
|
||||
|
||||
}
|
||||
|
||||
/*QwCcdu/06Kz5BGRJW8BXmKNGYP2hO1xB37vODmyNC7s=*/
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*yEFK9g/tfoYPkEA8EqhQNj4QR7wohdZB/9Cq3qiITsY=*/
|
||||
/*
|
||||
* @Author: raoczh
|
||||
* @PageInfo: 表体增行按钮
|
||||
|
|
@ -19,5 +18,3 @@ export default function (props, constance) {
|
|||
props.cardTable.addRow(FIELD.cardTable, undefined, null, false);
|
||||
RownoUtils.resetRowNo(props, FIELD.cardTable, 'crowno');
|
||||
}
|
||||
|
||||
/*yEFK9g/tfoYPkEA8EqhQNj4QR7wohdZB/9Cq3qiITsY=*/
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*VS6KhMdCTBC0OlqaTf/zeGRd0D4NI50OQ1Zw30KJ7Ws=*/
|
||||
/*
|
||||
* @Author: raoczh
|
||||
* @PageInfo: 重排行号
|
||||
|
|
@ -13,5 +12,3 @@ export default function addBtnClick(props, constance) {
|
|||
RownoUtils.resetRowNo(props, FIELD.cardTable, 'crowno');
|
||||
props.updatePage(FIELD.formArea, FIELD.cardTable);
|
||||
}
|
||||
|
||||
/*VS6KhMdCTBC0OlqaTf/zeGRd0D4NI50OQ1Zw30KJ7Ws=*/
|
||||
|
|
@ -0,0 +1,16 @@
|
|||
export default function(actionTab, props, id) {
|
||||
if (!this.state.editAble) {
|
||||
this.setState({
|
||||
editAble: true
|
||||
});
|
||||
}
|
||||
//需要为新增的表体行付默认值
|
||||
props.editTable.addRow(actionTab);
|
||||
let addRowNum = props.editTable.getNumberOfRows(actionTab) - 1;
|
||||
props.editTable.setValByKeyAndIndex(actionTab, addRowNum, 'pk_billtype', { value: this.state.selectTypePk });
|
||||
if (actionTab == 'inTable') {
|
||||
props.editTable.setValByKeyAndIndex(actionTab, addRowNum, 'binoutflag', { value: true });
|
||||
} else {
|
||||
props.editTable.setValByKeyAndIndex(actionTab, addRowNum, 'binoutflag', { value: false });
|
||||
}
|
||||
}
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*6Z/9eaUjZ0gHlRPudBRnSfebN+TeXpmy0MFw0VL5JAo=*/
|
||||
/*
|
||||
* @Author: raoczh
|
||||
* @PageInfo: 表体返回按钮
|
||||
|
|
@ -61,5 +60,3 @@ function backtotransfer(props, PAGECODE) {
|
|||
props.pushTo('/' + type);
|
||||
}
|
||||
}
|
||||
|
||||
/*6Z/9eaUjZ0gHlRPudBRnSfebN+TeXpmy0MFw0VL5JAo=*/
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*LI4ozYO5aJWbG8se1wkPZfLMZj3S9EDqz1BpZEl9cTk=*/
|
||||
/*
|
||||
* @Author: raoczh
|
||||
* @PageInfo: 表体粘贴按钮
|
||||
|
|
@ -21,5 +20,3 @@ export default function(props, constance, btnIsDisableCard) {
|
|||
RownoUtils.setRowNo(props, FIELD.cardTable, 'crowno');
|
||||
btnIsDisableCard.call(this, props);
|
||||
}
|
||||
|
||||
/*LI4ozYO5aJWbG8se1wkPZfLMZj3S9EDqz1BpZEl9cTk=*/
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*80feFbJ2zfdDk/nMUVsyf13PygOqt2SeoRBvYQhv8yE=*/
|
||||
/*
|
||||
* @Author: raoczh
|
||||
* @PageInfo: 卡片编辑态点击取消事件
|
||||
|
|
@ -125,5 +124,3 @@ function cancel(props, constance, index, pageQueryClick) {
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*80feFbJ2zfdDk/nMUVsyf13PygOqt2SeoRBvYQhv8yE=*/
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*bOOCONlzfbox0QKiuTCgtxXaWWPDIZBhg8V/NpAfP40=*/
|
||||
import { getLangByResId } from '../../../../../scmpub/scmpub/pub/tool/multiLangUtil';
|
||||
/*
|
||||
* @Author: raoczh
|
||||
|
|
@ -21,5 +20,3 @@ export default function(props, record, constance) {
|
|||
// }
|
||||
props.cardTable.toggleRowView(FIELD.cardTable, record);
|
||||
}
|
||||
|
||||
/*bOOCONlzfbox0QKiuTCgtxXaWWPDIZBhg8V/NpAfP40=*/
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*j5Rddi+EiXr6lL+2HQtAzXt3RxX+hO4+JWaOUy3eH0E=*/
|
||||
/*
|
||||
* @Author: hujieh
|
||||
* @PageInfo: 复制
|
||||
|
|
@ -46,5 +45,3 @@ export default function copyBtnClick(props, constance, id) {
|
|||
}
|
||||
});
|
||||
}
|
||||
|
||||
/*j5Rddi+EiXr6lL+2HQtAzXt3RxX+hO4+JWaOUy3eH0E=*/
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*fY9EK5oz8qtmIQT4kSi2nuiZGI3A6cH/WSc5WQI5ukY=*/
|
||||
/*
|
||||
* @Author: raoczh
|
||||
* @PageInfo: 表体复制行按钮
|
||||
|
|
@ -18,5 +17,3 @@ export default function (props, constance, index = -1, record) {
|
|||
rowCopyPasteUtils.copyRows.call(this, props, FIELD.cardTable, COPYPASTEBTNS.initBtns, COPYPASTEBTNS.pasteBtns);
|
||||
}
|
||||
}
|
||||
|
||||
/*fY9EK5oz8qtmIQT4kSi2nuiZGI3A6cH/WSc5WQI5ukY=*/
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*D6qijQE+tseVhRgdMUhc8Lk1xlF0I+nvKrcoao23eRc=*/
|
||||
/*
|
||||
* @Author: raoczh
|
||||
* @PageInfo: 出库主子孙表卡片态删除功能公共方法
|
||||
|
|
@ -145,5 +144,3 @@ function deleteCard(props, skipCodes, constance, pageQueryClick, _this) {
|
|||
}
|
||||
});
|
||||
}
|
||||
|
||||
/*D6qijQE+tseVhRgdMUhc8Lk1xlF0I+nvKrcoao23eRc=*/
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*zA55aoHexmQNw+wGMcURwtW7gJpeWJQkd4uBmjq3Q5s=*/
|
||||
/*
|
||||
* @Author: raoczh
|
||||
* @PageInfo: 表体删行按钮
|
||||
|
|
@ -33,5 +32,3 @@ export default function(props, constance, index = -1, btnIsDisableCard) {
|
|||
btnIsDisableCard.call(this, props);
|
||||
// RownoUtils.resetRowNo(props, FIELD.cardTable, 'crowno');
|
||||
}
|
||||
|
||||
/*zA55aoHexmQNw+wGMcURwtW7gJpeWJQkd4uBmjq3Q5s=*/
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*rzxqFeC1Q4Nf7h12KpqtZRnBtQE7DgwwLtJydoBDRPY=*/
|
||||
/*
|
||||
* @Author: raoczh
|
||||
* @PageInfo: 卡片态编辑按钮事件
|
||||
|
|
@ -58,5 +57,3 @@ export default function(props, constance) {
|
|||
}
|
||||
});
|
||||
}
|
||||
|
||||
/*rzxqFeC1Q4Nf7h12KpqtZRnBtQE7DgwwLtJydoBDRPY=*/
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*1irVoS/YA3FpVMu4JkeSu6cOMa/OivQVlVs2dcWG/Mg=*/
|
||||
/*
|
||||
* @Author: raoczh
|
||||
* @PageInfo: 单据追溯
|
||||
|
|
@ -19,5 +18,3 @@ export default function(props, constance) {
|
|||
// target: event.target
|
||||
});
|
||||
}
|
||||
|
||||
/*1irVoS/YA3FpVMu4JkeSu6cOMa/OivQVlVs2dcWG/Mg=*/
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*KXGQxSWEZWuz3kk8NlEum3ZVWirIA1FbpfHB4an8fGs=*/
|
||||
/*
|
||||
* @Author: raoczh
|
||||
* @PageInfo: 展开按钮
|
||||
|
|
@ -10,5 +9,3 @@ export default function(props, record, index, constance) {
|
|||
const { FIELD, UISTATE } = constance;
|
||||
props.cardTable.openModel(FIELD.cardTable, UISTATE.edit, record, index);
|
||||
}
|
||||
|
||||
/*KXGQxSWEZWuz3kk8NlEum3ZVWirIA1FbpfHB4an8fGs=*/
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*PS48wEDdYZYrknmCqqbR2vSm8D2tyaq6MAiAMqBDKn8=*/
|
||||
/*
|
||||
* @Author: raoczh
|
||||
* @PageInfo: 单据追溯
|
||||
|
|
@ -17,5 +16,3 @@ export default function (props, constance) {
|
|||
showTrack: true
|
||||
})
|
||||
}
|
||||
|
||||
/*PS48wEDdYZYrknmCqqbR2vSm8D2tyaq6MAiAMqBDKn8=*/
|
||||
|
|
@ -0,0 +1,38 @@
|
|||
/*
|
||||
* @Author: hujieh
|
||||
* @PageInfo: 卡片态翻页查询
|
||||
* @Date: 2018-05-15 17:55:30
|
||||
* @Last Modified by: raoczh
|
||||
* @Last Modified time: 2018-06-02 16:03:18
|
||||
*/
|
||||
import { ajax } from 'nc-lightapp-front';
|
||||
import { PAGECODE, URL, AREA, FIELD } from '../../constance';
|
||||
export default function(props, pk) {
|
||||
/*
|
||||
* 1.this.props.setUrlParam('id具体值')//动态修改地址栏中的id的值
|
||||
* 2.this.props.cardPagination.setCardPaginationVisible('cardPaginationBtn', false);//设置看片翻页的显隐性
|
||||
* 3.this.props.cardPagination.setCardPaginationId (idObj)//暴露出最新的id值(idObj={id:'sdfas',status:1;}) 1 修改、2 新增、3 删除
|
||||
*/
|
||||
if (!pk || pk == 'undefined') {
|
||||
return;
|
||||
}
|
||||
props.setUrlParam(pk); //动态修改地址栏中的id的值(路径中一定要是id,否则会导致切换下一条的时候,pk取不到)
|
||||
|
||||
let data = { pageid: PAGECODE.card, pk: pk };
|
||||
ajax({
|
||||
url: URL.queryCardURL,
|
||||
data: data,
|
||||
method: 'post',
|
||||
success: (res) => {
|
||||
if (!res.data) {
|
||||
this.props.cardTable.setTableData(FIELD.cardTable, { rows: [] });
|
||||
return;
|
||||
}
|
||||
this.props.form.setAllFormValue({ [AREA.formArea]: res.data.head[AREA.formArea] });
|
||||
this.props.cardTable.setTableData(AREA.bodyTable, res.data.body[AREA.bodyTable]);
|
||||
this.setState({
|
||||
billcode: res.data.head[AREA.formArea].rows[0].values.vbillcode.value
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*f0JfMjUngRu2xmNXuho8gsZ+iJhwg1FHK1soeG5C4GU=*/
|
||||
/*
|
||||
* @Author: raoczh
|
||||
* @PageInfo: 表体粘贴按钮
|
||||
|
|
@ -98,5 +97,3 @@ export default function(props, constance, btnIsDisableCard, index = -1, record)
|
|||
// RownoUtils.resetRowNo(props, FIELD.cardTable, 'crowno');
|
||||
props.updatePage(FIELD.formArea, FIELD.cardTable);
|
||||
}
|
||||
|
||||
/*f0JfMjUngRu2xmNXuho8gsZ+iJhwg1FHK1soeG5C4GU=*/
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*VqFTX17u5c5T6CGoj9nmVaA5WcDCfkQEdaz6QYwY2Gg=*/
|
||||
/*
|
||||
* @Author: raoczh
|
||||
* @PageInfo: 打印按钮功能
|
||||
|
|
@ -74,5 +73,3 @@ export default function printBtnClick(props, constance, type) {
|
|||
});
|
||||
}
|
||||
}
|
||||
|
||||
/*VqFTX17u5c5T6CGoj9nmVaA5WcDCfkQEdaz6QYwY2Gg=*/
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*nTIuhwFhJrt5GOmheaYSQVGYOgIJXx7GcLYasGcTx30=*/
|
||||
/*
|
||||
* @Author: raoczh
|
||||
* @PageInfo: 打印按钮功能
|
||||
|
|
@ -36,5 +35,3 @@ export default function printBtnClick(props, constance, type) {
|
|||
});
|
||||
return;
|
||||
}
|
||||
|
||||
/*nTIuhwFhJrt5GOmheaYSQVGYOgIJXx7GcLYasGcTx30=*/
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
/*2Biq5HLF0vaXR5VkEa+QwhEp9t/C8l8tEaFqJeCR1Ig=*/
|
||||
/*
|
||||
* @Author: raoczh
|
||||
* @PageInfo: 打印按钮功能
|
||||
|
|
@ -43,5 +42,3 @@ export default function printBtnClick(props, constance, nodekey) {
|
|||
}
|
||||
);
|
||||
}
|
||||
|
||||
/*2Biq5HLF0vaXR5VkEa+QwhEp9t/C8l8tEaFqJeCR1Ig=*/
|
||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue