Server IP : 80.87.202.40 / Your IP : 216.73.216.169 Web Server : Apache System : Linux rospirotorg.ru 5.14.0-539.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Dec 5 22:26:13 UTC 2024 x86_64 User : bitrix ( 600) PHP Version : 8.2.27 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /home/bitrix/ext_www/rospirotorg.ru/bitrix/js/sale/admin_order/dist/ |
Upload File : |
{"version":3,"file":"admin_order.bundle.js","sources":["../src/shipment/basket/barcode/widgetfabric.js","../src/shipment/basket/barcode/dialog.js","../src/shipment/basket/barcode/barcode_view.js","../src/shipment/basket/barcode/barcode_edit.js"],"sourcesContent":["import {Widget} from 'sale.barcode';\n\nexport default class WidgetFabric\n{\n\tstatic createWidget(props)\n\t{\n\t\tlet items = props.items.slice(0, props.rowsCount);\n\n\t\treturn new Widget({\n\t\t\trowData: WidgetFabric._createBarcodeWidgetRows(items, props.isSupportedMarkingCode),\n\t\t\theadData: WidgetFabric._createBarcodeWidgetHead(props.isSupportedMarkingCode, props.useStoreControl),\n\t\t\trowsCount: props.rowsCount,\n\t\t\torderId: props.orderId,\n\t\t\tbasketId: props.basketId,\n\t\t\tstoreId: props.storeId,\n\t\t\tisBarcodeMulti: props.isBarcodeMulti,\n\t\t\treadonly: props.readonly,\n\t\t});\n\t}\n\n\tstatic _createBarcodeWidgetHead(isSupportedMarkingCode, useStoreControl)\n\t{\n\t\tlet result = {};\n\n\t\tif(useStoreControl)\n\t\t{\n\t\t\tresult['barcode'] = {title: BX.message('SALE_JS_ADMIN_ORDER_CONF_BARCODE')};\n\t\t}\n\n\t\tif(isSupportedMarkingCode)\n\t\t{\n\t\t\tresult['markingCode'] = {title: BX.message('SALE_JS_ADMIN_ORDER_CONF_MARKING_CODE')};\n\t\t}\n\n\t\treturn result;\n\t}\n\n\tstatic _createBarcodeWidgetRows(items, isSupportedMarkingCode)\n\t{\n\t\tlet result = [];\n\n\t\titems.forEach((item) => {\n\t\t\tlet itemData = {id: item.id};\n\n\t\t\titemData.barcode = item.barcode;\n\n\t\t\tif(isSupportedMarkingCode)\n\t\t\t{\n\t\t\t\titemData.markingCode = item.markingCode;\n\t\t\t}\n\n\t\t\tresult.push(itemData);\n\t\t});\n\n\t\treturn result;\n\t}\n}","import {Tag} from 'main.core';\nimport '../../../css/shipment/basket/barcode/dialog.css';\n\nexport default class Dialog\n{\n\tconstructor(props)\n\t{\n\t\tthis._onClose = props.onClose || null;\n\t\tthis._columnsCount = props.columnsCount;\n\n\t\tthis._dialog = this._create(\n\t\t\tprops.widget,\n\t\t\tprops.productName,\n\t\t\tprops.storeName\n\t\t);\n\t}\n\n\tshow()\n\t{\n\t\tthis._dialog.Show();\n\t\tthis._dialog.adjustSizeEx();\n\t}\n\n\t_getWidth()\n\t{\n\t\treturn this._columnsCount === 1 ? 280 : 400;\n\t}\n\n\t_createStoreRow(storeName)\n\t{\n\t\tlet result = '';\n\n\t\tif(storeName.length > 0)\n\t\t{\n\t\t\tresult = Tag.render`<div class=\"sale-shipment-basket-barcodes-dialog-store-name\">${BX.util.htmlspecialchars(storeName)}</div>`;\n\t\t}\n\n\t\treturn result;\n\t}\n\n\t_create(widget, productName, storeName)\n\t{\n\t\tlet content = Tag.render`\n\t\t\t<div class=\"sale-shipment-basket-barcodes-dialog\">\n\t\t\t\t<div class=\"sale-shipment-basket-barcodes-dialog-product-name\">${BX.util.htmlspecialchars(productName)}</div>\n\t\t\t\t${this._createStoreRow(storeName)}\n\t\t\t\t${widget.render()}\n\t\t\t</div>`;\n\n\t\tlet dialog = new BX.CDialog({\n\t\t\t'content': content,\n\t\t\t'title': BX.message('SALE_JS_ADMIN_ORDER_CONF_INPUT_BARCODES'),\n\t\t\t'width': this._getWidth(),\n\t\t\t'height': 400,\n\t\t\t'resizable': false,\n\t\t\t'buttons': [\n\t\t\t\tnew BX.CWindowButton({\n\t\t\t\t\t'title': BX.message('SALE_JS_ADMIN_ORDER_CONF_CLOSE'),\n\t\t\t\t\t'action': () =>\t{\n\n\t\t\t\t\t\tif(this._onClose)\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tthis._onClose(widget);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tBX.WindowManager.Get().Close();\n\t\t\t\t\t},\n\t\t\t\t\tclassName: 'btnCloseBarcodeDialog'\n\t\t\t\t})\n\t\t\t]\n\t\t});\n\n\t\t//fully remove dialog and content after it will be closed\n\t\tBX.addCustomEvent(dialog, 'onWindowClose', function(dialog) {\n\t\t\tdialog.DIV.parentNode.removeChild(dialog.DIV);\n\t\t});\n\n\t\treturn dialog;\n\t}\n}\n","import {Tag} from 'main.core';\nimport WidgetFabric from \"./widgetfabric\";\nimport Dialog from \"./dialog\";\nimport '../../../css/shipment/basket/barcode/barcode.css';\n\nexport default class BarcodeView\n{\n\tstatic TYPE_BUTTON = 'button';\n\tstatic TYPE_LINK = 'link';\n\tstatic TYPE_INPUT = 'input';\n\n\tconstructor(props)\n\t{\n\t\tthis._basketId = props.basketId;\n\t\tthis._product = props.product;\n\t\tthis._index = props.index;\n\t\tthis._orderId = props.orderId;\n\t\tthis._type = props.type;\n\t\tthis._useStoreControl = props.useStoreControl;\n\n\t\tthis._dataFieldTemplate = props.dataFieldTemplate || '';\n\n\t\tthis._itemNode = null;\n\t\tthis._hiddensContainer = null;\n\n\t\tthis._initialStoreId = 0;\n\n\t\tlet barcodeInfo = [];\n\n\t\tif(this._product.BARCODE_INFO)\n\t\t{\n\t\t\tconst stores = Object.keys(this._product.BARCODE_INFO);\n\t\t\tthis._initialStoreId = stores[this._index - 1];\n\n\t\t\tif(this._initialStoreId)\n\t\t\t{\n\t\t\t\tbarcodeInfo = this._product.BARCODE_INFO[this._initialStoreId];\n\t\t\t}\n\t\t}\n\n\t\tthis._items = this._initItems(barcodeInfo);\n\t}\n\n\t_initItems(storeBarcodeInfo)\n\t{\n\t\tif(storeBarcodeInfo.length <= 0)\n\t\t{\n\t\t\treturn [];\n\t\t}\n\n\t\tlet result = [];\n\n\t\tif(this._isSupportedMarkingCode() || this._isBarcodeMulti())\n\t\t{\n\t\t\tstoreBarcodeInfo.forEach((item) => {\n\t\t\t\tresult.push({\n\t\t\t\t\tid: item.ID,\n\t\t\t\t\tbarcode: item.BARCODE,\n\t\t\t\t\tmarkingCode: item.MARKING_CODE\n\t\t\t\t});\n\t\t\t});\n\t\t}\n\t\telse\n\t\t{\n\t\t\tlet item = storeBarcodeInfo[0];\n\n\t\t\tresult = [{\n\t\t\t\tid: item.ID,\n\t\t\t\tbarcode: item.BARCODE,\n\t\t\t\tmarkingCode: item.MARKING_CODE\n\t\t\t}];\n\t\t}\n\n\t\treturn result;\n\t}\n\n\trender()\n\t{\n\t\tthis._itemNode = this._renderItemNode();\n\t\tthis._hiddensContainer = Tag.render`<div></div>`;\n\t\tthis._renderHiddens();\n\t\treturn Tag.render`<div>${this._itemNode}${this._hiddensContainer}</div>`;\n\t}\n\n\t_renderItemNode()\n\t{\n\t\tlet result = null;\n\n\t\tif(this._type === BarcodeView.TYPE_BUTTON)\n\t\t{\n\t\t\tresult = Tag.render`<input type=\"button\" value=\"${ BX.message('SALE_JS_ADMIN_ORDER_CONF_BARCODES')}\" onclick=\"${this._onClick.bind(this)}\">`;\n\t\t}\n\t\telse if(this._type === BarcodeView.TYPE_LINK)\n\t\t{\n\t\t\tresult = Tag.render`<span style=\"cursor: pointer; border-bottom: 1px dashed;\" onclick=\"${this._onClick.bind(this)}\">${BX.message('SALE_JS_ADMIN_ORDER_CONF_BARCODE')}</span>`;\n\t\t}\n\t\telse if(this._type === BarcodeView.TYPE_INPUT)\n\t\t{\n\t\t\tlet widget = this._createWidget(1);\n\t\t\tresult = widget.render();\n\t\t}\n\t\telse\n\t\t{\n\t\t\tthrow new Error('Wrong BarcodeView type');\n\t\t}\n\n\t\treturn result;\n\t}\n\n\t_getActualBarcodesQuantity()\n\t{\n\t\treturn this._items.length;\n\t}\n\n\t_getActualStoreId()\n\t{\n\t\treturn this._initialStoreId;\n\t}\n\n\t_onClick()\n\t{\n\t\tlet dialog = new Dialog({\n\t\t\twidget: this._createWidget(),\n\t\t\tproductName: this._product.NAME,\n\t\t\tstoreName: this._getStoreName(this._getActualStoreId()),\n\t\t\tcolumnsCount: this._getColumnsCount()\n\t\t});\n\n\t\tdialog.show();\n\t}\n\n\t_getColumnsCount()\n\t{\n\t\treturn this._isSupportedMarkingCode() && this._useStoreControl ? 2 : 1;\n\t}\n\n\t_getStoreName(storeId)\n\t{\n\t\tif(this._product.STORES && Array.isArray(this._product.STORES))\n\t\t{\n\t\t\tlet stores = this._product.STORES;\n\n\t\t\tfor(let i = 0, l = stores.length; i < l; i++)\n\t\t\t{\n\t\t\t\tif(parseInt(stores[i].STORE_ID) === parseInt(storeId))\n\t\t\t\t{\n\t\t\t\t\treturn stores[i].STORE_NAME;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn '';\n\t}\n\n\t_isBarcodeMulti()\n\t{\n\t\treturn \tthis._product.BARCODE_MULTI === 'Y';\n\t}\n\n\t_isSupportedMarkingCode()\n\t{\n\t\treturn \tthis._product.IS_SUPPORTED_MARKING_CODE === 'Y';\n\t}\n\n\t_createWidget(rowsCount)\n\t{\n\t\treturn WidgetFabric.createWidget({\n\t\t\titems: this._items,\n\t\t\trowsCount: rowsCount,\n\t\t\torderId: this._orderId,\n\t\t\tbasketId: this._basketId,\n\t\t\treadonly: true,\n\t\t\tuseStoreControl: this._useStoreControl,\n\t\t\tstoreId: this._getActualStoreId(),\n\t\t\tisBarcodeMulti: this._isBarcodeMulti(),\n\t\t\tisSupportedMarkingCode: this._isSupportedMarkingCode()\n\t\t});\n\t}\n\n\t_renderHiddens()\n\t{\n\t\tif(!this._dataFieldTemplate)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tthis._hiddensContainer.innerHTML = '';\n\t\tlet iterator = 0;\n\n\t\tthis._items.forEach((item) => {\n\t\t\tthis._hiddensContainer.appendChild(\n\t\t\t\tTag.render`\n\t\t\t\t\t<div>\t\t\t\t\t\n\t\t\t\t\t\t${this._createHiddenInput('VALUE', iterator, item.barcode)}\n\t\t\t\t\t\t${this._createHiddenInput('ID', iterator, item.id)}\n\t\t\t\t\t\t${this._createHiddenInput('MARKING_CODE', iterator, item.markingCode)}\n\t\t\t\t\t</div>`\n\t\t\t);\n\n\t\t\titerator++;\n\t\t});\n\t}\n\n\t_createHiddenInput(dataType, iterator, value)\n\t{\n\t\tlet strInput = this._dataFieldTemplate\n\t\t.replace('#ITERATOR#', iterator)\n\t\t.replace('#DATA_TYPE#', dataType)\n\t\t.replace('#DATA_TYPE_LOWER#', dataType.toLowerCase());\n\n\t\tlet input = Tag.render`${strInput}`;\n\t\tinput.setAttribute('value', value);\n\t\treturn input;\n\t}\n}","import {Tag} from 'main.core';\nimport Dialog from \"./dialog\";\nimport BarcodeView from \"./barcode_view\";\nimport WidgetFabric from \"./widgetfabric\";\n\nexport default class BarcodeEdit extends BarcodeView\n{\n\tconstructor(props)\n\t{\n\t\tsuper(props);\n\n\t\tthis._dataFieldTemplate = props.dataFieldTemplate;\n\t\tthis._useStoreControl = props.useStoreControl;\n\n\t\t//We need some actual information from form fields\n\t\tthis._getActualBarcodeQuantityMethod = props.getActualBarcodeQuantityMethod;\n\t\tthis._getActualStoreIdByIndexMethod = props.getActualStoreIdByIndexMethod;\n\t}\n\n\t_getActualBarcodesQuantity()\n\t{\n\t\tlet result = 1;\n\n\t\tif(this._isBarcodeMulti() || this._isSupportedMarkingCode())\n\t\t{\n\t\t\tresult = this._getActualBarcodeQuantityMethod(this._basketId, this._index);\n\t\t}\n\n\t\treturn result;\n\t}\n\n\t_getActualStoreId()\n\t{\n\t\treturn this._getActualStoreIdByIndexMethod(this._basketId, this._index);\n\t}\n\n\t_onClick()\n\t{\n\t\tlet dialog = new Dialog({\n\t\t\twidget: this._createWidget(this._getActualBarcodesQuantity()),\n\t\t\tproductName: this._product.NAME,\n\t\t\tstoreName: this._getStoreName(this._getActualStoreId()),\n\t\t\tonClose: this._onDialogClose.bind(this),\n\t\t\tcolumnsCount: this._getColumnsCount()\n\t\t});\n\n\t\tdialog.show();\n\t}\n\n\t_createWidget(rowsCount)\n\t{\n\t\tlet widget = WidgetFabric.createWidget({\n\t\t\titems: this._items,\n\t\t\trowsCount: rowsCount,\n\t\t\torderId: this._orderId,\n\t\t\tbasketId: this._basketId,\n\t\t\treadonly: false,\n\t\t\tuseStoreControl: this._useStoreControl,\n\t\t\tstoreId: this._getActualStoreId(),\n\t\t\tisBarcodeMulti: this._isBarcodeMulti(),\n\t\t\tisSupportedMarkingCode: this._isSupportedMarkingCode()\n\t\t});\n\n\t\twidget.onChangeSubscribe(this._onWidgetChanged.bind(this));\n\t\treturn widget;\n\t}\n\n\n\t_onWidgetChanged(event)\n\t{\n\t\tlet widget = event.data;\n\t\tthis._getWidgetData(widget);\n\t}\n\n\t_getWidgetData(widget)\n\t{\n\t\tthis._items = [];\n\n\t\twidget.getItemsData().forEach((itemData) => {\n\t\t\tthis._items.push({\n\t\t\t\tid: itemData.id,\n\t\t\t\tbarcode: itemData.barcode.value,\n\t\t\t\tmarkingCode: itemData.markingCode.value\n\t\t\t});\n\t\t});\n\n\t\tthis._renderHiddens(this._items);\n\t}\n\n\t_onDialogClose(widget)\n\t{\n\t\tthis._getWidgetData(widget);\n\t}\n}"],"names":["WidgetFabric","props","items","slice","rowsCount","Widget","rowData","_createBarcodeWidgetRows","isSupportedMarkingCode","headData","_createBarcodeWidgetHead","useStoreControl","orderId","basketId","storeId","isBarcodeMulti","readonly","result","title","BX","message","forEach","item","itemData","id","barcode","markingCode","push","Dialog","_onClose","onClose","_columnsCount","columnsCount","_dialog","_create","widget","productName","storeName","Show","adjustSizeEx","length","Tag","render","util","htmlspecialchars","content","_createStoreRow","dialog","CDialog","_getWidth","CWindowButton","WindowManager","Get","Close","className","addCustomEvent","DIV","parentNode","removeChild","BarcodeView","_basketId","_product","product","_index","index","_orderId","_type","type","_useStoreControl","_dataFieldTemplate","dataFieldTemplate","_itemNode","_hiddensContainer","_initialStoreId","barcodeInfo","BARCODE_INFO","stores","Object","keys","_items","_initItems","storeBarcodeInfo","_isSupportedMarkingCode","_isBarcodeMulti","ID","BARCODE","MARKING_CODE","_renderItemNode","_renderHiddens","TYPE_BUTTON","_onClick","bind","TYPE_LINK","TYPE_INPUT","_createWidget","Error","NAME","_getStoreName","_getActualStoreId","_getColumnsCount","show","STORES","Array","isArray","i","l","parseInt","STORE_ID","STORE_NAME","BARCODE_MULTI","IS_SUPPORTED_MARKING_CODE","createWidget","innerHTML","iterator","appendChild","_createHiddenInput","dataType","value","strInput","replace","toLowerCase","input","setAttribute","BarcodeEdit","_getActualBarcodeQuantityMethod","getActualBarcodeQuantityMethod","_getActualStoreIdByIndexMethod","getActualStoreIdByIndexMethod","_getActualBarcodesQuantity","_onDialogClose","onChangeSubscribe","_onWidgetChanged","event","data","_getWidgetData","getItemsData"],"mappings":"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"}