解决冲突

This commit is contained in:
jiashuai 2025-09-17 17:13:34 +08:00
commit 6d60e76942
15 changed files with 1019 additions and 922 deletions

View File

@ -1,15 +1,13 @@
import {ajax, base, toast} from 'nc-lightapp-front';
import {AREA, DIALOGCODE, FIELD, URL} from '../../constance';
import {getLangByResId} from '../../../../../mmpub/mmpub/pub/tool/multiLangUtil';
import {showWarningInfo} from '../../../../../mmpub/mmpub/pub/tool/messageUtil';
import PickmBorrowDlg from "../../pickmborrow/list";
import {borrowOkBtnClick} from "./index";
let {NCModal, NCButton, NCTooltip, NCHotKeys} = base;
const TABLE_HEAD = 'borrow_list';
export default function borrowBtnClick(props, record) {
let _this = this;
this.bodyDatas = {};
this.props = {};
let setProps = (val) => {
this.props = val;
@ -33,7 +31,7 @@ export default function borrowBtnClick(props, record) {
let param = {
cpickmid: hid,
cpickmbids: bids,
pageid: DIALOGCODE.CLQUERYDLG,
pageid: DIALOGCODE.BORROWDLG,
appcode: appcode
}
ajax({
@ -41,165 +39,21 @@ export default function borrowBtnClick(props, record) {
data: param,
success: res => {
if (res.success && res.data) {
// let showdata = res.data;
let rows = res.data.data;
// console.log('bids = ', bids);
/*let rows1 = [];
rows.map((item) => {
let values = item.data.values;
// 借料数量 = 计划出库数量-累计出库数量-累计发货数量-累计委外数量所有数值用getNumber处理null转0
values.borrowedQty = {
value: getNumber(values.nplanoutastnum) - getNumber(values.naccoutastnum) -
getNumber(values.nshouldastnum) - getNumber(values.npscastnum)
};
let form = props.form.getAllFormValue(AREA.formArea);
values.cmaterialvid = form.rows[0].values["cmaterialvid"];
values.cmaterialvidName = {
value: form.rows[0].values["cmaterialvid.name"].value
};
if (undefined != form.rows[0].values["cmaterialvid.def26"]) {
values.cmaterialvidDef26 = {
value: form.rows[0].values["cmaterialvid.def26"].value
};
}
let rowItem = {
isOptimized: false,
status: '0',
values: values
};
// 确保 bids 是数组类型
if (!Array.isArray(bids)) {
bids = [bids];
}
if (values.cpickm_bid && values.cpickm_bid.value && (bids.indexOf(values.cpickm_bid.value) > -1) && values.borrowedQty.value > 0) {
rows1.push(rowItem);
}
});*/
props.modal.show('BorrowDlg', {
let showData = res.data.data;
props.modal.show(AREA.BORROW_DLG, {
size: 'max',
title: getLangByResId(this, '5008Pickm-000093'),/* 国际化处理: 替代*/
content: <PickmBorrowDlg showdata={rows}
title: '借料入库明细',
content: <PickmBorrowDlg showdata={showData}
setProps={setProps}/>,
userControl: true,
// leftBtnName: '',
// rightBtnName: getLangByResId(this, '5008Pickm-000013'),/* 国际化处理: 取消*/
beSureBtnClick: oKBtnClicks.bind(this, props, true),
beSureBtnClick: borrowOkBtnClick.bind(this, props, true),
cancelBtnClick: () => {
props.modal.close('BorrowDlg');
props.modal.close(AREA.BORROW_DLG);
}
});
}
}
});
}
function oKBtnClicks(props) {
let rowids = [];
let hids = [];
let hid;
let rows = props.table.getCheckedRows(AREA.borrowMaterialDialog);
hid = props.form.getFormItemsValue(AREA.formArea, FIELD.hid).value;
hids.push(hid);
// 如果没有选中行,则提示并返回,不进行任何操作
if (!rows || rows.length <= 0) {
showWarningInfo('请选择行');
return;
}
for (let i = 0; i < rows.length; i++) {
rowids.push(rows[i].data.values.cpickm_bid.value);
}
let data = {
cpickmids: hids,
cpickmbids: rowids
}
console.log('data = ', data);
ajax({
url: URL.pickmItemsQuery,
data: data,
success: res => {
if (res.success && res.data) {
if (res.success) {
toast({color: 'success', title: "推送成功"});
this.props.modal.close(AREA.borrowMaterialDialog);
}
}
},
error: (error) => {
toast({
color: 'warning',
content: error.message
});
}
});
}
function doQuery(props, hid, bids, rows) {
let appcode = props.getAppCode();
ajax({
url: '/nccloud/mmpac/pickm/pickmItemsQuery.do',
data: {
cpickmid: hid,
cpickmbids: bids,
pageid: DIALOGCODE.CLQUERYDLG,
appcode: appcode
},
success: res => {
let bids = res.data.data;
// console.log('bids = ', bids);
let rows1 = [];
rows.map((item) => {
let values = item.data.values;
// 借料数量 = 计划出库数量-累计出库数量-累计发货数量-累计委外数量所有数值用getNumber处理null转0
values.borrowedQty = {
value: getNumber(values.nplanoutastnum) - getNumber(values.naccoutastnum) -
getNumber(values.nshouldastnum) - getNumber(values.npscastnum)
};
let def26 = this.props.form.getFormItemsValue(AREA.formArea, "cmaterialvid").value;
// let def27 = this.props.form.getFormItemsValue(AREA.formArea,"cmaterialvid.name").value;
let form = this.props.form.getAllFormValue(AREA.formArea);
values.cmaterialvid = form.rows[0].values["cmaterialvid"];
values.cmaterialvidName = {
value: form.rows[0].values["cmaterialvid.name"].value
};
if (undefined != form.rows[0].values["cmaterialvid.def26"]) {
values.cmaterialvidDef26 = {
value: form.rows[0].values["cmaterialvid.def26"].value
};
}
let rowItem = {
isOptimized: false,
status: '0',
values: values
};
// 确保 bids 是数组类型
if (!Array.isArray(bids)) {
bids = [bids];
}
// 筛选出未生成的行
// console.log('values.cpickm_bid = ', values.cpickm_bid.value);
// console.log('values.indexOf = ', bids.indexOf(values.cpickm_bid.value));
if (values.cpickm_bid && values.cpickm_bid.value && (bids.indexOf(values.cpickm_bid.value) > -1) && values.borrowedQty.value > 0) {
rows1.push(rowItem);
}
});
let data = {
areacode: 'clquery',
rows: rows1
};
// console.log('rows = ', rows);
// console.log('data = ', data);
props.table.setAllTableData(AREA.borrowMaterialDialog, data);
props.modal.show(AREA.borrowMaterialDialog);
}
});
}
// 本地安全数值转换方法null/undefined/空对象转0
function getNumber(data) {
if (data && data.value != null) {
return +data.value;
} else {
return 0;
}
}

View File

@ -0,0 +1,62 @@
import {ajax, base, toast} from 'nc-lightapp-front';
import {AREA, FIELD, URL} from '../../constance';
import {showWarningInfo} from '../../../../../mmpub/mmpub/pub/tool/messageUtil';
let {NCModal, NCButton, NCTooltip, NCHotKeys} = base;
export default function borrowOkBtnClick(props) {
let rowids = [];
let hids = [];
let hid;
let rows = this.props.editTable.getCheckedRows(AREA.borrowList);
hid = props.form.getFormItemsValue(AREA.formArea, FIELD.hid).value;
hids.push(hid);
// 如果没有选中行,则提示并返回,不进行任何操作
if (!rows || rows.length <= 0) {
showWarningInfo('请选择行');
return;
}
for (let i = 0; i < rows.length; i++) {
rowids.push(rows[i].data.values.cpickm_bid.value);
}
let newRows = rows.map((item) => {
return {
cpickm_bid: item.data.values.cpickm_bid.value || '',
pk_batchcode: item.data.values.pk_batchcode.value || '',
vbatchcode: item.data.values.vbatchcode.value || '',
cprojectid: item.data.values.cprojectid.value || '',
cproductorid: item.data.values.cproductorid.value || ''
};
});
let data = {
cpickmids: hids,
cpickmbids: rowids,
rows: newRows
}
// console.log('data = ', data);
ajax({
url: URL.convertOtherIn,
data: data,
success: res => {
if (res.success && res.data) {
// console.log('res.data = ', res.data);
let msg = ',单号:';
if (res.data.data) {
msg = msg + res.data.data.map((item) => {
return item.parent.valueIndex.vbillcode;
}).join(',');
} else {
msg = '';
}
toast({color: 'success', title: "操作成功" + msg});
props.modal.close(AREA.BORROW_DLG);
}
},
error: (error) => {
toast({
color: 'warning',
content: error.message
});
}
});
}

View File

@ -24,10 +24,12 @@ import reserveBtnClick from './reserveBtnClick';
import reserveQueryBtnClick from './reserveQueryBtnClick';
import detailqueryBtnClick from './detailqueryBtnClick';
import pushrzmsBtnClick from './pushrzmsBtnClick.js'; //推送锐制
import borrowBtnClick from './borrowBtnClick.js';
import borrowOkBtnClick from "./borrowOkBtnClick.js";
export {
pageInfoClick, getParentURlParme, setBtnShow, backBtnClick, addBtnClick, delBtnClick,
editBtnClick, cancelBtnClick, saveBtnClick, saveCommitBtnClick, copyBtnClick,
commitBtnClick, unCommitBtnClick, printBtnClick, outputBtnClick, subItemsBtnClick,
finishBtnClick, unfinishBtnClick, clqueryBtnClick, replaceBtnClick,reserveBtnClick,reserveQueryBtnClick,detailqueryBtnClick,
pageInfoClickPage,pushrzmsBtnClick
pageInfoClickPage,pushrzmsBtnClick, borrowBtnClick, borrowOkBtnClick
};

View File

@ -272,7 +272,7 @@ class PickmCard extends Component {
{createModal('TakeOverDlg', {zIndex: "300"})}
{createModal('SetBackDeliverDlg', {zIndex: "280"})}
{createModal('ReplaceDlg', {zIndex: "300"})}
{createModal('BorrowDlg', {zIndex: "300"})}
{/*{createModal('BorrowDlg', {zIndex: "300"})}*/}
{createModal(AREA.borrowMaterialDialog, {
title: '借料入库明细',
@ -285,7 +285,7 @@ class PickmCard extends Component {
let rowids = [];
let hids = [];
let hid;
let rows = this.props.table.getCheckedRows(AREA.borrowMaterialDialog);
let rows = this.props.table.getCheckedRows(AREA.borrowMaterialDialog);
hid = this.props.form.getFormItemsValue(AREA.formArea, FIELD.hid).value;
hids.push(hid);
// 如果没有选中行,则提示并返回,不进行任何操作
@ -293,7 +293,7 @@ class PickmCard extends Component {
showWarningInfo('请选择行');
return;
}
for (let i = 0; i < rows.length; i++){
for (let i = 0; i < rows.length; i++) {
rowids.push(rows[i].data.values.cpickm_bid.value);
}
let data = {

View File

@ -1,28 +1,28 @@
import {
backBtnClick,
addBtnClick,
delBtnClick,
editBtnClick,
backBtnClick,
cancelBtnClick,
saveBtnClick,
saveCommitBtnClick,
copyBtnClick,
commitBtnClick,
unCommitBtnClick,
printBtnClick,
outputBtnClick,
subItemsBtnClick,
finishBtnClick,
unfinishBtnClick,
clqueryBtnClick,
replaceBtnClick,
commitBtnClick,
copyBtnClick,
delBtnClick, detailqueryBtnClick,
editBtnClick,
finishBtnClick,
outputBtnClick,
pageInfoClick,
printBtnClick,
pushrzmsBtnClick,
replaceBtnClick,
reserveBtnClick,
reserveQueryBtnClick,
detailqueryBtnClick,pushrzmsBtnClick
} from '../btnClicks';//
saveBtnClick,
saveCommitBtnClick,
subItemsBtnClick,
unCommitBtnClick,
unfinishBtnClick
} from '../btnClicks'; //
import newLineDefaultUtil from '../utils/newLineDefaultUtil';
import {CARD_BTN, AREA, URL, PAGECARDCODE, FIELD, UISTATE, DIALOGCODE, PickmCache, appcode} from '../../constance';
import {AREA, CARD_BTN, DIALOGCODE, FIELD, PAGECARDCODE, PickmCache, UISTATE, URL} from '../../constance';
import {RownoUtils} from '../../../../../mmpub/mmpub/pub/tool/cardTableTools';
import {rowCopyPasteUtils} from '../utils/rowCopyPasteUtils';
import {checkDeleteRows} from '../utils/rowDeleteUtil';
@ -31,18 +31,14 @@ import {ajax, cacheTools} from 'nc-lightapp-front';
import {setBtnShow} from '../btnClicks/pageInfoClick';
import {pickmSetDeliver} from '../../../pub/pickmdeliverwithset';
import {updateCacheData} from '../../../../../mmpub/mmpub/pub/cache/cacheDataManager';
import {
showSuccessInfo,
showErrorInfo,
showWarningInfo,
showWarningDialog
} from '../../../../../mmpub/mmpub/pub/tool/messageUtil';
import {showWarningInfo} from '../../../../../mmpub/mmpub/pub/tool/messageUtil';
import {pickmBackDeliver} from '../../../pub/pickmbackdeliver';
import {pickmTakeOver} from '../../../pub/pickmtakeover';
import {getLangByResId} from '../../../../../mmpub/mmpub/pub/tool/multiLangUtil';
import {pickmBackDeliverWithSet} from '../../../pub/pickmbackdeliverwithset';
import {toast} from "../../../../../gl/public/components/utils";
import borrowBtnClick from "../btnClicks/borrowBtnClick";
import {showWarningDialog} from "../../../../../scmpub/scmpub/pub/tool/messageUtil";
export default async function clickBtn(props, id, text, record, index) {
let _this = this;
@ -819,6 +815,29 @@ export default async function clickBtn(props, id, text, record, index) {
showWarningInfo(getLangByResId(this, '5008Pickm-000061'));
return;
}
// console.log('selectRows = ', selectRows);
// 判断选中行的借料数量是否>0,如果存在<=0的行则提示并返回
let hasInvalidRow = false;
let warningMessage = getLangByResId(this, '5008Pickm-000106'); /* 国际化处理: 借料数量必须大于0*/
// for (const item of selectRows) {
// let values = item.data.values;
// // 借料数量 = 计划出库数量-累计出库数量-累计发货数量-累计委外数量
// let borrowedQty = getNumber(values.nplanoutastnum) - getNumber(values.naccoutastnum) -
// getNumber(values.nshouldastnum) - getNumber(values.npscastnum);
// if (borrowedQty <= 0) {
// hasInvalidRow = true;
// // 获取行号用于提示信息
// let vrowno = props.cardTable.getValByKeyAndIndex(AREA.bodyTable, item.index, 'vrowno');
// warningMessage = warningMessage + ' 行号:' + `[${vrowno.value}]`;
// break;
// }
// }
// if (hasInvalidRow) {
// showErrorInfo('错误', warningMessage);
// return;
// }
billstatus = props.form.getFormItemsValue(AREA.formArea, 'fbillstatus');
//审批态
if (billstatus && billstatus.value && billstatus.value == 1) {
@ -832,6 +851,83 @@ export default async function clickBtn(props, id, text, record, index) {
case CARD_BTN.pushrzmes:
pushrzmsBtnClick.call(this, props);
break;
case "to_buying"://请购
showWarningDialog("是否生成请购单", "", {
/* 国际化处理: 确认终止,是否确定将此合同终止*/
beSureBtnClick: () => {
hids = [];
bids = [];
cpickmid = props.form.getFormItemsValue(AREA.formArea, FIELD.hid).value;
rows = this.props.cardTable.getCheckedRows(AREA.bodyTable);
// 如果没有选中行,则提示并返回,不进行任何操作
if (!rows || rows.length <= 0) {
hid = this.props.form.getFormItemsValue(AREA.formArea, FIELD.hid).value;
} else {
rows.map((item) => {
var cpickm_bid = props.cardTable.getValByKeyAndIndex(AREA.bodyTable, item.index, 'cpickm_bid').value;
bids.push(cpickm_bid);
});
}
if (cpickmid) {
hids.push(cpickmid);
}
data = {
cpickmids: hids,
cpickmbids:bids
}
ajax({
url:'/nccloud/mmpac/pickm/buyingreq.do',
data: data,
success: (res) => {
if(res.success){
toast({ content: "请购单推送成功", color: 'success' });
}
}
});
}
});
break;
case "to_pmo"://流程生产订单
showWarningDialog("是否生成生产订单", "", {
/* 国际化处理: 确认终止,是否确定将此合同终止*/
beSureBtnClick: () => {
hids = [];
bids = [];
cpickmid = props.form.getFormItemsValue(AREA.formArea, FIELD.hid).value;
rows = this.props.cardTable.getCheckedRows(AREA.bodyTable);
// 如果没有选中行,则提示并返回,不进行任何操作
if (!rows || rows.length <= 0) {
hid = this.props.form.getFormItemsValue(AREA.formArea, FIELD.hid).value;
} else {
rows.map((item) => {
var cpickm_bid = props.cardTable.getValByKeyAndIndex(AREA.bodyTable, item.index, 'cpickm_bid').value;
bids.push(cpickm_bid);
});
}
if (cpickmid) {
hids.push(cpickmid);
}
data = {
cpickmids: hids,
cpickmbids:bids
}
ajax({
url: '/nccloud/mmpac/pickm/pom.do',
data: data,
success: (res) => {
if(res.success){
toast({ content: "流程生产订单推送成功", color: 'success' });
}
}
});
}
});
break
default:
break;
}

View File

@ -70,13 +70,13 @@ const CARD_BTN = {
Refresh: 'Refresh',//刷新
drop_more: 'drop_more',
pushrzmes:'pushrzmes',//推送锐制
pushrzmes: 'pushrzmes',//推送锐制
PickmDelivery: 'PickmDelivery',//领料
PickmDeliveryWithSet: 'PickmDeliveryWithSet',//成套领料
PickmReDeliveryWithSet: 'PickmReDeliveryWithSet',//补成套领料
ToReqPickm: 'ToReqPickm',//备料
toOtherWarehouse: 'toOtherWarehouse',//其他入库
DirectTrans: 'DirectTrans',//直接备料
PickmBackDelivery: 'PickmBackDelivery',//退料
@ -202,7 +202,7 @@ const URL = {
setBackDeliverQueryURL: '/nccloud/mmpac/pickm/setbackdeliverquery.do',
setBackDeliverComputURL: '/nccloud/mmpac/pickm/setbackdelivercomput.do',
checkToReqpickm: '/nccloud/mmpac/pickm/checktoreqpickm.do',
checkToDirectTrans:'/nccloud/mmpac/pickm/checktoDirectTrans.do',
checkToDirectTrans: '/nccloud/mmpac/pickm/checktoDirectTrans.do',
toReqpickm: '/reqpickm',
noItemDeliverQueryURL: '/nccloud/mmpac/pickm/noitemdeliverquery.do',
noItemDeliverURL: '/nccloud/mmpac/pickm/noitemdeliver.do',
@ -211,12 +211,13 @@ const URL = {
replaceQueryURL: '/nccloud/mmpac/pickm/replaceQuery.do',
replaceBodyQueryURL: '/nccloud/mmpac/pickm/replaceBodyQuery.do',
replaceDoURL: '/nccloud/mmpac/pickm/replace.do',
replaceAutoMatchURL:'/nccloud/mmpac/pickm/replaceAutoMatch.do',
replaceAutoMatchURL: '/nccloud/mmpac/pickm/replaceAutoMatch.do',
deleteLineURL: '/nccloud/mmpac/pickm/deleteline.do',
queryByCondURL:'/nccloud/mmpac/pickm/queryByCond.do',
convertOtherIn:'/nccloud/mmpac/pickm/convertOtherIn.do',
pickmItemsQuery:'/nccloud/mmpac/pickm/pickmItemsQuery.do',
pushrzmsURL:'/nccloud/mmpac/pickm/pushrzmes.do'
queryByCondURL: '/nccloud/mmpac/pickm/queryByCond.do',
convertOtherIn: '/nccloud/mmpac/pickm/convertOtherIn.do',
pickmItemsQuery: '/nccloud/mmpac/pickm/pickmItemsQuery.do',
pickmIdsQuery: '/nccloud/mmpac/pickm/pickmByIdsQuery.do',
pushrzmsURL: '/nccloud/mmpac/pickm/pushrzmes.do'
};
const tabURL = '/list';
@ -257,6 +258,7 @@ const FIELD = {
cbastunitid: 'cbastunitid',
vbatchcode: 'vbatchcode',
vsrcid: 'vsrcid', //来源单据id
pk_group: 'pk_group', //集团
};
//表头不可修改字段
const headDisableFields = [
@ -479,24 +481,24 @@ let clearItems = [
'vfree10'
];
const headfixAssts = [
'cvendorid',
'cvendorvid',
'cproductorid',
'cprojectid',
'ccustomerid',
'ccustomervid'
// 'cqualitylevelid',
//'cffileid'
'cvendorid',
'cvendorvid',
'cproductorid',
'cprojectid',
'ccustomerid',
'ccustomervid'
// 'cqualitylevelid',
//'cffileid'
];
const bodyfixAssts = [
'cbvendorid',
'cbvendorvid',
'cbproductorid',
'cbprojectid',
'cbcustomerid',
'cbcustomervid'
// 'cbqualitylevelid',
//'cbffileid'
'cbvendorid',
'cbvendorvid',
'cbproductorid',
'cbprojectid',
'cbcustomerid',
'cbcustomervid'
// 'cbqualitylevelid',
//'cbffileid'
];
const headCustAndSupFild = {
ccustomerid: 'ccustomerid',

View File

@ -337,6 +337,7 @@ class PickmList extends Component {
{createModal('BackDeliverDlg')}
{createModal('BackSerialnoDlg')}
{createModal('SetBackDeliverDlg')}
{/*{createModal('BorrowDlg')}*/}
{createModal('NCTable_3c81fe87', {
title: '借料入库明细',
content: (
@ -389,7 +390,7 @@ class PickmList extends Component {
this.props.modal.close('NCTable_3c81fe87')
},
userControl: true
})}
})}
</div>
);
}

View File

@ -1,22 +1,43 @@
import { LIST_BTN, PAGECODE, AREA, FIELD, UISTATE, URL, ListTabCode, PickmCache, PAGECARDCODE, DIALOGCODE, appcode } from '../../constance';
import {
LIST_BTN,
PAGECODE,
AREA,
FIELD,
UISTATE,
URL,
ListTabCode,
PickmCache,
PAGECARDCODE,
DIALOGCODE,
appcode, FbillStatus
} from '../../constance';
import {
commonSearch, searchBtnClick, deleteBtnClick, commitBtnClick, uncommitBtnClick, printBtnClick, outputBtnClick,
finishBtnClick, unfinishBtnClick, clqueryBtnClick
} from '../btnClicks/index';
import { setDefData, getDefData } from '../../../../../mmpub/mmpub/pub/cache';
import { pickmSetDeliver } from '../../../pub/pickmdeliverwithset';
import { pickmBackDeliver } from '../../../pub/pickmbackdeliver';
import { pickmBackDeliverWithSet } from '../../../pub/pickmbackdeliverwithset';
import { clearTransferCache } from '../../../../../mmpub/mmpub/pub/cache';
import { getLangByResId } from '../../../../../mmpub/mmpub/pub/tool/multiLangUtil';
import { tableBeforeEdit } from '../../../../../mmpub/mmpub/pub/tool/listBeforeEditCardUtil';
import {setDefData, getDefData} from '../../../../../mmpub/mmpub/pub/cache';
import {pickmSetDeliver} from '../../../pub/pickmdeliverwithset';
import {pickmBackDeliver} from '../../../pub/pickmbackdeliver';
import {pickmBackDeliverWithSet} from '../../../pub/pickmbackdeliverwithset';
import {clearTransferCache} from '../../../../../mmpub/mmpub/pub/cache';
import {getLangByResId} from '../../../../../mmpub/mmpub/pub/tool/multiLangUtil';
import {tableBeforeEdit} from '../../../../../mmpub/mmpub/pub/tool/listBeforeEditCardUtil';
import {
showWarningInfo
} from '../../../../../mmpub/mmpub/pub/tool/messageUtil';
import listbuttonController from '../viewController/buttonController';
import { updateCacheDataForList } from '../../../../../mmpub/mmpub/pub/cache';
import { ajax, cacheTools,toast } from 'nc-lightapp-front';
import {updateCacheDataForList} from '../../../../../mmpub/mmpub/pub/cache';
import {ajax, cacheTools, toast} from 'nc-lightapp-front';
import PickmBorrowDlg from "../../pickmborrow/list";
import {borrowOkBtnClick} from "../../card/btnClicks";
import {showWarningDialog} from "../../../../../scmpub/scmpub/pub/tool/messageUtil";
import {FIELDS} from "../../../../../ct/ct/purdaily/constance";
import {
cardBaseScriptAction,
isShowScriptActionDlg,
showCardScriptActionDlg
} from "../../../../../ct/ct/purdaily/utils/baseScriptUtil";
export default function (props, key, text, record, index) {
let pk = null;
@ -40,7 +61,7 @@ export default function (props, key, text, record, index) {
searchBtnClick.call(this);
break;
case LIST_BTN.Add: // 新增
props.pushTo(URL.cardURL, { status: UISTATE.add });
props.pushTo(URL.cardURL, {status: UISTATE.add});
break;
case LIST_BTN.Edit: // 修改
let canDoEdit = tableBeforeEdit.call(
@ -55,13 +76,11 @@ export default function (props, key, text, record, index) {
if (canDoEdit) {
let data;
if (record && record.cpickmid) {
data = { cpickmid: record.cpickmid.value, pageid: PAGECARDCODE, appcode: props.getAppCode() };
}
else {
data = {cpickmid: record.cpickmid.value, pageid: PAGECARDCODE, appcode: props.getAppCode()};
} else {
if (rows.length == 1) {
data = { cpickmid: rowsdata[0].pks, pageid: PAGECARDCODE };
}
else {
data = {cpickmid: rowsdata[0].pks, pageid: PAGECARDCODE};
} else {
showWarningInfo(getLangByResId(this, '5008Pickm-000083'));/* 国际化处理: 请选中一行进行操作!*/
}
}
@ -69,7 +88,7 @@ export default function (props, key, text, record, index) {
url: URL.editCardInfoURL,
data: data,
success: (res) => {
props.pushTo(URL.cardURL, { status: UISTATE.edit, id: record.cpickmid.value });
props.pushTo(URL.cardURL, {status: UISTATE.edit, id: record.cpickmid.value});
}
});
}
@ -77,12 +96,10 @@ export default function (props, key, text, record, index) {
case LIST_BTN.Copy: // 复制
if (record && record.cpickmid) {
pk = record && record.cpickmid && record.cpickmid.value;
}
else {
} else {
if (rows.length == 1) {
pk = rowsdata[0].pks;
}
else {
} else {
showWarningInfo(getLangByResId(this, '5008Pickm-000083'));/* 国际化处理: 请选中一行进行操作!*/
}
}
@ -108,8 +125,7 @@ export default function (props, key, text, record, index) {
cpickmid: record.cpickmid.value,
vtrantypecode: record.vbusitype.value
});
}
else {
} else {
let rows = props.table.getCheckedRows(AREA.tableArea);
// 如果没有选中行,则提示并返回,不进行任何操作
if (rows.length <= 0) {
@ -142,7 +158,7 @@ export default function (props, key, text, record, index) {
break;
case LIST_BTN.LinkQuery: // 单据追溯
pk = this.props.table.getCheckedRows(AREA.tableArea)[0].data.values.cpickmid.value;
this.setState({ cpickmid: pk, showTrack: true });
this.setState({cpickmid: pk, showTrack: true});
break;
case LIST_BTN.Refresh: // 刷新
let tabCode = getDefData.call(this, PickmCache.PickmCacheKey, PickmCache.PickmListTabCode);
@ -430,34 +446,39 @@ export default function (props, key, text, record, index) {
});
break;
case "to_buying"://请购
cpickmids = [];
if (record && record.cpickmid) {
cpickmids.push(record.cpickmid);
} else {
let rows = _this.props.table.getCheckedRows(AREA.tableArea);
// 如果没有选中行,则提示并返回,不进行任何操作
if (rows.length <= 0) {
showWarningInfo(getLangByResId(this, '5008Pickm-000086')/* 国际化处理: 请选择需要处理的数据!*//*getLangByResId(this, '4004POORDER-000068') 国际化处理: 请选择需要删除的数据!*/
);
return;
}
rows.forEach((row) => {
let pk = row.data.values.cpickmid.value;
if (pk) {
cpickmids.push(pk);
showWarningDialog("是否生成请购单", "", {
/* 国际化处理: 确认终止,是否确定将此合同终止*/
beSureBtnClick: () => {
cpickmids = [];
if (record && record.cpickmid) {
cpickmids.push(record.cpickmid);
} else {
let rows = _this.props.table.getCheckedRows(AREA.tableArea);
// 如果没有选中行,则提示并返回,不进行任何操作
if (rows.length <= 0) {
showWarningInfo(getLangByResId(this, '5008Pickm-000086')/* 国际化处理: 请选择需要处理的数据!*//*getLangByResId(this, '4004POORDER-000068') 国际化处理: 请选择需要删除的数据!*/
);
return;
}
rows.forEach((row) => {
let pk = row.data.values.cpickmid.value;
if (pk) {
cpickmids.push(pk);
}
});
}
});
}
data = {
cpickmids: cpickmids
}
ajax({
url:'/nccloud/mmpac/pickm/buyingreq.do',
data: data,
success: (res) => {
if(res.success){
toast({ content: "请购单推送成功", color: 'success' });
data = {
cpickmids: cpickmids
}
ajax({
url: '/nccloud/mmpac/pickm/buyingreq.do',
data: data,
success: (res) => {
if (res.success) {
toast({content: "请购单推送成功", color: 'success'});
}
}
});
}
});
break;
@ -473,6 +494,14 @@ export default function (props, key, text, record, index) {
);
return;
}
// 判断是否存在非审核通过状态的单据,存在则提示并返回
for (let i = 0; i < rows.length; i++) {
let row = rows[i];
if (row.data.values.fbillstatus.value != FbillStatus.approved) {
showWarningInfo('存在非审核通过状态的单据,请检查');
return;
}
}
rows.forEach((row) => {
let pk = row.data.values.cpickmid.value;
if (pk) {
@ -483,6 +512,31 @@ export default function (props, key, text, record, index) {
data = {
pks: cpickmids
}
/*let setProps = (val) => {
this.props = val;
}
ajax({
url: URL.pickmIdsQuery,
data: data,
success: (res) => {
if (res.success) {
let showData = res.data.data;
props.modal.show(AREA.BORROW_DLG, {
size: 'max',
title: '借料入库明细',
content: <PickmBorrowDlg showdata={showData}
setProps={setProps}/>,
userControl: true,
// leftBtnName: '',
// rightBtnName: getLangByResId(this, '5008Pickm-000013'),/!* 国际化处理: 取消*!/
beSureBtnClick: borrowOkBtnClick.bind(this, props, true),
cancelBtnClick: () => {
props.modal.close(AREA.BORROW_DLG);
}
});
}
}
});*/
ajax({
url: '/nccloud/mmpac/pickm/pickmByIdsQuery.do',
data: data,
@ -496,36 +550,42 @@ export default function (props, key, text, record, index) {
});
break;
case "to_pmo"://流程生产订单
cpickmids = [];
if (record && record.cpickmid) {
cpickmids.push(record.cpickmid);
} else {
let rows = _this.props.table.getCheckedRows(AREA.tableArea);
// 如果没有选中行,则提示并返回,不进行任何操作
if (rows.length <= 0) {
showWarningInfo(getLangByResId(this, '5008Pickm-000086')/* 国际化处理: 请选择需要处理的数据!*//*getLangByResId(this, '4004POORDER-000068') 国际化处理: 请选择需要删除的数据!*/
);
return;
}
rows.forEach((row) => {
let pk = row.data.values.cpickmid.value;
if (pk) {
cpickmids.push(pk);
showWarningDialog("是否生成生产订单", "", {
/* 国际化处理: 确认终止,是否确定将此合同终止*/
beSureBtnClick: () => {
cpickmids = [];
if (record && record.cpickmid) {
cpickmids.push(record.cpickmid);
} else {
let rows = _this.props.table.getCheckedRows(AREA.tableArea);
// 如果没有选中行,则提示并返回,不进行任何操作
if (rows.length <= 0) {
showWarningInfo(getLangByResId(this, '5008Pickm-000086')/* 国际化处理: 请选择需要处理的数据!*//*getLangByResId(this, '4004POORDER-000068') 国际化处理: 请选择需要删除的数据!*/
);
return;
}
rows.forEach((row) => {
let pk = row.data.values.cpickmid.value;
if (pk) {
cpickmids.push(pk);
}
});
}
});
}
data = {
cpickmids: cpickmids
}
ajax({
url: '/nccloud/mmpac/pickm/pom.do',
data: data,
success: (res) => {
if(res.success){
toast({ content: "流程生产订单推送成功", color: 'success' });
data = {
cpickmids: cpickmids
}
ajax({
url: '/nccloud/mmpac/pickm/pom.do',
data: data,
success: (res) => {
if (res.success) {
toast({content: "流程生产订单推送成功", color: 'success'});
}
}
});
}
});
break;
default:
break;

View File

@ -1,4 +1,15 @@
import {AREA, FIELD} from "../../../constance";
export default async function headAfterEvent(props, moduleId, key, value, changedrows, i) {
let headData = props.editTable.getAllData('replace_head', true);
this.props.setHeadDatas(headData);
// console.log('value = ', value);
if (key == FIELD.vbatchcode) {
if (value.length > 0) {
let firstElement = value[0];
let vbatchcode = firstElement.values.vbatchcode.value;
let pk_batchcode = firstElement.values.pk_batchcode.value;
props.editTable.setValByKeyAndIndex(moduleId, i, key, {value: vbatchcode, display: vbatchcode});
props.editTable.setValByKeyAndIndex(moduleId, i, 'pk_batchcode', {value: pk_batchcode, display: null});
}
}
}

View File

@ -1,15 +1,19 @@
import {FIELD} from "../../../constance";
import {processBatchCodeItem} from "../../../../wr/card/util/batchCodeUtil";
export default function headBeforeEvent(props, moduleId, item, index, value, record) {
let key = item.attrcode;
let editFields = ['freplacetype'];
let editFields = ['vbatchcode'];
if (!editFields.includes(key)) {
return false;
}
else if (key == 'freplacetype') {
//以替代的备料计划表体不能修改替代类型
let replaceInfo = props.editTable.getValByKeyAndIndex(moduleId, index, 'freplaceinfo').value;
if (replaceInfo == 2) {
} else if (key == FIELD.vbatchcode) {
let cmaterialvid = props.editTable.getValByKeyAndIndex(moduleId, index, FIELD.cmaterialvid).value;
//物料为空直接返回false 不可编辑
if (!cmaterialvid) {
toast({content: '缺少物料编码', color: 'warning'});
return false;
}
} return true;
processBatchCodeItem.call(this, props, moduleId, key, record, '4A', false);
}
return true;
}

View File

@ -2,17 +2,16 @@ import React, {Component} from 'react';
import {base, createPage, high} from 'nc-lightapp-front';
import {initTemplate} from './init';
import {initLang} from '../../../../../mmpub/mmpub/pub/tool/multiLangUtil';
import {headAfterEvent} from './events';
import {DIALOGCODE} from "../../constance";
import {headAfterEvent, headBeforeEvent} from './events';
import {DIALOGCODE, AREA} from "../../constance";
const {Refer} = high;
const {NCModal} = base;
const TABLE_HEAD = 'borrow_list';
class PickmBorrowDlg extends Component {
constructor(props) {
super(props);
props.use.editTable(TABLE_HEAD);
props.use.editTable(AREA.borrowList);
this.state = {
totalRepNum: {}
};
@ -26,7 +25,7 @@ class PickmBorrowDlg extends Component {
//请求列表数据
initData = () => {
let showdata = this.props.showdata;
this.props.editTable.setTableData(TABLE_HEAD, showdata);
this.props.editTable.setTableData(AREA.borrowList, showdata.borrow_list);
this.props.setProps(this.props);
};
@ -35,15 +34,15 @@ class PickmBorrowDlg extends Component {
let {createEditTable} = editTable;
return <div class="flex-container" style={{height: '100%'}}>
<div className='flex-container'>
{createEditTable(TABLE_HEAD, {
showIndex: true,
{createEditTable(AREA.borrowList, {
showIndex: false,
// height: 100,
// onRowClick: this.onRowClick.bind(this),
// onRowDoubleClick: this.onRowDoubleClick.bind(this),
// onBeforeEvent: headBeforeEvent.bind(this),
onBeforeEvent: headBeforeEvent.bind(this),
onAfterEvent: headAfterEvent.bind(this),
isAddRow: false,
showCheck: false
showCheck: true
})}
</div>
</div>;

View File

@ -1,43 +1,25 @@
import { DIALOGCODE } from '../../../constance';
import { getLangByResId } from '../../../../../../mmpub/mmpub/pub/tool/multiLangUtil';
const TABLE_HEAD = 'borrow_list';
import {DIALOGCODE, AREA} from '../../../constance';
export default function (props) {
let appcode = props.getAppCode();
if (props.getAppCode().startsWith('5009')) {
appcode = '50090102';
}
else if (props.getAppCode().startsWith('5008')) {
appcode = '50080102';
}
//请求模板数据
props.createUIDom(
{
appcode: appcode,
pagecode: DIALOGCODE.BORROWDLG
},
(templedata) => {
if (templedata.template) {
let meta = templedata.template;
// modifierMeta.call(this, this.props, meta);
props.meta.setMeta(meta);
props.editTable.setStatus(TABLE_HEAD, 'edit');
// props.editTable.setStatus(TABLE_BODY, 'edit');
}
});
}
function modifierMeta(props, meta) {
meta[TABLE_HEAD].items.map((item) => {
if (item.attrcode == 'freplacetype') {
item.options = [{
display: getLangByResId(this, '5008Pickm-000096')/* 国际化处理: "全部替代"*/,
value: "1"
}, {
display: getLangByResId(this, '5008Pickm-000097')/* 国际化处理: ""部分替代"*/,
value: "2"
}
];
}
});
return meta;
let appcode = props.getAppCode();
if (props.getAppCode().startsWith('5009')) {
appcode = '50090102';
} else if (props.getAppCode().startsWith('5008')) {
appcode = '50080102';
}
//请求模板数据
props.createUIDom(
{
appcode: appcode,
pagecode: DIALOGCODE.BORROWDLG
},
(templedata) => {
if (templedata.template) {
let meta = templedata.template;
// modifierMeta.call(this, this.props, meta);
props.meta.setMeta(meta);
props.editTable.setStatus(AREA.borrowList, 'edit');
// props.editTable.setStatus(TABLE_BODY, 'edit');
}
});
}

View File

@ -0,0 +1,25 @@
/*
* @Author:
* @PageInfo: 卡片推PLM按钮事件
* @Date: 2018-04-19 10:38:05
* @Last Modified by:
* @Last Modified time: 2019-03-06 15:28:59
*/
// import { PMO_CARD, HEADATTRCODE } from '../../pmoconst';
import {PMO_CARD, URL} from '../../pmoconst';
import {ajax} from 'nc-lightapp-front';
import {toast} from "../../../../../gl/public/components/utils";
export default function toPlm(props, id) {
let rowIds = [];
rowIds[0] = id;
ajax({
url: URL.toPlmURL,
data: {pks: rowIds},
success: (res) => {
if (res.success) {
toast({content: "传递设计任务成功", color: 'success'});
}
}
});
}

File diff suppressed because it is too large Load Diff

View File

@ -307,7 +307,8 @@ const PMO_CARD_BUTTON = {
grand_g1: 'grand_g1',
oresetno: 'OResetno', //联副产品重新排号
Import: 'Import', //导入
ExportTem: 'ExportTem' //导出
ExportTem: 'ExportTem', //导出
PushToPlm: 'pushToPlm' //导出
};
const PMO_CARD = {
@ -772,7 +773,8 @@ const URL = {
checkdeliverback: '/nccloud/mmpac/pmo/checkdeliverback.do', //退料建议检验
checkGrandDataURL: '/nccloud/mmpac/pmo/checkGrandData.do', //检验孙表数据
checkEnableURL: '/nccloud/mmpac/pmo/checkEnable.do', //模块是否启用
checkToPscPlanURL: '/nccloud/mmpac/pmo/checkToPscPlan.do' //工序委外计划校验
checkToPscPlanURL: '/nccloud/mmpac/pmo/checkToPscPlan.do', //工序委外计划校验
toPlmURL: '/nccloud/mmpac/pmo/PmoToPlm.do' //手动推PLM内配订单
//checkpmodeliveryset: '/nccloud/mmpac/pmo/pmodeliveryset.do',
};
const DELIVERDLG = {