借料入库-调整弹窗字段是否可编辑
This commit is contained in:
parent
88372b072f
commit
6c7652d70c
|
@ -0,0 +1,100 @@
|
||||||
|
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";
|
||||||
|
|
||||||
|
let {NCModal, NCButton, NCTooltip, NCHotKeys} = base;
|
||||||
|
|
||||||
|
const TABLE_HEAD = 'borrow_list';
|
||||||
|
export default function borrowBtnClick(props, record) {
|
||||||
|
let _this = this;
|
||||||
|
this.props = {};
|
||||||
|
let setProps = (val) => {
|
||||||
|
this.props = val;
|
||||||
|
}
|
||||||
|
let bids = [];
|
||||||
|
let hid;
|
||||||
|
let rows = props.cardTable.getCheckedRows(AREA.bodyTable);
|
||||||
|
// 如果没有选中行,则提示并返回,不进行任何操作
|
||||||
|
if (!rows) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (rows.length <= 0) {
|
||||||
|
hid = this.props.form.getFormItemsValue(AREA.formArea, FIELD.hid).value;
|
||||||
|
} else {
|
||||||
|
rows.map((item) => {
|
||||||
|
let cpickm_bid = props.cardTable.getValByKeyAndIndex(AREA.bodyTable, item.index, 'cpickm_bid').value;
|
||||||
|
bids.push(cpickm_bid);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
let appcode = props.getAppCode();
|
||||||
|
let param = {
|
||||||
|
cpickmid: hid,
|
||||||
|
cpickmbids: bids,
|
||||||
|
pageid: DIALOGCODE.BORROWDLG,
|
||||||
|
appcode: appcode
|
||||||
|
}
|
||||||
|
ajax({
|
||||||
|
url: URL.pickmItemsQuery,
|
||||||
|
data: param,
|
||||||
|
success: res => {
|
||||||
|
if (res.success && res.data) {
|
||||||
|
let showData = res.data.data;
|
||||||
|
props.modal.show('BorrowDlg', {
|
||||||
|
size: 'max',
|
||||||
|
title: '借料入库明细',
|
||||||
|
content: <PickmBorrowDlg showdata={showData}
|
||||||
|
setProps={setProps}/>,
|
||||||
|
userControl: true,
|
||||||
|
// leftBtnName: '',
|
||||||
|
// rightBtnName: getLangByResId(this, '5008Pickm-000013'),/* 国际化处理: 取消*/
|
||||||
|
beSureBtnClick: oKBtnClicks.bind(this, props, true),
|
||||||
|
cancelBtnClick: () => {
|
||||||
|
props.modal.close('BorrowDlg');
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
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
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
|
@ -272,6 +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(AREA.borrowMaterialDialog, {
|
{createModal(AREA.borrowMaterialDialog, {
|
||||||
title: '借料入库明细',
|
title: '借料入库明细',
|
||||||
|
|
|
@ -42,6 +42,7 @@ 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";
|
||||||
|
|
||||||
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;
|
||||||
|
@ -818,33 +819,11 @@ 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) {
|
||||||
detailqueryBtnClick.call(this, this.props, record);
|
// detailqueryBtnClick.call(this, this.props, record);
|
||||||
|
borrowBtnClick.call(this, this.props, record);
|
||||||
} else {
|
} else {
|
||||||
toast({color: 'warning', title: "只有审批后单据才能生产其他入库单"});
|
toast({color: 'warning', title: "只有审批后单据才能生产其他入库单"});
|
||||||
}
|
}
|
||||||
|
|
|
@ -10,7 +10,8 @@ const AREA = {
|
||||||
cardHeadBtnArea: 'card_head', //卡片表头按钮区域
|
cardHeadBtnArea: 'card_head', //卡片表头按钮区域
|
||||||
cardBodyBtnArea: 'card_body', //卡片表体按钮区域
|
cardBodyBtnArea: 'card_body', //卡片表体按钮区域
|
||||||
cardBodyInnerBtnArea: 'card_body_inner', //卡片表体操作按钮区域
|
cardBodyInnerBtnArea: 'card_body_inner', //卡片表体操作按钮区域
|
||||||
borrowMaterialDialog: 'NCTable_83c3abf9' //借料弹窗
|
borrowMaterialDialog: 'NCTable_83c3abf9', //借料弹窗
|
||||||
|
borrowList: 'borrow_list' //借料弹窗
|
||||||
};
|
};
|
||||||
const MANUFACTURE = 'fa';//製造場景
|
const MANUFACTURE = 'fa';//製造場景
|
||||||
|
|
||||||
|
@ -23,7 +24,8 @@ const DIALOGCODE = {
|
||||||
BACKDELIVERDLG: '50080102_backdeliver',
|
BACKDELIVERDLG: '50080102_backdeliver',
|
||||||
SETBACKDELIVERDLG: '50080102_backdeliverwithset',
|
SETBACKDELIVERDLG: '50080102_backdeliverwithset',
|
||||||
TAKEOVERDLG: '50080102_takeover',
|
TAKEOVERDLG: '50080102_takeover',
|
||||||
REPLACEDLG: '50080102_replace'
|
REPLACEDLG: '50080102_replace',
|
||||||
|
BORROWDLG: '50080102_borrow'
|
||||||
}
|
}
|
||||||
|
|
||||||
const LIST_BTN = {
|
const LIST_BTN = {
|
||||||
|
|
|
@ -0,0 +1,4 @@
|
||||||
|
export default async function headAfterEvent(props, moduleId, key, value, changedrows, i) {
|
||||||
|
let headData = props.editTable.getAllData('replace_head', true);
|
||||||
|
this.props.setHeadDatas(headData);
|
||||||
|
}
|
|
@ -0,0 +1,15 @@
|
||||||
|
|
||||||
|
export default function headBeforeEvent(props, moduleId, item, index, value, record) {
|
||||||
|
let key = item.attrcode;
|
||||||
|
let editFields = ['freplacetype'];
|
||||||
|
if (!editFields.includes(key)) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
else if (key == 'freplacetype') {
|
||||||
|
//以替代的备料计划表体不能修改替代类型
|
||||||
|
let replaceInfo = props.editTable.getValByKeyAndIndex(moduleId, index, 'freplaceinfo').value;
|
||||||
|
if (replaceInfo == 2) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
} return true;
|
||||||
|
}
|
|
@ -0,0 +1,3 @@
|
||||||
|
import headBeforeEvent from './headBeforeEvent';
|
||||||
|
import headAfterEvent from './headAfterEvent';
|
||||||
|
export { headBeforeEvent,headAfterEvent };
|
|
@ -0,0 +1,60 @@
|
||||||
|
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";
|
||||||
|
|
||||||
|
const {Refer} = high;
|
||||||
|
const {NCModal} = base;
|
||||||
|
const TABLE_HEAD = 'borrow_list';
|
||||||
|
|
||||||
|
class PickmBorrowDlg extends Component {
|
||||||
|
constructor(props) {
|
||||||
|
super(props);
|
||||||
|
props.use.editTable(TABLE_HEAD);
|
||||||
|
this.state = {
|
||||||
|
totalRepNum: {}
|
||||||
|
};
|
||||||
|
initLang(this, ['5008Pickm'], 'mmpac', initTemplate.bind(this, this.props));
|
||||||
|
}
|
||||||
|
|
||||||
|
componentDidMount() {
|
||||||
|
this.initData();
|
||||||
|
}
|
||||||
|
|
||||||
|
//请求列表数据
|
||||||
|
initData = () => {
|
||||||
|
let showdata = this.props.showdata;
|
||||||
|
this.props.editTable.setTableData(TABLE_HEAD, showdata.borrow_list);
|
||||||
|
this.props.setProps(this.props);
|
||||||
|
};
|
||||||
|
|
||||||
|
render() {
|
||||||
|
let {editTable} = this.props;
|
||||||
|
let {createEditTable} = editTable;
|
||||||
|
return <div class="flex-container" style={{height: '100%'}}>
|
||||||
|
<div className='flex-container'>
|
||||||
|
{createEditTable(TABLE_HEAD, {
|
||||||
|
showIndex: true,
|
||||||
|
// height: 100,
|
||||||
|
// onRowClick: this.onRowClick.bind(this),
|
||||||
|
// onRowDoubleClick: this.onRowDoubleClick.bind(this),
|
||||||
|
// onBeforeEvent: headBeforeEvent.bind(this),
|
||||||
|
onAfterEvent: headAfterEvent.bind(this),
|
||||||
|
isAddRow: false,
|
||||||
|
showCheck: false
|
||||||
|
})}
|
||||||
|
</div>
|
||||||
|
</div>;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
PickmBorrowDlg = createPage({
|
||||||
|
billinfo: {
|
||||||
|
billtype: 'grid',
|
||||||
|
pagecode: DIALOGCODE.BORROWDLG
|
||||||
|
}//,
|
||||||
|
})(PickmBorrowDlg);
|
||||||
|
|
||||||
|
export default PickmBorrowDlg;
|
|
@ -0,0 +1,2 @@
|
||||||
|
import initTemplate from './initTemplate';
|
||||||
|
export { initTemplate };
|
|
@ -0,0 +1,43 @@
|
||||||
|
import { DIALOGCODE } from '../../../constance';
|
||||||
|
import { getLangByResId } from '../../../../../../mmpub/mmpub/pub/tool/multiLangUtil';
|
||||||
|
const TABLE_HEAD = 'borrow_list';
|
||||||
|
|
||||||
|
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;
|
||||||
|
}
|
Loading…
Reference in New Issue