From 80a3f59e2d3df07805bc67e329300b8de90a5b3a Mon Sep 17 00:00:00 2001 From: buli <137736985@qq.com> Date: 星期二, 11 七月 2023 14:13:08 +0800 Subject: [PATCH] Merge branch 'LEXCommunityLiJun' into LEXUpgrade2023-Deloitte --- force-app/main/default/lwc/lexConInvoiceView/lexConInvoiceView.js | 4083 ++++++++++++++++++++++++++++++---------------------------- 1 files changed, 2,114 insertions(+), 1,969 deletions(-) diff --git a/force-app/main/default/lwc/lexConInvoiceView/lexConInvoiceView.js b/force-app/main/default/lwc/lexConInvoiceView/lexConInvoiceView.js index 4fc8f59..7a4f259 100644 --- a/force-app/main/default/lwc/lexConInvoiceView/lexConInvoiceView.js +++ b/force-app/main/default/lwc/lexConInvoiceView/lexConInvoiceView.js @@ -1,2032 +1,2177 @@ -import { LightningElement, api, track, wire } from "lwc"; -import { ShowToastEvent } from "lightning/platformShowToastEvent"; -import init from "@salesforce/apex/LexConInvoiceViewController.init"; -import save from "@salesforce/apex/LexConInvoiceViewController.save"; -import saveFile from "@salesforce/apex/LexConInvoiceViewController.saveFile"; -import saveAttachment from "@salesforce/apex/LexConInvoiceViewController.saveAttachment"; -import InvoiceorderSearch from "@salesforce/apex/LexConInvoiceViewController.InvoiceorderSearch"; -import deleteButton from "@salesforce/apex/LexConInvoiceViewController.deleteButton"; -import approval from "@salesforce/apex/LexConInvoiceViewController.approval"; -import conInvoiceListInit from "@salesforce/apex/LexConInvoiceList.init"; -import invoiceCodeSearch from "@salesforce/apex/LexConInvoiceList.invoiceCodeSearch"; -import hospitalInit from "@salesforce/apex/lexSearchAgencyHospitalController.init"; -import serContact from "@salesforce/apex/lexSearchAgencyHospitalController.serContact"; -import detailsInit from "@salesforce/apex/LexConInvoicedetailsController.init"; -import detailsSave from "@salesforce/apex/LexConInvoicedetailsController.save"; -import deleteAtt from "@salesforce/apex/LexSummonsCreatController.deleteAtt"; -import { NavigationMixin } from "lightning/navigation"; +import { LightningElement, api, track, wire } from 'lwc'; +import { ShowToastEvent } from 'lightning/platformShowToastEvent'; +import init from '@salesforce/apex/LexConInvoiceViewController.init'; +import save from '@salesforce/apex/LexConInvoiceViewController.save'; +import saveFile from '@salesforce/apex/LexConInvoiceViewController.saveFile'; +import saveAttachment from '@salesforce/apex/LexConInvoiceViewController.saveAttachment'; +import InvoiceorderSearch from '@salesforce/apex/LexConInvoiceViewController.InvoiceorderSearch'; +import deleteButton from '@salesforce/apex/LexConInvoiceViewController.deleteButton'; +import approval from '@salesforce/apex/LexConInvoiceViewController.approval'; +import conInvoiceListInit from '@salesforce/apex/LexConInvoiceList.init'; +import invoiceCodeSearch from '@salesforce/apex/LexConInvoiceList.invoiceCodeSearch'; +import hospitalInit from '@salesforce/apex/lexSearchAgencyHospitalController.init'; +import serContact from '@salesforce/apex/lexSearchAgencyHospitalController.serContact'; +import detailsInit from '@salesforce/apex/LexConInvoicedetailsController.init'; +import detailsSave from '@salesforce/apex/LexConInvoicedetailsController.save'; +import deleteAtt from '@salesforce/apex/LexSummonsCreatController.deleteAtt'; +import { NavigationMixin } from 'lightning/navigation'; //table css -import { loadStyle } from "lightning/platformResourceLoader"; -import WrappedHeaderTable from "@salesforce/resourceUrl/lexdatatable"; -import LexConInvoiceViewReport from "@salesforce/label/c.LexConInvoiceViewReport"; +import { loadStyle } from 'lightning/platformResourceLoader'; +import WrappedHeaderTable from '@salesforce/resourceUrl/lexdatatable'; +import LexConInvoiceViewReport from '@salesforce/label/c.LexConInvoiceViewReport'; const hospitalColumns = [ - { - label: "", - fieldName: "Id1", - type: "button", - initialWidth: 90, - hideDefaultActions: true, - typeAttributes: { - label: "閫夋嫨", - name: "Id2", - size: 1 + { + label: '', + fieldName: 'Id1', + type: 'button', + initialWidth: 90, + hideDefaultActions: true, + typeAttributes: { + label: '閫夋嫨', + name: 'Id2', + size: 1 + } + }, + { + label: '鍖婚櫌鍚嶇О', + fieldName: 'Name', + hideDefaultActions: true, + wrapText: true + }, + { + label: '鐪佷唤', + fieldName: 'stateMasterName', + hideDefaultActions: true } - }, - { - label: "鍖婚櫌鍚嶇О", - fieldName: "Name", - hideDefaultActions: true, - wrapText: true - }, - { - label: "鐪佷唤", - fieldName: "stateMasterName", - hideDefaultActions: true - } ]; const invoiceDetailsColumns = [ - { - label: "鍑哄簱鏃ユ湡", - fieldName: "esdetProductOutDate", - hideDefaultActions: true, - wrapText: true - }, - { - label: "鍑哄簱鍗曠紪鐮�", - fieldName: "esdetInvoicedet1ODlinkName", - wrapText: true, - hideDefaultActions: true, - wrapText: true - }, - { - label: "浜у搧鍨嬪彿", - fieldName: "esdetAssetModelNo", - hideDefaultActions: true, - wrapText: true, - initialWidth: 400 - }, - { - label: "鍗曚綅", - fieldName: "esdetInvoiceUnit", - hideDefaultActions: true, - wrapText: true, - initialWidth: 50 - }, - { - label: "鍙戠エ鍗曚环", - fieldName: "esdetInvoiceUnitprice", - hideDefaultActions: true, - wrapText: true, - type: "number", - typeAttributes: { - minimumFractionDigits: 2 + { + label: '鍑哄簱鏃ユ湡', + fieldName: 'esdetProductOutDate', + hideDefaultActions: true, + wrapText: true + }, + { + label: '鍑哄簱鍗曠紪鐮�', + fieldName: 'esdetInvoicedet1ODlinkName', + wrapText: true, + hideDefaultActions: true, + wrapText: true + }, + { + label: '浜у搧鍨嬪彿', + fieldName: 'esdetAssetModelNo', + hideDefaultActions: true, + wrapText: true, + initialWidth: 400 + }, + { + label: '鍗曚綅', + fieldName: 'esdetInvoiceUnit', + hideDefaultActions: true, + wrapText: true, + initialWidth: 50 + }, + { + label: '鍙戠エ鍗曚环', + fieldName: 'esdetInvoiceUnitprice', + hideDefaultActions: true, + wrapText: true, + type: 'number', + typeAttributes: { + minimumFractionDigits: 2 + } + }, + { + label: '鍙戠エ鏁伴噺', + fieldName: 'esdetInvoicedCount', + cellAttributes: { alignment: 'right' }, + hideDefaultActions: true, + wrapText: true + }, + { + label: '鍙戠エ绁ㄩ潰閲戦(鍏�)', + fieldName: 'esdetInvoicedProCostRMB', + hideDefaultActions: true, + wrapText: true, + cellAttributes: { alignment: 'right' }, + initialWidth: 145, + type: 'number', + typeAttributes: { + minimumFractionDigits: 2 + } } - }, - { - label: "鍙戠エ鏁伴噺", - fieldName: "esdetInvoicedCount", - cellAttributes: { alignment: "right" }, - hideDefaultActions: true, - wrapText: true - }, - { - label: "鍙戠エ绁ㄩ潰閲戦(鍏�)", - fieldName: "esdetInvoicedProCostRMB", - hideDefaultActions: true, - wrapText: true, - cellAttributes: { alignment: "right" }, - initialWidth: 145, - type: "number", - typeAttributes: { - minimumFractionDigits: 2 - } - } ]; const invoiceColumns = [ - { - label: "鍙戠エ鏃ユ湡", - fieldName: "Invoice_Date__c", - hideDefaultActions: true, - initialWidth: 150 - }, - { - label: "鍙戠エ鍙�", - type: "url", - fieldName: "NameUrl", - typeAttributes: { - label: { fieldName: "Name" } + { + label: '鍙戠エ鏃ユ湡', + fieldName: 'Invoice_Date__c', + hideDefaultActions: true, + initialWidth: 150 }, - hideDefaultActions: true - }, - { - label: "瀹㈡埛鍚�", - fieldName: "ShipmentAccount__c", - hideDefaultActions: true, - wrapText: true - }, - { - label: "鍙戠エ鐘舵��", - fieldName: "Invoice_status__c", - hideDefaultActions: true, - initialWidth: 100 - }, - { - label: "鍙戠エ璐﹂潰閲戦(鍏�)", - fieldName: "Invoice_total_amount__c", - hideDefaultActions: true, - type: "number", - typeAttributes: { - minimumFractionDigits: 2 + { + label: '鍙戠エ鍙�', + type: 'url', + fieldName: 'NameUrl', + typeAttributes: { + label: { fieldName: 'Name' } + }, + hideDefaultActions: true }, - initialWidth: 180 - }, - { - label: "鍙戠エ闄勪欢", - fieldName: "Invoice_attachment__c", - type: "boolean", - hideDefaultActions: true, - initialWidth: 120 - }, - { - label: "鍙戠エ鏄庣粏闄勪欢", - fieldName: "Invoicedet_attachment__c", - type: "boolean", - hideDefaultActions: true, - initialWidth: 120 - } + { + label: '瀹㈡埛鍚�', + fieldName: 'ShipmentAccount__c', + hideDefaultActions: true, + wrapText: true + }, + { + label: '鍙戠エ鐘舵��', + fieldName: 'Invoice_status__c', + hideDefaultActions: true, + initialWidth: 100 + }, + { + label: '鍙戠エ璐﹂潰閲戦(鍏�)', + fieldName: 'Invoice_total_amount__c', + hideDefaultActions: true, + type: 'number', + typeAttributes: { + minimumFractionDigits: 2 + }, + initialWidth: 180 + }, + { + label: '鍙戠エ闄勪欢', + fieldName: 'Invoice_attachment__c', + type: 'boolean', + hideDefaultActions: true, + initialWidth: 120 + }, + { + label: '鍙戠エ鏄庣粏闄勪欢', + fieldName: 'Invoicedet_attachment__c', + type: 'boolean', + hideDefaultActions: true, + initialWidth: 120 + } ]; const detailsColumns = [ - { - label: "浜у搧鍨嬪彿", - fieldName: "esdAssetModelNo", - hideDefaultActions: true, - initialWidth: 150, - wrapText: true - }, - { - label: "瑙勬牸", - fieldName: "packingListManual", - hideDefaultActions: true, - initialWidth: 50 - }, - { - label: "鍑鸿揣鍗曚环(鍏�)", - fieldName: "esdDeliveryListRMB", - hideDefaultActions: true, - initialWidth: 100, - type: "number", - typeAttributes: { - minimumFractionDigits: 2 - } - }, - { - label: "鍑鸿揣鏁伴噺", - fieldName: "esdShipmentCount", - hideDefaultActions: true - }, - { - label: "杩斿搧鏁伴噺", - fieldName: "esdRrturnProCount", - hideDefaultActions: true - }, - { - label: "鍑哄簱鍗曚綅", - fieldName: "esdBoxPiece", - hideDefaultActions: true - }, - { - label: "宸插彂绁ㄦ暟閲�", - fieldName: "esdInvoicedProcount", - hideDefaultActions: true, - type: "number", - typeAttributes: { - minimumFractionDigits: 2 - } - }, - { - label: "杩樻病鍙戠エ鏁伴噺", - fieldName: "esdInvoiceProNotCount", - hideDefaultActions: true, - initialWidth: 100, - type: "number", - typeAttributes: { - minimumFractionDigits: 2 - } - }, - { - label: "寮�绁ㄥ崟浣�", - hideDefaultActions: true, - type: "customUnit", - typeAttributes: { - unitValue: { fieldName: "unitValue" }, - unitOptions: { fieldName: "unitOptions" }, - recordId: { fieldName: "recordId" }, - isDisabled: { fieldName: "isDisabled" } - } - }, - { - label: "鍙戠エ鍗曚环", - fieldName: "esdInvoiceUnitprice", - hideDefaultActions: true, - type: "number", - typeAttributes: { - minimumFractionDigits: 2 + { + label: '浜у搧鍨嬪彿', + fieldName: 'esdAssetModelNo', + hideDefaultActions: true, + initialWidth: 150, + wrapText: true }, - initialWidth: 130 - }, - { - label: "鍙戠エ鏁伴噺", - //fieldName: "invoiceCount", - hideDefaultActions: true, - type: "customShipment", - cellAttributes: { alignment: "right" }, - typeAttributes: { - recordId: { fieldName: "recordId" }, - shipmentNumber: { fieldName: "shipmentNumber" }, - isConinvoice: { fieldName: "isConinvoice" }, - esdInvoiceProNotCount: { fieldName: "esdInvoiceProNotCount" } + { + label: '瑙勬牸', + fieldName: 'packingListManual', + hideDefaultActions: true, + initialWidth: 50 + }, + { + label: '鍑鸿揣鍗曚环(鍏�)', + fieldName: 'esdDeliveryListRMB', + hideDefaultActions: true, + initialWidth: 100, + type: 'number', + typeAttributes: { + minimumFractionDigits: 2 + } + }, + { + label: '鍑鸿揣鏁伴噺', + fieldName: 'esdShipmentCount', + hideDefaultActions: true + }, + { + label: '杩斿搧鏁伴噺', + fieldName: 'esdRrturnProCount', + hideDefaultActions: true + }, + { + label: '鍑哄簱鍗曚綅', + fieldName: 'esdBoxPiece', + hideDefaultActions: true + }, + { + label: '宸插彂绁ㄦ暟閲�', + fieldName: 'esdInvoicedProcount', + hideDefaultActions: true, + type: 'number', + typeAttributes: { + minimumFractionDigits: 2 + } + }, + { + label: '杩樻病鍙戠エ鏁伴噺', + fieldName: 'esdInvoiceProNotCount', + hideDefaultActions: true, + initialWidth: 100, + type: 'number', + typeAttributes: { + minimumFractionDigits: 2 + } + }, + { + label: '寮�绁ㄥ崟浣�', + hideDefaultActions: true, + type: 'customUnit', + typeAttributes: { + unitValue: { fieldName: 'unitValue' }, + unitOptions: { fieldName: 'unitOptions' }, + recordId: { fieldName: 'recordId' }, + isDisabled: { fieldName: 'isDisabled' } + } + }, + { + label: '鍙戠エ鍗曚环', + fieldName: 'esdInvoiceUnitprice', + hideDefaultActions: true, + type: 'number', + typeAttributes: { + minimumFractionDigits: 2 + }, + initialWidth: 130 + }, + { + label: '鍙戠エ鏁伴噺', + //fieldName: "invoiceCount", + hideDefaultActions: true, + type: 'customShipment', + cellAttributes: { alignment: 'right' }, + typeAttributes: { + recordId: { fieldName: 'recordId' }, + shipmentNumber: { fieldName: 'shipmentNumber' }, + isConinvoice: { fieldName: 'isConinvoice' }, + esdInvoiceProNotCount: { fieldName: 'esdInvoiceProNotCount' } + } + }, + { + label: '鍙戠エ绁ㄩ潰閲戦(鍏�)', + cellAttributes: { alignment: 'right' }, + fieldName: 'invoiceAllprice', + hideDefaultActions: true, + type: 'number', + initialWidth: 150, + typeAttributes: { + minimumFractionDigits: 2 + } } - }, - { - label: "鍙戠エ绁ㄩ潰閲戦(鍏�)", - cellAttributes: { alignment: "right" }, - fieldName: "invoiceAllprice", - hideDefaultActions: true, - type: "number", - initialWidth: 150, - typeAttributes: { - minimumFractionDigits: 2 - } - } ]; const customLabel = { - LexConInvoiceViewReport + LexConInvoiceViewReport }; export default class LexConInvoiceView extends NavigationMixin( - LightningElement + LightningElement ) { - @track label = customLabel; - invoiceColumns = invoiceColumns; - detailsColumns = detailsColumns; - @track outboundColumns = [ - { - label: "鍑哄簱鏃ユ湡", - fieldName: "esdOutboundDate", - hideDefaultActions: true, - wrapText: true - }, - { - label: "鍑哄簱鍗曠紪鐮�", - fieldName: "esdNameUrl", - type: "url", - typeAttributes: { - label: { fieldName: "esdName" }, - target: "_blank" - }, - hideDefaultActions: true, - wrapText: true - } - ]; - @track outboundData = []; - @track outboundDataSumPrice = []; - @track invoiceData = []; - @track invoiceAllpriceData = []; - @track detailsSelectedRows = []; - @track showAttPop = false; - - @track invoiceId = ""; - @track orderId = ""; - @track userWorkLocation = ""; - @track deliveryId = ""; - @track cocId = ""; - @track statusEdit = ""; - @track coc = {}; - @track EditAble = false; - @track isChange = false; - @track sumPrice = 0.0; - @track OrderCode = ""; - @track ExistOutbound = false; - @track reopen = ""; - @track invoiceOrderRecoedschange = []; - @track isNew = ""; - @track outOrderStringListLwc = []; - @track outordercountMapLwc = {}; - @track selectedRows = []; - @track detailsInvoiceId = ""; - @track detailsCocId = ""; - @track detailsData = []; - @track invoiceAllprice = 0.0; - //鐘舵�� - @track invoiceStatusValue = ""; - @track invoiceStatusOptions = []; - get Options() { - return this.invoiceStatusOptions; - } - //鍑哄簱浠� - @track deliveryFromDate = ""; - //鍑哄簱鍒� - @track deliveryToDate = ""; - //鍙戠エ鍙� - @track category1 = ""; - //瀹㈡埛鍚� - @track category2 = ""; - @track ConInvoiceListAccountId = ""; - @track ConInvoiceListUserWorkLocation = ""; - @track ConInvoiceListAgencyProType = ""; - - //浜岀骇缁忛攢鍟� - @track provinceOptsMap = []; - @track secondaryDistributor = ""; - //瀹㈡埛鍚� - @track isModalOpen = false; - @track HospitalName = ""; - @track HospitalInfo = ""; - @track searchHospitalName = ""; - @track isDisabledHospitalName = false; - @track agencyProType = ""; - @track accountid = ""; - @track hospitalList = []; - hospitalColumns = hospitalColumns; - //鍙戠エ鏃ユ湡 - @track InvoiceDate = ""; - //绉戝 - @track ForCustomerText = ""; - //澶囨敞 - @track InvoiceNote = ""; - - //鍙戠エ鏄庣粏 - @track invoiceOrderdetail1Recoeds = []; - invoiceDetailsColumns = invoiceDetailsColumns; - - //鏄剧ず - @track isShowSecondaryDistributor = false; - @track isEditInvoice = false; - @track isShowSpinner = true; - @track hideCheckbox = true; - @track done = false; - @track isConInvoiceList = true; - @track isDetailsShow = false; - - //disable - @track isDisabledEdit = false; - @track isDisabledReopen = false; - @track isDisabledDelete = false; - @track isDisabledAttachment = false; - @track isOpenReportDisabled = true; - - //鏂囦欢涓婁紶 - @track showLoadingSpinner = false; - @track showPopSpinner = false; - @track UploadFile = "Upload File"; - @track fileName = ""; - @track fileData = []; - @track fileColumns = [ - { - label: "鏍囬", - fieldName: "url", - type: "url", - typeAttributes: { label: { fieldName: "Title" }, target: "_blank" }, - hideDefaultActions: true - }, - { - label: "鍒涘缓浜�", - type: "url", - fieldName: "CreatedByNameUrl", - typeAttributes: { - label: { fieldName: "CreatedByName" }, - target: "_blank" - }, - hideDefaultActions: true - }, - { - label: "涓婁紶鏃ユ湡", - type: "date", - typeAttributes: { - year: "numeric", - month: "long", - day: "2-digit", - hour: "2-digit", - minute: "2-digit" - }, - fieldName: "CreatedDate", - hideDefaultActions: true - }, - { - label: "闄勪欢绫诲瀷", - type: "customAttachmentType", - typeAttributes: { - typeValue: { fieldName: "typeValue" }, - typeOptions: { fieldName: "typeOptions" }, - recordId: { fieldName: "recordId" }, - isDisabledAttachment: { fieldName: "isDisabledAttachment" } - }, - hideDefaultActions: true - }, - { - label: "", - type: "tableCellIcon", - typeAttributes: { - iconName: "utility:delete", - recordId: { - fieldName: "Id" + @track label = customLabel; + invoiceColumns = invoiceColumns; + detailsColumns = detailsColumns; + @track outboundColumns = [ + { + label: '鍑哄簱鏃ユ湡', + fieldName: 'esdOutboundDate', + hideDefaultActions: true, + wrapText: true + }, + { + label: '鍑哄簱鍗曠紪鐮�', + fieldName: 'esdNameUrl', + type: 'url', + typeAttributes: { + label: { fieldName: 'esdName' }, + target: '_blank' + }, + hideDefaultActions: true, + wrapText: true } - }, - initialWidth: 50, - hideDefaultActions: true + ]; + @track outboundData = []; + @track outboundDataSumPrice = []; + @track invoiceData = []; + @track invoiceAllpriceData = []; + @track detailsSelectedRows = []; + @track showAttPop = false; + + @track invoiceId = ''; + @track orderId = ''; + @track userWorkLocation = ''; + @track deliveryId = ''; + @track cocId = ''; + @track statusEdit = ''; + @track coc = {}; + @track EditAble = false; + @track isChange = false; + @track sumPrice = 0.0; + @track OrderCode = ''; + @track ExistOutbound = false; + @track reopen = ''; + @track invoiceOrderRecoedschange = []; + @track isNew = ''; + @track outOrderStringListLwc = []; + @track outordercountMapLwc = {}; + @track selectedRows = []; + @track detailsInvoiceId = ''; + @track detailsCocId = ''; + @track detailsData = []; + @track invoiceAllprice = 0.0; + //鐘舵�� + @track invoiceStatusValue = ''; + @track invoiceStatusOptions = []; + get Options() { + return this.invoiceStatusOptions; } - ]; - filesUploaded = []; - fileContents; - fileReader; - content; - MAX_FILE_SIZE = 1500000; + //鍑哄簱浠� + @track deliveryFromDate = ''; + //鍑哄簱鍒� + @track deliveryToDate = ''; + //鍙戠エ鍙� + @track category1 = ''; + //瀹㈡埛鍚� + @track category2 = ''; + @track ConInvoiceListAccountId = ''; + @track ConInvoiceListUserWorkLocation = ''; + @track ConInvoiceListAgencyProType = ''; - stylesLoaded = false; - renderedCallback() { - if (!this.stylesLoaded) { - Promise.all([loadStyle(this, WrappedHeaderTable)]) - .then(() => { - console.log("Custom styles loaded"); - this.stylesLoaded = true; - }) - .catch((error) => { - console.error("Error loading custom styles"); - }); + //浜岀骇缁忛攢鍟� + @track provinceOptsMap = []; + @track secondaryDistributor = ''; + //瀹㈡埛鍚� + @track isModalOpen = false; + @track HospitalName = ''; + @track HospitalInfo = ''; + @track searchHospitalName = ''; + @track isDisabledHospitalName = false; + @track agencyProType = ''; + @track accountid = ''; + @track hospitalList = []; + hospitalColumns = hospitalColumns; + //鍙戠エ鏃ユ湡 + @track InvoiceDate = ''; + //绉戝 + @track ForCustomerText = ''; + //澶囨敞 + @track InvoiceNote = ''; + + //鍙戠エ鏄庣粏 + @track invoiceOrderdetail1Recoeds = []; + invoiceDetailsColumns = invoiceDetailsColumns; + + //鏄剧ず + @track isShowSecondaryDistributor = false; + @track isEditInvoice = false; + @track isShowSpinner = true; + @track hideCheckbox = true; + @track done = false; + @track isConInvoiceList = true; + @track isDetailsShow = false; + + //disable + @track isDisabledEdit = false; + @track isDisabledReopen = false; + @track isDisabledDelete = false; + @track isDisabledAttachment = false; + @track isOpenReportDisabled = true; + + //鏂囦欢涓婁紶 + @track showLoadingSpinner = false; + @track showPopSpinner = false; + @track UploadFile = 'Upload File'; + @track fileName = ''; + @track fileData = []; + @track fileColumns = [ + { + label: '鏍囬', + fieldName: 'url', + type: 'url', + typeAttributes: { label: { fieldName: 'Title' }, target: '_blank' }, + hideDefaultActions: true + }, + { + label: '鍒涘缓浜�', + type: 'url', + fieldName: 'CreatedByNameUrl', + typeAttributes: { + label: { fieldName: 'CreatedByName' }, + target: '_blank' + }, + hideDefaultActions: true + }, + { + label: '涓婁紶鏃ユ湡', + type: 'date', + typeAttributes: { + year: 'numeric', + month: 'long', + day: '2-digit', + hour: '2-digit', + minute: '2-digit' + }, + fieldName: 'CreatedDate', + hideDefaultActions: true + }, + { + label: '闄勪欢绫诲瀷', + type: 'customAttachmentType', + typeAttributes: { + typeValue: { fieldName: 'typeValue' }, + typeOptions: { fieldName: 'typeOptions' }, + recordId: { fieldName: 'recordId' }, + isDisabledAttachment: { fieldName: 'isDisabledAttachment' } + }, + hideDefaultActions: true + }, + { + label: '', + type: 'tableCellIcon', + typeAttributes: { + iconName: 'utility:delete', + recordId: { + fieldName: 'Id' + } + }, + initialWidth: 50, + hideDefaultActions: true + } + ]; + filesUploaded = []; + fileContents; + fileReader; + content; + MAX_FILE_SIZE = 1500000; + + stylesLoaded = false; + renderedCallback() { + if (!this.stylesLoaded) { + Promise.all([loadStyle(this, WrappedHeaderTable)]) + .then(() => { + console.log('Custom styles loaded'); + this.stylesLoaded = true; + }) + .catch((error) => { + console.error('Error loading custom styles'); + }); + } } - } - //鑾峰彇閾炬帴鍙傛暟 - getQueryString(name) { - console.log("getQueryString name " + name); - let reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i"); - let r = window.location.search.substr(1).match(reg); - if (r != null) { - return decodeURIComponent(r[2]); + //鑾峰彇閾炬帴鍙傛暟 + getQueryString(name) { + console.log('getQueryString name ' + name); + let reg = new RegExp('(^|&)' + name + '=([^&]*)(&|$)', 'i'); + let r = window.location.search.substr(1).match(reg); + if (r != null) { + return decodeURIComponent(r[2]); + } + return null; } - return null; - } - connectedCallback() { - this.init(); - } + connectedCallback() { + this.init(); + } - init() { - this.isShowSpinner = true; - this.deliveryId = this.getQueryString("deliveryId"); - this.deliveryId = this.deliveryId == null ? "" : this.deliveryId; - this.invoiceId = this.getQueryString("invoiceId"); - this.invoiceId = this.invoiceId == null ? "" : this.invoiceId; - this.orderId = this.getQueryString("orderId"); - this.orderId = this.orderId == null ? "" : this.orderId; - this.statusEdit = this.getQueryString("KeyWords"); - this.statusEdit = this.statusEdit == null ? "" : this.statusEdit; - this.reopen = this.getQueryString("reopen"); - this.reopen = this.reopen == null ? "" : this.reopen; - this.isNew = this.getQueryString("isNew"); - this.isNew = this.isNew == null ? "" : this.isNew; - console.log( - "this.deliveryId = " + - this.deliveryId + - " this.invoiceId = " + - this.invoiceId + - " this.statusEdit = " + - this.statusEdit - ); - if (this.invoiceId != "" && this.orderId != "") { - //杩涘叆coninvoiceDetails - detailsInit({ - orderIdLwc: this.orderId, - invoiceIdLwc: this.invoiceId - }) - .then((r) => { - r = JSON.parse(JSON.stringify(r)); - if (r.status == "Success") { - this.detailsInvoiceId = r.entity.invoicecode.Id; - this.detailsCocId = r.entity.coc.Id; - this.detailsData = r.entity.consumableorderdetails1Records; - for (var i in this.detailsData) { - this.detailsData[i]["Id"] = this.detailsData[i].esd.Id; + init() { + this.isShowSpinner = true; + this.deliveryId = this.getQueryString('deliveryId'); + this.deliveryId = this.deliveryId == null ? '' : this.deliveryId; + this.invoiceId = this.getQueryString('invoiceId'); + this.invoiceId = this.invoiceId == null ? '' : this.invoiceId; + this.orderId = this.getQueryString('orderId'); + this.orderId = this.orderId == null ? '' : this.orderId; + this.statusEdit = this.getQueryString('KeyWords'); + this.statusEdit = this.statusEdit == null ? '' : this.statusEdit; + this.reopen = this.getQueryString('reopen'); + this.reopen = this.reopen == null ? '' : this.reopen; + this.isNew = this.getQueryString('isNew'); + this.isNew = this.isNew == null ? '' : this.isNew; + console.log( + 'this.deliveryId = ' + + this.deliveryId + + ' this.invoiceId = ' + + this.invoiceId + + ' this.statusEdit = ' + + this.statusEdit + ); + if (this.invoiceId != '' && this.orderId != '') { + //杩涘叆coninvoiceDetails + detailsInit({ + orderIdLwc: this.orderId, + invoiceIdLwc: this.invoiceId + }) + .then((r) => { + r = JSON.parse(JSON.stringify(r)); + if (r.status == 'Success') { + this.detailsInvoiceId = r.entity.invoicecode.Id; + this.detailsCocId = r.entity.coc.Id; + this.detailsData = + r.entity.consumableorderdetails1Records; + for (var i in this.detailsData) { + this.detailsData[i]['Id'] = + this.detailsData[i].esd.Id; - this.detailsData[i]["esdAssetModelNo"] = - this.detailsData[i].esd.Asset_Model_No__c; - this.detailsData[i]["packingListManual"] = - this.detailsData[i].Packing_list_manual; - this.detailsData[i]["esdDeliveryListRMB"] = - this.detailsData[i].esd.Delivery_List_RMB__c; - this.detailsData[i]["esdShipmentCount"] = - this.detailsData[i].esd.Shipment_Count__c; - this.detailsData[i]["esdRrturnProCount"] = - this.detailsData[i].esd.RrturnPro_count__c; - this.detailsData[i]["esdBoxPiece"] = - this.detailsData[i].esd.Box_Piece__c; + this.detailsData[i]['esdAssetModelNo'] = + this.detailsData[i].esd.Asset_Model_No__c; + this.detailsData[i]['packingListManual'] = + this.detailsData[i].Packing_list_manual; + this.detailsData[i]['esdDeliveryListRMB'] = + this.detailsData[i].esd.Delivery_List_RMB__c; + this.detailsData[i]['esdShipmentCount'] = + this.detailsData[i].esd.Shipment_Count__c; + this.detailsData[i]['esdRrturnProCount'] = + this.detailsData[i].esd.RrturnPro_count__c; + this.detailsData[i]['esdBoxPiece'] = + this.detailsData[i].esd.Box_Piece__c; - this.detailsData[i]["esdInvoicedProcount"] = - this.detailsData[i].esd.Invoiced_Procount__c; - this.detailsData[i]["esdInvoiceProNotCount"] = - this.detailsData[i].esd.InvoiceProNot_count__c; - //寮�绁ㄥ崟浣� - //this.detailsData[i].esd.Box_Piece__c - //this.detailsData[i]['unitValue'] = this.detailsData[i].esd.Invoice_Unit__c; - this.detailsData[i]["unitValue"] = - this.detailsData[i].esd.Box_Piece__c; - console.log("unitValue = " + this.detailsData[i]["unitValue"]); - this.detailsData[i]["recordId"] = this.detailsData[i].esd.Id; - //disabled="{!IF(records.esd.Box_Piece__c =='涓�' || (records.esd.Box_Piece__c =='鐩�' && records.Packing_list_manual ==1),true,false)}" - //this.detailsData[i]['isDisabled'] = (this.detailsData[i].esd.Box_Piece__c == '涓�' || (this.detailsData[i].esd.Box_Piece__c =='鐩�' && this.detailsData[i].Packing_list_manual ==1)) ? true:false; - this.detailsData[i]["isDisabled"] = true; - let unitOptions = []; - for (var key in this.detailsData[i].Invoice_UnitOptsMap) { - let unitOption = {}; - unitOption["label"] = - this.detailsData[i].Invoice_UnitOptsMap[key]; - unitOption["value"] = key; - unitOptions.push(unitOption); - } - this.detailsData[i]["unitOptions"] = unitOptions; - this.detailsData[i]["esdInvoiceUnitprice"] = - this.detailsData[i].esd.Invoice_Unitprice__c; - //鍙戠エ鏁伴噺 - this.detailsData[i]["shipmentNumber"] = - this.detailsData[i].invoiceCount; - this.detailsData[i]["isConinvoice"] = true; - this.detailsData[i]["invoiceAllprice"] = - this.detailsData[i].invoiceAllprice; + this.detailsData[i]['esdInvoicedProcount'] = + this.detailsData[i].esd.Invoiced_Procount__c; + this.detailsData[i]['esdInvoiceProNotCount'] = + this.detailsData[i].esd.InvoiceProNot_count__c; + //寮�绁ㄥ崟浣� + //this.detailsData[i].esd.Box_Piece__c + //this.detailsData[i]['unitValue'] = this.detailsData[i].esd.Invoice_Unit__c; + this.detailsData[i]['unitValue'] = + this.detailsData[i].esd.Box_Piece__c; + console.log( + 'unitValue = ' + + this.detailsData[i]['unitValue'] + ); + this.detailsData[i]['recordId'] = + this.detailsData[i].esd.Id; + //disabled="{!IF(records.esd.Box_Piece__c =='涓�' || (records.esd.Box_Piece__c =='鐩�' && records.Packing_list_manual ==1),true,false)}" + //this.detailsData[i]['isDisabled'] = (this.detailsData[i].esd.Box_Piece__c == '涓�' || (this.detailsData[i].esd.Box_Piece__c =='鐩�' && this.detailsData[i].Packing_list_manual ==1)) ? true:false; + this.detailsData[i]['isDisabled'] = true; + let unitOptions = []; + for (var key in this.detailsData[i] + .Invoice_UnitOptsMap) { + let unitOption = {}; + unitOption['label'] = + this.detailsData[i].Invoice_UnitOptsMap[ + key + ]; + unitOption['value'] = key; + unitOptions.push(unitOption); + } + this.detailsData[i]['unitOptions'] = unitOptions; + this.detailsData[i]['esdInvoiceUnitprice'] = + this.detailsData[i].esd.Invoice_Unitprice__c; + //鍙戠エ鏁伴噺 + this.detailsData[i]['shipmentNumber'] = + this.detailsData[i].invoiceCount; + this.detailsData[i]['isConinvoice'] = true; + this.detailsData[i]['invoiceAllprice'] = + this.detailsData[i].invoiceAllprice; - if (this.detailsData[i].check) { - this.detailsSelectedRows.push(this.detailsData[i]["Id"]); - this.invoiceAllprice += this.detailsData[i]["invoiceAllprice"]; - } - } + if (this.detailsData[i].check) { + this.detailsSelectedRows.push( + this.detailsData[i]['Id'] + ); + this.invoiceAllprice += + this.detailsData[i]['invoiceAllprice']; + } + } - console.log( - "this.detailsData = " + JSON.stringify(this.detailsData) - ); + console.log( + 'this.detailsData = ' + + JSON.stringify(this.detailsData) + ); - let lastInvoiceAllprice = { - invoiceAllprice: this.invoiceAllprice - }; - this.invoiceAllpriceData.push(lastInvoiceAllprice); - console.log( - "this.invoiceAllpriceData = " + - JSON.stringify(this.invoiceAllpriceData) - ); + let lastInvoiceAllprice = { + invoiceAllprice: this.invoiceAllprice + }; + this.invoiceAllpriceData.push(lastInvoiceAllprice); + console.log( + 'this.invoiceAllpriceData = ' + + JSON.stringify(this.invoiceAllpriceData) + ); - this.isShowSpinner = false; - this.isDetailsShow = true; - } else { - this.showMyToast("鍒濆鍖栧け璐�", r.msg, "Error"); - } - }) - .catch((error) => { - this.isShowSpinner = false; - console.log("error = " + JSON.stringify(error)); - }); - } else if ( - this.deliveryId == "" && - this.invoiceId == "" && - this.isNew == "" - ) { - console.log("conInvoiceListInit"); - conInvoiceListInit() - .then((r) => { - r = JSON.parse(JSON.stringify(r)); - console.log("conInvoiceListInit r = " + JSON.stringify(r)); - if (r.status == "Success") { - this.ConInvoiceListAccountId = r.entity.accountid; - this.ConInvoiceListUserWorkLocation = r.entity.userWorkLocation; - - this.ConInvoiceListAgencyProType = r.entity.agencyProType; - //if (this.ConInvoiceListAgencyProType != 'ET') - this.isOpenReportDisabled = false; - this.invoiceData = r.entity.raesList; - for (var i in this.invoiceData) { - this.invoiceData[i]["NameUrl"] = - "/lexconinvoiceview?invoiceId=" + this.invoiceData[i].Id; - } - console.log( - "this.invoiceData = " + JSON.stringify(this.invoiceData) - ); - for (var key in r.entity.statusMap) { - let object = {}; - object["label"] = key; - object["value"] = r.entity.statusMap[key]; - this.invoiceStatusOptions.push(object); - } - this.invoiceStatusOptions = [...this.invoiceStatusOptions]; - console.log( - "this.invoiceStatusOptions = " + - JSON.stringify(this.invoiceStatusOptions) - ); - this.isShowSpinner = false; - } else { - this.showMyToast("鍒濆鍖栧け璐�", r.msg, "Error"); - } - }) - .catch((error) => { - console.log("error = " + JSON.stringify(error)); - }); - } else { - console.log("init"); - this.isConInvoiceList = false; - init({ - invoiceId: this.invoiceId, - statusEdit: this.statusEdit, - deliveryId: this.deliveryId - }) - .then((r) => { - r = JSON.parse(JSON.stringify(r)); - console.log("r = " + JSON.stringify(r)); - if (r.status == "Success") { - this.coc = r.entity.coc; - this.cocId = this.coc.Id; - this.EditAble = r.entity.EditAble; - this.isChange = r.entity.isChange; - this.ExistOutbound = r.entity.ExistOutbound; - this.outboundData = r.entity.invoiceOrderRecoeds; - console.log( - "this.outboundData = " + JSON.stringify(this.outboundData) - ); - this.done = r.entity.done; - this.accountid = r.entity.accountid; - this.userWorkLocation = r.entity.userWorkLocation; - this.outOrderStringListLwc = r.entity.outOrderStringList; - this.outordercountMapLwc = r.entity.outordercountMap; - this.invoiceOrderRecoedschange = r.entity.invoiceOrderRecoedschange; - this.isDisabledEdit = - this.coc.Invoice_status__c == "鎻愪氦" || - this.coc.Invoice_status__c == "宸插畬鎴�" - ? true - : false; - this.isDisabledReopen = - this.coc.Invoice_status__c == "鎻愪氦" ? false : true; - this.isDisabledDelete = - this.coc.Invoice_status__c == "鑽夋涓�" ? false : true; - this.isDisabledAttachment = - this.coc.Invoice_status__c == "宸插畬鎴�" ? true : false; - this.OrderCode = this.coc.Name; - this.InvoiceDate = this.coc.Invoice_Date__c; - - for (var i in this.outboundData) { - this.outboundData[i].Id = this.outboundData[i].esd.Id; - if (this.outboundData[i].check) - this.selectedRows.push(this.outboundData[i].esd.Id); - } - this.selectedRows = [...this.selectedRows]; - console.log( - "r.entity.attachmentRecoeds = " + - JSON.stringify(r.entity.attachmentRecoeds) - ); - if (!this.EditAble) { - //闄勪欢鏄剧ず - this.showLoadingSpinner = true; - this.fileData = r.entity.attachmentRecoeds; - for (var i in this.fileData) { - this.fileData[i]["Id"] = this.fileData[i].cvInfo.Id; - this.fileData[i]["recordId"] = this.fileData[i].cvInfo.Id; - this.fileData[i]["url"] = "/" + this.fileData[i].cvInfo.Id; - this.fileData[i]["Title"] = this.fileData[i].cvInfo.Title; - this.fileData[i]["CreatedByName"] = - this.fileData[i].cvInfo.Owner.Name; - this.fileData[i]["CreatedByNameUrl"] = - "/" + this.fileData[i].cvInfo.OwnerId; - this.fileData[i]["CreatedDate"] = - this.fileData[i].cvInfo.CreatedDate; - this.fileData[i]["attUrl"] = "/" + this.fileData[i].cvInfo.Id; - this.fileData[i]["downloadUrl"] = - "/sfc/servlet.shepherd/document/download/" + - this.fileData[i].cvInfo.ContentDocumentId + - "?operationContext=S1"; - if (this.isDisabledAttachment) { - console.log("杩涘叆this.isDisabledAttachment"); - this.fileData[i]["isDisabledAttachment"] = true; - } - let typeOptions = []; - for (var key in this.fileData[i].mailSelectOptsMap) { - let typeOption = {}; - typeOption["label"] = this.fileData[i].mailSelectOptsMap[key]; - typeOption["value"] = key; - typeOptions.push(typeOption); - } - this.fileData[i]["typeValue"] = - this.fileData[i].mailSelectOptsin == null - ? typeOptions[0].value - : this.fileData[i].mailSelectOptsin; - this.fileData[i]["typeOptions"] = typeOptions; - this.fileData[i]["mailSelectOptsin"] = - this.fileData[i].mailSelectOptsin == null - ? typeOptions[0].value - : this.fileData[i].mailSelectOptsin; - } - console.log("this.fileData = " + JSON.stringify(this.fileData)); - } - - //鍙戠エ鏄庣粏 - this.invoiceOrderdetail1Recoeds = - r.entity.invoiceOrderdetail1Recoeds; - for (var i in this.invoiceOrderdetail1Recoeds) { - this.invoiceOrderdetail1Recoeds[i]["esdetProductOutDate"] = - this.invoiceOrderdetail1Recoeds[i].esdet.Product_OutDate__c; - this.invoiceOrderdetail1Recoeds[i]["esdetInvoicedet1ODlinkName"] = - this.invoiceOrderdetail1Recoeds[ - i - ].esdet.Invoicedet1_OD_link__r.Name; - this.invoiceOrderdetail1Recoeds[i]["esdetAssetModelNo"] = - this.invoiceOrderdetail1Recoeds[i].esdet.Asset_Model_No__c; - this.invoiceOrderdetail1Recoeds[i]["esdetInvoiceUnit"] = - this.invoiceOrderdetail1Recoeds[i].esdet.Invoice_Unit__c; - this.invoiceOrderdetail1Recoeds[i]["esdetInvoiceUnitprice"] = - this.invoiceOrderdetail1Recoeds[i].esdet.Invoice_Unitprice__c; - this.invoiceOrderdetail1Recoeds[i]["esdetInvoicedCount"] = - this.invoiceOrderdetail1Recoeds[i].esdet.Invoiced_Count__c; - this.invoiceOrderdetail1Recoeds[i]["esdetInvoicedProCostRMB"] = - this.invoiceOrderdetail1Recoeds[i].esdet.InvoicedProCost_RMB__c; - } - //瀹㈡埛鍚� - this.HospitalName = r.entity.HospitalName; - this.HospitalInfo = r.entity.HospitalInfo; - this.agencyProType = r.entity.agencyProType; - //if (this.agencyProType != 'ET') - this.isOpenReportDisabled = false; - //绉戝 - this.ForCustomerText = this.coc.Order_ForCustomerText__c; - //澶囨敞 - this.InvoiceNote = this.coc.Invoice_Note__c; - //浜岀骇缁忛攢鍟� - for (var key in r.entity.provinceOptsMap) { - let object = {}; - object["label"] = r.entity.provinceOptsMap[key]; - object["value"] = key; - this.provinceOptsMap.push(object); - } - //鍑鸿揣涓�瑙坈olumns - - if (this.EditAble) { - let object1 = { - label: "瀹㈡埛鍚�", - fieldName: "hospitalName", - hideDefaultActions: true, - wrapText: true - }; - let object2 = { - label: "鍑鸿揣閲戦(鍏�)", - fieldName: "shipmentAmount", - type: "number", - typeAttributes: { - minimumFractionDigits: 2 - }, - hideDefaultActions: true - }; - let object3 = { - label: "杩斿搧閲戦(鍏�)", - fieldName: "returnAmount", - type: "number", - typeAttributes: { - minimumFractionDigits: 2 - }, - hideDefaultActions: true - }; - this.outboundColumns.push(object1); - this.outboundColumns.push(object2); - this.outboundColumns.push(object3); - } - let object4 = { - label: "鏈彂绁ㄩ噾棰�(鍏�)", - fieldName: "uninvoicedAmount", - type: "number", - typeAttributes: { - minimumFractionDigits: 2 - }, - hideDefaultActions: true - }; - this.outboundColumns.push(object4); - - //鍑鸿揣涓�瑙圖ata - let index = 0; - for (var i in this.outboundData) { - this.outboundData[i]["esdOutboundDate"] = - this.outboundData[i].esd.Outbound_Date__c; - this.outboundData[i]["esdNameUrl"] = - "/s/lexsummonscreat?ESetid=" + this.outboundData[i].esd.Id; - this.outboundData[i]["esdName"] = this.outboundData[i].esd.Name; - if (this.EditAble) { - this.outboundData[i]["hospitalName"] = - this.outboundData[i].esd.ShipmentAccount__c; - this.outboundData[i]["shipmentAmount"] = - this.outboundData[i].esd.Shipment_total_amount__c; - this.outboundData[i]["returnAmount"] = - this.outboundData[i].esd.RrturnPro_total_amount__c; - } - this.outboundData[i]["uninvoicedAmount"] = - this.outboundData[i].esd.InvoiceNotPro_money__c; - this.outboundData[i]["invoiceFaceAmount"] = - this.keepTwoDecimalStr(this.outboundData[i].needInvoiceCount); - if ( - !( - this.outboundData[i].esd.Billed_Status__c == "鍏ㄩ儴寮�绁�" || - this.EditAble || - this.coc.Invoice_status__c != "鑽夋涓�" - ) - ) { - console.log("杩涘叆 if"); - let url = - "/lexconinvoiceview?orderId=" + - this.outboundData[i].esd.Id + - "&invoiceId=" + - this.invoiceId; - this.outboundData[i]["invoiceFaceAmountUrl"] = url; - if (index == 0) { - let object5 = { - label: "鍙戠エ绁ㄩ潰閲戦(鍏�)", - cellAttributes: { alignment: "right" }, - type: "url", - fieldName: "invoiceFaceAmountUrl", - typeAttributes: { - label: { - fieldName: "invoiceFaceAmount" - } - //target: "_blank", - }, - hideDefaultActions: true - }; - this.outboundColumns.push(object5); - index++; - } - } else { - console.log("杩涘叆 else"); - if (index == 0) { - let object5 = { - label: "鍙戠エ绁ㄩ潰閲戦(鍏�)", - cellAttributes: { alignment: "right" }, - fieldName: "invoiceFaceAmount", - hideDefaultActions: true, - type: "number", - typeAttributes: { - minimumFractionDigits: 2 + this.isShowSpinner = false; + this.isDetailsShow = true; + } else { + this.showMyToast('鍒濆鍖栧け璐�', r.msg, 'Error'); } - }; - this.outboundColumns.push(object5); - index++; + }) + .catch((error) => { + this.isShowSpinner = false; + console.log('error = ' + JSON.stringify(error)); + }); + } else if ( + this.deliveryId == '' && + this.invoiceId == '' && + this.isNew == '' + ) { + console.log('conInvoiceListInit'); + conInvoiceListInit() + .then((r) => { + r = JSON.parse(JSON.stringify(r)); + console.log('conInvoiceListInit r = ' + JSON.stringify(r)); + if (r.status == 'Success') { + this.ConInvoiceListAccountId = r.entity.accountid; + this.ConInvoiceListUserWorkLocation = + r.entity.userWorkLocation; + + this.ConInvoiceListAgencyProType = + r.entity.agencyProType; + //if (this.ConInvoiceListAgencyProType != 'ET') + this.isOpenReportDisabled = false; + this.invoiceData = r.entity.raesList; + for (var i in this.invoiceData) { + this.invoiceData[i]['NameUrl'] = + '/lexconinvoiceview?invoiceId=' + + this.invoiceData[i].Id; + } + console.log( + 'this.invoiceData = ' + + JSON.stringify(this.invoiceData) + ); + for (var key in r.entity.statusMap) { + let object = {}; + object['label'] = key; + object['value'] = r.entity.statusMap[key]; + this.invoiceStatusOptions.push(object); + } + this.invoiceStatusOptions = [ + ...this.invoiceStatusOptions + ]; + console.log( + 'this.invoiceStatusOptions = ' + + JSON.stringify(this.invoiceStatusOptions) + ); + this.isShowSpinner = false; + } else { + this.showMyToast('鍒濆鍖栧け璐�', r.msg, 'Error'); + } + }) + .catch((error) => { + console.log('error = ' + JSON.stringify(error)); + }); + } else { + console.log('init'); + this.isConInvoiceList = false; + init({ + invoiceId: this.invoiceId, + statusEdit: this.statusEdit, + deliveryId: this.deliveryId + }) + .then((r) => { + r = JSON.parse(JSON.stringify(r)); + console.log('r = ' + JSON.stringify(r)); + if (r.status == 'Success') { + this.coc = r.entity.coc; + this.cocId = this.coc.Id; + this.EditAble = r.entity.EditAble; + this.isChange = r.entity.isChange; + this.ExistOutbound = r.entity.ExistOutbound; + this.outboundData = r.entity.invoiceOrderRecoeds; + console.log( + 'this.outboundData = ' + + JSON.stringify(this.outboundData) + ); + this.done = r.entity.done; + this.accountid = r.entity.accountid; + this.userWorkLocation = r.entity.userWorkLocation; + this.outOrderStringListLwc = + r.entity.outOrderStringList; + this.outordercountMapLwc = r.entity.outordercountMap; + this.invoiceOrderRecoedschange = + r.entity.invoiceOrderRecoedschange; + this.isDisabledEdit = + this.coc.Invoice_status__c == '鎻愪氦' || + this.coc.Invoice_status__c == '宸插畬鎴�' + ? true + : false; + this.isDisabledReopen = + this.coc.Invoice_status__c == '鎻愪氦' ? false : true; + this.isDisabledDelete = + this.coc.Invoice_status__c == '鑽夋涓�' + ? false + : true; + this.isDisabledAttachment = + this.coc.Invoice_status__c == '宸插畬鎴�' + ? true + : false; + this.OrderCode = this.coc.Name; + this.InvoiceDate = this.coc.Invoice_Date__c; + + for (var i in this.outboundData) { + this.outboundData[i].Id = + this.outboundData[i].esd.Id; + if (this.outboundData[i].check) + this.selectedRows.push( + this.outboundData[i].esd.Id + ); + } + this.selectedRows = [...this.selectedRows]; + console.log( + 'r.entity.attachmentRecoeds = ' + + JSON.stringify(r.entity.attachmentRecoeds) + ); + if (!this.EditAble) { + //闄勪欢鏄剧ず + this.showLoadingSpinner = true; + this.fileData = r.entity.attachmentRecoeds; + for (var i in this.fileData) { + this.fileData[i]['Id'] = + this.fileData[i].cvInfo.Id; + this.fileData[i]['recordId'] = + this.fileData[i].cvInfo.Id; + this.fileData[i]['url'] = + '/' + this.fileData[i].cvInfo.Id; + this.fileData[i]['Title'] = + this.fileData[i].cvInfo.Title; + this.fileData[i]['CreatedByName'] = + this.fileData[i].cvInfo.Owner.Name; + this.fileData[i]['CreatedByNameUrl'] = + '/' + this.fileData[i].cvInfo.OwnerId; + this.fileData[i]['CreatedDate'] = + this.fileData[i].cvInfo.CreatedDate; + this.fileData[i]['attUrl'] = + '/' + this.fileData[i].cvInfo.Id; + this.fileData[i]['downloadUrl'] = + '/sfc/servlet.shepherd/document/download/' + + this.fileData[i].cvInfo.ContentDocumentId + + '?operationContext=S1'; + if (this.isDisabledAttachment) { + console.log( + '杩涘叆this.isDisabledAttachment' + ); + this.fileData[i][ + 'isDisabledAttachment' + ] = true; + } + let typeOptions = []; + for (var key in this.fileData[i] + .mailSelectOptsMap) { + let typeOption = {}; + typeOption['label'] = + this.fileData[i].mailSelectOptsMap[key]; + typeOption['value'] = key; + typeOptions.push(typeOption); + } + this.fileData[i]['typeValue'] = + this.fileData[i].mailSelectOptsin == null + ? typeOptions[0].value + : this.fileData[i].mailSelectOptsin; + this.fileData[i]['typeOptions'] = typeOptions; + this.fileData[i]['mailSelectOptsin'] = + this.fileData[i].mailSelectOptsin == null + ? typeOptions[0].value + : this.fileData[i].mailSelectOptsin; + } + console.log( + 'this.fileData = ' + + JSON.stringify(this.fileData) + ); + } + + //鍙戠エ鏄庣粏 + this.invoiceOrderdetail1Recoeds = + r.entity.invoiceOrderdetail1Recoeds; + for (var i in this.invoiceOrderdetail1Recoeds) { + this.invoiceOrderdetail1Recoeds[i][ + 'esdetProductOutDate' + ] = + this.invoiceOrderdetail1Recoeds[ + i + ].esdet.Product_OutDate__c; + this.invoiceOrderdetail1Recoeds[i][ + 'esdetInvoicedet1ODlinkName' + ] = + this.invoiceOrderdetail1Recoeds[ + i + ].esdet.Invoicedet1_OD_link__r.Name; + this.invoiceOrderdetail1Recoeds[i][ + 'esdetAssetModelNo' + ] = + this.invoiceOrderdetail1Recoeds[ + i + ].esdet.Asset_Model_No__c; + this.invoiceOrderdetail1Recoeds[i][ + 'esdetInvoiceUnit' + ] = + this.invoiceOrderdetail1Recoeds[ + i + ].esdet.Invoice_Unit__c; + this.invoiceOrderdetail1Recoeds[i][ + 'esdetInvoiceUnitprice' + ] = + this.invoiceOrderdetail1Recoeds[ + i + ].esdet.Invoice_Unitprice__c; + this.invoiceOrderdetail1Recoeds[i][ + 'esdetInvoicedCount' + ] = + this.invoiceOrderdetail1Recoeds[ + i + ].esdet.Invoiced_Count__c; + this.invoiceOrderdetail1Recoeds[i][ + 'esdetInvoicedProCostRMB' + ] = + this.invoiceOrderdetail1Recoeds[ + i + ].esdet.InvoicedProCost_RMB__c; + } + //瀹㈡埛鍚� + this.HospitalName = r.entity.HospitalName; + this.HospitalInfo = r.entity.HospitalInfo; + this.agencyProType = r.entity.agencyProType; + //if (this.agencyProType != 'ET') + this.isOpenReportDisabled = false; + //绉戝 + this.ForCustomerText = + this.coc.Order_ForCustomerText__c; + //澶囨敞 + this.InvoiceNote = this.coc.Invoice_Note__c; + //浜岀骇缁忛攢鍟� + for (var key in r.entity.provinceOptsMap) { + let object = {}; + object['label'] = r.entity.provinceOptsMap[key]; + object['value'] = key; + this.provinceOptsMap.push(object); + } + //鍑鸿揣涓�瑙坈olumns + + if (this.EditAble) { + let object1 = { + label: '瀹㈡埛鍚�', + fieldName: 'hospitalName', + hideDefaultActions: true, + wrapText: true + }; + let object2 = { + label: '鍑鸿揣閲戦(鍏�)', + fieldName: 'shipmentAmount', + type: 'number', + typeAttributes: { + minimumFractionDigits: 2 + }, + hideDefaultActions: true + }; + let object3 = { + label: '杩斿搧閲戦(鍏�)', + fieldName: 'returnAmount', + type: 'number', + typeAttributes: { + minimumFractionDigits: 2 + }, + hideDefaultActions: true + }; + this.outboundColumns.push(object1); + this.outboundColumns.push(object2); + this.outboundColumns.push(object3); + } + let object4 = { + label: '鏈彂绁ㄩ噾棰�(鍏�)', + fieldName: 'uninvoicedAmount', + type: 'number', + typeAttributes: { + minimumFractionDigits: 2 + }, + hideDefaultActions: true + }; + this.outboundColumns.push(object4); + + //鍑鸿揣涓�瑙圖ata + let index = 0; + for (var i in this.outboundData) { + this.outboundData[i]['esdOutboundDate'] = + this.outboundData[i].esd.Outbound_Date__c; + this.outboundData[i]['esdNameUrl'] = + '/s/lexsummonscreat?ESetid=' + + this.outboundData[i].esd.Id; + this.outboundData[i]['esdName'] = + this.outboundData[i].esd.Name; + if (this.EditAble) { + this.outboundData[i]['hospitalName'] = + this.outboundData[i].esd.ShipmentAccount__c; + this.outboundData[i]['shipmentAmount'] = + this.outboundData[ + i + ].esd.Shipment_total_amount__c; + this.outboundData[i]['returnAmount'] = + this.outboundData[ + i + ].esd.RrturnPro_total_amount__c; + } + this.outboundData[i]['uninvoicedAmount'] = + this.outboundData[i].esd.InvoiceNotPro_money__c; + this.outboundData[i]['invoiceFaceAmount'] = + this.keepTwoDecimalStr( + this.outboundData[i].needInvoiceCount + ); + if ( + !( + this.outboundData[i].esd.Billed_Status__c == + '鍏ㄩ儴寮�绁�' || + this.EditAble || + this.coc.Invoice_status__c != '鑽夋涓�' + ) + ) { + console.log('杩涘叆 if'); + let url = + '/lexconinvoiceview?orderId=' + + this.outboundData[i].esd.Id + + '&invoiceId=' + + this.invoiceId; + this.outboundData[i]['invoiceFaceAmountUrl'] = + url; + if (index == 0) { + let object5 = { + label: '鍙戠エ绁ㄩ潰閲戦(鍏�)', + cellAttributes: { alignment: 'right' }, + type: 'url', + fieldName: 'invoiceFaceAmountUrl', + typeAttributes: { + label: { + fieldName: 'invoiceFaceAmount' + } + //target: "_blank", + }, + hideDefaultActions: true + }; + this.outboundColumns.push(object5); + index++; + } + } else { + console.log('杩涘叆 else'); + if (index == 0) { + let object5 = { + label: '鍙戠エ绁ㄩ潰閲戦(鍏�)', + cellAttributes: { alignment: 'right' }, + fieldName: 'invoiceFaceAmount', + hideDefaultActions: true, + type: 'number', + typeAttributes: { + minimumFractionDigits: 2 + } + }; + this.outboundColumns.push(object5); + index++; + } + } + //璁$畻鍙戠エ绁ㄩ潰閲戦 + this.sumPrice += + this.outboundData[i].needInvoiceCount; + } + + //鍥涜垗浜斿叆 + //this.sumPrice = this.sumPrice.toFixed(2); + //濡傛灉涓嶅洓鑸嶄簲鍏� + console.log('start keepTwoDecimalStr'); + this.sumPrice = this.keepTwoDecimalStr(this.sumPrice); + console.log('end keepTwoDecimalStr = ' + this.sumPrice); + //鍔犳渶鍚庝竴琛屾樉绀洪噾棰� + if (this.EditAble) { + let lastOutboundData = { + invoiceFaceAmount: this.sumPrice + }; + this.outboundDataSumPrice.push(lastOutboundData); + } + this.outboundColumns = [...this.outboundColumns]; + + this.isEditInvoice = !(!this.EditAble || this.isChange); + if ( + this.coc.SummonsForDirction__c == '閿�鍞粰浜岀骇缁忛攢鍟�' + ) + this.isShowSecondaryDistributor = true; + if ( + this.deliveryId == '' && + !this.ExistOutbound && + this.EditAble + ) + this.hideCheckbox = false; + this.isShowSpinner = false; + this.showLoadingSpinner = false; + } else { + this.showMyToast('澶辫触', r.msg, 'Error'); + } + }) + .catch((error) => { + console.log('error = ' + JSON.stringify(error)); + }); + } + } + + //涓婁紶閰嶇疆鍗� + uploadOrder(event) { + this.showAttPop = true; + } + + //鍏抽棴闄勪欢寮圭獥 + closePop() { + this.showAttPop = false; + this.filesUploaded = []; + this.fileName = null; + } + + //闄勪欢change浜嬩欢 + attChange(event) { + if (event.target.files.length > 0) { + this.filesUploaded = event.target.files; + this.fileName = event.target.files[0].name; + console.log('this.fileName:' + this.fileName); + } + } + + //绉婚櫎闄勪欢 + removeAtt() { + this.filesUploaded = []; + this.fileName = ''; + } + + //鏄惁鏄剧ず闄勪欢绉婚櫎 + get attDelBtn() { + if ( + this.fileName != '' && + this.fileName != null && + this.fileName != '閫夋嫨涓�涓枃浠朵笂浼�' + ) { + return true; + } else { + return false; + } + } + + keepTwoDecimalStr(num) { + const result = Number(num.toString().match(/^\d+(?:\.\d{0,2})?/)); + let s = result.toString(); + let rs = s.indexOf('.'); + if (rs < 0) { + rs = s.length; + s += '.'; + } + while (s.length <= rs + 2) { + s += '0'; + } + return s; + } + + dataChange(event) { + let fieldName = event.target.getAttribute('data-field'); + let value = event.detail.value; + console.log('fieldName = ' + fieldName + ' value = ' + value); + switch (fieldName) { + case 'OrderCode': + this.OrderCode = value; + this.coc['Name'] = value; + break; + case 'ForCustomerText': + this.ForCustomerText = value; + this.coc['Order_ForCustomerText__c'] = value; + break; + case 'InvoiceDate': + this.InvoiceDate = value; + this.coc['Invoice_Date__c'] = value; + break; + case 'secondaryDistributor': + this.secondaryDistributor = value; + break; + case 'deliveryFromDate': + this.deliveryFromDate = value; + break; + case 'deliveryToDate': + this.deliveryToDate = value; + break; + case 'category1': + this.category1 = value; + break; + case 'category2': + this.category2 = value; + break; + case 'invoiceStatus': + this.invoiceStatusValue = value; + break; + case 'searchHospitalName': + this.searchHospitalName = value; + break; + case 'InvoiceNote': + this.InvoiceNote = value; + this.coc['Invoice_Note__c'] = value; + break; + } + } + + invoiceDateChange(event) { + this.InvoiceDate = event.detail.value; + this.coc['Invoice_Date__c'] = event.detail.value; + console.log('this.InvoiceDate = ' + this.InvoiceDate); + } + + //鎼滅储瀹㈡埛鍚� + searchHospitalNameModal() { + console.log('searchHospitalNameModal'); + hospitalInit({ + ctype: this.agencyProType + }).then((r) => { + r = JSON.parse(JSON.stringify(r)); + if (r.status == 'Success') { + this.hospitalList = r.entity.at; + for (var i in this.hospitalList) { + this.hospitalList[i]['stateMasterName'] = + this.hospitalList[i].State_Master__r.Name; } - } - //璁$畻鍙戠エ绁ㄩ潰閲戦 - this.sumPrice += this.outboundData[i].needInvoiceCount; + console.log( + 'hospitalInit r = ' + JSON.stringify(this.hospitalList) + ); + this.isModalOpen = true; } - - //鍥涜垗浜斿叆 - //this.sumPrice = this.sumPrice.toFixed(2); - //濡傛灉涓嶅洓鑸嶄簲鍏� - console.log("start keepTwoDecimalStr"); - this.sumPrice = this.keepTwoDecimalStr(this.sumPrice); - console.log("end keepTwoDecimalStr = " + this.sumPrice); - //鍔犳渶鍚庝竴琛屾樉绀洪噾棰� - if (this.EditAble) { - let lastOutboundData = { - invoiceFaceAmount: this.sumPrice - }; - this.outboundDataSumPrice.push(lastOutboundData); - } - this.outboundColumns = [...this.outboundColumns]; - - this.isEditInvoice = !(!this.EditAble || this.isChange); - if (this.coc.SummonsForDirction__c == "閿�鍞粰浜岀骇缁忛攢鍟�") - this.isShowSecondaryDistributor = true; - if (this.deliveryId == "" && !this.ExistOutbound && this.EditAble) - this.hideCheckbox = false; - this.isShowSpinner = false; - this.showLoadingSpinner = false; - } else { - this.showMyToast("澶辫触", r.msg, "Error"); - } - }) - .catch((error) => { - console.log("error = " + JSON.stringify(error)); }); } - } - //涓婁紶閰嶇疆鍗� - uploadOrder(event) { - this.showAttPop = true; - } - - //鍏抽棴闄勪欢寮圭獥 - closePop() { - this.showAttPop = false; - this.filesUploaded = []; - this.fileName = null; - } - - //闄勪欢change浜嬩欢 - attChange(event) { - if (event.target.files.length > 0) { - this.filesUploaded = event.target.files; - this.fileName = event.target.files[0].name; - console.log("this.fileName:" + this.fileName); - } - } - - //绉婚櫎闄勪欢 - removeAtt() { - this.filesUploaded = []; - this.fileName = ""; - } - - //鏄惁鏄剧ず闄勪欢绉婚櫎 - get attDelBtn() { - if ( - this.fileName != "" && - this.fileName != null && - this.fileName != "閫夋嫨涓�涓枃浠朵笂浼�" - ) { - return true; - } else { - return false; - } - } - - keepTwoDecimalStr(num) { - const result = Number(num.toString().match(/^\d+(?:\.\d{0,2})?/)); - let s = result.toString(); - let rs = s.indexOf("."); - if (rs < 0) { - rs = s.length; - s += "."; - } - while (s.length <= rs + 2) { - s += "0"; - } - return s; - } - - dataChange(event) { - let fieldName = event.target.getAttribute("data-field"); - let value = event.detail.value; - console.log("fieldName = " + fieldName + " value = " + value); - switch (fieldName) { - case "OrderCode": - this.OrderCode = value; - this.coc["Name"] = value; - break; - case "ForCustomerText": - this.ForCustomerText = value; - this.coc["Order_ForCustomerText__c"] = value; - break; - case "InvoiceDate": - this.InvoiceDate = value; - this.coc["Invoice_Date__c"] = value; - break; - case "secondaryDistributor": - this.secondaryDistributor = value; - break; - case "deliveryFromDate": - this.deliveryFromDate = value; - break; - case "deliveryToDate": - this.deliveryToDate = value; - break; - case "category1": - this.category1 = value; - break; - case "category2": - this.category2 = value; - break; - case "invoiceStatus": - this.invoiceStatusValue = value; - break; - case "searchHospitalName": - this.searchHospitalName = value; - break; - case "InvoiceNote": - this.InvoiceNote = value; - this.coc["Invoice_Note__c"] = value; - break; - } - } - - invoiceDateChange(event) { - this.InvoiceDate = event.detail.value; - this.coc["Invoice_Date__c"] = event.detail.value; - console.log("this.InvoiceDate = " + this.InvoiceDate); - } - - //鎼滅储瀹㈡埛鍚� - searchHospitalNameModal() { - console.log("searchHospitalNameModal"); - hospitalInit({ - ctype: this.agencyProType - }).then((r) => { - r = JSON.parse(JSON.stringify(r)); - if (r.status == "Success") { - this.hospitalList = r.entity.at; - for (var i in this.hospitalList) { - this.hospitalList[i]["stateMasterName"] = - this.hospitalList[i].State_Master__r.Name; - } - console.log("hospitalInit r = " + JSON.stringify(this.hospitalList)); - this.isModalOpen = true; - } - }); - } - - searchHospital() { - console.log("this.searchHospitalName = " + this.searchHospitalName); - serContact({ - searchName: this.searchHospitalName, - ctype: this.agencyProType - }).then((r) => { - r = JSON.parse(JSON.stringify(r)); - if (r.status == "Success") { - this.hospitalList = r.entity.at; - for (var i in this.hospitalList) { - this.hospitalList[i]["stateMasterName"] = - this.hospitalList[i].State_Master__r.Name; - } - console.log("hospitalInit r = " + JSON.stringify(this.hospitalList)); - } - }); - } - - //閫夋嫨瀹㈡埛鍚� - searchHandleRowAction(event) { - console.log("searchHandleRowAction"); - let row = event.detail.row; - this.HospitalInfo = row.Id; - this.HospitalName = row.Name; - console.log( - "this.HospitalInfo = " + - this.HospitalInfo + - " this.HospitalName = " + - this.HospitalName - ); - this.isModalOpen = false; - } - - //褰撳鎴峰悕鏄┖鏃躲�傚鎴穒d涔熷彉涓虹┖ - clearAgencyI(event) { - this.HospitalName = event.target.value; - if (this.HospitalName == "" || this.HospitalName == null) { - this.HospitalInfo = ""; - } - console.log("this.HospitalName = " + this.HospitalName); - console.log("this.HospitalInfo = " + this.HospitalInfo); - } - - closeModal() { - this.isModalOpen = false; - } - - SaveJs() { - this.isShowSpinner = true; - let cloneData = this.outboundData; - - debugger; - const selectedRows = this.template - .querySelector("[data-field='outbound']") - .getSelectedRows(); - console.log("selectedRows = " + JSON.stringify(selectedRows)); - - for (var i in cloneData) { - let b = false; - for (var j in selectedRows) { - if (cloneData[i].esd.Id == selectedRows[j].esd.Id) { - b = true; - cloneData[i].check = true; - } - } - if (!b) { - cloneData[i].check = false; - } - delete cloneData[i].esdOutboundDate; - delete cloneData[i].esdNameUrl; - delete cloneData[i].esdName; - delete cloneData[i].hospitalName; - delete cloneData[i].shipmentAmount; - delete cloneData[i].returnAmount; - delete cloneData[i].uninvoicedAmount; - delete cloneData[i].invoiceFaceAmount; - delete cloneData[i].invoiceFaceAmountUrl; - } - - console.log("this.coc = " + JSON.stringify(this.coc)); - console.log("this.HospitalName = " + this.HospitalName); - console.log("this.HospitalInfo = " + this.HospitalInfo); - console.log("this.secondaryDistributor = " + this.secondaryDistributor); - console.log("this.outboundData = " + JSON.stringify(cloneData)); - console.log("this.deliveryId = " + this.deliveryId); - console.log("this.invoiceId = " + this.invoiceId); - console.log("this.accountid = " + this.accountid); - console.log("this.agencyProType = " + this.agencyProType); - console.log("this.reopen = " + this.reopen); - console.log( - "this.invoiceOrderRecoedschangeLwc = " + - JSON.stringify(this.invoiceOrderRecoedschange) - ); - save({ - cocLwc: this.coc, - HospitalNameLwc: this.HospitalName, - HospitalInfoLwc: this.HospitalInfo, - SecondDealerLwc: this.secondaryDistributor, - invoiceOrderRecoedsLwc: JSON.stringify(cloneData), - deliveryIdLwc: this.deliveryId, - invoiceIdLwc: this.invoiceId, - accountidLwc: this.accountid, - agencyProTypeLwc: this.agencyProType, - reopenLwc: this.reopen, - invoiceOrderRecoedschangeLwc: JSON.stringify( - this.invoiceOrderRecoedschange - ) - }) - .then((r) => { - r = JSON.parse(JSON.stringify(r)); - console.log("r = " + JSON.stringify(r)); - if (r.status == "Success" && r.msg == "") { - this.isShowSpinner = false; - console.log("save success"); - let url = "/lexconinvoiceview?invoiceId=" + r.entity.invoiceId; - console.log("url = " + url); - this[NavigationMixin.Navigate]({ - type: "standard__webPage", - attributes: { - url: url + searchHospital() { + console.log('this.searchHospitalName = ' + this.searchHospitalName); + serContact({ + searchName: this.searchHospitalName, + ctype: this.agencyProType + }).then((r) => { + r = JSON.parse(JSON.stringify(r)); + if (r.status == 'Success') { + this.hospitalList = r.entity.at; + for (var i in this.hospitalList) { + this.hospitalList[i]['stateMasterName'] = + this.hospitalList[i].State_Master__r.Name; + } + console.log( + 'hospitalInit r = ' + JSON.stringify(this.hospitalList) + ); } - }); - } else { - this.showMyToast("淇濆瓨澶辫触", r.msg, "Error"); - } - }) - .catch((error) => { - console.log("error = " + JSON.stringify(error)); - }); - } - - //涓婁紶闄勪欢锛岀洿鎺ュ氨淇濆瓨濂斤紝鐒跺悗灞曠ず - handleFilesChange(event) { - console.log("handleFilesChange"); - this.handleSave(); - // if (event.target.files.length > 0) { - // this.filesUploaded = event.target.files; - // this.fileName = event.target.files[0].name; - // this.handleSave(); - // } - } - - handleSave() { - console.log("saveFile"); - if (this.filesUploaded.length > 0) { - this.showPopSpinner = true; - this.file = this.filesUploaded[0]; - if (this.file.size > this.MAX_FILE_SIZE) { - this.showMyToast("淇濆瓨澶辫触", "鏂囦欢杩囧ぇ", "Error"); - return; - } - this.fileReader = new FileReader(); - - this.fileReader.onloadend = () => { - this.fileContents = this.fileReader.result; - let base64 = "base64,"; - this.content = this.fileContents.indexOf(base64) + base64.length; - this.fileContents = this.fileContents.substring(this.content); - this.saveToFile(); - }; - this.fileReader.readAsDataURL(this.file); - } else { - this.fileName = "閫夋嫨涓�涓枃浠朵笂浼�"; + }); } - } - saveToFile() { - console.log("saveToFile"); - console.log("invoiceId = " + this.invoiceId); - console.log("fileName = " + this.fileName); - console.log("base64Data = " + encodeURIComponent(this.fileContents)); - saveFile({ - recordId: this.invoiceId, - fileName: this.fileName, - base64Data: encodeURIComponent(this.fileContents) - }) - .then((r) => { - r = JSON.parse(JSON.stringify(r)); - console.log("r = " + JSON.stringify(r)); - if (r != "") { - this.showPopSpinner = false; - this.showMyToast("涓婁紶鎴愬姛", "", "Success"); - this.closePop(); - this.init(); - } else { - this.showMyToast("涓婁紶澶辫触", r.msg, "Error"); - } - }) - .catch((error) => { - console.log("error = " + error.message); - this.showMyToast("閿欒", "涓婁紶澶辫触", "Error"); - }); - } - - handleTypeChange(event) { - console.log("handleTypeChange"); - const typeDetail = event.detail; - console.log("typeDetail = " + JSON.stringify(typeDetail)); - for (var i in this.fileData) { - if (this.fileData[i].recordId == typeDetail.data.recordId) { - this.fileData[i].typeValue = typeDetail.data.typeValue; - this.fileData[i].mailSelectOptsin = typeDetail.data.typeValue; - } + //閫夋嫨瀹㈡埛鍚� + searchHandleRowAction(event) { + console.log('searchHandleRowAction'); + let row = event.detail.row; + this.HospitalInfo = row.Id; + this.HospitalName = row.Name; + console.log( + 'this.HospitalInfo = ' + + this.HospitalInfo + + ' this.HospitalName = ' + + this.HospitalName + ); + this.isModalOpen = false; } - console.log("this.fileData = " + JSON.stringify(this.fileData)); - } - newInvoiceJs() { - let url = "/lexconinvoiceview?isNew=yes"; - console.log("url = " + url); - this[NavigationMixin.Navigate]({ - type: "standard__webPage", - attributes: { - url: url - } - }); - } - - saveAttachmentJs() { - debugger; - this.showLoadingSpinner = true; - let cloneData = this.deepClone(this.fileData); - for (var i in cloneData) { - delete cloneData[i].Id; - delete cloneData[i].recordId; - delete cloneData[i].url; - delete cloneData[i].Title; - delete cloneData[i].CreatedByName; - delete cloneData[i].CreatedByNameUrl; - delete cloneData[i].CreatedDate; - delete cloneData[i].typeValue; - delete cloneData[i].typeOptions; - delete cloneData[i].mailSelectOptsMap; - } - console.log("cloneData = " + JSON.stringify(cloneData)); - saveAttachment({ - attachmentRecoedsLwc: JSON.stringify(cloneData), - invoiceId: this.invoiceId - }) - .then((r) => { - r = JSON.parse(JSON.stringify(r)); - console.log("r = " + JSON.stringify(r)); - if (r.status == "Success") { - this.showLoadingSpinner = false; - this.isShowSpinner = true; - // const event = new ShowToastEvent({ - // title: 'Success', - // variant: 'Success', - // message: '淇濆瓨鎴愬姛', - // }); - // this.dispatchEvent(event); - this.showMyToast("闄勪欢淇濆瓨鎴愬姛", "", "Success"); - //this.init(); - setTimeout(function () { - //1绉掑悗鎵ц鍒锋柊 - window.location.reload(); - }, 2000); //鍗曚綅鏄绉� - // let url = "/lexconinvoiceview?invoiceId=" + this.invoiceId; - // console.log('url = ' + url); - // this[NavigationMixin.Navigate]({ - // type: "standard__webPage", - // attributes: { - // url: url, - // }, - // }); - } else { - this.showMyToast("涓婁紶澶辫触", r.msg, "Error"); + //褰撳鎴峰悕鏄┖鏃躲�傚鎴穒d涔熷彉涓虹┖ + clearAgencyI(event) { + this.HospitalName = event.target.value; + if (this.HospitalName == '' || this.HospitalName == null) { + this.HospitalInfo = ''; } - }) - .catch((error) => { - console.log("error = " + error.message); - this.showMyToast("閿欒", "涓婁紶澶辫触", "Error"); - }); - } + console.log('this.HospitalName = ' + this.HospitalName); + console.log('this.HospitalInfo = ' + this.HospitalInfo); + } - invoiceCodeSearchJs() { - this.isShowSpinner = true; - invoiceCodeSearch({ - orderDateLwc: - this.deliveryFromDate == null ? null : new Date(this.deliveryFromDate), - deliverDateLwc: - this.deliveryToDate == null ? null : new Date(this.deliveryToDate), - invoiceStatusLwc: this.invoiceStatusValue, - category1Lwc: this.category1, - category2Lwc: this.category2, - accountidLwc: this.ConInvoiceListAccountId, - userWorkLocationLwc: this.ConInvoiceListUserWorkLocation, - agencyProTypeLwc: this.ConInvoiceListAgencyProType - }) - .then((r) => { - r = JSON.parse(JSON.stringify(r)); - console.log("r = " + JSON.stringify(r)); - if (r.status == "Success") { - this.invoiceData = r.entity.raesList; - for (var i in this.invoiceData) { - this.invoiceData[i]["NameUrl"] = - "/lexconinvoiceview?invoiceId=" + this.invoiceData[i].Id; - } - console.log("this.invoiceData = " + JSON.stringify(this.invoiceData)); - this.isShowSpinner = false; - if (r.entity.raesListSize > 0) { - this.showMyToast( - "鎼滅储鎴愬姛", - "鍏辨绱㈠埌" + r.entity.raesListSize + "涓彂绁�", - "Success" + closeModal() { + this.isModalOpen = false; + } + + SaveJs() { + this.isShowSpinner = true; + let cloneData = this.outboundData; + + debugger; + const selectedRows = this.template + .querySelector("[data-field='outbound']") + .getSelectedRows(); + console.log('selectedRows = ' + JSON.stringify(selectedRows)); + + for (var i in cloneData) { + let b = false; + for (var j in selectedRows) { + if (cloneData[i].esd.Id == selectedRows[j].esd.Id) { + b = true; + cloneData[i].check = true; + } + } + if (!b) { + cloneData[i].check = false; + } + delete cloneData[i].esdOutboundDate; + delete cloneData[i].esdNameUrl; + delete cloneData[i].esdName; + delete cloneData[i].hospitalName; + delete cloneData[i].shipmentAmount; + delete cloneData[i].returnAmount; + delete cloneData[i].uninvoicedAmount; + delete cloneData[i].invoiceFaceAmount; + delete cloneData[i].invoiceFaceAmountUrl; + } + + console.log('this.coc = ' + JSON.stringify(this.coc)); + console.log('this.HospitalName = ' + this.HospitalName); + console.log('this.HospitalInfo = ' + this.HospitalInfo); + console.log('this.secondaryDistributor = ' + this.secondaryDistributor); + console.log('this.outboundData = ' + JSON.stringify(cloneData)); + console.log('this.deliveryId = ' + this.deliveryId); + console.log('this.invoiceId = ' + this.invoiceId); + console.log('this.accountid = ' + this.accountid); + console.log('this.agencyProType = ' + this.agencyProType); + console.log('this.reopen = ' + this.reopen); + console.log( + 'this.invoiceOrderRecoedschangeLwc = ' + + JSON.stringify(this.invoiceOrderRecoedschange) + ); + save({ + cocLwc: this.coc, + HospitalNameLwc: this.HospitalName, + HospitalInfoLwc: this.HospitalInfo, + SecondDealerLwc: this.secondaryDistributor, + invoiceOrderRecoedsLwc: JSON.stringify(cloneData), + deliveryIdLwc: this.deliveryId, + invoiceIdLwc: this.invoiceId, + accountidLwc: this.accountid, + agencyProTypeLwc: this.agencyProType, + reopenLwc: this.reopen, + invoiceOrderRecoedschangeLwc: JSON.stringify( + this.invoiceOrderRecoedschange + ) + }) + .then((r) => { + r = JSON.parse(JSON.stringify(r)); + console.log('r = ' + JSON.stringify(r)); + if (r.status == 'Success' && r.msg == '') { + this.isShowSpinner = false; + console.log('save success'); + let url = + '/lexconinvoiceview?invoiceId=' + r.entity.invoiceId; + console.log('url = ' + url); + this[NavigationMixin.Navigate]({ + type: 'standard__webPage', + attributes: { + url: url + } + }); + } else { + this.showMyToast('淇濆瓨澶辫触', r.msg, 'Error'); + } + }) + .catch((error) => { + console.log('error = ' + JSON.stringify(error)); + }); + } + + //涓婁紶闄勪欢锛岀洿鎺ュ氨淇濆瓨濂斤紝鐒跺悗灞曠ず + handleFilesChange(event) { + console.log('handleFilesChange'); + this.handleSave(); + // if (event.target.files.length > 0) { + // this.filesUploaded = event.target.files; + // this.fileName = event.target.files[0].name; + // this.handleSave(); + // } + } + + handleSave() { + console.log('saveFile'); + if (this.filesUploaded.length > 0) { + this.showPopSpinner = true; + this.file = this.filesUploaded[0]; + if (this.file.size > this.MAX_FILE_SIZE) { + this.showMyToast('淇濆瓨澶辫触', '鏂囦欢杩囧ぇ', 'Error'); + return; + } + this.fileReader = new FileReader(); + + this.fileReader.onloadend = () => { + this.fileContents = this.fileReader.result; + let base64 = 'base64,'; + this.content = + this.fileContents.indexOf(base64) + base64.length; + this.fileContents = this.fileContents.substring(this.content); + this.saveToFile(); + }; + this.fileReader.readAsDataURL(this.file); + } else { + this.fileName = '閫夋嫨涓�涓枃浠朵笂浼�'; + } + } + + saveToFile() { + console.log('saveToFile'); + console.log('invoiceId = ' + this.invoiceId); + console.log('fileName = ' + this.fileName); + console.log('base64Data = ' + encodeURIComponent(this.fileContents)); + saveFile({ + recordId: this.invoiceId, + fileName: this.fileName, + base64Data: encodeURIComponent(this.fileContents) + }) + .then((r) => { + r = JSON.parse(JSON.stringify(r)); + console.log('r = ' + JSON.stringify(r)); + if (r != '') { + this.showPopSpinner = false; + this.showMyToast('涓婁紶鎴愬姛', '', 'Success'); + this.closePop(); + this.init(); + } else { + this.showMyToast('涓婁紶澶辫触', r.msg, 'Error'); + } + }) + .catch((error) => { + console.log('error = ' + error.message); + this.showMyToast('閿欒', '涓婁紶澶辫触', 'Error'); + }); + } + + handleTypeChange(event) { + console.log('handleTypeChange'); + const typeDetail = event.detail; + console.log('typeDetail = ' + JSON.stringify(typeDetail)); + for (var i in this.fileData) { + if (this.fileData[i].recordId == typeDetail.data.recordId) { + this.fileData[i].typeValue = typeDetail.data.typeValue; + this.fileData[i].mailSelectOptsin = typeDetail.data.typeValue; + } + } + console.log('this.fileData = ' + JSON.stringify(this.fileData)); + } + + newInvoiceJs() { + let url = '/lexconinvoiceview?isNew=yes'; + console.log('url = ' + url); + this[NavigationMixin.Navigate]({ + type: 'standard__webPage', + attributes: { + url: url + } + }); + } + + saveAttachmentJs() { + debugger; + this.showLoadingSpinner = true; + let cloneData = this.deepClone(this.fileData); + for (var i in cloneData) { + delete cloneData[i].Id; + delete cloneData[i].recordId; + delete cloneData[i].url; + delete cloneData[i].Title; + delete cloneData[i].CreatedByName; + delete cloneData[i].CreatedByNameUrl; + delete cloneData[i].CreatedDate; + delete cloneData[i].typeValue; + delete cloneData[i].typeOptions; + delete cloneData[i].mailSelectOptsMap; + } + console.log('cloneData = ' + JSON.stringify(cloneData)); + saveAttachment({ + attachmentRecoedsLwc: JSON.stringify(cloneData), + invoiceId: this.invoiceId + }) + .then((r) => { + r = JSON.parse(JSON.stringify(r)); + console.log('r = ' + JSON.stringify(r)); + if (r.status == 'Success') { + this.showLoadingSpinner = false; + this.isShowSpinner = true; + // const event = new ShowToastEvent({ + // title: 'Success', + // variant: 'Success', + // message: '淇濆瓨鎴愬姛', + // }); + // this.dispatchEvent(event); + this.showMyToast('闄勪欢淇濆瓨鎴愬姛', '', 'Success'); + //this.init(); + setTimeout(function () { + //1绉掑悗鎵ц鍒锋柊 + window.location.reload(); + }, 2000); //鍗曚綅鏄绉� + // let url = "/lexconinvoiceview?invoiceId=" + this.invoiceId; + // console.log('url = ' + url); + // this[NavigationMixin.Navigate]({ + // type: "standard__webPage", + // attributes: { + // url: url, + // }, + // }); + } else { + this.showMyToast('涓婁紶澶辫触', r.msg, 'Error'); + } + }) + .catch((error) => { + console.log('error = ' + error.message); + this.showMyToast('閿欒', '涓婁紶澶辫触', 'Error'); + }); + } + + invoiceCodeSearchJs() { + this.isShowSpinner = true; + invoiceCodeSearch({ + orderDateLwc: + this.deliveryFromDate == null + ? null + : new Date(this.deliveryFromDate), + deliverDateLwc: + this.deliveryToDate == null + ? null + : new Date(this.deliveryToDate), + invoiceStatusLwc: this.invoiceStatusValue, + category1Lwc: this.category1, + category2Lwc: this.category2, + accountidLwc: this.ConInvoiceListAccountId, + userWorkLocationLwc: this.ConInvoiceListUserWorkLocation, + agencyProTypeLwc: this.ConInvoiceListAgencyProType + }) + .then((r) => { + r = JSON.parse(JSON.stringify(r)); + console.log('r = ' + JSON.stringify(r)); + if (r.status == 'Success') { + this.invoiceData = r.entity.raesList; + for (var i in this.invoiceData) { + this.invoiceData[i]['NameUrl'] = + '/lexconinvoiceview?invoiceId=' + + this.invoiceData[i].Id; + } + console.log( + 'this.invoiceData = ' + JSON.stringify(this.invoiceData) + ); + this.isShowSpinner = false; + if (r.entity.raesListSize > 0) { + this.showMyToast( + '鎼滅储鎴愬姛', + '鍏辨绱㈠埌' + r.entity.raesListSize + '涓彂绁�', + 'Success' + ); + } else { + this.showMyToast( + '鎼滅储澶辫触', + '娌℃湁鎼滅储鍒扮浉鍏冲彂绁�', + 'Error' + ); + } + } else { + this.showMyToast('鎼滅储澶辫触', r.msg, 'Error'); + } + }) + .catch((error) => { + console.log('error = ' + error.message); + this.showMyToast('閿欒', '鎼滅储澶辫触', 'Error'); + }); + } + + ClearJs() { + this.deliveryFromDate = ''; + this.deliveryToDate = ''; + this.category1 = ''; + this.category2 = ''; + this.invoiceStatusValue = ''; + this.isShowSpinner = true; + conInvoiceListInit() + .then((r) => { + r = JSON.parse(JSON.stringify(r)); + console.log('conInvoiceListInit r = ' + JSON.stringify(r)); + if (r.status == 'Success') { + this.invoiceData = r.entity.raesList; + for (var i in this.invoiceData) { + this.invoiceData[i]['NameUrl'] = + '/lexconinvoiceview?invoiceId=' + + this.invoiceData[i].Id; + } + console.log( + 'this.invoiceData = ' + JSON.stringify(this.invoiceData) + ); + this.isShowSpinner = false; + } else { + this.showMyToast('鎼滅储澶辫触', r.msg, 'Error'); + } + }) + .catch((error) => { + console.log('error = ' + JSON.stringify(error)); + }); + } + + InvoiceorderSearchJs() { + this.isShowSpinner = true; + + debugger; + let cloneData = this.outboundData; + const selectedRows = this.template + .querySelector("[data-field='outbound']") + .getSelectedRows(); + console.log('selectedRows ' + JSON.stringify(selectedRows)); + for (var i in cloneData) { + let b = false; + for (var j in selectedRows) { + if (cloneData[i].esd.Id == selectedRows[j].esd.Id) { + b = true; + cloneData[i].check = true; + } + } + if (!b) { + cloneData[i].check = false; + } + delete cloneData[i].esdOutboundDate; + delete cloneData[i].esdNameUrl; + delete cloneData[i].esdName; + delete cloneData[i].hospitalName; + delete cloneData[i].shipmentAmount; + delete cloneData[i].returnAmount; + delete cloneData[i].uninvoicedAmount; + delete cloneData[i].invoiceFaceAmount; + delete cloneData[i].invoiceFaceAmountUrl; + } + + console.log('this.coc = ' + JSON.stringify(this.coc)); + console.log('this.invoiceId = ' + this.invoiceId); + console.log('this.accountid = ' + this.accountid); + console.log('this.userWorkLocation = ' + this.userWorkLocation); + console.log('this.agencyProType = ' + this.agencyProType); + console.log('this.HospitalInfo = ' + this.HospitalInfo); + console.log('SecondDealer = ' + this.secondaryDistributor); + console.log('invoiceOrderRecoedsLwc = ' + JSON.stringify(cloneData)); + + InvoiceorderSearch({ + cocLwc: this.coc, + invoiceIdLwc: this.invoiceId, + accountidLwc: this.accountid, + userWorkLocationLwc: this.userWorkLocation, + agencyProTypeLwc: this.agencyProType, + HospitalInfoLwc: this.HospitalInfo, + SecondDealerLwc: this.secondaryDistributor, + invoiceOrderRecoedsLwc: JSON.stringify(cloneData) + }) + .then((r) => { + r = JSON.parse(JSON.stringify(r)); + console.log('r = ' + JSON.stringify(r)); + if (r.status == 'Success') { + this.outboundData = r.entity.invoiceOrderRecoeds; + console.log( + 'this.outboundData = ' + + JSON.stringify(this.outboundData) + ); + let index = 0; + this.selectedRows = []; + for (var i in this.outboundData) { + if (this.outboundData[i].check) + this.selectedRows.push(this.outboundData[i].esd.Id); + this.outboundData[i].Id = this.outboundData[i].esd.Id; + this.outboundData[i]['esdOutboundDate'] = + this.outboundData[i].esd.Outbound_Date__c; + this.outboundData[i]['esdNameUrl'] = + '/s/lexsummonscreat?ESetid=' + + this.outboundData[i].esd.Id; + this.outboundData[i]['esdName'] = + this.outboundData[i].esd.Name; + if (this.EditAble) { + this.outboundData[i]['hospitalName'] = + this.outboundData[i].esd.ShipmentAccount__c; + this.outboundData[i]['shipmentAmount'] = + this.outboundData[ + i + ].esd.Shipment_total_amount__c; + this.outboundData[i]['returnAmount'] = + this.outboundData[ + i + ].esd.RrturnPro_total_amount__c; + } + this.outboundData[i]['uninvoicedAmount'] = + this.outboundData[i].esd.InvoiceNotPro_money__c; + this.outboundData[i]['invoiceFaceAmount'] = + this.outboundData[i].needInvoiceCount; + if ( + !( + this.outboundData[i].esd.Billed_Status__c == + '鍏ㄩ儴寮�绁�' || + this.EditAble || + this.coc.Invoice_status__c != '鑽夋涓�' + ) + ) { + //let url = "/ConInvoicedetails?orderId=" + this.outboundData[i].esd.Id + "&invoiceId=" + this.invoiceId; + let url = + '/s/lexconinvoiceview?orderId=' + + this.outboundData[i].esd.Id + + '&invoiceId=' + + this.invoiceId; + this.outboundData[i]['invoiceFaceAmountUrl'] = url; + + if (index == 0) { + let object5 = { + label: '鍙戠エ绁ㄩ潰閲戦(鍏�)', + cellAttributes: { alignment: 'right' }, + type: 'url', + fieldName: 'invoiceFaceAmountUrl', + typeAttributes: { + label: { + fieldName: 'invoiceFaceAmount' + }, + target: '_blank' + }, + hideDefaultActions: true + }; + this.outboundColumns.push(object5); + index++; + } + } else { + if (index == 0) { + let object5 = { + label: '鍙戠エ绁ㄩ潰閲戦(鍏�)', + cellAttributes: { alignment: 'right' }, + fieldName: 'invoiceFaceAmount', + hideDefaultActions: true + }; + this.outboundColumns.push(object5); + index++; + } + } + //璁$畻鍙戠エ绁ㄩ潰閲戦 + this.sumPrice += this.outboundData[i].needInvoiceCount; + } + console.log( + 'this.selectedRows = ' + + JSON.stringify(this.selectedRows) + ); + this.isShowSpinner = false; + } else { + this.showMyToast('鎼滅储澶辫触', r.msg, 'Error'); + } + }) + .catch((error) => { + console.log('error = ' + error.message); + this.showMyToast('閿欒', '鎼滅储澶辫触', 'Error'); + }); + } + + getSelectedRows(event) { + // console.log("getSelectedRows "); + // for (var i in this.outboundData) { + // this.outboundData[i].check = false; + // } + // const selectedRows = event.detail.selectedRows; + // for (var i in this.outboundData) { + // for (var j in selectedRows) { + // if (this.outboundData[i].esd.Id == selectedRows[j].esd.Id) { + // //this.outboundData[i].check = !this.outboundData[i].check; + // this.outboundData[i].check = true; + // } + // } + // } + // console.log('this.outboundData = ' + JSON.stringify(this.outboundData)); + } + + deleteButtonJs() { + this.isShowSpinner = true; + deleteButton({ + cocLwc: this.coc, + invoiceIdLwc: this.invoiceId + }) + .then((r) => { + r = JSON.parse(JSON.stringify(r)); + console.log('r = ' + JSON.stringify(r)); + if (r.status == 'Success') { + this.isShowSpinner = false; + let url = '/lexconinvoiceview'; + console.log('url = ' + url); + this[NavigationMixin.Navigate]({ + type: 'standard__webPage', + attributes: { + url: url + } + }); + } else { + this.showMyToast('鍒犻櫎澶辫触', r.msg, 'Error'); + } + }) + .catch((error) => { + console.log('error = ' + error.message); + }); + } + + SetEditAbleJs() { + let statusEditAbleJs = 'Redirect'; + let url = + '/lexconinvoiceview?invoiceId=' + + this.invoiceId + + '&KeyWords=' + + statusEditAbleJs; + console.log('url = ' + url); + this[NavigationMixin.Navigate]({ + type: 'standard__webPage', + attributes: { + url: url + } + }); + } + + approvalJs() { + this.isShowSpinner = true; + approval({ + outOrderStringListLwc: this.outOrderStringListLwc, + outordercountMapLwc: this.outordercountMapLwc, + invoiceIdLwc: this.invoiceId + }) + .then((r) => { + r = JSON.parse(JSON.stringify(r)); + console.log('r = ' + JSON.stringify(r)); + if (r.status == 'Success') { + this.isShowSpinner = false; + let url = + '/s/lexconinvoiceview?invoiceId=' + this.invoiceId; + console.log('url = ' + url); + window.open(url, '_self'); + // this[NavigationMixin.Navigate]({ + // type: "standard__webPage", + // attributes: { + // url: url, + // }, + // }); + } else { + this.showMyToast('閿欒', r.msg, 'Error'); + } + }) + .catch((error) => { + console.log('error = ' + error.message); + }); + } + + openReportJs() { + console.log('openReportJs'); + let reportUrl = this.label.LexConInvoiceViewReport; + let reportFilters = + '[{"operator":"equals","value":"' + + this.OrderCode + + '","column":"FK_NAME"}]'; + console.log('reportUrl = ' + reportUrl); + let url = + '/s/report/' + + reportUrl + + '?reportFilters=' + + encodeURIComponent(reportFilters); + window.open(url); + // this[NavigationMixin.Navigate]({ + // type: "standard__webPage", + // attributes: { + // url: url, + // target: '_blank' + // }, + // }); + } + + reopenJs() { + // statusEdit = 'Redirect'; + // PageReference ref = new Pagereference('/ConInvoiceView?invoiceId=' + invoiceId + '&reopen=isreopen' + '&KeyWords=' + statusEdit); + let statusEditAbleJs = 'Redirect'; + let url = + '/lexconinvoiceview?invoiceId=' + + this.invoiceId + + '&reopen=isreopen' + + '&KeyWords=' + + statusEditAbleJs; + console.log('url = ' + url); + this[NavigationMixin.Navigate]({ + type: 'standard__webPage', + attributes: { + url: url + } + }); + } + + showMyToast(title, message, variant) { + this.isShowSpinner = false; + this.showLoadingSpinner = false; + this.showPopSpinner = false; + this.showAttPop = false; + this.filesUploaded = []; + this.fileName = null; + console.log('show custom message'); + var iconName = ''; + var content = ''; + if (variant.toLowerCase() == 'success') { + iconName = 'utility:check'; + } else { + iconName = 'utility:error'; + } + if (message != '') { + content = + '<h2><strong>' + + title + + '<strong/></h2><h5>' + + message + + '</h5>'; + } else { + content = '<h2><strong>' + title + '<strong/></h2>'; + } + this.template + .querySelector('c-common-toast') + .showToast(variant, content, iconName, 10000); + } + + handleLoad() { + console.log('handleLoad'); + try { + const style = document.createElement('style'); + style.innerText = + '.hehe-layoutItem .slds-button__icon {display: none;}'; + this.template.querySelector('.hideHelpText').appendChild(style); + + const style2 = document.createElement('style'); + style2.innerText = + '.hehe-layoutItem .slds-form-element__label {padding : 0px}'; + this.template.querySelector('.hideHelpText').appendChild(style2); + + const style3 = document.createElement('style'); + style3.innerText = + '.readOnly .slds-form-element__label {padding-top: 7px;}'; + this.template.querySelector('.hideHelpText').appendChild(style3); + } catch (error) { + console.log(error); + } + } + + keepTwoDecimalStr(num) { + const result = Number(num.toString().match(/^\d+(?:\.\d{0,2})?/)); + let s = result.toString(); + let rs = s.indexOf('.'); + if (rs < 0) { + rs = s.length; + s += '.'; + } + while (s.length <= rs + 2) { + s += '0'; + } + return s; + } + + handleLoad2() { + console.log('handleLoad2'); + try { + const style = document.createElement('style'); + style.innerText = + '.hehe-layoutItem .slds-button__icon {display: none;}'; + this.template.querySelector('.hideHelpText').appendChild(style); + + const style2 = document.createElement('style'); + style2.innerText = + '.hehe-layoutItem .slds-form-element__label {padding : 0px}'; + this.template.querySelector('.hideHelpText').appendChild(style2); + } catch (error) { + console.log(error); + } + } + + handleUnitChange(event) { + console.log('handleUnitChange'); + this.invoiceAllpriceData[0].invoiceAllprice = 0.0; + const unitDetail = event.detail; + console.log('unitDetail = ' + JSON.stringify(unitDetail)); + for (var i in this.detailsData) { + if (this.detailsData[i].recordId == unitDetail.data.recordId) { + this.detailsData[i].unitValue = unitDetail.data.unitValue; + this.detailsData[i].esd.Invoice_Unit__c = + unitDetail.data.unitValue; + if ( + this.detailsSelectedRows.indexOf( + this.detailsData[i].recordId + ) == -1 + ) + this.detailsSelectedRows.push(this.detailsData[i].recordId); + } + } + this.detailsSelectedRows = [...this.detailsSelectedRows]; + + console.log( + 'this.detailsSelectedRows = ' + + JSON.stringify(this.detailsSelectedRows) + ); + for (var i in this.detailsData) { + this.detailsData[i].invoiceAllprice = 0.0; + for (var j in this.detailsSelectedRows) { + console.log( + 'this.detailsData[i].Id = ' + this.detailsData[i].Id + ); + console.log( + 'this.detailsSelectedRows[j] = ' + + this.detailsSelectedRows[j] + ); + if (this.detailsData[i].Id == this.detailsSelectedRows[j]) { + this.detailsData[i].invoiceAllprice = this.amend( + this.detailsData[i].shipmentNumber, + this.detailsData[i].esdInvoiceUnitprice, + '*' + ); + console.log( + 'this.detailsData[i].invoiceAllprice = ' + + this.detailsData[i].invoiceAllprice + ); + } + } + this.invoiceAllpriceData[0].invoiceAllprice = this.amend( + this.invoiceAllpriceData[0].invoiceAllprice, + this.detailsData[i].invoiceAllprice, + '+' ); - } else { - this.showMyToast("鎼滅储澶辫触", "娌℃湁鎼滅储鍒扮浉鍏冲彂绁�", "Error"); - } - } else { - this.showMyToast("鎼滅储澶辫触", r.msg, "Error"); } - }) - .catch((error) => { - console.log("error = " + error.message); - this.showMyToast("閿欒", "鎼滅储澶辫触", "Error"); - }); - } - - ClearJs() { - this.deliveryFromDate = ""; - this.deliveryToDate = ""; - this.category1 = ""; - this.category2 = ""; - this.invoiceStatusValue = ""; - this.isShowSpinner = true; - conInvoiceListInit() - .then((r) => { - r = JSON.parse(JSON.stringify(r)); - console.log("conInvoiceListInit r = " + JSON.stringify(r)); - if (r.status == "Success") { - this.invoiceData = r.entity.raesList; - for (var i in this.invoiceData) { - this.invoiceData[i]["NameUrl"] = - "/lexconinvoiceview?invoiceId=" + this.invoiceData[i].Id; - } - console.log("this.invoiceData = " + JSON.stringify(this.invoiceData)); - this.isShowSpinner = false; - } else { - this.showMyToast("鎼滅储澶辫触", r.msg, "Error"); - } - }) - .catch((error) => { - console.log("error = " + JSON.stringify(error)); - }); - } - - InvoiceorderSearchJs() { - this.isShowSpinner = true; - - debugger; - let cloneData = this.outboundData; - const selectedRows = this.template - .querySelector("[data-field='outbound']") - .getSelectedRows(); - console.log("selectedRows " + JSON.stringify(selectedRows)); - for (var i in cloneData) { - let b = false; - for (var j in selectedRows) { - if (cloneData[i].esd.Id == selectedRows[j].esd.Id) { - b = true; - cloneData[i].check = true; - } - } - if (!b) { - cloneData[i].check = false; - } - delete cloneData[i].esdOutboundDate; - delete cloneData[i].esdNameUrl; - delete cloneData[i].esdName; - delete cloneData[i].hospitalName; - delete cloneData[i].shipmentAmount; - delete cloneData[i].returnAmount; - delete cloneData[i].uninvoicedAmount; - delete cloneData[i].invoiceFaceAmount; - delete cloneData[i].invoiceFaceAmountUrl; + this.detailsData = [...this.detailsData]; + this.invoiceAllpriceData = [...this.invoiceAllpriceData]; } - console.log("this.coc = " + JSON.stringify(this.coc)); - console.log("this.invoiceId = " + this.invoiceId); - console.log("this.accountid = " + this.accountid); - console.log("this.userWorkLocation = " + this.userWorkLocation); - console.log("this.agencyProType = " + this.agencyProType); - console.log("this.HospitalInfo = " + this.HospitalInfo); - console.log("SecondDealer = " + this.secondaryDistributor); - console.log("invoiceOrderRecoedsLwc = " + JSON.stringify(cloneData)); - - InvoiceorderSearch({ - cocLwc: this.coc, - invoiceIdLwc: this.invoiceId, - accountidLwc: this.accountid, - userWorkLocationLwc: this.userWorkLocation, - agencyProTypeLwc: this.agencyProType, - HospitalInfoLwc: this.HospitalInfo, - SecondDealerLwc: this.secondaryDistributor, - invoiceOrderRecoedsLwc: JSON.stringify(cloneData) - }) - .then((r) => { - r = JSON.parse(JSON.stringify(r)); - console.log("r = " + JSON.stringify(r)); - if (r.status == "Success") { - this.outboundData = r.entity.invoiceOrderRecoeds; - console.log( - "this.outboundData = " + JSON.stringify(this.outboundData) - ); - let index = 0; - this.selectedRows = []; - for (var i in this.outboundData) { - if (this.outboundData[i].check) - this.selectedRows.push(this.outboundData[i].esd.Id); - this.outboundData[i].Id = this.outboundData[i].esd.Id; - this.outboundData[i]["esdOutboundDate"] = - this.outboundData[i].esd.Outbound_Date__c; - this.outboundData[i]["esdNameUrl"] = - "/s/lexsummonscreat?ESetid=" + this.outboundData[i].esd.Id; - this.outboundData[i]["esdName"] = this.outboundData[i].esd.Name; - if (this.EditAble) { - this.outboundData[i]["hospitalName"] = - this.outboundData[i].esd.ShipmentAccount__c; - this.outboundData[i]["shipmentAmount"] = - this.outboundData[i].esd.Shipment_total_amount__c; - this.outboundData[i]["returnAmount"] = - this.outboundData[i].esd.RrturnPro_total_amount__c; - } - this.outboundData[i]["uninvoicedAmount"] = - this.outboundData[i].esd.InvoiceNotPro_money__c; - this.outboundData[i]["invoiceFaceAmount"] = - this.outboundData[i].needInvoiceCount; + handleShipmentNumber(event) { + console.log('handleShipmentNumber'); + this.invoiceAllpriceData[0].invoiceAllprice = 0.0; + const numberDetail = event.detail; + console.log('numberDetail = ' + JSON.stringify(numberDetail)); + if (numberDetail.data.shipmentnumber == 0) { if ( - !( - this.outboundData[i].esd.Billed_Status__c == "鍏ㄩ儴寮�绁�" || - this.EditAble || - this.coc.Invoice_status__c != "鑽夋涓�" - ) + this.detailsSelectedRows.indexOf(numberDetail.data.recordId) != + -1 ) { - //let url = "/ConInvoicedetails?orderId=" + this.outboundData[i].esd.Id + "&invoiceId=" + this.invoiceId; - let url = - "/s/lexconinvoiceview?orderId=" + - this.outboundData[i].esd.Id + - "&invoiceId=" + - this.invoiceId; - this.outboundData[i]["invoiceFaceAmountUrl"] = url; - - if (index == 0) { - let object5 = { - label: "鍙戠エ绁ㄩ潰閲戦(鍏�)", - cellAttributes: { alignment: "right" }, - type: "url", - fieldName: "invoiceFaceAmountUrl", - typeAttributes: { - label: { - fieldName: "invoiceFaceAmount" - }, - target: "_blank" - }, - hideDefaultActions: true - }; - this.outboundColumns.push(object5); - index++; - } - } else { - if (index == 0) { - let object5 = { - label: "鍙戠エ绁ㄩ潰閲戦(鍏�)", - cellAttributes: { alignment: "right" }, - fieldName: "invoiceFaceAmount", - hideDefaultActions: true - }; - this.outboundColumns.push(object5); - index++; - } + this.detailsSelectedRows.splice( + this.detailsSelectedRows.indexOf( + numberDetail.data.recordId + ), + 1 + ); } - //璁$畻鍙戠エ绁ㄩ潰閲戦 - this.sumPrice += this.outboundData[i].needInvoiceCount; - } - console.log( - "this.selectedRows = " + JSON.stringify(this.selectedRows) - ); - this.isShowSpinner = false; - } else { - this.showMyToast("鎼滅储澶辫触", r.msg, "Error"); } - }) - .catch((error) => { - console.log("error = " + error.message); - this.showMyToast("閿欒", "鎼滅储澶辫触", "Error"); - }); - } - - getSelectedRows(event) { - // console.log("getSelectedRows "); - // for (var i in this.outboundData) { - // this.outboundData[i].check = false; - // } - // const selectedRows = event.detail.selectedRows; - // for (var i in this.outboundData) { - // for (var j in selectedRows) { - // if (this.outboundData[i].esd.Id == selectedRows[j].esd.Id) { - // //this.outboundData[i].check = !this.outboundData[i].check; - // this.outboundData[i].check = true; - // } - // } - // } - // console.log('this.outboundData = ' + JSON.stringify(this.outboundData)); - } - - deleteButtonJs() { - this.isShowSpinner = true; - deleteButton({ - cocLwc: this.coc, - invoiceIdLwc: this.invoiceId - }) - .then((r) => { - r = JSON.parse(JSON.stringify(r)); - console.log("r = " + JSON.stringify(r)); - if (r.status == "Success") { - this.isShowSpinner = false; - let url = "/lexconinvoiceview"; - console.log("url = " + url); - this[NavigationMixin.Navigate]({ - type: "standard__webPage", - attributes: { - url: url - } - }); - } else { - this.showMyToast("鍒犻櫎澶辫触", r.msg, "Error"); - } - }) - .catch((error) => { - console.log("error = " + error.message); - }); - } - - SetEditAbleJs() { - let statusEditAbleJs = "Redirect"; - let url = - "/lexconinvoiceview?invoiceId=" + - this.invoiceId + - "&KeyWords=" + - statusEditAbleJs; - console.log("url = " + url); - this[NavigationMixin.Navigate]({ - type: "standard__webPage", - attributes: { - url: url - } - }); - } - - approvalJs() { - this.isShowSpinner = true; - approval({ - outOrderStringListLwc: this.outOrderStringListLwc, - outordercountMapLwc: this.outordercountMapLwc, - invoiceIdLwc: this.invoiceId - }) - .then((r) => { - r = JSON.parse(JSON.stringify(r)); - console.log("r = " + JSON.stringify(r)); - if (r.status == "Success") { - this.isShowSpinner = false; - let url = "/s/lexconinvoiceview?invoiceId=" + this.invoiceId; - console.log("url = " + url); - window.open(url, "_self"); - // this[NavigationMixin.Navigate]({ - // type: "standard__webPage", - // attributes: { - // url: url, - // }, - // }); - } else { - this.showMyToast("閿欒", r.msg, "Error"); - } - }) - .catch((error) => { - console.log("error = " + error.message); - }); - } - - openReportJs() { - console.log("openReportJs"); - let reportUrl = this.label.LexConInvoiceViewReport; - let reportFilters = - '[{"operator":"equals","value":"' + - this.OrderCode + - '","column":"FK_NAME"}]'; - console.log("reportUrl = " + reportUrl); - let url = - "/s/report/" + - reportUrl + - "?reportFilters=" + - encodeURIComponent(reportFilters); - window.open(url); - // this[NavigationMixin.Navigate]({ - // type: "standard__webPage", - // attributes: { - // url: url, - // target: '_blank' - // }, - // }); - } - - reopenJs() { - // statusEdit = 'Redirect'; - // PageReference ref = new Pagereference('/ConInvoiceView?invoiceId=' + invoiceId + '&reopen=isreopen' + '&KeyWords=' + statusEdit); - let statusEditAbleJs = "Redirect"; - let url = - "/lexconinvoiceview?invoiceId=" + - this.invoiceId + - "&reopen=isreopen" + - "&KeyWords=" + - statusEditAbleJs; - console.log("url = " + url); - this[NavigationMixin.Navigate]({ - type: "standard__webPage", - attributes: { - url: url - } - }); - } - - showMyToast(title, message, variant) { - this.isShowSpinner = false; - this.showLoadingSpinner = false; - this.showPopSpinner = false; - this.showAttPop = false; - this.filesUploaded = []; - this.fileName = null; - console.log("show custom message"); - var iconName = ""; - var content = ""; - if (variant.toLowerCase() == "success") { - iconName = "utility:check"; - } else { - iconName = "utility:error"; - } - if (message != "") { - content = - "<h2><strong>" + title + "<strong/></h2><h5>" + message + "</h5>"; - } else { - content = "<h2><strong>" + title + "<strong/></h2>"; - } - this.template - .querySelector("c-common-toast") - .showToast(variant, content, iconName, 10000); - } - - handleLoad() { - console.log("handleLoad"); - try { - const style = document.createElement("style"); - style.innerText = ".hehe-layoutItem .slds-button__icon {display: none;}"; - this.template.querySelector(".hideHelpText").appendChild(style); - - const style2 = document.createElement("style"); - style2.innerText = - ".hehe-layoutItem .slds-form-element__label {padding : 0px}"; - this.template.querySelector(".hideHelpText").appendChild(style2); - - const style3 = document.createElement("style"); - style3.innerText = - ".readOnly .slds-form-element__label {padding-top: 7px;}"; - this.template.querySelector(".hideHelpText").appendChild(style3); - } catch (error) { - console.log(error); - } - } - - keepTwoDecimalStr(num) { - const result = Number(num.toString().match(/^\d+(?:\.\d{0,2})?/)); - let s = result.toString(); - let rs = s.indexOf("."); - if (rs < 0) { - rs = s.length; - s += "."; - } - while (s.length <= rs + 2) { - s += "0"; - } - return s; - } - - handleLoad2() { - console.log("handleLoad2"); - try { - const style = document.createElement("style"); - style.innerText = ".hehe-layoutItem .slds-button__icon {display: none;}"; - this.template.querySelector(".hideHelpText").appendChild(style); - - const style2 = document.createElement("style"); - style2.innerText = - ".hehe-layoutItem .slds-form-element__label {padding : 0px}"; - this.template.querySelector(".hideHelpText").appendChild(style2); - } catch (error) { - console.log(error); - } - } - - handleUnitChange(event) { - console.log("handleUnitChange"); - this.invoiceAllpriceData[0].invoiceAllprice = 0.0; - const unitDetail = event.detail; - console.log("unitDetail = " + JSON.stringify(unitDetail)); - for (var i in this.detailsData) { - if (this.detailsData[i].recordId == unitDetail.data.recordId) { - this.detailsData[i].unitValue = unitDetail.data.unitValue; - this.detailsData[i].esd.Invoice_Unit__c = unitDetail.data.unitValue; - if ( - this.detailsSelectedRows.indexOf(this.detailsData[i].recordId) == -1 - ) - this.detailsSelectedRows.push(this.detailsData[i].recordId); - } - } - this.detailsSelectedRows = [...this.detailsSelectedRows]; - - console.log( - "this.detailsSelectedRows = " + JSON.stringify(this.detailsSelectedRows) - ); - for (var i in this.detailsData) { - this.detailsData[i].invoiceAllprice = 0.0; - for (var j in this.detailsSelectedRows) { - console.log("this.detailsData[i].Id = " + this.detailsData[i].Id); console.log( - "this.detailsSelectedRows[j] = " + this.detailsSelectedRows[j] + 'start this.detailsSelectedRows = ' + + JSON.stringify(this.detailsSelectedRows) ); - if (this.detailsData[i].Id == this.detailsSelectedRows[j]) { - this.detailsData[i].invoiceAllprice = this.amend( - this.detailsData[i].shipmentNumber, - this.detailsData[i].esdInvoiceUnitprice, - "*" - ); - console.log( - "this.detailsData[i].invoiceAllprice = " + - this.detailsData[i].invoiceAllprice - ); - } - } - this.invoiceAllpriceData[0].invoiceAllprice = this.amend( - this.invoiceAllpriceData[0].invoiceAllprice, - this.detailsData[i].invoiceAllprice, - "+" - ); - } - this.detailsData = [...this.detailsData]; - this.invoiceAllpriceData = [...this.invoiceAllpriceData]; - } - - handleShipmentNumber(event) { - console.log("handleShipmentNumber"); - this.invoiceAllpriceData[0].invoiceAllprice = 0.0; - const numberDetail = event.detail; - console.log("numberDetail = " + JSON.stringify(numberDetail)); - if (numberDetail.data.shipmentnumber == 0) { - if (this.detailsSelectedRows.indexOf(numberDetail.data.recordId) != -1) { - this.detailsSelectedRows.splice( - this.detailsSelectedRows.indexOf(numberDetail.data.recordId), - 1 - ); - } - } - console.log( - "start this.detailsSelectedRows = " + - JSON.stringify(this.detailsSelectedRows) - ); - console.log("numberDetail = " + JSON.stringify(numberDetail)); - for (var i in this.detailsData) { - if (this.detailsData[i].recordId == numberDetail.data.recordId) { - this.detailsData[i].shipmentNumber = Number( - numberDetail.data.shipmentnumber - ); - this.detailsData[i].invoiceCount = Number( - numberDetail.data.shipmentnumber - ); - if ( - this.detailsSelectedRows.indexOf(this.detailsData[i].recordId) == - -1 && - numberDetail.data.shipmentnumber != 0 - ) - this.detailsSelectedRows.push(this.detailsData[i].recordId); - } - } - - console.log( - "end this.detailsSelectedRows = " + - JSON.stringify(this.detailsSelectedRows) - ); - this.detailsSelectedRows = [...this.detailsSelectedRows]; - - console.log( - "this.detailsSelectedRows = " + JSON.stringify(this.detailsSelectedRows) - ); - for (var i in this.detailsData) { - this.detailsData[i].invoiceAllprice = 0.0; - for (var j in this.detailsSelectedRows) { - console.log("this.detailsData[i].Id = " + this.detailsData[i].Id); - console.log( - "this.detailsSelectedRows[j] = " + this.detailsSelectedRows[j] - ); - if (this.detailsData[i].Id == this.detailsSelectedRows[j]) { - this.detailsData[i].invoiceAllprice = this.amend( - this.detailsData[i].shipmentNumber, - this.detailsData[i].esdInvoiceUnitprice, - "*" - ); - console.log( - "this.detailsData[i].invoiceAllprice = " + - this.detailsData[i].invoiceAllprice - ); - } - } - this.invoiceAllpriceData[0].invoiceAllprice = this.amend( - this.invoiceAllpriceData[0].invoiceAllprice, - this.detailsData[i].invoiceAllprice, - "+" - ); - } - this.detailsData = [...this.detailsData]; - this.invoiceAllpriceData = [...this.invoiceAllpriceData]; - } - - detailsGetSelectedRows(event) { - console.log("detailsGetSelectedRows "); - this.invoiceAllpriceData[0].invoiceAllprice = 0.0; - let selectedRows = event.detail.selectedRows; - for (var i in this.detailsData) { - this.detailsData[i].invoiceAllprice = 0.0; - for (var j in selectedRows) { - if (this.detailsData[i].Id == selectedRows[j].esd.Id) { - this.detailsData[i].invoiceAllprice = this.amend( - this.detailsData[i].shipmentNumber, - this.detailsData[i].esdInvoiceUnitprice, - "*" - ); - console.log( - "this.detailsData[i].invoiceAllprice = " + - this.detailsData[i].invoiceAllprice - ); - } - } - this.invoiceAllpriceData[0].invoiceAllprice = this.amend( - this.invoiceAllpriceData[0].invoiceAllprice, - this.detailsData[i].invoiceAllprice, - "+" - ); - console.log( - "this.invoiceAllpriceData[0].invoiceAllprice = " + - this.invoiceAllpriceData[0].invoiceAllprice - ); - } - console.log("start this.detailsData = " + JSON.stringify(this.detailsData)); - this.detailsData = [...this.detailsData]; - console.log("end this.detailsData = " + JSON.stringify(this.detailsData)); - this.invoiceAllpriceData = [...this.invoiceAllpriceData]; - } - - ComputePrice(index, number, price) { - console.log("index = " + index); - console.log("number = " + number); - console.log("price = " + price); - let shipmentAmount = this.amend(number, price, "*"); - console.log("shipmentAmount = " + shipmentAmount); - let sumPrice = 0.0; - this.data[index].shipmentAmount = shipmentAmount; - for (var i in this.data) { - if (this.data[i].shipmentAmount) sumPrice += this.data[i].shipmentAmount; - } - this.sumPrice = sumPrice + "鍏�"; - //瀛樹笅閫夋嫨琛岋紝涓嶄細琚竻绌� - if (this.selectedRows.indexOf(this.data[index].Id) == -1) - this.selectedRows.push(this.data[index].Id); - this.data = [...this.data]; - this.selectedRows = [...this.selectedRows]; - console.log("this.selectedRows = " + JSON.stringify(this.selectedRows)); - console.log("this.data = " + JSON.stringify(this.data)); - } - - deepClone(obj) { - return JSON.parse(JSON.stringify(obj)); - } - - detailsSaveJs() { - this.isShowSpinner = true; - let cloneData = this.deepClone(this.detailsData); - - let selectedRows = this.template - .querySelector("c-lex-custom-lightning-datatable") - .getSelectedRows(); - console.log("selectedRows = " + JSON.stringify(selectedRows)); - - for (var i in cloneData) { - delete cloneData[i].Id; - delete cloneData[i].esdAssetModelNo; - delete cloneData[i].packingListManual; - delete cloneData[i].esdDeliveryListRMB; - delete cloneData[i].esdShipmentCount; - delete cloneData[i].esdRrturnProCount; - delete cloneData[i].esdBoxPiece; - delete cloneData[i].esdInvoicedProcount; - delete cloneData[i].esdInvoiceProNotCount; - delete cloneData[i].unitValue; - delete cloneData[i].recordId; - delete cloneData[i].unitOptions; - delete cloneData[i].esdInvoiceUnitprice; - delete cloneData[i].shipmentNumber; - delete cloneData[i].invoiceAllprice; - for (var j in selectedRows) { - if (cloneData[i].esd.Id == selectedRows[j].esd.Id) { - cloneData[i]["check"] = true; - } - } - } - console.log("cloneData = " + JSON.stringify(cloneData)); - - detailsSave({ - consumableorderdetails1RecordsLwc: JSON.stringify(cloneData), - invoiceIdLwc: this.invoiceId, - orderIdLwc: this.orderId - }) - .then((r) => { - r = JSON.parse(JSON.stringify(r)); - console.log("r = " + JSON.stringify(r)); - if (r.status == "Success") { - let url = "/lexconinvoiceview?invoiceId=" + this.invoiceId; - this[NavigationMixin.Navigate]({ - type: "standard__webPage", - attributes: { - url: url + console.log('numberDetail = ' + JSON.stringify(numberDetail)); + for (var i in this.detailsData) { + if (this.detailsData[i].recordId == numberDetail.data.recordId) { + this.detailsData[i].shipmentNumber = Number( + numberDetail.data.shipmentnumber + ); + this.detailsData[i].invoiceCount = Number( + numberDetail.data.shipmentnumber + ); + if ( + this.detailsSelectedRows.indexOf( + this.detailsData[i].recordId + ) == -1 && + numberDetail.data.shipmentnumber != 0 + ) + this.detailsSelectedRows.push(this.detailsData[i].recordId); } - }); - } else { - this.showMyToast("淇濆瓨澶辫触", r.msg, "Error"); } - }) - .catch((error) => { - console.log("error = " + error.message); - }); - } - //num1 num2浼犲叆涓や釜鍊� symbol +-*/绗﹀彿 - amend(num1, num2, symbol) { - var str1 = num1.toString(), - str2 = num2.toString(), - result, - str1Length, - str2Length; - //瑙e喅鏁存暟娌℃湁灏忔暟鐐规柟娉� - try { - str1Length = str1.split(".")[1].length; - } catch (error) { - str1Length = 0; - } - try { - str2Length = str2.split(".")[1].length; - } catch (error) { - str2Length = 0; - } - var step = Math.pow(10, Math.max(str1Length, str2Length)); - switch (symbol) { - case "+": - result = (num1 * step + num2 * step) / step; - break; - case "-": - result = (num1 * step - num2 * step) / step; - break; - case "*": - result = (num1 * step * (num2 * step)) / step / step; - break; - case "/": - result = (num1 * step) / (num2 * step); - break; - default: - break; - } - return result; - } + console.log( + 'end this.detailsSelectedRows = ' + + JSON.stringify(this.detailsSelectedRows) + ); + this.detailsSelectedRows = [...this.detailsSelectedRows]; - //鍒犻櫎闄勪欢 - deleteAtt(event) { - this.isShowSpinner = true; - //var recordId = event.detail.data.recordId; - var recordId = event.target.getAttribute("data-fileid"); - console.log("attid:" + recordId); - deleteAtt({ - contentVersionId: recordId - }) - .then((r) => { - r = JSON.parse(JSON.stringify(r)); - if (r.status == "Success") { - this.showMyToast("鍒犻櫎鎴愬姛", "", "Success"); - if (this.fileData.length == 1) window.location.reload(); - else this.init(); - } else { - this.showMyToast("鍒犻櫎澶辫触", r.msg, "Error"); + console.log( + 'this.detailsSelectedRows = ' + + JSON.stringify(this.detailsSelectedRows) + ); + for (var i in this.detailsData) { + this.detailsData[i].invoiceAllprice = 0.0; + for (var j in this.detailsSelectedRows) { + console.log( + 'this.detailsData[i].Id = ' + this.detailsData[i].Id + ); + console.log( + 'this.detailsSelectedRows[j] = ' + + this.detailsSelectedRows[j] + ); + if (this.detailsData[i].Id == this.detailsSelectedRows[j]) { + this.detailsData[i].invoiceAllprice = this.amend( + this.detailsData[i].shipmentNumber, + this.detailsData[i].esdInvoiceUnitprice, + '*' + ); + console.log( + 'this.detailsData[i].invoiceAllprice = ' + + this.detailsData[i].invoiceAllprice + ); + } + } + this.invoiceAllpriceData[0].invoiceAllprice = this.amend( + this.invoiceAllpriceData[0].invoiceAllprice, + this.detailsData[i].invoiceAllprice, + '+' + ); } - }) - .catch((error) => { - this.showMyToast("閿欒", error.message, "Error"); - }); - } + this.detailsData = [...this.detailsData]; + this.invoiceAllpriceData = [...this.invoiceAllpriceData]; + } + + detailsGetSelectedRows(event) { + console.log('detailsGetSelectedRows '); + this.invoiceAllpriceData[0].invoiceAllprice = 0.0; + let selectedRows = event.detail.selectedRows; + for (var i in this.detailsData) { + this.detailsData[i].invoiceAllprice = 0.0; + for (var j in selectedRows) { + if (this.detailsData[i].Id == selectedRows[j].esd.Id) { + this.detailsData[i].invoiceAllprice = this.amend( + this.detailsData[i].shipmentNumber, + this.detailsData[i].esdInvoiceUnitprice, + '*' + ); + console.log( + 'this.detailsData[i].invoiceAllprice = ' + + this.detailsData[i].invoiceAllprice + ); + } + } + this.invoiceAllpriceData[0].invoiceAllprice = this.amend( + this.invoiceAllpriceData[0].invoiceAllprice, + this.detailsData[i].invoiceAllprice, + '+' + ); + console.log( + 'this.invoiceAllpriceData[0].invoiceAllprice = ' + + this.invoiceAllpriceData[0].invoiceAllprice + ); + } + console.log( + 'start this.detailsData = ' + JSON.stringify(this.detailsData) + ); + this.detailsData = [...this.detailsData]; + console.log( + 'end this.detailsData = ' + JSON.stringify(this.detailsData) + ); + this.invoiceAllpriceData = [...this.invoiceAllpriceData]; + } + + ComputePrice(index, number, price) { + console.log('index = ' + index); + console.log('number = ' + number); + console.log('price = ' + price); + let shipmentAmount = this.amend(number, price, '*'); + console.log('shipmentAmount = ' + shipmentAmount); + let sumPrice = 0.0; + this.data[index].shipmentAmount = shipmentAmount; + for (var i in this.data) { + if (this.data[i].shipmentAmount) + sumPrice += this.data[i].shipmentAmount; + } + this.sumPrice = sumPrice + '鍏�'; + //瀛樹笅閫夋嫨琛岋紝涓嶄細琚竻绌� + if (this.selectedRows.indexOf(this.data[index].Id) == -1) + this.selectedRows.push(this.data[index].Id); + this.data = [...this.data]; + this.selectedRows = [...this.selectedRows]; + console.log('this.selectedRows = ' + JSON.stringify(this.selectedRows)); + console.log('this.data = ' + JSON.stringify(this.data)); + } + + deepClone(obj) { + return JSON.parse(JSON.stringify(obj)); + } + + detailsSaveJs() { + this.isShowSpinner = true; + let cloneData = this.deepClone(this.detailsData); + + let selectedRows = this.template + .querySelector('c-lex-custom-lightning-datatable') + .getSelectedRows(); + console.log('selectedRows = ' + JSON.stringify(selectedRows)); + + for (var i in cloneData) { + delete cloneData[i].Id; + delete cloneData[i].esdAssetModelNo; + delete cloneData[i].packingListManual; + delete cloneData[i].esdDeliveryListRMB; + delete cloneData[i].esdShipmentCount; + delete cloneData[i].esdRrturnProCount; + delete cloneData[i].esdBoxPiece; + delete cloneData[i].esdInvoicedProcount; + delete cloneData[i].esdInvoiceProNotCount; + delete cloneData[i].unitValue; + delete cloneData[i].recordId; + delete cloneData[i].unitOptions; + delete cloneData[i].esdInvoiceUnitprice; + delete cloneData[i].shipmentNumber; + delete cloneData[i].invoiceAllprice; + for (var j in selectedRows) { + if (cloneData[i].esd.Id == selectedRows[j].esd.Id) { + cloneData[i]['check'] = true; + } + } + } + console.log('cloneData = ' + JSON.stringify(cloneData)); + + detailsSave({ + consumableorderdetails1RecordsLwc: JSON.stringify(cloneData), + invoiceIdLwc: this.invoiceId, + orderIdLwc: this.orderId + }) + .then((r) => { + r = JSON.parse(JSON.stringify(r)); + console.log('r = ' + JSON.stringify(r)); + if (r.status == 'Success') { + let url = '/lexconinvoiceview?invoiceId=' + this.invoiceId; + this[NavigationMixin.Navigate]({ + type: 'standard__webPage', + attributes: { + url: url + } + }); + } else { + this.showMyToast('淇濆瓨澶辫触', r.msg, 'Error'); + } + }) + .catch((error) => { + console.log('error = ' + error.message); + }); + } + + //num1 num2浼犲叆涓や釜鍊� symbol +-*/绗﹀彿 + amend(num1, num2, symbol) { + var str1 = num1.toString(), + str2 = num2.toString(), + result, + str1Length, + str2Length; + //瑙e喅鏁存暟娌℃湁灏忔暟鐐规柟娉� + try { + str1Length = str1.split('.')[1].length; + } catch (error) { + str1Length = 0; + } + try { + str2Length = str2.split('.')[1].length; + } catch (error) { + str2Length = 0; + } + var step = Math.pow(10, Math.max(str1Length, str2Length)); + switch (symbol) { + case '+': + result = (num1 * step + num2 * step) / step; + break; + case '-': + result = (num1 * step - num2 * step) / step; + break; + case '*': + result = (num1 * step * (num2 * step)) / step / step; + break; + case '/': + result = (num1 * step) / (num2 * step); + break; + default: + break; + } + return result; + } + + //鍒犻櫎闄勪欢 + deleteAtt(event) { + this.isShowSpinner = true; + //var recordId = event.detail.data.recordId; + var recordId = event.target.getAttribute('data-fileid'); + console.log('attid:' + recordId); + deleteAtt({ + contentVersionId: recordId + }) + .then((r) => { + r = JSON.parse(JSON.stringify(r)); + if (r.status == 'Success') { + this.showMyToast('鍒犻櫎鎴愬姛', '', 'Success'); + if (this.fileData.length == 1) window.location.reload(); + else this.init(); + } else { + this.showMyToast('鍒犻櫎澶辫触', r.msg, 'Error'); + } + }) + .catch((error) => { + this.showMyToast('閿欒', error.message, 'Error'); + }); + } } -- Gitblit v1.9.1