diff --git a/src/pu/dhjyd/dhjydmaster/main/index.js b/src/pu/dhjyd/dhjydmaster/main/index.js index b3c9d25..08f5303 100644 --- a/src/pu/dhjyd/dhjydmaster/main/index.js +++ b/src/pu/dhjyd/dhjydmaster/main/index.js @@ -249,7 +249,8 @@ const FIELDS = { // 字段编码 BUSITYPE: 'busitype', CODE: 'code', PK_ORG: 'pk_org', - PRIMARYKEY: 'pk_chekbill_h' + PRIMARYKEY: 'pk_chekbill_h', + BRECHECK: 'brecheck' } //2 编辑模式变量 @@ -413,7 +414,6 @@ export class ApplicationPage extends Component { if (this.props.getUrlParam('fromPage') == 'dhjyd') { //如果来自"到货检验单"的"生成不合格检验单"跳转 this.onAddUnPassDone(); - } } this.updateBtnStatus(); // 更新按钮状态 @@ -1201,9 +1201,11 @@ export class ApplicationPage extends Component { [ACTIONS.APPROVEDETAIL]: (showmode == SHOWMODE_LIST || showmode == SHOWMODE_CARD) && isBrowse }); Object.assign(btnDisabled, { - // 修改和删除按钮需要根据审批状态控制 + // 修改和删除按和生成不合格检验单钮需要根据审批状态控制 [ACTIONS.EDIT]: !(hasCheckedRow && (!(checkedDatas[0].values[FIELDS.APPROVESTATUS]) || checkedDatas[0].values[FIELDS.APPROVESTATUS].value == '-1')), [ACTIONS.DELETE]: !(hasCheckedRow && (showmode == SHOWMODE_LIST || isAllFree)), + [ACTIONS.ADDUNPASS]: !(hasCheckedRow && (!(checkedDatas[0].values[FIELDS.APPROVESTATUS]) || checkedDatas[0].values[FIELDS.APPROVESTATUS].value == '-1') + && checkedDatas[0].values[FIELDS.BRECHECK].value * 1 > 0), [ACTIONS.COMMIT]: !hasFree, [ACTIONS.UNCOMMIT]: !hasNotFree, [ACTIONS.APPROVEDETAIL]: !(isCheckedOne && hasNotFree) @@ -2019,6 +2021,33 @@ export class ApplicationPage extends Component { areaInfo.tableId.forEach(areacode => { tableTypeObj[areacode] = 'editTable' }); + + //控制修改的合格数量/不合格数量不能大于原数量 + let bodyList = saveData.bodys['dhjydSlave0Sub'].rows || [] + let info = this.props.getUrlParam('info') ? JSON.parse(this.props.getUrlParam('info')).bodys['dhjydSlave0Sub'].rows : [] + let oldNum = info.map(item => { + return { + qualifiednum: item.values['qualifiednum'], + nunqualifiednum: item.values['nunqualifiednum'], + } + }) + let msg = '' + bodyList.forEach((row, i) => { + oldNum.forEach(old => { + for (let key in old) { + if (row.values[key].value * 1 > old[key].value * 1) { + msg = '存在合格数量/不合格数量大于原数量,请检查' + } + } + }) + }) + if (msg.length > 1) { + toast({color: 'danger', content: msg}); + return false + } + return false + + // 保存前执行校验公式 this.props.validateToSave(saveData, () => { // 保存请求 @@ -2269,7 +2298,11 @@ export class ApplicationPage extends Component { pageCode: this.config.pagecode, // pagecode areaInfo, callback: ({data, billCodeContext}) => { - toast({color: 'success', content: '操作成功'}); + if (!data) { + toast({color: 'danger', content: '查询失败'}); + return false + } + // toast({color: 'success', content: '操作成功'}); let info = JSON.stringify(data) billCodeContext = JSON.stringify(billCodeContext) this.props.openTo('/pu/dhjyd/dhjydmaster/main/#/card', { @@ -2279,19 +2312,6 @@ export class ApplicationPage extends Component { info: info, billCodeContext }); - - - /*// 设置页面模式为卡片编辑态 - this.state.showmode = SHOWMODE_CARD; - this.state.editmode = EDITMODE_ADD; - // 设置标题栏返回按钮 - this.state.head.initShowBackBtn = false; - this.setState(this.state, () => { - // 获取卡片区域编码 - let areaInfo = this.getCardAreaCode(); - // 设置卡片主表单为编辑态 - this.updateCardStatus({ areaInfo, editmode: EDITMODE_ADD }); - });*/ } }); }