From e39bfcf3b362be9593107792bce9eab9a1dc1232 Mon Sep 17 00:00:00 2001 From: xyz <747050115@qq.com> Date: Tue, 4 Mar 2025 09:28:41 +0800 Subject: [PATCH] gl/verify --- src/gl/public/ReferLoader/index.js | 4 +- src/gl/public/ReferLoader/uapRefer.js | 4 +- src/gl/public/common/checkMustItem.js | 31 + src/gl/public/common/method.js | 4 +- src/gl/public/common/stringDeal.js | 31 + src/gl/public/common/voucherUtils.js | 201 + .../components/FormItems/CheckboxItem.js | 4 +- .../FormItems/DateTimePickerItem.js | 4 +- .../public/components/FormItems/InputItem.js | 4 +- .../components/FormItems/NcnumberItem.js | 4 +- .../public/components/FormItems/RadioItem.js | 4 +- .../public/components/FormItems/ReferItem.js | 4 +- .../public/components/FormItems/SelectItem.js | 4 +- .../public/components/FormItems/SwitchItem.js | 4 +- src/gl/public/components/FormItems/index.js | 4 +- src/gl/public/components/GlobalStore.js | 4 +- src/gl/public/components/HeaderArea/index.js | 4 +- src/gl/public/components/base/FICheckbox.js | 4 +- src/gl/public/components/base/FISelect.js | 4 +- src/gl/public/components/base/index.js | 4 +- src/gl/public/components/constJSON.js | 88 + .../components/getAssDatas/assidDbCheck.js | 356 ++ src/gl/public/components/getAssDatas/index.js | 226 ++ .../public/components/getAssDatas/index.less | 7 + .../components/getDefaultAccountBook.js | 4 +- .../components/printModal/events/index.js | 4 +- .../printModal/events/mouldOutput.js | 4 +- .../printModal/events/printRequire.js | 4 +- src/gl/public/components/printModal/index.js | 4 +- src/gl/public/components/uapRefer.js | 4 +- src/gl/public/components/utils.js | 277 ++ src/gl/public/components/variables.less | 19 + .../lang/standard/simpchn/20020RECON.json | 10 +- .../historyquery/list/events/buttonClick.js | 46 + .../list/events/filterSelectedData.js | 26 + .../historyquery/list/events/handleDetail.js | 45 + .../list/events/handleQueryClick.js | 103 + .../historyquery/list/events/handleSum.js | 41 + .../list/events/handleUnverify.js | 136 + .../verify/historyquery/list/events/index.js | 10 + .../historyquery/list/events/initTemplate.js | 30 + src/gl/verify/historyquery/list/index.js | 1236 ++++++ src/gl/verify/historyquery/list/index.less | 400 ++ .../historyquery/list/searchModal/index.less | 75 + .../list/searchModal/searchModal.js | 1216 ++++++ .../verify/verify/vrify/events/buttonClick.js | 111 + .../verify/vrify/events/compareOtherData.js | 72 + .../verify/vrify/events/handleAllChicked.js | 94 + .../verify/vrify/events/handleAutoHedging.js | 106 + .../verify/vrify/events/handleAutoVerify.js | 113 + .../verify/vrify/events/handleHedging.js | 178 + .../verify/vrify/events/handleQueryClick.js | 242 ++ .../verify/vrify/events/handleUnMatch.js | 53 + .../verify/vrify/events/handleVerify.js | 167 + src/gl/verify/verify/vrify/events/index.js | 18 + .../verify/vrify/events/initTemplate.js | 37 + .../verify/verify/vrify/events/iseqAssinfo.js | 27 + .../verify/vrify/events/matchOtherData.js | 65 + .../verify/vrify/events/verifyUnverifySum.js | 25 + src/gl/verify/verify/vrify/exportVrify.js | 3417 +++++++++++++++++ src/gl/verify/verify/vrify/index.js | 11 + src/gl/verify/verify/vrify/index.less | 567 +++ .../verify/vrify/queryModal/querymodal.js | 1402 +++++++ src/gl/verify/verify/vrify/router.js | 24 + src/gl/verify/verify/vrify/search.less | 303 ++ src/gl/verify/verify/vrify/searchpublic.less | 0 .../verifyStandardModal.js | 1135 ++++++ src/uapbd/refer/pub/MaterialGridRef/index.js | 2 +- 68 files changed, 12816 insertions(+), 55 deletions(-) create mode 100644 src/gl/public/common/checkMustItem.js create mode 100644 src/gl/public/common/stringDeal.js create mode 100644 src/gl/public/common/voucherUtils.js create mode 100644 src/gl/public/components/constJSON.js create mode 100644 src/gl/public/components/getAssDatas/assidDbCheck.js create mode 100644 src/gl/public/components/getAssDatas/index.js create mode 100644 src/gl/public/components/getAssDatas/index.less create mode 100644 src/gl/public/components/utils.js create mode 100644 src/gl/public/components/variables.less create mode 100644 src/gl/verify/historyquery/list/events/buttonClick.js create mode 100644 src/gl/verify/historyquery/list/events/filterSelectedData.js create mode 100644 src/gl/verify/historyquery/list/events/handleDetail.js create mode 100644 src/gl/verify/historyquery/list/events/handleQueryClick.js create mode 100644 src/gl/verify/historyquery/list/events/handleSum.js create mode 100644 src/gl/verify/historyquery/list/events/handleUnverify.js create mode 100644 src/gl/verify/historyquery/list/events/index.js create mode 100644 src/gl/verify/historyquery/list/events/initTemplate.js create mode 100644 src/gl/verify/historyquery/list/index.js create mode 100644 src/gl/verify/historyquery/list/index.less create mode 100644 src/gl/verify/historyquery/list/searchModal/index.less create mode 100644 src/gl/verify/historyquery/list/searchModal/searchModal.js create mode 100644 src/gl/verify/verify/vrify/events/buttonClick.js create mode 100644 src/gl/verify/verify/vrify/events/compareOtherData.js create mode 100644 src/gl/verify/verify/vrify/events/handleAllChicked.js create mode 100644 src/gl/verify/verify/vrify/events/handleAutoHedging.js create mode 100644 src/gl/verify/verify/vrify/events/handleAutoVerify.js create mode 100644 src/gl/verify/verify/vrify/events/handleHedging.js create mode 100644 src/gl/verify/verify/vrify/events/handleQueryClick.js create mode 100644 src/gl/verify/verify/vrify/events/handleUnMatch.js create mode 100644 src/gl/verify/verify/vrify/events/handleVerify.js create mode 100644 src/gl/verify/verify/vrify/events/index.js create mode 100644 src/gl/verify/verify/vrify/events/initTemplate.js create mode 100644 src/gl/verify/verify/vrify/events/iseqAssinfo.js create mode 100644 src/gl/verify/verify/vrify/events/matchOtherData.js create mode 100644 src/gl/verify/verify/vrify/events/verifyUnverifySum.js create mode 100644 src/gl/verify/verify/vrify/exportVrify.js create mode 100644 src/gl/verify/verify/vrify/index.js create mode 100644 src/gl/verify/verify/vrify/index.less create mode 100644 src/gl/verify/verify/vrify/queryModal/querymodal.js create mode 100644 src/gl/verify/verify/vrify/router.js create mode 100644 src/gl/verify/verify/vrify/search.less create mode 100644 src/gl/verify/verify/vrify/searchpublic.less create mode 100644 src/gl/verify/verify/vrify/verifyStandardModal/verifyStandardModal.js diff --git a/src/gl/public/ReferLoader/index.js b/src/gl/public/ReferLoader/index.js index 945f5c2..dcc7f86 100644 --- a/src/gl/public/ReferLoader/index.js +++ b/src/gl/public/ReferLoader/index.js @@ -1,4 +1,4 @@ -/*pbHnlLNCpsWdx+f6QNDErXUJ9hVUkCPC2/wKKBoJVMo=*/ +/*jdNRuZuduINgBy4HapEa4fqmBMzA+9W4I6NnfWBJr/o=*/ import {Component} from "react" import createScript from './uapRefer' import './index.less' @@ -46,4 +46,4 @@ export default class ReferLoader extends Component{ } } -/*pbHnlLNCpsWdx+f6QNDErXUJ9hVUkCPC2/wKKBoJVMo=*/ \ No newline at end of file +/*jdNRuZuduINgBy4HapEa4fqmBMzA+9W4I6NnfWBJr/o=*/ \ No newline at end of file diff --git a/src/gl/public/ReferLoader/uapRefer.js b/src/gl/public/ReferLoader/uapRefer.js index bbbb599..440a879 100644 --- a/src/gl/public/ReferLoader/uapRefer.js +++ b/src/gl/public/ReferLoader/uapRefer.js @@ -1,4 +1,4 @@ -/*qe7Cb23wLVjc4iA6ZXxPWhPesV7QTTnD1jl8QxtdT5E=*/ +/*v2IABo5jWerB7tSekIAuCBahZRp8UmHcEUHzxFNTcbY=*/ //@Author: lijun export function handleLoad(refcode, code) { let Item = window[refcode].default; @@ -38,4 +38,4 @@ export default function createScript(src, code) { } } -/*qe7Cb23wLVjc4iA6ZXxPWhPesV7QTTnD1jl8QxtdT5E=*/ \ No newline at end of file +/*v2IABo5jWerB7tSekIAuCBahZRp8UmHcEUHzxFNTcbY=*/ \ No newline at end of file diff --git a/src/gl/public/common/checkMustItem.js b/src/gl/public/common/checkMustItem.js new file mode 100644 index 0000000..aa4d140 --- /dev/null +++ b/src/gl/public/common/checkMustItem.js @@ -0,0 +1,31 @@ +/*5h9AGTkI3XFVuhb+2N4cB6aO0WggNUJaKOrIq5tsXlk=*/ +import React, { Component } from "react"; +import {ajax ,toast} from "nc-lightapp-front"; +export default function checkMustItem(dataObj){ + let str='' + let flag=true; + for(let k in dataObj){ + if(dataObj[k]&&typeof(dataObj[k])=='object'){ + if(dataObj[k].constructor===Array||(dataObj[k] instanceof Array)){//数组 + if(dataObj[k].length>0&&dataObj[k][0]){ + if(dataObj[k][0].isMustItem){ + if(!dataObj[k][0].value){ + str+=dataObj[k][0].itemName+','; + flag=false; + } + } + } + }else{ + if(dataObj[k].isMustItem){ + if(!dataObj[k].value){ + str+=dataObj[k].itemName+','; + flag=false; + } + } + } + } + } + let backData={'info':str,'flag':flag}; + return backData; +} +/*5h9AGTkI3XFVuhb+2N4cB6aO0WggNUJaKOrIq5tsXlk=*/ \ No newline at end of file diff --git a/src/gl/public/common/method.js b/src/gl/public/common/method.js index 7922fad..57e27a8 100644 --- a/src/gl/public/common/method.js +++ b/src/gl/public/common/method.js @@ -1,4 +1,4 @@ -/*V0t6O+8MUdvy3gvH3QGja+kh/2tF6E4kJ2cSXOQKdys=*/ +/*2kXcp/qiu4YtfhhD41m83EgYg+zWtVt+sTb9air6koo=*/ //获取界面高度 function getTableHeight(height){ let defaultHeight=0 @@ -70,4 +70,4 @@ function accDiv(arg1,arg2){ // } } export {accAdd,Subtr,accMul,accDiv,getTableHeight} -/*V0t6O+8MUdvy3gvH3QGja+kh/2tF6E4kJ2cSXOQKdys=*/ \ No newline at end of file +/*2kXcp/qiu4YtfhhD41m83EgYg+zWtVt+sTb9air6koo=*/ \ No newline at end of file diff --git a/src/gl/public/common/stringDeal.js b/src/gl/public/common/stringDeal.js new file mode 100644 index 0000000..dd316fe --- /dev/null +++ b/src/gl/public/common/stringDeal.js @@ -0,0 +1,31 @@ +/*hpNf6SGXlFt0G5njW4sDg5jZqN+sVW5kQ0vhymvwsJM=*/ + + //只提取汉字   +function  GetChinese(strValue)  { + if (strValue !=  null  &&  strValue !=  "") { + var  reg  =  /[\u4e00-\u9fa5]/g; + if(strValue.match(reg)){ + return  strValue.match(reg).join(""); + }else{ + return ""; + } + + } + else + return  ""; +} +//去掉汉字   +function  RemoveChinese(strValue)  { + if (strValue !=  null  &&  strValue  !=  "") { + var  reg  =  /[\u4e00-\u9fa5]/g; + if(strValue.match(reg)){ + return  strValue.replace(reg, ""); + }else{ + return  strValue; + } + } + else + return  ""; +} +export { GetChinese, RemoveChinese} +/*hpNf6SGXlFt0G5njW4sDg5jZqN+sVW5kQ0vhymvwsJM=*/ \ No newline at end of file diff --git a/src/gl/public/common/voucherUtils.js b/src/gl/public/common/voucherUtils.js new file mode 100644 index 0000000..c3f60bc --- /dev/null +++ b/src/gl/public/common/voucherUtils.js @@ -0,0 +1,201 @@ +/*9IvejywmIOnnbJQ0iXrTRmL10FVkbTDylOks+Ux0Hdk=*/ +// 用于生成凭证、联查凭证 +import { cardCache,cacheTools,ajax } from 'nc-lightapp-front'; +const { setDefData } = cardCache; +import { + dataSource,dataSourceDetail, + voucher_link,voucher_gen, + listCacheKey,cardCacheKey,linkToCacheTool +} from '../components/constJSON'; + +// param: +//{ +// voucher:voucher, //完整的凭证vo [vo1,vo2]/vo +// pk_voucher: '...',//联查时,凭证id [pk1,pk2]/pk +// titlename:'凭证生成', +// backUrl:'/', +// backAppCode:backAppCode, +// backPageCode:backPageCode +// } + +export function openToVoucher(_this,param){ + if (Array.isArray(param.pk_voucher)&¶m.pk_voucher.length>1) { + let voucherapp = voucherRelatedApp(voucher_link,"Y"); + let appcode = voucherapp.appcode; + let pagecode=voucherapp.pagecode; + //cacheTools.set('checkedData', { id: data }); 旧的 + cacheTools.set(linkToCacheTool, { id: param.pk_voucher }); + _this.props.openTo('/gl/gl_voucher/pages/main/index.html#/', { + status: 'browse', + appcode: appcode, + c: appcode, + //pagekey: 'link', + scene : '_LinkVouchar', + n: param.titlename,/* 国际化处理: 凭证联查*/ + ifshowQuery: true, + pagecode:pagecode + }); + } else { + let voucherapp = voucherRelatedApp(voucher_link,"N"); + let appcode = voucherapp.appcode; + let pagecode=voucherapp.pagecode; + let pk_voucher=param.pk_voucher; + if(Array.isArray(param.pk_voucher)){ + pk_voucher=param.pk_voucher[0] + } + _this.props.openTo('/gl/gl_voucher/pages/main/index.html#Welcome', + { + appcode: appcode, + c: appcode, + id: pk_voucher, + //pagekey: 'link', + scene : '_LinkVouchar', + n: param.titlename,/* 国际化处理: 凭证联查*/ + status: 'browse', + backflag: 'noback', + pagecode:pagecode + } + ) + } + +} + +export function pushToGenVoucher(_this,param){ + if (param.voucher.gl_voucher) { + let voucherapp = voucherRelatedApp(voucher_gen,"Y"); + let appcode = voucherapp.appcode; + let pagecode=voucherapp.pagecode; + //多张凭证到列表 + setDefData(listCacheKey, dataSource, param.voucher); + _this.props.pushTo('/list', { + appcode: appcode, + pagecode:pagecode, + ifshowQuery: true, //是否显示查询区,true不显示,false显示,默认显示 + n: param.titlename,/* 国际化处理: 凭证生成*/ + //pagekey: 'generate', + backUrl: param.backUrl?param.backUrl:'/', + backAppCode:param.backAppCode, + backPageCode:param.backPageCode, + }); + } else { + let voucherapp = voucherRelatedApp(voucher_gen,"N"); + let appcode = voucherapp.appcode; + let pagecode=voucherapp.pagecode; + //单张凭证到卡片 + setDefData(cardCacheKey, dataSourceDetail, param.voucher); + _this.props.pushTo('/Welcome', { + status: 'edit', + appcode: appcode, + pagecode:pagecode, + //pagekey: 'generate', + ifshowQuery: true, + n: param.titlename,/* 国际化处理: 凭证生成*/ + backflag: 'back', + backAppCode: param.backAppCode, + backPageCode: param.backPageCode + }); + } +} + +export function pushToLinkVoucher(_this, param) { + let urlParam = { + ifshowQuery: true, + n: param.titlename, + //pagekey: 'link', + scene : '_LinkVouchar', + status: 'browse', + backUrl: param.backUrl, + backAppCode: param.backAppCode, + backPageCode: param.backPageCode, + } + if(param.voucher){ + //预览(未保存的凭证联查) + if(Array.isArray(param.voucher)&¶m.voucher.length>1){ + let voucherapp = voucherRelatedApp(voucher_link,"Y"); + urlParam.appcode=voucherapp.appcode; + urlParam.pagecode=voucherapp.pagecode; + setDefData(listCacheKey, dataSource, param.voucher); + _this.props.pushTo('/list', urlParam); + }else{ + let voucherapp = voucherRelatedApp(voucher_link,"N"); + urlParam.appcode=voucherapp.appcode; + urlParam.pagecode=voucherapp.pagecode; + setDefData(cardCacheKey, dataSourceDetail, param.voucher); + urlParam.backflag='back'; + _this.props.pushTo('/Welcome', urlParam); + } + }else{ + //联查 + setDefData(listCacheKey, dataSource, param.pk_voucher); + if(Array.isArray(param.pk_voucher)&¶m.pk_voucher.length>1){ + let voucherapp = voucherRelatedApp(voucher_link,"Y"); + urlParam.appcode=voucherapp.appcode; + urlParam.pagecode=voucherapp.pagecode; + _this.props.pushTo('/list', urlParam); + }else{ + let voucherapp = voucherRelatedApp(voucher_link,"N"); + urlParam.appcode=voucherapp.appcode; + urlParam.pagecode=voucherapp.pagecode; + let pk_voucher = param.pk_voucher; + if (Array.isArray(param.pk_voucher)) { + pk_voucher = param.pk_voucher[0] + } + urlParam.backflag = 'back'; + urlParam.id = pk_voucher; + _this.props.pushTo('/Welcome', urlParam); + } + } + // setDefData(listCacheKey, dataSource, param.voucher); + // //setDefData('checkedData', dataSource, checkedDatas); 旧的 + // if(Array.isArray(param.voucher)&¶m.voucher.length>1){ + // _this.props.pushTo('/list', { + // appcode: appcode, + // ifshowQuery: true, + // n: param.titlename, + // pagekey: 'link', + // status: 'browse', + // backUrl: param.backUrl, + // backAppCode: param.backAppCode, + // backPageCode: param.backPageCode, + // }) + // }else{ + // let pk_voucher=param.voucher; + // if(Array.isArray(param.voucher)){ + // pk_voucher=param.voucher[0] + // } + // _this.props.pushTo('/Welcome', { + // appcode: appcode, + // n: param.titlename, + // pagekey: 'link', + // status: 'browse', + // backUrl: param.backUrl, + // backAppCode: param.backAppCode, + // backPageCode: param.backPageCode, + // id: pk_voucher, + // backflag: 'back' //是否有返回按钮 + // }) + // } + +} + +export function voucherRelatedApp(params,isList) { + let url = '/nccloud/gl/voucher/voucherRelatedApp.do'; + let data = { + sence: params, + billtype: 'C0', + isList:isList + } + let appcode = ''; + ajax({ + url, + data: data, + async: false, + success: function (response) { + if (response.success) { + appcode = response.data + } + } + }); + return appcode +} +/*9IvejywmIOnnbJQ0iXrTRmL10FVkbTDylOks+Ux0Hdk=*/ \ No newline at end of file diff --git a/src/gl/public/components/FormItems/CheckboxItem.js b/src/gl/public/components/FormItems/CheckboxItem.js index 2983f32..3ecb0d3 100644 --- a/src/gl/public/components/FormItems/CheckboxItem.js +++ b/src/gl/public/components/FormItems/CheckboxItem.js @@ -1,4 +1,4 @@ -/*Hox80GOutN/pUp2k0nyH861scLRfHyHzSgfPI2DIdEc=*/ +/*Hox80GOutN/pUp2k0nyH8+I/Txt1Cm8C7PfHItrlkAc=*/ import React, { Component } from 'react'; import {high,base,ajax } from 'nc-lightapp-front'; const { NCCheckbox} = base; @@ -53,4 +53,4 @@ export default class CheckboxItem extends Component { } } -/*Hox80GOutN/pUp2k0nyH861scLRfHyHzSgfPI2DIdEc=*/ \ No newline at end of file +/*Hox80GOutN/pUp2k0nyH8+I/Txt1Cm8C7PfHItrlkAc=*/ \ No newline at end of file diff --git a/src/gl/public/components/FormItems/DateTimePickerItem.js b/src/gl/public/components/FormItems/DateTimePickerItem.js index e1357f3..6d8cce1 100644 --- a/src/gl/public/components/FormItems/DateTimePickerItem.js +++ b/src/gl/public/components/FormItems/DateTimePickerItem.js @@ -1,4 +1,4 @@ -/*ZwhnxtbmMIFQdTGWRFw0ZThGQkArkyVg412vYzmfcz8=*/ +/*ZwhnxtbmMIFQdTGWRFw0ZQJm+CI+FRumcuoWbnT6/rk=*/ import React, { Component } from 'react'; // import { FormControl } from 'tinper-bee'; //import moment from 'moment'; @@ -45,4 +45,4 @@ export default class DateTimePickerItem extends Component { } } -/*ZwhnxtbmMIFQdTGWRFw0ZThGQkArkyVg412vYzmfcz8=*/ \ No newline at end of file +/*ZwhnxtbmMIFQdTGWRFw0ZQJm+CI+FRumcuoWbnT6/rk=*/ \ No newline at end of file diff --git a/src/gl/public/components/FormItems/InputItem.js b/src/gl/public/components/FormItems/InputItem.js index e0f61ab..298c654 100644 --- a/src/gl/public/components/FormItems/InputItem.js +++ b/src/gl/public/components/FormItems/InputItem.js @@ -1,4 +1,4 @@ -/*q5swdQBW4kixP8YwCgl1xctRoTc50st2mtrpo18OPH4=*/ +/*q5swdQBW4kixP8YwCgl1xZdWpGLJzY4HNH686iuKKLw=*/ import React, { Component } from 'react'; import {high,base } from 'nc-lightapp-front'; const { NCFormControl: FormControl} = base; @@ -48,4 +48,4 @@ export default class InputItem extends Component { } } -/*q5swdQBW4kixP8YwCgl1xctRoTc50st2mtrpo18OPH4=*/ \ No newline at end of file +/*q5swdQBW4kixP8YwCgl1xZdWpGLJzY4HNH686iuKKLw=*/ \ No newline at end of file diff --git a/src/gl/public/components/FormItems/NcnumberItem.js b/src/gl/public/components/FormItems/NcnumberItem.js index 22460d6..96b0f2b 100644 --- a/src/gl/public/components/FormItems/NcnumberItem.js +++ b/src/gl/public/components/FormItems/NcnumberItem.js @@ -1,4 +1,4 @@ -/*lWljEt/boTCPQObCipjdzpw/3/dMp232LGr7t6daujg=*/ +/*lWljEt/boTCPQObCipjdzv3AG+Fpwbtz56UHXeOtZpc=*/ import React, { Component } from 'react'; import {high,base } from 'nc-lightapp-front'; const { NCNumber} = base; @@ -44,4 +44,4 @@ export default class NcnumberItem extends Component { } } -/*lWljEt/boTCPQObCipjdzpw/3/dMp232LGr7t6daujg=*/ \ No newline at end of file +/*lWljEt/boTCPQObCipjdzv3AG+Fpwbtz56UHXeOtZpc=*/ \ No newline at end of file diff --git a/src/gl/public/components/FormItems/RadioItem.js b/src/gl/public/components/FormItems/RadioItem.js index d102a31..b285a23 100644 --- a/src/gl/public/components/FormItems/RadioItem.js +++ b/src/gl/public/components/FormItems/RadioItem.js @@ -1,4 +1,4 @@ -/*e//4VDm0w5wzjGCnbao1XIbzbQwZcLiG3IQQMgEX2cA=*/ +/*e//4VDm0w5wzjGCnbao1XC2JhVuBN9iythKeLPGZdgg=*/ import React, { Component } from 'react'; //import { Radio } from 'tinper-bee' import {high,base,ajax } from 'nc-lightapp-front'; @@ -51,4 +51,4 @@ export default class RadioItem extends Component { } -/*e//4VDm0w5wzjGCnbao1XIbzbQwZcLiG3IQQMgEX2cA=*/ \ No newline at end of file +/*e//4VDm0w5wzjGCnbao1XC2JhVuBN9iythKeLPGZdgg=*/ \ No newline at end of file diff --git a/src/gl/public/components/FormItems/ReferItem.js b/src/gl/public/components/FormItems/ReferItem.js index 418d457..79ba205 100644 --- a/src/gl/public/components/FormItems/ReferItem.js +++ b/src/gl/public/components/FormItems/ReferItem.js @@ -1,4 +1,4 @@ -/*w7rpdJZtU5aQYWV/d5agLqXFj/iM5rGF7XtK4GHWjEg=*/ +/*w7rpdJZtU5aQYWV/d5agLnnaUG7vZKdiV4T3HnzKNcA=*/ import React, { Component } from 'react'; //import Refer from 'components/Refer'; import {high } from 'nc-lightapp-front'; @@ -75,4 +75,4 @@ export default class ReferItem extends Component { } -/*w7rpdJZtU5aQYWV/d5agLqXFj/iM5rGF7XtK4GHWjEg=*/ \ No newline at end of file +/*w7rpdJZtU5aQYWV/d5agLnnaUG7vZKdiV4T3HnzKNcA=*/ \ No newline at end of file diff --git a/src/gl/public/components/FormItems/SelectItem.js b/src/gl/public/components/FormItems/SelectItem.js index b6b6c22..19f642c 100644 --- a/src/gl/public/components/FormItems/SelectItem.js +++ b/src/gl/public/components/FormItems/SelectItem.js @@ -1,4 +1,4 @@ -/*/b5PGsYdRV84Wk0rw0ORzmwBVBFclQ0CN3s0Ut201Z4=*/ +/*/b5PGsYdRV84Wk0rw0ORzo2RLaclWEJDU5xCBIw58jc=*/ import React, { Component } from 'react'; import {high,base,ajax } from 'nc-lightapp-front'; import {FISelect} from '../base' @@ -46,4 +46,4 @@ export default class SelectItem extends Component { } -/*/b5PGsYdRV84Wk0rw0ORzmwBVBFclQ0CN3s0Ut201Z4=*/ \ No newline at end of file +/*/b5PGsYdRV84Wk0rw0ORzo2RLaclWEJDU5xCBIw58jc=*/ \ No newline at end of file diff --git a/src/gl/public/components/FormItems/SwitchItem.js b/src/gl/public/components/FormItems/SwitchItem.js index 59d1ee4..a551d21 100644 --- a/src/gl/public/components/FormItems/SwitchItem.js +++ b/src/gl/public/components/FormItems/SwitchItem.js @@ -1,4 +1,4 @@ -/*Q/4a2B1rr9OMPSfLMBCHU6CXtx3S6l6M/1XdDUsCWAs=*/ +/*Q/4a2B1rr9OMPSfLMBCHUy+y7ZgvPOWfsYjIfCqE0bQ=*/ import React, { Component } from 'react'; import {high,base } from 'nc-lightapp-front'; const { NCSwitch: Switch} = base; @@ -40,4 +40,4 @@ export default class SwitchItem extends Component { } } -/*Q/4a2B1rr9OMPSfLMBCHU6CXtx3S6l6M/1XdDUsCWAs=*/ \ No newline at end of file +/*Q/4a2B1rr9OMPSfLMBCHUy+y7ZgvPOWfsYjIfCqE0bQ=*/ \ No newline at end of file diff --git a/src/gl/public/components/FormItems/index.js b/src/gl/public/components/FormItems/index.js index 6b57d6d..e4bb3f4 100644 --- a/src/gl/public/components/FormItems/index.js +++ b/src/gl/public/components/FormItems/index.js @@ -1,4 +1,4 @@ -/*pbHnlLNCpsWdx+f6QNDErXUJ9hVUkCPC2/wKKBoJVMo=*/ +/*jdNRuZuduINgBy4HapEa4fqmBMzA+9W4I6NnfWBJr/o=*/ import RadioItem from './RadioItem'; import CheckboxItem from './CheckboxItem'; import ReferItem from './ReferItem'; @@ -18,4 +18,4 @@ export { SwitchItem,NcnumberItem } -/*pbHnlLNCpsWdx+f6QNDErXUJ9hVUkCPC2/wKKBoJVMo=*/ \ No newline at end of file +/*jdNRuZuduINgBy4HapEa4fqmBMzA+9W4I6NnfWBJr/o=*/ \ No newline at end of file diff --git a/src/gl/public/components/GlobalStore.js b/src/gl/public/components/GlobalStore.js index 4dbefc9..d660c6a 100644 --- a/src/gl/public/components/GlobalStore.js +++ b/src/gl/public/components/GlobalStore.js @@ -1,4 +1,4 @@ -/*UF6cC+eLdDMpGYLSN/5VM6eGm33qKRQqyHy/Kfz/dXI=*/ +/*UF6cC+eLdDMpGYLSN/5VM18ynDiY6pLGeNObwSMU8Pk=*/ /** * 全局store, 在整个App的生命周期生存 */ @@ -34,4 +34,4 @@ class GlobalStore { export default new GlobalStore(); -/*UF6cC+eLdDMpGYLSN/5VM6eGm33qKRQqyHy/Kfz/dXI=*/ \ No newline at end of file +/*UF6cC+eLdDMpGYLSN/5VM18ynDiY6pLGeNObwSMU8Pk=*/ \ No newline at end of file diff --git a/src/gl/public/components/HeaderArea/index.js b/src/gl/public/components/HeaderArea/index.js index 50ca972..e483c36 100644 --- a/src/gl/public/components/HeaderArea/index.js +++ b/src/gl/public/components/HeaderArea/index.js @@ -1,4 +1,4 @@ -/*pbHnlLNCpsWdx+f6QNDErXUJ9hVUkCPC2/wKKBoJVMo=*/ +/*jdNRuZuduINgBy4HapEa4fqmBMzA+9W4I6NnfWBJr/o=*/ /* * @Description: 标题区公共组件 * @Author: llixxm @@ -79,4 +79,4 @@ class HeaderArea extends Component { } HeaderArea = createPage({})(HeaderArea) export default HeaderArea -/*pbHnlLNCpsWdx+f6QNDErXUJ9hVUkCPC2/wKKBoJVMo=*/ \ No newline at end of file +/*jdNRuZuduINgBy4HapEa4fqmBMzA+9W4I6NnfWBJr/o=*/ \ No newline at end of file diff --git a/src/gl/public/components/base/FICheckbox.js b/src/gl/public/components/base/FICheckbox.js index 13082b6..a75acba 100644 --- a/src/gl/public/components/base/FICheckbox.js +++ b/src/gl/public/components/base/FICheckbox.js @@ -1,4 +1,4 @@ -/*cm64LS4DKuk7pEVrnYq+AXc7izcNNL0kUebVgZvM1Tk=*/ +/*cm64LS4DKuk7pEVrnYq+AbxHYkT9HnyCJiW2FGYQht0=*/ import React, { Component } from 'react'; import {base} from 'nc-lightapp-front' const { NCTooltip, NCCheckbox } = base; @@ -35,4 +35,4 @@ class FICheckbox extends Component { } export {FICheckbox} -/*cm64LS4DKuk7pEVrnYq+AXc7izcNNL0kUebVgZvM1Tk=*/ \ No newline at end of file +/*cm64LS4DKuk7pEVrnYq+AbxHYkT9HnyCJiW2FGYQht0=*/ \ No newline at end of file diff --git a/src/gl/public/components/base/FISelect.js b/src/gl/public/components/base/FISelect.js index f44f04b..2d2b57b 100644 --- a/src/gl/public/components/base/FISelect.js +++ b/src/gl/public/components/base/FISelect.js @@ -1,4 +1,4 @@ -/*SWGbFO3it5zBXcJ7KP8I2qCkfUSIIxXOsVxFC93oXag=*/ +/*fIURA82Kuf8vrsZx7NuOnRdf35TbpxS3vreGbpQl04w=*/ import {base} from 'nc-lightapp-front' const {NCSelect} = base; const NCOption = NCSelect.NCOption; @@ -27,4 +27,4 @@ function FIOption(nextProps){ FISelect.FIOption = FIOption; export {FISelect}; -/*SWGbFO3it5zBXcJ7KP8I2qCkfUSIIxXOsVxFC93oXag=*/ \ No newline at end of file +/*fIURA82Kuf8vrsZx7NuOnRdf35TbpxS3vreGbpQl04w=*/ \ No newline at end of file diff --git a/src/gl/public/components/base/index.js b/src/gl/public/components/base/index.js index 6df7d2b..08cf94d 100644 --- a/src/gl/public/components/base/index.js +++ b/src/gl/public/components/base/index.js @@ -1,6 +1,6 @@ -/*pbHnlLNCpsWdx+f6QNDErXUJ9hVUkCPC2/wKKBoJVMo=*/ +/*jdNRuZuduINgBy4HapEa4fqmBMzA+9W4I6NnfWBJr/o=*/ import {FISelect} from './FISelect'; import {FICheckbox} from './FICheckbox'; export {FISelect, FICheckbox}; -/*pbHnlLNCpsWdx+f6QNDErXUJ9hVUkCPC2/wKKBoJVMo=*/ \ No newline at end of file +/*jdNRuZuduINgBy4HapEa4fqmBMzA+9W4I6NnfWBJr/o=*/ \ No newline at end of file diff --git a/src/gl/public/components/constJSON.js b/src/gl/public/components/constJSON.js new file mode 100644 index 0000000..e4aa975 --- /dev/null +++ b/src/gl/public/components/constJSON.js @@ -0,0 +1,88 @@ +/*pnHz4pTkta0Q7UuvaPE0J8JjHFxNPVPhAfCud1ywgAc=*/ +const formId='head'; +const tableId = 'gl_voucher'; + +const searchId = '20021005query'; + +const dataSource = 'gl.gl_voucher.voucher_list.jumper'; + +const dataSourceCheck='gl.gl_voucher.voucher_list.checkArray'; + +const dataSourceTable = 'gl.gl_voucher.voucher_list.table'; + +const dataSourceCoord = 'gl.gl_voucher.voucher.coorder'; + +const dataSourceDetail = 'gl.gl_voucher.voucher.detail'; + +const dataSourceNormal = 'gl.gl_voucher.list.normal'; + +const dataSourceNormalQuery = 'gl.gl_voucher.list.normalquery'; +const dataSourceHeightQuery = 'gl.gl_voucher.list.heightquery'; +const dataSourceValue = 'gl.gl_voucher.list.normalValue'; +const query_accountingbook='gl.gl_voucher.query_accountingbook'; + +const dataSourceHeight = 'gl.gl_voucher.list.height'; + +const dataSourceNumber = 'gl.gl_voucher.list.number'; + +const oldSource = 'gl.gl_voucher.voucher.pages'; + +const successStatus = 'gl.gl_voucher.voucher.saveStatus'; + +const dataSourceAppCode = 'gl.gl_voucher.voucher.appcode'; //生成凭appcpde +const dataSourcePageCode = 'gl.gl_voucher.voucher.pagecode'; //pagecode +const currInfoDataSource="amountConvert"; + +const dataSourceSaveNext= 'gl.gl_voucher.voucher.savenext'; + +const periodDataSource='gl.gl_voucher.voucher.periodVoucher'; + +const mutilangJson_list='gl_voucher.list.mutilangJson';//多语 +const mutilangJson_card='gl_voucher.card.mutilangJson';//多语 + +const mergerequest_card='gl_voucher.card.mergerequest'; + +const dataSourcetableclick='gl_voucher.list.dataSourcetableclick'; + +const voucher_link='4'; +const voucher_gen='6'; + +const listCacheKey='gl_voucher'; +const linkToCacheTool='checkedData_gl'; +const cardCacheKey='voucher_detail'; + +export { + formId, + tableId, + searchId, + dataSource, + dataSourceTable, + dataSourceCoord, + dataSourceNormal, + dataSourceNormalQuery, + dataSourceHeightQuery, + dataSourceValue, + dataSourceHeight, + dataSourceDetail, + dataSourceSaveNext, + dataSourceNumber, + oldSource, + successStatus, + dataSourceAppCode, + dataSourcePageCode, + currInfoDataSource, + dataSourceCheck, + periodDataSource, + mutilangJson_list, + mutilangJson_card, + mergerequest_card, + dataSourcetableclick, + voucher_link, + voucher_gen, + listCacheKey, + cardCacheKey, + linkToCacheTool, + query_accountingbook +}; + +/*pnHz4pTkta0Q7UuvaPE0J8JjHFxNPVPhAfCud1ywgAc=*/ \ No newline at end of file diff --git a/src/gl/public/components/getAssDatas/assidDbCheck.js b/src/gl/public/components/getAssDatas/assidDbCheck.js new file mode 100644 index 0000000..0caf81a --- /dev/null +++ b/src/gl/public/components/getAssDatas/assidDbCheck.js @@ -0,0 +1,356 @@ +/*WiPJY+eG2IYTEF/kqeJo3MJLDK7cJ99T75h5viPb4wc=*/ +import React, { Component } from 'react'; +import {high,base,ajax,toast} from 'nc-lightapp-front'; +const { Refer} = high; +import createScript from '../uapRefer.js'; +import ReferLoader from '../../ReferLoader'; +const { NCFormControl: FormControl, NCDatePicker: DatePicker, NCButton: Button, NCRadio: Radio, NCBreadcrumb: Breadcrumb, + NCRow: Row, NCCol: Col, NCTree: Tree, NCIcon: Icon, NCLoading: Loading, NCTable: Table, NCSelect: Select, + NCCheckbox: Checkbox, NCNumber, AutoComplete, NCDropdown: Dropdown, NCPanel: Panel,NCModal:Modal,NCForm +} = base; +//import '../index.less'; +const { NCFormItem:FormItem } = NCForm; +const format = 'YYYY-MM-DD'; +const timeFormat = 'YYYY-MM-DD HH:mm:ss'; +import {SelectItem} from '../FormItems'; +import {InputItem} from '../../../public/components/FormItems/index' +import {GetChinese, RemoveChinese} from '../../common/stringDeal.js'; + +export default function drawingAssidData(self,text, record, index,showDisableData){ + let { assData,childAssData } = self.state; + let defaultValue = []; + if (assData[index]["checkvaluename"]) { + assData[index]["checkvaluename"].split(",").map((item, _index) => { + defaultValue[_index] = { refname: item, refpk: "" }; + }); + assData[index]["pk_Checkvalue"].split(",").map((item, _index) => { + defaultValue[_index].refpk = item; + }); + } else { + defaultValue = [{ refname: "", refpk: "" }]; + } + if(record.refnodename){ + let referUrl= record.refnodename+'.js'; + let config={ + "pk_org": childAssData.pk_org, + "pk_unit": childAssData.pk_org,/* 业务单元 pk 用来进行 科目交叉校验规则过滤 */ + "pk_defdoclist":record.classid, + "pk_accountingbook": childAssData.pk_accountingbook, + "date": childAssData.prepareddate, + "pk_accasoa": childAssData.pk_accasoa, + "classid": record.classid, + "assvo": JSON.stringify(assData), + "isDataPowerEnable": 'Y', + "DataPowerOperationCode" : 'fi' + } + if(!self.state[record.pk_accassitem]){ + {createScript.call(self,referUrl,record.pk_accassitem)} + return
+ }else{ + if(record.classid=='b26fa3cb-4087-4027-a3b6-c83ab2a086a9'||record.classid=='40d39c26-a2b6-4f16-a018-45664cac1a1f'){//部门,人员 + return ( + { + if(obj){ + if(obj.refType=='grid'){ + config.GridRefActionExt='nccloud.web.gl.ref.AccAssRuleCtrlSqlBuilder'; + }else if(obj.refType=='tree'){ + config.TreeRefActionExt='nccloud.web.gl.ref.AccAssRuleCtrlSqlBuilder'; + }else if(obj.refType=='gridTree'){ + config.GridRefActionExt='nccloud.web.gl.ref.AccAssRuleCtrlSqlBuilder'; + } + } + if(record.classid == '40d39c26-a2b6-4f16-a018-45664cac1a1f'){ + //显示离职人员 + config.isShowDimission=true; + } + if(record.classid&&record.classid.length==20){//classid的长度大于20的话过滤条件再加一个pk_defdoclist + return config + }else{ + config.busifuncode="all"; + return config + } + }} + onChange={(v) => { + let { assData } = self.state; + let originData = self.findByKey(record.key, assData); + let refnameArr = [], refpkArr = [], refcodeArr = []; + if (originData) { + v.map((arr, index) => { + refnameArr.push(arr.refname); + refpkArr.push(arr.refpk); + refcodeArr.push(arr.refcode); + + }) + originData.checkvaluename = (v.length > 0) ? refnameArr.join() : null; + originData.pk_Checkvalue = (v.length > 0) ? refpkArr.join() : null; + originData.checkvaluecode = (v.length > 0) ? refcodeArr.join() : null; + } + childAssData.assData = assData; + self.setState({ + assData, childAssData + }) + }} + /> + ) + }else{ + return ( + { + if(obj){ + if(obj.refType=='grid'){ + config.GridRefActionExt='nccloud.web.gl.ref.AccAssRuleCtrlSqlBuilder'; + }else if(obj.refType=='tree'){ + config.TreeRefActionExt='nccloud.web.gl.ref.AccAssRuleCtrlSqlBuilder'; + }else if(obj.refType=='gridTree'){ + config.GridRefActionExt='nccloud.web.gl.ref.AccAssRuleCtrlSqlBuilder'; + } + } + return config + }} + onChange={(v)=>{ + let { assData } = self.state; + let originData = self.findByKey(record.key, assData); + let refnameArr = [], refpkArr = [], refcodeArr = []; + if (originData) { + v.map((arr, index) => { + refnameArr.push(arr.refname); + refpkArr.push(arr.refpk); + refcodeArr.push(arr.refcode); + + }) + originData.checkvaluename = (v.length > 0) ? refnameArr.join() : null; + originData.pk_Checkvalue = (v.length > 0) ? refpkArr.join() : null; + originData.checkvaluecode = (v.length > 0) ? refcodeArr.join() : null; + } + childAssData.assData = assData; + self.setState({ + assData, childAssData + }) + }} + />) + + } + } + }else{//不是参照的话要区分日期、字符、数值 + if(record.classid=='BS000010000100001033'){//日期 + return( + { + let { assData } = self.state; + let originData = self.findByKey(record.key, assData); + if (originData) { + let assArr = []; + assArr.push(v); + originData.checkvaluename = v?assArr.join():null; + originData.pk_Checkvalue = v?assArr.join():null; + originData.checkvaluecode = v?assArr.join():null; + } + childAssData.assData = assData; + self.setState({ + assData, childAssData + }) + }} + + /> + ) + }else if(record.classid=='BS000010000100001034'){//日期时间 + return( + { + let { assData } = self.state; + let originData = self.findByKey(record.key, assData); + if (originData) { + let assArr = []; + assArr.push(v); + originData.checkvaluename = v?assArr.join():null; + originData.pk_Checkvalue = v?assArr.join():null; + originData.checkvaluecode = v?assArr.join():null; + } + childAssData.assData = assData; + self.setState({ + assData, childAssData + }) + }} + + /> + ) + }else if(record.classid=='BS000010000100001031' ||record.classid=='BS000010000100001004'){//数值 + return( + { + if(v.indexOf('.')!=-1){ + if(v&&v.slice(0,v.indexOf('.')).length>Number(record.inputlength)){ + toast({content:self.state.json['publiccomponents-000148']+record.inputlength,color:'warning'});//输入的数字长度不能超过用户设置的长度 + v=v.slice(0,record.inputlength); + } + }else{ + if(v&&v.length>Number(record.inputlength)){ + toast({content:self.state.json['publiccomponents-000148']+record.inputlength,color:'warning'});//输入的数字长度不能超过用户设置的长度 + v=v.slice(0,record.inputlength); + } + } + let { assData } =self.state; + let originData = self.findByKey(record.key, assData); + if (originData) { + let assArr = []; + assArr.push(v); + originData.checkvaluename = v?assArr.join():null; + originData.pk_Checkvalue = v?assArr.join():null; + originData.checkvaluecode = v?assArr.join():null; + } + childAssData.assData = assData; + self.setState({ + assData, childAssData + }) + }} + /> + ) + }else if(record.classid=='BS000010000100001032'){//布尔 + return( + + { + return ([{ + label: self.state.json['publiccomponents-000005'],/* 国际化处理: 是*/ + value: 'Y' + }, { + label: self.state.json['publiccomponents-000006'],/* 国际化处理: 否*/ + value: 'N' + }]) + } + } + onChange={(v)=>{ + let { assData } =self.state; + let originData = self.findByKey(record.key, assData); + if (originData) { + let assArr = []; + assArr.push(v); + originData.checkvaluename = v?assArr.join():null; + originData.pk_Checkvalue = v?assArr.join():null; + originData.checkvaluecode = v?assArr.join():null; + } + childAssData.assData = assData; + self.setState({ + assData, childAssData + }) + }} + /> + + ) + }else{//字符 + return( + // { + // if(v&&v.length>0){ + // if(GetChinese(v).length>0&&2*(GetChinese(v).length)>Number(record.inputlength)){ + // v=v.slice(0,Number(record.inputlength/2)); + // }else if(GetChinese(v).length>0&&2*(GetChinese(v).length)+RemoveChinese(v).length>Number(record.inputlength)){ + // toast({content:self.state.json['publiccomponents-000148']+record.inputlength,color:'warning'});//输入的数字长度不能超过用户设置的长度 + // v= RemoveChinese(v); + // }else if(RemoveChinese(v).length>Number(record.inputlength)){ + // toast({content:self.state.json['publiccomponents-000148']+record.inputlength,color:'warning'});//输入的数字长度不能超过用户设置的长度 + // v=v.slice(0,Number(record.inputlength)); + // } + // } + // let { assData } =self.state; + // let originData = self.findByKey(record.key, assData); + // if (originData) { + // originData.checkvaluename = v; + // originData.pk_Checkvalue =v; + // originData.checkvaluecode=v; + // } + // childAssData.assData=assData; + // self.setState({ + // assData,childAssData + // }) + // }} + // /> + { + let { assData } =self.state; + let originData = self.findByKey(record.key, assData); + if (originData) { + let assArr = []; + assArr.push(v); + originData.checkvaluename = v?assArr.join():null; + originData.pk_Checkvalue = v?assArr.join():null; + originData.checkvaluecode = v?assArr.join():null; + } + childAssData.assData = assData; + self.setState({ + assData, childAssData + }) + }} + /> + ) + } + + } +} + +/*WiPJY+eG2IYTEF/kqeJo3MJLDK7cJ99T75h5viPb4wc=*/ \ No newline at end of file diff --git a/src/gl/public/components/getAssDatas/index.js b/src/gl/public/components/getAssDatas/index.js new file mode 100644 index 0000000..84e1e18 --- /dev/null +++ b/src/gl/public/components/getAssDatas/index.js @@ -0,0 +1,226 @@ +/*jdNRuZuduINgBy4HapEa4fqmBMzA+9W4I6NnfWBJr/o=*/ +import React, { Component } from 'react'; +import { base, ajax, getMultiLang } from 'nc-lightapp-front'; +const { NCTable: Table, NCCheckbox: Checkbox,NCDiv } = base; +import assidDbCheck from './assidDbCheck.js'; +import './index.less'; +const defaultProps12 = { + prefixCls: "bee-table", + multiSelect: { + type: "checkbox", + param: "key" + } +}; +// export default class AssidModal extends Component { +class AssidModal extends Component { + constructor(props) { + super(props); + this.state = { + json: {}, + showModal: false, + isShowUnit: false,//是否显示业务单元 + assData: this.props.pretentAssData.assData || [],//辅助核算信息 + childAssData: this.props.pretentAssData.childAssData||[],//接受父组件传过来的参数 + loadData: [],//查询模板加载数据 + listItem: {},//模板数据对应值 + checkedAll: this.props.pretentAssData.checkedAll || [],//默认全选中 + SelectedAssData: [],//选中的数据 + checkedArray: this.props.pretentAssData.checkedArray || [], + assidData: {}, //key=assid,value=assData + assitemData: {} //key=pk_accasoa+prepareddate,value=assitems + }; + } + componentWillMount() {} + //确定 过滤勾选的数据 + // confirm=()=>{ + // let self=this; + // let { SelectedAssData,checkedArray,listItem,assData,childAssData } =self.state; + // SelectedAssData=[];//清空 + // let url = '/nccloud/gl/voucher/queryAssId.do'; + // for(var i = 0; i < checkedArray.length; i++){ + // if(checkedArray[i]==true){ + // SelectedAssData.push(assData[i]); + // } + // } + // let sendData={}; + // let assid='',assname=''; + // if(SelectedAssData.length>0){ + // let parm={"ass":assData,"pk_accountingbook":childAssData.pk_accountingbook}; + // ajax({ + // url:url, + // data:parm, + // async:false, + // success:function(response){ + + // let { data }=response; + // if(data){ + // assid = data.assid; + // assname=data.assname?data.assname:''; + // sendData={ + // data:SelectedAssData, + // assid:assid, + // assname:assname + // } + // self.props.onConfirm(sendData); + // } + // } + // }) + // } else{ + // sendData={ + // data:SelectedAssData, + // assid:assid, + // assname:assname + // } + // self.props.onConfirm(sendData); + // } + // } + + //全选 + onAllCheckChange = () => { + let { pretentAssData } = this.props; + let { checkedAll, checkedArray } = pretentAssData.$_this.state; + for (var i = 0; i < checkedArray.length; i++) { + checkedArray[i] = !checkedAll; + } + checkedAll = !checkedAll; + $_this.setState({ + checkedAll, checkedArray + }) + + }; + //单选 + onCheckboxChange = (text, record, index) => { + let { pretentAssData } = this.props; + let { checkedAll, checkedArray } = pretentAssData.$_this.state; + let allFlag = false; + checkedArray[index] = !checkedArray[index]; + for (var i = 0; i < checkedArray.length; i++) { + if (!checkedArray[i]) { + allFlag = false; + break; + } else { + allFlag = true; + } + } + checkedAll = allFlag; + $_this.setState({ + checkedAll, checkedArray + }) + }; + //添加复选框 + renderColumnsMultiSelect(columns) { + let { pretentAssData } = this.props; + let { checkedAll, checkedArray } = pretentAssData.$_this.state; + const { multiSelect } = this.props; + let indeterminate_bool = false; + if (multiSelect && multiSelect.type === "checkbox") { + let i = checkedArray.length; + while (i--) { + if (checkedArray[i]) { + indeterminate_bool = true; + break; + } + } + let defaultColumns = [ + { + title:
{( + + )}
, + key: "checkbox", + attrcode: 'checkbox', + dataIndex: "checkbox", + width: "60px", + render: (text, record, index) => { + return (
+ +
+ ); + } + } + ]; + columns = defaultColumns.concat(columns); + } + return columns; + } + + render() { + let{pretentAssData}=this.props; + let {assData,$_this} =pretentAssData; + let columnsldad=[]; + let { json } = $_this.state + let showDisableData = true; + if (this.props.hasOwnProperty('showDisableData')) { + if (this.props.showDisableData != 'show') { + showDisableData = false; + } + } + let columns10 = [ + // { + // title: json['publiccomponents-000001'],/* 国际化处理: 核算类型编码*/ + // dataIndex: "checktypecode", + // key: "checktypecode", + // width: '100', + // render: (text, record, index) => { + // return {record.checktypecode}; + // } + // }, + { + title: (
{ json['publiccomponents-000002']}
),/* 国际化处理: 核算类型名称*/ + dataIndex: "checktypename", + key: "checktypename", + width: "200", + render: (text, record, index) => { + return
{record.checktypename}
; + } + }, + { + title: (
{ json['publiccomponents-000003']}
),/* 国际化处理: 核算内容*/ + dataIndex: "checkvaluename", + key: "checkvaluename", + width: "200", + render: (text, record, index) => { + return (assidDbCheck($_this, text, record, index, showDisableData, json)) + } + } + ]; + if (pretentAssData.checkboxShow) {//复选框显示true + columnsldad = $_this.renderColumnsMultiSelect(columns10); + } else { + columnsldad = columns10; + } + + const emptyFunc = () => {json['publiccomponents-000007']}!/* 国际化处理: 这里没有数据*/ + return ( + + + + ) + } +} +AssidModal.defaultProps = defaultProps12; +export default function (props = {}) { + var conf = { + }; + + return +} + +/*jdNRuZuduINgBy4HapEa4fqmBMzA+9W4I6NnfWBJr/o=*/ \ No newline at end of file diff --git a/src/gl/public/components/getAssDatas/index.less b/src/gl/public/components/getAssDatas/index.less new file mode 100644 index 0000000..5b4db10 --- /dev/null +++ b/src/gl/public/components/getAssDatas/index.less @@ -0,0 +1,7 @@ +.getAssDatas{ + width:100%; + .u-modal-dialog .u-modal-content .u-modal-body .u-checkbox{ + width: 30px; + margin: 0; + } +} \ No newline at end of file diff --git a/src/gl/public/components/getDefaultAccountBook.js b/src/gl/public/components/getDefaultAccountBook.js index 7a70bc9..aa6f714 100644 --- a/src/gl/public/components/getDefaultAccountBook.js +++ b/src/gl/public/components/getDefaultAccountBook.js @@ -1,4 +1,4 @@ -/*Lqr57tUGDNE0WbwQ2hnVVDhWFSzbyXIyDrposyg2ujJdgfkaopq+Yc1fWz7XUo7n*/ +/*Lqr57tUGDNE0WbwQ2hnVVGNFitS6nnIsAXBDh3lSQvaem0zVFn9yF2zDRw1kOW8I*/ import React, { Component } from 'react'; import {ajax,toast} from 'nc-lightapp-front'; export default function getDefaultAccountBook(appcode,json){ @@ -26,4 +26,4 @@ export default function getDefaultAccountBook(appcode,json){ // return pk_accountingbook; } -/*Lqr57tUGDNE0WbwQ2hnVVDhWFSzbyXIyDrposyg2ujJdgfkaopq+Yc1fWz7XUo7n*/ \ No newline at end of file +/*Lqr57tUGDNE0WbwQ2hnVVGNFitS6nnIsAXBDh3lSQvaem0zVFn9yF2zDRw1kOW8I*/ \ No newline at end of file diff --git a/src/gl/public/components/printModal/events/index.js b/src/gl/public/components/printModal/events/index.js index 83f1b92..a451be5 100644 --- a/src/gl/public/components/printModal/events/index.js +++ b/src/gl/public/components/printModal/events/index.js @@ -1,6 +1,6 @@ -/*pbHnlLNCpsWdx+f6QNDErXUJ9hVUkCPC2/wKKBoJVMo=*/ +/*jdNRuZuduINgBy4HapEa4fqmBMzA+9W4I6NnfWBJr/o=*/ import printRequire from './printRequire'; import mouldOutput from './mouldOutput'; export {printRequire,mouldOutput}; -/*pbHnlLNCpsWdx+f6QNDErXUJ9hVUkCPC2/wKKBoJVMo=*/ \ No newline at end of file +/*jdNRuZuduINgBy4HapEa4fqmBMzA+9W4I6NnfWBJr/o=*/ \ No newline at end of file diff --git a/src/gl/public/components/printModal/events/mouldOutput.js b/src/gl/public/components/printModal/events/mouldOutput.js index cf598bb..a2a6733 100644 --- a/src/gl/public/components/printModal/events/mouldOutput.js +++ b/src/gl/public/components/printModal/events/mouldOutput.js @@ -1,4 +1,4 @@ -/*PvwuEP5Xi2Z8qFi8vMu9jIuDswlKF3GeW1huFjgqGmk=*/ +/*PvwuEP5Xi2Z8qFi8vMu9jBbTILWmvYbUWVdy820+Cpo=*/ import { output } from 'nc-lightapp-front'; /** @@ -35,4 +35,4 @@ export default function mouldOutput(url, appcode,nodekey,ctemplate,paramObj, tot ) } -/*PvwuEP5Xi2Z8qFi8vMu9jIuDswlKF3GeW1huFjgqGmk=*/ \ No newline at end of file +/*PvwuEP5Xi2Z8qFi8vMu9jBbTILWmvYbUWVdy820+Cpo=*/ \ No newline at end of file diff --git a/src/gl/public/components/printModal/events/printRequire.js b/src/gl/public/components/printModal/events/printRequire.js index 0449df3..471b6b2 100644 --- a/src/gl/public/components/printModal/events/printRequire.js +++ b/src/gl/public/components/printModal/events/printRequire.js @@ -1,4 +1,4 @@ -/*lHzYNUaL4NPr7S5JYhidGvtAgxOrZASi1ETrZSXi5tM=*/ +/*lHzYNUaL4NPr7S5JYhidGgCL86G+PcSuQzBwlz1W9Nw=*/ import { print } from 'nc-lightapp-front'; /** @@ -27,4 +27,4 @@ export default function printRequire(url,appcode,nodekey,ctemplate,paramObj){ ) } -/*lHzYNUaL4NPr7S5JYhidGvtAgxOrZASi1ETrZSXi5tM=*/ \ No newline at end of file +/*lHzYNUaL4NPr7S5JYhidGgCL86G+PcSuQzBwlz1W9Nw=*/ \ No newline at end of file diff --git a/src/gl/public/components/printModal/index.js b/src/gl/public/components/printModal/index.js index af2f4a8..98ca972 100644 --- a/src/gl/public/components/printModal/index.js +++ b/src/gl/public/components/printModal/index.js @@ -1,4 +1,4 @@ -/*pbHnlLNCpsWdx+f6QNDErXUJ9hVUkCPC2/wKKBoJVMo=*/ +/*jdNRuZuduINgBy4HapEa4fqmBMzA+9W4I6NnfWBJr/o=*/ import React, { Component } from 'react'; import { base, toast, getMultiLang} from 'nc-lightapp-front'; const { NCButton: Button, NCCheckbox:Checkbox, NCNumber, NCModal: Modal, NCForm, NCDiv } = base; @@ -383,4 +383,4 @@ export default class PrintModal extends Component { -/*pbHnlLNCpsWdx+f6QNDErXUJ9hVUkCPC2/wKKBoJVMo=*/ \ No newline at end of file +/*jdNRuZuduINgBy4HapEa4fqmBMzA+9W4I6NnfWBJr/o=*/ \ No newline at end of file diff --git a/src/gl/public/components/uapRefer.js b/src/gl/public/components/uapRefer.js index 2d30fa7..430df89 100644 --- a/src/gl/public/components/uapRefer.js +++ b/src/gl/public/components/uapRefer.js @@ -1,4 +1,4 @@ -/*qe7Cb23wLVjc4iA6ZXxPWhPesV7QTTnD1jl8QxtdT5E=*/ +/*v2IABo5jWerB7tSekIAuCBahZRp8UmHcEUHzxFNTcbY=*/ //@Author: lijun export function handleLoad(refcode, code) { let Item = window[refcode].default; @@ -38,4 +38,4 @@ export default function createScript(src, code) { } } -/*qe7Cb23wLVjc4iA6ZXxPWhPesV7QTTnD1jl8QxtdT5E=*/ \ No newline at end of file +/*v2IABo5jWerB7tSekIAuCBahZRp8UmHcEUHzxFNTcbY=*/ \ No newline at end of file diff --git a/src/gl/public/components/utils.js b/src/gl/public/components/utils.js new file mode 100644 index 0000000..dde9faf --- /dev/null +++ b/src/gl/public/components/utils.js @@ -0,0 +1,277 @@ +/*gdUZMKDdobQhj+C5RztNH3YxTFL//4sJ0wAPGML8Vu0=*/ +import { toast } from 'nc-lightapp-front'; +//import './yhtsec.js'; +/* + * @method 节流、防抖函数 + * @origin created by yangguoqiang @17/11/07 + * @param + * func {Function} 执行函数 + * wait {Number} 间隔时间 + * immediate {[Boolean]} 延迟,首次是否执行 + * @return {Function} + * @demo this.handleClick = debounce(this.handleClick, 100) + */ +export const debounce = (func, wait, immediate) => { + let timeout; + return () => { + const context = this; + const args = arguments; + const later = () => { + timeout = null; + if (!immediate) { + func.apply(context, args); + } + }; + const callNow = immediate && !timeout; + clearTimeout(timeout); + timeout = setTimeout(later, wait); + if (callNow) { + func.apply(context, args); + } + }; +}; + +/* + * @method 数字格式化,例如 1111111 => ¥1,111,111.00 + * @origin created by 王涛 @17/11/08 + * @param + * num number 需要转换的数值 + * n int 小数位数,可不传,默认是 2 + * separator string 分隔符,可不传,默认是 ‘,’ + * unit string 单位,可不传,默认是 ‘¥’ + * @return {string} + * @demo numFormat(421321344, '¥', 2, ',') or numFormat(421321344) + */ +export const numFormat = (num, unit = '¥', n = 2, separator = ',') => { + num = parseFloat(num); + let varies = ''; + if (num < 0) { + num *= -1; + varies = '-'; + } + n = n > 0 ? n : 2; + if (n > 0) { + num = num.toFixed(n) + ''; + } else { + num += ''; + } + let index = num.indexOf('.') === -1 ? num.length : num.indexOf('.'); + let arr = []; + for (let i = 0; i <= index - 1; i++) { + if ((index - i) % 3 === 0 && i !== 0 && i !== index) { + arr.push(separator, num[i]); + } else { + arr.push(num[i]); + } + } + return unit + varies + arr.join('') + num.substr(index); +}; + +/* + * @method toast提示框 + * @origin created by 王涛 @17/11/20 + * @param + * toast {object}, 所含属性如下 + * color: string, 默认success, 还可传 danger, warning, info, 对应设计图的四种颜色, 四个icon也会根据color值自动带过来 + * content: string/number, 默认为'成功了,哈哈哈...', toast显示的提示文字 + * title: string/number, 默认为'成功了', 只在size= 'lgs'生效, toast的title + * duration: number, 默认3, toast弹框默认显示时间3s, 不用传, 后期由需求统一定 + * @return {toast组件} + * @demo toast({color: 'info', content: 'just a test', title: 'test'}) + */ +// export const toast = (props) => { +// props = props || {}; +// let isShow = document.getElementsByClassName('toast-zijinyun-project')[0]; +// //阻止连续多次点击时页面出现多个toast弹框 +// if (isShow) { +// return false; +// } +// let div = document.createElement('div'); +// div.className = 'toast-zijinyun-project'; +// document.getElementById('app').appendChild(div); +// const toasts = ReactDOM.render(, div); +// return toasts; +// }; + +/* + * @method 数组求和 + * @origin created by 王涛 @17/11/08 + * @param + * arr {arr} 数字型数组 + * @return {sums} 总和 + * @demo sum([1,2,3,4,5,6,7]) + */ +export const sum = (arr) => { + //阻止多次点击时页面出现多个弹框 + if (!arr.length) { + return 0; + } else if (arr.length === 1) { + return arr[0]; + } + let sums = 0; + arr.forEach((val) => (sums += Number(val) || 0)); + return sums; +}; + +// Extend the default Number object with a formatMoney() method: +// usage: someVar.formatMoney(decimalPlaces, symbol, thousandsSeparator, decimalSeparator) +// defaults: (2, "$", ",", ".") +/** + * @method 货币格式化 + * @origin created by sunzeg @17/11/08 + * @param {*} places 小数位数,默认2位 + * @param {*} symbol 货币符号,默认为"¥" + * @param {*} thousand 千分符,默认为"," + * @param {*} decimal 小数点,默认为"." + * @return + * @demo 123456.formatMoney(2, "$", ",", ".") + */ +Number.prototype.formatMoney = function(places = 2, symbol = '¥', thousand = ',', decimal = '.') { + places = !isNaN((places = Math.abs(places))) ? places : 2; + var number = this, + negative = number < 0 ? '-' : '', + i = parseInt((number = Math.abs(+number || 0).toScale(places)), 10) + '', + j = (j = i.length) > 3 ? j % 3 : 0; + return ( + symbol + + negative + + (j ? i.substr(0, j) + thousand : '') + + i.substr(j).replace(/(\d{3})(?=\d)/g, '$1' + thousand) + + (places ? decimal + Math.abs(number - i).toFixed(places).slice(2) : '') + ); +}; + +/** + * @method 设置数字精度,处理toFixed的精度问题 + * @origin created by sunzeg @17/12/12 + * @param {*} num 输入数字 + * @param {*} scale 精度位数 + * @demo 处理诸如1.335.toFixed(2) == 1.33的问题 + */ +Number.prototype.toScale = function(scale = 2) { + return Math.round(this * Math.pow(10, scale)) / Math.pow(10, scale); +}; + +/* + * @method 浮点数减法运算 + * @origin created by gaokung @17/11/20 + * @param + * num1 num2 scale //精度 默认3 {num} 数字 + * @return number 差值 + * @demo AccSub(20.1,20,3) + */ + +export const AccSub = (num1, num2, scale = 3) => { + let r1, r2, m, n; + try { + r1 = num1.toString().split('.')[1].length; + } catch (e) { + r1 = 0; + } + try { + r2 = num2.toString().split('.')[1].length; + } catch (e) { + r2 = 0; + } + m = Math.pow(10, Math.max(r1, r2)); + return ((num1 * m - num2 * m) / m).toScale(scale); +}; + +/** + * @method 浮点数乘法运算 + * @origin created by sunzeg @17/12/12 + * @param {*} arg + * @param {*} scale + */ +Number.prototype.accMul = function(arg, scale = 2) { + var m = 0, + s1 = this.toString(), + s2 = arg.toString(); + try { + m += s1.split('.')[1].length; + } catch (e) {} + try { + m += s2.split('.')[1].length; + } catch (e) {} + return (Number(s1.replace('.', '')) * Number(s2.replace('.', '')) / Math.pow(10, m)).toScale(2); +}; + +/* + * @method 设置数字精度 + * @origin created by gaokung @17/11/20 + * @param + * num scale //精度 默认3 + * @return float 差值 + * @demo Fixed(20,3) // 20.000 + */ + +export const toFixFun = (num, scale = 3) => { + num = num + ''; + if (num.length > 0) { + num = Number(num); + return num.toFixed(scale); + } else { + return num; + } +}; + +/* + * @method 去掉浮点数后面占位0 + * @origin created by gaokung @17/11/20 + * @param + * num + * @return float 差值 + * @demo Fixed(20,3) // 20.000 + */ + +export const toRmZero = (num) => { + if (num.indexOf('.') > 0) { + num = num.replace(/0+?$/, ''); //去掉多余的0 + num = num.replace(/[.]$/, ''); //如最后一位是.则去掉 + } + return num; +}; + +/** + * @method 当前日期加特定天数 + * @origin created by sunzeg @17/11/23 + * @param {*} startDate 开始日期 + * @param {*} day 累加的填数 + * @param {*} symbol 连接符,缺省时用年月日连接 + * @return 相加后的日期,按照固定的格式输出 + * @demo dateAdd(currDate, 3, '-'); + */ +// export const dateAdd = (startDate, day = 0, symbol) => { +// startDate = +startDate + day * 1000 * 3600 * 24; +// startDate = new Date(startDate); +// if (typeof symbol != 'undefined') { +// return startDate.getFullYear() + symbol + (startDate.getMonth() + 1) + symbol + startDate.getDate(); +// } +// return startDate.getFullYear() + '年' + (startDate.getMonth() + 1) + '月' + startDate.getDate() + '日'; +// }; + +//一下勿删,后期有用,谢谢 +// document.cookie="userId=874e8ceb-b67a-4df9-ab5c-df3400e9d182"; +// function aa(a) { +// } +// window.YHTTool.checkCA(aa) + +//获取url参数 +export const GetQueryString = (name) => { + let href = window.location.href; + href = href.split('?')[1]; + if (!href) { + return; + } + href = href.split('&'); + for (let i = 0; i < href.length; i++) { + if (href[i].indexOf(name) >= 0) { + href = href[i].split('=')[1]; + return href; + } + } +}; + +export { toast }; + +/*gdUZMKDdobQhj+C5RztNH3YxTFL//4sJ0wAPGML8Vu0=*/ \ No newline at end of file diff --git a/src/gl/public/components/variables.less b/src/gl/public/components/variables.less new file mode 100644 index 0000000..72ba7c5 --- /dev/null +++ b/src/gl/public/components/variables.less @@ -0,0 +1,19 @@ +// colors +// 字体颜色 黑色 +@b-color: #333333; +// 白色 +@w-color: #ffffff; +//按钮背景色 包括行内按钮 +@t-btn-bgcolor: #00b39e; +@t-btn-hovercolor:#009a88; +@t-btn-lightbgcolor:#d9f3f0; +// 页签红色 +@t-tab-color: #ccc; +// 页面背景色 +@t-bgcolor: #f5f5f5; +// 表格每行hover颜色 +@t-table-hover: #f4f9f7; +// 表格头部颜色 +@t-table-header: #f2f2f2; +//border-color +@border-color: #E3E7ED; diff --git a/src/gl/public/lang/standard/simpchn/20020RECON.json b/src/gl/public/lang/standard/simpchn/20020RECON.json index 518dab2..dd2acbd 100644 --- a/src/gl/public/lang/standard/simpchn/20020RECON.json +++ b/src/gl/public/lang/standard/simpchn/20020RECON.json @@ -32,11 +32,5 @@ "20020RECON-000030": "模板输出", "20020RECON-000031": "年", "20020RECON-000032": "月", - "20020RECON-000033": "重建余额表成功", - "20020RECON-000034": "总账余额表", - "20020RECON-000035": "总账辅助余额表", - "20020RECON-000036": "总账辅助明细表", - "20020RECON-000037": "差异", - "20020RECON-000038": "请先选择会计科目", - "20020RECON-000039": "账账相对报表" -} + "20020RECON-000033": "重建余额表成功" +} \ No newline at end of file diff --git a/src/gl/verify/historyquery/list/events/buttonClick.js b/src/gl/verify/historyquery/list/events/buttonClick.js new file mode 100644 index 0000000..a8496ea --- /dev/null +++ b/src/gl/verify/historyquery/list/events/buttonClick.js @@ -0,0 +1,46 @@ +/*q2LCmxM8POvl78IL0Liydo5bohca3dvG3wsSHNuPiA4=*/ +import { ajax, base, toast,cacheTools,print,withNav } from 'nc-lightapp-front'; +import GlobalStore from '../../../../public/components/GlobalStore'; +let tableid = 'gl_brsetting'; + +import { + handleUnverify, + handleDetail, + handleSum + } from "./index.js"; + +// @withNav +export default function buttonClick(props, id) { + let {querycondition}=this.state; + let rowDatas,pk_brsetting,pk_unit,pk_currtype,link; + switch (id) { + // 查询 + case 'inquiry': + this.handleClick(); + break; + + // 反核销 + case 'reverse_verificationCancel': + handleUnverify(this); + break; + + // 详细 + case 'detail': + handleDetail(this); + break; + case 'verifySum': + handleSum(this); + break; + case 'print'://打印 + this.showPrintModal(); + break; + case 'showOutputModal'://模板输出 + this.showOutputModal(); + break; + default: + break; + + } +} + +/*q2LCmxM8POvl78IL0Liydo5bohca3dvG3wsSHNuPiA4=*/ \ No newline at end of file diff --git a/src/gl/verify/historyquery/list/events/filterSelectedData.js b/src/gl/verify/historyquery/list/events/filterSelectedData.js new file mode 100644 index 0000000..2631e42 --- /dev/null +++ b/src/gl/verify/historyquery/list/events/filterSelectedData.js @@ -0,0 +1,26 @@ +/*AH4MHN4wRozL1Qtb9WKpzKI5AjpCq3r06PcQA1QNXy8=*/ +import {ajax} from 'nc-lightapp-front'; +import { toast } from '../../../../public/components/utils.js'; +/*过滤选中数据 */ +export default function filterSelectedData(state,type){ + let {checkedArraySum,checkedArrayDetail,sumSelectedData,detailSelectedData,historySumDataArr,historyDataArr}=state; + sumSelectedData=[]; + detailSelectedData=[]; + if(type=="sum"){//借方 + for(var i = 0; i < checkedArraySum.length; i++){ + if(checkedArraySum[i]==true){ + sumSelectedData.push(historySumDataArr[i]); + } + } + return sumSelectedData; + }else if(type=='details'){// + for(var i = 0; i < checkedArrayDetail.length; i++){ + if(checkedArrayDetail[i]==true){ + detailSelectedData.push(historyDataArr[i]); + } + } + return detailSelectedData; + } +} + +/*AH4MHN4wRozL1Qtb9WKpzKI5AjpCq3r06PcQA1QNXy8=*/ \ No newline at end of file diff --git a/src/gl/verify/historyquery/list/events/handleDetail.js b/src/gl/verify/historyquery/list/events/handleDetail.js new file mode 100644 index 0000000..5222a54 --- /dev/null +++ b/src/gl/verify/historyquery/list/events/handleDetail.js @@ -0,0 +1,45 @@ +/*T7B15Wn57Msurv1/VfHkcNaI/grNL1u6dKQIcpM84eg=*/ +import {ajax} from 'nc-lightapp-front'; +import { toast } from '../../../../public/components/utils.js'; +import filterSelectedData from './filterSelectedData'; + +export default function handleDetail(self){ + // let self=this; + let {sumOrDetail,historyDataArr,checkedArraySum,checkedArrayDetail,resourceData_details,checkedAll}=self.state; + let m_Batchid=[];//批次 + let cerrentBatchidData=[];//过来当前批次选中的数据 + checkedArrayDetail=[]; + let sumSelectedData=filterSelectedData(self.state,'sum');//获取汇总选中的数据的批次 m_Batchid + if(sumSelectedData.length>0){ + sumSelectedData.map((item,i)=>{ + if(m_Batchid.indexOf(item.m_Batchid.value)==-1){ + m_Batchid.push(item.m_Batchid.value); + } + }) + resourceData_details.map((list,k)=>{ + if(m_Batchid.indexOf(list.m_Batchid.value)!=-1){ + cerrentBatchidData.push(list); + checkedArrayDetail.push(false); + } + }) + // checkedArraySum.map((v,k)=>{ + // checkedArraySum[k]=false; + // }) + }else{ + toast({ content: self.state.json['20020VRIFYHISTORY-000000'], color: "warning" });/* 国际化处理: 请先至少选择一行数据进行操作*/ + return false; + // cerrentBatchidData=resourceData_details; + } + sumOrDetail='details'; + self.setState({ + sumOrDetail,checkedArraySum, + historyDataArr:cerrentBatchidData, + checkedArrayDetail + // checkedAllSum: false + },()=>{ + self.props.button.setButtonDisabled('detail', true); + self.props.button.setButtonDisabled('verifySum', false); + }) +} + +/*T7B15Wn57Msurv1/VfHkcNaI/grNL1u6dKQIcpM84eg=*/ \ No newline at end of file diff --git a/src/gl/verify/historyquery/list/events/handleQueryClick.js b/src/gl/verify/historyquery/list/events/handleQueryClick.js new file mode 100644 index 0000000..be837d4 --- /dev/null +++ b/src/gl/verify/historyquery/list/events/handleQueryClick.js @@ -0,0 +1,103 @@ +/*u4fuI16HuMDfqDwHbJz/3UlZJIe0ygck8CqbI2WILwc=*/ +import {ajax,deepClone} from 'nc-lightapp-front'; +import { toast } from '../../../../public/components/utils.js'; + +export default function handleQueryClick(state,data){ + let self=this; + let {queryDataObj,mockData,historyDataArr,historySumDataArr,checkedAllSum,checkedArrayDetail,checkedArraySum, + resourceData_sum,resourceData_details,defaultStatu} = state; + let childData = deepClone(data); + checkedAllSum=false; + checkedArrayDetail=[]; + checkedArraySum=[]; + let url = '/nccloud/gl/verify/historyquery.do'; + for(let k in childData){ + if(k=='ass'){ + // e.ass.map((item,i)=>{ + // for(let k in item){ + // item[k]=item[k].value?item[k].value:''; + // } + // }) + }else if(k=='pk_units'){ + if(childData[k].length>0){ + if(childData[k][0].value==""){ + childData[k]=null; + }else{ + childData[k].map((item,index)=>{ + //childData[k].push(item.value); + childData[k][index]=item.value; + }) + } + }else{ + childData[k]=null; + } + }else{ + childData[k]=childData[k].value?childData[k].value:null; + } + } +//childData.pk_accasoa= "1001A3100000000006Z2"; + ajax({ + url:url, + data:childData, + success: function(response){//historyData是明细的数据 historySumData是汇总的数据 + let { data, success } = response; + if(success){ + let historyData = data.historyData; + let historySumData = data.historySumData; + if(historyData){ + defaultStatu=false; + historyData.map((item,i)=>{ + item.key=i; + checkedArrayDetail.push(false); + //把未核销金额赋给核销 + item.m_dCredit_Money_Y=item.m_Balancecreditamount; + item.m_dCredit_Money_B=item.m_Balancelocalcreditamount; + item.m_Balancecreditamount=0; + item.m_Balancelocalcreditamount=0; + }) + }else{ + historyData=[]; + } + if(historySumData){ + defaultStatu=false; + historySumData.map((item,i)=>{ + item.key=i; + //定义两个临时变量存储未核销的原币和组织本币 + item.empty_m_Balancedebitamount=item.m_Balancedebitamount; + item.empty_m_Balancelocaldebitamount =item.m_Balancelocaldebitamount ; + checkedArraySum.push(false); + }) + }else{ + historySumData=[]; + } + self.setState({ + sumOrDetail:'sum', + queryDataObj:childData, + historyDataArr: historyData, + historySumDataArr: historySumData, + resourceData_details:historyData, + resourceData_sum:historySumData, + checkedArrayDetail,checkedArraySum, + showModal: !self.state.showModal, + defaultStatu + },()=>{ + if(historySumData.length>0){ + self.props.button.setButtonDisabled(['reverse_verificationCancel','detail','print','showOutputModal'], false); + self.props.button.setButtonDisabled('verifySum', true); + }else{ + self.props.button.setButtonDisabled(['reverse_verificationCancel','detail','print','showOutputModal'], true); + } + }) + } else { + toast({ content: self.state.json['20020VRIFYHISTORY-000001'], color: 'warning' });/* 国际化处理: 没有获取数据*/ + } + }, + error:function(){ + self.setState({ + showModal: !self.state.showModal, + }) + } + }); +} + +/*u4fuI16HuMDfqDwHbJz/3UlZJIe0ygck8CqbI2WILwc=*/ \ No newline at end of file diff --git a/src/gl/verify/historyquery/list/events/handleSum.js b/src/gl/verify/historyquery/list/events/handleSum.js new file mode 100644 index 0000000..5817d99 --- /dev/null +++ b/src/gl/verify/historyquery/list/events/handleSum.js @@ -0,0 +1,41 @@ +/*qzb7F4SlCmO1xTuAiNmgmh4pl/dzTvN9p/gHZeXKzGM=*/ +import {ajax} from 'nc-lightapp-front'; +import { toast } from '../../../../public/components/utils.js'; +import filterSelectedData from './filterSelectedData'; +export default function handleSum(self){ + // let self=this; + let {sumOrDetail,historySumDataArr,checkedArraySum,checkedArrayDetail,resourceData_sum,checkedAll}=self.state; + let m_Batchid=[];//批次 + let cerrentBatchidData=[];//过来当前批次选中的数据 + let detailSelectedData=filterSelectedData(self.state,'details');//获取汇总选中的数据批次 + // if(detailSelectedData.length>0){ + // detailSelectedData.map((item,i)=>{ + // if(m_Batchid.indexOf(item.m_Batchid.value)==-1){ + // m_Batchid.push(item.m_Batchid.value); + // } + // }) + // resourceData_sum.map((list,k)=>{ + // if(m_Batchid.indexOf(list.m_Batchid.value)!=-1){ + // cerrentBatchidData.push(list); + // } + // }) + // checkedArrayDetail.map((v,k)=>{ + // checkedArrayDetail[k]=false; + // }) + // }else{ + // toast({ content: "请先至少选择一行数据进行操作", color: "warning" }); + // return false; + cerrentBatchidData=resourceData_sum; + // } + sumOrDetail='sum'; + self.setState({ + sumOrDetail,checkedArrayDetail, + historySumDataArr:cerrentBatchidData, + checkedAllDetail: false + },()=>{ + self.props.button.setButtonDisabled('detail', false); + self.props.button.setButtonDisabled('verifySum', true); + }) +} + +/*qzb7F4SlCmO1xTuAiNmgmh4pl/dzTvN9p/gHZeXKzGM=*/ \ No newline at end of file diff --git a/src/gl/verify/historyquery/list/events/handleUnverify.js b/src/gl/verify/historyquery/list/events/handleUnverify.js new file mode 100644 index 0000000..f00e08b --- /dev/null +++ b/src/gl/verify/historyquery/list/events/handleUnverify.js @@ -0,0 +1,136 @@ +/*YoG9dlfPctMLC5es8pajMBQ1t3onV9OVQ++ApV5d6Pk=*/ +import { ajax, promptBox } from "nc-lightapp-front"; +import { toast } from "../../../../public/components/utils.js"; +import filterSelectedData from "./filterSelectedData"; +export default function handleUnverify(self) { + // let self=this; + let state = self.state; + let url = "/nccloud/gl/verify/unverify.do"; + let { + creditSelectedData, + queryDataObj, + checkedAllSum, + checkedArrayDetail, + checkedArraySum, + historySumDataArr, + historyDataArr, + sumOrDetail, resourceData_details + } = state; + checkedAllSum = false; + checkedArrayDetail = []; + checkedArraySum = []; + let detailSelectedData = []; //选中的明细数据 + // creditSelectedData=historyDataArr;//贷方数据 + let sumSelectedData = filterSelectedData(state, "sum"); //获取汇总选中的数据 + if (sumSelectedData.length > 0 && sumOrDetail == 'sum') { + let m_BatchidArr = []; + for (var i = 0; i < sumSelectedData.length; i++) { + m_BatchidArr.push(sumSelectedData[i].m_Batchid.value); + } + for (var k = 0; k < resourceData_details.length; k++) { + if (m_BatchidArr.toString().indexOf(resourceData_details[k].m_Batchid.value) != -1) { + detailSelectedData.push(resourceData_details[k]); + } + } + } else if (filterSelectedData(state, "details").length > 0 && sumOrDetail == 'details') { + detailSelectedData = filterSelectedData(state, "details"); //获取明细选中的数据 + } else { + toast({ content: self.state.json['20020VRIFYHISTORY-000002'], color: "warning" });/* 国际化处理: 请至少选择一行数据进行反核销*/ + return false; + } + promptBox({ + color: 'warning', + title: self.state.json['20020VRIFYHISTORY-000003'],/* 国际化处理: 提示*/ + content: self.state.json['20020VRIFYHISTORY-000004'],/* 国际化处理: 是否反核销?*/ + noFooter: false, // 是否显示底部按钮(确定、取消),默认显示(false),非必输 + noCancelBtn: false, // 是否显示取消按钮,,默认显示(false),非必输 + beSureBtnName: self.state.json['20020VRIFYHISTORY-000005'], // 确定按钮名称, 默认为"确定",非必输/* 国际化处理: 确定*/ + cancelBtnName: self.state.json['20020VRIFYHISTORY-000006'], // 取消按钮名称, 默认为"取消",非必输/* 国际化处理: 取消*/ + beSureBtnClick: dealOperate.bind(self, url, detailSelectedData, queryDataObj), // 确定按钮点击调用函数,非必输 + cancelBtnClick: cancelBtnClick.bind(self) // 取消按钮点击调用函数,非必输 + }) + +} +export function dealOperate(url, detailSelectedData, queryDataObj) { + let self = this; + let { + checkedAllSum, + checkedArrayDetail, + checkedArraySum, sumOrDetail + } = self.state; + checkedAllSum = false; + checkedArrayDetail = []; + checkedArraySum = []; + let data = { + displogVO: detailSelectedData, + condition: queryDataObj + }; + ajax({ + url: url, + data: data, + success: function (response) { + const { data, success } = response; + if (success) { + let historyData = data.historyData; + let historySumData = data.historySumData; + let m_BatchidArr = [], cerrentBatchidData = []; + if(sumOrDetail=='sum'){ + if (historyData) { + let sumSelectedData = filterSelectedData(self.state, "sum"); //获取汇总选中的数据 + for (var i = 0; i < sumSelectedData.length; i++) { + m_BatchidArr.push(sumSelectedData[i].m_Batchid.value); + } + historyData.map((list, k) => { + if (m_BatchidArr.indexOf(list.m_Batchid.value) != -1) { + cerrentBatchidData.push(list); + checkedArrayDetail.push(false); + } + }) + } else { + historyData = []; + } + if (historySumData) { + historySumData.map((item, i) => { + item.key = i; + checkedArraySum.push(false); + }); + } else { + historySumData = []; + } + }else if(sumOrDetail=='details'){ + if(historyData){ + historyData.map((list, k) => { + cerrentBatchidData.push(list); + checkedArrayDetail.push(false); + }) + }else{ + historyData = []; + } + if (historySumData) { + historySumData.map((item, i) => { + item.key = i; + checkedArraySum.push(false); + }); + } else { + historySumData = []; + } + } + self.setState({ + historyDataArr: cerrentBatchidData, + historySumDataArr: historySumData, + resourceData_details: historyData, + resourceData_sum: historySumData, + checkedArrayDetail, checkedAllSum, + checkedArraySum + }); + } else { + toast({ content: self.state.json['20020VRIFYHISTORY-000001'], color: "warning" });/* 国际化处理: 没有获取数据*/ + } + } + }); +} +export function cancelBtnClick() { + return false; +} + +/*YoG9dlfPctMLC5es8pajMBQ1t3onV9OVQ++ApV5d6Pk=*/ \ No newline at end of file diff --git a/src/gl/verify/historyquery/list/events/index.js b/src/gl/verify/historyquery/list/events/index.js new file mode 100644 index 0000000..fc2d14d --- /dev/null +++ b/src/gl/verify/historyquery/list/events/index.js @@ -0,0 +1,10 @@ +/*jdNRuZuduINgBy4HapEa4fqmBMzA+9W4I6NnfWBJr/o=*/ +import handleQueryClick from './handleQueryClick'; +import handleUnverify from './handleUnverify'; +import handleDetail from './handleDetail'; +import handleSum from './handleSum'; +import initTemplate from './initTemplate'; +import buttonClick from './buttonClick'; +export{handleQueryClick,handleUnverify,handleDetail,handleSum, buttonClick, initTemplate} + +/*jdNRuZuduINgBy4HapEa4fqmBMzA+9W4I6NnfWBJr/o=*/ \ No newline at end of file diff --git a/src/gl/verify/historyquery/list/events/initTemplate.js b/src/gl/verify/historyquery/list/events/initTemplate.js new file mode 100644 index 0000000..6b40084 --- /dev/null +++ b/src/gl/verify/historyquery/list/events/initTemplate.js @@ -0,0 +1,30 @@ +/*pmFWCFu5nhKkBzYmrkBakUskA4/xbWYlI8OGOG8a3xA=*/ +import { createPage, ajax, base, toast,cacheTools,print } from 'nc-lightapp-front'; +let { NCPopconfirm, NCIcon } = base; + +let searchId = 'busirecon_query'; +const pageCode = '20020VRIFYHISTORY'; +export default function (props) { + + let appcode =props.getSearchParam('c'); + ajax({ + url: '/nccloud/platform/appregister/queryallbtns.do', + data: { + pagecode: pageCode, + appcode: appcode//小应用id + }, + async:false, + success: function(res) { + if (res.data) { + let button = res.data; + props.button.setButtons(button, () => { + // 先注释掉,别影响功能 detail + props.button.setButtonDisabled(['reverse_verificationCancel','detail','verifySum','print','showOutputModal'], true); + // props.button.setButtonVisible(['print', 'link','refresh','switch'], false); + }); + } + } + }); +} + +/*pmFWCFu5nhKkBzYmrkBakUskA4/xbWYlI8OGOG8a3xA=*/ \ No newline at end of file diff --git a/src/gl/verify/historyquery/list/index.js b/src/gl/verify/historyquery/list/index.js new file mode 100644 index 0000000..94cebcb --- /dev/null +++ b/src/gl/verify/historyquery/list/index.js @@ -0,0 +1,1236 @@ +/*jdNRuZuduINgBy4HapEa4fqmBMzA+9W4I6NnfWBJr/o=*/ +import React, { Component } from "react"; +import { hashHistory, Redirect, Link,toast } from "react-router"; +import { high, base, ajax, withShell, deepClone, createPage,getMultiLang,createPageIcon } from "nc-lightapp-front"; +import filterSelectedData from './events/filterSelectedData'; +const { + NCFormControl: FormControl, + NCDatePicker: DatePicker, + NCButtonGroup: ButtonGroup, + NCButton: Button, + NCRadio: Radio, + NCBreadcrumb: Breadcrumb, + NCRow: Row, + NCCol: Col, + NCTree: Tree, + NCMessage: Message, + NCIcon: Icon, + NCLoading: Loading, + NCTable: Table, + NCSelect: Select, + NCCheckbox: Checkbox, + NCNumber, + AutoComplete, + NCDropdown: Dropdown, + NCPanel: Panel,NCAffix,NCDiv +} = base; +import { + CheckboxItem, + RadioItem, + TextAreaItem, + ReferItem, + SelectItem, + InputItem, + DateTimePickerItem +} from "../../../public/components/FormItems"; +const { ColumnGroup, Column } = Table; +import HeaderArea from '../../../public/components/HeaderArea'; +import getDefaultAccountBook from '../../../public/components/getDefaultAccountBook.js'; +import SearchModal from "./searchModal/searchModal"; +import PrintModal from '../../../public/components/printModal'; +const { PrintOutput } = high; +import { printRequire, mouldOutput } from '../../../public/components/printModal/events'; +import {getTableHeight } from '../../../public/common/method.js'; +import "./index.less"; +import { + handleQueryClick, + handleUnverify, + handleDetail, + handleSum +} from "./events/index.js"; +import { buttonClick, initTemplate} from './events'; + +const defaultProps12 = { + prefixCls: "bee-table", + multiSelect: { + type: "checkbox", + param: "key" + } +}; + +class HistoryQuery extends Component { + constructor(props) { + super(props); + this.state = { + json:{}, + appcode: this.props.getUrlParam('c') || this.props.getSearchParam('c'), + showPrintModal: false, + outputData: {}, + isQueryShow: false, + showModal: false, + queryStyle: false, + creditQueryStyle: true, + debitQueryStyle: false, + defaultStatu: true, //false代表页面没数据,true为有数据 + checkedAll: false, //全选 + checkedAllSum: false, //汇总全选 + checkedAllDetail: false, //明细全选 + checkedArrayDetail: [ + //明细 + //false, + ], + checkedArraySum: [ + //汇总 + //false, + ], + modalDefaultValue:{ + pk_org:'',//账簿对应的组织 + bizDate:'',//业务日期 + yearbegindate:'',//年初日期 + begindate:'', + enddate:'', + bizPeriod:'',//账簿对应的会计期间 + isShowUnit:false,//是否显示业务单元 + isOpenUpBusiUnit:'',// + pk_accperiodscheme:'',//会计期间方案 + pk_accountingbook:{display:'',value:''}, + pk_currency:{display:'',value:''}, + appcode:this.props.getSearchParam("c") + },//模态框里默认数据 + historyDataArr: [], //明细数据 + historySumDataArr: [], //汇总数据 + debitRate: "1", //汇率 + queryDataObj:{}, + detailSelectedData: [], //明细选中数据 + sumSelectedData: [], //汇总选中数据 + resourceData_sum: [], //查询出来的历史数据 + resourceData_details: [], + sumOrDetail: "sum" //汇总详细标记: + }; + } + + onInputChange = (index, key) => { + return value => { + const { historySumDataArr } = this.state; + const dataSource = [...historySumDataArr]; + dataSource[index][key] = value; + this.setState({ historySumDataArr }); + }; + }; + + //明细数据组装 + renderColumnsMultiSelect(columns) { + const { + historyDataArr, + checkedArrayDetail, + checkedAllDetail, + creditQueryStyle + } = this.state; + let select_column = {}; + let indeterminate_bool = false; + + let defaultColumns = [ + { + title:
{( + + )}
, + key: "checkbox", + dataIndex: "checkbox", + width: 73, + render: (text, record, index) => { + return ( +
+ +
+ ); + } + } + ]; + columns = defaultColumns.concat(columns); + return columns; + } + //汇总,明细全选功能 + onAllCheckChangeDebit = type => { + let self = this; + //let checkedArraySum = []; + let listData = self.state.historySumDataArr.concat(); + let selIds = []; + let { + checkedArraySum, + checkedArrayDetail, + checkedAllSum, + checkedAllDetail, + historySumDataArr, + historyDataArr, + sumSelectedData + } = this.state; + // debitSelectedData=historySumDataArr; + if (type == "sum") { + for (var i = 0; i < checkedArraySum.length; i++) { + checkedArraySum[i] = !self.state.checkedAllSum; + } + //let allChickedData = this.handleAllChicked(); + self.setState({ + checkedAllSum: !self.state.checkedAllSum, + checkedArraySum + //historySumDataArr:allChickedData, + // debitSelectedData + }); + //this.handleAllChecked(); + } else if (type == "details") { + for (var i = 0; i < checkedArrayDetail.length; i++) { + checkedArrayDetail[i] = !self.state.checkedAllDetail; + } + //let allChickedData = this.handleAllChicked(); + self.setState({ + checkedAllDetail: !self.state.checkedAllDetail, + checkedArrayDetail + // historyDataArr:allChickedData, + // debitSelectedData + }); + //this.handleAllChecked(); + } + }; + + // 汇总/明细单选功能 + onCheckboxChangeDebit = (type, text, record, index) => { + let self = this; + let allFlag = false; + if (type == "sum") { + let checkedArraySum = self.state.checkedArraySum.concat(); + checkedArraySum[index] = !self.state.checkedArraySum[index]; + for (var i = 0; i < self.state.checkedArraySum.length; i++) { + if (!checkedArraySum[i]) { + allFlag = false; + break; + } else { + allFlag = true; + } + } + // 接收点击单选按钮传过来的数据,对historySumDataArr进行修改 + // const { historySumDataArr } = this.state; + // const o = this.handleCancel(index,checkedArraySum[index]); + // self.setState({ + // historySumDataArr:o + // }) + self.setState({ + checkedAllSum: allFlag, + checkedArraySum: checkedArraySum + }); + //this.handleChecked(index); + } else if (type == "details") { + let checkedArrayDetail = self.state.checkedArrayDetail.concat(); + checkedArrayDetail[index] = !self.state.checkedArrayDetail[index]; + for (var i = 0; i < self.state.checkedArrayDetail.length; i++) { + if (!checkedArrayDetail[i]) { + allFlag = false; + break; + } else { + allFlag = true; + } + } + // 接收点击单选按钮传过来的数据,对historyDataArr进行修改 + //const { historyDataArr } = this.state; + // const o = this.handleCancel(index,checkedArrayDetail[index]); + // self.setState({ + // historyDataArr:o + // }) + self.setState({ + checkedAllDetail: allFlag, + checkedArrayDetail: checkedArrayDetail + }); + //this.handleChecked(index); + } + }; + //汇总数据组装 + renderColumnsMultiSelectDebit(columns) { + const { historySumDataArr, checkedArraySum } = this.state; + const { multiSelect } = this.props; + let select_column = {}; + let indeterminate_bool = false; + + if (multiSelect && multiSelect.type === "checkbox") { + let i = checkedArraySum.length; + while (i--) { + if (checkedArraySum[i]) { + indeterminate_bool = true; + break; + } + } + let defaultColumns = [ + { + title:
{( + + )}
, + key: "checkbox", + dataIndex: "checkbox", + width: 73, + render: (text, record, index) => { + return ( +
+ +
+ ); + } + } + ]; + columns = defaultColumns.concat(columns); + } + return columns; + } + componentWillMount() { + + let callback= (json) =>{ + this.setState({ + json:json, + queryDataObj: { + pk_accountingbook: "1001A3100000000008MT", + pk_units: "", + pk_accasoa: "1001A3100000000006Z2", + begin_date: "2017-05-02", + end_date: "2018-05-17", + mny_begin: "", + mny_end: "", + pk_currency: "1002Z0100000000001K1", + verifyno: "", + digest: "", + acccode: "1122", + dateType: "opdate", + redBlue: "N", + ass: [ + { + key: 0, + checktypecode: "0004", + checktypename: this.state.json['20020VRIFYHISTORY-000030'],/* 国际化处理: 客商*/ + pk_Checktype: "0001Z0100000000005CV", + // "checkvaluecode": "", + // "checkvaluename": "", + // "pk_Checkvalue": "", + refCode: "uap.custsupplier", + pk_accountingbook: "1001A3100000000008MT" + }, + { + key: 1, + checktypecode: "0001", + checktypename: this.state.json['20020VRIFYHISTORY-000031'],/* 国际化处理: 部门*/ + pk_Checktype: "0001Z0100000000005CS", + // "checkvaluecode": "", + // "checkvaluename": "", + // "pk_Checkvalue": "", + refCode: "uap.dept", + pk_accountingbook: "1001A3100000000008MT" + } + ] + } + },()=>{ + initTemplate.call(this, this.props); + // this.loadDept(); + //this.tableDefaultData=deepClone(tableDefaultData); + }) + } + getMultiLang({moduleId:'20020VRIFYHISTORY',domainName:'gl',currentLocale:'simpchn',callback}); +  } + //查询 + handleClick = () => { + this.setState({ + isQueryShow: !this.state.isQueryShow, + showModal: !this.state.showModal, + queryStyle: !this.state.queryStyle + }); + }; + //打印 + showPrintModal() { + this.setState({ + showPrintModal: true + }) + } + handlePrint(data) { + let printUrl = '/nccloud/gl/verify/verhistoryprint.do' + let { queryDataObj, appcode,sumOrDetail} = this.state + let { ctemplate, nodekey } = data + queryDataObj.queryvo = data + queryDataObj.selectedSumBatchid=[]; + queryDataObj.selectedDetailBatchid=[]; + if(sumOrDetail=='sum'){ + let m_Batchid=[];//批次 + let cerrentBatchidDSata=[];//过来当前批次选中的数据 + let sumSelectedData=filterSelectedData(this.state,'sum');//获取汇总选中的数据批次 + if(sumSelectedData.length>0){ + sumSelectedData.map((item,i)=>{ + if(m_Batchid.indexOf(item.m_Batchid)==-1){ + m_Batchid.push(item.m_Batchid.value); + } + }) + } + + queryDataObj.selectedSumBatchid=m_Batchid; + queryDataObj.issum='Y'; + this.setState({ + ctemplate: ctemplate, + nodekey: nodekey + }) + printRequire(printUrl, appcode, nodekey, ctemplate, queryDataObj) + this.setState({ + showPrintModal: false + }); + + + + }else if(sumOrDetail=='details'){ + let m_Batchid=[];//批次 + let m_detaillogid=[];//批次 + let cerrentBatchidDSata=[];//过来当前批次选中的数据 + let sumSelectedData=filterSelectedData(this.state,'sum');//获取汇总选中的数据批次 + if(sumSelectedData.length>0){ + sumSelectedData.map((item,i)=>{ + if(m_Batchid.indexOf(item.m_Batchid)==-1){ + m_Batchid.push(item.m_Batchid.value); + } + }) + } + let detailSelectedData=filterSelectedData(this.state,'details');//获取明细选中的数据批次 + if(detailSelectedData.length>0){ + detailSelectedData.map((item,i)=>{ + if(m_detaillogid.indexOf(item.m_Logid.value)==-1){ + m_detaillogid.push(item.m_Logid.value); + } + }) + } + queryDataObj.selectedSumBatchid=m_Batchid; + queryDataObj.selectedDetailBatchid=m_detaillogid; + queryDataObj.issum='N'; + this.setState({ + ctemplate: ctemplate, + nodekey: nodekey + }) + printRequire(printUrl, appcode, nodekey, ctemplate, queryDataObj) + this.setState({ + showPrintModal: false + }); + + + + } + + + } + showOutputModal() { + // this.refs.printOutput.open() + let outputUrl = '/nccloud/gl/verify/verhistoryoutput.do' + // let { appcode, nodekey, ctemplate, queryDataObj } = this.state + // mouldOutput(outputUrl, appcode, nodekey, ctemplate, queryDataObj) + // let outputData = mouldOutput(appcode, nodekey, ctemplate, queryDataObj) + // this.setState({ + // outputData: outputData + // }) + + + let { queryDataObj, appcode,sumOrDetail,nodekey,ctemplate} = this.state + // let { ctemplate, nodekey } = data + //queryDataObj.queryvo = data + queryDataObj.selectedSumBatchid=[]; + queryDataObj.selectedDetailBatchid=[]; + if(sumOrDetail=='sum'){ + let m_Batchid=[];//批次 + let cerrentBatchidDSata=[];//过来当前批次选中的数据 + let sumSelectedData=filterSelectedData(this.state,'sum');//获取汇总选中的数据批次 + if(sumSelectedData.length>0){ + sumSelectedData.map((item,i)=>{ + if(m_Batchid.indexOf(item.m_Batchid)==-1){ + m_Batchid.push(item.m_Batchid.value); + } + }) + } + + queryDataObj.selectedSumBatchid=m_Batchid; + queryDataObj.issum='Y'; + this.setState({ + ctemplate: ctemplate, + nodekey: nodekey + }) + mouldOutput(outputUrl, appcode, nodekey, ctemplate, queryDataObj) + + + + }else if(sumOrDetail=='details'){ + let m_Batchid=[];//批次 + let m_detaillogid=[];//批次 + let cerrentBatchidDSata=[];//过来当前批次选中的数据 + let sumSelectedData=filterSelectedData(this.state,'sum');//获取汇总选中的数据批次 + if(sumSelectedData.length>0){ + sumSelectedData.map((item,i)=>{ + if(m_Batchid.indexOf(item.m_Batchid)==-1){ + m_Batchid.push(item.m_Batchid.value); + } + }) + } + let detailSelectedData=filterSelectedData(this.state,'details');//获取明细选中的数据批次 + if(detailSelectedData.length>0){ + detailSelectedData.map((item,i)=>{ + if(m_detaillogid.indexOf(item.m_Logid.value)==-1){ + m_detaillogid.push(item.m_Logid.value); + } + }) + } + queryDataObj.selectedSumBatchid=m_Batchid; + queryDataObj.selectedDetailBatchid=m_detaillogid; + queryDataObj.issum='N'; + this.setState({ + ctemplate: ctemplate, + nodekey: nodekey + }) + mouldOutput(outputUrl, appcode, nodekey, ctemplate, queryDataObj) + + + } + + + + } + handleOutput() { + + } + //返回 + handleBack = () => { + // this.props.history.go(-1); + this.props.pushTo("/"); + // window.history.go(-1); + }; + //获取默认会计期间 会计期间方案 + getDefaultYearmouth=(pk_accountingbook,modalDefaultValue)=>{ + let self=this; + // let {modalDefaultValue}=self.state; + let url = '/nccloud/gl/voucher/queryBookCombineInfo.do'; + let pk_accpont = {"pk_accountingbook":pk_accountingbook} + ajax({ + url:url, + data:pk_accpont, + async:false, + success: function(response){ + const { success } = response; + //渲染已有账表数据遮罩 + if (success) { + if(response.data){ + modalDefaultValue.bizPeriod=response.data.bizPeriod; + modalDefaultValue.isShowUnit=response.data.isShowUnit; + modalDefaultValue.isOpenUpBusiUnit='Y'; + modalDefaultValue.pk_accperiodscheme=response.data.pk_accperiodscheme; + modalDefaultValue.begindate=response.data.begindate; + modalDefaultValue.enddate=response.data.enddate; + modalDefaultValue.bizDate=response.data.bizDate; + modalDefaultValue.yearbegindate=response.data.yearbegindate; + modalDefaultValue.pk_currency.display= response.data.currinfo.display; + modalDefaultValue.pk_currency.value = response.data.currinfo.value; + modalDefaultValue.pk_org = response.data.unit.value; + } + self.setState({ + modalDefaultValue, + dataout: self.state.dataout + }) + } + } + }); + } + componentDidMount() { + let {modalDefaultValue}=this.state; + let appcode=this.props.getSearchParam("c"); + // let defaultAccouontBook=getDefaultAccountBook(appcode); + getDefaultAccountBook(appcode).then((defaultAccouontBook)=>{ + if(defaultAccouontBook.value){ + modalDefaultValue.pk_accountingbook=defaultAccouontBook; + this.getDefaultYearmouth(defaultAccouontBook.value,modalDefaultValue); + } + // this.setState({ + // // modalDefaultValue, + // dataout: this.state.dataout + // }); + }) + } + + componentWillUpdate() { + let {sumOrDetail} = this.state + + } + + // 单选 控制 boxChicked状态 + handleChecked(index) { + const { checkedArraySum, boxChicked } = this.state; + var count = 0, + len = checkedArraySum.length; + for (var i = 0; i < len; i++) { + if (checkedArraySum[i] != false) { + // this.setState({ + // boxChicked: true + // }) + } else { + count++; + } + if (count == len) { + this.setState({ + boxChicked: false + }); + } else { + this.setState({ + boxChicked: true + }); + } + } + } + + // 汇总全选 控制 boxChicked状态 + handleAllChecked() { + const { checkedArraySum, boxChicked } = this.state; + for (var i = 0; i < checkedArraySum.length; i++) { + if (checkedArraySum[i] == true) { + this.setState({ + boxChicked: true + }); + } else { + this.setState({ + boxChicked: false + }); + } + } + } + + // 原币 与组织本币之间的换算 + handleConversion(y) { + var z = 1; + const { debitRate } = this.state; + if (y == null) { + return null; + } else { + z = y * debitRate; + return z; + } + } + + // 点击单个单选按钮 获取修改后的数据 + handleCancel(index, bool) { + const { historySumDataArr } = this.state; + let benY = 0, + benZ = 0, + weiY = 0, + weiZ = 0, + obj = {}; + obj = { + m_dDebit_Money_Y: historySumDataArr[index].m_Balancedebitamount, + m_Balancedebitamount: 0 + }; + if (bool == true) { + //m_dDebit_Money_Y ,m_dDebit_Money_B,m_Balancedebitamount,m_Balancelocaldebitamount,m_Balancedebitamount + historySumDataArr[index].m_dDebit_Money_Y = obj.m_dDebit_Money_Y; + historySumDataArr[index].m_dDebit_Money_B = this.handleConversion( + historySumDataArr[index].m_dDebit_Money_Y + ); + historySumDataArr[index].m_Balancedebitamount = obj.m_Balancedebitamount; + historySumDataArr[index].m_Balancelocaldebitamount = + obj.m_Balancedebitamount; + return historySumDataArr; + } else { + historySumDataArr[index].m_dDebit_Money_Y = obj.m_dDebit_Money_Y; + historySumDataArr[index].m_dDebit_Money_B = this.handleConversion( + historySumDataArr[index].m_dDebit_Money_Y + ); + historySumDataArr[index].m_Balancedebitamount = + historySumDataArr[index].empty_m_Balancedebitamount; + historySumDataArr[index].m_Balancelocaldebitamount = + historySumDataArr[index].empty_m_Balancedebitamount; + return historySumDataArr; + } + } + + // 点击全选按钮 获取修改后的数据 + handleAllChicked() { + const { historySumDataArr, checkedArraySum } = this.state; + var obj = {}, + brr = []; + for (var i = 0; i < historySumDataArr.length; i++) { + brr.push({ + m_dDebit_Money_Y: historySumDataArr[i].m_Balancedebitamount, + m_Balancedebitamount: 0 + }); + } + + var count = 0, + len = checkedArraySum.length; + for (var i = 0; i < len; i++) { + if (checkedArraySum[i] == true) { + count++; + } + } + + if (len == count) { + //m_dDebit_Money_Y ,m_dDebit_Money_B,m_Balancedebitamount,m_Balancelocaldebitamount,m_Balancedebitamount + for (var j = 0; j < historySumDataArr.length; j++) { + historySumDataArr[j].m_dDebit_Money_Y = brr[j].m_dDebit_Money_Y; + historySumDataArr[j].m_dDebit_Money_B = this.handleConversion( + historySumDataArr[j].m_dDebit_Money_Y + ); + historySumDataArr[j].m_Balancedebitamount = brr[j].m_Balancedebitamount; + historySumDataArr[j].m_Balancelocaldebitamount = + brr[j].m_Balancedebitamount; + } + return historySumDataArr; + } else { + for (var j = 0; j < historySumDataArr.length; j++) { + historySumDataArr[j].m_dDebit_Money_Y = brr[j].m_dDebit_Money_Y; + historySumDataArr[j].m_dDebit_Money_B = this.handleConversion( + historySumDataArr[j].m_dDebit_Money_Y + ); + historySumDataArr[j].m_Balancedebitamount = + historySumDataArr[j].empty_m_Balancedebitamount; + historySumDataArr[j].m_Balancelocaldebitamount = + historySumDataArr[j].empty_m_Balancedebitamount; + } + return historySumDataArr; + } + } + + render() { + let { + isQueryShow, + queryStyle, + historyDataArr, + historySumDataArr, + checkedArraySum, + sumOrDetail, + showModal, + defaultStatu,modalDefaultValue + } = this.state; + // let columnsSum = this.renderColumnsMultiSelect(columns_sum); + const columns_sum = [ + //汇总 + { + title: (
{this.state.json['20020VRIFYHISTORY-000018']}
),/* 国际化处理: 核销日期*/ + dataIndex: "m_oprDate", + key: "m_oprDate", + width: 200, + render:(text, record, index)=>{ + return ( +
{text==null||(text&&!text.display)? :text.display}
+ ); + } + }, + { + title: (
{this.state.json['20020VRIFYHISTORY-000022']}
),/* 国际化处理: 核销批号*/ + dataIndex: "m_Batchid", + key: "m_Batchid", + width: 200, + render:(text, record, index)=>{ + return ( +
{text==null||(text&&!text.display)? :text.display}
+ ); + } + }, + { + title: this.state.json['20020VRIFYHISTORY-000023'],/* 国际化处理: 借方*/ + children: [ + { + title: (
{this.state.json['20020VRIFYHISTORY-000024']}
),/* 国际化处理: 原币*/ + dataIndex: "m_debit_y", + key: "m_debit_y", + width: 200, + render:(text, record, index)=>{ + return ( +
{text==null||(text&&!text.display)? :text.display}
+ ); + } + }, + { + title: (
{this.state.json['20020VRIFYHISTORY-000025']}
),/* 国际化处理: 组织本币*/ + dataIndex: "m_debit_b", + key: "m_debit_b", + width: 200, + render:(text, record, index)=>{ + return ( +
{text==null||(text&&!text.display)? :text.display}
+ ); + } + } + ] + }, + { + title: this.state.json['20020VRIFYHISTORY-000026'],/* 国际化处理: 贷方*/ + children: [ + { + title: (
{this.state.json['20020VRIFYHISTORY-000024']}
),/* 国际化处理: 原币*/ + dataIndex: "m_credit_y", + key: "m_credit_y", + width: 200, + render:(text, record, index)=>{ + return ( +
{text==null||(text&&!text.display)? :text.display}
+ ); + } + }, + { + title: (
{this.state.json['20020VRIFYHISTORY-000025']}
),/* 国际化处理: 组织本币*/ + dataIndex: "m_credit_b", + key: "m_credit_b", + width: 200, + render:(text, record, index)=>{ + return ( +
{text==null||(text&&!text.display)? :text.display}
+ ); + } + } + ] + } + ]; + const columns_details = [ + //详细 + { + title: (
{this.state.json['20020VRIFYHISTORY-000018']}
),/* 国际化处理: 核销日期*/ + dataIndex: "m_oprDate", + key: "m_oprDate", + width: 100, + render:(text, record, index)=>{ + return ( +
{text==null||(text&&!text.display)? :text.display}
+ + ); + } + }, + { + title: (
{this.state.json['20020VRIFYHISTORY-000022']}
),/* 国际化处理: 核销批号*/ + dataIndex: "m_Batchid", + key: "m_Batchid", + width: 100, + render:(text, record, index)=>{ + return ( +
{text==null||(text&&!text.display)? :text.display}
+ ); + } + }, + { + title: this.state.json['20020VRIFYHISTORY-000023'],/* 国际化处理: 借方*/ + children: [ + { + title: (
{this.state.json['20020VRIFYHISTORY-000008']}
),/* 国际化处理: 业务单元*/ + dataIndex: "m_sDebit_PkUnit", + key: "m_sDebit_PkUnit", + width: 100, + render:(text, record, index)=>{ + return ( +
{text==null||(text&&!text.display)? :text.display}
+ ); + } + }, + { + title: (
{this.state.json['20020VRIFYHISTORY-000016']}
),/* 国际化处理: 凭证日期*/ + dataIndex: "m_debit_voucherDate", + key: "m_debit_voucherDate", + width: 100, + render:(text, record, index)=>{ + return ( +
{text==null||(text&&!text.display)? :text.display}
+ ); + } + }, + { + title: (
{this.state.json['20020VRIFYHISTORY-000017']}
),/* 国际化处理: 业务日期*/ + dataIndex: "m_debit_BusinessDate", + key: "m_debit_BusinessDate", + width: 100, + render:(text, record, index)=>{ + return ( +
{text==null||(text&&!text.display)? :text.display}
+ ); + } + }, + { + title: (
{this.state.json['20020VRIFYHISTORY-000013']}
),/* 国际化处理: 核销号*/ + dataIndex: "m_Debit_VerifyNo", + key: "m_Debit_VerifyNo", + width: 100, + render:(text, record, index)=>{ + return ( +
{text==null||(text&&!text.display)? :text.display}
+ ); + } + }, + { + title: (
{this.state.json['20020VRIFYHISTORY-000027']}
),/* 国际化处理: 凭证号*/ + dataIndex: "m_debit_vouchNo", + key: "m_debit_vouchNo", + width: 100, + render:(text, record, index)=>{ + return ( +
{text==null||(text&&!text.display)? :text.display}
+ ); + } + }, + { + title: (
{this.state.json['20020VRIFYHISTORY-000028']}
),/* 国际化处理: 分录号*/ + dataIndex: "m_sDebit_DetailIndex", + key: "m_sDebit_DetailIndex", + width: 100, + render:(text, record, index)=>{ + return ( +
{text==null||(text&&!text.display)? :text.display}
+ ); + } + }, + { + title: (
{this.state.json['20020VRIFYHISTORY-000029']}
),/* 国际化处理: 辅助核算*/ + dataIndex: "debit_assInfo", + key: "debit_assInfo", + width: 100, + render:(text, record, index)=>{ + return ( +
{text==null||(text&&!text.display)? :text.display}
+ ); + } + }, + { + title: (
{this.state.json['20020VRIFYHISTORY-000014']}
),/* 国际化处理: 摘要*/ + dataIndex: "m_Debit_Digest", + key: "m_Debit_Digest", + width: 100, + render:(text, record, index)=>{ + return ( +
{text==null||(text&&!text.display)? :text.display}
+ ); + } + }, + { + title: (
{this.state.json['20020VRIFYHISTORY-000024']}
),/* 国际化处理: 原币*/ + dataIndex: "m_debit_y", + key: "m_debit_y", + width: 100, + render:(text, record, index)=>{ + return ( +
{text==null||(text&&!text.display)? :text.display}
+ ); + } + }, + { + title: (
{this.state.json['20020VRIFYHISTORY-000025']}
),/* 国际化处理: 组织本币*/ + dataIndex: "m_debit_b", + key: "m_debit_b", + width: 100, + render:(text, record, index)=>{ + return ( +
{text==null||(text&&!text.display)? :text.display}
+ ); + } + } + ] + }, + { + title: this.state.json['20020VRIFYHISTORY-000026'],/* 国际化处理: 贷方*/ + children: [ + { + title: (
{this.state.json['20020VRIFYHISTORY-000008']}
),/* 国际化处理: 业务单元*/ + dataIndex: "m_sCredit_PkUnit", + key: "m_sCredit_PkUnit", + width: 100, + render:(text, record, index)=>{ + return ( +
{text==null||(text&&!text.display)? :text.display}
+ ); + } + }, + { + title: (
{this.state.json['20020VRIFYHISTORY-000016']}
),/* 国际化处理: 凭证日期*/ + dataIndex: "m_credit_voucherDate", + key: "m_credit_voucherDate", + width: 100, + render:(text, record, index)=>{ + return ( +
{text==null||(text&&!text.display)? :text.display}
+ ); + } + }, + { + title: (
{this.state.json['20020VRIFYHISTORY-000017']}
),/* 国际化处理: 业务日期*/ + dataIndex: "m_credit_BusinessDate", + key: "m_credit_BusinessDate", + width: 100, + render:(text, record, index)=>{ + return ( +
{text==null||(text&&!text.display)? :text.display}
+ ); + } + }, + { + title: (
{this.state.json['20020VRIFYHISTORY-000013']}
),/* 国际化处理: 核销号*/ + dataIndex: "m_Credit_verifyNo", + key: "m_Credit_verifyNo", + width: 100, + render:(text, record, index)=>{ + return ( +
{text==null||(text&&!text.display)? :text.display}
+ ); + } + }, + { + title: (
{this.state.json['20020VRIFYHISTORY-000027']}
),/* 国际化处理: 凭证号*/ + dataIndex: "m_credit_vouchNo", + key: "m_credit_vouchNo", + width: 100, + render:(text, record, index)=>{ + return ( +
{text==null||(text&&!text.display)? :text.display}
+ ); + } + }, + { + title: (
{this.state.json['20020VRIFYHISTORY-000028']}
),/* 国际化处理: 分录号*/ + dataIndex: "m_sCredit_DetailIndex", + key: "m_sCredit_DetailIndex", + width: 100, + render:(text, record, index)=>{ + return ( +
{text==null||(text&&!text.display)? :text.display}
+ ); + } + }, + { + title: (
{this.state.json['20020VRIFYHISTORY-000029']}
),/* 国际化处理: 辅助核算*/ + dataIndex: "credit_assInfo", + key: "credit_assInfo", + width: 100, + render:(text, record, index)=>{ + return ( +
{text==null||(text&&!text.display)? :text.display}
+ ); + } + }, + { + title: (
{this.state.json['20020VRIFYHISTORY-000014']}
),/* 国际化处理: 摘要*/ + dataIndex: "m_Credit_Digest", + key: "m_Credit_Digest", + width: 100, + render:(text, record, index)=>{ + return ( +
{text==null||(text&&!text.display)? :text.display}
+ ); + } + }, + { + title: (
{this.state.json['20020VRIFYHISTORY-000024']}
),/* 国际化处理: 原币*/ + dataIndex: "m_credit_y", + key: "m_credit_y", + width: 100, + render:(text, record, index)=>{ + return ( +
{text==null||(text&&!text.display)? :text.display}
+ ); + } + }, + { + title: (
{this.state.json['20020VRIFYHISTORY-000025']}
),/* 国际化处理: 组织本币*/ + dataIndex: "m_credit_b", + key: "m_credit_b", + width: 100, + render:(text, record, index)=>{ + return ( +
{text==null||(text&&!text.display)? :text.display}
+ ); + } + } + ] + } + ]; + let columnsSum = this.renderColumnsMultiSelectDebit(columns_sum); + let columnsDetails = this.renderColumnsMultiSelect(columns_details); + let credit = historyDataArr[0]; + const loadQuery = [ + { + itemName: this.state.json['20020VRIFYHISTORY-000007'],/* 国际化处理: 核算账簿*/ + itemType: "refer", + itemKey: "pk_accountingbook", isMustItem: true, + config: { refCode: "uapbd/refer/org/AccountBookTreeRef" } + }, + { + itemName: this.state.json['20020VRIFYHISTORY-000008'],/* 国际化处理: 业务单元*/ + itemType: "refer", + itemKey: "pk_units", isMustItem: false, + config: { refCode: "uapbd/refer/orgv/BusinessUnitVersionDefaultAllTreeRef" } + }, + { + itemName: this.state.json['20020VRIFYHISTORY-000009'],/* 国际化处理: 核销科目*/ + itemType: "refer", + itemKey: "pk_accasoa", isMustItem: true, + config: { refCode: "uapbd/refer/fiacc/AccountDefaultGridTreeRef" } + }, + { + itemName: this.state.json['20020VRIFYHISTORY-000010'],/* 国际化处理: 日期范围*/ + itemType: "Dbdate", + itemKey: ["begin_date", "end_date"] + }, //begin_date,end_date(必传) + { + itemName: this.state.json['20020VRIFYHISTORY-000011'],/* 国际化处理: 金额范围*/ + itemType: "DbtextInput", + itemKey: ["mny_begin", "mny_end"] + }, //mny_begin,mny_end + { + itemName: this.state.json['20020VRIFYHISTORY-000012'],/* 国际化处理: 币种*/ + itemType: "refer", + itemKey: "pk_currency", isMustItem: true, + config: { refCode: "uapbd/refer/pubinfo/CurrtypeGridRef" } + }, + { itemName: this.state.json['20020VRIFYHISTORY-000013'], itemType: "textInput", itemKey: "verifyno" },/* 国际化处理: 核销号*/ + { itemName: this.state.json['20020VRIFYHISTORY-000014'], itemType: "textInput", itemKey: "digest" },/* 国际化处理: 摘要*/ + { + itemName: this.state.json['20020VRIFYHISTORY-000015'],/* 国际化处理: 日期类型*/ + itemType: "radio", + itemKey: "dateType", + itemChild: [ + { + label: this.state.json['20020VRIFYHISTORY-000016'],/* 国际化处理: 凭证日期*/ + value: "voucherDate" + }, + { + label: this.state.json['20020VRIFYHISTORY-000017'],/* 国际化处理: 业务日期*/ + value: "Businessdate" + }, + { + label: this.state.json['20020VRIFYHISTORY-000018'],/* 国际化处理: 核销日期*/ + value: "opdate" + } + ] + }, + { + itemName: this.state.json['20020VRIFYHISTORY-000019'],/* 国际化处理: 处理方式*/ + itemType: "radio", + itemKey: "redBlue", + itemChild: [ + { + label: this.state.json['20020VRIFYHISTORY-000020'],/* 国际化处理: 核销*/ + value: "N" + }, + { + label: this.state.json['20020VRIFYHISTORY-000021'],/* 国际化处理: 红蓝对冲*/ + value: "Y" + } + ] + } + ]; + return ( +
+ + +
+
+ {sumOrDetail == "sum" ? ( + +
+ + ) : null} + + +
+
+ {sumOrDetail == "details" ? ( + +
+ + ) : null} + + + { + this.setState({ + showPrintModal: false + }) + }} + /> + + + ); + } +} +// HistoryQuery = createPage({})(HistoryQuery); +HistoryQuery.defaultProps = defaultProps12; + +HistoryQuery = createPage({ +// initTemplate: initTemplate, + mutiLangCode: '2002' // <- 这个2002意义不明,以后再说 +})(HistoryQuery); + + +ReactDOM.render(, document.querySelector('#app')); +// export default HistoryQuery; + +/*jdNRuZuduINgBy4HapEa4fqmBMzA+9W4I6NnfWBJr/o=*/ \ No newline at end of file diff --git a/src/gl/verify/historyquery/list/index.less b/src/gl/verify/historyquery/list/index.less new file mode 100644 index 0000000..a844d1c --- /dev/null +++ b/src/gl/verify/historyquery/list/index.less @@ -0,0 +1,400 @@ +@import "../../../public/components/variables.less"; + + +.account-head { + display: flex; + justify-content: space-between; + align-items: center; + background: blue; + height:30px; + line-height: 30px; + color:white; + padding-left:5px; + padding-right:5px; + margin-bottom: 3px; + .account-head-right{ + display: inline-block; + width:20px; + height:20px; + background: red; + line-height: 20px; + text-align: center; + } +} + + +.function-buttons{ + display: flex; + justify-content: center; + li{ + margin: 0 2px; + width:80px; + height:20px; + line-height: 20px; + text-align: center; + border-radius: 5px; + list-style: none; + background: bisque; + } + .query-style{ + border:1px solid blue; + color:blue; + } +} + +.account-content1{ + margin-top:20px; + margin-bottom:5px; + + ul{ + height:20px; + overflow: hidden; + .account-content1-tit{ + padding-left:10px; + width:500px; + float: left; + } + li{ + float: left; + } + } + .account-content1-credit{ + //margin-top:3px; + .account-content1-credit-tit{ + height:30px; + border:1px solid gray; + padding-left:5px; + line-height: 30px; + } + .account-content1-credit-tab{ + height:200px; + border:1px solid gray; + table{ + border-collapse :collapse ; + } + td{ + border: 1px solid gray; + } + } + .account-content1-credit-foot{ + padding-left: 10px; + padding-right: 10px; + display: flex; + justify-content: space-between; + align-items: center; + height:40px; + overflow: hidden; + border:1px solid gray; + ul{ + float: left; + input{ + border:none; + border:1px solid gray; + border-radius: 5px; + width:250px; + height:20px; + margin-right:5px; + } + } + } + } +} +#modalId{z-index:2} +.history{ + background: white; + .header-buttons-area{ + height: 54px; + border-bottom: 0px solid rgba(208,208,208,1) !important; + .button-app-wrapper{ + float: right; + margin-right: 20px; + line-height: 54px; + } + } + .account-content1{ + margin-top: 0; + } +} + + + + +#queryone{ + .u-modal-dialog .u-modal-content .u-modal-body .u-checkbox { + margin-left: 15px !important; + } + .u-modal-dialog .u-modal-content .u-modal-body .getAssDatas{ + width:100%; + .u-checkbox{ + margin: 0 !important; + } + } + .u-modal-dialog{ + .u-modal-body{ + .u-table{ + .u-table-content{ + .u-table-body{ + .u-table-tbody{ + tr{ + td:nth-of-type(3){ + .u-form-item.u-form-inline{ + .u-input-group-outer{ + .u-input-group{ + .u-input-inner{ + .u-col-xs-12 { + ul{ + li{ + span{ + width: 168px !important; + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + .u-form-item .u-input-group-outer .u-input-after, .u-form-item .u-input-group-outer .u-input-before{ + line-height: 23px; + } + .u-modal-content{ + overflow: visible !important; + padding: 0 !important; + + // background:rgba(255,255,255,1); + box-shadow:0px 1px 1px 0px rgba(74,81,93,0.1); + border-radius:3px; + .u-modal-body{ + .u-form { + .u-row{ + margin-left: 0 !important; + margin-right: 0 !important; + .u-col-md-2{ + padding-right: 0; + } + .number-formcontrol{ + width: 100px; + } + .refer-wrapper .refer{ + width: 180px; + height:30px; + // background:rgba(255,255,255,1); + // border:1px solid rgba(208,208,208,1); + } + .u-label{ + font-size: 13px; + } + .datepicker-input-group{ + width: 180px; + } + + .u-radio-label{ + padding-left: 18px; + } + } + } + } + } + + .refer-pop-window .refer-popover .refer-bottom{ + padding: 0; + } + .nc-modal.u-modal{ + padding-top: 0; + } + .refer-pop-window .refer-popover .refer-header .refer-title { + height:14px; + font-size:14px; + font-family:PingFangHK-Medium; + font-weight:500; + color:rgba(17,17,17,1); + line-height:14px; + } + .refer-pop-window .refer-popover .refer-header{ + margin-bottom: 14px; + } + .refer-pop-window .refer-popover .loading-container { + padding-left: 20px; + padding-right: 20px; + } + .u-form-control-wrapper .u-button{ + min-width: 60px !important; + height: 30px; + } + .refer-tree .u-form-control-wrapper{ + margin-bottom: 8px; + } + .refer-tree .u-button{ + min-width: 60px; + background:rgba(225,76,70,1); + border-radius:3px; + } + .refer-tree .u-radio-group{ + margin-top: 8px; + } + .nc-modal.u-modal .u-modal-dialog .u-modal-content .u-modal-body{ + overflow-x:hidden; + } + + .u-form .u-form-item.u-form-inline .u-input-group{ + width: 470px; + } + .u-table-placeholder{ + border-bottom: none; + } + .u-select-focused .u-select-selection, + .u-select-selection:active, + .u-select-selection:focus { + border-color: #999; + } + .nc-input:nth-last-of-type(4) .iconfont{ + position: absolute; + top: -6px; + } + .u-form-error.show { + display: block; + position: absolute; + right: -8px; + top: 23px; + } + .u-col-md-8{//币种后的输入框对齐 + margin-top: -15px; + } + + .refer-wrapper .refer {//去掉过度动画 + transition:all 0s !important; + } + .u-col-xs-12{ + transition:all 0s !important; + padding-left: 0; + } + } + + #historyquery{ + .u-table-content .u-table-scroll .u-table-placeholder{ + position: fixed; + left: 40%; + top: 48%; + } + // .no-data-placeholder{ + // height: calc(~"100vh - 92px"); + // padding-top: calc(~"50vh - 46px"); + // width: 100%; + // .no-data{ + // position: static; + // } + // .no-data-title{ + // margin-top: calc(~"50vh - 46px"); + // } + // } + .account-content1{ + .u-table-header{ + .u-table-thead{ + tr{ + th{ + // border-right: 1px solid rgba(205,205,205,1); + text-align: center; + padding: 0; + } + } + } + } + .u-table-body{ + .u-table-tbody{ + tr{ + td:nth-of-type(12), + td:nth-of-type(13), + td:nth-of-type(22), + td:nth-of-type(23), + td:nth-of-type(4), + td:nth-of-type(5), + td:nth-of-type(6), + td:nth-of-type(7){ + text-align: right; + } + } + } + } + } + .u-table-body { + overflow: hidden; + &:hover { + overflow: auto; + } + &::-webkit-scrollbar { + /*滚动条整体部分,其中的属性有width,height,background,border等(就和一个块级元素一样)(位置1)*/ + width: 4px; + height: 4px; + } + &::-webkit-scrollbar-button { + /*滚动条两端的按钮,可以用display:none让其不显示,也可以添加背景图片,颜色改变显示效果(位置2)*/ + // background:#74D334; + display: none; + } + &::-webkit-scrollbar-track { + /*外层轨道,可以用display:none让其不显示,也可以添加背景图片,颜色改变显示效果(位置3)*/ + // background:#FF66D5; + display: none; + } + &::-webkit-scrollbar-track-piece { + /*内层轨道,滚动条中间部分(位置4)*/ + // background:#FF66D5; + display: none; + } + &::-webkit-scrollbar-thumb { + /*滚动条里面可以拖动的那部分(位置5)*/ + // background:#FFA711; + border-radius: 4px; + background: #c1c1c1; + } + // &::-webkit-scrollbar-corner { + // /*边角(位置6)*/ + // background:#82AFFF; + // } + &::-webkit-scrollbar-resizer { + /*定义右下角拖动块的样式(位置7)*/ + // background:#FF0BEE; + // background: transparent; + display: none; + } + // { + // scrollbar-arrow-color: #f4ae21; /**//*三角箭头的颜色*/ + // scrollbar-face-color: #333; /**//*立体滚动条的颜色*/ + // scrollbar-3dlight-color: #666; /**//*立体滚动条亮边的颜色*/ + // scrollbar-highlight-color: #666; /**//*滚动条空白部分的颜色*/ + // scrollbar-shadow-color: #999; /**//*立体滚动条阴影的颜色*/ + // scrollbar-darkshadow-color: #666; /**//*立体滚动条强阴影的颜色*/ + // scrollbar-track-color: #666; /**//*立体滚动条背景颜色*/ + // scrollbar-base-color:#f8f8f8; /**//*滚动条的基本颜色*/ + // } + } + + } + + + .nc-modal.u-modal .u-modal-dialog .u-modal-content { + height: 449px; + overflow: hidden; + .u-modal-footer{ + .u-button{ + min-width: 60px; + } + } + } +#queryone .u-modal-content .u-modal-body .u-form .u-row .u-label{ + font-size: 13px; + display: flex; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + height: 40px; + line-height: 20px; +} \ No newline at end of file diff --git a/src/gl/verify/historyquery/list/searchModal/index.less b/src/gl/verify/historyquery/list/searchModal/index.less new file mode 100644 index 0000000..d5fff30 --- /dev/null +++ b/src/gl/verify/historyquery/list/searchModal/index.less @@ -0,0 +1,75 @@ +@import "../../../../public/components/variables.less"; +#queryone { + display: flex; + &.footer-hidden .u-modal-body { + margin: 9px 27px 0 42px !important; + height: 111px !important; + } + // .u-modal-header { + // border: none; + // } + .u-modal-dialog { + z-index: 1; + top: 2%; + //left: 5%; + // width: 800px; + height: auto; + // margin: -100px 0 0 -208px; + justify-content: center; + align-items: center; + .u-modal-content { + padding: 21px 19px 10px 37px; + box-shadow: 0 1px 5px 2px rgba(0, 0, 0, .2) !important; + border: none !important; + .u-modal-title { + .title-icon { + display: inline-block; + font-size: 22px; + margin-right: 20px; + position: relative; + top: 3px; + } + .bd-title-1 { + margin: 0; + } + .close-icon { + position: absolute; + top: 16px; + right: 13px; + font-size: 14px; + color: #bdbdbd; + } + } + + .u-modal-body { + overflow-x: hidden; + overflow-y:auto; + font-size: 13px; + color: #666; + width: 100%; + height: 100%; + .u-form-item { + min-height: 40px !important; + } + .u-checkbox { + width: 80px; + } + .u-table { + // border: 1px solid #ccc; + } + } + } + } + .dateMargin .u-label { + padding: 0px 15px; + width: 140px; + } + .online { + position: absolute; + left: -4px; + } + .u-input-after { + border: none !important; + background: none !important; + } +} diff --git a/src/gl/verify/historyquery/list/searchModal/searchModal.js b/src/gl/verify/historyquery/list/searchModal/searchModal.js new file mode 100644 index 0000000..98f8b13 --- /dev/null +++ b/src/gl/verify/historyquery/list/searchModal/searchModal.js @@ -0,0 +1,1216 @@ +/*nJFEVIQK/X4J2qzRu8A3m/q9DNS/i4EKyyoJYy7lp/Y=*/ +import React, { Component } from 'react'; +import {high,base,ajax,getBusinessInfo,getMultiLang} from 'nc-lightapp-front'; +// import moment from 'moment'; +// import zhCN from 'rc-calendar/lib/locale/zh_CN'; +import { CheckboxItem,RadioItem,TextAreaItem,ReferItem,SelectItem,InputItem,DateTimePickerItem} from '../../../../public/components/FormItems'; +const { Refer} = high; +import { toast } from '../../../../public/components/utils.js'; +import createScript from '../../../../public/components/uapRefer.js'; +// const format = 'YYYY-MM-DD'; +const { NCFormControl: FormControl, NCDatePicker: DatePicker, NCButton: Button, NCRadio: Radio, NCBreadcrumb: Breadcrumb, + NCRow: Row, NCCol: Col, NCTree: Tree, NCIcon: Icon, NCLoading: Loading, NCTable: Table, NCSelect: Select, + NCCheckbox: Checkbox, NCNumber, AutoComplete, NCDropdown: Dropdown, NCPanel: Panel,NCModal:Modal,NCForm +} = base; +import './index.less' +import getAssDatas from "../../../../public/components/getAssDatas/index.js"; +import checkMustItem from "../../../../public/common/checkMustItem.js"; +const { NCFormItem:FormItem } = NCForm; + +//const dateInputPlaceholder = this.state.json['20020VRIFYHISTORY-000038'];/* 国际化处理: 选择日期*/ +const config={ + "isDataPowerEnable":'Y', + "DataPowerOperationCode":'fi' +}; + + const defaultProps12 = { + prefixCls: "bee-table", + multiSelect: { + type: "checkbox", + param: "key" + } + }; + + +export default class SearchModal extends Component { + constructor(props) { + super(props); + this.state = { + json:{}, + assidCondition :{ + pk_accountingbook:'',// '1001A3100000000000PE', + pk_accasoa:'',// '0001Z0100000000001BD', + prepareddate:'',// '2018-07-18', + pk_org:'',// '0001A310000000000NN6', + assData:[],// assData, + assid: "",//'0001Z31000000006G5A9', + checkboxShow: true + },//辅助核算组件需要的参数 + showModal:false, + isShowUnit:false,//是否显示业务单元 + assData: [//辅助核算信息 + ], + childAssData: { + accountingbook_org:'',//保存账簿对应的组织 + pk_org: '', + pk_accountingbook: '' + },//接受父组件传过来的参数 + modalDefaultValue:{},//默认数据 + loadData:[],//查询模板加载数据 + listItem:{},//模板数据对应值 + SelectedAssData:[],//选中的数据 + checkedAll:true, + checkedArray: [], + }; + this.close = this.close.bind(this); + } + componentWillMount() { + + let callback= (json) =>{ + this.setState({json:json},()=>{ + }) + } + getMultiLang({moduleId:['20020VRIFYHISTORY','publiccommon','publiccomponents'],domainName:'gl',currentLocale:'simpchn',callback}); +   } + componentWillReceiveProps (nextProp) { + + let self=this; + let {loadData,showOrHide,modalDefaultValue}=nextProp; + let { listItem,showModal,isShowUnit,childAssData }=self.state; + + if (showOrHide&&nextProp.loadData != self.state.loadData&&self.state.loadData.length==0 ) { + childAssData.pk_org=modalDefaultValue.pk_org; + childAssData.accountingbook_org=modalDefaultValue.pk_org; + isShowUnit=modalDefaultValue.isShowUnit; + loadData.forEach((item,i)=>{ + let key; + if(item.itemType=='refer'){ + if(item.itemKey=='pk_units'){ + key=[{ + display:'', + value:'', + isMustItem:item.isMustItem, + itemName:item.itemName + }] + }else if(item.itemKey=='pk_accountingbook'){ + key={ + display:modalDefaultValue.pk_accountingbook.display, + value:modalDefaultValue.pk_accountingbook.value, + isMustItem:item.isMustItem, + itemName:item.itemName + } + }else if(item.itemKey=='pk_currency'){ + key={ + display:modalDefaultValue.pk_currency.display, + value:modalDefaultValue.pk_currency.value, + isMustItem:item.isMustItem, + itemName:item.itemName + } + }else{ + key={ + display:'', + value:'', + isMustItem:item.isMustItem, + itemName:item.itemName + } + } + } else if (item.itemType == "radio") { + if(item.itemKey=='dateType'){ + key = { + value: item.itemChild[2].value + }; + }else{ + key = { + value: item.itemChild[0].value + }; + } + + }else{ + key={ + value:'' + } + if(item.itemType=='date'||item.itemType=='Dbdate'){ + if(item.itemKey=='begin_date'){ + key = { + value:modalDefaultValue.begindate + }; + }else if(item.itemKey=='end_date'){ + key = { + value:modalDefaultValue.bizDate + }; + }else{ + key = { + value: "" + }; + } + } + } + if(item.itemType=='Dbdate'||item.itemType=='DbtextInput'){ + item.itemKey.map((k,index)=>{ + let name= k; + listItem[name]=key + }); + }else{ + let name= item.itemKey; + listItem[name]=key + } + + }) + listItem['begin_date']={value:modalDefaultValue.begindate}; + listItem['end_date']={value:modalDefaultValue.bizDate}; + self.setState({ + modalDefaultValue:modalDefaultValue, + loadData:loadData, + showModal:showOrHide, + listItem,childAssData,isShowUnit + }) + }else{ + self.setState({ + showModal:showOrHide,childAssData,isShowUnit + }) + } + } + + //表格操作根据key寻找所对应行 + findByKey(key, rows) { + let rt = null; + let self = this; + rows.forEach(function(v, i, a) { + if (v.key == key) { + rt = v; + } + }); + return rt; + } + + close() { + this.props.handleClose(); + } + + confirm=()=>{ + let { listItem,assData,checkedArray,SelectedAssData,assidCondition } =this.state; + SelectedAssData=[]; + let checkStatus=checkMustItem(listItem);//必输项校验 + if(!checkStatus.flag){ + toast({content:checkStatus.info+this.state.json['publiccommon-000001'],color:'warning'}); + return false; + } + for(var i = 0; i < checkedArray.length; i++){ + if(checkedArray[i]==true){ + SelectedAssData.push(assData[i]); + } + } + listItem.ass=SelectedAssData;//assData + // this.props.onConfirm(listItem); + this.setState({ + assidCondition + },()=>{ + this.props.onConfirm(listItem); + }) + } + + queryList=(data)=>{ + let self=this; + function getNowFormatDate() { + let date = new Date(); + let seperator1 = "-"; + let year = date.getFullYear(); + let month = date.getMonth() + 1; + let strDate = date.getDate(); + if (month >= 1 && month <= 9) { + month = "0" + month; + } + if (strDate >= 0 && strDate <= 9) { + strDate = "0" + strDate; + } + let currentdate = year + seperator1 + month + seperator1 + strDate; + return currentdate; + } + // let currrentDate = getNowFormatDate(); + let dateInputPlaceholder = this.state.json['20020VRIFYHISTORY-000038'];/* 国际化处理: 选择日期*/ + let businessInfo = getBusinessInfo(); + let currrentDate = businessInfo.businessDate.split(' ')[0]; + let { listItem,isShowUnit,assData,checkedArray,childAssData,assidCondition,modalDefaultValue } =self.state; + return data.length!=0?( + data.map((item, i) => { + switch (item.itemType) { + case 'refer': + let referUrl= item.config.refCode+'/index.js'; + let DBValue=[]; + let defaultValue={} + if(listItem[item.itemKey].length){ + listItem[item.itemKey].map((item,index)=>{ + DBValue[index]={ refname: item.display, refpk:item.value }; + }) + }else{ + defaultValue = { refname: listItem[item.itemKey].display, refpk: listItem[item.itemKey].value }; + } + //let defaultValue = { refname: listItem[item.itemKey].display, refpk: listItem[item.itemKey].value }; + if(!self.state[item.itemKey]){ + {createScript.call(self,referUrl,item.itemKey)} + return
+ }else{ + if(item.itemKey=='pk_accountingbook'){ + return( + + {self.state[item.itemKey]?(self.state[item.itemKey])( + { + fieldid:item.itemKey, + value:defaultValue, + isMultiSelectedEnabled:false, + showGroup:false, + disabledDataShow:true, + queryCondition:() => { + return Object.assign({ + "TreeRefActionExt":'nccloud.web.gl.ref.AccountBookRefSqlBuilder', + "appcode":modalDefaultValue.appcode + },config) + }, + onChange:(v)=>{ + if(v.refpk){ + //判断是否起用业务单元 + let url = '/nccloud/gl/voucher/queryBookCombineInfo.do'; + let pk_accpont = {"pk_accountingbook":v.refpk} + ajax({ + url:url, + data:pk_accpont, + success: function(response){ + const { success } = response; + //渲染已有账表数据遮罩 + if (success) { + if(response.data){ + isShowUnit=response.data.isShowUnit; + listItem['pk_currency'].value = response.data.currinfo.value; + listItem['pk_currency'].display = response.data.currinfo.display; + listItem['begin_date']={value:response.data.begindate}; + listItem['end_date']={value:response.data.bizDate}; + childAssData.pk_org = response.data.unit.value; + childAssData.accountingbook_org=response.data.unit.value; + assidCondition.pk_org=response.data.unit.value; + } + self.setState({ + isShowUnit,childAssData,assidCondition + }) + } + } + }); + } + assidCondition.pk_accountingbook=v.refpk; + listItem[item.itemKey].value = v.refpk + listItem[item.itemKey].display = v.refname + //清空科目,业务单元,辅助核算项 + listItem['pk_accasoa'].display=''; + listItem['pk_accasoa'].value=''; + listItem['pk_units']=[{display:'',value:''}]; + assData=[]; + this.setState({ + listItem,assidCondition,assData + }) + } + } + ):
} + ) + }else if(item.itemKey=='pk_accasoa'){ + return( + + {self.state[item.itemKey]?(self.state[item.itemKey])( + { + fieldid:item.itemKey, + value:defaultValue, + isMultiSelectedEnabled:false, + queryCondition:() => { + return Object.assign({ + "refName":item.itemName, + "pk_accountingbook": listItem.pk_accountingbook.value? listItem.pk_accountingbook.value:'', + "dateStr":currrentDate, + "TreeRefActionExt":'nccloud.web.gl.verify.action.VerifyObjectRefSqlBuilder' + + },config) + }, + onFocus:(v)=>{ + if(!listItem.pk_accountingbook.value){ + toast({content:this.state.json['20020VRIFYHISTORY-000046'],color:'warning'});/* 国际化处理: 请先选择核算账簿,核算账簿不能为空*/ + return false; + } + }, + onChange:(v)=>{ + //根据选定的pk 实现过滤 + if(item.itemKey!='pk_accountingbook'&&!listItem.pk_accountingbook.value){ + toast({ content: this.state.json['20020VRIFYHISTORY-000047'], color: 'warning' });/* 国际化处理: 请先选择核算账簿*/ + return false + } + assData=[]; + checkedArray=[];//选中的数据 + if(v.refpk){ + //请求辅助核算数据 + let url = '/nccloud/gl/voucher/queryAssItem.do'; + let queryData = { + pk_accasoa: v.refpk, + prepareddate: currrentDate, + }; + + ajax({ + url:url, + data:queryData, + success: function(response){ + const { success } = response; + //渲染已有账表数据遮罩 + if (success) { + if(response.data){ + response.data.map((item,index)=>{ + checkedArray.push(true); + let obj={ + key:index, + "checktypecode":item.code, + "checktypename" :item.name, + "pk_Checktype": item.pk_accassitem, + "refCode":item.refCode?item.refCode:item.code, + "refnodename":item.refnodename, + "pk_accassitem":item.pk_accassitem, + "pk_accountingbook":listItem.pk_accountingbook.value, + "classid": item.classid, + "pk_defdoclist": item.classid, + } + assData.push(obj); + }) + }else{ + assData=[]; + } + self.setState({ + assData,checkedArray + }) + } + } + }); + } + listItem[item.itemKey].value = v.refpk; + listItem[item.itemKey].display = v.refname; + assidCondition.pk_accasoa=v.refpk; + assidCondition.prepareddate=currrentDate; + this.setState({ + listItem,assidCondition,assData,checkedArray + }) + } + } + ):
} + ) + }else if(item.itemKey=='pk_units'){ + if(isShowUnit){ + return( + + {self.state[item.itemKey]?(self.state[item.itemKey])( + { + fieldid:item.itemKey, + value:DBValue, + isMultiSelectedEnabled:true, + queryCondition:() => { + return Object.assign({ + "pk_accountingbook": listItem.pk_accountingbook.value? listItem.pk_accountingbook.value:'', + "TreeRefActionExt": 'nccloud.web.gl.ref.GLBUVersionWithBookRefSqlBuilder' + },config) + }, + onChange:(v)=>{ + //根据选定的pk 实现过滤 + if(item.itemKey!='pk_accountingbook'&&!listItem.pk_accountingbook.value){ + toast({ content: this.state.json['20020VRIFYHISTORY-000047'], color: 'warning' });/* 国际化处理: 请先选择核算账簿*/ + return false + } + listItem[item.itemKey]=[]; + v.map((arr,index)=>{ + let accasoa={ + display:arr.refname, + value:arr.refpk + } + listItem[item.itemKey].push(accasoa); + }) + if(v[0]){ + childAssData.pk_org = v[0].refpk; + assidCondition.pk_org=v[0].refpk; + }else{ + childAssData.pk_org =childAssData.accountingbook_org; + assidCondition.pk_org=childAssData.accountingbook_org; + } + + //辅助核算项的值 + assData.map((item,index)=>{ + item.checkvaluename =null; + item.pk_Checkvalue = null; + item.checkvaluecode = null; + }) + // listItem[item.itemKey].value = v.refpk + // listItem[item.itemKey].display = v.refname + this.setState({ + listItem,childAssData,assidCondition + }) + } + } + ):
} + ) + }else{ + return(
) + } + + }else{ + return( + + {self.state[item.itemKey]?(self.state[item.itemKey])( + { + fieldid:item.itemKey, + value:defaultValue, + queryCondition:() => { + return Object.assign({ + //"pk_accountingbook": self.state.pk_accountingbook.value + },config) + }, + onChange:(v)=>{ + listItem[item.itemKey].value = v.refpk + listItem[item.itemKey].display = v.refname + this.setState({ + listItem + }) + } + } + ):
} + ) + } + } + break; + case 'date': + return ( + + { + listItem[item.itemKey].value = v; + this.setState({ + listItem + }) + }} + placeholder={dateInputPlaceholder} + /> + + ); + case'Dbdate': + return( + // + //
+ +  --  +
+ { + listItem.end_date={value: v} + this.setState({ + listItem + }) + }} + placeholder={dateInputPlaceholder} + /> +
+ + } + > + { + listItem.begin_date={value: v} + this.setState({ + listItem + }) + }} + placeholder={dateInputPlaceholder} + /> +
+ // + // + ); + case 'textInput': + return ( + + { + listItem[item.itemKey].value = v + this.setState({ + listItem + }) + }} + /> + + ); + case 'DbtextInput': + return( + // + // + +  --  +
+ { + listItem.mny_end={value : v} + this.setState({ + listItem + }) + }} + /> +
+ } + > + { + listItem.mny_begin={value : v} + this.setState({ + listItem + }) + }} + /> +
+ // + // + ); + case 'radio': + return( + + { + return (item.itemChild) + }} + onChange={(v)=>{ + listItem[item.itemKey].value = v + this.setState({ + listItem + }) + }} + /> + + ) + case 'select': + return( + + { + return (item.itemChild) + } + } + onChange={(v)=>{ + + listItem[item.itemKey].value = v + this.setState({ + listItem + }) + }} + /> + ) + case 'checkbox': + return( + + { + return (item.itemChild) + } + } + onChange={(v)=>{ + + }} + /> + + ) + default: + break; + } + }) + ):
; + + } + + + onAllCheckChange = () => { + let self = this; + let checkedArray = []; + let selIds = []; + for (var i = 0; i < self.state.checkedArray.length; i++) { + checkedArray[i] = !self.state.checkedAll; + } + self.setState({ + checkedAll: !self.state.checkedAll, + checkedArray: checkedArray, + }); + }; + onCheckboxChange = (text, record, index) => { + let self = this; + let allFlag = false; + let checkedArray = self.state.checkedArray.concat(); + checkedArray[index] = !self.state.checkedArray[index]; + for (var i = 0; i < self.state.checkedArray.length; i++) { + if (!checkedArray[i]) { + allFlag = false; + break; + } else { + allFlag = true; + } + } + self.setState({ + checkedAll: allFlag, + checkedArray: checkedArray, + }); + }; + + renderColumnsMultiSelect(columns) { + const {checkedArray } = this.state; + const { multiSelect } = this.props; + let select_column = {}; + let indeterminate_bool = false; + // let indeterminate_bool1 = true; + if (multiSelect && multiSelect.type === "checkbox") { + let i = checkedArray.length; + while(i--){ + if(checkedArray[i]){ + indeterminate_bool = true; + break; + } + } + let defaultColumns = [ + { + title: ( + + ), + key: "checkbox", + dataIndex: "checkbox", + width: 50, + render: (text, record, index) => { + return ( + + ); + } + } + ]; + columns = defaultColumns.concat(columns); + } + return columns; + } + + render() { + let{showOrHide}=this.props; + let { loadData,assData,assidCondition,checkedAll,checkedArray,childAssData} =this.state; + let dateInputPlaceholder = this.state.json['20020VRIFYHISTORY-000038'];/* 国际化处理: 选择日期*/ + let columns10 = [ + { + title: this.state.json['20020VRIFYHISTORY-000039'],/* 国际化处理: 核算类型*/ + dataIndex: "checktypename", + key: "checktypename", + width: "30%", + render: (text, record, index) => { + return {record.checktypename}; + } + }, + { + title: this.state.json['20020VRIFYHISTORY-000040'],/* 国际化处理: 核算内容*/ + dataIndex: "checkvaluename", + key: "checkvaluename", + render: (text, record, index) => { + let { assData,childAssData } = this.state; + let defaultValue = []; + if (assData[index]["checkvaluename"]) { + assData[index]["checkvaluename"].split(",").map((item, _index) => { + defaultValue[_index] = { refname: item, refpk: "" }; + }); + assData[index]["pk_Checkvalue"].split(",").map((item, _index) => { + defaultValue[_index].refpk = item; + }); + } else { + defaultValue = [{ refname: "", refpk: "" }]; + } + if (record.refnodename) { + let referUrl = record.refnodename + '.js'; + if (!this.state[record.pk_accassitem]) { + { createScript.call(this, referUrl, record.pk_accassitem) } + return
+ } else { + if (record.classid == 'b26fa3cb-4087-4027-a3b6-c83ab2a086a9' || record.classid == '40d39c26-a2b6-4f16-a018-45664cac1a1f') {//部门,人员 + return ( + + {this.state[record.pk_accassitem] ? (this.state[record.pk_accassitem])( + { + value: defaultValue, + isShowUnit: true, + unitProps: { + refType: 'tree', + refName: this.state.json['20020VRIFYHISTORY-000008'],/* 国际化处理: 业务单元*/ + refCode: 'uapbd.refer.org.BusinessUnitTreeRef', + rootNode: { refname: this.state.json['20020VRIFYHISTORY-000008'], refpk: 'root' },/* 国际化处理: 业务单元*/ + placeholder: this.state.json['20020VRIFYHISTORY-000008'],/* 国际化处理: 业务单元*/ + queryTreeUrl: '/nccloud/uapbd/org/BusinessUnitTreeRef.do', + treeConfig: { name: [this.state.json['20020VRIFYHISTORY-000041'], this.state.json['20020VRIFYHISTORY-000042']], code: ['refcode', 'refname'] },/* 国际化处理: 编码,名称*/ + isMultiSelectedEnabled: false, + //unitProps:unitConf, + isShowUnit: false + }, + unitCondition:{ + pk_financeorg:childAssData.pk_org, + 'TreeRefActionExt':'nccloud.web.gl.ref.OrgRelationFilterRefSqlBuilder' + }, + isMultiSelectedEnabled: true, + "unitValueIsNeeded":false, + "isShowDimission":true, + queryCondition: () => { + // if (record.classid && record.classid.length == 20) {//classid的长度大于20的话过滤条件再加一个pk_defdoclist + // return Object.assign({ + // "pk_org": childAssData.pk_org, + // "pk_defdoclist": record.pk_defdoclist + // },config) + // } else { + // if (record.classid == '40d39c26-a2b6-4f16-a018-45664cac1a1f') {//人员 + config.isShowDimission=true; + return Object.assign({ + "busifuncode": "all", + "pk_org": childAssData.pk_org + },config) + // } else { + // return Object.assign({ + // "pk_org": childAssData.pk_org + // },config) + // } + + // } + }, + onChange: (v) => { + let { assData } = this.state; + let originData = this.findByKey(record.key, assData); + let refnameArr = [], refpkArr = [], refcodeArr = []; + if (originData) { + v.map((arr, index) => { + refnameArr.push(arr.refname); + refpkArr.push(arr.refpk); + refcodeArr.push(arr.refcode); + + }) + originData.checkvaluename = refnameArr.join(); + originData.pk_Checkvalue = refpkArr.join(); + originData.checkvaluecode = refcodeArr.join(); + } + childAssData.assData = assData; + this.setState({ + assData, childAssData + }) + } + }) :
} + ); + } else { + return ( + + {this.state[record.pk_accassitem] ? (this.state[record.pk_accassitem])( + { + value: defaultValue, + isMultiSelectedEnabled: true, + queryCondition: () => { + if (record.classid && record.classid.length == 20) {//classid的长度等于20的话过滤条件再加一个pk_defdoclist + return Object.assign({ + "pk_org": childAssData.pk_org, + "pk_defdoclist": record.pk_defdoclist + },config) + } else { + return Object.assign({ + "pk_org": childAssData.pk_org + },config) + } + }, + onChange: (v) => { + let { assData } = this.state; + let originData = this.findByKey(record.key, assData); + let refnameArr = [], refpkArr = [], refcodeArr = []; + if (originData) { + v.map((arr, index) => { + refnameArr.push(arr.refname); + refpkArr.push(arr.refpk); + refcodeArr.push(arr.refcode); + + }) + originData.checkvaluename = refnameArr.join(); + originData.pk_Checkvalue = refpkArr.join(); + originData.checkvaluecode = refcodeArr.join(); + } + childAssData.assData = assData; + this.setState({ + assData, childAssData + }) + } + }) :
} + ); + } + } + } else {//不是参照的话要区分日期、字符、数值 + if (record.classid == 'BS000010000100001033') {//日期 + return ( + { + let { assData } = this.state; + let originData = this.findByKey(record.key, assData); + if (originData) { + let assArr = []; + assArr.push(v); + originData.checkvaluename = assArr; + originData.pk_Checkvalue = assArr; + originData.checkvaluecode = assArr; + } + childAssData.assData = assData; + this.setState({ + assData, childAssData + }) + }} + + /> + ) + } else if (record.classid == 'BS000010000100001031') {//数值 + return ( + { + let { assData } = this.state; + let originData = this.findByKey(record.key, assData); + if (originData) { + let assArr = []; + assArr.push(v); + originData.checkvaluename = assArr; + originData.pk_Checkvalue = assArr; + originData.checkvaluecode = assArr; + } + childAssData.assData = assData; + this.setState({ + assData, childAssData + }) + }} + /> + ) + } else if (record.classid == 'BS000010000100001032') {//布尔 + return ( + + { + return ([{ + label: this.state.json['20020VRIFYHISTORY-000044'],/* 国际化处理: 是*/ + value: 'Y' + }, { + label: this.state.json['20020VRIFYHISTORY-000045'],/* 国际化处理: 否*/ + value: 'N' + }]) + } + } + onChange={(v) => { + let { assData } = this.state; + let originData = this.findByKey(record.key, assData); + if (originData) { + let assArr = []; + assArr.push(v); + originData.checkvaluename = assArr; + originData.pk_Checkvalue = assArr; + originData.checkvaluecode = assArr; + } + childAssData.assData = assData; + this.setState({ + assData, childAssData + }) + }} + /> + + // { + // let { assData } =this.state; + // let originData = this.findByKey(record.key, assData); + // if (originData) { + // let assArr=[]; + // assArr.push(v); + // originData.checkvaluename = assArr; + // originData.pk_Checkvalue =assArr; + // originData.checkvaluecode=assArr; + // } + // childAssData.assData=assData; + // this.setState({ + // assData,childAssData + // }) + // }} + // /> + ) + } else {//字符 + return ( + { + let { assData } = this.state; + let originData = this.findByKey(record.key, assData); + if (originData) { + let assArr = []; + assArr.push(v); + originData.checkvaluename = assArr; + originData.pk_Checkvalue = assArr; + originData.checkvaluecode = assArr; + } + childAssData.assData = assData; + this.setState({ + assData, childAssData + }) + }} + /> + ) + } + + } + } + } + ]; + let columnsldad = this.renderColumnsMultiSelect(columns10); + let pretentAssData={ + assData: assData||[], + childAssData:childAssData||[], + checkboxShow: true,//是否显示复选框 + showOrHide:true, + checkedAll:checkedAll,//全选复选框的选中状态 + checkedArray:checkedArray||[],//复选框选中情况 + $_this:this + }; + assidCondition.assData=assData; + const emptyFunc = () => {this.state.json['20020VRIFYHISTORY-000050']}!/* 国际化处理: 这里没有数据*/ + return ( +
+ + + {this.state.json['20020VRIFYHISTORY-000051']}{/* 国际化处理: 凭证查询*/} + + +
+ + {loadData.length > 0 ? this.queryList(loadData) : ''} + +
+
+ {/*
*/} + {getAssDatas({pretentAssData})} + + + + {/* 国际化处理: 查询*/} + {/* 国际化处理: 取消*/} + + + + ) + } +} +SearchModal.defaultProps = defaultProps12; + +/*nJFEVIQK/X4J2qzRu8A3m/q9DNS/i4EKyyoJYy7lp/Y=*/ \ No newline at end of file diff --git a/src/gl/verify/verify/vrify/events/buttonClick.js b/src/gl/verify/verify/vrify/events/buttonClick.js new file mode 100644 index 0000000..f632163 --- /dev/null +++ b/src/gl/verify/verify/vrify/events/buttonClick.js @@ -0,0 +1,111 @@ +/*q2LCmxM8POvl78IL0Liydo5bohca3dvG3wsSHNuPiA4=*/ +import {toast } from 'nc-lightapp-front'; +import {handleVerify, handleHedging,handleUnMatch} from "./index.js"; +// import {voucherRelatedApp} from "../../../../public/components/oftenApi.js"; +// import {voucher_link,voucher_gen} from "../../../../public/components/constJSON"; +import { openToVoucher } from '../../../../public/common/voucherUtils'; +export default function buttonClick(props, id) { + switch (id) { + case 'refresh': + //刷新 + this.handleRefresh(); + break; + // 查询 + case 'inquire': + this.handleClick(); + break; + + // 核销 + case 'verificationCancel': + handleVerify(this); + break; + + // 红蓝对冲 + case 'RB_hedging': + handleHedging(this); + break; + + // 自动核销 + case 'auto_verificationCancel': + this.handleAutoVerifyClick(); + break; + + // 自动红蓝对冲 + case 'auto_RB_hedging': + this.handleAutoHedgingClick(); + break; + + // 历史查询 + case 'history_operation': + this.handleQueryHistory(); + break; + + // 全匹配 + case 'full_match': + this.handleAllMatch(); + break; + + // 取消匹配 + case 'cancel_match': + handleUnMatch(this); + break; + + // 对照 + case 'contrast': + this.handleCompare(); + break; + + // 取消对照 + case 'cancel_contrast': + this.handleUnCompare(); + break; + + // 切换布局 + case 'switch_layout': + this.handleChangeLayout(); + break; + + case 'link_voucher'://联查凭证 + let self=this; + let pk_voucher; + let creditSelectedData=this.filterSelectedData('credit');//获取借方选中的数据 + let debitSelectedData=this.filterSelectedData('debit');//获取借方选中的数据 + if(debitSelectedData.length<=0&&creditSelectedData.length<=0){ + toast({ content: self.state.json['20020VRIFYPAGE-000000'], color: 'warning' });/* 国际化处理: 请选择一行数据进行联查凭证*/ + return false; + } + if(debitSelectedData.length>1||creditSelectedData.length>1||(debitSelectedData.length==1&&creditSelectedData.length==1)){ + toast({ content: self.state.json['20020VRIFYPAGE-000001'], color: 'warning' });/* 国际化处理: 只支持单行数据进行联查凭证*/ + return false; + } + if(creditSelectedData.length==1){ + pk_voucher=creditSelectedData[0].m_Pk_voucher.value; + } + if(debitSelectedData.length==1){ + pk_voucher=debitSelectedData[0].m_Pk_voucher.value; + } + let param = { + pk_voucher: pk_voucher, + titlename: self.state.json['20020VRIFYPAGE-000002'],/* 国际化处理: 凭证联查*/ + } + openToVoucher(self,param) + // let voucherApp=voucherRelatedApp(voucher_link); + // self.props.openTo('/gl/gl_voucher/pages/main/index.html#Welcome', + // { + // appcode:voucherApp.appcode, + // c:voucherApp.appcode, + // id:pk_voucher, + // pagekey:'link', + // n:self.state.json['20020VRIFYPAGE-000002'],/* 国际化处理: 凭证联查*/ + // status:'browse' + + // } + // ) + break; + default: + break; + + } +} + +/*q2LCmxM8POvl78IL0Liydo5bohca3dvG3wsSHNuPiA4=*/ \ No newline at end of file diff --git a/src/gl/verify/verify/vrify/events/compareOtherData.js b/src/gl/verify/verify/vrify/events/compareOtherData.js new file mode 100644 index 0000000..f985e51 --- /dev/null +++ b/src/gl/verify/verify/vrify/events/compareOtherData.js @@ -0,0 +1,72 @@ +/*/FbBslWIcRlAMbfFtq1R34NvHiKsoLN1Uu1kn18x7Dg=*/ +import {ajax} from 'nc-lightapp-front'; +import verifyUnverifySum from './verifyUnverifySum'; +export default function compareOtherData(self,type,status){ + let {CompareStatus,creditSelectedData,debitSelectedData,checkedArrayDebit,checkedArrayCredit, + resourceData_credit,resourceData_debit,compareData_Credit,compareData_Debit, + creditDataArr,debitDataArr}=self.state; + let currentData=[];//多虑对照对来的数据 + + if(type=='credit'){ + checkedArrayDebit=[]; + creditSelectedData=self.filterSelectedData('credit');//获取借方选中的数据 + if(creditSelectedData.length>0){ + compareData_Debit=true; + let credit_assid=creditSelectedData[0].m_assid?creditSelectedData[0].m_assid.value:''; + resourceData_debit.map((item,index)=>{//每次对照都取原始数据去对照 + if(item.m_pk_unit.value==creditSelectedData[0].m_pk_unit.value&&item.m_sSubjCode.value==creditSelectedData[0].m_sSubjCode.value + &&(item.m_assid?item.m_assid.value:'')==credit_assid&&item.m_debitamount.value==creditSelectedData[0].m_creditamount.value){ + currentData.push(item); + checkedArrayDebit.push((item.m_bSelected=='Y')?true:false); + } + }) + }else{ + currentData=resourceData_debit; + compareData_Debit=false; + resourceData_debit.map((item,index)=>{ + checkedArrayDebit.push((item.m_bSelected=='Y')?true:false); + }) + + } + self.setState({ + debitDataArr:currentData, + checkedArrayDebit, + compareData_Debit + },()=>{ + verifyUnverifySum(self); + // self.handleSumAmount('credit'); + self.handleSumAmount('debit'); + }) + }else if(type=='debit'){ + debitSelectedData=self.filterSelectedData('debit');//获取借方选中的数据 + checkedArrayCredit=[]; + if(debitSelectedData.length>0){ + compareData_Credit=true; + let debit_assid=debitSelectedData[0].m_assid?debitSelectedData[0].m_assid.value:''; + resourceData_credit.map((item,index)=>{//每次对照都取原始数据去对照 + if(item.m_pk_unit.value==debitSelectedData[0].m_pk_unit.value&&item.m_sSubjCode.value==debitSelectedData[0].m_sSubjCode.value + &&(item.m_assid?item.m_assid.value:'')==debit_assid&&item.m_creditamount.value==debitSelectedData[0].m_debitamount.value){ + currentData.push(item); + checkedArrayCredit.push((item.m_bSelected=='Y')?true:false); + } + }) + }else{ + currentData=resourceData_credit; + compareData_Credit=false; + resourceData_credit.map((item,index)=>{ + checkedArrayCredit.push((item.m_bSelected=='Y')?true:false); + }) + } + self.setState({ + creditDataArr:currentData, + checkedArrayCredit, + compareData_Credit + },()=>{ + verifyUnverifySum(self); + self.handleSumAmount('credit'); + // self.handleSumAmount('debit'); + }) + } +} + +/*/FbBslWIcRlAMbfFtq1R34NvHiKsoLN1Uu1kn18x7Dg=*/ \ No newline at end of file diff --git a/src/gl/verify/verify/vrify/events/handleAllChicked.js b/src/gl/verify/verify/vrify/events/handleAllChicked.js new file mode 100644 index 0000000..85f0da3 --- /dev/null +++ b/src/gl/verify/verify/vrify/events/handleAllChicked.js @@ -0,0 +1,94 @@ +/*n673UyeMEdR9CyUNMLQLkzpzS29Dwn2HxVRJm0lg8Y8=*/ +// 点击全选按钮 获取修改后的数据 +export default function handleAllChicked(self,type) { + let {debitDataArr,checkedArrayDebit,creditDataArr,checkedArrayCredit} = self.state; + let obj = {}; + let brr = []; + let count = 0; + if(type=='debit'){ + let len = checkedArrayDebit.length; + for(let i = 0; i < debitDataArr.length; i++) { + brr.push({ + m_dDebit_Money_Y: debitDataArr[i].m_Balancedebitamount.value, + m_Balancedebitamount: 0 + }) + } + + for( let i = 0; i < len; i++) { + if(checkedArrayDebit[i] == true) { + count++; + } + } + //m_dDebit_Money_Y 本次核销原币 m_dDebit_Money_B组织本币 未核销余额 原币m_Balancedebitamount 组织本币m_Balancelocaldebitamount + checkedArrayDebit.map((k, j) => { + if (k) { + debitDataArr[j].m_dDebit_Money_Y.display = brr[j].m_dDebit_Money_Y; + debitDataArr[j].m_dDebit_Money_B.display = debitDataArr[j].m_Balancelocaldebitamount.value; + debitDataArr[j].m_Balancedebitamount.display = brr[j].m_Balancedebitamount; + debitDataArr[j].m_Balancelocaldebitamount.display = 0; + debitDataArr[j].m_dDebit_Money_Y.value = brr[j].m_dDebit_Money_Y; + debitDataArr[j].m_dDebit_Money_B.value = debitDataArr[j].m_Balancelocaldebitamount.value; + debitDataArr[j].m_Balancedebitamount.value = brr[j].m_Balancedebitamount; + debitDataArr[j].m_Balancelocaldebitamount.value = 0; + debitDataArr[j].m_dDebit_Money_Y.prevValue = brr[j].m_dDebit_Money_Y; + debitDataArr[j].m_dDebit_Money_B.prevValue = debitDataArr[j].m_Balancelocaldebitamount.value; + } else { + debitDataArr[j].m_dDebit_Money_Y.display = 0// brr[j].m_dDebit_Money_Y; + debitDataArr[j].m_dDebit_Money_B.display = 0; + debitDataArr[j].m_Balancedebitamount.display = debitDataArr[j].empty_m_Balancedebitamount.value; + debitDataArr[j].m_Balancelocaldebitamount.display = debitDataArr[j].empty_m_Balancelocaldebitamount.value; + debitDataArr[j].m_dDebit_Money_Y.value = 0//brr[j].m_dDebit_Money_Y; + debitDataArr[j].m_dDebit_Money_B.value = 0; + debitDataArr[j].m_Balancedebitamount.value = debitDataArr[j].empty_m_Balancedebitamount.value; + debitDataArr[j].m_Balancelocaldebitamount.value = debitDataArr[j].empty_m_Balancelocaldebitamount.value; + debitDataArr[j].m_dDebit_Money_Y.prevValue = 0//brr[j].m_dDebit_Money_Y; + debitDataArr[j].m_dDebit_Money_B.prevValue = 0; + } + }) + return debitDataArr; + // } + }else if(type=='credit'){ + let len = checkedArrayCredit.length; + for(let i = 0; i < creditDataArr.length; i++) { + brr.push({ + m_dCredit_Money_Y: creditDataArr[i].m_Balancecreditamount.value, + m_Balancecreditamount: 0 + }) + } + + for( let i = 0; i < len; i++) { + if(checkedArrayCredit[i] == true) { + count++; + } + } + checkedArrayCredit.map((k, n) => { + if (k) { + creditDataArr[n].m_dCredit_Money_Y.display = brr[n].m_dCredit_Money_Y; + creditDataArr[n].m_dCredit_Money_B.display = creditDataArr[n].m_Balancelocalcreditamount.value; + creditDataArr[n].m_Balancecreditamount.display = brr[n].m_Balancecreditamount; + creditDataArr[n].m_Balancelocalcreditamount.display = 0; + creditDataArr[n].m_dCredit_Money_Y.value = brr[n].m_dCredit_Money_Y; + creditDataArr[n].m_dCredit_Money_B.value = creditDataArr[n].m_Balancelocalcreditamount.value; + creditDataArr[n].m_Balancecreditamount.value = brr[n].m_Balancecreditamount; + creditDataArr[n].m_Balancelocalcreditamount.value = 0; + creditDataArr[n].m_dCredit_Money_Y.prevValue = brr[n].m_dCredit_Money_Y; + creditDataArr[n].m_dCredit_Money_B.prevValue = creditDataArr[n].m_Balancelocalcreditamount.value; + } else { + creditDataArr[n].m_dCredit_Money_Y.display = 0;// brr[n].m_dCredit_Money_Y; + creditDataArr[n].m_dCredit_Money_B.display = 0; + creditDataArr[n].m_Balancecreditamount.display = creditDataArr[n].empty_m_Balancecreditamount.value; + creditDataArr[n].m_Balancelocalcreditamount.display = creditDataArr[n].empty_m_Balancelocalcreditamount.value; + creditDataArr[n].m_dCredit_Money_Y.value = 0;// brr[n].m_dCredit_Money_Y; + creditDataArr[n].m_dCredit_Money_B.value = 0; + creditDataArr[n].m_Balancecreditamount.value = creditDataArr[n].empty_m_Balancecreditamount.value; + creditDataArr[n].m_Balancelocalcreditamount.value = creditDataArr[n].empty_m_Balancelocalcreditamount.value; + creditDataArr[n].m_dCredit_Money_Y.prevValue = 0// brr[n].m_dCredit_Money_Y; + creditDataArr[n].m_dCredit_Money_B.prevValue = 0; + } + }) + return creditDataArr; + // } + } +} + +/*n673UyeMEdR9CyUNMLQLkzpzS29Dwn2HxVRJm0lg8Y8=*/ \ No newline at end of file diff --git a/src/gl/verify/verify/vrify/events/handleAutoHedging.js b/src/gl/verify/verify/vrify/events/handleAutoHedging.js new file mode 100644 index 0000000..ac6eb02 --- /dev/null +++ b/src/gl/verify/verify/vrify/events/handleAutoHedging.js @@ -0,0 +1,106 @@ +/*sMxgg6uGOILeuclY1ZJqtD4rttdkWOYoVTXXKKeuuNc=*/ +import {ajax,deepClone,toast} from 'nc-lightapp-front'; +import verifyUnverifySum from './verifyUnverifySum'; +export default function handleAutoHedging(state,data){ + let self=this; + let url= '/nccloud/gl/verify/onAutoRedBlue.do'; + let {creditDataArr,creditSelectedData,debitSelectedData,queryCondition, + checkedAllDebit,checkedAllCredit,checkedArrayCredit,checkedArrayDebit, + resourceData_credit,resourceData_debit,creditBoxClicked,debitBoxClicked,firstCheckedDatas}=state; + checkedAllDebit=false; + checkedAllCredit=false; + checkedArrayCredit=[]; + checkedArrayDebit=[]; + let standardData = deepClone(data); + for(let k in standardData){ + if(k=='ass'){ + + }else if(k=='pk_accasoa'||k=='pk_units'){ + childData[k].map((item,index)=>{ + childData[k][index]=item.value; + }) + }else{ + standardData[k]=standardData[k].value?standardData[k].value:''; + } + } + standardData.pk_accasoa=queryCondition.pk_accasoa; + standardData.pk_accountingbook=queryCondition.pk_accountingbook; + creditSelectedData=resourceData_credit; + debitSelectedData=resourceData_debit; + let autoVerifyData={ + "credit":creditSelectedData, + "debit":debitSelectedData, + "condition":queryCondition, + "standard":standardData + } + firstCheckedDatas.type='';//借方还是贷方 + firstCheckedDatas.assinfo={};//选中行的严格控制的辅助核算信息 + ajax({ + url:url, + data:autoVerifyData, + success: function(response){ + const { data, success } = response; + if(success){ + let creditData = data.credit; + let debitData = data.debit; + if(creditData){ + creditData.map((item,i)=>{ + item.key=i; + //定义两个临时变量存储未核销的原币和组织本币 + item.empty_m_Balancecreditamount={ + display:item.m_Balancecreditamount.value, + value:item.m_Balancecreditamount.value + } + item.empty_m_Balancelocalcreditamount={ + display:item.m_Balancelocalcreditamount.value, + value :item.m_Balancelocalcreditamount.value + } + checkedArrayCredit.push(false); + }) + }else{ + creditData=[]; + } + if(debitData){ + debitData.map((item,i)=>{ + item.key=i; + //定义两个临时变量存储未核销的原币和组织本币 + item.empty_m_Balancedebitamount={ + display:item.m_Balancedebitamount.value, + value:item.m_Balancedebitamount.value + } + item.empty_m_Balancelocaldebitamount={ + display:item.m_Balancelocaldebitamount.value, + value:item.m_Balancelocaldebitamount.value + } + checkedArrayDebit.push(false); + }) + }else{ + debitData=[] + } + resourceData_credit=deepClone(creditData); + resourceData_debit=deepClone(debitData); + self.setState({ + resourceData_credit,resourceData_debit, + hedgingStandardshowModal:!self.state.hedgingStandardshowModal, + creditDataArr: creditData, + debitDataArr: debitData, + creditBoxClicked:false,//贷方选中 + debitBoxClicked:false,//借方选中 + checkedArrayCredit,checkedArrayDebit,checkedAllDebit,checkedAllCredit, + firstCheckedDatas + },()=>{ + verifyUnverifySum(self); + }) + } else { + toast({ content: self.state.json['20020VRIFYPAGE-000006'], color: 'warning' });/* 国际化处理: 没有获取数据*/ + } + }, + error:function(){ + self.setState({ + hedgingStandardshowModal:!self.state.hedgingStandardshowModal,firstCheckedDatas + }) + } + }); +} + +/*sMxgg6uGOILeuclY1ZJqtD4rttdkWOYoVTXXKKeuuNc=*/ \ No newline at end of file diff --git a/src/gl/verify/verify/vrify/events/handleAutoVerify.js b/src/gl/verify/verify/vrify/events/handleAutoVerify.js new file mode 100644 index 0000000..0ee2c07 --- /dev/null +++ b/src/gl/verify/verify/vrify/events/handleAutoVerify.js @@ -0,0 +1,113 @@ +/*aqzQuPqBp1JC8jXm5ojnsEZuoNUpZimIG4g8izS5KXQ=*/ +import {ajax,deepClone,toast} from 'nc-lightapp-front'; +import verifyUnverifySum from './verifyUnverifySum'; +export default function handleAutoVerify(state,data){ + let self=this; + let url= '/nccloud/gl/verify/onAutoVerify.do'; + let {creditDataArr,creditSelectedData,debitSelectedData,queryCondition, + checkedAllDebit,checkedAllCredit,checkedArrayCredit,checkedArrayDebit, + resourceData_credit,resourceData_debit,creditBoxClicked,debitBoxClicked, + verifyStandardshowModal,firstCheckedDatas}=state; + checkedAllDebit=false; + checkedAllCredit=false; + checkedArrayCredit=[]; + checkedArrayDebit=[]; + let standardData = deepClone(data); + verifyStandardshowModal=false; + let autoVerifyData={} + for(let k in standardData){ + if(k=='ass'){ + }else if(k=='pk_accasoa'||k=='pk_units'){ + childData[k].map((item,index)=>{ + childData[k][index]=item.value; + }) + }else{ + standardData[k]=standardData[k].value?standardData[k].value:''; + } + } + standardData.pk_accasoa=queryCondition.pk_accasoa; + standardData.pk_accountingbook=queryCondition.pk_accountingbook; + autoVerifyData.standard=standardData; + autoVerifyData.condition=queryCondition; + if(standardData.sVerify=='Y'){ + creditSelectedData=self.filterSelectedData('credit');//获取借方选中的数据 + debitSelectedData=self.filterSelectedData('debit');//获取借方选中的数据 + }else{ + creditSelectedData=resourceData_credit; + debitSelectedData=resourceData_debit; + } + autoVerifyData.credit=creditSelectedData; + autoVerifyData.debit=debitSelectedData; + firstCheckedDatas.type='';//借方还是贷方 + firstCheckedDatas.assinfo={};//选中行的严格控制的辅助核算信息 + ajax({ + url:url, + data:autoVerifyData, + success: function(response){ + const { data, success } = response; + if(success){ + let creditData = data.credit; + let debitData = data.debit; + if(creditData){ + creditData.map((item,i)=>{ + item.key=i; + //定义两个临时变量存储未核销的原币和组织本币 + item.empty_m_Balancecreditamount={ + display:item.m_Balancecreditamount.value, + value:item.m_Balancecreditamount.value + } + item.empty_m_Balancelocalcreditamount={ + display:item.m_Balancelocalcreditamount.value, + value :item.m_Balancelocalcreditamount.value + } + checkedArrayCredit.push(false); + }) + }else{ + creditData=[]; + } + if(debitData){ + debitData.map((item,i)=>{ + item.key=i; + //定义两个临时变量存储未核销的原币和组织本币 + item.empty_m_Balancedebitamount={ + display:item.m_Balancedebitamount.value, + value:item.m_Balancedebitamount.value + } + item.empty_m_Balancelocaldebitamount={ + display:item.m_Balancelocaldebitamount.value, + value:item.m_Balancelocaldebitamount.value + } + checkedArrayDebit.push(false); + }) + }else{ + debitData=[] + } + resourceData_credit=deepClone(creditData); + resourceData_debit=deepClone(debitData); + self.setState({ + resourceData_credit,resourceData_debit, + verifyStandardshowModal:!self.state.verifyStandardshowModal, + creditDataArr: creditData, + debitDataArr: debitData, + creditBoxClicked:false,//贷方选中 + debitBoxClicked:false,//借方选中 + checkedArrayCredit,checkedArrayDebit,checkedAllDebit,checkedAllCredit, + verifyStandardshowModal,firstCheckedDatas + },()=>{ + verifyUnverifySum(self); + }) + } else { + toast({ content: self.state.json['20020VRIFYPAGE-000006'], color: 'warning' });/* 国际化处理: 没有获取数据*/ + } + }, + error:function(err){ + toast({content:err.message,color:'warning'}); + + self.setState({ + verifyStandardshowModal,firstCheckedDatas + }) + } + }); +} + +/*aqzQuPqBp1JC8jXm5ojnsEZuoNUpZimIG4g8izS5KXQ=*/ \ No newline at end of file diff --git a/src/gl/verify/verify/vrify/events/handleHedging.js b/src/gl/verify/verify/vrify/events/handleHedging.js new file mode 100644 index 0000000..1f320ad --- /dev/null +++ b/src/gl/verify/verify/vrify/events/handleHedging.js @@ -0,0 +1,178 @@ +/*KzH17M2TaVLtCiLTbm71TjZg6I1CLdObzlRkOjYPv5I=*/ +import {ajax,deepClone,promptBox,toast} from 'nc-lightapp-front'; +import verifyUnverifySum from './verifyUnverifySum'; +export default function handleHedging(self){ + let credit_sum=0,debit_sum=0; + let url= '/nccloud/gl/verify/onRedBlue.do'; + let {creditDataArr,creditSelectedData,debitSelectedData,queryCondition, + checkedAllDebit,checkedAllCredit,checkedArrayCredit,checkedArrayDebit, + creditBoxClicked,debitBoxClicked,resourceData_credit,resourceData_debit,}=self.state; + checkedAllDebit=false; + checkedAllCredit=false; + checkedArrayCredit=[]; + checkedArrayDebit=[]; + creditSelectedData=self.filterSelectedData('credit');//获取借方选中的数据 + debitSelectedData=self.filterSelectedData('debit');//获取借方选中的数据 + if(debitSelectedData.length<=0&&creditSelectedData.length<=0){ + toast({ content: self.state.json['20020VRIFYPAGE-000007'], color: 'warning' });/* 国际化处理: 至少选择借方或者贷方其中一方数据进行红蓝对冲*/ + return false; + } + if(debitSelectedData.length>0&&creditSelectedData.length>0){ + toast({ content: self.state.json['20020VRIFYPAGE-000008'], color: 'warning' });/* 国际化处理: 只能选择借方或者贷方其中一方数据进行红蓝对冲*/ + return false; + } + if(creditSelectedData.length>0){ + creditSelectedData.map((item,index)=>{ + credit_sum+=item.m_dCredit_Money_Y.value-0; + }) + } + if(debitSelectedData.length>0){ + debitSelectedData.map((item,index)=>{ + debit_sum+=item.m_dDebit_Money_Y.value-0; + }) + } + if((creditSelectedData.length>0&&credit_sum!=0)||(debitSelectedData.length>0&&debit_sum!=0)){ + promptBox({ + color:'info', + title:self.state.json['20020VRIFYPAGE-000009'],/* 国际化处理: 提示*/ + content:self.state.json['20020VRIFYPAGE-000010'],/* 国际化处理: 红蓝对冲金额不相等是否强制做红蓝对冲?*/ + noFooter: false, // 是否显示底部按钮(确定、取消),默认显示(false),非必输 + noCancelBtn: false, // 是否显示取消按钮,,默认显示(false),非必输 + beSureBtnName:self.state.json['20020VRIFYPAGE-000011'], // 确定按钮名称, 默认为"确定",非必输/* 国际化处理: 确定*/ + cancelBtnName:self.state.json['20020VRIFYPAGE-000012'], // 取消按钮名称, 默认为"取消",非必输/* 国际化处理: 取消*/ + beSureBtnClick: dealOperate.bind(self,url,creditSelectedData,debitSelectedData,queryCondition), // 确定按钮点击调用函数,非必输 + cancelBtnClick: cancelBtnClick.bind(self) // 取消按钮点击调用函数,非必输 + }) + }else{ + let queryData={ + "credit":creditSelectedData, + "debit":debitSelectedData, + "condition":queryCondition + } + ajax({ + url:url, + data:queryData, + success: function(response){ + const { data, success } = response; + if(success){ + let creditData = data.credit; + let debitData = data.debit; + if(creditData){ + creditData.map((item,i)=>{ + item.key=i; + //定义两个临时变量存储未核销的原币和组织本币 + item.empty_m_Balancecreditamount={ + display:item.m_Balancecreditamount.value, + value:item.m_Balancecreditamount.value + } + item.empty_m_Balancelocalcreditamount={ + display:item.m_Balancelocalcreditamount.value, + value :item.m_Balancelocalcreditamount.value + } + checkedArrayCredit.push(false); + }) + }else{ + creditData=[]; + } + if(debitData){ + debitData.map((item,i)=>{ + item.key=i; + //定义两个临时变量存储未核销的原币和组织本币 + item.empty_m_Balancedebitamount={ + display:item.m_Balancedebitamount.value, + value:item.m_Balancedebitamount.value + } + item.empty_m_Balancelocaldebitamount={ + display:item.m_Balancelocaldebitamount.value, + value:item.m_Balancelocaldebitamount.value + } + checkedArrayDebit.push(false); + }) + }else{ + debitData=[] + } + resourceData_credit=deepClone(creditData); + resourceData_debit=deepClone(debitData); + self.setState({ + resourceData_credit,resourceData_debit, + creditDataArr: creditData, + debitDataArr: debitData, + creditBoxClicked:false,//贷方选中 + debitBoxClicked:false,//借方选中 + checkedArrayCredit,checkedArrayDebit,checkedAllDebit,checkedAllCredit + },()=>{ + verifyUnverifySum(self); + }) + } else { + toast({ content: self.state.json['20020VRIFYPAGE-000006'], color: 'warning' });/* 国际化处理: 没有获取数据*/ + } + } + }); + } + +} +export function dealOperate(url,creditSelectedData,debitSelectedData,queryCondition){ + let self=this; + let {checkedAllDebit,checkedAllCredit,checkedArrayCredit,checkedArrayDebit,resourceData_credit,resourceData_debit,}=self.state; + checkedAllDebit=false; + checkedAllCredit=false; + checkedArrayCredit=[]; + checkedArrayDebit=[]; + let queryData={ + "credit":creditSelectedData, + "debit":debitSelectedData, + "condition":queryCondition + } + ajax({ + url:url, + data:queryData, + success: function(response){ + const { data, success } = response; + if(success){ + let creditData = data.credit; + let debitData = data.debit; + if(creditData){ + creditData.map((item,i)=>{ + item.key=i; + //定义两个临时变量存储未核销的原币和组织本币 + item.empty_m_Balancecreditamount=item.m_Balancecreditamount; + item.empty_m_Balancelocalcreditamount =item.m_Balancelocalcreditamount ; + checkedArrayCredit.push(false); + }) + }else{ + creditData=[]; + } + if(debitData){ + debitData.map((item,i)=>{ + item.key=i; + //定义两个临时变量存储未核销的原币和组织本币 + item.empty_m_Balancedebitamount=item.m_Balancedebitamount; + item.empty_m_Balancelocaldebitamount =item.m_Balancelocaldebitamount ; + checkedArrayDebit.push(false); + }) + }else{ + debitData=[] + } + resourceData_credit=deepClone(creditData); + resourceData_debit=deepClone(debitData); + self.setState({ + resourceData_credit,resourceData_debit, + creditDataArr: creditData, + debitDataArr: debitData, + creditBoxClicked:false,//贷方选中 + debitBoxClicked:false,//借方选中 + checkedArrayCredit,checkedArrayDebit,checkedAllDebit,checkedAllCredit + },()=>{ + verifyUnverifySum(self); + }) + } else { + toast({ content: self.state.json['20020VRIFYPAGE-000006'], color: 'warning' });/* 国际化处理: 没有获取数据*/ + } + } + }); +} +export function cancelBtnClick(){ + return false; +} + +/*KzH17M2TaVLtCiLTbm71TjZg6I1CLdObzlRkOjYPv5I=*/ \ No newline at end of file diff --git a/src/gl/verify/verify/vrify/events/handleQueryClick.js b/src/gl/verify/verify/vrify/events/handleQueryClick.js new file mode 100644 index 0000000..668e594 --- /dev/null +++ b/src/gl/verify/verify/vrify/events/handleQueryClick.js @@ -0,0 +1,242 @@ +/*u4fuI16HuMDfqDwHbJz/3UlZJIe0ygck8CqbI2WILwc=*/ +import {ajax,toast} from 'nc-lightapp-front'; +import verifyUnverifySum from './verifyUnverifySum'; + +export default function handleQueryClick(state,data,isrefreah){ + let self=this; + let {defaultStatu,mockData,creditDataArr,debitDataArr,checkedAllDebit,checkedAllCredit,checkedArrayCredit,checkedArrayDebit, + modalDefaultValue,isControl,queryCondition,pk_accasoa,pk_accountingbook,resourceData_credit,resourceData_debit,CompareStatus, + resourveQuery,creditOrDebitFlag,voucherVerifyflag,creditScale_Y,creditScale_B,debitScale_Y,debitScale_B, + creditBoxClicked,debitBoxClicked,firstCheckedDatas} = state; + resourveQuery=data; + let childData = JSON.parse(JSON.stringify(data));//deepClone(data); + if(voucherVerifyflag=='0'){//及时核销,不能把本方的选中状态去掉 + childData.isControl=queryCondition.isControl; + childData.isControlItems=queryCondition.isControlItems; + if(creditOrDebitFlag=='debit'){ + checkedAllCredit=false; + checkedArrayCredit=[]; + }else if(creditOrDebitFlag=='credit'){ + checkedAllDebit=false; + checkedArrayDebit=[]; + } + }else{ + checkedAllDebit=false; + checkedAllCredit=false; + checkedArrayCredit=[]; + checkedArrayDebit=[]; + } + resourceData_credit=[]; + resourceData_debit=[]; + creditDataArr=[]; + debitDataArr=[]; + defaultStatu=false; + let url = '/nccloud/gl/verify/query.do'; + pk_accasoa.display=childData.pk_accasoa.display; + pk_accountingbook.display=childData.pk_accountingbook.display; + for(let k in childData){ + if(k=='ass'||k=='resourceAss'||k=='account_currency'||k=='cashtype'||k=='pk_org'||k=='isShowUnit' + ||k=='isControl'||k=='endflag'||k=='isCrossAccountVerify'||k=='isControlItems'){ + }else if(k=='pk_units'){ + if(childData[k].length>0){ + if(childData[k][0].value==""){ + childData[k]=null; + }else{ + childData[k].map((item,index)=>{ + childData[k][index]=item.value; + }) + } + }else{ + childData[k]=null; + } + }else{ + childData[k]=childData[k].value?childData[k].value:null; + } + } + if(voucherVerifyflag=='0'){ + childData.type='0';//type=0是即时核销,type=1 是普通核销 + childData.pk_detail=queryCondition.pk_detail?queryCondition.pk_detail:null; + }else{ + childData.type='1';//type=0是即时核销,type=1 是普通核销 + } + isControl=childData.isControl; + if(childData.isShowUnit==undefined){ + childData.isShowUnit=modalDefaultValue.isShowUnit; + } + if(childData.isCrossAccountVerify==undefined){ + childData.isCrossAccountVerify=modalDefaultValue.isCrossAccountVerify; + } + firstCheckedDatas.type='';//借方还是贷方 + firstCheckedDatas.assinfo={};//选中行的严格控制的辅助核算信息 + let creditData=[],debitData=[]; + ajax({ + url:url, + data:childData, + success: function(response){ + let { data, success } = response; + if(success){ + creditDataArr = data.credit; + debitDataArr = data.debit; + + if((creditDataArr&&creditDataArr.length>0) || (debitDataArr&&debitDataArr.length>0)){ + if(isrefreah){ + toast({ title: self.state.json['20020VRIFYPAGE-000104'], color: "success" })/* 国际化处理: 刷新成功*/ + + }else{ + + let creditDataLen = creditDataArr&&creditDataArr.length ? creditDataArr.length: 0; + let debitDataLen = debitDataArr&&debitDataArr.length ? debitDataArr.length :0; + toast({ content: self.state.inlt && self.state.inlt.get('20020VRIFYPAGE-000101',{credit : creditDataLen , debit : debitDataLen}), color: "success" }) + } + }else{ + if(isrefreah){ + toast({ title: self.state.json['20020VRIFYPAGE-000104'], color: "success" }) + + }else{ + toast({ content: self.state.json['20020VRIFYPAGE-000100'], color: "warning" })/* 国际化处理: 未查询出符合条件的数据*/ + } + } + + if(creditDataArr&&creditDataArr.length>0){//贷方 + creditScale_Y=creditDataArr[0].m_creditamount.scale; + creditScale_B=creditDataArr[0].m_localcreditamount.scale; + creditDataArr.map((item,i)=>{ + item.key=i; + //定义两个临时变量存储未核销的原币和组织本币 + item.empty_m_Balancecreditamount={ + display:item.m_Balancecreditamount.display, + value:item.m_Balancecreditamount.value + } + item.empty_m_Balancelocalcreditamount={ + display:item.m_Balancelocalcreditamount.display, + value :item.m_Balancelocalcreditamount.value + } + if(voucherVerifyflag=='0'&&creditOrDebitFlag=='credit'){//及时核销,不能把本方的选中状态去掉 + item.m_dCredit_Money_Y=JSON.parse(JSON.stringify(item.m_Balancecreditamount)); + item.m_dCredit_Money_B=JSON.parse(JSON.stringify(item.m_Balancelocalcreditamount)); + item.m_Balancecreditamount.display=0; + item.m_Balancecreditamount.value=0; + item.m_Balancelocalcreditamount.display=0; + item.m_Balancelocalcreditamount.value=0; + creditBoxClicked=true; + if (!firstCheckedDatas.type&&creditDataArr[0].m_voAss) {//如果未选中一行数据,先选中第一行 + creditDataArr[0].m_voAss.map((item, index) => { + if (queryCondition.isControlItems.indexOf(item.m_pk_checktype) != -1) { + firstCheckedDatas.assinfo[item.m_pk_checktype] = item.m_pk_checkvalue; + } + }) + firstCheckedDatas.type = 'credit'; + } + }else{ + checkedArrayCredit.push(false); + } + + defaultStatu=true; + }) + + }else{ + creditDataArr=[]; + } + if(debitDataArr&&debitDataArr.length>0){//借方 + debitScale_Y=debitDataArr[0].m_debitamount.scale; + debitScale_B=debitDataArr[0].m_localdebitamount.scale; + debitDataArr.map((item,i)=>{ + item.key=i; + //定义两个临时变量存储未核销的原币和组织本币 + item.empty_m_Balancedebitamount={ + display:item.m_Balancedebitamount.display, + value:item.m_Balancedebitamount.value + } + item.empty_m_Balancelocaldebitamount={ + display:item.m_Balancelocaldebitamount.display, + value:item.m_Balancelocaldebitamount.value + } + if(voucherVerifyflag=='0'&&creditOrDebitFlag=='debit'){//及时核销,不能把本方的选中状态去掉 + item.m_dDebit_Money_Y=JSON.parse(JSON.stringify(item.m_Balancedebitamount)); + item.m_dDebit_Money_B=JSON.parse(JSON.stringify(item.m_Balancelocaldebitamount)); + item.m_Balancedebitamount.display=0; + item.m_Balancedebitamount.value=0; + item.m_Balancelocaldebitamount.display=0; + item.m_Balancelocaldebitamount.value=0; + debitBoxClicked=true; + if (!firstCheckedDatas.type&&debitDataArr[0].m_voAss) {//如果未选中一行数据,先选中第一行 + debitDataArr[0].m_voAss.map((item, index) => { + if (queryCondition.isControlItems.indexOf(item.m_pk_checktype) != -1) { + firstCheckedDatas.assinfo[item.m_pk_checktype] = item.m_pk_checkvalue; + } + }) + firstCheckedDatas.type = 'debit'; + } + }else{ + checkedArrayDebit.push(false); + } + defaultStatu=true; + }) + + }else{ + debitDataArr=[]; + } + resourceData_credit=JSON.parse(JSON.stringify(creditDataArr));//$$creditData; + resourceData_debit=JSON.parse(JSON.stringify(debitDataArr));//$$debitData; + self.setState({ + resourveQuery, + isControl, + defaultStatu, + CompareStatus:'compare', + allMatch: false, + isQueryShow: false, + resourceData_credit,resourceData_debit, + queryCondition:childData, + creditDataArr, + debitDataArr, + pk_accasoa,pk_accountingbook, + checkedArrayCredit,checkedArrayDebit,checkedAllDebit,checkedAllCredit, + creditScale_Y,creditScale_B,debitScale_Y,debitScale_B,creditBoxClicked,debitBoxClicked, + firstCheckedDatas + },()=>{ + verifyUnverifySum(self); + self.handleSumAmount('credit'); + self.handleSumAmount('debit'); + const disabledButtonsArr = [ + "verificationCancel", + "RB_hedging", + "auto_verificationCancel", + "auto_RB_hedging", + "full_match", + "cancel_match", + "contrast", + "cancel_contrast", + 'link_voucher', + 'history_operation' + ]; + self.props.button.setButtonDisabled(disabledButtonsArr, false); + }) + + } else { + toast({ content: self.state.json['20020VRIFYPAGE-000006'], color: 'warning' });/* 国际化处理: 没有获取数据*/ + } + }, + error:function(result){ + self.setState({ + resourveQuery, + isControl, + defaultStatu, + isQueryShow: false, + CompareStatus:'compare', + allMatch: false, //全匹配 true,取消匹配 false + resourceData_credit,resourceData_debit, + queryCondition:childData, + creditDataArr, + debitDataArr, + pk_accasoa,pk_accountingbook, + checkedArrayCredit,checkedArrayDebit,checkedAllDebit,checkedAllCredit, + firstCheckedDatas + },()=>{ + verifyUnverifySum(self); + }) + toast({ content: result.message?result.message:self.state.json['20020VRIFYPAGE-000006'], color: 'warning' });/* 国际化处理: 没有获取数据*/ + } + }); +} + +/*u4fuI16HuMDfqDwHbJz/3UlZJIe0ygck8CqbI2WILwc=*/ \ No newline at end of file diff --git a/src/gl/verify/verify/vrify/events/handleUnMatch.js b/src/gl/verify/verify/vrify/events/handleUnMatch.js new file mode 100644 index 0000000..609f663 --- /dev/null +++ b/src/gl/verify/verify/vrify/events/handleUnMatch.js @@ -0,0 +1,53 @@ +/*OLZlksuEoAGE4iiHN01SmEpBZRJ5sOnggMtTBxL+LM0=*/ +import {ajax,deepClone,toast} from 'nc-lightapp-front'; +import handleAllChicked from './handleAllChicked'; + +export default function handleUnMatch(self){ + let { checkedArrayDebit,checkedArrayCredit,firstCheckedDatas} = self.state; + for (let i = 0; i { + let buttonArr=['full_match','contrast','cancel_contrast']; + self.props.button.setButtonDisabled(buttonArr, false); + }); + handleAllChecked(self); +}; +// 借方全选 控制 debitBoxClicked状态 +function handleAllChecked(self) { + let { checkedArrayDebit,debitBoxClicked,checkedArrayCredit,creditBoxClicked } = self.state; + for(let i = 0; i < checkedArrayDebit.length; i++) { + if(checkedArrayDebit[i] == true) { + debitBoxClicked=true; + }else{ + debitBoxClicked=false; + } + } + for(let i = 0; i < checkedArrayCredit.length; i++) { + if(checkedArrayCredit[i] == true) { + creditBoxClicked=true; + }else{ + creditBoxClicked=false; + } + } + self.setState({ + debitBoxClicked,creditBoxClicked + }) +} + +/*OLZlksuEoAGE4iiHN01SmEpBZRJ5sOnggMtTBxL+LM0=*/ \ No newline at end of file diff --git a/src/gl/verify/verify/vrify/events/handleVerify.js b/src/gl/verify/verify/vrify/events/handleVerify.js new file mode 100644 index 0000000..31ecd5a --- /dev/null +++ b/src/gl/verify/verify/vrify/events/handleVerify.js @@ -0,0 +1,167 @@ +/*mjYQ3YU0f86RWZ9JI+KJHpmHaFiWPWGuKf7NDRh+ig8=*/ +import {ajax,deepClone,promptBox,toast} from 'nc-lightapp-front'; +import verifyUnverifySum from './verifyUnverifySum'; +export default function handleVerify(self){ + let url= '/nccloud/gl/verify/onverify.do'; + let {creditDataArr,creditSelectedData,debitSelectedData,queryCondition}=self.state; + creditSelectedData=self.filterSelectedData('credit');//获取借方选中的数据 + debitSelectedData=self.filterSelectedData('debit');//获取借方选中的数据 + if(debitSelectedData.length<=0||creditSelectedData.length<=0){ + toast({ content: self.state.json['20020VRIFYPAGE-000014'], color: 'warning' });/* 国际化处理: 请选择借贷两方数据进行核销*/ + return false; + } + if(self.handleSumCY('debit')!=self.handleSumCY('credit')){ + promptBox({ + color:'info', + title:self.state.json['20020VRIFYPAGE-000009'],/* 国际化处理: 提示*/ + content:self.state.json['20020VRIFYPAGE-000015'],/* 国际化处理: 参加核销的借贷方金额不相等,是否强制核销?*/ + noFooter: false, // 是否显示底部按钮(确定、取消),默认显示(false),非必输 + noCancelBtn: false, // 是否显示取消按钮,,默认显示(false),非必输 + beSureBtnName:self.state.json['20020VRIFYPAGE-000011'], // 确定按钮名称, 默认为"确定",非必输/* 国际化处理: 确定*/ + cancelBtnName:self.state.json['20020VRIFYPAGE-000012'], // 取消按钮名称, 默认为"取消",非必输/* 国际化处理: 取消*/ + beSureBtnClick: dealOperate.bind(self,url,creditSelectedData,debitSelectedData,queryCondition), // 确定按钮点击调用函数,非必输 + cancelBtnClick: cancelBtnClick.bind(self) // 取消按钮点击调用函数,非必输 + }) + }else{ + dealOperate.call(self,url,creditSelectedData,debitSelectedData,queryCondition); + } +} + export function dealOperate(url,creditSelectedData,debitSelectedData,queryCondition){ + let self=this; + let {creditDataArr,checkedAllDebit,checkedAllCredit,firstCheckedDatas,resourceData_credit,resourceData_debit, + checkedArrayCredit,checkedArrayDebit,creditBoxClicked,debitBoxClicked,creditOrDebitFlag,voucherVerifyflag}=self.state; + + if(voucherVerifyflag=='0'){//及时核销,不能把本方的选中状态去掉 + if(creditOrDebitFlag=='debit'){ + checkedAllCredit=false; + checkedArrayCredit=[]; + queryCondition.end_date=debitSelectedData[0].m_prepareddate.display; + }else if(creditOrDebitFlag=='credit'){ + checkedAllDebit=false; + checkedArrayDebit=[]; + queryCondition.end_date=creditSelectedData[0].m_prepareddate.display; + } + + }else{ + checkedAllDebit=false; + checkedAllCredit=false; + checkedArrayCredit=[]; + checkedArrayDebit=[]; + } + let queryData={ + "credit":creditSelectedData, + "debit":debitSelectedData, + "condition":queryCondition + } + firstCheckedDatas.type='';//借方还是贷方 + firstCheckedDatas.assinfo={};//选中行的严格控制的辅助核算信息 + ajax({ + url:url, + data:queryData, + success: function(response){ + const { data, success } = response; + if(success){ + let creditData = data.credit; + let debitData = data.debit; + creditBoxClicked=false; + debitBoxClicked=false; + if(creditData){ + creditData.map((item,i)=>{ + item.key=i; + //定义两个临时变量存储未核销的原币和组织本币 + item.empty_m_Balancecreditamount={ + display:item.m_Balancecreditamount.value, + value:item.m_Balancecreditamount.value + } + item.empty_m_Balancelocalcreditamount={ + display:item.m_Balancelocalcreditamount.value, + value :item.m_Balancelocalcreditamount.value + } + if(voucherVerifyflag=='0'&&creditOrDebitFlag=='credit'){//及时核销,不能把本方的选中状态去掉 + item.m_dCredit_Money_Y=deepClone(item.m_Balancecreditamount); + item.m_dCredit_Money_B=deepClone(item.m_Balancelocalcreditamount); + item.m_Balancecreditamount.display=0; + item.m_Balancecreditamount.value=0; + item.m_Balancelocalcreditamount.display=0; + item.m_Balancelocalcreditamount.value=0; + creditBoxClicked=true; + if (!firstCheckedDatas.type) {//如果未选中一行数据,先选中第一行 + creditData[0].m_voAss.map((item, index) => { + if (queryCondition.isControlItems.indexOf(item.m_pk_checktype) != -1) { + firstCheckedDatas.assinfo[item.m_pk_checktype] = item.m_pk_checkvalue; + } + }) + firstCheckedDatas.type = 'credit'; + } + }else{ + checkedArrayCredit.push(false); + } + }) + }else{ + creditData=[]; + checkedArrayCredit=[]; + } + if(debitData){ + debitData.map((item,i)=>{ + item.key=i; + //定义两个临时变量存储未核销的原币和组织本币 + //定义两个临时变量存储未核销的原币和组织本币 + item.empty_m_Balancedebitamount={ + display:item.m_Balancedebitamount.value, + value:item.m_Balancedebitamount.value + } + item.empty_m_Balancelocaldebitamount={ + display:item.m_Balancelocaldebitamount.value, + value:item.m_Balancelocaldebitamount.value + } + if(voucherVerifyflag=='0'&&creditOrDebitFlag=='debit'){//及时核销,不能把本方的选中状态去掉 + item.m_dDebit_Money_Y=deepClone(item.m_Balancedebitamount); + item.m_dDebit_Money_B=deepClone(item.m_Balancelocaldebitamount); + item.m_Balancedebitamount.display=0; + item.m_Balancedebitamount.value=0; + item.m_Balancelocaldebitamount.display=0; + item.m_Balancelocaldebitamount.value=0; + debitBoxClicked=true; + if (!firstCheckedDatas.type) {//如果未选中一行数据,先选中第一行 + debitData[0].m_voAss.map((item, index) => { + if (queryCondition.isControlItems.indexOf(item.m_pk_checktype) != -1) { + firstCheckedDatas.assinfo[item.m_pk_checktype] = item.m_pk_checkvalue; + } + }) + firstCheckedDatas.type = 'debit'; + } + }else{ + checkedArrayDebit.push(false); + } + }) + }else{ + debitData=[]; + checkedArrayDebit=[]; + } + resourceData_credit=JSON.parse(JSON.stringify(creditData)); + resourceData_debit=JSON.parse(JSON.stringify(debitData)); + self.setState({ + resourceData_credit,resourceData_debit, + creditDataArr: creditData, + debitDataArr: debitData, + creditBoxClicked,//贷方选中 + debitBoxClicked,//借方选中 + checkedArrayCredit,checkedArrayDebit,checkedAllDebit,checkedAllCredit, + firstCheckedDatas + },()=>{ + verifyUnverifySum(self); + if(voucherVerifyflag=='0'){ + self.props.refreshVoucherData();//及时核销成功刷新凭证卡片数据 + } + }) + } else { + toast({ content: self.state.json['20020VRIFYPAGE-000006'], color: 'warning' });/* 国际化处理: 没有获取数据*/ + } + } + }); +} +export function cancelBtnClick(){ + return false; +} + +/*mjYQ3YU0f86RWZ9JI+KJHpmHaFiWPWGuKf7NDRh+ig8=*/ \ No newline at end of file diff --git a/src/gl/verify/verify/vrify/events/index.js b/src/gl/verify/verify/vrify/events/index.js new file mode 100644 index 0000000..c60db2c --- /dev/null +++ b/src/gl/verify/verify/vrify/events/index.js @@ -0,0 +1,18 @@ +/*jdNRuZuduINgBy4HapEa4fqmBMzA+9W4I6NnfWBJr/o=*/ +import handleQueryClick from './handleQueryClick'; +import handleVerify from './handleVerify'; +import handleHedging from './handleHedging'; +import handleAutoVerify from './handleAutoVerify'; +import handleAutoHedging from './handleAutoHedging'; +import compareOtherData from './compareOtherData'; +import handleUnMatch from './handleUnMatch'; +import matchOtherData from './matchOtherData'; +import verifyUnverifySum from './verifyUnverifySum'; +import initTemplate from './initTemplate'; +import buttonClick from './buttonClick'; +import iseqAssinfo from './iseqAssinfo'; +export {initTemplate,buttonClick }; +export {handleQueryClick,handleVerify,handleHedging,handleAutoVerify,handleAutoHedging, + compareOtherData,handleUnMatch,matchOtherData,verifyUnverifySum,iseqAssinfo} + +/*jdNRuZuduINgBy4HapEa4fqmBMzA+9W4I6NnfWBJr/o=*/ \ No newline at end of file diff --git a/src/gl/verify/verify/vrify/events/initTemplate.js b/src/gl/verify/verify/vrify/events/initTemplate.js new file mode 100644 index 0000000..d54fc8a --- /dev/null +++ b/src/gl/verify/verify/vrify/events/initTemplate.js @@ -0,0 +1,37 @@ +/*pmFWCFu5nhKkBzYmrkBakUskA4/xbWYlI8OGOG8a3xA=*/ +import {ajax,base} from "nc-lightapp-front"; +const pageCode = "20020VRIFYPAGE"; +export default function(props) { + let appcode = props.getSearchParam("c"); + ajax({ + url: "/nccloud/platform/appregister/queryallbtns.do", + data: { + pagecode: pageCode, + appcode: appcode //小应用id + }, + async: false, + success: function(res) { + if (res.data) { + let button = res.data; + + props.button.setButtons(button, () => { + // 设置进入页面时的不可用按钮 + const disabledButtonsArr = [ + "verificationCancel", + "RB_hedging", + "auto_verificationCancel", + "auto_RB_hedging", + "full_match", + "cancel_match", + "contrast", + "cancel_contrast", + 'link_voucher' + ]; + props.button.setButtonDisabled(disabledButtonsArr, true); + }); + } + } + }); +} + +/*pmFWCFu5nhKkBzYmrkBakUskA4/xbWYlI8OGOG8a3xA=*/ \ No newline at end of file diff --git a/src/gl/verify/verify/vrify/events/iseqAssinfo.js b/src/gl/verify/verify/vrify/events/iseqAssinfo.js new file mode 100644 index 0000000..a6b6b81 --- /dev/null +++ b/src/gl/verify/verify/vrify/events/iseqAssinfo.js @@ -0,0 +1,27 @@ +/*pfvMK9MSm/pKb38+DZs9b7tSsl20pNxbRFoZURrS5Ys=*/ +import {ajax} from 'nc-lightapp-front'; + +export default function iseqAssinfo(self,currrentAssinfo,firstCheckedDatas){ + let controlAssinfoStr=''; + let currentAssinfoStr=''; + if(firstCheckedDatas.assinfo){ + for(let k in firstCheckedDatas.assinfo){ + controlAssinfoStr+=firstCheckedDatas.assinfo[k]; + } + } + if(currrentAssinfo){ + currrentAssinfo.map((item,index)=>{ + if(firstCheckedDatas.assinfo[item.m_pk_checktype]){ + currentAssinfoStr+=item.m_pk_checkvalue; + } + }) + } + if(currentAssinfoStr&&controlAssinfoStr&&(controlAssinfoStr==currentAssinfoStr)){ + return true; + }else{ + return false; + } + +} + +/*pfvMK9MSm/pKb38+DZs9b7tSsl20pNxbRFoZURrS5Ys=*/ \ No newline at end of file diff --git a/src/gl/verify/verify/vrify/events/matchOtherData.js b/src/gl/verify/verify/vrify/events/matchOtherData.js new file mode 100644 index 0000000..9c9afbf --- /dev/null +++ b/src/gl/verify/verify/vrify/events/matchOtherData.js @@ -0,0 +1,65 @@ +/*jzVcyjrsJ3b8ozEM9EFAQaMK05CFVuVoD35eu6gO+fw=*/ + +import verifyUnverifySum from "./verifyUnverifySum"; +import iseqAssinfo from "./iseqAssinfo"; +export default function matchOtherData(self, type) { + let { + CompareStatus, + creditSelectedData, + debitSelectedData, + resourceData_credit, + resourceData_debit, + checkedArrayDebit, + checkedArrayCredit, + debitDataArr,isControl, + creditDataArr,firstCheckedDatas + } = self.state; + let currentData = []; //获取对照出来的数据 + + if (type == "credit") { + creditSelectedData = self.filterSelectedData("credit"); //获取借方选中的数据 + debitDataArr.map((item, index) => { + // <- 添加了数组判定不为空 + if (creditSelectedData.length > 0) { + if(isControl){ + if(iseqAssinfo(self,item.m_voAss,firstCheckedDatas)){//判断辅助核算项是否跟严格控制的辅助核算项相等,相等就勾选上 + checkedArrayDebit[index] = true; + } + }else{ + checkedArrayDebit[index] = true; + } + } + }); + self.setState( + { + checkedArrayDebit + }, + () => { + verifyUnverifySum(self); + } + ); + } else if (type == "debit") { + debitSelectedData = self.filterSelectedData("debit"); //获取借方选中的数据 + resourceData_credit.map((item, index) => { + if(debitSelectedData.length>0){ + if (isControl){ + if (isControl&&iseqAssinfo(self,item.m_voAss,firstCheckedDatas)) { + checkedArrayCredit[index] = true; + } + }else{ + checkedArrayCredit[index] = true; + } + } + }); + self.setState( + { + checkedArrayCredit + }, + () => { + verifyUnverifySum(self); + } + ); + } +} + +/*jzVcyjrsJ3b8ozEM9EFAQaMK05CFVuVoD35eu6gO+fw=*/ \ No newline at end of file diff --git a/src/gl/verify/verify/vrify/events/verifyUnverifySum.js b/src/gl/verify/verify/vrify/events/verifyUnverifySum.js new file mode 100644 index 0000000..e925d65 --- /dev/null +++ b/src/gl/verify/verify/vrify/events/verifyUnverifySum.js @@ -0,0 +1,25 @@ +/*C//k8Gvo5zqErn9WwtanguOISWJIJIWp7FoRr1HGF4g=*/ + +import {accAdd,Subtr,accMul,accDiv} from '../../../../public/common/method.js' +export default function verifyUnverifySum(self){ + setTimeout(() => { + const {creditDataArr,debitDataArr,debitUY_num, debitUZ_num,creditUY_num, creditUZ_num } = self.state; + let debit_sumY = 0,debit_sumZ = 0,credit_sumY = 0,credit_sumZ = 0; + for(let i = 0; i < debitDataArr.length; i++) { + debit_sumY =accAdd(debit_sumY,debitDataArr[i].m_Balancedebitamount.value); + debit_sumZ = accAdd(debit_sumZ,debitDataArr[i].m_Balancelocaldebitamount.value); + } + for(let i = 0; i < creditDataArr.length; i++) { + credit_sumY = accAdd(credit_sumY,creditDataArr[i].m_Balancecreditamount.value); + credit_sumZ = accAdd(credit_sumZ,creditDataArr[i].m_Balancelocalcreditamount.value); + } + self.setState({ + debitUY_num: debit_sumY, + debitUZ_num: debit_sumZ, + creditUY_num:credit_sumY, + creditUZ_num:credit_sumZ + }) + },1000) +} + +/*C//k8Gvo5zqErn9WwtanguOISWJIJIWp7FoRr1HGF4g=*/ \ No newline at end of file diff --git a/src/gl/verify/verify/vrify/exportVrify.js b/src/gl/verify/verify/vrify/exportVrify.js new file mode 100644 index 0000000..48a72dc --- /dev/null +++ b/src/gl/verify/verify/vrify/exportVrify.js @@ -0,0 +1,3417 @@ +/*6/qQ0+hrESXLl3knz4rqBwsPkvQ7kJhaHJtTHUlF3V4=*/ +import React, { Component } from "react"; +import { toast, base, ajax, deepClone, createPage, getMultiLang,createPageIcon } from "nc-lightapp-front"; +const { + NCButtonGroup: ButtonGroup, + NCButton: Button, + NCRow: Row, + NCCol: Col, + NCTable: Table, + NCCheckbox: Checkbox, + NCNumber,NCAffix,NCDiv +} = base; +import QueryModal from "./queryModal/querymodal.js"; +import getDefaultAccountBook from '../../../public/components/getDefaultAccountBook.js'; +import VerifyStandardModal from "./verifyStandardModal/verifyStandardModal.js"; +import HeaderArea from '../../../public/components/HeaderArea'; +import { buttonClick, initTemplate, iseqAssinfo } from './events'; +import "./index.less"; +import "./search.less"; +import "./searchpublic.less"; +import { accAdd, Subtr, accMul, accDiv } from "../../../public/common/method.js"; +import { + handleQueryClick, + handleVerify, + handleAutoVerify, + handleAutoHedging, + compareOtherData, + matchOtherData, verifyUnverifySum +} from "./events/index.js"; +const defaultProps12 = { + prefixCls: "bee-table", + multiSelect: { + type: "checkbox", + param: "key" + } +}; +class ExportVrify extends Component { + constructor(props) { + super(props); + this.state = { + creditScale_Y:'2',//贷方本次核销金额原组的精度 + creditScale_B:'2',//贷方本次核销金额原组的精度 + debitScale_Y:'2',//借方本次核销金额原组的精度 + debitScale_B:'2',//借方本次核销金额原组的精度 + json: {}, + inlt:null, + paraInfo: '',//存储参照核销数据传过来的paraInfo + mockData: '', + verifyAllDatas: {},//及时核销传过来的数据 + creditOrDebitFlag: '00',//及时核销 选中数据是借方还是贷方 + voucherVerifyflag: '',//0及时核销,1参照核销 + layout: 12, + pk_currency_query: "", //查询条件所选币种 + isControl: false, //true为严格控制,false为非严格控制 + firstCheckedDatas: { + type: '',//借方还是贷方 + assinfo: {}//选中行的严格控制的辅助核算信息 + },//第一个勾选的数据 + CompareStatus: "compare", //compare对照状态,uncompare取消对照 + defaultStatu: false, //false代表页面没数据,true为有数据 + allMatch: false, //全匹配 true,取消匹配 false + isQueryShow: false, //查询对话框 + showModal: false, + verifyStandardshowModal: false, //自动核销核销标准对话框 + hedgingStandardshowModal: false, //自动红蓝对冲标准对话框 + queryStyle: false, + creditQueryStyle: true, + debitQueryStyle: false, + checkedAllDebit: false, //借方全选 + checkedAllCredit: false, //贷方全选 + checkedArrayCredit: [], //贷方 + checkedArrayDebit: [],//借方 + modalDefaultValue: { + NC001: false,//集团本币 false不显示 + NC002: false,//全局本币 + scale: '2',//原币精度 + orgscale: '2',//组织本币精度 + groupscale: '2',//集团本币币种精度 + globalscale: '2',//全局本币币种精度 + isCrossAccountVerify: false,//是否跨末级科目 + pk_org: '',//账簿对应的组织 + bizDate: '',//业务日期 + yearbegindate: '',//年初日期 + begindate: '', + enddate: '', + bizPeriod: '',//账簿对应的会计期间 + isShowUnit: false,//是否显示业务单元 + isOpenUpBusiUnit: '',// + pk_accperiodscheme: '',//会计期间方案 + pk_accountingbook: { display: '', value: '' }, + pk_currency: { display: '', value: '' },//币种 + appcode: this.props.getSearchParam("c"), + cmbDirect: '-1',//方向 默认双向 + ass: [],//辅助核算信息 + hasTally: false, + // cmbMnyType:this.state.json['20020VRIFYPAGE-000024']/* 国际化处理: 原币*/ + + },//模态框里默认数据 + pk_accountingbook: { display: "", value: "" }, //核算账簿 + pk_accasoa: { display: "", value: "" }, //科目 + creditDataArr: [], //贷方数据 + debitDataArr: [], //借方数据 + creditBoxClicked: false, //贷方选中 + debitBoxClicked: false, //借方选中 + cancellationY_num: "", + cancellationZ_num: "", + creditUY_num: "", //贷方的未核销余额(原) + creditUZ_num: "", //贷方的未核销余额(组) + debitUY_num: "", //借方的未核销余额(原) + debitUZ_num: "", //借方的未核销余额(组) + SumAmount:{ + creditY_num: "", //贷方的核销余额(原) + creditZ_num: "", //贷方的核销余额(组) + creditUY_num: "", //贷方的未核销余额(原) + creditUZ_num: "", //贷方的未核销余额(组) + debitY_num: "", //借方的核销余额(原) + debitZ_num: "", //借方的核销余额(组) + debitUY_num: "", //借方的未核销余额(原) + debitUZ_num: "", //借方的未核销余额(组) + }, + debitRate: "1", //汇率 + resourveQuery: {},//原始查询条件 + queryCondition: {}, + creditSelectedData: [], //贷方选中数据 + debitSelectedData: [], //借方选中数据 + compareData_Credit: false, //贷方数据是否对照出来的 + compareData_Debit: false, //借方数据是否为对照出来的 + resourceData_credit: [], //查询出来的历史数据贷方 + resourceData_debit: [], //查询出来的历史数据借方 + position: true// 是否是横铺布局 + + }; + } + componentWillMount() { + let callback = (json,status,inlt) => { + this.columns_credit=this.getCreditOrDebitCoumn('credit',json); + this.columns_debit=this.getCreditOrDebitCoumn('debit',json); + this.loadQuery = [ + { + itemName: json['20020VRIFYPAGE-000016'],/* 国际化处理: 核算账簿*/ + itemType: "refer", + itemKey: "pk_accountingbook", isMustItem: true, + config: { refCode: "uapbd/refer/org/AccountBookTreeRef" } + }, + { + itemName: json['20020VRIFYPAGE-000017'],/* 国际化处理: 业务单元*/ + itemType: "refer", + itemKey: "pk_units", isMustItem: false, + config: { refCode: "uapbd/refer/orgv/BusinessUnitVersionDefaultAllTreeRef" } + }, + { + itemName: json['20020VRIFYPAGE-000018'],/* 国际化处理: 核销科目*/ + itemType: "refer", + itemKey: "pk_accasoa", isMustItem: true, + config: { refCode: "uapbd/refer/fiacc/AccountDefaultGridTreeRef" } + }, + { + itemName: json['20020VRIFYPAGE-000019'],/* 国际化处理: 日期范围*/ + itemType: "Dbdate", + itemKey: ["begin_date", "end_date"] + }, //begin_date,end_date(必传) + { + itemName: json['20020VRIFYPAGE-000020'],/* 国际化处理: 分析日期*/ + itemType: "radio", + itemKey: "dateType", + itemChild: [ + { + label: json['20020VRIFYPAGE-000021'],/* 国际化处理: 凭证日期*/ + value: "prepareddate" + }, + { + label: json['20020VRIFYPAGE-000022'],/* 国际化处理: 业务日期*/ + value: "Businessdate" + } + ] + }, + { + itemName: json['20020VRIFYPAGE-000023'],/* 国际化处理: 未核销范围*/ + itemType: "Dbselect", + itemKey: 'cmbMnyType',//json['20020VRIFYPAGE-000024']/* 国际化处理: 原币*/, + itemChild: [ + { + label: json['20020VRIFYPAGE-000024'],/* 国际化处理: 原币*/ + value: "0" + }, + { + label: json['20020VRIFYPAGE-000025'],/* 国际化处理: 组织本币*/ + value: "1" + }, + { + label: json['20020VRIFYPAGE-000026'],/* 国际化处理: 集团本币*/ + value: "2" + }, + { + label: json['20020VRIFYPAGE-000027'],/* 国际化处理: 全局本币*/ + value: "3" + } + ] + }, + { + itemName: json['20020VRIFYPAGE-000028'],/* 国际化处理: 金额范围*/ + itemType: "DbtextInput", + itemKey: ["mny_begin", "mny_end"] + }, //mny_begin,mny_end + { itemName: json['20020VRIFYPAGE-000029'], itemType: "textInput", itemKey: "digest" },/* 国际化处理: 摘要*/ + { + itemName: json['20020VRIFYPAGE-000030'],/* 国际化处理: 方向*/ + itemType: "select", + itemKey: "cmbDirect", + itemChild: [ + { + label: json['20020VRIFYPAGE-000031'],/* 国际化处理: 双向*/ + value: "-1" + }, + { + label: json['20020VRIFYPAGE-000032'],/* 国际化处理: 借方*/ + value: "0" + }, + { + label: json['20020VRIFYPAGE-000033'],/* 国际化处理: 贷方*/ + value: "1" + } + ] + }, + { + itemName: json['20020VRIFYPAGE-000034'],/* 国际化处理: 币种*/ + itemType: "refer", + itemKey: "pk_currency", isMustItem: true, + config: { refCode: "uapbd/refer/pubinfo/CurrtypeGridRef" }, + queryGridUrl: "/nccloud/gl/voucher/ref.do", + refType: "grid" + }, + { itemName: json['20020VRIFYPAGE-000035'], itemType: "textInput", itemKey: "verifyno" },/* 国际化处理: 核销号*/ + + { + itemName: json['20020VRIFYPAGE-000036'],/* 国际化处理: 包含未记账凭证*/ + itemType: "checkbox", + itemKey: "hasTally", + itemChild: [ + { + label: json['20020VRIFYPAGE-000036'],/* 国际化处理: 包含未记账凭证*/ + checked: false + } + ] + } + ]; + this.hedgingCondition = [ + { + itemName: json['20020VRIFYPAGE-000041'],/* 国际化处理: 按日期范围*/ + itemType: "checkbox", + itemKey: "sDateRange", + itemChild: [ + { + label: json['20020VRIFYPAGE-000042'],/* 国际化处理: 按日期范围:*/ + checked: false + } + ] + }, + { itemName: json['20020VRIFYPAGE-000043'], itemType: "textInput", itemKey: "dateRange" },/* 国际化处理: 日期相差*/ + { + itemName: json['20020VRIFYPAGE-000045'],/* 国际化处理: 金额相等*/ + itemType: "checkbox", + itemKey: "sMny", + itemChild: [ + { + label: json['20020VRIFYPAGE-000045'],/* 国际化处理: 金额相等*/ + checked: false + } + ] + }, + { + itemName: json['20020VRIFYPAGE-000074'],/* 国际化处理: 按末级科目*/ + itemType: "checkbox", + itemKey: "sPk_accsubj", + itemChild: [ + { + label: json['20020VRIFYPAGE-000074'],/* 国际化处理: 按末级科目*/ + checked: true + } + ] + }, + { + itemName: json['20020VRIFYPAGE-000046'],/* 国际化处理: 按对账标识码*/ + itemType: "checkbox", + itemKey: "sNetbankflag", + itemChild: [ + { + label: json['20020VRIFYPAGE-000046'],/* 国际化处理: 按对账标识码*/ + checked: false + } + ] + }, + { + itemName: json['20020VRIFYPAGE-000049'],/* 国际化处理: 按辅助项*/ + itemType: "checkbox", + itemKey: "sAss", + itemChild: [ + { + label: json['20020VRIFYPAGE-000050'],/* 国际化处理: 按辅助项:*/ + checked: false + } + ] + } + ]; + this.verifyStandard = [ + { + itemName: json['20020VRIFYPAGE-000041'],/* 国际化处理: 按日期范围*/ + itemType: "checkbox", + itemKey: "sDateRange", + itemChild: [ + { + label: json['20020VRIFYPAGE-000042'],/* 国际化处理: 按日期范围:*/ + checked: false + } + ] + }, + { itemName: json['20020VRIFYPAGE-000043'], itemType: "textInput", itemKey: "dateRange" },/* 国际化处理: 日期相差*/ + { + itemName: json['20020VRIFYPAGE-000044'],/* 国际化处理: 按核销号*/ + itemType: "checkbox", + itemKey: "sVerifyNo", + itemChild: [ + { + label: json['20020VRIFYPAGE-000044'],/* 国际化处理: 按核销号*/ + checked: true + } + ] + }, + { + itemName: json['20020VRIFYPAGE-000045'],/* 国际化处理: 金额相等*/ + itemType: "checkbox", + itemKey: "sMny", + itemChild: [ + { + label: json['20020VRIFYPAGE-000045'],/* 国际化处理: 金额相等*/ + checked: false + } + ] + }, + { + itemName: json['20020VRIFYPAGE-000074'],/* 国际化处理: 按末级科目*/ + itemType: "checkbox", + itemKey: "sPk_accsubj", + itemChild: [ + { + label: json['20020VRIFYPAGE-000074'],/* 国际化处理: 按末级科目*/ + checked: true + } + ] + }, + { + itemName: json['20020VRIFYPAGE-000046'],/* 国际化处理: 按对账标识码*/ + itemType: "checkbox", + itemKey: "sNetbankflag", + itemChild: [ + { + label: json['20020VRIFYPAGE-000046'],/* 国际化处理: 按对账标识码*/ + checked: false + } + ] + }, + { + itemName: json['20020VRIFYPAGE-000047'],/* 国际化处理: 只核销已选记录*/ + itemType: "checkbox", + itemKey: "sVerify", + itemChild: [ + { + label: json['20020VRIFYPAGE-000047'],/* 国际化处理: 只核销已选记录*/ + checked: false + } + ] + }, + { + itemName: json['20020VRIFYPAGE-000048'],/* 国际化处理: 按业务单元*/ + itemType: "checkbox", + itemKey: "sPk_unit", + itemChild: [ + { + label: json['20020VRIFYPAGE-000048'],/* 国际化处理: 按业务单元*/ + checked: true + } + ] + }, + { + itemName: json['20020VRIFYPAGE-000049'],/* 国际化处理: 按辅助项*/ + itemType: "checkbox", + itemKey: "sAss", + itemChild: [ + { + label: json['20020VRIFYPAGE-000050'],/* 国际化处理: 按辅助项:*/ + checked: false + } + ] + } + ]; + this.setState({ json: json,inlt }, () => { + initTemplate.call(this, this.props); + }) + } + getMultiLang({ moduleId: ['20020VRIFYPAGE','publiccommon'], domainName: 'gl', currentLocale: 'simpchn', callback }); +   } + onInputChange = (index, key) => { + return value => { + const { debitDataArr } = this.state; + const dataSource = [...debitDataArr]; + dataSource[index][key] = value; + this.setState({ debitDataArr }); + }; + }; + + //贷方数据组装 + renderColumnsMultiSelect(columns) { + const { creditDataArr, checkedArrayCredit, creditQueryStyle } = this.state; + let select_column = {}; + let indeterminate_bool = false; + const { multiSelect } = this.props; + if (multiSelect && multiSelect.type === "checkbox") { + let i = checkedArrayCredit.length; + while (i--) { + if (checkedArrayCredit[i]) { + indeterminate_bool = true; + break; + } + } + let defaultColumns = [ + { + title: (
{ + + }
), + key: "checkbox", + dataIndex: "checkbox", + width: "50px", + fixed: "left", + render: (text, record, index) => { + return ( +
+ +
+ ); + } + } + ]; + columns = defaultColumns.concat(columns); + } + return columns; + } + //借方数据组装 + renderColumnsMultiSelectDebit(columns) { + const { debitDataArr, checkedArrayDebit } = this.state; + const { multiSelect } = this.props; + let select_column = {}; + let indeterminate_bool = false; + + if (multiSelect && multiSelect.type === "checkbox") { + let i = checkedArrayDebit.length; + while (i--) { + if (checkedArrayDebit[i]) { + indeterminate_bool = true; + break; + } + } + let defaultColumns = [ + { + title:
{( + + )}
, + key: "checkbox", + dataIndex: "checkbox", + width: 50, + fixed: "left", + render: (text, record, index) => { + return ( +
+ +
+ ); + } + } + ]; + columns = defaultColumns.concat(columns); + } + return columns; + } + //贷方、借方全选功能 + onAllCheckChangeDebit = (type, matchClicked) => { + let self = this; + let listData = self.state.debitDataArr.concat(); + let selIds = []; + let { + checkedArrayDebit, + checkedArrayCredit, + checkedAllDebit, + checkedAllCredit, + debitDataArr, + creditDataArr, allMatch,CompareStatus, + debitSelectedData, isControl, firstCheckedDatas, queryCondition, creditOrDebitFlag + } = this.state; + let allChickedData_debit = [], allChickedData_credit = []; + if(CompareStatus == "uncompare"){//对照状态下不让全选 + return false; + } + if (type == "debit") { + if (this.props.voucherVerifyflag == '0' && creditOrDebitFlag == 'debit') { + return false; + } + if (isControl &&debitDataArr[0]&& debitDataArr[0].m_voAss) {//如果是严格控制,且第一条数据有辅助核算 + if (!self.state.checkedAllDebit) { + if (!firstCheckedDatas.type) {//如果未选中一行数据,先选中第一行 + debitDataArr[0].m_voAss.map((item, index) => { + if (queryCondition.isControlItems.indexOf(item.m_pk_checktype) != -1) { + firstCheckedDatas.assinfo[item.m_pk_checktype] = item.m_pk_checkvalue; + } + }) + firstCheckedDatas.type = 'debit';//'credit'; + checkedArrayDebit[0] = !self.state.checkedArrayDebit[0]; + debitDataArr.map((item, index) => { + if (iseqAssinfo(self, item.m_voAss, firstCheckedDatas)) {//判断辅助核算项是否跟严格控制的辅助核算项相等,相等就勾选上 + checkedArrayDebit[index] = true; + } + }); + if (matchClicked) {//全匹配状态 + creditDataArr.map((item, index) => { + if (iseqAssinfo(self, item.m_voAss, firstCheckedDatas)) {//判断辅助核算项是否跟严格控制的辅助核算项相等,相等就勾选上 + checkedArrayCredit[index] = true; + } + }); + checkedAllCredit = true; + } + + } else {//如果已选中一行,其他行根据选中行去匹配 + debitDataArr.map((item, index) => { + if (iseqAssinfo(self, item.m_voAss, firstCheckedDatas)) {//判断辅助核算项是否跟严格控制的辅助核算项相等,相等就勾选上 + checkedArrayDebit[index] = true; + } + }); + if (matchClicked) {//全匹配状态 + creditDataArr.map((item, index) => { + if (iseqAssinfo(self, item.m_voAss, firstCheckedDatas)) {//判断辅助核算项是否跟严格控制的辅助核算项相等,相等就勾选上 + checkedArrayCredit[index] = true; + } + }); + checkedAllCredit = true; + } + } + } else {//checkedAllDebit为false,如果对方也没有选中的则清空firstCheckedDatas + checkedAllCredit = self.state.checkedAllCredit; + for (let i = 0; i < checkedArrayDebit.length; i++) { + checkedArrayDebit[i] = false; + } + if (checkedArrayCredit.join().indexOf('true') == -1) { + firstCheckedDatas.type = ''; + firstCheckedDatas.assinfo = {}; + } + } + } else {//非严格控制,就直接全选中 + for (let i = 0; i < checkedArrayDebit.length; i++) { + checkedArrayDebit[i] = !self.state.checkedAllDebit; + } + } + // let allChickedData = this.handleAllChicked("debit");// 点击全选按钮 获取修改后的数据 + self.setState({ + firstCheckedDatas, + checkedAllDebit: !self.state.checkedAllDebit, + checkedArrayCredit, + checkedArrayDebit, + checkedAllCredit + // debitDataArr: allChickedData + }, () => { + + if (!matchClicked) {//非全匹配状态 + this.handleAllChecked("debit");// 借贷方全选 控制 debitBoxClicked状态 + // this.handleAllChecked("credit");// 借贷方全选 控制 debitBoxClicked状态 + allChickedData_debit = this.handleAllChicked("debit");// 点击全选按钮 获取修改后的数据 + // let allChickedData_credit = this.handleAllChicked("credit");// 点击全选按钮 获取修改后的数据 + self.setState({ + debitDataArr: allChickedData_debit, + // creditDataArr: allChickedData_credit + },()=>{ + self.handleSumAmount("debit"); + }) + } else {//全匹配状态 + if(!isControl){ + this.handleAllChecked("debit");// 借贷方全选 控制 debitBoxClicked状态 + // this.handleAllChecked("credit");// 借贷方全选 控制 debitBoxClicked状态 + allChickedData_debit = this.handleAllChicked("debit");// 点击全选按钮 获取修改后的数据 + // allChickedData_credit = this.handleAllChicked("credit");// 点击全选按钮 获取修改后的数据 + self.setState({ + debitDataArr: allChickedData_debit, + // creditDataArr: allChickedData_credit + },()=>{ + self.handleSumAmount("debit"); + }) + }else{ + this.handleAllChecked("debit");// 借贷方全选 控制 debitBoxClicked状态 + this.handleAllChecked("credit");// 借贷方全选 控制 debitBoxClicked状态 + allChickedData_debit = this.handleAllChicked("debit");// 点击全选按钮 获取修改后的数据 + allChickedData_credit = this.handleAllChicked("credit");// 点击全选按钮 获取修改后的数据 + self.setState({ + debitDataArr: allChickedData_debit, + creditDataArr: allChickedData_credit + },()=>{ + self.handleSumAmount("credit"); + self.handleSumAmount("debit"); + }) + } + } + + }); + + } else if (type == "credit") { + if (this.props.voucherVerifyflag == '0' && creditOrDebitFlag == 'credit') { + return false; + } + if (isControl&& creditDataArr[0] && creditDataArr[0].m_voAss) {//如果是严格控制,且第一条数据有辅助核算 + if (!self.state.checkedAllCredit) {//checkedAllCredit为true + if (!firstCheckedDatas.type) {//如果未选中一行数据,先选中第一行 + creditDataArr[0].m_voAss.map((item, index) => { + if (queryCondition.isControlItems.indexOf(item.m_pk_checktype) != -1) { + firstCheckedDatas.assinfo[item.m_pk_checktype] = item.m_pk_checkvalue; + } + }) + firstCheckedDatas.type = 'credit'; + checkedArrayCredit[0] = !self.state.checkedArrayCredit[0]; + if (matchClicked) {//全匹配状态 + debitDataArr.map((item, index) => { + if (iseqAssinfo(self, item.m_voAss, firstCheckedDatas)) {//判断辅助核算项是否跟严格控制的辅助核算项相等,相等就勾选上 + checkedArrayDebit[index] = true; + } + }); + checkedAllDebit = true; + } + creditDataArr.map((item, index) => { + if (iseqAssinfo(self, item.m_voAss, firstCheckedDatas)) {//判断辅助核算项是否跟严格控制的辅助核算项相等,相等就勾选上 + checkedArrayCredit[index] = true; + } + }); + + } else {//如果已选中一行,其他行根据选中行去匹配 + if (matchClicked) {//全匹配状态 + debitDataArr.map((item, index) => { + if (iseqAssinfo(self, item.m_voAss, firstCheckedDatas)) {//判断辅助核算项是否跟严格控制的辅助核算项相等,相等就勾选上 + checkedArrayDebit[index] = true; + } + }); + checkedAllDebit = true; + } + creditDataArr.map((item, index) => { + if (iseqAssinfo(self, item.m_voAss, firstCheckedDatas)) {//判断辅助核算项是否跟严格控制的辅助核算项相等,相等就勾选上 + checkedArrayCredit[index] = true; + } + }); + } + } else {//checkedAllCredit 为false,判断对方是否有选中的,没有的话就清空firstCheckedDatas + checkedAllDebit = self.state.checkedAllDebit; + for (let i = 0; i < checkedArrayCredit.length; i++) { + checkedArrayCredit[i] = false; + } + if (checkedArrayDebit.join().indexOf('true') == -1) { + firstCheckedDatas.type = ''; + firstCheckedDatas.assinfo = {}; + } + } + } else {//非严格控制,就直接全选中 + for (let i = 0; i < checkedArrayCredit.length; i++) { + checkedArrayCredit[i] = !self.state.checkedAllCredit; + } + } + // let allChickedData = this.handleAllChicked("credit");// 点击全选按钮 获取修改后的数据 + self.setState({ + firstCheckedDatas, + checkedAllCredit: !self.state.checkedAllCredit, + checkedAllDebit, + checkedArrayCredit, + checkedArrayDebit + //creditDataArr: allChickedData + }, () => { + if (!matchClicked) {//非全匹配状态 + this.handleAllChecked("credit");// 借贷方全选 控制 debitBoxClicked状态 + // this.handleAllChecked("debit");// 借贷方全选 控制 debitBoxClicked状态 + allChickedData_credit = this.handleAllChicked("credit");// 点击全选按钮 获取修改后的数据 + // let allChickedData_debit = this.handleAllChicked("debit");// 点击全选按钮 获取修改后的数据 + self.setState({ + creditDataArr: allChickedData_credit, + // debitDataArr: allChickedData_debit + },()=>{ + self.handleSumAmount("credit"); + }) + } else {//全匹配状态 + if(!isControl){//非严格控制 + this.handleAllChecked("credit");// 借贷方全选 控制 debitBoxClicked状态 + allChickedData_credit = this.handleAllChicked("credit");// 点击全选按钮 获取修改后的数据 + self.setState({ + creditDataArr: allChickedData_credit + },()=>{ + self.handleSumAmount("credit"); + }) + }else{//严格控制 + this.handleAllChecked("credit");// 借贷方全选 控制 debitBoxClicked状态 + this.handleAllChecked("debit");// 借贷方全选 控制 debitBoxClicked状态 + allChickedData_credit = this.handleAllChicked("credit");// 点击全选按钮 获取修改后的数据 + allChickedData_debit = this.handleAllChicked("debit");// 点击全选按钮 获取修改后的数据 + self.setState({ + creditDataArr: allChickedData_credit, + debitDataArr: allChickedData_debit + },()=>{ + self.handleSumAmount("credit"); + self.handleSumAmount("debit"); + }) + } + } + + }); + + } + }; + + // 贷方、借方单选功能 + onCheckboxChangeDebit = (type, text, record, index) => { + let self = this; + let { creditDataArr, debitDataArr, CompareStatus, allMatch, compareData_Credit, compareData_Debit, isControl, + firstCheckedDatas, queryCondition, creditOrDebitFlag } = self.state; + let allFlag = false; + let checkedArrayDebit = self.state.checkedArrayDebit.concat(); + let checkedArrayCredit = self.state.checkedArrayCredit.concat(); + if (type == "debit") { + if (self.props.voucherVerifyflag == '0' && creditOrDebitFlag == 'debit') { + return false; + } + if (CompareStatus == "uncompare") { + checkedArrayDebit.map((k, v) => { + if (v == index) { + checkedArrayDebit[v] = !self.state.checkedArrayDebit[index]; + + } else { + if (checkedArrayDebit[v]) { + const o = self.handleCancel("debit", v, !checkedArrayDebit[v]); + self.setState( + { + debitDataArr: o, + checkedAllDebit: false, + checkedArrayDebit: checkedArrayDebit + }, + () => { + self.handleChecked("debit", v); + self.handleSumAmount("debit"); + // self.handleSumCY("debit"); + // self.handleSumCZ("debit"); + // self.handleSumCUY("debit"); + // self.handleSumCUZ("debit"); + }) + } + checkedArrayDebit[v] = false; + } + }); + } else { + if (isControl && debitDataArr[index].m_voAss) {//如果是严格控制,取到控制的辅助核算项得value值 + if (!firstCheckedDatas.type) { + debitDataArr[index].m_voAss.map((item, index) => { + if (queryCondition.isControlItems.indexOf(item.m_pk_checktype) != -1) { + firstCheckedDatas.assinfo[item.m_pk_checktype] = item.m_pk_checkvalue; + } + }) + firstCheckedDatas.type = 'credit'; + checkedArrayDebit[index] = !self.state.checkedArrayDebit[index]; + } else { + if (self.state.checkedArrayDebit[index]) { + checkedArrayDebit[index] = false; + if (checkedArrayDebit.join().indexOf('true') == -1 && checkedArrayCredit.join().indexOf('true') == -1) { + firstCheckedDatas.type = ''; + firstCheckedDatas.assinfo = {}; + } + } else { + if (!debitDataArr[index].m_voAss || iseqAssinfo(self, debitDataArr[index].m_voAss, firstCheckedDatas)) { + checkedArrayDebit[index] = !self.state.checkedArrayDebit[index]; + } else { + return false; + } + } + } + } else { + checkedArrayDebit[index] = !self.state.checkedArrayDebit[index]; + } + } + + for (let i = 0; i < self.state.checkedArrayDebit.length; i++) { + if (!checkedArrayDebit[i]) { + allFlag = false; + break; + } else { + allFlag = true; + } + } + + // 接收点击单选按钮传过来的数据,对debitDataArr进行修改 + const { creditDataArr } = self.state; + const o = self.handleCancel("debit", index, checkedArrayDebit[index]); + self.setState( + { + debitDataArr: o, firstCheckedDatas, + checkedAllDebit: allFlag, + checkedArrayDebit: checkedArrayDebit + }, + () => { + self.handleChecked("debit", index); + self.handleSumAmount("debit"); + // self.handleSumCY("debit"); + // self.handleSumCZ("debit"); + // self.handleSumCUY("debit"); + // self.handleSumCUZ("debit"); + if (CompareStatus == "uncompare") { + //对照出另一方的数据 + compareOtherData(self, "debit", self.state.compareData_Debit); + } + if (allMatch) { + //匹配出另一方的数据 + matchOtherData(self, "debit"); + } + } + ); + } else if (type == "credit") {//贷方 + if (self.props.voucherVerifyflag == '0' && creditOrDebitFlag == 'credit') { + return false; + } + if (CompareStatus == "uncompare") { + checkedArrayCredit.map((k, v) => { + if (v == index) { + checkedArrayCredit[v] = !self.state.checkedArrayCredit[index]; + + } else { + if (checkedArrayCredit[v]) { + const o = self.handleCancel("credit", v, !checkedArrayCredit[v]); + self.setState( + { + creditDataArr: o, + checkedAllCredit: false, + checkedArrayCredit: checkedArrayCredit + }, + () => { + self.handleChecked("credit", v); + self.handleSumAmount("credit"); + // self.handleSumCY("credit"); + // self.handleSumCZ("credit"); + // self.handleSumCUY("credit"); + // self.handleSumCUZ("credit"); + }) + } + checkedArrayCredit[v] = false; + } + }); + } else { + if (isControl && creditDataArr[index].m_voAss) {//如果是严格控制,取到控制的辅助核算项得value值 + if (!firstCheckedDatas.type) { + creditDataArr[index].m_voAss.map((item, index) => { + if (queryCondition.isControlItems.indexOf(item.m_pk_checktype) != -1) { + firstCheckedDatas.assinfo[item.m_pk_checktype] = item.m_pk_checkvalue; + } + }) + firstCheckedDatas.type = 'credit'; + checkedArrayCredit[index] = !self.state.checkedArrayCredit[index]; + } else { + if (self.state.checkedArrayCredit[index]) { + checkedArrayCredit[index] = false; + if (checkedArrayCredit.join().indexOf('true') == -1 && checkedArrayDebit.join().indexOf('true') == -1) { + firstCheckedDatas.type = ''; + firstCheckedDatas.assinfo = {}; + } + } else { + if (!creditDataArr[index].m_voAss || iseqAssinfo(self, creditDataArr[index].m_voAss, firstCheckedDatas)) { + checkedArrayCredit[index] = !self.state.checkedArrayCredit[index]; + } else { + return false; + } + } + } + } else { + checkedArrayCredit[index] = !self.state.checkedArrayCredit[index]; + } + } + for (let i = 0; i < self.state.checkedArrayCredit.length; i++) { + if (!checkedArrayCredit[i]) { + allFlag = false; + break; + } else { + allFlag = true; + } + } + // 接收点击单选按钮传过来的数据,对debitDataArr进行修改 + + const o = self.handleCancel("credit", index, checkedArrayCredit[index]); + self.setState( + { + creditDataArr: o, firstCheckedDatas, + checkedAllCredit: allFlag, + checkedArrayCredit: checkedArrayCredit + }, + () => { + self.handleChecked("credit", index); + self.handleSumAmount("credit"); + // self.handleSumCY("credit"); + // self.handleSumCZ("credit"); + // self.handleSumCUY("credit"); + // self.handleSumCUZ("credit"); + if (CompareStatus == "uncompare") {//对照状态 + //对照出另一方的数据 + compareOtherData(self, "credit", self.state.compareData_Credit); + } + // if (allMatch) {//匹配状态 + // //匹配出另一方的数据 + // matchOtherData(self, "credit"); + // } + } + ); + } + }; + + //过滤选中的数据 + filterSelectedData(type) { + let { + checkedArrayDebit, + debitSelectedData, + debitDataArr, + checkedArrayCredit, + creditSelectedData, + creditDataArr + } = this.state; + creditSelectedData = []; + debitSelectedData = []; + if (type == "debit") { + //借方 + for (let i = 0; i < checkedArrayDebit.length; i++) { + if (checkedArrayDebit[i] == true) { + debitSelectedData.push(debitDataArr[i]); + } + } + return debitSelectedData; + } else { + // + for (let i = 0; i < checkedArrayCredit.length; i++) { + if (checkedArrayCredit[i] == true) { + creditSelectedData.push(creditDataArr[i]); + } + } + return creditSelectedData; + } + } + handleRefresh = () => {//刷新按钮 + let { resourveQuery, isQueryShow } = this.state; + let isrefreah=true + if (resourveQuery.pk_accountingbook) { + this.setState({ + isQueryShow: false + }, () => { + handleQueryClick.call(this, this.state, resourveQuery,isrefreah); + }) + + } + + } + //查询按钮 + handleClick() { + let { layout } = this.state + this.setState({ + isQueryShow: !this.state.isQueryShow, + queryStyle: !this.state.queryStyle + }); + } + //自动核销按钮 + handleAutoVerifyClick = () => { + this.setState({ + verifyStandardshowModal: !this.state.verifyStandardshowModal + }); + }; + //自动红蓝对冲 + handleAutoHedgingClick = () => { + this.setState({ + hedgingStandardshowModal: !this.state.hedgingStandardshowModal + }); + }; + //查询历史 + handleQueryHistory = () => { + let self = this; + self.props.openTo( + "/gl/verify/historyquery/list/index.html", + { + // appcode: '20020VRIFY', + pagecode: '20020VRIFYHISTORY', + n:self.state.json['20020VRIFYPAGE-000106']//核销历史查询 + } + ); + }; + //全匹配 + handleAllMatch() { + let self = this; + let { creditDataArr, debitDataArr, allMatch, isControl, firstCheckedDatas } = self.state; + if (creditDataArr.length <= 0) { + toast({ content: this.state.json['20020VRIFYPAGE-000077'], color: "warning" });/* 国际化处理: 贷方没数据不能全匹配,功能不可用*/ + return false; + } + allMatch = true; + self.setState( + { + allMatch + }, + () => { + //触发全选操作 + if (!isControl) { + //非严格控制 界面数据全选全选 + self.onAllCheckChangeDebit("credit", true); + self.onAllCheckChangeDebit("debit", true); + } else { + // if(firstCheckedDatas.type){//严格控制 判断是否有勾选借方或贷方数据 + // matchOtherData(self, "credit"); + // matchOtherData(self, "debit"); + // }else{ + self.onAllCheckChangeDebit('credit', true); + // //严格控制 默认勾选贷方第一条数据 + // self.onCheckboxChangeDebit("credit", "", "", 0); + // matchOtherData(self, "credit"); + // } + + } + let buttonArr = ['full_match', 'contrast', 'cancel_contrast']; + self.props.button.setButtonDisabled(buttonArr, true); + } + ); + }; + //对照 + handleCompare = () => { + let self = this; + let { + CompareStatus, + creditSelectedData, + debitSelectedData, + resourceData_credit, + resourceData_debit, + checkedArrayDebit, + checkedArrayCredit + } = self.state; + CompareStatus = "uncompare"; + let currentData = []; //多虑对照对来的数据 + self.setState({ + CompareStatus + }, () => { + let buttonArr = ['RB_hedging', 'auto_verificationCancel', 'auto_RB_hedging', 'history_operation', 'full_match', 'cancel_match', + 'contrast', 'link_voucher']; + self.props.button.setButtonDisabled(buttonArr, true); + }); + }; + //取消对照 + handleUnCompare = () => { + let { CompareStatus, resourceData_credit, resourceData_debit, checkedArrayDebit, checkedArrayCredit, } = this.state; + for (let i = 0; i < checkedArrayDebit.length; i++) { + checkedArrayDebit[i] = false; + } + for (let i = 0; i < checkedArrayCredit.length; i++) { + checkedArrayCredit[i] = false; + } + CompareStatus = "compare"; + this.setState({ + checkedAllDebit: false, + checkedAllCredit: false, + CompareStatus, + creditDataArr: resourceData_credit, + debitDataArr: resourceData_debit + }, () => { + this.handleSumAmount('credit'); + this.handleSumAmount('debit'); + let buttonArr = ['RB_hedging', 'auto_verificationCancel', 'auto_RB_hedging', 'history_operation', 'full_match', 'cancel_match', + 'contrast', 'link_voucher']; + this.props.button.setButtonDisabled(buttonArr, false); + }); + }; + /** + * 切换借方和贷方表格的位置:左右 <- -> 上下 + */ + + //获取默认会计期间 会计期间方案 + getDefaultYearmouth = (pk_accountingbook, modalDefaultValue) => { + let self = this; + let url = '/nccloud/gl/voucher/queryBookCombineInfo.do'; + let pk_accpont = { "pk_accountingbook": pk_accountingbook } + ajax({ + url: url, + data: pk_accpont, + async: false, + success: function (response) { + const { success } = response; + //渲染已有账表数据遮罩 + if (success) { + if (response.data) { + modalDefaultValue.bizPeriod = response.data.bizPeriod; + modalDefaultValue.isShowUnit = response.data.isShowUnit; + modalDefaultValue.isOpenUpBusiUnit = 'Y'; + modalDefaultValue.pk_accperiodscheme = response.data.pk_accperiodscheme; + if(!modalDefaultValue.begindate){ + modalDefaultValue.begindate = response.data.begindate; + } + if(!modalDefaultValue.enddate){ + modalDefaultValue.enddate = response.data.enddate; + } + + modalDefaultValue.bizDate = response.data.bizDate; + modalDefaultValue.yearbegindate = response.data.yearbegindate; + if(!modalDefaultValue.pk_currency.value){ + modalDefaultValue.pk_currency.display = response.data.currinfo.display; + modalDefaultValue.pk_currency.value = response.data.currinfo.value; + } + + modalDefaultValue.pk_org = response.data.unit.value; + modalDefaultValue.account_currency = response.data.currinfo.value; + modalDefaultValue.isCrossAccountVerify = response.data.isCrossAccountVerify; + modalDefaultValue.NC001 = response.data.NC001; + modalDefaultValue.NC002 = response.data.NC002; + modalDefaultValue.scale = response.data.scale;//原币精度 + modalDefaultValue.orgscale = response.data.orgscale;//组织本币精度 + modalDefaultValue.groupscale = response.data.groupscale;//集团本币币种精度 + modalDefaultValue.globalscale = response.data.globalscale;//全局本币币种精度 + } + self.setState({ + modalDefaultValue + }) + } + } + }); + } + + handleChangeLayout() {//切换布局 + this.setState({ + layout: this.state.layout === 12 ? 6 : 12, + position: !this.state.position + }); + } + //及时核销请求数据 + queryData = (mockData,data) => { + let self = this; + let { checkedArrayCredit, checkedArrayDebit, checkedAllDebit, checkedAllCredit,defaultStatu, + creditOrDebitFlag,debitBoxClicked, creditBoxClicked, queryCondition, pk_accasoa, pk_accountingbook, modalDefaultValue, + creditScale_Y,creditScale_B,debitScale_Y,debitScale_B } = self.state; + checkedArrayCredit = []; + checkedArrayDebit = []; + + checkedAllDebit = false; + checkedAllCredit = false; + let url = '/nccloud/gl/verify/rtverify.do'; + ajax({ + url: url, + data: mockData, + success: function (response) { + let { data, success } = response; + if (success) { + self.updateVerifyData(mockData,data); + } else { + toast({ content: this.state.json['20020VRIFYPAGE-000078'], color: 'warning' });/* 国际化处理: 没有获取到及时核销数据*/ + } + }, + error: function (res) { + toast({ content: res.message, color: 'warning' }); + self.props.closeModal(false); + } + }); + } + //及时核销更新表体数据 + updateVerifyData=(mockData,data)=>{ + let self = this; + let { checkedArrayCredit, checkedArrayDebit, checkedAllDebit, checkedAllCredit,defaultStatu,firstCheckedDatas, + creditOrDebitFlag,debitBoxClicked, creditBoxClicked, queryCondition, pk_accasoa, pk_accountingbook, modalDefaultValue, + creditScale_Y,creditScale_B,debitScale_Y,debitScale_B } = self.state; + checkedArrayCredit = []; + checkedArrayDebit = []; + + checkedAllDebit = false; + checkedAllCredit = false; + let creditData = data.credit; + let debitData = data.debit; + queryCondition = data.conVO;//及时核销后台返回的查询条件 + queryCondition.account_currency=mockData.paraInfo.orgCurrinfo.value; + queryCondition.isControlItems = []; + pk_accountingbook.display = data.accountingBook.name; + pk_accountingbook.value = data.accountingBook.pk_accountingbook; + pk_accasoa.display = data.verifyObj.header.m_sAccSubjName; + pk_accasoa.value = data.verifyObj.header.m_Pk_accsubj; + modalDefaultValue.pk_accountingbook = pk_accountingbook; + modalDefaultValue.pk_accasoa = pk_accasoa; + modalDefaultValue.pk_currency.display = data.conVO.currName; + modalDefaultValue.pk_currency.value = data.conVO.pk_currency; + modalDefaultValue.cmbMnyType = data.conVO.cmbMnyType;//未核销范围 + modalDefaultValue.cmbDirect = data.conVO.cmbDirect;//方向 + modalDefaultValue.hasTally = data.conVO.hasTally//包含未记账 + modalDefaultValue.begindate = data.conVO.begindate?data.conVO.begindate:'';//开始日期 + modalDefaultValue.enddate = data.conVO.end_date?data.conVO.end_date:'';//截止日期 + data.conVO.ass.map((item,index)=>{ + item.classid=item.m_classid; + }) + modalDefaultValue.ass = data.conVO.ass; + self.getDefaultYearmouth(pk_accountingbook.value, modalDefaultValue); + if (creditData&&creditData.length>0) { + creditScale_Y=creditData[0].m_creditamount.scale; + creditScale_B=creditData[0].m_localcreditamount.scale; + creditData.map((item, i) => { + item.key = i; + //定义两个临时变量存储未核销的原币和组织本币 + item.empty_m_Balancecreditamount = { + display: item.m_Balancecreditamount.value, + value: item.m_Balancecreditamount.value + } + item.empty_m_Balancelocalcreditamount = { + display: item.m_Balancelocalcreditamount.value, + value: item.m_Balancelocalcreditamount.value + } + if (item.m_pk_detail&&item.m_pk_detail.value == mockData.pk_detail) { + creditOrDebitFlag = 'credit'; + checkedAllCredit = true; + checkedArrayCredit.push(true); + creditBoxClicked = true; + self.verifyIsControlFun(pk_accountingbook.value,pk_accasoa.value,queryCondition,creditData,'credit'); + //把未核销金额赋给核销 + item.m_dCredit_Money_Y = JSON.parse(JSON.stringify(item.m_Balancecreditamount)); + item.m_dCredit_Money_B = JSON.parse(JSON.stringify(item.m_Balancelocalcreditamount)); + item.m_Balancecreditamount.display = 0; + item.m_Balancecreditamount.value = 0; + item.m_Balancelocalcreditamount.display = 0; + item.m_Balancelocalcreditamount.value = 0; + } else { + checkedArrayCredit.push(false); + } + + defaultStatu = true; + }) + } else { + creditData = []; + } + if (debitData&&debitData.length>0) { + debitScale_Y=debitData[0].m_debitamount.scale; + debitScale_B=debitData[0].m_localdebitamount.scale; + debitData.map((item, i) => { + item.key = i; + //定义两个临时变量存储未核销的原币和组织本币 + item.empty_m_Balancedebitamount = { + display: item.m_Balancedebitamount.value, + value: item.m_Balancedebitamount.value + } + item.empty_m_Balancelocaldebitamount = { + display: item.m_Balancelocaldebitamount.value, + value: item.m_Balancelocaldebitamount.value + } + if (item.m_pk_detail&&item.m_pk_detail.value == mockData.pk_detail) { + checkedArrayDebit.push(true); + checkedAllDebit = true; + creditOrDebitFlag = 'debit'; + debitBoxClicked = true; + self.verifyIsControlFun(pk_accountingbook.value,pk_accasoa.value,queryCondition,debitData,'debit'); + //把未核销金额赋给核销 + item.m_dDebit_Money_Y = JSON.parse(JSON.stringify(item.m_Balancedebitamount)); + item.m_dDebit_Money_B = JSON.parse(JSON.stringify(item.m_Balancelocaldebitamount)); + item.m_Balancedebitamount.display = 0; + item.m_Balancedebitamount.value = 0; + item.m_Balancelocaldebitamount.display = 0; + item.m_Balancelocaldebitamount.value = 0; + } else { + checkedArrayDebit.push(false); + } + defaultStatu = true; + }) + } else { + debitData = []; + } + + self.setState({ + queryCondition, + creditDataArr: creditData, + debitDataArr: debitData, + debitBoxClicked, creditBoxClicked, + checkedArrayCredit, checkedArrayDebit, + creditOrDebitFlag, firstCheckedDatas, + pk_accasoa, pk_accountingbook, + checkedArrayCredit, checkedArrayDebit, checkedAllDebit, checkedAllCredit, + creditScale_Y,creditScale_B,debitScale_Y,debitScale_B, + mockData: mockData,defaultStatu + }, () => { + // self.verifyIsControlFun(pk_accountingbook.value,pk_accasoa.value); + verifyUnverifySum(self); + self.handleSumAmount('credit'); + self.handleSumAmount('debit'); + }) + } + //及时核销判断核销对象是否为严格控制 + verifyIsControlFun=(pk_accountingbook,pk_accasoa,queryCondition,debitCreditData,debitCreditType)=>{ + let self=this; + let {isControl,firstCheckedDatas}=self.state; + let url = '/nccloud/gl/verify/verifyobjinfo.do'; + let queryparam={ + 'pk_accountingbook':pk_accountingbook, + 'pk_accasoa':pk_accasoa + } + ajax({ + url:url, + data:queryparam, + success:function(response){ + const { success } = response; + if(success&&response.data){ + isControl=response.data.verifyobj.header.m_bcontrol;//是否严格控制 + // listItem.isControlItems=[]; + if(response.data.verifyobj.items){ + response.data.verifyobj.items.map((item,index)=>{ + queryCondition.isControlItems.push(item.m_pk_subjass);//哪个辅助核算项严格控制 + }) + } + if (!firstCheckedDatas.type) {//如果未选中一行数据,先选中第一行 + debitCreditData[0].m_voAss.map((item, index) => { + if (queryCondition.isControlItems.indexOf(item.m_pk_checktype) != -1) { + firstCheckedDatas.assinfo[item.m_pk_checktype] = item.m_pk_checkvalue; + } + }) + firstCheckedDatas.type = debitCreditType; + } + // listItem.isControl=isControl; + queryCondition.isControl=isControl; + // listItem.endflag=response.data.account.endflag; + + self.setState({ + isControl,queryCondition,firstCheckedDatas + }) + } + }, + error:function(error){ + } + }) + } + //全部 + handleQueryAll = () => { + let { mockData } = this.state; + this.queryData(mockData); + } + componentDidUpdate() { + let { layout } = this.state + + + } + componentDidMount() { + if (this.props.voucherVerifyflag && (this.props.voucherVerifyflag == '0' || this.props.voucherVerifyflag == '1')) {//0 表示及时核销 1表示参照核销 + this.props.onRef(this); + this.setState({ + voucherVerifyflag: this.props.voucherVerifyflag + }) + + if (this.props.voucherVerifyflag && this.props.voucherVerifyflag == '0') {//及时核销 + let { data,rtverifyData } = this.props; + // this.queryData(data); + if(rtverifyData&&rtverifyData.conVO){ + this.updateVerifyData(data,rtverifyData); + } + } + } else { + let { modalDefaultValue, voucherVerifyflag } = this.state; + let appcode = this.props.getSearchParam("c"); + getDefaultAccountBook(appcode).then((defaultAccouontBook) => { + if (defaultAccouontBook.value) { + modalDefaultValue.pk_accountingbook = defaultAccouontBook; + this.getDefaultYearmouth(defaultAccouontBook.value, modalDefaultValue); + } + }) + let upScroll = document.getElementsByClassName("u-table-body")[0]; + let downScroll = document.getElementsByClassName("u-table-body")[1]; + upScroll.addEventListener("scroll", function () { + downScroll.scrollLeft = upScroll.scrollLeft + }); + downScroll.addEventListener("scroll", function () { + upScroll.scrollLeft = downScroll.scrollLeft + }) + } + } + componentWillUpdate() { } + componentWillReceiveProps(nextProps) { + let self = this; + let { mockData, creditDataArr, debitDataArr, checkedAllDebit, checkedAllCredit, checkedArrayCredit, checkedArrayDebit, + queryCondition, pk_accasoa, pk_accountingbook, resourceData_credit, resourceData_debit, defaultStatu, + creditScale_Y,creditScale_B,debitScale_Y,debitScale_B } = self.state; + if (nextProps.data) { + if ((nextProps.data.credit || nextProps.data.debit) && ((nextProps.data.credit && nextProps.data.credit != self.state.creditDataArr) || (nextProps.data.debit && nextProps.data.debit != self.state.debitDataArr))) { + checkedAllDebit = false; + checkedAllCredit = false; + checkedArrayCredit = []; + checkedArrayDebit = []; + resourceData_credit = []; + resourceData_debit = []; + creditDataArr = []; + debitDataArr = []; + defaultStatu = false; + let paraInfo = nextProps.data.paraInfo; + queryCondition.account_currency=nextProps.data.paraInfo.orgCurrinfo.value;//组织本币取paraInfo里的 + let creditData = nextProps.data.credit; + let debitData = nextProps.data.debit; + pk_accasoa.display = nextProps.data.verifyObj.header.m_sAccSubjName; + pk_accountingbook.display = nextProps.data.accountingBook.name; + if (creditData&&creditData.length>0) { + creditScale_Y=creditData[0].m_creditamount.scale; + creditScale_B=creditData[0].m_localcreditamount.scale; + queryCondition.pk_currency=creditData[0].m_pk_currtype.value; + creditData.map((item, i) => { + item.key = i; + + //定义两个临时变量存储未核销的原币和组织本币 + item.empty_m_Balancecreditamount = { + display: item.m_Balancecreditamount.value, + value: item.m_Balancecreditamount.value + } + item.empty_m_Balancelocalcreditamount = { + display: item.m_Balancelocalcreditamount.value, + value: item.m_Balancelocalcreditamount.value + } + checkedArrayCredit.push(false); + defaultStatu = true; + }) + } else { + creditData = []; + } + if (debitData&&debitData.length>0) { + debitScale_Y=debitData[0].m_debitamount.scale; + debitScale_B=debitData[0].m_localdebitamount.scale; + if(!queryCondition.pk_currency){ + queryCondition.pk_currency=debitData[0].m_pk_currtype.value; + } + debitData.map((item, i) => { + item.key = i; + + //定义两个临时变量存储未核销的原币和组织本币 + item.empty_m_Balancedebitamount = { + display: item.m_Balancedebitamount.value, + value: item.m_Balancedebitamount.value + } + item.empty_m_Balancelocaldebitamount = { + display: item.m_Balancelocaldebitamount.value, + value: item.m_Balancelocaldebitamount.value + } + checkedArrayDebit.push(false); + defaultStatu = true; + }) + } else { + debitData = []; + } + let $$creditData=JSON.parse(JSON.stringify(creditData)); + let $$debitData=JSON.parse(JSON.stringify(debitData)); + resourceData_credit = $$creditData; + resourceData_debit = $$debitData; + self.setState({ + queryCondition, + paraInfo: paraInfo, + defaultStatu, + resourceData_credit, resourceData_debit, + creditDataArr: creditData, + creditDataArr: creditData, + debitDataArr: debitData, + pk_accasoa, pk_accountingbook, + checkedArrayCredit, checkedArrayDebit, checkedAllDebit, checkedAllCredit, + creditScale_Y,creditScale_B,debitScale_Y,debitScale_B + }, () => { + verifyUnverifySum(self); + self.handleSumAmount('credit'); + self.handleSumAmount('debit'); + }) + } + } + } + //全部按钮调用此方法 + verifyAllData = (verifyData) => { + let self = this; + let { mockData, creditDataArr, debitDataArr, checkedAllDebit, checkedAllCredit, checkedArrayCredit, checkedArrayDebit, + queryCondition, pk_accasoa, pk_accountingbook, resourceData_credit, resourceData_debit, defaultStatu } = self.state; + checkedAllDebit = false; + checkedAllCredit = false; + checkedArrayCredit = []; + checkedArrayDebit = []; + resourceData_credit = []; + resourceData_debit = []; + creditDataArr = []; + debitDataArr = []; + defaultStatu = false; + let creditData = verifyData.credit; + let debitData = verifyData.debit; + pk_accasoa.display = verifyData.verifyObj.header.m_sAccSubjName; + pk_accountingbook.display = verifyData.accountingBook.name; + if (creditData) { + creditData.map((item, i) => { + item.key = i; + //定义两个临时变量存储未核销的原币和组织本币 + item.empty_m_Balancecreditamount = { + display: item.m_Balancecreditamount.value, + value: item.m_Balancecreditamount.value + } + item.empty_m_Balancelocalcreditamount = { + display: item.m_Balancelocalcreditamount.value, + value: item.m_Balancelocalcreditamount.value + } + checkedArrayCredit.push(false); + defaultStatu = true; + //把未核销金额赋给核销 + // item.m_dCredit_Money_Y=item.m_Balancecreditamount; + // item.m_dCredit_Money_B=item.m_Balancelocalcreditamount; + // item.m_Balancecreditamount=0; + // item.m_Balancelocalcreditamount=0; + }) + } else { + creditData = []; + } + if (debitData) { + debitData.map((item, i) => { + item.key = i; + //定义两个临时变量存储未核销的原币和组织本币 + item.empty_m_Balancedebitamount = { + display: item.m_Balancedebitamount.value, + value: item.m_Balancedebitamount.value + } + item.empty_m_Balancelocaldebitamount = { + display: item.m_Balancelocaldebitamount.value, + value: item.m_Balancelocaldebitamount.value + } + checkedArrayDebit.push(false); + defaultStatu = true; + }) + } else { + debitData = []; + } + let $$creditData=JSON.parse(JSON.stringify(creditData)); + let $$debitData=JSON.parse(JSON.stringify(debitData)); + resourceData_credit = $$creditData; + resourceData_debit = $$debitData; + self.setState({ + defaultStatu, + resourceData_credit, resourceData_debit, + creditDataArr: creditData, + creditDataArr: creditData, + debitDataArr: debitData, + pk_accasoa, pk_accountingbook, + checkedArrayCredit, checkedArrayDebit, checkedAllDebit, checkedAllCredit + }, () => { + verifyUnverifySum(self); + }) + } + //获取选中行的原币金额和组织本币金额 返回给凭证 + getData_CDMoney = () => { + let CDMoney_YB = {} + CDMoney_YB.verifyFlag = true; + let creditSelectData = this.filterSelectedData('credit'); + let debitSelectData = this.filterSelectedData('debit'); + let verifyFlag_credit = false; + if (creditSelectData.length > 0 && debitSelectData.length > 0) { + toast({ content: this.state.json['20020VRIFYPAGE-000059'], color: 'warning' });/* 国际化处理: 只能选择一方的数据*/ + CDMoney_YB.verifyFlag = false; + return CDMoney_YB; + } + if (creditSelectData.length == 0 && debitSelectData.length == 0) { + toast({ content: this.state.json['20020VRIFYPAGE-000060'], color: 'warning' });/* 国际化处理: 请选择一方的数据*/ + CDMoney_YB.verifyFlag = false; + return CDMoney_YB; + } + if (creditSelectData.length > 0) {//判断核销号不同的分录应不能同时选择 + let creditfirstIndex = creditSelectData[0].m_VerifyNo?creditSelectData[0].m_VerifyNo.value:''; + + creditSelectData.map((item, index) => { + if (index > 0 && ((item.m_VerifyNo?item.m_VerifyNo.value:'') != creditfirstIndex)) { + verifyFlag_credit = true; + CDMoney_YB.verifyFlag = false; + } + }) + if (verifyFlag_credit) { + toast({ content: this.state.json['20020VRIFYPAGE-000080'], color: 'warning' });/* 国际化处理: 核销号不同的分录应不能同时选择*/ + CDMoney_YB.verifyFlag = false; + return CDMoney_YB; + } + } + if (debitSelectData.length > 0) {//判断核销号不同的分录应不能同时选择 + let debitfirstIndex = debitSelectData[0].m_VerifyNo?debitSelectData[0].m_VerifyNo.value:''; + // let verifyFlag_debit=false; + debitSelectData.map((item, index) => { + if (index > 0 && ((item.m_VerifyNo?item.m_VerifyNo.value:'') != debitfirstIndex)) { + verifyFlag_credit = true; + CDMoney_YB.verifyFlag = false; + } + }) + if (verifyFlag_credit) { + toast({ content: this.state.json['20020VRIFYPAGE-000080'], color: 'warning' });/* 国际化处理: 核销号不同的分录应不能同时选择*/ + CDMoney_YB.verifyFlag = false; + return CDMoney_YB; + } + } + if (creditSelectData.length > 0) { + CDMoney_YB.money_Y = this.handleSumCY('credit'); + CDMoney_YB.money_B = this.handleSumCZ('credit'); + CDMoney_YB.direct = 'credit'; + CDMoney_YB.m_voCreditDetails = creditSelectData; + } else if (debitSelectData.length > 0) { + CDMoney_YB.money_Y = this.handleSumCY('debit'); + CDMoney_YB.money_B = this.handleSumCZ('debit'); + CDMoney_YB.direct = 'debit'; + CDMoney_YB.m_voDebitDetails = debitSelectData; + } + + return CDMoney_YB; + } + //本次核销原币和 + handleSumCY(type) { + let cY_num = 0; + let { + checkedArrayDebit, + debitDataArr, + checkedArrayCredit, + creditDataArr, + cancellationY_num, + debitRate + } = this.state; + if (type == "debit") { + for (let i = 0; i < checkedArrayDebit.length; i++) { + if (checkedArrayDebit[i] == true) { + if (debitDataArr[i]&&debitDataArr[i].m_dDebit_Money_Y) { + cY_num = accAdd( + cY_num, + debitDataArr && debitDataArr[i].m_dDebit_Money_Y.value + ); + } else { + cY_num += 0; + } + } + } + } else if (type == "credit") { + for (let ii = 0; ii < checkedArrayCredit.length; ii++) { + if (checkedArrayCredit[ii] == true) { + if (creditDataArr[ii]&&creditDataArr[ii].m_dCredit_Money_Y) { + cY_num = accAdd( + cY_num, + creditDataArr && creditDataArr[ii].m_dCredit_Money_Y.value + ); + } else { + cY_num += 0; + } + } + } + } + return cY_num; + } + + //本次核销组织金币和 + handleSumCZ(type) { + let cZ_num = 0; + let { + checkedArrayDebit, + debitDataArr, + checkedArrayCredit, + creditDataArr, + cancellationY_num, + debitRate + } = this.state; + if (type == "debit") { + for (let i = 0; i < checkedArrayDebit.length; i++) { + if (checkedArrayDebit[i] == true) { + if (debitDataArr[i]&&debitDataArr[i].m_dDebit_Money_B) { + cZ_num = accAdd( + cZ_num, + debitDataArr && debitDataArr[i].m_dDebit_Money_B.value + ); + //cZ_num +=0; + } else { + //cZ_num += debitDataArr&&debitDataArr[i].m_dDebit_Money_B*1; + cZ_num += 0; + } + } + } + } else if (type == "credit") { + for (let ii = 0; ii < checkedArrayCredit.length; ii++) { + if (checkedArrayCredit[ii] == true) { + if (creditDataArr[ii]&&creditDataArr[ii].m_dCredit_Money_B) { + cZ_num = accAdd( + cZ_num, + creditDataArr && creditDataArr[ii].m_dCredit_Money_B.value + ); + //cZ_num +=0; + } else { + //cZ_num += debitDataArr&&debitDataArr[i].m_dDebit_Money_B*1; + cZ_num += 0; + } + } + } + } + + return cZ_num; + } + + //本次未核销原币和 + handleSumCUY(type) { + let cUY_num = 0; + const { + checkedArrayDebit, + debitDataArr, + checkedArrayCredit, + creditDataArr, + cancellationY_num, + debitRate + } = this.state; + if (type == "debit") { + for (let i = 0; i < checkedArrayDebit.length; i++) { + //if(checkedArrayDebit[i] == false){ + if (debitDataArr[i]&&debitDataArr[i].m_Balancedebitamount) { + cUY_num = accAdd( + cUY_num, + debitDataArr && debitDataArr[i].m_Balancedebitamount.value + ); + } else { + cUY_num = 0; + } + //} + } + } else if (type == "credit") { + for (let ii = 0; ii < checkedArrayCredit.length; ii++) { + //if(checkedArrayCredit[i] == false){ + if (creditDataArr[ii]&&creditDataArr[ii].m_Balancecreditamount) { + cUY_num = accAdd( + cUY_num, + creditDataArr && creditDataArr[ii].m_Balancecreditamount.value + ); + } else { + cUY_num = 0; + } + //} + } + } + return cUY_num; + } + //本次未核销组织金币和 + handleSumCUZ(type) { + let cUZ_num = 0; + const { + checkedArrayDebit, + debitDataArr, + checkedArrayCredit, + creditDataArr, + cancellationY_num, + debitRate + } = this.state; + if (type == "debit") { + for (let i = 0; i < checkedArrayDebit.length; i++) { + //if(checkedArrayDebit[i] == false){ + if (debitDataArr[i]&&debitDataArr[i].m_Balancelocaldebitamount) { + cUZ_num = accAdd( + cUZ_num, + debitDataArr && + debitDataArr[i].m_Balancelocaldebitamount.value + ); + } else { + cUZ_num = 0; + } + //} + } + } else if (type == "credit") { + for (let ii = 0; ii < checkedArrayCredit.length; ii++) { + //if(checkedArrayCredit[i] == false){ + if (creditDataArr[ii] &&creditDataArr[ii].m_Balancelocalcreditamount) { + cUZ_num = accAdd( + cUZ_num, + creditDataArr && + creditDataArr[ii].m_Balancelocalcreditamount.value + ); + } else { + cUZ_num = 0; + } + //} + } + } + return cUZ_num; + } + + // 单选 控制 debitBoxClicked状态 + handleChecked(type, index) { + const { + checkedArrayDebit, + checkedArrayCredit + } = this.state; + let count = 0; + + if (type == "debit") { + let len = checkedArrayDebit.length; + for (let i = 0; i < len; i++) { + if (checkedArrayDebit[i] != false) { + } else { + count++; + } + if (count == len) { + this.setState({ + debitBoxClicked: false + }); + } else { + this.setState({ + debitBoxClicked: true + }); + } + } + } else if (type == "credit") { + let len = checkedArrayCredit.length; + for (let ii = 0; ii < len; ii++) { + if (checkedArrayCredit[ii] != false) { + } else { + count++; + } + if (count == len) { + this.setState({ + creditBoxClicked: false + }); + } else { + this.setState({ + creditBoxClicked: true + }); + } + } + } + } + + // 借贷方全选 控制 debitBoxClicked状态 + handleAllChecked(type) { + const { + checkedArrayDebit, + checkedArrayCredit + } = this.state; + if (type == "debit") { + for (let i = 0; i < checkedArrayDebit.length; i++) { + if (checkedArrayDebit[i] == true) { + this.setState({ + debitBoxClicked: true + }); + } + } + } else if (type == "credit") { + for (let ii = 0; ii < checkedArrayCredit.length; ii++) { + if (checkedArrayCredit[ii] == true) { + this.setState({ + creditBoxClicked: true + }); + } + } + } + } + + // 原币 与组织本币之间的换算 + handleConversion(y) { + let z = 1; + const { debitRate } = this.state; + if (y == null) { + return null; + } else { + // z = y * debitRate; + z = y + return z; + } + } + + // 点击单个单选按钮 获取修改后的数据 + handleCancel(type, index, bool) { + const { debitDataArr, creditDataArr } = this.state; + let benY = 0, + benZ = 0, + weiY = 0, + weiZ = 0, + obj = {}; + if (type == "debit") { + obj = { + m_dDebit_Money_Y: debitDataArr[index].m_Balancedebitamount.value, + m_Balancedebitamount: 0 + }; + if (bool == true) { + //m_dDebit_Money_Y ,m_dDebit_Money_B,m_Balancedebitamount,m_Balancelocaldebitamount,m_Balancedebitamount + debitDataArr[index].m_bSelected = 'Y'; + debitDataArr[index].m_bSelected = 'Y'; + debitDataArr[index].m_dDebit_Money_Y.display = obj.m_dDebit_Money_Y; + debitDataArr[index].m_dDebit_Money_B.display = debitDataArr[index].m_Balancelocaldebitamount.display; + debitDataArr[index].m_Balancedebitamount.display = obj.m_Balancedebitamount; + debitDataArr[index].m_Balancelocaldebitamount.display = 0; + debitDataArr[index].m_dDebit_Money_Y.value = obj.m_dDebit_Money_Y; + debitDataArr[index].m_dDebit_Money_B.value = debitDataArr[index].m_Balancelocaldebitamount.value; + debitDataArr[index].m_Balancedebitamount.value = obj.m_Balancedebitamount; + debitDataArr[index].m_Balancelocaldebitamount.value = 0; + debitDataArr[index].m_dDebit_Money_Y.prevValue = obj.m_dDebit_Money_Y; + debitDataArr[index].m_dDebit_Money_B.prevValue = debitDataArr[index].m_Balancelocaldebitamount.value; + return debitDataArr; + } else { + debitDataArr[index].m_bSelected = 'N'; + debitDataArr[index].m_bSelected = 'N'; + debitDataArr[index].m_dDebit_Money_Y.display = 0; + debitDataArr[index].m_dDebit_Money_B.display = 0; + debitDataArr[index].m_Balancedebitamount.display = debitDataArr[index].empty_m_Balancedebitamount.display; + debitDataArr[index].m_Balancelocaldebitamount.display = debitDataArr[index].empty_m_Balancelocaldebitamount.display; + debitDataArr[index].m_dDebit_Money_Y.value = 0; + debitDataArr[index].m_dDebit_Money_B.value = 0; + debitDataArr[index].m_Balancedebitamount.value = debitDataArr[index].empty_m_Balancedebitamount.value; + debitDataArr[index].m_Balancelocaldebitamount.value = debitDataArr[index].empty_m_Balancelocaldebitamount.value; + return debitDataArr; + } + } else if (type == "credit") { + obj = { + m_dCredit_Money_Y: creditDataArr[index].m_Balancecreditamount.value, + m_Balancecreditamount: 0 + }; + if (bool == true) { + //m_dDebit_Money_Y ,m_dDebit_Money_B,m_Balancedebitamount,m_Balancelocaldebitamount,m_Balancedebitamount + creditDataArr[index].m_bSelected = 'Y'; + creditDataArr[index].m_bSelected = 'Y'; + creditDataArr[index].m_dCredit_Money_Y.display = obj.m_dCredit_Money_Y; + creditDataArr[index].m_dCredit_Money_B.display = creditDataArr[index].m_Balancelocalcreditamount.display; + creditDataArr[index].m_Balancecreditamount.display = obj.m_Balancecreditamount; + creditDataArr[index].m_Balancelocalcreditamount.display = 0; + creditDataArr[index].m_dCredit_Money_Y.value = obj.m_dCredit_Money_Y; + creditDataArr[index].m_dCredit_Money_B.value = creditDataArr[index].m_Balancelocalcreditamount.value; + creditDataArr[index].m_Balancecreditamount.value = obj.m_Balancecreditamount; + creditDataArr[index].m_Balancelocalcreditamount.value = 0; + creditDataArr[index].m_dCredit_Money_Y.prevValue = obj.m_dCredit_Money_Y; + creditDataArr[index].m_dCredit_Money_B.prevValue = creditDataArr[index].m_Balancelocalcreditamount.value; + return creditDataArr; + } else { + creditDataArr[index].m_bSelected = 'N'; + creditDataArr[index].m_bSelected = 'N'; + creditDataArr[index].m_dCredit_Money_Y.display = 0; + creditDataArr[index].m_dCredit_Money_B.display = 0; + creditDataArr[index].m_Balancecreditamount.display = creditDataArr[index].empty_m_Balancecreditamount.display; + creditDataArr[index].m_Balancelocalcreditamount.display = creditDataArr[index].empty_m_Balancelocalcreditamount.display; + creditDataArr[index].m_dCredit_Money_Y.value = 0; + creditDataArr[index].m_dCredit_Money_B.value = 0; + creditDataArr[index].m_Balancecreditamount.value = creditDataArr[index].empty_m_Balancecreditamount.value; + creditDataArr[index].m_Balancelocalcreditamount.value = creditDataArr[index].empty_m_Balancelocalcreditamount.value; + return creditDataArr; + } + } + } + + // 点击全选按钮 获取修改后的数据 + handleAllChicked(type) { + let { + debitDataArr, + checkedArrayDebit, + creditDataArr, + checkedArrayCredit + } = this.state; + let obj = {}; + let brr = []; + let count = 0; + if (type == "debit") { + let len = checkedArrayDebit.length; + for (let i = 0; i < debitDataArr.length; i++) { + brr.push({ + m_dDebit_Money_Y: debitDataArr[i].m_dDebit_Money_Y.value?accAdd(debitDataArr[i].m_dDebit_Money_Y.value,debitDataArr[i].m_Balancedebitamount.value):debitDataArr[i].m_Balancedebitamount.value, + m_Balancedebitamount: 0 + }); + } + + for (let ii = 0; ii < len; ii++) { + if (checkedArrayDebit[ii] == true) { + count++; + } + } + + // if (len == count) { + //m_dDebit_Money_Y 原币 ,m_dDebit_Money_B 组织本币,m_Balancedebitamount 未核销原币,m_Balancelocaldebitamount 未核销组织本币 + // for (let j = 0; j < debitDataArr.length; j++) { + checkedArrayDebit.map((k, j) => { + if (k) { + debitDataArr[j].m_dDebit_Money_Y.display = brr[j].m_dDebit_Money_Y; + debitDataArr[j].m_dDebit_Money_B.display = debitDataArr[j].m_dDebit_Money_B.display?accAdd(debitDataArr[j].m_dDebit_Money_B.display,debitDataArr[j].m_Balancelocaldebitamount.value):debitDataArr[j].m_Balancelocaldebitamount.value; + debitDataArr[j].m_dDebit_Money_Y.value = brr[j].m_dDebit_Money_Y; + debitDataArr[j].m_dDebit_Money_B.value = debitDataArr[j].m_dDebit_Money_B.value?accAdd(debitDataArr[j].m_dDebit_Money_B.value,debitDataArr[j].m_Balancelocaldebitamount.value):debitDataArr[j].m_Balancelocaldebitamount.value; + + debitDataArr[j].m_Balancedebitamount.display = brr[j].m_Balancedebitamount;//debitDataArr[j].m_dDebit_Money_Y.value&&debitDataArr[j].m_dDebit_Money_Y.prevValue?debitDataArr[j].m_Balancedebitamount.display:brr[j].m_Balancedebitamount; + debitDataArr[j].m_Balancelocaldebitamount.display =0;//debitDataArr[j].m_dDebit_Money_B.value&&debitDataArr[j].m_dDebit_Money_Y.prevValue?debitDataArr[j].m_Balancelocaldebitamount.display: 0; + + debitDataArr[j].m_Balancedebitamount.value = brr[j].m_Balancedebitamount;//debitDataArr[j].m_dDebit_Money_Y.value&&debitDataArr[j].m_dDebit_Money_Y.prevValue?debitDataArr[j].m_Balancedebitamount.value:brr[j].m_Balancedebitamount; + debitDataArr[j].m_Balancelocaldebitamount.value =0;// debitDataArr[j].m_dDebit_Money_B.value&&debitDataArr[j].m_dDebit_Money_Y.prevValue?debitDataArr[j].m_Balancelocaldebitamount.value:0; + debitDataArr[j].m_dDebit_Money_Y.prevValue = brr[j].m_dDebit_Money_Y; + debitDataArr[j].m_dDebit_Money_B.prevValue = debitDataArr[j].m_Balancelocaldebitamount.value; + } else { + debitDataArr[j].m_dDebit_Money_Y.display = 0// brr[j].m_dDebit_Money_Y; + debitDataArr[j].m_dDebit_Money_B.display = 0; + debitDataArr[j].m_dDebit_Money_Y.value = 0//brr[j].m_dDebit_Money_Y; + debitDataArr[j].m_dDebit_Money_B.value = 0; + debitDataArr[j].m_Balancedebitamount.display = debitDataArr[j].empty_m_Balancedebitamount.value; + debitDataArr[j].m_Balancelocaldebitamount.display = debitDataArr[j].empty_m_Balancelocaldebitamount.value; + + debitDataArr[j].m_Balancedebitamount.value = debitDataArr[j].empty_m_Balancedebitamount.value; + debitDataArr[j].m_Balancelocaldebitamount.value = debitDataArr[j].empty_m_Balancelocaldebitamount.value; + debitDataArr[j].m_dDebit_Money_Y.prevValue = 0//brr[j].m_dDebit_Money_Y; + debitDataArr[j].m_dDebit_Money_B.prevValue = 0; + } + }) + // } + return debitDataArr; + } else if (type == "credit") { + let len = checkedArrayCredit.length; + for (let m = 0; m < creditDataArr.length; m++) { + brr.push({ + m_dCredit_Money_Y: creditDataArr[m].m_dCredit_Money_Y.value?accAdd(creditDataArr[m].m_dCredit_Money_Y.value,creditDataArr[m].m_Balancecreditamount.value):creditDataArr[m].m_Balancecreditamount.value, + m_Balancecreditamount: 0 + }); + } + + for (let mm = 0; mm < len; mm++) { + if (checkedArrayCredit[mm] == true) { + count++; + } + } + + // if (len == count) { + //m_dDebit_Money_Y 原币,m_dDebit_Money_B 组织本币,m_Balancedebitamount 未核销原币,m_Balancelocaldebitamount 未核销组织本币 + // for (let n = 0; n < creditDataArr.length; n++) { + checkedArrayCredit.map((k, n) => { + if (k) { + creditDataArr[n].m_dCredit_Money_Y.display = brr[n].m_dCredit_Money_Y; + creditDataArr[n].m_dCredit_Money_B.display = creditDataArr[n].m_dCredit_Money_B.display?accAdd(creditDataArr[n].m_dCredit_Money_B.display,creditDataArr[n].m_Balancelocalcreditamount.value):creditDataArr[n].m_Balancelocalcreditamount.value; + creditDataArr[n].m_dCredit_Money_Y.value = brr[n].m_dCredit_Money_Y; + creditDataArr[n].m_dCredit_Money_B.value = creditDataArr[n].m_dCredit_Money_B.value?accAdd(creditDataArr[n].m_dCredit_Money_B.value,creditDataArr[n].m_Balancelocalcreditamount.value):creditDataArr[n].m_Balancelocalcreditamount.value; + + creditDataArr[n].m_Balancecreditamount.display =brr[n].m_Balancecreditamount;// creditDataArr[n].m_dCredit_Money_Y.value&&creditDataArr[n].m_dCredit_Money_Y.prevValue?creditDataArr[n].m_Balancecreditamount.display:brr[n].m_Balancecreditamount; + creditDataArr[n].m_Balancelocalcreditamount.display =0;// creditDataArr[n].m_dCredit_Money_B.value&&creditDataArr[n].m_dCredit_Money_Y.prevValue?creditDataArr[n].m_Balancelocalcreditamount.display:0; + + creditDataArr[n].m_Balancecreditamount.value =brr[n].m_Balancecreditamount;// creditDataArr[n].m_dCredit_Money_Y.value&&creditDataArr[n].m_dCredit_Money_Y.prevValue?creditDataArr[n].m_Balancecreditamount.value:brr[n].m_Balancecreditamount; + creditDataArr[n].m_Balancelocalcreditamount.value =0;// creditDataArr[n].m_dCredit_Money_B.value&&creditDataArr[n].m_dCredit_Money_Y.prevValue?creditDataArr[n].m_Balancelocalcreditamount.value:0; + creditDataArr[n].m_dCredit_Money_Y.prevValue = brr[n].m_dCredit_Money_Y; + creditDataArr[n].m_dCredit_Money_B.prevValue = creditDataArr[n].m_Balancelocalcreditamount.value; + } else { + creditDataArr[n].m_dCredit_Money_Y.display = 0;// brr[n].m_dCredit_Money_Y; + creditDataArr[n].m_dCredit_Money_B.display = 0; + creditDataArr[n].m_dCredit_Money_Y.value = 0;// brr[n].m_dCredit_Money_Y; + creditDataArr[n].m_dCredit_Money_B.value = 0; + creditDataArr[n].m_Balancecreditamount.display = creditDataArr[n].empty_m_Balancecreditamount.value; + creditDataArr[n].m_Balancelocalcreditamount.display = creditDataArr[n].empty_m_Balancelocalcreditamount.value; + + creditDataArr[n].m_Balancecreditamount.value = creditDataArr[n].empty_m_Balancecreditamount.value; + creditDataArr[n].m_Balancelocalcreditamount.value = creditDataArr[n].empty_m_Balancelocalcreditamount.value; + creditDataArr[n].m_dCredit_Money_Y.prevValue = 0// brr[n].m_dCredit_Money_Y; + creditDataArr[n].m_dCredit_Money_B.prevValue = 0; + } + }) + // } + return creditDataArr; + } + } + + getTableHeightPosi = () => { + let tableHeight=(document.getElementById('app').offsetHeight-292)/2; + return tableHeight; + } + getTableHeight = () => { + let accountContentHeight = this.refs.accountContent && getComputedStyle(this.refs.accountContent, null).height || "400px"; + let tableHeight = accountContentHeight.replace('px', '') - 200; + return tableHeight; + } + getTableHeighttwo = () => { + let h = (window.innerHeight - 265 + "px") + return h; + } + //合并计算本次核销/未核销的原币组织本币的合计 + handleSumAmount=(type)=>{ + let {SumAmount,checkedArrayDebit,debitDataArr,checkedArrayCredit,creditDataArr,}=this.state; + let cY_num = 0,cZ_num = 0,cUY_num = 0,cUZ_num = 0; + if (type == "debit") { + SumAmount.debitY_num=0; //借方的核销余额(原) + SumAmount.debitZ_num=0; //借方的核销余额(组) + SumAmount.debitUY_num=0; //借方的未核销余额(原) + SumAmount.debitUZ_num=0; //借方的未核销余额(组) + for (let i = 0; i < checkedArrayDebit.length; i++) { + if (checkedArrayDebit[i] == true) { + if (debitDataArr[i]&&debitDataArr[i].m_dDebit_Money_Y) { + SumAmount.debitY_num = accAdd( + SumAmount.debitY_num, + debitDataArr && debitDataArr[i].m_dDebit_Money_Y.value + ); + } else { + SumAmount.debitY_num += 0; + } + if (debitDataArr[i]&&debitDataArr[i].m_dDebit_Money_B) { + SumAmount.debitZ_num = accAdd( + SumAmount.debitZ_num, + debitDataArr && debitDataArr[i].m_dDebit_Money_B.value + ); + } else { + SumAmount.debitZ_num += 0; + } + } + if (debitDataArr[i]&&debitDataArr[i].m_Balancedebitamount) { + SumAmount.debitUY_num = accAdd( + SumAmount.debitUY_num, + debitDataArr && debitDataArr[i].m_Balancedebitamount.value + ); + } else { + SumAmount.debitUY_num = 0; + } + if (debitDataArr[i]&&debitDataArr[i].m_Balancelocaldebitamount) { + SumAmount.debitUZ_num = accAdd( + SumAmount.debitUZ_num, + debitDataArr && + debitDataArr[i].m_Balancelocaldebitamount.value + ); + } else { + SumAmount.debitUZ_num = 0; + } + } + } else if (type == "credit") { + SumAmount.creditY_num=0; //贷方的核销余额(原) + SumAmount.creditZ_num=0; //贷方的核销余额(组) + SumAmount.creditUY_num=0; //贷方的未核销余额(原) + SumAmount.creditUZ_num=0; //贷方的未核销余额(组) + for (let ii = 0; ii < checkedArrayCredit.length; ii++) { + if (checkedArrayCredit[ii] == true) { + if (creditDataArr[ii]&&creditDataArr[ii].m_dCredit_Money_Y) { + SumAmount.creditY_num = accAdd( + SumAmount.creditY_num, + creditDataArr && creditDataArr[ii].m_dCredit_Money_Y.value + ); + } else { + SumAmount.creditY_num += 0; + } + if (creditDataArr[ii]&&creditDataArr[ii].m_dCredit_Money_B) { + SumAmount.creditZ_num = accAdd( + SumAmount.creditZ_num, + creditDataArr && creditDataArr[ii].m_dCredit_Money_B.value + ); + } else { + SumAmount.creditZ_num += 0; + } + } + if (creditDataArr[ii]&&creditDataArr[ii].m_Balancecreditamount) { + SumAmount.creditUY_num = accAdd( + SumAmount.creditUY_num, + creditDataArr && creditDataArr[ii].m_Balancecreditamount.value + ); + } else { + SumAmount.creditUY_num = 0; + } + if (creditDataArr[ii] &&creditDataArr[ii].m_Balancelocalcreditamount) { + SumAmount.creditUZ_num = accAdd( + SumAmount.creditUZ_num, + creditDataArr && + creditDataArr[ii].m_Balancelocalcreditamount.value + ); + } else { + SumAmount.creditUZ_num = 0; + } + } + } + this.setState({SumAmount}); + } + //导出原币组织本币合计值组件 + exportInput=(type)=>{ + let that=this; + let {debitUY_num,debitUZ_num,creditUY_num,creditUZ_num,debitBoxClicked,creditBoxClicked, + creditScale_Y,creditScale_B,debitScale_Y,debitScale_B,SumAmount}=that.state; + if(type=='debit'){ + return( + +
+
    +
  • {that.state.json['20020VRIFYPAGE-000071']}
  • {/* 国际化处理: 本次核销金额*/} +
  • + {that.state.json['20020VRIFYPAGE-000072']}:{/* 国际化处理: 原*/} + { }} + /> +
  • +
  • + {that.state.json['20020VRIFYPAGE-000073']}:{/* 国际化处理: 组*/} + { }} + /> +
  • +
+
    +
  • {that.state.json['20020VRIFYPAGE-000057']}
  • {/* 国际化处理: 未核销余额*/} +
  • + {that.state.json['20020VRIFYPAGE-000072']}:{/* 国际化处理: 原*/} + { }} + /> +
  • +
  • + {that.state.json['20020VRIFYPAGE-000073']}:{/* 国际化处理: 组*/} + { }} + /> +
  • +
+
) + }else if(type=='credit'){ + return( + +
+
    +
  • {that.state.json['20020VRIFYPAGE-000071']}
  • {/* 国际化处理: 本次核销金额*/} +
  • + {that.state.json['20020VRIFYPAGE-000072']}:{/* 国际化处理: 原*/} + { }} + /> +
  • +
  • + {that.state.json['20020VRIFYPAGE-000073']}:{/* 国际化处理: 组*/} + { }} + /> +
  • +
+
    +
  • {that.state.json['20020VRIFYPAGE-000057']}
  • {/* 国际化处理: 未核销余额*/} +
  • + {that.state.json['20020VRIFYPAGE-000072']}:{/* 国际化处理: 原*/} + { }} + /> +
  • +
  • + {that.state.json['20020VRIFYPAGE-000073']}:{/* 国际化处理: 组*/} + { }} + /> +
  • +
+
) + } + } + //获取table列 + getCreditOrDebitCoumn=(type,json)=>{ + if(type=='credit'){ + return([ + // this.columns_credit = [ + //贷方 + { + title: (
{json['20020VRIFYPAGE-000017']}
),/* 国际化处理: 业务单元*/ + dataIndex: "m_pk_unit_v", //m_voAss + key: "m_pk_unit_v", + width: 100, + render: (text, record, index) => { + return ( +
{text==null||(text&&!text.display)? :text.display}
+ ); + } + }, + { + title: (
{json['20020VRIFYPAGE-000051']}
),/* 国际化处理: 科目编码*/ + dataIndex: "m_sSubjCode", + key: "m_sSubjCode", + width: 100, + render: (text, record, index) => { + return ( +
{text==null||(text&&!text.display)? :text.display}
+ ); + } + }, + { + title: (
{json['20020VRIFYPAGE-000052']}
),/* 国际化处理: 科目*/ + dataIndex: "m_sSubjName", + key: "m_sSubjName", + width: 100, + render: (text, record, index) => { + return ( +
{text==null||(text&&!text.display)? :text.display}
+ ); + } + }, + { + title: (
{json['20020VRIFYPAGE-000021']}
),/* 国际化处理: 凭证日期*/ + dataIndex: "m_prepareddate", + key: "m_prepareddate", + width: 100, + render: (text, record, index) => { + return ( +
{text==null||(text&&!text.display)? :text.display}
+ ); + } + }, + { + title: (
{json['20020VRIFYPAGE-000022']}
),/* 国际化处理: 业务日期*/ + dataIndex: "m_Businessdate", + key: "m_Businessdate", + width: 100, + render: (text, record, index) => { + return ( +
{text==null||(text&&!text.display)? :text.display}
+ ); + } + }, + { + title: (
{json['20020VRIFYPAGE-000035']}
),/* 国际化处理: 核销号*/ + dataIndex: "m_VerifyNo", + key: "m_VerifyNo", + width: 100, + render: (text, record, index) => { + return ( +
{text==null||(text&&!text.display)? :text.display}
+ ); + } + }, + { + title: (
{json['20020VRIFYPAGE-000075']}
),/* 国际化处理: 银行对账标识码*/ + dataIndex: "m_netbankflag", + key: "m_netbankflag", + width: 150, + render: (text, record, index) => { + return ( +
{text==null||(text&&!text.display)? :text.display}
+ ); + } + }, + { + title: (
{json['20020VRIFYPAGE-000053']}
),/* 国际化处理: 凭证号*/ + dataIndex: "m_VoucherNo", + key: "m_VoucherNo", + width: 100, + render: (text, record, index) => { + return ( +
{text==null||(text&&!text.display)? :text.display}
+ ); + } + }, + { + title: (
{json['20020VRIFYPAGE-000054']}
),/* 国际化处理: 分录号*/ + dataIndex: "m_detailindex", + key: "m_detailindex", + width: 100, + render: (text, record, index) => { + return ( +
{text==null||(text&&!text.display)? :text.display}
+ ); + } + }, + { + title: (
{json['20020VRIFYPAGE-000003']}
),/* 国际化处理: 辅助核算*/ + dataIndex: "assinfo", + key: "assinfo", + width: 200, + render: (text, record, index) => { + return ( +
{text==null||(text&&!text.display)? :text.display}
+ ); + } + }, + { + title: (
{json['20020VRIFYPAGE-000029']}
),/* 国际化处理: 摘要*/ + dataIndex: "m_explanation", + key: "m_explanation", + width: 100, + render: (text, record, index) => { + return ( +
{text==null||(text&&!text.display)? :text.display}
+ ); + } + }, + { + title: json['20020VRIFYPAGE-000055'],/* 国际化处理: 金额*/ + children: [ + { + title: (
{json['20020VRIFYPAGE-000024']}
),/* 国际化处理: 原币*/ + className: "yeson", + dataIndex: "m_creditamount", + key: "m_creditamount", + width: 150, + render: (text, record, index) => { + return ( +
{text==null||(text&&!text.display)? :text.display}
+ ); + } + }, + { + title: (
{json['20020VRIFYPAGE-000025']}
),/* 国际化处理: 组织本币*/ + className: "yeson", + dataIndex: "m_localcreditamount", + key: "m_localcreditamount", + width: 150, + render: (text, record, index) => { + return ( +
{text==null||(text&&!text.display)? :text.display}
+ ); + } + } + ] + }, + { + title: json['20020VRIFYPAGE-000056'],/* 国际化处理: 本次核销*/ + children: [ + { + title: (
{json['20020VRIFYPAGE-000024']}
),/* 国际化处理: 原币*/ + dataIndex: "m_dCredit_Money_Y", + key: "m_dCredit_Money_Y", + width: 150, + render: (text, record, index) => { + let { + checkedArrayCredit, + debitRate, + queryCondition, + CompareStatus, creditOrDebitFlag + } = this.state; + if (checkedArrayCredit[index] && creditOrDebitFlag != 'credit') { + // 复选框被选中状态时return出可编辑的输入框 + return ( +
+ { + let { creditDataArr } = this.state; + if (creditDataArr[index].empty_m_Balancecreditamount.value - 0 >0) { + if (v - 0 < 0) { + creditDataArr[index].m_dCredit_Money_Y.display = creditDataArr[index].m_dCredit_Money_Y.prevValue;// creditDataArr[index].empty_m_Balancecreditamount.value; + creditDataArr[index].m_Balancecreditamount.display = Subtr(creditDataArr[index].empty_m_Balancecreditamount.value, creditDataArr[index].m_dCredit_Money_Y.value);//0; + creditDataArr[index].m_dCredit_Money_Y.value = creditDataArr[index].m_dCredit_Money_Y.prevValue;// creditDataArr[index].empty_m_Balancecreditamount.value; + creditDataArr[index].m_Balancecreditamount.value = Subtr(creditDataArr[index].empty_m_Balancecreditamount.value, creditDataArr[index].m_dCredit_Money_Y.value);//0; + // creditDataArr[index].m_dCredit_Money_Y.display = 0; + // creditDataArr[index].m_Balancecreditamount.display =creditDataArr[index].empty_m_Balancecreditamount.value; + // creditDataArr[index].m_dCredit_Money_Y.value = 0; + // creditDataArr[index].m_Balancecreditamount.value =creditDataArr[index].empty_m_Balancecreditamount.value; + + if (queryCondition.pk_currency ==queryCondition.account_currency) { + //币种相同组织本币不可以编辑的,跟着原币变化 + creditDataArr[index].m_dCredit_Money_B.display = this.handleConversion(creditDataArr[index].m_dCredit_Money_Y.value); + creditDataArr[index].m_Balancelocalcreditamount.display = this.handleConversion(creditDataArr[index].m_Balancecreditamount.value); + creditDataArr[index].m_dCredit_Money_B.value = this.handleConversion(creditDataArr[index].m_dCredit_Money_Y.value); + creditDataArr[index].m_Balancelocalcreditamount.value = this.handleConversion(creditDataArr[index].m_Balancecreditamount.value); + } + } else { + if (Math.abs(v - 0) > Math.abs(creditDataArr[index].empty_m_Balancecreditamount.value - 0)) { + + creditDataArr[index].m_dCredit_Money_Y.display = creditDataArr[index].m_dCredit_Money_Y.prevValue;// creditDataArr[index].empty_m_Balancecreditamount.value; + creditDataArr[index].m_dCredit_Money_Y.value = creditDataArr[index].m_dCredit_Money_Y.prevValue;// creditDataArr[index].empty_m_Balancecreditamount.value; + creditDataArr[index].m_Balancecreditamount.value = Subtr(creditDataArr[index].empty_m_Balancecreditamount.value, creditDataArr[index].m_dCredit_Money_Y.value);//0; + creditDataArr[index].m_Balancecreditamount.display = Subtr(creditDataArr[index].empty_m_Balancecreditamount.value, creditDataArr[index].m_dCredit_Money_Y.value);//0; + + if (queryCondition.pk_currency ==queryCondition.account_currency) { + //币种相同组织本币不可以编辑的,跟着原币变化 + creditDataArr[index].m_dCredit_Money_B.display = this.handleConversion(creditDataArr[index].m_dCredit_Money_Y.value); + creditDataArr[index].m_Balancelocalcreditamount.display = this.handleConversion(creditDataArr[index].m_Balancecreditamount.value); + creditDataArr[index].m_dCredit_Money_B.value = this.handleConversion(creditDataArr[index].m_dCredit_Money_Y.value); + creditDataArr[index].m_Balancelocalcreditamount.value = this.handleConversion(creditDataArr[index].m_Balancecreditamount.value); + } + } else { + creditDataArr[index].m_dCredit_Money_Y.display = v ? v : 0; + creditDataArr[index].m_dCredit_Money_Y.value = v ? v : 0; + creditDataArr[index].m_dCredit_Money_Y.prevValue = v ? v : 0;//prevValue存储当前输入的值 + creditDataArr[index].m_Balancecreditamount.display = Subtr(creditDataArr[index].empty_m_Balancecreditamount.value, creditDataArr[index].m_dCredit_Money_Y.value); + creditDataArr[index].m_Balancecreditamount.value = Subtr(creditDataArr[index].empty_m_Balancecreditamount.value, creditDataArr[index].m_dCredit_Money_Y.value); + if (queryCondition.pk_currency ==queryCondition.account_currency) { + //币种相同组织本币不可以编辑的,跟着原币变化 + creditDataArr[index].m_dCredit_Money_B.display = this.handleConversion(creditDataArr[index].m_dCredit_Money_Y.value); + creditDataArr[index].m_Balancelocalcreditamount.display = this.handleConversion(creditDataArr[index].m_Balancecreditamount.value); + creditDataArr[index].m_dCredit_Money_B.value = this.handleConversion(creditDataArr[index].m_dCredit_Money_Y.value); + creditDataArr[index].m_Balancelocalcreditamount.value = this.handleConversion(creditDataArr[index].m_Balancecreditamount.value); + } + } + } + } else { + if (v - 0 < 0) { + if ( + Math.abs(v - 0) > Math.abs(creditDataArr[index].empty_m_Balancecreditamount.value - 0) + ) { + creditDataArr[index].m_dCredit_Money_Y.display = creditDataArr[index].m_dCredit_Money_Y.prevValue;// creditDataArr[index].empty_m_Balancecreditamount.value; + creditDataArr[index].m_dCredit_Money_Y.value = creditDataArr[index].m_dCredit_Money_Y.prevValue;//creditDataArr[index].empty_m_Balancecreditamount.value; + creditDataArr[index].m_Balancecreditamount.value = Subtr(creditDataArr[index].empty_m_Balancecreditamount.value, creditDataArr[index].m_dCredit_Money_Y.value);//0; + creditDataArr[index].m_Balancecreditamount.display = Subtr(creditDataArr[index].empty_m_Balancecreditamount.value, creditDataArr[index].m_dCredit_Money_Y.value);//0; + + if (queryCondition.pk_currency ==queryCondition.account_currency) { + //币种相同组织本币不可以编辑的,跟着原币变化 + creditDataArr[index].m_dCredit_Money_B.display = this.handleConversion([index].m_dCredit_Money_Y.value); + creditDataArr[index].m_Balancelocalcreditamount.display = this.handleConversion(creditDataArr[index].m_Balancecreditamount.value); + creditDataArr[index].m_dCredit_Money_B.value = this.handleConversion([index].m_dCredit_Money_Y.value); + creditDataArr[index].m_Balancelocalcreditamount.value = this.handleConversion(creditDataArr[index].m_Balancecreditamount.value); + } + } else { + creditDataArr[index].m_dCredit_Money_Y.display = v ? v : 0; + creditDataArr[index].m_dCredit_Money_Y.value = v ? v : 0; + creditDataArr[index].m_dCredit_Money_Y.prevValue = v ? v : 0; + creditDataArr[index].m_Balancecreditamount.display = Subtr(creditDataArr[index].empty_m_Balancecreditamount.value, creditDataArr[index].m_dCredit_Money_Y.value); + creditDataArr[index].m_Balancecreditamount.value = Subtr(creditDataArr[index].empty_m_Balancecreditamount.value, creditDataArr[index].m_dCredit_Money_Y.value); + if (queryCondition.pk_currency ==queryCondition.account_currency) { + //币种相同组织本币不可以编辑的,跟着原币变化 + creditDataArr[index].m_dCredit_Money_B.display = this.handleConversion(creditDataArr[index].m_dCredit_Money_Y.value); + creditDataArr[index].m_Balancelocalcreditamount.display = this.handleConversion(creditDataArr[index].m_Balancecreditamount.value); + creditDataArr[index].m_dCredit_Money_B.value = this.handleConversion(creditDataArr[index].m_dCredit_Money_Y.value); + creditDataArr[index].m_Balancelocalcreditamount.value = this.handleConversion(creditDataArr[index].m_Balancecreditamount.value); + } + } + } else { + creditDataArr[index].m_dCredit_Money_Y.display = creditDataArr[index].m_dCredit_Money_Y.prevValue;//creditDataArr[index].empty_m_Balancecreditamount.value; + creditDataArr[index].m_dCredit_Money_Y.value = creditDataArr[index].m_dCredit_Money_Y.prevValue;// creditDataArr[index].empty_m_Balancecreditamount.value; + creditDataArr[index].m_Balancecreditamount.value = Subtr(creditDataArr[index].empty_m_Balancecreditamount.value, creditDataArr[index].m_dCredit_Money_Y.value);//0; + creditDataArr[index].m_Balancecreditamount.display = Subtr(creditDataArr[index].empty_m_Balancecreditamount.value, creditDataArr[index].m_dCredit_Money_Y.value);//0; + + if (queryCondition.pk_currency ==queryCondition.account_currency) { + //币种相同组织本币不可以编辑的,跟着原币变化 + creditDataArr[index].m_dCredit_Money_B.display = this.handleConversion(creditDataArr[index].m_dCredit_Money_Y.value); + creditDataArr[index].m_Balancelocalcreditamount.display = this.handleConversion(creditDataArr[index].m_Balancecreditamount.value); + creditDataArr[index].m_dCredit_Money_B.value = this.handleConversion(creditDataArr[index].m_dCredit_Money_Y.value); + creditDataArr[index].m_Balancelocalcreditamount.value = this.handleConversion(creditDataArr[index].m_Balancecreditamount.value); + } + } + } + this.setState( + { + creditDataArr + }, + () => { + this.handleChecked("credit", index); + this.handleSumAmount("credit"); + if (CompareStatus == "uncompare") { + //对照出另一方的数据 + compareOtherData(this, "credit"); + } + } + ); + // if(v>creditDataArr[index].empty_m_Balancecreditamount){ return false;} + // creditDataArr[index].m_dCredit_Money_Y = v?v*debitRate:0; + // creditDataArr[index].m_dCredit_Money_B = this.handleConversion(creditDataArr[index].m_dCredit_Money_Y); + // creditDataArr[index].m_Balancecreditamount = creditDataArr[index].empty_m_Balancecreditamount - creditDataArr[index].m_dCredit_Money_Y; + // creditDataArr[index].m_Balancelocalcreditamount = this.handleConversion(creditDataArr[index].m_Balancecreditamount); + // this.setState({ + // creditDataArr + // }) + }} + /> +
+ ); + } else { + // 复选框未被选中状态 + return ( +
+ { + // let {creditDataArr,debitRate }=this.state; + // if(v>creditDataArr[index].empty_m_Balancecreditamount){ return false;} + // creditDataArr[index].m_dCredit_Money_Y = v?v*debitRate:0; + // creditDataArr[index].m_dCredit_Money_B = this.handleConversion(creditDataArr[index].m_dCredit_Money_Y); + // creditDataArr[index].m_Balancecreditamount = creditDataArr[index].empty_m_Balancecreditamount - creditDataArr[index].m_dCredit_Money_Y; + // creditDataArr[index].m_Balancelocalcreditamount = this.handleConversion(creditDataArr[index].m_Balancecreditamount); + // this.setState({ + // creditDataArr + // }) + }} + /> +
+ ); + } + } + }, + { + title: (
{json['20020VRIFYPAGE-000025']}
),/* 国际化处理: 组织本币*/ + dataIndex: "m_dCredit_Money_B", + key: "m_dCredit_Money_B", + width: 150, + render: (text, record, index) => { + let { + checkedArrayCredit, + debitRate, + queryCondition, + CompareStatus, creditOrDebitFlag, paraInfo + } = this.state; + if (checkedArrayCredit[index]) { + if ((queryCondition.pk_currency && queryCondition.pk_currency == queryCondition.account_currency) || + (this.props.voucherVerifyflag == '0' && creditOrDebitFlag == 'credit') || + (this.props.voucherVerifyflag == '1' && record.m_pk_vouchertype.value == paraInfo.orgCurrinfo.value)) { + //币种相同是不可以编辑的 + return ( +
+ { }} + /> +
+ ); + } else { + return ( +
+ { + let { creditDataArr, CompareStatus } = this.state; + if (creditDataArr[index].empty_m_Balancelocalcreditamount.value -0 >0) {//未核销数是正数 + if (v - 0 < 0) {//输入负数 + //creditDataArr[index].m_dCredit_Money_Y=0; + creditDataArr[index].m_dCredit_Money_B.display = creditDataArr[index].m_dCredit_Money_B.prevValue;//0; + creditDataArr[index].m_Balancelocalcreditamount.display = Subtr(creditDataArr[index].empty_m_Balancelocalcreditamount.value,creditDataArr[index].m_dCredit_Money_B.value); + creditDataArr[index].m_dCredit_Money_B.value = creditDataArr[index].m_dCredit_Money_B.prevValue;//0; + creditDataArr[index].m_Balancelocalcreditamount.value = Subtr(creditDataArr[index].empty_m_Balancelocalcreditamount.value,creditDataArr[index].m_dCredit_Money_B.value);//creditDataArr[index].empty_m_Balancelocalcreditamount.value; + } else { + if (Math.abs(v - 0) >Math.abs(creditDataArr[index].empty_m_Balancelocalcreditamount.value - 0)) { + creditDataArr[index].m_dCredit_Money_B.display = creditDataArr[index].m_dCredit_Money_B.prevValue;//0; + creditDataArr[index].m_dCredit_Money_B.value = creditDataArr[index].m_dCredit_Money_B.prevValue;//0; + creditDataArr[index].m_Balancelocalcreditamount.display = Subtr(creditDataArr[index].empty_m_Balancelocalcreditamount.value,creditDataArr[index].m_dCredit_Money_B.value);//creditDataArr[index].empty_m_Balancelocalcreditamount; + creditDataArr[index].m_Balancelocalcreditamount.vlaue = Subtr(creditDataArr[index].empty_m_Balancelocalcreditamount.value,creditDataArr[index].m_dCredit_Money_B.value);//creditDataArr[index].empty_m_Balancelocalcreditamount; + } else { + creditDataArr[index].m_dCredit_Money_B.display = v; + creditDataArr[index].m_dCredit_Money_B.value = v; + creditDataArr[index].m_dCredit_Money_B.prevValue = v; + creditDataArr[index].m_Balancelocalcreditamount.display = Subtr(creditDataArr[index].empty_m_Balancelocalcreditamount.value,creditDataArr[index].m_dCredit_Money_B.value); + creditDataArr[index].m_Balancelocalcreditamount.value = Subtr(creditDataArr[index].empty_m_Balancelocalcreditamount.value,creditDataArr[index].m_dCredit_Money_B.value); + } + } + } else {//未核销数为负数 + if (v - 0 < 0) { + if (Math.abs(v - 0) > Math.abs(creditDataArr[index].empty_m_Balancelocalcreditamount.value - 0)) { + creditDataArr[index].m_dCredit_Money_B.display = creditDataArr[index].m_dCredit_Money_B.prevValue;//0; + creditDataArr[index].m_Balancelocalcreditamount.display = Subtr(creditDataArr[index].empty_m_Balancelocalcreditamount.value,creditDataArr[index].m_dCredit_Money_B.value); + creditDataArr[index].m_dCredit_Money_B.value = creditDataArr[index].m_dCredit_Money_B.prevValue;//0; + creditDataArr[index].m_Balancelocalcreditamount.value = Subtr(creditDataArr[index].empty_m_Balancelocalcreditamount.value,creditDataArr[index].m_dCredit_Money_B.value); + } else { + creditDataArr[index].m_dCredit_Money_B.display = v; + creditDataArr[index].m_dCredit_Money_B.value = v; + creditDataArr[index].m_dCredit_Money_B.prevValue = v; + creditDataArr[index].m_Balancelocalcreditamount.display = Subtr(creditDataArr[index].empty_m_Balancelocalcreditamount.value,creditDataArr[index].m_dCredit_Money_B.value); + creditDataArr[index].m_Balancelocalcreditamount.value = Subtr(creditDataArr[index].empty_m_Balancelocalcreditamount.value,creditDataArr[index].m_dCredit_Money_B.value); + } + } else { + creditDataArr[index].m_dCredit_Money_B.display = creditDataArr[index].m_dCredit_Money_B.prevValue;//0; + creditDataArr[index].m_Balancelocalcreditamount.display = Subtr(creditDataArr[index].empty_m_Balancelocalcreditamount.value,creditDataArr[index].m_dCredit_Money_B.value); + creditDataArr[index].m_dCredit_Money_B.value = creditDataArr[index].m_dCredit_Money_B.prevValue;//0; + creditDataArr[index].m_Balancelocalcreditamount.value = Subtr(creditDataArr[index].empty_m_Balancelocalcreditamount.value,creditDataArr[index].m_dCredit_Money_B.value); + } + } + this.setState( + { + creditDataArr + }, + () => { + this.handleChecked("credit", index); + this.handleSumAmount("credit"); + if (CompareStatus == "uncompare") { + //对照出另一方的数据 + compareOtherData(this, "credit"); + } + } + ); + }} + /> +
+ ); + } + } else { + return ( +
+ { }} + /> +
+ ); + } + } + } + ] + }, + { + title: json['20020VRIFYPAGE-000057'],/* 国际化处理: 未核销余额*/ + children: [ + { + title: (
{json['20020VRIFYPAGE-000024']}
),/* 国际化处理: 原币*/ + className: "yeson", + dataIndex: "m_Balancecreditamount", + key: "m_Balancecreditamount", + width: 150, + render: (text, record, index) => { + return ( +
+ { }} + /> +
+ ); + } + }, + { + title: (
{json['20020VRIFYPAGE-000025']}
),/* 国际化处理: 组织本币*/ + className: "yeson", + dataIndex: "m_Balancelocalcreditamount", + key: "m_Balancelocalcreditamount", + width: 150, + render: (text, record, index) => { + return ( +
+ { }} + /> +
+ ); + } + } + ] + } + ]); + }else if(type=='debit'){ + // this.columns_debit = [ + return([ + //借方 + { + title: (
{json['20020VRIFYPAGE-000017']}
),/* 国际化处理: 业务单元*/ + dataIndex: "m_pk_unit_v", //m_voAss + key: "m_pk_unit_v", + width: 100, + render: (text, record, index) => { + return ( +
{text==null||(text&&!text.display)? :text.display}
+ ); + } + }, + { + title: (
{json['20020VRIFYPAGE-000051']}
),/* 国际化处理: 科目编码*/ + dataIndex: "m_sSubjCode", + key: "m_sSubjCode", + width: 100, + render: (text, record, index) => { + return ( +
{text==null||(text&&!text.display)? :text.display}
+ ); + } + }, + { + title: (
{json['20020VRIFYPAGE-000052']}
),/* 国际化处理: 科目*/ + dataIndex: "m_sSubjName", + key: "m_sSubjName", + width: 100, + render: (text, record, index) => { + return ( +
{text==null||(text&&!text.display)? :text.display}
+ ); + } + }, + { + title: (
{json['20020VRIFYPAGE-000021']}
),/* 国际化处理: 凭证日期*/ + dataIndex: "m_prepareddate", + key: "m_prepareddate", + width: 100, + render: (text, record, index) => { + return ( +
{text==null||(text&&!text.display)? :text.display}
+ ); + } + }, + { + title: (
{json['20020VRIFYPAGE-000022']}
),/* 国际化处理: 业务日期*/ + dataIndex: "m_Businessdate", + key: "m_Businessdate", + width: 100, + render: (text, record, index) => { + return ( +
{text==null||(text&&!text.display)? :text.display}
+ ); + } + }, + { + title: (
{json['20020VRIFYPAGE-000035']}
),/* 国际化处理: 核销号*/ + dataIndex: "m_VerifyNo", + key: "m_VerifyNo", + width: 100, + render: (text, record, index) => { + return ( +
{text==null||(text&&!text.display)? :text.display}
+ ); + } + }, + { + title: (
{json['20020VRIFYPAGE-000075']}
),/* 国际化处理: 银行对账标识码*/ + dataIndex: "m_netbankflag", + key: "m_netbankflag", + width: 150, + className: "m_netbankflag", + render: (text, record, index) => { + return ( +
{text==null||(text&&!text.display)? :text.display}
+ ); + } + }, + { + title: (
{json['20020VRIFYPAGE-000053']}
),/* 国际化处理: 凭证号*/ + dataIndex: "m_VoucherNo", + key: "m_VoucherNo", + width: 100, + render: (text, record, index) => { + return ( +
{text==null||(text&&!text.display)? :text.display}
+ ); + } + }, + { + title: (
{json['20020VRIFYPAGE-000054']}
),/* 国际化处理: 分录号*/ + dataIndex: "m_detailindex", + key: "m_detailindex", + width: 100, + render: (text, record, index) => { + return ( +
{text==null||(text&&!text.display)? :text.display}
+ ); + } + }, + { + title: (
{json['20020VRIFYPAGE-000003']}
),/* 国际化处理: 辅助核算*/ + dataIndex: "assinfo", //m_voAss + key: "assinfo", + width: 200, + render: (text, record, index) => { + return ( +
{text==null||(text&&!text.display)? :text.display}
+ ); + } + }, + { + title: (
{json['20020VRIFYPAGE-000029']}
),/* 国际化处理: 摘要*/ + dataIndex: "m_explanation", + key: "m_explanation", + width: 100, + render: (text, record, index) => { + return ( +
{text==null||(text&&!text.display)? :text.display}
+ ); + } + }, + { + title: json['20020VRIFYPAGE-000055'],/* 国际化处理: 金额*/ + children: [ + { + title: (
{json['20020VRIFYPAGE-000024']}
),/* 国际化处理: 原币*/ + className: "yeson", + dataIndex: "m_debitamount", + key: "m_debitamount", + width: 150, + render: (text, record, index) => { + return ( +
{text==null||(text&&!text.display)? :text.display}
+ ); + } + }, + { + title: (
{json['20020VRIFYPAGE-000025']}
),/* 国际化处理: 组织本币*/ + className: "yeson", + dataIndex: "m_localdebitamount", + key: "m_localdebitamount", + width: 150, + render: (text, record, index) => { + return ( +
{text==null||(text&&!text.display)? :text.display}
+ ); + } + } + ] + }, + { + title: json['20020VRIFYPAGE-000056'],/* 国际化处理: 本次核销*/ + children: [ + { + title: (
{json['20020VRIFYPAGE-000024']}
),/* 国际化处理: 原币*/ + dataIndex: "m_dDebit_Money_Y", + key: "m_dDebit_Money_Y", + width: 150, + render: (text, record, index) => { + let { checkedArrayDebit, debitRate, queryCondition, creditOrDebitFlag } = this.state; + if (checkedArrayDebit[index] && creditOrDebitFlag != 'debit') { + // 复选框被选中状态时return出可编辑的输入框 + return ( +
+ { + // onBlur={(v) => { + let { debitDataArr, CompareStatus } = this.state; + if (debitDataArr[index].empty_m_Balancedebitamount.value - 0 > 0) {//未核销金额为正数 + if (v - 0 < 0) { + debitDataArr[index].m_dDebit_Money_Y.display = debitDataArr[index].m_dDebit_Money_Y.prevValue;// debitDataArr[index].empty_m_Balancedebitamount.value; + debitDataArr[index].m_dDebit_Money_Y.value = debitDataArr[index].m_dDebit_Money_Y.prevValue;// debitDataArr[index].empty_m_Balancedebitamount.value; + debitDataArr[index].m_Balancedebitamount.display = debitDataArr[index].empty_m_Balancedebitamount.value - debitDataArr[index].m_dDebit_Money_Y.value;// 0; + debitDataArr[index].m_Balancedebitamount.value = debitDataArr[index].empty_m_Balancedebitamount.value - debitDataArr[index].m_dDebit_Money_Y.value;// 0; + // debitDataArr[index].m_dDebit_Money_Y.display = 0; + // debitDataArr[index].m_dDebit_Money_Y.value = 0; + // debitDataArr[index].m_Balancedebitamount.display = debitDataArr[index].empty_m_Balancedebitamount.value; + // debitDataArr[index].m_Balancedebitamount.value = debitDataArr[index].empty_m_Balancedebitamount.value; + if (queryCondition.pk_currency == queryCondition.account_currency) { + //币种相同组织本币不可以编辑的,跟着原币变化 + debitDataArr[index].m_dDebit_Money_B.display = this.handleConversion(debitDataArr[index].m_dDebit_Money_Y.value); + debitDataArr[index].m_dDebit_Money_B.value = this.handleConversion(debitDataArr[index].m_dDebit_Money_Y.value); + debitDataArr[index].m_Balancelocaldebitamount.display = this.handleConversion(debitDataArr[index].m_Balancedebitamount.value); + debitDataArr[index].m_Balancelocaldebitamount.value = this.handleConversion(debitDataArr[index].m_Balancedebitamount.value); + } + } else { + if (Math.abs(v - 0) > Math.abs(debitDataArr[index].empty_m_Balancedebitamount.value - 0)) { + debitDataArr[index].m_dDebit_Money_Y.display = debitDataArr[index].m_dDebit_Money_Y.prevValue;// debitDataArr[index].empty_m_Balancedebitamount.value; + debitDataArr[index].m_dDebit_Money_Y.value = debitDataArr[index].m_dDebit_Money_Y.prevValue;// debitDataArr[index].empty_m_Balancedebitamount.value; + debitDataArr[index].m_Balancedebitamount.display = debitDataArr[index].empty_m_Balancedebitamount.value - debitDataArr[index].m_dDebit_Money_Y.value;// 0; + debitDataArr[index].m_Balancedebitamount.value = debitDataArr[index].empty_m_Balancedebitamount.value - debitDataArr[index].m_dDebit_Money_Y.value;// 0; + if (queryCondition.pk_currency == queryCondition.account_currency) { + //币种相同组织本币不可以编辑的,跟着原币变化 + debitDataArr[index].m_dDebit_Money_B.display = this.handleConversion(debitDataArr[index].m_dDebit_Money_Y.value); + debitDataArr[index].m_dDebit_Money_B.value = this.handleConversion(debitDataArr[index].m_dDebit_Money_Y.value); + debitDataArr[index].m_Balancelocaldebitamount.display = this.handleConversion(debitDataArr[index].m_Balancedebitamount.value); + debitDataArr[index].m_Balancelocaldebitamount.value = this.handleConversion(debitDataArr[index].m_Balancedebitamount.value); + } + } else { + debitDataArr[index].m_dDebit_Money_Y.display = (v ? v : 0); + debitDataArr[index].m_dDebit_Money_Y.value = (v ? v : 0); + debitDataArr[index].m_dDebit_Money_Y.prevValue = (v ? v : 0);//prevValue存储当前输入的值 + debitDataArr[index].m_Balancedebitamount.display = debitDataArr[index].empty_m_Balancedebitamount.value - debitDataArr[index].m_dDebit_Money_Y.value; + debitDataArr[index].m_Balancedebitamount.value = debitDataArr[index].empty_m_Balancedebitamount.value - debitDataArr[index].m_dDebit_Money_Y.value; + if (queryCondition.pk_currency == queryCondition.account_currency) { + //币种相同组织本币不可以编辑的,跟着原币变化 + debitDataArr[index].m_dDebit_Money_B.display = this.handleConversion(debitDataArr[index].m_dDebit_Money_Y.value); + debitDataArr[index].m_dDebit_Money_B.value = this.handleConversion(debitDataArr[index].m_dDebit_Money_Y.value); + debitDataArr[index].m_Balancelocaldebitamount.display = this.handleConversion(debitDataArr[index].m_Balancedebitamount.value); + debitDataArr[index].m_Balancelocaldebitamount.value = this.handleConversion(debitDataArr[index].m_Balancedebitamount.value); + } + } + } + } else {//未核销金额为负数 + if (v - 0 < 0) {//输入负数 + if (Math.abs(v - 0) >Math.abs(debitDataArr[index].empty_m_Balancedebitamount.value - 0)) { + debitDataArr[index].m_dDebit_Money_Y.display = debitDataArr[index].m_dDebit_Money_Y.prevValue;//debitDataArr[index].empty_m_Balancedebitamount.value; + debitDataArr[index].m_dDebit_Money_Y.value = debitDataArr[index].m_dDebit_Money_Y.prevValue;//debitDataArr[index].empty_m_Balancedebitamount.value; + debitDataArr[index].m_Balancedebitamount.display = debitDataArr[index].empty_m_Balancedebitamount.value - debitDataArr[index].m_dDebit_Money_Y.value;//0 ; + debitDataArr[index].m_Balancedebitamount.value = debitDataArr[index].empty_m_Balancedebitamount.value - debitDataArr[index].m_dDebit_Money_Y.value;//0; + if (queryCondition.pk_currency == queryCondition.account_currency) { + //币种相同组织本币不可以编辑的,跟着原币变化 + debitDataArr[index].m_dDebit_Money_B.display = this.handleConversion(debitDataArr[index].m_dDebit_Money_Y.value); + debitDataArr[index].m_Balancelocaldebitamount.display = this.handleConversion(debitDataArr[index].m_Balancedebitamount.value); + debitDataArr[index].m_dDebit_Money_B.value = this.handleConversion(debitDataArr[index].m_dDebit_Money_Y.value); + debitDataArr[index].m_Balancelocaldebitamount.value = this.handleConversion(debitDataArr[index].m_Balancedebitamount.value); + } + } else { + debitDataArr[index].m_dDebit_Money_Y.display = (v ? v : 0); + debitDataArr[index].m_dDebit_Money_Y.value = (v ? v : 0); + debitDataArr[index].m_dDebit_Money_Y.prevValue = (v ? v : 0); + debitDataArr[index].m_Balancedebitamount.display = debitDataArr[index].empty_m_Balancedebitamount.value - debitDataArr[index].m_dDebit_Money_Y.value; + debitDataArr[index].m_Balancedebitamount.value = debitDataArr[index].empty_m_Balancedebitamount.value - debitDataArr[index].m_dDebit_Money_Y.value; + if (queryCondition.pk_currency == queryCondition.account_currency) { + //币种相同组织本币不可以编辑的,跟着原币变化 + debitDataArr[index].m_dDebit_Money_B.display = this.handleConversion(debitDataArr[index].m_dDebit_Money_Y.value); + debitDataArr[index].m_Balancelocaldebitamount.display = this.handleConversion(debitDataArr[index].m_Balancedebitamount.value); + debitDataArr[index].m_dDebit_Money_B.value = this.handleConversion(debitDataArr[index].m_dDebit_Money_Y.value); + debitDataArr[index].m_Balancelocaldebitamount.value = this.handleConversion(debitDataArr[index].m_Balancedebitamount.value); + } + } + } else {//输入正数 + debitDataArr[index].m_dDebit_Money_Y.display = debitDataArr[index].m_dDebit_Money_Y.prevValue; + debitDataArr[index].m_Balancedebitamount.display = debitDataArr[index].empty_m_Balancedebitamount.value - debitDataArr[index].m_dDebit_Money_Y.value;// 0; + debitDataArr[index].m_dDebit_Money_Y.value = debitDataArr[index].m_dDebit_Money_Y.prevValue;//debitDataArr[index].empty_m_Balancedebitamount.value; + debitDataArr[index].m_Balancedebitamount.value = debitDataArr[index].empty_m_Balancedebitamount.value - debitDataArr[index].m_dDebit_Money_Y.value;// 0; + if (queryCondition.pk_currency == queryCondition.account_currency) { + //币种相同组织本币不可以编辑的,跟着原币变化 + debitDataArr[index].m_dDebit_Money_B.display = this.handleConversion(debitDataArr[index].m_dDebit_Money_Y.value); + debitDataArr[index].m_Balancelocaldebitamount.display = this.handleConversion(debitDataArr[index].m_Balancedebitamount.value); + debitDataArr[index].m_dDebit_Money_B.value = this.handleConversion(debitDataArr[index].m_dDebit_Money_Y.value); + debitDataArr[index].m_Balancelocaldebitamount.value = this.handleConversion(debitDataArr[index].m_Balancedebitamount.value); + } + } + } + this.setState({ debitDataArr }, () => { + this.handleChecked("debit", index); + this.handleSumAmount("debit"); + if (CompareStatus == "uncompare") { + //对照出另一方的数据 + compareOtherData(this, "debit"); + } + } + ); + }} + /> +
+ ); + } else { + // 复选框未被选中状态 + return ( +
+ { }} /> +
+ ); + } + } + }, + { + title: (
{json['20020VRIFYPAGE-000025']}
),/* 国际化处理: 组织本币*/ + dataIndex: "m_dDebit_Money_B", + key: "m_dDebit_Money_B", + width: 150, + render: (text, record, index) => { + let { + checkedArrayDebit, + debitRate, + queryCondition, + CompareStatus, creditOrDebitFlag, paraInfo + } = this.state; + if (checkedArrayDebit[index]) { + if ((queryCondition.pk_currency && queryCondition.pk_currency == queryCondition.account_currency) || + (this.props.voucherVerifyflag == '0' && creditOrDebitFlag == 'debit') || + (this.props.voucherVerifyflag == '1' && record.m_pk_vouchertype.value == paraInfo.orgCurrinfo.value)) { + //币种相同是不可以编辑的 + return ( +
+ { }} + /> +
+ ); + } else { + return ( +
+ { + // onBlur={(v) => { + let { debitDataArr, CompareStatus } = this.state; + if (debitDataArr[index].empty_m_Balancelocaldebitamount.value - 0 > 0) {//未核销数正数 + if (v - 0 < 0) {//输入负数 + debitDataArr[index].m_dDebit_Money_B.display = debitDataArr[index].m_dDebit_Money_B.prevValue;// 0; + debitDataArr[index].m_Balancelocaldebitamount.display = Subtr(debitDataArr[index].empty_m_Balancelocaldebitamount.value, debitDataArr[index].m_dDebit_Money_B.value);//debitDataArr[index].empty_m_Balancelocaldebitamount.value; + debitDataArr[index].m_dDebit_Money_B.value = debitDataArr[index].m_dDebit_Money_B.prevValue;// 0; + debitDataArr[index].m_Balancelocaldebitamount.value = Subtr(debitDataArr[index].empty_m_Balancelocaldebitamount.value, debitDataArr[index].m_dDebit_Money_B.value);//debitDataArr[index].empty_m_Balancelocaldebitamount.value; + } else { + if (Math.abs(v - 0) > Math.abs(debitDataArr[index].empty_m_Balancelocaldebitamount.value - 0)) { + debitDataArr[index].m_dDebit_Money_B.display = debitDataArr[index].m_dDebit_Money_B.prevValue;// 0; + debitDataArr[index].m_Balancelocaldebitamount.display = Subtr(debitDataArr[index].empty_m_Balancelocaldebitamount.value, debitDataArr[index].m_dDebit_Money_B.value);// debitDataArr[index].empty_m_Balancelocaldebitamount.value; + debitDataArr[index].m_dDebit_Money_B.value = debitDataArr[index].m_dDebit_Money_B.prevValue;//0; + debitDataArr[index].m_Balancelocaldebitamount.value = Subtr(debitDataArr[index].empty_m_Balancelocaldebitamount.value, debitDataArr[index].m_dDebit_Money_B.value);// debitDataArr[index].empty_m_Balancelocaldebitamount.value; + } else { + debitDataArr[index].m_dDebit_Money_B.display = v; + debitDataArr[index].m_dDebit_Money_B.value = v; + debitDataArr[index].m_dDebit_Money_B.prevValue = v; + debitDataArr[index].m_Balancelocaldebitamount.display = Subtr(debitDataArr[index].empty_m_Balancelocaldebitamount.value, debitDataArr[index].m_dDebit_Money_B.value); + debitDataArr[index].m_Balancelocaldebitamount.value = Subtr(debitDataArr[index].empty_m_Balancelocaldebitamount.value, debitDataArr[index].m_dDebit_Money_B.value); + } + } + } else {//未核销数为负数 + if (v - 0 < 0) { + if (Math.abs(v - 0) > Math.abs(debitDataArr[index].empty_m_Balancelocaldebitamount.value - 0)) { + debitDataArr[index].m_dDebit_Money_B.display = debitDataArr[index].m_dDebit_Money_B.prevValue;// 0; + debitDataArr[index].m_Balancelocaldebitamount.display = Subtr(debitDataArr[index].empty_m_Balancelocaldebitamount.value, debitDataArr[index].m_dDebit_Money_B.value);// debitDataArr[index].empty_m_Balancelocaldebitamount.value; + debitDataArr[index].m_dDebit_Money_B.value =debitDataArr[index].m_dDebit_Money_B.prevValue;// 0; + debitDataArr[index].m_Balancelocaldebitamount.value = Subtr(debitDataArr[index].empty_m_Balancelocaldebitamount.value, debitDataArr[index].m_dDebit_Money_B.value);// debitDataArr[index].empty_m_Balancelocaldebitamount.value; + } else { + debitDataArr[index].m_dDebit_Money_B.display = v; + debitDataArr[index].m_dDebit_Money_B.value = v; + debitDataArr[index].m_dDebit_Money_B.prevValue = v; + debitDataArr[index].m_Balancelocaldebitamount.display = Subtr(debitDataArr[index].empty_m_Balancelocaldebitamount.value, debitDataArr[index].m_dDebit_Money_B.value); + debitDataArr[index].m_Balancelocaldebitamount.value = Subtr(debitDataArr[index].empty_m_Balancelocaldebitamount.value, debitDataArr[index].m_dDebit_Money_B.value); + } + } else { + debitDataArr[index].m_dDebit_Money_B.display = debitDataArr[index].m_dDebit_Money_B.prevValue// 0; + debitDataArr[index].m_dDebit_Money_B.value = debitDataArr[index].m_dDebit_Money_B.prevValue// 0; + debitDataArr[index].m_Balancelocaldebitamount.display = Subtr(debitDataArr[index].empty_m_Balancelocaldebitamount.value, debitDataArr[index].m_dDebit_Money_B.value);// debitDataArr[index].empty_m_Balancelocaldebitamount.value; + debitDataArr[index].m_Balancelocaldebitamount.value = Subtr(debitDataArr[index].empty_m_Balancelocaldebitamount.value, debitDataArr[index].m_dDebit_Money_B.value);// debitDataArr[index].empty_m_Balancelocaldebitamount.value; + } + } + this.setState({ debitDataArr }, + () => { + this.handleChecked("debit", index); + this.handleSumAmount("debit"); + if (CompareStatus == "uncompare") { + //对照出另一方的数据 + compareOtherData(this, "debit"); + } + } + ); + }} + /> +
+ ); + } + } else { + return ( +
+ { }} + /> +
+ ); + } + } + } + ] + }, + { + title: json['20020VRIFYPAGE-000057'],/* 国际化处理: 未核销余额*/ + children: [ + { + title: (
{json['20020VRIFYPAGE-000024']}
),/* 国际化处理: 原币*/ + className: "yeson", + dataIndex: "m_Balancedebitamount", + key: "m_Balancedebitamount", + width: 150, + render: (text, record, index) => { + return ( +
+ { }} + /> +
+ ); + } + }, + { + title: (
{json['20020VRIFYPAGE-000025']}
),/* 国际化处理: 组织本币*/ + className: "yeson", + dataIndex: "m_Balancelocaldebitamount", + key: "m_Balancelocaldebitamount", + width: 150, + render: (text, record, index) => { + return ( +
+ { }} + /> +
+ ); + } + } + ] + } + ] + ); + } + } + render() { + let that = this; + let { + layout, + queryCondition, + creditDataArr, + debitDataArr, + verifyStandardshowModal, + hedgingStandardshowModal, + pk_accasoa, + pk_accountingbook, + modalDefaultValue,json + } = that.state; + + // let $$columns_credit=deepClone(that.columns_credit); + // let $$columns_debit=deepClone(that.columns_debit); + // let columns_credit=that.getCreditOrDebitCoumn('credit',json); + // let columns_debit=that.getCreditOrDebitCoumn('debit',json); + let columns_creditArr =deepClone(that.columns_credit);// $$columns_credit; + let columns_debitArr = deepClone(that.columns_debit);//$$columns_debit; + if (queryCondition.cashtype && queryCondition.cashtype != '2') {//银行类科目 核销的表头增加一列银行对账标志码 + columns_creditArr.map((list, index) => { + if (list.key == 'm_netbankflag') { + columns_creditArr.splice(index, 1); + } + }) + columns_debitArr.map((list, index) => { + if (list.key == 'm_netbankflag') { + columns_debitArr.splice(index, 1); + } + }) + } + if (!queryCondition.isShowUnit) {//是否显示业务单元 + if(columns_creditArr){ + columns_creditArr.map((list, index) => { + if (list.key == 'm_pk_unit_v') { + columns_creditArr.splice(index, 1); + } + }) + } + if(columns_debitArr){ + columns_debitArr.map((list, index) => { + if (list.key == 'm_pk_unit_v') { + columns_debitArr.splice(index, 1); + } + }) + } + } + let columnsCredit=[]; + if(columns_creditArr){ + columnsCredit = that.renderColumnsMultiSelect(columns_creditArr); + } + let columnsDebit=[]; + if(columns_debitArr){ + columnsDebit = that.renderColumnsMultiSelectDebit(columns_debitArr); + } + + return ( +
+ +
+ {/* 国际化处理: 核算账簿*/} + {pk_accountingbook.display} +
+
+ {/* 国际化处理: 核销对象*/} + {pk_accasoa.display} +
+
+ } + btnContent = { +
+ { + (!that.props.voucherVerifyflag) ? + that.props.button.createButtonApp({ + area: 'header_buttons', + onButtonClick: buttonClick.bind(that), + }) + : (
) + } + {(that.props.voucherVerifyflag == '0' ? +
+ + {/* 国际化处理: 查询*/} + {/* 国际化处理: 全部*/} + {/* 国际化处理: 核销*/} + + {/* */} + +
+ :
) + + } +
+ + } + /> + {/* */} + + + +
+ +
+
+
+

{that.state.json['20020VRIFYPAGE-000032']}

{/* 国际化处理: 借方*/} + {that.state.position && +
+ {that.exportInput('debit')} +
+ } +
+ +
+ + + + +
+
+

{that.state.json['20020VRIFYPAGE-000033']}

{/* 国际化处理: 贷方*/} + {that.state.position && +
+ {that.exportInput('credit')} +
+ } +
+ +
+ + + + + { + !that.state.position &&
+
{that.exportInput('debit')}
+
{that.exportInput('credit')}
+
+ } + + + ); + } +} + +ExportVrify.defaultProps = defaultProps12; +ExportVrify = createPage({ + +})(ExportVrify); + +export default ExportVrify; +/*6/qQ0+hrESXLl3knz4rqBwsPkvQ7kJhaHJtTHUlF3V4=*/ \ No newline at end of file diff --git a/src/gl/verify/verify/vrify/index.js b/src/gl/verify/verify/vrify/index.js new file mode 100644 index 0000000..9ebcee3 --- /dev/null +++ b/src/gl/verify/verify/vrify/index.js @@ -0,0 +1,11 @@ +/*jdNRuZuduINgBy4HapEa4fqmBMzA+9W4I6NnfWBJr/o=*/ +// import React from 'react'; +import {RenderRouter} from 'nc-lightapp-front'; +import routes from './router'; + +(function main(routers,htmlTagid){ + RenderRouter(routers,htmlTagid); +})(routes,"app"); + + +/*jdNRuZuduINgBy4HapEa4fqmBMzA+9W4I6NnfWBJr/o=*/ \ No newline at end of file diff --git a/src/gl/verify/verify/vrify/index.less b/src/gl/verify/verify/vrify/index.less new file mode 100644 index 0000000..eb7c689 --- /dev/null +++ b/src/gl/verify/verify/vrify/index.less @@ -0,0 +1,567 @@ + +@import "../../../public/style/index.less"; + +.account-head { + display: flex; + justify-content: space-between; + align-items: center; + background: blue; + height: 30px; + line-height: 30px; + color: white; + padding-left: 5px; + padding-right: 5px; + margin-bottom: 3px; + .account-head-right { + display: inline-block; + width: 20px; + height: 20px; + background: red; + line-height: 20px; + text-align: center; + } +} + +.function-buttons { + display: flex; + justify-content: center; + li { + margin: 0 2px; + width: 80px; + height: 20px; + line-height: 20px; + text-align: center; + border-radius: 5px; + list-style: none; + background: bisque; + } + .query-style { + border: 1px solid blue; + color: blue; + } +} + +.account-content1 { + margin-top: 0px !important; + margin-bottom: 5px; + .u-col-md-6.u-col-sm-6.u-col-xs-6{ + &:nth-of-type(1){ + padding-right:0 + } + &:nth-of-type(2){ + padding-left:0 + } + } + .account-content1-credit { + // border-bottom: 1px solid rgba(101, 101, 101, 0.75); + // .u-table-content{min-height:0 !important} + .account-content1-credit-tit { + height: 40px !important; + line-height: 40px !important; + background:@header-background; + .account-content1-credit-foot { + padding-left: 10px; + display: flex; + justify-content: space-between; + align-items: center; + height: 40px; + border: none !important; + float: right; + //overflow: hidden; + ul { + float: left; + height: 40px; + li:nth-of-type(1) { + // width: 80px; + height: 14px; + font-size: 13px; + font-family: MicrosoftYaHei; + // color: rgba(17, 17, 17, 1); + line-height: 13px; + height: 40px; + line-height: 40px; + } + li:nth-of-type(2) { + margin-right: 8px; + margin-left: 14px; + font-size: 13px; + font-family: PingFangSC-Regular; + font-weight: 400; + // color: rgba(85, 85, 85, 1); + line-height: 40px; + } + input { + width: 140px; + // height: 30px; + // background: rgba(255, 255, 255, 1); + border-radius: 3px; + // border: 1px solid rgba(208, 208, 208, 1); + } + } + ul:nth-of-type(2) { + margin-right: 20px; + margin-left: 100px; + } + } + } + .account-content1-credit-tab { + height: 200px; + border: 1px solid gray; + table { + border-collapse: collapse; + } + td { + border: 1px solid gray; + } + } + } +} +#modalId { + z-index: 2; +} +#queryone{ + .u-modal-dialog .u-modal-content .u-modal-body .getAssDatas{ + width:100%; + .u-checkbox{ + margin: 0 !important; + } + } + // z-index: 2 !important; + display: flex; + &.footer-hidden .u-modal-body { + margin: 9px 27px 0 42px !important; + height: 111px !important; + } + // .u-modal-header { + // border: none; + // } + .u-modal-dialog { + z-index: 1; + top: 2%; + //left: 5%; + // width: 800px; + height: auto; + // margin: -100px 0 0 -208px; + justify-content: center; + align-items: center; + .u-modal-content { + padding: 21px 19px 10px 37px; + box-shadow: 0 1px 5px 2px rgba(0, 0, 0, .2) !important; + border: none !important; + .u-modal-title { + .title-icon { + display: inline-block; + font-size: 22px; + margin-right: 20px; + position: relative; + top: 3px; + } + .bd-title-1 { + margin: 0; + } + .close-icon { + position: absolute; + top: 16px; + right: 13px; + font-size: 14px; + color: #bdbdbd; + } + } + + .u-modal-body { + //overflow: hidden; + font-size: 13px; + color: #666; + width: 100%; + height: 100%; + .u-form-item { + min-height: 40px !important; + } + .u-checkbox { + width: 80px; + } + .u-table { + // border: 1px solid #ccc; + } + } + } + } + .dateMargin .u-label { + padding: 0px 15px; + width: 140px; + } + .labelMargin .u-label { + width: 0 !important; + } + .u-input-after { + border: none !important; + background: none !important; + } + .checkboxStyle { + .u-label { + display: none; + } + .u-checkbox .u-checkbox-label { + width: 150px; + // height: 20px; + // line-height: 20px; + } + } + +} +.account-content1 .account-content1-credit .account-content1-credit-tit { + padding-left: 0; +} +#credit_title { + padding: 0 4px; + width: auto; + height: 20px; + background: rgba(255, 235, 220, 1); + border-radius: 2px; + font-size: 13px; + font-family: MicrosoftYaHei; + color: rgba(141, 112, 65, 1); + line-height: 20px; + text-align: center; + position: absolute; + top: -3px; +} +// .iconfont:nth-of-type(4) { +// position: absolute; +// top: -6px; +// } +#lender_title { + padding: 0 4px; + position: absolute; + top: -3px; + width: auto; + height: 20px; + background: rgba(220, 234, 255, 1); + border-radius: 2px; + font-size: 13px; + font-family: MicrosoftYaHei; + color: rgba(0, 122, 206, 1); + line-height: 20px; + text-align: center; +} +.content { + // background: rgba(255, 255, 255, 1); + //box-shadow: 0px 1px 4px 2px rgba(234, 234, 234, 1); + // border-radius: 2px; + // .head { + // height: 54px; + // border-bottom: 1px solid rgba(208, 208, 208, 1); + // } + .header .header-search-area { + flex: 1; + } + .title-search-container { + display: flex; + .title-search-item { + display: flex; + align-items: center; + .title-search-item-lable { + min-width: 65px; + } + .title-search-item-info { + display: -webkit-box; + overflow: hidden; + text-overflow: ellipsis; + -webkit-line-clamp: 2; + line-clamp: 2; + -webkit-box-orient: vertical; + width: 120px; + flex: 1; + } + } + .margin-r10 { + margin-right: 10px; + } + } + .row { + height: 1px; + background: rgba(208, 208, 208, 1); + } + // .title { + // height: 54px; + // font-size: 16px !important; + // font-family: MicrosoftYaHei; + // color: #111111; + // margin-left: 20px; + // float: left; + // line-height: 54px; + // display: flex; + // -webkit-box-align: center; + // -ms-flex-align: center; + // align-items: center; + // line-height: 27px; + // width: 178px; + // } + // .button-app-wrapper { + // //按钮样式 + // line-height: 63px; + // margin-right: 20px; + // float: right !important; + // height: 30px; + // font-size: 13px; + // font-family: MicrosoftYaHei; + // color: rgba(85, 85, 85, 1); + // line-height: 52px; + // .refresh-component { + // height: 30px; + // width: 30px !important; + // } + // } + + .account-content1-credit-tit { + //借方抬头 + border: none !important; + .account-content1-credit-tit-title { + float: left; + width: 48px; + height: 14px; + font-size: 14px; + font-family: MicrosoftYaHei; + color: rgba(17, 17, 17, 1); + line-height: 13px; + margin-left: 20px; + margin-top: 13px !important; + } + } +} + +.head .button-app-wrapper .refresh-component { + min-width: 30px !important; + padding: 0; +} +#query_body { + .u-form-control-wrapper{height:28px;} + .head{ + .button-app-wrapper.header_buttons-button-app-wrapper{ + .divider-button-wrapper{ + .sawadika{ + .hover-divider-btn-left-wrapper{ + z-index: 2 !important; + } + } + } + } + } + .u-table-body { + min-height: calc(~"(100vh - 298px)/2") !important; + max-height: calc(~"(100vh - 298px)/2") !important; + } + &.vertical{ + .u-table-body { + // height: 440px !important; + //min-height: 430px !important; + // max-height: 440px !important; + min-height: calc(~"100vh - 280px") !important; + max-height: calc(~"100vh - 280px") !important; + } + } + input { + padding: 0 8px; + } + .account-content1 ul li { + float: left; + height: 40px; + line-height: 40px; + div{ + display:inline-block; + margin-top: -3px + } + } + .account-content1 .account-content1-credit { + border-bottom: 1px solid #d0d0d0; + border-right: 1px solid #d0d0d0; + } + .u-table-body{ + &::-webkit-scrollbar-button{ + display: none; + } + } + //切换布局样式 + + .bottom-foot{ + // display: flex; + height: 92px; + background: #fff; + .footerleft{ + box-sizing: border-box; + border-right: 1px solid #d0d0d0; + } + > div{ + width: 50%; + display: inline-block; + .account-content1-credit-foot-first{ + height: 50px; + margin-left: 37px; + line-height: 50px; + li{ + text-align: right; + margin-right: 14px; + min-width: 78px; + margin-top: 5px; + input{ + width:140px; + // height:30px; + // background:rgba(255,255,255,1); + border-radius:3px; + // border:1px solid rgba(208,208,208,1); + } + } + + li:nth-oy-type(1){ + font-size:13px; + font-family:MicrosoftYaHei; + color:rgba(17,17,17,1); + } + li:nth-oy-type(2),li:nth-oy-type(3){ + font-size:13px; + font-family:PingFangSC-Regular; + font-weight:400; + color:rgba(85,85,85,1); + } + } + .account-content1-credit-foot-secend{ + height: 40px; + margin-left: 37px; + li{ + text-align: right; + margin-right: 14px; + min-width: 78px; + input{ + width:140px; + // height:30px; + // background:rgba(255,255,255,1); + border-radius:3px; + // border:1px solid rgba(208,208,208,1); + } + } + li:nth-oy-type(1){ + font-size:13px; + font-family:MicrosoftYaHei; + color:rgba(17,17,17,1); + } + li:nth-oy-type(2),li:nth-oy-type(3){ + font-size:13px; + font-family:PingFangSC-Regular; + font-weight:400; + color:rgba(85,85,85,1); + } + } + } + } + // .account-content1{ + // height: calc(~"100% - 70px"); + // .u-row{ + // height: calc(~"100% - 92px"); + // } + // } +} + + + + +#query_body{ + .u-table-footer{ + padding: 0 !important; + } + .u-table-body { + overflow: hidden; + &:hover { + overflow: auto; + } + &::-webkit-scrollbar { + /*滚动条整体部分,其中的属性有width,height,background,border等(就和一个块级元素一样)(位置1)*/ + width: 4px; + height: 4px; + } + &::-webkit-scrollbar-button { + /*滚动条两端的按钮,可以用display:none让其不显示,也可以添加背景图片,颜色改变显示效果(位置2)*/ + // background:#74D334; + display: none; + } + &::-webkit-scrollbar-track { + /*外层轨道,可以用display:none让其不显示,也可以添加背景图片,颜色改变显示效果(位置3)*/ + // background:#FF66D5; + display: none; + } + &::-webkit-scrollbar-track-piece { + /*内层轨道,滚动条中间部分(位置4)*/ + // background:#FF66D5; + display: none; + } + &::-webkit-scrollbar-thumb { + /*滚动条里面可以拖动的那部分(位置5)*/ + // background:#FFA711; + border-radius: 4px; + background: #c1c1c1; + } + // &::-webkit-scrollbar-corner { + // /*边角(位置6)*/ + // background:#82AFFF; + // } + &::-webkit-scrollbar-resizer { + /*定义右下角拖动块的样式(位置7)*/ + // background:#FF0BEE; + // background: transparent; + display: none; + } + // { + // scrollbar-arrow-color: #f4ae21; /**//*三角箭头的颜色*/ + // scrollbar-face-color: #333; /**//*立体滚动条的颜色*/ + // scrollbar-3dlight-color: #666; /**//*立体滚动条亮边的颜色*/ + // scrollbar-highlight-color: #666; /**//*滚动条空白部分的颜色*/ + // scrollbar-shadow-color: #999; /**//*立体滚动条阴影的颜色*/ + // scrollbar-darkshadow-color: #666; /**//*立体滚动条强阴影的颜色*/ + // scrollbar-track-color: #666; /**//*立体滚动条背景颜色*/ + // scrollbar-base-color:#f8f8f8; /**//*滚动条的基本颜色*/ + // } + } + + + +} + +#query_body{ + .nc-table-header-scroll .u-table-content .u-table-scroll .u-table-header{ + overflow: hidden !important; + } + #credit,#lender{ + .u-table-thead{ + tr{ + th{ + // border-right: 1px solid rgba(205,205,205,1); + text-align: center !important; + } + } + } + + //金额右对齐 + .yeson{ + text-align: right; + } + + } + .buttons{ + position: absolute; + right: 30px; + // line-height: 54px; + top:24px; + } +} +#query_body{ + .u-table-thead{ + .u-checkbox-label{ + padding-left: 0 !important; + } + } +} +@media screen and (max-width: 1280px) { + #query_body .account-content1 .account-content1-credit .account-content1-credit-tit .account-content1-credit-foot ul:nth-of-type(2) { + margin-right: 20px; + margin-left: 80px; + } +} diff --git a/src/gl/verify/verify/vrify/queryModal/querymodal.js b/src/gl/verify/verify/vrify/queryModal/querymodal.js new file mode 100644 index 0000000..2cc19cc --- /dev/null +++ b/src/gl/verify/verify/vrify/queryModal/querymodal.js @@ -0,0 +1,1402 @@ +/*bUd6j32gDOqGz4ZuopC5zxfEJaQ5jTVUffm4Tj30IuI=*/ +import React, { Component } from 'react'; +import {high,base,ajax,getBusinessInfo,deepClone,getMultiLang, promptBox } from 'nc-lightapp-front'; +import { CheckboxItem,RadioItem,TextAreaItem,ReferItem,SelectItem,InputItem,DateTimePickerItem} from '../../../../public/components/FormItems'; +const { Refer} = high; +import { toast } from '../../../../public/components/utils.js'; +import createScript from '../../../../public/components/uapRefer.js'; +const { NCFormControl: FormControl, NCDatePicker: DatePicker, NCButton: Button, NCRadio: Radio, NCBreadcrumb: Breadcrumb, + NCRow: Row, NCCol: Col, NCTree: Tree, NCIcon: Icon, NCLoading: Loading, NCTable: Table, NCSelect: Select, + NCCheckbox: Checkbox, NCNumber, AutoComplete, NCDropdown: Dropdown, NCPanel: Panel,NCModal:Modal,NCForm,NCDiv +} = base; +import getAssDatas from "../../../../public/components/getAssDatas/index.js"; +import checkMustItem from "../../../../public/common/checkMustItem.js"; +const { NCFormItem:FormItem } = NCForm; +const config={ + "isDataPowerEnable":'Y', + "DataPowerOperationCode":'fi' +}; + + const defaultProps12 = { + prefixCls: "bee-table", + multiSelect: { + type: "checkbox", + param: "key" + } + }; + + +export default class SearchModal extends Component { + constructor(props) { + super(props); + this.state = { + json:{}, + assidCondition :{ + pk_accountingbook:'',// '1001A3100000000000PE', + pk_accasoa:'',// '0001Z0100000000001BD', + prepareddate:'',// '2018-07-18', + pk_org:'',// '0001A310000000000NN6', + assData:[],// assData, + assid: "",//'0001Z31000000006G5A9', + checkboxShow: true + },//辅助核算组件需要的参数 + json:{}, + showModal:false, + isShowUnit:false,//是否显示业务单元 + mnyScale:'2',//核销范围精度 + scale:'2',//原币精度 + orgscale:'2',//组织本币精度 + groupscale:'2',//集团本币币种精度 + globalscale:'2',//全局本币币种精度 + NC001:false,//集团本币 false不显示 + NC002:false,//全局本币 + cashtype:'',//是否是银行类科目 2的时候是 + isCrossAccountVerify:false,//是否只有末级可选 + assData: [//辅助核算信息 + ], + childAssData: { + accountingbook_org:'',//保存账簿对应的组织 + pk_org: '', + pk_accountingbook: '' + },//接受父组件传过来的参数 + modalDefaultValue:{},//默认数据 + SelectedAssData:[],//选中的数据 + loadData:[],//查询模板加载数据 + listItem:{},//模板数据对应值 + checkedAll:true, + checkedArray: [], + }; + this.close = this.close.bind(this); + } + componentWillReceiveProps (nextProp) { + let {loadData,showOrHide,modalDefaultValue}=nextProp;//this.props; + let self=this; + let { listItem,showModal,isShowUnit,childAssData,isCrossAccountVerify,assData,checkedArray, + scale,orgscale,groupscale,globalscale,NC001,NC002 }=self.state; + if (showOrHide&&nextProp.loadData !== this.state.loadData&&this.state.loadData.length==0 ) {//nextProp.loadData !== this.state.loadData + childAssData.pk_org=modalDefaultValue.pk_org; + childAssData.accountingbook_org=modalDefaultValue.pk_org; + isShowUnit=modalDefaultValue.isShowUnit; + isCrossAccountVerify=modalDefaultValue.isCrossAccountVerify; + scale=modalDefaultValue.scale; + orgscale=modalDefaultValue.orgscale; + groupscale=modalDefaultValue.groupscale; + globalscale=modalDefaultValue.globalscale; + NC001=modalDefaultValue.NC001; + NC002=modalDefaultValue.NC002; + assData=modalDefaultValue.ass; + assData.map((item,index)=>{ + item.key=index; + checkedArray.push(true); + }) + loadData.forEach((item,i)=>{ + let key; + if(item.itemType=='refer'){ + if(item.itemKey=='pk_units'){ + key=[{ + display:'', + value:'', + isMustItem:item.isMustItem, + itemName:item.itemName + }] + }else if(item.itemKey=='pk_accountingbook'){ + key={ + display:modalDefaultValue.pk_accountingbook.display, + value:modalDefaultValue.pk_accountingbook.value, + isMustItem:item.isMustItem, + itemName:item.itemName + } + }else if(item.itemKey=='pk_currency'){ + key={ + display:modalDefaultValue.pk_currency.display, + value:modalDefaultValue.pk_currency.value, + isMustItem:item.isMustItem, + itemName:item.itemName + } + }else{ + key={ + display:'', + value:'', + isMustItem:item.isMustItem, + itemName:item.itemName + } + } + }else if(item.itemType=='select'||item.itemType=='Dbselect'||item.itemType=='radio'){//下拉框赋初始值 + if(item.itemKey=='cmbDirect'){ + key={ + value:modalDefaultValue.cmbDirect + } + }else if(item.itemKey=='cmbMnyType'){ + key={ + value:modalDefaultValue.cmbMnyType ? modalDefaultValue.cmbMnyType : item.itemChild[0].value + } + }else{ + key={ + value:item.itemChild[0].value + } + } + + }else if(item.itemType=='checkbox'){ + item.itemChild[0].checked=modalDefaultValue.hasTally=='Y'?true:false; + key={ + value:modalDefaultValue.hasTally + } + }else{ + key={ + value:'' + } + if(item.itemType=='date'||item.itemType=='Dbdate'){ + if(item.itemKey=='begin_date'){ + key = { + value:modalDefaultValue.begindate + }; + }else if(item.itemKey=='end_date'){ + key = { + value:modalDefaultValue.bizDate + }; + }else{ + key = { + value: "" + }; + } + } + } + if(item.itemType=='Dbdate'||item.itemType=='DbtextInput'){ + item.itemKey.map((k,index)=>{ + let name= k; + listItem[name]=key + }); + }else{ + let name= item.itemKey; + listItem[name]=key + } + + }) + if(this.props.voucherVerifyflag=='0'){//及时核销 设置科目并且不可编辑 + listItem['pk_accasoa']=modalDefaultValue.pk_accasoa; + } + if(this.props.voucherVerifyflag=='0'){//及时核销 + listItem['begin_date']={value:''}; + listItem['end_date']={value:modalDefaultValue.enddate}; + }else{ + listItem['begin_date']={value:modalDefaultValue.begindate}; + listItem['end_date']={value:modalDefaultValue.bizDate}; + } + + listItem.account_currency=modalDefaultValue.account_currency; + listItem.pk_org = modalDefaultValue.pk_org; + self.setState({ + modalDefaultValue:modalDefaultValue, + loadData:loadData, + showModal:showOrHide,assData,checkedArray, + listItem,childAssData,isShowUnit,isCrossAccountVerify, + scale,orgscale,groupscale,globalscale,NC001,NC002 + }) + }else{ + self.setState({ + showModal:showOrHide,childAssData,isShowUnit + }) + } + } + shouldComponentUpdate(nextProps, nextState) { + if (!nextProps.showOrHide && (nextProps.showOrHide == this.props.showOrHide) && nextProps.loadData == this.state.loadData) { + return false; + } + return true; + } + //表格操作根据key寻找所对应行 + findByKey(key, rows) { + let rt = null; + let self = this; + rows.forEach(function(v, i, a) { + if (v.key == key) { + rt = v; + } + }); + return rt; + } + + close() { + this.props.handleClose(); + } + + confirm=()=>{ + let { listItem,assData,checkedArray,SelectedAssData,assidCondition } =this.state; + let businessInfo = getBusinessInfo(); + let currrentDate = businessInfo.businessDate.split(' ')[0]; + SelectedAssData=[]; + let checkStatus=checkMustItem(listItem);//必输项校验 + if(!checkStatus.flag){ + toast({content:checkStatus.info+this.state.json['20020VRIFYPAGE-000103']+'!',color:'warning'}); + return false; + } + if(listItem['end_date'].value>currrentDate){ + toast({content:this.state.json['20020VRIFYPAGE-000089'],color:'warning'});/* 国际化处理: 核销终止日期不能晚于登录日期*/ + return false; + } + for(var i = 0; i < checkedArray.length; i++){ + if(checkedArray[i]==true){ + SelectedAssData.push(assData[i]); + } + } + listItem.resourceAss=assData; + listItem.ass=SelectedAssData;//assData; + //TODO 校验辅助核算是否符合核销对象设置 + if(!this.isAssLegal(listItem, assData)){ + promptBox({ + color:'warning', + content:this.state.json["20020VRIFYPAGE-000105"],/* 辅助核算不符合核销对象设置! */ + noCancelBtn: true + }); + return; + } + + this.setState({ + assidCondition + },()=>{ + this.props.onConfirm(listItem); + }) + // this.props.onConfirm(listItem); + } + //判断核销对象是否严格控制 + isControlFun=(pk_accountingbook,pk_accasoa)=>{ + let self=this; + let {listItem}=self.state; + let isControl; + let url = '/nccloud/gl/verify/verifyobjinfo.do'; + let queryparam={ + 'pk_accountingbook':pk_accountingbook, + 'pk_accasoa':pk_accasoa + } + ajax({ + url:url, + data:queryparam, + success:function(response){ + const { success } = response; + if(success&&response.data){ + isControl=response.data.verifyobj.header.m_bcontrol;//是否严格控制 + listItem.isControlItems=[]; + if(response.data.verifyobj.items){ + response.data.verifyobj.items.map((item,index)=>{ + listItem.isControlItems.push(item.m_pk_subjass);//哪个辅助核算项严格控制 + }) + } + listItem.isControl=isControl; + listItem.endflag=response.data.account.endflag; + + self.setState({ + listItem + }) + } + }, + error:function(error){ + } + }) + } + + isAssLegal = (listItem, assVOs) =>{ + if(!listItem.isControl){ + return true; + } + let controllPks = listItem.isControlItems; + if(controllPks && controllPks.length > 0){ + if(!assVOs || assVOs.length <= 0){ + return false; + }else{ + let assVONum = assVOs.length; + for(var j = 0; j < controllPks.length; j++){ + let pk = controllPks[j]; + let i = 0; + for(i = 0; i{ + let self=this; + function getNowFormatDate() { + let date = new Date(); + let seperator1 = "-"; + let year = date.getFullYear(); + let month = date.getMonth() + 1; + let strDate = date.getDate(); + if (month >= 1 && month <= 9) { + month = "0" + month; + } + if (strDate >= 0 && strDate <= 9) { + strDate = "0" + strDate; + } + let currentdate = year + seperator1 + month + seperator1 + strDate; + return currentdate; + } + // let currrentDate = getNowFormatDate(); + let businessInfo = getBusinessInfo(); + let currrentDate = businessInfo.businessDate.split(' ')[0]; + const dateInputPlaceholder = this.state.json['20020VRIFYPAGE-000083'];/* 国际化处理: 选择日期*/ + let { listItem,isShowUnit,mnyScale,scale,orgscale,groupscale,globalscale,NC001,NC002,assData,checkedArray,isCrossAccountVerify,childAssData,assidCondition,modalDefaultValue } =self.state; + return data.length!=0?( + data.map((item, i) => { + switch (item.itemType) { + case 'refer': + let referUrl= item.config.refCode+'/index.js'; + let DBValue=[]; + let defaultValue={} + if(listItem[item.itemKey].length){ + listItem[item.itemKey].map((item,index)=>{ + DBValue[index]={ refname: item.display, refpk:item.value }; + }) + }else{ + defaultValue = { refname: listItem[item.itemKey].display, refpk: listItem[item.itemKey].value }; + } + //let defaultValue = { refname: listItem[item.itemKey].display, refpk: listItem[item.itemKey].value }; + if(!self.state[item.itemKey]){ + {createScript.call(self,referUrl,item.itemKey)} + return
+ }else{ + if(item.itemKey=='pk_accountingbook'){ + return( + + {self.state[item.itemKey]?(self.state[item.itemKey])( + { + fieldid:item.itemKey, + value:defaultValue, + isMultiSelectedEnabled:false, + showGroup:false, + disabled:(self.props.voucherVerifyflag=='0')?true:false, + disabledDataShow:true, + queryCondition:() => { + return Object.assign({ + "TreeRefActionExt":'nccloud.web.gl.ref.AccountBookRefSqlBuilder', + "appcode":modalDefaultValue.appcode + },config) + }, + onChange:(v)=>{ + if(v.refpk){ + //判断是否起用业务单元 + let url = '/nccloud/gl/voucher/queryBookCombineInfo.do'; + let pk_accpont = {"pk_accountingbook":v.refpk} + ajax({ + url:url, + data:pk_accpont, + success: function(response){ + const { success } = response; + //渲染已有账表数据遮罩 + if (success) { + if(response.data){ + isShowUnit=response.data.isShowUnit; + NC001=response.data.NC001; + NC002=response.data.NC002; + scale=response.data.scale;//原币精度 + orgscale=response.data.orgscale;//组织本币精度 + groupscale=response.data.groupscale;//集团本币币种精度 + globalscale=response.data.globalscale;//全局本币币种精度 + isCrossAccountVerify=response.data.isCrossAccountVerify; + + listItem.account_currency=response.data.currinfo.value; + listItem['pk_currency'].value = response.data.currinfo.value; + listItem['pk_currency'].display = response.data.currinfo.display; + listItem['begin_date']={value:response.data.begindate}; + listItem['end_date']={value:response.data.bizDate}; + listItem.pk_org=response.data.unit.value; + listItem.isCrossAccountVerify=isCrossAccountVerify;//是否跨末级 + listItem.isShowUnit=isShowUnit; + childAssData.pk_org = response.data.unit.value; + assidCondition.pk_org=response.data.unit.value; + childAssData.accountingbook_org=response.data.unit.value; + } + self.setState({ + isShowUnit,scale,orgscale,groupscale,globalscale,NC001,NC002,isCrossAccountVerify,assidCondition + }) + } + } + }); + } + assidCondition.pk_accountingbook=v.refpk; + listItem[item.itemKey].value = v.refpk; + listItem[item.itemKey].display = v.refname; + //清空科目,业务单元,辅助核算项 + listItem['pk_accasoa'].display=''; + listItem['pk_accasoa'].value=''; + listItem['pk_units']=[{display:'',value:''}]; + assData=[]; + this.setState({ + listItem,assidCondition,assData + }) + } + } + ):
} + ) + }else if(item.itemKey=='pk_accasoa'){ + return( + + {self.state[item.itemKey] ? ( + self.state[item.itemKey])( + { + fieldid:item.itemKey, + value:defaultValue, + onlyLeafCanSelect:!isCrossAccountVerify, + disabled:(self.props.voucherVerifyflag=='0')?true:false, + queryCondition:() => { + return Object.assign({ + "refName":item.itemName, + "pk_accountingbook": listItem.pk_accountingbook.value? listItem.pk_accountingbook.value:'', + "dateStr":currrentDate, + "TreeRefActionExt":'nccloud.web.gl.verify.action.VerifyObjectRefSqlBuilder' + + },config) + }, + onFocus:(v)=>{ + if(!listItem.pk_accountingbook.value){ + toast({content:this.state.json['20020VRIFYPAGE-000090'],color:'warning'});/* 国际化处理: 请先选择核算账簿,核算账簿不能为空*/ + return false; + } + }, + onChange:(v)=>{ + + //根据选定的pk 实现过滤 + if(item.itemKey!='pk_accountingbook'&&!listItem.pk_accountingbook.value){ + toast({ content: this.state.json['20020VRIFYPAGE-000091'], color: 'warning' });/* 国际化处理: 请先选择核算账簿*/ + return false + } + assData=[]; + checkedArray=[]; + if(v.refpk){ + self.isControlFun(listItem.pk_accountingbook.value,v.refpk); + //请求辅助核算数据 + let url = '/nccloud/gl/voucher/queryAssItem.do'; + let queryData = { + pk_accasoa: v.refpk, + prepareddate: currrentDate, + }; + ajax({ + url:url, + data:queryData, + success: function(response){ + const { success } = response; + //渲染已有账表数据遮罩 + if (success) { + if(response.data){ + response.data.map((item,index)=>{ + checkedArray.push(true); + let obj={ + key:index, + "checktypecode":item.code, + "checktypename" :item.name, + "pk_Checktype": item.pk_accassitem, + "refCode":item.refCode?item.refCode:item.code, + "refnodename":item.refnodename, + "pk_accassitem":item.pk_accassitem, + "pk_accountingbook":listItem.pk_accountingbook.value, + "classid": item.classid, + "pk_defdoclist": item.classid, + } + assData.push(obj); + }) + }else{ + assData=[]; + } + self.setState({ + assData,checkedArray + }) + } + } + }); + } + listItem.cashtype=v.cashtype?v.cashtype:(v.nodeData&&v.nodeData.cashtype?v.nodeData.cashtype:''); + listItem[item.itemKey].value = v.refpk; + listItem[item.itemKey].display = v.refname; + assidCondition.pk_accasoa=v.refpk; + assidCondition.prepareddate=currrentDate; + this.setState({ + listItem,assidCondition,assData,checkedArray + }) + } + } + ):
} + ) + }else if(item.itemKey=='pk_units'){ + if(isShowUnit){ + return( + + {self.state[item.itemKey]?(self.state[item.itemKey])( + { + fieldid:item.itemKey, + value:DBValue, + isMultiSelectedEnabled:true, + queryCondition:() => { + return Object.assign({ + "pk_accountingbook": listItem.pk_accountingbook.value, + "TreeRefActionExt": 'nccloud.web.gl.ref.GLBUVersionWithBookRefSqlBuilder' + },config) + }, + onChange:(v)=>{ + //根据选定的pk 实现过滤 + if(item.itemKey!='pk_accountingbook'&&!listItem.pk_accountingbook.value){ + toast({ content: this.state.json['20020VRIFYPAGE-000091'], color: 'warning' });/* 国际化处理: 请先选择核算账簿*/ + return false + } + // if(v.length<=0){return false;} + listItem[item.itemKey]=[]; + v.map((arr,index)=>{ + let accasoa={ + display:arr.refname, + value:arr.refpk + } + listItem[item.itemKey].push(accasoa); + }) + if(v[0]){ + listItem.pk_org=v[0].refpk; + childAssData.pk_org = v[0].refpk; + assidCondition.pk_org=v[0].refpk; + }else{ + listItem.pk_org=childAssData.accountingbook_org; + childAssData.pk_org =childAssData.accountingbook_org; + assidCondition.pk_org=childAssData.accountingbook_org; + } + //辅助核算项的值 + assData.map((item,index)=>{ + item.checkvaluename = null; + item.pk_Checkvalue = null; + item.checkvaluecode = null; + }) + // listItem[item.itemKey].value = v.refpk + // listItem[item.itemKey].display = v.refname + this.setState({ + listItem,assidCondition,assData + }) + } + } + ):
} + ) + }else{ + return(
) + } + + }else{ + return( + + {self.state[item.itemKey]?(self.state[item.itemKey])( + { + fieldid:item.itemKey, + value:defaultValue, + disabled:(self.props.voucherVerifyflag=='0')?true:false, + queryCondition:() => { + return Object.assign({ + //"pk_accountingbook": self.state.pk_accountingbook.value + },config) + }, + onChange:(v)=>{ + listItem[item.itemKey].value = v.refpk + listItem[item.itemKey].display = v.refname + this.setState({ + listItem + }) + } + } + ):
} + ) + } + } + break; + case 'date': + return ( + + { + listItem[item.itemKey].value = v; + this.setState({ + listItem + }) + }} + placeholder={dateInputPlaceholder} + /> + + ); + case'Dbdate': + return( + +  --  +
+ { + if(v>currrentDate){ + toast({content:this.state.json['20020VRIFYPAGE-000089'],color:'warning'});/* 国际化处理: 核销终止日期不能晚于登录日期*/ + } + listItem.end_date={value: v} + this.setState({ + listItem + }) + }} + placeholder={dateInputPlaceholder} + /> +
+ + } + > + { + listItem.begin_date={value: v} + this.setState({ + listItem + }) + }} + placeholder={dateInputPlaceholder} + /> +
+ ); + case 'textInput': + return ( + + { + listItem[item.itemKey].value = v + this.setState({ + listItem + }) + }} + /> + + ); + case 'DbtextInput': + return( +
+ +  --  +
+ { + listItem.mny_end={value : v} + this.setState({ + listItem + }) + }} + /> +
+ + } + > + { + listItem.mny_begin={value : v} + this.setState({ + listItem + }) + }} + /> +
+ + ); + case 'radio': + return( + + { + return (item.itemChild) + }} + onChange={(v)=>{ + listItem[item.itemKey].value = v + this.setState({ + listItem + }) + }} + /> + + ) + case 'select': + return( + + { + return item.itemChild; + } + } + onChange={(v)=>{ + listItem[item.itemKey].value = v + this.setState({ + listItem + }) + }} + /> + ) + case 'Dbselect': + let curreyArr=deepClone(item.itemChild); + if(item.itemKey=='cmbMnyType'){ + if(!NC001){ + curreyArr.map((list,index)=>{ + if(list.value=='2'){ + curreyArr.splice(index,1); + } + }) + } + if(!NC002){ + curreyArr.map((list,index)=>{ + if(list.value=='3'){ + curreyArr.splice(index,1); + } + }) + } + } + return( + + { + listItem.mny_begin={value : v} + this.setState({ + listItem + }) + }} + /> +  --  +
+ { + listItem.mny_end={value : v} + this.setState({ + listItem + }) + }} + /> +
+ + } + > + { + if(item.itemKey=='cmbMnyType'){ + return (curreyArr); + }else{ + return item.itemChild; + } + } + } + onChange={(v)=>{ + listItem[item.itemKey].value = v + if(v&&v=='0'){//原币 + mnyScale=scale; + }else if(v=='1'){//组织本币 + mnyScale=orgscale; + }else if(v=='2'){//集团本币 + mnyScale=groupscale; + }else if(v=='3'){//全局本币 + mnyScale=globalscale; + } + this.setState({ + listItem,mnyScale + }) + }} + /> +
) + case 'checkbox': + return( + + { + return (item.itemChild) + } + } + onChange={(v)=>{ + listItem[item.itemKey].value = (v[0].checked==true)?'Y':'N'; + this.setState({ + listItem + }) + }} + /> + + ) + default: + break; + } + }) + ):
; + + } + + + onAllCheckChange = () => { + let self = this; + let checkedArray = []; + let selIds = []; + for (var i = 0; i < self.state.checkedArray.length; i++) { + checkedArray[i] = !self.state.checkedAll; + } + self.setState({ + checkedAll: !self.state.checkedAll, + checkedArray: checkedArray, + }); + }; + onCheckboxChange = (text, record, index) => { + let self = this; + let allFlag = false; + let checkedArray = self.state.checkedArray.concat(); + checkedArray[index] = !self.state.checkedArray[index]; + for (var i = 0; i < self.state.checkedArray.length; i++) { + if (!checkedArray[i]) { + allFlag = false; + break; + } else { + allFlag = true; + } + } + self.setState({ + checkedAll: allFlag, + checkedArray: checkedArray, + }); + }; + + renderColumnsMultiSelect(columns) { + const {checkedArray } = this.state; + const { multiSelect } = this.props; + let select_column = {}; + let indeterminate_bool = false; + // let indeterminate_bool1 = true; + if (multiSelect && multiSelect.type === "checkbox") { + let i = checkedArray.length; + while(i--){ + if(checkedArray[i]){ + indeterminate_bool = true; + break; + } + } + let defaultColumns = [ + { + title:
{( + + )}
, + key: "checkbox", + dataIndex: "checkbox", + width: 50, + render: (text, record, index) => { + return (
+ +
+ ); + } + } + ]; + columns = defaultColumns.concat(columns); + } + return columns; + } + componentWillMount() { + + let callback= (json) =>{ + this.setState({json:json},()=>{}) + } + getMultiLang({moduleId:['20020VRIFYPAGE','publiccommon','publiccomponents'],domainName:'gl',currentLocale:'simpchn',callback}); +   } + render() { + let{showOrHide}=this.props; + let { loadData,assData,assidCondition,checkedAll,checkedArray,childAssData} =this.state; + let columns10 = [ + { + title: this.state.json['20020VRIFYPAGE-000004'],/* 国际化处理: 核算类型*/ + dataIndex: "checktypename", + key: "checktypename", + width: 140, + render: (text, record, index) => { + return {record.checktypename}; + } + }, + { + title: this.state.json['20020VRIFYPAGE-000005'],/* 国际化处理: 核算内容*/ + dataIndex: "checkvaluename", + key: "checkvaluename", + width: 140, + render: (text, record, index) => { + let { assData,childAssData } = this.state; + let defaultValue = []; + if (assData[index]["checkvaluename"]) { + assData[index]["checkvaluename"].split(",").map((item, _index) => { + defaultValue[_index] = { refname: item, refpk: "" }; + }); + assData[index]["pk_Checkvalue"].split(",").map((item, _index) => { + defaultValue[_index].refpk = item; + }); + } else { + defaultValue = [{ refname: "", refpk: "" }]; + } + if (record.refnodename) { + let referUrl = record.refnodename + '.js'; + if (!this.state[record.refnodename]) { + { createScript.call(this, referUrl, record.refnodename) } + return
+ } else { + if (record.classid == 'b26fa3cb-4087-4027-a3b6-c83ab2a086a9' || record.classid == '40d39c26-a2b6-4f16-a018-45664cac1a1f') {//部门,人员 + return ( + + {this.state[record.refnodename] ? + (this.state[record.refnodename])( + { + value: defaultValue, + isShowUnit: true, + unitProps: { + refType: 'tree', + refName: this.state.json['20020VRIFYPAGE-000017'],/* 国际化处理: 业务单元*/ + refCode: 'uapbd.refer.org.BusinessUnitTreeRef', + rootNode: { refname: this.state.json['20020VRIFYPAGE-000017'], refpk: 'root' },/* 国际化处理: 业务单元*/ + placeholder: this.state.json['20020VRIFYPAGE-000017'],/* 国际化处理: 业务单元*/ + queryTreeUrl: '/nccloud/uapbd/org/BusinessUnitTreeRef.do', + treeConfig: { name: [this.state.json['20020VRIFYPAGE-000084'], this.state.json['20020VRIFYPAGE-000085']], code: ['refcode', 'refname'] },/* 国际化处理: 编码,名称*/ + isMultiSelectedEnabled: false, + //unitProps:unitConf, + isShowUnit: false + }, + unitCondition:{ + pk_financeorg:childAssData.pk_org, + 'TreeRefActionExt':'nccloud.web.gl.ref.OrgRelationFilterRefSqlBuilder' + }, + isMultiSelectedEnabled: true, + "unitValueIsNeeded":false, + "isShowDimission":true, + queryCondition: () => { + config.isShowDimission=true; + return Object.assign({ + "busifuncode": "all", + "pk_org": childAssData.pk_org + },config) + }, + onChange: (v) => { + let { assData } = this.state; + let originData = this.findByKey(record.key, assData); + let refnameArr = [], refpkArr = [], refcodeArr = []; + if (originData) { + v.map((arr, index) => { + refnameArr.push(arr.refname); + refpkArr.push(arr.refpk); + refcodeArr.push(arr.refcode); + + }) + originData.checkvaluename = (v.length>0)?refnameArr.join():null; + originData.pk_Checkvalue = (v.length>0)?refpkArr.join():null; + originData.checkvaluecode = (v.length>0)?refcodeArr.join():null; + } + childAssData.assData = assData; + this.setState({ + assData, childAssData + }) + } + }) :
} + ); + } else { + return ( + + {this.state[record.refnodename] ? (this.state[record.refnodename])( + { + value: defaultValue, + isMultiSelectedEnabled: true, + queryCondition: () => { + if (record.classid && record.classid.length == 20) {//classid的长度等于20的话过滤条件再加一个pk_defdoclist + return Object.assign({ + "pk_org": childAssData.pk_org, + "pk_defdoclist": record.pk_defdoclist + },config) + } else { + return Object.assign({ + "pk_org": childAssData.pk_org + },config) + } + }, + onChange: (v) => { + let { assData } = this.state; + let originData = this.findByKey(record.key, assData); + let refnameArr = [], refpkArr = [], refcodeArr = []; + if (originData) { + v.map((arr, index) => { + refnameArr.push(arr.refname); + refpkArr.push(arr.refpk); + refcodeArr.push(arr.refcode); + + }) + originData.checkvaluename = (v.length>0)?refnameArr.join():null; + originData.pk_Checkvalue = (v.length>0)?refpkArr.join():null; + originData.checkvaluecode = (v.length>0)?refcodeArr.join():null; + } + childAssData.assData = assData; + this.setState({ + assData, childAssData + }) + } + }) :
} + ); + } + } + } else {//不是参照的话要区分日期、字符、数值 + if (record.classid == 'BS000010000100001033') {//日期 + return ( + { + let { assData } = this.state; + let originData = this.findByKey(record.key, assData); + if (originData) { + let assArr = []; + assArr.push(v); + originData.checkvaluename = v?assArr.join():null; + originData.pk_Checkvalue = v?assArr.join():null; + originData.checkvaluecode = v?assArr.join():null; + } + childAssData.assData = assData; + this.setState({ + assData, childAssData + }) + }} + + /> + ) + } else if (record.classid == 'BS000010000100001031') {//数值 + return ( + { + let { assData } = this.state; + let originData = this.findByKey(record.key, assData); + if (originData) { + let assArr = []; + assArr.push(v); + originData.checkvaluename = v?assArr.join():null; + originData.pk_Checkvalue = v?assArr.join():null; + originData.checkvaluecode = v?assArr.join():null; + } + childAssData.assData = assData; + this.setState({ + assData, childAssData + }) + }} + /> + ) + } else if (record.classid == 'BS000010000100001032') {//布尔 + return ( + + { + return ([{ + label: this.state.json['20020VRIFYPAGE-000087'],/* 国际化处理: 是*/ + value: 'Y' + }, { + label: this.state.json['20020VRIFYPAGE-000088'],/* 国际化处理: 否*/ + value: 'N' + }]) + } + } + onChange={(v) => { + let { assData } = this.state; + let originData = this.findByKey(record.key, assData); + if (originData) { + let assArr = []; + assArr.push(v); + originData.checkvaluename = v?assArr.join():null; + originData.pk_Checkvalue = v?assArr.join():null; + originData.checkvaluecode = v?assArr.join():null; + } + childAssData.assData = assData; + this.setState({ + assData, childAssData + }) + }} + /> + + ) + } else {//字符 + return ( + { + let { assData } = this.state; + let originData = this.findByKey(record.key, assData); + if (originData) { + let assArr = []; + assArr.push(v); + originData.checkvaluename = v?assArr.join():null; + originData.pk_Checkvalue = v?assArr.join():null; + originData.checkvaluecode = v?assArr.join():null; + } + childAssData.assData = assData; + this.setState({ + assData, childAssData + }) + }} + /> + ) + } + + } + } + } + ]; + assidCondition.assData=assData; + let columnsldad = this.renderColumnsMultiSelect(columns10); + let pretentAssData={ + assData: assData||[], + childAssData:childAssData||[], + // accountingbook_org: '',//保存账簿对应的组织 + // pk_org:childAssData.pk_org, + // pk_accountingbook: '', + checkboxShow: true,//是否显示复选框 + showOrHide:true, + checkedAll:checkedAll,//全选复选框的选中状态 + checkedArray:checkedArray||[],//复选框选中情况 + $_this:this + }; + const emptyFunc = () => {this.state.json['20020VRIFYPAGE-000094']}!/* 国际化处理: 这里没有数据*/ + return ( +
+ + + {this.state.json['20020VRIFYPAGE-000095']}{/* 国际化处理: 核销查询*/} + + + + + {loadData.length > 0 ? this.queryList(loadData) : ''} + + +
+ {getAssDatas({pretentAssData})} +
+ +
+ + {/* 国际化处理: 查询*/} + {/* 国际化处理: 取消*/} + +
+
+ ) + } +} +SearchModal.defaultProps = defaultProps12; + +/*bUd6j32gDOqGz4ZuopC5zxfEJaQ5jTVUffm4Tj30IuI=*/ \ No newline at end of file diff --git a/src/gl/verify/verify/vrify/router.js b/src/gl/verify/verify/vrify/router.js new file mode 100644 index 0000000..a4ead96 --- /dev/null +++ b/src/gl/verify/verify/vrify/router.js @@ -0,0 +1,24 @@ +/*PtRJtOyZvsGRUspOX8ak2OyWsna/vJjNkztFjiX3ZYQ=*/ +import {asyncComponent} from 'nc-lightapp-front'; +//import Home from 'pages/so/home'; +// import Verify from 'gl_front/verify/verify/vrify/exportVrify'; +// import VrifyHistory from 'gl_front/verify/historyquery/list'; +import Verify from './exportVrify.js'; +//const Verify = asyncComponent(() => import(/* webpackChunkName: "gl_front/verify/verify/vrify/home" */'./exportVrify.js')); +const VrifyHistory = asyncComponent(() => import(/* webpackChunkName: "gl/verify/verify/vrify/apphome" */'../../historyquery/list/index.js')); + +const routes = [ + { + path: '/', + component: Verify, + exact: true, + }, + { + path: '/VrifyHistory', + component: VrifyHistory, + } +]; + +export default routes; + +/*PtRJtOyZvsGRUspOX8ak2OyWsna/vJjNkztFjiX3ZYQ=*/ \ No newline at end of file diff --git a/src/gl/verify/verify/vrify/search.less b/src/gl/verify/verify/vrify/search.less new file mode 100644 index 0000000..28d3e55 --- /dev/null +++ b/src/gl/verify/verify/vrify/search.less @@ -0,0 +1,303 @@ + + + #queryone{ + .u-modal-dialog .u-modal-content .u-modal-body .u-checkbox { + margin-left: 15px !important; + } + .u-modal-dialog .u-modal-content .u-modal-body .getAssDatas{ + width:100%; + .u-checkbox{ + margin: 0 !important; + } + } + .u-modal-dialog{ + .u-modal-body{ + .u-table{ + .u-table-content{ + .u-table-body{ + .u-table-tbody{ + tr{ + td:nth-of-type(3){ + .u-form-item.u-form-inline{ + .u-input-group-outer{ + .u-input-group{ + .u-input-inner{ + .u-col-xs-12 { + ul{ + li{ + span{ + width: 168px !important; + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + + .u-modal-content{ + overflow: visible !important; + padding: 0 !important; + + // background:rgba(255,255,255,1); + box-shadow:0px 1px 1px 0px rgba(74,81,93,0.1); + border-radius:3px; + .u-modal-body{ + .u-table-thead tr{ + border-top: none !important; + } + overflow-x: hidden; + .u-form { + .u-row{ + margin-left: 0 !important; + margin-right: 0 !important; + .u-col-md-2{ + padding-right: 0; + } + .labelMargin{ + width: 260px; + position: absolute; + // top: 176px; + // left: 40%; + &>div{ + display: inline-block; + } + } + .number-formcontrol{ + width: 100px; + } + .refer-wrapper .refer{ + width: 180px; + height:30px; + // background:rgba(255,255,255,1); + // border:1px solid rgba(208,208,208,1); + } + .u-label{ + font-size: 13px; + } + .datepicker-input-group{ + width: 180px; + } + + .u-radio-label{ + padding-left: 18px; + } + } + } + } + } +.refer-pop-window .refer-popover .refer-bottom{ + padding: 0; +} +.nc-modal.u-modal{ + padding-top: 0; +} +.refer-pop-window .refer-popover .refer-header .refer-title { + height:14px; + font-size:14px; + font-family:PingFangHK-Medium; + font-weight:500; + color:rgba(17,17,17,1); + line-height:14px; +} +.refer-pop-window .refer-popover .refer-header{ + margin-bottom: 14px; +} +.refer-pop-window .refer-popover .loading-container { + padding-left: 20px; + padding-right: 20px; +} +.u-form-control-wrapper .u-button{ + min-width: 60px !important; + height: 30px; +} +.refer-tree .u-form-control-wrapper{ + margin-bottom: 8px; +} +.refer-tree .u-button{ + min-width: 60px; + background:rgba(225,76,70,1); + border-radius:3px; +} +.refer-tree .u-radio-group{ + margin-top: 8px; +} + +.nc-modal.u-modal .u-modal-dialog .u-modal-content .u-modal-body{ + overflow-x:hidden; +} + +.u-form .u-form-item.u-form-inline .u-input-group{ + width: 470px; +} +.u-table-placeholder{ + border-bottom: none; +} +.u-select-focused .u-select-selection, + .u-select-selection:active, + .u-select-selection:focus { + border-color: #999; + } +.nc-input:nth-last-of-type(4) .iconfont{ + position: absolute; + top: -6px; +} +.u-form-error.show { + display: block; + position: absolute; + right: -8px; + top: 23px; +} +.u-col-md-8{//币种后的输入框对齐 + // margin-top: -40px; +} +.u-input-after{ + line-height: 22px; +} +.refer-wrapper .refer {//去掉过度动画 + transition:all 0s !important; +} +.u-col-xs-12{ + transition:all 0s !important; + padding-left: 0; +} +} + + + + + #autoquery{ + .u-modal-dialog{ + .u-modal-body{ + .u-table{ + .u-table-content{ + .u-table-body{ + .u-table-tbody{ + tr{ + td:nth-of-type(3){ + .u-form-item.u-form-inline{ + .u-input-group-outer{ + .u-input-group{ + .u-input-inner{ + .u-col-xs-12 { + ul{ + li{ + span{ + width: 168px !important; + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + @media screen and (min-width: 992px) { + .u-col-md-2 { + width: 18.66667%; + } + } + .u-modal-content{ + overflow: visible !important; + padding: 0 !important; + .u-modal-body{ + padding-top: 0 !important; + overflow-x: hidden; + // padding-left: 20px; + .u-form .u-form-item.u-form-inline{ + min-height: 40px !important; + } + .u-table-content{ + .u-table-tbody{ + .u-form-item{ + min-height: 40px !important; + padding-top: 5px; + } + } + } + .u-form { + .u-row{ + .checkboxStyle:first-child{ + height: 0 !important; + &>div:first-child{ + height: 0 !important; + } + } + .checkboxStyle:nth-of-type(3){ + &>div:first-child{ + height: 40px !important; + } + } + .checkboxStyle:nth-of-type(4){ + &>div:first-child{ + height: 40px !important; + } + } + .checkboxStyle:nth-of-type(5){ + &>div:first-child{ + height: 40px !important; + } + } + .checkboxStyle:nth-of-type(6){ + &>div:first-child{ + height: 40px !important; + } + } + .checkboxStyle:nth-of-type(2){ + &>div:first-child{ + height: 40px !important; + } + } + .checkboxStyle:nth-of-type(7){ + &>div:first-child{ + height: 40px !important; + } + } + .u-form-item.checkboxStyle-item.u-form-inline{ + min-height: 40px !important; + } + .u-col-md-4.u-col-sm-4.u-col-xs-4{ + width: 580px; + .u-checkbox-label{ + width: 124px !important; + } + } + } + } + } + .u-modal-footer { + height:45px; + .u-button{ + height: 30px !important; + min-width: 60px !important; + line-height: 30px; + } + } + } + } + #queryone .u-modal-content .u-modal-body .u-form .u-row .u-label{ + font-size: 13px; + display: flex; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + height: 40px; + line-height: 20px; + } \ No newline at end of file diff --git a/src/gl/verify/verify/vrify/searchpublic.less b/src/gl/verify/verify/vrify/searchpublic.less new file mode 100644 index 0000000..e69de29 diff --git a/src/gl/verify/verify/vrify/verifyStandardModal/verifyStandardModal.js b/src/gl/verify/verify/vrify/verifyStandardModal/verifyStandardModal.js new file mode 100644 index 0000000..bb97a74 --- /dev/null +++ b/src/gl/verify/verify/vrify/verifyStandardModal/verifyStandardModal.js @@ -0,0 +1,1135 @@ +/*PRFvqOe59TMTt90TRM50p0nasZ6oWkzeAS3QDBQf0GM=*/ +import React, { Component } from 'react'; +import {high,base,ajax,deepClone,getMultiLang} from 'nc-lightapp-front'; +// import moment from 'moment'; +// import zhCN from 'rc-calendar/lib/locale/zh_CN'; +import { CheckboxItem,RadioItem,TextAreaItem,ReferItem,SelectItem,InputItem,DateTimePickerItem} from '../../../../public/components/FormItems'; +const { Refer} = high; +import { toast } from '../../../../public/components/utils.js'; +import createScript from '../../../../public/components/uapRefer.js'; +// const format = 'YYYY-MM-DD'; +const { NCFormControl: FormControl, NCDatePicker: DatePicker, NCButton: Button, NCRadio: Radio, NCBreadcrumb: Breadcrumb, + NCRow: Row, NCCol: Col, NCTree: Tree, NCIcon: Icon, NCLoading: Loading, NCTable: Table, NCSelect: Select, + NCCheckbox: Checkbox, NCNumber, AutoComplete, NCDropdown: Dropdown, NCPanel: Panel,NCModal:Modal,NCForm,NCDiv +} = base; +import '../index.less' +//import GetAssidData from '../events/GetAssidData'; +import getAssDatas from "../../../../public/components/getAssDatas/index.js"; +const { NCFormItem:FormItem } = NCForm; + +// const dateInputPlaceholder = this.state.json['20020VRIFYPAGE-000083'];/* 国际化处理: 选择日期*/ + + + const defaultProps12 = { + prefixCls: "bee-table", + multiSelect: { + type: "checkbox", + param: "key" + } + }; + + +export default class VerifyStandardModal extends Component { + constructor(props) { + super(props); + this.state = { + showModal:false, + isShowUnit:false,//是否显示业务单元 + assData: [//辅助核算信息 + ], + condition:[],//存储父组件传过来的查询条件 + childAssData:[], + loadData:[],//查询模板加载数据 + listItem:{},//模板数据对应值 + SelectedAssData:[],//选中的数据 + checkedAll:true, + checkedArray: [ + // false, + // false, + // false, + ], + controlCondition:{//控制是否可编辑性的条件 + dateRangeDisabled:true,//默认不可编辑 + isCrossAccountVerify:false,//是否跨末级 + issPk_accsubjShow:false,//是否显示按末级科目 + sVerifyNoChecked:true,//默认勾选按核销号 不可编辑 + sPk_accsubjChecked:true,//默认勾按末级科目不可编辑 + sAssChecked:true,//默认勾选按辅助项不可编辑 + sPk_unitChecked:true//默认勾选业务单元可编辑 + }, + json:{} + // columns10:this.columns10 + }; + this.close = this.close.bind(this); + } + componentWillMount() { + + let callback= (json) =>{ + this.setState({json:json},()=>{}) + } + getMultiLang({moduleId:['20020VRIFYPAGE','publiccomponents'],domainName:'gl',currentLocale:'simpchn',callback}); +   } + componentWillReceiveProps (nextProp) { + let self=this; + let {loadData,showOrHide,queryCondition}=nextProp; + let { listItem,showModal,assData,checkedArray,checkedAll,condition,controlCondition,childAssData }=self.state; + checkedArray=[]; + let currentLoadData=deepClone(loadData); + let ass=queryCondition.resourceAss; + condition=queryCondition; + childAssData=queryCondition + if(ass){ + ass.map((item,index)=>{ + item.key=index; + if(queryCondition.isControlItems&&queryCondition.isControlItems.length>0&&queryCondition.isControlItems.indexOf(item.pk_accassitem)>-1){ + checkedArray.push(true); + }else{ + checkedArray.push(false); + } + }) + } + if(queryCondition.endflag){//是否末级 默认勾选不可编辑 + controlCondition.sPk_accsubjChecked=true; + }else{//非末级 + controlCondition.sPk_accsubjChecked=false; + } + if(queryCondition.isControl){//严格控制为true时 + controlCondition.sAssChecked=true; + }else{ + controlCondition.sAssChecked=false; + } + //控制辅助核算项严格控制的默认勾选且不可修改 + // for (var i = 0; i < checkedArray.length; i++) { + // checkedArray[i] = controlCondition.sAssChecked; + // } + checkedAll=controlCondition.sAssChecked; + // self.setState({ + // checkedArray,checkedAll + // }) + if (showOrHide) {//打开模态框 nextProp.loadData !== this.state.loadData&&queryCondition != self.state.condition + // condition=queryCondition; + currentLoadData.forEach((item,i)=>{ + let key; + if(item.itemType=='refer'){ + key={ + display:'', + value:'' + } + }else if(item.itemType=='checkbox'){ + if(item.itemKey=='sVerifyNo'){ + key={ + value:'Y' + } + }else if(item.itemKey=='sAss'){ + if(controlCondition.sAssChecked){ + item.itemChild[0].checked=true; + key={ + value:'Y' + } + }else{ + item.itemChild[0].checked=false; + key={ + value:'N' + } + } + + }else if(item.itemKey=='sPk_accsubj'){ + if(queryCondition.endflag){ + item.itemChild[0].checked=true; + key={ + value:'Y' + } + }else{ + item.itemChild[0].checked=false; + key={ + value:'N' + } + } + + }else if(item.itemKey=='sPk_unit'){ + if(condition.isShowUnit){ + key={value:'Y'} + }else{ + key={value:'N'} + } + + }else{ + key={ + value:'' + } + } + }else if(item.itemType=='textInput'){ + key={value:0} + }else{ + key={ + value:'' + } + if(item.itemType=='date'||item.itemType=='Dbdate'){ + key={ + //value:moment().format("YYYY-MM-DD") + value:'' + } + } + } + if(item.itemType=='Dbdate'||item.itemType=='DbtextInput'){ + item.itemKey.map((k,index)=>{ + let name= k; + listItem[name]=key + }); + }else{ + let name= item.itemKey; + listItem[name]=key + } + + }) + + self.setState({ + loadData:currentLoadData, + showModal:showOrHide, + assData:ass,controlCondition, + listItem,checkedArray,checkedAll,condition,childAssData + }) + }else{ + + self.setState({ + loadData:currentLoadData, + showModal:showOrHide,controlCondition, + assData:ass,condition,childAssData,checkedArray,checkedAll + }) + } + } + + //表格操作根据key寻找所对应行 + findByKey(key, rows) { + let rt = null; + let self = this; + rows.forEach(function(v, i, a) { + if (v.key == key) { + rt = v; + } + }); + return rt; + } + + close() { + this.props.handleClose(); + } + + confirm=()=>{ + let { listItem,assData,SelectedAssData,checkedArray } =this.state; + SelectedAssData=[]; + for(var i = 0; i < checkedArray.length; i++){ + if(checkedArray[i]==true){ + SelectedAssData.push(assData[i]); + } + } + listItem.ass=SelectedAssData;//assData; + this.props.onConfirm(deepClone(listItem)); + } + + queryList=(data)=>{ + let self=this; + const dateInputPlaceholder = this.state.json['20020VRIFYPAGE-000083'];/* 国际化处理: 选择日期*/ + let { listItem,isShowUnit,assData,checkedArray,checkedAll,condition,controlCondition } =self.state; + return data.length!=0?( + data.map((item, i) => { + switch (item.itemType) { + case 'date': + return ( + + { + listItem[item.itemKey].value = v; + this.setState({ + listItem + }) + }} + placeholder={dateInputPlaceholder} + /> + + ); + case'Dbdate': + return( + +
+ +  --  + { + listItem.end_date = { value: v } + this.setState({ + listItem + }) + }} + placeholder={dateInputPlaceholder} + /> + + } + > + { + listItem.begin_date={value: v} + this.setState({ + listItem + }) + }} + placeholder={dateInputPlaceholder} + /> + + + + ); + case 'textInput': + if(item.itemKey=='dateRange'){ + return ( + {this.state.json['20020VRIFYPAGE-000098']}}/* 国际化处理: 天内*/ + > + { + listItem[item.itemKey].value = v + this.setState({ + listItem + }) + }} + /> + + ); + }else{ + return ( + {this.state.json['20020VRIFYPAGE-000098']}}/* 国际化处理: 天内*/ + > + { + listItem[item.itemKey].value = v + this.setState({ + listItem + }) + }} + /> + + ); + } + case 'DbtextInput': + return( + + + +  --  + { + listItem.mny_end={value : v} + this.setState({ + listItem + }) + }} + /> + } + > + { + listItem.mny_begin={value : v} + this.setState({ + listItem + }) + }} + /> + + + ); + case 'radio': + return( + + { + return (item.itemChild) + }} + onChange={(v)=>{ + listItem[item.itemKey].value = v + this.setState({ + listItem + }) + }} + /> + + ) + case 'select': + return( + + { + return (item.itemChild) + } + } + onChange={(v)=>{ + + listItem[item.itemKey].value = v + this.setState({ + listItem + }) + }} + /> + ) + case 'checkbox': + if(item.itemKey=='sVerifyNo'){//按核销号 + return( + + { + return (item.itemChild) + } + } + onChange={(v)=>{ + + listItem[item.itemKey].value = (v[0].checked==true)?'Y':'N'; + this.setState({ + listItem,controlCondition + }) + }} + /> + + ) + + }else if(item.itemKey=='sPk_accsubj'){//按末级科目 + if(condition.isCrossAccountVerify){//末级 true 显示 + + return( + + { + return (item.itemChild) + } + } + onChange={(v)=>{ + + listItem[item.itemKey].value = (v[0].checked==true)?'Y':'N'; + this.setState({ + listItem + }) + }} + /> + + ) + }else{ + return(
) + } + + }else if(item.itemKey=='sPk_unit'){//按业务单元,启用二级核算单位的显示 + if(condition.isShowUnit){//是否显示 true 显示 + return( + + { + return (item.itemChild) + } + } + onChange={(v)=>{ + + listItem[item.itemKey].value = (v[0].checked==true)?'Y':'N'; + this.setState({ + listItem + }) + }} + /> + + ) + }else{ + return(
) + } + + }else if(item.itemKey=='sAss'){//按辅助项 + + return( + + { + return (item.itemChild) + } + } + onChange={(v)=>{ + + for (var i = 0; i + + ) + }else if(item.itemKey=='sDateRange'){//按日期范围 + return( + + { + return (item.itemChild) + } + } + onChange={(v)=>{ + controlCondition.dateRangeDisabled=!v[0].checked; + listItem[item.itemKey].value = (v[0].checked==true)?'Y':'N'; + this.setState({ + listItem,controlCondition + }) + }} + /> + + ) + }else{ + return( + + { + return (item.itemChild) + } + } + onChange={(v)=>{ + + listItem[item.itemKey].value = (v[0].checked==true)?'Y':'N'; + this.setState({ + listItem + }) + }} + /> + + ) + } + default: + break; + } + }) + ):
; + + } + + //全选 + onAllCheckChange = () => { + let self = this; + let {condition,assData,checkedArray}=self.state; + //let checkedArray = []; + for (var i = 0; i 0&&condition.isControlItems.indexOf(assData[i].pk_accassitem)>-1){//严格控制的辅助核算不让编辑 + checkedArray[i] = checkedArray[i]; + }else{ + checkedArray[i] = !self.state.checkedAll; + } + + } + self.setState({ + checkedAll: !self.state.checkedAll, + checkedArray + }); + }; + //单选 + onCheckboxChange = (text, record, index) => { + let self = this; + let {condition,assData}=self.state; + let allFlag = false; + let checkedArray = self.state.checkedArray.concat(); + checkedArray[index] = !self.state.checkedArray[index]; + if(condition.isControlItems&&condition.isControlItems.length>0&&condition.isControlItems.indexOf(assData[index].pk_accassitem)>-1){//严格控制的辅助核算不让编辑 + return false; + } + for (var i = 0; i < self.state.checkedArray.length; i++) { + if (!checkedArray[i]) { + allFlag = false; + break; + } else { + allFlag = true; + } + } + self.setState({ + checkedAll: allFlag, + checkedArray: checkedArray, + }); + }; + + renderColumnsMultiSelect(columns) { + const {checkedArray } = this.state; + const { multiSelect } = this.props; + let select_column = {}; + let indeterminate_bool = false; + // let indeterminate_bool1 = true; + if (multiSelect && multiSelect.type === "checkbox") { + let i = checkedArray.length; + while(i--){ + if(checkedArray[i]){ + indeterminate_bool = true; + break; + } + } + let defaultColumns = [ + { + title:
{( + + )}
, + key: "checkbox", + dataIndex: "checkbox", + width: "50", + render: (text, record, index) => { + return (
+ +
+ ); + } + } + ]; + columns = defaultColumns.concat(columns); + } + return columns; + } + + render() { + let{showOrHide,flag}=this.props; + let { loadData,assData,checkedAll,checkedArray,childAssData} =this.state; + let columns10 = [ + { + title: this.state.json['20020VRIFYPAGE-000004'],/* 国际化处理: 核算类型*/ + dataIndex: "checktypename", + key: "checktypename", + width: "200", + render: (text, record, index) => { + return {record.checktypename}; + } + }, + { + title: this.state.json['20020VRIFYPAGE-000005'],/* 国际化处理: 核算内容*/ + dataIndex: "checkvaluename", + key: "checkvaluename", + width: "300", + render: (text, record, index) => { + let { assData,condition } = this.state; + let defaultValue = []; + if (assData[index]["checkvaluename"]) { + assData[index]["checkvaluename"].split(",").map((item, _index) => { + defaultValue[_index] = { refname: item, refpk: "" }; + }); + assData[index]["pk_Checkvalue"].split(",").map((item, _index) => { + defaultValue[_index].refpk = item; + }); + } else { + defaultValue = [{ refname: "", refpk: "" }]; + } + if (record.refnodename) { + let referUrl = record.refnodename + '.js'; + if (!this.state[record.pk_accassitem]) { + { createScript.call(this, referUrl, record.pk_accassitem) } + return
+ } else { + if (record.classid == 'b26fa3cb-4087-4027-a3b6-c83ab2a086a9' || record.classid == '40d39c26-a2b6-4f16-a018-45664cac1a1f') {//部门,人员 + return ( + + {this.state[record.pk_accassitem] ? (this.state[record.pk_accassitem])( + { + value: defaultValue, + isShowUnit: true, + unitProps: { + refType: 'tree', + refName: this.state.json['20020VRIFYPAGE-000017'],/* 国际化处理: 业务单元*/ + refCode: 'uapbd.refer.org.BusinessUnitTreeRef', + rootNode: { refname: this.state.json['20020VRIFYPAGE-000017'], refpk: 'root' },/* 国际化处理: 业务单元*/ + placeholder: this.state.json['20020VRIFYPAGE-000017'],/* 国际化处理: 业务单元*/ + queryTreeUrl: '/nccloud/uapbd/org/BusinessUnitTreeRef.do', + treeConfig: { name: [this.state.json['20020VRIFYPAGE-000084'], this.state.json['20020VRIFYPAGE-000085']], code: ['refcode', 'refname'] },/* 国际化处理: 编码,名称*/ + isMultiSelectedEnabled: false, + //unitProps:unitConf, + isShowUnit: false + }, + unitCondition:{ + pk_financeorg:condition.pk_org, + 'TreeRefActionExt':'nccloud.web.gl.ref.OrgRelationFilterRefSqlBuilder' + }, + isMultiSelectedEnabled: true, + "unitValueIsNeeded":false, + "isShowDimission":true, + queryCondition: () => { + if (record.classid && record.classid.length == 20) {//classid的长度大于20的话过滤条件再加一个pk_defdoclist + return { + "pk_org": condition.pk_org, + "pk_defdoclist": record.pk_defdoclist + } + } else { + if (record.classid == '40d39c26-a2b6-4f16-a018-45664cac1a1f') {//人员 + return { + isShowDimission:true, + "busifuncode": "all", + "pk_org": condition.pk_org + } + } else { + return { + "pk_org": condition.pk_org + } + } + + } + }, + onChange: (v) => { + let { assData } = this.state; + let originData = this.findByKey(record.key, assData); + let refnameArr = [], refpkArr = [], refcodeArr = []; + if (originData) { + v.map((arr, index) => { + refnameArr.push(arr.refname); + refpkArr.push(arr.refpk); + refcodeArr.push(arr.refcode); + + }) + originData.checkvaluename = refnameArr.join(); + originData.pk_Checkvalue = refpkArr.join(); + originData.checkvaluecode = refcodeArr.join(); + } + condition.assData = assData; + this.setState({ + assData, condition + }) + } + }) :
} + ); + } else { + return ( + + {this.state[record.pk_accassitem] ? (this.state[record.pk_accassitem])( + { + value: defaultValue, + isMultiSelectedEnabled: true, + queryCondition: () => { + if (record.classid && record.classid.length == 20) {//classid的长度等于20的话过滤条件再加一个pk_defdoclist + return { + "pk_org": condition.pk_org, + "pk_defdoclist": record.pk_defdoclist + } + } else { + return { + "pk_org": condition.pk_org + } + } + }, + onChange: (v) => { + let { assData } = this.state; + let originData = this.findByKey(record.key, assData); + let refnameArr = [], refpkArr = [], refcodeArr = []; + if (originData) { + v.map((arr, index) => { + refnameArr.push(arr.refname); + refpkArr.push(arr.refpk); + refcodeArr.push(arr.refcode); + + }) + originData.checkvaluename = refnameArr.join(); + originData.pk_Checkvalue = refpkArr.join(); + originData.checkvaluecode = refcodeArr.join(); + } + condition.assData = assData; + this.setState({ + assData, condition + }) + } + }) :
} + ); + } + } + } else {//不是参照的话要区分日期、字符、数值 + if (record.classid == 'BS000010000100001033') {//日期 + return ( + { + let { assData } = this.state; + let originData = this.findByKey(record.key, assData); + if (originData) { + let assArr = []; + assArr.push(v); + originData.checkvaluename = assArr; + originData.pk_Checkvalue = assArr; + originData.checkvaluecode = assArr; + } + condition.assData = assData; + this.setState({ + assData, condition + }) + }} + + /> + ) + } else if (record.classid == 'BS000010000100001031') {//数值 + return ( + { + let { assData } = this.state; + let originData = this.findByKey(record.key, assData); + if (originData) { + let assArr = []; + assArr.push(v); + originData.checkvaluename = assArr; + originData.pk_Checkvalue = assArr; + originData.checkvaluecode = assArr; + } + condition.assData = assData; + this.setState({ + assData, condition + }) + }} + /> + ) + } else if (record.classid == 'BS000010000100001032') {//布尔 + return ( + + { + return ([{ + label: this.state.json['20020VRIFYPAGE-000087'],/* 国际化处理: 是*/ + value: 'Y' + }, { + label: this.state.json['20020VRIFYPAGE-000088'],/* 国际化处理: 否*/ + value: 'N' + }]) + } + } + onChange={(v) => { + let { assData } = this.state; + let originData = this.findByKey(record.key, assData); + if (originData) { + let assArr = []; + assArr.push(v); + originData.checkvaluename = assArr; + originData.pk_Checkvalue = assArr; + originData.checkvaluecode = assArr; + } + condition.assData = assData; + this.setState({ + assData, condition + }) + }} + /> + + ) + } else {//字符 + return ( + { + let { assData } = this.state; + let originData = this.findByKey(record.key, assData); + if (originData) { + let assArr = []; + assArr.push(v); + originData.checkvaluename = assArr; + originData.pk_Checkvalue = assArr; + originData.checkvaluecode = assArr; + } + condition.assData = assData; + this.setState({ + assData, condition + }) + }} + /> + ) + } + + } + } + } + ]; + let columnsldad = this.renderColumnsMultiSelect(columns10); + let pretentAssData={ + assData: assData||[], + childAssData:childAssData||[], + checkboxShow: true,//是否显示复选框 + showOrHide:true, + checkedAll:checkedAll,//全选复选框的选中状态 + checkedArray:checkedArray||[],//复选框选中情况 + $_this:this + }; + let title; + if(flag=='1'){ + title=this.state.json['20020VRIFYPAGE-000096'];/* 国际化处理: 核销标准*/ + }else if(flag=='2'){ + title=this.state.json['20020VRIFYPAGE-000097'];/* 国际化处理: 红蓝对冲标准*/ + } + const emptyFunc = () => {this.state.json['20020VRIFYPAGE-000094']}!/* 国际化处理: 这里没有数据*/ + return ( +
+ + + {title} + + + {showOrHide? + + + {this.queryList(loadData)} + +
+ {/*
*/} + {getAssDatas({pretentAssData})} + + + :''} + + + {/* 国际化处理: 确定*/} + {/* 国际化处理: 关闭*/} + + + + ) + } +} +VerifyStandardModal.defaultProps = defaultProps12; + +/*PRFvqOe59TMTt90TRM50p0nasZ6oWkzeAS3QDBQf0GM=*/ \ No newline at end of file diff --git a/src/uapbd/refer/pub/MaterialGridRef/index.js b/src/uapbd/refer/pub/MaterialGridRef/index.js index 92465a6..95d4246 100644 --- a/src/uapbd/refer/pub/MaterialGridRef/index.js +++ b/src/uapbd/refer/pub/MaterialGridRef/index.js @@ -1,3 +1,3 @@ /*! @ncctag {"project":"","branch":"","provider":"","date":"2020-5-11 15:04:29"} */ !function(e,r){"object"==typeof exports&&"object"==typeof module?module.exports=r(require("nc-lightapp-front")):"function"==typeof define&&define.amd?define(["nc-lightapp-front"],r):"object"==typeof exports?exports["uapbd/refer/pub/MaterialGridRef/index"]=r(require("nc-lightapp-front")):e["uapbd/refer/pub/MaterialGridRef/index"]=r(e["nc-lightapp-front"])}(window,(function(e){return function(e){var r={};function t(n){if(r[n])return r[n].exports;var o=r[n]={i:n,l:!1,exports:{}};return e[n].call(o.exports,o,o.exports,t),o.l=!0,o.exports}return t.m=e,t.c=r,t.d=function(e,r,n){t.o(e,r)||Object.defineProperty(e,r,{enumerable:!0,get:n})},t.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},t.t=function(e,r){if(1&r&&(e=t(e)),8&r)return e;if(4&r&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(t.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&r&&"string"!=typeof e)for(var o in e)t.d(n,o,function(r){return e[r]}.bind(null,o));return n},t.n=function(e){var r=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(r,"a",r),r},t.o=function(e,r){return Object.prototype.hasOwnProperty.call(e,r)},t.p="../../../../",t(t.s=761)}({0:function(r,t){r.exports=e},3:function(e,r,t){"use strict";Object.defineProperty(r,"__esModule",{value:!0}),r.conf=void 0;var n=Object.assign||function(e){for(var r=1;r0&&void 0!==arguments[0]?arguments[0]:{};return React.createElement(o,n({},a,e))};var o=t(0).high.Refer,a=r.conf={multiLang:{domainName:"uap",currentLocale:"zh-CN",moduleId:"uapRefer"},queryTreeUrl:"/nccloud/riart/ref/groupRefTreeAction.do",refType:"tree",placeholder:"1880000025-000061",refName:"1880000025-000061",rootNode:{refname:"1880000025-000061",refpk:"root"}}},7:function(e,r,t){"use strict";Object.defineProperty(r,"__esModule",{value:!0}),r.conf=void 0;var n=Object.assign||function(e){for(var r=1;r0&&void 0!==arguments[0]?arguments[0]:{};return React.createElement(i,n({},l,e))};var o=t(0),a=t(3),i=o.high.Refer;a.conf.fieldid="group";var l=r.conf={multiLang:{domainName:"uapbd",currentLocale:"zh-CN",moduleId:"refer_uapbd"},refType:"tree",refName:"refer-000201",refCode:"uapbd.refer.org.BusinessUnitTreeRef",rootNode:{refname:"refer-000201",refpk:"root"},placeholder:"refer-000201",queryTreeUrl:"/nccloud/uapbd/org/BusinessUnitTreeRef.do",treeConfig:{name:["refer-000002","refer-000003"],code:["refcode","refname"]},isMultiSelectedEnabled:!1,unitProps:a.conf,isShowUnit:!1}},761:function(e,r,t){"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n=Object.assign||function(e){for(var r=1;r0&&void 0!==arguments[0]?arguments[0]:{},r={multiLang:{domainName:"uapbd",currentLocale:"zh-CN",moduleId:"refer_uapbd"},refType:"gridTree",refName:"refer-002005",placeholder:"refer-002005",refCode:"uapbd.ref.MaterialClassTreeGridRef",queryTreeUrl:"/nccloud/uapbd/ref/MaterialClassTreeRef.do",queryGridUrl:"/nccloud/uapbd/ref/MaterialGridRef.do",rootNode:{refname:"refer-002006",refpk:"root"},columnConfig:[{name:["refer-002007","refer-002008","refer-002009","refer-002010","refer-002011","refer-002012","refer-002013","refer-002014","refer-002015"],code:["org_name","refcode","refname","materialspec","materialtype","materialshortname","materialmnecode","graphid","measdoc_name"],fullTxtCode:{refcode:!0,refname:!0,materialspec:!1,materialtype:!1,materialshortname:!1,materialmnecode:!1,graphid:!1},checked:{graphid:!1,measdoc_name:!1},search:{materialmnecode:!0}}],treeConfig:{name:["refer-002003","refer-002004"],code:["refcode","refname"]},isShowDisabledData:!1,unitProps:i.conf,isShowUnit:!1,isShowAssginDataChk:!1,isShowUsual:!0};return React.createElement(b,n({},r,e))};var a=t(0),i=t(7);i.conf.fieldid="busiUnit";var l=a.high.Refer,c=l.ReferWithUnit,f=l.MultiLangWrapper,u=a.base.NCCheckbox,s=a.base.NCCollapse,p=a.base.NCButton,d=a.base.NCTable,m=a.base.NCDiv,y=a.base.NCTooltip,g=a.base.NCHotKeys,b=f(function(e){function r(e){!function(e,r){if(!(e instanceof r))throw new TypeError("Cannot call a class as a function")}(this,r);var t=function(e,r){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!r||"object"!=typeof r&&"function"!=typeof r?e:r}(this,(r.__proto__||Object.getPrototypeOf(r)).call(this,e));return t.onChange=function(e){t.setState({isShowAssignData:e},(function(){var e=t.getParam({pid:t.state.selectedKeys[0],pageInfo:{pageSize:t.props.pageSize,pageIndex:0}});null!=e.pid&&null!=e.pid&&""!==e.pid&&t.loadAndSetTableData(e)}))},t.getParam=function(){var e=t.props.queryCondition;return{queryCondition:e?"function"==typeof e?e(t.props):"object"===(void 0===e?"undefined":o(e))?e:{}:{}}},t.renderPopoverBottom=function(){var e=t.state,r=e.selectedShow,n=(e.tableData,t.props),o=n.isMultiSelectedEnabled,a=n.isShowAssginDataChk,i=[{title:React.createElement("div",{fieldid:"oprCol"},t.props.multiLang["refer-002000"]),key:"operate",width:50,render:function(e,r,n){return React.createElement("div",{fieldid:"oprCol"},React.createElement("span",{className:"refer-del",onClick:t.onSelectedRowClick.bind(null,r,n)},t.props.multiLang["refer-002016"]))}}];return i.unshift.apply(i,function(e){if(Array.isArray(e)){for(var r=0,t=Array(e.length);r