解决冲突

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 {ajax, base, toast} from 'nc-lightapp-front';
import {AREA, DIALOGCODE, FIELD, URL} from '../../constance'; import {AREA, DIALOGCODE, FIELD, URL} from '../../constance';
import {getLangByResId} from '../../../../../mmpub/mmpub/pub/tool/multiLangUtil';
import {showWarningInfo} from '../../../../../mmpub/mmpub/pub/tool/messageUtil'; import {showWarningInfo} from '../../../../../mmpub/mmpub/pub/tool/messageUtil';
import PickmBorrowDlg from "../../pickmborrow/list"; import PickmBorrowDlg from "../../pickmborrow/list";
import {borrowOkBtnClick} from "./index";
let {NCModal, NCButton, NCTooltip, NCHotKeys} = base; let {NCModal, NCButton, NCTooltip, NCHotKeys} = base;
const TABLE_HEAD = 'borrow_list';
export default function borrowBtnClick(props, record) { export default function borrowBtnClick(props, record) {
let _this = this; let _this = this;
this.bodyDatas = {};
this.props = {}; this.props = {};
let setProps = (val) => { let setProps = (val) => {
this.props = val; this.props = val;
@ -33,7 +31,7 @@ export default function borrowBtnClick(props, record) {
let param = { let param = {
cpickmid: hid, cpickmid: hid,
cpickmbids: bids, cpickmbids: bids,
pageid: DIALOGCODE.CLQUERYDLG, pageid: DIALOGCODE.BORROWDLG,
appcode: appcode appcode: appcode
} }
ajax({ ajax({
@ -41,165 +39,21 @@ export default function borrowBtnClick(props, record) {
data: param, data: param,
success: res => { success: res => {
if (res.success && res.data) { if (res.success && res.data) {
// let showdata = res.data; let showData = res.data.data;
let rows = res.data.data; props.modal.show(AREA.BORROW_DLG, {
// 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', {
size: 'max', size: 'max',
title: getLangByResId(this, '5008Pickm-000093'),/* 国际化处理: 替代*/ title: '借料入库明细',
content: <PickmBorrowDlg showdata={rows} content: <PickmBorrowDlg showdata={showData}
setProps={setProps}/>, setProps={setProps}/>,
userControl: true, userControl: true,
// leftBtnName: '', // leftBtnName: '',
// rightBtnName: getLangByResId(this, '5008Pickm-000013'),/* 国际化处理: 取消*/ // rightBtnName: getLangByResId(this, '5008Pickm-000013'),/* 国际化处理: 取消*/
beSureBtnClick: oKBtnClicks.bind(this, props, true), beSureBtnClick: borrowOkBtnClick.bind(this, props, true),
cancelBtnClick: () => { 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 reserveQueryBtnClick from './reserveQueryBtnClick';
import detailqueryBtnClick from './detailqueryBtnClick'; import detailqueryBtnClick from './detailqueryBtnClick';
import pushrzmsBtnClick from './pushrzmsBtnClick.js'; //推送锐制 import pushrzmsBtnClick from './pushrzmsBtnClick.js'; //推送锐制
import borrowBtnClick from './borrowBtnClick.js';
import borrowOkBtnClick from "./borrowOkBtnClick.js";
export { export {
pageInfoClick, getParentURlParme, setBtnShow, backBtnClick, addBtnClick, delBtnClick, pageInfoClick, getParentURlParme, setBtnShow, backBtnClick, addBtnClick, delBtnClick,
editBtnClick, cancelBtnClick, saveBtnClick, saveCommitBtnClick, copyBtnClick, editBtnClick, cancelBtnClick, saveBtnClick, saveCommitBtnClick, copyBtnClick,
commitBtnClick, unCommitBtnClick, printBtnClick, outputBtnClick, subItemsBtnClick, commitBtnClick, unCommitBtnClick, printBtnClick, outputBtnClick, subItemsBtnClick,
finishBtnClick, unfinishBtnClick, clqueryBtnClick, replaceBtnClick,reserveBtnClick,reserveQueryBtnClick,detailqueryBtnClick, 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('TakeOverDlg', {zIndex: "300"})}
{createModal('SetBackDeliverDlg', {zIndex: "280"})} {createModal('SetBackDeliverDlg', {zIndex: "280"})}
{createModal('ReplaceDlg', {zIndex: "300"})} {createModal('ReplaceDlg', {zIndex: "300"})}
{createModal('BorrowDlg', {zIndex: "300"})} {/*{createModal('BorrowDlg', {zIndex: "300"})}*/}
{createModal(AREA.borrowMaterialDialog, { {createModal(AREA.borrowMaterialDialog, {
title: '借料入库明细', title: '借料入库明细',

View File

@ -1,28 +1,28 @@
import { import {
backBtnClick,
addBtnClick, addBtnClick,
delBtnClick, backBtnClick,
editBtnClick,
cancelBtnClick, cancelBtnClick,
saveBtnClick,
saveCommitBtnClick,
copyBtnClick,
commitBtnClick,
unCommitBtnClick,
printBtnClick,
outputBtnClick,
subItemsBtnClick,
finishBtnClick,
unfinishBtnClick,
clqueryBtnClick, clqueryBtnClick,
replaceBtnClick, commitBtnClick,
copyBtnClick,
delBtnClick, detailqueryBtnClick,
editBtnClick,
finishBtnClick,
outputBtnClick,
pageInfoClick, pageInfoClick,
printBtnClick,
pushrzmsBtnClick,
replaceBtnClick,
reserveBtnClick, reserveBtnClick,
reserveQueryBtnClick, reserveQueryBtnClick,
detailqueryBtnClick,pushrzmsBtnClick saveBtnClick,
saveCommitBtnClick,
subItemsBtnClick,
unCommitBtnClick,
unfinishBtnClick
} from '../btnClicks'; // } from '../btnClicks'; //
import newLineDefaultUtil from '../utils/newLineDefaultUtil'; 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 {RownoUtils} from '../../../../../mmpub/mmpub/pub/tool/cardTableTools';
import {rowCopyPasteUtils} from '../utils/rowCopyPasteUtils'; import {rowCopyPasteUtils} from '../utils/rowCopyPasteUtils';
import {checkDeleteRows} from '../utils/rowDeleteUtil'; import {checkDeleteRows} from '../utils/rowDeleteUtil';
@ -31,18 +31,14 @@ import {ajax, cacheTools} from 'nc-lightapp-front';
import {setBtnShow} from '../btnClicks/pageInfoClick'; import {setBtnShow} from '../btnClicks/pageInfoClick';
import {pickmSetDeliver} from '../../../pub/pickmdeliverwithset'; import {pickmSetDeliver} from '../../../pub/pickmdeliverwithset';
import {updateCacheData} from '../../../../../mmpub/mmpub/pub/cache/cacheDataManager'; import {updateCacheData} from '../../../../../mmpub/mmpub/pub/cache/cacheDataManager';
import { import {showWarningInfo} from '../../../../../mmpub/mmpub/pub/tool/messageUtil';
showSuccessInfo,
showErrorInfo,
showWarningInfo,
showWarningDialog
} from '../../../../../mmpub/mmpub/pub/tool/messageUtil';
import {pickmBackDeliver} from '../../../pub/pickmbackdeliver'; import {pickmBackDeliver} from '../../../pub/pickmbackdeliver';
import {pickmTakeOver} from '../../../pub/pickmtakeover'; import {pickmTakeOver} from '../../../pub/pickmtakeover';
import {getLangByResId} from '../../../../../mmpub/mmpub/pub/tool/multiLangUtil'; import {getLangByResId} from '../../../../../mmpub/mmpub/pub/tool/multiLangUtil';
import {pickmBackDeliverWithSet} from '../../../pub/pickmbackdeliverwithset'; import {pickmBackDeliverWithSet} from '../../../pub/pickmbackdeliverwithset';
import {toast} from "../../../../../gl/public/components/utils"; import {toast} from "../../../../../gl/public/components/utils";
import borrowBtnClick from "../btnClicks/borrowBtnClick"; import borrowBtnClick from "../btnClicks/borrowBtnClick";
import {showWarningDialog} from "../../../../../scmpub/scmpub/pub/tool/messageUtil";
export default async function clickBtn(props, id, text, record, index) { export default async function clickBtn(props, id, text, record, index) {
let _this = this; let _this = this;
@ -819,6 +815,29 @@ export default async function clickBtn(props, id, text, record, index) {
showWarningInfo(getLangByResId(this, '5008Pickm-000061')); showWarningInfo(getLangByResId(this, '5008Pickm-000061'));
return; 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'); billstatus = props.form.getFormItemsValue(AREA.formArea, 'fbillstatus');
//审批态 //审批态
if (billstatus && billstatus.value && billstatus.value == 1) { 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: case CARD_BTN.pushrzmes:
pushrzmsBtnClick.call(this, props); pushrzmsBtnClick.call(this, props);
break; 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: default:
break; break;
} }

View File

@ -216,6 +216,7 @@ const URL = {
queryByCondURL: '/nccloud/mmpac/pickm/queryByCond.do', queryByCondURL: '/nccloud/mmpac/pickm/queryByCond.do',
convertOtherIn: '/nccloud/mmpac/pickm/convertOtherIn.do', convertOtherIn: '/nccloud/mmpac/pickm/convertOtherIn.do',
pickmItemsQuery: '/nccloud/mmpac/pickm/pickmItemsQuery.do', pickmItemsQuery: '/nccloud/mmpac/pickm/pickmItemsQuery.do',
pickmIdsQuery: '/nccloud/mmpac/pickm/pickmByIdsQuery.do',
pushrzmsURL: '/nccloud/mmpac/pickm/pushrzmes.do' pushrzmsURL: '/nccloud/mmpac/pickm/pushrzmes.do'
}; };
@ -257,6 +258,7 @@ const FIELD = {
cbastunitid: 'cbastunitid', cbastunitid: 'cbastunitid',
vbatchcode: 'vbatchcode', vbatchcode: 'vbatchcode',
vsrcid: 'vsrcid', //来源单据id vsrcid: 'vsrcid', //来源单据id
pk_group: 'pk_group', //集团
}; };
//表头不可修改字段 //表头不可修改字段
const headDisableFields = [ const headDisableFields = [

View File

@ -337,6 +337,7 @@ class PickmList extends Component {
{createModal('BackDeliverDlg')} {createModal('BackDeliverDlg')}
{createModal('BackSerialnoDlg')} {createModal('BackSerialnoDlg')}
{createModal('SetBackDeliverDlg')} {createModal('SetBackDeliverDlg')}
{/*{createModal('BorrowDlg')}*/}
{createModal('NCTable_3c81fe87', { {createModal('NCTable_3c81fe87', {
title: '借料入库明细', title: '借料入库明细',
content: ( content: (

View File

@ -1,4 +1,16 @@
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 { import {
commonSearch, searchBtnClick, deleteBtnClick, commitBtnClick, uncommitBtnClick, printBtnClick, outputBtnClick, commonSearch, searchBtnClick, deleteBtnClick, commitBtnClick, uncommitBtnClick, printBtnClick, outputBtnClick,
finishBtnClick, unfinishBtnClick, clqueryBtnClick finishBtnClick, unfinishBtnClick, clqueryBtnClick
@ -17,6 +29,15 @@ import {
import listbuttonController from '../viewController/buttonController'; import listbuttonController from '../viewController/buttonController';
import {updateCacheDataForList} from '../../../../../mmpub/mmpub/pub/cache'; import {updateCacheDataForList} from '../../../../../mmpub/mmpub/pub/cache';
import {ajax, cacheTools, toast} from 'nc-lightapp-front'; 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) { export default function (props, key, text, record, index) {
let pk = null; let pk = null;
@ -56,12 +77,10 @@ export default function (props, key, text, record, index) {
let data; let data;
if (record && record.cpickmid) { if (record && record.cpickmid) {
data = {cpickmid: record.cpickmid.value, pageid: PAGECARDCODE, appcode: props.getAppCode()}; data = {cpickmid: record.cpickmid.value, pageid: PAGECARDCODE, appcode: props.getAppCode()};
} } else {
else {
if (rows.length == 1) { if (rows.length == 1) {
data = {cpickmid: rowsdata[0].pks, pageid: PAGECARDCODE}; data = {cpickmid: rowsdata[0].pks, pageid: PAGECARDCODE};
} } else {
else {
showWarningInfo(getLangByResId(this, '5008Pickm-000083'));/* 国际化处理: 请选中一行进行操作!*/ showWarningInfo(getLangByResId(this, '5008Pickm-000083'));/* 国际化处理: 请选中一行进行操作!*/
} }
} }
@ -77,12 +96,10 @@ export default function (props, key, text, record, index) {
case LIST_BTN.Copy: // 复制 case LIST_BTN.Copy: // 复制
if (record && record.cpickmid) { if (record && record.cpickmid) {
pk = record && record.cpickmid && record.cpickmid.value; pk = record && record.cpickmid && record.cpickmid.value;
} } else {
else {
if (rows.length == 1) { if (rows.length == 1) {
pk = rowsdata[0].pks; pk = rowsdata[0].pks;
} } else {
else {
showWarningInfo(getLangByResId(this, '5008Pickm-000083'));/* 国际化处理: 请选中一行进行操作!*/ showWarningInfo(getLangByResId(this, '5008Pickm-000083'));/* 国际化处理: 请选中一行进行操作!*/
} }
} }
@ -108,8 +125,7 @@ export default function (props, key, text, record, index) {
cpickmid: record.cpickmid.value, cpickmid: record.cpickmid.value,
vtrantypecode: record.vbusitype.value vtrantypecode: record.vbusitype.value
}); });
} } else {
else {
let rows = props.table.getCheckedRows(AREA.tableArea); let rows = props.table.getCheckedRows(AREA.tableArea);
// 如果没有选中行,则提示并返回,不进行任何操作 // 如果没有选中行,则提示并返回,不进行任何操作
if (rows.length <= 0) { if (rows.length <= 0) {
@ -430,6 +446,9 @@ export default function (props, key, text, record, index) {
}); });
break; break;
case "to_buying"://请购 case "to_buying"://请购
showWarningDialog("是否生成请购单", "", {
/* 国际化处理: 确认终止,是否确定将此合同终止*/
beSureBtnClick: () => {
cpickmids = []; cpickmids = [];
if (record && record.cpickmid) { if (record && record.cpickmid) {
cpickmids.push(record.cpickmid); cpickmids.push(record.cpickmid);
@ -460,6 +479,8 @@ export default function (props, key, text, record, index) {
} }
} }
}); });
}
});
break; break;
case "to_generalIn"://借料入库 case "to_generalIn"://借料入库
cpickmids = []; cpickmids = [];
@ -473,6 +494,14 @@ export default function (props, key, text, record, index) {
); );
return; 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) => { rows.forEach((row) => {
let pk = row.data.values.cpickmid.value; let pk = row.data.values.cpickmid.value;
if (pk) { if (pk) {
@ -483,6 +512,31 @@ export default function (props, key, text, record, index) {
data = { data = {
pks: cpickmids 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({ ajax({
url: '/nccloud/mmpac/pickm/pickmByIdsQuery.do', url: '/nccloud/mmpac/pickm/pickmByIdsQuery.do',
data: data, data: data,
@ -496,6 +550,9 @@ export default function (props, key, text, record, index) {
}); });
break; break;
case "to_pmo"://流程生产订单 case "to_pmo"://流程生产订单
showWarningDialog("是否生成生产订单", "", {
/* 国际化处理: 确认终止,是否确定将此合同终止*/
beSureBtnClick: () => {
cpickmids = []; cpickmids = [];
if (record && record.cpickmid) { if (record && record.cpickmid) {
cpickmids.push(record.cpickmid); cpickmids.push(record.cpickmid);
@ -526,6 +583,9 @@ export default function (props, key, text, record, index) {
} }
} }
}); });
}
});
break; break;
default: default:
break; break;

View File

@ -1,4 +1,15 @@
import {AREA, FIELD} from "../../../constance";
export default async function headAfterEvent(props, moduleId, key, value, changedrows, i) { export default async function headAfterEvent(props, moduleId, key, value, changedrows, i) {
let headData = props.editTable.getAllData('replace_head', true); // console.log('value = ', value);
this.props.setHeadDatas(headData); 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) { export default function headBeforeEvent(props, moduleId, item, index, value, record) {
let key = item.attrcode; let key = item.attrcode;
let editFields = ['freplacetype']; let editFields = ['vbatchcode'];
if (!editFields.includes(key)) { if (!editFields.includes(key)) {
return false; return false;
} } else if (key == FIELD.vbatchcode) {
else if (key == 'freplacetype') { let cmaterialvid = props.editTable.getValByKeyAndIndex(moduleId, index, FIELD.cmaterialvid).value;
//以替代的备料计划表体不能修改替代类型 //物料为空直接返回false 不可编辑
let replaceInfo = props.editTable.getValByKeyAndIndex(moduleId, index, 'freplaceinfo').value; if (!cmaterialvid) {
if (replaceInfo == 2) { toast({content: '缺少物料编码', color: 'warning'});
return false; 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 {base, createPage, high} from 'nc-lightapp-front';
import {initTemplate} from './init'; import {initTemplate} from './init';
import {initLang} from '../../../../../mmpub/mmpub/pub/tool/multiLangUtil'; import {initLang} from '../../../../../mmpub/mmpub/pub/tool/multiLangUtil';
import {headAfterEvent} from './events'; import {headAfterEvent, headBeforeEvent} from './events';
import {DIALOGCODE} from "../../constance"; import {DIALOGCODE, AREA} from "../../constance";
const {Refer} = high; const {Refer} = high;
const {NCModal} = base; const {NCModal} = base;
const TABLE_HEAD = 'borrow_list';
class PickmBorrowDlg extends Component { class PickmBorrowDlg extends Component {
constructor(props) { constructor(props) {
super(props); super(props);
props.use.editTable(TABLE_HEAD); props.use.editTable(AREA.borrowList);
this.state = { this.state = {
totalRepNum: {} totalRepNum: {}
}; };
@ -26,7 +25,7 @@ class PickmBorrowDlg extends Component {
//请求列表数据 //请求列表数据
initData = () => { initData = () => {
let showdata = this.props.showdata; 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); this.props.setProps(this.props);
}; };
@ -35,15 +34,15 @@ class PickmBorrowDlg extends Component {
let {createEditTable} = editTable; let {createEditTable} = editTable;
return <div class="flex-container" style={{height: '100%'}}> return <div class="flex-container" style={{height: '100%'}}>
<div className='flex-container'> <div className='flex-container'>
{createEditTable(TABLE_HEAD, { {createEditTable(AREA.borrowList, {
showIndex: true, showIndex: false,
// height: 100, // height: 100,
// onRowClick: this.onRowClick.bind(this), // onRowClick: this.onRowClick.bind(this),
// onRowDoubleClick: this.onRowDoubleClick.bind(this), // onRowDoubleClick: this.onRowDoubleClick.bind(this),
// onBeforeEvent: headBeforeEvent.bind(this), onBeforeEvent: headBeforeEvent.bind(this),
onAfterEvent: headAfterEvent.bind(this), onAfterEvent: headAfterEvent.bind(this),
isAddRow: false, isAddRow: false,
showCheck: false showCheck: true
})} })}
</div> </div>
</div>; </div>;

View File

@ -1,13 +1,10 @@
import { DIALOGCODE } from '../../../constance'; import {DIALOGCODE, AREA} from '../../../constance';
import { getLangByResId } from '../../../../../../mmpub/mmpub/pub/tool/multiLangUtil';
const TABLE_HEAD = 'borrow_list';
export default function (props) { export default function (props) {
let appcode = props.getAppCode(); let appcode = props.getAppCode();
if (props.getAppCode().startsWith('5009')) { if (props.getAppCode().startsWith('5009')) {
appcode = '50090102'; appcode = '50090102';
} } else if (props.getAppCode().startsWith('5008')) {
else if (props.getAppCode().startsWith('5008')) {
appcode = '50080102'; appcode = '50080102';
} }
//请求模板数据 //请求模板数据
@ -21,23 +18,8 @@ export default function (props) {
let meta = templedata.template; let meta = templedata.template;
// modifierMeta.call(this, this.props, meta); // modifierMeta.call(this, this.props, meta);
props.meta.setMeta(meta); props.meta.setMeta(meta);
props.editTable.setStatus(TABLE_HEAD, 'edit'); props.editTable.setStatus(AREA.borrowList, 'edit');
// props.editTable.setStatus(TABLE_BODY, '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;
}

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'});
}
}
});
}

View File

@ -34,7 +34,7 @@ import unCommitBtnClick from '../btnClicks/unCommitBtnClick'; //收回
import linkBtnClick from '../btnClicks/linkBtnClick'; //单据追溯 import linkBtnClick from '../btnClicks/linkBtnClick'; //单据追溯
import printBtnClick from '../btnClicks/printBtnClick'; //打印 import printBtnClick from '../btnClicks/printBtnClick'; //打印
import outputBtnClick from '../btnClicks/outputBtnClick'; //输出 import outputBtnClick from '../btnClicks/outputBtnClick'; //输出
import pageInfoClick from '../btnClicks/pageInfoClick'; import pageInfoClick, {commonShow, setBtnShow} from '../btnClicks/pageInfoClick';
import printbarCodeBtnClick from '../btnClicks/printbarCodeBtnClick'; //打印条码 import printbarCodeBtnClick from '../btnClicks/printbarCodeBtnClick'; //打印条码
import barCodePrintBtnClick from '../btnClicks/barCodePrintBtnClick'; //直接打印条码 import barCodePrintBtnClick from '../btnClicks/barCodePrintBtnClick'; //直接打印条码
import cancelTransferBtnClick from '../btnClicks/cancelTransferBtnClick'; //退出转单 import cancelTransferBtnClick from '../btnClicks/cancelTransferBtnClick'; //退出转单
@ -52,23 +52,14 @@ import batchEditSave from '../btnClicks/batchEditSave';
import batchEditServ from '../../pub/batchedit/service/batchEditServ'; import batchEditServ from '../../pub/batchedit/service/batchEditServ';
import exportTemClick from '../btnClicks/exportTemClick'; //导出 import exportTemClick from '../btnClicks/exportTemClick'; //导出
import importClick from '../btnClicks/importClick'; //导入 import importClick from '../btnClicks/importClick'; //导入
import { import {BODYATTRCODE, FBILLSTATUS, HEADATTRCODE, PMO_CARD, PMO_CARD_BUTTON, PMO_LIST} from '../../pmoconst';
PMO_LIST,
PMO_CARD,
PMO_LIST_BUTTON,
PMO_CARD_BUTTON,
FBILLSTATUS,
BODYFBILLSTATUS,
HEADATTRCODE,
BODYATTRCODE,
GRANDATTRCODE
} from '../../pmoconst';
import {RownoUtils} from '../../../../../mmpub/mmpub/pub/tool/cardTableTools'; import {RownoUtils} from '../../../../../mmpub/mmpub/pub/tool/cardTableTools';
import {rowCopyPasteUtils} from '../../../../../mmpub/mmpub/pub/tool/cardTableTools/rowCopyPasteUtils'; import {rowCopyPasteUtils} from '../../../../../mmpub/mmpub/pub/tool/cardTableTools/rowCopyPasteUtils';
import {buttonController} from './index'; import {buttonController} from './index';
import { setBtnShow, commonShow } from '../btnClicks/pageInfoClick'; import {showErrorInfo, showSuccessInfo, showWarningDialog} from '../../../../../mmpub/mmpub/pub/tool/messageUtil.js';
import { showWarningDialog, showSuccessInfo, showErrorInfo } from '../../../../../mmpub/mmpub/pub/tool/messageUtil.js';
import {getLangByResId} from '../../../../../mmpub/mmpub/pub/tool/multiLangUtil'; import {getLangByResId} from '../../../../../mmpub/mmpub/pub/tool/multiLangUtil';
import toPlm from "../btnClicks/toPlm";// 传递设计任务
const {updateCache} = cardCache; const {updateCache} = cardCache;
let tableId = PMO_CARD.tableId; let tableId = PMO_CARD.tableId;
let formId = PMO_CARD.formId; let formId = PMO_CARD.formId;
@ -631,6 +622,12 @@ export default function clickBtn(props, id, text, record, index) {
let importC = importClick.bind(this, props, id); let importC = importClick.bind(this, props, id);
return importC(props); return importC(props);
} }
case PMO_CARD_BUTTON.PushToPlm: {
let billId = props.form.getFormItemsValue(formId, HEADATTRCODE.CPMOHID).value;
// 传递设计任务
let toPlm1 = toPlm.bind(this, props, billId);
return toPlm1(props);
}
} }
} }

View File

@ -307,7 +307,8 @@ const PMO_CARD_BUTTON = {
grand_g1: 'grand_g1', grand_g1: 'grand_g1',
oresetno: 'OResetno', //联副产品重新排号 oresetno: 'OResetno', //联副产品重新排号
Import: 'Import', //导入 Import: 'Import', //导入
ExportTem: 'ExportTem' //导出 ExportTem: 'ExportTem', //导出
PushToPlm: 'pushToPlm' //导出
}; };
const PMO_CARD = { const PMO_CARD = {
@ -772,7 +773,8 @@ const URL = {
checkdeliverback: '/nccloud/mmpac/pmo/checkdeliverback.do', //退料建议检验 checkdeliverback: '/nccloud/mmpac/pmo/checkdeliverback.do', //退料建议检验
checkGrandDataURL: '/nccloud/mmpac/pmo/checkGrandData.do', //检验孙表数据 checkGrandDataURL: '/nccloud/mmpac/pmo/checkGrandData.do', //检验孙表数据
checkEnableURL: '/nccloud/mmpac/pmo/checkEnable.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', //checkpmodeliveryset: '/nccloud/mmpac/pmo/pmodeliveryset.do',
}; };
const DELIVERDLG = { const DELIVERDLG = {