import { LightningElement, wire, api, track } from 'lwc'; import init from '@salesforce/apex/LexSummonsCreatController.init'; import { ShowToastEvent } from 'lightning/platformShowToastEvent'; import searchConsumableorderdetails from '@salesforce/apex/LexSummonsCreatController.searchConsumableorderdetails'; import PraseToPDF from '@salesforce/apex/LexSummonsCreatController.PraseToPDF'; import apexSearch from '@salesforce/apex/LexSummonsCreatController.search'; import saveFile from '@salesforce/apex/LexSummonsCreatController.saveFile'; import getFiles from '@salesforce/apex/LexSummonsCreatController.getFiles'; import GoodsDelivery from '@salesforce/apex/LexSummonsCreatController.GoodsDelivery'; import DelConsumable from '@salesforce/apex/LexSummonsCreatController.DelConsumable'; import categoryAllload from '@salesforce/apex/LexSummonsCreatController.categoryAllload'; import categoryload from '@salesforce/apex/LexSummonsCreatController.categoryload'; import GoodsDeliveryInit from '@salesforce/apex/LexSaleOrderController.GoodsDeliveryInit'; import SearchPro from '@salesforce/apex/LexSaleOrderController.SearchPro'; import ProdElivery from '@salesforce/apex/LexSaleOrderController.ProdElivery'; import ProSale from '@salesforce/apex/LexSaleOrderController.ProSale'; import save from '@salesforce/apex/LexSummonsCreatController.save'; import OPPORTUNITY_OBJECT from '@salesforce/schema/Consumable_Orderdetails__c'; import { getObjectInfo } from 'lightning/uiObjectInfoApi'; import hospitalInit from '@salesforce/apex/lexSearchAgencyHospitalController.init'; import serContact from '@salesforce/apex/lexSearchAgencyHospitalController.serContact'; import { NavigationMixin } from 'lightning/navigation'; export default class LexSummonsCreat extends NavigationMixin(LightningElement) { @track isShowSpinner = true; @track showResults = true; @track results = [ { Id: '1', Name: 'z' }, { Id: '2', Name: 'h' }, { Id: '3', Name: 'j' } ]; @track COLS = [ { label: 'Account Name', type: 'customName', typeAttributes: { accountName: { fieldName: 'Name' } } } ]; @track columns = [ { label: '消耗品名称', fieldName: 'Name__c', //hideDefaultActions: true, wrapText: true //initialWidth : 100, }, { label: '规格', fieldName: 'packinglist', //initialWidth : 50, wrapText: true, hideDefaultActions: true }, { label: 'CFDA状态', fieldName: 'SFDA_Status__c', //initialWidth : 100, wrapText: true, hideDefaultActions: true }, { label: '注册证编码号', fieldName: 'approbation_No', //initialWidth : 150, wrapText: true, hideDefaultActions: true }, { label: '注册证效期', //initialWidth : 100, wrapText: true, fieldName: 'expiration_Date', hideDefaultActions: true }, { label: '第3分类', fieldName: 'Category3__c', //initialWidth : 100, wrapText: true, hideDefaultActions: true, sortable: true }, { label: '第4分类', fieldName: 'Category4__c', //initialWidth : 100, wrapText: true, hideDefaultActions: true, sortable: true }, { label: '第5分类', fieldName: 'Category5__c', //initialWidth : 100, wrapText: true, hideDefaultActions: true, sortable: true }, { label: '单位', type: 'customUnit', //initialWidth : 100, hideDefaultActions: true, typeAttributes: { unitValue: { fieldName: 'unitValue' }, unitOptions: { fieldName: 'unitOptions' }, recordId: { fieldName: 'recordId' } } }, { label: '出货数量', type: 'customShipment', //initialWidth : 150, hideDefaultActions: true, typeAttributes: { recordId: { fieldName: 'recordId' }, shipmentNumber: { fieldName: 'shipmentNumber' } } }, { label: '出货单价(元)', type: 'customShipmentUnitPrice', //initialWidth : 150, hideDefaultActions: true, typeAttributes: { recordId: { fieldName: 'recordId' }, shippingUnitPrice: { fieldName: 'shippingUnitPrice' } } }, { label: '出货金额(元)', type: 'customShipmentAmount', //initialWidth : 120, hideDefaultActions: true, typeAttributes: { shipmentAmount: { fieldName: 'shipmentAmount' } } }, { label: '有效期内库存(盒)', fieldName: 'Boxnumber', //initialWidth : 120, wrapText: true, hideDefaultActions: true }, { label: '有效期内库存(个)', fieldName: 'Piecenumber', //initialWidth : 120, wrapText: true, hideDefaultActions: true } ]; @track editColumns = [ { label: '消耗品名称', fieldName: 'Name__c', hideDefaultActions: true, initialWidth: 250, wrapText: true }, { label: '规格', fieldName: 'packinglist', initialWidth: 50, hideDefaultActions: true }, { label: 'CFDA状态', fieldName: 'SFDA_Status__c', initialWidth: 100, hideDefaultActions: true }, { label: '注册证编码号', fieldName: 'approbation_No', initialWidth: 150, hideDefaultActions: true }, { label: '注册证效期', initialWidth: 100, fieldName: 'expiration_Date', hideDefaultActions: true }, { label: '第3分类', fieldName: 'Category3__c', initialWidth: 100, hideDefaultActions: true, sortable: true }, { label: '第4分类', fieldName: 'Category4__c', initialWidth: 100, hideDefaultActions: true, sortable: true }, { label: '第5分类', fieldName: 'Category5__c', initialWidth: 100, hideDefaultActions: true, sortable: true }, { label: '单位', fieldName: 'Box_Piece__c', initialWidth: 100, hideDefaultActions: true }, { label: '出货数量', fieldName: 'Shipment_Count__c', initialWidth: 150, hideDefaultActions: true }, { label: '出货单价(元)', fieldName: 'Shipment_amount__c', type: 'number', typeAttributes: { minimumFractionDigits: 2 }, initialWidth: 150, hideDefaultActions: true } ]; @track hospitalList = []; @track hospitalColumns = [ { label: '医院名称', fieldName: 'Name', initialWidth: 400, hideDefaultActions: true }, { label: '省份', fieldName: 'stateMasterName', hideDefaultActions: true }, { label: '选择', fieldName: 'Id1', type: 'button', hideDefaultActions: true, typeAttributes: { label: '选择', name: 'Id2', size: 1 } } ]; @track accountid = ''; @track consumableproductdetailsRecords = []; @track SummonsStatus = ''; @track ESetid = ''; @track statusEdit = ''; @track cocLwc = {}; @track selectedRows = []; @track ConsumableOut_report = ''; @track isMutualTransferGoods = false; @track Barcode = ''; @track summonsForDirction = ''; @track consumableorderdetails2RecordsColumns = [ { label: '消耗品名称', fieldName: 'ProdName', hideDefaultActions: true }, { label: '批次号', fieldName: 'orderdetails2SerialLotNo__c', hideDefaultActions: true }, { label: '管理编码', fieldName: 'orderdetails2TracingCode__c', hideDefaultActions: true }, { label: '使用期限', fieldName: 'orderdetails2Sterilization_limit__c', hideDefaultActions: true } ]; @track consumableorderdetails2Records = []; //出货/销售 @track salesColumns = [ { label: '消耗品订单', fieldName: 'Consumable_order_minor__c', hideDefaultActions: true, wrapText: true }, { label: '消耗品明细2名称', fieldName: 'orderdetails2NameUrl', type: 'url', typeAttributes: { label: { fieldName: 'orderdetails2Name' }, target: '_blank' }, hideDefaultActions: true, wrapText: true, initialWidth: 240 }, { label: '单位', fieldName: 'Box_Piece__c', hideDefaultActions: true, wrapText: true }, { label: '消耗品名称', fieldName: 'ProdName', hideDefaultActions: true, wrapText: true }, { label: '发货日期', fieldName: 'Deliver_date__c', hideDefaultActions: true, wrapText: true }, { label: 'BarCode', fieldName: 'Bar_Code__c', hideDefaultActions: true, wrapText: true, initialWidth: 500 }, { label: '使用期限', fieldName: 'Sterilization_limit__c', hideDefaultActions: true, wrapText: true }, { label: '出货数量', fieldName: 'outboundCount', hideDefaultActions: true, wrapText: true } ]; @track salesData = []; @track salesErrorColumns = [ { label: '消耗品订单', fieldName: 'Consumable_order_minor__c', hideDefaultActions: true, wrapText: true }, { label: '消耗品明细2名称', fieldName: 'orderdetails2Name', hideDefaultActions: true, wrapText: true }, { label: '消耗品名称', fieldName: 'ProdName', hideDefaultActions: true, wrapText: true }, { label: '单位', fieldName: 'Box_Piece__c', hideDefaultActions: true, wrapText: true }, { label: 'BarCode', fieldName: 'Bar_Code__c', hideDefaultActions: true }, { label: '使用期限', fieldName: 'Sterilization_limit__c', hideDefaultActions: true, wrapText: true }, { label: '错误原因', fieldName: 'ErrorReason', hideDefaultActions: true, wrapText: true } ]; @track salesErrorData = []; @track salesAccountName = ''; @track salesUserWorkLocation = ''; @track salesAccountid = ''; @track salesOrderdetails = []; @track salesCoc = {}; @track salesOrderpieceorboxMap; @track salesOrderpriceMap; @track salesOrderagencypriceMap; //显示按钮 @track isSaveShow = false; @track isEditShow = false; @track isDeliveryShow = false; @track isOpenToInvoiceShow = false; @track isPraseToPDFShow = false; @track isOpenReportShow = false; @track isDeleteShow = false; @track isFileShow = false; @track isShippingSales = false; @track isSales = false; @track isBarcode = true; @track isShowInformation = true; @track isShowOutboundProductDetails = false; @track showAttPop = false; @track showPopSpinner = false; //disable按钮 @track isEditDisabled = false; @track isDeliveryDisabled = false; @track isOpenToInvoiceDisabled = true; @track isPraseToPDFDisabled = true; @track isOpenReportDisabled = true; @track isDeleteDisabled = false; //出库单信息 @track cocId = ''; @track EditAble = false; @track summonsStatusPriceNotDetermined = false; @track isSummonsForDirctionTwoShow = false; @track isSummonsFlag = false; @track isConInvoiceShow = false; @track sumPrice = ''; @track isSearchShow = false; @track Existarrive = false; @track Category3 = ''; @track category3Options = []; @track Category4 = ''; @track category4Options = []; @track Category5 = ''; @track category5Options = []; //发票id @track invoiceId = ''; //二级经销商 @track secondaryDistributor = ''; @track secondaryDistributorOptions = []; @track isDisabledSecondaryDistributor = false; //经销商录入 @track ForDealerText = ''; @track isDisabledForDealerText = false; //客户名 @track isModalOpen = false; @track HospitalName = ''; @track searchHospitalName = ''; @track OECId = ''; @track isDisabledHospitalName = false; //科室 @track ForCustomerText = ''; @track isDisabledForCustomerText = false; //没有确定价格 @track NoConfirmedPrice = false; //消耗品名称 @track consumableName = ''; @track agencyProType = ''; @track accountName = ''; @track userWorkLocation = ''; @track OutPattern__c = false; @track outOutPattern = ''; //出库单明细 @track showTable = false; @track data = []; @track isSelectShow = false; @track hidecheckboxcolumn = false; @track is345Show = false; @track arriveorder = ''; @track hasHosPro = false; @track InvoiceProNotLabel = ''; @track RrturnProLabel = ''; @track InvoicedLabel = ''; @track outOutPatternOptionList = []; //文件上传 @track showLoadingSpinner = 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: '创建人', fieldName: 'CreatedByName', hideDefaultActions: true } ]; filesUploaded = []; fileContents; fileReader; content; MAX_FILE_SIZE = 1500000; //InvoiceProNotLabel RrturnProLabel InvoicedLabel @wire(getObjectInfo, { objectApiName: OPPORTUNITY_OBJECT }) oppInfo({ data, error }) { if (data) { this.InvoiceProNotLabel = data.fields.InvoiceProNot_count__c.label; this.RrturnProLabel = data.fields.RrturnPro_count__c.label; this.InvoicedLabel = data.fields.Invoiced_Procount__c.label; console.log('this.InvoiceProNotLabel = ' + this.InvoiceProNotLabel); console.log('this.RrturnProLabel = ' + this.RrturnProLabel); console.log('this.InvoicedLabel = ' + this.InvoicedLabel); } } //获取链接参数 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; } connectedCallback() { console.log('connectedCallback LexSummonsCreat'); this.ESetid = this.getQueryString('ESetid'); this.ESetid = this.ESetid == null ? '' : this.ESetid; //statusEdit this.statusEdit = this.getQueryString('KeyWords'); this.statusEdit = this.statusEdit == null ? '' : this.statusEdit; console.log('this.ESetid = ' + this.ESetid); console.log('this.statusEdit = ' + this.statusEdit); if (this.ESetid == '') { this.isShowInformation = false; } console.log('init LexSummonsCreat'); init({ ESetidJs: this.ESetid, statusEdit: this.statusEdit }) .then((r) => { r = JSON.parse(JSON.stringify(r)); console.log('r = ' + JSON.stringify(r)); if (r.status == 'Success') { this.OECId = r.entity.HospitalInfo == null ? '' : r.entity.HospitalInfo; console.log('this.OECId = ' + this.OECId); this.ConsumableOut_report = r.entity.ConsumableOut_report; console.log( 'this.ConsumableOut_report = ' + this.ConsumableOut_report ); this.accountid = r.entity.accountid; this.consumableproductdetailsRecords = r.entity.consumableproductdetailsRecords; this.accountName = r.entity.accountName; this.agencyProType = r.entity.agencyProType; this.accountName = r.entity.accountName; this.userWorkLocation = r.entity.userWorkLocation; this.EditAble = r.entity.EditAble; this.consumableorderdetails2Records = r.entity.consumableorderdetails2Records; for (var i in this.consumableorderdetails2Records) { this.consumableorderdetails2Records[i]['ProdName'] = this.consumableorderdetails2Records[i].Prod.Name; this.consumableorderdetails2Records[i][ 'orderdetails2SerialLotNo__c' ] = this.consumableorderdetails2Records[ i ].orderdetails2.SerialLotNo__c; this.consumableorderdetails2Records[i][ 'orderdetails2TracingCode__c' ] = this.consumableorderdetails2Records[ i ].orderdetails2.TracingCode__c; this.consumableorderdetails2Records[i][ 'orderdetails2Sterilization_limit__c' ] = this.consumableorderdetails2Records[ i ].orderdetails2.Sterilization_limit__c; } this.isShowOutboundProductDetails = r.entity.consumableorderdetails2Count > 0 ? true : false; console.log('this.agencyProType = ' + this.agencyProType); console.log('this.EditAble = ' + this.EditAble); //查询附件 if (!this.EditAble) this.getFiles(); //第3分类 for (var key in r.entity.categoryOptionMap) { let object = {}; object['label'] = r.entity.categoryOptionMap[key]; object['value'] = key; this.category3Options.push(object); } console.log( 'this.category3Options = ' + JSON.stringify(this.category3Options) ); //第4分类 for (var key in r.entity.category4OptionMap) { let object = {}; object['label'] = r.entity.category4OptionMap[key]; object['value'] = key; this.category4Options.push(object); } console.log( 'this.category4Options = ' + this.category4Options ); //第5分类 for (var key in r.entity.category5OptionMap) { let object = {}; object['label'] = r.entity.category5OptionMap[key]; object['value'] = key; this.category5Options.push(object); } console.log( 'this.category5Options = ' + this.category5Options ); this.data = r.entity.pageRecords; console.log( 'this.data start = ' + JSON.stringify(this.data) ); for (var i in this.data) { let unitOptions = []; for (var key in this.data[i].boxorpieceMap) { let unitOption = {}; unitOption['label'] = this.data[i].boxorpieceMap[key]; unitOption['value'] = key; unitOptions.push(unitOption); } this.data[i]['unitOptions'] = unitOptions; this.data[i]['unitValue'] = this.data[i]['unitValue'] == null ? unitOptions[0].value : this.data[i]['unitValue']; if (this.EditAble) { this.data[i].orderdetails1['Box_Piece__c'] = this.data[i].orderdetails1['Box_Piece__c'] == null ? unitOptions[0].value : this.data[i].orderdetails1[ 'Box_Piece__c' ]; this.data[i].orderdetails1['Shipment_Count__c'] = this.data[i].orderdetails1[ 'Shipment_Count__c' ] == null ? 0 : this.data[i].orderdetails1[ 'Shipment_Count__c' ]; this.data[i].orderdetails1['Delivery_List_RMB__c'] = this.data[i].orderdetails1[ 'Delivery_List_RMB__c' ] == null ? 0.0 : this.data[i].orderdetails1[ 'Delivery_List_RMB__c' ]; } else { this.data[i]['InvoiceProNot_count__c'] = this.data[ i ].orderdetails1.InvoiceProNot_count__c; this.data[i]['RrturnPro_count__c'] = this.data[i].orderdetails1.RrturnPro_count__c; this.data[i]['Invoiced_Procount__c'] = this.data[i].orderdetails1.Invoiced_Procount__c; } // this.data[i]["shipmentNumber"] = 0; // this.data[i]["shippingUnitPrice"] = 0.0; //this.data[i]["shipmentNumber"] = this.data[i].orderdetails1["Shipment_Count__c"] == 0 ? '' : this.data[i].orderdetails1["Shipment_Count__c"]; //this.data[i]["shippingUnitPrice"] = this.data[i].orderdetails1["Delivery_List_RMB__c"] == 0 ? '' : this.data[i].orderdetails1["Delivery_List_RMB__c"]; this.data[i]['shipmentNumber'] = this.data[i].orderdetails1['Shipment_Count__c']; this.data[i]['shippingUnitPrice'] = this.data[i].orderdetails1['Delivery_List_RMB__c']; this.data[i]['recordId'] = this.data[i].Prod.Id; this.data[i]['Id'] = this.data[i].Prod.Id; this.data[i]['Name__c'] = this.data[i].Prod.Name__c; this.data[i]['SFDA_Status__c'] = this.data[i].Prod.SFDA_Status__c; this.data[i]['Category3__c'] = this.data[i].Prod.Category3__c; this.data[i]['Category4__c'] = this.data[i].Prod.Category4__c; this.data[i]['Category5__c'] = this.data[i].Prod.Category5__c; this.data[i]['Box_Piece__c'] = this.data[i].orderdetails1.Box_Piece__c; this.data[i]['shipmentAmount'] = this.data[i].orderdetails1.Shipment_amount__c; this.data[i]['Shipment_amount__c'] = this.data[i].orderdetails1.Shipment_amount__c; this.data[i]['Shipment_Count__c'] = this.data[i].orderdetails1.Shipment_Count__c; if (this.data[i]['check']) { this.selectedRows.push(this.data[i].Id); } } console.log('this.data = ' + JSON.stringify(this.data)); //show if ( r.entity.EditDelCommitBtnDisabled || r.entity.EditAble ) { this.isSaveShow = true; } else { this.isEditShow = true; this.isDeliveryShow = true; this.isOpenToInvoiceShow = true; this.isPraseToPDFShow = true; this.isOpenReportShow = true; this.isDeleteShow = true; } this.Existarrive = r.entity.Existarrive; console.log('this.EditAble = ' + this.EditAble); this.hasHosPro = r.entity.hasHosPro; //disable if (Object.values(r.entity.coc).length > 0) { this.cocLwc = r.entity.coc; console.log( 'this.cocLwc = ' + JSON.stringify(this.cocLwc) ); var coc = r.entity.coc; this.cocId = coc.Id; console.log('cocId = ' + this.cocId); coc.SummonsStatus = coc.SummonsStatus_c__c; if (coc.SummonsStatus_c__c == '已完成') { this.isEditDisabled = true; } if ( coc.SummonsStatus_c__c == '批准' || coc.SummonsStatus_c__c == '已销售待上传纳品书' || coc.SummonsStatus_c__c == '出库单已打印' || coc.SummonsStatus_c__c == '已完成' ) { this.isDeliveryDisabled = true; } if ( ((coc.Billed_Status__c != '全部开票' && coc.SummonsStatus_c__c == '已完成') || coc.Onchange_order__c == true) && coc.SummonsForDirction__c != '互相调货' ) { this.isOpenToInvoiceDisabled = false; } if ( coc.SummonsStatus_c__c == '已销售待上传纳品书' || coc.SummonsStatus_c__c == '批准' || coc.SummonsStatus_c__c == '出库单已打印' || coc.SummonsStatus_c__c == '草案中' ) { this.isPraseToPDFDisabled = false; } if ( coc.Billed_Status__c != '还没开票' || coc.SummonsStatus_c__c == '已完成' ) { this.isOpenReportDisabled = false; } if ( coc.SummonsStatus_c__c == '已销售待上传纳品书' || coc.SummonsStatus_c__c == '价格未定' || coc.SummonsStatus_c__c == '批准' || coc.SummonsStatus_c__c == '出库单已打印' || coc.SummonsStatus_c__c == '已完成' ) { this.isDeleteDisabled = true; } this.isConInvoiceShow = coc.SummonsStatus_c__c == '已完成' && coc.SummonsForDirction__c != '互相调货' ? true : false; this.summonsStatusPriceNotDetermined = coc.SummonsStatus_c__c == '价格未定' ? true : false; this.isSummonsForDirctionTwoShow = coc.SummonsForDirction__c == '销售给二级经销商' ? true : false; } this.isSearchShow = !this.Existarrive && r.entity.coc.SummonsStatus_c__c != '价格未定' && r.entity.EditAble ? true : false; this.hidecheckboxcolumn = !this.isSearchShow; this.arriveorder = r.entity.arriveorder; this.is345Show = this.arriveorder == '' && this.Existarrive == false && this.EditAble ? true : false; //如果不显示345分类,columns里面删除3,4,5分类 if (!this.is345Show) { for (var i = 0; i < this.columns.length; i++) { if (this.columns[i].label == '第3分类') { this.columns.splice(i, 1); } } for (var i = 0; i < this.columns.length; i++) { if (this.columns[i].label == '第4分类') { this.columns.splice(i, 1); } } for (var i = 0; i < this.columns.length; i++) { if (this.columns[i].label == '第5分类') { this.columns.splice(i, 1); } } for (var i = 0; i < this.editColumns.length; i++) { if (this.editColumns[i].label == '第3分类') { this.editColumns.splice(i, 1); } } for (var i = 0; i < this.editColumns.length; i++) { if (this.editColumns[i].label == '第4分类') { this.editColumns.splice(i, 1); } } for (var i = 0; i < this.editColumns.length; i++) { if (this.editColumns[i].label == '第5分类') { this.editColumns.splice(i, 1); } } } //如果EditAble==false,删除 出货金额(元) 有效期内库存(盒) 有效期内库存(个) 3列 展示 还没发票数量 返品数量 已发票数量 //type : "number", // typeAttributes:{ // minimumFractionDigits:2, // }, if (!this.EditAble) { let object1 = { label: this.InvoiceProNotLabel, fieldName: 'InvoiceProNot_count__c', type: 'number', typeAttributes: { minimumFractionDigits: 2 }, hideDefaultActions: true }; let object2 = { label: this.RrturnProLabel, fieldName: 'RrturnPro_count__c', hideDefaultActions: true }; let object3 = { label: this.InvoicedLabel, fieldName: 'Invoiced_Procount__c', type: 'number', typeAttributes: { minimumFractionDigits: 2 }, hideDefaultActions: true }; this.editColumns.push(object1); this.editColumns.push(object2); this.editColumns.push(object3); } else { this.ForCustomerText = this.cocLwc.Order_ForCustomerText__c; console.log( 'EditAble = true this.ForCustomerText = ' + this.ForCustomerText ); this.summonsForDirction = this.cocLwc.SummonsForDirction__c; console.log( 'EditAble = true this.summonsForDirction = ' + this.summonsForDirction ); let value = this.summonsForDirction; switch (value) { case '直接销售给医院': this.isDisabledHospitalName = false; this.isDisabledForCustomerText = false; this.secondaryDistributor = ''; this.ForDealerText = ''; this.isDisabledForDealerText = true; this.isDisabledSecondaryDistributor = true; break; case '医院试用': this.isDisabledHospitalName = false; this.isDisabledForCustomerText = false; this.isDisabledForDealerText = false; this.isDisabledSecondaryDistributor = false; break; case '销售给二级经销商': this.isDisabledHospitalName = false; this.isDisabledForCustomerText = false; this.isDisabledForDealerText = false; this.isDisabledSecondaryDistributor = false; break; case '互相调货': this.isDisabledHospitalName = true; this.HospitalName = ''; this.OECId = ''; this.isDisabledForCustomerText = true; this.ForCustomerText = ''; this.isDisabledForDealerText = false; this.isDisabledSecondaryDistributor = false; this.isMutualTransferGoods = true; break; default: this.isDisabledHospitalName = false; this.isDisabledForCustomerText = false; this.isDisabledForDealerText = false; this.isDisabledSecondaryDistributor = false; } } //如果hasHosPro = true 医院特价 if (this.hasHosPro) { let object1 = { label: '医院特价', fieldName: 'InvoiceProNot_count__c', hideDefaultActions: true }; this.columns.push(object1); this.editColumns.push(object1); } //出库单信息 this.isSummonsFlag = r.entity.SummonsFlag == 'visible' ? true : false; console.log( 'r.entity.provinceOptsMap = ' + r.entity.provinceOptsMap ); for (var key in r.entity.provinceOptsMap) { let object = {}; object['label'] = r.entity.provinceOptsMap[key]; object['value'] = key; this.secondaryDistributorOptions.push(object); } for (var key in r.entity.outOutPatternOptionMap) { let object = {}; object['label'] = r.entity.outOutPatternOptionMap[key]; object['value'] = key; this.outOutPatternOptionList.push(object); } console.log( 'this.secondaryDistributorOptions = ' + JSON.stringify(this.secondaryDistributorOptions) ); this.HospitalName = r.entity.HospitalName; this.sumPrice = r.entity.sumPrice + '元'; this.isShowSpinner = false; this.showTable = true; console.log('ESetid = ' + this.ESetid); } else { console.log('r = ' + JSON.stringify(r)); this.showToast('Error', r.msg); } }) .catch((error) => { console.log('error = ' + JSON.stringify(error)); }); } ChangeDirction(event) { let value = event.target.value; this.summonsForDirction = value; this.cocLwc['SummonsForDirction__c'] = value; console.log('选择了 = ' + value); switch (value) { case '直接销售给医院': this.isDisabledHospitalName = false; this.isDisabledForCustomerText = false; this.secondaryDistributor = ''; this.ForDealerText = ''; this.isDisabledForDealerText = true; this.isDisabledSecondaryDistributor = true; this.isMutualTransferGoods = false; break; case '医院试用': this.isDisabledHospitalName = false; this.isDisabledForCustomerText = false; this.isDisabledForDealerText = false; this.isDisabledSecondaryDistributor = false; break; case '销售给二级经销商': this.isDisabledHospitalName = false; this.isDisabledForCustomerText = false; this.isDisabledForDealerText = false; this.isDisabledSecondaryDistributor = false; break; case '互相调货': this.isDisabledHospitalName = true; this.HospitalName = ''; this.OECId = ''; this.isDisabledForCustomerText = true; this.ForCustomerText = ''; this.isDisabledForDealerText = false; this.isDisabledSecondaryDistributor = false; this.isMutualTransferGoods = true; break; default: this.isDisabledHospitalName = false; this.isDisabledForCustomerText = false; this.isDisabledForDealerText = false; this.isDisabledSecondaryDistributor = false; } } dataChange(event) { let fieldName = event.target.getAttribute('data-field'); let value = event.detail.value; console.log('fieldName = ' + fieldName + ' value = ' + value); switch (fieldName) { case 'summonsForDirction': this.summonsForDirction = value; break; case 'secondaryDistributor': this.secondaryDistributor = value; break; case 'HospitalName': this.HospitalName = value; break; case 'ForDealerText': this.ForDealerText = value; this.cocLwc['Order_ForDealerText__c'] = value; break; case 'ForCustomerText': this.cocLwc['Order_ForCustomerText__c'] = value; this.ForCustomerText = value; break; case 'sumPrice': this.sumPrice = value; break; case 'NoConfirmedPrice': this.NoConfirmedPrice = !this.NoConfirmedPrice; this.cocLwc['NoConfirmedPrice__c'] = this.NoConfirmedPrice; console.log('this.NoConfirmedPrice = ' + this.NoConfirmedPrice); break; case 'consumableName': this.consumableName = value; break; case 'Category3': this.Category3 = value; //调用后台显示第四五分类 this.showAllCate(); if (this.Category3 == '') { this.Category4 = ''; this.Category5 = ''; } break; case 'Category4': this.Category4 = value; //调用后台显示第五分类 this.showCate(); if (this.Category4 == '') { this.Category5 = ''; } break; case 'Category5': this.Category5 = value; break; case 'searchHospitalName': this.searchHospitalName = value; break; case 'Barcode': this.Barcode = value; break; } } showAllCate() { console.log('showAllCate'); categoryAllload({ category3Lwc: this.Category3 }) .then((r) => { r = JSON.parse(JSON.stringify(r)); console.log('r = ' + JSON.stringify(r)); if (r.status == 'Success') { this.category4Options = []; this.category5Options = []; //第4分类 for (var key in r.entity.category4OptionMap) { let object = {}; object['label'] = r.entity.category4OptionMap[key]; object['value'] = key; this.category4Options.push(object); } console.log( 'this.category4Options = ' + this.category4Options ); //第5分类 for (var key in r.entity.category5OptionMap) { let object = {}; object['label'] = r.entity.category5OptionMap[key]; object['value'] = key; this.category5Options.push(object); } } else { console.log('r = ' + JSON.stringify(r)); this.showToast('Error', r.msg); } }) .catch((error) => { console.log('error' + JSON.stringify(error)); }); } showCate() { console.log('showAllCate'); categoryload({ category3Lwc: this.Category3, category4Lwc: this.Category4 }) .then((r) => { r = JSON.parse(JSON.stringify(r)); console.log('r = ' + JSON.stringify(r)); if (r.status == 'Success') { this.category4Options = []; this.category5Options = []; //第4分类 for (var key in r.entity.category4OptionMap) { let object = {}; object['label'] = r.entity.category4OptionMap[key]; object['value'] = key; this.category4Options.push(object); } console.log( 'this.category4Options = ' + this.category4Options ); //第5分类 for (var key in r.entity.category5OptionMap) { let object = {}; object['label'] = r.entity.category5OptionMap[key]; object['value'] = key; this.category5Options.push(object); } } else { console.log('r = ' + JSON.stringify(r)); this.showToast('Error', r.msg); } }) .catch((error) => { console.log('error' + JSON.stringify(error)); }); } invoiceChange(event) { this.invoiceId = event.target.value; console.log('this.invoiceId = ' + this.invoiceId); } showToast(type, msg) { this.isShowSpinner = false; this.showLoadingSpinner = false; const event = new ShowToastEvent({ title: type, variant: type, message: msg }); this.dispatchEvent(event); } searchProductJs() { this.isShowSpinner = true; //this.showTable = false; //查询有哪些选择了的然后check const selectedRows = this.template .querySelector('c-lex-custom-lightning-datatable') .getSelectedRows(); console.log('selectedRows = ' + selectedRows); for (var i in this.data) { this.data[i]['check'] = false; } for (var i in this.data) { for (var j in selectedRows) { if (this.data[i].Id == selectedRows[j].Id) { this.data[i]['check'] = true; } } } let cloneData = this.data; for (var i in cloneData) { cloneData[i]['Name'] = cloneData[i].Name__c; cloneData[i]['Category3'] = cloneData[i].Category3__c; cloneData[i]['Category4'] = cloneData[i].Category4__c; cloneData[i]['Category5'] = cloneData[i].Category5__c; cloneData[i]['BoxPiece'] = cloneData[i].Box_Piece__c; delete cloneData[i].Name__c; delete cloneData[i].Category3__c; delete cloneData[i].Category4__c; delete cloneData[i].Category5__c; delete cloneData[i].Box_Piece__c; } console.log('cloneData = ' + JSON.stringify(cloneData)); searchConsumableorderdetails({ agencyProTypeLwc: this.agencyProType, accountNameLwc: this.accountName, userWorkLocationLwc: this.userWorkLocation, outOutPattern: this.outOutPattern, category1: this.consumableName, category3: this.Category3, category4: this.Category4, category5: this.Category5, editAbleLwc: this.EditAble, pageRecordsLwcLwc: cloneData, consumableproductdetailsRecordsLwc: this.consumableproductdetailsRecords, arriveorderLwc: this.arriveorder }).then((r) => { r = JSON.parse(JSON.stringify(r)); console.log('r = ' + JSON.stringify(r)); if (r.status == 'Success') { let tempData = []; //this.data = r.entity.pageRecords; tempData = r.entity.pageRecords; for (var i in tempData) { let unitOptions = []; for (var key in tempData[i].boxorpieceMap) { let unitOption = {}; unitOption['label'] = tempData[i].boxorpieceMap[key]; unitOption['value'] = key; unitOptions.push(unitOption); } tempData[i]['unitOptions'] = unitOptions; tempData[i]['unitValue'] = tempData[i]['unitValue'] == null ? unitOptions[0].value : tempData[i]['unitValue']; if (this.EditAble) { tempData[i].orderdetails1['Box_Piece__c'] = tempData[i].orderdetails1['Box_Piece__c'] == null ? unitOptions[0].value : tempData[i].orderdetails1['Box_Piece__c']; tempData[i].orderdetails1['Shipment_Count__c'] = tempData[i].orderdetails1['Shipment_Count__c'] == null ? 0 : tempData[i].orderdetails1[ 'Shipment_Count__c' ]; tempData[i].orderdetails1['Delivery_List_RMB__c'] = tempData[i].orderdetails1['Delivery_List_RMB__c'] == null ? 0.0 : tempData[i].orderdetails1[ 'Delivery_List_RMB__c' ]; } else { tempData[i]['InvoiceProNot_count__c'] = tempData[i].orderdetails1.InvoiceProNot_count__c; tempData[i]['RrturnPro_count__c'] = tempData[i].orderdetails1.RrturnPro_count__c; tempData[i]['Invoiced_Procount__c'] = tempData[i].orderdetails1.Invoiced_Procount__c; } tempData[i]['shipmentNumber'] = tempData[i].orderdetails1['Shipment_Count__c']; tempData[i]['shippingUnitPrice'] = tempData[i].orderdetails1['Delivery_List_RMB__c']; tempData[i]['recordId'] = tempData[i].Prod.Id; tempData[i]['Id'] = tempData[i].Prod.Id; tempData[i]['Name__c'] = tempData[i].Prod.Name__c; tempData[i]['SFDA_Status__c'] = tempData[i].Prod.SFDA_Status__c; tempData[i]['Category3__c'] = tempData[i].Prod.Category3__c; tempData[i]['Category4__c'] = tempData[i].Prod.Category4__c; tempData[i]['Category5__c'] = tempData[i].Prod.Category5__c; tempData[i]['Box_Piece__c'] = tempData[i].orderdetails1.Box_Piece__c; tempData[i]['shipmentAmount'] = tempData[i].orderdetails1.Shipment_amount__c; tempData[i]['Shipment_amount__c'] = tempData[i].orderdetails1.Shipment_amount__c; tempData[i]['Shipment_Count__c'] = tempData[i].orderdetails1.Shipment_Count__c; if (tempData[i]['check']) { this.selectedRows.push(tempData[i].Id); } } // for (var i in tempData) { // let unitOptions = []; // for (var key in tempData[i].boxorpieceMap) { // let unitOption = {}; // unitOption["label"] = tempData[i].boxorpieceMap[key]; // unitOption["value"] = key; // unitOptions.push(unitOption); // } // tempData[i]["unitOptions"] = unitOptions; // tempData[i]["unitValue"] = unitOptions[0].value; // tempData[i]["recordId"] = tempData[i].Prod.Id; // tempData[i]["Id"] = tempData[i].Prod.Id; // tempData[i]["Name__c"] = tempData[i].Prod.Name__c; // tempData[i]["SFDA_Status__c"] = tempData[i].Prod.SFDA_Status__c; // tempData[i]["Category3__c"] = tempData[i].Prod.Category3__c; // tempData[i]["Category4__c"] = tempData[i].Prod.Category4__c; // tempData[i]["Category5__c"] = tempData[i].Prod.Category5__c; // tempData[i]["Box_Piece__c"] = tempData[i].orderdetails1.Box_Piece__c; // tempData[i]["shipmentNumber"] = tempData[i].orderdetails1.Shipment_Count__c; // tempData[i]["shippingUnitPrice"] = tempData[i].orderdetails1.Delivery_List_RMB__c; // console.log( // "shippingUnitPrice = " + tempData[i]["shippingUnitPrice"] // ); // if (tempData[i]["shippingUnitPrice"] && tempData[i]["shipmentNumber"]) // tempData[i]["shipmentAmount"] = this.amend( // tempData[i]["shipmentNumber"], // tempData[i]["shippingUnitPrice"], // "*" // ); // } this.data = tempData; console.log('this.data = ' + JSON.stringify(this.data)); //this.showTable = true; this.isShowSpinner = false; } else { console.log('r = ' + JSON.stringify(r)); this.showToast('Error', r.msg); } }); } 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.OECId = row.Id; this.HospitalName = row.Name; console.log( 'this.OECId = ' + this.OECId + ' this.HospitalName = ' + this.HospitalName ); this.isModalOpen = false; console.log('this.isModalOpen = ' + this.isModalOpen); } clearAgencyI(event) { this.HospitalName = event.target.value; if (this.HospitalName == '' || this.HospitalName == null) { this.OECId = ''; } console.log('this.HospitalName = ' + this.HospitalName); console.log('this.OECId = ' + this.OECId); if (this.OECId != null && this.OECId != '') { this.checkOutPattern(); } } checkOutPattern() { //根据用户选中的产品给 出库单上的是否医院特价出库字段赋值 let ishos = 0; for (var i in this.data) { if ( this.data[i].check == true && this.data[i].hospitalSpecialOffer == true ) { ishos = ishos + 1; } } if (ishos > 0) { this.cocLwc['OutPattern__c'] = true; } else { this.cocLwc['OutPattern__c'] = false; } } closeModal() { this.isModalOpen = false; } handleUnitChange(event) { console.log('handleUnitChange'); const unitDetail = event.detail; console.log('unitDetail = ' + JSON.stringify(unitDetail)); for (var i in this.data) { if (this.data[i].recordId == unitDetail.data.recordId) { this.data[i].unitValue = unitDetail.data.unitValue; this.data[i].orderdetails1['Box_Piece__c'] = unitDetail.data.unitValue; } } console.log('this.data = ' + JSON.stringify(this.data)); } handleShipmentNumber(event) { console.log('handleShipmentNumber'); const numberDetail = event.detail; console.log('numberDetail = ' + JSON.stringify(numberDetail)); let index = 0; for (var i in this.data) { if (this.data[i].recordId == numberDetail.data.recordId) { index = i; this.data[i].shipmentNumber = Number( numberDetail.data.shipmentnumber ); this.data[i].orderdetails1['Shipment_Count__c'] = Number( numberDetail.data.shipmentnumber ); } } this.ComputePrice( index, this.data[index].shipmentNumber, this.data[index].shippingUnitPrice ); } handleShipmentUnitPrice(event) { console.log('handleShipmentUnitPrice'); const priceDetail = event.detail; let index = 0; for (var i in this.data) { if (this.data[i].recordId == priceDetail.data.recordId) { index = i; this.data[i].shippingUnitPrice = Number( priceDetail.data.shipmentunitprice ); this.data[i].orderdetails1['Delivery_List_RMB__c'] = Number( priceDetail.data.shipmentunitprice ); } } this.ComputePrice( index, this.data[index].shipmentNumber, this.data[index].shippingUnitPrice ); } 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.selectedRows = []; // for (var i in this.data) { // if (this.data[i].check) { // this.selectedRows.push(this.data[i].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)); } //num1 num2传入两个值 symbol +-*/符号 amend(num1, num2, symbol) { var str1 = num1.toString(), str2 = num2.toString(), result, str1Length, str2Length; //解决整数没有小数点方法 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)); // console.log(step); 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; } getSelectedRows(event) { // const selectedRows = event.detail.selectedRows; // console.log("this.selectedRows = " + this.selectedRows); // for (var i in this.data) { // this.data[i]["check"] = false; // } // for (var i in this.data) { // for (var j in selectedRows) { // if (this.data[i].Id == selectedRows[j].Id) { // this.data[i]["check"] = true; // } // } // } } saveConfirmJs() { let msg = '出库价格仅可操作一次变更,保存后将无法修改。\n\n请确认!'; if (this.SummonsStatus == '价格未定') { if (confirm(msg) == true) { this.saveConfirm(); } } else { this.saveConfirm(); } } saveConfirm() { this.isShowSpinner = true; //查询有哪些选择了的然后check const selectedRows = this.template .querySelector('c-lex-custom-lightning-datatable') .getSelectedRows(); console.log('selectedRows = ' + selectedRows); for (var i in this.data) { this.data[i]['check'] = false; } for (var i in this.data) { for (var j in selectedRows) { if (this.data[i].Id == selectedRows[j].Id) { this.data[i]['check'] = true; } } } let cloneData = this.data; for (var i in cloneData) { cloneData[i]['Name'] = cloneData[i].Name__c; cloneData[i]['Category3'] = cloneData[i].Category3__c; cloneData[i]['Category4'] = cloneData[i].Category4__c; cloneData[i]['Category5'] = cloneData[i].Category5__c; cloneData[i]['BoxPiece'] = cloneData[i].Box_Piece__c; delete cloneData[i].Name__c; delete cloneData[i].Category3__c; delete cloneData[i].Category4__c; delete cloneData[i].Category5__c; delete cloneData[i].Box_Piece__c; } console.log('this.cocLwc = ' + JSON.stringify(this.cocLwc)); console.log('this.OECId = ' + this.OECId); console.log('this.HospitalName = ' + this.HospitalName); console.log('this.secondaryDistributor = ' + this.secondaryDistributor); console.log('this.pageRecordsLwc = ' + JSON.stringify(cloneData)); console.log('this.accountid = ' + this.accountid); console.log('this.ESetid = ' + this.ESetid); console.log( 'this.consumableproductdetailsRecords = ' + JSON.stringify(this.consumableproductdetailsRecords) ); save({ cocLwc: this.cocLwc, hospitalInfoLwc: this.OECId, hospitalNameLwc: this.HospitalName, secondaryDistributorLwc: this.secondaryDistributor, pageRecordsLwc: cloneData, accountidLwc: this.accountid, ESetIdLwc: this.ESetid, consumableproductdetailsRecordsLwc: this.consumableproductdetailsRecords, agencyProTypeLwc: this.agencyProType, userWorkLocationLwc: this.userWorkLocation }) .then((r) => { r = JSON.parse(JSON.stringify(r)); console.log('r = ' + JSON.stringify(r)); debugger; if (r.status == 'Success') { let url = '/lexsummonscreat?ESetid=' + r.entity.ESetId; this[NavigationMixin.Navigate]({ type: 'standard__webPage', attributes: { url: url } }); } else { console.log('r.msg = ' + r.msg); this.showToast('Error', r.msg); } }) .catch((error) => { console.log('error = ' + JSON.stringify(error)); }); } //打印指示单 PraseToPDFJs() { console.log('this.cocLwc = ' + JSON.stringify(this.cocLwc)); console.log('this.ESetId = ' + this.ESetid); PraseToPDF({ cocLwc: this.cocLwc, ESetId: this.ESetid }).then((r) => { r = JSON.parse(JSON.stringify(r)); console.log('r = ' + JSON.stringify(r)); if (r.status == 'Success') { window.open('/customer/summonsPDF?ESetid=' + r.entity.ESetId); } else { console.log('r.msg = ' + r.msg); this.showToast('Error', r.msg); } }); } //显示明细 openReportJs() { console.log('openReportJs'); var reportId = this.ESetid; reportId = reportId.substring(0, 15); let url = '/report/00O100000058VzB?fv1=' + reportId; console.log('url = ' + url); this[NavigationMixin.Navigate]({ type: 'standard__webPage', attributes: { url: url } }); } vpClear2Delay(event) { console.log('vpClear2Delay'); if (this.summonsForDirction != '互相调货') { this.cocLwc['Order_ForDealerText__c'] = event.target.value; console.log('this.cocLwc = ' + JSON.stringify(this.cocLwc)); } else { //console.log('Order_ForDealerTextID__c = ' + this.cocLwc['Order_ForDealerTextID__c']) this.cocLwc['Order_ForDealerText__c'] = this.cocLwc['Order_ForDealerTextID__c'] == '' || this.cocLwc['Order_ForDealerTextID__c'] == null || this.cocLwc['Order_ForDealerTextID__c'] == undefined ? '' : this.cocLwc['Order_ForDealerText__c']; console.log('this.cocLwc = ' + JSON.stringify(this.cocLwc)); // console.log('this.cocLwc = ' + JSON.stringify(this.cocLwc)); // this.ForDealerText = this.cocLwc['Order_ForDealerText__c']; // event.target.value = this.cocLwc['Order_ForDealerText__c']; // console.log('this.ForDealerText = ' + this.ForDealerText); } } handleSearch(event) { const lookupElement = event.target; console.log('event.detail = ' + JSON.stringify(event.detail)); apexSearch({ searchTerm: event.detail.searchTerm }) .then((results) => { lookupElement.setSearchResults(results); }) .catch((error) => { console.log('error' + JSON.stringify(error)); }); } handleSelectionChange(event) { const selection = event.target.getSelection(); console.log('selection = ' + JSON.stringify(selection)); this.cocLwc['Order_ForDealerTextID__c'] = selection[0].id; this.cocLwc['Order_ForDealerText__c'] = selection[0].title; console.log('this.cocLwc = ' + JSON.stringify(this.cocLwc)); } handleFilesChange(event) { console.log('handleFilesChange'); if (event.target.files.length > 0) { this.filesUploaded = event.target.files; this.fileName = event.target.files[0].name; } } handleSave() { console.log('saveFile'); if (this.filesUploaded.length > 0) { this.file = this.filesUploaded[0]; if (this.file.size > this.MAX_FILE_SIZE) { this.showToast('Error', '文件过大'); return; } this.showPopSpinner = true; 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('base64Data = ' + encodeURIComponent(this.fileContents)); saveFile({ recordId: this.ESetid, fileName: this.fileName, base64Data: encodeURIComponent(this.fileContents) }) .then((r) => { this.showPopSpinner = false; r = JSON.parse(JSON.stringify(r)); console.log('r = ' + JSON.stringify(r)); this.closePop(); this.showToast('Success', '上传成功'); this.getFiles(); }) .catch((error) => { this.showPopSpinner = false; console.log('error = ' + error.message); this.showToast('Error', '上传失败'); }); } getFiles() { console.log('getFiles'); this.showLoadingSpinner = true; getFiles({ recordId: this.ESetid }) .then((r) => { r = JSON.parse(JSON.stringify(r)); console.log('r = ' + JSON.stringify(r)); this.fileData = r.entity.cvList; for (var i in this.fileData) { this.fileData[i]['CreatedByName'] = this.fileData[i].CreatedBy.Name; this.fileData[i]['url'] = '/' + this.fileData[i].Id; } console.log('this.fileData = ' + this.fileData); this.showLoadingSpinner = false; }) .catch((error) => { console.log('error = ' + error.message); this.showToast('Error', '获取附件失败'); }); } GoodsDeliveryJs() { this.isShowSpinner = true; //查询有哪些选择了的然后check const selectedRows = this.template .querySelector('c-lex-custom-lightning-datatable') .getSelectedRows(); console.log('selectedRows = ' + selectedRows); for (var i in this.data) { this.data[i]['check'] = false; } for (var i in this.data) { for (var j in selectedRows) { if (this.data[i].Id == selectedRows[j].Id) { this.data[i]['check'] = true; } } } let cloneData = this.data; for (var i in cloneData) { cloneData[i]['Name'] = cloneData[i].Name__c; cloneData[i]['Category3'] = cloneData[i].Category3__c; cloneData[i]['Category4'] = cloneData[i].Category4__c; cloneData[i]['Category5'] = cloneData[i].Category5__c; cloneData[i]['BoxPiece'] = cloneData[i].Box_Piece__c; delete cloneData[i].Name__c; delete cloneData[i].Category3__c; delete cloneData[i].Category4__c; delete cloneData[i].Category5__c; delete cloneData[i].Box_Piece__c; } console.log('cloneData = ' + JSON.stringify(cloneData)); GoodsDelivery({ cocLwc: this.cocLwc, ESetId: this.ESetid, pageRecordsLwcLwc: cloneData }) .then((r) => { r = JSON.parse(JSON.stringify(r)); console.log('r = ' + JSON.stringify(r)); if (r.status == 'Success') { console.log( 'Summons_Order_type__c = ' + this.cocLwc['Summons_Order_type__c'] ); this.isSales = this.cocLwc['Summons_Order_type__c'] == '销售' ? true : false; this.GoodsDeliveryInit(); } else { console.log('r.msg = ' + r.msg); this.showToast('Error', r.msg); } this.isShippingSales = true; }) .catch((error) => { console.log('error = ' + error.message); this.showToast('Error', '跳转失败'); }); } GoodsDeliveryInit() { console.log('GoodsDeliveryInit'); GoodsDeliveryInit({ ESetId: this.ESetid }) .then((r) => { r = JSON.parse(JSON.stringify(r)); console.log('r = ' + JSON.stringify(r)); if (r.status == 'Success') { this.salesCoc = r.entity.coc; this.salesAccountName = r.entity.accountName; this.salesUserWorkLocation = r.entity.userWorkLocation; this.salesAccountid = r.entity.accountid; this.salesOrderdetails = r.entity.orderdetails; this.salesData = r.entity.consumableorderdetailsRecords; this.salesErrorData = r.entity.consumableorderdetailsRecordserror; this.salesOrderpieceorboxMap = r.entity.orderpieceorboxMap; this.salesOrderpriceMap = r.entity.orderpriceMap; this.salesOrderagencypriceMap = r.entity.orderagencypriceMap; this.isShowSpinner = false; } else { console.log('r.msg = ' + r.msg); this.showToast('Error', r.msg); } }) .catch((error) => { console.log('error = ' + error.message); this.showToast('Error', '初始化失败'); }); } SalesearchProductJs() { console.log('this.Barcode = ' + this.Barcode); this.isShowSpinner = true; SearchPro({ cocLwc: this.salesCoc, barcodeLwc: this.Barcode, accountName: this.salesAccountName, userWorkLocation: this.salesUserWorkLocation, accountid: this.salesAccountid, orderdetails: this.salesOrderdetails, orderpieceorboxMap: this.salesOrderpieceorboxMap }) .then((r) => { r = JSON.parse(JSON.stringify(r)); console.log('r = ' + JSON.stringify(r)); if (r.status == 'Success') { console.log('SearchPro success'); this.salesErrorData = r.entity.consumableorderdetailsRecordserror; this.salesData = r.entity.consumableorderdetailsRecords; for (var i in this.salesErrorData) { this.salesErrorData[i]['Consumable_order_minor__c'] = this.salesErrorData[ i ].orderdetails2.Consumable_order_minor__c; this.salesErrorData[i]['orderdetails2Name'] = this.salesErrorData[i].orderdetails2.Name; this.salesErrorData[i]['ProdName'] = this.salesErrorData[i].Prod.Name; this.salesErrorData[i]['Box_Piece__c'] = this.salesErrorData[i].orderdetails2.Box_Piece__c; this.salesErrorData[i]['Bar_Code__c'] = this.salesErrorData[i].orderdetails2.Bar_Code__c; this.salesErrorData[i]['Sterilization_limit__c'] = this.salesErrorData[ i ].orderdetails2.Sterilization_limit__c; } for (var i in this.salesData) { this.salesData[i]['Consumable_order_minor__c'] = this.salesData[ i ].orderdetails2.Consumable_order_minor__c; this.salesData[i]['orderdetails2Name'] = this.salesData[i].orderdetails2.Name; this.salesData[i]['orderdetails2NameUrl'] = '/' + this.salesData[i].orderdetails2.Id; this.salesData[i]['Box_Piece__c'] = this.salesData[i].orderdetails2.Box_Piece__c; this.salesData[i]['ProdName'] = this.salesData[i].Prod.Name; this.salesData[i]['Deliver_date__c'] = this.salesData[i].orderdetails2.Deliver_date__c; this.salesData[i]['Bar_Code__c'] = this.salesData[i].orderdetails2.Bar_Code__c; this.salesData[i]['Sterilization_limit__c'] = this.salesData[ i ].orderdetails2.Sterilization_limit__c; } this.isShowSpinner = false; } else { console.log('r.msg = ' + r.msg); this.showToast('Error', r.msg); } }) .catch((error) => { console.log('error = ' + JSON.stringify(error.message)); this.showToast('Error', '初始化失败'); }); } SaveP() { let cloneSalesData = this.salesData; for (var i in cloneSalesData) { delete cloneSalesData[i].Consumable_order_minor__c; delete cloneSalesData[i].orderdetails2Name; delete cloneSalesData[i].orderdetails2NameUrl; delete cloneSalesData[i].Box_Piece__c; delete cloneSalesData[i].ProdName; delete cloneSalesData[i].Deliver_date__c; delete cloneSalesData[i].Bar_Code__c; delete cloneSalesData[i].Sterilization_limit__c; cloneSalesData[i]['ErrorReason'] = ''; } this.isShowSpinner = true; ProSale({ ESetId: this.ESetid, cocLwc: this.salesCoc, barcodeLwc: this.Barcode, accountName: this.salesAccountName, userWorkLocation: this.salesUserWorkLocation, consumableorderdetailsRecordsLwc: JSON.stringify(cloneSalesData), orderdetails: this.salesOrderdetails, orderpriceMap: this.salesOrderpriceMap, orderagencypriceMap: this.salesOrderagencypriceMap }) .then((r) => { r = JSON.parse(JSON.stringify(r)); console.log('r = ' + JSON.stringify(r)); if (r.status == 'Success') { console.log('ProdElivery success'); this.isShowSpinner = false; this[NavigationMixin.Navigate]({ type: 'standard__webPage', attributes: { url: '/lexsaleanddelivery' } }); } else { console.log('r.msg = ' + r.msg); this.showToast('Error', r.msg); } }) .catch((error) => { console.log('error = ' + JSON.stringify(error.message)); this.showToast('Error', 'ProSale2失败'); }); } SaveE() { let cloneSalesData = this.salesData; for (var i in cloneSalesData) { delete cloneSalesData[i].Consumable_order_minor__c; delete cloneSalesData[i].orderdetails2Name; delete cloneSalesData[i].orderdetails2NameUrl; delete cloneSalesData[i].Box_Piece__c; delete cloneSalesData[i].ProdName; delete cloneSalesData[i].Deliver_date__c; delete cloneSalesData[i].Bar_Code__c; delete cloneSalesData[i].Sterilization_limit__c; cloneSalesData[i]['ErrorReason'] = ''; } this.isShowSpinner = true; ProdElivery({ ESetId: this.ESetid, cocLwc: this.salesCoc, barcodeLwc: this.Barcode, accountName: this.salesAccountName, userWorkLocation: this.salesUserWorkLocation, consumableorderdetailsRecordsLwc: JSON.stringify(cloneSalesData), orderdetails: this.salesOrderdetails, orderpriceMap: this.salesOrderpriceMap, orderagencypriceMap: this.salesOrderagencypriceMap }) .then((r) => { r = JSON.parse(JSON.stringify(r)); console.log('r = ' + JSON.stringify(r)); if (r.status == 'Success') { console.log('ProdElivery success'); this.isShowSpinner = false; this[NavigationMixin.Navigate]({ type: 'standard__webPage', attributes: { url: '/lexsaleanddelivery' } }); } else { console.log('r.msg = ' + r.msg); this.showToast('Error', r.msg); } }) .catch((error) => { console.log('error = ' + JSON.stringify(error.message)); this.showToast('Error', '初始化失败'); }); } //发票 openToInvoiceJs() { let url = ''; console.log('this.invoiceId = ' + this.invoiceId); if (this.invoiceId.length > 0 && this.invoiceId != '000000000000000') { url = '/lexconinvoiceview?deliveryId=' + this.ESetid + '&invoiceId=' + this.invoiceId + '&KeyWords=Redirect'; } else { url = '/lexconinvoiceview?deliveryId=' + this.ESetid + '&KeyWords=Redirect'; } this[NavigationMixin.Navigate]({ type: 'standard__webPage', attributes: { url: url } }); } //删除 DeleteConsumable() { this.isShowSpinner = true; DelConsumable({ ESetId: this.ESetid }) .then((r) => { r = JSON.parse(JSON.stringify(r)); console.log('r = ' + JSON.stringify(r)); if (r.status == 'Success') { let url = '/lexsaleanddelivery'; this[NavigationMixin.Navigate]({ type: 'standard__webPage', attributes: { url: url } }); } else { console.log('r.msg = ' + r.msg); this.showToast('Error', r.msg); } }) .catch((error) => { console.log('error = ' + error.message); this.showToast('Error', '跳转失败'); }); } handleLoad() { console.log('handleLoad'); try { const style = document.createElement('style'); style.innerText = '.slds-button__icon {display: none;}'; this.template.querySelector('.hideHelpText').appendChild(style); } catch (error) { console.log(error); } } handleLoad2() { console.log('handleLoad2'); try { const style = document.createElement('style'); style.innerText = '.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); } } //编辑出库单 EditConsumable() { let url = '/lexsummonscreat?ESetid=' + this.ESetid + '&KeyWords=Redirect'; this[NavigationMixin.Navigate]({ type: 'standard__webPage', attributes: { url: url } }); } //显示上传附件 uploadOrder(event) { this.showAttPop = true; } //附件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); } } //是否显示附件移除 get attDelBtn() { if ( this.fileName != '' && this.fileName != null && this.fileName != '请选择一个文件上传' ) { return true; } else { return false; } } //关闭附件弹窗 closePop() { this.showAttPop = false; this.filesUploaded = []; this.fileName = null; } //移除附件 removeAtt() { this.filesUploaded = []; this.fileName = ''; } ClearJs() { this.consumableName = ''; this.Category3 = ''; this.Category4 = ''; this.Category5 = ''; this.searchProductJs(); } }