tplus-components-touch 3.27.34 → 3.27.38
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/presale/pickup.js +1 -1
- package/dist/components/presale/pickup.js.map +1 -1
- package/dist/components/settlement/settlement.js +2 -2
- package/dist/components/settlement/settlement.js.map +1 -1
- package/dist/components/settlement/settlementStore.js +25 -23
- package/dist/components/settlement/settlementStore.js.map +1 -1
- package/dist/components/settlement/utils.js +2 -2
- package/dist/components/settlement/utils.js.map +1 -1
- package/dist/components/touchTable/index.js +11 -9
- package/dist/components/touchTable/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -127,7 +127,7 @@ var openQueryingModal = exports.openQueryingModal = function openQueryingModal()
|
|
|
127
127
|
});
|
|
128
128
|
};
|
|
129
129
|
|
|
130
|
-
var showSuccessModal = exports.showSuccessModal = function showSuccessModal(amount, received, charge, fn, isXianjin, message, settleGift, store, cb) {
|
|
130
|
+
var showSuccessModal = exports.showSuccessModal = function showSuccessModal(amount, received, charge, fn, isXianjin, message, settleGift, store, IdbusiType, cb) {
|
|
131
131
|
var isDelayModal = void 0;
|
|
132
132
|
if (!isXianjin) {
|
|
133
133
|
isDelayModal = false;
|
|
@@ -156,7 +156,7 @@ var showSuccessModal = exports.showSuccessModal = function showSuccessModal(amou
|
|
|
156
156
|
{ className: (isDelayModal ? 'text1' : '') + ' text ' + (settleGift ? 'settleText' : '') },
|
|
157
157
|
message
|
|
158
158
|
),
|
|
159
|
-
settleGift ? _react2.default.createElement(
|
|
159
|
+
settleGift && IdbusiType != 39 ? _react2.default.createElement(
|
|
160
160
|
'div',
|
|
161
161
|
{ className: 'primary-color settleGift' },
|
|
162
162
|
'\u6B64\u8BA2\u5355\u6EE1\u8DB3\u652F\u4ED8\u8FD4\u5238\u6D3B\u52A8\uFF0C\u4F18\u60E0\u5238\u4F1A\u81EA\u52A8\u53D1\u653E\u5230\u7528\u6237\u8D26\u6237'
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["tplus-components-touch/components/settlement/utils.js"],"names":["getFixedNumber","value","name","precision","isNaN","getRoundValue","decimal","pow","Math","returnValue","round","abs","toFixed","preventDefault","nativeEvent","stopPropagation","cancelBubble","openLoadingModal","maskClosable","closable","width","className","content","openQueryingModal","showSuccessModal","amount","received","charge","fn","isXianjin","message","settleGift","store","cb","isDelayModal","modal","onClose","setTimeout","destroy","openAwaitModal","tip","manually","tips"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;;;;AACA;;;;AACA;;;;AACA;;;;AACA;;;;AAEA;;;;AAEO,IAAMA,0CAAiB,oBAAM,UAAUC,KAAV,EAAiBC,IAAjB,EAAuB;AACzDA,SAAOA,QAAQ,OAAf;AACA,MAAMC,YAAY,mBAAK,IAAL,EAAcD,IAAd,YAAlB;AACAD,UAAQG,MAAMH,KAAN,IAAe,CAAf,GAAmBA,KAA3B;AACA;AACA,MAAIG,MAAMD,SAAN,CAAJ,EAAsB;AACpB,WAAOF,KAAP;AACD;AACD,SAAOI,cAAcJ,KAAd,EAAqBE,SAArB,CAAP;AACD,CAT6B,EAS3B,EAAC,SAAS,EAAE,SAAS,CAAX,EAAc,WAAW,OAAzB,EAAV,EAT2B,CAAvB;;AAWA,IAAME,wCAAgB,SAAhBA,aAAgB,CAACJ,KAAD,EAAQK,OAAR,EAAoB;AAC/C,MAAG,CAACA,OAAJ,EAAa,OAAOL,KAAP;AACb,MAAMM,MAAMC,KAAKD,GAAL,CAAS,EAAT,EAAaD,OAAb,CAAZ;AACA,MAAIG,cAAcD,KAAKE,KAAL,CAAWF,KAAKG,GAAL,CAASV,KAAT,IAAkBM,GAA7B,IAAoCA,GAAtD;AACA,MAAIN,QAAQ,CAAZ,EACEQ,cAAc,CAACA,WAAf;AACF,SAAOA,YAAYG,OAAZ,CAAoBN,OAApB,CAAP;AACD,CAPM;;AASA,IAAMO,0CAAiB,SAAjBA,cAAiB,CAAUC,WAAV,EAAuB;AACnD,MAAI,CAACA,WAAL,EAAkB;AAChB;AACD;AACD,MAAIA,YAAYD,cAAhB,EAAgC;AAC9BC,gBAAYD,cAAZ;AACD,GAFD,MAEO,IAAI,OAAOC,YAAYL,WAAnB,KAAmC,SAAvC,EAAkD;AACvDK,gBAAYL,WAAZ,GAA0B,KAA1B;AACD;AACF,CATM;;AAWA,IAAMM,4CAAkB,SAAlBA,eAAkB,CAAUD,WAAV,EAAuB;AACpD,MAAI,CAACA,WAAL,EAAkB;AAChB;AACD;AACD,MAAIA,YAAYC,eAAhB,EAAiC;AAC/BD,gBAAYC,eAAZ;AACD,GAFD,MAEO,IAAI,OAAOD,YAAYE,YAAnB,KAAoC,SAAxC,EAAmD;AACxD;AACA;AACA;AACA;AACA;AACAF,gBAAYE,YAAZ,GAA2B,IAA3B;AACD;AACF,CAdM;;AAgBA,IAAMC,8CAAmB,SAAnBA,gBAAmB,GAAY;;AAE1C,SAAO,0BAAW;AAChBC,kBAAc,KADE;AAEhBC,cAAU,KAFM;AAGhBC,WAAO,MAHS;AAIhBC,eAAW,eAJK;AAKhBC,aAAS;AAAA;AAAA,QAAK,WAAU,iBAAf;AACP,sDAAM,MAAK,OAAX,GADO;AAEP;AAAA;AAAA;AAAA;AAAA;AAFO;AALO,GAAX,CAAP;AAUD,CAZM;;AAcA,IAAMC,gDAAoB,SAApBA,iBAAoB,GAAY;;AAE3C,SAAO,0BAAW;AAChBL,kBAAc,KADE;AAEhBC,cAAU,KAFM;AAGhBC,WAAO,MAHS;AAIhBC,eAAW,eAJK;AAKhBC,aAAS;AAAA;AAAA,QAAK,WAAU,iBAAf;AACP,sDAAM,MAAK,OAAX,GADO;AAEP;AAAA;AAAA;AAAA;AAAA;AAFO;AALO,GAAX,CAAP;AAUD,CAZM;;AAeA,IAAME,8CAAmB,SAAnBA,gBAAmB,CAAUC,MAAV,EAAkBC,QAAlB,EAA4BC,MAA5B,EAAoCC,EAApC,EAAwCC,SAAxC,EAAkDC,OAAlD,EAA0DC,UAA1D,EAAsEC,KAAtE,EAA6EC,
|
|
1
|
+
{"version":3,"sources":["tplus-components-touch/components/settlement/utils.js"],"names":["getFixedNumber","value","name","precision","isNaN","getRoundValue","decimal","pow","Math","returnValue","round","abs","toFixed","preventDefault","nativeEvent","stopPropagation","cancelBubble","openLoadingModal","maskClosable","closable","width","className","content","openQueryingModal","showSuccessModal","amount","received","charge","fn","isXianjin","message","settleGift","store","IdbusiType","cb","isDelayModal","modal","onClose","setTimeout","destroy","openAwaitModal","tip","manually","tips"],"mappings":"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","file":"utils.js","sourcesContent":["import React from 'react'\nimport _bind from 'lodash/bind'\nimport _get from 'lodash/get'\nimport Ticon from '../ticon'\nimport asyncModal from './asyncModal'\nimport { Button, Spin, Popover } from 'antd';\nimport { PosInitData } from 'tplus-poslogin';\n\nexport const getFixedNumber = _bind(function (value, name) {\n name = name || 'money'\n const precision = _get(this, `${name}.value`)\n value = isNaN(value) ? 0 : value\n // 参数错误的时候, 返回原值\n if (isNaN(precision)) {\n return value\n }\n return getRoundValue(value, precision)\n}, {\"money\": { \"value\": 2, \"caption\": \"金额小数位\" },})\n\nexport const getRoundValue = (value, decimal) => {\n if(!decimal) return value\n const pow = Math.pow(10, decimal);\n let returnValue = Math.round(Math.abs(value) * pow) / pow;\n if (value < 0)\n returnValue = -returnValue;\n return returnValue.toFixed(decimal);\n}\n\nexport const preventDefault = function (nativeEvent) {\n if (!nativeEvent) {\n return\n }\n if (nativeEvent.preventDefault) {\n nativeEvent.preventDefault()\n } else if (typeof nativeEvent.returnValue !== 'unknown') {\n nativeEvent.returnValue = false\n }\n}\n\nexport const stopPropagation = function (nativeEvent) {\n if (!nativeEvent) {\n return\n }\n if (nativeEvent.stopPropagation) {\n nativeEvent.stopPropagation()\n } else if (typeof nativeEvent.cancelBubble !== 'unknown') {\n // The ChangeEventPlugin registers a \"propertychange\" event for\n // IE. This event does not support bubbling or cancelling, and\n // any references to cancelBubble throw \"Member not found\". A\n // typeof check of \"unknown\" circumvents this issue (and is also\n // IE specific).\n nativeEvent.cancelBubble = true\n }\n}\n\nexport const openLoadingModal = function () {\n\n return asyncModal({\n maskClosable: false,\n closable: false,\n width: 'auto',\n className: 'loading-modal',\n content: <div className='billingSettling'>\n <Spin size=\"large\"/>\n <div>结算中...</div>\n </div>\n })\n}\n\nexport const openQueryingModal = function () {\n\n return asyncModal({\n maskClosable: false,\n closable: false,\n width: 'auto',\n className: 'loading-modal',\n content: <div className='billingSettling'>\n <Spin size=\"large\"/>\n <div>正在查询中,请稍候~</div>\n </div>\n })\n}\n\n\nexport const showSuccessModal = function (amount, received, charge, fn, isXianjin,message,settleGift, store, IdbusiType, cb) {\n let isDelayModal;\n if (!isXianjin) {\n isDelayModal = false\n } else {\n // GiveChangeSupportManualClose 找零界面手动关闭\n isDelayModal = PosInitData('GiveChangeSupportManualClose');\n }\n\n const modal = asyncModal({\n width:'400px',\n closable:false,\n maskClosable:true,\n onClose: () => { typeof fn == 'function' && fn() },\n content: <div className=\"paySuccess\">\n <div className={`${isDelayModal ? 'icon1' : ''} icon ${settleGift ? 'settleIcon' : ''}`}><Ticon type=\"zhifuchenggong\" /></div>\n <div className={`${isDelayModal ? 'text1' : ''} text ${settleGift ? 'settleText' : ''}`}>{message}</div>\n {settleGift && IdbusiType !=39 ? <div className='primary-color settleGift'>此订单满足支付返券活动,优惠券会自动发放到用户账户</div> : null}\n <div className={`${isDelayModal ? 'tipStyle1' : ''} tipStyle`}><span className=\"fl\">应收金额</span><span className=\"fr\">{amount}</span></div>\n <div className={`${isDelayModal ? 'tipStyle2' : ''} tipStyle`}><span className=\"fl\">实收金额</span><span className=\"fr\">{received}</span></div>\n <div className={`${isDelayModal ? 'tipStyle3' : ''} tipStyle`}><span className=\"fl\">找零</span><span className=\"fr\">{getFixedNumber(charge)}</span></div>\n {\n isDelayModal ?\n <div className=\"tipStyle tipStyle4\">\n <Button onClick={() => {\n setTimeout(() => { modal.destroy(); cb && cb(); }, 0)\n }} className=\"paymentSuccessBtn\" type=\"primary\">确定</Button>\n </div>\n :\n null\n }\n </div>\n })\n if (!isDelayModal) {\n setTimeout(() => { modal.destroy(); cb && cb(); }, 1500)\n }\n return modal;\n}\n\nexport const openAwaitModal = function (tip, manually) {\n let tips = tip ? tip : '取会员价中'\n\n return asyncModal({\n className: 'billing-onsettle-ModalLight loading-modal',\n maskClosable: false,\n closable: false,\n width: 'auto',\n content: <div className='billing-onsettle-ModalLight-content'>\n\n <Spin size=\"large\"/>\n <div className='billing-onsettle-ModalLight-text'>{`${tips}...`}</div>\n </div>\n }, manually)\n}\n"]}
|
|
@@ -665,15 +665,6 @@ var TouchTable = (_temp = _class = function (_Component2) {
|
|
|
665
665
|
_message2.default.warn('已录入序列号后,不可增加数量');
|
|
666
666
|
return;
|
|
667
667
|
}
|
|
668
|
-
if (record.WaitPickUpArr && record.WaitPickUpArr.length > 0) {
|
|
669
|
-
var WaitPickUpObj = record.WaitPickUpArr.find(function (o) {
|
|
670
|
-
return o.unitId == record.Idunit;
|
|
671
|
-
}) || {};
|
|
672
|
-
if (text > WaitPickUpObj.waitPickUpQty) {
|
|
673
|
-
_message2.default.warn('\u4E0D\u80FD\u8D85\u8FC7\u6700\u5927\u53EF\u53D6\u6570\u91CF' + WaitPickUpObj.waitPickUpQty);
|
|
674
|
-
return;
|
|
675
|
-
}
|
|
676
|
-
}
|
|
677
668
|
var val = text;
|
|
678
669
|
var max = rowItem.maxValue;
|
|
679
670
|
var quantityUiState = record.uiState && record.uiState.Quantity;
|
|
@@ -683,6 +674,17 @@ var TouchTable = (_temp = _class = function (_Component2) {
|
|
|
683
674
|
|
|
684
675
|
var item = (0, _extends3.default)({}, lists[index]);
|
|
685
676
|
var afterValue = _this2.accAdd(val, 1);
|
|
677
|
+
if (record.WaitPickUpArr && record.WaitPickUpArr.length > 0) {
|
|
678
|
+
var WaitPickUpObj = record.WaitPickUpArr.find(function (o) {
|
|
679
|
+
return o.unitId == record.Idunit;
|
|
680
|
+
}) || {};
|
|
681
|
+
if (text > WaitPickUpObj.waitPickUpQty) {
|
|
682
|
+
_message2.default.warn('\u4E0D\u80FD\u8D85\u8FC7\u6700\u5927\u53EF\u53D6\u6570\u91CF' + WaitPickUpObj.waitPickUpQty);
|
|
683
|
+
return;
|
|
684
|
+
} else if (afterValue > WaitPickUpObj.waitPickUpQty && text != WaitPickUpObj.waitPickUpQty) {
|
|
685
|
+
afterValue = WaitPickUpObj.waitPickUpQty;
|
|
686
|
+
}
|
|
687
|
+
}
|
|
686
688
|
if (max !== undefined) {
|
|
687
689
|
if (max <= val) return;
|
|
688
690
|
afterValue = max <= afterValue ? max : afterValue;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["tplus-components-touch/components/touchTable/index.js"],"names":["emptyTabImage","InputNumberCell","props","val","text","record","index","selectedRowKeys","rowItem","rowHeight","handleClick","mergeQuantityUnit","Unit","unitname","Name","fileName","FieldName","key","length","item","parseInt","readOnly","quick","height","lineHeight","e","Component","TouchTable","renderCheckbox","Array","prototype","remove","indexOf","splice","onChange","checked","arr","state","push","setSelectedRowKeys","fn","cboxClick","status","findSelectedRowKeys","margin","width","event","renderLineNum","renderNumber","precision","isPercent","Format","changeDecimalMul","changeDecimalBuZero","rowIndexs","renderAction","renderOther","showText","badge","type","position","className","badgeClassName","badgeClassNames","baseNum","includes","style","top","renderUserDefined","callbackFunc","getRowClassName","renderIntegralExchangeItem","exchangeIntegralValue","getRenderColumns","cols","dataSource","check","checkbox","dataIndex","title","textAlign","render","lineType","lineNum","fixed","controlType","dsItem","IsIntegralExchange","singleExchangeIntegral","ExchangeIntegral","Quantity","Math","ceil","floor","renderText","tools","dateFormat","lastIndexOf","split","align","lastColumnResize","delType","delRow","dynamics","isFixDelColumn","stopPropagation","_event","rest","isHitRow","lists","rowClick","delClick","minusClick","plusClick","modalClick","selfHandleClick","rowIndex","undefined","outerCallback","click","AuthProcess","execute","authorityValidate","callback","result","clearSelectedRows","delete","AddLogProcessor","Code","min","minValue","quantityUiState","uiState","cellMin","value","cellMinTip","tip","afterValue","accSub","isNull","Message","info","operateType","update","list1","isSerialNumber","SerialNumber","warn","WaitPickUpArr","WaitPickUpObj","find","o","unitId","Idunit","waitPickUpQty","max","maxValue","cellMax","cellMaxTip","accAdd","updateField","setRow","params","isScrolling","tops","target","nodeName","scrollTop","getScrollTopValue","setState","setTimeout","i","cb","number","bitNum","f_x","parseFloat","isNaN","newBitNum","pow","round","s_x","toString","pos_decimal","a","b","c","d","f","Number","replace","prefixZero","num","n","join","slice","arg1","arg2","r1","r2","m","abs","cm","toFixed","emptyFunc","tabHeight","emptyStyle","display","getScrollHeight","tableHeight","headerHeight","tab","tableElement","current","document","getElementsByClassName","t","contentTable","parentNode","clientHeight","initScrollHeight","scrollHeight","scrollY","bodyTable","parentNodeEl","rowTop","tabTop","curTop","lastChild","childNodes","offsetTop","tabColumns","checkboxedList","React","createRef","getTableElement","bind","waterMark","waterMarkOption","children","handleCallback","generateWaterMark","nextProps","autoScroll","pagination","columns","items","dyItems","row","y","emptyText","onClick","propTypes","PropTypes","string","object"],"mappings":"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","file":"index.js","sourcesContent":["/**\n *\n * waterMark 水印文字内容\n * waterMarkOption 水印参数 Object类型 (width, height, font, color,rotate)\n *\n * badge Boolean 徽章 在dataSource(data) 属性中每一行的数据定义badge字段会自动生成,不需要定义对应的columns\n * dataSource: [{badge: {text: '赠', position: 'leftTop', className: ''}}]\n * badge: text 文字内容 | position 徽章位置(leftTop/rightTop/leftBottom/rightBottom) | className\n *\n */\nimport React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport { Checkbox, Table as AntTable } from 'antd';\nimport { Ticon } from '../../index';\nimport { generateWaterMark } from './generateWater.js';\nimport { badgeClassNames } from './utils';\nimport tools from '../../util/tools.js'\nimport './index.less';\nimport _get from 'lodash/get';\nimport mobx from \"mobx\";\nimport Table from 'bee-table';\nimport 'bee-table/build/Table.css';\nimport Message from '../message';\nimport { AuthProcess } from './AuthProcess';\nconst emptyTabImage = 'https://newretail.static.chanjet.com/empty.png';\nexport class InputNumberCell extends Component {\n render() {\n let {\n val,\n text,\n record,\n index,\n selectedRowKeys,\n rowItem,\n rowHeight = 50,\n handleClick,\n mergeQuantityUnit,\n } = this.props;\n const { Unit } = record || {};\n const unitname = Unit && Unit.Name;\n const fileName = rowItem.FieldName ? rowItem.FieldName : rowItem.key;\n val = (!!mergeQuantityUnit && fileName == 'Quantity') ? (val + unitname || '') : val;\n if (selectedRowKeys && selectedRowKeys.length > 0) {\n for (let item of selectedRowKeys) {\n if (index === parseInt(item) && rowItem.readOnly === false) {\n return (<div className={`${rowItem.quick == true ? 'selectedCell' : 'unSelectedCell'}`}>\n {rowItem.quick == true && <Ticon type='jianqu' className='iconKey primary-color' style={{ height: rowHeight + 'px', lineHeight: rowHeight + 'px' }} onClick={e => handleClick(e, 'minus', text, record, index, rowItem)} />}\n <span onClick={e => handleClick(e, 'modal', text, record, index, rowItem)} className={`iconText row-cell-div row-cell-pad mouse hot-key-${rowItem.FieldName ? rowItem.FieldName : rowItem.key}`}>{val}</span>\n <span className='editorLine'></span>\n {rowItem.quick == true && <Ticon type=\"zengjia\" className=\"iconKey primary-color\" style={{ height: rowHeight + 'px', lineHeight: rowHeight + 'px' }} onClick={e => handleClick(e, 'plus', text, record, index, rowItem)} />}\n </div>)\n }\n }\n }\n return (<div className='unSelectedCell'><span className='iconText row-cell-div row-cell-pad'>{val}</span></div>)\n }\n}\n\nexport default class TouchTable extends Component {\n static propTypes = {\n waterMark: PropTypes.string,\n waterMarkOption: PropTypes.object\n };\n constructor(props) {\n super(props);\n this.state = {\n selectedRowKeys: [],\n tabColumns: [],\n scrollY: 0,\n scrollTop: null,\n }\n this.checkboxedList = [];\n this.type = {\n click: 'click',\n update: 'update',\n delete: 'delete',\n updateField: 'updateField'\n }\n this.isHitRow = false;\n this.tableElement = React.createRef();\n this.getTableElement = this.getTableElement.bind(this);\n this.getRowClassName = this.getRowClassName.bind(this);\n }\n getTableElement() {\n return this.tableElement;\n }\n\n generateWaterMark() {\n const { waterMark, waterMarkOption = {}, type } = this.props;\n let contentTable;\n\n if (type === 'bee') {\n contentTable = this.tableElement.current;\n } else {\n const parentNodeEl = document.getElementsByClassName(\"antTable\")[0];\n contentTable = {\n contentTable: parentNodeEl.children[0]\n };\n }\n if(waterMark != this.waterMark){\n generateWaterMark(contentTable, { text: waterMark, ...waterMarkOption });\n this.waterMark = waterMark;\n }\n this.props.handleCallback && this.props.handleCallback();\n }\n\n renderCheckbox = (text, record, index) => {\n Array.prototype.remove = function (val) {\n var index = this.indexOf(val);\n if (index > -1) {\n this.splice(index, 1);\n }\n };\n const onChange = (checked, index) => {\n let arr = this.state.selectedRowKeys;\n if (checked === true) {\n arr.push(index);\n }\n else if (checked === false) {\n arr.remove(index);\n }\n this.setSelectedRowKeys([...new Set(arr)]);\n const fn = this.props.cboxClick;\n if (typeof fn == 'function') { fn(checked, index) }\n }\n const status = this.findSelectedRowKeys(index);\n return (\n <div style={{ margin: 'auto', width: '20px' }}>\n <Checkbox className=\"test\" checked={status} onChange={(event) => onChange(event, index)}></Checkbox>\n </div>\n )\n }\n renderLineNum = (text, record, index) => {\n return index + 1\n //return this.prefixZero(index + 1, 2);\n }\n renderNumber = (text, record, index, item) => {\n const { mergeQuantityUnit } = this.props;\n let precision = parseInt(item.precision);\n let isPercent = ('Format' in item && item.Format == 'Percent');\n text = isPercent ? this.changeDecimalMul(text, 100) : text;\n let val = this.changeDecimalBuZero(text, precision);\n val = isPercent ? val + \"%\" : val;\n const rowIndexs = this.state.selectedRowKeys;\n return <InputNumberCell\n val={val}\n text={text}\n record={record}\n index={index}\n selectedRowKeys={rowIndexs}\n rowItem={item}\n mergeQuantityUnit={mergeQuantityUnit}\n handleClick={this.handleClick} />\n }\n renderAction = (text, record, index) => {\n const status = this.findSelectedRowKeys(index);\n if (status == true) {\n return (<span className='spanDel' onClick={e => this.handleClick(e, 'del', index, record)} ><Ticon type=\"shanchu\" className=\"iconDel primary-color\"/></span>)\n } else {\n return ''\n }\n }\n renderOther = (showText, record, index, item) => {\n const { badge, height = 50, type } = this.props;\n //针对存货为赠品属性的处理逻辑。\n if (item && item.Name == 'Inventory' && badge && record.badge) {\n const { badge: { text, position = 'leftTop', className = '' } = {} } = record;\n const badgeClassName = badgeClassNames[position];\n const baseNum = position.includes('Bottom') ? 25 : 0;\n let style = {}\n if (type === 'bee'){\n style = {\n top : baseNum\n }\n }\n return (\n <div className='tplus-table-badge'>\n <div className={`badge-item ${className} ${badgeClassName}`} style={style}><span>{text}</span></div>\n <div className='row-cell-div row-cell-pad'>{showText}</div>\n </div>\n )\n }\n //增加宽度是为了控制超出之后显示省略号。\n return <div className='row-cell-div row-cell-pad'>{showText}</div>\n }\n //自定义列\n renderUserDefined = (text, record, index, item) => {\n const fn = item.callbackFunc;\n if (typeof fn == 'function') {\n return fn();\n }\n else {\n return '';\n }\n }\n getRowClassName = (record, index) => {\n const status = this.findSelectedRowKeys(index);\n if (status == true) {\n return 'row-selected'\n } else {\n return '';\n }\n }\n\n renderIntegralExchangeItem = (text, record, index, item ,exchangeIntegralValue) => {\n return (<div onClick={e => this.handleClick(e, 'modal', text, record, index, item)} className={`Integral-exchange-item hot-key-${item.FieldName ? item.FieldName : item.key}`} >\n <span className='money iconText row-cell-div mouse'>{ exchangeIntegralValue+\"积分\"}</span>\n <span className='value iconText row-cell-div mouse'>{'¥'+text}</span>\n </div>)\n }\n\n getRenderColumns = (cols, dataSource) => {\n const { badge, height = 50, mergeQuantityUnit, type } = this.props;\n const arr = [];\n let check = typeof this.props.checkbox == 'boolean' ? this.props.checkbox : false;\n if (check === true) {\n arr.push({\n key: 'checkbox',\n dataIndex: 'checkbox',\n title: '',\n width: 25,\n textAlign: 'center',\n readOnly: true,\n render: (text, record, index) => this.renderCheckbox(text, record, index)\n })\n }\n let lineType = typeof this.props.lineNum == 'boolean' ? this.props.lineNum : false;\n if (lineType === true) {\n arr.push({\n key: 'rowNum',\n dataIndex: 'rowNum',\n title: '行号',\n width: 50,\n textAlign: 'center',\n readOnly: true,\n fixed: 'left',\n render: (text, record, index) => this.renderLineNum(text, record, index)\n })\n }\n if (cols && cols.length > 0) {\n for (let item of cols) {\n if (item.controlType === 'NumTextBox') {\n item.render = (text, record, index) => {\n // 增加积分抵现特殊显示方式\n let dsItem = dataSource && dataSource[index];\n if (dsItem && dsItem.IsIntegralExchange && (item.FieldName == \"TaxPrice\" || item.FieldName == \"TaxAmount\")) {\n const singleExchangeIntegral = dataSource[index].ExchangeIntegral\n let exchangeIntegralValue = item.FieldName == \"TaxPrice\"?singleExchangeIntegral:singleExchangeIntegral* dataSource[index].Quantity;\n if(exchangeIntegralValue>0) {\n exchangeIntegralValue = Math.ceil(exchangeIntegralValue);\n }else {\n exchangeIntegralValue = Math.floor(exchangeIntegralValue);\n }\n return this.renderIntegralExchangeItem(text, record, index, item,exchangeIntegralValue)\n }\n return this.renderNumber(text, record, index, item);\n }\n } else if (item.controlType === 'Userdefined') {\n item.render = (text, record, index) => {\n return this.renderUserDefined(text, record, index, item);\n }\n } else if (item.controlType === 'DatePicker' ||item.controlType === 'DateDropDown') {\n item.render = (text, record, index) => {\n let renderText = tools.dateFormat(text, item.Format);\n return <span>{renderText}</span>\n }\n } else {\n item.render = (text, record, index) => {\n if (text && typeof text == 'object') {\n text = _get(record, item.FieldName)\n }\n if (text && typeof text == 'object' && 'Name' in text) {\n text = text['Name']\n }\n return this.renderOther(text, record, index, item);\n\n }\n }\n if (type !== 'bee'){\n if (item.dataIndex.lastIndexOf(\".\") > 0) {\n item.dataIndex = item.dataIndex.split('.');\n }\n item.align = item.textAlign;\n }\n if (mergeQuantityUnit && item.FieldName == 'Quantity') {\n item = { ...item, title: '数量/单位' }\n }\n arr.push(item);\n }\n }\n //最后一列留白,解决最后一列自适应宽度的问题\n let lastColumnResize = typeof this.props.lastColumnResize == 'boolean' ? this.props.lastColumnResize : false;\n if (lastColumnResize == true) {\n arr.push({\n key: 'resize',\n dataIndex: 'resize',\n title: '',\n width: 10,\n textAlign: 'center',\n readOnly: true\n })\n }\n let delType = typeof this.props.delRow == 'boolean' ? this.props.delRow : true;\n let dynamics = typeof this.props.isFixDelColumn == 'boolean' && this.props.isFixDelColumn == true ? { fixed: 'right',width: 50 } : { width: 28};\n if (delType === true) {\n arr.push({\n key: 'del',\n ...dynamics,\n dataIndex: 'del',\n title: '',\n className: 'shanchu',\n textAlign: 'center', //beeTable居中\n align: 'center', //antTable居中\n render: (text, record, index) => this.renderAction(text, record, index)\n })\n }\n return arr;\n }\n\n stopPropagation = (_event) => {\n if (_event && _event.stopPropagation) {\n _event.stopPropagation();\n }\n }\n\n /*以下为触发事件*/\n handleClick = (_event, type, ...rest) => {\n this.isHitRow = true;\n const lists = this.props.dataSource;\n switch (type) {\n case 'rowClick':\n this.rowClick(...rest)\n break;\n case 'del':\n this.delClick(lists, ...rest)\n this.stopPropagation(_event)\n break;\n case 'minus':\n this.minusClick(lists, ...rest)\n this.stopPropagation(_event)\n break;\n case 'plus':\n this.plusClick(lists, ...rest)\n this.stopPropagation(_event)\n break;\n case 'modal':\n this.modalClick(...rest)\n break;\n }\n }\n\n selfHandleClick = () => {\n const { rowIndex = undefined } = this.props;\n if (rowIndex == undefined) {\n return true;\n }\n return false;\n }\n\n rowClick = (record, index, fn) => {\n if (this.selfHandleClick()) {\n //当不设置行点击事件时,组件内部处理。\n if (this.state.selectedRowKeys.indexOf(index) > -1) return;\n this.setSelectedRowKeys(index, true);\n }else{\n //当设置点击事件,组件外处理\n this.outerCallback(this.type.click, record, index);\n }\n }\n delClick = async (lists, index, record) => {\n let status = AuthProcess.execute('ReverseOperation');\n if (!status) {\n this.props.authorityValidate && this.props.authorityValidate({callback:(result)=>{\n if (result) {\n if (this.selfHandleClick()) {\n lists.splice(index, 1);\n this.clearSelectedRows();\n }else{\n this.outerCallback(this.type.delete, record, index);\n AddLogProcessor.execute(\"删除行\", record.Code, '删除行成功');\n }\n }\n }});\n } else {\n if (this.selfHandleClick()) {\n lists.splice(index, 1);\n this.clearSelectedRows();\n }else{\n this.outerCallback(this.type.delete, record, index);\n }\n }\n }\n minusClick = (lists, text, record, index, rowItem) => {\n let val = text;\n let min = rowItem.minValue;\n let quantityUiState = record.uiState&&record.uiState.Quantity;\n //单元格状态控制\n let cellMin = quantityUiState && quantityUiState.min.value;\n let cellMinTip = quantityUiState && quantityUiState.min.tip;\n\n let item = { ...lists[index] };\n let afterValue = this.accSub(val, 1);\n\n if (min !== undefined) {\n if (min >= val) return;\n afterValue = (min >= afterValue) ? min : afterValue;\n }\n //单元格状态控制\n if ( !tools.isNull(cellMin)) {\n if (cellMin >= val) {\n if( !tools.isNull(cellMinTip) ) Message.info(cellMinTip);\n return;\n }\n afterValue = (cellMin >= afterValue) ? cellMin : afterValue;\n }\n\n item[rowItem.key] = afterValue;\n item.operateType = 'minus';\n this.outerCallback(this.type.update, item, index);\n }\n\n plusClick = (lists, text, record, index, rowItem) => {\n let list1 = lists[index];\n if (list1 && list1.isSerialNumber && list1.SerialNumber && list1.Quantity === 1) {\n Message.warn('已录入序列号后,不可增加数量')\n return;\n }\n if (record.WaitPickUpArr && record.WaitPickUpArr.length > 0){\n let WaitPickUpObj = record.WaitPickUpArr.find(o=>o.unitId == record.Idunit) || {};\n if (text > WaitPickUpObj.waitPickUpQty){\n Message.warn(`不能超过最大可取数量${WaitPickUpObj.waitPickUpQty}`);\n return;\n }\n }\n let val = text;\n let max = rowItem.maxValue;\n let quantityUiState = record.uiState&&record.uiState.Quantity;\n //单元格状态控制\n let cellMax = quantityUiState && quantityUiState.max.value;\n let cellMaxTip = quantityUiState && quantityUiState.max.tip;\n\n let item = { ...lists[index] };\n let afterValue = this.accAdd(val, 1);\n if (max !== undefined) {\n if (max <= val) return;\n afterValue = (max <= afterValue) ? max : afterValue;\n }\n //单元格状态控制\n if ( !tools.isNull(cellMax)) {\n if (cellMax <= val){\n if( !tools.isNull(cellMaxTip) ) Message.info(cellMaxTip);\n return;\n }\n afterValue = (cellMax <= afterValue) ? cellMax : afterValue;\n }\n item[rowItem.key] = afterValue;\n this.outerCallback(this.type.update, item, index);\n }\n\n modalClick = (text, record, index, rowItem) => {\n const fn = this.props.rowClick;\n if (typeof fn == 'function') {\n fn(this.type.updateField, index, record, rowItem.key, rowItem)\n }\n }\n\n /*以下为抽离公共方法*/\n\n setRow = (index) => {\n this.setSelectedRowKeys(index)\n }\n\n setSelectedRowKeys = (params) => {\n const { rowIndex, isScrolling } = this.props;\n let arr = new Array();\n if (params instanceof Array) {\n arr.push(...params)\n } else {\n arr.push(params)\n }\n let tops = {};\n let isHitRow = event && event.type == 'click' && (event.target.nodeName == 'DIV' || event.target.nodeName == 'I')\n if (isScrolling && rowIndex && rowIndex > -1 && !((this.isHitRow === true) ? true : isHitRow)) {\n const scrollTop = this.getScrollTopValue();\n tops = { scrollTop };\n } else {\n tops = { scrollTop: null };\n }\n this.setState({ selectedRowKeys: arr, ...tops });\n if (this.isHitRow === true) { setTimeout(() => { this.isHitRow = false }, 600) }\n }\n\n findSelectedRowKeys = (index) => {\n let rowIndexs = this.state.selectedRowKeys;\n if (rowIndexs && rowIndexs.length > 0) {\n for (let i = 0; i < rowIndexs.length; i++) {\n let item = rowIndexs[i];\n if (item === index) {\n return true;\n }\n }\n }\n return false;\n }\n\n clearSelectedRows = () => {\n this.setSelectedRowKeys([])\n }\n\n outerCallback = (type, record, index) => {\n const cb = this.props.rowClick;\n if (typeof cb == 'function') cb(type, index, record)\n }\n\n changeDecimalBuZero = (number, bitNum) => {\n if (bitNum == 0) return number;\n var f_x = parseFloat(number);\n if (isNaN(f_x)) {\n return '';\n }\n // f_x = Math.round(number * 100) / 100;\n let newBitNum = Math.pow(10, bitNum)\n f_x = Math.round(number * newBitNum) / newBitNum;\n let s_x = (f_x + '').toString();\n let pos_decimal = s_x.indexOf('.');\n if (pos_decimal < 0) {\n pos_decimal = s_x.length;\n s_x += '.';\n }\n while (s_x.length <= pos_decimal + bitNum) {\n s_x += '0';\n }\n return s_x;\n }\n\n /* 浮点数做相乘处理 */\n changeDecimalMul = (a, b) => {\n let c = 0,\n d = (a + '').toString(),\n e = (b + '').toString();\n try {\n c += d.split(\".\")[1].length;\n } catch (f) { }\n try {\n c += e.split(\".\")[1].length;\n } catch (f) { }\n return Number(d.replace(\".\", \"\")) * Number(e.replace(\".\", \"\")) / Math.pow(10, c);\n }\n\n prefixZero = (num, n) => {\n return (Array(n).join(0) + num).slice(-n);\n }\n\n //相加\n accAdd = (arg1, arg2) => {\n let r1, r2, m, c;\n try {\n r1 = (arg1 + '').toString().split(\".\")[1].length;\n }\n catch (e) {\n r1 = 0;\n }\n try {\n r2 = (arg2 + '').toString().split(\".\")[1].length;\n }\n catch (e) {\n r2 = 0;\n }\n c = Math.abs(r1 - r2);\n m = Math.pow(10, Math.max(r1, r2));\n if (c > 0) {\n var cm = Math.pow(10, c);\n if (r1 > r2) {\n arg1 = Number((arg1 + '').toString().replace(\".\", \"\"));\n arg2 = Number((arg2 + '').toString().replace(\".\", \"\")) * cm;\n } else {\n arg1 = Number((arg1 + '').toString().replace(\".\", \"\")) * cm;\n arg2 = Number((arg2 + '').toString().replace(\".\", \"\"));\n }\n } else {\n arg1 = Number((arg1 + '').toString().replace(\".\", \"\"));\n arg2 = Number((arg2 + '').toString().replace(\".\", \"\"));\n }\n return (arg1 + arg2) / m;\n }\n\n //相减\n accSub = (arg1, arg2) => {\n let r1, r2, m, n;\n try {\n r1 = (arg1 + '').toString().split(\".\")[1].length;\n }\n catch (e) {\n r1 = 0;\n }\n try {\n r2 = (arg2 + '').toString().split(\".\")[1].length;\n }\n catch (e) {\n r2 = 0;\n }\n m = Math.pow(10, Math.max(r1, r2)); //last modify by deeka //动态控制精度长度\n n = (r1 >= r2) ? r1 : r2;\n return ((arg1 * m - arg2 * m) / m).toFixed(n);\n }\n\n emptyFunc = (tabHeight, emptyStyle = 'txt') => {\n let type = null;\n switch (emptyStyle) {\n case 'icon':\n type = 1;\n break;\n case 'txt':\n type = 2;\n break;\n case 'icon-txt':\n type = 3;\n break;\n default: type = 0;\n }\n return (<div className='defaultContainer' style={{ height: tabHeight + 'px' }}>\n <div style={{ display: type === 0 ? 'none' : '' }}>\n <img className='img' style={{ display: (type === 1 || type === 3) ? '' : 'none' }} src={emptyTabImage} />\n <div style={{ display: (type === 2 || type === 3) ? '' : 'none' }}>暂无数据~~</div>\n </div>\n </div>);\n }\n\n getScrollHeight = () => {\n const { tableHeight, headerHeight = 50, type } = this.props;\n if (typeof tableHeight == 'number') return tableHeight - headerHeight;\n let tab;\n if (type === 'bee'){\n tab = this.tableElement.current;\n } else {\n tab = document.getElementsByClassName(\"antTable\")[0];\n }\n if (tab) {\n let t = type === 'bee' ? tab.contentTable.parentNode.clientHeight : tab.clientHeight\n return t - headerHeight > 0 ? t - headerHeight : headerHeight\n } else {\n return 0\n }\n }\n\n initScrollHeight = () => {\n const scrollHeight = this.getScrollHeight();\n this.setState({ scrollY: scrollHeight })\n }\n\n getScrollTopValue = () => {\n let top = 0;\n const { height = 50, type } = this.props;\n let bodyTable;\n if (type === 'bee'){\n let tab = this.tableElement.current;\n bodyTable = tab && tab.bodyTable;\n } else {\n const parentNodeEl = document.getElementsByClassName(\"antTable\")[0];\n bodyTable = parentNodeEl.getElementsByClassName('ant-table-body')[0];\n }\n if (bodyTable.scrollHeight > bodyTable.clientHeight) {\n const { selectedRowKeys } = this.state;\n let rowTop = 0;\n if (selectedRowKeys && selectedRowKeys.length > 0) {\n let index = selectedRowKeys[0];\n let tabTop = bodyTable.scrollTop;\n let curTop = bodyTable.lastChild.lastChild.childNodes[index].offsetTop;\n rowTop = curTop - bodyTable.clientHeight + height + 10;\n rowTop = Math.abs(tabTop - curTop) < 100 ? tabTop : rowTop;\n }\n top = rowTop > 0 ? rowTop : 0\n }\n return top;\n }\n\n componentDidMount() {\n setTimeout(() => {\n if( this.props.rowIndex!==void(0) ){\n this.setSelectedRowKeys(this.props.rowIndex)\n }\n this.initScrollHeight()\n }, 0)\n this.generateWaterMark()\n }\n componentDidUpdate() {\n this.generateWaterMark()\n }\n componentWillReceiveProps(nextProps) {\n if ('rowIndex' in nextProps) {\n this.setSelectedRowKeys(nextProps.rowIndex);\n this.initScrollHeight();\n }\n }\n render() {\n let {\n autoScroll, width, tableHeight,\n headerHeight = 50, height = 50,\n pagination, dataSource,\n columns, rowClick, cboxClick, className = '',\n checkbox, emptyStyle, rowIndex, type, ...items\n } = this.props;\n let { scrollY, scrollTop } = this.state;\n // let copyColumns = columns.map(el=>{return {...el}});\n const tabColumns = this.getRenderColumns(columns, dataSource);\n const dyItems = (scrollTop != null) ? { scrollTop } : {};\n return (\n <div className={`${type === 'bee' ? 'touchTable' : 'antTable'} ${className}`}>\n {\n type === 'bee' ? (\n <Table\n {...items}\n {...dyItems}\n ref={this.tableElement}\n style={{ width: width ? width : '100%', height: tableHeight ? tableHeight : '100%' }}\n rowKey={row => row.Code}\n headerHeight={headerHeight}\n pagination={pagination ? pagination : false}\n data={dataSource}\n columns={tabColumns}\n height={height}\n rowClassName={this.getRowClassName}\n emptyText={() => this.emptyFunc(tableHeight, emptyStyle)}\n scroll={autoScroll ? {} : { y: scrollY }}\n headerScroll={false}\n onRowClick={\n (record, index) => {\n this.handleClick(null, 'rowClick', record, index, rowClick)\n }\n }\n />\n ):(\n <AntTable\n id=\"ref-table\"\n {...items}\n {...dyItems}\n style={{ width: width ? width : '100%', height: tableHeight ? tableHeight : '100%' }}\n rowKey={row => row.Code}\n pagination={pagination ? pagination : false}\n dataSource={dataSource}\n columns={tabColumns}\n rowClassName={this.getRowClassName}\n locale={{emptyText: this.emptyFunc(tableHeight - 60, emptyStyle)}}\n scroll={autoScroll ? {y: null} : {y: tableHeight - 60 }}\n onRow={(record, index) => {\n return{\n onClick: () => this.handleClick(null, 'rowClick', record, index, rowClick)\n }\n }}\n />\n )\n }\n\n </div>\n )\n }\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["tplus-components-touch/components/touchTable/index.js"],"names":["emptyTabImage","InputNumberCell","props","val","text","record","index","selectedRowKeys","rowItem","rowHeight","handleClick","mergeQuantityUnit","Unit","unitname","Name","fileName","FieldName","key","length","item","parseInt","readOnly","quick","height","lineHeight","e","Component","TouchTable","renderCheckbox","Array","prototype","remove","indexOf","splice","onChange","checked","arr","state","push","setSelectedRowKeys","fn","cboxClick","status","findSelectedRowKeys","margin","width","event","renderLineNum","renderNumber","precision","isPercent","Format","changeDecimalMul","changeDecimalBuZero","rowIndexs","renderAction","renderOther","showText","badge","type","position","className","badgeClassName","badgeClassNames","baseNum","includes","style","top","renderUserDefined","callbackFunc","getRowClassName","renderIntegralExchangeItem","exchangeIntegralValue","getRenderColumns","cols","dataSource","check","checkbox","dataIndex","title","textAlign","render","lineType","lineNum","fixed","controlType","dsItem","IsIntegralExchange","singleExchangeIntegral","ExchangeIntegral","Quantity","Math","ceil","floor","renderText","tools","dateFormat","lastIndexOf","split","align","lastColumnResize","delType","delRow","dynamics","isFixDelColumn","stopPropagation","_event","rest","isHitRow","lists","rowClick","delClick","minusClick","plusClick","modalClick","selfHandleClick","rowIndex","undefined","outerCallback","click","AuthProcess","execute","authorityValidate","callback","result","clearSelectedRows","delete","AddLogProcessor","Code","min","minValue","quantityUiState","uiState","cellMin","value","cellMinTip","tip","afterValue","accSub","isNull","Message","info","operateType","update","list1","isSerialNumber","SerialNumber","warn","max","maxValue","cellMax","cellMaxTip","accAdd","WaitPickUpArr","WaitPickUpObj","find","o","unitId","Idunit","waitPickUpQty","updateField","setRow","params","isScrolling","tops","target","nodeName","scrollTop","getScrollTopValue","setState","setTimeout","i","cb","number","bitNum","f_x","parseFloat","isNaN","newBitNum","pow","round","s_x","toString","pos_decimal","a","b","c","d","f","Number","replace","prefixZero","num","n","join","slice","arg1","arg2","r1","r2","m","abs","cm","toFixed","emptyFunc","tabHeight","emptyStyle","display","getScrollHeight","tableHeight","headerHeight","tab","tableElement","current","document","getElementsByClassName","t","contentTable","parentNode","clientHeight","initScrollHeight","scrollHeight","scrollY","bodyTable","parentNodeEl","rowTop","tabTop","curTop","lastChild","childNodes","offsetTop","tabColumns","checkboxedList","React","createRef","getTableElement","bind","waterMark","waterMarkOption","children","handleCallback","generateWaterMark","nextProps","autoScroll","pagination","columns","items","dyItems","row","y","emptyText","onClick","propTypes","PropTypes","string","object"],"mappings":"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","file":"index.js","sourcesContent":["/**\n *\n * waterMark 水印文字内容\n * waterMarkOption 水印参数 Object类型 (width, height, font, color,rotate)\n *\n * badge Boolean 徽章 在dataSource(data) 属性中每一行的数据定义badge字段会自动生成,不需要定义对应的columns\n * dataSource: [{badge: {text: '赠', position: 'leftTop', className: ''}}]\n * badge: text 文字内容 | position 徽章位置(leftTop/rightTop/leftBottom/rightBottom) | className\n *\n */\nimport React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport { Checkbox, Table as AntTable } from 'antd';\nimport { Ticon } from '../../index';\nimport { generateWaterMark } from './generateWater.js';\nimport { badgeClassNames } from './utils';\nimport tools from '../../util/tools.js'\nimport './index.less';\nimport _get from 'lodash/get';\nimport mobx from \"mobx\";\nimport Table from 'bee-table';\nimport 'bee-table/build/Table.css';\nimport Message from '../message';\nimport { AuthProcess } from './AuthProcess';\nconst emptyTabImage = 'https://newretail.static.chanjet.com/empty.png';\nexport class InputNumberCell extends Component {\n render() {\n let {\n val,\n text,\n record,\n index,\n selectedRowKeys,\n rowItem,\n rowHeight = 50,\n handleClick,\n mergeQuantityUnit,\n } = this.props;\n const { Unit } = record || {};\n const unitname = Unit && Unit.Name;\n const fileName = rowItem.FieldName ? rowItem.FieldName : rowItem.key;\n val = (!!mergeQuantityUnit && fileName == 'Quantity') ? (val + unitname || '') : val;\n if (selectedRowKeys && selectedRowKeys.length > 0) {\n for (let item of selectedRowKeys) {\n if (index === parseInt(item) && rowItem.readOnly === false) {\n return (<div className={`${rowItem.quick == true ? 'selectedCell' : 'unSelectedCell'}`}>\n {rowItem.quick == true && <Ticon type='jianqu' className='iconKey primary-color' style={{ height: rowHeight + 'px', lineHeight: rowHeight + 'px' }} onClick={e => handleClick(e, 'minus', text, record, index, rowItem)} />}\n <span onClick={e => handleClick(e, 'modal', text, record, index, rowItem)} className={`iconText row-cell-div row-cell-pad mouse hot-key-${rowItem.FieldName ? rowItem.FieldName : rowItem.key}`}>{val}</span>\n <span className='editorLine'></span>\n {rowItem.quick == true && <Ticon type=\"zengjia\" className=\"iconKey primary-color\" style={{ height: rowHeight + 'px', lineHeight: rowHeight + 'px' }} onClick={e => handleClick(e, 'plus', text, record, index, rowItem)} />}\n </div>)\n }\n }\n }\n return (<div className='unSelectedCell'><span className='iconText row-cell-div row-cell-pad'>{val}</span></div>)\n }\n}\n\nexport default class TouchTable extends Component {\n static propTypes = {\n waterMark: PropTypes.string,\n waterMarkOption: PropTypes.object\n };\n constructor(props) {\n super(props);\n this.state = {\n selectedRowKeys: [],\n tabColumns: [],\n scrollY: 0,\n scrollTop: null,\n }\n this.checkboxedList = [];\n this.type = {\n click: 'click',\n update: 'update',\n delete: 'delete',\n updateField: 'updateField'\n }\n this.isHitRow = false;\n this.tableElement = React.createRef();\n this.getTableElement = this.getTableElement.bind(this);\n this.getRowClassName = this.getRowClassName.bind(this);\n }\n getTableElement() {\n return this.tableElement;\n }\n\n generateWaterMark() {\n const { waterMark, waterMarkOption = {}, type } = this.props;\n let contentTable;\n\n if (type === 'bee') {\n contentTable = this.tableElement.current;\n } else {\n const parentNodeEl = document.getElementsByClassName(\"antTable\")[0];\n contentTable = {\n contentTable: parentNodeEl.children[0]\n };\n }\n if(waterMark != this.waterMark){\n generateWaterMark(contentTable, { text: waterMark, ...waterMarkOption });\n this.waterMark = waterMark;\n }\n this.props.handleCallback && this.props.handleCallback();\n }\n\n renderCheckbox = (text, record, index) => {\n Array.prototype.remove = function (val) {\n var index = this.indexOf(val);\n if (index > -1) {\n this.splice(index, 1);\n }\n };\n const onChange = (checked, index) => {\n let arr = this.state.selectedRowKeys;\n if (checked === true) {\n arr.push(index);\n }\n else if (checked === false) {\n arr.remove(index);\n }\n this.setSelectedRowKeys([...new Set(arr)]);\n const fn = this.props.cboxClick;\n if (typeof fn == 'function') { fn(checked, index) }\n }\n const status = this.findSelectedRowKeys(index);\n return (\n <div style={{ margin: 'auto', width: '20px' }}>\n <Checkbox className=\"test\" checked={status} onChange={(event) => onChange(event, index)}></Checkbox>\n </div>\n )\n }\n renderLineNum = (text, record, index) => {\n return index + 1\n //return this.prefixZero(index + 1, 2);\n }\n renderNumber = (text, record, index, item) => {\n const { mergeQuantityUnit } = this.props;\n let precision = parseInt(item.precision);\n let isPercent = ('Format' in item && item.Format == 'Percent');\n text = isPercent ? this.changeDecimalMul(text, 100) : text;\n let val = this.changeDecimalBuZero(text, precision);\n val = isPercent ? val + \"%\" : val;\n const rowIndexs = this.state.selectedRowKeys;\n return <InputNumberCell\n val={val}\n text={text}\n record={record}\n index={index}\n selectedRowKeys={rowIndexs}\n rowItem={item}\n mergeQuantityUnit={mergeQuantityUnit}\n handleClick={this.handleClick} />\n }\n renderAction = (text, record, index) => {\n const status = this.findSelectedRowKeys(index);\n if (status == true) {\n return (<span className='spanDel' onClick={e => this.handleClick(e, 'del', index, record)} ><Ticon type=\"shanchu\" className=\"iconDel primary-color\"/></span>)\n } else {\n return ''\n }\n }\n renderOther = (showText, record, index, item) => {\n const { badge, height = 50, type } = this.props;\n //针对存货为赠品属性的处理逻辑。\n if (item && item.Name == 'Inventory' && badge && record.badge) {\n const { badge: { text, position = 'leftTop', className = '' } = {} } = record;\n const badgeClassName = badgeClassNames[position];\n const baseNum = position.includes('Bottom') ? 25 : 0;\n let style = {}\n if (type === 'bee'){\n style = {\n top : baseNum\n }\n }\n return (\n <div className='tplus-table-badge'>\n <div className={`badge-item ${className} ${badgeClassName}`} style={style}><span>{text}</span></div>\n <div className='row-cell-div row-cell-pad'>{showText}</div>\n </div>\n )\n }\n //增加宽度是为了控制超出之后显示省略号。\n return <div className='row-cell-div row-cell-pad'>{showText}</div>\n }\n //自定义列\n renderUserDefined = (text, record, index, item) => {\n const fn = item.callbackFunc;\n if (typeof fn == 'function') {\n return fn();\n }\n else {\n return '';\n }\n }\n getRowClassName = (record, index) => {\n const status = this.findSelectedRowKeys(index);\n if (status == true) {\n return 'row-selected'\n } else {\n return '';\n }\n }\n\n renderIntegralExchangeItem = (text, record, index, item ,exchangeIntegralValue) => {\n return (<div onClick={e => this.handleClick(e, 'modal', text, record, index, item)} className={`Integral-exchange-item hot-key-${item.FieldName ? item.FieldName : item.key}`} >\n <span className='money iconText row-cell-div mouse'>{ exchangeIntegralValue+\"积分\"}</span>\n <span className='value iconText row-cell-div mouse'>{'¥'+text}</span>\n </div>)\n }\n\n getRenderColumns = (cols, dataSource) => {\n const { badge, height = 50, mergeQuantityUnit, type } = this.props;\n const arr = [];\n let check = typeof this.props.checkbox == 'boolean' ? this.props.checkbox : false;\n if (check === true) {\n arr.push({\n key: 'checkbox',\n dataIndex: 'checkbox',\n title: '',\n width: 25,\n textAlign: 'center',\n readOnly: true,\n render: (text, record, index) => this.renderCheckbox(text, record, index)\n })\n }\n let lineType = typeof this.props.lineNum == 'boolean' ? this.props.lineNum : false;\n if (lineType === true) {\n arr.push({\n key: 'rowNum',\n dataIndex: 'rowNum',\n title: '行号',\n width: 50,\n textAlign: 'center',\n readOnly: true,\n fixed: 'left',\n render: (text, record, index) => this.renderLineNum(text, record, index)\n })\n }\n if (cols && cols.length > 0) {\n for (let item of cols) {\n if (item.controlType === 'NumTextBox') {\n item.render = (text, record, index) => {\n // 增加积分抵现特殊显示方式\n let dsItem = dataSource && dataSource[index];\n if (dsItem && dsItem.IsIntegralExchange && (item.FieldName == \"TaxPrice\" || item.FieldName == \"TaxAmount\")) {\n const singleExchangeIntegral = dataSource[index].ExchangeIntegral\n let exchangeIntegralValue = item.FieldName == \"TaxPrice\"?singleExchangeIntegral:singleExchangeIntegral* dataSource[index].Quantity;\n if(exchangeIntegralValue>0) {\n exchangeIntegralValue = Math.ceil(exchangeIntegralValue);\n }else {\n exchangeIntegralValue = Math.floor(exchangeIntegralValue);\n }\n return this.renderIntegralExchangeItem(text, record, index, item,exchangeIntegralValue)\n }\n return this.renderNumber(text, record, index, item);\n }\n } else if (item.controlType === 'Userdefined') {\n item.render = (text, record, index) => {\n return this.renderUserDefined(text, record, index, item);\n }\n } else if (item.controlType === 'DatePicker' ||item.controlType === 'DateDropDown') {\n item.render = (text, record, index) => {\n let renderText = tools.dateFormat(text, item.Format);\n return <span>{renderText}</span>\n }\n } else {\n item.render = (text, record, index) => {\n if (text && typeof text == 'object') {\n text = _get(record, item.FieldName)\n }\n if (text && typeof text == 'object' && 'Name' in text) {\n text = text['Name']\n }\n return this.renderOther(text, record, index, item);\n\n }\n }\n if (type !== 'bee'){\n if (item.dataIndex.lastIndexOf(\".\") > 0) {\n item.dataIndex = item.dataIndex.split('.');\n }\n item.align = item.textAlign;\n }\n if (mergeQuantityUnit && item.FieldName == 'Quantity') {\n item = { ...item, title: '数量/单位' }\n }\n arr.push(item);\n }\n }\n //最后一列留白,解决最后一列自适应宽度的问题\n let lastColumnResize = typeof this.props.lastColumnResize == 'boolean' ? this.props.lastColumnResize : false;\n if (lastColumnResize == true) {\n arr.push({\n key: 'resize',\n dataIndex: 'resize',\n title: '',\n width: 10,\n textAlign: 'center',\n readOnly: true\n })\n }\n let delType = typeof this.props.delRow == 'boolean' ? this.props.delRow : true;\n let dynamics = typeof this.props.isFixDelColumn == 'boolean' && this.props.isFixDelColumn == true ? { fixed: 'right',width: 50 } : { width: 28};\n if (delType === true) {\n arr.push({\n key: 'del',\n ...dynamics,\n dataIndex: 'del',\n title: '',\n className: 'shanchu',\n textAlign: 'center', //beeTable居中\n align: 'center', //antTable居中\n render: (text, record, index) => this.renderAction(text, record, index)\n })\n }\n return arr;\n }\n\n stopPropagation = (_event) => {\n if (_event && _event.stopPropagation) {\n _event.stopPropagation();\n }\n }\n\n /*以下为触发事件*/\n handleClick = (_event, type, ...rest) => {\n this.isHitRow = true;\n const lists = this.props.dataSource;\n switch (type) {\n case 'rowClick':\n this.rowClick(...rest)\n break;\n case 'del':\n this.delClick(lists, ...rest)\n this.stopPropagation(_event)\n break;\n case 'minus':\n this.minusClick(lists, ...rest)\n this.stopPropagation(_event)\n break;\n case 'plus':\n this.plusClick(lists, ...rest)\n this.stopPropagation(_event)\n break;\n case 'modal':\n this.modalClick(...rest)\n break;\n }\n }\n\n selfHandleClick = () => {\n const { rowIndex = undefined } = this.props;\n if (rowIndex == undefined) {\n return true;\n }\n return false;\n }\n\n rowClick = (record, index, fn) => {\n if (this.selfHandleClick()) {\n //当不设置行点击事件时,组件内部处理。\n if (this.state.selectedRowKeys.indexOf(index) > -1) return;\n this.setSelectedRowKeys(index, true);\n }else{\n //当设置点击事件,组件外处理\n this.outerCallback(this.type.click, record, index);\n }\n }\n delClick = async (lists, index, record) => {\n let status = AuthProcess.execute('ReverseOperation');\n if (!status) {\n this.props.authorityValidate && this.props.authorityValidate({callback:(result)=>{\n if (result) {\n if (this.selfHandleClick()) {\n lists.splice(index, 1);\n this.clearSelectedRows();\n }else{\n this.outerCallback(this.type.delete, record, index);\n AddLogProcessor.execute(\"删除行\", record.Code, '删除行成功');\n }\n }\n }});\n } else {\n if (this.selfHandleClick()) {\n lists.splice(index, 1);\n this.clearSelectedRows();\n }else{\n this.outerCallback(this.type.delete, record, index);\n }\n }\n }\n minusClick = (lists, text, record, index, rowItem) => {\n let val = text;\n let min = rowItem.minValue;\n let quantityUiState = record.uiState&&record.uiState.Quantity;\n //单元格状态控制\n let cellMin = quantityUiState && quantityUiState.min.value;\n let cellMinTip = quantityUiState && quantityUiState.min.tip;\n\n let item = { ...lists[index] };\n let afterValue = this.accSub(val, 1);\n\n if (min !== undefined) {\n if (min >= val) return;\n afterValue = (min >= afterValue) ? min : afterValue;\n }\n //单元格状态控制\n if ( !tools.isNull(cellMin)) {\n if (cellMin >= val) {\n if( !tools.isNull(cellMinTip) ) Message.info(cellMinTip);\n return;\n }\n afterValue = (cellMin >= afterValue) ? cellMin : afterValue;\n }\n\n item[rowItem.key] = afterValue;\n item.operateType = 'minus';\n this.outerCallback(this.type.update, item, index);\n }\n\n plusClick = (lists, text, record, index, rowItem) => {\n let list1 = lists[index];\n if (list1 && list1.isSerialNumber && list1.SerialNumber && list1.Quantity === 1) {\n Message.warn('已录入序列号后,不可增加数量')\n return;\n }\n let val = text;\n let max = rowItem.maxValue;\n let quantityUiState = record.uiState&&record.uiState.Quantity;\n //单元格状态控制\n let cellMax = quantityUiState && quantityUiState.max.value;\n let cellMaxTip = quantityUiState && quantityUiState.max.tip;\n\n let item = { ...lists[index] };\n let afterValue = this.accAdd(val, 1);\n if (record.WaitPickUpArr && record.WaitPickUpArr.length > 0){\n let WaitPickUpObj = record.WaitPickUpArr.find(o=>o.unitId == record.Idunit) || {};\n if (text > WaitPickUpObj.waitPickUpQty){\n Message.warn(`不能超过最大可取数量${WaitPickUpObj.waitPickUpQty}`);\n return;\n } else if (afterValue > WaitPickUpObj.waitPickUpQty && text != WaitPickUpObj.waitPickUpQty){\n afterValue = WaitPickUpObj.waitPickUpQty;\n }\n }\n if (max !== undefined) {\n if (max <= val) return;\n afterValue = (max <= afterValue) ? max : afterValue;\n }\n //单元格状态控制\n if ( !tools.isNull(cellMax)) {\n if (cellMax <= val){\n if( !tools.isNull(cellMaxTip) ) Message.info(cellMaxTip);\n return;\n }\n afterValue = (cellMax <= afterValue) ? cellMax : afterValue;\n }\n item[rowItem.key] = afterValue;\n this.outerCallback(this.type.update, item, index);\n }\n\n modalClick = (text, record, index, rowItem) => {\n const fn = this.props.rowClick;\n if (typeof fn == 'function') {\n fn(this.type.updateField, index, record, rowItem.key, rowItem)\n }\n }\n\n /*以下为抽离公共方法*/\n\n setRow = (index) => {\n this.setSelectedRowKeys(index)\n }\n\n setSelectedRowKeys = (params) => {\n const { rowIndex, isScrolling } = this.props;\n let arr = new Array();\n if (params instanceof Array) {\n arr.push(...params)\n } else {\n arr.push(params)\n }\n let tops = {};\n let isHitRow = event && event.type == 'click' && (event.target.nodeName == 'DIV' || event.target.nodeName == 'I')\n if (isScrolling && rowIndex && rowIndex > -1 && !((this.isHitRow === true) ? true : isHitRow)) {\n const scrollTop = this.getScrollTopValue();\n tops = { scrollTop };\n } else {\n tops = { scrollTop: null };\n }\n this.setState({ selectedRowKeys: arr, ...tops });\n if (this.isHitRow === true) { setTimeout(() => { this.isHitRow = false }, 600) }\n }\n\n findSelectedRowKeys = (index) => {\n let rowIndexs = this.state.selectedRowKeys;\n if (rowIndexs && rowIndexs.length > 0) {\n for (let i = 0; i < rowIndexs.length; i++) {\n let item = rowIndexs[i];\n if (item === index) {\n return true;\n }\n }\n }\n return false;\n }\n\n clearSelectedRows = () => {\n this.setSelectedRowKeys([])\n }\n\n outerCallback = (type, record, index) => {\n const cb = this.props.rowClick;\n if (typeof cb == 'function') cb(type, index, record)\n }\n\n changeDecimalBuZero = (number, bitNum) => {\n if (bitNum == 0) return number;\n var f_x = parseFloat(number);\n if (isNaN(f_x)) {\n return '';\n }\n // f_x = Math.round(number * 100) / 100;\n let newBitNum = Math.pow(10, bitNum)\n f_x = Math.round(number * newBitNum) / newBitNum;\n let s_x = (f_x + '').toString();\n let pos_decimal = s_x.indexOf('.');\n if (pos_decimal < 0) {\n pos_decimal = s_x.length;\n s_x += '.';\n }\n while (s_x.length <= pos_decimal + bitNum) {\n s_x += '0';\n }\n return s_x;\n }\n\n /* 浮点数做相乘处理 */\n changeDecimalMul = (a, b) => {\n let c = 0,\n d = (a + '').toString(),\n e = (b + '').toString();\n try {\n c += d.split(\".\")[1].length;\n } catch (f) { }\n try {\n c += e.split(\".\")[1].length;\n } catch (f) { }\n return Number(d.replace(\".\", \"\")) * Number(e.replace(\".\", \"\")) / Math.pow(10, c);\n }\n\n prefixZero = (num, n) => {\n return (Array(n).join(0) + num).slice(-n);\n }\n\n //相加\n accAdd = (arg1, arg2) => {\n let r1, r2, m, c;\n try {\n r1 = (arg1 + '').toString().split(\".\")[1].length;\n }\n catch (e) {\n r1 = 0;\n }\n try {\n r2 = (arg2 + '').toString().split(\".\")[1].length;\n }\n catch (e) {\n r2 = 0;\n }\n c = Math.abs(r1 - r2);\n m = Math.pow(10, Math.max(r1, r2));\n if (c > 0) {\n var cm = Math.pow(10, c);\n if (r1 > r2) {\n arg1 = Number((arg1 + '').toString().replace(\".\", \"\"));\n arg2 = Number((arg2 + '').toString().replace(\".\", \"\")) * cm;\n } else {\n arg1 = Number((arg1 + '').toString().replace(\".\", \"\")) * cm;\n arg2 = Number((arg2 + '').toString().replace(\".\", \"\"));\n }\n } else {\n arg1 = Number((arg1 + '').toString().replace(\".\", \"\"));\n arg2 = Number((arg2 + '').toString().replace(\".\", \"\"));\n }\n return (arg1 + arg2) / m;\n }\n\n //相减\n accSub = (arg1, arg2) => {\n let r1, r2, m, n;\n try {\n r1 = (arg1 + '').toString().split(\".\")[1].length;\n }\n catch (e) {\n r1 = 0;\n }\n try {\n r2 = (arg2 + '').toString().split(\".\")[1].length;\n }\n catch (e) {\n r2 = 0;\n }\n m = Math.pow(10, Math.max(r1, r2)); //last modify by deeka //动态控制精度长度\n n = (r1 >= r2) ? r1 : r2;\n return ((arg1 * m - arg2 * m) / m).toFixed(n);\n }\n\n emptyFunc = (tabHeight, emptyStyle = 'txt') => {\n let type = null;\n switch (emptyStyle) {\n case 'icon':\n type = 1;\n break;\n case 'txt':\n type = 2;\n break;\n case 'icon-txt':\n type = 3;\n break;\n default: type = 0;\n }\n return (<div className='defaultContainer' style={{ height: tabHeight + 'px' }}>\n <div style={{ display: type === 0 ? 'none' : '' }}>\n <img className='img' style={{ display: (type === 1 || type === 3) ? '' : 'none' }} src={emptyTabImage} />\n <div style={{ display: (type === 2 || type === 3) ? '' : 'none' }}>暂无数据~~</div>\n </div>\n </div>);\n }\n\n getScrollHeight = () => {\n const { tableHeight, headerHeight = 50, type } = this.props;\n if (typeof tableHeight == 'number') return tableHeight - headerHeight;\n let tab;\n if (type === 'bee'){\n tab = this.tableElement.current;\n } else {\n tab = document.getElementsByClassName(\"antTable\")[0];\n }\n if (tab) {\n let t = type === 'bee' ? tab.contentTable.parentNode.clientHeight : tab.clientHeight\n return t - headerHeight > 0 ? t - headerHeight : headerHeight\n } else {\n return 0\n }\n }\n\n initScrollHeight = () => {\n const scrollHeight = this.getScrollHeight();\n this.setState({ scrollY: scrollHeight })\n }\n\n getScrollTopValue = () => {\n let top = 0;\n const { height = 50, type } = this.props;\n let bodyTable;\n if (type === 'bee'){\n let tab = this.tableElement.current;\n bodyTable = tab && tab.bodyTable;\n } else {\n const parentNodeEl = document.getElementsByClassName(\"antTable\")[0];\n bodyTable = parentNodeEl.getElementsByClassName('ant-table-body')[0];\n }\n if (bodyTable.scrollHeight > bodyTable.clientHeight) {\n const { selectedRowKeys } = this.state;\n let rowTop = 0;\n if (selectedRowKeys && selectedRowKeys.length > 0) {\n let index = selectedRowKeys[0];\n let tabTop = bodyTable.scrollTop;\n let curTop = bodyTable.lastChild.lastChild.childNodes[index].offsetTop;\n rowTop = curTop - bodyTable.clientHeight + height + 10;\n rowTop = Math.abs(tabTop - curTop) < 100 ? tabTop : rowTop;\n }\n top = rowTop > 0 ? rowTop : 0\n }\n return top;\n }\n\n componentDidMount() {\n setTimeout(() => {\n if( this.props.rowIndex!==void(0) ){\n this.setSelectedRowKeys(this.props.rowIndex)\n }\n this.initScrollHeight()\n }, 0)\n this.generateWaterMark()\n }\n componentDidUpdate() {\n this.generateWaterMark()\n }\n componentWillReceiveProps(nextProps) {\n if ('rowIndex' in nextProps) {\n this.setSelectedRowKeys(nextProps.rowIndex);\n this.initScrollHeight();\n }\n }\n render() {\n let {\n autoScroll, width, tableHeight,\n headerHeight = 50, height = 50,\n pagination, dataSource,\n columns, rowClick, cboxClick, className = '',\n checkbox, emptyStyle, rowIndex, type, ...items\n } = this.props;\n let { scrollY, scrollTop } = this.state;\n // let copyColumns = columns.map(el=>{return {...el}});\n const tabColumns = this.getRenderColumns(columns, dataSource);\n const dyItems = (scrollTop != null) ? { scrollTop } : {};\n return (\n <div className={`${type === 'bee' ? 'touchTable' : 'antTable'} ${className}`}>\n {\n type === 'bee' ? (\n <Table\n {...items}\n {...dyItems}\n ref={this.tableElement}\n style={{ width: width ? width : '100%', height: tableHeight ? tableHeight : '100%' }}\n rowKey={row => row.Code}\n headerHeight={headerHeight}\n pagination={pagination ? pagination : false}\n data={dataSource}\n columns={tabColumns}\n height={height}\n rowClassName={this.getRowClassName}\n emptyText={() => this.emptyFunc(tableHeight, emptyStyle)}\n scroll={autoScroll ? {} : { y: scrollY }}\n headerScroll={false}\n onRowClick={\n (record, index) => {\n this.handleClick(null, 'rowClick', record, index, rowClick)\n }\n }\n />\n ):(\n <AntTable\n id=\"ref-table\"\n {...items}\n {...dyItems}\n style={{ width: width ? width : '100%', height: tableHeight ? tableHeight : '100%' }}\n rowKey={row => row.Code}\n pagination={pagination ? pagination : false}\n dataSource={dataSource}\n columns={tabColumns}\n rowClassName={this.getRowClassName}\n locale={{emptyText: this.emptyFunc(tableHeight - 60, emptyStyle)}}\n scroll={autoScroll ? {y: null} : {y: tableHeight - 60 }}\n onRow={(record, index) => {\n return{\n onClick: () => this.handleClick(null, 'rowClick', record, index, rowClick)\n }\n }}\n />\n )\n }\n\n </div>\n )\n }\n}\n"]}
|