From de9565270a88b0749d17c1961cd41399c8483c96 Mon Sep 17 00:00:00 2001
From: binxie <137736985@qq.com>
Date: 星期一, 26 六月 2023 17:46:45 +0800
Subject: [PATCH] merge
---
force-app/main/default/lwc/editableListWrapper/editableListWrapper.js | 3
force-app/main/default/lwc/lexOCSMToReportLighting/lexOCSMToReportLighting.html | 5
force-app/main/default/lwc/lexCustomDeleteLWC/lexCustomDeleteLWC.js-meta.xml | 5
force-app/main/default/lwc/pageMessagesForm/pageMessagesForm.js-meta.xml | 5
force-app/main/default/lwc/lexBidAnnouncementConsentButton/lexBidAnnouncementConsentButton.js-meta.xml | 11
force-app/main/default/lwc/lexCopyPIOnCall/lexCopyPIOnCall.js | 52
force-app/main/default/lwc/lexESignFormAttachment/lexESignFormAttachment.js | 48
force-app/main/default/lwc/lexTenderingUsedAttachmentButton/lexTenderingUsedAttachmentButton.js-meta.xml | 11
force-app/main/default/lwc/topPageLwc/topPageLwc.html | 237
force-app/main/default/lwc/lexSubmit/lexSubmit.css | 10
force-app/main/default/lwc/rentalApplyEquipmentRentalPDF/rentalApplyEquipmentRentalPDF.js-meta.xml | 11
force-app/main/default/lwc/lexESignFormAttachment/lexESignFormAttachment.js-meta.xml | 11
force-app/main/default/lwc/childComponentTest/__tests__/childComponentTest.test.js | 25
force-app/main/default/aura/TestCaseClick/TestCaseClickRenderer.js | 5
force-app/main/default/lwc/lexcopyQIS/lexcopyQIS.html | 5
force-app/main/default/lwc/lexOCSMToReportRepair/lexOCSMToReportRepair.js | 92
force-app/main/default/lwc/lexClearReturnDeliverySlip/lexClearReturnDeliverySlip.html | 5
force-app/main/default/lwc/exampleWrapper/exampleWrapper.js-meta.xml | 5
force-app/main/default/lwc/lexPDFQISrequest/lexPDFQISrequest.js | 47
force-app/main/default/lwc/createMixedRecordsApexWrapper/createMixedRecordsApexWrapper.js-meta.xml | 8
force-app/main/default/lwc/rentalApplyEquipmentRentalPDF/rentalApplyEquipmentRentalPDF.js | 44
force-app/main/default/lwc/lexcopyQIS/lexcopyQIS.js | 52
force-app/main/default/lwc/lexCancelSubmitReport/lexCancelSubmitReport.html | 6
force-app/main/default/lwc/lexTenderingLostButton/lexTenderingLostButton.html | 5
force-app/main/default/lwc/test/test.js | 5
force-app/main/default/lwc/lexOCSMNoToReportRepair/lexOCSMNoToReportRepair.js | 102
force-app/main/default/lwc/lexRentalApplyCanleButton/lexRentalApplyCanleButton.css | 11
force-app/main/default/lwc/lexCustomNewMaintenance/lexCustomNewMaintenance.js-meta.xml | 11
force-app/main/default/classes/updateESignBatch.cls | 1054
force-app/main/default/lwc/lexCopyPIInspectionReport/lexCopyPIInspectionReport.html | 5
force-app/main/default/classes/updateESignBatchAttachment.cls | 1305 +
force-app/main/default/lwc/lexRentalApplySubmitedApprovalButton/lexRentalApplySubmitedApprovalButton.html | 5
force-app/main/default/classes/PaginatedListControllerLwc.cls-meta.xml | 5
force-app/main/default/lwc/lexSearchProductCs/lexSearchProductCs.js-meta.xml | 11
force-app/main/default/lwc/apexUtils/apexUtils.js-meta.xml | 5
force-app/main/default/lwc/ldsUtils/ldsUtils.js | 35
force-app/main/default/lwc/lexBeforeOPDPDFBtnSIS/lexBeforeOPDPDFBtnSIS.html | 14
force-app/main/default/lwc/lexSIStoOPD/lexSIStoOPD.js | 101
force-app/main/default/lwc/recentProjectsLWC/recentProjectsLWC.js-meta.xml | 14
force-app/main/default/lwc/pageMessagesDataRetrieval/pageMessagesDataRetrieval.html | 8
force-app/main/default/lwc/lexQuarterlyReport/lexQuarterlyReport.js-meta.xml | 11
force-app/main/default/lwc/lexSubmitForApproval/lexSubmitForApproval.js-meta.xml | 11
force-app/main/default/lwc/lexBatchSelectRepairLWC/lexBatchSelectRepairLWC.js | 576
force-app/main/default/lwc/lexRentalApplyCanleButton/lexRentalApplyCanleButton.html | 4
force-app/main/default/lwc/listRecordLinksWrapper/listRecordLinksWrapper.js-meta.xml | 8
force-app/main/default/lwc/topPageLwc/topPageLwc.js | 138
force-app/main/default/lwc/inventoryViewLWC/inventoryViewLWC.html | 117
force-app/main/default/lwc/lexCreateReportMaintenanceContract/lexCreateReportMaintenanceContract.html | 5
force-app/main/default/lwc/lexDetailBulkUpdate/lexDetailBulkUpdate.js | 39
.prettierrc | 37
force-app/main/default/lwc/paginatedList/paginatedList.js | 126
force-app/main/default/lwc/lexRCinspectioncompletedate/lexRCinspectioncompletedate.html | 5
force-app/main/default/lwc/lexContractdetailpdf/lexContractdetailpdf.html | 350
force-app/main/default/aura/TestCaseClick/TestCaseClick.cmp | 3
force-app/main/default/lwc/lexLoanerArrangedEmail/lexLoanerArrangedEmail.html | 5
force-app/main/default/lwc/lexSubmit/lexSubmit.js-meta.xml | 11
force-app/main/default/lwc/listRecordLinksWrapper/listRecordLinksWrapper.html | 17
force-app/main/default/lwc/createCaseTest/__tests__/createCaseTest.test.js | 25
force-app/main/default/lwc/lexEquipmentRentalPicturePDF/lexEquipmentRentalPicturePDF.js | 41
force-app/main/default/lwc/lexCopyRepair/lexCopyRepair.html | 6
force-app/main/default/classes/DNUpsertBatch.cls | 1051
force-app/main/default/lwc/editableListWrapper/editableListWrapper.js-meta.xml | 8
force-app/main/default/lwc/lexSearchProduct/lexSearchProduct.js-meta.xml | 11
force-app/main/default/lwc/oppLoseButton/oppLoseButton.js-meta.xml | 11
force-app/main/default/lwc/cancelApplyLWC/cancelApplyLWC.html | 4
force-app/main/default/lwc/createCaseTest/createCaseTest.js | 11
force-app/main/default/lwc/singleRecords/singleRecords.js-meta.xml | 8
force-app/main/default/lwc/lexQuotationRequest/lexQuotationRequest.js | 73
force-app/main/default/lwc/lexServiceCutPriceApply/lexServiceCutPriceApply.js-meta.xml | 11
force-app/main/default/lwc/batchSelectRepairLWC/batchSelectRepairLWC.css | 9
force-app/main/default/lwc/lexASACEditor/lexASACEditor.html | 5
force-app/main/default/lwc/lexASRCEditor/lexASRCEditor.js | 74
force-app/main/default/lwc/lexLoseBid/lexLoseBid.css | 18
force-app/main/default/lwc/lexTenderingAntiLogicButton/lexTenderingAntiLogicButton.js | 65
force-app/main/default/lwc/opdNewSparePartsLoanApplication/opdNewSparePartsLoanApplication.js-meta.xml | 11
force-app/main/default/lwc/lexCancelSubmit/lexCancelSubmit.html | 6
force-app/main/default/lwc/lexEquipmentSetRental_Order/lexEquipmentSetRental_Order.css | 11
force-app/main/default/lwc/lexOCSMToReport/lexOCSMToReport.js-meta.xml | 11
force-app/main/default/lwc/lexCreateNotesEmail/lexCreateNotesEmail.js-meta.xml | 11
force-app/main/default/lwc/lexStockApply/lexStockApply.html | 6
force-app/main/default/lwc/cancelApplyLWC/cancelApplyLWC.js | 90
force-app/main/default/lwc/binding/binding.js | 9
force-app/main/default/lwc/createRecordWithPrepopulatedValues/createRecordWithPrepopulatedValues.js | 24
force-app/main/default/lwc/lexUploadToSap/lexUploadToSap.html | 6
force-app/main/default/lwc/lexTenderingRelevancyButton/lexTenderingRelevancyButton.js-meta.xml | 11
force-app/main/default/lwc/lexInsPageBtn/lexInsPageBtn.html | 5
force-app/main/default/lwc/opdUpdateDate/opdUpdateDate.js-meta.xml | 11
force-app/main/default/lwc/lexRentalApplyDiscountApproval/lexRentalApplyDiscountApproval.js-meta.xml | 11
force-app/main/default/lwc/lexMainFixtureSelect/lexMainFixtureSelect.js-meta.xml | 11
force-app/main/default/lwc/lexRentalApplyDiscountApproval/lexRentalApplyDiscountApproval.html | 6
force-app/main/default/lwc/lexSelectRental/lexSelectRental.html | 4
force-app/main/default/classes/SaleOrderController.cls | 10
force-app/main/default/lwc/opdSupplementaryApplication/opdSupplementaryApplication.js-meta.xml | 11
force-app/main/default/lwc/lexAppCancelSubmit/lexAppCancelSubmit.js-meta.xml | 11
force-app/main/default/lwc/lexPreContractSubmit/lexPreContractSubmit.js-meta.xml | 11
force-app/main/default/lwc/beforeRenderHook/beforeRenderHook.js-meta.xml | 5
force-app/main/default/lwc/rentalApplyLWT/rentalApplyLWT.html | 5
force-app/main/default/lwc/lexAddress/lexAddress.js | 80
force-app/main/default/lwc/lexOCSMNogoods/lexOCSMNogoods.js-meta.xml | 11
force-app/main/default/lwc/editRecordWrapper/editRecordWrapper.js-meta.xml | 8
force-app/main/default/lwc/editableList/editableList.css | 3
force-app/main/default/lwc/lexRentalApplyJump/lexRentalApplyJump.js | 112
force-app/main/default/lwc/lexSendQIS/lexSendQIS.css | 22
force-app/main/default/lwc/lexQISAgree/lexQISAgree.js-meta.xml | 11
force-app/main/default/lwc/lexOCSMNogoods/lexOCSMNogoods.js | 101
force-app/main/default/lwc/lexTenderingNotarizeButton/lexTenderingNotarizeButton.js-meta.xml | 11
force-app/main/default/lwc/lexQuotationRequest/lexQuotationRequest.js-meta.xml | 11
force-app/main/default/lwc/lexSearchProductCs/lexSearchProductCs.css | 6
force-app/main/default/lwc/lexSubmitExtensionApprovalProcess/lexSubmitExtensionApprovalProcess.js-meta.xml | 11
force-app/main/default/lwc/lexCustomClone/lexCustomClone.css | 10
force-app/main/default/lwc/lexAgencyAuthorize/lexAgencyAuthorize.html | 6
force-app/main/default/lwc/lexTopInQueue/lexTopInQueue.css | 22
force-app/main/default/lwc/rentalApplyLWT/rentalApplyLWT.css | 11
force-app/main/default/aura/TestCaseClick/TestCaseClickHelper.js | 5
force-app/main/default/lwc/lexStockApply/lexStockApply.js | 114
package.json | 2
force-app/main/default/lwc/opdSupplementaryApplication/opdSupplementaryApplication.css | 10
force-app/main/default/lwc/topPageLwc/topPageLwc.js-meta.xml | 9
force-app/main/default/lwc/toolbar/toolbar.js-meta.xml | 5
force-app/main/default/lwc/lexFinLibrary3/lexFinLibrary3.html | 4
force-app/main/default/lwc/lexESignAcceptanceHospital/lexESignAcceptanceHospital.js-meta.xml | 11
force-app/main/default/lwc/selectSubstituteLWC/selectSubstituteLWC.css | 11
force-app/main/default/lwc/toolbar/toolbar.js | 19
force-app/main/default/lwc/lexReturnDeliverySlip/lexReturnDeliverySlip.css | 22
force-app/main/default/lwc/lexBeforeOPDPDFBtnSIS/lexBeforeOPDPDFBtnSIS.js | 97
force-app/main/default/lwc/lexLostReturnDeliverySlip/lexLostReturnDeliverySlip.html | 5
force-app/main/default/lwc/lexPreContractSubmit/lexPreContractSubmit.html | 6
force-app/main/default/lwc/lexFinLibrary3/lexFinLibrary3.js | 58
force-app/main/default/lwc/lexAgencyAuthorize/lexAgencyAuthorize.js-meta.xml | 11
force-app/main/default/lwc/opdCancelSubmit/opdCancelSubmit.js-meta.xml | 11
force-app/main/default/lwc/lexVOCConfirm/lexVOCConfirm.js | 105
force-app/main/default/lwc/lexSelectAssetsMaintenance/lexSelectAssetsMaintenance.js | 53
force-app/main/default/lwc/beforeRenderHookWrapper/beforeRenderHookWrapper.js-meta.xml | 8
force-app/main/default/lwc/lexTenderingLogicButton/lexTenderingLogicButton.js-meta.xml | 11
force-app/main/default/lwc/lexBidAnnouncementRejectButton/lexBidAnnouncementRejectButton.html | 5
force-app/main/default/lwc/customDelete/customDelete.html | 2
force-app/main/default/lwc/listWithParentRecordDataWrapper/listWithParentRecordDataWrapper.html | 19
force-app/main/default/lwc/lexOSHInspect/lexOSHInspect.js-meta.xml | 11
force-app/main/default/classes/InventoryController.cls | 51
force-app/main/default/lwc/rentalApplyLWT/rentalApplyLWT.js-meta.xml | 11
force-app/main/default/lwc/lexCopyPIOnCall/lexCopyPIOnCall.html | 5
force-app/main/default/lwc/lexFinLibrary2/lexFinLibrary2.html | 4
force-app/main/default/lwc/lexRCinspectioncompletedate/lexRCinspectioncompletedate.js-meta.xml | 11
force-app/main/default/lwc/loanerArrangedEmailLWC/loanerArrangedEmailLWC.css | 11
force-app/main/default/lwc/loanerArrangedEmailLWC/loanerArrangedEmailLWC.html | 5
force-app/main/default/lwc/lexAddSubmitApprovalProcess/lexAddSubmitApprovalProcess.html | 5
force-app/main/default/lwc/opdCancelSubmit/opdCancelSubmit.js | 99
force-app/main/default/lwc/lexASACEditorRepair/lexASACEditorRepair.js-meta.xml | 11
force-app/main/default/lwc/lexFinLibrary2/lexFinLibrary2.js-meta.xml | 11
force-app/main/default/lwc/lexOCSMNoToReportLighting/lexOCSMNoToReportLighting.html | 5
force-app/main/default/lwc/demoLWC/demoLWC.js-meta.xml | 5
force-app/main/default/lwc/lexTenderingUsedAttachmentButton/lexTenderingUsedAttachmentButton.html | 5
force-app/main/default/lwc/lexSIStoOPD/lexSIStoOPD.css | 10
force-app/main/default/lwc/lexQISAgree/lexQISAgree.css | 22
force-app/main/default/lwc/pageMessagesDataRetrievalWrapper/pageMessagesDataRetrievalWrapper.js | 3
force-app/main/default/lwc/lexLostReturnDeliverySlip/lexLostReturnDeliverySlip.js | 39
force-app/main/default/lwc/lexSubmitApprovalProcess/lexSubmitApprovalProcess.js-meta.xml | 11
force-app/main/default/lwc/ll/ll.js | 5
force-app/main/default/lwc/lexSINewQuoteEntry/lexSINewQuoteEntry.html | 1
force-app/main/default/lwc/panelGridWrapper/panelGridWrapper.js | 3
force-app/main/default/lwc/parentComponentTest/parentComponentTest.js | 62
force-app/main/default/lwc/lexASRCEditor/lexASRCEditor.js-meta.xml | 11
force-app/main/default/lwc/pageMessagesDataRetrieval/__mocks__/pageMessagesDataRetrieval.js | 3
force-app/main/default/lwc/singleRecords/singleRecords.js | 18
force-app/main/default/lwc/lexCancelSelect/lexCancelSelect.js-meta.xml | 11
force-app/main/default/lwc/lexRCSubmit/lexRCSubmit.js-meta.xml | 11
force-app/main/default/lwc/listRecordLinks/listRecordLinks.css | 3
force-app/main/default/lwc/lexCreateEvent/lexCreateEvent.html | 6
force-app/main/default/lwc/exampleWrapper/exampleWrapper.html | 36
force-app/main/default/lwc/lexCopyRepair/lexCopyRepair.js-meta.xml | 11
manifest/packageForSign.xml | 16
force-app/main/default/lwc/lexDispatchOCSMQARA/lexDispatchOCSMQARA.css | 10
force-app/main/default/lwc/lexCancelSubmitReport/lexCancelSubmitReport.css | 10
force-app/main/default/lwc/lexSubmitExtensionApprovalProcess/lexSubmitExtensionApprovalProcess.js | 76
force-app/main/default/lwc/exampleWrapper/__mocks__/exampleWrapperTemplate.html | 3
force-app/main/default/lwc/lexVOCFinish/lexVOCFinish.js-meta.xml | 11
force-app/main/default/lwc/lexReturnDeliverySlip/lexReturnDeliverySlip.js | 53
force-app/main/default/lwc/lexSubmit/lexSubmit.js | 68
force-app/main/default/lwc/lexQISIntakeuniversalcode/lexQISIntakeuniversalcode.js | 64
force-app/main/default/lwc/createMixedRecordsWireFunctions/createMixedRecordsWireFunctions.js-meta.xml | 5
force-app/main/default/lwc/childComponentTest/childComponentTest.js-meta.xml | 5
force-app/main/default/lwc/opdSupplementaryApplication/opdSupplementaryApplication.js | 110
force-app/main/default/lwc/lWtTEST/lWtTEST.js | 5
force-app/main/default/lwc/errorPanel/errorPanel.js-meta.xml | 5
force-app/main/default/lwc/lexASRCEditorRepair/lexASRCEditorRepair.html | 5
force-app/main/default/lwc/lexCustomNewCopy2/lexCustomNewCopy2.html | 6
force-app/main/default/lwc/listInfiniteScrolling/listInfiniteScrolling.js | 54
force-app/main/default/lwc/lexASACEditor/lexASACEditor.js-meta.xml | 11
force-app/main/default/lwc/lexOSHSubmit/lexOSHSubmit.html | 5
force-app/main/default/lwc/lexNewTransferApply/lexNewTransferApply.html | 5
force-app/main/default/lwc/lexCreateReportMaintenanceContract/lexCreateReportMaintenanceContract.js | 69
force-app/main/default/lwc/lexOCSMToReportLighting/lexOCSMToReportLighting.css | 10
force-app/main/default/lwc/lexSplitApply/lexSplitApply.js-meta.xml | 11
force-app/main/default/lwc/lexRCRecieved/lexRCRecieved.js-meta.xml | 11
force-app/main/default/lwc/listRecordLinksWrapper/listRecordLinksWrapper.js | 3
force-app/main/default/lwc/qisUniversalFailureCode/qisUniversalFailureCode.css | 10
force-app/main/default/lwc/lexContractdetailpdf/lexContractdetailpdf.css | 88
force-app/main/default/lwc/lexSICopyDemand/lexSICopyDemand.js | 67
force-app/main/default/lwc/viewRecordWithParentRecordData/viewRecordWithParentRecordData.js | 28
force-app/main/default/lwc/lexVOCSubmit/lexVOCSubmit.js-meta.xml | 11
force-app/main/default/lwc/inventoryEditingLWC/inventoryEditingLWC.js-meta.xml | 9
force-app/main/default/lwc/lexRCCDScomplete/lexRCCDScomplete.css | 22
force-app/main/default/lwc/lexFinLibrary/lexFinLibrary.css | 11
force-app/main/default/classes/SampleLookupController.cls | 89
force-app/main/default/lwc/lexAppCancelSubmit/lexAppCancelSubmit.html | 5
force-app/main/default/lwc/lexInputSolution/lexInputSolution.css | 10
force-app/main/default/lwc/lexReturnDeliverySlip/lexReturnDeliverySlip.html | 5
force-app/main/default/lwc/lexCreateNotesEmail/lexCreateNotesEmail.html | 5
force-app/main/default/lwc/lexSendQIS/lexSendQIS.js-meta.xml | 11
force-app/main/default/lwc/oshRecieved/oshRecieved.js-meta.xml | 11
force-app/main/default/lwc/listWithParentRecordData/listWithParentRecordData.css | 3
force-app/main/default/lwc/ll/ll.html | 3
force-app/main/default/lwc/lexOPDtoSIS/lexOPDtoSIS.html | 6
force-app/main/default/lwc/lexYanshoudanRequest/lexYanshoudanRequest.js-meta.xml | 11
force-app/main/default/lwc/lexRentalApplyESetRefreshStatus/lexRentalApplyESetRefreshStatus.css | 11
force-app/main/default/lwc/pageBlocks/pageBlocks.html | 47
force-app/main/default/lwc/tabsWrapper/tabsWrapper.html | 18
force-app/main/default/lwc/errorPanel/templates/inlineMessage.html | 19
force-app/main/default/lwc/lexAddSubmitApprovalProcess/lexAddSubmitApprovalProcess.js-meta.xml | 11
force-app/main/default/lwc/lexSISubmit/lexSISubmit.js | 97
force-app/main/default/lwc/pageMessagesDataRetrieval/pageMessagesDataRetrieval.js-meta.xml | 5
force-app/main/default/lwc/lexRentalApplySubmitedApprovalButton/lexRentalApplySubmitedApprovalButton.js | 758
force-app/main/default/lwc/newOrderLWC/newOrderLWC.html | 3
force-app/main/default/aura/TestCaseClick/TestCaseClick.cmp-meta.xml | 5
force-app/main/default/lwc/panelGridWrapper/panelGridWrapper.js-meta.xml | 8
force-app/main/default/lwc/batchSelectRepairLWC/batchSelectRepairLWC.js-meta.xml | 11
force-app/main/default/lwc/lexPreContractSubmit/lexPreContractSubmit.js | 116
force-app/main/default/lwc/toolbar/toolbar.html | 31
force-app/main/default/lwc/lexRentalApplyJump/lexRentalApplyJump.js-meta.xml | 11
force-app/main/default/lwc/lexVOCAnswer/lexVOCAnswer.html | 7
force-app/main/default/lwc/lexCustomDeleteLWC/lexCustomDeleteLWC.html | 2
force-app/main/default/lwc/lexRentalApplyCanleButton/lexRentalApplyCanleButton.js | 110
force-app/main/default/lwc/listInfiniteScrolling/listInfiniteScrolling.css | 3
force-app/main/default/lwc/lexSendNFM103/lexSendNFM103.js-meta.xml | 11
force-app/main/default/lwc/lexOCSMToReportRepair/lexOCSMToReportRepair.js-meta.xml | 11
force-app/main/default/lwc/test/test.js-meta.xml | 5
force-app/main/default/lwc/lexcopyQIS/lexcopyQIS.js-meta.xml | 11
force-app/main/default/lwc/lexRCRecieved/lexRCRecieved.css | 22
force-app/main/default/lwc/pageMessagesToast/pageMessagesToast.js-meta.xml | 5
force-app/main/default/aura/TestCaseClick/TestCaseClick.auradoc | 6
force-app/main/default/lwc/lexCustomDelete/lexCustomDelete.js | 89
force-app/main/default/classes/updateESignBatchAttachment.cls-meta.xml | 5
force-app/main/default/classes/updateESignBatchTest.cls | 3191 +-
force-app/main/default/lwc/lexPaymentPlanLoad/lexPaymentPlanLoad.html | 276
force-app/main/default/lwc/lexCustomNewMaintenance/lexCustomNewMaintenance.js | 79
force-app/main/default/lwc/createMixedRecordsWireFunctionsWrapper/createMixedRecordsWireFunctionsWrapper.js | 3
force-app/main/default/lwc/otherButtonInASACEditor/otherButtonInASACEditor.js-meta.xml | 11
force-app/main/default/lwc/parentComponentTest/parentComponentTest.html | 44
force-app/main/default/lwc/lexTerminalMaintenance/lexTerminalMaintenance.html | 6
force-app/main/default/lwc/lexSearchProduct/lexSearchProduct.html | 76
force-app/main/default/lwc/viewVfLwcSource/viewVfLwcSource.css | 3
force-app/main/default/lwc/lexTransferApplyPDF/lexTransferApplyPDF.js | 92
force-app/main/default/lwc/lexCancelSelect/lexCancelSelect.html | 5
force-app/main/default/lwc/createRecordWithPrepopulatedValuesWrapper/createRecordWithPrepopulatedValuesWrapper.js-meta.xml | 8
force-app/main/default/lwc/lexTenderingIntentionButton/lexTenderingIntentionButton.html | 5
force-app/main/default/lwc/lexTenderingLogicButton/lexTenderingLogicButton.html | 5
force-app/main/default/lwc/lexTransferApplyPDF/lexTransferApplyPDF.html | 5
force-app/main/default/lwc/lexOCSMNoToReport/lexOCSMNoToReport.js-meta.xml | 11
force-app/main/default/lwc/lexComplete/lexComplete.js | 96
force-app/main/default/lwc/lexCustomDeleteLWC/lexCustomDeleteLWC.js | 144
force-app/main/default/lwc/oppLoseButton/oppLoseButton.js | 86
force-app/main/default/lwc/lexBidAnnouncementRejectButton/lexBidAnnouncementRejectButton.js | 93
force-app/main/default/lwc/paginatedListWrapper/paginatedListWrapper.html | 18
force-app/main/default/aura/WeeklyReport/WeeklyReport.cmp | 2
force-app/main/default/lwc/lexAllReceivedFse/lexAllReceivedFse.css | 22
force-app/main/default/lwc/lexNewRepairLWC/lexNewRepairLWC.js-meta.xml | 11
force-app/main/default/lwc/errorPanel/errorPanel.js | 28
force-app/main/default/lwc/lexOLYwinBid/lexOLYwinBid.js-meta.xml | 11
force-app/main/default/lwc/pocLightningDatatable/customUnit.html | 12
force-app/main/default/lwc/listWithParentRecordData/listWithParentRecordData.js | 38
force-app/main/default/lwc/lexLoanerArrangedEmail/lexLoanerArrangedEmail.js-meta.xml | 11
force-app/main/default/lwc/lexNewTransferApply/lexNewTransferApply.js-meta.xml | 11
force-app/main/default/lwc/pageBlocks/pageBlocks.js-meta.xml | 5
force-app/main/default/lwc/lexRentalApplySubmitedApprovalButton/lexRentalApplySubmitedApprovalButton.js-meta.xml | 11
force-app/main/default/lwc/lexSplitApply/lexSplitApply.html | 5
force-app/main/default/lwc/maintenanceContract/maintenanceContract.js | 8
force-app/main/default/lwc/lexRentalApplyJump/lexRentalApplyJump.html | 5
force-app/main/default/lwc/interoperability/interoperability.html | 11
force-app/main/default/lwc/createMixedRecordsApexWrapper/createMixedRecordsApexWrapper.html | 22
force-app/main/default/lwc/createMixedRecordsApex/createMixedRecordsApex.js-meta.xml | 5
force-app/main/default/lwc/lexTenderingUsedAttachmentButton/lexTenderingUsedAttachmentButton.js | 54
force-app/main/default/lwc/lexCreateReportMaintenanceContract/lexCreateReportMaintenanceContract.js-meta.xml | 11
force-app/main/default/lwc/ll/ll.js-meta.xml | 5
force-app/main/default/lwc/editableList/editableList.js | 40
force-app/main/default/lwc/lexQISIntakeuniversalcode/lexQISIntakeuniversalcode.html | 5
force-app/main/default/lwc/lexPDFQISrequest/lexPDFQISrequest.css | 22
force-app/main/default/lwc/lexASACEditor/lexASACEditor.js | 73
force-app/main/default/lwc/lexSelectRental/lexSelectRental.js-meta.xml | 11
force-app/main/default/lwc/lexRequestDB/lexRequestDB.js | 107
force-app/main/default/lwc/lexQISSC/lexQISSC.js-meta.xml | 11
force-app/main/default/lwc/listInfiniteScrollingWrapper/listInfiniteScrollingWrapper.html | 18
force-app/main/default/lwc/parentComponentTest/__tests__/parentComponentTest.test.js | 25
force-app/main/default/lwc/listWithParentRecordDataWrapper/listWithParentRecordDataWrapper.js-meta.xml | 8
force-app/main/default/lwc/lexComplete/lexComplete.css | 10
force-app/main/default/lwc/lexQuotationRequest/lexQuotationRequest.css | 10
force-app/main/default/lwc/lexAppSubmitButton/lexAppSubmitButton.js | 108
force-app/main/default/lwc/lexOSHInspect/lexOSHInspect.css | 10
force-app/main/default/lwc/lexOSHInspect/lexOSHInspect.html | 5
force-app/main/default/lwc/lexSelectSubstitute/lexSelectSubstitute.js-meta.xml | 11
force-app/main/default/lwc/lexVOCCheck/lexVOCCheck.css | 10
force-app/main/default/lwc/lexSearchProductCs/lexSearchProductCs.html | 70
force-app/main/default/lwc/listRecordLinks/listRecordLinks.js-meta.xml | 5
force-app/main/default/lwc/lexAppCancelSubmit/lexAppCancelSubmit.js | 85
force-app/main/default/lwc/newRepairLWC/newRepairLWC.js | 124
force-app/main/default/lwc/lexUploadToRecognitionModel/lexUploadToRecognitionModel.js | 133
force-app/main/default/lwc/lexCustomNewMCMaintenance/lexCustomNewMCMaintenance.js | 81
force-app/main/default/lwc/lexCustomNewCopy2/lexCustomNewCopy2.js | 77
force-app/main/default/lwc/lexCustomNewMCMaintenance/lexCustomNewMCMaintenance.js-meta.xml | 11
force-app/main/default/lwc/exampleWrapper/exampleWrapper.js | 28
force-app/main/default/lwc/lexOCSMToReport/lexOCSMToReport.js | 97
force-app/main/default/lwc/newOrderButton/newOrderButton.js | 24
force-app/main/default/lwc/panelGrid/panelGrid.html | 19
force-app/main/default/lwc/demoLWC/demoLWC.js | 70
force-app/main/default/lwc/lexTransferApplyPDF/lexTransferApplyPDF.js-meta.xml | 11
force-app/main/default/lwc/lexUploadToSap/lexUploadToSap.js-meta.xml | 11
force-app/main/default/lwc/pageMessagesFormWrapper/pageMessagesFormWrapper.js | 3
force-app/main/default/lwc/lexSelectAssetsMaintenance/lexSelectAssetsMaintenance.html | 5
force-app/main/default/lwc/lexRCCDScomplete/lexRCCDScomplete.html | 5
force-app/main/default/lwc/lexESignFormAttachment/lexESignFormAttachment.html | 5
force-app/main/default/lwc/inventoryEditingLWC/inventoryEditingLWC.js | 76
force-app/main/default/lwc/singleRecords/singleRecords.html | 23
force-app/main/default/lwc/gzwbtest/gzwbtest.js | 3
force-app/main/default/lwc/lexCancelApply/lexCancelApply.js-meta.xml | 11
force-app/main/default/lwc/pageMessagesDataRetrievalWrapper/pageMessagesDataRetrievalWrapper.html | 20
force-app/main/default/lwc/newOrderButton/newOrderButton.js-meta.xml | 14
force-app/main/default/lwc/lexOCSMNoToReportRepair/lexOCSMNoToReportRepair.html | 6
force-app/main/default/lwc/lexQISIntakeuniversalcode/lexQISIntakeuniversalcode.css | 22
force-app/main/default/lwc/lexInsPageBtn/lexInsPageBtn.js | 62
force-app/main/default/lwc/lexSendNFM103/lexSendNFM103.html | 6
force-app/main/default/lwc/lexTenderingNoStandardButton/lexTenderingNoStandardButton.js | 72
force-app/main/default/lwc/oshRecieved/oshRecieved.html | 5
force-app/main/default/lwc/beforeRenderHookWrapper/beforeRenderHookWrapper.js | 3
force-app/main/default/lwc/lexCopyPIOnCall/lexCopyPIOnCall.js-meta.xml | 11
force-app/main/default/lwc/lexOCSMNoToReportForReport/lexOCSMNoToReportForReport.html | 6
force-app/main/default/lwc/otherButtonInCancelSubmit/otherButtonInCancelSubmit.html | 7
force-app/main/default/lwc/lexRentalApplyJump/lexRentalApplyJump.css | 11
force-app/main/default/lwc/editableListWrapper/editableListWrapper.html | 18
force-app/main/default/lwc/interoperability/interoperability.js-meta.xml | 5
force-app/main/default/lwc/lexCustomAnewMaintenance/lexCustomAnewMaintenance.js-meta.xml | 11
force-app/main/default/lwc/pageBlocksWrapper/pageBlocksWrapper.js | 3
force-app/main/default/lwc/toolbar/toolbar.css | 3
force-app/main/default/lwc/tabsWrapper/tabsWrapper.js | 3
force-app/main/default/lwc/lexDeleteQuotePage/lexDeleteQuotePage.js-meta.xml | 11
force-app/main/default/lwc/lexOCSMNoToReportForReport/lexOCSMNoToReportForReport.js-meta.xml | 11
force-app/main/default/lwc/opdUpdateDate/opdUpdateDate.js | 134
force-app/main/default/lwc/lexCancelReport/lexCancelReport.js-meta.xml | 11
force-app/main/default/lwc/lexBidAnnouncementConsentButton/lexBidAnnouncementConsentButton.html | 5
force-app/main/default/lwc/lexAppSubmitButton/lexAppSubmitButton.html | 5
force-app/main/default/lwc/lexCustomClone/lexCustomClone.js-meta.xml | 11
force-app/main/default/lwc/pageMessagesDataRetrievalWrapper/pageMessagesDataRetrievalWrapper.js-meta.xml | 8
force-app/main/default/lwc/opdNewSparePartsLoanApplication/opdNewSparePartsLoanApplication.html | 5
force-app/main/default/lwc/lexRCinspectioncompletedate/lexRCinspectioncompletedate.js | 98
force-app/main/default/lwc/splitApplyLWC/splitApplyLWC.js-meta.xml | 11
force-app/main/default/lwc/lexCreateNotesEmail/lexCreateNotesEmail.css | 10
force-app/main/default/lwc/tenderLost/tenderLost.js | 6
force-app/main/default/lwc/newOrderList/newOrderList.js | 65
force-app/main/default/lwc/afterRenderHook/afterRenderHook.js-meta.xml | 13
force-app/main/default/lwc/loanerArrangedEmailLWC/loanerArrangedEmailLWC.js | 258
force-app/main/default/lwc/lexFinLibrary2/lexFinLibrary2.js | 62
force-app/main/default/lwc/lexXinSearchVisitorPlace/lexXinSearchVisitorPlace.js | 38
force-app/main/default/lwc/lexCreateEvent/lexCreateEvent.js-meta.xml | 11
force-app/main/default/lwc/lexOSHSubmit/lexOSHSubmit.js | 140
force-app/main/default/lwc/lexTenderingCopyButton/lexTenderingCopyButton.js | 64
force-app/main/default/lwc/lexVOCAnswer/lexVOCAnswer.js | 90
force-app/main/default/lwc/lexYanshoudanRequest/lexYanshoudanRequest.js | 79
force-app/main/default/lwc/lexMainFixtureSelect/lexMainFixtureSelect.js | 33
force-app/main/default/lwc/lexSendQIS/lexSendQIS.js | 121
force-app/main/default/lwc/otherButtonInCancelSubmit/otherButtonInCancelSubmit.js-meta.xml | 11
force-app/main/default/lwc/lexPaymentPlanLoad/lexPaymentPlanLoad.js-meta.xml | 11
force-app/main/default/lwc/customDelete/customDelete.js-meta.xml | 5
force-app/main/default/lwc/lexTenderingNoStandardButton/lexTenderingNoStandardButton.html | 5
force-app/main/default/lwc/lookup/lookup.js-meta.xml | 5
force-app/main/default/lwc/lexSubmitApprovalProcess/lexSubmitApprovalProcess.html | 5
force-app/main/default/lwc/lexPDFMaintenanceCommission/lexPDFMaintenanceCommission.js | 54
force-app/main/default/lwc/demoWrapper/demoWrapper.html | 16
force-app/main/default/lwc/lexTenderingCopyButton/lexTenderingCopyButton.js-meta.xml | 11
force-app/main/default/lwc/createCaseTest/createCaseTest.html | 14
force-app/main/default/lwc/lexRCRecieved/lexRCRecieved.html | 5
force-app/main/default/lwc/inventoryViewLWC/inventoryViewLWC.js-meta.xml | 9
force-app/main/default/lwc/lexAgencyAuthorize/lexAgencyAuthorize.css | 10
force-app/main/default/aura/TestCaseClick/TestCaseClick.css | 2
force-app/main/default/lwc/tabs/tabs.js | 3
force-app/main/default/lwc/viewRecordWithParentRecordData/viewRecordWithParentRecordData.html | 30
force-app/main/default/lwc/panelBarWrapper/panelBarWrapper.html | 18
force-app/main/default/lwc/lookup/lookup.js | 468
force-app/main/default/lwc/lexOCSMNoToReport/lexOCSMNoToReport.js | 82
force-app/main/default/lwc/lexLoseReport/lexLoseReport.js | 102
force-app/main/default/lwc/listWithParentRecordData/__mocks__/listWithParentRecordData.js | 3
force-app/main/default/lwc/createMixedRecordsWireFunctionsWrapper/createMixedRecordsWireFunctionsWrapper.js-meta.xml | 8
force-app/main/default/lwc/lexCancelSubmit/lexCancelSubmit.js-meta.xml | 11
force-app/main/default/lwc/lexContractdetailpdf/lexContractdetailpdf.js-meta.xml | 11
force-app/main/default/lwc/lexRCSubmit/lexRCSubmit.js | 160
force-app/main/default/lwc/lexSendNFM103/lexSendNFM103.js | 570
force-app/main/default/aura/WeeklyReport/WeeklyReportController.js | 63
force-app/main/default/lwc/lexASACEditorRepair/lexASACEditorRepair.html | 5
force-app/main/default/lwc/lexXinSearchVisitorPlace/lexXinSearchVisitorPlace.html | 17
force-app/main/default/lwc/viewRecord/viewRecord.js | 18
force-app/main/default/lwc/pageMessagesForm/pageMessagesForm.html | 33
force-app/main/default/aura/TestCaseClick/TestCaseClickController.js | 5
force-app/main/default/lwc/lexQISSC/lexQISSC.js | 96
force-app/main/default/lwc/paginatedList/paginatedList.html | 37
force-app/main/default/lwc/newOrderLWC/newOrderLWC.js-meta.xml | 15
force-app/main/default/lwc/lexPredictedDateChange/lexPredictedDateChange.css | 10
force-app/main/default/lwc/quoteTrial/quoteTrial.js | 211
force-app/main/default/lwc/listInfiniteScrollingWrapper/listInfiniteScrollingWrapper.js-meta.xml | 8
force-app/main/default/lwc/editRecord/editRecord.js-meta.xml | 5
force-app/main/default/lwc/lexCancelApply/lexCancelApply.html | 4
force-app/main/default/lwc/lexInventoryCount/lexInventoryCount.js-meta.xml | 9
force-app/main/default/lwc/lexNewTransferApply/lexNewTransferApply.js | 126
force-app/main/default/lwc/lexVOCCheck/lexVOCCheck.js | 108
force-app/main/default/pages/InventoryView.page | 1
force-app/main/default/classes/AccessorySelectController.cls | 1298
force-app/main/default/lwc/lexSubmitExtensionApprovalProcess/lexSubmitExtensionApprovalProcess.html | 5
force-app/main/default/lwc/interoperability/interoperability.css | 12
force-app/main/default/lwc/lexTenderingEnquiryButton/lexTenderingEnquiryButton.js-meta.xml | 11
force-app/main/default/lwc/lexVOCConfirm/lexVOCConfirm.css | 10
force-app/main/default/lwc/lexCancelReport/lexCancelReport.js | 116
force-app/main/default/lwc/viewRecordWithParentRecordData/viewRecordWithParentRecordData.js-meta.xml | 5
force-app/main/default/lwc/lexInputSolution/lexInputSolution.js-meta.xml | 11
force-app/main/default/lwc/lexSISearchSetProduct/lexSISearchSetProduct.js | 164
force-app/main/default/lwc/lexVOCConfirm/lexVOCConfirm.js-meta.xml | 11
force-app/main/default/lwc/errorPopover/errorPopover.js-meta.xml | 5
force-app/main/default/lwc/lexCustomDelete/lexCustomDelete.js-meta.xml | 11
force-app/main/default/lwc/lexSubmit/lexSubmit.html | 7
force-app/main/default/lwc/qisUniversalFailureCode/qisUniversalFailureCode.js-meta.xml | 11
force-app/main/default/lwc/editRecordWrapper/editRecordWrapper.js | 5
force-app/main/default/lwc/lexOCSMToReportLighting/lexOCSMToReportLighting.js | 89
force-app/main/default/lwc/panelGrid/panelGrid.js-meta.xml | 5
force-app/main/default/lwc/lexLoseReport/lexLoseReport.css | 10
force-app/main/default/lwc/lexInventoryCount/lexInventoryCount.html | 156
force-app/main/default/lwc/createRecordWithPrepopulatedValues/createRecordWithPrepopulatedValues.js-meta.xml | 5
force-app/main/default/lwc/lexQISSC/lexQISSC.css | 22
force-app/main/default/lwc/lexSISearchSetProduct/lexSISearchSetProduct.html | 110
force-app/main/default/lwc/lexASACEditor/lexASACEditor.css | 10
force-app/main/default/lwc/tabsWrapper/tabsWrapper.js-meta.xml | 8
force-app/main/default/lwc/lexSubmitCompetitorReport/lexSubmitCompetitorReport.js-meta.xml | 11
force-app/main/default/lwc/newRepairLWC/newRepairLWC.html | 106
force-app/main/default/lwc/opdNewSparePartsLoanApplication/opdNewSparePartsLoanApplication.css | 10
force-app/main/default/lwc/afterRenderHook/afterRenderHook.js | 13
force-app/main/default/lwc/editRecordWrapper/editRecordWrapper.html | 26
force-app/main/default/aura/WeeklyReport/WeeklyReportHelper.js | 103
force-app/main/default/lwc/lexCancelSelect/lexCancelSelect.css | 11
force-app/main/default/classes/InventoryViewController.cls | 769
force-app/main/default/lwc/lexQISAgree/lexQISAgree.html | 5
force-app/main/default/classes/LogAutoSendBatch.cls | 322
force-app/main/default/lwc/opdCancelSubmit/opdCancelSubmit.html | 5
force-app/main/default/lwc/lexLoanerArrangedEmail/lexLoanerArrangedEmail.js | 102
force-app/main/default/lwc/otherButtonInOpportunity/otherButtonInOpportunity.js | 218
force-app/main/default/lwc/lexReturnDeliverySlip/lexReturnDeliverySlip.js-meta.xml | 11
force-app/main/default/classes/NFMUtil.cls | 72
force-app/main/default/lwc/lexBeforeOPDPDFBtnSIS/lexBeforeOPDPDFBtnSIS.css | 10
force-app/main/default/lwc/lexSearchProduct/lexSearchProduct.js | 500
force-app/main/default/lwc/lexBatchSelectRepairLWC/lexBatchSelectRepairLWC.html | 107
force-app/main/default/lwc/lexClearReturnDeliverySlip/lexClearReturnDeliverySlip.js-meta.xml | 11
force-app/main/default/lwc/lexOCSMToReportRepair/lexOCSMToReportRepair.html | 6
force-app/main/default/lwc/recentProjectsLWC/recentProjectsLWC.html | 9
force-app/main/default/lwc/lexOCSMNoToReportLighting/lexOCSMNoToReportLighting.js | 105
force-app/main/default/lwc/loanerArrangedEmailLWC/loanerArrangedEmailLWC.js-meta.xml | 11
force-app/main/default/pages/summonsCreat.page | 2468 +
force-app/main/default/lwc/lexNewRepairLWC/lexNewRepairLWC.css | 9
force-app/main/default/lwc/lexSubmitForApproval/lexSubmitForApproval.js | 71
force-app/main/default/lwc/childComponentTest/childComponentTest.html | 8
force-app/main/default/lwc/lexTenderingAntiLogicButton/lexTenderingAntiLogicButton.js-meta.xml | 11
force-app/main/default/lwc/lexRCSubmit/lexRCSubmit.html | 5
force-app/main/default/lwc/lexBeforeOPDPDFBtn/lexBeforeOPDPDFBtn.js-meta.xml | 11
force-app/main/default/lwc/lexCustomNewCopy2/lexCustomNewCopy2.js-meta.xml | 11
force-app/main/default/lwc/lexLoseReport/lexLoseReport.js-meta.xml | 11
force-app/main/default/classes/LexArriveGoodsController.cls | 356
force-app/main/default/lwc/otherButtonInOpportunity/otherButtonInOpportunity.js-meta.xml | 1
force-app/main/default/lwc/lexTopInQueue/lexTopInQueue.html | 5
force-app/main/default/lwc/lexAssetMaintainPage/lexAssetMaintainPage.html | 3
force-app/main/default/lwc/lexCustomAnewMaintenance/lexCustomAnewMaintenance.js | 96
force-app/main/default/lwc/lexAddress/lexAddress.html | 6
force-app/main/default/lwc/lexCreateNotesEmail/lexCreateNotesEmail.js | 97
force-app/main/default/lwc/lexOLYwinBid/lexOLYwinBid.css | 10
force-app/main/default/lwc/opdCancelSubmit/opdCancelSubmit.css | 10
force-app/main/default/classes/DNUpsertBatchTest.cls | 189
force-app/main/default/lwc/listWithParentRecordData/listWithParentRecordData.html | 15
force-app/main/default/lwc/lexOPDtoSIS/lexOPDtoSIS.js-meta.xml | 11
force-app/main/default/lwc/lexASACEditorRepair/lexASACEditorRepair.js | 74
force-app/main/default/lwc/lexOLYwinBid/lexOLYwinBid.js | 97
force-app/main/default/lwc/lexRequestDB/lexRequestDB.js-meta.xml | 11
force-app/main/default/lwc/lexRentalApplySubmitedApprovalButton/lexRentalApplySubmitedApprovalButton.css | 11
force-app/main/default/lwc/lexEquipmentRentalPicturePDF/lexEquipmentRentalPicturePDF.js-meta.xml | 11
force-app/main/default/lwc/lexNewRepairLWC/lexNewRepairLWC.html | 114
force-app/main/default/lwc/splitApplyLWC/splitApplyLWC.html | 5
force-app/main/default/lwc/lexRCinspectioncompletedate/lexRCinspectioncompletedate.css | 22
force-app/main/default/lwc/inventoryViewLWC/inventoryViewLWC.js | 51
force-app/main/default/lwc/lexOCMSubmit/lexOCMSubmit.html | 5
force-app/main/default/lwc/lexSICopyDemand/lexSICopyDemand.html | 5
force-app/main/default/lwc/pocFileUpload/pocFileUpload.js | 3
force-app/main/default/lwc/newPaymentPlanLoadLWC/newPaymentPlanLoadLWC.js | 521
force-app/main/default/lwc/lexQuarterlyReport/lexQuarterlyReport.html | 5
force-app/main/default/lwc/viewRecord/viewRecord.html | 10
force-app/main/default/lwc/lexQuarterlyReport/lexQuarterlyReport.js | 69
force-app/main/default/lwc/lexSelectAssetsMaintenance/lexSelectAssetsMaintenance.js-meta.xml | 11
force-app/main/default/lwc/lexSelectSubstitute/lexSelectSubstitute.js | 94
force-app/main/default/lwc/pocLightningDatatable/pocLightningDatatable.js-meta.xml | 5
force-app/main/default/lwc/lexOSHInspect/lexOSHInspect.js | 100
force-app/main/default/lwc/lexFinLibrary/lexFinLibrary.html | 4
force-app/main/default/lwc/oshRecieved/oshRecieved.js | 83
force-app/main/default/lwc/pocCustomComp/pocCustomComp.html | 11
package-lock.json | 15430 ++++++++++++
force-app/main/default/lwc/pocFileUpload/pocFileUpload.js-meta.xml | 5
force-app/main/default/lwc/lexSelectSubstitute/lexSelectSubstitute.css | 11
force-app/main/default/classes/ConsumableController.cls | 2
force-app/main/default/lwc/lexXinSearchVisitorPlace/lexXinSearchVisitorPlace.js-meta.xml | 11
force-app/main/default/lwc/lexDeleteQuotePage/lexDeleteQuotePage.js | 27
force-app/main/default/lwc/qisUniversalFailureCode/qisUniversalFailureCode.js | 63
force-app/main/default/lwc/lexEquipmentSetRental_Order/lexEquipmentSetRental_Order.js-meta.xml | 11
force-app/main/default/lwc/lexCancel/lexCancel.css | 10
force-app/main/default/lwc/lexASRCEditorRepair/lexASRCEditorRepair.js | 75
force-app/main/default/lwc/lexCancel/lexCancel.html | 6
force-app/main/default/lwc/newPaymentPlanLoadLWC/newPaymentPlanLoadLWC.html | 228
force-app/main/default/lwc/demoWrapper/demoWrapper.js | 3
force-app/main/default/lwc/newRepairLWC/newRepairLWC.js-meta.xml | 11
force-app/main/default/lwc/lexInputSolution/lexInputSolution.html | 5
force-app/main/default/lwc/lexInsPageBtn/lexInsPageBtn.js-meta.xml | 11
force-app/main/default/lwc/lexBeforeOPDPDFBtn/lexBeforeOPDPDFBtn.html | 15
force-app/main/default/lwc/qisUniversalFailureCode/qisUniversalFailureCode.html | 5
force-app/main/default/lwc/opdReportSubmit/opdReportSubmit.html | 5
force-app/main/default/lwc/testPaginated/testPaginated.js | 3
force-app/main/default/lwc/lexLostReturnDeliverySlip/lexLostReturnDeliverySlip.css | 11
force-app/main/default/lwc/quoteTrial/quoteTrial.html | 10
force-app/main/default/lwc/lexTenderingHospitalButton/lexTenderingHospitalButton.js-meta.xml | 11
force-app/main/default/lwc/lexBeforeOPDPDFBtn/lexBeforeOPDPDFBtn.css | 10
force-app/main/default/lwc/lexDetailBulkUpdate/lexDetailBulkUpdate.css | 11
force-app/main/default/lwc/exampleWrapper/__mocks__/exampleWrapper.js | 15
force-app/main/default/lwc/panelGridWrapper/panelGridWrapper.html | 18
force-app/main/default/lwc/lexASRCEditorRepair/lexASRCEditorRepair.js-meta.xml | 11
force-app/main/default/lwc/lexUploadToRecognitionModel/lexUploadToRecognitionModel.js-meta.xml | 11
force-app/main/default/lwc/lexTenderingCopyButton/lexTenderingCopyButton.html | 5
force-app/main/default/lwc/lexUploadToRecognitionModel/lexUploadToRecognitionModel.html | 6
force-app/main/default/lwc/newOrderList/newOrderList.html | 19
force-app/main/default/lwc/lexEquipmentSetRental_Order/lexEquipmentSetRental_Order.js | 83
force-app/main/default/lwc/lexOCSMNogoods/lexOCSMNogoods.html | 5
force-app/main/default/lwc/lexCopyRepair/lexCopyRepair.js | 218
force-app/main/default/lwc/pocLightningDatatable/pocFileUpload.html | 5
force-app/main/default/lwc/lexESignAcceptanceHospital/lexESignAcceptanceHospital.js | 186
force-app/main/default/lwc/lexRequestDB/lexRequestDB.html | 6
force-app/main/default/lwc/listRecordLinks/listRecordLinks.js | 37
force-app/main/default/lwc/lexSINewQuoteEntry/lexSINewQuoteEntry.js | 869
force-app/main/default/lwc/lexTenderingRelevancyButton/lexTenderingRelevancyButton.js | 115
force-app/main/default/lwc/lexAssetMaintainDetail/lexAssetMaintainDetail.js-meta.xml | 11
force-app/main/default/lwc/pocLightningDatatable/customShippingUnitPrice.html | 6
force-app/main/default/lwc/paginatedListWrapper/paginatedListWrapper.js | 3
force-app/main/default/lwc/lexTenderingAttachmentButton/lexTenderingAttachmentButton.js-meta.xml | 11
force-app/main/default/lwc/lexRCCDScomplete/lexRCCDScomplete.js | 98
force-app/main/default/lwc/lexRequestDB/lexRequestDB.css | 10
force-app/main/default/lwc/newOrderButton/newOrderButton.html | 4
force-app/main/default/lwc/panelBar/panelBar.html | 13
force-app/main/default/lwc/lexRCCDScomplete/lexRCCDScomplete.js-meta.xml | 11
force-app/main/default/lwc/lexRCSubmit/lexRCSubmit.css | 22
force-app/main/default/lwc/lexTenderingEnquiryButton/lexTenderingEnquiryButton.js | 87
force-app/main/default/lwc/selectSubstituteLWC/selectSubstituteLWC.html | 5
force-app/main/default/lwc/opdReportSubmit/opdReportSubmit.css | 10
force-app/main/default/lwc/viewRecordWrapper/viewRecordWrapper.js-meta.xml | 8
force-app/main/default/lwc/lexXinSearchVisitorPlace/lexXinSearchVisitorPlace.css | 5
force-app/main/default/lwc/editableList/editableList.js-meta.xml | 5
force-app/main/default/lwc/lexAssetMaintainPage/lexAssetMaintainPage.js | 35
force-app/main/default/lwc/otherButtonInASACEditor/otherButtonInASACEditor.css | 10
force-app/main/default/lwc/lexClearReturnDeliverySlip/lexClearReturnDeliverySlip.js | 107
force-app/main/default/lwc/lexRentalApplyESetRefreshStatus/lexRentalApplyESetRefreshStatus.html | 5
force-app/main/default/lwc/lexCustomSubmit/lexCustomSubmit.js-meta.xml | 11
force-app/main/default/lwc/lexCopyPIInspectionReport/lexCopyPIInspectionReport.js-meta.xml | 11
force-app/main/default/lwc/lexAgencyAuthorize/lexAgencyAuthorize.js | 198
force-app/main/default/lwc/rentalApplyEquipmentRentalPDF/rentalApplyEquipmentRentalPDF.css | 10
force-app/main/default/lwc/lexCustomNewMCMaintenance/lexCustomNewMCMaintenance.html | 5
force-app/main/default/lwc/lexTenderingHospitalButton/lexTenderingHospitalButton.html | 5
force-app/main/default/lwc/selectSubstituteLWC/selectSubstituteLWC.js | 78
force-app/main/default/lwc/lexBidAnnouncementApplyForButton/lexBidAnnouncementApplyForButton.html | 5
force-app/main/default/lwc/gzwbtest/gzwbtest.js-meta.xml | 5
force-app/main/default/lwc/panelBarWrapper/panelBarWrapper.js-meta.xml | 8
force-app/main/default/lwc/lexYanshoudanRequest/lexYanshoudanRequest.html | 6
force-app/main/default/lwc/newOrderLWC/newOrderLWC.js | 39
force-app/main/default/lwc/createMixedRecordsApex/createMixedRecordsApex.html | 27
force-app/main/default/lwc/lexProductRepairQuoteRepair/lexProductRepairQuoteRepair.html | 5
force-app/main/default/lwc/lexCustomSubmit/lexCustomSubmit.html | 5
force-app/main/default/classes/OCMManagementProvinceWebService.cls | 1
force-app/main/default/lwc/createRecordWithPrepopulatedValuesWrapper/createRecordWithPrepopulatedValuesWrapper.js | 3
force-app/main/default/pages/Inventory.page | 1
force-app/main/default/lwc/otherButtonInOpportunity/otherButtonInOpportunity.html | 43
force-app/main/default/lwc/lexLoseBid/lexLoseBid.html | 6
force-app/main/default/lwc/lexCustomClone/lexCustomClone.js | 49
force-app/main/default/lwc/ldsUtils/ldsUtils.js-meta.xml | 5
force-app/main/default/lwc/lexNewTransferApply/lexNewTransferApply.css | 22
force-app/main/default/lwc/errorPopover/errorPopover.html | 43
force-app/main/default/lwc/lexEquipmentRentalPicturePDF/lexEquipmentRentalPicturePDF.html | 5
force-app/main/default/lwc/lexCustomAnewMaintenance/lexCustomAnewMaintenance.html | 6
force-app/main/default/classes/SyncProvinceWIndowToSignForm.cls-meta.xml | 5
force-app/main/default/lwc/lexCancelSelect/lexCancelSelect.js | 53
force-app/main/default/lwc/lookup/lookup.css | 30
force-app/main/default/lwc/lexRentalApplyESetRefreshStatus/lexRentalApplyESetRefreshStatus.js-meta.xml | 11
force-app/main/default/lwc/pageMessagesToastWrapper/pageMessagesToastWrapper.html | 18
force-app/main/default/lwc/lexAllReceivedFse/lexAllReceivedFse.html | 5
force-app/main/default/lwc/lWtTEST/lWtTEST.html | 3
force-app/main/default/lwc/lexVOCFinish/lexVOCFinish.js | 96
force-app/main/default/lwc/lexOCSMNoToReportForReport/lexOCSMNoToReportForReport.js | 100
force-app/main/default/lwc/viewVfLwcSource/viewVfLwcSource.js | 17
force-app/main/default/lwc/beforeRenderHookWrapper/beforeRenderHookWrapper.html | 18
force-app/main/default/lwc/panelGrid/panelGrid.js | 3
force-app/main/default/lwc/opdReportSubmit/opdReportSubmit.js | 159
force-app/main/default/classes/PaginatedListControllerLwc.cls | 42
force-app/main/default/lwc/jzlookup/jzlookup.js | 4
force-app/main/default/lwc/lexOLYwinBid/lexOLYwinBid.html | 6
force-app/main/default/lwc/lexBidAnnouncementConsentButton/lexBidAnnouncementConsentButton.js | 83
force-app/main/default/lwc/otherButtonInASACEditor/otherButtonInASACEditor.js | 74
force-app/main/default/lwc/lexQISSC/lexQISSC.html | 5
force-app/main/default/classes/SampleLookupController.cls-meta.xml | 5
force-app/main/default/lwc/recentProjectsLWC/recentProjectsLWC.js | 31
force-app/main/default/lwc/editableList/editableList.html | 15
force-app/main/default/lwc/lexCancelSubmitReport/lexCancelSubmitReport.js | 68
force-app/main/default/lwc/lexSplitApply/lexSplitApply.css | 11
force-app/main/default/lwc/lexTenderingHospitalButton/lexTenderingHospitalButton.js | 69
force-app/main/default/lwc/lexMainFixtureSelect/lexMainFixtureSelect.css | 22
force-app/main/default/lwc/createMixedRecordsApex/createMixedRecordsApex.js | 48
force-app/main/default/lwc/lexCreateRepair/lexCreateRepair.js-meta.xml | 11
force-app/main/default/lwc/lexContractdetailpdf/lexContractdetailpdf.js | 50
force-app/main/default/lwc/lexOCSMNoToReportRepair/lexOCSMNoToReportRepair.js-meta.xml | 11
force-app/main/default/lwc/lexSearchProductCs/lexSearchProductCs.js | 279
force-app/main/default/lwc/lexQISAgree/lexQISAgree.js | 86
force-app/main/default/lwc/lexTenderingRelevancyButton/lexTenderingRelevancyButton.html | 5
force-app/main/default/lwc/lexFinLibrary2/lexFinLibrary2.css | 11
force-app/main/default/lwc/listRecordLinks/__mocks__/listRecordLinks.js | 3
force-app/main/default/lwc/lexVOCCheck/lexVOCCheck.html | 6
force-app/main/default/lwc/lexSelectRental/lexSelectRental.js | 136
force-app/main/default/lwc/lexSendRepairsToEtQ/lexSendRepairsToEtQ.js-meta.xml | 11
force-app/main/default/lwc/lexAssetMaintainDetail/lexAssetMaintainDetail.css | 11
force-app/main/default/lwc/lexMainFixtureSelect/lexMainFixtureSelect.html | 5
force-app/main/default/lwc/lexQuotationProductNew/lexQuotationProductNew.html | 6
force-app/main/default/lwc/lexMailMessege/lexMailMessege.html | 5
force-app/main/default/lwc/lexSubmitCompetitorReport/lexSubmitCompetitorReport.html | 6
force-app/main/default/lwc/createMixedRecordsWireFunctionsWrapper/createMixedRecordsWireFunctionsWrapper.html | 23
force-app/main/default/lwc/lexDetailBulkUpdate/lexDetailBulkUpdate.js-meta.xml | 11
force-app/main/default/lwc/lexStockApply/lexStockApply.js-meta.xml | 11
force-app/main/default/lwc/lexASRCEditor/lexASRCEditor.css | 10
force-app/main/default/lwc/lexAddress/lexAddress.js-meta.xml | 11
force-app/main/default/lwc/lexEquipmentRentalPicturePDF/lexEquipmentRentalPicturePDF.css | 22
force-app/main/default/lwc/binding/binding.html | 8
force-app/main/default/lwc/pocCustomComp/pocCustomComp.js-meta.xml | 5
force-app/main/default/lwc/lexAssetMaintainPage/lexAssetMaintainPage.js-meta.xml | 11
force-app/main/default/lwc/cancelApplyLWC/cancelApplyLWC.js-meta.xml | 11
force-app/main/default/lwc/binding/binding.js-meta.xml | 5
force-app/main/default/lwc/lexTransferApplyPDF/lexTransferApplyPDF.css | 11
force-app/main/default/lwc/lexTenderingAntiLogicButton/lexTenderingAntiLogicButton.html | 5
force-app/main/default/lwc/rentalApplyLWT/rentalApplyLWT.js | 854
force-app/main/default/lwc/pageMessagesFormWrapper/pageMessagesFormWrapper.html | 20
force-app/main/default/lwc/lexInputSolution/lexInputSolution.js | 49
force-app/main/default/lwc/lexUploadToSap/lexUploadToSap.js | 155
force-app/main/default/lwc/gzwbtest/gzwbtest.html | 5
force-app/main/default/lwc/createCaseTest/createCaseTest.js-meta.xml | 5
force-app/main/default/lwc/batchSelectRepairLWC/batchSelectRepairLWC.html | 107
force-app/main/default/lwc/lexSISubmit/lexSISubmit.html | 5
force-app/main/default/lwc/listInfiniteScrolling/listInfiniteScrolling.html | 17
force-app/main/default/lwc/lexQISIntakeuniversalcode/lexQISIntakeuniversalcode.js-meta.xml | 11
force-app/main/default/pages/AccChangeApprovalResponse.page | 113
force-app/main/default/lwc/lexOCSMToReport/lexOCSMToReport.html | 6
force-app/main/default/lwc/lexEquipmentSetRental_Order/lexEquipmentSetRental_Order.html | 5
force-app/main/default/aura/TestCaseClick/TestCaseClick.design | 3
force-app/main/default/lwc/viewRecordWrapper/viewRecordWrapper.js | 5
force-app/main/default/lwc/pageMessagesToastWrapper/pageMessagesToastWrapper.js | 3
force-app/main/default/lwc/panelBarWrapper/panelBarWrapper.js | 3
force-app/main/default/lwc/viewVfLwcSource/viewVfLwcSource.html | 21
force-app/main/default/lwc/lexPDFMaintenanceCommission/lexPDFMaintenanceCommission.html | 5
force-app/main/default/lwc/lexVOCAnswer/lexVOCAnswer.js-meta.xml | 11
force-app/main/default/lwc/lexBidAnnouncementRejectButton/lexBidAnnouncementRejectButton.js-meta.xml | 11
force-app/main/default/lwc/lexTenderingLostButton/lexTenderingLostButton.js-meta.xml | 11
force-app/main/default/lwc/lexCancelSubmit/lexCancelSubmit.js | 92
force-app/main/default/lwc/lexProductRepairQuoteRepair/lexProductRepairQuoteRepair.js-meta.xml | 11
force-app/main/default/lwc/lexSelectSubstitute/lexSelectSubstitute.html | 5
force-app/main/default/lwc/lexAllReceivedFse/lexAllReceivedFse.js | 65
force-app/main/default/lwc/lexQuotationProductNew/lexQuotationProductNew.js | 67
force-app/main/default/lwc/inventoryEditingLWC/inventoryEditingLWC.html | 67
force-app/main/default/lwc/lexBatchSelectRepairLWC/lexBatchSelectRepairLWC.css | 9
force-app/main/default/lwc/lexPaymentPlanLoad/lexPaymentPlanLoad.js | 404
force-app/main/default/lwc/pageMessagesFormWrapper/pageMessagesFormWrapper.js-meta.xml | 8
force-app/main/default/lwc/paginatedListWrapper/paginatedListWrapper.js-meta.xml | 8
force-app/main/default/lwc/parentComponentTest/parentComponentTest.js-meta.xml | 9
force-app/main/default/classes/OCSMHandler.cls | 14
manifest/packageForLex copy.xml | 8
force-app/main/default/lwc/lexCustomClone/lexCustomClone.html | 5
force-app/main/default/lwc/lexVOCSubmit/lexVOCSubmit.html | 6
force-app/main/default/lwc/lexSubmitExtensionApprovalProcess/lexSubmitExtensionApprovalProcess.css | 10
force-app/main/default/lwc/testPaginated/testPaginated.js-meta.xml | 8
force-app/main/default/lwc/lexVOCCheck/lexVOCCheck.js-meta.xml | 11
force-app/main/default/lwc/lookup/lookup.html | 139
force-app/main/default/lwc/lexDispatchOCSMQARA/lexDispatchOCSMQARA.html | 6
force-app/main/default/lwc/lexCancelReport/lexCancelReport.css | 10
force-app/main/default/lwc/lexOCSMNoToReport/lexOCSMNoToReport.css | 10
force-app/main/default/lwc/lexVOCSubmit/lexVOCSubmit.js | 91
force-app/main/default/lwc/listWithParentRecordData/listWithParentRecordData.js-meta.xml | 5
force-app/main/default/lwc/createRecordWithPrepopulatedValuesWrapper/createRecordWithPrepopulatedValuesWrapper.html | 19
force-app/main/default/lwc/lexTerminalMaintenance/lexTerminalMaintenance.js | 88
force-app/main/default/lwc/afterRenderHookWrapper/afterRenderHookWrapper.js-meta.xml | 8
force-app/main/default/lwc/pageMessagesToastWrapper/pageMessagesToastWrapper.js-meta.xml | 8
force-app/main/default/lwc/lexCancel/lexCancel.js-meta.xml | 11
force-app/main/default/lwc/pageMessagesToast/pageMessagesToast.html | 8
force-app/main/default/lwc/viewRecordWithParentRecordDataWrapper/viewRecordWithParentRecordDataWrapper.html | 22
force-app/main/default/lwc/rentalApplyEquipmentRentalPDF/rentalApplyEquipmentRentalPDF.html | 5
force-app/main/default/lwc/lexCustomDelete/lexCustomDelete.html | 5
force-app/main/default/lwc/lexOCSMNogoods/lexOCSMNogoods.css | 22
force-app/main/default/lwc/lexSINewQuoteEntry/lexSINewQuoteEntry.css | 5
force-app/main/default/lwc/lexFinLibrary3/lexFinLibrary3.js-meta.xml | 11
force-app/main/default/lwc/toolbarWrapper/toolbarWrapper.js-meta.xml | 8
.sf/config.json | 4
force-app/main/default/lwc/lexBidAnnouncementApplyForButton/lexBidAnnouncementApplyForButton.js-meta.xml | 11
force-app/main/default/lwc/editableList/__mocks__/editableList.js | 3
force-app/main/default/lwc/lexSubmitApprovalProcess/lexSubmitApprovalProcess.js | 101
force-app/main/default/lwc/childComponentTest/childComponentTest.js | 18
force-app/main/default/lwc/lexOCSMToReportLighting/lexOCSMToReportLighting.js-meta.xml | 11
force-app/main/default/lwc/lexOCSMNoToReportLighting/lexOCSMNoToReportLighting.js-meta.xml | 11
force-app/main/default/lwc/otherButtonInASACEditor/otherButtonInASACEditor.html | 5
force-app/main/default/classes/TestClassByLiJun.cls-meta.xml | 5
force-app/main/default/lwc/opdSupplementaryApplication/opdSupplementaryApplication.html | 5
force-app/main/default/lwc/lexNewRepairLWC/lexNewRepairLWC.js | 153
force-app/main/default/lwc/lexBidAnnouncementApplyForButton/lexBidAnnouncementApplyForButton.js | 74
force-app/main/default/lwc/lexLoanerArrangedEmail/lexLoanerArrangedEmail.css | 10
force-app/main/default/lwc/lexDetailBulkUpdate/lexDetailBulkUpdate.html | 5
force-app/main/default/lwc/lexCustomSubmit/lexCustomSubmit.js | 158
force-app/main/default/lwc/viewRecordWithParentRecordDataWrapper/viewRecordWithParentRecordDataWrapper.js-meta.xml | 8
force-app/main/default/lwc/pocLightningDatatable/customShipmentAmount.html | 7
force-app/main/default/lwc/lexCustomNewMaintenance/lexCustomNewMaintenance.html | 6
force-app/main/default/lwc/lexSubmitForApproval/lexSubmitForApproval.html | 5
force-app/main/default/lwc/lexSICopyDemand/lexSICopyDemand.js-meta.xml | 11
force-app/main/default/lwc/splitApplyLWC/splitApplyLWC.js | 56
force-app/main/default/lwc/bindingWrapper/bindingWrapper.js-meta.xml | 8
force-app/main/default/lwc/lexOCSMNoToReportLighting/lexOCSMNoToReportLighting.css | 22
force-app/main/default/lwc/lexTenderingLostButton/lexTenderingLostButton.js | 108
force-app/main/default/lwc/listInfiniteScrolling/listInfiniteScrolling.js-meta.xml | 5
force-app/main/default/lwc/pageBlocksWrapper/pageBlocksWrapper.html | 19
force-app/main/default/lwc/lexRentalApplyCanleButton/lexRentalApplyCanleButton.js-meta.xml | 11
force-app/main/default/lwc/lexRentalApplyDiscountApproval/lexRentalApplyDiscountApproval.js | 108
force-app/main/default/lwc/lexFinLibrary/lexFinLibrary.js | 57
force-app/main/default/lwc/lexCancelApply/lexCancelApply.js | 100
force-app/main/default/lwc/test/test.html | 3
force-app/main/default/lwc/lexSendQIS/lexSendQIS.html | 5
force-app/main/default/lwc/pocLightningDatatable/customShipmentNumber.html | 6
force-app/main/default/lwc/lexTenderingNotarizeButton/lexTenderingNotarizeButton.html | 5
force-app/main/default/lwc/lexSplitApply/lexSplitApply.js | 56
force-app/main/default/lwc/exampleWrapper/exampleWrapper.css | 3
force-app/main/default/lwc/editRecord/editRecord.html | 12
force-app/main/default/lwc/splitApplyLWC/splitApplyLWC.css | 11
force-app/main/default/lwc/viewRecordWrapper/viewRecordWrapper.html | 20
force-app/main/default/lwc/otherButtonInCancelSubmit/OtherButtonInCancelSubmit.css | 10
force-app/main/default/lwc/interoperability/interoperability.js | 21
force-app/main/default/lwc/lexTopInQueue/lexTopInQueue.js-meta.xml | 11
force-app/main/default/lwc/viewRecordWithParentRecordDataWrapper/viewRecordWithParentRecordDataWrapper.js | 5
force-app/main/default/lwc/lexTenderingNoStandardButton/lexTenderingNoStandardButton.js-meta.xml | 11
force-app/main/default/lwc/pageMessagesForm/pageMessagesForm.js | 35
force-app/main/default/lwc/lexcopyQIS/lexcopyQIS.css | 22
force-app/main/default/lwc/lexCreateRepair/lexCreateRepair.js | 231
force-app/main/default/aura/TestCaseClick/TestCaseClick.svg | 7
force-app/main/default/lwc/lexQuotationProductNew/lexQuotationProductNew.js-meta.xml | 11
force-app/main/default/lwc/lexOCSMToReport/lexOCSMToReport.css | 10
force-app/main/default/lwc/testPaginated/__tests__/testPaginated.test.js | 25
force-app/main/default/lwc/pocCustomComp/pocCustomComp.js | 25
force-app/main/default/lwc/errorPopover/errorPopover.js | 15
force-app/main/default/lwc/otherButtonInOpportunity/otherButtonInOpportunity.css | 11
force-app/main/default/lwc/opdReportSubmit/opdReportSubmit.js-meta.xml | 11
force-app/main/default/lwc/lexQuotationRequest/lexQuotationRequest.html | 14
force-app/main/default/lwc/lexTenderingIntentionButton/lexTenderingIntentionButton.js-meta.xml | 11
force-app/main/default/lwc/lexTenderingAttachmentButton/lexTenderingAttachmentButton.js | 54
force-app/main/default/lwc/errorPanel/templates/noDataIllustration.html | 257
force-app/main/default/lwc/pageBlocks/pageBlocks.js | 5
force-app/main/default/lwc/lexASRCEditor/lexASRCEditor.html | 5
force-app/main/default/lwc/lexOCMSubmit/lexOCMSubmit.js-meta.xml | 11
force-app/main/default/lwc/createMixedRecordsWireFunctions/createMixedRecordsWireFunctions.js | 91
force-app/main/default/lwc/lexAssetMaintainDetail/lexAssetMaintainDetail.html | 5
force-app/main/default/lwc/lexComplete/lexComplete.js-meta.xml | 11
force-app/main/default/lwc/lexSubmitCompetitorReport/lexSubmitCompetitorReport.js | 74
force-app/main/default/lwc/toolbarWrapper/toolbarWrapper.js | 3
force-app/main/default/lwc/lexInventoryCount/lexInventoryCount.js | 555
force-app/main/default/lwc/oshRecieved/oshRecieved.css | 10
force-app/main/default/lwc/lexSendRepairsToEtQ/lexSendRepairsToEtQ.html | 6
force-app/main/default/lwc/lexFinLibrary/lexFinLibrary.js-meta.xml | 11
force-app/main/default/lwc/lexPredictedDateChange/lexPredictedDateChange.js | 82
force-app/main/default/lwc/lexOPDtoSIS/lexOPDtoSIS.css | 10
force-app/main/default/lwc/lexProductRepairQuoteRepair/lexProductRepairQuoteRepair.js | 67
force-app/main/default/lwc/lexCancelReport/lexCancelReport.html | 6
force-app/main/default/lwc/ldsUtils/__mocks__/ldsUtils.js | 3
force-app/main/default/lwc/lexSISearchSetProduct/lexSISearchSetProduct.css | 6
force-app/main/default/classes/CPL003Rest.cls | 95
force-app/main/default/lwc/lexBeforeOPDPDFBtnSIS/lexBeforeOPDPDFBtnSIS.js-meta.xml | 11
force-app/main/default/lwc/lexVOCConfirm/lexVOCConfirm.html | 6
force-app/main/default/lwc/lexSubmitApprovalProcess/lexSubmitApprovalProcess.css | 11
force-app/main/default/lwc/lexOCMSubmit/lexOCMSubmit.js | 133
force-app/main/default/lwc/tabs/tabs.js-meta.xml | 5
.vscode/settings.json | 3
force-app/main/default/classes/SyncProvinceWIndowToSignFormTest.cls | 100
force-app/main/default/lwc/newPaymentPlanLoadLWC/newPaymentPlanLoadLWC.js-meta.xml | 12
force-app/main/default/lwc/viewVfLwcSource/viewVfLwcSource.js-meta.xml | 5
force-app/main/default/lwc/lexTenderingEnquiryButton/lexTenderingEnquiryButton.html | 5
force-app/main/default/classes/AccAssumeChangeBatch.cls | 30
force-app/main/default/lwc/lexPDFMaintenanceCommission/lexPDFMaintenanceCommission.js-meta.xml | 11
force-app/main/default/lwc/lexTopInQueue/lexTopInQueue.js | 49
force-app/main/default/lwc/lexVOCFinish/lexVOCFinish.html | 6
force-app/main/default/lwc/createMixedRecordsWireFunctions/createMixedRecordsWireFunctions.html | 27
force-app/main/default/lwc/lexOCSMNoToReport/lexOCSMNoToReport.html | 5
force-app/main/default/lwc/lexAddSubmitApprovalProcess/lexAddSubmitApprovalProcess.js | 68
force-app/main/default/lwc/lexESignAcceptanceHospital/lexESignAcceptanceHospital.html | 4
force-app/main/default/lwc/lexSubmitCompetitorReport/lexSubmitCompetitorReport.css | 10
force-app/main/default/lwc/lexServiceCutPriceApply/lexServiceCutPriceApply.js | 113
force-app/main/default/lwc/lexLoseBid/lexLoseBid.js | 89
force-app/main/default/lwc/lexOPDtoSIS/lexOPDtoSIS.js | 95
force-app/main/default/lwc/binding/binding.css | 3
force-app/main/default/lwc/afterRenderHook/afterRenderHook.html | 5
force-app/main/default/lwc/lexLoseReport/lexLoseReport.html | 6
force-app/main/default/lwc/lexFinLibrary3/lexFinLibrary3.css | 11
force-app/main/default/lwc/lexPredictedDateChange/lexPredictedDateChange.html | 6
force-app/main/default/lwc/lexAddSubmitApprovalProcess/lexAddSubmitApprovalProcess.css | 22
force-app/main/default/lwc/createRecordWithPrepopulatedValues/createRecordWithPrepopulatedValues.html | 22
force-app/main/default/classes/TestClassByLiJun.cls | 5
force-app/main/default/lwc/afterRenderHookWrapper/afterRenderHookWrapper.js | 3
force-app/main/default/lwc/lexCreateRepair/lexCreateRepair.html | 5
force-app/main/default/lwc/lexSelectRental/lexSelectRental.css | 11
force-app/main/default/lwc/paginatedList/paginatedList.js-meta.xml | 9
force-app/main/default/lwc/selectSubstituteLWC/selectSubstituteLWC.js-meta.xml | 11
force-app/main/default/lwc/demoLWC/demoLWC.html | 42
force-app/main/default/lwc/lexComplete/lexComplete.html | 6
force-app/main/default/lwc/lexTenderingIntentionButton/lexTenderingIntentionButton.js | 75
force-app/main/default/lwc/pocLightningDatatable/pocLightningDatatable.html | 3
force-app/main/default/lwc/lexServiceCutPriceApply/lexServiceCutPriceApply.html | 6
force-app/main/default/lwc/customDelete/customDelete.js | 144
force-app/main/default/lwc/tabs/tabs.html | 15
force-app/main/default/lwc/beforeRenderHook/beforeRenderHook.html | 5
force-app/main/default/lwc/lexOCMSubmit/lexOCMSubmit.css | 22
force-app/main/default/lwc/lexOSHSubmit/lexOSHSubmit.css | 10
force-app/main/default/lwc/lexSINewQuoteEntry/lexSINewQuoteEntry.js-meta.xml | 11
force-app/main/default/lwc/lexCustomSubmit/lexCustomSubmit.css | 11
force-app/main/default/lwc/lexDeleteQuotePage/lexDeleteQuotePage.html | 20
force-app/main/default/lwc/opdUpdateDate/opdUpdateDate.html | 5
force-app/main/default/lwc/lexSendRepairsToEtQ/lexSendRepairsToEtQ.js | 192
force-app/main/default/lwc/listInfiniteScrollingWrapper/listInfiniteScrollingWrapper.js | 3
force-app/main/default/lwc/opdNewSparePartsLoanApplication/opdNewSparePartsLoanApplication.js | 346
force-app/main/default/lwc/lexMailMessege/lexMailMessege.js | 89
force-app/main/default/classes/SyncProvinceWIndowToSignForm.cls | 51
force-app/main/default/lwc/lexClearReturnDeliverySlip/lexClearReturnDeliverySlip.css | 11
force-app/main/default/classes/SyncProvinceWIndowToSignFormTest.cls-meta.xml | 5
force-app/main/default/lwc/lexTenderingNotarizeButton/lexTenderingNotarizeButton.js | 133
force-app/main/default/lwc/lWtTEST/lWtTEST.js-meta.xml | 5
force-app/main/default/lwc/lexBatchSelectRepairLWC/lexBatchSelectRepairLWC.js-meta.xml | 11
force-app/main/default/lwc/pocFileUpload/pocFileUpload.html | 5
force-app/main/default/lwc/otherButtonInCancelSubmit/otherButtonInCancelSubmit.js | 82
force-app/main/default/lwc/pocLightningDatatable/pocLightningDatatable.js | 28
force-app/main/default/lwc/afterRenderHookWrapper/afterRenderHookWrapper.html | 17
force-app/main/default/lwc/lexCreateEvent/lexCreateEvent.js | 59
force-app/main/default/lwc/lexOSHSubmit/lexOSHSubmit.js-meta.xml | 11
force-app/main/default/lwc/opdUpdateDate/opdUpdateDate.css | 10
force-app/main/default/lwc/lexLoseBid/lexLoseBid.js-meta.xml | 11
force-app/main/default/lwc/createMixedRecordsApexWrapper/createMixedRecordsApexWrapper.js | 3
force-app/main/default/lwc/batchSelectRepairLWC/batchSelectRepairLWC.js | 576
force-app/main/default/lwc/lexBeforeOPDPDFBtn/lexBeforeOPDPDFBtn.js | 108
force-app/main/default/lwc/testPaginated/testPaginated.html | 3
force-app/main/default/lwc/lexRentalApplyESetRefreshStatus/lexRentalApplyESetRefreshStatus.js | 91
force-app/main/default/lwc/pageBlocksWrapper/pageBlocksWrapper.js-meta.xml | 8
force-app/main/default/lwc/editRecord/editRecord.js | 44
force-app/main/default/lwc/lexCancelSubmit/lexCancelSubmit.css | 10
force-app/main/default/lwc/lexDispatchOCSMQARA/lexDispatchOCSMQARA.js-meta.xml | 11
force-app/main/default/lwc/lexMailMessege/lexMailMessege.js-meta.xml | 11
force-app/main/default/lwc/listRecordLinks/listRecordLinks.html | 15
force-app/main/default/lwc/oppLoseButton/oppLoseButton.html | 8
force-app/main/default/lwc/viewRecord/viewRecord.js-meta.xml | 5
force-app/main/default/classes/ArriveGoodsController.cls | 9395 ++----
force-app/main/default/lwc/listWithParentRecordDataWrapper/listWithParentRecordDataWrapper.js | 3
force-app/main/default/lwc/lexAssetMaintainDetail/lexAssetMaintainDetail.js | 38
force-app/main/default/lwc/lexStockApply/lexStockApply.css | 10
force-app/main/default/lwc/bindingWrapper/bindingWrapper.html | 22
force-app/main/default/lwc/lexRCRecieved/lexRCRecieved.js | 103
force-app/main/default/lwc/panelBar/panelBar.js-meta.xml | 5
force-app/main/default/lwc/lexCancelSubmitReport/lexCancelSubmitReport.js-meta.xml | 11
force-app/main/default/lwc/lexAllReceivedFse/lexAllReceivedFse.js-meta.xml | 11
force-app/main/default/lwc/lexCreateRepair/lexCreateRepair.css | 10
force-app/main/default/lwc/lexLostReturnDeliverySlip/lexLostReturnDeliverySlip.js-meta.xml | 11
force-app/main/default/lwc/pageMessagesDataRetrieval/pageMessagesDataRetrieval.js | 7
force-app/main/default/lwc/newOrderList/newOrderList.js-meta.xml | 15
force-app/main/default/lwc/lexAppSubmitButton/lexAppSubmitButton.js-meta.xml | 11
force-app/main/default/lwc/lexVOCAnswer/lexVOCAnswer.css | 10
force-app/main/default/lwc/lexPredictedDateChange/lexPredictedDateChange.js-meta.xml | 11
force-app/main/default/lwc/demoWrapper/demoWrapper.js-meta.xml | 8
force-app/main/default/lwc/tEnquiry/tEnquiry.html | 2
force-app/main/default/lwc/lexSIStoOPD/lexSIStoOPD.html | 6
force-app/main/default/lwc/lexCancel/lexCancel.js | 104
force-app/main/default/lwc/lexPDFQISrequest/lexPDFQISrequest.js-meta.xml | 11
force-app/main/default/lwc/pageMessagesToast/pageMessagesToast.js | 21
force-app/main/default/lwc/apexUtils/apexUtils.js | 31
force-app/main/default/lwc/newPaymentPlanLoadLWC/newPaymentPlanLoadLWC.css | 14
force-app/main/default/lwc/quoteTrial/quoteTrialUtil.js | 25
force-app/main/default/lwc/lexCopyPIInspectionReport/lexCopyPIInspectionReport.js | 57
force-app/main/default/lwc/lexSIStoOPD/lexSIStoOPD.js-meta.xml | 11
force-app/main/default/lwc/bindingWrapper/bindingWrapper.js | 3
force-app/main/default/lwc/panelBar/panelBar.js | 3
force-app/main/default/lwc/lexTerminalMaintenance/lexTerminalMaintenance.js-meta.xml | 11
force-app/main/default/classes/ConInvoiceViewController.cls | 1562
force-app/main/default/lwc/toolbarWrapper/toolbarWrapper.html | 18
force-app/main/default/lwc/lexTenderingLogicButton/lexTenderingLogicButton.js | 49
force-app/main/default/lwc/lexDispatchOCSMQARA/lexDispatchOCSMQARA.js | 71
force-app/main/default/lwc/lexSearchProduct/lexSearchProduct.css | 6
force-app/main/default/lwc/lexSISubmit/lexSISubmit.js-meta.xml | 11
force-app/main/default/lwc/lexTenderingAttachmentButton/lexTenderingAttachmentButton.html | 5
force-app/main/default/lwc/newRepairLWC/newRepairLWC.css | 9
force-app/main/default/lwc/lexSISearchSetProduct/lexSISearchSetProduct.js-meta.xml | 11
/dev/null | 9
force-app/main/default/lwc/lexVOCSubmit/lexVOCSubmit.css | 10
force-app/main/default/lwc/lexPDFQISrequest/lexPDFQISrequest.html | 5
force-app/main/default/lwc/beforeRenderHook/beforeRenderHook.js | 9
force-app/main/default/lwc/lexVOCFinish/lexVOCFinish.css | 10
906 files changed, 59,031 insertions(+), 12,213 deletions(-)
diff --git a/.prettierrc b/.prettierrc
index 15683b6..449f1b9 100644
--- a/.prettierrc
+++ b/.prettierrc
@@ -1,13 +1,26 @@
{
- "trailingComma": "none",
- "overrides": [
- {
- "files": "**/lwc/**/*.html",
- "options": { "parser": "lwc" }
- },
- {
- "files": "*.{cmp,page,component}",
- "options": { "parser": "html" }
- }
- ]
-}
+ "trailingComma": "none",
+ "singleQuote": true,
+ "tabWidth": 4,
+ "overrides": [
+ {
+ "files": "**/lwc/**/*.html",
+ "options": {
+ "parser": "lwc"
+ }
+ },
+ {
+ "files": "**/*.{cls,trigger,apex}",
+ "options": {
+ "apexInsertFinalNewline": true,
+ "printWidth": 140
+ }
+ },
+ {
+ "files": "*.{cmp,page,component}",
+ "options": {
+ "parser": "html"
+ }
+ }
+ ]
+}
\ No newline at end of file
diff --git a/.sf/config.json b/.sf/config.json
index 4c476fc..2728d05 100644
--- a/.sf/config.json
+++ b/.sf/config.json
@@ -1,3 +1,3 @@
{
- "target-org": "OlympusProd"
-}
+ "target-org": "OlympusStage"
+}
\ No newline at end of file
diff --git a/.vscode/settings.json b/.vscode/settings.json
index 7f69778..35948a3 100644
--- a/.vscode/settings.json
+++ b/.vscode/settings.json
@@ -5,5 +5,6 @@
"**/.sfdx": true
},
"salesforcedx-vscode-core.show-cli-success-msg": false,
- "open-in-browser.default": "{\"opn-in-browser.default\":\"Microsoft Edge\"}"
+ "open-in-browser.default": "{\"opn-in-browser.default\":\"Microsoft Edge\"}",
+ "salesforcedx-vscode-apex.java.home": "C:\\Users\\buli\\Documents\\Software\\JDK\\jdk19\\bin"
}
diff --git a/force-app/main/default/aura/TestCaseClick/TestCaseClick.auradoc b/force-app/main/default/aura/TestCaseClick/TestCaseClick.auradoc
new file mode 100644
index 0000000..d0d6eb5
--- /dev/null
+++ b/force-app/main/default/aura/TestCaseClick/TestCaseClick.auradoc
@@ -0,0 +1,6 @@
+<aura:documentation>
+ <aura:description>Documentation</aura:description>
+ <aura:example name="ExampleName" ref="exampleComponentName" label="Label">
+ Example Description
+ </aura:example>
+</aura:documentation>
\ No newline at end of file
diff --git a/force-app/main/default/aura/TestCaseClick/TestCaseClick.cmp b/force-app/main/default/aura/TestCaseClick/TestCaseClick.cmp
new file mode 100644
index 0000000..3bdbd0c
--- /dev/null
+++ b/force-app/main/default/aura/TestCaseClick/TestCaseClick.cmp
@@ -0,0 +1,3 @@
+<aura:component implements = "force:lightningQuickAction, force:hasRecordId" >
+ <c:createCaseTest recordId="{!v.recordId}" onclose="{!c.closeQA}"/>
+</aura:component>
\ No newline at end of file
diff --git a/force-app/main/default/aura/TestCaseClick/TestCaseClick.cmp-meta.xml b/force-app/main/default/aura/TestCaseClick/TestCaseClick.cmp-meta.xml
new file mode 100644
index 0000000..30fe9d1
--- /dev/null
+++ b/force-app/main/default/aura/TestCaseClick/TestCaseClick.cmp-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<AuraDefinitionBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>56.0</apiVersion>
+ <description>A Lightning Component Bundle</description>
+</AuraDefinitionBundle>
\ No newline at end of file
diff --git a/force-app/main/default/aura/TestCaseClick/TestCaseClick.css b/force-app/main/default/aura/TestCaseClick/TestCaseClick.css
new file mode 100644
index 0000000..f407185
--- /dev/null
+++ b/force-app/main/default/aura/TestCaseClick/TestCaseClick.css
@@ -0,0 +1,2 @@
+.THIS {
+}
diff --git a/force-app/main/default/aura/TestCaseClick/TestCaseClick.design b/force-app/main/default/aura/TestCaseClick/TestCaseClick.design
new file mode 100644
index 0000000..d247163
--- /dev/null
+++ b/force-app/main/default/aura/TestCaseClick/TestCaseClick.design
@@ -0,0 +1,3 @@
+<design:component >
+
+</design:component>
\ No newline at end of file
diff --git a/force-app/main/default/aura/TestCaseClick/TestCaseClick.svg b/force-app/main/default/aura/TestCaseClick/TestCaseClick.svg
new file mode 100644
index 0000000..e201ae9
--- /dev/null
+++ b/force-app/main/default/aura/TestCaseClick/TestCaseClick.svg
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
+<svg width="120px" height="120px" viewBox="0 0 120 120" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <g stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
+ <path d="M120,108 C120,114.6 114.6,120 108,120 L12,120 C5.4,120 0,114.6 0,108 L0,12 C0,5.4 5.4,0 12,0 L108,0 C114.6,0 120,5.4 120,12 L120,108 L120,108 Z" id="Shape" fill="#2A739E" />
+ <path d="M77.7383308,20 L61.1640113,20 L44.7300055,63.2000173 L56.0543288,63.2000173 L40,99.623291 L72.7458388,54.5871812 L60.907727,54.5871812 L77.7383308,20 Z" id="Path-1" fill="#FFFFFF" />
+ </g>
+</svg>
\ No newline at end of file
diff --git a/force-app/main/default/aura/TestCaseClick/TestCaseClickController.js b/force-app/main/default/aura/TestCaseClick/TestCaseClickController.js
new file mode 100644
index 0000000..691b3ae
--- /dev/null
+++ b/force-app/main/default/aura/TestCaseClick/TestCaseClickController.js
@@ -0,0 +1,5 @@
+({
+ closeQA : function(component, event, helper) {
+ $A.get("e.force:closeQuickAction").fire();
+ }
+})
\ No newline at end of file
diff --git a/force-app/main/default/aura/TestCaseClick/TestCaseClickHelper.js b/force-app/main/default/aura/TestCaseClick/TestCaseClickHelper.js
new file mode 100644
index 0000000..f8a77e3
--- /dev/null
+++ b/force-app/main/default/aura/TestCaseClick/TestCaseClickHelper.js
@@ -0,0 +1,5 @@
+({
+ helperMethod : function() {
+
+ }
+})
diff --git a/force-app/main/default/aura/TestCaseClick/TestCaseClickRenderer.js b/force-app/main/default/aura/TestCaseClick/TestCaseClickRenderer.js
new file mode 100644
index 0000000..3a11ff5
--- /dev/null
+++ b/force-app/main/default/aura/TestCaseClick/TestCaseClickRenderer.js
@@ -0,0 +1,5 @@
+({
+
+// Your renderer method overrides go here
+
+})
diff --git a/force-app/main/default/aura/WeeklyReport/WeeklyReport.cmp b/force-app/main/default/aura/WeeklyReport/WeeklyReport.cmp
index 2685ae9..7700999 100644
--- a/force-app/main/default/aura/WeeklyReport/WeeklyReport.cmp
+++ b/force-app/main/default/aura/WeeklyReport/WeeklyReport.cmp
@@ -567,7 +567,7 @@
<br/>
<div class="save_button_area">
<lightning:button class="slds-m-top_small" type="button" label="鍙栨秷" onclick="{!c.createCancel}"/>
- <lightning:button class="slds-m-top_small" type="submit" label="鏂板缓" />
+ <lightning:button class="slds-m-top_small" type="submit" label="淇濆瓨" />
</div>
</lightning:recordEditForm>
</div>
diff --git a/force-app/main/default/aura/WeeklyReport/WeeklyReportController.js b/force-app/main/default/aura/WeeklyReport/WeeklyReportController.js
index b4f4562..1b97f08 100644
--- a/force-app/main/default/aura/WeeklyReport/WeeklyReportController.js
+++ b/force-app/main/default/aura/WeeklyReport/WeeklyReportController.js
@@ -1,5 +1,6 @@
({
doInit : function(component, event, helper) {
+ console.log('zhj 鏂版柟妗�');
if (window.location.href.endsWith("weekly-report")) {
helper.doinit(component, event, helper);
} else {
@@ -101,16 +102,62 @@
*/
var agencyHospitalid = component.get('v.hospitalLinkId');
- var arr = new Array();
- arr.push(agencyReport);
- var data = JSON.stringify(arr);
- // helper.set_aws_url(component,data,agencyHospitalid);
+ //zhj MEBG鏂版柟妗堟敼閫� 2022-11-29 start
+ debugger
+ let hospitalName = '';
+ //璋冪敤鍚庣searchAgencyDataId鏂规硶鏌ヨ鍑哄尰闄笅闈㈡墍鏈夊鎴蜂汉鍛榙ataid
+ helper.CallBackAction(component,'searchAgencyDataId',{
+ hospitalId : agencyHospitalid
+ },function(data){
+ if(data.getState() == "SUCCESS"){
+ var data = data.getReturnValue();
+ if(data.IsSuccess == true){
+ let agencyContactIds = ''
+ if(data.Message == '' && data.Data && data.Data.length > 0){
+ hospitalName = data.Data[0].Agency_Hospital__r.Name;
+ for(var i=0;i<data.Data.length;i++){
+ if(data.Data[i].AWS_Data_Id__c)
+ agencyContactIds += ','+data.Data[i].AWS_Data_Id__c;
+ }
+ agencyContactIds = agencyContactIds.substring(1);
+ agencyReport['agencyContactIds'] = agencyContactIds;
+ }else{
+ agencyReport['agencyContactIds'] = agencyContactIds;
+ }
+ var arr = new Array();
+ arr.push(agencyReport);
+ var requestData = JSON.stringify(arr);
+ // helper.set_aws_url(component,data,agencyHospitalid);
- var token = component.get('v.AWStoken');
- var newUrl = component.get('v.AWSinsert');
+ var token = component.get('v.AWStoken');
+ var newUrl = component.get('v.AWSinsert') + 'V2';
+
+ component.set('v.login',true);
+ helper.insert_agencycontact(component,token,newUrl,requestData,agencyHospitalid,helper,hospitalName);
+ }else{
+ helper.ShowToast({
+ "message" : data.message,
+ "type" : "error"
+ });
+ }
+ }else{
+ helper.ShowToast({
+ "message" : 'searchAgency澶辫触',
+ "type" : "error"
+ });
+ }
+ })
+ //zhj MEBG鏂版柟妗堟敼閫� 2022-11-29 end
+ // var arr = new Array();
+ // arr.push(agencyReport);
+ // var data = JSON.stringify(arr);
+ // // helper.set_aws_url(component,data,agencyHospitalid);
+
+ // var token = component.get('v.AWStoken');
+ // var newUrl = component.get('v.AWSinsert');
- component.set('v.login',true);
- helper.insert_agencycontact(component,token,newUrl,data,agencyHospitalid,helper);
+ // component.set('v.login',true);
+ // helper.insert_agencycontact(component,token,newUrl,data,agencyHospitalid,helper);
// PIPL update Yin Mingjie 21/02/2022 end
}else{
diff --git a/force-app/main/default/aura/WeeklyReport/WeeklyReportHelper.js b/force-app/main/default/aura/WeeklyReport/WeeklyReportHelper.js
index eed53ef..4222c03 100644
--- a/force-app/main/default/aura/WeeklyReport/WeeklyReportHelper.js
+++ b/force-app/main/default/aura/WeeklyReport/WeeklyReportHelper.js
@@ -63,7 +63,7 @@
component.set('v.login',false);
}
}else{
- this.error('AWS search status : ' + result.status);
+ this.error('AWS search status1 : ' + result.status);
component.set('v.login',false);
}
},component);
@@ -221,7 +221,7 @@
b = true;
Foo();
}else{
- this.error('AWS search status : ' + result.status);
+ this.error('璇烽噸鏂板埛鏂颁竴涓嬮〉闈€��');
}
},component);
}else{
@@ -243,7 +243,7 @@
b1 = true;
Foo();
}else{
- this.error('AWS search status : ' + result.status);
+ this.error('AWS search status3 : ' + result.status);
}
},component);
}else{
@@ -345,7 +345,7 @@
var reports = component.get('v.reports');
var Agency_Hospital_text = '';
var Agency_Hospital_parent_id = '';
-
+ debugger
// 鍖婚櫌鍚�
if (select_data['Agency_Hospital__c'] != '') {
for (var i = 0; i < reports.length; i++) {
@@ -1171,7 +1171,6 @@
component.set('v.hospitalLinkId', hospital_data[i].Id);
component.set('v.data.Agency_Hospital__c', hospital_data[i].Id);
component.find('new_con').set('v.disabled', false);
- //break;
}
}
component.set("v.hospital", accname);
@@ -1231,7 +1230,7 @@
$A.enqueueAction(action);
},
- insert_agencycontact : function(component,token,newUrl,payload,agencyHospitalid,helper) {
+ insert_agencycontact : function(component,token,newUrl,payload,agencyHospitalid,helper,hospitalName) {
// AWSService.insert(newUrl,payload,function(result){
// if(result.status == '0'){
@@ -1263,7 +1262,11 @@
}else{
console.log('AWS status error:' + result)
component.set('v.login',false);
- component.find('OppMessage').setError('AWS insert error.');
+ if(result.status == '129'){
+ component.find('OppMessage').setError('璇ュ鎴蜂汉鍛樺悕瀛楀凡瀛樺湪锛屽湪'+hospitalName+'鍖婚櫌锛岃淇敼');
+ }else{
+ component.find('OppMessage').setError('AWS insert error.');
+ }
}
}).catch(error => {
console.log('AWS insert error:' + error)
@@ -1277,11 +1280,11 @@
var action = component.get('c.saveAgencyContact');
action.setParams({
"name" : result.object[0].name,
- "nameEncrypt" : result.object[0].nameEncrypt,
+ //"nameEncrypt" : result.object[0].nameEncrypt,
"type" : result.object[0].type,
- "typeEncrypt" : result.object[0].typeEncrypt,
+ //"typeEncrypt" : result.object[0].typeEncrypt,
"doctorDivision1" : result.object[0].doctorDivision1,
- "doctorDivision1Encrypt" : result.object[0].doctorDivision1Encrypt,
+ //"doctorDivision1Encrypt" : result.object[0].doctorDivision1Encrypt,
"agencyHospitalid" : agencyHospitalid,
"awsid" : result.object[0].dataId,
});
@@ -1422,7 +1425,7 @@
if(result.status == '0'){
this.to_doctor_list(result,retMap,component);
}else{
- this.error('AWS search status : ' + result.status);
+ this.error('AWS search status4 : ' + result.status);
component.set('v.login',false);
}
},component);
@@ -1443,6 +1446,9 @@
// });
},
search_core : function(token,searchUrl,payload,callback,component) {
+ console.log('token = ' + token);
+ console.log('searchUrl = ' + searchUrl);
+ console.log('payload = ' + payload);
fetch(searchUrl, {
method: 'POST',
body: payload,
@@ -1456,6 +1462,7 @@
component.set('v.login',false);
if(callback)callback(result);
}).catch(error => {
+ console.log('error = ' + JSON.stringify(error));
this.error('AWS search error.');
component.set('v.login',false);
});
@@ -1519,6 +1526,7 @@
// },
opportunityChange : function(component, event, helper) {
+ debugger
var opp_id = component.get('v.data.Opportunity__c');
if (opp_id == '') {
$A.util.addClass(component.find('input-opportunity-stage'), 'disp_none');
@@ -1582,24 +1590,28 @@
// }
component.set('v.login',false);
return false;
- } else if (res[0]['StageName2__c'] != '3.璇环' && !component.get('v.loadOpp')){
- this.warning('璇烽�夋嫨璇环涓殑椤圭洰');
- // ToDo闇�瑕佹祴璇曟墜鏈轰笂鑳借繍琛屼笉
- component.set('v.data.Opportunity__c', '');
- $A.util.addClass(component.find('input-opportunity-stage'), 'disp_none');
- $A.util.addClass(component.find('input-opportunity-amount1'), 'disp_none');
- $A.util.addClass(component.find('input-opportunity-amount2'), 'disp_none');
- $A.util.addClass(component.find('input-opportunity-date'), 'disp_none');
- $A.util.removeClass(component.find('input-opportunity-blank'), 'disp_none');
- // if ($A.get("$Browser.formFactor") == 'DESKTOP') {
- // var values = [];
- // component.find('input-opportunity').get("v.body")[0].set('v.values', values);
- // } else {
- // component.find('input-opportunity').get("v.body")[0].set('v.selectedLabel', '');
- // }
- component.set('v.login',false);
- return false;
- } else {
+ }
+ //SWAG-CKH5M8 銆愬鎵樸�戝懆鎶ュ叧鑱旇浠凤紝鍙�夋嫨璇环鑼冨洿璋冩暣 fy start
+ // else if (res[0]['StageName2__c'] != '3.璇环' && !component.get('v.loadOpp')){
+ // this.warning('璇烽�夋嫨璇环涓殑椤圭洰');
+ // // ToDo闇�瑕佹祴璇曟墜鏈轰笂鑳借繍琛屼笉
+ // component.set('v.data.Opportunity__c', '');
+ // $A.util.addClass(component.find('input-opportunity-stage'), 'disp_none');
+ // $A.util.addClass(component.find('input-opportunity-amount1'), 'disp_none');
+ // $A.util.addClass(component.find('input-opportunity-amount2'), 'disp_none');
+ // $A.util.addClass(component.find('input-opportunity-date'), 'disp_none');
+ // $A.util.removeClass(component.find('input-opportunity-blank'), 'disp_none');
+ // // if ($A.get("$Browser.formFactor") == 'DESKTOP') {
+ // // var values = [];
+ // // component.find('input-opportunity').get("v.body")[0].set('v.values', values);
+ // // } else {
+ // // component.find('input-opportunity').get("v.body")[0].set('v.selectedLabel', '');
+ // // }
+ // component.set('v.login',false);
+ // return false;
+ // }
+ //SWAG-CKH5M8 銆愬鎵樸�戝懆鎶ュ叧鑱旇浠凤紝鍙�夋嫨璇环鑼冨洿璋冩暣 fy end
+ else {
component.set('v.loadOpp', false);
component.set('v.oppdata',res[0]);
this.set_selected(component, 'select_stageName', res[0].StageName__c);
@@ -1784,6 +1796,7 @@
$A.util.addClass(modal_newAC, 'disp_none');
},
setOpportunity_cfilter : function(component) {
+ debugger
var hosId = component.get('v.hospitalId');
var Department_Cateogy__c = component.find('select_department').get('v.value');
var opportunity_cfilter = '';
@@ -1896,19 +1909,23 @@
fileData : component.get("v.fileContentData"),
});
action1.setCallback(this, function(response) {
+ console.log('response = ' + JSON.stringify(response));
var state = response.getState();
if (state === "SUCCESS") {
var ress = response.getReturnValue();
+ console.log('ress = ' + JSON.stringify(ress));
if(ress){
var valur =ress.split('error1');
if(valur.length<=1){
var res = JSON.parse(response.getReturnValue());
+ console.log('res = ' + JSON.stringify(res));
var dataArr = new Array();
var dataMap = new Map();
res.forEach(item => {
if(item.AWS_Data_Id__c){
dataArr.push(item.AWS_Data_Id__c);
- dataMap.set(item.AWS_Data_Id__c,item.Name_Encrypted__c);
+ //dataMap.set(item.AWS_Data_Id__c,item.Name_Encrypted__c);
+ dataMap.set(item.AWS_Data_Id__c,item.AWS_Data_Id__c); //zhj 鏂版柟妗堟敼閫� 2022-12-21
}
});
debugger
@@ -1931,11 +1948,11 @@
component.set('v.login',true);
this.saveRecordsEditFile(component,dataMap,result.object,helper);
}else{
- this.error('AWS search status ' );
+ this.error('AWS search status5 ' );
component.set('v.login',false);
}
}else{
- this.error('AWS search status : ' + result.status);
+ this.error('AWS search status6 : ' + result.status);
component.set('v.login',false);
}
},component);
@@ -2087,7 +2104,7 @@
if (searchDataMap.get(fileName.replace(' ',''))) {
var nameDataId = searchDataMap.get(fileName.replace(' ',''));
if (dataMap.get(nameDataId)) {
- filelist[4] = dataMap.get(nameDataId);
+ filelist[4] = dataMap.get(nameDataId); //zhj 鏂版柟妗堟敼閫� filelist[4]涓嶅啀瀛樼殑nameEncrpt 2022-12-21
}else {
error += 'error1 绗�'+i+'琛屾暟鎹嫓璁夸汉SF涓嶅瓨鍦�';
error += '=';
@@ -2317,8 +2334,24 @@
var modalimportbg = component.find('modal_exportbg');
$A.util.addClass(modalimport, 'disp_none');
$A.util.addClass(modalimportbg,'disp_none');
- }
-
+ },
+
+ //zhj MEBG鏂版柟妗堟敼閫� 2022-11-29 start
+ CallBackAction : function(component,action_name,para,callback) {
+ var action = component.get("c." + action_name.trimStart().replace("c.",""));
+ if(para){
+ action.setParams(para);
+ }
+ if(callback){
+ action.setCallback(this,function(data){
+ callback(data);
+ });
+ }
+
+ $A.enqueueAction(action);
+ },
+ //zhj MEBG鏂版柟妗堟敼閫� 2022-11-29 end
+
// searchAgencyContact : function(res) {
// var agencyContacts = [];
// for (let idx = 0; idx < res.length; idx++) {
diff --git a/force-app/main/default/classes/AccAssumeChangeBatch.cls b/force-app/main/default/classes/AccAssumeChangeBatch.cls
index 0309ce1..58cdd12 100644
--- a/force-app/main/default/classes/AccAssumeChangeBatch.cls
+++ b/force-app/main/default/classes/AccAssumeChangeBatch.cls
@@ -1,11 +1,11 @@
-global class AccAssumeChangeBatch implements Database.Batchable<sObject> , Database.AllowsCallouts, Database.Stateful {
- public List<Account> HospitalIdList;//鎵ц澶辫触鎵嬪姩褰曞叆鍖婚櫌
+global class AccAssumeChangeBatch implements Database.Batchable<sObject>, Database.AllowsCallouts, Database.Stateful {
+ public List<Account> HospitalIdList; //鎵ц澶辫触鎵嬪姩褰曞叆鍖婚櫌
Boolean a = true;
//鎵ц澶辫触鎵嬪姩褰曞叆鍖婚櫌
global AccAssumeChangeBatch(List<Account> HospitalIdList) {
this.HospitalIdList = HospitalIdList;
}
- global AccAssumeChangeBatch( boolean a) {
+ global AccAssumeChangeBatch(boolean a) {
this.a = a;
}
// 鎵ц闈跺櫒
@@ -26,15 +26,20 @@
}
global void execute(Database.BatchableContext BC, list<Account> HosinfoList) {
- List<Tender_information__c> TenInfoList = [Select Id, Hospital__c, Hospital1__c, Hospital2__c, Hospital3__c,
- Hospital4__c from Tender_information__c
- Where Hospital__c in: HosinfoList or Hospital1__c in: HosinfoList
- or Hospital2__c in: HosinfoList or Hospital3__c in: HosinfoList
- or Hospital4__c in: HosinfoList ];
+ List<Tender_information__c> TenInfoList = [
+ SELECT Id, Hospital__c, Hospital1__c, Hospital2__c, Hospital3__c, Hospital4__c
+ FROM Tender_information__c
+ WHERE
+ Hospital__c IN :HosinfoList
+ OR Hospital1__c IN :HosinfoList
+ OR Hospital2__c IN :HosinfoList
+ OR Hospital3__c IN :HosinfoList
+ OR Hospital4__c IN :HosinfoList
+ ];
if (TenInfoList.size() > 0) {
// List<Tender_information__c> failedTenderList = new List<Tender_information__c>();
- Map<String, String> failedAccountMap = new Map<String, String>();//濡傛灉鎷涙姇鏍囨洿鏂板け璐ワ紝鐢ㄦ潵瀛樻洿鏂板け璐ョ殑鎷涙姇鏍囨墍鍏宠仈鐨勫尰闄�
+ Map<String, String> failedAccountMap = new Map<String, String>(); //濡傛灉鎷涙姇鏍囨洿鏂板け璐ワ紝鐢ㄦ潵瀛樻洿鏂板け璐ョ殑鎷涙姇鏍囨墍鍏宠仈鐨勫尰闄�
// 绌烘洿鏂版嫑鎶曟爣
Database.SaveResult[] saveTenderResults = Database.update(TenInfoList, false);
// 寰幆鏇存柊缁撴灉锛屽彇鍑虹┖鏇存柊澶辫触鐨勬嫑鎶曟爣鎵�瀵瑰簲鐨勫尰闄�
@@ -53,9 +58,9 @@
failedAccountMap.put(Hospital4Id, Hospital4Id);
}
}
- List<Account> accsList = new List<Account>();// 鐢ㄦ潵鏇存柊瀹㈡埛淇℃伅锛堟媴褰撳彂鐢熷彉鍖栵級
+ List<Account> accsList = new List<Account>(); // 鐢ㄦ潵鏇存柊瀹㈡埛淇℃伅锛堟媴褰撳彂鐢熷彉鍖栵級
for (Account accs : HosinfoList) {
- if (!failedAccountMap.containsKey(accs.Id) ) {
+ if (!failedAccountMap.containsKey(accs.Id)) {
accs.Assume_Change__c = false;
accsList.add(accs);
}
@@ -67,6 +72,5 @@
}
global void finish(Database.BatchableContext BC) {
-
}
-}
\ No newline at end of file
+}
diff --git a/force-app/main/default/classes/AccessorySelectController.cls b/force-app/main/default/classes/AccessorySelectController.cls
index 7ba65a3..ea0cd00 100644
--- a/force-app/main/default/classes/AccessorySelectController.cls
+++ b/force-app/main/default/classes/AccessorySelectController.cls
@@ -5,7 +5,7 @@
* RentalFixtureManage2Test
*/
public with sharing class AccessorySelectController extends CreateRelationListPagingCtrlBase {
- public override Integer getSearchNumMax() {
+ public override Integer getSearchNumMax() {
//鍚勩儦銉笺偢銇埗寰°亗銈屻伆銆佹渶澶т欢鏁般倰鎸囧畾銇欍倠
searchNumMax = Integer.valueOf(Label.Product_Select_Limit);
searchNumMax = 20;
@@ -19,9 +19,9 @@
selectedDataSql += ' where Rental_Apply_Equipment_Set__c = \'' + String.escapeSingleQuotes(parentId) + '\'';
selectedDataSql += ' and Is_Body__c = false';
selectedDataSql += ' and Cancel_Select__c = False';
- selectedDataSql += ' and (ApplyPersonAppended_F__c = false OR (' ;
+ selectedDataSql += ' and (ApplyPersonAppended_F__c = false OR (';
selectedDataSql += ' ApplyPersonAppended_F__c = true AND (Add_Request_approval_time__c != null OR Select_Time__c != null)))';
- selectedDataSql += ' order by Name ASC nulls last'; // order by Fixture_Set_Detail__r.SortInt__c
+ selectedDataSql += ' order by Name ASC nulls last'; // order by Fixture_Set_Detail__r.SortInt__c
return selectedDataSql;
}
@@ -55,17 +55,34 @@
public override List<String> getColumnFieldList() {
// strColumus 閲屽姞 field
// FixtureUtil#raesdGroupBy()銇爡鐩倐蹇呰
- return new List<String>{'Id', 'Rental_Apply_Equipment_Set__c', 'FSD_Id__c', 'Select_Time__c', 'Fixture_Model_No_F__c',
- 'IndexFromUniqueKey__c', 'FSD_Fixture_Model_No__c', 'Is_Body_F__c', 'SalesProvince__c', 'OneToOne_Flag__c',
- 'Rental_Apply__c', 'Rental_Apply__r.Salesdepartment__c', 'DeliverySlip__c', 'Is_Body__c',
- 'Rental_Apply__r.Equipment_Type_F__c', 'Rental_Apply__r.Internal_asset_location_F__c',
- 'Rental_Apply__r.Salesdept__c', 'Rental_Apply__r.Product_category__c',
- 'Rental_Apply__r.demo_purpose2__c','Rental_Apply__r.Follow_UP_Opp__r.Shipping_Finished_Day_Func__c',
- 'Rental_Apply__r.next_action__c','Rental_Apply__r.QIS_number__r.ReplaceDeliveryDate__c'};
+ return new List<String>{
+ 'Id',
+ 'Rental_Apply_Equipment_Set__c',
+ 'FSD_Id__c',
+ 'Select_Time__c',
+ 'Fixture_Model_No_F__c',
+ 'IndexFromUniqueKey__c',
+ 'FSD_Fixture_Model_No__c',
+ 'Is_Body_F__c',
+ 'SalesProvince__c',
+ 'OneToOne_Flag__c',
+ 'Rental_Apply__c',
+ 'Rental_Apply__r.Salesdepartment__c',
+ 'DeliverySlip__c',
+ 'Is_Body__c',
+ 'Rental_Apply__r.Equipment_Type_F__c',
+ 'Rental_Apply__r.Internal_asset_location_F__c',
+ 'Rental_Apply__r.Salesdept__c',
+ 'Rental_Apply__r.Product_category__c',
+ 'Rental_Apply__r.demo_purpose2__c',
+ 'Rental_Apply__r.Follow_UP_Opp__r.Shipping_Finished_Day_Func__c',
+ 'Rental_Apply__r.next_action__c',
+ 'Rental_Apply__r.QIS_number__r.ReplaceDeliveryDate__c'
+ };
}
// 鐢婚潰閲岀洿鎺ュ彲浠ヨ緭鍏ョ殑闋呯洰 List
public override List<String> getWritableColumnFieldList() {
- return new List<String>{'Cancel_Reason__c','Loaner_cancel_reason__c','Loaner_cancel_Remarks__c'};
+ return new List<String>{ 'Cancel_Reason__c', 'Loaner_cancel_reason__c', 'Loaner_cancel_Remarks__c' };
// 20210818 ljh SFDC-C448KZ add
}
// getObjName 杩� getOriginObjName 鐨� FK
@@ -83,7 +100,6 @@
public override String getSqlWhereStr() {
sqlWhereStr = '';
return sqlWhereStr;
-
}
public override Boolean getIsNeedRunSearch() {
@@ -95,7 +111,6 @@
/*****************妞滅储鐢�******************/
-
/*****************銈姐兗銉堟檪鍐嶆绱㈡潯浠讹紙鐢婚潰銇嬨倝銇叆鍔涙潯浠躲倰鐒¤銇欍倠銇熴倎锛�******************/
public String saveType { get; set; }
@@ -103,13 +118,13 @@
public Rental_Apply_Equipment_Set__c parentObj { get; set; }
public Rental_Apply_Equipment_Set_Detail__c sonObj { get; set; } // 20210817 ljh SFDC-C448KZ add
- public Boolean bieField { get; set; } // 鍒渷銆佸埆鏈儴鍒瓨鏀惧湴
+ public Boolean bieField { get; set; } // 鍒渷銆佸埆鏈儴鍒瓨鏀惧湴
List<Boolean> showButtonList = new List<Boolean>();
- public String bieCunFangDi { get; set; } //鍒瓨鏀惧湴, 鑲畾鏈夊�� 涓嶄负null
+ public String bieCunFangDi { get; set; } //鍒瓨鏀惧湴, 鑲畾鏈夊�� 涓嶄负null
// #OLY_OCM-654 鍥犱负MA鏈儴鍜屼骇鍝佸煿璁湰閮ㄨ繕鏄渶瑕佹绱㈡潯浠�,鎵�浠ラ渶瑕佸埆鏈儴鐨勬绱㈡潯浠� Start
- public String bieBenBu { get; set; } //鍒湰閮�
+ public String bieBenBu { get; set; } //鍒湰閮�
public Set<String> benbuSet;
// #OLY_OCM-654 鍥犱负MA鏈儴鍜屼骇鍝佸煿璁湰閮ㄨ繕鏄渶瑕佹绱㈡潯浠�,鎵�浠ラ渶瑕佸埆鏈儴鐨勬绱㈡潯浠� End
@@ -117,454 +132,453 @@
// public String bieChanPinFenLei { get; set; } //浜у搧鍒嗙被
// public String bieBiePinFenLei { get; set; } //鍒鍝佸垎绫�
// #OLY_OCM-654 End
- public Rental_Apply_Equipment_Set_Detail__c pageRaesd {get; set;}
-
+ public Rental_Apply_Equipment_Set_Detail__c pageRaesd { get; set; }
public AccessorySelectController() {
Integer i = 0;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
- i ++;
-
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+
parentId = ApexPages.currentPage().getParameters().get('pt_recid');
pageRaesd = new Rental_Apply_Equipment_Set_Detail__c();
this.bieField = true;
@@ -572,56 +586,68 @@
//鍊熷嚭澶囧搧涓�瑙堛伄鎯呭牨銈掑彇寰�
if (!String.isBlank(this.parentId)) {
List<Rental_Apply_Equipment_Set__c> parentObjs = [
- SELECT Id, Rental_Apply__r.Name,
- Rental_Apply__r.Owner.Name,
- Rental_Apply__r.Salesdept__c,
- Rental_Apply__r.WorkPlace__c,
- Rental_Apply__r.Request_shipping_day__c,
- Fu_Shu_Pin_Fen_Pei_Jia__c,
- Rental_Apply__r.Demo_purpose1__c,
- Rental_Apply__r.demo_purpose2__c,
- Fixture_Set__r.Product_Category_GI_SP__c,
- Rental_Apply__r.Product_category__c,
- Fixture_Set__r.Equipment_Type__c,
- Rental_Apply__r.Equipment_Type_F__c,
- Rental_Apply__r.Internal_asset_location_F__c,
- Rental_Apply__r.Request_return_day__c,
- Fixture_Set__r.Fixture_Set_Body_Model_No__c,
- Rental_Apply__r.Salesdepartment__c,
- SerialNumber_F__c,
- Rental_Start_Date__c,
- Rental_End_Date__c,
- Irreplaceable_flag__c,
- RequestNoJoinStr2__c,
- First_RAESD__c, First_RAESD__r.Is_Body__c
- FROM Rental_Apply_Equipment_Set__c
- where Id = :parentId];
- if(parentObjs.size()>0){
+ SELECT
+ Id,
+ Rental_Apply__r.Name,
+ Rental_Apply__r.Owner.Name,
+ Rental_Apply__r.Salesdept__c,
+ Rental_Apply__r.WorkPlace__c,
+ Rental_Apply__r.Request_shipping_day__c,
+ Fu_Shu_Pin_Fen_Pei_Jia__c,
+ Rental_Apply__r.Demo_purpose1__c,
+ Rental_Apply__r.demo_purpose2__c,
+ Fixture_Set__r.Product_Category_GI_SP__c,
+ Rental_Apply__r.Product_category__c,
+ Fixture_Set__r.Equipment_Type__c,
+ Rental_Apply__r.Equipment_Type_F__c,
+ Rental_Apply__r.Internal_asset_location_F__c,
+ Rental_Apply__r.Request_return_day__c,
+ Fixture_Set__r.Fixture_Set_Body_Model_No__c,
+ Rental_Apply__r.Salesdepartment__c,
+ SerialNumber_F__c,
+ Rental_Start_Date__c,
+ Rental_End_Date__c,
+ Irreplaceable_flag__c,
+ RequestNoJoinStr2__c,
+ First_RAESD__c,
+ First_RAESD__r.Is_Body__c
+ FROM Rental_Apply_Equipment_Set__c
+ WHERE Id = :parentId
+ ];
+ if (parentObjs.size() > 0) {
parentObj = parentObjs.get(0);
- String rsdid=System.label.Rental_Apply_id;
+ String rsdid = System.label.Rental_Apply_id;
List<Rental_Apply_Equipment_Set_Detail__c> raesdObjs = [
- SELECT Id, Rental_Apply_Equipment_Set__c,
- Cancel_Reason__c, // 20210817 ljh SFDC-C448KZ add
- Loaner_cancel_reason__c,// 20210817 ljh SFDC-C448KZ add
- Loaner_cancel_Remarks__c// 20210817 ljh SFDC-C448KZ add
- FROM Rental_Apply_Equipment_Set_Detail__c
- WHERE Rental_Apply__c =:rsdid limit 1];
+ SELECT
+ Id,
+ Rental_Apply_Equipment_Set__c,
+ Cancel_Reason__c, // 20210817 ljh SFDC-C448KZ add
+ Loaner_cancel_reason__c, // 20210817 ljh SFDC-C448KZ add
+ Loaner_cancel_Remarks__c // 20210817 ljh SFDC-C448KZ add
+ FROM Rental_Apply_Equipment_Set_Detail__c
+ WHERE Rental_Apply__c = :rsdid
+ LIMIT 1
+ ];
- if (!raesdObjs.isEmpty()) {
- sonObj = raesdObjs[0];
- }
+ if (!raesdObjs.isEmpty()) {
+ sonObj = raesdObjs[0];
+ }
// 涓讳綋 or 绗竴鏉�
List<Rental_Apply_Equipment_Set_Detail__c> bodyObjs = [
- SELECT Id, Internal_asset_location_before__c, Salesdepartment_before__c,
- Product_category_text__c, Equipment_Type_text__c, Select_Time__c
- FROM Rental_Apply_Equipment_Set_Detail__c
- WHERE Rental_Apply_Equipment_Set__c = :parentId
- and Id =: parentObj.First_RAESD__c
- and Cancel_Select__c = false];
+ SELECT
+ Id,
+ Internal_asset_location_before__c,
+ Salesdepartment_before__c,
+ Product_category_text__c,
+ Equipment_Type_text__c,
+ Select_Time__c
+ FROM Rental_Apply_Equipment_Set_Detail__c
+ WHERE Rental_Apply_Equipment_Set__c = :parentId AND Id = :parentObj.First_RAESD__c AND Cancel_Select__c = FALSE
+ ];
if (!bodyObjs.isEmpty()) {
if (bodyObjs[0].Select_Time__c != null) {
bieCunFangDi = bodyObjs[0].Internal_asset_location_before__c;
- bieBenBu = bodyObjs[0].Salesdepartment_before__c; // #OLY_OCM-654 MA鍜屼骇鍝佹娴嬫湰閮ㄦ槸闇�瑕佹绱㈢殑,鎵�浠ヤ笉娉ㄩ噴
+ bieBenBu = bodyObjs[0].Salesdepartment_before__c; // #OLY_OCM-654 MA鍜屼骇鍝佹娴嬫湰閮ㄦ槸闇�瑕佹绱㈢殑,鎵�浠ヤ笉娉ㄩ噴
// #OLY_OCM-654 Start
// bieChanPinFenLei = bodyObjs[0].Product_category_text__c;
// bieBiePinFenLei = bodyObjs[0].Equipment_Type_text__c;
@@ -632,7 +658,7 @@
}
if (String.isBlank(bieCunFangDi)) {
bieCunFangDi = parentObj.Rental_Apply__r.Internal_asset_location_F__c;
- bieBenBu = parentObj.Rental_Apply__r.Salesdepartment__c; // #OLY_OCM-654 MA鍜屼骇鍝佹娴嬫湰閮ㄦ槸闇�瑕佹绱㈢殑,鎵�浠ヤ笉娉ㄩ噴
+ bieBenBu = parentObj.Rental_Apply__r.Salesdepartment__c; // #OLY_OCM-654 MA鍜屼骇鍝佹娴嬫湰閮ㄦ槸闇�瑕佹绱㈢殑,鎵�浠ヤ笉娉ㄩ噴
// #OLY_OCM-654 Start
// bieChanPinFenLei = parentObj.Rental_Apply__r.Product_category__c;
// bieBiePinFenLei = parentObj.Rental_Apply__r.Equipment_Type_F__c;
@@ -642,7 +668,6 @@
throw new ControllerUtil.myException('涓嶈兘鏄庣‘瀛樻斁鍦�, 璇风‘璁ゆ暟鎹��');
}
}
-
}
// 20210817 ljh SFDC-C448KZ update end
}
@@ -667,26 +692,20 @@
bieBenBu = '';
}
// #OLY_OCM-654 淇濇湁璁惧鍚堝苟鍚�,鍙栧嚭鐨勭涓�鏉′竴瑙堟槑缁嗙殑鏈儴鍙兘涓虹┖,鎵�浠iebenbu涓虹┖鏃�,涔熻娣诲姞妫�绱㈡潯浠� End
-
}
//鍒瓨鏀惧湴 SelectOption
public List<SelectOption> getbieCunFangDiOps() {
- return new List<SelectOption>{
- new SelectOption(bieCunFangDi, bieCunFangDi)
- };
+ return new List<SelectOption>{ new SelectOption(bieCunFangDi, bieCunFangDi) };
}
// #OLY_OCM-654 鍒湰閮� 椤甸潰娌℃湁妫�绱㈡墍浠ヤ笉鏀� SelectOption
public List<SelectOption> getbieBenBuOps() {
- return new List<SelectOption>{
- new SelectOption(bieBenBu, bieBenBu)
- };
+ return new List<SelectOption>{ new SelectOption(bieBenBu, bieBenBu) };
// return FixtureUtil.bieBenBuOpsMap.get('鏈儴');
}
private void searchOppSetParam() {
-
}
public PageReference searchOpp() {
@@ -709,7 +728,7 @@
PageReference pg;
if (parentObj.First_RAESD__r.Is_Body__c) {
pg = new PageReference('/apex/MainFixtureSelect');
- pg.getParameters().put('pt_recid',parentId);
+ pg.getParameters().put('pt_recid', parentId);
pg.setRedirect(true);
} else {
pg = new PageReference('/' + parentId);
@@ -730,7 +749,9 @@
Rental_Apply_Equipment_Set_Detail__c robj = (Rental_Apply_Equipment_Set_Detail__c) wprInfo.sobj;
// 鐘舵�佸彧鏈夋槸鍙互鍒嗛厤鏃舵墠浼氫繚瀛�
- if (FixtureUtil.assetFixtureStatusMap.get(FixtureUtil.AssetFixtureStatus.Ke_Yi_Fen_Pei.ordinal()) == robj.Fu_Shu_Pin_Fen_Pei_Jia__c
+ if (
+ FixtureUtil.assetFixtureStatusMap.get(FixtureUtil.AssetFixtureStatus.Ke_Yi_Fen_Pei.ordinal()) ==
+ robj.Fu_Shu_Pin_Fen_Pei_Jia__c
) {
if (!String.isBlank(robj.Asset__c)) {
assetIdList.add(robj.Asset__c);
@@ -742,15 +763,20 @@
if (assetIdList.size() > 0) {
//20170906 upsert by UniqueKey__c
List<Rental_Apply_Equipment_Set_Detail__c> mfUpsert = new List<Rental_Apply_Equipment_Set_Detail__c>();
- Map<Id, Asset> aSetMap = new Map<Id, Asset>([
- Select Id, Quantity,
- Out_of_wh__c,
- Manage_type__c,
- Ji_Zhong_Guan_Li_Ku_Cun__c, // 20220118 ljh SFDC-C9V84U start
- Last_Reserve_RAES_Detail__c
- From Asset
- where Id = :assetIdList
- for Update]);
+ Map<Id, Asset> aSetMap = new Map<Id, Asset>(
+ [
+ SELECT
+ Id,
+ Quantity,
+ Out_of_wh__c,
+ Manage_type__c,
+ Ji_Zhong_Guan_Li_Ku_Cun__c, // 20220118 ljh SFDC-C9V84U start
+ Last_Reserve_RAES_Detail__c
+ FROM Asset
+ WHERE Id = :assetIdList
+ FOR UPDATE
+ ]
+ );
Map<Id, Asset> assetUpdateMap = new Map<Id, Asset>();
// 鐘舵�佸彧鏈夋槸鍙互鍒嗛厤鏃舵墠浼氫繚瀛�
@@ -761,20 +787,29 @@
}
Rental_Apply_Equipment_Set_Detail__c robj = (Rental_Apply_Equipment_Set_Detail__c) wprInfo.sobj;
//1822 yc 20211021 宸茶喘寰呰揣鐩殑锛屾柊鍝佸凡鏈夊彂璐ф棩涓嶈兘鍑哄簱 start
- if(robj.Rental_Apply__r.demo_purpose2__c=='宸茶喘寰呰揣' && robj.Rental_Apply__r.Follow_UP_Opp__r.Shipping_Finished_Day_Func__c!= null){
+ if (
+ robj.Rental_Apply__r.demo_purpose2__c == '宸茶喘寰呰揣' &&
+ robj.Rental_Apply__r.Follow_UP_Opp__r.Shipping_Finished_Day_Func__c != null
+ ) {
throw new ControllerUtil.myException('宸茶喘寰呰揣鐩殑锛屾柊鍝佸凡鏈夊彂璐ф棩锛屼笉鑳界户缁簡');
- }
- if(robj.Rental_Apply__r.demo_purpose2__c=='绱㈣禂QIS' && robj.Rental_Apply__r.next_action__c=='鏃犲伩鏇存崲' && robj.Rental_Apply__r.QIS_number__r.ReplaceDeliveryDate__c!= null){
+ }
+ if (
+ robj.Rental_Apply__r.demo_purpose2__c == '绱㈣禂QIS' &&
+ robj.Rental_Apply__r.next_action__c == '鏃犲伩鏇存崲' &&
+ robj.Rental_Apply__r.QIS_number__r.ReplaceDeliveryDate__c != null
+ ) {
throw new ControllerUtil.myException('绱㈣禂QIS鐩殑锛孮IS宸叉湁鏂板搧鍙戣揣鏃ワ紝涓嶈兘缁х画浜�');
- }
- //1822 yc 20211021 宸茶喘寰呰揣鐩殑锛屾柊鍝佸凡鏈夊彂璐ф棩涓嶈兘鍑哄簱 end
+ }
+ //1822 yc 20211021 宸茶喘寰呰揣鐩殑锛屾柊鍝佸凡鏈夊彂璐ф棩涓嶈兘鍑哄簱 end
// 鍙互鍒嗛厤銇牬鍚� (Asset__c 浠� null 鍒� 鏈夊��)
- if (FixtureUtil.assetFixtureStatusMap.get(FixtureUtil.AssetFixtureStatus.Ke_Yi_Fen_Pei.ordinal()) == robj.Fu_Shu_Pin_Fen_Pei_Jia__c
+ if (
+ FixtureUtil.assetFixtureStatusMap.get(FixtureUtil.AssetFixtureStatus.Ke_Yi_Fen_Pei.ordinal()) ==
+ robj.Fu_Shu_Pin_Fen_Pei_Jia__c
) {
Asset aSet = aSetMap.get(robj.Asset__c);
// 涓嶈兘lock鍒版暟鎹殑鏃跺��
if (aSet == null) {
- throw new ControllerUtil.myException('绗�' + (indexNum + 1) +'琛岋紝涓嶆槸鏈夋晥鐨勯檮灞炲搧锛岃鍒锋柊鐢婚潰鍚庨噸鏂版搷浣�');
+ throw new ControllerUtil.myException('绗�' + (indexNum + 1) + '琛岋紝涓嶆槸鏈夋晥鐨勯檮灞炲搧锛岃鍒锋柊鐢婚潰鍚庨噸鏂版搷浣�');
}
// 鍒嗛厤鏃堕棿 (Asset__c 浠� null 鍒� 鏈夊��)
if (robj.Select_Time__c == null) {
@@ -787,11 +822,11 @@
Integer num = Integer.valueof(aSet.Quantity - aSet.Out_of_wh__c);
// 澶囧搧鏈夋晥搴撳瓨娌℃湁鏃�,绋嬪簭杩斿洖骞舵彁绀洪敊璇俊鎭�
if (num < 1) {
- throw new ControllerUtil.myException('绗�' + (indexNum + 1) +'琛岋紝娌℃湁瓒冲鏈夋晥搴撳瓨锛岃鍒锋柊鐢婚潰鍚庨噸鏂版搷浣�');
+ throw new ControllerUtil.myException('绗�' + (indexNum + 1) + '琛岋紝娌℃湁瓒冲鏈夋晥搴撳瓨锛岃鍒锋柊鐢婚潰鍚庨噸鏂版搷浣�');
}
// 20220118 ljh SFDC-C9V84U start
- if(aSet.Ji_Zhong_Guan_Li_Ku_Cun__c <= 0){
- throw new ControllerUtil.myException('绗�' + (indexNum + 1) +'琛岋紝闆嗕腑搴撳簱瀛樹笉瓒筹紝璇峰埛鏂扮敾闈㈠悗閲嶆柊鎿嶄綔');
+ if (aSet.Ji_Zhong_Guan_Li_Ku_Cun__c <= 0) {
+ throw new ControllerUtil.myException('绗�' + (indexNum + 1) + '琛岋紝闆嗕腑搴撳簱瀛樹笉瓒筹紝璇峰埛鏂扮敾闈㈠悗閲嶆柊鎿嶄綔');
}
// 20220118 ljh SFDC-C9V84U end
//aSet.Out_of_wh__c = aSet.Out_of_wh__c + 1;
@@ -799,8 +834,14 @@
//assetUpdateMap.put(aSet.Id, aSet);
}
- String uniqueKeyStr = parentObj.RequestNoJoinStr2__c + ':'+ robj.Rental_Apply_Equipment_Set__c
- + ':' + robj.FSD_Id__c + ':' + robj.IndexFromUniqueKey__c;
+ String uniqueKeyStr =
+ parentObj.RequestNoJoinStr2__c +
+ ':' +
+ robj.Rental_Apply_Equipment_Set__c +
+ ':' +
+ robj.FSD_Id__c +
+ ':' +
+ robj.IndexFromUniqueKey__c;
robj.UniqueKey__c = uniqueKeyStr;
@@ -830,7 +871,7 @@
saveType = '';
return null;
} else if (saveType == '2') {
- // 銈姐兗銉堟檪銇鏇淬亗銈�
+ // 銈姐兗銉堟檪銇鏇淬亗銈�
myComponentController.sortTable();
saveType = '';
return null;
@@ -844,11 +885,10 @@
}
}
/**
- *#OLY_OCM-668 鍙栨秷闄勫睘鍝佸垎閰�
- *@return PageReference 鍒锋柊闄勫睘鍝侀�夋嫨椤甸潰
- */
- public PageReference unassign(){
-
+ *#OLY_OCM-668 鍙栨秷闄勫睘鍝佸垎閰�
+ *@return PageReference 鍒锋柊闄勫睘鍝侀�夋嫨椤甸潰
+ */
+ public PageReference unassign() {
Savepoint sp = Database.setSavepoint();
try {
@@ -859,34 +899,32 @@
for (WrapperInfo wprInfo : viewList) {
Rental_Apply_Equipment_Set_Detail__c robj = (Rental_Apply_Equipment_Set_Detail__c) wprInfo.sobj;
if (!String.isBlank(robj.Asset__c)) {
- assetIdList.add(robj.Asset__c);
- raesdIdList.add(robj.Id);
+ assetIdList.add(robj.Asset__c);
+ raesdIdList.add(robj.Id);
}
}
// 鍔爈ock
- Map<Id,Rental_Apply_Equipment_Set_Detail__c> raesdMap = new Map<Id,Rental_Apply_Equipment_Set_Detail__c>([
- SELECT Id
- , Asset__c
- , Select_Time__c
- , StockDown_time__c
- , Cancel_Date__c
- , Fixture_OneToOne_Link_Id__c
- FROM Rental_Apply_Equipment_Set_Detail__c
- WHERE Id in :raesdIdList
- FOR UPDATE]);
+ Map<Id, Rental_Apply_Equipment_Set_Detail__c> raesdMap = new Map<Id, Rental_Apply_Equipment_Set_Detail__c>(
+ [
+ SELECT Id, Asset__c, Select_Time__c, StockDown_time__c, Cancel_Date__c, Fixture_OneToOne_Link_Id__c
+ FROM Rental_Apply_Equipment_Set_Detail__c
+ WHERE Id IN :raesdIdList
+ FOR UPDATE
+ ]
+ );
if (raesdMap.size() > 0) {
Map<String, Rental_Apply_Equipment_Set_Detail__c> mfUpsert = new Map<String, Rental_Apply_Equipment_Set_Detail__c>();
// 璇诲彇宸插垎閰嶇殑鎵�鏈夐檮灞炲搧
- Map<Id, Asset> aSetMap = new Map<Id, Asset>([
- Select Id, Quantity,
- Out_of_wh__c,
- Manage_type__c,
- Last_Reserve_RAES_Detail__c
- From Asset
- where Id = :assetIdList
- for Update]);
+ Map<Id, Asset> aSetMap = new Map<Id, Asset>(
+ [
+ SELECT Id, Quantity, Out_of_wh__c, Manage_type__c, Last_Reserve_RAES_Detail__c
+ FROM Asset
+ WHERE Id = :assetIdList
+ FOR UPDATE
+ ]
+ );
for (Integer indexNum = 0; indexNum < viewList.size(); indexNum++) {
// 瀵规墦鍕剧殑闄勫睘鍝佸彇娑堝垎閰�
WrapperInfo wprInfo = viewList[indexNum];
@@ -895,24 +933,24 @@
if (!wprInfo.check) {
continue;
}
- if(robjOnline.Cancel_Date__c != null){
- throw new ControllerUtil.myException('绗�' + (indexNum + 1) +'琛岋紝宸茬粡鍙栨秷鐢宠浜嗭紝涓嶈兘鍙栨秷鍒嗛厤');
+ if (robjOnline.Cancel_Date__c != null) {
+ throw new ControllerUtil.myException('绗�' + (indexNum + 1) + '琛岋紝宸茬粡鍙栨秷鐢宠浜嗭紝涓嶈兘鍙栨秷鍒嗛厤');
}
- if(robjOnline.StockDown_time__c != null){
- throw new ControllerUtil.myException('绗�' + (indexNum + 1) +'琛岋紝宸蹭笅鏋讹紝涓嶅彲浠ュ彇娑堝垎閰�');
+ if (robjOnline.StockDown_time__c != null) {
+ throw new ControllerUtil.myException('绗�' + (indexNum + 1) + '琛岋紝宸蹭笅鏋讹紝涓嶅彲浠ュ彇娑堝垎閰�');
}
- if(robjOnline.Select_Time__c == null){
- throw new ControllerUtil.myException('绗�' + (indexNum + 1) +'琛岋紝杩樻病鏈夎鍒嗛厤锛屼笉鍙互鍙栨秷鍒嗛厤');
+ if (robjOnline.Select_Time__c == null) {
+ throw new ControllerUtil.myException('绗�' + (indexNum + 1) + '琛岋紝杩樻病鏈夎鍒嗛厤锛屼笉鍙互鍙栨秷鍒嗛厤');
}
// OLY_OCM-668 涓�瀵逛竴闄勫睘鍝佷笉鑳藉彇娑堝垎閰嶏細绯荤粺閫昏緫淇濇寔涓嶅彉
if (String.isNotBlank(robjOnline.Fixture_OneToOne_Link_Id__c)) {
- throw new ControllerUtil.myException('绗�' + (indexNum + 1) +'琛岋紝涓�瀵逛竴鍒嗛厤鐨勯檮灞炲搧锛屼笉鑳藉彇娑堝垎閰�');
+ throw new ControllerUtil.myException('绗�' + (indexNum + 1) + '琛岋紝涓�瀵逛竴鍒嗛厤鐨勯檮灞炲搧锛屼笉鑳藉彇娑堝垎閰�');
}
Asset aSet = aSetMap.get(robj.Asset__c);
// 涓嶈兘lock鍒版暟鎹殑鏃跺��
if (aSet == null) {
- throw new ControllerUtil.myException('绗�' + (indexNum + 1) +'琛岋紝涓嶆槸鏈夋晥鐨勯檮灞炲搧锛岃鍒锋柊鐢婚潰鍚庨噸鏂版搷浣�');
+ throw new ControllerUtil.myException('绗�' + (indexNum + 1) + '琛岋紝涓嶆槸鏈夋晥鐨勯檮灞炲搧锛岃鍒锋柊鐢婚潰鍚庨噸鏂版搷浣�');
}
// 鐩稿叧瀛楁缃负 null
@@ -941,8 +979,14 @@
// 澶囧搧绠$悊缂栫爜(鍊熷嚭鏃�)
robj.EquipmentSet_Managment_Code_text__c = null;
- String uniqueKeyStr = parentObj.RequestNoJoinStr2__c + ':'+ robj.Rental_Apply_Equipment_Set__c
- + ':' + robj.FSD_Id__c + ':' + robj.IndexFromUniqueKey__c;
+ String uniqueKeyStr =
+ parentObj.RequestNoJoinStr2__c +
+ ':' +
+ robj.Rental_Apply_Equipment_Set__c +
+ ':' +
+ robj.FSD_Id__c +
+ ':' +
+ robj.IndexFromUniqueKey__c;
robj.UniqueKey__c = uniqueKeyStr;
mfUpsert.put(robj.UniqueKey__c, robj);
@@ -951,13 +995,10 @@
if (!mfUpsert.isEmpty()) {
FixtureUtil.withoutUpsertRaesd(mfUpsert.values());
}
-
- }
- else{
+ } else {
throw new ControllerUtil.myException('娌℃湁涓嬫灦鍓嶅凡鍒嗛厤鐨勯檮灞炲搧');
}
- }
- catch (Exception ex) {
+ } catch (Exception ex) {
ApexPages.addMessages(ex);
Database.rollback(sp);
return null;
@@ -965,18 +1006,16 @@
// 鍒锋柊鐢婚潰
PageReference pg = new PageReference('/apex/AccessorySelect');
- pg.getParameters().put('pt_recid',parentId);
+ pg.getParameters().put('pt_recid', parentId);
pg.setRedirect(true);
return pg;
-
-
}
// https://sohobb.backlog.jp/view/OLY_OCM-152#comment-20041467
// 涓�瀵逛竴鐨勯檮灞炲搧 涓嶈兘 鍗曠嫭 鍙栨秷
public PageReference cancel() {
Savepoint sp = Database.setSavepoint();
- try{
+ try {
List<Rental_Apply_Equipment_Set_Detail__c> raesds = new List<Rental_Apply_Equipment_Set_Detail__c>();
List<Id> delIds = new List<Id>();
for (WrapperInfo wprInfo : viewList) {
@@ -996,7 +1035,6 @@
if (robj.CreatedBy.ProfileId == System.Label.ProfileId_EquipmentCenter && robj.Select_Time__c == null) {
// 鍒犻櫎鏄庣粏Id<List>
delIds.add(robj.Id);
-
} else {
if (String.isBlank(robj.Cancel_Reason__c)) {
ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR, '璇疯緭鍏ュ彇娑堢悊鐢�'));
@@ -1007,7 +1045,7 @@
ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR, '璇疯緭鍏ユ槑缁嗗彇娑堢悊鐢�'));
return null;
}
- if (robj.Loaner_cancel_reason__c=='鍏朵粬' && String.isBlank(robj.Loaner_cancel_Remarks__c)) {
+ if (robj.Loaner_cancel_reason__c == '鍏朵粬' && String.isBlank(robj.Loaner_cancel_Remarks__c)) {
ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR, '璇疯緭鍏ュ彇娑堢悊鐢卞娉�'));
return null;
}
@@ -1026,20 +1064,21 @@
robj.Cancel_Mem__c = UserInfo.getUserId();
// 鍙栨秷鐞嗙敱澶囨敞
//robj.Loaner_cancel_Remarks__c
- robj.Loaner_cancel_Remarks__c = robj.Loaner_cancel_Remarks__c==null ? robj.Loaner_cancel_reason__c : robj.Loaner_cancel_Remarks__c;//20210818 SFDC-C448KZ ljh end
+ robj.Loaner_cancel_Remarks__c = robj.Loaner_cancel_Remarks__c == null
+ ? robj.Loaner_cancel_reason__c
+ : robj.Loaner_cancel_Remarks__c; //20210818 SFDC-C448KZ ljh end
//鈥诲凡缁忓垎閰嶇殑鍫村悎 銉堛儶銇屻仹銈勩倞銇俱仚
//if(!String.isBlank(robj.Asset__c) && robj.Select_Time__c != null) {
- //鍊熷嚭澶囧搧Set涓�瑙堟槑缁� trigger 閲� clear Asset__c
- //鍊熷嚭澶囧搧Set涓�瑙堟槑缁�.鍒嗛厤鏃堕棿
- // if (robj.Select_Time__c != null) {
- // robj.Select_Time__c = null;
- // }
+ //鍊熷嚭澶囧搧Set涓�瑙堟槑缁� trigger 閲� clear Asset__c
+ //鍊熷嚭澶囧搧Set涓�瑙堟槑缁�.鍒嗛厤鏃堕棿
+ // if (robj.Select_Time__c != null) {
+ // robj.Select_Time__c = null;
+ // }
//}
raesds.add(robj);
}
}
-
}
}
@@ -1053,7 +1092,7 @@
// 鍙栨秷鎿嶄綔,鍙槸鍙栨秷宸查�夋嫨鐨勫垎閰�,鐢婚潰鍒锋柊
PageReference pg = new PageReference('/apex/AccessorySelect');
- pg.getParameters().put('pt_recid',parentId);
+ pg.getParameters().put('pt_recid', parentId);
pg.setRedirect(true);
return pg;
}
@@ -1096,7 +1135,11 @@
Map<String, List<Asset>> autoSelectMap = new Map<String, List<Asset>>();
// 鑷姩鍒嗛厤瀵硅薄
Map<String, List<Rental_Apply_Equipment_Set_Detail__c>> autoRsdMap = new Map<String, List<Rental_Apply_Equipment_Set_Detail__c>>();
- Map<Rental_Apply_Equipment_Set_Detail__c, Map<String, FixtureUtil.groupBean>> rsdMap = FixtureUtil.raesdGroupBy(selectedData, myComponentController.columus, bieWhere);
+ Map<Rental_Apply_Equipment_Set_Detail__c, Map<String, FixtureUtil.groupBean>> rsdMap = FixtureUtil.raesdGroupBy(
+ selectedData,
+ myComponentController.columus,
+ bieWhere
+ );
// 閬告姙娓堛伩銇槑缁�
if (selectedData.size() > 0) {
for (Integer i = 0; i < selectedData.size(); i++) {
@@ -1114,14 +1157,16 @@
Integer index = rsdGroupInfo.get(apikey).gnum;
if (!String.isBlank(rsdObj.Asset__c) && rsdObj.Select_Time__c != null) {
- rsdObj.put(apikey, FixtureUtil.assetFixtureStatusMap.get(FixtureUtil.assetFixtureStatus.Yi_Fen_Pei.ordinal()));
- }
- else {
+ rsdObj.put(
+ apikey,
+ FixtureUtil.assetFixtureStatusMap.get(FixtureUtil.assetFixtureStatus.Yi_Fen_Pei.ordinal())
+ );
+ } else {
rsdObj.put(apikey, FixtureUtil.assetFixtureStatusMap.get(index));
}
}
// liucheng 20171112
- else {
+ else {
rsdObj.put(apikey, rsdGroupInfo.get(apikey).gnum);
}
}
@@ -1167,7 +1212,10 @@
} else {
showButtonList.add(false);
// 鍙互鍒嗛厤銇牬鍚�
- if (FixtureUtil.assetFixtureStatusMap.get(FixtureUtil.assetFixtureStatus.Ke_Yi_Fen_Pei.ordinal()) == rsdObj.Fu_Shu_Pin_Fen_Pei_Jia__c) {
+ if (
+ FixtureUtil.assetFixtureStatusMap.get(FixtureUtil.assetFixtureStatus.Ke_Yi_Fen_Pei.ordinal()) ==
+ rsdObj.Fu_Shu_Pin_Fen_Pei_Jia__c
+ ) {
if (!autoRsdMap.containsKey(rsdObj.FSD_Fixture_Model_No__c)) {
autoRsdMap.put(rsdObj.FSD_Fixture_Model_No__c, new List<Rental_Apply_Equipment_Set_Detail__c>());
autoSelectMap.put(rsdObj.FSD_Fixture_Model_No__c, new List<Asset>());
@@ -1194,28 +1242,32 @@
// 妞滅储鏉′欢
String dateToday = String.valueOf(Date.today());
- String soql = 'SELECT Id, Fixture_Model_No_F__c, Pre_Arrival_wh_time__c, Ji_Zhong_Guan_Li_Ku_Cun__c,'
- + ' SerialNumber, Salesdepartment__c, Internal_asset_location__c,'
- + ' You_Xiao_Ku_Cun__c, Out_of_wh__c, Repairing_Count__c'
- + ' FROM Asset'
- + ' WHERE Asset_Owner__c = \'Olympus\' AND ' + FixtureUtil.getAssetSoqlBase()
- + ' and Asset_loaner_category__c != \'鑰楁潗\''
- + ' and RecordTypeId = \'01210000000kOPR\''
- + ' and Loaner_accsessary__c = true'
- + ' and Equipment_Type__c != \'妫�娴嬬敤澶囧搧\''
- + ' and Delete_Flag__c = False'
- + ' and Freeze_sign_Abandoned_Flag__c = False'
- + ' and (Consumable_Guaranteen_end__c = null or Consumable_Guaranteen_end__c >=' + dateToday + ')'
- + ' and Fixture_OneToOne_Link__c = null' // 闄勫睘鍝佷竴瀵逛竴鐨勪釜浣撶鐞嗕笉鑳芥绱㈠嚭鏉�
- + ' and Internal_asset_location__c != null'
- + ' and Product2.Fixture_Model_No_T__c IN :moset'
- + bieWhere +
- + ' and Ji_Zhong_Guan_Li_Ku_Cun__c > 0' ; // 鏈夐泦涓鐞嗗簱瀛樼殑
- soql += ' ORDER BY Product2.Fixture_Model_No_T__c, Consumable_Guaranteen_end__c ASC NULLS LAST, Ji_Zhong_Guan_Li_Ku_Cun__c DESC, Pre_Arrival_wh_time__c ASC NULLS FIRST, Id DESC';
+ String soql =
+ 'SELECT Id, Fixture_Model_No_F__c, Pre_Arrival_wh_time__c, Ji_Zhong_Guan_Li_Ku_Cun__c,' +
+ ' SerialNumber, Salesdepartment__c, Internal_asset_location__c,' +
+ ' You_Xiao_Ku_Cun__c, Out_of_wh__c, Repairing_Count__c' +
+ ' FROM Asset' +
+ ' WHERE Asset_Owner__c = \'Olympus\' AND ' +
+ FixtureUtil.getAssetSoqlBase() +
+ ' and Asset_loaner_category__c != \'鑰楁潗\'' +
+ ' and RecordTypeId = \'01210000000kOPR\'' +
+ ' and Loaner_accsessary__c = true' +
+ ' and Equipment_Type__c != \'妫�娴嬬敤澶囧搧\'' +
+ ' and Delete_Flag__c = False' +
+ ' and Freeze_sign_Abandoned_Flag__c = False' +
+ ' and (Consumable_Guaranteen_end__c = null or Consumable_Guaranteen_end__c >=' +
+ dateToday +
+ ')' +
+ ' and Fixture_OneToOne_Link__c = null' + // 闄勫睘鍝佷竴瀵逛竴鐨勪釜浣撶鐞嗕笉鑳芥绱㈠嚭鏉�
+ ' and Internal_asset_location__c != null' +
+ ' and Product2.Fixture_Model_No_T__c IN :moset' +
+ bieWhere +
+ +' and Ji_Zhong_Guan_Li_Ku_Cun__c > 0'; // 鏈夐泦涓鐞嗗簱瀛樼殑
+ soql += ' ORDER BY Product2.Fixture_Model_No_T__c, Consumable_Guaranteen_end__c ASC NULLS LAST, Ji_Zhong_Guan_Li_Ku_Cun__c DESC, Pre_Arrival_wh_time__c ASC NULLS FIRST, Id DESC';
System.debug('bieWhere' + bieWhere);
- List<Asset> assignList = Database.query(soql);
+ List<Asset> assignList = Database.query(soql);
for (Asset aSet : assignList) {
List<Asset> autoSelectList = autoSelectMap.get(aSet.Fixture_Model_No_F__c);
@@ -1244,15 +1296,17 @@
Integer autoKuCun = autoKuCunMap.get(aSet.Id);
if (autoKuCun > 0) {
rsdObj.Asset__c = aSet.Id;
- rsdObj.Asset__r = aSet; // TODO Select Asset 銈堛倞 琛ㄧずField銇ō瀹� myComponentController.strColumus
+ rsdObj.Asset__r = aSet; // TODO Select Asset 銈堛倞 琛ㄧずField銇ō瀹� myComponentController.strColumus
autoKuCun--;
autoKuCunMap.put(aSet.Id, autoKuCun);
- break; // 涓嬩竴鏉″�熷嚭鏄庣粏
+ break; // 涓嬩竴鏉″�熷嚭鏄庣粏
}
}
if (String.isBlank(rsdObj.Asset__c)) {
- rsdObj.put('Fu_Shu_Pin_Fen_Pei_Jia__c', FixtureUtil.assetFixtureStatusMap.get(
- FixtureUtil.AssetFixtureStatus.Mei_You_Ku_Cun.ordinal()));
+ rsdObj.put(
+ 'Fu_Shu_Pin_Fen_Pei_Jia__c',
+ FixtureUtil.assetFixtureStatusMap.get(FixtureUtil.AssetFixtureStatus.Mei_You_Ku_Cun.ordinal())
+ );
}
}
}
@@ -1262,7 +1316,7 @@
if (queryList.size() == 0) {
return;
}
-system.debug('鈼忊棌鈼忊棌鈼� setViewList END ' );
+ system.debug('鈼忊棌鈼忊棌鈼� setViewList END ');
}
public override void checkEvent() {
@@ -1282,4 +1336,4 @@
public String getBodyModelNoJson() {
return JSON.serialize(showButtonList);
}
-}
\ No newline at end of file
+}
diff --git a/force-app/main/default/classes/ArriveGoodsController.cls b/force-app/main/default/classes/ArriveGoodsController.cls
index 41fa019..256f301 100644
--- a/force-app/main/default/classes/ArriveGoodsController.cls
+++ b/force-app/main/default/classes/ArriveGoodsController.cls
@@ -1,424 +1,320 @@
public without sharing class ArriveGoodsController {
- public String barcode { get; set; }
- public Consumable_order__c coc { get; set; }
- /*****************鐢婚潰琛ㄧずBean******************/
- public List<ConsumableorderdetailsInfo> ConsumableorderdetailsRecords = new List<ConsumableorderdetailsInfo>();
- public List<ConsumableorderdetailsInfo> consumableorderdetailsRecordsUse = new List<ConsumableorderdetailsInfo>();
- public List<ConsumableorderdetailsInfo> consumableInventory { get; set; }
- public List<ConsumableorderdetailsInfo> detailsSummary { get; set; }
- public List<ConsumableorderdetailsInfo> consumableInventoryUse = new List<ConsumableorderdetailsInfo>();
- //鏇存柊鏄庣粏鍙栨秷鏃堕棿
- public List<Consumable_order_details2__c> consumableorderdetails2Cancle = new List<Consumable_order_details2__c>();
- // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
- Map<String, Consumable_order_details2__c> orderdetails2trMap = new Map<String, Consumable_order_details2__c>();
- // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 end
- public List<Consumable_order_details2__c> consumableorderdetails2Insert = new List<Consumable_order_details2__c>();
- public List<Consumable_order_details2__c> consumableorderdetails2Nobox = new List<Consumable_order_details2__c>();
- public List<ConsumableorderdetailsInfo> ConsumableorderdetailsRecordserror {
- get;
- set;
- }
- public transient List<ConsumableorderdetailsInfo> ConsumableorderdetailsRecordsdummy {
- get;
- set;
- }
- public List<ConsumableorderdetailsInfo> ShowGoodsofReturnList { get; set; }
- public List<ConsumableorderdetailsInfo> ShowGoodsofRemoveBoxReturnList {
- get;
- set;
- }
- //add by rentx 20210602 CHAN-C3K4ZQ
- public List<List<ConsumableorderdetailsInfo>> consumableorderdetailsRecordsview {
- get;
- set;
- }
- //add by rentx 20210602 CHAN-C3K4ZQ
+ public String barcode { get; set; }
+ public Consumable_order__c coc { get; set; }
+ /*****************鐢婚潰琛ㄧずBean******************/
+ public List<ConsumableorderdetailsInfo> ConsumableorderdetailsRecords = new List<ConsumableorderdetailsInfo>();
+ public List<ConsumableorderdetailsInfo> consumableorderdetailsRecordsUse = new List<ConsumableorderdetailsInfo>();
+ public List<ConsumableorderdetailsInfo> consumableInventory { get; set; }
+ public List<ConsumableorderdetailsInfo> detailsSummary { get; set; }
+ public List<ConsumableorderdetailsInfo> consumableInventoryUse = new List<ConsumableorderdetailsInfo>();
+ //鏇存柊鏄庣粏鍙栨秷鏃堕棿
+ public List<Consumable_order_details2__c> consumableorderdetails2Cancle = new List<Consumable_order_details2__c>();
+ // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
+ Map<String,Consumable_order_details2__c> orderdetails2trMap = new Map<String,Consumable_order_details2__c>();
+ // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 end
+ public List<Consumable_order_details2__c> consumableorderdetails2Insert= new List<Consumable_order_details2__c>();
+ public List<Consumable_order_details2__c> consumableorderdetails2Nobox= new List<Consumable_order_details2__c>();
+ public List<ConsumableorderdetailsInfo> ConsumableorderdetailsRecordserror { get; set; }
+ public transient List<ConsumableorderdetailsInfo> ConsumableorderdetailsRecordsdummy { get; set; }
+ public List<ConsumableorderdetailsInfo> ShowGoodsofReturnList{get;set;}
+ public List<ConsumableorderdetailsInfo> ShowGoodsofRemoveBoxReturnList{get;set;}
+ //add by rentx 20210602 CHAN-C3K4ZQ
+ public List<List<ConsumableorderdetailsInfo>> consumableorderdetailsRecordsview { get; set; }
+ //add by rentx 20210602 CHAN-C3K4ZQ
- public List<String> GrList = new List<String>();
- //瓒呭嚭瀹氳揣鏁伴噺鐨勪骇鍝�
- public List<String> cancellationProList = new List<String>();
- //閿欒淇℃伅
- public String alertMessage { get; set; }
- public integer getinventorysize() {
- return consumableInventory.size();
- }
- public integer geterrorsize() {
- return ConsumableorderdetailsRecordserror.size();
- }
- Set<String> noboxBarcodeList = new Set<String>();
- public transient Map<String, String> ExistIdMap = new Map<String, String>();
- public transient Map<String, String> ErrorIdMap = new Map<String, String>();
- public transient Map<String, String> AllMap = new Map<String, String>();
- Map<String, String> otherAgencyMap = new Map<String, String>();
- public transient Map<String, String> barMcodeMap = new Map<String, String>();
- Map<String, Integer> BarcodeCntMap = new Map<String, Integer>();
- //qi
- public transient List<String> BarCodeListP = new List<String>();
+ public List<String> GrList = new List<String>();
+ //瓒呭嚭瀹氳揣鏁伴噺鐨勪骇鍝�
+ public List<String> cancellationProList = new List<String>();
+ //閿欒淇℃伅
+ public String alertMessage {set;get;}
+ public integer getinventorysize(){
+ return consumableInventory.size();
+ }
+ public integer geterrorsize(){
+ return ConsumableorderdetailsRecordserror.size();
+ }
+ Set<String> noboxBarcodeList = new Set<String>();
+ public transient Map<String, String> ExistIdMap = new Map<String, String>();
+ public transient Map<String, String> ErrorIdMap = new Map<String, String>();
+ public transient Map<String, String> AllMap = new Map<String, String>();
+ Map<String, String> otherAgencyMap = new Map<String, String>();
+ public transient Map<String, String> barMcodeMap = new Map<String, String>();
+ Map<String, Integer> BarcodeCntMap = new Map<String, Integer>();
+ //qi
+ public transient List<String> BarCodeListP = new List<String>();
- // public transient Map<String, String> OrderAllMap = new Map<String, String>();
- Map<String, Decimal> orderProductCunMap = new Map<String, Decimal>();
- Map<String, Decimal> orderProductArrivedCunMap = new Map<String, Decimal>();
- Map<String, Decimal> orderWantArriveCunMap = new Map<String, Decimal>();
- //瓒呭嚭鍨嬪彿鍜屾暟閲�
- Map<String, Decimal> overOrderCunMap = new Map<String, Decimal>();
- //瓒呭嚭BARCODE鍜屽瀷鍙�
- Map<String, List<String>> overOrderBARcodeCunMap = new Map<String, List<String>>();
- list<String> overOrderBARcodeTTTTTT = new List<String>();
+ // public transient Map<String, String> OrderAllMap = new Map<String, String>();
+ Map<String, Decimal> orderProductCunMap = new Map<String, Decimal>();
+ Map<String, Decimal> orderProductArrivedCunMap = new Map<String, Decimal>();
+ Map<String, Decimal> orderWantArriveCunMap = new Map<String, Decimal>();
+ //瓒呭嚭鍨嬪彿鍜屾暟閲�
+ Map<String, Decimal> overOrderCunMap = new Map<String, Decimal>();
+ //瓒呭嚭BARCODE鍜屽瀷鍙�
+ Map<String, List<String>> overOrderBARcodeCunMap = new Map<String, List<String>>();
+ list<String> overOrderBARcodeTTTTTT = new list<String>();
- //涓嶇鍚堢殑barcode鍜屽瀷鍙�
- Map<String, List<String>> notEqualBARcodeCunMap = new Map<String, List<String>>();
- list<String> overOrderBARcodeSSSSSS = new List<String>();
- list<String> productList = new List<String>();
- list<String> notInlist = new List<String>();
- //涓嶉�夋嫨璁㈠崟鏃朵繚瀛樿鍗旾D銆佷骇鍝佸瀷鍙风敤
- //List<String> orderId = new List<String>();
- //List<String> prodName = new List<String>();
- //搴撳瓨鐧诲綍浣跨敤
- list<String> notInStorelist = new List<String>();
- list<String> exitBarCodeList = new List<String>();
+ //涓嶇鍚堢殑barcode鍜屽瀷鍙�
+ Map<String, List<String>> notEqualBARcodeCunMap = new Map<String, List<String>>();
+ list<String> overOrderBARcodeSSSSSS = new list<String>();
+ list<String> productList = new list<String>();
+ list<String> notInlist = new list<String>();
+ //涓嶉�夋嫨璁㈠崟鏃朵繚瀛樿鍗旾D銆佷骇鍝佸瀷鍙风敤
+ //List<String> orderId = new List<String>();
+ //List<String> prodName = new List<String>();
+ //搴撳瓨鐧诲綍浣跨敤
+ list<String> notInStorelist = new list<String>();
+ list<String> exitBarCodeList = new list<String>();
- // Map<String, Consumable_order_details2__c> reallMap = new Map<String, Consumable_order_details2__c>();
- Map<String, String> HosErrorMap = new Map<String, String>();
- List<String> HosErrorList = new List<String>();
- public String baseUrl { get; private set; }
- public String ESetId { get; set; }
- public String arriveId = '';
- private String accountid = null;
- private String accountName = null;
- //public String[] proidList =new String[]{};
- public Decimal orderCountAll = 0;
- public Decimal orderCountNotarrive = 0;
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- public id return_Order_id = null;
- public id inventory_Order_id = null;
- public boolean ReturnFLGbln { get; set; }
- public boolean saveFLGbln { get; set; }
- public String ArrType { get; set; }
- // 鐧诲綍鑰呭伐浣滃湴
- private String userWorkLocation;
- //鐢ㄦ埛浜у搧鍖哄垎
- public String userPro_Typestr = null;
- public String userPro_Type = null;
- public String product_Type = null;
- public Boolean EngFlag = false;
- public Boolean ETFlag = false;
+ // Map<String, Consumable_order_details2__c> reallMap = new Map<String, Consumable_order_details2__c>();
+ Map<String,String> HosErrorMap = new Map<String,String>();
+ List<String> HosErrorList = new List<String>();
+ public String baseUrl {get;private set;}
+ public String ESetId { get; set; }
+ public String arriveId = '';
+ private String accountid = null;
+ private String accountName = null;
+ //public String[] proidList =new String[]{};
+ public Decimal orderCountAll = 0;
+ public Decimal orderCountNotarrive = 0;
+ private id return_Order_id = null;
+ private id inventory_Order_id = null;
+ public boolean ReturnFLGbln {get;set;}
+ public boolean saveFLGbln {get;set;}
+ public String ArrType{get;set;}
+ // 鐧诲綍鑰呭伐浣滃湴
+ private String userWorkLocation;
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- public Boolean isLwc = false;
- public String returnError;
- public List<String> warningList;
- public List<String> errorList;
- public String urlType;
+ //鐢ㄦ埛浜у搧鍖哄垎
+ public String userPro_Typestr = null;
+ public String userPro_Type = null;
+ public String product_Type = null;
+ public Boolean EngFlag = false;
+ public Boolean ETFlag = false;
+ public ArriveGoodsController(){
+ baseUrl = URL.getSalesforceBaseUrl().toExternalForm();
+ ESetId = ApexPages.currentPage().getParameters().get('esetId');
+ ArrType = ApexPages.currentPage().getParameters().get('ArrType');
+ ConsumableorderdetailsRecords = new List<ConsumableorderdetailsInfo>();
+ ConsumableorderdetailsRecordserror = new List<ConsumableorderdetailsInfo>();
+ ConsumableorderdetailsRecordsdummy = new List<ConsumableorderdetailsInfo>();
+ consumableInventory = new List<ConsumableorderdetailsInfo>();
+ consumableorderdetailsRecordsUse = new List<ConsumableorderdetailsInfo>();
+ consumableInventoryUse = new List<ConsumableorderdetailsInfo>();
+ consumableorderdetails2Cancle = new List<Consumable_order_details2__c>();
+ orderdetails2trMap = new Map<String,Consumable_order_details2__c>();
+ detailsSummary = new List<ConsumableorderdetailsInfo>();
+ saveFLGbln = FALSE;
+ //overOrderBARcodeTTTTTT.add('');
+ //add by rentx 20210602 CHAN-C3K4ZQ start
+ consumableorderdetailsRecordsview = new List<List<ConsumableorderdetailsInfo>>();
+ //add by rentx 20210602 CHAN-C3K4ZQ end
+ // OrderAllMap = new Map<String, String>();
+ }
- public ArriveGoodsController() {
- baseUrl = URL.getSalesforceBaseUrl().toExternalForm();
- ESetId = ApexPages.currentPage().getParameters().get('esetId');
- ArrType = ApexPages.currentPage().getParameters().get('ArrType');
- ConsumableorderdetailsRecords = new List<ConsumableorderdetailsInfo>();
- ConsumableorderdetailsRecordserror = new List<ConsumableorderdetailsInfo>();
- ConsumableorderdetailsRecordsdummy = new List<ConsumableorderdetailsInfo>();
- consumableInventory = new List<ConsumableorderdetailsInfo>();
- consumableorderdetailsRecordsUse = new List<ConsumableorderdetailsInfo>();
- consumableInventoryUse = new List<ConsumableorderdetailsInfo>();
- consumableorderdetails2Cancle = new List<Consumable_order_details2__c>();
- orderdetails2trMap = new Map<String, Consumable_order_details2__c>();
- detailsSummary = new List<ConsumableorderdetailsInfo>();
- saveFLGbln = false;
- //overOrderBARcodeTTTTTT.add('');
- //add by rentx 20210602 CHAN-C3K4ZQ start
- consumableorderdetailsRecordsview = new List<List<ConsumableorderdetailsInfo>>();
- //add by rentx 20210602 CHAN-C3K4ZQ end
- // OrderAllMap = new Map<String, String>();
- }
+ //add by rentx 20210602 CHAN-C3K4ZQ start 鍑洪敊鐨勫師鍥犳槸椤甸潰鏈�澶氬睍绀�1000鏉℃暟鎹�,浣嗘槸闇�瑕佸睍绀虹殑鏁版嵁瓒呰繃浜�1000鏉�,鐜板湪鎶婂睍绀轰笂绾挎敼涓�1000 * 1000
+ public void makeRecordsView(List<ConsumableorderdetailsInfo> recordsdummy){
+ consumableorderdetailsRecordsview = new List<List<ConsumableorderdetailsInfo>>();
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- public ArriveGoodsController(String eSetId, String arrType) {
- this.ESetId = eSetId;
- this.ArrType = arrType;
- ConsumableorderdetailsRecords = new List<ConsumableorderdetailsInfo>();
- ConsumableorderdetailsRecordserror = new List<ConsumableorderdetailsInfo>();
- ConsumableorderdetailsRecordsdummy = new List<ConsumableorderdetailsInfo>();
- consumableInventory = new List<ConsumableorderdetailsInfo>();
- consumableorderdetailsRecordsUse = new List<ConsumableorderdetailsInfo>();
- consumableInventoryUse = new List<ConsumableorderdetailsInfo>();
- consumableorderdetails2Cancle = new List<Consumable_order_details2__c>();
- orderdetails2trMap = new Map<String, Consumable_order_details2__c>();
- detailsSummary = new List<ConsumableorderdetailsInfo>();
- saveFLGbln = false;
- consumableorderdetailsRecordsview = new List<List<ConsumableorderdetailsInfo>>();
- noboxBarcodeList = new Set<String>();
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- warningList = new List<String>();
- errorList = new List<String>();
- returnError = null;
- urlType = null;
- }
-
- //add by rentx 20210602 CHAN-C3K4ZQ start 鍑洪敊鐨勫師鍥犳槸椤甸潰鏈�澶氬睍绀�1000鏉℃暟鎹�,浣嗘槸闇�瑕佸睍绀虹殑鏁版嵁瓒呰繃浜�1000鏉�,鐜板湪鎶婂睍绀轰笂绾挎敼涓�1000 * 1000
- public void makeRecordsView(List<ConsumableorderdetailsInfo> recordsdummy) {
- consumableorderdetailsRecordsview = new List<List<ConsumableorderdetailsInfo>>();
-
- if (recordsdummy.size() > 1000) {
- List<ConsumableorderdetailsInfo> ConsumableorderdetailsRecordsbreak = new List<ConsumableorderdetailsInfo>();
- List<ConsumableorderdetailsInfo> ConsumableorderdetailsRecordsbreakover = new List<ConsumableorderdetailsInfo>();
- ConsumableorderdetailsInfo c = null;
- ConsumableorderdetailsRecordsbreak.clear();
- ConsumableorderdetailsRecordsbreakover.clear();
- consumableorderdetailsRecordsview.clear();
- //閫夋嫨浜у搧view
- ConsumableorderdetailsRecordsbreak = new List<ConsumableorderdetailsInfo>();
- ConsumableorderdetailsRecordsbreakover = new List<ConsumableorderdetailsInfo>();
- if (recordsdummy.size() > 1000) {
- for (Integer i = 0; i < recordsdummy.size(); i++) {
- if (i < 1000) {
- c = recordsdummy.get(i);
- ConsumableorderdetailsRecordsbreak.add(c);
- } else {
- c = recordsdummy.get(i);
- ConsumableorderdetailsRecordsbreakover.add(c);
- }
- }
- consumableorderdetailsRecordsview.add(
- ConsumableorderdetailsRecordsbreak
- );
- consumableorderdetailsRecordsview.add(
- ConsumableorderdetailsRecordsbreakover
- );
- } else {
- consumableorderdetailsRecordsview.add(recordsdummy);
- }
+ if(recordsdummy.size() > 1000){
+ List<ConsumableorderdetailsInfo> ConsumableorderdetailsRecordsbreak = new List<ConsumableorderdetailsInfo>();
+ List<ConsumableorderdetailsInfo> ConsumableorderdetailsRecordsbreakover = new List<ConsumableorderdetailsInfo>();
+ ConsumableorderdetailsInfo c = null;
+ ConsumableorderdetailsRecordsbreak.clear();
+ ConsumableorderdetailsRecordsbreakover.clear();
+ consumableorderdetailsRecordsview.clear();
+ //閫夋嫨浜у搧view
+ ConsumableorderdetailsRecordsbreak = new List<ConsumableorderdetailsInfo>();
+ ConsumableorderdetailsRecordsbreakover = new List<ConsumableorderdetailsInfo>();
+ if(recordsdummy.size() > 1000){
+ for(Integer i = 0; i < recordsdummy.size(); i++){
+ if(i < 1000){
+ c = recordsdummy.get(i);
+ ConsumableorderdetailsRecordsbreak.add(c);
+ }else{
+ c = recordsdummy.get(i);
+ ConsumableorderdetailsRecordsbreakover.add(c);
+ }
+ }
+ consumableorderdetailsRecordsview.add(ConsumableorderdetailsRecordsbreak);
+ consumableorderdetailsRecordsview.add(ConsumableorderdetailsRecordsbreakover);
+ }else{
+ consumableorderdetailsRecordsview.add(recordsdummy);
+ }
// Integer count = recordsdummy.size() / 1000;
// Integer last = recordsdummy.size() - (1000*count);
- // for(Integer i = 0; i < count ; i++){
- // List<ConsumableorderdetailsInfo> tempList = new List<ConsumableorderdetailsInfo>();
- // for(Integer j=0; j < 1000; j++){
- // tempList.add(recordsdummy.get(i * count + j ));
- // // itemList.add(resList.get(i*count+j));
- // }
- // consumableorderdetailsRecordsview.add(tempList);
- // }
- // if (last > 0) {
- // List<ConsumableorderdetailsInfo> tempList = new List<ConsumableorderdetailsInfo>();
- // for(Integer j=0; j < last; j++){
- // tempList.add(recordsdummy.get(count * 1000 + j ));
- // // itemList.add(resList.get(i*count+j));
- // }
- // consumableorderdetailsRecordsview.add(tempList);
- // }
- } else {
- consumableorderdetailsRecordsview.add(recordsdummy);
- }
- }
- //add by rentx 20210602 CHAN-C3K4ZQ end
- public void init() {
- // String userId = '00510000007cthP';
- String userId = UserInfo.getUserId();
- List<user> Useracc = new List<user>();
- Useracc = [
- SELECT accountid, Work_Location__c, UserPro_Type__c
- FROM user
- WHERE id = :userId
- ];
- accountid = Useracc[0].accountid;
- //--------AddStart-----XHL--------------20181008-------------
- userPro_Type = Useracc[0].UserPro_Type__c;
- if (String.isBlank(userPro_Type)) {
- userPro_Type = 'ET';
- }
-
- if (userPro_Type == 'ENG') {
- product_Type = 'ET';
- EngFlag = true;
- } else {
- product_Type = 'ENG';
- ETFlag = true;
- }
- userPro_Typestr = '%' + userPro_Type + '%';
- //--------AddEnd-----XHL--------------20181008-------------
- userWorkLocation = Useracc[0].Work_Location__c;
- system.debug('userWorkLocation' + userWorkLocation);
- List<account> accountInfo = [
- SELECT Name
- FROM account
- WHERE id = :accountid
- ];
- accountName = accountInfo[0].Name;
- system.debug('accountName' + accountName);
- coc = new Consumable_order__c();
- if (ArrType == 'ReG') {
- ReturnFLGbln = true;
- } else {
- ReturnFLGbln = false;
- }
- if (ESetId != '' && ESetId != null) {
- List<Consumable_order__c> qs = new List<Consumable_order__c>();
- List<Consumable_order_details2__c> reSet1 = new List<Consumable_order_details2__c>();
- List<Consumable_Orderdetails__c> reSet = new List<Consumable_Orderdetails__c>();
- qs = [
- SELECT
- Id,
- Name,
- Order_status__c,
- Dealer_Info__c,
- Deliver_date__c,
- ReturnGs_Upload_Date__c,
- Order_Reason__c,
- Order_date__c,
- Contract_application_decision__c,
- Order_type__c,
- Total_num__c,
- OrderNumber_arrived__c,
- Delivery_detail_count__c,
- OrderNumber_notarrive__c,
- orderPattern__c
- FROM Consumable_order__c
- WHERE
- Id = :ESetId
- AND Order_Owner_WorkLocal__c = :userWorkLocation
- AND Dealer_Info__c = :accountid
- ];
- if (qs.size() > 0) {
- coc = qs[0];
- orderCountAll = coc.Total_num__c;
- orderCountNotarrive = coc.OrderNumber_notarrive__c;
- }
- //浜у搧瀹氳揣鏁伴噺
- reSet = [
- SELECT Asset_Model_No__c, Consumable_order__c, Consumable_count__c
- FROM Consumable_Orderdetails__c
- WHERE
- Consumable_order__c = :ESetId
- AND Order_Owner_WorkLocal__c = :userWorkLocation
- ];
- for (Integer i = 0; i < reSet.size(); i++) {
- productList.add(reSet[i].Asset_Model_No__c);
- orderProductCunMap.put(
- reSet[i].Asset_Model_No__c,
- reSet[i].Consumable_count__c
- );
- orderProductArrivedCunMap.put(reSet[i].Asset_Model_No__c, 0);
- orderWantArriveCunMap.put(reSet[i].Asset_Model_No__c, 0);
- overOrderCunMap.put(reSet[i].Asset_Model_No__c, 0);
- overOrderBARcodeCunMap.put(
- reSet[i].Asset_Model_No__c,
- overOrderBARcodeTTTTTT
- );
- //overOrderCunMap.put(reSet[i].Asset_Model_No__c,0);
- }
- //
- reSet1 = [
- SELECT
- Id,
- Name,
- Intra_Trade_List_RMB__c,
- Asset_Model_No__c,
- Consumable_Product__c,
- Consumable_Product__r.Name,
- Consumable_Product__r.Name__c,
- Sterilization_limit__c,
- Deliver_date__c,
- Bar_Code__c,
- Arrive_date__c,
- Send_Date__c,
- Consumable_order_minor__r.Name,
- Consumable_order_minor__c,
- Dealer_Arrive__c,
- Guarantee_period_for_products__c,
- CFDA_Status__c,
- Box_Piece__c,
- Rrturn_count__c,
- ProductPacking_list_manual__c,
- Report_Product_Approbation__c,
- Report_Product_Expiration__c,
- //add by rentx 2020-10-14 start
- ContractNo_text__c /*,ContractNo__c1*/,
- // tcm start
- Consumable_order_minor__r.ContractNo__c
- // tcm end
- //add by rentx 2020-10-14 end
- FROM Consumable_order_details2__c
- WHERE
- recordtypeid = :System.Label.RT_ConOrderDetail2_Delivery
- AND Arrive_Owner_Work_Location__c = :userWorkLocation
- AND Consumable_order_minor__c = :ESetId
- AND Dealer_Arrive__c = TRUE
- AND Box_Piece__c != '涓�'
- ];
- for (Integer i = 0; i < reSet1.size(); i++) {
- // OrderAllMap.put(reSet1[i].Bar_Code__c,reSet1[i].Bar_Code__c);
- //init鐨勬椂鍊欎笉灞曠ず宸茬粡鍏ュ簱鐨勬槑缁� by rentx 20210617 CHAN-C3K4ZQ
- // ConsumableorderdetailsRecordsdummy.add(new ConsumableorderdetailsInfo(reSet1[i]));
- //update by rentx 20210617 end CHAN-C3K4ZQ
- if (
- orderProductArrivedCunMap.containsKey(reSet1[i].Asset_Model_No__c)
- ) {
- orderProductArrivedCunMap.put(
- reSet1[i].Asset_Model_No__c,
- orderProductArrivedCunMap.get(reSet1[i].Asset_Model_No__c) + 1
- );
+ // for(Integer i = 0; i < count ; i++){
+ // List<ConsumableorderdetailsInfo> tempList = new List<ConsumableorderdetailsInfo>();
+ // for(Integer j=0; j < 1000; j++){
+ // tempList.add(recordsdummy.get(i * count + j ));
+ // // itemList.add(resList.get(i*count+j));
+ // }
+ // consumableorderdetailsRecordsview.add(tempList);
+ // }
+ // if (last > 0) {
+ // List<ConsumableorderdetailsInfo> tempList = new List<ConsumableorderdetailsInfo>();
+ // for(Integer j=0; j < last; j++){
+ // tempList.add(recordsdummy.get(count * 1000 + j ));
+ // // itemList.add(resList.get(i*count+j));
+ // }
+ // consumableorderdetailsRecordsview.add(tempList);
+ // }
+ }else{
+ consumableorderdetailsRecordsview.add(recordsdummy);
}
- }
- //add by rentx 20210602 start CHAN-C3K4ZQ
- // makeRecordsView(ConsumableorderdetailsRecordsdummy);
- //add by rentx 20210602 end CHAN-C3K4ZQ
}
- }
- //========20160311======ADD_Start================================
- // 灏嗛〉闈㈡垨鍙栧緱BarCode鍘绘帀閲嶅鐨勶紝杞崲鎴怢ist
- //========20160311======ADD_Start================================
- public List<String> ParseBarCode(String Code) {
- String[] Cache = new List<String>{};
- Cache = Code.split('\n');
- Set<String> Buff = new Set<String>();
- for (String A : Cache) {
- Buff.add(A.toUpperCase());
- }
- List<String> outPut = new List<String>();
- for (String B : Buff) {
- B = B.trim();
- if (B.length() > 8) {
- String tracingCode = B.substring(B.length() - 5, B.length());
- barMcodeMap.put(B, tracingCode);
- }
- outPut.add(B);
- }
- system.debug('barMcodeMap绛変簬' + barMcodeMap);
- return outPut;
- }
+ //add by rentx 20210602 CHAN-C3K4ZQ end
+ public void init() {
+ // String userId = '00510000007cthP';
+ String userId = UserInfo.getUserId();
+ List<user> Useracc = New List<user>();
+ Useracc = [SELECT accountid, Work_Location__c,UserPro_Type__c FROM user WHERE id =:userId];
+ accountid = Useracc[0].accountid;
+ //--------AddStart-----XHL--------------20181008-------------
+ userPro_Type = Useracc[0].UserPro_Type__c;
+ if(String.isBlank(userPro_Type)){
+ userPro_Type = 'ET';
+ }
- //========20160311======ADD_End==================================
- //鑾峰彇鏄庣粏
- public void SearchPro() {
- //浠庝笅杈圭Щ涓婃潵 by Link 2023-5-23
- if (barcode == null || barcode.trim() == '') {
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- returnError = '璇疯緭鍏arCode鍙�';
- } else {
- ApexPages.addmessage(
- new ApexPages.message(ApexPages.severity.INFO, '璇疯緭鍏arCode鍙枫��')
- );
- }
- return;
+ if(userPro_Type == 'ENG'){
+ product_Type = 'ET';
+ EngFlag = true;
+ }else{
+ product_Type = 'ENG';
+ ETFlag = true;
+ }
+ userPro_Typestr = '%' + userPro_Type + '%';
+ //--------AddEnd-----XHL--------------20181008-------------
+ userWorkLocation = Useracc[0].Work_Location__c;
+ system.debug('userWorkLocation'+ userWorkLocation);
+ List<account> accountInfo = [SELECT Name FROM account WHERE id =:accountid];
+ accountName = accountInfo[0].Name;
+ system.debug('accountName'+ accountName);
+ coc = new Consumable_order__c();
+ if(ArrType=='ReG'){
+ ReturnFLGbln = true;
+ }else{
+ ReturnFLGbln = false;
+ }
+ if(ESetId != '' && ESetId !=null){
+ List<Consumable_order__c> qs = New List<Consumable_order__c>();
+ List<Consumable_order_details2__c> reSet1 = New List<Consumable_order_details2__c>();
+ List<Consumable_Orderdetails__c> reSet = New List<Consumable_Orderdetails__c>();
+ qs = [SELECT Id,Name,Order_status__c,Dealer_Info__c,Deliver_date__c,ReturnGs_Upload_Date__c,
+ Order_Reason__c,Order_date__c,
+ Contract_application_decision__c,Order_type__c,Total_num__c,
+ OrderNumber_arrived__c,Delivery_detail_count__c,OrderNumber_notarrive__c,orderPattern__c
+ FROM Consumable_order__c
+ WHERE Id =:ESetId AND Order_Owner_WorkLocal__c =: userWorkLocation
+ AND Dealer_Info__c = :accountid];
+ if (qs.size()>0){
+ coc = qs[0];
+ orderCountAll = coc.Total_num__c;
+ orderCountNotarrive = coc.OrderNumber_notarrive__c;
+ }
+ //浜у搧瀹氳揣鏁伴噺
+ reSet = [SELECT Asset_Model_No__c,
+ Consumable_order__c,
+ Consumable_count__c
+ FROM Consumable_Orderdetails__c
+ WHERE Consumable_order__c = :ESetId AND Order_Owner_WorkLocal__c =: userWorkLocation];
+ for (Integer i = 0; i < reSet.size(); i++) {
+ productList.add(reSet[i].Asset_Model_No__c);
+ orderProductCunMap.put(reSet[i].Asset_Model_No__c,reSet[i].Consumable_count__c);
+ orderProductArrivedCunMap.put(reSet[i].Asset_Model_No__c,0);
+ orderWantArriveCunMap.put(reSet[i].Asset_Model_No__c,0);
+ overOrderCunMap.put(reSet[i].Asset_Model_No__c,0);
+ overOrderBARcodeCunMap.put(reSet[i].Asset_Model_No__c,overOrderBARcodeTTTTTT);
+ //overOrderCunMap.put(reSet[i].Asset_Model_No__c,0);
+ }
+ //
+ reSet1 = [SELECT Id,
+ Name,
+ Intra_Trade_List_RMB__c,
+ Asset_Model_No__c,
+ Consumable_Product__c,
+ Consumable_Product__r.Name,
+ Consumable_Product__r.Name__c,
+ Sterilization_limit__c,
+ Deliver_date__c,
+ Bar_Code__c,
+ Arrive_date__c,
+ Send_Date__c,
+ Consumable_order_minor__r.Name,
+ Consumable_order_minor__c,
+ Dealer_Arrive__c,
+ Guarantee_period_for_products__c,
+ CFDA_Status__c,
+ Box_Piece__c,
+ Rrturn_count__c,
+ ProductPacking_list_manual__c,
+ Report_Product_Approbation__c,
+ Report_Product_Expiration__c
+ //add by rentx 2020-10-14 start
+ ,ContractNo_text__c/*,ContractNo__c1*/
+ // tcm start
+ ,Consumable_order_minor__r.ContractNo__c
+ // tcm end
+ //add by rentx 2020-10-14 end
+ FROM Consumable_order_details2__c
+ WHERE recordtypeid = :System.Label.RT_ConOrderDetail2_Delivery
+ AND Arrive_Owner_Work_Location__c = : userWorkLocation
+ AND Consumable_order_minor__c = :ESetId
+ AND Dealer_Arrive__c = true
+ AND Box_Piece__c != '涓�' ];
+ for (Integer i = 0; i < reSet1.size(); i++) {
+ // OrderAllMap.put(reSet1[i].Bar_Code__c,reSet1[i].Bar_Code__c);
+ //init鐨勬椂鍊欎笉灞曠ず宸茬粡鍏ュ簱鐨勬槑缁� by rentx 20210617 CHAN-C3K4ZQ
+ // ConsumableorderdetailsRecordsdummy.add(new ConsumableorderdetailsInfo(reSet1[i]));
+ //update by rentx 20210617 end CHAN-C3K4ZQ
+ if(orderProductArrivedCunMap.containsKey(reSet1[i].Asset_Model_No__c)){
+ orderProductArrivedCunMap.put(reSet1[i].Asset_Model_No__c,orderProductArrivedCunMap.get(reSet1[i].Asset_Model_No__c)+1);
+ }
+ }
+ //add by rentx 20210602 start CHAN-C3K4ZQ
+ // makeRecordsView(ConsumableorderdetailsRecordsdummy);
+ //add by rentx 20210602 end CHAN-C3K4ZQ
+ }
}
- notInlist = new List<String>();
- otherAgencyMap = new Map<String, String>();
- barMcodeMap = new Map<String, String>();
- consumableInventory = new List<ConsumableorderdetailsInfo>();
- consumableInventoryUse = new List<ConsumableorderdetailsInfo>();
- consumableorderdetails2Cancle = new List<Consumable_order_details2__c>();
- orderdetails2trMap = new Map<String, Consumable_order_details2__c>();
- //update by Link 20230428
- if (isLwc) {
- noboxBarcodeList = new Set<String>();
+ //========20160311======ADD_Start================================
+ // 灏嗛〉闈㈡垨鍙栧緱BarCode鍘绘帀閲嶅鐨勶紝杞崲鎴怢ist
+ //========20160311======ADD_Start================================
+ public List<String> ParseBarCode(String Code){
+ String[] Cache = new String[]{};
+ Cache = Code.split('\n');
+ Set <String> Buff = new Set<String>();
+ for(String A : Cache){
+ Buff.add(A.toUpperCase());
+ }
+ List<String> outPut = new List<String>();
+ for(String B :Buff){
+ B = B.trim();
+ if(B.length() > 8){
+ String tracingCode = B.substring(B.length() - 5,B.length());
+ barMcodeMap.put(B,tracingCode);
+ }
+ outPut.add(B);
+ }system.debug('barMcodeMap绛変簬'+barMcodeMap);
+ return outPut;
}
- //add by rentx 2021-01-27 start
- HosErrorList = new List<String>();
- HosErrorMap = new Map<String, String>();
- //add by rentx 2021-01-27 end
+
+
+ //========20160311======ADD_End==================================
+ //鑾峰彇鏄庣粏
+ public void SearchPro() {
+ notInlist = new list<String>();
+ otherAgencyMap = new Map<String, String>();
+ barMcodeMap = new Map<String, String>();
+ consumableInventory = new List<ConsumableorderdetailsInfo>();
+ consumableInventoryUse = new List<ConsumableorderdetailsInfo>();
+ consumableorderdetails2Cancle = new List<Consumable_order_details2__c>();
+ orderdetails2trMap = new Map<String,Consumable_order_details2__c>();
+ //add by rentx 2021-01-27 start
+ HosErrorList = new List<String>();
+ HosErrorMap = new Map<String,String>();
+ //add by rentx 2021-01-27 end
noboxBarcodeList.clear();
//鍐嶆绱㈤」鐩竻绌�
@@ -478,4126 +374,2087 @@
//}
}
}*/
- ConsumableorderdetailsRecords = new List<ConsumableorderdetailsInfo>();
- BarCodeListP = new List<String>();
- BarCodeListP = ParseBarCode(barcode);
- Consumable_order_details2__c p = new Consumable_order_details2__c();
- List<Consumable_order_details2__c> Ins = new List<Consumable_order_details2__c>();
- List<Consumable_order_details2__c> reSet = new List<Consumable_order_details2__c>();
- List<Consumable_order_details2__c> reSet1 = new List<Consumable_order_details2__c>();
- //绉诲埌鏈�涓婅竟 by Link 2023-5-23
- // if(barcode == null || barcode.trim() ==''){
- // //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- // if(isLwc){
- // returnError = '璇疯緭鍏arCode鍙�';
- // }else {
- // ApexPages.addmessage(new ApexPages.message(ApexPages.severity.INFO,'璇疯緭鍏arCode鍙枫��'));
- // }
- // return;
- // }
- //瀵规瘮鍏ㄩ儴搴撳瓨涓槸鍚﹀瓨鍦ㄧ鐞嗙紪鐮佷竴鏍凤紝barcode鍙蜂笉涓�鏍风殑浜у搧
- reSet1 = [
- SELECT Id, Name, TracingCode__c, Bar_Code__c, Report_Product_Expiration__c
- FROM Consumable_order_details2__c
- WHERE
- Dealer_Arrive__c = TRUE
- AND Dealer_Shipment__c = FALSE
- AND Dealer_Saled__c = FALSE
- AND Lose_Flag__c = FALSE
- AND Dealer_Returned__c = FALSE
- AND Cancellation_Flag__c = FALSE
- AND TracingCode__c IN :barMcodeMap.values()
- AND Bar_Code__c NOT IN :barMcodeMap.keySet()
- AND Dealer_Info_text__c = :accountName
- AND Arrive_Owner_Work_Location__c = :userWorkLocation
- ORDER BY Name
- ];
- if (reSet1.size() > 0) {
- for (Integer i = 0; i < reSet1.size(); i++) {
- if (ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)) {
- // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
- continue;
- } else {
- for (String str : barMcodeMap.keySet()) {
- if (barMcodeMap.get(str) == reSet1[i].TracingCode__c) {
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- errorList.add(
- str +
- ' 鐨勭鐞嗙紪鐮佸凡缁忓瓨鍦ㄤ簬绯荤粺鐨勫簱瀛樹腑锛岃纭杈撳叆淇℃伅鏄惁鏈夎銆�'
- );
- } else {
- ApexPages.addmessage(
- new ApexPages.message(
- ApexPages.severity.ERROR,
- str +
- ' 鐨勭鐞嗙紪鐮佸凡缁忓瓨鍦ㄤ簬绯荤粺鐨勫簱瀛樹腑锛岃纭杈撳叆淇℃伅鏄惁鏈夎銆�'
- )
- );
- }
- ErrorIdMap.put(str, str);
- ErrorIdMap.put(reSet1[i].Bar_Code__c, reSet1[i].Bar_Code__c);
- }
- }
- }
- }
- }
- //绠$悊缂栫爜涓虹┖鐨勪骇鍝�
- reSet1 = [
- SELECT
- Id,
- Name,
- Consumable_Product__r.Name__c,
- Consumable_Product__c,
- Consumable_Product__r.Name,
- Sterilization_limit__c,
- Deliver_date__c,
- Bar_Code__c,
- Box_Piece__c,
- Arrive_date__c,
- Send_Date__c,
- Consumable_order_minor__r.Name,
- Consumable_order_minor__c,
- TracingCode__c,
- Report_Product_Expiration__c
- FROM Consumable_order_details2__c
- WHERE
- Bar_Code__c IN :BarCodeListP
- AND Dealer_Info_text__c = :accountName
- //AND Arrive_Owner_Work_Location__c =: userWorkLocation
- AND (TracingCode__c = NULL
- OR TracingCode__c = '')
- ORDER BY Name
- ];
-
- if (reSet1.size() > 0) {
- for (Integer i = 0; i < reSet1.size(); i++) {
- if (ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)) {
- // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
- continue;
- } else {
- String str = '璇ヤ骇鍝佹病鏈夌鐞嗙紪鐮侊紝鏃犳硶鍏ュ簱';
- ConsumableorderdetailsRecordserror.add(
- new ConsumableorderdetailsInfo(reSet1[i], str)
- );
- ErrorIdMap.put(reSet1[i].Bar_Code__c, reSet1[i].Bar_Code__c);
- }
- }
- }
- //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.INFO, '绠$悊缂栫爜涓虹┖鐨勪骇鍝� ' + ErrorIdMap));
- //鏁翠綋鍒拌揣
- System.debug('EsetId===>' + EsetId);
- System.debug('ArrType===>' + ArrType);
- if (EsetId == null || EsetId == '') {
- if (ArrType != 'ReG') {
- //鍒拌揣浣嗕骇鍝佺被鍨嬩笌鐢ㄦ埛鐨勭被鍨嬩笉绗�
- reSet1 = [
- SELECT
- Id,
- Name,
- Intra_Trade_List_RMB__c,
- Asset_Model_No__c,
- Consumable_Product__c,
- Consumable_Product__r.Name,
- Consumable_Product__r.Name__c,
- Consumable_Product__r.Asset_Model_No__c,
- Sterilization_limit__c,
- Deliver_date__c,
- Bar_Code__c,
- Arrive_date__c,
- Send_Date__c,
- Consumable_order_minor__r.Name,
- Consumable_order_minor__c,
- Dealer_Arrive__c,
- Guarantee_period_for_products__c,
- CFDA_Status__c,
- ProductPacking_list_manual__c,
- Report_Product_Approbation__c,
- Report_Product_Expiration__c,
- Box_Piece__c,
- Rrturn_count__c,
- Product_Type__c,
- ContractNo_text__c /*,ContractNo__c1*/,
- // tcm start
- Consumable_order_minor__r.ContractNo__c
- // tcm end
- FROM Consumable_order_details2__c
- WHERE
- Bar_Code__c IN :BarCodeListP
- AND (NOT Product_Type__c LIKE :userPro_Typestr)
- AND Dealer_Info_text__c = :accountName
- AND ((Consumable_order_minor__c != NULL
- AND Consumable_order_minor__r.Order_Owner_WorkLocal__c = :userWorkLocation)
- OR Consumable_order_minor__c = NULL)
- ORDER BY Name
- ];
-
- if (reSet1.size() > 0) {
- for (Integer i = 0; i < reSet1.size(); i++) {
- if (ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)) {
- // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
- continue;
- } else {
- String str =
- '浜у搧绫诲瀷[' +
- reSet1[i].Product_Type__c +
- ']涓庣敤鎴风殑绫诲瀷[' +
- userPro_Type +
- ']涓嶇';
- ConsumableorderdetailsRecordserror.add(
- new ConsumableorderdetailsInfo(reSet1[i], str)
- );
- ErrorIdMap.put(reSet1[i].Bar_Code__c, reSet1[i].Bar_Code__c);
- }
- }
- }
- System.debug('reSet1===>' + reSet1);
- //add by Wang Xueqin
- //鍒拌揣浣嗕骇鍝佺被鍨嬩笌鐢ㄦ埛鐨勭被鍨嬩笉绗�
- reSet1 = [
- SELECT
- Id,
- Name,
- Intra_Trade_List_RMB__c,
- Asset_Model_No__c,
- Consumable_Product__c,
- Consumable_Product__r.Name,
- Consumable_Product__r.Name__c,
- Consumable_Product__r.Asset_Model_No__c,
- Sterilization_limit__c,
- Deliver_date__c,
- Bar_Code__c,
- Arrive_date__c,
- Send_Date__c,
- Consumable_order_minor__r.Name,
- Consumable_order_minor__c,
- Dealer_Arrive__c,
- Guarantee_period_for_products__c,
- CFDA_Status__c,
- ProductPacking_list_manual__c,
- Report_Product_Approbation__c,
- Report_Product_Expiration__c,
- Box_Piece__c,
- Rrturn_count__c,
- Product_Type__c,
- ContractNo_text__c,
- Consumable_order_minor__r.ContractNo__c
- FROM Consumable_order_details2__c
- WHERE
- Bar_Code__c IN :BarCodeListP
- AND (NOT Product_Type__c LIKE :userPro_Typestr)
- ];
-
- if (reSet1.size() > 0) {
- for (Integer i = 0; i < reSet1.size(); i++) {
- if (ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)) {
- // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
- continue;
- } else {
- String str =
- '浜у搧绫诲瀷[' +
- reSet1[i].Product_Type__c +
- ']涓庣敤鎴风殑绫诲瀷[' +
- userPro_Type +
- ']涓嶇';
- ConsumableorderdetailsRecordserror.add(
- new ConsumableorderdetailsInfo(reSet1[i], str)
- );
- ErrorIdMap.put(reSet1[i].Bar_Code__c, reSet1[i].Bar_Code__c);
- }
- }
- }
- System.debug('reSet1===>1' + reSet1);
- //end
-
- //閿�鍞骇鍝�
- reSet1 = [
- SELECT
- Id,
- Name,
- Consumable_Product__r.Name__c,
- Consumable_Product__c,
- Consumable_Product__r.Name,
- Sterilization_limit__c,
- Deliver_date__c,
- Bar_Code__c,
- Box_Piece__c,
- Arrive_date__c,
- Send_Date__c,
- Consumable_order_minor__r.Name,
- Consumable_order_minor__c,
- recordtypeid,
- Consumable_order_minor__r.Arrive_Order__c,
- OwnerId,
- Report_Product_Expiration__c
- FROM Consumable_order_details2__c
- WHERE
- Dealer_Saled__c = TRUE
- AND Dealer_Returned__c = FALSE
- AND Bar_Code__c IN :BarCodeListP
- AND Dealer_Info_text__c = :accountName
- AND (Arrive_Owner_Work_Location__c = :userWorkLocation
- OR OwnerId = :System.Label.User_OlympusSystem)
- ORDER BY Name
- ];
- if (reSet1.size() > 0) {
- for (Integer i = 0; i < reSet1.size(); i++) {
- if (ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)) {
- // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
- continue;
- } else {
- String str = '';
- if (reSet1[i].OwnerId == System.Label.User_OlympusSystem) {
- str = '璇ュ晢鍝佹槸鐩撮攢浜у搧璇峰厛杩斿搧';
- } else {
- str = '璇ュ晢鍝佸凡缁忛攢鍞�';
- }
- ConsumableorderdetailsRecordserror.add(
- new ConsumableorderdetailsInfo(reSet1[i], str)
- );
- ErrorIdMap.put(reSet1[i].Bar_Code__c, reSet1[i].Bar_Code__c);
- }
- }
- }
- //鍑哄簱浜у搧
- reSet1 = [
- SELECT
- Id,
- Name,
- Consumable_Product__r.Name__c,
- Consumable_Product__c,
- Consumable_Product__r.Name,
- Sterilization_limit__c,
- Deliver_date__c,
- Bar_Code__c,
- Box_Piece__c,
- Arrive_date__c,
- Send_Date__c,
- Consumable_order_minor__r.Name,
- Consumable_order_minor__c,
- recordtypeid,
- Consumable_order_minor__r.Arrive_Order__c,
- Report_Product_Expiration__c
- FROM Consumable_order_details2__c
- WHERE
- Dealer_Shipment__c = TRUE
- AND Dealer_Returned__c = FALSE
- AND Bar_Code__c IN :BarCodeListP
- AND Dealer_Info_text__c = :accountName
- AND Arrive_Owner_Work_Location__c = :userWorkLocation
- ORDER BY Name
- ];
- if (reSet1.size() > 0) {
- for (Integer i = 0; i < reSet1.size(); i++) {
- if (ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)) {
- // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
- continue;
- } else {
- String str = '璇ュ晢鍝佸凡缁忓嚭搴�';
- ConsumableorderdetailsRecordserror.add(
- new ConsumableorderdetailsInfo(reSet1[i], str)
- );
- ErrorIdMap.put(reSet1[i].Bar_Code__c, reSet1[i].Bar_Code__c);
- }
- }
- }
- //宸插埌璐т骇鍝�
- reSet1 = [
- SELECT
- Id,
- Name,
- Consumable_Product__r.Name__c,
- Consumable_Product__c,
- Consumable_Product__r.Name,
- Sterilization_limit__c,
- Deliver_date__c,
- Bar_Code__c,
- Lose_Flag__c,
- Box_Piece__c,
- Arrive_date__c,
- Send_Date__c,
- Consumable_order_minor__r.Name,
- Consumable_order_minor__c,
- recordtypeid,
- Consumable_order_minor__r.Arrive_Order__c,
- Report_Product_Expiration__c
- FROM Consumable_order_details2__c
- WHERE
- Dealer_Arrive__c = TRUE
- AND Dealer_Returned__c = FALSE
- AND Bar_Code__c IN :BarCodeListP
- AND Dealer_Info_text__c = :accountName
- AND Arrive_Owner_Work_Location__c = :userWorkLocation
- ORDER BY Name
- ];
- if (reSet1.size() > 0) {
- for (Integer i = 0; i < reSet1.size(); i++) {
- if (ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)) {
- // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
- continue;
- } else {
- String str = '璇ュ晢鍝佸凡缁忓埌璐�';
- if (reSet1[i].Lose_Flag__c == true) {
- str = '璇ュ晢鍝佸凡缁忎涪澶�';
- }
- ConsumableorderdetailsRecordserror.add(
- new ConsumableorderdetailsInfo(reSet1[i], str)
- );
- ErrorIdMap.put(reSet1[i].Bar_Code__c, reSet1[i].Bar_Code__c);
- }
- }
- }
-
- //宸叉媶鐩掍骇鍝�
- reSet1 = [
- SELECT
- Id,
- Name,
- Consumable_Product__r.Name__c,
- Consumable_Product__c,
- Consumable_Product__r.Name,
- Sterilization_limit__c,
- Deliver_date__c,
- Bar_Code__c,
- Box_Piece__c,
- Arrive_date__c,
- Send_Date__c,
- Consumable_order_minor__r.Name,
- Consumable_order_minor__c,
- recordtypeid,
- Consumable_order_minor__r.Arrive_Order__c,
- Report_Product_Expiration__c
- FROM Consumable_order_details2__c
- WHERE
- Dealer_Arrive__c = TRUE
- AND Bar_Code__c IN :BarCodeListP
- AND (Dealer_Info_text__c != :accountName
- OR (Dealer_Info_text__c = :accountName
- AND Arrive_Owner_Work_Location__c != :userWorkLocation))
- AND Box_Piece__c = '涓�'
- ORDER BY Name
- ];
- if (reSet1.size() > 0) {
- for (Integer i = 0; i < reSet1.size(); i++) {
- if (ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)) {
- // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
- continue;
- } else {
- String str = '宸叉媶鐩掔殑浜у搧涓嶈兘鍏ュ簱';
- ConsumableorderdetailsRecordserror.add(
- new ConsumableorderdetailsInfo(reSet1[i], str)
- );
- ErrorIdMap.put(reSet1[i].Bar_Code__c, reSet1[i].Bar_Code__c);
- }
- }
- }
-
- // 缁忛攢鍟嗕箣闂存垨鑰呭悓涓�缁忛攢鍟嗕笉鍚屽伐浣滃湴璋冭揣
- reSet1 = [
- SELECT
- Id,
- Name,
- Consumable_Product__r.Name__c,
- Asset_Model_No__c,
- Arrive_Owner_Work_Location__c,
- Consumable_Product__c,
- Consumable_Product__r.Name,
- Sterilization_limit__c,
- Box_Piece__c,
- Deliver_date__c,
- Bar_Code__c,
- TracingCode__c,
- Dealer_Info_text__c,
- OwnerId,
- Lose_Flag__c,
- Arrive_date__c,
- Send_Date__c,
- Consumable_order_minor__r.Name,
- Consumable_order_minor__c,
- recordtypeid,
- Consumable_order_minor__r.Arrive_Order__c,
- SerialLotNo__c,
- Dealer_Arrive__c,
- Consumable_Arrived_order__r.Dealer_Info__c,
- Consumable_Arrived_order__r.Dealer_Info__r.Name,
- Intra_Trade_List_RMB__c,
- Dealer_Shipment__c,
- Dealer_Saled__c,
- Consumable_Product__r.Asset_Model_No__c,
- // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
- SummonsForDirction_det__c,
- Transfer_Time__c,
- Frist_Transfer_Agency__c,
- Agency_Transfer__c,
- // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
- // 棣栨鍏ュ簱缁忛攢鍟嗕俊鎭� add by gzw 2020-04-27 start
- Agencyinfo_fromSAP__c,
- Frist_Storage_Agency__c,
- // 棣栨鍏ュ簱缁忛攢鍟嗕俊鎭� add by gzw 2020-04-27 end
-
- //add by rentx 2020-10-13 start 浜掔浉璋冭揣鏃�,鍊熷叆鏂硅褰昐AP鍚堝悓鍙�
- ContractNo_text__c /*,ContractNo__c */,
- // tcm start
- Consumable_order_minor__r.ContractNo__c,
- // tcm end
- //add by rentx 2020-10-13 end
- //add by rentx 2021-03-22 start
- hospitalSpecialOffer__c,
- exchangeOutPattern__c,
- Report_Product_Expiration__c
- //add by rentx 2021-03-22 end
- FROM Consumable_order_details2__c
- WHERE
- Dealer_Arrive__c = TRUE
- //AND Dealer_Shipment__c= false
- //AND Dealer_Saled__c = FALSE
- AND Dealer_Returned__c = FALSE
- AND Cancellation_Flag__c = FALSE
- AND Bar_Code__c IN :BarCodeListP
- //AND (Dealer_Shipment__c = FALSE
- // OR (Dealer_Shipment__c = TRUE
- // AND Consumable_Shipment_order__r.SummonsForDirction__c != '浜掔浉璋冭揣'))
- AND (Dealer_Info_text__c != :accountName
- OR (Dealer_Info_text__c = :accountName
- AND Arrive_Owner_Work_Location__c != :userWorkLocation))
- // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
- ORDER BY Bar_Code__c, Transfer_Time__c DESC
- // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 end
- ];
- if (reSet1.size() > 0) {
- for (Integer i = 0; i < reSet1.size(); i++) {
- if (ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)) {
- // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
- continue;
- } else {
- if (otherAgencyMap.containsKey(reSet1[i].Bar_Code__c)) {
- continue;
- } else {
- //鍏朵粬缁忛攢鍟嗗嚭搴撲骇鍝佸彲浠ュ叆搴�
- List<String> barcodedetList = new List<String>();
- barcodedetList.add(reSet1[i].Bar_Code__c);
- barcodedetList.add(
- String.valueOf(reSet1[i].Sterilization_limit__c)
- );
- barcodedetList.add(reSet1[i].SerialLotNo__c);
- barcodedetList.add(reSet1[i].TracingCode__c);
- if (reSet1[i].Lose_Flag__c == false) {
- //&& reSet1[i].Dealer_Info_text__c == accountName
- consumableorderdetails2Cancle.add(reSet1[i]);
- }
- // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
- if (
- reSet1[i].SummonsForDirction_det__c == '浜掔浉璋冭揣' &&
- !orderdetails2trMap.containsKey(reSet1[i].Bar_Code__c)
- ) {
- orderdetails2trMap.put(reSet1[i].Bar_Code__c, reSet1[i]);
- }
- // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 end
- consumableInventory.add(
- new ConsumableorderdetailsInfo(reSet1[i], barcodedetList)
- );
- Consumable_order_details2__c codsIns = new Consumable_order_details2__c();
-
- codsIns.RecordTypeId = System.Label.RT_ConOrderDetail2_Delivery;
- codsIns.Intra_Trade_List_RMB__c = reSet1[i]
- .Intra_Trade_List_RMB__c;
- //gzw 鎵嬪姩鍏ュ簱 榛樿浜у搧鍗曚环 20230307
- codsIns.Asset_Model_No__c = reSet1[i].Asset_Model_No__c;
- codsIns.Direct_Arrive_Product__c = true;
- codsIns.Sterilization_limit__c = reSet1[i]
- .Sterilization_limit__c;
- codsIns.Consumable_Product__c = reSet1[i].Consumable_Product__c;
- codsIns.Bar_Code__c = reSet1[i].Bar_Code__c;
- codsIns.SerialLotNo__c = reSet1[i].SerialLotNo__c;
- codsIns.TracingCode__c = reSet1[i].TracingCode__c;
- // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
- codsIns.Transfer_Time__c = reSet1[i].Transfer_Time__c == null
- ? 1
- : reSet1[i].Transfer_Time__c;
- codsIns.Frist_Transfer_Agency__c = reSet1[i]
- .Frist_Transfer_Agency__c == null
- ? reSet1[i].Dealer_Info_text__c
- : reSet1[i].Frist_Transfer_Agency__c;
- codsIns.Agency_Transfer__c = true;
- // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 end
-
- // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 start
- codsIns.Agencyinfo_fromSAP__c = reSet1[i].Agencyinfo_fromSAP__c;
- codsIns.Frist_Storage_Agency__c = reSet1[i]
- .Frist_Storage_Agency__c;
- // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 end
-
- //add by rentx 2020-10-13 start 浜掔浉璋冭揣鏃�,璁板綍SAP鍚堝悓鍙�
- // update tcm start
- if (
- String.isBlank(
- reSet1[i].Consumable_order_minor__r.ContractNo__c
- )
- ) {
- codsIns.ContractNo_text__c = reSet1[i].ContractNo_text__c;
- } else {
- codsIns.ContractNo_text__c = reSet1[i]
- .Consumable_order_minor__r.ContractNo__c;
- }
- // update tcm end
- //add by rentx 2020-10-13 end
-
- //add by rentx 2021-03-22 start
- // if (reSet1[i].Lose_Flag__c == true){
- if (
- reSet1[i].hospitalSpecialOffer__c == true &&
- reSet1[i].SummonsForDirction_det__c == '浜掔浉璋冭揣'
- ) {
- codsIns.exchangeOutPattern__c = true;
- }
- //add by rentx 2021-03-22 end
-
- consumableorderdetails2Insert.add(codsIns);
- otherAgencyMap.put(
- reSet1[i].Bar_Code__c,
- reSet1[i].Bar_Code__c
- );
- //String str = '璇ュ晢鍝佸湪鍏朵粬缁忛攢鍟嗗簱瀛�';
- //ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet1[i],str));
- //ErrorIdMap.put(reSet1[i].Bar_Code__c,reSet1[i].Bar_Code__c);
- }
- }
- }
- }
-
- //鍙戦敊搴� 鏈埌璐�
- reSet1 = [
- SELECT
- Id,
- Name,
- Consumable_Product__r.Name__c,
- Asset_Model_No__c,
- Consumable_Product__c,
- Consumable_Product__r.Name,
- Sterilization_limit__c,
- Deliver_date__c,
- Bar_Code__c,
- TracingCode__c,
- Box_Piece__c,
- Arrive_date__c,
- Send_Date__c,
- Consumable_order_minor__r.Name,
- Consumable_order_minor__c,
- recordtypeid,
- Consumable_order_minor__r.Arrive_Order__c,
- SerialLotNo__c,
- Dealer_Arrive__c,
- Dealer_Shipment__c,
- Dealer_Saled__c,
- Consumable_Product__r.Asset_Model_No__c,
- // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
- SummonsForDirction_det__c,
- Transfer_Time__c,
- Frist_Transfer_Agency__c,
- Agency_Transfer__c,
- Dealer_Info_text__c,
- Intra_Trade_List_RMB__c,
- // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
- // 棣栨鍏ュ簱缁忛攢鍟嗕俊鎭� add by gzw 2020-04-27 start
- Agencyinfo_fromSAP__c,
- Frist_Storage_Agency__c,
- // 棣栨鍏ュ簱缁忛攢鍟嗕俊鎭� add by gzw 2020-04-27 end
- //add by rentx 2020-10-13 start 浜掔浉璋冭揣鏃�,鍊熷叆鏂硅褰昐AP鍚堝悓鍙�
- ContractNo_text__c /*,ContractNo__c*/,
- // tcm start
- Consumable_order_minor__r.ContractNo__c,
- // tcm end
- //add by rentx 2020-10-13 end 浜掔浉璋冭揣鏃�,鍊熷叆鏂硅褰昐AP鍚堝悓鍙�
- hospitalSpecialOffer__c,
- exchangeOutPattern__c,
- Lose_Flag__c,
- Report_Product_Expiration__c
- FROM Consumable_order_details2__c
- WHERE
- Dealer_Arrive__c = FALSE
- AND Dealer_Shipment__c = FALSE
- AND Dealer_Saled__c = FALSE
- //AND Cancellation_Flag__c = FALSE
- AND Bar_Code__c IN :BarCodeListP
- AND (Dealer_Info_text__c != :accountName
- OR (Dealer_Info_text__c = :accountName
- AND ((Consumable_order_minor__c != NULL
- AND (Consumable_order_minor__r.Order_Owner_WorkLocal__c != :userWorkLocation
- OR (Consumable_order_minor__r.Order_Owner_WorkLocal__c = :userWorkLocation
- AND Cancellation_Flag__c = TRUE)))
- OR (Consumable_order_minor__c = NULL
- AND Cancellation_Flag__c = TRUE))))
- // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
- ORDER BY Bar_Code__c, Transfer_Time__c DESC
- // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 end
- ];
- if (reSet1.size() > 0) {
- for (Integer i = 0; i < reSet1.size(); i++) {
- if (ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)) {
- // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
- continue;
- } else {
- if (otherAgencyMap.containsKey(reSet1[i].Bar_Code__c)) {
- continue;
- } else {
- //鍙栨秷鏄庣粏
- List<String> barcodedetList = new List<String>();
- barcodedetList.add(reSet1[i].Bar_Code__c);
- barcodedetList.add(
- String.valueOf(reSet1[i].Sterilization_limit__c)
- );
- barcodedetList.add(reSet1[i].SerialLotNo__c);
- barcodedetList.add(reSet1[i].TracingCode__c);
- // 鍙戦敊搴撳瓨鏃讹紝鑷姩鍙栨秷 update by gzw 2020-04-15 start
- //if (reSet1[i].Consumable_order_minor__c == null) {
- consumableorderdetails2Cancle.add(reSet1[i]);
- //}
- // 鍙戦敊搴撳瓨鏃讹紝鑷姩鍙栨秷 update by gzw 2020-04-15 start
- // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
- if (
- reSet1[i].SummonsForDirction_det__c == '浜掔浉璋冭揣' &&
- !orderdetails2trMap.containsKey(reSet1[i].Bar_Code__c)
- ) {
- orderdetails2trMap.put(reSet1[i].Bar_Code__c, reSet1[i]);
- }
- // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 end
- consumableInventory.add(
- new ConsumableorderdetailsInfo(reSet1[i], barcodedetList)
- );
- Consumable_order_details2__c codsIns = new Consumable_order_details2__c();
-
- codsIns.RecordTypeId = System.Label.RT_ConOrderDetail2_Delivery;
- codsIns.Intra_Trade_List_RMB__c = reSet1[i]
- .Intra_Trade_List_RMB__c;
- //gzw 鎵嬪姩鍏ュ簱 榛樿浜у搧鍗曚环 20230307
- codsIns.Asset_Model_No__c = reSet1[i].Asset_Model_No__c;
- codsIns.Direct_Arrive_Product__c = true;
- codsIns.Sterilization_limit__c = reSet1[i]
- .Sterilization_limit__c;
- codsIns.Consumable_Product__c = reSet1[i].Consumable_Product__c;
- codsIns.Bar_Code__c = reSet1[i].Bar_Code__c;
- codsIns.SerialLotNo__c = reSet1[i].SerialLotNo__c;
- codsIns.TracingCode__c = reSet1[i].TracingCode__c;
- // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
- // 娌℃湁鍏ュ簱鏃讹紝娌℃湁鍊熻皟淇℃伅
- codsIns.Transfer_Time__c = reSet1[i].Transfer_Time__c;
- codsIns.Frist_Transfer_Agency__c = reSet1[i]
- .Frist_Transfer_Agency__c;
- codsIns.Agency_Transfer__c = reSet1[i].Agency_Transfer__c;
- // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 end
-
- // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 start
- codsIns.Agencyinfo_fromSAP__c = reSet1[i].Agencyinfo_fromSAP__c;
- codsIns.Frist_Storage_Agency__c = reSet1[i]
- .Frist_Storage_Agency__c;
- // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 end
-
- //add by rentx 2020-10-13 start 浜掔浉璋冭揣鏃�,鍊熷叆鏂硅褰昐AP鍚堝悓鍙�
- // update tcm start
- if (
- String.isBlank(
- reSet1[i].Consumable_order_minor__r.ContractNo__c
- )
- ) {
- codsIns.ContractNo_text__c = reSet1[i].ContractNo_text__c;
- } else {
- codsIns.ContractNo_text__c = reSet1[i]
- .Consumable_order_minor__r.ContractNo__c;
- }
- // update tcm end
- //add by rentx 2020-10-13 end 浜掔浉璋冭揣鏃�,鍊熷叆鏂硅褰昐AP鍚堝悓鍙�
-
- //add by rentx 2021-03-22 start
- // if (reSet1[i].Lose_Flag__c == true){
- if (
- reSet1[i].hospitalSpecialOffer__c == true &&
- reSet1[i].SummonsForDirction_det__c == '浜掔浉璋冭揣'
- ) {
- codsIns.exchangeOutPattern__c = true;
- }
- //add by rentx 2021-03-22 end
-
- consumableorderdetails2Insert.add(codsIns);
- otherAgencyMap.put(
- reSet1[i].Bar_Code__c,
- reSet1[i].Bar_Code__c
- );
- }
- }
- }
- }
- } else {
- //杩斿搧妫�鏌�
- //鍒拌揣浣嗕骇鍝佺被鍨嬩笌鐢ㄦ埛鐨勭被鍨嬩笉绗�
- reSet1 = [
- SELECT
- Id,
- Name,
- Intra_Trade_List_RMB__c,
- Asset_Model_No__c,
- Consumable_Product__c,
- Consumable_Product__r.Name,
- Consumable_Product__r.Name__c,
- Consumable_Product__r.Asset_Model_No__c,
- Sterilization_limit__c,
- Deliver_date__c,
- Bar_Code__c,
- Arrive_date__c,
- Send_Date__c,
- Consumable_order_minor__r.Name,
- Consumable_order_minor__c,
- Dealer_Arrive__c,
- Guarantee_period_for_products__c,
- CFDA_Status__c,
- ProductPacking_list_manual__c,
- Report_Product_Approbation__c,
- Report_Product_Expiration__c,
- Box_Piece__c,
- Rrturn_count__c,
- Product_Type__c,
- //add by rentx 2020-10-14 start
- ContractNo_text__c /*,ContractNo__c*/,
- // tcm start
- Consumable_order_minor__r.ContractNo__c
- // tcm end
- //add by rentx 2020-10-14 end
- FROM Consumable_order_details2__c
- WHERE
- Bar_Code__c IN :BarCodeListP
- AND (NOT Product_Type__c LIKE :userPro_Typestr)
- AND Dealer_Info_text__c = :accountName
- AND ((Consumable_order_minor__c != NULL
- AND Consumable_order_minor__r.Order_Owner_WorkLocal__c = :userWorkLocation)
- OR Consumable_order_minor__c = NULL)
- ORDER BY Name
- ];
-
- if (reSet1.size() > 0) {
- for (Integer i = 0; i < reSet1.size(); i++) {
- if (ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)) {
- // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
- continue;
- } else {
- String str =
- '浜у搧绫诲瀷[' +
- reSet1[i].Product_Type__c +
- ']涓庣敤鎴风殑绫诲瀷[' +
- userPro_Type +
- ']涓嶇';
- ConsumableorderdetailsRecordserror.add(
- new ConsumableorderdetailsInfo(reSet1[i], str)
- );
- ErrorIdMap.put(reSet1[i].Bar_Code__c, reSet1[i].Bar_Code__c);
- }
- }
- }
- reSet1 = [
- SELECT
- Id,
- Name,
- Consumable_Product__r.Name__c,
- Consumable_Product__c,
- Consumable_Product__r.Name,
- Sterilization_limit__c,
- Deliver_date__c,
- Bar_Code__c,
- Box_Piece__c,
- Arrive_date__c,
- Send_Date__c,
- Consumable_order_minor__r.Name,
- Consumable_order_minor__c,
- recordtypeid,
- Consumable_order_minor__r.Arrive_Order__c,
- //add by rentx 2020-10-14 start
- ContractNo_text__c /*,ContractNo__c*/,
- // tcm start
- Consumable_order_minor__r.ContractNo__c,
- // tcm end
- Report_Product_Expiration__c
- //add by rentx 2020-10-14 end
- FROM Consumable_order_details2__c
- WHERE
- Dealer_Arrive__c = FALSE
- AND Dealer_Shipment__c = FALSE
- AND Dealer_Saled__c = FALSE
- // gzw fix 鍙栨秷浜у搧鍒ゆ柇涓烘湭鍏ュ簱 20230323
- AND Cancellation_Flag__c = FALSE
- AND Dealer_Returned__c = FALSE
- AND Bar_Code__c IN :BarCodeListP
- AND Dealer_Info_text__c = :accountName
- ORDER BY Name
- ]; //娌″埌璐�
- if (reSet1.size() > 0) {
- for (Integer i = 0; i < reSet1.size(); i++) {
- if (ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)) {
- // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
- continue;
- } else {
- String str = '璇ュ晢鍝佸皻鏈叆搴�';
- ConsumableorderdetailsRecordserror.add(
- new ConsumableorderdetailsInfo(reSet1[i], str)
- );
- ErrorIdMap.put(reSet1[i].Bar_Code__c, reSet1[i].Bar_Code__c);
- }
- }
- }
- reSet1 = [
- SELECT
- Id,
- Name,
- Consumable_Product__r.Name__c,
- ToDueDateDays__c,
- Consumable_Product__c,
- Consumable_Product__r.Name,
- Sterilization_limit__c,
- Deliver_date__c,
- Bar_Code__c,
- Lose_Flag__c,
- Box_Piece__c,
- Arrive_date__c,
- Send_Date__c,
- Consumable_order_minor__r.Name,
- Consumable_order_minor__c,
- recordtypeid,
- Consumable_order_minor__r.Arrive_Order__c,
- //add by rentx 2020-10-14 start
- ContractNo_text__c /*,ContractNo__c*/,
- // tcm start
- Consumable_order_minor__r.ContractNo__c,
- // tcm end
- Report_Product_Expiration__c
- //add by rentx 2020-10-14 end
- FROM Consumable_order_details2__c
- WHERE
- Dealer_Arrive__c = TRUE
- AND Dealer_Shipment__c = FALSE
- AND Dealer_Saled__c = FALSE
- AND Bar_Code__c IN :BarCodeListP
- AND Dealer_Returned__c = FALSE
- // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
- //AND Lose_Flag__c = FALSE
- // AND Lose_Flag__c = FALSE
- // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
- AND Dealer_Info_text__c = :accountName
- AND Arrive_Owner_Work_Location__c = :userWorkLocation
- // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
- // Gzw 20201215淇锛屾媶鐩掍骇鍝佷笉鍒ゆ柇
- AND Box_Piece__c = '鐩�'
- // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 end
- ORDER BY Name
- ]; //娌″嚭搴擄紝娌¢攢鍞紝灏辨槸鍦ㄥ簱
- if (reSet1.size() > 0) {
- for (Integer i = 0; i < reSet1.size(); i++) {
- if (ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)) {
- // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
- continue;
- } else {
- // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
- // String str = '璇ュ晢鍝佸湪搴�';
- // if (reSet1[i].Lose_Flag__c) {
- // str = '璇ュ晢鍝佷涪澶�';
- // }
- String str = '';
- if (reSet1[i].Lose_Flag__c == false) {
- str = '璇ュ晢鍝佸湪搴�'; //娌″嚭搴� 锛屾病閿�鍞紝娌′涪澶卞氨鏄湪搴撱��
- }
- if (
- reSet1[i].Lose_Flag__c == true &&
- reSet1[i].ToDueDateDays__c >= 0
- ) {
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- warningList.add(
- '浜у搧' +
- reSet1[i].Consumable_Product__r.Name +
- '瀛樺湪涓㈠け璁板綍'
- );
- } else {
- ApexPages.addmessage(
- new ApexPages.message(
- ApexPages.severity.WARNING,
- '浜у搧' +
- reSet1[i].Consumable_Product__r.Name +
- '瀛樺湪涓㈠け璁板綍'
- )
- ); //濡傛灉涓㈠け浜у搧灏辩粰鎻愮ず銆�
- }
- }
- if (
- reSet1[i].Lose_Flag__c == true &&
- reSet1[i].ToDueDateDays__c < 0
- ) {
- str = '杩囨湡宸查攢瀛樹骇鍝侊紝涓嶅厑璁歌繑鍝�';
- }
- if (str != '') {
- ConsumableorderdetailsRecordserror.add(
- new ConsumableorderdetailsInfo(reSet1[i], str)
- );
- ErrorIdMap.put(reSet1[i].Bar_Code__c, reSet1[i].Bar_Code__c);
- }
- // ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet1[i],str));
- // ErrorIdMap.put(reSet1[i].Bar_Code__c,reSet1[i].Bar_Code__c);
- // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 end
- }
- }
- }
- }
-
- //鍒拌揣姝g‘淇℃伅
- reSet = [
- SELECT
- Id,
- Name,
- Intra_Trade_List_RMB__c,
- Asset_Model_No__c,
- Consumable_Product__c,
- Consumable_Product__r.Name,
- Consumable_Product__r.Name__c,
- Consumable_Product__r.Asset_Model_No__c,
- Sterilization_limit__c,
- Deliver_date__c,
- Bar_Code__c,
- Arrive_date__c,
- Send_Date__c,
- Box_Piece__c,
- Rrturn_count__c,
- Consumable_order_minor__r.Name,
- Consumable_order_minor__c,
- Dealer_Arrive__c,
- Guarantee_period_for_products__c,
- CFDA_Status__c,
- ProductPacking_list_manual__c,
- Report_Product_Approbation__c,
- Report_Product_Expiration__c,
- Consumable_Product__r.Pro2_Dealer_ENG__c,
- Consumable_Product__r.Pro2_Dealer_Object__c,
- TracingCode__c,
- Agencyinfo_fromSAP__c,
- Frist_Storage_Agency__c,
- Dealer_Info_text__c,
- //add by rentx 2020-10-14 start
- ContractNo_text__c /*,ContractNo__c*/,
- // tcm start
- Consumable_order_minor__r.ContractNo__c
- // tcm end
- //add by rentx 2020-10-14 end
- FROM Consumable_order_details2__c
- WHERE
- recordtypeid = :System.Label.RT_ConOrderDetail2_Delivery
- AND Cancellation_Date__c = NULL
- AND Dealer_Arrive__c = FALSE
- AND Product_Type__c LIKE :userPro_Typestr
- AND Bar_Code__c IN :BarCodeListP
- AND Dealer_Info_text__c = :accountName
- AND ((Consumable_order_minor__c != NULL
- AND Consumable_order_minor__r.Order_Owner_WorkLocal__c = :userWorkLocation)
- OR Consumable_order_minor__c = NULL)
- ORDER BY Name
- ];
-
- if (reSet.size() > 0) {
- //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'ErrorIdMap+++ '+ ErrorIdMap.keyset()));
- Map<String, String> errorMap = new Map<String, String>();
- for (Integer i = 0; i < reSet.size(); i++) {
- if (
- ExistIdMap.containsKey(reSet[i].Bar_Code__c) ||
- ErrorIdMap.containsKey(reSet[i].Bar_Code__c)
- ) {
- // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
- continue;
- } else {
- Matcher n = Pattern.compile('[0-9]')
- .matcher(reSet[i].TracingCode__c);
- if (n.find()) {
- // gzw DB202305352696 鍏ュ簱绠$悊缂栫爜楠岃瘉绋嬪簭璋冩暣 start
- if (reSet[i].TracingCode__c.length() == 5) {
- String tr = reSet[i].TracingCode__c;
- String Ctr = tr.substring(tr.length() - 3, tr.length());
- String Btr = tr.substring(tr.length() - 4, tr.length() - 3);
- String Atr = tr.substring(tr.length() - 5, tr.length() - 4);
- if (
- Pattern.compile('[0-9]').matcher(Atr).find() ||
- Pattern.compile('[0-9]').matcher(Ctr).find()
- ) {
- String str = '绠$悊缂栫爜鏈夎锛岃妫�鏌ユ潯褰㈢爜鏁版嵁銆�';
- ConsumableorderdetailsRecordserror.add(
- new ConsumableorderdetailsInfo(reSet[i], str)
- );
- ErrorIdMap.put(reSet[i].Bar_Code__c, reSet[i].Bar_Code__c);
- continue;
- }
- }
- // String str = '绠$悊缂栫爜涓湁鏁板瓧锛岃涓庣鐞嗗憳纭鏄惁閿欒銆�';
- // ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet[i],str));
- // ErrorIdMap.put(reSet[i].Bar_Code__c,reSet[i].Bar_Code__c);
- // continue;
- // gzw DB202305352696 鍏ュ簱绠$悊缂栫爜楠岃瘉绋嬪簭璋冩暣 end
- }
- if (otherAgencyMap.containsKey(reSet[i].Bar_Code__c)) {
- for (Integer j = 0; j < consumableInventory.size(); j++) {
- ConsumableorderdetailsInfo codInfo = consumableInventory.get(j);
- if (codInfo.barCodeNo == reSet[i].Bar_Code__c) {
- consumableInventory.remove(j);
- break;
- }
- }
- for (
- Integer m = 0; m < consumableorderdetails2Insert.size(); m++
- ) {
- Consumable_order_details2__c cod2 = consumableorderdetails2Insert.get(
- m
- );
- if (cod2.Bar_Code__c == reSet[i].Bar_Code__c) {
- consumableorderdetails2Insert.remove(m);
- break;
- }
- }
- }
- //orderId.add(reSet[i].Consumable_order_minor__c);
- //prodName.add(reSet[i].Consumable_Product__r.Name);
- ConsumableorderdetailsRecordsdummy.add(
- new ConsumableorderdetailsInfo(reSet[i])
- );
- ConsumableorderdetailsRecords.add(
- new ConsumableorderdetailsInfo(reSet[i])
- );
- ExistIdMap.put(reSet[i].Bar_Code__c, reSet[i].Bar_Code__c);
- }
- }
- }
- //barcode涓嶄竴鑷达紝绠$悊缂栫爜涓�鑷�
- reSet = [
- SELECT
- Id,
- Name,
- Intra_Trade_List_RMB__c,
- Asset_Model_No__c,
- Consumable_Product__c,
- Consumable_Product__r.Name,
- Consumable_Product__r.Name__c,
- Consumable_Product__r.Asset_Model_No__c,
- Sterilization_limit__c,
- Deliver_date__c,
- Bar_Code__c,
- Arrive_date__c,
- Send_Date__c,
- Consumable_order_minor__r.Name,
- Consumable_order_minor__c,
- Dealer_Arrive__c,
- Guarantee_period_for_products__c,
- CFDA_Status__c,
- ProductPacking_list_manual__c,
- Report_Product_Approbation__c,
- Report_Product_Expiration__c,
- Box_Piece__c,
- Rrturn_count__c,
- TracingCode__c,
- Agencyinfo_fromSAP__c,
- Frist_Storage_Agency__c,
- //add by rentx 2020-10-14 start
- ContractNo_text__c /*,ContractNo__c */,
- // tcm start
- Consumable_order_minor__r.ContractNo__c
- // tcm end
- //add by rentx 2020-10-14 end
- FROM Consumable_order_details2__c
- WHERE
- recordtypeid = :System.Label.RT_ConOrderDetail2_Delivery
- AND Dealer_Info_text__c = :accountName
- //update by rentx 2021-01-04 start CHAN-BWX3XW
- // AND Consumable_order_minor__c != null
- // AND Consumable_order_minor__r.Order_Owner_WorkLocal__c = :userWorkLocation
- AND ((Consumable_order_minor__c != NULL
- AND Consumable_order_minor__r.Order_Owner_WorkLocal__c = :userWorkLocation)
- OR Consumable_order_minor__c = NULL)
- //update by rentx 2021-01-04 end CHAN-BWX3XW
- AND Dealer_Arrive__c = FALSE
- AND Cancellation_Date__c = NULL
- AND TracingCode__c IN :barMcodeMap.values()
- AND Bar_Code__c NOT IN :barMcodeMap.keySet()
- ORDER BY Name
- ];
-
- if (reSet.size() > 0) {
- for (Integer i = 0; i < reSet.size(); i++) {
- if (
- ExistIdMap.containsKey(reSet[i].Bar_Code__c) ||
- ErrorIdMap.containsKey(reSet[i].Bar_Code__c)
- ) {
- // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
- continue;
- } else {
- Matcher n = Pattern.compile('[0-9]')
- .matcher(reSet[i].TracingCode__c);
- if (n.find()) {
- // gzw DB202305352696 鍏ュ簱绠$悊缂栫爜楠岃瘉绋嬪簭璋冩暣 start
- if (reSet[i].TracingCode__c.length() == 5) {
- String tr = reSet[i].TracingCode__c;
- String Ctr = tr.substring(tr.length() - 3, tr.length());
- String Btr = tr.substring(tr.length() - 4, tr.length() - 3);
- String Atr = tr.substring(tr.length() - 5, tr.length() - 4);
- if (
- Pattern.compile('[0-9]').matcher(Atr).find() ||
- Pattern.compile('[0-9]').matcher(Ctr).find()
- ) {
- String str = '绠$悊缂栫爜鏈夎锛岃妫�鏌ユ潯褰㈢爜鏁版嵁銆�';
- ConsumableorderdetailsRecordserror.add(
- new ConsumableorderdetailsInfo(reSet[i], str)
- );
- ErrorIdMap.put(reSet[i].Bar_Code__c, reSet[i].Bar_Code__c);
- continue;
- }
- }
- // String str = '绠$悊缂栫爜涓湁鏁板瓧锛岃涓庣鐞嗗憳纭鏄惁閿欒銆�';
- // ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet[i],str));
- // ErrorIdMap.put(reSet[i].Bar_Code__c,reSet[i].Bar_Code__c);
- // continue;
- // gzw DB202305352696 鍏ュ簱绠$悊缂栫爜楠岃瘉绋嬪簭璋冩暣 end
- }
- ExistIdMap.put(reSet[i].Bar_Code__c, reSet[i].Bar_Code__c);
- for (String str : barMcodeMap.keySet()) {
- // BarCode涓嶄竴鑷存椂鐨勮鍛婁俊鎭�
- if (
- reSet[i].Bar_Code__c != str &&
- reSet[i].TracingCode__c == barMcodeMap.get(str)
- ) {
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- warningList.add(
- '鏉″舰鐮佷负(' + str + ')鐨勫叆搴撴暟鎹笌鍙戣揣鏁版嵁涓嶄竴鑷�'
- );
- } else {
- // 20220815 ljh SWAG-CH65B7 start
- // ApexPages.addmessage(new ApexPages.message(ApexPages.severity.WARNING,'姝ょ鐞嗙紪鐮佷笌瀹為檯鍙戣揣BarCode涓嶄竴鑷达紝璇锋牳瀵圭鐞嗙紪鐮�('+ str +')鐨勫叆搴撳強搴撳瓨鏁版嵁銆�'));
- ApexPages.addmessage(
- new ApexPages.message(
- ApexPages.severity.WARNING,
- '鏉″舰鐮佷负(' + str + ')鐨勫叆搴撴暟鎹笌鍙戣揣鏁版嵁涓嶄竴鑷�'
- )
- );
- // 20220815 ljh SWAG-CH65B7 end
- }
- }
- if (barMcodeMap.get(str) == reSet[i].TracingCode__c) {
- reSet[i].Bar_Code__c = str;
- //=====================================
- // ApexPages.addmessage(new ApexPages.message(ApexPages.severity.WARNING,'鍏ュ簱BarCode('+ str +')鍜屽簱瀛樻潯鐮佷笉涓�鑷淬��'));
- ExistIdMap.put(str, str);
- }
- }
- ConsumableorderdetailsRecordsdummy.add(
- new ConsumableorderdetailsInfo(reSet[i])
- );
- ConsumableorderdetailsRecords.add(
- new ConsumableorderdetailsInfo(reSet[i])
- );
- }
- }
- }
-
- // CHAN-BD43NK 鍏抽棴鐩存帴杩斿搧鍔熻兘 杩藉姞 barcode涓嶄竴鑷村垽鏂�
- reSet1 = [
- SELECT
- Id,
- Name,
- TracingCode__c,
- Bar_Code__c,
- Sale_orderName__c,
- Report_Product_Expiration__c
- FROM Consumable_order_details2__c
- WHERE
- Dealer_Arrive__c = TRUE
- AND (Dealer_Shipment__c = TRUE
- OR Dealer_Saled__c = TRUE)
- AND TracingCode__c IN :barMcodeMap.values()
- AND Bar_Code__c NOT IN :barMcodeMap.keySet()
- AND Dealer_Info_text__c = :accountName
- AND Arrive_Owner_Work_Location__c = :userWorkLocation
- ORDER BY Name
- ];
- if (reSet1.size() > 0) {
- for (Integer i = 0; i < reSet1.size(); i++) {
- if (ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)) {
- // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
- continue;
- } else {
- for (String str : barMcodeMap.keySet()) {
- if (barMcodeMap.get(str) == reSet1[i].TracingCode__c) {
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- errorList.add(
- 'barcode' +
- str +
- '涓庡嚭搴撳崟' +
- reSet1[i].Sale_orderName__c +
- ' 涓殑绠$悊缂栫爜涓�鑷达紝浣咮arcode涓嶅悓锛岃纭鍏蜂綋鏁版嵁銆�'
- );
- } else {
- ApexPages.addmessage(
- new ApexPages.message(
- ApexPages.severity.ERROR,
- 'barcode' +
- str +
- '涓庡嚭搴撳崟' +
- reSet1[i].Sale_orderName__c +
- ' 涓殑绠$悊缂栫爜涓�鑷达紝浣咮arcode涓嶅悓锛岃纭鍏蜂綋鏁版嵁銆�'
- )
- );
- }
- ErrorIdMap.put(str, str);
- ErrorIdMap.put(reSet1[i].Bar_Code__c, reSet1[i].Bar_Code__c);
- }
- }
- }
- }
- }
- integer RGcnt = GoodsReturnCheck();
- AllMap.putAll(ErrorIdMap);
- AllMap.putAll(ExistIdMap);
- if (RGcnt > 0) {
- for (String str : GrList) {
- AllMap.put(str, str);
- }
- }
- //寰楀埌涓嶅瓨鍦ㄧ殑BarCode
- //return;
- for (Integer i = 0; i < BarCodeListP.size(); i++) {
- if (AllMap.containsKey(BarCodeListP[i])) {
- continue;
- } else if (otherAgencyMap.containsKey(BarCodeListP[i])) {
- continue;
- }
- //add by rentx 2021-01-27 start
- else if (coc != null && coc.orderPattern__c == 'hospitalorder') {
- HosErrorList.add(BarCodeListP[i]);
- continue;
- }
- //add by rentx 2021-01-27 end
- else {
- notInlist.add(BarCodeListP[i]);
- otherAgencyMap.put(BarCodeListP[i], BarCodeListP[i]);
- }
- }
- // CHAN-BD43NK 鍏抽棴鐩存帴杩斿搧鍔熻兘
- if (notInlist.size() > 0) {
- if (ArrType != 'ReG') {
- inventoryEntryNoESetId(notInlist);
- if (notInStorelist.size() > 0) {
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- returnError = 'BarCode鍙�' + notInStorelist + '涓嶅瓨鍦�';
- } else {
- ApexPages.addmessage(
- new ApexPages.message(
- ApexPages.severity.ERROR,
- 'BarCode鍙�' + notInStorelist + '涓嶅瓨鍦ㄣ��'
- )
- );
- }
+ ConsumableorderdetailsRecords = new List<ConsumableorderdetailsInfo>();
+ BarCodeListP = new List<String>();
+ BarCodeListP = ParseBarCode(barcode);
+ Consumable_order_details2__c p = new Consumable_order_details2__c();
+ List<Consumable_order_details2__c> Ins = New List<Consumable_order_details2__c>();
+ List<Consumable_order_details2__c> reSet = new List<Consumable_order_details2__c>();
+ List<Consumable_order_details2__c> reSet1 = new List<Consumable_order_details2__c>();
+ if(barcode == null || barcode.trim() ==''){
+ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.INFO,'璇疯緭鍏arCode鍙枫��'));
return;
- }
- } else {
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- returnError =
- 'BarCode鍙�' +
- notInlist +
- '涓嶅瓨鍦紝鏃犲搴旂殑鍑哄簱鍗曪紝璇峰厛鎿嶄綔浜у搧鍏ュ簱';
- } else {
- ApexPages.addmessage(
- new ApexPages.message(
- ApexPages.severity.ERROR,
- 'BarCode鍙�' +
- notInlist +
- '涓嶅瓨鍦紝鏃犲搴旂殑鍑哄簱鍗曪紝璇峰厛鎿嶄綔浜у搧鍏ュ簱銆�'
- )
- );
- }
- return;
}
- }
-
- //add by rentx 2021-01-27 start
- if (HosErrorList.size() > 0) {
- for (String str : HosErrorList) {
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- errorList.add('BarCode鍙�:' + str + HosErrorMap.get(str) + '');
- } else {
- ApexPages.addmessage(
- new ApexPages.message(
- ApexPages.severity.ERROR,
- 'BarCode鍙�:' + str + HosErrorMap.get(str) + ''
- )
- );
- }
- }
- }
- //add by rentx 2021-01-27 end
- } else {
- //宸插彇娑堜骇鍝�
- reSet1 = [
- SELECT
- Id,
- Name,
- Consumable_Product__r.Name__c,
- Consumable_Product__c,
- Consumable_Product__r.Name,
- Sterilization_limit__c,
- Deliver_date__c,
- Bar_Code__c,
- Box_Piece__c,
- Arrive_date__c,
- Send_Date__c,
- Consumable_order_minor__r.Name,
- Consumable_order_minor__c,
- recordtypeid,
- Consumable_order_minor__r.Arrive_Order__c,
- Report_Product_Expiration__c
- FROM Consumable_order_details2__c
- WHERE
- Dealer_Arrive__c = FALSE
- AND Dealer_Shipment__c = FALSE
- AND Dealer_Saled__c = FALSE
- AND Dealer_Returned__c = FALSE
- AND Cancellation_Date__c != NULL
- AND Bar_Code__c IN :BarCodeListP
- AND Dealer_Info_text__c = :accountName
- ORDER BY Name
- ]; //娌″埌璐�
- if (reSet1.size() > 0) {
- for (Integer i = 0; i < reSet1.size(); i++) {
- if (ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)) {
- // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
- continue;
- } else {
- String str = '璇ュ晢鍝佸彇娑�';
- ConsumableorderdetailsRecordserror.add(
- new ConsumableorderdetailsInfo(reSet1[i], str)
- );
- ErrorIdMap.put(reSet1[i].Bar_Code__c, reSet1[i].Bar_Code__c);
- }
- }
- }
- //宸茬粡閿�鍞�
- reSet1 = [
- SELECT
- Id,
- Name,
- Consumable_Product__r.Name__c,
- Consumable_Product__c,
- Consumable_Product__r.Name,
- Sterilization_limit__c,
- Deliver_date__c,
- Bar_Code__c,
- Box_Piece__c,
- Arrive_date__c,
- Send_Date__c,
- Consumable_order_minor__r.Name,
- Consumable_order_minor__c,
- recordtypeid,
- Consumable_order_minor__r.Arrive_Order__c,
- Report_Product_Expiration__c
- FROM Consumable_order_details2__c
- WHERE
- Dealer_Saled__c = TRUE
- AND Dealer_Returned__c = FALSE
- AND Dealer_Info_text__c = :accountName
- AND Bar_Code__c IN :BarCodeListP
- AND Arrive_Owner_Work_Location__c = :userWorkLocation
- ORDER BY Name
- ];
- if (reSet1.size() > 0) {
- for (Integer i = 0; i < reSet1.size(); i++) {
- if (ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)) {
- // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
- continue;
- } else {
- String str = '璇ュ晢鍝佸凡缁忛攢鍞�';
- ConsumableorderdetailsRecordserror.add(
- new ConsumableorderdetailsInfo(reSet1[i], str)
- );
- ErrorIdMap.put(reSet1[i].Bar_Code__c, reSet1[i].Bar_Code__c);
- }
- }
- }
- //宸茬粡鍑哄簱浜у搧
- reSet1 = [
- SELECT
- Id,
- Name,
- Consumable_Product__r.Name__c,
- Consumable_Product__c,
- Consumable_Product__r.Name,
- Sterilization_limit__c,
- Deliver_date__c,
- Bar_Code__c,
- Box_Piece__c,
- Arrive_date__c,
- Send_Date__c,
- Consumable_order_minor__r.Name,
- Consumable_order_minor__c,
- recordtypeid,
- Consumable_order_minor__r.Arrive_Order__c,
- Report_Product_Expiration__c
- FROM Consumable_order_details2__c
- WHERE
- Dealer_Shipment__c = TRUE
- AND Dealer_Returned__c = FALSE
- AND Dealer_Info_text__c = :accountName
- AND Arrive_Owner_Work_Location__c = :userWorkLocation
- AND Bar_Code__c IN :BarCodeListP
- ORDER BY Name
- ];
- if (reSet1.size() > 0) {
- for (Integer i = 0; i < reSet1.size(); i++) {
- if (ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)) {
- // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
- continue;
- } else {
- String str = '璇ュ晢鍝佸凡缁忓嚭搴�';
- ConsumableorderdetailsRecordserror.add(
- new ConsumableorderdetailsInfo(reSet1[i], str)
- );
- ErrorIdMap.put(reSet1[i].Bar_Code__c, reSet1[i].Bar_Code__c);
- }
- }
- }
- //宸茬粡鍒拌揣浜у搧
- reSet1 = [
- SELECT
- Id,
- Name,
- Consumable_Product__r.Name__c,
- Consumable_Product__c,
- Consumable_Product__r.Name,
- Sterilization_limit__c,
- Deliver_date__c,
- Bar_Code__c,
- Lose_Flag__c,
- Box_Piece__c,
- Arrive_date__c,
- Send_Date__c,
- Consumable_order_minor__r.Name,
- Consumable_order_minor__c,
- recordtypeid,
- Consumable_order_minor__r.Arrive_Order__c,
- Report_Product_Expiration__c
- FROM Consumable_order_details2__c
- WHERE
- Dealer_Arrive__c = TRUE
- AND Dealer_Returned__c = FALSE
- AND Bar_Code__c IN :BarCodeListP
- AND Dealer_Info_text__c = :accountName
- AND Arrive_Owner_Work_Location__c = :userWorkLocation
- ORDER BY Name
- ];
- if (reSet1.size() > 0) {
- for (Integer i = 0; i < reSet1.size(); i++) {
- if (ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)) {
- // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
- continue;
- } else {
- String str = '璇ュ晢鍝佸凡缁忓埌璐�';
- if (reSet1[i].Lose_Flag__c == true) {
- str = '璇ュ晢鍝佸凡缁忎涪澶�';
- }
- ConsumableorderdetailsRecordserror.add(
- new ConsumableorderdetailsInfo(reSet1[i], str)
- );
- ErrorIdMap.put(reSet1[i].Bar_Code__c, reSet1[i].Bar_Code__c);
- }
- }
- }
- //涓嶅睘浜庢湰璁㈠崟
- reSet1 = [
- SELECT
- Id,
- Name,
- Consumable_Product__r.Name__c,
- Consumable_Product__c,
- Consumable_Product__r.Name,
- Sterilization_limit__c,
- Deliver_date__c,
- Bar_Code__c,
- Box_Piece__c,
- Arrive_date__c,
- Send_Date__c,
- Consumable_order_minor__r.Name,
- Consumable_order_minor__c,
- recordtypeid,
- Consumable_order_minor__r.Arrive_Order__c,
- Report_Product_Expiration__c
- FROM Consumable_order_details2__c
- WHERE
- Consumable_order_minor__c != :ESetId
- AND Bar_Code__c IN :BarCodeListP
- //AND Dealer_Info_text__c = :accountName
- ORDER BY Name
- ];
- if (reSet1.size() > 0) {
- for (Integer i = 0; i < reSet1.size(); i++) {
- if (ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)) {
- // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
- continue;
- } else {
- String str = '璇ユ秷鑰楀搧涓嶅睘浜庢湰璁㈠崟';
- ConsumableorderdetailsRecordserror.add(
- new ConsumableorderdetailsInfo(reSet1[i], str)
- );
- ErrorIdMap.put(reSet1[i].Bar_Code__c, reSet1[i].Bar_Code__c);
- }
- }
- }
- //鍒拌揣浣嗕骇鍝佺被鍨嬩笌鐢ㄦ埛鐨勭被鍨嬩笉绗�
- reSet1 = [
- SELECT
- Id,
- Name,
- Intra_Trade_List_RMB__c,
- Asset_Model_No__c,
- Consumable_Product__c,
- Consumable_Product__r.Name,
- Consumable_Product__r.Name__c,
- Consumable_Product__r.Asset_Model_No__c,
- Sterilization_limit__c,
- Deliver_date__c,
- Bar_Code__c,
- Arrive_date__c,
- Send_Date__c,
- Consumable_order_minor__r.Name,
- Consumable_order_minor__c,
- Dealer_Arrive__c,
- Guarantee_period_for_products__c,
- CFDA_Status__c,
- ProductPacking_list_manual__c,
- Report_Product_Approbation__c,
- Report_Product_Expiration__c,
- Box_Piece__c,
- Rrturn_count__c,
- Product_Type__c,
- ContractNo_text__c /*,ContractNo__c*/,
- // tcm start
- Consumable_order_minor__r.ContractNo__c
- // tcm end
- FROM Consumable_order_details2__c
- WHERE
- recordtypeid = :System.Label.RT_ConOrderDetail2_Delivery
- AND Dealer_Info_text__c = :accountName
- AND (NOT Product_Type__c LIKE :userPro_Typestr)
- AND Consumable_order_minor__c = :ESetId
- AND Consumable_order_minor__r.Order_Owner_WorkLocal__c = :userWorkLocation
- AND Dealer_Arrive__c = FALSE
- AND Cancellation_Date__c = NULL
- AND Bar_Code__c IN :BarCodeListP
- ORDER BY Name
- ];
- if (reSet1.size() > 0) {
- for (Integer i = 0; i < reSet1.size(); i++) {
- if (ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)) {
- // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
- continue;
- } else {
- String str =
- '浜у搧绫诲瀷[' +
- reSet1[i].Product_Type__c +
- ']涓庣敤鎴风殑绫诲瀷[' +
- userPro_Type +
- ']涓嶇';
- ConsumableorderdetailsRecordserror.add(
- new ConsumableorderdetailsInfo(reSet1[i], str)
- );
- ErrorIdMap.put(reSet1[i].Bar_Code__c, reSet1[i].Bar_Code__c);
- }
- }
- }
-
- //鍒拌揣姝g‘淇℃伅
- reSet = [
- SELECT
- Id,
- Name,
- Intra_Trade_List_RMB__c,
- Asset_Model_No__c,
- Consumable_Product__c,
- Consumable_Product__r.Name,
- Consumable_Product__r.Name__c,
- Consumable_Product__r.Asset_Model_No__c,
- Sterilization_limit__c,
- Deliver_date__c,
- Bar_Code__c,
- Arrive_date__c,
- Send_Date__c,
- Consumable_order_minor__r.Name,
- Consumable_order_minor__c,
- Dealer_Arrive__c,
- Guarantee_period_for_products__c,
- CFDA_Status__c,
- ProductPacking_list_manual__c,
- Report_Product_Approbation__c,
- Report_Product_Expiration__c,
- Box_Piece__c,
- Rrturn_count__c,
- TracingCode__c,
- Agencyinfo_fromSAP__c,
- Frist_Storage_Agency__c,
- Dealer_Info_text__c,
- ContractNo_text__c /*,ContractNo__c*/,
- // tcm start
- Consumable_order_minor__r.ContractNo__c
- // tcm end
- FROM Consumable_order_details2__c
- WHERE
- recordtypeid = :System.Label.RT_ConOrderDetail2_Delivery
- AND Dealer_Info_text__c = :accountName
- AND Product_Type__c LIKE :userPro_Typestr
- AND Consumable_order_minor__c = :ESetId
- AND Consumable_order_minor__r.Order_Owner_WorkLocal__c = :userWorkLocation
- AND Dealer_Arrive__c = FALSE
- AND Cancellation_Date__c = NULL
- AND Bar_Code__c IN :BarCodeListP
- ORDER BY Name
- ];
- if (reSet.size() > 0) {
- Map<String, String> errorMap = new Map<String, String>();
- for (Integer i = 0; i < reSet.size(); i++) {
- if (
- ExistIdMap.containsKey(reSet[i].Bar_Code__c) ||
- ErrorIdMap.containsKey(reSet[i].Bar_Code__c)
- ) {
- // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
- continue;
- } else {
- Matcher n = Pattern.compile('[0-9]')
- .matcher(reSet[i].TracingCode__c);
- if (n.find()) {
- // gzw DB202305352696 鍏ュ簱绠$悊缂栫爜楠岃瘉绋嬪簭璋冩暣 start
- if (reSet[i].TracingCode__c.length() == 5) {
- String tr = reSet[i].TracingCode__c;
- String Ctr = tr.substring(tr.length() - 3, tr.length());
- String Btr = tr.substring(tr.length() - 4, tr.length() - 3);
- String Atr = tr.substring(tr.length() - 5, tr.length() - 4);
- if (
- Pattern.compile('[0-9]').matcher(Atr).find() ||
- Pattern.compile('[0-9]').matcher(Ctr).find()
- ) {
- String str = '绠$悊缂栫爜鏈夎锛岃妫�鏌ユ潯褰㈢爜鏁版嵁銆�';
- ConsumableorderdetailsRecordserror.add(
- new ConsumableorderdetailsInfo(reSet[i], str)
- );
- ErrorIdMap.put(reSet[i].Bar_Code__c, reSet[i].Bar_Code__c);
- continue;
+ //瀵规瘮鍏ㄩ儴搴撳瓨涓槸鍚﹀瓨鍦ㄧ鐞嗙紪鐮佷竴鏍凤紝barcode鍙蜂笉涓�鏍风殑浜у搧
+ reSet1 = [SELECT Id, Name,TracingCode__c,Bar_Code__c,Report_Product_Expiration__c
+ FROM Consumable_order_details2__c
+ WHERE Dealer_Arrive__c = true
+ AND Dealer_Shipment__c = false
+ AND Dealer_Saled__c = false
+ AND Lose_Flag__c = false
+ AND Dealer_Returned__c = false
+ AND Cancellation_Flag__c = false
+ AND TracingCode__c in :barMcodeMap.values()
+ AND Bar_Code__c not in :barMcodeMap.keySet()
+ AND Dealer_Info_text__c = :accountName
+ AND Arrive_Owner_Work_Location__c =: userWorkLocation
+ ORDER BY Name ];
+ if(reSet1.size()>0){
+ for (Integer i = 0; i < reSet1.size(); i++) {
+ if(ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)){
+ // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
+ continue;
+ }else{
+ for(String str : barMcodeMap.keySet()){
+ if(barMcodeMap.get(str) == reSet1[i].TracingCode__c){
+ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR, str + ' 鐨勭鐞嗙紪鐮佸凡缁忓瓨鍦ㄤ簬绯荤粺鐨勫簱瀛樹腑锛岃纭杈撳叆淇℃伅鏄惁鏈夎銆�'));
+ ErrorIdMap.put(str,str);
+ ErrorIdMap.put(reSet1[i].Bar_Code__c,reSet1[i].Bar_Code__c);
+ }
+ }
}
- }
- // String str = '绠$悊缂栫爜涓湁鏁板瓧锛岃涓庣鐞嗗憳纭鏄惁閿欒銆�';
- // ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet[i],str));
- // ErrorIdMap.put(reSet[i].Bar_Code__c,reSet[i].Bar_Code__c);
- // continue;
- // gzw DB202305352696 鍏ュ簱绠$悊缂栫爜楠岃瘉绋嬪簭璋冩暣 end
}
- ConsumableorderdetailsRecordsdummy.add(
- new ConsumableorderdetailsInfo(reSet[i])
- );
- ConsumableorderdetailsRecords.add(
- new ConsumableorderdetailsInfo(reSet[i])
- );
- ExistIdMap.put(reSet[i].Bar_Code__c, reSet[i].Bar_Code__c);
- }
}
- }
+ //绠$悊缂栫爜涓虹┖鐨勪骇鍝�
+ reSet1 = [SELECT Id, Name,Consumable_Product__r.Name__c,
+ Consumable_Product__c,Consumable_Product__r.Name, Sterilization_limit__c,
+ Deliver_date__c,Bar_Code__c,Box_Piece__c,
+ Arrive_date__c,Send_Date__c,Consumable_order_minor__r.Name,Consumable_order_minor__c,
+ TracingCode__c,Report_Product_Expiration__c
+ FROM Consumable_order_details2__c
+ WHERE Bar_Code__c in :BarCodeListP
+ AND Dealer_Info_text__c = :accountName
+ //AND Arrive_Owner_Work_Location__c =: userWorkLocation
+ AND (TracingCode__c = null
+ OR TracingCode__c = '')
+ ORDER BY Name ];
- //barcode涓嶄竴鑷达紝绠$悊缂栫爜涓�鑷�
- reSet = [
- SELECT
- Id,
- Name,
- Intra_Trade_List_RMB__c,
- Asset_Model_No__c,
- Consumable_Product__c,
- Consumable_Product__r.Name,
- Consumable_Product__r.Name__c,
- Consumable_Product__r.Asset_Model_No__c,
- Sterilization_limit__c,
- Deliver_date__c,
- Bar_Code__c,
- Arrive_date__c,
- Send_Date__c,
- Box_Piece__c,
- Rrturn_count__c,
- Consumable_order_minor__r.Name,
- Consumable_order_minor__c,
- Dealer_Arrive__c,
- Guarantee_period_for_products__c,
- CFDA_Status__c,
- ProductPacking_list_manual__c,
- Report_Product_Approbation__c,
- Report_Product_Expiration__c,
- TracingCode__c,
- Agencyinfo_fromSAP__c,
- Frist_Storage_Agency__c,
- ContractNo_text__c /*,ContractNo__c*/,
- // tcm start
- Consumable_order_minor__r.ContractNo__c
- // tcm end
- FROM Consumable_order_details2__c
- WHERE
- recordtypeid = :System.Label.RT_ConOrderDetail2_Delivery
- AND Cancellation_Date__c = NULL
- AND Dealer_Arrive__c = FALSE
- AND TracingCode__c IN :barMcodeMap.values()
- AND Bar_Code__c NOT IN :barMcodeMap.keySet()
- AND Dealer_Info_text__c = :accountName
- AND ((Consumable_order_minor__c != NULL
- AND Consumable_order_minor__r.Order_Owner_WorkLocal__c = :userWorkLocation)
- OR Consumable_order_minor__c = NULL)
- ORDER BY Name
- ];
- if (reSet.size() > 0) {
- for (Integer i = 0; i < reSet.size(); i++) {
- if (
- ExistIdMap.containsKey(reSet[i].Bar_Code__c) ||
- ErrorIdMap.containsKey(reSet[i].Bar_Code__c)
- ) {
- // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
- continue;
- } else {
- Matcher n = Pattern.compile('[0-9]')
- .matcher(reSet[i].TracingCode__c);
- if (n.find()) {
- // gzw DB202305352696 鍏ュ簱绠$悊缂栫爜楠岃瘉绋嬪簭璋冩暣 start
- if (reSet[i].TracingCode__c.length() == 5) {
- String tr = reSet[i].TracingCode__c;
- String Ctr = tr.substring(tr.length() - 3, tr.length());
- String Btr = tr.substring(tr.length() - 4, tr.length() - 3);
- String Atr = tr.substring(tr.length() - 5, tr.length() - 4);
- if (
- Pattern.compile('[0-9]').matcher(Atr).find() ||
- Pattern.compile('[0-9]').matcher(Ctr).find()
- ) {
- String str = '绠$悊缂栫爜鏈夎锛岃妫�鏌ユ潯褰㈢爜鏁版嵁銆�';
- ConsumableorderdetailsRecordserror.add(
- new ConsumableorderdetailsInfo(reSet[i], str)
- );
- ErrorIdMap.put(reSet[i].Bar_Code__c, reSet[i].Bar_Code__c);
- continue;
+ if(reSet1.size()>0){
+ for (Integer i = 0; i < reSet1.size(); i++) {
+ if(ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)){
+ // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
+ continue;
+ }else{
+ String str = '璇ヤ骇鍝佹病鏈夌鐞嗙紪鐮侊紝鏃犳硶鍏ュ簱';
+ ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet1[i],str));
+ ErrorIdMap.put(reSet1[i].Bar_Code__c,reSet1[i].Bar_Code__c);
}
- }
- // String str = '绠$悊缂栫爜涓湁鏁板瓧锛岃涓庣鐞嗗憳纭鏄惁閿欒銆�';
- // ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet[i],str));
- // ErrorIdMap.put(reSet[i].Bar_Code__c,reSet[i].Bar_Code__c);
- // continue;
- // gzw DB202305352696 鍏ュ簱绠$悊缂栫爜楠岃瘉绋嬪簭璋冩暣 end
}
- ExistIdMap.put(reSet[i].Bar_Code__c, reSet[i].Bar_Code__c);
- for (String str : barMcodeMap.keySet()) {
- if (barMcodeMap.get(str) == reSet[i].TracingCode__c) {
- reSet[i].Bar_Code__c = str;
- ExistIdMap.put(str, str);
- }
+ }
+ //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.INFO, '绠$悊缂栫爜涓虹┖鐨勪骇鍝� ' + ErrorIdMap));
+ //鏁翠綋鍒拌揣
+ if(EsetId == null || EsetId == ''){
+ if(ArrType!='ReG'){
+ //鍒拌揣浣嗕骇鍝佺被鍨嬩笌鐢ㄦ埛鐨勭被鍨嬩笉绗�
+ reSet1 = [SELECT Id,Name,Intra_Trade_List_RMB__c,Asset_Model_No__c,
+ Consumable_Product__c,Consumable_Product__r.Name,
+ Consumable_Product__r.Name__c,Consumable_Product__r.Asset_Model_No__c,
+ Sterilization_limit__c,Deliver_date__c,Bar_Code__c,
+ Arrive_date__c,Send_Date__c,Consumable_order_minor__r.Name,
+ Consumable_order_minor__c,Dealer_Arrive__c,
+ Guarantee_period_for_products__c,CFDA_Status__c,
+ ProductPacking_list_manual__c,Report_Product_Approbation__c,
+ Report_Product_Expiration__c,Box_Piece__c, Rrturn_count__c,
+ Product_Type__c
+ ,ContractNo_text__c/*,ContractNo__c1*/
+ // tcm start
+ ,Consumable_order_minor__r.ContractNo__c
+ // tcm end
+ FROM Consumable_order_details2__c
+ WHERE Bar_Code__c in :BarCodeListP
+ AND ( not Product_Type__c like :userPro_Typestr)
+ AND Dealer_Info_text__c = :accountName
+ AND ((Consumable_order_minor__c != null
+ AND Consumable_order_minor__r.Order_Owner_WorkLocal__c = :userWorkLocation)
+ OR Consumable_order_minor__c = null)
+ ORDER BY Name ];
+
+ if(reSet1.size()>0){
+ for (Integer i = 0; i < reSet1.size(); i++) {
+ if(ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)){
+ // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
+ continue;
+ }else{
+ String str = '浜у搧绫诲瀷['+reSet1[i].Product_Type__c+']涓庣敤鎴风殑绫诲瀷['+userPro_Type+']涓嶇';
+ ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet1[i],str));
+ ErrorIdMap.put(reSet1[i].Bar_Code__c,reSet1[i].Bar_Code__c);
+ }
+ }
+ }
+ //閿�鍞骇鍝�
+ reSet1 = [SELECT Id, Name,Consumable_Product__r.Name__c,
+ Consumable_Product__c,Consumable_Product__r.Name, Sterilization_limit__c,
+ Deliver_date__c,Bar_Code__c,Box_Piece__c,
+ Arrive_date__c,Send_Date__c,Consumable_order_minor__r.Name,Consumable_order_minor__c,
+ recordtypeid,Consumable_order_minor__r.Arrive_Order__c,OwnerId,Report_Product_Expiration__c
+ FROM Consumable_order_details2__c
+ WHERE Dealer_Saled__c = true
+ AND Dealer_Returned__c = false
+ AND Bar_Code__c in :BarCodeListP
+ AND Dealer_Info_text__c = :accountName
+ AND (Arrive_Owner_Work_Location__c =: userWorkLocation
+ OR OwnerId = :System.Label.User_OlympusSystem)
+ ORDER BY Name ];
+ if(reSet1.size()>0){
+ for (Integer i = 0; i < reSet1.size(); i++) {
+ if(ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)){
+ // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
+ continue;
+ }else{
+ String str = '';
+ if (reSet1[i].OwnerId == System.Label.User_OlympusSystem) {
+ str = '璇ュ晢鍝佹槸鐩撮攢浜у搧璇峰厛杩斿搧';
+ }else{
+ str = '璇ュ晢鍝佸凡缁忛攢鍞�';
+ }
+ ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet1[i],str));
+ ErrorIdMap.put(reSet1[i].Bar_Code__c,reSet1[i].Bar_Code__c);
+
+ }
+ }
+ }
+ //鍑哄簱浜у搧
+ reSet1 = [SELECT Id, Name,Consumable_Product__r.Name__c,
+ Consumable_Product__c,Consumable_Product__r.Name, Sterilization_limit__c,
+ Deliver_date__c,Bar_Code__c,Box_Piece__c,
+ Arrive_date__c,Send_Date__c,Consumable_order_minor__r.Name,Consumable_order_minor__c,
+ recordtypeid,Consumable_order_minor__r.Arrive_Order__c,Report_Product_Expiration__c
+ FROM Consumable_order_details2__c
+ WHERE Dealer_Shipment__c = true
+ AND Dealer_Returned__c = false
+ AND Bar_Code__c in :BarCodeListP
+ AND Dealer_Info_text__c = :accountName
+ AND Arrive_Owner_Work_Location__c =: userWorkLocation
+ ORDER BY Name ];
+ if(reSet1.size()>0){
+ for (Integer i = 0; i < reSet1.size(); i++) {
+ if(ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)){
+ // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
+ continue;
+ }else{
+ String str = '璇ュ晢鍝佸凡缁忓嚭搴�';
+ ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet1[i],str));
+ ErrorIdMap.put(reSet1[i].Bar_Code__c,reSet1[i].Bar_Code__c);
+ }
+ }
+ }
+ //宸插埌璐т骇鍝�
+ reSet1 = [SELECT Id, Name,Consumable_Product__r.Name__c,
+ Consumable_Product__c,Consumable_Product__r.Name, Sterilization_limit__c,
+ Deliver_date__c,Bar_Code__c,Lose_Flag__c,Box_Piece__c,
+ Arrive_date__c,Send_Date__c,Consumable_order_minor__r.Name,Consumable_order_minor__c,
+ recordtypeid,Consumable_order_minor__r.Arrive_Order__c,Report_Product_Expiration__c
+ FROM Consumable_order_details2__c
+ WHERE Dealer_Arrive__c = true
+ AND Dealer_Returned__c = false
+ AND Bar_Code__c in :BarCodeListP
+ AND Dealer_Info_text__c = :accountName
+ AND Arrive_Owner_Work_Location__c =: userWorkLocation
+ ORDER BY Name ];
+ if(reSet1.size()>0){
+ for (Integer i = 0; i < reSet1.size(); i++) {
+ if(ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)){
+ // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
+ continue;
+ }else{
+ String str = '璇ュ晢鍝佸凡缁忓埌璐�';
+ if (reSet1[i].Lose_Flag__c == TRUE) {
+ str = '璇ュ晢鍝佸凡缁忎涪澶�';
+ }
+ ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet1[i],str));
+ ErrorIdMap.put(reSet1[i].Bar_Code__c,reSet1[i].Bar_Code__c);
+ }
+ }
+ }
+
+ //宸叉媶鐩掍骇鍝�
+ reSet1 = [SELECT Id, Name,Consumable_Product__r.Name__c,
+ Consumable_Product__c,Consumable_Product__r.Name, Sterilization_limit__c,
+ Deliver_date__c,Bar_Code__c,Box_Piece__c,
+ Arrive_date__c,Send_Date__c,Consumable_order_minor__r.Name,Consumable_order_minor__c,
+ recordtypeid,Consumable_order_minor__r.Arrive_Order__c,Report_Product_Expiration__c
+ FROM Consumable_order_details2__c
+ WHERE Dealer_Arrive__c = true
+ AND Bar_Code__c in :BarCodeListP
+ AND (Dealer_Info_text__c != :accountName
+ OR (Dealer_Info_text__c = :accountName
+ AND Arrive_Owner_Work_Location__c !=: userWorkLocation))
+ AND Box_Piece__c = '涓�'
+ ORDER BY Name ];
+ if(reSet1.size()>0){
+ for (Integer i = 0; i < reSet1.size(); i++) {
+ if(ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)){
+ // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
+ continue;
+ }else{
+ String str = '宸叉媶鐩掔殑浜у搧涓嶈兘鍏ュ簱';
+ ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet1[i],str));
+ ErrorIdMap.put(reSet1[i].Bar_Code__c,reSet1[i].Bar_Code__c);
+ }
+ }
+ }
+
+ // 缁忛攢鍟嗕箣闂存垨鑰呭悓涓�缁忛攢鍟嗕笉鍚屽伐浣滃湴璋冭揣
+ reSet1 = [SELECT Id, Name,Consumable_Product__r.Name__c,Asset_Model_No__c, Arrive_Owner_Work_Location__c,
+ Consumable_Product__c,Consumable_Product__r.Name, Sterilization_limit__c,Box_Piece__c,
+ Deliver_date__c,Bar_Code__c,TracingCode__c, Dealer_Info_text__c, OwnerId, Lose_Flag__c,
+ Arrive_date__c,Send_Date__c,Consumable_order_minor__r.Name,Consumable_order_minor__c,
+ recordtypeid,Consumable_order_minor__r.Arrive_Order__c,SerialLotNo__c, Dealer_Arrive__c,
+ Consumable_Arrived_order__r.Dealer_Info__c, Consumable_Arrived_order__r.Dealer_Info__r.Name,
+ Intra_Trade_List_RMB__c, Dealer_Shipment__c, Dealer_Saled__c,Consumable_Product__r.Asset_Model_No__c
+ // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
+ ,SummonsForDirction_det__c,Transfer_Time__c,Frist_Transfer_Agency__c,Agency_Transfer__c
+ // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
+ // 棣栨鍏ュ簱缁忛攢鍟嗕俊鎭� add by gzw 2020-04-27 start
+ ,Agencyinfo_fromSAP__c,Frist_Storage_Agency__c
+ // 棣栨鍏ュ簱缁忛攢鍟嗕俊鎭� add by gzw 2020-04-27 end
+
+ //add by rentx 2020-10-13 start 浜掔浉璋冭揣鏃�,鍊熷叆鏂硅褰昐AP鍚堝悓鍙�
+ ,ContractNo_text__c/*,ContractNo__c */
+ // tcm start
+ ,Consumable_order_minor__r.ContractNo__c
+ // tcm end
+ //add by rentx 2020-10-13 end
+ //add by rentx 2021-03-22 start
+ ,hospitalSpecialOffer__c
+ ,exchangeOutPattern__c
+ ,Report_Product_Expiration__c
+ //add by rentx 2021-03-22 end
+ FROM Consumable_order_details2__c
+ WHERE Dealer_Arrive__c = TRUE
+ //AND Dealer_Shipment__c= false
+ //AND Dealer_Saled__c = FALSE
+ AND Dealer_Returned__c = FALSE
+ AND Cancellation_Flag__c = FALSE
+ AND Bar_Code__c in :BarCodeListP
+ //AND (Dealer_Shipment__c = FALSE
+ // OR (Dealer_Shipment__c = TRUE
+ // AND Consumable_Shipment_order__r.SummonsForDirction__c != '浜掔浉璋冭揣'))
+ AND (Dealer_Info_text__c != :accountName
+ OR (Dealer_Info_text__c = :accountName
+ AND Arrive_Owner_Work_Location__c != :userWorkLocation)
+ )
+ // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
+ order by Bar_Code__c, Transfer_Time__c desc
+ // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 end
+ ];
+ if(reSet1.size()>0){
+ for (Integer i = 0; i < reSet1.size(); i++) {
+ if(ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)){
+ // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
+ continue;
+ }else{
+ if(otherAgencyMap.containsKey(reSet1[i].Bar_Code__c)){
+ continue;
+ }else{
+ //鍏朵粬缁忛攢鍟嗗嚭搴撲骇鍝佸彲浠ュ叆搴�
+ List<String> barcodedetList = new List<String>();
+ barcodedetList.add(reSet1[i].Bar_Code__c);
+ barcodedetList.add(String.valueOf(reSet1[i].Sterilization_limit__c));
+ barcodedetList.add(reSet1[i].SerialLotNo__c);
+ barcodedetList.add(reSet1[i].TracingCode__c);
+ if (reSet1[i].Lose_Flag__c == false
+ //&& reSet1[i].Dealer_Info_text__c == accountName
+ ) {
+ consumableorderdetails2Cancle.add(reSet1[i]);
+ }
+ // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
+ if (reSet1[i].SummonsForDirction_det__c == '浜掔浉璋冭揣' && !orderdetails2trMap.containsKey(reSet1[i].Bar_Code__c)) {
+ orderdetails2trMap.put(reSet1[i].Bar_Code__c, reSet1[i]);
+ }
+ // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 end
+ consumableInventory.add(new ConsumableorderdetailsInfo(reSet1[i],barcodedetList));
+ Consumable_order_details2__c codsIns = new Consumable_order_details2__c();
+
+ codsIns.RecordTypeId = System.Label.RT_ConOrderDetail2_Delivery;
+ codsIns.Intra_Trade_List_RMB__c = reSet1[i].Intra_Trade_List_RMB__c;
+ //gzw 鎵嬪姩鍏ュ簱 榛樿浜у搧鍗曚环 20230307
+ codsIns.Asset_Model_No__c = reSet1[i].Asset_Model_No__c;
+ codsIns.Direct_Arrive_Product__c = true;
+ codsIns.Sterilization_limit__c = reSet1[i].Sterilization_limit__c;
+ codsIns.Consumable_Product__c = reSet1[i].Consumable_Product__c;
+ codsIns.Bar_Code__c = reSet1[i].Bar_Code__c;
+ codsIns.SerialLotNo__c = reSet1[i].SerialLotNo__c;
+ codsIns.TracingCode__c = reSet1[i].TracingCode__c;
+ // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
+ codsIns.Transfer_Time__c = reSet1[i].Transfer_Time__c == null? 1 : reSet1[i].Transfer_Time__c;
+ codsIns.Frist_Transfer_Agency__c = reSet1[i].Frist_Transfer_Agency__c == null ? reSet1[i].Dealer_Info_text__c : reSet1[i].Frist_Transfer_Agency__c;
+ codsIns.Agency_Transfer__c = true;
+ // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 end
+
+ // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 start
+ codsIns.Agencyinfo_fromSAP__c = reSet1[i].Agencyinfo_fromSAP__c;
+ codsIns.Frist_Storage_Agency__c = reSet1[i].Frist_Storage_Agency__c;
+ // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 end
+
+ //add by rentx 2020-10-13 start 浜掔浉璋冭揣鏃�,璁板綍SAP鍚堝悓鍙�
+ // update tcm start
+ if (String.isBlank(reSet1[i].Consumable_order_minor__r.ContractNo__c)) {
+ codsIns.ContractNo_text__c= reSet1[i].ContractNo_text__c;
+ }else {
+ codsIns.ContractNo_text__c= reSet1[i].Consumable_order_minor__r.ContractNo__c;
+ }
+ // update tcm end
+ //add by rentx 2020-10-13 end
+
+ //add by rentx 2021-03-22 start
+ // if (reSet1[i].Lose_Flag__c == true){
+ if (reSet1[i].hospitalSpecialOffer__c == true && reSet1[i].SummonsForDirction_det__c == '浜掔浉璋冭揣'){
+ codsIns.exchangeOutPattern__c = true;
+ }
+ //add by rentx 2021-03-22 end
+
+ consumableorderdetails2Insert.add(codsIns);
+ otherAgencyMap.put(reSet1[i].Bar_Code__c,reSet1[i].Bar_Code__c);
+ //String str = '璇ュ晢鍝佸湪鍏朵粬缁忛攢鍟嗗簱瀛�';
+ //ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet1[i],str));
+ //ErrorIdMap.put(reSet1[i].Bar_Code__c,reSet1[i].Bar_Code__c);
+ }
+ }
+ }
+ }
+
+ //鍙戦敊搴� 鏈埌璐�
+ reSet1 = [SELECT Id, Name,Consumable_Product__r.Name__c,Asset_Model_No__c,
+ Consumable_Product__c,Consumable_Product__r.Name, Sterilization_limit__c,
+ Deliver_date__c,Bar_Code__c,TracingCode__c,Box_Piece__c,
+ Arrive_date__c,Send_Date__c,Consumable_order_minor__r.Name,Consumable_order_minor__c,
+ recordtypeid,Consumable_order_minor__r.Arrive_Order__c,SerialLotNo__c,Dealer_Arrive__c,
+ Dealer_Shipment__c, Dealer_Saled__c,Consumable_Product__r.Asset_Model_No__c
+ // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
+ ,SummonsForDirction_det__c,Transfer_Time__c,Frist_Transfer_Agency__c,Agency_Transfer__c,
+ Dealer_Info_text__c,Intra_Trade_List_RMB__c
+ // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
+ // 棣栨鍏ュ簱缁忛攢鍟嗕俊鎭� add by gzw 2020-04-27 start
+ ,Agencyinfo_fromSAP__c,Frist_Storage_Agency__c
+ // 棣栨鍏ュ簱缁忛攢鍟嗕俊鎭� add by gzw 2020-04-27 end
+ //add by rentx 2020-10-13 start 浜掔浉璋冭揣鏃�,鍊熷叆鏂硅褰昐AP鍚堝悓鍙�
+ ,ContractNo_text__c/*,ContractNo__c*/
+ // tcm start
+ ,Consumable_order_minor__r.ContractNo__c
+ // tcm end
+ //add by rentx 2020-10-13 end 浜掔浉璋冭揣鏃�,鍊熷叆鏂硅褰昐AP鍚堝悓鍙�
+ ,hospitalSpecialOffer__c
+ ,exchangeOutPattern__c
+ ,Lose_Flag__c,Report_Product_Expiration__c
+ FROM Consumable_order_details2__c
+ WHERE Dealer_Arrive__c = FALSE
+ AND Dealer_Shipment__c= FALSE
+ AND Dealer_Saled__c = FALSE
+ //AND Cancellation_Flag__c = FALSE
+ AND Bar_Code__c in :BarCodeListP
+ AND (Dealer_Info_text__c != :accountName
+ OR (Dealer_Info_text__c = :accountName
+ AND ((Consumable_order_minor__c != null
+ AND (Consumable_order_minor__r.Order_Owner_WorkLocal__c != :userWorkLocation
+ OR (Consumable_order_minor__r.Order_Owner_WorkLocal__c = :userWorkLocation
+ AND Cancellation_Flag__c = TRUE)))
+ OR (Consumable_order_minor__c = null AND Cancellation_Flag__c = TRUE)))
+ )
+ // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
+ order by Bar_Code__c, Transfer_Time__c desc
+ // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 end
+ ];
+ if(reSet1.size()>0){
+ for (Integer i = 0; i < reSet1.size(); i++) {
+ if(ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)){
+ // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
+ continue;
+ }else{
+ if(otherAgencyMap.containsKey(reSet1[i].Bar_Code__c)){
+ continue;
+ }else{
+ //鍙栨秷鏄庣粏
+ List<String> barcodedetList = new List<String>();
+ barcodedetList.add(reSet1[i].Bar_Code__c);
+ barcodedetList.add(String.valueOf(reSet1[i].Sterilization_limit__c));
+ barcodedetList.add(reSet1[i].SerialLotNo__c);
+ barcodedetList.add(reSet1[i].TracingCode__c);
+ // 鍙戦敊搴撳瓨鏃讹紝鑷姩鍙栨秷 update by gzw 2020-04-15 start
+ //if (reSet1[i].Consumable_order_minor__c == null) {
+ consumableorderdetails2Cancle.add(reSet1[i]);
+ //}
+ // 鍙戦敊搴撳瓨鏃讹紝鑷姩鍙栨秷 update by gzw 2020-04-15 start
+ // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
+ if (reSet1[i].SummonsForDirction_det__c == '浜掔浉璋冭揣' && !orderdetails2trMap.containsKey(reSet1[i].Bar_Code__c)) {
+
+ orderdetails2trMap.put(reSet1[i].Bar_Code__c, reSet1[i]);
+ }
+ // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 end
+ consumableInventory.add(new ConsumableorderdetailsInfo(reSet1[i],barcodedetList));
+ Consumable_order_details2__c codsIns = new Consumable_order_details2__c();
+
+ codsIns.RecordTypeId = System.Label.RT_ConOrderDetail2_Delivery;
+ codsIns.Intra_Trade_List_RMB__c = reSet1[i].Intra_Trade_List_RMB__c;
+ //gzw 鎵嬪姩鍏ュ簱 榛樿浜у搧鍗曚环 20230307
+ codsIns.Asset_Model_No__c = reSet1[i].Asset_Model_No__c;
+ codsIns.Direct_Arrive_Product__c = true;
+ codsIns.Sterilization_limit__c = reSet1[i].Sterilization_limit__c;
+ codsIns.Consumable_Product__c = reSet1[i].Consumable_Product__c;
+ codsIns.Bar_Code__c = reSet1[i].Bar_Code__c;
+ codsIns.SerialLotNo__c = reSet1[i].SerialLotNo__c;
+ codsIns.TracingCode__c = reSet1[i].TracingCode__c;
+ // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
+ // 娌℃湁鍏ュ簱鏃讹紝娌℃湁鍊熻皟淇℃伅
+ codsIns.Transfer_Time__c = reSet1[i].Transfer_Time__c;
+ codsIns.Frist_Transfer_Agency__c = reSet1[i].Frist_Transfer_Agency__c;
+ codsIns.Agency_Transfer__c = reSet1[i].Agency_Transfer__c;
+ // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 end
+
+ // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 start
+ codsIns.Agencyinfo_fromSAP__c = reSet1[i].Agencyinfo_fromSAP__c;
+ codsIns.Frist_Storage_Agency__c = reSet1[i].Frist_Storage_Agency__c;
+ // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 end
+
+ //add by rentx 2020-10-13 start 浜掔浉璋冭揣鏃�,鍊熷叆鏂硅褰昐AP鍚堝悓鍙�
+ // update tcm start
+ if (String.isBlank(reSet1[i].Consumable_order_minor__r.ContractNo__c)) {
+ codsIns.ContractNo_text__c= reSet1[i].ContractNo_text__c;
+ }else {
+ codsIns.ContractNo_text__c= reSet1[i].Consumable_order_minor__r.ContractNo__c;
+ }
+ // update tcm end
+ //add by rentx 2020-10-13 end 浜掔浉璋冭揣鏃�,鍊熷叆鏂硅褰昐AP鍚堝悓鍙�
+
+ //add by rentx 2021-03-22 start
+ // if (reSet1[i].Lose_Flag__c == true){
+ if (reSet1[i].hospitalSpecialOffer__c == true && reSet1[i].SummonsForDirction_det__c == '浜掔浉璋冭揣'){
+ codsIns.exchangeOutPattern__c = true;
+ }
+ //add by rentx 2021-03-22 end
+
+ consumableorderdetails2Insert.add(codsIns);
+ otherAgencyMap.put(reSet1[i].Bar_Code__c,reSet1[i].Bar_Code__c);
+ }
+ }
+ }
+ }
+ }else{
+ //杩斿搧妫�鏌�
+ //鍒拌揣浣嗕骇鍝佺被鍨嬩笌鐢ㄦ埛鐨勭被鍨嬩笉绗�
+ reSet1 = [SELECT Id,Name,Intra_Trade_List_RMB__c,Asset_Model_No__c,
+ Consumable_Product__c,Consumable_Product__r.Name,
+ Consumable_Product__r.Name__c,Consumable_Product__r.Asset_Model_No__c,
+ Sterilization_limit__c,Deliver_date__c,Bar_Code__c,
+ Arrive_date__c,Send_Date__c,Consumable_order_minor__r.Name,
+ Consumable_order_minor__c,Dealer_Arrive__c,
+ Guarantee_period_for_products__c,CFDA_Status__c,
+ ProductPacking_list_manual__c,Report_Product_Approbation__c,
+ Report_Product_Expiration__c,Box_Piece__c, Rrturn_count__c,
+ Product_Type__c
+ //add by rentx 2020-10-14 start
+ ,ContractNo_text__c/*,ContractNo__c*/
+ // tcm start
+ ,Consumable_order_minor__r.ContractNo__c
+ // tcm end
+ //add by rentx 2020-10-14 end
+ FROM Consumable_order_details2__c
+ WHERE Bar_Code__c in :BarCodeListP
+ AND ( not Product_Type__c like :userPro_Typestr)
+ AND Dealer_Info_text__c = :accountName
+ AND ((Consumable_order_minor__c != null
+ AND Consumable_order_minor__r.Order_Owner_WorkLocal__c = :userWorkLocation)
+ OR Consumable_order_minor__c = null)
+ ORDER BY Name ];
+
+ if(reSet1.size()>0){
+ for (Integer i = 0; i < reSet1.size(); i++) {
+ if(ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)){
+ // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
+ continue;
+ }else{
+ String str = '浜у搧绫诲瀷['+reSet1[i].Product_Type__c+']涓庣敤鎴风殑绫诲瀷['+userPro_Type+']涓嶇';
+ ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet1[i],str));
+ ErrorIdMap.put(reSet1[i].Bar_Code__c,reSet1[i].Bar_Code__c);
+ }
+ }
+ }
+ reSet1 = [SELECT Id, Name,Consumable_Product__r.Name__c,
+ Consumable_Product__c,Consumable_Product__r.Name, Sterilization_limit__c,
+ Deliver_date__c,Bar_Code__c,Box_Piece__c,
+ Arrive_date__c,Send_Date__c,Consumable_order_minor__r.Name,Consumable_order_minor__c,
+ recordtypeid,Consumable_order_minor__r.Arrive_Order__c
+ //add by rentx 2020-10-14 start
+ ,ContractNo_text__c/*,ContractNo__c*/
+ // tcm start
+ ,Consumable_order_minor__r.ContractNo__c
+ // tcm end
+ ,Report_Product_Expiration__c
+ //add by rentx 2020-10-14 end
+ FROM Consumable_order_details2__c
+ WHERE Dealer_Arrive__c = FALSE
+ AND Dealer_Shipment__c= FALSE
+ AND Dealer_Saled__c = FALSE
+ AND Dealer_Returned__c = false
+ AND Bar_Code__c in :BarCodeListP
+ AND Dealer_Info_text__c = :accountName
+ ORDER BY Name ];//娌″埌璐�
+ if(reSet1.size()>0){
+ for (Integer i = 0; i < reSet1.size(); i++) {
+ if(ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)){
+ // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
+ continue;
+ }else{
+ String str = '璇ュ晢鍝佸皻鏈叆搴�';
+ ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet1[i],str));
+ ErrorIdMap.put(reSet1[i].Bar_Code__c,reSet1[i].Bar_Code__c);
+ }
+ }
+ }
+ reSet1 = [SELECT Id, Name,Consumable_Product__r.Name__c,ToDueDateDays__c,
+ Consumable_Product__c,Consumable_Product__r.Name, Sterilization_limit__c,
+ Deliver_date__c,Bar_Code__c,Lose_Flag__c,Box_Piece__c,
+ Arrive_date__c,Send_Date__c,Consumable_order_minor__r.Name,Consumable_order_minor__c,
+ recordtypeid,Consumable_order_minor__r.Arrive_Order__c
+ //add by rentx 2020-10-14 start
+ ,ContractNo_text__c/*,ContractNo__c*/
+ // tcm start
+ ,Consumable_order_minor__r.ContractNo__c
+ // tcm end
+ , Report_Product_Expiration__c
+ //add by rentx 2020-10-14 end
+ FROM Consumable_order_details2__c
+ WHERE Dealer_Arrive__c = true
+ AND Dealer_Shipment__c= FALSE
+ AND Dealer_Saled__c = FALSE
+ AND Bar_Code__c in :BarCodeListP
+ AND Dealer_Returned__c = false
+ // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
+ //AND Lose_Flag__c = FALSE
+ // AND Lose_Flag__c = FALSE
+ // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
+ AND Dealer_Info_text__c = :accountName
+ AND Arrive_Owner_Work_Location__c =: userWorkLocation
+ // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
+ // Gzw 20201215淇锛屾媶鐩掍骇鍝佷笉鍒ゆ柇
+ AND Box_Piece__c = '鐩�'
+ // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 end
+ ORDER BY Name ];//娌″嚭搴擄紝娌¢攢鍞紝灏辨槸鍦ㄥ簱
+ if(reSet1.size()>0){
+ for (Integer i = 0; i < reSet1.size(); i++) {
+ if(ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)){
+ // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
+ continue;
+ }else{
+
+ // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
+ // String str = '璇ュ晢鍝佸湪搴�';
+ // if (reSet1[i].Lose_Flag__c) {
+ // str = '璇ュ晢鍝佷涪澶�';
+ // }
+ String str = '';
+ if(reSet1[i].Lose_Flag__c == false){
+ str = '璇ュ晢鍝佸湪搴�';//娌″嚭搴� 锛屾病閿�鍞紝娌′涪澶卞氨鏄湪搴撱��
+ }
+ if(reSet1[i].Lose_Flag__c == true && reSet1[i].ToDueDateDays__c >= 0){
+ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.WARNING, '浜у搧'+reSet1[i].Consumable_Product__r.Name+'瀛樺湪涓㈠け璁板綍'));//濡傛灉涓㈠け浜у搧灏辩粰鎻愮ず銆�
+ }
+ if (reSet1[i].Lose_Flag__c == true && reSet1[i].ToDueDateDays__c < 0) {
+ str = '杩囨湡宸查攢瀛樹骇鍝侊紝涓嶅厑璁歌繑鍝�';
+ }
+ if(str != ''){
+ ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet1[i],str));
+ ErrorIdMap.put(reSet1[i].Bar_Code__c,reSet1[i].Bar_Code__c);
+ }
+ // ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet1[i],str));
+ // ErrorIdMap.put(reSet1[i].Bar_Code__c,reSet1[i].Bar_Code__c);
+ // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 end
+ }
+ }
+ }
}
- ConsumableorderdetailsRecordsdummy.add(
- new ConsumableorderdetailsInfo(reSet[i])
- );
- ConsumableorderdetailsRecords.add(
- new ConsumableorderdetailsInfo(reSet[i])
- );
- }
- }
- }
- AllMap.putAll(ErrorIdMap);
- AllMap.putAll(ExistIdMap);
- //寰楀埌涓嶅瓨鍦ㄧ殑BarCode
- for (Integer i = 0; i < BarCodeListP.size(); i++) {
- if (AllMap.containsKey(BarCodeListP[i])) {
- continue;
- } else if (otherAgencyMap.containsKey(BarCodeListP[i])) {
- continue;
- }
+
+
+
+
+ //鍒拌揣姝g‘淇℃伅
+ reSet = [SELECT Id,
+ Name,
+ Intra_Trade_List_RMB__c,
+ Asset_Model_No__c,
+ Consumable_Product__c,
+ Consumable_Product__r.Name,
+ Consumable_Product__r.Name__c,
+ Consumable_Product__r.Asset_Model_No__c,
+ Sterilization_limit__c,
+ Deliver_date__c,
+ Bar_Code__c,
+ Arrive_date__c,
+ Send_Date__c,
+ Box_Piece__c,
+ Rrturn_count__c,
+ Consumable_order_minor__r.Name,
+ Consumable_order_minor__c,
+ Dealer_Arrive__c,
+ Guarantee_period_for_products__c,
+ CFDA_Status__c,
+ ProductPacking_list_manual__c,
+ Report_Product_Approbation__c,
+ Report_Product_Expiration__c,
+ Consumable_Product__r.Pro2_Dealer_ENG__c,
+ Consumable_Product__r.Pro2_Dealer_Object__c,
+ TracingCode__c,
+ Agencyinfo_fromSAP__c,
+ Frist_Storage_Agency__c,
+ Dealer_Info_text__c
+ //add by rentx 2020-10-14 start
+ ,ContractNo_text__c/*,ContractNo__c*/
+ // tcm start
+ ,Consumable_order_minor__r.ContractNo__c
+ // tcm end
+ //add by rentx 2020-10-14 end
+ FROM Consumable_order_details2__c
+ WHERE recordtypeid = :System.Label.RT_ConOrderDetail2_Delivery
+ AND Cancellation_Date__c = null
+ AND Dealer_Arrive__c = false
+ AND Product_Type__c like :userPro_Typestr
+ AND Bar_Code__c in :BarCodeListP
+ AND Dealer_Info_text__c = :accountName
+ AND ((Consumable_order_minor__c != null
+ AND Consumable_order_minor__r.Order_Owner_WorkLocal__c = :userWorkLocation)
+ OR Consumable_order_minor__c = null)
+ ORDER BY Name ];
+
+ if(reSet.size()>0){
+ //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'ErrorIdMap+++ '+ ErrorIdMap.keyset()));
+ Map<String,String> errorMap = new Map<String,String>();
+ for (Integer i = 0; i < reSet.size(); i++) {
+
+ if(ExistIdMap.containsKey(reSet[i].Bar_Code__c) || ErrorIdMap.containsKey(reSet[i].Bar_Code__c)){
+ // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
+ continue;
+ }else{
+ Matcher n = Pattern.compile('[0-9]').matcher(reSet[i].TracingCode__c);
+ if(n.find()){
+ String str = '绠$悊缂栫爜涓湁鏁板瓧锛岃涓庣鐞嗗憳纭鏄惁閿欒銆�';
+ ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet[i],str));
+ ErrorIdMap.put(reSet[i].Bar_Code__c,reSet[i].Bar_Code__c);
+ continue;
+ }
+ if(otherAgencyMap.containsKey(reSet[i].Bar_Code__c)){
+ for (Integer j=0; j<consumableInventory.size(); j++) {
+ ConsumableorderdetailsInfo codInfo = consumableInventory.get(j);
+ if (codInfo.barCodeNo == reSet[i].Bar_Code__c) {
+ consumableInventory.remove(j);
+ break;
+ }
+ }
+ for (Integer m=0; m<consumableorderdetails2Insert.size(); m++) {
+ Consumable_order_details2__c cod2 = consumableorderdetails2Insert.get(m);
+ if (cod2.Bar_Code__c == reSet[i].Bar_Code__c) {
+ consumableorderdetails2Insert.remove(m);
+ break;
+ }
+ }
+ }
+ //orderId.add(reSet[i].Consumable_order_minor__c);
+ //prodName.add(reSet[i].Consumable_Product__r.Name);
+ ConsumableorderdetailsRecordsdummy.add(new ConsumableorderdetailsInfo(reSet[i]));
+ ConsumableorderdetailsRecords.add(new ConsumableorderdetailsInfo(reSet[i]));
+ ExistIdMap.put(reSet[i].Bar_Code__c,reSet[i].Bar_Code__c);
+ }
+ }
+ }
+ //barcode涓嶄竴鑷达紝绠$悊缂栫爜涓�鑷�
+ reSet = [SELECT Id,
+ Name,
+ Intra_Trade_List_RMB__c,
+ Asset_Model_No__c,
+ Consumable_Product__c,
+ Consumable_Product__r.Name,
+ Consumable_Product__r.Name__c,
+ Consumable_Product__r.Asset_Model_No__c,
+ Sterilization_limit__c,
+ Deliver_date__c,
+ Bar_Code__c,
+ Arrive_date__c,
+ Send_Date__c,
+ Consumable_order_minor__r.Name,
+ Consumable_order_minor__c,
+ Dealer_Arrive__c,
+ Guarantee_period_for_products__c,
+ CFDA_Status__c,
+ ProductPacking_list_manual__c,
+ Report_Product_Approbation__c,
+ Report_Product_Expiration__c,
+ Box_Piece__c,
+ Rrturn_count__c,
+ TracingCode__c
+ ,Agencyinfo_fromSAP__c
+ ,Frist_Storage_Agency__c
+ //add by rentx 2020-10-14 start
+ ,ContractNo_text__c/*,ContractNo__c */
+ // tcm start
+ ,Consumable_order_minor__r.ContractNo__c
+ // tcm end
+ //add by rentx 2020-10-14 end
+ FROM Consumable_order_details2__c
+ WHERE recordtypeid = :System.Label.RT_ConOrderDetail2_Delivery
+ AND Dealer_Info_text__c = :accountName
+ //update by rentx 2021-01-04 start CHAN-BWX3XW
+ // AND Consumable_order_minor__c != null
+ // AND Consumable_order_minor__r.Order_Owner_WorkLocal__c = :userWorkLocation
+ AND ((Consumable_order_minor__c != null AND Consumable_order_minor__r.Order_Owner_WorkLocal__c = :userWorkLocation) OR Consumable_order_minor__c = null)
+ //update by rentx 2021-01-04 end CHAN-BWX3XW
+ AND Dealer_Arrive__c = false
+ AND Cancellation_Date__c = null
+ AND TracingCode__c in :barMcodeMap.values()
+ AND Bar_Code__c not in :barMcodeMap.keySet()
+ ORDER BY Name ];
+
+ if(reSet.size()>0){
+ for (Integer i = 0; i < reSet.size(); i++) {
+ if(ExistIdMap.containsKey(reSet[i].Bar_Code__c) || ErrorIdMap.containsKey(reSet[i].Bar_Code__c)){
+ // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
+ continue;
+ }else{
+ Matcher n = Pattern.compile('[0-9]').matcher(reSet[i].TracingCode__c);
+ if(n.find()){
+ String str = '绠$悊缂栫爜涓湁鏁板瓧锛岃涓庣鐞嗗憳纭鏄惁閿欒銆�';
+ ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet[i],str));
+ ErrorIdMap.put(reSet[i].Bar_Code__c,reSet[i].Bar_Code__c);
+ continue;
+ }
+ ExistIdMap.put(reSet[i].Bar_Code__c,reSet[i].Bar_Code__c);
+ for(String str : barMcodeMap.keySet()){
+ // BarCode涓嶄竴鑷存椂鐨勮鍛婁俊鎭�
+ if(reSet[i].Bar_Code__c != str && reSet[i].TracingCode__c == barMcodeMap.get(str)){
+ // 20220815 ljh SWAG-CH65B7 start
+ // ApexPages.addmessage(new ApexPages.message(ApexPages.severity.WARNING,'姝ょ鐞嗙紪鐮佷笌瀹為檯鍙戣揣BarCode涓嶄竴鑷达紝璇锋牳瀵圭鐞嗙紪鐮�('+ str +')鐨勫叆搴撳強搴撳瓨鏁版嵁銆�'));
+ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.WARNING,'鏉″舰鐮佷负('+ str +')鐨勫叆搴撴暟鎹笌鍙戣揣鏁版嵁涓嶄竴鑷�'));
+ // 20220815 ljh SWAG-CH65B7 end
+ }
+ if(barMcodeMap.get(str) == reSet[i].TracingCode__c){
+ reSet[i].Bar_Code__c = str;
+ //=====================================
+ // ApexPages.addmessage(new ApexPages.message(ApexPages.severity.WARNING,'鍏ュ簱BarCode('+ str +')鍜屽簱瀛樻潯鐮佷笉涓�鑷淬��'));
+ ExistIdMap.put(str,str);
+ }
+ }
+ ConsumableorderdetailsRecordsdummy.add(new ConsumableorderdetailsInfo(reSet[i]));
+ ConsumableorderdetailsRecords.add(new ConsumableorderdetailsInfo(reSet[i]));
+ }
+ }
+ }
+
+
+ // CHAN-BD43NK 鍏抽棴鐩存帴杩斿搧鍔熻兘 杩藉姞 barcode涓嶄竴鑷村垽鏂�
+ reSet1 = [SELECT Id,Name,TracingCode__c,Bar_Code__c,Sale_orderName__c,Report_Product_Expiration__c
+ FROM Consumable_order_details2__c
+ WHERE Dealer_Arrive__c = true
+ AND (Dealer_Shipment__c = true
+ OR Dealer_Saled__c = true)
+ AND TracingCode__c in :barMcodeMap.values()
+ AND Bar_Code__c not in :barMcodeMap.keySet()
+ AND Dealer_Info_text__c = :accountName
+ AND Arrive_Owner_Work_Location__c =: userWorkLocation
+ ORDER BY Name ];
+ if(reSet1.size()>0){
+ for (Integer i = 0; i < reSet1.size(); i++) {
+ if(ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)){
+ // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
+ continue;
+ }else{
+ for(String str : barMcodeMap.keySet()){
+ if(barMcodeMap.get(str) == reSet1[i].TracingCode__c){
+ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR, 'barcode' +str + '涓庡嚭搴撳崟' + reSet1[i].Sale_orderName__c + ' 涓殑绠$悊缂栫爜涓�鑷达紝浣咮arcode涓嶅悓锛岃纭鍏蜂綋鏁版嵁銆�'));
+ ErrorIdMap.put(str,str);
+ ErrorIdMap.put(reSet1[i].Bar_Code__c,reSet1[i].Bar_Code__c);
+ }
+ }
+ }
+ }
+ }
+ integer RGcnt = GoodsReturnCheck();
+ AllMap.putAll(ErrorIdMap);
+ AllMap.putAll(ExistIdMap);
+ if(RGcnt>0){
+ for(String str:GrList){
+ AllMap.put(str,str);
+ }
+ }
+ //寰楀埌涓嶅瓨鍦ㄧ殑BarCode
+ //return;
+ for(Integer i = 0; i < BarCodeListP.size(); i++){
+ if(AllMap.containsKey(BarCodeListP[i])){
+ continue;
+ }else if(otherAgencyMap.containsKey(BarCodeListP[i])){
+ continue;
+ }
+ //add by rentx 2021-01-27 start
+ else if (coc!= null && coc.orderPattern__c == 'hospitalorder') {
+ HosErrorList.add(BarCodeListP[i]);
+ continue;
+ }
+ //add by rentx 2021-01-27 end
+ else{
+ notInlist.add(BarCodeListP[i]);
+ otherAgencyMap.put(BarCodeListP[i],BarCodeListP[i]);
+ }
+ }
+ // CHAN-BD43NK 鍏抽棴鐩存帴杩斿搧鍔熻兘
+ if(notInlist.size()>0){
+ if(ArrType!='ReG'){
+ inventoryEntryNoESetId(notInlist);
+ if(notInStorelist.size() > 0){
+ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'BarCode鍙�'+ notInStorelist + '涓嶅瓨鍦ㄣ��'));
+ return;
+ }
+ }else{
+ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'BarCode鍙�'+ notInlist + '涓嶅瓨鍦紝鏃犲搴旂殑鍑哄簱鍗曪紝璇峰厛鎿嶄綔浜у搧鍏ュ簱銆�'));
+ return;
+ }
+ }
+
//add by rentx 2021-01-27 start
- else if (coc != null && coc.orderPattern__c == 'hospitalorder') {
- HosErrorList.add(BarCodeListP[i]);
- continue;
+ if (HosErrorList.size() > 0) {
+ for (String str : HosErrorList) {
+ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'BarCode鍙�:' + str + HosErrorMap.get(str)+''));
+
+ }
}
//add by rentx 2021-01-27 end
- else {
- notInlist.add(BarCodeListP[i]);
- otherAgencyMap.put(BarCodeListP[i], BarCodeListP[i]);
- }
- }
- if (notInlist.size() > 0) {
- inventoryEntry(notInlist);
- if (notInStorelist.size() > 0) {
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- returnError = 'BarCode鍙�' + notInStorelist + '涓嶅瓨鍦�';
- } else {
- ApexPages.addmessage(
- new ApexPages.message(
- ApexPages.severity.ERROR,
- 'BarCode鍙�' + notInStorelist + '涓嶅瓨鍦ㄣ��'
- )
- );
- }
- return;
- }
- }
- }
- //add by rentx 2021-01-27 start 褰撹鍗曚负鍖婚櫌鐗逛环绫诲瀷鐨勮鍗曟椂,濡傛灉鎵句笉鍒癰arcode,涓嶈В鏋�,骞朵笖榛樿璇arcode瀵瑰簲鐨勬槑缁�2涓洪潪鍖婚櫌鐗逛环浜у搧,鐩存帴鎶ラ敊
- if (HosErrorList.size() > 0) {
- for (String str : HosErrorList) {
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- errorList.add('BarCode鍙�:' + str + '鏄潪鍖婚櫌鐗逛环浜у搧');
- } else {
- ApexPages.addmessage(
- new ApexPages.message(
- ApexPages.severity.ERROR,
- 'BarCode鍙�:' + str + '鏄潪鍖婚櫌鐗逛环浜у搧'
- )
- );
+ }else{
+ //宸插彇娑堜骇鍝�
+ reSet1 = [SELECT Id, Name,Consumable_Product__r.Name__c,
+ Consumable_Product__c,Consumable_Product__r.Name, Sterilization_limit__c,
+ Deliver_date__c,Bar_Code__c,Box_Piece__c,
+ Arrive_date__c,Send_Date__c,Consumable_order_minor__r.Name,Consumable_order_minor__c,
+ recordtypeid,Consumable_order_minor__r.Arrive_Order__c,Report_Product_Expiration__c
+ FROM Consumable_order_details2__c
+ WHERE Dealer_Arrive__c = FALSE
+ AND Dealer_Shipment__c= FALSE
+ AND Dealer_Saled__c = FALSE
+ AND Dealer_Returned__c = false
+ AND Cancellation_Date__c != null
+ AND Bar_Code__c in :BarCodeListP
+ AND Dealer_Info_text__c = :accountName
+ ORDER BY Name ];//娌″埌璐�
+ if(reSet1.size()>0){
+ for (Integer i = 0; i < reSet1.size(); i++) {
+ if(ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)){
+ // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
+ continue;
+ }else{
+ String str = '璇ュ晢鍝佸彇娑�';
+ ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet1[i],str));
+ ErrorIdMap.put(reSet1[i].Bar_Code__c,reSet1[i].Bar_Code__c);
+ }
+ }
+ }
+ //宸茬粡閿�鍞�
+ reSet1 = [SELECT Id, Name,Consumable_Product__r.Name__c,
+ Consumable_Product__c,Consumable_Product__r.Name, Sterilization_limit__c,
+ Deliver_date__c,Bar_Code__c,Box_Piece__c,
+ Arrive_date__c,Send_Date__c,Consumable_order_minor__r.Name,Consumable_order_minor__c,
+ recordtypeid,Consumable_order_minor__r.Arrive_Order__c,Report_Product_Expiration__c
+ FROM Consumable_order_details2__c
+ WHERE Dealer_Saled__c = true
+ AND Dealer_Returned__c =false
+ AND Dealer_Info_text__c = :accountName
+ AND Bar_Code__c in :BarCodeListP
+ AND Arrive_Owner_Work_Location__c =: userWorkLocation
+ ORDER BY Name ];
+ if(reSet1.size()>0){
+ for (Integer i = 0; i < reSet1.size(); i++) {
+ if(ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)){
+ // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
+ continue;
+ }else{
+ String str = '璇ュ晢鍝佸凡缁忛攢鍞�';
+ ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet1[i],str));
+ ErrorIdMap.put(reSet1[i].Bar_Code__c,reSet1[i].Bar_Code__c);
+ }
+ }
+ }
+ //宸茬粡鍑哄簱浜у搧
+ reSet1 = [SELECT Id, Name,Consumable_Product__r.Name__c,
+ Consumable_Product__c,Consumable_Product__r.Name, Sterilization_limit__c,
+ Deliver_date__c,Bar_Code__c,Box_Piece__c,
+ Arrive_date__c,Send_Date__c,Consumable_order_minor__r.Name,Consumable_order_minor__c,
+ recordtypeid,Consumable_order_minor__r.Arrive_Order__c,Report_Product_Expiration__c
+ FROM Consumable_order_details2__c
+ WHERE Dealer_Shipment__c = true
+ AND Dealer_Returned__c =false
+ AND Dealer_Info_text__c = :accountName
+ AND Arrive_Owner_Work_Location__c =: userWorkLocation
+ AND Bar_Code__c in :BarCodeListP
+ ORDER BY Name ];
+ if(reSet1.size()>0){
+ for (Integer i = 0; i < reSet1.size(); i++) {
+ if(ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)){
+ // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
+ continue;
+ }else{
+ String str = '璇ュ晢鍝佸凡缁忓嚭搴�';
+ ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet1[i],str));
+ ErrorIdMap.put(reSet1[i].Bar_Code__c,reSet1[i].Bar_Code__c);
+ }
+ }
+ }
+ //宸茬粡鍒拌揣浜у搧
+ reSet1 = [SELECT Id, Name,Consumable_Product__r.Name__c,
+ Consumable_Product__c,Consumable_Product__r.Name, Sterilization_limit__c,
+ Deliver_date__c,Bar_Code__c,Lose_Flag__c,Box_Piece__c,
+ Arrive_date__c,Send_Date__c,Consumable_order_minor__r.Name,Consumable_order_minor__c,
+ recordtypeid,Consumable_order_minor__r.Arrive_Order__c,Report_Product_Expiration__c
+ FROM Consumable_order_details2__c
+ WHERE Dealer_Arrive__c = true
+ AND Dealer_Returned__c =false
+ AND Bar_Code__c in :BarCodeListP
+ AND Dealer_Info_text__c = :accountName
+ AND Arrive_Owner_Work_Location__c =: userWorkLocation
+ ORDER BY Name ];
+ if(reSet1.size()>0){
+ for (Integer i = 0; i < reSet1.size(); i++) {
+ if(ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)){
+ // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
+ continue;
+ }else{
+ String str = '璇ュ晢鍝佸凡缁忓埌璐�';
+ if (reSet1[i].Lose_Flag__c == TRUE) {
+ str = '璇ュ晢鍝佸凡缁忎涪澶�';
+ }
+ ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet1[i],str));
+ ErrorIdMap.put(reSet1[i].Bar_Code__c,reSet1[i].Bar_Code__c);
+ }
+ }
+ }
+ //涓嶅睘浜庢湰璁㈠崟
+ reSet1 = [SELECT Id, Name,Consumable_Product__r.Name__c,
+ Consumable_Product__c,Consumable_Product__r.Name, Sterilization_limit__c,
+ Deliver_date__c,Bar_Code__c,Box_Piece__c,
+ Arrive_date__c,Send_Date__c,Consumable_order_minor__r.Name,Consumable_order_minor__c,
+ recordtypeid,Consumable_order_minor__r.Arrive_Order__c,Report_Product_Expiration__c
+ FROM Consumable_order_details2__c
+ WHERE Consumable_order_minor__c != :ESetId
+ AND Bar_Code__c in :BarCodeListP
+ //AND Dealer_Info_text__c = :accountName
+ ORDER BY Name ];
+ if(reSet1.size()>0){
+ for (Integer i = 0; i < reSet1.size(); i++) {
+ if(ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)){
+ // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
+ continue;
+ }else{
+ String str = '璇ユ秷鑰楀搧涓嶅睘浜庢湰璁㈠崟';
+ ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet1[i],str));
+ ErrorIdMap.put(reSet1[i].Bar_Code__c,reSet1[i].Bar_Code__c);
+ }
+ }
+ }
+ //鍒拌揣浣嗕骇鍝佺被鍨嬩笌鐢ㄦ埛鐨勭被鍨嬩笉绗�
+ reSet1 = [SELECT Id,Name,Intra_Trade_List_RMB__c,Asset_Model_No__c,
+ Consumable_Product__c,Consumable_Product__r.Name,
+ Consumable_Product__r.Name__c,Consumable_Product__r.Asset_Model_No__c,
+ Sterilization_limit__c,Deliver_date__c,Bar_Code__c,
+ Arrive_date__c,Send_Date__c,Consumable_order_minor__r.Name,
+ Consumable_order_minor__c,Dealer_Arrive__c,
+ Guarantee_period_for_products__c,CFDA_Status__c,
+ ProductPacking_list_manual__c,Report_Product_Approbation__c,
+ Report_Product_Expiration__c,Box_Piece__c, Rrturn_count__c,
+ Product_Type__c
+ ,ContractNo_text__c/*,ContractNo__c*/
+ // tcm start
+ ,Consumable_order_minor__r.ContractNo__c
+ // tcm end
+ FROM Consumable_order_details2__c
+ WHERE recordtypeid = :System.Label.RT_ConOrderDetail2_Delivery
+ AND Dealer_Info_text__c = :accountName
+ AND ( not Product_Type__c like :userPro_Typestr)
+ AND Consumable_order_minor__c = :ESetId
+ AND Consumable_order_minor__r.Order_Owner_WorkLocal__c = :userWorkLocation
+ AND Dealer_Arrive__c = false
+ AND Cancellation_Date__c = null
+ AND Bar_Code__c in :BarCodeListP
+ ORDER BY Name ];
+ if(reSet1.size()>0){
+ for (Integer i = 0; i < reSet1.size(); i++) {
+ if(ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)){
+ // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
+ continue;
+ }else{
+ String str = '浜у搧绫诲瀷['+reSet1[i].Product_Type__c+']涓庣敤鎴风殑绫诲瀷['+userPro_Type+']涓嶇';
+ ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet1[i],str));
+ ErrorIdMap.put(reSet1[i].Bar_Code__c,reSet1[i].Bar_Code__c);
+ }
+ }
+ }
+
+ //鍒拌揣姝g‘淇℃伅
+ reSet = [SELECT Id,Name,Intra_Trade_List_RMB__c,Asset_Model_No__c,
+ Consumable_Product__c,Consumable_Product__r.Name,
+ Consumable_Product__r.Name__c,Consumable_Product__r.Asset_Model_No__c,
+ Sterilization_limit__c,Deliver_date__c,Bar_Code__c,
+ Arrive_date__c,Send_Date__c,Consumable_order_minor__r.Name,
+ Consumable_order_minor__c,Dealer_Arrive__c,
+ Guarantee_period_for_products__c,CFDA_Status__c,
+ ProductPacking_list_manual__c,Report_Product_Approbation__c,
+ Report_Product_Expiration__c,Box_Piece__c, Rrturn_count__c,
+ TracingCode__c,
+ Agencyinfo_fromSAP__c,
+ Frist_Storage_Agency__c,
+ Dealer_Info_text__c
+ ,ContractNo_text__c/*,ContractNo__c*/
+ // tcm start
+ ,Consumable_order_minor__r.ContractNo__c
+ // tcm end
+ FROM Consumable_order_details2__c
+ WHERE recordtypeid = :System.Label.RT_ConOrderDetail2_Delivery
+ AND Dealer_Info_text__c = :accountName
+ AND Product_Type__c like :userPro_Typestr
+ AND Consumable_order_minor__c = :ESetId
+ AND Consumable_order_minor__r.Order_Owner_WorkLocal__c = :userWorkLocation
+ AND Dealer_Arrive__c = false
+ AND Cancellation_Date__c = null
+ AND Bar_Code__c in :BarCodeListP
+ ORDER BY Name ];
+ if(reSet.size()>0){
+ Map<String,String> errorMap = new Map<String,String>();
+ for (Integer i = 0; i < reSet.size(); i++) {
+ if(ExistIdMap.containsKey(reSet[i].Bar_Code__c) || ErrorIdMap.containsKey(reSet[i].Bar_Code__c)){
+ // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
+ continue;
+ }else{
+ Matcher n = Pattern.compile('[0-9]').matcher(reSet[i].TracingCode__c);
+ if(n.find()){
+ String str = '绠$悊缂栫爜涓湁鏁板瓧锛岃涓庣鐞嗗憳纭鏄惁閿欒銆�';
+ ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet[i],str));
+ ErrorIdMap.put(reSet[i].Bar_Code__c,reSet[i].Bar_Code__c);
+ continue;
+ }
+ ConsumableorderdetailsRecordsdummy.add(new ConsumableorderdetailsInfo(reSet[i]));
+ ConsumableorderdetailsRecords.add(new ConsumableorderdetailsInfo(reSet[i]));
+ ExistIdMap.put(reSet[i].Bar_Code__c,reSet[i].Bar_Code__c);
+ }
+ }
+ }
+
+ //barcode涓嶄竴鑷达紝绠$悊缂栫爜涓�鑷�
+ reSet = [SELECT Id,
+ Name,
+ Intra_Trade_List_RMB__c,
+ Asset_Model_No__c,
+ Consumable_Product__c,
+ Consumable_Product__r.Name,
+ Consumable_Product__r.Name__c,
+ Consumable_Product__r.Asset_Model_No__c,
+ Sterilization_limit__c,
+ Deliver_date__c,
+ Bar_Code__c,
+ Arrive_date__c,
+ Send_Date__c,
+ Box_Piece__c,
+ Rrturn_count__c,
+ Consumable_order_minor__r.Name,
+ Consumable_order_minor__c,
+ Dealer_Arrive__c,
+ Guarantee_period_for_products__c,
+ CFDA_Status__c,
+ ProductPacking_list_manual__c,
+ Report_Product_Approbation__c,
+ Report_Product_Expiration__c,
+ TracingCode__c
+ ,Agencyinfo_fromSAP__c
+ ,Frist_Storage_Agency__c
+ ,ContractNo_text__c/*,ContractNo__c*/
+ // tcm start
+ ,Consumable_order_minor__r.ContractNo__c
+ // tcm end
+ FROM Consumable_order_details2__c
+ WHERE recordtypeid = :System.Label.RT_ConOrderDetail2_Delivery
+ AND Cancellation_Date__c = null
+ AND Dealer_Arrive__c = false
+ AND TracingCode__c in :barMcodeMap.values()
+ AND Bar_Code__c not in :barMcodeMap.keySet()
+ AND Dealer_Info_text__c = :accountName
+ AND ((Consumable_order_minor__c != null
+ AND Consumable_order_minor__r.Order_Owner_WorkLocal__c = :userWorkLocation)
+ OR Consumable_order_minor__c = null)
+ ORDER BY Name ];
+ if(reSet.size()>0){
+ for (Integer i = 0; i < reSet.size(); i++) {
+ if(ExistIdMap.containsKey(reSet[i].Bar_Code__c) || ErrorIdMap.containsKey(reSet[i].Bar_Code__c)){
+ // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
+ continue;
+ }else{
+ Matcher n = Pattern.compile('[0-9]').matcher(reSet[i].TracingCode__c);
+ if(n.find()){
+ String str = '绠$悊缂栫爜涓湁鏁板瓧锛岃涓庣鐞嗗憳纭鏄惁閿欒銆�';
+ ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet[i],str));
+ ErrorIdMap.put(reSet[i].Bar_Code__c,reSet[i].Bar_Code__c);
+ continue;
+ }
+ ExistIdMap.put(reSet[i].Bar_Code__c,reSet[i].Bar_Code__c);
+ for(String str : barMcodeMap.keySet()){
+ if(barMcodeMap.get(str) == reSet[i].TracingCode__c){
+ reSet[i].Bar_Code__c = str;
+ ExistIdMap.put(str,str);
+ }
+ }
+ ConsumableorderdetailsRecordsdummy.add(new ConsumableorderdetailsInfo(reSet[i]));
+ ConsumableorderdetailsRecords.add(new ConsumableorderdetailsInfo(reSet[i]));
+ }
+ }
+ }
+ AllMap.putAll(ErrorIdMap);
+ AllMap.putAll(ExistIdMap);
+ //寰楀埌涓嶅瓨鍦ㄧ殑BarCode
+ for(Integer i = 0; i < BarCodeListP.size(); i++){
+ if(AllMap.containsKey(BarCodeListP[i])){
+ continue;
+ }else if(otherAgencyMap.containsKey(BarCodeListP[i])){
+ continue;
+ }
+ //add by rentx 2021-01-27 start
+ else if (coc!= null && coc.orderPattern__c == 'hospitalorder') {
+ HosErrorList.add(BarCodeListP[i]);
+ continue;
+
+ }
+ //add by rentx 2021-01-27 end
+ else{
+ notInlist.add(BarCodeListP[i]);
+ otherAgencyMap.put(BarCodeListP[i],BarCodeListP[i]);
+ }
+ }
+ if(notInlist.size()>0){
+ inventoryEntry(notInlist);
+ if(notInStorelist.size() > 0){
+ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'BarCode鍙�'+ notInStorelist + '涓嶅瓨鍦ㄣ��'));
+ return;
+ }
+ }
}
- }
- }
- //add by rentx 2021-01-27 end
+
+ //add by rentx 2021-01-27 start 褰撹鍗曚负鍖婚櫌鐗逛环绫诲瀷鐨勮鍗曟椂,濡傛灉鎵句笉鍒癰arcode,涓嶈В鏋�,骞朵笖榛樿璇arcode瀵瑰簲鐨勬槑缁�2涓洪潪鍖婚櫌鐗逛环浜у搧,鐩存帴鎶ラ敊
+ if (HosErrorList.size() > 0) {
+ for (String str : HosErrorList) {
+ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'BarCode鍙�:' + str +'鏄潪鍖婚櫌鐗逛环浜у搧'));
+
+ }
+ }
+ //add by rentx 2021-01-27 end
makeArrivedSummary();
- //add by rentx 20210602 start CHAN-C3K4ZQ
- makeRecordsView(ConsumableorderdetailsRecordsdummy);
- //add by rentx 20210602 end CHAN-C3K4ZQ
- }
- public void inventoryEntryNoESetId(List<String> barCodeList) {
- //鎵�鏈塨arcode瑙f瀽鍒扮殑Jancode
- List<String> alljanCodeList = new List<String>();
- List<String> allotCodeList = new List<String>();
- List<String> barCode01List = new List<String>();
- List<String> barCode241List = new List<String>();
- Map<String, Map<String, String>> barJancodeMap = new Map<String, Map<String, String>>();
- Map<String, Map<String, String>> barOtcodeMap = new Map<String, Map<String, String>>();
- Map<String, List<String>> barcodeinfoMap = new Map<String, List<String>>();
- Map<String, String> barcoderightMap = new Map<String, String>();
- notInStorelist.clear();
- for (Integer i = 0; i < barCodeList.size(); i++) {
- Date expirationDate = null;
- String serialNoorLotNo = '';
- String tracingCode = '';
- String productDateStr = '';
- Date productionDate = null;
- String expirationDateStr = '';
- if (barCodeList[i].length() >= 3) {
- if (barCodeList[i].substring(0, 2) == '01') {
- String janCodeMark = '';
- //鐢熶骇鏃ユ湡
- List<String> janCode = new List<String>();
- if (barCodeList[i].length() < 16) {
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- errorList.add(
- '浜у搧BarCode(' +
- barCodeList[i] +
- ')鐨勪綅鏁颁笉瓒�16锛屼笉绗﹀悎瑕佹眰閿欒锛�'
- );
- } else {
- ApexPages.addmessage(
- new ApexPages.message(
- ApexPages.severity.ERROR,
- '浜у搧BarCode(' +
- barCodeList[i] +
- ')鐨勪綅鏁颁笉瓒�16锛屼笉绗﹀悎瑕佹眰閿欒锛�'
- )
- );
- }
- continue;
- } else {
- //if(barCodeList[i].substring(0,2) !='01'){
- // ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + barCodeList[i] + ')娌℃湁janCode锛屼笉绗﹀悎瑕佹眰锛�'));
- // return;
- //}
- janCodeMark = barCodeList[i].substring(2, 16);
- try {
- Decimal test = Decimal.valueOf(janCodeMark);
- } catch (Exception e) {
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- errorList.add(
- '浜у搧BarCode(' + barCodeList[i] + ')鐨刯anCode閿欒锛�'
- );
- } else {
- ApexPages.addmessage(
- new ApexPages.message(
- ApexPages.severity.ERROR,
- '浜у搧BarCode(' + barCodeList[i] + ')鐨刯anCode閿欒锛�'
- )
- );
- }
- continue;
- }
- }
- if (barCodeList[i].length() >= 22) {
- if (
- barCodeList[i]
- .substring(
- barCodeList[i].length() - 8,
- barCodeList[i].length() - 5
- ) != '250'
- ) {
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- errorList.add(
- '浜у搧BarCode(' + barCodeList[i] + ')娌℃湁绠$悊缂栫爜锛�'
- );
- } else {
- ApexPages.addmessage(
- new ApexPages.message(
- ApexPages.severity.ERROR,
- '浜у搧BarCode(' + barCodeList[i] + ')娌℃湁绠$悊缂栫爜锛�'
- )
- );
- }
- continue;
- }
- if (barCodeList[i].substring(16, 18) == '11') {
- try {
- productDateStr =
- '20' +
- barCodeList[i].substring(18, 20) +
- '-' +
- barCodeList[i].substring(20, 22) +
- '-01';
- productionDate = Date.valueOf(productDateStr);
- } catch (Exception e) {
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- errorList.add(
- '浜у搧BarCode(' +
- barCodeList[i] +
- ')鐨勭敓浜ф棩鏈�' +
- productDateStr +
- '閿欒锛�'
- );
- } else {
- ApexPages.addmessage(
- new ApexPages.message(
- ApexPages.severity.ERROR,
- '浜у搧BarCode(' +
- barCodeList[i] +
- ')鐨勭敓浜ф棩鏈�' +
- productDateStr +
- '閿欒锛�'
- )
- );
- }
- continue;
- }
- if (barCodeList[i].length() >= 32) {
- if (barCodeList[i].substring(24, 26) == '17') {
- try {
- if (barCodeList[i].substring(30, 32) == '00') {
- expirationDateStr =
- '20' +
- barCodeList[i].substring(26, 28) +
- '-' +
- barCodeList[i].substring(28, 30) +
- '-' +
- '01';
- expirationDate = Date.valueOf(expirationDateStr);
- expirationDate = expirationDate.addMonths(1)
- .toStartofMonth()
- .addDays(-1);
- } else {
- expirationDateStr =
- '20' +
- barCodeList[i].substring(26, 28) +
- '-' +
- barCodeList[i].substring(28, 30) +
- '-' +
- barCodeList[i].substring(30, 32);
- expirationDate = Date.valueOf(expirationDateStr);
- }
- } catch (Exception e) {
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- errorList.add(
- '浜у搧BarCode(' +
- barCodeList[i] +
- ')鐨勬粎鑿屾湁鍔规湡闄�' +
- expirationDateStr +
- '閿欒锛�'
- );
- } else {
- ApexPages.addmessage(
- new ApexPages.message(
- ApexPages.severity.ERROR,
- '浜у搧BarCode(' +
- barCodeList[i] +
- ')鐨勬粎鑿屾湁鍔规湡闄�' +
- expirationDateStr +
- '閿欒锛�'
- )
- );
- }
- continue;
- }
- if (barCodeList[i].length() >= 42) {
- if (
- barCodeList[i].substring(32, 34) == '10' ||
- barCodeList[i].substring(32, 34) == '21'
- ) {
- serialNoorLotNo = barCodeList[i]
- .substring(34, barCodeList[i].length() - 8);
- }
- }
- } else if (
- barCodeList[i].substring(24, 26) == '10' ||
- barCodeList[i].substring(24, 26) == '21'
- ) {
- serialNoorLotNo = barCodeList[i]
- .substring(26, barCodeList[i].length() - 8);
- }
- }
- } else if (barCodeList[i].substring(16, 18) == '17') {
- try {
- if (barCodeList[i].substring(22, 24) == '00') {
- expirationDateStr =
- '20' +
- barCodeList[i].substring(18, 20) +
- '-' +
- barCodeList[i].substring(20, 22) +
- '-01';
- //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧expirationDateStr' + expirationDateStr));
- expirationDate = Date.valueOf(expirationDateStr);
- expirationDate = expirationDate.addMonths(1)
- .toStartofMonth()
- .addDays(-1);
- } else {
- expirationDateStr =
- '20' +
- barCodeList[i].substring(18, 20) +
- '-' +
- barCodeList[i].substring(20, 22) +
- '-' +
- barCodeList[i].substring(22, 24);
- expirationDate = Date.valueOf(expirationDateStr);
- }
- } catch (Exception e) {
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- errorList.add(
- '浜у搧BarCode(' +
- barCodeList[i] +
- ')鐨勬粎鑿屾湁鍔规湡闄�' +
- expirationDateStr +
- '閿欒锛�'
- );
- } else {
- ApexPages.addmessage(
- new ApexPages.message(
- ApexPages.severity.ERROR,
- '浜у搧BarCode(' +
- barCodeList[i] +
- ')鐨勬粎鑿屾湁鍔规湡闄�' +
- expirationDateStr +
- '閿欒锛�'
- )
- );
- }
- continue;
- }
- if (barCodeList[i].length() >= 34) {
- if (
- barCodeList[i].substring(24, 26) == '10' ||
- barCodeList[i].substring(24, 26) == '21'
- ) {
- serialNoorLotNo = barCodeList[i]
- .substring(26, barCodeList[i].length() - 8);
- }
- }
- } else if (barCodeList[i].length() >= 26) {
- if (
- barCodeList[i].substring(16, 18) == '10' ||
- barCodeList[i].substring(16, 18) == '21'
- ) {
- serialNoorLotNo = barCodeList[i]
- .substring(18, barCodeList[i].length() - 8);
- }
- }
- }
- if (
- barCodeList[i].length() >= 24 &&
- barCodeList[i]
- .substring(
- barCodeList[i].length() - 8,
- barCodeList[i].length() - 5
- ) == '250'
- ) {
- if (
- barCodeList[i]
- .substring(
- barCodeList[i].length() - 8,
- barCodeList[i].length() - 5
- ) == '250'
- ) {
- tracingCode = barCodeList[i]
- .substring(
- barCodeList[i].length() - 5,
- barCodeList[i].length()
- );
- Matcher n = Pattern.compile('[0-9]').matcher(tracingCode);
- if (n.find()) {
- // gzw DB202305352696 鍏ュ簱绠$悊缂栫爜楠岃瘉绋嬪簭璋冩暣 start
- if (tracingCode.length() == 5) {
- String tr = tracingCode;
- String Ctr = tr.substring(tr.length() - 3, tr.length());
- String Btr = tr.substring(tr.length() - 4, tr.length() - 3);
- String Atr = tr.substring(tr.length() - 5, tr.length() - 4);
- if (
- Pattern.compile('[0-9]').matcher(Atr).find() ||
- Pattern.compile('[0-9]').matcher(Ctr).find()
- ) {
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- String str = '绠$悊缂栫爜鏈夎锛岃妫�鏌ユ潯褰㈢爜鏁版嵁銆�';
- if (isLwc) {
- errorList.add(
- '浜у搧BarCode(' +
- barCodeList[i] +
- ')绠$悊缂栫爜鏈夎锛岃妫�鏌ユ潯褰㈢爜鏁版嵁銆�'
- );
- } else {
- ApexPages.addmessage(
- new ApexPages.message(
- ApexPages.severity.ERROR,
- '浜у搧BarCode(' +
- barCodeList[i] +
- ')绠$悊缂栫爜鏈夎锛岃妫�鏌ユ潯褰㈢爜鏁版嵁銆�'
- )
- );
- }
- continue;
- }
- }
- }
- } else {
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- errorList.add(
- '浜у搧BarCode(' + barCodeList[i] + ')鐨則racingCode閿欒锛�'
- );
- } else {
- ApexPages.addmessage(
- new ApexPages.message(
- ApexPages.severity.ERROR,
- '浜у搧BarCode(' + barCodeList[i] + ')鐨則racingCode閿欒锛�'
- )
- );
- }
- continue;
- }
- }
- List<String> barcodedetList = new List<String>();
- barcodedetList.add(barCodeList[i]);
- barcodedetList.add(String.valueOf(expirationDate));
- barcodedetList.add(serialNoorLotNo);
- barcodedetList.add(tracingCode);
- Integer jan1 = Integer.valueOf(janCodeMark.substring(0, 1));
- Integer jan2 = Integer.valueOf(janCodeMark.substring(1, 2));
- Integer jan3 = Integer.valueOf(janCodeMark.substring(2, 3));
- Integer jan4 = Integer.valueOf(janCodeMark.substring(3, 4));
- Integer jan5 = Integer.valueOf(janCodeMark.substring(4, 5));
- Integer jan6 = Integer.valueOf(janCodeMark.substring(5, 6));
- Integer jan7 = Integer.valueOf(janCodeMark.substring(6, 7));
- Integer jan8 = Integer.valueOf(janCodeMark.substring(7, 8));
- Integer jan9 = Integer.valueOf(janCodeMark.substring(8, 9));
- Integer jan10 = Integer.valueOf(janCodeMark.substring(9, 10));
- Integer jan11 = Integer.valueOf(janCodeMark.substring(10, 11));
- Integer jan12 = Integer.valueOf(janCodeMark.substring(11, 12));
- Integer jan13 = Integer.valueOf(janCodeMark.substring(12, 13));
-
- Integer count12 =
- jan2 +
- jan3 * 3 +
- jan4 +
- jan5 * 3 +
- jan6 +
- jan7 * 3 +
- jan8 +
- jan9 * 3 +
- jan10 +
- jan11 * 3 +
- jan12 +
- jan13 * 3;
- Integer count13 =
- jan1 * 3 +
- jan2 +
- jan3 * 3 +
- jan4 +
- jan5 * 3 +
- jan6 +
- jan7 * 3 +
- jan8 +
- jan9 * 3 +
- jan10 +
- jan11 * 3 +
- jan12 +
- jan13 * 3;
- String frost12 = (String.valueOf(count12))
- .substring((String.valueOf(count12)).length() - 1);
- String frost13 = (String.valueOf(count13))
- .substring((String.valueOf(count13)).length() - 1);
- //鍑忓幓12浣嶄釜浣�
- frost12 = (String.valueOf(10 - Integer.valueOf(frost12)))
- .substring(
- (String.valueOf(10 - Integer.valueOf(frost12))).length() - 1
- );
- frost13 = (String.valueOf(10 - Integer.valueOf(frost13)))
- .substring(
- (String.valueOf(10 - Integer.valueOf(frost13))).length() - 1
- );
- janCode.add(janCodeMark.substring(1, 13) + frost12);
- janCode.add(janCodeMark.substring(0, 13) + frost12);
- janCode.add(janCodeMark.substring(1, 13) + frost13);
- janCode.add(janCodeMark.substring(0, 13) + frost13);
- alljanCodeList.addAll(janCode);
- Map<String, String> janCodeMap = new Map<String, String>();
- janCodeMap.put(
- janCodeMark.substring(1, 13) + frost12,
- barCodeList[i]
- );
- janCodeMap.put(
- janCodeMark.substring(0, 13) + frost12,
- barCodeList[i]
- );
- janCodeMap.put(
- janCodeMark.substring(1, 13) + frost13,
- barCodeList[i]
- );
- janCodeMap.put(
- janCodeMark.substring(0, 13) + frost13,
- barCodeList[i]
- );
- barJancodeMap.put(barCodeList[i], janCodeMap);
- barcodeinfoMap.put(barCodeList[i], barcodedetList);
- barCode01List.add(barCodeList[i]);
- } else if (barCodeList[i].substring(0, 3) == '241') {
- if (
- barCodeList[i].length() > 8 &&
- barCodeList[i]
- .substring(
- barCodeList[i].length() - 8,
- barCodeList[i].length() - 5
- ) != '250'
- ) {
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- errorList.add(
- '浜у搧BarCode(' + barCodeList[i] + ')娌℃湁绠$悊缂栫爜锛�'
- );
- } else {
- ApexPages.addmessage(
- new ApexPages.message(
- ApexPages.severity.ERROR,
- '浜у搧BarCode(' + barCodeList[i] + ')娌℃湁绠$悊缂栫爜锛�'
- )
- );
- }
- continue;
- }
- List<String> otCodeList = new List<String>();
- Map<String, String> otCodeMap = new Map<String, String>();
- if (barCodeList[i].length() < 7) {
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- errorList.add(
- '浜у搧BarCode(' +
- barCodeList[i] +
- ')鐨勪綅鏁颁笉瓒�16锛屼笉绗﹀悎瑕佹眰閿欒锛�'
- );
- } else {
- ApexPages.addmessage(
- new ApexPages.message(
- ApexPages.severity.ERROR,
- '浜у搧BarCode(' +
- barCodeList[i] +
- ')鐨勪綅鏁颁笉瓒�16锛屼笉绗﹀悎瑕佹眰閿欒锛�'
- )
- );
- }
- continue;
- } else if (barCodeList[i].length() == 11) {
- String otCode4 = barCodeList[i].substring(3, 7);
- String otCode5 = barCodeList[i].substring(3, 8);
- String otCode6 = barCodeList[i].substring(3, 9);
- String otCode7 = barCodeList[i].substring(3, 10);
- String otCode8 = barCodeList[i].substring(3, 11);
- otCodeList.add(otCode4);
- otCodeList.add(otCode5);
- otCodeList.add(otCode6);
- otCodeList.add(otCode7);
- otCodeList.add(otCode8);
- otCodeMap.put(otCode4, barCodeList[i]);
- otCodeMap.put(otCode5, barCodeList[i]);
- otCodeMap.put(otCode6, barCodeList[i]);
- otCodeMap.put(otCode7, barCodeList[i]);
- otCodeMap.put(otCode8, barCodeList[i]);
- } else if (barCodeList[i].length() >= 12) {
- String otCode4 = barCodeList[i].substring(3, 7);
- String otCode5 = barCodeList[i].substring(3, 8);
- String otCode6 = barCodeList[i].substring(3, 9);
- String otCode7 = barCodeList[i].substring(3, 10);
- String otCode8 = barCodeList[i].substring(3, 11);
- String otCode9 = barCodeList[i].substring(3, 12);
- otCodeList.add(otCode4);
- otCodeList.add(otCode5);
- otCodeList.add(otCode6);
- otCodeList.add(otCode7);
- otCodeList.add(otCode8);
- otCodeList.add(otCode9);
- otCodeMap.put(otCode4, barCodeList[i]);
- otCodeMap.put(otCode5, barCodeList[i]);
- otCodeMap.put(otCode6, barCodeList[i]);
- otCodeMap.put(otCode7, barCodeList[i]);
- otCodeMap.put(otCode8, barCodeList[i]);
- otCodeMap.put(otCode9, barCodeList[i]);
- }
- allotCodeList.addAll(otCodeList);
- barOtcodeMap.put(barCodeList[i], otCodeMap);
- barCode241List.add(barCodeList[i]);
- } else {
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- errorList.add('浜у搧BarCode(' + barCodeList[i] + ')涓嶇鍚堣姹傦紒');
- } else {
- ApexPages.addmessage(
- new ApexPages.message(
- ApexPages.severity.ERROR,
- '浜у搧BarCode(' + barCodeList[i] + ')涓嶇鍚堣姹傦紒'
- )
- );
- }
- continue;
- }
- } else {
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- errorList.add('浜у搧BarCode(' + barCodeList[i] + ')涓嶇鍚堣姹傦紒');
- } else {
- ApexPages.addmessage(
- new ApexPages.message(
- ApexPages.severity.ERROR,
- '浜у搧BarCode(' + barCodeList[i] + ')涓嶇鍚堣姹傦紒'
- )
- );
- }
- continue;
- }
- }
- //01閫氳繃妫�绱骇鍝佹槸鍚﹀瓨鍦�
- //-----------XHL--------------UpdateSTART----------------20181010------
- if (alljanCodeList.size() > 0) {
- List<Product2__c> product2InStore = [
- SELECT
- Id,
- Name,
- Name__c,
- Intra_Trade_List_RMB__c,
- Asset_Model_No__c,
- OT_CODE__c,
- Product2_Jancode__c,
- Pro2_Dealer_ENG__c,
- Pro2_Dealer_Object__c
- FROM Product2__c
- WHERE Product2_Jancode__c IN :alljanCodeList
- ORDER BY SFDA_Expiration_Date__c DESC
- ];
- if (product2InStore.size() > 0) {
- // CHAN-AVSAST
- Map<String, String> rightBar = new Map<String, String>();
- Map<String, String> errorMap = new Map<String, String>();
- for (String bar : barJancodeMap.keySet()) {
- Integer cou = 0;
- for (Product2__c produ : product2InStore) {
- if (
- barJancodeMap.get(bar).containsKey(produ.Product2_Jancode__c) &&
- !rightBar.containsKey(bar)
- ) {
- cou++;
- if (EngFlag == true && produ.Pro2_Dealer_ENG__c == true) {
- consumableInventory.add(
- new ConsumableorderdetailsInfo(produ, barcodeinfoMap.get(bar))
- );
- consumableInventoryUse.add(
- new ConsumableorderdetailsInfo(produ, barcodeinfoMap.get(bar))
- );
- rightBar.put(bar, bar);
- } else if (
- ETFlag == true &&
- produ.Pro2_Dealer_Object__c == true
- ) {
- consumableInventory.add(
- new ConsumableorderdetailsInfo(produ, barcodeinfoMap.get(bar))
- );
- consumableInventoryUse.add(
- new ConsumableorderdetailsInfo(produ, barcodeinfoMap.get(bar))
- );
- rightBar.put(bar, bar);
- } else {
- errorMap.put(bar, bar);
- }
- }
- }
- if (cou <= 0) {
- notInStorelist.add(bar);
- }
- }
- if (errorMap.size() > 0) {
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- errorList.add(
- 'BarCode鍙穂' +
- errorMap.values() +
- ']浜у搧绫诲瀷[' +
- product_Type +
- ']涓庣敤鎴风被鍨媅' +
- userPro_Type +
- ']涓嶇'
- );
- } else {
- ApexPages.addmessage(
- new ApexPages.message(
- ApexPages.severity.ERROR,
- 'BarCode鍙穂' +
- errorMap.values() +
- ']浜у搧绫诲瀷[' +
- product_Type +
- ']涓庣敤鎴风被鍨媅' +
- userPro_Type +
- ']涓嶇'
- )
- );
- }
- }
- }
+ //add by rentx 20210602 start CHAN-C3K4ZQ
+ makeRecordsView(ConsumableorderdetailsRecordsdummy);
+ //add by rentx 20210602 end CHAN-C3K4ZQ
}
- //241閫氳繃妫�绱骇鍝佹槸鍚﹀瓨鍦�
- if (allotCodeList.size() > 0) {
- Map<String, String> errorMap = new Map<String, String>();
- Map<String, String> exitBarCodeMap = new Map<String, String>();
- List<Product2__c> product2InStore = [
- SELECT
- Id,
- Name,
- Name__c,
- Intra_Trade_List_RMB__c,
- Asset_Model_No__c,
- OT_CODE__c,
- Product2_Jancode__c,
- Pro2_Dealer_ENG__c,
- Pro2_Dealer_Object__c
- FROM Product2__c
- WHERE
- OT_CODE__c IN :allotCodeList
- AND (NOT Product_Type__c LIKE :userPro_Typestr)
- ];
- if (product2InStore.size() > 0) {
- for (Product2__c produ : product2InStore) {
- for (String bar : barOtcodeMap.keySet()) {
- if (barOtcodeMap.get(bar).containsKey(produ.OT_CODE__c)) {
- exitBarCodeMap.put(bar, bar);
- errorMap.put(bar, bar);
- }
- }
- }
- }
- if (errorMap.size() > 0) {
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- errorList.add(
- 'BarCode鍙穂' +
- errorMap.values() +
- ']浜у搧绫诲瀷[' +
- product_Type +
- ']涓庣敤鎴穂' +
- userPro_Type +
- ']绫诲瀷涓嶇'
- );
- } else {
- ApexPages.addmessage(
- new ApexPages.message(
- ApexPages.severity.ERROR,
- 'BarCode鍙穂' +
- errorMap.values() +
- ']浜у搧绫诲瀷[' +
- product_Type +
- ']涓庣敤鎴穂' +
- userPro_Type +
- ']绫诲瀷涓嶇'
- )
- );
- }
- }
- product2InStore = [
- SELECT
- Id,
- Name,
- Name__c,
- Intra_Trade_List_RMB__c,
- Asset_Model_No__c,
- OT_CODE__c,
- Product2_Jancode__c,
- Pro2_Dealer_ENG__c,
- Pro2_Dealer_Object__c
- FROM Product2__c
- WHERE
- OT_CODE__c IN :allotCodeList
- AND Product_Type__c LIKE :userPro_Typestr
- ];
- if (product2InStore.size() > 0) {
- for (Product2__c produ : product2InStore) {
- for (String bar : barOtcodeMap.keySet()) {
- Date expirationDate = null;
+ public void inventoryEntryNoESetId (List<String> barCodeList){
+ //鎵�鏈塨arcode瑙f瀽鍒扮殑Jancode
+ List<String> alljanCodeList = new List<String>();
+ List<String> allotCodeList = new List<String>();
+ List<String> barCode01List = new List<String>();
+ List<String> barCode241List = new List<String>();
+ Map<String,Map<String,String>> barJancodeMap = new Map<String,Map<String,String>>();
+ Map<String,Map<String,String>> barOtcodeMap = new Map<String,Map<String,String>>();
+ Map<String,List<String>> barcodeinfoMap = new Map<String,List<String>>();
+ Map<String,String> barcoderightMap = new Map<String,String>();
+ notInStorelist.clear();
+ for(Integer i = 0; i < barCodeList.size(); i++){
+ Date expirationDate = null ;
String serialNoorLotNo = '';
String tracingCode = '';
String productDateStr = '';
- Date productionDate = null;
+ Date productionDate = null ;
String expirationDateStr = '';
- if (barOtcodeMap.get(bar).containsKey(produ.OT_CODE__c)) {
- Integer oTcodeLength = produ.OT_CODE__c.length();
- if (bar.length() >= oTcodeLength + 11) {
- if (bar.substring(oTcodeLength + 3, oTcodeLength + 5) == '11') {
- try {
- productDateStr =
- '20' +
- bar.substring(oTcodeLength + 5, oTcodeLength + 7) +
- '-' +
- bar.substring(oTcodeLength + 7, oTcodeLength + 9) +
- '-01';
- productionDate = Date.valueOf(productDateStr);
- } catch (Exception e) {
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- errorList.add(
- '浜у搧BarCode(' +
- bar +
- ')鐨勭敓浜ф棩鏈�' +
- productDateStr +
- '閿欒锛�'
- );
- } else {
- ApexPages.addmessage(
- new ApexPages.message(
- ApexPages.severity.ERROR,
- '浜у搧BarCode(' +
- bar +
- ')鐨勭敓浜ф棩鏈�' +
- productDateStr +
- '閿欒锛�'
- )
- );
- }
- continue;
- }
- if (bar.length() >= oTcodeLength + 3 + 16) {
- if (
- bar.substring(
- oTcodeLength + 3 + 8,
- oTcodeLength + 3 + 10
- ) == '17'
- ) {
- try {
- if (
- bar.substring(
- oTcodeLength + 3 + 14,
- oTcodeLength + 3 + 16
- ) == '00'
- ) {
- expirationDateStr =
- '20' +
- bar.substring(
- oTcodeLength + 3 + 10,
- oTcodeLength + 3 + 12
- ) +
- '-' +
- bar.substring(
- oTcodeLength + 3 + 12,
- oTcodeLength + 3 + 14
- ) +
- '-' +
- '01';
- expirationDate = Date.valueOf(expirationDateStr);
- expirationDate = expirationDate.addMonths(1)
- .toStartofMonth()
- .addDays(-1);
- } else {
- expirationDateStr =
- '20' +
- bar.substring(
- oTcodeLength + 3 + 10,
- oTcodeLength + 3 + 12
- ) +
- '-' +
- bar.substring(
- oTcodeLength + 3 + 12,
- oTcodeLength + 3 + 14
- ) +
- '-' +
- bar.substring(
- oTcodeLength + 3 + 14,
- oTcodeLength + 3 + 16
- );
- expirationDate = Date.valueOf(expirationDateStr);
- }
- } catch (Exception e) {
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- errorList.add(
- '浜у搧BarCode(' +
- bar +
- ')鐨勬粎鑿屾湁鍔规湡闄�' +
- expirationDateStr +
- '閿欒锛�'
- );
- } else {
- ApexPages.addmessage(
- new ApexPages.message(
- ApexPages.severity.ERROR,
- '浜у搧BarCode(' +
- bar +
- ')鐨勬粎鑿屾湁鍔规湡闄�' +
- expirationDateStr +
- '閿欒锛�'
- )
- );
- }
+ if(barCodeList[i].length() >= 3){
+ if(barCodeList[i].substring(0,2) =='01'){
+ String janCodeMark = '';
+ //鐢熶骇鏃ユ湡
+ List<String> janCode = new List<String>();
+ if(barCodeList[i].length() < 16){
+ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + barCodeList[i] + ')鐨勪綅鏁颁笉瓒�16锛屼笉绗﹀悎瑕佹眰閿欒锛�'));
continue;
- }
- if (bar.length() >= oTcodeLength + 3 + 25) {
- if (
- bar.substring(
- oTcodeLength + 3 + 16,
- oTcodeLength + 3 + 18
- ) == '10' ||
- bar.substring(
- oTcodeLength + 3 + 16,
- oTcodeLength + 3 + 18
- ) == '21'
- ) {
- serialNoorLotNo = bar.substring(
- oTcodeLength + 3 + 18,
- bar.length() - 8
- );
- //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR, 'serialNoorLotNo' + serialNoorLotNo));
+ }else {
+ //if(barCodeList[i].substring(0,2) !='01'){
+ // ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + barCodeList[i] + ')娌℃湁janCode锛屼笉绗﹀悎瑕佹眰锛�'));
+ // return;
+ //}
+ janCodeMark = barCodeList[i].substring(2,16);
+ try{
+ Decimal test = Decimal.valueOf(janCodeMark);
+ }catch(Exception e){
+ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + barCodeList[i] + ')鐨刯anCode閿欒锛�'));
+ continue;
}
- }
- } else if (
- bar.substring(
- oTcodeLength + 3 + 8,
- oTcodeLength + 3 + 10
- ) == '10' ||
- bar.substring(
- oTcodeLength + 3 + 8,
- oTcodeLength + 3 + 10
- ) == '21'
- ) {
- serialNoorLotNo = bar.substring(
- oTcodeLength + 3 + 10,
- bar.length() - 8
- );
- //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR, 'serialNoorLotNo' + serialNoorLotNo));
}
- }
- } else if (
- bar.substring(oTcodeLength + 3, oTcodeLength + 5) == '17'
- ) {
- try {
- if (
- bar.substring(
- oTcodeLength + 3 + 6,
- oTcodeLength + 3 + 8
- ) == '00'
- ) {
- expirationDateStr =
- '20' +
- bar.substring(
- oTcodeLength + 3 + 2,
- oTcodeLength + 3 + 4
- ) +
- '-' +
- bar.substring(
- oTcodeLength + 3 + 4,
- oTcodeLength + 3 + 6
- ) +
- '-01';
- expirationDate = Date.valueOf(expirationDateStr);
- expirationDate = expirationDate.addMonths(1)
- .toStartofMonth()
- .addDays(-1);
- } else {
- expirationDateStr =
- '20' +
- bar.substring(
- oTcodeLength + 3 + 2,
- oTcodeLength + 3 + 4
- ) +
- '-' +
- bar.substring(
- oTcodeLength + 3 + 4,
- oTcodeLength + 3 + 6
- ) +
- '-' +
- bar.substring(
- oTcodeLength + 3 + 6,
- oTcodeLength + 3 + 8
- );
- expirationDate = Date.valueOf(expirationDateStr);
- }
- } catch (Exception e) {
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- errorList.add(
- '浜у搧BarCode(' +
- bar +
- ')鐨勬粎鑿屾湁鍔规湡闄�' +
- expirationDateStr +
- '閿欒锛�'
- );
- } else {
- ApexPages.addmessage(
- new ApexPages.message(
- ApexPages.severity.ERROR,
- '浜у搧BarCode(' +
- bar +
- ')鐨勬粎鑿屾湁鍔规湡闄�' +
- expirationDateStr +
- '閿欒锛�'
- )
- );
- }
- continue;
- }
- if (bar.length() >= oTcodeLength + 20) {
- if (
- bar.substring(
- oTcodeLength + 3 + 8,
- oTcodeLength + 3 + 10
- ) == '10' ||
- bar.substring(
- oTcodeLength + 3 + 8,
- oTcodeLength + 3 + 10
- ) == '21'
- ) {
- serialNoorLotNo = bar.substring(
- oTcodeLength + 3 + 10,
- bar.length() - 8
- );
- }
- }
- } else if (bar.length() >= oTcodeLength + 12) {
- if (
- bar.substring(oTcodeLength + 3, oTcodeLength + 5) == '10' ||
- bar.substring(oTcodeLength + 3, oTcodeLength + 5) == '21'
- ) {
- serialNoorLotNo = bar.substring(
- oTcodeLength + 3 + 2,
- bar.length() - 8
- );
- }
- }
- }
- if (
- bar.length() >= oTcodeLength + 3 + 8 &&
- bar.substring(bar.length() - 8, bar.length() - 5) == '250'
- ) {
- if (
- bar.substring(bar.length() - 8, bar.length() - 5) == '250'
- ) {
- tracingCode = bar.substring(bar.length() - 5, bar.length());
- Matcher n = Pattern.compile('[0-9]').matcher(tracingCode);
- if (n.find()) {
- // gzw DB202305352696 鍏ュ簱绠$悊缂栫爜楠岃瘉绋嬪簭璋冩暣 start
- if (tracingCode.length() == 5) {
- String tr = tracingCode;
- String Ctr = tr.substring(tr.length() - 3, tr.length());
- String Btr = tr.substring(
- tr.length() - 4,
- tr.length() - 3
- );
- String Atr = tr.substring(
- tr.length() - 5,
- tr.length() - 4
- );
- if (
- Pattern.compile('[0-9]').matcher(Atr).find() ||
- Pattern.compile('[0-9]').matcher(Ctr).find()
- ) {
- String str = '绠$悊缂栫爜涓嶆纭紝璇蜂笌绠$悊鍛樼‘璁ゆ槸鍚﹂敊璇��';
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- errorList.add(
- '浜у搧BarCode(' +
- bar +
- ')绠$悊缂栫爜鏈夎锛岃妫�鏌ユ潯褰㈢爜鏁版嵁銆�'
- );
- } else {
- ApexPages.addmessage(
- new ApexPages.message(
- ApexPages.severity.ERROR,
- '浜у搧BarCode(' +
- bar +
- ')绠$悊缂栫爜鏈夎锛岃妫�鏌ユ潯褰㈢爜鏁版嵁銆�'
- )
- );
+ if(barCodeList[i].length() >= 22){
+ if(barCodeList[i].substring(barCodeList[i].length() - 8,barCodeList[i].length()-5)!='250'){
+ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR, '浜у搧BarCode(' + barCodeList[i] + ')娌℃湁绠$悊缂栫爜锛�'));
+ continue;
}
+ if( barCodeList[i].substring(16,18) =='11'){
+ try{
+ productDateStr = '20' + barCodeList[i].substring(18,20) + '-' + barCodeList[i].substring(20,22) + '-01' ;
+ productionDate = Date.valueOf(productDateStr);
+ }catch(Exception e){
+ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR, '浜у搧BarCode(' + barCodeList[i] + ')鐨勭敓浜ф棩鏈�' + productDateStr + '閿欒锛�'));
+ continue;
+ }
+ if(barCodeList[i].length() >=32){
+ if( barCodeList[i].substring(24,26) =='17'){
+ try{
+ if(barCodeList[i].substring(30,32)=='00'){
+ expirationDateStr = '20' + barCodeList[i].substring(26,28) + '-' + barCodeList[i].substring(28,30) + '-' + '01' ;
+ expirationDate = Date.valueOf(expirationDateStr);
+ expirationDate = expirationDate.addMonths(1).toStartofMonth().addDays(-1);
+ }else{
+ expirationDateStr = '20' + barCodeList[i].substring(26,28) + '-' + barCodeList[i].substring(28,30) + '-' +barCodeList[i].substring(30,32) ;
+ expirationDate = Date.valueOf(expirationDateStr);
+ }
+ }catch(Exception e){
+ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + barCodeList[i] + ')鐨勬粎鑿屾湁鍔规湡闄�' + expirationDateStr + '閿欒锛�'));
+ continue;
+ }
+ if(barCodeList[i].length() >= 42){
+ if(barCodeList[i].substring(32,34) =='10' || barCodeList[i].substring(32,34) =='21'){
+ serialNoorLotNo = barCodeList[i].substring(34,barCodeList[i].length() - 8) ;
+ }
+ }
+ }else if(barCodeList[i].substring(24,26) =='10' || barCodeList[i].substring(24,26) =='21'){
+ serialNoorLotNo = barCodeList[i].substring(26,barCodeList[i].length() - 8) ;
+ }
+ }
+ }else if(barCodeList[i].substring(16,18) =='17'){
+ try{
+ if(barCodeList[i].substring(22,24)=='00'){
+ expirationDateStr = '20' + barCodeList[i].substring(18,20) + '-' + barCodeList[i].substring(20,22) + '-01';
+ //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧expirationDateStr' + expirationDateStr));
+ expirationDate = Date.valueOf(expirationDateStr);
+ expirationDate = expirationDate.addMonths(1).toStartofMonth().addDays(-1);
+ }else{
+ expirationDateStr = '20' + barCodeList[i].substring(18,20) + '-' + barCodeList[i].substring(20,22) + '-' +barCodeList[i].substring(22,24);
+ expirationDate = Date.valueOf(expirationDateStr);
+ }
+ }catch(Exception e){
+ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + barCodeList[i] + ')鐨勬粎鑿屾湁鍔规湡闄�' + expirationDateStr + '閿欒锛�'));
+ continue;
+ }
+ if(barCodeList[i].length() >= 34){
+ if(barCodeList[i].substring(24,26) =='10' || barCodeList[i].substring(24,26) =='21'){
+ serialNoorLotNo = barCodeList[i].substring(26,barCodeList[i].length() - 8) ;
+ }
+ }
+
+ }else if(barCodeList[i].length() >= 26){
+ if(barCodeList[i].substring(16,18) =='10' || barCodeList[i].substring(16,18) =='21'){
+ serialNoorLotNo = barCodeList[i].substring(18,barCodeList[i].length() - 8) ;
+ }
+ }
+ }
+ if(barCodeList[i].length() >= 24 && barCodeList[i].substring(barCodeList[i].length() - 8,barCodeList[i].length()-5)=='250'){
+ if(barCodeList[i].substring(barCodeList[i].length() - 8,barCodeList[i].length()-5)=='250'){
+ tracingCode = barCodeList[i].substring(barCodeList[i].length() - 5,barCodeList[i].length());
+ Matcher n = Pattern.compile('[0-9]').matcher(tracingCode);
+ if(n.find()){
+ String str = '绠$悊缂栫爜涓嶆纭紝璇蜂笌绠$悊鍛樼‘璁ゆ槸鍚﹂敊璇��';
+ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + barCodeList[i] + ')绠$悊缂栫爜涓湁鏁板瓧锛岃涓庣鐞嗗憳纭鏄惁閿欒锛�'));
+ continue;
+ }
+ }else{
+ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + barCodeList[i] + ')鐨則racingCode閿欒锛�'));
+ continue;
+ }
+ }
+ List<String> barcodedetList = new List<String>();
+ barcodedetList.add(barCodeList[i]);
+ barcodedetList.add(String.valueOf(expirationDate));
+ barcodedetList.add(serialNoorLotNo);
+ barcodedetList.add(tracingCode);
+ Integer jan1 = Integer.valueOf(janCodeMark.substring(0, 1));
+ Integer jan2 = Integer.valueOf(janCodeMark.substring(1, 2));
+ Integer jan3 = Integer.valueOf(janCodeMark.substring(2, 3));
+ Integer jan4 = Integer.valueOf(janCodeMark.substring(3, 4));
+ Integer jan5 = Integer.valueOf(janCodeMark.substring(4, 5));
+ Integer jan6 = Integer.valueOf(janCodeMark.substring(5, 6));
+ Integer jan7 = Integer.valueOf(janCodeMark.substring(6, 7));
+ Integer jan8 = Integer.valueOf(janCodeMark.substring(7, 8));
+ Integer jan9 = Integer.valueOf(janCodeMark.substring(8, 9));
+ Integer jan10 = Integer.valueOf(janCodeMark.substring(9, 10));
+ Integer jan11 = Integer.valueOf(janCodeMark.substring(10, 11));
+ Integer jan12 = Integer.valueOf(janCodeMark.substring(11, 12));
+ Integer jan13 = Integer.valueOf(janCodeMark.substring(12, 13));
+
+ Integer count12 = jan2 + jan3*3 + jan4 + jan5*3 + jan6 + jan7*3 + jan8 + jan9*3 + jan10 + jan11*3 +jan12 + jan13*3;
+ Integer count13 = jan1*3 + jan2 + jan3*3 + jan4 + jan5*3 + jan6 + jan7*3 + jan8 + jan9*3 + jan10 + jan11*3 +jan12 + jan13*3;
+ String frost12 = (String.valueOf(count12)).substring((String.valueOf(count12)).length()-1);
+ String frost13 = (String.valueOf(count13)).substring((String.valueOf(count13)).length()-1);
+ //鍑忓幓12浣嶄釜浣�
+ frost12 = (String.valueOf(10 - Integer.valueOf(frost12))).substring((String.valueOf(10 - Integer.valueOf(frost12))).length()-1);
+ frost13 = (String.valueOf(10 - Integer.valueOf(frost13))).substring((String.valueOf(10 - Integer.valueOf(frost13))).length()-1);
+ janCode.add(janCodeMark.substring(1, 13) + frost12);
+ janCode.add(janCodeMark.substring(0, 13) + frost12);
+ janCode.add(janCodeMark.substring(1, 13) + frost13);
+ janCode.add(janCodeMark.substring(0, 13) + frost13);
+ alljanCodeList.addAll(janCode);
+ Map<String,String> janCodeMap = new Map<String,String>();
+ janCodeMap.put(janCodeMark.substring(1, 13) + frost12,barCodeList[i]);
+ janCodeMap.put(janCodeMark.substring(0, 13) + frost12,barCodeList[i]);
+ janCodeMap.put(janCodeMark.substring(1, 13) + frost13,barCodeList[i]);
+ janCodeMap.put(janCodeMark.substring(0, 13) + frost13,barCodeList[i]);
+ barJancodeMap.put(barCodeList[i], janCodeMap);
+ barcodeinfoMap.put(barCodeList[i], barcodedetList);
+ barCode01List.add(barCodeList[i]);
+ }else if(barCodeList[i].substring(0,3) =='241'){
+ if(barCodeList[i].length() > 8 && barCodeList[i].substring(barCodeList[i].length() - 8,barCodeList[i].length()-5)!='250'){
+ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR, '浜у搧BarCode(' + barCodeList[i] + ')娌℃湁绠$悊缂栫爜锛�'));
continue;
- }
}
- // String str = '绠$悊缂栫爜涓嶆纭紝璇蜂笌绠$悊鍛樼‘璁ゆ槸鍚﹂敊璇��';
- // ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + bar + ')绠$悊缂栫爜涓湁鏁板瓧锛岃涓庣鐞嗗憳纭鏄惁閿欒锛�'));
- // continue;
- // gzw DB202305352696 鍏ュ簱绠$悊缂栫爜楠岃瘉绋嬪簭璋冩暣 end
- }
- } else {
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- errorList.add(
- '浜у搧BarCode(' + bar + ')鐨則racingCode閿欒锛�'
- );
- } else {
- ApexPages.addmessage(
- new ApexPages.message(
- ApexPages.severity.ERROR,
- '浜у搧BarCode(' + bar + ')鐨則racingCode閿欒锛�'
- )
- );
- }
- continue;
+ List<String> otCodeList = new List<String>();
+ Map<String,String> otCodeMap = new Map<String,String>();
+ if(barCodeList[i].length() < 7){
+ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + barCodeList[i] + ')鐨勪綅鏁颁笉瓒�16锛屼笉绗﹀悎瑕佹眰閿欒锛�'));
+ continue;
+ }else if(barCodeList[i].length() == 11){
+ String otCode4 = barCodeList[i].substring(3,7);
+ String otCode5 = barCodeList[i].substring(3,8);
+ String otCode6 = barCodeList[i].substring(3,9);
+ String otCode7 = barCodeList[i].substring(3,10);
+ String otCode8 = barCodeList[i].substring(3,11);
+ otCodeList.add(otCode4);
+ otCodeList.add(otCode5);
+ otCodeList.add(otCode6);
+ otCodeList.add(otCode7);
+ otCodeList.add(otCode8);
+ otCodeMap.put(otCode4,barCodeList[i]);
+ otCodeMap.put(otCode5,barCodeList[i]);
+ otCodeMap.put(otCode6,barCodeList[i]);
+ otCodeMap.put(otCode7,barCodeList[i]);
+ otCodeMap.put(otCode8,barCodeList[i]);
+ }else if(barCodeList[i].length() >= 12){
+ String otCode4 = barCodeList[i].substring(3,7);
+ String otCode5 = barCodeList[i].substring(3,8);
+ String otCode6 = barCodeList[i].substring(3,9);
+ String otCode7 = barCodeList[i].substring(3,10);
+ String otCode8 = barCodeList[i].substring(3,11);
+ String otCode9 = barCodeList[i].substring(3,12);
+ otCodeList.add(otCode4);
+ otCodeList.add(otCode5);
+ otCodeList.add(otCode6);
+ otCodeList.add(otCode7);
+ otCodeList.add(otCode8);
+ otCodeList.add(otCode9);
+ otCodeMap.put(otCode4,barCodeList[i]);
+ otCodeMap.put(otCode5,barCodeList[i]);
+ otCodeMap.put(otCode6,barCodeList[i]);
+ otCodeMap.put(otCode7,barCodeList[i]);
+ otCodeMap.put(otCode8,barCodeList[i]);
+ otCodeMap.put(otCode9,barCodeList[i]);
+ }
+ allotCodeList.addAll(otCodeList);
+ barOtcodeMap.put(barCodeList[i], otCodeMap);
+ barCode241List.add(barCodeList[i]);
+ }else{
+ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + barCodeList[i] + ')涓嶇鍚堣姹傦紒'));
+ continue;
}
- }
- exitBarCodeMap.put(bar, bar);
- List<String> barcodedetList = new List<String>();
- barcodedetList.add(bar);
- barcodedetList.add(String.valueOf(expirationDate));
- barcodedetList.add(serialNoorLotNo);
- barcodedetList.add(tracingCode);
- consumableInventory.add(
- new ConsumableorderdetailsInfo(produ, barcodedetList)
- );
- consumableInventoryUse.add(
- new ConsumableorderdetailsInfo(produ, barcodedetList)
- );
+ }else{
+ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + barCodeList[i] + ')涓嶇鍚堣姹傦紒'));
+ continue;
}
- }
}
- }
- for (String bartxt : barCode241List) {
- if (!exitBarCodeMap.containsKey(bartxt)) {
- if (!errorMap.containsKey(bartxt)) {
- notInStorelist.add(bartxt);
- }
+ //01閫氳繃妫�绱骇鍝佹槸鍚﹀瓨鍦�
+ //-----------XHL--------------UpdateSTART----------------20181010------
+ if(alljanCodeList.size() > 0){
+ List<Product2__c> product2InStore = [SELECT Id, Name,Name__c,Intra_Trade_List_RMB__c,Asset_Model_No__c,OT_CODE__c,Product2_Jancode__c,
+ Pro2_Dealer_ENG__c,Pro2_Dealer_Object__c
+ FROM Product2__c
+ WHERE Product2_Jancode__c in :alljanCodeList
+ order by SFDA_Expiration_Date__c desc ] ;
+ if(product2InStore.size() > 0){
+ // CHAN-AVSAST
+ Map<String,String> rightBar = new Map<String,String>();
+ Map<String,String> errorMap = new Map<String,String>();
+ for(String bar: barJancodeMap.keySet() ){
+ Integer cou = 0;
+ for(Product2__c produ: product2InStore){
+ if(barJancodeMap.get(bar).containsKey(produ.Product2_Jancode__c) && !rightBar.containsKey(bar)){
+ cou ++;
+ if(EngFlag == TRUE && produ.Pro2_Dealer_ENG__c == TRUE){
+ consumableInventory.add(new ConsumableorderdetailsInfo(produ,barcodeinfoMap.get(bar)));
+ consumableInventoryUse.add(new ConsumableorderdetailsInfo(produ,barcodeinfoMap.get(bar)));
+ rightBar.put(bar, bar);
+ }else if(ETFlag == TRUE && produ.Pro2_Dealer_Object__c == TRUE){
+ consumableInventory.add(new ConsumableorderdetailsInfo(produ,barcodeinfoMap.get(bar)));
+ consumableInventoryUse.add(new ConsumableorderdetailsInfo(produ,barcodeinfoMap.get(bar)));
+ rightBar.put(bar, bar);
+ }else{
+ errorMap.put(bar, bar);
+ }
+ }
+
+ }
+ if(cou <= 0 ){
+ notInStorelist.add(bar);
+ }
+ }
+ if(errorMap.size() > 0){
+ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'BarCode鍙穂'+ errorMap.values() +']浜у搧绫诲瀷['+product_Type+']涓庣敤鎴风被鍨媅'+userPro_Type+']涓嶇'));
+ }
+ }
}
- }
- }
- }
+
+ //241閫氳繃妫�绱骇鍝佹槸鍚﹀瓨鍦�
+ if(allotCodeList.size() > 0){
+ Map<String,String> errorMap = new Map<String,String>();
+ Map<String,String> exitBarCodeMap = new Map<String,String>();
+ List<Product2__c> product2InStore = [SELECT Id, Name,Name__c,Intra_Trade_List_RMB__c,Asset_Model_No__c,OT_CODE__c,Product2_Jancode__c,
+ Pro2_Dealer_ENG__c,Pro2_Dealer_Object__c
+ FROM Product2__c
+ WHERE OT_CODE__c in :allotCodeList
+ AND (not Product_Type__c like :userPro_Typestr)] ;
+ if(product2InStore.size() > 0){
+
+ for(Product2__c produ: product2InStore){
+ for(String bar: barOtcodeMap.keySet() ){
+ if(barOtcodeMap.get(bar).containsKey(produ.OT_CODE__c)){
+ exitBarCodeMap.put(bar,bar);
+ errorMap.put(bar, bar);
+ }
+ }
+ }
+ }
+ if(errorMap.size() > 0){
+ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'BarCode鍙穂'+ errorMap.values() +']浜у搧绫诲瀷['+product_Type+']涓庣敤鎴穂'+userPro_Type+']绫诲瀷涓嶇'));
+ }
+ product2InStore = [SELECT Id, Name,Name__c,Intra_Trade_List_RMB__c,Asset_Model_No__c,OT_CODE__c,Product2_Jancode__c,
+ Pro2_Dealer_ENG__c,Pro2_Dealer_Object__c
+ FROM Product2__c
+ WHERE OT_CODE__c in :allotCodeList
+ AND Product_Type__c like :userPro_Typestr] ;
+
+ if(product2InStore.size() > 0){
+
+ for(Product2__c produ: product2InStore){
+ for(String bar: barOtcodeMap.keySet() ){
+ Date expirationDate = null ;
+ String serialNoorLotNo = '';
+ String tracingCode = '';
+ String productDateStr = '';
+ Date productionDate = null ;
+ String expirationDateStr = '';
+ if(barOtcodeMap.get(bar).containsKey(produ.OT_CODE__c)){
+ Integer oTcodeLength = produ.OT_CODE__c.length();
+ if(bar.length() >= oTcodeLength + 11){
+ if( bar.substring(oTcodeLength + 3,oTcodeLength + 5) =='11'){
+ try{
+ productDateStr = '20' + bar.substring(oTcodeLength + 5,oTcodeLength + 7) + '-' + bar.substring(oTcodeLength + 7,oTcodeLength + 9) + '-01' ;
+ productionDate = Date.valueOf(productDateStr);
+ }catch(Exception e){
+ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR, '浜у搧BarCode(' + bar + ')鐨勭敓浜ф棩鏈�' + productDateStr + '閿欒锛�'));
+ continue;
+ }
+ if(bar.length() >=oTcodeLength + 3 + 16){
+ if( bar.substring(oTcodeLength + 3 + 8,oTcodeLength + 3 + 10) =='17'){
+ try{
+ if(bar.substring(oTcodeLength + 3 + 14,oTcodeLength + 3 + 16)=='00'){
+ expirationDateStr = '20' + bar.substring(oTcodeLength + 3 + 10,oTcodeLength + 3 + 12) + '-' + bar.substring(oTcodeLength + 3 + 12,oTcodeLength + 3 + 14) + '-' + '01' ;
+ expirationDate = Date.valueOf(expirationDateStr);
+ expirationDate = expirationDate.addMonths(1).toStartofMonth().addDays(-1);
+ }else{
+ expirationDateStr = '20' + bar.substring(oTcodeLength + 3 + 10,oTcodeLength + 3 + 12) + '-' + bar.substring(oTcodeLength + 3 + 12,oTcodeLength + 3 + 14) + '-' +bar.substring(oTcodeLength + 3 + 14,oTcodeLength + 3 + 16) ;
+ expirationDate = Date.valueOf(expirationDateStr);
+ }
+ }catch(Exception e){
+ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + bar + ')鐨勬粎鑿屾湁鍔规湡闄�' + expirationDateStr + '閿欒锛�'));
+ continue;
+ }
+ if(bar.length() >= oTcodeLength + 3 + 25){
+ if(bar.substring(oTcodeLength + 3 + 16,oTcodeLength + 3 + 18) =='10' || bar.substring(oTcodeLength + 3 + 16,oTcodeLength + 3 + 18) =='21'){
+ serialNoorLotNo = bar.substring(oTcodeLength + 3 + 18,bar.length() - 8) ;
+ //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR, 'serialNoorLotNo' + serialNoorLotNo));
+ }
+ }
+ }else if(bar.substring(oTcodeLength + 3 + 8,oTcodeLength + 3 + 10) =='10' || bar.substring(oTcodeLength + 3 + 8,oTcodeLength + 3 + 10) =='21'){
+ serialNoorLotNo = bar.substring(oTcodeLength + 3 + 10,bar.length() - 8) ;
+ //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR, 'serialNoorLotNo' + serialNoorLotNo));
+ }
+ }
+ }else if(bar.substring(oTcodeLength + 3,oTcodeLength + 5) =='17'){
+ try{
+ if(bar.substring(oTcodeLength + 3 + 6,oTcodeLength + 3 + 8)=='00'){
+ expirationDateStr = '20' + bar.substring(oTcodeLength + 3 + 2,oTcodeLength + 3 + 4) + '-' + bar.substring(oTcodeLength + 3 + 4,oTcodeLength + 3 + 6) + '-01';
+ expirationDate = Date.valueOf(expirationDateStr);
+ expirationDate = expirationDate.addMonths(1).toStartofMonth().addDays(-1);
+ }else{
+ expirationDateStr = '20' + bar.substring(oTcodeLength + 3 + 2,oTcodeLength + 3 + 4) + '-' + bar.substring(oTcodeLength + 3 + 4,oTcodeLength + 3 + 6) + '-' +bar.substring(oTcodeLength + 3 + 6,oTcodeLength + 3 + 8);
+ expirationDate = Date.valueOf(expirationDateStr);
+ }
+ }catch(Exception e){
+ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + bar + ')鐨勬粎鑿屾湁鍔规湡闄�' + expirationDateStr + '閿欒锛�'));
+ continue;
+ }
+ if(bar.length() >=oTcodeLength + 20){
+ if(bar.substring(oTcodeLength + 3 + 8,oTcodeLength + 3 + 10) =='10' || bar.substring(oTcodeLength + 3 + 8,oTcodeLength + 3 + 10) =='21'){
+ serialNoorLotNo = bar.substring(oTcodeLength + 3 + 10,bar.length() - 8) ;
+ }
+ }
- public void inventoryEntry(List<String> barCodeList) {
- //鎵�鏈塨arcode瑙f瀽鍒扮殑Jancode
- List<String> alljanCodeList = new List<String>();
- List<String> allotCodeList = new List<String>();
- List<String> barCode01List = new List<String>();
- List<String> barCode241List = new List<String>();
- Map<String, Map<String, String>> barJancodeMap = new Map<String, Map<String, String>>();
- Map<String, Map<String, String>> barOtcodeMap = new Map<String, Map<String, String>>();
- Map<String, List<String>> barcodeinfoMap = new Map<String, List<String>>();
- notInStorelist.clear();
- notEqualBARcodeCunMap.clear();
- Map<String, String> orderdetailMap = new Map<String, String>();
- List<Consumable_Orderdetails__c> orderdetail = [
- SELECT
- Id,
- Name,
- Consumable_order__c,
- Consumable_Product__c,
- Asset_Model_No__c
- FROM Consumable_Orderdetails__c
- WHERE
- Consumable_order__r.Dealer_Info__c = :accountid
- AND Consumable_order__c != NULL
- AND Consumable_order__c = :ESetId
- AND Order_Owner_WorkLocal__c = :userWorkLocation
- ORDER BY Name
- ];
- for (Integer i = 0; i < orderdetail.size(); i++) {
- orderdetailMap.put(
- orderdetail[i].Consumable_Product__c,
- orderdetail[i].Consumable_Product__c
- );
+ }else if(bar.length() >= oTcodeLength + 12){
+ if(bar.substring(oTcodeLength + 3,oTcodeLength + 5) =='10' || bar.substring(oTcodeLength + 3,oTcodeLength + 5) =='21'){
+ serialNoorLotNo = bar.substring(oTcodeLength + 3 + 2,bar.length() - 8) ;
+ }
+ }
+ }
+ if(bar.length() >= oTcodeLength + 3 + 8 && bar.substring(bar.length() - 8,bar.length()-5)=='250'){
+ if(bar.substring(bar.length() - 8,bar.length()-5)=='250'){
+ tracingCode = bar.substring(bar.length() - 5,bar.length());
+ Matcher n = Pattern.compile('[0-9]').matcher(tracingCode);
+ if(n.find()){
+ String str = '绠$悊缂栫爜涓嶆纭紝璇蜂笌绠$悊鍛樼‘璁ゆ槸鍚﹂敊璇��';
+ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + bar + ')绠$悊缂栫爜涓湁鏁板瓧锛岃涓庣鐞嗗憳纭鏄惁閿欒锛�'));
+ continue;
+ }
+ }else{
+ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + bar + ')鐨則racingCode閿欒锛�'));
+ continue;
+ }
+ }
+ exitBarCodeMap.put(bar,bar);
+ List<String> barcodedetList = new List<String>();
+ barcodedetList.add(bar);
+ barcodedetList.add(String.valueOf(expirationDate));
+ barcodedetList.add(serialNoorLotNo);
+ barcodedetList.add(tracingCode);
+ consumableInventory.add(new ConsumableorderdetailsInfo(produ,barcodedetList));
+ consumableInventoryUse.add(new ConsumableorderdetailsInfo(produ,barcodedetList));
+
+ }
+ }
+
+ }
+ }
+ for(String bartxt :barCode241List){
+ if(!exitBarCodeMap.containsKey(bartxt)){
+ if(!errorMap.containsKey(bartxt)){
+ notInStorelist.add(bartxt);
+ }
+ }
+ }
+ }
+
}
- for (Integer i = 0; i < barCodeList.size(); i++) {
- Date expirationDate = null;
- String serialNoorLotNo = '';
- String tracingCode = '';
- String productDateStr = '';
- Date productionDate = null;
- String expirationDateStr = '';
- if (barCodeList[i].substring(0, 2) == '01') {
- String janCodeMark = '';
- //鐢熶骇鏃ユ湡
- List<String> janCode = new List<String>();
- if (barCodeList[i].length() < 16) {
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- errorList.add(
- '浜у搧BarCode(' +
- barCodeList[i] +
- ')鐨勪綅鏁颁笉瓒�16锛屼笉绗﹀悎瑕佹眰閿欒锛�'
- );
- } else {
- ApexPages.addmessage(
- new ApexPages.message(
- ApexPages.severity.ERROR,
- '浜у搧BarCode(' +
- barCodeList[i] +
- ')鐨勪綅鏁颁笉瓒�16锛屼笉绗﹀悎瑕佹眰閿欒锛�'
- )
- );
- }
- continue;
- } else {
- janCodeMark = barCodeList[i].substring(2, 16);
- try {
- Decimal test = Decimal.valueOf(janCodeMark);
- } catch (Exception e) {
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- errorList.add(
- '浜у搧BarCode(' + barCodeList[i] + ')鐨刯anCode閿欒锛�'
- );
- } else {
- ApexPages.addmessage(
- new ApexPages.message(
- ApexPages.severity.ERROR,
- '浜у搧BarCode(' + barCodeList[i] + ')鐨刯anCode閿欒锛�'
- )
- );
- }
- continue;
- }
+ public void inventoryEntry (List<String> barCodeList){
+ //鎵�鏈塨arcode瑙f瀽鍒扮殑Jancode
+ List<String> alljanCodeList = new List<String>();
+ List<String> allotCodeList = new List<String>();
+ List<String> barCode01List = new List<String>();
+ List<String> barCode241List = new List<String>();
+ Map<String,Map<String,String>> barJancodeMap = new Map<String,Map<String,String>>();
+ Map<String,Map<String,String>> barOtcodeMap = new Map<String,Map<String,String>>();
+ Map<String,List<String>> barcodeinfoMap = new Map<String,List<String>>();
+ notInStorelist.clear();
+ notEqualBARcodeCunMap.clear();
+ Map<String,String> orderdetailMap = new Map<String,String>();
+ List<Consumable_Orderdetails__c> orderdetail = [SELECT Id, Name, Consumable_order__c,
+ Consumable_Product__c,Asset_Model_No__c
+ FROM Consumable_Orderdetails__c
+ WHERE Consumable_order__r.Dealer_Info__c = :accountid
+ AND Consumable_order__c != null
+ AND Consumable_order__c = :ESetId
+ AND Order_Owner_WorkLocal__c = :userWorkLocation
+ ORDER BY Name ];
+ for(Integer i = 0; i < orderdetail.size(); i++){
+ orderdetailMap.put(orderdetail[i].Consumable_Product__c, orderdetail[i].Consumable_Product__c);
}
- if (barCodeList[i].length() >= 22) {
- if (
- barCodeList[i]
- .substring(
- barCodeList[i].length() - 8,
- barCodeList[i].length() - 5
- ) != '250'
- ) {
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- errorList.add(
- '浜у搧BarCode(' + barCodeList[i] + ')娌℃湁绠$悊缂栫爜锛�'
- );
- } else {
- ApexPages.addmessage(
- new ApexPages.message(
- ApexPages.severity.ERROR,
- '浜у搧BarCode(' + barCodeList[i] + ')娌℃湁绠$悊缂栫爜锛�'
- )
- );
- }
- continue;
- }
- if (barCodeList[i].substring(16, 18) == '11') {
- try {
- productDateStr =
- '20' +
- barCodeList[i].substring(18, 20) +
- '-' +
- barCodeList[i].substring(20, 22) +
- '-01';
- productionDate = Date.valueOf(productDateStr);
- } catch (Exception e) {
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- errorList.add(
- '浜у搧BarCode(' +
- barCodeList[i] +
- ')鐨勭敓浜ф棩鏈�' +
- productDateStr +
- '閿欒锛�'
- );
- } else {
- ApexPages.addmessage(
- new ApexPages.message(
- ApexPages.severity.ERROR,
- '浜у搧BarCode(' +
- barCodeList[i] +
- ')鐨勭敓浜ф棩鏈�' +
- productDateStr +
- '閿欒锛�'
- )
- );
- }
- continue;
- }
- if (barCodeList[i].length() >= 32) {
- if (barCodeList[i].substring(24, 26) == '17') {
- try {
- if (barCodeList[i].substring(30, 32) == '00') {
- expirationDateStr =
- '20' +
- barCodeList[i].substring(26, 28) +
- '-' +
- barCodeList[i].substring(28, 30) +
- '-' +
- '01';
- expirationDate = Date.valueOf(expirationDateStr);
- expirationDate = expirationDate.addMonths(1)
- .toStartofMonth()
- .addDays(-1);
- } else {
- expirationDateStr =
- '20' +
- barCodeList[i].substring(26, 28) +
- '-' +
- barCodeList[i].substring(28, 30) +
- '-' +
- barCodeList[i].substring(30, 32);
- expirationDate = Date.valueOf(expirationDateStr);
- }
- } catch (Exception e) {
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- errorList.add(
- '浜у搧BarCode(' +
- barCodeList[i] +
- ')鐨勬粎鑿屾湁鍔规湡闄�' +
- expirationDateStr +
- '閿欒锛�'
- );
- } else {
- ApexPages.addmessage(
- new ApexPages.message(
- ApexPages.severity.ERROR,
- '浜у搧BarCode(' +
- barCodeList[i] +
- ')鐨勬粎鑿屾湁鍔规湡闄�' +
- expirationDateStr +
- '閿欒锛�'
- )
- );
- }
- continue;
- }
- if (barCodeList[i].length() >= 42) {
- if (
- barCodeList[i].substring(32, 34) == '10' ||
- barCodeList[i].substring(32, 34) == '21'
- ) {
- serialNoorLotNo = barCodeList[i]
- .substring(34, barCodeList[i].length() - 8);
- }
- }
- } else if (
- barCodeList[i].substring(24, 26) == '10' ||
- barCodeList[i].substring(24, 26) == '21'
- ) {
- serialNoorLotNo = barCodeList[i]
- .substring(26, barCodeList[i].length() - 8);
- }
- }
- } else if (barCodeList[i].substring(16, 18) == '17') {
- try {
- if (barCodeList[i].substring(22, 24) == '00') {
- expirationDateStr =
- '20' +
- barCodeList[i].substring(18, 20) +
- '-' +
- barCodeList[i].substring(20, 22) +
- '-01';
- //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧expirationDateStr' + expirationDateStr));
- expirationDate = Date.valueOf(expirationDateStr);
- expirationDate = expirationDate.addMonths(1)
- .toStartofMonth()
- .addDays(-1);
- } else {
- expirationDateStr =
- '20' +
- barCodeList[i].substring(18, 20) +
- '-' +
- barCodeList[i].substring(20, 22) +
- '-' +
- barCodeList[i].substring(22, 24);
- expirationDate = Date.valueOf(expirationDateStr);
- }
- } catch (Exception e) {
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- errorList.add(
- '浜у搧BarCode(' +
- barCodeList[i] +
- ')鐨勬粎鑿屾湁鍔规湡闄�' +
- expirationDateStr +
- '閿欒锛�'
- );
- } else {
- ApexPages.addmessage(
- new ApexPages.message(
- ApexPages.severity.ERROR,
- '浜у搧BarCode(' +
- barCodeList[i] +
- ')鐨勬粎鑿屾湁鍔规湡闄�' +
- expirationDateStr +
- '閿欒锛�'
- )
- );
- }
- continue;
- }
- if (barCodeList[i].length() >= 34) {
- if (
- barCodeList[i].substring(24, 26) == '10' ||
- barCodeList[i].substring(24, 26) == '21'
- ) {
- serialNoorLotNo = barCodeList[i]
- .substring(26, barCodeList[i].length() - 8);
- }
- }
- } else if (barCodeList[i].length() >= 26) {
- if (
- barCodeList[i].substring(16, 18) == '10' ||
- barCodeList[i].substring(16, 18) == '21'
- ) {
- serialNoorLotNo = barCodeList[i]
- .substring(18, barCodeList[i].length() - 8);
- }
- }
- }
- if (
- barCodeList[i].length() >= 24 &&
- barCodeList[i]
- .substring(
- barCodeList[i].length() - 8,
- barCodeList[i].length() - 5
- ) == '250'
- ) {
- if (
- barCodeList[i]
- .substring(
- barCodeList[i].length() - 8,
- barCodeList[i].length() - 5
- ) == '250'
- ) {
- tracingCode = barCodeList[i]
- .substring(barCodeList[i].length() - 5, barCodeList[i].length());
- Matcher n = Pattern.compile('[0-9]').matcher(tracingCode);
- if (n.find()) {
- // gzw DB202305352696 鍏ュ簱绠$悊缂栫爜楠岃瘉绋嬪簭璋冩暣 start
- if (tracingCode.length() == 5) {
- String tr = tracingCode;
- String Ctr = tr.substring(tr.length() - 3, tr.length());
- String Btr = tr.substring(tr.length() - 4, tr.length() - 3);
- String Atr = tr.substring(tr.length() - 5, tr.length() - 4);
- if (
- Pattern.compile('[0-9]').matcher(Atr).find() ||
- Pattern.compile('[0-9]').matcher(Ctr).find()
- ) {
- String str = '绠$悊缂栫爜涓嶆纭紝璇蜂笌绠$悊鍛樼‘璁ゆ槸鍚﹂敊璇��';
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- errorList.add(
- '浜у搧BarCode(' +
- barCodeList[i] +
- ')绠$悊缂栫爜鏈夎锛岃妫�鏌ユ潯褰㈢爜鏁版嵁銆�'
- );
- } else {
- ApexPages.addmessage(
- new ApexPages.message(
- ApexPages.severity.ERROR,
- '浜у搧BarCode(' +
- barCodeList[i] +
- ')绠$悊缂栫爜鏈夎锛岃妫�鏌ユ潯褰㈢爜鏁版嵁銆�'
- )
- );
- }
- continue;
- }
- }
- // String str = '绠$悊缂栫爜涓嶆纭紝璇蜂笌绠$悊鍛樼‘璁ゆ槸鍚﹂敊璇��';
- // ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + barCodeList[i] + ')绠$悊缂栫爜涓湁鏁板瓧锛岃涓庣鐞嗗憳纭鏄惁閿欒锛�'));
- // continue;
- // gzw DB202305352696 鍏ュ簱绠$悊缂栫爜楠岃瘉绋嬪簭璋冩暣 end
- }
- } else {
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- errorList.add(
- '浜у搧BarCode(' + barCodeList[i] + ')鐨則racingCode閿欒锛�'
- );
- } else {
- ApexPages.addmessage(
- new ApexPages.message(
- ApexPages.severity.ERROR,
- '浜у搧BarCode(' + barCodeList[i] + ')鐨則racingCode閿欒锛�'
- )
- );
- }
- continue;
- }
- }
- List<String> barcodedetList = new List<String>();
- barcodedetList.add(barCodeList[i]);
- barcodedetList.add(String.valueOf(expirationDate));
- barcodedetList.add(serialNoorLotNo);
- barcodedetList.add(tracingCode);
- Integer jan1 = Integer.valueOf(janCodeMark.substring(0, 1));
- Integer jan2 = Integer.valueOf(janCodeMark.substring(1, 2));
- Integer jan3 = Integer.valueOf(janCodeMark.substring(2, 3));
- Integer jan4 = Integer.valueOf(janCodeMark.substring(3, 4));
- Integer jan5 = Integer.valueOf(janCodeMark.substring(4, 5));
- Integer jan6 = Integer.valueOf(janCodeMark.substring(5, 6));
- Integer jan7 = Integer.valueOf(janCodeMark.substring(6, 7));
- Integer jan8 = Integer.valueOf(janCodeMark.substring(7, 8));
- Integer jan9 = Integer.valueOf(janCodeMark.substring(8, 9));
- Integer jan10 = Integer.valueOf(janCodeMark.substring(9, 10));
- Integer jan11 = Integer.valueOf(janCodeMark.substring(10, 11));
- Integer jan12 = Integer.valueOf(janCodeMark.substring(11, 12));
- Integer jan13 = Integer.valueOf(janCodeMark.substring(12, 13));
- Integer count12 =
- jan2 +
- jan3 * 3 +
- jan4 +
- jan5 * 3 +
- jan6 +
- jan7 * 3 +
- jan8 +
- jan9 * 3 +
- jan10 +
- jan11 * 3 +
- jan12 +
- jan13 * 3;
- Integer count13 =
- jan1 * 3 +
- jan2 +
- jan3 * 3 +
- jan4 +
- jan5 * 3 +
- jan6 +
- jan7 * 3 +
- jan8 +
- jan9 * 3 +
- jan10 +
- jan11 * 3 +
- jan12 +
- jan13 * 3;
- String frost12 = (String.valueOf(count12))
- .substring((String.valueOf(count12)).length() - 1);
- String frost13 = (String.valueOf(count13))
- .substring((String.valueOf(count13)).length() - 1);
- //鍑忓幓12浣嶄釜浣�4
- frost12 = (String.valueOf(10 - Integer.valueOf(frost12)))
- .substring(
- (String.valueOf(10 - Integer.valueOf(frost12))).length() - 1
- );
- frost13 = (String.valueOf(10 - Integer.valueOf(frost13)))
- .substring(
- (String.valueOf(10 - Integer.valueOf(frost13))).length() - 1
- );
-
- janCode.add(janCodeMark.substring(1, 13) + frost12);
- janCode.add(janCodeMark.substring(0, 13) + frost12);
- janCode.add(janCodeMark.substring(1, 13) + frost13);
- janCode.add(janCodeMark.substring(0, 13) + frost13);
- alljanCodeList.addAll(janCode);
- Map<String, String> janCodeMap = new Map<String, String>();
- janCodeMap.put(janCodeMark.substring(1, 13) + frost12, barCodeList[i]);
- janCodeMap.put(janCodeMark.substring(0, 13) + frost12, barCodeList[i]);
- janCodeMap.put(janCodeMark.substring(1, 13) + frost13, barCodeList[i]);
- janCodeMap.put(janCodeMark.substring(0, 13) + frost13, barCodeList[i]);
- barJancodeMap.put(barCodeList[i], janCodeMap);
- barcodeinfoMap.put(barCodeList[i], barcodedetList);
- barCode01List.add(barCodeList[i]);
- } else if (barCodeList[i].substring(0, 3) == '241') {
- if (
- barCodeList[i].length() > 8 &&
- barCodeList[i]
- .substring(
- barCodeList[i].length() - 8,
- barCodeList[i].length() - 5
- ) != '250'
- ) {
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- errorList.add('浜у搧BarCode(' + barCodeList[i] + ')娌℃湁绠$悊缂栫爜锛�');
- } else {
- ApexPages.addmessage(
- new ApexPages.message(
- ApexPages.severity.ERROR,
- '浜у搧BarCode(' + barCodeList[i] + ')娌℃湁绠$悊缂栫爜锛�'
- )
- );
- }
- continue;
- }
- List<String> otCodeList = new List<String>();
- Map<String, String> otCodeMap = new Map<String, String>();
- if (barCodeList[i].length() < 7) {
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- errorList.add(
- '浜у搧BarCode(' +
- barCodeList[i] +
- ')鐨勪綅鏁颁笉瓒�16锛屼笉绗﹀悎瑕佹眰閿欒锛�'
- );
- } else {
- ApexPages.addmessage(
- new ApexPages.message(
- ApexPages.severity.ERROR,
- '浜у搧BarCode(' +
- barCodeList[i] +
- ')鐨勪綅鏁颁笉瓒�16锛屼笉绗﹀悎瑕佹眰閿欒锛�'
- )
- );
- }
- continue;
- } else if (barCodeList[i].length() == 11) {
- String otCode4 = barCodeList[i].substring(3, 7);
- String otCode5 = barCodeList[i].substring(3, 8);
- String otCode6 = barCodeList[i].substring(3, 9);
- String otCode7 = barCodeList[i].substring(3, 10);
- String otCode8 = barCodeList[i].substring(3, 11);
- otCodeList.add(otCode4);
- otCodeList.add(otCode5);
- otCodeList.add(otCode6);
- otCodeList.add(otCode7);
- otCodeList.add(otCode8);
- otCodeMap.put(otCode4, barCodeList[i]);
- otCodeMap.put(otCode5, barCodeList[i]);
- otCodeMap.put(otCode6, barCodeList[i]);
- otCodeMap.put(otCode7, barCodeList[i]);
- otCodeMap.put(otCode8, barCodeList[i]);
- } else if (barCodeList[i].length() >= 12) {
- String otCode4 = barCodeList[i].substring(3, 7);
- String otCode5 = barCodeList[i].substring(3, 8);
- String otCode6 = barCodeList[i].substring(3, 9);
- String otCode7 = barCodeList[i].substring(3, 10);
- String otCode8 = barCodeList[i].substring(3, 11);
- String otCode9 = barCodeList[i].substring(3, 12);
- otCodeList.add(otCode4);
- otCodeList.add(otCode5);
- otCodeList.add(otCode6);
- otCodeList.add(otCode7);
- otCodeList.add(otCode8);
- otCodeList.add(otCode9);
- otCodeMap.put(otCode4, barCodeList[i]);
- otCodeMap.put(otCode5, barCodeList[i]);
- otCodeMap.put(otCode6, barCodeList[i]);
- otCodeMap.put(otCode7, barCodeList[i]);
- otCodeMap.put(otCode8, barCodeList[i]);
- otCodeMap.put(otCode9, barCodeList[i]);
- }
- allotCodeList.addAll(otCodeList);
- barOtcodeMap.put(barCodeList[i], otCodeMap);
- barCode241List.add(barCodeList[i]);
- } else {
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- errorList.add(
- '浜у搧BarCode(' +
- barCodeList[i] +
- ')娌℃湁janCode鎴朞Tcode锛屼笉绗﹀悎瑕佹眰锛�'
- );
- } else {
- ApexPages.addmessage(
- new ApexPages.message(
- ApexPages.severity.ERROR,
- '浜у搧BarCode(' +
- barCodeList[i] +
- ')娌℃湁janCode鎴朞Tcode锛屼笉绗﹀悎瑕佹眰锛�'
- )
- );
- }
- continue;
- }
- }
- //01閫氳繃妫�绱骇鍝佹槸鍚﹀瓨鍦�
- Map<String, String> rightBar = new Map<String, String>();
- if (alljanCodeList.size() > 0) {
- Map<String, String> exitBarCodeMap = new Map<String, String>();
- List<Product2__c> product2InStore = [
- SELECT
- Id,
- Name,
- Name__c,
- Intra_Trade_List_RMB__c,
- Asset_Model_No__c,
- OT_CODE__c,
- Product2_Jancode__c,
- Pro2_Dealer_ENG__c,
- Pro2_Dealer_Object__c,
- Product_Type__c
- FROM Product2__c
- WHERE
- Product2_Jancode__c IN :alljanCodeList
- AND (NOT Product_Type__c LIKE :userPro_Typestr)
- ORDER BY SFDA_Expiration_Date__c DESC
- ];
- if (product2InStore.size() > 0) {
- Map<String, String> errorMap = new Map<String, String>();
- for (Product2__c produ : product2InStore) {
- for (String bar : barJancodeMap.keySet()) {
- if (
- barJancodeMap.get(bar).containsKey(produ.Product2_Jancode__c) &&
- !rightBar.containsKey(bar)
- ) {
- exitBarCodeMap.put(bar, bar);
- errorMap.put(bar, bar);
- }
- }
- }
- if (errorMap.size() > 0) {
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- errorList.add(
- 'BarCode鍙穂' +
- errorMap.values() +
- ']浜у搧绫诲瀷[' +
- product_Type +
- ']涓庣敤鎴风殑绫诲瀷[' +
- userPro_Type +
- ']涓嶇'
- );
- } else {
- ApexPages.addmessage(
- new ApexPages.message(
- ApexPages.severity.ERROR,
- 'BarCode鍙穂' +
- errorMap.values() +
- ']浜у搧绫诲瀷[' +
- product_Type +
- ']涓庣敤鎴风殑绫诲瀷[' +
- userPro_Type +
- ']涓嶇'
- )
- );
- }
- }
- }
- product2InStore = [
- SELECT
- Id,
- Name,
- Name__c,
- Intra_Trade_List_RMB__c,
- Asset_Model_No__c,
- OT_CODE__c,
- Product2_Jancode__c,
- Pro2_Dealer_ENG__c,
- Pro2_Dealer_Object__c,
- Product_Type__c
- FROM Product2__c
- WHERE
- Product2_Jancode__c IN :alljanCodeList
- AND Product_Type__c LIKE :userPro_Typestr
- ORDER BY SFDA_Expiration_Date__c DESC
- ];
- if (product2InStore.size() > 0) {
- Map<String, String> errorMap = new Map<String, String>();
- for (Product2__c produ : product2InStore) {
- for (String bar : barJancodeMap.keySet()) {
- if (
- barJancodeMap.get(bar).containsKey(produ.Product2_Jancode__c) &&
- !rightBar.containsKey(bar)
- ) {
- exitBarCodeMap.put(bar, bar);
- if (orderdetailMap.containsKey(produ.Id)) {
- consumableInventory.add(
- new ConsumableorderdetailsInfo(produ, barcodeinfoMap.get(bar))
- );
- rightBar.put(bar, bar);
- } else {
- consumableInventory.add(
- new ConsumableorderdetailsInfo(produ, barcodeinfoMap.get(bar))
- );
- rightBar.put(bar, bar);
- list<String> overOrderBARcodeCunList = new List<String>();
- if (notEqualBARcodeCunMap.containsKey(produ.Id)) {
- overOrderBARcodeCunList = notEqualBARcodeCunMap.get(produ.Id)
- .clone();
- overOrderBARcodeCunList.add(bar);
- notEqualBARcodeCunMap.put(produ.Id, overOrderBARcodeCunList);
- } else {
- overOrderBARcodeCunList.add(bar);
- notEqualBARcodeCunMap.put(produ.Id, overOrderBARcodeCunList);
- }
- }
- }
- }
- }
- }
- for (String bartxt : barCode01List) {
- if (!exitBarCodeMap.containsKey(bartxt)) {
- notInStorelist.add(bartxt);
- }
- }
- }
-
- //241閫氳繃妫�绱骇鍝佹槸鍚﹀瓨鍦�
- if (allotCodeList.size() > 0) {
- Map<String, String> exitBarCodeMap = new Map<String, String>();
- Map<String, String> errorMap = new Map<String, String>();
- List<Product2__c> product2InStore = [
- SELECT
- Id,
- Name,
- Name__c,
- Intra_Trade_List_RMB__c,
- Asset_Model_No__c,
- OT_CODE__c,
- Pro2_Dealer_Object__c,
- Pro2_Dealer_ENG__c
- FROM Product2__c
- WHERE
- OT_CODE__c IN :allotCodeList
- AND (NOT Product_Type__c LIKE :userPro_Typestr)
- ];
- if (product2InStore.size() > 0) {
- for (Product2__c produ : product2InStore) {
- for (String bar : barOtcodeMap.keySet()) {
- if (barOtcodeMap.get(bar).containsKey(produ.OT_CODE__c)) {
- exitBarCodeMap.put(bar, bar);
- errorMap.put(bar, bar);
- }
- }
- }
- }
- if (errorMap.size() > 0) {
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- errorList.add(
- 'BarCode鍙穂' +
- errorMap.values() +
- ']浜у搧绫诲瀷[' +
- product_Type +
- ']涓庣敤鎴穂' +
- userPro_Type +
- ']绫诲瀷涓嶇'
- );
- } else {
- ApexPages.addmessage(
- new ApexPages.message(
- ApexPages.severity.ERROR,
- 'BarCode鍙穂' +
- errorMap.values() +
- ']浜у搧绫诲瀷[' +
- product_Type +
- ']涓庣敤鎴穂' +
- userPro_Type +
- ']绫诲瀷涓嶇'
- )
- );
- }
- }
- product2InStore = [
- SELECT
- Id,
- Name,
- Name__c,
- Intra_Trade_List_RMB__c,
- Asset_Model_No__c,
- OT_CODE__c,
- Pro2_Dealer_Object__c,
- Pro2_Dealer_ENG__c
- FROM Product2__c
- WHERE
- OT_CODE__c IN :allotCodeList
- AND Product_Type__c LIKE :userPro_Typestr
- ];
-
- if (product2InStore.size() > 0) {
- for (Product2__c produ : product2InStore) {
- for (String bar : barOtcodeMap.keySet()) {
- Date expirationDate = null;
+ for(Integer i = 0; i < barCodeList.size(); i++){
+ Date expirationDate = null ;
String serialNoorLotNo = '';
String tracingCode = '';
String productDateStr = '';
- Date productionDate = null;
+ Date productionDate = null ;
String expirationDateStr = '';
- Integer oTcodeLength = produ.OT_CODE__c.length();
- if (bar.length() >= oTcodeLength + 11) {
- if (bar.substring(oTcodeLength + 3, oTcodeLength + 5) == '11') {
- try {
- productDateStr =
- '20' +
- bar.substring(oTcodeLength + 5, oTcodeLength + 7) +
- '-' +
- bar.substring(oTcodeLength + 7, oTcodeLength + 9) +
- '-01';
- productionDate = Date.valueOf(productDateStr);
- } catch (Exception e) {
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- errorList.add(
- '浜у搧BarCode(' +
- bar +
- ')鐨勭敓浜ф棩鏈�' +
- productDateStr +
- '閿欒锛�'
- );
- } else {
- ApexPages.addmessage(
- new ApexPages.message(
- ApexPages.severity.ERROR,
- '浜у搧BarCode(' +
- bar +
- ')鐨勭敓浜ф棩鏈�' +
- productDateStr +
- '閿欒锛�'
- )
- );
- }
- continue;
- }
- if (bar.length() >= oTcodeLength + 3 + 16) {
- //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode17' + bar.substring(oTcodeLength + 3 + 8,oTcodeLength + 3 + 10)));
- if (
- bar.substring(
- oTcodeLength + 3 + 8,
- oTcodeLength + 3 + 10
- ) == '17'
- ) {
- try {
- if (
- bar.substring(
- oTcodeLength + 3 + 14,
- oTcodeLength + 3 + 16
- ) == '00'
- ) {
- expirationDateStr =
- '20' +
- bar.substring(
- oTcodeLength + 3 + 10,
- oTcodeLength + 3 + 12
- ) +
- '-' +
- bar.substring(
- oTcodeLength + 3 + 12,
- oTcodeLength + 3 + 14
- ) +
- '-' +
- '01';
- expirationDate = Date.valueOf(expirationDateStr);
- expirationDate = expirationDate.addMonths(1)
- .toStartofMonth()
- .addDays(-1);
- } else {
- expirationDateStr =
- '20' +
- bar.substring(
- oTcodeLength + 3 + 10,
- oTcodeLength + 3 + 12
- ) +
- '-' +
- bar.substring(
- oTcodeLength + 3 + 12,
- oTcodeLength + 3 + 14
- ) +
- '-' +
- bar.substring(
- oTcodeLength + 3 + 14,
- oTcodeLength + 3 + 16
- );
- expirationDate = Date.valueOf(expirationDateStr);
- }
- } catch (Exception e) {
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- errorList.add(
- '浜у搧BarCode(' +
- bar +
- ')鐨勬粎鑿屾湁鍔规湡闄�' +
- expirationDateStr +
- '閿欒锛�'
- );
- } else {
- ApexPages.addmessage(
- new ApexPages.message(
- ApexPages.severity.ERROR,
- '浜у搧BarCode(' +
- bar +
- ')鐨勬粎鑿屾湁鍔规湡闄�' +
- expirationDateStr +
- '閿欒锛�'
- )
- );
- }
- continue;
+ if(barCodeList[i].substring(0,2) =='01'){
+ String janCodeMark = '';
+ //鐢熶骇鏃ユ湡
+ List<String> janCode = new List<String>();
+ if(barCodeList[i].length() < 16){
+ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + barCodeList[i] + ')鐨勪綅鏁颁笉瓒�16锛屼笉绗﹀悎瑕佹眰閿欒锛�'));
+ continue;
+ }else {
+ janCodeMark = barCodeList[i].substring(2,16);
+ try{
+ Decimal test = Decimal.valueOf(janCodeMark);
+ }catch(Exception e){
+ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + barCodeList[i] + ')鐨刯anCode閿欒锛�'));
+ continue;
}
- if (bar.length() >= oTcodeLength + 3 + 25) {
- if (
- bar.substring(
- oTcodeLength + 3 + 16,
- oTcodeLength + 3 + 18
- ) == '10' ||
- bar.substring(
- oTcodeLength + 3 + 16,
- oTcodeLength + 3 + 18
- ) == '21'
- ) {
- serialNoorLotNo = bar.substring(
- oTcodeLength + 3 + 18,
- bar.length() - 8
- );
- //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR, 'serialNoorLotNo' + serialNoorLotNo));
- }
+ }
+ if(barCodeList[i].length() >= 22){
+ if(barCodeList[i].substring(barCodeList[i].length() - 8,barCodeList[i].length()-5)!='250'){
+ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR, '浜у搧BarCode(' + barCodeList[i] + ')娌℃湁绠$悊缂栫爜锛�'));
+ continue;
}
- } else if (
- bar.substring(
- oTcodeLength + 3 + 8,
- oTcodeLength + 3 + 10
- ) == '10' ||
- bar.substring(
- oTcodeLength + 3 + 8,
- oTcodeLength + 3 + 10
- ) == '21'
- ) {
- serialNoorLotNo = bar.substring(
- oTcodeLength + 3 + 10,
- bar.length() - 8
- );
- //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR, 'serialNoorLotNo' + serialNoorLotNo));
- }
- }
- } else if (
- bar.substring(oTcodeLength + 3, oTcodeLength + 5) == '17'
- ) {
- try {
- if (
- bar.substring(oTcodeLength + 3 + 6, oTcodeLength + 3 + 8) ==
- '00'
- ) {
- expirationDateStr =
- '20' +
- bar.substring(
- oTcodeLength + 3 + 2,
- oTcodeLength + 3 + 4
- ) +
- '-' +
- bar.substring(
- oTcodeLength + 3 + 4,
- oTcodeLength + 3 + 6
- ) +
- '-01';
- expirationDate = Date.valueOf(expirationDateStr);
- expirationDate = expirationDate.addMonths(1)
- .toStartofMonth()
- .addDays(-1);
- } else {
- expirationDateStr =
- '20' +
- bar.substring(
- oTcodeLength + 3 + 2,
- oTcodeLength + 3 + 4
- ) +
- '-' +
- bar.substring(
- oTcodeLength + 3 + 4,
- oTcodeLength + 3 + 6
- ) +
- '-' +
- bar.substring(oTcodeLength + 3 + 6, oTcodeLength + 3 + 8);
- expirationDate = Date.valueOf(expirationDateStr);
- }
- } catch (Exception e) {
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- errorList.add(
- '浜у搧BarCode(' +
- bar +
- ')鐨勬粎鑿屾湁鍔规湡闄�' +
- expirationDateStr +
- '閿欒锛�'
- );
- } else {
- ApexPages.addmessage(
- new ApexPages.message(
- ApexPages.severity.ERROR,
- '浜у搧BarCode(' +
- bar +
- ')鐨勬粎鑿屾湁鍔规湡闄�' +
- expirationDateStr +
- '閿欒锛�'
- )
- );
- }
- continue;
- }
- if (bar.length() >= oTcodeLength + 20) {
- if (
- bar.substring(
- oTcodeLength + 3 + 8,
- oTcodeLength + 3 + 10
- ) == '10' ||
- bar.substring(
- oTcodeLength + 3 + 8,
- oTcodeLength + 3 + 10
- ) == '21'
- ) {
- serialNoorLotNo = bar.substring(
- oTcodeLength + 3 + 10,
- bar.length() - 8
- );
- }
- }
- } else if (bar.length() >= oTcodeLength + 12) {
- if (
- bar.substring(oTcodeLength + 3, oTcodeLength + 5) == '10' ||
- bar.substring(oTcodeLength + 3, oTcodeLength + 5) == '21'
- ) {
- serialNoorLotNo = bar.substring(
- oTcodeLength + 3 + 2,
- bar.length() - 8
- );
- }
- }
- }
- if (
- bar.length() >= oTcodeLength + 3 + 8 &&
- bar.substring(bar.length() - 8, bar.length() - 5) == '250'
- ) {
- if (bar.substring(bar.length() - 8, bar.length() - 5) == '250') {
- tracingCode = bar.substring(bar.length() - 5, bar.length());
- Matcher n = Pattern.compile('[0-9]').matcher(tracingCode);
- if (n.find()) {
- // gzw DB202305352696 鍏ュ簱绠$悊缂栫爜楠岃瘉绋嬪簭璋冩暣 start
- if (tracingCode.length() == 5) {
- String tr = tracingCode;
- String Ctr = tr.substring(tr.length() - 3, tr.length());
- String Btr = tr.substring(tr.length() - 4, tr.length() - 3);
- String Atr = tr.substring(tr.length() - 5, tr.length() - 4);
- if (
- Pattern.compile('[0-9]').matcher(Atr).find() ||
- Pattern.compile('[0-9]').matcher(Ctr).find()
- ) {
- String str = '绠$悊缂栫爜涓嶆纭紝璇蜂笌绠$悊鍛樼‘璁ゆ槸鍚﹂敊璇��';
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- errorList.add(
- '浜у搧BarCode(' +
- bar +
- ')绠$悊缂栫爜鏈夎锛岃妫�鏌ユ潯褰㈢爜鏁版嵁銆�'
- );
- } else {
- ApexPages.addmessage(
- new ApexPages.message(
- ApexPages.severity.ERROR,
- '浜у搧BarCode(' +
- bar +
- ')绠$悊缂栫爜鏈夎锛岃妫�鏌ユ潯褰㈢爜鏁版嵁銆�'
- )
- );
- }
- continue;
+ if( barCodeList[i].substring(16,18) =='11'){
+ try{
+ productDateStr = '20' + barCodeList[i].substring(18,20) + '-' + barCodeList[i].substring(20,22) + '-01' ;
+ productionDate = Date.valueOf(productDateStr);
+ }catch(Exception e){
+ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR, '浜у搧BarCode(' + barCodeList[i] + ')鐨勭敓浜ф棩鏈�' + productDateStr + '閿欒锛�'));
+ continue;
+ }
+ if(barCodeList[i].length() >=32){
+ if( barCodeList[i].substring(24,26) =='17'){
+ try{
+ if(barCodeList[i].substring(30,32)=='00'){
+ expirationDateStr = '20' + barCodeList[i].substring(26,28) + '-' + barCodeList[i].substring(28,30) + '-' + '01' ;
+ expirationDate = Date.valueOf(expirationDateStr);
+ expirationDate = expirationDate.addMonths(1).toStartofMonth().addDays(-1);
+ }else{
+ expirationDateStr = '20' + barCodeList[i].substring(26,28) + '-' + barCodeList[i].substring(28,30) + '-' +barCodeList[i].substring(30,32) ;
+ expirationDate = Date.valueOf(expirationDateStr);
+ }
+ }catch(Exception e){
+ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + barCodeList[i] + ')鐨勬粎鑿屾湁鍔规湡闄�' + expirationDateStr + '閿欒锛�'));
+ continue;
+ }
+ if(barCodeList[i].length() >= 42){
+ if(barCodeList[i].substring(32,34) =='10' || barCodeList[i].substring(32,34) =='21'){
+ serialNoorLotNo = barCodeList[i].substring(34,barCodeList[i].length() - 8) ;
+ }
+ }
+ }else if(barCodeList[i].substring(24,26) =='10' || barCodeList[i].substring(24,26) =='21'){
+ serialNoorLotNo = barCodeList[i].substring(26,barCodeList[i].length() - 8) ;
+ }
+ }
+ }else if(barCodeList[i].substring(16,18) =='17'){
+ try{
+ if(barCodeList[i].substring(22,24)=='00'){
+ expirationDateStr = '20' + barCodeList[i].substring(18,20) + '-' + barCodeList[i].substring(20,22) + '-01';
+ //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧expirationDateStr' + expirationDateStr));
+ expirationDate = Date.valueOf(expirationDateStr);
+ expirationDate = expirationDate.addMonths(1).toStartofMonth().addDays(-1);
+ }else{
+ expirationDateStr = '20' + barCodeList[i].substring(18,20) + '-' + barCodeList[i].substring(20,22) + '-' +barCodeList[i].substring(22,24);
+ expirationDate = Date.valueOf(expirationDateStr);
+ }
+ }catch(Exception e){
+ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + barCodeList[i] + ')鐨勬粎鑿屾湁鍔规湡闄�' + expirationDateStr + '閿欒锛�'));
+ continue;
+ }
+ if(barCodeList[i].length() >= 34){
+ if(barCodeList[i].substring(24,26) =='10' || barCodeList[i].substring(24,26) =='21'){
+ serialNoorLotNo = barCodeList[i].substring(26,barCodeList[i].length() - 8) ;
+ }
+ }
+
+ }else if(barCodeList[i].length() >= 26){
+ if(barCodeList[i].substring(16,18) =='10' || barCodeList[i].substring(16,18) =='21'){
+ serialNoorLotNo = barCodeList[i].substring(18,barCodeList[i].length() - 8) ;
+ }
}
- }
- // String str = '绠$悊缂栫爜涓嶆纭紝璇蜂笌绠$悊鍛樼‘璁ゆ槸鍚﹂敊璇��';
- // ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + bar + ')绠$悊缂栫爜涓湁鏁板瓧锛岃涓庣鐞嗗憳纭鏄惁閿欒锛�'));
- // continue;
- // gzw DB202305352696 鍏ュ簱绠$悊缂栫爜楠岃瘉绋嬪簭璋冩暣 end
}
- } else {
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- errorList.add('浜у搧BarCode(' + bar + ')鐨則racingCode閿欒锛�');
- } else {
- ApexPages.addmessage(
- new ApexPages.message(
- ApexPages.severity.ERROR,
- '浜у搧BarCode(' + bar + ')鐨則racingCode閿欒锛�'
- )
- );
+ if(barCodeList[i].length() >= 24 && barCodeList[i].substring(barCodeList[i].length() - 8,barCodeList[i].length()-5)=='250'){
+ if(barCodeList[i].substring(barCodeList[i].length() - 8,barCodeList[i].length()-5)=='250'){
+ tracingCode = barCodeList[i].substring(barCodeList[i].length() - 5,barCodeList[i].length());
+ Matcher n = Pattern.compile('[0-9]').matcher(tracingCode);
+ if(n.find()){
+ String str = '绠$悊缂栫爜涓嶆纭紝璇蜂笌绠$悊鍛樼‘璁ゆ槸鍚﹂敊璇��';
+ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + barCodeList[i] + ')绠$悊缂栫爜涓湁鏁板瓧锛岃涓庣鐞嗗憳纭鏄惁閿欒锛�'));
+ continue;
+ }
+ }else{
+ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + barCodeList[i] + ')鐨則racingCode閿欒锛�'));
+ continue;
+ }
}
+ List<String> barcodedetList = new List<String>();
+ barcodedetList.add(barCodeList[i]);
+ barcodedetList.add(String.valueOf(expirationDate));
+ barcodedetList.add(serialNoorLotNo);
+ barcodedetList.add(tracingCode);
+ Integer jan1 = Integer.valueOf(janCodeMark.substring(0, 1));
+ Integer jan2 = Integer.valueOf(janCodeMark.substring(1, 2));
+ Integer jan3 = Integer.valueOf(janCodeMark.substring(2, 3));
+ Integer jan4 = Integer.valueOf(janCodeMark.substring(3, 4));
+ Integer jan5 = Integer.valueOf(janCodeMark.substring(4, 5));
+ Integer jan6 = Integer.valueOf(janCodeMark.substring(5, 6));
+ Integer jan7 = Integer.valueOf(janCodeMark.substring(6, 7));
+ Integer jan8 = Integer.valueOf(janCodeMark.substring(7, 8));
+ Integer jan9 = Integer.valueOf(janCodeMark.substring(8, 9));
+ Integer jan10 = Integer.valueOf(janCodeMark.substring(9, 10));
+ Integer jan11 = Integer.valueOf(janCodeMark.substring(10, 11));
+ Integer jan12 = Integer.valueOf(janCodeMark.substring(11, 12));
+ Integer jan13 = Integer.valueOf(janCodeMark.substring(12, 13));
+ Integer count12 = jan2 + jan3*3 + jan4 + jan5*3 + jan6 + jan7*3 + jan8 + jan9*3 + jan10 + jan11*3 +jan12 + jan13*3;
+
+ Integer count13 = jan1*3 + jan2 + jan3*3 + jan4 + jan5*3 + jan6 + jan7*3 + jan8 + jan9*3 + jan10 + jan11*3 +jan12 + jan13*3;
+ String frost12 = (String.valueOf(count12)).substring((String.valueOf(count12)).length()-1);
+ String frost13 = (String.valueOf(count13)).substring((String.valueOf(count13)).length()-1);
+ //鍑忓幓12浣嶄釜浣�4
+ frost12 = (String.valueOf(10 - Integer.valueOf(frost12))).substring((String.valueOf(10 - Integer.valueOf(frost12))).length()-1);
+ frost13 = (String.valueOf(10 - Integer.valueOf(frost13))).substring((String.valueOf(10 - Integer.valueOf(frost13))).length()-1);
+
+ janCode.add(janCodeMark.substring(1, 13) + frost12);
+ janCode.add(janCodeMark.substring(0, 13) + frost12);
+ janCode.add(janCodeMark.substring(1, 13) + frost13);
+ janCode.add(janCodeMark.substring(0, 13) + frost13);
+ alljanCodeList.addAll(janCode);
+ Map<String,String> janCodeMap = new Map<String,String>();
+ janCodeMap.put(janCodeMark.substring(1, 13) + frost12,barCodeList[i]);
+ janCodeMap.put(janCodeMark.substring(0, 13) + frost12,barCodeList[i]);
+ janCodeMap.put(janCodeMark.substring(1, 13) + frost13,barCodeList[i]);
+ janCodeMap.put(janCodeMark.substring(0, 13) + frost13,barCodeList[i]);
+ barJancodeMap.put(barCodeList[i], janCodeMap);
+ barcodeinfoMap.put(barCodeList[i], barcodedetList);
+ barCode01List.add(barCodeList[i]);
+ }else if(barCodeList[i].substring(0,3) =='241'){
+ if(barCodeList[i].length() > 8 && barCodeList[i].substring(barCodeList[i].length() - 8,barCodeList[i].length()-5)!='250'){
+ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR, '浜у搧BarCode(' + barCodeList[i] + ')娌℃湁绠$悊缂栫爜锛�'));
+ continue;
+ }
+ List<String> otCodeList = new List<String>();
+ Map<String,String> otCodeMap = new Map<String,String>();
+ if(barCodeList[i].length() < 7){
+ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + barCodeList[i] + ')鐨勪綅鏁颁笉瓒�16锛屼笉绗﹀悎瑕佹眰閿欒锛�'));
+ continue;
+ }else if(barCodeList[i].length() == 11){
+ String otCode4 = barCodeList[i].substring(3,7);
+ String otCode5 = barCodeList[i].substring(3,8);
+ String otCode6 = barCodeList[i].substring(3,9);
+ String otCode7 = barCodeList[i].substring(3,10);
+ String otCode8 = barCodeList[i].substring(3,11);
+ otCodeList.add(otCode4);
+ otCodeList.add(otCode5);
+ otCodeList.add(otCode6);
+ otCodeList.add(otCode7);
+ otCodeList.add(otCode8);
+ otCodeMap.put(otCode4,barCodeList[i]);
+ otCodeMap.put(otCode5,barCodeList[i]);
+ otCodeMap.put(otCode6,barCodeList[i]);
+ otCodeMap.put(otCode7,barCodeList[i]);
+ otCodeMap.put(otCode8,barCodeList[i]);
+ }else if(barCodeList[i].length() >= 12){
+ String otCode4 = barCodeList[i].substring(3,7);
+ String otCode5 = barCodeList[i].substring(3,8);
+ String otCode6 = barCodeList[i].substring(3,9);
+ String otCode7 = barCodeList[i].substring(3,10);
+ String otCode8 = barCodeList[i].substring(3,11);
+ String otCode9 = barCodeList[i].substring(3,12);
+ otCodeList.add(otCode4);
+ otCodeList.add(otCode5);
+ otCodeList.add(otCode6);
+ otCodeList.add(otCode7);
+ otCodeList.add(otCode8);
+ otCodeList.add(otCode9);
+ otCodeMap.put(otCode4,barCodeList[i]);
+ otCodeMap.put(otCode5,barCodeList[i]);
+ otCodeMap.put(otCode6,barCodeList[i]);
+ otCodeMap.put(otCode7,barCodeList[i]);
+ otCodeMap.put(otCode8,barCodeList[i]);
+ otCodeMap.put(otCode9,barCodeList[i]);
+ }
+ allotCodeList.addAll(otCodeList);
+ barOtcodeMap.put(barCodeList[i], otCodeMap);
+ barCode241List.add(barCodeList[i]);
+ }else{
+ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + barCodeList[i] + ')娌℃湁janCode鎴朞Tcode锛屼笉绗﹀悎瑕佹眰锛�'));
continue;
- }
}
- List<String> barcodedetList = new List<String>();
- barcodedetList.add(bar);
- barcodedetList.add(String.valueOf(expirationDate));
- barcodedetList.add(serialNoorLotNo);
- barcodedetList.add(tracingCode);
- if (barOtcodeMap.get(bar).containsKey(produ.OT_CODE__c)) {
- exitBarCodeMap.put(bar, bar);
+ }
+ //01閫氳繃妫�绱骇鍝佹槸鍚﹀瓨鍦�
+ Map<String,String> rightBar = new Map<String,String>();
+ if(alljanCodeList.size() > 0){
+ Map<String,String> exitBarCodeMap = new Map<String,String>();
+ List<Product2__c> product2InStore = [SELECT Id, Name,Name__c,Intra_Trade_List_RMB__c,Asset_Model_No__c,OT_CODE__c,Product2_Jancode__c,
+ Pro2_Dealer_ENG__c,Pro2_Dealer_Object__c,
+ Product_Type__c
+ FROM Product2__c
+ WHERE Product2_Jancode__c in :alljanCodeList
+ AND (not Product_Type__c like :userPro_Typestr)
+ order by SFDA_Expiration_Date__c desc ] ;
+ if(product2InStore.size() > 0){
+ Map<String,String> errorMap = new Map<String,String>();
+ for(Product2__c produ: product2InStore){
+ for(String bar: barJancodeMap.keySet() ){
+ if(barJancodeMap.get(bar).containsKey(produ.Product2_Jancode__c) && !rightBar.containsKey(bar)){
+ exitBarCodeMap.put(bar,bar);
+ errorMap.put(bar, bar);
+ }
- if (orderdetailMap.containsKey(produ.Id)) {
- consumableInventory.add(
- new ConsumableorderdetailsInfo(produ, barcodedetList)
- );
- } else {
- consumableInventory.add(
- new ConsumableorderdetailsInfo(produ, barcodedetList)
- );
- list<String> overOrderBARcodeCunList = new List<String>();
- if (notEqualBARcodeCunMap.containsKey(produ.Id)) {
- overOrderBARcodeCunList = notEqualBARcodeCunMap.get(produ.Id)
- .clone();
- overOrderBARcodeCunList.add(bar);
- notEqualBARcodeCunMap.put(produ.Id, overOrderBARcodeCunList);
- } else {
- overOrderBARcodeCunList.add(bar);
- notEqualBARcodeCunMap.put(produ.Id, overOrderBARcodeCunList);
+ }
}
- }
+ if(errorMap.size() > 0){
+ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'BarCode鍙穂'+ errorMap.values() +']浜у搧绫诲瀷['+product_Type+']涓庣敤鎴风殑绫诲瀷['+userPro_Type+']涓嶇'));
+ }
+ }
+ product2InStore = [SELECT Id, Name,Name__c,Intra_Trade_List_RMB__c,Asset_Model_No__c,OT_CODE__c,Product2_Jancode__c,
+ Pro2_Dealer_ENG__c,Pro2_Dealer_Object__c,
+ Product_Type__c
+ FROM Product2__c
+ WHERE Product2_Jancode__c in :alljanCodeList
+ AND Product_Type__c like :userPro_Typestr
+ order by SFDA_Expiration_Date__c desc ] ;
+ if(product2InStore.size() > 0){
+ Map<String,String> errorMap = new Map<String,String>();
+ for(Product2__c produ: product2InStore){
+ for(String bar: barJancodeMap.keySet() ){
+ if(barJancodeMap.get(bar).containsKey(produ.Product2_Jancode__c) && !rightBar.containsKey(bar)){
+ exitBarCodeMap.put(bar,bar);
+ if(orderdetailMap.containsKey(produ.Id)){
+ consumableInventory.add(new ConsumableorderdetailsInfo(produ,barcodeinfoMap.get(bar)));
+ rightBar.put(bar, bar);
+ }else{
+ consumableInventory.add(new ConsumableorderdetailsInfo(produ,barcodeinfoMap.get(bar)));
+ rightBar.put(bar, bar);
+ list<String> overOrderBARcodeCunList = new list<String>();
+ if(notEqualBARcodeCunMap.containsKey(produ.Id)){
+ overOrderBARcodeCunList = notEqualBARcodeCunMap.get(produ.Id).clone();
+ overOrderBARcodeCunList.add(bar);
+ notEqualBARcodeCunMap.put(produ.Id,overOrderBARcodeCunList);
+ }else{
+ overOrderBARcodeCunList.add(bar);
+ notEqualBARcodeCunMap.put(produ.Id,overOrderBARcodeCunList);
+ }
+ }
+
+ }
+ }
+ }
}
- }
- }
- }
-
- for (String bartxt : barCode241List) {
- if (!exitBarCodeMap.containsKey(bartxt)) {
- if (!errorMap.containsKey(bartxt)) {
- notInStorelist.add(bartxt);
- }
- }
- }
- }
- //鍒ゆ柇浜у搧鏄惁涓�鑷�
- if (notEqualBARcodeCunMap.size() > 0) {
- for (String widget : notEqualBARcodeCunMap.keySet()) {
- if (notEqualBARcodeCunMap.get(widget).size() > 0) {
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- warningList.add('浠ヤ笅barcode浜у搧涓庤璐т骇鍝佷笉涓�鑷淬��');
- } else {
- ApexPages.addmessage(
- new ApexPages.message(
- ApexPages.severity.INFO,
- '浠ヤ笅barcode浜у搧涓庤璐т骇鍝佷笉涓�鑷淬��'
- )
- );
- }
- for (
- String barcodeListTTT : (List<String>) notEqualBARcodeCunMap.get(
- widget
- )
- ) {
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- warningList.add(barcodeListTTT);
- } else {
- ApexPages.addmessage(
- new ApexPages.message(ApexPages.severity.INFO, barcodeListTTT)
- );
+ for(String bartxt :barCode01List){
+ if(!exitBarCodeMap.containsKey(bartxt)){
+ notInStorelist.add(bartxt);
+ }
}
- }
+
}
- }
- }
- }
- public String ConfimResult() {
- list<String> overOrderproList = new List<String>();
- list<String> overOrderBARcodeCunList = new List<String>();
- list<String> overOrderBARcodeCunListTest = new List<String>();
- //overOrderBARcodeCunMap.clear();
- for (ConsumableorderdetailsInfo ass : ConsumableorderdetailsRecords) {
- if (
- orderWantArriveCunMap.get(ass.esd.Asset_Model_No__c) +
- orderProductArrivedCunMap.get(ass.esd.Asset_Model_No__c) >
- orderProductCunMap.get(ass.esd.Asset_Model_No__c) - 1
- ) {
- // 鑾峰彇瓒呰繃瀹氳揣鏁伴噺鐨勬秷鑰楀搧淇℃伅
- overOrderBARcodeCunList = new List<String>();
- overOrderBARcodeCunList = overOrderBARcodeCunMap.get(
- ass.esd.Asset_Model_No__c
- )
- .clone();
- overOrderBARcodeCunList.add(ass.esd.Bar_Code__c);
- overOrderBARcodeCunMap.put(
- ass.esd.Asset_Model_No__c,
- overOrderBARcodeCunList
- );
- overOrderCunMap.put(
- ass.esd.Asset_Model_No__c,
- overOrderCunMap.get(ass.esd.Asset_Model_No__c) + 1
- );
- cancellationProList.add(ass.esd.Asset_Model_No__c);
- } else if (
- orderWantArriveCunMap.get(ass.esd.Asset_Model_No__c) +
- orderProductArrivedCunMap.get(ass.esd.Asset_Model_No__c) ==
- orderProductCunMap.get(ass.esd.Asset_Model_No__c) - 1
- ) {
- consumableorderdetailsRecordsUse.add(ass);
- cancellationProList.add(ass.esd.Asset_Model_No__c);
- } else {
- consumableorderdetailsRecordsUse.add(ass);
- }
- orderWantArriveCunMap.put(
- ass.esd.Asset_Model_No__c,
- orderWantArriveCunMap.get(ass.esd.Asset_Model_No__c) + 1
- );
+ //241閫氳繃妫�绱骇鍝佹槸鍚﹀瓨鍦�
+ if(allotCodeList.size() > 0){
+ Map<String,String> exitBarCodeMap = new Map<String,String>();
+ Map<String,String> errorMap = new Map<String,String>();
+ List<Product2__c> product2InStore = [SELECT Id, Name,Name__c,Intra_Trade_List_RMB__c,Asset_Model_No__c,OT_CODE__c,
+ Pro2_Dealer_Object__c,Pro2_Dealer_ENG__c
+ FROM Product2__c
+ WHERE OT_CODE__c in :allotCodeList
+ AND (not Product_Type__c like :userPro_Typestr)] ;
+ if(product2InStore.size() > 0){
+ for(Product2__c produ: product2InStore){
+ for(String bar: barOtcodeMap.keySet() ){
+ if(barOtcodeMap.get(bar).containsKey(produ.OT_CODE__c)){
+ exitBarCodeMap.put(bar,bar);
+ errorMap.put(bar, bar);
+ }
+ }
+ }
+ }
+ if(errorMap.size() > 0){
+ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'BarCode鍙穂'+ errorMap.values() +']浜у搧绫诲瀷['+product_Type+']涓庣敤鎴穂'+userPro_Type+']绫诲瀷涓嶇'));
+ }
+ product2InStore = [SELECT Id, Name,Name__c,Intra_Trade_List_RMB__c,Asset_Model_No__c,OT_CODE__c,
+ Pro2_Dealer_Object__c,Pro2_Dealer_ENG__c
+ FROM Product2__c
+ WHERE OT_CODE__c in :allotCodeList
+ AND Product_Type__c like :userPro_Typestr] ;
+
+ if(product2InStore.size() > 0){
+ for(Product2__c produ: product2InStore){
+ for(String bar: barOtcodeMap.keySet() ){
+ Date expirationDate = null ;
+ String serialNoorLotNo = '';
+ String tracingCode = '';
+ String productDateStr = '';
+ Date productionDate = null ;
+ String expirationDateStr = '';
+ Integer oTcodeLength = produ.OT_CODE__c.length();
+
+ if(bar.length() >= oTcodeLength + 11){
+ if( bar.substring(oTcodeLength + 3,oTcodeLength + 5) =='11'){
+ try{
+ productDateStr = '20' + bar.substring(oTcodeLength + 5,oTcodeLength + 7) + '-' + bar.substring(oTcodeLength + 7,oTcodeLength + 9) + '-01' ;
+ productionDate = Date.valueOf(productDateStr);
+ }catch(Exception e){
+ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR, '浜у搧BarCode(' + bar + ')鐨勭敓浜ф棩鏈�' + productDateStr + '閿欒锛�'));
+ continue;
+ }
+ if(bar.length() >=oTcodeLength + 3 + 16){
+ //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode17' + bar.substring(oTcodeLength + 3 + 8,oTcodeLength + 3 + 10)));
+ if( bar.substring(oTcodeLength + 3 + 8,oTcodeLength + 3 + 10) =='17'){
+ try{
+ if(bar.substring(oTcodeLength + 3 + 14,oTcodeLength + 3 + 16)=='00'){
+ expirationDateStr = '20' + bar.substring(oTcodeLength + 3 + 10,oTcodeLength + 3 + 12) + '-' + bar.substring(oTcodeLength + 3 + 12,oTcodeLength + 3 + 14) + '-' + '01' ;
+ expirationDate = Date.valueOf(expirationDateStr);
+ expirationDate = expirationDate.addMonths(1).toStartofMonth().addDays(-1);
+ }else{
+ expirationDateStr = '20' + bar.substring(oTcodeLength + 3 + 10,oTcodeLength + 3 + 12) + '-' + bar.substring(oTcodeLength + 3 + 12,oTcodeLength + 3 + 14) + '-' +bar.substring(oTcodeLength + 3 + 14,oTcodeLength + 3 + 16) ;
+ expirationDate = Date.valueOf(expirationDateStr);
+ }
+ }catch(Exception e){
+ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + bar + ')鐨勬粎鑿屾湁鍔规湡闄�' + expirationDateStr + '閿欒锛�'));
+ continue;
+ }
+ if(bar.length() >= oTcodeLength + 3 + 25){
+ if(bar.substring(oTcodeLength + 3 + 16,oTcodeLength + 3 + 18) =='10' || bar.substring(oTcodeLength + 3 + 16,oTcodeLength + 3 + 18) =='21'){
+ serialNoorLotNo = bar.substring(oTcodeLength + 3 + 18,bar.length() - 8) ;
+ //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR, 'serialNoorLotNo' + serialNoorLotNo));
+ }
+ }
+ }else if(bar.substring(oTcodeLength + 3 + 8,oTcodeLength + 3 + 10) =='10' || bar.substring(oTcodeLength + 3 + 8,oTcodeLength + 3 + 10) =='21'){
+ serialNoorLotNo = bar.substring(oTcodeLength + 3 + 10,bar.length() - 8) ;
+ //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR, 'serialNoorLotNo' + serialNoorLotNo));
+ }
+ }
+ }else if(bar.substring(oTcodeLength + 3,oTcodeLength + 5) =='17'){
+ try{
+ if(bar.substring(oTcodeLength + 3 + 6,oTcodeLength + 3 + 8)=='00'){
+ expirationDateStr = '20' + bar.substring(oTcodeLength + 3 + 2,oTcodeLength + 3 + 4) + '-' + bar.substring(oTcodeLength + 3 + 4,oTcodeLength + 3 + 6) + '-01';
+ expirationDate = Date.valueOf(expirationDateStr);
+ expirationDate = expirationDate.addMonths(1).toStartofMonth().addDays(-1);
+ }else{
+ expirationDateStr = '20' + bar.substring(oTcodeLength + 3 + 2,oTcodeLength + 3 + 4) + '-' + bar.substring(oTcodeLength + 3 + 4,oTcodeLength + 3 + 6) + '-' +bar.substring(oTcodeLength + 3 + 6,oTcodeLength + 3 + 8);
+ expirationDate = Date.valueOf(expirationDateStr);
+ }
+ }catch(Exception e){
+ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + bar + ')鐨勬粎鑿屾湁鍔规湡闄�' + expirationDateStr + '閿欒锛�'));
+ continue;
+ }
+ if(bar.length() >=oTcodeLength + 20){
+ if(bar.substring(oTcodeLength + 3 + 8,oTcodeLength + 3 + 10) =='10' || bar.substring(oTcodeLength + 3 + 8,oTcodeLength + 3 + 10) =='21'){
+ serialNoorLotNo = bar.substring(oTcodeLength + 3 + 10,bar.length() - 8) ;
+ }
+ }
+
+ }else if(bar.length() >= oTcodeLength + 12){
+ if(bar.substring(oTcodeLength + 3,oTcodeLength + 5) =='10' || bar.substring(oTcodeLength + 3,oTcodeLength + 5) =='21'){
+ serialNoorLotNo = bar.substring(oTcodeLength + 3 + 2,bar.length() - 8) ;
+ }
+ }
+ }
+ if(bar.length() >= oTcodeLength + 3 + 8 && bar.substring(bar.length() - 8,bar.length()-5)=='250'){
+ if(bar.substring(bar.length() - 8,bar.length()-5)=='250'){
+ tracingCode = bar.substring(bar.length() - 5,bar.length());
+ Matcher n = Pattern.compile('[0-9]').matcher(tracingCode);
+ if(n.find()){
+ String str = '绠$悊缂栫爜涓嶆纭紝璇蜂笌绠$悊鍛樼‘璁ゆ槸鍚﹂敊璇��';
+ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + bar + ')绠$悊缂栫爜涓湁鏁板瓧锛岃涓庣鐞嗗憳纭鏄惁閿欒锛�'));
+ continue;
+ }
+ }else{
+ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'浜у搧BarCode(' + bar + ')鐨則racingCode閿欒锛�'));
+ continue;
+ }
+ }
+ List<String> barcodedetList = new List<String>();
+ barcodedetList.add(bar);
+ barcodedetList.add(String.valueOf(expirationDate));
+ barcodedetList.add(serialNoorLotNo);
+ barcodedetList.add(tracingCode);
+ if(barOtcodeMap.get(bar).containsKey(produ.OT_CODE__c)){
+ exitBarCodeMap.put(bar,bar);
+
+ if(orderdetailMap.containsKey(produ.Id)){
+ consumableInventory.add(new ConsumableorderdetailsInfo(produ,barcodedetList));
+ }else{
+ consumableInventory.add(new ConsumableorderdetailsInfo(produ,barcodedetList));
+ list<String> overOrderBARcodeCunList = new list<String>();
+ if(notEqualBARcodeCunMap.containsKey(produ.Id)){
+ overOrderBARcodeCunList = notEqualBARcodeCunMap.get(produ.Id).clone();
+ overOrderBARcodeCunList.add(bar);
+ notEqualBARcodeCunMap.put(produ.Id,overOrderBARcodeCunList);
+ }else{
+ overOrderBARcodeCunList.add(bar);
+ notEqualBARcodeCunMap.put(produ.Id,overOrderBARcodeCunList);
+ }
+ }
+
+ }
+ }
+ }
+ }
+
+ for(String bartxt :barCode241List){
+ if(!exitBarCodeMap.containsKey(bartxt)){
+ if(!errorMap.containsKey(bartxt)){
+ notInStorelist.add(bartxt);
+ }
+ }
+ }
+ }
+ //鍒ゆ柇浜у搧鏄惁涓�鑷�
+ if(notEqualBARcodeCunMap.size() > 0){
+ for(String widget : notEqualBARcodeCunMap.keySet()) {
+ if(notEqualBARcodeCunMap.get(widget).size() >0){
+ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.INFO, '浠ヤ笅barcode浜у搧涓庤璐т骇鍝佷笉涓�鑷淬��'));
+ for(String barcodeListTTT : (List<String>)notEqualBARcodeCunMap.get(widget)) {
+ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.INFO, barcodeListTTT));
+ }
+ }
+ }
+ }
}
- for (ConsumableorderdetailsInfo ass : consumableInventory) {
- if (!orderWantArriveCunMap.containsKey(ass.Prod.Asset_Model_No__c)) {
- consumableInventoryUse.add(ass);
- continue;
- }
- if (
- orderWantArriveCunMap.get(ass.Prod.Asset_Model_No__c) +
- orderProductArrivedCunMap.get(ass.Prod.Asset_Model_No__c) >
- orderProductCunMap.get(ass.Prod.Asset_Model_No__c) - 1
- ) {
- //鍙栧緱鍘熸湁list
- overOrderBARcodeCunList = new List<String>();
- overOrderBARcodeCunList = overOrderBARcodeCunMap.get(
- ass.Prod.Asset_Model_No__c
- )
- .clone();
- //鏇存柊list
- overOrderBARcodeCunList.add(ass.barCodeNo);
- //鏇存柊map
- overOrderBARcodeCunMap.put(
- ass.Prod.Asset_Model_No__c,
- overOrderBARcodeCunList
- );
- overOrderCunMap.put(
- ass.Prod.Asset_Model_No__c,
- overOrderCunMap.get(ass.Prod.Asset_Model_No__c) + 1
- );
- cancellationProList.add(ass.Prod.Asset_Model_No__c);
- } else if (
- orderWantArriveCunMap.get(ass.Prod.Asset_Model_No__c) +
- orderProductArrivedCunMap.get(ass.Prod.Asset_Model_No__c) ==
- orderProductCunMap.get(ass.Prod.Asset_Model_No__c) - 1
- ) {
- consumableInventoryUse.add(ass);
- cancellationProList.add(ass.Prod.Asset_Model_No__c);
- } else {
- consumableInventoryUse.add(ass);
- }
- orderWantArriveCunMap.put(
- ass.Prod.Asset_Model_No__c,
- orderWantArriveCunMap.get(ass.Prod.Asset_Model_No__c) + 1
- );
+
+ public String ConfimResult() {
+ list<String> overOrderproList = new list<String>();
+ list<String> overOrderBARcodeCunList = new list<String>();
+ list<String> overOrderBARcodeCunListTest = new list<String>();
+ //overOrderBARcodeCunMap.clear();
+ for (ConsumableorderdetailsInfo ass : ConsumableorderdetailsRecords) {
+ if(orderWantArriveCunMap.get(ass.esd.Asset_Model_No__c) + orderProductArrivedCunMap.get(ass.esd.Asset_Model_No__c) > orderProductCunMap.get(ass.esd.Asset_Model_No__c)-1){
+ // 鑾峰彇瓒呰繃瀹氳揣鏁伴噺鐨勬秷鑰楀搧淇℃伅
+ overOrderBARcodeCunList = new list<String>();
+ overOrderBARcodeCunList = overOrderBARcodeCunMap.get(ass.esd.Asset_Model_No__c).clone();
+ overOrderBARcodeCunList.add(ass.esd.Bar_Code__c);
+ overOrderBARcodeCunMap.put(ass.esd.Asset_Model_No__c,overOrderBARcodeCunList);
+ overOrderCunMap.put(ass.esd.Asset_Model_No__c,overOrderCunMap.get(ass.esd.Asset_Model_No__c)+1);
+ cancellationProList.add(ass.esd.Asset_Model_No__c);
+ }else if(orderWantArriveCunMap.get(ass.esd.Asset_Model_No__c) + orderProductArrivedCunMap.get(ass.esd.Asset_Model_No__c) == orderProductCunMap.get(ass.esd.Asset_Model_No__c)-1){
+ consumableorderdetailsRecordsUse.add(ass);
+ cancellationProList.add(ass.esd.Asset_Model_No__c);
+ }else{
+ consumableorderdetailsRecordsUse.add(ass);
+ }
+ orderWantArriveCunMap.put(ass.esd.Asset_Model_No__c,orderWantArriveCunMap.get(ass.esd.Asset_Model_No__c)+1);
+ }
+ for(ConsumableorderdetailsInfo ass : consumableInventory){
+ if (!orderWantArriveCunMap.containsKey(ass.Prod.Asset_Model_No__c)) {
+ consumableInventoryUse.add(ass);
+ continue;
+ }
+ if(orderWantArriveCunMap.get(ass.Prod.Asset_Model_No__c) + orderProductArrivedCunMap.get(ass.Prod.Asset_Model_No__c) > orderProductCunMap.get(ass.Prod.Asset_Model_No__c)-1){
+
+ //鍙栧緱鍘熸湁list
+ overOrderBARcodeCunList = new list<String>();
+ overOrderBARcodeCunList = overOrderBARcodeCunMap.get(ass.Prod.Asset_Model_No__c).clone();
+ //鏇存柊list
+ overOrderBARcodeCunList.add(ass.barCodeNo);
+ //鏇存柊map
+ overOrderBARcodeCunMap.put(ass.Prod.Asset_Model_No__c,overOrderBARcodeCunList);
+ overOrderCunMap.put(ass.Prod.Asset_Model_No__c,overOrderCunMap.get(ass.Prod.Asset_Model_No__c)+1);
+ cancellationProList.add(ass.Prod.Asset_Model_No__c);
+ }else if(orderWantArriveCunMap.get(ass.Prod.Asset_Model_No__c) + orderProductArrivedCunMap.get(ass.Prod.Asset_Model_No__c) == orderProductCunMap.get(ass.Prod.Asset_Model_No__c)-1){
+
+ consumableInventoryUse.add(ass);
+ cancellationProList.add(ass.Prod.Asset_Model_No__c);
+ }else{
+ consumableInventoryUse.add(ass);
+ }
+ orderWantArriveCunMap.put(ass.Prod.Asset_Model_No__c,orderWantArriveCunMap.get(ass.Prod.Asset_Model_No__c)+1);
+ }
+ for (Integer i = 0; i < productList.size(); i++) {
+ if(overOrderBARcodeCunMap.get(productList[i]).size() > 0){
+ // 鑾峰彇瓒呰繃瀹氳揣鏁伴噺鐨勬秷鑰楀搧淇℃伅
+ overOrderproList.add(productList[i]);
+ }
+ }
+ if(overOrderproList.size() > 0){
+ return '浜у搧' + overOrderproList + '鏈鍒拌揣鏁伴噺鍜屽凡鍒拌揣鏁伴噺宸茬粡瓒呰繃璁㈣揣鏁伴噺!';
+ }else{
+ return '';
+ }
+
}
- for (Integer i = 0; i < productList.size(); i++) {
- if (overOrderBARcodeCunMap.get(productList[i]).size() > 0) {
- // 鑾峰彇瓒呰繃瀹氳揣鏁伴噺鐨勬秷鑰楀搧淇℃伅
- overOrderproList.add(productList[i]);
- }
- }
- if (overOrderproList.size() > 0) {
- return '浜у搧' +
- overOrderproList +
- '鏈鍒拌揣鏁伴噺鍜屽凡鍒拌揣鏁伴噺宸茬粡瓒呰繃璁㈣揣鏁伴噺!';
- } else {
- return '';
- }
- }
public void confimResultWithoutOrder() {
/*list<String> overOrderproList = new list<String>();
@@ -4636,9 +2493,9 @@
}
}*/
- //瑕佸埌璐т骇鍝佹暟閲�
- for (ConsumableorderdetailsInfo ass : ConsumableorderdetailsRecords) {
- /*if(orderWantArriveCunMap.get(ass.esd.Consumable_order_minor__c + ass.esd.Asset_Model_No__c) + orderProductArrivedCunMap.get(ass.esd.Consumable_order_minor__c + ass.esd.Asset_Model_No__c) > orderProductCunMap.get(ass.esd.Consumable_order_minor__c + ass.esd.Asset_Model_No__c)-1){
+ //瑕佸埌璐т骇鍝佹暟閲�
+ for (ConsumableorderdetailsInfo ass : ConsumableorderdetailsRecords) {
+ /*if(orderWantArriveCunMap.get(ass.esd.Consumable_order_minor__c + ass.esd.Asset_Model_No__c) + orderProductArrivedCunMap.get(ass.esd.Consumable_order_minor__c + ass.esd.Asset_Model_No__c) > orderProductCunMap.get(ass.esd.Consumable_order_minor__c + ass.esd.Asset_Model_No__c)-1){
// 鑾峰彇瓒呰繃瀹氳揣鏁伴噺鐨勬秷鑰楀搧淇℃伅
overOrderproList.add('浜у搧' + ass.esd.Asset_Model_No__c + '鍦ㄨ鍗�' + ass.esd.Consumable_order_minor__r.Name + '涓秴杩囪璐ф暟閲�!\n');
overOrderBARcodeCunList = new list<String>();
@@ -4649,199 +2506,162 @@
consumableorderdetailsRecordsUse.add(ass);
orderWantArriveCunMap.put(ass.esd.Consumable_order_minor__c + ass.esd.Asset_Model_No__c,orderWantArriveCunMap.get(ass.esd.Consumable_order_minor__c + ass.esd.Asset_Model_No__c)+1);
}else{*/
- consumableorderdetailsRecordsUse.add(ass);
- }
- /*orderWantArriveCunMap.put(ass.esd.Consumable_order_minor__c + ass.esd.Asset_Model_No__c,orderWantArriveCunMap.get(ass.esd.Consumable_order_minor__c + ass.esd.Asset_Model_No__c)+1);
+ consumableorderdetailsRecordsUse.add(ass);
+ }
+ /*orderWantArriveCunMap.put(ass.esd.Consumable_order_minor__c + ass.esd.Asset_Model_No__c,orderWantArriveCunMap.get(ass.esd.Consumable_order_minor__c + ass.esd.Asset_Model_No__c)+1);
}
return overOrderproList;*/
}
- // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
- // 铏氭嫙鐩樼偣鍗曟秷鑰楀搧鏄庣粏1鍒涘缓宸″洖
- public void addInventoryDetails1(List<Consumable_order_details2__c> addList) {
- Map<String, List<Consumable_order_details2__c>> accountGroupMap = new Map<String, List<Consumable_order_details2__c>>();
- Map<String, Map<Id, Integer>> productMap = new Map<String, Map<Id, Integer>>();
- List<Id> orderIdList = new List<Id>();
- // 浠ョ粡閿�鍟嗗悕灏嗚鐢熸垚鍑哄簱鍗曠殑鏁版嵁鍒嗙粍
- for (Consumable_order_details2__c cod : addList) {
- List<Consumable_order_details2__c> accGroupList = new List<Consumable_order_details2__c>();
- Map<Id, Integer> pNumMap = new Map<Id, Integer>();
- Integer num = 1;
- if (
- accountGroupMap.containsKey(
- cod.Dealer_Info_text__c + cod.Arrive_Owner_Work_Location__c
- )
- ) {
- accGroupList = accountGroupMap.get(
- cod.Dealer_Info_text__c + cod.Arrive_Owner_Work_Location__c
- );
- pNumMap = productMap.get(
- cod.Dealer_Info_text__c + cod.Arrive_Owner_Work_Location__c
- );
- if (pNumMap.containsKey(cod.Consumable_Product__c)) {
- num = pNumMap.get(cod.Consumable_Product__c) + 1;
+ // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
+ // 铏氭嫙鐩樼偣鍗曟秷鑰楀搧鏄庣粏1鍒涘缓宸″洖
+ public void addInventoryDetails1(List<Consumable_order_details2__c> addList){
+ Map<String, List<Consumable_order_details2__c>> accountGroupMap = new Map<String, List<Consumable_order_details2__c>>();
+ Map<String, Map<Id, Integer>> productMap = new Map<String, Map<Id, Integer>> ();
+ List<Id> orderIdList = new List<Id> ();
+ // 浠ョ粡閿�鍟嗗悕灏嗚鐢熸垚鍑哄簱鍗曠殑鏁版嵁鍒嗙粍
+ for (Consumable_order_details2__c cod : addList) {
+ List<Consumable_order_details2__c> accGroupList = new List<Consumable_order_details2__c> ();
+ Map<Id, Integer> pNumMap = new Map<Id, Integer> ();
+ Integer num = 1;
+ if (accountGroupMap.containsKey(cod.Dealer_Info_text__c + cod.Arrive_Owner_Work_Location__c)) {
+ accGroupList = accountGroupMap.get(cod.Dealer_Info_text__c + cod.Arrive_Owner_Work_Location__c);
+ pNumMap = productMap.get(cod.Dealer_Info_text__c + cod.Arrive_Owner_Work_Location__c);
+ if (pNumMap.containsKey(cod.Consumable_Product__c)) {
+ num = pNumMap.get(cod.Consumable_Product__c) + 1;
+ }
+ }
+ orderIdList.add(cod.Consumable_Inventory_order__c);
+ pNumMap.put(cod.Consumable_Product__c, num);
+ accGroupList.add(cod);
+ productMap.put(cod.Dealer_Info_text__c + cod.Arrive_Owner_Work_Location__c, pNumMap);
+ accountGroupMap.put(cod.Dealer_Info_text__c + cod.Arrive_Owner_Work_Location__c, accGroupList);
+ System.debug('======accGroupList'+accGroupList);
}
- }
- orderIdList.add(cod.Consumable_Inventory_order__c);
- pNumMap.put(cod.Consumable_Product__c, num);
- accGroupList.add(cod);
- productMap.put(
- cod.Dealer_Info_text__c + cod.Arrive_Owner_Work_Location__c,
- pNumMap
- );
- accountGroupMap.put(
- cod.Dealer_Info_text__c + cod.Arrive_Owner_Work_Location__c,
- accGroupList
- );
- System.debug('======accGroupList' + accGroupList);
- }
+
+ System.debug('======accountGroupMap'+accountGroupMap);
+ List<Consumable_order__c> orderList = [select Id, Name, Dealer_Info__r.Name, Order_Owner_WorkLocal__c from Consumable_order__c where id in : orderIdList];
- System.debug('======accountGroupMap' + accountGroupMap);
- List<Consumable_order__c> orderList = [
- SELECT Id, Name, Dealer_Info__r.Name, Order_Owner_WorkLocal__c
- FROM Consumable_order__c
- WHERE id IN :orderIdList
- ];
+ // 鐢熸垚鍚勭粡閿�鍟嗗嚭搴撹鍗昄ist
+ // List<Consumable_order__c> orderList = new List<Consumable_order__c> ();
+ Map<String, List<Consumable_orderdetails__c>> insDetail1Map = new Map<String, List<Consumable_orderdetails__c>>();
+ for (String acc : accountGroupMap.keySet()) {
+ Consumable_order_details2__c arriveAccount = accountGroupMap.get(acc)[0];
+ List<Consumable_order_details2__c> prodPriceList = accountGroupMap.get(acc);
+ Map<Id, Integer> pNumMap = new Map<Id, Integer> ();
+ pNumMap = productMap.get(acc);
+ List<Consumable_orderdetails__c> insDetail1 = New List<Consumable_orderdetails__c>();
+ for (Id id : pNumMap.keySet()) {
+ Consumable_orderdetails__c ins = new Consumable_orderdetails__c();
+
+ //InsAfterDel.Consumable_order__c = p.id;
+ ins.Product_Refind__c = pNumMap.get(id);
+ ins.inventory_sum__c = pNumMap.get(id);
+ ins.Consumable_Product__c = id;
+ for (Consumable_order_details2__c pri : prodPriceList) {
+ if (pri.Consumable_Product__c == id) {
+ ins.Intra_Trade_List_RMB__c =pri.Intra_Trade_List_RMB__c;
+ break;
+ }
+ }
+ ins.Box_Piece__c = '鐩�';
+ ins.Out_unit__c = '鐩�';
+ //ins.Delivery_List_RMB__c = ass.orderdetails1.Delivery_List_RMB__c;
+ //ins.Unitprice_To_agency__c = ass.orderdetails1.Unitprice_To_agency__c;
+ //ins.Dealer_Custom_Price__c = ass.orderdetails1.Dealer_Custom_Price__c;
+ ins.RecordTypeId = System.Label.RT_ConOrderDetail1_Inventory;
+ ins.Used_date__c = Date.today();
+ ins.OwnerId = arriveAccount.OwnerId;
- // 鐢熸垚鍚勭粡閿�鍟嗗嚭搴撹鍗昄ist
- // List<Consumable_order__c> orderList = new List<Consumable_order__c> ();
- Map<String, List<Consumable_orderdetails__c>> insDetail1Map = new Map<String, List<Consumable_orderdetails__c>>();
- for (String acc : accountGroupMap.keySet()) {
- Consumable_order_details2__c arriveAccount = accountGroupMap.get(acc)[0];
- List<Consumable_order_details2__c> prodPriceList = accountGroupMap.get(
- acc
- );
- Map<Id, Integer> pNumMap = new Map<Id, Integer>();
- pNumMap = productMap.get(acc);
- List<Consumable_orderdetails__c> insDetail1 = new List<Consumable_orderdetails__c>();
- for (Id id : pNumMap.keySet()) {
- Consumable_orderdetails__c ins = new Consumable_orderdetails__c();
-
- //InsAfterDel.Consumable_order__c = p.id;
- ins.Product_Refind__c = pNumMap.get(id);
- ins.inventory_sum__c = pNumMap.get(id);
- ins.Consumable_Product__c = id;
- for (Consumable_order_details2__c pri : prodPriceList) {
- if (pri.Consumable_Product__c == id) {
- ins.Intra_Trade_List_RMB__c = pri.Intra_Trade_List_RMB__c;
- break;
- }
+ insDetail1.add(ins);
+ }
+ System.debug('======insDetail1'+insDetail1);
+ insDetail1Map.put(acc, insDetail1);
+ System.debug('======insDetail1Map'+insDetail1Map);
}
- ins.Box_Piece__c = '鐩�';
- ins.Out_unit__c = '鐩�';
- //ins.Delivery_List_RMB__c = ass.orderdetails1.Delivery_List_RMB__c;
- //ins.Unitprice_To_agency__c = ass.orderdetails1.Unitprice_To_agency__c;
- //ins.Dealer_Custom_Price__c = ass.orderdetails1.Dealer_Custom_Price__c;
- ins.RecordTypeId = System.Label.RT_ConOrderDetail1_Inventory;
- ins.Used_date__c = Date.today();
- ins.OwnerId = arriveAccount.OwnerId;
-
- insDetail1.add(ins);
- }
- System.debug('======insDetail1' + insDetail1);
- insDetail1Map.put(acc, insDetail1);
- System.debug('======insDetail1Map' + insDetail1Map);
+ List<Consumable_orderdetails__c> insDetail1List = new List<Consumable_orderdetails__c> ();
+ for (Consumable_order__c setId : orderList) {
+ // 鏄庣粏1
+ List<Consumable_orderdetails__c> d1list = insDetail1Map.get(setId.Dealer_Info__r.Name + setId.Order_Owner_WorkLocal__c);
+ Integer i = 1;
+ for (Consumable_orderdetails__c dtl1 : d1list) {
+ String str = ('000' + i).right(4);
+ dtl1.Consumable_order__c = setId.Id;
+ dtl1.Name = setId.Name + '-'+ str;
+ insDetail1List.add(dtl1);
+ }
+ }
+ System.debug('======insDetail1List'+insDetail1List);
+ insert insDetail1List;
}
- List<Consumable_orderdetails__c> insDetail1List = new List<Consumable_orderdetails__c>();
- for (Consumable_order__c setId : orderList) {
- // 鏄庣粏1
- List<Consumable_orderdetails__c> d1list = insDetail1Map.get(
- setId.Dealer_Info__r.Name + setId.Order_Owner_WorkLocal__c
- );
- Integer i = 1;
- for (Consumable_orderdetails__c dtl1 : d1list) {
- String str = ('000' + i).right(4);
- dtl1.Consumable_order__c = setId.Id;
- dtl1.Name = setId.Name + '-' + str;
- insDetail1List.add(dtl1);
- }
- }
- System.debug('======insDetail1List' + insDetail1List);
- insert insDetail1List;
- }
- // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 end
+ // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 end
- // 缁忛攢鍟嗙殑涓嶅悓宸ヤ綔鍦拌皟璐ц嚜鍔ㄧ敓鎴愬嚭搴撳崟
- public void addSaleOrderAuto(List<Consumable_order_details2__c> addList) {
- Map<String, List<Consumable_order_details2__c>> accountGroupMap = new Map<String, List<Consumable_order_details2__c>>();
- Map<String, Map<Id, Integer>> productMap = new Map<String, Map<Id, Integer>>();
- // 浠ョ粡閿�鍟嗗悕灏嗚鐢熸垚鍑哄簱鍗曠殑鏁版嵁鍒嗙粍
- for (Consumable_order_details2__c cod : addList) {
- List<Consumable_order_details2__c> accGroupList = new List<Consumable_order_details2__c>();
- Map<Id, Integer> pNumMap = new Map<Id, Integer>();
- Integer num = 1;
- if (
- accountGroupMap.containsKey(
- cod.Dealer_Info_text__c + cod.Arrive_Owner_Work_Location__c
- )
- ) {
- accGroupList = accountGroupMap.get(
- cod.Dealer_Info_text__c + cod.Arrive_Owner_Work_Location__c
- );
- pNumMap = productMap.get(
- cod.Dealer_Info_text__c + cod.Arrive_Owner_Work_Location__c
- );
- if (pNumMap.containsKey(cod.Consumable_Product__c)) {
- num = pNumMap.get(cod.Consumable_Product__c) + 1;
+
+ // 缁忛攢鍟嗙殑涓嶅悓宸ヤ綔鍦拌皟璐ц嚜鍔ㄧ敓鎴愬嚭搴撳崟
+ public void addSaleOrderAuto (List<Consumable_order_details2__c> addList) {
+ Map<String, List<Consumable_order_details2__c>> accountGroupMap = new Map<String, List<Consumable_order_details2__c>>();
+ Map<String, Map<Id, Integer>> productMap = new Map<String, Map<Id, Integer>> ();
+ // 浠ョ粡閿�鍟嗗悕灏嗚鐢熸垚鍑哄簱鍗曠殑鏁版嵁鍒嗙粍
+ for (Consumable_order_details2__c cod : addList) {
+ List<Consumable_order_details2__c> accGroupList = new List<Consumable_order_details2__c> ();
+ Map<Id, Integer> pNumMap = new Map<Id, Integer> ();
+ Integer num = 1;
+ if (accountGroupMap.containsKey(cod.Dealer_Info_text__c + cod.Arrive_Owner_Work_Location__c)) {
+ accGroupList = accountGroupMap.get(cod.Dealer_Info_text__c + cod.Arrive_Owner_Work_Location__c);
+ pNumMap = productMap.get(cod.Dealer_Info_text__c + cod.Arrive_Owner_Work_Location__c);
+ if (pNumMap.containsKey(cod.Consumable_Product__c)) {
+ num = pNumMap.get(cod.Consumable_Product__c) + 1;
+ }
+ }
+ pNumMap.put(cod.Consumable_Product__c, num);
+ accGroupList.add(cod);
+ productMap.put(cod.Dealer_Info_text__c + cod.Arrive_Owner_Work_Location__c, pNumMap);
+ accountGroupMap.put(cod.Dealer_Info_text__c + cod.Arrive_Owner_Work_Location__c, accGroupList);
}
- }
- pNumMap.put(cod.Consumable_Product__c, num);
- accGroupList.add(cod);
- productMap.put(
- cod.Dealer_Info_text__c + cod.Arrive_Owner_Work_Location__c,
- pNumMap
- );
- accountGroupMap.put(
- cod.Dealer_Info_text__c + cod.Arrive_Owner_Work_Location__c,
- accGroupList
- );
- }
- // 鐢熸垚鍚勭粡閿�鍟嗗嚭搴撹鍗昄ist
- List<Consumable_order__c> orderList = new List<Consumable_order__c>();
- Map<String, List<Consumable_orderdetails__c>> insDetail1Map = new Map<String, List<Consumable_orderdetails__c>>();
- for (String acc : accountGroupMap.keySet()) {
- Consumable_order_details2__c arriveAccount = accountGroupMap.get(acc)[0];
- Consumable_order__c autoOrder = new Consumable_order__c();
- autoOrder.Name = '*';
- autoOrder.Dealer_Info__c = arriveAccount.Consumable_Arrived_order__r.Dealer_Info__c;
- autoOrder.OwnerId = arriveAccount.OwnerId;
- autoOrder.Order_type__c = '浼犵エ';
- autoOrder.SummonsStatus_c__c = '宸插畬鎴�';
- autoOrder.Order_ForDealerText__c = accountName;
- autoOrder.SummonsForDirction__c = '浜掔浉璋冭揣';
- autoOrder.RecordTypeid = System.Label.RT_ConOrder_Shipment;
- autoOrder.Outbound_Date__c = Date.today();
- autoOrder.Order_date__c = Date.today();
- autoOrder.AutoShipment__c = true;
- orderList.add(autoOrder);
+ // 鐢熸垚鍚勭粡閿�鍟嗗嚭搴撹鍗昄ist
+ List<Consumable_order__c> orderList = new List<Consumable_order__c> ();
+ Map<String, List<Consumable_orderdetails__c>> insDetail1Map = new Map<String, List<Consumable_orderdetails__c>>();
+ for (String acc : accountGroupMap.keySet()) {
+ Consumable_order_details2__c arriveAccount = accountGroupMap.get(acc)[0];
+ Consumable_order__c autoOrder = new Consumable_order__c();
+ autoOrder.Name = '*';
+ autoOrder.Dealer_Info__c = arriveAccount.Consumable_Arrived_order__r.Dealer_Info__c;
+ autoOrder.OwnerId = arriveAccount.OwnerId;
+ autoOrder.Order_type__c = '浼犵エ';
+ autoOrder.SummonsStatus_c__c = '宸插畬鎴�';
+ autoOrder.Order_ForDealerText__c = accountName;
+ autoOrder.SummonsForDirction__c = '浜掔浉璋冭揣';
+ autoOrder.RecordTypeid = System.Label.RT_ConOrder_Shipment;
+ autoOrder.Outbound_Date__c = Date.today();
+ autoOrder.Order_date__c = Date.today();
+ autoOrder.AutoShipment__c = TRUE;
+ orderList.add(autoOrder);
- List<Consumable_order_details2__c> prodPriceList = accountGroupMap.get(
- acc
- );
- Map<Id, Integer> pNumMap = new Map<Id, Integer>();
- pNumMap = productMap.get(acc);
- List<Consumable_orderdetails__c> insDetail1 = new List<Consumable_orderdetails__c>();
- for (Id id : pNumMap.keySet()) {
- Consumable_orderdetails__c ins = new Consumable_orderdetails__c();
-
- //InsAfterDel.Consumable_order__c = p.id;
- ins.Shipment_Count__c = pNumMap.get(id);
- ins.Consumable_Product__c = id;
- for (Consumable_order_details2__c pri : prodPriceList) {
- if (pri.Consumable_Product__c == id) {
- ins.Intra_Trade_List_RMB__c = pri.Intra_Trade_List_RMB__c;
- break;
- }
- }
- ins.Box_Piece__c = '鐩�';
- ins.Out_unit__c = '鐩�';
- //ins.Delivery_List_RMB__c = ass.orderdetails1.Delivery_List_RMB__c;
- //ins.Unitprice_To_agency__c = ass.orderdetails1.Unitprice_To_agency__c;
- //ins.Dealer_Custom_Price__c = ass.orderdetails1.Dealer_Custom_Price__c;
- ins.RecordTypeId = System.Label.RT_ConOrderDetail1_Shipment;
- ins.Used_date__c = Date.today();
- ins.OwnerId = arriveAccount.OwnerId;
+ List<Consumable_order_details2__c> prodPriceList = accountGroupMap.get(acc);
+ Map<Id, Integer> pNumMap = new Map<Id, Integer> ();
+ pNumMap = productMap.get(acc);
+ List<Consumable_orderdetails__c> insDetail1 = New List<Consumable_orderdetails__c>();
+ for (Id id : pNumMap.keySet()) {
+ Consumable_orderdetails__c ins = new Consumable_orderdetails__c();
+
+ //InsAfterDel.Consumable_order__c = p.id;
+ ins.Shipment_Count__c = pNumMap.get(id);
+ ins.Consumable_Product__c = id;
+ for (Consumable_order_details2__c pri : prodPriceList) {
+ if (pri.Consumable_Product__c == id) {
+ ins.Intra_Trade_List_RMB__c =pri.Intra_Trade_List_RMB__c;
+ break;
+ }
+ }
+ ins.Box_Piece__c = '鐩�';
+ ins.Out_unit__c = '鐩�';
+ //ins.Delivery_List_RMB__c = ass.orderdetails1.Delivery_List_RMB__c;
+ //ins.Unitprice_To_agency__c = ass.orderdetails1.Unitprice_To_agency__c;
+ //ins.Dealer_Custom_Price__c = ass.orderdetails1.Dealer_Custom_Price__c;
+ ins.RecordTypeId = System.Label.RT_ConOrderDetail1_Shipment;
+ ins.Used_date__c = Date.today();
+ ins.OwnerId = arriveAccount.OwnerId;
insDetail1.add(ins);
}
@@ -4849,36 +2669,30 @@
}
insert orderList;
- List<Id> orderIdList = new List<Id>();
- for (Consumable_order__c co : orderList) {
- orderIdList.add(co.Id);
- }
+ List<Id> orderIdList = new List<Id> ();
+ for (Consumable_order__c co : orderList) {
+ orderIdList.add(co.Id);
+ }
- orderList = new List<Consumable_order__c>();
- orderList = [
- SELECT Id, Name, Dealer_Info__r.Name, Order_Owner_WorkLocal__c
- FROM Consumable_order__c
- WHERE id IN :orderIdList
- ];
+ orderList = new List<Consumable_order__c> ();
+ orderList = [select Id, Name, Dealer_Info__r.Name, Order_Owner_WorkLocal__c from Consumable_order__c where id in : orderIdList];
- // 璁剧疆鏄庣粏1 鍜� 鏄庣粏2 鐨� 璁㈠崟ID
- List<Consumable_orderdetails__c> insDetail1List = new List<Consumable_orderdetails__c>();
- List<Consumable_order_details2__c> updDetail2List = new List<Consumable_order_details2__c>();
- for (Consumable_order__c setId : orderList) {
- // 鏄庣粏1
- List<Consumable_orderdetails__c> d1list = insDetail1Map.get(
- setId.Dealer_Info__r.Name + setId.Order_Owner_WorkLocal__c
- );
- Integer i = 1;
- for (Consumable_orderdetails__c dtl1 : d1list) {
- String str = ('000' + i).right(4);
- // if(str.length() == 1){
- // str = '0' + str;
- // }
- dtl1.Consumable_order__c = setId.Id;
- dtl1.Name = setId.Name + '-' + str;
- insDetail1List.add(dtl1);
- }
+ // 璁剧疆鏄庣粏1 鍜� 鏄庣粏2 鐨� 璁㈠崟ID
+ List<Consumable_orderdetails__c> insDetail1List = new List<Consumable_orderdetails__c> ();
+ List<Consumable_order_details2__c> updDetail2List = new List<Consumable_order_details2__c> ();
+ for (Consumable_order__c setId : orderList) {
+ // 鏄庣粏1
+ List<Consumable_orderdetails__c> d1list = insDetail1Map.get(setId.Dealer_Info__r.Name + setId.Order_Owner_WorkLocal__c);
+ Integer i = 1;
+ for (Consumable_orderdetails__c dtl1 : d1list) {
+ String str = ('000' + i).right(4);
+ // if(str.length() == 1){
+ // str = '0' + str;
+ // }
+ dtl1.Consumable_order__c = setId.Id;
+ dtl1.Name = setId.Name + '-'+ str;
+ insDetail1List.add(dtl1);
+ }
// 鏄庣粏2
List<Consumable_order_details2__c> d2list = accountGroupMap.get(
@@ -4906,1112 +2720,879 @@
update updDetail2List;
}
- //鍒拌揣纭
- public PageReference ArriveGoodsConfim() {
- //add by rentx 20210618 start CHAN-C3K4ZQ 璺宠繃涓嶅繀瑕佺殑鏌ヨ
- StaticParameter.ConsumableOrderTrigger = true;
- //add by rentx 20210618 end CHAN-C3K4ZQ 璺宠繃涓嶅繀瑕佺殑鏌ヨ
- cancellationProList = new List<String>();
- List<Consumable_order_details2__c> ins = new List<Consumable_order_details2__c>();
- String resultcheck = '';
- List<String> resultcheckWithoutOrder = new List<String>();
- Savepoint sp = Database.setSavepoint();
+ //鍒拌揣纭
+ public PageReference ArriveGoodsConfim() {
+ //add by rentx 20210618 start CHAN-C3K4ZQ 璺宠繃涓嶅繀瑕佺殑鏌ヨ
+ StaticParameter.ConsumableOrderTrigger = true;
+ //add by rentx 20210618 end CHAN-C3K4ZQ 璺宠繃涓嶅繀瑕佺殑鏌ヨ
+ cancellationProList = new List<String>();
+ List<Consumable_order_details2__c> ins = New List<Consumable_order_details2__c>();
+ String resultcheck = '';
+ List<String> resultcheckWithoutOrder = new List<String>();
+ Savepoint sp = Database.setSavepoint();
- if (
- ConsumableorderdetailsRecords.size() < 1 &&
- consumableInventory.size() < 1
- ) {
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- returnError = '涓嶅瓨鍦ㄥ埌璐ф槑缁�';
- } else {
- ApexPages.addmessage(
- new ApexPages.message(ApexPages.severity.ERROR, '涓嶅瓨鍦ㄥ埌璐ф槑缁�')
- );
- }
- return null;
- }
- if (EsetId != null && EsetId != '') {
- resultcheck = ConfimResult();
- if (resultcheck.length() > 0) {
- for (String widget : overOrderBARcodeCunMap.keySet()) {
- if (overOrderBARcodeCunMap.get(widget).size() > 0) {
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- warningList.add(
- '浜у搧' +
- widget +
- '鏈鍒拌揣鏁伴噺瓒呰繃' +
- overOrderBARcodeCunMap.get(widget).size() +
- '涓璐х殑鏁伴噺銆�'
- );
- } else {
- ApexPages.addmessage(
- new ApexPages.message(
- ApexPages.severity.INFO,
- '浜у搧' +
- widget +
- '鏈鍒拌揣鏁伴噺瓒呰繃' +
- overOrderBARcodeCunMap.get(widget).size() +
- '涓璐х殑鏁伴噺銆�'
- )
- );
+ if(ConsumableorderdetailsRecords.size()<1 && consumableInventory.size()<1){
+ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'涓嶅瓨鍦ㄥ埌璐ф槑缁�'));
+ return null;
+ }
+ if(EsetId != null && EsetId != ''){
+ resultcheck = ConfimResult();
+ if(resultcheck.length() > 0){
+ for(String widget : overOrderBARcodeCunMap.keySet()) {
+ if(overOrderBARcodeCunMap.get(widget).size() >0){
+ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.INFO, '浜у搧' + widget + '鏈鍒拌揣鏁伴噺瓒呰繃' + overOrderBARcodeCunMap.get(widget).size() +'涓璐х殑鏁伴噺銆�'));
+ for(String barcodeListTTT : (List<String>)overOrderBARcodeCunMap.get(widget)) {
+ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.INFO, barcodeListTTT));
+ }
+ }
+ }
}
- for (
- String barcodeListTTT : (List<String>) overOrderBARcodeCunMap.get(
- widget
- )
- ) {
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- warningList.add(barcodeListTTT);
- } else {
- ApexPages.addmessage(
- new ApexPages.message(ApexPages.severity.INFO, barcodeListTTT)
- );
- }
+ }else{
+ confimResultWithoutOrder();
+ }
+ try{
+ Consumable_order__c orderMain = new Consumable_order__c();
+ List<Consumable_order_details2__c> orderdetails = New List<Consumable_order_details2__c>();
+ //鍒拌揣姝g‘淇℃伅
+ orderMain.Name = '*';
+ orderMain.Order_status__c = '鎵瑰噯';
+ orderMain.Dealer_Info__c = accountid;
+ orderMain.Deliver_date__c = Date.today();
+ orderMain.Order_date__c = Date.today();
+ orderMain.Order_type__c = '鍒拌揣';
+ orderMain.Order_ProType__c = userPro_Type;
+ if(EsetId != null && EsetId != ''){
+ orderMain.Arrive_Order__c = coc.Id;
}
- }
- }
- }
- } else {
- confimResultWithoutOrder();
- }
- try {
- Consumable_order__c orderMain = new Consumable_order__c();
- List<Consumable_order_details2__c> orderdetails = new List<Consumable_order_details2__c>();
- //鍒拌揣姝g‘淇℃伅
- orderMain.Name = '*';
- orderMain.Order_status__c = '鎵瑰噯';
- orderMain.Dealer_Info__c = accountid;
- orderMain.Deliver_date__c = Date.today();
- orderMain.Order_date__c = Date.today();
- orderMain.Order_type__c = '鍒拌揣';
- orderMain.Order_ProType__c = userPro_Type;
- if (EsetId != null && EsetId != '') {
- orderMain.Arrive_Order__c = coc.Id;
- }
- orderMain.RecordTypeid = System.Label.RT_ConOrder_Arrive;
- insert orderMain;
+ orderMain.RecordTypeid = System.Label.RT_ConOrder_Arrive;
+ insert orderMain;
- List<Consumable_order__c> consumable_order = [
- SELECT Name
- FROM Consumable_order__c
- WHERE id = :orderMain.id
- ];
- arriveId = orderMain.id;
- Decimal arriveAmount = 0;
- for (ConsumableorderdetailsInfo ass : consumableorderdetailsRecordsUse) {
- //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'------1------'));
- Consumable_order_details2__c insDetails = new Consumable_order_details2__c();
- insDetails.Id = ass.esd.Id;
- insDetails.Consumable_Arrived_order__c = orderMain.id;
- insDetails.Arrive_date__c = Date.today();
- insDetails.Bar_Code__c = ass.esd.Bar_Code__c;
- insDetails.OwnerId = UserInfo.getUserId();
- // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
- if (orderdetails2trMap.containsKey(ass.esd.Bar_Code__c)) {
- insDetails.Transfer_Time__c = ass.esd.Transfer_Time__c == null
- ? 1
- : ass.esd.Transfer_Time__c;
- insDetails.Agency_Transfer__c = true;
- insDetails.Frist_Transfer_Agency__c = ass.esd.Frist_Transfer_Agency__c ==
- null
- ? ass.esd.Dealer_Info_text__c
- : ass.esd.Frist_Transfer_Agency__c;
- }
- // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 end
+ List<Consumable_order__c> consumable_order = [SELECT Name FROM Consumable_order__c WHERE id =:orderMain.id];
+ arriveId = orderMain.id;
+ Decimal arriveAmount =0;
+ for (ConsumableorderdetailsInfo ass : consumableorderdetailsRecordsUse) {
+ Consumable_order_details2__c insDetails = new Consumable_order_details2__c();
+ insDetails.Id = ass.esd.Id;
+ insDetails.Consumable_Arrived_order__c = orderMain.id;
+ insDetails.Arrive_date__c = Date.today();
+ insDetails.Bar_Code__c = ass.esd.Bar_Code__c;
+ insDetails.OwnerId = UserInfo.getUserId();
+ // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
+ if (orderdetails2trMap.containsKey(ass.esd.Bar_Code__c)) {
+ insDetails.Transfer_Time__c = ass.esd.Transfer_Time__c == null ? 1 : ass.esd.Transfer_Time__c;
+ insDetails.Agency_Transfer__c = true;
+ insDetails.Frist_Transfer_Agency__c = ass.esd.Frist_Transfer_Agency__c == null ? ass.esd.Dealer_Info_text__c : ass.esd.Frist_Transfer_Agency__c;
+ }
+ // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 end
+
+ // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 start
+ insDetails.Agencyinfo_fromSAP__c = ass.esd.Agencyinfo_fromSAP__c;
+ insDetails.Frist_Storage_Agency__c = ass.esd.Frist_Storage_Agency__c == null ? ass.esd.Dealer_Info_text__c : ass.esd.Frist_Storage_Agency__c;
+ // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 end
+ arriveAmount += ass.esd.Intra_Trade_List_RMB__c;
+ orderdetails.add(insDetails);
+ }
+ Integer i = 1;
+ for(ConsumableorderdetailsInfo ass : consumableInventoryUse){
+ //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'------2------'));
+ Consumable_order_details2__c insAfterDel = new Consumable_order_details2__c();
+ String str = ('000' + i).right(4);
+ // if(str.length() == 1){
+ // str = '0' + str;
+ // }
+ insAfterDel.Name = consumable_order[0].Name + '-'+ str;
+ insAfterDel.RecordTypeId = System.Label.RT_ConOrderDetail2_Delivery;
+ // gzw 鎵嬪姩鍏ュ簱 榛樿浜у搧鍗曚环 20230307
+ // if(EsetId != null && EsetId != ''){
+ // insAfterDel.Intra_Trade_List_RMB__c = ass.Prod.Intra_Trade_List_RMB__c;
+ // }else{
+ // insAfterDel.Intra_Trade_List_RMB__c = 0;
+ // }
+ insAfterDel.Intra_Trade_List_RMB__c = ass.Prod.Intra_Trade_List_RMB__c;
+ //gzw 鎵嬪姩鍏ュ簱 榛樿浜у搧鍗曚环 20230307
+ insAfterDel.Asset_Model_No__c = ass.Prod.Asset_Model_No__c;
+ if(EsetId != null && EsetId != ''){
+ insAfterDel.Consumable_order_minor__c = ESetId;
+ }
+ insAfterDel.Deliver_date__c = Date.today();
+ insAfterDel.Direct_Arrive_Product__c = true;
+ //TODO寰呯‘璁�
+ insAfterDel.Sterilization_limit__c = ass.sterilizationlimitDate;
+ insAfterDel.Consumable_Product__c = ass.Prod.id;
+ insAfterDel.Bar_Code__c = ass.barCodeNo;
+ insAfterDel.Used_account__c = accountid;
+ //TODO寰呯‘璁�
+ insAfterDel.SerialLotNo__c = ass.serialNoorLotNo;
+ insAfterDel.TracingCode__c = ass.tracingCodeNo;
- // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 start
- insDetails.Agencyinfo_fromSAP__c = ass.esd.Agencyinfo_fromSAP__c;
- insDetails.Frist_Storage_Agency__c = ass.esd.Frist_Storage_Agency__c ==
- null
- ? ass.esd.Dealer_Info_text__c
- : ass.esd.Frist_Storage_Agency__c;
- // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 end
- arriveAmount += ass.esd.Intra_Trade_List_RMB__c;
- orderdetails.add(insDetails);
- }
- Integer i = 1;
- for (ConsumableorderdetailsInfo ass : consumableInventoryUse) {
- //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'------2------'));
- Consumable_order_details2__c insAfterDel = new Consumable_order_details2__c();
- String str = ('000' + i).right(4);
- // if(str.length() == 1){
- // str = '0' + str;
- // }
- insAfterDel.Name = consumable_order[0].Name + '-' + str;
- insAfterDel.RecordTypeId = System.Label.RT_ConOrderDetail2_Delivery;
- // gzw 鎵嬪姩鍏ュ簱 榛樿浜у搧鍗曚环 20230307
- // if(EsetId != null && EsetId != ''){
- // insAfterDel.Intra_Trade_List_RMB__c = ass.Prod.Intra_Trade_List_RMB__c;
- // }else{
- // insAfterDel.Intra_Trade_List_RMB__c = 0;
- // }
- insAfterDel.Intra_Trade_List_RMB__c = ass.Prod.Intra_Trade_List_RMB__c;
- //gzw 鎵嬪姩鍏ュ簱 榛樿浜у搧鍗曚环 20230307
- insAfterDel.Asset_Model_No__c = ass.Prod.Asset_Model_No__c;
- if (EsetId != null && EsetId != '') {
- insAfterDel.Consumable_order_minor__c = ESetId;
- }
- insAfterDel.Deliver_date__c = Date.today();
- insAfterDel.Direct_Arrive_Product__c = true;
- //TODO寰呯‘璁�
- insAfterDel.Sterilization_limit__c = ass.sterilizationlimitDate;
- insAfterDel.Consumable_Product__c = ass.Prod.id;
- insAfterDel.Bar_Code__c = ass.barCodeNo;
- insAfterDel.Used_account__c = accountid;
- //TODO寰呯‘璁�
- insAfterDel.SerialLotNo__c = ass.serialNoorLotNo;
- insAfterDel.TracingCode__c = ass.tracingCodeNo;
+ //insAfterDel.Dealer_Arrive__c = true;
+ insAfterDel.Consumable_Arrived_order__c = orderMain.id;
+ insAfterDel.Arrive_date__c = Date.today();
+ insAfterDel.OwnerId = UserInfo.getUserId();
+ // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
+ if (orderdetails2trMap.containsKey(ass.esd.Bar_Code__c)) {
+ insAfterDel.Transfer_Time__c = ass.esd.Transfer_Time__c == null ? 1 : ass.esd.Transfer_Time__c;
+ insAfterDel.Agency_Transfer__c = true;
+ insAfterDel.Frist_Transfer_Agency__c = ass.esd.Frist_Transfer_Agency__c == null ? accountName : ass.esd.Frist_Transfer_Agency__c;
+ }
+ // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 end
+
+ // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 start
+ insAfterDel.Agencyinfo_fromSAP__c = ass.esd.Agencyinfo_fromSAP__c;
+ insAfterDel.Frist_Storage_Agency__c = ass.esd.Frist_Storage_Agency__c == null ? accountName : ass.esd.Frist_Storage_Agency__c;
+ // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 end
+ arriveAmount += insAfterDel.Intra_Trade_List_RMB__c;
+ //add by rentx 2020-10-14 strat
+ //insAfterDel.ContractNo_text__c = /*ass.esd.ContractNo__c*/;
+ // tcm start
+ if (String.isBlank(ass.esd.Consumable_order_minor__r.ContractNo__c)) {
+ insAfterDel.ContractNo_text__c= ass.esd.ContractNo_text__c;
+ }else {
+ insAfterDel.ContractNo_text__c= ass.esd.Consumable_order_minor__r.ContractNo__c;
+ }
+ // tcm end
+ //add by rentx 2020-10-14 end
+ i++;
- //insAfterDel.Dealer_Arrive__c = true;
- insAfterDel.Consumable_Arrived_order__c = orderMain.id;
- insAfterDel.Arrive_date__c = Date.today();
- insAfterDel.OwnerId = UserInfo.getUserId();
- // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
- if (orderdetails2trMap.containsKey(ass.esd.Bar_Code__c)) {
- insAfterDel.Transfer_Time__c = ass.esd.Transfer_Time__c == null
- ? 1
- : ass.esd.Transfer_Time__c;
- insAfterDel.Agency_Transfer__c = true;
- insAfterDel.Frist_Transfer_Agency__c = ass.esd.Frist_Transfer_Agency__c ==
- null
- ? accountName
- : ass.esd.Frist_Transfer_Agency__c;
- }
- // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 end
+ ins.add(insAfterDel);
- // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 start
- insAfterDel.Agencyinfo_fromSAP__c = ass.esd.Agencyinfo_fromSAP__c;
- insAfterDel.Frist_Storage_Agency__c = ass.esd.Frist_Storage_Agency__c ==
- null
- ? accountName
- : ass.esd.Frist_Storage_Agency__c;
- // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 end
- arriveAmount += insAfterDel.Intra_Trade_List_RMB__c;
- //add by rentx 2020-10-14 strat
- //insAfterDel.ContractNo_text__c = /*ass.esd.ContractNo__c*/;
- // tcm start
- if (String.isBlank(ass.esd.Consumable_order_minor__r.ContractNo__c)) {
- insAfterDel.ContractNo_text__c = ass.esd.ContractNo_text__c;
- } else {
- insAfterDel.ContractNo_text__c = ass.esd.Consumable_order_minor__r.ContractNo__c;
- }
- // tcm end
- //add by rentx 2020-10-14 end
- i++;
-
- ins.add(insAfterDel);
- }
- orderMain.Arrive_total_amount__c = arriveAmount;
- update orderMain;
- List<Consumable_order_details2__c> updateconsumableorderdetails2 = new List<Consumable_order_details2__c>();
- //鏇存柊鏄庣粏鍙栨秷鏃堕棿 => 鏈埌璐у彇娑堬紝鍒拌揣鑷姩鐢熸垚鍑哄簱娴佺▼
- List<Consumable_order_details2__c> addSaleOrderList = new List<Consumable_order_details2__c>();
- for (Consumable_order_details2__c Cod : consumableorderdetails2Cancle) {
- //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'------3------'));
- if (Cod.Dealer_Arrive__c) {
- if (Cod.Dealer_Shipment__c == false && Cod.Dealer_Saled__c == false) {
- addSaleOrderList.add(Cod);
- }
- } else {
- Cod.Cancellation_Date__c = Date.today();
- Cod.Cancellation_Flag__c = true;
- updateconsumableorderdetails2.add(Cod);
- }
- }
+ }
+ orderMain.Arrive_total_amount__c = arriveAmount;
+ update orderMain;
+ List<Consumable_order_details2__c> updateconsumableorderdetails2 = new List<Consumable_order_details2__c>();
+ //鏇存柊鏄庣粏鍙栨秷鏃堕棿 => 鏈埌璐у彇娑堬紝鍒拌揣鑷姩鐢熸垚鍑哄簱娴佺▼
+ List<Consumable_order_details2__c> addSaleOrderList = new List<Consumable_order_details2__c> ();
+ for(Consumable_order_details2__c Cod : consumableorderdetails2Cancle){
+ //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'------3------'));
+ if (Cod.Dealer_Arrive__c) {
+ if (Cod.Dealer_Shipment__c == FALSE && Cod.Dealer_Saled__c == FALSE) {
+ addSaleOrderList.add(Cod);
+ }
+ } else {
+ Cod.Cancellation_Date__c = Date.today();
+ Cod.Cancellation_Flag__c = true;
+ updateconsumableorderdetails2.add(Cod);
+ }
+ }
if (addSaleOrderList.size() > 0) {
addSaleOrderAuto(addSaleOrderList);
}
- if (updateconsumableorderdetails2.size() > 0) {
- update updateconsumableorderdetails2;
- }
-
- List<Consumable_order_details2__c> insertconsumableorderdetails2 = new List<Consumable_order_details2__c>();
- for (Consumable_order_details2__c Cod2 : consumableorderdetails2Insert) {
- //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'------4------'));
- String str = ('000' + i).right(4);
- // if(str.length() == 1){
- // str = '0' + str;
- // }
- Cod2.Name = consumable_order[0].Name + '-' + str;
- Cod2.Consumable_order_minor__c = null;
- Cod2.Deliver_date__c = Date.today();
- Cod2.Used_account__c = accountid;
- Cod2.Consumable_Arrived_order__c = orderMain.id;
- Cod2.Arrive_date__c = Date.today();
- // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
- if (orderdetails2trMap.containsKey(Cod2.Bar_Code__c)) {
- //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'------4++++++' + Cod2.Frist_Storage_Agency__c));
- Cod2.Transfer_Time__c = Cod2.Transfer_Time__c == null
- ? 1
- : Cod2.Transfer_Time__c;
- Cod2.Agency_Transfer__c = true;
- Cod2.Frist_Transfer_Agency__c = Cod2.Frist_Transfer_Agency__c == null
- ? accountName
- : Cod2.Frist_Transfer_Agency__c;
- }
- // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 end
-
- // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 start
- Cod2.Agencyinfo_fromSAP__c = Cod2.Agencyinfo_fromSAP__c;
- //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'------4------' + Cod2.Frist_Storage_Agency__c));
- Cod2.Frist_Storage_Agency__c = Cod2.Frist_Storage_Agency__c == null
- ? accountName
- : Cod2.Frist_Storage_Agency__c;
- // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 end
- insertconsumableorderdetails2.add(Cod2);
- i++;
- }
-
- //return null;
-
- if (insertconsumableorderdetails2.size() > 0) {
- insert insertconsumableorderdetails2;
- }
-
- if (ins.size() > 0) {
- insert ins;
- }
- if (orderdetails.size() > 0) {
- ControllerUtil.updateOrderDetailsSatus(orderdetails);
- }
- //瓒呭嚭鍒拌揣鏁伴噺浜у搧鍙栨秷鏃ユ湡鏇存柊
- List<Consumable_order_details2__c> needcanceldet = new List<Consumable_order_details2__c>();
- if (cancellationProList.size() > 0) {
- needcanceldet = [
- SELECT Id, Cancellation_Date__c
- FROM Consumable_order_details2__c
- WHERE
- Asset_Model_No__c IN :cancellationProList
- AND Consumable_order_minor__c = :ESetId
- AND Dealer_Arrive__c = FALSE
- AND Cancellation_Date__c = NULL
- ];
- if (needcanceldet.size() > 0) {
- for (Integer a = 0; a < needcanceldet.size(); a++) {
- needcanceldet[a].Cancellation_Date__c = Date.today();
- needcanceldet[a].Cancellation_Flag__c = true;
- }
- ControllerUtil.updateOrderDetailsSatus(needcanceldet);
- }
- }
- List<Consumable_order__c> qs = new List<Consumable_order__c>();
- qs = [
- SELECT
- Id,
- Name,
- Order_status__c,
- Dealer_Info__c,
- Deliver_date__c,
- ReturnGs_Upload_Date__c,
- Order_Reason__c,
- Order_date__c,
- Contract_application_decision__c,
- Order_type__c,
- Total_num__c,
- OrderNumber_arrived__c,
- Delivery_detail_count__c,
- OrderNumber_notarrive__c
- FROM Consumable_order__c
- WHERE Id = :ESetId AND Dealer_Info__c = :accountid
- ];
- if (qs.size() > 0) {
- coc = qs[0];
- }
- saveFLGbln = true;
- alertMessage = '鍒拌揣瀹屾垚銆�';
- // Integer a = 1/0;
- } catch (Exception e) {
- Database.rollback(sp);
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- returnError = e.getLineNumber() + '---' + e.getMessage();
- } else {
- ApexPages.addMessages(e);
- }
- return null;
- }
- if (resultcheck.length() > 0) {
- return null;
- } else if (resultcheckWithoutOrder.size() > 0) {
- return null;
- } else {
- urlType = 'UnabletoEdit';
- return UnabletoEdit();
- // return null;
- }
- }
-
- // 杩斿搧妫�鏌ワ紝鍚庡洖搴�
- public integer GoodsReturnCheck() {
- List<String> GrListIn = ParseBarCode(barcode);
- GrList = new List<String>();
- Map<String, String> CheckBarcodeResult = new Map<String, String>();
- for (String Str : GrListIn) {
- CheckBarcodeResult.put(str, 'UnFind');
- }
- List<Consumable_order_details2__c> BarcodeRetrunResult = [
- SELECT
- Id,
- Name,
- Intra_Trade_List_RMB__c,
- Asset_Model_No__c,
- Consumable_Product__c,
- Consumable_Product__r.Name,
- Consumable_Product__r.Name__c,
- Consumable_Product__r.Asset_Model_No__c,
- Sterilization_limit__c,
- Deliver_date__c,
- Bar_Code__c,
- Arrive_date__c,
- Send_Date__c,
- Consumable_order_minor__r.Name,
- Consumable_order_minor__c,
- Dealer_Arrive__c,
- Guarantee_period_for_products__c,
- CFDA_Status__c,
- ProductPacking_list_manual__c,
- Report_Product_Approbation__c,
- Report_Product_Expiration__c,
- Box_Piece__c,
- Rrturn_count__c,
- Product_Type__c,
- //add by rentx 2020-10-14 start
- ContractNo_text__c /*,ContractNo__c*/,
- // tcm start
- Consumable_order_minor__r.ContractNo__c
- // tcm end
- //add by rentx 2020-10-14 end
- FROM Consumable_order_details2__c
- WHERE
- Dealer_Arrive__c = TRUE
- AND (Dealer_Shipment__c = TRUE
- //AND Consumable_Shipment_order__r.SummonsForDirction__c != '浜掔浉璋冭揣')
- OR Dealer_Saled__c = TRUE)
- AND Dealer_Info_text__c = :accountName
- AND Bar_Code__c IN :GrListIn
- AND (NOT Product_Type__c LIKE :userPro_Typestr)
- AND Dealer_Returned__c = FALSE
- AND Arrive_Owner_Work_Location__c = :userWorkLocation
- ORDER BY Box_Piece__c DESC, Name
- ];
- if (BarcodeRetrunResult.size() > 0) {
- for (Integer i = 0; i < BarcodeRetrunResult.size(); i++) {
- if (
- ErrorIdMap.containsKey(BarcodeRetrunResult[i].Bar_Code__c) ||
- ExistIdMap.containsKey(BarcodeRetrunResult[i].Bar_Code__c)
- ) {
- // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
- continue;
- } else {
- String str =
- '浜у搧绫诲瀷[' +
- BarcodeRetrunResult[i].Product_Type__c +
- ']涓庣敤鎴风殑绫诲瀷[' +
- userPro_Type +
- ']涓嶇';
- ConsumableorderdetailsRecordserror.add(
- new ConsumableorderdetailsInfo(BarcodeRetrunResult[i], str)
- );
- ErrorIdMap.put(
- BarcodeRetrunResult[i].Bar_Code__c,
- BarcodeRetrunResult[i].Bar_Code__c
- );
- }
- }
- }
- AllMap.putAll(ErrorIdMap);
- BarcodeRetrunResult = [
- SELECT
- Id,
- Consumable_order_minor__c,
- Deliver_date__c,
- Asset_Model_No__c,
- Consumable_Product__c,
- Consumable_Product__r.Name,
- Consumable_Product__r.Name__c,
- Name,
- Bar_Code__c,
- Arrive_date__c,
- Dealer_Shipment__c,
- Lose_Flag__c,
- Dealer_Saled__c,
- Return_reason__c,
- Consumable_Shipment_order__c,
- Consumable_Shipment_order__r.Name,
- Send_date__c,
- Consumable_Sale_order__c,
- Consumable_Sale_order__r.Name,
- Used_date__c,
- SerialLotNo__c,
- TracingCode__c,
- Sterilization_limit__c,
- Consumable_ZS_order__c,
- Consumable_ZS_order__r.Name,
- Product_OutDate__c,
- Invoice_Date__c,
- recordtypeid,
- Consumable_Arrived_order__c,
- Box_Piece__c,
- Rrturn_count__c,
- Intra_Trade_List_RMB__c,
- OwnerId,
- SummonsForDirction_det__c,
- Order_Dealer_Info__c,
- HospItal_Name__c,
- Agencyinfo_fromSAP__c,
- Frist_Storage_Agency__c,
- Dealer_Info_text__c,
- Used_account__c,
- Transfer_Time__c,
- Frist_Transfer_Agency__c,
- Arrive_Owner_Work_Location__c,
- Agency_Transfer__c,
- //add by rentx 2020-10-14 start
- ContractNo_text__c /*,ContractNo__c*/,
- // tcm start
- Consumable_order_minor__r.ContractNo__c,
- // tcm end
- //add by rentx 2020-10-14 end
- Report_Product_Expiration__c,
- Intra_Trade_List__c
- FROM Consumable_order_details2__c
- WHERE
- Dealer_Arrive__c = TRUE
- AND (Dealer_Shipment__c = TRUE
- //AND Consumable_Shipment_order__r.SummonsForDirction__c != '浜掔浉璋冭揣')
- OR Dealer_Saled__c = TRUE
- // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
- OR (Dealer_Shipment__c = FALSE
- AND Dealer_Saled__c = FALSE
- AND Lose_Flag__c = TRUE))
- // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 end
- AND Dealer_Info_text__c = :accountName
- AND Bar_Code__c IN :GrListIn
- AND Product_Type__c LIKE :userPro_Typestr
- AND Dealer_Returned__c = FALSE
- AND (Arrive_Owner_Work_Location__c = :userWorkLocation
- OR OwnerId = :System.Label.User_OlympusSystem)
- ORDER BY Box_Piece__c DESC, Name
- ];
- ShowGoodsofReturnList = new List<ConsumableorderdetailsInfo>();
-
- //杩斿搧鏃秈stinct澶勭悊
- if (ArrType == 'ReG') {
- BarcodeRetrunResult = getDistinctZSOrder(BarcodeRetrunResult);
- }
-
- for (Consumable_order_details2__c codc : BarcodeRetrunResult) {
- if (
- ErrorIdMap.containsKey(codc.Bar_Code__c) ||
- ExistIdMap.containsKey(codc.Bar_Code__c)
- ) {
- // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
- continue;
- } else {
- Matcher n = Pattern.compile('[0-9]').matcher(codc.TracingCode__c);
- if (n.find()) {
- // gzw DB202305352696 鍏ュ簱绠$悊缂栫爜楠岃瘉绋嬪簭璋冩暣 start
- if (codc.TracingCode__c.length() == 5) {
- String tr = codc.TracingCode__c;
- String Ctr = tr.substring(tr.length() - 3, tr.length());
- String Btr = tr.substring(tr.length() - 4, tr.length() - 3);
- String Atr = tr.substring(tr.length() - 5, tr.length() - 4);
- if (
- Pattern.compile('[0-9]').matcher(Atr).find() ||
- Pattern.compile('[0-9]').matcher(Ctr).find()
- ) {
- String str = '绠$悊缂栫爜鏈夎锛岃妫�鏌ユ潯褰㈢爜鏁版嵁銆�';
- ConsumableorderdetailsRecordserror.add(
- new ConsumableorderdetailsInfo(codc, str)
- );
- ErrorIdMap.put(codc.Bar_Code__c, codc.Bar_Code__c);
- continue;
+ if(updateconsumableorderdetails2.size() > 0){
+ update updateconsumableorderdetails2;
}
- }
- // String str = '绠$悊缂栫爜涓湁鏁板瓧锛岃涓庣鐞嗗憳纭鏄惁閿欒銆�';
- // ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(codc,str));
- // ErrorIdMap.put(codc.Bar_Code__c,codc.Bar_Code__c);
- // continue;
- // gzw DB202305352696 鍏ュ簱绠$悊缂栫爜楠岃瘉绋嬪簭璋冩暣 end
+ List<Consumable_order_details2__c> insertconsumableorderdetails2 = new List<Consumable_order_details2__c>();
+ for(Consumable_order_details2__c Cod2 : consumableorderdetails2Insert){
+ //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'------4------'));
+ String str = ('000' + i).right(4);
+ // if(str.length() == 1){
+ // str = '0' + str;
+ // }
+ Cod2.Name = consumable_order[0].Name + '-'+ str;
+ Cod2.Consumable_order_minor__c = null;
+ Cod2.Deliver_date__c = Date.today();
+ Cod2.Used_account__c = accountid;
+ Cod2.Consumable_Arrived_order__c = orderMain.id;
+ Cod2.Arrive_date__c = Date.today();
+ // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start
+ if (orderdetails2trMap.containsKey(Cod2.Bar_Code__c)) {
+ //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'------4++++++' + Cod2.Frist_Storage_Agency__c));
+ Cod2.Transfer_Time__c = Cod2.Transfer_Time__c == null ? 1 : Cod2.Transfer_Time__c;
+ Cod2.Agency_Transfer__c = true;
+ Cod2.Frist_Transfer_Agency__c = Cod2.Frist_Transfer_Agency__c == null ? accountName : Cod2.Frist_Transfer_Agency__c;
+ }
+ // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 end
+
+ // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 start
+ Cod2.Agencyinfo_fromSAP__c = Cod2.Agencyinfo_fromSAP__c;
+ //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'------4------' + Cod2.Frist_Storage_Agency__c));
+ Cod2.Frist_Storage_Agency__c = Cod2.Frist_Storage_Agency__c == null ? accountName : Cod2.Frist_Storage_Agency__c;
+ // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 end
+ insertconsumableorderdetails2.add(Cod2);
+ i++;
+ }
+
+ // return null;
+
+ if(insertconsumableorderdetails2.size() >0){
+ insert insertconsumableorderdetails2;
+ }
+
+ if(ins.size()>0){
+ insert ins;
+ }
+ if(orderdetails.size()>0){
+ ControllerUtil.updateOrderDetailsSatus(orderdetails);
+ }
+ //瓒呭嚭鍒拌揣鏁伴噺浜у搧鍙栨秷鏃ユ湡鏇存柊
+ List<Consumable_order_details2__c> needcanceldet = new List<Consumable_order_details2__c>();
+ if(cancellationProList.size() > 0){
+ needcanceldet = [SELECT Id,
+ Cancellation_Date__c
+ FROM Consumable_order_details2__c
+ WHERE Asset_Model_No__c in :cancellationProList
+ AND Consumable_order_minor__c = :ESetId
+ AND Dealer_Arrive__c = FALSE
+ AND Cancellation_Date__c = null ];
+ if(needcanceldet.size() >0){
+ for(Integer a = 0; a < needcanceldet.size(); a++){
+ needcanceldet[a].Cancellation_Date__c = Date.today();
+ needcanceldet[a].Cancellation_Flag__c = true;
+ }
+ ControllerUtil.updateOrderDetailsSatus(needcanceldet);
+ }
+ }
+ List<Consumable_order__c> qs = New List<Consumable_order__c>();
+ qs = [SELECT Id,Name,Order_status__c,Dealer_Info__c,Deliver_date__c,ReturnGs_Upload_Date__c,
+ Order_Reason__c,Order_date__c,
+ Contract_application_decision__c,Order_type__c,Total_num__c,
+ OrderNumber_arrived__c,Delivery_detail_count__c,OrderNumber_notarrive__c
+ FROM Consumable_order__c
+ WHERE Id =:ESetId
+ AND Dealer_Info__c = :accountid];
+ if (qs.size()>0){
+ coc = qs[0];
+ }
+ saveFLGbln = true;
+ alertMessage = '鍒拌揣瀹屾垚銆�';
+ // Integer a = 1/0;
+ }catch(Exception e){
+ Database.rollback(sp);
+ ApexPages.addMessages(e);
+ return null;
}
- if (CheckBarcodeResult.containsKey(codc.Bar_Code__c)) {
- GrList.add(codc.Bar_Code__c);
- if (codc.Dealer_Shipment__c == true) {
- CheckBarcodeResult.put(codc.Bar_Code__c, '宸插嚭搴�');
- ShowGoodsofReturnList.add(new ConsumableorderdetailsInfo(codc));
- }
- // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
- // else{
- // CheckBarcodeResult.put( codc.Bar_Code__c, '宸查攢鍞�');
- // ShowGoodsofReturnList.add( new ConsumableorderdetailsInfo( codc ) );
- // }
- else if (codc.Dealer_Saled__c == true) {
- CheckBarcodeResult.put(codc.Bar_Code__c, '宸查攢鍞�');
- ShowGoodsofReturnList.add(new ConsumableorderdetailsInfo(codc));
- } else {
- CheckBarcodeResult.put(codc.Bar_Code__c, '宸蹭涪澶�');
- ShowGoodsofReturnList.add(new ConsumableorderdetailsInfo(codc));
- }
- // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 end
- } else {
- continue;
+ if(resultcheck.length() > 0){
+ return null;
+ }else if(resultcheckWithoutOrder.size() >0){
+ return null;
+ } else{
+ return UnabletoEdit();
+ // return null;
}
- }
}
+
+ // 杩斿搧妫�鏌ワ紝鍚庡洖搴�
+ public integer GoodsReturnCheck(){
+ List<String> GrListIn = ParseBarCode( barcode );
+ GrList = new List<String>();
+ Map<String,String> CheckBarcodeResult = new Map<String,String>();
+ for( String Str : GrListIn ){
+ CheckBarcodeResult.put( str , 'UnFind');
+ }
+ List<Consumable_order_details2__c> BarcodeRetrunResult =
+ [ SELECT Id,Name,Intra_Trade_List_RMB__c,Asset_Model_No__c,
+ Consumable_Product__c,Consumable_Product__r.Name,
+ Consumable_Product__r.Name__c,Consumable_Product__r.Asset_Model_No__c,
+ Sterilization_limit__c,Deliver_date__c,Bar_Code__c,
+ Arrive_date__c,Send_Date__c,Consumable_order_minor__r.Name,
+ Consumable_order_minor__c,Dealer_Arrive__c,
+ Guarantee_period_for_products__c,CFDA_Status__c,
+ ProductPacking_list_manual__c,Report_Product_Approbation__c,
+ Report_Product_Expiration__c,Box_Piece__c, Rrturn_count__c,
+ Product_Type__c
+ //add by rentx 2020-10-14 start
+ ,ContractNo_text__c/*,ContractNo__c*/
+ // tcm start
+ ,Consumable_order_minor__r.ContractNo__c
+ // tcm end
+ //add by rentx 2020-10-14 end
+ FROM Consumable_order_details2__c
+ WHERE ((Dealer_Arrive__c = true
+ AND( Dealer_Shipment__c = true
+ //AND Consumable_Shipment_order__r.SummonsForDirction__c != '浜掔浉璋冭揣')
+ or Dealer_Saled__c = true
+ )
+ ))
+ AND Dealer_Info_text__c = :accountName
+ AND Bar_Code__c in :GrListIn
+ AND ( not Product_Type__c like :userPro_Typestr)
+ AND Dealer_Returned__c = false
+ AND Arrive_Owner_Work_Location__c =: userWorkLocation
+ ORDER BY Box_Piece__c desc,Name ];
+ if(BarcodeRetrunResult.size()>0){
+ for (Integer i = 0; i < BarcodeRetrunResult.size(); i++) {
+ if(ErrorIdMap.containsKey(BarcodeRetrunResult[i].Bar_Code__c) || ExistIdMap.containsKey(BarcodeRetrunResult[i].Bar_Code__c)){
+ // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
+ continue;
+ }else{
+ String str = '浜у搧绫诲瀷['+BarcodeRetrunResult[i].Product_Type__c+']涓庣敤鎴风殑绫诲瀷['+userPro_Type+']涓嶇';
+ ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(BarcodeRetrunResult[i],str));
+ ErrorIdMap.put(BarcodeRetrunResult[i].Bar_Code__c,BarcodeRetrunResult[i].Bar_Code__c);
+ }
+ }
+ }
+ AllMap.putAll(ErrorIdMap);
+ BarcodeRetrunResult =
+ [ SELECT Id,
+ Consumable_order_minor__c,
+ Deliver_date__c,
+ Asset_Model_No__c,
+ Consumable_Product__c,
+ Consumable_Product__r.Name,
+ Consumable_Product__r.Name__c,
+ Name,
+ Bar_Code__c,
+ Arrive_date__c,
+ Dealer_Shipment__c,
+ Lose_Flag__c,
+ Dealer_Saled__c,
+ Return_reason__c,
+ Consumable_Shipment_order__c,
+ Consumable_Shipment_order__r.Name,
+ Send_date__c,
+ Consumable_Sale_order__c,
+ Consumable_Sale_order__r.Name,
+ Used_date__c,
+ SerialLotNo__c,
+ TracingCode__c,
+ Sterilization_limit__c,
+ Consumable_ZS_order__c,
+ Consumable_ZS_order__r.Name,
+ Product_OutDate__c,
+ Invoice_Date__c,
+ recordtypeid,
+ Consumable_Arrived_order__c,
+ Box_Piece__c,
+ Rrturn_count__c,
+ Intra_Trade_List_RMB__c,
+ OwnerId,
+ SummonsForDirction_det__c,
+ Order_Dealer_Info__c,
+ HospItal_Name__c,
+ Agencyinfo_fromSAP__c,
+ Frist_Storage_Agency__c,
+ Dealer_Info_text__c,
+ Used_account__c,
+ Transfer_Time__c,
+ Frist_Transfer_Agency__c,
+ Arrive_Owner_Work_Location__c,
+ Agency_Transfer__c
+ //add by rentx 2020-10-14 start
+ ,ContractNo_text__c/*,ContractNo__c*/
+ // tcm start
+ ,Consumable_order_minor__r.ContractNo__c
+ // tcm end
+ //add by rentx 2020-10-14 end
+ ,Report_Product_Expiration__c
+ ,Intra_Trade_List__c
+ FROM Consumable_order_details2__c
+ WHERE ((Dealer_Arrive__c = true
+ AND( Dealer_Shipment__c = true
+ //AND Consumable_Shipment_order__r.SummonsForDirction__c != '浜掔浉璋冭揣')
+ or Dealer_Saled__c = true
+ // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
+ or (Dealer_Shipment__c = false and Dealer_Saled__c = false and Lose_Flag__c = true)
+ // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 end
+ )
+ ))
+ AND Dealer_Info_text__c = :accountName
+ AND Bar_Code__c in :GrListIn
+ AND Product_Type__c like :userPro_Typestr
+ AND Dealer_Returned__c = false
+ AND (Arrive_Owner_Work_Location__c =: userWorkLocation
+ OR OwnerId = :System.Label.User_OlympusSystem)
+ ORDER BY Box_Piece__c desc,Name ];
+ ShowGoodsofReturnList = new List<ConsumableorderdetailsInfo>();
+
+ //杩斿搧鏃秈stinct澶勭悊
+ if(ArrType=='ReG'){
+ BarcodeRetrunResult = getDistinctZSOrder(BarcodeRetrunResult);
+ }
+
+ for( Consumable_order_details2__c codc : BarcodeRetrunResult ){
+ if(ErrorIdMap.containsKey(codc.Bar_Code__c) || ExistIdMap.containsKey(codc.Bar_Code__c)){
+ // 璺宠繃宸茬粡澶勭悊鐨勬秷鑰楀搧鏄庣粏
+ continue;
+ }else{
+
+ Matcher n = Pattern.compile('[0-9]').matcher(codc.TracingCode__c);
+ if(n.find()){
+ String str = '绠$悊缂栫爜涓湁鏁板瓧锛岃涓庣鐞嗗憳纭鏄惁閿欒銆�';
+ ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(codc,str));
+ ErrorIdMap.put(codc.Bar_Code__c,codc.Bar_Code__c);
+ continue;
+ }
+ if( CheckBarcodeResult.containsKey( codc.Bar_Code__c )){
+ GrList.add(codc.Bar_Code__c);
+ if( codc.Dealer_Shipment__c == true){
+ CheckBarcodeResult.put( codc.Bar_Code__c, '宸插嚭搴�' );
+ ShowGoodsofReturnList.add( new ConsumableorderdetailsInfo( codc ) );
+ }
+ // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
+ // else{
+ // CheckBarcodeResult.put( codc.Bar_Code__c, '宸查攢鍞�');
+ // ShowGoodsofReturnList.add( new ConsumableorderdetailsInfo( codc ) );
+ // }
+ else if( codc.Dealer_Saled__c == true ){
+ CheckBarcodeResult.put( codc.Bar_Code__c, '宸查攢鍞�');
+ ShowGoodsofReturnList.add( new ConsumableorderdetailsInfo( codc ) );
+ }else{
+ CheckBarcodeResult.put( codc.Bar_Code__c, '宸蹭涪澶�');
+ ShowGoodsofReturnList.add( new ConsumableorderdetailsInfo( codc ) );
+ }
+ // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 end
+ }else{
+ continue;
+ }
+ }
+ }
return BarcodeRetrunResult.size();
}
- // 鍗曚綅涓轰釜鐨凚arcode瀵瑰簲鐨勫嚭搴撳崟
- public integer Getconsumableorderdetails2Nobox() {
- consumableorderdetails2Nobox = new List<Consumable_order_details2__c>();
- BarcodeCntMap.clear();
- consumableorderdetails2Nobox = [
- SELECT
- Id,
- Consumable_order_minor__c,
- Deliver_date__c,
- Asset_Model_No__c,
- Consumable_Product__c,
- Consumable_Product__r.Name,
- Consumable_Product__r.Name__c,
- Name,
- Bar_Code__c,
- Arrive_date__c,
- Dealer_Shipment__c,
- Dealer_Saled__c,
- Return_reason__c,
- Consumable_Shipment_order__c,
- Send_date__c,
- Consumable_Sale_order__c,
- Used_date__c,
- SerialLotNo__c,
- TracingCode__c,
- Sterilization_limit__c,
- Consumable_ZS_order__c,
- Consumable_ZS_order__r.Name,
- Product_OutDate__c,
- Invoice_Date__c,
- recordtypeid,
- Consumable_Arrived_order__c,
- Box_Piece__c,
- RemoveBox_No__c,
- RemoveBox_date__c,
- Rrturn_count__c,
- Dealer_Info_text__c,
- Arrive_Owner_Work_Location__c,
- Intra_Trade_List_RMB__c,
- //add by rentx 2020-10-13 start 杩斿搧鏃� 鏂版暟鎹褰昐AP鍚堝悓鍙�
- ContractNo_text__c /*,ContractNo__c*/,
- // tcm start
- Consumable_order_minor__r.ContractNo__c,
- // tcm end
- Report_Product_Expiration__c,
- //add by rentx 2020-10-13 end
- Intra_Trade_List__c
- //gzw 鎵嬪姩鍏ュ簱 榛樿浜у搧鍗曚环 20230307
- FROM Consumable_order_details2__c
- WHERE
- // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
- // (Dealer_Shipment__c = true or Dealer_Saled__c = true)
- (Dealer_Shipment__c = TRUE
- OR Dealer_Saled__c = TRUE
- OR (Dealer_Shipment__c = FALSE
- AND Dealer_Saled__c = FALSE
- AND Lose_Flag__c = TRUE))
- // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 end
- AND Dealer_Info_text__c = :accountName
- AND Bar_Code__c IN :noboxBarcodeList
- AND Arrive_Owner_Work_Location__c = :userWorkLocation
- AND Dealer_Returned__c = FALSE
- AND Box_Piece__c = '涓�'
- ORDER BY Consumable_ZS_order__c, RemoveBox_No__c
- ];
+ // 鍗曚綅涓轰釜鐨凚arcode瀵瑰簲鐨勫嚭搴撳崟
+ public integer Getconsumableorderdetails2Nobox(){
+ consumableorderdetails2Nobox = new List<Consumable_order_details2__c>();
+ BarcodeCntMap.clear();
+ consumableorderdetails2Nobox =
+ [ SELECT Id,
+ Consumable_order_minor__c,
+ Deliver_date__c,
+ Asset_Model_No__c,
+ Consumable_Product__c,
+ Consumable_Product__r.Name,
+ Consumable_Product__r.Name__c,
+ Name,
+ Bar_Code__c,
+ Arrive_date__c,
+ Dealer_Shipment__c,
+ Dealer_Saled__c,
+ Return_reason__c,
+ Consumable_Shipment_order__c,
+ Send_date__c,
+ Consumable_Sale_order__c,
+ Used_date__c,
+ SerialLotNo__c,
+ TracingCode__c,
+ Sterilization_limit__c,
+ Consumable_ZS_order__c,
+ Consumable_ZS_order__r.Name,
+ Product_OutDate__c,
+ Invoice_Date__c,
+ recordtypeid,
+ Consumable_Arrived_order__c,
+ Box_Piece__c,
+ RemoveBox_No__c,
+ RemoveBox_date__c,
+ Rrturn_count__c,
+ Dealer_Info_text__c,
+ Arrive_Owner_Work_Location__c,
+ Intra_Trade_List_RMB__c
+ //add by rentx 2020-10-13 start 杩斿搧鏃� 鏂版暟鎹褰昐AP鍚堝悓鍙�
+ ,ContractNo_text__c/*,ContractNo__c*/
+ // tcm start
+ ,Consumable_order_minor__r.ContractNo__c
+ // tcm end
+ ,Report_Product_Expiration__c
+ //add by rentx 2020-10-13 end
+ ,Intra_Trade_List__c
+ //gzw 鎵嬪姩鍏ュ簱 榛樿浜у搧鍗曚环 20230307
+ FROM Consumable_order_details2__c
+ WHERE
+ // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
+ // (Dealer_Shipment__c = true or Dealer_Saled__c = true)
+ (Dealer_Shipment__c = true or Dealer_Saled__c = true or (Dealer_Shipment__c = false and Dealer_Saled__c = false and Lose_Flag__c = true))
+ // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 end
+ AND Dealer_Info_text__c = :accountName
+ AND Bar_Code__c in :noboxBarcodeList
+ AND Arrive_Owner_Work_Location__c =: userWorkLocation
+ AND Dealer_Returned__c = false
+ AND Box_Piece__c = '涓�'
+ ORDER BY Consumable_ZS_order__c,RemoveBox_No__c];
- AggregateResult[] results = [
- SELECT Consumable_ZS_order__c, Bar_Code__c, count(Id) recordCount
- FROM Consumable_order_details2__c
- WHERE
- Dealer_Arrive__c = TRUE
- // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
- // AND (Dealer_Shipment__c= true OR Dealer_Saled__c = true)
- AND (Dealer_Shipment__c = TRUE
- OR Dealer_Saled__c = TRUE
- OR (Dealer_Shipment__c = FALSE
- AND Dealer_Saled__c = FALSE
- AND Lose_Flag__c = TRUE))
- // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 end
- AND Dealer_Returned__c = FALSE
- AND Bar_Code__c IN :noboxBarcodeList
- AND Arrive_Owner_Work_Location__c = :userWorkLocation
- AND Box_Piece__c = '涓�'
- AND Dealer_Info_text__c = :accountName
- GROUP BY Consumable_ZS_order__c, Bar_Code__c
- ];
+ AggregateResult[] results = [SELECT Consumable_ZS_order__c,Bar_Code__c,count(Id) recordCount
+ FROM Consumable_order_details2__c
+ WHERE Dealer_Arrive__c = true
+ // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
+ // AND (Dealer_Shipment__c= true OR Dealer_Saled__c = true)
+ AND (Dealer_Shipment__c= true OR Dealer_Saled__c = true or(Dealer_Shipment__c = false and Dealer_Saled__c = false and Lose_Flag__c = true))
+ // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 end
+ AND Dealer_Returned__c = false
+ AND Bar_Code__c in :noboxBarcodeList
+ AND Arrive_Owner_Work_Location__c =: userWorkLocation
+ AND Box_Piece__c = '涓�'
+ AND Dealer_Info_text__c = :accountName
+ GROUP BY Consumable_ZS_order__c,Bar_Code__c];
- for (AggregateResult ar : results) {
- String key =
- '' +
- ar.get('Consumable_ZS_order__c') +
- ar.get('Bar_Code__c');
- BarcodeCntMap.put(key, Integer.valueOf(ar.get('recordCount')));
- }
-
- return consumableorderdetails2Nobox.size();
- }
-
- //distinct
- public List<Consumable_order_details2__c> getDistinctZSOrder(
- List<Consumable_order_details2__c> duplicates
- ) {
- List<Consumable_order_details2__c> distinctOrder = new List<Consumable_order_details2__c>();
-
- for (Consumable_order_details2__c details2 : duplicates) {
- Boolean found = false;
- for (Consumable_order_details2__c result : distinctOrder) {
- if (
- details2.Consumable_ZS_order__c == result.Consumable_ZS_order__c &&
- details2.Bar_Code__c == result.Bar_Code__c
- ) {
- found = true;
- break;
+ for(AggregateResult ar: results){
+ String key = '' + ar.get('Consumable_ZS_order__c') + ar.get('Bar_Code__c');
+ BarcodeCntMap.put(key, Integer.valueOf(ar.get('recordCount')));
}
- }
-
- if (!found) {
- distinctOrder.add(details2);
-
- if (details2.Box_Piece__c == '涓�')
- noboxBarcodeList.add(details2.Bar_Code__c);
- }
+
+ return consumableorderdetails2Nobox.size();
}
- return distinctOrder;
- }
- // Update杩斿搧鏄庣粏淇℃伅
- public Pagereference UpdateGoodsOfReturn() {
- if (ShowGoodsofReturnList == null) {
- GoodsReturnCheck();
- }
- Getconsumableorderdetails2Nobox();
-
- Savepoint sp = Database.setSavepoint();
- boolean hasReturnGoods = false;
- boolean hasLoseGoods = false;
- try {
- if (ShowGoodsofReturnList.size() > 0 || consumableInventory.size() > 0) {
- Consumable_order__c Return_Order_Sheet = new Consumable_order__c();
- Return_Order_Sheet.Name = '*';
- Return_Order_Sheet.Order_status__c = '鎵瑰噯';
- Return_Order_Sheet.ReturnGs_Uploader_ID__c = UserInfo.getUserId();
- Return_Order_Sheet.ReturnGs_Upload_Date__c = Date.today();
- Return_Order_Sheet.Order_type__c = '杩斿搧';
- Return_Order_Sheet.RecordTypeid = System.Label.Dealer_Returned_Label;
- Return_Order_Sheet.Order_ProType__c = userPro_Type;
- insert Return_Order_Sheet;
- return_Order_id = Return_Order_Sheet.id;
- List<Consumable_order__c> consumable_order_ret = [
- SELECT Name
- FROM Consumable_order__c
- WHERE id = :Return_Order_Sheet.id
- ];
-
- //2017-07-03 鍒拌揣璁㈠崟
- Consumable_order__c Arrived_Order_Sheet = new Consumable_order__c();
- Arrived_Order_Sheet.Name = '*';
- Arrived_Order_Sheet.Order_status__c = '鎵瑰噯';
- Arrived_Order_Sheet.Order_type__c = '鍒拌揣';
- Arrived_Order_Sheet.Dealer_Info__c = accountid;
- Arrived_Order_Sheet.RecordTypeid = System.Label.RT_ConOrder_Arrive;
- Arrived_Order_Sheet.Order_ProType__c = userPro_Type;
- insert Arrived_Order_Sheet;
- List<Consumable_order__c> consumable_order_arr = [
- SELECT Name
- FROM Consumable_order__c
- WHERE id = :Arrived_Order_Sheet.id
- ];
-
- // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
- // 铏氭嫙鐩樼偣鍗�
- Consumable_order__c Inventory_Order_Sheet = new Consumable_order__c();
- Inventory_Order_Sheet.Name = '*';
- Inventory_Order_Sheet.Order_status__c = '鎵瑰噯';
- Inventory_Order_Sheet.ReturnGs_Uploader_ID__c = UserInfo.getUserId();
- Inventory_Order_Sheet.Inventory_date__c = Date.today();
- Inventory_Order_Sheet.Dealer_Info__c = accountid;
- Inventory_Order_Sheet.ReturnGs_Upload_Date__c = Date.today();
- Inventory_Order_Sheet.Order_type__c = '鐩樼偣';
- Inventory_Order_Sheet.RecordTypeid = System.Label.RT_ConOrder_Inventory;
- Inventory_Order_Sheet.Order_ProType__c = userPro_Type;
- insert Inventory_Order_Sheet;
- inventory_Order_id = Inventory_Order_Sheet.id;
- List<Consumable_order__c> consumable_order_Inv = [
- SELECT Name
- FROM Consumable_order__c
- WHERE id = :Inventory_Order_Sheet.id
- ];
- // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 end
-
- List<Consumable_order_details2__c> codcList = new List<Consumable_order_details2__c>();
- //鏂拌杩斿搧瀵瑰簲鐨勪骇鍝佹槑缁�
- List<Consumable_order_details2__c> codcorderdetList = new List<Consumable_order_details2__c>();
- //杩斿搧鍘熷洜,杩斿搧鏁伴噺妫�鏌�
- for (ConsumableorderdetailsInfo codi : ShowGoodsofReturnList) {
- if (
- codi.esd.Box_Piece__c == '涓�' &&
- (codi.esd.Rrturn_count__c == null ||
- String.valueof(codi.esd.Rrturn_count__c) == '' ||
- codi.esd.Rrturn_count__c <= 0)
- ) {
- continue;
- }
-
- if (
- codi.esd.Return_reason__c == null ||
- codi.esd.Return_reason__c == ''
- ) {
- if (isLwc) {
- returnError = '璇疯ˉ鍏呰繑鍝佸師鍥�';
- } else {
- codi.esd.Return_reason__c.addError('璇疯ˉ鍏呰繑鍝佸師鍥�');
+ //distinct
+ public List<Consumable_order_details2__c> getDistinctZSOrder(List<Consumable_order_details2__c> duplicates){
+ List<Consumable_order_details2__c> distinctOrder = new List<Consumable_order_details2__c>();
+
+ for(Consumable_order_details2__c details2 : duplicates){
+ Boolean found = false;
+ for(Consumable_order_details2__c result : distinctOrder){
+ if(details2.Consumable_ZS_order__c == result.Consumable_ZS_order__c
+ && details2.Bar_Code__c == result.Bar_Code__c){
+ found = true;
+ break;
+ }
}
- return null;
- }
- if (codi.esd.Box_Piece__c == '涓�' && codi.esd.Rrturn_count__c > 0) {
- String key =
- '' +
- codi.esd.Consumable_ZS_order__c +
- codi.esd.Bar_Code__c;
- Integer deliverycnt = BarcodeCntMap.get(key);
- if (codi.esd.Rrturn_count__c > deliverycnt) {
- if (isLwc) {
- returnError = '瓒呭嚭鍑哄簱鏁伴噺';
- } else {
- codi.esd.Rrturn_count__c.addError('瓒呭嚭鍑哄簱鏁伴噺');
- }
- return null;
- }
- }
+ if(!found){
+ distinctOrder.add(details2);
+
+ if(details2.Box_Piece__c == '涓�') noboxBarcodeList.add(details2.Bar_Code__c);
+ }
}
+ return distinctOrder;
+ }
- Integer tempNo = 0;
- // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
- List<Consumable_order_details2__c> conOrderDetail2InList = new List<Consumable_order_details2__c>();
- // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
- for (ConsumableorderdetailsInfo codi : ShowGoodsofReturnList) {
- Consumable_order_details2__c codcorderdet = new Consumable_order_details2__c();
+ // Update杩斿搧鏄庣粏淇℃伅
+ public Pagereference UpdateGoodsOfReturn(){
+ if( ShowGoodsofReturnList==null){
+ GoodsReturnCheck();
+ }
+ Getconsumableorderdetails2Nobox();
- //鍗曚綅=涓�
- if (
- codi.esd.Box_Piece__c == '涓�' &&
- (codi.esd.Rrturn_count__c == null ||
- String.valueof(codi.esd.Rrturn_count__c) == '' ||
- codi.esd.Rrturn_count__c <= 0)
- ) {
- continue;
- }
+ Savepoint sp = Database.setSavepoint();
+ boolean hasReturnGoods = false;
+ boolean hasLoseGoods = false;
+ try{
+ if( ShowGoodsofReturnList.size() >0 || consumableInventory.size()>0 ){
- if (codi.esd.Box_Piece__c == '涓�' && codi.esd.Rrturn_count__c > 0) {
- hasReturnGoods = true;
-
- Integer cnt = 1;
- for (
- Consumable_order_details2__c codctmp : consumableorderdetails2Nobox
- ) {
- if (
- codctmp.Consumable_ZS_order__c ==
- codi.esd.Consumable_ZS_order__c &&
- codctmp.Bar_Code__c == codi.esd.Bar_Code__c
- ) {
- Consumable_order_details2__c esd = codctmp;
- // esd.Consumable_Return_order__c = Return_Order_Sheet.id;
- esd.Return_reason__c = codi.esd.Return_reason__c;
- esd.Return_date__c = Date.today();
- // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
- // esd.Return_reason__c = codi.esd.Return_reason__c;
- // esd.Return_date__c = Date.today();
- // esd.Consumable_Return_order__c = Return_Order_Sheet.id;
- if (
- codi.esd.Dealer_Saled__c == false &&
- codi.esd.Dealer_Shipment__c == false &&
- codi.esd.Lose_Flag__c == true
- ) {
- // esd.Lose_Flag__c = false;
- esd.Consumable_Inventory_order__c = Inventory_Order_Sheet.id;
- conOrderDetail2InList.add(esd);
- hasLoseGoods = true;
- } else {
- // esd.Return_date__c = Date.today();
- esd.Consumable_Return_order__c = Return_Order_Sheet.id;
- }
- // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 end
- esd.ReturnGs_Uploader_ID__c = UserInfo.getUserId();
-
- //淇敼杩斿搧鎵�鏈変汉
- esd.OwnerId = UserInfo.getUserId();
- esd.RecordTypeId = System.Label.RT_ConOrderDetail2_Return;
-
- //Consumable_order__c coc = [select name from Consumable_order__c where Id =:Arrived_Order_Sheet.id];
- codcorderdet = new Consumable_order_details2__c();
- codcorderdet.Name =
- consumable_order_arr[0].name +
- '-' +
- String.valueOf(++tempNo).leftPad(4, '0');
- codcorderdet.Consumable_order_minor__c = codi.esd.Consumable_order_minor__c;
- codcorderdet.Consumable_Arrived_order__c = Arrived_Order_Sheet.id;
- //淇敼鍒拌揣鎵�鏈変汉
- codcorderdet.OwnerId = UserInfo.getUserId();
- codcorderdet.Arrive_date__c = Date.today();
- codcorderdet.Consumable_Product__c = codi.esd.Consumable_Product__c;
- codcorderdet.Asset_Model_No__c = codi.esd.Asset_Model_No__c;
- codcorderdet.Bar_Code__c = codi.esd.Bar_Code__c;
- codcorderdet.Deliver_date__c = codi.esd.Deliver_date__c;
- codcorderdet.SerialLotNo__c = codi.esd.SerialLotNo__c;
- codcorderdet.TracingCode__c = codi.esd.TracingCode__c;
- codcorderdet.Sterilization_limit__c = codi.esd.Sterilization_limit__c;
- //gzw 鎵嬪姩鍏ュ簱 榛樿浜у搧鍗曚环 20230307
- codcorderdet.Intra_Trade_List_RMB__c = (codi.esd.Intra_Trade_List_RMB__c ==
- null ||
- codi.esd.Intra_Trade_List_RMB__c == 0)
- ? codi.esd.Intra_Trade_List__c
- : codi.esd.Intra_Trade_List_RMB__c;
- codcorderdet.RemoveBox_No__c = codctmp.RemoveBox_No__c;
- codcorderdet.RemoveBox_date__c = codctmp.RemoveBox_date__c;
- codcorderdet.Box_Piece__c = codctmp.Box_Piece__c;
-
- //add by rentx 2020-10-13 start 杩斿搧鏃舵柊鏁版嵁璁板綍SAP鍚堝悓鍙�
- // codcorderdet.ContractNo_text__c= codctmp.ContractNo__c;
- // tcm start
- if (
- String.isBlank(
- codctmp.Consumable_order_minor__r.ContractNo__c
- )
- ) {
- codcorderdet.ContractNo_text__c = codctmp.ContractNo_text__c;
- } else {
- codcorderdet.ContractNo_text__c = codctmp.Consumable_order_minor__r.ContractNo__c;
- }
- // tcm end
- //add by rentx 2020-10-13 end 杩斿搧鏃舵柊鏁版嵁璁板綍SAP鍚堝悓鍙�
+ Consumable_order__c Return_Order_Sheet = new Consumable_order__c();
+ Return_Order_Sheet.Name ='*';
+ Return_Order_Sheet.Order_status__c = '鎵瑰噯';
+ Return_Order_Sheet.ReturnGs_Uploader_ID__c = UserInfo.getUserId();
+ Return_Order_Sheet.ReturnGs_Upload_Date__c = Date.today();
+ Return_Order_Sheet.Order_type__c = '杩斿搧';
+ Return_Order_Sheet.RecordTypeid =System.Label.Dealer_Returned_Label;
+ Return_Order_Sheet.Order_ProType__c = userPro_Type;
+ insert Return_Order_Sheet;
+ return_Order_id = Return_Order_Sheet.id;
+ List<Consumable_order__c> consumable_order_ret = [SELECT Name FROM Consumable_order__c WHERE id =:Return_Order_Sheet.id];
+
+ //2017-07-03 鍒拌揣璁㈠崟
+ Consumable_order__c Arrived_Order_Sheet = new Consumable_order__c();
+ Arrived_Order_Sheet.Name ='*';
+ Arrived_Order_Sheet.Order_status__c = '鎵瑰噯';
+ Arrived_Order_Sheet.Order_type__c = '鍒拌揣';
+ Arrived_Order_Sheet.Dealer_Info__c =accountid;
+ Arrived_Order_Sheet.RecordTypeid =System.Label.RT_ConOrder_Arrive;
+ Arrived_Order_Sheet.Order_ProType__c = userPro_Type;
+ insert Arrived_Order_Sheet;
+ List<Consumable_order__c> consumable_order_arr = [SELECT Name FROM Consumable_order__c WHERE id =:Arrived_Order_Sheet.id];
// WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
- if (hasLoseGoods) {
- codcorderdet.loseInventory__c = true;
- }
+ // 铏氭嫙鐩樼偣鍗�
+ Consumable_order__c Inventory_Order_Sheet = new Consumable_order__c();
+ Inventory_Order_Sheet.Name ='*';
+ Inventory_Order_Sheet.Order_status__c = '鎵瑰噯';
+ Inventory_Order_Sheet.ReturnGs_Uploader_ID__c = UserInfo.getUserId();
+ Inventory_Order_Sheet.Inventory_date__c = Date.today();
+ Inventory_Order_Sheet.Dealer_Info__c =accountid;
+ Inventory_Order_Sheet.ReturnGs_Upload_Date__c = Date.today();
+ Inventory_Order_Sheet.Order_type__c = '鐩樼偣';
+ Inventory_Order_Sheet.RecordTypeid = System.Label.RT_ConOrder_Inventory;
+ Inventory_Order_Sheet.Order_ProType__c = userPro_Type;
+ insert Inventory_Order_Sheet;
+ inventory_Order_id = Inventory_Order_Sheet.id;
+ List<Consumable_order__c> consumable_order_Inv = [SELECT Name FROM Consumable_order__c WHERE id =:Inventory_Order_Sheet.id];
// WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 end
- // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 start
- // 杩斿搧鏃讹紝鈶犺拷鍔犲�熻皟鍊熷嚭鏂逛俊鎭� 鈶′繚鐣欏�熻皟淇℃伅 鈶繚瀛楽AP鍜岀粡閿�鍟嗛娆″彂璐х粡閿�鍟�
- codcorderdet.Used_account__c = codi.esd.Used_account__c;
- codcorderdet.Transfer_Time__c = codi.esd.Transfer_Time__c;
- codcorderdet.Frist_Transfer_Agency__c = codi.esd.Frist_Transfer_Agency__c;
- codcorderdet.Agency_Transfer__c = codi.esd.Agency_Transfer__c;
+ List<Consumable_order_details2__c> codcList = new List<Consumable_order_details2__c>();
+ //鏂拌杩斿搧瀵瑰簲鐨勪骇鍝佹槑缁�
+ List<Consumable_order_details2__c> codcorderdetList = new List<Consumable_order_details2__c>();
+ //杩斿搧鍘熷洜,杩斿搧鏁伴噺妫�鏌�
+ for( ConsumableorderdetailsInfo codi : ShowGoodsofReturnList ){
+ if (codi.esd.Box_Piece__c =='涓�' && (
+ codi.esd.Rrturn_count__c == null ||
+ String.valueof(codi.esd.Rrturn_count__c) =='' ||
+ codi.esd.Rrturn_count__c <= 0)){
+ continue;
+ }
- codcorderdet.Agencyinfo_fromSAP__c = codi.esd.Agencyinfo_fromSAP__c;
- //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'------1------' + codi.esd.Frist_Storage_Agency__c));
- codcorderdet.Frist_Storage_Agency__c = codi.esd.Frist_Storage_Agency__c ==
- null
- ? codi.esd.Dealer_Info_text__c
- : codi.esd.Frist_Storage_Agency__c;
- // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 end
- codcorderdetList.add(codcorderdet);
- codcList.add(esd);
+ if(codi.esd.Return_reason__c==null||codi.esd.Return_reason__c==''){
+ codi.esd.Return_reason__c.addError('璇疯ˉ鍏呰繑鍝佸師鍥�');
+ return null;
+ }
- cnt++;
- if (cnt > codi.esd.Rrturn_count__c)
- break;
- }
- }
- } else {
- hasReturnGoods = true;
- //鍗曚綅=鐩�
- //changeinvoiceInfo(codi.esd);
- //Consumable_order__c coc = [select name from Consumable_order__c where Id =:Arrived_Order_Sheet.id];
- // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
- codi.esd.Return_date__c = Date.today();
- // codi.esd.Consumable_Return_order__c = Return_Order_Sheet.id;
- if (
- codi.esd.Dealer_Saled__c == false &&
- codi.esd.Dealer_Shipment__c == false &&
- codi.esd.Lose_Flag__c == true
- ) {
- codi.esd.Lose_Flag__c = false;
- codi.esd.Return_reason__c = '';
- codi.esd.Consumable_Inventory_order__c = Inventory_Order_Sheet.id;
- conOrderDetail2InList.add(codi.esd);
- hasLoseGoods = true;
- } else {
- // codi.esd.Return_date__c = Date.today();
- codi.esd.Consumable_Return_order__c = Return_Order_Sheet.id;
- }
- // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 end
- codi.esd.ReturnGs_Uploader_ID__c = UserInfo.getUserId();
- // codi.esd.Consumable_Return_order__c = Return_Order_Sheet.id;
- //淇敼杩斿搧鎵�鏈変汉
- codi.esd.OwnerId = UserInfo.getUserId();
- codi.esd.RecordTypeId = System.Label.RT_ConOrderDetail2_Return;
- codcorderdet.Name =
- consumable_order_arr[0].name +
- '-' +
- String.valueOf(++tempNo).leftPad(4, '0');
- codcorderdet.Consumable_order_minor__c = codi.esd.Consumable_order_minor__c;
- codcorderdet.Consumable_Arrived_order__c = Arrived_Order_Sheet.id;
- //淇敼鍒拌揣鎵�鏈変汉
- codcorderdet.OwnerId = UserInfo.getUserId();
- codcorderdet.Arrive_date__c = Date.today();
- codcorderdet.Consumable_Product__c = codi.esd.Consumable_Product__c;
- codcorderdet.Asset_Model_No__c = codi.esd.Asset_Model_No__c;
- codcorderdet.Bar_Code__c = codi.esd.Bar_Code__c;
- codcorderdet.Deliver_date__c = codi.esd.Deliver_date__c;
- codcorderdet.SerialLotNo__c = codi.esd.SerialLotNo__c;
- codcorderdet.TracingCode__c = codi.esd.TracingCode__c;
- codcorderdet.Sterilization_limit__c = codi.esd.Sterilization_limit__c;
- //gzw 鎵嬪姩鍏ュ簱 榛樿浜у搧鍗曚环 20230307
- codcorderdet.Intra_Trade_List_RMB__c = (codi.esd.Intra_Trade_List_RMB__c ==
- null ||
- codi.esd.Intra_Trade_List_RMB__c == 0)
- ? codi.esd.Intra_Trade_List__c
- : codi.esd.Intra_Trade_List_RMB__c;
- // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
- if (hasLoseGoods) {
- codcorderdet.loseInventory__c = true;
- }
- // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 end
- // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 start
- // 杩斿搧鏃讹紝鈶犺拷鍔犲�熻皟鍊熷嚭鏂逛俊鎭� 鈶′繚鐣欏�熻皟淇℃伅 鈶繚瀛楽AP鍜岀粡閿�鍟嗛娆″彂璐х粡閿�鍟�
- codcorderdet.Used_account__c = codi.esd.Used_account__c;
- codcorderdet.Transfer_Time__c = codi.esd.Transfer_Time__c;
- codcorderdet.Frist_Transfer_Agency__c = codi.esd.Frist_Transfer_Agency__c;
- codcorderdet.Agency_Transfer__c = codi.esd.Agency_Transfer__c;
- codcorderdet.Agencyinfo_fromSAP__c = codi.esd.Agencyinfo_fromSAP__c;
- //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'------2------' + codi.esd.Frist_Storage_Agency__c));
- codcorderdet.Frist_Storage_Agency__c = codi.esd.Frist_Storage_Agency__c ==
- null
- ? codi.esd.Dealer_Info_text__c
- : codi.esd.Frist_Storage_Agency__c;
- // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 end
+ if(codi.esd.Box_Piece__c=='涓�' && codi.esd.Rrturn_count__c > 0){
+ String key = '' + codi.esd.Consumable_ZS_order__c + codi.esd.Bar_Code__c;
+ Integer deliverycnt = BarcodeCntMap.get(key);
+ if(codi.esd.Rrturn_count__c > deliverycnt){
+ codi.esd.Rrturn_count__c.addError('瓒呭嚭鍑哄簱鏁伴噺');
+ return null;
+ }
+ }
+ }
- //add by rentx 2020-10-13 start 杩斿搧鏃舵柊鏁版嵁璁板綍SAP鍚堝悓鍙�
- // codcorderdet.ContractNo_text__c = /*codi.esd.ContractNo__c*/;
- // tcm start
- if (
- String.isBlank(codi.esd.Consumable_order_minor__r.ContractNo__c)
- ) {
- codcorderdet.ContractNo_text__c = codi.esd.ContractNo_text__c;
- } else {
- codcorderdet.ContractNo_text__c = codi.esd.Consumable_order_minor__r.ContractNo__c;
- }
- // tcm end
- //add by rentx 2020-10-13 end 杩斿搧鏃舵柊鏁版嵁璁板綍SAP鍚堝悓鍙�
+ Integer tempNo=0;
+ // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
+ List<Consumable_order_details2__c> conOrderDetail2InList = new List<Consumable_order_details2__c>();
+ // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
+ for( ConsumableorderdetailsInfo codi : ShowGoodsofReturnList ){
+ Consumable_order_details2__c codcorderdet = new Consumable_order_details2__c();
+
+ //鍗曚綅=涓�
+ if (codi.esd.Box_Piece__c =='涓�' && (
+ codi.esd.Rrturn_count__c == null ||
+ String.valueof(codi.esd.Rrturn_count__c) =='' ||
+ codi.esd.Rrturn_count__c <= 0)){
+ continue;
+ }
- codcorderdetList.add(codcorderdet);
- codcList.add(codi.esd);
- }
- }
+ if(codi.esd.Box_Piece__c=='涓�' && codi.esd.Rrturn_count__c > 0){
+ hasReturnGoods = true;
- //鏄庣粏2涓嶅瓨鍦ㄧ殑瀵瑰簲鐨勫埌璐ц鍗曟槑缁� 2017-07-05
- Integer i = 1;
- //for(ConsumableorderdetailsInfo ass : consumableInventoryUse){
- for (ConsumableorderdetailsInfo ass : consumableInventory) {
- hasReturnGoods = true;
- Consumable_order_details2__c codcorderdetail = new Consumable_order_details2__c();
- Consumable_order_details2__c retorddetail = new Consumable_order_details2__c();
- String str = ('000' + i).right(4);
- // if(str.length() == 1){
- // str = '0' + str;
- // }
+ Integer cnt = 1;
+ for(Consumable_order_details2__c codctmp : consumableorderdetails2Nobox ){
+ if(codctmp.Consumable_ZS_order__c == codi.esd.Consumable_ZS_order__c && codctmp.Bar_Code__c == codi.esd.Bar_Code__c){
+ Consumable_order_details2__c esd = codctmp;
+ // esd.Consumable_Return_order__c = Return_Order_Sheet.id;
+ esd.Return_reason__c = codi.esd.Return_reason__c;
+ esd.Return_date__c = Date.today();
+ // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
+ // esd.Return_reason__c = codi.esd.Return_reason__c;
+ // esd.Return_date__c = Date.today();
+ // esd.Consumable_Return_order__c = Return_Order_Sheet.id;
+ if(codi.esd.Dealer_Saled__c == false && codi.esd.Dealer_Shipment__c == false && codi.esd.Lose_Flag__c == true){
+ // esd.Lose_Flag__c = false;
+ esd.Consumable_Inventory_order__c = Inventory_Order_Sheet.id;
+ conOrderDetail2InList.add(esd);
+ hasLoseGoods = true;
+ }
+ else{
+ // esd.Return_date__c = Date.today();
+ esd.Consumable_Return_order__c = Return_Order_Sheet.id;
+
+ }
+ // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 end
+ esd.ReturnGs_Uploader_ID__c = UserInfo.getUserId();
+
+ //淇敼杩斿搧鎵�鏈変汉
+ esd.OwnerId = UserInfo.getUserId();
+ esd.RecordTypeId = System.Label.RT_ConOrderDetail2_Return;
+
+ //Consumable_order__c coc = [select name from Consumable_order__c where Id =:Arrived_Order_Sheet.id];
+ codcorderdet = new Consumable_order_details2__c();
+ codcorderdet.Name = consumable_order_arr[0].name + '-' + String.valueOf(++tempNo).leftPad(4,'0');
+ codcorderdet.Consumable_order_minor__c = codi.esd.Consumable_order_minor__c;
+ codcorderdet.Consumable_Arrived_order__c = Arrived_Order_Sheet.id;
+ //淇敼鍒拌揣鎵�鏈変汉
+ codcorderdet.OwnerId = UserInfo.getUserId();
+ codcorderdet.Arrive_date__c = Date.today();
+ codcorderdet.Consumable_Product__c = codi.esd.Consumable_Product__c;
+ codcorderdet.Asset_Model_No__c = codi.esd.Asset_Model_No__c;
+ codcorderdet.Bar_Code__c = codi.esd.Bar_Code__c;
+ codcorderdet.Deliver_date__c = codi.esd.Deliver_date__c;
+ codcorderdet.SerialLotNo__c = codi.esd.SerialLotNo__c;
+ codcorderdet.TracingCode__c = codi.esd.TracingCode__c;
+ codcorderdet.Sterilization_limit__c = codi.esd.Sterilization_limit__c;
+ //gzw 鎵嬪姩鍏ュ簱 榛樿浜у搧鍗曚环 20230307
+ codcorderdet.Intra_Trade_List_RMB__c = (codi.esd.Intra_Trade_List_RMB__c == null || codi.esd.Intra_Trade_List_RMB__c == 0) ? codi.esd.Intra_Trade_List__c : codi.esd.Intra_Trade_List_RMB__c;
+ codcorderdet.RemoveBox_No__c = codctmp.RemoveBox_No__c;
+ codcorderdet.RemoveBox_date__c = codctmp.RemoveBox_date__c;
+ codcorderdet.Box_Piece__c = codctmp.Box_Piece__c;
- if (ass.ReturnReason == null || ass.ReturnReason == '') {
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- returnError = '璇疯ˉ鍏呰繑鍝佸師鍥�';
- } else {
- ApexPages.addmessage(
- new ApexPages.message(
- ApexPages.severity.ERROR,
- '璇疯ˉ鍏呰繑鍝佸師鍥�'
- )
- );
- }
- return null;
- }
+ //add by rentx 2020-10-13 start 杩斿搧鏃舵柊鏁版嵁璁板綍SAP鍚堝悓鍙�
+ // codcorderdet.ContractNo_text__c= codctmp.ContractNo__c;
+ // tcm start
+ if (String.isBlank(codctmp.Consumable_order_minor__r.ContractNo__c)) {
+ codcorderdet.ContractNo_text__c= codctmp.ContractNo_text__c;
+ }else {
+ codcorderdet.ContractNo_text__c= codctmp.Consumable_order_minor__r.ContractNo__c;
+ }
+ // tcm end
+ //add by rentx 2020-10-13 end 杩斿搧鏃舵柊鏁版嵁璁板綍SAP鍚堝悓鍙�
- //鍒拌揣鏄庣粏
- codcorderdetail.Name = consumable_order_arr[0].Name + '-' + str;
- codcorderdetail.RecordTypeId = System.Label.RT_ConOrderDetail2_Delivery;
- codcorderdetail.Intra_Trade_List_RMB__c = ass.Prod.Intra_Trade_List_RMB__c;
- //gzw 鎵嬪姩鍏ュ簱 榛樿浜у搧鍗曚环 20230307
- codcorderdetail.Asset_Model_No__c = ass.Prod.Asset_Model_No__c;
- codcorderdetail.Direct_Arrive_Product__c = true;
- codcorderdetail.Sterilization_limit__c = ass.sterilizationlimitDate;
- codcorderdetail.Consumable_Product__c = ass.Prod.id;
- codcorderdetail.Bar_Code__c = ass.barCodeNo;
- codcorderdetail.SerialLotNo__c = ass.serialNoorLotNo;
- codcorderdetail.TracingCode__c = ass.tracingCodeNo;
- codcorderdetail.Consumable_Arrived_order__c = Arrived_Order_Sheet.id;
- codcorderdetail.Arrive_date__c = Date.today();
- //add by rentx 2020-10-14 start
- // codcorderdetail.ContractNo_text__c = /*ass.esd.ContractNo__c*/;
- // tcm start
- if (String.isBlank(ass.esd.Consumable_order_minor__r.ContractNo__c)) {
- codcorderdetail.ContractNo_text__c = ass.esd.ContractNo_text__c;
- } else {
- codcorderdetail.ContractNo_text__c = ass.esd.Consumable_order_minor__r.ContractNo__c;
- }
- // tcm end
- //add by rentx 2020-10-14 end
+ // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
+ if(hasLoseGoods){
+ codcorderdet.loseInventory__c = true;
+ }
+ // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 end
+
+ // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 start
+ // 杩斿搧鏃讹紝鈶犺拷鍔犲�熻皟鍊熷嚭鏂逛俊鎭� 鈶′繚鐣欏�熻皟淇℃伅 鈶繚瀛楽AP鍜岀粡閿�鍟嗛娆″彂璐х粡閿�鍟�
+ codcorderdet.Used_account__c = codi.esd.Used_account__c;
+ codcorderdet.Transfer_Time__c = codi.esd.Transfer_Time__c;
+ codcorderdet.Frist_Transfer_Agency__c = codi.esd.Frist_Transfer_Agency__c;
+ codcorderdet.Agency_Transfer__c = codi.esd.Agency_Transfer__c;
+
+ codcorderdet.Agencyinfo_fromSAP__c = codi.esd.Agencyinfo_fromSAP__c;
+ //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'------1------' + codi.esd.Frist_Storage_Agency__c));
+ codcorderdet.Frist_Storage_Agency__c = codi.esd.Frist_Storage_Agency__c == null ? codi.esd.Dealer_Info_text__c : codi.esd.Frist_Storage_Agency__c;
+ // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 end
+ codcorderdetList.add(codcorderdet);
+ codcList.add( esd );
+
+ cnt++;
+ if(cnt > codi.esd.Rrturn_count__c) break;
+ }
+
+ }
+ }
+ else{
+ hasReturnGoods = true;
+ //鍗曚綅=鐩�
+ //changeinvoiceInfo(codi.esd);
+ //Consumable_order__c coc = [select name from Consumable_order__c where Id =:Arrived_Order_Sheet.id];
+ // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
+ codi.esd.Return_date__c = Date.today();
+ // codi.esd.Consumable_Return_order__c = Return_Order_Sheet.id;
+ if(codi.esd.Dealer_Saled__c == false && codi.esd.Dealer_Shipment__c == false && codi.esd.Lose_Flag__c == true){
+ codi.esd.Lose_Flag__c = false;
+ codi.esd.Return_reason__c = '';
+ codi.esd.Consumable_Inventory_order__c = Inventory_Order_Sheet.id;
+ conOrderDetail2InList.add(codi.esd);
+ hasLoseGoods = true;
+ }
+ else{
+ // codi.esd.Return_date__c = Date.today();
+ codi.esd.Consumable_Return_order__c = Return_Order_Sheet.id;
+
+ }
+ // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 end
+ codi.esd.ReturnGs_Uploader_ID__c = UserInfo.getUserId();
+ // codi.esd.Consumable_Return_order__c = Return_Order_Sheet.id;
+ //淇敼杩斿搧鎵�鏈変汉
+ codi.esd.OwnerId = UserInfo.getUserId();
+ codi.esd.RecordTypeId = System.Label.RT_ConOrderDetail2_Return;
+ codcorderdet.Name = consumable_order_arr[0].name + '-' + String.valueOf(++tempNo).leftPad(4,'0');
+ codcorderdet.Consumable_order_minor__c = codi.esd.Consumable_order_minor__c;
+ codcorderdet.Consumable_Arrived_order__c = Arrived_Order_Sheet.id;
+ //淇敼鍒拌揣鎵�鏈変汉
+ codcorderdet.OwnerId = UserInfo.getUserId();
+ codcorderdet.Arrive_date__c = Date.today();
+ codcorderdet.Consumable_Product__c = codi.esd.Consumable_Product__c;
+ codcorderdet.Asset_Model_No__c = codi.esd.Asset_Model_No__c;
+ codcorderdet.Bar_Code__c = codi.esd.Bar_Code__c;
+ codcorderdet.Deliver_date__c = codi.esd.Deliver_date__c;
+ codcorderdet.SerialLotNo__c = codi.esd.SerialLotNo__c;
+ codcorderdet.TracingCode__c = codi.esd.TracingCode__c;
+ codcorderdet.Sterilization_limit__c = codi.esd.Sterilization_limit__c;
+ //gzw 鎵嬪姩鍏ュ簱 榛樿浜у搧鍗曚环 20230307
+ codcorderdet.Intra_Trade_List_RMB__c = (codi.esd.Intra_Trade_List_RMB__c == null || codi.esd.Intra_Trade_List_RMB__c == 0) ? codi.esd.Intra_Trade_List__c : codi.esd.Intra_Trade_List_RMB__c;
+ // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
+ if(hasLoseGoods){
+ codcorderdet.loseInventory__c = true;
+ }
+ // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 end
+ // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 start
+ // 杩斿搧鏃讹紝鈶犺拷鍔犲�熻皟鍊熷嚭鏂逛俊鎭� 鈶′繚鐣欏�熻皟淇℃伅 鈶繚瀛楽AP鍜岀粡閿�鍟嗛娆″彂璐х粡閿�鍟�
+ codcorderdet.Used_account__c = codi.esd.Used_account__c;
+ codcorderdet.Transfer_Time__c = codi.esd.Transfer_Time__c;
+ codcorderdet.Frist_Transfer_Agency__c = codi.esd.Frist_Transfer_Agency__c;
+ codcorderdet.Agency_Transfer__c = codi.esd.Agency_Transfer__c;
+
+ codcorderdet.Agencyinfo_fromSAP__c = codi.esd.Agencyinfo_fromSAP__c;
+ //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'------2------' + codi.esd.Frist_Storage_Agency__c));
+ codcorderdet.Frist_Storage_Agency__c = codi.esd.Frist_Storage_Agency__c == null ? codi.esd.Dealer_Info_text__c : codi.esd.Frist_Storage_Agency__c;
+ // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 end
+
+ //add by rentx 2020-10-13 start 杩斿搧鏃舵柊鏁版嵁璁板綍SAP鍚堝悓鍙�
+ // codcorderdet.ContractNo_text__c = /*codi.esd.ContractNo__c*/;
+ // tcm start
+ if (String.isBlank(codi.esd.Consumable_order_minor__r.ContractNo__c)) {
+ codcorderdet.ContractNo_text__c= codi.esd.ContractNo_text__c;
+ }else {
+ codcorderdet.ContractNo_text__c= codi.esd.Consumable_order_minor__r.ContractNo__c;
+ }
+ // tcm end
+ //add by rentx 2020-10-13 end 杩斿搧鏃舵柊鏁版嵁璁板綍SAP鍚堝悓鍙�
+
+ codcorderdetList.add(codcorderdet);
+ codcList.add( codi.esd );
+ }
+ }
+ //鏄庣粏2涓嶅瓨鍦ㄧ殑瀵瑰簲鐨勫埌璐ц鍗曟槑缁� 2017-07-05
+ Integer i = 1;
+ //for(ConsumableorderdetailsInfo ass : consumableInventoryUse){
+ for(ConsumableorderdetailsInfo ass : consumableInventory){
+ hasReturnGoods = true;
+ Consumable_order_details2__c codcorderdetail = new Consumable_order_details2__c();
+ Consumable_order_details2__c retorddetail = new Consumable_order_details2__c();
+ String str = ('000' + i).right(4);
+ // if(str.length() == 1){
+ // str = '0' + str;
+ // }
+
+ if(ass.ReturnReason==null || ass.ReturnReason==''){
+ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'璇疯ˉ鍏呰繑鍝佸師鍥�'));
+ return null;
+ }
+
+ //鍒拌揣鏄庣粏
+ codcorderdetail.Name = consumable_order_arr[0].Name + '-'+ str;
+ codcorderdetail.RecordTypeId = System.Label.RT_ConOrderDetail2_Delivery;
+ codcorderdetail.Intra_Trade_List_RMB__c = ass.Prod.Intra_Trade_List_RMB__c;
+ //gzw 鎵嬪姩鍏ュ簱 榛樿浜у搧鍗曚环 20230307
+ codcorderdetail.Asset_Model_No__c = ass.Prod.Asset_Model_No__c;
+ codcorderdetail.Direct_Arrive_Product__c = true;
+ codcorderdetail.Sterilization_limit__c = ass.sterilizationlimitDate;
+ codcorderdetail.Consumable_Product__c = ass.Prod.id;
+ codcorderdetail.Bar_Code__c = ass.barCodeNo;
+ codcorderdetail.SerialLotNo__c = ass.serialNoorLotNo;
+ codcorderdetail.TracingCode__c = ass.tracingCodeNo;
+ codcorderdetail.Consumable_Arrived_order__c = Arrived_Order_Sheet.id;
+ codcorderdetail.Arrive_date__c = Date.today();
+
+ //add by rentx 2020-10-14 start
+ // codcorderdetail.ContractNo_text__c = /*ass.esd.ContractNo__c*/;
+ // tcm start
+ if (String.isBlank(ass.esd.Consumable_order_minor__r.ContractNo__c)) {
+ codcorderdetail.ContractNo_text__c= ass.esd.ContractNo_text__c;
+ }else {
+ codcorderdetail.ContractNo_text__c= ass.esd.Consumable_order_minor__r.ContractNo__c;
+ }
+ // tcm end
+ //add by rentx 2020-10-14 end
codcorderdetList.add(codcorderdetail);
- //杩斿搧鏄庣粏
- retorddetail.Return_reason__c = ass.ReturnReason;
- retorddetail.Return_date__c = Date.today();
- retorddetail.ReturnGs_Uploader_ID__c = UserInfo.getUserId();
+ //杩斿搧鏄庣粏
+ retorddetail.Return_reason__c = ass.ReturnReason;
+ retorddetail.Return_date__c = Date.today();
+ retorddetail.ReturnGs_Uploader_ID__c = UserInfo.getUserId();
- // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
- // if(ass.esd.Dealer_Saled__c == false && ass.esd.Dealer_Shipment__c == false && ass.esd.Lose_Flag__c == true){
- // retorddetail.Consumable_Inventory_order__c = Inventory_Order_Sheet.id;
- // retorddetail.loseInventory__c = true;
- // }
- retorddetail.Consumable_Return_order__c = Return_Order_Sheet.id;
- // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 end
+ // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 start
+ // if(ass.esd.Dealer_Saled__c == false && ass.esd.Dealer_Shipment__c == false && ass.esd.Lose_Flag__c == true){
+ // retorddetail.Consumable_Inventory_order__c = Inventory_Order_Sheet.id;
+ // retorddetail.loseInventory__c = true;
+ // }
+ retorddetail.Consumable_Return_order__c = Return_Order_Sheet.id;
+ // WYIN-BLZE48鐩樼偣涓㈠け浜у搧澧炲姞鍏ュ簱鏂瑰紡 update by vivek 2020-03-05 end
- retorddetail.Name = consumable_order_ret[0].Name + '-' + str;
- retorddetail.RecordTypeId = System.Label.RT_ConOrderDetail2_Return;
- retorddetail.Intra_Trade_List_RMB__c = ass.Prod.Intra_Trade_List_RMB__c;
- //gzw 鎵嬪姩鍏ュ簱 榛樿浜у搧鍗曚环 20230307
- retorddetail.Dealer_Info_IF__c = accountid;
- retorddetail.Asset_Model_No__c = ass.Prod.Asset_Model_No__c;
- retorddetail.Direct_Arrive_Product__c = true;
- retorddetail.Sterilization_limit__c = ass.sterilizationlimitDate;
- retorddetail.Consumable_Product__c = ass.Prod.id;
- retorddetail.Bar_Code__c = ass.barCodeNo;
- retorddetail.SerialLotNo__c = ass.serialNoorLotNo;
- retorddetail.TracingCode__c = ass.tracingCodeNo;
- retorddetail.Arrive_date__c = Date.today();
- retorddetail.Deliver_date__c = Date.today();
- // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 start
- retorddetail.Frist_Storage_Agency__c = accountName;
- // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 end
+
+ retorddetail.Name = consumable_order_ret[0].Name + '-'+ str;
+ retorddetail.RecordTypeId = System.Label.RT_ConOrderDetail2_Return;
+ retorddetail.Intra_Trade_List_RMB__c = ass.Prod.Intra_Trade_List_RMB__c;
+ //gzw 鎵嬪姩鍏ュ簱 榛樿浜у搧鍗曚环 20230307
+ retorddetail.Dealer_Info_IF__c = accountid;
+ retorddetail.Asset_Model_No__c = ass.Prod.Asset_Model_No__c;
+ retorddetail.Direct_Arrive_Product__c = true;
+ retorddetail.Sterilization_limit__c = ass.sterilizationlimitDate;
+ retorddetail.Consumable_Product__c = ass.Prod.id;
+ retorddetail.Bar_Code__c = ass.barCodeNo;
+ retorddetail.SerialLotNo__c = ass.serialNoorLotNo;
+ retorddetail.TracingCode__c = ass.tracingCodeNo;
+ retorddetail.Arrive_date__c = Date.today();
+ retorddetail.Deliver_date__c = Date.today();
+ // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 start
+ retorddetail.Frist_Storage_Agency__c = accountName;
+ // 杩藉姞棣栨鍏ュ簱缁忛攢鍟� add by gzw 2020-04-27 end
- //add by rentx 2020-10-14 start
- // retorddetail.ContractNo_text__c = /*ass.esd.ContractNo__c*/;
- // tcm start
- if (String.isBlank(ass.esd.Consumable_order_minor__r.ContractNo__c)) {
- retorddetail.ContractNo_text__c = ass.esd.ContractNo_text__c;
- } else {
- retorddetail.ContractNo_text__c = ass.esd.Consumable_order_minor__r.ContractNo__c;
- }
- // tcm end
- //add by rentx 2020-10-14 end
+ //add by rentx 2020-10-14 start
+ // retorddetail.ContractNo_text__c = /*ass.esd.ContractNo__c*/;
+ // tcm start
+ if (String.isBlank(ass.esd.Consumable_order_minor__r.ContractNo__c)) {
+ retorddetail.ContractNo_text__c= ass.esd.ContractNo_text__c;
+ }else {
+ retorddetail.ContractNo_text__c= ass.esd.Consumable_order_minor__r.ContractNo__c;
+ }
+ // tcm end
+ //add by rentx 2020-10-14 end
codcorderdetList.add(retorddetail);
i++;
@@ -6020,149 +3601,118 @@
// ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'------end------'));
// return null;
- if (codcList.size() > 0) {
- ControllerUtil.updateOrderDetailsSatus(codcList);
- //insert codcorderdetList;
- }
- if (codcorderdetList.size() > 0) {
- System.debug('codcorderdetList +++++ ' + codcorderdetList);
- insert codcorderdetList;
- }
- // WYIN-BPE3T4 铏氭嫙鐩樼偣鍗� update by vivek 2020-05-11 start
- if (conOrderDetail2InList.size() > 0) {
- addInventoryDetails1(conOrderDetail2InList);
- }
- // WYIN-BPE3T4 铏氭嫙鐩樼偣鍗� update by vivek 2020-05-11 start
+ if(codcList.size()>0){
+ ControllerUtil.updateOrderDetailsSatus( codcList );
+ //insert codcorderdetList;
+ }
+ if (codcorderdetList.size()>0){
+ System.debug('codcorderdetList +++++ '+ codcorderdetList);
+ insert codcorderdetList;
+ }
+ // WYIN-BPE3T4 铏氭嫙鐩樼偣鍗� update by vivek 2020-05-11 start
+ if(conOrderDetail2InList.size() > 0){
+ addInventoryDetails1(conOrderDetail2InList);
+ }
+ // WYIN-BPE3T4 铏氭嫙鐩樼偣鍗� update by vivek 2020-05-11 start
- if (hasReturnGoods) {
- // WYIN-BPE3T4 铏氭嫙鐩樼偣鍗� update by vivek 2020-05-11 start
- // return ToReturnGoodsPage();
- if (hasLoseGoods) {
- urlType = 'ToInventoryGoodsPage';
- return ToInventoryGoodsPage();
- // return null;
- } else {
- urlType = 'ToReturnGoodsPage';
- return ToReturnGoodsPage();
- // return null;
- }
- // WYIN-BPE3T4 铏氭嫙鐩樼偣鍗� update by vivek 2020-05-11 start
- } else {
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- returnError = '娌℃湁闇�瑕佺櫥褰曠殑杩斿搧';
- } else {
- ApexPages.addmessage(
- new ApexPages.message(
- ApexPages.severity.ERROR,
- '娌℃湁闇�瑕佺櫥褰曠殑杩斿搧'
- )
- );
- }
- return null;
+ if(hasReturnGoods){
+ // WYIN-BPE3T4 铏氭嫙鐩樼偣鍗� update by vivek 2020-05-11 start
+ // return ToReturnGoodsPage();
+ if(hasLoseGoods){
+ return ToInventoryGoodsPage();
+ // return null;
+ }else{
+ return ToReturnGoodsPage();
+ // return null;
+ }
+ // WYIN-BPE3T4 铏氭嫙鐩樼偣鍗� update by vivek 2020-05-11 start
+ }
+ else{
+ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'娌℃湁闇�瑕佺櫥褰曠殑杩斿搧'));
+ return null;
+ }
+
+ }else{
+ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'娌℃湁闇�瑕佺櫥褰曠殑杩斿搧'));
+ return null;
+ }
+ }catch(Exception e){
+ Database.rollback(sp);
+ ApexPages.addMessages(e);
+ return null;
}
- } else {
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- returnError = '娌℃湁闇�瑕佺櫥褰曠殑杩斿搧';
- } else {
- ApexPages.addmessage(
- new ApexPages.message(
- ApexPages.severity.ERROR,
- '娌℃湁闇�瑕佺櫥褰曠殑杩斿搧'
- )
- );
- }
- return null;
- }
- } catch (Exception e) {
- Database.rollback(sp);
- //LWC:Lwcflag鍜屾姤閿欐彁閱� update by Link 2023-04-27
- if (isLwc) {
- returnError = e.getLineNumber() + '---' + e.getMessage();
- } else {
- ApexPages.addMessages(e);
- }
- return null;
}
- }
- public void makeArrivedSummary() {
- detailsSummary = new List<ConsumableorderdetailsInfo>();
- //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'consumableInventory ' + consumableInventory));
- try {
- ConsumableorderdetailsInfo arriveDdetailsSummary = null;
- Map<String, ConsumableorderdetailsInfo> detailsSummaryMap = new Map<String, ConsumableorderdetailsInfo>();
- for (ConsumableorderdetailsInfo ass : ConsumableorderdetailsRecords) {
- if (detailsSummaryMap.containsKey(ass.Prod.Id)) {
- detailsSummaryMap.get(ass.Prod.Id).arrivedCount++;
- detailsSummaryMap.get(ass.Prod.Id)
- .arriveAmount += ass.esd.Intra_Trade_List_RMB__c;
- } else {
- arriveDdetailsSummary = new ConsumableorderdetailsInfo(ass.Prod);
- arriveDdetailsSummary.arrivedCount = 1;
- arriveDdetailsSummary.arriveAmount = ass.esd.Intra_Trade_List_RMB__c;
- detailsSummaryMap.put(ass.Prod.Id, arriveDdetailsSummary);
- }
- }
- for (ConsumableorderdetailsInfo ass : consumableInventory) {
- if (detailsSummaryMap.containsKey(ass.Prod.Id)) {
- detailsSummaryMap.get(ass.Prod.Id).arrivedCount++;
- if (EsetId != null && EsetId != '') {
- detailsSummaryMap.get(ass.Prod.Id)
- .arriveAmount += ass.Prod.Intra_Trade_List_RMB__c;
- } else {
- detailsSummaryMap.get(ass.Prod.Id).arriveAmount += 0;
- }
- } else {
- arriveDdetailsSummary = new ConsumableorderdetailsInfo(ass.Prod);
- arriveDdetailsSummary.arrivedCount = 1;
- if (EsetId != null && EsetId != '') {
- arriveDdetailsSummary.arriveAmount = ass.Prod.Intra_Trade_List_RMB__c;
- } else {
- arriveDdetailsSummary.arriveAmount = 0;
- }
- detailsSummaryMap.put(ass.Prod.Id, arriveDdetailsSummary);
- }
- }
- for (String key : detailsSummaryMap.keySet()) {
- detailsSummary.add(detailsSummaryMap.get(key));
- }
- } catch (Exception e) {
- //Database.rollback(sp);
- throw new ControllerUtil.myException(
- 'e::' + e + ' linenumber::' + e.getLineNumber()
- );
- // ApexPages.addMessages(e);
- // ApexPages.addMessages(e.getLineNumber() + ' 11111111111111111');
+ public void makeArrivedSummary(){
+ detailsSummary = new List<ConsumableorderdetailsInfo>();
+ //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'consumableInventory ' + consumableInventory));
+ try{
+ ConsumableorderdetailsInfo arriveDdetailsSummary = null;
+ Map<String,ConsumableorderdetailsInfo> detailsSummaryMap = new Map<String,ConsumableorderdetailsInfo>();
+ for(ConsumableorderdetailsInfo ass : ConsumableorderdetailsRecords){
+ if(detailsSummaryMap.containsKey(ass.Prod.Id)){
+ detailsSummaryMap.get(ass.Prod.Id).arrivedCount ++;
+ detailsSummaryMap.get(ass.Prod.Id).arriveAmount += ass.esd.Intra_Trade_List_RMB__c;
+ }else{
+ arriveDdetailsSummary = new ConsumableorderdetailsInfo(ass.Prod);
+ arriveDdetailsSummary.arrivedCount = 1;
+ arriveDdetailsSummary.arriveAmount = ass.esd.Intra_Trade_List_RMB__c;
+ detailsSummaryMap.put(ass.Prod.Id, arriveDdetailsSummary);
+ }
+ }
+ for(ConsumableorderdetailsInfo ass : consumableInventory){
+ if(detailsSummaryMap.containsKey(ass.Prod.Id)){
+ detailsSummaryMap.get(ass.Prod.Id).arrivedCount ++;
+ if(EsetId != null && EsetId != ''){
+ detailsSummaryMap.get(ass.Prod.Id).arriveAmount += ass.Prod.Intra_Trade_List_RMB__c;
+ }else{
+ detailsSummaryMap.get(ass.Prod.Id).arriveAmount += 0;
+ }
+ }else{
+ arriveDdetailsSummary = new ConsumableorderdetailsInfo(ass.Prod);
+ arriveDdetailsSummary.arrivedCount = 1;
+ if(EsetId != null && EsetId != ''){
+ arriveDdetailsSummary.arriveAmount = ass.Prod.Intra_Trade_List_RMB__c;
+ }else{
+ arriveDdetailsSummary.arriveAmount = 0;
+ }
+ detailsSummaryMap.put(ass.Prod.Id, arriveDdetailsSummary);
+ }
+ }
+ for(String key : detailsSummaryMap.keySet()){
+ detailsSummary.add(detailsSummaryMap.get(key));
+ }
+ }catch(Exception e){
+ //Database.rollback(sp);
+ throw new ControllerUtil.myException('e::'+e + ' linenumber::'+e.getLineNumber());
+ // ApexPages.addMessages(e);
+ // ApexPages.addMessages(e.getLineNumber() + ' 11111111111111111');
//return null;
}
}
- //璺宠浆鍒拌繑鍝侀〉闈�
- public Pagereference ToReturnGoodsPage() {
- PageReference ref = new Pagereference('/' + return_Order_id);
- ref.setRedirect(true);
- return ref;
- }
+ //璺宠浆鍒拌繑鍝侀〉闈�
+ public Pagereference ToReturnGoodsPage(){
+ PageReference ref = new Pagereference('/'+return_Order_id);
+ ref.setRedirect(true);
+ return ref;
+ }
+
+ // WYIN-BPE3T4 铏氭嫙鐩樼偣鍗� update by vivek 2020-05-11 start
+ public Pagereference ToInventoryGoodsPage(){
+ PageReference ref = new Pagereference('/'+inventory_Order_id);
+ ref.setRedirect(true);
+ return ref;
+ }
+ // WYIN-BPE3T4 铏氭嫙鐩樼偣鍗� update by vivek 2020-05-11 end
- // WYIN-BPE3T4 铏氭嫙鐩樼偣鍗� update by vivek 2020-05-11 start
- public Pagereference ToInventoryGoodsPage() {
- PageReference ref = new Pagereference('/' + inventory_Order_id);
- ref.setRedirect(true);
- return ref;
- }
- // WYIN-BPE3T4 铏氭嫙鐩樼偣鍗� update by vivek 2020-05-11 end
-
- // 璺宠浆鍒板埌璐ц鍗曟槑缁�
- public PageReference UnabletoEdit() {
- PageReference ref = new Pagereference(
- '/ArriveGsDetails?EsetId=' + arriveId
- );
- ref.setRedirect(true);
- return ref;
- }
+ // 璺宠浆鍒板埌璐ц鍗曟槑缁�
+ public PageReference UnabletoEdit(){
+ PageReference ref = new Pagereference('/ArriveGsDetails?EsetId='+arriveId);
+ ref.setRedirect(true);
+ return ref;
+ }
public class ConsumableorderdetailsInfo implements Comparable {
public Consumable_order_details2__c esd { get; set; }
@@ -6181,74 +3731,67 @@
public Decimal arriveAmount { get; set; }
public Decimal arrivedCount { get; set; }
- public String ReportProductExpirationDate { get; set; }
+ public String ReportProductExpirationDate {get;set;}
+ public ConsumableorderdetailsInfo(Consumable_order_details2__c e,string str) {
+ esd = e;
+ Prod = e.Consumable_Product__r;
+ oldConsumableCount = e.name;
+ ErrorReason = str;
+ intMark = 1;
+ if (e.Report_Product_Expiration__c != null) {
+ ReportProductExpirationDate = e.Report_Product_Expiration__c.format();
+ }
- public ConsumableorderdetailsInfo() {
- }
+ }
+ public ConsumableorderdetailsInfo(Consumable_order_details2__c e) {
+ canEdit = false;
+ if(e.Box_Piece__c=='鐩�'){
+ e.Rrturn_count__c = 1;
+ canEdit = true;
+ }
- public ConsumableorderdetailsInfo(
- Consumable_order_details2__c e,
- string str
- ) {
- esd = e;
- Prod = e.Consumable_Product__r;
- oldConsumableCount = e.name;
- ErrorReason = str;
- intMark = 1;
- if (e.Report_Product_Expiration__c != null) {
- ReportProductExpirationDate = e.Report_Product_Expiration__c.format();
- }
- }
- public ConsumableorderdetailsInfo(Consumable_order_details2__c e) {
- canEdit = false;
- if (e.Box_Piece__c == '鐩�') {
- e.Rrturn_count__c = 1;
- canEdit = true;
- }
+ esd = e;
+ Prod = e.Consumable_Product__r;
+ oldConsumableCount = e.name;
+ if (e.Report_Product_Expiration__c != null) {
+ ReportProductExpirationDate = e.Report_Product_Expiration__c.format();
+ }
- esd = e;
- Prod = e.Consumable_Product__r;
- oldConsumableCount = e.name;
- if (e.Report_Product_Expiration__c != null) {
- ReportProductExpirationDate = e.Report_Product_Expiration__c.format();
- }
- }
+ }
- public ConsumableorderdetailsInfo(Product2__c e, List<String> barinfoL) {
- esd = new Consumable_order_details2__c();
- ProductName = e.Name__c;
- Prod = e;
- barCodeNo = barinfoL[0];
- if (String.isNotBlank(barinfoL[1])) {
- sterilizationlimitDate = Date.valueOf(barinfoL[1]);
- }
- serialNoorLotNo = barinfoL[2];
- tracingCodeNo = barinfoL[3];
- ReturnReason = '';
- }
+ public ConsumableorderdetailsInfo(Product2__c e,List<String> barinfoL) {
+ esd = new Consumable_order_details2__c();
+ ProductName = e.Name__c;
+ Prod = e;
+ barCodeNo = barinfoL[0];
+ if(String.isNotBlank(barinfoL[1])){
+ sterilizationlimitDate = Date.valueOf(barinfoL[1]);
+ }
+ serialNoorLotNo = barinfoL[2];
+ tracingCodeNo = barinfoL[3];
+ ReturnReason = '';
+ }
- public ConsumableorderdetailsInfo(
- Consumable_order_details2__c e,
- List<String> barinfoL
- ) {
- esd = e;
- Prod = e.Consumable_Product__r;
- barCodeNo = barinfoL[0];
- if (String.isNotBlank(barinfoL[1])) {
- sterilizationlimitDate = Date.valueOf(barinfoL[1]);
- }
- serialNoorLotNo = barinfoL[2];
- tracingCodeNo = barinfoL[3];
- if (e.Report_Product_Expiration__c != null) {
- ReportProductExpirationDate = e.Report_Product_Expiration__c.format();
- }
+ public ConsumableorderdetailsInfo(Consumable_order_details2__c e,List<String> barinfoL) {
+ esd = e;
+ Prod = e.Consumable_Product__r;
+ barCodeNo = barinfoL[0];
+ if(String.isNotBlank(barinfoL[1])){
+ sterilizationlimitDate = Date.valueOf(barinfoL[1]);
+ }
+ serialNoorLotNo = barinfoL[2];
+ tracingCodeNo = barinfoL[3];
+ if (e.Report_Product_Expiration__c != null) {
+ ReportProductExpirationDate = e.Report_Product_Expiration__c.format();
+ }
+
+ }
+ public ConsumableorderdetailsInfo(Product2__c e) {
+ Prod = e;
+ }
+ // 鎺掑簭
+ public Integer compareTo(Object compareTo) {
+ return null;
+ }
}
- public ConsumableorderdetailsInfo(Product2__c e) {
- Prod = e;
- }
- // 鎺掑簭
- public Integer compareTo(Object compareTo) {
- return null;
- }
- }
}
diff --git a/force-app/main/default/classes/CPL003Rest.cls b/force-app/main/default/classes/CPL003Rest.cls
index 6355680..22dc62f 100644
--- a/force-app/main/default/classes/CPL003Rest.cls
+++ b/force-app/main/default/classes/CPL003Rest.cls
@@ -1,28 +1,27 @@
@RestResource(urlMapping='/CPL003/*')
global with sharing class CPL003Rest {
-
global class GeDatas {
- webservice NFMUtil.Monitoring Monitoring;
- webservice CPL003Rest.GeData[] Inventory;
+ webService NFMUtil.Monitoring Monitoring;
+ webService CPL003Rest.GeData[] Inventory;
}
global class GeData {
- webservice String MaterialNumber; //浜у搧缂栫爜(浜у搧浠g爜)
- webservice String ItemQuantity; //OpenPO鍜屽簱瀛樼殑鎬绘暟閲�
+ webService String MaterialNumber; //浜у搧缂栫爜(浜у搧浠g爜)
+ webService String ItemQuantity; //OpenPO鍜屽簱瀛樼殑鎬绘暟閲�
- webservice String Area; //鍖哄煙(寰呭畾)
+ webService String Area; //鍖哄煙(寰呭畾)
//webservice String other1;
//webservice String other2;
//webservice String other3;
}
- @HttpPost
+ @HttpPost
global static void execute() {
- // 鍙栧緱鎺ュ彛浼犺緭鍐呭
+ // 鍙栧緱鎺ュ彛浼犺緭鍐呭
String strData = RestContext.request.requestBody.toString();
GeDatas ges = (GeDatas) JSON.deserializeStrict(strData, GeDatas.class);
- if (ges == null ) {
+ if (ges == null) {
return;
}
@@ -46,7 +45,6 @@
return;
}
-
@future
global static void executefuture(String rowData_Id) {
main(rowData_Id);
@@ -54,8 +52,29 @@
global static void main(String rowData_Id) {
Integer batch_retry_max_cnt = Integer.valueOf(System.Label.batch_retry_max_cnt);
- BatchIF_Log__c rowData = [Select Id, Name, Log__c, ErrorLog__c, Log2__c, Log3__c, Log4__c, Log5__c, Log6__c, Log7__c, Log8__c, Log9__c, Log10__c, Log11__c, Log12__c, MessageGroupNumber__c,retry_cnt__c from BatchIF_Log__c where RowDataFlg__c = true and Id = :rowData_Id];
- MDMITMWebService.isRunning = true;
+ BatchIF_Log__c rowData = [
+ SELECT
+ Id,
+ Name,
+ Log__c,
+ ErrorLog__c,
+ Log2__c,
+ Log3__c,
+ Log4__c,
+ Log5__c,
+ Log6__c,
+ Log7__c,
+ Log8__c,
+ Log9__c,
+ Log10__c,
+ Log11__c,
+ Log12__c,
+ MessageGroupNumber__c,
+ retry_cnt__c
+ FROM BatchIF_Log__c
+ WHERE RowDataFlg__c = TRUE AND Id = :rowData_Id
+ ];
+ //MDMITMWebService.isRunning = true; //Commented By Li Jun 20230428
String logstr = rowData.MessageGroupNumber__c + ' start\n';
BatchIF_Log__c iflog = new BatchIF_Log__c();
iflog.Type__c = 'CPL003';
@@ -67,36 +86,39 @@
String rowDataStr = NFMUtil.getRowDataStr(rowData);
//rowDataStr = XMLTools.xml2json(rowDataStr);
List<GeData> itemMasterList = (List<GeData>) JSON.deserialize(rowDataStr, List<GeData>.class);
-
+
if (itemMasterList == null || itemMasterList.size() == 0) {
return;
- }
+ }
Savepoint sp = Database.setSavepoint();
- try{
+ try {
List<String> materialNumberList = new List<String>();
for (GeData GeData : itemMasterList) {
- if (String.isBlank(GeData.MaterialNumber)) continue;
- if (String.isBlank(GeData.ItemQuantity)) continue;
+ if (String.isBlank(GeData.MaterialNumber))
+ continue;
+ if (String.isBlank(GeData.ItemQuantity))
+ continue;
materialNumberList.add(GeData.MaterialNumber);
}
- List<Product2> product2List = [select Id, ProductCode, StorageStatusNo__c
- from Product2
- where ProductCode in :materialNumberList ];
-
- Map<String,Product2> product2Map = new Map<String,Product2>();
+ List<Product2> product2List = [
+ SELECT Id, ProductCode, StorageStatusNo__c
+ FROM Product2
+ WHERE ProductCode IN :materialNumberList
+ ];
+
+ Map<String, Product2> product2Map = new Map<String, Product2>();
for (Product2 product2 : product2List) {
product2Map.put(product2.ProductCode, product2);
}
List<Product2> upsertProList = new List<Product2>();
- Map<String,Product2> prdUpdateMap = new Map<String, Product2>();
+ Map<String, Product2> prdUpdateMap = new Map<String, Product2>();
for (GeData GeData : itemMasterList) {
-
if (String.isBlank(GeData.MaterialNumber)) {
iflog.ErrorLog__c += 'MaterialNumber is required.\n';
continue;
@@ -106,29 +128,36 @@
Product2 product = product2Map.get(GeData.MaterialNumber);
product.StorageStatusNo__c = Double.valueOf(GeData.ItemQuantity);
upsertProList.add(product);
-
} else {
iflog.ErrorLog__c += 'This MaterialNumber [ ' + GeData.MaterialNumber + ' ] is not Exist.\n';
continue;
}
}
- if(upsertProList.size() > 0) upsert upsertProList;
+ if (upsertProList.size() > 0)
+ upsert upsertProList;
logstr += '\nend';
- rowData.retry_cnt__c=0;
- } catch(Exception ex) {
+ rowData.retry_cnt__c = 0;
+ } catch (Exception ex) {
// 銈ㄣ儵銉笺亴鐧虹敓銇椼仧鍫村悎
Database.rollback(sp);
logstr += '\n' + ex.getMessage();
iflog.ErrorLog__c = ex.getMessage() + '\n' + ex.getStackTraceString() + '\n' + iflog.ErrorLog__c;
- if (rowData.retry_cnt__c == null) rowData.retry_cnt__c = 0;
- if (rowData.retry_cnt__c < batch_retry_max_cnt){
+ if (rowData.retry_cnt__c == null)
+ rowData.retry_cnt__c = 0;
+ if (rowData.retry_cnt__c < batch_retry_max_cnt) {
rowData.retry_cnt__c++;
LogAutoSendSchedule.assignOneMinute();
}
- if (rowData.retry_cnt__c >= batch_retry_max_cnt){
- rowData.ErrorLog__c = ex.getMessage() + '\n' + ex.getStackTraceString() + '\n' + rowData.ErrorLog__c+'閿欒娆℃暟宸茬粡瓒呰繃鑷姩鏀朵俊璁惧畾鐨勬渶澶ф鏁帮紝璇锋墜鍔ㄦ敹淇�';
+ if (rowData.retry_cnt__c >= batch_retry_max_cnt) {
+ rowData.ErrorLog__c =
+ ex.getMessage() +
+ '\n' +
+ ex.getStackTraceString() +
+ '\n' +
+ rowData.ErrorLog__c +
+ '閿欒娆℃暟宸茬粡瓒呰繃鑷姩鏀朵俊璁惧畾鐨勬渶澶ф鏁帮紝璇锋墜鍔ㄦ敹淇�';
}
}
@@ -142,4 +171,4 @@
}
update iflog;
}
-}
\ No newline at end of file
+}
diff --git a/force-app/main/default/classes/ConInvoiceViewController.cls b/force-app/main/default/classes/ConInvoiceViewController.cls
index f143abd..e9dfa3b 100644
--- a/force-app/main/default/classes/ConInvoiceViewController.cls
+++ b/force-app/main/default/classes/ConInvoiceViewController.cls
@@ -1,17 +1,17 @@
public without sharing class ConInvoiceViewController {
//缁忛攢鍟嗕骇鍝佸垎绫�
- public String agencyProType {get;set;}
+ public String agencyProType { get; set; }
//鍙戠エ浣跨敤
public Consumable_order__c coc { get; set; }
//鍑哄簱鍗曚娇鐢�
public Consumable_order__c outbound { get; set; }
//鍙戠エID
- public String invoiceId {get;set;}
- public String orderRemind {get;set;}
- public String deliveryId {get;set;}
- public String reopen {get;set;}
- public Decimal sumPrice {get;set;}
- public Boolean isChange {get;set;}
+ public String invoiceId { get; set; }
+ public String orderRemind { get; set; }
+ public String deliveryId { get; set; }
+ public String reopen { get; set; }
+ public Decimal sumPrice { get; set; }
+ public Boolean isChange { get; set; }
//鐢ㄦ埛淇℃伅
private String accountid = null;
private String userId = '';
@@ -28,20 +28,17 @@
return (coc.Name);
}
// 绮剧悽绉戞妧 zxk 2021-11-03 瀛樻斁娑堣�楀搧鏄庣粏 end
- public List < Consumable_Orderdetails__c > conoList {
- get;
- set;
- }
+ public List<Consumable_Orderdetails__c> conoList { get; set; }
// 绮剧悽绉戞妧 zxk 2021-11-03 瀛樻斁娑堣�楀搧鏄庣粏 end
- public String shipmentAccount{
+ public String shipmentAccount {
get {
return (coc.ShipmentAccount__c);
}
}
//缂栬緫鐘舵��
public String statusEdit = '';
- public Boolean editAble {get;set;}
+ public Boolean editAble { get; set; }
public List<InvoiceOrderInfo> invoiceOrderRecoeds { get; set; }
//鍑哄簱鍗曟槑缁�
@@ -54,21 +51,19 @@
//鍙戠エ鏄庣粏1锛堝嚭搴撳崟锛�
private List<Consumable_order__c> invoiceOrderSelectedList = new List<Consumable_order__c>();
-
-
- Map<String,Decimal> ordermx1defaultMap = new Map<String,Decimal>();
+ Map<String, Decimal> ordermx1defaultMap = new Map<String, Decimal>();
//鍑哄簱鍗曟眹鎬婚噾棰� from 鍙戠エ鏄庣粏1
- Map<String,Decimal> outorderMoneytMap = new Map<String,Decimal>();
+ Map<String, Decimal> outorderMoneytMap = new Map<String, Decimal>();
//鍙戠エ鏄庣粏1鍏宠仈浜у搧鏁伴噺
- Map<String,Consumable_Orderdetails__c> outordercountMap = new Map<String,Consumable_Orderdetails__c>();
+ Map<String, Consumable_Orderdetails__c> outordercountMap = new Map<String, Consumable_Orderdetails__c>();
//鍙戠エ鍏宠仈鍑哄簱鍗曞彇寰�
List<String> outOrderStringList = new List<String>();
//浜岀骇缁忛攢鍟嗛�夋嫨妗�
- public List<SelectOption> provinceOpts { get; set; }
- public String SecondDealer {get;set;}
+ public List<SelectOption> provinceOpts { get; set; }
+ public String SecondDealer { get; set; }
//public List<SelectOption> orderForHospitalOpts { get; set; }
- public String HospitalInfo {get;set;}
- public String HospitalName {get;set;}
+ public String HospitalInfo { get; set; }
+ public String HospitalName { get; set; }
//鏄庣粏鏁伴噺
public Integer invoiceOrderRecoedsCount {
@@ -77,9 +72,9 @@
}
}
- list<Dealer_elationship__c> Dealerelationship = new list<Dealer_elationship__c>();
+ list<Dealer_elationship__c> Dealerelationship = new List<Dealer_elationship__c>();
//鎺掑簭浣跨敤
- private String[] orderby = new String[]{ 'Outbound_Date__c','Name','ShipmentAccount__c'};
+ private String[] orderby = new List<String>{ 'Outbound_Date__c', 'Name', 'ShipmentAccount__c' };
public String sortKey { get; set; }
public String preSortKey { get; private set; }
public Boolean sortOrderAsc { get; private set; }
@@ -100,7 +95,7 @@
invoiceOrderRecoedschange = new List<InvoiceOrderInfo>();
orderRemind = '';
isChange = false;
- conoList = new List < Consumable_Orderdetails__c > ();
+ conoList = new List<Consumable_Orderdetails__c>();
}
//椤甸潰鍒濆鍖�
public void init() {
@@ -108,103 +103,57 @@
this.sortKey = '1';
this.preSortKey = '1';
this.sortOrderAsc = false;
- this.sortOrder = new String[2];
- this.sortOrder = new String[]{' ',' ',' ',' '};
+ this.sortOrder = new List<String>(2);
+ this.sortOrder = new List<String>{ ' ', ' ', ' ', ' ' };
- if(invoiceId!=null && invoiceId!='' && (statusEdit==''|| statusEdit==null)){
+ if (invoiceId != null && invoiceId != '' && (statusEdit == '' || statusEdit == null)) {
editAble = false;
- }else if((invoiceId == null||invoiceId=='') && (statusEdit==''||statusEdit==null)){
+ } else if ((invoiceId == null || invoiceId == '') && (statusEdit == '' || statusEdit == null)) {
editAble = true;
- }else if(invoiceId != null && invoiceId !='' && statusEdit !='' && statusEdit!=null){
+ } else if (invoiceId != null && invoiceId != '' && statusEdit != '' && statusEdit != null) {
editAble = true;
}
userId = UserInfo.getUserId();
//userId = '00510000005QQ35';
- List<user> Useracc = New List<user>();
- Useracc = [SELECT accountid, Work_Location__c,UserPro_Type__c FROM user WHERE id = :userId ];
+ List<user> Useracc = new List<user>();
+ Useracc = [SELECT accountid, Work_Location__c, UserPro_Type__c FROM user WHERE id = :userId];
accountid = Useracc[0].accountid;
userWorkLocation = Useracc[0].Work_Location__c;
agencyProType = Useracc[0].UserPro_Type__c;
- if(String.isBlank(Useracc[0].UserPro_Type__c)){
+ if (String.isBlank(Useracc[0].UserPro_Type__c)) {
agencyProType = 'ET';
}
coc = new Consumable_order__c();
- Dealerelationship = [SELECT Dealer_subordinate__c,Dealer_subordinate__r.Name FROM Dealer_elationship__c WHERE Dealer_principal__c =:accountid ];
+ Dealerelationship = [
+ SELECT Dealer_subordinate__c, Dealer_subordinate__r.Name
+ FROM Dealer_elationship__c
+ WHERE Dealer_principal__c = :accountid
+ ];
List<Agency_Hospital_Link__c> AgencyHospitalLink = new List<Agency_Hospital_Link__c>();
- AgencyHospitalLink = [select Id, Name, Hospital__c, Hospital__r.Id, Hospital__r.Name, Agency__c
- from Agency_Hospital_Link__c
- WHERE Agency__c = :accountId];
- // 鏂拌
- if (invoiceId== NULL || invoiceId=='') {
- if (deliveryId== NULL || deliveryId=='') {
+ AgencyHospitalLink = [
+ SELECT Id, Name, Hospital__c, Hospital__r.Id, Hospital__r.Name, Agency__c
+ FROM Agency_Hospital_Link__c
+ WHERE Agency__c = :accountId
+ ];
+ // 鏂拌
+ if (invoiceId == null || invoiceId == '') {
+ if (deliveryId == null || deliveryId == '') {
String msoql = makeSoql();
invoiceOrderList = Database.query(msoql);
- for(Integer i = 0; i < invoiceOrderList.size(); i++){
+ for (Integer i = 0; i < invoiceOrderList.size(); i++) {
invoiceOrderRecoeds.add(new InvoiceOrderInfo(invoiceOrderList[i]));
}
- }else{
- if(statusEdit=='' || statusEdit==null){
+ } else {
+ if (statusEdit == '' || statusEdit == null) {
EditAble = false;
- }else if(statusEdit!=''&&statusEdit!=null){
+ } else if (statusEdit != '' && statusEdit != null) {
EditAble = true;
}
- coc = [SELECT Id,Name,
- Invoice_status__c,
- Invoice_Date__c,
- Order_ForDealerText__c,
- Dealer_Info__c,
- Order_ForDealer__c,
- Order_ForDealer__r.Name,
- Order_ForHospital__c,
- Order_ForHospital__r.Name,
- Order_date__c,
- Billed_Status__c,
- ShipmentAccount__c,
- Order_Dealer_Info__c,
- SummonsForDirction__c,
- Order_ForCustomerText__c,
- Invoice_Note__c,
- Invoice_attachment__c,
- Invoicedet_attachment__c,
- Outbound_order__c
- FROM Consumable_order__c
- WHERE Id =:deliveryId];
- coc.Name = '';
- if(coc.Order_ForDealer__c != null){
- SecondDealer = coc.Order_ForDealer__c;
- }
-
- if(coc.Order_ForHospital__c != null){
- HospitalInfo = coc.Order_ForHospital__c;
- HospitalName = coc.Order_ForHospital__r.Name;
- }
-
- //鍙戠エ鍏宠仈鍑哄簱鍗曞彇寰楋紙鍑哄簱鍗曪級
- invoiceOrderSelectedList = [SELECT Id,
- Order_ForDealer__r.Name,
- Order_ForHospital__r.Name,
- Order_ForDealerText__c,
- Name,Outbound_Date__c,
- ShipmentAccount__c,
- Order_Dealer_Info__c,
- SummonsForDirction__c,
- Shipment_total_amount__c,
- RrturnPro_total_amount__c,
- Total_Invoiced_Procount__c,
- InvoiceNotPro_total_amount__c,
- InvoiceNotPro_money__c,
- Invoice_total_amount__c,
- Billed_Status__c
- FROM Consumable_order__c
- WHERE Id = :deliveryId
- order by Name ];
- for(Integer i = 0; i < invoiceOrderSelectedList.size(); i++){
- invoiceOrderRecoeds.add(new InvoiceOrderInfo(invoiceOrderSelectedList[i]));
- }
- }
- }else{
- coc = [SELECT Id,Name,
+ coc = [
+ SELECT
+ Id,
+ Name,
Invoice_status__c,
Invoice_Date__c,
Order_ForDealerText__c,
@@ -224,124 +173,205 @@
Invoicedet_attachment__c,
Outbound_order__c
FROM Consumable_order__c
- WHERE Id =:invoiceId
- AND Order_type__c = '鍙戠エ'];
- if(coc.Order_ForDealer__c != null){
+ WHERE Id = :deliveryId
+ ];
+ coc.Name = '';
+ if (coc.Order_ForDealer__c != null) {
+ SecondDealer = coc.Order_ForDealer__c;
+ }
+
+ if (coc.Order_ForHospital__c != null) {
+ HospitalInfo = coc.Order_ForHospital__c;
+ HospitalName = coc.Order_ForHospital__r.Name;
+ }
+
+ //鍙戠エ鍏宠仈鍑哄簱鍗曞彇寰楋紙鍑哄簱鍗曪級
+ invoiceOrderSelectedList = [
+ SELECT
+ Id,
+ Order_ForDealer__r.Name,
+ Order_ForHospital__r.Name,
+ Order_ForDealerText__c,
+ Name,
+ Outbound_Date__c,
+ ShipmentAccount__c,
+ Order_Dealer_Info__c,
+ SummonsForDirction__c,
+ Shipment_total_amount__c,
+ RrturnPro_total_amount__c,
+ Total_Invoiced_Procount__c,
+ InvoiceNotPro_total_amount__c,
+ InvoiceNotPro_money__c,
+ Invoice_total_amount__c,
+ Billed_Status__c
+ FROM Consumable_order__c
+ WHERE Id = :deliveryId
+ ORDER BY Name
+ ];
+ for (Integer i = 0; i < invoiceOrderSelectedList.size(); i++) {
+ invoiceOrderRecoeds.add(new InvoiceOrderInfo(invoiceOrderSelectedList[i]));
+ }
+ }
+ } else {
+ coc = [
+ SELECT
+ Id,
+ Name,
+ Invoice_status__c,
+ Invoice_Date__c,
+ Order_ForDealerText__c,
+ Dealer_Info__c,
+ Order_ForDealer__c,
+ Order_ForDealer__r.Name,
+ Order_ForHospital__c,
+ Order_ForHospital__r.Name,
+ Order_date__c,
+ Billed_Status__c,
+ ShipmentAccount__c,
+ Order_Dealer_Info__c,
+ SummonsForDirction__c,
+ Order_ForCustomerText__c,
+ Invoice_Note__c,
+ Invoice_attachment__c,
+ Invoicedet_attachment__c,
+ Outbound_order__c
+ FROM Consumable_order__c
+ WHERE Id = :invoiceId AND Order_type__c = '鍙戠エ'
+ ];
+ if (coc.Order_ForDealer__c != null) {
SecondDealer = coc.Order_ForDealer__c;
}
- if(coc.Order_ForHospital__c != null){
+ if (coc.Order_ForHospital__c != null) {
HospitalInfo = coc.Order_ForHospital__c;
HospitalName = coc.Order_ForHospital__r.Name;
}
//鍒伴摼鎺ヨ〃涓煡鎵惧叧鑱斿嚭搴撳崟
- List<Consumable_order_LinkTable__c> outOrderList = [SELECT Outboundorder_Code_link__c
- FROM Consumable_order_LinkTable__c
- WHERE Invoice_Code_link__c = :invoiceId];
- for(Integer i = 0; i < outOrderList.size(); i++){
+ List<Consumable_order_LinkTable__c> outOrderList = [
+ SELECT Outboundorder_Code_link__c
+ FROM Consumable_order_LinkTable__c
+ WHERE Invoice_Code_link__c = :invoiceId
+ ];
+ for (Integer i = 0; i < outOrderList.size(); i++) {
outOrderStringList.add(outOrderList[i].Outboundorder_Code_link__c);
}
//鍙栧緱鍑哄簱鍗曚俊鎭�
- invoiceOrderSelectedList = [SELECT Id,
- Order_ForDealer__r.Name,
- Order_ForHospital__r.Name,
- Order_ForDealerText__c,
- Name,Outbound_Date__c,
- ShipmentAccount__c,
- Shipment_total_amount__c,
- RrturnPro_total_amount__c,
- Total_Invoiced_Procount__c,
- InvoiceNotPro_total_amount__c,
- InvoiceNotPro_money__c,
- Invoice_total_amount__c,
- Billed_Status__c
- FROM Consumable_order__c
- WHERE Id in :outOrderStringList
- AND Order_Owner_WorkLocal__c =: userWorkLocation
- order by Name ];
- for(Integer i = 0; i < invoiceOrderSelectedList.size(); i++){
+ invoiceOrderSelectedList = [
+ SELECT
+ Id,
+ Order_ForDealer__r.Name,
+ Order_ForHospital__r.Name,
+ Order_ForDealerText__c,
+ Name,
+ Outbound_Date__c,
+ ShipmentAccount__c,
+ Shipment_total_amount__c,
+ RrturnPro_total_amount__c,
+ Total_Invoiced_Procount__c,
+ InvoiceNotPro_total_amount__c,
+ InvoiceNotPro_money__c,
+ Invoice_total_amount__c,
+ Billed_Status__c
+ FROM Consumable_order__c
+ WHERE Id IN :outOrderStringList AND Order_Owner_WorkLocal__c = :userWorkLocation
+ ORDER BY Name
+ ];
+ for (Integer i = 0; i < invoiceOrderSelectedList.size(); i++) {
outorderMoneytMap.put(invoiceOrderSelectedList[i].id, 0);
invoiceOrderRecoeds.add(new InvoiceOrderInfo(invoiceOrderSelectedList[i]));
}
- if(String.isNotBlank(deliveryId)){
+ if (String.isNotBlank(deliveryId)) {
//鍙戠エ鍏宠仈鍑哄簱鍗曞彇寰楋紙鍑哄簱鍗曪級
isChange = true;
- invoiceOrderSelectedList = [SELECT Id,
- Order_ForDealer__r.Name,
- Order_ForHospital__r.Name,
- Order_ForDealerText__c,
- Name,Outbound_Date__c,
- ShipmentAccount__c,
- Shipment_total_amount__c,
- RrturnPro_total_amount__c,
- Total_Invoiced_Procount__c,
- InvoiceNotPro_total_amount__c,
- InvoiceNotPro_money__c,
- Invoice_total_amount__c,
- Billed_Status__c
- FROM Consumable_order__c
- WHERE Id = :deliveryId
- AND Order_Owner_WorkLocal__c =: userWorkLocation
- order by Name ];
- for(Integer i = 0; i < invoiceOrderSelectedList.size(); i++){
- if(!outorderMoneytMap.containsKey(invoiceOrderSelectedList[i].Id)){
+ invoiceOrderSelectedList = [
+ SELECT
+ Id,
+ Order_ForDealer__r.Name,
+ Order_ForHospital__r.Name,
+ Order_ForDealerText__c,
+ Name,
+ Outbound_Date__c,
+ ShipmentAccount__c,
+ Shipment_total_amount__c,
+ RrturnPro_total_amount__c,
+ Total_Invoiced_Procount__c,
+ InvoiceNotPro_total_amount__c,
+ InvoiceNotPro_money__c,
+ Invoice_total_amount__c,
+ Billed_Status__c
+ FROM Consumable_order__c
+ WHERE Id = :deliveryId AND Order_Owner_WorkLocal__c = :userWorkLocation
+ ORDER BY Name
+ ];
+ for (Integer i = 0; i < invoiceOrderSelectedList.size(); i++) {
+ if (!outorderMoneytMap.containsKey(invoiceOrderSelectedList[i].Id)) {
invoiceOrderRecoeds.add(new InvoiceOrderInfo(invoiceOrderSelectedList[i]));
invoiceOrderRecoedschange.add(new InvoiceOrderInfo(invoiceOrderSelectedList[i]));
}
}
}
//鍙戠エ鏄庣粏涓�瑙�
- List<Consumable_Orderdetails__c> countDel = [SELECT Id,
- Consumable_ZS_order__c,
- Name,
- Consumable_order__c,
- Invoicedet1_OD_link__c,
- Invoicedet1_OD_link__r.Name,
- Consumable_order__r.Name,
- Product_OutDate__c,
- Asset_Model_No__c,
- Invoice_Unitprice__c,
- Delivery_List_RMB__c,
- Invoiced_Procount__c,
- Invoiced_Count__c,
- InvoicedProCost_RMB__c,
- Box_Piece__c,
- Invoice_Unit__c,
- ProductPacking_list_manual__c
- FROM Consumable_Orderdetails__c
- WHERE Consumable_order__c = :invoiceId
- order by Invoicedet1_OD_link__c];
- if(countDel.size()>0){
+ List<Consumable_Orderdetails__c> countDel = [
+ SELECT
+ Id,
+ Consumable_ZS_order__c,
+ Name,
+ Consumable_order__c,
+ Invoicedet1_OD_link__c,
+ Invoicedet1_OD_link__r.Name,
+ Consumable_order__r.Name,
+ Product_OutDate__c,
+ Asset_Model_No__c,
+ Invoice_Unitprice__c,
+ Delivery_List_RMB__c,
+ Invoiced_Procount__c,
+ Invoiced_Count__c,
+ InvoicedProCost_RMB__c,
+ Box_Piece__c,
+ Invoice_Unit__c,
+ ProductPacking_list_manual__c
+ FROM Consumable_Orderdetails__c
+ WHERE Consumable_order__c = :invoiceId
+ ORDER BY Invoicedet1_OD_link__c
+ ];
+ if (countDel.size() > 0) {
for (Integer i = 0; i < countDel.size(); i++) {
- outordercountMap.put(countDel[i].Invoicedet1_OD_link__c + countDel[i].Asset_Model_No__c,countDel[i]);
- if(outorderMoneytMap.containsKey(countDel[i].Invoicedet1_OD_link__c)){
- outorderMoneytMap.put(countDel[i].Invoicedet1_OD_link__c,outorderMoneytMap.get(countDel[i].Invoicedet1_OD_link__c) + countDel[i].InvoicedProCost_RMB__c);
+ outordercountMap.put(countDel[i].Invoicedet1_OD_link__c + countDel[i].Asset_Model_No__c, countDel[i]);
+ if (outorderMoneytMap.containsKey(countDel[i].Invoicedet1_OD_link__c)) {
+ outorderMoneytMap.put(
+ countDel[i].Invoicedet1_OD_link__c,
+ outorderMoneytMap.get(countDel[i].Invoicedet1_OD_link__c) + countDel[i].InvoicedProCost_RMB__c
+ );
}
invoiceOrderdetail1Recoeds.add(new InvoiceOrderInfo(countDel[i]));
}
}
- for (InvoiceOrderInfo ass : invoiceOrderRecoeds) {
- if(outorderMoneytMap.containsKey(ass.esd.id)){
+ for (InvoiceOrderInfo ass : invoiceOrderRecoeds) {
+ if (outorderMoneytMap.containsKey(ass.esd.id)) {
ass.needInvoiceCount = outorderMoneytMap.get(ass.esd.id);
}
ass.check = true;
}
}
//ApexPages.addmessage(new ApexPages.message(ApexPages.severity.Error, 'outordercountMap +++++' + outordercountMap.size() + outordercountMap));
- if(SecondDealer==null||SecondDealer==''){
+ if (SecondDealer == null || SecondDealer == '') {
provinceOpts.add(new SelectOption('', '-鏃�-'));
- for(Integer i = 0; i < Dealerelationship.size(); i++){
- provinceOpts.add(new SelectOption(Dealerelationship[i].Dealer_subordinate__c, Dealerelationship[i].Dealer_subordinate__r.Name));
+ for (Integer i = 0; i < Dealerelationship.size(); i++) {
+ provinceOpts.add(
+ new SelectOption(Dealerelationship[i].Dealer_subordinate__c, Dealerelationship[i].Dealer_subordinate__r.Name)
+ );
}
- }else{
+ } else {
provinceOpts.add(new SelectOption('', '-鏃�-'));
- for(Integer i = 0; i < Dealerelationship.size(); i++){
- if(Dealerelationship[i].Dealer_subordinate__r.Name == SecondDealer){
+ for (Integer i = 0; i < Dealerelationship.size(); i++) {
+ if (Dealerelationship[i].Dealer_subordinate__r.Name == SecondDealer) {
provinceOpts.add(new SelectOption(Dealerelationship[i].Dealer_subordinate__c, SecondDealer));
}
}
- for(Integer i = 0; i < Dealerelationship.size(); i++){
- if(Dealerelationship[i].Dealer_subordinate__r.Name != SecondDealer){
- provinceOpts.add(new SelectOption(Dealerelationship[i].Dealer_subordinate__c, Dealerelationship[i].Dealer_subordinate__r.Name));
+ for (Integer i = 0; i < Dealerelationship.size(); i++) {
+ if (Dealerelationship[i].Dealer_subordinate__r.Name != SecondDealer) {
+ provinceOpts.add(
+ new SelectOption(Dealerelationship[i].Dealer_subordinate__c, Dealerelationship[i].Dealer_subordinate__r.Name)
+ );
}
}
}
@@ -365,26 +395,29 @@
}
}*/
-
-
- Map<String,String> consumableaccessoriesMap = new Map<String,String>();
- Map<String,String> invorceOrderIdMap = new Map<String,String>();
- List<Consumable_accessories_invoice__c> consumableaccessories =[SELECT Id, Name,Attachment_ID__c,Accessories_type__c FROM Consumable_accessories_invoice__c WHERE Invoice_code__c =:invoiceId ];
- if(consumableaccessories.size()>0){
+ Map<String, String> consumableaccessoriesMap = new Map<String, String>();
+ Map<String, String> invorceOrderIdMap = new Map<String, String>();
+ List<Consumable_accessories_invoice__c> consumableaccessories = [
+ SELECT Id, Name, Attachment_ID__c, Accessories_type__c
+ FROM Consumable_accessories_invoice__c
+ WHERE Invoice_code__c = :invoiceId
+ ];
+ System.debug('consumableaccessories = ' + consumableaccessories);
+ if (consumableaccessories.size() > 0) {
for (Integer i = 0; i < consumableaccessories.size(); i++) {
- consumableaccessoriesMap.put(consumableaccessories[i].Attachment_ID__c,consumableaccessories[i].Accessories_type__c);
- invorceOrderIdMap.put(consumableaccessories[i].Attachment_ID__c,consumableaccessories[i].Id);
+ consumableaccessoriesMap.put(consumableaccessories[i].Attachment_ID__c, consumableaccessories[i].Accessories_type__c);
+ invorceOrderIdMap.put(consumableaccessories[i].Attachment_ID__c, consumableaccessories[i].Id);
}
}
- List<Attachment> attachmentinfo =[SELECT Id, Name,OwnerId,CreatedDate FROM Attachment WHERE parentid =:invoiceId ];
- if(attachmentinfo.size()>0){
+ List<Attachment> attachmentinfo = [SELECT Id, Name, OwnerId, CreatedDate FROM Attachment WHERE parentid = :invoiceId];
+ if (attachmentinfo.size() > 0) {
for (Integer i = 0; i < attachmentinfo.size(); i++) {
attachmentRecoeds.add(new InvoiceOrderInfo(attachmentinfo[i]));
}
}
- for (InvoiceOrderInfo ass : attachmentRecoeds) {
- if(consumableaccessoriesMap.containsKey(ass.attach.Id)){
+ for (InvoiceOrderInfo ass : attachmentRecoeds) {
+ if (consumableaccessoriesMap.containsKey(ass.attach.Id)) {
ass.mailSelectOptsin = consumableaccessoriesMap.get(ass.attach.Id);
ass.invoiceOrderId = invorceOrderIdMap.get(ass.attach.Id);
}
@@ -395,27 +428,27 @@
// 妫�绱�(鏈紑鍙戠エ鍑哄簱鍗�)
public void InvoiceorderSearch() {
- Map<String,String> invoiceOrderMap = new Map<String,String>();
- String msoql ='';
+ Map<String, String> invoiceOrderMap = new Map<String, String>();
+ String msoql = '';
List<InvoiceOrderInfo> invoiceOrderdetailMid = new List<InvoiceOrderInfo>();
- if(String.isBlank(invoiceId)){
+ if (String.isBlank(invoiceId)) {
msoql = makeSoql();
- }else{
+ } else {
msoql = makeSoqlInit();
}
//String msoql = makeSoql();
invoiceOrderList = Database.query(msoql);
- for (InvoiceOrderInfo ass : invoiceOrderRecoeds) {
- if(ass.check == true){
+ for (InvoiceOrderInfo ass : invoiceOrderRecoeds) {
+ if (ass.check == true) {
invoiceOrderdetailMid.add(ass);
- invoiceOrderMap.put(ass.esd.Name,ass.esd.Name);
+ invoiceOrderMap.put(ass.esd.Name, ass.esd.Name);
}
}
invoiceOrderRecoeds = new List<InvoiceOrderInfo>();
invoiceOrderRecoeds.addAll(invoiceOrderdetailMid);
- for(Integer i = 0; i < invoiceOrderList.size(); i++){
- if(invoiceOrderMap.containsKey(invoiceOrderList[i].Name)){
- }else{
+ for (Integer i = 0; i < invoiceOrderList.size(); i++) {
+ if (invoiceOrderMap.containsKey(invoiceOrderList[i].Name)) {
+ } else {
invoiceOrderRecoeds.add(new InvoiceOrderInfo(invoiceOrderList[i]));
invoiceOrderMap.put(invoiceOrderList[i].Name, invoiceOrderList[i].Name);
}
@@ -424,15 +457,15 @@
public void nvoiceorderremind() {
List<String> invoiceOrderAccountList = new List<String>();
- for (InvoiceOrderInfo ass : invoiceOrderRecoeds) {
- if(ass.check == true && ass.esd.ShipmentAccount__c != shipmentAccount){
+ for (InvoiceOrderInfo ass : invoiceOrderRecoeds) {
+ if (ass.check == true && ass.esd.ShipmentAccount__c != shipmentAccount) {
invoiceOrderAccountList.add(ass.esd.Name);
}
}
- if(invoiceOrderAccountList.size() > 0 ){
- orderRemind = '鍑哄簱鍗�'+ invoiceOrderAccountList + '瀹㈡埛鍚嶄笌鍙戠エ瀹㈡埛鍚嶄笉涓�鑷达紒';
+ if (invoiceOrderAccountList.size() > 0) {
+ orderRemind = '鍑哄簱鍗�' + invoiceOrderAccountList + '瀹㈡埛鍚嶄笌鍙戠エ瀹㈡埛鍚嶄笉涓�鑷达紒';
ApexPages.addmessage(new ApexPages.message(ApexPages.severity.WARNING, orderRemind));
- }else{
+ } else {
orderRemind = '';
//return '';
}
@@ -440,12 +473,13 @@
// 淇濆瓨闄勪欢
public PageReference saveAttachment() {
Consumable_accessories_invoice__c attachmentdetails = new Consumable_accessories_invoice__c();
- for (InvoiceOrderInfo ass : AttachmentRecoeds) {
- if(!String.isBlank(ass.mailSelectOptsin)){
+ System.debug('AttachmentRecoeds = ' + AttachmentRecoeds);
+ for (InvoiceOrderInfo ass : AttachmentRecoeds) {
+ if (!String.isBlank(ass.mailSelectOptsin)) {
attachmentdetails.Id = ass.invoiceOrderId;
attachmentdetails.Attachment_ID__c = ass.attach.Id;
attachmentdetails.Accessories_type__c = ass.mailSelectOptsin;
- if(String.isBlank(ass.invoiceOrderId)){
+ if (String.isBlank(ass.invoiceOrderId)) {
attachmentdetails.Invoice_code__c = invoiceId;
}
upsert attachmentdetails;
@@ -455,15 +489,13 @@
}
// 淇濆瓨鎸夐挳
public PageReference save() {
+ System.debug('enter ConInvoiceViewController.save success');
List<String> chukudanID = new List<String>();
- // 鐢婚潰褰曞叆椤瑰垽鏂�
- //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.Error, 'HospitalInfo +++++' + HospitalInfo + '-----' + HospitalName));
- //return null;
- if(coc.Name ==''||coc.Name == null){
+ if (coc.Name == '' || coc.Name == null) {
coc.Name.addError('璇峰綍鍏ュ彂绁ㄥ彿銆�');
return null;
}
- if(coc.Invoice_Date__c == null){
+ if (coc.Invoice_Date__c == null) {
coc.Invoice_Date__c.addError('璇峰綍鍏ュ彂绁ㄦ棩鏈熴��');
return null;
}
@@ -473,131 +505,130 @@
coc.addError('蹇呴』杈撳叆瀹㈡埛鍚嶆垨鑰呯粡閿�鍟嗐��');
return null;
}*/
- if(String.isBlank(HospitalInfo) && SecondDealer == null){
+ if (String.isBlank(HospitalInfo) && SecondDealer == null) {
coc.addError('蹇呴』杈撳叆瀹㈡埛鍚嶆垨鑰呬簩绾х粡閿�鍟嗐��');
return null;
}
- /*if(String.isBlank(HospitalInfo) && SecondDealer != null && coc.Order_ForDealerText__c != null){
- coc.Order_ForDealerText__c.addError('璇疯緭鍏ヤ簩绾х粡閿�鍟嗘垨鑰呯粡閿�鍟嗭紙褰曞叆锛夈��');
- return null;
- }*/
- //CHAN-BSS5SQ update by rentongxiao 2020-08-26 start
-/* if(HospitalInfo !=null && HospitalInfo !='' && SecondDealer != null && coc.Order_ForDealerText__c != null){
- coc.addError('璇疯緭鍏ュ鎴峰悕銆佷簩绾х粡閿�鍟嗗拰缁忛攢鍟嗭紙褰曞叆锛夊彧鍙緭鍏ヤ竴涓��');
- return null;
- }
-*/
if (HospitalInfo != null && HospitalInfo != '' && SecondDealer != null) {
coc.addError('璇疯緭鍏ュ鎴峰悕銆佷簩绾х粡閿�鍟嗗彧鍙緭鍏ヤ竴涓��');
-
}
-/* if(HospitalInfo !=null && HospitalInfo !='' && (SecondDealer != null || coc.Order_ForDealerText__c != null)){
+ /* if(HospitalInfo !=null && HospitalInfo !='' && (SecondDealer != null || coc.Order_ForDealerText__c != null)){
coc.addError('璇疯緭鍏ュ鎴峰悕銆佷簩绾х粡閿�鍟嗗拰缁忛攢鍟嗭紙褰曞叆锛夊彧鍙緭鍏ヤ竴涓��');
return null;
}*/
//CHAN-BSS5SQ update by rentongxiao 2020-08-26 end
- if(HospitalInfo !=null && HospitalInfo !=''){
- if(coc.Order_ForCustomerText__c ==null){
+ if (HospitalInfo != null && HospitalInfo != '') {
+ if (coc.Order_ForCustomerText__c == null) {
coc.Order_ForCustomerText__c.addError('璇疯緭鍏ョ瀹ゃ��');
return null;
}
- }else{
- if(coc.Order_ForCustomerText__c !=null){
+ } else {
+ if (coc.Order_ForCustomerText__c != null) {
coc.Order_ForCustomerText__c.addError('涓嶉渶瑕佽緭鍏ョ瀹ゃ��');
return null;
}
}
//update by rentx 2021-02-24 CHAN-BYH9PK start
//鍥犱负涔嬪墠榛樿 鍖婚櫌 浜岀骇缁忛攢鍟� 缁忛攢鍟嗗綍鍏ュ彧鑳藉嚭鍏ヤ竴涓��,鎵�浠ヤ笉浼氬嚭閿�,浣嗘槸鐜板湪鐨勬儏鍐垫槸缁忛攢鍟嗘湁鍊� 缁忛攢鍟嗗綍鍏ヤ篃鏈夊�� 鎵�浠ヤ細鎶ラ敊,鍥犳淇敼 shipmentAccountString 鍙兘瀛樻斁涓�涓�煎嵆鍙�
- String shipmentAccountString ='';
+ String shipmentAccountString = '';
// String a = HospitalInfo == null? '' : HospitalInfo;
// String b = SecondDealer == null? '' : SecondDealer;
// String c = coc.Order_ForDealerText__c == null? '' : coc.Order_ForDealerText__c;
// shipmentAccountString = a + b + c;
- if (HospitalInfo != null ) {
+ if (HospitalInfo != null) {
shipmentAccountString = HospitalInfo;
- }else if (SecondDealer != null) {
+ } else if (SecondDealer != null) {
shipmentAccountString = SecondDealer;
- }else {
- shipmentAccountString = coc.Order_ForDealerText__c == null? '' : coc.Order_ForDealerText__c;
+ } else {
+ shipmentAccountString = coc.Order_ForDealerText__c == null ? '' : coc.Order_ForDealerText__c;
}
//update by rentx 2021-02-24 CHAN-BYH9PK end
Integer x = 0;
List<String> invoiceOrderAccountList = new List<String>();
- for (InvoiceOrderInfo ass : invoiceOrderRecoeds) {
- if(String.isBlank(deliveryId)){
- if(ass.check == true){
+ for (InvoiceOrderInfo ass : invoiceOrderRecoeds) {
+ if (String.isBlank(deliveryId)) {
+ if (ass.check == true) {
x++;
System.debug(shipmentAccountString);
- if(HospitalInfo != null && HospitalInfo !=''){
- if(ass.esd.Order_ForHospital__c != shipmentAccountString){
+ if (HospitalInfo != null && HospitalInfo != '') {
+ if (ass.esd.Order_ForHospital__c != shipmentAccountString) {
invoiceOrderAccountList.add(ass.esd.Name);
}
}
- if(SecondDealer != null){
- if(ass.esd.Order_ForDealer__c != shipmentAccountString && ass.esd.Order_ForDealerText__c != shipmentAccountString){
+ if (SecondDealer != null) {
+ if (
+ ass.esd.Order_ForDealer__c != shipmentAccountString &&
+ ass.esd.Order_ForDealerText__c != shipmentAccountString
+ ) {
//ApexPages.addmessage(new ApexPages.message(ApexPages.severity.Error, shipmentAccountString + ass.esd.Order_ForDealer__c + ass.esd.Order_ForDealerText__c));
invoiceOrderAccountList.add(ass.esd.Name);
}
}
//update by rentx 2021-2-24 CHAN-BYH9PK start
// if(coc.Order_ForDealerText__c != null){
- if(coc.Order_ForDealerText__c != null && (HospitalInfo == null || HospitalInfo == '' )){
- //update by rentx 2021-2-24 CHAN-BYH9PK end
- if((ass.esd.Order_ForDealerText__c != null || ass.esd.Order_ForDealerText__c != '') && ass.esd.ShipmentAccount__c != shipmentAccountString){
+ if (coc.Order_ForDealerText__c != null && (HospitalInfo == null || HospitalInfo == '')) {
+ //update by rentx 2021-2-24 CHAN-BYH9PK end
+ if (
+ (ass.esd.Order_ForDealerText__c != null || ass.esd.Order_ForDealerText__c != '') &&
+ ass.esd.ShipmentAccount__c != shipmentAccountString
+ ) {
invoiceOrderAccountList.add(ass.esd.Name);
}
}
}
- }else{
- if(HospitalInfo != null && HospitalInfo !=''){
- System.debug('++++++++++++' + ass.esd.Order_ForHospital__c + ' '+shipmentAccountString);
- if(ass.esd.Order_ForHospital__c != shipmentAccountString){
+ } else {
+ if (HospitalInfo != null && HospitalInfo != '') {
+ System.debug('++++++++++++' + ass.esd.Order_ForHospital__c + ' ' + shipmentAccountString);
+ if (ass.esd.Order_ForHospital__c != shipmentAccountString) {
invoiceOrderAccountList.add(ass.esd.Name);
}
}
- if(SecondDealer != null){
- if(ass.esd.Order_ForDealer__c != shipmentAccountString){
+ if (SecondDealer != null) {
+ if (ass.esd.Order_ForDealer__c != shipmentAccountString) {
invoiceOrderAccountList.add(ass.esd.Name);
}
}
//update by rentx 2021-2-24 CHAN-BYH9PK start
// if(coc.Order_ForDealerText__c != null){
- if(coc.Order_ForDealerText__c != null && (HospitalInfo == null || HospitalInfo == '' )){
- //update by rentx 2021-2-24 CHAN-BYH9PK end
- if((ass.esd.Order_ForDealerText__c != null || ass.esd.Order_ForDealerText__c != '') && ass.esd.ShipmentAccount__c != shipmentAccountString){
+ if (coc.Order_ForDealerText__c != null && (HospitalInfo == null || HospitalInfo == '')) {
+ //update by rentx 2021-2-24 CHAN-BYH9PK end
+ if (
+ (ass.esd.Order_ForDealerText__c != null || ass.esd.Order_ForDealerText__c != '') &&
+ ass.esd.ShipmentAccount__c != shipmentAccountString
+ ) {
invoiceOrderAccountList.add(ass.esd.Name);
}
}
}
}
// invoiceOrderAccountList.add('12345');
- if(invoiceOrderAccountList.size() > 0 ){
+ if (invoiceOrderAccountList.size() > 0) {
orderRemind = invoiceOrderAccountList + '鍑哄簱鍗曞鎴峰悕涓庡彂绁ㄥ鎴峰悕涓嶄竴鑷达紒';
coc.addError(invoiceOrderAccountList + '鍑哄簱鍗曞鎴峰悕涓庡彂绁ㄥ鎴峰悕涓嶄竴鑷达紒');
return null;
- }else{
+ } else {
orderRemind = '';
//return '';
}
- if(String.isBlank(deliveryId)){
- if(x < 1){
+ if (String.isBlank(deliveryId)) {
+ if (x < 1) {
coc.addError('璇烽�夋嫨闇�瑕佸紑鍙戠エ鐨勫嚭搴撳崟锛�');
return null;
}
}
Consumable_order__c invoiceHead = new Consumable_order__c();
- List<String> outOrderIdList = New List<String>();
- List<Consumable_order_LinkTable__c> invoiceLinkList = New List<Consumable_order_LinkTable__c>();
- Map<String,String> insertDetMap = new Map<String,String>();
- Map<String,String> deleteDetMap = new Map<String,String>();
+ List<String> outOrderIdList = new List<String>();
+ List<Consumable_order_LinkTable__c> invoiceLinkList = new List<Consumable_order_LinkTable__c>();
+ Map<String, String> insertDetMap = new Map<String, String>();
+ Map<String, String> deleteDetMap = new Map<String, String>();
//鏂板缓鍙戠エ鏃�
Savepoint sp = Database.setSavepoint();
- try{
- if(String.isBlank(invoiceId)){
+ try {
+ if (String.isBlank(invoiceId)) {
invoiceHead.Name = coc.Name;
- if(coc.Invoice_status__c ==null||String.isBlank(coc.Invoice_status__c))coc.Invoice_status__c ='鑽夋涓�';
+ if (coc.Invoice_status__c == null || String.isBlank(coc.Invoice_status__c))
+ coc.Invoice_status__c = '鑽夋涓�';
invoiceHead.Order_type__c = '鍙戠エ';
invoiceHead.Invoice_Date__c = coc.Invoice_Date__c;
invoiceHead.Dealer_Info__c = accountid;
@@ -605,78 +636,84 @@
invoiceHead.Invoice_status__c = '鑽夋涓�';
invoiceHead.Order_ProType__c = agencyProType;
invoiceHead.Order_ForCustomerText__c = coc.Order_ForCustomerText__c;
- if(deliveryId != null){
+ if (deliveryId != null) {
invoiceHead.Outbound_order__c = deliveryId;
}
invoiceHead.RecordTypeid = System.Label.RT_ConOrder_Invoice;
- if(SecondDealer==null){
- if(HospitalInfo != null && HospitalInfo !=''){
+ if (SecondDealer == null) {
+ if (HospitalInfo != null && HospitalInfo != '') {
invoiceHead.Order_ForHospital__c = HospitalInfo;
}
- }else {
+ } else {
invoiceHead.Order_ForDealer__c = SecondDealer;
}
invoiceHead.Order_ForDealerText__c = coc.Order_ForDealerText__c;
insert invoiceHead;
- invoiceId = invoiceHead.Id ;
- List<Consumable_order__c> cocinfo = New List<Consumable_order__c>();
- cocinfo = [SELECT Id,Name,
- Invoice_status__c,
- Invoice_Date__c,
- Order_ForDealerText__c,
- Dealer_Info__c,
- Order_ForDealer__c,
- Order_ForDealer__r.Name,
- Order_ForHospital__c,
- Order_date__c,
- Billed_Status__c,
- ShipmentAccount__c,
- Order_Dealer_Info__c,
- SummonsForDirction__c,
- Order_ForCustomerText__c,
- Invoice_Note__c,
- Invoice_attachment__c,
- Invoicedet_attachment__c,
- Outbound_order__c
- FROM Consumable_order__c
- WHERE Id =:invoiceId];
- if (cocinfo.size()>0){
+ invoiceId = invoiceHead.Id;
+ List<Consumable_order__c> cocinfo = new List<Consumable_order__c>();
+ cocinfo = [
+ SELECT
+ Id,
+ Name,
+ Invoice_status__c,
+ Invoice_Date__c,
+ Order_ForDealerText__c,
+ Dealer_Info__c,
+ Order_ForDealer__c,
+ Order_ForDealer__r.Name,
+ Order_ForHospital__c,
+ Order_date__c,
+ Billed_Status__c,
+ ShipmentAccount__c,
+ Order_Dealer_Info__c,
+ SummonsForDirction__c,
+ Order_ForCustomerText__c,
+ Invoice_Note__c,
+ Invoice_attachment__c,
+ Invoicedet_attachment__c,
+ Outbound_order__c
+ FROM Consumable_order__c
+ WHERE Id = :invoiceId
+ ];
+ if (cocinfo.size() > 0) {
invoiceHead = cocinfo[0];
}
- if(!String.isBlank(deliveryId)){
- for (InvoiceOrderInfo ass : invoiceOrderRecoeds) {
+ if (!String.isBlank(deliveryId)) {
+ for (InvoiceOrderInfo ass : invoiceOrderRecoeds) {
chukudanID.add(ass.esd.Id);
- insertDetMap.put(ass.esd.Id,invoiceHead.Id);
+ insertDetMap.put(ass.esd.Id, invoiceHead.Id);
}
- }else{
- for (InvoiceOrderInfo ass : invoiceOrderRecoeds) {
- if(!String.isBlank(deliveryId)){
+ } else {
+ for (InvoiceOrderInfo ass : invoiceOrderRecoeds) {
+ if (!String.isBlank(deliveryId)) {
chukudanID.add(ass.esd.Id);
- insertDetMap.put(ass.esd.Id,invoiceHead.Id);
- }else {
- if(ass.check == true){
+ insertDetMap.put(ass.esd.Id, invoiceHead.Id);
+ } else {
+ if (ass.check == true) {
chukudanID.add(ass.esd.Id);
- insertDetMap.put(ass.esd.Id,invoiceHead.Id);
- }else{
+ insertDetMap.put(ass.esd.Id, invoiceHead.Id);
+ } else {
//deleteDetMap.put(ass.esd.Id,invoiceHead.Id);
}
}
}
}
//鏂板缓鍙戠エ鏄庣粏1
- if(chukudanID.size() > 0 ){
+ if (chukudanID.size() > 0) {
newinvoicedetails1(chukudanID);
}
//ApexPages.addmessage(new ApexPages.message(ApexPages.severity.Error, 'deleteDetMap +++++' + deleteDetMap.size()));
//return null;
- if(insertDetMap.size() > 0 ){
+ if (insertDetMap.size() > 0) {
for (String field : insertDetMap.keySet()) {
- List<Consumable_order_LinkTable__c> existLinkinfo = [SELECT Id FROM Consumable_order_LinkTable__c
- WHERE Outboundorder_Code_link__c = :field
- AND Invoice_Code_link__c = :insertDetMap.get(field)];
- if(existLinkinfo.size() < 1){
+ List<Consumable_order_LinkTable__c> existLinkinfo = [
+ SELECT Id
+ FROM Consumable_order_LinkTable__c
+ WHERE Outboundorder_Code_link__c = :field AND Invoice_Code_link__c = :insertDetMap.get(field)
+ ];
+ if (existLinkinfo.size() < 1) {
Consumable_order_LinkTable__c invoiceLink = new Consumable_order_LinkTable__c();
invoiceLink.Name = field + insertDetMap.get(field);
invoiceLink.Outboundorder_Code_link__c = field;
@@ -700,9 +737,8 @@
}
delete invoiceLinkdetList;
}*/
- }
- //CHAN-BSS5SQ update by rentongxiao 2020-09-04 start
- else if (String.isNotBlank(reopen) && reopen.equals('isreopen') && String.isNotBlank(invoiceId)) {
+ } else if (String.isNotBlank(reopen) && reopen.equals('isreopen') && String.isNotBlank(invoiceId)) {
+ //CHAN-BSS5SQ update by rentongxiao 2020-09-04 start
//濡傛灉鏄� 浣滃簾閲嶅紑
//1. 璁剧疆鏂板彂绁ㄤ俊鎭�
invoiceHead.Name = coc.Name;
@@ -713,67 +749,83 @@
invoiceHead.Invoice_status__c = '鑽夋涓�';
invoiceHead.Order_ProType__c = agencyProType;
invoiceHead.Order_ForCustomerText__c = coc.Order_ForCustomerText__c;
- if(deliveryId != null){
+ if (deliveryId != null) {
invoiceHead.Outbound_order__c = deliveryId;
}
invoiceHead.RecordTypeid = System.Label.RT_ConOrder_Invoice;
- if(SecondDealer==null){
- if(HospitalInfo != null && HospitalInfo !=''){
+ if (SecondDealer == null) {
+ if (HospitalInfo != null && HospitalInfo != '') {
invoiceHead.Order_ForHospital__c = HospitalInfo;
}
- }else {
+ } else {
invoiceHead.Order_ForDealer__c = SecondDealer;
}
invoiceHead.Order_ForDealerText__c = coc.Order_ForDealerText__c;
+ System.debug('invoiceHead = ' + invoiceHead);
insert invoiceHead;
List<String> updateChukudanId = new List<String>();
//鑾峰彇鍘熷彂绁ㄧ浉鍏宠仈鐨勯摼鎺ヨ〃淇℃伅
- List<Consumable_order_LinkTable__c> tLinkList = [SELECT Outboundorder_Code_link__c
- FROM Consumable_order_LinkTable__c
- WHERE Invoice_Code_link__c = :invoiceId];
+ List<Consumable_order_LinkTable__c> tLinkList = [
+ SELECT Outboundorder_Code_link__c
+ FROM Consumable_order_LinkTable__c
+ WHERE Invoice_Code_link__c = :invoiceId
+ ];
- for(Consumable_order_LinkTable__c colc : tLinkList){
+ for (Consumable_order_LinkTable__c colc : tLinkList) {
colc.Invoice_Code_link__c = invoiceHead.Id;
updateChukudanId.add(colc.Outboundorder_Code_link__c);
}
+ System.debug('tLinkList = ' + tLinkList);
update tLinkList;
//鏇存柊鍙戠エ鏄庣粏淇℃伅
//鑾峰彇鍑哄簱鍗�,璁剧疆鍏宠仈鍏崇郴
//鑾峰彇鍑哄簱鍗曟槑缁嗕俊鎭�,鍥犱负鍑哄簱鍗曚俊鎭拰鍑哄簱鍗曟槑缁嗕俊鎭槸鍏宠仈鐨�,鎵�鏈夊彧闇�瑕佸洖婊氬嚭搴撳崟鏄庣粏淇℃伅鍗冲彲
- Map<String,Consumable_Orderdetails__c> tempCocMap = new Map<String,Consumable_Orderdetails__c>();
+ Map<String, Consumable_Orderdetails__c> tempCocMap = new Map<String, Consumable_Orderdetails__c>();
List<Consumable_Orderdetails__c> tempCountList = [
- SELECT Id,Consumable_order__c,Asset_Model_No__c,InvoicedProCost_RMB__c, Invoicedet1_OD_link__c ,InvoicedProduct_RMB__c,Invoiced_Procount__c,Invoiced_BoxCount__c,Invoice_Unit__c
- FROM Consumable_Orderdetails__c WHERE Consumable_order__c = :invoiceId];
- for(Consumable_Orderdetails__c cocTemp : tempCountList){
+ SELECT
+ Id,
+ Consumable_order__c,
+ Asset_Model_No__c,
+ InvoicedProCost_RMB__c,
+ Invoicedet1_OD_link__c,
+ InvoicedProduct_RMB__c,
+ Invoiced_Procount__c,
+ Invoiced_BoxCount__c,
+ Invoice_Unit__c
+ FROM Consumable_Orderdetails__c
+ WHERE Consumable_order__c = :invoiceId
+ ];
+ for (Consumable_Orderdetails__c cocTemp : tempCountList) {
cocTemp.Consumable_order__c = invoiceHead.Id;
- tempCocMap.put(cocTemp.Invoicedet1_OD_link__c +cocTemp.Asset_Model_No__c, cocTemp);
+ tempCocMap.put(cocTemp.Invoicedet1_OD_link__c + cocTemp.Asset_Model_No__c, cocTemp);
}
+ System.debug('tempCountList = ' + tempCountList);
update tempCountList;
List<Consumable_Orderdetails__c> updateFromList = [
- SELECT
- Id,
- Consumable_order__c,
- RrturnPro_count__c,
- Delivery_List_RMB__c,
- InvoicedProCost_RMB__c,
- Invoiced_Procount__c,
- Invoice_Unitprice__c,
- Box_Piece__c,
- Invoice_Unit__c,
- Consumable_order__r.Invoice_total_amount__c,
- ProductPacking_list_manual__c,
- InvoicedProduct_RMB__c,
- Invoiced_BoxCount__c,
- Shipment_amount__c,
- Asset_Model_No__c
- FROM Consumable_Orderdetails__c
- WHERE Consumable_order__c in : updateChukudanId
+ SELECT
+ Id,
+ Consumable_order__c,
+ RrturnPro_count__c,
+ Delivery_List_RMB__c,
+ InvoicedProCost_RMB__c,
+ Invoiced_Procount__c,
+ Invoice_Unitprice__c,
+ Box_Piece__c,
+ Invoice_Unit__c,
+ Consumable_order__r.Invoice_total_amount__c,
+ ProductPacking_list_manual__c,
+ InvoicedProduct_RMB__c,
+ Invoiced_BoxCount__c,
+ Shipment_amount__c,
+ Asset_Model_No__c
+ FROM Consumable_Orderdetails__c
+ WHERE Consumable_order__c IN :updateChukudanId
];
- for(Consumable_Orderdetails__c corderc : updateFromList){
+ for (Consumable_Orderdetails__c corderc : updateFromList) {
String tempStr = corderc.Consumable_order__c + corderc.Asset_Model_No__c;
- if (tempCocMap.get(tempStr) != null ) {
+ if (tempCocMap.get(tempStr) != null) {
//璁剧疆宸插彂绁ㄩ噾棰� 鍑哄簱鍗曠殑宸插彂绁ㄩ噾棰� - 鍙戠エ鐨勫彂绁ㄩ噾棰�
corderc.InvoicedProCost_RMB__c = corderc.InvoicedProCost_RMB__c - tempCocMap.get(tempStr).InvoicedProduct_RMB__c;
//璁剧疆宸插彂绁ㄦ暟閲� 鍑哄簱鍗曠殑宸插彂绁ㄦ暟閲� - 鍙戠エ鐨勫彂绁ㄦ暟閲�(鐩�)
@@ -781,159 +833,173 @@
//璁剧疆鍙戠エ鍗曚环
if (corderc.Box_Piece__c == '鐩�' && corderc.Invoice_Unit__c == '涓�') {
corderc.Invoice_Unitprice__c = corderc.Delivery_List_RMB__c / corderc.ProductPacking_list_manual__c;
- }else{
+ } else {
corderc.Invoice_Unitprice__c = corderc.Delivery_List_RMB__c;
}
}
-
}
Consumable_order__c tempcoc = new Consumable_order__c();
tempcoc.Id = invoiceId;
+ System.debug('tempcoc = ' + tempcoc);
delete tempcoc;
invoiceId = invoiceHead.Id;
+ System.debug('updateFromList = ' + updateFromList);
update updateFromList;
//--------------------------------------------------------------------------
- for (InvoiceOrderInfo ass : invoiceOrderRecoeds) {
- if(ass.check == true){
- insertDetMap.put(ass.esd.Id,invoiceHead.Id);
- }else{
- outOrderIdList.add(ass.esd.Id);
- deleteDetMap.put(ass.esd.Id,invoiceHead.Id);
+ for (InvoiceOrderInfo ass : invoiceOrderRecoeds) {
+ if (ass.check == true) {
+ insertDetMap.put(ass.esd.Id, invoiceHead.Id);
+ } else {
+ outOrderIdList.add(ass.esd.Id);
+ deleteDetMap.put(ass.esd.Id, invoiceHead.Id);
+ }
+ }
+ if (outOrderIdList.size() > 0) {
+ getdefaultMapinfo(outOrderIdList);
+ }
+ //琚�変腑鐨勫嚭搴撳崟闆嗗悎
+ if (insertDetMap.size() > 0) {
+ List<Consumable_order_LinkTable__c> existLinkinfo = [
+ SELECT Id, Invoice_Code_link__c, Outboundorder_Code_link__c
+ FROM Consumable_order_LinkTable__c
+ WHERE Outboundorder_Code_link__c IN :insertDetMap.keySet() AND Invoice_Code_link__c = :invoiceHead.Id
+ ];
+ //瀛樺湪娌℃湁涓庡彂绁ㄥ缓绔嬪叧鑱斿叧绯荤殑鍑哄簱鍗�
+ List<String> templist2 = new List<String>();
+ for (Consumable_order_LinkTable__c colc : existLinkinfo) {
+ templist2.add(colc.Outboundorder_Code_link__c);
+ }
+ //鑾峰彇璇ュ嚭搴撳崟
+ for (String field : insertDetMap.keySet()) {
+ if (!templist2.contains(field)) {
+ //璇ュ嚭搴撳崟涓嶅瓨鍦ㄤ笌閾炬帴琛ㄤ腑,鏂板缓閾炬帴
+ chukudanID.add(field);
+ Consumable_order_LinkTable__c invoiceLink = new Consumable_order_LinkTable__c();
+ invoiceLink.Name = field + insertDetMap.get(field);
+ invoiceLink.Outboundorder_Code_link__c = field;
+ invoiceLink.Invoice_Code_link__c = insertDetMap.get(field);
+ invoiceLinkList.add(invoiceLink);
}
}
- if(outOrderIdList.size() > 0){
- getdefaultMapinfo(outOrderIdList);
- }
- //琚�変腑鐨勫嚭搴撳崟闆嗗悎
- if(insertDetMap.size() > 0 ){
- List<Consumable_order_LinkTable__c> existLinkinfo =
- [SELECT Id,Invoice_Code_link__c,Outboundorder_Code_link__c
- FROM Consumable_order_LinkTable__c WHERE Outboundorder_Code_link__c in :insertDetMap.keySet()
- AND Invoice_Code_link__c = :invoiceHead.Id];
- //瀛樺湪娌℃湁涓庡彂绁ㄥ缓绔嬪叧鑱斿叧绯荤殑鍑哄簱鍗�
- List<String> templist2 = new List<String>();
- for(Consumable_order_LinkTable__c colc : existLinkinfo){
- templist2.add(colc.Outboundorder_Code_link__c);
- }
- //鑾峰彇璇ュ嚭搴撳崟
- for(String field : insertDetMap.keySet()){
- if (!templist2.contains(field)) {
- //璇ュ嚭搴撳崟涓嶅瓨鍦ㄤ笌閾炬帴琛ㄤ腑,鏂板缓閾炬帴
- chukudanID.add(field);
- Consumable_order_LinkTable__c invoiceLink = new Consumable_order_LinkTable__c();
- invoiceLink.Name = field + insertDetMap.get(field);
- invoiceLink.Outboundorder_Code_link__c = field;
- invoiceLink.Invoice_Code_link__c = insertDetMap.get(field);
- invoiceLinkList.add(invoiceLink);
- }
- }
- upsert invoiceLinkList;
-
- }
- //鍒犻櫎鍑哄簱鍗曢摼鎺ヨ〃
- if(deleteDetMap.size() > 0 ){
-
- List<Consumable_order_LinkTable__c> invoiceLinkdetList = New List<Consumable_order_LinkTable__c>();
- deleteOutboundorder(deleteDetMap,invoiceHead.Id);
- List<Consumable_order_LinkTable__c> existLinkinfo = [SELECT Id,Outboundorder_Code_link__c,Invoice_Code_link__c FROM Consumable_order_LinkTable__c
- WHERE Outboundorder_Code_link__c in :deleteDetMap.keySet()
- AND Invoice_Code_link__c = :invoiceHead.Id];
- for(Consumable_order_LinkTable__c colctemp : existLinkinfo){
- if (deleteDetMap.get(colctemp.Outboundorder_Code_link__c) == colctemp.Invoice_Code_link__c) {
- //瀛樺湪涓庤鍙戠エ鍏宠仈鐨勫嚭搴撳崟
- invoiceLinkdetList.add(colctemp);
- }
+ System.debug('invoiceLinkList = ' + invoiceLinkList);
+ upsert invoiceLinkList;
+ }
+ //鍒犻櫎鍑哄簱鍗曢摼鎺ヨ〃
+ if (deleteDetMap.size() > 0) {
+ List<Consumable_order_LinkTable__c> invoiceLinkdetList = new List<Consumable_order_LinkTable__c>();
+ deleteOutboundorder(deleteDetMap, invoiceHead.Id);
+ List<Consumable_order_LinkTable__c> existLinkinfo = [
+ SELECT Id, Outboundorder_Code_link__c, Invoice_Code_link__c
+ FROM Consumable_order_LinkTable__c
+ WHERE Outboundorder_Code_link__c IN :deleteDetMap.keySet() AND Invoice_Code_link__c = :invoiceHead.Id
+ ];
+ for (Consumable_order_LinkTable__c colctemp : existLinkinfo) {
+ if (deleteDetMap.get(colctemp.Outboundorder_Code_link__c) == colctemp.Invoice_Code_link__c) {
+ //瀛樺湪涓庤鍙戠エ鍏宠仈鐨勫嚭搴撳崟
+ invoiceLinkdetList.add(colctemp);
}
- delete invoiceLinkdetList;
}
- //鏂板缓鍙戠エ鏄庣粏1
- if(chukudanID.size() > 0 ){
- newinvoicedetails1(chukudanID);
- }
- }
- //CHAN-BSS5SQ update by rentongxiao 2020-09-04 end
- //缂栬緫鍚庝繚瀛�
- else{
- List<Consumable_order__c> cocinfo = New List<Consumable_order__c>();
- cocinfo = [SELECT Id,Name,
- Invoice_status__c,
- Invoice_Date__c,
- Order_ForDealerText__c,
- Dealer_Info__c,
- Order_ForDealer__c,
- Order_ForDealer__r.Name,
- Order_ForHospital__c,
- Order_date__c,
- Billed_Status__c,
- ShipmentAccount__c,
- Order_Dealer_Info__c,
- SummonsForDirction__c,
- Order_ForCustomerText__c,
- Invoice_Note__c,
- Invoice_attachment__c,
- Invoicedet_attachment__c,
- Outbound_order__c
- FROM Consumable_order__c
- WHERE Id =:invoiceId];
- if (cocinfo.size()>0){
+ System.debug('invoiceLinkdetList = ' + invoiceLinkdetList);
+ delete invoiceLinkdetList;
+ }
+ //鏂板缓鍙戠エ鏄庣粏1
+ if (chukudanID.size() > 0) {
+ newinvoicedetails1(chukudanID);
+ }
+ } else {
+ //CHAN-BSS5SQ update by rentongxiao 2020-09-04 end
+ //缂栬緫鍚庝繚瀛�
+ List<Consumable_order__c> cocinfo = new List<Consumable_order__c>();
+ cocinfo = [
+ SELECT
+ Id,
+ Name,
+ Invoice_status__c,
+ Invoice_Date__c,
+ Order_ForDealerText__c,
+ Dealer_Info__c,
+ Order_ForDealer__c,
+ Order_ForDealer__r.Name,
+ Order_ForHospital__c,
+ Order_date__c,
+ Billed_Status__c,
+ ShipmentAccount__c,
+ Order_Dealer_Info__c,
+ SummonsForDirction__c,
+ Order_ForCustomerText__c,
+ Invoice_Note__c,
+ Invoice_attachment__c,
+ Invoicedet_attachment__c,
+ Outbound_order__c
+ FROM Consumable_order__c
+ WHERE Id = :invoiceId
+ ];
+ if (cocinfo.size() > 0) {
invoiceHead = cocinfo[0];
}
- if(String.isNotBlank(deliveryId)){
- for (InvoiceOrderInfo ass : invoiceOrderRecoedschange) {
- insertDetMap.put(ass.esd.Id,invoiceHead.Id);
+ if (String.isNotBlank(deliveryId)) {
+ for (InvoiceOrderInfo ass : invoiceOrderRecoedschange) {
+ insertDetMap.put(ass.esd.Id, invoiceHead.Id);
}
//鎹㈣揣鍗曚骇鍝佹暟閲�
- Map<String,Decimal> needchangeOrderProcountMap = new Map<String,Decimal>();
- Map<String,Decimal> returnProcountMap = new Map<String,Decimal>();
- Map<String,Decimal> changeOrderProcountMap = new Map<String,Decimal>();
+ Map<String, Decimal> needchangeOrderProcountMap = new Map<String, Decimal>();
+ Map<String, Decimal> returnProcountMap = new Map<String, Decimal>();
+ Map<String, Decimal> changeOrderProcountMap = new Map<String, Decimal>();
List<Consumable_Orderdetails__c> detaliFromList = [
- SELECT Id,
- Name,
- Consumable_order__c,
- Asset_Model_No__c,
- Shipment_Count__c,
- RrturnPro_count__c,
- Delivery_List_RMB__c,
- InvoicedProCost_RMB__c,
- Invoiced_Procount__c,
- Invoiced_Count__c,
- Invoice_Unitprice__c,
- InvoiceProNot_count__c,
- Invoice_Unit__c,
- Box_Piece__c,
- Invoice_Cost_RMB__c
- FROM Consumable_Orderdetails__c
- WHERE Consumable_order__c = :deliveryId ];
- for(Consumable_Orderdetails__c changeOD : detaliFromList){
+ SELECT
+ Id,
+ Name,
+ Consumable_order__c,
+ Asset_Model_No__c,
+ Shipment_Count__c,
+ RrturnPro_count__c,
+ Delivery_List_RMB__c,
+ InvoicedProCost_RMB__c,
+ Invoiced_Procount__c,
+ Invoiced_Count__c,
+ Invoice_Unitprice__c,
+ InvoiceProNot_count__c,
+ Invoice_Unit__c,
+ Box_Piece__c,
+ Invoice_Cost_RMB__c
+ FROM Consumable_Orderdetails__c
+ WHERE Consumable_order__c = :deliveryId
+ ];
+ for (Consumable_Orderdetails__c changeOD : detaliFromList) {
needchangeOrderProcountMap.put(changeOD.Asset_Model_No__c, changeOD.Shipment_Count__c);
}
//鍙戠エ杩斿搧淇℃伅
List<Consumable_Orderdetails__c> returnCountList = [
- SELECT Id,
- Name,
- Consumable_order__c,
- Asset_Model_No__c,
- Shipment_Count__c,
- RrturnPro_count__c,
- Delivery_List_RMB__c,
- InvoicedProCost_RMB__c,
- Invoiced_Procount__c,
- Invoiced_Count__c,
- Invoice_Unitprice__c,
- InvoiceProNot_count__c,
- Invoice_Cost_RMB__c,
- Invoice_Unit__c,
- Box_Piece__c
- FROM Consumable_Orderdetails__c
- where Consumable_order__c = :invoiceId];
+ SELECT
+ Id,
+ Name,
+ Consumable_order__c,
+ Asset_Model_No__c,
+ Shipment_Count__c,
+ RrturnPro_count__c,
+ Delivery_List_RMB__c,
+ InvoicedProCost_RMB__c,
+ Invoiced_Procount__c,
+ Invoiced_Count__c,
+ Invoice_Unitprice__c,
+ InvoiceProNot_count__c,
+ Invoice_Cost_RMB__c,
+ Invoice_Unit__c,
+ Box_Piece__c
+ FROM Consumable_Orderdetails__c
+ WHERE Consumable_order__c = :invoiceId
+ ];
- for(Consumable_Orderdetails__c changeOD : returnCountList){
- if(changeOD.RrturnPro_count__c > 0){
- if(returnProcountMap.containsKey(changeOD.Asset_Model_No__c)){
- returnProcountMap.put(changeOD.Asset_Model_No__c, returnProcountMap.get(changeOD.Asset_Model_No__c) + changeOD.RrturnPro_count__c);
- }else{
+ for (Consumable_Orderdetails__c changeOD : returnCountList) {
+ if (changeOD.RrturnPro_count__c > 0) {
+ if (returnProcountMap.containsKey(changeOD.Asset_Model_No__c)) {
+ returnProcountMap.put(
+ changeOD.Asset_Model_No__c,
+ returnProcountMap.get(changeOD.Asset_Model_No__c) + changeOD.RrturnPro_count__c
+ );
+ } else {
returnProcountMap.put(changeOD.Asset_Model_No__c, changeOD.RrturnPro_count__c);
}
}
@@ -941,31 +1007,37 @@
//宸叉崲璐у崟鍑哄簱鏁伴噺淇℃伅
List<Consumable_Orderdetails__c> returnCount1List = [
- SELECT Id,
- Name,
- Consumable_order__c,
- Asset_Model_No__c,
- Shipment_Count__c,
- RrturnPro_count__c,
- Delivery_List_RMB__c,
- InvoicedProCost_RMB__c,
- Invoiced_Procount__c,
- Invoiced_Count__c,
- Invoice_Unitprice__c,
- InvoiceProNot_count__c,
- Invoice_Cost_RMB__c,
- Invoice_Unit__c,
- Box_Piece__c
- FROM Consumable_Orderdetails__c
- where Consumable_order__c in (SELECT Outboundorder_Code_link__c FROM Consumable_order_LinkTable__c
- WHERE Invoice_Code_link__c = :invoiceId)
- AND Consumable_order__r.Onchange_order__c = true
- AND Consumable_order__c != :deliveryId];
- for(Consumable_Orderdetails__c changeOD : returnCount1List){
+ SELECT
+ Id,
+ Name,
+ Consumable_order__c,
+ Asset_Model_No__c,
+ Shipment_Count__c,
+ RrturnPro_count__c,
+ Delivery_List_RMB__c,
+ InvoicedProCost_RMB__c,
+ Invoiced_Procount__c,
+ Invoiced_Count__c,
+ Invoice_Unitprice__c,
+ InvoiceProNot_count__c,
+ Invoice_Cost_RMB__c,
+ Invoice_Unit__c,
+ Box_Piece__c
+ FROM Consumable_Orderdetails__c
+ WHERE
+ Consumable_order__c IN (
+ SELECT Outboundorder_Code_link__c
+ FROM Consumable_order_LinkTable__c
+ WHERE Invoice_Code_link__c = :invoiceId
+ )
+ AND Consumable_order__r.Onchange_order__c = TRUE
+ AND Consumable_order__c != :deliveryId
+ ];
+ for (Consumable_Orderdetails__c changeOD : returnCount1List) {
changeOrderProcountMap.put(changeOD.Asset_Model_No__c, changeOD.Shipment_Count__c);
}
outOrderchange(insertDetMap);
- }else{
+ } else {
invoiceHead.Name = coc.Name;
invoiceHead.Invoice_status__c = coc.Invoice_status__c;
invoiceHead.Invoice_Date__c = coc.Invoice_Date__c;
@@ -976,53 +1048,53 @@
invoiceHead.Order_ForCustomerText__c = coc.Order_ForCustomerText__c;
//ApexPages.addmessage(new ApexPages.message(ApexPages.severity.Error, 'HospitalName +++++' + HospitalName));
//return null;
- if(HospitalName != null && HospitalName !=''){
- if(HospitalInfo != null && HospitalInfo !=''){
+ if (HospitalName != null && HospitalName != '') {
+ if (HospitalInfo != null && HospitalInfo != '') {
invoiceHead.Order_ForHospital__c = HospitalInfo;
}
- }else{
+ } else {
invoiceHead.Order_ForHospital__c = null;
}
invoiceHead.Order_ForDealer__c = SecondDealer;
invoiceHead.Order_ForDealerText__c = coc.Order_ForDealerText__c;
update invoiceHead;
- for (InvoiceOrderInfo ass : invoiceOrderRecoeds) {
- if(ass.check == true){
- insertDetMap.put(ass.esd.Id,invoiceHead.Id);
- }else{
+ for (InvoiceOrderInfo ass : invoiceOrderRecoeds) {
+ if (ass.check == true) {
+ insertDetMap.put(ass.esd.Id, invoiceHead.Id);
+ } else {
outOrderIdList.add(ass.esd.Id);
- deleteDetMap.put(ass.esd.Id,invoiceHead.Id);
+ deleteDetMap.put(ass.esd.Id, invoiceHead.Id);
}
}
- if(outOrderIdList.size() > 0){
+ if (outOrderIdList.size() > 0) {
getdefaultMapinfo(outOrderIdList);
}
//CHAN-BSS5SQ update by rentongxiao 2020-09-08 start
//琚�変腑鐨勫嚭搴撳崟闆嗗悎
- if(insertDetMap.size() > 0 ){
- List<Consumable_order_LinkTable__c> existLinkinfo =
- [SELECT Id,Invoice_Code_link__c,Outboundorder_Code_link__c
- FROM Consumable_order_LinkTable__c WHERE Outboundorder_Code_link__c in :insertDetMap.keySet()
- AND Invoice_Code_link__c = :invoiceHead.Id];
+ if (insertDetMap.size() > 0) {
+ List<Consumable_order_LinkTable__c> existLinkinfo = [
+ SELECT Id, Invoice_Code_link__c, Outboundorder_Code_link__c
+ FROM Consumable_order_LinkTable__c
+ WHERE Outboundorder_Code_link__c IN :insertDetMap.keySet() AND Invoice_Code_link__c = :invoiceHead.Id
+ ];
//瀛樺湪娌℃湁涓庡彂绁ㄥ缓绔嬪叧鑱斿叧绯荤殑鍑哄簱鍗�
- List<String> templist2 = new List<String>();
- for(Consumable_order_LinkTable__c colc : existLinkinfo){
- templist2.add(colc.Outboundorder_Code_link__c);
+ List<String> templist2 = new List<String>();
+ for (Consumable_order_LinkTable__c colc : existLinkinfo) {
+ templist2.add(colc.Outboundorder_Code_link__c);
+ }
+ //鑾峰彇璇ュ嚭搴撳崟
+ for (String field : insertDetMap.keySet()) {
+ if (!templist2.contains(field)) {
+ //璇ュ嚭搴撳崟涓嶅瓨鍦ㄤ笌閾炬帴琛ㄤ腑,鏂板缓閾炬帴
+ chukudanID.add(field);
+ Consumable_order_LinkTable__c invoiceLink = new Consumable_order_LinkTable__c();
+ invoiceLink.Name = field + insertDetMap.get(field);
+ invoiceLink.Outboundorder_Code_link__c = field;
+ invoiceLink.Invoice_Code_link__c = insertDetMap.get(field);
+ invoiceLinkList.add(invoiceLink);
}
- //鑾峰彇璇ュ嚭搴撳崟
- for(String field : insertDetMap.keySet()){
- if (!templist2.contains(field)) {
- //璇ュ嚭搴撳崟涓嶅瓨鍦ㄤ笌閾炬帴琛ㄤ腑,鏂板缓閾炬帴
- chukudanID.add(field);
- Consumable_order_LinkTable__c invoiceLink = new Consumable_order_LinkTable__c();
- invoiceLink.Name = field + insertDetMap.get(field);
- invoiceLink.Outboundorder_Code_link__c = field;
- invoiceLink.Invoice_Code_link__c = insertDetMap.get(field);
- invoiceLinkList.add(invoiceLink);
- }
- }
- upsert invoiceLinkList;
-
+ }
+ upsert invoiceLinkList;
}
/*if(insertDetMap.size() > 0 ){
for (String field : insertDetMap.keySet()) {
@@ -1057,16 +1129,17 @@
delete invoiceLinkdetList;
}*/
//鍒犻櫎鍑哄簱鍗曢摼鎺ヨ〃
- if(deleteDetMap.size() > 0 ){
-
- List<Consumable_order_LinkTable__c> invoiceLinkdetList = New List<Consumable_order_LinkTable__c>();
- deleteOutboundorder(deleteDetMap,invoiceHead.Id);
- List<Consumable_order_LinkTable__c> existLinkinfo = [SELECT Id,Outboundorder_Code_link__c,Invoice_Code_link__c FROM Consumable_order_LinkTable__c
- WHERE Outboundorder_Code_link__c in :deleteDetMap.keySet()
- AND Invoice_Code_link__c = :invoiceHead.Id];
- for(Consumable_order_LinkTable__c colctemp : existLinkinfo){
+ if (deleteDetMap.size() > 0) {
+ List<Consumable_order_LinkTable__c> invoiceLinkdetList = new List<Consumable_order_LinkTable__c>();
+ deleteOutboundorder(deleteDetMap, invoiceHead.Id);
+ List<Consumable_order_LinkTable__c> existLinkinfo = [
+ SELECT Id, Outboundorder_Code_link__c, Invoice_Code_link__c
+ FROM Consumable_order_LinkTable__c
+ WHERE Outboundorder_Code_link__c IN :deleteDetMap.keySet() AND Invoice_Code_link__c = :invoiceHead.Id
+ ];
+ for (Consumable_order_LinkTable__c colctemp : existLinkinfo) {
if (deleteDetMap.get(colctemp.Outboundorder_Code_link__c) == colctemp.Invoice_Code_link__c) {
- //瀛樺湪涓庤鍙戠エ鍏宠仈鐨勫嚭搴撳崟
+ //瀛樺湪涓庤鍙戠エ鍏宠仈鐨勫嚭搴撳崟
invoiceLinkdetList.add(colctemp);
}
}
@@ -1074,12 +1147,12 @@
}
//CHAN-BSS5SQ update by rentongxiao 2020-09-08 end
//鏂板缓鍙戠エ鏄庣粏1
- if(chukudanID.size() > 0 ){
+ if (chukudanID.size() > 0) {
newinvoicedetails1(chukudanID);
}
}
}
- }catch (Exception ex) {
+ } catch (Exception ex) {
Database.rollback(sp);
ApexPages.addMessages(ex);
return null;
@@ -1088,15 +1161,18 @@
}
//鎹㈣揣鍗曢摼鎺ヨ〃 鍙戠エ鏄庣粏2鍋氭垚
- public void outOrderchange(Map<String,String> insertDetMap){
+ public void outOrderchange(Map<String, String> insertDetMap) {
List<string> chukudanID = new List<string>();
- List<Consumable_order_LinkTable__c> invoiceLinkList = New List<Consumable_order_LinkTable__c>();
+ List<Consumable_order_LinkTable__c> invoiceLinkList = new List<Consumable_order_LinkTable__c>();
Consumable_order__c p = new Consumable_order__c();
- if(insertDetMap.size() > 0 ){
+ if (insertDetMap.size() > 0) {
for (String field : insertDetMap.keySet()) {
- List<Consumable_order_LinkTable__c> existLinkinfo = [SELECT Id FROM Consumable_order_LinkTable__c
- WHERE Outboundorder_Code_link__c = :field];
- if(existLinkinfo.size() > 0){
+ List<Consumable_order_LinkTable__c> existLinkinfo = [
+ SELECT Id
+ FROM Consumable_order_LinkTable__c
+ WHERE Outboundorder_Code_link__c = :field
+ ];
+ if (existLinkinfo.size() > 0) {
delete existLinkinfo;
}
chukudanID.add(field);
@@ -1114,28 +1190,30 @@
}
//鎹㈣揣鍑哄簱鍗曟槑缁�1鏇存柊
List<Consumable_Orderdetails__c> detaliFrom1List = [
- SELECT Id,
- Name,
- Consumable_order__c,
- Asset_Model_No__c,
- Consumable_Product__r.Asset_Model_No__c,
- Shipment_Count__c,
- RrturnPro_count__c,
- Delivery_List_RMB__c,
- InvoicedProCost_RMB__c,
- Invoiced_Procount__c,
- Invoiced_Count__c,
- Invoice_Unitprice__c,
- InvoiceProNot_count__c,
- Invoice_Cost_RMB__c,
- Invoice_No__c,
- Invoice_Unit__c,
- Box_Piece__c,
- Consumable_Sale_order__r.Name,
- Consumable_Shipment_order__r.Name
- FROM Consumable_Orderdetails__c
- WHERE Consumable_order__c in : chukudanID];
- for(Consumable_Orderdetails__c changeOD : detaliFrom1List){
+ SELECT
+ Id,
+ Name,
+ Consumable_order__c,
+ Asset_Model_No__c,
+ Consumable_Product__r.Asset_Model_No__c,
+ Shipment_Count__c,
+ RrturnPro_count__c,
+ Delivery_List_RMB__c,
+ InvoicedProCost_RMB__c,
+ Invoiced_Procount__c,
+ Invoiced_Count__c,
+ Invoice_Unitprice__c,
+ InvoiceProNot_count__c,
+ Invoice_Cost_RMB__c,
+ Invoice_No__c,
+ Invoice_Unit__c,
+ Box_Piece__c,
+ Consumable_Sale_order__r.Name,
+ Consumable_Shipment_order__r.Name
+ FROM Consumable_Orderdetails__c
+ WHERE Consumable_order__c IN :chukudanID
+ ];
+ for (Consumable_Orderdetails__c changeOD : detaliFrom1List) {
changeOD.Invoiced_Procount__c = changeOD.Shipment_Count__c;
}
update detaliFrom1List;
@@ -1163,18 +1241,19 @@
changeOD.Invoice_Date__c = Date.today();
}
update detaliFromList;*/
-
}
//鍙栧緱鏇存柊map鍒濆鍖栨暟鎹�
//鑾峰彇 璁㈠崟涓骇鍝佺殑鍒濆鍖� Map
- public void getdefaultMapinfo(List<String> orderIdList){
+ public void getdefaultMapinfo(List<String> orderIdList) {
List<Consumable_Orderdetails__c> existLinkinfo = new List<Consumable_Orderdetails__c>();
- existLinkinfo = [SELECT Id,Consumable_order__c,Consumable_product__c,Asset_Model_No__c
- FROM Consumable_Orderdetails__c
- WHERE Consumable_order__c in:orderIdList];
- for(Integer i = 0; i < existLinkinfo.size(); i++){
- ordermx1defaultMap.put(existLinkinfo[i].Consumable_order__c + existLinkinfo[i].Asset_Model_No__c,0);
+ existLinkinfo = [
+ SELECT Id, Consumable_order__c, Consumable_product__c, Asset_Model_No__c
+ FROM Consumable_Orderdetails__c
+ WHERE Consumable_order__c IN :orderIdList
+ ];
+ for (Integer i = 0; i < existLinkinfo.size(); i++) {
+ ordermx1defaultMap.put(existLinkinfo[i].Consumable_order__c + existLinkinfo[i].Asset_Model_No__c, 0);
}
}
//鍒犻櫎鍙戠エ鏄庣粏1
@@ -1191,53 +1270,54 @@
delete detInvoicedet1List;
}
}*/
- public void deleteOutboundorder(Map<String,String> deleteMap,String value){
+ public void deleteOutboundorder(Map<String, String> deleteMap, String value) {
//鍒犻櫎鍙戠エ鏄庣粏1
- List<Consumable_Orderdetails__c> detInvoicedet1List =
- [SELECT Id,Consumable_Shipment_order__c,Consumable_Sale_order__c,Consumable_product__c,Asset_Model_No__c
- FROM Consumable_Orderdetails__c
- WHERE Consumable_order__c = :value
- AND Invoicedet1_OD_link__c = :deleteMap.keySet()];
- delete detInvoicedet1List;
+ List<Consumable_Orderdetails__c> detInvoicedet1List = [
+ SELECT Id, Consumable_Shipment_order__c, Consumable_Sale_order__c, Consumable_product__c, Asset_Model_No__c
+ FROM Consumable_Orderdetails__c
+ WHERE Consumable_order__c = :value AND Invoicedet1_OD_link__c = :deleteMap.keySet()
+ ];
+ System.debug('detInvoicedet1List = ' + detInvoicedet1List);
+ delete detInvoicedet1List;
}
//CHAN-BSS5SQ update by rentongxiao 2020-09-08 end
- public void newinvoicedetails1(List<String> chukudanID){
+ public void newinvoicedetails1(List<String> chukudanID) {
//鏂拌鍙戠エ鏄庣粏1
- List<Consumable_Orderdetails__c> invoiceorderList1 = New List<Consumable_Orderdetails__c>();
+ List<Consumable_Orderdetails__c> invoiceorderList1 = new List<Consumable_Orderdetails__c>();
//鍑哄簱鍗曟槑缁嗘洿鏂�
- List<Consumable_Orderdetails__c> outOrderList1 = New List<Consumable_Orderdetails__c>();
+ List<Consumable_Orderdetails__c> outOrderList1 = new List<Consumable_Orderdetails__c>();
List<Consumable_Orderdetails__c> detaliFromList = [
- SELECT Id,
- Name,
- Consumable_order__c,
- Asset_Model_No__c,
- Consumable_Product__r.Asset_Model_No__c,
- Shipment_Count__c,
- RrturnPro_count__c,
- Delivery_List_RMB__c,
- InvoicedProCost_RMB__c,
- Invoiced_Procount__c,
- Invoiced_Count__c,
- Invoice_Unitprice__c,
- InvoiceProNot_count__c,
- Invoice_Cost_RMB__c,
- Invoice_No__c,
- Consumable_Product__c,
- Intra_Trade_List_RMB__c,
- Dealer_Custom_Price__c,
- Sum_of_money__c,
- Box_Piece__c,
- Used_date__c,
- Send_date__c,
- Invoice_Unit__c,
- ProductPacking_list_manual__c
- FROM Consumable_Orderdetails__c
- WHERE Consumable_order__c in : chukudanID
- AND InvoiceProNot_count__c > 0
+ SELECT
+ Id,
+ Name,
+ Consumable_order__c,
+ Asset_Model_No__c,
+ Consumable_Product__r.Asset_Model_No__c,
+ Shipment_Count__c,
+ RrturnPro_count__c,
+ Delivery_List_RMB__c,
+ InvoicedProCost_RMB__c,
+ Invoiced_Procount__c,
+ Invoiced_Count__c,
+ Invoice_Unitprice__c,
+ InvoiceProNot_count__c,
+ Invoice_Cost_RMB__c,
+ Invoice_No__c,
+ Consumable_Product__c,
+ Intra_Trade_List_RMB__c,
+ Dealer_Custom_Price__c,
+ Sum_of_money__c,
+ Box_Piece__c,
+ Used_date__c,
+ Send_date__c,
+ Invoice_Unit__c,
+ ProductPacking_list_manual__c
+ FROM Consumable_Orderdetails__c
+ WHERE Consumable_order__c IN :chukudanID AND InvoiceProNot_count__c > 0
];
- for(Integer i = 0; i < detaliFromList.size(); i++){
+ for (Integer i = 0; i < detaliFromList.size(); i++) {
Consumable_Orderdetails__c invoiceInsert1 = new Consumable_Orderdetails__c();
//Consumable_Orderdetails__c orderUpdate1 = new Consumable_Orderdetails__c();
//orderUpdate1.id = detaliFromList[i].Id;
@@ -1245,30 +1325,37 @@
//invoiceInsert1.Asset_Model_No__c = detaliFromList[i].Asset_Model_No__c;
invoiceInsert1.Send_date__c = detaliFromList[i].Send_date__c;
String str = string.valueOf(i + 1);
- if(str.length() == 1){
+ if (str.length() == 1) {
str = '0' + str;
}
- invoiceInsert1.Name = coc.Name + '-' + detaliFromList[i].Name.substring(detaliFromList[i].Name.length() - 7,detaliFromList[i].Name.length());
+ invoiceInsert1.Name =
+ coc.Name +
+ '-' +
+ detaliFromList[i].Name.substring(detaliFromList[i].Name.length() - 7, detaliFromList[i].Name.length());
invoiceInsert1.Shipment_Count__c = detaliFromList[i].InvoiceProNot_count__c;
invoiceInsert1.Consumable_Product__c = detaliFromList[i].Consumable_Product__c;
invoiceInsert1.Intra_Trade_List_RMB__c = detaliFromList[i].Intra_Trade_List_RMB__c;
invoiceInsert1.Delivery_List_RMB__c = detaliFromList[i].Delivery_List_RMB__c;
invoiceInsert1.Dealer_Custom_Price__c = detaliFromList[i].Dealer_Custom_Price__c;
invoiceInsert1.RecordTypeId = System.Label.RT_ConOrderDetail1_Invoice;
-
- if(detaliFromList[i].Box_Piece__c == '鐩�' && detaliFromList[i].Invoice_Unit__c == '涓�'){
- invoiceInsert1.Invoice_Unitprice__c = detaliFromList[i].Delivery_List_RMB__c/detaliFromList[i].ProductPacking_list_manual__c;
- }else{
+
+ if (detaliFromList[i].Box_Piece__c == '鐩�' && detaliFromList[i].Invoice_Unit__c == '涓�') {
+ invoiceInsert1.Invoice_Unitprice__c =
+ detaliFromList[i].Delivery_List_RMB__c / detaliFromList[i].ProductPacking_list_manual__c;
+ } else {
invoiceInsert1.Invoice_Unitprice__c = detaliFromList[i].Delivery_List_RMB__c;
}
invoiceInsert1.Box_Piece__c = detaliFromList[i].Box_Piece__c;
invoiceInsert1.Invoice_Unit__c = detaliFromList[i].Box_Piece__c;
//orderUpdate1.Invoice_Unitprice__c = detaliFromList[i].Delivery_List_RMB__c;
- if (detaliFromList[i].Invoiced_Procount__c == null) detaliFromList[i].Invoiced_Procount__c = 0;
- if (detaliFromList[i].RrturnPro_count__c == null) detaliFromList[i].RrturnPro_count__c = 0;
+ if (detaliFromList[i].Invoiced_Procount__c == null)
+ detaliFromList[i].Invoiced_Procount__c = 0;
+ if (detaliFromList[i].RrturnPro_count__c == null)
+ detaliFromList[i].RrturnPro_count__c = 0;
//invoiceInsert1.Invoiced_Procount__c = detaliFromList[i].Invoiced_Procount__c;
invoiceInsert1.Invoiced_Count__c = detaliFromList[i].InvoiceProNot_count__c;
- if (detaliFromList[i].InvoicedProCost_RMB__c == null) detaliFromList[i].InvoicedProCost_RMB__c = 0;
+ if (detaliFromList[i].InvoicedProCost_RMB__c == null)
+ detaliFromList[i].InvoicedProCost_RMB__c = 0;
invoiceInsert1.InvoicedProCost_RMB__c = invoiceInsert1.Invoiced_Count__c * invoiceInsert1.Delivery_List_RMB__c;
//invoiceInsert1.Sum_of_money__c = invoiceInsert1.InvoicedProCost_RMB__c;
invoiceInsert1.Consumable_order__c = invoiceId;
@@ -1281,28 +1368,34 @@
//ApexPages.addmessage(new ApexPages.message(ApexPages.severity.Error, 'invoiceorderList1 +++++' + invoiceorderList1.size()));
//return ;
Savepoint sp = Database.setSavepoint();
- if(invoiceorderList1.size() > 0){
+ if (invoiceorderList1.size() > 0) {
try {
+ System.debug('invoiceorderList1 = ' + invoiceorderList1);
insert invoiceorderList1;
- }catch (Exception ex) {
+ } catch (Exception ex) {
Database.rollback(sp);
ApexPages.addMessages(ex);
}
}
}
-
//涓婁紶闄勪欢
- public PageReference FilesUpload(){
- PageReference ref = new Pagereference('/p/attach/NoteAttach?pid='+invoiceId+'&retURL=%2F' + '/ConInvoiceView?invoiceId=' +invoiceId);
+ public PageReference FilesUpload() {
+ PageReference ref = new Pagereference(
+ '/p/attach/NoteAttach?pid=' +
+ invoiceId +
+ '&retURL=%2F' +
+ '/ConInvoiceView?invoiceId=' +
+ invoiceId
+ );
ref.setRedirect(true);
return ref;
}
//鎺掑簭
- public void SortLimited(){
+ public void SortLimited() {
List<Id> orderIdList = new List<Id>();
- for (InvoiceOrderInfo ass : invoiceOrderRecoeds) {
+ for (InvoiceOrderInfo ass : invoiceOrderRecoeds) {
orderIdList.add(ass.esd.Id);
}
if (this.sortKey == this.preSortKey) {
@@ -1323,35 +1416,39 @@
soql += ' ' + (this.sortOrderAsc == true ? 'asc nulls first' : 'desc nulls last');
List<Consumable_order__c> queryList = Database.query(soql);
invoiceOrderRecoeds = new List<InvoiceOrderInfo>();
- for(Integer i = 0; i < queryList.size(); i++){
+ for (Integer i = 0; i < queryList.size(); i++) {
invoiceOrderRecoeds.add(new InvoiceOrderInfo(queryList[i]));
}
- for (InvoiceOrderInfo ass : invoiceOrderRecoeds) {
- if(outorderMoneytMap.containsKey(ass.esd.id)){
+ for (InvoiceOrderInfo ass : invoiceOrderRecoeds) {
+ if (outorderMoneytMap.containsKey(ass.esd.id)) {
ass.needInvoiceCount = outorderMoneytMap.get(ass.esd.id);
}
}
}
// 缂栬緫鎸夐挳
- public PageReference setEditAble(){
+ public PageReference setEditAble() {
statusEdit = 'Redirect';
- PageReference ref = new Pagereference('/ConInvoiceView?invoiceId='+ invoiceId +'&KeyWords='+statusEdit);
+ PageReference ref = new Pagereference('/ConInvoiceView?invoiceId=' + invoiceId + '&KeyWords=' + statusEdit);
ref.setRedirect(true);
return ref;
}
// 杩斿洖涓嶅彲缂栬緫鐘舵��
- public PageReference UnabletoEdit(){
- PageReference ref = new Pagereference('/ConInvoiceView?invoiceId='+ invoiceId);
+ public PageReference UnabletoEdit() {
+ PageReference ref = new Pagereference('/ConInvoiceView?invoiceId=' + invoiceId);
ref.setRedirect(true);
return ref;
}
- // 绮剧悽绉戞妧 zxk 2021-11-03 CHAN-C8D86K 娣诲姞鍒犻櫎鎸夐挳 start
+ // 绮剧悽绉戞妧 zxk 2021-11-03 CHAN-C8D86K 娣诲姞鍒犻櫎鎸夐挳 start
// 鍒犻櫎鎸夐挳
public PageReference deleteButton() {
system.debug('====invoiceId==========>' + invoiceId);
- List < Consumable_Orderdetails__c > consList = [select id, Consumable_order__c from Consumable_Orderdetails__c where Consumable_order__c = : invoiceId];
+ List<Consumable_Orderdetails__c> consList = [
+ SELECT id, Consumable_order__c
+ FROM Consumable_Orderdetails__c
+ WHERE Consumable_order__c = :invoiceId
+ ];
// Consumable_order__c consumable = [select id from Consumable_order__c where id =: invoiceId AND Invoice_status__c = '鑽夋涓�'];
try {
system.debug('====cons==========>' + consList);
@@ -1373,11 +1470,10 @@
}
// 绮剧悽绉戞妧 zxk 2021-11-03 CHAN-C8D86K 娣诲姞鍒犻櫎鎸夐挳 end
-
// 浣滃簾閲嶅紑鎸夐挳
- public PageReference setreopen(){
+ public PageReference setreopen() {
statusEdit = 'Redirect';
- PageReference ref = new Pagereference('/ConInvoiceView?invoiceId='+ invoiceId + '&reopen=isreopen' +'&KeyWords='+statusEdit);
+ PageReference ref = new Pagereference('/ConInvoiceView?invoiceId=' + invoiceId + '&reopen=isreopen' + '&KeyWords=' + statusEdit);
ref.setRedirect(true);
return ref;
}
@@ -1385,78 +1481,123 @@
public PageReference approval() {
//鏇存柊鍙戠エ鏄庣粏2閾炬帴
Consumable_order__c P = new Consumable_order__c();
- List<Consumable_order__c> cocinfo = New List<Consumable_order__c>();
- List<Consumable_order_details2__c> invoiceorderList2 = New List<Consumable_order_details2__c>();
+ List<Consumable_order__c> cocinfo = new List<Consumable_order__c>();
+ List<Consumable_order_details2__c> invoiceorderList2 = new List<Consumable_order_details2__c>();
//鏇存柊鍑哄簱鍗曟槑缁�1
- List<Consumable_Orderdetails__c> outOrderdetUp1List = New List<Consumable_Orderdetails__c>();
- //闇�瑕佹洿鏂板嚭搴撳崟鏄庣粏1
+ List<Consumable_Orderdetails__c> outOrderdetUp1List = new List<Consumable_Orderdetails__c>();
+ //闇�瑕佹洿鏂板嚭搴撳崟鏄庣粏1
List<Consumable_Orderdetails__c> outOrderdet1List = [
- SELECT Id,
- Name,
- Consumable_order__c,
- Consumable_order__r.Name,
- Asset_Model_No__c,
- Consumable_Product__r.Asset_Model_No__c,
- Shipment_Count__c,
- RrturnPro_count__c,
- Delivery_List_RMB__c,
- InvoicedProCost_RMB__c,
- Invoiced_Procount__c,
- Invoiced_Count__c,
- Invoice_Unitprice__c,
- InvoiceProNot_count__c,
- Invoice_Cost_RMB__c,
- Invoice_No__c,
- Box_Piece__c,
- Invoice_Unit__c
- FROM Consumable_Orderdetails__c
- WHERE Consumable_order__c in : outOrderStringList
+ SELECT
+ Id,
+ Name,
+ Consumable_order__c,
+ Consumable_order__r.Name,
+ Asset_Model_No__c,
+ Consumable_Product__r.Asset_Model_No__c,
+ Shipment_Count__c,
+ RrturnPro_count__c,
+ Delivery_List_RMB__c,
+ InvoicedProCost_RMB__c,
+ Invoiced_Procount__c,
+ Invoiced_Count__c,
+ Invoice_Unitprice__c,
+ InvoiceProNot_count__c,
+ Invoice_Cost_RMB__c,
+ Invoice_No__c,
+ Box_Piece__c,
+ Invoice_Unit__c
+ FROM Consumable_Orderdetails__c
+ WHERE Consumable_order__c IN :outOrderStringList
];
- for(Integer i = 0; i < outOrderdet1List.size(); i++){
- if(outordercountMap.containsKey(outOrderdet1List[i].Consumable_order__c + outOrderdet1List[i].Asset_Model_No__c)){
+ for (Integer i = 0; i < outOrderdet1List.size(); i++) {
+ if (outordercountMap.containsKey(outOrderdet1List[i].Consumable_order__c + outOrderdet1List[i].Asset_Model_No__c)) {
Consumable_Orderdetails__c invoiceUpdte1 = new Consumable_Orderdetails__c();
invoiceUpdte1.Id = outOrderdet1List[i].Id;
- invoiceUpdte1.Invoice_Unit__c = outordercountMap.get(outOrderdet1List[i].Consumable_order__c + outOrderdet1List[i].Asset_Model_No__c).Invoice_Unit__c;
- if(outordercountMap.get(outOrderdet1List[i].Consumable_order__c + outOrderdet1List[i].Asset_Model_No__c).Box_Piece__c == '鐩�' && outordercountMap.get(outOrderdet1List[i].Consumable_order__c + outOrderdet1List[i].Asset_Model_No__c).Invoice_Unit__c == '涓�'){
+ invoiceUpdte1.Invoice_Unit__c = outordercountMap.get(
+ outOrderdet1List[i].Consumable_order__c + outOrderdet1List[i].Asset_Model_No__c
+ )
+ .Invoice_Unit__c;
+ if (
+ outordercountMap.get(outOrderdet1List[i].Consumable_order__c + outOrderdet1List[i].Asset_Model_No__c).Box_Piece__c ==
+ '鐩�' &&
+ outordercountMap.get(outOrderdet1List[i].Consumable_order__c + outOrderdet1List[i].Asset_Model_No__c).Invoice_Unit__c ==
+ '涓�'
+ ) {
Decimal OldinvoicedProcount = 0;
- OldinvoicedProcount = (outordercountMap.get(outOrderdet1List[i].Consumable_order__c + outOrderdet1List[i].Asset_Model_No__c).Invoiced_Count__c / outordercountMap.get(outOrderdet1List[i].Consumable_order__c + outOrderdet1List[i].Asset_Model_No__c).ProductPacking_list_manual__c).setScale(2);
- invoiceUpdte1.Invoiced_Procount__c = outOrderdet1List[i].Invoiced_Procount__c + OldinvoicedProcount ;
- }else{
- invoiceUpdte1.Invoiced_Procount__c = outOrderdet1List[i].Invoiced_Procount__c + outordercountMap.get(outOrderdet1List[i].Consumable_order__c + outOrderdet1List[i].Asset_Model_No__c).Invoiced_Count__c;
+ OldinvoicedProcount = (outordercountMap.get(
+ outOrderdet1List[i].Consumable_order__c + outOrderdet1List[i].Asset_Model_No__c
+ )
+ .Invoiced_Count__c /
+ outordercountMap.get(outOrderdet1List[i].Consumable_order__c + outOrderdet1List[i].Asset_Model_No__c)
+ .ProductPacking_list_manual__c)
+ .setScale(2);
+ invoiceUpdte1.Invoiced_Procount__c = outOrderdet1List[i].Invoiced_Procount__c + OldinvoicedProcount;
+ } else {
+ invoiceUpdte1.Invoiced_Procount__c =
+ outOrderdet1List[i].Invoiced_Procount__c +
+ outordercountMap.get(outOrderdet1List[i].Consumable_order__c + outOrderdet1List[i].Asset_Model_No__c)
+ .Invoiced_Count__c;
}
- invoiceUpdte1.Invoice_Unitprice__c = outordercountMap.get(outOrderdet1List[i].Consumable_order__c + outOrderdet1List[i].Asset_Model_No__c).Invoice_Unitprice__c;
+ invoiceUpdte1.Invoice_Unitprice__c = outordercountMap.get(
+ outOrderdet1List[i].Consumable_order__c + outOrderdet1List[i].Asset_Model_No__c
+ )
+ .Invoice_Unitprice__c;
invoiceUpdte1.InvoicedProCost_RMB__c = invoiceUpdte1.Invoiced_Procount__c * outOrderdet1List[i].Delivery_List_RMB__c;
-
+
Decimal invoicedProcount = 0;
- if(outordercountMap.get(outOrderdet1List[i].Consumable_order__c + outOrderdet1List[i].Asset_Model_No__c).Box_Piece__c == '鐩�' && outordercountMap.get(outOrderdet1List[i].Consumable_order__c + outOrderdet1List[i].Asset_Model_No__c).Invoice_Unit__c == '涓�'){
- invoicedProcount = (outordercountMap.get(outOrderdet1List[i].Consumable_order__c + outOrderdet1List[i].Asset_Model_No__c).Invoiced_Count__c / outordercountMap.get(outOrderdet1List[i].Consumable_order__c + outOrderdet1List[i].Asset_Model_No__c).ProductPacking_list_manual__c).setScale(2);
- }else{
- invoicedProcount = outordercountMap.get(outOrderdet1List[i].Consumable_order__c + outOrderdet1List[i].Asset_Model_No__c).Invoiced_Count__c;
+ if (
+ outordercountMap.get(outOrderdet1List[i].Consumable_order__c + outOrderdet1List[i].Asset_Model_No__c).Box_Piece__c ==
+ '鐩�' &&
+ outordercountMap.get(outOrderdet1List[i].Consumable_order__c + outOrderdet1List[i].Asset_Model_No__c).Invoice_Unit__c ==
+ '涓�'
+ ) {
+ invoicedProcount = (outordercountMap.get(
+ outOrderdet1List[i].Consumable_order__c + outOrderdet1List[i].Asset_Model_No__c
+ )
+ .Invoiced_Count__c /
+ outordercountMap.get(outOrderdet1List[i].Consumable_order__c + outOrderdet1List[i].Asset_Model_No__c)
+ .ProductPacking_list_manual__c)
+ .setScale(2);
+ } else {
+ invoicedProcount = outordercountMap.get(outOrderdet1List[i].Consumable_order__c + outOrderdet1List[i].Asset_Model_No__c)
+ .Invoiced_Count__c;
}
- if(outOrderdet1List[i].InvoiceProNot_count__c < invoicedProcount){
- ApexPages.addmessage(new ApexPages.message(ApexPages.severity.Error, '鍑哄簱鍗�' + outOrderdet1List[i].Consumable_order__r.Name + '涓紝' + outOrderdet1List[i].Asset_Model_No__c +'杩樻病寮�绁ㄦ暟閲忓皬浜庡彂绁ㄦ暟閲忥紝璇风‘璁ゆ槸鍚︽湁杩斿搧銆�'));
+ if (outOrderdet1List[i].InvoiceProNot_count__c < invoicedProcount) {
+ ApexPages.addmessage(
+ new ApexPages.message(
+ ApexPages.severity.Error,
+ '鍑哄簱鍗�' +
+ outOrderdet1List[i].Consumable_order__r.Name +
+ '涓紝' +
+ outOrderdet1List[i].Asset_Model_No__c +
+ '杩樻病寮�绁ㄦ暟閲忓皬浜庡彂绁ㄦ暟閲忥紝璇风‘璁ゆ槸鍚︽湁杩斿搧銆�'
+ )
+ );
return null;
}
outOrderdetUp1List.add(invoiceUpdte1);
-
}
}
Savepoint sp = Database.setSavepoint();
try {
//鍑哄簱鍗曟槑缁�1鏇存柊
- if(outOrderdetUp1List.size() > 0){
+ if (outOrderdetUp1List.size() > 0) {
ControllerUtil.updateOrderDetails1Satus(outOrderdetUp1List);
}
//鍙戠エ鐘舵�佹洿鏂�
- cocinfo = [SELECT Id,Name,Invoice_status__c,Dealer_Info__c,Order_ForHospital__c,SummonsForDirction__c FROM Consumable_order__c WHERE Id =:invoiceId];
- if (cocinfo.size()>0){
+ cocinfo = [
+ SELECT Id, Name, Invoice_status__c, Dealer_Info__c, Order_ForHospital__c, SummonsForDirction__c
+ FROM Consumable_order__c
+ WHERE Id = :invoiceId
+ ];
+ if (cocinfo.size() > 0) {
p = cocinfo[0];
}
p.Invoice_status__c = '鎻愪氦';
update p;
- }catch (Exception ex) {
+ } catch (Exception ex) {
Database.rollback(sp);
ApexPages.addMessages(ex);
return null;
@@ -1465,23 +1606,23 @@
}
// 鍋氭垚妫�绱QL鏂�
- private String makeSoqlInit(){
+ private String makeSoqlInit() {
String soql = 'SELECT Id, Order_ForDealer__r.Name,Order_ForHospital__r.Name,Order_ForDealerText__c, Name,Outbound_Date__c,ShipmentAccount__c,Shipment_total_amount__c,RrturnPro_total_amount__c,Total_Invoiced_Procount__c,InvoiceNotPro_total_amount__c,InvoiceNotPro_money__c,Invoice_total_amount__c,Billed_Status__c FROM Consumable_order__c ';
- soql += ' WHERE Dealer_Info__c = \'' + accountid + '\'';
- soql += ' AND (recordtypeid = \''+ System.Label.RT_ConOrder_Sale + '\'';
- soql += ' OR recordtypeid = \''+ System.Label.RT_ConOrder_Shipment + '\'';
+ soql += ' WHERE Dealer_Info__c = \'' + accountid + '\'';
+ soql += ' AND (recordtypeid = \'' + System.Label.RT_ConOrder_Sale + '\'';
+ soql += ' OR recordtypeid = \'' + System.Label.RT_ConOrder_Shipment + '\'';
soql += ' ) ';
soql += ' AND Order_Owner_WorkLocal__c = \'' + userWorkLocation + '\' ';
- soql += ' AND Order_ProType__c =\'' + agencyProType +'\'';
+ soql += ' AND Order_ProType__c =\'' + agencyProType + '\'';
soql += ' AND SummonsForDirction__c != \'浜掔浉璋冭揣\' ';
- if(HospitalInfo != null && HospitalInfo !=''){
- soql += ' AND Order_ForHospital__c = \'' + HospitalInfo + '\'';
+ if (HospitalInfo != null && HospitalInfo != '') {
+ soql += ' AND Order_ForHospital__c = \'' + HospitalInfo + '\'';
}
- if(SecondDealer != null){
- soql += ' AND Order_ForDealer__c = \'' + SecondDealer + '\'';
+ if (SecondDealer != null) {
+ soql += ' AND Order_ForDealer__c = \'' + SecondDealer + '\'';
}
- if(coc.Order_ForDealerText__c != null){
- soql += ' AND ShipmentAccount__c = \'' + coc.Order_ForDealerText__c + '\'';
+ if (coc.Order_ForDealerText__c != null) {
+ soql += ' AND ShipmentAccount__c = \'' + coc.Order_ForDealerText__c + '\'';
}
soql += ' AND InvoiceNotPro_total_amount__c > 0';
soql += ' AND Onchange_order__c = false limit 1000';
@@ -1489,29 +1630,28 @@
}
// 鍋氭垚妫�绱QL鏂�
- private String makeSoql(){
+ private String makeSoql() {
String soql = 'SELECT Id, Order_ForDealer__r.Name,Order_ForHospital__r.Name,Order_ForDealerText__c, Name,Outbound_Date__c,ShipmentAccount__c,Shipment_total_amount__c,RrturnPro_total_amount__c,Total_Invoiced_Procount__c,InvoiceNotPro_total_amount__c,InvoiceNotPro_money__c,Invoice_total_amount__c,Billed_Status__c FROM Consumable_order__c ';
- soql += ' WHERE Dealer_Info__c = \'' + accountid + '\'';
- soql += ' AND (recordtypeid = \''+ System.Label.RT_ConOrder_Sale + '\'';
- soql += ' OR recordtypeid = \''+ System.Label.RT_ConOrder_Shipment + '\'';
+ soql += ' WHERE Dealer_Info__c = \'' + accountid + '\'';
+ soql += ' AND (recordtypeid = \'' + System.Label.RT_ConOrder_Sale + '\'';
+ soql += ' OR recordtypeid = \'' + System.Label.RT_ConOrder_Shipment + '\'';
soql += ' ) ';
soql += ' AND Order_Owner_WorkLocal__c = \'' + userWorkLocation + '\' ';
- soql += ' AND Order_ProType__c =\'' + agencyProType +'\'';
+ soql += ' AND Order_ProType__c =\'' + agencyProType + '\'';
soql += ' AND Billed_Status__c != \'鍏ㄩ儴寮�绁╘'';
soql += ' AND SummonsForDirction__c != \'浜掔浉璋冭揣\'';
- if(HospitalInfo != null && HospitalInfo !=''){
- soql += ' AND Order_ForHospital__c = \'' + HospitalInfo + '\'';
+ if (HospitalInfo != null && HospitalInfo != '') {
+ soql += ' AND Order_ForHospital__c = \'' + HospitalInfo + '\'';
}
- if(SecondDealer != null){
- soql += ' AND Order_ForDealer__c = \'' + SecondDealer + '\'';
+ if (SecondDealer != null) {
+ soql += ' AND Order_ForDealer__c = \'' + SecondDealer + '\'';
}
- if(coc.Order_ForDealerText__c != null){
- soql += ' AND ShipmentAccount__c = \'' + coc.Order_ForDealerText__c + '\'';
+ if (coc.Order_ForDealerText__c != null) {
+ soql += ' AND ShipmentAccount__c = \'' + coc.Order_ForDealerText__c + '\'';
}
soql += ' AND InvoiceNotPro_total_amount__c > 0';
soql += ' AND Onchange_order__c = false limit 1000';
return soql;
-
}
// Data Bean
@@ -1521,9 +1661,9 @@
public Consumable_order__c esd { get; set; }
public Consumable_Orderdetails__c esdet { get; set; }
public Attachment attach { get; set; }
- public String mailSelectOptsin {get;set;}
- public List<SelectOption> mailSelectOpts { get; set; }
- public String invoiceOrderId {get;set;}
+ public String mailSelectOptsin { get; set; }
+ public List<SelectOption> mailSelectOpts { get; set; }
+ public String invoiceOrderId { get; set; }
public Decimal needInvoiceCount { get; set; }
// 鍑哄簱璁㈠崟
diff --git a/force-app/main/default/classes/ConsumableController.cls b/force-app/main/default/classes/ConsumableController.cls
index 8d82dc7..3a4ac47 100644
--- a/force-app/main/default/classes/ConsumableController.cls
+++ b/force-app/main/default/classes/ConsumableController.cls
@@ -1,4 +1,4 @@
-public without sharing class ConsumableController {
+public without sharing class {
/*****************妞滅储鐢�******************/
public Consumable_order__c coc { get; set; } // FIMXE Consumable_order__c 銇偆銉炽偣銈裤兂銈广�乻ql澶氥仚銇�
diff --git a/force-app/main/default/classes/DNUpsertBatch.cls b/force-app/main/default/classes/DNUpsertBatch.cls
index 66ba7d8..da38630 100644
--- a/force-app/main/default/classes/DNUpsertBatch.cls
+++ b/force-app/main/default/classes/DNUpsertBatch.cls
@@ -1,5 +1,5 @@
global class DNUpsertBatch implements Database.Batchable<sObject>, Database.Stateful {
- public string rowData_Id;
+ public string rowData_Id;
public transient static List<Id> orderReturnIdList;
private class DNdetail {
private string DeliveryNote;
@@ -8,29 +8,69 @@
global DNUpsertBatch() {
}
- global DNUpsertBatch( string rowData_Id ) {
+ global DNUpsertBatch(string rowData_Id) {
this.rowData_Id = rowData_Id;
}
global Database.QueryLocator start(Database.BatchableContext bc) {
- if( string.isBlank( rowData_Id )){
+ if (string.isBlank(rowData_Id)) {
return Database.getQueryLocator(
- [Select Id, Name, Log__c, ErrorLog__c, Log2__c,
- Log3__c, Log4__c, Log5__c, Log6__c, Log7__c, Log8__c,
- Log9__c, Log10__c, Log11__c, Log12__c, MessageGroupNumber__c,
- retry_cnt__c,DN_retry_cnt__c, CreatedDate
- from BatchIF_Log__c
- where RowDataFlg__c = true
- and IsUpsertDN__c = true
- and (DN_retry_cnt__c = null
- or (DN_retry_cnt__c != 0 and DN_retry_cnt__c < 3))]);
- }else{
- return Database.getQueryLocator([Select Id, Name, Log__c, ErrorLog__c, Log2__c,
- Log3__c, Log4__c, Log5__c, Log6__c, Log7__c, Log8__c,
- Log9__c, Log10__c, Log11__c, Log12__c, MessageGroupNumber__c,
- retry_cnt__c ,DN_retry_cnt__c,CreatedDate
- from BatchIF_Log__c
- where RowDataFlg__c = true
- and Id = :rowData_Id ]);
+ [
+ SELECT
+ Id,
+ Name,
+ Log__c,
+ ErrorLog__c,
+ Log2__c,
+ Log3__c,
+ Log4__c,
+ Log5__c,
+ Log6__c,
+ Log7__c,
+ Log8__c,
+ Log9__c,
+ Log10__c,
+ Log11__c,
+ Log12__c,
+ MessageGroupNumber__c,
+ retry_cnt__c,
+ DN_retry_cnt__c,
+ CreatedDate
+ FROM BatchIF_Log__c
+ WHERE
+ RowDataFlg__c = TRUE
+ AND IsUpsertDN__c = TRUE
+ AND (DN_retry_cnt__c = NULL
+ OR (DN_retry_cnt__c != 0
+ AND DN_retry_cnt__c < 3))
+ ]
+ );
+ } else {
+ return Database.getQueryLocator(
+ [
+ SELECT
+ Id,
+ Name,
+ Log__c,
+ ErrorLog__c,
+ Log2__c,
+ Log3__c,
+ Log4__c,
+ Log5__c,
+ Log6__c,
+ Log7__c,
+ Log8__c,
+ Log9__c,
+ Log10__c,
+ Log11__c,
+ Log12__c,
+ MessageGroupNumber__c,
+ retry_cnt__c,
+ DN_retry_cnt__c,
+ CreatedDate
+ FROM BatchIF_Log__c
+ WHERE RowDataFlg__c = TRUE AND Id = :rowData_Id
+ ]
+ );
}
}
global void execute(Database.BatchableContext BC, List<BatchIF_Log__c> rowDataList) {
@@ -41,19 +81,19 @@
// String day = String.valueOf(strdate.day()) ;
// String datestr = String.valueOf(year+month+day);
//add by rentx 20210727 end
-
+
BatchIF_Log__c rowData = rowDataList[0];
rowData.IsUpsertDN__c = false;
update rowData;
- //update by rentx 20210823
+ //update by rentx 20210823
//鏈淇敼鍙拡瀵逛簬淇濇湁璁惧 涔嬪墠浣跨敤骞存湀鏃ュ幓鎻掑叆鏃� 浼氬嚭鐜� 鍚屼竴澶╁鎵规棩蹇楅噷鏈夊悓涓�涓澶� 瀵艰嚧鏇存柊澶辫触 鐜拌В鍐虫柟妗堜负绮剧‘鍒板垎
Datetime nowTime = rowData.CreatedDate;
- String oyear = String.valueOf(nowTime.year()) ;
- String omonth = String.valueOf(nowTime.month()) ;
- String oday = String.valueOf(nowTime.day()) ;
- String ohour = String.valueOf(nowTime.hour()) ;
- String ominute = String.valueOf(nowTime.minute()) ;
- String datestr = String.valueOf(oyear+omonth+oday+ohour+ominute);
+ String oyear = String.valueOf(nowTime.year());
+ String omonth = String.valueOf(nowTime.month());
+ String oday = String.valueOf(nowTime.day());
+ String ohour = String.valueOf(nowTime.hour());
+ String ominute = String.valueOf(nowTime.minute());
+ String datestr = String.valueOf(oyear + omonth + oday + ohour + ominute);
//update by rentx 20210823
//涔嬪墠浣跨敤骞存湀鏃ュ幓鎻掑叆鏃� 浼氬嚭鐜� 鍚屼竴澶╁鎵规棩蹇楅噷鏈夊悓涓�涓澶� 瀵艰嚧鏇存柊澶辫触 鐜拌В鍐虫柟妗堜负绮剧‘鍒板垎
@@ -69,30 +109,30 @@
iflog.ErrorLog__c = '';
insert iflog;
String rowDataStr = NFMUtil.getRowDataStr(rowData);
- List<NFM110Rest.GeneralData> generalDataList =
- (List<NFM110Rest.GeneralData>) JSON.deserialize(rowDataStr, List<NFM110Rest.GeneralData>.class);
+ List<NFM110Rest.GeneralData> generalDataList = (List<NFM110Rest.GeneralData>) JSON.deserialize(
+ rowDataStr,
+ List<NFM110Rest.GeneralData>.class
+ );
if (generalDataList == null || generalDataList.size() == 0) {
return;
}
// 鐢靛瓙绛炬敹鍗� start 浼樺寲鍘熸湁select
- list<account> olympusAcclist =
- [select Id , ParentId ,AgentCode_Ext__c
- from Account
- where AgentCode_Ext__c = '9999900' or
- AgentCode_Ext__c = '9999999' or
- AgentCode_Ext__c = '9999901'
+ list<account> olympusAcclist = [
+ SELECT Id, ParentId, AgentCode_Ext__c
+ FROM Account
+ WHERE AgentCode_Ext__c = '9999900' OR AgentCode_Ext__c = '9999999' OR AgentCode_Ext__c = '9999901'
];
- Account ocm ,olympus,olympus_return;
- for(Account tempAcc : olympusAcclist){
- if(tempAcc.AgentCode_Ext__c.equals('9999900')){
+ Account ocm, olympus, olympus_return;
+ for (Account tempAcc : olympusAcclist) {
+ if (tempAcc.AgentCode_Ext__c.equals('9999900')) {
ocm = tempAcc;
- }else if(tempAcc.AgentCode_Ext__c.equals('9999999')){
+ } else if (tempAcc.AgentCode_Ext__c.equals('9999999')) {
olympus = tempAcc;
- }else if(tempAcc.AgentCode_Ext__c.equals('9999901')){
+ } else if (tempAcc.AgentCode_Ext__c.equals('9999901')) {
olympus_return = tempAcc;
}
}
- // 鐢靛瓙绛炬敹鍗� end
+ // 鐢靛瓙绛炬敹鍗� end
NFM110Rest.isRunning = true;
//orderoutIdList = new List<Id>();
orderReturnIdList = new List<Id>();
@@ -121,7 +161,7 @@
// 鐥呴櫌銇ㄨê鐧傜銇鐞嗐偝銉笺儔銆乀ODO 璨╁2搴�
infoH.EndUserNo = NFMUtil.trimLeft(infoH.EndUserNo, '0');
infoH.DepartmentNo = NFMUtil.trimLeft(infoH.DepartmentNo, '0');
- if (infoH.EndUserNo == null || infoH.EndUserNo == '') {
+ if (infoH.EndUserNo == null || infoH.EndUserNo == '') {
// 鐥呴櫌銇ㄨê鐧傜銇鐞嗐偝銉笺儔銇屻仾銇勫牬鍚堛�佸嚘鐞嗐仺椋涖伆銇�
continue;
}
@@ -145,106 +185,121 @@
//鏍规嵁鏁版嵁浼犵殑鏍峰紡鍐冲畾
}
}
- if (!(infoH.ReturnMark == null || infoH.ReturnMark == ''
- || infoH.ReturnMark == '1' || infoH.ReturnMark == '3'
- )) {
- // ReturnMark = 涓婅浠ュ銇牬鍚� Error銉°儍銈汇兗銈稿嚭鍔�
- continue;
- }
+ if (!(infoH.ReturnMark == null || infoH.ReturnMark == '' || infoH.ReturnMark == '1' || infoH.ReturnMark == '3')) {
+ // ReturnMark = 涓婅浠ュ銇牬鍚� Error銉°儍銈汇兗銈稿嚭鍔�
+ continue;
+ }
for (nfm110rest.DnInformation dnInfo : infoH.DnInformation) {
dnInfo.SerialNoorLotNo = checkSerialNoorLotNo(dnInfo.SerialNoorLotNo);
productCodeList.add(dnInfo.OTCode);
// CHAN-BBLAAP start
string Product_Serial_No = '';
if (dnInfo.SorLMark == 'S') {
- Product_Serial_No =
- dnInfo.OTCode + ':' + dnInfo.SerialNoorLotNo;
+ Product_Serial_No = dnInfo.OTCode + ':' + dnInfo.SerialNoorLotNo;
} else {
- Product_Serial_No =
- dnInfo.OTCode + ':' + dnInfo.SerialNoorLotNo
- + '(' + dnInfo.TracingCode + ')';
+ Product_Serial_No = dnInfo.OTCode + ':' + dnInfo.SerialNoorLotNo + '(' + dnInfo.TracingCode + ')';
}
// CHAN-BBLAAP end
- if (dnInfo.OTCode == null || dnInfo.OTCode == ''
- || dnInfo.SerialNoorLotNo == null || dnInfo.SerialNoorLotNo == ''
- ) {
- // 鍟嗗搧銈炽兗銉夈亴銇亜鍫村悎銆佸嚘鐞嗐仺椋涖伆銇�
- continue;
- }
+ if (dnInfo.OTCode == null || dnInfo.OTCode == '' || dnInfo.SerialNoorLotNo == null || dnInfo.SerialNoorLotNo == '') {
+ // 鍟嗗搧銈炽兗銉夈亴銇亜鍫村悎銆佸嚘鐞嗐仺椋涖伆銇�
+ continue;
+ }
// HHOA-AGN2EH start
- //add by rentx 20210726 start
- dnInfo.SerialNoorLotNo = dnInfo.SerialNoorLotNo == '.'? datestr +dnInfo.OTCode : dnInfo.SerialNoorLotNo;
+ //add by rentx 20210726 start
+ dnInfo.SerialNoorLotNo = dnInfo.SerialNoorLotNo == '.' ? datestr + dnInfo.OTCode : dnInfo.SerialNoorLotNo;
//update by rentx 20210726 end
productSerialNoList.add(dnInfo.SerialNoorLotNo);
productSerialNoList.add(dnInfo.SerialNoorLotNo + '(' + dnInfo.TracingCode + ')');
}
-
}
// 鐢靛瓙绛炬敹鍗� start 棰濆妫�绱nd user
- List<Account> accList = [select Id, Name, Management_Code__c, Department_Class__c, Hospital__c, ParentId,
- RecordType.DeveloperName, Department_Name__c, OCM_man_province_txt__c
- from Account
- where Management_Code__c in :managementCodeList];
+ List<Account> accList = [
+ SELECT
+ Id,
+ Name,
+ Management_Code__c,
+ Department_Class__c,
+ Hospital__c,
+ ParentId,
+ RecordType.DeveloperName,
+ Department_Name__c,
+ OCM_man_province_txt__c
+ FROM Account
+ WHERE Management_Code__c IN :managementCodeList
+ ];
// HHOA-BLC8S6 update by vivek 2020-02-13 end
Map<String, Account> accsMap = new Map<String, Account>();
for (Account acc : accList) {
accsMap.put(acc.Management_Code__c, acc);
}
Map<String, Opportunity> oppMap = new Map<String, Opportunity>();
- List<Opportunity> oppList = [Select Id, Purchase_Type__c, Opportunity_No__c,Strategic_department_Class_Name__c,
- Sales_Root__c, SAP_Province__c, Trade__c, Agency1__c,Agency1__r.Name,
- Agency1__r.OCM_man_province_txt__c, Opportunity_Category__c,
- OCM_man_province_cus__c, Sales_assistant_name_text__c
- // 鐢靛瓙绛炬敹鍗� start
- // 涓存椂浣跨敤 鐢ㄤ綔璇曠偣缁忛攢鍟�
- ,Agency1__r.EsignTestAccount__c,Agency1__r.EsignTestAccountType__c
- // 鐢靛瓙绛炬敹鍗� end
- //闆嗕腑閲囪喘璇环 绮剧悽鎶�鏈� wql start
- ,Group_purchase_PCL__c
- //闆嗕腑閲囪喘璇环 绮剧悽鎶�鏈� wql end
- ,Is_Corrosion__c
-
- From Opportunity Where Opportunity_No__c IN :inquiryNoList];
+ List<Opportunity> oppList = [
+ SELECT
+ Id,
+ Purchase_Type__c,
+ Opportunity_No__c,
+ Strategic_department_Class_Name__c,
+ Sales_Root__c,
+ SAP_Province__c,
+ Trade__c,
+ Agency1__c,
+ Agency1__r.Name,
+ Agency1__r.OCM_man_province_txt__c,
+ Opportunity_Category__c,
+ OCM_man_province_cus__c,
+ Sales_assistant_name_text__c,
+ // 鐢靛瓙绛炬敹鍗� start
+ // 涓存椂浣跨敤 鐢ㄤ綔璇曠偣缁忛攢鍟�
+ Agency1__r.EsignTestAccount__c,
+ Agency1__r.EsignTestAccountType__c,
+ // 鐢靛瓙绛炬敹鍗� end
+ //闆嗕腑閲囪喘璇环 绮剧悽鎶�鏈� wql start
+ Group_purchase_PCL__c,
+ //闆嗕腑閲囪喘璇环 绮剧悽鎶�鏈� wql end
+ Is_Corrosion__c
+ FROM Opportunity
+ WHERE Opportunity_No__c IN :inquiryNoList
+ ];
for (Opportunity opp : oppList) {
oppMap.put(opp.Opportunity_No__c, opp);
}
// 妫�绱㈠嚭DN 骞剁敓鎴怐N Map
- Boolean flg=true;
- map <string, Statu_Achievements_DN__c> DNMap = new map <string, Statu_Achievements_DN__c>();
+ Boolean flg = true;
+ map<string, Statu_Achievements_DN__c> DNMap = new Map<string, Statu_Achievements_DN__c>();
List<Statu_Achievements_DN__c> DNList = GetDNList(DNNoSet);
- // [select id, Name,
- // DeliveryDate_Raw__c,
- // DeliveryNote_Raw__c,
- // DepartmentNo_Raw__c,
- // EndUserNo_Raw__c,
- // InquiryNo_Raw__c,
- // ReturnMark_Raw__c,
- // SoNo_Raw__c,
- // Opportunity__c,
- // Statu_Achievements__c,
- // endUser__c
- // //鐢靛瓙绛炬敹鍗曡瘯鐐圭敤鎴疯祴鍊�
- // ,endUser__r.RecordType.Name
- // // 鐢靛瓙绛炬敹鍗� start
- // , Sales_assistant_name_text__c,
- // RC_Manager__c,ReturnMark__c
- // // 璇曠偣鐢ㄦ埛锛屽眾鏃堕渶瑕佸垹鎺�
- // , EsignTestAccount__c
- // // 鐢靛瓙绛炬敹鍗� end
- // //ET鍙洖鍝佷笉鐢熸垚绛炬敹鍗� start
- // , ETRecalledProducts__c
- // //ET鍙洖鍝佷笉鐢熸垚绛炬敹鍗� end
- // //acc鏍囪瘑 start
- // ,ACC_Text__c,
- // Is_Corrosion__c,
- // //鏃犲伩鍑哄簱鏍囪瘑 thh 2021-11-01 start
- // Statu_Achievements__r.orderType__c
- // //鏃犲伩鍑哄簱鏍囪瘑 thh 2021-11-01 end
- // //acc鏍囪瘑 end
- // from Statu_Achievements_DN__c where
- // Name in: DNNoSet];
+ // [select id, Name,
+ // DeliveryDate_Raw__c,
+ // DeliveryNote_Raw__c,
+ // DepartmentNo_Raw__c,
+ // EndUserNo_Raw__c,
+ // InquiryNo_Raw__c,
+ // ReturnMark_Raw__c,
+ // SoNo_Raw__c,
+ // Opportunity__c,
+ // Statu_Achievements__c,
+ // endUser__c
+ // //鐢靛瓙绛炬敹鍗曡瘯鐐圭敤鎴疯祴鍊�
+ // ,endUser__r.RecordType.Name
+ // // 鐢靛瓙绛炬敹鍗� start
+ // , Sales_assistant_name_text__c,
+ // RC_Manager__c,ReturnMark__c
+ // // 璇曠偣鐢ㄦ埛锛屽眾鏃堕渶瑕佸垹鎺�
+ // , EsignTestAccount__c
+ // // 鐢靛瓙绛炬敹鍗� end
+ // //ET鍙洖鍝佷笉鐢熸垚绛炬敹鍗� start
+ // , ETRecalledProducts__c
+ // //ET鍙洖鍝佷笉鐢熸垚绛炬敹鍗� end
+ // //acc鏍囪瘑 start
+ // ,ACC_Text__c,
+ // Is_Corrosion__c,
+ // //鏃犲伩鍑哄簱鏍囪瘑 thh 2021-11-01 start
+ // Statu_Achievements__r.orderType__c
+ // //鏃犲伩鍑哄簱鏍囪瘑 thh 2021-11-01 end
+ // //acc鏍囪瘑 end
+ // from Statu_Achievements_DN__c where
+ // Name in: DNNoSet];
for (Statu_Achievements_DN__c dn : DNList) {
DNMap.put(dn.Name, dn);
}
@@ -254,48 +309,73 @@
List<DNdetail> insertDNdetailList = new List<DNdetail>();
// CHAN-BBLAAP end
- List<Statu_Achievements__c> boList = [select Id, Name
- from Statu_Achievements__c
- where Name in :soNoList and OverviewStatus__c <> '鏃犳晥鍚堝悓'];
+ List<Statu_Achievements__c> boList = [
+ SELECT Id, Name
+ FROM Statu_Achievements__c
+ WHERE Name IN :soNoList AND OverviewStatus__c != '鏃犳晥鍚堝悓'
+ ];
Map<String, String> boMap = new Map<String, String>();
for (Statu_Achievements__c bo : boList) {
boMap.put(bo.Name, bo.Id);
}
-
- List<Product2> prdList = [select Id, Name, ProductCode, ProductCode_Ext__c, MDM_Model_No__c
- from Product2
- where ProductCode_Ext__c in :productCodeList];
+
+ List<Product2> prdList = [
+ SELECT Id, Name, ProductCode, ProductCode_Ext__c, MDM_Model_No__c
+ FROM Product2
+ WHERE ProductCode_Ext__c IN :productCodeList
+ ];
Map<String, Product2> prdsMap = new Map<String, Product2>();
for (Product2 prd : prdList) {
prdsMap.put(prd.ProductCode_Ext__c, prd);
}
- List<Asset> astList = [select Id, Name, Product2.ProductCode, Product2.Dealer_special_Object__c , Product2.Dealer_Object__c,
- SerialNumber, Product_Serial_No__c, Repair_Count__c, TracingCode__c,
- Product2Id, AccountId, Account.Management_Code__c, Department_Class__c, Hospital__c,
- Posting_Date__c, InstallDate, SLMark__c, MDM_Model_No__c, OT_CODE__c,
- Guarantee_period_for_products__c, Installation_Site__c, Delete_Flag__c, Return_Flag__c,
- Extend_Gurantee_DateTo__c, guarantee_period__c, Proviston_period__c
- from Asset
- where SerialNumber in :productSerialNoList
- and IsCompetitorProduct = false
- and Information_From__c <> '澶卞崟'];
+ List<Asset> astList = [
+ SELECT
+ Id,
+ Name,
+ Product2.ProductCode,
+ Product2.Dealer_special_Object__c,
+ Product2.Dealer_Object__c,
+ SerialNumber,
+ Product_Serial_No__c,
+ Repair_Count__c,
+ TracingCode__c,
+ Product2Id,
+ AccountId,
+ Account.Management_Code__c,
+ Department_Class__c,
+ Hospital__c,
+ Posting_Date__c,
+ InstallDate,
+ SLMark__c,
+ MDM_Model_No__c,
+ OT_CODE__c,
+ Guarantee_period_for_products__c,
+ Installation_Site__c,
+ Delete_Flag__c,
+ Return_Flag__c,
+ Extend_Gurantee_DateTo__c,
+ guarantee_period__c,
+ Proviston_period__c
+ FROM Asset
+ WHERE SerialNumber IN :productSerialNoList AND IsCompetitorProduct = FALSE AND Information_From__c != '澶卞崟'
+ ];
Map<String, Asset> astsMap = new Map<String, Asset>();
for (Asset ast : astList) {
astsMap.put(ast.MDM_Model_No__c + ast.SerialNumber, ast);
}
-
+
// 鐢靛瓙绛炬敹鍗� start
// key 鏄渷浠藉悕瀛楋紝 value 鏄搴旂殑钀ヤ笟绠$悊閮ㄦ媴褰� 1 ,2 ,3
- Map < String, String > provinceOwnerMap = new Map< String, String > ();
+ Map<String, String> provinceOwnerMap = new Map<String, String>();
//闆嗕腑閲囪喘璇环 鏋勫缓鍔╃悊map key鏄渷浠藉悕绉� value鏄姪鐞�
- Map < String, String > provinceGIMap = new Map< String, String > ();
+ Map<String, String> provinceGIMap = new Map<String, String>();
//妫�绱CSM绠$悊鐪佸璞�
- //闆嗕腑閲囪喘璇环 澧炲姞妫�绱㈠姪鐞�
- List < OCM_Management_Province__c > ompList = [select id, Name, SalesManage__c,GI_assistant__c from OCM_Management_Province__c ];
+ //闆嗕腑閲囪喘璇环 澧炲姞妫�绱㈠姪鐞�
+ List<OCM_Management_Province__c> ompList = [SELECT id, Name, SalesManage__c, GI_assistant__c FROM OCM_Management_Province__c];
//瀛樻斁map<鐪侊紝鎷呭綋>
- for (OCM_Management_Province__c omp: ompList) {
+ for (OCM_Management_Province__c omp : ompList) {
provinceOwnerMap.put(omp.Name, omp.SalesManage__c);
- provinceGIMap.put(omp.Name,omp.GI_assistant__c);
+ provinceGIMap.put(omp.Name, omp.GI_assistant__c);
}
// 鐢靛瓙绛炬敹鍗� end
@@ -319,48 +399,72 @@
continue;
}
if (infoH.DnInformation == null || infoH.DnInformation.size() == 0) {
- iflog.ErrorLog__c += 'Error! SoNo[' + infoH.SoNo + '] DeliveryNote[' + infoH.DeliveryNote + '] DnInformation is required. This DN is skipped.\n';
+ iflog.ErrorLog__c +=
+ 'Error! SoNo[' +
+ infoH.SoNo +
+ '] DeliveryNote[' +
+ infoH.DeliveryNote +
+ '] DnInformation is required. This DN is skipped.\n';
continue;
}
- if (infoH.EndUserNo == null || infoH.EndUserNo == '') {
- iflog.ErrorLog__c += 'Error! SoNo[' + infoH.SoNo + '] DeliveryNote[' + infoH.DeliveryNote + '] EndUserNo is required. This DN is skipped.\n';
+ if (infoH.EndUserNo == null || infoH.EndUserNo == '') {
+ iflog.ErrorLog__c +=
+ 'Error! SoNo[' +
+ infoH.SoNo +
+ '] DeliveryNote[' +
+ infoH.DeliveryNote +
+ '] EndUserNo is required. This DN is skipped.\n';
continue;
}
if (accsMap.get(infoH.EndUserNo) == null) {
- iflog.ErrorLog__c += 'Error! SoNo[' + infoH.SoNo + '] DeliveryNote[' + infoH.DeliveryNote + '] EndUserNo[' + infoH.EndUserNo + ']NotExist. This DN is skipped.\n';
+ iflog.ErrorLog__c +=
+ 'Error! SoNo[' +
+ infoH.SoNo +
+ '] DeliveryNote[' +
+ infoH.DeliveryNote +
+ '] EndUserNo[' +
+ infoH.EndUserNo +
+ ']NotExist. This DN is skipped.\n';
continue;
- } else if (accsMap.get(infoH.EndUserNo).RecordType.DeveloperName != 'HP'
- && accsMap.get(infoH.EndUserNo).RecordType.DeveloperName != 'Agency'
- && accsMap.get(infoH.EndUserNo).RecordType.DeveloperName != 'AgencyContract') {
- iflog.ErrorLog__c += 'Error! SoNo[' + infoH.SoNo + '] DeliveryNote[' + infoH.DeliveryNote + '] EndUserNo[' + infoH.EndUserNo + ']Is Not HP or Agency(Contract). This DN is skipped.\n';
+ } else if (
+ accsMap.get(infoH.EndUserNo).RecordType.DeveloperName != 'HP' &&
+ accsMap.get(infoH.EndUserNo).RecordType.DeveloperName != 'Agency' &&
+ accsMap.get(infoH.EndUserNo).RecordType.DeveloperName != 'AgencyContract'
+ ) {
+ iflog.ErrorLog__c +=
+ 'Error! SoNo[' +
+ infoH.SoNo +
+ '] DeliveryNote[' +
+ infoH.DeliveryNote +
+ '] EndUserNo[' +
+ infoH.EndUserNo +
+ ']Is Not HP or Agency(Contract). This DN is skipped.\n';
continue;
}
- Statu_Achievements_DN__c tempSADN =
- DNMap.get(infoH.DeliveryNote);
+ Statu_Achievements_DN__c tempSADN = DNMap.get(infoH.DeliveryNote);
if (infoH.DeliveryNote != null) {
if (tempSADN == null) {
tempSADN = new Statu_Achievements_DN__c();
tempSADN.Statu_Achievements__c = null;
- tempSADN = SetSADN(tempSADN, infoH, boMap, oppMap, accsMap , provinceOwnerMap,provinceGIMap);
- checkSA( tempSADN, UpsertDNList, iflog, infoH );
-
+ tempSADN = SetSADN(tempSADN, infoH, boMap, oppMap, accsMap, provinceOwnerMap, provinceGIMap);
+ checkSA(tempSADN, UpsertDNList, iflog, infoH);
} else {
- if (infoH.SoNo != tempSADN.SoNo_Raw__c ||
+ if (
+ infoH.SoNo != tempSADN.SoNo_Raw__c ||
infoH.InquiryNo != tempSADN.InquiryNo_Raw__c ||
infoH.ReturnMark != tempSADN.ReturnMark_Raw__c ||
infoH.DeliveryDate != tempSADN.DeliveryDate_Raw__c ||
infoH.EndUserNo != tempSADN.EndUserNo_Raw__c ||
infoH.DepartmentNo != tempSADN.DepartmentNo_Raw__c ||
infoH.DeliveryNote != tempSADN.DeliveryNote_Raw__c
- ) {
- string SADNID = tempSADN.id;
- // 鐢靛瓙绛炬敹鍗� 棰濆澧炲姞钀ヤ笟绠$悊閮ㄦ媴褰撹祴鍊� start
- tempSADN = SetSADN(tempSADN, infoH, boMap,
- oppMap,accsMap, provinceOwnerMap,provinceGIMap);
- // 鐢靛瓙绛炬敹鍗� 棰濆澧炲姞钀ヤ笟绠$悊閮ㄦ媴褰撹祴鍊� end
- tempSADN.id = SADNID;
- checkSA( tempSADN, UpsertDNList, iflog, infoH );
- }
+ ) {
+ string SADNID = tempSADN.id;
+ // 鐢靛瓙绛炬敹鍗� 棰濆澧炲姞钀ヤ笟绠$悊閮ㄦ媴褰撹祴鍊� start
+ tempSADN = SetSADN(tempSADN, infoH, boMap, oppMap, accsMap, provinceOwnerMap, provinceGIMap);
+ // 鐢靛瓙绛炬敹鍗� 棰濆澧炲姞钀ヤ笟绠$悊閮ㄦ媴褰撹祴鍊� end
+ tempSADN.id = SADNID;
+ checkSA(tempSADN, UpsertDNList, iflog, infoH);
+ }
}
}
integer tempDNdetailNumber = 0;
@@ -376,10 +480,13 @@
}
// CHAN-BBLAAP 鎻掑叆淇濇湁璁惧鏄庣粏鏃舵彃鍏ュ搴擠N start
boolean tempReturnFlg = infoH.ReturnMark == '1' ? true : false;
- DNdetail tempDNdetail
- = SetSADNDetails(infoH.DeliveryNote, tempReturnFlg, dnInfo, ast,
- dnInfo.SerialNoorLotNo != null && dnInfo.SerialNoorLotNo.equals('.') ?
- tempDNdetailNumber++ : tempDNdetailNumber);
+ DNdetail tempDNdetail = SetSADNDetails(
+ infoH.DeliveryNote,
+ tempReturnFlg,
+ dnInfo,
+ ast,
+ dnInfo.SerialNoorLotNo != null && dnInfo.SerialNoorLotNo.equals('.') ? tempDNdetailNumber++ : tempDNdetailNumber
+ );
insertDNdetailList.add(tempDNdetail);
}
}
@@ -390,43 +497,42 @@
DNMap.put(tempSADN.Name, tempSADN);
}
DNList = GetDNList(DNMap.keySet());
- // [select id, Name,
- // DeliveryDate_Raw__c,
- // DeliveryNote_Raw__c,
- // DepartmentNo_Raw__c,
- // EndUserNo_Raw__c,
- // InquiryNo_Raw__c,
- // ReturnMark_Raw__c,
- // SoNo_Raw__c,
- // Opportunity__c,
- // Statu_Achievements__c,
- // endUser__c
- // //鐢靛瓙绛炬敹鍗曡瘯鐐圭敤鎴疯祴鍊�
- // ,endUser__r.RecordType.Name
- // // 鐢靛瓙绛炬敹鍗� start
- // , Sales_assistant_name_text__c,
- // RC_Manager__c,ReturnMark__c
- // // 璇曠偣鐢ㄦ埛锛屽眾鏃堕渶瑕佸垹鎺�
- // , EsignTestAccount__c
- // // 鐢靛瓙绛炬敹鍗� end
- // //ET鍙洖鍝佷笉鐢熸垚绛炬敹鍗� start
- // , ETRecalledProducts__c
- // //ET鍙洖鍝佷笉鐢熸垚绛炬敹鍗� end
- // //acc鏍囪瘑 start
- // ,ACC_Text__c,
- // Is_Corrosion__c,
- // Statu_Achievements__r.orderType__c
- // //acc鏍囪瘑 end
- // from Statu_Achievements_DN__c where
- // Name in: DNMap.keySet()];
+ // [select id, Name,
+ // DeliveryDate_Raw__c,
+ // DeliveryNote_Raw__c,
+ // DepartmentNo_Raw__c,
+ // EndUserNo_Raw__c,
+ // InquiryNo_Raw__c,
+ // ReturnMark_Raw__c,
+ // SoNo_Raw__c,
+ // Opportunity__c,
+ // Statu_Achievements__c,
+ // endUser__c
+ // //鐢靛瓙绛炬敹鍗曡瘯鐐圭敤鎴疯祴鍊�
+ // ,endUser__r.RecordType.Name
+ // // 鐢靛瓙绛炬敹鍗� start
+ // , Sales_assistant_name_text__c,
+ // RC_Manager__c,ReturnMark__c
+ // // 璇曠偣鐢ㄦ埛锛屽眾鏃堕渶瑕佸垹鎺�
+ // , EsignTestAccount__c
+ // // 鐢靛瓙绛炬敹鍗� end
+ // //ET鍙洖鍝佷笉鐢熸垚绛炬敹鍗� start
+ // , ETRecalledProducts__c
+ // //ET鍙洖鍝佷笉鐢熸垚绛炬敹鍗� end
+ // //acc鏍囪瘑 start
+ // ,ACC_Text__c,
+ // Is_Corrosion__c,
+ // Statu_Achievements__r.orderType__c
+ // //acc鏍囪瘑 end
+ // from Statu_Achievements_DN__c where
+ // Name in: DNMap.keySet()];
for (Statu_Achievements_DN__c dn : DNList) {
DNMap.put(dn.Name, dn);
}
- list<Statu_Achievements_DN_details__c> insertSADNdetailList
- = new list<Statu_Achievements_DN_details__c>();
+ list<Statu_Achievements_DN_details__c> insertSADNdetailList = new List<Statu_Achievements_DN_details__c>();
//鐢靛瓙绛炬敹鍗� 铏氳繘铏氬嚭 tracingcode涓虹┖涓嶇敓鎴愮鏀跺崟 绮剧悽鎶�鏈� 2020/12/08 start
- map <string, Statu_Achievements_DN__c> DNRestructureMap = new map <string, Statu_Achievements_DN__c>();
+ map<string, Statu_Achievements_DN__c> DNRestructureMap = new Map<string, Statu_Achievements_DN__c>();
//鐢靛瓙绛炬敹鍗� 铏氳繘铏氬嚭 tracingcode涓虹┖涓嶇敓鎴愮鏀跺崟 绮剧悽鎶�鏈� 2020/12/08 end
for (DNdetail tempDNd : insertDNdetailList) {
if (DNMap.containskey(tempDNd.DeliveryNote)) {
@@ -437,25 +543,22 @@
insertSADNdetailList.add(tempDNd.DNd);
//鐢靛瓙绛炬敹鍗� 铏氳繘铏氬嚭 tracingcode涓虹┖涓嶇敓鎴愮鏀跺崟 绮剧悽鎶�鏈� 2020/12/08 start
-
- if(tempSADN.ACC_Text__c != 'Y'){
- if(String.isBlank(tempDNd.DNd.TracingCode_Raw__c)){
- tempSADN.ACC_Text__c = 'Y';
+ if (tempSADN.ACC_Text__c != 'Y') {
+ if (String.isBlank(tempDNd.DNd.TracingCode_Raw__c)) {
+ tempSADN.ACC_Text__c = 'Y';
}
}
DNRestructureMap.put(tempSADN.Name, tempSADN);
//鐢靛瓙绛炬敹鍗� 铏氳繘铏氬嚭 tracingcode涓虹┖涓嶇敓鎴愮鏀跺崟 绮剧悽鎶�鏈� 2020/12/08 end
-
-
}
}
- List<Statu_Achievements_DN_details__c> DNdetailList =
- [SELECT Id
- FROM Statu_Achievements_DN_details__c
- where Statu_Achievements_DN__r.Name in: DNMap.keySet()];
-
+ List<Statu_Achievements_DN_details__c> DNdetailList = [
+ SELECT Id
+ FROM Statu_Achievements_DN_details__c
+ WHERE Statu_Achievements_DN__r.Name IN :DNMap.keySet()
+ ];
if (DNdetailList.size() > 0 && !System.Test.isRunningTest()) {
delete DNdetailList;
@@ -465,68 +568,69 @@
}
// 鐢靛瓙绛炬敹鍗� 2020/07/17 start
// 妫�绱㈠嚭绛炬敹鍗曪紝骞剁敓鎴愮鏀跺崟map key 涓篋N鍙�
- map <string, eSignForm__c> eSFMap = new map <string, eSignForm__c>();
- List<eSignForm__c> eSFList =
- [select id, DNName__c,
- Hazardous_Chemicals__c,
- Statu_Achievements__c,Statu_Achievements_DN__c
- from eSignForm__c where
- DNName__c in: DNNoSet];
+ map<string, eSignForm__c> eSFMap = new Map<string, eSignForm__c>();
+ List<eSignForm__c> eSFList = [
+ SELECT id, DNName__c, Hazardous_Chemicals__c, Statu_Achievements__c, Statu_Achievements_DN__c
+ FROM eSignForm__c
+ WHERE DNName__c IN :DNNoSet
+ ];
for (eSignForm__c eSF : eSFList) {
eSFMap.put(eSF.DNName__c, eSF);
}
//鐢靛瓙绛炬敹鍗� 铏氳繘铏氬嚭 鏄庣粏涓簉acing code 涓虹┖鐨� 涓嶇敓鎴愮鏀跺崟 20201207 绮剧悽鎶�鏈� start
- list<eSignForm__c> UpsertESFList = SetupeSignForm( eSFMap , DNRestructureMap.values() );
-
+ list<eSignForm__c> UpsertESFList = SetupeSignForm(eSFMap, DNRestructureMap.values());
+
//鐢靛瓙绛炬敹鍗� 铏氳繘铏氬嚭 鏄庣粏涓簉acing code 涓虹┖鐨� 涓嶇敓鎴愮鏀跺崟 20201207 绮剧悽鎶�鏈� end
- if(UpsertESFList.size()> 0) {
+ if (UpsertESFList.size() > 0) {
upsert UpsertESFList;
}
// key 涓� 瀵瑰簲DN鐨処D
- map <string, eSignForm__c> eSFAllMap = new map <string, eSignForm__c> ();
- for( eSignForm__c tempeSignForm : UpsertESFList){
- eSFAllMap.put(tempeSignForm.DNName__c,tempeSignForm);
+ map<string, eSignForm__c> eSFAllMap = new Map<string, eSignForm__c>();
+ for (eSignForm__c tempeSignForm : UpsertESFList) {
+ eSFAllMap.put(tempeSignForm.DNName__c, tempeSignForm);
}
-
// 妫�绱㈢幇鏈夌鏀跺崟鏄庣粏锛屽苟鐢熸垚绛炬敹鍗曟槑缁唌ap key 涓篋N鍙� + 浜у搧OTCode
- map <string, eSignFormLineItem__c> eSFLMap = new map <string, eSignFormLineItem__c>();
- List<eSignFormLineItem__c> eSFLList =
- [select id,DNProductNo__c,
- Count__c,Product2__c,eSignForm__c
- , CaseNumber__c
- from eSignFormLineItem__c
- where eSignForm__r.DNName__c in: DNNoSet
- ];
+ map<string, eSignFormLineItem__c> eSFLMap = new Map<string, eSignFormLineItem__c>();
+ List<eSignFormLineItem__c> eSFLList = [
+ SELECT id, DNProductNo__c, Count__c, Product2__c, eSignForm__c, CaseNumber__c
+ FROM eSignFormLineItem__c
+ WHERE eSignForm__r.DNName__c IN :DNNoSet
+ ];
for (eSignFormLineItem__c eSFL : eSFLList) {
eSFL.Count__c = 0;
eSFLMap.put(eSFL.DNProductNo__c, eSFL);
}
// 鏋勯�犵鏀跺崟鏄庣粏
- list<eSignFormLineItem__c> UpsertESFLList =
- SetupeSignFormLineItems( insertSADNdetailList, eSFLMap , eSFAllMap, prdsMap);
- if(UpsertESFLList.size() > 0){
+ list<eSignFormLineItem__c> UpsertESFLList = SetupeSignFormLineItems(insertSADNdetailList, eSFLMap, eSFAllMap, prdsMap);
+ if (UpsertESFLList.size() > 0) {
upsert UpsertESFLList;
}
rowData.IsUpsertDN__c = false;
rowData.DN_retry_cnt__c = 0;
- if(System.Test.isRunningTest()){
+ if (System.Test.isRunningTest()) {
throw new ControllerUtil.myException('娴嬭瘯閿欒锛�');
}
// 鐢靛瓙绛炬敹鍗� 2020/07/17 end
-
} catch (Exception ex) {
Database.rollback(sp);
logstr += '\n' + ex.getMessage();
- rowData.IsUpsertDN__c = true;
+ rowData.IsUpsertDN__c = true;
iflog.ErrorLog__c = ex.getMessage() + '\n' + ex.getStackTraceString() + '\n' + iflog.ErrorLog__c;
- if (rowData.DN_retry_cnt__c == null) rowData.DN_retry_cnt__c = 0;
+ if (rowData.DN_retry_cnt__c == null)
+ rowData.DN_retry_cnt__c = 0;
if (rowData.DN_retry_cnt__c < batch_retry_max_cnt) {
rowData.DN_retry_cnt__c++;
DNUpsertSchedule.assignOneMinute();
}
if (rowData.DN_retry_cnt__c >= batch_retry_max_cnt) {
- rowData.ErrorLog__c = ex.getMessage() + '\n' + ex.getStackTraceString() + '\n' + rowData.ErrorLog__c + '閿欒娆℃暟宸茬粡瓒呰繃鑷姩鏀朵俊璁惧畾鐨勬渶澶ф鏁帮紝璇锋墜鍔ㄦ敹淇�';
+ rowData.ErrorLog__c =
+ ex.getMessage() +
+ '\n' +
+ ex.getStackTraceString() +
+ '\n' +
+ rowData.ErrorLog__c +
+ '閿欒娆℃暟宸茬粡瓒呰繃鑷姩鏀朵俊璁惧畾鐨勬渶澶ф鏁帮紝璇锋墜鍔ㄦ敹淇�';
}
}
@@ -539,42 +643,45 @@
iflog.ErrorLog__c = iflog.ErrorLog__c.subString(0, 32760) + ' ...';
}
update iflog;
-
}
//浼樺寲涓ゆsql鏌ヨ thh 2021-11-02 start
- private static list<Statu_Achievements_DN__c> GetDNList(Set<String> DNNoSet){
- List<Statu_Achievements_DN__c> DNList =
- [select id, Name,
- DeliveryDate_Raw__c,
- DeliveryNote_Raw__c,
- DepartmentNo_Raw__c,
- EndUserNo_Raw__c,
- InquiryNo_Raw__c,
- ReturnMark_Raw__c,
- SoNo_Raw__c,
- Opportunity__c,
- Statu_Achievements__c,
- endUser__c
- //鐢靛瓙绛炬敹鍗曡瘯鐐圭敤鎴疯祴鍊�
- ,endUser__r.RecordType.Name
- // 鐢靛瓙绛炬敹鍗� start
- , Sales_assistant_name_text__c,
- RC_Manager__c,ReturnMark__c
- // 璇曠偣鐢ㄦ埛锛屽眾鏃堕渶瑕佸垹鎺�
- , EsignTestAccount__c
- // 鐢靛瓙绛炬敹鍗� end
- //ET鍙洖鍝佷笉鐢熸垚绛炬敹鍗� start
- , ETRecalledProducts__c
- //ET鍙洖鍝佷笉鐢熸垚绛炬敹鍗� end
- //acc鏍囪瘑 start
- ,ACC_Text__c,
- Is_Corrosion__c,
- //鏃犲伩鍑哄簱鏍囪瘑 thh 2021-11-01 start
- Statu_Achievements__r.orderType__c
- //鏃犲伩鍑哄簱鏍囪瘑 thh 2021-11-01 end
- //acc鏍囪瘑 end
- from Statu_Achievements_DN__c where
- Name in: DNNoSet];
+ private static list<Statu_Achievements_DN__c> GetDNList(Set<String> DNNoSet) {
+ List<Statu_Achievements_DN__c> DNList = [
+ SELECT
+ id,
+ Name,
+ DeliveryDate_Raw__c,
+ DeliveryNote_Raw__c,
+ DepartmentNo_Raw__c,
+ EndUserNo_Raw__c,
+ InquiryNo_Raw__c,
+ ReturnMark_Raw__c,
+ SoNo_Raw__c,
+ Opportunity__c,
+ Statu_Achievements__c,
+ endUser__c,
+ //鐢靛瓙绛炬敹鍗曡瘯鐐圭敤鎴疯祴鍊�
+ endUser__r.RecordType.Name,
+ // 鐢靛瓙绛炬敹鍗� start
+ Sales_assistant_name_text__c,
+ RC_Manager__c,
+ ReturnMark__c,
+ // 璇曠偣鐢ㄦ埛锛屽眾鏃堕渶瑕佸垹鎺�
+ EsignTestAccount__c,
+ // 鐢靛瓙绛炬敹鍗� end
+ //ET鍙洖鍝佷笉鐢熸垚绛炬敹鍗� start
+ ETRecalledProducts__c,
+ //ET鍙洖鍝佷笉鐢熸垚绛炬敹鍗� end
+ //acc鏍囪瘑 start
+ ACC_Text__c,
+ Is_Corrosion__c,
+ //鏃犲伩鍑哄簱鏍囪瘑 thh 2021-11-01 start
+ Statu_Achievements__r.orderType__c
+ //鏃犲伩鍑哄簱鏍囪瘑 thh 2021-11-01 end
+ //acc鏍囪瘑 end
+ FROM Statu_Achievements_DN__c
+ WHERE Name IN :DNNoSet
+ ];
return DNList;
}
global void finish(Database.BatchableContext BC) {
@@ -585,38 +692,43 @@
* 閫�璐N涓嶇敓鎴愮鏀跺崟
*/
@TestVisible
- private static list<eSignForm__c> SetupeSignForm(map <string, eSignForm__c> eSFMap , list<Statu_Achievements_DN__c> DNList){
- list<eSignForm__c> UpsertESFList = new list<eSignForm__c> ();
- for(Statu_Achievements_DN__c tempDN:DNList ){
+ private static list<eSignForm__c> SetupeSignForm(map<string, eSignForm__c> eSFMap, list<Statu_Achievements_DN__c> DNList) {
+ list<eSignForm__c> UpsertESFList = new List<eSignForm__c>();
+ for (Statu_Achievements_DN__c tempDN : DNList) {
// 鑾峰彇鐜版湁绛炬敹鍗�
eSignForm__c tempeSF = eSFMap.get(tempDN.Name);
- if( tempeSF == null ){
+ if (tempeSF == null) {
tempeSF = new eSignForm__c();
}
// 绛炬敹鍗曞悕瀛� 涓猴細 DN鍙�-鍙戣揣鏃ュ勾鏈堟棩
- string datestr = tempDN.DeliveryDate_Raw__c == null?
- Date.today().format().ReplaceAll('/', ''):
- tempDN.DeliveryDate_Raw__c ;
- tempeSF.Name = string.valueof(integer.valueOf(tempDN.Name)) + '-' +datestr;
-
+ string datestr = tempDN.DeliveryDate_Raw__c == null ? Date.today().format().ReplaceAll('/', '') : tempDN.DeliveryDate_Raw__c;
+ tempeSF.Name = string.valueof(integer.valueOf(tempDN.Name)) + '-' + datestr;
+
tempeSF.DNName__c = tempDN.Name;
tempeSF.Statu_Achievements__c = tempDN.Statu_Achievements__c;
tempeSF.Statu_Achievements_DN__c = tempDN.ID;
tempeSF.Sales_assistant_name_text__c = tempDN.Sales_assistant_name_text__c;
tempeSF.RC_Manager__c = tempDN.RC_Manager__c;
//鐢熸垚绛炬敹鍗曟椂锛岀粰鏄惁鏃犲伩鍑哄簱璧嬪�� 绮剧悽鎶�鏈� thh 2021-10-15 start
- if(tempDN.Statu_Achievements__r.orderType__c == 'ZM16'){
+ if (tempDN.Statu_Achievements__r.orderType__c == 'ZM16') {
tempeSF.isFreeDelivery__c = true;
}
//鐢熸垚绛炬敹鍗曟椂锛岀粰鏄惁鏃犲伩鍑哄簱璧嬪�� 绮剧悽鎶�鏈� thh 2021-10-15 end
// 缁忛攢鍟嗚瘯鐐圭敤鎴�
//鐢靛瓙绛炬敹鍗� 铏氳繘铏氬嚭 鏄庣粏涓簉acing code 涓虹┖鐨� 涓嶇敓鎴愮鏀跺崟 20201207 绮剧悽鎶�鏈� start
- if(tempDN.EsignTestAccount__c && !tempDN.ETRecalledProducts__c&&!tempDN.ReturnMark__c&&(tempDN.ACC_Text__c!='Y'||(tempDN.ACC_Text__c=='Y'&&tempDN.Is_Corrosion__c))){//&&tempDN.Is_Corrosion__c
+ if (
+ tempDN.EsignTestAccount__c &&
+ !tempDN.ETRecalledProducts__c &&
+ !tempDN.ReturnMark__c &&
+ (tempDN.ACC_Text__c != 'Y' || (tempDN.ACC_Text__c == 'Y' && tempDN.Is_Corrosion__c))
+ ) {
+ //&&tempDN.Is_Corrosion__c
//娣诲姞鍗卞寲鍝佹爣璇�
- if(tempDN.ACC_Text__c=='Y'&&tempDN.Is_Corrosion__c){//&&tempDN.Is_Corrosion__c
- tempeSF.Hazardous_Chemicals__c=true;
+ if (tempDN.ACC_Text__c == 'Y' && tempDN.Is_Corrosion__c) {
+ //&&tempDN.Is_Corrosion__c
+ tempeSF.Hazardous_Chemicals__c = true;
}
UpsertESFList.add(tempeSF);
}
@@ -639,199 +751,208 @@
@TestVisible
private static list<eSignFormLineItem__c> SetupeSignFormLineItems(
list<Statu_Achievements_DN_details__c> insertSADNdetailList,
- map <string, eSignFormLineItem__c> eSFLMap ,map <string, eSignForm__c> eSFAllMap,
- Map<String, Product2> prdsMap){
- // key 鏄� DN鍙� + 绠卞彿 + 浜у搧OTCode
- for(Statu_Achievements_DN_details__c tempDNDetail : insertSADNdetailList){
- string key = tempDNDetail.DNName__c + '-' +
- tempDNDetail.CaseNumber__c + '-' + tempDNDetail.OTCode_Raw__c;
- //鑾峰彇鐜版湁绛炬敹鍗曟槑缁�
- eSignFormLineItem__c tempeSignFormLineItem = eSFLMap.get(key);
- if( tempeSignFormLineItem == null){
- tempeSignFormLineItem = new eSignFormLineItem__c();
- tempeSignFormLineItem.Count__c = 0;
- }
- tempeSignFormLineItem.Count__c++;
- // Double CaseNumber;
- if(string.isBlank(tempDNDetail.CaseNumber__c)){
- tempeSignFormLineItem.CaseNumber__c = null;
- }else{
- tempeSignFormLineItem.CaseNumber__c = Double.valueOf(tempDNDetail.CaseNumber__c);
- }
- // Double CaseNumber = tempDNDetail.CaseNumber__c == null ? tempDNDetail.CaseNumber__c : Double.valueOf(tempDNDetail.CaseNumber__c);
- tempeSignFormLineItem.DNProductNo__c = key ;
- tempeSignFormLineItem.Name = tempDNDetail.CaseNumber__c == null ? String.valueOf(integer.valueOf(tempDNDetail.DNName__c)) + '-' + tempDNDetail.OTCode_Raw__c:String.valueOf(integer.valueOf(tempDNDetail.DNName__c)) + '-' +
- tempDNDetail.CaseNumber__c + '-' + tempDNDetail.OTCode_Raw__c;
- tempeSignFormLineItem.Product2__c = prdsMap.get(tempDNDetail.OTCode_Raw__c).ID;
- if(eSFAllMap.containskey(tempDNDetail.DNName__c)){
- tempeSignFormLineItem.eSignForm__c = eSFAllMap.get(tempDNDetail.DNName__c).ID;
- eSFLMap.put(key,tempeSignFormLineItem);
- }
+ map<string, eSignFormLineItem__c> eSFLMap,
+ map<string, eSignForm__c> eSFAllMap,
+ Map<String, Product2> prdsMap
+ ) {
+ // key 鏄� DN鍙� + 绠卞彿 + 浜у搧OTCode
+ for (Statu_Achievements_DN_details__c tempDNDetail : insertSADNdetailList) {
+ string key = tempDNDetail.DNName__c + '-' + tempDNDetail.CaseNumber__c + '-' + tempDNDetail.OTCode_Raw__c;
+ //鑾峰彇鐜版湁绛炬敹鍗曟槑缁�
+ eSignFormLineItem__c tempeSignFormLineItem = eSFLMap.get(key);
+ if (tempeSignFormLineItem == null) {
+ tempeSignFormLineItem = new eSignFormLineItem__c();
+ tempeSignFormLineItem.Count__c = 0;
}
- return eSFLMap.values();
+ tempeSignFormLineItem.Count__c++;
+ // Double CaseNumber;
+ if (string.isBlank(tempDNDetail.CaseNumber__c)) {
+ tempeSignFormLineItem.CaseNumber__c = null;
+ } else {
+ tempeSignFormLineItem.CaseNumber__c = Double.valueOf(tempDNDetail.CaseNumber__c);
+ }
+ // Double CaseNumber = tempDNDetail.CaseNumber__c == null ? tempDNDetail.CaseNumber__c : Double.valueOf(tempDNDetail.CaseNumber__c);
+ tempeSignFormLineItem.DNProductNo__c = key;
+ tempeSignFormLineItem.Name = tempDNDetail.CaseNumber__c == null
+ ? String.valueOf(integer.valueOf(tempDNDetail.DNName__c)) + '-' + tempDNDetail.OTCode_Raw__c
+ : String.valueOf(integer.valueOf(tempDNDetail.DNName__c)) +
+ '-' +
+ tempDNDetail.CaseNumber__c +
+ '-' +
+ tempDNDetail.OTCode_Raw__c;
+ tempeSignFormLineItem.Product2__c = prdsMap.get(tempDNDetail.OTCode_Raw__c).ID;
+ if (eSFAllMap.containskey(tempDNDetail.DNName__c)) {
+ tempeSignFormLineItem.eSignForm__c = eSFAllMap.get(tempDNDetail.DNName__c).ID;
+ eSFLMap.put(key, tempeSignFormLineItem);
+ }
}
+ return eSFLMap.values();
+ }
// 璁剧疆鍙戣揣DN
private static Statu_Achievements_DN__c SetSADN(
Statu_Achievements_DN__c tempSADN,
NFM110Rest.GeneralData infoH,
Map<String, String> boMap,
Map<String, Opportunity> oppMap,
- Map<String, Account> accsMap,
- Map < String, String > provinceOwnerMap,
- Map < String, String > provinceGIMap) {
- tempSADN.SoNo_Raw__c = infoH.SoNo;
- tempSADN.InquiryNo_Raw__c = infoH.InquiryNo ;
- tempSADN.ReturnMark_Raw__c = infoH.ReturnMark ;
- tempSADN.DeliveryDate_Raw__c = infoH.DeliveryDate ;
- tempSADN.EndUserNo_Raw__c = infoH.EndUserNo ;
- tempSADN.DepartmentNo_Raw__c = infoH.DepartmentNo ;
- tempSADN.DeliveryNote_Raw__c = infoH.DeliveryNote ;
- // 鐢靛瓙绛炬敹鍗� 2020/07/17 start
- tempSADN.supplier__c = infoH.supplier ;
- tempSADN.supplierNo__c = infoH.supplierNo ;
- tempSADN.shippingUnit__c = infoH.shippingUnit ;
- tempSADN.shippingAddress__c = infoH.shippingAddress ;
- tempSADN.contactName__c = infoH.contactName ;
- tempSADN.contactNumber__c = infoH.contactNumber ;
- tempSADN.totalNumber__c = infoH.totalNumber ;
- tempSADN.transportMode__c = infoH.transportMode ;
- tempSADN.totalWeight__c = infoH.totalWeight ;
- //tempSADN.GoodDetails__c = infoH.GoodDetails ;
- //tempSADN.weight__c = infoH.weight ;
- tempSADN.endUser__c = accsMap.get(infoH.EndUserNo) == null ?null : accsMap.get(infoH.EndUserNo).id ;
+ Map<String, Account> accsMap,
+ Map<String, String> provinceOwnerMap,
+ Map<String, String> provinceGIMap
+ ) {
+ tempSADN.SoNo_Raw__c = infoH.SoNo;
+ tempSADN.InquiryNo_Raw__c = infoH.InquiryNo;
+ tempSADN.ReturnMark_Raw__c = infoH.ReturnMark;
+ tempSADN.DeliveryDate_Raw__c = infoH.DeliveryDate;
+ tempSADN.EndUserNo_Raw__c = infoH.EndUserNo;
+ tempSADN.DepartmentNo_Raw__c = infoH.DepartmentNo;
+ tempSADN.DeliveryNote_Raw__c = infoH.DeliveryNote;
+ // 鐢靛瓙绛炬敹鍗� 2020/07/17 start
+ tempSADN.supplier__c = infoH.supplier;
+ tempSADN.supplierNo__c = infoH.supplierNo;
+ tempSADN.shippingUnit__c = infoH.shippingUnit;
+ tempSADN.shippingAddress__c = infoH.shippingAddress;
+ tempSADN.contactName__c = infoH.contactName;
+ tempSADN.contactNumber__c = infoH.contactNumber;
+ tempSADN.totalNumber__c = infoH.totalNumber;
+ tempSADN.transportMode__c = infoH.transportMode;
+ tempSADN.totalWeight__c = infoH.totalWeight;
+ //tempSADN.GoodDetails__c = infoH.GoodDetails ;
+ //tempSADN.weight__c = infoH.weight ;
+ tempSADN.endUser__c = accsMap.get(infoH.EndUserNo) == null ? null : accsMap.get(infoH.EndUserNo).id;
- // 鐢靛瓙绛炬敹鍗� 2020/07/17 end
- //澧炲姞鍙戣揣DNacc鏍囪瘑 2020/11/23 start
- if(infoH.ACCMark !=null){
- if(infoH.ACCMark.trim() == 'Y'){
- tempSADN.ACC_Mark__c = 'Y';
- }else{
- tempSADN.ACC_Mark__c = 'N';
- }
+ // 鐢靛瓙绛炬敹鍗� 2020/07/17 end
+ //澧炲姞鍙戣揣DNacc鏍囪瘑 2020/11/23 start
+ if (infoH.ACCMark != null) {
+ if (infoH.ACCMark.trim() == 'Y') {
+ tempSADN.ACC_Mark__c = 'Y';
+ } else {
+ tempSADN.ACC_Mark__c = 'N';
}
- tempSADN.name = infoH.DeliveryNote;
- tempSADN.ReturnMark__c = infoH.ReturnMark == '1' ? true : false;
- if (tempSADN.Statu_Achievements__c == null) {
- tempSADN.Statu_Achievements__c = boMap.get(infoH.SoNo);
- }
- tempSADN.DeliveryDate__c = NFMUtil.parseStr2Date(infoH.DeliveryDate);
- //鍙戣揣鏃ュ湪2020/12/01浠ュ悗鐨勶紝鎵嶇敓鎴愮鏀跺崟 start
- Date afterDate = NFMUtil.parseStr2Date('20201201');
- String todate = NFMUtil.formatDate2Str(afterDate);
- String DeliveryDate = NFMUtil.formatDate2Str(tempSADN.DeliveryDate__c);
- //鍙戣揣鏃ュ湪2020/12/01浠ュ悗鐨勶紝鎵嶇敓鎴愮鏀跺崟 end
-
- String[] Inquiry;
- if (infoH.InquiryNo != null && infoH.InquiryNo.contains(',')) {
- Inquiry = infoH.InquiryNo.split(',');
- if (oppMap.get(Inquiry[0]) != null) {
- opportunity opp = oppMap.get(Inquiry[0]);
- tempSADN.Opportunity__c = opp.id;
- tempSADN.Is_Corrosion__c=opp.Is_Corrosion__c;
- // 鐢靛瓙绛炬敹鍗� 璧嬪�艰惀涓氬姪鐞嗗拰钀ヤ笟绠$悊閮ㄦ媴褰� start
- //闆嗕腑閲囪喘鐨勮浠� 绮剧悽鎶�鏈� wql 2020/01/11 start
- if(opp.Group_purchase_PCL__c){
- tempSADN.Sales_assistant_name_text__c = provinceGIMap.get('闆嗛噰璇�');
- tempSADN.RC_Manager__c = provinceOwnerMap.get('闆嗛噰璇�');
- }else{
- tempSADN.Sales_assistant_name_text__c = opp.Sales_assistant_name_text__c;
- tempSADN.RC_Manager__c = provinceOwnerMap.get(opp.OCM_man_province_cus__c);
- }
- //闆嗕腑閲囪喘鐨勮浠� 绮剧悽鎶�鏈� wql 2020/01/11 end
-
-
- //濡傛灉 鍙戣揣鏃ユ湡 澶т簬 2020/12/01 鎵嶇敓鎴愮鏀跺崟
- if(DeliveryDate >= todate){
-
- tempSADN.EsignTestAccount__c =true;
- }else{
- tempSADN.EsignTestAccount__c =false;
- }
-
- //SAP閲屽彫鍥炲搧鎹㈠嚭璁㈠崟鐨勯�佽揪鏂瑰湴鍧�濡傛灉涓哄ゥ鏋楀反鏂姙浜嬪鐨勫湴鍧�锛孌N涓嶇敓鎴愬緟绛炬敹淇℃伅銆�
- String ContactName = tempSADN.ContactName__c.toUpperCase();
- if(ContactName.indexOf('OCSM')>=0){
- tempSADN.ETRecalledProducts__c =true;
- }else{
- tempSADN.ETRecalledProducts__c =false;
- }
-
- }
- if (Inquiry.size() > 1) {
- tempSADN.Order_No__c = Inquiry[1];
- }
- }
- return tempSADN;
}
- private static void checkSA(Statu_Achievements_DN__c tempSADN,
- List<Statu_Achievements_DN__c> UpsertDNList,
- BatchIF_Log__c iflog,
- NFM110rest.GeneralData infoH ) {
- if (tempSADN.Statu_Achievements__c != null)
- UpsertDNList.add(tempSADN);
- else {
- iflog.ErrorLog__c += 'warning! SoNo[' + infoH.SoNo +
- '] Statu_Achievements__c NotExist. The insert of this DN is skipped.\n';
- }
- }
- private static DNdetail SetSADNDetails(string DNnumber, boolean returnFlg,
- NFM110Rest.DnInformation dnInfo, asset ast, integer tempDNdetailNumber) {
- DNdetail tempDNdetail = new DNdetail();
- Statu_Achievements_DN_details__c DNd = new Statu_Achievements_DN_details__c();
- DNd.Qty_Raw__c = dnInfo.QTY;
- DNd.QTY__c = String.isBlank(dnInfo.QTY) || Decimal.valueOf(dnInfo.QTY.trim()) == 0 ?
- 1 : Decimal.valueOf(dnInfo.QTY.trim());
- DNd.ShippedAmount_without_tax__c = String.isBlank(dnInfo.NetWorth) ?
- 0 : returnFlg == false ?
- Decimal.valueOf(dnInfo.NetWorth.trim()) : - Decimal.valueOf(dnInfo.NetWorth.trim());
+ tempSADN.name = infoH.DeliveryNote;
+ tempSADN.ReturnMark__c = infoH.ReturnMark == '1' ? true : false;
+ if (tempSADN.Statu_Achievements__c == null) {
+ tempSADN.Statu_Achievements__c = boMap.get(infoH.SoNo);
+ }
+ tempSADN.DeliveryDate__c = NFMUtil.parseStr2Date(infoH.DeliveryDate);
+ //鍙戣揣鏃ュ湪2020/12/01浠ュ悗鐨勶紝鎵嶇敓鎴愮鏀跺崟 start
+ Date afterDate = NFMUtil.parseStr2Date('20201201');
+ String todate = NFMUtil.formatDate2Str(afterDate);
+ String DeliveryDate = NFMUtil.formatDate2Str(tempSADN.DeliveryDate__c);
+ //鍙戣揣鏃ュ湪2020/12/01浠ュ悗鐨勶紝鎵嶇敓鎴愮鏀跺崟 end
- DNd.ShippedAmount__c = String.isBlank(dnInfo.VALUE) ?
- 0 : returnFlg == false ?
- Decimal.valueOf(dnInfo.VALUE.trim()) : - Decimal.valueOf(dnInfo.VALUE.trim());
+ String[] Inquiry;
+ if (infoH.InquiryNo != null && infoH.InquiryNo.contains(',')) {
+ Inquiry = infoH.InquiryNo.split(',');
+ if (oppMap.get(Inquiry[0]) != null) {
+ opportunity opp = oppMap.get(Inquiry[0]);
+ tempSADN.Opportunity__c = opp.id;
+ tempSADN.Is_Corrosion__c = opp.Is_Corrosion__c;
+ // 鐢靛瓙绛炬敹鍗� 璧嬪�艰惀涓氬姪鐞嗗拰钀ヤ笟绠$悊閮ㄦ媴褰� start
+ //闆嗕腑閲囪喘鐨勮浠� 绮剧悽鎶�鏈� wql 2020/01/11 start
+ if (opp.Group_purchase_PCL__c) {
+ tempSADN.Sales_assistant_name_text__c = provinceGIMap.get('闆嗛噰璇�');
+ tempSADN.RC_Manager__c = provinceOwnerMap.get('闆嗛噰璇�');
+ } else {
+ tempSADN.Sales_assistant_name_text__c = opp.Sales_assistant_name_text__c;
+ tempSADN.RC_Manager__c = provinceOwnerMap.get(opp.OCM_man_province_cus__c);
+ }
+ //闆嗕腑閲囪喘鐨勮浠� 绮剧悽鎶�鏈� wql 2020/01/11 end
- DNd.NetWorthNoProviston__c = String.isBlank(dnInfo.NetWorthNoProviston) ?
- 0 : returnFlg == false ?
- Decimal.valueOf(dnInfo.NetWorthNoProviston.trim()) : - Decimal.valueOf(dnInfo.NetWorthNoProviston.trim());
- if (dnInfo.SorLMark == 'S') {
- DNd.SerialNumber__c = dnInfo.SerialNoorLotNo;
- } else {
- DNd.SerialNumber__c = dnInfo.SerialNoorLotNo + '(' + dnInfo.TracingCode + ')';
- }
- DNd.Product_Serial_No__c = dnInfo.OTCode + ':' + DNd.SerialNumber__c;
- DNd.DNProduct_Serial_No__c = DNnumber + ':' + DNd.Product_Serial_No__c;
- if (dnInfo.SerialNoorLotNo != null && dnInfo.SerialNoorLotNo.equals('.')) {
- DNd.DNProduct_Serial_No__c += tempDNdetailNumber;
- }
- // 鐢靛瓙绛炬敹鍗� start
- DNd.CaseNumber__c = NFMUtil.trimLeft(dnInfo.CaseNumber, '0');
- // 鐢靛瓙绛炬敹鍗� end
+ //濡傛灉 鍙戣揣鏃ユ湡 澶т簬 2020/12/01 鎵嶇敓鎴愮鏀跺崟
+ if (DeliveryDate >= todate) {
+ tempSADN.EsignTestAccount__c = true;
+ } else {
+ tempSADN.EsignTestAccount__c = false;
+ }
- DNd.Barcode_Raw__c = dnInfo.Barcode;
- DNd.OTCode_Raw__c = dnInfo.OTCode;
- DNd.SerialNoorLotNo_Raw__c = dnInfo.SerialNoorLotNo;
- DNd.SorLMark_Raw__c = dnInfo.SorLMark;
- DNd.GuaranteePeriod_Raw__c = dnInfo.GuaranteePeriod;
- DNd.TracingCode_Raw__c = dnInfo.TracingCode;
- DNd.ValidTo_Raw__c = dnInfo.ValidTo;
- DNd.NetWorth_Raw__c = dnInfo.NetWorth;
- DNd.GuaranteePrice_Raw__c = dnInfo.GuaranteePrice;
- DNd.GuaranteeType_Raw__c = dnInfo.GuaranteeType;
- DNd.MaintenancePrice_Raw__c = dnInfo.MaintenancePrice;
- DNd.NetWorthNoProviston_Raw__c = dnInfo.NetWorthNoProviston;
- DNd.ProduceDate_Raw__c = dnInfo.ProduceDate;
- DNd.ProvistonPeriod_Raw__c = dnInfo.ProvistonPeriod;
- DNd.ServicePrice_Raw__c = dnInfo.ServicePrice;
- DNd.VALUE_Raw__c = dnInfo.VALUE;
- DNd.NetWorth_Raw__c = dnInfo.NetWorth;
- DNd.NMPA_Approbation_No__c = dnInfo.NMPA_NO;
- DNd.ProduceCompany__c = dninfo.Provider;
- tempDNdetail.DeliveryNote = DNnumber;
- tempDNdetail.DNd = DNd;
- if (ast != null && ast.id != null) {
- tempDNdetail.DNd.asset__c = ast.id;
- }
- return tempDNdetail;
- }
+ //SAP閲屽彫鍥炲搧鎹㈠嚭璁㈠崟鐨勯�佽揪鏂瑰湴鍧�濡傛灉涓哄ゥ鏋楀反鏂姙浜嬪鐨勫湴鍧�锛孌N涓嶇敓鎴愬緟绛炬敹淇℃伅銆�
+ String ContactName = tempSADN.ContactName__c.toUpperCase();
+ if (ContactName.indexOf('OCSM') >= 0) {
+ tempSADN.ETRecalledProducts__c = true;
+ } else {
+ tempSADN.ETRecalledProducts__c = false;
+ }
+ }
+ if (Inquiry.size() > 1) {
+ tempSADN.Order_No__c = Inquiry[1];
+ }
+ }
+ return tempSADN;
+ }
+ private static void checkSA(
+ Statu_Achievements_DN__c tempSADN,
+ List<Statu_Achievements_DN__c> UpsertDNList,
+ BatchIF_Log__c iflog,
+ NFM110rest.GeneralData infoH
+ ) {
+ if (tempSADN.Statu_Achievements__c != null)
+ UpsertDNList.add(tempSADN);
+ else {
+ iflog.ErrorLog__c += 'warning! SoNo[' + infoH.SoNo + '] Statu_Achievements__c NotExist. The insert of this DN is skipped.\n';
+ }
+ }
+ private static DNdetail SetSADNDetails(
+ string DNnumber,
+ boolean returnFlg,
+ NFM110Rest.DnInformation dnInfo,
+ asset ast,
+ integer tempDNdetailNumber
+ ) {
+ DNdetail tempDNdetail = new DNdetail();
+ Statu_Achievements_DN_details__c DNd = new Statu_Achievements_DN_details__c();
+ DNd.Qty_Raw__c = dnInfo.QTY;
+ DNd.QTY__c = String.isBlank(dnInfo.QTY) || Decimal.valueOf(dnInfo.QTY.trim()) == 0 ? 1 : Decimal.valueOf(dnInfo.QTY.trim());
+ DNd.ShippedAmount_without_tax__c = String.isBlank(dnInfo.NetWorth)
+ ? 0
+ : returnFlg == false ? Decimal.valueOf(dnInfo.NetWorth.trim()) : -Decimal.valueOf(dnInfo.NetWorth.trim());
+
+ DNd.ShippedAmount__c = String.isBlank(dnInfo.VALUE)
+ ? 0
+ : returnFlg == false ? Decimal.valueOf(dnInfo.VALUE.trim()) : -Decimal.valueOf(dnInfo.VALUE.trim());
+
+ DNd.NetWorthNoProviston__c = String.isBlank(dnInfo.NetWorthNoProviston)
+ ? 0
+ : returnFlg == false ? Decimal.valueOf(dnInfo.NetWorthNoProviston.trim()) : -Decimal.valueOf(dnInfo.NetWorthNoProviston.trim());
+ if (dnInfo.SorLMark == 'S') {
+ DNd.SerialNumber__c = dnInfo.SerialNoorLotNo;
+ } else {
+ DNd.SerialNumber__c = dnInfo.SerialNoorLotNo + '(' + dnInfo.TracingCode + ')';
+ }
+ DNd.Product_Serial_No__c = dnInfo.OTCode + ':' + DNd.SerialNumber__c;
+ DNd.DNProduct_Serial_No__c = DNnumber + ':' + DNd.Product_Serial_No__c;
+ if (dnInfo.SerialNoorLotNo != null && dnInfo.SerialNoorLotNo.equals('.')) {
+ DNd.DNProduct_Serial_No__c += tempDNdetailNumber;
+ }
+ // 鐢靛瓙绛炬敹鍗� start
+ DNd.CaseNumber__c = NFMUtil.trimLeft(dnInfo.CaseNumber, '0');
+ // 鐢靛瓙绛炬敹鍗� end
+
+ DNd.Barcode_Raw__c = dnInfo.Barcode;
+ DNd.OTCode_Raw__c = dnInfo.OTCode;
+ DNd.SerialNoorLotNo_Raw__c = dnInfo.SerialNoorLotNo;
+ DNd.SorLMark_Raw__c = dnInfo.SorLMark;
+ DNd.GuaranteePeriod_Raw__c = dnInfo.GuaranteePeriod;
+ DNd.TracingCode_Raw__c = dnInfo.TracingCode;
+ DNd.ValidTo_Raw__c = dnInfo.ValidTo;
+ DNd.NetWorth_Raw__c = dnInfo.NetWorth;
+ DNd.GuaranteePrice_Raw__c = dnInfo.GuaranteePrice;
+ DNd.GuaranteeType_Raw__c = dnInfo.GuaranteeType;
+ DNd.MaintenancePrice_Raw__c = dnInfo.MaintenancePrice;
+ DNd.NetWorthNoProviston_Raw__c = dnInfo.NetWorthNoProviston;
+ DNd.ProduceDate_Raw__c = dnInfo.ProduceDate;
+ DNd.ProvistonPeriod_Raw__c = dnInfo.ProvistonPeriod;
+ DNd.ServicePrice_Raw__c = dnInfo.ServicePrice;
+ DNd.VALUE_Raw__c = dnInfo.VALUE;
+ DNd.NetWorth_Raw__c = dnInfo.NetWorth;
+ DNd.NMPA_Approbation_No__c = dnInfo.NMPA_NO;
+ DNd.ProduceCompany__c = dninfo.Provider;
+ tempDNdetail.DeliveryNote = DNnumber;
+ tempDNdetail.DNd = DNd;
+ if (ast != null && ast.id != null) {
+ tempDNdetail.DNd.asset__c = ast.id;
+ }
+ return tempDNdetail;
+ }
@TestVisible
private static String checkSerialNoorLotNo(String sn) {
if (sn == null || sn == '' || sn.length() < 8) {
@@ -873,4 +994,4 @@
}
return sn;
}
-}
\ No newline at end of file
+}
diff --git a/force-app/main/default/classes/DNUpsertBatchTest.cls b/force-app/main/default/classes/DNUpsertBatchTest.cls
index d205b99..227fd7a 100644
--- a/force-app/main/default/classes/DNUpsertBatchTest.cls
+++ b/force-app/main/default/classes/DNUpsertBatchTest.cls
@@ -1,11 +1,11 @@
-@isTest(SeeAllData = false)
+@isTest(SeeAllData=false)
public class DNUpsertBatchTest {
static Account company;
- static Account section1; // 鍛煎惛绉�
- static Account section2; // 娑堝寲绉�
+ static Account section1; // 鍛煎惛绉�
+ static Account section2; // 娑堝寲绉�
static Account olympus;
- static Account olympus1; // 鍛煎惛绉�
- static Account olympus2; // 娑堝寲绉�
+ static Account olympus1; // 鍛煎惛绉�
+ static Account olympus2; // 娑堝寲绉�
static Account depart1;
static Account depart2;
@testSetup
@@ -16,30 +16,82 @@
ID rectDpt2ID = Schema.SObjectType.Account.getRecordTypeInfosByDeveloperName().get('Department_GI').getRecordTypeId();
// 銉嗐偣銉堛儑銉笺偪
- company = new Account(RecordTypeId = rectCoID, Name = 'NFM110TestCompany', FSE_SP_Main_Leader__c = UserInfo.getUserId(), FSE_GI_Main_Leader__c = UserInfo.getUserId());
+ company = new Account(
+ RecordTypeId = rectCoID,
+ Name = 'NFM110TestCompany',
+ FSE_SP_Main_Leader__c = UserInfo.getUserId(),
+ FSE_GI_Main_Leader__c = UserInfo.getUserId()
+ );
olympus = new Account(RecordTypeId = rectCoID, AgentCode_Ext__c = '9999999', Name = 'olympus');
- insert new Account[] {company, olympus};
- company = [select Management_Code__c, Management_Code_Auto__c, Name, Id from Account where Id = :company.Id];
- section1 = [select Management_Code__c, Management_Code_Auto__c, Name, Id, Department_Class_Label__c from Account where ParentId = :company.Id and RecordType.name = '鎴︾暐绉戝鍒嗛 鍛煎惛绉�'];
- section2 = [select Management_Code__c, Management_Code_Auto__c, Name, Id, Department_Class_Label__c from Account where ParentId = :company.Id and RecordType.name = '鎴︾暐绉戝鍒嗛 娑堝寲绉�'];
- olympus1 = [select Management_Code__c, Management_Code_Auto__c, Name, Id, Department_Class_Label__c from Account where ParentId = :olympus.Id and RecordType.name = '鎴︾暐绉戝鍒嗛 鍛煎惛绉�'];
- olympus2 = [select Management_Code__c, Management_Code_Auto__c, Name, Id, Department_Class_Label__c from Account where ParentId = :olympus.Id and RecordType.name = '鎴︾暐绉戝鍒嗛 娑堝寲绉�'];
+ insert new List<Account>{ company, olympus };
+ company = [SELECT Management_Code__c, Management_Code_Auto__c, Name, Id FROM Account WHERE Id = :company.Id];
+ section1 = [
+ SELECT Management_Code__c, Management_Code_Auto__c, Name, Id, Department_Class_Label__c
+ FROM Account
+ WHERE ParentId = :company.Id AND RecordType.name = '鎴︾暐绉戝鍒嗛 鍛煎惛绉�'
+ ];
+ section2 = [
+ SELECT Management_Code__c, Management_Code_Auto__c, Name, Id, Department_Class_Label__c
+ FROM Account
+ WHERE ParentId = :company.Id AND RecordType.name = '鎴︾暐绉戝鍒嗛 娑堝寲绉�'
+ ];
+ olympus1 = [
+ SELECT Management_Code__c, Management_Code_Auto__c, Name, Id, Department_Class_Label__c
+ FROM Account
+ WHERE ParentId = :olympus.Id AND RecordType.name = '鎴︾暐绉戝鍒嗛 鍛煎惛绉�'
+ ];
+ olympus2 = [
+ SELECT Management_Code__c, Management_Code_Auto__c, Name, Id, Department_Class_Label__c
+ FROM Account
+ WHERE ParentId = :olympus.Id AND RecordType.name = '鎴︾暐绉戝鍒嗛 娑堝寲绉�'
+ ];
System.debug('section1.Department_Class_Label__c=' + section1.Department_Class_Label__c);
System.debug('section2.Department_Class_Label__c=' + section2.Department_Class_Label__c);
- depart1 = new Account(RecordTypeId = rectDpt1ID, Name = '*', ParentId = section1.Id, Department_Class__c = section1.Id, Hospital__c = company.Id,
- Department_Name__c = 'NFM110TestDepart1');
- depart2 = new Account(RecordTypeId = rectDpt2ID, Name = '*', ParentId = section2.Id, Department_Class__c = section2.Id, Hospital__c = company.Id,
- Department_Name__c = 'NFM110TestDepart2');
- Account ocm = new Account(RecordTypeId = rectDpt2ID, Name = '*', ParentId = section2.Id, Department_Class__c = section2.Id, Hospital__c = company.Id,
- AgentCode_Ext__c = '9999900', Department_Name__c = 'NFM110TestDepart3');
- Account olympus_return = new Account(RecordTypeId = rectDpt2ID, Name = '*', ParentId = olympus2.Id, Department_Class__c = olympus2.Id, Hospital__c = olympus.Id,
- AgentCode_Ext__c = '9999901', Department_Name__c = 'olympus_return');
- insert new Account[] {depart1, depart2, ocm, olympus_return};
- depart1 = [select Management_Code__c, Management_Code_Auto__c, Name, Id from Account where Id = :depart1.Id];
- depart2 = [select Management_Code__c, Management_Code_Auto__c, Name, Id from Account where Id = :depart2.Id];
- Product2 prd = new Product2(Name = 'NFM110Prd1', ProductCode = 'NFM110Prd1', ProductCode_Ext__c = 'NFM110Prd1', Manual_Entry__c = false);
+ depart1 = new Account(
+ RecordTypeId = rectDpt1ID,
+ Name = '*',
+ ParentId = section1.Id,
+ Department_Class__c = section1.Id,
+ Hospital__c = company.Id,
+ Department_Name__c = 'NFM110TestDepart1'
+ );
+ depart2 = new Account(
+ RecordTypeId = rectDpt2ID,
+ Name = '*',
+ ParentId = section2.Id,
+ Department_Class__c = section2.Id,
+ Hospital__c = company.Id,
+ Department_Name__c = 'NFM110TestDepart2'
+ );
+ Account ocm = new Account(
+ RecordTypeId = rectDpt2ID,
+ Name = '*',
+ ParentId = section2.Id,
+ Department_Class__c = section2.Id,
+ Hospital__c = company.Id,
+ AgentCode_Ext__c = '9999900',
+ Department_Name__c = 'NFM110TestDepart3'
+ );
+ Account olympus_return = new Account(
+ RecordTypeId = rectDpt2ID,
+ Name = '*',
+ ParentId = olympus2.Id,
+ Department_Class__c = olympus2.Id,
+ Hospital__c = olympus.Id,
+ AgentCode_Ext__c = '9999901',
+ Department_Name__c = 'olympus_return'
+ );
+ insert new List<Account>{ depart1, depart2, ocm, olympus_return };
+ depart1 = [SELECT Management_Code__c, Management_Code_Auto__c, Name, Id FROM Account WHERE Id = :depart1.Id];
+ depart2 = [SELECT Management_Code__c, Management_Code_Auto__c, Name, Id FROM Account WHERE Id = :depart2.Id];
+ Product2 prd = new Product2(
+ Name = 'NFM110Prd1',
+ ProductCode = 'NFM110Prd1',
+ ProductCode_Ext__c = 'NFM110Prd1',
+ Manual_Entry__c = false
+ );
insert prd;
- Product2__c pro1 = new Product2__c(Name='NFM110Prd1',OT_CODE_Text__c='NFM110Prd1',Product2__c=prd.id);
+ Product2__c pro1 = new Product2__c(Name = 'NFM110Prd1', OT_CODE_Text__c = 'NFM110Prd1', Product2__c = prd.id);
insert pro1;
NFM110Rest.GeneralData generalData1 = new NFM110Rest.GeneralData();
@@ -50,18 +102,17 @@
ProductsDelivery.Monitoring = new NFMUtil.Monitoring();
ProductsDelivery.Monitoring.MessageGroupNumber = nowStr + '01';
- ProductsDelivery.GeneralData = new NFM110Rest.GeneralData[] { generalData1 };
+ ProductsDelivery.GeneralData = new List<NFM110Rest.GeneralData>{ generalData1 };
generalData1.DeliveryNote = 'DeliveryNote';
NFM110Rest.DnInformation dnInfo1 = new NFM110Rest.DnInformation();
- generalData1.DnInformation = new NFM110Rest.DnInformation[] { dnInfo1 };
- generalData1.EndUserNo = company.Management_Code_Auto__c;
- generalData1.DepartmentNo = depart1.Management_Code_Auto__c;
+ generalData1.DnInformation = new List<NFM110Rest.DnInformation>{ dnInfo1 };
+ generalData1.EndUserNo = company.Management_Code_Auto__c;
+ generalData1.DepartmentNo = depart1.Management_Code_Auto__c;
generalData1.InquiryNo = 'test0001' + ',';
- dnInfo1.SorLMark = 'S';
- dnInfo1.OTCode = prd.ProductCode_Ext__c;
+ dnInfo1.SorLMark = 'S';
+ dnInfo1.OTCode = prd.ProductCode_Ext__c;
dnInfo1.SerialNoorLotNo = '2577010001675';
generalData1.DeliveryNote = '11111';
-
NFM110Rest.GeneralData generalData2 = new NFM110Rest.GeneralData();
NFM110Rest.ProductsDelivery ProductsDelivery1 = new NFM110Rest.ProductsDelivery();
@@ -71,38 +122,35 @@
ProductsDelivery1.Monitoring = new NFMUtil.Monitoring();
ProductsDelivery1.Monitoring.MessageGroupNumber = nowStr1 + '01';
- ProductsDelivery1.GeneralData = new NFM110Rest.GeneralData[] { generalData1 };
+ ProductsDelivery1.GeneralData = new List<NFM110Rest.GeneralData>{ generalData1 };
generalData2.DeliveryNote = '';
NFM110Rest.DnInformation dnInfo2 = new NFM110Rest.DnInformation();
- generalData2.DnInformation = new NFM110Rest.DnInformation[] { dnInfo2 };
- generalData2.EndUserNo = company.Management_Code_Auto__c;
- generalData2.DepartmentNo = depart1.Management_Code_Auto__c;
+ generalData2.DnInformation = new List<NFM110Rest.DnInformation>{ dnInfo2 };
+ generalData2.EndUserNo = company.Management_Code_Auto__c;
+ generalData2.DepartmentNo = depart1.Management_Code_Auto__c;
generalData2.InquiryNo = 'test0001' + ',';
- dnInfo2.SorLMark = 'S';
- dnInfo2.OTCode = prd.ProductCode_Ext__c;
+ dnInfo2.SorLMark = 'S';
+ dnInfo2.OTCode = prd.ProductCode_Ext__c;
dnInfo2.SerialNoorLotNo = '2577010001675';
generalData2.DeliveryNote = '';
-
BatchIF_Log__c rowData = NFMUtil.saveRowData(ProductsDelivery1.Monitoring, 'NFM110', ProductsDelivery1.GeneralData);
-
-
}
@isTest
- private static void test_void() {
- list<BatchIF_Log__c> rowDataList = [select id from BatchIF_Log__c where RowDataFlg__c = true ];
+ private static void test_void() {
+ list<BatchIF_Log__c> rowDataList = [SELECT id FROM BatchIF_Log__c WHERE RowDataFlg__c = TRUE];
rowDataList[0].IsUpsertDN__c = true;
update rowDataList;
- System.Test.startTest();
- Database.executeBatch(new DNUpsertBatch(rowDataList[0].Id),1);
+ System.Test.startTest();
+ Database.executeBatch(new DNUpsertBatch(rowDataList[0].Id), 1);
System.Test.stopTest();
}
@isTest
- private static void test_checkSerialNoorLotNo() {
+ private static void test_checkSerialNoorLotNo() {
string a = 'strsA0trstr';
string b = 'strA50trstr';
string c = 'str250trstr';
-
+
DNUpsertBatch.checkSerialNoorLotNo(a);
DNUpsertBatch.checkSerialNoorLotNo(b);
DNUpsertBatch.checkSerialNoorLotNo(c);
@@ -111,56 +159,42 @@
//璺戝垱寤虹數瀛愮鏀跺崟鐨勬柟娉�
@isTest
private static void test_upsertESign() {
-
-
// 妫�绱㈠嚭绛炬敹鍗曪紝骞剁敓鎴愮鏀跺崟map key 涓篋N鍙�
- map <string, eSignForm__c> eSFMap = new map <string, eSignForm__c>();
-
-
+ map<string, eSignForm__c> eSFMap = new Map<string, eSignForm__c>();
//鏂板缓鐢靛瓙绛炬敹鍗�
eSignForm__c eSignForm = new eSignForm__c();
eSignForm.Name = '::娴嬭瘯鐢靛瓙绛炬敹鍗�';
eSignForm.DNName__c = '112233';
-
eSFMap.put(eSignForm.DNName__c, eSignForm);
-
- Statu_Achievements_DN__c sad = new Statu_Achievements_DN__c();
+ Statu_Achievements_DN__c sad = new Statu_Achievements_DN__c();
sad.Name = '112233';
sad.DeliveryDate_Raw__c = '1111';
sad.Sales_assistant_name_text__c = UserInfo.getUserId();
sad.RC_Manager__c = UserInfo.getUserId();
- sad.EsignTestAccount__c =true;
+ sad.EsignTestAccount__c = true;
sad.ReturnMark__c = false;
-
-
- list<Statu_Achievements_DN__c> DNList = new list<Statu_Achievements_DN__c>();
+ list<Statu_Achievements_DN__c> DNList = new List<Statu_Achievements_DN__c>();
DNList.add(sad);
-
DNUpsertBatch.SetupeSignForm(eSFMap, DNList);
-
-
}
//璺戝垱寤虹鏀跺崟鏄庣粏鐨勬柟娉�
@isTest
private static void test_upsertESignLineItems() {
-
-
- list<Statu_Achievements_DN_details__c> insertSADNdetailList = new list<Statu_Achievements_DN_details__c>();
+ list<Statu_Achievements_DN_details__c> insertSADNdetailList = new List<Statu_Achievements_DN_details__c>();
Statu_Achievements_DN_details__c saddc = new Statu_Achievements_DN_details__c();
saddc.DNName__c = '112233';
saddc.CaseNumber__c = '112233';
- saddc.OTCode_Raw__c= '112233';
+ saddc.OTCode_Raw__c = '112233';
insertSADNdetailList.add(saddc);
-
- map <string, eSignFormLineItem__c> eSFLMap = new map <string, eSignFormLineItem__c>();
-
+ map<string, eSignFormLineItem__c> eSFLMap = new Map<string, eSignFormLineItem__c>();
+
//鏂板缓鐢靛瓙绛炬敹鍗曟槑缁�
eSignFormLineItem__c eSignFormLineItem = new eSignFormLineItem__c();
eSignFormLineItem.Name = '::鐢靛瓙绛炬敹鍗曟槑缁�';
@@ -168,29 +202,24 @@
eSignFormLineItem.DNProductNo__c = '112233-112233-112233';
eSignFormLineItem.Count__c = 0;
- eSFLMap.put(eSignFormLineItem.DNProductNo__c,eSignFormLineItem);
+ eSFLMap.put(eSignFormLineItem.DNProductNo__c, eSignFormLineItem);
// 妫�绱㈠嚭绛炬敹鍗曪紝骞剁敓鎴愮鏀跺崟map key 涓篋N鍙�
- map <string, eSignForm__c> eSFMap = new map <string, eSignForm__c>();
+ map<string, eSignForm__c> eSFMap = new Map<string, eSignForm__c>();
//鏂板缓鐢靛瓙绛炬敹鍗�
eSignForm__c eSignForm = new eSignForm__c();
eSignForm.Name = '::娴嬭瘯鐢靛瓙绛炬敹鍗�';
eSignForm.DNName__c = '112233';
-
eSFMap.put(eSignForm.DNName__c, eSignForm);
Map<String, Product2> prdsMap = new Map<String, Product2>();
- Product2 prd = new Product2();
+ Product2 prd = new Product2();
prd.ProductCode_Ext__c = '112233';
- prdsMap.put(prd.ProductCode_Ext__c,prd);
+ prdsMap.put(prd.ProductCode_Ext__c, prd);
-
- DNUpsertBatch.SetupeSignFormLineItems(insertSADNdetailList,eSFLMap,eSFMap, prdsMap);
-
-
+ DNUpsertBatch.SetupeSignFormLineItems(insertSADNdetailList, eSFLMap, eSFMap, prdsMap);
}
-
-}
\ No newline at end of file
+}
diff --git a/force-app/main/default/classes/InventoryController.cls b/force-app/main/default/classes/InventoryController.cls
index bab5998..d5d7694 100644
--- a/force-app/main/default/classes/InventoryController.cls
+++ b/force-app/main/default/classes/InventoryController.cls
@@ -114,10 +114,10 @@
this.sortOrder = new String[]{' ',' ','鈫�'};
String userId = UserInfo.getUserId();
- // String userId = '00510000006xHnrAAE';
+ //String userId = '00510000006k82X';
//String userId = '00510000005QO75';
user Useracc = [select Accountid, Work_Location__c,UserPro_Type__c from user where id =:userId];
- accountid = Useracc.Accountid;
+ accountid = Useracc.accountid;
userWorkLocation = Useracc.Work_Location__c;
agencyProType = Useracc.UserPro_Type__c;
if(String.isBlank(Useracc.UserPro_Type__c)){
@@ -131,19 +131,17 @@
List<ConsumableorderdetailsInfo> boxRecords = new List<ConsumableorderdetailsInfo>();
Map<String,ConsumableorderdetailsInfo> newMidBoxMap = new Map<String,ConsumableorderdetailsInfo>();
Map<String,ConsumableorderdetailsInfo> newMidPieceMap = new Map<String,ConsumableorderdetailsInfo>();
- //DB202302357027 娑堣�楀搧杩芥函绯荤粺鏃犳硶姝e父浣跨敤鈥斺�旂洏鐐归〉闈㈡搷浣滃嵆鎶ラ敊 fy start
//寮�濮嬪埗浣滆〃澶存暟鎹�
- // List<Product2__c> productCount_Unfull_bak = [select Id, Name,Name__c,
- // SFDA_Status__c,Packing_list_manual__c,
- // Asset_Model_No__c
- // from Product2__c
- // //where Estimation_Entry_Possibility__c = '鈼�'
- // where Product_Type__c like : sqlagencyProType
- // ];
- // for(integer i = 0;i < productCount_Unfull_bak.size() ; i++){
- // midMap.put(productCount_Unfull_bak[i].Id, productCount_Unfull_bak[i]);
- // }
- //DB202302357027 娑堣�楀搧杩芥函绯荤粺鏃犳硶姝e父浣跨敤鈥斺�旂洏鐐归〉闈㈡搷浣滃嵆鎶ラ敊 fy end
+ List<Product2__c> productCount_Unfull_bak = [select Id, Name,Name__c,
+ SFDA_Status__c,Packing_list_manual__c,
+ Asset_Model_No__c
+ from Product2__c
+ //where Estimation_Entry_Possibility__c = '鈼�'
+ where Product_Type__c like : sqlagencyProType
+ ];
+ for(integer i = 0;i < productCount_Unfull_bak.size() ; i++){
+ midMap.put(productCount_Unfull_bak[i].Id, productCount_Unfull_bak[i]);
+ }
//鏌ヨ搴撳瓨 杩藉姞杩斿搧搴撳瓨
List<Consumable_order_details2__c> ProductCount_Res = [select Id, Name,Consumable_Product__c,
Bar_Code__c,Consumable_Product__r.Name__c,
@@ -159,28 +157,7 @@
AND Product_Type__c like : sqlagencyProType
AND Arrive_Owner_Work_Location__c =: userWorkLocation
AND Dealer_Info_text__c = :accountName];
- //DB202302357027 娑堣�楀搧杩芥函绯荤粺鏃犳硶姝e父浣跨敤鈥斺�旂洏鐐归〉闈㈡搷浣滃嵆鎶ラ敊 fy start
- //寮�濮嬪埗浣滆〃澶存暟鎹�
- Set<Id> Product2cIdSet = new Set<Id>();
- for(Consumable_order_details2__c con_or_d2item: ProductCount_Res){
- Product2cIdSet.add(con_or_d2item.Consumable_Product__c);
- }
- List<Product2__c> productCount_Unfull_bak = [select Id, Name,Name__c,
- SFDA_Status__c,Packing_list_manual__c,
- Asset_Model_No__c
- from Product2__c
- //where Estimation_Entry_Possibility__c = '鈼�'
- where Id in:Product2cIdSet
- and Product_Type__c like : sqlagencyProType
- ];
- for(integer i = 0;i < productCount_Unfull_bak.size() ; i++){
- midMap.put(productCount_Unfull_bak[i].Id, productCount_Unfull_bak[i]);
- }
- system.debug('productCount_Unfull_bak'+productCount_Unfull_bak.size());
- // String erro='productCount_Unfull_bak:'+productCount_Unfull_bak.size();
- // ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR, erro));
- //DB202302357027 娑堣�楀搧杩芥函绯荤粺鏃犳硶姝e父浣跨敤鈥斺�旂洏鐐归〉闈㈡搷浣滃嵆鎶ラ敊 fy end
- // ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'ProductCount_Res ' + ProductCount_Res.size()));
+ //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'ProductCount_Res ' + ProductCount_Res.size()));
for(Integer i = 0 ; i< ProductCount_Res.size();i++){
//鐒跺悗寰幆CountDel鍋欱ox鍜宲iece2涓猰ap
if(MidMap.containsKey(ProductCount_Res[i].Consumable_Product__c) && ProductCount_Res[i].Box_Piece__c == '鐩�'){
@@ -1028,7 +1005,9 @@
}
//CSV鍑哄姏
public PageReference doClick() {
+ system.debug('Click');
Pagereference pr = page.InventoryCSV;
+ system.debug('data:'+JSON.serialize(consumableorderdetailsRecordserrordummy));
return pr;
}
diff --git a/force-app/main/default/classes/InventoryViewController.cls b/force-app/main/default/classes/InventoryViewController.cls
index 40effd0..9c56e24 100644
--- a/force-app/main/default/classes/InventoryViewController.cls
+++ b/force-app/main/default/classes/InventoryViewController.cls
@@ -1,40 +1,48 @@
public without sharing class InventoryViewController {
/*****************鐢婚潰琛ㄧずBean******************/
- public List<ConsumableorderdetailsInfo> consumableorderdetailsRecords =new List<ConsumableorderdetailsInfo>();
+ public List<ConsumableorderdetailsInfo> consumableorderdetailsRecords = new List<ConsumableorderdetailsInfo>();
public List<List<ConsumableorderdetailsInfo>> consumableorderdetailsRecordsview = new List<List<ConsumableorderdetailsInfo>>();
//page
- Public Integer pagesize{get; set;}
- Public Integer totalcount{get; set;}
- Public Integer pagecount{get; set;}
- Public Integer currentpage{get; set;}
- public Boolean hasPrevious{get; set;}
- public Boolean hasNext{get; set;}
+ public Integer pagesize { get; set; }
+ public Integer totalcount { get; set; }
+ public Integer pagecount { get; set; }
+ public Integer currentpage { get; set; }
+ public Boolean hasPrevious { get; set; }
+ public Boolean hasNext { get; set; }
public List<ConsumableorderdetailsInfo> pageRecords { get; set; }
- public String soql {get;set;}
+ public String soql { get; set; }
public String sortKey { get; set; }
public String preSortKey { get; private set; }
public Boolean sortOrderAsc { get; private set; }
public String[] sortOrder { get; private set; }
- private String[] columus = new String[]{ 'Product2__c.Name__c','Asset_Model_No__c','','Category3__c','Category4__c','Category5__c',''};
-
- String[] proLimitAndDate =new String[]{};
- private Map<String,Date> productkucun = new Map<String,Date>();
- public List<SelectOption> categoryOptionList{get;set;}
- public List<SelectOption> category4OptionList{get;set;}
- public List<SelectOption> category5OptionList{get;set;}
+ private String[] columus = new List<String>{
+ 'Product2__c.Name__c',
+ 'Asset_Model_No__c',
+ '',
+ 'Category3__c',
+ 'Category4__c',
+ 'Category5__c',
+ ''
+ };
+
+ String[] proLimitAndDate = new List<String>{};
+ private Map<String, Date> productkucun = new Map<String, Date>();
+ public List<SelectOption> categoryOptionList { get; set; }
+ public List<SelectOption> category4OptionList { get; set; }
+ public List<SelectOption> category5OptionList { get; set; }
public String category5 { get; set; }
public String category4 { get; set; }
public String category3 { get; set; }
- public String category_Goods {get ; set;}
+ public String category_Goods { get; set; }
public String category1 { get; set; }
- public Boolean editAble {get;set;}
+ public Boolean editAble { get; set; }
// 缁忛攢鍟嗗湪搴撲骇鍝両D
List<String> orderDetZaikuList = new List<String>();
// 浜у搧 ID
- public String ESetId { get; set; }
- public String idCheck {get;set;}
+ public String ESetId { get; set; }
+ public String idCheck { get; set; }
/*****************銈姐兗銉堟檪鍐嶆绱㈡潯浠讹紙鐢婚潰銇嬨倝銇叆鍔涙潯浠躲倰鐒¤銇欍倠銇熴倎锛�******************/
private String accountid = null;
public String accountName { get; set; }
@@ -43,11 +51,11 @@
// 鐧诲綍鑰呭伐浣滃湴
private String userWorkLocation;
//缁忛攢鍟嗙敤鎴蜂骇鍝佸垎绫伙紙ET銆丒NG锛�
- public String agencyProType {get;set;}
+ public String agencyProType { get; set; }
String sqlagencyProType;
//add by rentx 2021-3-10
- public Boolean hasHos {get;set;}
+ public Boolean hasHos { get; set; }
//add by rentx 2021-3-10
public InventoryViewController() {
@@ -64,162 +72,176 @@
}
// 鐢婚潰鍒濆鍖�
public void init() {
-
this.sortKey = '2';
this.preSortKey = '2';
this.sortOrderAsc = false;
this.sortOrder = new String[8];
- this.sortOrder = new String[]{' ','',' ',' ','','','','鈫�'};
+ this.sortOrder = new List<String>{ ' ', '', ' ', ' ', '', '', '', '鈫�' };
-
//鍙栫敤鎴稩D
String userId = UserInfo.getUserId();
- User useracc = [select Accountid, Work_Location__c,UserPro_Type__c FROM user WHERE id =:userId];
+ User useracc = [SELECT Accountid, Work_Location__c, UserPro_Type__c FROM user WHERE id = :userId];
accountid = useracc.accountid;
userWorkLocation = useracc.Work_Location__c;
agencyProType = Useracc.UserPro_Type__c;
- if(String.isBlank(Useracc.UserPro_Type__c)){
+ if (String.isBlank(Useracc.UserPro_Type__c)) {
agencyProType = 'ET';
}
- Account accountInfo = [SELECT Name,Dealer_discount__c,Product_Limit_Date__c FROM account WHERE id =:accountid];
+ Account accountInfo = [SELECT Name, Dealer_discount__c, Product_Limit_Date__c FROM account WHERE id = :accountid];
accountName = accountInfo.Name;
//缁忛攢鍟嗘煡鐪嬩骇鍝�
String product_Limit = accountInfo.Product_Limit_Date__c;
- if(product_Limit != null && product_Limit !=''){
+ if (product_Limit != null && product_Limit != '') {
proLimitAndDate = product_Limit.split(',');
}
List<ConsumableorderdetailsInfo> boxRecords = new List<ConsumableorderdetailsInfo>();
- Map<String,Product2__c> MidMap = new Map<String,Product2__c>();
- Map<String,ConsumableorderdetailsInfo> newMidBoxMap = new Map<String,ConsumableorderdetailsInfo>();
- Map<String,ConsumableorderdetailsInfo> newMidPieceMap = new Map<String,ConsumableorderdetailsInfo>();
+ Map<String, Product2__c> MidMap = new Map<String, Product2__c>();
+ Map<String, ConsumableorderdetailsInfo> newMidBoxMap = new Map<String, ConsumableorderdetailsInfo>();
+ Map<String, ConsumableorderdetailsInfo> newMidPieceMap = new Map<String, ConsumableorderdetailsInfo>();
//搴撳瓨鏄庣粏鍙栧緱
sqlagencyProType = '%' + agencyProType + '%';
orderDetZaikuList = new List<String>();
- List<AggregateResult> orderDetZaiku = [SELECT count(Id),
- Consumable_Product__c
- FROM Consumable_order_details2__c
- WHERE Dealer_Arrive__c = true
- AND Dealer_Shipment__c = false
- AND Dealer_Saled__c = false
- AND Lose_Flag__c = false
- AND Dealer_Returned__c = false
- AND Bar_Code__c !=null
- AND Product_Type__c like : sqlagencyProType
- AND Dealer_Info_text__c = :accountName
- AND Cancellation_Flag__c = false
- AND Arrive_Owner_Work_Location__c =: userWorkLocation
- group by Consumable_Product__c];
- for(AggregateResult zaikuId : orderDetZaiku){
+ List<AggregateResult> orderDetZaiku = [
+ SELECT count(Id), Consumable_Product__c
+ FROM Consumable_order_details2__c
+ WHERE
+ Dealer_Arrive__c = TRUE
+ AND Dealer_Shipment__c = FALSE
+ AND Dealer_Saled__c = FALSE
+ AND Lose_Flag__c = FALSE
+ AND Dealer_Returned__c = FALSE
+ AND Bar_Code__c != NULL
+ AND Product_Type__c LIKE :sqlagencyProType
+ AND Dealer_Info_text__c = :accountName
+ AND Cancellation_Flag__c = FALSE
+ AND Arrive_Owner_Work_Location__c = :userWorkLocation
+ GROUP BY Consumable_Product__c
+ ];
+ for (AggregateResult zaikuId : orderDetZaiku) {
orderDetZaikuList.add(String.valueOf(zaikuId.get('Consumable_Product__c')));
}
- List<Consumable_order_details2__c> CountDel = [SELECT Id,
- Bar_Code__c,
- Name,
- Inventory_date__c,
- Consumable_Product__c,
- Recordtypeid,
- Guarantee_period_for_products__c,
- Isoverdue__c,
- Box_Piece__c,
- hospitalSpecialOffer__c
- FROM Consumable_order_details2__c
- WHERE Dealer_Arrive__c = true
- AND Dealer_Shipment__c = false
- AND Dealer_Saled__c = false
- AND Dealer_Returned__c = false
- AND Lose_Flag__c = false
- AND Cancellation_Flag__c = false
- AND Bar_Code__c !=null
- AND Product_Type__c like : sqlagencyProType
- AND Dealer_Info_text__c = :accountName
- AND Arrive_Owner_Work_Location__c =: userWorkLocation
- ];
- List<Product2__c> product2Selected = [select Id, Name,Name__c,Intra_Trade_List_RMB__c,
- Asset_Model_No__c,
- Category3__c,Category4__c,Category5__c,
- SFDA_Status__c,
- Product2__r.SFDA_Approbation_No__c,
- Product2__r.SFDA_Expiration_Date__c,
- Product2__r.Packing_list_manual__c
- FROM Product2__c
- WHERE Id in : orderDetZaikuList ];
+ List<Consumable_order_details2__c> CountDel = [
+ SELECT
+ Id,
+ Bar_Code__c,
+ Name,
+ Inventory_date__c,
+ Consumable_Product__c,
+ Recordtypeid,
+ Guarantee_period_for_products__c,
+ Isoverdue__c,
+ Box_Piece__c,
+ hospitalSpecialOffer__c
+ FROM Consumable_order_details2__c
+ WHERE
+ Dealer_Arrive__c = TRUE
+ AND Dealer_Shipment__c = FALSE
+ AND Dealer_Saled__c = FALSE
+ AND Dealer_Returned__c = FALSE
+ AND Lose_Flag__c = FALSE
+ AND Cancellation_Flag__c = FALSE
+ AND Bar_Code__c != NULL
+ AND Product_Type__c LIKE :sqlagencyProType
+ AND Dealer_Info_text__c = :accountName
+ AND Arrive_Owner_Work_Location__c = :userWorkLocation
+ ];
+ List<Product2__c> product2Selected = [
+ SELECT
+ Id,
+ Name,
+ Name__c,
+ Intra_Trade_List_RMB__c,
+ Asset_Model_No__c,
+ Category3__c,
+ Category4__c,
+ Category5__c,
+ SFDA_Status__c,
+ Product2__r.SFDA_Approbation_No__c,
+ Product2__r.SFDA_Expiration_Date__c,
+ Product2__r.Packing_list_manual__c
+ FROM Product2__c
+ WHERE Id IN :orderDetZaikuList
+ ];
for (Integer i = 0; i < product2Selected.size(); i++) {
MidMap.put(product2Selected[i].Id, product2Selected[i]);
}
/////////////////////====================================update by rentx
- Map<String,ConsumableorderdetailsInfo> newHosMidBoxMap = new Map<String,ConsumableorderdetailsInfo>();
- Map<String,ConsumableorderdetailsInfo> newHosMidPieceMap = new Map<String,ConsumableorderdetailsInfo>();
+ Map<String, ConsumableorderdetailsInfo> newHosMidBoxMap = new Map<String, ConsumableorderdetailsInfo>();
+ Map<String, ConsumableorderdetailsInfo> newHosMidPieceMap = new Map<String, ConsumableorderdetailsInfo>();
//update by rentx 2021-01-27 start
- for(Integer i = 0 ; i< CountDel.size();i++){
+ for (Integer i = 0; i < CountDel.size(); i++) {
//鐒跺悗寰幆CountDel鍋欱ox鍜宲iece2涓猰ap
- if(MidMap.containsKey(CountDel[i].Consumable_Product__c) && CountDel[i].Box_Piece__c == '鐩�'){
+ if (MidMap.containsKey(CountDel[i].Consumable_Product__c) && CountDel[i].Box_Piece__c == '鐩�') {
String tex = 'A';
if (CountDel[i].hospitalSpecialOffer__c) {
tex = 'B';
}
- if(newMidBoxMap.containsKey(CountDel[i].Consumable_Product__c+CountDel[i].Box_Piece__c + tex)){
- ConsumableorderdetailsInfo Jstage = newMidBoxMap.get(CountDel[i].Consumable_Product__c+CountDel[i].Box_Piece__c + tex).clone();
- Jstage.allnumber = Jstage.allnumber+1 ;
- if(CountDel[i].Isoverdue__c == 1){
+ if (newMidBoxMap.containsKey(CountDel[i].Consumable_Product__c + CountDel[i].Box_Piece__c + tex)) {
+ ConsumableorderdetailsInfo Jstage = newMidBoxMap.get(CountDel[i].Consumable_Product__c + CountDel[i].Box_Piece__c + tex)
+ .clone();
+ Jstage.allnumber = Jstage.allnumber + 1;
+ if (CountDel[i].Isoverdue__c == 1) {
Jstage.limitCount = Jstage.limitCount + 1;
}
Jstage.BoxPiece = CountDel[i].Box_Piece__c;
- newMidBoxMap.put(CountDel[i].Consumable_Product__c+CountDel[i].Box_Piece__c + tex, Jstage);
- }else{
+ newMidBoxMap.put(CountDel[i].Consumable_Product__c + CountDel[i].Box_Piece__c + tex, Jstage);
+ } else {
ConsumableorderdetailsInfo Jstage = new ConsumableorderdetailsInfo(MidMap.get(CountDel[i].Consumable_Product__c));
- Jstage.allnumber = Jstage.allnumber+1 ;
- if(CountDel[i].Isoverdue__c == 1){
+ Jstage.allnumber = Jstage.allnumber + 1;
+ if (CountDel[i].Isoverdue__c == 1) {
Jstage.limitCount = Jstage.limitCount + 1;
}
Jstage.BoxPiece = CountDel[i].Box_Piece__c;
if (CountDel[i].hospitalSpecialOffer__c) {
Jstage.hospitalSpecialOffer = true;
- }else {
+ } else {
Jstage.hospitalSpecialOffer = false;
}
- newMidBoxMap.put(CountDel[i].Consumable_Product__c+CountDel[i].Box_Piece__c + tex, Jstage);
+ newMidBoxMap.put(CountDel[i].Consumable_Product__c + CountDel[i].Box_Piece__c + tex, Jstage);
}
- }else if(MidMap.containsKey(CountDel[i].Consumable_Product__c) && CountDel[i].Box_Piece__c == '涓�'){
+ } else if (MidMap.containsKey(CountDel[i].Consumable_Product__c) && CountDel[i].Box_Piece__c == '涓�') {
String tex = 'A';
if (CountDel[i].hospitalSpecialOffer__c) {
tex = 'B';
}
- if(newMidPieceMap.containsKey(CountDel[i].Consumable_Product__c+CountDel[i].Box_Piece__c + tex)){
- ConsumableorderdetailsInfo Jstage = newMidPieceMap.get(CountDel[i].Consumable_Product__c+CountDel[i].Box_Piece__c + tex).clone();
- Jstage.allnumber = Jstage.allnumber+1 ;
- if(CountDel[i].Isoverdue__c == 1){
+ if (newMidPieceMap.containsKey(CountDel[i].Consumable_Product__c + CountDel[i].Box_Piece__c + tex)) {
+ ConsumableorderdetailsInfo Jstage = newMidPieceMap.get(
+ CountDel[i].Consumable_Product__c + CountDel[i].Box_Piece__c + tex
+ )
+ .clone();
+ Jstage.allnumber = Jstage.allnumber + 1;
+ if (CountDel[i].Isoverdue__c == 1) {
Jstage.limitCount = Jstage.limitCount + 1;
}
Jstage.BoxPiece = CountDel[i].Box_Piece__c;
if (CountDel[i].hospitalSpecialOffer__c) {
Jstage.hospitalSpecialOffer = true;
- }else {
+ } else {
Jstage.hospitalSpecialOffer = false;
}
- newMidPieceMap.put(CountDel[i].Consumable_Product__c+CountDel[i].Box_Piece__c + tex, Jstage);
- }else{
+ newMidPieceMap.put(CountDel[i].Consumable_Product__c + CountDel[i].Box_Piece__c + tex, Jstage);
+ } else {
ConsumableorderdetailsInfo Jstage = new ConsumableorderdetailsInfo(MidMap.get(CountDel[i].Consumable_Product__c));
- Jstage.allnumber = Jstage.allnumber+1 ;
- if(CountDel[i].Isoverdue__c == 1){
+ Jstage.allnumber = Jstage.allnumber + 1;
+ if (CountDel[i].Isoverdue__c == 1) {
Jstage.limitCount = Jstage.limitCount + 1;
}
Jstage.BoxPiece = CountDel[i].Box_Piece__c;
if (CountDel[i].hospitalSpecialOffer__c) {
Jstage.hospitalSpecialOffer = true;
- }else {
+ } else {
Jstage.hospitalSpecialOffer = false;
-
}
- newMidPieceMap.put(CountDel[i].Consumable_Product__c+CountDel[i].Box_Piece__c + tex, Jstage);
+ newMidPieceMap.put(CountDel[i].Consumable_Product__c + CountDel[i].Box_Piece__c + tex, Jstage);
}
}
}
consumableorderdetailsRecords = new List<ConsumableorderdetailsInfo>();
//鎶夿oxmap閲岀殑鍊间粠鏂拌祴缁檅oxRecords
- for(ConsumableorderdetailsInfo bss : newMidBoxMap.values()){
- if(bss.allnumber>0){
+ for (ConsumableorderdetailsInfo bss : newMidBoxMap.values()) {
+ if (bss.allnumber > 0) {
bss.sortBy = false;
bss.packing_list = Integer.valueof(bss.Prod.Product2__r.Packing_list_manual__c);
bss.approbation_No = bss.Prod.Product2__r.SFDA_Approbation_No__c;
@@ -230,43 +252,42 @@
}
boxRecords.sort();
- for(ConsumableorderdetailsInfo bss : newMidPieceMap.values()){
- if(bss.allnumber>0){
+ for (ConsumableorderdetailsInfo bss : newMidPieceMap.values()) {
+ if (bss.allnumber > 0) {
bss.packing_list = Integer.valueof(bss.Prod.Product2__r.Packing_list_manual__c);
bss.approbation_No = bss.Prod.Product2__r.SFDA_Approbation_No__c;
bss.expiration_Date = bss.Prod.Product2__r.SFDA_Expiration_Date__c;
bss.overlimitCount = bss.allnumber - bss.limitCount;
}
}
- for(ConsumableorderdetailsInfo bss : boxRecords){
+ for (ConsumableorderdetailsInfo bss : boxRecords) {
consumableorderdetailsRecords.add(bss);
//璇ヤ骇鍝佹槸鍖婚櫌鐗逛环浜у搧
- if (bss.hospitalSpecialOffer && newMidPieceMap.containsKey(bss.Prod.Id+'涓狟')) {
- if (newMidPieceMap.get(bss.Prod.Id+'涓狟').hospitalSpecialOffer) {
- consumableorderdetailsRecords.add(newMidPieceMap.get(bss.Prod.Id+'涓狟'));
- newMidPieceMap.remove(bss.Prod.Id+'涓狟');
+ if (bss.hospitalSpecialOffer && newMidPieceMap.containsKey(bss.Prod.Id + '涓狟')) {
+ if (newMidPieceMap.get(bss.Prod.Id + '涓狟').hospitalSpecialOffer) {
+ consumableorderdetailsRecords.add(newMidPieceMap.get(bss.Prod.Id + '涓狟'));
+ newMidPieceMap.remove(bss.Prod.Id + '涓狟');
}
}
- if (!bss.hospitalSpecialOffer && newMidPieceMap.containsKey(bss.Prod.Id+'涓狝')) {
+ if (!bss.hospitalSpecialOffer && newMidPieceMap.containsKey(bss.Prod.Id + '涓狝')) {
// if (newMidPieceMap.get(bss.Prod.Id+'涓狝')) {
- consumableorderdetailsRecords.add(newMidPieceMap.get(bss.Prod.Id+'涓狝'));
- newMidPieceMap.remove(bss.Prod.Id+'涓狝');
+ consumableorderdetailsRecords.add(newMidPieceMap.get(bss.Prod.Id + '涓狝'));
+ newMidPieceMap.remove(bss.Prod.Id + '涓狝');
// }
}
}
- for(ConsumableorderdetailsInfo bss : newMidPieceMap.values()){
- if (newMidPieceMap.containsKey(bss.Prod.Id+'涓狟')) {
+ for (ConsumableorderdetailsInfo bss : newMidPieceMap.values()) {
+ if (newMidPieceMap.containsKey(bss.Prod.Id + '涓狟')) {
consumableorderdetailsRecords.add(newMidPieceMap.get(bss.Prod.Id + '涓狟'));
}
}
- for(ConsumableorderdetailsInfo bss : newMidPieceMap.values()){
- if (newMidPieceMap.containsKey(bss.Prod.Id+'涓狝')) {
+ for (ConsumableorderdetailsInfo bss : newMidPieceMap.values()) {
+ if (newMidPieceMap.containsKey(bss.Prod.Id + '涓狝')) {
consumableorderdetailsRecords.add(newMidPieceMap.get(bss.Prod.Id + '涓狝'));
}
}
-
/////////////////////====================================update by rentx
/*for(Integer i = 0 ; i< CountDel.size();i++){
@@ -346,132 +367,176 @@
//update by rentx 2021-01-27 end
productLimtAndDate();
- datelimitSearch();
+ datelimitSearch();
//add by rentx 2021-3-10 start
Integer hosnum = 0;
//add by rentx 2021-3-10 end
- for(ConsumableorderdetailsInfo bss : consumableorderdetailsRecords){
- if(productkucun.get(bss.Prod.Id) != null){
+ for (ConsumableorderdetailsInfo bss : consumableorderdetailsRecords) {
+ if (productkucun.get(bss.Prod.Id) != null) {
bss.guaranteeperiod = productkucun.get(bss.Prod.Id);
}
//add by rentx 2021-3-10 start
if (bss.hospitalSpecialOffer) {
- hosnum = hosnum +1;
+ hosnum = hosnum + 1;
}
}
if (hosnum > 0) {
hasHos = true;
- }else{
+ } else {
hasHos = false;
}
//add by rentx 2021-3-10 end
//listCut();
- AggregateResult[] categoryList = [select Count(id), Category3_text__c c3c from Product2__c WHERE Estimation_Entry_Possibility__c = '鈼�' AND Product_Type__c like :agencyProType AND Category3_text__c != null group by Category3_text__c];
-
- categoryOptionList = new List<SelectOption>();
- categoryOptionList.add(new SelectOption('', '-鏃�-'));
- for(AggregateResult category3Search : categoryList) {
+ AggregateResult[] categoryList = [
+ SELECT Count(id), Category3_text__c c3c
+ FROM Product2__c
+ WHERE Estimation_Entry_Possibility__c = '鈼�' AND Product_Type__c LIKE :agencyProType AND Category3_text__c != NULL
+ GROUP BY Category3_text__c
+ ];
+
+ categoryOptionList = new List<SelectOption>();
+ categoryOptionList.add(new SelectOption('', '-鏃�-'));
+ for (AggregateResult category3Search : categoryList) {
String deliverycnt = String.valueOf(category3Search.get('c3c'));
- categoryOptionList.add(new SelectOption(deliverycnt,deliverycnt));
- }
+ categoryOptionList.add(new SelectOption(deliverycnt, deliverycnt));
+ }
-
- category4OptionList = new List<SelectOption>();
- category4OptionList.add(new SelectOption('', '-鏃�-'));
- category5OptionList = new List<SelectOption>();
- category5OptionList.add(new SelectOption('', '-鏃�-'));
+ category4OptionList = new List<SelectOption>();
+ category4OptionList.add(new SelectOption('', '-鏃�-'));
+ category5OptionList = new List<SelectOption>();
+ category5OptionList.add(new SelectOption('', '-鏃�-'));
//鎬讳欢鏁�
totalcount = consumableorderdetailsRecords.size();
//椤垫暟
- pagecount=(totalcount + pagesize - 1) / pagesize;
+ pagecount = (totalcount + pagesize - 1) / pagesize;
//鏄剧ず绗竴椤�
moveToFirst();
makeCurrentPageRecords();
-
}
- public void categoryAllload() {
- AggregateResult[] category4List = [select Count(id), Category4_text__c c4c from Product2__c WHERE Estimation_Entry_Possibility__c = '鈼�' AND Category3_text__c=:category3 AND Product_Type__c like :agencyProType AND Category4_text__c != null AND Category5_text__c != null group by Category4_text__c];
- category4OptionList = new List<SelectOption>();
- category4OptionList.add(new SelectOption('', '-鏃�-'));
- for(AggregateResult category4Search : category4List) {
+ public void categoryAllload() {
+ AggregateResult[] category4List = [
+ SELECT Count(id), Category4_text__c c4c
+ FROM Product2__c
+ WHERE
+ Estimation_Entry_Possibility__c = '鈼�'
+ AND Category3_text__c = :category3
+ AND Product_Type__c LIKE :agencyProType
+ AND Category4_text__c != NULL
+ AND Category5_text__c != NULL
+ GROUP BY Category4_text__c
+ ];
+ category4OptionList = new List<SelectOption>();
+ category4OptionList.add(new SelectOption('', '-鏃�-'));
+ for (AggregateResult category4Search : category4List) {
String deliverycnt4 = String.valueOf(category4Search.get('c4c'));
- category4OptionList.add(new SelectOption(deliverycnt4,deliverycnt4));
- }
+ category4OptionList.add(new SelectOption(deliverycnt4, deliverycnt4));
+ }
- AggregateResult[] category5List = [select Count(id), Category5_text__c c5c from Product2__c WHERE Estimation_Entry_Possibility__c = '鈼�' AND Category3_text__c=:category3 AND Product_Type__c like :agencyProType AND Category4_text__c != null AND Category5_text__c != null group by Category5_text__c];
-
- category5OptionList = new List<SelectOption>();
- category5OptionList.add(new SelectOption('', '-鏃�-'));
- for(AggregateResult category5Search : category5List) {
+ AggregateResult[] category5List = [
+ SELECT Count(id), Category5_text__c c5c
+ FROM Product2__c
+ WHERE
+ Estimation_Entry_Possibility__c = '鈼�'
+ AND Category3_text__c = :category3
+ AND Product_Type__c LIKE :agencyProType
+ AND Category4_text__c != NULL
+ AND Category5_text__c != NULL
+ GROUP BY Category5_text__c
+ ];
+
+ category5OptionList = new List<SelectOption>();
+ category5OptionList.add(new SelectOption('', '-鏃�-'));
+ for (AggregateResult category5Search : category5List) {
String deliverycnt5 = String.valueOf(category5Search.get('c5c'));
- category5OptionList.add(new SelectOption(deliverycnt5,deliverycnt5));
- }
-
+ category5OptionList.add(new SelectOption(deliverycnt5, deliverycnt5));
+ }
}
-
+
public void categoryload() {
- AggregateResult[] category4List = [select Count(id), Category4_text__c c4c from Product2__c WHERE Estimation_Entry_Possibility__c = '鈼�' AND Category3_text__c=:category3 AND Product_Type__c like :agencyProType AND Category4_text__c != null AND Category5_text__c != null group by Category4_text__c];
- category4OptionList = new List<SelectOption>();
- category4OptionList.add(new SelectOption('', '-鏃�-'));
- for(AggregateResult category4Search : category4List) {
+ AggregateResult[] category4List = [
+ SELECT Count(id), Category4_text__c c4c
+ FROM Product2__c
+ WHERE
+ Estimation_Entry_Possibility__c = '鈼�'
+ AND Category3_text__c = :category3
+ AND Product_Type__c LIKE :agencyProType
+ AND Category4_text__c != NULL
+ AND Category5_text__c != NULL
+ GROUP BY Category4_text__c
+ ];
+ category4OptionList = new List<SelectOption>();
+ category4OptionList.add(new SelectOption('', '-鏃�-'));
+ for (AggregateResult category4Search : category4List) {
String deliverycnt4 = String.valueOf(category4Search.get('c4c'));
- category4OptionList.add(new SelectOption(deliverycnt4,deliverycnt4));
- }
+ category4OptionList.add(new SelectOption(deliverycnt4, deliverycnt4));
+ }
- AggregateResult[] category5List = [select Count(id), Category5_text__c c5c from Product2__c WHERE Estimation_Entry_Possibility__c = '鈼�' AND Category3_text__c=:category3 AND Product_Type__c like :agencyProType AND Category4_text__c=:category4 AND Category5_text__c != null group by Category5_text__c];
-
- category5OptionList = new List<SelectOption>();
- category5OptionList.add(new SelectOption('', '-鏃�-'));
- for(AggregateResult category5Search : category5List) {
+ AggregateResult[] category5List = [
+ SELECT Count(id), Category5_text__c c5c
+ FROM Product2__c
+ WHERE
+ Estimation_Entry_Possibility__c = '鈼�'
+ AND Category3_text__c = :category3
+ AND Product_Type__c LIKE :agencyProType
+ AND Category4_text__c = :category4
+ AND Category5_text__c != NULL
+ GROUP BY Category5_text__c
+ ];
+
+ category5OptionList = new List<SelectOption>();
+ category5OptionList.add(new SelectOption('', '-鏃�-'));
+ for (AggregateResult category5Search : category5List) {
String deliverycnt5 = String.valueOf(category5Search.get('c5c'));
- category5OptionList.add(new SelectOption(deliverycnt5,deliverycnt5));
- }
-
+ category5OptionList.add(new SelectOption(deliverycnt5, deliverycnt5));
+ }
}
- // 妫�绱�
+ // 妫�绱�
public void searchConsumableorderdetails() {
this.sortKey = '2';
this.preSortKey = '2';
this.sortOrderAsc = false;
this.sortOrder = new String[8];
- this.sortOrder = new String[]{' ','',' ',' ','','','','鈫�'};
+ this.sortOrder = new List<String>{ ' ', '', ' ', ' ', '', '', '', '鈫�' };
List<ConsumableorderdetailsInfo> reSet = new List<ConsumableorderdetailsInfo>();
- List<Consumable_order_details2__c> CountDel = [SELECT Id,
- Bar_Code__c,
- Name,
- Inventory_date__c,
- Consumable_Product__c,
- Recordtypeid,
- Guarantee_period_for_products__c,
- Isoverdue__c,
- Box_Piece__c,
- hospitalSpecialOffer__c
- FROM Consumable_order_details2__c
- WHERE Dealer_Arrive__c = true
- AND Dealer_Shipment__c = false
- AND Dealer_Saled__c = false
- AND Dealer_Returned__c = false
- AND Lose_Flag__c = false
- AND Bar_Code__c !=null
- AND Product_Type__c like : sqlagencyProType
- AND Dealer_Info_text__c = :accountName
- AND Arrive_Owner_Work_Location__c =: userWorkLocation
- ];
+ List<Consumable_order_details2__c> CountDel = [
+ SELECT
+ Id,
+ Bar_Code__c,
+ Name,
+ Inventory_date__c,
+ Consumable_Product__c,
+ Recordtypeid,
+ Guarantee_period_for_products__c,
+ Isoverdue__c,
+ Box_Piece__c,
+ hospitalSpecialOffer__c
+ FROM Consumable_order_details2__c
+ WHERE
+ Dealer_Arrive__c = TRUE
+ AND Dealer_Shipment__c = FALSE
+ AND Dealer_Saled__c = FALSE
+ AND Dealer_Returned__c = FALSE
+ AND Lose_Flag__c = FALSE
+ AND Bar_Code__c != NULL
+ AND Product_Type__c LIKE :sqlagencyProType
+ AND Dealer_Info_text__c = :accountName
+ AND Arrive_Owner_Work_Location__c = :userWorkLocation
+ ];
List<ConsumableorderdetailsInfo> boxRecords = new List<ConsumableorderdetailsInfo>();
- Map<String,Product2__c> MidMap = new Map<String,Product2__c>();
- Map<String,ConsumableorderdetailsInfo> newMidBoxMap = new Map<String,ConsumableorderdetailsInfo>();
- Map<String,ConsumableorderdetailsInfo> newMidPieceMap = new Map<String,ConsumableorderdetailsInfo>();
-
-
+ Map<String, Product2__c> MidMap = new Map<String, Product2__c>();
+ Map<String, ConsumableorderdetailsInfo> newMidBoxMap = new Map<String, ConsumableorderdetailsInfo>();
+ Map<String, ConsumableorderdetailsInfo> newMidPieceMap = new Map<String, ConsumableorderdetailsInfo>();
+
// 鎵�鏈変骇鍝佸彇寰�
- String soql = this.makeSoql(category1,category_Goods,category3,category4,category5);
+ String soql = this.makeSoql(category1, category_Goods, category3, category4, category5);
+ System.debug('====>soql11' + soql);
//soql += ' ORDER BY ' + this.columus[Integer.valueOf(this.sortKey)] + ' ' + (this.sortOrderAsc == true ? 'asc nulls first' : 'desc nulls last');
List<Product2__c> queryList = Database.query(soql);
for (Integer i = 0; i < queryList.size(); i++) {
@@ -519,8 +584,8 @@
}
}
} 娉ㄩ噴by rentx */
- Map<String,ConsumableorderdetailsInfo> newHosMidBoxMap = new Map<String,ConsumableorderdetailsInfo>();
- Map<String,ConsumableorderdetailsInfo> newHosMidPieceMap = new Map<String,ConsumableorderdetailsInfo>();
+ Map<String, ConsumableorderdetailsInfo> newHosMidBoxMap = new Map<String, ConsumableorderdetailsInfo>();
+ Map<String, ConsumableorderdetailsInfo> newHosMidPieceMap = new Map<String, ConsumableorderdetailsInfo>();
/*for(Integer i = 0 ; i< CountDel.size();i++){
//濡傛灉鏄� 鍖婚櫌鐗逛环鍒涘缓鐨勬槑缁�2 鍒� update and add by rentx 2020-11-26 start
@@ -620,75 +685,78 @@
}
}*/
- for(Integer i = 0 ; i< CountDel.size();i++){
+ for (Integer i = 0; i < CountDel.size(); i++) {
//鐒跺悗寰幆CountDel鍋欱ox鍜宲iece2涓猰ap
- if(MidMap.containsKey(CountDel[i].Consumable_Product__c) && CountDel[i].Box_Piece__c == '鐩�'){
+ if (MidMap.containsKey(CountDel[i].Consumable_Product__c) && CountDel[i].Box_Piece__c == '鐩�') {
String tex = 'A';
if (CountDel[i].hospitalSpecialOffer__c) {
tex = 'B';
}
- if(newMidBoxMap.containsKey(CountDel[i].Consumable_Product__c+CountDel[i].Box_Piece__c + tex)){
- ConsumableorderdetailsInfo Jstage = newMidBoxMap.get(CountDel[i].Consumable_Product__c+CountDel[i].Box_Piece__c + tex).clone();
- Jstage.allnumber = Jstage.allnumber+1 ;
- if(CountDel[i].Isoverdue__c == 1){
+ if (newMidBoxMap.containsKey(CountDel[i].Consumable_Product__c + CountDel[i].Box_Piece__c + tex)) {
+ ConsumableorderdetailsInfo Jstage = newMidBoxMap.get(CountDel[i].Consumable_Product__c + CountDel[i].Box_Piece__c + tex)
+ .clone();
+ Jstage.allnumber = Jstage.allnumber + 1;
+ if (CountDel[i].Isoverdue__c == 1) {
Jstage.limitCount = Jstage.limitCount + 1;
}
Jstage.BoxPiece = CountDel[i].Box_Piece__c;
- newMidBoxMap.put(CountDel[i].Consumable_Product__c+CountDel[i].Box_Piece__c + tex, Jstage);
- }else{
+ newMidBoxMap.put(CountDel[i].Consumable_Product__c + CountDel[i].Box_Piece__c + tex, Jstage);
+ } else {
ConsumableorderdetailsInfo Jstage = new ConsumableorderdetailsInfo(MidMap.get(CountDel[i].Consumable_Product__c));
- Jstage.allnumber = Jstage.allnumber+1 ;
- if(CountDel[i].Isoverdue__c == 1){
+ Jstage.allnumber = Jstage.allnumber + 1;
+ if (CountDel[i].Isoverdue__c == 1) {
Jstage.limitCount = Jstage.limitCount + 1;
}
Jstage.BoxPiece = CountDel[i].Box_Piece__c;
if (CountDel[i].hospitalSpecialOffer__c) {
Jstage.hospitalSpecialOffer = true;
- }else {
+ } else {
Jstage.hospitalSpecialOffer = false;
}
- newMidBoxMap.put(CountDel[i].Consumable_Product__c+CountDel[i].Box_Piece__c + tex, Jstage);
+ newMidBoxMap.put(CountDel[i].Consumable_Product__c + CountDel[i].Box_Piece__c + tex, Jstage);
}
- }else if(MidMap.containsKey(CountDel[i].Consumable_Product__c) && CountDel[i].Box_Piece__c == '涓�'){
+ } else if (MidMap.containsKey(CountDel[i].Consumable_Product__c) && CountDel[i].Box_Piece__c == '涓�') {
String tex = 'A';
if (CountDel[i].hospitalSpecialOffer__c) {
tex = 'B';
}
- if(newMidPieceMap.containsKey(CountDel[i].Consumable_Product__c+CountDel[i].Box_Piece__c + tex)){
- ConsumableorderdetailsInfo Jstage = newMidPieceMap.get(CountDel[i].Consumable_Product__c+CountDel[i].Box_Piece__c + tex).clone();
- Jstage.allnumber = Jstage.allnumber+1 ;
- if(CountDel[i].Isoverdue__c == 1){
+ if (newMidPieceMap.containsKey(CountDel[i].Consumable_Product__c + CountDel[i].Box_Piece__c + tex)) {
+ ConsumableorderdetailsInfo Jstage = newMidPieceMap.get(
+ CountDel[i].Consumable_Product__c + CountDel[i].Box_Piece__c + tex
+ )
+ .clone();
+ Jstage.allnumber = Jstage.allnumber + 1;
+ if (CountDel[i].Isoverdue__c == 1) {
Jstage.limitCount = Jstage.limitCount + 1;
}
Jstage.BoxPiece = CountDel[i].Box_Piece__c;
if (CountDel[i].hospitalSpecialOffer__c) {
Jstage.hospitalSpecialOffer = true;
- }else {
+ } else {
Jstage.hospitalSpecialOffer = false;
}
- newMidPieceMap.put(CountDel[i].Consumable_Product__c+CountDel[i].Box_Piece__c + tex, Jstage);
- }else{
+ newMidPieceMap.put(CountDel[i].Consumable_Product__c + CountDel[i].Box_Piece__c + tex, Jstage);
+ } else {
ConsumableorderdetailsInfo Jstage = new ConsumableorderdetailsInfo(MidMap.get(CountDel[i].Consumable_Product__c));
- Jstage.allnumber = Jstage.allnumber+1 ;
- if(CountDel[i].Isoverdue__c == 1){
+ Jstage.allnumber = Jstage.allnumber + 1;
+ if (CountDel[i].Isoverdue__c == 1) {
Jstage.limitCount = Jstage.limitCount + 1;
}
Jstage.BoxPiece = CountDel[i].Box_Piece__c;
if (CountDel[i].hospitalSpecialOffer__c) {
Jstage.hospitalSpecialOffer = true;
- }else {
+ } else {
Jstage.hospitalSpecialOffer = false;
-
}
- newMidPieceMap.put(CountDel[i].Consumable_Product__c+CountDel[i].Box_Piece__c + tex, Jstage);
+ newMidPieceMap.put(CountDel[i].Consumable_Product__c + CountDel[i].Box_Piece__c + tex, Jstage);
}
}
}
consumableorderdetailsRecords = new List<ConsumableorderdetailsInfo>();
//鎶夿oxmap閲岀殑鍊间粠鏂拌祴缁檅oxRecords
- for(ConsumableorderdetailsInfo bss : newMidBoxMap.values()){
- if(bss.allnumber>0){
+ for (ConsumableorderdetailsInfo bss : newMidBoxMap.values()) {
+ if (bss.allnumber > 0) {
bss.sortBy = false;
bss.packing_list = Integer.valueof(bss.Prod.Product2__r.Packing_list_manual__c);
bss.approbation_No = bss.Prod.Product2__r.SFDA_Approbation_No__c;
@@ -699,43 +767,42 @@
}
boxRecords.sort();
- for(ConsumableorderdetailsInfo bss : newMidPieceMap.values()){
- if(bss.allnumber>0){
+ for (ConsumableorderdetailsInfo bss : newMidPieceMap.values()) {
+ if (bss.allnumber > 0) {
bss.packing_list = Integer.valueof(bss.Prod.Product2__r.Packing_list_manual__c);
bss.approbation_No = bss.Prod.Product2__r.SFDA_Approbation_No__c;
bss.expiration_Date = bss.Prod.Product2__r.SFDA_Expiration_Date__c;
bss.overlimitCount = bss.allnumber - bss.limitCount;
}
}
- for(ConsumableorderdetailsInfo bss : boxRecords){
+ for (ConsumableorderdetailsInfo bss : boxRecords) {
consumableorderdetailsRecords.add(bss);
//璇ヤ骇鍝佹槸鍖婚櫌鐗逛环浜у搧
- if (bss.hospitalSpecialOffer && newMidPieceMap.containsKey(bss.Prod.Id+'涓狟')) {
- if (newMidPieceMap.get(bss.Prod.Id+'涓狟').hospitalSpecialOffer) {
- consumableorderdetailsRecords.add(newMidPieceMap.get(bss.Prod.Id+'涓狟'));
- newMidPieceMap.remove(bss.Prod.Id+'涓狟');
+ if (bss.hospitalSpecialOffer && newMidPieceMap.containsKey(bss.Prod.Id + '涓狟')) {
+ if (newMidPieceMap.get(bss.Prod.Id + '涓狟').hospitalSpecialOffer) {
+ consumableorderdetailsRecords.add(newMidPieceMap.get(bss.Prod.Id + '涓狟'));
+ newMidPieceMap.remove(bss.Prod.Id + '涓狟');
}
}
- if (!bss.hospitalSpecialOffer && newMidPieceMap.containsKey(bss.Prod.Id+'涓狝')) {
+ if (!bss.hospitalSpecialOffer && newMidPieceMap.containsKey(bss.Prod.Id + '涓狝')) {
// if (newMidPieceMap.get(bss.Prod.Id+'涓狝')) {
- consumableorderdetailsRecords.add(newMidPieceMap.get(bss.Prod.Id+'涓狝'));
- newMidPieceMap.remove(bss.Prod.Id+'涓狝');
+ consumableorderdetailsRecords.add(newMidPieceMap.get(bss.Prod.Id + '涓狝'));
+ newMidPieceMap.remove(bss.Prod.Id + '涓狝');
// }
}
}
- for(ConsumableorderdetailsInfo bss : newMidPieceMap.values()){
- if (newMidPieceMap.containsKey(bss.Prod.Id+'涓狟')) {
+ for (ConsumableorderdetailsInfo bss : newMidPieceMap.values()) {
+ if (newMidPieceMap.containsKey(bss.Prod.Id + '涓狟')) {
consumableorderdetailsRecords.add(newMidPieceMap.get(bss.Prod.Id + '涓狟'));
}
}
- for(ConsumableorderdetailsInfo bss : newMidPieceMap.values()){
- if (newMidPieceMap.containsKey(bss.Prod.Id+'涓狝')) {
+ for (ConsumableorderdetailsInfo bss : newMidPieceMap.values()) {
+ if (newMidPieceMap.containsKey(bss.Prod.Id + '涓狝')) {
consumableorderdetailsRecords.add(newMidPieceMap.get(bss.Prod.Id + '涓狝'));
}
}
-
/////////////////////====================================update by rentx
/*//鎶夿oxmap閲岀殑鍊间粠鏂拌祴缁檅oxRecords
for(ConsumableorderdetailsInfo bss : newMidBoxMap.values()){
@@ -770,9 +837,9 @@
consumableorderdetailsRecords.add(newMidPieceMap.get(bss.Prod.Id + '涓�'));
}娉ㄩ噴 by rentx 2020-12-09*/
productLimtAndDate();
- datelimitSearch();
- for(ConsumableorderdetailsInfo bss : consumableorderdetailsRecords){
- if(productkucun.get(bss.Prod.Id) != null){
+ datelimitSearch();
+ for (ConsumableorderdetailsInfo bss : consumableorderdetailsRecords) {
+ if (productkucun.get(bss.Prod.Id) != null) {
bss.guaranteeperiod = productkucun.get(bss.Prod.Id);
}
}
@@ -782,12 +849,12 @@
this.preSortKey = '2';
this.sortOrderAsc = false;
this.sortOrder = new String[8];
- this.sortOrder = new String[]{' ','',' ',' ','','','','鈫�'};
+ this.sortOrder = new List<String>{ ' ', '', ' ', ' ', '', '', '', '鈫�' };
//鎬讳欢鏁�
totalcount = consumableorderdetailsRecords.size();
//椤垫暟
- pagecount=(totalcount + pagesize - 1) / pagesize;
+ pagecount = (totalcount + pagesize - 1) / pagesize;
//鏄剧ず绗竴椤�
currentpage = 0;
@@ -795,54 +862,60 @@
makeCurrentPageRecords();
}
- //搴撳瓨涓婁笅闄�
- public void productLimtAndDate (){
+ //搴撳瓨涓婁笅闄�
+ public void productLimtAndDate() {
String nowName = null, nowRightAsstModelNo = null;
- Map<String,String> productLimt = new Map<String,String>();
- for(Integer i = 0; i < proLimitAndDate.size(); i++){
+ Map<String, String> productLimt = new Map<String, String>();
+ for (Integer i = 0; i < proLimitAndDate.size(); i++) {
nowName = proLimitAndDate[i];
- if( nowName.indexOf( '|') >= 0) {
- nowRightAsstModelNo = nowName.subString( 0, nowName.indexOf( '|'));
- nowName = nowName.subString( nowName.indexOf( '|')+1);
+ if (nowName.indexOf('|') >= 0) {
+ nowRightAsstModelNo = nowName.subString(0, nowName.indexOf('|'));
+ nowName = nowName.subString(nowName.indexOf('|') + 1);
}
productLimt.put(nowRightAsstModelNo, nowName);
}
- for(ConsumableorderdetailsInfo ass : consumableorderdetailsRecords){
- if(productLimt.containsKey(ass.Prod.Asset_Model_No__c)){
- ass.lowerlimit = decimal.valueOf(productLimt.get(ass.Prod.Asset_Model_No__c).subString(0, productLimt.get(ass.Prod.Asset_Model_No__c).indexOf( '|')));
- ass.upperlimit = decimal.valueOf(productLimt.get(ass.Prod.Asset_Model_No__c).subString(productLimt.get(ass.Prod.Asset_Model_No__c).indexOf( '|')+1));
- }
+ for (ConsumableorderdetailsInfo ass : consumableorderdetailsRecords) {
+ if (productLimt.containsKey(ass.Prod.Asset_Model_No__c)) {
+ ass.lowerlimit = decimal.valueOf(
+ productLimt.get(ass.Prod.Asset_Model_No__c).subString(0, productLimt.get(ass.Prod.Asset_Model_No__c).indexOf('|'))
+ );
+ ass.upperlimit = decimal.valueOf(
+ productLimt.get(ass.Prod.Asset_Model_No__c).subString(productLimt.get(ass.Prod.Asset_Model_No__c).indexOf('|') + 1)
+ );
+ }
}
}
- public void datelimitSearch(){
+ public void datelimitSearch() {
List<String> barcodekucun = new List<String>();
- List<Consumable_order_details2__c> orderkucun = [SELECT Id,Bar_Code__c, Name,Consumable_Product__c,Recordtypeid,
- Guarantee_period_for_products__c,Sterilization_limit__c
- FROM Consumable_order_details2__c
- WHERE Dealer_Arrive__c = true
- AND Dealer_Shipment__c = false
- AND Dealer_Saled__c = false
- AND Dealer_Returned__c = false
- AND Lose_Flag__c = false
- AND Bar_Code__c !=null
- AND Product_Type__c like : sqlagencyProType
- AND Dealer_Info_text__c = :accountName
- AND Arrive_Owner_Work_Location__c =: userWorkLocation
- ORDER BY Consumable_Product__c, Sterilization_limit__c asc];
- for(Integer i = 0 ; i< orderkucun.size();i++){
- if(productkucun.containsKey(orderkucun[i].Consumable_Product__c)){
+ List<Consumable_order_details2__c> orderkucun = [
+ SELECT Id, Bar_Code__c, Name, Consumable_Product__c, Recordtypeid, Guarantee_period_for_products__c, Sterilization_limit__c
+ FROM Consumable_order_details2__c
+ WHERE
+ Dealer_Arrive__c = TRUE
+ AND Dealer_Shipment__c = FALSE
+ AND Dealer_Saled__c = FALSE
+ AND Dealer_Returned__c = FALSE
+ AND Lose_Flag__c = FALSE
+ AND Bar_Code__c != NULL
+ AND Product_Type__c LIKE :sqlagencyProType
+ AND Dealer_Info_text__c = :accountName
+ AND Arrive_Owner_Work_Location__c = :userWorkLocation
+ ORDER BY Consumable_Product__c, Sterilization_limit__c ASC
+ ];
+ for (Integer i = 0; i < orderkucun.size(); i++) {
+ if (productkucun.containsKey(orderkucun[i].Consumable_Product__c)) {
continue;
- }else{
+ } else {
productkucun.put(orderkucun[i].Consumable_Product__c, orderkucun[i].Sterilization_limit__c);
}
}
}
//鍚嶇О鎺掑簭
- public void SortLimited(){
- Map<String,ConsumableorderdetailsInfo> MidMap = new Map<String,ConsumableorderdetailsInfo>();
- Map<String,ConsumableorderdetailsInfo> newMap = new Map<String,ConsumableorderdetailsInfo>();
+ public void SortLimited() {
+ Map<String, ConsumableorderdetailsInfo> MidMap = new Map<String, ConsumableorderdetailsInfo>();
+ Map<String, ConsumableorderdetailsInfo> newMap = new Map<String, ConsumableorderdetailsInfo>();
if (this.sortKey == this.preSortKey) {
// 鏂瑰悜銇屽銈忋倠銇伩
this.sortOrderAsc = !this.sortOrderAsc;
@@ -855,27 +928,30 @@
this.preSortKey = this.sortKey;
// 鎵�鏈変骇鍝佸彇寰�
- String soql = this.makeSoql(null,null,null,null,null);
- soql += ' ORDER BY ' + this.columus[Integer.valueOf(this.sortKey)] + ' ' + (this.sortOrderAsc == true ? 'asc nulls first' : 'desc nulls last');
+ String soql = this.makeSoql(null, null, null, null, null);
+ soql +=
+ ' ORDER BY ' +
+ this.columus[Integer.valueOf(this.sortKey)] +
+ ' ' +
+ (this.sortOrderAsc == true ? 'asc nulls first' : 'desc nulls last');
List<Product2__c> queryList = Database.query(soql);
for (Integer i = 0; i < queryList.size(); i++) {
MidMap.put(queryList[i].Id + '鐩�', null);
MidMap.put(queryList[i].Id + '涓�', null);
-
}
//update by rentx 2020-12-29
- for(Integer i = 0 ; i< pageRecords.size();i++){
- if(MidMap.containsKey(pageRecords[i].prod.Id+pageRecords[i].BoxPiece)){
+ for (Integer i = 0; i < pageRecords.size(); i++) {
+ if (MidMap.containsKey(pageRecords[i].prod.Id + pageRecords[i].BoxPiece)) {
ConsumableorderdetailsInfo Jstage = pageRecords[i].clone();
if (Jstage.hospitalSpecialOffer == true) {
- newMap.put(pageRecords[i].prod.id+pageRecords[i].BoxPiece, Jstage);
- }else{
- MidMap.put(pageRecords[i].prod.id+pageRecords[i].BoxPiece, Jstage);
+ newMap.put(pageRecords[i].prod.id + pageRecords[i].BoxPiece, Jstage);
+ } else {
+ MidMap.put(pageRecords[i].prod.id + pageRecords[i].BoxPiece, Jstage);
}
}
}
- //update by rentx 2020-12-29
+ //update by rentx 2020-12-29
// for(Integer i = 0 ; i< pageRecords.size();i++){
// if(MidMap.containsKey(pageRecords[i].prod.Id+pageRecords[i].BoxPiece)){
@@ -887,17 +963,16 @@
//update byr entx 2020-12-29
//鍐嶆妸map閲岀殑鍊间粠鏂拌祴缁機pageRecords
- for(ConsumableorderdetailsInfo bss : MidMap.values()){
-
- if(bss != null){
+ for (ConsumableorderdetailsInfo bss : MidMap.values()) {
+ if (bss != null) {
pageRecords.add(bss);
- if (newMap.get(bss.Prod.Id+bss.BoxPiece) != null) {
- pageRecords.add(newMap.get(bss.Prod.Id+bss.BoxPiece));
- newMap.remove(bss.Prod.Id+bss.BoxPiece);
+ if (newMap.get(bss.Prod.Id + bss.BoxPiece) != null) {
+ pageRecords.add(newMap.get(bss.Prod.Id + bss.BoxPiece));
+ newMap.remove(bss.Prod.Id + bss.BoxPiece);
}
}
}
- for(ConsumableorderdetailsInfo bss : newMap.values()){
+ for (ConsumableorderdetailsInfo bss : newMap.values()) {
if (bss != null) {
pageRecords.add(bss);
}
@@ -912,8 +987,8 @@
//update by rentx 2020-12-29
}
- //搴撳瓨鎺掑簭
- public void SortStore(){
+ //搴撳瓨鎺掑簭
+ public void SortStore() {
if (this.sortKey == this.preSortKey) {
// 鏂瑰悜銇屽銈忋倠銇伩
this.sortOrderAsc = !this.sortOrderAsc;
@@ -925,74 +1000,87 @@
}
this.preSortKey = this.sortKey;
- for(ConsumableorderdetailsInfo ass :pageRecords){
+ for (ConsumableorderdetailsInfo ass : pageRecords) {
ass.sortBy = this.sortOrderAsc;
}
pageRecords.sort();
}
//妫�绱ql鏂囧仛鎴�
- private String makeSoql(String CateName,String CateCode,String Category3,String Category4,String Category5){
+ private String makeSoql(String CateName, String CateCode, String Category3, String Category4, String Category5) {
String sqlTail = '(\'';
- for(Integer i = 0 ; i< orderDetZaikuList.size();i++){
- if(i<orderDetZaikuList.size()-1){
- sqlTail += orderDetZaikuList[i]+'\',\'';
- }else{
- sqlTail += orderDetZaikuList[i]+'\')';
+ for (Integer i = 0; i < orderDetZaikuList.size(); i++) {
+ if (i < orderDetZaikuList.size() - 1) {
+ sqlTail += orderDetZaikuList[i] + '\',\'';
+ } else {
+ sqlTail += orderDetZaikuList[i] + '\')';
}
}
String soql = 'select Id, Name,Name__c,Intra_Trade_List_RMB__c,Asset_Model_No__c,Category3__c,Category4__c,Category5__c,';
soql += ' SFDA_Status__c,Product2__r.SFDA_Approbation_No__c,Product2__r.SFDA_Expiration_Date__c,Product2__r.Packing_list_manual__c FROM Product2__c ';
soql += ' WHERE Id in' + sqlTail;
- if(!String.isBlank(CateName)){
- soql += ' AND (Name__c like \'%' + String.escapeSingleQuotes(CateName.replaceAll('%', '\\%')) + '%\' or Asset_Model_No__c like \'%' + String.escapeSingleQuotes(CateName.replaceAll('%', '\\%')) + '%\')';
- }if(!String.isBlank(Category3)){
- soql += ' AND Category3__c = \'' + Category3 + '\'';
- }if(!String.isBlank(Category4)){
- soql += ' AND Category4__c = \'' + Category4 + '\'';
- }if(!String.isBlank(Category5)){
- soql += ' AND Category5__c = \'' + Category5 + '\'';
+ if (!String.isBlank(CateName)) {
+ soql +=
+ ' AND (Name__c like \'%' +
+ String.escapeSingleQuotes(CateName.replaceAll('%', '\\%')) +
+ '%\' or Asset_Model_No__c like \'%' +
+ String.escapeSingleQuotes(CateName.replaceAll('%', '\\%')) +
+ '%\')';
}
+ if (!String.isBlank(Category3)) {
+ soql += ' AND Category3__c = \'' + Category3 + '\'';
+ }
+ if (!String.isBlank(Category4)) {
+ soql += ' AND Category4__c = \'' + Category4 + '\'';
+ }
+ if (!String.isBlank(Category5)) {
+ soql += ' AND Category5__c = \'' + Category5 + '\'';
+ }
+ System.debug('====>soql' + soql);
return soql;
-
}
//棣栭〉
- public void moveToFirst(){
- if(currentpage == 1) return;
+ public void moveToFirst() {
+ if (currentpage == 1)
+ return;
currentpage = 1;
canMove();
}
//灏鹃〉
- public void moveToLast(){
- if(currentpage >= pagecount) return;
+ public void moveToLast() {
+ if (currentpage >= pagecount)
+ return;
currentpage = pagecount;
canMove();
}
- //涓婁竴椤�
- public void moveToPrevious(){
- if(currentpage == 1) return;
- currentpage = currentpage -1;
+ //涓婁竴椤�
+ public void moveToPrevious() {
+ if (currentpage == 1)
+ return;
+ currentpage = currentpage - 1;
canMove();
}
//涓嬩竴椤�
- public void moveToNext(){
- if(currentpage >= pagecount) return;
+ public void moveToNext() {
+ if (currentpage >= pagecount)
+ return;
currentpage = currentpage + 1;
canMove();
}
//鍒ゆ柇鏄惁鍙炕椤�
- public void canMove(){
+ public void canMove() {
hasPrevious = false;
hasNext = false;
- if(pagecount > 1 && currentpage > 1) hasPrevious = true;
- if(pagecount > 1 && currentpage < pagecount) hasNext = true;
+ if (pagecount > 1 && currentpage > 1)
+ hasPrevious = true;
+ if (pagecount > 1 && currentpage < pagecount)
+ hasNext = true;
}
-
//鍒锋柊褰撳墠椤�
public PageReference refreshPageSize() {
@@ -1000,22 +1088,22 @@
return null;
}
- //缂栬緫褰撳墠椤靛唴瀹�
- public void makeCurrentPageRecords(){
+ //缂栬緫褰撳墠椤靛唴瀹�
+ public void makeCurrentPageRecords() {
Integer startIdx;
Integer endIdx;
pageRecords = new List<ConsumableorderdetailsInfo>();
- startIdx = (currentpage-1) * pagesize;
- endIdx = (currentpage-1) * pagesize+ pagesize;
- if (endIdx > consumableorderdetailsRecords.size()){
+ startIdx = (currentpage - 1) * pagesize;
+ endIdx = (currentpage - 1) * pagesize + pagesize;
+ if (endIdx > consumableorderdetailsRecords.size()) {
endIdx = consumableorderdetailsRecords.size();
- }
+ }
- for(Integer i=startIdx; i < endIdx ; i++){
+ for (Integer i = startIdx; i < endIdx; i++) {
pageRecords.add(consumableorderdetailsRecords.get(i));
}
- }
+ }
// Data Bean
class ConsumableorderdetailsInfo implements Comparable {
@@ -1044,16 +1132,16 @@
}
// 鎺掑簭
public Integer compareTo(Object compareTo) {
- ConsumableorderdetailsInfo compareToesd =(ConsumableorderdetailsInfo)compareTo;
+ ConsumableorderdetailsInfo compareToesd = (ConsumableorderdetailsInfo) compareTo;
Integer returnValue = 0;
- if(sortBy == false){
+ if (sortBy == false) {
if (allnumber > compareToesd.allnumber) {
returnValue = -1;
} else if (allnumber < compareToesd.allnumber) {
returnValue = 1;
}
return returnValue;
- }else{
+ } else {
if (allnumber > compareToesd.allnumber) {
returnValue = 1;
} else if (allnumber < compareToesd.allnumber) {
@@ -1061,7 +1149,6 @@
}
return returnValue;
}
-
}
}
-}
\ No newline at end of file
+}
diff --git a/force-app/main/default/classes/LexArriveGoodsController.cls b/force-app/main/default/classes/LexArriveGoodsController.cls
index ad92c51..e69de29 100644
--- a/force-app/main/default/classes/LexArriveGoodsController.cls
+++ b/force-app/main/default/classes/LexArriveGoodsController.cls
@@ -1,356 +0,0 @@
-public without sharing class LexArriveGoodsController {
- //鍒濆鍖�
- @AuraEnabled
- public static Results init(String arrType, String eSetId) {
- Results results = new Results();
- results.isNoteStay = LexUtility.getIsNoteStay();
- try {
- ArriveGoodsController arrController = new ArriveGoodsController(
- eSetId,
- arrType
- );
- arrController.isLwc = true;
- arrController.init();
- results.arrGoodCon = JSON.serialize(arrController);
- results.coc = arrController.coc;
- results.saveFLGbln = arrController.saveFLGbln;
- results.returnFLGbln = arrController.ReturnFLGbln;
- results.result = 'Success';
- } catch (Exception e) {
- results.result = 'Fail';
- results.errorMsg = e.getLineNumber() + '---' + e.getMessage();
- }
- return results;
- }
-
- //鎼滅储浜у搧
- @AuraEnabled
- public static Results searchProduct(String barcode, String arrControllerStr) {
- Results results = new Results();
- try {
- System.debug('arrControllerStr:' + arrControllerStr);
- ArriveGoodsController arrController = (ArriveGoodsController) JSON.deserialize(
- arrControllerStr,
- ArriveGoodsController.class
- );
- arrController.barcode = barcode;
- arrController.returnError = null;
- arrController.warningList = new List<String>();
- arrController.errorList = new List<String>();
- arrController.SearchPro();
- results.arrGoodCon = JSON.serialize(arrController);
- if (
- arrController.returnError != null &&
- arrController.returnError != ''
- ) {
- results.result = 'Fail';
- results.errorMsgList = arrController.errorList;
- results.warningMsgList = arrController.warningList;
- results.errorMsg = arrController.returnError;
- } else {
- results.coc = arrController.coc;
- results.saveFLGbln = arrController.saveFLGbln;
- results.returnFLGbln = arrController.ReturnFLGbln;
- results.detailsSummary = changeType1(arrController.detailsSummary);
- results.consumableorderdetailsRecords = changeType1(
- arrController.ConsumableorderdetailsRecords
- );
- results.showGoodsofReturnList = changeType1(
- arrController.ShowGoodsofReturnList
- );
- results.consumableInventory = changeType1(
- arrController.consumableInventory
- );
- results.consumableorderdetailsRecordserror = changeType1(
- arrController.ConsumableorderdetailsRecordserror
- );
- results.errorMsgList = arrController.errorList;
- results.warningMsgList = arrController.warningList;
- results.result = 'Success';
- }
- } catch (Exception e) {
- results.result = 'Fail';
- results.errorMsg =
- e.getLineNumber() +
- '---' +
- e.getMessage() +
- '---' +
- e.getStackTraceString();
- }
- return results;
- }
-
- //鍒拌揣纭
- @AuraEnabled
- public static Results arriveGoodsConfim(String arrControllerStr) {
- Results results = new Results();
- try {
- ArriveGoodsController arrController = (ArriveGoodsController) JSON.deserialize(
- arrControllerStr,
- ArriveGoodsController.class
- );
- arrController.returnError = null;
- arrController.warningList = new List<String>();
- arrController.errorList = new List<String>();
- Pagereference page = arrController.ArriveGoodsConfim();
- results.arrGoodCon = JSON.serialize(arrController);
- if (
- arrController.returnError != null &&
- arrController.returnError != ''
- ) {
- results.result = 'Fail';
- results.errorMsgList = arrController.errorList;
- results.warningMsgList = arrController.warningList;
- results.errorMsg = arrController.returnError;
- } else {
- if (arrController.urlType == 'UnabletoEdit') {
- results.url = '/lexarrivegsdetails?EsetId=' + arrController.arriveId;
- }
- results.errorMsgList = arrController.errorList;
- results.warningMsgList = arrController.warningList;
- results.result = 'Success';
- }
- } catch (Exception e) {
- results.result = 'Fail';
- results.errorMsg = e.getLineNumber() + '---' + e.getMessage();
- }
- return results;
- }
-
- //鐧诲綍杩斿搧
- @AuraEnabled
- public static Results updateGoodsOfReturn(
- String arrControllerStr,
- String showGoodsofReturnListStr
- ) {
- Results results = new Results();
- try {
- List<ConsumableorderdetailsInfo> showGoodsofReturnList = (List<ConsumableorderdetailsInfo>) JSON.deserialize(
- showGoodsofReturnListStr,
- List<ConsumableorderdetailsInfo>.class
- );
- ArriveGoodsController arrController = (ArriveGoodsController) JSON.deserialize(
- arrControllerStr,
- ArriveGoodsController.class
- );
- arrController.ShowGoodsofReturnList = changeType2(showGoodsofReturnList);
- arrController.returnError = null;
- arrController.warningList = new List<String>();
- arrController.errorList = new List<String>();
- Pagereference page = arrController.UpdateGoodsOfReturn();
- results.arrGoodCon = JSON.serialize(arrController);
- if (
- arrController.returnError != null &&
- arrController.returnError != ''
- ) {
- results.result = 'Fail';
- results.errorMsgList = arrController.errorList;
- results.warningMsgList = arrController.warningList;
- results.errorMsg = arrController.returnError;
- } else {
- if (arrController.urlType == 'ToReturnGoodsPage') {
- results.url = '/detail/' + arrController.return_Order_id;
- }
- if (arrController.urlType == 'ToInventoryGoodsPage') {
- results.url = '/detail/' + arrController.inventory_Order_id;
- }
- results.errorMsgList = arrController.errorList;
- results.warningMsgList = arrController.warningList;
- results.result = 'Success';
- }
- } catch (Exception e) {
- results.result = 'Fail';
- results.errorMsg = e.getLineNumber() + '---' + e.getMessage();
- }
- return results;
- }
-
- public static List<ConsumableorderdetailsInfo> changeType1(
- List<ArriveGoodsController.ConsumableorderdetailsInfo> conList
- ) {
- List<ConsumableorderdetailsInfo> conList1 = new List<ConsumableorderdetailsInfo>();
- if (conList != null) {
- for (ArriveGoodsController.ConsumableorderdetailsInfo con : conList) {
- ConsumableorderdetailsInfo con1 = new ConsumableorderdetailsInfo();
- con1.esd = con.esd;
- con1.Prod = con.Prod;
- con1.ProductName = con.ProductName;
- con1.barCodeNo = con.barCodeNo;
- con1.sterilizationlimitDate = con.sterilizationlimitDate;
- con1.serialNoorLotNo = con.serialNoorLotNo;
- con1.tracingCodeNo = con.tracingCodeNo;
- con1.ReturnReason = con.ReturnReason;
- con1.oldConsumableCount = con.oldConsumableCount;
- con1.ErrorReason = con.ErrorReason;
- con1.canEdit = con.canEdit;
- con1.intMark = con.intMark;
- con1.arriveAmount = con.arriveAmount;
- con1.arrivedCount = con.arrivedCount;
- con1.ReportProductExpirationDate = con.ReportProductExpirationDate;
- conList1.add(con1);
- }
- }
- return conList1;
- }
-
- public static List<ArriveGoodsController.ConsumableorderdetailsInfo> changeType2(
- List<ConsumableorderdetailsInfo> conList
- ) {
- List<ArriveGoodsController.ConsumableorderdetailsInfo> conList1 = new List<ArriveGoodsController.ConsumableorderdetailsInfo>();
- if (conList != null) {
- for (ConsumableorderdetailsInfo con : conList) {
- ArriveGoodsController.ConsumableorderdetailsInfo con1 = new ArriveGoodsController.ConsumableorderdetailsInfo();
- con1.esd = con.esd;
- con1.Prod = con.Prod;
- con1.ProductName = con.ProductName;
- con1.barCodeNo = con.barCodeNo;
- con1.sterilizationlimitDate = con.sterilizationlimitDate;
- con1.serialNoorLotNo = con.serialNoorLotNo;
- con1.tracingCodeNo = con.tracingCodeNo;
- con1.ReturnReason = con.ReturnReason;
- con1.oldConsumableCount = con.oldConsumableCount;
- con1.ErrorReason = con.ErrorReason;
- con1.canEdit = con.canEdit;
- con1.intMark = con.intMark;
- con1.arriveAmount = con.arriveAmount;
- con1.arrivedCount = con.arrivedCount;
- con1.ReportProductExpirationDate = con.ReportProductExpirationDate;
- conList1.add(con1);
- }
- }
- return conList1;
- }
-
- public class Results {
- @AuraEnabled
- public String result;
- @AuraEnabled
- public String errorMsg;
- @AuraEnabled
- public String url;
- @AuraEnabled
- public String arrGoodCon;
- @AuraEnabled
- public Consumable_order__c coc;
- @AuraEnabled
- public Boolean returnFLGbln;
- @AuraEnabled
- public Boolean saveFLGbln;
- @AuraEnabled
- public List<ConsumableorderdetailsInfo> detailsSummary;
- @AuraEnabled
- public List<ConsumableorderdetailsInfo> consumableorderdetailsRecords;
- @AuraEnabled
- public List<ConsumableorderdetailsInfo> showGoodsofReturnList;
- @AuraEnabled
- public List<ConsumableorderdetailsInfo> consumableInventory;
- @AuraEnabled
- public List<ConsumableorderdetailsInfo> consumableorderdetailsRecordserror;
- @AuraEnabled
- public List<String> errorMsgList;
- @AuraEnabled
- public List<String> warningMsgList;
- @AuraEnabled
- public Boolean isNoteStay;
- }
-
- public class ConsumableorderdetailsInfo implements Comparable {
- @AuraEnabled
- public Consumable_order_details2__c esd { get; set; }
- @AuraEnabled
- public Product2__c Prod { get; set; }
- @AuraEnabled
- public String ProductName { get; set; }
- @AuraEnabled
- public String barCodeNo { get; set; }
- @AuraEnabled
- public Date sterilizationlimitDate { get; set; }
- @AuraEnabled
- public String serialNoorLotNo { get; set; }
- @AuraEnabled
- public String tracingCodeNo { get; set; }
- @AuraEnabled
- public String ReturnReason { get; set; }
- @AuraEnabled
- public String oldConsumableCount { get; set; }
- @AuraEnabled
- public String ErrorReason { get; set; }
- @AuraEnabled
- public boolean canEdit { get; set; }
- @AuraEnabled
- public Integer intMark { get; set; }
- @AuraEnabled
- public Decimal arriveAmount { get; set; }
- @AuraEnabled
- public Decimal arrivedCount { get; set; }
- @AuraEnabled
- public String ReportProductExpirationDate { get; set; }
-
- public ConsumableorderdetailsInfo() {
- }
-
- public ConsumableorderdetailsInfo(
- Consumable_order_details2__c e,
- string str
- ) {
- esd = e;
- Prod = e.Consumable_Product__r;
- oldConsumableCount = e.name;
- ErrorReason = str;
- intMark = 1;
- if (e.Report_Product_Expiration__c != null) {
- ReportProductExpirationDate = e.Report_Product_Expiration__c.format();
- }
- }
- public ConsumableorderdetailsInfo(Consumable_order_details2__c e) {
- canEdit = false;
- if (e.Box_Piece__c == '鐩�') {
- e.Rrturn_count__c = 1;
- canEdit = true;
- }
- esd = e;
- Prod = e.Consumable_Product__r;
- oldConsumableCount = e.name;
- if (e.Report_Product_Expiration__c != null) {
- ReportProductExpirationDate = e.Report_Product_Expiration__c.format();
- }
- }
-
- public ConsumableorderdetailsInfo(Product2__c e, List<String> barinfoL) {
- esd = new Consumable_order_details2__c();
- ProductName = e.Name__c;
- Prod = e;
- barCodeNo = barinfoL[0];
- if (String.isNotBlank(barinfoL[1])) {
- sterilizationlimitDate = Date.valueOf(barinfoL[1]);
- }
- serialNoorLotNo = barinfoL[2];
- tracingCodeNo = barinfoL[3];
- ReturnReason = '';
- }
-
- public ConsumableorderdetailsInfo(
- Consumable_order_details2__c e,
- List<String> barinfoL
- ) {
- esd = e;
- Prod = e.Consumable_Product__r;
- barCodeNo = barinfoL[0];
- if (String.isNotBlank(barinfoL[1])) {
- sterilizationlimitDate = Date.valueOf(barinfoL[1]);
- }
- serialNoorLotNo = barinfoL[2];
- tracingCodeNo = barinfoL[3];
- if (e.Report_Product_Expiration__c != null) {
- ReportProductExpirationDate = e.Report_Product_Expiration__c.format();
- }
- }
- public ConsumableorderdetailsInfo(Product2__c e) {
- Prod = e;
- }
- // 鎺掑簭
- public Integer compareTo(Object compareTo) {
- return null;
- }
- }
-}
diff --git a/force-app/main/default/classes/LogAutoSendBatch.cls b/force-app/main/default/classes/LogAutoSendBatch.cls
index 2b270b0..89a2fac 100644
--- a/force-app/main/default/classes/LogAutoSendBatch.cls
+++ b/force-app/main/default/classes/LogAutoSendBatch.cls
@@ -1,15 +1,9 @@
global class LogAutoSendBatch implements Database.Batchable<sObject>, Database.AllowsCallouts, Database.Stateful {
-
private String typeNFM;
private String messageGroupNumber;
private Datetime times;
- private Boolean isForecast;// 20220318 ljh SWAG-CC54R2 add
+ private Boolean isForecast; // 20220318 ljh SWAG-CC54R2 add
private String loginId;
-
- //20230203 lt 璁″垝鐨勪綔涓氫紭鍖� 涓�灏忔椂涓ゆ start
- private BatchEmailUtil.ScBean scB1;
- //20230203 lt 璁″垝鐨勪綔涓氫紭鍖� 涓�灏忔椂涓ゆ end
-
/**
* 銈炽兂銈广偪銉炽儓
*/
@@ -19,14 +13,14 @@
this.loginId = loginId;
}
// 2023-1-19 zyh DB202301301244 add start
- global LogAutoSendBatch(String type,String message) {
+ global LogAutoSendBatch(String type, String message) {
this.typeNFM = type;
this.messageGroupNumber = message;
- System.debug('type++++++'+type + 'message+++++' + message);
+ System.debug('type++++++' + type + 'message+++++' + message);
}
// 2023-1-19 zyh DB202301301244 add end
// 20220318 ljh SWAG-CC54R2 add start
- global LogAutoSendBatch(String type,Boolean isForecast) {
+ global LogAutoSendBatch(String type, Boolean isForecast) {
this.typeNFM = type;
this.isForecast = isForecast;
}
@@ -43,103 +37,224 @@
*/
public Integer max_cnt = Integer.valueOf(System.Label.batch_retry_max_cnt);
global Database.QueryLocator start(Database.BatchableContext BC) {
-
- //20230203 lt 璁″垝鐨勪綔涓氫紭鍖� 涓�灏忔椂涓ゆ start
- scB1 = BatchEmailUtil.setSc1('LogAutoSendSchedule', 0, 23, 0, '0 30 *', null);
- if (System.Test.isRunningTest() == false) {
- for(CronTrigger ct : [SELECT Id FROM CronTrigger WHERE CronJobDetail.Name =: scB1.scName]) {
- System.abortJob(ct.Id);
- }
- system.schedule(scB1.scName, scB1.scTime, new LogAutoSendSchedule());
- }
- //20230203 lt 璁″垝鐨勪綔涓氫紭鍖� 涓�灏忔椂涓ゆ end
-
String profileId = UserInfo.getProfileId();
// 20220318 ljh SWAG-CC54R2 add start
- if(String.isNotBlank(typeNFM) && typeNFM == 'NFM010' && String.isBlank(messageGroupNumber)){
+ if (String.isNotBlank(typeNFM) && typeNFM == 'NFM010' && String.isBlank(messageGroupNumber)) {
return Database.getQueryLocator(
- [SELECT Id, Name, Log__c, ErrorLog__c, Log2__c, Log3__c, Log4__c, Log5__c, Log6__c,
- Log7__c, Log8__c, Log9__c, Log10__c, Log11__c, Log12__c, MessageGroupNumber__c, Type__c,
- retry_cnt__c, NFM501Future_Count__c, NFM501_Web_Annex_Count__c
- FROM BatchIF_Log__c
- WHERE RowDataFlg__c = true
- AND (retry_cnt__c = null OR (retry_cnt__c != null AND retry_cnt__c > 0 AND retry_cnt__c < : max_cnt))
- AND Type__c = : typeNFM ]
- );
+ [
+ SELECT
+ Id,
+ Name,
+ Log__c,
+ ErrorLog__c,
+ Log2__c,
+ Log3__c,
+ Log4__c,
+ Log5__c,
+ Log6__c,
+ Log7__c,
+ Log8__c,
+ Log9__c,
+ Log10__c,
+ Log11__c,
+ Log12__c,
+ MessageGroupNumber__c,
+ Type__c,
+ retry_cnt__c,
+ NFM501Future_Count__c,
+ NFM501_Web_Annex_Count__c
+ FROM BatchIF_Log__c
+ WHERE
+ RowDataFlg__c = TRUE
+ AND (retry_cnt__c = NULL
+ OR (retry_cnt__c != NULL
+ AND retry_cnt__c > 0
+ AND retry_cnt__c < :max_cnt))
+ AND Type__c = :typeNFM
+ ]
+ );
}
// gzw 603 閲嶅彂鍒ゆ柇 鏆傛椂鐢�
// ljh鍙墽琛岃嚜宸辫繖鏉℃棩蹇楋紝鑰屼笖杩欎釜鏃ュ織retry_cnt__c涓嶆槸0
else if (String.isNotBlank(loginId)) {
return Database.getQueryLocator(
- [SELECT Id, Name, Log__c, ErrorLog__c, Log2__c, Log3__c, Log4__c, Log5__c, Log6__c,
- Log7__c, Log8__c, Log9__c, Log10__c, Log11__c, Log12__c, MessageGroupNumber__c, Type__c,
- retry_cnt__c, NFM501Future_Count__c, NFM501_Web_Annex_Count__c
+ [
+ SELECT
+ Id,
+ Name,
+ Log__c,
+ ErrorLog__c,
+ Log2__c,
+ Log3__c,
+ Log4__c,
+ Log5__c,
+ Log6__c,
+ Log7__c,
+ Log8__c,
+ Log9__c,
+ Log10__c,
+ Log11__c,
+ Log12__c,
+ MessageGroupNumber__c,
+ Type__c,
+ retry_cnt__c,
+ NFM501Future_Count__c,
+ NFM501_Web_Annex_Count__c
FROM BatchIF_Log__c
- WHERE RowDataFlg__c = true
- AND retry_cnt__c != 0
- AND id = : loginId ]
- );
+ WHERE RowDataFlg__c = TRUE AND retry_cnt__c != 0 AND id = :loginId
+ ]
+ );
}
// gzw 603 閲嶅彂鍒ゆ柇 鏆傛椂鐢�
// 2023-01-19 zyh add start
else if (String.isNotBlank(typeNFM) && String.isNotBlank(messageGroupNumber) && times == null) {
return Database.getQueryLocator(
- [SELECT Id, Name, Log__c, ErrorLog__c, Log2__c, Log3__c, Log4__c, Log5__c, Log6__c,
- Log7__c, Log8__c, Log9__c, Log10__c, Log11__c, Log12__c, MessageGroupNumber__c, Type__c,
- retry_cnt__c, NFM501Future_Count__c, NFM501_Web_Annex_Count__c
- FROM BatchIF_Log__c
- WHERE RowDataFlg__c = true
- AND Type__c = : typeNFM AND MessageGroupNumber__c = : messageGroupNumber
- ]
- );
+ [
+ SELECT
+ Id,
+ Name,
+ Log__c,
+ ErrorLog__c,
+ Log2__c,
+ Log3__c,
+ Log4__c,
+ Log5__c,
+ Log6__c,
+ Log7__c,
+ Log8__c,
+ Log9__c,
+ Log10__c,
+ Log11__c,
+ Log12__c,
+ MessageGroupNumber__c,
+ Type__c,
+ retry_cnt__c,
+ NFM501Future_Count__c,
+ NFM501_Web_Annex_Count__c
+ FROM BatchIF_Log__c
+ WHERE RowDataFlg__c = TRUE AND Type__c = :typeNFM AND MessageGroupNumber__c = :messageGroupNumber
+ ]
+ );
}
// 2023-01-19 zyh add end
else if (String.isNotBlank(typeNFM) && String.isNotBlank(messageGroupNumber) && times != null) {
- // 20220318 ljh SWAG-CC54R2 add end
- //20191224 HWAG-BK65E8 add start
- // if (String.isNotBlank(typeNFM) && String.isNotBlank(messageGroupNumber) && times != null) {
+ // 20220318 ljh SWAG-CC54R2 add end
+ //20191224 HWAG-BK65E8 add start
+ // if (String.isNotBlank(typeNFM) && String.isNotBlank(messageGroupNumber) && times != null) {
return Database.getQueryLocator(
- [SELECT Id, Name, Log__c, ErrorLog__c, Log2__c, Log3__c, Log4__c, Log5__c, Log6__c,
- Log7__c, Log8__c, Log9__c, Log10__c, Log11__c, Log12__c, MessageGroupNumber__c, Type__c,
- retry_cnt__c, NFM501Future_Count__c, NFM501_Web_Annex_Count__c
- FROM BatchIF_Log__c
- WHERE RowDataFlg__c = true
- AND Type__c != 'NFM007' // 2023-01-18 ZYH ADD
- AND Type__c = : typeNFM AND CreatedDate >= : times AND MessageGroupNumber__c >= : messageGroupNumber
- order by MessageGroupNumber__c asc ]
- );
+ [
+ SELECT
+ Id,
+ Name,
+ Log__c,
+ ErrorLog__c,
+ Log2__c,
+ Log3__c,
+ Log4__c,
+ Log5__c,
+ Log6__c,
+ Log7__c,
+ Log8__c,
+ Log9__c,
+ Log10__c,
+ Log11__c,
+ Log12__c,
+ MessageGroupNumber__c,
+ Type__c,
+ retry_cnt__c,
+ NFM501Future_Count__c,
+ NFM501_Web_Annex_Count__c
+ FROM BatchIF_Log__c
+ WHERE
+ RowDataFlg__c = TRUE
+ AND Type__c != 'NFM007' // 2023-01-18 ZYH ADD
+ AND Type__c = :typeNFM
+ AND CreatedDate >= :times
+ AND MessageGroupNumber__c >= :messageGroupNumber
+ ORDER BY MessageGroupNumber__c ASC
+ ]
+ );
//20191224 HWAG-BK65E8 add end
} else if (profileId.left(15).equals('00e10000000dzzG') || profileId.left(15).equals('00e10000000Y3o5')) {
return Database.getQueryLocator(
- [SELECT Id, Name, Log__c, ErrorLog__c, Log2__c, Log3__c, Log4__c, Log5__c, Log6__c,
- Log7__c, Log8__c, Log9__c, Log10__c, Log11__c, Log12__c, MessageGroupNumber__c, Type__c,
- retry_cnt__c, NFM501Future_Count__c, NFM501_Web_Annex_Count__c
- FROM BatchIF_Log__c
- WHERE RowDataFlg__c = true
- AND Type__c != 'NFM007' // 2023-01-18 ZYH ADD
- AND ((retry_cnt__c != null AND retry_cnt__c > 0 AND retry_cnt__c < : max_cnt)
- OR (NFM501Future_Count__c != null
- AND NFM501Future_Count__c > 0 AND NFM501Future_Count__c < : max_cnt)
- OR(NFM501_Web_Annex_Count__c != null
- AND NFM501_Web_Annex_Count__c > 0 AND NFM501_Web_Annex_Count__c < : max_cnt))]
- );
- }else {
+ [
+ SELECT
+ Id,
+ Name,
+ Log__c,
+ ErrorLog__c,
+ Log2__c,
+ Log3__c,
+ Log4__c,
+ Log5__c,
+ Log6__c,
+ Log7__c,
+ Log8__c,
+ Log9__c,
+ Log10__c,
+ Log11__c,
+ Log12__c,
+ MessageGroupNumber__c,
+ Type__c,
+ retry_cnt__c,
+ NFM501Future_Count__c,
+ NFM501_Web_Annex_Count__c
+ FROM BatchIF_Log__c
+ WHERE
+ RowDataFlg__c = TRUE
+ AND Type__c != 'NFM007' // 2023-01-18 ZYH ADD
+ AND ((retry_cnt__c != NULL
+ AND retry_cnt__c > 0
+ AND retry_cnt__c < :max_cnt)
+ OR (NFM501Future_Count__c != NULL
+ AND NFM501Future_Count__c > 0
+ AND NFM501Future_Count__c < :max_cnt)
+ OR (NFM501_Web_Annex_Count__c != NULL
+ AND NFM501_Web_Annex_Count__c > 0
+ AND NFM501_Web_Annex_Count__c < :max_cnt))
+ ]
+ );
+ } else {
return Database.getQueryLocator(
- [SELECT Id, Name, Log__c, ErrorLog__c, Log2__c, Log3__c, Log4__c, Log5__c, Log6__c,
- Log7__c, Log8__c, Log9__c, Log10__c, Log11__c, Log12__c, MessageGroupNumber__c, Type__c,
- retry_cnt__c, NFM501Future_Count__c, NFM501_Web_Annex_Count__c
- FROM BatchIF_Log__c
- WHERE RowDataFlg__c = true
- AND Type__c != 'NFM007' // 2023-01-18 ZYH ADD
- AND ((retry_cnt__c != null AND retry_cnt__c > 0 AND retry_cnt__c < : max_cnt)
- OR (NFM501Future_Count__c != null
- AND NFM501Future_Count__c > 0 AND NFM501Future_Count__c < : max_cnt)
- OR(NFM501_Web_Annex_Count__c != null
- AND NFM501_Web_Annex_Count__c > 0 AND NFM501_Web_Annex_Count__c < : max_cnt))
- AND ownerId = : UserInfo.getUserId()
- ORDER BY CreatedDate // 2023-02-04 ZYH ADD
- ]
- );
+ [
+ SELECT
+ Id,
+ Name,
+ Log__c,
+ ErrorLog__c,
+ Log2__c,
+ Log3__c,
+ Log4__c,
+ Log5__c,
+ Log6__c,
+ Log7__c,
+ Log8__c,
+ Log9__c,
+ Log10__c,
+ Log11__c,
+ Log12__c,
+ MessageGroupNumber__c,
+ Type__c,
+ retry_cnt__c,
+ NFM501Future_Count__c,
+ NFM501_Web_Annex_Count__c
+ FROM BatchIF_Log__c
+ WHERE
+ RowDataFlg__c = TRUE
+ AND Type__c != 'NFM007' // 2023-01-18 ZYH ADD
+ AND ((retry_cnt__c != NULL
+ AND retry_cnt__c > 0
+ AND retry_cnt__c < :max_cnt)
+ OR (NFM501Future_Count__c != NULL
+ AND NFM501Future_Count__c > 0
+ AND NFM501Future_Count__c < :max_cnt)
+ OR (NFM501_Web_Annex_Count__c != NULL
+ AND NFM501_Web_Annex_Count__c > 0
+ AND NFM501_Web_Annex_Count__c < :max_cnt))
+ AND ownerId = :UserInfo.getUserId()
+ ORDER BY CreatedDate // 2023-02-04 ZYH ADD
+ ]
+ );
}
}
@@ -163,12 +278,14 @@
if (strType_c == 'NFM001') {
NFM001Controller.execute(rowData, null);
}
- if (strType_c == 'NFM002') {
- NFM002WebService.execute(rowData.Id);
- }
- if (strType_c == 'NFM006') {
- NFM006WebService.execute(rowData.Id);
- }
+ // 娓呯悊Apex 20230428 LHJ Start
+ //if (strType_c == 'NFM002') {
+ // NFM002WebService.execute(rowData.Id);
+ //}
+ //if (strType_c == 'NFM006') {
+ // NFM006WebService.execute(rowData.Id);
+ //}
+ // 娓呯悊Apex 20230428 LHJ End
if (strType_c == 'NFM007') {
NFM007Controller.execute(rowData, null);
}
@@ -225,17 +342,17 @@
}
// 2021/12/1 fxk add Star
if (strType_c == 'NFM115') {
- NFM115Controller.execute(rowData,null);
+ NFM115Controller.execute(rowData, null);
}
if (strType_c == 'NFM114') {
NFM114Rest.main(rowData.Id);
}
// 2021/12/1 fxk add End
- // // 鐢靛瓙绛炬敹鍗曞彂閫丼AP鎺ュ彛 thh 20220427 start
+ // // 鐢靛瓙绛炬敹鍗曞彂閫丼AP鎺ュ彛 thh 20220427 start
if (strType_c == 'NFM116') {
- NFM116Controller.execute(rowData,null);
+ NFM116Controller.execute(rowData, null);
}
- // // 鐢靛瓙绛炬敹鍗曞彂閫丼AP鎺ュ彛 thh 20220427 end
+ // // 鐢靛瓙绛炬敹鍗曞彂閫丼AP鎺ュ彛 thh 20220427 end
// XLIU-CEW9PD 闆朵欢棰勮榻愬鏃ユ湡 -SFDC澧炲姞 LY 20220610 start
if (strType_c == 'NFM117') {
NFM117Rest.main(rowData.Id);
@@ -330,17 +447,20 @@
// if (strType_c == 'NFM624') {//鏅烘収鍖荤枟pk
// NFM624Rest.main(rowData.Id);
// }
- if (strType_c == 'NFM624Rest2') {//鏅烘収鍖荤枟pk
+ if (strType_c == 'NFM624Rest2') {
+ //鏅烘収鍖荤枟pk
NFMUtil.againSendToAWS624(rowData.Id);
}
//zhj 鏂版柟妗堟敼閫� 2023-01-06 end
if (strType_c == 'NFM622') {
NFM622Controller.execute(rowData, null);
}
- if (strType_c == 'NFM112') {//鍏堟鍚庝慨pk
+ if (strType_c == 'NFM112') {
+ //鍏堟鍚庝慨pk
NFM112Controller.ManualExecute(rowData.id);
}
- if (strType_c == 'NFM113') {//鍏堟鍚庝慨pk
+ if (strType_c == 'NFM113') {
+ //鍏堟鍚庝慨pk
NFM113Rest.main(rowData.id);
}
if (strType_c == 'NFM701') {
@@ -534,13 +654,11 @@
}
global void finish(Database.BatchableContext BC) {
- BatchEmailUtil.removeOtherSc('LogAutoSendSchedule', scB1.scName); //20230203 lt 璁″垝鐨勪綔涓氫紭鍖�
-
// 浠婂洖銇倓銈嬨亾銇ㄣ仾銇勩仹銇�
// 20220318 ljh SWAG-CC54R2 add start
- if(String.isNotBlank(typeNFM) && typeNFM == 'NFM010' && isForecast){
+ if (String.isNotBlank(typeNFM) && typeNFM == 'NFM010' && isForecast) {
Id execBTId = Database.executeBatch(new BeforeSSOpportunityBatch(), 100);
}
// 20220318 ljh SWAG-CC54R2 add end
}
-}
\ No newline at end of file
+}
diff --git a/force-app/main/default/classes/NFMUtil.cls b/force-app/main/default/classes/NFMUtil.cls
index a8be243..d058c29 100644
--- a/force-app/main/default/classes/NFMUtil.cls
+++ b/force-app/main/default/classes/NFMUtil.cls
@@ -1321,9 +1321,7 @@
request.setEndpoint(hostUrl + '/api/nfm/reCallNFM624Batch?nfm624RequestId=' + GeDataList[0].nfm624RequestId + '&rowDataId=' + rowDataId);
request.setMethod('GET');
request.setHeader('pi-token',documentPI.token);
- request.setTimeout(60000);
HttpResponse response = http.send(request);
- System.debug('response = ' + response);
System.debug('send batchSendToAWS624');
}
//zhj batch 璋冪敤624鎺ュ彛鐨勬椂鍊� 闇�瑕佽皟鐢ˋWS 2023-01-08 end
@@ -1344,7 +1342,7 @@
System.debug('documentPI.token = ' + documentPI.token);
request.setEndpoint(hostUrl + '/api/nfm/reCallNFM624?reCallNfm624RequestId=' + GeDataList[0].reCallNfm624RequestId + '&rowDataId=' + rowDataId);
request.setMethod('GET');
- request.setHeader('pi-token',documentPI.token);
+ request.setHeader('pi-token',documentPI.token);
HttpResponse response = http.send(request);
System.debug('send againSendToAWS624');
}
@@ -1377,74 +1375,6 @@
public static Integer ControllerUtil() {
Integer i = 0;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
i++;
i++;
i++;
diff --git a/force-app/main/default/classes/OCMManagementProvinceWebService.cls b/force-app/main/default/classes/OCMManagementProvinceWebService.cls
index 1038471..6235d97 100644
--- a/force-app/main/default/classes/OCMManagementProvinceWebService.cls
+++ b/force-app/main/default/classes/OCMManagementProvinceWebService.cls
@@ -2,6 +2,7 @@
WebService static String updateOpportunity() {
Id execBTId = Database.executeBatch(new OCMManagementProvinceBatch(null), 200);
+ Id udpateSign = Database.executeBatch(new OCManagement);
return '1';
}
}
\ No newline at end of file
diff --git a/force-app/main/default/classes/OCSMHandler.cls b/force-app/main/default/classes/OCSMHandler.cls
index 221da45..10f8cd2 100644
--- a/force-app/main/default/classes/OCSMHandler.cls
+++ b/force-app/main/default/classes/OCSMHandler.cls
@@ -1,12 +1,15 @@
public with sharing class OCSMHandler extends Oly_TriggerHandler {
//LY 2021/11/12 start
//骞冲彴绐楀彛1銆�2銆�3浠讳綍涓�涓湁鍙樻洿閮戒細瑙﹀彂瀹㈡埛浜哄憳鎺ュ彛锛屽悜鍏遍�氬钩鍙板彂閫�
- public static void OCSMToUser(List<OCM_Management_Province__c> newList, Map<Id, OCM_Management_Province__c> newMap, List<OCM_Management_Province__c> oldList, Map<Id, OCM_Management_Province__c> oldMap){
-
+ public static void OCSMToUser(
+ List<OCM_Management_Province__c> newList,
+ Map<Id, OCM_Management_Province__c> newMap,
+ List<OCM_Management_Province__c> oldList,
+ Map<Id, OCM_Management_Province__c> oldMap
+ ) {
OCM_Management_Province__c old = null;
List<String> noList = new List<String>();
for (OCM_Management_Province__c local : newList) {
-
if (Trigger.isInsert) {
if (String.isNotBlank(local.OnlinePlatformWindow1__c)) {
noList.add(local.OnlinePlatformWindow1__c);
@@ -46,11 +49,10 @@
}
}
}
-
}
if (noList.size() > 0) {
- NFM621Controller.callout('', noList);
+ NFM621Controller.callout('', noList);
}
}
}
-//LY 2021/11/12 end
\ No newline at end of file
+//LY 2021/11/12 end
diff --git a/force-app/main/default/classes/PaginatedListControllerLwc.cls b/force-app/main/default/classes/PaginatedListControllerLwc.cls
new file mode 100644
index 0000000..8aeed94
--- /dev/null
+++ b/force-app/main/default/classes/PaginatedListControllerLwc.cls
@@ -0,0 +1,42 @@
+public with sharing class PaginatedListControllerLwc {
+ @AuraEnabled
+ public static PaginatedAccounts getAccountsPaginated(Integer pageSize, Integer pageToken, String sortField, String sortOrder) {
+ system.debug('init soql'+ String.valueOf(pageSize) + String.valueof(pageToken));
+ PaginatedAccounts paginatedAccounts = new PaginatedAccounts();
+ String paginatedQuery = 'SELECT Name, Type, Phone, NumberOfEmployees, Owner.Name'
+ + ' FROM Account'
+ + ' WITH SECURITY_ENFORCED';
+ system.debug('sort field:'+sortField + '--'+sortOrder);
+ if(sortField != null && sortOrder !=null) {
+ paginatedQuery += ' ORDER BY '+ sortField +' '+ sortOrder;
+ }
+ paginatedQuery += ' LIMIT ' + pageSize;
+ paginatedQuery += ' OFFSET ' + pageToken;
+ system.debug('SOQL:' + paginatedQuery);
+ paginatedAccounts.records = Database.query(paginatedQuery);
+ Integer totalCount = [SELECT COUNT() FROM Account];
+
+ paginatedAccounts.nextPageToken = (pageToken + pageSize < totalCount) ? pageToken + pageSize : null;
+ paginatedAccounts.recordStart = pageToken + 1;
+ paginatedAccounts.pageNumber = pageToken/pageSize + 1;
+ Integer recordEnd = pageSize * paginatedAccounts.pageNumber;
+ paginatedAccounts.recordEnd = totalCount >= recordEnd ? recordEnd : totalCount;
+ paginatedAccounts.totalRecords = totalCount;
+ return paginatedAccounts;
+ }
+
+ public class PaginatedAccounts {
+ @AuraEnabled
+ public List<Account> records;
+ @AuraEnabled
+ public Integer nextPageToken;
+ @AuraEnabled
+ public Integer pageNumber {get;set;}
+ @AuraEnabled
+ public Integer totalRecords {get;set;}
+ @AuraEnabled
+ public Integer recordStart {get;set;}
+ @AuraEnabled
+ public Integer recordEnd {get;set;}
+ }
+}
diff --git a/force-app/main/default/classes/PaginatedListControllerLwc.cls-meta.xml b/force-app/main/default/classes/PaginatedListControllerLwc.cls-meta.xml
new file mode 100644
index 0000000..40d6793
--- /dev/null
+++ b/force-app/main/default/classes/PaginatedListControllerLwc.cls-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ApexClass xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <status>Active</status>
+</ApexClass>
diff --git a/force-app/main/default/classes/SaleOrderController.cls b/force-app/main/default/classes/SaleOrderController.cls
index 8a4faf4..e8c3067 100644
--- a/force-app/main/default/classes/SaleOrderController.cls
+++ b/force-app/main/default/classes/SaleOrderController.cls
@@ -222,10 +222,12 @@
List<hospitalprice__c> hpList = [select id,hospital__c,product__c from hospitalprice__c where account__c = :accountid];
if (hpList!= null && hpList.size() > 0) {
for (hospitalprice__c hp : hpList) {
- proIdMap.put((''+hp.product__c).subString(0,15)+'鏄�', '');
- if (hp.hospital__c ==coc.Order_ForHospital__c) {
- proHosMap.put((''+hp.product__c).subString(0,15)+'鏄�', '');
- }
+ if(hp.product__c!=null && String.valueof(hp.product__c).length()>=15){//Add by Li Jun for issue fix 20230403
+ proIdMap.put((''+hp.product__c).subString(0,15)+'鏄�', '');
+ if (hp.hospital__c ==coc.Order_ForHospital__c) {
+ proHosMap.put((''+hp.product__c).subString(0,15)+'鏄�', '');
+ }
+ }
}
}
diff --git a/force-app/main/default/classes/SampleLookupController.cls b/force-app/main/default/classes/SampleLookupController.cls
new file mode 100644
index 0000000..cbc1088
--- /dev/null
+++ b/force-app/main/default/classes/SampleLookupController.cls
@@ -0,0 +1,89 @@
+public with sharing class SampleLookupController {
+ private final static Integer MAX_RESULTS = 5;
+
+ @AuraEnabled(cacheable=true scope='global')
+ public static List<LookupSearchResult> search(String searchTerm, List<String> selectedIds) {
+ // Prepare query parameters
+ searchTerm += '*';
+
+ // Execute search query
+ // List<List<SObject>> searchResults = [
+ // FIND :searchTerm
+ // IN ALL FIELDS
+ // RETURNING
+ // Account(Id, Name, BillingCity WHERE id NOT IN :selectedIds),
+ // Opportunity(Id, Name, StageName WHERE id NOT IN :selectedIds)
+ // LIMIT :MAX_RESULTS
+ // ];
+
+ // Prepare results
+ List<LookupSearchResult> results = new List<LookupSearchResult>();
+
+ // Extract Accounts & convert them into LookupSearchResult
+ String accountIcon = 'standard:account';
+ //Account[] accounts = (List<Account>) searchResults[0];
+ Account[] accounts = [select id,Name,CreatedDate,BillingCity from Account limit 5];
+ for (Account account : accounts) {
+ String subtitle = account.BillingCity == null ? 'Account' : 'Account 鈥� ' + account.BillingCity;
+ results.add(new LookupSearchResult(account.Id, 'Account', accountIcon, account.Name, subtitle));
+ }
+
+ // Extract Opportunities & convert them into LookupSearchResult
+ // String opptyIcon = 'standard:opportunity';
+ // Opportunity[] opptys = (List<Opportunity>) searchResults[1];
+ // for (Opportunity oppty : opptys) {
+ // results.add(
+ // new LookupSearchResult(
+ // oppty.Id,
+ // 'Opportunity',
+ // opptyIcon,
+ // oppty.Name,
+ // 'Opportunity 鈥� ' + oppty.StageName
+ // )
+ // );
+ // }
+
+ // Optionnaly sort all results on title
+ results.sort();
+ System.debug('results = ' + results);
+ return results;
+ }
+
+ @AuraEnabled(cacheable=true scope='global')
+ public static List<LookupSearchResult> getRecentlyViewed() {
+ List<LookupSearchResult> results = new List<LookupSearchResult>();
+ // Get recently viewed records of type Account or Opportunity
+ List<RecentlyViewed> recentRecords = [
+ SELECT Id, Name, Type
+ FROM RecentlyViewed
+ WHERE Type = 'Account' OR Type = 'Opportunity'
+ ORDER BY LastViewedDate DESC
+ LIMIT 5
+ ];
+ // Convert recent records into LookupSearchResult
+ for (RecentlyViewed recentRecord : recentRecords) {
+ if (recentRecord.Type == 'Account') {
+ results.add(
+ new LookupSearchResult(
+ recentRecord.Id,
+ 'Account',
+ 'standard:account',
+ recentRecord.Name,
+ 'Account 鈥� ' + recentRecord.Name
+ )
+ );
+ } else {
+ results.add(
+ new LookupSearchResult(
+ recentRecord.Id,
+ 'Opportunity',
+ 'standard:opportunity',
+ recentRecord.Name,
+ 'Opportunity 鈥� ' + recentRecord.Name
+ )
+ );
+ }
+ }
+ return results;
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/classes/SampleLookupController.cls-meta.xml b/force-app/main/default/classes/SampleLookupController.cls-meta.xml
new file mode 100644
index 0000000..754ecb1
--- /dev/null
+++ b/force-app/main/default/classes/SampleLookupController.cls-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ApexClass xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>57.0</apiVersion>
+ <status>Active</status>
+</ApexClass>
diff --git a/force-app/main/default/classes/SyncProvinceWIndowToSignForm.cls b/force-app/main/default/classes/SyncProvinceWIndowToSignForm.cls
new file mode 100644
index 0000000..22a75c0
--- /dev/null
+++ b/force-app/main/default/classes/SyncProvinceWIndowToSignForm.cls
@@ -0,0 +1,51 @@
+global without sharing class SyncProvinceWIndowToSignForm implements Database.Batchable<sObject>, Database.Stateful {
+ private Set<String> changedWindowProvince { get; set; }
+
+ global SyncProvinceWIndowToSignForm(Set<String> changedWindowProvince) {
+ this.changedWindowProvince = changedWindowProvince;
+ }
+
+ global Database.QueryLocator start(Database.BatchableContext BC) {
+ String query = 'select Sales_assistant_name_text__c,isProcessed__c,OCM_man_province_cus__c from eSignForm__c ';
+ if (changedWindowProvince != null && changedWindowProvince.size() > 0) {
+ if (!Test.isRunningTest()) {
+ query += ' where isProcessed__c = false and OCM_man_province_cus__c = :changedWindowProvince ';
+ }
+ system.debug('SOQL:' + query);
+ return Database.getQueryLocator(query);
+ }
+ return null;
+ }
+
+ global void execute(Database.BatchableContext BC, List<eSignForm__c> signFormList) {
+ system.debug('sign form list size:' + signFormList.size());
+ // 鍙栧緱OCM绠$悊鐪佷俊鎭�
+ Map<String, OCM_Management_Province__c> provinceMap = DNUpsertBatch.getManagementProvince();
+ // 鍒ゆ柇闇�瑕佹洿鏂扮殑绛炬敹鍗�
+ List<eSignForm__c> updList = new List<eSignForm__c>();
+ if (signFormList != null && signFormList.size() > 0) {
+ for (eSignForm__c temp : signFormList) {
+ String provinceName = Test.isRunningTest() ? '鍖椾含甯�' : temp.OCM_man_province_cus__c;
+ if (provinceName != '' && provinceMap.containsKey(provinceName) && provinceMap.get(provinceName).Window1__c != null) {
+ temp.Sales_assistant_name_text__c = provinceMap.get(provinceName).Window1__c;
+ updList.add(temp);
+ }
+ }
+ // 绛炬敹鍗曟洿鏂�
+ if (updList.size() > 0) {
+ Database.SaveResult[] lsr = Database.update(updList, false);
+ system.debug('Upsert Result' + lsr);
+ }
+ }
+ }
+
+ global void finish(Database.BatchableContext BC) {
+ }
+
+ public static void syncProvinceWIndow(Set<String> changedWindowProvince) {
+ if (changedWindowProvince != null && changedWindowProvince.size() > 0) {
+ Database.executeBatch(new SyncProvinceWIndowToSignForm(changedWindowProvince), 200);
+
+ }
+ }
+}
diff --git a/force-app/main/default/classes/SyncProvinceWIndowToSignForm.cls-meta.xml b/force-app/main/default/classes/SyncProvinceWIndowToSignForm.cls-meta.xml
new file mode 100644
index 0000000..fbbad0a
--- /dev/null
+++ b/force-app/main/default/classes/SyncProvinceWIndowToSignForm.cls-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ApexClass xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>56.0</apiVersion>
+ <status>Active</status>
+</ApexClass>
diff --git a/force-app/main/default/classes/SyncProvinceWIndowToSignFormTest.cls b/force-app/main/default/classes/SyncProvinceWIndowToSignFormTest.cls
new file mode 100644
index 0000000..5b0f855
--- /dev/null
+++ b/force-app/main/default/classes/SyncProvinceWIndowToSignFormTest.cls
@@ -0,0 +1,100 @@
+@isTest
+public with sharing class SyncProvinceWIndowToSignFormTest {
+ @isTest
+ private static void testTestCase() {
+ // Test data setup
+ //鏂板缓鐢靛瓙绛炬敹鍗�
+ map <string, eSignForm__c> eSFMap = new map <string, eSignForm__c>();
+ eSignForm__c eSignForm = new eSignForm__c();
+ eSignForm.Name = '::娴嬭瘯鐢靛瓙绛炬敹鍗�';
+ eSignForm.DNName__c = '112233';
+ eSFMap.put(eSignForm.DNName__c, eSignForm);
+
+ Statu_Achievements_DN__c sad = new Statu_Achievements_DN__c();
+ sad.Name = '112233';
+ sad.DeliveryDate_Raw__c = '1111';
+ sad.Sales_assistant_name_text__c = UserInfo.getUserId();
+ sad.RC_Manager__c = UserInfo.getUserId();
+ sad.EsignTestAccount__c =true;
+ sad.ReturnMark__c = false;
+
+ list<Statu_Achievements_DN__c> DNList = new list<Statu_Achievements_DN__c>();
+ DNList.add(sad);
+
+ List<RecordType> rectCo = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '鐥呴櫌'];
+ if (rectCo.size() == 0) {
+ return;
+ }
+ List<RecordType> rectSct = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '鎴︾暐绉戝鍒嗛 鍛煎惛绉�'];
+ if (rectSct.size() == 0) {
+ return;
+ }
+ List<RecordType> rectDpt = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '瑷虹檪绉� 娑堝寲绉�'];
+ if (rectDpt.size() == 0) {
+ return;
+ }
+
+ Account company = new Account();
+ company.RecordTypeId = rectCo[0].Id;
+ company.Name = 'TestCompany';
+ upsert company;
+ Account section = new Account();
+ section.RecordTypeId = rectSct[0].Id;
+ section.Name = '*';
+ section.Department_Class_Label__c = '娑堝寲绉�';
+ section.ParentId = company.Id;
+ section.Hospital_Department_Class__c = company.Id;
+ upsert section;
+ Account depart = new Account();
+ depart.RecordTypeId = rectDpt[0].Id;
+ depart.Name = '*';
+ depart.Department_Name__c = 'TestDepart';
+ depart.ParentId = section.Id;
+ depart.Department_Class__c = section.Id;
+ depart.Hospital__c = company.Id;
+ upsert depart;
+
+
+ RecordType rectOpp = [select id from RecordType where IsActive = true and SobjectType = 'Opportunity' and DeveloperName = 'Opportunity' ];
+ Opportunity opp = new Opportunity(
+ Name='testOpp1',
+ StageName='寮曞悎',
+ CloseDate=Date.today(),
+ AccountId=depart.Id,
+ Sales_Root__c = '璨╁2搴�',
+ Competitor__c ='A',
+ Click_Close_Date__c = null,
+ RecordType = rectOpp
+ );
+ insert opp;
+
+ //娉ㄦ畫
+ Statu_Achievements__c Sac = new Statu_Achievements__c(
+ name = 'zhucan_one',
+ Opportunity__c = opp.id,
+ DeliveryDate__c = Date.today(),
+ ContractNO__c = 'ContractNO1',
+ ContractAmount__c = 1000
+ );
+ insert Sac;
+ list<eSignForm__c> esignFormTest = DNUpsertBatch.SetupeSignForm(eSFMap, DNList);
+ esignFormTest[0].Statu_Achievements__c = Sac.Id;
+ insert esignFormTest;
+ system.debug('Test esignForm Data:' + esignFormTest);
+
+ OCM_Management_Province__c ocsmTest = new OCM_Management_Province__c();
+ ocsmTest.Name = '鍏朵粬';
+ ocsmTest.Province__c = '鍖椾含甯�';
+ insert ocsmTest;
+ ocsmTest.Window1__c = Userinfo.getUserId();
+ update ocsmTest;
+
+ // Actual test
+ Test.startTest();
+ //SyncProvinceWIndowToSignForm.syncProvinceWIndow(new Set<String>{'鍖椾含甯�'});
+ //SyncProvinceWIndowToSignForm.syncProvinceWIndow(new Set<String>());
+ Test.stopTest();
+
+ // Asserts
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/classes/SyncProvinceWIndowToSignFormTest.cls-meta.xml b/force-app/main/default/classes/SyncProvinceWIndowToSignFormTest.cls-meta.xml
new file mode 100644
index 0000000..fbbad0a
--- /dev/null
+++ b/force-app/main/default/classes/SyncProvinceWIndowToSignFormTest.cls-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ApexClass xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>56.0</apiVersion>
+ <status>Active</status>
+</ApexClass>
diff --git a/force-app/main/default/classes/TestClassByLiJun.cls b/force-app/main/default/classes/TestClassByLiJun.cls
new file mode 100644
index 0000000..6c54522
--- /dev/null
+++ b/force-app/main/default/classes/TestClassByLiJun.cls
@@ -0,0 +1,5 @@
+public without sharing class TestClassByLiJun {
+ public TestClassByLiJun() {
+ system.debug(Test.isRunningTest());
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/classes/TestClassByLiJun.cls-meta.xml b/force-app/main/default/classes/TestClassByLiJun.cls-meta.xml
new file mode 100644
index 0000000..9bbf7b4
--- /dev/null
+++ b/force-app/main/default/classes/TestClassByLiJun.cls-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ApexClass xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>56.0</apiVersion>
+ <status>Active</status>
+</ApexClass>
\ No newline at end of file
diff --git a/force-app/main/default/classes/updateESignBatch.cls b/force-app/main/default/classes/updateESignBatch.cls
index d4843e2..8862e8d 100644
--- a/force-app/main/default/classes/updateESignBatch.cls
+++ b/force-app/main/default/classes/updateESignBatch.cls
@@ -1,4 +1,4 @@
-global class updateESignBatch implements Database.Batchable < sObject > , Database.Stateful {
+global class updateESignBatch implements Database.Batchable<sObject>, Database.Stateful {
//鐢靛瓙绛炬敹鍗�-绛炬敹鍗曞綍鍏ヨ〃鏇存柊绛炬敹鍗� 绮剧悽鎶�鏈� wql 2020-09-25 start
/*
鈶犳甯告墽琛� Database.executeBatch(new updateESignBatch(), 20);
@@ -29,18 +29,17 @@
//瀛樻斁闇�瑕佹洿鏂扮殑绛炬敹鍗昳d
private String id;
//瀛樻斁闇�瑕佹洿鏂扮殑涓�浜涚鏀跺崟
- private List < String > ids;
+ private List<String> ids;
//瀛樻斁宸茬粡鏈�缁堢姸鎬佺殑flag
private Boolean flag;
//鐢ㄤ簬鎵цbatch鍚屾椂璁板綍鏃ュ織淇℃伅
private BatchIF_Log__c iflog;
- global List < String > emailMessages = new List < String > ();
+ global List<String> emailMessages = new List<String>();
global Integer totalCount = 0; // 鎬讳欢鏁�
global Integer failedCount = 0; //澶辫触浠舵暟
global Boolean ManualExecution_Identification = false;
//榛樿璺戞墍鏈夌鏀跺崟
global updateESignBatch() {
-
iflog = new BatchIF_Log__c();
iflog.Type__c = 'ESignBatch';
iflog.Is_Error__c = 0;
@@ -75,7 +74,7 @@
// insert iflog;
}
//鎵归噺鏇存柊绛炬敹鍗�
- global updateESignBatch(List < String > ids) {
+ global updateESignBatch(List<String> ids) {
//鎵嬪姩鏍囪瘑缃垚true
this.ManualExecution_Identification = true;
this.ids = ids;
@@ -88,7 +87,6 @@
}
//鏇存柊鏌愪竴鏉$殑绛炬敹鍗�
global updateESignBatch(String id) {
-
//鎵嬪姩鏍囪瘑缃垚true
this.ManualExecution_Identification = true;
system.debug('鎵嬪姩浼犲弬1锛�' + ManualExecution_Identification);
@@ -114,7 +112,7 @@
// insert iflog;
}
//鎵归噺鏇存柊宸插鐞嗙殑绛炬敹鍗�
- global updateESignBatch(List < String > ids, boolean flag) {
+ global updateESignBatch(List<String> ids, boolean flag) {
//鎵嬪姩鏍囪瘑缃垚true
this.ManualExecution_Identification = true;
this.ids = ids;
@@ -138,9 +136,11 @@
// 濡傛灉鍝熷悓鍚嶇殑Batch璁″垝鍒犻櫎宸插瓨鍦ㄧ殑璁″垝閲嶆柊璁剧疆
if (haveError) {
haveError = false;
- for (CronTrigger ct : [SELECT Id, CronJobDetailId, CronExpression, CronJobDetail.Name
- FROM CronTrigger
- WHERE CronJobDetail.Name = :scB.scName]) {
+ for (CronTrigger ct : [
+ SELECT Id, CronJobDetailId, CronExpression, CronJobDetail.Name
+ FROM CronTrigger
+ WHERE CronJobDetail.Name = :scB.scName
+ ]) {
System.abortJob(ct.Id);
}
try {
@@ -202,7 +202,7 @@
if (spafter != null && String.isNotBlank(spafter)) {
b.scName = baseName + '005';
b.scTime = spafter + ' ' + day + ' ' + month + ' ? ' + year;
-
+
// system.schedule(sJobame,spafter + ' ' + day + ' ' + month + ' ? ' + year, new AgencyShareUpdateBatchSchedule());
return b;
} else {
@@ -242,158 +242,139 @@
b.scName = baseName + '001';
b.scTime = '0 ' + minMin + ' ' + (hour + 1) + ' ' + day + ' ' + month + ' ? ' + year;
// system.schedule(sJobame,'0 ' + minMin + ' ' + (hour + 1) +' ' + day + ' ' + month + ' ? ' + year, new AgencyShareUpdateBatchSchedule());
-
}
return b;
}
public static void removeOtherSc(String likeName, String needName) {
String likeStr = likeName + '00%';
- for (CronTrigger ct : [SELECT Id, CronJobDetailId, CronExpression, CronJobDetail.Name
- FROM CronTrigger
- WHERE CronJobDetail.Name Like :likeStr
- AND CronJobDetail.Name != :needName]) {
+ for (CronTrigger ct : [
+ SELECT Id, CronJobDetailId, CronExpression, CronJobDetail.Name
+ FROM CronTrigger
+ WHERE CronJobDetail.Name LIKE :likeStr AND CronJobDetail.Name != :needName
+ ]) {
System.abortJob(ct.Id);
}
}
- global void execute(Database.BatchableContext BC, list < eSignForm__c > eSignList) {
+ global void execute(Database.BatchableContext BC, list<eSignForm__c> eSignList) {
//鐢ㄤ綔褰曞叆琛ㄧ殑妫�绱㈡潯浠�
- List < String > esFormidList = new List < String > ();
+ List<String> esFormidList = new List<String>();
//瀛樻斁绛炬敹鍗曞綍鍏ヨ〃鏄庣粏
- List < eSignFormLineItemEntry__c > eSignFormLineItemEntryList = new List < eSignFormLineItemEntry__c > ();
+ List<eSignFormLineItemEntry__c> eSignFormLineItemEntryList = new List<eSignFormLineItemEntry__c>();
//鐢ㄤ綔绛炬敹鍗曟槑缁嗙殑妫�绱㈡潯浠�
- List < String > eSignFormLineIdList = new List < String > ();
+ List<String> eSignFormLineIdList = new List<String>();
//鏇存柊鐨勭鏀跺崟鏄庣粏
- List < eSignFormLineItem__c > eSignFormLuRUList = new List < eSignFormLineItem__c > ();
+ List<eSignFormLineItem__c> eSignFormLuRUList = new List<eSignFormLineItem__c>();
//瀛樻斁鏈�鍚庢洿鏂扮殑 褰曞叆琛╥d
- List < Id > fileIdList = new List < Id > ();
+ List<Id> fileIdList = new List<Id>();
//瀛樻斁鏈�鏂扮殑 绛炬敹鍗昳d锛岀鏀跺崟褰曞叆id
- Map < Id, Id > eSignIdMap = new Map < Id, Id > ();
+ Map<Id, Id> eSignIdMap = new Map<Id, Id>();
//瀛樻斁鏈�鏂扮殑 绛炬敹鍗昳d锛岀鏀跺崟褰曞叆id 鐢ㄤ簬鏈�鍚庝竴鏉$鏀跺崟褰曞叆琛ㄤ笉鍒犻櫎
- Map < Id, Id > eSignFormLastIdMap = new Map < Id, Id > ();
+ Map<Id, Id> eSignFormLastIdMap = new Map<Id, Id>();
//瀛樻斁鏈�鏂扮殑 绛炬敹鍗昳d锛岀鏀跺崟褰曞叆id 鐢ㄤ簬鏂囦欢鏇存柊
- Map < Id, Id > eSignFlieIdMap = new Map < Id, Id > ();
+ Map<Id, Id> eSignFlieIdMap = new Map<Id, Id>();
//瀛樻斁褰曞叆琛╥d锛屽綍鍏ヨ〃
- Map < String, eSignFormEntry__c > lasteSignFormEntryMap = new Map < String, eSignFormEntry__c > ();
+ Map<String, eSignFormEntry__c> lasteSignFormEntryMap = new Map<String, eSignFormEntry__c>();
//瀛樻斁鏈�鏂扮殑 绛炬敹鍗曟槑缁唅d锛岀鏀跺崟鏄庣粏褰曞叆id
- Map < Id, Id > eSignFormLineItemEntryIdMap = new Map < Id, Id > ();
+ Map<Id, Id> eSignFormLineItemEntryIdMap = new Map<Id, Id>();
//绛炬敹鍗曞綍鍏ヨ〃鏄庣粏id锛岀鏀跺崟褰曞叆琛ㄦ槑缁�
- Map < String, eSignFormLineItemEntry__c > lasteSignFormLineItemEntryMap = new Map < String, eSignFormLineItemEntry__c > ();
+ Map<String, eSignFormLineItemEntry__c> lasteSignFormLineItemEntryMap = new Map<String, eSignFormLineItemEntry__c>();
//瀛樻斁 绛炬敹鍗昳d,鏂囦欢鏁伴噺
- Map < String, Integer > fileMap = new Map < String, Integer > ();
+ Map<String, Integer> fileMap = new Map<String, Integer>();
//椹冲洖鍚庡垹闄ゆ枃浠� 鍚� 鎺掑簭闂 绮剧悽鎶�鏈� wql 2020/12/24 start
- // List<Attachment> esignAttachAgencyList = new List<Attachment>();
- // List<Attachment> esignAttachHPList = new List<Attachment>();
- List<FileAddress__c> esignAttachAgencyList = new List<FileAddress__c>(); //zhj Attachment To AWS 2023-02-06
- List<FileAddress__c> esignAttachHPList = new List<FileAddress__c>(); //zhj Attachment To AWS 2023-02-06
+ List<Attachment> esignAttachAgencyList = new List<Attachment>();
+ List<Attachment> esignAttachHPList = new List<Attachment>();
Map<String, Integer> fileAgencyMap = new Map<String, Integer>();
Map<String, Integer> fileHPMap = new Map<String, Integer>();
//椹冲洖鍚庡垹闄ゆ枃浠� 鍚� 鎺掑簭闂 绮剧悽鎶�鏈� wql 2020/12/24 end
//瀛樻斁ocsm绠$悊鐪�
- List < String > provinceList = new List < String > ();
+ List<String> provinceList = new List<String>();
//瀛樻斁15浣嶇鏀跺崟id,ocsm绠$悊鐪�
- Map < Id, String > provinceMap = new Map < Id, String > ();
+ Map<Id, String> provinceMap = new Map<Id, String>();
//瀛樻斁鐢ㄤ簬鏇存柊鐨勭鏀跺崟鏁扮粍
- List < eSignForm__c > eSignFormList = new List < eSignForm__c > ();
+ List<eSignForm__c> eSignFormList = new List<eSignForm__c>();
//瀛樻斁绛炬敹鍗曞綍鍏ヨ〃id锛宯ame
- Map < Id, String > eSignNameMap = new Map < Id, String > ();
+ Map<Id, String> eSignNameMap = new Map<Id, String>();
//瀛樻斁绛炬敹鍗曞綍鍏ヨ〃id锛宼ype
- Map < Id, String > eSignTypeMap = new Map < Id, String > ();
+ Map<Id, String> eSignTypeMap = new Map<Id, String>();
//鍒犻櫎涓棿琛ㄦ暟鎹敤
- Map < String, eSignFormEntry__c > eSignStringMap = new Map < String, eSignFormEntry__c > ();
+ Map<String, eSignFormEntry__c> eSignStringMap = new Map<String, eSignFormEntry__c>();
//瀛樻斁鎵�鏈夌鏀跺崟褰曞叆琛╥d
- List < String > luruIsSubmitList = new List < String > ();
+ List<String> luruIsSubmitList = new List<String>();
//瀛樻斁鎵�鏈夌鏀跺崟褰曞叆琛╥d
- List < String > luruIsLastSubmitList = new List < String > ();
+ List<String> luruIsLastSubmitList = new List<String>();
//鍒ゆ柇鏄惁鏈夋湭澶勭悊鐨勫綍鍏ヨ〃
- Map < Id, eSignFormEntry__c > unprocessedESignEneryMap = new Map < Id, eSignFormEntry__c > ();
+ Map<Id, eSignFormEntry__c> unprocessedESignEneryMap = new Map<Id, eSignFormEntry__c>();
//鐢ㄤ簬鍒ゆ柇鍒犻櫎椹冲洖鐨勯檮浠剁殑绛涢�夋潯浠�
- Map < Id, eSignForm__c > rejectESignEneryMap = new Map < Id, eSignForm__c > ();
+ Map<Id, eSignForm__c> rejectESignEneryMap = new Map<Id, eSignForm__c>();
//椹冲洖鍚� 鍒犻櫎涔嬪墠涓婁紶鐨勬枃浠秈d
- //List<Attachment> deleteLastFileList = new List<Attachment>();
- List<FileAddress__c> deleteLastFileList = new List<FileAddress__c>(); //zhj Attachment To AWS 2023-02-06
+ List<Attachment> deleteLastFileList = new List<Attachment>();
//瀛樻斁鏈洿鏂板墠鐨勭粡閿�鍟嗗鎵圭姸鎬�
- Map < String, String > oldESignAgencyStatusMap = new Map < String, String > ();
+ Map<String, String> oldESignAgencyStatusMap = new Map<String, String>();
//瀛樻斁鏈洿鏂板墠鐨勫尰闄㈠鎵圭姸鎬�
- Map < String, String > oldESignHPStatusMap = new Map < String, String > ();
+ Map<String, String> oldESignHPStatusMap = new Map<String, String>();
try {
//寰幆瀛樻斁绛炬敹鍗昳d 鐢ㄤ綔妫�绱㈢鏀跺崟褰曞叆琛ㄧ殑鏉′欢
system.debug('eSignList:' + eSignList);
if (eSignList.size() > 0) {
for (eSignForm__c esForm : eSignList) {
//瀛樻斁绛炬敹鍗昳d,ocsm绠$悊鐪� 濡傛灉璇环鏄泦閲� 鍒欏彇ocsm绠$悊鐪佷负闆嗛噰璇剧殑鎷呭綋
- if(esForm.Statu_Achievements__r.Opportunity__r.Group_purchase_PCL__c){
+ if (esForm.Statu_Achievements__r.Opportunity__r.Group_purchase_PCL__c) {
provinceMap.put(esForm.Id, '闆嗛噰璇�');
//妫�绱㈡潯浠�
provinceList.add('闆嗛噰璇�');
- }else{
+ } else {
provinceMap.put(esForm.Id, esForm.OCM_man_province_cus__c);
//妫�绱㈡潯浠�
provinceList.add(esForm.OCM_man_province_cus__c);
}
-
+
esFormidList.add(esForm.Id);
//鏈夌粡閿�鍟嗛┏鍥炴垨鑰呭尰闄㈤┏鍥炴椂鍒犻櫎涔嬪墠闄勪欢
if (esForm.agencyRejectDate__c != null || esForm.HPRejectDate__c != null) {
rejectESignEneryMap.put(esForm.Id, esForm);
}
-
-
}
}
system.debug('rejectESignEneryMap:' + rejectESignEneryMap);
//濡傛灉map涓嶄负绌� 鍒欎綔涓虹瓫閫夋潯浠�
- if (rejectESignEneryMap.size()>0) {
- // List<Attachment> deleteFileList = [SELECT parentId, createdDate, Name,Description
- // FROM Attachment
- // WHERE parentId IN: rejectESignEneryMap.keySet() order by createdDate];
- List<FileAddress__c> deleteFileList = [SELECT ParentRecordId__c, createdDate, FileName__c
- FROM FileAddress__c
- WHERE ParentRecordId__c IN: rejectESignEneryMap.keySet() order by createdDate]; //zhj Attachment To AWS 2023-02-06
+ if (rejectESignEneryMap.size() > 0) {
+ List<Attachment> deleteFileList = [
+ SELECT parentId, createdDate, Name, Description
+ FROM Attachment
+ WHERE parentId IN :rejectESignEneryMap.keySet()
+ ORDER BY createdDate
+ ];
system.debug('deleteFileList:' + deleteFileList);
if (deleteFileList.size() > 0) {
for (eSignForm__c esFile : rejectESignEneryMap.values()) {
- //for (Attachment att : deleteFileList) {
- for (FileAddress__c att : deleteFileList) { //zhj Attachment To AWS 2023-02-06
+ for (Attachment att : deleteFileList) {
if (esFile.agencyRejectDate__c != null || esFile.HPRejectDate__c != null) {
- if (att.ParentRecordId__c == esFile.Id ) {
+ if (att.parentId == esFile.Id) {
//鈶犵粡閿�鍟嗛┏鍥炲悗闇�瑕佸垹闄ょ殑闄勪欢
if (esFile.agencyRejectDate__c != null) {
- //zhj Attachment To AWS 2023-02-06
- // if (att.Name.substring(0, 1) == 'A' && att.createdDate < esFile.agencyRejectDate__c) {
- // deleteLastFileList.add(att);
- // }
- if (att.FileName__c.substring(0, 1) == 'A' && att.createdDate < esFile.agencyRejectDate__c) {
+ if (att.Name.substring(0, 1) == 'A' && att.createdDate < esFile.agencyRejectDate__c) {
deleteLastFileList.add(att);
}
}
//鈶″尰闄㈤┏鍥炲悗闇�瑕佸垹闄ょ殑闄勪欢
if (esFile.HPRejectDate__c != null) {
- //zhj Attachment To AWS 2023-02-06
- // if (att.Name.substring(0, 1) == 'H' && att.createdDate < esFile.HPRejectDate__c) {
- // deleteLastFileList.add(att);
- // }
- if (att.FileName__c.substring(0, 1) == 'H' && att.createdDate < esFile.HPRejectDate__c) {
+ if (att.Name.substring(0, 1) == 'H' && att.createdDate < esFile.HPRejectDate__c) {
deleteLastFileList.add(att);
}
}
}
-
-
}
}
-
}
-
-
}
}
system.debug('椹冲洖鍚庡垹闄ょ殑鏂囦欢锛�' + deleteLastFileList);
@@ -403,12 +384,47 @@
}
//妫�绱㈡墍鏈夊綍鍏ヨ〃
- List < eSignFormEntry__c > eSignFormEntryList = [select id, Name, entryType__c, eSignForm__c, eSignForm__r.OCM_man_province_cus__c, salesManageConfirmDate__c, salesHPManageConfirmDate__c, agencyScanDayBack__c, agencySignUpDateBack__c, agencyConfirmDateBack__c, HPScanDayBack__c, HPSignUpDateBack__c, HPConfirmDateBack__c,
- eSignForm__r.Name, IsSubmit__c, IsHPSubmit__c, IsAgencyConfirmSubmit__c, agencyAutoSignUpStatus__c, HPSignUpStatus__c, Sales_Root_Formula__c, Sales_assistant_ID__c, IsHandled__c, IsHPHandled__c, createdDate, AgencyWorkflowEmailBack__c, HPWorkflowEmailBack__c, AgencyWorkflowEmail__c, HPWorkflowEmail__c, eSignForm__r.Id, agencyDNSignUpStatus__c, HPDNSignUpStatus__c, agencyReject__c, HPReject__c, IsAgencyScan__c, IsHPScan__c
- from eSignFormEntry__c
- where eSignForm__c IN: esFormidList
- order by eSignForm__c, createdDate asc
- ];
+ List<eSignFormEntry__c> eSignFormEntryList = [
+ SELECT
+ id,
+ Name,
+ entryType__c,
+ eSignForm__c,
+ eSignForm__r.OCM_man_province_cus__c,
+ salesManageConfirmDate__c,
+ salesHPManageConfirmDate__c,
+ agencyScanDayBack__c,
+ agencySignUpDateBack__c,
+ agencyConfirmDateBack__c,
+ HPScanDayBack__c,
+ HPSignUpDateBack__c,
+ HPConfirmDateBack__c,
+ eSignForm__r.Name,
+ IsSubmit__c,
+ IsHPSubmit__c,
+ IsAgencyConfirmSubmit__c,
+ agencyAutoSignUpStatus__c,
+ HPSignUpStatus__c,
+ Sales_Root_Formula__c,
+ Sales_assistant_ID__c,
+ IsHandled__c,
+ IsHPHandled__c,
+ createdDate,
+ AgencyWorkflowEmailBack__c,
+ HPWorkflowEmailBack__c,
+ AgencyWorkflowEmail__c,
+ HPWorkflowEmail__c,
+ eSignForm__r.Id,
+ agencyDNSignUpStatus__c,
+ HPDNSignUpStatus__c,
+ agencyReject__c,
+ HPReject__c,
+ IsAgencyScan__c,
+ IsHPScan__c
+ FROM eSignFormEntry__c
+ WHERE eSignForm__c IN :esFormidList
+ ORDER BY eSignForm__c, createdDate ASC
+ ];
if (eSignFormEntryList.size() > 0) {
for (Id eid : esFormidList) {
@@ -422,13 +438,12 @@
//鏈鐞嗙殑
unprocessedESignEneryMap.put(eid, eSignFormEntryWhole);
}
- if (eSignFormEntryWhole.eSignForm__r.Id == eid) {
+ if (eSignFormEntryWhole.eSignForm__r.Id == eid) {
//瀛樻斁 绛炬敹鍗昳d锛屽綍鍏ヨ〃id 鏂囦欢鐢�
eSignFlieIdMap.put(eSignFormEntryWhole.Id, eid);
//瀛樻斁绛炬敹鍗曞綍鍏ヨ〃锛宨d锛宯ame 鏂囦欢鐢�
eSignNameMap.put(eid, eSignFormEntryWhole.eSignForm__r.Name);
}
-
//瀛樻斁褰曞叆琛╥d锛岃褰曠被鍨� id锛宼ype 鏂囦欢鐢�
eSignTypeMap.put(eSignFormEntryWhole.Id, eSignFormEntryWhole.entryType__c);
@@ -440,10 +455,8 @@
for (Id esFormid : esFormidList) {
//鍐呭眰鏄鏀跺崟褰曞叆琛�
for (eSignFormEntry__c eSignFormEntry : eSignFormEntryList) {
-
//鈶犲彇鏈�鏂扮殑 褰曞叆琛� + 鏈鐞嗙殑
if (esFormid.equals(eSignFormEntry.eSignForm__c)) {
-
if (!eSignFormEntry.IsHandled__c) {
//瀛樻斁 绛炬敹鍗昳d锛屽綍鍏ヨ〃id
eSignIdMap.put(esFormid, eSignFormEntry.Id);
@@ -452,9 +465,7 @@
// break;
}
eSignFormLastIdMap.put(esFormid, eSignFormEntry.Id);
-
}
-
}
}
//鏈�鍚庢洿鏂扮殑褰曞叆琛╥d
@@ -469,42 +480,26 @@
//閲嶆柊瀵归檮浠舵帓搴� 瑙勫垯鍙樹负鏍规嵁绛炬敹鍗曠幇鏈夐檮浠跺簭鍙疯繘琛屾帓搴� 绮剧悽鎶�鏈� wql start
//鏆傛椂瀛樻斁涓�涓嬬鏀跺崟鍚嶇О
Map<string, string> tempMap = new Map<string, string>();
- //zhj Attachment To AWS 2023-02-06
- // List<Attachment> tempAttList = [SELECT parentId, createdDate, Name,Description
- // FROM Attachment
- // WHERE parentId IN: esFormidList order by createdDate];
- List<FileAddress__c> tempAttList = [SELECT ParentRecordId__c, createdDate, FileName__c
- FROM FileAddress__c
- WHERE ParentRecordId__c IN: esFormidList order by createdDate];
+ List<Attachment> tempAttList = [
+ SELECT parentId, createdDate, Name, Description
+ FROM Attachment
+ WHERE parentId IN :esFormidList
+ ORDER BY createdDate
+ ];
if (tempAttList.size() > 0) {
//澶栧眰寰幆绛炬敹鍗�
for (String es : esFormidList) {
- //zhj Attachment To AWS 2023-02-06
//鍐呭眰寰幆闄勪欢
- // for (Attachment att : tempAttList) {
- // //濡傛灉id鐩哥瓑
- // if (es.equals(att.parentId)) {
- // //鏍规嵁鍚嶇О鎷嗗垎 瀛樺叆涓嶅悓list
- // String name = att.Name;
- // if (name.substring(0, 1).equals('A')) {
- // esignAttachAgencyList.add(att);
- // } else if (name.substring(0, 1).equals('H')) {
- // esignAttachHPList.add(att);
- // }
-
- // }
- // }
- for (FileAddress__c att : tempAttList) {
+ for (Attachment att : tempAttList) {
//濡傛灉id鐩哥瓑
- if (es.equals(att.ParentRecordId__c)) {
+ if (es.equals(att.parentId)) {
//鏍规嵁鍚嶇О鎷嗗垎 瀛樺叆涓嶅悓list
- String name = att.FileName__c;
+ String name = att.Name;
if (name.substring(0, 1).equals('A')) {
esignAttachAgencyList.add(att);
} else if (name.substring(0, 1).equals('H')) {
esignAttachHPList.add(att);
}
-
}
}
//鍒嗗埆瀛樺叆鍒扮粡閿�鍟唎r鍖婚櫌鐨勯檮浠秏ap 鐢ㄤ簬鍚庢湡鍛藉悕
@@ -517,7 +512,6 @@
//娓呯┖list 渚涗笅涓�涓鏀跺崟浣跨敤
esignAttachAgencyList.clear();
esignAttachHPList.clear();
-
}
}
system.debug('fileAgencyMap:' + fileAgencyMap);
@@ -525,10 +519,21 @@
//閲嶆柊瀵归檮浠舵帓搴� 瑙勫垯鍙樹负鏍规嵁绛炬敹鍗曠幇鏈夐檮浠跺簭鍙疯繘琛屾帓搴� 绮剧悽鎶�鏈� wql end
//鏍规嵁鎵�鏈夌殑绛炬敹鍗曞綍鍏ヨ〃id妫�绱㈡墍鏈夌殑绛炬敹鍗曟槑缁嗗綍鍏�
- List < eSignFormLineItemEntry__c > eSignFormLineItemEntryLists = [select id, eSignFormEntry__r.entryType__c, eSignFormEntry__r.IsHandled__c, eSignFormLineItem__c, eSignFormEntry__c,
- agencyConfirmResult__c, HPConfirmResult__c, HPGoodStatus__c, agencyGoodStatus__c
- from eSignFormLineItemEntry__c where eSignFormEntry__c in : luruIsSubmitList and eSignFormEntry__r.IsHandled__c = false order by createdDate asc
- ];
+ List<eSignFormLineItemEntry__c> eSignFormLineItemEntryLists = [
+ SELECT
+ id,
+ eSignFormEntry__r.entryType__c,
+ eSignFormEntry__r.IsHandled__c,
+ eSignFormLineItem__c,
+ eSignFormEntry__c,
+ agencyConfirmResult__c,
+ HPConfirmResult__c,
+ HPGoodStatus__c,
+ agencyGoodStatus__c
+ FROM eSignFormLineItemEntry__c
+ WHERE eSignFormEntry__c IN :luruIsSubmitList AND eSignFormEntry__r.IsHandled__c = FALSE
+ ORDER BY createdDate ASC
+ ];
if (eSignFormLineItemEntryLists.size() > 0) {
for (eSignFormLineItemEntry__c eSignFormLineItemEntry : eSignFormLineItemEntryLists) {
eSignFormLineIdList.add(eSignFormLineItemEntry.eSignFormLineItem__c);
@@ -537,7 +542,11 @@
system.debug('eSignFormLineIdList:' + eSignFormLineIdList);
if (eSignFormLineIdList.size() > 0) {
//鏍规嵁绛炬敹鍗曟槑缁嗗綍鍏ヨ〃 鍘绘绱㈢鏀跺崟鏄庣粏
- List < eSignFormLineItem__c > eSignFormLineItemList = [select id, agencyGoodStatus__c, HPGoodStatus__c from eSignFormLineItem__c where id IN: eSignFormLineIdList];
+ List<eSignFormLineItem__c> eSignFormLineItemList = [
+ SELECT id, agencyGoodStatus__c, HPGoodStatus__c
+ FROM eSignFormLineItem__c
+ WHERE id IN :eSignFormLineIdList
+ ];
if (eSignFormLineItemList.size() > 0) {
//澶栧眰绛炬敹鍗曟槑缁�
for (eSignFormLineItem__c eSignFormLineItem : eSignFormLineItemList) {
@@ -557,7 +566,6 @@
if (eSignFormLineIdList.size() > 0) {
//寰幆 鏇存柊绛炬敹鍗�
for (Id esefId : eSignFormLineIdList) {
-
if (lasteSignFormLineItemEntryMap.containsKey(esefId)) {
eSignFormLineItemEntry__c luru = lasteSignFormLineItemEntryMap.get(esefId);
//new 涓�涓鏀跺崟鏄庣粏瀵硅薄
@@ -578,8 +586,6 @@
eSignFormLuRuList.add(eSignLuRu);
}
}
-
-
}
}
System.debug('鏇存柊鐨勭鏀跺崟鏄庣粏list:' + eSignFormLuRUList);
@@ -612,17 +618,15 @@
if (eSignFormEntry.agencyScanDayBack__c != null && eSignFormEntry.IsAgencyScan__c) {
eSignForm.agencyAutoSignUpStatus__c = '鑽夋涓�';
eSignForm.agencyReject__c = false;
-
}
}
}
//鏈洿鏂板墠鐨勭粡閿�鍟嗗鎵圭姸鎬� 鐢ㄤ簬鏂囦欢绱姹囨��
- if(eSignFormEntry.agencyAutoSignUpStatus__c!=null &&eSignFormEntry.agencyAutoSignUpStatus__c!=''){
+ if (eSignFormEntry.agencyAutoSignUpStatus__c != null && eSignFormEntry.agencyAutoSignUpStatus__c != '') {
oldESignAgencyStatusMap.put('A' + eSignForm.id, eSignFormEntry.agencyAutoSignUpStatus__c);
- }else{
+ } else {
oldESignAgencyStatusMap.put('A' + eSignForm.id, '鏃�');
}
-
}
if (eSignFormEntry.HPDNSignUpStatus__c != '绛炬敹宸插畬鎴�') {
//濡傛灉鍖婚櫌纭鏃ヤ负绌虹殑璇� 杩涘幓鍒ゆ柇鏇存柊鍖婚櫌瀹℃壒鐘舵��
@@ -634,17 +638,15 @@
if (eSignFormEntry.HPScanDayBack__c != null && eSignFormEntry.IsHPScan__c) {
eSignForm.HPSignUpStatus__c = '鑽夋涓�';
eSignForm.HPReject__c = false;
-
}
}
}
//鏈洿鏂板墠鐨勫尰闄㈠鎵圭姸鎬� 鐢ㄤ簬鏂囦欢绱姹囨��
- if(eSignFormEntry.HPSignUpStatus__c!=null &&eSignFormEntry.HPSignUpStatus__c!=''){
+ if (eSignFormEntry.HPSignUpStatus__c != null && eSignFormEntry.HPSignUpStatus__c != '') {
oldESignHPStatusMap.put('H' + eSignForm.id, eSignFormEntry.HPSignUpStatus__c);
- }else{
+ } else {
oldESignHPStatusMap.put('H' + eSignForm.id, '鏃�');
}
-
}
//濡傛灉娌″彉鍖栧垯涓嶆洿鏂�
@@ -703,72 +705,63 @@
Sales_Root_Formula = eSignFormEntry.Sales_Root_Formula__c;
//褰曞叆绫诲瀷
type = eSignFormEntry.entryType__c;
-
}
system.debug('绛炬敹鍗曞璞�-----锛�' + eSignForm);
if (eSignForm != null) {
system.debug('eSignFormid:' + eSignFormid);
if (eSignForm.id != null) {
-
eSignFormList.add(eSignForm);
}
-
}
system.debug('eSignFormList111:' + eSignFormList);
if (eSignFormList.size() > 0) {
//鏇存柊OCSM绠$悊鐪� 鎷呭綋
eSignFormList = updateOwner(provinceList, provinceMap, eSignFormList, false);
}
-
-
}
}
-
-
}
if (eSignFormList.size() <= 0) {
system.debug('鎴戣蛋鍒拌繖閲屼簡锛�');
- eSignFormList = updateOwner(provinceList, provinceMap, eSignList, true);
+ eSignFormList = updateOwner(provinceList, provinceMap, eSignList, true);
}
-
- List<Id> fileList = new List<Id> ();
+ List<Id> fileList = new List<Id>();
if (fileIdList.size() > 0) {
for (Id fileId : fileIdList) {
if (!fileList.contains(fileId)) {
fileList.add(fileId);
}
-
}
}
System.debug('fileIdList锛�' + fileIdList);
System.debug('fileList锛�' + fileList);
//鐢ㄤ簬鏈�鍚巌nsert 闄勪欢
- //zhj Attachment To AWS 2023-02-06
- //List<Attachment> insertAttactment = new List<Attachment>();
- List<FileAddress__c> insertAttactment = new List<FileAddress__c>();
+ List<Attachment> insertAttactment = new List<Attachment>();
//闄勪欢 start
- //List<Attachment> attachMentList = [SELECT id, parentId, Body, Name, ContentType,Description from Attachment where parentId IN :fileList and Description!='鐢靛瓙绛炬敹鍗曪細宸插鐞�'];
- List<FileAddress__c> attachMentList = [SELECT id, ParentRecordId__c, FileName__c,subInfoType__c,AWS_File_Key__c,DownloadLink__c,ViewLink__c from FileAddress__c where ParentRecordId__c IN :fileList and subInfoType__c !='鐢靛瓙绛炬敹鍗曪細宸插鐞�'];
- //淇宸插鐞嗘暟鎹� 闄勪欢娌℃洿鏂� 鍗虫病鏈夐檮浠惰兘鎻愪氦鐨刡ug 绮剧悽鎶�鏈� wql 2021/01/19 start
- //List<Attachment> eSignEntryAttachMentList = new List<Attachment>();
- List<FileAddress__c> eSignEntryAttachMentList = new List<FileAddress__c>();
+ List<Attachment> attachMentList = [
+ SELECT id, parentId, Body, Name, ContentType, Description
+ FROM Attachment
+ WHERE parentId IN :fileList AND Description != '鐢靛瓙绛炬敹鍗曪細宸插鐞�'
+ ];
+ //淇宸插鐞嗘暟鎹� 闄勪欢娌℃洿鏂� 鍗虫病鏈夐檮浠惰兘鎻愪氦鐨刡ug 绮剧悽鎶�鏈� wql 2021/01/19 start
+ List<Attachment> eSignEntryAttachMentList = new List<Attachment>();
//鏂囦欢鏁伴噺 鐢ㄤ簬鏂囦欢鍛藉悕
Integer agencyCount = 0;
Integer hpCount = 0;
String name;
- String type ;
+ String type;
Integer agencyFileCountNum = 0;
Integer hpFileCountNum = 0;
Integer i = 0;
Integer j = 0;
//璁板綍璇ョ鏀跺崟鐨勬渶鏂扮粡閿�鍟嗛檮浠舵暟閲�
- Map<id,Integer> eSignAgencyAttSum = new Map<id,Integer> ();
+ Map<id, Integer> eSignAgencyAttSum = new Map<id, Integer>();
//璁板綍璇ョ鏀跺崟鐨勬渶鏂板尰闄㈤檮浠舵暟閲�
- Map<id,Integer> eSignHpAttSum = new Map<id,Integer> ();
+ Map<id, Integer> eSignHpAttSum = new Map<id, Integer>();
//鍚屼竴鏉″綍鍏ヨ〃澶氫釜闄勪欢鏍囪瘑
Boolean agencyNumFlag = false;
@@ -783,28 +776,25 @@
system.debug('eSignFlieIdMap:' + eSignFlieIdMap);
system.debug('eSignNameMap:' + eSignNameMap);
for (Id eSignFormEntryId : fileList) {
-
- for (FileAddress__c attach : attachMentList) { //zhj Attachment To AWS 2023-02-06
-
- if (attach.ParentRecordId__c == eSignFormEntryId) {
- Id eid = eSignFlieIdMap.get(attach.ParentRecordId__c);
+ for (Attachment attach : attachMentList) {
+ if (attach.parentId == eSignFormEntryId) {
+ Id eid = eSignFlieIdMap.get(attach.parentId);
system.debug('eid:' + eid);
name = eSignNameMap.get(eid);
system.debug('name:' + name);
- type = eSignTypeMap.get(attach.ParentRecordId__c);
+ type = eSignTypeMap.get(attach.parentId);
//鍥犱负澶栧眰寰幆鏄腑闂磋〃 濡傛灉2鏉′互涓婂綍鍏ヨ〃閮芥湁缁忛攢鍟嗛檮浠� 鍒欎娇鐢ㄦ渶鏂版瀯寤虹殑缁忛攢鍟嗛檮浠舵暟閲忔潵鍛藉悕
//鍚﹀垯鍙栨湭鏇存柊涔嬪墠鏈夌殑缁忛攢鍟嗛檮浠舵暟閲� 骞朵笖 涓嶆槸1涓綍鍏ヨ〃澶氫釜闄勪欢 涔熷氨鏄痜alse鐨勬椂鍊� 鍙栨ā鎷熺殑鏈�鏂版暟閲�
- if(eSignAgencyAttSum.size()>0&&!agencyNumFlag){
+ if (eSignAgencyAttSum.size() > 0 && !agencyNumFlag) {
agencyCount = eSignAgencyAttSum.get(eid);
//璁板綍涓�涓渶鏂扮殑闄勪欢鏁�
- agencySumCount =agencyCount;
- }else if(agencySumCount>0){
+ agencySumCount = agencyCount;
+ } else if (agencySumCount > 0) {
//鏈寰幆鍐� 绗竴娆″彇闄勪欢鏁版渶鏂板�� 鍚庣画閮藉湪姝ゅ熀纭�涓奿++
- agencyCount =agencySumCount;
- }
- else if(fileAgencyMap.size() > 0){
+ agencyCount = agencySumCount;
+ } else if (fileAgencyMap.size() > 0) {
//鍙湁涓�鏉℃暟鎹椂锛屼娇鐢ㄦ闄勪欢鏁板嵆鍙� 鍚庣画鍦ㄦ鍩虹涓奿++
agencyCount = fileAgencyMap.get(eid);
}
@@ -826,20 +816,19 @@
//缁忛攢鍟嗛檮浠跺懡鍚� end
//鍥犱负澶栧眰寰幆鏄腑闂磋〃 濡傛灉2鏉′互涓婂綍鍏ヨ〃閮芥湁鍖婚櫌闄勪欢 鍒欎娇鐢ㄦ渶鏂版瀯寤虹殑鍖婚櫌闄勪欢鏁伴噺鏉ュ懡鍚�
//鍚﹀垯鍙栨湭鏇存柊涔嬪墠鏈夌殑鍖婚櫌闄勪欢鏁伴噺 骞朵笖 涓嶆槸1涓綍鍏ヨ〃澶氫釜闄勪欢 涔熷氨鏄痜alse鐨勬椂鍊� 鍙栨ā鎷熺殑鏈�鏂版暟閲�
- if(eSignHpAttSum.size()>0&&!hpNumFlag){
+ if (eSignHpAttSum.size() > 0 && !hpNumFlag) {
hpCount = eSignHpAttSum.get(eid);
//璁板綍涓�涓渶鏂扮殑闄勪欢鏁�
hpSumCount = hpCount;
- }else if(hpSumCount >0 ){
+ } else if (hpSumCount > 0) {
//鏈寰幆鍐� 绗竴娆″彇闄勪欢鏁版渶鏂板�� 鍚庣画閮藉湪姝ゅ熀纭�涓妀++
- hpCount =hpSumCount;
- }
- else if(fileHPMap.size() > 0){
+ hpCount = hpSumCount;
+ } else if (fileHPMap.size() > 0) {
//鍙湁涓�鏉℃暟鎹椂锛屼娇鐢ㄦ闄勪欢鏁板嵆鍙� 鍚庣画鍦ㄦ鍩虹涓妀++
hpCount = fileHPMap.get(eid);
}
//鍚屼竴涓唴閮ㄥ惊鐜噷缃垚true
- hpNumFlag =true;
+ hpNumFlag = true;
//鍖婚櫌闄勪欢鍛藉悕 start
// if (fileHPMap.size() > 0) {
// hpCount = fileHPMap.get(eid);
@@ -852,12 +841,12 @@
hpFileCountNum = hpCount + 1 + j;
}
//鏋勫缓鏈�鏂扮殑绛炬敹鍗曠粡閿�鍟嗛檮浠舵暟閲�
- if(agencyFileCountNum>0){
- eSignAgencyAttSum.put(eid,agencyFileCountNum);
+ if (agencyFileCountNum > 0) {
+ eSignAgencyAttSum.put(eid, agencyFileCountNum);
}
//鏋勫缓鏈�鏂扮殑绛炬敹鍗曞尰闄㈤檮浠舵暟閲�
- if(hpFileCountNum>0){
- eSignHpAttSum.put(eid,hpFileCountNum);
+ if (hpFileCountNum > 0) {
+ eSignHpAttSum.put(eid, hpFileCountNum);
}
//鍖婚櫌闄勪欢鍛藉悕 end
//鐢ㄤ簬鎷嗗垎缁忛攢鍟�/鍖婚櫌 鍖哄埆鏂囦欢鍚�
@@ -887,40 +876,31 @@
// title = title +'.jpg';
// }
//鍒ゆ柇涓�涓嬫牸寮忥紝涓嶇劧涓嬭浇涓嬫潵鏄被鍨嬫槸鎵�鏈夋枃浠� 鏃犳硶鎵撳紑
- //zhj Attachment To AWS 2023-02-06 start
- if (attach.FileName__c.lastIndexOf('.') > -1) {
- title = title + attach.FileName__c.substring(attach.FileName__c.lastIndexOf('.'));
+ if (attach.Name.lastIndexOf('.') > -1) {
+ title = title + attach.Name.substring(attach.Name.lastIndexOf('.'));
}
- //Attachment newAttachment = attach.clone();
- FileAddress__c newAttachment = attach.clone();
- newAttachment.ParentRecordId__c = eid;
- newAttachment.FileName__c = title;
+ Attachment newAttachment = attach.clone();
+ newAttachment.parentId = eid;
+ newAttachment.name = title;
// newAttachment.ContentType =attach.ContentType;
//瑕佹洿鏂扮殑绛炬敹鍗曢檮浠�
insertAttactment.add(newAttachment);
//鍙嶆洿鏂板綍鍏ヨ〃鐨勯檮浠� 鐢ㄦ潵鍒ゆ柇闄勪欢鏄惁琚洿鏂�
- //Attachment oldAttachment = new Attachment();
- FileAddress__c oldAttachment = new FileAddress__c();
+ Attachment oldAttachment = new Attachment();
oldAttachment.Id = attach.Id;
- //oldAttachment.Description = '鐢靛瓙绛炬敹鍗曪細宸插鐞�';
- oldAttachment.subInfoType__c = '鐢靛瓙绛炬敹鍗曪細宸插鐞�';
- //zhj Attachment To AWS 2023-02-06 end
+ oldAttachment.Description = '鐢靛瓙绛炬敹鍗曪細宸插鐞�';
eSignEntryAttachMentList.add(oldAttachment);
-
}
-
-
}
//鏁村崟寰幆鍚� 娓呯┖鍊�
i = 0;
j = 0;
- agencyNumFlag= false;
- hpNumFlag =false;
- agencySumCount =0;
- hpSumCount=0;
+ agencyNumFlag = false;
+ hpNumFlag = false;
+ agencySumCount = 0;
+ hpSumCount = 0;
}
-
}
//鐢靛瓙绛炬敹鍗� 澧炲姞鏈鏇存柊闄勪欢鏁伴噺 2020/01/07 绮剧悽鎶�鏈� wql start
@@ -928,7 +908,7 @@
if (insertAttactment.size() > 0) {
insert insertAttactment;
//鍙嶅悜鏇存柊褰曞叆琛ㄩ檮浠�
- if(eSignEntryAttachMentList.size()>0){
+ if (eSignEntryAttachMentList.size() > 0) {
update eSignEntryAttachMentList;
}
@@ -936,65 +916,55 @@
if (eSignFormList.size() > 0) {
//澶栧眰鎵�鏈夌鏀跺崟
for (eSignForm__c es : eSignFormList) {
-
//a涓虹粡閿�鍟嗛檮浠剁殑鏁伴噺 h涓哄尰闄㈤檮浠剁殑鏁伴噺
Integer a = 0;
Integer h = 0;
//鍐呭眰鎵�鏈夐渶瑕佹洿鏂扮殑闄勪欢
- //for (Attachment att : insertAttactment) {
- for (FileAddress__c att : insertAttactment) { //zhj Attachment To AWS 2023-02-06
+ for (Attachment att : insertAttactment) {
if (es.Id != null) {
- if (es.Id.equals(att.ParentRecordId__c)) {
+ if (es.Id.equals(att.parentId)) {
if (es.agencyAutoSignUpStatus__c != null) {
- if (es.agencyAutoSignUpStatus__c.equals('鐢宠涓�') && oldESignAgencyStatusMap.size()>0) {
- if(!oldESignAgencyStatusMap.get('A' + es.Id).equals('鐢宠涓�')){
- if (att.FileName__c.substring(0, 1).equals('A')) { //zhj Attachment To AWS 2023-02-06
- a ++;
- }
+ if (es.agencyAutoSignUpStatus__c.equals('鐢宠涓�') && oldESignAgencyStatusMap.size() > 0) {
+ if (!oldESignAgencyStatusMap.get('A' + es.Id).equals('鐢宠涓�')) {
+ if (att.Name.substring(0, 1).equals('A')) {
+ a++;
}
-
+ }
}
}
if (es.HPSignUpStatus__c != null) {
- if (es.HPSignUpStatus__c.equals('鐢宠涓�') && oldESignHPStatusMap.size()>0) {
- if(!oldESignHPStatusMap.get('H' + es.Id).equals('鐢宠涓�')){
- if (att.FileName__c.substring(0, 1).equals('H')) { //zhj Attachment To AWS 2023-02-06
- h ++;
+ if (es.HPSignUpStatus__c.equals('鐢宠涓�') && oldESignHPStatusMap.size() > 0) {
+ if (!oldESignHPStatusMap.get('H' + es.Id).equals('鐢宠涓�')) {
+ if (att.Name.substring(0, 1).equals('H')) {
+ h++;
}
}
-
}
}
-
}
}
-
}
//鍙湁鐪熸鎵爜鎻愪氦鐨� 骞朵笖娌℃湁闄勪欢鎵嶄細琚洿鏂�
if (es.agencyAutoSignUpStatus__c != null) {
- if (es.agencyAutoSignUpStatus__c.equals('鐢宠涓�') && oldESignAgencyStatusMap.size()>0) {
- if(!oldESignAgencyStatusMap.get('A' + es.Id).equals('鐢宠涓�')){
+ if (es.agencyAutoSignUpStatus__c.equals('鐢宠涓�') && oldESignAgencyStatusMap.size() > 0) {
+ if (!oldESignAgencyStatusMap.get('A' + es.Id).equals('鐢宠涓�')) {
es.agencyAttachNum__c = a;
}
-
}
}
//鍙湁鐪熸鎵爜鎻愪氦鐨� 骞朵笖娌℃湁闄勪欢鎵嶄細琚洿鏂�
if (es.HPSignUpStatus__c != null) {
- if (es.HPSignUpStatus__c.equals('鐢宠涓�') &&oldESignHPStatusMap.size()>0 ) {
- if(!oldESignHPStatusMap.get('H' + es.Id).equals('鐢宠涓�')){
- es.HPAttachNum__c = h;
+ if (es.HPSignUpStatus__c.equals('鐢宠涓�') && oldESignHPStatusMap.size() > 0) {
+ if (!oldESignHPStatusMap.get('H' + es.Id).equals('鐢宠涓�')) {
+ es.HPAttachNum__c = h;
}
-
-
}
}
a = 0;
h = 0;
-
}
}
//鐢靛瓙绛炬敹鍗� 澧炲姞鏈鏇存柊闄勪欢鏁伴噺 2020/01/07 绮剧悽鎶�鏈� wql end
@@ -1027,35 +997,30 @@
}
}
}
-
-
- }catch(NullPointerException npe){
-
- iflog.ErrorLog__c += 'ERROR 锛� eSignForm__c:绌烘寚閽堥敊璇�-琛屽彿:'+ npe.getLineNumber()+ '\n';
- }
- catch (Exception e) {
+ } catch (NullPointerException npe) {
+ iflog.ErrorLog__c += 'ERROR 锛� eSignForm__c:绌烘寚閽堥敊璇�-琛屽彿:' + npe.getLineNumber() + '\n';
+ } catch (Exception e) {
// Database.rollback(sp);
-
- iflog.ErrorLog__c += 'ERROR 锛� eSignForm__c:'+ e.getMessage() + '\n';
+ iflog.ErrorLog__c += 'ERROR 锛� eSignForm__c:' + e.getMessage() + '\n';
}
- try{
- System.debug('luruIsLastSubmitList:'+luruIsLastSubmitList);
+ try {
+ System.debug('luruIsLastSubmitList:' + luruIsLastSubmitList);
if (luruIsLastSubmitList.size() > 0) {
//鍒犻櫎涓棿琛ㄦ暟鎹紙鍥犱负浣忎富璇﹀叧绯伙紝鍒犻櫎褰曞叆琛ㄥ嵆鍙級
deleteMiddleData(eSignStringMap, luruIsLastSubmitList);
}
- }catch(Exception e){
- iflog.ErrorLog__c += 'ERROR 锛� eSignForm__c:'+ e.getMessage() + '\n';
+ } catch (Exception e) {
+ iflog.ErrorLog__c += 'ERROR 锛� eSignForm__c:' + e.getMessage() + '\n';
}
//鏂囦欢 end
}
//鍒犻櫎涓棿琛ㄦ暟鎹紙鍥犱负浣忎富璇﹀叧绯伙紝鍒犻櫎褰曞叆琛ㄥ嵆鍙級
- private static void deleteMiddleData(Map < String, eSignFormEntry__c > eSignStringMap, List < String > luruIsSubmitList) {
+ private static void deleteMiddleData(Map<String, eSignFormEntry__c> eSignStringMap, List<String> luruIsSubmitList) {
system.debug('妫�绱㈢殑鎵�鏈夊綍鍏ヨ〃锛�' + eSignStringMap);
system.debug('鏈�鍚庡綍鍏ョ殑id 锛�' + luruIsSubmitList + '----鏁伴噺锛�' + luruIsSubmitList.size());
- list < eSignFormEntry__c > eSignFormDeleteList = new list < eSignFormEntry__c > ();
+ list<eSignFormEntry__c> eSignFormDeleteList = new List<eSignFormEntry__c>();
for (String essm : eSignStringMap.keySet()) {
for (String lisl : luruIsSubmitList) {
if (essm.equals(lisl)) {
@@ -1068,66 +1033,61 @@
}
system.debug('鍒犻櫎鐨勬暟鎹甶d锛�' + eSignFormDeleteList + '----鏁伴噺锛�' + eSignFormDeleteList.size());
-
-
//鍒犻櫎绛炬敹鍗曞綍鍏ヨ〃鍏朵粬鏁版嵁
if (eSignFormDeleteList.size() > 0) {
//寰幆閬嶅巻id 鍒犻櫎鏂囦欢
- List<String> fileDeleteIdList = new List<String> ();
- //List<Attachment> deleteAttachmentList = new List<Attachment>();
- List<FileAddress__c> deleteAttachmentList = new List<FileAddress__c>(); //zhj Attachment To AWS 2023-02-06
+ List<String> fileDeleteIdList = new List<String>();
+ List<Attachment> deleteAttachmentList = new List<Attachment>();
for (eSignFormEntry__c eSigf : eSignFormDeleteList) {
fileDeleteIdList.add(eSigf.Id);
}
//寰幆鎵惧埌鏂囦欢id
if (fileDeleteIdList.size() > 0) {
-
// 2022-02-28 shashiming Apex heap size too large
// 鍘绘帀Body瀛楁
- //List<Attachment> attachMentList = [SELECT id, parentId, Name, ContentType,Description from Attachment where parentId = :fileDeleteIdList];
- List<FileAddress__c> attachMentList = [SELECT id, ParentRecordId__c, FileName__c,AWS_File_Key__c from FileAddress__c where ParentRecordId__c = :fileDeleteIdList]; //zhj Attachment To AWS 2023-02-06
- List<Transaction_Log__c> tranList = new List<Transaction_Log__c>();
+ List<Attachment> attachMentList = [
+ SELECT id, parentId, Name, ContentType, Description
+ FROM Attachment
+ WHERE parentId = :fileDeleteIdList
+ ];
+
if (attachMentList.size() > 0) {
- for (FileAddress__c att : attachMentList) {
- FileAddress__c am = new FileAddress__c(); //zhj Attachment To AWS 2023-02-06
+ for (Attachment att : attachMentList) {
+ Attachment am = new Attachment();
am.Id = att.Id;
deleteAttachmentList.add(am);
- //zhj 鏂板鏃ュ織锛屽垹闄WS鐨勯檮浠� 2023-02-17
- Transaction_Log__c tran = new Transaction_Log__c();
- tran.AWS_Data_Id__c = att.AWS_File_Key__c;
- tran.Status__c = 'In Process';
- tran.Module__c = '绛炬敹鍗曢檮浠跺垹闄�';
- tranList.add(tran);
- }
- //鏂板鏃ュ織锛屽垹闄WS鐨勯檮浠� zhj 2023-02-17
- if(tranList.size() > 0){
- insert tranList;
}
//鍒犻櫎鏂囦欢
if (deleteAttachmentList.size() > 0) {
delete deleteAttachmentList;
}
}
-
-
}
//鍒犻櫎褰曞叆琛�
- System.debug('鍒犻櫎褰曞叆琛� : ' + eSignFormDeleteList);
delete eSignFormDeleteList;
}
}
@TestVisible
//鏇存柊钀ヤ笟閮ㄦ媴褰�
- private static List < eSignForm__c > updateOwner(List < String > provinceList, Map < Id, String > provinceMap, List < eSignForm__c > eSignFormList, boolean ocsmFlag) {
+ private static List<eSignForm__c> updateOwner(
+ List<String> provinceList,
+ Map<Id, String> provinceMap,
+ List<eSignForm__c> eSignFormList,
+ boolean ocsmFlag
+ ) {
//钀ヤ笟鎷呭綋 map
- Map < String, String > provinceOwnerMap = new Map < String, String > ();
+ Map<String, String> provinceOwnerMap = new Map<String, String>();
//钀ヤ笟鍔╃悊 map
- Map < String, String > provinceGIMap = new Map < String, String > ();
+ Map<String, String> provinceGIMap = new Map<String, String>();
- List < eSignForm__c > eSignFormLastList = new List < eSignForm__c >();
+ List<eSignForm__c> eSignFormLastList = new List<eSignForm__c>();
//妫�绱CSM绠$悊鐪佸璞�
- List < OCM_Management_Province__c > ompList = [select id, Name, SalesManage__c,GI_assistant__c from OCM_Management_Province__c where Name IN: provinceList];
+ List<OCM_Management_Province__c> ompList = [
+ SELECT id, Name, SalesManage__c, GI_assistant__c
+ FROM OCM_Management_Province__c
+ WHERE Name IN :provinceList
+ ];
//瀛樻斁map<鐪侊紝鎷呭綋>
for (OCM_Management_Province__c omp : ompList) {
//涓嶇敤map<String,list>鐨� 鍘熷洜鏄� 鎯� ocsm绠$悊鐪� 鍜岀鏀跺崟 钀ヤ笟鎷呭綋鐨勯『搴忎繚鎸佷竴鑷�
@@ -1180,7 +1140,6 @@
// }
// }
-
// }
// return eSignFormLastList;
@@ -1214,43 +1173,39 @@
if (ocsmFlag) {
//缁欐渶鍚庤鏇存柊鐨勭鏀跺崟鐨勫鎵硅�咃紙钀ヤ笟閮ㄦ媴褰擄級璧嬪��
for (Integer cnt = 0; cnt < eSignFormList.size(); cnt++) {
- if (provinceOwnerMap.get(provinceMap.get(eSignFormList[cnt].Id)) != eSignFormList[cnt].RC_Manager__c ||provinceMap.get(eSignFormList[cnt].Id).equals('闆嗛噰璇�')) {
-
+ if (
+ provinceOwnerMap.get(provinceMap.get(eSignFormList[cnt].Id)) != eSignFormList[cnt].RC_Manager__c ||
+ provinceMap.get(eSignFormList[cnt].Id).equals('闆嗛噰璇�')
+ ) {
eSignForm__c eSignForm = new eSignForm__c();
eSignForm.Id = eSignFormList[cnt].Id;
eSignForm.RC_Manager__c = provinceOwnerMap.get(provinceMap.get(eSignFormList[cnt].Id));
- //闆嗛噰璇环 钀ヤ笟鍔╃悊闇�瑕佺淮鎶ゆ垚 闆嗛噰璇剧殑SP銆丟I鍔╃悊 绮剧悽鎶�鏈� wql 2021/01/08 start
- if(provinceMap.get(eSignFormList[cnt].Id).equals('闆嗛噰璇�')){
+ //闆嗛噰璇环 钀ヤ笟鍔╃悊闇�瑕佺淮鎶ゆ垚 闆嗛噰璇剧殑SP銆丟I鍔╃悊 绮剧悽鎶�鏈� wql 2021/01/08 start
+ if (provinceMap.get(eSignFormList[cnt].Id).equals('闆嗛噰璇�')) {
eSignForm.Sales_assistant_name_text__c = provinceGIMap.get(provinceMap.get(eSignFormList[cnt].Id));
}
//闆嗛噰璇环 钀ヤ笟鍔╃悊闇�瑕佺淮鎶ゆ垚 闆嗛噰璇剧殑SP銆丟I鍔╃悊 绮剧悽鎶�鏈� wql 2021/01/08 end
eSignFormLastList.add(eSignForm);
}
-
}
return eSignFormLastList;
-
} else {
//缁欐渶鍚庤鏇存柊鐨勭鏀跺崟鐨勫鎵硅�咃紙钀ヤ笟閮ㄦ媴褰擄級璧嬪��
for (eSignForm__c esf : eSignFormList) {
if (provinceOwnerMap.get(provinceMap.get(esf.Id)) != null) {
esf.RC_Manager__c = provinceOwnerMap.get(provinceMap.get(esf.Id));
- //闆嗛噰璇环 钀ヤ笟鍔╃悊闇�瑕佺淮鎶ゆ垚 闆嗛噰璇剧殑SP銆丟I鍔╃悊 绮剧悽鎶�鏈� wql 2021/01/08 start
- if(provinceMap.get(esf.Id).equals('闆嗛噰璇�')){
+ //闆嗛噰璇环 钀ヤ笟鍔╃悊闇�瑕佺淮鎶ゆ垚 闆嗛噰璇剧殑SP銆丟I鍔╃悊 绮剧悽鎶�鏈� wql 2021/01/08 start
+ if (provinceMap.get(esf.Id).equals('闆嗛噰璇�')) {
esf.Sales_assistant_name_text__c = provinceGIMap.get(provinceMap.get(esf.Id));
}
//闆嗛噰璇环 钀ヤ笟鍔╃悊闇�瑕佺淮鎶ゆ垚 闆嗛噰璇剧殑SP銆丟I鍔╃悊 绮剧悽鎶�鏈� wql 2021/01/08 end
}
-
}
return eSignFormList;
}
-
}
-
global void finish(Database.BatchableContext BC) {
-
//鏇存柊璇ユ棩蹇楃殑鏁版嵁淇℃伅
iflog.Log__c += '\nupdateESignBatch end';
String tmp = iflog.ErrorLog__c;
@@ -1288,7 +1243,7 @@
//鍐欐绮剧悽鐢ㄦ埛 涓婄嚎鍚庡簲璇ヤ細淇敼鎴愯嚜瀹氫箟鏍囩
// String batchUserId = '00510000005sEEM';
String batchUserId = System.Label.Batch_User_Id;
- List<User> us = [Select Id, NAme, Email From User Where Id = : batchUserId];
+ List<User> us = [SELECT Id, NAme, Email FROM User WHERE Id = :batchUserId];
if (!us.isEmpty()) {
User use = us[0];
if (String.isNotBlank(use.Email)) {
@@ -1296,11 +1251,7 @@
if (System.Label.ESign_Error_Send_To_CC != 'null') {
MailCc = System.Label.ESign_Error_Send_To_CC.split(',');
}
- FixtureUtil.sendMessage(batchUserId,
- MailCc,
- 'updateESignBatch Error',
- body
- );
+ FixtureUtil.sendMessage(batchUserId, MailCc, 'updateESignBatch Error', body);
}
}
}
@@ -1321,7 +1272,7 @@
messageMap = new Map<Id, String>();
overMax = false;
}
- public void setError (Database.SaveResult[] saveRes, Integer maxCut, Schema.sObjectType obj) {
+ public void setError(Database.SaveResult[] saveRes, Integer maxCut, Schema.sObjectType obj) {
if (messageMap.keySet().size() <= maxCut && overMax == false) {
String objectName = obj.getDescribe().getName();
String objectLabel = obj.getDescribe().getLabel();
@@ -1333,12 +1284,16 @@
break;
}
for (Database.Error err : saveRe.getErrors()) {
-
- String message = objectName + ':'
- + objectLabel + ':'
- + err.getStatusCode() + ':'
- + err.getFields() + ':'
- + err.getMessage();
+ String message =
+ objectName +
+ ':' +
+ objectLabel +
+ ':' +
+ err.getStatusCode() +
+ ':' +
+ err.getFields() +
+ ':' +
+ err.getMessage();
// 鏁版嵁閲岄潰鏈夊鏁伴敊璇俊鎭殑璇濆彧鑾峰彇绗竴鏉�
messageMap.put(saveRe.getId(), message);
break;
@@ -1351,519 +1306,8 @@
}
//瀹氭椂璺戜换鍔�
- public Class ScBean {
+ public class ScBean {
public String scName;
public String scTime;
}
-
- public static void improveTestRate(){
- Integer i = 0;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- i++;
- }
-}
\ No newline at end of file
+}
diff --git a/force-app/main/default/classes/updateESignBatchAttachment.cls b/force-app/main/default/classes/updateESignBatchAttachment.cls
new file mode 100644
index 0000000..982e22b
--- /dev/null
+++ b/force-app/main/default/classes/updateESignBatchAttachment.cls
@@ -0,0 +1,1305 @@
+global class updateESignBatchAttachment implements Database.Batchable < sObject > , Database.Stateful {
+ //鐢靛瓙绛炬敹鍗�-绛炬敹鍗曞綍鍏ヨ〃鏇存柊绛炬敹鍗� 绮剧悽鎶�鏈� wql 2020-09-25 start
+ /*
+ 鈶犳甯告墽琛� Database.executeBatch(new updateESignBatchAttachment(), 20);
+ 鈶″鐞嗘煇涓�涓鏀跺崟 Database.executeBatch(new updateESignBatchAttachment(''), 1);
+ 鈶㈡壒閲忓鐞嗘煇浜涚鏀跺崟(涓嶆槸鏈�缁堢姸鎬佺殑) Database.executeBatch(new updateESignBatchAttachment(['','','']), 20);
+ 鈶e鐞嗘煇涓�涓渶缁堢姸鎬佺殑绛炬敹鍗� Database.executeBatch(new updateESignBatchAttachment(''锛宼rue), 1);
+ 鈶ゆ壒閲忓鐞嗘煇浜涙渶缁堢姸鎬佺殑绛炬敹鍗� Database.executeBatch(new updateESignBatchAttachment('['','','']'锛宼rue), 20);
+ 鈶ュ鐞嗘煇涓�澶╃殑鎵�鏈夌鏀跺崟 Database.executeBatch(new updateESignBatchAttachment(2020-09-27), 20);
+ 鈶﹀鐞嗘煇涓�鏃堕棿娈电殑鎵�鏈夌鏀跺崟 Database.executeBatch(new updateESignBatchAttachment(2020-09-27锛�2020-09-28), 20);
+
+ */
+ private static final Integer MAXERRORCNT = 20; // 閭欢琛ㄥ崟浣嶆渶澶ч敊璇俊鎭樉绀烘暟閲�
+ private ScBean scB;
+ private ErrorBean eb = new ErrorBean(); // 閭欢鍙戦�丒RRORBEAN
+ private String scErrorMessage = ''; // 娣诲姞璁″垝閿欒淇℃伅
+
+ //鎵嬪姩鎵ц鏍囪瘑
+ // private Boolean ManualExecution_Identification;
+
+ //瀛樻斁妫�绱㈢殑soql璇彞
+ private String query;
+ //瀛樻斁闇�瑕佹洿鏂扮殑鏃ユ湡
+ private Date toDate;
+ //瀛樻斁涓�娈垫椂闂寸殑寮�濮嬫棩鏈�
+ private Date startDate;
+ //瀛樻斁涓�娈垫椂闂寸殑缁撴潫鏃ユ湡
+ private Date endDate;
+ //瀛樻斁闇�瑕佹洿鏂扮殑绛炬敹鍗昳d
+ private String id;
+ //瀛樻斁闇�瑕佹洿鏂扮殑涓�浜涚鏀跺崟
+ private List < String > ids;
+ //瀛樻斁宸茬粡鏈�缁堢姸鎬佺殑flag
+ private Boolean flag;
+ //鐢ㄤ簬鎵цbatch鍚屾椂璁板綍鏃ュ織淇℃伅
+ private BatchIF_Log__c iflog;
+ global List < String > emailMessages = new List < String > ();
+ global Integer totalCount = 0; // 鎬讳欢鏁�
+ global Integer failedCount = 0; //澶辫触浠舵暟
+ global Boolean ManualExecution_Identification = false;
+ //榛樿璺戞墍鏈夌鏀跺崟
+ global updateESignBatchAttachment() {
+
+ iflog = new BatchIF_Log__c();
+ iflog.Type__c = 'ESignBatch';
+ iflog.Is_Error__c = 0;
+ iflog.Log__c = 'updateESignBatchAttachment start1\n';
+ iflog.ErrorLog__c = '';
+ // insert iflog;
+ }
+ //鏇存柊鏌愪竴澶╃殑绛炬敹鍗�
+ global updateESignBatchAttachment(Date toDate) {
+ //鎵嬪姩鏍囪瘑缃垚true
+ this.ManualExecution_Identification = true;
+
+ this.toDate = toDate;
+ iflog = new BatchIF_Log__c();
+ iflog.Type__c = 'ESignBatch';
+ iflog.Is_Error__c = 0;
+ iflog.Log__c = 'updateESignBatchAttachment start2\n';
+ iflog.ErrorLog__c = '';
+ // insert iflog;
+ }
+ //鏇存柊鏌愪竴鏃堕棿娈电殑 绛炬敹鍗�
+ global updateESignBatchAttachment(Date startDate, Date endDate) {
+ //鎵嬪姩鏍囪瘑缃垚true
+ this.ManualExecution_Identification = true;
+ this.startDate = startDate;
+ this.endDate = endDate;
+ iflog = new BatchIF_Log__c();
+ iflog.Type__c = 'ESignBatch';
+ iflog.Is_Error__c = 0;
+ iflog.Log__c = 'updateESignBatchAttachment start3\n';
+ iflog.ErrorLog__c = '';
+ // insert iflog;
+ }
+ //鎵归噺鏇存柊绛炬敹鍗�
+ global updateESignBatchAttachment(List < String > ids) {
+ //鎵嬪姩鏍囪瘑缃垚true
+ this.ManualExecution_Identification = true;
+ this.ids = ids;
+ iflog = new BatchIF_Log__c();
+ iflog.Type__c = 'ESignBatch';
+ iflog.Is_Error__c = 0;
+ iflog.Log__c = 'updateESignBatchAttachment start4\n';
+ iflog.ErrorLog__c = '';
+ // insert iflog;
+ }
+ //鏇存柊鏌愪竴鏉$殑绛炬敹鍗�
+ global updateESignBatchAttachment(String id) {
+
+ //鎵嬪姩鏍囪瘑缃垚true
+ this.ManualExecution_Identification = true;
+ system.debug('鎵嬪姩浼犲弬1锛�' + ManualExecution_Identification);
+ this.id = id;
+ iflog = new BatchIF_Log__c();
+ iflog.Type__c = 'ESignBatch';
+ iflog.Is_Error__c = 0;
+ iflog.Log__c = 'updateESignBatchAttachment start5\n';
+ iflog.ErrorLog__c = '';
+ // insert iflog;
+ }
+ //鏇存柊鏌愪竴鏉$殑宸插鐞嗙殑绛炬敹鍗�
+ global updateESignBatchAttachment(String id, boolean flag) {
+ //鎵嬪姩鏍囪瘑缃垚true
+ this.ManualExecution_Identification = true;
+ this.id = id;
+ this.flag = flag;
+ iflog = new BatchIF_Log__c();
+ iflog.Type__c = 'ESignBatch';
+ iflog.Is_Error__c = 0;
+ iflog.Log__c = 'updateESignBatchAttachment start6\n';
+ iflog.ErrorLog__c = '';
+ // insert iflog;
+ }
+ //鎵归噺鏇存柊宸插鐞嗙殑绛炬敹鍗�
+ global updateESignBatchAttachment(List < String > ids, boolean flag) {
+ //鎵嬪姩鏍囪瘑缃垚true
+ this.ManualExecution_Identification = true;
+ this.ids = ids;
+ this.flag = flag;
+ iflog = new BatchIF_Log__c();
+ iflog.Type__c = 'ESignBatch';
+ iflog.Is_Error__c = 0;
+ iflog.Log__c = 'updateESignBatchAttachment start7\n';
+ iflog.ErrorLog__c = '';
+ // insert iflog;
+ }
+ global Database.QueryLocator start(Database.BatchableContext bc) {
+ scB = updateESignBatchAttachment.setSc('updateESignFormSchedule', 9, 23, 0, '0 30 2', null);
+ if (System.Test.isRunningTest() == false) {
+ Boolean haveError = false;
+ try {
+ system.schedule(scB.scName, scB.scTime, new updateESignFormSchedule());
+ } catch (Exception e) {
+ haveError = true;
+ }
+ // 濡傛灉鍝熷悓鍚嶇殑Batch璁″垝鍒犻櫎宸插瓨鍦ㄧ殑璁″垝閲嶆柊璁剧疆
+ if (haveError) {
+ haveError = false;
+ for (CronTrigger ct : [SELECT Id, CronJobDetailId, CronExpression, CronJobDetail.Name
+ FROM CronTrigger
+ WHERE CronJobDetail.Name = :scB.scName]) {
+ System.abortJob(ct.Id);
+ }
+ try {
+ system.schedule(scB.scName, scB.scTime, new updateESignFormSchedule());
+ } catch (Exception e) {
+ scErrorMessage = e.getMessage() + e.getStackTraceString() + '<br/>';
+ }
+ }
+ }
+ //绛炬敹鍗� sql
+ //妫�绱� id锛屽悕瀛楋紝DN绛炬敹鐘舵��(缁忛攢鍟�)锛孌N绛炬敹鐘舵��(鍖婚櫌)锛屾棤鍓嶅闆禗N鍙凤紝缁忛攢鍟嗛獙鏀剁粨鏋滐紝鍖婚櫌楠屾敹缁撴灉
+ //閿�鍞笭閬擄紝钀ヤ笟鍔╃悊锛岃惀涓氱鐞嗛儴鎷呭綋,鏄惁澶勭悊瀹屾瘯绛炬敹鍗�,ocsm绠$悊鐪�
+ query = 'select id,Name,agencyDNSignUpStatus__c,HPDNSignUpStatus__c,DNNameNo0__c,agencyAcceptResult__c,HPAcceptResult__c';
+ query += ',Sales_Root_Formula__c,Sales_assistant_name_text__c,RC_Manager__c,agencyConfirmDate__c,salesHPManageConfirmDate__c';
+ query += ',isProcessed__c,OCM_man_province_cus__c,agencyReject__c,agencyRejectDate__c,HPReject__c,HPRejectDate__c,Statu_Achievements__r.Opportunity__r.Group_purchase_PCL__c ';
+ query += ' from eSignForm__c ';
+ //妫�绱笉鏄渶缁堢姸鎬佺殑绛炬敹鍗�
+ if (flag != true) {
+ query += ' where isProcessed__c = false ';
+ } else {
+ if (!string.isblank(id)) {
+ query += 'where id = :id';
+ } else if (ids != null) {
+ query += 'where id in: ids';
+ }
+ }
+ //濡傛灉浼犲叆鐨勬槸涓�娈垫椂闂�
+ if (startDate != null && endDate != null) {
+ query += ' and createdDate >= : startDate and createdDate <= : endDate';
+ }
+ //濡傛灉浼犲叆鐨勬槸鏌愪竴澶╃殑鏃ユ湡
+ else if (toDate != null) {
+ query += ' and createdDate = :toDate ';
+ }
+ //濡傛灉浼犲叆鐨勬槸涓�鎵圭鏀跺崟id
+ else if (ids != null) {
+ query += ' and id in: ids ';
+ }
+ //濡傛灉浼犲叆鐨勬槸璁板綍绫诲瀷鎴栬�呯鏀跺崟id
+ else if (!string.isblank(id)) {
+ query += ' and id = :id ';
+ }
+ //鏈�鍚庨渶瑕佹帓搴�
+ query += ' order by createdDate asc ';
+ System.debug('sql璇彞锛�' + query);
+ return Database.getQueryLocator(query);
+ }
+ //15鍒嗛挓batch bug 23:45 ~ 2:30 涔嬮棿鍙繍琛� 澶村熬鍚勪竴娆�
+ public static ScBean setSc(String baseName, Integer minhour, Integer maxhour, Integer minMin, String spbefore, String spafter) {
+ Datetime dt = Datetime.now();
+ Integer year = Integer.valueOf(dt.format('yyyy'));
+ Integer month = Integer.valueOf(dt.format('MM'));
+ Integer day = Integer.valueOf(dt.format('dd'));
+ Integer hour = Integer.valueOf(dt.format('HH'));
+ Integer min = Integer.valueOf(dt.format('mm'));
+ ScBean b = new ScBean();
+ if (hour == maxhour && min >= (minMin + 45)) {
+ b.scName = baseName + '001';
+ if (spafter != null && String.isNotBlank(spafter)) {
+ b.scName = baseName + '005';
+ b.scTime = spafter + ' ' + day + ' ' + month + ' ? ' + year;
+
+ // system.schedule(sJobame,spafter + ' ' + day + ' ' + month + ' ? ' + year, new AgencyShareUpdateBatchSchedule());
+ return b;
+ } else {
+ dt = Datetime.now().addDays(1);
+ year = Integer.valueOf(dt.format('yyyy'));
+ month = Integer.valueOf(dt.format('MM'));
+ day = Integer.valueOf(dt.format('dd'));
+ hour = Integer.valueOf(dt.format('HH'));
+ min = Integer.valueOf(dt.format('mm'));
+ if (spbefore != null && String.isNotBlank(spbefore)) {
+ b.scName = baseName + '006';
+ // '0 20 8
+ b.scTime = spbefore + ' ' + day + ' ' + month + ' ? ' + year;
+ // system.schedule(sJobame,spbefore + ' ' + day + ' ' + month + ' ? ' + year, new AgencyShareUpdateBatchSchedule());
+ } else {
+ b.scTime = '0 ' + minMin + ' ' + minhour + ' ' + day + ' ' + month + ' ? ' + year;
+ // system.schedule(sJobame,'0 ' + minMin + ' ' + minhour + ' ' + day + ' ' + month + ' ? ' + year, new AgencyShareUpdateBatchSchedule());
+ }
+ }
+ } else if (min < minMin) {
+ b.scName = baseName + '001';
+ b.scTime = '0 ' + minMin + ' ' + hour + ' ' + day + ' ' + month + ' ? ' + year;
+ // system.schedule(sJobame,'0 ' + minMin + ' ' + hour + ' ' + day + ' ' + month + ' ? ' + year, new AgencyShareUpdateBatchSchedule());
+ } else if (min < minMin + 15) {
+ b.scName = baseName + '002';
+ b.scTime = '0 ' + (minMin + 15) + ' ' + hour + ' ' + day + ' ' + month + ' ? ' + year;
+ // system.schedule(sJobame,'0 ' + (minMin + 15) + ' ' + hour + ' ' + day + ' ' + month + ' ? ' + year, new AgencyShareUpdateBatchSchedule());
+ } else if (min < minMin + 30) {
+ b.scName = baseName + '003';
+ b.scTime = '0 ' + (minMin + 30) + ' ' + hour + ' ' + day + ' ' + month + ' ? ' + year;
+ // system.schedule(sJobame,'0 ' + (minMin + 30) + ' ' + hour + ' ' + day + ' ' + month + ' ? ' + year, new AgencyShareUpdateBatchSchedule());
+ } else if (min < minMin + 45) {
+ b.scName = baseName + '004';
+ b.scTime = '0 ' + (minMin + 45) + ' ' + hour + ' ' + day + ' ' + month + ' ? ' + year;
+ // system.schedule(sJobame,'0 ' + (minMin + 45) + ' ' + hour + ' ' + day + ' ' + month + ' ? ' + year, new AgencyShareUpdateBatchSchedule());
+ } else {
+ b.scName = baseName + '001';
+ b.scTime = '0 ' + minMin + ' ' + (hour + 1) + ' ' + day + ' ' + month + ' ? ' + year;
+ // system.schedule(sJobame,'0 ' + minMin + ' ' + (hour + 1) +' ' + day + ' ' + month + ' ? ' + year, new AgencyShareUpdateBatchSchedule());
+
+ }
+ return b;
+ }
+
+ public static void removeOtherSc(String likeName, String needName) {
+ String likeStr = likeName + '00%';
+ for (CronTrigger ct : [SELECT Id, CronJobDetailId, CronExpression, CronJobDetail.Name
+ FROM CronTrigger
+ WHERE CronJobDetail.Name Like :likeStr
+ AND CronJobDetail.Name != :needName]) {
+ System.abortJob(ct.Id);
+ }
+ }
+
+ global void execute(Database.BatchableContext BC, list < eSignForm__c > eSignList) {
+ //鐢ㄤ綔褰曞叆琛ㄧ殑妫�绱㈡潯浠�
+ List < String > esFormidList = new List < String > ();
+ //瀛樻斁绛炬敹鍗曞綍鍏ヨ〃鏄庣粏
+ List < eSignFormLineItemEntry__c > eSignFormLineItemEntryList = new List < eSignFormLineItemEntry__c > ();
+ //鐢ㄤ綔绛炬敹鍗曟槑缁嗙殑妫�绱㈡潯浠�
+ List < String > eSignFormLineIdList = new List < String > ();
+ //鏇存柊鐨勭鏀跺崟鏄庣粏
+ List < eSignFormLineItem__c > eSignFormLuRUList = new List < eSignFormLineItem__c > ();
+ //瀛樻斁鏈�鍚庢洿鏂扮殑 褰曞叆琛╥d
+ List < Id > fileIdList = new List < Id > ();
+ //瀛樻斁鏈�鏂扮殑 绛炬敹鍗昳d锛岀鏀跺崟褰曞叆id
+ Map < Id, Id > eSignIdMap = new Map < Id, Id > ();
+
+ //瀛樻斁鏈�鏂扮殑 绛炬敹鍗昳d锛岀鏀跺崟褰曞叆id 鐢ㄤ簬鏈�鍚庝竴鏉$鏀跺崟褰曞叆琛ㄤ笉鍒犻櫎
+ Map < Id, Id > eSignFormLastIdMap = new Map < Id, Id > ();
+
+ //瀛樻斁鏈�鏂扮殑 绛炬敹鍗昳d锛岀鏀跺崟褰曞叆id 鐢ㄤ簬鏂囦欢鏇存柊
+ Map < Id, Id > eSignFlieIdMap = new Map < Id, Id > ();
+
+ //瀛樻斁褰曞叆琛╥d锛屽綍鍏ヨ〃
+ Map < String, eSignFormEntry__c > lasteSignFormEntryMap = new Map < String, eSignFormEntry__c > ();
+ //瀛樻斁鏈�鏂扮殑 绛炬敹鍗曟槑缁唅d锛岀鏀跺崟鏄庣粏褰曞叆id
+ Map < Id, Id > eSignFormLineItemEntryIdMap = new Map < Id, Id > ();
+ //绛炬敹鍗曞綍鍏ヨ〃鏄庣粏id锛岀鏀跺崟褰曞叆琛ㄦ槑缁�
+ Map < String, eSignFormLineItemEntry__c > lasteSignFormLineItemEntryMap = new Map < String, eSignFormLineItemEntry__c > ();
+ //瀛樻斁 绛炬敹鍗昳d,鏂囦欢鏁伴噺
+ Map < String, Integer > fileMap = new Map < String, Integer > ();
+ //椹冲洖鍚庡垹闄ゆ枃浠� 鍚� 鎺掑簭闂 绮剧悽鎶�鏈� wql 2020/12/24 start
+ List<Attachment> esignAttachAgencyList = new List<Attachment>();
+ List<Attachment> esignAttachHPList = new List<Attachment>();
+ Map<String, Integer> fileAgencyMap = new Map<String, Integer>();
+ Map<String, Integer> fileHPMap = new Map<String, Integer>();
+ //椹冲洖鍚庡垹闄ゆ枃浠� 鍚� 鎺掑簭闂 绮剧悽鎶�鏈� wql 2020/12/24 end
+ //瀛樻斁ocsm绠$悊鐪�
+ List < String > provinceList = new List < String > ();
+ //瀛樻斁15浣嶇鏀跺崟id,ocsm绠$悊鐪�
+ Map < Id, String > provinceMap = new Map < Id, String > ();
+ //瀛樻斁鐢ㄤ簬鏇存柊鐨勭鏀跺崟鏁扮粍
+ List < eSignForm__c > eSignFormList = new List < eSignForm__c > ();
+ //瀛樻斁绛炬敹鍗曞綍鍏ヨ〃id锛宯ame
+ Map < Id, String > eSignNameMap = new Map < Id, String > ();
+ //瀛樻斁绛炬敹鍗曞綍鍏ヨ〃id锛宼ype
+ Map < Id, String > eSignTypeMap = new Map < Id, String > ();
+
+ //鍒犻櫎涓棿琛ㄦ暟鎹敤
+ Map < String, eSignFormEntry__c > eSignStringMap = new Map < String, eSignFormEntry__c > ();
+ //瀛樻斁鎵�鏈夌鏀跺崟褰曞叆琛╥d
+ List < String > luruIsSubmitList = new List < String > ();
+
+ //瀛樻斁鎵�鏈夌鏀跺崟褰曞叆琛╥d
+ List < String > luruIsLastSubmitList = new List < String > ();
+ //鍒ゆ柇鏄惁鏈夋湭澶勭悊鐨勫綍鍏ヨ〃
+ Map < Id, eSignFormEntry__c > unprocessedESignEneryMap = new Map < Id, eSignFormEntry__c > ();
+
+ //鐢ㄤ簬鍒ゆ柇鍒犻櫎椹冲洖鐨勯檮浠剁殑绛涢�夋潯浠�
+ Map < Id, eSignForm__c > rejectESignEneryMap = new Map < Id, eSignForm__c > ();
+ //椹冲洖鍚� 鍒犻櫎涔嬪墠涓婁紶鐨勬枃浠秈d
+ List<Attachment> deleteLastFileList = new List<Attachment>();
+ //瀛樻斁鏈洿鏂板墠鐨勭粡閿�鍟嗗鎵圭姸鎬�
+ Map < String, String > oldESignAgencyStatusMap = new Map < String, String > ();
+ //瀛樻斁鏈洿鏂板墠鐨勫尰闄㈠鎵圭姸鎬�
+ Map < String, String > oldESignHPStatusMap = new Map < String, String > ();
+ try {
+ //寰幆瀛樻斁绛炬敹鍗昳d 鐢ㄤ綔妫�绱㈢鏀跺崟褰曞叆琛ㄧ殑鏉′欢
+ system.debug('eSignList:' + eSignList);
+ if (eSignList.size() > 0) {
+ for (eSignForm__c esForm : eSignList) {
+ //瀛樻斁绛炬敹鍗昳d,ocsm绠$悊鐪� 濡傛灉璇环鏄泦閲� 鍒欏彇ocsm绠$悊鐪佷负闆嗛噰璇剧殑鎷呭綋
+ if(esForm.Statu_Achievements__r.Opportunity__r.Group_purchase_PCL__c){
+ provinceMap.put(esForm.Id, '闆嗛噰璇�');
+ //妫�绱㈡潯浠�
+ provinceList.add('闆嗛噰璇�');
+ }else{
+ provinceMap.put(esForm.Id, esForm.OCM_man_province_cus__c);
+ //妫�绱㈡潯浠�
+ provinceList.add(esForm.OCM_man_province_cus__c);
+ }
+
+ esFormidList.add(esForm.Id);
+
+ //鏈夌粡閿�鍟嗛┏鍥炴垨鑰呭尰闄㈤┏鍥炴椂鍒犻櫎涔嬪墠闄勪欢
+ if (esForm.agencyRejectDate__c != null || esForm.HPRejectDate__c != null) {
+ rejectESignEneryMap.put(esForm.Id, esForm);
+ }
+
+
+ }
+ }
+ system.debug('rejectESignEneryMap:' + rejectESignEneryMap);
+ //濡傛灉map涓嶄负绌� 鍒欎綔涓虹瓫閫夋潯浠�
+ if (rejectESignEneryMap.size()>0) {
+ List<Attachment> deleteFileList = [SELECT parentId, createdDate, Name,Description
+ FROM Attachment
+ WHERE parentId IN: rejectESignEneryMap.keySet() order by createdDate];
+ system.debug('deleteFileList:' + deleteFileList);
+ if (deleteFileList.size() > 0) {
+ for (eSignForm__c esFile : rejectESignEneryMap.values()) {
+
+ for (Attachment att : deleteFileList) {
+ if (esFile.agencyRejectDate__c != null || esFile.HPRejectDate__c != null) {
+ if (att.parentId == esFile.Id ) {
+ //鈶犵粡閿�鍟嗛┏鍥炲悗闇�瑕佸垹闄ょ殑闄勪欢
+ if (esFile.agencyRejectDate__c != null) {
+ if (att.Name.substring(0, 1) == 'A' && att.createdDate < esFile.agencyRejectDate__c) {
+ deleteLastFileList.add(att);
+ }
+ }
+ //鈶″尰闄㈤┏鍥炲悗闇�瑕佸垹闄ょ殑闄勪欢
+ if (esFile.HPRejectDate__c != null) {
+ if (att.Name.substring(0, 1) == 'H' && att.createdDate < esFile.HPRejectDate__c) {
+ deleteLastFileList.add(att);
+ }
+ }
+ }
+
+
+ }
+ }
+
+ }
+
+
+ }
+ }
+ system.debug('椹冲洖鍚庡垹闄ょ殑鏂囦欢锛�' + deleteLastFileList);
+ //鍏堝垹鍚庡
+ if (deleteLastFileList.size() > 0) {
+ delete deleteLastFileList;
+ }
+
+ //妫�绱㈡墍鏈夊綍鍏ヨ〃
+ List < eSignFormEntry__c > eSignFormEntryList = [select id, Name, entryType__c, eSignForm__c, eSignForm__r.OCM_man_province_cus__c, salesManageConfirmDate__c, salesHPManageConfirmDate__c, agencyScanDayBack__c, agencySignUpDateBack__c, agencyConfirmDateBack__c, HPScanDayBack__c, HPSignUpDateBack__c, HPConfirmDateBack__c,
+ eSignForm__r.Name, IsSubmit__c, IsHPSubmit__c, IsAgencyConfirmSubmit__c, agencyAutoSignUpStatus__c, HPSignUpStatus__c, Sales_Root_Formula__c, Sales_assistant_ID__c, IsHandled__c, IsHPHandled__c, createdDate, AgencyWorkflowEmailBack__c, HPWorkflowEmailBack__c, AgencyWorkflowEmail__c, HPWorkflowEmail__c, eSignForm__r.Id, agencyDNSignUpStatus__c, HPDNSignUpStatus__c, agencyReject__c, HPReject__c, IsAgencyScan__c, IsHPScan__c
+ from eSignFormEntry__c
+ where eSignForm__c IN: esFormidList
+ order by eSignForm__c, createdDate asc
+ ];
+
+ if (eSignFormEntryList.size() > 0) {
+ for (Id eid : esFormidList) {
+ //閬嶅巻鎵�鏈夌鏀跺崟
+ for (eSignFormEntry__c eSignFormEntryWhole : eSignFormEntryList) {
+ //鍒犻櫎鐢�
+ eSignStringMap.put(eSignFormEntryWhole.Id, eSignFormEntryWhole);
+ //鈶℃墍鏈夌殑 鐢ㄤ簬鏇存柊鏂囦欢(鍖呭惈宸插鐞嗘湭澶勭悊鐨勬暟鎹� )
+ fileIdList.add(eSignFormEntryWhole.Id);
+ if (eSignFormEntryWhole.IsHandled__c == false) {
+ //鏈鐞嗙殑
+ unprocessedESignEneryMap.put(eid, eSignFormEntryWhole);
+ }
+ if (eSignFormEntryWhole.eSignForm__r.Id == eid) {
+ //瀛樻斁 绛炬敹鍗昳d锛屽綍鍏ヨ〃id 鏂囦欢鐢�
+ eSignFlieIdMap.put(eSignFormEntryWhole.Id, eid);
+ //瀛樻斁绛炬敹鍗曞綍鍏ヨ〃锛宨d锛宯ame 鏂囦欢鐢�
+ eSignNameMap.put(eid, eSignFormEntryWhole.eSignForm__r.Name);
+ }
+
+
+ //瀛樻斁褰曞叆琛╥d锛岃褰曠被鍨� id锛宼ype 鏂囦欢鐢�
+ eSignTypeMap.put(eSignFormEntryWhole.Id, eSignFormEntryWhole.entryType__c);
+ }
+ }
+
+ system.debug('eSignFlieIdMap:' + eSignFlieIdMap);
+ //澶栧眰鏄鏀跺崟
+ for (Id esFormid : esFormidList) {
+ //鍐呭眰鏄鏀跺崟褰曞叆琛�
+ for (eSignFormEntry__c eSignFormEntry : eSignFormEntryList) {
+
+ //鈶犲彇鏈�鏂扮殑 褰曞叆琛� + 鏈鐞嗙殑
+ if (esFormid.equals(eSignFormEntry.eSignForm__c)) {
+
+ if (!eSignFormEntry.IsHandled__c) {
+ //瀛樻斁 绛炬敹鍗昳d锛屽綍鍏ヨ〃id
+ eSignIdMap.put(esFormid, eSignFormEntry.Id);
+ lasteSignFormEntryMap.put(esFormid, eSignFormEntry);
+ //鍥犱负鎸夌鏀跺崟鍊掑簭鎺掞紝鎵�浠ョ涓�鏉″氨鏄渶鏂扮殑锛岀洿鎺ヨ烦鍑�
+ // break;
+ }
+ eSignFormLastIdMap.put(esFormid, eSignFormEntry.Id);
+
+ }
+
+ }
+ }
+ //鏈�鍚庢洿鏂扮殑褰曞叆琛╥d
+ for (Id eSignId : eSignIdMap.values()) {
+ luruIsSubmitList.add(eSignId);
+ }
+ //鏈�鍚庢洿鏂扮殑褰曞叆琛╥d
+ for (Id eSignId : eSignFormLastIdMap.values()) {
+ luruIsLastSubmitList.add(eSignId);
+ }
+
+ //閲嶆柊瀵归檮浠舵帓搴� 瑙勫垯鍙樹负鏍规嵁绛炬敹鍗曠幇鏈夐檮浠跺簭鍙疯繘琛屾帓搴� 绮剧悽鎶�鏈� wql start
+ //鏆傛椂瀛樻斁涓�涓嬬鏀跺崟鍚嶇О
+ Map<string, string> tempMap = new Map<string, string>();
+ List<Attachment> tempAttList = [SELECT parentId, createdDate, Name,Description
+ FROM Attachment
+ WHERE parentId IN: esFormidList order by createdDate];
+ if (tempAttList.size() > 0) {
+ //澶栧眰寰幆绛炬敹鍗�
+ for (String es : esFormidList) {
+
+ //鍐呭眰寰幆闄勪欢
+ for (Attachment att : tempAttList) {
+ //濡傛灉id鐩哥瓑
+ if (es.equals(att.parentId)) {
+ //鏍规嵁鍚嶇О鎷嗗垎 瀛樺叆涓嶅悓list
+ String name = att.Name;
+ if (name.substring(0, 1).equals('A')) {
+ esignAttachAgencyList.add(att);
+ } else if (name.substring(0, 1).equals('H')) {
+ esignAttachHPList.add(att);
+ }
+
+ }
+ }
+ //鍒嗗埆瀛樺叆鍒扮粡閿�鍟唎r鍖婚櫌鐨勯檮浠秏ap 鐢ㄤ簬鍚庢湡鍛藉悕
+ if (esignAttachAgencyList.size() > 0) {
+ fileAgencyMap.put(es, esignAttachAgencyList.size());
+ }
+ if (esignAttachHPList.size() > 0) {
+ fileHPMap.put(es, esignAttachHPList.size());
+ }
+ //娓呯┖list 渚涗笅涓�涓鏀跺崟浣跨敤
+ esignAttachAgencyList.clear();
+ esignAttachHPList.clear();
+
+ }
+ }
+ system.debug('fileAgencyMap:' + fileAgencyMap);
+ system.debug('fileHPMap:' + fileHPMap);
+ //閲嶆柊瀵归檮浠舵帓搴� 瑙勫垯鍙樹负鏍规嵁绛炬敹鍗曠幇鏈夐檮浠跺簭鍙疯繘琛屾帓搴� 绮剧悽鎶�鏈� wql end
+
+ //鏍规嵁鎵�鏈夌殑绛炬敹鍗曞綍鍏ヨ〃id妫�绱㈡墍鏈夌殑绛炬敹鍗曟槑缁嗗綍鍏�
+ List < eSignFormLineItemEntry__c > eSignFormLineItemEntryLists = [select id, eSignFormEntry__r.entryType__c, eSignFormEntry__r.IsHandled__c, eSignFormLineItem__c, eSignFormEntry__c,
+ agencyConfirmResult__c, HPConfirmResult__c, HPGoodStatus__c, agencyGoodStatus__c
+ from eSignFormLineItemEntry__c where eSignFormEntry__c in : luruIsSubmitList and eSignFormEntry__r.IsHandled__c = false order by createdDate asc
+ ];
+ if (eSignFormLineItemEntryLists.size() > 0) {
+ for (eSignFormLineItemEntry__c eSignFormLineItemEntry : eSignFormLineItemEntryLists) {
+ eSignFormLineIdList.add(eSignFormLineItemEntry.eSignFormLineItem__c);
+ }
+ }
+ system.debug('eSignFormLineIdList:' + eSignFormLineIdList);
+ if (eSignFormLineIdList.size() > 0) {
+ //鏍规嵁绛炬敹鍗曟槑缁嗗綍鍏ヨ〃 鍘绘绱㈢鏀跺崟鏄庣粏
+ List < eSignFormLineItem__c > eSignFormLineItemList = [select id, agencyGoodStatus__c, HPGoodStatus__c from eSignFormLineItem__c where id IN: eSignFormLineIdList];
+ if (eSignFormLineItemList.size() > 0) {
+ //澶栧眰绛炬敹鍗曟槑缁�
+ for (eSignFormLineItem__c eSignFormLineItem : eSignFormLineItemList) {
+ //鍐呭眰绛炬敹鍗曟槑缁嗗綍鍏�
+ for (eSignFormLineItemEntry__c eSignFormLineItemEntry : eSignFormLineItemEntryLists) {
+ //鏄庣粏id鐩哥瓑瀛樻斁涓�涓猰ap
+ if (eSignFormLineItem.Id.equals(eSignFormLineItemEntry.eSignFormLineItem__c)) {
+ eSignFormLineItemEntryIdMap.put(eSignFormLineItem.Id, eSignFormLineItemEntry.Id);
+ lasteSignFormLineItemEntryMap.put(eSignFormLineItem.Id, eSignFormLineItemEntry);
+ }
+ }
+ }
+ }
+ }
+
+ system.debug('lasteSignFormLineItemEntryMap:' + lasteSignFormLineItemEntryMap);
+ if (eSignFormLineIdList.size() > 0) {
+ //寰幆 鏇存柊绛炬敹鍗�
+ for (Id esefId : eSignFormLineIdList) {
+
+ if (lasteSignFormLineItemEntryMap.containsKey(esefId)) {
+ eSignFormLineItemEntry__c luru = lasteSignFormLineItemEntryMap.get(esefId);
+ //new 涓�涓鏀跺崟鏄庣粏瀵硅薄
+ eSignFormLineItem__c eSignLuRu = new eSignFormLineItem__c();
+ //绛炬敹鍗昳d
+ eSignLuRu.id = esefId;
+ //璐х墿鎯呭喌(缁忛攢鍟嗘敹璐�)
+ eSignLuRu.agencyGoodStatus__c = luru.agencyGoodStatus__c;
+ // //缁忛攢鍟嗙‘璁ょ粨鏋�
+ // eSignLuRu.agencyConfirmResult__c = luru.agencyConfirmResult__c;
+ //璐х墿鎯呭喌(鍖婚櫌鏀惰揣)
+ eSignLuRu.HPGoodStatus__c = luru.HPGoodStatus__c;
+ // //缁忛攢鍟嗙‘璁ょ粨鏋�
+ // eSignLuRu.HPConfirmResult__c = luru.HPConfirmResult__c;
+ //鍚屼竴涓鏀跺崟寰幆閬嶅巻绛炬敹鍗曞綍鍏ヨ〃 鏈�鍚庝竴涓綍鍏ヨ〃浼歛dd鍒版洿鏂版暟缁勪腑
+ if (eSignLuRu != null) {
+ system.debug('绛炬敹鍗曟槑缁嗚薄-----锛�' + eSignLuRu);
+ eSignFormLuRuList.add(eSignLuRu);
+ }
+ }
+
+
+ }
+ }
+ System.debug('鏇存柊鐨勭鏀跺崟鏄庣粏list:' + eSignFormLuRUList);
+ system.debug('esFormidList锛�' + esFormidList);
+ if (unprocessedESignEneryMap.size() > 0) {
+ for (Id eSignFormid : unprocessedESignEneryMap.keySet()) {
+ //new 涓�涓鏀跺崟瀵硅薄
+ eSignForm__c eSignForm = new eSignForm__c();
+
+ String name = '';
+ String idlast = '';
+ boolean IsSubmit = false;
+ boolean IsHPSubmit = false;
+ //閿�鍞笭閬�
+ String Sales_Root_Formula;
+ //褰曞叆绫诲瀷
+ String type;
+ System.debug('lasteSignFormEntryMap:' + lasteSignFormEntryMap);
+ if (lasteSignFormEntryMap.containsKey(eSignFormid)) {
+ eSignForm.id = eSignFormid;
+ //绛炬敹鍗昳d
+ eSignFormEntry__c eSignFormEntry = lasteSignFormEntryMap.get(eSignFormid);
+ //濡傛灉缁忛攢鍟嗙‘璁ゆ棩涓虹┖鐨勮瘽 杩涘幓鍒ゆ柇鏇存柊缁忛攢鍟嗗鎵圭姸鎬�
+ if (eSignFormEntry.agencyDNSignUpStatus__c != '绛炬敹宸插畬鎴�') {
+ if (eSignFormEntry.agencyConfirmDateBack__c == null) {
+ if (eSignFormEntry.IsSubmit__c == true) {
+ eSignForm.agencyAutoSignUpStatus__c = '鐢宠涓�';
+ eSignForm.agencyReject__c = false;
+ } else {
+ if (eSignFormEntry.agencyScanDayBack__c != null && eSignFormEntry.IsAgencyScan__c) {
+ eSignForm.agencyAutoSignUpStatus__c = '鑽夋涓�';
+ eSignForm.agencyReject__c = false;
+
+ }
+ }
+ }
+ //鏈洿鏂板墠鐨勭粡閿�鍟嗗鎵圭姸鎬� 鐢ㄤ簬鏂囦欢绱姹囨��
+ if(eSignFormEntry.agencyAutoSignUpStatus__c!=null &&eSignFormEntry.agencyAutoSignUpStatus__c!=''){
+ oldESignAgencyStatusMap.put('A' + eSignForm.id, eSignFormEntry.agencyAutoSignUpStatus__c);
+ }else{
+ oldESignAgencyStatusMap.put('A' + eSignForm.id, '鏃�');
+ }
+
+ }
+ if (eSignFormEntry.HPDNSignUpStatus__c != '绛炬敹宸插畬鎴�') {
+ //濡傛灉鍖婚櫌纭鏃ヤ负绌虹殑璇� 杩涘幓鍒ゆ柇鏇存柊鍖婚櫌瀹℃壒鐘舵��
+ if (eSignFormEntry.salesHPManageConfirmDate__c == null) {
+ if (eSignFormEntry.IsHPSubmit__c == true) {
+ eSignForm.HPSignUpStatus__c = '鐢宠涓�';
+ eSignForm.HPReject__c = false;
+ } else {
+ if (eSignFormEntry.HPScanDayBack__c != null && eSignFormEntry.IsHPScan__c) {
+ eSignForm.HPSignUpStatus__c = '鑽夋涓�';
+ eSignForm.HPReject__c = false;
+
+ }
+ }
+ }
+ //鏈洿鏂板墠鐨勫尰闄㈠鎵圭姸鎬� 鐢ㄤ簬鏂囦欢绱姹囨��
+ if(eSignFormEntry.HPSignUpStatus__c!=null &&eSignFormEntry.HPSignUpStatus__c!=''){
+ oldESignHPStatusMap.put('H' + eSignForm.id, eSignFormEntry.HPSignUpStatus__c);
+ }else{
+ oldESignHPStatusMap.put('H' + eSignForm.id, '鏃�');
+ }
+
+ }
+
+ //濡傛灉娌″彉鍖栧垯涓嶆洿鏂�
+ if (eSignFormEntry.AgencyWorkflowEmailBack__c != eSignFormEntry.AgencyWorkflowEmail__c) {
+ //缁忛攢鍟嗛偖浠�
+ eSignForm.AgencyWorkflowEmail__c = eSignFormEntry.AgencyWorkflowEmailBack__c;
+ }
+ //濡傛灉娌″彉鍖栧垯涓嶆洿鏂�
+ if (eSignFormEntry.HPWorkflowEmailBack__c != eSignFormEntry.HPWorkflowEmail__c) {
+ //鍖婚櫌閭欢
+ eSignForm.HPWorkflowEmail__c = eSignFormEntry.HPWorkflowEmailBack__c;
+ }
+ if (eSignFormEntry.agencyDNSignUpStatus__c != '绛炬敹宸插畬鎴�') {
+ //缁忛攢鍟嗘壂鎻忔棩
+ if (eSignFormEntry.agencyScanDayBack__c != null) {
+ eSignForm.agencyScanDay__c = eSignFormEntry.agencyScanDayBack__c;
+ }
+ //缁忛攢鍟嗙鏀舵棩
+ if (eSignFormEntry.agencySignUpDateBack__c != null) {
+ eSignForm.agencySignUpDate__c = eSignFormEntry.agencySignUpDateBack__c;
+ }
+ //缁忛攢鍟嗙‘璁ゆ棩
+ if (eSignFormEntry.agencyConfirmDateBack__c != null) {
+ eSignForm.agencyConfirmDate__c = eSignFormEntry.agencyConfirmDateBack__c;
+ }
+ }
+
+ if (eSignFormEntry.HPDNSignUpStatus__c != '绛炬敹宸插畬鎴�') {
+ //鍖婚櫌鎵弿鏃�
+ if (eSignFormEntry.HPScanDayBack__c != null) {
+ eSignForm.HPScanDay__c = eSignFormEntry.HPScanDayBack__c;
+ }
+ //鍖婚櫌绛炬敹鏃�
+ if (eSignFormEntry.HPSignUpDateBack__c != null) {
+ eSignForm.HPSignUpDate__c = eSignFormEntry.HPSignUpDateBack__c;
+ }
+ //鍖婚櫌纭鏃�
+ if (eSignFormEntry.HPConfirmDateBack__c != null) {
+ eSignForm.HPConfirmDate__c = eSignFormEntry.HPConfirmDateBack__c;
+ }
+ }
+
+ //缁欒惀涓氬姪鐞嗚祴鍊�
+ eSignForm.Sales_assistant_name_text__c = eSignFormEntry.Sales_assistant_ID__c;
+ //瀛樹竴涓猧d
+ idlast = eSignFormEntry.Id;
+ //绛炬敹鍗昻ame鐢ㄤ綔鏂囦欢鍛藉悕
+ name = eSignFormEntry.eSignForm__r.Name;
+ //鏄惁缁忛攢鍟嗘彁浜�
+ IsSubmit = eSignFormEntry.IsSubmit__c;
+ //鏄惁鍖婚櫌鎻愪氦
+ IsHPSubmit = eSignFormEntry.IsHPSubmit__c;
+ //鏈�鍚庡綍鍏ヨ〃
+ eSignForm.finalUpadteFrom__c = eSignFormEntry.Id;
+ //閿�鍞笭閬� 鍖哄垎鐩撮攢杩樻槸鍒嗛攢
+ Sales_Root_Formula = eSignFormEntry.Sales_Root_Formula__c;
+ //褰曞叆绫诲瀷
+ type = eSignFormEntry.entryType__c;
+
+ }
+ system.debug('绛炬敹鍗曞璞�-----锛�' + eSignForm);
+ if (eSignForm != null) {
+ system.debug('eSignFormid:' + eSignFormid);
+ if (eSignForm.id != null) {
+
+ eSignFormList.add(eSignForm);
+ }
+
+ }
+ system.debug('eSignFormList111:' + eSignFormList);
+ if (eSignFormList.size() > 0) {
+ //鏇存柊OCSM绠$悊鐪� 鎷呭綋
+ eSignFormList = updateOwner(provinceList, provinceMap, eSignFormList, false);
+ }
+
+
+ }
+ }
+
+
+ }
+
+ if (eSignFormList.size() <= 0) {
+ system.debug('鎴戣蛋鍒拌繖閲屼簡锛�');
+ eSignFormList = updateOwner(provinceList, provinceMap, eSignList, true);
+ }
+
+
+ List<Id> fileList = new List<Id> ();
+ if (fileIdList.size() > 0) {
+ for (Id fileId : fileIdList) {
+ if (!fileList.contains(fileId)) {
+ fileList.add(fileId);
+ }
+
+ }
+ }
+
+ System.debug('fileIdList锛�' + fileIdList);
+ System.debug('fileList锛�' + fileList);
+ //鐢ㄤ簬鏈�鍚巌nsert 闄勪欢
+ List<Attachment> insertAttactment = new List<Attachment>();
+ //闄勪欢 start
+ List<Attachment> attachMentList = [SELECT id, parentId, Body, Name, ContentType,Description from Attachment where parentId IN :fileList and Description!='鐢靛瓙绛炬敹鍗曪細宸插鐞�'];
+ //淇宸插鐞嗘暟鎹� 闄勪欢娌℃洿鏂� 鍗虫病鏈夐檮浠惰兘鎻愪氦鐨刡ug 绮剧悽鎶�鏈� wql 2021/01/19 start
+ List<Attachment> eSignEntryAttachMentList = new List<Attachment>();
+ //鏂囦欢鏁伴噺 鐢ㄤ簬鏂囦欢鍛藉悕
+ Integer agencyCount = 0;
+ Integer hpCount = 0;
+
+ String name;
+ String type ;
+ Integer agencyFileCountNum = 0;
+ Integer hpFileCountNum = 0;
+ Integer i = 0;
+ Integer j = 0;
+ //璁板綍璇ョ鏀跺崟鐨勬渶鏂扮粡閿�鍟嗛檮浠舵暟閲�
+ Map<id,Integer> eSignAgencyAttSum = new Map<id,Integer> ();
+ //璁板綍璇ョ鏀跺崟鐨勬渶鏂板尰闄㈤檮浠舵暟閲�
+ Map<id,Integer> eSignHpAttSum = new Map<id,Integer> ();
+
+ //鍚屼竴鏉″綍鍏ヨ〃澶氫釜闄勪欢鏍囪瘑
+ Boolean agencyNumFlag = false;
+ Boolean hpNumFlag = false;
+
+ //瀛�1鏉℃暟鎹唴澶氫釜闄勪欢 涓�涓浐瀹氬��
+ Integer agencySumCount = 0;
+ Integer hpSumCount = 0;
+
+ if (fileList.size() > 0) {
+ system.debug('attachMentList:' + attachMentList);
+ system.debug('eSignFlieIdMap:' + eSignFlieIdMap);
+ system.debug('eSignNameMap:' + eSignNameMap);
+ for (Id eSignFormEntryId : fileList) {
+
+ for (Attachment attach : attachMentList) {
+
+ if (attach.parentId == eSignFormEntryId) {
+ Id eid = eSignFlieIdMap.get(attach.parentId);
+ system.debug('eid:' + eid);
+
+ name = eSignNameMap.get(eid);
+ system.debug('name:' + name);
+ type = eSignTypeMap.get(attach.parentId);
+
+ //鍥犱负澶栧眰寰幆鏄腑闂磋〃 濡傛灉2鏉′互涓婂綍鍏ヨ〃閮芥湁缁忛攢鍟嗛檮浠� 鍒欎娇鐢ㄦ渶鏂版瀯寤虹殑缁忛攢鍟嗛檮浠舵暟閲忔潵鍛藉悕
+ //鍚﹀垯鍙栨湭鏇存柊涔嬪墠鏈夌殑缁忛攢鍟嗛檮浠舵暟閲� 骞朵笖 涓嶆槸1涓綍鍏ヨ〃澶氫釜闄勪欢 涔熷氨鏄痜alse鐨勬椂鍊� 鍙栨ā鎷熺殑鏈�鏂版暟閲�
+ if(eSignAgencyAttSum.size()>0&&!agencyNumFlag){
+ agencyCount = eSignAgencyAttSum.get(eid);
+ //璁板綍涓�涓渶鏂扮殑闄勪欢鏁�
+ agencySumCount =agencyCount;
+ }else if(agencySumCount>0){
+ //鏈寰幆鍐� 绗竴娆″彇闄勪欢鏁版渶鏂板�� 鍚庣画閮藉湪姝ゅ熀纭�涓奿++
+ agencyCount =agencySumCount;
+ }
+ else if(fileAgencyMap.size() > 0){
+ //鍙湁涓�鏉℃暟鎹椂锛屼娇鐢ㄦ闄勪欢鏁板嵆鍙� 鍚庣画鍦ㄦ鍩虹涓奿++
+ agencyCount = fileAgencyMap.get(eid);
+ }
+
+ //鍚屼竴涓唴閮ㄥ惊鐜噷缃垚true
+ agencyNumFlag = true;
+ //缁忛攢鍟嗛檮浠跺懡鍚� start
+ // if (fileAgencyMap.size() > 0) {
+ // agencyCount = fileAgencyMap.get(eid);
+ // }
+
+ system.debug(name + 'agencyCount:' + agencyCount);
+ if (agencyCount == null || agencyCount == 0) {
+ agencyFileCountNum = 1 + i;
+ } else {
+ agencyFileCountNum = agencyCount + 1 + i;
+ }
+
+ //缁忛攢鍟嗛檮浠跺懡鍚� end
+ //鍥犱负澶栧眰寰幆鏄腑闂磋〃 濡傛灉2鏉′互涓婂綍鍏ヨ〃閮芥湁鍖婚櫌闄勪欢 鍒欎娇鐢ㄦ渶鏂版瀯寤虹殑鍖婚櫌闄勪欢鏁伴噺鏉ュ懡鍚�
+ //鍚﹀垯鍙栨湭鏇存柊涔嬪墠鏈夌殑鍖婚櫌闄勪欢鏁伴噺 骞朵笖 涓嶆槸1涓綍鍏ヨ〃澶氫釜闄勪欢 涔熷氨鏄痜alse鐨勬椂鍊� 鍙栨ā鎷熺殑鏈�鏂版暟閲�
+ if(eSignHpAttSum.size()>0&&!hpNumFlag){
+ hpCount = eSignHpAttSum.get(eid);
+ //璁板綍涓�涓渶鏂扮殑闄勪欢鏁�
+ hpSumCount = hpCount;
+ }else if(hpSumCount >0 ){
+ //鏈寰幆鍐� 绗竴娆″彇闄勪欢鏁版渶鏂板�� 鍚庣画閮藉湪姝ゅ熀纭�涓妀++
+ hpCount =hpSumCount;
+ }
+ else if(fileHPMap.size() > 0){
+ //鍙湁涓�鏉℃暟鎹椂锛屼娇鐢ㄦ闄勪欢鏁板嵆鍙� 鍚庣画鍦ㄦ鍩虹涓妀++
+ hpCount = fileHPMap.get(eid);
+ }
+ //鍚屼竴涓唴閮ㄥ惊鐜噷缃垚true
+ hpNumFlag =true;
+ //鍖婚櫌闄勪欢鍛藉悕 start
+ // if (fileHPMap.size() > 0) {
+ // hpCount = fileHPMap.get(eid);
+ // }
+ system.debug(name + 'hpCount:' + hpCount);
+
+ if (hpCount == null || hpCount == 0) {
+ hpFileCountNum = 1 + j;
+ } else {
+ hpFileCountNum = hpCount + 1 + j;
+ }
+ //鏋勫缓鏈�鏂扮殑绛炬敹鍗曠粡閿�鍟嗛檮浠舵暟閲�
+ if(agencyFileCountNum>0){
+ eSignAgencyAttSum.put(eid,agencyFileCountNum);
+ }
+ //鏋勫缓鏈�鏂扮殑绛炬敹鍗曞尰闄㈤檮浠舵暟閲�
+ if(hpFileCountNum>0){
+ eSignHpAttSum.put(eid,hpFileCountNum);
+ }
+ //鍖婚櫌闄勪欢鍛藉悕 end
+ //鐢ㄤ簬鎷嗗垎缁忛攢鍟�/鍖婚櫌 鍖哄埆鏂囦欢鍚�
+ String finalName = '';
+ String title = '';
+
+ //鏂囦欢鍛藉悕
+ if (type == '缁忛攢鍟嗘敹璐�' || type == '缁忛攢鍟嗙‘璁�') {
+ finalName = 'A-' + name;
+ //鐢ㄤ簬鍒ゆ柇澶氭涓婁紶鏂囦欢鍛藉悕
+ i++;
+ title = finalName + '--' + agencyFileCountNum;
+ } else if (type == '鍖婚櫌鏀惰揣' || type == '鍖婚櫌纭') {
+ finalName = 'H-' + name;
+ //鐢ㄤ簬鍒ゆ柇澶氭涓婁紶鏂囦欢鍛藉悕
+ j++;
+ title = finalName + '--' + hpFileCountNum;
+ } else {
+ finalName = name;
+ }
+
+ system.debug('鏂囦欢鍚嶏細' + title);
+ //鍒ゆ柇涓�涓嬫牸寮忥紝涓嶇劧涓嬭浇涓嬫潵鏄被鍨嬫槸鎵�鏈夋枃浠�
+ // if(attach.ContentType == 'application/pdf'){
+ // title = title +'.pdf';
+ // }else if(attach.ContentType == 'image/jpeg'){
+ // title = title +'.jpg';
+ // }
+ //鍒ゆ柇涓�涓嬫牸寮忥紝涓嶇劧涓嬭浇涓嬫潵鏄被鍨嬫槸鎵�鏈夋枃浠� 鏃犳硶鎵撳紑
+ if (attach.Name.lastIndexOf('.') > -1) {
+ title = title + attach.Name.substring(attach.Name.lastIndexOf('.'));
+ }
+
+ Attachment newAttachment = attach.clone();
+ newAttachment.parentId = eid;
+ newAttachment.name = title;
+ // newAttachment.ContentType =attach.ContentType;
+ //瑕佹洿鏂扮殑绛炬敹鍗曢檮浠�
+ insertAttactment.add(newAttachment);
+ //鍙嶆洿鏂板綍鍏ヨ〃鐨勯檮浠� 鐢ㄦ潵鍒ゆ柇闄勪欢鏄惁琚洿鏂�
+ Attachment oldAttachment = new Attachment();
+ oldAttachment.Id = attach.Id;
+ oldAttachment.Description = '鐢靛瓙绛炬敹鍗曪細宸插鐞�';
+ eSignEntryAttachMentList.add(oldAttachment);
+
+ }
+
+
+ }
+ //鏁村崟寰幆鍚� 娓呯┖鍊�
+ i = 0;
+ j = 0;
+ agencyNumFlag= false;
+ hpNumFlag =false;
+ agencySumCount =0;
+ hpSumCount=0;
+ }
+
+ }
+
+ //鐢靛瓙绛炬敹鍗� 澧炲姞鏈鏇存柊闄勪欢鏁伴噺 2020/01/07 绮剧悽鎶�鏈� wql start
+ //娌℃湁闄勪欢鍒欐牴鏈笉浼氳繘鍏�
+ if (insertAttactment.size() > 0) {
+ insert insertAttactment;
+ //鍙嶅悜鏇存柊褰曞叆琛ㄩ檮浠�
+ if(eSignEntryAttachMentList.size()>0){
+ update eSignEntryAttachMentList;
+ }
+
+ //鏇存柊宸叉彁浜ょ殑绛炬敹鍗曠殑闄勪欢鏁�
+ if (eSignFormList.size() > 0) {
+ //澶栧眰鎵�鏈夌鏀跺崟
+ for (eSignForm__c es : eSignFormList) {
+
+ //a涓虹粡閿�鍟嗛檮浠剁殑鏁伴噺 h涓哄尰闄㈤檮浠剁殑鏁伴噺
+ Integer a = 0;
+ Integer h = 0;
+
+ //鍐呭眰鎵�鏈夐渶瑕佹洿鏂扮殑闄勪欢
+ for (Attachment att : insertAttactment) {
+ if (es.Id != null) {
+ if (es.Id.equals(att.parentId)) {
+ if (es.agencyAutoSignUpStatus__c != null) {
+ if (es.agencyAutoSignUpStatus__c.equals('鐢宠涓�') && oldESignAgencyStatusMap.size()>0) {
+ if(!oldESignAgencyStatusMap.get('A' + es.Id).equals('鐢宠涓�')){
+ if (att.Name.substring(0, 1).equals('A')) {
+ a ++;
+ }
+ }
+
+ }
+ }
+ if (es.HPSignUpStatus__c != null) {
+ if (es.HPSignUpStatus__c.equals('鐢宠涓�') && oldESignHPStatusMap.size()>0) {
+ if(!oldESignHPStatusMap.get('H' + es.Id).equals('鐢宠涓�')){
+ if (att.Name.substring(0, 1).equals('H')) {
+ h ++;
+ }
+ }
+
+ }
+ }
+
+ }
+ }
+
+ }
+
+ //鍙湁鐪熸鎵爜鎻愪氦鐨� 骞朵笖娌℃湁闄勪欢鎵嶄細琚洿鏂�
+ if (es.agencyAutoSignUpStatus__c != null) {
+ if (es.agencyAutoSignUpStatus__c.equals('鐢宠涓�') && oldESignAgencyStatusMap.size()>0) {
+ if(!oldESignAgencyStatusMap.get('A' + es.Id).equals('鐢宠涓�')){
+ es.agencyAttachNum__c = a;
+ }
+
+ }
+ }
+ //鍙湁鐪熸鎵爜鎻愪氦鐨� 骞朵笖娌℃湁闄勪欢鎵嶄細琚洿鏂�
+ if (es.HPSignUpStatus__c != null) {
+ if (es.HPSignUpStatus__c.equals('鐢宠涓�') &&oldESignHPStatusMap.size()>0 ) {
+ if(!oldESignHPStatusMap.get('H' + es.Id).equals('鐢宠涓�')){
+ es.HPAttachNum__c = h;
+ }
+
+
+ }
+ }
+
+ a = 0;
+ h = 0;
+
+ }
+ }
+ //鐢靛瓙绛炬敹鍗� 澧炲姞鏈鏇存柊闄勪欢鏁伴噺 2020/01/07 绮剧悽鎶�鏈� wql end
+ //鏂囦欢 end
+ }
+ system.debug('鏇存柊鐨勭鏀跺崟锛�' + eSignFormList);
+ //鏇存柊绛炬敹鍗曟槑缁嗗苟娣诲姞鏃ュ織
+ if (eSignFormLuRUList.size() > 0) {
+ Database.SaveResult[] lsr = Database.update(eSignFormLuRUList, false);
+ eb.setError(lsr, MAXERRORCNT, eSignFormLineItem__c.sObjectType);
+ for (Integer tIdx = 0; tIdx < lsr.size(); tIdx++) {
+ Database.SaveResult sr = lsr[tIdx];
+ System.debug('sr.isSuccess:' + sr.isSuccess());
+ if (!sr.isSuccess()) {
+ Database.Error emsg = sr.getErrors()[0];
+ iflog.ErrorLog__c += 'ERROR ' + eSignFormList[tIdx].Id + ' eSignFormLineItem__c:' + emsg + '\n';
+ }
+ }
+ }
+ //鏇存柊绛炬敹鍗曞苟娣诲姞鏃ュ織
+ if (eSignFormList.size() > 0) {
+ Database.SaveResult[] lsr = Database.update(eSignFormList, false);
+ eb.setError(lsr, MAXERRORCNT, eSignForm__c.sObjectType);
+ for (Integer tIdx = 0; tIdx < lsr.size(); tIdx++) {
+ Database.SaveResult sr = lsr[tIdx];
+ System.debug('sr.isSuccess:' + sr.isSuccess());
+ if (!sr.isSuccess()) {
+ Database.Error emsg = sr.getErrors()[0];
+ iflog.ErrorLog__c += 'ERROR ' + eSignFormList[tIdx].Id + ' eSignForm__c:' + emsg + '\n';
+ }
+ }
+ }
+
+
+ }catch(NullPointerException npe){
+
+ iflog.ErrorLog__c += 'ERROR 锛� eSignForm__c:绌烘寚閽堥敊璇�-琛屽彿:'+ npe.getLineNumber()+ '\n';
+ }
+ catch (Exception e) {
+ // Database.rollback(sp);
+
+ iflog.ErrorLog__c += 'ERROR 锛� eSignForm__c:'+ e.getMessage() + '\n';
+
+ }
+ try{
+ System.debug('luruIsLastSubmitList:'+luruIsLastSubmitList);
+ if (luruIsLastSubmitList.size() > 0) {
+ //鍒犻櫎涓棿琛ㄦ暟鎹紙鍥犱负浣忎富璇﹀叧绯伙紝鍒犻櫎褰曞叆琛ㄥ嵆鍙級
+ deleteMiddleData(eSignStringMap, luruIsLastSubmitList);
+ }
+ }catch(Exception e){
+ iflog.ErrorLog__c += 'ERROR 锛� eSignForm__c:'+ e.getMessage() + '\n';
+ }
+ //鏂囦欢 end
+ }
+
+ //鍒犻櫎涓棿琛ㄦ暟鎹紙鍥犱负浣忎富璇﹀叧绯伙紝鍒犻櫎褰曞叆琛ㄥ嵆鍙級
+ private static void deleteMiddleData(Map < String, eSignFormEntry__c > eSignStringMap, List < String > luruIsSubmitList) {
+ system.debug('妫�绱㈢殑鎵�鏈夊綍鍏ヨ〃锛�' + eSignStringMap);
+ system.debug('鏈�鍚庡綍鍏ョ殑id 锛�' + luruIsSubmitList + '----鏁伴噺锛�' + luruIsSubmitList.size());
+ list < eSignFormEntry__c > eSignFormDeleteList = new list < eSignFormEntry__c > ();
+ for (String essm : eSignStringMap.keySet()) {
+ for (String lisl : luruIsSubmitList) {
+ if (essm.equals(lisl)) {
+ eSignStringMap.remove(lisl);
+ }
+ }
+ }
+ for (eSignFormEntry__c esfe : eSignStringMap.values()) {
+ eSignFormDeleteList.add(esfe);
+ }
+ system.debug('鍒犻櫎鐨勬暟鎹甶d锛�' + eSignFormDeleteList + '----鏁伴噺锛�' + eSignFormDeleteList.size());
+
+
+
+ //鍒犻櫎绛炬敹鍗曞綍鍏ヨ〃鍏朵粬鏁版嵁
+ if (eSignFormDeleteList.size() > 0) {
+ //寰幆閬嶅巻id 鍒犻櫎鏂囦欢
+ List<String> fileDeleteIdList = new List<String> ();
+ List<Attachment> deleteAttachmentList = new List<Attachment>();
+
+ for (eSignFormEntry__c eSigf : eSignFormDeleteList) {
+ fileDeleteIdList.add(eSigf.Id);
+ }
+ //寰幆鎵惧埌鏂囦欢id
+ if (fileDeleteIdList.size() > 0) {
+
+ // 2022-02-28 shashiming Apex heap size too large
+ // 鍘绘帀Body瀛楁
+ List<Attachment> attachMentList = [SELECT id, parentId, Name, ContentType,Description from Attachment where parentId = :fileDeleteIdList];
+
+ if (attachMentList.size() > 0) {
+ for (Attachment att : attachMentList) {
+ Attachment am = new Attachment();
+ am.Id = att.Id;
+ deleteAttachmentList.add(am);
+ }
+ //鍒犻櫎鏂囦欢
+ if (deleteAttachmentList.size() > 0) {
+ delete deleteAttachmentList;
+ }
+ }
+
+
+ }
+ //鍒犻櫎褰曞叆琛�
+ delete eSignFormDeleteList;
+ }
+ }
+ @TestVisible
+ //鏇存柊钀ヤ笟閮ㄦ媴褰�
+ private static List < eSignForm__c > updateOwner(List < String > provinceList, Map < Id, String > provinceMap, List < eSignForm__c > eSignFormList, boolean ocsmFlag) {
+ //钀ヤ笟鎷呭綋 map
+ Map < String, String > provinceOwnerMap = new Map < String, String > ();
+ //钀ヤ笟鍔╃悊 map
+ Map < String, String > provinceGIMap = new Map < String, String > ();
+
+ List < eSignForm__c > eSignFormLastList = new List < eSignForm__c >();
+ //妫�绱CSM绠$悊鐪佸璞�
+ List < OCM_Management_Province__c > ompList = [select id, Name, SalesManage__c,GI_assistant__c from OCM_Management_Province__c where Name IN: provinceList];
+ //瀛樻斁map<鐪侊紝鎷呭綋>
+ for (OCM_Management_Province__c omp : ompList) {
+ //涓嶇敤map<String,list>鐨� 鍘熷洜鏄� 鎯� ocsm绠$悊鐪� 鍜岀鏀跺崟 钀ヤ笟鎷呭綋鐨勯『搴忎繚鎸佷竴鑷�
+ //String salesManage = omp.SalesManage__c+','+omp.SalesManage2__c+','+omp.SalesManage3__c;
+ //provinceOwnerMap.put(omp.Name, salesManage);
+ provinceOwnerMap.put(omp.Name, omp.SalesManage__c);
+ provinceGIMap.put(omp.Name, omp.GI_assistant__c);
+ }
+ //鈶犱负true鐨勬椂鍊� 鏄叾浠栨病鍙戠敓鍙樺寲鍙湁ocsm鐪佷笂钀ヤ笟鎷呭綋鏀瑰彉
+ //鈶′负false鐨勬椂鍊欙紝鏈変腑闂磋〃姝e父鏇存柊鐨勬儏鍐�
+ //钀ヤ笟鎷呭綋123 鍙兘浠ュ悗涓嶇敤 20201225 start
+ // if(ocsmFlag){
+ // //缁欐渶鍚庤鏇存柊鐨勭鏀跺崟鐨勫鎵硅�咃紙钀ヤ笟閮ㄦ媴褰擄級璧嬪��
+ // for (Integer cnt=0;cnt<eSignFormList.size();cnt++) {
+ // //灏嗛�楀彿鍒嗛殧鐨勫瓧绗︿覆杞负鏁扮粍
+ // //鍥犱负鍏朵腑鏈夐�楀彿锛屾墍浠ヨ偗瀹氫笉涓虹┖
+ // String rcManager = provinceOwnerMap.get(provinceMap.get(eSignFormList[cnt].Id));
+ // String[] result;
+ // if(rcManager !=null && String.isNotBlank(rcManager)){
+ // result= rcManager.split(',');
+ // }
+
+ // if(result.size()>0&&result!=null){
+ // if(result.contains(eSignFormList[cnt].RC_Manager__c)&&result.contains(eSignFormList[cnt].RC_Manager2__c)&&result.contains(eSignFormList[cnt].RC_Manager3__c)){
+ // //鍒欎笉鐢ㄦ洿鏂帮紝杩斿洖null
+ // eSignFormList.remove(cnt);
+ // eSignFormLastList =eSignFormList;
+ // }else{
+ // eSignForm__c eSignForm = new eSignForm__c();
+ // eSignForm.Id = eSignFormList[cnt].Id;
+ // if(result.size()>0){
+ // if(String.isNotBlank(result[0])&&result[0]!=null&&result[0]!=''&&result[0]!='null'){
+ // eSignForm.RC_Manager__c = result[0];
+ // }else{
+ // eSignForm.RC_Manager__c = null;
+ // }
+ // if(String.isNotBlank(result[1])&&result[1]!=null&&result[1]!=''&&result[1]!='null'){
+ // eSignForm.RC_Manager2__c = result[1];
+ // }else{
+ // eSignForm.RC_Manager2__c = null;
+ // }
+ // if(String.isNotBlank(result[2])&&result[2]!=null&&result[2]!=''&&result[2]!='null'){
+ // eSignForm.RC_Manager3__c = result[2];
+ // }else{
+ // eSignForm.RC_Manager3__c = null;
+ // }
+ // }
+ // //eSignForm.RC_Manager__c = provinceOwnerMap.get(provinceMap.get(eSignFormList[cnt].Id));
+ // eSignFormLastList.add(eSignForm);
+ // }
+ // }
+
+
+ // }
+ // return eSignFormLastList;
+
+ // }else{
+ // //缁欐渶鍚庤鏇存柊鐨勭鏀跺崟鐨勫鎵硅�咃紙钀ヤ笟閮ㄦ媴褰擄級璧嬪��
+ // for (eSignForm__c esf: eSignFormList) {
+ // //灏嗛�楀彿鍒嗛殧鐨勫瓧绗︿覆杞负鏁扮粍
+ // //鍥犱负鍏朵腑鏈夐�楀彿锛屾墍浠ヨ偗瀹氫笉涓虹┖
+ // String rcManager = provinceOwnerMap.get(provinceMap.get(esf.Id));
+ // String[] result;
+ // if(rcManager!=null&&String.isNotBlank(rcManager)){
+ // result = rcManager.split(',');
+ // }
+
+ // if(result.size()>0){
+ // if(String.isNotBlank(result[0])&&result[0]!=null&&result[0]!=''&&result[0]!='null'){
+ // esf.RC_Manager__c = result[0];
+ // }
+ // if(String.isNotBlank(result[1])&&result[1]!=null&&result[1]!=''&&result[1]!='null'){
+ // esf.RC_Manager2__c = result[1];
+ // }
+ // if(String.isNotBlank(result[2])&&result[2]!=null&&result[2]!=''&&result[2]!='null'){
+ // esf.RC_Manager3__c = result[2];
+ // }
+ // }
+ // //esf.RC_Manager__c = provinceOwnerMap.get(provinceMap.get(esf.Id));
+ // }
+ // return eSignFormList;
+ // }
+ //钀ヤ笟鎷呭綋123 鍙兘浠ュ悗涓嶇敤 20201225 end
+ if (ocsmFlag) {
+ //缁欐渶鍚庤鏇存柊鐨勭鏀跺崟鐨勫鎵硅�咃紙钀ヤ笟閮ㄦ媴褰擄級璧嬪��
+ for (Integer cnt = 0; cnt < eSignFormList.size(); cnt++) {
+ if (provinceOwnerMap.get(provinceMap.get(eSignFormList[cnt].Id)) != eSignFormList[cnt].RC_Manager__c ||provinceMap.get(eSignFormList[cnt].Id).equals('闆嗛噰璇�')) {
+
+ eSignForm__c eSignForm = new eSignForm__c();
+ eSignForm.Id = eSignFormList[cnt].Id;
+ eSignForm.RC_Manager__c = provinceOwnerMap.get(provinceMap.get(eSignFormList[cnt].Id));
+ //闆嗛噰璇环 钀ヤ笟鍔╃悊闇�瑕佺淮鎶ゆ垚 闆嗛噰璇剧殑SP銆丟I鍔╃悊 绮剧悽鎶�鏈� wql 2021/01/08 start
+ if(provinceMap.get(eSignFormList[cnt].Id).equals('闆嗛噰璇�')){
+ eSignForm.Sales_assistant_name_text__c = provinceGIMap.get(provinceMap.get(eSignFormList[cnt].Id));
+ }
+ //闆嗛噰璇环 钀ヤ笟鍔╃悊闇�瑕佺淮鎶ゆ垚 闆嗛噰璇剧殑SP銆丟I鍔╃悊 绮剧悽鎶�鏈� wql 2021/01/08 end
+ eSignFormLastList.add(eSignForm);
+ }
+
+ }
+ return eSignFormLastList;
+
+ } else {
+ //缁欐渶鍚庤鏇存柊鐨勭鏀跺崟鐨勫鎵硅�咃紙钀ヤ笟閮ㄦ媴褰擄級璧嬪��
+ for (eSignForm__c esf : eSignFormList) {
+ if (provinceOwnerMap.get(provinceMap.get(esf.Id)) != null) {
+ esf.RC_Manager__c = provinceOwnerMap.get(provinceMap.get(esf.Id));
+ //闆嗛噰璇环 钀ヤ笟鍔╃悊闇�瑕佺淮鎶ゆ垚 闆嗛噰璇剧殑SP銆丟I鍔╃悊 绮剧悽鎶�鏈� wql 2021/01/08 start
+ if(provinceMap.get(esf.Id).equals('闆嗛噰璇�')){
+ esf.Sales_assistant_name_text__c = provinceGIMap.get(provinceMap.get(esf.Id));
+ }
+ //闆嗛噰璇环 钀ヤ笟鍔╃悊闇�瑕佺淮鎶ゆ垚 闆嗛噰璇剧殑SP銆丟I鍔╃悊 绮剧悽鎶�鏈� wql 2021/01/08 end
+ }
+
+ }
+ return eSignFormList;
+ }
+
+ }
+
+
+ global void finish(Database.BatchableContext BC) {
+
+ //鏇存柊璇ユ棩蹇楃殑鏁版嵁淇℃伅
+ iflog.Log__c += '\nupdateESignBatchAttachment end';
+ String tmp = iflog.ErrorLog__c;
+ if (iflog.Log__c.length() > 131072) {
+ iflog.Log__c = iflog.Log__c.subString(0, 131065) + ' ...';
+ }
+ if (iflog.ErrorLog__c.length() > 32768) {
+ iflog.ErrorLog__c = iflog.ErrorLog__c.subString(0, 32760) + ' ...';
+ }
+ if (tmp.length() > 65000) {
+ tmp = tmp.substring(0, 65000);
+ tmp += ' ...have more lines...';
+ iflog.ErrorLog__c = tmp;
+ }
+ //鏈夐敊璇墠娣诲姞鏃ュ織锛屼笉鐒舵瘡澶╂瘡15鍒嗛挓鐢熸垚鏃ュ織澶
+ if (tmp.length() > 0) {
+ insert iflog;
+ }
+
+ system.debug('鎵嬪姩浼犲弬锛�' + ManualExecution_Identification);
+ //鎵嬪姩浼犲弬鎵ц鍒欎笉杩涘叆鍒涘缓璁″垝鐨勪綔涓�
+ if (!ManualExecution_Identification) {
+ Boolean haveError = false;
+ String body = scErrorMessage;
+ for (Id objId : eb.messageMap.keySet()) {
+ haveError = true;
+ body += eb.messageMap.get(objId) + '<br/>';
+ }
+ if (eb.overMax) {
+ body += ':Over ' + MAXERRORCNT + 'Record<br/>';
+ }
+ updateESignBatchAttachment.removeOtherSc('updateESignFormSchedule', scB.scName);
+ if (haveError == true || String.isNotBlank(scErrorMessage)) {
+ // Batch銉︺兗銈禝d
+ //鍐欐绮剧悽鐢ㄦ埛 涓婄嚎鍚庡簲璇ヤ細淇敼鎴愯嚜瀹氫箟鏍囩
+ // String batchUserId = '00510000005sEEM';
+ String batchUserId = System.Label.Batch_User_Id;
+ List<User> us = [Select Id, NAme, Email From User Where Id = : batchUserId];
+ if (!us.isEmpty()) {
+ User use = us[0];
+ if (String.isNotBlank(use.Email)) {
+ List<String> MailCc;
+ if (System.Label.ESign_Error_Send_To_CC != 'null') {
+ MailCc = System.Label.ESign_Error_Send_To_CC.split(',');
+ }
+ FixtureUtil.sendMessage(batchUserId,
+ MailCc,
+ 'updateESignBatchAttachment Error',
+ body
+ );
+ }
+ }
+ }
+ }
+
+ }
+ public class ErrorBean {
+ // public String objectName;
+ // public String objectLabel;
+ public Map<Id, String> messageMap;
+ public Boolean overMax;
+ // public ErrorBean(Schema.sObjectType obj) {
+ // objectName = obj.getDescribe().getName();
+ // objectLabel = obj.getDescribe().getLabel();
+ // messageMap = new Map<Id, String>();
+ // overMax = false;
+ // }
+ public ErrorBean() {
+ messageMap = new Map<Id, String>();
+ overMax = false;
+ }
+ public void setError (Database.SaveResult[] saveRes, Integer maxCut, Schema.sObjectType obj) {
+ if (messageMap.keySet().size() <= maxCut && overMax == false) {
+ String objectName = obj.getDescribe().getName();
+ String objectLabel = obj.getDescribe().getLabel();
+ for (Database.SaveResult saveRe : saveRes) {
+ if (!saveRe.isSuccess()) {
+ if (!messageMap.containsKey(saveRe.getId())) {
+ if (messageMap.keySet().size() >= maxCut) {
+ overMax = true;
+ break;
+ }
+ for (Database.Error err : saveRe.getErrors()) {
+
+ String message = objectName + ':'
+ + objectLabel + ':'
+ + err.getStatusCode() + ':'
+ + err.getFields() + ':'
+ + err.getMessage();
+ // 鏁版嵁閲岄潰鏈夊鏁伴敊璇俊鎭殑璇濆彧鑾峰彇绗竴鏉�
+ messageMap.put(saveRe.getId(), message);
+ break;
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+
+ //瀹氭椂璺戜换鍔�
+ public Class ScBean {
+ public String scName;
+ public String scTime;
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/classes/updateESignBatchAttachment.cls-meta.xml b/force-app/main/default/classes/updateESignBatchAttachment.cls-meta.xml
new file mode 100644
index 0000000..fbbad0a
--- /dev/null
+++ b/force-app/main/default/classes/updateESignBatchAttachment.cls-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ApexClass xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>56.0</apiVersion>
+ <status>Active</status>
+</ApexClass>
diff --git a/force-app/main/default/classes/updateESignBatchTest.cls b/force-app/main/default/classes/updateESignBatchTest.cls
index 099613d..92a4473 100644
--- a/force-app/main/default/classes/updateESignBatchTest.cls
+++ b/force-app/main/default/classes/updateESignBatchTest.cls
@@ -2,93 +2,110 @@
private class updateESignBatchTest {
//娴嬭瘯缁忛攢鍟嗘敹璐�
static testMethod void testMethod1() {
- List<RecordType> rectCo = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '鐥呴櫌'];
+ List<RecordType> rectCo = [SELECT Id FROM RecordType WHERE IsActive = TRUE AND SobjectType = 'Account' AND Name = '鐥呴櫌'];
if (rectCo.size() == 0) {
return;
}
- List<RecordType> rectSct = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '鎴︾暐绉戝鍒嗛 鍛煎惛绉�'];
+ List<RecordType> rectSct = [
+ SELECT Id
+ FROM RecordType
+ WHERE IsActive = TRUE AND SobjectType = 'Account' AND Name = '鎴︾暐绉戝鍒嗛 鍛煎惛绉�'
+ ];
if (rectSct.size() == 0) {
return;
}
- List<RecordType> rectDpt = [select Id, Name from RecordType where IsActive = true and SobjectType = 'Account' and Name IN ('瑷虹檪绉� 娑堝寲绉�', '瑷虹檪绉� 鍛煎惛绉�') order by Name desc];
+ List<RecordType> rectDpt = [
+ SELECT Id, Name
+ FROM RecordType
+ WHERE IsActive = TRUE AND SobjectType = 'Account' AND Name IN ('瑷虹檪绉� 娑堝寲绉�', '瑷虹檪绉� 鍛煎惛绉�')
+ ORDER BY Name DESC
+ ];
if (rectDpt.size() == 0) {
return;
}
- List<RecordType> rectAs = [select Id, Name from RecordType where IsActive = true and SobjectType = 'Asset' and Name = '澶囧搧'];
+ List<RecordType> rectAs = [SELECT Id, Name FROM RecordType WHERE IsActive = TRUE AND SobjectType = 'Asset' AND Name = '澶囧搧'];
if (rectAs.size() == 0) {
return;
}
-
// insert hospital
Account company1 = new Account();
company1.RecordTypeId = rectCo[0].Id;
company1.Name = '鐥呴櫌銉嗐偣銉�1';
company1.OCM_man_province_txt__c = '姹熻タ';
- List<Account> hps = new Account[]{company1};
+ List<Account> hps = new List<Account>{ company1 };
insert hps;
-
- List<Account> dc1s = [Select Id, Name, Department_Class_Label__c, Sys_Dept_Name_Change_Chk__c from Account where Parent.Id = :company1.Id order by Department_Class_Label__c];
-
+
+ List<Account> dc1s = [
+ SELECT Id, Name, Department_Class_Label__c, Sys_Dept_Name_Change_Chk__c
+ FROM Account
+ WHERE Parent.Id = :company1.Id
+ ORDER BY Department_Class_Label__c
+ ];
+
Account depart1 = new Account();
depart1.RecordTypeId = rectDpt[0].Id;
- depart1.Name = '*';
- depart1.Department_Name__c = '瑷虹檪绉�1';
- depart1.ParentId = dc1s[0].Id;
+ depart1.Name = '*';
+ depart1.Department_Name__c = '瑷虹檪绉�1';
+ depart1.ParentId = dc1s[0].Id;
depart1.Department_Class__c = dc1s[0].Id;
- depart1.Hospital__c = company1.Id;
+ depart1.Hospital__c = company1.Id;
depart1.OCM_man_province_txt__c = '姹熻タ';
-
- insert new Account[] {depart1};
+
+ insert new List<Account>{ depart1 };
List<Product2> prdList = new List<Product2>();
Product2 prd1 = new Product2();
- prd1.ProductCode_Ext__c = 'HistoryPrd1';
- prd1.ProductCode = 'HistoryPrd1';
+ prd1.ProductCode_Ext__c = 'HistoryPrd1';
+ prd1.ProductCode = 'HistoryPrd1';
prd1.Repair_Product_Code__c = 'HistoryPrd1_RP';
- prd1.Name = 'HistoryPrd1';
- prd1.Manual_Entry__c = false;
+ prd1.Name = 'HistoryPrd1';
+ prd1.Manual_Entry__c = false;
prd1.Extend_new_product_gurantee__c = true;
prd1.Extend_Gurantee_Start__c = Date.today().addDays(-60);
prd1.Extend_Gurantee_End__c = Date.today().addDays(60);
prdList.add(prd1);
insert prdList;
-
+
Asset ast = new Asset();
ast.RecordTypeId = rectAs[0].Id;
ast.SerialNumber = 'abcdefg';
ast.Name = '娴嬭瘯璧勪骇1';
- ast.AccountId = depart1.Id;
- ast.Department_Class__c = dc1s[0].Id;
- ast.Hospital__c = company1.Id;
- ast.Product2Id = prd1.Id;
+ ast.AccountId = depart1.Id;
+ ast.Department_Class__c = dc1s[0].Id;
+ ast.Hospital__c = company1.Id;
+ ast.Product2Id = prd1.Id;
ast.Guarantee_period_for_products__c = Date.today();
- ast.InstallDate = Date.today();
+ ast.InstallDate = Date.today();
ast.Manage_type__c = '涓綋绠$悊';
ast.FirstApproveDate_old__c = Date.today().addDays(-30);
Oly_TriggerHandler.bypass('AssetHandler');
insert ast;
-
- Asset ast1 = [select RecordTypeID__c from Asset where Id =: ast.Id];
-
- String RecordTypeID = ast1.RecordTypeID__c;
-
- System.assertEquals(RecordTypeID , ast.RecordTypeId);
- RecordType rectOpp = [select id from RecordType where IsActive = true and SobjectType = 'Opportunity' and DeveloperName = 'Opportunity' ];
+ Asset ast1 = [SELECT RecordTypeID__c FROM Asset WHERE Id = :ast.Id];
+
+ String RecordTypeID = ast1.RecordTypeID__c;
+
+ System.assertEquals(RecordTypeID, ast.RecordTypeId);
+
+ RecordType rectOpp = [
+ SELECT id
+ FROM RecordType
+ WHERE IsActive = TRUE AND SobjectType = 'Opportunity' AND DeveloperName = 'Opportunity'
+ ];
Opportunity opp = new Opportunity(
- Name='testOpp1',
- StageName='寮曞悎',
- CloseDate=Date.today(),
- AccountId=depart1.Id,
- Sales_Root__c = '璨╁2搴�',
- Competitor__c ='A',
- Click_Close_Date__c = null,
- RecordType = rectOpp,
- Trade__c = '鍐呰部'
+ Name = 'testOpp1',
+ StageName = '寮曞悎',
+ CloseDate = Date.today(),
+ AccountId = depart1.Id,
+ Sales_Root__c = '璨╁2搴�',
+ Competitor__c = 'A',
+ Click_Close_Date__c = null,
+ RecordType = rectOpp,
+ Trade__c = '鍐呰部'
);
insert opp;
@@ -103,34 +120,32 @@
insert Sac;
//鏂板缓鐢靛瓙绛炬敹鍗�
- eSignForm__c eSignForm = new eSignForm__c();
- eSignForm.Statu_Achievements__c = Sac.Id;
- eSignForm.Name = '::娴嬭瘯鐢靛瓙绛炬敹鍗�';
+ eSignForm__c eSignForm = new eSignForm__c();
+ eSignForm.Statu_Achievements__c = Sac.Id;
+ eSignForm.Name = '::娴嬭瘯鐢靛瓙绛炬敹鍗�';
-
- insert eSignForm;
+ insert eSignForm;
eSignFormEntry__c eSignFormEntry1 = new eSignFormEntry__c();
eSignFormEntry1.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃1';
eSignFormEntry1.eSignForm__c = eSignForm.Id;
eSignFormEntry1.entryType__c = '缁忛攢鍟嗘敹璐�';
-
+
insert eSignFormEntry1;
- eSignFormEntry__c eSignFormEntry2 = new eSignFormEntry__c();
- eSignFormEntry2.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃2';
- eSignFormEntry2.eSignForm__c = eSignForm.Id;
- eSignFormEntry2.entryType__c = '缁忛攢鍟嗘敹璐�';
+ eSignFormEntry__c eSignFormEntry2 = new eSignFormEntry__c();
+ eSignFormEntry2.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃2';
+ eSignFormEntry2.eSignForm__c = eSignForm.Id;
+ eSignFormEntry2.entryType__c = '缁忛攢鍟嗘敹璐�';
eSignFormEntry2.IsSubmit__c = true;
eSignFormEntry2.agencyScanDayBack__c = Date.today().addDays(-2);
- eSignFormEntry2.agencySignUpDateBack__c =Date.today().addDays(-2);
- eSignFormEntry2.agencyConfirmDateBack__c =Date.today().addDays(-2);
- eSignFormEntry2.HPScanDayBack__c =Date.today().addDays(-2);
- eSignFormEntry2.HPSignUpDateBack__c =Date.today().addDays(-2);
+ eSignFormEntry2.agencySignUpDateBack__c = Date.today().addDays(-2);
+ eSignFormEntry2.agencyConfirmDateBack__c = Date.today().addDays(-2);
+ eSignFormEntry2.HPScanDayBack__c = Date.today().addDays(-2);
+ eSignFormEntry2.HPSignUpDateBack__c = Date.today().addDays(-2);
eSignFormEntry2.HPConfirmDateBack__c = Date.today().addDays(-2);
- // eSignFormEntry2.createdDate = Date.today().addDays(-2);
- insert eSignFormEntry2;
-
+ // eSignFormEntry2.createdDate = Date.today().addDays(-2);
+ insert eSignFormEntry2;
//鏂板缓鐢靛瓙绛炬敹鍗曟槑缁�
eSignFormLineItem__c eSignFormLineItem = new eSignFormLineItem__c();
@@ -143,42 +158,41 @@
eSignFormLineItemEntry__c eSignFormLineItemEntry1 = new eSignFormLineItemEntry__c();
eSignFormLineItemEntry1.Name = '::鐢靛瓙绛炬敹鍗曟槑缁嗗綍鍏�1';
- eSignFormLineItemEntry1.eSignFormEntry__c =eSignFormEntry1.Id;
+ eSignFormLineItemEntry1.eSignFormEntry__c = eSignFormEntry1.Id;
eSignFormLineItemEntry1.eSignFormLineItem__c = eSignFormLineItem.Id;
insert eSignFormLineItemEntry1;
eSignFormLineItemEntry__c eSignFormLineItemEntry2 = new eSignFormLineItemEntry__c();
eSignFormLineItemEntry2.Name = '::鐢靛瓙绛炬敹鍗曟槑缁嗗綍鍏�2';
- eSignFormLineItemEntry2.eSignFormEntry__c =eSignFormEntry2.Id;
+ eSignFormLineItemEntry2.eSignFormEntry__c = eSignFormEntry2.Id;
eSignFormLineItemEntry2.eSignFormLineItem__c = eSignFormLineItem.Id;
insert eSignFormLineItemEntry2;
- list<Attachment> attachmentList = new list<Attachment>();
- Attachment attach=new Attachment();
- attach.Name='Unit Test Attachment';
- Blob bodyBlob=Blob.valueOf('Unit Test Attachment Body');
- attach.body=bodyBlob;
- attach.parentId=eSignFormEntry2.id;
+ list<Attachment> attachmentList = new List<Attachment>();
+ Attachment attach = new Attachment();
+ attach.Name = 'Unit Test Attachment';
+ Blob bodyBlob = Blob.valueOf('Unit Test Attachment Body');
+ attach.body = bodyBlob;
+ attach.parentId = eSignFormEntry2.id;
attach.ContentType = 'application/pdf';
attachmentList.add(attach);
// insert attach;
- Attachment attach1=new Attachment();
- attach1.Name='Unit Test Attachment';
- Blob bodyBlob1=Blob.valueOf('Unit Test Attachment Body');
- attach1.body=bodyBlob1;
- attach1.parentId=eSignForm.id;
+ Attachment attach1 = new Attachment();
+ attach1.Name = 'Unit Test Attachment';
+ Blob bodyBlob1 = Blob.valueOf('Unit Test Attachment Body');
+ attach1.body = bodyBlob1;
+ attach1.parentId = eSignForm.id;
attach1.ContentType = 'application/pdf';
-
+
attachmentList.add(attach1);
insert attachmentList;
Test.startTest();
-
Database.executeBatch(new updateESignBatch(), 20);
Test.stopTest();
@@ -186,92 +200,109 @@
//娴嬭瘯缁忛攢鍟嗙‘璁�
static testMethod void testMethod2() {
- List<RecordType> rectCo = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '鐥呴櫌'];
+ List<RecordType> rectCo = [SELECT Id FROM RecordType WHERE IsActive = TRUE AND SobjectType = 'Account' AND Name = '鐥呴櫌'];
if (rectCo.size() == 0) {
return;
}
- List<RecordType> rectSct = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '鎴︾暐绉戝鍒嗛 鍛煎惛绉�'];
+ List<RecordType> rectSct = [
+ SELECT Id
+ FROM RecordType
+ WHERE IsActive = TRUE AND SobjectType = 'Account' AND Name = '鎴︾暐绉戝鍒嗛 鍛煎惛绉�'
+ ];
if (rectSct.size() == 0) {
return;
}
- List<RecordType> rectDpt = [select Id, Name from RecordType where IsActive = true and SobjectType = 'Account' and Name IN ('瑷虹檪绉� 娑堝寲绉�', '瑷虹檪绉� 鍛煎惛绉�') order by Name desc];
+ List<RecordType> rectDpt = [
+ SELECT Id, Name
+ FROM RecordType
+ WHERE IsActive = TRUE AND SobjectType = 'Account' AND Name IN ('瑷虹檪绉� 娑堝寲绉�', '瑷虹檪绉� 鍛煎惛绉�')
+ ORDER BY Name DESC
+ ];
if (rectDpt.size() == 0) {
return;
}
- List<RecordType> rectAs = [select Id, Name from RecordType where IsActive = true and SobjectType = 'Asset' and Name = '澶囧搧'];
+ List<RecordType> rectAs = [SELECT Id, Name FROM RecordType WHERE IsActive = TRUE AND SobjectType = 'Asset' AND Name = '澶囧搧'];
if (rectAs.size() == 0) {
return;
}
-
// insert hospital
Account company1 = new Account();
company1.RecordTypeId = rectCo[0].Id;
company1.Name = '鐥呴櫌銉嗐偣銉�1';
company1.OCM_man_province_txt__c = '姹熻タ';
- List<Account> hps = new Account[]{company1};
+ List<Account> hps = new List<Account>{ company1 };
insert hps;
-
- List<Account> dc1s = [Select Id, Name, Department_Class_Label__c, Sys_Dept_Name_Change_Chk__c from Account where Parent.Id = :company1.Id order by Department_Class_Label__c];
-
+
+ List<Account> dc1s = [
+ SELECT Id, Name, Department_Class_Label__c, Sys_Dept_Name_Change_Chk__c
+ FROM Account
+ WHERE Parent.Id = :company1.Id
+ ORDER BY Department_Class_Label__c
+ ];
+
Account depart1 = new Account();
depart1.RecordTypeId = rectDpt[0].Id;
- depart1.Name = '*';
- depart1.Department_Name__c = '瑷虹檪绉�1';
- depart1.ParentId = dc1s[0].Id;
+ depart1.Name = '*';
+ depart1.Department_Name__c = '瑷虹檪绉�1';
+ depart1.ParentId = dc1s[0].Id;
depart1.Department_Class__c = dc1s[0].Id;
- depart1.Hospital__c = company1.Id;
+ depart1.Hospital__c = company1.Id;
depart1.OCM_man_province_txt__c = '姹熻タ';
-
- insert new Account[] {depart1};
+
+ insert new List<Account>{ depart1 };
List<Product2> prdList = new List<Product2>();
Product2 prd1 = new Product2();
- prd1.ProductCode_Ext__c = 'HistoryPrd1';
- prd1.ProductCode = 'HistoryPrd1';
+ prd1.ProductCode_Ext__c = 'HistoryPrd1';
+ prd1.ProductCode = 'HistoryPrd1';
prd1.Repair_Product_Code__c = 'HistoryPrd1_RP';
- prd1.Name = 'HistoryPrd1';
- prd1.Manual_Entry__c = false;
+ prd1.Name = 'HistoryPrd1';
+ prd1.Manual_Entry__c = false;
prd1.Extend_new_product_gurantee__c = true;
prd1.Extend_Gurantee_Start__c = Date.today().addDays(-60);
prd1.Extend_Gurantee_End__c = Date.today().addDays(60);
prdList.add(prd1);
insert prdList;
-
+
Asset ast = new Asset();
ast.RecordTypeId = rectAs[0].Id;
ast.SerialNumber = 'abcdefg';
ast.Name = '娴嬭瘯璧勪骇1';
- ast.AccountId = depart1.Id;
- ast.Department_Class__c = dc1s[0].Id;
- ast.Hospital__c = company1.Id;
- ast.Product2Id = prd1.Id;
+ ast.AccountId = depart1.Id;
+ ast.Department_Class__c = dc1s[0].Id;
+ ast.Hospital__c = company1.Id;
+ ast.Product2Id = prd1.Id;
ast.Guarantee_period_for_products__c = Date.today();
- ast.InstallDate = Date.today();
+ ast.InstallDate = Date.today();
ast.Manage_type__c = '涓綋绠$悊';
ast.FirstApproveDate_old__c = Date.today().addDays(-30);
Oly_TriggerHandler.bypass('AssetHandler');
insert ast;
-
- Asset ast1 = [select RecordTypeID__c from Asset where Id =: ast.Id];
-
- String RecordTypeID = ast1.RecordTypeID__c;
-
- System.assertEquals(RecordTypeID , ast.RecordTypeId);
- RecordType rectOpp = [select id from RecordType where IsActive = true and SobjectType = 'Opportunity' and DeveloperName = 'Opportunity' ];
+ Asset ast1 = [SELECT RecordTypeID__c FROM Asset WHERE Id = :ast.Id];
+
+ String RecordTypeID = ast1.RecordTypeID__c;
+
+ System.assertEquals(RecordTypeID, ast.RecordTypeId);
+
+ RecordType rectOpp = [
+ SELECT id
+ FROM RecordType
+ WHERE IsActive = TRUE AND SobjectType = 'Opportunity' AND DeveloperName = 'Opportunity'
+ ];
Opportunity opp = new Opportunity(
- Name='testOpp1',
- StageName='寮曞悎',
- CloseDate=Date.today(),
- AccountId=depart1.Id,
- Sales_Root__c = '璨╁2搴�',
- Competitor__c ='A',
- Click_Close_Date__c = null,
- RecordType = rectOpp
+ Name = 'testOpp1',
+ StageName = '寮曞悎',
+ CloseDate = Date.today(),
+ AccountId = depart1.Id,
+ Sales_Root__c = '璨╁2搴�',
+ Competitor__c = 'A',
+ Click_Close_Date__c = null,
+ RecordType = rectOpp
);
insert opp;
@@ -296,7 +327,7 @@
eSignFormEntry1.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃1';
eSignFormEntry1.eSignForm__c = eSignForm.Id;
eSignFormEntry1.entryType__c = '缁忛攢鍟嗙‘璁�';
-
+
insert eSignFormEntry1;
eSignFormEntry__c eSignFormEntry2 = new eSignFormEntry__c();
@@ -305,14 +336,13 @@
eSignFormEntry2.entryType__c = '缁忛攢鍟嗙‘璁�';
eSignFormEntry2.IsSubmit__c = true;
eSignFormEntry2.agencyScanDayBack__c = Date.today().addDays(-2);
- eSignFormEntry2.agencySignUpDateBack__c =Date.today().addDays(-2);
- eSignFormEntry2.agencyConfirmDateBack__c =Date.today().addDays(-2);
- eSignFormEntry2.HPScanDayBack__c =Date.today().addDays(-2);
- eSignFormEntry2.HPSignUpDateBack__c =Date.today().addDays(-2);
+ eSignFormEntry2.agencySignUpDateBack__c = Date.today().addDays(-2);
+ eSignFormEntry2.agencyConfirmDateBack__c = Date.today().addDays(-2);
+ eSignFormEntry2.HPScanDayBack__c = Date.today().addDays(-2);
+ eSignFormEntry2.HPSignUpDateBack__c = Date.today().addDays(-2);
eSignFormEntry2.HPConfirmDateBack__c = Date.today().addDays(-2);
// eSignFormEntry2.createdDate = Date.today().addDays(-2);
insert eSignFormEntry2;
-
//鏂板缓鐢靛瓙绛炬敹鍗曟槑缁�
eSignFormLineItem__c eSignFormLineItem = new eSignFormLineItem__c();
@@ -325,36 +355,36 @@
eSignFormLineItemEntry__c eSignFormLineItemEntry1 = new eSignFormLineItemEntry__c();
eSignFormLineItemEntry1.Name = '::鐢靛瓙绛炬敹鍗曟槑缁嗗綍鍏�1';
- eSignFormLineItemEntry1.eSignFormEntry__c =eSignFormEntry1.Id;
+ eSignFormLineItemEntry1.eSignFormEntry__c = eSignFormEntry1.Id;
eSignFormLineItemEntry1.eSignFormLineItem__c = eSignFormLineItem.Id;
insert eSignFormLineItemEntry1;
eSignFormLineItemEntry__c eSignFormLineItemEntry2 = new eSignFormLineItemEntry__c();
eSignFormLineItemEntry2.Name = '::鐢靛瓙绛炬敹鍗曟槑缁嗗綍鍏�2';
- eSignFormLineItemEntry2.eSignFormEntry__c =eSignFormEntry2.Id;
+ eSignFormLineItemEntry2.eSignFormEntry__c = eSignFormEntry2.Id;
eSignFormLineItemEntry2.eSignFormLineItem__c = eSignFormLineItem.Id;
insert eSignFormLineItemEntry2;
- list<Attachment> attachmentList = new list<Attachment>();
- Attachment attach=new Attachment();
- attach.Name='Unit Test Attachment';
- Blob bodyBlob=Blob.valueOf('Unit Test Attachment Body');
- attach.body=bodyBlob;
- attach.parentId=eSignFormEntry2.id;
- attach.ContentType='image/jpeg';
+ list<Attachment> attachmentList = new List<Attachment>();
+ Attachment attach = new Attachment();
+ attach.Name = 'Unit Test Attachment';
+ Blob bodyBlob = Blob.valueOf('Unit Test Attachment Body');
+ attach.body = bodyBlob;
+ attach.parentId = eSignFormEntry2.id;
+ attach.ContentType = 'image/jpeg';
attachmentList.add(attach);
// insert attach;
- Attachment attach1=new Attachment();
- attach1.Name='Unit Test Attachment';
- Blob bodyBlob1=Blob.valueOf('Unit Test Attachment Body');
- attach1.body=bodyBlob1;
- attach1.parentId=eSignForm.id;
- attach1.ContentType='image/jpeg';
-
+ Attachment attach1 = new Attachment();
+ attach1.Name = 'Unit Test Attachment';
+ Blob bodyBlob1 = Blob.valueOf('Unit Test Attachment Body');
+ attach1.body = bodyBlob1;
+ attach1.parentId = eSignForm.id;
+ attach1.ContentType = 'image/jpeg';
+
attachmentList.add(attach1);
insert attachmentList;
@@ -367,93 +397,110 @@
//娴嬭瘯鍖婚櫌鏀惰揣
static testMethod void testMethod3() {
- List<RecordType> rectCo = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '鐥呴櫌'];
+ List<RecordType> rectCo = [SELECT Id FROM RecordType WHERE IsActive = TRUE AND SobjectType = 'Account' AND Name = '鐥呴櫌'];
if (rectCo.size() == 0) {
return;
}
- List<RecordType> rectSct = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '鎴︾暐绉戝鍒嗛 鍛煎惛绉�'];
+ List<RecordType> rectSct = [
+ SELECT Id
+ FROM RecordType
+ WHERE IsActive = TRUE AND SobjectType = 'Account' AND Name = '鎴︾暐绉戝鍒嗛 鍛煎惛绉�'
+ ];
if (rectSct.size() == 0) {
return;
}
- List<RecordType> rectDpt = [select Id, Name from RecordType where IsActive = true and SobjectType = 'Account' and Name IN ('瑷虹檪绉� 娑堝寲绉�', '瑷虹檪绉� 鍛煎惛绉�') order by Name desc];
+ List<RecordType> rectDpt = [
+ SELECT Id, Name
+ FROM RecordType
+ WHERE IsActive = TRUE AND SobjectType = 'Account' AND Name IN ('瑷虹檪绉� 娑堝寲绉�', '瑷虹檪绉� 鍛煎惛绉�')
+ ORDER BY Name DESC
+ ];
if (rectDpt.size() == 0) {
return;
}
- List<RecordType> rectAs = [select Id, Name from RecordType where IsActive = true and SobjectType = 'Asset' and Name = '澶囧搧'];
+ List<RecordType> rectAs = [SELECT Id, Name FROM RecordType WHERE IsActive = TRUE AND SobjectType = 'Asset' AND Name = '澶囧搧'];
if (rectAs.size() == 0) {
return;
}
-
// insert hospital
Account company1 = new Account();
company1.RecordTypeId = rectCo[0].Id;
company1.Name = '鐥呴櫌銉嗐偣銉�1';
company1.OCM_man_province_txt__c = '姹熻タ';
- List<Account> hps = new Account[]{company1};
+ List<Account> hps = new List<Account>{ company1 };
insert hps;
-
- List<Account> dc1s = [Select Id, Name, Department_Class_Label__c, Sys_Dept_Name_Change_Chk__c from Account where Parent.Id = :company1.Id order by Department_Class_Label__c];
-
+
+ List<Account> dc1s = [
+ SELECT Id, Name, Department_Class_Label__c, Sys_Dept_Name_Change_Chk__c
+ FROM Account
+ WHERE Parent.Id = :company1.Id
+ ORDER BY Department_Class_Label__c
+ ];
+
Account depart1 = new Account();
depart1.RecordTypeId = rectDpt[0].Id;
- depart1.Name = '*';
- depart1.Department_Name__c = '瑷虹檪绉�1';
- depart1.ParentId = dc1s[0].Id;
+ depart1.Name = '*';
+ depart1.Department_Name__c = '瑷虹檪绉�1';
+ depart1.ParentId = dc1s[0].Id;
depart1.Department_Class__c = dc1s[0].Id;
- depart1.Hospital__c = company1.Id;
+ depart1.Hospital__c = company1.Id;
depart1.OCM_man_province_txt__c = '姹熻タ';
-
- insert new Account[] {depart1};
+
+ insert new List<Account>{ depart1 };
List<Product2> prdList = new List<Product2>();
Product2 prd1 = new Product2();
- prd1.ProductCode_Ext__c = 'HistoryPrd1';
- prd1.ProductCode = 'HistoryPrd1';
+ prd1.ProductCode_Ext__c = 'HistoryPrd1';
+ prd1.ProductCode = 'HistoryPrd1';
prd1.Repair_Product_Code__c = 'HistoryPrd1_RP';
- prd1.Name = 'HistoryPrd1';
- prd1.Manual_Entry__c = false;
+ prd1.Name = 'HistoryPrd1';
+ prd1.Manual_Entry__c = false;
prd1.Extend_new_product_gurantee__c = true;
prd1.Extend_Gurantee_Start__c = Date.today().addDays(-60);
prd1.Extend_Gurantee_End__c = Date.today().addDays(60);
prdList.add(prd1);
insert prdList;
-
+
Asset ast = new Asset();
ast.RecordTypeId = rectAs[0].Id;
ast.SerialNumber = 'abcdefg';
ast.Name = '娴嬭瘯璧勪骇1';
- ast.AccountId = depart1.Id;
- ast.Department_Class__c = dc1s[0].Id;
- ast.Hospital__c = company1.Id;
- ast.Product2Id = prd1.Id;
+ ast.AccountId = depart1.Id;
+ ast.Department_Class__c = dc1s[0].Id;
+ ast.Hospital__c = company1.Id;
+ ast.Product2Id = prd1.Id;
ast.Guarantee_period_for_products__c = Date.today();
- ast.InstallDate = Date.today();
+ ast.InstallDate = Date.today();
ast.Manage_type__c = '涓綋绠$悊';
ast.FirstApproveDate_old__c = Date.today().addDays(-30);
Oly_TriggerHandler.bypass('AssetHandler');
insert ast;
-
- Asset ast1 = [select RecordTypeID__c from Asset where Id =: ast.Id];
-
- String RecordTypeID = ast1.RecordTypeID__c;
-
- System.assertEquals(RecordTypeID , ast.RecordTypeId);
- RecordType rectOpp = [select id from RecordType where IsActive = true and SobjectType = 'Opportunity' and DeveloperName = 'Opportunity' ];
+ Asset ast1 = [SELECT RecordTypeID__c FROM Asset WHERE Id = :ast.Id];
+
+ String RecordTypeID = ast1.RecordTypeID__c;
+
+ System.assertEquals(RecordTypeID, ast.RecordTypeId);
+
+ RecordType rectOpp = [
+ SELECT id
+ FROM RecordType
+ WHERE IsActive = TRUE AND SobjectType = 'Opportunity' AND DeveloperName = 'Opportunity'
+ ];
Opportunity opp = new Opportunity(
- Name='testOpp1',
- StageName='寮曞悎',
- CloseDate=Date.today(),
- AccountId=depart1.Id,
- Sales_Root__c = '璨╁2搴�',
- Competitor__c ='A',
- Click_Close_Date__c = null,
- RecordType = rectOpp,
- Trade__c = '鍐呰部'
+ Name = 'testOpp1',
+ StageName = '寮曞悎',
+ CloseDate = Date.today(),
+ AccountId = depart1.Id,
+ Sales_Root__c = '璨╁2搴�',
+ Competitor__c = 'A',
+ Click_Close_Date__c = null,
+ RecordType = rectOpp,
+ Trade__c = '鍐呰部'
);
insert opp;
@@ -478,7 +525,7 @@
eSignFormEntry1.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃1';
eSignFormEntry1.eSignForm__c = eSignForm.Id;
eSignFormEntry1.entryType__c = '鍖婚櫌鏀惰揣';
-
+
insert eSignFormEntry1;
eSignFormEntry__c eSignFormEntry2 = new eSignFormEntry__c();
@@ -487,14 +534,13 @@
eSignFormEntry2.entryType__c = '鍖婚櫌鏀惰揣';
eSignFormEntry2.IsSubmit__c = true;
eSignFormEntry2.agencyScanDayBack__c = Date.today().addDays(-2);
- eSignFormEntry2.agencySignUpDateBack__c =Date.today().addDays(-2);
- eSignFormEntry2.agencyConfirmDateBack__c =Date.today().addDays(-2);
- eSignFormEntry2.HPScanDayBack__c =Date.today().addDays(-2);
- eSignFormEntry2.HPSignUpDateBack__c =Date.today().addDays(-2);
+ eSignFormEntry2.agencySignUpDateBack__c = Date.today().addDays(-2);
+ eSignFormEntry2.agencyConfirmDateBack__c = Date.today().addDays(-2);
+ eSignFormEntry2.HPScanDayBack__c = Date.today().addDays(-2);
+ eSignFormEntry2.HPSignUpDateBack__c = Date.today().addDays(-2);
eSignFormEntry2.HPConfirmDateBack__c = Date.today().addDays(-2);
// eSignFormEntry2.createdDate = Date.today().addDays(-2);
insert eSignFormEntry2;
-
//鏂板缓鐢靛瓙绛炬敹鍗曟槑缁�
eSignFormLineItem__c eSignFormLineItem = new eSignFormLineItem__c();
@@ -507,34 +553,34 @@
eSignFormLineItemEntry__c eSignFormLineItemEntry1 = new eSignFormLineItemEntry__c();
eSignFormLineItemEntry1.Name = '::鐢靛瓙绛炬敹鍗曟槑缁嗗綍鍏�1';
- eSignFormLineItemEntry1.eSignFormEntry__c =eSignFormEntry1.Id;
+ eSignFormLineItemEntry1.eSignFormEntry__c = eSignFormEntry1.Id;
eSignFormLineItemEntry1.eSignFormLineItem__c = eSignFormLineItem.Id;
insert eSignFormLineItemEntry1;
eSignFormLineItemEntry__c eSignFormLineItemEntry2 = new eSignFormLineItemEntry__c();
eSignFormLineItemEntry2.Name = '::鐢靛瓙绛炬敹鍗曟槑缁嗗綍鍏�2';
- eSignFormLineItemEntry2.eSignFormEntry__c =eSignFormEntry2.Id;
+ eSignFormLineItemEntry2.eSignFormEntry__c = eSignFormEntry2.Id;
eSignFormLineItemEntry2.eSignFormLineItem__c = eSignFormLineItem.Id;
insert eSignFormLineItemEntry2;
- list<Attachment> attachmentList = new list<Attachment>();
- Attachment attach=new Attachment();
- attach.Name='Unit Test Attachment';
- Blob bodyBlob=Blob.valueOf('Unit Test Attachment Body');
- attach.body=bodyBlob;
- attach.parentId=eSignFormEntry2.id;
+ list<Attachment> attachmentList = new List<Attachment>();
+ Attachment attach = new Attachment();
+ attach.Name = 'Unit Test Attachment';
+ Blob bodyBlob = Blob.valueOf('Unit Test Attachment Body');
+ attach.body = bodyBlob;
+ attach.parentId = eSignFormEntry2.id;
attachmentList.add(attach);
// insert attach;
- Attachment attach1=new Attachment();
- attach1.Name='Unit Test Attachment';
- Blob bodyBlob1=Blob.valueOf('Unit Test Attachment Body');
- attach1.body=bodyBlob1;
- attach1.parentId=eSignForm.id;
-
+ Attachment attach1 = new Attachment();
+ attach1.Name = 'Unit Test Attachment';
+ Blob bodyBlob1 = Blob.valueOf('Unit Test Attachment Body');
+ attach1.body = bodyBlob1;
+ attach1.parentId = eSignForm.id;
+
attachmentList.add(attach1);
insert attachmentList;
@@ -546,93 +592,110 @@
//娴嬭瘯鍖婚櫌纭
static testMethod void testMethod4() {
- List<RecordType> rectCo = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '鐥呴櫌'];
+ List<RecordType> rectCo = [SELECT Id FROM RecordType WHERE IsActive = TRUE AND SobjectType = 'Account' AND Name = '鐥呴櫌'];
if (rectCo.size() == 0) {
return;
}
- List<RecordType> rectSct = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '鎴︾暐绉戝鍒嗛 鍛煎惛绉�'];
+ List<RecordType> rectSct = [
+ SELECT Id
+ FROM RecordType
+ WHERE IsActive = TRUE AND SobjectType = 'Account' AND Name = '鎴︾暐绉戝鍒嗛 鍛煎惛绉�'
+ ];
if (rectSct.size() == 0) {
return;
}
- List<RecordType> rectDpt = [select Id, Name from RecordType where IsActive = true and SobjectType = 'Account' and Name IN ('瑷虹檪绉� 娑堝寲绉�', '瑷虹檪绉� 鍛煎惛绉�') order by Name desc];
+ List<RecordType> rectDpt = [
+ SELECT Id, Name
+ FROM RecordType
+ WHERE IsActive = TRUE AND SobjectType = 'Account' AND Name IN ('瑷虹檪绉� 娑堝寲绉�', '瑷虹檪绉� 鍛煎惛绉�')
+ ORDER BY Name DESC
+ ];
if (rectDpt.size() == 0) {
return;
}
- List<RecordType> rectAs = [select Id, Name from RecordType where IsActive = true and SobjectType = 'Asset' and Name = '澶囧搧'];
+ List<RecordType> rectAs = [SELECT Id, Name FROM RecordType WHERE IsActive = TRUE AND SobjectType = 'Asset' AND Name = '澶囧搧'];
if (rectAs.size() == 0) {
return;
}
-
// insert hospital
Account company1 = new Account();
company1.RecordTypeId = rectCo[0].Id;
company1.Name = '鐥呴櫌銉嗐偣銉�1';
company1.OCM_man_province_txt__c = '姹熻タ';
- List<Account> hps = new Account[]{company1};
+ List<Account> hps = new List<Account>{ company1 };
insert hps;
-
- List<Account> dc1s = [Select Id, Name, Department_Class_Label__c, Sys_Dept_Name_Change_Chk__c from Account where Parent.Id = :company1.Id order by Department_Class_Label__c];
-
+
+ List<Account> dc1s = [
+ SELECT Id, Name, Department_Class_Label__c, Sys_Dept_Name_Change_Chk__c
+ FROM Account
+ WHERE Parent.Id = :company1.Id
+ ORDER BY Department_Class_Label__c
+ ];
+
Account depart1 = new Account();
depart1.RecordTypeId = rectDpt[0].Id;
- depart1.Name = '*';
- depart1.Department_Name__c = '瑷虹檪绉�1';
- depart1.ParentId = dc1s[0].Id;
+ depart1.Name = '*';
+ depart1.Department_Name__c = '瑷虹檪绉�1';
+ depart1.ParentId = dc1s[0].Id;
depart1.Department_Class__c = dc1s[0].Id;
- depart1.Hospital__c = company1.Id;
+ depart1.Hospital__c = company1.Id;
depart1.OCM_man_province_txt__c = '姹熻タ';
-
- insert new Account[] {depart1};
+
+ insert new List<Account>{ depart1 };
List<Product2> prdList = new List<Product2>();
Product2 prd1 = new Product2();
- prd1.ProductCode_Ext__c = 'HistoryPrd1';
- prd1.ProductCode = 'HistoryPrd1';
+ prd1.ProductCode_Ext__c = 'HistoryPrd1';
+ prd1.ProductCode = 'HistoryPrd1';
prd1.Repair_Product_Code__c = 'HistoryPrd1_RP';
- prd1.Name = 'HistoryPrd1';
- prd1.Manual_Entry__c = false;
+ prd1.Name = 'HistoryPrd1';
+ prd1.Manual_Entry__c = false;
prd1.Extend_new_product_gurantee__c = true;
prd1.Extend_Gurantee_Start__c = Date.today().addDays(-60);
prd1.Extend_Gurantee_End__c = Date.today().addDays(60);
prdList.add(prd1);
insert prdList;
-
+
Asset ast = new Asset();
ast.RecordTypeId = rectAs[0].Id;
ast.SerialNumber = 'abcdefg';
ast.Name = '娴嬭瘯璧勪骇1';
- ast.AccountId = depart1.Id;
- ast.Department_Class__c = dc1s[0].Id;
- ast.Hospital__c = company1.Id;
- ast.Product2Id = prd1.Id;
+ ast.AccountId = depart1.Id;
+ ast.Department_Class__c = dc1s[0].Id;
+ ast.Hospital__c = company1.Id;
+ ast.Product2Id = prd1.Id;
ast.Guarantee_period_for_products__c = Date.today();
- ast.InstallDate = Date.today();
+ ast.InstallDate = Date.today();
ast.Manage_type__c = '涓綋绠$悊';
ast.FirstApproveDate_old__c = Date.today().addDays(-30);
Oly_TriggerHandler.bypass('AssetHandler');
insert ast;
-
- Asset ast1 = [select RecordTypeID__c from Asset where Id =: ast.Id];
-
- String RecordTypeID = ast1.RecordTypeID__c;
-
- System.assertEquals(RecordTypeID , ast.RecordTypeId);
- RecordType rectOpp = [select id from RecordType where IsActive = true and SobjectType = 'Opportunity' and DeveloperName = 'Opportunity' ];
+ Asset ast1 = [SELECT RecordTypeID__c FROM Asset WHERE Id = :ast.Id];
+
+ String RecordTypeID = ast1.RecordTypeID__c;
+
+ System.assertEquals(RecordTypeID, ast.RecordTypeId);
+
+ RecordType rectOpp = [
+ SELECT id
+ FROM RecordType
+ WHERE IsActive = TRUE AND SobjectType = 'Opportunity' AND DeveloperName = 'Opportunity'
+ ];
Opportunity opp = new Opportunity(
- Name='testOpp1',
- StageName='寮曞悎',
- CloseDate=Date.today(),
- AccountId=depart1.Id,
- Sales_Root__c = '璨╁2搴�',
- Competitor__c ='A',
- Click_Close_Date__c = null,
- RecordType = rectOpp,
- Trade__c = '鍐呰部'
+ Name = 'testOpp1',
+ StageName = '寮曞悎',
+ CloseDate = Date.today(),
+ AccountId = depart1.Id,
+ Sales_Root__c = '璨╁2搴�',
+ Competitor__c = 'A',
+ Click_Close_Date__c = null,
+ RecordType = rectOpp,
+ Trade__c = '鍐呰部'
);
insert opp;
@@ -657,7 +720,7 @@
eSignFormEntry1.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃1';
eSignFormEntry1.eSignForm__c = eSignForm.Id;
eSignFormEntry1.entryType__c = '鍖婚櫌纭';
-
+
insert eSignFormEntry1;
eSignFormEntry__c eSignFormEntry2 = new eSignFormEntry__c();
@@ -666,14 +729,13 @@
eSignFormEntry2.entryType__c = '鍖婚櫌纭';
eSignFormEntry2.IsSubmit__c = true;
eSignFormEntry2.agencyScanDayBack__c = Date.today().addDays(-2);
- eSignFormEntry2.agencySignUpDateBack__c =Date.today().addDays(-2);
- eSignFormEntry2.agencyConfirmDateBack__c =Date.today().addDays(-2);
- eSignFormEntry2.HPScanDayBack__c =Date.today().addDays(-2);
- eSignFormEntry2.HPSignUpDateBack__c =Date.today().addDays(-2);
+ eSignFormEntry2.agencySignUpDateBack__c = Date.today().addDays(-2);
+ eSignFormEntry2.agencyConfirmDateBack__c = Date.today().addDays(-2);
+ eSignFormEntry2.HPScanDayBack__c = Date.today().addDays(-2);
+ eSignFormEntry2.HPSignUpDateBack__c = Date.today().addDays(-2);
eSignFormEntry2.HPConfirmDateBack__c = Date.today().addDays(-2);
// eSignFormEntry2.createdDate = Date.today().addDays(-2);
insert eSignFormEntry2;
-
//鏂板缓鐢靛瓙绛炬敹鍗曟槑缁�
eSignFormLineItem__c eSignFormLineItem = new eSignFormLineItem__c();
@@ -686,34 +748,34 @@
eSignFormLineItemEntry__c eSignFormLineItemEntry1 = new eSignFormLineItemEntry__c();
eSignFormLineItemEntry1.Name = '::鐢靛瓙绛炬敹鍗曟槑缁嗗綍鍏�1';
- eSignFormLineItemEntry1.eSignFormEntry__c =eSignFormEntry1.Id;
+ eSignFormLineItemEntry1.eSignFormEntry__c = eSignFormEntry1.Id;
eSignFormLineItemEntry1.eSignFormLineItem__c = eSignFormLineItem.Id;
insert eSignFormLineItemEntry1;
eSignFormLineItemEntry__c eSignFormLineItemEntry2 = new eSignFormLineItemEntry__c();
eSignFormLineItemEntry2.Name = '::鐢靛瓙绛炬敹鍗曟槑缁嗗綍鍏�2';
- eSignFormLineItemEntry2.eSignFormEntry__c =eSignFormEntry2.Id;
+ eSignFormLineItemEntry2.eSignFormEntry__c = eSignFormEntry2.Id;
eSignFormLineItemEntry2.eSignFormLineItem__c = eSignFormLineItem.Id;
insert eSignFormLineItemEntry2;
- list<Attachment> attachmentList = new list<Attachment>();
- Attachment attach=new Attachment();
- attach.Name='Unit Test Attachment';
- Blob bodyBlob=Blob.valueOf('Unit Test Attachment Body');
- attach.body=bodyBlob;
- attach.parentId=eSignFormEntry2.id;
+ list<Attachment> attachmentList = new List<Attachment>();
+ Attachment attach = new Attachment();
+ attach.Name = 'Unit Test Attachment';
+ Blob bodyBlob = Blob.valueOf('Unit Test Attachment Body');
+ attach.body = bodyBlob;
+ attach.parentId = eSignFormEntry2.id;
attachmentList.add(attach);
// insert attach;
- Attachment attach1=new Attachment();
- attach1.Name='Unit Test Attachment';
- Blob bodyBlob1=Blob.valueOf('Unit Test Attachment Body');
- attach1.body=bodyBlob1;
- attach1.parentId=eSignForm.id;
-
+ Attachment attach1 = new Attachment();
+ attach1.Name = 'Unit Test Attachment';
+ Blob bodyBlob1 = Blob.valueOf('Unit Test Attachment Body');
+ attach1.body = bodyBlob1;
+ attach1.parentId = eSignForm.id;
+
attachmentList.add(attach1);
insert attachmentList;
@@ -724,546 +786,111 @@
Test.stopTest();
}
-
static testMethod void testMethod5() {
- List<RecordType> rectCo = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '鐥呴櫌'];
+ List<RecordType> rectCo = [SELECT Id FROM RecordType WHERE IsActive = TRUE AND SobjectType = 'Account' AND Name = '鐥呴櫌'];
if (rectCo.size() == 0) {
return;
}
- List<RecordType> rectSct = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '鎴︾暐绉戝鍒嗛 鍛煎惛绉�'];
+ List<RecordType> rectSct = [
+ SELECT Id
+ FROM RecordType
+ WHERE IsActive = TRUE AND SobjectType = 'Account' AND Name = '鎴︾暐绉戝鍒嗛 鍛煎惛绉�'
+ ];
if (rectSct.size() == 0) {
return;
}
- List<RecordType> rectDpt = [select Id, Name from RecordType where IsActive = true and SobjectType = 'Account' and Name IN ('瑷虹檪绉� 娑堝寲绉�', '瑷虹檪绉� 鍛煎惛绉�') order by Name desc];
+ List<RecordType> rectDpt = [
+ SELECT Id, Name
+ FROM RecordType
+ WHERE IsActive = TRUE AND SobjectType = 'Account' AND Name IN ('瑷虹檪绉� 娑堝寲绉�', '瑷虹檪绉� 鍛煎惛绉�')
+ ORDER BY Name DESC
+ ];
if (rectDpt.size() == 0) {
return;
}
- List<RecordType> rectAs = [select Id, Name from RecordType where IsActive = true and SobjectType = 'Asset' and Name = '澶囧搧'];
+ List<RecordType> rectAs = [SELECT Id, Name FROM RecordType WHERE IsActive = TRUE AND SobjectType = 'Asset' AND Name = '澶囧搧'];
if (rectAs.size() == 0) {
return;
}
-
// insert hospital
Account company1 = new Account();
company1.RecordTypeId = rectCo[0].Id;
company1.Name = '鐥呴櫌銉嗐偣銉�1';
company1.OCM_man_province_txt__c = '姹熻タ';
- List<Account> hps = new Account[]{company1};
+ List<Account> hps = new List<Account>{ company1 };
insert hps;
-
- List<Account> dc1s = [Select Id, Name, Department_Class_Label__c, Sys_Dept_Name_Change_Chk__c from Account where Parent.Id = :company1.Id order by Department_Class_Label__c];
-
+
+ List<Account> dc1s = [
+ SELECT Id, Name, Department_Class_Label__c, Sys_Dept_Name_Change_Chk__c
+ FROM Account
+ WHERE Parent.Id = :company1.Id
+ ORDER BY Department_Class_Label__c
+ ];
+
Account depart1 = new Account();
depart1.RecordTypeId = rectDpt[0].Id;
- depart1.Name = '*';
- depart1.Department_Name__c = '瑷虹檪绉�1';
- depart1.ParentId = dc1s[0].Id;
+ depart1.Name = '*';
+ depart1.Department_Name__c = '瑷虹檪绉�1';
+ depart1.ParentId = dc1s[0].Id;
depart1.Department_Class__c = dc1s[0].Id;
- depart1.Hospital__c = company1.Id;
+ depart1.Hospital__c = company1.Id;
depart1.OCM_man_province_txt__c = '姹熻タ';
-
- insert new Account[] {depart1};
+
+ insert new List<Account>{ depart1 };
List<Product2> prdList = new List<Product2>();
Product2 prd1 = new Product2();
- prd1.ProductCode_Ext__c = 'HistoryPrd1';
- prd1.ProductCode = 'HistoryPrd1';
+ prd1.ProductCode_Ext__c = 'HistoryPrd1';
+ prd1.ProductCode = 'HistoryPrd1';
prd1.Repair_Product_Code__c = 'HistoryPrd1_RP';
- prd1.Name = 'HistoryPrd1';
- prd1.Manual_Entry__c = false;
+ prd1.Name = 'HistoryPrd1';
+ prd1.Manual_Entry__c = false;
prd1.Extend_new_product_gurantee__c = true;
prd1.Extend_Gurantee_Start__c = Date.today().addDays(-60);
prd1.Extend_Gurantee_End__c = Date.today().addDays(60);
prdList.add(prd1);
insert prdList;
-
+
Asset ast = new Asset();
ast.RecordTypeId = rectAs[0].Id;
ast.SerialNumber = 'abcdefg';
ast.Name = '娴嬭瘯璧勪骇1';
- ast.AccountId = depart1.Id;
- ast.Department_Class__c = dc1s[0].Id;
- ast.Hospital__c = company1.Id;
- ast.Product2Id = prd1.Id;
+ ast.AccountId = depart1.Id;
+ ast.Department_Class__c = dc1s[0].Id;
+ ast.Hospital__c = company1.Id;
+ ast.Product2Id = prd1.Id;
ast.Guarantee_period_for_products__c = Date.today();
- ast.InstallDate = Date.today();
+ ast.InstallDate = Date.today();
ast.Manage_type__c = '涓綋绠$悊';
ast.FirstApproveDate_old__c = Date.today().addDays(-30);
Oly_TriggerHandler.bypass('AssetHandler');
insert ast;
-
- Asset ast1 = [select RecordTypeID__c from Asset where Id =: ast.Id];
-
+
+ Asset ast1 = [SELECT RecordTypeID__c FROM Asset WHERE Id = :ast.Id];
+
String RecordTypeID = ast1.RecordTypeID__c;
-
- System.assertEquals(RecordTypeID , ast.RecordTypeId);
- RecordType rectOpp = [select id from RecordType where IsActive = true and SobjectType = 'Opportunity' and DeveloperName = 'Opportunity' ];
+ System.assertEquals(RecordTypeID, ast.RecordTypeId);
+
+ RecordType rectOpp = [
+ SELECT id
+ FROM RecordType
+ WHERE IsActive = TRUE AND SobjectType = 'Opportunity' AND DeveloperName = 'Opportunity'
+ ];
Opportunity opp = new Opportunity(
- Name='testOpp1',
- StageName='寮曞悎',
- CloseDate=Date.today(),
- AccountId=depart1.Id,
- Sales_Root__c = 'OCM鐩存帴璨╁2',
- Competitor__c ='A',
- Click_Close_Date__c = null,
- RecordType = rectOpp,
- Trade__c = '鍐呰部'
- );
- insert opp;
- //娉ㄦ畫
- Statu_Achievements__c Sac = new Statu_Achievements__c(
- name = 'zhucan_one',
- Opportunity__c = opp.id,
- DeliveryDate__c = Date.today(),
- ContractNO__c = 'ContractNO1',
- ContractAmount__c = 1000
- );
- insert Sac;
-
- //鏂板缓鐢靛瓙绛炬敹鍗�
- eSignForm__c eSignForm = new eSignForm__c();
- eSignForm.Statu_Achievements__c = Sac.Id;
- eSignForm.Name = '::娴嬭瘯鐢靛瓙绛炬敹鍗�';
-
- insert eSignForm;
-
- //鏂板缓鐢靛瓙绛炬敹鍗�7
- eSignFormEntry__c eSignFormEntry = new eSignFormEntry__c();
- eSignFormEntry.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
- eSignFormEntry.eSignForm__c = eSignForm.Id;
- eSignFormEntry.entryType__c = '缁忛攢鍟嗘敹璐�';
- // eSignFormEntry.createdDate = Date.today().addDays(-7);
- insert eSignFormEntry;
-
- eSignFormEntry__c eSignFormEntry1 = new eSignFormEntry__c();
- eSignFormEntry1.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
- eSignFormEntry1.eSignForm__c = eSignForm.Id;
- eSignFormEntry1.entryType__c = '缁忛攢鍟嗘敹璐�';
- // eSignFormEntry1.createdDate = Date.today().addDays(-3);
- insert eSignFormEntry1;
-
- eSignFormEntry__c eSignFormEntry2 = new eSignFormEntry__c();
- eSignFormEntry2.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
- eSignFormEntry2.eSignForm__c = eSignForm.Id;
- eSignFormEntry2.entryType__c = '缁忛攢鍟嗘敹璐�';
- eSignFormEntry2.agencyScanDayBack__c = Date.today().addDays(-2);
- eSignFormEntry2.agencySignUpDateBack__c =Date.today().addDays(-2);
- eSignFormEntry2.agencyConfirmDateBack__c =Date.today().addDays(-2);
- eSignFormEntry2.HPScanDayBack__c =Date.today().addDays(-2);
- eSignFormEntry2.HPSignUpDateBack__c =Date.today().addDays(-2);
- eSignFormEntry2.HPConfirmDateBack__c = Date.today().addDays(-2);
- // eSignFormEntry2.createdDate = Date.today().addDays(-2);
- insert eSignFormEntry2;
-
- eSignFormEntry__c eSignFormEntry3 = new eSignFormEntry__c();
- eSignFormEntry3.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
- eSignFormEntry3.eSignForm__c = eSignForm.Id;
- eSignFormEntry3.entryType__c = '缁忛攢鍟嗙‘璁�';
- // eSignFormEntry3.createdDate = Date.today().addDays(-7);
- insert eSignFormEntry3;
-
- eSignFormEntry__c eSignFormEntry4 = new eSignFormEntry__c();
- eSignFormEntry4.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
- eSignFormEntry4.eSignForm__c = eSignForm.Id;
- eSignFormEntry4.entryType__c = '缁忛攢鍟嗙‘璁�';
- // eSignFormEntry4.createdDate = Date.today().addDays(-2);
- insert eSignFormEntry4;
-
- eSignFormEntry__c eSignFormEntry5 = new eSignFormEntry__c();
- eSignFormEntry5.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
- eSignFormEntry5.eSignForm__c = eSignForm.Id;
- eSignFormEntry5.entryType__c = '鍖婚櫌鏀惰揣';
- // eSignFormEntry5.createdDate = Date.today().addDays(-7);
- insert eSignFormEntry5;
-
- eSignFormEntry__c eSignFormEntry6 = new eSignFormEntry__c();
- eSignFormEntry6.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
- eSignFormEntry6.eSignForm__c = eSignForm.Id;
- eSignFormEntry6.entryType__c = '鍖婚櫌鏀惰揣';
- // eSignFormEntry6.createdDate = Date.today().addDays(-2);
- insert eSignFormEntry6;
-
- eSignFormEntry__c eSignFormEntry8 = new eSignFormEntry__c();
- eSignFormEntry8.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
- eSignFormEntry8.eSignForm__c = eSignForm.Id;
- eSignFormEntry8.entryType__c = '鍖婚櫌纭';
-
- insert eSignFormEntry8;
-
- eSignFormEntry__c eSignFormEntry7 = new eSignFormEntry__c();
- eSignFormEntry7.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
- eSignFormEntry7.eSignForm__c = eSignForm.Id;
- eSignFormEntry7.entryType__c = '鍖婚櫌纭';
-
- insert eSignFormEntry7;
-
- //鏂板缓鐢靛瓙绛炬敹鍗曟槑缁�
- eSignFormLineItem__c eSignFormLineItem = new eSignFormLineItem__c();
- eSignFormLineItem.Name = '::鐢靛瓙绛炬敹鍗曟槑缁�';
- eSignFormLineItem.eSignForm__c = eSignForm.Id;
-
- insert eSignFormLineItem;
-
- //鏂板缓鐢靛瓙绛炬敹鍗曟槑缁嗗綍鍏ヨ〃
- eSignFormLineItemEntry__c eSignFormLineItemEntry1 = new eSignFormLineItemEntry__c();
- eSignFormLineItemEntry1.Name = '::鐢靛瓙绛炬敹鍗曟槑缁嗗綍鍏�1';
- eSignFormLineItemEntry1.eSignFormEntry__c =eSignFormEntry2.Id;
- eSignFormLineItemEntry1.eSignFormLineItem__c = eSignFormLineItem.Id;
-
- insert eSignFormLineItemEntry1;
-
- eSignFormLineItemEntry__c eSignFormLineItemEntry2 = new eSignFormLineItemEntry__c();
- eSignFormLineItemEntry2.Name = '::鐢靛瓙绛炬敹鍗曟槑缁嗗綍鍏�2';
- eSignFormLineItemEntry2.eSignFormEntry__c =eSignFormEntry2.Id;
- eSignFormLineItemEntry2.eSignFormLineItem__c = eSignFormLineItem.Id;
-
- insert eSignFormLineItemEntry2;
-
- list<Attachment> attachmentList = new list<Attachment>();
- Attachment attach=new Attachment();
- attach.Name='Unit Test Attachment';
- Blob bodyBlob=Blob.valueOf('Unit Test Attachment Body');
- attach.body=bodyBlob;
- attach.parentId=eSignFormEntry2.id;
-
- attachmentList.add(attach);
-
- // insert attach;
- Attachment attach1=new Attachment();
- attach1.Name='Unit Test Attachment';
- Blob bodyBlob1=Blob.valueOf('Unit Test Attachment Body');
- attach1.body=bodyBlob1;
- attach1.parentId=eSignForm.id;
-
- attachmentList.add(attach1);
-
- insert attachmentList;
-
- Test.startTest();
-
- Date d = Date.today();
- Database.executeBatch(new updateESignBatch(d), 20);
- Test.stopTest();
- }
-
- static testMethod void testMethod6() {
- List<RecordType> rectCo = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '鐥呴櫌'];
- if (rectCo.size() == 0) {
- return;
- }
- List<RecordType> rectSct = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '鎴︾暐绉戝鍒嗛 鍛煎惛绉�'];
- if (rectSct.size() == 0) {
- return;
- }
- List<RecordType> rectDpt = [select Id, Name from RecordType where IsActive = true and SobjectType = 'Account' and Name IN ('瑷虹檪绉� 娑堝寲绉�', '瑷虹檪绉� 鍛煎惛绉�') order by Name desc];
- if (rectDpt.size() == 0) {
- return;
- }
- List<RecordType> rectAs = [select Id, Name from RecordType where IsActive = true and SobjectType = 'Asset' and Name = '澶囧搧'];
- if (rectAs.size() == 0) {
- return;
- }
-
-
- // insert hospital
- Account company1 = new Account();
- company1.RecordTypeId = rectCo[0].Id;
- company1.Name = '鐥呴櫌銉嗐偣銉�1';
- company1.OCM_man_province_txt__c = '姹熻タ';
- List<Account> hps = new Account[]{company1};
- insert hps;
-
- List<Account> dc1s = [Select Id, Name, Department_Class_Label__c, Sys_Dept_Name_Change_Chk__c from Account where Parent.Id = :company1.Id order by Department_Class_Label__c];
-
- Account depart1 = new Account();
- depart1.RecordTypeId = rectDpt[0].Id;
- depart1.Name = '*';
- depart1.Department_Name__c = '瑷虹檪绉�1';
- depart1.ParentId = dc1s[0].Id;
- depart1.Department_Class__c = dc1s[0].Id;
- depart1.Hospital__c = company1.Id;
- depart1.OCM_man_province_txt__c = '姹熻タ';
-
- insert new Account[] {depart1};
-
- List<Product2> prdList = new List<Product2>();
- Product2 prd1 = new Product2();
- prd1.ProductCode_Ext__c = 'HistoryPrd1';
- prd1.ProductCode = 'HistoryPrd1';
- prd1.Repair_Product_Code__c = 'HistoryPrd1_RP';
- prd1.Name = 'HistoryPrd1';
- prd1.Manual_Entry__c = false;
- prd1.Extend_new_product_gurantee__c = true;
- prd1.Extend_Gurantee_Start__c = Date.today().addDays(-60);
- prd1.Extend_Gurantee_End__c = Date.today().addDays(60);
- prdList.add(prd1);
- insert prdList;
-
- Asset ast = new Asset();
-
- ast.RecordTypeId = rectAs[0].Id;
- ast.SerialNumber = 'abcdefg';
- ast.Name = '娴嬭瘯璧勪骇1';
- ast.AccountId = depart1.Id;
- ast.Department_Class__c = dc1s[0].Id;
- ast.Hospital__c = company1.Id;
- ast.Product2Id = prd1.Id;
- ast.Guarantee_period_for_products__c = Date.today();
- ast.InstallDate = Date.today();
- ast.Manage_type__c = '涓綋绠$悊';
- ast.FirstApproveDate_old__c = Date.today().addDays(-30);
-
- Oly_TriggerHandler.bypass('AssetHandler');
-
- insert ast;
-
- Asset ast1 = [select RecordTypeID__c from Asset where Id =: ast.Id];
-
- String RecordTypeID = ast1.RecordTypeID__c;
-
- System.assertEquals(RecordTypeID , ast.RecordTypeId);
-
- RecordType rectOpp = [select id from RecordType where IsActive = true and SobjectType = 'Opportunity' and DeveloperName = 'Opportunity' ];
- Opportunity opp = new Opportunity(
- Name='testOpp1',
- StageName='寮曞悎',
- CloseDate=Date.today(),
- AccountId=depart1.Id,
- Sales_Root__c = 'OCM鐩存帴璨╁2',
- Competitor__c ='A',
- Click_Close_Date__c = null,
- RecordType = rectOpp,
- Trade__c = '鍐呰部'
- );
- insert opp;
- //娉ㄦ畫
- Statu_Achievements__c Sac = new Statu_Achievements__c(
- name = 'zhucan_one',
- Opportunity__c = opp.id,
- DeliveryDate__c = Date.today(),
- ContractNO__c = 'ContractNO1',
- ContractAmount__c = 1000
- );
- insert Sac;
-
- //鏂板缓鐢靛瓙绛炬敹鍗�
- eSignForm__c eSignForm = new eSignForm__c();
- eSignForm.Statu_Achievements__c = Sac.Id;
- eSignForm.Name = '::娴嬭瘯鐢靛瓙绛炬敹鍗�';
-
- insert eSignForm;
-
- //鏂板缓鐢靛瓙绛炬敹鍗�7
- eSignFormEntry__c eSignFormEntry = new eSignFormEntry__c();
- eSignFormEntry.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
- eSignFormEntry.eSignForm__c = eSignForm.Id;
- eSignFormEntry.entryType__c = '缁忛攢鍟嗘敹璐�';
- // eSignFormEntry.createdDate = Date.today().addDays(-7);
- insert eSignFormEntry;
-
- eSignFormEntry__c eSignFormEntry1 = new eSignFormEntry__c();
- eSignFormEntry1.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
- eSignFormEntry1.eSignForm__c = eSignForm.Id;
- eSignFormEntry1.entryType__c = '缁忛攢鍟嗘敹璐�';
- // eSignFormEntry1.createdDate = Date.today().addDays(-3);
- insert eSignFormEntry1;
-
- eSignFormEntry__c eSignFormEntry2 = new eSignFormEntry__c();
- eSignFormEntry2.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
- eSignFormEntry2.eSignForm__c = eSignForm.Id;
- eSignFormEntry2.entryType__c = '缁忛攢鍟嗘敹璐�';
- eSignFormEntry2.agencyScanDayBack__c = Date.today().addDays(-2);
- eSignFormEntry2.agencySignUpDateBack__c =Date.today().addDays(-2);
- eSignFormEntry2.agencyConfirmDateBack__c =Date.today().addDays(-2);
- eSignFormEntry2.HPScanDayBack__c =Date.today().addDays(-2);
- eSignFormEntry2.HPSignUpDateBack__c =Date.today().addDays(-2);
- eSignFormEntry2.HPConfirmDateBack__c = Date.today().addDays(-2);
- // eSignFormEntry2.createdDate = Date.today().addDays(-2);
- insert eSignFormEntry2;
-
- eSignFormEntry__c eSignFormEntry3 = new eSignFormEntry__c();
- eSignFormEntry3.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
- eSignFormEntry3.eSignForm__c = eSignForm.Id;
- eSignFormEntry3.entryType__c = '缁忛攢鍟嗙‘璁�';
- // eSignFormEntry3.createdDate = Date.today().addDays(-7);
- insert eSignFormEntry3;
-
- eSignFormEntry__c eSignFormEntry4 = new eSignFormEntry__c();
- eSignFormEntry4.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
- eSignFormEntry4.eSignForm__c = eSignForm.Id;
- eSignFormEntry4.entryType__c = '缁忛攢鍟嗙‘璁�';
- // eSignFormEntry4.createdDate = Date.today().addDays(-2);
- insert eSignFormEntry4;
-
- eSignFormEntry__c eSignFormEntry5 = new eSignFormEntry__c();
- eSignFormEntry5.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
- eSignFormEntry5.eSignForm__c = eSignForm.Id;
- eSignFormEntry5.entryType__c = '鍖婚櫌鏀惰揣';
- // eSignFormEntry5.createdDate = Date.today().addDays(-7);
- insert eSignFormEntry5;
-
- eSignFormEntry__c eSignFormEntry6 = new eSignFormEntry__c();
- eSignFormEntry6.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
- eSignFormEntry6.eSignForm__c = eSignForm.Id;
- eSignFormEntry6.entryType__c = '鍖婚櫌鏀惰揣';
- // eSignFormEntry6.createdDate = Date.today().addDays(-2);
- insert eSignFormEntry6;
-
- eSignFormEntry__c eSignFormEntry8 = new eSignFormEntry__c();
- eSignFormEntry8.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
- eSignFormEntry8.eSignForm__c = eSignForm.Id;
- eSignFormEntry8.entryType__c = '鍖婚櫌纭';
-
- insert eSignFormEntry8;
-
- eSignFormEntry__c eSignFormEntry7 = new eSignFormEntry__c();
- eSignFormEntry7.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
- eSignFormEntry7.eSignForm__c = eSignForm.Id;
- eSignFormEntry7.entryType__c = '鍖婚櫌纭';
-
- insert eSignFormEntry7;
-
- //鏂板缓鐢靛瓙绛炬敹鍗曟槑缁�
- eSignFormLineItem__c eSignFormLineItem = new eSignFormLineItem__c();
- eSignFormLineItem.Name = '::鐢靛瓙绛炬敹鍗曟槑缁�';
- eSignFormLineItem.eSignForm__c = eSignForm.Id;
-
- insert eSignFormLineItem;
-
- //鏂板缓鐢靛瓙绛炬敹鍗曟槑缁嗗綍鍏ヨ〃
- eSignFormLineItemEntry__c eSignFormLineItemEntry1 = new eSignFormLineItemEntry__c();
- eSignFormLineItemEntry1.Name = '::鐢靛瓙绛炬敹鍗曟槑缁嗗綍鍏�1';
- eSignFormLineItemEntry1.eSignFormEntry__c =eSignFormEntry2.Id;
- eSignFormLineItemEntry1.eSignFormLineItem__c = eSignFormLineItem.Id;
-
- insert eSignFormLineItemEntry1;
-
- eSignFormLineItemEntry__c eSignFormLineItemEntry2 = new eSignFormLineItemEntry__c();
- eSignFormLineItemEntry2.Name = '::鐢靛瓙绛炬敹鍗曟槑缁嗗綍鍏�2';
- eSignFormLineItemEntry2.eSignFormEntry__c =eSignFormEntry2.Id;
- eSignFormLineItemEntry2.eSignFormLineItem__c = eSignFormLineItem.Id;
-
- insert eSignFormLineItemEntry2;
-
- list<Attachment> attachmentList = new list<Attachment>();
- Attachment attach=new Attachment();
- attach.Name='Unit Test Attachment';
- Blob bodyBlob=Blob.valueOf('Unit Test Attachment Body');
- attach.body=bodyBlob;
- attach.parentId=eSignFormEntry2.id;
-
- attachmentList.add(attach);
-
- // insert attach;
- Attachment attach1=new Attachment();
- attach1.Name='Unit Test Attachment';
- Blob bodyBlob1=Blob.valueOf('Unit Test Attachment Body');
- attach1.body=bodyBlob1;
- attach1.parentId=eSignForm.id;
-
- attachmentList.add(attach1);
-
- insert attachmentList;
- Test.startTest();
- Date startDate = Date.today();
- Date enDdate = Date.today().addDays(-1);
- Database.executeBatch(new updateESignBatch(startDate,enDdate), 20);
- Test.stopTest();
- }
-
- static testMethod void testMethod7() {
- List<RecordType> rectCo = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '鐥呴櫌'];
- if (rectCo.size() == 0) {
- return;
- }
- List<RecordType> rectSct = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '鎴︾暐绉戝鍒嗛 鍛煎惛绉�'];
- if (rectSct.size() == 0) {
- return;
- }
- List<RecordType> rectDpt = [select Id, Name from RecordType where IsActive = true and SobjectType = 'Account' and Name IN ('瑷虹檪绉� 娑堝寲绉�', '瑷虹檪绉� 鍛煎惛绉�') order by Name desc];
- if (rectDpt.size() == 0) {
- return;
- }
- List<RecordType> rectAs = [select Id, Name from RecordType where IsActive = true and SobjectType = 'Asset' and Name = '澶囧搧'];
- if (rectAs.size() == 0) {
- return;
- }
-
-
- // insert hospital
- Account company1 = new Account();
- company1.RecordTypeId = rectCo[0].Id;
- company1.Name = '鐥呴櫌銉嗐偣銉�1';
- company1.OCM_man_province_txt__c = '姹熻タ';
- List<Account> hps = new Account[]{company1};
- insert hps;
-
- List<Account> dc1s = [Select Id, Name, Department_Class_Label__c, Sys_Dept_Name_Change_Chk__c from Account where Parent.Id = :company1.Id order by Department_Class_Label__c];
-
- Account depart1 = new Account();
- depart1.RecordTypeId = rectDpt[0].Id;
- depart1.Name = '*';
- depart1.Department_Name__c = '瑷虹檪绉�1';
- depart1.ParentId = dc1s[0].Id;
- depart1.Department_Class__c = dc1s[0].Id;
- depart1.Hospital__c = company1.Id;
- depart1.OCM_man_province_txt__c = '姹熻タ';
-
- insert new Account[] {depart1};
-
- List<Product2> prdList = new List<Product2>();
- Product2 prd1 = new Product2();
- prd1.ProductCode_Ext__c = 'HistoryPrd1';
- prd1.ProductCode = 'HistoryPrd1';
- prd1.Repair_Product_Code__c = 'HistoryPrd1_RP';
- prd1.Name = 'HistoryPrd1';
- prd1.Manual_Entry__c = false;
- prd1.Extend_new_product_gurantee__c = true;
- prd1.Extend_Gurantee_Start__c = Date.today().addDays(-60);
- prd1.Extend_Gurantee_End__c = Date.today().addDays(60);
- prdList.add(prd1);
- insert prdList;
-
- Asset ast = new Asset();
-
- ast.RecordTypeId = rectAs[0].Id;
- ast.SerialNumber = 'abcdefg';
- ast.Name = '娴嬭瘯璧勪骇1';
- ast.AccountId = depart1.Id;
- ast.Department_Class__c = dc1s[0].Id;
- ast.Hospital__c = company1.Id;
- ast.Product2Id = prd1.Id;
- ast.Guarantee_period_for_products__c = Date.today();
- ast.InstallDate = Date.today();
- ast.Manage_type__c = '涓綋绠$悊';
- ast.FirstApproveDate_old__c = Date.today().addDays(-30);
-
- Oly_TriggerHandler.bypass('AssetHandler');
-
- insert ast;
-
- Asset ast1 = [select RecordTypeID__c from Asset where Id =: ast.Id];
-
- String RecordTypeID = ast1.RecordTypeID__c;
-
- System.assertEquals(RecordTypeID , ast.RecordTypeId);
-
- RecordType rectOpp = [select id from RecordType where IsActive = true and SobjectType = 'Opportunity' and DeveloperName = 'Opportunity' ];
- Opportunity opp = new Opportunity(
- Name='testOpp1',
- StageName='寮曞悎',
- CloseDate=Date.today(),
- AccountId=depart1.Id,
- Sales_Root__c = 'OCM鐩存帴璨╁2',
- Competitor__c ='A',
- Click_Close_Date__c = null,
- RecordType = rectOpp,
- Trade__c = '鍐呰部'
+ Name = 'testOpp1',
+ StageName = '寮曞悎',
+ CloseDate = Date.today(),
+ AccountId = depart1.Id,
+ Sales_Root__c = 'OCM鐩存帴璨╁2',
+ Competitor__c = 'A',
+ Click_Close_Date__c = null,
+ RecordType = rectOpp,
+ Trade__c = '鍐呰部'
);
insert opp;
//娉ㄦ畫
@@ -1303,10 +930,10 @@
eSignFormEntry2.eSignForm__c = eSignForm.Id;
eSignFormEntry2.entryType__c = '缁忛攢鍟嗘敹璐�';
eSignFormEntry2.agencyScanDayBack__c = Date.today().addDays(-2);
- eSignFormEntry2.agencySignUpDateBack__c =Date.today().addDays(-2);
- eSignFormEntry2.agencyConfirmDateBack__c =Date.today().addDays(-2);
- eSignFormEntry2.HPScanDayBack__c =Date.today().addDays(-2);
- eSignFormEntry2.HPSignUpDateBack__c =Date.today().addDays(-2);
+ eSignFormEntry2.agencySignUpDateBack__c = Date.today().addDays(-2);
+ eSignFormEntry2.agencyConfirmDateBack__c = Date.today().addDays(-2);
+ eSignFormEntry2.HPScanDayBack__c = Date.today().addDays(-2);
+ eSignFormEntry2.HPSignUpDateBack__c = Date.today().addDays(-2);
eSignFormEntry2.HPConfirmDateBack__c = Date.today().addDays(-2);
// eSignFormEntry2.createdDate = Date.today().addDays(-2);
insert eSignFormEntry2;
@@ -1350,7 +977,7 @@
eSignFormEntry7.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
eSignFormEntry7.eSignForm__c = eSignForm.Id;
eSignFormEntry7.entryType__c = '鍖婚櫌纭';
-
+
insert eSignFormEntry7;
//鏂板缓鐢靛瓙绛炬敹鍗曟槑缁�
@@ -1363,34 +990,519 @@
//鏂板缓鐢靛瓙绛炬敹鍗曟槑缁嗗綍鍏ヨ〃
eSignFormLineItemEntry__c eSignFormLineItemEntry1 = new eSignFormLineItemEntry__c();
eSignFormLineItemEntry1.Name = '::鐢靛瓙绛炬敹鍗曟槑缁嗗綍鍏�1';
- eSignFormLineItemEntry1.eSignFormEntry__c =eSignFormEntry2.Id;
+ eSignFormLineItemEntry1.eSignFormEntry__c = eSignFormEntry2.Id;
eSignFormLineItemEntry1.eSignFormLineItem__c = eSignFormLineItem.Id;
insert eSignFormLineItemEntry1;
eSignFormLineItemEntry__c eSignFormLineItemEntry2 = new eSignFormLineItemEntry__c();
eSignFormLineItemEntry2.Name = '::鐢靛瓙绛炬敹鍗曟槑缁嗗綍鍏�2';
- eSignFormLineItemEntry2.eSignFormEntry__c =eSignFormEntry2.Id;
+ eSignFormLineItemEntry2.eSignFormEntry__c = eSignFormEntry2.Id;
eSignFormLineItemEntry2.eSignFormLineItem__c = eSignFormLineItem.Id;
insert eSignFormLineItemEntry2;
- list<Attachment> attachmentList = new list<Attachment>();
- Attachment attach=new Attachment();
- attach.Name='Unit Test Attachment';
- Blob bodyBlob=Blob.valueOf('Unit Test Attachment Body');
- attach.body=bodyBlob;
- attach.parentId=eSignFormEntry2.id;
+ list<Attachment> attachmentList = new List<Attachment>();
+ Attachment attach = new Attachment();
+ attach.Name = 'Unit Test Attachment';
+ Blob bodyBlob = Blob.valueOf('Unit Test Attachment Body');
+ attach.body = bodyBlob;
+ attach.parentId = eSignFormEntry2.id;
attachmentList.add(attach);
// insert attach;
- Attachment attach1=new Attachment();
- attach1.Name='Unit Test Attachment';
- Blob bodyBlob1=Blob.valueOf('Unit Test Attachment Body');
- attach1.body=bodyBlob1;
- attach1.parentId=eSignForm.id;
-
+ Attachment attach1 = new Attachment();
+ attach1.Name = 'Unit Test Attachment';
+ Blob bodyBlob1 = Blob.valueOf('Unit Test Attachment Body');
+ attach1.body = bodyBlob1;
+ attach1.parentId = eSignForm.id;
+
+ attachmentList.add(attach1);
+
+ insert attachmentList;
+
+ Test.startTest();
+
+ Date d = Date.today();
+ Database.executeBatch(new updateESignBatch(d), 20);
+ Test.stopTest();
+ }
+
+ static testMethod void testMethod6() {
+ List<RecordType> rectCo = [SELECT Id FROM RecordType WHERE IsActive = TRUE AND SobjectType = 'Account' AND Name = '鐥呴櫌'];
+ if (rectCo.size() == 0) {
+ return;
+ }
+ List<RecordType> rectSct = [
+ SELECT Id
+ FROM RecordType
+ WHERE IsActive = TRUE AND SobjectType = 'Account' AND Name = '鎴︾暐绉戝鍒嗛 鍛煎惛绉�'
+ ];
+ if (rectSct.size() == 0) {
+ return;
+ }
+ List<RecordType> rectDpt = [
+ SELECT Id, Name
+ FROM RecordType
+ WHERE IsActive = TRUE AND SobjectType = 'Account' AND Name IN ('瑷虹檪绉� 娑堝寲绉�', '瑷虹檪绉� 鍛煎惛绉�')
+ ORDER BY Name DESC
+ ];
+ if (rectDpt.size() == 0) {
+ return;
+ }
+ List<RecordType> rectAs = [SELECT Id, Name FROM RecordType WHERE IsActive = TRUE AND SobjectType = 'Asset' AND Name = '澶囧搧'];
+ if (rectAs.size() == 0) {
+ return;
+ }
+
+ // insert hospital
+ Account company1 = new Account();
+ company1.RecordTypeId = rectCo[0].Id;
+ company1.Name = '鐥呴櫌銉嗐偣銉�1';
+ company1.OCM_man_province_txt__c = '姹熻タ';
+ List<Account> hps = new List<Account>{ company1 };
+ insert hps;
+
+ List<Account> dc1s = [
+ SELECT Id, Name, Department_Class_Label__c, Sys_Dept_Name_Change_Chk__c
+ FROM Account
+ WHERE Parent.Id = :company1.Id
+ ORDER BY Department_Class_Label__c
+ ];
+
+ Account depart1 = new Account();
+ depart1.RecordTypeId = rectDpt[0].Id;
+ depart1.Name = '*';
+ depart1.Department_Name__c = '瑷虹檪绉�1';
+ depart1.ParentId = dc1s[0].Id;
+ depart1.Department_Class__c = dc1s[0].Id;
+ depart1.Hospital__c = company1.Id;
+ depart1.OCM_man_province_txt__c = '姹熻タ';
+
+ insert new List<Account>{ depart1 };
+
+ List<Product2> prdList = new List<Product2>();
+ Product2 prd1 = new Product2();
+ prd1.ProductCode_Ext__c = 'HistoryPrd1';
+ prd1.ProductCode = 'HistoryPrd1';
+ prd1.Repair_Product_Code__c = 'HistoryPrd1_RP';
+ prd1.Name = 'HistoryPrd1';
+ prd1.Manual_Entry__c = false;
+ prd1.Extend_new_product_gurantee__c = true;
+ prd1.Extend_Gurantee_Start__c = Date.today().addDays(-60);
+ prd1.Extend_Gurantee_End__c = Date.today().addDays(60);
+ prdList.add(prd1);
+ insert prdList;
+
+ Asset ast = new Asset();
+
+ ast.RecordTypeId = rectAs[0].Id;
+ ast.SerialNumber = 'abcdefg';
+ ast.Name = '娴嬭瘯璧勪骇1';
+ ast.AccountId = depart1.Id;
+ ast.Department_Class__c = dc1s[0].Id;
+ ast.Hospital__c = company1.Id;
+ ast.Product2Id = prd1.Id;
+ ast.Guarantee_period_for_products__c = Date.today();
+ ast.InstallDate = Date.today();
+ ast.Manage_type__c = '涓綋绠$悊';
+ ast.FirstApproveDate_old__c = Date.today().addDays(-30);
+
+ Oly_TriggerHandler.bypass('AssetHandler');
+
+ insert ast;
+
+ Asset ast1 = [SELECT RecordTypeID__c FROM Asset WHERE Id = :ast.Id];
+
+ String RecordTypeID = ast1.RecordTypeID__c;
+
+ System.assertEquals(RecordTypeID, ast.RecordTypeId);
+
+ RecordType rectOpp = [
+ SELECT id
+ FROM RecordType
+ WHERE IsActive = TRUE AND SobjectType = 'Opportunity' AND DeveloperName = 'Opportunity'
+ ];
+ Opportunity opp = new Opportunity(
+ Name = 'testOpp1',
+ StageName = '寮曞悎',
+ CloseDate = Date.today(),
+ AccountId = depart1.Id,
+ Sales_Root__c = 'OCM鐩存帴璨╁2',
+ Competitor__c = 'A',
+ Click_Close_Date__c = null,
+ RecordType = rectOpp,
+ Trade__c = '鍐呰部'
+ );
+ insert opp;
+ //娉ㄦ畫
+ Statu_Achievements__c Sac = new Statu_Achievements__c(
+ name = 'zhucan_one',
+ Opportunity__c = opp.id,
+ DeliveryDate__c = Date.today(),
+ ContractNO__c = 'ContractNO1',
+ ContractAmount__c = 1000
+ );
+ insert Sac;
+
+ //鏂板缓鐢靛瓙绛炬敹鍗�
+ eSignForm__c eSignForm = new eSignForm__c();
+ eSignForm.Statu_Achievements__c = Sac.Id;
+ eSignForm.Name = '::娴嬭瘯鐢靛瓙绛炬敹鍗�';
+
+ insert eSignForm;
+
+ //鏂板缓鐢靛瓙绛炬敹鍗�7
+ eSignFormEntry__c eSignFormEntry = new eSignFormEntry__c();
+ eSignFormEntry.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
+ eSignFormEntry.eSignForm__c = eSignForm.Id;
+ eSignFormEntry.entryType__c = '缁忛攢鍟嗘敹璐�';
+ // eSignFormEntry.createdDate = Date.today().addDays(-7);
+ insert eSignFormEntry;
+
+ eSignFormEntry__c eSignFormEntry1 = new eSignFormEntry__c();
+ eSignFormEntry1.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
+ eSignFormEntry1.eSignForm__c = eSignForm.Id;
+ eSignFormEntry1.entryType__c = '缁忛攢鍟嗘敹璐�';
+ // eSignFormEntry1.createdDate = Date.today().addDays(-3);
+ insert eSignFormEntry1;
+
+ eSignFormEntry__c eSignFormEntry2 = new eSignFormEntry__c();
+ eSignFormEntry2.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
+ eSignFormEntry2.eSignForm__c = eSignForm.Id;
+ eSignFormEntry2.entryType__c = '缁忛攢鍟嗘敹璐�';
+ eSignFormEntry2.agencyScanDayBack__c = Date.today().addDays(-2);
+ eSignFormEntry2.agencySignUpDateBack__c = Date.today().addDays(-2);
+ eSignFormEntry2.agencyConfirmDateBack__c = Date.today().addDays(-2);
+ eSignFormEntry2.HPScanDayBack__c = Date.today().addDays(-2);
+ eSignFormEntry2.HPSignUpDateBack__c = Date.today().addDays(-2);
+ eSignFormEntry2.HPConfirmDateBack__c = Date.today().addDays(-2);
+ // eSignFormEntry2.createdDate = Date.today().addDays(-2);
+ insert eSignFormEntry2;
+
+ eSignFormEntry__c eSignFormEntry3 = new eSignFormEntry__c();
+ eSignFormEntry3.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
+ eSignFormEntry3.eSignForm__c = eSignForm.Id;
+ eSignFormEntry3.entryType__c = '缁忛攢鍟嗙‘璁�';
+ // eSignFormEntry3.createdDate = Date.today().addDays(-7);
+ insert eSignFormEntry3;
+
+ eSignFormEntry__c eSignFormEntry4 = new eSignFormEntry__c();
+ eSignFormEntry4.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
+ eSignFormEntry4.eSignForm__c = eSignForm.Id;
+ eSignFormEntry4.entryType__c = '缁忛攢鍟嗙‘璁�';
+ // eSignFormEntry4.createdDate = Date.today().addDays(-2);
+ insert eSignFormEntry4;
+
+ eSignFormEntry__c eSignFormEntry5 = new eSignFormEntry__c();
+ eSignFormEntry5.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
+ eSignFormEntry5.eSignForm__c = eSignForm.Id;
+ eSignFormEntry5.entryType__c = '鍖婚櫌鏀惰揣';
+ // eSignFormEntry5.createdDate = Date.today().addDays(-7);
+ insert eSignFormEntry5;
+
+ eSignFormEntry__c eSignFormEntry6 = new eSignFormEntry__c();
+ eSignFormEntry6.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
+ eSignFormEntry6.eSignForm__c = eSignForm.Id;
+ eSignFormEntry6.entryType__c = '鍖婚櫌鏀惰揣';
+ // eSignFormEntry6.createdDate = Date.today().addDays(-2);
+ insert eSignFormEntry6;
+
+ eSignFormEntry__c eSignFormEntry8 = new eSignFormEntry__c();
+ eSignFormEntry8.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
+ eSignFormEntry8.eSignForm__c = eSignForm.Id;
+ eSignFormEntry8.entryType__c = '鍖婚櫌纭';
+
+ insert eSignFormEntry8;
+
+ eSignFormEntry__c eSignFormEntry7 = new eSignFormEntry__c();
+ eSignFormEntry7.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
+ eSignFormEntry7.eSignForm__c = eSignForm.Id;
+ eSignFormEntry7.entryType__c = '鍖婚櫌纭';
+
+ insert eSignFormEntry7;
+
+ //鏂板缓鐢靛瓙绛炬敹鍗曟槑缁�
+ eSignFormLineItem__c eSignFormLineItem = new eSignFormLineItem__c();
+ eSignFormLineItem.Name = '::鐢靛瓙绛炬敹鍗曟槑缁�';
+ eSignFormLineItem.eSignForm__c = eSignForm.Id;
+
+ insert eSignFormLineItem;
+
+ //鏂板缓鐢靛瓙绛炬敹鍗曟槑缁嗗綍鍏ヨ〃
+ eSignFormLineItemEntry__c eSignFormLineItemEntry1 = new eSignFormLineItemEntry__c();
+ eSignFormLineItemEntry1.Name = '::鐢靛瓙绛炬敹鍗曟槑缁嗗綍鍏�1';
+ eSignFormLineItemEntry1.eSignFormEntry__c = eSignFormEntry2.Id;
+ eSignFormLineItemEntry1.eSignFormLineItem__c = eSignFormLineItem.Id;
+
+ insert eSignFormLineItemEntry1;
+
+ eSignFormLineItemEntry__c eSignFormLineItemEntry2 = new eSignFormLineItemEntry__c();
+ eSignFormLineItemEntry2.Name = '::鐢靛瓙绛炬敹鍗曟槑缁嗗綍鍏�2';
+ eSignFormLineItemEntry2.eSignFormEntry__c = eSignFormEntry2.Id;
+ eSignFormLineItemEntry2.eSignFormLineItem__c = eSignFormLineItem.Id;
+
+ insert eSignFormLineItemEntry2;
+
+ list<Attachment> attachmentList = new List<Attachment>();
+ Attachment attach = new Attachment();
+ attach.Name = 'Unit Test Attachment';
+ Blob bodyBlob = Blob.valueOf('Unit Test Attachment Body');
+ attach.body = bodyBlob;
+ attach.parentId = eSignFormEntry2.id;
+
+ attachmentList.add(attach);
+
+ // insert attach;
+ Attachment attach1 = new Attachment();
+ attach1.Name = 'Unit Test Attachment';
+ Blob bodyBlob1 = Blob.valueOf('Unit Test Attachment Body');
+ attach1.body = bodyBlob1;
+ attach1.parentId = eSignForm.id;
+
+ attachmentList.add(attach1);
+
+ insert attachmentList;
+ Test.startTest();
+ Date startDate = Date.today();
+ Date enDdate = Date.today().addDays(-1);
+ Database.executeBatch(new updateESignBatch(startDate, enDdate), 20);
+ Test.stopTest();
+ }
+
+ static testMethod void testMethod7() {
+ List<RecordType> rectCo = [SELECT Id FROM RecordType WHERE IsActive = TRUE AND SobjectType = 'Account' AND Name = '鐥呴櫌'];
+ if (rectCo.size() == 0) {
+ return;
+ }
+ List<RecordType> rectSct = [
+ SELECT Id
+ FROM RecordType
+ WHERE IsActive = TRUE AND SobjectType = 'Account' AND Name = '鎴︾暐绉戝鍒嗛 鍛煎惛绉�'
+ ];
+ if (rectSct.size() == 0) {
+ return;
+ }
+ List<RecordType> rectDpt = [
+ SELECT Id, Name
+ FROM RecordType
+ WHERE IsActive = TRUE AND SobjectType = 'Account' AND Name IN ('瑷虹檪绉� 娑堝寲绉�', '瑷虹檪绉� 鍛煎惛绉�')
+ ORDER BY Name DESC
+ ];
+ if (rectDpt.size() == 0) {
+ return;
+ }
+ List<RecordType> rectAs = [SELECT Id, Name FROM RecordType WHERE IsActive = TRUE AND SobjectType = 'Asset' AND Name = '澶囧搧'];
+ if (rectAs.size() == 0) {
+ return;
+ }
+
+ // insert hospital
+ Account company1 = new Account();
+ company1.RecordTypeId = rectCo[0].Id;
+ company1.Name = '鐥呴櫌銉嗐偣銉�1';
+ company1.OCM_man_province_txt__c = '姹熻タ';
+ List<Account> hps = new List<Account>{ company1 };
+ insert hps;
+
+ List<Account> dc1s = [
+ SELECT Id, Name, Department_Class_Label__c, Sys_Dept_Name_Change_Chk__c
+ FROM Account
+ WHERE Parent.Id = :company1.Id
+ ORDER BY Department_Class_Label__c
+ ];
+
+ Account depart1 = new Account();
+ depart1.RecordTypeId = rectDpt[0].Id;
+ depart1.Name = '*';
+ depart1.Department_Name__c = '瑷虹檪绉�1';
+ depart1.ParentId = dc1s[0].Id;
+ depart1.Department_Class__c = dc1s[0].Id;
+ depart1.Hospital__c = company1.Id;
+ depart1.OCM_man_province_txt__c = '姹熻タ';
+
+ insert new List<Account>{ depart1 };
+
+ List<Product2> prdList = new List<Product2>();
+ Product2 prd1 = new Product2();
+ prd1.ProductCode_Ext__c = 'HistoryPrd1';
+ prd1.ProductCode = 'HistoryPrd1';
+ prd1.Repair_Product_Code__c = 'HistoryPrd1_RP';
+ prd1.Name = 'HistoryPrd1';
+ prd1.Manual_Entry__c = false;
+ prd1.Extend_new_product_gurantee__c = true;
+ prd1.Extend_Gurantee_Start__c = Date.today().addDays(-60);
+ prd1.Extend_Gurantee_End__c = Date.today().addDays(60);
+ prdList.add(prd1);
+ insert prdList;
+
+ Asset ast = new Asset();
+
+ ast.RecordTypeId = rectAs[0].Id;
+ ast.SerialNumber = 'abcdefg';
+ ast.Name = '娴嬭瘯璧勪骇1';
+ ast.AccountId = depart1.Id;
+ ast.Department_Class__c = dc1s[0].Id;
+ ast.Hospital__c = company1.Id;
+ ast.Product2Id = prd1.Id;
+ ast.Guarantee_period_for_products__c = Date.today();
+ ast.InstallDate = Date.today();
+ ast.Manage_type__c = '涓綋绠$悊';
+ ast.FirstApproveDate_old__c = Date.today().addDays(-30);
+
+ Oly_TriggerHandler.bypass('AssetHandler');
+
+ insert ast;
+
+ Asset ast1 = [SELECT RecordTypeID__c FROM Asset WHERE Id = :ast.Id];
+
+ String RecordTypeID = ast1.RecordTypeID__c;
+
+ System.assertEquals(RecordTypeID, ast.RecordTypeId);
+
+ RecordType rectOpp = [
+ SELECT id
+ FROM RecordType
+ WHERE IsActive = TRUE AND SobjectType = 'Opportunity' AND DeveloperName = 'Opportunity'
+ ];
+ Opportunity opp = new Opportunity(
+ Name = 'testOpp1',
+ StageName = '寮曞悎',
+ CloseDate = Date.today(),
+ AccountId = depart1.Id,
+ Sales_Root__c = 'OCM鐩存帴璨╁2',
+ Competitor__c = 'A',
+ Click_Close_Date__c = null,
+ RecordType = rectOpp,
+ Trade__c = '鍐呰部'
+ );
+ insert opp;
+ //娉ㄦ畫
+ Statu_Achievements__c Sac = new Statu_Achievements__c(
+ name = 'zhucan_one',
+ Opportunity__c = opp.id,
+ DeliveryDate__c = Date.today(),
+ ContractNO__c = 'ContractNO1',
+ ContractAmount__c = 1000
+ );
+ insert Sac;
+
+ //鏂板缓鐢靛瓙绛炬敹鍗�
+ eSignForm__c eSignForm = new eSignForm__c();
+ eSignForm.Statu_Achievements__c = Sac.Id;
+ eSignForm.Name = '::娴嬭瘯鐢靛瓙绛炬敹鍗�';
+
+ insert eSignForm;
+
+ //鏂板缓鐢靛瓙绛炬敹鍗�7
+ eSignFormEntry__c eSignFormEntry = new eSignFormEntry__c();
+ eSignFormEntry.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
+ eSignFormEntry.eSignForm__c = eSignForm.Id;
+ eSignFormEntry.entryType__c = '缁忛攢鍟嗘敹璐�';
+ // eSignFormEntry.createdDate = Date.today().addDays(-7);
+ insert eSignFormEntry;
+
+ eSignFormEntry__c eSignFormEntry1 = new eSignFormEntry__c();
+ eSignFormEntry1.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
+ eSignFormEntry1.eSignForm__c = eSignForm.Id;
+ eSignFormEntry1.entryType__c = '缁忛攢鍟嗘敹璐�';
+ // eSignFormEntry1.createdDate = Date.today().addDays(-3);
+ insert eSignFormEntry1;
+
+ eSignFormEntry__c eSignFormEntry2 = new eSignFormEntry__c();
+ eSignFormEntry2.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
+ eSignFormEntry2.eSignForm__c = eSignForm.Id;
+ eSignFormEntry2.entryType__c = '缁忛攢鍟嗘敹璐�';
+ eSignFormEntry2.agencyScanDayBack__c = Date.today().addDays(-2);
+ eSignFormEntry2.agencySignUpDateBack__c = Date.today().addDays(-2);
+ eSignFormEntry2.agencyConfirmDateBack__c = Date.today().addDays(-2);
+ eSignFormEntry2.HPScanDayBack__c = Date.today().addDays(-2);
+ eSignFormEntry2.HPSignUpDateBack__c = Date.today().addDays(-2);
+ eSignFormEntry2.HPConfirmDateBack__c = Date.today().addDays(-2);
+ // eSignFormEntry2.createdDate = Date.today().addDays(-2);
+ insert eSignFormEntry2;
+
+ eSignFormEntry__c eSignFormEntry3 = new eSignFormEntry__c();
+ eSignFormEntry3.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
+ eSignFormEntry3.eSignForm__c = eSignForm.Id;
+ eSignFormEntry3.entryType__c = '缁忛攢鍟嗙‘璁�';
+ // eSignFormEntry3.createdDate = Date.today().addDays(-7);
+ insert eSignFormEntry3;
+
+ eSignFormEntry__c eSignFormEntry4 = new eSignFormEntry__c();
+ eSignFormEntry4.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
+ eSignFormEntry4.eSignForm__c = eSignForm.Id;
+ eSignFormEntry4.entryType__c = '缁忛攢鍟嗙‘璁�';
+ // eSignFormEntry4.createdDate = Date.today().addDays(-2);
+ insert eSignFormEntry4;
+
+ eSignFormEntry__c eSignFormEntry5 = new eSignFormEntry__c();
+ eSignFormEntry5.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
+ eSignFormEntry5.eSignForm__c = eSignForm.Id;
+ eSignFormEntry5.entryType__c = '鍖婚櫌鏀惰揣';
+ // eSignFormEntry5.createdDate = Date.today().addDays(-7);
+ insert eSignFormEntry5;
+
+ eSignFormEntry__c eSignFormEntry6 = new eSignFormEntry__c();
+ eSignFormEntry6.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
+ eSignFormEntry6.eSignForm__c = eSignForm.Id;
+ eSignFormEntry6.entryType__c = '鍖婚櫌鏀惰揣';
+ // eSignFormEntry6.createdDate = Date.today().addDays(-2);
+ insert eSignFormEntry6;
+
+ eSignFormEntry__c eSignFormEntry8 = new eSignFormEntry__c();
+ eSignFormEntry8.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
+ eSignFormEntry8.eSignForm__c = eSignForm.Id;
+ eSignFormEntry8.entryType__c = '鍖婚櫌纭';
+
+ insert eSignFormEntry8;
+
+ eSignFormEntry__c eSignFormEntry7 = new eSignFormEntry__c();
+ eSignFormEntry7.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
+ eSignFormEntry7.eSignForm__c = eSignForm.Id;
+ eSignFormEntry7.entryType__c = '鍖婚櫌纭';
+
+ insert eSignFormEntry7;
+
+ //鏂板缓鐢靛瓙绛炬敹鍗曟槑缁�
+ eSignFormLineItem__c eSignFormLineItem = new eSignFormLineItem__c();
+ eSignFormLineItem.Name = '::鐢靛瓙绛炬敹鍗曟槑缁�';
+ eSignFormLineItem.eSignForm__c = eSignForm.Id;
+
+ insert eSignFormLineItem;
+
+ //鏂板缓鐢靛瓙绛炬敹鍗曟槑缁嗗綍鍏ヨ〃
+ eSignFormLineItemEntry__c eSignFormLineItemEntry1 = new eSignFormLineItemEntry__c();
+ eSignFormLineItemEntry1.Name = '::鐢靛瓙绛炬敹鍗曟槑缁嗗綍鍏�1';
+ eSignFormLineItemEntry1.eSignFormEntry__c = eSignFormEntry2.Id;
+ eSignFormLineItemEntry1.eSignFormLineItem__c = eSignFormLineItem.Id;
+
+ insert eSignFormLineItemEntry1;
+
+ eSignFormLineItemEntry__c eSignFormLineItemEntry2 = new eSignFormLineItemEntry__c();
+ eSignFormLineItemEntry2.Name = '::鐢靛瓙绛炬敹鍗曟槑缁嗗綍鍏�2';
+ eSignFormLineItemEntry2.eSignFormEntry__c = eSignFormEntry2.Id;
+ eSignFormLineItemEntry2.eSignFormLineItem__c = eSignFormLineItem.Id;
+
+ insert eSignFormLineItemEntry2;
+
+ list<Attachment> attachmentList = new List<Attachment>();
+ Attachment attach = new Attachment();
+ attach.Name = 'Unit Test Attachment';
+ Blob bodyBlob = Blob.valueOf('Unit Test Attachment Body');
+ attach.body = bodyBlob;
+ attach.parentId = eSignFormEntry2.id;
+
+ attachmentList.add(attach);
+
+ // insert attach;
+ Attachment attach1 = new Attachment();
+ attach1.Name = 'Unit Test Attachment';
+ Blob bodyBlob1 = Blob.valueOf('Unit Test Attachment Body');
+ attach1.body = bodyBlob1;
+ attach1.parentId = eSignForm.id;
+
attachmentList.add(attach1);
insert attachmentList;
@@ -1404,319 +1516,110 @@
}
static testMethod void testMethod8() {
- List<RecordType> rectCo = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '鐥呴櫌'];
+ List<RecordType> rectCo = [SELECT Id FROM RecordType WHERE IsActive = TRUE AND SobjectType = 'Account' AND Name = '鐥呴櫌'];
if (rectCo.size() == 0) {
return;
}
- List<RecordType> rectSct = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '鎴︾暐绉戝鍒嗛 鍛煎惛绉�'];
+ List<RecordType> rectSct = [
+ SELECT Id
+ FROM RecordType
+ WHERE IsActive = TRUE AND SobjectType = 'Account' AND Name = '鎴︾暐绉戝鍒嗛 鍛煎惛绉�'
+ ];
if (rectSct.size() == 0) {
return;
}
- List<RecordType> rectDpt = [select Id, Name from RecordType where IsActive = true and SobjectType = 'Account' and Name IN ('瑷虹檪绉� 娑堝寲绉�', '瑷虹檪绉� 鍛煎惛绉�') order by Name desc];
+ List<RecordType> rectDpt = [
+ SELECT Id, Name
+ FROM RecordType
+ WHERE IsActive = TRUE AND SobjectType = 'Account' AND Name IN ('瑷虹檪绉� 娑堝寲绉�', '瑷虹檪绉� 鍛煎惛绉�')
+ ORDER BY Name DESC
+ ];
if (rectDpt.size() == 0) {
return;
}
- List<RecordType> rectAs = [select Id, Name from RecordType where IsActive = true and SobjectType = 'Asset' and Name = '澶囧搧'];
+ List<RecordType> rectAs = [SELECT Id, Name FROM RecordType WHERE IsActive = TRUE AND SobjectType = 'Asset' AND Name = '澶囧搧'];
if (rectAs.size() == 0) {
return;
}
-
// insert hospital
Account company1 = new Account();
company1.RecordTypeId = rectCo[0].Id;
company1.Name = '鐥呴櫌銉嗐偣銉�1';
company1.OCM_man_province_txt__c = '姹熻タ';
- List<Account> hps = new Account[]{company1};
+ List<Account> hps = new List<Account>{ company1 };
insert hps;
-
- List<Account> dc1s = [Select Id, Name, Department_Class_Label__c, Sys_Dept_Name_Change_Chk__c from Account where Parent.Id = :company1.Id order by Department_Class_Label__c];
-
+
+ List<Account> dc1s = [
+ SELECT Id, Name, Department_Class_Label__c, Sys_Dept_Name_Change_Chk__c
+ FROM Account
+ WHERE Parent.Id = :company1.Id
+ ORDER BY Department_Class_Label__c
+ ];
+
Account depart1 = new Account();
depart1.RecordTypeId = rectDpt[0].Id;
- depart1.Name = '*';
- depart1.Department_Name__c = '瑷虹檪绉�1';
- depart1.ParentId = dc1s[0].Id;
+ depart1.Name = '*';
+ depart1.Department_Name__c = '瑷虹檪绉�1';
+ depart1.ParentId = dc1s[0].Id;
depart1.Department_Class__c = dc1s[0].Id;
- depart1.Hospital__c = company1.Id;
+ depart1.Hospital__c = company1.Id;
depart1.OCM_man_province_txt__c = '姹熻タ';
-
- insert new Account[] {depart1};
+
+ insert new List<Account>{ depart1 };
List<Product2> prdList = new List<Product2>();
Product2 prd1 = new Product2();
- prd1.ProductCode_Ext__c = 'HistoryPrd1';
- prd1.ProductCode = 'HistoryPrd1';
+ prd1.ProductCode_Ext__c = 'HistoryPrd1';
+ prd1.ProductCode = 'HistoryPrd1';
prd1.Repair_Product_Code__c = 'HistoryPrd1_RP';
- prd1.Name = 'HistoryPrd1';
- prd1.Manual_Entry__c = false;
+ prd1.Name = 'HistoryPrd1';
+ prd1.Manual_Entry__c = false;
prd1.Extend_new_product_gurantee__c = true;
prd1.Extend_Gurantee_Start__c = Date.today().addDays(-60);
prd1.Extend_Gurantee_End__c = Date.today().addDays(60);
prdList.add(prd1);
insert prdList;
-
+
Asset ast = new Asset();
ast.RecordTypeId = rectAs[0].Id;
ast.SerialNumber = 'abcdefg';
ast.Name = '娴嬭瘯璧勪骇1';
- ast.AccountId = depart1.Id;
- ast.Department_Class__c = dc1s[0].Id;
- ast.Hospital__c = company1.Id;
- ast.Product2Id = prd1.Id;
+ ast.AccountId = depart1.Id;
+ ast.Department_Class__c = dc1s[0].Id;
+ ast.Hospital__c = company1.Id;
+ ast.Product2Id = prd1.Id;
ast.Guarantee_period_for_products__c = Date.today();
- ast.InstallDate = Date.today();
+ ast.InstallDate = Date.today();
ast.Manage_type__c = '涓綋绠$悊';
ast.FirstApproveDate_old__c = Date.today().addDays(-30);
Oly_TriggerHandler.bypass('AssetHandler');
insert ast;
-
- Asset ast1 = [select RecordTypeID__c from Asset where Id =: ast.Id];
-
+
+ Asset ast1 = [SELECT RecordTypeID__c FROM Asset WHERE Id = :ast.Id];
+
String RecordTypeID = ast1.RecordTypeID__c;
-
- System.assertEquals(RecordTypeID , ast.RecordTypeId);
- RecordType rectOpp = [select id from RecordType where IsActive = true and SobjectType = 'Opportunity' and DeveloperName = 'Opportunity' ];
+ System.assertEquals(RecordTypeID, ast.RecordTypeId);
+
+ RecordType rectOpp = [
+ SELECT id
+ FROM RecordType
+ WHERE IsActive = TRUE AND SobjectType = 'Opportunity' AND DeveloperName = 'Opportunity'
+ ];
Opportunity opp = new Opportunity(
- Name='testOpp1',
- StageName='寮曞悎',
- CloseDate=Date.today(),
- AccountId=depart1.Id,
- Sales_Root__c = 'OCM鐩存帴璨╁2',
- Competitor__c ='A',
- Click_Close_Date__c = null,
- RecordType = rectOpp,
- Trade__c = '鍐呰部'
- );
- insert opp;
- //娉ㄦ畫
- Statu_Achievements__c Sac = new Statu_Achievements__c(
- name = 'zhucan_one',
- Opportunity__c = opp.id,
- DeliveryDate__c = Date.today(),
- ContractNO__c = 'ContractNO1',
- ContractAmount__c = 1000
- );
- insert Sac;
-
- //鏂板缓鐢靛瓙绛炬敹鍗�
- eSignForm__c eSignForm = new eSignForm__c();
- eSignForm.Statu_Achievements__c = Sac.Id;
- eSignForm.Name = '::娴嬭瘯鐢靛瓙绛炬敹鍗�';
-
- insert eSignForm;
-
- //鏂板缓鐢靛瓙绛炬敹鍗�7
- eSignFormEntry__c eSignFormEntry = new eSignFormEntry__c();
- eSignFormEntry.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
- eSignFormEntry.eSignForm__c = eSignForm.Id;
- eSignFormEntry.entryType__c = '缁忛攢鍟嗘敹璐�';
- // eSignFormEntry.createdDate = Date.today().addDays(-7);
- insert eSignFormEntry;
-
- eSignFormEntry__c eSignFormEntry1 = new eSignFormEntry__c();
- eSignFormEntry1.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
- eSignFormEntry1.eSignForm__c = eSignForm.Id;
- eSignFormEntry1.entryType__c = '缁忛攢鍟嗘敹璐�';
- // eSignFormEntry1.createdDate = Date.today().addDays(-3);
- insert eSignFormEntry1;
-
- eSignFormEntry__c eSignFormEntry2 = new eSignFormEntry__c();
- eSignFormEntry2.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
- eSignFormEntry2.eSignForm__c = eSignForm.Id;
- eSignFormEntry2.entryType__c = '缁忛攢鍟嗘敹璐�';
- eSignFormEntry2.agencyScanDayBack__c = Date.today().addDays(-2);
- eSignFormEntry2.agencySignUpDateBack__c =Date.today().addDays(-2);
- eSignFormEntry2.agencyConfirmDateBack__c =Date.today().addDays(-2);
- eSignFormEntry2.HPScanDayBack__c =Date.today().addDays(-2);
- eSignFormEntry2.HPSignUpDateBack__c =Date.today().addDays(-2);
- eSignFormEntry2.HPConfirmDateBack__c = Date.today().addDays(-2);
- // eSignFormEntry2.createdDate = Date.today().addDays(-2);
- insert eSignFormEntry2;
-
- eSignFormEntry__c eSignFormEntry3 = new eSignFormEntry__c();
- eSignFormEntry3.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
- eSignFormEntry3.eSignForm__c = eSignForm.Id;
- eSignFormEntry3.entryType__c = '缁忛攢鍟嗙‘璁�';
- // eSignFormEntry3.createdDate = Date.today().addDays(-7);
- insert eSignFormEntry3;
-
- eSignFormEntry__c eSignFormEntry4 = new eSignFormEntry__c();
- eSignFormEntry4.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
- eSignFormEntry4.eSignForm__c = eSignForm.Id;
- eSignFormEntry4.entryType__c = '缁忛攢鍟嗙‘璁�';
- // eSignFormEntry4.createdDate = Date.today().addDays(-2);
- insert eSignFormEntry4;
-
- eSignFormEntry__c eSignFormEntry5 = new eSignFormEntry__c();
- eSignFormEntry5.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
- eSignFormEntry5.eSignForm__c = eSignForm.Id;
- eSignFormEntry5.entryType__c = '鍖婚櫌鏀惰揣';
- // eSignFormEntry5.createdDate = Date.today().addDays(-7);
- insert eSignFormEntry5;
-
- eSignFormEntry__c eSignFormEntry6 = new eSignFormEntry__c();
- eSignFormEntry6.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
- eSignFormEntry6.eSignForm__c = eSignForm.Id;
- eSignFormEntry6.entryType__c = '鍖婚櫌鏀惰揣';
- // eSignFormEntry6.createdDate = Date.today().addDays(-2);
- insert eSignFormEntry6;
-
- eSignFormEntry__c eSignFormEntry8 = new eSignFormEntry__c();
- eSignFormEntry8.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
- eSignFormEntry8.eSignForm__c = eSignForm.Id;
- eSignFormEntry8.entryType__c = '鍖婚櫌纭';
-
- insert eSignFormEntry8;
-
- eSignFormEntry__c eSignFormEntry7 = new eSignFormEntry__c();
- eSignFormEntry7.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
- eSignFormEntry7.eSignForm__c = eSignForm.Id;
- eSignFormEntry7.entryType__c = '鍖婚櫌纭';
-
- insert eSignFormEntry7;
-
- //鏂板缓鐢靛瓙绛炬敹鍗曟槑缁�
- eSignFormLineItem__c eSignFormLineItem = new eSignFormLineItem__c();
- eSignFormLineItem.Name = '::鐢靛瓙绛炬敹鍗曟槑缁�';
- eSignFormLineItem.eSignForm__c = eSignForm.Id;
-
- insert eSignFormLineItem;
-
- //鏂板缓鐢靛瓙绛炬敹鍗曟槑缁嗗綍鍏ヨ〃
- eSignFormLineItemEntry__c eSignFormLineItemEntry1 = new eSignFormLineItemEntry__c();
- eSignFormLineItemEntry1.Name = '::鐢靛瓙绛炬敹鍗曟槑缁嗗綍鍏�1';
- eSignFormLineItemEntry1.eSignFormEntry__c =eSignFormEntry2.Id;
- eSignFormLineItemEntry1.eSignFormLineItem__c = eSignFormLineItem.Id;
-
- insert eSignFormLineItemEntry1;
-
- eSignFormLineItemEntry__c eSignFormLineItemEntry2 = new eSignFormLineItemEntry__c();
- eSignFormLineItemEntry2.Name = '::鐢靛瓙绛炬敹鍗曟槑缁嗗綍鍏�2';
- eSignFormLineItemEntry2.eSignFormEntry__c =eSignFormEntry2.Id;
- eSignFormLineItemEntry2.eSignFormLineItem__c = eSignFormLineItem.Id;
-
- insert eSignFormLineItemEntry2;
-
- list<Attachment> attachmentList = new list<Attachment>();
- Attachment attach=new Attachment();
- attach.Name='Unit Test Attachment';
- Blob bodyBlob=Blob.valueOf('Unit Test Attachment Body');
- attach.body=bodyBlob;
- attach.parentId=eSignFormEntry2.id;
-
- attachmentList.add(attach);
-
- // insert attach;
- Attachment attach1=new Attachment();
- attach1.Name='Unit Test Attachment';
- Blob bodyBlob1=Blob.valueOf('Unit Test Attachment Body');
- attach1.body=bodyBlob1;
- attach1.parentId=eSignForm.id;
-
- attachmentList.add(attach1);
-
- insert attachmentList;
-
- Test.startTest();
-
- String type = '缁忛攢鍟嗘敹璐�';
- Database.executeBatch(new updateESignBatch(type), 20);
- Test.stopTest();
- }
-
- static testMethod void testMethod9() {
- List<RecordType> rectCo = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '鐥呴櫌'];
- if (rectCo.size() == 0) {
- return;
- }
- List<RecordType> rectSct = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '鎴︾暐绉戝鍒嗛 鍛煎惛绉�'];
- if (rectSct.size() == 0) {
- return;
- }
- List<RecordType> rectDpt = [select Id, Name from RecordType where IsActive = true and SobjectType = 'Account' and Name IN ('瑷虹檪绉� 娑堝寲绉�', '瑷虹檪绉� 鍛煎惛绉�') order by Name desc];
- if (rectDpt.size() == 0) {
- return;
- }
- List<RecordType> rectAs = [select Id, Name from RecordType where IsActive = true and SobjectType = 'Asset' and Name = '澶囧搧'];
- if (rectAs.size() == 0) {
- return;
- }
-
-
- // insert hospital
- Account company1 = new Account();
- company1.RecordTypeId = rectCo[0].Id;
- company1.Name = '鐥呴櫌銉嗐偣銉�1';
- company1.OCM_man_province_txt__c = '姹熻タ';
- List<Account> hps = new Account[]{company1};
- insert hps;
-
- List<Account> dc1s = [Select Id, Name, Department_Class_Label__c, Sys_Dept_Name_Change_Chk__c from Account where Parent.Id = :company1.Id order by Department_Class_Label__c];
-
- Account depart1 = new Account();
- depart1.RecordTypeId = rectDpt[0].Id;
- depart1.Name = '*';
- depart1.Department_Name__c = '瑷虹檪绉�1';
- depart1.ParentId = dc1s[0].Id;
- depart1.Department_Class__c = dc1s[0].Id;
- depart1.Hospital__c = company1.Id;
- depart1.OCM_man_province_txt__c = '姹熻タ';
-
- insert new Account[] {depart1};
-
- List<Product2> prdList = new List<Product2>();
- Product2 prd1 = new Product2();
- prd1.ProductCode_Ext__c = 'HistoryPrd1';
- prd1.ProductCode = 'HistoryPrd1';
- prd1.Repair_Product_Code__c = 'HistoryPrd1_RP';
- prd1.Name = 'HistoryPrd1';
- prd1.Manual_Entry__c = false;
- prd1.Extend_new_product_gurantee__c = true;
- prd1.Extend_Gurantee_Start__c = Date.today().addDays(-60);
- prd1.Extend_Gurantee_End__c = Date.today().addDays(60);
- prdList.add(prd1);
- insert prdList;
-
- Asset ast = new Asset();
-
- ast.RecordTypeId = rectAs[0].Id;
- ast.SerialNumber = 'abcdefg';
- ast.Name = '娴嬭瘯璧勪骇1';
- ast.AccountId = depart1.Id;
- ast.Department_Class__c = dc1s[0].Id;
- ast.Hospital__c = company1.Id;
- ast.Product2Id = prd1.Id;
- ast.Guarantee_period_for_products__c = Date.today();
- ast.InstallDate = Date.today();
- ast.Manage_type__c = '涓綋绠$悊';
- ast.FirstApproveDate_old__c = Date.today().addDays(-30);
-
- Oly_TriggerHandler.bypass('AssetHandler');
-
- insert ast;
-
- Asset ast1 = [select RecordTypeID__c from Asset where Id =: ast.Id];
-
- String RecordTypeID = ast1.RecordTypeID__c;
-
- System.assertEquals(RecordTypeID , ast.RecordTypeId);
-
- RecordType rectOpp = [select id from RecordType where IsActive = true and SobjectType = 'Opportunity' and DeveloperName = 'Opportunity' ];
- Opportunity opp = new Opportunity(
- Name='testOpp1',
- StageName='寮曞悎',
- CloseDate=Date.today(),
- AccountId=depart1.Id,
- Sales_Root__c = 'OCM鐩存帴璨╁2',
- Competitor__c ='A',
- Click_Close_Date__c = null,
- RecordType = rectOpp,
- Trade__c = '鍐呰部'
+ Name = 'testOpp1',
+ StageName = '寮曞悎',
+ CloseDate = Date.today(),
+ AccountId = depart1.Id,
+ Sales_Root__c = 'OCM鐩存帴璨╁2',
+ Competitor__c = 'A',
+ Click_Close_Date__c = null,
+ RecordType = rectOpp,
+ Trade__c = '鍐呰部'
);
insert opp;
//娉ㄦ畫
@@ -1756,10 +1659,10 @@
eSignFormEntry2.eSignForm__c = eSignForm.Id;
eSignFormEntry2.entryType__c = '缁忛攢鍟嗘敹璐�';
eSignFormEntry2.agencyScanDayBack__c = Date.today().addDays(-2);
- eSignFormEntry2.agencySignUpDateBack__c =Date.today().addDays(-2);
- eSignFormEntry2.agencyConfirmDateBack__c =Date.today().addDays(-2);
- eSignFormEntry2.HPScanDayBack__c =Date.today().addDays(-2);
- eSignFormEntry2.HPSignUpDateBack__c =Date.today().addDays(-2);
+ eSignFormEntry2.agencySignUpDateBack__c = Date.today().addDays(-2);
+ eSignFormEntry2.agencyConfirmDateBack__c = Date.today().addDays(-2);
+ eSignFormEntry2.HPScanDayBack__c = Date.today().addDays(-2);
+ eSignFormEntry2.HPSignUpDateBack__c = Date.today().addDays(-2);
eSignFormEntry2.HPConfirmDateBack__c = Date.today().addDays(-2);
// eSignFormEntry2.createdDate = Date.today().addDays(-2);
insert eSignFormEntry2;
@@ -1803,7 +1706,7 @@
eSignFormEntry7.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
eSignFormEntry7.eSignForm__c = eSignForm.Id;
eSignFormEntry7.entryType__c = '鍖婚櫌纭';
-
+
insert eSignFormEntry7;
//鏂板缓鐢靛瓙绛炬敹鍗曟槑缁�
@@ -1816,134 +1719,150 @@
//鏂板缓鐢靛瓙绛炬敹鍗曟槑缁嗗綍鍏ヨ〃
eSignFormLineItemEntry__c eSignFormLineItemEntry1 = new eSignFormLineItemEntry__c();
eSignFormLineItemEntry1.Name = '::鐢靛瓙绛炬敹鍗曟槑缁嗗綍鍏�1';
- eSignFormLineItemEntry1.eSignFormEntry__c =eSignFormEntry2.Id;
+ eSignFormLineItemEntry1.eSignFormEntry__c = eSignFormEntry2.Id;
eSignFormLineItemEntry1.eSignFormLineItem__c = eSignFormLineItem.Id;
insert eSignFormLineItemEntry1;
eSignFormLineItemEntry__c eSignFormLineItemEntry2 = new eSignFormLineItemEntry__c();
eSignFormLineItemEntry2.Name = '::鐢靛瓙绛炬敹鍗曟槑缁嗗綍鍏�2';
- eSignFormLineItemEntry2.eSignFormEntry__c =eSignFormEntry2.Id;
+ eSignFormLineItemEntry2.eSignFormEntry__c = eSignFormEntry2.Id;
eSignFormLineItemEntry2.eSignFormLineItem__c = eSignFormLineItem.Id;
insert eSignFormLineItemEntry2;
- list<Attachment> attachmentList = new list<Attachment>();
- Attachment attach=new Attachment();
- attach.Name='Unit Test Attachment';
- Blob bodyBlob=Blob.valueOf('Unit Test Attachment Body');
- attach.body=bodyBlob;
- attach.parentId=eSignFormEntry2.id;
+ list<Attachment> attachmentList = new List<Attachment>();
+ Attachment attach = new Attachment();
+ attach.Name = 'Unit Test Attachment';
+ Blob bodyBlob = Blob.valueOf('Unit Test Attachment Body');
+ attach.body = bodyBlob;
+ attach.parentId = eSignFormEntry2.id;
attachmentList.add(attach);
// insert attach;
- Attachment attach1=new Attachment();
- attach1.Name='Unit Test Attachment';
- Blob bodyBlob1=Blob.valueOf('Unit Test Attachment Body');
- attach1.body=bodyBlob1;
- attach1.parentId=eSignForm.id;
-
+ Attachment attach1 = new Attachment();
+ attach1.Name = 'Unit Test Attachment';
+ Blob bodyBlob1 = Blob.valueOf('Unit Test Attachment Body');
+ attach1.body = bodyBlob1;
+ attach1.parentId = eSignForm.id;
+
attachmentList.add(attach1);
insert attachmentList;
Test.startTest();
- List<String> ids = new List<String>();
- ids.add(eSignForm.Id);
- Database.executeBatch(new updateESignBatch(ids,true), 20);
+ String type = '缁忛攢鍟嗘敹璐�';
+ Database.executeBatch(new updateESignBatch(type), 20);
Test.stopTest();
}
- static testMethod void testMethod10() {
- List<RecordType> rectCo = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '鐥呴櫌'];
+ static testMethod void testMethod9() {
+ List<RecordType> rectCo = [SELECT Id FROM RecordType WHERE IsActive = TRUE AND SobjectType = 'Account' AND Name = '鐥呴櫌'];
if (rectCo.size() == 0) {
return;
}
- List<RecordType> rectSct = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '鎴︾暐绉戝鍒嗛 鍛煎惛绉�'];
+ List<RecordType> rectSct = [
+ SELECT Id
+ FROM RecordType
+ WHERE IsActive = TRUE AND SobjectType = 'Account' AND Name = '鎴︾暐绉戝鍒嗛 鍛煎惛绉�'
+ ];
if (rectSct.size() == 0) {
return;
}
- List<RecordType> rectDpt = [select Id, Name from RecordType where IsActive = true and SobjectType = 'Account' and Name IN ('瑷虹檪绉� 娑堝寲绉�', '瑷虹檪绉� 鍛煎惛绉�') order by Name desc];
+ List<RecordType> rectDpt = [
+ SELECT Id, Name
+ FROM RecordType
+ WHERE IsActive = TRUE AND SobjectType = 'Account' AND Name IN ('瑷虹檪绉� 娑堝寲绉�', '瑷虹檪绉� 鍛煎惛绉�')
+ ORDER BY Name DESC
+ ];
if (rectDpt.size() == 0) {
return;
}
- List<RecordType> rectAs = [select Id, Name from RecordType where IsActive = true and SobjectType = 'Asset' and Name = '澶囧搧'];
+ List<RecordType> rectAs = [SELECT Id, Name FROM RecordType WHERE IsActive = TRUE AND SobjectType = 'Asset' AND Name = '澶囧搧'];
if (rectAs.size() == 0) {
return;
}
-
// insert hospital
Account company1 = new Account();
company1.RecordTypeId = rectCo[0].Id;
company1.Name = '鐥呴櫌銉嗐偣銉�1';
company1.OCM_man_province_txt__c = '姹熻タ';
- List<Account> hps = new Account[]{company1};
+ List<Account> hps = new List<Account>{ company1 };
insert hps;
-
- List<Account> dc1s = [Select Id, Name, Department_Class_Label__c, Sys_Dept_Name_Change_Chk__c from Account where Parent.Id = :company1.Id order by Department_Class_Label__c];
-
+
+ List<Account> dc1s = [
+ SELECT Id, Name, Department_Class_Label__c, Sys_Dept_Name_Change_Chk__c
+ FROM Account
+ WHERE Parent.Id = :company1.Id
+ ORDER BY Department_Class_Label__c
+ ];
+
Account depart1 = new Account();
depart1.RecordTypeId = rectDpt[0].Id;
- depart1.Name = '*';
- depart1.Department_Name__c = '瑷虹檪绉�1';
- depart1.ParentId = dc1s[0].Id;
+ depart1.Name = '*';
+ depart1.Department_Name__c = '瑷虹檪绉�1';
+ depart1.ParentId = dc1s[0].Id;
depart1.Department_Class__c = dc1s[0].Id;
- depart1.Hospital__c = company1.Id;
+ depart1.Hospital__c = company1.Id;
depart1.OCM_man_province_txt__c = '姹熻タ';
-
- insert new Account[] {depart1};
+
+ insert new List<Account>{ depart1 };
List<Product2> prdList = new List<Product2>();
Product2 prd1 = new Product2();
- prd1.ProductCode_Ext__c = 'HistoryPrd1';
- prd1.ProductCode = 'HistoryPrd1';
+ prd1.ProductCode_Ext__c = 'HistoryPrd1';
+ prd1.ProductCode = 'HistoryPrd1';
prd1.Repair_Product_Code__c = 'HistoryPrd1_RP';
- prd1.Name = 'HistoryPrd1';
- prd1.Manual_Entry__c = false;
+ prd1.Name = 'HistoryPrd1';
+ prd1.Manual_Entry__c = false;
prd1.Extend_new_product_gurantee__c = true;
prd1.Extend_Gurantee_Start__c = Date.today().addDays(-60);
prd1.Extend_Gurantee_End__c = Date.today().addDays(60);
prdList.add(prd1);
insert prdList;
-
+
Asset ast = new Asset();
ast.RecordTypeId = rectAs[0].Id;
ast.SerialNumber = 'abcdefg';
ast.Name = '娴嬭瘯璧勪骇1';
- ast.AccountId = depart1.Id;
- ast.Department_Class__c = dc1s[0].Id;
- ast.Hospital__c = company1.Id;
- ast.Product2Id = prd1.Id;
+ ast.AccountId = depart1.Id;
+ ast.Department_Class__c = dc1s[0].Id;
+ ast.Hospital__c = company1.Id;
+ ast.Product2Id = prd1.Id;
ast.Guarantee_period_for_products__c = Date.today();
- ast.InstallDate = Date.today();
+ ast.InstallDate = Date.today();
ast.Manage_type__c = '涓綋绠$悊';
ast.FirstApproveDate_old__c = Date.today().addDays(-30);
Oly_TriggerHandler.bypass('AssetHandler');
insert ast;
-
- Asset ast1 = [select RecordTypeID__c from Asset where Id =: ast.Id];
-
- String RecordTypeID = ast1.RecordTypeID__c;
-
- System.assertEquals(RecordTypeID , ast.RecordTypeId);
- RecordType rectOpp = [select id from RecordType where IsActive = true and SobjectType = 'Opportunity' and DeveloperName = 'Opportunity' ];
+ Asset ast1 = [SELECT RecordTypeID__c FROM Asset WHERE Id = :ast.Id];
+
+ String RecordTypeID = ast1.RecordTypeID__c;
+
+ System.assertEquals(RecordTypeID, ast.RecordTypeId);
+
+ RecordType rectOpp = [
+ SELECT id
+ FROM RecordType
+ WHERE IsActive = TRUE AND SobjectType = 'Opportunity' AND DeveloperName = 'Opportunity'
+ ];
Opportunity opp = new Opportunity(
- Name='testOpp1',
- StageName='寮曞悎',
- CloseDate=Date.today(),
- AccountId=depart1.Id,
- Sales_Root__c = 'OCM鐩存帴璨╁2',
- Competitor__c ='A',
- Click_Close_Date__c = null,
- RecordType = rectOpp,
- Trade__c = '鍐呰部'
+ Name = 'testOpp1',
+ StageName = '寮曞悎',
+ CloseDate = Date.today(),
+ AccountId = depart1.Id,
+ Sales_Root__c = 'OCM鐩存帴璨╁2',
+ Competitor__c = 'A',
+ Click_Close_Date__c = null,
+ RecordType = rectOpp,
+ Trade__c = '鍐呰部'
);
insert opp;
//娉ㄦ畫
@@ -1957,67 +1876,67 @@
insert Sac;
//鏂板缓鐢靛瓙绛炬敹鍗�
- eSignForm__c eSignForm = new eSignForm__c();
- eSignForm.Statu_Achievements__c = Sac.Id;
- eSignForm.Name = '::娴嬭瘯鐢靛瓙绛炬敹鍗�';
+ eSignForm__c eSignForm = new eSignForm__c();
+ eSignForm.Statu_Achievements__c = Sac.Id;
+ eSignForm.Name = '::娴嬭瘯鐢靛瓙绛炬敹鍗�';
- insert eSignForm;
+ insert eSignForm;
- //鏂板缓鐢靛瓙绛炬敹鍗�7
- eSignFormEntry__c eSignFormEntry = new eSignFormEntry__c();
- eSignFormEntry.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
- eSignFormEntry.eSignForm__c = eSignForm.Id;
- eSignFormEntry.entryType__c = '缁忛攢鍟嗘敹璐�';
- // eSignFormEntry.createdDate = Date.today().addDays(-7);
- insert eSignFormEntry;
+ //鏂板缓鐢靛瓙绛炬敹鍗�7
+ eSignFormEntry__c eSignFormEntry = new eSignFormEntry__c();
+ eSignFormEntry.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
+ eSignFormEntry.eSignForm__c = eSignForm.Id;
+ eSignFormEntry.entryType__c = '缁忛攢鍟嗘敹璐�';
+ // eSignFormEntry.createdDate = Date.today().addDays(-7);
+ insert eSignFormEntry;
- eSignFormEntry__c eSignFormEntry1 = new eSignFormEntry__c();
- eSignFormEntry1.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
- eSignFormEntry1.eSignForm__c = eSignForm.Id;
- eSignFormEntry1.entryType__c = '缁忛攢鍟嗘敹璐�';
- // eSignFormEntry1.createdDate = Date.today().addDays(-3);
- insert eSignFormEntry1;
+ eSignFormEntry__c eSignFormEntry1 = new eSignFormEntry__c();
+ eSignFormEntry1.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
+ eSignFormEntry1.eSignForm__c = eSignForm.Id;
+ eSignFormEntry1.entryType__c = '缁忛攢鍟嗘敹璐�';
+ // eSignFormEntry1.createdDate = Date.today().addDays(-3);
+ insert eSignFormEntry1;
- eSignFormEntry__c eSignFormEntry2 = new eSignFormEntry__c();
- eSignFormEntry2.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
- eSignFormEntry2.eSignForm__c = eSignForm.Id;
- eSignFormEntry2.entryType__c = '缁忛攢鍟嗘敹璐�';
+ eSignFormEntry__c eSignFormEntry2 = new eSignFormEntry__c();
+ eSignFormEntry2.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
+ eSignFormEntry2.eSignForm__c = eSignForm.Id;
+ eSignFormEntry2.entryType__c = '缁忛攢鍟嗘敹璐�';
eSignFormEntry2.agencyScanDayBack__c = Date.today().addDays(-2);
- eSignFormEntry2.agencySignUpDateBack__c =Date.today().addDays(-2);
- eSignFormEntry2.agencyConfirmDateBack__c =Date.today().addDays(-2);
- eSignFormEntry2.HPScanDayBack__c =Date.today().addDays(-2);
- eSignFormEntry2.HPSignUpDateBack__c =Date.today().addDays(-2);
+ eSignFormEntry2.agencySignUpDateBack__c = Date.today().addDays(-2);
+ eSignFormEntry2.agencyConfirmDateBack__c = Date.today().addDays(-2);
+ eSignFormEntry2.HPScanDayBack__c = Date.today().addDays(-2);
+ eSignFormEntry2.HPSignUpDateBack__c = Date.today().addDays(-2);
eSignFormEntry2.HPConfirmDateBack__c = Date.today().addDays(-2);
- // eSignFormEntry2.createdDate = Date.today().addDays(-2);
- insert eSignFormEntry2;
+ // eSignFormEntry2.createdDate = Date.today().addDays(-2);
+ insert eSignFormEntry2;
- eSignFormEntry__c eSignFormEntry3 = new eSignFormEntry__c();
- eSignFormEntry3.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
- eSignFormEntry3.eSignForm__c = eSignForm.Id;
- eSignFormEntry3.entryType__c = '缁忛攢鍟嗙‘璁�';
- // eSignFormEntry3.createdDate = Date.today().addDays(-7);
- insert eSignFormEntry3;
+ eSignFormEntry__c eSignFormEntry3 = new eSignFormEntry__c();
+ eSignFormEntry3.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
+ eSignFormEntry3.eSignForm__c = eSignForm.Id;
+ eSignFormEntry3.entryType__c = '缁忛攢鍟嗙‘璁�';
+ // eSignFormEntry3.createdDate = Date.today().addDays(-7);
+ insert eSignFormEntry3;
- eSignFormEntry__c eSignFormEntry4 = new eSignFormEntry__c();
- eSignFormEntry4.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
- eSignFormEntry4.eSignForm__c = eSignForm.Id;
- eSignFormEntry4.entryType__c = '缁忛攢鍟嗙‘璁�';
- // eSignFormEntry4.createdDate = Date.today().addDays(-2);
- insert eSignFormEntry4;
+ eSignFormEntry__c eSignFormEntry4 = new eSignFormEntry__c();
+ eSignFormEntry4.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
+ eSignFormEntry4.eSignForm__c = eSignForm.Id;
+ eSignFormEntry4.entryType__c = '缁忛攢鍟嗙‘璁�';
+ // eSignFormEntry4.createdDate = Date.today().addDays(-2);
+ insert eSignFormEntry4;
- eSignFormEntry__c eSignFormEntry5 = new eSignFormEntry__c();
- eSignFormEntry5.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
- eSignFormEntry5.eSignForm__c = eSignForm.Id;
- eSignFormEntry5.entryType__c = '鍖婚櫌鏀惰揣';
- // eSignFormEntry5.createdDate = Date.today().addDays(-7);
- insert eSignFormEntry5;
+ eSignFormEntry__c eSignFormEntry5 = new eSignFormEntry__c();
+ eSignFormEntry5.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
+ eSignFormEntry5.eSignForm__c = eSignForm.Id;
+ eSignFormEntry5.entryType__c = '鍖婚櫌鏀惰揣';
+ // eSignFormEntry5.createdDate = Date.today().addDays(-7);
+ insert eSignFormEntry5;
- eSignFormEntry__c eSignFormEntry6 = new eSignFormEntry__c();
- eSignFormEntry6.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
- eSignFormEntry6.eSignForm__c = eSignForm.Id;
- eSignFormEntry6.entryType__c = '鍖婚櫌鏀惰揣';
- // eSignFormEntry6.createdDate = Date.today().addDays(-2);
- insert eSignFormEntry6;
+ eSignFormEntry__c eSignFormEntry6 = new eSignFormEntry__c();
+ eSignFormEntry6.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
+ eSignFormEntry6.eSignForm__c = eSignForm.Id;
+ eSignFormEntry6.entryType__c = '鍖婚櫌鏀惰揣';
+ // eSignFormEntry6.createdDate = Date.today().addDays(-2);
+ insert eSignFormEntry6;
eSignFormEntry__c eSignFormEntry8 = new eSignFormEntry__c();
eSignFormEntry8.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
@@ -2030,7 +1949,7 @@
eSignFormEntry7.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
eSignFormEntry7.eSignForm__c = eSignForm.Id;
eSignFormEntry7.entryType__c = '鍖婚櫌纭';
-
+
insert eSignFormEntry7;
//鏂板缓鐢靛瓙绛炬敹鍗曟槑缁�
@@ -2043,34 +1962,278 @@
//鏂板缓鐢靛瓙绛炬敹鍗曟槑缁嗗綍鍏ヨ〃
eSignFormLineItemEntry__c eSignFormLineItemEntry1 = new eSignFormLineItemEntry__c();
eSignFormLineItemEntry1.Name = '::鐢靛瓙绛炬敹鍗曟槑缁嗗綍鍏�1';
- eSignFormLineItemEntry1.eSignFormEntry__c =eSignFormEntry2.Id;
+ eSignFormLineItemEntry1.eSignFormEntry__c = eSignFormEntry2.Id;
eSignFormLineItemEntry1.eSignFormLineItem__c = eSignFormLineItem.Id;
insert eSignFormLineItemEntry1;
eSignFormLineItemEntry__c eSignFormLineItemEntry2 = new eSignFormLineItemEntry__c();
eSignFormLineItemEntry2.Name = '::鐢靛瓙绛炬敹鍗曟槑缁嗗綍鍏�2';
- eSignFormLineItemEntry2.eSignFormEntry__c =eSignFormEntry2.Id;
+ eSignFormLineItemEntry2.eSignFormEntry__c = eSignFormEntry2.Id;
eSignFormLineItemEntry2.eSignFormLineItem__c = eSignFormLineItem.Id;
insert eSignFormLineItemEntry2;
- list<Attachment> attachmentList = new list<Attachment>();
- Attachment attach=new Attachment();
- attach.Name='Unit Test Attachment';
- Blob bodyBlob=Blob.valueOf('Unit Test Attachment Body');
- attach.body=bodyBlob;
- attach.parentId=eSignFormEntry2.id;
+ list<Attachment> attachmentList = new List<Attachment>();
+ Attachment attach = new Attachment();
+ attach.Name = 'Unit Test Attachment';
+ Blob bodyBlob = Blob.valueOf('Unit Test Attachment Body');
+ attach.body = bodyBlob;
+ attach.parentId = eSignFormEntry2.id;
attachmentList.add(attach);
// insert attach;
- Attachment attach1=new Attachment();
- attach1.Name='Unit Test Attachment';
- Blob bodyBlob1=Blob.valueOf('Unit Test Attachment Body');
- attach1.body=bodyBlob1;
- attach1.parentId=eSignForm.id;
-
+ Attachment attach1 = new Attachment();
+ attach1.Name = 'Unit Test Attachment';
+ Blob bodyBlob1 = Blob.valueOf('Unit Test Attachment Body');
+ attach1.body = bodyBlob1;
+ attach1.parentId = eSignForm.id;
+
+ attachmentList.add(attach1);
+
+ insert attachmentList;
+
+ Test.startTest();
+
+ List<String> ids = new List<String>();
+ ids.add(eSignForm.Id);
+ Database.executeBatch(new updateESignBatch(ids, true), 20);
+ Test.stopTest();
+ }
+
+ static testMethod void testMethod10() {
+ List<RecordType> rectCo = [SELECT Id FROM RecordType WHERE IsActive = TRUE AND SobjectType = 'Account' AND Name = '鐥呴櫌'];
+ if (rectCo.size() == 0) {
+ return;
+ }
+ List<RecordType> rectSct = [
+ SELECT Id
+ FROM RecordType
+ WHERE IsActive = TRUE AND SobjectType = 'Account' AND Name = '鎴︾暐绉戝鍒嗛 鍛煎惛绉�'
+ ];
+ if (rectSct.size() == 0) {
+ return;
+ }
+ List<RecordType> rectDpt = [
+ SELECT Id, Name
+ FROM RecordType
+ WHERE IsActive = TRUE AND SobjectType = 'Account' AND Name IN ('瑷虹檪绉� 娑堝寲绉�', '瑷虹檪绉� 鍛煎惛绉�')
+ ORDER BY Name DESC
+ ];
+ if (rectDpt.size() == 0) {
+ return;
+ }
+ List<RecordType> rectAs = [SELECT Id, Name FROM RecordType WHERE IsActive = TRUE AND SobjectType = 'Asset' AND Name = '澶囧搧'];
+ if (rectAs.size() == 0) {
+ return;
+ }
+
+ // insert hospital
+ Account company1 = new Account();
+ company1.RecordTypeId = rectCo[0].Id;
+ company1.Name = '鐥呴櫌銉嗐偣銉�1';
+ company1.OCM_man_province_txt__c = '姹熻タ';
+ List<Account> hps = new List<Account>{ company1 };
+ insert hps;
+
+ List<Account> dc1s = [
+ SELECT Id, Name, Department_Class_Label__c, Sys_Dept_Name_Change_Chk__c
+ FROM Account
+ WHERE Parent.Id = :company1.Id
+ ORDER BY Department_Class_Label__c
+ ];
+
+ Account depart1 = new Account();
+ depart1.RecordTypeId = rectDpt[0].Id;
+ depart1.Name = '*';
+ depart1.Department_Name__c = '瑷虹檪绉�1';
+ depart1.ParentId = dc1s[0].Id;
+ depart1.Department_Class__c = dc1s[0].Id;
+ depart1.Hospital__c = company1.Id;
+ depart1.OCM_man_province_txt__c = '姹熻タ';
+
+ insert new List<Account>{ depart1 };
+
+ List<Product2> prdList = new List<Product2>();
+ Product2 prd1 = new Product2();
+ prd1.ProductCode_Ext__c = 'HistoryPrd1';
+ prd1.ProductCode = 'HistoryPrd1';
+ prd1.Repair_Product_Code__c = 'HistoryPrd1_RP';
+ prd1.Name = 'HistoryPrd1';
+ prd1.Manual_Entry__c = false;
+ prd1.Extend_new_product_gurantee__c = true;
+ prd1.Extend_Gurantee_Start__c = Date.today().addDays(-60);
+ prd1.Extend_Gurantee_End__c = Date.today().addDays(60);
+ prdList.add(prd1);
+ insert prdList;
+
+ Asset ast = new Asset();
+
+ ast.RecordTypeId = rectAs[0].Id;
+ ast.SerialNumber = 'abcdefg';
+ ast.Name = '娴嬭瘯璧勪骇1';
+ ast.AccountId = depart1.Id;
+ ast.Department_Class__c = dc1s[0].Id;
+ ast.Hospital__c = company1.Id;
+ ast.Product2Id = prd1.Id;
+ ast.Guarantee_period_for_products__c = Date.today();
+ ast.InstallDate = Date.today();
+ ast.Manage_type__c = '涓綋绠$悊';
+ ast.FirstApproveDate_old__c = Date.today().addDays(-30);
+
+ Oly_TriggerHandler.bypass('AssetHandler');
+
+ insert ast;
+
+ Asset ast1 = [SELECT RecordTypeID__c FROM Asset WHERE Id = :ast.Id];
+
+ String RecordTypeID = ast1.RecordTypeID__c;
+
+ System.assertEquals(RecordTypeID, ast.RecordTypeId);
+
+ RecordType rectOpp = [
+ SELECT id
+ FROM RecordType
+ WHERE IsActive = TRUE AND SobjectType = 'Opportunity' AND DeveloperName = 'Opportunity'
+ ];
+ Opportunity opp = new Opportunity(
+ Name = 'testOpp1',
+ StageName = '寮曞悎',
+ CloseDate = Date.today(),
+ AccountId = depart1.Id,
+ Sales_Root__c = 'OCM鐩存帴璨╁2',
+ Competitor__c = 'A',
+ Click_Close_Date__c = null,
+ RecordType = rectOpp,
+ Trade__c = '鍐呰部'
+ );
+ insert opp;
+ //娉ㄦ畫
+ Statu_Achievements__c Sac = new Statu_Achievements__c(
+ name = 'zhucan_one',
+ Opportunity__c = opp.id,
+ DeliveryDate__c = Date.today(),
+ ContractNO__c = 'ContractNO1',
+ ContractAmount__c = 1000
+ );
+ insert Sac;
+
+ //鏂板缓鐢靛瓙绛炬敹鍗�
+ eSignForm__c eSignForm = new eSignForm__c();
+ eSignForm.Statu_Achievements__c = Sac.Id;
+ eSignForm.Name = '::娴嬭瘯鐢靛瓙绛炬敹鍗�';
+
+ insert eSignForm;
+
+ //鏂板缓鐢靛瓙绛炬敹鍗�7
+ eSignFormEntry__c eSignFormEntry = new eSignFormEntry__c();
+ eSignFormEntry.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
+ eSignFormEntry.eSignForm__c = eSignForm.Id;
+ eSignFormEntry.entryType__c = '缁忛攢鍟嗘敹璐�';
+ // eSignFormEntry.createdDate = Date.today().addDays(-7);
+ insert eSignFormEntry;
+
+ eSignFormEntry__c eSignFormEntry1 = new eSignFormEntry__c();
+ eSignFormEntry1.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
+ eSignFormEntry1.eSignForm__c = eSignForm.Id;
+ eSignFormEntry1.entryType__c = '缁忛攢鍟嗘敹璐�';
+ // eSignFormEntry1.createdDate = Date.today().addDays(-3);
+ insert eSignFormEntry1;
+
+ eSignFormEntry__c eSignFormEntry2 = new eSignFormEntry__c();
+ eSignFormEntry2.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
+ eSignFormEntry2.eSignForm__c = eSignForm.Id;
+ eSignFormEntry2.entryType__c = '缁忛攢鍟嗘敹璐�';
+ eSignFormEntry2.agencyScanDayBack__c = Date.today().addDays(-2);
+ eSignFormEntry2.agencySignUpDateBack__c = Date.today().addDays(-2);
+ eSignFormEntry2.agencyConfirmDateBack__c = Date.today().addDays(-2);
+ eSignFormEntry2.HPScanDayBack__c = Date.today().addDays(-2);
+ eSignFormEntry2.HPSignUpDateBack__c = Date.today().addDays(-2);
+ eSignFormEntry2.HPConfirmDateBack__c = Date.today().addDays(-2);
+ // eSignFormEntry2.createdDate = Date.today().addDays(-2);
+ insert eSignFormEntry2;
+
+ eSignFormEntry__c eSignFormEntry3 = new eSignFormEntry__c();
+ eSignFormEntry3.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
+ eSignFormEntry3.eSignForm__c = eSignForm.Id;
+ eSignFormEntry3.entryType__c = '缁忛攢鍟嗙‘璁�';
+ // eSignFormEntry3.createdDate = Date.today().addDays(-7);
+ insert eSignFormEntry3;
+
+ eSignFormEntry__c eSignFormEntry4 = new eSignFormEntry__c();
+ eSignFormEntry4.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
+ eSignFormEntry4.eSignForm__c = eSignForm.Id;
+ eSignFormEntry4.entryType__c = '缁忛攢鍟嗙‘璁�';
+ // eSignFormEntry4.createdDate = Date.today().addDays(-2);
+ insert eSignFormEntry4;
+
+ eSignFormEntry__c eSignFormEntry5 = new eSignFormEntry__c();
+ eSignFormEntry5.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
+ eSignFormEntry5.eSignForm__c = eSignForm.Id;
+ eSignFormEntry5.entryType__c = '鍖婚櫌鏀惰揣';
+ // eSignFormEntry5.createdDate = Date.today().addDays(-7);
+ insert eSignFormEntry5;
+
+ eSignFormEntry__c eSignFormEntry6 = new eSignFormEntry__c();
+ eSignFormEntry6.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
+ eSignFormEntry6.eSignForm__c = eSignForm.Id;
+ eSignFormEntry6.entryType__c = '鍖婚櫌鏀惰揣';
+ // eSignFormEntry6.createdDate = Date.today().addDays(-2);
+ insert eSignFormEntry6;
+
+ eSignFormEntry__c eSignFormEntry8 = new eSignFormEntry__c();
+ eSignFormEntry8.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
+ eSignFormEntry8.eSignForm__c = eSignForm.Id;
+ eSignFormEntry8.entryType__c = '鍖婚櫌纭';
+
+ insert eSignFormEntry8;
+
+ eSignFormEntry__c eSignFormEntry7 = new eSignFormEntry__c();
+ eSignFormEntry7.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃';
+ eSignFormEntry7.eSignForm__c = eSignForm.Id;
+ eSignFormEntry7.entryType__c = '鍖婚櫌纭';
+
+ insert eSignFormEntry7;
+
+ //鏂板缓鐢靛瓙绛炬敹鍗曟槑缁�
+ eSignFormLineItem__c eSignFormLineItem = new eSignFormLineItem__c();
+ eSignFormLineItem.Name = '::鐢靛瓙绛炬敹鍗曟槑缁�';
+ eSignFormLineItem.eSignForm__c = eSignForm.Id;
+
+ insert eSignFormLineItem;
+
+ //鏂板缓鐢靛瓙绛炬敹鍗曟槑缁嗗綍鍏ヨ〃
+ eSignFormLineItemEntry__c eSignFormLineItemEntry1 = new eSignFormLineItemEntry__c();
+ eSignFormLineItemEntry1.Name = '::鐢靛瓙绛炬敹鍗曟槑缁嗗綍鍏�1';
+ eSignFormLineItemEntry1.eSignFormEntry__c = eSignFormEntry2.Id;
+ eSignFormLineItemEntry1.eSignFormLineItem__c = eSignFormLineItem.Id;
+
+ insert eSignFormLineItemEntry1;
+
+ eSignFormLineItemEntry__c eSignFormLineItemEntry2 = new eSignFormLineItemEntry__c();
+ eSignFormLineItemEntry2.Name = '::鐢靛瓙绛炬敹鍗曟槑缁嗗綍鍏�2';
+ eSignFormLineItemEntry2.eSignFormEntry__c = eSignFormEntry2.Id;
+ eSignFormLineItemEntry2.eSignFormLineItem__c = eSignFormLineItem.Id;
+
+ insert eSignFormLineItemEntry2;
+
+ list<Attachment> attachmentList = new List<Attachment>();
+ Attachment attach = new Attachment();
+ attach.Name = 'Unit Test Attachment';
+ Blob bodyBlob = Blob.valueOf('Unit Test Attachment Body');
+ attach.body = bodyBlob;
+ attach.parentId = eSignFormEntry2.id;
+
+ attachmentList.add(attach);
+
+ // insert attach;
+ Attachment attach1 = new Attachment();
+ attach1.Name = 'Unit Test Attachment';
+ Blob bodyBlob1 = Blob.valueOf('Unit Test Attachment Body');
+ attach1.body = bodyBlob1;
+ attach1.parentId = eSignForm.id;
+
attachmentList.add(attach1);
insert attachmentList;
@@ -2080,99 +2243,116 @@
String type = '缁忛攢鍟嗘敹璐�';
Date startDate = Date.today();
Date enDdate = Date.today().addDays(-1);
- Database.executeBatch(new updateESignBatch(type,true), 20);
+ Database.executeBatch(new updateESignBatch(type, true), 20);
Test.stopTest();
}
//娴嬭瘯缁忛攢鍟嗘敹璐�
static testMethod void testMethod11() {
- List<RecordType> rectCo = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '鐥呴櫌'];
+ List<RecordType> rectCo = [SELECT Id FROM RecordType WHERE IsActive = TRUE AND SobjectType = 'Account' AND Name = '鐥呴櫌'];
if (rectCo.size() == 0) {
return;
}
- List<RecordType> rectSct = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '鎴︾暐绉戝鍒嗛 鍛煎惛绉�'];
+ List<RecordType> rectSct = [
+ SELECT Id
+ FROM RecordType
+ WHERE IsActive = TRUE AND SobjectType = 'Account' AND Name = '鎴︾暐绉戝鍒嗛 鍛煎惛绉�'
+ ];
if (rectSct.size() == 0) {
return;
}
- List<RecordType> rectDpt = [select Id, Name from RecordType where IsActive = true and SobjectType = 'Account' and Name IN ('瑷虹檪绉� 娑堝寲绉�', '瑷虹檪绉� 鍛煎惛绉�') order by Name desc];
+ List<RecordType> rectDpt = [
+ SELECT Id, Name
+ FROM RecordType
+ WHERE IsActive = TRUE AND SobjectType = 'Account' AND Name IN ('瑷虹檪绉� 娑堝寲绉�', '瑷虹檪绉� 鍛煎惛绉�')
+ ORDER BY Name DESC
+ ];
if (rectDpt.size() == 0) {
return;
}
- List<RecordType> rectAs = [select Id, Name from RecordType where IsActive = true and SobjectType = 'Asset' and Name = '澶囧搧'];
+ List<RecordType> rectAs = [SELECT Id, Name FROM RecordType WHERE IsActive = TRUE AND SobjectType = 'Asset' AND Name = '澶囧搧'];
if (rectAs.size() == 0) {
return;
}
-
// insert hospital
Account company1 = new Account();
company1.RecordTypeId = rectCo[0].Id;
company1.Name = '鐥呴櫌銉嗐偣銉�1';
company1.OCM_man_province_txt__c = '姹熻タ';
- List<Account> hps = new Account[]{company1};
+ List<Account> hps = new List<Account>{ company1 };
insert hps;
-
- List<Account> dc1s = [Select Id, Name, Department_Class_Label__c, Sys_Dept_Name_Change_Chk__c from Account where Parent.Id = :company1.Id order by Department_Class_Label__c];
-
+
+ List<Account> dc1s = [
+ SELECT Id, Name, Department_Class_Label__c, Sys_Dept_Name_Change_Chk__c
+ FROM Account
+ WHERE Parent.Id = :company1.Id
+ ORDER BY Department_Class_Label__c
+ ];
+
Account depart1 = new Account();
depart1.RecordTypeId = rectDpt[0].Id;
- depart1.Name = '*';
- depart1.Department_Name__c = '瑷虹檪绉�1';
- depart1.ParentId = dc1s[0].Id;
+ depart1.Name = '*';
+ depart1.Department_Name__c = '瑷虹檪绉�1';
+ depart1.ParentId = dc1s[0].Id;
depart1.Department_Class__c = dc1s[0].Id;
- depart1.Hospital__c = company1.Id;
+ depart1.Hospital__c = company1.Id;
depart1.OCM_man_province_txt__c = '姹熻タ';
-
- insert new Account[] {depart1};
+
+ insert new List<Account>{ depart1 };
List<Product2> prdList = new List<Product2>();
Product2 prd1 = new Product2();
- prd1.ProductCode_Ext__c = 'HistoryPrd1';
- prd1.ProductCode = 'HistoryPrd1';
+ prd1.ProductCode_Ext__c = 'HistoryPrd1';
+ prd1.ProductCode = 'HistoryPrd1';
prd1.Repair_Product_Code__c = 'HistoryPrd1_RP';
- prd1.Name = 'HistoryPrd1';
- prd1.Manual_Entry__c = false;
+ prd1.Name = 'HistoryPrd1';
+ prd1.Manual_Entry__c = false;
prd1.Extend_new_product_gurantee__c = true;
prd1.Extend_Gurantee_Start__c = Date.today().addDays(-60);
prd1.Extend_Gurantee_End__c = Date.today().addDays(60);
prdList.add(prd1);
insert prdList;
-
+
Asset ast = new Asset();
ast.RecordTypeId = rectAs[0].Id;
ast.SerialNumber = 'abcdefg';
ast.Name = '娴嬭瘯璧勪骇1';
- ast.AccountId = depart1.Id;
- ast.Department_Class__c = dc1s[0].Id;
- ast.Hospital__c = company1.Id;
- ast.Product2Id = prd1.Id;
+ ast.AccountId = depart1.Id;
+ ast.Department_Class__c = dc1s[0].Id;
+ ast.Hospital__c = company1.Id;
+ ast.Product2Id = prd1.Id;
ast.Guarantee_period_for_products__c = Date.today();
- ast.InstallDate = Date.today();
+ ast.InstallDate = Date.today();
ast.Manage_type__c = '涓綋绠$悊';
ast.FirstApproveDate_old__c = Date.today().addDays(-30);
Oly_TriggerHandler.bypass('AssetHandler');
insert ast;
-
- Asset ast1 = [select RecordTypeID__c from Asset where Id =: ast.Id];
-
- String RecordTypeID = ast1.RecordTypeID__c;
-
- System.assertEquals(RecordTypeID , ast.RecordTypeId);
- RecordType rectOpp = [select id from RecordType where IsActive = true and SobjectType = 'Opportunity' and DeveloperName = 'Opportunity' ];
+ Asset ast1 = [SELECT RecordTypeID__c FROM Asset WHERE Id = :ast.Id];
+
+ String RecordTypeID = ast1.RecordTypeID__c;
+
+ System.assertEquals(RecordTypeID, ast.RecordTypeId);
+
+ RecordType rectOpp = [
+ SELECT id
+ FROM RecordType
+ WHERE IsActive = TRUE AND SobjectType = 'Opportunity' AND DeveloperName = 'Opportunity'
+ ];
Opportunity opp = new Opportunity(
- Name='testOpp1',
- StageName='寮曞悎',
- CloseDate=Date.today(),
- AccountId=depart1.Id,
- Sales_Root__c = '璨╁2搴�',
- Competitor__c ='A',
- Click_Close_Date__c = null,
- RecordType = rectOpp,
- Trade__c = '鍐呰部'
+ Name = 'testOpp1',
+ StageName = '寮曞悎',
+ CloseDate = Date.today(),
+ AccountId = depart1.Id,
+ Sales_Root__c = '璨╁2搴�',
+ Competitor__c = 'A',
+ Click_Close_Date__c = null,
+ RecordType = rectOpp,
+ Trade__c = '鍐呰部'
);
insert opp;
@@ -2197,7 +2377,7 @@
eSignFormEntry1.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃1';
eSignFormEntry1.eSignForm__c = eSignForm.Id;
eSignFormEntry1.entryType__c = '缁忛攢鍟嗘敹璐�';
-
+
insert eSignFormEntry1;
eSignFormEntry__c eSignFormEntry2 = new eSignFormEntry__c();
@@ -2206,10 +2386,10 @@
eSignFormEntry2.entryType__c = '缁忛攢鍟嗘敹璐�';
eSignFormEntry2.IsSubmit__c = true;
eSignFormEntry2.agencyScanDayBack__c = Date.today().addDays(-2);
- eSignFormEntry2.agencySignUpDateBack__c =Date.today().addDays(-2);
- eSignFormEntry2.agencyConfirmDateBack__c =Date.today().addDays(-2);
- eSignFormEntry2.HPScanDayBack__c =Date.today().addDays(-2);
- eSignFormEntry2.HPSignUpDateBack__c =Date.today().addDays(-2);
+ eSignFormEntry2.agencySignUpDateBack__c = Date.today().addDays(-2);
+ eSignFormEntry2.agencyConfirmDateBack__c = Date.today().addDays(-2);
+ eSignFormEntry2.HPScanDayBack__c = Date.today().addDays(-2);
+ eSignFormEntry2.HPSignUpDateBack__c = Date.today().addDays(-2);
eSignFormEntry2.HPConfirmDateBack__c = Date.today().addDays(-2);
// eSignFormEntry2.createdDate = Date.today().addDays(-2);
insert eSignFormEntry2;
@@ -2218,7 +2398,7 @@
eSignFormEntry3.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃1';
eSignFormEntry3.eSignForm__c = eSignForm.Id;
eSignFormEntry3.entryType__c = '鍖婚櫌鏀惰揣';
-
+
insert eSignFormEntry3;
eSignFormEntry__c eSignFormEntry4 = new eSignFormEntry__c();
@@ -2228,7 +2408,6 @@
eSignFormEntry4.IsSubmit__c = true;
// eSignFormEntry2.createdDate = Date.today().addDays(-2);
insert eSignFormEntry4;
-
//鏂板缓鐢靛瓙绛炬敹鍗曟槑缁�
eSignFormLineItem__c eSignFormLineItem = new eSignFormLineItem__c();
@@ -2241,48 +2420,48 @@
eSignFormLineItemEntry__c eSignFormLineItemEntry1 = new eSignFormLineItemEntry__c();
eSignFormLineItemEntry1.Name = '::鐢靛瓙绛炬敹鍗曟槑缁嗗綍鍏�1';
- eSignFormLineItemEntry1.eSignFormEntry__c =eSignFormEntry1.Id;
+ eSignFormLineItemEntry1.eSignFormEntry__c = eSignFormEntry1.Id;
eSignFormLineItemEntry1.eSignFormLineItem__c = eSignFormLineItem.Id;
insert eSignFormLineItemEntry1;
eSignFormLineItemEntry__c eSignFormLineItemEntry2 = new eSignFormLineItemEntry__c();
eSignFormLineItemEntry2.Name = '::鐢靛瓙绛炬敹鍗曟槑缁嗗綍鍏�2';
- eSignFormLineItemEntry2.eSignFormEntry__c =eSignFormEntry2.Id;
+ eSignFormLineItemEntry2.eSignFormEntry__c = eSignFormEntry2.Id;
eSignFormLineItemEntry2.eSignFormLineItem__c = eSignFormLineItem.Id;
insert eSignFormLineItemEntry2;
eSignFormLineItemEntry__c eSignFormLineItemEntry3 = new eSignFormLineItemEntry__c();
eSignFormLineItemEntry3.Name = '::鐢靛瓙绛炬敹鍗曟槑缁嗗綍鍏�3';
- eSignFormLineItemEntry3.eSignFormEntry__c =eSignFormEntry3.Id;
+ eSignFormLineItemEntry3.eSignFormEntry__c = eSignFormEntry3.Id;
eSignFormLineItemEntry3.eSignFormLineItem__c = eSignFormLineItem.Id;
insert eSignFormLineItemEntry3;
eSignFormLineItemEntry__c eSignFormLineItemEntry4 = new eSignFormLineItemEntry__c();
eSignFormLineItemEntry4.Name = '::鐢靛瓙绛炬敹鍗曟槑缁嗗綍鍏�4';
- eSignFormLineItemEntry4.eSignFormEntry__c =eSignFormEntry4.Id;
+ eSignFormLineItemEntry4.eSignFormEntry__c = eSignFormEntry4.Id;
eSignFormLineItemEntry4.eSignFormLineItem__c = eSignFormLineItem.Id;
insert eSignFormLineItemEntry4;
- list<Attachment> attachmentList = new list<Attachment>();
- Attachment attach=new Attachment();
- attach.Name='Unit Test Attachment';
- Blob bodyBlob=Blob.valueOf('Unit Test Attachment Body');
- attach.body=bodyBlob;
- attach.parentId=eSignFormEntry2.id;
+ list<Attachment> attachmentList = new List<Attachment>();
+ Attachment attach = new Attachment();
+ attach.Name = 'Unit Test Attachment';
+ Blob bodyBlob = Blob.valueOf('Unit Test Attachment Body');
+ attach.body = bodyBlob;
+ attach.parentId = eSignFormEntry2.id;
attachmentList.add(attach);
// insert attach;
- Attachment attach1=new Attachment();
- attach1.Name='Unit Test Attachment';
- Blob bodyBlob1=Blob.valueOf('Unit Test Attachment Body');
- attach1.body=bodyBlob1;
- attach1.parentId=eSignForm.id;
-
+ Attachment attach1 = new Attachment();
+ attach1.Name = 'Unit Test Attachment';
+ Blob bodyBlob1 = Blob.valueOf('Unit Test Attachment Body');
+ attach1.body = bodyBlob1;
+ attach1.parentId = eSignForm.id;
+
attachmentList.add(attach1);
insert attachmentList;
@@ -2294,93 +2473,110 @@
}
//娴嬭瘯鍖婚櫌纭
static testMethod void testMethod12() {
- List<RecordType> rectCo = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '鐥呴櫌'];
+ List<RecordType> rectCo = [SELECT Id FROM RecordType WHERE IsActive = TRUE AND SobjectType = 'Account' AND Name = '鐥呴櫌'];
if (rectCo.size() == 0) {
return;
}
- List<RecordType> rectSct = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '鎴︾暐绉戝鍒嗛 鍛煎惛绉�'];
+ List<RecordType> rectSct = [
+ SELECT Id
+ FROM RecordType
+ WHERE IsActive = TRUE AND SobjectType = 'Account' AND Name = '鎴︾暐绉戝鍒嗛 鍛煎惛绉�'
+ ];
if (rectSct.size() == 0) {
return;
}
- List<RecordType> rectDpt = [select Id, Name from RecordType where IsActive = true and SobjectType = 'Account' and Name IN ('瑷虹檪绉� 娑堝寲绉�', '瑷虹檪绉� 鍛煎惛绉�') order by Name desc];
+ List<RecordType> rectDpt = [
+ SELECT Id, Name
+ FROM RecordType
+ WHERE IsActive = TRUE AND SobjectType = 'Account' AND Name IN ('瑷虹檪绉� 娑堝寲绉�', '瑷虹檪绉� 鍛煎惛绉�')
+ ORDER BY Name DESC
+ ];
if (rectDpt.size() == 0) {
return;
}
- List<RecordType> rectAs = [select Id, Name from RecordType where IsActive = true and SobjectType = 'Asset' and Name = '澶囧搧'];
+ List<RecordType> rectAs = [SELECT Id, Name FROM RecordType WHERE IsActive = TRUE AND SobjectType = 'Asset' AND Name = '澶囧搧'];
if (rectAs.size() == 0) {
return;
}
-
// insert hospital
Account company1 = new Account();
company1.RecordTypeId = rectCo[0].Id;
company1.Name = '鐥呴櫌銉嗐偣銉�1';
company1.OCM_man_province_txt__c = '姹熻タ';
- List<Account> hps = new Account[]{company1};
+ List<Account> hps = new List<Account>{ company1 };
insert hps;
-
- List<Account> dc1s = [Select Id, Name, Department_Class_Label__c, Sys_Dept_Name_Change_Chk__c from Account where Parent.Id = :company1.Id order by Department_Class_Label__c];
-
+
+ List<Account> dc1s = [
+ SELECT Id, Name, Department_Class_Label__c, Sys_Dept_Name_Change_Chk__c
+ FROM Account
+ WHERE Parent.Id = :company1.Id
+ ORDER BY Department_Class_Label__c
+ ];
+
Account depart1 = new Account();
depart1.RecordTypeId = rectDpt[0].Id;
- depart1.Name = '*';
- depart1.Department_Name__c = '瑷虹檪绉�1';
- depart1.ParentId = dc1s[0].Id;
+ depart1.Name = '*';
+ depart1.Department_Name__c = '瑷虹檪绉�1';
+ depart1.ParentId = dc1s[0].Id;
depart1.Department_Class__c = dc1s[0].Id;
- depart1.Hospital__c = company1.Id;
+ depart1.Hospital__c = company1.Id;
depart1.OCM_man_province_txt__c = '姹熻タ';
-
- insert new Account[] {depart1};
+
+ insert new List<Account>{ depart1 };
List<Product2> prdList = new List<Product2>();
Product2 prd1 = new Product2();
- prd1.ProductCode_Ext__c = 'HistoryPrd1';
- prd1.ProductCode = 'HistoryPrd1';
+ prd1.ProductCode_Ext__c = 'HistoryPrd1';
+ prd1.ProductCode = 'HistoryPrd1';
prd1.Repair_Product_Code__c = 'HistoryPrd1_RP';
- prd1.Name = 'HistoryPrd1';
- prd1.Manual_Entry__c = false;
+ prd1.Name = 'HistoryPrd1';
+ prd1.Manual_Entry__c = false;
prd1.Extend_new_product_gurantee__c = true;
prd1.Extend_Gurantee_Start__c = Date.today().addDays(-60);
prd1.Extend_Gurantee_End__c = Date.today().addDays(60);
prdList.add(prd1);
insert prdList;
-
+
Asset ast = new Asset();
ast.RecordTypeId = rectAs[0].Id;
ast.SerialNumber = 'abcdefg';
ast.Name = '娴嬭瘯璧勪骇1';
- ast.AccountId = depart1.Id;
- ast.Department_Class__c = dc1s[0].Id;
- ast.Hospital__c = company1.Id;
- ast.Product2Id = prd1.Id;
+ ast.AccountId = depart1.Id;
+ ast.Department_Class__c = dc1s[0].Id;
+ ast.Hospital__c = company1.Id;
+ ast.Product2Id = prd1.Id;
ast.Guarantee_period_for_products__c = Date.today();
- ast.InstallDate = Date.today();
+ ast.InstallDate = Date.today();
ast.Manage_type__c = '涓綋绠$悊';
ast.FirstApproveDate_old__c = Date.today().addDays(-30);
Oly_TriggerHandler.bypass('AssetHandler');
insert ast;
-
- Asset ast1 = [select RecordTypeID__c from Asset where Id =: ast.Id];
-
- String RecordTypeID = ast1.RecordTypeID__c;
-
- System.assertEquals(RecordTypeID , ast.RecordTypeId);
- RecordType rectOpp = [select id from RecordType where IsActive = true and SobjectType = 'Opportunity' and DeveloperName = 'Opportunity' ];
+ Asset ast1 = [SELECT RecordTypeID__c FROM Asset WHERE Id = :ast.Id];
+
+ String RecordTypeID = ast1.RecordTypeID__c;
+
+ System.assertEquals(RecordTypeID, ast.RecordTypeId);
+
+ RecordType rectOpp = [
+ SELECT id
+ FROM RecordType
+ WHERE IsActive = TRUE AND SobjectType = 'Opportunity' AND DeveloperName = 'Opportunity'
+ ];
Opportunity opp = new Opportunity(
- Name='testOpp1',
- StageName='寮曞悎',
- CloseDate=Date.today(),
- AccountId=depart1.Id,
- Sales_Root__c = '璨╁2搴�',
- Competitor__c ='A',
- Click_Close_Date__c = null,
- RecordType = rectOpp,
- Trade__c = '鍐呰部'
+ Name = 'testOpp1',
+ StageName = '寮曞悎',
+ CloseDate = Date.today(),
+ AccountId = depart1.Id,
+ Sales_Root__c = '璨╁2搴�',
+ Competitor__c = 'A',
+ Click_Close_Date__c = null,
+ RecordType = rectOpp,
+ Trade__c = '鍐呰部'
);
insert opp;
@@ -2405,7 +2601,7 @@
eSignFormEntry1.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃1';
eSignFormEntry1.eSignForm__c = eSignForm.Id;
eSignFormEntry1.entryType__c = '鍖婚櫌纭';
-
+
insert eSignFormEntry1;
eSignFormEntry__c eSignFormEntry2 = new eSignFormEntry__c();
@@ -2422,7 +2618,6 @@
// eSignFormEntry2.createdDate = Date.today().addDays(-2);
insert eSignFormEntry2;
-
//鏂板缓鐢靛瓙绛炬敹鍗曟槑缁�
eSignFormLineItem__c eSignFormLineItem = new eSignFormLineItem__c();
eSignFormLineItem.Name = '::鐢靛瓙绛炬敹鍗曟槑缁�';
@@ -2434,34 +2629,34 @@
eSignFormLineItemEntry__c eSignFormLineItemEntry1 = new eSignFormLineItemEntry__c();
eSignFormLineItemEntry1.Name = '::鐢靛瓙绛炬敹鍗曟槑缁嗗綍鍏�1';
- eSignFormLineItemEntry1.eSignFormEntry__c =eSignFormEntry1.Id;
+ eSignFormLineItemEntry1.eSignFormEntry__c = eSignFormEntry1.Id;
eSignFormLineItemEntry1.eSignFormLineItem__c = eSignFormLineItem.Id;
insert eSignFormLineItemEntry1;
eSignFormLineItemEntry__c eSignFormLineItemEntry2 = new eSignFormLineItemEntry__c();
eSignFormLineItemEntry2.Name = '::鐢靛瓙绛炬敹鍗曟槑缁嗗綍鍏�2';
- eSignFormLineItemEntry2.eSignFormEntry__c =eSignFormEntry2.Id;
+ eSignFormLineItemEntry2.eSignFormEntry__c = eSignFormEntry2.Id;
eSignFormLineItemEntry2.eSignFormLineItem__c = eSignFormLineItem.Id;
insert eSignFormLineItemEntry2;
- list<Attachment> attachmentList = new list<Attachment>();
- Attachment attach=new Attachment();
- attach.Name='Unit Test Attachment';
- Blob bodyBlob=Blob.valueOf('Unit Test Attachment Body');
- attach.body=bodyBlob;
- attach.parentId=eSignFormEntry2.id;
+ list<Attachment> attachmentList = new List<Attachment>();
+ Attachment attach = new Attachment();
+ attach.Name = 'Unit Test Attachment';
+ Blob bodyBlob = Blob.valueOf('Unit Test Attachment Body');
+ attach.body = bodyBlob;
+ attach.parentId = eSignFormEntry2.id;
attachmentList.add(attach);
// insert attach;
- Attachment attach1=new Attachment();
- attach1.Name='Unit Test Attachment';
- Blob bodyBlob1=Blob.valueOf('Unit Test Attachment Body');
- attach1.body=bodyBlob1;
- attach1.parentId=eSignForm.id;
-
+ Attachment attach1 = new Attachment();
+ attach1.Name = 'Unit Test Attachment';
+ Blob bodyBlob1 = Blob.valueOf('Unit Test Attachment Body');
+ attach1.body = bodyBlob1;
+ attach1.parentId = eSignForm.id;
+
attachmentList.add(attach1);
insert attachmentList;
@@ -2472,95 +2667,112 @@
Test.stopTest();
}
- //娴嬭瘯缁忛攢鍟嗘敹璐�
+ //娴嬭瘯缁忛攢鍟嗘敹璐�
static testMethod void testMethod13() {
- List<RecordType> rectCo = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '鐥呴櫌'];
+ List<RecordType> rectCo = [SELECT Id FROM RecordType WHERE IsActive = TRUE AND SobjectType = 'Account' AND Name = '鐥呴櫌'];
if (rectCo.size() == 0) {
return;
}
- List<RecordType> rectSct = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '鎴︾暐绉戝鍒嗛 鍛煎惛绉�'];
+ List<RecordType> rectSct = [
+ SELECT Id
+ FROM RecordType
+ WHERE IsActive = TRUE AND SobjectType = 'Account' AND Name = '鎴︾暐绉戝鍒嗛 鍛煎惛绉�'
+ ];
if (rectSct.size() == 0) {
return;
}
- List<RecordType> rectDpt = [select Id, Name from RecordType where IsActive = true and SobjectType = 'Account' and Name IN ('瑷虹檪绉� 娑堝寲绉�', '瑷虹檪绉� 鍛煎惛绉�') order by Name desc];
+ List<RecordType> rectDpt = [
+ SELECT Id, Name
+ FROM RecordType
+ WHERE IsActive = TRUE AND SobjectType = 'Account' AND Name IN ('瑷虹檪绉� 娑堝寲绉�', '瑷虹檪绉� 鍛煎惛绉�')
+ ORDER BY Name DESC
+ ];
if (rectDpt.size() == 0) {
return;
}
- List<RecordType> rectAs = [select Id, Name from RecordType where IsActive = true and SobjectType = 'Asset' and Name = '澶囧搧'];
+ List<RecordType> rectAs = [SELECT Id, Name FROM RecordType WHERE IsActive = TRUE AND SobjectType = 'Asset' AND Name = '澶囧搧'];
if (rectAs.size() == 0) {
return;
}
-
// insert hospital
Account company1 = new Account();
company1.RecordTypeId = rectCo[0].Id;
company1.Name = '鐥呴櫌銉嗐偣銉�1';
company1.OCM_man_province_txt__c = '姹熻タ';
- List<Account> hps = new Account[]{company1};
+ List<Account> hps = new List<Account>{ company1 };
insert hps;
-
- List<Account> dc1s = [Select Id, Name, Department_Class_Label__c, Sys_Dept_Name_Change_Chk__c from Account where Parent.Id = :company1.Id order by Department_Class_Label__c];
-
+
+ List<Account> dc1s = [
+ SELECT Id, Name, Department_Class_Label__c, Sys_Dept_Name_Change_Chk__c
+ FROM Account
+ WHERE Parent.Id = :company1.Id
+ ORDER BY Department_Class_Label__c
+ ];
+
Account depart1 = new Account();
depart1.RecordTypeId = rectDpt[0].Id;
- depart1.Name = '*';
- depart1.Department_Name__c = '瑷虹檪绉�1';
- depart1.ParentId = dc1s[0].Id;
+ depart1.Name = '*';
+ depart1.Department_Name__c = '瑷虹檪绉�1';
+ depart1.ParentId = dc1s[0].Id;
depart1.Department_Class__c = dc1s[0].Id;
- depart1.Hospital__c = company1.Id;
+ depart1.Hospital__c = company1.Id;
depart1.OCM_man_province_txt__c = '姹熻タ';
-
- insert new Account[] {depart1};
+
+ insert new List<Account>{ depart1 };
List<Product2> prdList = new List<Product2>();
Product2 prd1 = new Product2();
- prd1.ProductCode_Ext__c = 'HistoryPrd1';
- prd1.ProductCode = 'HistoryPrd1';
+ prd1.ProductCode_Ext__c = 'HistoryPrd1';
+ prd1.ProductCode = 'HistoryPrd1';
prd1.Repair_Product_Code__c = 'HistoryPrd1_RP';
- prd1.Name = 'HistoryPrd1';
- prd1.Manual_Entry__c = false;
+ prd1.Name = 'HistoryPrd1';
+ prd1.Manual_Entry__c = false;
prd1.Extend_new_product_gurantee__c = true;
prd1.Extend_Gurantee_Start__c = Date.today().addDays(-60);
prd1.Extend_Gurantee_End__c = Date.today().addDays(60);
prdList.add(prd1);
insert prdList;
-
+
Asset ast = new Asset();
ast.RecordTypeId = rectAs[0].Id;
ast.SerialNumber = 'abcdefg';
ast.Name = '娴嬭瘯璧勪骇1';
- ast.AccountId = depart1.Id;
- ast.Department_Class__c = dc1s[0].Id;
- ast.Hospital__c = company1.Id;
- ast.Product2Id = prd1.Id;
+ ast.AccountId = depart1.Id;
+ ast.Department_Class__c = dc1s[0].Id;
+ ast.Hospital__c = company1.Id;
+ ast.Product2Id = prd1.Id;
ast.Guarantee_period_for_products__c = Date.today();
- ast.InstallDate = Date.today();
+ ast.InstallDate = Date.today();
ast.Manage_type__c = '涓綋绠$悊';
ast.FirstApproveDate_old__c = Date.today().addDays(-30);
Oly_TriggerHandler.bypass('AssetHandler');
insert ast;
-
- Asset ast1 = [select RecordTypeID__c from Asset where Id =: ast.Id];
-
- String RecordTypeID = ast1.RecordTypeID__c;
-
- System.assertEquals(RecordTypeID , ast.RecordTypeId);
- RecordType rectOpp = [select id from RecordType where IsActive = true and SobjectType = 'Opportunity' and DeveloperName = 'Opportunity' ];
+ Asset ast1 = [SELECT RecordTypeID__c FROM Asset WHERE Id = :ast.Id];
+
+ String RecordTypeID = ast1.RecordTypeID__c;
+
+ System.assertEquals(RecordTypeID, ast.RecordTypeId);
+
+ RecordType rectOpp = [
+ SELECT id
+ FROM RecordType
+ WHERE IsActive = TRUE AND SobjectType = 'Opportunity' AND DeveloperName = 'Opportunity'
+ ];
Opportunity opp = new Opportunity(
- Name='testOpp1',
- StageName='寮曞悎',
- CloseDate=Date.today(),
- AccountId=depart1.Id,
- Sales_Root__c = '璨╁2搴�',
- Competitor__c ='A',
- Click_Close_Date__c = null,
- RecordType = rectOpp,
- Trade__c = '鍐呰部'
+ Name = 'testOpp1',
+ StageName = '寮曞悎',
+ CloseDate = Date.today(),
+ AccountId = depart1.Id,
+ Sales_Root__c = '璨╁2搴�',
+ Competitor__c = 'A',
+ Click_Close_Date__c = null,
+ RecordType = rectOpp,
+ Trade__c = '鍐呰部'
);
insert opp;
@@ -2581,14 +2793,12 @@
eSignForm.RC_Manager__c = UserInfo.getUserId();
// eSignForm.RC_Manager2__c = UserInfo.getUserId();
// eSignForm.RC_Manager3__c = UserInfo.getUserId();
- eSignForm.agencyRejectDate__c = Date.today().addDays(2);
- eSignForm.HPRejectDate__c = Date.today().addDays(2);
-
-
+ eSignForm.agencyRejectDate__c = Date.today().addDays(2);
+ eSignForm.HPRejectDate__c = Date.today().addDays(2);
insert eSignForm;
-/* eSignFormEntry__c eSignFormEntry1 = new eSignFormEntry__c();
+ /* eSignFormEntry__c eSignFormEntry1 = new eSignFormEntry__c();
eSignFormEntry1.Name = '::鐢靛瓙绛炬敹鍗曞綍鍏ヨ〃1';
eSignFormEntry1.eSignForm__c = eSignForm.Id;
eSignFormEntry1.entryType__c = '缁忛攢鍟嗘敹璐�';
@@ -2609,12 +2819,10 @@
// eSignFormEntry2.createdDate = Date.today().addDays(-2);
insert eSignFormEntry2;*/
-
//鏂板缓鐢靛瓙绛炬敹鍗曟槑缁�
eSignFormLineItem__c eSignFormLineItem = new eSignFormLineItem__c();
eSignFormLineItem.Name = '::鐢靛瓙绛炬敹鍗曟槑缁�';
eSignFormLineItem.eSignForm__c = eSignForm.Id;
-
insert eSignFormLineItem;
@@ -2634,126 +2842,140 @@
insert eSignFormLineItemEntry2;*/
- list<Attachment> attachmentList = new list<Attachment>();
- Attachment attach=new Attachment();
- attach.Name='Unit Test Attachment';
- Blob bodyBlob=Blob.valueOf('Unit Test Attachment Body');
- attach.body=bodyBlob;
- attach.parentId=eSignForm.id;
+ list<Attachment> attachmentList = new List<Attachment>();
+ Attachment attach = new Attachment();
+ attach.Name = 'Unit Test Attachment';
+ Blob bodyBlob = Blob.valueOf('Unit Test Attachment Body');
+ attach.body = bodyBlob;
+ attach.parentId = eSignForm.id;
attach.ContentType = 'application/pdf';
attachmentList.add(attach);
// insert attach;
- Attachment attach1=new Attachment();
- attach1.Name='Unit Test Attachment';
- Blob bodyBlob1=Blob.valueOf('Unit Test Attachment Body');
- attach1.body=bodyBlob1;
- attach1.parentId=eSignForm.id;
+ Attachment attach1 = new Attachment();
+ attach1.Name = 'Unit Test Attachment';
+ Blob bodyBlob1 = Blob.valueOf('Unit Test Attachment Body');
+ attach1.body = bodyBlob1;
+ attach1.parentId = eSignForm.id;
attach1.ContentType = 'application/pdf';
-
+
attachmentList.add(attach1);
insert attachmentList;
Test.startTest();
-
Database.executeBatch(new updateESignBatch(), 20);
Test.stopTest();
-
}
- //璺戝崟鐙柟娉�
+ //璺戝崟鐙柟娉�
@isTest
private static void test_upsertESignLineItems() {
-
- List<RecordType> rectCo = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '鐥呴櫌'];
+ List<RecordType> rectCo = [SELECT Id FROM RecordType WHERE IsActive = TRUE AND SobjectType = 'Account' AND Name = '鐥呴櫌'];
if (rectCo.size() == 0) {
return;
}
- List<RecordType> rectSct = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '鎴︾暐绉戝鍒嗛 鍛煎惛绉�'];
+ List<RecordType> rectSct = [
+ SELECT Id
+ FROM RecordType
+ WHERE IsActive = TRUE AND SobjectType = 'Account' AND Name = '鎴︾暐绉戝鍒嗛 鍛煎惛绉�'
+ ];
if (rectSct.size() == 0) {
return;
}
- List<RecordType> rectDpt = [select Id, Name from RecordType where IsActive = true and SobjectType = 'Account' and Name IN ('瑷虹檪绉� 娑堝寲绉�', '瑷虹檪绉� 鍛煎惛绉�') order by Name desc];
+ List<RecordType> rectDpt = [
+ SELECT Id, Name
+ FROM RecordType
+ WHERE IsActive = TRUE AND SobjectType = 'Account' AND Name IN ('瑷虹檪绉� 娑堝寲绉�', '瑷虹檪绉� 鍛煎惛绉�')
+ ORDER BY Name DESC
+ ];
if (rectDpt.size() == 0) {
return;
}
- List<RecordType> rectAs = [select Id, Name from RecordType where IsActive = true and SobjectType = 'Asset' and Name = '澶囧搧'];
+ List<RecordType> rectAs = [SELECT Id, Name FROM RecordType WHERE IsActive = TRUE AND SobjectType = 'Asset' AND Name = '澶囧搧'];
if (rectAs.size() == 0) {
return;
}
-
// insert hospital
Account company1 = new Account();
company1.RecordTypeId = rectCo[0].Id;
company1.Name = '鐥呴櫌銉嗐偣銉�1';
company1.OCM_man_province_txt__c = '姹熻タ';
- List<Account> hps = new Account[]{company1};
+ List<Account> hps = new List<Account>{ company1 };
insert hps;
-
- List<Account> dc1s = [Select Id, Name, Department_Class_Label__c, Sys_Dept_Name_Change_Chk__c from Account where Parent.Id = :company1.Id order by Department_Class_Label__c];
-
+
+ List<Account> dc1s = [
+ SELECT Id, Name, Department_Class_Label__c, Sys_Dept_Name_Change_Chk__c
+ FROM Account
+ WHERE Parent.Id = :company1.Id
+ ORDER BY Department_Class_Label__c
+ ];
+
Account depart1 = new Account();
depart1.RecordTypeId = rectDpt[0].Id;
- depart1.Name = '*';
- depart1.Department_Name__c = '瑷虹檪绉�1';
- depart1.ParentId = dc1s[0].Id;
+ depart1.Name = '*';
+ depart1.Department_Name__c = '瑷虹檪绉�1';
+ depart1.ParentId = dc1s[0].Id;
depart1.Department_Class__c = dc1s[0].Id;
- depart1.Hospital__c = company1.Id;
+ depart1.Hospital__c = company1.Id;
depart1.OCM_man_province_txt__c = '姹熻タ';
-
- insert new Account[] {depart1};
+
+ insert new List<Account>{ depart1 };
List<Product2> prdList = new List<Product2>();
Product2 prd1 = new Product2();
- prd1.ProductCode_Ext__c = 'HistoryPrd1';
- prd1.ProductCode = 'HistoryPrd1';
+ prd1.ProductCode_Ext__c = 'HistoryPrd1';
+ prd1.ProductCode = 'HistoryPrd1';
prd1.Repair_Product_Code__c = 'HistoryPrd1_RP';
- prd1.Name = 'HistoryPrd1';
- prd1.Manual_Entry__c = false;
+ prd1.Name = 'HistoryPrd1';
+ prd1.Manual_Entry__c = false;
prd1.Extend_new_product_gurantee__c = true;
prd1.Extend_Gurantee_Start__c = Date.today().addDays(-60);
prd1.Extend_Gurantee_End__c = Date.today().addDays(60);
prdList.add(prd1);
insert prdList;
-
+
Asset ast = new Asset();
ast.RecordTypeId = rectAs[0].Id;
ast.SerialNumber = 'abcdefg';
ast.Name = '娴嬭瘯璧勪骇1';
- ast.AccountId = depart1.Id;
- ast.Department_Class__c = dc1s[0].Id;
- ast.Hospital__c = company1.Id;
- ast.Product2Id = prd1.Id;
+ ast.AccountId = depart1.Id;
+ ast.Department_Class__c = dc1s[0].Id;
+ ast.Hospital__c = company1.Id;
+ ast.Product2Id = prd1.Id;
ast.Guarantee_period_for_products__c = Date.today();
- ast.InstallDate = Date.today();
+ ast.InstallDate = Date.today();
ast.Manage_type__c = '涓綋绠$悊';
ast.FirstApproveDate_old__c = Date.today().addDays(-30);
Oly_TriggerHandler.bypass('AssetHandler');
insert ast;
-
- Asset ast1 = [select RecordTypeID__c from Asset where Id =: ast.Id];
-
- String RecordTypeID = ast1.RecordTypeID__c;
-
- System.assertEquals(RecordTypeID , ast.RecordTypeId);
- RecordType rectOpp = [select id from RecordType where IsActive = true and SobjectType = 'Opportunity' and DeveloperName = 'Opportunity' ];
+ Asset ast1 = [SELECT RecordTypeID__c FROM Asset WHERE Id = :ast.Id];
+
+ String RecordTypeID = ast1.RecordTypeID__c;
+
+ System.assertEquals(RecordTypeID, ast.RecordTypeId);
+
+ RecordType rectOpp = [
+ SELECT id
+ FROM RecordType
+ WHERE IsActive = TRUE AND SobjectType = 'Opportunity' AND DeveloperName = 'Opportunity'
+ ];
Opportunity opp = new Opportunity(
- Name='testOpp1',
- StageName='寮曞悎',
- CloseDate=Date.today(),
- AccountId=depart1.Id,
- Sales_Root__c = '璨╁2搴�',
- Competitor__c ='A',
- Click_Close_Date__c = null,
- RecordType = rectOpp,
- Trade__c = '鍐呰部'
+ Name = 'testOpp1',
+ StageName = '寮曞悎',
+ CloseDate = Date.today(),
+ AccountId = depart1.Id,
+ Sales_Root__c = '璨╁2搴�',
+ Competitor__c = 'A',
+ Click_Close_Date__c = null,
+ RecordType = rectOpp,
+ Trade__c = '鍐呰部'
);
insert opp;
@@ -2767,16 +2989,12 @@
);
insert Sac;
-
//鏂板缓鐢靛瓙绛炬敹鍗�
eSignForm__c eSignForm = new eSignForm__c();
eSignForm.Statu_Achievements__c = Sac.Id;
eSignForm.Name = '::娴嬭瘯鐢靛瓙绛炬敹鍗�';
-
insert eSignForm;
-
-
//鏂板缓鐢靛瓙绛炬敹鍗曟槑缁�
eSignFormLineItem__c eSignFormLineItem = new eSignFormLineItem__c();
@@ -2784,8 +3002,6 @@
eSignFormLineItem.eSignForm__c = eSignForm.Id;
insert eSignFormLineItem;
-
-
/*list<Attachment> attachmentList = new list<Attachment>();
Attachment attach=new Attachment();
@@ -2893,7 +3109,6 @@
// }
-
OCM_Management_Province__c mp1 = new OCM_Management_Province__c();
mp1.Name = '姹熻タ';
mp1.GI_assistant__c = UserInfo.getUserId();
@@ -2903,109 +3118,125 @@
insert mp1;
- List <String> provinceList = new List<String>{'姹熻タ'};
- Map < Id, String > provinceMap = new Map < Id, String >();
+ List<String> provinceList = new List<String>{ '姹熻タ' };
+ Map<Id, String> provinceMap = new Map<Id, String>();
Id i = eSignForm.id;
// provinceMap.put(i,'鍖椾含甯�');
// provinceMap.put(i,'灞辫タ鐪�');
- provinceMap.put(i,'姹熻タ');
+ provinceMap.put(i, '姹熻タ');
- List < eSignForm__c > eSignFormList = new List < eSignForm__c >();
+ List<eSignForm__c> eSignFormList = new List<eSignForm__c>();
eSignFormList.add(eSignForm);
- updateESignBatch.updateOwner(provinceList,provinceMap,eSignFormList,true);
-
+ updateESignBatch.updateOwner(provinceList, provinceMap, eSignFormList, true);
}
- //娴嬭瘯缁忛攢鍟嗘敹璐�
+ //娴嬭瘯缁忛攢鍟嗘敹璐�
static testMethod void testMethod14() {
- List<RecordType> rectCo = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '鐥呴櫌'];
+ List<RecordType> rectCo = [SELECT Id FROM RecordType WHERE IsActive = TRUE AND SobjectType = 'Account' AND Name = '鐥呴櫌'];
if (rectCo.size() == 0) {
return;
}
- List<RecordType> rectSct = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '鎴︾暐绉戝鍒嗛 鍛煎惛绉�'];
+ List<RecordType> rectSct = [
+ SELECT Id
+ FROM RecordType
+ WHERE IsActive = TRUE AND SobjectType = 'Account' AND Name = '鎴︾暐绉戝鍒嗛 鍛煎惛绉�'
+ ];
if (rectSct.size() == 0) {
return;
}
- List<RecordType> rectDpt = [select Id, Name from RecordType where IsActive = true and SobjectType = 'Account' and Name IN ('瑷虹檪绉� 娑堝寲绉�', '瑷虹檪绉� 鍛煎惛绉�') order by Name desc];
+ List<RecordType> rectDpt = [
+ SELECT Id, Name
+ FROM RecordType
+ WHERE IsActive = TRUE AND SobjectType = 'Account' AND Name IN ('瑷虹檪绉� 娑堝寲绉�', '瑷虹檪绉� 鍛煎惛绉�')
+ ORDER BY Name DESC
+ ];
if (rectDpt.size() == 0) {
return;
}
- List<RecordType> rectAs = [select Id, Name from RecordType where IsActive = true and SobjectType = 'Asset' and Name = '澶囧搧'];
+ List<RecordType> rectAs = [SELECT Id, Name FROM RecordType WHERE IsActive = TRUE AND SobjectType = 'Asset' AND Name = '澶囧搧'];
if (rectAs.size() == 0) {
return;
}
-
// insert hospital
Account company1 = new Account();
company1.RecordTypeId = rectCo[0].Id;
company1.Name = '鐥呴櫌銉嗐偣銉�1';
company1.OCM_man_province_txt__c = '姹熻タ';
- List<Account> hps = new Account[]{company1};
+ List<Account> hps = new List<Account>{ company1 };
insert hps;
-
- List<Account> dc1s = [Select Id, Name, Department_Class_Label__c, Sys_Dept_Name_Change_Chk__c from Account where Parent.Id = :company1.Id order by Department_Class_Label__c];
-
+
+ List<Account> dc1s = [
+ SELECT Id, Name, Department_Class_Label__c, Sys_Dept_Name_Change_Chk__c
+ FROM Account
+ WHERE Parent.Id = :company1.Id
+ ORDER BY Department_Class_Label__c
+ ];
+
Account depart1 = new Account();
depart1.RecordTypeId = rectDpt[0].Id;
- depart1.Name = '*';
- depart1.Department_Name__c = '瑷虹檪绉�1';
- depart1.ParentId = dc1s[0].Id;
+ depart1.Name = '*';
+ depart1.Department_Name__c = '瑷虹檪绉�1';
+ depart1.ParentId = dc1s[0].Id;
depart1.Department_Class__c = dc1s[0].Id;
- depart1.Hospital__c = company1.Id;
+ depart1.Hospital__c = company1.Id;
depart1.OCM_man_province_txt__c = '姹熻タ';
-
- insert new Account[] {depart1};
+
+ insert new List<Account>{ depart1 };
List<Product2> prdList = new List<Product2>();
Product2 prd1 = new Product2();
- prd1.ProductCode_Ext__c = 'HistoryPrd1';
- prd1.ProductCode = 'HistoryPrd1';
+ prd1.ProductCode_Ext__c = 'HistoryPrd1';
+ prd1.ProductCode = 'HistoryPrd1';
prd1.Repair_Product_Code__c = 'HistoryPrd1_RP';
- prd1.Name = 'HistoryPrd1';
- prd1.Manual_Entry__c = false;
+ prd1.Name = 'HistoryPrd1';
+ prd1.Manual_Entry__c = false;
prd1.Extend_new_product_gurantee__c = true;
prd1.Extend_Gurantee_Start__c = Date.today().addDays(-60);
prd1.Extend_Gurantee_End__c = Date.today().addDays(60);
prdList.add(prd1);
insert prdList;
-
+
Asset ast = new Asset();
ast.RecordTypeId = rectAs[0].Id;
ast.SerialNumber = 'abcdefg';
ast.Name = '娴嬭瘯璧勪骇1';
- ast.AccountId = depart1.Id;
- ast.Department_Class__c = dc1s[0].Id;
- ast.Hospital__c = company1.Id;
- ast.Product2Id = prd1.Id;
+ ast.AccountId = depart1.Id;
+ ast.Department_Class__c = dc1s[0].Id;
+ ast.Hospital__c = company1.Id;
+ ast.Product2Id = prd1.Id;
ast.Guarantee_period_for_products__c = Date.today();
- ast.InstallDate = Date.today();
+ ast.InstallDate = Date.today();
ast.Manage_type__c = '涓綋绠$悊';
ast.FirstApproveDate_old__c = Date.today().addDays(-30);
Oly_TriggerHandler.bypass('AssetHandler');
insert ast;
-
- Asset ast1 = [select RecordTypeID__c from Asset where Id =: ast.Id];
-
- String RecordTypeID = ast1.RecordTypeID__c;
-
- System.assertEquals(RecordTypeID , ast.RecordTypeId);
- RecordType rectOpp = [select id from RecordType where IsActive = true and SobjectType = 'Opportunity' and DeveloperName = 'Opportunity' ];
+ Asset ast1 = [SELECT RecordTypeID__c FROM Asset WHERE Id = :ast.Id];
+
+ String RecordTypeID = ast1.RecordTypeID__c;
+
+ System.assertEquals(RecordTypeID, ast.RecordTypeId);
+
+ RecordType rectOpp = [
+ SELECT id
+ FROM RecordType
+ WHERE IsActive = TRUE AND SobjectType = 'Opportunity' AND DeveloperName = 'Opportunity'
+ ];
Opportunity opp = new Opportunity(
- Name='testOpp1',
- StageName='寮曞悎',
- CloseDate=Date.today(),
- AccountId=depart1.Id,
- Sales_Root__c = '璨╁2搴�',
- Competitor__c ='A',
- Click_Close_Date__c = null,
- RecordType = rectOpp,
- Trade__c = '鍐呰部'
+ Name = 'testOpp1',
+ StageName = '寮曞悎',
+ CloseDate = Date.today(),
+ AccountId = depart1.Id,
+ Sales_Root__c = '璨╁2搴�',
+ Competitor__c = 'A',
+ Click_Close_Date__c = null,
+ RecordType = rectOpp,
+ Trade__c = '鍐呰部'
);
insert opp;
@@ -3023,9 +3254,8 @@
eSignForm__c eSignForm = new eSignForm__c();
eSignForm.Statu_Achievements__c = Sac.Id;
eSignForm.Name = '::娴嬭瘯鐢靛瓙绛炬敹鍗�';
- eSignForm.agencyRejectDate__c = Date.today().addDays(2);
- eSignForm.HPRejectDate__c = Date.today().addDays(2);
-
+ eSignForm.agencyRejectDate__c = Date.today().addDays(2);
+ eSignForm.HPRejectDate__c = Date.today().addDays(2);
insert eSignForm;
@@ -3034,7 +3264,6 @@
eSignFormEntry1.eSignForm__c = eSignForm.Id;
eSignFormEntry1.entryType__c = '缁忛攢鍟嗘敹璐�';
-
insert eSignFormEntry1;
eSignFormEntry__c eSignFormEntry2 = new eSignFormEntry__c();
@@ -3043,14 +3272,13 @@
eSignFormEntry2.entryType__c = '缁忛攢鍟嗘敹璐�';
eSignFormEntry2.IsSubmit__c = true;
eSignFormEntry2.agencyScanDayBack__c = Date.today().addDays(-2);
- eSignFormEntry2.agencySignUpDateBack__c =Date.today().addDays(-2);
- eSignFormEntry2.agencyConfirmDateBack__c =Date.today().addDays(-2);
- eSignFormEntry2.HPScanDayBack__c =Date.today().addDays(-2);
- eSignFormEntry2.HPSignUpDateBack__c =Date.today().addDays(-2);
+ eSignFormEntry2.agencySignUpDateBack__c = Date.today().addDays(-2);
+ eSignFormEntry2.agencyConfirmDateBack__c = Date.today().addDays(-2);
+ eSignFormEntry2.HPScanDayBack__c = Date.today().addDays(-2);
+ eSignFormEntry2.HPSignUpDateBack__c = Date.today().addDays(-2);
eSignFormEntry2.HPConfirmDateBack__c = Date.today().addDays(-2);
// eSignFormEntry2.createdDate = Date.today().addDays(-2);
insert eSignFormEntry2;
-
//鏂板缓鐢靛瓙绛炬敹鍗曟槑缁�
eSignFormLineItem__c eSignFormLineItem = new eSignFormLineItem__c();
@@ -3063,61 +3291,52 @@
eSignFormLineItemEntry__c eSignFormLineItemEntry1 = new eSignFormLineItemEntry__c();
eSignFormLineItemEntry1.Name = '::鐢靛瓙绛炬敹鍗曟槑缁嗗綍鍏�1';
- eSignFormLineItemEntry1.eSignFormEntry__c =eSignFormEntry1.Id;
+ eSignFormLineItemEntry1.eSignFormEntry__c = eSignFormEntry1.Id;
eSignFormLineItemEntry1.eSignFormLineItem__c = eSignFormLineItem.Id;
insert eSignFormLineItemEntry1;
eSignFormLineItemEntry__c eSignFormLineItemEntry2 = new eSignFormLineItemEntry__c();
eSignFormLineItemEntry2.Name = '::鐢靛瓙绛炬敹鍗曟槑缁嗗綍鍏�2';
- eSignFormLineItemEntry2.eSignFormEntry__c =eSignFormEntry2.Id;
+ eSignFormLineItemEntry2.eSignFormEntry__c = eSignFormEntry2.Id;
eSignFormLineItemEntry2.eSignFormLineItem__c = eSignFormLineItem.Id;
insert eSignFormLineItemEntry2;
- list<Attachment> attachmentList = new list<Attachment>();
- Attachment attach=new Attachment();
- attach.Name='Unit Test Attachment';
- Blob bodyBlob=Blob.valueOf('Unit Test Attachment Body');
- attach.body=bodyBlob;
- attach.parentId=eSignFormEntry2.id;
+ list<Attachment> attachmentList = new List<Attachment>();
+ Attachment attach = new Attachment();
+ attach.Name = 'Unit Test Attachment';
+ Blob bodyBlob = Blob.valueOf('Unit Test Attachment Body');
+ attach.body = bodyBlob;
+ attach.parentId = eSignFormEntry2.id;
attach.ContentType = 'application/pdf';
attachmentList.add(attach);
// insert attach;
- Attachment attach1=new Attachment();
- attach1.Name='H-65224941-20200923--10.jpg';
- Blob bodyBlob1=Blob.valueOf('Unit Test Attachment Body');
- attach1.body=bodyBlob1;
- attach1.parentId=eSignForm.id;
+ Attachment attach1 = new Attachment();
+ attach1.Name = 'H-65224941-20200923--10.jpg';
+ Blob bodyBlob1 = Blob.valueOf('Unit Test Attachment Body');
+ attach1.body = bodyBlob1;
+ attach1.parentId = eSignForm.id;
attach1.ContentType = 'application/pdf';
-
-
+
attachmentList.add(attach1);
- Attachment attach2=new Attachment();
- attach2.Name='A-65224945-20200928--8.jpg';
- Blob bodyBlob2=Blob.valueOf('Unit Test Attachment Body');
- attach2.body=bodyBlob2;
- attach2.parentId=eSignForm.id;
+ Attachment attach2 = new Attachment();
+ attach2.Name = 'A-65224945-20200928--8.jpg';
+ Blob bodyBlob2 = Blob.valueOf('Unit Test Attachment Body');
+ attach2.body = bodyBlob2;
+ attach2.parentId = eSignForm.id;
attach2.ContentType = 'application/pdf';
-
-
+
attachmentList.add(attach2);
insert attachmentList;
Test.startTest();
-
Database.executeBatch(new updateESignBatch(), 20);
Test.stopTest();
}
-
- static testMethod void testMethod15(){
- Test.startTest();
- updateESignBatch.improveTestRate();
- Test.stopTest();
- }
-}
\ No newline at end of file
+}
diff --git a/force-app/main/default/lwc/afterRenderHook/afterRenderHook.html b/force-app/main/default/lwc/afterRenderHook/afterRenderHook.html
new file mode 100644
index 0000000..0d0f31c
--- /dev/null
+++ b/force-app/main/default/lwc/afterRenderHook/afterRenderHook.html
@@ -0,0 +1,5 @@
+<template>
+ <template for:each={courses} for:item="course">
+ <p key={course}>{course}</p>
+ </template>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/afterRenderHook/afterRenderHook.js b/force-app/main/default/lwc/afterRenderHook/afterRenderHook.js
new file mode 100644
index 0000000..d739ec8
--- /dev/null
+++ b/force-app/main/default/lwc/afterRenderHook/afterRenderHook.js
@@ -0,0 +1,13 @@
+import { LightningElement } from 'lwc';
+
+export default class AfterRenderHook extends LightningElement {
+ courses = [];
+ rendered = false;
+
+ renderedCallback() {
+ if (!this.rendered) {
+ this.courses = ['Irrigation Systems', 'Soils', 'Organic Crops'];
+ this.rendered = true;
+ }
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/afterRenderHook/afterRenderHook.js-meta.xml b/force-app/main/default/lwc/afterRenderHook/afterRenderHook.js-meta.xml
new file mode 100644
index 0000000..97b23f5
--- /dev/null
+++ b/force-app/main/default/lwc/afterRenderHook/afterRenderHook.js-meta.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>52.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordAction</target>
+ </targets>
+ <targetConfigs>
+ <targetConfig targets="lightning__RecordAction">
+ <actionType>Action</actionType>
+ </targetConfig>
+ </targetConfigs>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/afterRenderHookWrapper/afterRenderHookWrapper.html b/force-app/main/default/lwc/afterRenderHookWrapper/afterRenderHookWrapper.html
new file mode 100644
index 0000000..934adea
--- /dev/null
+++ b/force-app/main/default/lwc/afterRenderHookWrapper/afterRenderHookWrapper.html
@@ -0,0 +1,17 @@
+<template>
+ <c-example-wrapper
+ icon-name="custom:custom7"
+ lwc="afterRenderHook"
+ title="After Render Hook"
+ visualforce="afterRenderHook"
+ visualforce-height="90px"
+ >
+ <c-after-render-hook slot="lwc"></c-after-render-hook>
+
+ <!-- prettier-ignore -->
+ <p>
+ Use <a target="_blank" href="https://developer.salesforce.com/docs/component-library/documentation/en/lwc/lwc.create_lifecycle_hooks_rendered">
+ renderedCallback</a> to execute code after a component is rendered.
+ </p>
+ </c-example-wrapper>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/afterRenderHookWrapper/afterRenderHookWrapper.js b/force-app/main/default/lwc/afterRenderHookWrapper/afterRenderHookWrapper.js
new file mode 100644
index 0000000..8f3b8a6
--- /dev/null
+++ b/force-app/main/default/lwc/afterRenderHookWrapper/afterRenderHookWrapper.js
@@ -0,0 +1,3 @@
+import { LightningElement } from 'lwc';
+
+export default class AfterRenderHookWrapper extends LightningElement {}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/afterRenderHookWrapper/afterRenderHookWrapper.js-meta.xml b/force-app/main/default/lwc/afterRenderHookWrapper/afterRenderHookWrapper.js-meta.xml
new file mode 100644
index 0000000..6646900
--- /dev/null
+++ b/force-app/main/default/lwc/afterRenderHookWrapper/afterRenderHookWrapper.js-meta.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__AppPage</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/apexUtils/apexUtils.js b/force-app/main/default/lwc/apexUtils/apexUtils.js
new file mode 100644
index 0000000..455c8df
--- /dev/null
+++ b/force-app/main/default/lwc/apexUtils/apexUtils.js
@@ -0,0 +1,31 @@
+/**
+ * Formats a list of sObjects returned by an Apex method call
+ * @param {SObject[]} sObjects
+ * @return {Object[]} formattedObjects, ready to use by lightning-datatable
+ */
+export function formatApexSObjects(sObjects) {
+ try {
+ return sObjects.map(formatApexSObject);
+ } catch (err) {
+ return [];
+ }
+}
+
+function formatApexSObject(sObject) {
+ return flatten(sObject, '');
+}
+
+function flatten(source, prefix) {
+ const target = {};
+ Object.keys(source).forEach((key) => {
+ const value = source[key];
+ const field = `${prefix}${key}`;
+ if (typeof value === 'object') {
+ const nested = flatten(value, `${field}.`);
+ Object.assign(target, nested);
+ } else {
+ target[field] = value;
+ }
+ });
+ return target;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/apexUtils/apexUtils.js-meta.xml b/force-app/main/default/lwc/apexUtils/apexUtils.js-meta.xml
new file mode 100644
index 0000000..b9a3113
--- /dev/null
+++ b/force-app/main/default/lwc/apexUtils/apexUtils.js-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>false</isExposed>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/batchSelectRepairLWC/batchSelectRepairLWC.css b/force-app/main/default/lwc/batchSelectRepairLWC/batchSelectRepairLWC.css
new file mode 100644
index 0000000..fa4ac70
--- /dev/null
+++ b/force-app/main/default/lwc/batchSelectRepairLWC/batchSelectRepairLWC.css
@@ -0,0 +1,9 @@
+.Narrow{
+ padding: 20px;
+}
+.searchField,.searchField .input-text{
+ /*display: flex;*/
+}
+.searchField .slds-combobox_container{
+ width: 160px !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/batchSelectRepairLWC/batchSelectRepairLWC.html b/force-app/main/default/lwc/batchSelectRepairLWC/batchSelectRepairLWC.html
new file mode 100644
index 0000000..07ec8af
--- /dev/null
+++ b/force-app/main/default/lwc/batchSelectRepairLWC/batchSelectRepairLWC.html
@@ -0,0 +1,107 @@
+<template>
+ <!-- <div class="slds-box slds-theme--default">
+ Click on the link Below to Export data as csv/xls.
+ <p class="slds-m-top--large">
+ <a onclick={exportContactData}>Export Contact Data</a>
+ <lightning-button variant="brand" label="Export Contact data" title="Export Contact Data" onclick={exportContactData}></lightning-button>
+ </p>
+ </div> -->
+ <lightning-card variant="Narrow">
+ <div style="padding: 0 20px">
+ <div>
+ <div style="padding: 10px 3px;border-bottom: 1px solid;font: 16px;font-size: blod;">妫�绱㈠垪</div>
+ <div style="margin-top: 5px">
+ <lightning-layout>
+ <!-- cancelPaddingLeft -->
+ <lightning-layout-item flexibility="auto" padding="around-small">
+ <lightning-combobox name="progress" label="鐘舵��1" value={searchObj.Status1} options={status1Options}
+ onchange={handleStatus1Change} class="searchField"></lightning-combobox>
+ </lightning-layout-item>
+ <lightning-layout-item flexibility="auto" padding="around-small">
+ <lightning-combobox
+ name="progress" label="鐘舵��2" value={searchObj.Status2} options={status2Options} onchange={handleStatus2Change}
+ class="searchField"></lightning-combobox>
+ </lightning-layout-item>
+ <lightning-layout-item flexibility="auto" padding="around-small">
+ <lightning-combobox
+ name="progress" label="鏈嶅姟鏂瑰紡" value={searchObj.onSiteRepair} options={siteRepairItems} onchange={handleSiteChange}
+ class="searchField"></lightning-combobox>
+ </lightning-layout-item>
+ </lightning-layout>
+ <lightning-layout>
+ <lightning-layout-item size="4" padding="horizontal-small">
+ <lightning-input value={searchObj.RepairName} type="text" label="RS淇悊鍗曞彿" class="searchField" onchange={handleRepairNameChange}></lightning-input>
+ </lightning-layout-item>
+ <lightning-layout-item size="4" padding="horizontal-small">
+ <lightning-input value={searchObj.SAPRepairNo} type="text" label="SAP淇悊鍗曞彿" class="searchField" onchange={handleSAPRepairNoChange}></lightning-input>
+ </lightning-layout-item>
+ <lightning-layout-item size="4" padding="horizontal-small">
+ <lightning-input value={searchObj.workLocationSelect} type="text" label="缁翠慨涓績" class="searchField" onchange={handleWorkLocationChange}></lightning-input>
+ </lightning-layout-item>
+ </lightning-layout>
+ <lightning-layout>
+ <lightning-layout-item size="4" padding="horizontal-small">
+ <lightning-input value={searchObj.SerialNumber} type="text" label="鏈鸿韩缂栫爜" class="searchField" onchange={handleSerialNumberChange}></lightning-input>
+ </lightning-layout-item>
+ <lightning-layout-item size="4" padding="horizontal-small">
+ <lightning-input value={searchObj.State_Hospital} type="text" label="鐪佷唤" class="searchField" onchange={handleStateHospitalChange}></lightning-input>
+ </lightning-layout-item>
+ <lightning-layout-item size="4" padding="horizontal-small">
+ <lightning-input value={searchObj.HospitalName} type="text" label="鍖婚櫌鍚嶇О" class="searchField" onchange={handleHospitalChange}></lightning-input>
+ </lightning-layout-item>
+ </lightning-layout>
+ <lightning-layout>
+ <lightning-layout-item size="2" padding="horizontal-small">
+ <lightning-input type="date" label="FSE鐢宠鏃�(寮�濮�)" value={repair.Aware_date__c} onchange={handleAwareDateDStart}></lightning-input>
+ </lightning-layout-item>
+ <!-- cancelPaddingLeft -->
+ <lightning-layout-item size="2" padding="horizontal-small">
+ <!-- variant="label-hidden" -->
+ <lightning-input type="date" label="FSE鐢宠鏃�(缁撴潫)" value={repair.Aware_date2__c} onchange={handleAwareDateDEnd}></lightning-input>
+ </lightning-layout-item>
+ <lightning-layout-item size="4" padding="horizontal-small">
+ <!-- record-id={recordId} 淇悊濮旀墭鑰� Incharge_Staff__c-->
+ <!-- <lightning-record-edit-form
+ object-api-name={objectApiName}
+ record-id=''
+ >
+ <lightning-input-field field-name={nameField} onclick={handleInchargeStaffChange}> </lightning-input-field>
+ </lightning-record-edit-form> -->
+ <lightning-record-edit-form
+ object-api-name='Repair__c'
+ record-id=''
+ >
+ <lightning-input-field field-name='Incharge_Staff__c' onclick={handleInchargeStaffChange}> </lightning-input-field>
+ </lightning-record-edit-form>
+ </lightning-layout-item>
+ </lightning-layout>
+ <lightning-layout>
+ <lightning-layout-item flexibility="auto" padding="around-small">
+ <lightning-button label="妫�绱�" onclick={searchRepair}></lightning-button>
+ </lightning-layout-item>
+ </lightning-layout>
+ </div>
+ </div>
+ <div>
+ <div style="padding: 10px 5px;border-bottom: 1px solid">璇︾粏淇℃伅</div>
+ <div style="padding: 10px 0;">
+ <lightning-button label="鎵撳嵃PDF" onclick={skipPage}></lightning-button>
+
+ <lightning-button label="瀵煎嚭Excel" onclick={exportContactData}></lightning-button>
+ <!-- <lightning-button label="瀵煎嚭Excel" onclick={downloadCSVFile}></lightning-button> -->
+ </div>
+ <div>
+ <lightning-datatable
+ key-field="id"
+ data={data}
+ columns={columns}
+ onrowselection={getSelectedRows}
+ onrowaction={handleRowAction}>
+
+ </lightning-datatable>
+ </div>
+ </div>
+ </div>
+ </lightning-card>
+
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/batchSelectRepairLWC/batchSelectRepairLWC.js b/force-app/main/default/lwc/batchSelectRepairLWC/batchSelectRepairLWC.js
new file mode 100644
index 0000000..87ac1b5
--- /dev/null
+++ b/force-app/main/default/lwc/batchSelectRepairLWC/batchSelectRepairLWC.js
@@ -0,0 +1,576 @@
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { NavigationMixin } from 'lightning/navigation';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+
+import NAME_FIELD from '@salesforce/schema/Repair__c.Incharge_Staff__c';
+import MY_CUSTOM_OBJECT from '@salesforce/schema/Repair__c';
+
+import search from '@salesforce/apex/BatchSelectRepairLWCController.search';
+import showPDF from '@salesforce/apex/BatchSelectRepairLWCController.showPDF';
+
+/*
+const actions = [
+ { label: 'Show details', name: 'show_details' },
+ { label: 'Delete', name: 'delete' },
+ ];*/
+
+const columns = [
+ { label: '鐘舵��1', fieldName: 'Status1__c'},
+ { label: '鐘舵��2', fieldName: 'Status2__c' },
+ { label: 'RS淇悊鍗曞彿', fieldName: 'Name' },
+ { label: 'SAP淇悊鍗曞彿', fieldName: 'SAP_Service_Repair_No__c' },
+ // { label: '鍨嬪彿', fieldName: 'deliveredProductName' },
+ { label: '鍨嬪彿', fieldName: 'deliveredProductUrl',type:'url',
+ typeAttributes:{
+ label:{
+ fieldName:'deliveredProductName'
+ },
+ target:'_balank'
+ }
+ },
+ { label: '鏈鸿韩缂栧彿', fieldName: 'SerialNumber__c' },
+ { label: '鍖婚櫌鍚嶇О', fieldName: 'HP_Name__c' },
+ { label: '鐪佷唤', fieldName: 'State_Hospital__c' },
+ // { label: '淇悊濮旀墭鑰�', fieldName: 'Incharge_Staff_Name' },
+ { label: '淇悊濮旀墭鑰�', fieldName: 'inchargeStaffUrl',type:'url',
+ typeAttributes:{
+ label:{
+ fieldName:'inchargeStaffName'
+ },
+ target:'_balank'
+ }
+ },
+ { label: 'FSE鐢宠鏃ユ湡', fieldName: 'FSE_ApplyForRepair_Day__c' },
+ { label: '缁翠慨涓績', fieldName: 'work_location_select__c' },
+ { label: '鏈嶅姟鏂瑰紡', fieldName: 'On_site_repair__c' },
+ { label: '鏈夋棤缁翠慨鍚堝悓瀵硅薄', fieldName: 'Number_of_EffectiveContract__c' },
+ { label: '鏃犲伩鍖哄埆鏍囧織', fieldName: 'NewProductGuaranteeObject__c' }
+ /* {
+ type: 'action',
+ typeAttributes: { rowActions: actions },
+ },*/
+ ];
+
+export default class batchSelectRepairLWC extends LightningElement {
+ // Expose a field to make it available in the template
+ nameField = NAME_FIELD;
+
+ // Flexipage provides recordId and objectApiName
+ @api recordId;
+ @api objectApiName;
+
+ data = [];
+ columns = columns;
+
+ //鐘舵��1
+ status1Options = [{ label: '--鏃�--', value: '' },
+ { label: '0.鐢宠瀹屾瘯', value: '0.鐢宠瀹屾瘯' },
+ { label: '2.缁翠慨鎶ヤ环闃舵', value: '2.缁翠慨鎶ヤ环闃舵' },
+ { label: '3.缁翠慨闃舵', value: '3.缁翠慨闃舵' },
+ { label: '4.淇悊鍝佽繑閫侀樁娈�', value: '4.淇悊鍝佽繑閫侀樁娈�' },
+ { label: '5.瀹屾瘯', value: '5.瀹屾瘯' },
+ { label: '0.鍒犻櫎', value: '0.鍒犻櫎' },
+ { label: '0.鍙栨秷', value: '0.鍙栨秷' }];
+ //鐘舵��2
+ status2Options = [{label:'00.鐢宠瀹屾瘯', value:'00.鐢宠瀹屾瘯'},
+ {label:'01.鍒嗗叕鍙稿彈鐞嗗畬姣�', value:'01.鍒嗗叕鍙稿彈鐞嗗畬姣�'},
+ {label:'02.RC鍙楃悊瀹屾瘯', value:'02.RC鍙楃悊瀹屾瘯'},
+ {label:'03.鎶ヤ环妫�鏌ョ粨鏉�', value:'03.鎶ヤ环妫�鏌ョ粨鏉�'},
+ {label:'04.鎶ヤ环璺熻繘涓�', value:'04.鎶ヤ环璺熻繘涓�'},
+ {label:'05.鎶ヤ环鍚屾剰瀹屽', value:'05.鎶ヤ环鍚屾剰瀹屽'},
+ {label:'06.闆朵欢榻愬', value:'06.闆朵欢榻愬'},
+ {label:'07.淇悊闁嬪', value:'07.淇悊闁嬪'},
+ {label:'08.淇悊棰勮瀹屾垚', value:'08.淇悊棰勮瀹屾垚'},
+ {label:'09.淇悊瀹屾垚', value:'09.淇悊瀹屾垚'},
+ {label:'10.鏈�缁堟鏌ュ畬鎴�', value:'10.鏈�缁堟鏌ュ畬鎴�'},
+ {label:'11.RC淇悊鍝佸凡杩旈��', value:'11.RC淇悊鍝佸凡杩旈��'},
+ {label:'12.鍙戠エ宸插彂閫�', value:'12.鍙戠エ宸插彂閫�'},
+ {label:'13.宸茶繑閫佸埌鐢ㄦ埛', value:'13.宸茶繑閫佸埌鐢ㄦ埛'},
+ {label:'14.鏀跺埌楠屾敹鍗�', value:'14.鏀跺埌楠屾敹鍗�'},
+ {label:'15.楠屾敹鍗曠鏀跺鏍搁�氳繃', value:'15.楠屾敹鍗曠鏀跺鏍搁�氳繃'},
+ {label:'16.閮ㄥ垎浠樻', value:'16.閮ㄥ垎浠樻'},
+ {label:'16.瀹屾瘯', value:'16.瀹屾瘯'},
+ {label:'17.浠樻瀹屾瘯', value:'17.浠樻瀹屾瘯'},
+ {label:'00.鍙栨秷', value:'00.鍙栨秷'},
+ {label:'00.鍒犻櫎', value:'00.鍒犻櫎'},
+ {label:'00.鍏抽棴', value:'00.鍏抽棴'}];
+ //鏈嶅姟鏂瑰紡
+ siteRepairItems = [{label:'--鏃�--',value:''},
+ {label:'RC淇悊',value:'RC淇悊'},
+ {label:'鐩撮�丼ORC淇悊',value:'鐩撮�丼ORC淇悊'},
+ {label:'鐩撮�丱GZ淇悊',value:'鐩撮�丱GZ淇悊'},
+ {label:'鍔炰簨澶勪慨鐞�',value:'鍔炰簨澶勪慨鐞�'},
+ {label:'鐜板満淇悊',value:'鐜板満淇悊'}];
+
+ searchObj = {};
+ repair = {};
+ selectedRepairs;
+
+ /* @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }*/
+
+ connectedCallback(){
+ // console.log(this.recordId);
+ }
+ //鐘舵��1
+ handleStatus1Change(event){
+ /*console.log(event);
+ console.log(event.detail);*/
+ this.searchObj.Status1 = event.detail.value;
+ // console.log(JSON.stringify(this.searchObj));
+ }
+ //鐘舵��2
+ handleStatus2Change(event){
+ this.searchObj.Status2 = event.detail.value;
+ // console.log(this.searchObj);
+ }
+ //鏈嶅姟鏂瑰紡
+ handleSiteChange(event){
+ this.searchObj.onSiteRepair = event.detail.value;
+ // console.log(this.searchObj);
+ }
+ //RS淇悊鍗曞彿 RepairName
+ handleRepairNameChange(event){
+ this.searchObj.RepairName = event.detail.value;
+ // console.log(this.searchObj);
+ }
+ //SAP淇悊鍗曞彿 SAPRepairNo
+ handleSAPRepairNoChange(event){
+ this.searchObj.SAPRepairNo = event.detail.value;
+ // console.log(this.searchObj);
+ }
+ //缁翠慨涓績 workLocationSelect
+ handleWorkLocationChange(event){
+ this.searchObj.workLocationSelect = event.detail.value;
+ }
+ //鏈鸿韩缂栫爜 SerialNumber
+ handleSerialNumberChange(event){
+ this.searchObj.SerialNumber = event.detail.value;
+ }
+ // 鐪佷唤 State_Hospital
+ handleStateHospitalChange(event){
+ this.searchObj.State_Hospital = event.detail.value;
+ }
+ //鍖婚櫌鍚嶇О HospitalName
+ handleHospitalChange(event){
+ this.searchObj.HospitalName = event.detail.value;
+ }
+ //FSE鐢宠鏃� repair.Aware_date__c
+ handleAwareDateDStart(event){
+ this.repair.Aware_date__c = event.detail.value;
+ console.log(this.repair.Aware_date__c);
+ }
+ // repair.Aware_date2__c
+ handleAwareDateDEnd(event){
+ this.repair.Aware_date2__c = event.detail.value;
+ // console.log(this.repair.Aware_date2__c);
+ }
+ // 淇悊濮旀墭鑰� repair.Incharge_Staff__c
+ handleInchargeStaffChange(event){
+ this.repair.Incharge_Staff__c = event.detail.value;
+ // console.log(this.repair.Aware_date2__c);
+ }
+
+ //妫�绱�
+ searchRepair(event) {
+ console.log(this.repair.Aware_date__c);
+ if (JSON.stringify(this.repair) != "{}") {
+ console.log('this.repair');
+ this.searchObj.repair = this.repair;
+ // fse 鏃堕棿鏉′欢
+ /*if (!(this.repair.Aware_date__c != null && this.repair.Aware_date2__c != null) || this.repair.Aware_date__c > this.repair.Aware_date2__c) {
+ const event = new ShowToastEvent({
+ title: 'error',
+ message: 'FSE鐢宠鏃ヨ緭鍏ユ湁璇�',
+ variant:'error',
+ });
+ this.dispatchEvent(event);
+ return;
+ }*/
+ }
+ let jsonStr = JSON.stringify(this.searchObj);
+ if (jsonStr === "{}") {
+ const event = new ShowToastEvent({
+ title: 'error',
+ message: '璇疯嚦灏戞坊鍔犱竴涓绱㈡潯浠�!',
+ variant:'error',
+ });
+ this.dispatchEvent(event);
+ }else{
+ console.log(jsonStr);
+ search({
+ json: jsonStr
+ }).then(result => {
+ console.log(result.repairData);
+ console.log('length:'+result.repairData.length);
+ if (result.repairData.length == 0 || result.repairData.length == 200) {
+ const event = new ShowToastEvent({
+ title: 'warning',
+ message: result.status,
+ variant:'warning',
+ });
+ this.dispatchEvent(event);
+ }
+ let returnArr = [];
+ result.repairData.forEach(function(v){
+ let objRepair = v.repair;
+ //娣诲姞淇悊濮旀墭鑰呭拰鍨嬪彿鍚嶇О
+ objRepair.deliveredProductName = objRepair.Delivered_Product__r.Name;
+ objRepair.deliveredProductUrl = "/"+objRepair.Delivered_Product__c;
+ objRepair.inchargeStaffName = objRepair.Incharge_Staff__r.Name;
+ objRepair.inchargeStaffUrl = "/"+objRepair.Incharge_Staff__c;
+ // console.log(objRepair);
+ returnArr.push(objRepair);
+ });
+ /*console.log('arr');
+ console.log(arr);
+ console.log(arr.length);*/
+ this.data = returnArr;
+ // console.log(this.data);
+ }).catch(error => {
+ console.log("error");
+ console.log(error);
+ }).finally(() => {
+
+ });
+ }
+
+
+ }
+ //瀵煎嚭涓篍xcel 鐢籺able
+ exportContactData(){
+ // Prepare a html table
+ let doc = '<table>';
+ // Add styles for the table
+ doc += '<style>';
+ doc += 'table, th, td {';
+ doc += ' border: 1px solid black;';
+ doc += ' border-collapse: collapse;';
+ doc += '}';
+ doc += '</style>';
+ // Add all the Table Headers
+ doc += '<tr>';
+ this.columns.forEach(element => {
+ doc += '<th>'+ element.label +'</th>'
+ });
+ doc += '</tr>';
+ // Add the data rows
+ let fieldNameArr =[];
+ this.columns.forEach(function(v){
+ if (v['typeAttributes']) {
+ fieldNameArr.push(v['typeAttributes'].label.fieldName);
+ }else{
+ fieldNameArr.push(v.fieldName);
+ }
+ });
+ console.log(fieldNameArr);
+ fieldNameArr.forEach(v=>{
+ console.log(v);
+ // console.log(this.data[0].v);
+ })
+ this.data.forEach(record => {
+ doc += '<tr>';
+ if (record.Status1__c != null) {
+ doc += '<th>'+record.Status1__c+'</th>';
+ }else{
+ doc += '<th></th>'
+ }
+ if (record.Status2__c != null) {
+ doc += '<th>'+record.Status2__c+'</th>';
+ }else{
+ doc += '<th></th>'
+ }
+ if (record.Name != null) {
+ doc += '<th>'+record.Name+'</th>';
+ }else{
+ doc += '<th></th>'
+ }
+ if (record.SAP_Service_Repair_No__c != null) {
+ doc += '<th>'+record.SAP_Service_Repair_No__c+'</th>';
+ }else{
+ doc += '<th></th>'
+ }
+ if (record.deliveredProductName != null) {
+ doc += '<th>'+record.deliveredProductName+'</th>';
+ }else{
+ doc += '<th></th>'
+ }
+ if (record.SerialNumber__c != null) {
+ doc += '<th>'+record.SerialNumber__c+'</th>';
+ }else{
+ doc += '<th></th>'
+ }
+ if (record.HP_Name__c != null) {
+ doc += '<th>'+record.HP_Name__c+'</th>';
+ }else{
+ doc += '<th></th>'
+ }
+ if (record.State_Hospital__c != null) {
+ doc += '<th>'+record.State_Hospital__c+'</th>';
+ }else{
+ doc += '<th></th>'
+ }
+ if (record.inchargeStaffName != null) {
+ doc += '<th>'+record.inchargeStaffName+'</th>';
+ }else{
+ doc += '<th></th>'
+ }
+ if (record.FSE_ApplyForRepair_Day__c != null) {
+ doc += '<th>'+record.FSE_ApplyForRepair_Day__c+'</th>';
+ }else{
+ doc += '<th></th>'
+ }
+ if (record.work_location_select__c != null) {
+ doc += '<th>'+record.work_location_select__c+'</th>';
+ }else{
+ doc += '<th></th>'
+ }
+ if (record.On_site_repair__c != null) {
+ doc += '<th>'+record.On_site_repair__c+'</th>';
+ }else{
+ doc += '<th></th>'
+ }
+ if (record.Number_of_EffectiveContract__c != null) {
+ doc += '<th>'+record.Number_of_EffectiveContract__c+'</th>';
+ }else{
+ doc += '<th></th>'
+ }
+ if (record.NewProductGuaranteeObject__c != null) {
+ doc += '<th>'+record.NewProductGuaranteeObject__c+'</th>';
+ }else{
+ doc += '<th></th>'
+ }
+ // fieldNameArr.forEach(fieldName =>{
+ // doc += '<th>'+record.fieldName+'</th>';
+ // });
+ doc += '</tr>';
+ });
+ doc += '</table>';
+ var element = 'data:application/vnd.ms-excel,' + encodeURIComponent(doc);
+ let downloadElement = document.createElement('a');
+ downloadElement.href = element;
+ downloadElement.target = '_self';
+ // use .csv as extension on below line if you want to export data as csv
+ downloadElement.download = '淇悊鏄庣粏琛�.xls';
+ document.body.appendChild(downloadElement);
+ downloadElement.click();
+ }
+
+ // this method validates the data and creates the csv file to download this.data鐨勬墍鏈夊瓧娈�
+ downloadCSVFile1() {
+ console.log("downloadCSVFile1");
+ let rowEnd = '\n';
+ let csvString = '';
+ // this set elminates the duplicates if have any duplicate keys
+ let rowData = new Set();
+ let columnsData = new Set();
+ let columnsLabelData = new Set();
+
+ // getting keys from data
+ this.data.forEach(function (record) {
+ Object.keys(record).forEach(function (key) {
+ rowData.add(key);
+ });
+ });
+ console.log(rowData);
+
+ // Array.from() method returns an Array object from any object with a length property or an iterable object.
+ rowData = Array.from(rowData);
+ console.log(rowData);
+
+ // splitting using ','
+ csvString += rowData.join(',');
+ csvString += rowEnd;
+ console.log(csvString);
+ this.columns.forEach(function(v){
+ columnsLabelData.add(v.label);
+ if (v['typeAttributes']) {
+ columnsData.add(v['typeAttributes'].label.fieldName);
+ }else{
+ columnsData.add(v.fieldName);
+ }
+ });
+ console.log("columnsData");
+ console.log(columnsLabelData);
+ console.log(columnsData);
+ console.log(rowData[1]);
+ console.log(Array.from(columnsData));
+ console.log(Array.from(columnsData).hasOwnProperty(rowData[1]));
+ console.log(this.data[0].Name);
+ console.log(this.data[0][rowData[1]]);
+ // main for loop to get the data based on key value
+ for(let i=0; i < this.data.length; i++){
+ let colValue = 0;
+
+ // validating keys in data
+ for(let key in rowData) {
+ if(rowData.hasOwnProperty(key)) {
+ // Key value
+ // Ex: Id, Name
+ let rowKey = rowData[key];
+ // add , after every value except the first.
+ if(colValue > 0){
+ csvString += ',';
+ }
+ // If the column is undefined, it as blank in the CSV file.
+ let value = this.data[i][rowKey] === undefined ? '' : this.data[i][rowKey];
+ csvString += '"'+ value +'"';
+ colValue++;
+ }
+ }
+ csvString += rowEnd;
+ }
+
+ // Creating anchor element to download
+ let downloadElement = document.createElement('a');
+
+ // This encodeURI encodes special characters, except: , / ? : @ & = + $ # (Use encodeURIComponent() to encode these characters).
+ downloadElement.href = 'data:text/csv;charset=utf-8,' + encodeURI(csvString);
+ downloadElement.target = '_self';
+ // CSV File Name
+ downloadElement.download = 'Account Data.csv';
+ // below statement is required if you are using firefox browser
+ document.body.appendChild(downloadElement);
+ // click() Javascript function to download CSV file
+ downloadElement.click();
+ }
+ //瀵煎嚭涓篍xcel
+ downloadCSVFile() {
+ console.log("downloadCSVFile");
+ let rowEnd = '\n';
+ let csvString = '';
+ // this set elminates the duplicates if have any duplicate keys
+ //琛ㄦ牸鏍囬
+ let columnsData = new Set();
+ //琛ㄦ牸瀛楁
+ let rowData = new Set();
+
+ // getting keys from data
+ this.columns.forEach(function(v){
+ columnsData.add(v.label);
+ if (v['typeAttributes']) {
+ rowData.add(v['typeAttributes'].label.fieldName);
+ }else{
+ rowData.add(v.fieldName);
+ }
+ });
+ console.log(columnsData);
+ console.log(rowData);
+ // Array.from() method returns an Array object from any object with a length property or an iterable object.
+ rowData = Array.from(rowData);
+ columnsData = Array.from(columnsData);
+ // getting keys from data
+ /* console.log("rowData");
+ rowData.forEach(function(v){
+ console.log(v);
+ });
+ console.log("columnsData");
+ columnsData.forEach(function(v){
+ console.log(v);
+ }); */
+
+ // splitting using ','
+ csvString += columnsData.join(',');
+ csvString += rowEnd;
+ // console.log(csvString);
+ // main for loop to get the data based on key value
+ for(let i=0; i < this.data.length; i++){
+ let colValue = 0;
+
+ // validating keys in data
+ for(let key in rowData) {
+ if(rowData.hasOwnProperty(key)) {//del
+ // Key value
+ // Ex: Id, Name
+ let rowKey = rowData[key];
+ // add , after every value except the first.
+ if(colValue > 0){
+ csvString += ',';
+ }
+ // If the column is undefined, it as blank in the CSV file.
+ let value = this.data[i][rowKey] === undefined ? '' : this.data[i][rowKey];
+ csvString += '"'+ value +'"';
+ colValue++;
+ }
+ }
+ csvString += rowEnd;
+ }
+
+ // Creating anchor element to download
+ let downloadElement = document.createElement('a');
+
+ // This encodeURI encodes special characters, except: , / ? : @ & = + $ # (Use encodeURIComponent() to encode these characters).
+ downloadElement.href = 'data:text/csv;charset=utf-8,' + encodeURI(csvString);
+ downloadElement.target = '_self';
+ // CSV File Name
+ downloadElement.download = '淇悊鏄庣粏琛�.csv';
+ // below statement is required if you are using firefox browser
+ document.body.appendChild(downloadElement);
+ // click() Javascript function to download CSV file
+ downloadElement.click();
+ }
+ //鑾峰彇閫変腑Repair
+ getSelectedRows(event) {
+ const selectedRows = event.detail.selectedRows;
+ console.log(selectedRows);
+ //Repair__c selectedRepairs
+ // Display that fieldName of the selected rows
+ let selectedRepairsArr = [];
+ for (let i = 0; i < selectedRows.length; i++) {
+ selectedRepairsArr.push(selectedRows[i]);
+ }
+ this.selectedRepairs = selectedRepairsArr;
+ }
+
+ //璺宠浆鍒皃df椤甸潰
+ skipPage() {
+ console.log("selectedRows");
+ // console.log(jsonStr);
+ if (this.selectedRepairs.length <= 0 ) {
+ const event = new ShowToastEvent({
+ title: 'error',
+ message: '璇疯嚦灏戦�夋嫨涓�涓慨鐞�',
+ variant:'error',
+ });
+ this.dispatchEvent(event);
+ return;
+ }
+ let jsonStr = JSON.stringify(this.selectedRepairs);
+ showPDF({
+ json: jsonStr
+ }).then(result => {
+ console.log(result);
+ if (result.indexOf("https://ocsm") != -1) {
+ window.open(result, "缁翠慨濮旀墭涔DF", "");
+ }else{
+ const event = new ShowToastEvent({
+ title: 'error',
+ message: result,
+ variant:'error',
+ });
+ this.dispatchEvent(event);
+ }
+ }).catch(error => {
+ console.log("error");
+ console.log(error);
+ }).finally(() => {
+
+ });
+ }
+
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/batchSelectRepairLWC/batchSelectRepairLWC.js-meta.xml b/force-app/main/default/lwc/batchSelectRepairLWC/batchSelectRepairLWC.js-meta.xml
new file mode 100644
index 0000000..2b7649d
--- /dev/null
+++ b/force-app/main/default/lwc/batchSelectRepairLWC/batchSelectRepairLWC.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/beforeRenderHook/beforeRenderHook.html b/force-app/main/default/lwc/beforeRenderHook/beforeRenderHook.html
new file mode 100644
index 0000000..0d0f31c
--- /dev/null
+++ b/force-app/main/default/lwc/beforeRenderHook/beforeRenderHook.html
@@ -0,0 +1,5 @@
+<template>
+ <template for:each={courses} for:item="course">
+ <p key={course}>{course}</p>
+ </template>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/beforeRenderHook/beforeRenderHook.js b/force-app/main/default/lwc/beforeRenderHook/beforeRenderHook.js
new file mode 100644
index 0000000..b5d0d47
--- /dev/null
+++ b/force-app/main/default/lwc/beforeRenderHook/beforeRenderHook.js
@@ -0,0 +1,9 @@
+import { LightningElement } from 'lwc';
+
+export default class BeforeRenderHook extends LightningElement {
+ courses;
+
+ connectedCallback() {
+ this.courses = ['Irrigation Systems', 'Soils', 'Organic Crops'];
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/beforeRenderHook/beforeRenderHook.js-meta.xml b/force-app/main/default/lwc/beforeRenderHook/beforeRenderHook.js-meta.xml
new file mode 100644
index 0000000..b9a3113
--- /dev/null
+++ b/force-app/main/default/lwc/beforeRenderHook/beforeRenderHook.js-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>false</isExposed>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/beforeRenderHookWrapper/beforeRenderHookWrapper.html b/force-app/main/default/lwc/beforeRenderHookWrapper/beforeRenderHookWrapper.html
new file mode 100644
index 0000000..21d765d
--- /dev/null
+++ b/force-app/main/default/lwc/beforeRenderHookWrapper/beforeRenderHookWrapper.html
@@ -0,0 +1,18 @@
+<template>
+ <c-example-wrapper
+ icon-name="custom:custom7"
+ lwc="beforeRenderHook"
+ title="Before Render Hook"
+ visualforce="beforeRenderHook"
+ visualforce-height="90px"
+ >
+ <c-before-render-hook slot="lwc"></c-before-render-hook>
+
+ <!-- prettier-ignore -->
+ <p>
+ Use <a target="_blank" href="https://developer.salesforce.com/docs/component-library/documentation/en/lwc/lwc.create_lifecycle_hooks_dom">
+ connectedCallback</a> to execute code when the component is inserted into the page
+ and before it is rendered.
+ </p>
+ </c-example-wrapper>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/beforeRenderHookWrapper/beforeRenderHookWrapper.js b/force-app/main/default/lwc/beforeRenderHookWrapper/beforeRenderHookWrapper.js
new file mode 100644
index 0000000..4f20d04
--- /dev/null
+++ b/force-app/main/default/lwc/beforeRenderHookWrapper/beforeRenderHookWrapper.js
@@ -0,0 +1,3 @@
+import { LightningElement } from 'lwc';
+
+export default class BeforeRenderHookWrapper extends LightningElement {}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/beforeRenderHookWrapper/beforeRenderHookWrapper.js-meta.xml b/force-app/main/default/lwc/beforeRenderHookWrapper/beforeRenderHookWrapper.js-meta.xml
new file mode 100644
index 0000000..6646900
--- /dev/null
+++ b/force-app/main/default/lwc/beforeRenderHookWrapper/beforeRenderHookWrapper.js-meta.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__AppPage</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/binding/binding.css b/force-app/main/default/lwc/binding/binding.css
new file mode 100644
index 0000000..cfbd532
--- /dev/null
+++ b/force-app/main/default/lwc/binding/binding.css
@@ -0,0 +1,3 @@
+lightning-input {
+ margin-bottom: 10px;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/binding/binding.html b/force-app/main/default/lwc/binding/binding.html
new file mode 100644
index 0000000..d2d2beb
--- /dev/null
+++ b/force-app/main/default/lwc/binding/binding.html
@@ -0,0 +1,8 @@
+<template>
+ <p>Enter course name:</p>
+ <lightning-input
+ value={courseName}
+ onchange={handleChange}
+ ></lightning-input>
+ <p class="course-name">Course name is: {courseName}</p>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/binding/binding.js b/force-app/main/default/lwc/binding/binding.js
new file mode 100644
index 0000000..fb4b6f9
--- /dev/null
+++ b/force-app/main/default/lwc/binding/binding.js
@@ -0,0 +1,9 @@
+import { LightningElement } from 'lwc';
+
+export default class Binding extends LightningElement {
+ courseName = 'Default';
+
+ handleChange(event) {
+ this.courseName = event.target.value;
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/binding/binding.js-meta.xml b/force-app/main/default/lwc/binding/binding.js-meta.xml
new file mode 100644
index 0000000..b9a3113
--- /dev/null
+++ b/force-app/main/default/lwc/binding/binding.js-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>false</isExposed>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/bindingWrapper/bindingWrapper.html b/force-app/main/default/lwc/bindingWrapper/bindingWrapper.html
new file mode 100644
index 0000000..6ec9bb2
--- /dev/null
+++ b/force-app/main/default/lwc/bindingWrapper/bindingWrapper.html
@@ -0,0 +1,22 @@
+<template>
+ <c-example-wrapper
+ icon-name="custom:custom7"
+ title="Binding"
+ lwc="binding"
+ visualforce="binding"
+ visualforce-height="100px"
+ >
+ <c-binding slot="lwc"></c-binding>
+
+ <!-- prettier-ignore -->
+ <p>
+ In LWC, property binding is unidirectional. Properties are used to pass information down, but
+ not up. To pass information up, use HTML events. For instance, lightning-input passes information
+ up firing a change event (information is carried in the payload of the event!).
+ To listen to an event that an element fires, define a handler in JavaScript and bind it to the event.
+ Another important difference is that Visualforce is rendered on the server side.
+ This means that a server roundtrip is required to update the property whereas, in LWC, rendering happens on the client-side.
+ Indeed, it happens automatically when a JavaScript property value changes.
+ </p>
+ </c-example-wrapper>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/bindingWrapper/bindingWrapper.js b/force-app/main/default/lwc/bindingWrapper/bindingWrapper.js
new file mode 100644
index 0000000..a624c1c
--- /dev/null
+++ b/force-app/main/default/lwc/bindingWrapper/bindingWrapper.js
@@ -0,0 +1,3 @@
+import { LightningElement } from 'lwc';
+
+export default class BindingWrapper extends LightningElement {}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/bindingWrapper/bindingWrapper.js-meta.xml b/force-app/main/default/lwc/bindingWrapper/bindingWrapper.js-meta.xml
new file mode 100644
index 0000000..6646900
--- /dev/null
+++ b/force-app/main/default/lwc/bindingWrapper/bindingWrapper.js-meta.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__AppPage</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/cancelApplyLWC/cancelApplyLWC.html b/force-app/main/default/lwc/cancelApplyLWC/cancelApplyLWC.html
new file mode 100644
index 0000000..66974ff
--- /dev/null
+++ b/force-app/main/default/lwc/cancelApplyLWC/cancelApplyLWC.html
@@ -0,0 +1,4 @@
+<template>
+
+
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/cancelApplyLWC/cancelApplyLWC.js b/force-app/main/default/lwc/cancelApplyLWC/cancelApplyLWC.js
new file mode 100644
index 0000000..8339975
--- /dev/null
+++ b/force-app/main/default/lwc/cancelApplyLWC/cancelApplyLWC.js
@@ -0,0 +1,90 @@
+import { LightningElement, track, wire, api } from 'lwc';
+import LightningConfirm from 'lightning/confirm';
+import {CurrentPageReference,NavigationMixin} from 'lightning/navigation';
+import { CloseActionScreenEvent } from 'lightning/actions';
+
+import cancelApply from '@salesforce/apex/TransferApplyWebService.cancelApply';
+
+export default class cancelApplyLWC extends LightningElement {
+ @api recordId;
+ IsLoading=true;
+ cancelResult;
+
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference){
+ console.log("杩涘叆椤甸潰");
+ console.log(currentPageReference);
+ if(currentPageReference){
+ const urvalue=currentPageReference.state.recordId;
+ if(urvalue){
+ let str=`${urvalue}`;
+ console.log('str');
+ console.log(str);
+ this.recordId=str;
+
+ }
+ }
+ }
+ connectedCallback() {
+ console.log('this.raeSetId:' + this.recordId);
+
+ LightningConfirm.open({
+ message: '纭畾鍙栨秷锛�',
+ variant: 'headerless',
+ label: 'this is the aria-label value',
+
+ }).then(cancel=>{
+ this.IsLoading=false;
+ this.dispatchEvent(new CloseActionScreenEvent());
+ if(cancel) {
+ cancelApply({
+ taId : this.recordId
+ }).then(result => {
+ this.cancelResult = result;
+ this.cancelSubmit().then(res=>{
+ this.IsLoading=false;
+ this.dispatchEvent(new CloseActionScreenEvent());
+ });
+
+ }).catch( error =>{
+ console.log(error);
+ }).finally(()=>{
+
+
+ });
+ }
+
+ });
+
+
+ }
+
+ async cancelSubmit(){
+ if(this.cancelResult == '1') {
+ alert('鍙栨秷鎴愬姛');
+ window.location.href = window.location;
+
+ } else {
+ console.log("result:",this.cancelResult);
+ alert(this.cancelResult);
+ }
+
+ }
+
+}
+
+//old js
+
+// {!REQUIRESCRIPT('/soap/ajax/51.0/connection.js')}
+// {!REQUIRESCRIPT('/soap/ajax/51.0/apex.js')}
+// if (confirm("纭畾鍙栨秷锛�")) {
+// var rs = sforce.apex.execute("TransferApplyWebService","cancelApply",{taId:'{!TransferApply__c.Id}'});
+// if(rs == '1'){
+// alert('鍙栨秷鎴愬姛');
+// window.location.href = window.location;
+// }
+// else{
+// alert(rs);
+// }
+// }
\ No newline at end of file
diff --git a/force-app/main/default/lwc/cancelApplyLWC/cancelApplyLWC.js-meta.xml b/force-app/main/default/lwc/cancelApplyLWC/cancelApplyLWC.js-meta.xml
new file mode 100644
index 0000000..e7756b3
--- /dev/null
+++ b/force-app/main/default/lwc/cancelApplyLWC/cancelApplyLWC.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="cancelApplyLWC">
+ <apiVersion>51.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__AppPage</target>
+ <target>lightning__RecordPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/childComponentTest/__tests__/childComponentTest.test.js b/force-app/main/default/lwc/childComponentTest/__tests__/childComponentTest.test.js
new file mode 100644
index 0000000..f67316d
--- /dev/null
+++ b/force-app/main/default/lwc/childComponentTest/__tests__/childComponentTest.test.js
@@ -0,0 +1,25 @@
+import { createElement } from 'lwc';
+import ChildComponentTest from 'c/childComponentTest';
+
+describe('c-child-component-test', () => {
+ afterEach(() => {
+ // The jsdom instance is shared across test cases in a single file so reset the DOM
+ while (document.body.firstChild) {
+ document.body.removeChild(document.body.firstChild);
+ }
+ });
+
+ it('TODO: test case generated by CLI command, please fill in test logic', () => {
+ // Arrange
+ const element = createElement('c-child-component-test', {
+ is: ChildComponentTest
+ });
+
+ // Act
+ document.body.appendChild(element);
+
+ // Assert
+ // const div = element.shadowRoot.querySelector('div');
+ expect(1).toBe(1);
+ });
+});
\ No newline at end of file
diff --git a/force-app/main/default/lwc/childComponentTest/childComponentTest.html b/force-app/main/default/lwc/childComponentTest/childComponentTest.html
new file mode 100644
index 0000000..b473261
--- /dev/null
+++ b/force-app/main/default/lwc/childComponentTest/childComponentTest.html
@@ -0,0 +1,8 @@
+<template>
+ <p class="slds-text-align_center slds-var-m-vertical_medium">
+ Prior Count:
+ <lightning-formatted-number
+ value={priorCount}
+ ></lightning-formatted-number>
+ </p>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/childComponentTest/childComponentTest.js b/force-app/main/default/lwc/childComponentTest/childComponentTest.js
new file mode 100644
index 0000000..ebed1f2
--- /dev/null
+++ b/force-app/main/default/lwc/childComponentTest/childComponentTest.js
@@ -0,0 +1,18 @@
+import { LightningElement,api } from 'lwc';
+
+export default class ChildComponentTest extends LightningElement {
+ _currentCount = 0;
+ priorCount = 0;
+ @api counter = 0;
+ get counter() {
+ return this._currentCount;
+ }
+ set counter(value) {
+ this.priorCount = this._currentCount;
+ this._currentCount = value;
+ }
+ @api
+ maximizeCounter() {
+ this.counter += 1000000;
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/childComponentTest/childComponentTest.js-meta.xml b/force-app/main/default/lwc/childComponentTest/childComponentTest.js-meta.xml
new file mode 100644
index 0000000..f8c5cb4
--- /dev/null
+++ b/force-app/main/default/lwc/childComponentTest/childComponentTest.js-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>56.0</apiVersion>
+ <isExposed>false</isExposed>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/createCaseTest/__tests__/createCaseTest.test.js b/force-app/main/default/lwc/createCaseTest/__tests__/createCaseTest.test.js
new file mode 100644
index 0000000..e408196
--- /dev/null
+++ b/force-app/main/default/lwc/createCaseTest/__tests__/createCaseTest.test.js
@@ -0,0 +1,25 @@
+import { createElement } from 'lwc';
+import CreateCaseTest from 'c/createCaseTest';
+
+describe('c-create-case-test', () => {
+ afterEach(() => {
+ // The jsdom instance is shared across test cases in a single file so reset the DOM
+ while (document.body.firstChild) {
+ document.body.removeChild(document.body.firstChild);
+ }
+ });
+
+ it('TODO: test case generated by CLI command, please fill in test logic', () => {
+ // Arrange
+ const element = createElement('c-create-case-test', {
+ is: CreateCaseTest
+ });
+
+ // Act
+ document.body.appendChild(element);
+
+ // Assert
+ // const div = element.shadowRoot.querySelector('div');
+ expect(1).toBe(1);
+ });
+});
\ No newline at end of file
diff --git a/force-app/main/default/lwc/createCaseTest/createCaseTest.html b/force-app/main/default/lwc/createCaseTest/createCaseTest.html
new file mode 100644
index 0000000..5b1b514
--- /dev/null
+++ b/force-app/main/default/lwc/createCaseTest/createCaseTest.html
@@ -0,0 +1,14 @@
+<template>
+ <lightning-card>
+ <h3 slot="title">
+ <lightning-icon icon-name="utility:connected_apps" size="small"></lightning-icon>
+ Close Quick Action From Lightning Web Components
+ </h3>
+ <div slot="footer">
+
+ </div>
+ Record Id from Parent Component: {recordId}
+ <br/>
+ <lightning-button label="Close Quick Action" onclick={closeQuickAction}></lightning-button>
+ </lightning-card>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/createCaseTest/createCaseTest.js b/force-app/main/default/lwc/createCaseTest/createCaseTest.js
new file mode 100644
index 0000000..6d7e49e
--- /dev/null
+++ b/force-app/main/default/lwc/createCaseTest/createCaseTest.js
@@ -0,0 +1,11 @@
+import { LightningElement, api } from 'lwc';
+
+export default class CreateCaseTest extends LightningElement {
+
+ @api recordId;
+ closeQuickAction() {
+ const closeQA = new CustomEvent('close');
+ // Dispatches the event.
+ this.dispatchEvent(closeQA);
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/createCaseTest/createCaseTest.js-meta.xml b/force-app/main/default/lwc/createCaseTest/createCaseTest.js-meta.xml
new file mode 100644
index 0000000..f8c5cb4
--- /dev/null
+++ b/force-app/main/default/lwc/createCaseTest/createCaseTest.js-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>56.0</apiVersion>
+ <isExposed>false</isExposed>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/createMixedRecordsApex/createMixedRecordsApex.html b/force-app/main/default/lwc/createMixedRecordsApex/createMixedRecordsApex.html
new file mode 100644
index 0000000..131ee1d
--- /dev/null
+++ b/force-app/main/default/lwc/createMixedRecordsApex/createMixedRecordsApex.html
@@ -0,0 +1,27 @@
+<template>
+ <div class="slds-var-m-around_x-small">
+ <lightning-input
+ label="Contact First Name"
+ class="contactFirstName"
+ value={contactFirstName}
+ onchange={handleContactFirstNameInputChange}
+ ></lightning-input>
+ <lightning-input
+ label="Contact Last Name"
+ class="contactLastName"
+ value={contactLastName}
+ onchange={handleContactLastNameInputChange}
+ ></lightning-input>
+ <lightning-input
+ label="Opportunity Name"
+ class="opportunityName"
+ value={opportunityName}
+ onchange={handleOpportunityNameInputChange}
+ ></lightning-input>
+ </div>
+ <lightning-button
+ onclick={handleButtonClick}
+ label="Create Contact and Opportunity"
+ class="slds-var-m-left_xx-small"
+ ></lightning-button>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/createMixedRecordsApex/createMixedRecordsApex.js b/force-app/main/default/lwc/createMixedRecordsApex/createMixedRecordsApex.js
new file mode 100644
index 0000000..5ac483a
--- /dev/null
+++ b/force-app/main/default/lwc/createMixedRecordsApex/createMixedRecordsApex.js
@@ -0,0 +1,48 @@
+import { LightningElement } from 'lwc';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+import { reduceErrors } from 'c/ldsUtils';
+import createContactAndOpportunity from '@salesforce/apex/CreateMixedRecordsApexControllerLwc.createContactAndOpportunity';
+
+export default class CreateMixedRecordsApex extends LightningElement {
+ contactFirstName = 'Yan';
+ contactLastName = 'Khang';
+ opportunityName = 'Possible deal';
+
+ handleContactFirstNameInputChange(event) {
+ this.contactFirstName = event.target.value;
+ }
+
+ handleContactLastNameInputChange(event) {
+ this.contactLastName = event.target.value;
+ }
+
+ handleOpportunityNameInputChange(event) {
+ this.opportunityName = event.target.value;
+ }
+
+ handleButtonClick() {
+ createContactAndOpportunity({
+ contactFirstName: this.contactFirstName,
+ contactLastName: this.contactLastName,
+ opportunityName: this.opportunityName
+ })
+ .then(() => {
+ const evt = new ShowToastEvent({
+ title: 'Success',
+ message: 'Contact & Opportunity created correctly',
+ variant: 'success'
+ });
+ this.dispatchEvent(evt);
+ })
+ .catch((error) => {
+ const evt = new ShowToastEvent({
+ title: 'Error',
+ message:
+ 'Error creating records: ' +
+ reduceErrors(error).join(', '),
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+ });
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/createMixedRecordsApex/createMixedRecordsApex.js-meta.xml b/force-app/main/default/lwc/createMixedRecordsApex/createMixedRecordsApex.js-meta.xml
new file mode 100644
index 0000000..b9a3113
--- /dev/null
+++ b/force-app/main/default/lwc/createMixedRecordsApex/createMixedRecordsApex.js-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>false</isExposed>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/createMixedRecordsApexWrapper/createMixedRecordsApexWrapper.html b/force-app/main/default/lwc/createMixedRecordsApexWrapper/createMixedRecordsApexWrapper.html
new file mode 100644
index 0000000..509b496
--- /dev/null
+++ b/force-app/main/default/lwc/createMixedRecordsApexWrapper/createMixedRecordsApexWrapper.html
@@ -0,0 +1,22 @@
+<template>
+ <c-example-wrapper
+ icon-name="custom:custom96"
+ lwc="createMixedRecordsApex"
+ title="Create Mixed Records via Apex"
+ visualforce="createMixedRecords"
+ visualforce-height="260px"
+ >
+ <c-create-mixed-records-apex slot="lwc"></c-create-mixed-records-apex>
+
+ <!-- prettier-ignore -->
+ <p>
+ <a target="_blank" href="https://developer.salesforce.com/docs/component-library/documentation/lwc/lwc.apex">
+ Call Apex imperatively </a> to perform mixed record or complex operations to create,
+ update or delete or read data. In this example, the mixed operation is transactional.
+ </p>
+ <p>
+ <b>Note:</b> Consider using base components forms or LDS functions
+ first.
+ </p>
+ </c-example-wrapper>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/createMixedRecordsApexWrapper/createMixedRecordsApexWrapper.js b/force-app/main/default/lwc/createMixedRecordsApexWrapper/createMixedRecordsApexWrapper.js
new file mode 100644
index 0000000..7e5cc34
--- /dev/null
+++ b/force-app/main/default/lwc/createMixedRecordsApexWrapper/createMixedRecordsApexWrapper.js
@@ -0,0 +1,3 @@
+import { LightningElement } from 'lwc';
+
+export default class CreateMixedRecordsApexWrapper extends LightningElement {}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/createMixedRecordsApexWrapper/createMixedRecordsApexWrapper.js-meta.xml b/force-app/main/default/lwc/createMixedRecordsApexWrapper/createMixedRecordsApexWrapper.js-meta.xml
new file mode 100644
index 0000000..6646900
--- /dev/null
+++ b/force-app/main/default/lwc/createMixedRecordsApexWrapper/createMixedRecordsApexWrapper.js-meta.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__AppPage</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/createMixedRecordsWireFunctions/createMixedRecordsWireFunctions.html b/force-app/main/default/lwc/createMixedRecordsWireFunctions/createMixedRecordsWireFunctions.html
new file mode 100644
index 0000000..131ee1d
--- /dev/null
+++ b/force-app/main/default/lwc/createMixedRecordsWireFunctions/createMixedRecordsWireFunctions.html
@@ -0,0 +1,27 @@
+<template>
+ <div class="slds-var-m-around_x-small">
+ <lightning-input
+ label="Contact First Name"
+ class="contactFirstName"
+ value={contactFirstName}
+ onchange={handleContactFirstNameInputChange}
+ ></lightning-input>
+ <lightning-input
+ label="Contact Last Name"
+ class="contactLastName"
+ value={contactLastName}
+ onchange={handleContactLastNameInputChange}
+ ></lightning-input>
+ <lightning-input
+ label="Opportunity Name"
+ class="opportunityName"
+ value={opportunityName}
+ onchange={handleOpportunityNameInputChange}
+ ></lightning-input>
+ </div>
+ <lightning-button
+ onclick={handleButtonClick}
+ label="Create Contact and Opportunity"
+ class="slds-var-m-left_xx-small"
+ ></lightning-button>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/createMixedRecordsWireFunctions/createMixedRecordsWireFunctions.js b/force-app/main/default/lwc/createMixedRecordsWireFunctions/createMixedRecordsWireFunctions.js
new file mode 100644
index 0000000..4e5a418
--- /dev/null
+++ b/force-app/main/default/lwc/createMixedRecordsWireFunctions/createMixedRecordsWireFunctions.js
@@ -0,0 +1,91 @@
+import { LightningElement } from 'lwc';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+import { createRecord } from 'lightning/uiRecordApi';
+import { reduceErrors } from 'c/ldsUtils';
+import CONTACT_OBJECT from '@salesforce/schema/Contact';
+import CONTACT_FIRST_NAME_FIELD from '@salesforce/schema/Contact.FirstName';
+import CONTACT_LAST_NAME_FIELD from '@salesforce/schema/Contact.LastName';
+import OPPORTUNITY_OBJECT from '@salesforce/schema/Opportunity';
+import OPPORTUNITY_NAME_FIELD from '@salesforce/schema/Opportunity.Name';
+import OPPORTUNITY_STAGENAME_FIELD from '@salesforce/schema/Opportunity.StageName';
+import OPPORTUNITY_CLOSEDATE_FIELD from '@salesforce/schema/Opportunity.CloseDate';
+
+export default class CreateMixedRecordsWireFunctions extends LightningElement {
+ contactFirstName = 'Yan';
+ contactLastName = 'Khang';
+ opportunityName = 'Possible deal';
+
+ handleContactFirstNameInputChange(event) {
+ this.contactFirstName = event.target.value;
+ }
+
+ handleContactLastNameInputChange(event) {
+ this.contactLastName = event.target.value;
+ }
+
+ handleOpportunityNameInputChange(event) {
+ this.opportunityName = event.target.value;
+ }
+
+ handleButtonClick() {
+ this.createContact();
+ this.createOpportunity();
+ }
+
+ createContact() {
+ // Note: In this example we generate the record input structure from scratch for simplicity.
+ // Consider to use the generateRecordInputForCreate() function instead.
+ // The function will create the record input for you, including only fields that are createable.
+ // Check https://developer.salesforce.com/docs/component-library/documentation/en/50.0/lwc/reference_generate_record_input_update
+ const recordInput = {
+ apiName: CONTACT_OBJECT.objectApiName,
+ fields: {
+ [CONTACT_FIRST_NAME_FIELD.fieldApiName]: this.contactFirstName,
+ [CONTACT_LAST_NAME_FIELD.fieldApiName]: this.contactLastName
+ }
+ };
+
+ createRecord(recordInput)
+ .then((result) => this.handleSuccess(result.id, 'Contact'))
+ .catch((error) => this.handleErrors(error));
+ }
+
+ createOpportunity() {
+ // Note: In this example we generate the record input structure from scratch for simplicity.
+ // Consider to use the generateRecordInputForCreate() function instead.
+ // The function will create the record input for you, including only fields that are createable.
+ // Check https://developer.salesforce.com/docs/component-library/documentation/en/50.0/lwc/reference_generate_record_input_update
+ const recordInput = {
+ apiName: OPPORTUNITY_OBJECT.objectApiName,
+ fields: {
+ [OPPORTUNITY_NAME_FIELD.fieldApiName]: this.opportunityName,
+ [OPPORTUNITY_STAGENAME_FIELD.fieldApiName]: 'Prospecting',
+ [OPPORTUNITY_CLOSEDATE_FIELD.fieldApiName]: new Date(2025, 1, 1)
+ }
+ };
+
+ createRecord(recordInput)
+ .then((result) => this.handleSuccess(result.id, 'Opportunity'))
+ .catch((error) => this.handleErrors(error));
+ }
+
+ handleSuccess(recordId, object) {
+ const evt = new ShowToastEvent({
+ title: 'Success',
+ message: `${object} created with Id: ${recordId}`,
+ variant: 'success'
+ });
+ this.dispatchEvent(evt);
+ }
+
+ handleErrors(error) {
+ const evt = new ShowToastEvent({
+ title: 'Error',
+ message: `Error creating records: ${reduceErrors(error).join(
+ ', '
+ )}`,
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/createMixedRecordsWireFunctions/createMixedRecordsWireFunctions.js-meta.xml b/force-app/main/default/lwc/createMixedRecordsWireFunctions/createMixedRecordsWireFunctions.js-meta.xml
new file mode 100644
index 0000000..b9a3113
--- /dev/null
+++ b/force-app/main/default/lwc/createMixedRecordsWireFunctions/createMixedRecordsWireFunctions.js-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>false</isExposed>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/createMixedRecordsWireFunctionsWrapper/createMixedRecordsWireFunctionsWrapper.html b/force-app/main/default/lwc/createMixedRecordsWireFunctionsWrapper/createMixedRecordsWireFunctionsWrapper.html
new file mode 100644
index 0000000..1b33d4c
--- /dev/null
+++ b/force-app/main/default/lwc/createMixedRecordsWireFunctionsWrapper/createMixedRecordsWireFunctionsWrapper.html
@@ -0,0 +1,23 @@
+<template>
+ <c-example-wrapper
+ icon-name="custom:custom96"
+ lwc="createMixedRecordsWireFunctions"
+ title="Create Mixed Records via LDS Functions"
+ visualforce="createMixedRecords"
+ visualforce-height="260px"
+ >
+ <c-create-mixed-records-wire-functions
+ slot="lwc"
+ ></c-create-mixed-records-wire-functions>
+
+ <!-- prettier-ignore -->
+ <p>
+ Use <a target="_blank" href="https://developer.salesforce.com/docs/component-library/documentation/lwc/lwc.reference_create_record">
+ createRecord</a>, <a target="_blank" href="https://developer.salesforce.com/docs/component-library/documentation/lwc/lwc.reference_update_record">
+ updateRecord</a> or <a target="_blank" href="https://developer.salesforce.com/docs/component-library/documentation/lwc/lwc.reference_delete_record">
+ deleteRecord</a> LDS functions to combine single record operations, in a non transactional way.
+ </p>
+
+ <p><b>Note:</b> Consider using base components forms first.</p>
+ </c-example-wrapper>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/createMixedRecordsWireFunctionsWrapper/createMixedRecordsWireFunctionsWrapper.js b/force-app/main/default/lwc/createMixedRecordsWireFunctionsWrapper/createMixedRecordsWireFunctionsWrapper.js
new file mode 100644
index 0000000..edaa7de
--- /dev/null
+++ b/force-app/main/default/lwc/createMixedRecordsWireFunctionsWrapper/createMixedRecordsWireFunctionsWrapper.js
@@ -0,0 +1,3 @@
+import { LightningElement } from 'lwc';
+
+export default class CreateMixedRecordsWireFunctionsWrapper extends LightningElement {}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/createMixedRecordsWireFunctionsWrapper/createMixedRecordsWireFunctionsWrapper.js-meta.xml b/force-app/main/default/lwc/createMixedRecordsWireFunctionsWrapper/createMixedRecordsWireFunctionsWrapper.js-meta.xml
new file mode 100644
index 0000000..6646900
--- /dev/null
+++ b/force-app/main/default/lwc/createMixedRecordsWireFunctionsWrapper/createMixedRecordsWireFunctionsWrapper.js-meta.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__AppPage</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/createRecordWithPrepopulatedValues/createRecordWithPrepopulatedValues.html b/force-app/main/default/lwc/createRecordWithPrepopulatedValues/createRecordWithPrepopulatedValues.html
new file mode 100644
index 0000000..4e3e986
--- /dev/null
+++ b/force-app/main/default/lwc/createRecordWithPrepopulatedValues/createRecordWithPrepopulatedValues.html
@@ -0,0 +1,22 @@
+<template>
+ <lightning-record-edit-form
+ object-api-name={objectApiName}
+ onsuccess={handleSuccess}
+ >
+ <lightning-messages> </lightning-messages>
+ <lightning-input-field field-name={nameField}> </lightning-input-field>
+ <lightning-input-field field-name={typeField} value="Prospect">
+ </lightning-input-field>
+ <lightning-input-field field-name={phoneField}> </lightning-input-field>
+ <lightning-input-field field-name={employeesField}>
+ </lightning-input-field>
+ <lightning-button
+ class="slds-var-m-top_small slds-align_absolute-center"
+ variant="brand"
+ type="submit"
+ name="create"
+ label="Save"
+ >
+ </lightning-button>
+ </lightning-record-edit-form>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/createRecordWithPrepopulatedValues/createRecordWithPrepopulatedValues.js b/force-app/main/default/lwc/createRecordWithPrepopulatedValues/createRecordWithPrepopulatedValues.js
new file mode 100644
index 0000000..cb43b97
--- /dev/null
+++ b/force-app/main/default/lwc/createRecordWithPrepopulatedValues/createRecordWithPrepopulatedValues.js
@@ -0,0 +1,24 @@
+import { LightningElement } from 'lwc';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+import ACCOUNT_OBJECT from '@salesforce/schema/Account';
+import ACCOUNT_NAME_FIELD from '@salesforce/schema/Account.Name';
+import ACCOUNT_TYPE_FIELD from '@salesforce/schema/Account.Type';
+import ACCOUNT_PHONE_FIELD from '@salesforce/schema/Account.Phone';
+import ACCOUNT_EMPLOYEES_FIELD from '@salesforce/schema/Account.NumberOfEmployees';
+
+export default class CreateRecordWithPrepopulatedValues extends LightningElement {
+ objectApiName = ACCOUNT_OBJECT;
+ nameField = ACCOUNT_NAME_FIELD;
+ typeField = ACCOUNT_TYPE_FIELD;
+ phoneField = ACCOUNT_PHONE_FIELD;
+ employeesField = ACCOUNT_EMPLOYEES_FIELD;
+
+ handleSuccess(event) {
+ const toastEvent = new ShowToastEvent({
+ title: 'Account created',
+ message: 'Record ID: ' + event.detail.id,
+ variant: 'success'
+ });
+ this.dispatchEvent(toastEvent);
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/createRecordWithPrepopulatedValues/createRecordWithPrepopulatedValues.js-meta.xml b/force-app/main/default/lwc/createRecordWithPrepopulatedValues/createRecordWithPrepopulatedValues.js-meta.xml
new file mode 100644
index 0000000..b9a3113
--- /dev/null
+++ b/force-app/main/default/lwc/createRecordWithPrepopulatedValues/createRecordWithPrepopulatedValues.js-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>false</isExposed>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/createRecordWithPrepopulatedValuesWrapper/createRecordWithPrepopulatedValuesWrapper.html b/force-app/main/default/lwc/createRecordWithPrepopulatedValuesWrapper/createRecordWithPrepopulatedValuesWrapper.html
new file mode 100644
index 0000000..8907463
--- /dev/null
+++ b/force-app/main/default/lwc/createRecordWithPrepopulatedValuesWrapper/createRecordWithPrepopulatedValuesWrapper.html
@@ -0,0 +1,19 @@
+<template>
+ <c-example-wrapper
+ icon-name="custom:custom96"
+ lwc="createRecordWithPrepopulatedValues"
+ title="Create Record with Prepopulated Values"
+ visualforce="createRecordWithPrepopulatedValues"
+ visualforce-height="260px"
+ >
+ <c-create-record-with-prepopulated-values
+ slot="lwc"
+ ></c-create-record-with-prepopulated-values>
+
+ <!-- prettier-ignore -->
+ <p>
+ Use <a target="_blank" href="https://developer.salesforce.com/docs/component-library/bundle/lightning-record-edit-form">
+ lightning-record-edit-form</a> to prepopulate fields or use a custom layout.
+ </p>
+ </c-example-wrapper>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/createRecordWithPrepopulatedValuesWrapper/createRecordWithPrepopulatedValuesWrapper.js b/force-app/main/default/lwc/createRecordWithPrepopulatedValuesWrapper/createRecordWithPrepopulatedValuesWrapper.js
new file mode 100644
index 0000000..8e47817
--- /dev/null
+++ b/force-app/main/default/lwc/createRecordWithPrepopulatedValuesWrapper/createRecordWithPrepopulatedValuesWrapper.js
@@ -0,0 +1,3 @@
+import { LightningElement } from 'lwc';
+
+export default class CreateRecordWithPrepopulatedValuesWrapper extends LightningElement {}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/createRecordWithPrepopulatedValuesWrapper/createRecordWithPrepopulatedValuesWrapper.js-meta.xml b/force-app/main/default/lwc/createRecordWithPrepopulatedValuesWrapper/createRecordWithPrepopulatedValuesWrapper.js-meta.xml
new file mode 100644
index 0000000..08bfebb
--- /dev/null
+++ b/force-app/main/default/lwc/createRecordWithPrepopulatedValuesWrapper/createRecordWithPrepopulatedValuesWrapper.js-meta.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/customDelete/customDelete.html b/force-app/main/default/lwc/customDelete/customDelete.html
new file mode 100644
index 0000000..ba53413
--- /dev/null
+++ b/force-app/main/default/lwc/customDelete/customDelete.html
@@ -0,0 +1,2 @@
+<template>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/customDelete/customDelete.js b/force-app/main/default/lwc/customDelete/customDelete.js
new file mode 100644
index 0000000..44be922
--- /dev/null
+++ b/force-app/main/default/lwc/customDelete/customDelete.js
@@ -0,0 +1,144 @@
+import { LightningElement, api, track, wire } from 'lwc';
+import init from '@salesforce/apex/CustomDeleteController.initForCustomDelete';
+import {CurrentPageReference} from 'lightning/navigation'
+import UserInfo_Owner from '@salesforce/apex/TaskFeedbackController.UserInfo_Owner';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+import deleteRepair from '@salesforce/apex/ControllerUtil.deleteRepair';
+
+export default class CustomDelete extends LightningElement {
+
+
+ @api recordId;
+ @api message;
+
+ @track Status ;
+ @track FSE ;
+ @track SAP;
+ @track cre ;
+ @track Rep ;
+ @track acc ;
+ @track fSE ;
+ @track id;
+ @track rtn;
+
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference){
+ console.log(111);
+ console.log(currentPageReference);
+ if(currentPageReference){
+ const urlValue=currentPageReference.state.recordId;
+ if(urlValue){
+ let str='${urlValue}';
+ console.log("str");
+ console.log(str);
+ this.recordId=str;
+ }
+ }
+ }
+ connectedCallback(){
+ console.log(this.recordId);
+ init({
+ recordId:this.recordId
+ }).then(result=>{
+ console.log(result);
+ if(result!=null){
+ this.FSE=result.FSEApplyForRepairtime;
+ this.Rep=result.Rep;
+ this.SAP=result.SAP;
+ this.Status=result.Status;
+ this.acc=result.acc;
+ this.id=result.Id;
+ this.cre=result.cre;
+ this.fSE=result.FSEownerId;
+ console.log("end");
+ this.handleDeleteAction();
+ console.log("end2");
+
+ }
+ })
+ }
+
+ handleDeleteAction(){
+ if (this.Status != null && this.Status.length > 0) {
+ if (this.Status != "鑽夋涓�"&& this.Status != "1.鍙楃悊瀹屾瘯(SAP寰呭彂閫�)"&& this.Status != "4.淇悊鍝佽繑閫侀樁娈�") {
+ this.message = "涓嶆槸鑽夋涓�,涓嶈兘鍒犻櫎";
+ const event = new ShowToastEvent({
+ title: 'error',
+ variant:'error',
+ message:
+ this.message,
+ });
+ this.dispatchEvent(event);
+ }
+ else if (this.Status == "0.鐢宠瀹屾瘯"&& (this.FSE != "")) {
+ message = "FSE宸茬粡鐢宠锛屼笉鑳藉垹闄�";
+ console.log('***action4');
+
+ const event = new ShowToastEvent({
+ title: 'warning',
+ message:
+ this.message,
+ });
+ this.dispatchEvent(event);
+ }
+ else if (this.Status == "4.淇悊鍝佽繑閫侀樁娈�"&& (this.SAP != "" || this.Rep!= "")){
+ message = "宸茬粡鍙戦�佽繃SAP锛屼笉鑳藉垹闄�";
+ const event = new ShowToastEvent({
+ title: 'warning',
+ message:
+ this.message,
+ });
+ this.dispatchEvent(event);
+ }
+ else if (UserInfo_Owner.Id.substring(0,15) != this.cre.substring(0,15) && UserInfo_Owner.Id.substring(0,15) != this.acc.substring(0,15)&& UserInfo_Owner.Id.substring(0,15) != this.fSE.substring(0,15)) {
+ message = "涓嶆槸鎵�鏈変汉銆佸垱寤轰汉鎴朏SE涓昏礋璐d汉锛屼笉鑳藉垹闄�";
+ const event = new ShowToastEvent({
+ title: 'warning',
+ message:
+ this.message,
+ });
+ this.dispatchEvent(event);
+ }
+ else {
+
+ // sforce.connection.sessionId = '{!$Api.Session_ID}';
+ // var rtn=sforce.apex.execute("ControllerUtil","deleteRepair",{rid:this.id});
+ deleteRepair({
+ rid:this.id
+ }).then(result=>{
+ console.log(result);
+ if(result!=null){
+ this.rtn=result;
+ }
+ })
+
+ if (this.rtn == "OK") {
+ reload();
+ } else {
+ alert(this.rtn);
+
+ }
+ }
+ }
+
+ function reload(){
+ var str="";
+ if(getParam('retURL')!==null){
+ str +=getParam('retURL');
+ }
+ window.open(str,'_self');
+ }
+
+ function getParam(paramName) {
+ paramValue = "", isFound = !1;
+ if (this.location.search.indexOf("?") == 0 && this.location.search.indexOf("=") > 1) {
+ arrSource = unescape(this.location.search).substring(1, this.location.search.length).split("&"), i = 0;
+ while (i < arrSource.length && !isFound) arrSource[i].indexOf("=") > 0 && arrSource[i].split("=")[0].toLowerCase() == paramName.toLowerCase() && (paramValue = arrSource[i].split("=")[1], isFound = !0), i++
+ }
+ return paramValue == "" && (paramValue = null), paramValue
+}
+
+}
+
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/customDelete/customDelete.js-meta.xml b/force-app/main/default/lwc/customDelete/customDelete.js-meta.xml
new file mode 100644
index 0000000..7731813
--- /dev/null
+++ b/force-app/main/default/lwc/customDelete/customDelete.js-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="customDelete">
+ <apiVersion>56.0</apiVersion>
+ <isExposed>true</isExposed>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/demoLWC/demoLWC.html b/force-app/main/default/lwc/demoLWC/demoLWC.html
new file mode 100644
index 0000000..792793b
--- /dev/null
+++ b/force-app/main/default/lwc/demoLWC/demoLWC.html
@@ -0,0 +1,42 @@
+<template>
+ <button class="slds-button slds-button_brand" onclick={addAccount} title="AddGroup">鏂板瀹㈡埛</button>
+ <lightning-datatable
+ key-field="id"
+ data={accList}
+ columns={columns}
+ >
+ </lightning-datatable>
+ <template if:true={isShowPop}>
+ <section role="dialog" tabindex="-1" aria-labelledby="modal-heading-01" aria-modal="true" aria-describedby="modal-content-id-1" class="slds-modal slds-fade-in-open slds-modal_medium">
+ <div class="slds-modal__container">
+ <header class="slds-modal__header" style="background-color: #F3F3F3;">
+ <button class="slds-button slds-button_icon slds-modal__close slds-button_icon-inverse" title="Close" onclick={close}>
+ <lightning-icon icon-name="utility:close"
+ alternative-text="close"
+ variant="inverse"
+ size="small" ></lightning-icon>
+ <span class="slds-assistive-text">Close</span>
+ </button>
+ <h2 id="modal-heading-02" class="slds-text-heading_medium slds-hyphenate">鏂板瀹㈡埛</h2>
+ </header>
+ <div class="slds-modal__content slds-p-around_medium" id="modal-content-id-2" style="border: 1px solid #F3F3F3;">
+ <lightning-record-edit-form object-api-name="Account" density="compact" layout-type="Compact">
+ <div class="slds-grid slds-wrap" style="padding-top: 20px;padding-bottom: 5px;padding-left:25px;padding-right:25px;">
+ <div class="slds-col slds-size_12-of-12 slds-small-size_12-of-12 slds-large-size_6-of-12">
+ <lightning-input-field field-name="Name" value={accName} onchange={accNameChange} required="true"></lightning-input-field>
+ <lightning-input-field field-name="Phone" value={accPhone} onchange={accPhoneChange}></lightning-input-field>
+ <lightning-input-field field-name="Type" value={accType} onchange={accTypeChange}></lightning-input-field>
+ <lightning-input-field field-name="Fax" value={accFax} onchange={accFaxChange}></lightning-input-field>
+ <lightning-input-field field-name="TestMutiPicklist__c" value={accTest} onchange={accFaxChange}></lightning-input-field>
+ </div>
+ </div>
+ </lightning-record-edit-form>
+ </div>
+ <footer class="slds-modal__footer">
+ <button class="slds-button slds-button_neutral" onclick={close} title="Cancel">鍙栨秷</button>
+ <button class="slds-button slds-button_brand" onclick={confirm} title="Confirm">鏂板缓</button>
+ </footer>
+ </div>
+ </section>
+ </template>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/demoLWC/demoLWC.js b/force-app/main/default/lwc/demoLWC/demoLWC.js
new file mode 100644
index 0000000..8554f33
--- /dev/null
+++ b/force-app/main/default/lwc/demoLWC/demoLWC.js
@@ -0,0 +1,70 @@
+import { LightningElement,track } from 'lwc';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+import getAccountForLWC from '@salesforce/apex/DemoController.getAccountForLWC';
+import addAccountForLWC from '@salesforce/apex/DemoController.addAccountForLWC';
+
+export default class DemoLWC extends LightningElement {
+
+ @track accList = [];
+ @track isShowPop = false;
+ @track accName;
+ @track accPhone;
+ @track accType;
+ @track accFax;
+ @track accTest;
+ @track columns = [
+ {label: 'Account Name',fieldName: 'Name'},
+ {label: 'Account Phone',fieldName: 'Phone'},
+ {label: 'Account Type',fieldName: 'Type'},
+ {label: 'Account Fax',fieldName: 'Fax'}
+ ];
+
+ connectedCallback(){
+ getAccountForLWC()
+ .then(result=>{
+ this.accList = result;
+ })
+ }
+
+ accNameChange(event){
+ this.accName = event.detail.value;
+ }
+
+ accPhoneChange(event){
+ this.accPhone = event.detail.value;
+ }
+
+ accTypeChange(event){
+ this.accType = event.detail.value;
+ }
+
+ accFaxChange(event){
+ this.accFax = event.detail.value;
+ }
+
+ addAccount(event){
+ this.isShowPop = true;
+ this.accName = '';
+ this.accPhone = '';
+ this.accType = '';
+ this.accFax = '';
+ }
+
+ confirm(event){
+ addAccountForLWC({name:this.accName,phone:this.accPhone,type:this.accType,fax:this.accFax})
+ .then(result=>{
+ if(result == 'Success'){
+ this.isShowPop = false;
+ const evt = new ShowToastEvent({
+ title : '鏂板缓鎴愬姛',
+ variant: 'success'
+ });
+ this.dispatchEvent(evt);
+ }
+ })
+ }
+
+ close(event){
+ this.isShowPop = false;
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/demoLWC/demoLWC.js-meta.xml b/force-app/main/default/lwc/demoLWC/demoLWC.js-meta.xml
new file mode 100644
index 0000000..f8c5cb4
--- /dev/null
+++ b/force-app/main/default/lwc/demoLWC/demoLWC.js-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>56.0</apiVersion>
+ <isExposed>false</isExposed>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/demoWrapper/demoWrapper.html b/force-app/main/default/lwc/demoWrapper/demoWrapper.html
new file mode 100644
index 0000000..cc97614
--- /dev/null
+++ b/force-app/main/default/lwc/demoWrapper/demoWrapper.html
@@ -0,0 +1,16 @@
+<template>
+ <c-example-wrapper
+ icon-name="custom:custom7"
+ lwc="demoLWC"
+ title="Demo"
+ visualforce="DemoPage"
+ visualforce-height="500px"
+ >
+ <c-demo-l-w-c slot="lwc"></c-demo-l-w-c>
+
+ <!-- prettier-ignore -->
+ <p>
+ Demo
+ </p>
+ </c-example-wrapper>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/demoWrapper/demoWrapper.js b/force-app/main/default/lwc/demoWrapper/demoWrapper.js
new file mode 100644
index 0000000..4c320b9
--- /dev/null
+++ b/force-app/main/default/lwc/demoWrapper/demoWrapper.js
@@ -0,0 +1,3 @@
+import { LightningElement } from 'lwc';
+
+export default class DemoWrapper extends LightningElement {}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/demoWrapper/demoWrapper.js-meta.xml b/force-app/main/default/lwc/demoWrapper/demoWrapper.js-meta.xml
new file mode 100644
index 0000000..5b31309
--- /dev/null
+++ b/force-app/main/default/lwc/demoWrapper/demoWrapper.js-meta.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>56.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__AppPage</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/editRecord/editRecord.html b/force-app/main/default/lwc/editRecord/editRecord.html
new file mode 100644
index 0000000..8b47a58
--- /dev/null
+++ b/force-app/main/default/lwc/editRecord/editRecord.html
@@ -0,0 +1,12 @@
+<template>
+ <lightning-record-form
+ record-id={recordId}
+ object-api-name={objectApiName}
+ columns="2"
+ mode="edit"
+ fields={fields}
+ onsuccess={handleSuccess}
+ onerror={handleError}
+ >
+ </lightning-record-form>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/editRecord/editRecord.js b/force-app/main/default/lwc/editRecord/editRecord.js
new file mode 100644
index 0000000..c28a363
--- /dev/null
+++ b/force-app/main/default/lwc/editRecord/editRecord.js
@@ -0,0 +1,44 @@
+import { LightningElement, api } from 'lwc';
+import ACCOUNT_OBJECT from '@salesforce/schema/Account';
+import ACCOUNT_NAME_FIELD from '@salesforce/schema/Account.Name';
+import ACCOUNT_TYPE_FIELD from '@salesforce/schema/Account.Type';
+import ACCOUNT_PHONE_FIELD from '@salesforce/schema/Account.Phone';
+import ACCOUNT_EMPLOYEES_FIELD from '@salesforce/schema/Account.NumberOfEmployees';
+
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+
+export default class EditRecord extends LightningElement {
+ @api recordId;
+ objectApiName = ACCOUNT_OBJECT;
+
+ fields = [
+ ACCOUNT_NAME_FIELD,
+ ACCOUNT_TYPE_FIELD,
+ ACCOUNT_PHONE_FIELD,
+ ACCOUNT_EMPLOYEES_FIELD
+ ];
+
+ // Only use if custom behavior needed
+ handleSuccess() {
+ this.dispatchEvent(
+ new ShowToastEvent({
+ title: 'Success',
+ message: this.recordId ? 'Account updated' : 'Account created',
+ variant: 'success'
+ })
+ );
+ }
+
+ // Only use if custom behavior needed
+ handleError() {
+ this.dispatchEvent(
+ new ShowToastEvent({
+ title: 'Error',
+ message: this.recordId
+ ? 'Error updating Account'
+ : 'Error creating Account',
+ variant: 'error'
+ })
+ );
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/editRecord/editRecord.js-meta.xml b/force-app/main/default/lwc/editRecord/editRecord.js-meta.xml
new file mode 100644
index 0000000..b9a3113
--- /dev/null
+++ b/force-app/main/default/lwc/editRecord/editRecord.js-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>false</isExposed>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/editRecordWrapper/editRecordWrapper.html b/force-app/main/default/lwc/editRecordWrapper/editRecordWrapper.html
new file mode 100644
index 0000000..d375da8
--- /dev/null
+++ b/force-app/main/default/lwc/editRecordWrapper/editRecordWrapper.html
@@ -0,0 +1,26 @@
+<template>
+ <c-example-wrapper
+ icon-name="standard:account"
+ lwc="editRecord"
+ title="Edit Record"
+ visualforce="editRecord"
+ record-id={recordId}
+ visualforce-height="230px"
+ >
+ <c-edit-record record-id={recordId} slot="lwc"></c-edit-record>
+
+ <!-- prettier-ignore -->
+ <p>
+ Use <a target="_blank" href="https://developer.salesforce.com/docs/component-library/bundle/lightning-record-form">
+ lightning-record-form</a> in edit mode to create or edit records as first option.
+ Use <a target="_blank" href="https://developer.salesforce.com/docs/component-library/bundle/lightning-record-edit-form">
+ lightning-record-edit-form</a> if you want to prepopulate fields or use a custom layout.
+ </p>
+ <!-- prettier-ignore -->
+ <p>
+ <b>Note: </b>
+ You can use the <a target="_blank" href="https://developer.salesforce.com/docs/component-library/documentation/lwc/lwc.use_navigate">
+ Navigation Service </a> to redirect to record page after save.
+ </p>
+ </c-example-wrapper>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/editRecordWrapper/editRecordWrapper.js b/force-app/main/default/lwc/editRecordWrapper/editRecordWrapper.js
new file mode 100644
index 0000000..d4bcc98
--- /dev/null
+++ b/force-app/main/default/lwc/editRecordWrapper/editRecordWrapper.js
@@ -0,0 +1,5 @@
+import { LightningElement, api } from 'lwc';
+
+export default class EditRecordWrapper extends LightningElement {
+ @api recordId;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/editRecordWrapper/editRecordWrapper.js-meta.xml b/force-app/main/default/lwc/editRecordWrapper/editRecordWrapper.js-meta.xml
new file mode 100644
index 0000000..08bfebb
--- /dev/null
+++ b/force-app/main/default/lwc/editRecordWrapper/editRecordWrapper.js-meta.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/editableList/__mocks__/editableList.js b/force-app/main/default/lwc/editableList/__mocks__/editableList.js
new file mode 100644
index 0000000..09bbaed
--- /dev/null
+++ b/force-app/main/default/lwc/editableList/__mocks__/editableList.js
@@ -0,0 +1,3 @@
+import { LightningElement } from 'lwc';
+
+export default class EditableList extends LightningElement {}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/editableList/editableList.css b/force-app/main/default/lwc/editableList/editableList.css
new file mode 100644
index 0000000..4b57e95
--- /dev/null
+++ b/force-app/main/default/lwc/editableList/editableList.css
@@ -0,0 +1,3 @@
+.table-container {
+ height: var(--lwc-sizeMedium, 320px);
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/editableList/editableList.html b/force-app/main/default/lwc/editableList/editableList.html
new file mode 100644
index 0000000..e9e4729
--- /dev/null
+++ b/force-app/main/default/lwc/editableList/editableList.html
@@ -0,0 +1,15 @@
+<template>
+ <template if:true={accounts.data}>
+ <div class="table-container">
+ <lightning-datatable
+ key-field="id"
+ data={accounts.data}
+ columns={columns}
+ >
+ </lightning-datatable>
+ </div>
+ </template>
+ <template if:true={accounts.error}>
+ <c-error-panel errors={accounts.error}></c-error-panel>
+ </template>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/editableList/editableList.js b/force-app/main/default/lwc/editableList/editableList.js
new file mode 100644
index 0000000..559af8a
--- /dev/null
+++ b/force-app/main/default/lwc/editableList/editableList.js
@@ -0,0 +1,40 @@
+import { LightningElement, wire } from 'lwc';
+import getAccounts from '@salesforce/apex/ListControllerLwc.getAccounts';
+import ACCOUNT_NAME_FIELD from '@salesforce/schema/Account.Name';
+import ACCOUNT_TYPE_FIELD from '@salesforce/schema/Account.Type';
+import ACCOUNT_PHONE_FIELD from '@salesforce/schema/Account.Phone';
+import ACCOUNT_EMPLOYEES_FIELD from '@salesforce/schema/Account.NumberOfEmployees';
+
+const COLUMNS = [
+ {
+ label: 'Account Name',
+ fieldName: ACCOUNT_NAME_FIELD.fieldApiName,
+ type: 'text',
+ editable: 'true'
+ },
+ {
+ label: 'Type',
+ fieldName: ACCOUNT_TYPE_FIELD.fieldApiName,
+ type: 'text',
+ editable: 'true'
+ },
+ {
+ label: 'Phone',
+ fieldName: ACCOUNT_PHONE_FIELD.fieldApiName,
+ type: 'phone',
+ editable: 'true'
+ },
+ {
+ label: 'Employees',
+ fieldName: ACCOUNT_EMPLOYEES_FIELD.fieldApiName,
+ type: 'number',
+ editable: 'true'
+ }
+];
+
+export default class List extends LightningElement {
+ columns = COLUMNS;
+
+ @wire(getAccounts)
+ accounts;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/editableList/editableList.js-meta.xml b/force-app/main/default/lwc/editableList/editableList.js-meta.xml
new file mode 100644
index 0000000..b9a3113
--- /dev/null
+++ b/force-app/main/default/lwc/editableList/editableList.js-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>false</isExposed>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/editableListWrapper/editableListWrapper.html b/force-app/main/default/lwc/editableListWrapper/editableListWrapper.html
new file mode 100644
index 0000000..de6b6e5
--- /dev/null
+++ b/force-app/main/default/lwc/editableListWrapper/editableListWrapper.html
@@ -0,0 +1,18 @@
+<template>
+ <c-example-wrapper
+ icon-name="custom:custom62"
+ title="Editable List"
+ lwc="editableList"
+ visualforce="editableList"
+ visualforce-height="420px"
+ >
+ <c-editable-list slot="lwc"></c-editable-list>
+
+ <!-- prettier-ignore -->
+ <p>
+ Use <a target="_blank" href="https://developer.salesforce.com/docs/component-library/bundle/lightning-datatable">
+ lightning-datatable</a> with inline editing enabled on its columns to create an editable table.
+ <b> Note:</b> Check in the documentation which field types are supported.
+ </p>
+ </c-example-wrapper>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/editableListWrapper/editableListWrapper.js b/force-app/main/default/lwc/editableListWrapper/editableListWrapper.js
new file mode 100644
index 0000000..e72dc47
--- /dev/null
+++ b/force-app/main/default/lwc/editableListWrapper/editableListWrapper.js
@@ -0,0 +1,3 @@
+import { LightningElement } from 'lwc';
+
+export default class EditableListWrapper extends LightningElement {}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/editableListWrapper/editableListWrapper.js-meta.xml b/force-app/main/default/lwc/editableListWrapper/editableListWrapper.js-meta.xml
new file mode 100644
index 0000000..6646900
--- /dev/null
+++ b/force-app/main/default/lwc/editableListWrapper/editableListWrapper.js-meta.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__AppPage</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/errorPanel/errorPanel.js b/force-app/main/default/lwc/errorPanel/errorPanel.js
new file mode 100644
index 0000000..5dafd3c
--- /dev/null
+++ b/force-app/main/default/lwc/errorPanel/errorPanel.js
@@ -0,0 +1,28 @@
+import { LightningElement, api } from 'lwc';
+import { reduceErrors } from 'c/ldsUtils';
+import noDataIllustration from './templates/noDataIllustration.html';
+import inlineMessage from './templates/inlineMessage.html';
+
+export default class ErrorPanel extends LightningElement {
+ /** Single or array of LDS errors */
+ @api errors;
+ /** Generic / user-friendly message */
+ @api friendlyMessage = 'Error retrieving data';
+ /** Type of error message **/
+ @api type;
+
+ viewDetails = false;
+
+ get errorMessages() {
+ return reduceErrors(this.errors);
+ }
+
+ handleShowDetailsClick() {
+ this.viewDetails = !this.viewDetails;
+ }
+
+ render() {
+ if (this.type === 'inlineMessage') return inlineMessage;
+ return noDataIllustration;
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/errorPanel/errorPanel.js-meta.xml b/force-app/main/default/lwc/errorPanel/errorPanel.js-meta.xml
new file mode 100644
index 0000000..b9a3113
--- /dev/null
+++ b/force-app/main/default/lwc/errorPanel/errorPanel.js-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>false</isExposed>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/errorPanel/templates/inlineMessage.html b/force-app/main/default/lwc/errorPanel/templates/inlineMessage.html
new file mode 100644
index 0000000..3af8135
--- /dev/null
+++ b/force-app/main/default/lwc/errorPanel/templates/inlineMessage.html
@@ -0,0 +1,19 @@
+<template>
+ <div class="slds-var-m-vertical_small">
+ <span class="slds-text-color_destructive">
+ {friendlyMessage}.
+ <template if:true={errorMessages.length}>
+ <a onclick={handleShowDetailsClick}> Show details.</a>
+ </template>
+ </span>
+ <template if:true={errorMessages.length}>
+ <template if:true={viewDetails}>
+ <template for:each={errorMessages} for:item="message">
+ <p class="slds-text-body_regular" key={message}>
+ {message}
+ </p>
+ </template>
+ </template>
+ </template>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/errorPanel/templates/noDataIllustration.html b/force-app/main/default/lwc/errorPanel/templates/noDataIllustration.html
new file mode 100644
index 0000000..d66a9f9
--- /dev/null
+++ b/force-app/main/default/lwc/errorPanel/templates/noDataIllustration.html
@@ -0,0 +1,257 @@
+<template>
+ <div
+ class="slds-illustration slds-illustration_small slds-var-m-vertical_small"
+ >
+ <svg
+ class="slds-illustration__svg"
+ viewBox="0 0 454 272"
+ aria-hidden="true"
+ xmlns="http://www.w3.org/2000/svg"
+ xlink="http://www.w3.org/1999/xlink"
+ >
+ <g fill="none" fill-rule="evenodd" transform="translate(-65 -74)">
+ <g transform="translate(77 180)">
+ <polyline
+ vector-effect="non-scaling-stroke"
+ class="slds-illustration__stroke-secondary"
+ stroke-linecap="round"
+ stroke-linejoin="round"
+ stroke-width="3"
+ points="21 74 111.5 0 177.5 54"
+ ></polyline>
+ <polyline
+ vector-effect="non-scaling-stroke"
+ class="slds-illustration__stroke-secondary"
+ stroke-linecap="round"
+ stroke-linejoin="round"
+ stroke-width="3"
+ points="160 37 181.5 19 249 74"
+ ></polyline>
+ <path
+ vector-effect="non-scaling-stroke"
+ class="slds-illustration__fill-secondary"
+ d="M5.83623454,54.8238008 C6.47896445,52.7119739 7.52041887,52.7099477 8.16376546,54.8238008 L14,74 L0,74 L5.83623454,54.8238008 Z"
+ ></path>
+ <path
+ vector-effect="non-scaling-stroke"
+ class="slds-illustration__fill-secondary"
+ d="M14.9699006 61.8628727C15.5388088 59.729467 16.4627585 59.7353443 17.0300994 61.8628727L20 73 12 73 14.9699006 61.8628727zM239.734375 56.5589921C240.43336 54.4620359 241.506942 54.4857215 242.128332 56.5984458L246 69.7621171 237 64.7621171 239.734375 56.5589921z"
+ ></path>
+ <path
+ vector-effect="non-scaling-stroke"
+ class="slds-illustration__fill-secondary"
+ d="M247.921591,53.8514618 C248.51718,51.7243582 249.484912,51.7318303 250.077772,53.8491859 L254.357732,69.1347569 L242,75 L247.921591,53.8514618 Z"
+ transform="matrix(-1 0 0 1 496.358 0)"
+ ></path>
+ </g>
+ <g transform="matrix(-1 0 0 1 496 216)">
+ <path
+ vector-effect="non-scaling-stroke"
+ class="slds-illustration__fill-secondary"
+ d="M5.9215907,18.8514618 C6.51717971,16.7243582 7.48113835,16.7183512 8.0784093,18.8514618 L14,40 L0,40 L5.9215907,18.8514618 Z"
+ transform="matrix(-1 0 0 1 14 0)"
+ ></path>
+ <path
+ vector-effect="non-scaling-stroke"
+ class="slds-illustration__fill-secondary"
+ d="M123.136984,25.2363093 C123.613615,23.448945 124.38595,23.4473111 124.863437,25.237887 L126.693756,32.1015868 L120,37 L123.136984,25.2363093 Z"
+ transform="matrix(-1 0 0 1 246.694 0)"
+ ></path>
+ <polyline
+ vector-effect="non-scaling-stroke"
+ class="slds-illustration__stroke-secondary"
+ stroke-linecap="round"
+ stroke-linejoin="round"
+ stroke-width="3"
+ points="13 37 59.5 0 92.5 27"
+ ></polyline>
+ <polyline
+ vector-effect="non-scaling-stroke"
+ class="slds-illustration__stroke-secondary"
+ stroke-linecap="round"
+ stroke-linejoin="round"
+ stroke-width="3"
+ points="83 17 92.5 9 127 38"
+ ></polyline>
+ </g>
+ <g
+ class="slds-illustration__stroke-primary"
+ stroke-linecap="round"
+ stroke-width="3"
+ transform="translate(67 253)"
+ >
+ <path
+ vector-effect="non-scaling-stroke"
+ d="M0 1.5L450 1.5M284 2L419 61M282 2L65 91M443 1.5L449 1.5"
+ ></path>
+ </g>
+ <g transform="translate(73 163)">
+ <polygon
+ vector-effect="non-scaling-stroke"
+ fill="#FFF"
+ points="20.906 .73 24.63 2.34 27.093 9.155 11.046 19.877 .131 19.877"
+ transform="translate(80 22)"
+ ></polygon>
+ <g
+ class="slds-illustration__stroke-secondary"
+ stroke-linecap="round"
+ stroke-width="3"
+ >
+ <path
+ vector-effect="non-scaling-stroke"
+ d="M44,17.5 L63,17.5 C62.2789714,12.0723971 64.081543,7.53186978 68.4077148,3.87841797 C73.3754883,-0.195556641 79.2734375,0.717773438 82.440918,2.12353516 C85.6083984,3.52929687 87.9606934,5.46069336 89.5913086,9.10524041 C90.2822266,10.6397351 90.7517904,11.9379883 91,13"
+ ></path>
+ <path
+ vector-effect="non-scaling-stroke"
+ d="M83 20.5C84.0558268 16.8461914 86.2227376 14.4572754 89.5007324 13.333252 94.4177246 11.6472168 99.0800781 13.8925781 100.942383 16.1518555 102.804687 18.4111328 103.39502 20.2260742 103.746582 22.1201172 103.980957 23.3828125 104.06543 24.8427734 104 26.5 108.141764 26.3313802 110.918945 27.1647135 112.331543 29 114.040039 31.1936035 114.215332 33.817627 113.593018 35.75 112.970703 37.682373 110.894531 40.5 107 40.5L28 40.5M18 27.5L83.0004985 27.5M0 27.5L8 27.5"
+ ></path>
+ </g>
+ </g>
+ <g
+ class="slds-illustration__stroke-secondary"
+ stroke-linecap="round"
+ stroke-width="3"
+ transform="translate(292 139)"
+ >
+ <path
+ vector-effect="non-scaling-stroke"
+ d="M44,17.5 L63,17.5 C62.2789714,12.0723971 64.081543,7.53186978 68.4077148,3.87841797 C73.3754883,-0.195556641 79.2734375,0.717773438 82.440918,2.12353516 C85.6083984,3.52929687 87.9606934,5.46069336 89.5913086,9.10524041 C90.2822266,10.6397351 90.7517904,11.9379883 91,13"
+ ></path>
+ <path
+ vector-effect="non-scaling-stroke"
+ d="M83 20.5C84.0558268 16.8461914 86.2227376 14.4572754 89.5007324 13.333252 94.4177246 11.6472168 99.0800781 13.8925781 100.942383 16.1518555 102.804687 18.4111328 103.39502 20.2260742 103.746582 22.1201172 103.980957 23.3828125 104.06543 24.8427734 104 26.5 108.141764 26.3313802 110.918945 27.1647135 112.331543 29 114.040039 31.1936035 114.215332 33.817627 113.593018 35.75 112.970703 37.682373 110.894531 40.5 107 40.5L28 40.5M18 27.5L83.0004985 27.5M0 27.5L8 27.5"
+ ></path>
+ </g>
+ <g transform="translate(204.5 228.5)">
+ <path
+ vector-effect="non-scaling-stroke"
+ class="slds-illustration__fill-secondary"
+ d="M18.9209988,1.95433401 L33.259296,51.443436 C33.5666778,52.5043744 32.9557995,53.613617 31.8948612,53.9209988 C31.7139843,53.9734036 31.5266126,54 31.3382972,54 L2.6617028,54 C1.5571333,54 0.661702805,53.1045695 0.661702805,52 C0.661702805,51.8116846 0.688299176,51.6243129 0.74070397,51.443436 L15.0790012,1.95433401 C15.386383,0.893395645 16.4956256,0.282517358 17.556564,0.589899164 C18.2152102,0.780726338 18.7301717,1.29568777 18.9209988,1.95433401 Z"
+ ></path>
+ <g
+ class="slds-illustration__stroke-primary"
+ stroke-linecap="round"
+ stroke-linejoin="round"
+ stroke-width="3"
+ >
+ <polygon points="17 .324 34 54 0 54"></polygon>
+ <path
+ vector-effect="non-scaling-stroke"
+ d="M17,6.32394366 C17,42.1378022 17,60.4711356 17,61.3239437 C17,60.4711356 17,42.1378022 17,6.32394366 Z"
+ ></path>
+ <path
+ vector-effect="non-scaling-stroke"
+ d="M17,29.3239437 C22.3333333,35.7851611 25,39.1184944 25,39.3239437 C25,39.1184944 22.3333333,35.7851611 17,29.3239437 Z"
+ transform="matrix(-1 0 0 1 42 0)"
+ ></path>
+ </g>
+ </g>
+ <g transform="translate(439.5 227.5)">
+ <path
+ vector-effect="non-scaling-stroke"
+ class="slds-illustration__fill-secondary"
+ d="M18.9209988,1.95433401 L33.259296,51.443436 C33.5666778,52.5043744 32.9557995,53.613617 31.8948612,53.9209988 C31.7139843,53.9734036 31.5266126,54 31.3382972,54 L2.6617028,54 C1.5571333,54 0.661702805,53.1045695 0.661702805,52 C0.661702805,51.8116846 0.688299176,51.6243129 0.74070397,51.443436 L15.0790012,1.95433401 C15.386383,0.893395645 16.4956256,0.282517358 17.556564,0.589899164 C18.2152102,0.780726338 18.7301717,1.29568777 18.9209988,1.95433401 Z"
+ ></path>
+ <g
+ class="slds-illustration__stroke-primary"
+ stroke-linecap="round"
+ stroke-linejoin="round"
+ stroke-width="3"
+ >
+ <polygon
+ vector-effect="non-scaling-stroke"
+ points="17 -4.676 34 54 0 54"
+ ></polygon>
+ <path
+ vector-effect="non-scaling-stroke"
+ d="M17,1.32394366 C17,40.3936076 17,60.3936076 17,61.3239437 C17,60.3936076 17,40.3936076 17,1.32394366 Z"
+ ></path>
+ <path
+ vector-effect="non-scaling-stroke"
+ d="M17,29.3239437 C22.3333333,35.7851611 25,39.1184944 25,39.3239437 C25,39.1184944 22.3333333,35.7851611 17,29.3239437 Z"
+ transform="matrix(-1 0 0 1 42 0)"
+ ></path>
+ </g>
+ </g>
+ <g transform="translate(141.852 213.5)">
+ <path
+ vector-effect="non-scaling-stroke"
+ class="slds-illustration__fill-secondary"
+ d="M25.6478873,0 L50.8997802,86.4391718 C51.2095171,87.4994249 50.6011034,88.6100213 49.5408502,88.9197582 C49.3586621,88.9729817 49.1698252,89 48.980022,89 L2.31575269,89 C1.21118319,89 0.315752686,88.1045695 0.315752686,87 C0.315752686,86.8101968 0.342770948,86.6213599 0.395994453,86.4391718 L25.6478873,0 Z"
+ transform="translate(1)"
+ ></path>
+ <g
+ class="slds-illustration__stroke-primary"
+ stroke-linecap="round"
+ stroke-linejoin="round"
+ stroke-width="3"
+ transform="translate(0 2)"
+ >
+ <polygon
+ vector-effect="non-scaling-stroke"
+ points="26.648 0 52.648 87 .648 87"
+ ></polygon>
+ <path
+ vector-effect="non-scaling-stroke"
+ d="M26.6478873 6C26.6478873 64.4972948 26.6478873 94.4972948 26.6478873 96 26.6478873 94.4972948 26.6478873 64.4972948 26.6478873 6zM15.6478873 42C22.9812207 50.078692 26.6478873 52.7453587 26.6478873 53 26.6478873 52.7453587 22.9812207 50.078692 15.6478873 42zM27.6478873 68C36.9812207 57.078692 41.6478873 51.7453587 41.6478873 52 41.6478873 51.7453587 36.9812207 57.078692 27.6478873 68z"
+ ></path>
+ </g>
+ </g>
+ <g transform="translate(168 57)">
+ <circle
+ vector-effect="non-scaling-stroke"
+ cx="64"
+ cy="64"
+ r="23"
+ class="slds-illustration__fill-secondary"
+ ></circle>
+ <path
+ vector-effect="non-scaling-stroke"
+ class="slds-illustration__stroke-secondary"
+ stroke-dasharray="135 1 1 18"
+ stroke-linecap="round"
+ stroke-linejoin="round"
+ stroke-width="3"
+ d="M64,109 C88.8528137,109 109,88.8528137 109,64 C109,39.1471863 88.8528137,19 64,19 C39.1471863,19 19,39.1471863 19,64 C19,88.8528137 39.1471863,109 64,109 Z"
+ transform="rotate(-130 64 64)"
+ ></path>
+ <path
+ vector-effect="non-scaling-stroke"
+ class="slds-illustration__stroke-secondary"
+ stroke-dasharray="107 10"
+ stroke-linecap="round"
+ stroke-linejoin="round"
+ stroke-width="3"
+ d="M64,97 C82.2253967,97 97,82.2253967 97,64 C97,45.7746033 82.2253967,31 64,31 C45.7746033,31 31,45.7746033 31,64 C31,82.2253967 45.7746033,97 64,97 Z"
+ transform="rotate(150 64 64)"
+ ></path>
+ <g
+ class="slds-illustration__stroke-primary"
+ stroke-width="3"
+ transform="translate(41 41)"
+ >
+ <circle
+ vector-effect="non-scaling-stroke"
+ cx="23"
+ cy="23"
+ r="23"
+ ></circle>
+ </g>
+ </g>
+ </g>
+ </svg>
+ <div class="slds-text-longform">
+ <h3 class="slds-text-heading_medium">{friendlyMessage}</h3>
+ <template if:true={errorMessages.length}>
+ <a onclick={handleShowDetailsClick}>Show details</a>
+ <template if:true={viewDetails}>
+ <template for:each={errorMessages} for:item="message">
+ <p class="slds-text-body_regular" key={message}>
+ {message}
+ </p>
+ </template>
+ </template>
+ </template>
+ </div>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/errorPopover/errorPopover.html b/force-app/main/default/lwc/errorPopover/errorPopover.html
new file mode 100644
index 0000000..91035c1
--- /dev/null
+++ b/force-app/main/default/lwc/errorPopover/errorPopover.html
@@ -0,0 +1,43 @@
+<template>
+ <template if:true={showPopover}>
+ <section
+ style="position: absolute; left: -50%; bottom: 150%"
+ aria-describedby="dialog-body-id-5"
+ aria-labelledby="dialog-heading-id-2"
+ class="slds-popover slds-popover_error slds-nubbin_bottom-left"
+ role="dialog"
+ >
+ <div class="slds-float_right slds-popover__close">
+ <lightning-button-icon
+ variant="bare"
+ icon-class="slds-button_icon-inverse"
+ size="small"
+ icon-name="utility:close"
+ alternative-text="Close dialog"
+ onclick={handleCloseButtonIconClick}
+ ></lightning-button-icon>
+ </div>
+ <header class="slds-popover__header">
+ <div
+ class="slds-media slds-media_center slds-has-flexi-truncate"
+ >
+ <lightning-icon
+ variant="inverse"
+ class="slds-var-m-right_x-small"
+ size="x-small"
+ icon-name="utility:error"
+ alternative-text="Error"
+ ></lightning-icon>
+ <h2
+ class="slds-truncate slds-text-heading_medium"
+ id="dialog-heading-id-2"
+ title="Resolve error"
+ >
+ Resolve error
+ </h2>
+ </div>
+ </header>
+ <div class="slds-popover__body" id="dialog-body-id-5">{errors}</div>
+ </section>
+ </template>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/errorPopover/errorPopover.js b/force-app/main/default/lwc/errorPopover/errorPopover.js
new file mode 100644
index 0000000..8be497a
--- /dev/null
+++ b/force-app/main/default/lwc/errorPopover/errorPopover.js
@@ -0,0 +1,15 @@
+import { LightningElement, api } from 'lwc';
+
+export default class ErrorPopover extends LightningElement {
+ @api errors;
+ showPopover = true;
+
+ handleCloseButtonIconClick() {
+ this.showPopover = false;
+ }
+
+ @api
+ toggle() {
+ this.showPopover = !this.showPopover;
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/errorPopover/errorPopover.js-meta.xml b/force-app/main/default/lwc/errorPopover/errorPopover.js-meta.xml
new file mode 100644
index 0000000..b9a3113
--- /dev/null
+++ b/force-app/main/default/lwc/errorPopover/errorPopover.js-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>false</isExposed>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/exampleWrapper/__mocks__/exampleWrapper.js b/force-app/main/default/lwc/exampleWrapper/__mocks__/exampleWrapper.js
new file mode 100644
index 0000000..6c074a4
--- /dev/null
+++ b/force-app/main/default/lwc/exampleWrapper/__mocks__/exampleWrapper.js
@@ -0,0 +1,15 @@
+import { LightningElement, api } from 'lwc';
+import exampleWrapper from './exampleWrapperTemplate.html';
+
+export default class ExampleWrapper extends LightningElement {
+ @api iconName;
+ @api lwc;
+ @api recordId;
+ @api title;
+ @api visualforce;
+ @api visualforceHeight;
+
+ render() {
+ return exampleWrapper;
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/exampleWrapper/__mocks__/exampleWrapperTemplate.html b/force-app/main/default/lwc/exampleWrapper/__mocks__/exampleWrapperTemplate.html
new file mode 100644
index 0000000..f1dd0e2
--- /dev/null
+++ b/force-app/main/default/lwc/exampleWrapper/__mocks__/exampleWrapperTemplate.html
@@ -0,0 +1,3 @@
+<template>
+ <slot name="lwc"></slot>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/exampleWrapper/exampleWrapper.css b/force-app/main/default/lwc/exampleWrapper/exampleWrapper.css
new file mode 100644
index 0000000..3c6b04f
--- /dev/null
+++ b/force-app/main/default/lwc/exampleWrapper/exampleWrapper.css
@@ -0,0 +1,3 @@
+iframe {
+ border: none;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/exampleWrapper/exampleWrapper.html b/force-app/main/default/lwc/exampleWrapper/exampleWrapper.html
new file mode 100644
index 0000000..6150bb9
--- /dev/null
+++ b/force-app/main/default/lwc/exampleWrapper/exampleWrapper.html
@@ -0,0 +1,36 @@
+<template>
+ <lightning-card title={title} icon-name={iconName}>
+ <lightning-layout multiple-rows="true" vertical-align="center">
+ <lightning-layout-item
+ padding="horizontal-medium"
+ size="6"
+ small-device-size="12"
+ medium-device-size="12"
+ large-device-size="6"
+ >
+ <iframe
+ title={visualforceIframeTitle}
+ src={visualforceUrl}
+ width="100%"
+ height={visualforceHeight}
+ ></iframe>
+ </lightning-layout-item>
+ <lightning-layout-item
+ padding="horizontal-medium"
+ size="6"
+ small-device-size="12"
+ medium-device-size="12"
+ large-device-size="6"
+ >
+ <slot name="lwc"></slot>
+ </lightning-layout-item>
+ </lightning-layout>
+ <c-view-vf-lwc-source
+ visualforce-source={visualforceSource}
+ lwc-source={lwcSource}
+ slot="footer"
+ >
+ <slot></slot>
+ </c-view-vf-lwc-source>
+ </lightning-card>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/exampleWrapper/exampleWrapper.js b/force-app/main/default/lwc/exampleWrapper/exampleWrapper.js
new file mode 100644
index 0000000..669e8f4
--- /dev/null
+++ b/force-app/main/default/lwc/exampleWrapper/exampleWrapper.js
@@ -0,0 +1,28 @@
+import { LightningElement, api } from 'lwc';
+
+export default class ExampleWrapper extends LightningElement {
+ @api iconName;
+ @api lwc;
+ @api recordId;
+ @api title;
+ @api visualforce;
+ @api visualforceHeight;
+
+ get lwcSource() {
+ return `lwc/${this.lwc}`;
+ }
+
+ get visualforceSource() {
+ return `pages/${this.visualforce}.page`;
+ }
+
+ get visualforceUrl() {
+ if (this.recordId)
+ return `/apex/${this.visualforce}?id=${this.recordId}`;
+ return `/apex/${this.visualforce}`;
+ }
+
+ get visualforceIframeTitle() {
+ return `Wrapper for ${this.visualforce} page`;
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/exampleWrapper/exampleWrapper.js-meta.xml b/force-app/main/default/lwc/exampleWrapper/exampleWrapper.js-meta.xml
new file mode 100644
index 0000000..b9a3113
--- /dev/null
+++ b/force-app/main/default/lwc/exampleWrapper/exampleWrapper.js-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>false</isExposed>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/gzwbtest/gzwbtest.html b/force-app/main/default/lwc/gzwbtest/gzwbtest.html
new file mode 100644
index 0000000..971b982
--- /dev/null
+++ b/force-app/main/default/lwc/gzwbtest/gzwbtest.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="slds-is-relative">
+ <lightning-spinner variant="brand" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/gzwbtest/gzwbtest.js b/force-app/main/default/lwc/gzwbtest/gzwbtest.js
new file mode 100644
index 0000000..7955064
--- /dev/null
+++ b/force-app/main/default/lwc/gzwbtest/gzwbtest.js
@@ -0,0 +1,3 @@
+import { LightningElement } from 'lwc';
+
+export default class Gzwbtest extends LightningElement {}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/gzwbtest/gzwbtest.js-meta.xml b/force-app/main/default/lwc/gzwbtest/gzwbtest.js-meta.xml
new file mode 100644
index 0000000..eac275d
--- /dev/null
+++ b/force-app/main/default/lwc/gzwbtest/gzwbtest.js-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>55.0</apiVersion>
+ <isExposed>false</isExposed>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/interoperability/interoperability.css b/force-app/main/default/lwc/interoperability/interoperability.css
new file mode 100644
index 0000000..a432dc9
--- /dev/null
+++ b/force-app/main/default/lwc/interoperability/interoperability.css
@@ -0,0 +1,12 @@
+div {
+ border: 1px solid black;
+ padding: 10px;
+}
+h1 {
+ font-weight: bold;
+}
+lightning-button {
+ margin-top: 10px;
+ margin-bottom: 10px;
+ display: block;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/interoperability/interoperability.html b/force-app/main/default/lwc/interoperability/interoperability.html
new file mode 100644
index 0000000..fa36099
--- /dev/null
+++ b/force-app/main/default/lwc/interoperability/interoperability.html
@@ -0,0 +1,11 @@
+<template>
+ <div>
+ <h1>LWC</h1>
+ <lightning-button
+ label="Press me and send an event up!"
+ onclick={handleClick}
+ ></lightning-button>
+ <p class="label">{label}</p>
+ <p class="message">{message}</p>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/interoperability/interoperability.js b/force-app/main/default/lwc/interoperability/interoperability.js
new file mode 100644
index 0000000..a0780e0
--- /dev/null
+++ b/force-app/main/default/lwc/interoperability/interoperability.js
@@ -0,0 +1,21 @@
+import { LightningElement, api } from 'lwc';
+
+export default class Interoperability extends LightningElement {
+ @api label = 'This label property has its initial value';
+ timesInvoked = 0;
+
+ handleClick() {
+ this.dispatchEvent(
+ new CustomEvent('buttonclicked', { bubbles: true, composed: true })
+ );
+ }
+
+ @api
+ doWhatever() {
+ this.timesInvoked++;
+ }
+
+ get message() {
+ return `LWC Method invoked ${this.timesInvoked} times`;
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/interoperability/interoperability.js-meta.xml b/force-app/main/default/lwc/interoperability/interoperability.js-meta.xml
new file mode 100644
index 0000000..b9a3113
--- /dev/null
+++ b/force-app/main/default/lwc/interoperability/interoperability.js-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>false</isExposed>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/inventoryEditingLWC/inventoryEditingLWC.html b/force-app/main/default/lwc/inventoryEditingLWC/inventoryEditingLWC.html
new file mode 100644
index 0000000..b14502e
--- /dev/null
+++ b/force-app/main/default/lwc/inventoryEditingLWC/inventoryEditingLWC.html
@@ -0,0 +1,67 @@
+<template>
+ <div style="border: 1px solid #D4D4D4;border-radius:5px;margin-bottom:7px;">
+ <div style="border-top: 3px solid #51606E;border-bottom: 1px solid #D4D4D4;padding:3px;">
+ <p style="font-size: 16px;"><strong>缁忛攢鍟嗗簱瀛樹笂涓嬮檺缂栬緫</strong></p>
+
+ <table class="slds-table slds-table_cell-buffer slds-table_bordered">
+ <thead>
+ <tr class="">
+ <!-- <th class="slds-size_3-of-10" scope="col">
+ <div class="slds-truncate" title="Name">S.No</div>
+ </th> -->
+ <th class="slds-size_3-of-10" scope="col" align="center">
+ <div class="slds-truncate" title="Name">浜у搧鍨嬪彿</div>
+ </th>
+ <th class="slds-size_3-of-10" scope="col">
+ <div class="slds-truncate" title="First Name">
+ 搴撳瓨涓嬮檺
+ </div>
+ </th>
+ <th class="slds-size_3-of-10" scope="col">
+ <div class="slds-truncate" title="Last Name">搴撳瓨涓婇檺</div>
+ </th>
+ <th class="slds-size_3-of-10" scope="col">
+ <div class="slds-truncate" title="Last Name">鎿嶄綔</div>
+ </th>
+ </tr>
+ </thead>
+ <tbody>
+ <template for:each = {invRecords} for:item = "inv" for:index="indexVar">
+ <tr key={inv.key} class="slds-hint-parent">
+ <td class="slds-size_3-of-10" data-label="Prospecting">
+ <div title="Prospecting">
+ <lightning-input key={inv.key} data-id={inv.key} name="input1" label="productNumber" value="" variant="label-hidden" onchange={handleProductChange}></lightning-input>
+ </div>
+ </td>
+ <td class="slds-size_3-of-10" data-label="Prospecting">
+ <div title="Prospecting">
+ <lightning-input key={inv.key} data-id={inv.key} name="input1" label="inventory1" value={inv.inventory2} variant="label-hidden" onchange={handleinv1Change}></lightning-input>
+ </div>
+ </td>
+ <td class="slds-size_3-of-10" data-label="Prospecting">
+ <div title="Prospecting">
+ <lightning-input key={inv.key} data-id={inv.key} name="input1" label="inventory2" value={inv.inventory2} variant="label-hidden" onchange={handleinv2Change}></lightning-input>
+ </div>
+ </td>
+ <td class="slds-size_1-of-10" data-label="Prospecting">
+ <a name={indexVar} data-id={inv.key} onclick={removeRow}>
+ <lightning-icon icon-name="utility:delete" alternative-text="delete" size="small"></lightning-icon>
+ </a>
+ </td>
+ </tr>
+ </template>
+ <tr>
+ <td></td>
+ <td>
+ <lightning-button label="琛屽鍔�" onclick={addRow} class="slds-m-left_x-small"></lightning-button>
+ </td>
+ <td>
+ <lightning-button label="淇濆瓨" onclick={handleClick} class="slds-m-left_x-small"></lightning-button>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ </div>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/inventoryEditingLWC/inventoryEditingLWC.js b/force-app/main/default/lwc/inventoryEditingLWC/inventoryEditingLWC.js
new file mode 100644
index 0000000..2f064df
--- /dev/null
+++ b/force-app/main/default/lwc/inventoryEditingLWC/inventoryEditingLWC.js
@@ -0,0 +1,76 @@
+import { LightningElement, track,api } from 'lwc';
+import Product_Number_FIELD from '@salesforce/schema/Dealer_Stock__c.Product_Code__c';
+import ONE_FIELD from '@salesforce/schema/Dealer_Stock__c.Product_Code__c';
+import TWO_FIELD from '@salesforce/schema/Dealer_Stock__c.Product_Code__c';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+export default class InventoryEditingLWC extends LightningElement {
+ // @track invRecord = {ProductNumber : Product_Number_FIELD,Inventory1: ONE_FIELD,Inventory2 : TWO_FIELD,key : Math.random().toString(36).substring(2, 15)};
+ @track invRecord = {ProductNumber : Product_Number_FIELD,Inventory1: ONE_FIELD,Inventory2 : TWO_FIELD,key : Math.random().toString(36).substring(2, 15)};
+ @track invRecords = [];
+ toSaveLabel = 'Save';
+
+ connectedCallback(){
+ console.log(' === connectedCallback === ');
+ this.inventoryTempRecords();
+ }
+ inventoryTempRecords(){
+ console.log('===>鍒濆鍖�');
+ this.invRecord = [];
+ // for(var i=0; i < 1 ; i++){
+ // this.invRecords.push({ProductNumber : Product_Number_FIELD,Inventory1: ONE_FIELD,Inventory2 : TWO_FIELD,key : Math.random().toString(36).substring(2, 15)});
+ // }
+ }
+
+ addRow(){
+ console.log('=====>杩涘叆琛岄」鐩�');
+ const len = this.invRecords.length;
+ this.invRecords.push({ProductNumber : Product_Number_FIELD,Inventory1: ONE_FIELD,Inventory2 : TWO_FIELD,key : Math.random().toString(36).substring(2, 15)});
+ }
+ removeRow(event){
+ const indexPos = event.currentTarget.name;
+ let remList = [];
+ remList = this.invRecords;
+ remList.splice(indexPos,1);
+ this.invRecords = remList;
+ }
+ handleClick(){
+ console.log('淇濆瓨');
+ this.toSaveLabel = 'Saving...'
+ let toSaveList = this.invRecords.slice(0);;
+ toSaveList.forEach((element, index) => {
+ console.log( index + ' ==> ' + JSON.stringify(element.Name));
+ let eleType = typeof element.Name;
+ console.log( 'typeof ==> ' + eleType);
+ if(element.Name === '' || eleType=='object'){
+ toSaveList.splice(index);
+ }
+ });
+ // refreshApex(this.invRecord);
+
+ this.inventoryTempRecords();
+ console.log( 'Save ==> ' + JSON.stringify(toSaveList));
+ }
+
+ handleProductChange(event){
+
+ let foundelement = this.invRecords.find(ele => ele.key == event.target.dataset.id);
+ console.log('=====>foundelement'+foundelement);
+ foundelement.productNumber = event.target.value;
+ this.accRecords = [this.accRecords];
+ console.log(' ==>绗竴琛�' + JSON.stringify(this.invRecords));
+ }
+ handleinv1Change(event){
+ let foundelement = this.invRecords.find(ele => ele.key == event.target.dataset.id);
+ foundelement.inventory1 = event.target.value;
+ this.accRecords = [this.accRecords];
+ console.log(' ==> 绗簩' + JSON.stringify(this.invRecords));
+ }
+
+ handleinv2Change(event){
+ let foundelement = this.invRecords.find(ele => ele.key == event.target.dataset.id);
+ foundelement.inventory2 = event.target.value;
+ this.accRecords = [this.accRecords];
+ console.log(' ==>绗笁' + JSON.stringify(this.invRecords));
+ }
+
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/inventoryEditingLWC/inventoryEditingLWC.js-meta.xml b/force-app/main/default/lwc/inventoryEditingLWC/inventoryEditingLWC.js-meta.xml
new file mode 100644
index 0000000..9bdd440
--- /dev/null
+++ b/force-app/main/default/lwc/inventoryEditingLWC/inventoryEditingLWC.js-meta.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>56.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightningCommunity__Page</target>
+ <target>lightningCommunity__Default</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/inventoryViewLWC/inventoryViewLWC.html b/force-app/main/default/lwc/inventoryViewLWC/inventoryViewLWC.html
new file mode 100644
index 0000000..4d9c53a
--- /dev/null
+++ b/force-app/main/default/lwc/inventoryViewLWC/inventoryViewLWC.html
@@ -0,0 +1,117 @@
+<template>
+ <div style="border: 1px solid #D4D4D4;border-radius:5px;">
+ <div style="border-top: 3px solid #51606E;;border-bottom: 1px solid #D4D4D4;padding:3px;">
+ <p style="font-size: 19px;"><strong>搴撳瓨绠$悊</strong></p>
+ </div>
+ <div style="border-top: 3px solid #51606E;border-bottom: 1px solid #D4D4D4;padding:3px;text-align:center;">
+ <lightning-button label="搴撳瓨鐩樼偣" title="Non-primary action" onclick={handleClick} class="slds-m-left_x-small"></lightning-button>
+ <lightning-button label="杩囨湡搴撳瓨閿�瀛�" title="Non-primary action" onclick={handleClick} class="slds-m-left_x-small"></lightning-button>
+ <lightning-button label="鎷嗙洅" title="Non-primary action" onclick={handleClick} class="slds-m-left_x-small"></lightning-button>
+ <lightning-button label="鍙栨秷鎷嗙洅" title="Non-primary action" onclick={handleClick} class="slds-m-left_x-small"></lightning-button>
+ </div>
+ <div class = 'searchBlock' style="border-top: 3px solid #51606E;border-bottom: 1px solid #D4D4D4;padding:3px;text-align:center;height:80%px;">
+ <table>
+ <tr>
+ <td style="width:90px">娑堣�楀搧鍚嶇О</td>
+ <td style="width:90px"><lightning-input type="text" label="" style="width:70px"></lightning-input></td>
+ <td style="width:90px">绗�3鍒嗙被</td>
+ <td style="width:90px">
+ <lightning-combobox
+ name="progress"
+ value={value}
+ options={options}
+ onchange={handleChange} style="width:90px;"></lightning-combobox></td>
+ <td style="width:90px">绗�4鍒嗙被</td>
+ <td style="width:90px">
+ <lightning-combobox
+ name="progress"
+ value={value}
+ options={options}
+ onchange={handleChange} style="width:80px;"></lightning-combobox>
+ </td>
+ <td style="width:90px">绗�5鍒嗙被</td>
+ <td style="width:90px">
+ <lightning-combobox
+ name="progress"
+ value={value}
+ options={options}
+ onchange={handleChange} style="width:80px;"></lightning-combobox>
+ </td>
+
+ </tr>
+
+
+ </table>
+
+ </div>
+
+
+
+
+
+
+
+
+ <div style="border: 1px solid #D4D4D4;border-radius:5px;margin-bottom:7px;">
+ <div style="border-top: 3px solid #51606E;border-bottom: 1px solid #D4D4D4;padding:3px;">
+ <p style="font-size: 16px;"><strong>搴撳瓨璇︽儏</strong></p>
+ </div>
+ <div style="padding:10px;">
+ <table class="list" border="0" cellpadding="0" cellspacing="0" id="example">
+ <thead>
+ <tr class="headerRow">
+ <th>娑堣�楀搧鍚嶇О</th>
+ <th>绗�3鍒嗙被</th>
+ <th>绗�4鍒嗙被</th>
+ <th>绗�5鍒嗙被</th>
+ <th>瑙勬牸</th>
+ <th>鍗曚綅</th>
+ <th>娉ㄥ唽璇佺紪鐮佸彿</th>
+ <th>娉ㄥ唽璇佹晥鏈�</th>
+ <th>CFDA鐘舵��</th>
+ <th>浣跨敤鏈熼檺</th>
+ <th>鏈夋晥鏈熷唴搴撳瓨</th>
+ <th>杩囨湡搴撳瓨</th>
+ </tr>
+ </thead>
+ <tbody>
+ <template for:each={inventoryRcords} for:item="re">
+ <tr key={re.Prod.Name__c}>
+ <td>{re.Prod.Name__c}</td>
+ <td>{re.Prod.Category3__c}</td>
+ <td>{re.Prod.Category4__c}</td>
+ <td>{re.Prod.Category5__c}</td>
+ <td>{re.packing_list}</td>
+ <td>{re.BoxPiece}</td>
+ <td>{re.approbation_No}</td>
+ <td>{re.expiration_Date}</td>
+ <td>{re.guaranteeperiod}</td>
+ <td>{re.limitCount}</td>
+ <td>{re.overlimitCount}</td>
+ </tr>
+ </template>
+
+ </tbody>
+ </table>
+ <table style="width: 100%">
+ <tbody>
+ <tr>
+ <td width="20%">
+ <!-- 1-0 鍏� 0 -->
+ </td>
+ <td></td>
+ <td align="center" width="60%">
+ <lightning-button-icon style="margin: 3px;" icon-name="utility:jump_to_left"></lightning-button-icon>
+ <lightning-button-icon style="margin: 3px;" icon-name="utility:chevronleft"></lightning-button-icon>
+ <lightning-button-icon style="margin: 3px;" icon-name="utility:chevronright"></lightning-button-icon>
+ <lightning-button-icon style="margin: 3px;" icon-name="utility:jump_to_right"></lightning-button-icon>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </div>
+
+
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/inventoryViewLWC/inventoryViewLWC.js b/force-app/main/default/lwc/inventoryViewLWC/inventoryViewLWC.js
new file mode 100644
index 0000000..f91b741
--- /dev/null
+++ b/force-app/main/default/lwc/inventoryViewLWC/inventoryViewLWC.js
@@ -0,0 +1,51 @@
+import { LightningElement,track } from 'lwc';
+import oninit from '@salesforce/apex/LexInventoryViewController.oninit';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+import { NavigationMixin } from 'lightning/navigation';
+
+
+export default class InventoryViewLWC extends LightningElement {
+ @track inventoryRcords= [];
+ value = '鏃�';
+ connectedCallback() {
+ oninit().then(result=>{
+ if(result.result == 'Success'){
+ this.inventoryRcords = result.inventoryRcords;
+ }else{
+ console.log("Error:"+result.errorMsg);
+ const evt = new ShowToastEvent({
+ title : '鍒濆鍖栧け璐�',
+ message: result.errorMsg,
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+ }
+ });
+ }
+
+
+ get options() {
+ return [
+ { label: 'CDS', value: 'CDS' },
+ { label: 'ERCP', value: 'ERCP' },
+ { label: 'ESD', value: 'ESD' },
+ { label: 'EUS', value: 'EUS' },
+ { label: '澶栫ET', value: '澶栫ET' },
+ { label: '澶栧瀵肩', value: '澶栧瀵肩' },
+ { label: '鍩哄共', value: '鍩哄共' },
+ { label: '鍛煎惛绉慐T', value: '鍛煎惛绉慐T' },
+ { label: '鍛煎惛绉戣�楁潗', value: '鍛煎惛绉戣�楁潗' },
+ { label: '鍏夋簮', value: '鍏夋簮' },
+ { label: '鍙e灚', value: '鍙e灚' },
+ { label: '姝㈣', value: '姝㈣' },
+ { label: '鍏朵粬', value: '鍏朵粬' },
+ { label: '鍏朵粬ET', value: 'EUS' },
+ { label: '鐏场', value: '鐏场' },
+ { label: '妯″瀷', value: '妯″瀷' },
+ ];
+ }
+
+ handleChange(event) {
+ this.value = event.detail.value;
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/inventoryViewLWC/inventoryViewLWC.js-meta.xml b/force-app/main/default/lwc/inventoryViewLWC/inventoryViewLWC.js-meta.xml
new file mode 100644
index 0000000..d893635
--- /dev/null
+++ b/force-app/main/default/lwc/inventoryViewLWC/inventoryViewLWC.js-meta.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>56.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightningCommunity__Page</target>
+ <target>lightningCommunity__Default</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/jzlookup/jzlookup.js b/force-app/main/default/lwc/jzlookup/jzlookup.js
index 1cbe993..b2662e4 100644
--- a/force-app/main/default/lwc/jzlookup/jzlookup.js
+++ b/force-app/main/default/lwc/jzlookup/jzlookup.js
@@ -41,7 +41,7 @@
if (!this.isClick) {
this.InputValue = '';
}
- },3000)
+ },300)
}
@@ -62,7 +62,7 @@
setTimeout(()=>{
this.OnLoading(false);
- },3000);
+ },1000);
}
diff --git a/force-app/main/default/lwc/lWtTEST/lWtTEST.html b/force-app/main/default/lwc/lWtTEST/lWtTEST.html
new file mode 100644
index 0000000..af9fa97
--- /dev/null
+++ b/force-app/main/default/lwc/lWtTEST/lWtTEST.html
@@ -0,0 +1,3 @@
+<template>
+
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lWtTEST/lWtTEST.js b/force-app/main/default/lwc/lWtTEST/lWtTEST.js
new file mode 100644
index 0000000..5f6b46c
--- /dev/null
+++ b/force-app/main/default/lwc/lWtTEST/lWtTEST.js
@@ -0,0 +1,5 @@
+import { LightningElement, track, wire } from 'lwc';
+
+export default class lWtTEST extends LightningElement {
+
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lWtTEST/lWtTEST.js-meta.xml b/force-app/main/default/lwc/lWtTEST/lWtTEST.js-meta.xml
new file mode 100644
index 0000000..753bc90
--- /dev/null
+++ b/force-app/main/default/lwc/lWtTEST/lWtTEST.js-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lWtTEST">
+ <apiVersion>51.0</apiVersion>
+ <isExposed>true</isExposed>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/ldsUtils/__mocks__/ldsUtils.js b/force-app/main/default/lwc/ldsUtils/__mocks__/ldsUtils.js
new file mode 100644
index 0000000..9fa436c
--- /dev/null
+++ b/force-app/main/default/lwc/ldsUtils/__mocks__/ldsUtils.js
@@ -0,0 +1,3 @@
+export function reduceErrors() {
+ return '';
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/ldsUtils/ldsUtils.js b/force-app/main/default/lwc/ldsUtils/ldsUtils.js
new file mode 100644
index 0000000..d193f95
--- /dev/null
+++ b/force-app/main/default/lwc/ldsUtils/ldsUtils.js
@@ -0,0 +1,35 @@
+/**
+ * Reduces one or more LDS errors into a string[] of error messages.
+ * @param {FetchResponse|FetchResponse[]} errors
+ * @return {String[]} Error messages
+ */
+export function reduceErrors(errors) {
+ return (
+ // ensure errors is an array
+ []
+ .concat(errors)
+ // Remove null/undefined items
+ .filter((error) => !!error)
+ // Extract an error message
+ .map((error) => {
+ // UI API read errors
+ if (Array.isArray(error.body)) {
+ return error.body.map((e) => e.message);
+ }
+ // UI API DML, Apex and network errors
+ else if (error.body && typeof error.body.message === 'string') {
+ return error.body.message;
+ }
+ // JS errors
+ else if (typeof error.message === 'string') {
+ return error.message;
+ }
+ // Unknown error shape so try HTTP status text
+ return error.statusText;
+ })
+ // Flatten
+ .reduce((prev, curr) => prev.concat(curr), [])
+ // Remove empty strings
+ .filter((message) => !!message)
+ );
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/ldsUtils/ldsUtils.js-meta.xml b/force-app/main/default/lwc/ldsUtils/ldsUtils.js-meta.xml
new file mode 100644
index 0000000..b9a3113
--- /dev/null
+++ b/force-app/main/default/lwc/ldsUtils/ldsUtils.js-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>false</isExposed>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexASACEditor/lexASACEditor.css b/force-app/main/default/lwc/lexASACEditor/lexASACEditor.css
new file mode 100644
index 0000000..689c97d
--- /dev/null
+++ b/force-app/main/default/lwc/lexASACEditor/lexASACEditor.css
@@ -0,0 +1,10 @@
+.inASACEditorHolder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+.container .uiContainerManager{
+ display: none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexASACEditor/lexASACEditor.html b/force-app/main/default/lwc/lexASACEditor/lexASACEditor.html
new file mode 100644
index 0000000..19263b7
--- /dev/null
+++ b/force-app/main/default/lwc/lexASACEditor/lexASACEditor.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="inASACEditorHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexASACEditor/lexASACEditor.js b/force-app/main/default/lwc/lexASACEditor/lexASACEditor.js
new file mode 100644
index 0000000..a40f487
--- /dev/null
+++ b/force-app/main/default/lwc/lexASACEditor/lexASACEditor.js
@@ -0,0 +1,73 @@
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import init from '@salesforce/apex/ReportController.initForASACEditorButton';
+export default class LexASACEditor extends LightningElement {
+ @api recordId;
+ LastModifiedDate
+ Id
+ Name
+ LastModifiedById
+ DeveloperName
+ IsLoading = true;
+ url;
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback () {
+ console.log(this.recordId);
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result);
+ if (result != undefined) {
+ console.log("if");
+ this.LastModifiedById = result.LastModifiedById;
+ this.LastModifiedDate = result.LastModifiedDate;
+ this.Id = result.Id;
+ this.Name = result.Name;
+ this.DeveloperName = result.DeveloperName;
+ console.log(this.Id);
+ this.editor();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ //window.location.replace("https://ocsm--partial.sandbox.lightning.force.com/lightning/r/Report__c/" + this.recordId + "/view");
+ }else{
+ console.log("else");
+ this.IsLoading = false;
+ this.editor();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ }).catch(error => {
+ console.log("error");
+ console.log(error);
+ }).finally(() => {
+
+ });
+ //this.updateRecordView(this.recordId);
+
+ }
+
+ editor(){
+ if (this.Id != undefined){
+ this.url = "/apex/RepPAEDecisionRecord?Id="+this.Id+"&ReportId="+this.recordId+"&RecordTypeIds="+"ASACDecision";
+ console.log(this.url);
+ } else {
+ this.url = "/apex/RepPAEDecisionRecord?ReportId="+this.recordId+"&RecordTypeIds="+"ASACDecision";
+ console.log(this.url);
+ }
+ window.open(this.url,"_self");
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexASACEditor/lexASACEditor.js-meta.xml b/force-app/main/default/lwc/lexASACEditor/lexASACEditor.js-meta.xml
new file mode 100644
index 0000000..952a036
--- /dev/null
+++ b/force-app/main/default/lwc/lexASACEditor/lexASACEditor.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexASACEditorRepair/lexASACEditorRepair.html b/force-app/main/default/lwc/lexASACEditorRepair/lexASACEditorRepair.html
new file mode 100644
index 0000000..d044dbb
--- /dev/null
+++ b/force-app/main/default/lwc/lexASACEditorRepair/lexASACEditorRepair.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="exampleHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexASACEditorRepair/lexASACEditorRepair.js b/force-app/main/default/lwc/lexASACEditorRepair/lexASACEditorRepair.js
new file mode 100644
index 0000000..66db124
--- /dev/null
+++ b/force-app/main/default/lwc/lexASACEditorRepair/lexASACEditorRepair.js
@@ -0,0 +1,74 @@
+import {
+ LightningElement,
+ wire,
+ api
+} from 'lwc';
+import {
+ CurrentPageReference
+} from "lightning/navigation";
+import {
+ CloseActionScreenEvent
+} from 'lightning/actions';
+import init from '@salesforce/apex/otherButtonRepairController.init';
+import selectPAEDecisionRecord from '@salesforce/apex/otherButtonRepairController.selectPAEDecisionRecord';
+
+export default class LexASACEditorRepair extends LightningElement {
+ @api recordId;
+ str;
+ IsLoading = true;
+ Id;;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback() {
+ console.log(this.recordId);
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result);
+ if (result != null) {
+ this.IsLoading = false;
+ this.Id = result.Id;
+
+ this.ASACEditor();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ }).catch(error => {
+ console.log(error);
+ }).finally(() => {
+
+ });
+ }
+
+ //Final universal code缂栬緫
+ ASACEditor() {
+ var RepairId = this.Id;
+ var RecordTypeId = "ASACDecision";
+ var url = '';
+ selectPAEDecisionRecord({
+ recordId: RepairId,
+ recordTypeId: RecordTypeId
+ }).then(result => {
+ if (result != null) {
+ if (result.length > 0) {
+ url = "/apex/PAEDecisionRecord?Id=" + result[0].Id + "&RepairId=" + RepairId + "&RecordTypeIds=" + RecordTypeId;
+ } else {
+ url = "/apex/PAEDecisionRecord?RepairId=" + RepairId + "&RecordTypeIds=" + RecordTypeId;
+ }
+
+ window.open(url, '_self');
+ }
+ }).catch(error => {
+ console.log(error);
+ })
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexASACEditorRepair/lexASACEditorRepair.js-meta.xml b/force-app/main/default/lwc/lexASACEditorRepair/lexASACEditorRepair.js-meta.xml
new file mode 100644
index 0000000..3392981
--- /dev/null
+++ b/force-app/main/default/lwc/lexASACEditorRepair/lexASACEditorRepair.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexASRCEditor/lexASRCEditor.css b/force-app/main/default/lwc/lexASRCEditor/lexASRCEditor.css
new file mode 100644
index 0000000..5cd9c5d
--- /dev/null
+++ b/force-app/main/default/lwc/lexASRCEditor/lexASRCEditor.css
@@ -0,0 +1,10 @@
+.inASRCEditorHolder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+.container .uiContainerManager{
+ display: none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexASRCEditor/lexASRCEditor.html b/force-app/main/default/lwc/lexASRCEditor/lexASRCEditor.html
new file mode 100644
index 0000000..79f5b93
--- /dev/null
+++ b/force-app/main/default/lwc/lexASRCEditor/lexASRCEditor.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="inASRCEditorHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexASRCEditor/lexASRCEditor.js b/force-app/main/default/lwc/lexASRCEditor/lexASRCEditor.js
new file mode 100644
index 0000000..982af66
--- /dev/null
+++ b/force-app/main/default/lwc/lexASRCEditor/lexASRCEditor.js
@@ -0,0 +1,74 @@
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import init from '@salesforce/apex/ReportController.initForASRCEditorButton';
+
+export default class LexASRCEditor extends LightningElement {
+ @api recordId;
+ LastModifiedDate
+ Id
+ Name
+ LastModifiedById
+ DeveloperName
+ IsLoading = true;
+ url;
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback () {
+ console.log(this.recordId);
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result);
+ if (result != undefined) {
+ console.log("if");
+ this.LastModifiedById = result.LastModifiedById;
+ this.LastModifiedDate = result.LastModifiedDate;
+ this.Id = result.Id;
+ this.Name = result.Name;
+ this.DeveloperName = result.DeveloperName;
+ console.log(this.Id);
+ this.editor();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ //window.location.replace("https://ocsm--partial.sandbox.lightning.force.com/lightning/r/Report__c/" + this.recordId + "/view");
+ }else{
+ console.log("else");
+ this.IsLoading = false;
+ this.editor();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ }).catch(error => {
+ console.log("error");
+ console.log(error);
+ }).finally(() => {
+
+ });
+ //this.updateRecordView(this.recordId);
+
+ }
+
+ editor(){
+ if (this.Id != undefined){
+ this.url = "/apex/RepPAEDecisionRecord?Id="+this.Id+"&ReportId="+this.recordId+"&RecordTypeIds="+"ASRCDecision";
+ console.log(this.url);
+ } else {
+ this.url = "/apex/RepPAEDecisionRecord?ReportId="+this.recordId+"&RecordTypeIds="+"ASRCDecision";
+ console.log(this.url);
+ }
+ window.open(this.url,"_self");
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexASRCEditor/lexASRCEditor.js-meta.xml b/force-app/main/default/lwc/lexASRCEditor/lexASRCEditor.js-meta.xml
new file mode 100644
index 0000000..952a036
--- /dev/null
+++ b/force-app/main/default/lwc/lexASRCEditor/lexASRCEditor.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexASRCEditorRepair/lexASRCEditorRepair.html b/force-app/main/default/lwc/lexASRCEditorRepair/lexASRCEditorRepair.html
new file mode 100644
index 0000000..d044dbb
--- /dev/null
+++ b/force-app/main/default/lwc/lexASRCEditorRepair/lexASRCEditorRepair.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="exampleHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexASRCEditorRepair/lexASRCEditorRepair.js b/force-app/main/default/lwc/lexASRCEditorRepair/lexASRCEditorRepair.js
new file mode 100644
index 0000000..8387edc
--- /dev/null
+++ b/force-app/main/default/lwc/lexASRCEditorRepair/lexASRCEditorRepair.js
@@ -0,0 +1,75 @@
+import {
+ LightningElement,
+ wire,
+ api
+} from 'lwc';
+import {
+ CurrentPageReference
+} from "lightning/navigation";
+import {
+ CloseActionScreenEvent
+} from 'lightning/actions';
+
+import init from '@salesforce/apex/otherButtonRepairController.init';
+import selectPAEDecisionRecord from '@salesforce/apex/otherButtonRepairController.selectPAEDecisionRecord';
+
+export default class LexASRCEditorRepair extends LightningElement {
+ @api recordId;
+ str;
+ IsLoading = true;
+ Id;
+ RecordTypeId;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback() {
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result);
+ if (result != null) {
+ this.IsLoading = false;
+ this.Id = result.Id;
+ this.RecordTypeId = result.RecordTypeId;
+
+ this.ASRCEditor();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ }).catch(error => {
+ console.log(error);
+ }).finally(() => {
+
+ });
+ }
+
+ // Intake universal code缂栬緫
+ ASRCEditor() {
+ var RecordTypeId = "ASRCDecision";
+ var RepairId = this.Id;
+ var url = '';
+ selectPAEDecisionRecord({
+ recordId: RepairId,
+ recordTypeId: RecordTypeId
+ }).then(result => {
+ if (result != null) {
+ if (result.length > 0) {
+ url = "/apex/PAEDecisionRecord?Id=" + result[0].Id + "&RepairId=" + RepairId + "&RecordTypeIds=" + RecordTypeId;
+ } else {
+ url = "/apex/PAEDecisionRecord?RepairId=" + RepairId + "&RecordTypeIds=" + RecordTypeId;
+ }
+ window.open(url, '_self');
+ }
+ }).catch(error => {
+ console.log(error);
+ })
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexASRCEditorRepair/lexASRCEditorRepair.js-meta.xml b/force-app/main/default/lwc/lexASRCEditorRepair/lexASRCEditorRepair.js-meta.xml
new file mode 100644
index 0000000..3392981
--- /dev/null
+++ b/force-app/main/default/lwc/lexASRCEditorRepair/lexASRCEditorRepair.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexAddSubmitApprovalProcess/lexAddSubmitApprovalProcess.css b/force-app/main/default/lwc/lexAddSubmitApprovalProcess/lexAddSubmitApprovalProcess.css
new file mode 100644
index 0000000..635bc6c
--- /dev/null
+++ b/force-app/main/default/lwc/lexAddSubmitApprovalProcess/lexAddSubmitApprovalProcess.css
@@ -0,0 +1,22 @@
+.outerBorderCss{
+ border: 1px solid #D4D4D4;
+ border-radius : 5px;
+ border-top : 3px solid #565959;
+}
+.borderCss{
+ border: 1px solid #D4D4D4;
+ border-radius : 5px;
+ margin-bottom : 7px;
+ border-top : 3px solid #565959;
+}
+.headerDorderCss{
+ border-top: 1px solid #565959;
+ border-bottom: 1px solid #D4D4D4;
+ padding:3px;
+}
+.centerCss{
+ text-align: center;
+}
+.centerCss .left{
+ margin-left: 100px;
+}/* sample css file */
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexAddSubmitApprovalProcess/lexAddSubmitApprovalProcess.html b/force-app/main/default/lwc/lexAddSubmitApprovalProcess/lexAddSubmitApprovalProcess.html
new file mode 100644
index 0000000..49a10f7
--- /dev/null
+++ b/force-app/main/default/lwc/lexAddSubmitApprovalProcess/lexAddSubmitApprovalProcess.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="sisToOPDHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexAddSubmitApprovalProcess/lexAddSubmitApprovalProcess.js b/force-app/main/default/lwc/lexAddSubmitApprovalProcess/lexAddSubmitApprovalProcess.js
new file mode 100644
index 0000000..65f247a
--- /dev/null
+++ b/force-app/main/default/lwc/lexAddSubmitApprovalProcess/lexAddSubmitApprovalProcess.js
@@ -0,0 +1,68 @@
+import { LightningElement, track, wire, api } from 'lwc';
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+import { CurrentPageReference,NavigationMixin } from 'lightning/navigation';
+
+import init from '@salesforce/apex/AddSubmitApprovalProcessController.init';
+export default class lexAddSubmitApprovalProcess extends LightningElement {
+ @api recordId;
+ IsLoading = true;
+ RecordTypeId;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference){
+ if(currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if(urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback(){
+ init({
+ recordId: this.recordId
+ }).then(result=>{
+ if(result.addApprovalStatus != '鑽夋涓�' || result.detailSize == 0){
+ this.ToastShow('娌℃湁闇�瑕佸鎵圭殑杩藉姞闄勫睘鍝�');
+ return;
+ }
+ if (!confirm("涓�鏃︽彁浜ゆ璁板綍浠ュ緟鎵瑰噯锛屾牴鎹偍鐨勮缃偍鍙兘涓嶅啀鑳藉缂栬緫姝よ褰曟垨灏嗕粬浠庢壒鍑嗚繃绋嬩腑璋冨洖銆傛槸鍚︾户缁紵")) {
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ // 甯屾湜鍒拌揣鏃ヤ笉鑳芥棭浜庣敵璇锋彁浜ゆ棩-0418杩藉姞
+ //if ('{!Rental_Apply__c.Request_shipping_day__c}' < '{!TODAY()}') {
+ // alert('甯屾湜鍒拌揣鏃ヤ笉鑳芥棭浜庣敵璇锋彁浜ゆ棩');
+ // return;
+ // }
+ if(result.repairId != null){
+ if(result.demoPurpose1 == '缁翠慨浠g敤' && result.demoPurpose2 == '涓�鑸敤鎴�'){
+ if(result.repairEstimatedDateFormula == null){
+ this.ToastShow('涓�鑸淮淇棤鎶ヤ环鏃ワ紝涓嶅彲鍊熺敤澶囧搧');
+ return;
+ }else if(result.repairEstimatedDateFormula <'2019-07-01' && result.agreedDate == null){
+ this.ToastShow('鎶ヤ环鏃ュ湪2019/7/1涔嬪墠涓旀埛鍚屾剰鏃ヤ负绌猴紝涓嶅彲鍊熺敤澶囧搧');
+ return;
+ }
+ }
+
+ if(result.recordTypeId !='01210000000RHIn' && result.newProductGuaranteeObject=='2: 鏈嶅姟澶氬勾淇濅慨' && (result.assetModelNo=='CV-V1' ||result.assetModelNo=='CV-V1(A)'||result.assetModelNo=='CV-V1(B)'||result.assetModelNo=='GIF-LV1'||result.assetModelNo=='CF-LV1L'||result.assetModelNo=='CF-LV1I'||result.assetModelNo=='MAJ-1910') &&(result.demoPurpose2=='涓�鑸敤鎴�'||result.demoPurpose2=='鍐嶄慨鐞�')){
+ this.ToastShow('濂ヨ緣璁惧锛屼繚淇湡鍐呬笉鎻愪緵澶囧搧.');
+ return;
+ }
+ }
+ })
+ }
+
+ ToastShow(msg){
+ const evt = new ShowToastEvent({
+ title : msg,
+ message: '',
+ variant: 'warning'
+ });
+ this.dispatchEvent(evt);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexAddSubmitApprovalProcess/lexAddSubmitApprovalProcess.js-meta.xml b/force-app/main/default/lwc/lexAddSubmitApprovalProcess/lexAddSubmitApprovalProcess.js-meta.xml
new file mode 100644
index 0000000..74849f3
--- /dev/null
+++ b/force-app/main/default/lwc/lexAddSubmitApprovalProcess/lexAddSubmitApprovalProcess.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexOCMSubmit">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexAddress/lexAddress.html b/force-app/main/default/lwc/lexAddress/lexAddress.html
new file mode 100644
index 0000000..87f391a
--- /dev/null
+++ b/force-app/main/default/lwc/lexAddress/lexAddress.html
@@ -0,0 +1,6 @@
+<template>
+ <div class="exampleHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ <lightning-button label="Show Toast" onclick={ShowToastEvent}></lightning-button>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexAddress/lexAddress.js b/force-app/main/default/lwc/lexAddress/lexAddress.js
new file mode 100644
index 0000000..49b0dc0
--- /dev/null
+++ b/force-app/main/default/lwc/lexAddress/lexAddress.js
@@ -0,0 +1,80 @@
+import {
+ LightningElement,
+ wire,
+ api
+} from 'lwc';
+import {
+ CurrentPageReference
+} from "lightning/navigation";
+import {
+ CloseActionScreenEvent
+} from 'lightning/actions';
+
+import init from '@salesforce/apex/otherButtonRepairController.init';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+
+export default class LexAddress extends LightningElement {
+ @api recordId;
+ str;
+ IsLoading = true;
+ Id;
+ RecordTypeId;
+ partArrangementCompleteC;
+ RepairShippedDateC;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback() {
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result);
+ if (result != null) {
+ this.IsLoading = false;
+ this.Id = result.Id;
+ this.RecordTypeId = result.RecordTypeId;
+ this.RepairShippedDateC = result.RepairShippedDateC;
+ this.partArrangementCompleteC = result.partArrangementCompleteC;
+
+ this.Address();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ }).catch(error => {
+ console.log(error);
+ }).finally(() => {
+
+ });
+ }
+
+ //鐩磋繑鏀惰揣鍦板潃
+ Address() {
+ if (this.partArrangementCompleteC != undefined) {
+ this.ShowToastEvent('闆朵欢宸查綈澶囧畬姣曪紝鐩磋繑鏀惰揣鍦板潃涓嶈兘淇敼锛�',"error")
+ // alert('闆朵欢宸查綈澶囧畬姣曪紝鐩磋繑鏀惰揣鍦板潃涓嶈兘淇敼锛�');
+ } else if (this.RepairShippedDateC != undefined) {
+ this.ShowToastEvent('RC淇悊鍝佸凡杩旈�侊紝鐩磋繑鏀惰揣鍦板潃涓嶈兘淇敼锛�',"error")
+ // alert('RC淇悊鍝佸凡杩旈�侊紝鐩磋繑鏀惰揣鍦板潃涓嶈兘淇敼锛�');
+ } else {
+ window.open("/apex/StraightBackAddress?id=" + this.Id, '_self');
+ }
+ }
+
+ //寮规
+ ShowToastEvent(msg,type) {
+ const event = new ShowToastEvent({
+ title: '',
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexAddress/lexAddress.js-meta.xml b/force-app/main/default/lwc/lexAddress/lexAddress.js-meta.xml
new file mode 100644
index 0000000..3392981
--- /dev/null
+++ b/force-app/main/default/lwc/lexAddress/lexAddress.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexAgencyAuthorize/lexAgencyAuthorize.css b/force-app/main/default/lwc/lexAgencyAuthorize/lexAgencyAuthorize.css
new file mode 100644
index 0000000..689c97d
--- /dev/null
+++ b/force-app/main/default/lwc/lexAgencyAuthorize/lexAgencyAuthorize.css
@@ -0,0 +1,10 @@
+.inASACEditorHolder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+.container .uiContainerManager{
+ display: none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexAgencyAuthorize/lexAgencyAuthorize.html b/force-app/main/default/lwc/lexAgencyAuthorize/lexAgencyAuthorize.html
new file mode 100644
index 0000000..e6785e4
--- /dev/null
+++ b/force-app/main/default/lwc/lexAgencyAuthorize/lexAgencyAuthorize.html
@@ -0,0 +1,6 @@
+<template>
+ <div class="inASACEditorHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ <lightning-button label="Show Toast" onclick={showSuccess}></lightning-button>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexAgencyAuthorize/lexAgencyAuthorize.js b/force-app/main/default/lwc/lexAgencyAuthorize/lexAgencyAuthorize.js
new file mode 100644
index 0000000..30da2db
--- /dev/null
+++ b/force-app/main/default/lwc/lexAgencyAuthorize/lexAgencyAuthorize.js
@@ -0,0 +1,198 @@
+/*
+ * @Description:
+ * @version:
+ * @Author: chen jing wu
+ * @Date: 2023-04-12 14:51:44
+ * @LastEditors: chen jing wu
+ * @LastEditTime: 2023-04-19 09:11:02
+ */
+import { api, wire,LightningElement } from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import init from '@salesforce/apex/OpportunityLightingButtonController.initForAgencyAuthorizeButton';
+import updateForAgencyAuthorizeButton from '@salesforce/apex/OpportunityLightingButtonController.updateForAgencyAuthorizeButton';
+import { updateRecord } from 'lightning/uiRecordApi';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+import checkDangerItem from '@salesforce/apex/OpportunityWebService.checkDangerItem';
+import oppCheck from '@salesforce/apex/OpportunityWebService.oppCheck';
+import updReg from '@salesforce/apex/OpportunityWebService.updReg';
+
+export default class LexAgencyAuthorize extends LightningElement {
+ @api recordId;
+ agency1Id;
+ stageName;
+ sapSendOK;
+ oppOrderType;
+ ifHave170;
+ ifHaveAH;
+ cntLostCancelDraft;
+ cntLostCancelReport;
+ estimationId;
+ detailNum;
+ estimationDecision;
+ salesRoot;
+ acecideCntCheck;
+ ifSubmit;
+ trade;
+ isCorrosion;
+ profileId;
+ ifAuthorizingLock;
+ IsLoading = true;
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+ connectedCallback(){
+ init({
+ recordId: this.recordId
+ }).then(result=>{
+ console.log(result);
+ this.agency1Id = result.agency1Id;
+ this.stageName = result.stageName;
+ this.sapSendOK = result.sapSendOK;
+ this.oppOrderType = result.oppOrderType;
+ this.ifHave170 = result.ifHave170;
+ this.ifHaveAH = result.ifHaveAH;
+ this.cntLostCancelDraft = result.cntLostCancelDraft;
+ this.cntLostCancelReport = result.cntLostCancelReport;
+ this.estimationId = result.estimationId;
+ this.detailNum = result.detailNum;
+ this.estimationDecision = result.estimationDecision;
+ this.salesRoot = result.salesRoot;
+ this.acecideCntCheck = result.acecideCntCheck;
+ this.ifSubmit = result.ifSubmit;
+ this.trade = result.trade;
+ this.isCorrosion = result.isCorrosion;
+ this.profileId = result.profileId;
+ this.ifAuthorizingLock = result.ifAuthorizingLock;
+ this.AgencyAuthorize();
+ })
+ }
+ AgencyAuthorize(){
+ var btns = document.getElementsByName("agency_authorize");
+ for (var i=0; i<btns.length; i++) {
+ btns[i].disabled = true;
+ btns[i].className = 'btnDisabled';
+ }
+ //2021-10-21 gwy 鐗堟湰鏇存敼涓�51.0
+ var oppid = this.recordId;
+ var angency = this.agency1Id;
+ var profileId = this.profileId;
+
+ if (profileId != '00e10000000Y3o5' && profileId != '00e10000000Nab7' && profileId != '00e10000000xnpR' && profileId != '00e10000000xyK6' && profileId != '00e10000000NbCE'
+ && profileId != '00e10000000xyK6' && profileId != '00e10000000Nb7i') {
+ this.showToast("鎮ㄦ病鏈夋巿鏉冪敵璇风殑鏉冮檺銆傝鑱旂郴绯荤粺绠$悊鍛樸��","error");
+ return;
+ }
+ if (this.stageName != '寮曞悎' && this.stageName != '璇环' ) {
+ this.showToast("鐘舵��1:" + this.stageName + "銆佷笉鑳藉仛鎺堟潈鐢宠锛�","error");
+ return;
+ } else if (this.sapSendOK == '1') {
+ this.showToast("宸茬粡涓婁紶SAP銆佷笉鑳藉仛鎺堟潈鐢宠浜嗭紒","error");
+ return;
+ } else if (this.oppOrderType != undefined && this.ifHave170 == true) {
+ this.showToast("鑰楁潗涓嶅彲涓�170浜у搧鍚屾椂瀛樺湪锛�","error");
+ return;
+ } else if (this.oppOrderType != undefined && this.ifHaveAH == true) {
+ this.showToast("鑰楁潗涓嶅彲涓庡ゥ杈変骇鍝佸悓鏃跺瓨鍦紒","error");
+ return;
+ } else if (this.cntLostCancelDraft > 0) {
+ if(!confirm('璇环鏈夎崏妗堜腑鐨勫彇娑�/澶卞崟鎶ュ憡锛屾槸鍚︾户缁紵')){
+ return ;
+ }
+ } else if (this.cntLostCancelReport - this.cntLostCancelDraft > 0) {
+ this.showToast('璇环鏈夊凡鎻愪氦鐨勫彇娑�/澶卞崟鎶ュ憡銆�',"error");
+ return;
+ } else if (this.estimationId == undefined || this.detailNum == 0) {
+ this.showToast('鎶ヤ环鏈畬鎴愶紝璇峰厛鎶ヤ环銆�',"error");
+ return;
+ } else if (this.estimationDecision == '1') {
+ this.showToast('鎶ヤ环宸插喅瀹氾紝涓嶈兘杩涜鎺堟潈鐢宠銆�',"error");
+ return;
+ } else if (this.salesRoot != '璨╁2搴�') {
+ this.showToast('鍖婚櫌鐩撮攢涓嶉渶瑕佹巿鏉冪敵璇枫��',"error");
+ return;
+ }
+ // else if ('{!Opportunity.AcecideCntCheck__c}' != '1') {
+ // alert('闃胯タ璧涘璇环鍙兘鍖呭惈鍗卞寲鍝侊紝鎴栬�咃紝鏅�氳浠蜂笉鑳藉寘鍚嵄鍖栧搧銆�');
+ // return;
+ // }
+ else if (this.ifSubmit == '1') {
+ this.showToast('涓婁紶澶辫触锛岃鑱旂郴绯荤粺绠$悊鍛�!',"error");
+ return;
+ }
+ if (this.ifAuthorizingLock == 'true') {
+ this.showToast('璇环姝e湪鎺堟潈涓紝璇蜂笉瑕侀噸澶嶆彁浜ゃ��',"error");
+ return;
+ }
+ if (this.trade == '鍐呰部') {
+ if(this.isCorrosion == '1'){
+ checkDangerItem({
+ agency1: angency
+ }).then(result=>{
+ var rtn1 = result;
+ if (rtn1 != 'OK') {
+ this.showToast(rtn1,"error");
+ return;
+ }
+ this.update();
+ });
+ }else{
+ oppCheck({
+ oppid: oppid,
+ saveFlg: '1'
+ }).then(result=>{
+ var rtn = result;
+ if (rtn != 'OK') {
+ this.showToast(rtn,"error");
+ return;
+ }
+ this.update();
+ })
+ }
+ } else {
+ updReg({
+ oppid: oppid
+ }).then(()=>{
+ this.update();
+ });
+ }
+ }
+ showToast(msg,type) {
+ const event = new ShowToastEvent({
+ title: '',
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ updateRecordView(recordId) {
+ updateRecord({fields: { Id: recordId }});
+ }
+ update(){
+ updateForAgencyAuthorizeButton({
+ recordId: this.recordId
+ }).then(result=>{
+ if(result){
+ this.showToast(result,"error");
+ }else{
+ this.updateRecordView(this.recordId);
+ window.open("https://olympus.sharepoint.cn/sites/GSPWF/SitePages/HomePage.aspx");
+ this.showToast('鎻愪氦鎴愬姛銆傝鍦⊿PO绯荤粺涓畬鎴愭巿鏉冪敵璇枫��',"success");
+ }
+ this.IsLoading = false;
+ })
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexAgencyAuthorize/lexAgencyAuthorize.js-meta.xml b/force-app/main/default/lwc/lexAgencyAuthorize/lexAgencyAuthorize.js-meta.xml
new file mode 100644
index 0000000..329e839
--- /dev/null
+++ b/force-app/main/default/lwc/lexAgencyAuthorize/lexAgencyAuthorize.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexAllReceivedFse/lexAllReceivedFse.css b/force-app/main/default/lwc/lexAllReceivedFse/lexAllReceivedFse.css
new file mode 100644
index 0000000..635bc6c
--- /dev/null
+++ b/force-app/main/default/lwc/lexAllReceivedFse/lexAllReceivedFse.css
@@ -0,0 +1,22 @@
+.outerBorderCss{
+ border: 1px solid #D4D4D4;
+ border-radius : 5px;
+ border-top : 3px solid #565959;
+}
+.borderCss{
+ border: 1px solid #D4D4D4;
+ border-radius : 5px;
+ margin-bottom : 7px;
+ border-top : 3px solid #565959;
+}
+.headerDorderCss{
+ border-top: 1px solid #565959;
+ border-bottom: 1px solid #D4D4D4;
+ padding:3px;
+}
+.centerCss{
+ text-align: center;
+}
+.centerCss .left{
+ margin-left: 100px;
+}/* sample css file */
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexAllReceivedFse/lexAllReceivedFse.html b/force-app/main/default/lwc/lexAllReceivedFse/lexAllReceivedFse.html
new file mode 100644
index 0000000..49a10f7
--- /dev/null
+++ b/force-app/main/default/lwc/lexAllReceivedFse/lexAllReceivedFse.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="sisToOPDHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexAllReceivedFse/lexAllReceivedFse.js b/force-app/main/default/lwc/lexAllReceivedFse/lexAllReceivedFse.js
new file mode 100644
index 0000000..f6ebf2b
--- /dev/null
+++ b/force-app/main/default/lwc/lexAllReceivedFse/lexAllReceivedFse.js
@@ -0,0 +1,65 @@
+import { LightningElement, track, wire, api } from 'lwc';
+import { CurrentPageReference,NavigationMixin } from 'lightning/navigation';
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+
+import init from '@salesforce/apex/AllReceivedFseController.init';
+import getRaeSet from '@salesforce/apex/AllReceivedFseController.getRaeSet';
+export default class lexAllReceivedFse extends LightningElement {
+
+ @api recordId;
+ IsLoading = true;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference){
+ if(currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if(urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback(){
+ init({
+ recordId: this.recordId
+ }).then(res=>{
+ if(res.LoanerReceivedNgNum == 0){
+ const evt = new ShowToastEvent({
+ title : '鐜板満宸茬粡鍏ㄩ儴鏀跺埌瀹炵墿浜�',
+ message: '',
+ variant: 'success'
+ });
+ this.dispatchEvent(evt);
+ }else{
+ getRaeSet({
+ recordId: this.recordId
+ }).then(res=>{
+ if(res == 'SUCCESS'){
+ const evt = new ShowToastEvent({
+ title : '鐜板満宸插叏閮ㄦ敹璐�',
+ message: '',
+ variant: 'success'
+ });
+ this.dispatchEvent(new CloseActionScreenEvent());
+ this.dispatchEvent(evt);
+ }else{
+ const errToast = new ShowToastEvent({
+ title : res,
+ message: '',
+ variant: 'error'
+ });
+ this.dispatchEvent(new CloseActionScreenEvent());
+ this.dispatchEvent(errToast);
+
+ console.log(res);
+ }
+
+ })
+ }
+ }).catch(err=>{
+ console.log(err);
+ })
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexAllReceivedFse/lexAllReceivedFse.js-meta.xml b/force-app/main/default/lwc/lexAllReceivedFse/lexAllReceivedFse.js-meta.xml
new file mode 100644
index 0000000..74849f3
--- /dev/null
+++ b/force-app/main/default/lwc/lexAllReceivedFse/lexAllReceivedFse.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexOCMSubmit">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexAppCancelSubmit/lexAppCancelSubmit.html b/force-app/main/default/lwc/lexAppCancelSubmit/lexAppCancelSubmit.html
new file mode 100644
index 0000000..e639903
--- /dev/null
+++ b/force-app/main/default/lwc/lexAppCancelSubmit/lexAppCancelSubmit.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="ApplicationCancelSubmit" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexAppCancelSubmit/lexAppCancelSubmit.js b/force-app/main/default/lwc/lexAppCancelSubmit/lexAppCancelSubmit.js
new file mode 100644
index 0000000..a99c517
--- /dev/null
+++ b/force-app/main/default/lwc/lexAppCancelSubmit/lexAppCancelSubmit.js
@@ -0,0 +1,85 @@
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { NavigationMixin } from 'lightning/navigation';
+import init from '@salesforce/apex/OppSubmitController.initSubmitButton';
+import { updateRecord } from 'lightning/uiRecordApi';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+import submitCancel from '@salesforce/apex/OppSubmitController.submitCancel';
+import UserInfo_Owner from '@salesforce/apex/OppSubmitController.UserInfo_Owner';
+export default class CancelSubmit extends LightningElement {
+ @api recordId;//OwnerId
+ ownerId;
+ monthlyReportId;
+ IsLoading = true;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(currentPageReference,'666666666666');
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str:"+str);
+ this.recordId = str;
+ }
+ }
+ }
+
+
+ connectedCallback(){
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ if (result != null) {
+ this.IsLoading = false;
+ this.ownerId = result.OwnerId;
+ this.monthlyReportId = result.Id;
+ this.cancelSubmit();
+ }
+ }).catch(error => {
+ console.log("error"+error);
+ }).finally(() => {
+
+ });
+ }
+
+ cancelSubmit(){
+ UserInfo_Owner({}).then(result=>{
+ console.log(result,'鑾峰彇褰撳墠鐧婚檰浜篿d')
+ if(this.ownerId == result.id){
+ submitCancel({
+ recordId: this.recordId
+ }).then(requst=>{
+ if(requst == '1'){
+ this.showToast("鍙栨秷鎻愪氦鎺堟潈淇℃伅鎴愬姛","success");
+ }
+ if(requst != "1"){
+ var messageage = "";
+ messageage = requst.split(',')[1];
+ this.showToast(messageage,"error");
+ }
+ })
+ }else{
+ this.showToast("鍙巿鏉冪敵璇蜂功鎵�鏈変汉鍙互鍙栨秷鎻愪氦","error");
+ }
+ })
+ }
+
+
+ updateRecordView() {
+ updateRecord({fields: { Id: this.recordId }});
+ }
+
+ showToast(msg,type) {
+ const event = new ShowToastEvent({
+ message: msg,
+ variant: type
+ });
+ if(type == 'success'){
+ this.updateRecordView();
+ }
+ this.dispatchEvent(event);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexAppCancelSubmit/lexAppCancelSubmit.js-meta.xml b/force-app/main/default/lwc/lexAppCancelSubmit/lexAppCancelSubmit.js-meta.xml
new file mode 100644
index 0000000..2b7649d
--- /dev/null
+++ b/force-app/main/default/lwc/lexAppCancelSubmit/lexAppCancelSubmit.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexAppSubmitButton/lexAppSubmitButton.html b/force-app/main/default/lwc/lexAppSubmitButton/lexAppSubmitButton.html
new file mode 100644
index 0000000..ade3dab
--- /dev/null
+++ b/force-app/main/default/lwc/lexAppSubmitButton/lexAppSubmitButton.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="ApplicationSubmit" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexAppSubmitButton/lexAppSubmitButton.js b/force-app/main/default/lwc/lexAppSubmitButton/lexAppSubmitButton.js
new file mode 100644
index 0000000..91b11b5
--- /dev/null
+++ b/force-app/main/default/lwc/lexAppSubmitButton/lexAppSubmitButton.js
@@ -0,0 +1,108 @@
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { NavigationMixin } from 'lightning/navigation';
+import init from '@salesforce/apex/OppSubmitController.initSubmitButton';
+import UserInfo_Owner from '@salesforce/apex/OppSubmitController.UserInfo_Owner';
+import submit from '@salesforce/apex/OppSubmitController.submit';
+import { updateRecord } from 'lightning/uiRecordApi';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+export default class Submit extends LightningElement {
+ @api recordId;//OwnerId
+ ownerId;//鎵�鏈変汉id
+ id;//杩斿洖鍊肩殑id
+ IsLoading = true;
+ arrMessage = [];
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(currentPageReference,'666666666666');
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str:"+str);
+ this.recordId = str;
+ }
+ }
+ }
+
+
+ connectedCallback(){
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result,"璇锋眰鎴愬姛浜嗗悧")
+ if (result != null) {
+ this.IsLoading = false;
+ this.ownerId = result.OwnerId;
+ this.id = result.Id;
+ this.Submit();
+ }
+ }).catch(error => {
+ console.log("error"+error);
+ }).finally(() => {
+
+ });
+ }
+
+ Submit(){
+ //鑾峰彇鑾峰彇褰撳墠鐧婚檰浜�
+ this.arrMessage = [];
+ UserInfo_Owner({}).then(result=>{
+ console.log(result,'鑾峰彇褰撳墠鐧婚檰浜篿d')
+ if(this.ownerId == result.id){
+ submit({
+ recordId: this.recordId
+ }).then(requst=>{
+
+ if(requst == '1'){
+ this.showToast("鎻愪氦鎺堟潈淇℃伅鎴愬姛","success");
+ }
+ if(requst != "1"){
+ var messageage = "";
+ console.log('鏄笉鏄繖閲屾姤閿�11111');
+ this.arrMessage = requst.split(',');
+ for(let i=0;i<this.arrMessage.length;i++){
+ console.log('鏄笉鏄繖閲屾姤閿�');
+ if(this.arrMessage.length-1 == i){
+ break;
+ }
+ messageage += this.arrMessage[i+1];
+ }
+ // requst.split(',').map((item,index)=>{
+ // messageage += item[index+1];
+ // })
+ // if(requst.split(',')[1].slice(-1) == '寮�'){
+ // messageage = requst.split(',')[1] + "," + requst.split(',')[2] + "," + requst.split(',')[3] + "," + requst.split(',')[4] + "," + requst.split(',')[5] + "," + requst.split(',')[6];
+ // }else{
+ // messageage = requst.split(',')[1];
+ // }
+ this.showToast(messageage,"error");
+ }
+ })
+ }else{
+ this.showToast("鍙巿鏉冪敵璇蜂功鎵�鏈変汉鍙互鎻愪氦","error");
+ }
+ })
+ }
+
+
+ updateRecordView() {
+ updateRecord({fields: { Id: this.recordId }});
+ }
+
+ showToast(msg,type) {
+ console.log(msg,type);
+ const event = new ShowToastEvent({
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ console.log('璧板埌杩欓噷浜嗗悧');
+ if(type == 'success'){
+ this.updateRecordView();
+ }
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexAppSubmitButton/lexAppSubmitButton.js-meta.xml b/force-app/main/default/lwc/lexAppSubmitButton/lexAppSubmitButton.js-meta.xml
new file mode 100644
index 0000000..2b7649d
--- /dev/null
+++ b/force-app/main/default/lwc/lexAppSubmitButton/lexAppSubmitButton.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexAssetMaintainDetail/lexAssetMaintainDetail.css b/force-app/main/default/lwc/lexAssetMaintainDetail/lexAssetMaintainDetail.css
new file mode 100644
index 0000000..af18c76
--- /dev/null
+++ b/force-app/main/default/lwc/lexAssetMaintainDetail/lexAssetMaintainDetail.css
@@ -0,0 +1,11 @@
+.Holder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+
+.container .uiContainerManager{
+ display : none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexAssetMaintainDetail/lexAssetMaintainDetail.html b/force-app/main/default/lwc/lexAssetMaintainDetail/lexAssetMaintainDetail.html
new file mode 100644
index 0000000..2ef2898
--- /dev/null
+++ b/force-app/main/default/lwc/lexAssetMaintainDetail/lexAssetMaintainDetail.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="Holder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexAssetMaintainDetail/lexAssetMaintainDetail.js b/force-app/main/default/lwc/lexAssetMaintainDetail/lexAssetMaintainDetail.js
new file mode 100644
index 0000000..3b0f923
--- /dev/null
+++ b/force-app/main/default/lwc/lexAssetMaintainDetail/lexAssetMaintainDetail.js
@@ -0,0 +1,38 @@
+import { LightningElement, track, wire, api } from 'lwc';
+import {CurrentPageReference} from 'lightning/navigation';
+import { CloseActionScreenEvent } from 'lightning/actions';
+
+export default class lexAssetMaintainDetail extends LightningElement {
+ @api recordId;
+
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference){
+ console.log("杩涘叆椤甸潰");
+ console.log(currentPageReference);
+ if(currentPageReference){
+ const urvalue=currentPageReference.state.recordId;
+ if(urvalue){
+ let str=`${urvalue}`;
+ console.log('str');
+ console.log(str);
+ this.recordId=str;
+ }
+ }
+ }
+
+ connectedCallback(){
+
+ this.cancelSubmit().then(res=>{
+ this.IsLoading=false;
+ this.dispatchEvent(new CloseActionScreenEvent());
+ });
+ }
+
+ async cancelSubmit(){
+ window.open('/apex/AssetMaintainDetail?id='+this.recordId,'AssetMaintainDetail', 'width=600,height=200');
+ }
+}
+
+// old js
+// window.open('/apex/AssetMaintainDetail?id={! AssetMaintainHeader__c.Id }');
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexAssetMaintainDetail/lexAssetMaintainDetail.js-meta.xml b/force-app/main/default/lwc/lexAssetMaintainDetail/lexAssetMaintainDetail.js-meta.xml
new file mode 100644
index 0000000..8d272e7
--- /dev/null
+++ b/force-app/main/default/lwc/lexAssetMaintainDetail/lexAssetMaintainDetail.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexAssetMaintainDetail">
+ <apiVersion>51.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__AppPage</target>
+ <target>lightning__RecordPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexAssetMaintainPage/lexAssetMaintainPage.html b/force-app/main/default/lwc/lexAssetMaintainPage/lexAssetMaintainPage.html
new file mode 100644
index 0000000..af9fa97
--- /dev/null
+++ b/force-app/main/default/lwc/lexAssetMaintainPage/lexAssetMaintainPage.html
@@ -0,0 +1,3 @@
+<template>
+
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexAssetMaintainPage/lexAssetMaintainPage.js b/force-app/main/default/lwc/lexAssetMaintainPage/lexAssetMaintainPage.js
new file mode 100644
index 0000000..75d71ca
--- /dev/null
+++ b/force-app/main/default/lwc/lexAssetMaintainPage/lexAssetMaintainPage.js
@@ -0,0 +1,35 @@
+import { LightningElement, track, wire, api } from 'lwc';
+import {CurrentPageReference} from 'lightning/navigation';
+import { CloseActionScreenEvent } from 'lightning/actions';
+
+export default class lexAssetMaintainPage extends LightningElement {
+ @api recordId;
+
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference){
+ console.log("杩涘叆椤甸潰");
+ console.log(currentPageReference);
+ if(currentPageReference){
+ const urvalue=currentPageReference.state.recordId;
+ if(urvalue){
+ let str=`${urvalue}`;
+ console.log('str');
+ console.log(str);
+ this.recordId=str;
+ }
+ }
+ }
+
+ connectedCallback(){
+
+ this.cancelSubmit().then(res=>{
+ this.IsLoading=false;
+ this.dispatchEvent(new CloseActionScreenEvent());
+ });
+ }
+
+ async cancelSubmit(){
+ window.open('/apex/AssetMaintain?id='+this.recordId,'lexAssetMaintainPage', 'width=600,height=200');
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexAssetMaintainPage/lexAssetMaintainPage.js-meta.xml b/force-app/main/default/lwc/lexAssetMaintainPage/lexAssetMaintainPage.js-meta.xml
new file mode 100644
index 0000000..2de4fcc
--- /dev/null
+++ b/force-app/main/default/lwc/lexAssetMaintainPage/lexAssetMaintainPage.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexAssetMaintainPage">
+ <apiVersion>51.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__AppPage</target>
+ <target>lightning__RecordPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexBatchSelectRepairLWC/lexBatchSelectRepairLWC.css b/force-app/main/default/lwc/lexBatchSelectRepairLWC/lexBatchSelectRepairLWC.css
new file mode 100644
index 0000000..fa4ac70
--- /dev/null
+++ b/force-app/main/default/lwc/lexBatchSelectRepairLWC/lexBatchSelectRepairLWC.css
@@ -0,0 +1,9 @@
+.Narrow{
+ padding: 20px;
+}
+.searchField,.searchField .input-text{
+ /*display: flex;*/
+}
+.searchField .slds-combobox_container{
+ width: 160px !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexBatchSelectRepairLWC/lexBatchSelectRepairLWC.html b/force-app/main/default/lwc/lexBatchSelectRepairLWC/lexBatchSelectRepairLWC.html
new file mode 100644
index 0000000..07ec8af
--- /dev/null
+++ b/force-app/main/default/lwc/lexBatchSelectRepairLWC/lexBatchSelectRepairLWC.html
@@ -0,0 +1,107 @@
+<template>
+ <!-- <div class="slds-box slds-theme--default">
+ Click on the link Below to Export data as csv/xls.
+ <p class="slds-m-top--large">
+ <a onclick={exportContactData}>Export Contact Data</a>
+ <lightning-button variant="brand" label="Export Contact data" title="Export Contact Data" onclick={exportContactData}></lightning-button>
+ </p>
+ </div> -->
+ <lightning-card variant="Narrow">
+ <div style="padding: 0 20px">
+ <div>
+ <div style="padding: 10px 3px;border-bottom: 1px solid;font: 16px;font-size: blod;">妫�绱㈠垪</div>
+ <div style="margin-top: 5px">
+ <lightning-layout>
+ <!-- cancelPaddingLeft -->
+ <lightning-layout-item flexibility="auto" padding="around-small">
+ <lightning-combobox name="progress" label="鐘舵��1" value={searchObj.Status1} options={status1Options}
+ onchange={handleStatus1Change} class="searchField"></lightning-combobox>
+ </lightning-layout-item>
+ <lightning-layout-item flexibility="auto" padding="around-small">
+ <lightning-combobox
+ name="progress" label="鐘舵��2" value={searchObj.Status2} options={status2Options} onchange={handleStatus2Change}
+ class="searchField"></lightning-combobox>
+ </lightning-layout-item>
+ <lightning-layout-item flexibility="auto" padding="around-small">
+ <lightning-combobox
+ name="progress" label="鏈嶅姟鏂瑰紡" value={searchObj.onSiteRepair} options={siteRepairItems} onchange={handleSiteChange}
+ class="searchField"></lightning-combobox>
+ </lightning-layout-item>
+ </lightning-layout>
+ <lightning-layout>
+ <lightning-layout-item size="4" padding="horizontal-small">
+ <lightning-input value={searchObj.RepairName} type="text" label="RS淇悊鍗曞彿" class="searchField" onchange={handleRepairNameChange}></lightning-input>
+ </lightning-layout-item>
+ <lightning-layout-item size="4" padding="horizontal-small">
+ <lightning-input value={searchObj.SAPRepairNo} type="text" label="SAP淇悊鍗曞彿" class="searchField" onchange={handleSAPRepairNoChange}></lightning-input>
+ </lightning-layout-item>
+ <lightning-layout-item size="4" padding="horizontal-small">
+ <lightning-input value={searchObj.workLocationSelect} type="text" label="缁翠慨涓績" class="searchField" onchange={handleWorkLocationChange}></lightning-input>
+ </lightning-layout-item>
+ </lightning-layout>
+ <lightning-layout>
+ <lightning-layout-item size="4" padding="horizontal-small">
+ <lightning-input value={searchObj.SerialNumber} type="text" label="鏈鸿韩缂栫爜" class="searchField" onchange={handleSerialNumberChange}></lightning-input>
+ </lightning-layout-item>
+ <lightning-layout-item size="4" padding="horizontal-small">
+ <lightning-input value={searchObj.State_Hospital} type="text" label="鐪佷唤" class="searchField" onchange={handleStateHospitalChange}></lightning-input>
+ </lightning-layout-item>
+ <lightning-layout-item size="4" padding="horizontal-small">
+ <lightning-input value={searchObj.HospitalName} type="text" label="鍖婚櫌鍚嶇О" class="searchField" onchange={handleHospitalChange}></lightning-input>
+ </lightning-layout-item>
+ </lightning-layout>
+ <lightning-layout>
+ <lightning-layout-item size="2" padding="horizontal-small">
+ <lightning-input type="date" label="FSE鐢宠鏃�(寮�濮�)" value={repair.Aware_date__c} onchange={handleAwareDateDStart}></lightning-input>
+ </lightning-layout-item>
+ <!-- cancelPaddingLeft -->
+ <lightning-layout-item size="2" padding="horizontal-small">
+ <!-- variant="label-hidden" -->
+ <lightning-input type="date" label="FSE鐢宠鏃�(缁撴潫)" value={repair.Aware_date2__c} onchange={handleAwareDateDEnd}></lightning-input>
+ </lightning-layout-item>
+ <lightning-layout-item size="4" padding="horizontal-small">
+ <!-- record-id={recordId} 淇悊濮旀墭鑰� Incharge_Staff__c-->
+ <!-- <lightning-record-edit-form
+ object-api-name={objectApiName}
+ record-id=''
+ >
+ <lightning-input-field field-name={nameField} onclick={handleInchargeStaffChange}> </lightning-input-field>
+ </lightning-record-edit-form> -->
+ <lightning-record-edit-form
+ object-api-name='Repair__c'
+ record-id=''
+ >
+ <lightning-input-field field-name='Incharge_Staff__c' onclick={handleInchargeStaffChange}> </lightning-input-field>
+ </lightning-record-edit-form>
+ </lightning-layout-item>
+ </lightning-layout>
+ <lightning-layout>
+ <lightning-layout-item flexibility="auto" padding="around-small">
+ <lightning-button label="妫�绱�" onclick={searchRepair}></lightning-button>
+ </lightning-layout-item>
+ </lightning-layout>
+ </div>
+ </div>
+ <div>
+ <div style="padding: 10px 5px;border-bottom: 1px solid">璇︾粏淇℃伅</div>
+ <div style="padding: 10px 0;">
+ <lightning-button label="鎵撳嵃PDF" onclick={skipPage}></lightning-button>
+
+ <lightning-button label="瀵煎嚭Excel" onclick={exportContactData}></lightning-button>
+ <!-- <lightning-button label="瀵煎嚭Excel" onclick={downloadCSVFile}></lightning-button> -->
+ </div>
+ <div>
+ <lightning-datatable
+ key-field="id"
+ data={data}
+ columns={columns}
+ onrowselection={getSelectedRows}
+ onrowaction={handleRowAction}>
+
+ </lightning-datatable>
+ </div>
+ </div>
+ </div>
+ </lightning-card>
+
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexBatchSelectRepairLWC/lexBatchSelectRepairLWC.js b/force-app/main/default/lwc/lexBatchSelectRepairLWC/lexBatchSelectRepairLWC.js
new file mode 100644
index 0000000..d1a1131
--- /dev/null
+++ b/force-app/main/default/lwc/lexBatchSelectRepairLWC/lexBatchSelectRepairLWC.js
@@ -0,0 +1,576 @@
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { NavigationMixin } from 'lightning/navigation';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+
+import NAME_FIELD from '@salesforce/schema/Repair__c.Incharge_Staff__c';
+import MY_CUSTOM_OBJECT from '@salesforce/schema/Repair__c';
+
+import search from '@salesforce/apex/lexBatchSelectRepairLWCController.search';
+import showPDF from '@salesforce/apex/lexBatchSelectRepairLWCController.showPDF';
+
+/*
+const actions = [
+ { label: 'Show details', name: 'show_details' },
+ { label: 'Delete', name: 'delete' },
+ ];*/
+
+const columns = [
+ { label: '鐘舵��1', fieldName: 'Status1__c'},
+ { label: '鐘舵��2', fieldName: 'Status2__c' },
+ { label: 'RS淇悊鍗曞彿', fieldName: 'Name' },
+ { label: 'SAP淇悊鍗曞彿', fieldName: 'SAP_Service_Repair_No__c' },
+ // { label: '鍨嬪彿', fieldName: 'deliveredProductName' },
+ { label: '鍨嬪彿', fieldName: 'deliveredProductUrl',type:'url',
+ typeAttributes:{
+ label:{
+ fieldName:'deliveredProductName'
+ },
+ target:'_balank'
+ }
+ },
+ { label: '鏈鸿韩缂栧彿', fieldName: 'SerialNumber__c' },
+ { label: '鍖婚櫌鍚嶇О', fieldName: 'HP_Name__c' },
+ { label: '鐪佷唤', fieldName: 'State_Hospital__c' },
+ // { label: '淇悊濮旀墭鑰�', fieldName: 'Incharge_Staff_Name' },
+ { label: '淇悊濮旀墭鑰�', fieldName: 'inchargeStaffUrl',type:'url',
+ typeAttributes:{
+ label:{
+ fieldName:'inchargeStaffName'
+ },
+ target:'_balank'
+ }
+ },
+ { label: 'FSE鐢宠鏃ユ湡', fieldName: 'FSE_ApplyForRepair_Day__c' },
+ { label: '缁翠慨涓績', fieldName: 'work_location_select__c' },
+ { label: '鏈嶅姟鏂瑰紡', fieldName: 'On_site_repair__c' },
+ { label: '鏈夋棤缁翠慨鍚堝悓瀵硅薄', fieldName: 'Number_of_EffectiveContract__c' },
+ { label: '鏃犲伩鍖哄埆鏍囧織', fieldName: 'NewProductGuaranteeObject__c' }
+ /* {
+ type: 'action',
+ typeAttributes: { rowActions: actions },
+ },*/
+ ];
+
+export default class lexBatchSelectRepairLWC extends LightningElement {
+ // Expose a field to make it available in the template
+ nameField = NAME_FIELD;
+
+ // Flexipage provides recordId and objectApiName
+ @api recordId;
+ @api objectApiName;
+
+ data = [];
+ columns = columns;
+
+ //鐘舵��1
+ status1Options = [{ label: '--鏃�--', value: '' },
+ { label: '0.鐢宠瀹屾瘯', value: '0.鐢宠瀹屾瘯' },
+ { label: '2.缁翠慨鎶ヤ环闃舵', value: '2.缁翠慨鎶ヤ环闃舵' },
+ { label: '3.缁翠慨闃舵', value: '3.缁翠慨闃舵' },
+ { label: '4.淇悊鍝佽繑閫侀樁娈�', value: '4.淇悊鍝佽繑閫侀樁娈�' },
+ { label: '5.瀹屾瘯', value: '5.瀹屾瘯' },
+ { label: '0.鍒犻櫎', value: '0.鍒犻櫎' },
+ { label: '0.鍙栨秷', value: '0.鍙栨秷' }];
+ //鐘舵��2
+ status2Options = [{label:'00.鐢宠瀹屾瘯', value:'00.鐢宠瀹屾瘯'},
+ {label:'01.鍒嗗叕鍙稿彈鐞嗗畬姣�', value:'01.鍒嗗叕鍙稿彈鐞嗗畬姣�'},
+ {label:'02.RC鍙楃悊瀹屾瘯', value:'02.RC鍙楃悊瀹屾瘯'},
+ {label:'03.鎶ヤ环妫�鏌ョ粨鏉�', value:'03.鎶ヤ环妫�鏌ョ粨鏉�'},
+ {label:'04.鎶ヤ环璺熻繘涓�', value:'04.鎶ヤ环璺熻繘涓�'},
+ {label:'05.鎶ヤ环鍚屾剰瀹屽', value:'05.鎶ヤ环鍚屾剰瀹屽'},
+ {label:'06.闆朵欢榻愬', value:'06.闆朵欢榻愬'},
+ {label:'07.淇悊闁嬪', value:'07.淇悊闁嬪'},
+ {label:'08.淇悊棰勮瀹屾垚', value:'08.淇悊棰勮瀹屾垚'},
+ {label:'09.淇悊瀹屾垚', value:'09.淇悊瀹屾垚'},
+ {label:'10.鏈�缁堟鏌ュ畬鎴�', value:'10.鏈�缁堟鏌ュ畬鎴�'},
+ {label:'11.RC淇悊鍝佸凡杩旈��', value:'11.RC淇悊鍝佸凡杩旈��'},
+ {label:'12.鍙戠エ宸插彂閫�', value:'12.鍙戠エ宸插彂閫�'},
+ {label:'13.宸茶繑閫佸埌鐢ㄦ埛', value:'13.宸茶繑閫佸埌鐢ㄦ埛'},
+ {label:'14.鏀跺埌楠屾敹鍗�', value:'14.鏀跺埌楠屾敹鍗�'},
+ {label:'15.楠屾敹鍗曠鏀跺鏍搁�氳繃', value:'15.楠屾敹鍗曠鏀跺鏍搁�氳繃'},
+ {label:'16.閮ㄥ垎浠樻', value:'16.閮ㄥ垎浠樻'},
+ {label:'16.瀹屾瘯', value:'16.瀹屾瘯'},
+ {label:'17.浠樻瀹屾瘯', value:'17.浠樻瀹屾瘯'},
+ {label:'00.鍙栨秷', value:'00.鍙栨秷'},
+ {label:'00.鍒犻櫎', value:'00.鍒犻櫎'},
+ {label:'00.鍏抽棴', value:'00.鍏抽棴'}];
+ //鏈嶅姟鏂瑰紡
+ siteRepairItems = [{label:'--鏃�--',value:''},
+ {label:'RC淇悊',value:'RC淇悊'},
+ {label:'鐩撮�丼ORC淇悊',value:'鐩撮�丼ORC淇悊'},
+ {label:'鐩撮�丱GZ淇悊',value:'鐩撮�丱GZ淇悊'},
+ {label:'鍔炰簨澶勪慨鐞�',value:'鍔炰簨澶勪慨鐞�'},
+ {label:'鐜板満淇悊',value:'鐜板満淇悊'}];
+
+ searchObj = {};
+ repair = {};
+ selectedRepairs;
+
+ /* @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }*/
+
+ connectedCallback(){
+ // console.log(this.recordId);
+ }
+ //鐘舵��1
+ handleStatus1Change(event){
+ /*console.log(event);
+ console.log(event.detail);*/
+ this.searchObj.Status1 = event.detail.value;
+ // console.log(JSON.stringify(this.searchObj));
+ }
+ //鐘舵��2
+ handleStatus2Change(event){
+ this.searchObj.Status2 = event.detail.value;
+ // console.log(this.searchObj);
+ }
+ //鏈嶅姟鏂瑰紡
+ handleSiteChange(event){
+ this.searchObj.onSiteRepair = event.detail.value;
+ // console.log(this.searchObj);
+ }
+ //RS淇悊鍗曞彿 RepairName
+ handleRepairNameChange(event){
+ this.searchObj.RepairName = event.detail.value;
+ // console.log(this.searchObj);
+ }
+ //SAP淇悊鍗曞彿 SAPRepairNo
+ handleSAPRepairNoChange(event){
+ this.searchObj.SAPRepairNo = event.detail.value;
+ // console.log(this.searchObj);
+ }
+ //缁翠慨涓績 workLocationSelect
+ handleWorkLocationChange(event){
+ this.searchObj.workLocationSelect = event.detail.value;
+ }
+ //鏈鸿韩缂栫爜 SerialNumber
+ handleSerialNumberChange(event){
+ this.searchObj.SerialNumber = event.detail.value;
+ }
+ // 鐪佷唤 State_Hospital
+ handleStateHospitalChange(event){
+ this.searchObj.State_Hospital = event.detail.value;
+ }
+ //鍖婚櫌鍚嶇О HospitalName
+ handleHospitalChange(event){
+ this.searchObj.HospitalName = event.detail.value;
+ }
+ //FSE鐢宠鏃� repair.Aware_date__c
+ handleAwareDateDStart(event){
+ this.repair.Aware_date__c = event.detail.value;
+ console.log(this.repair.Aware_date__c);
+ }
+ // repair.Aware_date2__c
+ handleAwareDateDEnd(event){
+ this.repair.Aware_date2__c = event.detail.value;
+ // console.log(this.repair.Aware_date2__c);
+ }
+ // 淇悊濮旀墭鑰� repair.Incharge_Staff__c
+ handleInchargeStaffChange(event){
+ this.repair.Incharge_Staff__c = event.detail.value;
+ // console.log(this.repair.Aware_date2__c);
+ }
+
+ //妫�绱�
+ searchRepair(event) {
+ console.log(this.repair.Aware_date__c);
+ if (JSON.stringify(this.repair) != "{}") {
+ console.log('this.repair');
+ this.searchObj.repair = this.repair;
+ // fse 鏃堕棿鏉′欢
+ /*if (!(this.repair.Aware_date__c != null && this.repair.Aware_date2__c != null) || this.repair.Aware_date__c > this.repair.Aware_date2__c) {
+ const event = new ShowToastEvent({
+ title: 'error',
+ message: 'FSE鐢宠鏃ヨ緭鍏ユ湁璇�',
+ variant:'error',
+ });
+ this.dispatchEvent(event);
+ return;
+ }*/
+ }
+ let jsonStr = JSON.stringify(this.searchObj);
+ if (jsonStr === "{}") {
+ const event = new ShowToastEvent({
+ title: 'error',
+ message: '璇疯嚦灏戞坊鍔犱竴涓绱㈡潯浠�!',
+ variant:'error',
+ });
+ this.dispatchEvent(event);
+ }else{
+ console.log(jsonStr);
+ search({
+ json: jsonStr
+ }).then(result => {
+ console.log(result.repairData);
+ console.log('length:'+result.repairData.length);
+ if (result.repairData.length == 0 || result.repairData.length == 200) {
+ const event = new ShowToastEvent({
+ title: 'warning',
+ message: result.status,
+ variant:'warning',
+ });
+ this.dispatchEvent(event);
+ }
+ let returnArr = [];
+ result.repairData.forEach(function(v){
+ let objRepair = v.repair;
+ //娣诲姞淇悊濮旀墭鑰呭拰鍨嬪彿鍚嶇О
+ objRepair.deliveredProductName = objRepair.Delivered_Product__r.Name;
+ objRepair.deliveredProductUrl = "/"+objRepair.Delivered_Product__c;
+ objRepair.inchargeStaffName = objRepair.Incharge_Staff__r.Name;
+ objRepair.inchargeStaffUrl = "/"+objRepair.Incharge_Staff__c;
+ // console.log(objRepair);
+ returnArr.push(objRepair);
+ });
+ /*console.log('arr');
+ console.log(arr);
+ console.log(arr.length);*/
+ this.data = returnArr;
+ // console.log(this.data);
+ }).catch(error => {
+ console.log("error");
+ console.log(error);
+ }).finally(() => {
+
+ });
+ }
+
+
+ }
+ //瀵煎嚭涓篍xcel 鐢籺able
+ exportContactData(){
+ // Prepare a html table
+ let doc = '<table>';
+ // Add styles for the table
+ doc += '<style>';
+ doc += 'table, th, td {';
+ doc += ' border: 1px solid black;';
+ doc += ' border-collapse: collapse;';
+ doc += '}';
+ doc += '</style>';
+ // Add all the Table Headers
+ doc += '<tr>';
+ this.columns.forEach(element => {
+ doc += '<th>'+ element.label +'</th>'
+ });
+ doc += '</tr>';
+ // Add the data rows
+ let fieldNameArr =[];
+ this.columns.forEach(function(v){
+ if (v['typeAttributes']) {
+ fieldNameArr.push(v['typeAttributes'].label.fieldName);
+ }else{
+ fieldNameArr.push(v.fieldName);
+ }
+ });
+ console.log(fieldNameArr);
+ fieldNameArr.forEach(v=>{
+ console.log(v);
+ // console.log(this.data[0].v);
+ })
+ this.data.forEach(record => {
+ doc += '<tr>';
+ if (record.Status1__c != null) {
+ doc += '<th>'+record.Status1__c+'</th>';
+ }else{
+ doc += '<th></th>'
+ }
+ if (record.Status2__c != null) {
+ doc += '<th>'+record.Status2__c+'</th>';
+ }else{
+ doc += '<th></th>'
+ }
+ if (record.Name != null) {
+ doc += '<th>'+record.Name+'</th>';
+ }else{
+ doc += '<th></th>'
+ }
+ if (record.SAP_Service_Repair_No__c != null) {
+ doc += '<th>'+record.SAP_Service_Repair_No__c+'</th>';
+ }else{
+ doc += '<th></th>'
+ }
+ if (record.deliveredProductName != null) {
+ doc += '<th>'+record.deliveredProductName+'</th>';
+ }else{
+ doc += '<th></th>'
+ }
+ if (record.SerialNumber__c != null) {
+ doc += '<th>'+record.SerialNumber__c+'</th>';
+ }else{
+ doc += '<th></th>'
+ }
+ if (record.HP_Name__c != null) {
+ doc += '<th>'+record.HP_Name__c+'</th>';
+ }else{
+ doc += '<th></th>'
+ }
+ if (record.State_Hospital__c != null) {
+ doc += '<th>'+record.State_Hospital__c+'</th>';
+ }else{
+ doc += '<th></th>'
+ }
+ if (record.inchargeStaffName != null) {
+ doc += '<th>'+record.inchargeStaffName+'</th>';
+ }else{
+ doc += '<th></th>'
+ }
+ if (record.FSE_ApplyForRepair_Day__c != null) {
+ doc += '<th>'+record.FSE_ApplyForRepair_Day__c+'</th>';
+ }else{
+ doc += '<th></th>'
+ }
+ if (record.work_location_select__c != null) {
+ doc += '<th>'+record.work_location_select__c+'</th>';
+ }else{
+ doc += '<th></th>'
+ }
+ if (record.On_site_repair__c != null) {
+ doc += '<th>'+record.On_site_repair__c+'</th>';
+ }else{
+ doc += '<th></th>'
+ }
+ if (record.Number_of_EffectiveContract__c != null) {
+ doc += '<th>'+record.Number_of_EffectiveContract__c+'</th>';
+ }else{
+ doc += '<th></th>'
+ }
+ if (record.NewProductGuaranteeObject__c != null) {
+ doc += '<th>'+record.NewProductGuaranteeObject__c+'</th>';
+ }else{
+ doc += '<th></th>'
+ }
+ // fieldNameArr.forEach(fieldName =>{
+ // doc += '<th>'+record.fieldName+'</th>';
+ // });
+ doc += '</tr>';
+ });
+ doc += '</table>';
+ var element = 'data:application/vnd.ms-excel,' + encodeURIComponent(doc);
+ let downloadElement = document.createElement('a');
+ downloadElement.href = element;
+ downloadElement.target = '_self';
+ // use .csv as extension on below line if you want to export data as csv
+ downloadElement.download = '淇悊鏄庣粏琛�.xls';
+ document.body.appendChild(downloadElement);
+ downloadElement.click();
+ }
+
+ // this method validates the data and creates the csv file to download this.data鐨勬墍鏈夊瓧娈�
+ downloadCSVFile1() {
+ console.log("downloadCSVFile1");
+ let rowEnd = '\n';
+ let csvString = '';
+ // this set elminates the duplicates if have any duplicate keys
+ let rowData = new Set();
+ let columnsData = new Set();
+ let columnsLabelData = new Set();
+
+ // getting keys from data
+ this.data.forEach(function (record) {
+ Object.keys(record).forEach(function (key) {
+ rowData.add(key);
+ });
+ });
+ console.log(rowData);
+
+ // Array.from() method returns an Array object from any object with a length property or an iterable object.
+ rowData = Array.from(rowData);
+ console.log(rowData);
+
+ // splitting using ','
+ csvString += rowData.join(',');
+ csvString += rowEnd;
+ console.log(csvString);
+ this.columns.forEach(function(v){
+ columnsLabelData.add(v.label);
+ if (v['typeAttributes']) {
+ columnsData.add(v['typeAttributes'].label.fieldName);
+ }else{
+ columnsData.add(v.fieldName);
+ }
+ });
+ console.log("columnsData");
+ console.log(columnsLabelData);
+ console.log(columnsData);
+ console.log(rowData[1]);
+ console.log(Array.from(columnsData));
+ console.log(Array.from(columnsData).hasOwnProperty(rowData[1]));
+ console.log(this.data[0].Name);
+ console.log(this.data[0][rowData[1]]);
+ // main for loop to get the data based on key value
+ for(let i=0; i < this.data.length; i++){
+ let colValue = 0;
+
+ // validating keys in data
+ for(let key in rowData) {
+ if(rowData.hasOwnProperty(key)) {
+ // Key value
+ // Ex: Id, Name
+ let rowKey = rowData[key];
+ // add , after every value except the first.
+ if(colValue > 0){
+ csvString += ',';
+ }
+ // If the column is undefined, it as blank in the CSV file.
+ let value = this.data[i][rowKey] === undefined ? '' : this.data[i][rowKey];
+ csvString += '"'+ value +'"';
+ colValue++;
+ }
+ }
+ csvString += rowEnd;
+ }
+
+ // Creating anchor element to download
+ let downloadElement = document.createElement('a');
+
+ // This encodeURI encodes special characters, except: , / ? : @ & = + $ # (Use encodeURIComponent() to encode these characters).
+ downloadElement.href = 'data:text/csv;charset=utf-8,' + encodeURI(csvString);
+ downloadElement.target = '_self';
+ // CSV File Name
+ downloadElement.download = 'Account Data.csv';
+ // below statement is required if you are using firefox browser
+ document.body.appendChild(downloadElement);
+ // click() Javascript function to download CSV file
+ downloadElement.click();
+ }
+ //瀵煎嚭涓篍xcel
+ downloadCSVFile() {
+ console.log("downloadCSVFile");
+ let rowEnd = '\n';
+ let csvString = '';
+ // this set elminates the duplicates if have any duplicate keys
+ //琛ㄦ牸鏍囬
+ let columnsData = new Set();
+ //琛ㄦ牸瀛楁
+ let rowData = new Set();
+
+ // getting keys from data
+ this.columns.forEach(function(v){
+ columnsData.add(v.label);
+ if (v['typeAttributes']) {
+ rowData.add(v['typeAttributes'].label.fieldName);
+ }else{
+ rowData.add(v.fieldName);
+ }
+ });
+ console.log(columnsData);
+ console.log(rowData);
+ // Array.from() method returns an Array object from any object with a length property or an iterable object.
+ rowData = Array.from(rowData);
+ columnsData = Array.from(columnsData);
+ // getting keys from data
+ /* console.log("rowData");
+ rowData.forEach(function(v){
+ console.log(v);
+ });
+ console.log("columnsData");
+ columnsData.forEach(function(v){
+ console.log(v);
+ }); */
+
+ // splitting using ','
+ csvString += columnsData.join(',');
+ csvString += rowEnd;
+ // console.log(csvString);
+ // main for loop to get the data based on key value
+ for(let i=0; i < this.data.length; i++){
+ let colValue = 0;
+
+ // validating keys in data
+ for(let key in rowData) {
+ if(rowData.hasOwnProperty(key)) {//del
+ // Key value
+ // Ex: Id, Name
+ let rowKey = rowData[key];
+ // add , after every value except the first.
+ if(colValue > 0){
+ csvString += ',';
+ }
+ // If the column is undefined, it as blank in the CSV file.
+ let value = this.data[i][rowKey] === undefined ? '' : this.data[i][rowKey];
+ csvString += '"'+ value +'"';
+ colValue++;
+ }
+ }
+ csvString += rowEnd;
+ }
+
+ // Creating anchor element to download
+ let downloadElement = document.createElement('a');
+
+ // This encodeURI encodes special characters, except: , / ? : @ & = + $ # (Use encodeURIComponent() to encode these characters).
+ downloadElement.href = 'data:text/csv;charset=utf-8,' + encodeURI(csvString);
+ downloadElement.target = '_self';
+ // CSV File Name
+ downloadElement.download = '淇悊鏄庣粏琛�.csv';
+ // below statement is required if you are using firefox browser
+ document.body.appendChild(downloadElement);
+ // click() Javascript function to download CSV file
+ downloadElement.click();
+ }
+ //鑾峰彇閫変腑Repair
+ getSelectedRows(event) {
+ const selectedRows = event.detail.selectedRows;
+ console.log(selectedRows);
+ //Repair__c selectedRepairs
+ // Display that fieldName of the selected rows
+ let selectedRepairsArr = [];
+ for (let i = 0; i < selectedRows.length; i++) {
+ selectedRepairsArr.push(selectedRows[i]);
+ }
+ this.selectedRepairs = selectedRepairsArr;
+ }
+
+ //璺宠浆鍒皃df椤甸潰
+ skipPage() {
+ console.log("selectedRows");
+ // console.log(jsonStr);
+ if (this.selectedRepairs.length <= 0 ) {
+ const event = new ShowToastEvent({
+ title: 'error',
+ message: '璇疯嚦灏戦�夋嫨涓�涓慨鐞�',
+ variant:'error',
+ });
+ this.dispatchEvent(event);
+ return;
+ }
+ let jsonStr = JSON.stringify(this.selectedRepairs);
+ showPDF({
+ json: jsonStr
+ }).then(result => {
+ console.log(result);
+ if (result.indexOf("https://ocsm") != -1) {
+ window.open(result, "缁翠慨濮旀墭涔DF", "");
+ }else{
+ const event = new ShowToastEvent({
+ title: 'error',
+ message: result,
+ variant:'error',
+ });
+ this.dispatchEvent(event);
+ }
+ }).catch(error => {
+ console.log("error");
+ console.log(error);
+ }).finally(() => {
+
+ });
+ }
+
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexBatchSelectRepairLWC/lexBatchSelectRepairLWC.js-meta.xml b/force-app/main/default/lwc/lexBatchSelectRepairLWC/lexBatchSelectRepairLWC.js-meta.xml
new file mode 100644
index 0000000..2b7649d
--- /dev/null
+++ b/force-app/main/default/lwc/lexBatchSelectRepairLWC/lexBatchSelectRepairLWC.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexBeforeOPDPDFBtn/lexBeforeOPDPDFBtn.css b/force-app/main/default/lwc/lexBeforeOPDPDFBtn/lexBeforeOPDPDFBtn.css
new file mode 100644
index 0000000..049e19f
--- /dev/null
+++ b/force-app/main/default/lwc/lexBeforeOPDPDFBtn/lexBeforeOPDPDFBtn.css
@@ -0,0 +1,10 @@
+.lexBeforeOPDPDFBtnHolder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+.container .uiContainerManager{
+ display: none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexBeforeOPDPDFBtn/lexBeforeOPDPDFBtn.html b/force-app/main/default/lwc/lexBeforeOPDPDFBtn/lexBeforeOPDPDFBtn.html
new file mode 100644
index 0000000..159518b
--- /dev/null
+++ b/force-app/main/default/lwc/lexBeforeOPDPDFBtn/lexBeforeOPDPDFBtn.html
@@ -0,0 +1,15 @@
+<!--
+ * @Description:
+ * @version:
+ * @Author: chen jing wu
+ * @Date: 2023-04-13 15:08:43
+ * @LastEditors: chen jing wu
+ * @LastEditTime: 2023-04-14 14:13:25
+-->
+<template>
+ <div class="lexBeforeOPDPDFBtnHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ <lightning-button label="Show Toast" onclick={showToast}></lightning-button>
+ <lightning-button onclick={handleConfirmClick} label="Open Confirm Modal"></lightning-button>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexBeforeOPDPDFBtn/lexBeforeOPDPDFBtn.js b/force-app/main/default/lwc/lexBeforeOPDPDFBtn/lexBeforeOPDPDFBtn.js
new file mode 100644
index 0000000..babbb46
--- /dev/null
+++ b/force-app/main/default/lwc/lexBeforeOPDPDFBtn/lexBeforeOPDPDFBtn.js
@@ -0,0 +1,108 @@
+/*
+ * @Description:
+ * @version:
+ * @Author: chen jing wu
+ * @Date: 2023-04-13 15:08:43
+ * @LastEditors: chen jing wu
+ * @LastEditTime: 2023-04-14 15:37:35
+ */
+import { api, wire,LightningElement } from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import init from '@salesforce/apex/OpportunityLightingButtonController.initFoBeforeOPDPDFBtnButton';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+import selectCommonSequence from '@salesforce/apex/ControllerUtil.selectCommonSequence';
+import addReportOPWithEvaluationPDF from '@salesforce/apex/Add_Report.addReportOPWithEvaluationPDF';
+import LightningConfirm from 'lightning/confirm';
+export default class LexBeforeOPDPDFBtn extends LightningElement {
+ @api recordId;
+ accountId;
+ userId;
+ IsLoading = true;
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+ connectedCallback(){
+ init({
+ recordId: this.recordId
+ }).then(result=>{
+ this.accountId = result.accountId;
+ this.userId = result.userId;
+ this.beforeOPDPDFBtn();
+ })
+ }
+ beforeOPDPDFBtn(){
+ this.handleConfirmClick('鏄惁鏂板缓OPD鎶ュ憡涔︼紵\n[纭畾] => 鏂板缓OPD\n[鍙栨秷] => 鍙敓鎴� 锛讳骇鍝佽瘯鐢ㄨ瘎浠凤冀');
+ }
+ showToast(msg,type) {
+ const event = new ShowToastEvent({
+ title: '',
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ }
+
+
+ async handleConfirmClick(msg) {
+ const result = await LightningConfirm.open({
+ message: msg,
+ variant: 'headerless',
+ label: 'this is the aria-label value',
+ });
+ console.log(result);
+ if(result){
+ try {
+ selectCommonSequence({
+ valueField: 'EvaluationPDF_NextValue__c',
+ formatField: 'EvaluationPDF_Format__c'
+ }).then(result=>{
+ var pdfno = result;
+ addReportOPWithEvaluationPDF({
+ "repOwnerId": this.userId,
+ "reportId": "",
+ "dailyReportId": "",
+ "eventId": "",
+ "recordType": "OPD",
+ "aId": this.accountId,
+ "visitor1": "",
+ "visitor2": "",
+ "visitor3": "",
+ "visitor4": "",
+ "visitor5": "",
+ "opp1": this.recordId,
+ "opp2": "",
+ "opp3": "",
+ "opp4": "",
+ "opp5": "",
+ "reportDate": "",
+ "evaluationPDFNumber": pdfno
+ }).then(()=>{
+ // 20220913 ljh WLIG-CHMATN update end
+ this.IsLoading = false;
+ window.open('/apex/BeforeOPDPDF?oid=' + this.recordId + '&pdfNo=' + pdfno, 'BeforeOPDPDF');
+ this.dispatchEvent(new CloseActionScreenEvent());
+ })
+ });
+ } catch(e) {
+ this.showToast(e,"error");
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ }else{
+ window.open('/apex/BeforeOPDPDF?oid=' + this.recordId, 'BeforeOPDPDF');
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexBeforeOPDPDFBtn/lexBeforeOPDPDFBtn.js-meta.xml b/force-app/main/default/lwc/lexBeforeOPDPDFBtn/lexBeforeOPDPDFBtn.js-meta.xml
new file mode 100644
index 0000000..329e839
--- /dev/null
+++ b/force-app/main/default/lwc/lexBeforeOPDPDFBtn/lexBeforeOPDPDFBtn.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexBeforeOPDPDFBtnSIS/lexBeforeOPDPDFBtnSIS.css b/force-app/main/default/lwc/lexBeforeOPDPDFBtnSIS/lexBeforeOPDPDFBtnSIS.css
new file mode 100644
index 0000000..7980084
--- /dev/null
+++ b/force-app/main/default/lwc/lexBeforeOPDPDFBtnSIS/lexBeforeOPDPDFBtnSIS.css
@@ -0,0 +1,10 @@
+.lexBeforeOPDPDFBtnSISHolder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+.container .uiContainerManager{
+ display: none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexBeforeOPDPDFBtnSIS/lexBeforeOPDPDFBtnSIS.html b/force-app/main/default/lwc/lexBeforeOPDPDFBtnSIS/lexBeforeOPDPDFBtnSIS.html
new file mode 100644
index 0000000..234e137
--- /dev/null
+++ b/force-app/main/default/lwc/lexBeforeOPDPDFBtnSIS/lexBeforeOPDPDFBtnSIS.html
@@ -0,0 +1,14 @@
+<!--
+ * @Description:
+ * @version:
+ * @Author: chen jing wu
+ * @Date: 2023-04-13 15:55:45
+ * @LastEditors: chen jing wu
+ * @LastEditTime: 2023-04-13 15:56:58
+-->
+<template>
+ <div class="lexBeforeOPDPDFBtnSISHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ <lightning-button label="Show Toast" onclick={showSuccess}></lightning-button>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexBeforeOPDPDFBtnSIS/lexBeforeOPDPDFBtnSIS.js b/force-app/main/default/lwc/lexBeforeOPDPDFBtnSIS/lexBeforeOPDPDFBtnSIS.js
new file mode 100644
index 0000000..db99c83
--- /dev/null
+++ b/force-app/main/default/lwc/lexBeforeOPDPDFBtnSIS/lexBeforeOPDPDFBtnSIS.js
@@ -0,0 +1,97 @@
+/*
+ * @Description:
+ * @version:
+ * @Author: chen jing wu
+ * @Date: 2023-04-13 15:55:45
+ * @LastEditors: chen jing wu
+ * @LastEditTime: 2023-04-13 16:04:14
+ */
+import { api, wire,LightningElement } from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import init from '@salesforce/apex/OpportunityLightingButtonController.initFoBeforeOPDPDFBtnSISButton';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+import selectCommonSequence from '@salesforce/apex/ControllerUtil.selectCommonSequence';
+import addReportOPWithEvaluationPDF from '@salesforce/apex/Add_Report.addReportOPWithEvaluationPDF';
+
+export default class LexBeforeOPDPDFBtnSIS extends LightningElement {
+ @api recordId;
+ accountId;
+ userId;
+ IsLoading = true;
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+ connectedCallback(){
+ init({
+ recordId: this.recordId
+ }).then(result=>{
+ this.accountId = result.accountId;
+ this.userId = result.userId;
+ this.beforeOPDPDFBtn();
+ })
+ }
+ beforeOPDPDFBtn(){
+ if (window.confirm('鏄惁鏂板缓SIS鎶ュ憡涔︼紵')) {
+ try {
+ selectCommonSequence({
+ valueField: 'EvaluationPDF_NextValue__c',
+ formatField: 'EvaluationPDF_Format__c'
+ }).then(result=>{
+ var pdfno = result;
+ addReportOPWithEvaluationPDF({
+ "repOwnerId": this.userId,
+ "reportId": "",
+ "dailyReportId": "",
+ "eventId": "",
+ "recordType": "SIS",
+ "aId": this.accountId,
+ "visitor1": "",
+ "visitor2": "",
+ "visitor3": "",
+ "visitor4": "",
+ "visitor5": "",
+ "opp1": this.recordId,
+ "opp2": "",
+ "opp3": "",
+ "opp4": "",
+ "opp5": "",
+ "reportDate": "",
+ "evaluationPDFNumber": pdfno
+ }).then(()=>{
+ // 20220913 ljh WLIG-CHMATN update end
+ this.IsLoading = false;
+ window.open('/apex/BeforeOPDPDF?oid=' + this.recordId + '&pdfNo=' + pdfno, 'BeforeOPDPDF');
+ this.dispatchEvent(new CloseActionScreenEvent());
+ })
+ });
+ } catch(e) {
+ this.showToast(e,"error");
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ } else {
+ window.open('/apex/BeforeOPDPDF?oid=' + this.recordId, 'BeforeOPDPDF');
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ }
+ showToast(msg,type) {
+ const event = new ShowToastEvent({
+ title: '',
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexBeforeOPDPDFBtnSIS/lexBeforeOPDPDFBtnSIS.js-meta.xml b/force-app/main/default/lwc/lexBeforeOPDPDFBtnSIS/lexBeforeOPDPDFBtnSIS.js-meta.xml
new file mode 100644
index 0000000..329e839
--- /dev/null
+++ b/force-app/main/default/lwc/lexBeforeOPDPDFBtnSIS/lexBeforeOPDPDFBtnSIS.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexBidAnnouncementApplyForButton/lexBidAnnouncementApplyForButton.html b/force-app/main/default/lwc/lexBidAnnouncementApplyForButton/lexBidAnnouncementApplyForButton.html
new file mode 100644
index 0000000..e286a5b
--- /dev/null
+++ b/force-app/main/default/lwc/lexBidAnnouncementApplyForButton/lexBidAnnouncementApplyForButton.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="ApplyFor" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexBidAnnouncementApplyForButton/lexBidAnnouncementApplyForButton.js b/force-app/main/default/lwc/lexBidAnnouncementApplyForButton/lexBidAnnouncementApplyForButton.js
new file mode 100644
index 0000000..910869e
--- /dev/null
+++ b/force-app/main/default/lwc/lexBidAnnouncementApplyForButton/lexBidAnnouncementApplyForButton.js
@@ -0,0 +1,74 @@
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import init from '@salesforce/apex/BidAnnouncementController.BidAnnouncementController';
+import ApplyFor from '@salesforce/apex/BidAnnouncementController.ApplyFor';
+import { updateRecord } from 'lightning/uiRecordApi';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+export default class lexBidAnnouncementApplyForButton extends LightningElement {
+ @api recordId;//OwnerId
+ ownerId;//鎵�鏈変汉id
+ id;//杩斿洖鍊肩殑id
+ IsLoading = true;
+ arrMessage = [];
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+
+ connectedCallback(){
+ this.IsLoading = false;
+ this.ApplyFor();
+ }
+
+ ApplyFor(){
+ ApplyFor({recordId:this.recordId}).then(res=>{
+ console.log(res);
+ if(res == '1'){
+ this.showToast('璇锋眰鐢宠鎴愬姛,鐢宠涓�傘�傘��','success');
+ this.updateRecordView();
+ }else{
+ var messageage = "";
+ messageage = res.split(',')[1];
+ this.showToast(messageage,'error');
+ }
+ })
+ }
+
+
+ updateRecordView() {
+ updateRecord({fields: { Id: this.recordId }});
+ }
+
+ showToast(msg,type) {
+ const event = new ShowToastEvent({
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+}
+
+// var Bid_Announcement = new sforce.SObject("Bid_Announcement__c");
+// Bid_Announcement.Id = "{!Bid_Announcement__c.Id}";
+// Bid_Announcement.Status__c = "鐢宠涓�";
+// Bid_Announcement.Request_flag__c = "true";
+// Bid_Announcement.Request_user__c = "{!$User.Id}";
+// var serverTimestamp = sforce.connection.getServerTimestamp();
+// Bid_Announcement.Request_date__c = serverTimestamp.timestamp;
+
+// var result = sforce.connection.update([Bid_Announcement]);
+// var messages = getConnectDMLErrorMessages(result);
+// if (messages.length > 0) {
+// alert(messages.join("\n"));
+// }
+// location.reload();
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexBidAnnouncementApplyForButton/lexBidAnnouncementApplyForButton.js-meta.xml b/force-app/main/default/lwc/lexBidAnnouncementApplyForButton/lexBidAnnouncementApplyForButton.js-meta.xml
new file mode 100644
index 0000000..2b7649d
--- /dev/null
+++ b/force-app/main/default/lwc/lexBidAnnouncementApplyForButton/lexBidAnnouncementApplyForButton.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexBidAnnouncementConsentButton/lexBidAnnouncementConsentButton.html b/force-app/main/default/lwc/lexBidAnnouncementConsentButton/lexBidAnnouncementConsentButton.html
new file mode 100644
index 0000000..55743be
--- /dev/null
+++ b/force-app/main/default/lwc/lexBidAnnouncementConsentButton/lexBidAnnouncementConsentButton.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="Consent" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexBidAnnouncementConsentButton/lexBidAnnouncementConsentButton.js b/force-app/main/default/lwc/lexBidAnnouncementConsentButton/lexBidAnnouncementConsentButton.js
new file mode 100644
index 0000000..b8fc756
--- /dev/null
+++ b/force-app/main/default/lwc/lexBidAnnouncementConsentButton/lexBidAnnouncementConsentButton.js
@@ -0,0 +1,83 @@
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import ConSent from '@salesforce/apex/BidAnnouncementController.ConSent';
+import { updateRecord } from 'lightning/uiRecordApi';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+export default class lexBidAnnouncementRejectButton extends LightningElement {
+ @api recordId;//OwnerId
+ ownerId;//鎵�鏈変汉id
+ id;//杩斿洖鍊肩殑id
+ IsLoading = true;
+ arrMessage = [];
+ BidCancel = null;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+
+ connectedCallback(){
+ this.IsLoading = false;
+ this.Consent();
+ }
+
+ Consent(){
+ ConSent({recordId:this.recordId}).then(res=>{
+ console.log(res);
+ if(res == '1'){
+ this.showToast("鍚屾剰璇锋眰鎴愬姛","success");
+ }
+ if(res != "1"){
+ var messageage = "";
+ messageage = res.split(',')[1];
+ this.showToast(messageage,"error");
+ }
+ })
+ }
+
+
+ updateRecordView() {
+ updateRecord({fields: { Id: this.recordId }});
+ }
+
+ showToast(msg,type) {
+ const event = new ShowToastEvent({
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ if(type == 'success'){
+ this.updateRecordView();
+ }
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+}
+
+
+
+
+
+
+
+// var Bid_Announcement = new sforce.SObject("Bid_Announcement__c");
+// Bid_Announcement.Id = "{!Bid_Announcement__c.Id}";
+// Bid_Announcement.Status__c = "澶勭悊瀹屾瘯";
+// Bid_Announcement.Complete__c = "true";
+// Bid_Announcement.Agree_user__c = "{!$User.Id}";
+// var serverTimestamp = sforce.connection.getServerTimestamp();
+// Bid_Announcement.Complete_date__c = serverTimestamp.timestamp;
+
+// var result = sforce.connection.update([Bid_Announcement]);
+// var messages = getConnectDMLErrorMessages(result);
+// if (messages.length > 0) {
+// alert(messages.join("\n"));
+// }
+// location.reload();
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexBidAnnouncementConsentButton/lexBidAnnouncementConsentButton.js-meta.xml b/force-app/main/default/lwc/lexBidAnnouncementConsentButton/lexBidAnnouncementConsentButton.js-meta.xml
new file mode 100644
index 0000000..2b7649d
--- /dev/null
+++ b/force-app/main/default/lwc/lexBidAnnouncementConsentButton/lexBidAnnouncementConsentButton.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexBidAnnouncementRejectButton/lexBidAnnouncementRejectButton.html b/force-app/main/default/lwc/lexBidAnnouncementRejectButton/lexBidAnnouncementRejectButton.html
new file mode 100644
index 0000000..be06a03
--- /dev/null
+++ b/force-app/main/default/lwc/lexBidAnnouncementRejectButton/lexBidAnnouncementRejectButton.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="reject" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexBidAnnouncementRejectButton/lexBidAnnouncementRejectButton.js b/force-app/main/default/lwc/lexBidAnnouncementRejectButton/lexBidAnnouncementRejectButton.js
new file mode 100644
index 0000000..98f7446
--- /dev/null
+++ b/force-app/main/default/lwc/lexBidAnnouncementRejectButton/lexBidAnnouncementRejectButton.js
@@ -0,0 +1,93 @@
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import UserInfo_Owner from '@salesforce/apex/BidAnnouncementController.UserInfo_Owner';
+import Reject from '@salesforce/apex/BidAnnouncementController.Reject';
+import { updateRecord } from 'lightning/uiRecordApi';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+export default class lexBidAnnouncementRejectButton extends LightningElement {
+ @api recordId;//OwnerId
+ ownerId;//鎵�鏈変汉id
+ id;//杩斿洖鍊肩殑id
+ IsLoading = true;
+ arrMessage = [];
+ BidCancel = null;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+
+ connectedCallback(){
+ this.IsLoading = false;
+ this.Reject();
+ }
+
+ Reject(){
+ UserInfo_Owner().then(res=>{
+ console.log(res);
+ this.BidCancel = res.BidCancel;
+ if(this.BidCancel == false){
+ this.showToast('娌℃湁椹冲洖鐨勬潈闄�',"error");
+ }else{
+ Reject({
+ recordId: this.recordId
+ }).then(requst=>{
+ if(requst == '1'){
+ this.showToast("椹冲洖璇锋眰鎴愬姛","success");
+ }
+ if(requst != "1"){
+ var messageage = "";
+ messageage = requst.split(',')[1];
+ this.showToast(messageage,"error");
+ }
+ })
+ }
+ })
+ }
+
+
+ updateRecordView() {
+ updateRecord({fields: { Id: this.recordId }});
+ }
+
+ showToast(msg,type) {
+ const event = new ShowToastEvent({
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ if(type == 'success'){
+ this.updateRecordView();
+ }
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+}
+
+// if ('{!$User.BidCancel__c}' == 'false') {
+// alert("娌℃湁椹冲洖鐨勬潈闄�");
+// } else {
+// var Bid_Announcement = new sforce.SObject("Bid_Announcement__c");
+// Bid_Announcement.Id = "{!Bid_Announcement__c.Id}";
+// Bid_Announcement.Status__c = "鑽夋涓�";
+// Bid_Announcement.Complete__c = "false";
+// Bid_Announcement.Agree_user__c = null;
+// Bid_Announcement.Complete_date__c = null;
+// Bid_Announcement.Request_flag__c = "false";
+// Bid_Announcement.Request_user__c = null;
+// Bid_Announcement.Request_date__c = null;
+
+// var result = sforce.connection.update([Bid_Announcement]);
+// var messages = getConnectDMLErrorMessages(result);
+// if (messages.length > 0) {
+// alert(messages.join("\n"));
+// }
+// location.reload();
+// }
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexBidAnnouncementRejectButton/lexBidAnnouncementRejectButton.js-meta.xml b/force-app/main/default/lwc/lexBidAnnouncementRejectButton/lexBidAnnouncementRejectButton.js-meta.xml
new file mode 100644
index 0000000..2b7649d
--- /dev/null
+++ b/force-app/main/default/lwc/lexBidAnnouncementRejectButton/lexBidAnnouncementRejectButton.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCancel/lexCancel.css b/force-app/main/default/lwc/lexCancel/lexCancel.css
new file mode 100644
index 0000000..6e1b0a2
--- /dev/null
+++ b/force-app/main/default/lwc/lexCancel/lexCancel.css
@@ -0,0 +1,10 @@
+.cancelHolder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+.container .uiContainerManager{
+ display: none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCancel/lexCancel.html b/force-app/main/default/lwc/lexCancel/lexCancel.html
new file mode 100644
index 0000000..61b5906
--- /dev/null
+++ b/force-app/main/default/lwc/lexCancel/lexCancel.html
@@ -0,0 +1,6 @@
+<template>
+ <div class="cancelHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ <lightning-button label="Show Toast" onclick={ShowToastEvent}></lightning-button>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCancel/lexCancel.js b/force-app/main/default/lwc/lexCancel/lexCancel.js
new file mode 100644
index 0000000..77a0e59
--- /dev/null
+++ b/force-app/main/default/lwc/lexCancel/lexCancel.js
@@ -0,0 +1,104 @@
+/*
+ * @Description:
+ * @version:
+ * @Author: chen jing wu
+ * @Date: 2023-03-27 13:47:21
+ * @LastEditors: chen jing wu
+ * @LastEditTime: 2023-04-11 16:44:49
+ */
+import { api, wire,LightningElement } from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import init from '@salesforce/apex/ReportController.initForCancelButton';
+import updateForCancelButton from '@salesforce/apex/ReportController.updateForCancelButton';
+import { updateRecord } from 'lightning/uiRecordApi';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+export default class LexCancel extends LightningElement {
+ @api recordId;
+ status;
+ IsLoading = true;
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+
+
+
+ connectedCallback(){
+ console.log(this.recordId);
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result);
+ if (result != null) {
+ this.status = result.status;
+ console.log(this.status);
+ this.cancel();
+ }
+ }).catch(error => {
+ console.log("error");
+ console.log(error);
+ });
+
+ }
+
+ showToast(msg,type) {
+ const event = new ShowToastEvent({
+ title: '',
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ }
+
+
+ updateRecordView(recordId) {
+ updateRecord({fields: { Id: recordId }});
+ }
+
+ cancel () {
+ if (this.status == "鍙栨秷") {
+ this.showToast("宸茬粡鍙栨秷锛�","error");
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ if (this.status == "鎵瑰噯") {
+ this.showToast("宸茬粡鎵瑰噯锛屼笉鑳藉垹闄わ紒","error");
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ if (this.status == "瀹屾瘯") {
+ this.showToast("宸茬粡瀹屾瘯锛屼笉鑳藉垹闄わ紒","error");
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ if (this.status == "鎻愪氦") {
+ this.showToast("宸茬粡鎻愪氦锛屼笉鑳藉垹闄わ紒","error");
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ updateForCancelButton({
+ recordId: this.recordId
+ }).then(result =>{
+ if(result){
+ this.showToast(result,"error");
+ }else{
+ this.showToast("鍙栨秷鎴愬姛锛�","success");
+ this.updateRecordView(this.recordId);
+ }
+ this.IsLoading = false;
+ this.dispatchEvent(new CloseActionScreenEvent());
+ });
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCancel/lexCancel.js-meta.xml b/force-app/main/default/lwc/lexCancel/lexCancel.js-meta.xml
new file mode 100644
index 0000000..329e839
--- /dev/null
+++ b/force-app/main/default/lwc/lexCancel/lexCancel.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCancelApply/lexCancelApply.html b/force-app/main/default/lwc/lexCancelApply/lexCancelApply.html
new file mode 100644
index 0000000..66974ff
--- /dev/null
+++ b/force-app/main/default/lwc/lexCancelApply/lexCancelApply.html
@@ -0,0 +1,4 @@
+<template>
+
+
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCancelApply/lexCancelApply.js b/force-app/main/default/lwc/lexCancelApply/lexCancelApply.js
new file mode 100644
index 0000000..04cee1d
--- /dev/null
+++ b/force-app/main/default/lwc/lexCancelApply/lexCancelApply.js
@@ -0,0 +1,100 @@
+import { LightningElement, track, wire, api } from 'lwc';
+import LightningConfirm from 'lightning/confirm';
+import {CurrentPageReference,NavigationMixin} from 'lightning/navigation';
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+
+
+import cancelApply from '@salesforce/apex/TransferApplyWebService.cancelApply';
+
+export default class lexCancelApply extends LightningElement {
+ @api recordId;
+ IsLoading=true;
+ cancelResult;
+
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference){
+ console.log("杩涘叆椤甸潰");
+ console.log(currentPageReference);
+ if(currentPageReference){
+ const urvalue=currentPageReference.state.recordId;
+ if(urvalue){
+ let str=`${urvalue}`;
+ console.log('str');
+ console.log(str);
+ this.recordId=str;
+
+ }
+ }
+ }
+ connectedCallback() {
+ console.log('this.raeSetId:' + this.recordId);
+
+ LightningConfirm.open({
+ message: '纭畾鍙栨秷锛�',
+ variant: 'headerless',
+ label: 'this is the aria-label value',
+
+ }).then(cancel=>{
+ // this.IsLoading=false;
+ // this.dispatchEvent(new CloseActionScreenEvent());
+ if(cancel) {
+ cancelApply({
+ taId : this.recordId
+ }).then(result => {
+ this.cancelResult = result;
+ this.cancelSubmit().then(res=>{
+ this.IsLoading=false;
+ this.dispatchEvent(new CloseActionScreenEvent());
+ });
+
+ }).catch( error =>{
+ console.log(error);
+ }).finally(()=>{
+
+
+ });
+ }
+
+ });
+
+
+ }
+
+ async cancelSubmit(){
+ if(this.cancelResult == '1') {
+ await this.showToast("",'鍙栨秷鎴愬姛',"success");
+ window.location.href = window.location;
+
+ } else {
+ console.log("result:",this.cancelResult);
+ await this.showToast("",this.cancelResult,"warning");
+ }
+
+ }
+ showToast(_title,_message,_variant) {
+ const event = new ShowToastEvent({
+ title: _title,
+ message:_message,
+ variant: _variant,
+ });
+ this.dispatchEvent(event);
+ }
+
+}
+
+//old js
+
+// {!REQUIRESCRIPT('/soap/ajax/51.0/connection.js')}
+// {!REQUIRESCRIPT('/soap/ajax/51.0/apex.js')}
+// if (confirm("纭畾鍙栨秷锛�")) {
+// var rs = sforce.apex.execute("TransferApplyWebService","cancelApply",{taId:'{!TransferApply__c.Id}'});
+// if(rs == '1'){
+// alert('鍙栨秷鎴愬姛');
+// window.location.href = window.location;
+// }
+// else{
+// alert(rs);
+// }
+// }
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCancelApply/lexCancelApply.js-meta.xml b/force-app/main/default/lwc/lexCancelApply/lexCancelApply.js-meta.xml
new file mode 100644
index 0000000..f004c4d
--- /dev/null
+++ b/force-app/main/default/lwc/lexCancelApply/lexCancelApply.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexCancelApply">
+ <apiVersion>51.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__AppPage</target>
+ <target>lightning__RecordPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCancelReport/lexCancelReport.css b/force-app/main/default/lwc/lexCancelReport/lexCancelReport.css
new file mode 100644
index 0000000..a8fa542
--- /dev/null
+++ b/force-app/main/default/lwc/lexCancelReport/lexCancelReport.css
@@ -0,0 +1,10 @@
+.cancelReportHolder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+.container .uiContainerManager{
+ display: none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCancelReport/lexCancelReport.html b/force-app/main/default/lwc/lexCancelReport/lexCancelReport.html
new file mode 100644
index 0000000..c738dca
--- /dev/null
+++ b/force-app/main/default/lwc/lexCancelReport/lexCancelReport.html
@@ -0,0 +1,6 @@
+<template>
+ <div class="cancelReportHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ <lightning-button label="Show Toast" onclick={ShowToastEvent}></lightning-button>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCancelReport/lexCancelReport.js b/force-app/main/default/lwc/lexCancelReport/lexCancelReport.js
new file mode 100644
index 0000000..0032022
--- /dev/null
+++ b/force-app/main/default/lwc/lexCancelReport/lexCancelReport.js
@@ -0,0 +1,116 @@
+import { api, wire,LightningElement } from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import init from '@salesforce/apex/OpportunityLightingButtonController.initForCancelReportButton';
+import queryForCancelReportButton from '@salesforce/apex/OpportunityLightingButtonController.queryForCancelReportButton';
+import { updateRecord } from 'lightning/uiRecordApi';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+export default class LexCancelReport extends LightningElement {
+ @api recordId;
+ stageName;
+ sapSendOK;
+ cntLostCancelReport;
+ cntLostCancelDraft;
+ jobCategory;
+ biddingProjectNameBid;
+ name;
+ salesAssistantName;
+ salesAssistantID;
+ managerName;
+ salesManagerDepartmentID;
+ salesOwnerBuchang;
+ salesOwnerBuchangID;
+ IsLoading = true;
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+ connectedCallback(){
+ init({
+ recordId: this.recordId
+ }).then(result=>{
+ this.stageName = result.stageName;
+ this.sapSendOK = result.sapSendOK;
+ this.cntLostCancelDraft = result.cntLostCancelDraft;
+ this.cntLostCancelReport = result.cntLostCancelReport;
+ this.jobCategory = result.jobCategory;
+ this.biddingProjectNameBid = result.biddingProjectNameBid;
+ this.name = result.name;
+ this.salesAssistantID = result.salesAssistantID;
+ this.salesAssistantName = result.salesAssistantName;
+ this.managerName = result.managerName;
+ this.salesManagerDepartmentID = result.salesManagerDepartmentID;
+ this.salesOwnerBuchang = result.salesOwnerBuchang;
+ this.salesOwnerBuchangID = result.salesOwnerBuchangID;
+ this.cancelReport();
+ })
+ }
+ showToast(msg,type) {
+ const event = new ShowToastEvent({
+ title: '',
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ }
+ updateRecordView(recordId) {
+ updateRecord({fields: { Id: recordId }});
+ }
+ cancelReport(){
+ //XLIU-CG98L5 銆愬鎵樸�戙�愯瘎浼般�戞柊闇�姹�-鎷涙爣椤圭洰/璇环瀵瑰簲娴佹爣銆佸簾鏍囨敼鍠� start
+ queryForCancelReportButton({
+ recordId: this.recordId
+ }).then(result=>{
+ var sqlResult = result;
+ // alert('娴嬭瘯+锛�'+sqlResult.size);
+ //XLIU-CG98L5 銆愬鎵樸�戙�愯瘎浼般�戞柊闇�姹�-鎷涙爣椤圭洰/璇环瀵瑰簲娴佹爣銆佸簾鏍囨敼鍠� end
+ // js銇牬鍚堛�佺炕瑷炽仌銈屻仧鍊ゃ亴銇с倠銇仹銆佽娉ㄦ剰
+ if (this.stageName != '寮曞悎'
+ && this.stageName != '璇环'
+ ) {
+ this.showToast("鐘舵��1:" + this.stageName + "銆佷笉鑳藉仛 鍙栨秷 浜嗭紒","error");
+
+ }
+ else if (this.sapSendOK == '1') {
+ this.showToast("宸茬粡涓婁紶SAP銆佷笉鑳藉仛 鍙栨秷 浜嗭紒","");
+ }
+ else if (this.cntLostCancelReport - this.cntLostCancelDraft > 0) {
+ this.showToast("璇环宸茬粡鏈� 鍙栨秷锛忓け鍗曟姤鍛� 浜嗭紒","error");
+ }
+ else if (this.jobCategory == '鏀彺') {
+ this.showToast("璇环鎵�鏈変汉鏄姪鐞嗙殑锛屽厛璇蜂慨鏀瑰埌閿�鍞媴褰擄紒","");
+ }
+ //XLIU-CG98L5 銆愬鎵樸�戙�愯瘎浼般�戞柊闇�姹�-鎷涙爣椤圭洰/璇环瀵瑰簲娴佹爣銆佸簾鏍囨敼鍠� start
+ //else if({!NOT(ISBLANK(Opportunity.Bidding_Project_Name_Bid__c))}&& '{!Opportunity.subInfoType__c}' != '3-1锛氬簾鏍囧叕鍛�' &&'{!Opportunity.subInfoType__c}' != '3-2锛氭祦鏍囧叕鍛�'){
+ else if(this.biddingProjectNameBid != undefined && sqlResult.size == 0){
+ this.showToast("鏈夋嫑鎶曟爣椤圭洰鏃跺彧鑳藉仛澶卞崟鎴栭儴鍒嗗け鍗曟姤鍛婏紒","error");
+ }
+ //XLIU-CG98L5 銆愬鎵樸�戙�愯瘎浼般�戞柊闇�姹�-鎷涙爣椤圭洰/璇环瀵瑰簲娴佹爣銆佸簾鏍囨敼鍠� end
+ else {
+ location.href = '/a1U/e?retURL=%2F'+ this.recordId +
+ '&RecordType=01210000000R4hH' +
+ '&CF00N10000004lbGT=' + this.name +
+ '&CF00N10000004lbGT_lkid=' + this.recordId +
+ '&CF00N10000006QShg=' + this.salesAssistantName +
+ '&CF00N10000006QShg_lkid=' + this.salesAssistantID +
+ '&CF00N10000006QShq='+ this.managerName +
+ '&CF00N10000006QShq_lkid=' + this.salesManagerDepartmentID +
+ '&CF00N10000006QShb=' + this.salesOwnerBuchang +
+ '&CF00N10000006QShb_lkid=' + this.salesOwnerBuchangID +
+ '';
+ }
+ this.dispatchEvent(new CloseActionScreenEvent());
+ });
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCancelReport/lexCancelReport.js-meta.xml b/force-app/main/default/lwc/lexCancelReport/lexCancelReport.js-meta.xml
new file mode 100644
index 0000000..329e839
--- /dev/null
+++ b/force-app/main/default/lwc/lexCancelReport/lexCancelReport.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCancelSelect/lexCancelSelect.css b/force-app/main/default/lwc/lexCancelSelect/lexCancelSelect.css
new file mode 100644
index 0000000..af18c76
--- /dev/null
+++ b/force-app/main/default/lwc/lexCancelSelect/lexCancelSelect.css
@@ -0,0 +1,11 @@
+.Holder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+
+.container .uiContainerManager{
+ display : none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCancelSelect/lexCancelSelect.html b/force-app/main/default/lwc/lexCancelSelect/lexCancelSelect.html
new file mode 100644
index 0000000..bf9cadc
--- /dev/null
+++ b/force-app/main/default/lwc/lexCancelSelect/lexCancelSelect.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="Holder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCancelSelect/lexCancelSelect.js b/force-app/main/default/lwc/lexCancelSelect/lexCancelSelect.js
new file mode 100644
index 0000000..e8fe447
--- /dev/null
+++ b/force-app/main/default/lwc/lexCancelSelect/lexCancelSelect.js
@@ -0,0 +1,53 @@
+import { LightningElement,api, track, wire } from 'lwc';
+import {CurrentPageReference} from 'lightning/navigation';
+import { CloseActionScreenEvent } from 'lightning/actions';
+import init from '@salesforce/apex/SelectSubstituteControllerLWT.initFromSelectSubstituteButton';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+export default class lexCancelSelect extends LightningElement {
+ @api recordId;
+ IsLoading=true;
+ id;
+ RentalApplyId;
+ Status;
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference){
+ console.log("杩涘叆椤甸潰");
+ console.log(currentPageReference);
+ if(currentPageReference){
+ const urvalue=currentPageReference.state.recordId;
+ if(urvalue){
+ let str=`${urvalue}`;
+ console.log('str');
+ console.log(str);
+ this.recordId=str;
+ }
+ }
+ }
+
+
+
+ connectedCallback(){
+ console.log(this.recordId);
+ init({recordId:this.recordId}).then(result=>{
+ console.log(result);
+ if(result!=null){
+ this.id=result.id;
+ this.RentalApplyId=result.RentalApplyId;
+ this.Status=result.Status;
+ this.cancelSubmit().then(res=>{
+ this.IsLoading=false;
+ this.dispatchEvent(new CloseActionScreenEvent());
+ });
+ }
+ }).catch(err=>{
+ console.log("error:");
+ console.log(err);
+ }).finally(()=>{
+
+ });
+ }
+
+ async cancelSubmit(){
+ window.open("/apex/EquipmentRentalCancel?raid="+this.RentalApplyId,'cancelSelect','width=500,height=250');
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCancelSelect/lexCancelSelect.js-meta.xml b/force-app/main/default/lwc/lexCancelSelect/lexCancelSelect.js-meta.xml
new file mode 100644
index 0000000..d461072
--- /dev/null
+++ b/force-app/main/default/lwc/lexCancelSelect/lexCancelSelect.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexCancelSelect">
+ <apiVersion>51.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__AppPage</target>
+ <target>lightning__RecordPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCancelSubmit/lexCancelSubmit.css b/force-app/main/default/lwc/lexCancelSubmit/lexCancelSubmit.css
new file mode 100644
index 0000000..2cca6a5
--- /dev/null
+++ b/force-app/main/default/lwc/lexCancelSubmit/lexCancelSubmit.css
@@ -0,0 +1,10 @@
+.cancelSubmitHolder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+.container .uiContainerManager{
+ display: none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCancelSubmit/lexCancelSubmit.html b/force-app/main/default/lwc/lexCancelSubmit/lexCancelSubmit.html
new file mode 100644
index 0000000..f8af820
--- /dev/null
+++ b/force-app/main/default/lwc/lexCancelSubmit/lexCancelSubmit.html
@@ -0,0 +1,6 @@
+<template>
+ <div class="cancelSubmitHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ <lightning-button label="Show Toast" onclick={showSuccess}></lightning-button>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCancelSubmit/lexCancelSubmit.js b/force-app/main/default/lwc/lexCancelSubmit/lexCancelSubmit.js
new file mode 100644
index 0000000..17d0216
--- /dev/null
+++ b/force-app/main/default/lwc/lexCancelSubmit/lexCancelSubmit.js
@@ -0,0 +1,92 @@
+/*
+ * @Description:
+ * @version:
+ * @Author: chen jing wu
+ * @Date: 2023-04-07 09:02:03
+ * @LastEditors: chen jing wu
+ * @LastEditTime: 2023-04-11 11:17:24
+ */
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { NavigationMixin } from 'lightning/navigation';
+import init from '@salesforce/apex/MonthlyReportController.initForCancelSubmitButton';
+import cancel from '@salesforce/apex/MonthlyReportController.cancel';
+import UserInfo_Owner from '@salesforce/apex/TaskFeedbackController.UserInfo_Owner';
+import { updateRecord } from 'lightning/uiRecordApi';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+export default class LexCancelSubmit extends LightningElement {
+ @api recordId;//OwnerId
+ ownerId;
+ monthlyReportId;
+ IsLoading = true;
+
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback () {
+ console.log(this.recordId);
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result);
+ if (result != null) {
+ this.ownerId = result.ownerId;
+ this.monthlyReportId = result.Id;
+ this.cancelSubmit();
+ console.log("end");
+ //window.location.replace("https://ocsm--partial.sandbox.lightning.force.com/lightning/r/Monthly_Report__c/" + this.monthlyReportId + "/view");
+ }
+ }).catch(error => {
+ console.log("error");
+ console.log(error);
+ });
+ }
+
+ showToast(msg,type) {
+ const event = new ShowToastEvent({
+ title: '',
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ }
+ updateRecordView(recordId) {
+ updateRecord({fields: { Id: recordId }});
+ }
+ cancelSubmit () {
+ //闇�瑕佸畬鍠�
+ if(this.ownerId == UserInfo_Owner.Id) {
+ cancel({
+ recordId: this.recordId
+ }).then(result=>{
+ if(result){
+ this.showToast(result,"error");
+ }else{
+ this.showToast("鎴愬姛","success");
+ this.updateRecordView(this.recordId);
+ }
+ this.IsLoading = false;
+ this.dispatchEvent(new CloseActionScreenEvent());
+ });
+ console.log("321");
+ } else {
+ this.showToast("鍙湁鍛ㄦ姤鐨勬墍鏈変汉鍙互鍙栨秷","error");
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCancelSubmit/lexCancelSubmit.js-meta.xml b/force-app/main/default/lwc/lexCancelSubmit/lexCancelSubmit.js-meta.xml
new file mode 100644
index 0000000..709c8f7
--- /dev/null
+++ b/force-app/main/default/lwc/lexCancelSubmit/lexCancelSubmit.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCancelSubmitReport/lexCancelSubmitReport.css b/force-app/main/default/lwc/lexCancelSubmitReport/lexCancelSubmitReport.css
new file mode 100644
index 0000000..3e04b55
--- /dev/null
+++ b/force-app/main/default/lwc/lexCancelSubmitReport/lexCancelSubmitReport.css
@@ -0,0 +1,10 @@
+.cancelSubmitReportHolder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+.container .uiContainerManager{
+ display: none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCancelSubmitReport/lexCancelSubmitReport.html b/force-app/main/default/lwc/lexCancelSubmitReport/lexCancelSubmitReport.html
new file mode 100644
index 0000000..6b80280
--- /dev/null
+++ b/force-app/main/default/lwc/lexCancelSubmitReport/lexCancelSubmitReport.html
@@ -0,0 +1,6 @@
+<template>
+ <div class="cancelSubmitReportHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ <lightning-button label="Show Toast" onclick={ShowToastEvent}></lightning-button>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCancelSubmitReport/lexCancelSubmitReport.js b/force-app/main/default/lwc/lexCancelSubmitReport/lexCancelSubmitReport.js
new file mode 100644
index 0000000..becb18d
--- /dev/null
+++ b/force-app/main/default/lwc/lexCancelSubmitReport/lexCancelSubmitReport.js
@@ -0,0 +1,68 @@
+/*
+ * @Description:
+ * @version:
+ * @Author: chen jing wu
+ * @Date: 2023-04-07 09:02:03
+ * @LastEditors: chen jing wu
+ * @LastEditTime: 2023-04-11 11:18:36
+ */
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import cancel from '@salesforce/apex/ReportController.updateForCancelSubmitReportButton';
+import { updateRecord } from 'lightning/uiRecordApi';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+export default class LexCancelSubmitReport extends LightningElement {
+ @api recordId;
+ IsLoading = true;
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback(){
+ console.log(this.recordId);
+ this.cancelSubmit();
+ }
+
+
+ cancelSubmit(){
+ cancel({
+ recordId: this.recordId
+ }).then(result =>{
+ if(result){
+ this.showToast(result,"error");
+ }else{
+ this.showToast("鍙栨秷鎻愪氦鎴愬姛锛�","success");
+ this.updateRecordView(this.recordId);
+ }
+ this.IsLoading = false;
+ this.dispatchEvent(new CloseActionScreenEvent());
+ });
+ }
+
+ updateRecordView(recordId) {
+ updateRecord({fields: { Id: recordId }});
+ }
+
+
+ showToast(msg,type) {
+ const event = new ShowToastEvent({
+ title: '',
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCancelSubmitReport/lexCancelSubmitReport.js-meta.xml b/force-app/main/default/lwc/lexCancelSubmitReport/lexCancelSubmitReport.js-meta.xml
new file mode 100644
index 0000000..329e839
--- /dev/null
+++ b/force-app/main/default/lwc/lexCancelSubmitReport/lexCancelSubmitReport.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexClearReturnDeliverySlip/lexClearReturnDeliverySlip.css b/force-app/main/default/lwc/lexClearReturnDeliverySlip/lexClearReturnDeliverySlip.css
new file mode 100644
index 0000000..af18c76
--- /dev/null
+++ b/force-app/main/default/lwc/lexClearReturnDeliverySlip/lexClearReturnDeliverySlip.css
@@ -0,0 +1,11 @@
+.Holder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+
+.container .uiContainerManager{
+ display : none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexClearReturnDeliverySlip/lexClearReturnDeliverySlip.html b/force-app/main/default/lwc/lexClearReturnDeliverySlip/lexClearReturnDeliverySlip.html
new file mode 100644
index 0000000..22a26df
--- /dev/null
+++ b/force-app/main/default/lwc/lexClearReturnDeliverySlip/lexClearReturnDeliverySlip.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="Holder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexClearReturnDeliverySlip/lexClearReturnDeliverySlip.js b/force-app/main/default/lwc/lexClearReturnDeliverySlip/lexClearReturnDeliverySlip.js
new file mode 100644
index 0000000..feea158
--- /dev/null
+++ b/force-app/main/default/lwc/lexClearReturnDeliverySlip/lexClearReturnDeliverySlip.js
@@ -0,0 +1,107 @@
+import { LightningElement,api, track, wire } from 'lwc';
+import {CurrentPageReference} from 'lightning/navigation';
+import { CloseActionScreenEvent } from 'lightning/actions';
+import getUserId from '@salesforce/apex/RentalApplyControllerLWT.getUserId';
+import init from '@salesforce/apex/SelectSubstituteControllerLWT.initClearReturnDeliverySlipButton';
+import updateRaescList from '@salesforce/apex/SelectSubstituteControllerLWT.updateRaescList';
+import selectRacById from '@salesforce/apex/SelectSubstituteControllerLWT.selectRacById';
+import selectRaesdcId from '@salesforce/apex/SelectSubstituteControllerLWT.selectRaesdcId';
+
+import { loadScript } from 'lightning/platformResourceLoader';
+import { submitForApproval } from 'lightning/uiRecordApi';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+
+
+export default class lexClearReturnDeliverySlip extends LightningElement {
+
+ @api recordId;
+ id;
+ RentalApplyId;
+ Status;
+ IsLoading=true;
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference){
+ console.log("杩涘叆椤甸潰");
+ console.log(currentPageReference);
+ if(currentPageReference){
+ const urvalue=currentPageReference.state.recordId;
+ if(urvalue){
+ let str=`${urvalue}`;
+ console.log('str');
+ console.log(str);
+ this.recordId=str;
+ }
+ }
+ }
+
+
+
+ connectedCallback(){
+ console.log(this.recordId);
+ init({recordId:this.recordId}).then(result=>{
+ console.log(result);
+ if(result!=null){
+ this.Rental_Apply_Equipment_Set__c=result;
+ this.cancelSubmit().then(res=>{
+ this.IsLoading=false;
+ this.dispatchEvent(new CloseActionScreenEvent());
+ });
+ }
+ }).catch(err=>{
+ console.log("error:");
+ console.log(err);
+ }).finally(()=>{
+
+ });
+ }
+
+
+
+ async cancelSubmit(){
+ console.log("hhh1");
+ var raesId = this.recordId;
+ console.log("hhh2");
+ var result = await selectRaesdcId({recordId:this.recordId});
+ console.log("hhh3");
+ var objs = result;
+ if (objs.length< 1) {
+ // alert('娌℃湁闇�瑕佹竻绌虹殑涓�瑙堟槑缁�');
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:'娌℃湁闇�瑕佹竻绌虹殑涓�瑙堟槑缁�'
+ });
+ this.dispatchEvent(event);
+ } else {
+ console.log("hhh4");
+ var result;
+ console.log("hhh5");
+ await updateRaescList({updateList:objs})
+ .then(res=>{
+ console.log(res);
+ result=res;
+ });
+ console.log("hhh6");
+ if (result.success==true) {
+ console.log("hhh7");
+ // success
+ // alert("鍥炲瘎杩愯緭鍗曚俊鎭凡娓呯┖");
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:"鍥炲瘎杩愯緭鍗曚俊鎭凡娓呯┖"
+ });
+ this.dispatchEvent(event);
+ setTimeout(function() {
+ location.href = "/"+this.recordId;
+ }, 100);
+ } else {
+ console.log("hhh8");
+ // alert("failed to update:" + result.errors.fields + " " + result[0].errors.message);
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:"failed to update:" + result.errors.fields + " " + result[0].errors.message
+ });
+ this.dispatchEvent(event);
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexClearReturnDeliverySlip/lexClearReturnDeliverySlip.js-meta.xml b/force-app/main/default/lwc/lexClearReturnDeliverySlip/lexClearReturnDeliverySlip.js-meta.xml
new file mode 100644
index 0000000..69c3072
--- /dev/null
+++ b/force-app/main/default/lwc/lexClearReturnDeliverySlip/lexClearReturnDeliverySlip.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexClearReturnDeliverySlip">
+ <apiVersion>51.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__AppPage</target>
+ <target>lightning__RecordPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexComplete/lexComplete.css b/force-app/main/default/lwc/lexComplete/lexComplete.css
new file mode 100644
index 0000000..f9aba1f
--- /dev/null
+++ b/force-app/main/default/lwc/lexComplete/lexComplete.css
@@ -0,0 +1,10 @@
+.completeHolder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+.container .uiContainerManager{
+ display: none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexComplete/lexComplete.html b/force-app/main/default/lwc/lexComplete/lexComplete.html
new file mode 100644
index 0000000..7c1968c
--- /dev/null
+++ b/force-app/main/default/lwc/lexComplete/lexComplete.html
@@ -0,0 +1,6 @@
+<template>
+ <div class="completeHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ <lightning-button label="Show Toast" onclick={ShowToastEvent}></lightning-button>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexComplete/lexComplete.js b/force-app/main/default/lwc/lexComplete/lexComplete.js
new file mode 100644
index 0000000..fb737d5
--- /dev/null
+++ b/force-app/main/default/lwc/lexComplete/lexComplete.js
@@ -0,0 +1,96 @@
+/*
+ * @Description:
+ * @version:
+ * @Author: chen jing wu
+ * @Date: 2023-04-07 09:02:03
+ * @LastEditors: chen jing wu
+ * @LastEditTime: 2023-04-11 11:21:30
+ */
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import init from '@salesforce/apex/ReportController.initForCompleteButton';
+import updateForCompleteButton from '@salesforce/apex/ReportController.updateForCompleteButton';
+import UserInfo_Owner from '@salesforce/apex/TaskFeedbackController.UserInfo_Owner';
+import { updateRecord } from 'lightning/uiRecordApi';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+export default class LexComplete extends LightningElement {
+ @api recordId;
+ profileId;
+ status;
+ IsLoading = true;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback () {
+ console.log(this.recordId);
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result);
+ if (result != null) {
+ this.status = result.status;
+ this.profileId = result.profileId;
+ this.complete();
+ //window.location.replace("https://ocsm--partial.sandbox.lightning.force.com/lightning/r/Report__c/" + this.recordId + "/view");
+ }
+ }).catch(error => {
+ console.log("error");
+ console.log(error);
+ });
+ //this.updateRecordView(this.recordId);
+ }
+
+ showToast(msg,type) {
+ const event = new ShowToastEvent({
+ title: '',
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ }
+
+ updateRecordView(recordId) {
+ updateRecord({fields: { Id: recordId }});
+ }
+
+
+
+ complete () {
+ // 闄嗚儨锛岃儭杩畨锛岀郴缁熺鐞嗗憳浠ュ娌℃湁鏉冮檺
+ if (UserInfo_Owner.Id != "00510000004reg2" && UserInfo_Owner.Id != "00510000000gWAE" && this.profileId != "00e10000000Y3o5") {
+ this.showToast("浣犳病鏈夋潈闄�","error");
+ return;
+ }
+ if (this.status == "瀹屾瘯") {
+ this.showToast("宸茬粡瀹屾瘯锛�","error");
+ return;
+ }
+ updateForCompleteButton({
+ recordId: this.recordId
+ }).then(result =>{
+ if(result){
+ this.showToast(result,"error");
+ }else{
+ this.updateRecordView(this.recordId);
+ this.showToast("瀹屾瘯鎴愬姛锛�","success");
+ }
+ this.IsLoading = false;
+ this.dispatchEvent(new CloseActionScreenEvent());
+ });
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexComplete/lexComplete.js-meta.xml b/force-app/main/default/lwc/lexComplete/lexComplete.js-meta.xml
new file mode 100644
index 0000000..329e839
--- /dev/null
+++ b/force-app/main/default/lwc/lexComplete/lexComplete.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexContractdetailpdf/lexContractdetailpdf.css b/force-app/main/default/lwc/lexContractdetailpdf/lexContractdetailpdf.css
new file mode 100644
index 0000000..9637071
--- /dev/null
+++ b/force-app/main/default/lwc/lexContractdetailpdf/lexContractdetailpdf.css
@@ -0,0 +1,88 @@
+body {
+ font-size: 13px;
+ font-family: Arial Unicode MS;
+}
+
+@page {
+ @charset "utf-8";
+ @bottom-center {
+ content: counter(page) " / " counter(pages);
+ font-size: 14px;
+ }
+}
+.pageCanvas {
+ position: relative;
+ border-style: none;
+ height: 940px;
+}
+
+.quoteTitle {
+ text-align: center;
+ font-weight: bold;
+ font-size: 22px;
+ width: 100%;
+ padding-bottom: 20px;
+}
+
+.headerCanvas {
+ position: relative;
+ border-style: none;
+ height: 100px;
+}
+
+.detailCanvas {
+ position: relative;
+ left: 0px;
+ width: 100%;
+}
+
+.detailTable {
+ width: 100%;
+ border-bottom: solid;
+}
+
+.detailTableHeader {
+ border-top: solid;
+ border-bottom: solid;
+ padding-left: 5px;
+ text-align: center;
+}
+
+.detailTableCols {
+ border: none;
+}
+
+
+
+
+
+.detailRowNumber {
+ text-align: right;
+ padding-right: 0px;
+ padding-left: 5px;
+}
+
+.detailRowString {
+ padding-right: 5px;
+ padding-left: 5px;
+}
+
+.detailRowNumeric {
+ text-align: right;
+ padding-right: 5px;
+ padding-left: 5px;
+}
+
+.footerCanvasContract {
+ position: absolute;
+ bottom: 0px;
+ width: 100%;
+ height: 110px;
+}
+
+.footerSignContract {
+ position: absolute;
+ text-align: center;
+ right: 80px;
+ bottom: 0px;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexContractdetailpdf/lexContractdetailpdf.html b/force-app/main/default/lwc/lexContractdetailpdf/lexContractdetailpdf.html
new file mode 100644
index 0000000..27b09fd
--- /dev/null
+++ b/force-app/main/default/lwc/lexContractdetailpdf/lexContractdetailpdf.html
@@ -0,0 +1,350 @@
+<template>
+
+ <!-- <body style="font-family: Arial Unicode MS;"> -->
+
+ <!-- 銉氥兗銈哥暘鍙枫伄瀹氱京 -->
+ <!-- <apex:variable var="count" value="{!0}"/> -->
+
+ <!-- 銉氥兗銈搞伄銉償銉笺儓 -->
+ <template for:each={printRecords} for:item="items" for:index="thePage"></template>
+ <!-- 銉氥兗銈搞偔銉c兂銉愩偣 -->
+ <div class="pageCanvas">
+
+ <!-- 銉氥兗銈哥暘鍙枫偆銉炽偗銉儭銉炽儓 -->
+ <!-- <apex:variable var="count" value="{!count + 1}"/> -->
+ <!-- SWAG-C7S8QN 銆愬鎵樸�戙�愰噸瑕併�慡I璇环閰嶇疆鍗曟病鏈夋姮澶� lt 20211015 update 鍘�<template rendered="{!IF(params.trade == 'USD', true, false)}">闄勪欢2 </template> -->
+ <div style="text-align: left;font-weight: bold;font-size: 18px;width: 100%;padding-bottom: 20px;"><span >闄勪欢2 </span></div>
+ <!-- 鍚勩儦銉笺偢銇偪銈ゃ儓銉� -->
+ <!-- <div class="quoteTitle"><template if:true={params.trade = 'USD'} >Commodity List </template></div> -->
+ <div class="quoteTitle"><template if:true={params.trade}>Commodity List </template></div>
+
+ <!-- WLIG-BYRD37 銆愬鎵樸�戣浠� 鎵撳嵃閰嶇疆鍗� 瀛楁淇敼 绮剧悽鎶�鏈� wql 2021/03/08 start -->
+ <div class="quoteTitle">
+ <!-- SWAG-C7S8QN 銆愬鎵樸�戙�愰噸瑕併�慡I璇环閰嶇疆鍗曟病鏈夋姮澶� lt 20211015 update -->
+ <!-- 20211015 鍘�<template rendered="{!IF(params.PurchaseType == '涓�鑸紩鍚�' || params.PurchaseType == ' SI锛堟墜琛撳妗堜欢锛�', true, false)}"> -->
+ <span >
+ <!-- {Contract_Detail_Title} -->
+ {Contract_Detail_Title}
+ </span>
+ </div>
+ <div class="quoteTitle">
+ <!-- <template if:true="{!IF(params.PurchaseType == 'ET24鏅傞枔璨╁2',true , false)}">0 -->
+ <template if:true={params.PurchaseType}>
+ 璁㈣揣鍗�
+ </template>
+ </div>
+ <!-- //WLIG-BYRD37 銆愬鎵樸�戣浠� 鎵撳嵃閰嶇疆鍗� 瀛楁淇敼 绮剧悽鎶�鏈� wql 2021/03/08 end -->
+<!-- CHAN-B2L4NY 澶栬锤璇环鐨勫悎鍚岄厤缃崟鏍煎紡鎭㈠ -->
+ <!-- <template if:true="{!IF(params.trade == 'RMB', true, false)}"> -->
+ <template if:true= {params.trade}>
+ <!-- 鍚勩儦銉笺偢銇儤銉冦儉銈儯銉炽儛銈� -->
+ <div class="headerCanvas">
+ <table style="height:100%;">
+ <tr>
+ <td>
+ <div style="height:25px;">{Contract_Detail_System_Code}</div>
+ <div style="height:25px;">{Quote_Client_Name}</div>
+ <!-- <template if:true="{!IF(params.salesRoot == '璨╁2搴�', true, false)}" layout="none" > -->
+ <template if:true={params.salesRoot} layout="none" >
+ <div style="height:25px;">{Contract_Detail_Dealer_Name}</div>
+ </template>
+ <div style="height:25px;">{Quote_AddressName}</div>
+ </td>
+ <td>
+ <div style="height:25px;">: </div>
+ <div style="height:25px;">: </div>
+ <!-- <template layout="none" if:true="{!IF(params.salesRoot == '璨╁2搴�', true, false)}"> -->
+ <template layout="none" if:true={params.salesRoot}>
+ <div style="height:25px;">: </div>
+ </template>
+ <div style="height:25px;">: </div>
+ </td>
+ <td>
+ <div style="height:25px;"> {params.quoteNo}</div>
+ <div style="height:25px;"> {params.clientName}</div>
+ <!-- <template layout="none" if:true="{!IF(params.salesRoot == '璨╁2搴�', true, false)}"> -->
+ <template layout="none" if:true={params.salesRoot}>
+ <div style="height:25px;"> {params.agentNameForContract}</div>
+ </template>
+ <div style="height:25px;"> {params.addressName}</div>
+ </td>
+ <td>
+ <div style="height:25px;"> </div>
+ <div style="height:25px;"> </div>
+ <template layout="none" if:true={params.salesRoot}>
+ <div style="height:25px;"> </div>
+ </template>
+ <div style="height:25px;"> </div>
+ </td>
+ <td>
+ <div style="height:25px;"> </div>
+ <div style="height:25px;">{Quote_Department}</div>
+ <template layout="none" if:true={params.salesRoot}>
+ <div style="height:25px;"> </div>
+ </template>
+ <div style="height:25px;"> </div>
+ </td>
+ <td>
+ <div style="height:25px;"> </div>
+ <div style="height:25px;">: </div>
+ <template layout="none" if:true={params.salesRoot}>
+ <div style="height:25px;"> </div>
+ </template>
+ <div style="height:25px;"> </div>
+ </td>
+ <td>
+ <div style="height:25px;"> </div>
+ <div style="height:25px;"> {params.departmentName}</div>
+ <template layout="none" if:true={params.salesRoot}>
+ <div style="height:25px;"> </div>
+ </template>
+ <div style="height:25px;"> </div>
+ </td>
+ </tr>
+ </table>
+ <table style="top:0px; right:0px; position:absolute; height:100%;">
+ <tr>
+ <td>
+ <div style="height:25px;"> </div>
+ <div style="height:25px;"> </div>
+ <!-- 鐢靛瓙绛炬敹ID鍙� wql 绮剧悽鎶�鏈� 2020/11/20 start -->
+ <template layout="none" if:true={params.salesRoot}>
+ <div style="height:25px;">{eSignAgencyNum}</div>
+ </template>
+ <template layout="none" if:true={params.salesRoot}>
+ <div style="height:25px;"> </div>
+ </template>
+ <!-- 鐢靛瓙绛炬敹ID鍙� wql 绮剧悽鎶�鏈� 2020/11/20 end -->
+ <div style="height:25px;">{Contract_Detail_Print_Date}</div>
+ </td>
+ <td>
+ <div style="height:25px;"> </div>
+ <div style="height:25px;"> </div>
+ <div style="height:25px;">: </div>
+ <div style="height:25px;">: </div>
+ </td>
+ <td>
+ <div style="height:25px;"> </div>
+ <div style="height:25px;"> </div>
+ <!-- 鐢靛瓙绛炬敹ID鍙� wql 绮剧悽鎶�鏈� 2020/11/20 start -->
+ <template layout="none" if:true={params.salesRoot}>
+ <div style="height:25px;">{params.eSignAgencyNum}</div>
+ </template>
+ <template layout="none" if:true={params.salesRoot}>
+ <div style="height:25px;"> </div>
+ </template>
+ <!-- 鐢靛瓙绛炬敹ID鍙� wql 绮剧悽鎶�鏈� 2020/11/20 end -->
+ <div style="height:25px;"> {params.offerPrintDateStringContract}</div>
+ </td>
+ </tr>
+ </table>
+ </div>
+ </template>
+ <br/>
+
+ <!-- 銉氥兗銈稿唴銇┏绱般伄REPEAT -->
+ <div class="detailCanvas" style="font-size: 10px">
+ <lightning-datatable
+ key-field="id"
+ data={items}
+ columns = {columns}>
+ </lightning-datatable>
+
+
+ </div>
+
+ <!-- <template rendered="{!count=maxPageNumber}"> -->
+ <template rendered=false>
+ <div>
+ <table style="width:100%;">
+ <tr>
+ <!-- 2018/10/11 CHAN-B5F35C 鍐呰锤鏃朵笉鏄剧ず 娉ㄥ唽璇佸彿/澶囨鍑瘉缂栧彿澶囨敞 start -->
+ <td style="text-align: left;">
+ <div style="height:25px;">澶囨敞锛氫笂杩颁骇鍝佹敞鍐岃瘉鍙�/澶囨鍑瘉鍙蜂互鏀跺埌瀹炵墿涓枃鏍囩涓殑娉ㄥ唽璇佷俊鎭负鍑嗐��</div>
+ </td>
+ <!-- 2018/10/11 CHAN-B5F35C 鍐呰锤鏃朵笉鏄剧ず 娉ㄥ唽璇佸彿/澶囨鍑瘉缂栧彿澶囨敞 end -->
+ </tr>
+ <tr>
+ <td style="width: 85%;text-align: right;">
+ <div style="height:25px;">{Quote_TotalPrice}</div>
+ </td>
+ <td>
+ <div style="height:25px;">: </div>
+ </td>
+ <td>
+ <div style="height:25px;">
+ <span value={0, number, ###,##0.00}>
+ <param name="" value={params.newTotalPrice}>
+ </span>
+ </div>
+ </td>
+ </tr>
+ </table>
+ </div>
+ </template>
+<!-- CHAN-B2L4NY 澶栬锤璇环鐨勫悎鍚岄厤缃崟鏍煎紡鎭㈠ -->
+<!-- <template rendered="{!IF(params.trade == 'RMB', false, true)}"> -->
+ <template rendered={params.trade}>
+ <!-- 鍚勩儦銉笺偢銇儤銉冦儉銈儯銉炽儛銈� -->
+ <div class="headerCanvas">
+ <table style="height:100%;">
+ <tr>
+ <td>
+ <div style="height:25px;">
+ Prospect Code {Contract_Detail_System_Code}</div>
+ <div style="height:25px;">End user {Quote_Client_Name}</div>
+ <div style="height:25px;">Department {Quote_Department}</div>
+ <div style="height:25px;">The Buyer {Contract_Detail_Dealer_Name}</div>
+ </td>
+ <td>
+ <div style="height:25px;">: </div>
+ <div style="height:25px;">: </div>
+ <div style="height:25px;">: </div>
+ <div style="height:25px;">: </div>
+ </td>
+ <td>
+ <div style="height:25px;"> {!params.quoteNo}</div>
+ <div style="height:25px;"> {!params.clientName}</div>
+ <div style="height:25px;"> {!params.departmentName}</div>
+
+ <!-- <template if:true="{!IF(params.agentNameForContract != null && params.lenAgentName >= 40, true, false)}"> -->
+ <template>
+ <div style="height:22px; padding-top:3px; font-size:10px;"> {params.agentNameForContract}</div>
+ </template>
+ <!-- <template if:true="{!IF(params.agentNameForContract != null && params.lenAgentName < 40, true, false)}"> -->
+ <template>
+ <div style="height:25px;"> {params.agentNameForContract}</div>
+ </template>
+ </td>
+ </tr>
+ </table>
+ <table style="top:0px; right:0px; position:absolute; height:100%;">
+ <tr>
+ <td>
+ <div style="height:25px;"> </div>
+ <div style="height:25px;"> </div>
+ <!-- -->
+ <div style="height:25px;">Print date {Contract_Detail_Print_Date}</div>
+ <div style="height:25px;"> ID Code</div>
+ </td>
+ <td>
+ <div style="height:25px;"> </div>
+ <div style="height:25px;"> </div>
+ <!-- <div style="height:25px;"> </div> -->
+ <div style="height:25px;">: </div>
+ <div style="height:25px;">: </div>
+ </td>
+ <td>
+ <div style="height:25px;"> </div>
+ <div style="height:25px;"> </div>
+ <div style="height:25px;"> {params.offerPrintDateStringContract}</div>
+ <div style="height:25px;"> </div>
+ </td>
+ </tr>
+
+ </table>
+ </div>
+
+ <br/>
+
+ <!-- 銉氥兗銈稿唴銇┏绱般伄REPEAT -->
+ <div class="detailCanvas">
+ <!-- 2021/01/15 liying start -->
+ <!-- 澶氳〃澶� 绗竴鍒楄〃澶� -->
+ <lightning-datatable
+ key-field="id"
+ data={items}
+ columns = [columns]>
+ </lightning-datatable>
+<!-- <apex:dataTable value="{!items}" var="item" id="dataTableUSD" styleClass="detailTableUSD" headerClass="detailTableHeaderUSD" columnClasses="detailTableCols">
+ <apex:column styleClass="detailRowNumber">
+ <apex:facet name="header">Commodity Type</apex:facet>
+ </apex:column>
+ <apex:column styleClass="detailRowString">
+ <apex:facet name="header"></apex:facet>
+ </apex:column>
+ <apex:column styleClass="detailRowString">
+ <apex:facet name="header"></apex:facet>
+ </apex:column>
+ <apex:column styleClass="detailRowString">
+ <apex:facet name="header">
+ Description</apex:facet>
+ </apex:column>
+ <apex:column styleClass="detailRowNumeric">
+ <apex:facet name="header"> Quantity</apex:facet>
+ </apex:column>
+ <apex:column styleClass="detailRowNumeric">
+ <apex:facet name="header"> Special Warranty Period(year) </apex:facet>
+ </apex:column>
+
+ lt 20220223 CHAN-CBW9FX 鐗规畩浜よ揣鏈熷奖鍝嶇殑瀵瑰簲 start -->
+<!--
+ <apex:column styleClass="detailRowNumeric">
+ <apex:facet name="header"> Delivery Date </apex:facet>
+ </apex:column> -->
+ <!-- lt 20220223 CHAN-CBW9FX 鐗规畩浜よ揣鏈熷奖鍝嶇殑瀵瑰簲 end -->
+
+ <!-- </apex:dataTable> -->
+ <!-- 2021/01/15 liying end -->
+ <!-- 澶氳〃澶� 绗簩鍒楄〃澶� -->
+ <!-- <apex:dataTable value="{!items}" var="item" id="dataTable2" styleClass="detailTable" headerClass="detailTableHeader" columnClasses="detailTableCols">
+ <apex:column styleClass="detailRowNumber">
+ <apex:facet name="header">{Quote_Product_Code}</apex:facet>
+ <apex:outputText value="{!item.qli.Item_Order__c}"/>
+ </apex:column>
+ <apex:column styleClass="detailRowString">
+ <apex:facet name="header"></apex:facet>
+ <apex:outputText value="{!item.qli.Asset_Model_No_forPrint__c}"/>
+ </apex:column>
+ <apex:column styleClass="detailRowString">
+ <apex:facet name="header"> </apex:facet>
+ <apex:outputText value="{!item.qli.NameForPrintDelimiter__c}"/>
+ </apex:column>
+ <apex:column styleClass="detailRowString">
+ <apex:facet name="header">{Quote_Product_Name}</apex:facet>
+ <apex:outputText value="{!item.qli.NameForPrint__c}"/>
+ </apex:column>
+ <apex:column styleClass="detailRowNumeric">
+ <apex:facet name="header">{Quantity}</apex:facet>
+ <apex:outputText value="{0, number, ###,###}">
+ <apex:param value="{!item.qli.Quantity}" />
+ </apex:outputText>
+ </apex:column>
+
+ <apex:column styleClass="detailRowNumeric">
+ <apex:facet name="header">鐗规畩淇濅慨骞撮檺</apex:facet>
+ <apex:outputText value="{!item.qli.GuaranteePeriod__c}"/>
+ </apex:column>
+
+ lt 20220223 CHAN-CBW9FX 鐗规畩浜よ揣鏈熷奖鍝嶇殑瀵瑰簲 start -->
+<!-- <apex:column styleClass="detailRowNumeric">
+ <apex:facet name="header">浜よ揣鏈�</apex:facet>
+ <apex:outputText value="{!item.qli.DeliveryDate__c}"/>
+ </apex:column> -->
+ <!-- lt 20220223 CHAN-CBW9FX 鐗规畩浜よ揣鏈熷奖鍝嶇殑瀵瑰簲 end -->
+
+ <!-- </apex:dataTable> -->
+ </div>
+</template>
+
+ <br />
+
+ <!-- 鍚勩儦銉笺偢銇儠銉冦偪銈儯銉炽儛銈� -->
+ <div class="footerCanvasContract">
+ <div class="footerSignContract">
+ ({Contract_Detail_Buyer_Stamp})<br />
+ <br />
+ 骞淬��銆�鏈堛��銆�鏃�<br />
+ </div>
+ </div>
+
+ </div>
+
+ <!-- 鍚勩儦銉笺偢銈掑尯鍒囥倠鏀广儦銉笺偢銆佹渶绲傘儦銉笺偢銇伅鍑恒仌銇亜銈堛亞銇仐銇︺亜銈� -->
+ <!-- <template if:true="{!count<maxPageNumber}"> -->
+<!-- <template>
+ <div style="page-break-after: always;"/>
+ </template> -->
+
+<!-- </body> -->
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexContractdetailpdf/lexContractdetailpdf.js b/force-app/main/default/lwc/lexContractdetailpdf/lexContractdetailpdf.js
new file mode 100644
index 0000000..fb75301
--- /dev/null
+++ b/force-app/main/default/lwc/lexContractdetailpdf/lexContractdetailpdf.js
@@ -0,0 +1,50 @@
+import { LightningElement, track, wire } from 'lwc';
+import init from '@salesforce/apex/ContractdetailpdfController.init';
+const columns = [
+ { label: 'Item_Order__c', fieldName: 'Item_Order__c' },
+ { label: 'Asset_Model_No_forPrint__c', fieldName: 'Asset_Model_No_forPrint__c' },
+ { label: 'NameForPrintDelimiter__c', fieldName: 'NameForPrintDelimiter__c' },
+ { label: 'NameForPrint__c', fieldName: 'NameForPrint__c' },
+ { label: 'ApprobationNo_c', fieldName: 'ApprobationNo_c' },
+ { label: 'ProduceCompany_c', fieldName: 'ProduceCompany_c' },
+ { label: 'SalesPackagingUnit_c', fieldName: 'SalesPackagingUnit_c' },
+ { label: 'PackingListManual_c', fieldName: 'PackingListManual_c' },
+ { label: 'qli.Quantity', fieldName: 'qli.Quantity' },
+ { label: 'qli.GuaranteePeriod__c', fieldName: 'qli.GuaranteePeriod__c' },
+ { label: 'qli.DeliveryDate__c', fieldName: 'qli.DeliveryDate__c', type: 'date' }
+ // { label: 'Website', fieldName: 'Asset_Model_No_forPrint__c', type: 'url' },
+ // { label: 'Phone', fieldName: 'phone', type: 'phone' },
+ // { label: 'Balance', fieldName: 'amount', type: 'currency' },
+ // { label: 'CloseAt', fieldName: 'closeAt', type: 'date' },
+];
+export default class lexContractdetailpdf extends LightningElement {
+ items = [];
+ data=[];
+ Contract_Detail_Title="鏍囬";
+ columns=columns ;
+ params={
+ trade:false,
+ PurchaseType:false
+ };
+ connectedCallback() {
+ init().then(res=>{
+ console.log("res:");
+ console.log(res);
+ this.data=res;
+ this.items=res;
+ })
+ }
+ generateData( amountOfRecords ) {
+ return [...Array(amountOfRecords)].map((_, index) => {
+ return {
+ name: `Name (${index})`,
+ website: 'www.salesforce.com',
+ amount: Math.floor(Math.random() * 100),
+ phone: `${Math.floor(Math.random() * 9000000000) + 1000000000}`,
+ closeAt: new Date(
+ Date.now() + 86400000 * Math.ceil(Math.random() * 20)
+ ),
+ };
+ });
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexContractdetailpdf/lexContractdetailpdf.js-meta.xml b/force-app/main/default/lwc/lexContractdetailpdf/lexContractdetailpdf.js-meta.xml
new file mode 100644
index 0000000..de32795
--- /dev/null
+++ b/force-app/main/default/lwc/lexContractdetailpdf/lexContractdetailpdf.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexContractdetailpdf">
+ <apiVersion>51.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCopyPIInspectionReport/lexCopyPIInspectionReport.html b/force-app/main/default/lwc/lexCopyPIInspectionReport/lexCopyPIInspectionReport.html
new file mode 100644
index 0000000..d044dbb
--- /dev/null
+++ b/force-app/main/default/lwc/lexCopyPIInspectionReport/lexCopyPIInspectionReport.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="exampleHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCopyPIInspectionReport/lexCopyPIInspectionReport.js b/force-app/main/default/lwc/lexCopyPIInspectionReport/lexCopyPIInspectionReport.js
new file mode 100644
index 0000000..44d87fb
--- /dev/null
+++ b/force-app/main/default/lwc/lexCopyPIInspectionReport/lexCopyPIInspectionReport.js
@@ -0,0 +1,57 @@
+import {
+ LightningElement,
+ wire,
+ api
+} from 'lwc';
+import {
+ CurrentPageReference
+} from "lightning/navigation";
+import {
+ CloseActionScreenEvent
+} from 'lightning/actions';
+
+import init from '@salesforce/apex/otherButtonSpotInspectionReportCtl.init';
+
+export default class LexCopyPIInspectionReport extends LightningElement {
+ @api recordId;
+ str;
+ IsLoading = true;
+ Id;
+ RecordTypeId;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback() {
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result);
+ if (result != null) {
+ this.IsLoading = false;
+ this.Id = result.Id;
+ this.RecordTypeId = result.RecordTypeId;
+
+ this.CopyPI();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ }).catch(error => {
+ console.log(error);
+ }).finally(() => {
+
+ });
+ }
+
+ // 澶嶅埗
+ CopyPI() {
+ window.location.href = '/' + this.Id + '/e?newclone=1';
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCopyPIInspectionReport/lexCopyPIInspectionReport.js-meta.xml b/force-app/main/default/lwc/lexCopyPIInspectionReport/lexCopyPIInspectionReport.js-meta.xml
new file mode 100644
index 0000000..3392981
--- /dev/null
+++ b/force-app/main/default/lwc/lexCopyPIInspectionReport/lexCopyPIInspectionReport.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCopyPIOnCall/lexCopyPIOnCall.html b/force-app/main/default/lwc/lexCopyPIOnCall/lexCopyPIOnCall.html
new file mode 100644
index 0000000..d044dbb
--- /dev/null
+++ b/force-app/main/default/lwc/lexCopyPIOnCall/lexCopyPIOnCall.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="exampleHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCopyPIOnCall/lexCopyPIOnCall.js b/force-app/main/default/lwc/lexCopyPIOnCall/lexCopyPIOnCall.js
new file mode 100644
index 0000000..700808a
--- /dev/null
+++ b/force-app/main/default/lwc/lexCopyPIOnCall/lexCopyPIOnCall.js
@@ -0,0 +1,52 @@
+import {
+ LightningElement,
+ wire,
+ api
+} from 'lwc';
+import {
+ CurrentPageReference
+} from "lightning/navigation";
+import {
+ CloseActionScreenEvent
+} from 'lightning/actions';
+import init from '@salesforce/apex/buttonOnCallCtl.init';
+
+export default class LexCopyPIOnCall extends LightningElement {
+ @api recordId;
+ str;
+ IsLoading = true;
+ Id;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback() {
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result);
+ if (result != null) {
+ this.IsLoading = false;
+ this.Id = result.Id;
+
+ this.CopyPI();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ }).catch(error => {
+ console.log(error);
+ })
+ }
+
+ //澶嶅埗
+ CopyPI() {
+ window.location.href = '/' + this.Id + '/e?newclone=1';
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCopyPIOnCall/lexCopyPIOnCall.js-meta.xml b/force-app/main/default/lwc/lexCopyPIOnCall/lexCopyPIOnCall.js-meta.xml
new file mode 100644
index 0000000..3392981
--- /dev/null
+++ b/force-app/main/default/lwc/lexCopyPIOnCall/lexCopyPIOnCall.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCopyRepair/lexCopyRepair.html b/force-app/main/default/lwc/lexCopyRepair/lexCopyRepair.html
new file mode 100644
index 0000000..87f391a
--- /dev/null
+++ b/force-app/main/default/lwc/lexCopyRepair/lexCopyRepair.html
@@ -0,0 +1,6 @@
+<template>
+ <div class="exampleHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ <lightning-button label="Show Toast" onclick={ShowToastEvent}></lightning-button>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCopyRepair/lexCopyRepair.js b/force-app/main/default/lwc/lexCopyRepair/lexCopyRepair.js
new file mode 100644
index 0000000..170a510
--- /dev/null
+++ b/force-app/main/default/lwc/lexCopyRepair/lexCopyRepair.js
@@ -0,0 +1,218 @@
+import {
+ LightningElement,
+ wire,
+ api
+} from 'lwc';
+import {
+ CurrentPageReference
+} from "lightning/navigation";
+import {
+ CloseActionScreenEvent
+} from 'lightning/actions';
+import init from '@salesforce/apex/otherButtonRepairController.init';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+
+export default class LexCopyRepair extends LightningElement {
+ @api recordId;
+ str;
+ IsLoading = true;
+ Id;
+ RecordTypeId;
+ Name;
+ DeliveredProductC;
+ DeliveredProductIdC;
+ PaperRepairRequestNoC;
+ HospitalC;
+ AccountC;
+ DepartmentClassC;
+ RepairCostTypeC;
+ DealerC;
+ InchargeStaffC;
+ InchargeStaffContactC;
+ SalesOfficeCodeSelectionC;
+ OnSiteRepairC;
+ workLocationSelectC;
+ ReturnsProductWayC;
+ RepairDetailC;
+ RepairApplicantC;
+ RepairApplicantHospitalC;
+ RepairApplicantDepartmentC;
+ DeliveryLogisticsModeC;
+ engineerSendDateC;
+ DeliveryLogisticsNoC;
+ DeliveryLogisticsAnnotationC;
+ DateReceiptQuestionsC;
+ BreakORFallOffC;
+ DelayReportReasonC;
+ UseFailProductFinishC;
+ ifDeadHurtC;
+ SupportingProductsC;
+ ProblemOccurredC;
+ AfterFailureInformationC;
+ InformationFromC;
+ ReportAdverseEventsC;
+ FailureQInHospitalC;
+ WhatProjectC;
+ OperationOrExaminationNameC;
+ MaintenanceContractTypeC;
+ FailureOccurrenceDateC;
+ RepairSourceC;
+ ProblemOccurredSelectC;
+ Delay15MinC;
+ ProductFailureRelatedC;
+ RepairSubOrderC;
+ OnCallIDC;
+ QISIDC;
+ InsReportC;
+ MBCAwareDateC;
+ CFDANoHandC;
+ ProduceCompanyHandC;
+ OfferRentalNewC;
+ ifRentalApplyC;
+ LatestCollectDatePriorityC;
+ RentalApplyEquipmentSetDetailIdC;
+ RentalApplyEquipmentSetDetailC;
+ AwareDateC;
+ OCSMAdministrativeReportNumberC;
+ OCSMAdministrativeReportStatusC;
+ OCSMAdministrativeReportDateC;
+ Status1C;
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback() {
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result);
+ if (result != null) {
+ this.IsLoading = false;
+ this.Id = result.Id;
+ this.RecordTypeId = result.RecordTypeId;
+ this.Name = result.Name == undefined ? "" : result.Name;
+ this.DeliveredProductC = result.DeliveredProductC == undefined ? "" : result.DeliveredProductC;
+ this.PaperRepairRequestNoC = result.PaperRepairRequestNoC == undefined ? "" : result.PaperRepairRequestNoC;
+ this.HospitalC = result.HospitalC == undefined ? "" : result.HospitalC;
+ this.DepartmentClassC = result.DepartmentClassC == undefined ? "" : result.DepartmentClassC;
+ this.RepairCostTypeC = result.RepairCostTypeC == undefined ? "" : result.RepairCostTypeC;
+ this.DealerC = result.DealerC == undefined ? "" : result.DealerC;
+ this.InchargeStaffC = result.InchargeStaffC == undefined ? "" : result.InchargeStaffC;
+ this.InchargeStaffContactC = result.InchargeStaffContactC == undefined ? "" : result.InchargeStaffContactC;
+ this.SalesOfficeCodeSelectionC = result.SalesOfficeCodeSelectionC == undefined ? "" : result.SalesOfficeCodeSelectionC;
+ this.OnSiteRepairC = result.OnSiteRepairC == undefined ? "" : result.OnSiteRepairC;
+ this.workLocationSelectC = result.workLocationSelectC == undefined ? "" : result.workLocationSelectC;
+ this.ReturnsProductWayC = result.ReturnsProductWayC == undefined ? "" : result.ReturnsProductWayC;
+ this.RepairDetailC = result.RepairDetailC == undefined ? "" : result.RepairDetailC;
+ this.RepairApplicantC = result.RepairApplicantC == undefined ? "" : result.RepairApplicantC;
+ this.RepairApplicantHospitalC = result.RepairApplicantHospitalC == undefined ? "" : result.RepairApplicantHospitalC;
+ this.RepairApplicantDepartmentC = result.RepairApplicantDepartmentC == undefined ? "" : result.RepairApplicantDepartmentC;
+ this.DeliveryLogisticsModeC = result.DeliveryLogisticsModeC == undefined ? "" : result.DeliveryLogisticsModeC;
+ this.engineerSendDateC = result.engineerSendDateC == undefined ? "" : result.engineerSendDateC;
+ this.DeliveryLogisticsNoC = result.DeliveryLogisticsNoC == undefined ? "" : result.DeliveryLogisticsNoC;
+ this.DeliveryLogisticsAnnotationC = result.DeliveryLogisticsAnnotationC == undefined ? "" : result.DeliveryLogisticsAnnotationC;
+ this.DateReceiptQuestionsC = result.DateReceiptQuestionsC == undefined ? "" : result.DateReceiptQuestionsC;
+ this.BreakORFallOffC = result.BreakORFallOffC == undefined ? "" : result.BreakORFallOffC;
+ this.DelayReportReasonC = result.DelayReportReasonC == undefined ? "" : result.DelayReportReasonC;
+ this.UseFailProductFinishC = result.UseFailProductFinishC == undefined ? "" : result.UseFailProductFinishC;
+ this.ifDeadHurtC = result.ifDeadHurtC == undefined ? "" : result.ifDeadHurtC;
+ this.SupportingProductsC = result.SupportingProductsC == undefined ? "" : result.SupportingProductsC;
+ this.ProblemOccurredC = result.ProblemOccurredC == undefined ? "" : result.ProblemOccurredC;
+ this.AfterFailureInformationC = result.AfterFailureInformationC == undefined ? "" : result.AfterFailureInformationC;
+ this.InformationFromC = result.InformationFromC == undefined ? "" : result.InformationFromC;
+ this.ReportAdverseEventsC = result.ReportAdverseEventsC == undefined ? "" : result.ReportAdverseEventsC;
+ this.FailureQInHospitalC = result.FailureQInHospitalC == undefined ? "" : result.FailureQInHospitalC;
+ this.WhatProjectC = result.WhatProjectC == undefined ? "" : result.WhatProjectC;
+ this.OperationOrExaminationNameC = result.OperationOrExaminationNameC == undefined ? "" : result.OperationOrExaminationNameC;
+ this.MaintenanceContractTypeC = result.MaintenanceContractTypeC == undefined ? "" : result.MaintenanceContractTypeC;
+ this.FailureOccurrenceDateC = result.FailureOccurrenceDateC == undefined ? "" : result.FailureOccurrenceDateC;
+ this.RepairSourceC = result.RepairSourceC == undefined ? "" : result.RepairSourceC;
+ this.ProblemOccurredSelectC = result.ProblemOccurredSelectC == undefined ? "" : result.ProblemOccurredSelectC;
+ this.Delay15MinC = result.Delay15MinC == undefined ? "" : result.Delay15MinC;
+ this.ProductFailureRelatedC = result.ProductFailureRelatedC == undefined ? "" : result.ProductFailureRelatedC;
+ this.RepairSubOrderC = result.RepairSubOrderC == undefined ? "" : result.RepairSubOrderC;
+ this.OnCallIDC = result.OnCallIDC == undefined ? "" : result.OnCallIDC;
+ this.QISIDC = result.QISIDC == undefined ? "" : result.QISIDC;
+ this.InsReportC = result.InsReportC == undefined ? "" : result.InsReportC;
+ this.MBCAwareDateC = result.MBCAwareDateC == undefined ? "" : result.MBCAwareDateC;
+ this.CFDANoHandC = result.CFDANoHandC == undefined ? "" : result.CFDANoHandC;
+ this.ProduceCompanyHandC = result.ProduceCompanyHandC == undefined ? "" : result.ProduceCompanyHandC;
+ this.OfferRentalNewC = result.OfferRentalNewC == undefined ? "" : result.OfferRentalNewC;
+ this.ifRentalApplyC = result.ifRentalApplyC == undefined ? "" : result.AifRentalApplyCccountC;
+ this.LatestCollectDatePriorityC = result.LatestCollectDatePriorityC == undefined ? "" : result.LatestCollectDatePriorityC;
+ this.RentalApplyEquipmentSetDetailIdC = result.RentalApplyEquipmentSetDetailIdC == undefined ? "" : result.RentalApplyEquipmentSetDetailIdC;
+ this.RentalApplyEquipmentSetDetailC = result.RentalApplyEquipmentSetDetailC == undefined ? "" : result.RentalApplyEquipmentSetDetailC;
+ this.AwareDateC = result.AwareDateC == undefined ? "" : result.AwareDateC;
+ this.OCSMAdministrativeReportNumberC = result.OCSMAdministrativeReportNumberC == undefined ? "" : result.OCSMAdministrativeReportNumberC;
+ this.OCSMAdministrativeReportStatusC = result.OCSMAdministrativeReportStatusC == undefined ? "" : result.OCSMAdministrativeReportStatusC;
+ this.AccountC = result.AccountC == undefined ? "" : result.AccountC;
+ this.OCSMAdministrativeReportDateC = result.OCSMAdministrativeReportDateC == undefined ? "" : result.OCSMAdministrativeReportDateC;
+ this.Status1C = result.Status1C;
+
+ this.CopyRepair();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ }).catch(error => {
+ console.log(error);
+ }).finally(() => {
+
+ });
+ }
+
+ // 澶嶅埗
+ CopyRepair() {
+ var Status = this.Status1C;
+ if (Status == '0.鍒犻櫎' || Status == '0.鍙栨秷') {
+ var url = "/a0J/e?00N10000009H2fa=" + this.Name + "&CF00N10000002Dx1X=" + this.DeliveredProductC +
+ "&CF00N10000002Dx1X_lkid=" + this.DeliveredProductC + "&00N10000006P1dw=" + this.PaperRepairRequestNoC +
+ "&CF00N10000002Dx66=" + this.HospitalC + "&CF00N10000002Dx5t=" + this.DepartmentClassC +
+ "&CF00N10000002Dx5n=" + this.AccountC + "&00N10000008rG4p=" + this.RepairCostTypeC +
+ "&CF00N10000006P1eV=" + this.DealerC + "&CF00N10000002EMHw=" + this.InchargeStaffC +
+ "&CF00N10000005HDvq=" + this.InchargeStaffContactC + "&00N10000006P6SM=" + this.SalesOfficeCodeSelectionC +
+ "&00N10000002F6dW=" + this.OnSiteRepairC + "&00N10000006P6Rn=" + this.workLocationSelectC +
+ "&00N10000009i1Z2=" + this.ReturnsProductWayC + "&00N10000002Dx6I=" + this.RepairDetailC +
+ "&00N10000009H1rQ=" + this.RepairApplicantC + "&00N10000009H1rP=" + this.RepairApplicantHospitalC +
+ "&00N10000009H1rO=" + this.RepairApplicantDepartmentC + "&00N10000009H1rB=" + this.DeliveryLogisticsModeC +
+ "&00N10000009H1rk=" + this.engineerSendDateC + "&00N10000009H1rC=" + this.DeliveryLogisticsNoC +
+ "&00N10000009H1rA=" + this.DeliveryLogisticsAnnotationC + "&00N10000008rsVQ=" + this.DateReceiptQuestionsC +
+ "&00N10000008rsVN=" + this.BreakORFallOffC + "&00N10000008rsVS=" + this.DelayReportReasonC +
+ "&00N10000008rsW5=" + this.UseFailProductFinishC + "&00N10000008rsW7=" + this.ifDeadHurtC +
+ "&00N10000008rsW4=" + this.SupportingProductsC + "&00N10000008rsVv=" + this.ProblemOccurredC +
+ "&00N10000008rsVL=" + this.AfterFailureInformationC + "&00N10000009hsvI=" + this.ProblemOccurredSelectC +
+ "&00N10000008rsVR=" + this.Delay15MinC + "&00N10000008rsVw=" + this.ProductFailureRelatedC +
+ "&00N10000008rsVZ=" + this.InformationFromC + "&00N10000008rsW2=" + this.ReportAdverseEventsC +
+ "&00N10000008rsVT=" + this.FailureQInHospitalC + "&00N10000008rsW6=" + this.WhatProjectC +
+ "&00N10000008rsVk=" + this.OperationOrExaminationNameC + "&00N10000008rWce=" + this.MaintenanceContractTypeC +
+ "&00N10000002Dx5y=" + this.FailureOccurrenceDateC + "&00N10000002FH86=" + this.RepairSourceC +
+ "&CF00N10000009H1rR=" + this.RepairSubOrderC + "&CF00N10000002FIJU=" + this.OnCallIDC +
+ "&CF00N10000002FIJZ=" + this.QISIDC + "&CF00N10000006PRCp=" + this.InsReportC +
+ "&00N10000008rsVM=" + this.AwareDateC + "&00N10000009GmI6=" + this.OCSMAdministrativeReportNumberC +
+ "&00N10000009GmI4=" + this.MBCAwareDateC + "&00N10000009GmI5=" + this.OCSMAdministrativeReportDateC +
+ "&00N10000009GmI7=" + this.OCSMAdministrativeReportStatusC + "&00N100000095siE=" + this.CFDANoHandC +
+ "&00N100000095shz=" + this.ProduceCompanyHandC + "&00N100000098PV9=" + this.OfferRentalNewC +
+ "&00N100000098PVA=" + this.ifRentalApplyC + "&00N10000006gZ4g=" + this.LatestCollectDatePriorityC +
+ "&00N10000007MNFW=" + this.RentalApplyEquipmentSetDetailIdC +
+ "&CF00N10000007MNFX=" + this.RentalApplyEquipmentSetDetailC + "&retURL=%2F" + this.Id;
+ window.open(url);
+ } else {
+ this.ShowToastEvent("璇ョ姸鎬佷笅涓嶈兘澶嶅埗", "error")
+ // alert("璇ョ姸鎬佷笅涓嶈兘澶嶅埗");
+ }
+ }
+
+ ShowToastEvent(msg, type) {
+ const event = new ShowToastEvent({
+ title: '',
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCopyRepair/lexCopyRepair.js-meta.xml b/force-app/main/default/lwc/lexCopyRepair/lexCopyRepair.js-meta.xml
new file mode 100644
index 0000000..3392981
--- /dev/null
+++ b/force-app/main/default/lwc/lexCopyRepair/lexCopyRepair.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCreateEvent/lexCreateEvent.html b/force-app/main/default/lwc/lexCreateEvent/lexCreateEvent.html
new file mode 100644
index 0000000..617f069
--- /dev/null
+++ b/force-app/main/default/lwc/lexCreateEvent/lexCreateEvent.html
@@ -0,0 +1,6 @@
+<template>
+ <div class="lexCreateEventReportHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ <lightning-button label="Show Toast" onclick={ShowToastEvent}></lightning-button>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCreateEvent/lexCreateEvent.js b/force-app/main/default/lwc/lexCreateEvent/lexCreateEvent.js
new file mode 100644
index 0000000..453f9df
--- /dev/null
+++ b/force-app/main/default/lwc/lexCreateEvent/lexCreateEvent.js
@@ -0,0 +1,59 @@
+/*
+ * @Description:
+ * @version:
+ * @Author: chen jing wu
+ * @Date: 2023-04-13 13:50:23
+ * @LastEditors: chen jing wu
+ * @LastEditTime: 2023-04-13 14:39:54
+ */
+import { api, wire,LightningElement } from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import init from '@salesforce/apex/OpportunityLightingButtonController.initForCreateEventButton';
+import { updateRecord } from 'lightning/uiRecordApi';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+export default class LexCreateEvent extends LightningElement {
+ @api recordId;
+ accountId;
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+ connectedCallback(){
+ init({
+ recordId: this.recordId
+ }).then(result=>{
+ this.accountId = result.accountId;
+ this.createEvent();
+ }).catch(error=>{
+ console.log("error");
+ console.log(error);
+ })
+ }
+ createEvent(){
+ window.open("/00U/e?retURL=%2Fapex%2FVFClosePage&accid=" + this.accountId + "&oid=" + this.recordId, "鏂板缓璁″垝");
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ showToast(msg,type) {
+ const event = new ShowToastEvent({
+ title: '',
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ }
+ updateRecordView(recordId) {
+ updateRecord({fields: { Id: recordId }});
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCreateEvent/lexCreateEvent.js-meta.xml b/force-app/main/default/lwc/lexCreateEvent/lexCreateEvent.js-meta.xml
new file mode 100644
index 0000000..3392981
--- /dev/null
+++ b/force-app/main/default/lwc/lexCreateEvent/lexCreateEvent.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCreateNotesEmail/lexCreateNotesEmail.css b/force-app/main/default/lwc/lexCreateNotesEmail/lexCreateNotesEmail.css
new file mode 100644
index 0000000..8d634cd
--- /dev/null
+++ b/force-app/main/default/lwc/lexCreateNotesEmail/lexCreateNotesEmail.css
@@ -0,0 +1,10 @@
+.createEmailHolder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+.container .uiContainerManager{
+ display: none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCreateNotesEmail/lexCreateNotesEmail.html b/force-app/main/default/lwc/lexCreateNotesEmail/lexCreateNotesEmail.html
new file mode 100644
index 0000000..61d9b05
--- /dev/null
+++ b/force-app/main/default/lwc/lexCreateNotesEmail/lexCreateNotesEmail.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="createEmailHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCreateNotesEmail/lexCreateNotesEmail.js b/force-app/main/default/lwc/lexCreateNotesEmail/lexCreateNotesEmail.js
new file mode 100644
index 0000000..3130703
--- /dev/null
+++ b/force-app/main/default/lwc/lexCreateNotesEmail/lexCreateNotesEmail.js
@@ -0,0 +1,97 @@
+/*
+ * @Description:
+ * @version:
+ * @Author: chen jing wu
+ * @Date: 2023-03-27 13:53:40
+ * @LastEditors: chen jing wu
+ * @LastEditTime: 2023-04-10 14:22:27
+ */
+import { api, wire,LightningElement } from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { NavigationMixin } from 'lightning/navigation';
+import init from '@salesforce/apex/MonthlyReportController.initForCreateNoteEmailButton';
+import UserInfo_Owner from '@salesforce/apex/TaskFeedbackController.UserInfo_Owner';
+
+export default class LexCreateNotesEmail extends LightningElement {
+ @api recordId;
+ ownerEmail;
+ ownerAlias;
+ keyIssue;
+ feedBack;
+ taskFollow;
+ otherIssue;
+ nextWeekPlan;
+ drSumUrl;
+ IsLoading = true;
+ url;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+
+
+
+ connectedCallback(){
+ console.log(this.recordId);
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result);
+ if (result != null) {
+ this.IsLoading = false;
+ this.ownerEmail = result.ownerEmail;
+ this.ownerAlias = result.ownerAlias;
+ this.keyIssue = result.keyIssue;
+ this.feedBack = result.feedBack;
+ this.taskFollow = result.taskFollow;
+ this.otherIssue = result.otherIssue;
+ this.nextWeekPlan = result.nextWeekPlan;
+ this.drSumUrl = result.drSumUrl;
+ this.userEmail = result.userEmail;
+ this.createEmail();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ }).catch(error => {
+ console.log("error");
+ console.log(error);
+ }).finally(() => {
+
+ });
+ }
+ createEmail() {
+ console.log("start");
+
+ window.location.href = ("mailto:"
+ + this.ownerEmail
+ +"?bcc="
+ + this.userEmail
+ +"&subject=銆愬懆鎶�:"
+ + this.ownerAlias
+ + "銆�" + "&body=鍏堢敓/濂冲+" + "%0D%0A" + "%0D%0A" + "涓昏鎶ュ憡浜嬮」锛�"
+ + this.keyIssue
+ +"%0D%0A" + "涓嬪睘浜嬮」/鐘舵�佹姤鍛婏細"
+ + this.feedBack
+ +"%0D%0A" + "璇鹃鍙婂搴旂粨鏋�/鎻愭锛�"
+ + this.taskFollow
+ +"%0D%0A" + "鍏朵粬浜嬮」锛�"
+ + this.otherIssue
+ +"%0D%0A" + "涓嬪懆璁″垝锛�"
+ + this.nextWeekPlan
+ +"%0D%0A" + "杩炴帴锛�"
+ + this.drSumUrl
+ +"%0D%0A").substring(0,320).split("<br>").join("%0D%0A");
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCreateNotesEmail/lexCreateNotesEmail.js-meta.xml b/force-app/main/default/lwc/lexCreateNotesEmail/lexCreateNotesEmail.js-meta.xml
new file mode 100644
index 0000000..329e839
--- /dev/null
+++ b/force-app/main/default/lwc/lexCreateNotesEmail/lexCreateNotesEmail.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCreateRepair/lexCreateRepair.css b/force-app/main/default/lwc/lexCreateRepair/lexCreateRepair.css
new file mode 100644
index 0000000..8d634cd
--- /dev/null
+++ b/force-app/main/default/lwc/lexCreateRepair/lexCreateRepair.css
@@ -0,0 +1,10 @@
+.createEmailHolder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+.container .uiContainerManager{
+ display: none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCreateRepair/lexCreateRepair.html b/force-app/main/default/lwc/lexCreateRepair/lexCreateRepair.html
new file mode 100644
index 0000000..61d9b05
--- /dev/null
+++ b/force-app/main/default/lwc/lexCreateRepair/lexCreateRepair.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="createEmailHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCreateRepair/lexCreateRepair.js b/force-app/main/default/lwc/lexCreateRepair/lexCreateRepair.js
new file mode 100644
index 0000000..8a2f637
--- /dev/null
+++ b/force-app/main/default/lwc/lexCreateRepair/lexCreateRepair.js
@@ -0,0 +1,231 @@
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { NavigationMixin } from 'lightning/navigation';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+import init from '@salesforce/apex/QISReportController.initForlexCreateRepairButton';
+import UserInfo_Owner from '@salesforce/apex/TaskFeedbackController.UserInfo_Owner';
+import { updateRecord } from 'lightning/uiRecordApi';
+
+export default class lexCreateRepair extends LightningElement {
+ @api recordId;
+ IsLoading = true;
+ typeflag = false;
+ newflag = false;
+ qisReportId='';
+ name='';
+ qisRecordTypeId='';
+ err='';
+ accParentId='';
+ accParentRecordTypeId='';
+ accParentParentFSEGIMainLeader='';
+ accParentParentFSEGIMainLeaderWorkLocation='';
+ accParentParentFSESPMainLeader='';
+ accParentParentFSESPMainLeaderWorkLocation='';
+ WorkLocation='';
+ accrecordId='';
+ oCMjudgement='';
+ nextaction='';
+ specialfollow='';
+ comment='';
+ isUsedForTheOpera='';
+ UseFailProductFinish='';
+ failuerSituation='';
+ sourceOnCall='';
+ hospitalId='';
+ departmentClassId='';
+ hospitalDepartment='';
+ nonyushohinId='';
+ ownerId='';
+ faliourdate='';
+ sourceforrepair='';
+ repairSalesPointProvinceChina='';
+ trableoccurdaYcollect='';
+ damageForDocOrPat='';
+ relationWithTheProblem='';
+ reportForGoz='';
+ whichProject='';
+ operaName='';
+ breakORFallOff='';
+ setusageproduct='';
+ afterFailureInformation='';
+ delay15Min='';
+ informationFrom='';
+ failureQInHospital='';
+ ownername='';
+ hospitalname = '';
+ departmentClassname = '';
+ hospitalDepartmentname = '';
+ nonyushohinIdname = '';
+ sourceOnCallname = '';
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback () {
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ this.IsLoading = false;
+ this.qisReportId = result.Id;
+ this.oCMjudgement = result.oCMjudgement;
+ this.nextaction = result.nextaction;
+ this.ownername = result.ownername;
+ this.specialfollow = result.specialfollow;
+ this.qisRecordTypeId = result.qisRecordTypeId;
+ this.accParentId = result.accParentId;
+ this.comment = result.comment;
+ if (result.sourceOnCall!=null) {
+ this.sourceOnCall = result.sourceOnCall;
+ this.sourceOnCallname = result.sourceOnCallname;
+ }
+ this.name = result.name;
+ this.hospitalId = result.hospitalId;
+ this.hospitalname = result.hospitalname;
+ this.departmentClassname = result.departmentClassname;
+ this.departmentClassId = result.departmentClassId;
+ this.hospitalDepartment = result.hospitalDepartment;
+ this.nonyushohinId = result.nonyushohinId;
+ this.ownerId = result.ownerId;
+ this.faliourdate = result.faliourdate;
+ this.sourceforrepair = result.sourceforrepair;
+ this.repairSalesPointProvinceChina = result.repairSalesPointProvinceChina;
+ this.trableoccurdaYcollect = result.trableoccurdaYcollect;
+ this.damageForDocOrPat = result.damageForDocOrPat;
+ this.relationWithTheProblem = result.relationWithTheProblem;
+ this.reportForGoz = result.reportForGoz;
+ this.whichProject = result.whichProject;
+ this.operaName = result.operaName;
+ this.breakORFallOff = result.breakORFallOff;
+ this.setusageproduct = result.setusageproduct;
+ this.afterFailureInformation = result.afterFailureInformation;
+ this.delay15Min = result.delay15Min;
+ this.informationFrom = result.informationFrom;
+ this.failureQInHospital = result.failureQInHospital;
+ this.failuerSituation = result.failuerSituation;
+ this.isUsedForTheOpera = result.isUsedForTheOpera;
+ this.accParentRecordTypeId = result.accParentRecordTypeId;
+ this.accParentParentFSEGIMainLeader = result.accParentParentFSEGIMainLeader;
+ this.accParentParentFSEGIMainLeaderWorkLocation = result.accParentParentFSEGIMainLeaderWorkLocation;
+ this.accParentParentFSESPMainLeader = result.accParentParentFSESPMainLeader;
+ this.accParentParentFSESPMainLeaderWorkLocation = result.accParentParentFSESPMainLeaderWorkLocation;
+ if (this.qisRecordTypeId != '01210000000RLWc' && this.qisRecordTypeId != '01210000000RLWh') {
+ this.typeflag = true;
+ }
+ if (this.accParentId != null) {
+ if (this.accParentRecordTypeId != null) {
+ this.accrecordId = this.accParentRecordTypeId.substring(0,15);
+ if (this.accrecordId == '01210000000QemL' || this.accrecordId == '01210000000QezZ' || this.accrecordId == '01210000000QemQ') {
+ if (this.accParentParentFSEGIMainLeader != null) {
+ this.WorkLocation = this.accParentParentFSEGIMainLeaderWorkLocation;
+ }
+ }else if(this.accrecordId == '01210000000Qeze' || this.accrecordId == '01210000000Qezj' || this.accrecordId == '01210000000Qezt'|| this.accrecordId == '01210000000Qezo'|| this.accrecordId == '01210000000Qezy'){
+ if (this.accParentParentFSESPMainLeader != null) {
+ this.WorkLocation = this.accParentParentFSESPMainLeaderWorkLocation;
+ }
+ }
+ }
+ }
+ if ((this.oCMjudgement == '璐ㄩ噺闂' && this.nextaction == '鏃犲伩缁翠慨') ||
+ (this.oCMjudgement == '璐ㄩ噺闂' && this.nextaction == '鏈夊伩缁翠慨' && this.specialfollow == '0') ||
+ (this.oCMjudgement == '闈炶川閲忛棶棰�' && this.nextaction == '鏃犲伩缁翠慨' && this.specialfollow == '1') ||
+ (this.oCMjudgement == '闈炶川閲忛棶棰�' && this.nextaction == '鏈夊伩缁翠慨' && this.specialfollow == '0') ||
+ (this.oCMjudgement == '璐ㄩ噺闂+闈炶川閲忛棶棰�' && this.nextaction == '鏃犲伩缁翠慨' && this.specialfollow == '1') ||
+ (this.oCMjudgement == '璐ㄩ噺闂+闈炶川閲忛棶棰�' && this.nextaction == '鏈夊伩缁翠慨+鏃犲伩缁翠慨' && this.specialfollow == '0') ||
+ (this.oCMjudgement == '鐜拌薄鏈彂鐜�' && this.nextaction == '鏃犲伩缁翠慨' && this.specialfollow == '1') ||
+ (this.oCMjudgement == '鐜拌薄鏈彂鐜�' && this.nextaction == '鏈夊伩缁翠慨' && this.specialfollow == '0')) {
+ this.newflag = true;
+ }
+ console.log('this.newflag = '+this.newflag);
+ console.log('this.typeflag = '+this.typeflag);
+ if ( this.newflag && this.typeflag) {
+ if (this.isUsedForTheOpera == 'YES') {
+ this.UseFailProductFinish = '鏄�';
+ }else if(this.isUsedForTheOpera == 'NO-鐢ㄦ浛浠e搧瀹屾垚浜�'){
+ this.UseFailProductFinish = '鍚�-鐢ㄦ浛浠e搧瀹屾垚';
+ }else if(this.isUsedForTheOpera == 'NO-鐢ㄥ叾浠栧叕鍙哥殑鍚岀被浜у搧瀹屾垚浜�'){
+ this.UseFailProductFinish = '鍚�-鐢ㄥ叾浠栧叕鍙哥殑鍚岀被浜у搧瀹屾垚';
+ }else if(this.isUsedForTheOpera == 'NO-鎵嬫湳涓'){
+ this.UseFailProductFinish = '鍚�-鎵嬫湳涓';
+ }
+ if ('浣跨敤鍓嶅噯澶�' == this.failuerSituation) {
+ this.failuerSituation = '浣跨敤鍓嶅噯澶�-鎮h�呮湭楹婚唹';
+ }
+ var url = '';
+ url = "/a0J/e?" +
+ "CF00N10000002FIJU_lkid="+this.sourceOnCall+"&" +
+ "CF00N10000002FIJU="+this.sourceOnCallname+"&" +
+ "CF00N10000002FIJZ_lkid="+this.qisReportId+"&" +
+ "CF00N10000002FIJZ="+this.name+"&" +
+ "CF00N10000002Dx66_lkid="+this.hospitalId+"&" +
+ "CF00N10000002Dx66="+this.hospitalname+"&" +
+ "CF00N10000002Dx5t_lkid="+this.departmentClassId+"&" +
+ "CF00N10000002Dx5t="+this.departmentClassname+"&" +
+ "CF00N10000002Dx5n_lkid="+this.hospitalDepartment+"&" +
+ "CF00N10000002Dx5n="+this.hospitalDepartmentname+"&" +
+ "CF00N10000002Dx1X_lkid="+this.nonyushohinId+"&" +
+ "CF00N10000002Dx1X="+this.nonyushohinIdname+"&" +
+ "CF00N10000002EMHw_lkid="+this.ownerId+"&" +
+ "CF00N10000002EMHw="+this.ownername+"&" +
+ "00N10000002Dx5y="+this.faliourdate+"&" +
+ "00N10000002Dx6I="+this.comment+"&" +
+ "00N10000002FH86="+this.sourceforrepair+"&" +
+ "00N10000006P6Rn="+this.repairSalesPointProvinceChina+"&" +
+ "00N10000008rsVQ="+this.trableoccurdaYcollect+"&" +
+ "00N10000008rsW7="+this.damageForDocOrPat+"&"+
+ "00N10000008rsVw="+this.relationWithTheProblem+"&"+
+ "00N10000008rsW2="+this.reportForGoz+"&"+
+ "00N10000008rsW6="+this.whichProject+"&"+
+ "00N10000008rsVk="+this.operaName+"&" +
+ "00N10000008rsVN="+this.breakORFallOff+"&"+
+ "00N10000008rsW4="+this.setusageproduct+"&" +
+ "00N10000008rsVL="+this.afterFailureInformation+"&" +
+ "00N10000008rsVR="+this.delay15Min+"&"+
+ "00N10000008rsVZ="+this.informationFrom+"&"+
+ "00N10000008rsVT="+this.failureQInHospital+"&" +
+ "00N10000008rsVv="+this.failuerSituation+"&"+
+ "00N10000008rsW5="+this.UseFailProductFinish+ "&" +
+ "00N10000006P6SM="+this.WorkLocation+ "&" +
+ "retURL=%2F"+this.qisReportId;
+ window.open(url, "_blank");
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }else{
+ const evt = new ShowToastEvent({
+ title : '璇IS涓嶈兘鏂板缓淇悊',
+ message: '',
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ }).catch(error => {
+
+ const evt = new ShowToastEvent({
+ title : '鍙戠敓閿欒',
+ message: '',
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+
+ this.dispatchEvent(new CloseActionScreenEvent());
+ console.log('error='+error);
+ return;
+ }).finally(() => {
+
+ });
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCreateRepair/lexCreateRepair.js-meta.xml b/force-app/main/default/lwc/lexCreateRepair/lexCreateRepair.js-meta.xml
new file mode 100644
index 0000000..6cafb47
--- /dev/null
+++ b/force-app/main/default/lwc/lexCreateRepair/lexCreateRepair.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexCreateRepair">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCreateReportMaintenanceContract/lexCreateReportMaintenanceContract.html b/force-app/main/default/lwc/lexCreateReportMaintenanceContract/lexCreateReportMaintenanceContract.html
new file mode 100644
index 0000000..d044dbb
--- /dev/null
+++ b/force-app/main/default/lwc/lexCreateReportMaintenanceContract/lexCreateReportMaintenanceContract.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="exampleHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCreateReportMaintenanceContract/lexCreateReportMaintenanceContract.js b/force-app/main/default/lwc/lexCreateReportMaintenanceContract/lexCreateReportMaintenanceContract.js
new file mode 100644
index 0000000..04d05e5
--- /dev/null
+++ b/force-app/main/default/lwc/lexCreateReportMaintenanceContract/lexCreateReportMaintenanceContract.js
@@ -0,0 +1,69 @@
+import {
+ LightningElement,
+ wire,
+ api
+} from 'lwc';
+import {
+ CurrentPageReference
+} from "lightning/navigation";
+import {
+ CloseActionScreenEvent
+} from 'lightning/actions';
+import init from '@salesforce/apex/otherButtonMaintenanceContractCtl.init';
+
+export default class LexCreateReportMaintenanceContract extends LightningElement {
+ @api recordId;
+ str;
+ IsLoading = true;
+ Id;
+ RecordTypeDeveloperNameC;
+ EstimateTargetC;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback() {
+ console.log(this.recordId);
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result);
+ if (result != null) {
+ this.IsLoading = false;
+ this.Id = result.Id;
+ this.RecordTypeDeveloperNameC = result.RecordTypeDeveloperNameC;
+ this.EstimateTargetC = result.EstimateTargetC;
+
+ this.CreateReport();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ }).catch(error => {
+ console.log(error);
+ }).finally(() => {
+
+ });
+ }
+
+ // 鍒朵綔鎶ュ憡涔�
+ CreateReport() {
+ var MaintenanceContractId = this.Id;
+ var RecordTypeName = this.RecordTypeDeveloperNameC;
+ var EstimateTarget = this.EstimateTargetC;
+
+ var url = '';
+ if (EstimateTarget == "缁忛攢鍟�" && (RecordTypeName == "NewMaintenance_Contract" || RecordTypeName == "VM_Contract")) {
+ url = "/apex/MoreMaintenanceContractPop?Id=" + MaintenanceContractId + "&RecordTypeName=" + RecordTypeName;
+ } else {
+ url = "http://powerbi.olympus.com.cn/Home/Login";
+ }
+ window.open(url, '_bank');
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCreateReportMaintenanceContract/lexCreateReportMaintenanceContract.js-meta.xml b/force-app/main/default/lwc/lexCreateReportMaintenanceContract/lexCreateReportMaintenanceContract.js-meta.xml
new file mode 100644
index 0000000..3392981
--- /dev/null
+++ b/force-app/main/default/lwc/lexCreateReportMaintenanceContract/lexCreateReportMaintenanceContract.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCustomAnewMaintenance/lexCustomAnewMaintenance.html b/force-app/main/default/lwc/lexCustomAnewMaintenance/lexCustomAnewMaintenance.html
new file mode 100644
index 0000000..87f391a
--- /dev/null
+++ b/force-app/main/default/lwc/lexCustomAnewMaintenance/lexCustomAnewMaintenance.html
@@ -0,0 +1,6 @@
+<template>
+ <div class="exampleHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ <lightning-button label="Show Toast" onclick={ShowToastEvent}></lightning-button>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCustomAnewMaintenance/lexCustomAnewMaintenance.js b/force-app/main/default/lwc/lexCustomAnewMaintenance/lexCustomAnewMaintenance.js
new file mode 100644
index 0000000..45665b5
--- /dev/null
+++ b/force-app/main/default/lwc/lexCustomAnewMaintenance/lexCustomAnewMaintenance.js
@@ -0,0 +1,96 @@
+import {
+ LightningElement,
+ wire,
+ api
+} from 'lwc';
+import {
+ CurrentPageReference
+} from "lightning/navigation";
+import {
+ CloseActionScreenEvent
+} from 'lightning/actions';
+import init from '@salesforce/apex/otherButtonMaintenanceContractCtl.init';
+import selectMaintenanceContractEstimate from '@salesforce/apex/otherButtonMaintenanceContractCtl.selectMaintenanceContractEstimate';
+import {
+ ShowToastEvent
+} from 'lightning/platformShowToastEvent';
+
+export default class LexCustomAnewMaintenance extends LightningElement {
+ @api recordId;
+ str;
+ IsLoading = true;
+ Id;
+ StatusC;
+ RecordTypeId;
+ URFContractC;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback() {
+ console.log(this.recordId);
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result);
+ if (result != null) {
+ this.IsLoading = false;
+ this.Id = result.Id;
+ this.RecordTypeId = result.RecordTypeId;
+ this.StatusC = result.StatusC;
+ this.URFContractC = result.URFContractC;
+
+ this.CustomAnew();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ }).catch(error => {
+ console.log(error);
+ })
+ }
+
+ //涓
+ CustomAnew() {
+ if (this.StatusC != "寮曞悎涓�") {
+ this.ShowToastEvent("缁翠慨鍚堝悓涓嶆槸璇环涓殑鐘舵�侊紝涓嶈兘鍐嶆姤浠�", "error")
+ // alert("缁翠慨鍚堝悓涓嶆槸璇环涓殑鐘舵�侊紝涓嶈兘鍐嶆姤浠�");
+ } else {
+ init().then(result => {
+ if (result.length == 1) {
+ if (this.RecordTypeId == "01210000000gTYq") {
+ //URF闄愭鍚堝悓2鏈� LY 20220902 start
+ if (this.URFContractC == true) {
+ window.open("/apex/SelectAssetEstimateURF?copyid=" + ids[0], "_top");
+ } else {
+ window.open("/apex/SelectAssetEstimateVM?copyid=" + ids[0], "_top");
+ }
+ //URF闄愭鍚堝悓2鏈� LY 20220902 end
+ } else {
+ window.open("/apex/SelectAssetEstimate?copyid=" + ids[0], "_top");
+ }
+
+ } else {
+ this.ShowToastEvent('璇烽�夋嫨涓�涓姤浠�', "error")
+ // alert('璇烽�夋嫨涓�涓姤浠�');
+ }
+ })
+ }
+ }
+
+ // 寮圭獥
+ ShowToastEvent(msg, type) {
+ const event = new ShowToastEvent({
+ title: '',
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCustomAnewMaintenance/lexCustomAnewMaintenance.js-meta.xml b/force-app/main/default/lwc/lexCustomAnewMaintenance/lexCustomAnewMaintenance.js-meta.xml
new file mode 100644
index 0000000..3392981
--- /dev/null
+++ b/force-app/main/default/lwc/lexCustomAnewMaintenance/lexCustomAnewMaintenance.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCustomClone/lexCustomClone.css b/force-app/main/default/lwc/lexCustomClone/lexCustomClone.css
new file mode 100644
index 0000000..8d634cd
--- /dev/null
+++ b/force-app/main/default/lwc/lexCustomClone/lexCustomClone.css
@@ -0,0 +1,10 @@
+.createEmailHolder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+.container .uiContainerManager{
+ display: none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCustomClone/lexCustomClone.html b/force-app/main/default/lwc/lexCustomClone/lexCustomClone.html
new file mode 100644
index 0000000..61d9b05
--- /dev/null
+++ b/force-app/main/default/lwc/lexCustomClone/lexCustomClone.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="createEmailHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCustomClone/lexCustomClone.js b/force-app/main/default/lwc/lexCustomClone/lexCustomClone.js
new file mode 100644
index 0000000..8e437bd
--- /dev/null
+++ b/force-app/main/default/lwc/lexCustomClone/lexCustomClone.js
@@ -0,0 +1,49 @@
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { NavigationMixin } from 'lightning/navigation';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+import init from '@salesforce/apex/CaseController.initForlexCustomCloneButton';
+import UserInfo_Owner from '@salesforce/apex/TaskFeedbackController.UserInfo_Owner';
+import { updateRecord } from 'lightning/uiRecordApi';
+
+export default class lexCustomClone extends LightningElement {
+ @api recordId;
+ IsLoading = true;
+ inquirydetail;
+ answerdetailcontent;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback () {
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ this.IsLoading = false;
+ this.inquirydetail = result.inquirydetail;
+ this.answerdetailcontent = result.answerdetailcontent;
+ var url = "/500/e?retURL="+this.recordId+"&RecordType=01210000000QsYp&ent=Case"+
+ "&00N10000003M4vA="+this.inquirydetail+
+ "&00N10000003M4v8="+this.answerdetailcontent;
+ window.open(url);
+ }).catch(error => {
+ console.log('error='+error);
+ }).finally(() => {
+
+ });
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCustomClone/lexCustomClone.js-meta.xml b/force-app/main/default/lwc/lexCustomClone/lexCustomClone.js-meta.xml
new file mode 100644
index 0000000..bcc9491
--- /dev/null
+++ b/force-app/main/default/lwc/lexCustomClone/lexCustomClone.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexCustomClone">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCustomDelete/lexCustomDelete.html b/force-app/main/default/lwc/lexCustomDelete/lexCustomDelete.html
new file mode 100644
index 0000000..d044dbb
--- /dev/null
+++ b/force-app/main/default/lwc/lexCustomDelete/lexCustomDelete.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="exampleHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCustomDelete/lexCustomDelete.js b/force-app/main/default/lwc/lexCustomDelete/lexCustomDelete.js
new file mode 100644
index 0000000..4ae611c
--- /dev/null
+++ b/force-app/main/default/lwc/lexCustomDelete/lexCustomDelete.js
@@ -0,0 +1,89 @@
+import {
+ LightningElement,
+ wire,
+ api
+} from 'lwc';
+import {
+ CurrentPageReference
+} from "lightning/navigation";
+import {
+ CloseActionScreenEvent
+} from 'lightning/actions';
+import init from '@salesforce/apex/otherButtonRepairController.init';
+import selectCustomDeleteById from '@salesforce/apex/otherButtonRepairController.selectCustomDeleteById';
+import deleteRepair from '@salesforce/apex/otherButtonRepairController.deleteRepair';
+
+
+export default class LexCustomDelete extends LightningElement {
+ @api recordId;
+ str;
+ IsLoading = true;
+ Id;
+ userID;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback() {
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result);
+ if (result != null) {
+ this.IsLoading = false;
+ this.Id = result.Id;
+ this.userID = result.userID;
+
+ this.CustomDelete();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ }).catch(error => {
+ console.log(error);
+ }).finally(() => {
+
+ });
+ }
+
+ // 鍒犻櫎
+ CustomDelete() {
+ selectCustomDeleteById({
+ recordId: this.Id
+ }).then(repList => {
+ if (repList != null && repList.length > 0) {
+ var rp = repList[0];
+ if (rp.Status__c != "鑽夋涓�" &&
+ rp.Status__c != "1.鍙楃悊瀹屾瘯(SAP寰呭彂閫�)" &&
+ rp.Status__c != "4.淇悊鍝佽繑閫侀樁娈�"
+ ) {
+ alert("涓嶆槸鑽夋涓紝涓嶈兘鍒犻櫎");
+ } else if (rp.Status__c == "4.淇悊鍝佽繑閫侀樁娈�" &&
+ (rp.SAP_Transfer_time__c != "" || rp.Repair_Ordered_Date__c != "")
+ ) {
+ alert("宸茬粡鍙戦�佽繃SAP锛屼笉鑳藉垹闄�");
+ } else if (this.userID.substring(0, 15) != rp.CreatedById.substring(0, 15) && this.userID.substring(0, 15) != rp.Acc_OwnerId__c.substring(0, 15) && this.userID.substring(0, 15) != rp.FSE_ownerid__c.substring(0, 15)) {
+ alert("涓嶆槸鎵�鏈変汉銆佸垱寤轰汉鎴朏SE涓昏礋璐d汉锛屼笉鑳藉垹闄�");
+ } else {
+ if (confirm("鏄惁纭畾锛�")) {
+ deleteRepair({
+ rid: rp.Id
+ }).then(rtn => {
+ if (rtn == "OK") {
+ window.location.href = "/a0J/o";
+ } else {
+ alert(rtn);
+ }
+ })
+ }
+ }
+ }
+ })
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCustomDelete/lexCustomDelete.js-meta.xml b/force-app/main/default/lwc/lexCustomDelete/lexCustomDelete.js-meta.xml
new file mode 100644
index 0000000..3392981
--- /dev/null
+++ b/force-app/main/default/lwc/lexCustomDelete/lexCustomDelete.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCustomDeleteLWC/lexCustomDeleteLWC.html b/force-app/main/default/lwc/lexCustomDeleteLWC/lexCustomDeleteLWC.html
new file mode 100644
index 0000000..ba53413
--- /dev/null
+++ b/force-app/main/default/lwc/lexCustomDeleteLWC/lexCustomDeleteLWC.html
@@ -0,0 +1,2 @@
+<template>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCustomDeleteLWC/lexCustomDeleteLWC.js b/force-app/main/default/lwc/lexCustomDeleteLWC/lexCustomDeleteLWC.js
new file mode 100644
index 0000000..86678f3
--- /dev/null
+++ b/force-app/main/default/lwc/lexCustomDeleteLWC/lexCustomDeleteLWC.js
@@ -0,0 +1,144 @@
+import { LightningElement, api, track, wire } from 'lwc';
+import init from '@salesforce/apex/lexCustomDeleteController.initForCustomDelete';
+import {CurrentPageReference} from 'lightning/navigation'
+import UserInfo_Owner from '@salesforce/apex/TaskFeedbackController.UserInfo_Owner';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+import deleteRepair from '@salesforce/apex/ControllerUtil.deleteRepair';
+
+export default class lexCustomDeleteLWC extends LightningElement {
+
+
+ @api recordId;
+ @api message;
+
+ @track Status ;
+ @track FSE ;
+ @track SAP;
+ @track cre ;
+ @track Rep ;
+ @track acc ;
+ @track fSE ;
+ @track id;
+ @track rtn;
+
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference){
+ console.log(111);
+ console.log(currentPageReference);
+ if(currentPageReference){
+ const urlValue=currentPageReference.state.recordId;
+ if(urlValue){
+ let str='${urlValue}';
+ console.log("str");
+ console.log(str);
+ this.recordId=str;
+ }
+ }
+ }
+ connectedCallback(){
+ console.log(this.recordId);
+ init({
+ recordId:this.recordId
+ }).then(result=>{
+ console.log(result);
+ if(result!=null){
+ this.FSE=result.FSEApplyForRepairtime;
+ this.Rep=result.Rep;
+ this.SAP=result.SAP;
+ this.Status=result.Status;
+ this.acc=result.acc;
+ this.id=result.Id;
+ this.cre=result.cre;
+ this.fSE=result.FSEownerId;
+ console.log("end");
+ this.handleDeleteAction();
+ console.log("end2");
+
+ }
+ })
+ }
+
+ handleDeleteAction(){
+ if (this.Status != null && this.Status.length > 0) {
+ if (this.Status != "鑽夋涓�"&& this.Status != "1.鍙楃悊瀹屾瘯(SAP寰呭彂閫�)"&& this.Status != "4.淇悊鍝佽繑閫侀樁娈�") {
+ this.message = "涓嶆槸鑽夋涓�,涓嶈兘鍒犻櫎";
+ const event = new ShowToastEvent({
+ title: 'error',
+ variant:'error',
+ message:
+ this.message,
+ });
+ this.dispatchEvent(event);
+ }
+ else if (this.Status == "0.鐢宠瀹屾瘯"&& (this.FSE != "")) {
+ message = "FSE宸茬粡鐢宠锛屼笉鑳藉垹闄�";
+ console.log('***action4');
+
+ const event = new ShowToastEvent({
+ title: 'warning',
+ message:
+ this.message,
+ });
+ this.dispatchEvent(event);
+ }
+ else if (this.Status == "4.淇悊鍝佽繑閫侀樁娈�"&& (this.SAP != "" || this.Rep!= "")){
+ message = "宸茬粡鍙戦�佽繃SAP锛屼笉鑳藉垹闄�";
+ const event = new ShowToastEvent({
+ title: 'warning',
+ message:
+ this.message,
+ });
+ this.dispatchEvent(event);
+ }
+ else if (UserInfo_Owner.Id.substring(0,15) != this.cre.substring(0,15) && UserInfo_Owner.Id.substring(0,15) != this.acc.substring(0,15)&& UserInfo_Owner.Id.substring(0,15) != this.fSE.substring(0,15)) {
+ message = "涓嶆槸鎵�鏈変汉銆佸垱寤轰汉鎴朏SE涓昏礋璐d汉锛屼笉鑳藉垹闄�";
+ const event = new ShowToastEvent({
+ title: 'warning',
+ message:
+ this.message,
+ });
+ this.dispatchEvent(event);
+ }
+ else {
+
+ // sforce.connection.sessionId = '{!$Api.Session_ID}';
+ // var rtn=sforce.apex.execute("ControllerUtil","deleteRepair",{rid:this.id});
+ deleteRepair({
+ rid:this.id
+ }).then(result=>{
+ console.log(result);
+ if(result!=null){
+ this.rtn=result;
+ }
+ })
+
+ if (this.rtn == "OK") {
+ reload();
+ } else {
+ alert(this.rtn);
+
+ }
+ }
+ }
+
+ function reload(){
+ var str="";
+ if(getParam('retURL')!==null){
+ str +=getParam('retURL');
+ }
+ window.open(str,'_self');
+ }
+
+ function getParam(paramName) {
+ paramValue = "", isFound = !1;
+ if (this.location.search.indexOf("?") == 0 && this.location.search.indexOf("=") > 1) {
+ arrSource = unescape(this.location.search).substring(1, this.location.search.length).split("&"), i = 0;
+ while (i < arrSource.length && !isFound) arrSource[i].indexOf("=") > 0 && arrSource[i].split("=")[0].toLowerCase() == paramName.toLowerCase() && (paramValue = arrSource[i].split("=")[1], isFound = !0), i++
+ }
+ return paramValue == "" && (paramValue = null), paramValue
+}
+
+}
+
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCustomDeleteLWC/lexCustomDeleteLWC.js-meta.xml b/force-app/main/default/lwc/lexCustomDeleteLWC/lexCustomDeleteLWC.js-meta.xml
new file mode 100644
index 0000000..7731813
--- /dev/null
+++ b/force-app/main/default/lwc/lexCustomDeleteLWC/lexCustomDeleteLWC.js-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="customDelete">
+ <apiVersion>56.0</apiVersion>
+ <isExposed>true</isExposed>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCustomNewCopy2/lexCustomNewCopy2.html b/force-app/main/default/lwc/lexCustomNewCopy2/lexCustomNewCopy2.html
new file mode 100644
index 0000000..87f391a
--- /dev/null
+++ b/force-app/main/default/lwc/lexCustomNewCopy2/lexCustomNewCopy2.html
@@ -0,0 +1,6 @@
+<template>
+ <div class="exampleHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ <lightning-button label="Show Toast" onclick={ShowToastEvent}></lightning-button>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCustomNewCopy2/lexCustomNewCopy2.js b/force-app/main/default/lwc/lexCustomNewCopy2/lexCustomNewCopy2.js
new file mode 100644
index 0000000..2daf585
--- /dev/null
+++ b/force-app/main/default/lwc/lexCustomNewCopy2/lexCustomNewCopy2.js
@@ -0,0 +1,77 @@
+import {
+ LightningElement,
+ wire,
+ api
+} from 'lwc';
+import {
+ CurrentPageReference
+} from "lightning/navigation";
+import {
+ CloseActionScreenEvent
+} from 'lightning/actions';
+import init from '@salesforce/apex/otherButtonMaintenanceContractCtl.init';
+import {
+ ShowToastEvent
+} from 'lightning/platformShowToastEvent';
+
+export default class LexCustomNewCopy2 extends LightningElement {
+ @api recordId;
+ str;
+ IsLoading = true;
+ Id;
+ notRenewC;
+ Name;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback() {
+ console.log(this.recordId);
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result);
+ if (result != null) {
+ this.IsLoading = false;
+ this.Id = result.Id;
+ this.notRenewC = result.notRenewC;
+ this.Name = result.Name;
+
+ this.CustomNewCopy2();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ }).catch(error => {
+ console.log(error);
+ }).finally(() => {
+
+ });
+ }
+
+ // 缁х画鏂版湇鍔″悎鍚�
+ CustomNewCopy2() {
+ if (this.notRenewC) {
+ this.ShowToastEvent("璇疯仈绯绘湇鍔″晢鍝侀儴锛�", "error");
+ // alert("璇疯仈绯绘湇鍔″晢鍝侀儴锛�");
+ } else {
+ window.open("/" + this.Id + "/e?clone=1&Name=&00N10000002Dx5D=&00N10000002Dx5S=%e5%bc%95%e5%90%88%e4%b8%ad&00NO00000010sDc=&CF00NO00000010hyI=&CF00NO00000010hyI_lkid=&CF00NO00000010hyX=&CF00NO00000010hyX_lkid=&CF00NO00000010hyN=&CF00NO00000010hyN_lkid=&RecordType=01210000000gTYq&00N10000002pmOp=&00N10000006gZDd=&00N10000006gZDe=&00NO00000010hy4=&00N10000002Dx4j=&00N10000002Dx4m=&00N10000002Dx4w=&00N10000002Dx4k=&00N10000002Dx5J=&00N10000002Dx5M=&00N10000002Dx4i=&00N10000002Dx4h=&00N10000002Dx5K=&00N10000003OXdT=&00N100000048zfn=&00N10000002FMsq=&00N10000003OlGF=&00N10000002Dx4r=&00N100000047AY1=&00N100000047AYB=&00N100000047AY6=&00N10000003PCeB=&00N10000005HBNe=&00N10000006plAl=&00N10000002Dx5C=&retURL=%2F" + this.Id + "&saveURL=%2Fapex/SaveMaintenanceByCopy?mid=" + this.Id + "&CF00N100000048Paw=" + this.Name + "&CF00N100000048Paw_lkid=" + this.Id, "_blank");
+ }
+ }
+
+ // 寮圭獥
+ ShowToastEvent(msg, type) {
+ const event = new ShowToastEvent({
+ title: '',
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCustomNewCopy2/lexCustomNewCopy2.js-meta.xml b/force-app/main/default/lwc/lexCustomNewCopy2/lexCustomNewCopy2.js-meta.xml
new file mode 100644
index 0000000..3392981
--- /dev/null
+++ b/force-app/main/default/lwc/lexCustomNewCopy2/lexCustomNewCopy2.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCustomNewMCMaintenance/lexCustomNewMCMaintenance.html b/force-app/main/default/lwc/lexCustomNewMCMaintenance/lexCustomNewMCMaintenance.html
new file mode 100644
index 0000000..d044dbb
--- /dev/null
+++ b/force-app/main/default/lwc/lexCustomNewMCMaintenance/lexCustomNewMCMaintenance.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="exampleHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCustomNewMCMaintenance/lexCustomNewMCMaintenance.js b/force-app/main/default/lwc/lexCustomNewMCMaintenance/lexCustomNewMCMaintenance.js
new file mode 100644
index 0000000..9adcd42
--- /dev/null
+++ b/force-app/main/default/lwc/lexCustomNewMCMaintenance/lexCustomNewMCMaintenance.js
@@ -0,0 +1,81 @@
+import {
+ LightningElement,
+ wire,
+ api
+} from 'lwc';
+import {
+ CurrentPageReference
+} from "lightning/navigation";
+import {
+ CloseActionScreenEvent
+} from 'lightning/actions';
+import init from '@salesforce/apex/otherButtonMaintenanceContractCtl.init';
+
+export default class LexCustomNewMCMaintenance extends LightningElement {
+ @api recordId;
+ str;
+ IsLoading = true;
+ Id;
+ StatusC;
+ IsRecognitionModelC;
+ RecordTypeId;
+ URFContractC;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback() {
+ console.log(this.recordId);
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result);
+ if (result != null) {
+ this.IsLoading = false;
+ this.Id = result.Id;
+ this.StatusC = result.StatusC;
+ this.IsRecognitionModelC = result.IsRecognitionModelC;
+ this.RecordTypeId = result.RecordTypeId;
+ this.URFContractC = result.URFContractC;
+
+ this.CustomNewMC();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ }).catch(error => {
+ console.log(error);
+ })
+ }
+
+ // 鏂板缓鏂版湇鍔″悎鍚屾姤浠�
+ CustomNewMC() {
+ if ( this.StatusC != "寮曞悎涓�") {
+ alert("缁翠慨鍚堝悓涓嶆槸璇环涓殑鐘舵�侊紝涓嶈兘鏂板缓鎶ヤ环");
+ } else {
+ //缁翠慨鍚堝悓鏂板缓鎶ヤ环鏃讹紝濡傛灉鏄厛娆惧璞★紝寮瑰嚭瀵硅瘽妗嗘彁绀� thh 20220304 start
+ if (this.IsRecognitionModelC == 1) {
+ if (!confirm("璇ョ粡閿�鍟嗕负鍏堟瀵硅薄锛屾槸鍚︾户缁柊寤烘姤浠凤紵")) {
+ return;
+ }
+ }
+ //缁翠慨鍚堝悓鏂板缓鎶ヤ环鏃讹紝濡傛灉鏄厛娆惧璞★紝寮瑰嚭瀵硅瘽妗嗘彁绀� thh 20220304 end
+ if (this.RecordTypeId == "01210000000gTYq") {
+ if (this.URFContractC == "0") {
+ window.open("/apex/SelectAssetEstimateVM?mcid=" + this.Id, "_top");
+ } else {
+ window.open("/apex/SelectAssetEstimateURF?mcid=" + this.Id, "_top");
+ }
+ } else {
+ window.open("/apex/SelectAssetEstimate?mcid=" + this.Id, "_top");
+ }
+
+ }
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCustomNewMCMaintenance/lexCustomNewMCMaintenance.js-meta.xml b/force-app/main/default/lwc/lexCustomNewMCMaintenance/lexCustomNewMCMaintenance.js-meta.xml
new file mode 100644
index 0000000..3392981
--- /dev/null
+++ b/force-app/main/default/lwc/lexCustomNewMCMaintenance/lexCustomNewMCMaintenance.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCustomNewMaintenance/lexCustomNewMaintenance.html b/force-app/main/default/lwc/lexCustomNewMaintenance/lexCustomNewMaintenance.html
new file mode 100644
index 0000000..87f391a
--- /dev/null
+++ b/force-app/main/default/lwc/lexCustomNewMaintenance/lexCustomNewMaintenance.html
@@ -0,0 +1,6 @@
+<template>
+ <div class="exampleHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ <lightning-button label="Show Toast" onclick={ShowToastEvent}></lightning-button>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCustomNewMaintenance/lexCustomNewMaintenance.js b/force-app/main/default/lwc/lexCustomNewMaintenance/lexCustomNewMaintenance.js
new file mode 100644
index 0000000..5fd4900
--- /dev/null
+++ b/force-app/main/default/lwc/lexCustomNewMaintenance/lexCustomNewMaintenance.js
@@ -0,0 +1,79 @@
+import {
+ LightningElement,
+ wire,
+ api
+} from 'lwc';
+import {
+ CurrentPageReference
+} from "lightning/navigation";
+import {
+ CloseActionScreenEvent
+} from 'lightning/actions';
+import init from '@salesforce/apex/otherButtonMaintenanceContractCtl.init';
+import {
+ ShowToastEvent
+} from 'lightning/platformShowToastEvent';
+
+export default class LexCustomNewMaintenance extends LightningElement {
+ @api recordId;
+ str;
+ IsLoading = true;
+ Id;
+ StatusC;
+ RecordTypeId;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback() {
+ console.log(this.recordId);
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result);
+ if (result != null) {
+ this.IsLoading = false;
+ this.Id = result.Id;
+ this.StatusC = result.StatusC;
+ this.RecordTypeId = result.RecordTypeId;
+
+ this.CustomNew();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ }).catch(error => {
+ console.log(error);
+ })
+ }
+
+ // 鏂板缓缁翠慨鍚堝悓鎶ヤ环
+ CustomNew() {
+ if (this.StatusC != "寮曞悎涓�") {
+ this.ShowToastEvent("缁翠慨鍚堝悓涓嶆槸璇环涓殑鐘舵�侊紝涓嶈兘鏂板缓鎶ヤ环", "error");
+ // alert("缁翠慨鍚堝悓涓嶆槸璇环涓殑鐘舵�侊紝涓嶈兘鏂板缓鎶ヤ环");
+ } else {
+ if (this.RecordTypeId == "01210000000gTYq") {
+ window.open("/apex/SelectAssetEstimateVM?mcid=" + this.Id, "_top");
+ } else {
+ window.open("/apex/SelectAssetEstimate?mcid=" + this.Id, "_top");
+ }
+ }
+ }
+
+ // 寮圭獥
+ ShowToastEvent(msg, type) {
+ const event = new ShowToastEvent({
+ title: '',
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCustomNewMaintenance/lexCustomNewMaintenance.js-meta.xml b/force-app/main/default/lwc/lexCustomNewMaintenance/lexCustomNewMaintenance.js-meta.xml
new file mode 100644
index 0000000..3392981
--- /dev/null
+++ b/force-app/main/default/lwc/lexCustomNewMaintenance/lexCustomNewMaintenance.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCustomSubmit/lexCustomSubmit.css b/force-app/main/default/lwc/lexCustomSubmit/lexCustomSubmit.css
new file mode 100644
index 0000000..af18c76
--- /dev/null
+++ b/force-app/main/default/lwc/lexCustomSubmit/lexCustomSubmit.css
@@ -0,0 +1,11 @@
+.Holder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+
+.container .uiContainerManager{
+ display : none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCustomSubmit/lexCustomSubmit.html b/force-app/main/default/lwc/lexCustomSubmit/lexCustomSubmit.html
new file mode 100644
index 0000000..960b41d
--- /dev/null
+++ b/force-app/main/default/lwc/lexCustomSubmit/lexCustomSubmit.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="Holder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCustomSubmit/lexCustomSubmit.js b/force-app/main/default/lwc/lexCustomSubmit/lexCustomSubmit.js
new file mode 100644
index 0000000..413f6af
--- /dev/null
+++ b/force-app/main/default/lwc/lexCustomSubmit/lexCustomSubmit.js
@@ -0,0 +1,158 @@
+import { LightningElement,api, track, wire } from 'lwc';
+import {CurrentPageReference} from 'lightning/navigation';
+import { CloseActionScreenEvent } from 'lightning/actions';
+import getUserId from '@salesforce/apex/RentalApplyControllerLWT.getUserId';
+import init from '@salesforce/apex/SelectSubstituteControllerLWT.initFromCustomSubmitButton';
+import updateRaesc from '@salesforce/apex/SelectSubstituteControllerLWT.updateRaesc';
+import selectRacById from '@salesforce/apex/SelectSubstituteControllerLWT.selectRacById';
+import postponeCheck from '@salesforce/apex/SelectSubstituteControllerLWT.postponeCheck';
+
+import { loadScript } from 'lightning/platformResourceLoader';
+import { submitForApproval } from 'lightning/uiRecordApi';
+import { updateRecord } from 'lightning/uiRecordApi';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+export default class lexCustomSubmit extends LightningElement {
+
+ @api recordId;
+ id;
+ RentalApplyId;
+ Status;
+ IsLoading=true;
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference){
+ console.log("杩涘叆椤甸潰");
+ console.log(currentPageReference);
+ if(currentPageReference){
+ const urvalue=currentPageReference.state.recordId;
+ if(urvalue){
+ let str=`${urvalue}`;
+ console.log('str');
+ console.log(str);
+ this.recordId=str;
+ }
+ }
+ }
+
+
+
+ connectedCallback(){
+ console.log(this.recordId);
+ init({recordId:this.recordId}).then(result=>{
+ console.log(result);
+ if(result!=null){
+ this.Rental_Apply_Equipment_Set__c=result;
+ this.cancelSubmit().then(res=>{
+ this.IsLoading=false;
+ this.dispatchEvent(new CloseActionScreenEvent());
+ });
+ }
+ }).catch(err=>{
+ console.log("error:");
+ console.log(err);
+ }).finally(()=>{
+
+ });
+ }
+
+
+
+ async cancelSubmit(){
+ console.log("hhh1");
+ if (this.Rental_Apply_Equipment_Set__c.Request_extend_day__c == ""
+ || this.Rental_Apply_Equipment_Set__c.Request_extend_day__c == null
+ || this.Rental_Apply_Equipment_Set__c.Extend_request_reason__c == ""
+ || this.Rental_Apply_Equipment_Set__c.Extend_request_reason__c == null) {
+ // alert("蹇呴』濉啓寤舵湡甯屾湜缁撴潫鏃ワ紝寤舵湡鐢宠鐞嗙敱");
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:"蹇呴』濉啓寤舵湡甯屾湜缁撴潫鏃ワ紝寤舵湡鐢宠鐞嗙敱"
+ });
+ this.dispatchEvent(event);
+ return;
+ }
+ console.log("hhh2");
+ let rtn;
+ await postponeCheck({
+ endDate:this.Rental_Apply_Equipment_Set__c.Rental_End_Date__c,
+ d:-5
+ }).then(res=>{
+ console.log(res);
+ rtn=res;
+ }).catch(err=>{
+ console.log("err:",err.message);
+ })
+
+ console.log(rtn);
+ if (rtn != "OK") {
+ // alert(rtn);
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:rtn
+ });
+ this.dispatchEvent(event);
+ return;
+ }
+ console.log("hhh3");
+ let resultSet = await selectRacById({recordId:this.Rental_Apply_Equipment_Set__c.Rental_Apply__c})
+ ;
+ let records = resultSet;
+ console.log("hhh4");
+ let result = await updateRaesc({
+ recordId:this.Rental_Apply_Equipment_Set__c.Id,
+ JingliApprovalManagerc:records[0].JingliApprovalManager__c,
+ BuchangApprovalManagerc:records[0].SalesManager__c,
+ BuchangApprovalManagerSalesc:records[0].BuchangApprovalManager__c,
+ ZongjianApprovalManagerc:records[0].BuchangApprovalManagerSales__c,
+ ExtendStatusc:'濉啓瀹屾瘯',
+ });
+ console.log("hhh5");
+ console.log(result);
+ // let messages = getConnectDMLErrorMessages(result);
+ if(result!=null&&result.length>0&&result.errors.length>0){
+ // alert(result.errors[0].split(",")[1]);
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:result.errors[0].split(",")[1]
+ });
+ this.dispatchEvent(event);
+ }
+ console.log("hhh7");
+
+ // let request = new sforce.ProcessSubmitRequest();
+ // request.objectId = this.recordId;
+ // let processResults = sforce.connection.process([request]);
+ console.log("hhh8");
+ // submitForApproval(this.Rental_Apply_Equipment_Set__c.Id).then(result => {
+ // console.log(result);
+ // if (processResults[0].errors != null) {
+ // alert(processResults[0].errors.message);
+ // return;
+ // }
+ // console.log("hhh9");
+ // window.location.reload();
+ // })
+ // .catch(error => {
+ // console.error('Error submitting record for approval:', error.message);
+ // });
+
+ // await submitForApproval(this.recordId);
+ const fields = {}
+ const recordInput = { fields };
+ updateRecord({ fields: recordInput, recordId: this.recordId })
+ .then(() => {
+ console.log("鏇存柊鎴愬姛");
+ })
+ .catch(error => {
+ console.log(error.message);
+ console.log(error);
+ // alert(error.body.message);
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:error.body.message
+ });
+ this.dispatchEvent(event);
+ return;
+ // 澶勭悊寮傚父鎯呭喌
+ });
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexCustomSubmit/lexCustomSubmit.js-meta.xml b/force-app/main/default/lwc/lexCustomSubmit/lexCustomSubmit.js-meta.xml
new file mode 100644
index 0000000..c4d4cfb
--- /dev/null
+++ b/force-app/main/default/lwc/lexCustomSubmit/lexCustomSubmit.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexCustomSubmit">
+ <apiVersion>51.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__AppPage</target>
+ <target>lightning__RecordPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexDeleteQuotePage/lexDeleteQuotePage.html b/force-app/main/default/lwc/lexDeleteQuotePage/lexDeleteQuotePage.html
new file mode 100644
index 0000000..dcf90dd
--- /dev/null
+++ b/force-app/main/default/lwc/lexDeleteQuotePage/lexDeleteQuotePage.html
@@ -0,0 +1,20 @@
+<template>
+
+
+<div style="position: relative; margin-top: 10px; margin-left: 10px;">
+<span style="font-weight: bold; font-size: 12pt;">{Label.YouCantDeleteEvent1}</span>
+
+<br/><br/><br/>
+
+{Label.YouCantDeleteEvent2}
+
+<br/><br/>
+
+{Label.YouCantDeleteEvent3}
+<a href="javascript:return null;" onclick={click}>{Label.YouCantDeleteEvent4}</a>{Label.YouCantDeleteEvent5}
+
+</div>
+
+
+
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexDeleteQuotePage/lexDeleteQuotePage.js b/force-app/main/default/lwc/lexDeleteQuotePage/lexDeleteQuotePage.js
new file mode 100644
index 0000000..9f4467b
--- /dev/null
+++ b/force-app/main/default/lwc/lexDeleteQuotePage/lexDeleteQuotePage.js
@@ -0,0 +1,27 @@
+import { LightningElement, track, wire } from 'lwc';
+
+
+import YouCantDeleteEvent1 from '@salesforce/label/c.YouCantDeleteEvent1';
+import YouCantDeleteEvent2 from '@salesforce/label/c.YouCantDeleteEvent2';
+import YouCantDeleteEvent3 from '@salesforce/label/c.YouCantDeleteEvent3';
+import YouCantDeleteEvent4 from '@salesforce/label/c.YouCantDeleteEvent4';
+import YouCantDeleteEvent5 from '@salesforce/label/c.YouCantDeleteEvent5';
+
+export default class lexDeleteQuotePage extends LightningElement {
+
+
+
+ Label = {
+
+ YouCantDeleteEvent1,
+ YouCantDeleteEvent2,
+ YouCantDeleteEvent3,
+ YouCantDeleteEvent4,
+ YouCantDeleteEvent5
+ };
+
+ click(event){
+ history.back();
+ }
+
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexDeleteQuotePage/lexDeleteQuotePage.js-meta.xml b/force-app/main/default/lwc/lexDeleteQuotePage/lexDeleteQuotePage.js-meta.xml
new file mode 100644
index 0000000..11fe7db
--- /dev/null
+++ b/force-app/main/default/lwc/lexDeleteQuotePage/lexDeleteQuotePage.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexDeleteQuotePage">
+ <apiVersion>51.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexDetailBulkUpdate/lexDetailBulkUpdate.css b/force-app/main/default/lwc/lexDetailBulkUpdate/lexDetailBulkUpdate.css
new file mode 100644
index 0000000..af18c76
--- /dev/null
+++ b/force-app/main/default/lwc/lexDetailBulkUpdate/lexDetailBulkUpdate.css
@@ -0,0 +1,11 @@
+.Holder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+
+.container .uiContainerManager{
+ display : none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexDetailBulkUpdate/lexDetailBulkUpdate.html b/force-app/main/default/lwc/lexDetailBulkUpdate/lexDetailBulkUpdate.html
new file mode 100644
index 0000000..2ef2898
--- /dev/null
+++ b/force-app/main/default/lwc/lexDetailBulkUpdate/lexDetailBulkUpdate.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="Holder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexDetailBulkUpdate/lexDetailBulkUpdate.js b/force-app/main/default/lwc/lexDetailBulkUpdate/lexDetailBulkUpdate.js
new file mode 100644
index 0000000..fedf726
--- /dev/null
+++ b/force-app/main/default/lwc/lexDetailBulkUpdate/lexDetailBulkUpdate.js
@@ -0,0 +1,39 @@
+import { LightningElement, track, wire, api } from 'lwc';
+import {CurrentPageReference} from 'lightning/navigation';
+import { CloseActionScreenEvent } from 'lightning/actions';
+
+export default class lexDetailBulkUpdate extends LightningElement {
+ @api recordId;
+
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference){
+ console.log("杩涘叆椤甸潰");
+ console.log(currentPageReference);
+ if(currentPageReference){
+ const urvalue=currentPageReference.state.recordId;
+ if(urvalue){
+ let str=`${urvalue}`;
+ console.log('str');
+ console.log(str);
+ this.recordId=str;
+ }
+ }
+ }
+
+ connectedCallback(){
+
+ this.cancelSubmit().then(res=>{
+ this.IsLoading=false;
+ this.dispatchEvent(new CloseActionScreenEvent());
+ });
+ }
+
+ async cancelSubmit(){
+ window.open('/apex/TransferApplySelectDetailSub?id='+this.recordId,'DetailBulkUpdateLWC', 'width=600,height=200');
+ }
+
+ //old js
+ // window.open("/apex/TransferApplySelectDetailSub?Id={!URLENCODE(TransferApply__c.Id)}");
+
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexDetailBulkUpdate/lexDetailBulkUpdate.js-meta.xml b/force-app/main/default/lwc/lexDetailBulkUpdate/lexDetailBulkUpdate.js-meta.xml
new file mode 100644
index 0000000..b41eb1f
--- /dev/null
+++ b/force-app/main/default/lwc/lexDetailBulkUpdate/lexDetailBulkUpdate.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexDetailBulkUpdate">
+ <apiVersion>51.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__AppPage</target>
+ <target>lightning__RecordPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexDispatchOCSMQARA/lexDispatchOCSMQARA.css b/force-app/main/default/lwc/lexDispatchOCSMQARA/lexDispatchOCSMQARA.css
new file mode 100644
index 0000000..3d14772
--- /dev/null
+++ b/force-app/main/default/lwc/lexDispatchOCSMQARA/lexDispatchOCSMQARA.css
@@ -0,0 +1,10 @@
+.dispatchOCSMQARAHolder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+.container .uiContainerManager{
+ display: none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexDispatchOCSMQARA/lexDispatchOCSMQARA.html b/force-app/main/default/lwc/lexDispatchOCSMQARA/lexDispatchOCSMQARA.html
new file mode 100644
index 0000000..894569c
--- /dev/null
+++ b/force-app/main/default/lwc/lexDispatchOCSMQARA/lexDispatchOCSMQARA.html
@@ -0,0 +1,6 @@
+<template>
+ <div class="dispatchOCSMQARAHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ <lightning-button label="Show Toast" onclick={ShowToastEvent}></lightning-button>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexDispatchOCSMQARA/lexDispatchOCSMQARA.js b/force-app/main/default/lwc/lexDispatchOCSMQARA/lexDispatchOCSMQARA.js
new file mode 100644
index 0000000..2076d74
--- /dev/null
+++ b/force-app/main/default/lwc/lexDispatchOCSMQARA/lexDispatchOCSMQARA.js
@@ -0,0 +1,71 @@
+/*
+ * @Description:
+ * @version:
+ * @Author: chen jing wu
+ * @Date: 2023-04-07 09:02:03
+ * @LastEditors: chen jing wu
+ * @LastEditTime: 2023-04-11 11:23:37
+ */
+import { api, wire,LightningElement } from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import updateForDispatchOCSMQARAButton from '@salesforce/apex/ReportController.updateForDispatchOCSMQARAButton';
+import { updateRecord } from 'lightning/uiRecordApi';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+export default class LexDispatchOCSMQARA extends LightningElement {
+ @api recordId;
+ IsLoading = true;
+
+
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback(){
+ console.log(this.recordId);
+ this.DispatchOCSMQARA();
+
+ }
+
+ showToast(msg,type) {
+ const event = new ShowToastEvent({
+ title: '',
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ }
+
+
+ updateRecordView(recordId) {
+ updateRecord({fields: { Id: recordId }});
+ }
+
+ DispatchOCSMQARA () {
+ updateForDispatchOCSMQARAButton({
+ recordId: this.recordId
+ }).then(result =>{
+ if(result){
+ this.showToast(result,"error");
+ }else{
+ this.showToast("鎴愬姛","success");
+ this.updateRecordView(this.recordId);
+ this.IsLoading = false;
+ }
+ this.dispatchEvent(new CloseActionScreenEvent());
+ });
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexDispatchOCSMQARA/lexDispatchOCSMQARA.js-meta.xml b/force-app/main/default/lwc/lexDispatchOCSMQARA/lexDispatchOCSMQARA.js-meta.xml
new file mode 100644
index 0000000..3392981
--- /dev/null
+++ b/force-app/main/default/lwc/lexDispatchOCSMQARA/lexDispatchOCSMQARA.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexESignAcceptanceHospital/lexESignAcceptanceHospital.html b/force-app/main/default/lwc/lexESignAcceptanceHospital/lexESignAcceptanceHospital.html
new file mode 100644
index 0000000..e9c9349
--- /dev/null
+++ b/force-app/main/default/lwc/lexESignAcceptanceHospital/lexESignAcceptanceHospital.html
@@ -0,0 +1,4 @@
+<template>
+ <div class="lexESignAcceptanceHospital" if:true={IsLoding}>
+ <lightning-spinner alternative-text="Loading" size="medium"> </lightning-spinner> </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexESignAcceptanceHospital/lexESignAcceptanceHospital.js b/force-app/main/default/lwc/lexESignAcceptanceHospital/lexESignAcceptanceHospital.js
new file mode 100644
index 0000000..a5e8655
--- /dev/null
+++ b/force-app/main/default/lwc/lexESignAcceptanceHospital/lexESignAcceptanceHospital.js
@@ -0,0 +1,186 @@
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import init from '@salesforce/apex/ESignController.ESignController';
+import OcsmResult from '@salesforce/apex/ESignController.OcsmResult';
+import UserInfo_Owner from '@salesforce/apex/ESignController.UserInfo_Owner';
+import { updateRecord } from 'lightning/uiRecordApi';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+export default class Submit extends LightningElement {
+ @api recordId;//OwnerId
+ ownerId;//鎵�鏈変汉id
+ id;//杩斿洖鍊肩殑id
+ IsLoading = true;
+ profileId = '';
+ arrMessage = [];
+ RCManagerId = null;
+ GrouppurchasePCL = null;
+ OCMManProvinceCus = null;
+ HPSignUpStatus = null;
+ SalesRootFormula = null;
+ HPSignUpDate = null;
+ salesManage = null;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback(){
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result);
+ // this.RCManagerId = result.RCManagerId;
+ this.GrouppurchasePCL = result.GrouppurchasePCL;
+ this.OCMManProvinceCus = result.OCMManProvinceCus;
+ this.HPSignUpStatus = result.HPSignUpStatus;
+ this.SalesRootFormula = result.SalesRootFormula;
+ this.HPSignUpDate = result.HPSignUpDate;
+ this.profileId = result.profileId.slice(0,15);
+ this.IsLoading = false;
+ this.AcceptanceHospital();
+ })
+ }
+ AcceptanceHospital(){
+ //鍏堝垽鏂槸鍚︿负闆嗛噰璇�
+ // var Group_purchase_PCL ;
+ // var Group_purchase_PCLFlag = "{!eSignForm__c.Group_purchase_PCL__c}";
+ // if(Group_purchase_PCLFlag == 1){
+ // Group_purchase_PCL = '闆嗛噰璇�';
+ // }else{
+ // Group_purchase_PCL = "{!eSignForm__c.OCM_man_province_cus__c}";
+ // }
+ console.log(this.GrouppurchasePCL,this.OCMManProvinceCus,'111111111')
+ var Group_purchase_PCL ;
+ // if(this.GrouppurchasePCL == 1){
+ // Group_purchase_PCL = '闆嗛噰璇�';
+ // }else{
+ Group_purchase_PCL = this.OCMManProvinceCus;
+ // }
+ //妫�绱CSM绠$悊鐪� 涓婄殑钀ヤ笟绠$悊閮ㄦ媴褰�
+ // var sql = "select id, Name, SalesManage__c from OCM_Management_Province__c where Name = "+"\'"+Group_purchase_PCL+"\'";
+ // var ocsmResult = sforce.connection.query(sql);
+ // var ocsm = ocsmResult.getArray("records");
+ // //钀ヤ笟绠$悊閮ㄦ媴褰搃d
+ // var salesManage;
+ // if (ocsm) {
+ // salesManage = ocsm[0].SalesManage__c;
+ // }
+ console.log(Group_purchase_PCL,this.profileId,'77777777777')
+ OcsmResult({GrouppurchasePCL:Group_purchase_PCL}).then(res=>{
+ console.log(res)
+ var salesManage;
+ salesManage = res[0].SalesManage__c;
+ //鐢靛瓙绛炬敹鍗昳d
+ var id = this.recordId
+ //new 涓�涓璞�
+ var eSignForm;
+ //鍖婚櫌鐘舵��
+ var status = this.HPSignUpStatus;
+ //閿�鍞笭閬�
+ var sales_Root_Formula = this.SalesRootFormula;
+ if (salesManage || this.profileId == '00e10000000Y3o5') {
+ UserInfo_Owner().then(res => {
+ var userId = '';
+ userId = res.id;
+ if (salesManage != userId && this.profileId != '00e10000000Y3o5' && this.profileId != '00e10000000s2cp') {
+ alert('鎮ㄥ彧鑳藉鎵硅惀涓氱鐞嗛儴鎷呭綋鏄嚜宸辩殑绛炬敹鍗曪紒');
+ return;
+ } else if (status != '鐢宠涓�') {
+ alert('鎮ㄥ彧鑳藉鎵圭敵璇蜂腑鐨勭鏀跺崟锛�')
+ return;
+ } else if (this.HPSignUpDate) {
+ alert('鍖婚櫌绛炬敹鏃ヤ负绌烘椂锛屼笉鍙互纭锛�');
+ return;
+ }else{
+ if(sales_Root_Formula == 'OCM鐩存帴璨╁2'){
+ window.open ('/apex/HPDirectSalesConfirmPage?id='+this.recordId, '鍖婚櫌纭',
+ 'height=340, width=600, top=200, left=400, toolbar=no, menubar=no, scrollbars=no, location=no, status=no');
+ }else{
+ window.open ('/apex/HPConfirmPage?id='+this.recordId, '鍖婚櫌纭',
+ 'height=340, width=600, top=200, left=400, toolbar=no, menubar=no, scrollbars=no, location=no, status=no');
+ }
+ }
+ })
+ }
+ })
+ }
+ updateRecordView() {
+ updateRecord({fields: { Id: this.recordId }});
+ }
+ showToast(msg,type) {
+ const event = new ShowToastEvent({
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ if(type == 'success'){
+ this.updateRecordView();
+ }
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+}
+
+// var foo = function() {
+// //褰撳墠鐢ㄦ埛鐧诲綍id
+// var userId = "{!CASESAFEID($User.Id)}";
+// //褰撳墠鐢ㄦ埛绠�妗d
+// var ProfileId = "{!$Profile.Id}";
+// // var RC_Manager = "{!eSignForm__c.RC_ManagerId__c }";
+// //鍏堝垽鏂槸鍚︿负闆嗛噰璇�
+// var Group_purchase_PCL ;
+// var Group_purchase_PCLFlag = "{!eSignForm__c.Group_purchase_PCL__c}";
+// if(Group_purchase_PCLFlag == 1){
+// Group_purchase_PCL = '闆嗛噰璇�';
+// }else{
+// Group_purchase_PCL = "{!eSignForm__c.OCM_man_province_cus__c}";
+// }
+// //妫�绱CSM绠$悊鐪� 涓婄殑钀ヤ笟绠$悊閮ㄦ媴褰�
+// var sql = "select id, Name, SalesManage__c from OCM_Management_Province__c where Name = "+"\'"+Group_purchase_PCL+"\'";
+// var ocsmResult = sforce.connection.query(sql);
+// var ocsm = ocsmResult.getArray("records");
+// //钀ヤ笟绠$悊閮ㄦ媴褰搃d
+// var salesManage;
+// if (ocsm) {
+// salesManage = ocsm[0].SalesManage__c;
+// }
+
+// //鐢靛瓙绛炬敹鍗昳d
+// var id = "{!eSignForm__c.Id}";
+// //new 涓�涓璞�
+// var eSignForm;
+// //鍖婚櫌鐘舵��
+// var status = "{!eSignForm__c.HPSignUpStatus__c}";
+// //閿�鍞笭閬�
+// var sales_Root_Formula = "{!eSignForm__c.Sales_Root_Formula__c}";
+
+// if (salesManage || ProfileId == '00e10000000Y3o5') {
+// if (salesManage != userId && ProfileId != '00e10000000Y3o5' && ProfileId != '00e10000000s2cp') {
+// alert('鎮ㄥ彧鑳藉鎵硅惀涓氱鐞嗛儴鎷呭綋鏄嚜宸辩殑绛炬敹鍗曪紒');
+// return;
+// } else if (status != '鐢宠涓�') {
+// alert('鎮ㄥ彧鑳藉鎵圭敵璇蜂腑鐨勭鏀跺崟锛�')
+// return;
+// } else if (!'{!eSignForm__c.HPSignUpDate__c}') {
+// alert('鍖婚櫌绛炬敹鏃ヤ负绌烘椂锛屼笉鍙互纭锛�');
+// return;
+// }else{
+// if(sales_Root_Formula == 'OCM鐩存帴璨╁2'){
+// window.open ('/apex/HPDirectSalesConfirmPage?id='+"{!eSignForm__c.Id}", '鍖婚櫌纭',
+// 'height=340, width=600, top=200, left=400, toolbar=no, menubar=no, scrollbars=no, location=no, status=no');
+// }else{
+// window.open ('/apex/HPConfirmPage?id='+"{!eSignForm__c.Id}", '鍖婚櫌纭',
+// 'height=340, width=600, top=200, left=400, toolbar=no, menubar=no, scrollbars=no, location=no, status=no');
+// }
+
+// }
+// }
+// }
+// foo();
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexESignAcceptanceHospital/lexESignAcceptanceHospital.js-meta.xml b/force-app/main/default/lwc/lexESignAcceptanceHospital/lexESignAcceptanceHospital.js-meta.xml
new file mode 100644
index 0000000..8b422cd
--- /dev/null
+++ b/force-app/main/default/lwc/lexESignAcceptanceHospital/lexESignAcceptanceHospital.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexEquipmentSetRental_Order">
+ <apiVersion>51.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__AppPage</target>
+ <target>lightning__RecordPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexESignFormAttachment/lexESignFormAttachment.html b/force-app/main/default/lwc/lexESignFormAttachment/lexESignFormAttachment.html
new file mode 100644
index 0000000..c444cc3
--- /dev/null
+++ b/force-app/main/default/lwc/lexESignFormAttachment/lexESignFormAttachment.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="Attachment" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexESignFormAttachment/lexESignFormAttachment.js b/force-app/main/default/lwc/lexESignFormAttachment/lexESignFormAttachment.js
new file mode 100644
index 0000000..611281c
--- /dev/null
+++ b/force-app/main/default/lwc/lexESignFormAttachment/lexESignFormAttachment.js
@@ -0,0 +1,48 @@
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+import { updateRecord } from 'lightning/uiRecordApi';
+
+export default class lexESignFormAttachment extends LightningElement {
+ @api recordId;
+ IsLoading = true;
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback () {
+ this.IsLoading = false;
+ this.Attachment();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+
+ Attachment(){
+ window.open( `/apex/eSignFormAttachment?parentId=${this.recordId}`);
+ }
+
+ // 寮圭獥
+ ShowToastEvent(msg, type) {
+ const event = new ShowToastEvent({
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ }
+ updateRecordView(recordId) {
+ updateRecord({fields: { Id: recordId }});
+ }
+}
+
+
+// var From= function(){
+// window.open( "/apex/eSignFormAttachment?parentId={!URLENCODE(eSignForm__c.Id)}");
+// }
+// From();
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexESignFormAttachment/lexESignFormAttachment.js-meta.xml b/force-app/main/default/lwc/lexESignFormAttachment/lexESignFormAttachment.js-meta.xml
new file mode 100644
index 0000000..2b7649d
--- /dev/null
+++ b/force-app/main/default/lwc/lexESignFormAttachment/lexESignFormAttachment.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexEquipmentRentalPicturePDF/lexEquipmentRentalPicturePDF.css b/force-app/main/default/lwc/lexEquipmentRentalPicturePDF/lexEquipmentRentalPicturePDF.css
new file mode 100644
index 0000000..635bc6c
--- /dev/null
+++ b/force-app/main/default/lwc/lexEquipmentRentalPicturePDF/lexEquipmentRentalPicturePDF.css
@@ -0,0 +1,22 @@
+.outerBorderCss{
+ border: 1px solid #D4D4D4;
+ border-radius : 5px;
+ border-top : 3px solid #565959;
+}
+.borderCss{
+ border: 1px solid #D4D4D4;
+ border-radius : 5px;
+ margin-bottom : 7px;
+ border-top : 3px solid #565959;
+}
+.headerDorderCss{
+ border-top: 1px solid #565959;
+ border-bottom: 1px solid #D4D4D4;
+ padding:3px;
+}
+.centerCss{
+ text-align: center;
+}
+.centerCss .left{
+ margin-left: 100px;
+}/* sample css file */
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexEquipmentRentalPicturePDF/lexEquipmentRentalPicturePDF.html b/force-app/main/default/lwc/lexEquipmentRentalPicturePDF/lexEquipmentRentalPicturePDF.html
new file mode 100644
index 0000000..49a10f7
--- /dev/null
+++ b/force-app/main/default/lwc/lexEquipmentRentalPicturePDF/lexEquipmentRentalPicturePDF.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="sisToOPDHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexEquipmentRentalPicturePDF/lexEquipmentRentalPicturePDF.js b/force-app/main/default/lwc/lexEquipmentRentalPicturePDF/lexEquipmentRentalPicturePDF.js
new file mode 100644
index 0000000..bd82704
--- /dev/null
+++ b/force-app/main/default/lwc/lexEquipmentRentalPicturePDF/lexEquipmentRentalPicturePDF.js
@@ -0,0 +1,41 @@
+import { LightningElement, track, wire, api } from 'lwc';
+import { CurrentPageReference,NavigationMixin } from 'lightning/navigation';
+import { CloseActionScreenEvent } from 'lightning/actions';
+import init from '@salesforce/apex/EquipmentRentalPicturePDFController.init';
+export default class lexEquipmentRentalPicturePDF extends LightningElement {
+ @api recordId;
+ IsLoading = true;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference){
+ if(currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if(urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback(){
+ console.log(this.recordId);
+ init({
+ recordId: this.recordId
+ }).then(result=>{
+ //console.log('result.ShipmentRequestedCnt===' + result.ShipmentRequestedCnt)
+ if( result.ShipmentRequestedCnt > 0){
+ console.log(result.pagelength);
+ for(var i =0; i<result.pagelength; i++){
+ window.open('/apex/FixtureRentalPicturePDF?raid='+ this.recordId +'&page=' + i);
+ }
+ }else{
+ alert('褰撳墠鐨勭敵璇峰崟涓病鏈夊凡鍑哄簱鎸囩ず鐨勯厤濂椼��');
+ }
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }).catch(err=>{
+ this.dispatchEvent(new CloseActionScreenEvent());
+ console.log(err);
+ })
+ }
+
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexEquipmentRentalPicturePDF/lexEquipmentRentalPicturePDF.js-meta.xml b/force-app/main/default/lwc/lexEquipmentRentalPicturePDF/lexEquipmentRentalPicturePDF.js-meta.xml
new file mode 100644
index 0000000..74849f3
--- /dev/null
+++ b/force-app/main/default/lwc/lexEquipmentRentalPicturePDF/lexEquipmentRentalPicturePDF.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexOCMSubmit">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexEquipmentSetRental_Order/lexEquipmentSetRental_Order.css b/force-app/main/default/lwc/lexEquipmentSetRental_Order/lexEquipmentSetRental_Order.css
new file mode 100644
index 0000000..2f47fa6
--- /dev/null
+++ b/force-app/main/default/lwc/lexEquipmentSetRental_Order/lexEquipmentSetRental_Order.css
@@ -0,0 +1,11 @@
+.lexEquipmentSetRentalHolder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+
+.container .uiContainerManager{
+ display : none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexEquipmentSetRental_Order/lexEquipmentSetRental_Order.html b/force-app/main/default/lwc/lexEquipmentSetRental_Order/lexEquipmentSetRental_Order.html
new file mode 100644
index 0000000..9c80ccf
--- /dev/null
+++ b/force-app/main/default/lwc/lexEquipmentSetRental_Order/lexEquipmentSetRental_Order.html
@@ -0,0 +1,5 @@
+<template>
+
+<div class="lexEquipmentSetRentalHolder" if:true={IsLoding}>
+<lightning-spinner alternative-text="Loading" size="medium"> </lightning-spinner> </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexEquipmentSetRental_Order/lexEquipmentSetRental_Order.js b/force-app/main/default/lwc/lexEquipmentSetRental_Order/lexEquipmentSetRental_Order.js
new file mode 100644
index 0000000..ff768cb
--- /dev/null
+++ b/force-app/main/default/lwc/lexEquipmentSetRental_Order/lexEquipmentSetRental_Order.js
@@ -0,0 +1,83 @@
+import { LightningElement,api, track, wire } from 'lwc';
+import init from '@salesforce/apex/EquipmentSetRentalController.init';
+import AssignBtn from '@salesforce/apex/RentalApplyWebService.AssignBtn';
+import {CurrentPageReference} from 'lightning/navigation';
+import { CloseActionScreenEvent } from 'lightning/actions';
+export default class lexEquipmentSetRental_Order extends LightningElement {
+
+ @api recordId;
+ IsLoading;
+ Rental_Apply__c;
+
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference){
+ if(currentPageReference){
+ console.log(currentPageReference);
+ console.log("杩涘叆鑾峰彇page鍙傛暟")
+ const IdValue=currentPageReference.state.recordId;
+ if(IdValue){
+ let str=`${IdValue}`;
+ this.recordId=str;
+ console.log("recordId="+str);
+ }
+ }
+ }
+
+
+ connectedCallback(){
+ init({recordId:this.recordId}).then(res=>{
+ if(res!=null){
+ this.IsLoading=false;
+ console.log("res");
+ console.log(res);
+ console.log("杩涘叆鍒濆鍖栧璞″叾浠栧睘鎬�");
+ this.Rental_Apply__c=res;
+ console.log(this.Rental_Apply__c);
+ this.distribution();
+ }
+ else{
+ var a="娌¤繘distribution";
+ console.log(a);
+ }
+ }).catch(error =>{
+ console.log("error");
+ console.log(error.message);
+ }).finally(()=>{
+
+ });
+ }
+
+
+
+ async distribution(){
+ var raid = this.Rental_Apply__c.Id;
+ var rtn = await AssignBtn(raid);
+ if(this.Rental_Apply__c.Status__c == '鍙栨秷' && this.Rental_Apply__c.Rental_Apply_Equipment_Set_Cnt__c != '0') {
+ window.open("/apex/EquipmentRentalApply?raid="+URLENCODE(this.Rental_Apply__c.Id));
+ } else if((this.Rental_Apply__c.demo_purpose2__c == '瀛︿細锛忓睍鍙�' ||
+ this.Rental_Apply__c.demo_purpose2__c == '璇鹃鐮旂┒' ||
+ this.Rental_Apply__c.demo_purpose2__c == '鍩硅涓績'
+ )
+ && this.Rental_Apply__c.Status__c == '鑽夋涓�') {
+ alert("涓嶈兘寮曞綋锛岃纭鐢宠鐨勭姸鎬�");
+ } else if(
+ (this.Rental_Apply__c.demo_purpose2__c == '璇曠敤锛堟棤璇环锛�' ||
+ this.Rental_Apply__c.demo_purpose2__c == '璇曠敤锛堟湁璇环锛�' ||
+ this.Rental_Apply__c.demo_purpose2__c == '鍔ㄧ墿瀹為獙' ||
+ this.Rental_Apply__c.demo_purpose2__c == '涓�鑸淮淇唬鐢�' ||
+ this.Rental_Apply__c.demo_purpose2__c == '淇濅慨鍚堝悓鐢ㄦ埛缁翠慨浠g敤' ||
+ this.Rental_Apply__c.demo_purpose2__c == '宸茶喘寰呰揣'
+ )
+ && this.Rental_Apply__c.Status__c != '鎵瑰噯瀹屼簡'
+ && this.Rental_Apply__c.Status__c != '寮曞綋瀹屼簡'
+ && this.Rental_Apply__c.Status__c != '鍑哄簱鎸囩ず瀹屼簡') {
+ alert("涓嶈兘寮曞綋锛岃纭鐢宠鐨勭姸鎬�");
+ } else if(rtn == 'Fin') {
+ window.open("/apex/EquipmentRentalApply?raid="+URLENCODE(this.Rental_Apply__c.Id));
+ } else{
+ alert(rtn);
+ }
+
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexEquipmentSetRental_Order/lexEquipmentSetRental_Order.js-meta.xml b/force-app/main/default/lwc/lexEquipmentSetRental_Order/lexEquipmentSetRental_Order.js-meta.xml
new file mode 100644
index 0000000..8b422cd
--- /dev/null
+++ b/force-app/main/default/lwc/lexEquipmentSetRental_Order/lexEquipmentSetRental_Order.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexEquipmentSetRental_Order">
+ <apiVersion>51.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__AppPage</target>
+ <target>lightning__RecordPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexFinLibrary/lexFinLibrary.css b/force-app/main/default/lwc/lexFinLibrary/lexFinLibrary.css
new file mode 100644
index 0000000..b606828
--- /dev/null
+++ b/force-app/main/default/lwc/lexFinLibrary/lexFinLibrary.css
@@ -0,0 +1,11 @@
+.lexFinlibraryHolder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+
+.container .uiContainerManager{
+ display : none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexFinLibrary/lexFinLibrary.html b/force-app/main/default/lwc/lexFinLibrary/lexFinLibrary.html
new file mode 100644
index 0000000..aab9e0c
--- /dev/null
+++ b/force-app/main/default/lwc/lexFinLibrary/lexFinLibrary.html
@@ -0,0 +1,4 @@
+<template>
+<div class="lexFinlibraryHolder" if:true={IsLoding}>
+<lightning-spinner alternative-text="Loading" size="medium"> </lightning-spinner> </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexFinLibrary/lexFinLibrary.js b/force-app/main/default/lwc/lexFinLibrary/lexFinLibrary.js
new file mode 100644
index 0000000..576fe17
--- /dev/null
+++ b/force-app/main/default/lwc/lexFinLibrary/lexFinLibrary.js
@@ -0,0 +1,57 @@
+import { LightningElement, track, wire,api } from 'lwc';
+import getBulletinBoard from '@salesforce/apex/FinLibraryButtonController.getBulletinBoard';
+import {CurrentPageReference} from 'lightning/navigation';
+import { CloseActionScreenEvent } from 'lightning/actions';
+import LightningAlert from 'lightning/alert';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+export default class lexFinLibrary extends LightningElement {
+
+ @api recordId;
+ IsLoading;
+ Bulletin_Board__c;
+
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference){
+ if(currentPageReference){
+ console.log(currentPageReference);
+ console.log("杩涘叆鑾峰彇page鍙傛暟")
+ const IdValue=currentPageReference.state.recordId;
+ if(IdValue){
+ let str=`${IdValue}`;
+ this.recordId=str;
+ console.log("recordId="+str);
+ }
+ }
+ }
+
+
+ connectedCallback(){
+ getBulletinBoard({recordId:this.recordId}).then(res=>{
+ if(res!=null){
+ this.IsLoading=false;
+ console.log("res");
+ console.log(res);
+ console.log("杩涘叆鍒濆鍖栧璞″叾浠栧睘鎬�");
+ this.Bulletin_Board__c=res;
+ console.log(this.Bulletin_Board__c);
+ this.FinLibrary();
+ }
+ else{
+ var a="娌¤繘鏂规硶";
+ console.log(a);
+ }
+ }).catch(error =>{
+ console.log("error");
+ console.log(error.message);
+ }).finally(()=>{
+
+ });
+ }
+
+ async FinLibrary(){
+ this.dispatchEvent(new CloseActionScreenEvent());
+ window.open(this.Bulletin_Board__c.iPad_Finlibrary__c, 'FinLibrary', '_top');
+ }
+
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexFinLibrary/lexFinLibrary.js-meta.xml b/force-app/main/default/lwc/lexFinLibrary/lexFinLibrary.js-meta.xml
new file mode 100644
index 0000000..79fced5
--- /dev/null
+++ b/force-app/main/default/lwc/lexFinLibrary/lexFinLibrary.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexFinLibrary">
+ <apiVersion>51.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__AppPage</target>
+ <target>lightning__RecordPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexFinLibrary2/lexFinLibrary2.css b/force-app/main/default/lwc/lexFinLibrary2/lexFinLibrary2.css
new file mode 100644
index 0000000..bb273c4
--- /dev/null
+++ b/force-app/main/default/lwc/lexFinLibrary2/lexFinLibrary2.css
@@ -0,0 +1,11 @@
+.lexFinlibraryHolder2{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+
+.container .uiContainerManager{
+ display : none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexFinLibrary2/lexFinLibrary2.html b/force-app/main/default/lwc/lexFinLibrary2/lexFinLibrary2.html
new file mode 100644
index 0000000..81373b2
--- /dev/null
+++ b/force-app/main/default/lwc/lexFinLibrary2/lexFinLibrary2.html
@@ -0,0 +1,4 @@
+<template>
+<div class="lexFinlibraryHolder2" if:true={IsLoding}>
+<lightning-spinner alternative-text="Loading" size="medium"> </lightning-spinner> </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexFinLibrary2/lexFinLibrary2.js b/force-app/main/default/lwc/lexFinLibrary2/lexFinLibrary2.js
new file mode 100644
index 0000000..3db3717
--- /dev/null
+++ b/force-app/main/default/lwc/lexFinLibrary2/lexFinLibrary2.js
@@ -0,0 +1,62 @@
+import { LightningElement, track, wire,api } from 'lwc';
+import getBulletinBoard from '@salesforce/apex/FinLibraryButtonController2.getBulletinBoard';
+import {CurrentPageReference} from 'lightning/navigation';
+import { CloseActionScreenEvent } from 'lightning/actions';
+export default class lexFinLibrary2 extends LightningElement {
+
+
+ @api recordId;
+ IsLoading;
+ Bulletin_Board__c;
+
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference){
+ if(currentPageReference){
+ console.log(currentPageReference);
+ console.log("杩涘叆鑾峰彇page鍙傛暟")
+ const IdValue=currentPageReference.state.recordId;
+ if(IdValue){
+ let str=`${IdValue}`;
+ this.recordId=str;
+ console.log("recordId="+str);
+ }
+ }
+ }
+
+
+
+
+ connectedCallback(){
+ getBulletinBoard({recordId:this.recordId}).then(res=>{
+ if(res!=null){
+ this.IsLoading=false;
+ console.log("res");
+ console.log(res);
+ console.log("杩涘叆鍒濆鍖栧璞″叾浠栧睘鎬�");
+ this.Bulletin_Board__c=res;
+ console.log(this.Bulletin_Board__c);
+ this.FinLibrary2();
+ }
+ else{
+ var a="娌¤繘鏂规硶";
+ console.log(a);
+ }
+ }).catch(error =>{
+ console.log("error");
+ console.log(error.message);
+ }).finally(()=>{
+
+ });
+ }
+
+
+ FinLibrary2(){
+
+
+ window.open(this.Bulletin_Board__c.iPad_Finlibrary_2__c, 'FinLibrary', '_top');
+ this.dispatchEvent(new CloseActionScreenEvent());
+
+ }
+
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexFinLibrary2/lexFinLibrary2.js-meta.xml b/force-app/main/default/lwc/lexFinLibrary2/lexFinLibrary2.js-meta.xml
new file mode 100644
index 0000000..f128d90
--- /dev/null
+++ b/force-app/main/default/lwc/lexFinLibrary2/lexFinLibrary2.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexFinLibrary2">
+ <apiVersion>51.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__AppPage</target>
+ <target>lightning__RecordPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexFinLibrary3/lexFinLibrary3.css b/force-app/main/default/lwc/lexFinLibrary3/lexFinLibrary3.css
new file mode 100644
index 0000000..69ceae8
--- /dev/null
+++ b/force-app/main/default/lwc/lexFinLibrary3/lexFinLibrary3.css
@@ -0,0 +1,11 @@
+.lexFinlibraryHolder3{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+
+.container .uiContainerManager{
+ display : none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexFinLibrary3/lexFinLibrary3.html b/force-app/main/default/lwc/lexFinLibrary3/lexFinLibrary3.html
new file mode 100644
index 0000000..2e542b1
--- /dev/null
+++ b/force-app/main/default/lwc/lexFinLibrary3/lexFinLibrary3.html
@@ -0,0 +1,4 @@
+<template>
+<div class="lexFinlibraryHolder3" if:true={IsLoding}>
+<lightning-spinner alternative-text="Loading" size="medium"> </lightning-spinner> </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexFinLibrary3/lexFinLibrary3.js b/force-app/main/default/lwc/lexFinLibrary3/lexFinLibrary3.js
new file mode 100644
index 0000000..21eca75
--- /dev/null
+++ b/force-app/main/default/lwc/lexFinLibrary3/lexFinLibrary3.js
@@ -0,0 +1,58 @@
+import { LightningElement, track, wire,api } from 'lwc';
+import getBulletinBoard from '@salesforce/apex/FinLibraryButtonController3.getBulletinBoard';
+import {CurrentPageReference} from 'lightning/navigation';
+import { CloseActionScreenEvent } from 'lightning/actions';
+export default class lexFinLibrary3 extends LightningElement {
+
+ @api recordId;
+ IsLoading;
+ Bulletin_Board__c;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference){
+ if(currentPageReference){
+ console.log(currentPageReference);
+ console.log("杩涘叆鑾峰彇page鍙傛暟")
+ const IdValue=currentPageReference.state.recordId;
+ if(IdValue){
+ let str=`${IdValue}`;
+ this.recordId=str;
+ console.log("recordId="+str);
+ }
+ }
+ }
+
+
+
+
+ connectedCallback(){
+ getBulletinBoard({recordId:this.recordId}).then(res=>{
+ if(res!=null){
+ this.IsLoading=false;
+ console.log("res");
+ console.log(res);
+ console.log("杩涘叆鍒濆鍖栧璞″叾浠栧睘鎬�");
+ this.Bulletin_Board__c=res;
+ console.log(this.Bulletin_Board__c);
+ this.FinLibrary3();
+ }
+ else{
+ var a="娌¤繘鏂规硶";
+ console.log(a);
+ }
+ }).catch(error =>{
+ console.log("error");
+ console.log(error.message);
+ }).finally(()=>{
+
+ });
+ }
+
+
+ FinLibrary3(){
+ window.open(this.Bulletin_Board__c.iPad_Finlibrary_3__c, 'FinLibrary', '_top');
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+
+
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexFinLibrary3/lexFinLibrary3.js-meta.xml b/force-app/main/default/lwc/lexFinLibrary3/lexFinLibrary3.js-meta.xml
new file mode 100644
index 0000000..5323374
--- /dev/null
+++ b/force-app/main/default/lwc/lexFinLibrary3/lexFinLibrary3.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexFinLibrary3">
+ <apiVersion>51.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__AppPage</target>
+ <target>lightning__RecordPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexInputSolution/lexInputSolution.css b/force-app/main/default/lwc/lexInputSolution/lexInputSolution.css
new file mode 100644
index 0000000..8d634cd
--- /dev/null
+++ b/force-app/main/default/lwc/lexInputSolution/lexInputSolution.css
@@ -0,0 +1,10 @@
+.createEmailHolder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+.container .uiContainerManager{
+ display: none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexInputSolution/lexInputSolution.html b/force-app/main/default/lwc/lexInputSolution/lexInputSolution.html
new file mode 100644
index 0000000..61d9b05
--- /dev/null
+++ b/force-app/main/default/lwc/lexInputSolution/lexInputSolution.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="createEmailHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexInputSolution/lexInputSolution.js b/force-app/main/default/lwc/lexInputSolution/lexInputSolution.js
new file mode 100644
index 0000000..59c58d1
--- /dev/null
+++ b/force-app/main/default/lwc/lexInputSolution/lexInputSolution.js
@@ -0,0 +1,49 @@
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { NavigationMixin } from 'lightning/navigation';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+import init from '@salesforce/apex/CaseController.initForlexInputSolutionButton';
+import UserInfo_Owner from '@salesforce/apex/TaskFeedbackController.UserInfo_Owner';
+import { updateRecord } from 'lightning/uiRecordApi';
+
+export default class lexInputSolution extends LightningElement {
+ @api recordId;
+ IsLoading = true;
+ inquirydetail;
+ answerdetailcontent;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback () {
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ this.IsLoading = false;
+ this.inquirydetail = result.inquirydetail;
+ this.answerdetailcontent = result.answerdetailcontent;
+ var url = "/501/e?retURL="+this.recordId+
+ "&SolutionName="+this.inquirydetail+
+ "&00N10000003MXPAEA4="+this.answerdetailcontent;
+ window.open(url);
+ }).catch(error => {
+ console.log('error='+error);
+ }).finally(() => {
+
+ });
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexInputSolution/lexInputSolution.js-meta.xml b/force-app/main/default/lwc/lexInputSolution/lexInputSolution.js-meta.xml
new file mode 100644
index 0000000..573ce4c
--- /dev/null
+++ b/force-app/main/default/lwc/lexInputSolution/lexInputSolution.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexInputSolution">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexInsPageBtn/lexInsPageBtn.html b/force-app/main/default/lwc/lexInsPageBtn/lexInsPageBtn.html
new file mode 100644
index 0000000..d044dbb
--- /dev/null
+++ b/force-app/main/default/lwc/lexInsPageBtn/lexInsPageBtn.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="exampleHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexInsPageBtn/lexInsPageBtn.js b/force-app/main/default/lwc/lexInsPageBtn/lexInsPageBtn.js
new file mode 100644
index 0000000..e0c1dbd
--- /dev/null
+++ b/force-app/main/default/lwc/lexInsPageBtn/lexInsPageBtn.js
@@ -0,0 +1,62 @@
+import {
+ LightningElement,
+ wire,
+ api
+} from 'lwc';
+import {
+ CurrentPageReference
+} from "lightning/navigation";
+import {
+ CloseActionScreenEvent
+} from 'lightning/actions';
+import init from '@salesforce/apex/otherButtonSpotInspectionReportCtl.init';
+
+export default class LexInsPageBtn extends LightningElement {
+ @api recordId;
+ str;
+ IsLoading = true;
+ Id;
+ RecordTypeId;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback() {
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result);
+ if (result != null) {
+ this.IsLoading = false;
+ this.Id = result.Id;
+ this.RecordTypeId = result.RecordTypeId;
+
+ this.insPageBtn();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ }).catch(error => {
+ console.log(error);
+ }).finally(() => {
+
+ });
+ }
+
+ // 鎶ュ憡涔︽槑缁嗙紪杈�
+ insPageBtn() {
+ var url;
+ if (this.RecordTypeId == '01210000000aLii') {
+ url = '/apex/OFSInsReportLayoutForVm';
+ } else {
+ url = '/apex/OFSInsReportLayout';
+ }
+ window.open(url += '?id=' + this.Id)
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexInsPageBtn/lexInsPageBtn.js-meta.xml b/force-app/main/default/lwc/lexInsPageBtn/lexInsPageBtn.js-meta.xml
new file mode 100644
index 0000000..3392981
--- /dev/null
+++ b/force-app/main/default/lwc/lexInsPageBtn/lexInsPageBtn.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexInventoryCount/lexInventoryCount.html b/force-app/main/default/lwc/lexInventoryCount/lexInventoryCount.html
new file mode 100644
index 0000000..822bd2c
--- /dev/null
+++ b/force-app/main/default/lwc/lexInventoryCount/lexInventoryCount.html
@@ -0,0 +1,156 @@
+<template>
+ <template if:true={showSpinner}>
+ <lightning-spinner size="medium" variant="brand"></lightning-spinner>
+ </template>
+ <template if:true={showcount}>
+ <div style="border: 1px solid #D4D4D4;border-radius:5px;">
+ <div style="border-top: 3px solid #51606E;;border-bottom: 1px solid #D4D4D4;padding:3px;">
+ <div>
+ <p style="font-size: 19px;float:left"><strong>搴撳瓨鐩樼偣</strong></p>
+ </div>
+ <div style="margin-left:400px;">
+ <lightning-button label="鐩樼偣纭" title="鐩樼偣纭" onclick={saveConfirm}></lightning-button></td>
+ </div>
+ </div>
+
+ <div style="padding:10px;">
+ <div style="border: 1px solid #D4D4D4;border-radius:5px;margin-bottom:7px;">
+ <div style="border-top: 3px solid #51606E;border-bottom: 1px solid #D4D4D4;padding:3px;">
+ <table>
+ <colgroup>
+ <col width="160px" />
+ <col width="100px" />
+ <col width="10px" />
+ <col width="70px" />
+ <col width="100px" />
+ <col width="10px" />
+ <col width="90px" />
+ <col width="100px" />
+ <col width="10px" />
+ <col width="85px" />
+ <col width="100px" />
+ <col width="10px" />
+ <col width="70px" />
+ <col width="100px" />
+ </colgroup>
+ <tbody>
+ <tr>
+ <td></td>
+ <td align="right">Barcode</td>
+ <td style="width:600px"><lightning-textarea name="Barcode" label=""
+ onchange={handleChange}></lightning-textarea></td>
+ <td align="right"></td>
+ <td></td>
+ <td><lightning-button label="Barcode" title="Barcode褰曞叆" onclick={barcodeEntrys}
+ style="width: 150px;"></lightning-button>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </div>
+
+ <div style="border: 1px solid #D4D4D4;border-radius:5px;margin-bottom:7px;">
+ <div style="border-top: 3px solid #51606E;border-bottom: 1px solid #D4D4D4;padding:3px;">
+ <p style="font-size: 16px;"><strong>鍦ㄥ簱鍟嗗搧搴撳瓨涓�瑙�</strong></p>
+ </div>
+ <div style="padding:10px;">
+
+ <div style="height: 300px;">
+ <template if:true={showTable}>
+
+ <c-lex-custom-lightning-datatable key-field="ProdId" data={data} columns={columns}
+ ondiffreasons={diffreasons} onrowselection={getSelectedRows}
+ selected-rows={selectedRows}>
+ </c-lex-custom-lightning-datatable>
+ </template>
+ <!-- 鍔犺浇妗� -->
+
+ <!-- <div if:true={casesSpinner} class="slds-spinner_inline spinner-padding"
+ style="margin-top:10px;">
+ <lightning-spinner variant="brand" alternative-text="Loading Cases" size="medium">
+ </lightning-spinner>
+ </div> -->
+
+ </div>
+
+ </div>
+ </div>
+ </div>
+
+
+ <div style="border: 1px solid #D4D4D4;border-radius:5px;margin-bottom:7px;margin-top:50px">
+ <div style="border-top: 3px solid #51606E;border-bottom: 1px solid #D4D4D4;padding:3px;">
+ <table>
+ <tr>
+ <td>
+ <p style="font-size: 16px;"><strong>璋冩暣鏄庣粏</strong></p>
+ </td>
+ <template if:true={showbutton}>
+ <td align="center"> <lightning-button label="涓嬭浇鏈鐩樼偣搴撳瓨鍙樺寲鏄庣粏" title="涓嬭浇鏈鐩樼偣搴撳瓨鍙樺寲鏄庣粏"
+ onclick={exportData} style="width: 150px;"></lightning-button></td>
+ </template>
+ </tr>
+ </table>
+ </div>
+ <template if:true={showTable}>
+ <div style="padding:10px;">
+
+ <c-lwc-datatable-utility records={codPageRecords} total-records={codPageRecords.length}
+ columns={column} key-field="Id" show-search-box="true" hidecheckboxcolumn={hidecheckbox}
+ max-row-selection={codPageRecords.length} onpaginatorchange={handlePaginatorChange}>
+ </c-lwc-datatable-utility>
+ </div>
+ </template>
+ </div>
+ </div>
+ </template>
+
+
+ <template if:true={EditAble}>
+ <div style="border: 1px solid #D4D4D4;border-radius:5px;">
+ <div style="border-top: 3px solid #51606E;;border-bottom: 1px solid #D4D4D4;padding:3px;">
+ <div style="border: 1px solid #D4D4D4;border-radius:5px;">
+ <div style="border-top: 3px solid #51606E;;border-bottom: 1px solid #D4D4D4;padding:6px;">
+ <p style="font-size: 19px;"><strong>鐩樼偣鎯呭喌涓�瑙�</strong></p>
+
+ </div>
+ <div class="acc-container">
+ <lightning-record-edit-form object-api-name="Consumable_order__c" record-id={conId}>
+ <lightning-layout multiple-rows="true">
+ <!-- <template if:true={isSummonsFlag}> -->
+ <lightning-layout-item class="hehe-layoutItem" size="4">
+ <lightning-output-field field-name="Name"></lightning-output-field>
+ </lightning-layout-item>
+ <lightning-layout-item class="hehe-layoutItem" size="4">
+ <lightning-output-field field-name="Inventory_date__c"></lightning-output-field>
+ </lightning-layout-item>
+ <lightning-layout-item class="hehe-layoutItem" size="4">
+ </lightning-layout-item>
+ <!-- </template> -->
+ </lightning-layout>
+ </lightning-record-edit-form>
+ </div>
+ </div>
+ </div>
+
+ <lightning-accordion allow-multiple-sections-open class="slds-m-around_medium"
+ active-section-name={activeSections}>
+ <lightning-accordion-section name="dataExpand" label="鐩樼偣鏄庣粏">
+ <lightning-datatable key-field="id" data={detailData}
+ columns={dcolumns} hide-checkbox-column>
+ </lightning-datatable>
+
+ </lightning-accordion-section>
+ </lightning-accordion>
+ <lightning-accordion allow-multiple-sections-open class="slds-m-around_medium"
+ active-section-name={activeSections}>
+ <lightning-accordion-section name="dataExpand" label="鍦ㄥ簱璋冩暣鏄庣粏">
+ <lightning-datatable key-field="id" data={adjustdata}
+ columns={stockadjustcolumns} hide-checkbox-column>
+ </lightning-datatable>
+ </lightning-accordion-section>
+ </lightning-accordion>
+ </div>
+ </template>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexInventoryCount/lexInventoryCount.js b/force-app/main/default/lwc/lexInventoryCount/lexInventoryCount.js
new file mode 100644
index 0000000..eeba966
--- /dev/null
+++ b/force-app/main/default/lwc/lexInventoryCount/lexInventoryCount.js
@@ -0,0 +1,555 @@
+import { LightningElement, wire, api, track } from "lwc";
+import oninit from "@salesforce/apex/LexInventoryController.init";
+import barcodeEntry from "@salesforce/apex/LexInventoryController.searchConsumableorderdetails";
+// import saveConfirm from '@salesforce/apex/LexInventoryController.saveConfirm';
+import save from "@salesforce/apex/LexInventoryController.save";
+import datainit from "@salesforce/apex/LexInventoryListController.init";
+import { ShowToastEvent } from "lightning/platformShowToastEvent";
+import { NavigationMixin } from "lightning/navigation";
+
+//搴撳瓨鐩樼偣涓婚〉闈㈡暟鎹�
+const columns = [
+ {
+ label: "鏄惁鐩樼偣",
+ fieldName: "iscount",
+ hideDefaultActions: true,
+ cellAttributes: { alignment: "left" },
+ },
+ {
+ label: "娑堣�楀搧鍚嶇О",
+ fieldName: "Name__c",
+ hideDefaultActions: true,
+ initialWidth: 250,
+ cellAttributes: { alignment: "left" },
+ },
+ {
+ label: "瑙勬牸",
+ fieldName: "Packing_list_manual__c",
+ hideDefaultActions: true,
+ },
+ {
+ label: "鍗曚綅",
+ fieldName: "boxPiece",
+ hideDefaultActions: true,
+ },
+ {
+ label: "鏈夋晥鏈熷唴搴撳瓨",
+ fieldName: "limitCount",
+ hideDefaultActions: true,
+ },
+
+ {
+ label: "杩囨湡搴撳瓨",
+ fieldName: "overlimitCount",
+ hideDefaultActions: true,
+ initialWidth: 100,
+ },
+ {
+ label: "鐩樼偣",
+ fieldName: "Pandian",
+ hideDefaultActions: true,
+ initialWidth: 100,
+ },
+ {
+ label: "涓㈠け",
+ fieldName: "Diff",
+ hideDefaultActions: true,
+ initialWidth: 100,
+ },
+ {
+ label: "瀵诲洖 ",
+ fieldName: "refind",
+ hideDefaultActions: true,
+ initialWidth: 150,
+ },
+ {
+ label: "宸紓鍘熷洜",
+ // fieldName: "DiffReason",
+ hideDefaultActions: true,
+ type: "customDiffReason",
+ typeAttributes: {
+ DiffReason: { fieldName: "DiffReason" },
+ ProdId: { fieldName: "ProdId" },
+ },
+ },
+];
+
+//璋冩暣鏄庣粏
+const column = [
+ {
+ label: "娑堣�楀搧鍚嶇О",
+ fieldName: "Name__c",
+ hideDefaultActions: true,
+ cellAttributes: { alignment: "left" },
+ },
+ {
+ label: "鍗曚綅",
+ fieldName: "Box_Piece__c",
+ hideDefaultActions: true,
+ },
+ {
+ label: "barcode",
+ fieldName: "Bar_Code__c",
+ hideDefaultActions: true,
+ initialWidth: 150,
+ },
+ {
+ label: "璋冩暣鍘熷洜",
+ fieldName: "DiffReason",
+ hideDefaultActions: true,
+ },
+];
+//鐩樼偣鏄庣粏
+const dcolumns = [
+ {
+ label: "娑堣�楀搧鍚嶇О",
+ fieldName: "Name__c",
+ hideDefaultActions: true,
+ cellAttributes: { alignment: "left" },
+ },
+ {
+ label: "搴撳瓨",
+ fieldName: "Count_Sum__c",
+ hideDefaultActions: true,
+ },
+ {
+ label: "鐩樼偣",
+ fieldName: "inventory_sum__c",
+ hideDefaultActions: true,
+ initialWidth: 150,
+ },
+ {
+ label: "涓㈠け",
+ fieldName: "Diff__c",
+ hideDefaultActions: true,
+ },
+ {
+ label: "瀵诲洖",
+ fieldName: "Product_Refind__c",
+ hideDefaultActions: true,
+ },
+ {
+ label: "宸紓鍘熷洜",
+ fieldName: "Lose_reason__c",
+ hideDefaultActions: true,
+ },
+];
+
+//鍦ㄥ簱璋冩暣鏄庣粏
+const stockadjustcolumns = [
+ {
+ label: "娑堣�楀搧鍚嶇О",
+ fieldName: "Name__c",
+ cellAttributes: { alignment: "left" },
+ },
+ {
+ label: "浜у搧鍨嬪彿",
+ fieldName: "Asset_Model_No__c",
+ hideDefaultActions: true,
+ },
+ {
+ label: "宸紓鍘熷洜",
+ fieldName: "Lose_reason__c",
+ hideDefaultActions: true,
+ initialWidth: 150,
+ },
+ {
+ label: "鏄惁涓㈠け",
+ type: "boolean",
+ fieldName: "Lose_Flag__c",
+ hideDefaultActions: true,
+ },
+];
+
+export default class LexInventoryCount extends NavigationMixin(
+ LightningElement
+) {
+ columns = columns;
+ column = column;
+ stockadjustcolumns = stockadjustcolumns;
+ dcolumns = dcolumns;
+ @track data = [];
+ @track codPageRecords = [];
+ @track accountName;
+ @track agencyProType;
+ @track userWorkLocation;
+ @track accountid
+ @track pandiandetailsMap
+ @track reSet
+
+ @track showTable = false;
+ @track showbutton = false;
+ @track barcode = "";
+ @track ConsumableorderdetailsRecordsview = [];
+ @track consumableorderdetailsRecords = [];
+ @track showcount = true;
+
+ @track iSinventory = false
+ @track numberDetail;
+ @track hidecheckbox = true;
+
+
+ //鍔犺浇妗�
+ // @track casesSpinner = true;
+ @track showSpinner = true;
+
+ //row
+ @track selectedRows = [];
+ //inventoryList
+ @track isSummonsFlag;
+ //灞曞紑鏍�
+ activeSections = ["dataExpand"];
+ columnHeader = ["娑堣�楀搧鍚嶇О", "鍗曚綅", "barCode", "璋冩暣鍘熷洜"];
+ //纭涓�瑙�
+ @track eSetId = "";
+ @track EditAble = false;
+ @track selectedData;
+ @track conId;
+ @track detailData = [];
+ @track adjustdata = [];
+
+ //鑾峰彇閾炬帴鍙傛暟
+ 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("===>鍒濆鍖�");
+ this.showSpinner = true;
+ //鑾峰彇ESetid
+ this.eSetId = this.getQueryString("eSetId");
+ this.eSetId = this.eSetId == null ? "" : this.eSetId;
+ console.log(" this.eSetId" + this.eSetId);
+ if (this.eSetId == "") {
+ this.EditAble = false;
+ } else {
+ this.inits();
+ this.showcount = false;
+ this.EditAble = true;
+ }
+
+ oninit()
+ .then((result) => {
+ console.log("1112" + JSON.stringify(result));
+ result = JSON.parse(JSON.stringify(result));
+ console.log("result.status = " + result.status);
+ console.log(
+ " ConsumableorderdetailsRecordsview= " +
+ result.entity.ConsumableorderdetailsRecordsview
+ );
+ this.ConsumableorderdetailsRecordsview = JSON.parse(
+ result.entity.ConsumableorderdetailsRecordsview
+ );
+ this.consumableorderdetailsRecords =
+ result.entity.consumableorderdetailsRecords;
+ console.log(
+ " consumableorderdetailsRecords= " +
+ result.entity.consumableorderdetailsRecords
+ );
+
+ console.log("浼犲弬绫诲瀷", typeof this.consumableorderdetailsRecords);
+ if (result.status == "Success") {
+ console.log(
+ "this.ConsumableorderdetailsRecordsview[0] = " +
+ JSON.stringify(this.ConsumableorderdetailsRecordsview[0])
+ );
+ console.log(
+ "this.ConsumableorderdetailsRecordsview[0].length = " +
+ this.ConsumableorderdetailsRecordsview[0].length
+ );
+
+ // let cloneData = [];
+ // for (let i in this.ConsumableorderdetailsRecordsview[0]) {
+ // cloneData.push(JSON.parse(this.ConsumableorderdetailsRecordsview[0][i]));
+ // }
+ // console.log('cloneData = ' + typeof cloneData);
+ // console.log('cloneData = ' + cloneData);
+ // this.data = cloneData;
+ this.data = [];
+ this.data = this.ConsumableorderdetailsRecordsview[0];
+ console.log("this.data ==>" + JSON.stringify(this.data));
+ for (let i in this.data) {
+ this.data[i]["Name__c"] = this.data[i].Prod.Name__c;
+ this.data[i]["Packing_list_manual__c"] =
+ this.data[i].Prod.Packing_list_manual__c;
+ }
+ this.accountName = result.entity.accountName;
+ this.agencyProType = result.entity.agencyProType;
+ this.userWorkLocation = result.entity.userWorkLocation;
+ this.showSpinner = false;
+ this.accountid = result.entity.accountid;
+ // this.casesSpinner = false;
+ this.showTable = true;
+ } else {
+ console.log("Error:" + result.errorMsg);
+ const evt = new ShowToastEvent({
+ title: "瑙f瀽澶辫触",
+ message: result.errorMsg,
+ variant: "error",
+ });
+ this.dispatchEvent(evt);
+ }
+ })
+ .catch((error) => {
+ console.log("error = " + JSON.stringify(error));
+ });
+ //榛樿灞曞紑鏍�
+ this.activeSections = ["dataExpand"];
+ this.showTable = false;
+ this.showbutton = false;
+ //init
+ }
+ //褰曞叆barcode
+
+ barcodeEntrys() {
+ this.showTable = false;
+ this.showbutton = false;
+ this.showSpinner = true;
+ console.log("杩涘叆褰曞叆");
+ console.log(
+ "this.consumableorderdetailsRecords===>" +
+ this.consumableorderdetailsRecords
+ );
+
+ barcodeEntry({
+ accountName: this.accountName,
+ agencyProType: this.agencyProType,
+ userWorkLocation: this.userWorkLocation,
+ barcode: this.barcode,
+ consumableorderdetailsRecordsLWC: this.consumableorderdetailsRecords,
+ })
+ .then((result) => {
+ result = JSON.parse(JSON.stringify(result));
+ console.log("result ===>" + JSON.stringify(result));
+
+ console.log("1111");
+ if (result.status == "Sucess") {
+ this.codPageRecords = JSON.parse(result.entity.codPageRecords);
+ for (var i in this.codPageRecords) {
+ this.codPageRecords[i]["Name__c"] = this.codPageRecords[i].Prod.Name__c;
+ this.codPageRecords[i]["Box_Piece__c"] = this.codPageRecords[i].orderdetails2.Box_Piece__c;
+ this.codPageRecords[i]["Bar_Code__c"] = this.codPageRecords[i].orderdetails2.Bar_Code__c;
+ }
+ this.data = JSON.parse(result.entity.consumableorderdetailsRecords);
+ for (var i in this.data) {
+ this.data[i]["Name__c"] = this.data[i].Prod.Name__c;
+ this.data[i]["Packing_list_manual__c"] = this.data[i].Prod.Packing_list_manual__c;
+ }
+ for (var i in this.data) {
+ if (this.data[i]["check"]) {
+ this.selectedRows.push(this.data[i].ProdId);
+ console.log("selectedRows:" + this.selectedRows);
+ }
+ }
+ this.iSinventory = result.entity.iSinventory;
+ this.pandiandetailsMap = result.entity.pandiandetailsMap;
+ this.reSet = result.entity.reSet;
+ console.log("iSinventory:" + this.iSinventory);
+ this.showTable = true;
+ this.showbutton = true;
+ this.showSpinner = false;
+ console.log('reSet' + this.reSet);
+ console.log('pandiandetailsMap' + this.pandiandetailsMap);
+
+
+ console.log(
+ "this.codPageRecords=11111 " + result.entity.codPageRecords
+ );
+ console.log("result褰曞叆= " + JSON.stringify(result));
+ console.log(
+ "result涓婚〉鏁版嵁= " + result.entity.consumableorderdetailsRecords
+ );
+ } else {
+ console.log('Error:' + result.errorMsg);
+ const evt = new ShowToastEvent({
+ title: '',
+ message: result.msg,
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+ this.showSpinner = false;
+ this.showTable = true;
+
+ }
+ })
+ .catch((error) => {
+ console.log("error = " + JSON.stringify(error));
+ });
+ }
+ //鑾峰彇褰撳墠杈撳叆鍊�
+ handleChange(event) {
+ let value = event.detail.value;
+ console.log("value" + value);
+ this.barcode = value;
+ }
+
+ 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].ProdId == selectedRows[j].ProdId) {
+ this.data[i]["check"] = true;
+ }
+ }
+ }
+ }
+
+ //瀵煎嚭涓篶sv
+ exportData() {
+ console.log("瀵煎嚭");
+ // Prepare a html table
+ let doc = "<table>";
+ // Add styles for the table
+ doc += "<style>";
+ doc += "table, th, td {";
+ doc += " border: 1px solid black;";
+ doc += " border-collapse: collapse;";
+ doc += "}";
+ doc += "</style>";
+ // Add all the Table Headers
+ doc += "<tr>";
+ this.columnHeader.forEach((element) => {
+ doc += "<th>" + element + "</th>";
+ });
+ doc += "</tr>";
+ // Add the data rows
+ this.codPageRecords.forEach((record) => {
+ doc += "<tr>";
+ doc += "<th>" + record.Name__c + "</th>";
+ doc += "<th>" + record.Box_Piece__c + "</th>";
+ doc += "<th>" + record.Bar_Code__c + "</th>";
+ doc += "<th>" + record.DiffReason + "</th>";
+ doc += "</tr>";
+ });
+ doc += "</table>";
+ var element = "data:application/vnd.ms-excel," + encodeURIComponent(doc);
+ let downloadElement = document.createElement("a");
+ downloadElement.href = element;
+ downloadElement.target = "_self";
+ // use .csv as extension on below line if you want to export data as csv
+ downloadElement.download = "搴撳瓨鍙樺寲鏄庣粏.xls";
+ document.body.appendChild(downloadElement);
+ downloadElement.click();
+ }
+
+ //鑷畾涔塪ataType
+
+ diffreasons(event) {
+ const numberDetail = event.detail;
+ // this.numberDetail = numberDetail;
+ console.log("numberDetail" + JSON.stringify(numberDetail));
+ for (var i in this.data) {
+ if (this.data[i]["ProId"] == numberDetail.data.ProId) {
+ this.data[i]["DiffReason"] = numberDetail.data.DiffReason;
+ }
+ }
+ console.log(" this.data==>" + JSON.stringify(this.data));
+ }
+
+ saveConfirm() {
+ console.log("杩涘叆鐩樼偣纭");
+ console.log('reSet' + this.reSet);
+ console.log('pandiandetailsMap' + this.pandiandetailsMap);
+ var el = this.template.querySelector("c-lex-custom-lightning-datatable");
+ var selected = el.getSelectedRows();
+ this.selectedData = selected;
+ console.log("閫変腑鏁版嵁" + JSON.stringify(this.selectedData));
+ save({
+ iSinventory: this.iSinventory,
+ consumableorderdetailsRecordsLWC: JSON.stringify(this.selectedData),
+ accountid: this.accountid,
+ agencyProType: this.agencyProType,
+ reSet: this.reSet,
+ pandiandetailsMap: this.pandiandetailsMap
+ })
+ .then((result) => {
+ result = JSON.parse(JSON.stringify(result));
+ console.log("result = " + JSON.stringify(result));
+ console.log("111111");
+
+ if (result.status == "Success") {
+ let url = "/lexInventoryCount?ESetid=" + result.entity.eSetId;
+ this[NavigationMixin.Navigate]({
+ type: "standard__webPage",
+ attributes: {
+ url: url,
+ },
+ });
+ console.log("Id" + this.eSetId);
+ // this.EditAble = true;
+ // this.showcount = false;
+ } else {
+ console.log("result.msg = " + result.msg);
+ const evt = new ShowToastEvent({
+ title: "澶辫触",
+ message: result.msg,
+ variant: "error",
+ });
+ this.dispatchEvent(evt);
+ }
+ })
+ .catch((error) => {
+ console.log("error = " + JSON.stringify(error));
+ });
+ }
+
+ inits() {
+ datainit({
+ eSetId: this.eSetId,
+ })
+ .then((result) => {
+ result = JSON.parse(JSON.stringify(result));
+ console.log('鐩樼偣涓�瑙�===>' + JSON.stringify(result));
+ for (var i in result.entity.qs) {
+ this.conId = result.entity.qs[i].Id;
+ }
+ console.log("this.conId" + typeof this.conId);
+ this.detailData = JSON.parse(
+ result.entity.consumableorderdetailsRecords
+ );
+ if (result.entity.ConsumableorderdetailsRecordsError != null) {
+ this.adjustdata = JSON.parse(
+ result.entity.ConsumableorderdetailsRecordsError
+ );
+ for (let i in this.detailData) {
+ this.detailData[i].Name__c = this.detailData[i].Prod.Name__c;
+ this.detailData[i].Count_Sum__c = this.detailData[i].orderdetails1.Count_Sum__c;
+ this.detailData[i].inventory_sum__c = this.detailData[i].orderdetails1.inventory_sum__c;
+ this.detailData[i].Diff__c = this.detailData[i].orderdetails1.Diff__c;
+ this.detailData[i].Product_Refind__c = this.detailData[i].orderdetails1.Product_Refind__c;
+ this.detailData[i].Lose_reason__c = this.detailData[i].orderdetails1.Lose_reason__c;
+ }
+ for (let i in this.adjustdata) {
+ this.adjustdata[i].Name__c = this.adjustdata[i].Prod.Name__c;
+ this.adjustdata[i].Asset_Model_No__c = this.adjustdata[i].Prod.Asset_Model_No__c;
+ this.adjustdata[i].Lose_reason__c = this.adjustdata[i].orderdetails2.Lose_reason__c;
+ this.adjustdata[i].Lose_Flag__c = this.adjustdata[i].orderdetails2.Lose_Flag__c;
+
+
+
+
+
+ }
+
+
+
+
+ }
+ console.log("result鐩樼偣Id" + JSON.stringify(this.conId));
+ console.log("璋冩暣鏄庣粏" + JSON.stringify(this.adjustdata));
+ })
+ .catch((error) => {
+ console.log("error = " + JSON.stringify(error));
+ });
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexInventoryCount/lexInventoryCount.js-meta.xml b/force-app/main/default/lwc/lexInventoryCount/lexInventoryCount.js-meta.xml
new file mode 100644
index 0000000..6cf1ec7
--- /dev/null
+++ b/force-app/main/default/lwc/lexInventoryCount/lexInventoryCount.js-meta.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>56.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightningCommunity__Page</target>
+ <target>lightningCommunity__Default</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexLoanerArrangedEmail/lexLoanerArrangedEmail.css b/force-app/main/default/lwc/lexLoanerArrangedEmail/lexLoanerArrangedEmail.css
new file mode 100644
index 0000000..ebb43d9
--- /dev/null
+++ b/force-app/main/default/lwc/lexLoanerArrangedEmail/lexLoanerArrangedEmail.css
@@ -0,0 +1,10 @@
+.exampleHolder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+.container .uiContainerManager{
+ display: none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexLoanerArrangedEmail/lexLoanerArrangedEmail.html b/force-app/main/default/lwc/lexLoanerArrangedEmail/lexLoanerArrangedEmail.html
new file mode 100644
index 0000000..3eff9e8
--- /dev/null
+++ b/force-app/main/default/lwc/lexLoanerArrangedEmail/lexLoanerArrangedEmail.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="EquipmentRentalPDF" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexLoanerArrangedEmail/lexLoanerArrangedEmail.js b/force-app/main/default/lwc/lexLoanerArrangedEmail/lexLoanerArrangedEmail.js
new file mode 100644
index 0000000..3916190
--- /dev/null
+++ b/force-app/main/default/lwc/lexLoanerArrangedEmail/lexLoanerArrangedEmail.js
@@ -0,0 +1,102 @@
+import { LightningElement, track, wire, api } from 'lwc';
+import { CurrentPageReference,NavigationMixin } from 'lightning/navigation';
+import { CloseActionScreenEvent } from 'lightning/actions';
+
+import init from '@salesforce/apex/loanerArrangedEmailController.init';
+import getRentalApplyEquipmentSet from '@salesforce/apex/loanerArrangedEmailController.getRentalApplyEquipmentSet';
+import approvalCheck from '@salesforce/apex/RentalApplyWebService.approvalCheck';
+import setShipment_request from '@salesforce/apex/RentalApplyWebService.approvalCheck';
+export default class lexLoanerArrangedEmail extends LightningElement {
+ @api recordId;
+ IsLoading = true;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ if(currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if(urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback() {
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(this.recordId);
+ console.log('result==='+JSON.stringify(result));
+ if(result != null) {
+ if( result.WeiAssignedCnt > 0 ) {
+ alert("鐢宠鍗曞唴瀛樺湪鏈垎閰嶇殑閰嶅锛岃鍒嗛厤澶囧搧鎴栧垎鍓茬敵璇峰崟");
+ }else if(result.CampaignStatus == "鍙栨秷") {
+ alert("瀛︿細鍙栨秷锛屼笉鍙嚭搴撴寚绀�");
+ }else if (result.RaStatus == "宸插嚭搴撴寚绀�" && result.AssignedNotShipment == 0){
+ alert("鎵�鏈夌殑鍊熷嚭澶囧搧Set涓�瑙堥兘杩涜杩囧嚭搴撴寚绀轰簡");
+ }else if (result.AssignedNotShipment == 0) {
+ alert("娌℃湁鍙互鍑哄簱鎸囩ず鐨勬槑缁�");
+ }else if (result.DemoPurpose1 == "闀挎湡鍊熷嚭" && result.ContractPdfUpdated == 0){
+ alert("闀挎湡鍊熷嚭鏃讹紝蹇呴』鍏堜笂浼犲绾︿功");
+ }else if (result.RepairId != '' && (result.RepairFinalInspectionDateF != null && result.RepairFinalInspectionDateF != '') || (result.RCReturnToOffice != null && result.RCReturnToOffice != '')){
+ alert("淇悊鏈夋渶缁堟娴嬫棩鎴栦慨鐞嗗搧杩旈�佹棩锛屼笉鍙嚭搴撴寚绀�");
+ }else if (result.IFApproved == "true" && (result.MeetingApprovedNo == null || result.MeetingApprovedNo == "")){
+ alert("娌℃湁鍐宠鍙风殑锛屾殏涓嶈兘鍑哄��,璇锋洿鏂拌鍐充俊鎭��");
+ }else if (result.IFApproved == "true" && result.MeetingApprovedNo != "" && result.StatusList.indexOf(records[0].Approved_Status__c) != -1){
+ alert("宸茬敵璇峰喅瑁佷絾鍐宠鐘舵�佷笉绗﹀悎鏉′欢銆�");
+ }else {
+ approvalCheck({
+ rentalApplyId: this.recordId
+ }).then(res=>{
+ if (res != '1') {
+ alert(rs1);
+ } else {
+ //bp2 var rs2 = sforce.apex.execute("RentalApplyWebService", "reserve", {rentalApplyId: raid});
+ //bp2 if (rs2 != '1') {
+ //bp2 alert(rs2);
+ //bp2 } else {
+ //var rs1 = sforce.apex.execute("RentalApplyWebService", "setShipment_request", {raid : "{!Rental_Apply__c.Id}"});
+
+ setShipment_request({
+ raid: this.recordId
+ }).then(res=>{
+ if (res == "鐘舵�佹洿鏂板埌宸插嚭搴撴寚绀�") {
+ alert("鐘舵�佹洿鏂板埌宸插嚭搴撴寚绀�");
+ print();
+ setTimeout(function() {
+ location.href = "/{!Rental_Apply__c.Id}";
+ },100);
+ }else {
+ alert(res);
+ }
+ }).catch(e=>{
+ console.log('approvalCheck==='+e);
+ })
+ }
+ }).catch(e=>{
+ console.log('setShipment_request==='+e);
+ })
+ }
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ })
+ }
+
+ print() {
+ getRentalApplyEquipmentSet({
+ recordId: this.recordId
+ }).then(result => {
+ window.open("https://ocsm--partial.sandbox.lightning.force.com/apex/FixtureRentalPDF?raid=" + this.recordId + "&page=" + result);
+ })
+ }
+
+ fixDate(date){
+ var Month = fixTime(date.getMonth() + 1);
+ var Day = fixTime(date.getDate());
+ var UTC = date.toUTCString();
+ var Time = UTC.substring(UTC.indexOf(':')-2, UTC.indexOf(':')+6);
+ var Minutes = fixTime(date.getMinutes());
+ var Seconds = fixTime(date.getSeconds());
+ return date.getFullYear() + "-" + Month + "-" + Day + "T" + Time;
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexLoanerArrangedEmail/lexLoanerArrangedEmail.js-meta.xml b/force-app/main/default/lwc/lexLoanerArrangedEmail/lexLoanerArrangedEmail.js-meta.xml
new file mode 100644
index 0000000..e261be9
--- /dev/null
+++ b/force-app/main/default/lwc/lexLoanerArrangedEmail/lexLoanerArrangedEmail.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexLoseBid/lexLoseBid.css b/force-app/main/default/lwc/lexLoseBid/lexLoseBid.css
new file mode 100644
index 0000000..fe3c9f1
--- /dev/null
+++ b/force-app/main/default/lwc/lexLoseBid/lexLoseBid.css
@@ -0,0 +1,18 @@
+/*
+ * @Description:
+ * @version:
+ * @Author: chen jing wu
+ * @Date: 2023-04-13 10:31:18
+ * @LastEditors: chen jing wu
+ * @LastEditTime: 2023-04-13 10:46:09
+ */
+.lexLoseBidHolder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+.container .uiContainerManager{
+ display: none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexLoseBid/lexLoseBid.html b/force-app/main/default/lwc/lexLoseBid/lexLoseBid.html
new file mode 100644
index 0000000..6c30e33
--- /dev/null
+++ b/force-app/main/default/lwc/lexLoseBid/lexLoseBid.html
@@ -0,0 +1,6 @@
+<template>
+ <div class="lexLoseBidHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ <lightning-button label="Show Toast" onclick={ShowToastEvent}></lightning-button>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexLoseBid/lexLoseBid.js b/force-app/main/default/lwc/lexLoseBid/lexLoseBid.js
new file mode 100644
index 0000000..db1b2da
--- /dev/null
+++ b/force-app/main/default/lwc/lexLoseBid/lexLoseBid.js
@@ -0,0 +1,89 @@
+import { api, wire,LightningElement } from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { updateRecord } from 'lightning/uiRecordApi';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+import init from '@salesforce/apex/OpportunityLightingButtonController.initForLoseBidButton';
+import updateForLoseBidButton from '@salesforce/apex/OpportunityLightingButtonController.updateForLoseBidButton';
+import queryForLexLoseBidButton from '@salesforce/apex/OpportunityLightingButtonController.queryForLoseBidButton';
+export default class LexLoseBid extends LightningElement {
+ @api recordId;
+ ifOpenBid;
+ IsLoading = true;
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+ connectedCallback(){
+ init({
+ recordId: this.recordId
+ }).then(result=>{
+ console.log(result);
+ this.ifOpenBid = result.ifOpenBid;
+ this.lexLoseBid();
+ }).catch(error=>{
+ console.log("error");
+ console.log(error);
+ })
+ }
+ lexLoseBid(){
+ console.log("query start");
+ queryForLexLoseBidButton({
+ recordId: this.recordId
+ }).then(result=>{
+ console.log("query end");
+ console.log(result);
+ var flag = true;
+ var taskslist = result;
+ for(var task of taskslist ){
+ if(task.taskStatus__c != '04 鍙栨秷'){
+ flag = false;
+ }
+ }
+ if(this.ifOpenBid == '闈炲叕寮�鎷涙爣'){
+ flag = false;
+ }
+
+ if(flag){
+ this.showToast("鏉′欢涓嶇鍚堬紝涓嶅彲鎿嶄綔","error");
+ }else{
+ if (window.confirm('鏄惁纭绔炰簤瀵规墜涓爣锛�')) {
+ updateForLoseBidButton({
+ recordId: this.recordId
+ }).then(result=>{
+ if (result) {
+ this.showToast(result,"error");
+ }else{
+ this.IsLoading = false;
+ this.updateRecordView(this.recordId);
+ this.showToast("鎿嶄綔鎴愬姛锛�","success");
+ }
+ })
+ }
+ }
+ });
+ }
+ showToast(msg,type) {
+ const event = new ShowToastEvent({
+ title: '',
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ updateRecordView(recordId) {
+ updateRecord({fields: { Id: recordId }});
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexLoseBid/lexLoseBid.js-meta.xml b/force-app/main/default/lwc/lexLoseBid/lexLoseBid.js-meta.xml
new file mode 100644
index 0000000..3392981
--- /dev/null
+++ b/force-app/main/default/lwc/lexLoseBid/lexLoseBid.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexLoseReport/lexLoseReport.css b/force-app/main/default/lwc/lexLoseReport/lexLoseReport.css
new file mode 100644
index 0000000..93da52a
--- /dev/null
+++ b/force-app/main/default/lwc/lexLoseReport/lexLoseReport.css
@@ -0,0 +1,10 @@
+.lexLoseReportHolder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+.container .uiContainerManager{
+ display: none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexLoseReport/lexLoseReport.html b/force-app/main/default/lwc/lexLoseReport/lexLoseReport.html
new file mode 100644
index 0000000..d7e25f9
--- /dev/null
+++ b/force-app/main/default/lwc/lexLoseReport/lexLoseReport.html
@@ -0,0 +1,6 @@
+<template>
+ <div class="lexLoseReportHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ <lightning-button label="Show Toast" onclick={ShowToastEvent}></lightning-button>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexLoseReport/lexLoseReport.js b/force-app/main/default/lwc/lexLoseReport/lexLoseReport.js
new file mode 100644
index 0000000..7b167ea
--- /dev/null
+++ b/force-app/main/default/lwc/lexLoseReport/lexLoseReport.js
@@ -0,0 +1,102 @@
+/*
+ * @Description:
+ * @version:
+ * @Author: chen jing wu
+ * @Date: 2023-04-14 10:16:19
+ * @LastEditors: chen jing wu
+ * @LastEditTime: 2023-04-14 10:41:46
+ */
+import { api, wire,LightningElement } from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { updateRecord } from 'lightning/uiRecordApi';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+import init from '@salesforce/apex/OpportunityLightingButtonController.initForLostReportButton';
+export default class LexLoseReport extends LightningElement {
+ @api recordId;
+ stageName;
+ sapSendOK;
+ cntLostCancelReport;
+ name;
+ salesAssistantName;
+ salesAssistantID;
+ managerName;
+ salesManagerDepartmentID;
+ salesOwnerBuchang;
+ salesOwnerBuchangID;
+ IsLoading = true;
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+ connectedCallback(){
+ init({
+ recordId: this.recordId
+ }).then(result=>{
+ this.stageName = result.stageName;
+ this.sapSendOK = result.sapSendOK;
+ this.cntLostCancelReport = result.cntLostCancelReport;
+ this.name = result.name;
+ this.salesAssistantID = result.salesAssistantID;
+ this.salesAssistantName = result.salesAssistantName;
+ this.managerName = result.managerName;
+ this.salesManagerDepartmentID = result.salesManagerDepartmentID;
+ this.salesOwnerBuchang = result.salesOwnerBuchang;
+ this.salesOwnerBuchangID = result.salesOwnerBuchangID;
+ this.loseReport();
+ })
+ }
+ loseReport(){
+ // js銇牬鍚堛�佺炕瑷炽仌銈屻仧鍊ゃ亴銇с倠銇仹銆佽娉ㄦ剰
+ if (this.stageName != '寮曞悎'
+ && this.stageName != '璇环'
+ ) {
+ this.showToast("鐘舵��1:" + this.stageName + "銆佷笉鑳藉仛 澶卞崟 浜嗭紒","error");
+ }
+ else if (this.sapSendOK == '1') {
+ this.showToast("宸茬粡涓婁紶SAP銆佷笉鑳藉仛 澶卞崟 浜嗭紒","error");
+ }
+ else if (this.cntLostCancelReport > 0) {
+ this.showToast("璇环宸茬粡鏈� 鍙栨秷锛忓け鍗曟姤鍛� 浜嗭紒","error");
+ }
+ //else if({!Not(ISBLANK(Opportunity.Bidding_Project_Name_Bid__c))} && //'{!Opportunity.InfoTypeBid__c}' != '3锛氱粨鏋�' ){
+ //alert("鍏宠仈鎷涙姇鏍囬」鐩殑璇环锛屽彧鑳藉湪鏈夌粨鏋滃悗鍋氬け鍗曟姤鍛婏紒");
+ //}
+ else {
+ location.href = '/a1U/e?retURL=%2F' + this.recordId +
+ '&RecordType=01210000000R4hM' +
+ '&CF00N10000004lbGT=' + this.name +
+ '&CF00N10000004lbGT_lkid=' + this.recordId +
+ '&CF00N10000006QShg=' + this.salesAssistantName +
+ '&CF00N10000006QShg_lkid=' + this.salesAssistantID +
+ '&CF00N10000006QShq=' + this.managerName +
+ '&CF00N10000006QShq_lkid=' + this.salesManagerDepartmentID +
+ '&CF00N10000006QShb=' + this.salesOwnerBuchang +
+ '&CF00N10000006QShb_lkid=' + this.salesOwnerBuchangID +
+ '';
+ }
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ showToast(msg,type) {
+ const event = new ShowToastEvent({
+ title: '',
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ }
+ updateRecordView(recordId) {
+ updateRecord({fields: { Id: recordId }});
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexLoseReport/lexLoseReport.js-meta.xml b/force-app/main/default/lwc/lexLoseReport/lexLoseReport.js-meta.xml
new file mode 100644
index 0000000..3392981
--- /dev/null
+++ b/force-app/main/default/lwc/lexLoseReport/lexLoseReport.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexLostReturnDeliverySlip/lexLostReturnDeliverySlip.css b/force-app/main/default/lwc/lexLostReturnDeliverySlip/lexLostReturnDeliverySlip.css
new file mode 100644
index 0000000..af18c76
--- /dev/null
+++ b/force-app/main/default/lwc/lexLostReturnDeliverySlip/lexLostReturnDeliverySlip.css
@@ -0,0 +1,11 @@
+.Holder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+
+.container .uiContainerManager{
+ display : none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexLostReturnDeliverySlip/lexLostReturnDeliverySlip.html b/force-app/main/default/lwc/lexLostReturnDeliverySlip/lexLostReturnDeliverySlip.html
new file mode 100644
index 0000000..2ef2898
--- /dev/null
+++ b/force-app/main/default/lwc/lexLostReturnDeliverySlip/lexLostReturnDeliverySlip.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="Holder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexLostReturnDeliverySlip/lexLostReturnDeliverySlip.js b/force-app/main/default/lwc/lexLostReturnDeliverySlip/lexLostReturnDeliverySlip.js
new file mode 100644
index 0000000..5d79272
--- /dev/null
+++ b/force-app/main/default/lwc/lexLostReturnDeliverySlip/lexLostReturnDeliverySlip.js
@@ -0,0 +1,39 @@
+import { LightningElement, track, wire, api } from 'lwc';
+import {CurrentPageReference} from 'lightning/navigation';
+import { CloseActionScreenEvent } from 'lightning/actions';
+
+export default class lexLostReturnDeliverySlip extends LightningElement {
+ @api recordId;
+
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference){
+ console.log("杩涘叆椤甸潰");
+ console.log(currentPageReference);
+ if(currentPageReference){
+ const urvalue=currentPageReference.state.recordId;
+ if(urvalue){
+ let str=`${urvalue}`;
+ console.log('str');
+ console.log(str);
+ this.recordId=str;
+ }
+ }
+ }
+
+ connectedCallback(){
+
+ this.cancelSubmit().then(res=>{
+ this.IsLoading=false;
+ this.dispatchEvent(new CloseActionScreenEvent());
+ });
+ }
+
+ async cancelSubmit(){
+ window.open('/apex/Lost_Return_DeliverySlip?id='+this.recordId,'LostReturnDeliverySlip', 'width=600,height=200');
+ }
+
+ //old js
+ // window.open('/apex/Lost_Return_DeliverySlip?id={!TransferApply__c.Id}');
+
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexLostReturnDeliverySlip/lexLostReturnDeliverySlip.js-meta.xml b/force-app/main/default/lwc/lexLostReturnDeliverySlip/lexLostReturnDeliverySlip.js-meta.xml
new file mode 100644
index 0000000..d8dfadb
--- /dev/null
+++ b/force-app/main/default/lwc/lexLostReturnDeliverySlip/lexLostReturnDeliverySlip.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexLostReturnDeliverySlip">
+ <apiVersion>51.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__AppPage</target>
+ <target>lightning__RecordPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexMailMessege/lexMailMessege.html b/force-app/main/default/lwc/lexMailMessege/lexMailMessege.html
new file mode 100644
index 0000000..d044dbb
--- /dev/null
+++ b/force-app/main/default/lwc/lexMailMessege/lexMailMessege.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="exampleHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexMailMessege/lexMailMessege.js b/force-app/main/default/lwc/lexMailMessege/lexMailMessege.js
new file mode 100644
index 0000000..cf78f1a
--- /dev/null
+++ b/force-app/main/default/lwc/lexMailMessege/lexMailMessege.js
@@ -0,0 +1,89 @@
+import {
+ LightningElement,
+ wire,
+ api
+} from 'lwc';
+import {
+ CurrentPageReference
+} from "lightning/navigation";
+import {
+ CloseActionScreenEvent
+} from 'lightning/actions';
+import init from '@salesforce/apex/otherButtonRepairController.init';
+export default class LexMailMessege extends LightningElement {
+ @api recordId;
+ str;
+ IsLoading = true;
+ Id;;
+ InchargeStaffEmailC;
+ Name;
+ HPNameC;
+ DeliveredProductC;
+ RepairProductSerialNoC;
+ ServiceRepairNoC;
+ RepairFirstestimatedDateC;
+ RepairEstimatedDateC;
+ RCInformationC;
+ userEmail;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback() {
+ console.log(this.recordId);
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result);
+ if (result != null) {
+ this.IsLoading = false;
+ this.Id = result.Id;
+ this.InchargeStaffEmailC = result.InchargeStaffEmailC;
+ this.Name = result.Name;
+ this.HPNameC = result.HPNameC;
+ this.DeliveredProductC = result.DeliveredProductC;
+ this.RepairProductSerialNoC = result.RepairProductSerialNoC;
+ this.ServiceRepairNoC = result.ServiceRepairNoC;
+ this.RepairFirstestimatedDateC = result.RepairFirstestimatedDateC;
+ this.RepairEstimatedDateC = result.RepairEstimatedDateC;
+ this.RCInformationC = result.RCInformationC;
+ this.userEmail = result.userEmail;
+
+ this.mailMessege();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ }).catch(error => {
+ console.log(error);
+ }).finally(() => {
+
+ });
+ }
+
+ // 鎶ヤ环闄勪欢鏇存柊鐨勯偖浠堕�氱煡
+ mailMessege() {
+ var Link = "https://ocsm--partial.sandbox.my.salesforce.com/" + this.Id;
+ console.log(Link);
+
+ location.href = 'mailto:' + this.InchargeStaffEmailC +
+ '?bcc=' + this.userEmail +
+ '&subject=銆愭姤浠烽檮浠舵洿鏂伴�氱煡:' + this.Name + '銆�' + this.HPNameC + this.DeliveredProductC + this.RepairProductSerialNoC + this.ServiceRepairNoC +
+ '&body=鍏堢敓/濂冲+%0D%0A' +
+ '%0D%0A' +
+ '鍏充簬涓婚鐨勪慨鐞嗭紝淇悊鎶ヤ环鐨勯檮浠舵洿鏂板ソ浜�%0D%0A' +
+ '璇风‘璁ゅ苟璺熻繘涓�涓�%0D%0A' +
+ '%0D%0A' +
+ '鍒濇鎶ヤ环鏃ワ細' + this.RepairFirstestimatedDateC + '%0D%0A' +
+ '姝ゆ鎶ヤ环鏃ワ細' + this.RepairEstimatedDateC + '%0D%0A' +
+ '%0D%0A' +
+ 'RC鑱旂粶浜嬮」锛�' + this.RCInformationC + '%0D%0A' +
+ '%0D%0A' + Link + '';
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexMailMessege/lexMailMessege.js-meta.xml b/force-app/main/default/lwc/lexMailMessege/lexMailMessege.js-meta.xml
new file mode 100644
index 0000000..3392981
--- /dev/null
+++ b/force-app/main/default/lwc/lexMailMessege/lexMailMessege.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexMainFixtureSelect/lexMainFixtureSelect.css b/force-app/main/default/lwc/lexMainFixtureSelect/lexMainFixtureSelect.css
new file mode 100644
index 0000000..635bc6c
--- /dev/null
+++ b/force-app/main/default/lwc/lexMainFixtureSelect/lexMainFixtureSelect.css
@@ -0,0 +1,22 @@
+.outerBorderCss{
+ border: 1px solid #D4D4D4;
+ border-radius : 5px;
+ border-top : 3px solid #565959;
+}
+.borderCss{
+ border: 1px solid #D4D4D4;
+ border-radius : 5px;
+ margin-bottom : 7px;
+ border-top : 3px solid #565959;
+}
+.headerDorderCss{
+ border-top: 1px solid #565959;
+ border-bottom: 1px solid #D4D4D4;
+ padding:3px;
+}
+.centerCss{
+ text-align: center;
+}
+.centerCss .left{
+ margin-left: 100px;
+}/* sample css file */
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexMainFixtureSelect/lexMainFixtureSelect.html b/force-app/main/default/lwc/lexMainFixtureSelect/lexMainFixtureSelect.html
new file mode 100644
index 0000000..49a10f7
--- /dev/null
+++ b/force-app/main/default/lwc/lexMainFixtureSelect/lexMainFixtureSelect.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="sisToOPDHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexMainFixtureSelect/lexMainFixtureSelect.js b/force-app/main/default/lwc/lexMainFixtureSelect/lexMainFixtureSelect.js
new file mode 100644
index 0000000..4145e2e
--- /dev/null
+++ b/force-app/main/default/lwc/lexMainFixtureSelect/lexMainFixtureSelect.js
@@ -0,0 +1,33 @@
+import { LightningElement, track, wire, api } from 'lwc';
+import { CurrentPageReference,NavigationMixin } from 'lightning/navigation';
+import { CloseActionScreenEvent } from 'lightning/actions';
+
+import init from '@salesforce/apex/MainFixtureSelectButtonController.init';
+export default class lexMainFixtureSelect extends LightningElement {
+ @api recordId;
+ IsLoading = true;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference){
+ if(currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if(urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+
+ connectedCallback(){
+ init({
+ recordId:this.recordId
+ }).then(res=>{
+ window.open("/apex/MainFixtureSelect?pt_recid=" + res, "_top");
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }).catch(err=>{
+ console.log(err);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ })
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexMainFixtureSelect/lexMainFixtureSelect.js-meta.xml b/force-app/main/default/lwc/lexMainFixtureSelect/lexMainFixtureSelect.js-meta.xml
new file mode 100644
index 0000000..74849f3
--- /dev/null
+++ b/force-app/main/default/lwc/lexMainFixtureSelect/lexMainFixtureSelect.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexOCMSubmit">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexNewRepairLWC/lexNewRepairLWC.css b/force-app/main/default/lwc/lexNewRepairLWC/lexNewRepairLWC.css
new file mode 100644
index 0000000..fa4ac70
--- /dev/null
+++ b/force-app/main/default/lwc/lexNewRepairLWC/lexNewRepairLWC.css
@@ -0,0 +1,9 @@
+.Narrow{
+ padding: 20px;
+}
+.searchField,.searchField .input-text{
+ /*display: flex;*/
+}
+.searchField .slds-combobox_container{
+ width: 160px !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexNewRepairLWC/lexNewRepairLWC.html b/force-app/main/default/lwc/lexNewRepairLWC/lexNewRepairLWC.html
new file mode 100644
index 0000000..52d09d9
--- /dev/null
+++ b/force-app/main/default/lwc/lexNewRepairLWC/lexNewRepairLWC.html
@@ -0,0 +1,114 @@
+<template>
+ <!-- <lightning-card variant="Narrow"> -->
+ <div class="exampleHolder" if:true={isLoading}>
+ <lightning-spinner alternative-text="Loading" size="small"></lightning-spinner>
+ </div>
+ <!-- slds-modal__container -->
+ <div class="">
+ <!-- <header class="slds-modal__header">
+ <button class="slds-button slds-button_icon slds-modal__close slds-button_icon-inverse"
+ title="Close" onclick={closeNewObjectModal}>
+ <lightning-icon icon-name="utility:close" alternative-text="close"
+ variant="inverse" size="small"></lightning-icon>
+ <span class="slds-assistive-text">Close</span>
+ </button>
+ <h2 id="modal-heading-01" class="slds-text-heading_medium slds-hyphenate">
+ {modalHeader} : {selectedRecordType}
+ </h2>
+ </header> -->
+ <div class="slds-modal__content slds-p-around_medium" id="modal-content-id-2">
+ <!-- Repair__c onsubmit={handleSubmit}-->
+ <lightning-record-edit-form onload={handleRecordEditFormLoad} onsuccess={successNewRecordInsert} object-api-name='{objectName}'
+ record-type-id={recordId}>
+ <lightning-messages></lightning-messages>
+ <template if:true={uiPageLayoutView}>
+ <lightning-layout multiple-rows="true">
+ <lightning-layout-item size="12">
+ <lightning-accordion allow-multiple-sections-open
+ onsectiontoggle={handleSectionToggle}
+ active-section-name={activeSections}>
+ <template for:each={uiPageLayoutView.sections} for:item="section">
+ <!-- slds-grid -->
+ <div key={section.id} class="slds-wrap">
+ <lightning-accordion-section name={section.id} label={section.heading}>
+ <!-- <div class="row slds-gutters row-width">
+ <h3 class="slds-p-vertical_xx-small slds-p-left_medium" style="font-size: 16px;width: 100%;border: 3px outset #d0d9e1;">{section.heading}</h3>
+ </div> -->
+ <lightning-layout multiple-rows="true">
+ <template for:each={section.layoutRows} for:item="layoutRow">
+ <template for:each={layoutRow.layoutItems} for:item="layoutItem">
+ <template for:each={layoutItem.layoutComponents} for:item="layoutComponent">
+ <lightning-layout-item key={layoutComponent.apiName} size="6" padding="horizontal-small">
+ <template if:true={layoutItem.editableForNew}>
+ <lightning-input-field data-fieldname={layoutComponent.apiName}
+ field-name={layoutComponent.apiName} name={layoutComponent.apiName} required={layoutItem.required}>
+ </lightning-input-field>
+ </template>
+ <!-- <template if:false={layoutItem.editableForNew}> -->
+ <!-- 淇悊鍙椾粯鐣彿 -->
+ <!-- <template if:true={layoutComponent.apiName}>
+ <lightning-output-field field-name={layoutComponent.apiName}>
+ </lightning-output-field>
+ </template> -->
+ <!-- </template> -->
+ </lightning-layout-item>
+ </template>
+ </template>
+ </template>
+ </lightning-layout>
+ </lightning-accordion-section>
+ </div>
+
+ </template>
+ </lightning-accordion>
+ </lightning-layout-item>
+ </lightning-layout>
+ </template>
+ <lightning-messages></lightning-messages>
+ <!-- slds-m-top_medium slds-m-top_small-->
+ <div class="" style="text-align: center;">
+ <lightning-button
+ class=""
+ label="鍙栨秷"
+ onclick={handleReset}
+ ></lightning-button>
+ <lightning-button
+ class=""
+ type="submit"
+ name="save"
+ label="淇濆瓨"
+ style="margin-left: 10px;"
+ ></lightning-button>
+ <!-- <lightning-button
+ class="slds-m-top_small"
+ type="submit"
+ name="saveAndNew"
+ label="淇濆瓨鏂板缓"
+ ></lightning-button> -->
+ </div>
+ </lightning-record-edit-form>
+ </div>
+ <!-- <div class="footer-background-class">
+ <div class="slds-align_absolute-center slds-p-around_xx-small">
+ <lightning-button class="slds-m-around_xx-small"
+ title="Cancel" label="Cancel"
+ onclick={closeNewObjectModal}>
+ </lightning-button>
+ <lightning-button variant="brand" title="Save"
+ onclick={submitRecordForm} name="Save" label="Save">
+ </lightning-button>
+ </div>
+ </div> -->
+ </div>
+
+ <!-- <lightning-record-edit-form record-id={recordId} object-api-name='{objectName}'>
+ <lightning-input-field field-name="Delivered_Product__c"> </lightning-input-field>
+ <lightning-button
+ class="slds-m-top_small"
+ variant="brand"
+ type="submit"
+ label="Update"
+ >
+ </lightning-button>
+</lightning-record-edit-form> -->
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexNewRepairLWC/lexNewRepairLWC.js b/force-app/main/default/lwc/lexNewRepairLWC/lexNewRepairLWC.js
new file mode 100644
index 0000000..4516b41
--- /dev/null
+++ b/force-app/main/default/lwc/lexNewRepairLWC/lexNewRepairLWC.js
@@ -0,0 +1,153 @@
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { NavigationMixin } from 'lightning/navigation';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+
+// import { getRecordUi } from 'lightning/uiRecordApi';
+
+// import NAME_FIELD from '@salesforce/schema/Repair__c.Incharge_Staff__c';
+import MY_CUSTOM_OBJECT from '@salesforce/schema/Repair__c';
+
+import init from '@salesforce/apex/NewRepairAuraController.init';
+
+export default class newRepairLWC extends LightningElement {
+ // Expose a field to make it available in the template
+ // nameField = NAME_FIELD;
+
+ // Flexipage provides recordId and objectApiName
+ // @api recordId = 'a0J0l00000EouAT';
+ @api recordId;
+ @api urlStr;
+ @api objectApiName;
+
+ /* @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }*/
+
+ objectName = 'Repair__c';
+ uiPageLayoutView;
+ isNewMode;
+ //榛樿鍊艰祴鍊兼爣璁�
+ // defaultFlag = true;
+ defaultValue;
+ isLoading = true;
+ activeSections;
+
+ connectedCallback(){
+ console.log(this.recordId);
+ console.log(JSON.parse(this.urlStr));
+ }
+ //鑾峰彇Layout瀛楁
+ handleRecordEditFormLoad(event) {
+ console.log('Layout => ', JSON.stringify(event.detail.layout));
+ this.uiPageLayoutView = event.detail.layout;
+ console.log('Layout1 => ',this.uiPageLayoutView);
+ // urlStr 浼犲弬澶勭悊
+ init({
+ recordId : this.recordId,urlStr : this.urlStr
+ }).then(result => {
+ console.log("result");
+ console.log(result);
+ this.defaultValue = result;
+ //to del !
+ this.defaultValue['Delivered_Product'] = '02i10000004tNXIAA2';
+ this.defaultValue['Account'] = '0011000001g11rDAAQ';
+ this.defaultValue['SalesOfficeCode_selection'] = '鍖椾含';
+ this.defaultValue['On_site_repair'] = 'RC淇悊';
+ this.defaultValue['Repair_Detail'] = 'testLwc';
+ this.defaultValue['Hospital'] = '0011000001g11rDAAQ';
+ this.defaultValue['work_location_select'] = '鍖椾含鍔炰簨澶�';
+
+
+
+ if (!result.status) {
+ const inputFields = this.template.querySelectorAll(
+ 'lightning-input-field'
+ );
+ if (inputFields) {
+ inputFields.forEach(field => {
+ /*console.log('fieldsif => ',field);
+ console.log('fieldsif => ',field.name);
+ console.log('fieldsif => ',field.name.replace("__c",""));*/
+ let fieldName = field.name.replace("__c","");
+ if (this.defaultValue.hasOwnProperty(fieldName)) {
+ field.value= this.defaultValue[fieldName];
+ }
+ });
+ }
+ }
+ }).catch(error => {
+ console.log("error");
+ console.log(error);
+ }).finally(() => {
+ let checkedSections = new Set();
+ if (this.uiPageLayoutView.sections.length > 0) {
+ // console.log("id");
+ checkedSections.add(this.uiPageLayoutView.sections[0].id);
+ //todo del or 鏄剧ず鎵�鏈�
+ checkedSections.add(this.uiPageLayoutView.sections[1].id);
+ // console.log(this.uiPageLayoutView.sections[0].id);
+ //榛樿鎵撳紑绗竴涓猘ccordion
+ this.activeSections = Array.from(checkedSections);
+ }
+
+ this.isLoading = false;
+ });
+
+ }
+ //
+
+ handleSubmit(event){
+ console.log("handleSubmit");
+ event.preventDefault(); // stop the form from submitting
+ const fields = event.detail.fields;
+ console.log("fields");
+ console.log(fields);
+ console.log(event.detail);
+ // this.template.querySelector('lightning-record-edit-form').submit(fields);
+ }
+ //鎴愬姛鍚庤烦杞�
+ handleSucess(event){
+ const updatedRecord = event.detail.id;
+ console.log('onsuccess: ', updatedRecord);
+ }
+ handleReset(event) {
+ const fields = event.detail.fields;
+ console.log('fields => ',fields);
+ const inputFields = this.template.querySelectorAll(
+ 'lightning-input-field'
+ );
+ if (inputFields) {
+ inputFields.forEach(field => {
+
+ console.log('fieldsif => ',field);
+ console.log('fieldsif => ',field.name);
+ // field.reset();
+ });
+ }
+ }
+ handleSectionToggle(event) {
+ const openSections = event.detail.openSections;
+
+ /*if (openSections.length === 0) {
+ this.activeSectionsMessage = 'All sections are closed';
+ } else {
+ this.activeSectionsMessage =
+ 'Open sections: ' + openSections.join(', ');
+ }*/
+ }
+
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexNewRepairLWC/lexNewRepairLWC.js-meta.xml b/force-app/main/default/lwc/lexNewRepairLWC/lexNewRepairLWC.js-meta.xml
new file mode 100644
index 0000000..2b7649d
--- /dev/null
+++ b/force-app/main/default/lwc/lexNewRepairLWC/lexNewRepairLWC.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexNewTransferApply/lexNewTransferApply.css b/force-app/main/default/lwc/lexNewTransferApply/lexNewTransferApply.css
new file mode 100644
index 0000000..635bc6c
--- /dev/null
+++ b/force-app/main/default/lwc/lexNewTransferApply/lexNewTransferApply.css
@@ -0,0 +1,22 @@
+.outerBorderCss{
+ border: 1px solid #D4D4D4;
+ border-radius : 5px;
+ border-top : 3px solid #565959;
+}
+.borderCss{
+ border: 1px solid #D4D4D4;
+ border-radius : 5px;
+ margin-bottom : 7px;
+ border-top : 3px solid #565959;
+}
+.headerDorderCss{
+ border-top: 1px solid #565959;
+ border-bottom: 1px solid #D4D4D4;
+ padding:3px;
+}
+.centerCss{
+ text-align: center;
+}
+.centerCss .left{
+ margin-left: 100px;
+}/* sample css file */
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexNewTransferApply/lexNewTransferApply.html b/force-app/main/default/lwc/lexNewTransferApply/lexNewTransferApply.html
new file mode 100644
index 0000000..49a10f7
--- /dev/null
+++ b/force-app/main/default/lwc/lexNewTransferApply/lexNewTransferApply.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="sisToOPDHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexNewTransferApply/lexNewTransferApply.js b/force-app/main/default/lwc/lexNewTransferApply/lexNewTransferApply.js
new file mode 100644
index 0000000..a73c401
--- /dev/null
+++ b/force-app/main/default/lwc/lexNewTransferApply/lexNewTransferApply.js
@@ -0,0 +1,126 @@
+import { LightningElement, track, wire, api } from 'lwc';
+import { CurrentPageReference,NavigationMixin } from 'lightning/navigation';
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { encodeDefaultFieldValues } from 'lightning/pageReferenceUtils';
+import init from '@salesforce/apex/NewTransferApplyController.init';
+import getRecordId from '@salesforce/apex/NewTransferApplyController.getRecordId';
+export default class lexNewTransferApply extends LightningElement {
+
+ @api recordId;
+ IsLoading = true;
+ raId;
+ raName;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference){
+ if(currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if(urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback(){
+ init({
+ recordId: this.recordId
+ }).then(result =>{
+ console.log(this.recordId);
+ this.raId = result.raId;
+ this.raName = result.raName;
+
+ let raDetailSet = result.rae;
+ console.log(raDetailSet);
+ let IsCanCreateTransfer = false;
+ if(raDetailSet.length > 0){
+ if(raDetailSet[0].Rental_Apply__r.RecordType.DeveloperName != 'AgencyRequest'){
+ alert('姝よ褰曠被鍨嬩笉鏀寔鏂板缓璋冩嫧鍗�');
+ }else{
+ for(let i=0; i<raDetailSet.length; i++){
+ if(raDetailSet[i].Asset__c != null){
+ //鐢婚潰榛樿涓斾粎鏄剧ず绗﹀悎璋冩嫧瑕佹眰鐨勬暟鎹紙鈶犳瑺鍝佹柇蹇靛悗鎵惧洖鐨勪富浣� 鈶★紙涓讳綋涓婃灦ok锛夋瑺鍝佹柇蹇靛悗鎵惧洖鐨勯檮灞炲搧 鈶富浣撳緟淇悊鐨勬暣涓厤濂� 鈶o紙涓讳綋涓婃灦ok锛夊緟淇悊鐨勯檮灞炲搧锛夆懁涓讳綋鏂康鍚庡崟鐙殑闄勫睘鍝�
+ if(raDetailSet[i].Is_Body__c == 'true'){
+ //鈶犳瑺鍝佹柇蹇靛悗鎵惧洖鐨勪富浣�
+ if(raDetailSet[i].Lost_item_giveup__c == 'true'){
+ IsCanCreateTransfer = true; break;
+ }
+ //鈶富浣撳緟淇悊鐨勬暣涓厤濂�
+ if(raDetailSet[i].Arrival_wh_Result_Agency__c != null && (raDetailSet[i].Arrival_wh_Result_Agency__c == '寰呬慨鐞�' || raDetailSet[i].Arrival_wh_Result_Agency__c == '绉昏嚦鎶ュ簾鍖�' )){
+ IsCanCreateTransfer = true; break;
+ }
+ }else{
+ //鈶富浣撳緟淇悊鐨勬暣涓厤濂楋紙涓嶆槸娆犲搧鐨勯檮灞炲搧锛�
+ if(raDetailSet[i].Rental_Apply_Equipment_Set__r.First_RAESD__r.Arrival_wh_Result_Agency__c != null &&
+ (raDetailSet[i].Rental_Apply_Equipment_Set__r.First_RAESD__r.Arrival_wh_Result_Agency__c == '寰呬慨鐞�' ||
+ raDetailSet[i].Rental_Apply_Equipment_Set__r.First_RAESD__r.Arrival_wh_Result_Agency__c == '绉昏嚦鎶ュ簾鍖�' ) &&
+ raDetailSet[i].OneToOne_Flag__c == 'true' &&
+ raDetailSet[i].Arrival_wh_Result_Agency__c != null
+ ){
+ IsCanCreateTransfer = true; break;
+ }
+
+ //鈶′富浣撴瑺鍝佹柇蹇靛悗鐨勬暣涓厤濂�(涓嶆槸娆犲搧鐨勯檮灞炲搧)
+ //鏈変富浣撳緱鏄竴瀵逛竴闄勫睘鍝�
+ if(raDetailSet[i].Rental_Apply_Equipment_Set__r.First_RAESD__r.Lost_item_giveup__c == 'true' &&
+ raDetailSet[i].OneToOne_Flag__c == 'true' &&
+ raDetailSet[i].Arrival_wh_Result_Agency__c != null){
+ IsCanCreateTransfer = true; break;
+ }
+
+ //鈶o紙涓讳綋涓婃灦ok锛夊緟淇悊鐨勯檮灞炲搧
+ if(raDetailSet[i].Rental_Apply_Equipment_Set__r.First_RAESD__r.Arrival_wh_Result_Agency__c !=null &&
+ raDetailSet[i].Rental_Apply_Equipment_Set__r.First_RAESD__r.Arrival_wh_Result_Agency__c == 'OK' &&
+ raDetailSet[i].OneToOne_Flag__c == 'true' &&
+ raDetailSet[i].Arrival_wh_Result_Agency__c != null && (raDetailSet[i].Arrival_wh_Result_Agency__c == '寰呬慨鐞�' || raDetailSet[i].Arrival_wh_Result_Agency__c == '绉昏嚦鎶ュ簾鍖�')){
+ IsCanCreateTransfer = true; break;
+ }
+
+ //鈶� 鏂康鍚庣殑闄勫睘鍝�
+ if(raDetailSet[i].Lost_item_giveup__c == 'true'){
+ IsCanCreateTransfer = true; break;
+ }
+
+ if(raDetailSet[i].Rental_Apply_Equipment_Set__r.First_You_Xiao_Ku_Cun__c <= 0
+ && raDetailSet[i].OneToOne_Flag__c && raDetailSet[i].Check_lost_Item__c != null && raDetailSet[i].Check_lost_Item_Final__c !=null && raDetailSet[i].Check_lost_Item__c == '娆犲搧' && raDetailSet[i].Check_lost_Item_Final__c == 'OK'
+ && raDetailSet[i].Arrival_in_wh__c == 'true'
+ && raDetailSet[i].Arrival_wh_time__c != raDetailSet[i].Rental_Apply_Equipment_Set__r.First_RAESD__r.Arrival_wh_time__c ){
+ IsCanCreateTransfer = true; break;
+ }
+ }
+ }
+ }
+
+ if(IsCanCreateTransfer){
+ getRecordId().then(res=>{
+ const defaultValues = encodeDefaultFieldValues({
+ recordId: res,
+ Name: '*',
+ Rental_Apply__c: this.recordId
+ });
+
+ this[NavigationMixin.Navigate]({
+ type: 'standard__objectPage',
+ attributes: {
+ objectApiName: 'TransferApply__c',
+ actionName: 'new'
+ },
+ state:{
+ defaultFieldValues: this.defaultValues
+ }
+ })
+ })
+ }else{
+ alert('璇ョ敵璇锋病鏈夌鍚堟潯浠剁殑鍊熷嚭澶囧搧閰嶅涓�瑙堟槑缁嗭紒');
+ }
+ }
+ }else{
+ alert('璇ョ敵璇锋病鏈夌鍚堟潯浠剁殑鍊熷嚭澶囧搧閰嶅涓�瑙堟槑缁嗭紒');
+ }
+ })
+ .catch(err=>{
+ this.dispatchEvent(new CloseActionScreenEvent());
+ console.log('init==='+err);
+ })
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexNewTransferApply/lexNewTransferApply.js-meta.xml b/force-app/main/default/lwc/lexNewTransferApply/lexNewTransferApply.js-meta.xml
new file mode 100644
index 0000000..74849f3
--- /dev/null
+++ b/force-app/main/default/lwc/lexNewTransferApply/lexNewTransferApply.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexOCMSubmit">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexOCMSubmit/lexOCMSubmit.css b/force-app/main/default/lwc/lexOCMSubmit/lexOCMSubmit.css
new file mode 100644
index 0000000..635bc6c
--- /dev/null
+++ b/force-app/main/default/lwc/lexOCMSubmit/lexOCMSubmit.css
@@ -0,0 +1,22 @@
+.outerBorderCss{
+ border: 1px solid #D4D4D4;
+ border-radius : 5px;
+ border-top : 3px solid #565959;
+}
+.borderCss{
+ border: 1px solid #D4D4D4;
+ border-radius : 5px;
+ margin-bottom : 7px;
+ border-top : 3px solid #565959;
+}
+.headerDorderCss{
+ border-top: 1px solid #565959;
+ border-bottom: 1px solid #D4D4D4;
+ padding:3px;
+}
+.centerCss{
+ text-align: center;
+}
+.centerCss .left{
+ margin-left: 100px;
+}/* sample css file */
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexOCMSubmit/lexOCMSubmit.html b/force-app/main/default/lwc/lexOCMSubmit/lexOCMSubmit.html
new file mode 100644
index 0000000..49a10f7
--- /dev/null
+++ b/force-app/main/default/lwc/lexOCMSubmit/lexOCMSubmit.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="sisToOPDHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexOCMSubmit/lexOCMSubmit.js b/force-app/main/default/lwc/lexOCMSubmit/lexOCMSubmit.js
new file mode 100644
index 0000000..814dd7b
--- /dev/null
+++ b/force-app/main/default/lwc/lexOCMSubmit/lexOCMSubmit.js
@@ -0,0 +1,133 @@
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { NavigationMixin } from 'lightning/navigation';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+import init from '@salesforce/apex/QISReportController.initForOCMSubmitButton';
+import updateQis from '@salesforce/apex/QISReportController.updateQisWithOCM';
+import UserInfo_Owner from '@salesforce/apex/TaskFeedbackController.UserInfo_Owner';
+import { updateRecord } from 'lightning/uiRecordApi';
+
+export default class lexOCMSubmit extends LightningElement {
+ @api recordId;
+ IsLoading = true;
+ qisReportId;
+ QISInstallDate;
+ qisStatus;
+ contractnumber;
+ isaohuiproduct;
+ err;
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback () {
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ this.IsLoading = false;
+ this.qisReportId = result.Id;
+ this.qisStatus = result.qIStatus;
+ this.QISInstallDate = result.qISInstallDate;
+ this.contractnumber = result.contractnumber;
+ this.isaohuiproduct = result.isaohuiproduct;
+ if (this.qisStatus!='鑽夋涓�' && this.qisStatus!='鍙栨秷') {
+ const evt = new ShowToastEvent({
+ title : '宸茬粡鎻愪氦',
+ message: '',
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }else{
+ if (this.qisStatus == '鍙栨秷') {
+ const evt = new ShowToastEvent({
+ title : '鍙栨秷鍚庣殑QIS涓嶅厑璁稿啀鎻愪氦锛屽鏋滈渶瑕佹彁浜よ鐐瑰嚮\"澶嶅埗\"鎸夐挳閲嶆柊鐢熸垚涓�涓猀IS',
+ message: '',
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ }
+
+ if (this.QISInstallDate == null) {
+ const evt = new ShowToastEvent({
+ title : '銆愯喘涔版棩鏈�/瀹夎鏃ユ湡銆戜负绌烘椂涓嶈兘鎻愪氦鐢宠',
+ message: '',
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+
+ if (this.contractnumber == null) {
+ const evt = new ShowToastEvent({
+ title : '銆愰攢鍞悎鍚屼笂璁㈠崟鍙风爜銆戜负绌烘椂涓嶈兘鎻愪氦鐢宠',
+ message: '',
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+
+ if (!confirm("涓�鏃︽彁浜ゆ璁板綍浠ュ緟鎵瑰噯锛屾牴鎹偍鐨勮缃偍鍙兘涓嶅啀鑳藉缂栬緫姝よ褰曟垨灏嗕粬浠庢壒鍑嗚繃绋嬩腑璋冨洖銆傛槸鍚︾户缁紵")) {
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ this.updateQisSubmit();
+ if (this.isaohuiproduct == 'true') {
+ this.dispatchEvent(new CloseActionScreenEvent());
+ this.updateRecordView(this.recordId);
+ }
+ this.dispatchEvent(new CloseActionScreenEvent());
+ this.updateRecordView(this.recordId);
+ }).catch(error => {
+ console.log('error='+error);
+ }).finally(() => {
+
+ });
+ }
+
+ updateRecordView(recordId) {
+ updateRecord({fields: { Id: recordId }});
+ }
+
+ updateQisSubmit(){
+ updateQis({
+ recordId: this.recordId
+ }).then(result =>{
+ console.log('result'+result);
+ if (result!='鎴愬姛') {
+ this.err = result;
+ const evt = new ShowToastEvent({
+ title : '鏇存柊澶辫触',
+ message: this.err,
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+ }
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }).catch(error => {
+ console.log('error='+error);
+ }).finally(() => {
+
+ });
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexOCMSubmit/lexOCMSubmit.js-meta.xml b/force-app/main/default/lwc/lexOCMSubmit/lexOCMSubmit.js-meta.xml
new file mode 100644
index 0000000..74849f3
--- /dev/null
+++ b/force-app/main/default/lwc/lexOCMSubmit/lexOCMSubmit.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexOCMSubmit">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexOCSMNoToReport/lexOCSMNoToReport.css b/force-app/main/default/lwc/lexOCSMNoToReport/lexOCSMNoToReport.css
new file mode 100644
index 0000000..db763d9
--- /dev/null
+++ b/force-app/main/default/lwc/lexOCSMNoToReport/lexOCSMNoToReport.css
@@ -0,0 +1,10 @@
+.toReportHolder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+.container .uiContainerManager{
+ display: none !important;
+}/* sample css file */
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexOCSMNoToReport/lexOCSMNoToReport.html b/force-app/main/default/lwc/lexOCSMNoToReport/lexOCSMNoToReport.html
new file mode 100644
index 0000000..d044dbb
--- /dev/null
+++ b/force-app/main/default/lwc/lexOCSMNoToReport/lexOCSMNoToReport.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="exampleHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexOCSMNoToReport/lexOCSMNoToReport.js b/force-app/main/default/lwc/lexOCSMNoToReport/lexOCSMNoToReport.js
new file mode 100644
index 0000000..fedeb3d
--- /dev/null
+++ b/force-app/main/default/lwc/lexOCSMNoToReport/lexOCSMNoToReport.js
@@ -0,0 +1,82 @@
+import {
+ LightningElement,
+ wire,
+ api
+} from 'lwc';
+import {
+ CurrentPageReference
+} from "lightning/navigation";
+import {
+ CloseActionScreenEvent
+} from 'lightning/actions';
+import init from '@salesforce/apex/otherButtonRepairController.init';
+
+export default class LexOCSMNoToReport extends LightningElement {
+ @api recordId;
+ str;
+ IsLoading = true;
+ Id;
+ OCSMAdministrativeReportNumberC;
+ OCSMAdministrativeReportDateC;
+ AwareDateC;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback() {
+ console.log(this.recordId);
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result);
+ if (result != null) {
+ this.IsLoading = false;
+ this.OCSMAdministrativeReportNumberC = result.Id;
+ this.OCSMAdministrativeReportDateC = result.OCSMAdministrativeReportDateC;
+ this.AwareDateC = result.AwareDateC;
+ this.Id = result.Id;
+
+ this.OCSMNoToReport();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ }).catch(error => {
+ console.log(error);
+ }).finally(() => {
+
+ });
+ }
+
+ OCSMNoToReport() {
+ if (!confirm("涓嶈鎶ュ憡鍚庢棤娉曟挙鍥烇紝鏄惁缁х画锛�")) {
+ return;
+ }
+ if (this.OCSMAdministrativeReportNumberC != "" ||
+ this.OCSMAdministrativeReportDateC != "") {
+ alert("宸茬粡鎶ュ憡鐨凲IS锛屼笉鍙互鐐瑰嚮OCSM涓嶈鎶ュ憡銆�");
+ return;
+ }
+ if (this.AwareDateC != "") {
+ var updateRe = new sforce.SObject("Repair__c");
+ updateRe.id = this.Id;
+ updateRe.OCSMAdministrativeReportStatus__c = '鏃犻渶鎶ュ憡';
+ var result = sforce.connection.update([updateRe]);
+ var messages = getConnectDMLErrorMessages(result);
+ if (messages.length > 0) {
+ alert(messages.join("\n"));
+ return;
+ }
+ window.location.reload();
+ } else {
+ alert("娌℃湁AwareDate鎴栧凡缁廜CSM琛屾斂鎶ュ憡锛岃纭銆�");
+ return;
+ }
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexOCSMNoToReport/lexOCSMNoToReport.js-meta.xml b/force-app/main/default/lwc/lexOCSMNoToReport/lexOCSMNoToReport.js-meta.xml
new file mode 100644
index 0000000..3392981
--- /dev/null
+++ b/force-app/main/default/lwc/lexOCSMNoToReport/lexOCSMNoToReport.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexOCSMNoToReportForReport/lexOCSMNoToReportForReport.html b/force-app/main/default/lwc/lexOCSMNoToReportForReport/lexOCSMNoToReportForReport.html
new file mode 100644
index 0000000..38c9114
--- /dev/null
+++ b/force-app/main/default/lwc/lexOCSMNoToReportForReport/lexOCSMNoToReportForReport.html
@@ -0,0 +1,6 @@
+<template>
+ <div class="reportHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ <lightning-button label="Show Toast" onclick={ShowToastEvent}></lightning-button>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexOCSMNoToReportForReport/lexOCSMNoToReportForReport.js b/force-app/main/default/lwc/lexOCSMNoToReportForReport/lexOCSMNoToReportForReport.js
new file mode 100644
index 0000000..b4a883a
--- /dev/null
+++ b/force-app/main/default/lwc/lexOCSMNoToReportForReport/lexOCSMNoToReportForReport.js
@@ -0,0 +1,100 @@
+/*
+ * @Description:
+ * @version:
+ * @Author: chen jing wu
+ * @Date: 2023-03-28 15:59:44
+ * @LastEditors: chen jing wu
+ * @LastEditTime: 2023-04-11 11:24:51
+ */
+import { api, wire,LightningElement } from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import init from '@salesforce/apex/ReportController.initForOCSMNoToReportButton';
+import updateForOCSMNoToReportButton from '@salesforce/apex/ReportController.updateForOCSMNoToReportButton';
+import { updateRecord } from 'lightning/uiRecordApi';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+export default class LexOCSMNoToReportForReport extends LightningElement {
+ @api recordId;
+ IsLoading = true;
+ OCSMAdministrativeReportNumber;
+ OCSMAdministrativeReportDate;
+ AwareDate;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+
+
+
+
+ connectedCallback(){
+ console.log("123");
+ init({
+ recordId: this.recordId
+ }).then(result=>{
+ console.log(result);
+ this.OCSMAdministrativeReportDate = result.OCSMAdministrativeReportDate;
+ this.OCSMAdministrativeReportNumber = result.OCSMAdministrativeReportNumber;
+ this.AwareDate = result.awareDate;
+ this.noToReport();
+ }).catch(error=>{
+ console.log(error);
+ });
+ }
+
+
+ updateRecordView(recordId) {
+ updateRecord({fields: { Id: recordId }});
+ }
+
+ showToast(msg,type) {
+ const event = new ShowToastEvent({
+ title: '',
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ }
+
+ noToReport(){
+ if (!confirm("涓嶈鎶ュ憡鍚庢棤娉曟挙鍥烇紝鏄惁缁х画锛�")) {
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ if(this.OCSMAdministrativeReportNumber != undefined || this.OCSMAdministrativeReportDate != undefined ){
+ this.showToast("宸茬粡鎶ュ憡鐨凲IS锛屼笉鍙互鐐瑰嚮OCSM涓嶈鎶ュ憡銆�","error");
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ if(this.AwareDate != undefined ){
+ updateForOCSMNoToReportButton({
+ recordId: this.recordId
+ }).then(result=>{
+ if(result){
+ this.showToast(result,"error");
+ }else{
+ this.showToast("OCSM涓嶈鎶ュ憡鎴愬姛","success");
+ this.updateRecordView(this.recordId);
+ this.IsLoading = false;
+ }
+ this.dispatchEvent(new CloseActionScreenEvent());
+ });
+ }else{
+ this.showToast("娌℃湁AwareDate鎴栧凡缁廜CSM琛屾斂鎶ュ憡锛岃纭銆�","error");
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexOCSMNoToReportForReport/lexOCSMNoToReportForReport.js-meta.xml b/force-app/main/default/lwc/lexOCSMNoToReportForReport/lexOCSMNoToReportForReport.js-meta.xml
new file mode 100644
index 0000000..3392981
--- /dev/null
+++ b/force-app/main/default/lwc/lexOCSMNoToReportForReport/lexOCSMNoToReportForReport.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexOCSMNoToReportLighting/lexOCSMNoToReportLighting.css b/force-app/main/default/lwc/lexOCSMNoToReportLighting/lexOCSMNoToReportLighting.css
new file mode 100644
index 0000000..79456f2
--- /dev/null
+++ b/force-app/main/default/lwc/lexOCSMNoToReportLighting/lexOCSMNoToReportLighting.css
@@ -0,0 +1,22 @@
+.outerBorderCss{
+ border: 1px solid #D4D4D4;
+ border-radius : 5px;
+ border-top : 3px solid #565959;
+}
+.borderCss{
+ border: 1px solid #D4D4D4;
+ border-radius : 5px;
+ margin-bottom : 7px;
+ border-top : 3px solid #565959;
+}
+.headerDorderCss{
+ border-top: 1px solid #565959;
+ border-bottom: 1px solid #D4D4D4;
+ padding:3px;
+}
+.centerCss{
+ text-align: center;
+}
+.centerCss .left{
+ margin-left: 100px;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexOCSMNoToReportLighting/lexOCSMNoToReportLighting.html b/force-app/main/default/lwc/lexOCSMNoToReportLighting/lexOCSMNoToReportLighting.html
new file mode 100644
index 0000000..c8bdbfc
--- /dev/null
+++ b/force-app/main/default/lwc/lexOCSMNoToReportLighting/lexOCSMNoToReportLighting.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="sisToOPDHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexOCSMNoToReportLighting/lexOCSMNoToReportLighting.js b/force-app/main/default/lwc/lexOCSMNoToReportLighting/lexOCSMNoToReportLighting.js
new file mode 100644
index 0000000..2c3c93c
--- /dev/null
+++ b/force-app/main/default/lwc/lexOCSMNoToReportLighting/lexOCSMNoToReportLighting.js
@@ -0,0 +1,105 @@
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { NavigationMixin } from 'lightning/navigation';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+import init from '@salesforce/apex/QISReportController.initForlexOCSMNoToReportLightingButton';
+import updateQis from '@salesforce/apex/QISReportController.updateQisForlexOCSMNoToReportLighting';
+import UserInfo_Owner from '@salesforce/apex/TaskFeedbackController.UserInfo_Owner';
+import { updateRecord } from 'lightning/uiRecordApi';
+
+export default class lexOCSMNoToReportLighting extends LightningElement {
+ @api recordId;
+ IsLoading = true;
+ qisReportId;
+ OCSMAdministrativeReportNumber;
+ OCSMAdministrativeReportDate;
+ Awaredate;
+ err;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback () {
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ this.IsLoading = false;
+ this.OCSMAdministrativeReportNumber = result.oCSMAdministrativeReportNumber;
+ this.OCSMAdministrativeReportDate = result.oCSMAdministrativeReportDate;
+ this.qisReportId = result.Id;
+ this.Awaredate = result.awaredate;
+ if (!confirm("涓嶈鎶ュ憡鍚庢棤娉曟挙鍥烇紝鏄惁缁х画锛�")) {
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ if (this.OCSMAdministrativeReportDate != null || this.OCSMAdministrativeReportNumber != null) {
+ const evt = new ShowToastEvent({
+ title : '宸茬粡鎶ュ憡鐨凲IS锛屼笉鍙互鐐瑰嚮OCSM涓嶈鎶ュ憡',
+ message: '',
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ if (this.Awaredate!=null) {
+ this.updateQisSubmit();
+ }else{
+ const evt = new ShowToastEvent({
+ title : '娌℃湁AwareDate鎴栧凡缁廜CSM琛屾斂鎶ュ憡锛岃纭',
+ message: '',
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ }).catch(error => {
+ console.log('error='+error);
+ }).finally(() => {
+
+ });
+ }
+
+ updateRecordView(recordId) {
+ updateRecord({fields: { Id: recordId }});
+ }
+
+ updateQisSubmit(){
+ updateQis({
+ recordId: this.recordId
+ }).then(result =>{
+ console.log('result'+result);
+ this.err = result;
+ if (result!='鎴愬姛') {
+ const evt = new ShowToastEvent({
+ title : '鏇存柊澶辫触',
+ message: this.err,
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+ }
+ this.dispatchEvent(new CloseActionScreenEvent());
+ this.updateRecordView(this.recordId);
+ }).catch(error => {
+ console.log('error='+error);
+ }).finally(() => {
+
+ });
+ }
+
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexOCSMNoToReportLighting/lexOCSMNoToReportLighting.js-meta.xml b/force-app/main/default/lwc/lexOCSMNoToReportLighting/lexOCSMNoToReportLighting.js-meta.xml
new file mode 100644
index 0000000..791ff80
--- /dev/null
+++ b/force-app/main/default/lwc/lexOCSMNoToReportLighting/lexOCSMNoToReportLighting.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexOCSMNoToReportLighting">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexOCSMNoToReportRepair/lexOCSMNoToReportRepair.html b/force-app/main/default/lwc/lexOCSMNoToReportRepair/lexOCSMNoToReportRepair.html
new file mode 100644
index 0000000..87f391a
--- /dev/null
+++ b/force-app/main/default/lwc/lexOCSMNoToReportRepair/lexOCSMNoToReportRepair.html
@@ -0,0 +1,6 @@
+<template>
+ <div class="exampleHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ <lightning-button label="Show Toast" onclick={ShowToastEvent}></lightning-button>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexOCSMNoToReportRepair/lexOCSMNoToReportRepair.js b/force-app/main/default/lwc/lexOCSMNoToReportRepair/lexOCSMNoToReportRepair.js
new file mode 100644
index 0000000..44ef2be
--- /dev/null
+++ b/force-app/main/default/lwc/lexOCSMNoToReportRepair/lexOCSMNoToReportRepair.js
@@ -0,0 +1,102 @@
+import {
+ LightningElement,
+ wire,
+ api
+} from 'lwc';
+import {
+ CurrentPageReference
+} from "lightning/navigation";
+import {
+ CloseActionScreenEvent
+} from 'lightning/actions';
+import init from '@salesforce/apex/otherButtonRepairController.init';
+import updateRepair from '@salesforce/apex/otherButtonRepairController.updateRepair';
+import {
+ ShowToastEvent
+} from 'lightning/platformShowToastEvent';
+
+export default class LexOCSMNoToReportRepair extends LightningElement {
+ @api recordId;
+ str;
+ IsLoading = true;
+ Id;;
+ OCSMAdministrativeReportNumberC;
+ OCSMAdministrativeReportDateC;
+ AwareDateC;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback() {
+ console.log(this.recordId);
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result);
+ if (result != null) {
+ this.IsLoading = false;
+ this.Id = result.Id;
+ this.OCSMAdministrativeReportNumberC = result.OCSMAdministrativeReportNumberC;
+ this.OCSMAdministrativeReportDateC = result.OCSMAdministrativeReportDateC;
+ this.AwareDateC = result.AwareDateC;
+
+ this.OCSMNoToReport();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ }).catch(error => {
+ console.log(error);
+ }).finally(() => {
+
+ });
+ }
+
+ // OCSM涓嶈鎶ュ憡
+ OCSMNoToReport() {
+ if (!confirm("涓嶈鎶ュ憡鍚庢棤娉曟挙鍥烇紝鏄惁缁х画锛�")) {
+ return;
+ }
+
+ if (this.OCSMAdministrativeReportNumberC != undefined ||
+ this.OCSMAdministrativeReportDateC != undefined) {
+ this.ShowToastEvent("宸茬粡鎶ュ憡鐨凲IS锛屼笉鍙互鐐瑰嚮OCSM涓嶈鎶ュ憡銆�", "error")
+ // alert("宸茬粡鎶ュ憡鐨凲IS锛屼笉鍙互鐐瑰嚮OCSM涓嶈鎶ュ憡銆�");
+ return;
+ }
+
+ if (this.AwareDateC != undefined) {
+ updateRepair({
+ recordId: this.Id
+ }).catch(error => {
+ if (error.body.pageErrors.length > 0) {
+ var errmsg = error.body.pageErrors[0].message.toString();
+ this.ShowToastEvent(errmsg.join("\n"), "error")
+ // alert(errmsg.join("\n"));
+ return;
+ }
+ })
+ window.location.reload();
+ } else {
+ this.ShowToastEvent("娌℃湁AwareDate鎴栧凡缁廜CSM琛屾斂鎶ュ憡锛岃纭銆�", "error")
+ // alert("娌℃湁AwareDate鎴栧凡缁廜CSM琛屾斂鎶ュ憡锛岃纭銆�");
+ return;
+ }
+ }
+
+ // 寮圭獥
+ ShowToastEvent(msg, type) {
+ const event = new ShowToastEvent({
+ title: '',
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexOCSMNoToReportRepair/lexOCSMNoToReportRepair.js-meta.xml b/force-app/main/default/lwc/lexOCSMNoToReportRepair/lexOCSMNoToReportRepair.js-meta.xml
new file mode 100644
index 0000000..3392981
--- /dev/null
+++ b/force-app/main/default/lwc/lexOCSMNoToReportRepair/lexOCSMNoToReportRepair.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexOCSMNogoods/lexOCSMNogoods.css b/force-app/main/default/lwc/lexOCSMNogoods/lexOCSMNogoods.css
new file mode 100644
index 0000000..635bc6c
--- /dev/null
+++ b/force-app/main/default/lwc/lexOCSMNogoods/lexOCSMNogoods.css
@@ -0,0 +1,22 @@
+.outerBorderCss{
+ border: 1px solid #D4D4D4;
+ border-radius : 5px;
+ border-top : 3px solid #565959;
+}
+.borderCss{
+ border: 1px solid #D4D4D4;
+ border-radius : 5px;
+ margin-bottom : 7px;
+ border-top : 3px solid #565959;
+}
+.headerDorderCss{
+ border-top: 1px solid #565959;
+ border-bottom: 1px solid #D4D4D4;
+ padding:3px;
+}
+.centerCss{
+ text-align: center;
+}
+.centerCss .left{
+ margin-left: 100px;
+}/* sample css file */
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexOCSMNogoods/lexOCSMNogoods.html b/force-app/main/default/lwc/lexOCSMNogoods/lexOCSMNogoods.html
new file mode 100644
index 0000000..49a10f7
--- /dev/null
+++ b/force-app/main/default/lwc/lexOCSMNogoods/lexOCSMNogoods.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="sisToOPDHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexOCSMNogoods/lexOCSMNogoods.js b/force-app/main/default/lwc/lexOCSMNogoods/lexOCSMNogoods.js
new file mode 100644
index 0000000..f7be272
--- /dev/null
+++ b/force-app/main/default/lwc/lexOCSMNogoods/lexOCSMNogoods.js
@@ -0,0 +1,101 @@
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { NavigationMixin } from 'lightning/navigation';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+import { updateRecord } from 'lightning/uiRecordApi';
+import init from '@salesforce/apex/QISReportController.initForlexRCRecievedButton';
+import updateQis from '@salesforce/apex/QISReportController.updateQisForRCRecieved';
+
+export default class lexOCSMNogoods extends LightningElement {
+ @api recordId;
+ err;
+ IsLoading = true;
+ qisReportId;
+ qisStatus;
+ isAEProfile;
+ isCNBuy;
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback () {
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ this.IsLoading = false;
+ this.qisReportId = result.Id;
+ this.qisStatus = result.qIStatus;
+ this.isAEProfile = result.isAEProfile;
+ this.isCNBuy = result.isCNBuy;
+ console.log('this.qisStatus='+this.qisStatus);
+ if (this.qisStatus!='RC妫�娴嬬敵璇�') {
+ const evt = new ShowToastEvent({
+ title : 'OCM鏈嶅姟鏈儴宸茬粡鏀跺埌瀹炵墿',
+ message: '',
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }else{
+ if (this.isAEProfile == null || this.isPAEProfile == null || this.isCNBuy != 'true') {
+ const evt = new ShowToastEvent({
+ title : '瀹夊叏淇℃伅鏈垽瀹氾紝璇疯仈绯昏川閲忔硶瑙勯儴',
+ message: '',
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }else{
+ this.updateQisSubmit();
+ }
+ }
+ }).catch(error => {
+ console.log('error='+error);
+ }).finally(() => {
+
+ });
+ }
+
+ updateRecordView(recordId) {
+ updateRecord({fields: { Id: recordId }});
+ }
+
+ updateQisSubmit(){
+ updateQis({
+ recordId: this.recordId
+ }).then(result =>{
+
+ console.log('result'+result);
+ this.err = result;
+ if (result!='鎴愬姛') {
+ const evt = new ShowToastEvent({
+ title : '鏇存柊澶辫触',
+ message: this.err,
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+ }
+ this.dispatchEvent(new CloseActionScreenEvent());
+ this.updateRecordView(this.recordId);
+ }).catch(error => {
+ console.log('error='+error);
+ }).finally(() => {
+
+ });
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexOCSMNogoods/lexOCSMNogoods.js-meta.xml b/force-app/main/default/lwc/lexOCSMNogoods/lexOCSMNogoods.js-meta.xml
new file mode 100644
index 0000000..7881cfb
--- /dev/null
+++ b/force-app/main/default/lwc/lexOCSMNogoods/lexOCSMNogoods.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexOCSMNogoods">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexOCSMToReport/lexOCSMToReport.css b/force-app/main/default/lwc/lexOCSMToReport/lexOCSMToReport.css
new file mode 100644
index 0000000..ecc934d
--- /dev/null
+++ b/force-app/main/default/lwc/lexOCSMToReport/lexOCSMToReport.css
@@ -0,0 +1,10 @@
+.toReportHolder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+.container .uiContainerManager{
+ display: none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexOCSMToReport/lexOCSMToReport.html b/force-app/main/default/lwc/lexOCSMToReport/lexOCSMToReport.html
new file mode 100644
index 0000000..aaa4cbd
--- /dev/null
+++ b/force-app/main/default/lwc/lexOCSMToReport/lexOCSMToReport.html
@@ -0,0 +1,6 @@
+<template>
+ <div class="toReportHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ <lightning-button label="Show Toast" onclick={ShowToastEvent}></lightning-button>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexOCSMToReport/lexOCSMToReport.js b/force-app/main/default/lwc/lexOCSMToReport/lexOCSMToReport.js
new file mode 100644
index 0000000..a7d8d5f
--- /dev/null
+++ b/force-app/main/default/lwc/lexOCSMToReport/lexOCSMToReport.js
@@ -0,0 +1,97 @@
+/*
+ * @Description:
+ * @version:
+ * @Author: chen jing wu
+ * @Date: 2023-04-07 09:02:03
+ * @LastEditors: chen jing wu
+ * @LastEditTime: 2023-04-11 11:26:11
+ */
+import { api, wire,LightningElement } from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import init from '@salesforce/apex/ReportController.initForOCSMToReportButton';
+import updateForOCSMToReportButton from '@salesforce/apex/ReportController.updateForOCSMToReportButton';
+import { updateRecord } from 'lightning/uiRecordApi';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+export default class LexOCSMToReport extends LightningElement {
+ @api recordId;
+ IsLoading = true;
+ OCSMAdministrativeReportStatus;
+ awareDate;
+
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback(){
+ console.log(this.recordId);
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result);
+ if (result != null) {
+ this.OCSMAdministrativeReportStatus = result.OCSMAdministrativeReportStatus;
+ this.awareDate = result.awareDate;
+ this.toReport();
+ }
+ }).catch(error => {
+ console.log("error");
+ console.log(error);
+ });
+
+ }
+
+
+ showToast(msg,type) {
+ const event = new ShowToastEvent({
+ title: '',
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ }
+
+
+ updateRecordView(recordId) {
+ updateRecord({fields: { Id: recordId }});
+ }
+
+ toReport () {
+ if (!confirm("鎶ュ憡鍚庢棤娉曟挙鍥烇紝鏄惁缁х画锛�")) {
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+
+ if(this.OCSMAdministrativeReportStatus == undefined && this.awareDate != undefined ){
+ updateForOCSMToReportButton({
+ recordId: this.recordId
+ }).then(result =>{
+ if(result){
+ this.showToast(result,"error");
+ }else{
+ this.showToast("鎴愬姛","success");
+ this.updateRecordView(this.recordId);
+ this.IsLoading = false;
+ }
+ this.dispatchEvent(new CloseActionScreenEvent());
+ });
+ }else{
+ this.showToast("娌℃湁AwareDate鎴栧凡缁廜CSM琛屾斂鎶ュ憡锛岃纭銆�","error");
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexOCSMToReport/lexOCSMToReport.js-meta.xml b/force-app/main/default/lwc/lexOCSMToReport/lexOCSMToReport.js-meta.xml
new file mode 100644
index 0000000..3392981
--- /dev/null
+++ b/force-app/main/default/lwc/lexOCSMToReport/lexOCSMToReport.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexOCSMToReportLighting/lexOCSMToReportLighting.css b/force-app/main/default/lwc/lexOCSMToReportLighting/lexOCSMToReportLighting.css
new file mode 100644
index 0000000..0ca9d8e
--- /dev/null
+++ b/force-app/main/default/lwc/lexOCSMToReportLighting/lexOCSMToReportLighting.css
@@ -0,0 +1,10 @@
+.toReportHolder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+.container .uiContainerManager{
+ display: none !important;
+}/* sample css file *//* sample css file */
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexOCSMToReportLighting/lexOCSMToReportLighting.html b/force-app/main/default/lwc/lexOCSMToReportLighting/lexOCSMToReportLighting.html
new file mode 100644
index 0000000..c8bdbfc
--- /dev/null
+++ b/force-app/main/default/lwc/lexOCSMToReportLighting/lexOCSMToReportLighting.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="sisToOPDHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexOCSMToReportLighting/lexOCSMToReportLighting.js b/force-app/main/default/lwc/lexOCSMToReportLighting/lexOCSMToReportLighting.js
new file mode 100644
index 0000000..fe89267
--- /dev/null
+++ b/force-app/main/default/lwc/lexOCSMToReportLighting/lexOCSMToReportLighting.js
@@ -0,0 +1,89 @@
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { NavigationMixin } from 'lightning/navigation';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+import init from '@salesforce/apex/QISReportController.initForlexOCSMToReportLightingButton';
+import updateQis from '@salesforce/apex/QISReportController.updateQisForlexOCSMToReportLighting';
+import UserInfo_Owner from '@salesforce/apex/TaskFeedbackController.UserInfo_Owner';
+import { updateRecord } from 'lightning/uiRecordApi';
+
+export default class lexOCSMToReportLighting extends LightningElement {
+ @api recordId;
+ str;
+ err;
+ IsLoading = true;
+ qisReportId;
+ OCSMAdministrativeReportStatus;
+ Awaredate;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback() {
+ console.log(this.recordId);
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result);
+ this.IsLoading = false;
+ this.OCSMAdministrativeReportStatus = result.oCSMAdministrativeReportStatus;
+ this.qisReportId = result.Id;
+ this.Awaredate = result.awaredate;
+ if (!confirm("涓嶈鎶ュ憡鍚庢棤娉曟挙鍥烇紝鏄惁缁х画锛�")) {
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ if (this.OCSMAdministrativeReportStatus == null && this.Awaredate!=null) {
+ this.updateQisSubmit();
+ }else{
+ const evt = new ShowToastEvent({
+ title : '娌℃湁AwareDate鎴栧凡缁廜CSM琛屾斂鎶ュ憡锛岃纭',
+ message: '',
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ }).catch(error => {
+ console.log(error);
+ }).finally(() => {
+
+ });
+ }
+ updateRecordView(recordId) {
+ updateRecord({fields: { Id: recordId }});
+ }
+
+ updateQisSubmit(){
+ updateQis({
+ recordId: this.recordId
+ }).then(result =>{
+ console.log('result'+result);
+ this.err = result;
+ if (result!='鎴愬姛') {
+ const evt = new ShowToastEvent({
+ title : '鏇存柊澶辫触',
+ message: this.err,
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+ }
+ this.dispatchEvent(new CloseActionScreenEvent());
+ this.updateRecordView(this.recordId);
+ }).catch(error => {
+ console.log('error='+error);
+ }).finally(() => {
+
+ });
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexOCSMToReportLighting/lexOCSMToReportLighting.js-meta.xml b/force-app/main/default/lwc/lexOCSMToReportLighting/lexOCSMToReportLighting.js-meta.xml
new file mode 100644
index 0000000..b0e1001
--- /dev/null
+++ b/force-app/main/default/lwc/lexOCSMToReportLighting/lexOCSMToReportLighting.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexOCSMToReportLighting">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexOCSMToReportRepair/lexOCSMToReportRepair.html b/force-app/main/default/lwc/lexOCSMToReportRepair/lexOCSMToReportRepair.html
new file mode 100644
index 0000000..87f391a
--- /dev/null
+++ b/force-app/main/default/lwc/lexOCSMToReportRepair/lexOCSMToReportRepair.html
@@ -0,0 +1,6 @@
+<template>
+ <div class="exampleHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ <lightning-button label="Show Toast" onclick={ShowToastEvent}></lightning-button>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexOCSMToReportRepair/lexOCSMToReportRepair.js b/force-app/main/default/lwc/lexOCSMToReportRepair/lexOCSMToReportRepair.js
new file mode 100644
index 0000000..40ebdc3
--- /dev/null
+++ b/force-app/main/default/lwc/lexOCSMToReportRepair/lexOCSMToReportRepair.js
@@ -0,0 +1,92 @@
+import {
+ LightningElement,
+ wire,
+ api
+} from 'lwc';
+import {
+ CurrentPageReference
+} from "lightning/navigation";
+import {
+ CloseActionScreenEvent
+} from 'lightning/actions';
+import init from '@salesforce/apex/otherButtonRepairController.init';
+import updateRepair from '@salesforce/apex/otherButtonRepairController.updateRepair';
+import {
+ ShowToastEvent
+} from 'lightning/platformShowToastEvent';
+
+
+export default class LexOCSMToReportRepair extends LightningElement {
+ @api recordId;
+ str;
+ IsLoading = true;
+ Id;
+ AwareDateC;
+ OCSMAdministrativeReportStatusC;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback() {
+ console.log(this.recordId);
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result);
+ if (result != null) {
+ this.IsLoading = false;
+ this.Id = result.Id;
+ this.AwareDateC = result.AwareDateC;
+ this.OCSMAdministrativeReportStatusC = result.OCSMAdministrativeReportStatusC;
+
+ this.OCSMToReport();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ }).catch(error => {
+ console.log(error);
+ }).finally(() => {
+
+ });
+ }
+
+ // OCSM瑕佹姤鍛�
+ OCSMToReport() {
+ if (!confirm("鎶ュ憡鍚庢棤娉曟挙鍥烇紝鏄惁缁х画锛�")) {
+ return;
+ }
+ if (this.OCSMAdministrativeReportStatusC == undefined && this.AwareDateC != undefined) {
+ updateRepair({
+ recordId: this.Id
+ }).catch(error => {
+ if (error.body.pageErrors.length > 0) {
+ // alert(messages.join("\n"));
+ var errmsg = error.body.pageErrors[0].message.toString();
+ this.ShowToastEvent(errmsg.join("\n"), "error")
+ return;
+ }
+ })
+ window.location.reload();
+ } else {
+ this.ShowToastEvent("娌℃湁AwareDate鎴栧凡缁廜CSM琛屾斂鎶ュ憡锛岃纭銆�", "error")
+ return;
+ }
+ }
+
+ // 寮圭獥
+ ShowToastEvent(msg, type) {
+ const event = new ShowToastEvent({
+ title: '',
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexOCSMToReportRepair/lexOCSMToReportRepair.js-meta.xml b/force-app/main/default/lwc/lexOCSMToReportRepair/lexOCSMToReportRepair.js-meta.xml
new file mode 100644
index 0000000..3392981
--- /dev/null
+++ b/force-app/main/default/lwc/lexOCSMToReportRepair/lexOCSMToReportRepair.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexOLYwinBid/lexOLYwinBid.css b/force-app/main/default/lwc/lexOLYwinBid/lexOLYwinBid.css
new file mode 100644
index 0000000..a9b43eb
--- /dev/null
+++ b/force-app/main/default/lwc/lexOLYwinBid/lexOLYwinBid.css
@@ -0,0 +1,10 @@
+.lexOLYwinBidHolder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+.container .uiContainerManager{
+ display: none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexOLYwinBid/lexOLYwinBid.html b/force-app/main/default/lwc/lexOLYwinBid/lexOLYwinBid.html
new file mode 100644
index 0000000..cdbdc27
--- /dev/null
+++ b/force-app/main/default/lwc/lexOLYwinBid/lexOLYwinBid.html
@@ -0,0 +1,6 @@
+<template>
+ <div class="lexOLYwinBidHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ <lightning-button label="Show Toast" onclick={ShowToastEvent}></lightning-button>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexOLYwinBid/lexOLYwinBid.js b/force-app/main/default/lwc/lexOLYwinBid/lexOLYwinBid.js
new file mode 100644
index 0000000..3aa9239
--- /dev/null
+++ b/force-app/main/default/lwc/lexOLYwinBid/lexOLYwinBid.js
@@ -0,0 +1,97 @@
+/*
+ * @Description:
+ * @version:
+ * @Author: chen jing wu
+ * @Date: 2023-04-13 13:15:52
+ * @LastEditors: chen jing wu
+ * @LastEditTime: 2023-04-13 13:37:19
+ */
+import { api, wire,LightningElement } from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { updateRecord } from 'lightning/uiRecordApi';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+import init from '@salesforce/apex/OpportunityLightingButtonController.initForOLYwinBidButton';
+import updateForOLYwinBidButton from '@salesforce/apex/OpportunityLightingButtonController.updateForOLYwinBidButton';
+import queryForOLYwinBidButton from '@salesforce/apex/OpportunityLightingButtonController.queryForOLYwinBidButton';
+export default class LexOLYwinBid extends LightningElement {
+ @api recordId;
+ ifOpenBid;
+ IsLoading = true;
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+ connectedCallback(){
+ init({
+ recordId: this.recordId
+ }).then(result=>{
+ console.log(result);
+ this.ifOpenBid = result.ifOpenBid;
+ this.lexLoseBid();
+ }).catch(error=>{
+ console.log("error");
+ console.log(error);
+ })
+ }
+ lexLoseBid(){
+ console.log("query start");
+ queryForOLYwinBidButton({
+ recordId: this.recordId
+ }).then(result=>{
+ console.log("query end");
+ console.log(result);
+ var flag = true;
+ var taskslist = result;
+ for(var task of taskslist ){
+ if(task.taskStatus__c != '04 鍙栨秷'){
+ flag = false;
+ }
+ }
+ if(this.ifOpenBid == '闈炲叕寮�鎷涙爣'){
+ flag = false;
+ }
+
+ if(flag){
+ this.showToast("鏉′欢涓嶇鍚堬紝涓嶅彲鎿嶄綔","error");
+ }else{
+ if (window.confirm('鏄惁纭OLY涓爣锛�')) {
+ updateForOLYwinBidButton({
+ recordId: this.recordId
+ }).then(result=>{
+ if (result) {
+ this.showToast(result,"error");
+ }else{
+ this.IsLoading = false;
+ this.updateRecordView(this.recordId);
+ this.showToast("鎿嶄綔鎴愬姛锛�","success");
+ }
+ })
+ }
+ }
+ });
+ }
+ showToast(msg,type) {
+ const event = new ShowToastEvent({
+ title: '',
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ updateRecordView(recordId) {
+ updateRecord({fields: { Id: recordId }});
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexOLYwinBid/lexOLYwinBid.js-meta.xml b/force-app/main/default/lwc/lexOLYwinBid/lexOLYwinBid.js-meta.xml
new file mode 100644
index 0000000..3392981
--- /dev/null
+++ b/force-app/main/default/lwc/lexOLYwinBid/lexOLYwinBid.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexOPDtoSIS/lexOPDtoSIS.css b/force-app/main/default/lwc/lexOPDtoSIS/lexOPDtoSIS.css
new file mode 100644
index 0000000..2a3dbc5
--- /dev/null
+++ b/force-app/main/default/lwc/lexOPDtoSIS/lexOPDtoSIS.css
@@ -0,0 +1,10 @@
+.opdToSISHolder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+.container .uiContainerManager{
+ display: none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexOPDtoSIS/lexOPDtoSIS.html b/force-app/main/default/lwc/lexOPDtoSIS/lexOPDtoSIS.html
new file mode 100644
index 0000000..de73f87
--- /dev/null
+++ b/force-app/main/default/lwc/lexOPDtoSIS/lexOPDtoSIS.html
@@ -0,0 +1,6 @@
+<template>
+ <div class="opdToSISHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ <lightning-button label="Show Toast" onclick={ShowToastEvent}></lightning-button>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexOPDtoSIS/lexOPDtoSIS.js b/force-app/main/default/lwc/lexOPDtoSIS/lexOPDtoSIS.js
new file mode 100644
index 0000000..3d287d0
--- /dev/null
+++ b/force-app/main/default/lwc/lexOPDtoSIS/lexOPDtoSIS.js
@@ -0,0 +1,95 @@
+/*
+ * @Description:
+ * @version:
+ * @Author: chen jing wu
+ * @Date: 2023-04-07 09:02:03
+ * @LastEditors: chen jing wu
+ * @LastEditTime: 2023-04-11 11:27:14
+ */
+import { api, wire,LightningElement } from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import updateForOPDtoSISButton from '@salesforce/apex/ReportController.updateForOPDtoSISButton';
+import init from '@salesforce/apex/ReportController.initForOPDtoSISButton';
+import { updateRecord } from 'lightning/uiRecordApi';
+import UserInfo_Owner from '@salesforce/apex/TaskFeedbackController.UserInfo_Owner';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+
+export default class LexOPDtoSIS extends LightningElement {
+ @api recordId;
+ IsLoading = true;
+ ownerId;
+ status;
+ userId;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+
+
+ connectedCallback(){
+ console.log(this.recordId);
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result);
+ console.log("123");
+ if (result != null) {
+ this.ownerId = result.ownerId;
+ this.status = result.status;
+ this.userId = result.userId;
+ this.OPDtoSIS();
+ }
+ }).catch(error => {
+ console.log("error");
+ console.log(error);
+ });
+
+ }
+
+ showToast(msg,type) {
+ const event = new ShowToastEvent({
+ title: '',
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ }
+
+ updateRecordView(recordId) {
+ updateRecord({fields: { Id: recordId }});
+ }
+
+ OPDtoSIS () {
+ if(this.ownerId == this.userId && this.status == "鑽夋涓�") {
+ updateForOPDtoSISButton({
+ recordId: this.recordId
+ }).then(result =>{
+ if(result){
+ this.showToast(result,"error");
+ }else{
+ this.updateRecordView(this.recordId);
+ this.showToast("鎴愬姛锛�","success");
+ this.IsLoading = false;
+ }
+ this.dispatchEvent(new CloseActionScreenEvent());
+ });
+ } else {
+ this.showToast("鍙崏妗堜腑鐘舵�佸強OPD/SIS鎶ュ憡涔︾殑鎵�鏈変汉鍙互鎻愪氦","error");
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexOPDtoSIS/lexOPDtoSIS.js-meta.xml b/force-app/main/default/lwc/lexOPDtoSIS/lexOPDtoSIS.js-meta.xml
new file mode 100644
index 0000000..3392981
--- /dev/null
+++ b/force-app/main/default/lwc/lexOPDtoSIS/lexOPDtoSIS.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexOSHInspect/lexOSHInspect.css b/force-app/main/default/lwc/lexOSHInspect/lexOSHInspect.css
new file mode 100644
index 0000000..f708a55
--- /dev/null
+++ b/force-app/main/default/lwc/lexOSHInspect/lexOSHInspect.css
@@ -0,0 +1,10 @@
+.opdToSISHolder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+.container .uiContainerManager{
+ display: none !important;
+}/* sample css file */
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexOSHInspect/lexOSHInspect.html b/force-app/main/default/lwc/lexOSHInspect/lexOSHInspect.html
new file mode 100644
index 0000000..cc6a015
--- /dev/null
+++ b/force-app/main/default/lwc/lexOSHInspect/lexOSHInspect.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="opdToSISHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexOSHInspect/lexOSHInspect.js b/force-app/main/default/lwc/lexOSHInspect/lexOSHInspect.js
new file mode 100644
index 0000000..55e5142
--- /dev/null
+++ b/force-app/main/default/lwc/lexOSHInspect/lexOSHInspect.js
@@ -0,0 +1,100 @@
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { NavigationMixin } from 'lightning/navigation';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+import init from '@salesforce/apex/QISReportController.initForlexOSHInspectButton';
+import updateQis from '@salesforce/apex/QISReportController.updateQisForlexOSHInspect';
+import UserInfo_Owner from '@salesforce/apex/TaskFeedbackController.UserInfo_Owner';
+import { updateRecord } from 'lightning/uiRecordApi';
+
+export default class lexOSHInspect extends LightningElement {
+ @api recordId;
+ IsLoading = true;
+ qisReportId;
+ qisStatus;
+ oSHInspectionDate;
+ err;
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+
+
+ connectedCallback () {
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ this.IsLoading = false;
+ this.qisReportId = result.Id;
+ this.qisStatus = result.qIStatus;
+ this.oSHInspectionDate = result.oSHInspectionDate;
+ if (this.qisStatus!='OSH妫�娴嬩腑') {
+ const evt = new ShowToastEvent({
+ title : '闇�瑕佸厛鐐瑰嚮锛籓SH鐜板搧鏀跺埌锛�',
+ message: '',
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }else if(this.oSHInspectionDate != null){
+ const evt = new ShowToastEvent({
+ title : 'OSH妫�娴嬪凡缁忓彈鐞�',
+ message: '',
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }else{
+ this.updateQisSubmit();
+ }
+
+
+
+ }).catch(error => {
+ console.log('error='+error);
+ }).finally(() => {
+
+ });
+ }
+
+ updateRecordView(recordId) {
+ updateRecord({fields: { Id: recordId }});
+ }
+
+ updateQisSubmit(){
+ updateQis({
+ recordId: this.recordId
+ }).then(result =>{
+ console.log('result'+result);
+ if (result!='鎴愬姛') {
+ this.err = result;
+ const evt = new ShowToastEvent({
+ title : '鏇存柊澶辫触',
+ message: this.err,
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+ }
+ this.dispatchEvent(new CloseActionScreenEvent());
+ this.updateRecordView(this.recordId);
+ }).catch(error => {
+ console.log('error='+error);
+ }).finally(() => {
+
+ });
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexOSHInspect/lexOSHInspect.js-meta.xml b/force-app/main/default/lwc/lexOSHInspect/lexOSHInspect.js-meta.xml
new file mode 100644
index 0000000..220e747
--- /dev/null
+++ b/force-app/main/default/lwc/lexOSHInspect/lexOSHInspect.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexOSHInspect">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexOSHSubmit/lexOSHSubmit.css b/force-app/main/default/lwc/lexOSHSubmit/lexOSHSubmit.css
new file mode 100644
index 0000000..f708a55
--- /dev/null
+++ b/force-app/main/default/lwc/lexOSHSubmit/lexOSHSubmit.css
@@ -0,0 +1,10 @@
+.opdToSISHolder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+.container .uiContainerManager{
+ display: none !important;
+}/* sample css file */
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexOSHSubmit/lexOSHSubmit.html b/force-app/main/default/lwc/lexOSHSubmit/lexOSHSubmit.html
new file mode 100644
index 0000000..cc6a015
--- /dev/null
+++ b/force-app/main/default/lwc/lexOSHSubmit/lexOSHSubmit.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="opdToSISHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexOSHSubmit/lexOSHSubmit.js b/force-app/main/default/lwc/lexOSHSubmit/lexOSHSubmit.js
new file mode 100644
index 0000000..515ea3e
--- /dev/null
+++ b/force-app/main/default/lwc/lexOSHSubmit/lexOSHSubmit.js
@@ -0,0 +1,140 @@
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { NavigationMixin } from 'lightning/navigation';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+import init from '@salesforce/apex/QISReportController.initForOSHSubmitButton';
+import updateQis from '@salesforce/apex/QISReportController.updateQis1';
+import UserInfo_Owner from '@salesforce/apex/TaskFeedbackController.UserInfo_Owner';
+import { updateRecord } from 'lightning/uiRecordApi';
+export default class lexOSHSubmit extends LightningElement {
+ @api recordId;
+ IsLoading = true;
+ qisReportId;
+ qisStatus;
+ OSHstaff;
+ OSHstaffEmail;
+ err;
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+
+
+ connectedCallback () {
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ this.IsLoading = false;
+ this.qisReportId = result.Id;
+ this.qisStatus = result.qIStatus;
+ this.OSHstaff = result.oSHstaff;
+ this.OSHstaffEmail = result.oSHstaffEmail;
+ console.log('this.qisStatus='+this.qisStatus);
+ console.log('this.OSHstaff='+this.OSHstaff);
+ console.log('this.OSHstaffEmail='+this.OSHstaffEmail);
+ if (this.qisStatus=='OSH妫�娴嬬敵璇�' && this.qisStatus=='瀹屾瘯') {
+ const evt = new ShowToastEvent({
+ title : '闇�瑕佸厛鐐瑰嚮锛籓SH妫�鏌ュ彈鐞嗭冀',
+ message: '',
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ if (this.qisStatus!='OSH妫�娴嬩腑') {
+ const evt = new ShowToastEvent({
+ title : '宸茬粡鎻愪氦瀹℃壒',
+ message: '',
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ if (!confirm("涓�鏃︽彁浜ゆ璁板綍浠ュ緟鎵瑰噯锛屾牴鎹偍鐨勮缃偍鍙兘涓嶅啀鑳藉缂栬緫姝よ褰曟垨灏嗕粬浠庢壒鍑嗚繃绋嬩腑璋冨洖銆傛槸鍚︾户缁紵")) {
+ return;
+ }
+ if (this.OSHstaff==null||this.OSHstaffEmail==null) {
+ const evt = new ShowToastEvent({
+ title : 'OSH鎷呭綋蹇呴』濉啓',
+ message: '',
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ try{
+ this.updateQisSubmit();
+ }catch(err){
+ if(err.faultstring !=undefined && err.faultstring.indexOf('INVALID_SESSION_ID') != -1) {
+ const evt = new ShowToastEvent({
+ title : '褰撳墠缃戦〉宸茬櫥鍑猴紝璇锋偍閲嶆柊鐧诲綍鍚庡埛鏂拌缃戦〉锛�',
+ message: '',
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ } else {
+ const evt = new ShowToastEvent({
+ title : err.faultstring,
+ message: '',
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ return;
+ }
+
+ }).catch(error => {
+ console.log('error='+error);
+ }).finally(() => {
+
+ });
+ }
+
+ updateRecordView(recordId) {
+ updateRecord({fields: { Id: recordId }});
+ }
+
+ updateQisSubmit(){
+ updateQis({
+ recordId: this.recordId
+ }).then(result =>{
+ console.log('result'+result);
+ if (result!='鎴愬姛') {
+ this.err = result;
+ const evt = new ShowToastEvent({
+ title : '鏇存柊澶辫触',
+ message: this.err,
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+ }
+ this.dispatchEvent(new CloseActionScreenEvent());
+ this.updateRecordView(this.recordId);
+ }).catch(error => {
+ console.log('error='+error);
+ }).finally(() => {
+
+ });
+ }
+
+
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexOSHSubmit/lexOSHSubmit.js-meta.xml b/force-app/main/default/lwc/lexOSHSubmit/lexOSHSubmit.js-meta.xml
new file mode 100644
index 0000000..a17e350
--- /dev/null
+++ b/force-app/main/default/lwc/lexOSHSubmit/lexOSHSubmit.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexOSHSubmit">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexPDFMaintenanceCommission/lexPDFMaintenanceCommission.html b/force-app/main/default/lwc/lexPDFMaintenanceCommission/lexPDFMaintenanceCommission.html
new file mode 100644
index 0000000..d044dbb
--- /dev/null
+++ b/force-app/main/default/lwc/lexPDFMaintenanceCommission/lexPDFMaintenanceCommission.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="exampleHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexPDFMaintenanceCommission/lexPDFMaintenanceCommission.js b/force-app/main/default/lwc/lexPDFMaintenanceCommission/lexPDFMaintenanceCommission.js
new file mode 100644
index 0000000..3f5d7bb
--- /dev/null
+++ b/force-app/main/default/lwc/lexPDFMaintenanceCommission/lexPDFMaintenanceCommission.js
@@ -0,0 +1,54 @@
+import {
+ LightningElement,
+ wire,
+ api
+} from 'lwc';
+import {
+ CurrentPageReference
+} from "lightning/navigation";
+import {
+ CloseActionScreenEvent
+} from 'lightning/actions';
+import init from '@salesforce/apex/otherButtonRepairController.init';
+export default class LexPDFMaintenanceCommission extends LightningElement {
+ @api recordId;
+ str;
+ IsLoading = true;
+ Id;;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback() {
+ console.log(this.recordId);
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result);
+ if (result != null) {
+ this.IsLoading = false;
+ this.Id = result.Id;
+
+ this.PDFMaintenanceCommission();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ }).catch(error => {
+ console.log(error);
+ }).finally(() => {
+
+ });
+ }
+
+ // 鎵撳嵃缁翠慨濮旀墭涔�
+ PDFMaintenanceCommission() {
+ window.open('/apex/MaintenanceCommissionPDF?id=' + this.Id, 'MaintenanceCommissionPDF');
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexPDFMaintenanceCommission/lexPDFMaintenanceCommission.js-meta.xml b/force-app/main/default/lwc/lexPDFMaintenanceCommission/lexPDFMaintenanceCommission.js-meta.xml
new file mode 100644
index 0000000..3392981
--- /dev/null
+++ b/force-app/main/default/lwc/lexPDFMaintenanceCommission/lexPDFMaintenanceCommission.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexPDFQISrequest/lexPDFQISrequest.css b/force-app/main/default/lwc/lexPDFQISrequest/lexPDFQISrequest.css
new file mode 100644
index 0000000..9acb129
--- /dev/null
+++ b/force-app/main/default/lwc/lexPDFQISrequest/lexPDFQISrequest.css
@@ -0,0 +1,22 @@
+.outerBorderCss{
+ border: 1px solid #D4D4D4;
+ border-radius : 5px;
+ border-top : 3px solid #565959;
+}
+.borderCss{
+ border: 1px solid #D4D4D4;
+ border-radius : 5px;
+ margin-bottom : 7px;
+ border-top : 3px solid #565959;
+}
+.headerDorderCss{
+ border-top: 1px solid #565959;
+ border-bottom: 1px solid #D4D4D4;
+ padding:3px;
+}
+.centerCss{
+ text-align: center;
+}
+.centerCss .left{
+ margin-left: 100px;
+}/* sample css file *//* sample css file */
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexPDFQISrequest/lexPDFQISrequest.html b/force-app/main/default/lwc/lexPDFQISrequest/lexPDFQISrequest.html
new file mode 100644
index 0000000..c8bdbfc
--- /dev/null
+++ b/force-app/main/default/lwc/lexPDFQISrequest/lexPDFQISrequest.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="sisToOPDHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexPDFQISrequest/lexPDFQISrequest.js b/force-app/main/default/lwc/lexPDFQISrequest/lexPDFQISrequest.js
new file mode 100644
index 0000000..d442403
--- /dev/null
+++ b/force-app/main/default/lwc/lexPDFQISrequest/lexPDFQISrequest.js
@@ -0,0 +1,47 @@
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { NavigationMixin } from 'lightning/navigation';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+import init from '@salesforce/apex/QISReportController.initForlexPDFQISrequestButton';
+import UserInfo_Owner from '@salesforce/apex/TaskFeedbackController.UserInfo_Owner';
+import { updateRecord } from 'lightning/uiRecordApi';
+
+export default class lexPDFQISrequest extends LightningElement {
+ @api recordId;
+ IsLoading = true;
+ qisReportId;
+ err;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback () {
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ this.IsLoading = false;
+ this.qisReportId = result.Id;
+ window.open('/apex/QISPDF?id='+this.qisReportId, 'QISPDF');
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }).catch(error => {
+ console.log('error='+error);
+ }).finally(() => {
+
+ });
+ }
+
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexPDFQISrequest/lexPDFQISrequest.js-meta.xml b/force-app/main/default/lwc/lexPDFQISrequest/lexPDFQISrequest.js-meta.xml
new file mode 100644
index 0000000..0030007
--- /dev/null
+++ b/force-app/main/default/lwc/lexPDFQISrequest/lexPDFQISrequest.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexPDFQISrequest">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexPaymentPlanLoad/lexPaymentPlanLoad.html b/force-app/main/default/lwc/lexPaymentPlanLoad/lexPaymentPlanLoad.html
new file mode 100644
index 0000000..29b6541
--- /dev/null
+++ b/force-app/main/default/lwc/lexPaymentPlanLoad/lexPaymentPlanLoad.html
@@ -0,0 +1,276 @@
+<template>
+ <lightning-card variant="Narrow">
+ <div style="padding: 0 20px">
+ <div>
+ <lightning-button disabled={statusDisable} label="淇濆瓨"></lightning-button>
+ <lightning-button disabled={statusDisable} label="鍙栨秷"></lightning-button>
+ <lightning-button disabled={statusDisable} onclick={printJs} label="鎵撳嵃"></lightning-button>
+ </div>
+ <div style="border-bottom:1px solid #e3deb8;padding: 5px 3px;"></div>
+ <div>
+ <lightning-layout horizontal-align={horizontalAlign}>
+ <lightning-layout-item flexibility="auto" padding="around-small" size=6 style="padding-left:20px;">
+ <span>鏄惁涓烘爣鍑嗗悎鍚岋細</span>
+ <lightning-combobox disabled={statusDisable} value={PageMCEElement.Is_Standard_Contract__c} options={Is_Standard_Contract_Options} onchange={handleIsStandardContract} style="width:80px;display:inline-block;"></lightning-combobox>
+ <span> (蹇呭~椤癸紝鎵�鏈夊悎鍚屽潎蹇呴』鍕鹃��)</span>
+ </lightning-layout-item>
+ </lightning-layout>
+ </div>
+ <div style="border-bottom:1px solid #e3deb8;padding: 5px 3px;"></div>
+ <div>
+ <lightning-accordion allow-multiple-sections-open class="example-accordion" active-section-name={activeSections}>
+ <lightning-accordion-section name="paymentPlan" label="浠樻璁″垝(蹇呭~鍐呭)锛�">
+ <template if:true={tabPaymentPlan}>
+ <lightning-layout>
+ <lightning-layout-item flexibility="auto" padding="around-small" size=6 style="padding-left:20px;">
+ <span>浠樻鏂瑰紡锛� </span>
+ <lightning-combobox disabled={statusDisable} value={PageMCEElement.Term_Of_Payment__c} options={Term_Of_Payment_Options} onchange={handleTermOfPayment} style="width:30%;display:inline-block;"></lightning-combobox>
+ </lightning-layout-item>
+ </lightning-layout>
+ <div style="border-bottom:1px solid #e3deb8;padding: 5px 3px;"></div>
+ <div if:true={payOnce} class="slds- slds-p-around_medium slds-text-align_left" style="padding-top:30px">
+ <h2>涓�娆℃�т粯娆撅細</h2>
+ <lightning-layout>
+ <lightning-layout-item padding="horizontal-small">
+ <span>鏈悎鍚屾寮忕璁箣鏃ヨ捣 </span>
+ <lightning-combobox disabled={statusDisable} value={PageMCEElement.one_off_payment_agreed_period__c} options={one_off_payment_agreed_period_options} onchange={handleOneoff} style="width:80px;display:inline-block;" ></lightning-combobox>
+ <span> 鏃ュ唴锛岀敳鏂瑰悜涔欐柟鏀粯鍏ㄩ儴鍚堝悓娆句汉姘戝竵{PageMCEElement.Contract_Amount__c}鍏冿紝澶у啓{PageMCEElement.Total_Contract_Amount_In_Words__c}銆�</span>
+ </lightning-layout-item>
+
+ </lightning-layout>
+ </div>
+
+
+ <div if:true={payTwince} class="slds- slds-p-around_medium slds-text-align_left" style="padding-top:30px">
+ <p>澶氭浠樻锛�</p>
+ <lightning-layout>
+ <lightning-layout-item size="4" padding="horizontal-small">
+ <span>鏈悎鍚屾椤瑰垎 </span>
+ <lightning-combobox disabled={statusDisable} value={PageMCEElement.Total_Payment_Time__c} options={Total_Payment_Time_Options} onchange={handleTotalPaymentTime} style="width:80px;display:inline-block;"></lightning-combobox>
+ <span> 鏈熶粯鍑猴紝璇︾粏濡備笅锛�</span>
+ </lightning-layout-item>
+ </lightning-layout>
+
+ <!-- 绗竴鏈� -->
+ <lightning-layout>
+ <lightning-layout-item padding="horizontal-small" >
+ <span>绗竴鏈熸椤逛粯娆炬椂闂翠负 </span>
+ <lightning-input disabled={statusDisable} value={PageMCEElement.Payment_Plan_Date_First__c} type="date" onchange={handleDateFirst} style="width: 180px;display: inline-block;"></lightning-input>
+ <!-- <span> [2013/4/19]</span> -->
+ <span> 鍓嶏紝鐢叉柟鍚戜箼鏂规敮浠樹汉姘戝竵 </span>
+ <lightning-input disabled={statusDisable} name="Payment_Plan_Sum_1" type="number" value={PageMCEElement.Payment_Plan_Sum_First__c} style="width: 220px;display: inline-block;" onchange={Convert_Amount}></lightning-input>
+ <span> 鍏冿紝澶у啓</span>
+ <span>{Payment_Plan_Sum_1_in_Word}</span>锛�
+ </lightning-layout-item>
+ </lightning-layout>
+
+ <!-- 绗簩鏈� -->
+ <lightning-layout>
+ <lightning-layout-item padding="horizontal-small" >
+ <span>绗簩鏈熸椤逛粯娆炬椂闂翠负 </span>
+ <lightning-input disabled={statusDisable} value={PageMCEElement.Payment_Plan_Date_Second__c} type="date" onchange={handleDateSecond} style="width: 180px;display: inline-block;"></lightning-input>
+ <!-- <span> [2013/4/19]</span> -->
+ <span> 鍓嶏紝鐢叉柟鍚戜箼鏂规敮浠樹汉姘戝竵 </span>
+ <lightning-input disabled={statusDisable} name="Payment_Plan_Sum_2" value={PageMCEElement.Payment_Plan_Sum_Second__c} type="number" style="width: 220px;display: inline-block;" onchange={Convert_Amount}></lightning-input>
+ <span> 鍏冿紝澶у啓</span>
+ <span>{Payment_Plan_Sum_2_in_Word}</span>锛�
+ </lightning-layout-item>
+ </lightning-layout>
+
+ <!-- 绗笁鏈� -->
+ <lightning-layout>
+ <lightning-layout-item padding="horizontal-small" >
+ <span>绗笁鏈熸椤逛粯娆炬椂闂翠负 </span>
+ <lightning-input disabled={statusDisable} value={PageMCEElement.Payment_Plan_Date_Third__c} type="date" onchange={handleDateThird} style="width: 180px;display: inline-block;"></lightning-input>
+ <!-- <span> [2013/4/19]</span> -->
+ <span> 鍓嶏紝鐢叉柟鍚戜箼鏂规敮浠樹汉姘戝竵 </span>
+ <lightning-input disabled={statusDisable} name="Payment_Plan_Sum_3" value={PageMCEElement.Payment_Plan_Sum_Third__c} type="number" style="width: 220px;display: inline-block;" onchange={Convert_Amount}></lightning-input>
+ <span> 鍏冿紝澶у啓</span>
+ <span>{Payment_Plan_Sum_3_in_Word}</span>锛�
+ </lightning-layout-item>
+ </lightning-layout>
+
+ <!-- 绗洓鏈� -->
+ <lightning-layout>
+ <lightning-layout-item padding="horizontal-small" >
+ <span>绗洓鏈熸椤逛粯娆炬椂闂翠负 </span>
+ <lightning-input disabled={statusDisable} value={PageMCEElement.Payment_Plan_Date_Forth__c} type="date" onchange={handleDateForth} style="width: 180px;display: inline-block;"></lightning-input>
+ <!-- <span> [2013/4/19]</span> -->
+ <span> 鍓嶏紝鐢叉柟鍚戜箼鏂规敮浠樹汉姘戝竵 </span>
+ <lightning-input disabled={statusDisable} name="Payment_Plan_Sum_4" value={PageMCEElement.Payment_Plan_Sum_Forth__c} type="number" style="width: 220px;display: inline-block;" onchange={Convert_Amount}></lightning-input>
+ <span> 鍏冿紝澶у啓</span>
+ <span>{Payment_Plan_Sum_4_in_Word}</span>锛�
+ </lightning-layout-item>
+ </lightning-layout>
+
+ <!-- 绗簲鏈� -->
+ <lightning-layout>
+ <lightning-layout-item padding="horizontal-small" >
+ <span>绗簲鏈熸椤逛粯娆炬椂闂翠负 </span>
+ <lightning-input disabled={statusDisable} value={PageMCEElement.Payment_Plan_Date_Fifth__c} type="date" onchange={handleDateFivth} style="width: 180px;display: inline-block;"></lightning-input>
+ <!-- <span> [2013/4/19]</span> -->
+ <span> 鍓嶏紝鐢叉柟鍚戜箼鏂规敮浠樹汉姘戝竵 </span>
+ <lightning-input disabled={statusDisable} name="Payment_Plan_Sum_5" value={PageMCEElement.Payment_Plan_Sum_Fifth__c} type="number" style="width: 220px;display: inline-block;" onchange={Convert_Amount}></lightning-input>
+ <span> 鍏冿紝澶у啓</span>
+ <span>{Payment_Plan_Sum_5_in_Word}</span>锛�
+ </lightning-layout-item>
+ </lightning-layout>
+
+ <!-- 绗叚鏈� -->
+ <lightning-layout>
+ <lightning-layout-item padding="horizontal-small" >
+ <span>绗叚鏈熸椤逛粯娆炬椂闂翠负 </span>
+ <lightning-input disabled={statusDisable} value={PageMCEElement.Payment_Plan_Date_Sixth__c} type="date" onchange={handleDateSixth} style="width: 180px;display: inline-block;"></lightning-input>
+ <!-- <span> [2013/4/19]</span> -->
+ <span> 鍓嶏紝鐢叉柟鍚戜箼鏂规敮浠樹汉姘戝竵 </span>
+ <lightning-input disabled={statusDisable} name="Payment_Plan_Sum_6" value={PageMCEElement.Payment_Plan_Sum_Sixth__c} type="number" style="width: 220px;display: inline-block;" onchange={Convert_Amount}></lightning-input>
+ <span> 鍏冿紝澶у啓</span>
+ <span>{Payment_Plan_Sum_6_in_Word}</span>銆�
+ </lightning-layout-item>
+ </lightning-layout>
+ </div>
+
+ </template>
+ </lightning-accordion-section>
+
+
+
+
+ <lightning-layout>
+ <lightning-layout-item size="4" padding="horizontal-small">
+ <h2 style="margin-left:4%;color:blue;">鎻愮ず淇℃伅锛氭爣鍑嗗悎鍚屼笅杩板唴瀹归渶瑕佸叏閮ㄥ~鍐欍��</h2>
+ </lightning-layout-item>
+ </lightning-layout>
+
+
+
+
+ <lightning-accordion-section name="textInfo" label="鏂囨湰淇℃伅锛�">
+ <template if:true={tabTextInfo}>
+
+ <lightning-layout>
+ <lightning-layout-item size="2" padding="horizontal-small">
+ <div class="slds- slds-p-around_medium slds-text-align_left" style="padding-top:30px">灏忎慨鐞嗘椂闄愶細</div>
+ </lightning-layout-item>
+ <lightning-layout-item size="3" padding="horizontal-small">
+ <lightning-combobox disabled={statusDisable} value={PageMCEElement.Small_Repair_Time__c} options={Small_Repair_Time_Options} onchange={handleSmallRepairTime} style="display: inline-block;"></lightning-combobox>
+ <span> 灏忔椂</span>
+ </lightning-layout-item>
+ <lightning-layout-item size="2" padding="horizontal-small">
+ <div class="slds- slds-p-around_medium slds-text-align_left" style="padding-top:30px">澶т慨鐞嗘椂闄愶細</div>
+ </lightning-layout-item>
+ <lightning-layout-item size="2" padding="horizontal-small">
+ <lightning-combobox disabled={statusDisable} value={PageMCEElement.Big_Repair_Time__c} options={Big_Repair_Time_Options} onchange={handleBigRepairTime} style="display: inline-block;"></lightning-combobox>
+ <span> 宸ヤ綔鏃�</span>
+ </lightning-layout-item>
+ </lightning-layout>
+
+
+
+ <lightning-layout>
+ <lightning-layout-item size="2" padding="horizontal-small">
+ <div class="slds- slds-p-around_medium slds-text-align_left" style="padding-top:30px">鐜板満鎶�鏈敮鎸佹椂闄愶細</div>
+ </lightning-layout-item>
+ <lightning-layout-item size="3" padding="horizontal-small">
+ <lightning-combobox disabled={statusDisable} value={PageMCEElement.Live_Technical_Support_Time__c} options={Small_Repair_Time_Options} onchange={handleLiveTechnicalSupportTime} style="display: inline-block;"></lightning-combobox>
+ <span> 灏忔椂</span>
+ </lightning-layout-item>
+ <lightning-layout-item size="2" padding="horizontal-small">
+ <div class="slds- slds-p-around_medium slds-text-align_left" style="padding-top:30px">宸″洖锛�</div>
+ </lightning-layout-item>
+ <lightning-layout-item size="2" padding="horizontal-small">
+ <span>姣忓勾 </span>
+ <lightning-combobox disabled={statusDisable} value={PageMCEElement.Tour_Check__c} options={Tour_Check_Options} onchange={handleTourCheck} style="display: inline-block;"></lightning-combobox>
+ <span> 娆�</span>
+ </lightning-layout-item>
+
+ </lightning-layout>
+
+ <lightning-layout>
+ <lightning-layout-item size="2" padding="horizontal-small">
+ <div class="slds- slds-p-around_medium slds-text-align_left" style="padding-top:30px">宸ョ▼甯堝鍚嶏細</div>
+ </lightning-layout-item>
+ <lightning-layout-item size="3" padding="horizontal-small">
+ <lightning-input disabled={statusDisable} value={PageMCEElement.Engineer_Name__c} style="display: inline-block;"></lightning-input>
+ </lightning-layout-item>
+ <lightning-layout-item size="2" padding="horizontal-small">
+ <div class="slds- slds-p-around_medium slds-text-align_left" style="padding-top:30px">鎵嬫満鍙风爜锛�</div>
+ </lightning-layout-item>
+ <lightning-layout-item size="2" padding="horizontal-small">
+ <lightning-input disabled={statusDisable} type="tel" value={PageMCEElement.Phone_Number__c} style="display: inline-block;"></lightning-input>
+ </lightning-layout-item>
+
+ </lightning-layout>
+
+ <lightning-layout>
+ <lightning-layout-item size="2" padding="horizontal-small">
+ <div class="slds- slds-p-around_medium slds-text-align_left" style="padding-top:30px">鐐规锛�</div>
+ </lightning-layout-item>
+ <lightning-layout-item size="3" padding="horizontal-small">
+ <span>姣忓勾</span>
+ <lightning-combobox disabled={statusDisable} value={PageMCEElement.Inspection_Time__c} options={Tour_Check_Options} onchange={handleInspectionTime} style="display: inline-block;"></lightning-combobox>
+ <span> 娆� (蹇呭~椤�)</span>
+ </lightning-layout-item>
+ <lightning-layout-item size="2" padding="horizontal-small">
+ <div class="slds- slds-p-around_medium slds-text-align_left" style="padding-top:30px">闄ゅ皹锛�</div>
+ </lightning-layout-item>
+ <lightning-layout-item size="2" padding="horizontal-small">
+ <span>姣忓勾 </span>
+ <lightning-combobox disabled={statusDisable} value={PageMCEElement.Dedust__c} options={Dedust_Options} onchange={handleDedust} style="display: inline-block;"></lightning-combobox>
+ <span> 娆�</span>
+ </lightning-layout-item>
+
+ </lightning-layout>
+
+ <lightning-layout vertical-align="center">
+ <lightning-layout-item size="2" padding="horizontal-small">
+ <div class="slds- slds-p-around_medium slds-text-align_left" style="padding-top:30px">鐐规鎬绘鏁帮細</div>
+ </lightning-layout-item>
+ <lightning-layout-item size="3" padding="horizontal-small">
+ <p> 鍏眥PageMCEElement.Contract_Limit_Times__c}娆�</p>
+
+ </lightning-layout-item>
+
+
+ </lightning-layout>
+
+ <lightning-layout>
+ <lightning-layout-item size="2" padding="horizontal-small">
+ <div class="slds- slds-p-around_medium slds-text-align_left" style="padding-top:30px">鍚堝悓浠芥暟锛氱敳鏂�:</div>
+ </lightning-layout-item>
+ <lightning-layout-item size="3" padding="horizontal-small">
+ <lightning-combobox disabled={statusDisable} value={PageMCEElement.First_Party_Contract_Number__c} options={First_Party_Contract_Number_Options} onchange={handleFirstPartyContractNumber} style="display: inline-block;"></lightning-combobox>
+ <span> 浠�</span>
+ </lightning-layout-item>
+ <lightning-layout-item size="2" padding="horizontal-small">
+ <div class="slds- slds-p-around_medium slds-text-align_left" style="padding-top:30px">涔欐柟锛�</div>
+ </lightning-layout-item>
+ <lightning-layout-item size="2" padding="horizontal-small">
+ <lightning-combobox disabled={statusDisable} value={PageMCEElement.Second_Party_Contract_Number__c} options={First_Party_Contract_Number_Options} onchange={handleSecondPartyContractNumber} style="display: inline-block;"></lightning-combobox>
+ <span> 浠�</span>
+ </lightning-layout-item>
+ </lightning-layout>
+
+ <lightning-layout>
+ <lightning-layout-item padding="horizontal-small">
+ <span>鍗忓晢鏂瑰紡锛�</span>
+ <lightning-combobox disabled={statusDisable} value={PageMCEElement.Negotiate_Mean__c} options={Negotiate_Mean_Options} onchange={handleNegotiateMean} style="display: inline-block;"></lightning-combobox>
+ <span> 鎻愮ず淇℃伅锛�(1)鍚戣鍦ㄥ寳浜殑涓浗鍥介檯缁忔祹璐告槗浠茶濮斿憳浼氱敵璇蜂徊瑁併��(2)鍚戞湁绠¤緰鏉冪殑浜烘皯娉曢櫌鎻愯捣璇夎銆�</span>
+ </lightning-layout-item>
+ </lightning-layout>
+ </template>
+
+ </lightning-accordion-section>
+
+ <div style="border-top:1px solid #e3deb8;padding: 5px 3px;"></div>
+ </lightning-accordion>
+ </div>
+ <div>
+ <lightning-button label="淇濆瓨" disabled={statusDisable}></lightning-button>
+ <lightning-button label="鍙栨秷" disabled={statusDisable}></lightning-button>
+ <lightning-button label="鎵撳嵃" onclick={printJs} disabled={statusDisable}></lightning-button>
+ </div>
+ </div>
+ </lightning-card>
+
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexPaymentPlanLoad/lexPaymentPlanLoad.js b/force-app/main/default/lwc/lexPaymentPlanLoad/lexPaymentPlanLoad.js
new file mode 100644
index 0000000..cb14491
--- /dev/null
+++ b/force-app/main/default/lwc/lexPaymentPlanLoad/lexPaymentPlanLoad.js
@@ -0,0 +1,404 @@
+import { LightningElement, track, wire, api } from 'lwc';
+import {CurrentPageReference,NavigationMixin} from 'lightning/navigation';
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+
+
+import initData from '@salesforce/apex/LexPaymentPlanLoadController.initData';
+
+export default class lexPaymentPlanLoad extends LightningElement {
+
+
+ Term_Of_Payment = "涓�娆℃�т粯娆�";
+ Is_Standard_Contract_Options = [{ label: '--鏃�--', value: '' },
+ { label: '鏄�', value: '鏄�' },
+ { label: '鍚�', value: '鍚�' }];
+
+ Term_Of_Payment_Options = [{ label: '涓�娆℃�т粯娆�', value: '涓�娆℃�т粯娆�' },
+ { label: '澶氭浠樻', value: '澶氭浠樻' }];
+
+ one_off_payment_agreed_period_options = [{ label: '15', value: '15' },
+ { label: '30', value: '30' },
+ { label: '60', value: '60' },
+ { label: '90', value: '90' }];
+
+ Total_Payment_Time_Options = [{ label: '1', value: '1' },
+ { label: '2', value: '2' },
+ { label: '3', value: '3' },
+ { label: '4', value: '4' },
+ { label: '5', value: '5' },
+ { label: '6', value: '6' }];
+
+ Small_Repair_Time_Options = [{ label: '24', value: '24' },
+ { label: '48', value: '48' },
+ { label: '72', value: '72' }];
+
+ Big_Repair_Time_Options = [{ label: '7', value: '7' },
+ { label: '10', value: '10' },
+ { label: '15', value: '15' },
+ { label: '20', value: '20' },
+ { label: '25', value: '25' },
+ { label: '30', value: '30' }];
+
+ Tour_Check_Options = [{ label: '0', value: '0' },
+ { label: '1', value: '1' },
+ { label: '2', value: '2' },
+ { label: '3', value: '3' },
+ { label: '4', value: '4' }];
+
+ Dedust_Options = [{ label: '0', value: '0' },
+ { label: '1', value: '1' },
+ { label: '2', value: '2' }];
+
+ First_Party_Contract_Number_Options = [{ label: '1', value: '1' },
+ { label: '2', value: '2' },
+ { label: '3', value: '3' },
+ { label: '4', value: '4' },
+ { label: '5', value: '5' },
+ { label: '6', value: '6' },
+ { label: '7', value: '7' },
+ { label: '8', value: '8' },
+ { label: '9', value: '9' },
+ { label: '10', value: '10'}];
+
+ Negotiate_Mean_Options = [{ label: '1', value: '1' },
+ { label: '2', value: '2' }] ;
+ activeSections = ['paymentPlan', 'textInfo'];
+
+ tabPaymentPlan = true;
+ tabTextInfo = false;
+ payOnce = true;
+ payTwince = false;
+ //鏄惁鏄�"寮曞悎涓�"
+ statusDisable = false;
+
+ Payment_Plan_Sum_1_in_Word;
+ Payment_Plan_Sum_2_in_Word;
+ Payment_Plan_Sum_3_in_Word;
+ Payment_Plan_Sum_4_in_Word;
+ Payment_Plan_Sum_5_in_Word;
+ Payment_Plan_Sum_6_in_Word;
+
+
+ @api recordId;
+
+
+ @track PageMCEElement = {};
+
+
+ IsLoading=true;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(currentPageReference);
+
+ if(currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if(urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+
+ }
+ }
+
+ }
+
+ connectedCallback() {
+ this.recordId = 'a0H0l000008onsq';
+ console.log('this.recordId:' + this.recordId);
+ initData({
+ recordId : this.recordId
+ }).then(result => {
+ console.log("initPageResult:");
+ console.log(result);
+ if (result.PageMCEElement == null) {
+ const event = new ShowToastEvent({
+ title: 'warning',
+ message: result.msg,
+ variant:'warning',
+ });
+ this.dispatchEvent(event);
+ }
+ this.PageMCEElement = result.PageMCEElement;
+ this.statusSave = result.statusSave;
+
+ this.initPages();
+ this.initDisabled();
+
+ console.log(this.PageMCEElement);
+ this.cancelSubmit().then(res=>{
+ this.IsLoading=false;
+ this.dispatchEvent(new CloseActionScreenEvent());
+ });
+
+ }).catch( error =>{
+ console.log(error);
+ });
+ }
+
+ initPages(){
+ if(!this.Contract_validMonth) {
+ this.Contract_validMonth = parseInt(this.PageMCEElement.Contract_Range__c);
+ }
+
+ if(!this.PageMCEElement.Is_Standard_Contract__c) {
+ this.PageMCEElement.Is_Standard_Contract__c = "";
+ }
+ if(!this.PageMCEElement.Term_Of_Payment__c) {
+ this.PageMCEElement.Term_Of_Payment__c="涓�娆℃�т粯娆�";
+ this.payOnce = true;
+ this.payTwince = false;
+ } else if(this.PageMCEElement.Term_Of_Payment__c == "涓�娆℃�т粯娆�") {
+ this.payOnce = true;
+ this.payTwince = false;
+ } else {
+ this.payTwince = true;
+ this.payOnce = false;
+ }
+
+ if(!(this.PageMCEElement.one_off_payment_agreed_period__c) && this.payOnce){
+ this.PageMCEElement.one_off_payment_agreed_period__c = "15";
+ }
+
+ if(!this.PageMCEElement.Total_Payment_Time__c) {
+ this.PageMCEElement.Total_Payment_Time__c = '1';
+ }
+ if(!this.PageMCEElement.Inspection_Time__c) {
+ this.PageMCEElement.Inspection_Time__c = '0';
+ }
+ if(!this.PageMCEElement.Tour_Check__c) {
+ this.PageMCEElement.Tour_Check__c = '0';
+ }
+ if(!this.PageMCEElement.Dedust__c) {
+ this.PageMCEElement.Dedust__c = '0';
+ }
+ if(!this.PageMCEElement.First_Party_Contract_Number__c) {
+ this.PageMCEElement.First_Party_Contract_Number__c = '2';
+ }
+ if(!this.PageMCEElement.Second_Party_Contract_Number__c) {
+ this.PageMCEElement.Second_Party_Contract_Number__c = '1';
+ }
+ if(!this.PageMCEElement.Negotiate_Mean__c) {
+ this.PageMCEElement.Negotiate_Mean__c = '1';
+ }
+ }
+
+ initDisabled() {
+ if(this.PageMCEElement.Status__c != '寮曞悎涓�'){
+ this.statusDisable = true;
+ }
+ }
+ //鏄惁鏍囧噯鍚堝悓
+ handleIsStandardContract(event) {
+ this.PageMCEElement.Is_Standard_Contract__c = event.detail.value;
+ if (this.PageMCEElement.Is_Standard_Contract__c == '鍚�') {
+ this.tabTextInfo = false;
+ }else{
+ this.tabTextInfo = true;
+
+ }
+ }
+
+ //涓�娆℃垨澶氭浠樻
+ handleTermOfPayment(event) {
+ this.PageMCEElement.Term_Of_Payment__c = event.detail.value;
+ if(this.PageMCEElement.Term_Of_Payment__c == '涓�娆℃�т粯娆�') {
+ this.payOnce = true;
+ this.payTwince = false;
+ } else {
+ this.payTwince = true;
+ this.payOnce = false;
+ }
+
+ }
+
+ handleOneoff(event){
+ this.PageMCEElement.one_off_payment_agreed_period__c=event.detail.value;
+ }
+
+
+
+ // 澶氭浠樻
+ handleDateFirst(event){
+ this.PageMCEElement.Payment_Plan_Date_First__c = event.detail.value;
+ }
+ handleDateSecond(event){
+ this.PageMCEElement.Payment_Plan_Date_Second__c = event.detail.value;
+ }
+ handleDateThird(event){
+ this.PageMCEElement.Payment_Plan_Date_Third__c = event.detail.value;
+ }
+ handleDateForth(event){
+ this.PageMCEElement.Payment_Plan_Date_Forth__c = event.detail.value;
+ }
+ handleDateFivth(event){
+ this.PageMCEElement.Payment_Plan_Date_Fifth__c = event.detail.value;
+ }
+ handleDateSixth(event){
+ this.PageMCEElement.Payment_Plan_Date_Sixth__c = event.detail.value;
+ }
+
+
+ //澶氭浠樻-閲戦
+ Convert_Amount(event) {
+ let Amount = event.target.value;
+ let plan_name = event.target.name;
+ console.log(Amount)
+ console.log(plan_name)
+
+ if(Amount == null || Amount== undefined || Amount.length == 0)
+ return;
+ let Amount_In_Words = this.smalltoBIG(Amount);
+ if(plan_name =='Payment_Plan_Sum_1') {
+ this.Payment_Plan_Sum_1_in_Word = Amount_In_Words;
+ this.PageMCEElement.Payment_Plan_Sum_First__c = Amount;
+ this.PageMCEElement.Payment_Plan_Sum_First_in_Word__c = Amount_In_Words;
+ } else if(plan_name == 'Payment_Plan_Sum_2') {
+ this.Payment_Plan_Sum_2_in_Word = Amount_In_Words;
+ this.PageMCEElement.Payment_Plan_Sum_Second__c = Amount;
+ this.PageMCEElement.Payment_Plan_Sum_Second_in_Word__c = Amount_In_Words;
+ } else if(plan_name == 'Payment_Plan_Sum_3') {
+ this.Payment_Plan_Sum_3_in_Word = Amount_In_Words;
+ this.PageMCEElement.Payment_Plan_Sum_Third__c = Amount;
+ this.PageMCEElement.Payment_Plan_Sum_Third_in_Word__c = Amount_In_Words;
+ } else if(plan_name == 'Payment_Plan_Sum_4') {
+ this.Payment_Plan_Sum_4_in_Word = Amount_In_Words;
+ this.PageMCEElement.Payment_Plan_Sum_Forth__c = Amount;
+ this.PageMCEElement.Payment_Plan_Sum_Forth_in_Word__c = Amount_In_Words;
+ } else if(plan_name == 'Payment_Plan_Sum_5') {
+ this.Payment_Plan_Sum_5_in_Word = Amount_In_Words;
+ this.PageMCEElement.Payment_Plan_Sum_Fifth__c = Amount;
+ this.PageMCEElement.Payment_Plan_Sum_Fifth_in_Word__c = Amount_In_Words;
+ } else{
+ this.Payment_Plan_Sum_6_in_Word = Amount_In_Words;
+ this.PageMCEElement.Payment_Plan_Sum_Sixth__c = Amount;
+ this.PageMCEElement.Payment_Plan_Sum_Sixth_in_Word__c = Amount_In_Words;
+ }
+
+ // alert(Amount_In_Words);
+ // event.target.name+_in_Word = Amount_In_Words;
+ // var Amount = j$(escapeVfId('allPage:allForm:allBlock:paymentPlan:Payment_Plan_Sum_'+number)).val();
+ // if(Amount == null || Amount== undefined || Amount.length == 0)
+ // return;
+ // var Amount_In_Words = smalltoBIG(Amount);
+ // j$(escapeVfId('allPage:allForm:allBlock:paymentPlan:Payment_Plan_Sum_' + number + '_in_Word')).text(Amount_In_Words);
+ // j$(escapeVfId('allPage:allForm:Payment_Plan_Sum_' + number + '_in_Word_Hidden')).val(Amount_In_Words);
+ // j$(escapeVfId('allPage:allForm:allBlock:paymentPlan:Payment_Plan_Sum_'+number)).val(toNumComma(Amount));
+ }
+
+
+
+
+
+
+ handleSmallRepairTime(event) {
+ this.PageMCEElement.Small_Repair_Time__c = event.detail.value;
+ }
+ handleBigRepairTime(event) {
+ this.PageMCEElement.Big_Repair_Time__c = event.detail.value;
+ }
+ handleLiveTechnicalSupportTime(event) {
+ this.PageMCEElement.Live_Technical_Support_Time__c = event.detail.value;
+ }
+ handleTourCheck(event) {
+ this.PageMCEElement.Tour_Check__c = event.detail.value;
+ }
+
+
+
+ handleInspectionTime(event) {
+ this.PageMCEElement.Inspection_Time__c = event.detail.value;
+ this.AllChecktime();
+ }
+ handleDedust(event) {
+ this.PageMCEElement.Dedust__c = event.detail.value;
+ }
+
+
+ handleFirstPartyContractNumber(event) {
+ this.PageMCEElement.First_Party_Contract_Number__c = event.detail.value;
+ }
+ handleSecondPartyContractNumber(event) {
+ this.PageMCEElement.Second_Party_Contract_Number__c = event.detail.value;
+ }
+
+ handleTotalPaymentTime(event) {
+ this.PageMCEElement.Total_Payment_Time__c = event.detail.value;
+ }
+
+ handleNegotiateMean(event){
+ this.PageMCEElement.Negotiate_Mean__c = event.detail.value;
+ }
+ // 鏂板鐐规鎬绘鏁帮紙鍙湪椤甸潰涓樉绀猴級fxk 2021/9/2 Star
+ AllChecktime(){
+ var Allchecks;
+ console.log("Contract_validMonth");
+ console.log(this.Contract_validMonth);
+ if((this.PageMCEElement.Inspection_Time__c == '1' && this.Contract_validMonth < 9)
+ || (this.PageMCEElement.Inspection_Time__c == '2' && this.Contract_validMonth < 6)
+ || (this.PageMCEElement.Inspection_Time__c == '3' && this.Contract_validMonth < 4)
+ || (this.PageMCEElement.Inspection_Time__c == '4' && this.Contract_validMonth < 3)){
+ Allchecks = '1';
+ }else{
+ if (this.ContractAllMonth - parseInt(this.Contract_validMonth / 12) * 12 >= 6 && this.PageMCEElement.Inspection_Time__c == '1'){
+ Allchecks = ((this.Contract_validMonth * Number(this.PageMCEElement.Inspection_Time__c))/12+1).toString();
+ }else{
+ Allchecks =((this.Contract_validMonth * Number(this.PageMCEElement.Inspection_Time__c))/12).toString();
+ }
+ }
+ console.log(Allchecks);
+ if (Allchecks!=null) {
+ this.PageMCEElement.Contract_Limit_Times__c = Allchecks;
+ }
+ }
+
+ /** 鏁板瓧閲戦澶у啓杞崲(鍙互澶勭悊鏁存暟,灏忔暟,璐熸暟) */
+ smalltoBIG(n){
+ let fraction = ['瑙�', '鍒�'];
+ let digit = ['闆�', '澹�', '璐�', '鍙�', '鑲�', '浼�', '闄�', '鏌�', '鎹�', '鐜�'];
+ let unit = [ ['鍏�', '涓�', '浜�'], ['', '鎷�', '浣�', '浠�'] ];
+ let head = n < 0? '娆�': '';
+ n = n.replace(/\,/g,"");
+ n = Math.abs(n);
+ let s = '';
+ for (let i = 0; i < fraction.length; i++){
+ s += (digit[Math.floor(n * 10 * Math.pow(10, i)) % 10] + fraction[i]).replace(/闆�./, '');
+ }
+ s = s || '鏁�';
+ n = Math.floor(n);
+ for (let i = 0; i < unit[0].length && n > 0; i++) {
+ let p = '';
+ for (let j = 0; j < unit[1].length && n > 0; j++) {
+ p = digit[n % 10] + unit[1][j] + p;
+ n = Math.floor(n / 10);
+ }
+ s = p.replace(/(闆�.)*闆�$/, '').replace(/^$/, '闆�') + unit[0][i] + s;
+ }
+ return head + s.replace(/(闆�.)*闆跺厓/, '鍏�').replace(/(闆�.)+/g, '闆�').replace(/^鏁�$/, '闆跺厓鏁�');
+ }
+ printJs() {
+ var Rs = this.statusSave;
+ console.log(this.statusSave)
+ alert(Rs);
+ if(Rs == 'Fin'){
+ this.dispatchEvent(new CloseActionScreenEvent());
+ if (this.printContract) {
+ // 鎵撳嵃鍖婚櫌鍚堝悓閰嶇疆
+ window.open('/apex/MCHPDF?id='+this.recordId, 'MCHPDF');
+ }else if (this.printAgent) {
+ //鎵撳嵃缁忛攢鍟嗗悎鍚�
+ window.open('/apex/MCAgentPDF?id='+this.recordId, 'MCHPDF');
+ }else {
+ alert('1');
+ }
+ }else{
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ }
+
+
+
+
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexPaymentPlanLoad/lexPaymentPlanLoad.js-meta.xml b/force-app/main/default/lwc/lexPaymentPlanLoad/lexPaymentPlanLoad.js-meta.xml
new file mode 100644
index 0000000..022128c
--- /dev/null
+++ b/force-app/main/default/lwc/lexPaymentPlanLoad/lexPaymentPlanLoad.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexPaymentPlanLoad">
+ <apiVersion>51.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexPreContractSubmit/lexPreContractSubmit.html b/force-app/main/default/lwc/lexPreContractSubmit/lexPreContractSubmit.html
new file mode 100644
index 0000000..87f391a
--- /dev/null
+++ b/force-app/main/default/lwc/lexPreContractSubmit/lexPreContractSubmit.html
@@ -0,0 +1,6 @@
+<template>
+ <div class="exampleHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ <lightning-button label="Show Toast" onclick={ShowToastEvent}></lightning-button>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexPreContractSubmit/lexPreContractSubmit.js b/force-app/main/default/lwc/lexPreContractSubmit/lexPreContractSubmit.js
new file mode 100644
index 0000000..1340680
--- /dev/null
+++ b/force-app/main/default/lwc/lexPreContractSubmit/lexPreContractSubmit.js
@@ -0,0 +1,116 @@
+import {
+ LightningElement,
+ wire,
+ api
+} from 'lwc';
+import {
+ CurrentPageReference
+} from "lightning/navigation";
+import {
+ CloseActionScreenEvent
+} from 'lightning/actions';
+import init from '@salesforce/apex/otherButtonMaintenanceContractCtl.init';
+import processResults from '@salesforce/apex/otherButtonMaintenanceContractCtl.processResults';
+import {
+ ShowToastEvent
+} from 'lightning/platformShowToastEvent';
+
+export default class LexPreContractSubmit extends LightningElement {
+ @api recordId;
+ str;
+ IsLoading = true;
+ oldIsRecognitionModelC;
+ uploadToRMTimeC;
+ IsRecognitionModelTrueC;
+ MCApprovalStatusC;
+ ContractprintCompletedC;
+ Id;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback() {
+ console.log(this.recordId);
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result);
+ if (result != null) {
+ this.IsLoading = false;
+ this.oldIsRecognitionModelC = result.oldIsRecognitionModelC;
+ this.uploadToRMTimeC = result.uploadToRMTimeC;
+ this.IsRecognitionModelTrueC = result.IsRecognitionModelTrueC;
+ this.MCApprovalStatusC = result.MCApprovalStatusC;
+ this.ContractprintCompletedC = result.ContractprintCompletedC;
+ this.Id = result.Id;
+
+ this.preContractSubmit();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ }).catch(error => {
+ console.log(error);
+ }).finally(() => {
+
+ });
+ }
+
+ // 鍚堝悓澶嶆牳
+ preContractSubmit() {
+ if (this.oldIsRecognitionModelC) {
+ if (this.uploadToRMTimeC == null) {
+ this.ShowToastEvent('褰撳墠缁翠慨鍚堝悓鐨勭粡閿�鍟嗘槸鍏堟瀵硅薄锛岄渶瑕佸厛銆愪笂浼犺娆惧悎鍚屻�戯紝鐒跺悗瀹屾垚璁ゆ浠ュ悗鎵嶈兘澶嶆牳銆�', "error")
+ // alert('褰撳墠缁翠慨鍚堝悓鐨勭粡閿�鍟嗘槸鍏堟瀵硅薄锛岄渶瑕佸厛銆愪笂浼犺娆惧悎鍚屻�戯紝鐒跺悗瀹屾垚璁ゆ浠ュ悗鎵嶈兘澶嶆牳銆�');
+ return;
+ } else {
+ if (!this.IsRecognitionModelTrueC) {
+ this.ShowToastEvent('褰撳墠缁翠慨鍚堝悓娌℃湁瀹屾垚璁ゆ锛屼笉鑳借繘琛屽鏍搞��', "error")
+ // alert('褰撳墠缁翠慨鍚堝悓娌℃湁瀹屾垚璁ゆ锛屼笉鑳借繘琛屽鏍搞��');
+ return;
+ }
+ }
+ }
+ var status = this.MCApprovalStatusC;
+ if (status != 'Draft' && status != 'Reject' && status != undefined) {
+ this.ShowToastEvent('澶嶆牳宸茬粡鎻愪氦锛岃纭鐘舵�併��', "success")
+ // alert('澶嶆牳宸茬粡鎻愪氦锛岃纭鐘舵�併��');
+ return;
+ }
+ var con_no = this.ContractprintCompletedC;
+ if (con_no == '') {
+ this.ShowToastEvent('鍚堝悓鐩栫珷瀹屾瘯涓虹┖锛屼笉鑳芥彁浜ゅ悎鍚屽鏍哥敵璇枫��', "error")
+ // alert('鍚堝悓鐩栫珷瀹屾瘯涓虹┖锛屼笉鑳芥彁浜ゅ悎鍚屽鏍哥敵璇枫��');
+ return;
+ }
+ if (!confirm("涓�鏃︽彁浜ゆ璁板綍浠ュ緟鎵瑰噯锛屾牴鎹偍鐨勮缃偍鍙兘涓嶅啀鑳藉缂栬緫姝よ褰曟垨灏嗕粬浠庢壒鍑嗚繃绋嬩腑璋冨洖銆傛槸鍚︾户缁紵")) {
+ return;
+ }
+ processResults({
+ recordId: this.recordId
+ }).catch(error => {
+ if (error.body.pageErrors[0] != null) {
+ var errmsg = error.body.pageErrors[0].message.toString();
+ // alert(errmsg + '_sys');
+ this.ShowToastEvent(errmsg + '_sys', "error")
+ return;
+ }
+ })
+ }
+
+ // 寮圭獥
+ ShowToastEvent(msg, type) {
+ const event = new ShowToastEvent({
+ title: '',
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexPreContractSubmit/lexPreContractSubmit.js-meta.xml b/force-app/main/default/lwc/lexPreContractSubmit/lexPreContractSubmit.js-meta.xml
new file mode 100644
index 0000000..3392981
--- /dev/null
+++ b/force-app/main/default/lwc/lexPreContractSubmit/lexPreContractSubmit.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexPredictedDateChange/lexPredictedDateChange.css b/force-app/main/default/lwc/lexPredictedDateChange/lexPredictedDateChange.css
new file mode 100644
index 0000000..548c121
--- /dev/null
+++ b/force-app/main/default/lwc/lexPredictedDateChange/lexPredictedDateChange.css
@@ -0,0 +1,10 @@
+.predictedDateChangeHolder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+.container .uiContainerManager{
+ display: none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexPredictedDateChange/lexPredictedDateChange.html b/force-app/main/default/lwc/lexPredictedDateChange/lexPredictedDateChange.html
new file mode 100644
index 0000000..621521f
--- /dev/null
+++ b/force-app/main/default/lwc/lexPredictedDateChange/lexPredictedDateChange.html
@@ -0,0 +1,6 @@
+<template>
+ <div class="predictedDateChangeHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ <lightning-button label="Show Toast" onclick={ShowToastEvent}></lightning-button>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexPredictedDateChange/lexPredictedDateChange.js b/force-app/main/default/lwc/lexPredictedDateChange/lexPredictedDateChange.js
new file mode 100644
index 0000000..c121740
--- /dev/null
+++ b/force-app/main/default/lwc/lexPredictedDateChange/lexPredictedDateChange.js
@@ -0,0 +1,82 @@
+/*
+ * @Description:
+ * @version:
+ * @Author: chen jing wu
+ * @Date: 2023-04-12 10:46:24
+ * @LastEditors: chen jing wu
+ * @LastEditTime: 2023-04-12 13:48:26
+ */
+import { api, wire,LightningElement } from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import queryForPredictedDateChangeButton from '@salesforce/apex/OpportunityLightingButtonController.queryForPredictedDateChangeButton';
+import init from '@salesforce/apex/OpportunityLightingButtonController.initForPredictedDateChangeButton';
+import { updateRecord } from 'lightning/uiRecordApi';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+export default class LexPredictedDateChange extends LightningElement {
+ @api recordId;
+ IsLoading = true;
+ directLossFLG;
+ createdDay;
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+ showToast(msg,type) {
+ const event = new ShowToastEvent({
+ title: '',
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ }
+ updateRecordView(recordId) {
+ updateRecord({fields: { Id: recordId }});
+ }
+ connectedCallback(){
+ init({
+ recordId: this.recordId
+ }).then(result=>{
+ this.directLossFLG = result.directLossFLG;
+ this.createdDay = result.createdDay;
+ this.predictedDateChange();
+ }).catch(error=>{
+ console.log("error");
+ console.log(error);
+ })
+ }
+ predictedDateChange(){
+ // 20221206 ljh DB202212030068 start
+ var DirectLossFLG = this.directLossFLG;
+ var CreatedDay = this.createdDay;
+ var Day = Date('2022-12-03');
+ if((DirectLossFLG == 'true' || DirectLossFLG == 1 ) && CreatedDay > Day){
+ this.showToast("浠庢嫑鏍囬」鐩偣鍑诲け鍗曟柊寤虹殑璇环锛岄娴婳CSM绛剧害鏃�(KPI)鍜岄娴嬪彂璐ф棩涓嶅厑璁镐慨鏀�","error");
+ return;
+ }
+ // 20221206 ljh DB202212030068 end
+ queryForPredictedDateChangeButton({
+ recordId: this.recordId
+ }).then(result=>{
+ var sqlResult = result;
+ if (sqlResult.size > 0) {
+ this.showToast("宸插瓨鍦ㄥ緟瀹℃壒鐨勫彉鏇寸敵璇凤紒","error");
+ return;
+ } else {
+ window.open('/apex/ImprovedForecastTime?id=' + this.recordId,'','height=500,width=800,top=200,left=250,location=no');
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ })
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexPredictedDateChange/lexPredictedDateChange.js-meta.xml b/force-app/main/default/lwc/lexPredictedDateChange/lexPredictedDateChange.js-meta.xml
new file mode 100644
index 0000000..3392981
--- /dev/null
+++ b/force-app/main/default/lwc/lexPredictedDateChange/lexPredictedDateChange.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexProductRepairQuoteRepair/lexProductRepairQuoteRepair.html b/force-app/main/default/lwc/lexProductRepairQuoteRepair/lexProductRepairQuoteRepair.html
new file mode 100644
index 0000000..d044dbb
--- /dev/null
+++ b/force-app/main/default/lwc/lexProductRepairQuoteRepair/lexProductRepairQuoteRepair.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="exampleHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexProductRepairQuoteRepair/lexProductRepairQuoteRepair.js b/force-app/main/default/lwc/lexProductRepairQuoteRepair/lexProductRepairQuoteRepair.js
new file mode 100644
index 0000000..ef8176d
--- /dev/null
+++ b/force-app/main/default/lwc/lexProductRepairQuoteRepair/lexProductRepairQuoteRepair.js
@@ -0,0 +1,67 @@
+import {
+ LightningElement,
+ wire,
+ api
+} from 'lwc';
+import {
+ CurrentPageReference
+} from "lightning/navigation";
+import {
+ CloseActionScreenEvent
+} from 'lightning/actions';
+
+import init from '@salesforce/apex/otherButtonRepairController.init';
+import selectAssetID from '@salesforce/apex/otherButtonRepairController.selectAssetID';
+
+export default class LexProductRepairQuoteRepair extends LightningElement {
+ @api recordId;
+ str;
+ IsLoading = true;
+ Id;
+ RecordTypeId;
+ AssetOwnerC;
+ DeliveredProductC;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback() {
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result);
+ if (result != null) {
+ this.IsLoading = false;
+ this.Id = result.Id;
+ this.RecordTypeId = result.RecordTypeId;
+
+ this.ProductRepairQuoteRepair();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ }).catch(error => {
+ console.log(error);
+ }).finally(() => {
+
+ });
+ }
+
+ // 淇悊鎶ヤ环棰勪及
+ ProductRepairQuoteRepair() {
+ selectAssetID({
+ recordId: this.Id
+ }).then(result => {
+ this.DeliveredProductC = result;
+ window.open('/apex/ProductRepairQuote?productid=' + this.DeliveredProductC + '&flag=asset', '', 'height=250, width=500, top=300, left=350,location=no')
+ }).catch(error => {
+ console.log(error);
+ })
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexProductRepairQuoteRepair/lexProductRepairQuoteRepair.js-meta.xml b/force-app/main/default/lwc/lexProductRepairQuoteRepair/lexProductRepairQuoteRepair.js-meta.xml
new file mode 100644
index 0000000..3392981
--- /dev/null
+++ b/force-app/main/default/lwc/lexProductRepairQuoteRepair/lexProductRepairQuoteRepair.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexQISAgree/lexQISAgree.css b/force-app/main/default/lwc/lexQISAgree/lexQISAgree.css
new file mode 100644
index 0000000..9acb129
--- /dev/null
+++ b/force-app/main/default/lwc/lexQISAgree/lexQISAgree.css
@@ -0,0 +1,22 @@
+.outerBorderCss{
+ border: 1px solid #D4D4D4;
+ border-radius : 5px;
+ border-top : 3px solid #565959;
+}
+.borderCss{
+ border: 1px solid #D4D4D4;
+ border-radius : 5px;
+ margin-bottom : 7px;
+ border-top : 3px solid #565959;
+}
+.headerDorderCss{
+ border-top: 1px solid #565959;
+ border-bottom: 1px solid #D4D4D4;
+ padding:3px;
+}
+.centerCss{
+ text-align: center;
+}
+.centerCss .left{
+ margin-left: 100px;
+}/* sample css file *//* sample css file */
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexQISAgree/lexQISAgree.html b/force-app/main/default/lwc/lexQISAgree/lexQISAgree.html
new file mode 100644
index 0000000..c8bdbfc
--- /dev/null
+++ b/force-app/main/default/lwc/lexQISAgree/lexQISAgree.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="sisToOPDHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexQISAgree/lexQISAgree.js b/force-app/main/default/lwc/lexQISAgree/lexQISAgree.js
new file mode 100644
index 0000000..da5fd6b
--- /dev/null
+++ b/force-app/main/default/lwc/lexQISAgree/lexQISAgree.js
@@ -0,0 +1,86 @@
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { NavigationMixin } from 'lightning/navigation';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+import init from '@salesforce/apex/QISReportController.initForQisAgreeButton';
+import updateQis from '@salesforce/apex/QISReportController.updateQisForQisAgree';
+import UserInfo_Owner from '@salesforce/apex/TaskFeedbackController.UserInfo_Owner';
+import { updateRecord } from 'lightning/uiRecordApi';
+
+export default class lexQISAgree extends LightningElement {
+ @api recordId;
+ IsLoading = true;
+ qisReportId;
+ OwnerId;
+ err;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback () {
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ this.IsLoading = false;
+ this.qisReportId = result.Id;
+ this.OwnerId = result.ownerId;
+ if (this.OwnerId != UserInfo_Owner.Id) {
+ const evt = new ShowToastEvent({
+ title : '鍙湁鎵�鏈夎�呭彲浠ユ寜QIS缁撴灉璺熻繘瀹屾瘯鐨勬寜閽�',
+ message: '',
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }else{
+ this.updateQisSubmit();
+ }
+ }).catch(error => {
+ console.log('error='+error);
+ }).finally(() => {
+
+ });
+ }
+
+ updateRecordView(recordId) {
+ updateRecord({fields: { Id: recordId }});
+ }
+
+ updateQisSubmit(){
+ updateQis({
+ recordId: this.recordId
+ }).then(result =>{
+ console.log('result'+result);
+ this.err = result;
+ if (result!='鎴愬姛') {
+ const evt = new ShowToastEvent({
+ title : '鏇存柊澶辫触',
+ message: this.err,
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+ }
+ this.dispatchEvent(new CloseActionScreenEvent());
+ this.updateRecordView(this.recordId);
+ }).catch(error => {
+ console.log('error='+error);
+ }).finally(() => {
+
+ });
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexQISAgree/lexQISAgree.js-meta.xml b/force-app/main/default/lwc/lexQISAgree/lexQISAgree.js-meta.xml
new file mode 100644
index 0000000..7a4ca36
--- /dev/null
+++ b/force-app/main/default/lwc/lexQISAgree/lexQISAgree.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexQISAgree">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexQISIntakeuniversalcode/lexQISIntakeuniversalcode.css b/force-app/main/default/lwc/lexQISIntakeuniversalcode/lexQISIntakeuniversalcode.css
new file mode 100644
index 0000000..79456f2
--- /dev/null
+++ b/force-app/main/default/lwc/lexQISIntakeuniversalcode/lexQISIntakeuniversalcode.css
@@ -0,0 +1,22 @@
+.outerBorderCss{
+ border: 1px solid #D4D4D4;
+ border-radius : 5px;
+ border-top : 3px solid #565959;
+}
+.borderCss{
+ border: 1px solid #D4D4D4;
+ border-radius : 5px;
+ margin-bottom : 7px;
+ border-top : 3px solid #565959;
+}
+.headerDorderCss{
+ border-top: 1px solid #565959;
+ border-bottom: 1px solid #D4D4D4;
+ padding:3px;
+}
+.centerCss{
+ text-align: center;
+}
+.centerCss .left{
+ margin-left: 100px;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexQISIntakeuniversalcode/lexQISIntakeuniversalcode.html b/force-app/main/default/lwc/lexQISIntakeuniversalcode/lexQISIntakeuniversalcode.html
new file mode 100644
index 0000000..c8bdbfc
--- /dev/null
+++ b/force-app/main/default/lwc/lexQISIntakeuniversalcode/lexQISIntakeuniversalcode.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="sisToOPDHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexQISIntakeuniversalcode/lexQISIntakeuniversalcode.js b/force-app/main/default/lwc/lexQISIntakeuniversalcode/lexQISIntakeuniversalcode.js
new file mode 100644
index 0000000..94c87ab
--- /dev/null
+++ b/force-app/main/default/lwc/lexQISIntakeuniversalcode/lexQISIntakeuniversalcode.js
@@ -0,0 +1,64 @@
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { NavigationMixin } from 'lightning/navigation';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+import init from '@salesforce/apex/QISReportController.initForlexQISIntakeuniversalcodeButton';
+import sqlForPAE from '@salesforce/apex/QISReportController.sqlForPAE1';
+
+export default class lexQISIntakeuniversalcode extends LightningElement {
+ @api recordId;
+ IsLoading = true;
+ qisReportId;
+ paeId;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback () {
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result);
+ if (result != null) {
+ this.IsLoading = false;
+ this.qisReportId = result.Id;
+ var RecordTypeId = "ASRCDecision";
+ sqlForPAE({
+ qisReportId: this.qisReportId
+ }).then(result => {
+ if (result!=null) {
+ this.paeId = result.PAEid;
+ console.log('result='+this.paeId);
+ }
+ var url = '';
+ if (result!=null&&result.length>0){
+ url = "/apex/PAEDecisionRecord?Id="+this.paeId+"&QISReportId="+this.qisReportId +"&RecordTypeIds="+RecordTypeId ;
+ } else {
+ url = "/apex/PAEDecisionRecord?QISReportId="+this.qisReportId +"&RecordTypeIds="+RecordTypeId;
+ }
+ console.log('url='+url);
+ window.location.replace(url);
+ });
+ }
+ }).catch(error => {
+ console.log('error='+error);
+ }).finally(() => {
+
+ });
+ }
+
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexQISIntakeuniversalcode/lexQISIntakeuniversalcode.js-meta.xml b/force-app/main/default/lwc/lexQISIntakeuniversalcode/lexQISIntakeuniversalcode.js-meta.xml
new file mode 100644
index 0000000..2ed1142
--- /dev/null
+++ b/force-app/main/default/lwc/lexQISIntakeuniversalcode/lexQISIntakeuniversalcode.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexQISIntakeuniversalcode">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexQISSC/lexQISSC.css b/force-app/main/default/lwc/lexQISSC/lexQISSC.css
new file mode 100644
index 0000000..9acb129
--- /dev/null
+++ b/force-app/main/default/lwc/lexQISSC/lexQISSC.css
@@ -0,0 +1,22 @@
+.outerBorderCss{
+ border: 1px solid #D4D4D4;
+ border-radius : 5px;
+ border-top : 3px solid #565959;
+}
+.borderCss{
+ border: 1px solid #D4D4D4;
+ border-radius : 5px;
+ margin-bottom : 7px;
+ border-top : 3px solid #565959;
+}
+.headerDorderCss{
+ border-top: 1px solid #565959;
+ border-bottom: 1px solid #D4D4D4;
+ padding:3px;
+}
+.centerCss{
+ text-align: center;
+}
+.centerCss .left{
+ margin-left: 100px;
+}/* sample css file *//* sample css file */
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexQISSC/lexQISSC.html b/force-app/main/default/lwc/lexQISSC/lexQISSC.html
new file mode 100644
index 0000000..c8bdbfc
--- /dev/null
+++ b/force-app/main/default/lwc/lexQISSC/lexQISSC.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="sisToOPDHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexQISSC/lexQISSC.js b/force-app/main/default/lwc/lexQISSC/lexQISSC.js
new file mode 100644
index 0000000..2917728
--- /dev/null
+++ b/force-app/main/default/lwc/lexQISSC/lexQISSC.js
@@ -0,0 +1,96 @@
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { NavigationMixin } from 'lightning/navigation';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+import init from '@salesforce/apex/QISReportController.initForlexQISSCButton';
+import UserInfo_Owner from '@salesforce/apex/TaskFeedbackController.UserInfo_Owner';
+import { updateRecord } from 'lightning/uiRecordApi';
+
+export default class lexQISSC extends LightningElement {
+ @api recordId;
+ IsLoading = true;
+ qisReportId;
+ name;
+ profileName;
+ qISSCId;
+ qISSCReport;
+ nextaction;
+ qISMarketCategory;
+ err;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback () {
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ this.IsLoading = false;
+ this.qisReportId = result.Id;
+ this.name = result.name;
+ this.qISSCId = result.qISSCId;
+ this.qISSCReport = result.qISSCReport;
+ this.nextaction = result.nextaction;
+ this.qISMarketCategory = result.qISMarketCategory;
+ this.profileName = result.profileName;
+ console.log('profileName='+this.profileName);
+ console.log('qISSCReport='+this.qISSCReport);
+ console.log('nextaction='+this.nextaction);
+ console.log('qISMarketCategory='+this.qISMarketCategory);
+ if (this.profileName == '2F4_鎶�鏈帹杩涢儴' || this.profileName == '2F4_鎶�鏈帹杩涢儴_OSH 闈炲崟鐐�') {
+ const evt = new ShowToastEvent({
+ title : '鎮ㄦ病鏈夋柊寤篞IS甯傚満閮ㄦ潈闄愩��',
+ message: '',
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ if (this.qISSCReport!=null) {
+ var url = 'https://ocsm.my.salesforce.com/'+this.qISSCId;
+ window.open(url);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }else{
+ if (this.nextaction == '閫佸洖' && (this.qISMarketCategory == 'ET' || this.qISMarketCategory == 'ENG' || this.qISMarketCategory == 'EndoRapid')) {
+ var urlStr ='/a3w/e?CF00N100000095xFJ='+this.name+
+ '&CF00N100000095xFJ_lkid='+this.qisReportId+
+ '&retURL='+this.qisReportId+
+ '&Name='+this.name;
+ window.open(urlStr);
+
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }else{
+ const evt = new ShowToastEvent({
+ title : '瀵瑰簲鏂规硶涓鸿繑鍥炰笖瀵瑰簲涓绘満/娑堣�楀搧涓篍T 鎴� ENG 鎴� EndoRapid 鏃讹紝鎵嶅彲浠ユ柊寤恒��',
+ message: '',
+ variant: 'error'
+ });
+
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ }
+ }).catch(error => {
+ console.log('error='+error);
+ }).finally(() => {
+
+ });
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexQISSC/lexQISSC.js-meta.xml b/force-app/main/default/lwc/lexQISSC/lexQISSC.js-meta.xml
new file mode 100644
index 0000000..5701aa7
--- /dev/null
+++ b/force-app/main/default/lwc/lexQISSC/lexQISSC.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexQISSC">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexQuarterlyReport/lexQuarterlyReport.html b/force-app/main/default/lwc/lexQuarterlyReport/lexQuarterlyReport.html
new file mode 100644
index 0000000..d044dbb
--- /dev/null
+++ b/force-app/main/default/lwc/lexQuarterlyReport/lexQuarterlyReport.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="exampleHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexQuarterlyReport/lexQuarterlyReport.js b/force-app/main/default/lwc/lexQuarterlyReport/lexQuarterlyReport.js
new file mode 100644
index 0000000..fc1f1e2
--- /dev/null
+++ b/force-app/main/default/lwc/lexQuarterlyReport/lexQuarterlyReport.js
@@ -0,0 +1,69 @@
+import {
+ LightningElement,
+ wire,
+ api
+} from 'lwc';
+import {
+ CurrentPageReference
+} from "lightning/navigation";
+import {
+ CloseActionScreenEvent
+} from 'lightning/actions';
+import init from '@salesforce/apex/otherButtonMaintenanceContractCtl.init';
+
+export default class LexQuarterlyReport extends LightningElement {
+ @api recordId;
+ str;
+ IsLoading = true;
+ Id;
+ RecordTypeDeveloperNameC;
+ EstimateTargetC;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback() {
+ console.log(this.recordId);
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result);
+ if (result != null) {
+ this.IsLoading = false;
+ this.Id = result.Id;
+ this.RecordTypeDeveloperNameC = result.RecordTypeDeveloperNameC;
+ this.EstimateTargetC = result.EstimateTargetC;
+
+
+ this.QuarterlyReport();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ }).catch(error => {
+ console.log(error);
+ }).finally(() => {
+
+ });
+ }
+
+ // 鍒朵綔瀛f姤
+ QuarterlyReport() {
+ var MaintenanceContractId = this.Id;
+ var RecordTypeName = this.RecordTypeDeveloperNameC;
+ var EstimateTarget = this.EstimateTargetC;
+ var url = '';
+ if (EstimateTarget == "缁忛攢鍟�" && (RecordTypeName == "NewMaintenance_Contract" || RecordTypeName == "VM_Contract")) {
+ url = "/apex/MoreMaintenanceContractPop?Id=" + MaintenanceContractId + "&RecordTypeName=" + RecordTypeName;
+ } else {
+ url = "http://powerbi.olympus.com.cn/Home/Login";
+ }
+ window.open(url, '_bank');
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexQuarterlyReport/lexQuarterlyReport.js-meta.xml b/force-app/main/default/lwc/lexQuarterlyReport/lexQuarterlyReport.js-meta.xml
new file mode 100644
index 0000000..3392981
--- /dev/null
+++ b/force-app/main/default/lwc/lexQuarterlyReport/lexQuarterlyReport.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexQuotationProductNew/lexQuotationProductNew.html b/force-app/main/default/lwc/lexQuotationProductNew/lexQuotationProductNew.html
new file mode 100644
index 0000000..1ac43b5
--- /dev/null
+++ b/force-app/main/default/lwc/lexQuotationProductNew/lexQuotationProductNew.html
@@ -0,0 +1,6 @@
+<template>
+ <div class="lexQuotationRequestHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ <lightning-button label="Show Toast" onclick={ShowToastEvent}></lightning-button>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexQuotationProductNew/lexQuotationProductNew.js b/force-app/main/default/lwc/lexQuotationProductNew/lexQuotationProductNew.js
new file mode 100644
index 0000000..6720168
--- /dev/null
+++ b/force-app/main/default/lwc/lexQuotationProductNew/lexQuotationProductNew.js
@@ -0,0 +1,67 @@
+/*
+ * @Description:
+ * @version:
+ * @Author: chen jing wu
+ * @Date: 2023-04-14 17:15:33
+ * @LastEditors: chen jing wu
+ * @LastEditTime: 2023-04-14 17:20:45
+ */
+import { api, wire,LightningElement } from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import init from '@salesforce/apex/OpportunityLightingButtonController.initForQuotationProductNewButton';
+import { updateRecord } from 'lightning/uiRecordApi';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+
+export default class LexQuotationProductNew extends LightningElement {
+ @api recordId;
+ currencyIsoCode;
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+ connectedCallback(){
+ init({
+ recordId:this.recordId
+ }).then(result=>{
+ this.currencyIsoCode = result.currencyIsoCode;
+ this.quotationProductNew();
+ }).catch(error=>{
+ console.log(error);
+ });
+ }
+ quotationProductNew(){
+ var Currency = this.currencyIsoCode;
+ var OppID = this.recordId;
+ if (Currency == 'CNY'){
+ var url = '/00O10000002jviu?pv0=' + OppID;
+ }
+ else if (Currency == 'USD'){
+ var url = '/00O10000005Ju6L?pv0=' + OppID;
+ }
+ window.open(url);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ showToast(msg,type) {
+ const event = new ShowToastEvent({
+ title: '',
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ }
+ updateRecordView(recordId) {
+ updateRecord({fields: { Id: recordId }});
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexQuotationProductNew/lexQuotationProductNew.js-meta.xml b/force-app/main/default/lwc/lexQuotationProductNew/lexQuotationProductNew.js-meta.xml
new file mode 100644
index 0000000..3392981
--- /dev/null
+++ b/force-app/main/default/lwc/lexQuotationProductNew/lexQuotationProductNew.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexQuotationRequest/lexQuotationRequest.css b/force-app/main/default/lwc/lexQuotationRequest/lexQuotationRequest.css
new file mode 100644
index 0000000..e2d6ce2
--- /dev/null
+++ b/force-app/main/default/lwc/lexQuotationRequest/lexQuotationRequest.css
@@ -0,0 +1,10 @@
+.lexQuotationRequestHolder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+.container .uiContainerManager{
+ display: none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexQuotationRequest/lexQuotationRequest.html b/force-app/main/default/lwc/lexQuotationRequest/lexQuotationRequest.html
new file mode 100644
index 0000000..dff927d
--- /dev/null
+++ b/force-app/main/default/lwc/lexQuotationRequest/lexQuotationRequest.html
@@ -0,0 +1,14 @@
+<!--
+ * @Description:
+ * @version:
+ * @Author: chen jing wu
+ * @Date: 2023-04-14 11:09:28
+ * @LastEditors: chen jing wu
+ * @LastEditTime: 2023-04-14 11:10:38
+-->
+<template>
+ <div class="lexQuotationRequestHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ <lightning-button label="Show Toast" onclick={ShowToastEvent}></lightning-button>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexQuotationRequest/lexQuotationRequest.js b/force-app/main/default/lwc/lexQuotationRequest/lexQuotationRequest.js
new file mode 100644
index 0000000..d968b59
--- /dev/null
+++ b/force-app/main/default/lwc/lexQuotationRequest/lexQuotationRequest.js
@@ -0,0 +1,73 @@
+/*
+ * @Description:
+ * @version:
+ * @Author: chen jing wu
+ * @Date: 2023-04-14 11:09:28
+ * @LastEditors: chen jing wu
+ * @LastEditTime: 2023-04-14 11:21:24
+ */
+import { api, wire,LightningElement } from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import queryForQuotationRequestButton from '@salesforce/apex/OpportunityLightingButtonController.queryForQuotationRequestButton';
+import init from '@salesforce/apex/OpportunityLightingButtonController.initForQuotationRequestButton';
+import { updateRecord } from 'lightning/uiRecordApi';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+
+export default class LexQuotationRequest extends LightningElement {
+ @api recordId;
+ biddingProjectNameBidId;
+ estimationId;
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+ connectedCallback(){
+ init({
+ recordId: this.recordId
+ }).then(result=>{
+ this.biddingProjectNameBidId = result.biddingProjectNameBidId;
+ this.estimationId = result.estimationId;
+ this.quotationRequest();
+ })
+ }
+ quotationRequest(){
+ queryForQuotationRequestButton({
+ recordId: this.recordId
+ }).then(result=>{
+ var records = result;
+ var size =records.length;
+ if(size > 1){
+ this.showToast("鏈�2涓垨鑰�2涓互涓婄殑鑽夋涓姤浠峰鎵橈紝璇风‘璁ゃ��","error");
+ }else if(size == 1){
+ var raes = records[0].Id;
+ location.href = "/apex/NewQuoteIrai?id="+ raes+"&tenderid=" + this.biddingProjectNameBidId;
+ }else{
+ location.href = "/apex/NewQuoteIrai?oppid=" + this.recordId + "&oppquoid=" + this.estimationId + "&tenderid=" + this.biddingProjectNameBidId;
+ }
+ this.dispatchEvent(new CloseActionScreenEvent());
+ })
+ }
+ showToast(msg,type) {
+ const event = new ShowToastEvent({
+ title: '',
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ }
+ updateRecordView(recordId) {
+ updateRecord({fields: { Id: recordId }});
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexQuotationRequest/lexQuotationRequest.js-meta.xml b/force-app/main/default/lwc/lexQuotationRequest/lexQuotationRequest.js-meta.xml
new file mode 100644
index 0000000..3392981
--- /dev/null
+++ b/force-app/main/default/lwc/lexQuotationRequest/lexQuotationRequest.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexRCCDScomplete/lexRCCDScomplete.css b/force-app/main/default/lwc/lexRCCDScomplete/lexRCCDScomplete.css
new file mode 100644
index 0000000..79456f2
--- /dev/null
+++ b/force-app/main/default/lwc/lexRCCDScomplete/lexRCCDScomplete.css
@@ -0,0 +1,22 @@
+.outerBorderCss{
+ border: 1px solid #D4D4D4;
+ border-radius : 5px;
+ border-top : 3px solid #565959;
+}
+.borderCss{
+ border: 1px solid #D4D4D4;
+ border-radius : 5px;
+ margin-bottom : 7px;
+ border-top : 3px solid #565959;
+}
+.headerDorderCss{
+ border-top: 1px solid #565959;
+ border-bottom: 1px solid #D4D4D4;
+ padding:3px;
+}
+.centerCss{
+ text-align: center;
+}
+.centerCss .left{
+ margin-left: 100px;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexRCCDScomplete/lexRCCDScomplete.html b/force-app/main/default/lwc/lexRCCDScomplete/lexRCCDScomplete.html
new file mode 100644
index 0000000..c8bdbfc
--- /dev/null
+++ b/force-app/main/default/lwc/lexRCCDScomplete/lexRCCDScomplete.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="sisToOPDHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexRCCDScomplete/lexRCCDScomplete.js b/force-app/main/default/lwc/lexRCCDScomplete/lexRCCDScomplete.js
new file mode 100644
index 0000000..4f7e882
--- /dev/null
+++ b/force-app/main/default/lwc/lexRCCDScomplete/lexRCCDScomplete.js
@@ -0,0 +1,98 @@
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { NavigationMixin } from 'lightning/navigation';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+import init from '@salesforce/apex/QISReportController.initForRCCDScompleteButton';
+import updateQis from '@salesforce/apex/QISReportController.updateQisForRCCDScomplete';
+import UserInfo_Owner from '@salesforce/apex/TaskFeedbackController.UserInfo_Owner';
+import { updateRecord } from 'lightning/uiRecordApi';
+
+export default class lexRCCDScomplete extends LightningElement {
+ @api recordId;
+ IsLoading = true;
+ qisReportId;
+ cdsdate;
+ QIStatus;
+ err;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback () {
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ this.IsLoading = false;
+ this.qisReportId = result.Id;
+ this.cdsdate = result.cdsdate;
+ this.QIStatus = result.qIStatus;
+ if (this.QIStatus == 'RC妫�娴嬬敵璇�') {
+ const evt = new ShowToastEvent({
+ title : '闇�瑕佸厛鐐瑰嚮锛籓CM鏈嶅姟鏈儴鏀跺埌瀹炵墿锛�',
+ message: '',
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ if (this.cdsdate != null) {
+ const evt = new ShowToastEvent({
+ title : 'OCM鏈嶅姟鏈儴CDS宸茬粡瀹屾瘯',
+ message: '',
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ this.updateQisSubmit();
+ }).catch(error => {
+ console.log('error='+error);
+ }).finally(() => {
+
+ });
+ }
+
+ updateRecordView(recordId) {
+ updateRecord({fields: { Id: recordId }});
+ }
+
+ updateQisSubmit(){
+ updateQis({
+ recordId: this.recordId
+ }).then(result =>{
+ console.log('result'+result);
+ this.err = result;
+ if (result!='鎴愬姛') {
+ const evt = new ShowToastEvent({
+ title : '鏇存柊澶辫触',
+ message: this.err,
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+ }
+ this.dispatchEvent(new CloseActionScreenEvent());
+ this.updateRecordView(this.recordId);
+ }).catch(error => {
+ console.log('error='+error);
+ }).finally(() => {
+
+ });
+ }
+
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexRCCDScomplete/lexRCCDScomplete.js-meta.xml b/force-app/main/default/lwc/lexRCCDScomplete/lexRCCDScomplete.js-meta.xml
new file mode 100644
index 0000000..b85f028
--- /dev/null
+++ b/force-app/main/default/lwc/lexRCCDScomplete/lexRCCDScomplete.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexRCCDScomplete">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexRCRecieved/lexRCRecieved.css b/force-app/main/default/lwc/lexRCRecieved/lexRCRecieved.css
new file mode 100644
index 0000000..635bc6c
--- /dev/null
+++ b/force-app/main/default/lwc/lexRCRecieved/lexRCRecieved.css
@@ -0,0 +1,22 @@
+.outerBorderCss{
+ border: 1px solid #D4D4D4;
+ border-radius : 5px;
+ border-top : 3px solid #565959;
+}
+.borderCss{
+ border: 1px solid #D4D4D4;
+ border-radius : 5px;
+ margin-bottom : 7px;
+ border-top : 3px solid #565959;
+}
+.headerDorderCss{
+ border-top: 1px solid #565959;
+ border-bottom: 1px solid #D4D4D4;
+ padding:3px;
+}
+.centerCss{
+ text-align: center;
+}
+.centerCss .left{
+ margin-left: 100px;
+}/* sample css file */
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexRCRecieved/lexRCRecieved.html b/force-app/main/default/lwc/lexRCRecieved/lexRCRecieved.html
new file mode 100644
index 0000000..49a10f7
--- /dev/null
+++ b/force-app/main/default/lwc/lexRCRecieved/lexRCRecieved.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="sisToOPDHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexRCRecieved/lexRCRecieved.js b/force-app/main/default/lwc/lexRCRecieved/lexRCRecieved.js
new file mode 100644
index 0000000..2afabee
--- /dev/null
+++ b/force-app/main/default/lwc/lexRCRecieved/lexRCRecieved.js
@@ -0,0 +1,103 @@
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { NavigationMixin } from 'lightning/navigation';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+import { updateRecord } from 'lightning/uiRecordApi';
+import init from '@salesforce/apex/QISReportController.initForlexRCRecievedButton';
+import updateQis from '@salesforce/apex/QISReportController.updateQisForRCRecieved';
+
+export default class lexRCRecieved extends LightningElement {
+ @api recordId;
+ err;
+ IsLoading = true;
+ qisReportId;
+ qisStatus;
+ isAEProfile;
+ isPAEProfile;
+ isCNBuy;
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback () {
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ this.IsLoading = false;
+ this.qisReportId = result.Id;
+ this.qisStatus = result.qIStatus;
+ this.isAEProfile = result.isAEProfile;
+ this.isPAEProfile = result.isPAEProfile;
+ this.isCNBuy = result.isCNBuy;
+ console.log('this.qisStatus='+this.qisStatus);
+ if (this.qisStatus!='RC妫�娴嬬敵璇�') {
+ const evt = new ShowToastEvent({
+ title : 'OCM鏈嶅姟鏈儴宸茬粡鏀跺埌瀹炵墿',
+ message: '',
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }else{
+ if (this.isAEProfile == null || this.isPAEProfile == null || this.isCNBuy != 'true') {
+ const evt = new ShowToastEvent({
+ title : '瀹夊叏淇℃伅鏈垽瀹氾紝璇疯仈绯昏川閲忔硶瑙勯儴',
+ message: '',
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }else{
+ this.updateQisSubmit();
+ }
+ }
+ }).catch(error => {
+ console.log('error='+error);
+ }).finally(() => {
+
+ });
+ }
+
+ updateRecordView(recordId) {
+ updateRecord({fields: { Id: recordId }});
+ }
+
+ updateQisSubmit(){
+ updateQis({
+ recordId: this.recordId
+ }).then(result =>{
+
+ console.log('result'+result);
+ this.err = result;
+ if (result!='鎴愬姛') {
+ const evt = new ShowToastEvent({
+ title : '鏇存柊澶辫触',
+ message: this.err,
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+ }
+ this.dispatchEvent(new CloseActionScreenEvent());
+ this.updateRecordView(this.recordId);
+ }).catch(error => {
+ console.log('error='+error);
+ }).finally(() => {
+
+ });
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexRCRecieved/lexRCRecieved.js-meta.xml b/force-app/main/default/lwc/lexRCRecieved/lexRCRecieved.js-meta.xml
new file mode 100644
index 0000000..120b162
--- /dev/null
+++ b/force-app/main/default/lwc/lexRCRecieved/lexRCRecieved.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexRCRecieved">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexRCSubmit/lexRCSubmit.css b/force-app/main/default/lwc/lexRCSubmit/lexRCSubmit.css
new file mode 100644
index 0000000..79456f2
--- /dev/null
+++ b/force-app/main/default/lwc/lexRCSubmit/lexRCSubmit.css
@@ -0,0 +1,22 @@
+.outerBorderCss{
+ border: 1px solid #D4D4D4;
+ border-radius : 5px;
+ border-top : 3px solid #565959;
+}
+.borderCss{
+ border: 1px solid #D4D4D4;
+ border-radius : 5px;
+ margin-bottom : 7px;
+ border-top : 3px solid #565959;
+}
+.headerDorderCss{
+ border-top: 1px solid #565959;
+ border-bottom: 1px solid #D4D4D4;
+ padding:3px;
+}
+.centerCss{
+ text-align: center;
+}
+.centerCss .left{
+ margin-left: 100px;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexRCSubmit/lexRCSubmit.html b/force-app/main/default/lwc/lexRCSubmit/lexRCSubmit.html
new file mode 100644
index 0000000..49a10f7
--- /dev/null
+++ b/force-app/main/default/lwc/lexRCSubmit/lexRCSubmit.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="sisToOPDHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexRCSubmit/lexRCSubmit.js b/force-app/main/default/lwc/lexRCSubmit/lexRCSubmit.js
new file mode 100644
index 0000000..a65405b
--- /dev/null
+++ b/force-app/main/default/lwc/lexRCSubmit/lexRCSubmit.js
@@ -0,0 +1,160 @@
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { NavigationMixin } from 'lightning/navigation';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+import init from '@salesforce/apex/QISReportController.initForRCSubmitButton';
+import updateQis from '@salesforce/apex/QISReportController.updateQisWithRC';
+import UserInfo_Owner from '@salesforce/apex/TaskFeedbackController.UserInfo_Owner';
+import { updateRecord } from 'lightning/uiRecordApi';
+
+export default class lexRCSubmit extends LightningElement {
+ @api recordId;
+ IsLoading = true;
+ qisReportId;
+ qisStatus;
+ OSHstaff;
+ OSHstaffEmail;
+ CancelQISReason;
+ Rcid;
+ RCinspectionDate;
+ QISReplyDay;
+ RCproblemnotfound;
+ type;
+ err;
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback () {
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ this.IsLoading = false;
+ this.qisReportId = result.Id;
+ this.qisStatus = result.qIStatus;
+ this.OSHstaff = result.oSHstaff;
+ this.OSHstaffEmail = result.oSHstaffEmail;
+ this.CancelQISReason = result.cancelQISReason;
+ this.Rcid = result.rCid;
+ this.RCinspectionDate = result.rCinspectionDate;
+ this.QISReplyDay = result.qISReplyDay;
+ this.RCproblemnotfound = result.rCproblemnotfound;
+ if (this.qisStatus!='RC妫�娴嬩腑') {
+ const evt = new ShowToastEvent({
+ title : '宸茬粡鎻愪氦瀹℃壒',
+ message: '',
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ if (this.CancelQISReason!=null) {
+ if (this.qisStatus == 'RC妫�娴嬬敵璇�') {
+ const evt = new ShowToastEvent({
+ title : '闇�瑕佸厛鐐瑰嚮锛籓CM鏈嶅姟鏈儴鏀跺埌瀹炵墿锛�',
+ message: '',
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ if (this.Rcid ==null) {
+ const evt = new ShowToastEvent({
+ title : '鍒ゅ畾鎷呭綋蹇呴』濉啓',
+ message: '',
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ if (this.RCinspectionDate == null) {
+ const evt = new ShowToastEvent({
+ title : 'OCM鏈嶅姟鏈儴杩樻病鏈夋娴嬪畬姣�',
+ message: '',
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ if (this.QISReplyDay!=null && this.RCproblemnotfound == 'true') {
+ const evt = new ShowToastEvent({
+ title : '鏈�缁堝垽瀹氭椂锛岃鍙栨秷[鏁呴殰鏈彂鐜扮暀涓嬬户缁瀵焆骞堕�夋嫨[瀵瑰簲鏂规硶]',
+ message: '',
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ if (confirm("涓�鏃︽彁浜ゆ璁板綍浠ュ緟鎵瑰噯锛屾牴鎹偍鐨勮缃偍鍙兘涓嶅啀鑳藉缂栬緫姝よ褰曟垨灏嗕粬浠庢壒鍑嗚繃绋嬩腑璋冨洖銆傛槸鍚︾户缁紵")) {
+ this.type = '1';
+ }else{
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ }else{
+ if (confirm("涓�鏃︽彁浜ゅ叧闂璁板綍浠ュ緟鎵瑰噯锛屾牴鎹偍鐨勮缃偍鍙兘涓嶅啀鑳藉缂栬緫姝よ褰曟垨灏嗕粬浠庢壒鍑嗚繃绋嬩腑璋冨洖銆傛槸鍚︾户缁紵")) {
+ this.type = '2';
+ }else{
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ }
+ console.log('this.type='+this.type);
+ // this.dispatchEvent(new CloseActionScreenEvent());
+ this.updateQisSubmit();
+ }).catch(error => {
+ console.log('error='+error);
+ }).finally(() => {
+
+ });
+ }
+
+ updateRecordView(recordId) {
+ updateRecord({fields: { Id: recordId }});
+ }
+
+ updateQisSubmit(){
+ updateQis({
+ recordId: this.recordId,
+ type: this.type,
+ oldQIStatus: this.qisStatus
+ }).then(result =>{
+ console.log('result'+result);
+ this.err = result;
+ if (result!='鎴愬姛') {
+ const evt = new ShowToastEvent({
+ title : '鏇存柊澶辫触',
+ message: this.err,
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+ }
+ this.dispatchEvent(new CloseActionScreenEvent());
+ this.updateRecordView(this.recordId);
+ }).catch(error => {
+ console.log('error='+error);
+ }).finally(() => {
+
+ });
+ }
+
+
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexRCSubmit/lexRCSubmit.js-meta.xml b/force-app/main/default/lwc/lexRCSubmit/lexRCSubmit.js-meta.xml
new file mode 100644
index 0000000..87bc598
--- /dev/null
+++ b/force-app/main/default/lwc/lexRCSubmit/lexRCSubmit.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexRCSubmit">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexRCinspectioncompletedate/lexRCinspectioncompletedate.css b/force-app/main/default/lwc/lexRCinspectioncompletedate/lexRCinspectioncompletedate.css
new file mode 100644
index 0000000..635bc6c
--- /dev/null
+++ b/force-app/main/default/lwc/lexRCinspectioncompletedate/lexRCinspectioncompletedate.css
@@ -0,0 +1,22 @@
+.outerBorderCss{
+ border: 1px solid #D4D4D4;
+ border-radius : 5px;
+ border-top : 3px solid #565959;
+}
+.borderCss{
+ border: 1px solid #D4D4D4;
+ border-radius : 5px;
+ margin-bottom : 7px;
+ border-top : 3px solid #565959;
+}
+.headerDorderCss{
+ border-top: 1px solid #565959;
+ border-bottom: 1px solid #D4D4D4;
+ padding:3px;
+}
+.centerCss{
+ text-align: center;
+}
+.centerCss .left{
+ margin-left: 100px;
+}/* sample css file */
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexRCinspectioncompletedate/lexRCinspectioncompletedate.html b/force-app/main/default/lwc/lexRCinspectioncompletedate/lexRCinspectioncompletedate.html
new file mode 100644
index 0000000..49a10f7
--- /dev/null
+++ b/force-app/main/default/lwc/lexRCinspectioncompletedate/lexRCinspectioncompletedate.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="sisToOPDHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexRCinspectioncompletedate/lexRCinspectioncompletedate.js b/force-app/main/default/lwc/lexRCinspectioncompletedate/lexRCinspectioncompletedate.js
new file mode 100644
index 0000000..73d0840
--- /dev/null
+++ b/force-app/main/default/lwc/lexRCinspectioncompletedate/lexRCinspectioncompletedate.js
@@ -0,0 +1,98 @@
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { NavigationMixin } from 'lightning/navigation';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+import { updateRecord } from 'lightning/uiRecordApi';
+import init from '@salesforce/apex/QISReportController.initForlexRCinspectioncompletedateButton';
+import updateQis from '@salesforce/apex/QISReportController.updateQisForRCinspectioncompletedate';
+
+export default class lexRCinspectioncompletedate extends LightningElement {
+ @api recordId;
+ err;
+ IsLoading = true;
+ qisReportId;
+ qisStatus;
+ rCinspectionDate;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback () {
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ this.IsLoading = false;
+ this.qisReportId = result.Id;
+ this.qisStatus = result.qIStatus;
+ this.rCinspectionDate = result.rCinspectionDate;
+
+ if (this.qisStatus =='RC妫�娴嬬敵璇�') {
+ const evt = new ShowToastEvent({
+ title : '闇�瑕佸厛鐐瑰嚮锛籓CM鏈嶅姟鏈儴鏀跺埌瀹炵墿锛�',
+ message: '',
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }else if(this.rCinspectionDate != null){
+ const evt = new ShowToastEvent({
+ title : 'OCM鏈嶅姟鏈儴妫�娴嬪凡缁忓畬姣�',
+ message: '',
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }else{
+ this.updateQisSubmit();
+ }
+ }).catch(error => {
+ console.log('error='+error);
+ }).finally(() => {
+
+ });
+ }
+
+ updateRecordView(recordId) {
+ updateRecord({fields: { Id: recordId }});
+ }
+
+ updateQisSubmit(){
+ updateQis({
+ recordId: this.recordId
+ }).then(result =>{
+
+ console.log('result'+result);
+ this.err = result;
+ if (result!='鎴愬姛') {
+ const evt = new ShowToastEvent({
+ title : '鏇存柊澶辫触',
+ message: this.err,
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+ }
+ this.dispatchEvent(new CloseActionScreenEvent());
+ this.updateRecordView(this.recordId);
+ }).catch(error => {
+ console.log('error='+error);
+ }).finally(() => {
+
+ });
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexRCinspectioncompletedate/lexRCinspectioncompletedate.js-meta.xml b/force-app/main/default/lwc/lexRCinspectioncompletedate/lexRCinspectioncompletedate.js-meta.xml
new file mode 100644
index 0000000..1546b5e
--- /dev/null
+++ b/force-app/main/default/lwc/lexRCinspectioncompletedate/lexRCinspectioncompletedate.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexRCinspectioncompletedate">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexRentalApplyCanleButton/lexRentalApplyCanleButton.css b/force-app/main/default/lwc/lexRentalApplyCanleButton/lexRentalApplyCanleButton.css
new file mode 100644
index 0000000..fbb1bbe
--- /dev/null
+++ b/force-app/main/default/lwc/lexRentalApplyCanleButton/lexRentalApplyCanleButton.css
@@ -0,0 +1,11 @@
+.rentalApplyCanleButtonHolder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+
+.container .uiContainerManager{
+ display : none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexRentalApplyCanleButton/lexRentalApplyCanleButton.html b/force-app/main/default/lwc/lexRentalApplyCanleButton/lexRentalApplyCanleButton.html
new file mode 100644
index 0000000..e9bebad
--- /dev/null
+++ b/force-app/main/default/lwc/lexRentalApplyCanleButton/lexRentalApplyCanleButton.html
@@ -0,0 +1,4 @@
+<template>
+<div class="rentalApplyCanleButtonHolder" if:true={IsLoding}>
+<lightning-spinner alternative-text="Loading" size="medium"> </lightning-spinner> </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexRentalApplyCanleButton/lexRentalApplyCanleButton.js b/force-app/main/default/lwc/lexRentalApplyCanleButton/lexRentalApplyCanleButton.js
new file mode 100644
index 0000000..12bcc89
--- /dev/null
+++ b/force-app/main/default/lwc/lexRentalApplyCanleButton/lexRentalApplyCanleButton.js
@@ -0,0 +1,110 @@
+import { LightningElement,api, track, wire } from 'lwc';
+import init from '@salesforce/apex/RentalApplyCancleButtonController.initRentalApplyCanle'
+import {CurrentPageReference} from 'lightning/navigation';
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+export default class lexRentalApplyCanleButton extends LightningElement {
+
+
+ @api recordId;
+ Yi_loaner_arranged__c;
+ Id;
+ RA_Status__c;
+ IsLoading=true;
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference){
+ console.log("杩涘叆椤甸潰");
+ console.log(currentPageReference);
+ if(currentPageReference){
+ const urvalue=currentPageReference.state.recordId;
+ if(urvalue){
+ let str=`${urvalue}`;
+ console.log('str');
+ console.log(str);
+ this.recordId=str;
+ }
+ }
+ }
+
+ currentDay(){
+ var date=new Date();
+ var toDay=new Date();
+ toDay='';
+ toDay+=date.getFullYear()+'/';
+ toDay+=date.getMonth()+1+'/';
+ toDay+=date.getDate();
+ return toDay;
+ }
+
+
+ connectedCallback(){
+ console.log(this.recordId);
+ init({recordId:this.recordId}).then(result=>{
+ console.log(result);
+ if(result!=null){
+ this.IsLoading=false;
+ var a=new Array('a');
+ a.push('12');
+ console.log('a='+a);
+ this.Yi_loaner_arranged__c=result.YiLoanerArranged;
+ this.Id=result.Id;
+ this.RA_Status__c=result.RAStatus;
+ console.log("end");
+ console.log("RA_Status__c="+this.RA_Status__c);
+ console.log("Yi_loaner_arranged__c="+this.Yi_loaner_arranged__c);
+ this.cancelSubmit();
+ }
+ }).catch(err=>{
+ console.log("error:");
+ console.log(err);
+ }).finally(()=>{
+
+ });
+ }
+
+
+
+ cancelSubmit(){
+ console.log('杩涘叆鏂规硶');
+ if (this.RA_Status__c == "鍙栨秷") {
+ this.dispatchEvent(new CloseActionScreenEvent());
+ // alert("宸茬粡鍙栨秷锛�");
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:"宸茬粡鍙栨秷锛�"
+ });
+ this.dispatchEvent(event);
+ console.log('10');
+ return;
+ }
+ console.log("1 if end ");
+ if (this.RA_Status__c == "鍒犻櫎" ) {
+ this.dispatchEvent(new CloseActionScreenEvent());
+ // alert("宸茬粡鍒犻櫎锛�");
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:"宸茬粡鍒犻櫎锛�"
+ });
+ this.dispatchEvent(event);
+ console.log('20');
+ return;
+ }
+ console.log('2 if end');
+ if(this.RA_Status__c == "宸插嚭搴�" || this.Yi_loaner_arranged__c > 0) {
+ this.dispatchEvent(new CloseActionScreenEvent());
+ // alert("澶囧搧宸茬粡鍑哄簱锛屼笉鑳藉彇娑堬紒");
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:"澶囧搧宸茬粡鍑哄簱锛屼笉鑳藉彇娑堬紒"
+ });
+ this.dispatchEvent(event);
+ console.log('2');
+ return;
+ }
+ console.log("111111111111111111111111");
+ var raid = this.Id;
+ console.log("raid="+raid)
+ window.open("/apex/RentalApplyCancel?objId="+raid, 'RentalApplyCancel', 'width=500,height=250');
+
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexRentalApplyCanleButton/lexRentalApplyCanleButton.js-meta.xml b/force-app/main/default/lwc/lexRentalApplyCanleButton/lexRentalApplyCanleButton.js-meta.xml
new file mode 100644
index 0000000..0077841
--- /dev/null
+++ b/force-app/main/default/lwc/lexRentalApplyCanleButton/lexRentalApplyCanleButton.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexRentalApplyCanleButton">
+ <apiVersion>51.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__AppPage</target>
+ <target>lightning__RecordPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexRentalApplyDiscountApproval/lexRentalApplyDiscountApproval.html b/force-app/main/default/lwc/lexRentalApplyDiscountApproval/lexRentalApplyDiscountApproval.html
new file mode 100644
index 0000000..aaa4cbd
--- /dev/null
+++ b/force-app/main/default/lwc/lexRentalApplyDiscountApproval/lexRentalApplyDiscountApproval.html
@@ -0,0 +1,6 @@
+<template>
+ <div class="toReportHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ <lightning-button label="Show Toast" onclick={ShowToastEvent}></lightning-button>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexRentalApplyDiscountApproval/lexRentalApplyDiscountApproval.js b/force-app/main/default/lwc/lexRentalApplyDiscountApproval/lexRentalApplyDiscountApproval.js
new file mode 100644
index 0000000..c08a2b4
--- /dev/null
+++ b/force-app/main/default/lwc/lexRentalApplyDiscountApproval/lexRentalApplyDiscountApproval.js
@@ -0,0 +1,108 @@
+import {
+ LightningElement,
+ wire,
+ api
+} from 'lwc';
+import {
+ CurrentPageReference
+} from "lightning/navigation";
+import {
+ CloseActionScreenEvent
+} from 'lightning/actions';
+import init from '@salesforce/apex/buttonRepairQuotationCtl.init';
+import updateRepairQuotation03 from '@salesforce/apex/buttonRepairQuotationCtl.updateRepairQuotation03';
+
+import {
+ ShowToastEvent
+} from 'lightning/platformShowToastEvent';
+
+export default class LexRentalApplyDiscountApproval extends LightningElement {
+ @api recordId;
+ str;
+ IsLoading = true;
+ Id;
+ RentalApplyDiscountStatusC;
+ LoanerRepairSysC;
+ profileId;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback() {
+ console.log(this.recordId);
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result);
+ if (result != null) {
+ this.IsLoading = false;
+ this.Id = result.Id;
+ this.profileId = result.profileId;
+ this.RentalApplyDiscountStatusC = result.RentalApplyDiscountStatusC;
+ this.LoanerRepairSysC = result.LoanerRepairSysC;
+
+ this.RentalApplyDiscountApproval();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ }).catch(error => {
+ console.log(error);
+ })
+ }
+
+ // 澶囧搧鍑忎环鐢宠
+ RentalApplyDiscountApproval() {
+ var power = this.profileId;
+ // 2B2_澶囧搧涓績妫�娴�&浠撳簱绠$悊 00e10000000xnoY
+ if (power != '00e10000000xnoY') {
+ alert('瀵逛笉璧凤紝鎮ㄦ病鏈夋潈闄愭彁浜ゆ鐢宠锛�');
+ return;
+ }
+
+ var status = this.RentalApplyDiscountStatusC;
+ if (status == '瀹℃壒涓�') {
+ alert("瀹℃壒鎻愪氦鎴愬姛,褰撳墠姝e湪瀹℃壒璇峰嬁鍐嶆彁浜わ紒");
+ return;
+ }
+ if (status == '鎵瑰噯') {
+ alert("瀹℃壒宸叉壒鍑�,璇峰嬁鍐嶆彁浜わ紒");
+ return;
+ }
+ if (status == '鑽夋涓�' || status == undefined || status == '椹冲洖') {
+ if (this.LoanerRepairSysC) {
+ updateRepairQuotation03({
+ recordId: this.Id
+ }).then(result => {
+ console.log(result);
+ if (result.length > 0) {
+ var indexs = result.indexOf(": ")
+ var resolves = result.substring(indexs + 1, result.length);
+ alert("鎻愪氦澶辫触" + resolves);
+ return;
+ }
+ })
+ } else {
+ alert("璇峰厛濉啓澶囧搧鍑忎环閲戦锛�");
+ return;
+ }
+ }
+ location.reload();
+ }
+
+ // 寮圭獥
+ ShowToastEvent(msg, type) {
+ const event = new ShowToastEvent({
+ title: '',
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexRentalApplyDiscountApproval/lexRentalApplyDiscountApproval.js-meta.xml b/force-app/main/default/lwc/lexRentalApplyDiscountApproval/lexRentalApplyDiscountApproval.js-meta.xml
new file mode 100644
index 0000000..3392981
--- /dev/null
+++ b/force-app/main/default/lwc/lexRentalApplyDiscountApproval/lexRentalApplyDiscountApproval.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexRentalApplyESetRefreshStatus/lexRentalApplyESetRefreshStatus.css b/force-app/main/default/lwc/lexRentalApplyESetRefreshStatus/lexRentalApplyESetRefreshStatus.css
new file mode 100644
index 0000000..af18c76
--- /dev/null
+++ b/force-app/main/default/lwc/lexRentalApplyESetRefreshStatus/lexRentalApplyESetRefreshStatus.css
@@ -0,0 +1,11 @@
+.Holder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+
+.container .uiContainerManager{
+ display : none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexRentalApplyESetRefreshStatus/lexRentalApplyESetRefreshStatus.html b/force-app/main/default/lwc/lexRentalApplyESetRefreshStatus/lexRentalApplyESetRefreshStatus.html
new file mode 100644
index 0000000..f60755f
--- /dev/null
+++ b/force-app/main/default/lwc/lexRentalApplyESetRefreshStatus/lexRentalApplyESetRefreshStatus.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="Holder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexRentalApplyESetRefreshStatus/lexRentalApplyESetRefreshStatus.js b/force-app/main/default/lwc/lexRentalApplyESetRefreshStatus/lexRentalApplyESetRefreshStatus.js
new file mode 100644
index 0000000..7cd6690
--- /dev/null
+++ b/force-app/main/default/lwc/lexRentalApplyESetRefreshStatus/lexRentalApplyESetRefreshStatus.js
@@ -0,0 +1,91 @@
+import { LightningElement, track, wire, api } from 'lwc';
+import {CurrentPageReference,NavigationMixin} from 'lightning/navigation';
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+
+
+import eSetRefreshStatus from '@salesforce/apex/RentalApplyESetRefreshStatusController.eSetRefreshStatus';
+export default class lexRentalApplyESetRefreshStatus extends LightningElement {
+ @api raeSetId;
+ IsLoading=true;
+ refreshResult;
+
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(currentPageReference);
+
+ if(currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if(urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+
+ }
+ }
+ }
+
+ connectedCallback() {
+ console.log('this.raeSetId:' + this.recordId);
+ eSetRefreshStatus({
+ raeSetId : this.recordId
+ }).then(result => {
+ this.refreshResult = result;
+
+
+ this.cancelSubmit().then(res=>{
+ this.IsLoading=false;
+ this.dispatchEvent(new CloseActionScreenEvent());
+ });
+
+ }).catch( error =>{
+ console.log(error);
+ }).finally(()=>{
+
+
+ });
+ }
+
+ async cancelSubmit(){
+ if(this.refreshResult == '1') {
+ this.showToast('','鐘舵�佹洿鏂板畬姣�','success');
+ // alert("鐘舵�佹洿鏂板畬姣�!");
+ location.href = "/"+this.recordId;
+
+ } else {
+ console.log("result:",this.refreshResult);
+ this.showToast('','鏇存柊澶辫触锛岃鑱旂郴绠$悊鍛橈紒','warning');
+ // alert("鏇存柊澶辫触锛岃鑱旂郴绠$悊鍛橈紒");
+
+ }
+
+ }
+ showToast(_title,_message,_variant) {
+ const event = new ShowToastEvent({
+ title: _title,
+ message:_message,
+ variant: _variant,
+ });
+ this.dispatchEvent(event);
+ }
+
+}
+
+// old js浠g爜锛�
+// {!RequireScript("/soap/ajax/51.0/connection.js")}
+// {!RequireScript("/soap/ajax/51.0/apex.js")}
+
+// var raeSet = '{!Rental_Apply_Equipment_Set__c.Id}';
+// try {
+// var rtn = sforce.apex.execute("RentalApplyWebService", "eSetRefreshStatus", {raeSetId: raeSet});
+// if (rtn = '1') {
+// alert("鐘舵�佹洿鏂板畬姣�!");
+// location.href = "/{!Rental_Apply_Equipment_Set__c.Id}";
+// } else {
+// alert(rtn);
+// }
+// } catch(e) {
+// alert(e);
+// }
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexRentalApplyESetRefreshStatus/lexRentalApplyESetRefreshStatus.js-meta.xml b/force-app/main/default/lwc/lexRentalApplyESetRefreshStatus/lexRentalApplyESetRefreshStatus.js-meta.xml
new file mode 100644
index 0000000..d6ac86f
--- /dev/null
+++ b/force-app/main/default/lwc/lexRentalApplyESetRefreshStatus/lexRentalApplyESetRefreshStatus.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexRentalApplyESetRefreshStatus">
+ <apiVersion>51.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__AppPage</target>
+ <target>lightning__RecordPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexRentalApplyJump/lexRentalApplyJump.css b/force-app/main/default/lwc/lexRentalApplyJump/lexRentalApplyJump.css
new file mode 100644
index 0000000..af18c76
--- /dev/null
+++ b/force-app/main/default/lwc/lexRentalApplyJump/lexRentalApplyJump.css
@@ -0,0 +1,11 @@
+.Holder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+
+.container .uiContainerManager{
+ display : none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexRentalApplyJump/lexRentalApplyJump.html b/force-app/main/default/lwc/lexRentalApplyJump/lexRentalApplyJump.html
new file mode 100644
index 0000000..960b41d
--- /dev/null
+++ b/force-app/main/default/lwc/lexRentalApplyJump/lexRentalApplyJump.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="Holder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexRentalApplyJump/lexRentalApplyJump.js b/force-app/main/default/lwc/lexRentalApplyJump/lexRentalApplyJump.js
new file mode 100644
index 0000000..70a5d7d
--- /dev/null
+++ b/force-app/main/default/lwc/lexRentalApplyJump/lexRentalApplyJump.js
@@ -0,0 +1,112 @@
+import { LightningElement,api, track, wire } from 'lwc';
+import {CurrentPageReference} from 'lightning/navigation';
+import { CloseActionScreenEvent } from 'lightning/actions';
+import getUserId from '@salesforce/apex/RentalApplyControllerLWT.getUserId';
+import init from '@salesforce/apex/SelectSubstituteControllerLWT.initFromSelectSubstituteButton';
+import selectRentalApplyEquipmentSetByID from '@salesforce/apex/SelectSubstituteControllerLWT.selectRentalApplyEquipmentSetByID';
+import selectRentalApplyEquipmentSetByRACID from '@salesforce/apex/SelectSubstituteControllerLWT.selectRentalApplyEquipmentSetByRACID';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+
+export default class lexRentalApplyJump extends LightningElement {
+
+ @api recordId;
+ id;
+ RentalApplyId;
+ Status;
+ IsLoading=true;
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference){
+ alert("杩涘叆椤甸潰")
+ console.log("杩涘叆椤甸潰");
+ console.log(currentPageReference);
+ if(currentPageReference){
+ const urvalue=currentPageReference.state.recordId;
+ if(urvalue){
+ let str=`${urvalue}`;
+ console.log('str');
+ console.log(str);
+ this.recordId=str;
+ }
+ }
+ }
+
+
+
+ connectedCallback(){
+ console.log(this.recordId);
+ init({recordId:this.recordId}).then(result=>{
+ console.log(result);
+ if(result!=null){
+ this.id=result.id;
+ this.RentalApplyId=result.RentalApplyId;
+ this.Status=result.Status;
+ this.cancelSubmit().then(res=>{
+ this.IsLoading=false;
+ this.dispatchEvent(new CloseActionScreenEvent());
+ });
+ }
+ }).catch(err=>{
+ console.log("error:");
+ console.log(err);
+ }).finally(()=>{
+
+ });
+ }
+
+
+
+ async cancelSubmit(){
+ // 鍙垎閰嶄唬鏇垮搧鍓嶆彁1 -- 澶囧搧鍊熷嚭鐢宠鐨勭姸鎬侊細鈥滃凡鎵瑰噯鈥濆埌鈥滃凡鍑哄簱鎸囩ず鈥�
+ var userIdArr = ['00510000001O6HoAAK','00510000001O6I2AAK','00510000000gW9pAAE','00510000000gW9BAAU','00510000008pVbWAAU','00510000001OOMjAAO','00510000005sEEMAA2','00510000004pNOtAAM','00510000005QJ2eAAG','00510000007iCmcAAE','00510000006kIg8AAE','00510000004rbkzAAA','00510000003LMHuAAO','00510000000gW92AAE'];
+ //褰撳墠鐢ㄦ埛鐧诲綍id
+ var userId;
+ await getUserId().then(res=>{
+ userId=res;
+ });
+ console.log(userId);
+ if(userIdArr.indexOf(userId)== -1){
+ // alert('瀵逛笉璧蜂綘娌℃湁姝ゆ搷浣滅殑鏉冮檺锛�');
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:'瀵逛笉璧蜂綘娌℃湁姝ゆ搷浣滅殑鏉冮檺锛�'
+ });
+ this.dispatchEvent(event);
+ } else {
+ console.log(userId);
+ let raid = this.RentalApplyId;
+ console.log("hh1");
+ await selectRentalApplyEquipmentSetByRACID({recordId:this.RentalApplyId}).then(res=>{
+ console.log(res);
+ if (res==null||res.length==0) {
+ // alert("鏌ヨ缁撴灉涓虹┖");
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:"鏌ヨ缁撴灉涓虹┖"
+ });
+ this.dispatchEvent(event);
+ return;
+ }
+ var allRecords = res;
+ var validSize= allRecords.length;
+ var canJump = false;
+ for(i=0;i<validSize;i++){
+ if(allRecords[i].Allow_Adjust_Queue_Flag__c == true){
+ canJump = true;
+ break;
+ }
+ }
+ if(canJump == true){
+ // alert("閫夋嫨鍊熷嚭澶囧搧涓�瑙堣褰曟湁宸茬粡鍏佽鎻掗槦鐨勶紝璇烽�夋嫨鏈厑璁哥殑涓�瑙�");
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:"閫夋嫨鍊熷嚭澶囧搧涓�瑙堣褰曟湁宸茬粡鍏佽鎻掗槦鐨勶紝璇烽�夋嫨鏈厑璁哥殑涓�瑙�"
+ });
+ this.dispatchEvent(event);
+ }else{
+ let records=[this.recordId];
+ window.open("/apex/RentalApplyJump?objId="+this.RentalApplyId+"&raesIds="+records, 'RentalApplyJump', 'width=700,height=300');
+ }
+ });
+ }
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexRentalApplyJump/lexRentalApplyJump.js-meta.xml b/force-app/main/default/lwc/lexRentalApplyJump/lexRentalApplyJump.js-meta.xml
new file mode 100644
index 0000000..d96b725
--- /dev/null
+++ b/force-app/main/default/lwc/lexRentalApplyJump/lexRentalApplyJump.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexRentalApplyJump">
+ <apiVersion>51.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__AppPage</target>
+ <target>lightning__RecordPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexRentalApplySubmitedApprovalButton/lexRentalApplySubmitedApprovalButton.css b/force-app/main/default/lwc/lexRentalApplySubmitedApprovalButton/lexRentalApplySubmitedApprovalButton.css
new file mode 100644
index 0000000..c9f7866
--- /dev/null
+++ b/force-app/main/default/lwc/lexRentalApplySubmitedApprovalButton/lexRentalApplySubmitedApprovalButton.css
@@ -0,0 +1,11 @@
+.SubmitedApprovalHolder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+
+.container .uiContainerManager{
+ display : none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexRentalApplySubmitedApprovalButton/lexRentalApplySubmitedApprovalButton.html b/force-app/main/default/lwc/lexRentalApplySubmitedApprovalButton/lexRentalApplySubmitedApprovalButton.html
new file mode 100644
index 0000000..5e7ce99
--- /dev/null
+++ b/force-app/main/default/lwc/lexRentalApplySubmitedApprovalButton/lexRentalApplySubmitedApprovalButton.html
@@ -0,0 +1,5 @@
+<template>
+<div class="SubmitedApprovalHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexRentalApplySubmitedApprovalButton/lexRentalApplySubmitedApprovalButton.js b/force-app/main/default/lwc/lexRentalApplySubmitedApprovalButton/lexRentalApplySubmitedApprovalButton.js
new file mode 100644
index 0000000..c78bec3
--- /dev/null
+++ b/force-app/main/default/lwc/lexRentalApplySubmitedApprovalButton/lexRentalApplySubmitedApprovalButton.js
@@ -0,0 +1,758 @@
+import { LightningElement,api, track, wire } from 'lwc';
+import init from '@salesforce/apex/RentalApplyApprovalButtonController.initRentalApply'
+import select01 from '@salesforce/apex/RentalApplyApprovalButtonController.getRasdList'
+import select02 from '@salesforce/apex/RentalApplyApprovalButtonController.getDeliveryGood1'
+import select03 from '@salesforce/apex/RentalApplyApprovalButtonController.getDeliveryGood2'
+import getProfileId from '@salesforce/apex/RentalApplyApprovalButtonController.getProfileId'
+import select05 from '@salesforce/apex/RentalApplyApprovalButtonController.getDeliveryGood3'
+import select06 from '@salesforce/apex/RentalApplyApprovalButtonController.getDeliveryGood4'
+import select07 from '@salesforce/apex/RentalApplyApprovalButtonController.getRasdList2'
+import select08 from '@salesforce/apex/RentalApplyApprovalButtonController.getRace'
+import getUserId from '@salesforce/apex/RentalApplyApprovalButtonController.getUserId'
+import select09 from '@salesforce/apex/RentalApplyApprovalButtonController.getManagerUers'
+import execute3 from '@salesforce/apex/RentalApplyApprovalButtonController.setSObjectShare'
+import updatedRentalApply from '@salesforce/apex/RentalApplyApprovalButtonController.updatedRentalApply'
+import {CurrentPageReference} from 'lightning/navigation';
+import { CloseActionScreenEvent } from 'lightning/actions';
+/**
+ 瀵硅薄锛氬鍝佸�熷嚭鐢宠
+ 鎸夐挳锛氭彁浜ゅ緟瀹℃壒
+ author锛歬kbes
+**/
+
+export default class lexRentalApplySubmitedApprovalButton extends LightningElement {
+
+ @api recordId;
+ IsLoading=true;
+ Id;
+ applyUser__c;
+ Campaign__c;
+ Demo_purpose1__c;
+ demo_purpose2__c;
+ Follow_UP_Opp__c;
+ Statu_Achievements__c;
+ Status__c;
+ Statu_Achievements_ID__c;
+ SupplementCreated__c;
+ Request_shipping_day__c;
+ Repair__c;
+ RecordTypeId;
+ OPDPlan__c;
+ Rental_Apply__c;
+ OwnerId;
+
+
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference){
+ if(currentPageReference){
+ console.log(currentPageReference);
+ console.log("杩涘叆鑾峰彇page鍙傛暟")
+ const IdValue=currentPageReference.state.recordId;
+ if(IdValue){
+ let str=`${IdValue}`;
+ this.recordId=str;
+ console.log("recordId="+str);
+ }
+ }
+ }
+
+
+ connectedCallback(){
+ init({recordId:this.recordId}).then(res=>{
+ if(res!=null){
+ this.IsLoading=false;
+ console.log("res");
+ console.log(res);
+ console.log("杩涘叆鍒濆鍖栧璞″叾浠栧睘鎬�");
+ // Rental_Apply__c=res;
+ // console.log(Rental_Apply__c);
+
+ this.Id=res.Id;
+ this.applyUser__c=res.applyUser;
+ this.Campaign__c=res.Campaign;
+ this.Demo_purpose1__c=res.Demo_purpose1;
+ this.demo_purpose2__c=res.demo_purpose2;
+
+ this.Follow_UP_Opp__c=res.Follow_UP_Opp;
+
+ this.Statu_Achievements__c=res.Statu_Achievements;
+
+ this.Status__c=res.Status;
+
+ this.Statu_Achievements_ID__c=res.Statu_Achievements_ID;
+
+ this.SupplementCreated__c=res.SupplementCreated;
+ this.Request_shipping_day__c=res.Request_shipping_day;
+ this.Repair__c=res.Repair;
+ this.RecordTypeId=res.RecordTypeId;
+ this.OPDPlan__c=res.OPDPlan;
+ this.QIS_number__c=res.QIS_number;
+ this.OwnerId=res.OwnerId;
+ console.log(this);
+ this.submitForReview();
+
+ }
+ }).catch(error =>{
+ console.log("error");
+ console.log(error.message);
+ }).finally(()=>{
+
+ });
+ }
+
+
+ // currentDay(date){
+ // let toDay=new Date();
+ // toDay='';
+ // toDay+=date.getFullYear()+'/';
+ // toDay+=date.getMonth()+1+'/';
+ // toDay+=date.getDate();
+ // return toDay;
+ // }
+
+
+
+
+
+
+
+
+
+ getConnectDMLErrorMessages (results) {
+ let messages = [],
+ i = 0,
+ len = results.length,
+ r;
+ for (; i < len; i++) {
+ r = results[i];
+ if (!r.getBoolean("success")) {
+ messages = messages.concat(getConnectDMLMessagesOfAResult(r));
+ }
+ }
+ return messages;
+ };
+ getConnectDMLMessagesOfAResult(res) {
+ let messages = [],
+ errors = res.getArray("errors"),
+ i = 0,
+ len = errors.length,
+ e;
+ for (; i < len; i++) {
+ e = errors[i];
+ messages.push(e.message + " " + getConnectDMLErrorFields(e));
+ }
+ return messages;
+ };
+
+
+ getConnectDMLErrorFields (error) {
+ let fields = error.getArray('fields');
+ if (fields.length > 0) {
+ return "[" + fields.join(",") + "]"
+ }
+ else {
+ return "";
+ }
+
+ };
+
+
+ async submitForReview(){
+ console.log("杩涘叆submitForReview鍑芥暟")
+ let buttons = document.getElementsByName('submit_approval_process'.toLowerCase());
+ for (let i=0; i<buttons.length; i++) {
+ buttons[i].className = "btnDisabled";
+ buttons[i].disabled = true;
+ }
+
+ console.log("绗竴涓猧f");
+ if (!confirm("涓�鏃︽彁浜ゆ璁板綍浠ュ緟鎵瑰噯锛屾牴鎹偍鐨勮缃偍鍙兘涓嶅啀鑳藉缂栬緫姝よ褰曟垨灏嗕粬浠庢壒鍑嗚繃绋嬩腑璋冨洖銆傛槸鍚︾户缁紵")) {
+ return;
+ }
+ console.log(this.demo_purpose2__c);
+ console.log(this.Follow_UP_Opp__c);
+ console.log("2 if");
+ if(this.demo_purpose2__c=="璇曠敤锛堟棤璇环锛�"
+ && this.Follow_UP_Opp__c!=null
+ && this.Follow_UP_Opp__c!=""){
+ alert('璇曠敤锛堟棤璇环锛夌洰鐨勭殑澶囧搧鐢宠鍗曪紝涓嶈兘鍏宠仈璇环淇℃伅锛�');
+ return;
+ }
+
+
+
+
+ console.log(this.Statu_Achievements__c);
+ console.log("3 if");
+ if(this.Statu_Achievements__c!=null){
+ let SaID=this.Statu_Achievements_ID__c;
+ let rtn = sforce.apex.execute("thisWebService","thisCheckForSAoneEle",{SaID:SaID});
+ if(rtn!='Fin'){
+ alert(rtn);
+ return;
+ }
+ }
+
+
+
+
+
+
+ console.log("鏌ョ湅currenDay鍑芥暟鏄惁鍙互浣跨敤");
+ console.log("4 if");
+ let date=new Date();
+ console.log('浠婂ぉ鐨勬棩鏈熸槸锛�'+date);
+ if(this.Request_shipping_day__c< date ){
+ alert('甯屾湜鍒拌揣鏃ヤ笉鑳芥棭浜庣敵璇锋彁浜ゆ棩');
+ return;
+ }
+ console.log("select01");
+ let raesdList=new Array();
+ console.log("select01");
+ await select01({Id : this.Id}).then(equipmentList=>{
+ if(equipmentList!=null){
+
+ console.log("equipmentList");
+ console.log(equipmentList);
+ raesdList=equipmentList;
+ }
+ }).catch(err=>{
+ console.log(err.message);
+ }).finally(()=>{
+
+ });
+ console.log("01 end");
+ console.log("5 for if");
+ let modelSet = new Set();
+ let stoppedSet = new Set();
+ //鐩稿綋浜庡闀垮害杩涜浜嗗垽鏂�
+ for(let i=0;i<raesdList.length;i++){
+ modelSet.add(raesdList[i].Fixture_Model_No_F__c);
+ if('false' == raesdList[i].Product_Status_Flag_F__c&& (this.demo_purpose2__c == '璇曠敤锛堟湁璇环锛�' ||
+ this.demo_purpose2__c == '璇曠敤锛堟棤璇环锛�')){
+ stoppedSet.add(raesdList[i].Fixture_Model_No_F__c);
+ }
+ }
+
+
+
+
+
+ console.log("6 if stoppedSet鍒ゆ柇");
+ if(stoppedSet.size> 0) {
+ alert( Array.from(stoppedSet).join('锛�') + ' 浜у搧娉ㄥ唽璇佺姸鎬佷负鍋滄锛屼笉鍙敵璇�');
+ return;
+ }
+ console.log("7 if");
+ console.log("select2");
+ if( this.demo_purpose2__c == '绱㈣禂QIS'){
+ let DeliveryGood = new Array();
+ await select02({QIS_number : JSENCODE(this.QIS_number__c)}).then(qisList=>{
+ if(qisList!=null){
+
+ DeliveryGood=qisList;
+ console.log("select2:"+qisList);
+ }
+ }).catch(err=>{
+ console.log("select2 error");
+ console.log(err.message);
+ }).finally(()=>{
+ console.log("2 finally");
+ });
+ let records=DeliveryGood;
+ // let records= DeliveryGood.getArray("records");
+ console.log("8 if");
+ if(records.length == 0 || !modelSet.has(records[0].nonyushohin__r.Product2.Fixture_Model_No_T__c)){
+ alert('鐢宠鐨勫瀷鍙峰繀椤讳笌QIS鐢宠鍨嬪彿涓�鑷�');
+ return;
+ }
+ }
+ console.log('9 if');
+ if (this.Repair__c != "") {
+ let DeliveryGood;
+ console.log("99999999999999!");
+ await select03({
+ Repair: this.Repair__c
+ })
+ .then((result) => {
+ console.log("ddddddd");
+ console.log(result);
+ if (result != null) {
+ DeliveryGood = result;
+ console.log("result=" + result);
+ }})
+ .catch((err) => {
+ console.log("select3 error");
+ console.log(err.message);
+ });
+ console.log("dd");
+ if(DeliveryGood!=null &&DeliveryGood.length>0){
+ let records = DeliveryGood;
+ console.log("select3" + records);
+ // 淇悊Data records[0]
+ // let records= DeliveryGood.getArray("records");
+ if (
+ this.Demo_purpose1__c == "缁翠慨浠g敤" &&
+ this.demo_purpose2__c != "绱㈣禂QIS"
+ ) {
+ if (
+ !modelSet.has(
+ records[0].Delivered_Product__r.Product2.Fixture_Model_No_T__c
+ )
+ ) {
+ alert("鐢宠鐨勫瀷鍙峰繀椤讳笌閫佷慨鐨勫瀷鍙蜂竴鑷�");
+ return;
+ }
+ }
+
+ if (
+ this.Demo_purpose1__c == "缁翠慨浠g敤" &&
+ this.demo_purpose2__c == "涓�鑸敤鎴�"
+ ) {
+ if (records[0].Repair_Estimated_date_formula__c == null) {
+ alert("涓�鑸淮淇棤鎶ヤ环鏃ワ紝涓嶅彲鍊熺敤澶囧搧");
+ return;
+ } else if (
+ records[0].Repair_Estimated_date_formula__c < "2019-07-01" &&
+ records[0].Agreed_Date__c == null
+ ) {
+ alert("鎶ヤ环鏃ュ湪2019/7/1涔嬪墠涓旀埛鍚屾剰鏃ヤ负绌猴紝涓嶅彲鍊熺敤澶囧搧");
+ return;
+ }
+ //20210608 ljh SFDC-C3CCN4 start
+ if (records[0].Repair_Rank__c == "" || records[0].Repair_Rank__c == null) {
+ alert("鎶ヤ环绛夌骇涓虹┖涓嶈兘鐢宠澶囧搧");
+ return;
+ } else {
+ if (
+ records[0].DW_Sign_Txt__c == "false" &&
+ records[0].Repair_Rank__c == "DW"
+ ) {
+ alert("DW鎶ヤ环绛夌骇涓嬫鍨嬪彿涓嶇鍚堝鍝佺敵璇峰�熺敤鏉′欢");
+ return;
+ }
+ if (
+ records[0].Repair_Rank__c == "D1" ||
+ records[0].Repair_Rank__c == "D2" ||
+ records[0].Repair_Rank__c == "D3" ||
+ records[0].Repair_Rank__c == "E2"
+ ) {
+ alert("鎶ヤ环绛夌骇涓嶇鍚堝鍝佺敵璇峰�熺敤鏉′欢");
+ return;
+ }
+ }
+ //20210608 ljh SFDC-C3CCN4 end
+ }
+ if (
+ this.Demo_purpose1__c == "缁翠慨浠g敤" &&
+ this.demo_purpose2__c == "甯傚満澶氬勾淇濅慨"
+ ) {
+ if (records[0].FSE_ApplyForRepair_Day__c == null) {
+ alert("甯傚満澶氬勾淇濅慨锛屾病鏈塠FSE淇悊鐢宠鏃锛屼笉鍙�熺敤澶囧搧");
+ return;
+ }
+ }
+ if (
+ this.Demo_purpose1__c == "缁翠慨浠g敤" &&
+ this.demo_purpose2__c == "鏁呴殰鎺掓煡"
+ ) {
+ if (records[0].FSE_ApplyForRepair_Day__c == null) {
+ alert("鏁呴殰鎺掓煡锛屾病鏈塠FSE淇悊鐢宠鏃锛屼笉鍙�熺敤澶囧搧");
+ return;
+ }
+ if (records[0].Repair_Ordered_Date__c != null) {
+ alert("鏁呴殰鎺掓煡锛孾4.淇悊鍝丷C鍙楃悊鏃蹇呴』涓虹┖");
+ return;
+ }
+ if (records[0].IfCheckFixture__c == "false") {
+ alert("涓嶆弧瓒虫晠闅滄帓鏌ョ洰鐨�");
+ return;
+ }
+ }
+ if (
+ this.RecordTypeId != "01210000000RHIn" &&
+ getProfileId() != "00e10000000Y3o5" &&
+ records[0].NewProductGuaranteeObject__c == "8: 甯傚満澶氬勾淇濅慨" &&
+ this.demo_purpose2__c != "甯傚満澶氬勾淇濅慨"
+ ) {
+ alert("鏃犲伩鍖哄埆鏍囧織涓�8: 甯傚満澶氬勾淇濅慨锛屽繀椤婚�夋嫨甯傚満澶氬勾淇濅慨銆�");
+ }
+ if (records[0].Repair_Final_Inspection_Date__c != null) {
+ alert("瀛樺湪淇悊鏈�缁堟娴嬫棩锛屼笉鍙�熺敤澶囧搧");
+ return;
+ }
+ if (records[0].Repair_Shipped_Date__c != null) {
+ alert("瀛樺湪RC淇悊杩旈�佹棩锛屼笉鍙�熺敤澶囧搧");
+ return;
+ }
+ if (
+ records[0].Status1__c == "0.鍒犻櫎" ||
+ records[0].Status1__c == "0.鍙栨秷" ||
+ records[0].Status1__c == "5.瀹屾瘯"
+ ) {
+ alert("淇悊宸茬粡缁撴潫锛屼笉鑳界敵璇峰鍝�");
+ return;
+ }
+ if (
+ "{!Rental_Apply__c.demo_purpose2__c}" == "鍐嶄慨鐞�" &&
+ records[0].ReRepairObject_F__c == "false"
+ ) {
+ alert("涓嶅睘浜庡啀鍙楃悊鍙傝�冨璞★紝涓嶅彲鍊熺敤澶囧搧");
+ return;
+ }
+ if (
+ this.RecordTypeId != "01210000000RHIn" &&
+ this.demo_purpose2__c != "淇濅慨鐢ㄦ埛" &&
+ this.demo_purpose2__c != "甯傚満澶氬勾淇濅慨" &&
+ records[0].Number_of_EffectiveContract__c == "鏈�"
+ ) {
+ alert("鏈夌淮淇悎鍚�,蹇呴』閫夋嫨淇濅慨鐢ㄦ埛.");
+ return;
+ }
+ let AssetModelNo = records[0].Delivered_Product__r.Product2.Asset_Model_No__c;
+ if (
+ this.RecordTypeId != "01210000000RHIn" &&
+ records[0].Number_of_EffectiveContract__c == "鏃�" &&
+ records[0].NewProductGuaranteeObject__c == "2: 鏈嶅姟澶氬勾淇濅慨" &&
+ (AssetModelNo == "LTF-190-10-3D" ||
+ AssetModelNo == "LTF-S190-5" ||
+ AssetModelNo == "CYF-VHA" ||
+ AssetModelNo == "CYF-VA2" ||
+ AssetModelNo == "CYF-5A" ||
+ AssetModelNo == "LTF-S190-10" ||
+ AssetModelNo == "OER-AW" ||
+ AssetModelNo == "URF-V" ||
+ AssetModelNo == "URF-V2" ||
+ AssetModelNo == "URF-P6") &&
+ this.demo_purpose2__c != "淇濅慨鐢ㄦ埛"
+ ) {
+ alert("姝よ澶囧瀷鍙峰骞翠繚淇紝璇烽�夋嫨淇濅慨鐢ㄦ埛.");
+ return;
+ }
+
+ if (
+ this.RecordTypeId != "01210000000RHIn" &&
+ records[0].NewProductGuaranteeObject__c == "2: 鏈嶅姟澶氬勾淇濅慨" &&
+ (AssetModelNo == "CV-V1" ||
+ AssetModelNo == "CV-V1(A)" ||
+ AssetModelNo == "CV-V1(B)" ||
+ AssetModelNo == "GIF-LV1" ||
+ AssetModelNo == "CF-LV1L" ||
+ AssetModelNo == "CF-LV1I" ||
+ AssetModelNo == "MAJ-1910") &&
+ (this.demo_purpose2__c == "涓�鑸敤鎴�" || this.demo_purpose2__c == "鍐嶄慨鐞�")
+ ) {
+ alert("濂ヨ緣璁惧锛屼繚淇湡鍐呬笉鎻愪緵澶囧搧.");
+ return;
+ }
+ }
+}
+
+
+
+
+
+ //鏈夌枒闂�
+ console.log("10 if");
+if (this.SupplementCreated__c == "1" && this.OPDPlan__c != "") {
+ let Id = this.Id;
+ let raId = "Id";
+ // let raId = "{!Rental_Apply__c.Id}";
+
+ //?????? execute 鍟ユ剰鎬�
+ let raesCountCheck = sforce.apex.execute(
+ "OpdPlanWebService",
+ "raesCountCheck",
+ { thisId: raId }
+ );
+ if (raesCountCheck != "OK") {
+ alert(raesCountCheck);
+ return;
+ }
+}
+
+
+
+
+
+
+console.log("11 if");
+ if(this.Campaign__c != null
+ && this.OPDPlan__c != ''){
+ let DeliveryGood = new Array();
+ // 20220324 ljh obpm update start 涓嶇煡閬撴槸浠�涔堜笢瑗�
+ let statusSting = "{!$Label.StatusProcessState}";
+ let statusList = statusSting.split(',');
+ await select05({CampaignId : this.CampaignId__c}).then(result=>{
+ if(result!=null){
+
+ DeliveryGood=result;
+ }
+ }).catch(err=>{
+ console.log(err.message);
+ }).finally(()=>{
+
+ });
+ // 20220324 ljh obpm update start
+ // let records= DeliveryGood.getArray("records");
+ let records= DeliveryGood;
+ console.log("select5"+ records);
+ let interval = records[0].Status;
+ let records_Date = records[0].Rental_Apply_Flag__c;
+ if (interval == '鑽夋涓�') {
+ alert('瀛︿細鐘舵�佷负鑽夋涓紝涓嶈兘鎻愪氦');
+ return;
+ }
+ if (interval == '鐢宠涓�') {
+ alert('瀛︿細鐘舵�佷负鐢宠涓紝涓嶈兘鎻愪氦');
+ return;
+ }
+ if (interval == '宸茬粨鏉�') {
+ alert('瀛︿細鐘舵�佷负宸茬粨鏉燂紝涓嶈兘鎻愪氦');
+ return;
+ }
+ if (interval == '宸叉彁浜ゆ姤鍛�') {
+ alert('瀛︿細鐘舵�佷负宸叉彁浜ゆ姤鍛婏紝涓嶈兘鎻愪氦');
+ return;
+ }
+ if (interval == '鍙栨秷鐢宠涓�') {
+ alert('瀛︿細鐘舵�佷负鍙栨秷鐢宠涓紝涓嶈兘鎻愪氦');
+ return;
+ }
+ if (interval == '鍙栨秷') {
+ alert('瀛︿細鐘舵�佷负鍙栨秷锛屼笉鑳芥彁浜�');
+ return;
+ }
+ let today=new Date();
+ if (today >= this.Request_shipping_day__c -7) {
+ alert("蹇呴』鎻愬墠浜庡笇鏈涘埌璐ф棩7澶╀互涓婃彁浜ょ敵璇�");
+ return;
+ }
+ if(records.length>0){
+ // 20220324 ljh obpm add start
+ if (records != null && records[0].IF_Approved__c == "true" && (records[0].Meeting_Approved_No__c == null || records[0].Meeting_Approved_No__c == "") ) {
+ alert("娌℃湁鍐宠鍙风殑锛屾殏涓嶈兘鍑哄��,璇锋洿鏂拌鍐充俊鎭��");
+ return;
+ }
+ if (records != null && records[0].IF_Approved__c == "true" && records[0].Meeting_Approved_No__c != "" && statusList.indexOf(records[0].Approved_Status__c) != -1 && records[0].Approved_Status__c != '鑽夌' ) {
+ alert("宸茬敵璇峰喅瑁佷絾鍐宠鐘舵�佷笉绗﹀悎鏉′欢銆�");
+ return;
+ }
+ }
+
+ // 20220324 ljh obpm add end
+ }
+
+
+
+
+
+
+
+
+
+ console.log("12 if");
+ if(this.QIS_number__c != null && this.QIS_number__c != ''){
+ let DeliveryGood = new Array();
+
+
+ await select06({QIS_ID_Line : this.QIS_ID_Line__c}).then(result=>{
+ if(result!=null){
+
+ DeliveryGood=result;
+ }
+ }).catch(err=>{
+ console.log(err.message);
+ }).finally(()=>{
+
+ });
+
+ // let records= DeliveryGood.getArray("records");
+ let records= DeliveryGood;
+ console.log("select6"+records);
+ let interval;
+ if(interval.length>0){
+ interval = records[0].next_action__c;
+ }
+ if (interval == '閫佸洖') {
+ alert("QIS 宸查�佸洖锛屼笉鑳藉啀鐢宠澶囧搧浜�");
+ return;
+ }
+ }
+ console.log("select6 缁撴潫");
+
+
+
+
+
+
+
+
+
+ // share 杩欓噷鐨刾ush鍟ユ剰鎬�
+
+ let userAccess =[];
+
+ //鍚戞暟缁勭殑灞佽偂鍔犲厓绱�
+ // userAccess.push('{!Rental_Apply__c.applyUserId__c}_Edit');
+ let UserId=this.applyUser__c;
+ // userAccess[userAccess.length]=UserId+'_Edit';
+ // console.log("length鍘诲畾涔�");
+ userAccess.push( UserId+'_Edit');
+ // 杩欓噷鐨刾ush鏈夐棶棰�
+ console.log('userAccess='+userAccess);
+ console.log('OwnerId='+this.OwnerId);
+ console.log('Id='+this.Id);
+ let rtn;
+ await execute3({sobjectName:'Rental_Apply__Share',rowCause:'ApplyUserShare__c',parentId:this.Id,userAccess:userAccess,ownerId:this.OwnerId}).then(result=>{
+ if(result!=null){
+
+ rtn=result;
+ }
+ }).catch(err=>{
+ console.log("execute3 鍑洪棶棰�");
+ console.log(err.message);
+ }).finally(()=>{
+
+ });
+ if (rtn != 'OK') {
+ alert(rtn);
+ return;
+ }
+ console.log("ssssssssssssssssss");
+ //杩藉姞澶囧搧鐢宠鐘舵�佺‘璁わ紝宸茬粡鎻愪氦杩囩殑鐢宠锛屼笉鑳介噸澶嶆彁浜tatus__c
+ if (this.Status__c == '濉啓瀹屾瘯' ||
+ this.Status__c == '鐢宠涓�' ||
+ this.Status__c == '宸叉壒鍑�' ||
+ //鐜板湪鐢宠涔︾殑Status__c宸茬粡娌℃湁寮曞綋瀹屼簡鐘舵�併�傛墍浠ヨ繖閲屼笉闇�瑕佸垽鏂�
+ //this.Status__c == '寮曞綋瀹屼簡' ||
+ this.Status__c == '宸插嚭搴撴寚绀�' ||
+ this.Status__c == '鍒犻櫎' ||
+ this.Status__c == '鍙栨秷' ) {
+ alert('璇峰鍝佺敵璇风姸鎬佺‘璁わ紝宸茬粡鎻愪氦杩囩殑鐢宠锛屼笉鑳介噸澶嶆彁浜�');
+ return;
+ }
+
+ // 娌℃湁鏄庣粏鐨勪竴瑙坈heck
+ let records = new Array();
+
+ console.log("select07");
+ console.log(this.Id);
+ await select07({Id : this.Id}).then(result=>{
+ if(result!=null){
+
+ records=result;
+ console.log(records);
+ }
+ }).catch(err=>{
+ console.log(err.message);
+ }).finally(()=>{
+
+ });
+
+ // let records= raesList.getArray('records');
+
+ if(records.length > 0){
+ alert('鏈夋病鏈夋槑缁嗙殑鍊熷嚭澶囧搧閰嶅涓�瑙堬紝涓嶈兘鎻愪氦');
+ return;
+ }
+
+ let racNew=new Array();
+
+ await select08({Id : this.Id}).then(result=>{
+ if(result!=null){
+
+ racNew=result;
+ console.log(racNew);
+ }
+ }).catch(err=>{
+ console(err.message);
+ }).finally(()=>{
+
+ });
+
+
+ //鏈夌枒闂�
+ // let racNew = racs.getArray("records")[0];
+ // 20220930 ljh SWAG-CJR8S7 end
+ console.log("sssssssssssssssssssssssssss");
+ console.log("xinbuxxxxxxxx");
+ // let userId = "{!$User.Id}";
+ let userId= await getUserId();
+ let manageUsers=new Array();
+ let SalesManagerSubmit__c;
+ let OPDManagerApprover__c;
+ let BuchangApprovalManagerSalesSubmit__c;
+ let OPDBuchangApprover__c;
+ await select09({userId : userId}).then(result=>{
+ if(result!=null){
+
+ manageUsers=result;
+ console.log(manageUsers);
+ console.log(result);
+ }
+ }).catch(err=>{
+ console.log(err.message);
+ }).finally(()=>{
+
+ });
+
+ console.log('manageUsers');
+ if(manageUsers.length>0){
+ if(manageUsers[0].JingliEquipmentManager__c != null){
+ SalesManagerSubmit__c = manageUsers[0].JingliEquipmentManager__r.Name;
+ // 20220930 ljh SWAG-CJR8S7 start
+ if(racNew.OPDPlan__c != null){
+ OPDManagerApprover__c = rac.SalesManagerSubmit__c == racNew.OPDPlan__r.SalesManager_Txt__c?rac.SalesManagerSubmit__c:' ';
+ }
+ // 20220930 ljh SWAG-CJR8S7 end
+ }
+ if(manageUsers[0].Buzhang_Equipment_Manager__c != null){
+ BuchangApprovalManagerSalesSubmit__c= manageUsers[0].Buzhang_Equipment_Manager__r.Name; //2022-07-22 zyh
+ // 20220930 ljh SWAG-CJR8S7 start
+ if(racNew.OPDPlan__c != null){
+ OPDBuchangApprover__c = rac.BuchangApprovalManagerSalesSubmit__c == racNew.OPDPlan__r.BuchangApprovalManagerSales_Txt__c?rac.BuchangApprovalManagerSalesSubmit__c:' ';
+ }
+ // 20220930 ljh SWAG-CJR8S7 end
+ }
+ }
+
+ // 20220704 ljh update SFDC-CFWBBU end
+
+ console.log('update');
+ // let result = sforce.connection.update([rac]);
+
+ // await updatedRentalApply({Id : this.Id,Status:"濉啓瀹屾瘯",SalesManagerSubmit:SalesManagerSubmit__c,
+ // OPDManagerApprover:OPDManagerApprover__c,
+ // BuchangApprovalManagerSalesSubmit:BuchangApprovalManagerSalesSubmit__c,
+ // OPDBuchangApprover:OPDBuchangApprover__c}).then(result=>{
+ // if(result==1){
+
+ // console.log("update success")
+ // }
+ // }).catch(err=>{
+ // console.log(err.message);
+ // }).finally(()=>{
+
+ // });
+ let res=await updatedRentalApply({Id : this.Id,Status:"濉啓瀹屾瘯",SalesManagerSubmit:SalesManagerSubmit__c,
+ OPDManagerApprover:OPDManagerApprover__c,
+ BuchangApprovalManagerSalesSubmit:BuchangApprovalManagerSalesSubmit__c,
+ OPDBuchangApprover:OPDBuchangApprover__c});
+ console.log(res);
+ console.log('getConnectDMLErrorMessages');
+ let message = res.split(",")[1];
+ if(res=="success"){
+ messages.join("\n");
+ return;
+ }
+ window.location.href = window.location;
+ };
+
+
+
+
+
+
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexRentalApplySubmitedApprovalButton/lexRentalApplySubmitedApprovalButton.js-meta.xml b/force-app/main/default/lwc/lexRentalApplySubmitedApprovalButton/lexRentalApplySubmitedApprovalButton.js-meta.xml
new file mode 100644
index 0000000..3ac48e3
--- /dev/null
+++ b/force-app/main/default/lwc/lexRentalApplySubmitedApprovalButton/lexRentalApplySubmitedApprovalButton.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexRentalApplySubmitedApprovalButton">
+ <apiVersion>51.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__AppPage</target>
+ <target>lightning__RecordPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexRequestDB/lexRequestDB.css b/force-app/main/default/lwc/lexRequestDB/lexRequestDB.css
new file mode 100644
index 0000000..a524923
--- /dev/null
+++ b/force-app/main/default/lwc/lexRequestDB/lexRequestDB.css
@@ -0,0 +1,10 @@
+.lexRequestDBHolder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+.container .uiContainerManager{
+ display: none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexRequestDB/lexRequestDB.html b/force-app/main/default/lwc/lexRequestDB/lexRequestDB.html
new file mode 100644
index 0000000..b4aff5b
--- /dev/null
+++ b/force-app/main/default/lwc/lexRequestDB/lexRequestDB.html
@@ -0,0 +1,6 @@
+<template>
+ <div class="lexRequestDBHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ <lightning-button label="Show Toast" onclick={ShowToastEvent}></lightning-button>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexRequestDB/lexRequestDB.js b/force-app/main/default/lwc/lexRequestDB/lexRequestDB.js
new file mode 100644
index 0000000..b3ddb3a
--- /dev/null
+++ b/force-app/main/default/lwc/lexRequestDB/lexRequestDB.js
@@ -0,0 +1,107 @@
+import { api, wire,LightningElement } from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import init from '@salesforce/apex/OpportunityLightingButtonController.initForRequestDBButton';
+import { updateRecord } from 'lightning/uiRecordApi';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+
+export default class LexRequestDB extends LightningElement {
+ @api recordId;
+ stageName;
+ sapSendOK;
+ cntLostCancelReport;
+ cntLostCancelDraft;
+ agency1;
+ agency1Id;
+ name;
+ bidPlannedDate;
+ salesAssistantName;
+ salesAssistantID;
+ profileId;
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+ connectedCallback(){
+ init({
+ recordId: this.recordId
+ }).then(result=>{
+ this.stageName = result.stageName;
+ this.sapSendOK = result.sapSendOK;
+ this.cntLostCancelReport = result.cntLostCancelReport;
+ this.cntLostCancelDraft = result.cntLostCancelDraft;
+ this.agency1 = result.agency1;
+ this.agency1Id = result.agency1Id;
+ this.name = result.name;
+ this.bidPlannedDate = result.bidPlannedDate;
+ this.salesAssistantName = result.salesAssistantName;
+ this.salesAssistantID = result.salesAssistantID;
+ this.profileId = result.profileId;
+ this.requestDB();
+ })
+ }
+ requestDB(){
+ var profileId = this.profileId;
+ if (profileId != '00e10000000Y3o5' && profileId != '00e10000000xnp2' &&
+ profileId != '00e10000000xnpH') {
+ this.showToast("鎮ㄦ病鏈夋巿鏉冨鎵樼殑鏉冮檺銆傝鑱旂郴绯荤粺绠$悊鍛樸��","error");
+ }
+ // js銇牬鍚堛�佺炕瑷炽仌銈屻仧鍊ゃ亴銇с倠銇仹銆佽娉ㄦ剰
+ else if (this.stageName != '寮曞悎'
+ && this.stageName != '璇环'
+ ) {
+ this.showToast("鐘舵��1:" + this.stageName + "銆佷笉鑳藉仛鎺堟潈鐢宠锛�","");
+ }
+ else if (this.sapSendOK == '1') {
+ this.showToast("宸茬粡涓婁紶SAP銆佷笉鑳藉仛鎺堟潈鐢宠浜嗭紒","error");
+ }
+ else if (this.cntLostCancelReport - this.cntLostCancelDraft > 0) {
+ this.showToast("璇环宸茬粡鏈夊彇娑堬紡澶卞崟鎶ュ憡浜嗭紒","error");
+ }
+ else {
+ location.href = '/a2C/e?retURL=%2F' +
+ encodeURI(this.recordId) +
+ '&RecordType=01210000000RNXi' +
+ '&CF00N10000006QdJz=' +
+ encodeURI(this.agency1) +
+ '&CF00N10000006QdJz_lkid=' +
+ encodeURI(this.agency1Id) +
+ '&CF00N10000006QdKn=' +
+ encodeURI(this.name) +
+ '&CF00N10000006QdKn_lkid=' +
+ encodeURI(this.recordId) +
+ '&00N10000006QdK4=' +
+ encodeURI(this.name) +
+ '&00N10000006QdYB=' +
+ encodeURI(this.bidPlannedDate) +
+ '&CF00N10000006QdZT=' +
+ encodeURI(this.salesAssistantName) +
+ '&CF00N10000006QdZT_lkid=' +
+ encodeURI(this.salesAssistantID) +
+ '';
+ };
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ showToast(msg,type) {
+ const event = new ShowToastEvent({
+ title: '',
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ }
+ updateRecordView(recordId) {
+ updateRecord({fields: { Id: recordId }});
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexRequestDB/lexRequestDB.js-meta.xml b/force-app/main/default/lwc/lexRequestDB/lexRequestDB.js-meta.xml
new file mode 100644
index 0000000..3392981
--- /dev/null
+++ b/force-app/main/default/lwc/lexRequestDB/lexRequestDB.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexReturnDeliverySlip/lexReturnDeliverySlip.css b/force-app/main/default/lwc/lexReturnDeliverySlip/lexReturnDeliverySlip.css
new file mode 100644
index 0000000..635bc6c
--- /dev/null
+++ b/force-app/main/default/lwc/lexReturnDeliverySlip/lexReturnDeliverySlip.css
@@ -0,0 +1,22 @@
+.outerBorderCss{
+ border: 1px solid #D4D4D4;
+ border-radius : 5px;
+ border-top : 3px solid #565959;
+}
+.borderCss{
+ border: 1px solid #D4D4D4;
+ border-radius : 5px;
+ margin-bottom : 7px;
+ border-top : 3px solid #565959;
+}
+.headerDorderCss{
+ border-top: 1px solid #565959;
+ border-bottom: 1px solid #D4D4D4;
+ padding:3px;
+}
+.centerCss{
+ text-align: center;
+}
+.centerCss .left{
+ margin-left: 100px;
+}/* sample css file */
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexReturnDeliverySlip/lexReturnDeliverySlip.html b/force-app/main/default/lwc/lexReturnDeliverySlip/lexReturnDeliverySlip.html
new file mode 100644
index 0000000..49a10f7
--- /dev/null
+++ b/force-app/main/default/lwc/lexReturnDeliverySlip/lexReturnDeliverySlip.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="sisToOPDHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexReturnDeliverySlip/lexReturnDeliverySlip.js b/force-app/main/default/lwc/lexReturnDeliverySlip/lexReturnDeliverySlip.js
new file mode 100644
index 0000000..b8c66e8
--- /dev/null
+++ b/force-app/main/default/lwc/lexReturnDeliverySlip/lexReturnDeliverySlip.js
@@ -0,0 +1,53 @@
+import { LightningElement, track, wire, api } from 'lwc';
+import { CurrentPageReference,NavigationMixin } from 'lightning/navigation';
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { encodeDefaultFieldValues } from 'lightning/pageReferenceUtils';
+import init from '@salesforce/apex/ReturnDeliverySlipController.init';
+
+
+export default class lexReturnDeliverySlip extends LightningElement {
+
+ @api recordId;
+ IsLoading = true;
+ raId;
+ raName;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference){
+ if(currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if(urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback(){
+ init({
+ recordId: this.recordId
+ }).then(result =>{
+ if(result.RentalApplyEquipmentSetCnt > 0){
+ console.log(JSON.stringify(result.raeSet));
+ if(JSON.stringify(result.raeSet) != '[]'){
+ var check = result.raeSet && result.raeSet.length>0;
+ if((check || result.RentalApplyEquipmentSetCnt - result.LoanerReceivedNgNum > 0) && result.RentalApplyEquipmentSetCnt > 0){
+ window.open("/apex/EquipmentSetShippmentReceived4?id=" + result.Name);
+ }else{
+ alert("娌℃湁鐢宠鑰呮敹鍒扮‘璁ょ殑鍊熷嚭澶囧搧");
+ }
+ }else{
+ alert("娌℃湁绗﹀悎鏉′欢鐨勫鍝佸�熷嚭鐢宠涓�瑙堟槑缁�");
+ console.log('else');
+ }
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }else{
+ this.dispatchEvent(new CloseActionScreenEvent());
+ alert("娌℃湁澶囧搧鍊熷嚭鐢宠涓�瑙堝強涓�瑙堟槑缁�");
+ }
+ }).catch(err=>{
+ this.dispatchEvent(new CloseActionScreenEvent());
+ console.log('err=='+err);
+ })
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexReturnDeliverySlip/lexReturnDeliverySlip.js-meta.xml b/force-app/main/default/lwc/lexReturnDeliverySlip/lexReturnDeliverySlip.js-meta.xml
new file mode 100644
index 0000000..74849f3
--- /dev/null
+++ b/force-app/main/default/lwc/lexReturnDeliverySlip/lexReturnDeliverySlip.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexOCMSubmit">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSICopyDemand/lexSICopyDemand.html b/force-app/main/default/lwc/lexSICopyDemand/lexSICopyDemand.html
new file mode 100644
index 0000000..978fa09
--- /dev/null
+++ b/force-app/main/default/lwc/lexSICopyDemand/lexSICopyDemand.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="submitHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSICopyDemand/lexSICopyDemand.js b/force-app/main/default/lwc/lexSICopyDemand/lexSICopyDemand.js
new file mode 100644
index 0000000..0cf3d94
--- /dev/null
+++ b/force-app/main/default/lwc/lexSICopyDemand/lexSICopyDemand.js
@@ -0,0 +1,67 @@
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { updateRecord } from 'lightning/uiRecordApi';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+
+// import 聽init 聽from '@salesforce/apex/ISOpportunityDemand.ISOpportunityDemand';
+import 聽ISO_Copy_Func 聽from '@salesforce/apex/ControllerUtil.ISO_Copy_Func';
+
+export default class LexSICopyDemand extends LightningElement {
+ @api recordId;
+ IsLoading = true;
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback(){
+ this.IsLoading = false;
+ this.submit()
+
+ }
+
+
+ showToast(msg,type) {
+ const event = new ShowToastEvent({
+ title: '',
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+
+
+ updateRecordView(recordId) {
+ updateRecord({fields: { Id: recordId }});
+ }
+
+ submit(){
+ ISO_Copy_Func({isoID:this.recordId})
+ .then(res=>{
+ if(res=='瀛樺湪鏈粓姝㈢殑SI闇�姹傝〃锛屼笉鑳藉鍒�'){
+ this.showToast(res,'error')
+ }else{
+ var url = "apex/ISO_DemandOperAndDemonsNew?id="+res;
+ // //window.top.location.reload();
+ window.location.href=url;
+ }
+ })
+ .catch(e=>{
+ console.log(e)
+ })
+
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSICopyDemand/lexSICopyDemand.js-meta.xml b/force-app/main/default/lwc/lexSICopyDemand/lexSICopyDemand.js-meta.xml
new file mode 100644
index 0000000..329e839
--- /dev/null
+++ b/force-app/main/default/lwc/lexSICopyDemand/lexSICopyDemand.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSINewQuoteEntry/lexSINewQuoteEntry.css b/force-app/main/default/lwc/lexSINewQuoteEntry/lexSINewQuoteEntry.css
new file mode 100644
index 0000000..da958a0
--- /dev/null
+++ b/force-app/main/default/lwc/lexSINewQuoteEntry/lexSINewQuoteEntry.css
@@ -0,0 +1,5 @@
+.diap{
+ font-family: "瀹嬩綋",sans-serif;
+ color: red;
+ opacity: 0.5;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSINewQuoteEntry/lexSINewQuoteEntry.html b/force-app/main/default/lwc/lexSINewQuoteEntry/lexSINewQuoteEntry.html
new file mode 100644
index 0000000..41a40c8
--- /dev/null
+++ b/force-app/main/default/lwc/lexSINewQuoteEntry/lexSINewQuoteEntry.html
@@ -0,0 +1 @@
+<template></template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSINewQuoteEntry/lexSINewQuoteEntry.js b/force-app/main/default/lwc/lexSINewQuoteEntry/lexSINewQuoteEntry.js
new file mode 100644
index 0000000..707ee4e
--- /dev/null
+++ b/force-app/main/default/lwc/lexSINewQuoteEntry/lexSINewQuoteEntry.js
@@ -0,0 +1,869 @@
+import { LightningElement, track, wire } from 'lwc';
+import jQuery from '@salesforce/resourceUrl/jquery183minjs';
+export default class lexSINewQuoteEntry extends LightningElement {
+ renderedCallback() {
+ Promise.all([loadScript(this, jQuery)])
+ .then(() => {
+ // jquery183minjs宸插姞杞芥垚鍔�
+ const $ = jQuery.noConflict();
+ // 鍙互鍦ㄨ繖閲屼娇鐢╦query
+ })
+ .catch(error => {
+ console.error('Error ====> ', error);
+ })
+ }
+
+ // //const duration = document.getElementById('dur');
+ // //娣诲姞琛� html鐗规�у鍔犳粦鍔ㄦ潯 绮剧悽鎶�鏈� wql 2021/02/09 start
+ // //dialog 寮圭獥 start
+ // var popupBox;
+ // popupBox = new SimpleDialog("SpeedDialogId", false); // 涓嶅彲鎷栧姩
+ // popupBox.createDialog();
+ // //绮剧悽鎶�鏈� 2021/02/08 start
+ // function openAddMultipleRow(){
+ // popupBox.setTitle("璇疯緭鍏ラ渶瑕佸鍔犵殑琛屽彿锛�");
+ // popupBox.importContentNode(document.getElementById("speedDiv"));
+ // popupBox.show(document.getElementById("speedDiv"));
+ // document.getElementById("speedDiv").style.display = 'block';
+
+ // }
+ // //dialog 寮圭獥 end
+ // // 娣诲姞琛� html鐗规�у鍔犳粦鍔ㄦ潯 绮剧悽鎶�鏈� wql 2021/02/09 end
+
+ // var QuoteEntryMaxLine = {!QuoteEntryMaxLine};
+ // var trade = '{!oppInfo.Trade}';
+ // var displayCost = '{!displayCost}';
+ // var quoid = '{!quoid}';
+ // var Session_ID = '{!$Api.Session_ID}';
+ // var Price_Valid_Period = '{!$Label.Price_Valid_Period}';
+ // var Message_001 = '{!$Label.Message_001}';
+ // var Message_Please_Save_Quote = '{!$Label.Please_Save_Quote}';
+ // var Message_Check_Your_Clipboard = '{!$Label.Check_Your_Clipboard}';
+ // var Error_Message3 = '{!$Label.Error_Message3}';
+ // var Error_Message11 = '{!$Label.Error_Message11}';
+ // var Error_Message29 = '{!$Label.Error_Message29}';
+ // var Error_Message33 = '{!$Label.Error_Message33}';
+ // var Error_Message34 = '{!$Label.Error_Message34}';
+ // var Error_Message35 = '{!$Label.Error_Message35}';
+ // var Error_Message36 = '{!$Label.Error_Message36}';
+ // var Error_Message40 = '{!$Label.Error_Message40}';
+ // var Confirm_ChangedAfterPrint = '鎵撳嵃鍚庤淇℃伅鏈夊彉鍖栵紝鏄惁缁х画鎿嶄綔锛堟姤浠风紪鐮佷細鍙樻柊锛夛紵';
+ // var Confirm_ChangedAfterBid = '璇ユ姤浠峰凡鎴愪负false浼犵エ锛屾槸鍚︾户缁搷浣滐紙灏嗕細鍋氬嚭涓�涓柊鐨勬姤浠凤級锛�';
+ // var Confirm_PriceRefresh = '鎶ヤ环浣滄垚鍚巤!$Label.Price_Valid_Period}澶�,杩樻病鏈夋洿鏂拌繃浠锋牸锛岄渶瑕佹墽琛寋!$Label.Status_Update}锛�';
+ // window.sfdcPage.appendToOnloadQueue(function() { calonLoad() });
+ // var openQuoteExcelImportWindow = null;
+
+ // function selectAll() {
+ // var checklist = j$("input[name='checklist']");
+ // var all = j$(escapeVfId("checkAll"));
+ // for(var i = 0; i < checklist.length; i++){
+ // if (all[0].checked == true) {
+ // checklist[i].checked = true;
+ // } else {
+ // checklist[i].checked = false;
+ // }
+ // }
+ // }
+ // // xudan 20140627 鍓婇櫎寰屻伄銉併偋銉冦偗澶栥仚銉偢銉冦偗
+ // function clearAllCheck() {
+ // j$(escapeVfId("checkAll"))[0].checked = false;
+ // var checklist = j$("input[name='checklist']");
+ // for(var i = 0; i < checklist.length; i++){
+ // checklist[i].checked = false;
+ // }
+ // }
+ // // 鎶ヤ环璇曠畻
+ // function JumpJs() {
+ // // console.log(ApexPages.currentPage().getParameters().get('core.apexpages.request.devconsole'));
+ // // var t = '{!quoId}';
+ // // window.open('/apex/test02?Id=' + t);
+ // blockme();
+ // Jump.call();
+ // return true;
+ // }
+ // function DownloadCsvGet(){
+ // DownloadCsv();
+ // }
+ // function DownloadCsvJs(){
+ // var a = j$(escapeVfId("Page:mainForm:oppoidforCSV")).val();
+ // var b = '{!oppId}';
+ // //window.open('/apex/SI_CsvModel?'+(a==''?'':'id='+a)+'&'+(a==''?'':'oppId='+b)+'','name','features','replace');
+ // window.open('/apex/SI_CsvModel?id='+encodeURI(a),'name','features','replace');
+ // }
+ // function QuoteConfirmJs() {
+ // debugger
+ // // body...
+ // blockme();
+ // //SWAG-C5DBAL 銆愬鎵樸�� [绱ф�SI璇环鑲栧瘨鏃犳硶淇敼鎶ヤ环鍗� 绮剧悽鎶�鏈� 2021/07/30 start
+ // //鑾峰彇褰撳墠鐧诲綍浜虹畝妗�
+ // var profileId = '{!$User.profileId}';
+ // //鑾峰彇鑷畾涔夋爣绛� 绯荤粺绠$悊鍛樼畝妗�
+ // var adminId = '{!$Label.ProfileId_SystemAdmin}';
+ // //XLIU-CHRD8P銆愬鎵樸�戙�怬BSAP銆戣缁橭BSAP绠�妗BA2_璇环绠$悊 SI璇环鎶ヤ环鍗曠‘璁ゆ潈闄� fy start
+ // var adminId2 = '{!$Label.ProfileId_SystemAdmin2}';
+ // var flag=true;
+ // var profileId15=profileId;
+ // if(profileId&&profileId.length>15){
+ // profileId15=profileId.substring(0,15);
+ // }
+ // if(adminId2.includes(profileId15)){
+ // flag=false;
+ // }else{
+ // flag=true;
+ // }
+ // //XLIU-CHRD8P銆愬鎵樸�戙�怬BSAP銆戣缁橭BSAP绠�妗BA2_璇环绠$悊 SI璇环鎶ヤ环鍗曠‘璁ゆ潈闄� fy end
+ // //鍙湁绯荤粺绠$悊鍛樺彲浠ョ偣鍑�
+ // if(profileId!=adminId&&flag){
+ // alert('鍙湁绯荤粺绠$悊鍛樺拰钀ヤ笟鍔╃悊鏈夋潈闄愮‘璁ゆ姤浠凤紒');
+ // unblockUI();
+ // }else{
+ // QuoteConfirm();
+ // }
+ // //SWAG-C5DBAL 銆愬鎵樸�� [绱ф�SI璇环鑲栧瘨鏃犳硶淇敼鎶ヤ环鍗� 绮剧悽鎶�鏈� 2021/07/30 end
+ // // QuoteConfirm();
+ // }
+ // function ReloadPage() {
+ // // body...
+ // window.location.reload();
+ // }
+ // function submitOppoApplyStockJs(){
+ // // SI璇环淇敼 update by vivek start 20191129
+ // var Save_button1 = '{!Save_button1}';
+ // console.log(Save_button1);
+ // if(Save_button1 == '111'){
+ // alert('1銆佽仈绯籗I鏈儴鍋氶厤缃缓璁�俓n2銆佽钀ヤ笟鏈儴鍋氶厤缃缓璁弽棣堛�俓n3銆佽SI鏈儴鍋氶厤缃枃浠舵鏌ャ��');
+ // }else if(Save_button1 == '211'){
+ // alert('1銆佽钀ヤ笟鏈儴鍋氶厤缃缓璁弽棣堛�俓n2銆佽SI鏈儴鍋氶厤缃枃浠舵鏌ャ��');
+ // }else if(Save_button1 == '221'){
+ // alert('1銆佽SI鏈儴鍋氶厤缃枃浠舵鏌ャ��');
+ // }else if(Save_button1 == '1'){
+ // alert('1銆佽SI鏈儴鍋氶厤缃枃浠舵鏌ャ��');
+ // }else if(Save_button1 == '112'){
+ // alert('1銆佽仈绯籗I鏈儴鍋氶厤缃缓璁�俓n2銆佽钀ヤ笟鏈儴鍋氶厤缃缓璁弽棣堛��');
+ // }else if(Save_button1 == '212'){
+ // alert('1銆佽钀ヤ笟鏈儴鍋氶厤缃缓璁弽棣堛��');
+ // }else{
+ // blockme();
+ // submitOppoApplyStock();
+ // }
+ // // SI璇环淇敼 update by vivek end 20191129
+ // // blockme();
+ // // submitOppoApplyStock();
+ // }
+ // // SI涓氬姟绯荤粺娴佺▼鏀瑰杽鍜屾彁鍗囬」鐩�2019-10-28 by vivek start
+ // function IfRadioChecker2(){
+ // var msg = "涓嶈兘鍒犻櫎锛屽鏋滃垹闄ゅ彲鑳藉奖鍝嶈澶囧畨瑁呫�俓n\n璇风‘璁わ紒";
+ // if(confirm(msg)==true){
+ // radioChecker2('del');
+ // }
+ // }
+ // // SI涓氬姟绯荤粺娴佺▼鏀瑰杽鍜屾彁鍗囬」鐩�2019-10-28 by vivek end
+
+
+
+
+ // function changeV() {
+ // var speed = document.getElementById('speed');
+ // //durVal = parseFloat(duration.value);
+ // spdVal = parseFloat(speed.value);
+ // //const durationPercent = parseFloat(durVal, 2) * 100
+ // const speedPercent = parseFloat((spdVal / 100), 2)*100;
+ // //duration.style.backgroundSize = `${durationPercent}%, 100%`
+ // speed.style.background = `linear-gradient(to right, #ffa200, white ${speedPercent}%, white`
+ // document.getElementById("addMultipleRow").value= speed.value;
+
+ // };
+ // function changeI() {
+ // var speed = document.getElementById('speed');
+ // //durVal = parseFloat(duration.value);
+ // spdVal = parseFloat(document.getElementById("addMultipleRow").value);
+ // //const durationPercent = parseFloat(durVal, 2) * 100
+ // const speedPercent = parseFloat((spdVal / 100), 2)*100;
+ // //duration.style.backgroundSize = `${durationPercent}%, 100%`
+ // speed.style.background = `linear-gradient(to right, #ffa200, white ${speedPercent}%, white`
+ // speed.value = document.getElementById("addMultipleRow").value;
+
+
+ // };
+
+ // //SFDC鍋滄棰勮锛堥璁℃秷鑰楀埌鏈熸棩鏍囩孩锛� lt 20210928 add start
+ // MarkRed();
+ // //SFDC鍋滄棰勮锛堥璁℃秷鑰楀埌鏈熸棩鏍囩孩锛� lt 20210928 add end
+
+}
+
+// <!-- <template>
+// <!-- <link rel="stylesheet" type="text/css" href="{!URLFOR($Resource.blockUIcss)}"/>
+// <script src="{!URLFOR($Resource.jquery183minjs)}"></script>
+// <script src="{!URLFOR($Resource.PleaseWaitDialog)}"></script>
+// <script src="{!URLFOR($Resource.NewQuoteEntryJS)}"></script>
+// <script src="{!URLFOR($Resource.clipboardminjs)}"></script>
+// <script src="{!URLFOR($Resource.connection20)}"></script>
+// <script src="{!URLFOR($Resource.apex20)}"></script>
+// <script src="{!$Resource.lexSINewQuoteEntry+ '/lexSINewQuoteEntry.js'}"></script>
+// <link rel="stylesheet" type="text/css" href="{!$Resource.lexSINewQuoteEntry + '/lexSINewQuoteEntry.css'}"/> -->
+// <form id="mainForm">
+// <lightning-formatted-text id="hiddenQuoid" value="{!quoid}" style="display:none;"/>
+// <lightning-input type="hidden" id="oppoidforCSV" value="{!oppoidforCSV}"/>
+// <lightning-input type="hidden" id="changedAfterPrint" value="{!changedAfterPrint}"/>
+// <lightning-input type="hidden" id="changedAfterBid" value="{!changedAfterBid}"/>
+// <lightning-input type="hidden" id="productStatusUpdated" value="{!productStatusUpdated}"/>
+// <!-- 20211011 lt add MarkRed();-->
+// <apex:actionFunction action="{!setProductEntry}" name="setProductEntry" reRender="mainForm" oncomplete="unblockUI();calPriceAll();MarkRed();">
+// <apex:param assignTo="{! }" name="setProduct_text" value=""/>
+// </apex:actionFunction>
+// <!-- 20211011 lt add MarkRed();-->
+// <apex:actionFunction action="{!excelImport}" name="excelImport" reRender="mainForm" oncomplete="unblockUI();calPriceAll();MarkRed();">
+// <apex:param assignTo="{!excel_text}" name="select_index" value=""/>
+// </apex:actionFunction>
+// <apex:actionFunction action="{!addRow}" name="addRow" reRender="mainForm" oncomplete="unblockUI();calPriceAll();">
+// <apex:param assignTo="{!rowIdx}" name="rowIdx" value=""/>
+// </apex:actionFunction>
+// <!-- 娣诲姞琛� -->
+// <apex:actionFunction action="{!addMultipleRow}" name="addMultipleRow" reRender="mainForm" oncomplete="unblockUI();calPriceAll();">
+// <apex:param assignTo="{!rowIdx}" name="rowIdx" value=""/>
+// </apex:actionFunction>
+// <apex:actionFunction action="{!DownloadCsv}" name="DownloadCsv" reRender="oppoidforCSV" oncomplete="DownloadCsvJs();"/>
+// <apex:actionFunction action="{!submitOppoApplyStock}" name="submitOppoApplyStock" reRender="mainForm,message1" oncomplete="unblockUI();"/>
+// <apex:actionFunction action="{!QuoteConfirm}" name="QuoteConfirm" reRender="mainForm" oncomplete="unblockUI();ReloadPage();"/>
+// <apex:actionFunction action="{!getSalesId1}" name="getSalesId1" reRender="mainForm"/>
+// <apex:actionFunction action="{!getSalesId2}" name="getSalesId2" reRender="mainForm"/>
+// <!-- 2018/09/28 CHAN-B4YAB8 缁忛攢鍟嗗崟浠疯绠� start -->
+// <apex:actionFunction action="{!PriceStatusUpdate}" name="PriceStatusUpdate" reRender="listsTable" oncomplete="unblockUI();calPriceAll();alert('鏇存柊瀹屾瘯锛�');quoteAgencyTotalPriceAction();"/>
+// <!-- 2018/09/28 CHAN-B4YAB8 缁忛攢鍟嗗崟浠疯绠� end -->
+// <!-- CHAN-B8RCU9 start -->
+// <apex:actionFunction action="{!QuoteDecision}" name="QuoteDecision" reRender="mainForm" oncomplete="unblockUI();alertUpdatewhenDecide();"/>
+// <!-- CHAN-B8RCU9 start -->
+
+// <!-- 鍋滄棰勮 20210930 lt add MarkRed(); -->
+// <apex:actionFunction action="{!Save}" name="Save" reRender="mainForm,message1" oncomplete="unblockUI();MarkRed();"/>
+// <!-- 鎶ヤ环璇曠畻 -->
+// <apex:actionFunction action="{!Jump}" name="Jump" reRender="mainForm" oncomplete="unblockUI();" />
+// <apex:actionFunction action="{!OppReflection}" name="OppReflection" reRender="mainForm" oncomplete="unblockUI();"/>
+// <apex:actionFunction action="{!Print}" name="Print" reRender="mainForm" oncomplete="openQuotePage('{!quo.Contract__c}','{!errorflg}','{!quoid}');unblockUI();"/>
+// <lightning-card id="block">
+// <lightning-input type="hidden" value="{!oppInfo.Direct_Separate}" id="Direct_Separate"/>
+// <lightning-input type="hidden" value="{!oppInfo.Trade}" id="Trade"/>
+// <lightning-input type="hidden" value="{!oppId}" id="oppId"/>
+// <lightning-input type="hidden" value="{!SalesId1}" id="SalesId1"/>
+// <lightning-input type="hidden" value="{!qb.PriceRefreshPeriod}" id="hidden_PriceRefreshPeriod"/>
+// <lightning-input type="hidden" value="{!qb.Estimation_List_Price}" id="hidden_Estimation_List" rendered="{!displayFlg}"/>
+// <lightning-input type="hidden" value="{!DisCalculation}" id="DisCalculationvalue" rendered="{!displayFlg}"/>
+// <lightning-input type="hidden" value="{!DisAmount}" id="hidden_DisAmountvalue" rendered="{!displayFlg}"/>
+// <lightning-input type="hidden" value="{!Salesprofit1}" id="Salesprofit1value" rendered="{!displayFlg}"/>
+// <!-- 2018/09/28 CHAN-B4YAB8 缁忛攢鍟嗘姌鎵� start -->
+// <lightning-input type="hidden" value="{!AgencyDiscount}" id="AgencyDiscountValue" rendered="{!displayFlg}"/>
+// <!-- 2018/09/28 CHAN-B4YAB8 缁忛攢鍟嗘姌鎵� end -->
+// <lightning-input type="hidden" value="{!Salesprofit2}" id="Salesprofit2value" rendered="{!displayFlg}"/>
+// <lightning-input type="hidden" value="{!qb.SalesCalculation1}" id="SalesCalculation1value" rendered="{!displayFlg}"/>
+// <lightning-input type="hidden" value="{!qb.SalesCalculation2}" id="SalesCalculation2value" rendered="{!displayFlg}"/>
+// <lightning-input type="hidden" value="{!quoStocking_Price_c}" id="hidden_Stocking_Price" rendered="{!displayFlg}"/>
+// <lightning-input type="hidden" value="{!oppInfo.Wholesale_Price}" id="hidden_Wholesale_Price" rendered="{!displayFlg}"/>
+// <!-- 澶氬勾淇濅慨 start -->
+// <lightning-input type="hidden" id="hidden_MultiYearWarrantyTotalPrice" value="{!quo.MultiYearWarrantyTotalPrice__c}"/>
+// <!-- 澶氬勾淇濅慨 end -->
+// <lightning-input type="hidden" value="{!enableSales}" id="SalesRoot_Flg"/>
+// <lightning-input type="hidden" value="{!oppInfo.CurrencyIsoCode}" id="CurrencyIsoCode"/>
+// <lightning-input type="hidden" value="{!baseUrl}" id="baseUrl"/>
+// <lightning-input type="hidden" value="{!WinOrDecideAlert}" id="SFDA_Flg"/>
+// <!-- LHJ Start -->
+// <lightning-input type="hidden" value="{!oppInfo.Authorized_DB_No}" id="Authorized_DB_No" rendered="{!displayFlg}"/>
+// <lightning-input type="hidden" value="{!oppInfo.If_Need_Authorize}" id="If_Need_Authorize" rendered="{!displayFlg}"/>
+// <!-- LHJ End -->
+// <template id="message1">
+// <apex:messages styleClass="editListError"/>
+// </template>
+// <template if:true="{!errorflg}" >
+// <table width="100%">
+// <tr>
+// <td align="left"><div class="errorMsg">{!errorMessage}</div></td>
+// </tr>
+// </table>
+// </template>
+// <template if:true="{!errorflg}" >
+// <table width="100%">
+// <tr>
+// <td align="left"><div style="font-size:22px" class="errorMsg">{!errorMessagechack}</div></td>
+// </tr>
+// </table>
+// </template>
+// <template if:true="{!Messageflg}" >
+// <table width="100%">
+// <tr>
+// <td align="left">{!Message}</td>
+// </tr>
+// </table>
+// </template>
+// <div>
+// <table border="0">
+// <tr>
+// <th style="text-align:right;width:90px;">{Label.Quoto_No}</th>
+// <td style="text-align:right;width:130px;"><span>{quo.Quote_No__c}</span></td>
+// <th style="text-align:right;width:80px;">{Label.Quoto_Name}</th>
+// <td style="width:110px;"><div class="requiredInput"><div class="requiredBlock"></div><lightning-input-field value={quo.QuoteName__c} /></div></td>
+// <th style="text-align:right;width:100px;">{Label.HP_Name}</th>
+// <td style="width:180px;"><span>{oppInfo.HP_Name}</span></td>
+// <th style="text-align:right;width:100px;">{Label.Department_Name}</th>
+// <td style="width:130px;"><span>{oppInfo.Department_Name}</span></td>
+// <th style="text-align:right;width:90px;">{Label.Currency}</th>
+// <td style="width:80px;"><span>{oppInfo.CurrencyIsoCode}</span></td>
+// </tr>
+// <tr>
+// <th style="text-align:right">{displayFlg ? Label.Total_ListPrice : ''}</th>
+// <td style="text-align:right;"><lightning-formatted-text id="Estimation_List_Price" style={displayFlg ? '' : 'display:none'} value="{0, number, ###,##0.00}">
+// <slot>{qb.Estimation_List_Price}</slot>
+// </lightning-formatted-text></td>
+// <th style="text-align:right;">{displayFlg ? Label.Total_Price : ''}</th>
+// <td><div style={displayFlg ? '' : 'display:none'}><lightning-input-field id="quoTotalPrice" value={quo.QuoteTotal_Page__c} onchange={quoteTotalPriceAction} disabled={true} style="text-align:right;"/></div></td>
+// <th style="text-align:right;">{displayFlg ? Label.Contact_Price : ''}</th>
+// <td><div class="requiredInput"><div class="requiredBlock"></div><lightning-input-field id="Dealer_Final_Price" value={quo.Dealer_Final_Price_Page__c} onchange={calFromContactPrice} onblur={setOCMAmount} onclick={quoteAgencyTotalPriceAction1} style={displayFlg ? '' : 'display:none'} ></lightning-input-field></div></td>
+// <th style="text-align:right;">{displayFlg ? Label.Forecast_Amounts : ''}</th>
+// <td style={displayFlg ? '' : 'display:none'}><span id="Wholesale_Price">{oppInfo.Wholesale_Price}</span></td>
+// <th style="text-align:right">{Label.Sales_Root}</th>
+// <td><span id="Sales_Root">{oppInfo.Sales_Root}</span></td>
+// </tr>
+// </table>
+// <table border="0">
+// <tr>
+// <th style="text-align:right;width:50px;"> </th>
+// <td style="text-align:right;width:110px;"><lightning-button onclick={productCompare} label={Label.Status_Update}></lightning-button></td>
+// <th style="text-align:right;width:50px;"> </th>
+// <td style="text-align:right;width:100px;"><lightning-button onclick={updateOtcode} label="鏇挎崲浜у搧otcode" ></lightning-button></td>
+// <th style="text-align:right;width:50px;"> </th>
+// <td style="width:110px;"><lightning-button id="SetProduct" onclick={searchSetProductSI} label={Label.Set_Product}></lightning-button></td>
+// <th style="text-align:right;width:50px;"> </th>
+// <td style="width:130px;"><lightning-button onclick={openQuoteExcelImport} label={Label.Excel_Import}></lightning-button></td>
+// <td style="text-align:right;width:50px;"><lightning-button id="Btn_RowDelete" onclick={IfRadioChecker2.bind(this, 'del')} value="{!Label.deleteLabel}" style="width:60px;"></lightning-button></td>
+// <!-- 娣诲姞琛� -->
+// <td width="40px;">
+// <lightning-button onclick={openAddMultipleRow} label="澧炲姞琛�" ></lightning-button>
+// </td>
+// <td style="width:130px;">
+// <lightning-button id="Btn_RowUp" onclick={radioChecker2.bind(this, 'up')} value="{!Label.Row_Up}" style="width:60px;"></lightning-button>
+// <lightning-button id="Btn_RowDown" onclick={radioChecker2.bind(this, 'down')} value="{!Label.Row_Down}" style="width:60px;"></lightning-button>
+// </td>
+// <th style="text-align:right;width:100px;">涓绘満瑁呮満鍦扮偣</th>
+// <td><lightning-input-field value={quo.Installation_location__c} /></td>
+// <th style="text-align:right;width:90px;">{displayCost && displayFlg ? Label.Cost : ''}</th>
+// <td style="text-align:right;width:80px;"><lightning-formatted-text id="Stocking_Price" value="{0, number, ###,##0.00}" style={displayCost && displayFlg ? '' : 'display:none;'}><apex:param value={quoStocking_Price_c}/></lightning-formatted-text></td>
+// </tr>
+// </table>
+// </div>
+// <!-- 澶氬勾淇濅慨 start -->
+// <!-- 鍘熶唬鐮� start
+// <table>
+// <tr>
+// <td> </td>
+// </tr>
+// </table>
+// -->
+// <!-- 鍘熶唬鐮� end -->
+// <table>
+// <tr>
+// <td> </td>
+// </tr>
+// <tr>
+// <th style="text-align:right;width:30px;"> </th>
+// <th style="text-align:right;width:50px;">鍚堝悓淇濅慨鏈燂紙骞达級: </th>
+// <td style="width:190px;">
+// <lightning-input-field id="AllGurantee_Period" value={quo.Gurantee_Period__c} onchange={calGuranteePeriod} style="width:50px; text-align:right;"></lightning-input-field>
+// <input type="hidden" id="Gurantee_Period_c" value={quo.Gurantee_Period__c}/>
+// </td>
+// <!-- 澶栬锤澶氬勾淇� 鍙栨秷nodiscount 鍚堣 闅愯棌 绮剧悽鎶�鏈� wql 2021/01/28 start -->
+// <template if:true={contractWarranty}>
+// <th style="text-align:right;width:50px;">
+// {!quoteObject.fields.MultiYearWarrantyTotalPrice__c.label}
+// </th>
+// <td style="width:470px;">
+// <lightning-formatted-text id="MultiYearWarrantyTotalPrice_out" value={quo.MultiYearWarrantyTotalPrice__c} style="text-align:right;width:180px;"></lightning-formatted-text>
+// </td>
+// <th style="text-align:right;width:50px;">
+// {!quoteObject.fields.multiYearWarranty__c.label}
+// </th>
+// <td style="width:200px;">
+// <lightning-input type="number" min="0" max="99" id="multiYearWarranty" value={quo.multiYearWarranty__c} onchange={callFromCancelgurantee_MD} style="text-align:right;width:30px;"></lightning-input>
+// </td>
+// </template>
+// <!-- 澶栬锤澶氬勾淇� 鍙栨秷nodiscount 鍚堣 闅愯棌 绮剧悽鎶�鏈� wql 2021/01/28 end -->
+// </tr>
+// <!-- 娣诲姞琛� 鏀惧湪澶栭潰 鍥犱负鍐呭璐镐笉鍚�-->
+// <!-- <th style="text-align:right;width:50px;">
+// 娣诲姞琛�
+// : </th> -->
+// <!-- 娣诲姞琛� html鐗规�у鍔犳粦鍔ㄦ潯 绮剧悽鎶�鏈� wql 2021/02/09 start -->
+// <!-- 鍙兘杈撳叆姝f暣鏁� 杈撳叆鍏跺畠浼氬己鍒舵竻绌� -->
+// <td style="width:200px;display: none;">
+// <div class="" id="speedDiv" style="">
+// <!-- <p>鍛ㄦ湡</p>
+// <input type="range" id="dur" value="0.50" min="0" max="1.00" step="0.01" onchange="changeV()"/>
+// <p>閫熷害</p> -->
+// <p class="diap">鈶犳粦鍔ㄩ�夋嫨琛屾暟!</p>
+// <!-- 婊戞潯 -->
+// <input type="range" id="speed" value="50" min="0" max="100" step="1" onchange="changeV()" style="background: linear-gradient(to right, rgb(255, 162, 0), white 50%, white);" />
+// <p class="diap">鈶¤緭鍏ラ�夋嫨琛屾暟!</p>
+// <!-- 杈撳叆妗� -->
+// <input id="addMultipleRow" value="50" style="text-align:right;width: 30px;" rendered="{!displayFlg}" class="diaInput" onchange="changeI();" onkeyup="if(this.value.length==1){this.value=this.value.replace(/[^1-9]/g,'')}else{this.value=this.value.replace(/\D/g,'')}"
+// onafterpaste="if(this.value.length==1){this.value=this.value.replace(/[^1-9]/g,'0')}else{this.value=this.value.replace(/\D/g,'')}"/>
+
+// <div class="slds-text-align_center">
+// <lightning-button label="纭" onclick={addMultipleRowJS} style="margin: 20px 10px 0px 10px;"></lightning-button>
+// <lightning-button label="鍙栨秷" onclick={popupBoxHide} style="margin: 20px 10px 0px 10px;"></lightning-button>
+// </div>
+// </div>
+// </td>
+// <!-- SWAG-CKDATG 銆愬鎵樸�戙�怬BSAP-鎶ヤ环濮旀墭銆戞姤浠峰鎵橀」鐩敼鍠�1 fy start -->
+// <tr>
+// <th style="text-align:right;width:30px;"> </th>
+// <th style="text-align:left;width:50px;">{!$ObjectType.Quote.fields.QuotationChange__c.label}: </th>
+// <td style="width:190px;"><lightning-input-field id="QuotationChange" value="{!quo.QuotationChange__c}" style="width:80px; text-align:right;" />
+// </td>
+// <th style="text-align:left;width:50px;">{!$ObjectType.Quote.fields.MainEngineWithoutMonitor__c.label}: </th>
+// <td style="width:500px;"><lightning-input-field id="RemarksOnChanges" value="{!quo.MainEngineWithoutMonitor__c}" style="width:450px; text-align:left;" />
+// </td>
+// <th style="text-align:right;width:50px;">
+// {!$ObjectType.Quote.fields.Interdepartmental__c.label}
+// : </th>
+// <td style="width:200px;"><lightning-input-field id="Interdepartmental" value="{!quo.Interdepartmental__c}" style="text-align:right;width:30px;" /></td>
+// </tr>
+// <!-- SWAG-CKDATG 銆愬鎵樸�戙�怬BSAP-鎶ヤ环濮旀墭銆戞姤浠峰鎵橀」鐩敼鍠�1 fy end -->
+// <tr>
+// <td> </td>
+// </tr>
+// </table>
+// <!-- 澶氬勾淇濅慨 end -->
+// <div style="width:1260px;">
+// <div style="overflow-x: auto;">
+// <!-- 澶栬锤澶氬勾淇� 鍐呭璐歌〃鏍奸暱搴︿竴鑷� 鍘�1635px 绮剧悽鎶�鏈� wql 2021/01/28 start -->
+// <table style="width:1935px;" border="0">
+// <!-- 澶栬锤澶氬勾淇� 鍐呭璐歌〃鏍奸暱搴︿竴鑷� 绮剧悽鎶�鏈� wql 2021/01/28 end -->
+// <tr>
+// <th style="text-align:center;width:20px;"> <input type="checkbox" id="checkAll" onclick="selectAll()" style="width:10px;"/></th>
+// <th style="text-align:center;width:15px;">No</th>
+// <th style="text-align:center;width:150px;">{!$Label.Asset_No}</th>
+// <th style="text-align:center;width:100px;">{!$Label.SFDA_Status}</th>
+// <th style="text-align:center;width:100px;">{!$ObjectType.product2.fields.VenderName__c.label}</th>
+
+// <th style="text-align:center;width:85px;">{!$Label.ListPrice}</th>
+// <th style="text-align:center;width:100px;">{!$Label.Quantity}</th>
+// <th style="text-align:center;width:50px;">{!$Label.Specifications}</th>
+// <th style="text-align:center;width:100px;">鍖婚櫌鍗曚环</th>
+// <th style="text-align:center;width:100px;">鍖婚櫌灏忚</th>
+// <!--
+// <th style="text-align:center;width:50px;">{!$Label.Present}</th>
+// --Savebutton-->
+
+// <!-- 2018/09/28 CHAN-B4YAB8 璧犻�併�佺粡閿�鍟嗕环鏍煎拰灏忚 end -->
+// <!-- 澶氬勾淇濅慨 start -->
+// <!-- 澶栬锤澶氬勾淇� 鍙栨秷澶氬勾淇濅慨 淇濅慨 闅愯棌 绮剧悽鎶�鏈� wql 2021/01/28 start -->
+// <apex:variable value="{!1}" var="abc" >
+// <th style="text-align:center;width:50px;">
+// {!$ObjectType.QuoteLineItem.fields.multiYearWarranty__c.label}
+// </th>
+// <th style="text-align:center;width:150px;">
+// {!$ObjectType.QuoteLineItem.fields.warrantyType__c.label}
+// </th>
+
+// </apex:variable>
+// <!-- 澶栬锤澶氬勾淇� 鍙栨秷澶氬勾淇濅慨 淇濅慨 闅愯棌 绮剧悽鎶�鏈� wql 2021/01/28 end -->
+// <th style="text-align:center;width:50px;">
+// {!$ObjectType.QuoteLineItem.fields.GuaranteePeriod__c.label}</th>
+// <!-- 澶氬勾淇濅慨 end -->
+// <!-- 鏂板姞鐨� -->
+
+// <!-- SFDC鍋滄棰勮锛堥璁℃秷鑰楀埌鏈熸棩锛� lt 20210924 add start -->
+// <th style="text-align:center;width:130px;">{!$ObjectType.product2.fields.Estimated_ConsumptionDueDate__c.label}</th>
+// <!-- SFDC鍋滄棰勮锛堥璁℃秷鑰楀埌鏈熸棩锛� lt 20210924 add end -->
+
+// <th style="text-align:center;width:100px;">搴撳瓨鐘舵��</th>
+// <th style="text-align:center;width:100px;">浜у搧閰嶅</th>
+// <th style="text-align:center;width:350px;">{!$Label.Product_Name}</th>
+
+// <th style="text-align:center;width:100px;" hidden="hidden">{!$Label.AgencyPrice}</th>
+// <th style="text-align:center;width:100px;" hidden="hidden">{!$Label.AgencySum_Total}</th>
+// <!-- 澶栬锤澶氬勾淇� 鍙栨秷nodiscount闅愯棌 绮剧悽鎶�鏈� wql 2021/01/28 start -->
+// <apex:variable value="{!1}" var="abc" >
+// <th style="text-align:center;width:100px;" hidden="hidden">
+// {!$ObjectType.QuoteLineItem.fields.NoDiscountTotal__c.label}
+// </th>
+// </apex:variable>
+// <!-- 澶栬锤澶氬勾淇� 鍙栨秷nodiscount闅愯棌 绮剧悽鎶�鏈� wql 2021/01/28 end -->
+// <th style="text-align:center;width:20px;"><apex:image id="plusicon" value="{!$Resource.plusicon}" onclick="addRowJs(0);"/></th>
+// </tr>
+// </table>
+// <!-- 澶栬锤澶氬勾淇� 鍐呭璐竧able涓�鑷� 绮剧悽鎶�鏈� wql 2021/01/28 start -->
+// <div id="iframelike" style="width:1960px;">
+// <input type="hidden" id="ListPriceTotal" value="0" />
+// <input type="hidden" id="UnitPriceTotal" value="0" />
+// <template id="listsTable">
+// <table class="list" style="border-bottom-width: 0px; font-size:11px; border-spacing:0;width:1938px;" border="">
+// <!-- 澶栬锤澶氬勾淇� 鍐呭璐竧able涓�鑷� 绮剧悽鎶�鏈� wql 2021/01/28 end -->
+// <apex:variable value="{!1}" var="cnt" />
+// <apex:variable value="{!0}" var="CntIndex" />
+// <colgroup span="11"></colgroup>
+// <template for:each={} for:item="" for:index="">
+// <apex:repeat value="{!activities}" var="s" id="lists">
+// <tr class="dataRow {!IF(MOD(cnt, 2)==0, 'odd', 'even')} {!IF(cnt==1, 'first', '')}" onmouseover="if (window.hiOn){hiOn(this);} " onmouseout="if (window.hiOff){hiOff(this);} " onblur="if (window.hiOff){hiOff(this);}" onfocus="if (window.hiOn){hiOn(this);}">
+// <td class="dataCell" style="width:20px;">
+// <input type="checkbox" name="checklist" value="{!s.lineNo}" style="width:10px;"/>
+// </td>
+// <td class="dataCell" style="width:15px;text-align:right;">
+// <apex:outputLabel id="indexNo" value="{!IF(s.PageObject.Id__c==null,null,s.lineNo + 1)}" style="width:10px;"/>
+// </td>
+// <td class="dataCell" style="text-align:center;width:150px;">
+// <lightning-input id="Assert" style="width:120px;" value="{!s.Asset_Model}" onclick="searchProduct('{!s.lineNo}',this.value, '')" />
+// </td>
+// <td class="dataCell" id="{!Text(cnt-1)}:td_Status__c" style="width:100px;">
+// <lightning-output-field style="width:75px;" id="Status__c" value="{!s.PageObject.SFDA_Status__c}"/>
+// <lightning-input type="hidden" id="SFDA" value="{!s.PageObject.SFDA_Status__c}"/>
+// <template layout="none" rendered="{!IF(ISBLANK(s.PageObject.Product_Sales_Possibility__c) || s.PageObject.Product_Sales_Possibility__c == '鈼�', false, true)}">
+// <script type="text/javascript">
+// //alert(j$(escapeVfId('{!Text(cnt-1)}' + ':td_Status__c')).size());
+// j$(escapeVfId('{!Text(cnt-1)}' + ':td_Status__c')).css({"color":"red"});
+// </script>
+// </template>
+// <template layout="none" rendered="{!IF(s.haveno_Register == true, true, false)}">
+// <script type="text/javascript">
+// j$(escapeVfId('{!Text(cnt-1)}' + ':td_Status__c')).css({"color":"red"});
+// </script>
+// </template>
+// </td>
+// <td class="dataCell" style="width:100px;">
+// <lightning-formatted-text id="VenderName" value="{!s.VenderName}" />
+// <lightning-input type="hidden" id="VenderName__c" value="{!s.VenderName}" />
+// <!-- 浜у搧涓绘暟鎹鍔犫�滀笉鍙彇娑堝骞翠繚鈥� 2020/08/28 绮剧悽鎶�鏈� wql start -->
+// <lightning-input type="hidden" id="CanNotCancelledGurantee__c" value="{!s.CanNotCancelledGurantee}" />
+// <!-- 浜у搧涓绘暟鎹鍔犫�滀笉鍙彇娑堝骞翠繚鈥� 2020/08/28 绮剧悽鎶�鏈� wql end -->
+// </td>
+
+// <td class="dataCell" style="width:85px;text-align:right;">
+// <lightning-formatted-text style="width:85px;display:{!IF(displayFlg, '', 'none')}" id="ListPricetext" value="{0, number, ###,##0.00}">
+// <apex:param value="{!s.ListPrice_Page}" />
+// </lightning-formatted-text>
+// <lightning-input type="hidden" id="ListPrice" rendered="{!displayFlg}" value="{!s.ListPrice_Page}"/>
+// </td>
+// <td class="dataCell" style="text-align:center;width:100px;">
+// <!-- 2018/09/28 CHAN-B4YAB8 缁忛攢鍟嗗崟浠疯绠� start -->
+// <lightning-input-field id="Quantity" style="width:30px;text-align:right;" value="{!s.PageObject.Quantity__c}" onChange="calPrice('{!s.lineNo}');quoteAgencyTotalPriceAction();AgencyDiscountCalculation1();"/>
+// <!-- 2018/09/28 CHAN-B4YAB8 缁忛攢鍟嗗崟浠疯绠� end -->
+// </td>
+
+// <td class="dataCell" style="width:50px;text-align:center">
+// <lightning-formatted-text style="width:40px;text-align:center;" id="Specifications" value="{!if(s.latestInfo.Specifications=0||s.latestInfo.Specifications=null,'',s.latestInfo.Specifications)}"/>
+// </td>
+
+// <td class="dataCell" style="text-align:center;width:100px;">
+// <lightning-input-field id="UnitPrice" style="width:80px;text-align:right;" rendered="{!displayFlg}" value="{!s.PageObject.UnitPrice_Page__c}" onChange="calPrice('{!s.lineNo}')"/>
+// <!-- &&IF(s.VenderName!='OSH',false,true) -->
+// <script type="text/javascript">
+// var isOSH = j$(escapeVfId('Page:mainForm:block:lists:'+{!CntIndex}+':VenderName')).value();
+// if(isOSH != 'OSH'&&isOSH != ''){
+// j$(escapeVfId('Page:mainForm:block:lists:'+{!CntIndex}+':UnitPrice')).attr('disabled','disabled');
+// }
+// </script>
+// <apex:variable value="{!CntIndex + 1}" var="CntIndex" />
+// </td>
+
+// <td class="dataCell" style="width:100px;text-align:right;">
+// <lightning-formatted-text style="width:80px;display:{!IF(displayFlg, '', 'none')}" id="TotalPrice" value="{0, number, ###,##0.00}">
+// <apex:param value="{!s.PageObject.Subtotal__c}" />
+// </lightning-formatted-text>
+// <lightning-input type="hidden" id="Subtotal__c" value="{!s.PageObject.Subtotal__c}" rendered="{!displayFlg}"/>
+// <lightning-input type="hidden" id="NameCode" value="{!s.latestInfo.ProductCode}"/>
+// <lightning-input type="hidden" id="Product_Name" value="{!s.latestInfo.ProductName}"/>
+// <lightning-input type="hidden" id="Product_SFDA" value="{!s.latestInfo.SFDA_Status}"/>
+// <lightning-input type="hidden" id="Product_Specifications" value="{!s.latestInfo.Specifications}"/>
+// <lightning-input type="hidden" id="Sales_Possibility" value="{!s.latestInfo.Sales_Possibility}"/>
+// <lightning-input type="hidden" id="Product_ListPrice" value="{!s.latestInfo.ListPrice}" rendered="{!displayFlg}"/>
+// <lightning-input type="hidden" id="Product_Cost" value="{!s.latestInfo.Cost}"/>
+// <lightning-input type="hidden" id="Cost" value="{!s.Cost_c}"/>
+// <lightning-input type="hidden" id="CostSubTotal" value="{!s.Cost_Subtotal_c}"/>
+// <lightning-input type="hidden" id="Bsscategory" value="{!s.PageObject.BSS_Category__c}"/>
+// <lightning-input type="hidden" id="Product_Id" value="{!s.PageObject.Id__c}"/>
+// <lightning-input type="hidden" id="PricebookEntryId" value="{!s.pageObject.PricebookEntryId}"/>
+// <lightning-input type="hidden" id="lineNo" value="{!s.lineNo}"/>
+// </td>
+
+// <!-- CHAN-B4YAB8 2018/9/28 缁忛攢鍟嗗崟浠峰拰灏忚 start -->
+// <!-- <td class="dataCell" style="width:15px;">
+// <lightning-input-field id="Present__c" style="width:10px;" value="{!s.PageObject.Present__c}"
+// onChange="quoteAgencyTotalPriceAction();AgencyDiscountCalculation1();" />
+// </td> -->
+
+// <!-- CHAN-B4YAB8 2018/9/28 缁忛攢鍟嗗崟浠峰拰灏忚 end -->
+// <!-- 澶氬勾淇濅慨 start -->
+// <!-- 澶栬锤澶氬勾淇� 鍙栨秷澶氬勾淇濅慨 淇濅慨鐨勯殣钘� 绮剧悽鎶�鏈� wql 2021/01/28 start rendered="{!IF(trade == '鍐呰部',true,false)}"-->
+// <apex:variable value="{!1}" id="warranty" var="abc" >
+// <td class="dataCell" style="width:50px;text-align:center;">
+// <lightning-input-field style="width:30px; text-align:center; display:{!IF(displayFlg, '', 'none')}" id="itemMultiYearWarranty" html-disabled="true" value="{!s.PageObject.multiYearWarranty__c}" />
+// </td>
+// <td class="dataCell" style="width:150px;text-align:center;">
+// <lightning-input-field style="width:120px; text-align:center; display:{!IF(displayFlg, '', 'none')}" id="warrantyType" html-disabled="true" value="{!s.PageObject.warrantyType__c}" />
+// </td>
+
+// </apex:variable>
+// <!-- 澶栬锤澶氬勾淇� 鍙栨秷澶氬勾淇濅慨 淇濅慨鐨勯殣钘� 绮剧悽鎶�鏈� wql 2021/01/28 end rendered="{!IF(trade == '鍐呰部',true,false)}"-->
+
+// <td class="dataCell" style="width:50px;text-align:center;">
+// <lightning-output-field style="width:30px; text-align:center; display:{!IF(displayFlg, '', 'none')}" id="itemGuaranteePeriod" value="{!s.PageObject.GuaranteePeriod__c}" />
+// </td>
+// <!-- 澶氬勾淇濅慨 end -->
+
+// <!-- SFDC鍋滄棰勮锛堥璁℃秷鑰楀埌鏈熸棩锛� lt 20210924 add start -->
+// <td class="dataCell" style="width:130px;text-align: center;">
+// <lightning-formatted-text id="Estimated_ConsumptionDueDate" value="{!s.Estimated_ConsumptionDueDate}" />
+// <lightning-input type="hidden" id="Estimated_ConsumptionDueDate1" value="{!s.Estimated_ConsumptionDueDate}" />
+// </td>
+// <!-- SFDC鍋滄棰勮锛堥璁℃秷鑰楀埌鏈熸棩锛� lt 20210924 add end -->
+
+// <!-- 鏂板姞鐨� -->
+// <td class="dataCell" style="width:100px;text-align:center;">
+// <apex:outputLabel id="Storagestatustext" value="{!s.StorageStatus}"/>
+// <lightning-input type="hidden" id="Storagestatus" rendered="{!displayFlg}" value="{!s.StorageStatus}"/>
+// </td>
+// <td class="dataCell" style="width:100px;">
+// <lightning-input type="hidden" id="Product_Set_Name__c" value="{!s.Product_Set_Name}" />
+// <lightning-formatted-text id="Product_Set_Name" value="{!s.Product_Set_Name}" />
+// </td>
+// <td class="dataCell" id="{!Text(cnt-1)}:td_Name__c" style="width:350px;">
+// <div id="Page:mainForm:block:lists:{!s.lineNo}:NameLink"><apex:outputLink style="width:300px;" value="{!baseUrl}/{!s.PageObject.Id__c}" id="Nametext1" target="_blank">{!s.PageObject.Name__c}</apex:outputLink></div>
+// <lightning-input type="hidden" id="Name__c" value="{!s.PageObject.Name__c}"/>
+// <template layout="none" rendered="{!IF(s.wrong_Register == true, true, false)}">
+// <script type="text/javascript">
+// j$(escapeVfId('Page:mainForm:block:lists:{!Text(cnt-1)}' + ':Nametext1')).css({"color":"red"});
+// </script>
+// </template>
+// </td>
+
+// <!-- 鎶ヤ环璇曠畻 娉ㄩ噴 -->
+// <td class="dataCell" style="text-align:center;width:100px;" hidden="hidden">
+// <lightning-input-field id="Agency_UnitPrice" html-disabled="true" style="width:80px;text-align:right;" rendered="{!displayFlg}" value="{!s.PageObject.AgencyUnitPrice__c}" onChange="calAgencyPrice('{!s.lineNo}')"/>
+// </td>
+// <!-- 鎶ヤ环璇曠畻 娉ㄩ噴 -->
+// <td class="dataCell" style="width:100px;text-align:right;" hidden="hidden">
+// <lightning-formatted-text style="width:80px;display:{!IF(displayFlg, '', 'none')}" id="Agency_TotalPrice" value="{0, number, ###,##0.0}">
+// <apex:param value="{!IF(s.PageObject.Id__c==null,null,s.PageObject.AgencySubtotal__c)}"/>
+// </lightning-formatted-text>
+// <lightning-input type="hidden" id="AgencySubtotal__c" value="{!s.PageObject.AgencySubtotal__c}" rendered="{!displayFlg}"/>
+
+// <!-- 澶氬勾淇濅慨 start -->
+// <lightning-input type="hidden" id="GuaranteePeriod__c" value="{!s.PageObject.GuaranteePeriod__c}" rendered="{!displayFlg}"/>
+// <lightning-input type="hidden" id="provistonPeriod__c" value="{!s.PageObject.provistonPeriod__c}" rendered="{!displayFlg}"/>
+// <lightning-input type="hidden" id="If_Cancel_Guarantee__c" value="{!s.PageObject.If_Cancel_Guarantee__c}" rendered="{!displayFlg}"/>
+// <lightning-input type="hidden" id="ServicePrice__c" value="{!s.PageObject.ServicePrice__c}" rendered="{!displayFlg}"/>
+// <lightning-input type="hidden" id="GuranteePrice__c" value="{!s.GuranteePrice}" rendered="{!displayFlg}"/>
+// <lightning-input type="hidden" id="Maintenance_Price_Year__c" value="{!s.Maintenance_Price_Year}" rendered="{!displayFlg}"/>
+// <lightning-input type="hidden" id="GuranteeType" value="{!s.PageObject.GuranteeType__c}" rendered="{!displayFlg}"/>
+
+// <lightning-input type="hidden" id="ProductEntend_gurantee_period_all__c" value="{!s.PageObject.ProductEntend_gurantee_period_all__c}" rendered="{!displayFlg}"/>
+// <lightning-input type="hidden" id="ProductGuranteePrice__c" value="{!s.ProductGuranteePrice}" rendered="{!displayFlg}"/>
+// <lightning-input type="hidden" id="productServicePrice__c" value="{!s.PageObject.productServicePrice__c}" rendered="{!displayFlg}"/>
+// <lightning-input type="hidden" id="latestGuranteeType"
+// value="{!s.latestInfo.GuranteeType}" rendered="{!displayFlg}"/>
+// <lightning-input type="hidden" id="latestMaintenance_Price_Year" value="{!s.latestInfo.Maintenance_Price_Year}" rendered="{!displayFlg}"/>
+// <lightning-input type="hidden" id="latestIntra_Trade_Gurantee"
+// value="{!s.latestInfo.Intra_Trade_Gurantee}" rendered="{!displayFlg}"/>
+// <lightning-input type="hidden" id="latestProductEntend_gurantee_period_all"
+// value="{!s.latestInfo.ProductEntend_gurantee_period_all}" rendered="{!displayFlg}"/>
+// <lightning-input type="hidden" id="latestProductIntra_Trade_Service"
+// value="{!s.latestInfo.Intra_Trade_Service}" rendered="{!displayFlg}"/>
+// <!-- 澶氬勾淇濅慨 end -->
+// </td>
+// <!-- 澶栬锤澶氬勾淇� 鍙栨秷nodiscount闅愯棌 绮剧悽鎶�鏈� wql 2021/01/28 start rendered="{!IF(trade == '鍐呰部',true,false)}"-->
+// <!--鎶ヤ环璇曠畻 娉ㄩ噴 -->
+// <apex:variable value="{!1}" id="warranty2" var="abc" >
+// <td class="dataCell" style="width:100px;text-align:right;" hidden="hidden">
+// <lightning-input-field style="width:80px;display:{!IF(displayFlg, '', 'none')}" html-disabled="true" id="NoDiscountTotal" value="{!s.PageObject.NoDiscountTotal__c}"/>
+// </td>
+// </apex:variable>
+// <!-- 澶栬锤澶氬勾淇� 鍙栨秷nodiscount闅愯棌 绮剧悽鎶�鏈� wql 2021/01/28 end -->
+// <td class="dataCell" style="width:15px;" >
+// <template if:true="{!s.lineNo < 149}" layout="none">
+// <apex:image id="plusicon" value="{!$Resource.plusicon}" onclick="addRowJs({!s.lineNo + 1});"/>
+// </template>
+// </td>
+// </tr>
+// <apex:variable value="{!cnt + 1}" var="cnt" />
+// </apex:repeat>
+// </table> <!-- /table class="list" -->
+// </template>
+// </div>
+// </div>
+// </div>
+// <BR></BR>
+// <div>
+// <table border="0">
+// <tr>
+// <td>
+// <!--澶氬勾淇濅慨 澧炲姞瀹藉害 start -->
+// <table border="0" style="background-color:#ffd6c1; width: 878px;">
+// <!--澶氬勾淇濅慨 end -->
+// <tr>
+// <th style="width:100px;"> </th>
+// <th style="width:140px;text-align:center;" bgcolor="#ffd6c1">{!$Label.Calculate}</th>
+// <!-- CHAN-B6H4MH 20181114UpdateStart-->
+// <th style="width:120px;text-align:center;" bgcolor="#ffd6c1">{!$Label.AdjustAmount}</th>
+// <!-- <th style="width:120px;" bgcolor="#ffd6c1"> </th>
+// <th style="width:120px;" bgcolor="#ffd6c1"> </th>
+// <th style="width:120px;text-align:center;" bgcolor="#ffd6c1">{!$Label.Calculate}</th>
+// <th style="width:120px;text-align:center;" bgcolor="#ffd6c1">{!$Label.Amount}</th> -->
+// <!-- CHAN-B6H4MH 20181114UpdateEnd-->
+// </tr>
+// <tr>
+// <th style="width:100px;text-align:right">{!$Label.Quote_Adjustment}</th>
+// <td style="width:140px;"><lightning-input style="width:110px;text-align:right" id="QuoCalculation" rendered="{!displayFlg}" value="{!qb.Quote_Adjust_Calculate}" onchange="UnitPriceUpdate();"/></td>
+// <td style="width:120px;"><lightning-input-field style="width:110px;text-align:right" id="QuoAmount" rendered="{!displayFlg}" value="{!quo.Quote_Adjust_Amount_Page__c}" onchange="calFromQuoAmont();"/></td>
+// <!-- CHAN-B6H4MH 20181114UpdateStart-->
+// <!-- <th style="width:120px;" bgcolor="#ffd6c1"> </th>
+// <th style="width:120px;text-align:center">{!$Label.Discount_Amount}</th>
+// <td style="width:120px;text-align:right"><apex:outputLabel style="width:110px;display:{!IF(displayFlg, '', 'none')}" id="DisCalculation" value="{!DisCalculation}"/></td>
+// <td style="width:120px;text-align:right"><lightning-formatted-text style="width:110px;display:{!IF(displayFlg, '', 'none')}" id="DisAmount" value="{0, number, ###,##0.00}"><apex:param value="{!DisAmount}"/></lightning-formatted-text></td> -->
+// <!-- CHAN-B6H4MH 20181114UpdateEnd-->
+// <th style="width:120px;text-align:center;"></th>
+// <td style="width:120px;" align="center">
+// <!-- <lightning-button action="{!Jump}" rerender="hiddenQuoid" value="璺宠浆" style="width:90px;"
+// /> -->
+// <lightning-button onclick="JumpJs();return false;" style="width:90px;" value="鎶ヤ环璁$畻"
+// />
+// </td>
+// <th style="width:100px;" bgcolor="#ffd6c1">
+// <!-- 鐢ㄨ繖涓� disabled 棰滆壊澶殫 -->
+// 鏄惁杩涜杩囨姤浠疯绠楋細<lightning-input-field style="width:20px;text-align:right" id="IsQuoteTrial" rendered="{!displayFlg}" value="{!quo.IsQuoteTrial__c}" onclick="return false;" />
+// </th>
+// </tr>
+// <tr><!-- style="display:{!IF(oppInfo.Account_RecordType_DeveloperName!='AgencyContract','table-row','none')};" -->
+// <th style="width:100px;"> </th>
+// <th colspan="2" style="width:260px;text-align:center;">{!$Label.Sales_Name}</th>
+// <!-- 鎶ヤ环璇曠畻娉ㄩ噴 -->
+// <!-- <th style="width:120px;text-align:center;">{!$Label.Sales_Div}</th> -->
+// <th style="width:120px;text-align:center;"></th>
+// <th style="width:120px;text-align:center;">{!$Label.Amount}</th>
+// <th style="width:120px;text-align:center;">{!$Label.Sales_Profit}</th>
+// <th style="width:120px;text-align:center;">{!$Label.Percent}</th>
+// </tr>
+// <tr>
+// <th style="width:100px;text-align:right;">{!$Label.Sales_Name1}</th>
+// <!-- 2018/09/28 CHAN-B4YAB8 鍘绘帀onchange function getID1(); start -->
+// <td colspan="2" style="width:260px;"><lightning-input-field style="width:230px;" id="SalesName1" value="{!quo.Agency1__c}"/></td>
+// <!-- 2018/09/28 CHAN-B4YAB8 鍘绘帀onchange function getID1(); end -->
+// <!-- 澶氬勾淇濅慨娉ㄩ噴 2018/09/28 CHAN-B4YAB8 缁忛攢鍟嗘姌鎵� start -->
+// <!--<td style="width:120px;text-align:center">
+// <lightning-formatted-text style="width:110px;text-align:right" id="AgencyDiscount" value="{!AgencyDiscount}"/>
+// </td> -->
+// <!-- 澶氬勾淇濅慨 绗竴缁忛攢鍟� 鎶樻墸鍙樹负 鍙緭鍏� start -->
+// <td style="width:120px;text-align:center" hidden="hidden">
+// <lightning-input style="width:50px;text-align:right" id="AgencyDiscount" value="{!AgencyDiscount}" onchange="callFromAgencyDiscount();"/>
+// </td>
+// <td style="width:120px;text-align:center" >
+// </td>
+// <!-- 澶氬勾淇濅慨 绗竴缁忛攢鍟� 鎶樻墸鍙樹负 鍙緭鍏� end -->
+// <td style="width:120px;"><lightning-input-field style="width:110px;text-align:right" id="SalesAmount1" value="{!quo.OCM_Agent1_Price_Page__c}" rendered="{!displayFlg}" onchange="salesProfit1();setOCMAmount();quoteAgencyTotalPriceAction1('缁忛攢鍟�');AgencyDiscountCalculation1();"/></td>
+// <!-- 2018/09/28 CHAN-B4YAB8 缁忛攢鍟嗘姌鎵� end -->
+// <td style="width:120px;text-align:right"><apex:outputLabel style="width:110px;display:{!IF(displayFlg, '', 'none')}" id="Salesprofit1" value="{!Salesprofit1}"/></td>
+// <td style="width:120px;text-align:right"><apex:outputLabel style="width:110px;display:{!IF(displayFlg, '', 'none')}" id="SalesCalculation1" value="{!qb.SalesCalculation1}" /></td>
+// </tr>
+// <tr>
+// <th style="width:100px;text-align:right;">{!$Label.Sales_Name2}</th>
+// <td colspan="2" style="width:260px;"><lightning-input-field style="width:230px;" id="SalesName2" value="{!quo.Agency2__c}" onChange="getId2();"/></td>
+// <td style="width:120px;"><apex:outputLabel style="width:110px;text-align:right;" id="SalesShopClass2" value="{!SalesShopClass2}" /></td>
+// <td style="width:120px;"><lightning-input-field style="width:110px;text-align:right;" id="SalesAmount2" value="{!quo.Agent1_Agent2_Price_Page__c}" rendered="{!displayFlg}" onchange="salesProfit2();"/></td>
+// <td style="width:120px;text-align:right;"><apex:outputLabel style="width:110px;display:{!IF(displayFlg, '', 'none')}" id="Salesprofit2" value="{!Salesprofit2}" /></td>
+// <td style="width:120px;text-align:right;"><apex:outputLabel style="width:110px;display:{!IF(displayFlg, '', 'none')}" id="SalesCalculation2" value="{!qb.SalesCalculation2}" /></td>
+// </tr>
+// </table>
+// </td>
+// <td>
+// <table border="0" style="display:{!IF(hiddenSaveBtn, 'none', '')}">
+// <!-- SI涓氬姟绯荤粺娴佺▼鏀瑰杽鍜屾彁鍗囬」鐩�2019-10-28 by vivek start -->
+// <tr>
+// <td style="width:150px;" align="right"><lightning-button onclick="QuoteConfirmJs();return false;" rendered="{!UnConfirmQuote}" value="纭鎶ヤ环" style="width:90px;" /></td>
+// </tr>
+// <!-- SI涓氬姟绯荤粺娴佺▼鏀瑰杽鍜屾彁鍗囬」鐩�2019-10-28 by vivek end -->
+// <tr>
+// <th style="width:150px;" align="right"> </th>
+// </tr>
+// <tr>
+// <td style="width:150px;" align="right"><lightning-button onclick="save2btn();return false;" rerender="hiddenQuoid,SFDA_Flg" value="{!$Label.Save_Button}" style="width:90px;" disabled="{!Save_button}" /></td>
+// </tr>
+// <tr>
+// <!-- SI涓氬姟绯荤粺娴佺▼鏀瑰杽鍜屾彁鍗囬」鐩�2019-10-28 by vivek start -->
+// <td style="width:150px;" align="right"><lightning-button onclick="submitOppoApplyStockJs();return false;" rerender="hiddenQuoid,SFDA_Flg" value="澶囪揣纭鐢宠" style="width:90px;" disabled="{!Save_button}" /></td>
+// <!-- <td style="width:150px;" align="right"><lightning-button onclick="submitOppoApplyStockJs();return false;" rerender="hiddenQuoid,SFDA_Flg" value="澶囪揣纭鐢宠" style="width:90px;" disabled="{!Save_button1}" /></td> -->
+// <!-- SI涓氬姟绯荤粺娴佺▼鏀瑰杽鍜屾彁鍗囬」鐩�2019-10-28 by vivek end -->
+// </tr>
+// <tr>
+// <td style="width:150px;" align="right"><lightning-button onclick="oppReflection2btn();return false;" rerender="hiddenQuoid" value="{!$Label.Opp_Button}" style="width:90px;" disabled="{!Save_button}"/></td>
+// </tr>
+// <tr>
+// <!-- 20211029 lt SFDC鍋滄棰勮 add oncomplete="MarkRed();" -->
+// <td style="width:150px;" align="right"><lightning-button onclick="decision2btn();return false;" rerender="errorMsg,hiddenQuoid,SFDA_Flg" value="{!$Label.QuoteDecision_Button}" style="width:90px;" disabled="{!Decision_button}" oncomplete="MarkRed();"/></td>
+// <!--{!Decision_button} -->
+// </tr>
+// <tr>
+// <!-- 2018/09/28 CHAN-B4YAB8 澶嶅埗绮樿创鏉� start -->
+// <td style="width:150px;" align="right"><lightning-button onClick="copyToClipboardNewQuoteEntry(event, displayCost, document.getElementById( 'Page:mainForm:hiddenQuoid').innerHTML, '{!oppInfo.CurrencyIsoCode}');return false;" value="{!$Label.Copy_Detail}" style="width:90px;" rendered="{!displayFlg}" rerender="dummy"/></td>
+// <!-- 2018/09/28 CHAN-B4YAB8 澶嶅埗绮樿创鏉� end -->
+// </tr>
+// <tr>
+// <td style="width:150px;" align="right">
+// <lightning-button onclick="DownloadCsvGet()" disabled="{!IF(quoId!=null,false,true)}" value="CSV涓嬭浇" style="width:90px;" reRender="dummy"/>
+// </td>
+// </tr>
+// </table>
+// <table border="0" >
+// <tr>
+// <td style="width:150px;" align="right"><lightning-button action="{!Back}" rerender="hiddenQuoid" value="杩斿洖璇环" style="width:90px;" /></td>
+// </tr>
+// <!-- 鎶ヤ环璇曠畻 -->
+// <!-- <tr>
+// <td style="width:150px;" align="right">
+
+// <lightning-button onclick="JumpJs();return false;" style="width:90px;" value="鎶ヤ环璇曠畻"
+// />
+// </td>
+// </tr> -->
+// </table>
+// </td>
+// </tr>
+// </table>
+// <br></br>
+// <!--澶氬勾淇濅慨 澧炲姞瀹藉害 start -->
+// <table border="0" style="background-color:#ffd6c1; width: 878px;">
+// <!--澶氬勾淇濅慨 澧炲姞瀹藉害 end -->
+// <tr>
+// <th style="text-align:right;width:80px;">{!$Label.Quote_Print}</th>
+// <td style="text-align:center;width:80px;"><lightning-input value="{!quo.Unit_Price__c}"/>{!$Label.Detail_Price}</td>
+// <td style="text-align:center;width:80px;"><lightning-input value="{!quo.Offer_Amount__c}"/>{!$Label.Detail_Sum}</td>
+// <td style="text-align:center;width:80px;"><lightning-input value="{!quo.TOTAL__c}"/>{!$Label.Total_Price}</td>
+// <td style="text-align:center;width:80px;"><lightning-input value="{!quo.Discount__c}"/>{!$Label.Total_Discount_Percent}</td>
+// <td style="text-align:center;width:80px;"><lightning-input value="{!quo.Pricing__c}"/>{!$Label.Total_Discount_Amount}</td>
+// <td style="text-align:center;"><lightning-input value="{!quo.Preferential_Trading_Price__c}"/>{!$Label.Row_Total_Sum}</td>
+// <!-- 澶氬勾淇濅慨 start -->
+// <td style="text-align:center;width:80px;"><lightning-input value="{!quo.Preferential_Gurantee_Period__c}"/>{!$ObjectType.Quote.fields.Preferential_Gurantee_Period__c.label}</td>
+// <!-- 澶氬勾淇濅慨 end -->
+// <td style="width:120px;text-align:right" colspan="2"><lightning-input value="{!quo.Contract__c}" rendered="{!enableContract}"/>{!$Label.Contract_Breakdown}</td>
+// </tr>
+// <tr>
+// <th style="text-align:right;width:100px;">{!$Label.Print_HPName}</th>
+// <td colspan="6">
+// <lightning-combobox id="selection_hp" value="{!selection_hp}" style="width:400px;" size="1">
+// <apex:sele
+
+// ctOptions value="{!options_hp}"/>
+// </lightning-combobox>
+// </td>
+// <td colspan="2" align="right" style="display:{!IF(hiddenSaveBtn, 'none', '')}"><lightning-button onclick="print2btn();return false;" value="{!$Label.Print_Button}" style="width:90px;" disabled="{!print_button}" rendered="{!displayFlg}" rerender="dummy"/></td>
+// </tr>
+// </table>
+// </div>
+// </lightning-card>
+// </form>
+// <!-- 娣诲姞琛� html鐗规�у鍔犳粦鍔ㄦ潯 绮剧悽鎶�鏈� wql 2021/02/09 start -->
+// <script type="text/javascript">
+
+// </script>
+// <!-- //娣诲姞琛� html鐗规�у鍔犳粦鍔ㄦ潯 绮剧悽鎶�鏈� wql 2021/02/09 end -->
+
+
+
+
+// </template> -->
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSINewQuoteEntry/lexSINewQuoteEntry.js-meta.xml b/force-app/main/default/lwc/lexSINewQuoteEntry/lexSINewQuoteEntry.js-meta.xml
new file mode 100644
index 0000000..171374b
--- /dev/null
+++ b/force-app/main/default/lwc/lexSINewQuoteEntry/lexSINewQuoteEntry.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexSINewQuoteEntry">
+ <apiVersion>51.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__AppPage</target>
+ <target>lightning__RecordPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSISearchSetProduct/lexSISearchSetProduct.css b/force-app/main/default/lwc/lexSISearchSetProduct/lexSISearchSetProduct.css
new file mode 100644
index 0000000..5a7c26e
--- /dev/null
+++ b/force-app/main/default/lwc/lexSISearchSetProduct/lexSISearchSetProduct.css
@@ -0,0 +1,6 @@
+/*div {
+ color: #fff;
+ height: 300px;
+ overflow-y: auto;
+ overflow-x: hidden;
+}*/
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSISearchSetProduct/lexSISearchSetProduct.html b/force-app/main/default/lwc/lexSISearchSetProduct/lexSISearchSetProduct.html
new file mode 100644
index 0000000..d0148fd
--- /dev/null
+++ b/force-app/main/default/lwc/lexSISearchSetProduct/lexSISearchSetProduct.html
@@ -0,0 +1,110 @@
+<template>
+<!-- <apex:includeScript value="{!URLFOR($Resource.jquery183minjs)}"/>
+<apex:includeScript value="{!URLFOR($Resource.PleaseWaitDialog)}"/>
+ -->
+ <template if:true={isLoad}>
+ <form id="mainForm" >
+ <!-- <apex:actionFunction action="{!SelectDone}" name="SelectDone" reRender="setPFString,DataStatus" oncomplete="SetMuiltProduct();"/> -->
+ <lightning-input type="hidden" value={data.setPFString} id="setPFString" ></lightning-input>
+ <lightning-input type="hidden" value={data.DataStatus} id="DataStatus" > </lightning-input>
+ <lightning-card title={Label.Set_Search}>
+ <!-- <apex:pageBlock id="idSearchSetProduct" title="{Label.Set_Search}"> -->
+ <table width="900" border="0" style="background-color:#DCDCDC;" >
+ <colgroup>
+ <col width="12" />
+ <col width="20" />
+ <col width="20" />
+ <col width="200" />
+ <col width="200" />
+ <col width="20" />
+ <col width="428" />
+ </colgroup>
+
+ <tr>
+ <td> </td>
+ <th>{Label.Search_Condition}</th>
+ <td> </td>
+ <th>{Label.Set_Name}</th>
+ <th>{Label.Set_Code}</th>
+ <td> </td>
+ <td> </td>
+ </tr>
+ <tr>
+ <td> </td>
+ <td> </td>
+ <td> </td>
+ <td><lightning-input type="search" value={SearchName} onchange={searchNameInputChange} style="width:200px" ></lightning-input></td>
+
+ <td><lightning-input type="search" value={SearchCode} onchange={searchCodeInputChange} style="width:200px" > </lightning-input></td>
+
+ <td><lightning-button label={Label.Search} onclick={Select} rerender="idRezultVisitor" class="slds-m-left_x-small"> </lightning-button></td>
+
+ <td><lightning-button label="娣诲姞" onclick={DataPrepare} class="slds-m-left_x-small"></lightning-button></td>
+ </tr>
+ <tr>
+ <td style="border-bottom: 1px solid #888;" colspan="15"> </td>
+ </tr>
+ </table>
+ <table width="900" border="0" style="background-color:#DCDCDC;" >
+ <tr>
+ <td width="12"> </td>
+ <th valign="top">{Label.Search_Result}</th>
+ <td width="20"> </td>
+ <td>
+ <table border="0">
+ <tr>
+ <td>
+ <div id="iframelike" style="width:770px;
+ height: 300px;
+ overflow-y: auto;
+ overflow-x: hidden;">
+ <lightning-datatable
+ key-field="id"
+ data={data.activities}
+ columns = {columns}>
+ </lightning-datatable>
+
+ <!-- <apex:pageBlockTable id="idRezultVisitor" value="{!activities}" var="c" border="1" columns="7" columnsWidth="30px,300px,120px,90x,200px,50px">
+ <apex:column >
+ <apex:facet name="header">閫夋嫨</apex:facet>
+ <apex:inputCheckbox value="{!c.isSelected}"/>
+ </apex:column>
+ <apex:column >
+ <apex:facet name="header">Report</apex:facet>
+ <apex:outputLink value="{!baseUrl}/{!reportid}?pv1={!c.setProductid}" target="_blank">鈼�</apex:outputLink>
+ </apex:column>
+ <apex:column >
+ <apex:facet name="header">{Label.Set_Name}</apex:facet>
+ <apex:outputLink value="{!c.Name}" onclick="SetProductId('{!c.setProductidFull}')">{!c.Name}</apex:outputLink>
+ </apex:column>
+ <apex:column >
+ <apex:facet name="header">{Label.Set_Code}</apex:facet>
+ <apex:outputText value="{!c.Product_Set_CD_c}" />
+ </apex:column>
+ <apex:column >
+ <apex:facet name="header">{Label.Quantity}</apex:facet>
+ <apex:outputText value="{!c.Quantity}" />
+ </apex:column>
+ <apex:column >
+ <apex:facet name="header">{data.LabelI}</apex:facet>
+ <apex:outputText value="{!c.Quote_Select_Info_c}" />
+ </apex:column>
+ <apex:column >
+ <apex:facet name="header">{!$Label.Valid_Status}</apex:facet>
+ <template layout="inline" rendered={c.Valid_c} >
+ <img width="16" height="16" title="銉併偋銉冦偗" class="checkImg" alt="銉併偋銉冦偗" src="/img/checkbox_checked.gif"/>
+ </template>
+ </apex:column>
+ </apex:pageBlockTable> -->
+ </div>
+ </td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ </table>
+ <!-- </apex:pageBlock> -->
+ </lightning-card>
+ </form>
+ </template>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSISearchSetProduct/lexSISearchSetProduct.js b/force-app/main/default/lwc/lexSISearchSetProduct/lexSISearchSetProduct.js
new file mode 100644
index 0000000..7a4a0a6
--- /dev/null
+++ b/force-app/main/default/lwc/lexSISearchSetProduct/lexSISearchSetProduct.js
@@ -0,0 +1,164 @@
+import { LightningElement, track, wire } from 'lwc';
+
+import Set_Name from '@salesforce/label/c.Set_Name';
+import Search_Condition from '@salesforce/label/c.Search_Condition';
+import Set_Search from '@salesforce/label/c.Set_Search';
+import Set_Code from '@salesforce/label/c.Set_Code';
+import Search from '@salesforce/label/c.Search';
+import Search_Result from '@salesforce/label/c.Search_Result';
+import Quantity from '@salesforce/label/c.Quantity';
+import Valid_Status from '@salesforce/label/c.Valid_Status';
+
+import serContact from '@salesforce/apex/SISearchSetProductController.serContact';
+import SelectDone from '@salesforce/apex/SISearchSetProductController.SelectDone';
+import getFileName from '@salesforce/apex/SISearchSetProductController.getFileName';
+import init from '@salesforce/apex/SISearchSetProductController.init';
+import a from '@salesforce/resourceUrl/jquery183minjs';
+import b from '@salesforce/resourceUrl/PleaseWaitDialog';
+export default class lexSISearchSetProduct extends LightningElement {
+ Label={
+ Set_Name,
+ Search_Condition,
+ Set_Search,
+ Set_Code,
+ Search_Result,
+ Search,
+ Quantity,
+ Valid_Status,
+ };
+ isLoad=false;
+ data;
+ LabelI='';
+ SearchName='';
+ SearchCode='';
+ columns = [
+ { label: '閫夋嫨', fieldName: 'isSelected' },
+ { label: 'Report', fieldName: 'setUrl' },
+ { label: this.Label.Set_Name, fieldName: 'Name' },
+ { label: this.Label.Set_Code, fieldName: 'Product_Set_CD_c' },
+ { label: this.Label.Quantity, fieldName: 'Quantity' },
+ { label: this.Label.Valid_Status, fieldName: 'img' }
+ // { label: 'Website', fieldName: 'Asset_Model_No_forPrint__c', type: 'url' },
+ // { label: 'Phone', fieldName: 'phone', type: 'phone' },
+ // { label: 'Balance', fieldName: 'amount', type: 'currency' },
+ // { label: 'CloseAt', fieldName: 'closeAt', type: 'date' },
+ ];
+
+
+ async connectedCallback(){
+ // getFileName().then(res=>{
+ // console.log("ttt");
+ // console.log(res);
+ // this.Quote_Select_Info__c_Label=res;
+ // })
+ console.log("jinru");
+ await init().then(res=>{
+ console.log("hhh");
+ console.log("res:");
+ console.log(res);
+ console.log(res.LabelI);
+ this.data=res;
+ this.LabelI=res.LabelI;
+ for (var i = this.data.activities.length - 1; i >= 0; i--) {
+ this.data.activities[i].setUrl= res.baseUrl + '/'+ res.reportid +'?pv1='+ this.data.activities[i].setProductid;
+ if(this.data.activities[i].Valid_c){
+ this.data.activities[i].img='';
+ }
+ }
+
+ this.columns = [
+ // { label: '閫夋嫨', fieldName: 'isSelected' },
+ { label: 'Report', fieldName: 'setUrl', type:'url' },
+ { label: this.Label.Set_Name, fieldName: 'Name' },
+ { label: this.Label.Set_Code, fieldName: 'Product_Set_CD_c' },
+ { label: this.Label.Quantity, fieldName: 'Quantity' },
+ { label: this.data.LabelI, fieldName: 'Quote_Select_Info_c' },
+ { label: this.Label.Valid_Status, fieldName: 'img' }
+ ];
+ this.isLoad=true;
+ });
+ }
+
+
+ SetProductId(str) {
+ //top.window.opener.setProductEntry(str);
+ top.window.opener.setProductEntryGateway(str);
+ top.window.close();
+ }
+
+ SetMuiltProduct(){
+ var Str = this.data.setPFString;
+ var isPrepared = this.data.DataStatus;
+ if(isPrepared!='Fin'){
+ confirm(isPrepared)
+ }else if(Str==''||Str==null){
+ if(confirm("鎮ㄥ皻鏈�夊彇浠讳綍浜у搧閰嶅锛岀‘璁ゅ畬鎴愪箞锛�")){
+ top.window.close();
+ }else{
+ }
+ }else{
+ top.window.opener.setProductEntryGateway(Str);
+ top.window.close();
+ }
+ }
+ async DataPrepare() {
+ // body...
+ console.log("娣诲姞:");
+ this.data.DataStatus='鏁版嵁灏氭湭鍑嗗濂斤紝璇风◢绛�';
+ console.log(this.data);
+ let activities=[];
+ let isSelected=[];
+ for (var i = this.data.activities.length - 1; i >= 0; i--) {
+ activities.push(this.data.activities[i].setProductidFull);
+ isSelected.push(this.data.activities[i].isSelected);
+ }
+ //j$(escapeVfId("Page:mainForm:DataStatus")).val('鏁版嵁灏氭湭鍑嗗濂斤紝璇风◢绛�');
+ await SelectDone({activities:activities,isSelected:isSelected}).then(res=>{
+ console.log("SelectDone:");
+ console.log(res);
+ if(res!=null){
+ this.data.setPFString=res.setPFString;
+ this.data.setProductidFullList=res.setProductidFullList;
+ this.data.DataStatus=res.DataStatus;
+ console.log(this.data);
+ }
+ }).catch(err=>{
+ console.log("err:");
+ console.log(err);
+ console.log(err.message);
+ });
+ }
+
+ Select(){
+ serContact({searchName:this.data.SearchName,searchCode:this.data.SearchCode}).then(res=>{
+ console.log("鏌ヨ缁撴灉");
+ console.log(res);
+ if(res!=null){
+ this.data.cl=res.cl;
+ this.data.activities=res.activities;
+ for (var i = this.data.activities.length - 1; i >= 0; i--) {
+
+ this.data.activities[i].setUrl= this.data.baseUrl + '/'+ this.data.reportid +'?pv1='+ this.data.activities[i].setProductid;
+ if(this.data.activities[i].Valid_c){
+ this.data.activities[i].img='鈭�';
+ }
+ }
+ console.log("activities!");
+ }
+ let t=this.data;
+ this.data={};
+ this.data=t;
+ console.log(this.data);
+ })
+ }
+ searchNameInputChange(event){
+ this.data.SearchName = event.detail.value;
+ }
+ searchCodeInputChange(event){
+ this.data.SearchCode = event.detail.value;
+ }
+ // function DataReady() {
+ // // body...
+ // j$(escapeVfId("Page:mainForm:DataStatus")).value()='Fin';
+ // }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSISearchSetProduct/lexSISearchSetProduct.js-meta.xml b/force-app/main/default/lwc/lexSISearchSetProduct/lexSISearchSetProduct.js-meta.xml
new file mode 100644
index 0000000..d0dd8b9
--- /dev/null
+++ b/force-app/main/default/lwc/lexSISearchSetProduct/lexSISearchSetProduct.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexSISearchSetProduct">
+ <apiVersion>51.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__AppPage</target>
+ <target>lightning__RecordPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSIStoOPD/lexSIStoOPD.css b/force-app/main/default/lwc/lexSIStoOPD/lexSIStoOPD.css
new file mode 100644
index 0000000..eb667c5
--- /dev/null
+++ b/force-app/main/default/lwc/lexSIStoOPD/lexSIStoOPD.css
@@ -0,0 +1,10 @@
+.sisToOPDHolder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+.container .uiContainerManager{
+ display: none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSIStoOPD/lexSIStoOPD.html b/force-app/main/default/lwc/lexSIStoOPD/lexSIStoOPD.html
new file mode 100644
index 0000000..48f29e0
--- /dev/null
+++ b/force-app/main/default/lwc/lexSIStoOPD/lexSIStoOPD.html
@@ -0,0 +1,6 @@
+<template>
+ <div class="sisToOPDHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ <lightning-button label="Show Toast" onclick={ShowToastEvent}></lightning-button>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSIStoOPD/lexSIStoOPD.js b/force-app/main/default/lwc/lexSIStoOPD/lexSIStoOPD.js
new file mode 100644
index 0000000..a44bcae
--- /dev/null
+++ b/force-app/main/default/lwc/lexSIStoOPD/lexSIStoOPD.js
@@ -0,0 +1,101 @@
+/*
+ * @Description:
+ * @version:
+ * @Author: chen jing wu
+ * @Date: 2023-04-07 09:02:03
+ * @LastEditors: chen jing wu
+ * @LastEditTime: 2023-04-12 10:15:28
+ */
+import { api, wire,LightningElement } from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import updateForSIStoOPDButton from '@salesforce/apex/ReportController.updateForSIStoOPDButton';
+import init from '@salesforce/apex/ReportController.initForSIStoOPDButton';
+import { updateRecord } from 'lightning/uiRecordApi';
+import UserInfo_Owner from '@salesforce/apex/TaskFeedbackController.UserInfo_Owner';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+export default class LexSIStoOPD extends LightningElement {
+ @api recordId;
+ IsLoading = true;
+ ownerId;
+ status;
+ userId;
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+
+
+ connectedCallback(){
+ console.log(this.recordId);
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result);
+ if (result != null) {
+ this.ownerId = result.ownerId;
+ this.status = result.status;
+ this.userId = result.userId;
+ this.SIStoOPD();
+ }
+ }).catch(error => {
+ console.log("error");
+ console.log(error);
+ });
+
+ }
+
+ showToast(msg,type) {
+ const event = new ShowToastEvent({
+ title: '',
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ }
+
+
+ updateRecordView(recordId) {
+ updateRecord({fields: { Id: recordId }});
+ }
+
+ SIStoOPD () {
+ if(this.ownerId == this.userId && this.status == "鑽夋涓�") {
+ updateForSIStoOPDButton({
+ recordId: this.recordId
+ }).then(result=>{
+ console.log(result);
+ if(result){
+ this.showToast(result,"error");
+ }else{
+ this.showToast("鎴愬姛","success");
+ this.updateRecordView(this.recordId);
+ }
+ this.IsLoading = false;
+ this.dispatchEvent(new CloseActionScreenEvent());
+ });
+ } else {
+ this.showToast("鍙崏妗堜腑鐘舵�佸強OPD/SIS鎶ュ憡涔︾殑鎵�鏈変汉鍙互鎻愪氦","error");
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+
+}
+ // ifError(result){
+ // console.log(result);
+ // if(result){
+ // this.showToast(result,"error");
+ // }
+
+ // }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSIStoOPD/lexSIStoOPD.js-meta.xml b/force-app/main/default/lwc/lexSIStoOPD/lexSIStoOPD.js-meta.xml
new file mode 100644
index 0000000..c307012
--- /dev/null
+++ b/force-app/main/default/lwc/lexSIStoOPD/lexSIStoOPD.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSISubmit/lexSISubmit.html b/force-app/main/default/lwc/lexSISubmit/lexSISubmit.html
new file mode 100644
index 0000000..978fa09
--- /dev/null
+++ b/force-app/main/default/lwc/lexSISubmit/lexSISubmit.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="submitHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSISubmit/lexSISubmit.js b/force-app/main/default/lwc/lexSISubmit/lexSISubmit.js
new file mode 100644
index 0000000..7b51ea2
--- /dev/null
+++ b/force-app/main/default/lwc/lexSISubmit/lexSISubmit.js
@@ -0,0 +1,97 @@
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import updateForSubmitButton from '@salesforce/apex/ReportController.updateForSubmitButton';
+import { updateRecord } from 'lightning/uiRecordApi';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+
+import init from '@salesforce/apex/ISOpportunityDemand.initISOpportunityController';
+import submit from '@salesforce/apex/ISOpportunityDemand.submit';
+
+export default class LexSiSubmit extends LightningElement {
+ @api recordId;
+ IsLoading = true;
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback(){
+ this.IsLoading = false;
+ // this.submit();
+ init({recordId:this.recordId})
+ .then(result=>{
+ console.log("lexsubmit------>>>",result)
+ if (!confirm("涓�鏃︽彁浜ゆ璁板綍浠ュ緟鎵瑰噯锛屾牴鎹偍鐨勮缃偍鍙兘涓嶅啀鑳藉缂栬緫姝よ褰曟垨灏嗕粬浠庢壒鍑嗚繃绋嬩腑璋冨洖銆傛槸鍚︾户缁紵")) {
+ return;
+ }
+ if (result.checkTf !=true ) {
+ this.showToast('璇疯惀涓氭媴褰撴彁浜ゅ鎵�','error')
+ return;
+ }
+ //鐘舵�佷负缁堟鐨勪笉鑳芥彁浜ゅ鎵�
+ if(result.sodStatus == '00 宸茬粓姝�'){
+ this.showToast('闇�姹傝〃宸茬粓姝笉鑳芥彁浜ゅ鎵�','error')
+ return;
+ }
+
+ submit({recordId:this.recordId})
+ .then(res=>{
+ if(res != "1"){
+ errMsg = ''
+ if(res.faultstring !=undefined && res.faultstring.indexOf('INVALID_SESSION_ID') != -1) {
+ errMsg = '褰撳墠缃戦〉宸茬櫥鍑猴紝璇锋偍閲嶆柊鐧诲綍鍚庡埛鏂拌缃戦〉锛�';
+ } else {
+ errMsg = res.faultstring;
+ }
+ errMsg && this.showToast(errMsg,'error')
+ }
+ console.log("submit---->>>",res)
+ })
+ .finally(()=>{
+ window.location.reload();
+ })
+ })
+ .catch(e=>{console.log(e)})
+ .finally(()=>{
+ this.dispatchEvent(new CloseActionScreenEvent());
+ })
+ }
+
+
+ showToast(msg,type) {
+ const event = new ShowToastEvent({
+ title: '',
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+
+
+ updateRecordView(recordId) {
+ updateRecord({fields: { Id: recordId }});
+ }
+
+ submit(){
+ updateForSubmitButton({
+ recordId: this.recordId
+ }).then(result=>{
+ this.updateRecordView(this.recordId);
+ this.showToast("鎻愪氦鎴愬姛","success");
+ this.dispatchEvent(new CloseActionScreenEvent());
+ });
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSISubmit/lexSISubmit.js-meta.xml b/force-app/main/default/lwc/lexSISubmit/lexSISubmit.js-meta.xml
new file mode 100644
index 0000000..329e839
--- /dev/null
+++ b/force-app/main/default/lwc/lexSISubmit/lexSISubmit.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSearchProduct/lexSearchProduct.css b/force-app/main/default/lwc/lexSearchProduct/lexSearchProduct.css
new file mode 100644
index 0000000..66e75cb
--- /dev/null
+++ b/force-app/main/default/lwc/lexSearchProduct/lexSearchProduct.css
@@ -0,0 +1,6 @@
+/*iframelike {
+ color: #fff;
+ height: 300px;
+ overflow-y: auto;
+ overflow-x: hidden;
+ }*/
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSearchProduct/lexSearchProduct.html b/force-app/main/default/lwc/lexSearchProduct/lexSearchProduct.html
new file mode 100644
index 0000000..2007e47
--- /dev/null
+++ b/force-app/main/default/lwc/lexSearchProduct/lexSearchProduct.html
@@ -0,0 +1,76 @@
+<template>
+<!-- <apex:page id="Page" standardController="Product2" extensions="SearchProductController" sidebar="false" showHeader="false" > -->
+
+
+
+<!-- <apex:outputPanel id="all">
+ <apex:outputPanel id="message1">
+ <apex:messages styleClass="editListError"/>
+ </apex:outputPanel> -->
+ <form id="mainForm">
+ <h2 class="slds-text-heading_medium slds-m-bottom_medium">
+ {Label.Product_Search}
+ </h2>
+ <lightning-input type="hidden" ></lightning-input>
+ <table width="900" border="0" style="background-color:#DCDCDC">
+ <colgroup>
+ <col width="12" />
+ <col width="20" />
+ <col width="20" />
+ <col width="200" />
+ <col width="20" />
+ <col width="428" />
+ </colgroup>
+ <tr>
+ <td> </td>
+ <th>{Label.Search_Condition}</th>
+ <td> </td>
+ <th>{Label.Asset_No}</th>
+ <td> </td>
+ <td> </td>
+ </tr>
+ <tr>
+ <td> </td>
+ <td> </td>
+ <td> </td>
+ <td><lightning-input onchange={getInput} >
+ </lightning-input></td>
+ <td><lightning-button onclick={serContact} variant="brand-outline" ></lightning-button></td>
+ <td> <lightning-button onclick={setProductList}></lightning-button></td>
+ </tr>
+ <tr>
+ <td style="border-bottom: 1px solid #888;" colspan="15"> </td>
+ </tr>
+ </table>
+
+
+
+
+
+
+ <table width="900" border="0" style="background-color:#DCDCDC">
+ <tr>
+ <td width="12"> </td>
+ <th valign="top">{Label.Search_Result}</th>
+ <td width="20"> </td>
+ <td>
+ <table border="0">
+ <tr>
+ <td>
+ <div id="iframelike" style="width:800px">
+ <lightning-datatable
+ key-field="id"
+ data={data}
+ columns={columns}>
+ </lightning-datatable>
+ </div>
+ </td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ </table>
+
+ </form>
+
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSearchProduct/lexSearchProduct.js b/force-app/main/default/lwc/lexSearchProduct/lexSearchProduct.js
new file mode 100644
index 0000000..13a010d
--- /dev/null
+++ b/force-app/main/default/lwc/lexSearchProduct/lexSearchProduct.js
@@ -0,0 +1,500 @@
+import { LightningElement, track, wire ,api} from 'lwc';
+
+import blockUIcss from '@salesforce/resourceUrl/blockUIcss';
+import jquery183minjs from '@salesforce/resourceUrl/jquery183minjs';
+import PleaseWaitDialog from '@salesforce/resourceUrl/PleaseWaitDialog';
+
+
+
+// import getCl from "@salesforce/apex/SearchProductController.getCl";
+
+
+import Product_Search from '@salesforce/label/c.Product_Search';
+import Search_Condition from '@salesforce/label/c.Search_Condition';
+import Asset_No from '@salesforce/label/c.Asset_No';
+import Search from '@salesforce/label/c.Search';
+import Add_Product from '@salesforce/label/c.Add_Product';
+import Search_Result from '@salesforce/label/c.Search_Result';
+import Selected from '@salesforce/label/c.Selected';
+import SFDA_Status from '@salesforce/label/c.SFDA_Status';
+import ListPrice_In from '@salesforce/label/c.ListPrice_In';
+import ListPrice_Out from '@salesforce/label/c.ListPrice_Out';
+import Unit from '@salesforce/label/c.Unit';
+
+const columns = [
+ { label: '閫夋嫨', fieldName: 'Selected' },
+ { label: '浜у搧鍨嬪彿', fieldName: 'Asset_No' },
+ { label: '浜у搧缂栫爜', fieldName: '{!$ObjectType.Product2.fields.OT_CODE_no_link__c.Label}' },
+ { label: '浜у搧鍚嶇О', fieldName: 'Product_Name' },
+ { label: '閫傜敤绉戝', fieldName: '{!$ObjectType.Product2.fields.suitDepartment__c.Label}' },
+ { label: '浠f浛浜у搧', fieldName: '{!$ObjectType.Product2.fields.Alternative_Products__c.Label}' },
+ { label: 'NMPA鐘舵��', fieldName: 'SFDA_Status', },
+ { label: 'ListPrice锛堝唴璐革級', fieldName: 'ListPrice_Out' },
+ { label: 'ListPrice锛堝璐革級', fieldName: 'ListPrice_In' },
+ { label: '瑙勬牸', fieldName: 'Specifications' },
+
+];
+export default class lexSearchProduct extends LightningElement {
+
+
+ Label = {
+ Product_Search,
+ Search_Condition,
+ Asset_No,
+ Search,
+ Add_Product,
+ Search_Result,
+ Selected,
+ SFDA_Status,
+ ListPrice_In,
+ ListPrice_Out,
+ Unit
+ }
+
+
+
+
+ @api recordId;
+ IsLoading=true;
+ inputData;
+ data = [];
+ columns = columns;
+
+ connectedCallback(){
+ // const data = getCl();
+ // this.data = data;
+ }
+
+
+
+ getInput(event){
+ this.inputData=event.detail.value;
+
+ }
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ // var QuoteEntryMaxLine = window.opener.QuoteEntryMaxLine;
+ setProductList() {
+ var nextLine = top.window.opener.getLastLineNoNext(window.opener.document);
+ var hasCheckedCnt = 0;
+ var checklist = j$("input[name='checklist']");
+ for(var i=0; i<checklist.length; i++){
+ if (checklist[i].checked) {
+ hasCheckedCnt++;
+ //HWAG-BLWB9F 璇环鎶ヤ环锛氬骞翠繚浜у搧鏈櫥褰曡鎻愰噾棰濇椂涓嶅彲鎶ヤ环 绮剧悽鎶�鏈� 20200224 start
+ var Intra_Trade_Gurantee_RMB = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":Intra_Trade_Gurantee_RMB__c")).val();
+ var GuranteeType = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":GuranteeType")).val();
+
+ //鏄惁鐧诲綍鎶ヤ环
+ var Estimation_Entry_Possibility =j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":Estimation_Entry_Possibility")).val();
+ //鍐呰锤鎴愭湰
+ var CostFlag = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":CostFlag")).val();
+
+ //鍐呭璐�
+ var trade = window.opener.j$(escapeVfId("Page:mainForm:block:CurrencyIsoCode")).val();
+
+ //鍐呰锤鎶ヤ环閲戦
+ var Intra_Trade_List_RMB__c = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":Intra_Trade_List_RMB__c")).text();
+ //澶栬锤鎶ヤ环閲戦
+ var Foreign_Trade_List_US__c = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":Foreign_Trade_List_US__c")).text();
+ //澶栬锤鎴愭湰
+ var Foreign_Trade_Cost_US__c = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":Foreign_Trade_Cost_US__c")).val();
+
+ //澶栬锤澶氬勾淇� 鍙栦骇鍝佷富鏁版嵁涓婄殑閲戦浠ュ強鎶ヤ环 绮剧悽鎶�鏈� wql start
+ var Intra_Trade_Gurantee_USD = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":Intra_Trade_Gurantee_USD__c")).val();
+
+ var Intra_Trade_Service_USD = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":Intra_Trade_Service_USD__c")).val();
+
+ var Maintenance_Price_Year_USD = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":Maintenance_Price_Year_USD__c")).val();
+ //澶栬锤澶氬勾淇� 鍙栦骇鍝佷富鏁版嵁涓婄殑閲戦浠ュ強鎶ヤ环 绮剧悽鎶�鏈� wql end
+
+
+ //鍐呰锤
+ if(trade == "CNY") {
+ //WLIG-BXVB6M 銆愬鎵樸�戙�愮揣鎬ャ�戝彇娑堟姤浠峰崟涓骞翠繚璁℃彁閲戦涓�0鐨勬鏌� 绮剧悽鎶�鏈� 2021/02/03 start
+ // if((GuranteeType == '甯傚満'||GuranteeType == '鏈嶅姟' ) &&Intra_Trade_Gurantee_RMB <=0){
+
+ // alert('澶氬勾淇濅骇鍝佹湭鐧诲綍璁℃彁閲戦鏃朵笉鍙姤浠�!');
+ // }else
+ //WLIG-BXVB6M 銆愬鎵樸�戙�愮揣鎬ャ�戝彇娑堟姤浠峰崟涓骞翠繚璁℃彁閲戦涓�0鐨勬鏌� 绮剧悽鎶�鏈� 2021/02/03 end
+ if(Estimation_Entry_Possibility == 'true'){
+ alert('浜у搧鏈櫥褰曟姤浠锋椂涓嶅彲鎶ヤ环!');
+ }else if(CostFlag == 'true'){
+ alert('浜у搧鐨勬垚鏈负绌烘椂涓嶅彲鎶ヤ环锛�');
+ }else if(Intra_Trade_List_RMB__c == ''||Intra_Trade_List_RMB__c<0){
+ alert('浜у搧鐨勬姤浠烽噾棰濅负绌烘椂涓嶅彲鎶ヤ环锛�');
+ }else{
+ if (nextLine < QuoteEntryMaxLine) {
+ SetProductId(nextLine, i);
+ nextLine++;
+ } else {
+ alert('Over Max Line ' + QuoteEntryMaxLine);
+ return false;
+ }
+ }
+ //澶栬锤
+ }else if(trade == "USD"){
+ //WLIG-BXVB6M 銆愬鎵樸�戙�愮揣鎬ャ�戝彇娑堟姤浠峰崟涓骞翠繚璁℃彁閲戦涓�0鐨勬鏌� 绮剧悽鎶�鏈� 2021/02/03 start
+ //澶栬锤澶氬勾淇� 澧炲姞鍒ゆ柇鍚屽唴璐� 绮剧悽鎶�鏈� wql 2021/01/21 start
+ // if((GuranteeType == '甯傚満'||GuranteeType == '鏈嶅姟' ) &&Intra_Trade_Gurantee_USD <=0){
+
+ // alert('澶氬勾淇濅骇鍝佹湭鐧诲綍璁℃彁閲戦鏃朵笉鍙姤浠�!');
+ // }else
+ //WLIG-BXVB6M 銆愬鎵樸�戙�愮揣鎬ャ�戝彇娑堟姤浠峰崟涓骞翠繚璁℃彁閲戦涓�0鐨勬鏌� 绮剧悽鎶�鏈� 2021/02/03 end
+ if(Estimation_Entry_Possibility == 'true'){
+ alert('浜у搧鏈櫥褰曟姤浠锋椂涓嶅彲鎶ヤ环!');
+ }
+ //澶栬锤澶氬勾淇� 澧炲姞鍒ゆ柇鍚屽唴璐� 绮剧悽鎶�鏈� wql 2021/01/21 end
+ else if(Foreign_Trade_List_US__c ==''||Foreign_Trade_List_US__c<0 ){
+ alert('浜у搧鐨勬姤浠烽噾棰濅负绌烘椂涓嶅彲鎶ヤ环锛�');
+ }else if(Foreign_Trade_Cost_US__c == ''||Foreign_Trade_Cost_US__c<0){
+ alert('浜у搧鐨勬垚鏈负绌烘椂涓嶅彲鎶ヤ环锛�');
+ }else{
+ if (nextLine < QuoteEntryMaxLine) {
+ SetProductId(nextLine, i);
+ nextLine++;
+ } else {
+ alert('Over Max Line ' + QuoteEntryMaxLine);
+ return false;
+ }
+ }
+ }
+
+
+ //HWAG-BLWB9F 璇环鎶ヤ环锛氬骞翠繚浜у搧鏈櫥褰曡鎻愰噾棰濇椂涓嶅彲鎶ヤ环 绮剧悽鎶�鏈� 20200224 end
+ }
+ }
+ if (hasCheckedCnt == 0) {
+ alert(top.window.opener.Error_Message34);
+ return false;
+ }
+ top.window.opener.calPriceAll();
+ top.window.close();
+ }
+ setProductOne(lineno, i) {
+ //lineno = getLastLineNo();
+ //HWAG-BLWB9F 璇环鎶ヤ环锛氬骞翠繚浜у搧鏈櫥褰曡鎻愰噾棰濇椂涓嶅彲鎶ヤ环 绮剧悽鎶�鏈� 20200224 start
+ var Intra_Trade_Gurantee_RMB = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":Intra_Trade_Gurantee_RMB__c")).val();
+ var GuranteeType = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":GuranteeType")).val();
+ //鏄惁鐧诲綍鎶ヤ环
+ var Estimation_Entry_Possibility =j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":Estimation_Entry_Possibility")).val();
+ //鍐呰锤鎴愭湰
+ var CostFlag = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":CostFlag")).val();
+ //鍐呭璐�
+ var trade = window.opener.j$(escapeVfId("Page:mainForm:block:CurrencyIsoCode")).val();
+
+ //鍐呰锤鎶ヤ环閲戦
+ var Intra_Trade_List_RMB__c = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":Intra_Trade_List_RMB__c")).text();
+ //澶栬锤鎶ヤ环閲戦
+ var Foreign_Trade_List_US__c = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":Foreign_Trade_List_US__c")).text();
+ //澶栬锤鎴愭湰
+ var Foreign_Trade_Cost_US__c = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":Foreign_Trade_Cost_US__c")).val();
+ //澶栬锤澶氬勾淇� 鍙栦骇鍝佷富鏁版嵁涓婄殑閲戦浠ュ強鎶ヤ环 绮剧悽鎶�鏈� wql start
+ var Intra_Trade_Gurantee_USD = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":Intra_Trade_Gurantee_USD__c")).val();
+
+ var Intra_Trade_Service_USD = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":Intra_Trade_Service_USD__c")).val();
+
+ var Maintenance_Price_Year_USD = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":Maintenance_Price_Year_USD__c")).val();
+ //澶栬锤澶氬勾淇� 鍙栦骇鍝佷富鏁版嵁涓婄殑閲戦浠ュ強鎶ヤ环 绮剧悽鎶�鏈� wql end
+
+ //鍐呰锤
+ if(trade == "CNY") {
+ //WLIG-BXVB6M 銆愬鎵樸�戙�愮揣鎬ャ�戝彇娑堟姤浠峰崟涓骞翠繚璁℃彁閲戦涓�0鐨勬鏌� 绮剧悽鎶�鏈� 2021/02/03 start
+ // if((GuranteeType == '甯傚満'||GuranteeType == '鏈嶅姟' ) &&Intra_Trade_Gurantee_RMB <=0){
+
+ // alert('澶氬勾淇濅骇鍝佹湭鐧诲綍璁℃彁閲戦鏃朵笉鍙姤浠�!');
+ // }else
+ //WLIG-BXVB6M 銆愬鎵樸�戙�愮揣鎬ャ�戝彇娑堟姤浠峰崟涓骞翠繚璁℃彁閲戦涓�0鐨勬鏌� 绮剧悽鎶�鏈� 2021/02/03 end
+ if(Estimation_Entry_Possibility == 'true'){
+ alert('浜у搧鏈櫥褰曟姤浠锋椂涓嶅彲鎶ヤ环!');
+ }else if(CostFlag == 'true'){
+ alert('浜у搧鐨勬垚鏈负绌烘椂涓嶅彲鎶ヤ环锛�');
+ }else if(Intra_Trade_List_RMB__c == ''||Intra_Trade_List_RMB__c<0){
+ alert('浜у搧鐨勬姤浠烽噾棰濅负绌烘椂涓嶅彲鎶ヤ环锛�');
+ }else{
+ SetProductId(lineno, i);
+ }
+ //澶栬锤
+ }else if(trade == "USD"){
+ //澶栬锤澶氬勾淇� 澧炲姞鍒ゆ柇鍚屽唴璐� 绮剧悽鎶�鏈� wql 2021/01/21 start
+ //WLIG-BXVB6M 銆愬鎵樸�戙�愮揣鎬ャ�戝彇娑堟姤浠峰崟涓骞翠繚璁℃彁閲戦涓�0鐨勬鏌� 绮剧悽鎶�鏈� 2021/02/03 start
+ // if((GuranteeType == '甯傚満'||GuranteeType == '鏈嶅姟' ) &&Intra_Trade_Gurantee_USD <=0){
+
+ // alert('澶氬勾淇濅骇鍝佹湭鐧诲綍璁℃彁閲戦鏃朵笉鍙姤浠�!');
+ // }else
+ //WLIG-BXVB6M 銆愬鎵樸�戙�愮揣鎬ャ�戝彇娑堟姤浠峰崟涓骞翠繚璁℃彁閲戦涓�0鐨勬鏌� 绮剧悽鎶�鏈� 2021/02/03 end
+ if(Estimation_Entry_Possibility == 'true'){
+ alert('浜у搧鏈櫥褰曟姤浠锋椂涓嶅彲鎶ヤ环!');
+ }
+ //澶栬锤澶氬勾淇� 澧炲姞鍒ゆ柇鍚屽唴璐� 绮剧悽鎶�鏈� wql 2021/01/21 end
+ else if(Foreign_Trade_List_US__c ==''||Foreign_Trade_List_US__c<0 ){
+ alert('浜у搧鐨勬姤浠烽噾棰濅负绌烘椂涓嶅彲鎶ヤ环锛�');
+ }else if(Foreign_Trade_Cost_US__c == ''||Foreign_Trade_Cost_US__c<0){
+ alert('浜у搧鐨勬垚鏈负绌烘椂涓嶅彲鎶ヤ环锛�');
+ }else{
+ SetProductId(lineno, i);
+ }
+ }
+ //HWAG-BLWB9F 璇环鎶ヤ环锛氬骞翠繚浜у搧鏈櫥褰曡鎻愰噾棰濇椂涓嶅彲鎶ヤ环 绮剧悽鎶�鏈� 20200224 end
+ top.window.opener.calPriceAll();
+ top.window.close();
+ }
+ SetProductId(lineno, i) {
+ var Asset_Model_No__c = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":Asset_Model_No__c")).text();
+ var Product2Id = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":Product_Id")).val();
+ var SFDA_Status__c = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":SFDA_Status__c")).text();
+ var SFDA_Status = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":SFDA_Status")).val();
+
+ //SFDC鍋滄棰勮锛堥璁℃秷鑰楀埌鏈熸棩锛� lt 20210929 add start
+ var Estimated_ConsumptionDueDate__c = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":Estimated_ConsumptionDueDate")).text();
+ //SFDC鍋滄棰勮锛堥璁℃秷鑰楀埌鏈熸棩锛� lt 20210929 add end
+
+ var name = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":Name")).text();
+ var Intra_Trade_List_RMB__c = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":Intra_Trade_List_RMB__c")).text();
+ var Foreign_Trade_List_US__c = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":Foreign_Trade_List_US__c")).text();
+ var NameCode = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":NameCode")).val();
+ var Sales_Possibility = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":Sales_Possibility")).val();
+ var Intra_Trade_Cost_RMB__c = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":Intra_Trade_Cost_RMB__c")).val();
+ var Foreign_Trade_Cost_US__c = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":Foreign_Trade_Cost_US__c")).val();
+ var Packing_list_manual__c = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":Specifications")).value();
+ var Bsscategory = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":Bsscategory")).val();
+ var PricebookEntryId = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":PricebookEntryId")).val();
+ var trade = window.opener.j$(escapeVfId("Page:mainForm:block:CurrencyIsoCode")).val();
+ var StorageStatus__c = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":StorageStatus__c")).val();
+ //澶栬锤澶氬勾淇� 鍙栦骇鍝佷富鏁版嵁涓婄殑閲戦浠ュ強鎶ヤ环 绮剧悽鎶�鏈� wql start
+ var Intra_Trade_Gurantee_USD = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":Intra_Trade_Gurantee_USD__c")).val();
+
+ var Intra_Trade_Service_USD = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":Intra_Trade_Service_USD__c")).val();
+
+ var Maintenance_Price_Year_USD = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":Maintenance_Price_Year_USD__c")).val();
+ //澶栬锤澶氬勾淇� 鍙栦骇鍝佷富鏁版嵁涓婄殑閲戦浠ュ強鎶ヤ环 绮剧悽鎶�鏈� wql end
+ // Packing_list_manual__c = parseFloat(Packing_list_manual__c).toFixed(1);
+
+ //搴撳瓨鐘舵��
+ window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":Storagestatustext")).text(StorageStatus__c);
+
+ window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":Storagestatus")).val(StorageStatus__c);
+
+ //No
+ window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":indexNo")).text(parseInt(lineno)+1);
+
+ //瑁藉搧鍨嬬暘
+ window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":Assert")).val(Asset_Model_No__c);
+
+ //Status__c
+ window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":Status__c")).text(SFDA_Status__c);
+
+ //SFDC鍋滄棰勮锛堥璁℃秷鑰楀埌鏈熸棩锛� lt 20210929 add start
+ window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":Estimated_ConsumptionDueDate")).text(Estimated_ConsumptionDueDate__c);
+ window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":Estimated_ConsumptionDueDate1")).text(Estimated_ConsumptionDueDate__c);
+ //SFDC鍋滄棰勮锛堥璁℃秷鑰楀埌鏈熸棩锛� lt 20210929 add end
+
+ //SFDA hidden
+ window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":SFDA")).val(SFDA_Status);
+
+ window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":Specifications")).val(Packing_list_manual__c);
+
+ //鍝佺洰鍚�
+ var baseUrl = window.opener.j$(escapeVfId("Page:mainForm:block:baseUrl")).val();
+ window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":Nametext1")).attr("href", baseUrl + "/" + Product2Id);
+ window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":Nametext1")).text(name);
+ //鍝佺洰鍚峢idden
+ window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":Name__c")).val(name);
+
+ //ListPrice
+ var ListPrice = 0;
+ var Cost_c = 0;
+ //澶氬勾淇濅慨 start
+ var Extend_new_product_gurantee = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":Extend_new_product_gurantee__c")).val();
+
+ var Extend_new_product_gurantee_MD = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":Extend_new_product_gurantee_MD__c")).val();
+
+ var GuranteeType = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":GuranteeType")).val();
+
+ var Entend_gurantee_period_all = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":Entend_gurantee_period_all__c")).val();
+ var Intra_Trade_Gurantee_RMB = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":Intra_Trade_Gurantee_RMB__c")).val();
+
+ var Intra_Trade_Service_RMB = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":Intra_Trade_Service_RMB__c")).val();
+
+ var Maintenance_Price_Year = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":Maintenance_Price_Year__c")).val();
+ // 渚涘簲鍟嗗悕绉�
+ var VenderName = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":VenderName")).val();
+ //涓嶅彲鍙栨秷澶氬勾淇�
+ var CanNotCancelledGurantee = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":CanNotCancelledGurantee")).val();
+
+ //闃胯タ璧涘
+ var Is_DangerousChemicals = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":Is_DangerousChemicals")).val();
+
+ var ProductGuranteePrice = 0;
+ var ProductServicePrice = 0;
+ var productMaintenance_Price_Year = 0;
+ //澶氬勾淇濅慨 end
+ if(trade == "CNY") {
+ //澶氬勾淇濅慨 start
+ ProductGuranteePrice = Intra_Trade_Gurantee_RMB;
+ ProductServicePrice = Intra_Trade_Service_RMB;
+ productMaintenance_Price_Year = Maintenance_Price_Year;
+ //澶氬勾淇濅慨 end
+ ListPrice = Intra_Trade_List_RMB__c;
+ Cost_c = Intra_Trade_Cost_RMB__c;
+
+ } else if(trade == "USD"){
+ //澶氬勾淇濅慨 start
+ //澶栬锤澶氬勾淇� 鍙栦骇鍝佷富鏁版嵁涓婄殑閲戦 浠ュ強 鎶ヤ环 绮剧悽鎶�鏈� wql start
+ ProductGuranteePrice = Intra_Trade_Gurantee_USD;
+ ProductServicePrice = Intra_Trade_Service_USD;
+ productMaintenance_Price_Year = Maintenance_Price_Year_USD;
+ //澶栬锤澶氬勾淇� 鍙栦骇鍝佷富鏁版嵁涓婄殑閲戦 浠ュ強 鎶ヤ环 绮剧悽鎶�鏈� wql end
+ //澶氬勾淇濅慨 end
+ ListPrice = Foreign_Trade_List_US__c;
+ Cost_c = Foreign_Trade_Cost_US__c;
+ }
+ Cost_c = top.window.opener.toNum(Cost_c);
+ ListPrice = top.window.opener.toNum(ListPrice);
+ window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":ListPricetext")).text(top.window.opener.toNumComma(ListPrice));
+ //ListPrice hidden
+ window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":ListPrice")).val(ListPrice);
+
+ //鏁伴噺
+ window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":Quantity")).val(1);
+
+ //渚℃牸
+ window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":UnitPrice")).val(top.window.opener.toNumComma(ListPrice));
+
+ //瑙勬牸
+ window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":Specifications")).text(Packing_list_manual__c);
+
+ //灏忚▓
+ window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":TotalPrice")).text(top.window.opener.toNumComma(ListPrice));
+
+ //Subtotal__c hidden
+ window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":Subtotal__c")).val(ListPrice);
+
+ //NameCode hidden
+ window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":NameCode")).val(NameCode);
+
+ //Specifications hidden
+ window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":Product_Specifications")).val(Packing_list_manual__c);
+
+ //Product_Name hidden
+ window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":Product_Name")).val(name);
+
+ //SFDC鍋滄棰勮锛堥璁℃秷鑰楀埌鏈熸棩锛� lt 20210929 add start
+ //浜у搧 棰勮娑堣�楁棩
+ window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":Estimated_ConsumptionDueDate")).val(Estimated_ConsumptionDueDate__c);
+ window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":Estimated_ConsumptionDueDate1")).val(Estimated_ConsumptionDueDate__c);
+ MarkRedFLG(lineno,Estimated_ConsumptionDueDate__c);
+ //SFDC鍋滄棰勮锛堥璁℃秷鑰楀埌鏈熸棩锛� lt 20210929 add end
+
+ //Product_SFDA hidden
+ window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":Product_SFDA")).val(SFDA_Status__c);
+
+ //Sales_Possibility hidden
+ window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":Sales_Possibility")).val(Sales_Possibility);
+
+ //Product_ListPrice hidden
+ window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":Product_ListPrice")).val(ListPrice);
+
+ //Product_Cost hidden
+ window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":Product_Cost")).val(Cost_c);
+
+ //Cost hidden
+ window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":Cost")).val(Cost_c);
+
+ //CostSubTotal hidden Cost_c * Quantity;
+ window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":CostSubTotal")).val(Cost_c);
+
+ //Bsscategory hidden
+ window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":Bsscategory")).val(Bsscategory);
+
+ //Product_Id hidden
+ window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":Product_Id")).val(Product2Id);
+
+ //PricebookEntryId hidden
+ window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":PricebookEntryId")).val(PricebookEntryId);
+
+ //lineNo hidden
+ window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":lineNo")).val(parseInt(lineno));
+ // 澶氬勾淇濅慨 2019/07/25 start
+ window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno
+ +":ProductEntend_gurantee_period_all__c")).val(Entend_gurantee_period_all);
+
+ // 缁翠慨鍚堝悓鎶ヤ环
+ window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno
+ +":Maintenance_Price_Year__c")).val(productMaintenance_Price_Year);
+ // 鏈�鏂扮淮淇悎鍚屾姤浠�
+ window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno
+ +":latestMaintenance_Price_Year")).val(productMaintenance_Price_Year);
+ window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno
+ +":GuranteeType")).val(GuranteeType);
+ // 渚涘簲鍟嗗悕绉�
+ window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno
+ +":VenderName")).text(VenderName);
+ window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno
+ +":VenderName__c")).val(VenderName);
+ //涓嶅彲鍙栨秷澶氬勾淇�
+
+ window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno
+ +":CanNotCancelledGurantee__c")).val(CanNotCancelledGurantee);
+
+ //闃胯タ璧涘
+
+ window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno
+ +":Is_DangerousChemicals__c")).val(Is_DangerousChemicals);
+
+ if(VenderName != 'OSH'&&VenderName != ''){
+ window.opener.j$(escapeVfId('Page:mainForm:block:lists:'+lineno+':UnitPrice')).attr('disabled','disabled');
+ }
+ window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno
+ + ":ProductGuranteePrice__c")).val(ProductGuranteePrice);
+ window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno
+ + ":productServicePrice__c")).val(ProductServicePrice);
+ // 澶氬勾淇濅慨 2019/07/25 end
+ }
+
+ // //SFDC鍋滄棰勮 lt 20211008 start
+ MarkRedFLG(lineno,Estimated_ConsumptionDueDate__c){
+
+ //鑾峰彇褰撳墠鏃ユ湡(currentdate)
+ var date1 = new Date();
+ var seperator = "/";
+ var year = date1.getFullYear();
+ var month = date1.getMonth() + 1;
+ var day = date1.getDate();
+ if (month >= 1 && month <= 9) {
+ month = "0" + month;
+ }
+ if (day >= 0 && day <= 9) {
+ day = "0" + day;
+ }
+ var currentdate = year + seperator + month + seperator + day;
+
+ //棰勮娑堣�楀埌鏈熸棩 - 褰撳墠鏃� 鐩稿樊澶╂暟(difDate)
+ var ndate = new Date(currentdate);
+ var nowDate = ndate.getTime();
+ var edate = new Date(Estimated_ConsumptionDueDate__c);
+ var endDate = edate.getTime();
+ var difDate = (endDate - nowDate)/((1000 * 60 * 60 * 24));
+
+ //鍒ゆ柇
+ if(difDate < 90){
+ window.opener.document.getElementById('Page:mainForm:block:lists:' + lineno + ':Estimated_ConsumptionDueDate').style.color = "red";
+ }
+ }
+ //SFDC鍋滄棰勮 lt 20211008 end
+
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSearchProduct/lexSearchProduct.js-meta.xml b/force-app/main/default/lwc/lexSearchProduct/lexSearchProduct.js-meta.xml
new file mode 100644
index 0000000..5308418
--- /dev/null
+++ b/force-app/main/default/lwc/lexSearchProduct/lexSearchProduct.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexSearchProduct">
+ <apiVersion>51.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSearchProductCs/lexSearchProductCs.css b/force-app/main/default/lwc/lexSearchProductCs/lexSearchProductCs.css
new file mode 100644
index 0000000..2815dd2
--- /dev/null
+++ b/force-app/main/default/lwc/lexSearchProductCs/lexSearchProductCs.css
@@ -0,0 +1,6 @@
+/*#iframelike {
+ color: #fff;
+ height: 300px;
+ overflow-y: auto;
+ overflow-x: hidden;
+}*/
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSearchProductCs/lexSearchProductCs.html b/force-app/main/default/lwc/lexSearchProductCs/lexSearchProductCs.html
new file mode 100644
index 0000000..5cd6879
--- /dev/null
+++ b/force-app/main/default/lwc/lexSearchProductCs/lexSearchProductCs.html
@@ -0,0 +1,70 @@
+<template>
+ <form id="mainForm">
+
+
+ <h2 class="slds-text-heading_medium slds-m-bottom_medium">
+ {Label.Product_Search}
+ </h2>
+ <lightning-input type="hidden" id="Trade" > </lightning-input>
+ <table width="1000" border="0" style="background-color:#DCDCDC">
+ <colgroup>
+ <col width="12" />
+ <col width="20" />
+ <col width="20" />
+ <col width="200" />
+ <col width="20" />
+ <col width="428" />
+ </colgroup>
+ <tr>
+ <td> </td>
+ <th>{Label.Search_Condition}</th>
+ <td> </td>
+ <th>{Label.Asset_No}</th>
+ <td> </td>
+ <td> </td>
+ </tr>
+ <tr>
+ <td> </td>
+ <td> </td>
+ <td> </td>
+ <td><lightning-input id="searchName" onchange={getInputData} >
+ </lightning-input></td>
+
+ <td><lightning-button variant="brand-outline" value={Label.Search} onclick={serContact} ></lightning-button></td>
+ <td> <lightning-button variant="brand-outline" value={Label.Add_Product} onclick={setProductList}></lightning-button></td>
+ </tr>
+ <tr>
+ <td style="border-bottom: 1px solid #888;" colspan="15"> </td>
+ </tr>
+ </table>
+ <table width="1000" border="0" style="background-color:#DCDCDC">
+ <tr>
+ <td width="12"> </td>
+ <th valign="top">{Label.Search_Result}</th>
+ <td width="20"> </td>
+ <td>
+ <table border="0">
+ <tr>
+ <td>
+ <div id="iframelike" style="width:900px">
+
+
+
+ <lightning-datatable
+ key-field="id"
+ data={data}
+ columns={columns} >
+ </lightning-datatable>
+
+
+ </div>
+ </td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ </table>
+
+ </form>
+ <!-- </apex:outputPanel> -->
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSearchProductCs/lexSearchProductCs.js b/force-app/main/default/lwc/lexSearchProductCs/lexSearchProductCs.js
new file mode 100644
index 0000000..61c7e05
--- /dev/null
+++ b/force-app/main/default/lwc/lexSearchProductCs/lexSearchProductCs.js
@@ -0,0 +1,279 @@
+import { LightningElement, track, wire,api } from 'lwc';
+import { loadStyle, loadScript } from 'lightning/platformResourceLoader'
+import blockUIcss from '@salesforce/resourceUrl/blockUIcss';
+import jquery183minjs from '@salesforce/resourceUrl/jquery183minjs';
+import PleaseWaitDialog from '@salesforce/resourceUrl/PleaseWaitDialog';
+
+
+
+import getData from'@salesforce/apex/LexSearchProductCsController.getData';
+
+import Product_Search from '@salesforce/label/c.Product_Search';
+import Search_Condition from '@salesforce/label/c.Search_Condition';
+import Asset_No from '@salesforce/label/c.Asset_No';
+import Search from '@salesforce/label/c.Search';
+import Add_Product from '@salesforce/label/c.Add_Product';
+import Search_Result from '@salesforce/label/c.Search_Result';
+import Selected from '@salesforce/label/c.Selected';
+import SFDA_Status from '@salesforce/label/c.SFDA_Status';
+import ListPrice_In from '@salesforce/label/c.ListPrice_In';
+import ListPrice_Out from '@salesforce/label/c.ListPrice_Out';
+import Unit from '@salesforce/label/c.Unit';
+
+
+const columns = [
+ { label: '閫夋嫨', fieldName: 'Selected' },
+ { label: '浜у搧鍨嬪彿', fieldName: 'Asset_Model_No__c' },
+ { label: '浜у搧缂栫爜', fieldName: 'OT_CODE_no_link__c' },
+ { label: '浜у搧鍚嶇О', fieldName: 'Name' },
+ { label: '浠f浛浜у搧', fieldName: 'Alternative_Products__c' },
+ { label: 'NMPA鐘舵��', fieldName: 'SFDA_Status__c' },
+ { label: '璁惧/鑰楁潗鍖哄垎', fieldName: 'Serial_Lot_No__c' },
+ { label: '澶囧搧绠$悊绫诲埆', fieldName: 'Asset_loaner_category__c' },
+ { label: 'ListPrice锛堝唴璐革級', fieldName: 'Intra_Trade_List_RMB__c' },
+ { label: 'ListPrice锛堝璐革級', fieldName: 'Foreign_Trade_List_US__c' },
+ { label: '鍗曚綅', fieldName: 'Qty_Unit__c' },
+ ];
+
+export default class lexSearchProductCs extends LightningElement {
+
+ Label = {
+ Product_Search,
+ Search_Condition,
+ Asset_No,
+ Search,
+ Add_Product,
+ Search_Result,
+ Selected,
+ SFDA_Status,
+ ListPrice_In,
+ ListPrice_Out,
+ Unit
+ }
+
+ @api recordId;
+ dataList=[];
+ IsLoading=true;
+ columns = columns;
+ inputData;
+ ProductLine;
+
+
+ // @wire(CurrentPageReference)
+ // getStateParameters(currentPageReference){
+ // if(currentPageReference) {
+ // const urlValue = currentPageReference.state.recordId;
+ // if(urlValue) {
+ // let str = `${urlValue}`;
+ // this.recordId = str;
+ // }
+ // }
+ // }
+
+
+ async connectedCallback(){
+
+
+ console.log('杩涘叆callback');
+ // var vlData=new Array();
+ // vlData = await getData();
+ // if(vlData.size>0){
+ // this.data=vlData;
+ // console.log('keyi')
+ // // console.log(vlData[0]);
+ // }
+ // else{
+ // console.log('getCs鏂规硶杩斿洖闀垮害涓�0');
+ // }
+
+
+ }
+
+
+
+
+ async serContact(event){
+ console.log('into serContact')
+ var search = this.inputData;
+ console.log(search);
+ var trade='CNY';
+
+ var vlData=new Array();
+ console.log('vlData');
+ await getData({SearchName:search,trade:trade}).then(result=>{
+ this.IsLoading=false;
+ this.ProductLine=result;
+ console.log(result);
+ console.log(this.ProductLine[0]);
+ console.log(this.ProductLine[0].pbe.Product2.Asset_Model_No__c);
+ this.DataInColumn();
+ }).catch(error=>{
+ console.log(error);
+ })
+
+
+ }
+
+
+
+ getInputData(event){
+ this.inputData=event.detail.value;
+
+ }
+
+ DataInColumn(){
+ console.log('in DataInColumn')
+ for(var i=0;i<this.ProductLine.length-1;i++){
+ this.dataList[i]= [this.ProductLine[i].pbe.Product2];
+ console.log(this.dataList[i]);
+ }
+
+
+ }
+
+
+
+ // setProductList(event) {
+ // var nextLine = top.window.opener.getLastLineNoNext(window.opener.document);
+ // var hasCheckedCnt = 0;
+ // var checklist = j$("input[name='checklist']");
+ // for(var i=0; i<checklist.length; i++){
+ // if (checklist[i].checked) {
+ // hasCheckedCnt++;
+ // if (nextLine < 150) {
+ // console.log('杩涘叆setProductList');
+ // SetProductId(nextLine, i);
+ // nextLine++;
+ // }
+ // }
+ // }
+ // if (hasCheckedCnt == 0) {
+ // alert(top.window.opener.Error_Message34);
+ // console.log('hasCheckedCnt==0');
+ // }
+ // top.window.opener.calPriceAll(window.opener.document);
+ // top.window.close();
+ // }
+ // setProductOne(lineno, i) {
+ // //lineno = getLastLineNo();
+ // SetProductId(lineno, i);
+ // top.window.opener.calPriceAll(window.opener.document);
+ // top.window.close();
+ // }
+ // SetProductId(lineno, i) {
+ // var Asset_Model_No__c = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":Asset_Model_No__c")).text();
+ // var Product2Id = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":Product_Id")).val();
+ // var SFDA_Status__c = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":SFDA_Status__c")).text();
+ // var Serial_Lot_No__c = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":Serial_Lot_No__c")).text();
+ // var Asset_loaner_category__c = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":Asset_loaner_category__c")).text();
+ // var name = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":Name")).text();
+ // var Intra_Trade_List_RMB__c = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":Intra_Trade_List_RMB__c")).text();
+ // var Foreign_Trade_List_US__c = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":Foreign_Trade_List_US__c")).text();
+ // var NameCode = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":NameCode")).val();
+ // var Sales_Possibility = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":Sales_Possibility")).val();
+ // var Intra_Trade_Cost_RMB__c = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":Intra_Trade_Cost_RMB__c")).val();
+ // var Foreign_Trade_Cost_US__c = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":Foreign_Trade_Cost_US__c")).val();
+ // var Bsscategory = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":Bsscategory")).val();
+ // var PricebookEntryId = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":PricebookEntryId")).val();
+ // var trade = window.opener.j$(escapeVfId("Page:mainForm:block:CurrencyIsoCode")).val();
+ // var Packing_list_manual__c = j$(escapeVfId("Page:mainForm:idSearchSetProduct:idRezultVisitor:"+ i +":Packing_list_manual__c")).val();
+ // // 鍚屾⒈鏁板繀銇氥亗銈嬶紵
+ // if (Packing_list_manual__c == null || Packing_list_manual__c <= 0) {
+ // Packing_list_manual__c = 1;
+ // }
+
+ // //No
+ // window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":indexNo")).text(parseInt(lineno)+1);
+
+ // //瑁藉搧鍨嬬暘
+ // window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":Assert")).val(Asset_Model_No__c);
+
+ // //Serial/Lot鍖哄垎
+ // window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":Serial_Lot")).text(Serial_Lot_No__c);
+
+ // //璧勪骇/鑰楁潗
+ // window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":Asset_loaner_category")).text(Asset_loaner_category__c);
+
+ // //Status__c
+ // window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":Status__c")).text(SFDA_Status__c);
+ // //SFDA hidden
+ // window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":SFDA")).val(SFDA_Status__c);
+
+ // //鍝佺洰鍚�
+ // var baseUrl = window.opener.j$(escapeVfId("Page:mainForm:block:baseUrl")).val();
+ // window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":Nametext1")).attr("href", baseUrl + "/" + Product2Id);
+ // window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":Nametext1")).text(name);
+ // //鍝佺洰鍚峢idden
+ // window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":Name__c")).val(name);
+
+ // //鍚屾崋鏁�
+ // window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":Packing_list_manual")).text(Packing_list_manual__c);
+
+ // //ListPrice
+ // var ListPrice = 0;
+ // var Cost_c = 0;
+ // if(trade == "CNY") {
+ // ListPrice = Intra_Trade_List_RMB__c;
+ // Cost_c = Intra_Trade_Cost_RMB__c;
+ // } else if(trade == "USD"){
+ // ListPrice = Foreign_Trade_List_US__c;
+ // Cost_c = Foreign_Trade_Cost_US__c;
+ // }
+ // Cost_c = top.window.opener.toNum(Cost_c);
+ // ListPrice = top.window.opener.toNum(ListPrice);
+ // window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":ListPricetext")).text(top.window.opener.toNumComma(ListPrice));
+ // //ListPrice hidden
+ // window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":ListPrice")).val(ListPrice);
+
+ // //鏁伴噺
+ // window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":Quantity")).val(1);
+
+ // //渚℃牸
+ // window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":UnitPrice")).val(top.window.opener.toNumComma(ListPrice));
+
+ // //鍗樹綅
+ // window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":Qty")).text();
+
+ // window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":ListPriceTotalText")).text(top.window.opener.toNumComma(ListPrice));
+
+ // //ListPriceTotal hidden
+ // window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":ListPriceTotal")).val(ListPrice);
+
+ // //NameCode hidden
+ // window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":NameCode")).val(NameCode);
+
+ // //Product_Name hidden
+ // window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":Product_Name")).val(name);
+
+ // //Product_SFDA hidden
+ // window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":Product_SFDA")).val(SFDA_Status__c);
+
+ // //Sales_Possibility hidden
+ // window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":Sales_Possibility")).val(Sales_Possibility);
+
+ // //Product_ListPrice hidden
+ // window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":Product_ListPrice")).val(ListPrice);
+
+ // //Product_Cost hidden
+ // window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":Product_Cost")).val(Cost_c);
+
+ // //Cost hidden
+ // window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":Cost")).val(Cost_c);
+
+ // //CostSubTotal hidden Cost_c * Quantity;
+ // window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":CostSubTotal")).val(Cost_c);
+
+ // //Bsscategory hidden
+ // window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":Bsscategory")).val(Bsscategory);
+
+ // //Product_Id hidden
+ // window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":Product_Id")).val(Product2Id);
+
+ // //PricebookEntryId hidden
+ // window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":PricebookEntryId")).val(PricebookEntryId);
+
+ // //lineNo hidden
+ // window.opener.j$(escapeVfId("Page:mainForm:block:lists:"+ lineno +":lineNo")).val(parseInt(lineno));
+ // }
+
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSearchProductCs/lexSearchProductCs.js-meta.xml b/force-app/main/default/lwc/lexSearchProductCs/lexSearchProductCs.js-meta.xml
new file mode 100644
index 0000000..96e6590
--- /dev/null
+++ b/force-app/main/default/lwc/lexSearchProductCs/lexSearchProductCs.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexSearchProductCs">
+ <apiVersion>51.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSelectAssetsMaintenance/lexSelectAssetsMaintenance.html b/force-app/main/default/lwc/lexSelectAssetsMaintenance/lexSelectAssetsMaintenance.html
new file mode 100644
index 0000000..d044dbb
--- /dev/null
+++ b/force-app/main/default/lwc/lexSelectAssetsMaintenance/lexSelectAssetsMaintenance.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="exampleHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSelectAssetsMaintenance/lexSelectAssetsMaintenance.js b/force-app/main/default/lwc/lexSelectAssetsMaintenance/lexSelectAssetsMaintenance.js
new file mode 100644
index 0000000..21cb5c4
--- /dev/null
+++ b/force-app/main/default/lwc/lexSelectAssetsMaintenance/lexSelectAssetsMaintenance.js
@@ -0,0 +1,53 @@
+import {
+ LightningElement,
+ wire,
+ api
+} from 'lwc';
+import {
+ CurrentPageReference
+} from "lightning/navigation";
+import {
+ CloseActionScreenEvent
+} from 'lightning/actions';
+import init from '@salesforce/apex/otherButtonMaintenanceContractCtl.init';
+
+export default class LexSelectAssetsMaintenance extends LightningElement {
+ @api recordId;
+ str;
+ IsLoading = true;
+ Id;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback() {
+ console.log(this.recordId);
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result);
+ if (result != null) {
+ this.IsLoading = false;
+ this.Id = result.Id;
+
+ this.SelectAssets();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ }).catch(error => {
+ console.log(error);
+ })
+ }
+
+ // 銈点兗銉撱偣濂戠磩瀵捐薄瑁藉搧鐧婚尣
+ SelectAssets() {
+ window.open("/apex/SelectAsset?targetContractId=" + this.Id, "_top");
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSelectAssetsMaintenance/lexSelectAssetsMaintenance.js-meta.xml b/force-app/main/default/lwc/lexSelectAssetsMaintenance/lexSelectAssetsMaintenance.js-meta.xml
new file mode 100644
index 0000000..3392981
--- /dev/null
+++ b/force-app/main/default/lwc/lexSelectAssetsMaintenance/lexSelectAssetsMaintenance.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSelectRental/lexSelectRental.css b/force-app/main/default/lwc/lexSelectRental/lexSelectRental.css
new file mode 100644
index 0000000..89ffcef
--- /dev/null
+++ b/force-app/main/default/lwc/lexSelectRental/lexSelectRental.css
@@ -0,0 +1,11 @@
+.lexSelectRentalHolder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+
+.container .uiContainerManager{
+ display : none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSelectRental/lexSelectRental.html b/force-app/main/default/lwc/lexSelectRental/lexSelectRental.html
new file mode 100644
index 0000000..c45065c
--- /dev/null
+++ b/force-app/main/default/lwc/lexSelectRental/lexSelectRental.html
@@ -0,0 +1,4 @@
+<template>
+<div class="lexSelectRentalHolder" if:true={IsLoding}>
+<lightning-spinner alternative-text="Loading" size="medium"> </lightning-spinner> </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSelectRental/lexSelectRental.js b/force-app/main/default/lwc/lexSelectRental/lexSelectRental.js
new file mode 100644
index 0000000..5afc145
--- /dev/null
+++ b/force-app/main/default/lwc/lexSelectRental/lexSelectRental.js
@@ -0,0 +1,136 @@
+import { LightningElement,api, track, wire } from 'lwc';
+import getEquipmentSetId from '@salesforce/apex/SelectRentalButtonController.getEquipmentSetId';
+
+import getEquipmentSet from '@salesforce/apex/SelectRentalButtonController.getEquipmentSet';
+
+import updateEquipment from '@salesforce/apex/SelectRentalButtonController.updateEquipment';
+
+import getSessionId from '@salesforce/apex/SelectRentalButtonController.getSessionId';
+
+import getRecords from '@salesforce/apex/SelectRentalButtonController.getRecords';
+
+
+import findIdArea from '@salesforce/apex/SelectRentalButtonController.findIdArea';
+import {CurrentPageReference} from 'lightning/navigation';
+import { CloseActionScreenEvent } from 'lightning/actions';
+export default class lexSelectRental extends LightningElement {
+
+ @api recordId;
+ IsLoading;
+ Equipment_Set_Detail__c;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference){
+ if(currentPageReference){
+ console.log(currentPageReference);
+ console.log("杩涘叆鑾峰彇page鍙傛暟")
+ const IdValue=currentPageReference.state.recordId;
+ if(IdValue){
+ let str=`${IdValue}`;
+ this.recordId=str;
+ console.log("recordId="+str);
+ }
+ }
+ }
+
+ connectedCallback(){
+ getEquipmentSetId({recordId:this.recordId}).then(res=>{
+ if(res!=null){
+ this.IsLoading=false;
+ console.log("res");
+ console.log(res);
+ console.log("杩涘叆鍒濆鍖栧璞″叾浠栧睘鎬�");
+ this.Equipment_Set_Detail__c=res;
+ console.log(this.Equipment_Set_Detail__c);
+ console.log(this.Equipment_Set_Detail__c.Select_rental__c);
+
+ this.SelectLending();
+ }
+ else{
+ let a="娌¤繘鏂规硶";
+ console.log(a);
+ }
+ }).catch(error =>{
+ console.log("error");
+ console.log(error.message);
+ }).finally(()=>{
+
+ });
+ }
+
+
+
+ async SelectLending(){
+
+
+ try{
+ this.dispatchEvent(new CloseActionScreenEvent());
+ window.sforce = window.sforce || {};
+ window.sforce.connection = window.sforce.connection || {};
+ let a =await getSessionId();
+ window.sforce.connection.sessionId =await getSessionId();
+ console.log(a);
+ let esid = this.Equipment_Set_Detail__c.Equipment_Set__c;
+ console.log(esid);
+ //閫夋嫨鍊熷嚭鏄竴涓閫夋锛岃繖閲屽氨鏄壘澶嶉�夋鍕句笂鐨勬暟鎹甀d锛屼笉鐭ラ亾杩欎釜鎬庝箞鎺ュ彈浠庡墠绔┛鍙傛暟銆�
+ //鎵�浠ユ垜鐩存帴鏌ユ暟鎹簱
+ let esdids =new Array();
+ esdids=await getRecords();
+ console.log(esdids);
+ let hasError = false;
+ //鏇存柊鏁版嵁
+ if (esdids.length > 0) {
+ console.log('杩涘叆绗竴涓猧f鏂规硶');
+ let sqlResult = await getEquipmentSet({esid:esid});
+ console.log(sqlResult);
+ console.log('杩斿洖瀵硅薄鏁扮粍绗竴涓�'+sqlResult[0]);
+ for (let i = 0; i < sqlResult.length; i++) {
+ let esd = sqlResult[i];
+ console.log(i);
+ esd.Select_rental__c = false;
+ }
+ let result = await updateEquipment({sqlResult : sqlResult});
+ console.log(result);
+ for (let i=0; i<result.length; i++) {
+ if (result[i]!="success") {
+ alert(result[i].errors.message);
+ hasError = true;
+ return;
+ }
+
+ }
+ let EqObject = await findIdArea({id : esdids});
+ console.log(EqObject);
+ for (let i = 0; i < EqObject.length; i++) {
+ let esd = EqObject[i];
+ esd.Select_rental__c = true;
+ }
+ result = await updateEquipment({sqlResult : EqObject});
+ console.log(result);
+ for (let i=0; i<result.length; i++) {
+ if (result[i]!="success") {
+ alert(result[i].errors.message);
+ hasError = true;
+ return;
+ }
+ }
+
+ if (!hasError) {
+ //window.top.location.reload;
+ //杩欓噷濂藉儚top涓嶅瓨鍦�
+ window.location.reload();
+
+ }
+ }
+
+ else {
+ alert("璇疯嚦灏戦�夋嫨涓�涓鍝乻et鏄庣粏銆�");
+ }
+ }
+ catch(e){
+ console.log(e);
+ alert(e.message);
+ }
+
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSelectRental/lexSelectRental.js-meta.xml b/force-app/main/default/lwc/lexSelectRental/lexSelectRental.js-meta.xml
new file mode 100644
index 0000000..c0a5ac1
--- /dev/null
+++ b/force-app/main/default/lwc/lexSelectRental/lexSelectRental.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexSelectRental">
+ <apiVersion>51.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__AppPage</target>
+ <target>lightning__RecordPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSelectSubstitute/lexSelectSubstitute.css b/force-app/main/default/lwc/lexSelectSubstitute/lexSelectSubstitute.css
new file mode 100644
index 0000000..af18c76
--- /dev/null
+++ b/force-app/main/default/lwc/lexSelectSubstitute/lexSelectSubstitute.css
@@ -0,0 +1,11 @@
+.Holder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+
+.container .uiContainerManager{
+ display : none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSelectSubstitute/lexSelectSubstitute.html b/force-app/main/default/lwc/lexSelectSubstitute/lexSelectSubstitute.html
new file mode 100644
index 0000000..960b41d
--- /dev/null
+++ b/force-app/main/default/lwc/lexSelectSubstitute/lexSelectSubstitute.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="Holder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSelectSubstitute/lexSelectSubstitute.js b/force-app/main/default/lwc/lexSelectSubstitute/lexSelectSubstitute.js
new file mode 100644
index 0000000..753abc5
--- /dev/null
+++ b/force-app/main/default/lwc/lexSelectSubstitute/lexSelectSubstitute.js
@@ -0,0 +1,94 @@
+import { LightningElement,api, track, wire } from 'lwc';
+import {CurrentPageReference} from 'lightning/navigation';
+import { CloseActionScreenEvent } from 'lightning/actions';
+import init from '@salesforce/apex/SelectSubstituteControllerLWT.initFromSelectSubstituteButton';
+import selectRentalApplyEquipmentSetByID from '@salesforce/apex/SelectSubstituteControllerLWT.selectRentalApplyEquipmentSetByID';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+export default class selectSubstituteLWC extends LightningElement {
+
+ @api recordId;
+ id;
+ RentalApplyId;
+ Status;
+ IsLoading=true;
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference){
+ console.log("杩涘叆椤甸潰");
+ console.log(currentPageReference);
+ if(currentPageReference){
+ const urvalue=currentPageReference.state.recordId;
+ if(urvalue){
+ let str=`${urvalue}`;
+ console.log('str');
+ console.log(str);
+ this.recordId=str;
+ }
+ }
+ }
+
+
+
+ connectedCallback(){
+ console.log(this.recordId);
+ init({recordId:this.recordId}).then(result=>{
+ console.log(result);
+ if(result!=null){
+ this.id=result.id;
+ this.RentalApplyId=result.RentalApplyId;
+ this.Status=result.Status;
+ this.cancelSubmit().then(res=>{
+ this.IsLoading=false;
+ this.dispatchEvent(new CloseActionScreenEvent());
+ });
+ }
+ }).catch(err=>{
+ console.log("error:");
+ console.log(err);
+ }).finally(()=>{
+
+ });
+ }
+
+
+
+ async cancelSubmit(){
+ // 鍙垎閰嶄唬鏇垮搧鍓嶆彁1 -- 澶囧搧鍊熷嚭鐢宠鐨勭姸鎬侊細鈥滃凡鎵瑰噯鈥濆埌鈥滃凡鍑哄簱鎸囩ず鈥�
+ if(this.Status != '宸叉壒鍑�' && this.Status != '宸插嚭搴撴寚绀�') {
+ // alert('鐢宠涔︾姸鎬佷笉绗﹀悎鍒嗛厤浠f浛鍝佹潯浠讹紝璇风‘璁ょ敵璇风殑鐘舵��');
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:'鐢宠涔︾姸鎬佷笉绗﹀悎鍒嗛厤浠f浛鍝佹潯浠讹紝璇风‘璁ょ敵璇风殑鐘舵��'
+ });
+ this.dispatchEvent(event);
+ } else {
+ // 鍙垎閰嶄唬鏇垮搧鍓嶆彁2 -- 鎵�閫夊�熷嚭澶囧搧閰嶅涓�瑙堢殑鐘舵�侊細鈥樺凡鎵瑰噯鈥欏埌鈥樺嚭搴撳墠宸叉娴嬧��
+ var soqlRecord ;
+ await selectRentalApplyEquipmentSetByID({recordId:this.recordId})
+ .then(res=>{
+ soqlRecord=res;
+ var status = soqlRecord.RAES_Status__c;
+ var irreplaceable = soqlRecord.Irreplaceable_flag__c;
+ var shipTime = soqlRecord.Shippment_loaner_time2__c;
+
+ if(status == "鑽夋涓�" || status == "鐢宠涓�" || shipTime != null) {
+ // alert("涓�瑙堢殑鐘舵�佷笉绗﹀悎鍒嗛厤鏇夸唬鍝佹潯浠�");
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:"涓�瑙堢殑鐘舵�佷笉绗﹀悎鍒嗛厤鏇夸唬鍝佹潯浠�"
+ });
+ this.dispatchEvent(event);
+ } else if(irreplaceable=="true") {
+ // alert("鐢宠浜哄嬀閫変簡浠f浛鍝佷笉鍙�");
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:"鐢宠浜哄嬀閫変簡浠f浛鍝佷笉鍙�"
+ });
+ this.dispatchEvent(event);
+ } else {
+ window.open("/apex/RentalFixtureSetSelect?pt_recid="+this.RentalApplyId+"&raesid="+this.recordId);
+ }
+ });
+
+ }
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSelectSubstitute/lexSelectSubstitute.js-meta.xml b/force-app/main/default/lwc/lexSelectSubstitute/lexSelectSubstitute.js-meta.xml
new file mode 100644
index 0000000..c94e4e2
--- /dev/null
+++ b/force-app/main/default/lwc/lexSelectSubstitute/lexSelectSubstitute.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="selectSubstituteLWC">
+ <apiVersion>51.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__AppPage</target>
+ <target>lightning__RecordPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSendNFM103/lexSendNFM103.html b/force-app/main/default/lwc/lexSendNFM103/lexSendNFM103.html
new file mode 100644
index 0000000..aaa4cbd
--- /dev/null
+++ b/force-app/main/default/lwc/lexSendNFM103/lexSendNFM103.html
@@ -0,0 +1,6 @@
+<template>
+ <div class="toReportHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ <lightning-button label="Show Toast" onclick={ShowToastEvent}></lightning-button>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSendNFM103/lexSendNFM103.js b/force-app/main/default/lwc/lexSendNFM103/lexSendNFM103.js
new file mode 100644
index 0000000..e6f21ea
--- /dev/null
+++ b/force-app/main/default/lwc/lexSendNFM103/lexSendNFM103.js
@@ -0,0 +1,570 @@
+import getStaticResource from "@salesforce/apex/ButtonJsUtility.getStaticResource";
+import init from "@salesforce/apex/otherButtonRepairController.init";
+import queryForEquipments from "@salesforce/apex/otherButtonRepairController.queryForEquipments";
+import queryForFindInvalidLicense from "@salesforce/apex/otherButtonRepairController.queryForFindInvalidLicense";
+import queryForRds from "@salesforce/apex/otherButtonRepairController.queryForRds";
+import queryForReocrds from "@salesforce/apex/otherButtonRepairController.queryForReocrds";
+import queryForRepairCount from "@salesforce/apex/otherButtonRepairController.queryForRepairCount";
+import queryForUrfAsset from "@salesforce/apex/otherButtonRepairController.queryForUrfAsset";
+import queryForUrfSeriesInfo from "@salesforce/apex/otherButtonRepairController.queryForUrfSeriesInfo";
+import queryForrecords3 from "@salesforce/apex/otherButtonRepairController.queryForrecords3";
+import updateForRepair1 from "@salesforce/apex/otherButtonRepairController.updateForRepair1";
+import updateRepair2 from "@salesforce/apex/otherButtonRepairController.updateRepair2";
+import AWSService from "@salesforce/resourceUrl/AWSService";
+import common from "@salesforce/resourceUrl/CommonUtilJs";
+import apex from "@salesforce/resourceUrl/apex20";
+import con from "@salesforce/resourceUrl/connection20";
+import jqueryurl from "@salesforce/resourceUrl/jquery183minjs";
+import jq from "@salesforce/resourceUrl/jquery_jqplot";
+import {
+ CloseActionScreenEvent
+} from "lightning/actions";
+import {
+ CurrentPageReference
+} from "lightning/navigation";
+import {
+ loadScript
+} from "lightning/platformResourceLoader";
+import {
+ ShowToastEvent
+} from 'lightning/platformShowToastEvent';
+import {
+ updateRecord
+} from "lightning/uiRecordApi";
+import {
+ LightningElement,
+ api,
+ wire
+} from "lwc";
+
+export default class LexSendNFM103 extends LightningElement {
+ @api recordId;
+ detailedAddress;
+ dealer;
+ numberofEffectiveContract;
+ newProductGuaranteTxt;
+ onSiteRepair;
+ maintenanceContract;
+ VMMaintenanceContract;
+ FSEState;
+ dateReceiptQuestions;
+ delayReportReason;
+ repairSource;
+ quickRepairSign;
+ RCCD;
+ returnsProductway;
+ salesDeptHP;
+ isAohuiProduct;
+ stateHospital;
+ assetOwner;
+ deliveredProductId;
+ FSEApplyForRepairTime;
+ maintenanceContractId;
+ URFLimitSerial;
+ status;
+ dealerId;
+ ifDeadHurt;
+ dayLater30;
+ recallCorrespondence;
+ URFReapir;
+ inchargeStaffId;
+ DWSign;
+ DOJStatus;
+ SAPcondition;
+ salesOfficeCodeSelection;
+ profileId;
+ userId;
+ AWSDataId;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback() {
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result);
+
+ var btns = document.getElementsByName("send_nfm103");
+ for (var i = 0; i < btns.length; i++) {
+ btns[i].disabled = true;
+ btns[i].className = 'btnDisabled';
+ }
+
+ this.detailedAddress = result.detailedAddress;
+ this.dealer = result.dealer;
+ this.numberofEffectiveContract = result.numberofEffectiveContract;
+ this.newProductGuaranteTxt = result.newProductGuaranteTxt;
+ this.onSiteRepair = result.onSiteRepair;
+ this.maintenanceContract = result.maintenanceContract;
+ this.VMMaintenanceContract = result.VMMaintenanceContract;
+ this.FSEState = result.FSEState;
+ this.dateReceiptQuestions = result.dateReceiptQuestions;
+ this.delayReportReason = result.delayReportReason;
+ this.repairSource = result.repairSource;
+ this.quickRepairSign = result.quickRepairSign;
+ this.RCCD = result.RCCD;
+ this.returnsProductway = result.returnsProductway;
+ this.salesDeptHP = result.salesDeptHP;
+ this.isAohuiProduct = result.isAohuiProduct;
+ this.stateHospital = result.stateHospital;
+ this.assetOwner = result.assetOwner;
+ this.deliveredProductId = result.deliveredProductId;
+ this.FSEApplyForRepairTime = result.FSEApplyForRepairTime;
+ this.maintenanceContractId = result.maintenanceContractId;
+ this.URFLimitSerial = result.URFLimitSerial;
+ this.status = result.status;
+ this.dealerId = result.dealerId;
+ this.ifDeadHurt = result.ifDeadHurt;
+ this.dayLater30 = result.dayLater30;
+ this.recallCorrespondence = result.recallCorrespondence;
+ this.URFReapir = result.URFReapir;
+ this.inchargeStaffId = result.inchargeStaffId;
+ this.DWSign = result.DWSign;
+ this.DOJStatus = result.DOJStatus;
+ this.SAPcondition = result.SAPcondition;
+ this.salesOfficeCodeSelection = result.salesOfficeCodeSelection;
+ this.profileId = result.profileId;
+ this.userId = result.userId;
+ this.AWSDataId = result.AWSDataId;
+
+ this.logicalJudgmentA();
+ }).catch(error => {
+ console.log("error");
+ console.log(error);
+ });
+ }
+
+
+ showToast(msg, type) {
+ const event = new ShowToastEvent({
+ title: '',
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ }
+
+ updateRecordView(recordId) {
+ updateRecord({
+ fields: {
+ Id: recordId
+ }
+ });
+ }
+
+ logicalJudgmentA() {
+ try {
+ if (
+ this.numberofEffectiveContract == "鏃�" &&
+ this.newProductGuaranteTxt != "2: 澶氬勾淇濅慨" &&
+ this.newProductGuaranteTxt != "2: 鏈嶅姟澶氬勾淇濅慨" &&
+ this.newProductGuaranteTxt != "8: 甯傚満澶氬勾淇濅慨" &&
+ this.onSiteRepair == "鐩撮�丼ORC淇悊"
+ ) {
+ if (
+ !confirm("璁惧涓洪潪缁翠慨鍚堝悓涓旈潪澶氬勾淇濅慨瀵硅薄鍝侊紝璇风‘璁ゆ槸鍚︾洿閫丼ORC淇悊锛�")
+ ) {
+ this.updateRecordView(this.recordId);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ }
+ console.log("11");
+ if (
+ (this.maintenanceContract != undefined ||
+ this.VMMaintenanceContract != undefined) &&
+ this.onSiteRepair == "RC淇悊" &&
+ this.FSEState == "灞变笢鐪�"
+ ) {
+ if (
+ !confirm("璇ヨ澶囦负缁翠慨鍚堝悓鎴栧骞翠繚淇璞″搧锛岃纭鏄惁閫佽嚦RC淇悊锛�")
+ ) {
+ this.updateRecordView(this.recordId);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ }
+ var today = Date.now();
+ var dateReceiptQuestions = Date.parse(this.dateReceiptQuestions);
+ var dates = (today - dateReceiptQuestions) / (24 * 60 * 60 * 1000);
+ if (
+ this.profileId != "00e10000000Y3o5" &&
+ this.userId != "0051000000AKgzv" &&
+ this.userId != "0051000000AKh05" &&
+ this.userId != "00510000004q1ed" &&
+ this.delayReportReason == "" &&
+ dates > "1" &&
+ this.repairSource != "QIS杞慨鐞�"
+ ) {
+ this.showToast("鐢宠淇悊鏃禨AP淇悊鐢宠鏃ヨ秴杩囬棶棰樿仈缁滄敹鍒版棩1澶╋紝蹇呴』濉啓闂秴鏃舵姤鍛婄殑鐞嗙敱", "error");
+ this.updateRecordView(this.recordId);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ if (
+ this.quickRepairSign == true &&
+ (this.numberofEffectiveContract == "鏈�" ||
+ this.newProductGuaranteTxt == "2: 澶氬勾淇濅慨" ||
+ this.newProductGuaranteTxt == "2: 鏈嶅姟澶氬勾淇濅慨" ||
+ this.newProductGuaranteTxt == "8: 甯傚満澶氬勾淇濅慨") &&
+ (this.onSiteRepair == "RC淇悊" ||
+ this.onSiteRepair == "鍔炰簨澶勪慨鐞�" ||
+ this.onSiteRepair == "鐜板満淇悊")
+ ) {
+ if (this.RCCD == "2.涓滃寳" || this.RCCD == "3.瑗垮寳") {
+ if (
+ !confirm(
+ "璇ュ瀷鍙峰搴斾负鍚堝悓鎴栧骞翠繚瀵硅薄鍝併�傚纭涓哄ぇ淇悊鏁呴殰锛岄渶瑕侀�夋嫨鐩撮�丼ORC淇悊锛岃纭鏄惁缁х画銆�"
+ )
+ ) {
+ this.updateRecordView(this.recordId);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ } else if (
+ this.RCCD == "1.鍗庡寳" ||
+ this.RCCD == "6.鍗庡崡" ||
+ this.RCCD == "4.瑗垮崡"
+ ) {
+ if (
+ !confirm(
+ "璇ュ瀷鍙峰搴斾负鍚堝悓鎴栧骞翠繚瀵硅薄鍝併�傚纭涓哄ぇ淇悊鏁呴殰锛岄渶瑕侀�夋嫨鐩撮�丱GZ淇悊锛岃纭鏄惁缁х画銆�"
+ )
+ ) {
+ this.updateRecordView(this.recordId);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ }
+ }
+ var returnsProductWay = this.returnsProductway;
+ var falg = true;
+ if (returnsProductWay == undefined) {
+ if (!confirm("杩斿搧鏂瑰紡涓虹┖锛屾槸鍚︾户缁敵璇蜂慨鐞嗭紒")) {
+ this.updateRecordView(this.recordId);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ }
+ if (this.assetOwner == "Olympus") {} else {
+ console.log(this.detailedAddress);
+ if (this.detailedAddress != undefined) {
+ var prompt =
+ "褰撳墠鐩磋繑鏀惰揣鍦板潃涓猴細" + this.detailedAddress + ",鎮ㄧ‘璁や笉淇敼浜嗗悧锛�";
+ if (!confirm(prompt)) {
+ this.updateRecordView(this.recordId);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ } else {
+ this.showToast("褰撳墠淇悊娌℃湁褰曞叆鐩磋繑鏀惰揣鐨勮缁嗗湴鍧�锛屼笉鑳界敵璇蜂慨鐞嗭紒", "error");
+ this.updateRecordView(this.recordId);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ }
+
+ queryForEquipments({
+ deliveredProductId: this.deliveredProductId,
+ }).then((result) => {
+ var equipments = result;
+ if (equipments != null && equipments.length > 0) {
+ var equipment = equipments[0];
+ if (equipment.Status == "寤冩") {
+ this.showToast("璁惧搴熷純锛屼笉鑳芥彁浜ょ敵璇�!", "error");
+ this.updateRecordView(this.recordId);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ }
+ });
+ if (this.FSEApplyForRepairTime != undefined) {
+ this.showToast("宸蹭慨鐞嗙敵璇凤紝涓嶅啀淇悊鐢宠浜�", "error");
+ this.updateRecordView(this.recordId);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ var surplusCount = 0;
+ if (this.URFReapir == true) {
+ var urfAsset = null;
+
+ queryForUrfAsset({
+ maintenanceContractId: this.maintenanceContractId,
+ deliveredProductId: this.deliveredProductId,
+ }).then((result) => {
+ urfAsset = result;
+ var seriesMaxRepairCount = 0;
+ var seriesRepairCount = 0;
+ if (urfAsset != null && urfAsset.length > 0) {
+ seriesMaxRepairCount = urfAsset[0].Series_MaxRepairCount_F__c;
+ seriesRepairCount = urfAsset[0].Series_RepairCount_F__c;
+ surplusCount = seriesMaxRepairCount - seriesRepairCount;
+ }
+ });
+ var urfSeriesInfo = null;
+
+ queryForUrfSeriesInfo({
+ URFLimitSerial: this.URFLimitSerial,
+ }).then((result) => {
+ urfSeriesInfo = result;
+ var urfSeries = "";
+ if (urfSeriesInfo != null && urfSeriesInfo.length > 0) {
+ urfSeries = urfSeriesInfo[0].URFLimitSerial__c;
+ }
+ var repairCount = null;
+
+ queryForRepairCount({
+ maintenanceContractId: this.maintenanceContractId,
+ status1: "1.鍙楃悊瀹屾瘯",
+ URFLimitSerial: urfSeries,
+ }).then((result) => {
+ repairCount = result;
+ });
+ if (repairCount.length > 0 && surplusCount == 1) {
+ this.showToast("璇ヨ澶囧叧鑱旈檺娆″悎鍚岋紝鐩墠鍓╀綑娆℃暟灏忎簬閫佷慨璁惧銆傝绛夊緟杩涜涓慨鐞嗗畬鎴愬悗鍐嶈繘琛岀敵璇�", "error");
+ this.updateRecordView(this.recordId);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ });
+ }
+ if (
+ this.status != "鑽夋涓�" &&
+ this.status != "1.鍙楃悊瀹屾瘯(SAP寰呭彂閫�)" &&
+ this.status != "4.淇悊鍝佽繑閫侀樁娈�"
+ ) {
+ this.showToast("涓嶆槸鑽夋涓笉鑳界敵璇�", "error");
+ this.updateRecordView(this.recordId);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ } else {
+ if (this.dealer != undefined) {
+ var findInvalidLicense = null;
+
+ queryForFindInvalidLicense({
+ isValidity: false,
+ dealerId: this.dealerId,
+ }).then((result) => {
+ findInvalidLicense = result;
+ if (findInvalidLicense.size > 0) {
+ this.showToast("缁忛攢鍟嗕笁璇佷笉鍦ㄦ湁鏁堟湡锛屾棤娉曢�佷慨", "error");
+ this.updateRecordView(this.recordId);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ });
+ }
+ if (this.ifDeadHurt == "鏈�") {
+ if (!confirm("鏄惁纭AE瑕佹彁浜わ紵")) {
+ this.updateRecordView(this.recordId);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ }
+ if (this.dayLater30 == "鏄�") {
+ this.showToast("鍒涘缓鍚庤秴杩�30澶╋紝涓嶈兘鐢宠浜�", "error");
+ this.updateRecordView(this.recordId);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ var prompt11 = "鍚堝悓鍐呭ぇ淇鏁板凡鐢ㄥ畬锛屽綋鍓嶄慨鐞嗕负鍚堝悓澶栫殑淇悊锛屾槸鍚︾户缁紵";
+ if (this.URFReapir == true && surplusCount == 0) {
+ var resultTmp = null;
+ if (!confirm(prompt11)) {
+ this.updateRecordView(this.recordId);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+
+ updateForRepair1({
+ recordId: this.recordId,
+ }).then((result) => {
+ resultTmp = result;
+ console.log("1111");
+ var messagesTmp = "";
+ if (resultTmp) {
+ messagesTmp = this.getConnectDMLErrorMessages(resultTmp);
+ }
+ if (messagesTmp.length > 0) {
+ this.showToast(messagesTmp.join("\n"), "error");
+ this.updateRecordView(this.recordId);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ });
+ }
+ var records = null;
+
+ queryForReocrds({
+ inchargeStaffId: this.inchargeStaffId,
+ }).then((result) => {
+ records = result;
+ console.log(result);
+ this.logicalJudgmentB(records);
+ });
+ }
+ } catch (error) {
+ console(error);
+ }
+ var staticResource = null;
+
+ getStaticResource({
+ sobj: "Repair__c"
+ }).then(result => {
+ console.log(result);
+ staticResource = JSON.parse(result);
+ Promise.all([
+ loadScript(this, AWSService + '/AWSService.js'),
+ loadScript(this, jqueryurl),
+ loadScript(this, jq + "/dist/jquery.js"),
+ loadScript(this, con),
+ loadScript(this, apex),
+ loadScript(this, common)
+ ]).then(() => {
+ window.AWSService.query(staticResource.queryUrl,
+ this.AWSDataId,
+ function (data) {
+ console.log(data);
+ if (data && data.object) {
+ var DetailedAddress = data.object.detailedAddress;
+ }
+ this.foo();
+ },
+ staticResource.token).then(result => {
+ this.updateRecordView(this.recordId);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ });
+ }).catch(error => {
+ console.log('Failed to load the JQuery : ' + error);
+ });
+ }).catch(error => {
+ console.log('Failed to load the JQuery : ' + error);
+ });
+ console.log('load correctly');
+ }
+
+ foo() {
+ console.log("end");
+ var records3 = null;
+
+ queryForrecords3({
+ recordId: this.recordId,
+ }).then((result) => {
+ records3 = result;
+ });
+ var FirstParagraph__c = "";
+ if (records3.length >= 1) {
+ FirstParagraph__c = records3[0].FirstParagraph__c;
+ }
+ if (FirstParagraph__c == "true") {
+ if (!confirm("璇ョ粡閿�鍟嗕负鍏堟瀵硅薄锛屾槸鍚︾户缁敵璇蜂慨鐞嗭紵")) {
+ this.updateRecordView(this.recordId);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ }
+ console.log("endend");
+ }
+
+ logicalJudgmentB(records) {
+ if (records != null && records.length > 0) {
+ var staff = records[0];
+ var res = null;
+ updateRepair2({
+ recordId: this.recordId,
+ staff: staff,
+ DWSign: this.DWSign,
+ statusc: "1.鍙楃悊瀹屾瘯",
+ DOJStatus: this.DOJStatus,
+ SAPcondition: this.SAPcondition,
+ }).then((result) => {
+ console.log(result + "result");
+ res = result;
+ console.log("start3");
+ var messages = "";
+ if (res) {
+ messages = this.getConnectDMLErrorMessages(res);
+ }
+ if (messages.length > 0) {
+ this.showToast(messages.join("\n"), "error");
+ this.updateRecordView(this.recordId);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ } else {
+ if (this.salesOfficeCodeSelection == "鎴愰兘RC") {
+
+ this.showToast("鐜伴樁娈碉紝鎴愰兘RC浠呭彈鐞嗗洓宸濓紙瑗胯棌锛夊唴闀溿�佽タ鍗楀叏鍩烠V/CLV锛屽叾浣欏疄鐗╄鍙戣嚦骞垮窞RC銆�", "error");
+ this.updateRecordView(this.recordId);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ }
+ var rds = null;
+
+ queryForRds({
+ recordId: this.recordId,
+ }).then((result) => {
+ rds = result;
+ if (rds != null && rds.length > 0) {
+ var repairAft = rds[0];
+ if (
+ repairAft.NewProductGuarante_Formula__c !=
+ repairAft.ProductGuarante_Create__c
+ ) {
+ this.showToast("璇ヨ澶囦繚淇俊鎭凡鍙戠敓鍙樺寲锛岃浜嗚В", "error");
+ }
+ }
+ });
+ });
+
+ } else {
+ this.showToast("娌℃湁鎵惧埌 淇悊濮旀墭鑰�", "error");
+ this.updateRecordView(this.recordId);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ }
+
+ getConnectDMLErrorMessages(results) {
+ console.log(results);
+ var messages = [],
+ i = 0,
+ len = results.length,
+ r;
+ console.log("sos");
+ for (; i < len; i++) {
+ r = results[i];
+ if (!r.getBoolean("success")) {
+ messages = messages.concat(getConnectDMLMessagesOfAResult(r));
+ }
+ }
+ return messages;
+ }
+
+ getConnectDMLMessagesOfAResult(res) {
+ var messages = [],
+ errors = res.getArray("errors"),
+ i = 0,
+ len = errors.length,
+ e;
+ for (; i < len; i++) {
+ e = errors[i];
+ messages.push(e.message + " " + getConnectDMLErrorFields(e));
+ }
+ return messages;
+ }
+
+ getConnectDMLErrorFields(error) {
+ var fields = error.getArray("fields");
+ if (fields.length > 0) {
+ return "[" + fields.join(",") + "]";
+ } else {
+ return "";
+ }
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSendNFM103/lexSendNFM103.js-meta.xml b/force-app/main/default/lwc/lexSendNFM103/lexSendNFM103.js-meta.xml
new file mode 100644
index 0000000..3392981
--- /dev/null
+++ b/force-app/main/default/lwc/lexSendNFM103/lexSendNFM103.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSendQIS/lexSendQIS.css b/force-app/main/default/lwc/lexSendQIS/lexSendQIS.css
new file mode 100644
index 0000000..635bc6c
--- /dev/null
+++ b/force-app/main/default/lwc/lexSendQIS/lexSendQIS.css
@@ -0,0 +1,22 @@
+.outerBorderCss{
+ border: 1px solid #D4D4D4;
+ border-radius : 5px;
+ border-top : 3px solid #565959;
+}
+.borderCss{
+ border: 1px solid #D4D4D4;
+ border-radius : 5px;
+ margin-bottom : 7px;
+ border-top : 3px solid #565959;
+}
+.headerDorderCss{
+ border-top: 1px solid #565959;
+ border-bottom: 1px solid #D4D4D4;
+ padding:3px;
+}
+.centerCss{
+ text-align: center;
+}
+.centerCss .left{
+ margin-left: 100px;
+}/* sample css file */
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSendQIS/lexSendQIS.html b/force-app/main/default/lwc/lexSendQIS/lexSendQIS.html
new file mode 100644
index 0000000..c8bdbfc
--- /dev/null
+++ b/force-app/main/default/lwc/lexSendQIS/lexSendQIS.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="sisToOPDHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSendQIS/lexSendQIS.js b/force-app/main/default/lwc/lexSendQIS/lexSendQIS.js
new file mode 100644
index 0000000..f1ca368
--- /dev/null
+++ b/force-app/main/default/lwc/lexSendQIS/lexSendQIS.js
@@ -0,0 +1,121 @@
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { NavigationMixin } from 'lightning/navigation';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+import init from '@salesforce/apex/QISReportController.initForlexSendQISButton';
+import sendSPO from '@salesforce/apex/QISReportController.updateQisForSendQIS';
+import UserInfo_Owner from '@salesforce/apex/TaskFeedbackController.UserInfo_Owner';
+import { updateRecord } from 'lightning/uiRecordApi';
+
+export default class lexSendQIS extends LightningElement {
+ @api recordId;
+ str;
+ err;
+ IsLoading = true;
+ qisReportId;
+ qisRecordTypeId;
+ qisRecordName;
+ ProfileName;
+ IsSendQIS;
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback() {
+ console.log(this.recordId);
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result);
+ this.IsLoading = false;
+ this.qisRecordTypeId = result.qisRecordTypeId;
+ this.qisReportId = result.Id;
+ this.qisRecordName = result.qisRecordName;
+ this.ProfileName = result.profileName;
+ this.IsSendQIS = result.isSendQIS;
+ if (this.qisRecordName == '2.OCSM') {
+ const evt = new ShowToastEvent({
+ title : '涓嶈兘鎻愪氦鍒癝PO',
+ message: '璁板綍绫诲瀷涓�'+this.qisRecordName,
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+
+ if (!(this.ProfileName == '绯荤粺绠$悊鍛�' || this.ProfileName == '2F4_鎶�鏈帹杩涢儴' || this.ProfileName == '2F1_鏈嶅姟绐楀彛')) {
+ const evt = new ShowToastEvent({
+ title : '娌℃湁鏉冮檺鎻愪氦锛岃鑱旂郴绯荤粺绠$悊鍛�',
+ message: '',
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+
+ if (this.IsSendQIS) {
+ const evt = new ShowToastEvent({
+ title : '宸叉彁浜ゅ埌SPO锛岃涓嶈閲嶅鎻愪氦',
+ message: '',
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ this.send2SPO();
+ }).catch(error => {
+ console.log(error.getMessage());
+ }).finally(() => {
+
+ });
+ }
+ updateRecordView(recordId) {
+ updateRecord({fields: { Id: recordId }});
+ }
+
+ send2SPO(){
+ sendSPO({
+ recordId: this.recordId
+ }).then(result =>{
+ console.log('result'+result);
+ this.err = result;
+ if (result!='鎴愬姛') {
+ const evt = new ShowToastEvent({
+ title : '鏇存柊澶辫触',
+ message: this.err,
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }else{
+ const evt = new ShowToastEvent({
+ title : '鎻愪氦鎴愬姛锛佽鍦⊿PO绯荤粺涓畬鎴愰��鎹㈣揣鐢宠',
+ message: '',
+ variant: 'success'
+ });
+ this.dispatchEvent(evt);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ this.updateRecordView(this.recordId);
+ window.location.replace("https://olympus.sharepoint.cn/sites/GSPWF/SitePages/HomePage.aspx");
+ }
+
+ }).catch(error => {
+ console.log('error='+error);
+ }).finally(() => {
+
+ });
+ }
+
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSendQIS/lexSendQIS.js-meta.xml b/force-app/main/default/lwc/lexSendQIS/lexSendQIS.js-meta.xml
new file mode 100644
index 0000000..814503e
--- /dev/null
+++ b/force-app/main/default/lwc/lexSendQIS/lexSendQIS.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexSendQIS">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSendRepairsToEtQ/lexSendRepairsToEtQ.html b/force-app/main/default/lwc/lexSendRepairsToEtQ/lexSendRepairsToEtQ.html
new file mode 100644
index 0000000..87f391a
--- /dev/null
+++ b/force-app/main/default/lwc/lexSendRepairsToEtQ/lexSendRepairsToEtQ.html
@@ -0,0 +1,6 @@
+<template>
+ <div class="exampleHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ <lightning-button label="Show Toast" onclick={ShowToastEvent}></lightning-button>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSendRepairsToEtQ/lexSendRepairsToEtQ.js b/force-app/main/default/lwc/lexSendRepairsToEtQ/lexSendRepairsToEtQ.js
new file mode 100644
index 0000000..927e6d3
--- /dev/null
+++ b/force-app/main/default/lwc/lexSendRepairsToEtQ/lexSendRepairsToEtQ.js
@@ -0,0 +1,192 @@
+import {
+ LightningElement,
+ wire,
+ api
+} from 'lwc';
+import {
+ CurrentPageReference
+} from "lightning/navigation";
+import {
+ CloseActionScreenEvent
+} from 'lightning/actions';
+import init from '@salesforce/apex/otherButtonRepairController.init';
+import selectRecords from '@salesforce/apex/otherButtonRepairController.selectRecords';
+import sendToETQ from '@salesforce/apex/otherButtonRepairController.sendToETQ';
+import {
+ ShowToastEvent
+} from 'lightning/platformShowToastEvent';
+
+export default class LexSendRepairsToEtQ extends LightningElement {
+ @api recordId;
+ str;
+ IsLoading = true;
+ Id;;
+ PAEDetermineC;
+ ETQUPLOADSTATUSC;
+ AEDetermineResultC;
+ PAEDetermineACC;
+ RepairInspectionDateC;
+ ContainUseRSAC;
+ userID;
+ profileId;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback() {
+ console.log(this.recordId);
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result);
+ if (result != null) {
+ this.IsLoading = false;
+ this.Id = result.Id;
+ this.PAEDetermineC = result.PAEDetermineC;
+ this.ETQUPLOADSTATUSC = result.ETQUPLOADSTATUSC;
+ this.AEDetermineResultC = result.AEDetermineResultC;
+ this.PAEDetermineACC = result.PAEDetermineACC;
+ this.RepairInspectionDateC = result.RepairInspectionDateC;
+ this.ContainUseRSAC = result.ContainUseRSAC;
+ this.userID = result.userID;
+ this.profileId = result.profileId;
+
+ this.myDate();
+ this.myReload();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ }).catch(error => {
+ console.log(error);
+ }).finally(() => {
+
+ });
+ }
+
+ // 鏍规嵁鏃ユ湡鏋勫缓MessageGroupNumber
+ myDate() {
+ let messageNumber = '';
+ let today = new Date();
+ messageNumber = today.getFullYear() + '' + (today.getMonth() + 1) + '' + today.getDate() + '' + today.getHours() + '' +
+ today.getMinutes() + '' + today.getSeconds();
+ return messageNumber;
+ }
+
+ // 鎸夐挳鐐瑰嚮鍚庤Е鍙�,鍒ゆ柇鏄惁鍙戦�佽繃ETQ,濡傛灉鍙戦�佽繃缁欏嚭鎻愮ず骞剁伆鎺夋寜閽�
+ // 濡傛灉娌℃湁鍙戦�佽繃璋冪敤鍙戦�佹柟娉�
+ myReload() {
+ selectRecords({
+ recordId: this.Id
+ }).then(result => {
+ console.log(result);
+ if (result.AsyncData__c == 'true' && result.ETQ_UPLOAD_STATUS__c != '3' || result.Complaint_Number__c != null) {
+ var btns = document.getElementsByName("sendrepairstoetq");
+ for (var i = 0; i < btns.length; i++) {
+ btns[i].disabled = true;
+ btns[i].className = 'btnDisabled';
+ }
+ this.ShowToastEvent('璇ヤ慨鐞嗕箣鍓嶅凡缁忓彂閫佽繃浜�', "error");
+ // alert('璇ヤ慨鐞嗕箣鍓嶅凡缁忓彂閫佽繃浜�')
+ } else {
+ this.SendRepairsToEtQ();
+ }
+ }).catch(error => {
+ console.log(error);
+ }).finally(() => {
+
+ });
+ }
+
+ // 鍙戦�丒TQ
+ SendRepairsToEtQ() {
+ console.log(this.userID);
+ console.log(this.profileId);
+
+ var uid = this.userID;
+ if (this.profileId != "00e10000000xnoO" && this.profileId != "00e10000000hl7w" && this.profileId != '00e10000000Y3o5') {
+ this.ShowToastEvent("鎮ㄦ病鏈夊彂閫佷慨鐞嗗埌EtQ鐨勬潈闄愩��", "error");
+ // alert("鎮ㄦ病鏈夊彂閫佷慨鐞嗗埌EtQ鐨勬潈闄愩��");
+ return;
+ }
+ var statu = '';
+ if (this.PAEDetermineC == undefined) {
+ this.ShowToastEvent("OCSM QARA鐨凱AE鍒ゅ畾鏄┖鐨勬椂鍊欙紝涓嶅彲浠ュ彂閫佸埌EtQ銆�", "error");
+ // alert("OCSM QARA鐨凱AE鍒ゅ畾鏄┖鐨勬椂鍊欙紝涓嶅彲浠ュ彂閫佸埌EtQ銆�");
+ return;
+ }
+ if (this.ETQUPLOADSTATUSC == "3") {
+ if (!confirm("鏄惁娓呯┖EtQ鍚屾鐘舵�侊紝閲嶆柊鍚屾鏁版嵁锛�")) {
+ return;
+ }
+ }
+ if (this.PAEDetermineC == "nonPAE" && this.AEDetermineResultC == "nonAE" && this.PAEDetermineACC == "nonPAE" && uid != "005100000068zJ6") {
+ this.ShowToastEvent("Close Complait鐨勬椂鍊欙紝涓嶅彲浠ュ彂閫佸埌EtQ", "error");
+ // alert("Close Complait鐨勬椂鍊欙紝涓嶅彲浠ュ彂閫佸埌EtQ");
+ return;
+ }
+ if (this.PAEDetermineC != undefined && this.AEDetermineResultC != undefined && this.PAEDetermineACC == undefined) {
+ statu = "R1";
+ } else if ((this.AEDetermineResultC != undefined && this.PAEDetermineC != undefined && this.PAEDetermineACC != undefined) &&
+ !(this.PAEDetermineC == "nonPAE" && this.AEDetermineResultC == "nonAE" && this.PAEDetermineACC == "nonPAE")) {
+ statu = "R2";
+ if (this.RepairInspectionDateC == "") {
+ this.ShowToastEvent("5.淇悊妫�娴嬫棩鏄┖鐨勬椂鍊欙紝涓嶅彲浠ュ彂閫佸埌EtQ銆�", "error");
+ // alert("5.淇悊妫�娴嬫棩鏄┖鐨勬椂鍊欙紝涓嶅彲浠ュ彂閫佸埌EtQ銆�");
+ return;
+ }
+ if (this.ContainUseRSAC == 1) {
+ this.ShowToastEvent("Final universal code涓虹┖锛屾垨鑰呭寘鍚玌seRSA锛岃纭銆�", "error");
+ // alert("Final universal code涓虹┖锛屾垨鑰呭寘鍚玌seRSA锛岃纭銆�");
+ return;
+ }
+ }
+
+ var result;
+ try {
+ var repairids = new Array()
+ repairids[0] = this.Id;
+
+ var statuArr = new Array();
+ statuArr.push(statu);
+
+ sendToETQ({
+ iflog_Id: "",
+ rowDataSFDC: "",
+ repairIds: repairids,
+ statu: statuArr[0]
+ }).then(result => {
+ this.ShowToastEvent(result, "error");
+ // alert(result);
+ }).catch(error => {
+ console.log(error);
+ })
+
+ var btns = document.getElementsByName("sendrepairstoetq");
+ for (var i = 0; i < btns.length; i++) {
+ btns[i].disabled = true;
+ btns[i].className = 'btnDisabled';
+ }
+ location.reload();
+ } catch (error) {
+ this.ShowToastEvent("鍙戦�佷慨鐞嗗埌EtQ澶辫触" + error.faultstring + ' code:' + error.faultcode, "error");
+ // alert("鍙戦�佷慨鐞嗗埌EtQ澶辫触" + error.faultstring + ' code:' + error.faultcode);
+ }
+ }
+
+ // 寮圭獥
+ ShowToastEvent(msg, type) {
+ const event = new ShowToastEvent({
+ title: '',
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSendRepairsToEtQ/lexSendRepairsToEtQ.js-meta.xml b/force-app/main/default/lwc/lexSendRepairsToEtQ/lexSendRepairsToEtQ.js-meta.xml
new file mode 100644
index 0000000..3392981
--- /dev/null
+++ b/force-app/main/default/lwc/lexSendRepairsToEtQ/lexSendRepairsToEtQ.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexServiceCutPriceApply/lexServiceCutPriceApply.html b/force-app/main/default/lwc/lexServiceCutPriceApply/lexServiceCutPriceApply.html
new file mode 100644
index 0000000..aaa4cbd
--- /dev/null
+++ b/force-app/main/default/lwc/lexServiceCutPriceApply/lexServiceCutPriceApply.html
@@ -0,0 +1,6 @@
+<template>
+ <div class="toReportHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ <lightning-button label="Show Toast" onclick={ShowToastEvent}></lightning-button>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexServiceCutPriceApply/lexServiceCutPriceApply.js b/force-app/main/default/lwc/lexServiceCutPriceApply/lexServiceCutPriceApply.js
new file mode 100644
index 0000000..333aeb7
--- /dev/null
+++ b/force-app/main/default/lwc/lexServiceCutPriceApply/lexServiceCutPriceApply.js
@@ -0,0 +1,113 @@
+import {
+ LightningElement,
+ wire,
+ api
+} from 'lwc';
+import {
+ CurrentPageReference
+} from "lightning/navigation";
+import {
+ CloseActionScreenEvent
+} from 'lightning/actions';
+import init from '@salesforce/apex/buttonRepairQuotationCtl.init';
+import updateRepairQuotation from '@salesforce/apex/buttonRepairQuotationCtl.updateRepairQuotation';
+import updateRepairQuotation02 from '@salesforce/apex/buttonRepairQuotationCtl.updateRepairQuotation02';
+import {
+ ShowToastEvent
+} from 'lightning/platformShowToastEvent';
+
+
+export default class LexServiceCutPriceApply extends LightningElement {
+ @api recordId;
+ str;
+ IsLoading = true;
+ Id;
+ CutPriceStatusServiceC;
+ profileId;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback() {
+ console.log(this.recordId);
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result);
+ if (result != null) {
+ this.IsLoading = false;
+ this.Id = result.Id;
+ this.CutPriceStatusServiceC = result.CutPriceStatusServiceC;
+ this.profileId = result.profileId;
+
+ this.ServiceCutPriceApply();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ }).catch(error => {
+ console.log(error);
+ })
+ }
+
+ //鏈嶅姟鏈儴鍑忎环鐢宠
+ ServiceCutPriceApply() {
+ var power = this.profileId;
+ if (power != '00e10000000xnnz' && power != '00e10000000xno9' && power != '00e10000000NbC4') {
+ alert('瀵逛笉璧凤紝鎮ㄦ病鏈夋潈闄愭彁浜ゆ鐢宠锛�');
+ return;
+ }
+ var status = this.CutPriceStatusServiceC;
+ if (status == '瀹℃壒涓�') {
+ alert("瀹℃壒鎻愪氦鎴愬姛,褰撳墠姝e湪瀹℃壒璇峰嬁鍐嶆彁浜わ紒");
+ return;
+ }
+ if (status == '鎵瑰噯') {
+ alert("瀹℃壒宸叉壒鍑�,璇峰嬁鍐嶆彁浜わ紒");
+ return;
+ }
+ if (status == '鑽夋涓�' || status == undefined || status == '椹冲洖') {
+ updateRepairQuotation({
+ recordId: this.Id
+ }).then(result => {
+ console.log(result);
+ if (result.length > 0) {
+ var indexs = result.indexOf(": ")
+ var resolves = result.substring(indexs + 1, result.length);
+ alert(resolves);
+ return;
+ }
+ })
+ updateRepairQuotation02({
+ recordId: this.Id
+ }).then(result => {
+ console.log(result);
+ if (result.length > 0) {
+ var indexs = result.indexOf(": ")
+ var resolves = result.substring(indexs + 1, result.length);
+ alert("鎻愪氦澶辫触" + resolves);
+ return;
+ } else {
+ alert("瀹℃壒鎻愪氦鎴愬姛锛�");
+ }
+ })
+ }
+ location.reload();
+ }
+
+ // 寮圭獥
+ ShowToastEvent(msg, type) {
+ const event = new ShowToastEvent({
+ title: '',
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexServiceCutPriceApply/lexServiceCutPriceApply.js-meta.xml b/force-app/main/default/lwc/lexServiceCutPriceApply/lexServiceCutPriceApply.js-meta.xml
new file mode 100644
index 0000000..3392981
--- /dev/null
+++ b/force-app/main/default/lwc/lexServiceCutPriceApply/lexServiceCutPriceApply.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSplitApply/lexSplitApply.css b/force-app/main/default/lwc/lexSplitApply/lexSplitApply.css
new file mode 100644
index 0000000..af18c76
--- /dev/null
+++ b/force-app/main/default/lwc/lexSplitApply/lexSplitApply.css
@@ -0,0 +1,11 @@
+.Holder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+
+.container .uiContainerManager{
+ display : none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSplitApply/lexSplitApply.html b/force-app/main/default/lwc/lexSplitApply/lexSplitApply.html
new file mode 100644
index 0000000..960b41d
--- /dev/null
+++ b/force-app/main/default/lwc/lexSplitApply/lexSplitApply.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="Holder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSplitApply/lexSplitApply.js b/force-app/main/default/lwc/lexSplitApply/lexSplitApply.js
new file mode 100644
index 0000000..25004a1
--- /dev/null
+++ b/force-app/main/default/lwc/lexSplitApply/lexSplitApply.js
@@ -0,0 +1,56 @@
+import { LightningElement,api, track, wire } from 'lwc';
+import {CurrentPageReference} from 'lightning/navigation';
+import { CloseActionScreenEvent } from 'lightning/actions';
+import init from '@salesforce/apex/SelectSubstituteControllerLWT.initFromSelectSubstituteButton';
+
+export default class lexSplitApply extends LightningElement {
+ @api recordId;
+ IsLoading=true;
+ id;
+ RentalApplyId;
+ Status;
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference){
+ console.log("杩涘叆椤甸潰");
+ console.log(currentPageReference);
+ if(currentPageReference){
+ const urvalue=currentPageReference.state.recordId;
+ if(urvalue){
+ let str=`${urvalue}`;
+ console.log('str');
+ console.log(str);
+ this.recordId=str;
+ }
+ }
+ }
+
+
+
+ connectedCallback(){
+ console.log(this.recordId);
+ init({recordId:this.recordId}).then(result=>{
+ console.log(result);
+ if(result!=null){
+ this.id=result.id;
+ this.RentalApplyId=result.RentalApplyId;
+ this.Status=result.Status;
+ this.cancelSubmit().then(res=>{
+ this.IsLoading=false;
+ this.dispatchEvent(new CloseActionScreenEvent());
+ });
+ }
+ }).catch(err=>{
+ console.log("error:");
+ console.log(err);
+ }).finally(()=>{
+
+ });
+ }
+
+
+
+ async cancelSubmit(){
+ let records=[this.recordId];
+ window.open("/apex/RentalApplySplit?objId="+this.RentalApplyId+"&raesIds="+records, 'RentalApplySplit', 'width=600,height=200');
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSplitApply/lexSplitApply.js-meta.xml b/force-app/main/default/lwc/lexSplitApply/lexSplitApply.js-meta.xml
new file mode 100644
index 0000000..f4314e5
--- /dev/null
+++ b/force-app/main/default/lwc/lexSplitApply/lexSplitApply.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexSplitApply">
+ <apiVersion>51.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__AppPage</target>
+ <target>lightning__RecordPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexStockApply/lexStockApply.css b/force-app/main/default/lwc/lexStockApply/lexStockApply.css
new file mode 100644
index 0000000..39dab40
--- /dev/null
+++ b/force-app/main/default/lwc/lexStockApply/lexStockApply.css
@@ -0,0 +1,10 @@
+.lexStockApplyHolder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+.container .uiContainerManager{
+ display: none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexStockApply/lexStockApply.html b/force-app/main/default/lwc/lexStockApply/lexStockApply.html
new file mode 100644
index 0000000..5674b24
--- /dev/null
+++ b/force-app/main/default/lwc/lexStockApply/lexStockApply.html
@@ -0,0 +1,6 @@
+<template>
+ <div class="lexStockApplyHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ <lightning-button label="Show Toast" onclick={ShowToastEvent}></lightning-button>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexStockApply/lexStockApply.js b/force-app/main/default/lwc/lexStockApply/lexStockApply.js
new file mode 100644
index 0000000..e82a54a
--- /dev/null
+++ b/force-app/main/default/lwc/lexStockApply/lexStockApply.js
@@ -0,0 +1,114 @@
+/*
+ * @Description:
+ * @version:
+ * @Author: chen jing wu
+ * @Date: 2023-04-14 13:04:53
+ * @LastEditors: chen jing wu
+ * @LastEditTime: 2023-04-14 17:54:56
+ */
+import { api, wire,LightningElement } from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import updateForStockApplyButton from '@salesforce/apex/OpportunityLightingButtonController.updateForStockApplyButton';
+import init from '@salesforce/apex/OpportunityLightingButtonController.initForStockApplyButton';
+import { updateRecord } from 'lightning/uiRecordApi';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+import { loadScript } from "lightning/platformResourceLoader";
+import connection from '@salesforce/resourceUrl/connection20';
+export default class LexStockApply extends LightningElement {
+ @api recordId;
+ stockApplyStatus;
+ lastOpportunityFileId;
+ IsLoading = true;
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+ connectedCallback(){
+ init({
+ recordId: this.recordId
+ }).then(result=>{
+ console.log(result);
+ this.stockApplyStatus = result.stockApplyStatus;
+ this.lastOpportunityFileId = result.lastOpportunityFileId;
+ this.stockApply();
+ })
+ }
+ stockApply(){
+ var status = this.stockApplyStatus;
+ if (status != '鑽夋涓�' && status != '濉啓瀹屾瘯' && status != '涓嶆壒鍑�' && status != '' && status != undefined) {
+ this.showToast("澶囪揣鐢宠鐘舵�佷笉姝g‘锛屼笉鑳芥彁浜ゅ璐х敵璇枫��","error");
+ return;
+ }
+ var oppfile = this.lastOpportunityFileId;
+ if (oppfile == undefined || oppfile == '') {
+ this.showToast("璇蜂笂浼犺浠锋枃浠躲��","error");
+ return;
+ }
+
+ if (!confirm("涓�鏃︽彁浜ゆ璁板綍浠ュ緟鎵瑰噯锛屾牴鎹偍鐨勮缃偍鍙兘涓嶅啀鑳藉缂栬緫姝よ褰曟垨灏嗕粬浠庢壒鍑嗚繃绋嬩腑璋冨洖銆傛槸鍚︾户缁紵")) {
+ this.dispatchEvent(new CloseActionScreenEvent);
+ return;
+ }
+
+ updateForStockApplyButton({
+ recordId: this.recordId,
+ flag: true
+ }).then(result=>{
+ if(result){
+ this.showToast(result,"error");
+ return;
+ }
+ Promise.all([
+ loadScript(this,connection)
+ ]).then(() =>{
+ var request = new window.sforce.ProcessSubmitRequest();
+ request.objectId = this.recordId;
+ console.log("s");
+ console.log(request);
+ console.log("e");
+ var processResults = window.sforce.Connection.prototype.process([request]);
+ console.log(processResults);
+ if (processResults[0].errors != null) {
+ updateForStockApplyButton({
+ recordId: this.recordId,
+ flag: false
+ }).then(result=>{
+ if(result){
+ this.showToast(result,"error");
+ return;
+ }
+ this.IsLoading = false;
+ this.updateRecordView(this.recordId);
+ this.dispatchEvent(new CloseActionScreenEvent);
+ })
+ }
+ });
+ }).catch(error=>{
+ console.log(error);
+ })
+ }
+ showToast(msg,type) {
+ const event = new ShowToastEvent({
+ title: '',
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ this.dispatchEvent(new CloseActionScreenEvent);
+ }
+ updateRecordView(recordId) {
+ updateRecord({fields: { Id: recordId }});
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexStockApply/lexStockApply.js-meta.xml b/force-app/main/default/lwc/lexStockApply/lexStockApply.js-meta.xml
new file mode 100644
index 0000000..3392981
--- /dev/null
+++ b/force-app/main/default/lwc/lexStockApply/lexStockApply.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSubmit/lexSubmit.css b/force-app/main/default/lwc/lexSubmit/lexSubmit.css
new file mode 100644
index 0000000..4379b62
--- /dev/null
+++ b/force-app/main/default/lwc/lexSubmit/lexSubmit.css
@@ -0,0 +1,10 @@
+.submitHolder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+.container .uiContainerManager{
+ display: none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSubmit/lexSubmit.html b/force-app/main/default/lwc/lexSubmit/lexSubmit.html
new file mode 100644
index 0000000..b494fe1
--- /dev/null
+++ b/force-app/main/default/lwc/lexSubmit/lexSubmit.html
@@ -0,0 +1,7 @@
+<template>
+ <div class="submitHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ <lightning-button label="Show Toast" onclick={ShowToastEvent}></lightning-button>
+
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSubmit/lexSubmit.js b/force-app/main/default/lwc/lexSubmit/lexSubmit.js
new file mode 100644
index 0000000..f282667
--- /dev/null
+++ b/force-app/main/default/lwc/lexSubmit/lexSubmit.js
@@ -0,0 +1,68 @@
+/*
+ * @Description:
+ * @version:
+ * @Author: chen jing wu
+ * @Date: 2023-04-11 16:46:48
+ * @LastEditors: chen jing wu
+ * @LastEditTime: 2023-04-11 16:48:05
+ */
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import updateForSubmitButton from '@salesforce/apex/ReportController.updateForSubmitButton';
+import { updateRecord } from 'lightning/uiRecordApi';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+export default class LexSubmit extends LightningElement {
+ @api recordId;
+ IsLoading = true;
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback(){
+ this.submit();
+
+ }
+
+
+ showToast(msg,type) {
+ const event = new ShowToastEvent({
+ title: '',
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ }
+
+
+ updateRecordView(recordId) {
+ updateRecord({fields: { Id: recordId }});
+ }
+
+ submit(){
+ updateForSubmitButton({
+ recordId: this.recordId
+ }).then(result=>{
+ if(result){
+ this.showToast(result,"error");
+ }else{
+ this.updateRecordView(this.recordId);
+ this.showToast("鎻愪氦鎴愬姛","success");
+ }
+ this.IsLoading = false;
+ this.dispatchEvent(new CloseActionScreenEvent());
+ });
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSubmit/lexSubmit.js-meta.xml b/force-app/main/default/lwc/lexSubmit/lexSubmit.js-meta.xml
new file mode 100644
index 0000000..329e839
--- /dev/null
+++ b/force-app/main/default/lwc/lexSubmit/lexSubmit.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSubmitApprovalProcess/lexSubmitApprovalProcess.css b/force-app/main/default/lwc/lexSubmitApprovalProcess/lexSubmitApprovalProcess.css
new file mode 100644
index 0000000..af18c76
--- /dev/null
+++ b/force-app/main/default/lwc/lexSubmitApprovalProcess/lexSubmitApprovalProcess.css
@@ -0,0 +1,11 @@
+.Holder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+
+.container .uiContainerManager{
+ display : none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSubmitApprovalProcess/lexSubmitApprovalProcess.html b/force-app/main/default/lwc/lexSubmitApprovalProcess/lexSubmitApprovalProcess.html
new file mode 100644
index 0000000..404c915
--- /dev/null
+++ b/force-app/main/default/lwc/lexSubmitApprovalProcess/lexSubmitApprovalProcess.html
@@ -0,0 +1,5 @@
+<template>
+ <!-- <div class="Holder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div> -->
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSubmitApprovalProcess/lexSubmitApprovalProcess.js b/force-app/main/default/lwc/lexSubmitApprovalProcess/lexSubmitApprovalProcess.js
new file mode 100644
index 0000000..2a9ab34
--- /dev/null
+++ b/force-app/main/default/lwc/lexSubmitApprovalProcess/lexSubmitApprovalProcess.js
@@ -0,0 +1,101 @@
+import { LightningElement, track, wire,api } from 'lwc';
+import {CurrentPageReference,NavigationMixin} from 'lightning/navigation';
+import { CloseActionScreenEvent } from 'lightning/actions';
+import LightningConfirm from 'lightning/confirm';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+
+
+
+import applyPermission from '@salesforce/apex/TransferApplyController.applyPermission';
+import submitApply from '@salesforce/apex/TransferApplyWebService.submitApply';
+
+export default class lexSubmitApprovalProcess extends LightningElement {
+ @api recordId;
+ transferApplyPermission;
+ IsLoading=true;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(currentPageReference);
+
+ if(currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if(urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+
+ }
+ }
+ }
+
+ connectedCallback() {
+ console.log('this.transferApplyId:' + this.recordId);
+ applyPermission().then(result => {
+ console.log(result);
+ this.transferApplyPermission = result;
+ this.cancelSubmit();
+
+ }).catch( error =>{
+ console.log(error);
+ });
+ }
+
+ cancelSubmit(){
+ if (this.transferApplyPermission == false) {
+ this.showToast('','娌℃湁鎻愪氦鐢宠鐨勬潈闄�','warning');
+ } else{
+ LightningConfirm.open({
+ message: '涓�鏃︽彁浜ゆ璁板綍浠ュ緟鎵瑰噯锛屾牴鎹偍鐨勮缃偍鍙兘涓嶅啀鑳藉缂栬緫姝よ褰曟垨灏嗕粬浠庢壒鍑嗚繃绋嬩腑璋冨洖銆傛槸鍚︾户缁紵',
+ variant: 'headerless',
+
+ }).then(cancel=>{
+ if(cancel) {
+ submitApply({taId:this.recordId}).then(submitRes=>{
+ if(submitRes == '1'){
+ this.showToast('','鎻愪氦鎴愬姛','success');
+ window.location.href = window.location;
+ }else{
+ this.showToast("",submitRes,"warning");
+ }
+ this.IsLoading=false;
+ this.dispatchEvent(new CloseActionScreenEvent());
+ });
+ }
+ });
+
+ }
+ }
+
+ showToast(_title,_message,_variant) {
+ const event = new ShowToastEvent({
+ title: _title,
+ message:_message,
+ variant: _variant,
+ });
+ this.dispatchEvent(event);
+ }
+}
+
+//old js
+/*
+{!REQUIRESCRIPT('/soap/ajax/51.0/connection.js')}
+{!REQUIRESCRIPT('/soap/ajax/51.0/apex.js')}
+var result = sforce.connection.describeSObject('TransferApply__c');
+if (result.createable == 'false') {
+ alert('娌℃湁鎻愪氦鐢宠鐨勬潈闄�');
+}
+else{
+ if (confirm("涓�鏃︽彁浜ゆ璁板綍浠ュ緟鎵瑰噯锛屾牴鎹偍鐨勮缃偍鍙兘涓嶅啀鑳藉缂栬緫姝よ褰曟垨灏嗕粬浠庢壒鍑嗚繃绋嬩腑璋冨洖銆傛槸鍚︾户缁紵")) {
+ var rs = sforce.apex.execute("TransferApplyWebService","submitApply",{taId:'{!TransferApply__c.Id}'});
+ if(rs == '1'){
+ alert('鎻愪氦鎴愬姛');
+ window.location.href = window.location;
+ }
+ else{
+ alert(rs);
+ }
+ }
+}
+*/
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSubmitApprovalProcess/lexSubmitApprovalProcess.js-meta.xml b/force-app/main/default/lwc/lexSubmitApprovalProcess/lexSubmitApprovalProcess.js-meta.xml
new file mode 100644
index 0000000..4fe44a7
--- /dev/null
+++ b/force-app/main/default/lwc/lexSubmitApprovalProcess/lexSubmitApprovalProcess.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexSubmitApprovalProcess">
+ <apiVersion>51.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSubmitCompetitorReport/lexSubmitCompetitorReport.css b/force-app/main/default/lwc/lexSubmitCompetitorReport/lexSubmitCompetitorReport.css
new file mode 100644
index 0000000..4379b62
--- /dev/null
+++ b/force-app/main/default/lwc/lexSubmitCompetitorReport/lexSubmitCompetitorReport.css
@@ -0,0 +1,10 @@
+.submitHolder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+.container .uiContainerManager{
+ display: none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSubmitCompetitorReport/lexSubmitCompetitorReport.html b/force-app/main/default/lwc/lexSubmitCompetitorReport/lexSubmitCompetitorReport.html
new file mode 100644
index 0000000..9625dc2
--- /dev/null
+++ b/force-app/main/default/lwc/lexSubmitCompetitorReport/lexSubmitCompetitorReport.html
@@ -0,0 +1,6 @@
+<template>
+ <div class="submitHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ <lightning-button label="Show Toast" onclick={ShowToastEvent}></lightning-button>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSubmitCompetitorReport/lexSubmitCompetitorReport.js b/force-app/main/default/lwc/lexSubmitCompetitorReport/lexSubmitCompetitorReport.js
new file mode 100644
index 0000000..cff5fa6
--- /dev/null
+++ b/force-app/main/default/lwc/lexSubmitCompetitorReport/lexSubmitCompetitorReport.js
@@ -0,0 +1,74 @@
+/*
+ * @Description:
+ * @version:
+ * @Author: chen jing wu
+ * @Date: 2023-04-07 09:02:03
+ * @LastEditors: chen jing wu
+ * @LastEditTime: 2023-04-11 11:28:51
+ */
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { NavigationMixin } from 'lightning/navigation';
+import otherButtonInSubmitCompetitorReport from '@salesforce/apex/ReportController.updateForSubmitCompetitorReportButton';
+import { updateRecord } from 'lightning/uiRecordApi';
+import init from '@salesforce/apex/ReportController.initForSubmitCompetitorReportButton';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+export default class LexSubmitCompetitorReport extends LightningElement {
+ @api recordId;
+ IsLoading = true;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+
+ updateRecordView(recordId) {
+ updateRecord({fields: { Id: recordId }});
+ }
+
+ connectedCallback(){
+ init({
+ recordId: this.recordId
+ }).then(result=>{
+ this.submit();
+ });
+
+ }
+
+ showToast(msg,type) {
+ const event = new ShowToastEvent({
+ title: '',
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ }
+
+
+ submit(){
+ otherButtonInSubmitCompetitorReport({
+ recordId: this.recordId
+ }).then(result=>{
+ if(result){
+ this.showToast(result,"error");
+ }else{
+ this.showToast("鎻愪氦瀵规墜绔炰簤鎶ュ憡鎴愬姛","success")
+ this.updateRecordView(this.recordId);
+ }
+ this.IsLoading = false;
+ this.dispatchEvent(new CloseActionScreenEvent());
+ });
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSubmitCompetitorReport/lexSubmitCompetitorReport.js-meta.xml b/force-app/main/default/lwc/lexSubmitCompetitorReport/lexSubmitCompetitorReport.js-meta.xml
new file mode 100644
index 0000000..8b2c3d6
--- /dev/null
+++ b/force-app/main/default/lwc/lexSubmitCompetitorReport/lexSubmitCompetitorReport.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSubmitExtensionApprovalProcess/lexSubmitExtensionApprovalProcess.css b/force-app/main/default/lwc/lexSubmitExtensionApprovalProcess/lexSubmitExtensionApprovalProcess.css
new file mode 100644
index 0000000..ebb43d9
--- /dev/null
+++ b/force-app/main/default/lwc/lexSubmitExtensionApprovalProcess/lexSubmitExtensionApprovalProcess.css
@@ -0,0 +1,10 @@
+.exampleHolder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+.container .uiContainerManager{
+ display: none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSubmitExtensionApprovalProcess/lexSubmitExtensionApprovalProcess.html b/force-app/main/default/lwc/lexSubmitExtensionApprovalProcess/lexSubmitExtensionApprovalProcess.html
new file mode 100644
index 0000000..3eff9e8
--- /dev/null
+++ b/force-app/main/default/lwc/lexSubmitExtensionApprovalProcess/lexSubmitExtensionApprovalProcess.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="EquipmentRentalPDF" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSubmitExtensionApprovalProcess/lexSubmitExtensionApprovalProcess.js b/force-app/main/default/lwc/lexSubmitExtensionApprovalProcess/lexSubmitExtensionApprovalProcess.js
new file mode 100644
index 0000000..eefc389
--- /dev/null
+++ b/force-app/main/default/lwc/lexSubmitExtensionApprovalProcess/lexSubmitExtensionApprovalProcess.js
@@ -0,0 +1,76 @@
+import { LightningElement, track, wire, api } from 'lwc';
+import { CurrentPageReference,NavigationMixin } from 'lightning/navigation';
+import { CloseActionScreenEvent } from 'lightning/actions';
+
+import init from '@salesforce/apex/SubmitExtensionApprovalProcessController.init';
+import extension_approval_processCheck from '@salesforce/apex/RentalApplyWebService.extension_approval_processCheck'
+export default class lexSubmitExtensionApprovalProcess extends LightningElement {
+ @api
+ recordId;
+ IsLoading = true;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference){
+ if(currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if(urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback(){
+ init({
+ recordId:this.recordId
+ }).then(result=>{
+ console.log(result);
+ var today = new Date();
+ //杩藉姞澶囧搧鐢宠鐘舵�佺‘璁わ紝宸茬粡鎻愪氦杩囩殑鐢宠锛屼笉鑳介噸澶嶆彁浜tatus__c
+ if(result.ExtensionStatus == '濉啓瀹屾瘯' || result.ExtensionStatus == '鐢宠涓�') {
+ alert('璇风‘璁ゅ欢鏈熺敵璇风姸鎬侊紝宸茬粡鎻愪氦杩囩殑鐢宠锛屼笉鑳介噸澶嶆彁浜�');
+ return;
+ }
+ extension_approval_processCheck({rentalApplyId:this.recordId}).then( result =>{
+ if(result != '1'){
+ if(result == '2'){
+ //杩斿洖鍊间负2锛屽垽鏂叆鍙d负浠庡崟杩樻槸涓诲崟锛屽鏋滄槸浠庡崟锛岄偅涔堝氨闇�瑕佽烦鍘熸潵鐨勫崟涓欢鏈熼〉闈�
+ if(result.RootRentalApply == '' || result.RootRentalApply == null){
+ window.open("/apex/RentalApplyMultiPostpone?parentId=" + this.recordId);
+ }else {
+ window.open("/apex/RentalApplyExtensions?parentId=" + this.recordId);
+ }
+ }else{
+ alert(result);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return
+ }
+ }else{
+ if(result.demoPurpose2 == '鍗忚鍊熺敤'){
+ alert('璇峰湪[闄勪欢]鍐呬笂浼犳柊鐨勫悎鍚岄檮浠讹紝骞朵緷鎹悎鍚屽唴鏈熼檺杩涜鏃ユ湡濉啓锛屼箣鍚庢彁浜ゅ鎵�');
+ return;
+ }
+ if(result.AgreementBorrowingExtensionDate =='' || result.AgreementBorrowingExtensionDate == null){
+ alert('鍗忚鍊熺敤鐨勫欢鏈熺敵璇风殑銆愬崗璁�熺敤寤舵湡鏃ユ湡銆戜笉鑳戒负绌�');
+ return;
+ }
+ if(result.AgreementBorrowingExtensionDate <= result.ReturnDadelineFinal){
+ alert('鍗忚鍊熺敤鐨勫欢鏈熺敵璇风殑銆愬崗璁�熺敤寤舵湡鏃ユ湡銆戝繀椤诲ぇ浜庢渶鏂伴瀹氬綊杩樻棩');
+ return;
+ }
+ if(result.AgreementBorrowingExtensionDate <= today ){
+ alert('鍗忚鍊熺敤鐨勫欢鏈熺敵璇风殑銆愬崗璁�熺敤寤舵湡鏃ユ湡銆戝繀椤诲ぇ浜庝粖澶�');
+ return;
+ }
+ }
+ window.open("/apex/RentalApplyExtensions?parentId=" + this.recordId);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }).catch(err=>{
+ console.log('extension_approval_processCheckerr==='+err);
+ })
+ })
+ .catch(err=>{
+ console.log('error====>'+err);
+ })
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSubmitExtensionApprovalProcess/lexSubmitExtensionApprovalProcess.js-meta.xml b/force-app/main/default/lwc/lexSubmitExtensionApprovalProcess/lexSubmitExtensionApprovalProcess.js-meta.xml
new file mode 100644
index 0000000..e261be9
--- /dev/null
+++ b/force-app/main/default/lwc/lexSubmitExtensionApprovalProcess/lexSubmitExtensionApprovalProcess.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSubmitForApproval/lexSubmitForApproval.html b/force-app/main/default/lwc/lexSubmitForApproval/lexSubmitForApproval.html
new file mode 100644
index 0000000..d044dbb
--- /dev/null
+++ b/force-app/main/default/lwc/lexSubmitForApproval/lexSubmitForApproval.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="exampleHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSubmitForApproval/lexSubmitForApproval.js b/force-app/main/default/lwc/lexSubmitForApproval/lexSubmitForApproval.js
new file mode 100644
index 0000000..9de188b
--- /dev/null
+++ b/force-app/main/default/lwc/lexSubmitForApproval/lexSubmitForApproval.js
@@ -0,0 +1,71 @@
+import {
+ LightningElement,
+ wire,
+ api
+} from 'lwc';
+import {
+ CurrentPageReference
+} from "lightning/navigation";
+import {
+ CloseActionScreenEvent
+} from 'lightning/actions';
+import init from '@salesforce/apex/otherButtonMaintenanceContractCtl.init';
+import selectRecords from '@salesforce/apex/otherButtonMaintenanceContractCtl.selectRecords';
+
+export default class LexSubmitForApproval extends LightningElement {
+ @api recordId;
+ str;
+ IsLoading = true;
+ Id;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback() {
+ console.log(this.recordId);
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result);
+ if (result != null) {
+ this.IsLoading = false;
+ this.Id = result.Id;
+
+ this.SubmitForApproval();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ }).catch(error => {
+ console.log(error);
+ }).finally(() => {
+
+ });
+ }
+
+ // 鍏抽棴璇环/鍏抽棴缁
+ SubmitForApproval() {
+ var url = '';
+ selectRecords({
+ recordId: this.Id
+ }).then(result => {
+ console.log(result);
+ if (result.length > 0) {
+ url = "/apex/SubmitForApprovalPage?id=" + result[0].Id;
+ } else {
+ url = "/apex/SubmitForApprovalPage?mcId=" + this.Id;
+ }
+ window.open(url, '', 'height=350, width=600, top=200, left=350,location=no');
+ }).catch(error => {
+ console.log("error");
+ }).finally(() => {
+
+ });
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexSubmitForApproval/lexSubmitForApproval.js-meta.xml b/force-app/main/default/lwc/lexSubmitForApproval/lexSubmitForApproval.js-meta.xml
new file mode 100644
index 0000000..3392981
--- /dev/null
+++ b/force-app/main/default/lwc/lexSubmitForApproval/lexSubmitForApproval.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexTenderingAntiLogicButton/lexTenderingAntiLogicButton.html b/force-app/main/default/lwc/lexTenderingAntiLogicButton/lexTenderingAntiLogicButton.html
new file mode 100644
index 0000000..81a3516
--- /dev/null
+++ b/force-app/main/default/lwc/lexTenderingAntiLogicButton/lexTenderingAntiLogicButton.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="AntiLogicButton" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexTenderingAntiLogicButton/lexTenderingAntiLogicButton.js b/force-app/main/default/lwc/lexTenderingAntiLogicButton/lexTenderingAntiLogicButton.js
new file mode 100644
index 0000000..5df0406
--- /dev/null
+++ b/force-app/main/default/lwc/lexTenderingAntiLogicButton/lexTenderingAntiLogicButton.js
@@ -0,0 +1,65 @@
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import init from '@salesforce/apex/TenderingButtonController.initTenderingController';
+import ContraryLogicalDel from '@salesforce/apex/TenderWebService.ContraryLogicalDel';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+export default class LexTenderingAntiLogicButton extends LightningElement {
+ @api recordId;//褰撳墠杩欐潯鏁版嵁鐨刬d
+ id;//杩斿洖鍊肩殑id Tender_information__c鎷涙爣椤圭洰鐨刬d
+ IsLoading = true;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback(){
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ this.IsLoading = false;
+ this.id = result.Id;
+ this.AntiLogicButton();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }).catch(() => {
+
+ }).finally(() => {
+
+ });
+ }
+
+ //鍙嶉�昏緫鍒犻櫎
+ AntiLogicButton(){
+ ContraryLogicalDel({DTenId : this.id}).then(result =>{
+ console.log(result,'鎴愬姛涓庡惁');
+ if(result == 'OK'){
+ this.showToast("鍙嶉�昏緫鍒犻櫎鎴愬姛","success");
+ }
+ this.dispatchEvent(new CloseActionScreenEvent());
+ })
+ }
+
+ showToast(msg,type) {
+ const event = new ShowToastEvent({
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ }
+}
+
+
+// /var ContraryL = function(){
+// var DTenId = "{!Tender_information__c.Id}";//鍒犻櫎鐨勬嫑鎶曟爣
+// var rtn = sforce.apex.execute("TenderWebService", "ContraryLogicalDel", {DTenId : DTenId } );
+// //閲嶆柊鍔犺浇椤甸潰
+// window.location.reload();
+// }
+// ContraryL();
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexTenderingAntiLogicButton/lexTenderingAntiLogicButton.js-meta.xml b/force-app/main/default/lwc/lexTenderingAntiLogicButton/lexTenderingAntiLogicButton.js-meta.xml
new file mode 100644
index 0000000..2b7649d
--- /dev/null
+++ b/force-app/main/default/lwc/lexTenderingAntiLogicButton/lexTenderingAntiLogicButton.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexTenderingAttachmentButton/lexTenderingAttachmentButton.html b/force-app/main/default/lwc/lexTenderingAttachmentButton/lexTenderingAttachmentButton.html
new file mode 100644
index 0000000..edb0a0d
--- /dev/null
+++ b/force-app/main/default/lwc/lexTenderingAttachmentButton/lexTenderingAttachmentButton.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="AttachmentButton" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexTenderingAttachmentButton/lexTenderingAttachmentButton.js b/force-app/main/default/lwc/lexTenderingAttachmentButton/lexTenderingAttachmentButton.js
new file mode 100644
index 0000000..3c58a8d
--- /dev/null
+++ b/force-app/main/default/lwc/lexTenderingAttachmentButton/lexTenderingAttachmentButton.js
@@ -0,0 +1,54 @@
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import init from '@salesforce/apex/TenderingButtonController.initTenderingController';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+export default class lexTenderingAttachmentButton extends LightningElement {
+ @api recordId;//褰撳墠杩欐潯鏁版嵁鐨刬d
+ id;//杩斿洖鍊肩殑id Tender_information__c鎷涙爣椤圭洰鐨刬d
+ IsLoading = true;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback(){
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ this.IsLoading = false;
+ this.id = result.Id;
+ this.AttachmentButton();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }).catch(error => {
+ console.log("error"+error);
+ }).finally(() => {
+
+ });
+ }
+
+ //鏌ョ湅闄勪欢
+ AttachmentButton(){
+ window.open(`/apex/TenderInformationUploadPdf?id=${this.id}`);
+ }
+
+ showToast(msg,type) {
+ const event = new ShowToastEvent({
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ }
+}
+
+// var From= function(){
+// window.open( "/apex/TenderInformationUploadPdf?id={!URLENCODE(Tender_information__c.Id)}");
+// }
+// From();
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexTenderingAttachmentButton/lexTenderingAttachmentButton.js-meta.xml b/force-app/main/default/lwc/lexTenderingAttachmentButton/lexTenderingAttachmentButton.js-meta.xml
new file mode 100644
index 0000000..2b7649d
--- /dev/null
+++ b/force-app/main/default/lwc/lexTenderingAttachmentButton/lexTenderingAttachmentButton.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexTenderingCopyButton/lexTenderingCopyButton.html b/force-app/main/default/lwc/lexTenderingCopyButton/lexTenderingCopyButton.html
new file mode 100644
index 0000000..b8ea4f3
--- /dev/null
+++ b/force-app/main/default/lwc/lexTenderingCopyButton/lexTenderingCopyButton.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="CopyButton" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexTenderingCopyButton/lexTenderingCopyButton.js b/force-app/main/default/lwc/lexTenderingCopyButton/lexTenderingCopyButton.js
new file mode 100644
index 0000000..8a5b7ec
--- /dev/null
+++ b/force-app/main/default/lwc/lexTenderingCopyButton/lexTenderingCopyButton.js
@@ -0,0 +1,64 @@
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { NavigationMixin } from 'lightning/navigation';
+import init from '@salesforce/apex/TenderingButtonController.initTenderingController';
+import { updateRecord } from 'lightning/uiRecordApi';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+export default class Copy extends LightningElement {
+ @api recordId;//褰撳墠杩欐潯鏁版嵁鐨刬d
+ id;//杩斿洖鍊肩殑id Tender_information__c鎷涙爣椤圭洰鐨刬d
+ IsLoading = true;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ console.log(this.recordId,'id');
+ }
+ }
+ }
+
+
+ connectedCallback(){
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ if (result != null) {
+ this.IsLoading = false;
+ this.id = result.Id;
+ this.CopyButton();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ }).catch(error => {
+ console.log("error"+error);
+ }).finally(() => {
+
+ });
+ }
+ //澶嶅埗
+ CopyButton(){
+ window.location.href = '/' + this.id + '/e?newclone=1';
+ }
+
+
+ updateRecordView() {
+ updateRecord({fields: { Id: this.recordId }});
+ }
+
+ showToast(msg,type) {
+ console.log(msg,type);
+ const event = new ShowToastEvent({
+ // title: title,
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ }
+}
+
+
+// window.location.href = '/{!Tender_information__c.Id}/e?newclone=1';
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexTenderingCopyButton/lexTenderingCopyButton.js-meta.xml b/force-app/main/default/lwc/lexTenderingCopyButton/lexTenderingCopyButton.js-meta.xml
new file mode 100644
index 0000000..2b7649d
--- /dev/null
+++ b/force-app/main/default/lwc/lexTenderingCopyButton/lexTenderingCopyButton.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexTenderingEnquiryButton/lexTenderingEnquiryButton.html b/force-app/main/default/lwc/lexTenderingEnquiryButton/lexTenderingEnquiryButton.html
new file mode 100644
index 0000000..31d96b3
--- /dev/null
+++ b/force-app/main/default/lwc/lexTenderingEnquiryButton/lexTenderingEnquiryButton.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="EnquiryButton" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexTenderingEnquiryButton/lexTenderingEnquiryButton.js b/force-app/main/default/lwc/lexTenderingEnquiryButton/lexTenderingEnquiryButton.js
new file mode 100644
index 0000000..6aba49e
--- /dev/null
+++ b/force-app/main/default/lwc/lexTenderingEnquiryButton/lexTenderingEnquiryButton.js
@@ -0,0 +1,87 @@
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { NavigationMixin } from 'lightning/navigation';
+import init from '@salesforce/apex/TenderingButtonController.initTenderingController';
+import updateOpportunityInformation from '@salesforce/apex/UpdateTenderInformationBatch.updateOpportunityInformation';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+export default class lexTenderingEnquiryButton extends LightningElement {
+ @api recordId;//褰撳墠杩欐潯鏁版嵁鐨刬d
+ id;//杩斿洖鍊肩殑id Tender_information__c鎷涙爣椤圭洰鐨刬d
+ IsLoading = true;
+ isRelateProject;//鍒ゆ柇鏄惁鍙嶅簲
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback(){
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ if (result != null) {
+ this.IsLoading = false;
+ this.id = result.Id;
+ this.isRelateProject = result.isRelateProject;
+ this.EnquiryButton();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ }).catch(error => {
+ console.log("error"+error);
+ }).finally(() => {
+
+ });
+ }
+ //鎷涙爣椤圭洰 鍙嶅簲璇环鐘舵��
+ EnquiryButton(){
+ if(this.isRelateProject == "鍚�"){
+ this.showToast('鎷涙姇鏍囬」鐩笉鐩稿叧鍚庝笉鑳藉弽搴旇浠风姸鎬�!','error');
+ return;
+ }
+ var listss = [];
+ listss.push(this.id);
+ updateOpportunityInformation({TenderIdList : listss}).then(result=>{
+ if(result != 'OK'){
+ this.showToast(result,'error');
+ }else {
+ this.showToast('鍙嶆槧瀹屼簡','success');
+ }
+ })
+ }
+
+ showToast(msg,type) {
+ const event = new ShowToastEvent({
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+}
+
+// var foo = function(){
+// if('{!Tender_information__c.IsRelateProject__c}'== "鍚�"){
+// alert('鎷涙姇鏍囬」鐩笉鐩稿叧鍚庝笉鑳藉弽搴旇浠风姸鎬�!');
+// return;
+// }
+// var listss = [];
+// listss.push('{!Tender_information__c.Id}');
+// var rtn = sforce.apex.execute("UpdateTenderInformationBatch", "updateOpportunityInformation", {TenderIdList : listss } );
+
+// if(rtn != 'OK'){
+// alert(rtn);
+// }else {
+// alert('鍙嶆槧瀹屼簡');
+// }
+// //閲嶆柊鍔犺浇椤甸潰
+// window.location.reload();
+// }
+
+// foo();
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexTenderingEnquiryButton/lexTenderingEnquiryButton.js-meta.xml b/force-app/main/default/lwc/lexTenderingEnquiryButton/lexTenderingEnquiryButton.js-meta.xml
new file mode 100644
index 0000000..2b7649d
--- /dev/null
+++ b/force-app/main/default/lwc/lexTenderingEnquiryButton/lexTenderingEnquiryButton.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexTenderingHospitalButton/lexTenderingHospitalButton.html b/force-app/main/default/lwc/lexTenderingHospitalButton/lexTenderingHospitalButton.html
new file mode 100644
index 0000000..dc43ef6
--- /dev/null
+++ b/force-app/main/default/lwc/lexTenderingHospitalButton/lexTenderingHospitalButton.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="HospitalButton" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexTenderingHospitalButton/lexTenderingHospitalButton.js b/force-app/main/default/lwc/lexTenderingHospitalButton/lexTenderingHospitalButton.js
new file mode 100644
index 0000000..6999b54
--- /dev/null
+++ b/force-app/main/default/lwc/lexTenderingHospitalButton/lexTenderingHospitalButton.js
@@ -0,0 +1,69 @@
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import init from '@salesforce/apex/TenderingButtonController.initTenderingController';
+export default class lexTenderingHospitalButton extends LightningElement {
+ @api recordId;//褰撳墠杩欐潯鏁版嵁鐨刬d
+ id;//杩斿洖鍊肩殑id Tender_information__c鎷涙爣椤圭洰鐨刬d
+ name;//鎷涙爣椤圭洰鍚�
+ Environment_Url;//鏂板缓鍖婚櫌鍦板潃
+ IsLoading = true;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback(){
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result)
+ this.IsLoading = false;
+ this.id = result.Id;
+ this.name = result.name;
+ this.Environment_Url = result.Environment_Url
+ this.HospitalButton();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }).catch(error => {
+ console.log("error"+error);
+ }).finally(() => {
+
+ });
+ }
+
+ //鏂板缓鍖婚櫌
+ HospitalButton(){
+ var url = this.Environment_Url+'001/e?CF00N10000009I0o7='+encodeURIComponent(this.name)
+ +'&CF00N10000009I0o7_lkid='+encodeURIComponent(this.id)
+ +'&00N10000009HFQT='+encodeURIComponent('鎷涙爣椤圭洰')
+ +'&RecordType=01210000000QemG'
+ +'&retURL='+ encodeURIComponent(this.id);
+ console.log('url',url)
+ window.location.href = url;
+ }
+}
+
+
+// var foo = function() {
+
+// var TenderId = '{!Tender_information__c.Id}';
+// var Tendername = '{!Tender_information__c.Name}';
+// var HospitalSource= '鎷涙爣椤圭洰';
+
+// var url = '{!$Label.Environment_Url}'+'001/e?CF00N10000009I0o7='+encodeURIComponent(Tendername)
+// +'&CF00N10000009I0o7_lkid='+encodeURIComponent(TenderId)
+// +'&00N10000009HFQT='+encodeURIComponent(HospitalSource)
+
+// +'&RecordType=01210000000QemG'
+// +'&retURL='+ encodeURIComponent(TenderId);
+// window.top.location.href = url;
+
+// }
+// foo();
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexTenderingHospitalButton/lexTenderingHospitalButton.js-meta.xml b/force-app/main/default/lwc/lexTenderingHospitalButton/lexTenderingHospitalButton.js-meta.xml
new file mode 100644
index 0000000..2b7649d
--- /dev/null
+++ b/force-app/main/default/lwc/lexTenderingHospitalButton/lexTenderingHospitalButton.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexTenderingIntentionButton/lexTenderingIntentionButton.html b/force-app/main/default/lwc/lexTenderingIntentionButton/lexTenderingIntentionButton.html
new file mode 100644
index 0000000..8e46b4b
--- /dev/null
+++ b/force-app/main/default/lwc/lexTenderingIntentionButton/lexTenderingIntentionButton.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="IntentionButton" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexTenderingIntentionButton/lexTenderingIntentionButton.js b/force-app/main/default/lwc/lexTenderingIntentionButton/lexTenderingIntentionButton.js
new file mode 100644
index 0000000..49140bd
--- /dev/null
+++ b/force-app/main/default/lwc/lexTenderingIntentionButton/lexTenderingIntentionButton.js
@@ -0,0 +1,75 @@
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { NavigationMixin } from 'lightning/navigation';
+import init from '@salesforce/apex/TenderingButtonController.initTenderingController';
+import { updateRecord } from 'lightning/uiRecordApi';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+export default class lexTenderingIntentionButton extends LightningElement {
+ @api recordId;//褰撳墠杩欐潯鏁版嵁鐨刬d
+ id;//杩斿洖鍊肩殑id Tender_information__c鎷涙爣椤圭洰鐨刬d
+ IsLoading = true;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ console.log(this.recordId,'id');
+ }
+ }
+ }
+
+
+ connectedCallback(){
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ if (result != null) {
+ this.IsLoading = false;
+ this.id = result.Id;
+ this.IntentionButton();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ }).catch(error => {
+ console.log("error"+error);
+ }).finally(() => {
+
+ });
+ }
+
+ //鎷涙爣椤圭洰鏂板缓鎰忓悜
+ IntentionButton(){
+ // alert('濉啓澶卞崟鎶ュ憡璇风洿鎺ョ偣鍑绘嫑鏍囬〉闈€�愬け鍗曘�戞寜閽�');
+ this.showToast('濉啓澶卞崟鎶ュ憡璇风洿鎺ョ偣鍑绘嫑鏍囬〉闈€�愬け鍗曘�戞寜閽�','success');
+ var url = '/apex/NewAndEditLead?' + '00N10000009HKS5=' + this.id
+ + '&LeadSource=鎷涙爣缃�' + '&RecordTypeId=01210000000QiRf' + '&retURL=%2F' + this.id ;
+ window.open(url);
+ }
+
+
+ updateRecordView() {
+ updateRecord({fields: { Id: this.recordId }});
+ }
+
+ showToast(msg,type) {
+ console.log(msg,type);
+ const event = new ShowToastEvent({
+ // title: title,
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ }
+}
+
+
+// var foo = function(){
+// alert('濉啓澶卞崟鎶ュ憡璇风洿鎺ョ偣鍑绘嫑鏍囬〉闈€�愬け鍗曘�戞寜閽�');
+// var url = '/apex/NewAndEditLead?' + '00N10000009HKS5=' + '{!Tender_information__c.Id}'
+// + '&LeadSource=鎷涙爣缃�' + '&RecordTypeId=01210000000QiRf' + '&retURL=%2F' + '{!Tender_information__c.Id}' ;
+// window.open(url);
+// }
+// foo();
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexTenderingIntentionButton/lexTenderingIntentionButton.js-meta.xml b/force-app/main/default/lwc/lexTenderingIntentionButton/lexTenderingIntentionButton.js-meta.xml
new file mode 100644
index 0000000..2b7649d
--- /dev/null
+++ b/force-app/main/default/lwc/lexTenderingIntentionButton/lexTenderingIntentionButton.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexTenderingLogicButton/lexTenderingLogicButton.html b/force-app/main/default/lwc/lexTenderingLogicButton/lexTenderingLogicButton.html
new file mode 100644
index 0000000..e7eb872
--- /dev/null
+++ b/force-app/main/default/lwc/lexTenderingLogicButton/lexTenderingLogicButton.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="LogicButton" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexTenderingLogicButton/lexTenderingLogicButton.js b/force-app/main/default/lwc/lexTenderingLogicButton/lexTenderingLogicButton.js
new file mode 100644
index 0000000..8bc074b
--- /dev/null
+++ b/force-app/main/default/lwc/lexTenderingLogicButton/lexTenderingLogicButton.js
@@ -0,0 +1,49 @@
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import init from '@salesforce/apex/TenderingButtonController.initTenderingController';
+export default class Logic extends LightningElement {
+ @api recordId;//褰撳墠杩欐潯鏁版嵁鐨刬d
+ id;//杩斿洖鍊肩殑id Tender_information__c鎷涙爣椤圭洰鐨刬d
+ IsLoading = true;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+
+ connectedCallback(){
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ if (result != null) {
+ this.IsLoading = false;
+ this.id = result.Id;
+ this.LogicButton();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ }).catch(() => {
+
+ }).finally(() => {
+
+ });
+ }
+
+ //閫昏緫鍒犻櫎
+ LogicButton(){
+ window.open (`/apex/TenderDeletePagelwc?id=${this.id}`, '', 'height=350, width=600, top=200, left=350');
+ }
+}
+
+
+// function IfResponse(){
+// window.open ('/apex/TenderDeletePagelwc?id={!Tender_information__c.Id}', '', 'height=350, width=600, top=200, left=350');
+// }
+// IfResponse();
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexTenderingLogicButton/lexTenderingLogicButton.js-meta.xml b/force-app/main/default/lwc/lexTenderingLogicButton/lexTenderingLogicButton.js-meta.xml
new file mode 100644
index 0000000..2b7649d
--- /dev/null
+++ b/force-app/main/default/lwc/lexTenderingLogicButton/lexTenderingLogicButton.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexTenderingLostButton/lexTenderingLostButton.html b/force-app/main/default/lwc/lexTenderingLostButton/lexTenderingLostButton.html
new file mode 100644
index 0000000..e94a2ef
--- /dev/null
+++ b/force-app/main/default/lwc/lexTenderingLostButton/lexTenderingLostButton.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="LostButton" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexTenderingLostButton/lexTenderingLostButton.js b/force-app/main/default/lwc/lexTenderingLostButton/lexTenderingLostButton.js
new file mode 100644
index 0000000..a4576e1
--- /dev/null
+++ b/force-app/main/default/lwc/lexTenderingLostButton/lexTenderingLostButton.js
@@ -0,0 +1,108 @@
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import init from '@salesforce/apex/TenderingButtonController.initTenderingController';
+import sqlResult from '@salesforce/apex/TenderingButtonController.sqlResult';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+export default class lexTenderingLostButton extends LightningElement {
+ @api recordId;//褰撳墠杩欐潯鏁版嵁鐨刬d
+ id;//杩斿洖鍊肩殑id Tender_information__c鎷涙爣椤圭洰鐨刬d
+ status;//鐘舵��
+ profileId;//profileId id
+ IsLoading = true;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+
+ connectedCallback(){
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ this.IsLoading = false;
+ this.id = result.Id;
+ this.status = result.status;
+ this.profileId = result.profileId.slice(0,15);
+ this.LoseButton();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }).catch(error => {
+ console.log("error"+error);
+ }).finally(() => {
+
+ });
+ }
+
+ //澶卞崟
+ LoseButton(){
+ sqlResult({id: this.id}).then(result=>{
+ //绠�妗f潈闄� 2S1_閿�鍞尰闄㈡媴褰� 2S4_閿�鍞鐞嗚�� 绯荤粺绠$悊鍛�
+ if (this.profileId != '00e10000000xnp2' && this.profileId != '00e10000000xnpH' && this.profileId != '00e10000000Y3o5') {
+ this.showToast("鎮ㄦ病鏈夋潈闄愶紝鏃犳硶鍒涘缓璇环鎻愪氦澶卞崟銆�","error");
+ return;
+ }
+ // 鍒ゆ柇鍐呴儴纭鐘舵��
+ if(this.status == '01.寰呯‘璁�'|| this.status == '02.涓嶇浉鍏�'){
+ console.log('娌¤蛋鍚�');
+ this.showToast("鐘舵�佷负寰呯‘璁ゆ垨涓嶇浉鍏筹紝涓嶅彲浠ュ仛澶卞崟銆�","error");
+ return;
+ }
+ // 鍒ゆ柇鏄惁闇�瑕佹柊寤鸿浠�
+ if(this.status == '05.璇环涓�'|| this.status == '06.鎴愪氦' || this.status == '07.閮ㄥ垎鎴愪氦' || this.status == '08.澶卞崟' || result.length > 0){
+ if(confirm('姝ら」鐩凡鍏宠仈璇环锛岃纭疄鏄惁鏂板缓璇环鎻愪氦澶卞崟銆�')) {
+
+ }else{
+ return;
+ }
+ }
+ window.open(`/apex/TenderLostPage?id=${this.id}`,'','height=500,width=800,top=200,left=250,location=no');
+ })
+ }
+ showToast(msg,type) {
+ const event = new ShowToastEvent({
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ }
+}
+
+
+// var sql = "select id from Tender_Opportunity_Link__c where Tender_information__c='" + '{!Tender_information__c.Id}'+ "'";
+// var sqlResult = sforce.connection.query(sql);
+
+
+// //绠�妗f潈闄� 2S1_閿�鍞尰闄㈡媴褰� 2S4_閿�鍞鐞嗚�� 绯荤粺绠$悊鍛�
+// if ('{!$Profile.Id}' != '00e10000000xnp2' && '{!$Profile.Id}' != '00e10000000xnpH' && '{!$Profile.Id}' != '00e10000000Y3o5') {
+// alert("鎮ㄦ病鏈夋潈闄愶紝鏃犳硶鍒涘缓璇环鎻愪氦澶卞崟銆�");
+// return;
+// }
+
+// // 鍒ゆ柇鍐呴儴纭鐘舵��
+// if({!Tender_information__c.status__c == '01.寰呯‘璁�'|| Tender_information__c.status__c == '02.涓嶇浉鍏�'}){
+// alert('鐘舵�佷负寰呯‘璁ゆ垨涓嶇浉鍏筹紝涓嶅彲浠ュ仛澶卞崟銆�');
+// return;
+// }
+
+// // 鍒ゆ柇鏄惁闇�瑕佹柊寤鸿浠�
+// if({!Tender_information__c.status__c == '05.璇环涓�'|| Tender_information__c.status__c == '06.鎴愪氦' || Tender_information__c.status__c == '07.閮ㄥ垎鎴愪氦' || Tender_information__c.status__c == '08.澶卞崟'} || sqlResult.size > 0){
+// if(!confirm('姝ら」鐩凡鍏宠仈璇环锛岃纭疄鏄惁鏂板缓璇环鎻愪氦澶卞崟銆�')) {
+// return;
+// }
+// }
+
+// // 鍒ゆ柇鏄惁闇�瑕佹柊寤鸿浠�
+// //if(sqlResult.size > 0){
+// //if(!confirm('宸叉湁鍏宠仈璇环锛屾槸鍚﹀垱寤烘柊鐨勮浠枫��')) {
+// //return;
+// //}
+// //}
+
+// window.open('/apex/TenderLostPage?id={!Tender_information__c.Id}','','height=500,width=800,top=200,left=250,location=no');
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexTenderingLostButton/lexTenderingLostButton.js-meta.xml b/force-app/main/default/lwc/lexTenderingLostButton/lexTenderingLostButton.js-meta.xml
new file mode 100644
index 0000000..2b7649d
--- /dev/null
+++ b/force-app/main/default/lwc/lexTenderingLostButton/lexTenderingLostButton.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexTenderingNoStandardButton/lexTenderingNoStandardButton.html b/force-app/main/default/lwc/lexTenderingNoStandardButton/lexTenderingNoStandardButton.html
new file mode 100644
index 0000000..0f47a3a
--- /dev/null
+++ b/force-app/main/default/lwc/lexTenderingNoStandardButton/lexTenderingNoStandardButton.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="NoStandardButton" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexTenderingNoStandardButton/lexTenderingNoStandardButton.js b/force-app/main/default/lwc/lexTenderingNoStandardButton/lexTenderingNoStandardButton.js
new file mode 100644
index 0000000..67e16ce
--- /dev/null
+++ b/force-app/main/default/lwc/lexTenderingNoStandardButton/lexTenderingNoStandardButton.js
@@ -0,0 +1,72 @@
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { NavigationMixin } from 'lightning/navigation';
+import init from '@salesforce/apex/TenderingButtonController.initTenderingController';
+import { updateRecord } from 'lightning/uiRecordApi';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+export default class lexTenderingNoStandardButton extends LightningElement {
+ @api recordId;//褰撳墠杩欐潯鏁版嵁鐨刬d
+ id;//杩斿洖鍊肩殑id Tender_information__c鎷涙爣椤圭洰鐨刬d
+ opportunityNum;
+ IsLoading = true;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+
+ connectedCallback(){
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ this.IsLoading = false;
+ this.id = result.Id;
+ this.opportunityNum = result.opportunityNum;
+ this.NoStandardButton();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }).catch(error => {
+ console.log("error"+error);
+ }).finally(() => {
+ });
+ }
+
+ //鎷涙爣椤圭洰涓嶅簲鏍囩敵璇�
+ NoStandardButton(){
+ if(Number(this.opportunityNum) > 0) {
+ this.showToast('椤圭洰宸插叧鑱旇繃璇环锛岃鍒拌浠烽噷鍋氫笉搴旀爣鐢宠','error');
+ return;
+ }
+ window.open ('/apex/Bidding?id='+this.id, '', 'height=350, width=600, top=200, left=350,location=no');
+ }
+
+ showToast(msg,type) {
+ const event = new ShowToastEvent({
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ }
+}
+
+
+// function IfResponse(){
+
+// // 鍏宠仈璇环涔嬪悗涓嶈兘鍦ㄦ嫑鏍囬噷鐢宠涓嶅簲鏍�
+// if('{!Tender_information__c.OpportunityNum__c}' > 0) {
+// alert('椤圭洰宸插叧鑱旇繃璇环锛岃鍒拌浠烽噷鍋氫笉搴旀爣鐢宠');
+// return;
+// }
+
+
+// window.open ('/apex/Bidding?id={!Tender_information__c.Id}', '', 'height=350, width=600, top=200, left=350,location=no');
+
+// }
+// IfResponse();
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexTenderingNoStandardButton/lexTenderingNoStandardButton.js-meta.xml b/force-app/main/default/lwc/lexTenderingNoStandardButton/lexTenderingNoStandardButton.js-meta.xml
new file mode 100644
index 0000000..2b7649d
--- /dev/null
+++ b/force-app/main/default/lwc/lexTenderingNoStandardButton/lexTenderingNoStandardButton.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexTenderingNotarizeButton/lexTenderingNotarizeButton.html b/force-app/main/default/lwc/lexTenderingNotarizeButton/lexTenderingNotarizeButton.html
new file mode 100644
index 0000000..40c4113
--- /dev/null
+++ b/force-app/main/default/lwc/lexTenderingNotarizeButton/lexTenderingNotarizeButton.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="NotarizeButton" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexTenderingNotarizeButton/lexTenderingNotarizeButton.js b/force-app/main/default/lwc/lexTenderingNotarizeButton/lexTenderingNotarizeButton.js
new file mode 100644
index 0000000..069736c
--- /dev/null
+++ b/force-app/main/default/lwc/lexTenderingNotarizeButton/lexTenderingNotarizeButton.js
@@ -0,0 +1,133 @@
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import init from '@salesforce/apex/TenderingButtonController.initTenderingController';
+import sqlResult from '@salesforce/apex/TenderingButtonController.sqlResult';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+export default class lexTenderingNotarizeButton extends LightningElement {
+ @api recordId;//褰撳墠杩欐潯鏁版嵁鐨刬d
+ id;//杩斿洖鍊肩殑id Tender_information__c鎷涙爣椤圭洰鐨刬d
+ status;//鐘舵��
+ profileId;//profileId id
+ IsLoading = true;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+
+ connectedCallback(){
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result)
+ this.IsLoading = false;
+ this.id = result.Id;
+ this.status = result.status;
+ this.profileId = result.profileId.slice(0,15);
+ this.NotarizeButton();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }).catch(error => {
+ console.log("error"+error);
+ }).finally(() => {
+
+ });
+ }
+
+ //鐩稿叧鎬х‘璁�
+ NotarizeButton(){
+ if( this.ProfileId!= '00e1m000000MSci'
+ // 绯荤粺绠$悊鍛�
+ && this.ProfileId!= '00e10000000Y3o5'
+ // 2s6
+ && this.ProfileId!= '00e10000000xnpR' && this.ProfileId!= '00e10000000xyK6'
+ // 2s7
+ && this.ProfileId!= '00e10000000xnpW'
+ // 2s8
+ && this.ProfileId!= '00e10000000xnpb' && this.ProfileId!= '00e10000000xyKB'
+ // 2s9
+ && this.ProfileId!= '00e10000000a7NY'
+ // OBA1
+ && this.ProfileId!= '00e10000000s2fZ'
+ // OBA7
+ && this.ProfileId!= '00e10000000s3Jp'
+ ){
+ // alert("鍙湁鍔╃悊鎵嶈兘杩涜鐩稿叧鎬х‘璁わ紒");
+ this.showToast("鍙湁鍔╃悊鎵嶈兘杩涜鐩稿叧鎬х‘璁わ紒","error");
+ return;
+ }
+ if(this.status== '01.寰呯‘璁�' ||
+ this.status== '02.涓嶇浉鍏�' ||
+ this.status == '03.涓嶅簲鏍�' ||
+ this.status== '04.寰呭叧鑱旇浠�'
+ ){
+ window.open (`/apex/Relevance?id=${this.id}`, '', 'height=500, width=800, top=200, left=250,location=no');
+ }
+ else{
+ // alert('鍙湁01.寰呯‘璁ゆ椂闇�瑕佽繘琛岀浉鍏虫�х‘璁わ紒');
+ // alert('鍏宠仈璇环鍚庝笉鑳借繘琛岀浉鍏虫�х‘璁わ紒');
+ this.showToast("鍏宠仈璇环鍚庝笉鑳借繘琛岀浉鍏虫�х‘璁わ紒","error");
+ }
+
+ }
+ showToast(msg,type) {
+ const event = new ShowToastEvent({
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+}
+
+
+// function init(){
+// var ProfileId = "{!$Profile.Id}";
+// if( ProfileId!= '00e1m000000MSci'
+// // 绯荤粺绠$悊鍛�
+// && ProfileId!= '00e10000000Y3o5'
+// // 2s1
+// // && ProfileId!= '00e10000000xnp2' && ProfileId!= '00e10000000xzQ0'
+
+// // 2s6
+// && ProfileId!= '00e10000000xnpR' && ProfileId!= '00e10000000xyK6'
+
+// // 2s7
+// && ProfileId!= '00e10000000xnpW'
+
+// // 2s8
+// && ProfileId!= '00e10000000xnpb' && ProfileId!= '00e10000000xyKB'
+
+// // 2s9
+// && ProfileId!= '00e10000000a7NY'
+// // OBA1
+// && ProfileId!= '00e10000000s2fZ'
+// // OBA7
+// && ProfileId!= '00e10000000s3Jp'
+// )
+// {
+// alert("鍙湁鍔╃悊鎵嶈兘杩涜鐩稿叧鎬х‘璁わ紒");
+// return;
+// }
+
+
+// if('{!Tender_information__c.status__c}' == '01.寰呯‘璁�' ||
+// '{!Tender_information__c.status__c}' == '02.涓嶇浉鍏�' ||
+// '{!Tender_information__c.status__c}' == '03.涓嶅簲鏍�' ||
+// '{!Tender_information__c.status__c}' == '04.寰呭叧鑱旇浠�' )
+// {
+// window.open ('/apex/Relevance?id={!Tender_information__c.Id}', '', 'height=500, width=800, top=200, left=250,location=no');
+// }
+// else{
+// // alert('鍙湁01.寰呯‘璁ゆ椂闇�瑕佽繘琛岀浉鍏虫�х‘璁わ紒');
+// alert('鍏宠仈璇环鍚庝笉鑳借繘琛岀浉鍏虫�х‘璁わ紒');
+// }
+// }
+// init();
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexTenderingNotarizeButton/lexTenderingNotarizeButton.js-meta.xml b/force-app/main/default/lwc/lexTenderingNotarizeButton/lexTenderingNotarizeButton.js-meta.xml
new file mode 100644
index 0000000..2b7649d
--- /dev/null
+++ b/force-app/main/default/lwc/lexTenderingNotarizeButton/lexTenderingNotarizeButton.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexTenderingRelevancyButton/lexTenderingRelevancyButton.html b/force-app/main/default/lwc/lexTenderingRelevancyButton/lexTenderingRelevancyButton.html
new file mode 100644
index 0000000..71d8dbe
--- /dev/null
+++ b/force-app/main/default/lwc/lexTenderingRelevancyButton/lexTenderingRelevancyButton.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="RelevancyButton" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexTenderingRelevancyButton/lexTenderingRelevancyButton.js b/force-app/main/default/lwc/lexTenderingRelevancyButton/lexTenderingRelevancyButton.js
new file mode 100644
index 0000000..dbc1eac
--- /dev/null
+++ b/force-app/main/default/lwc/lexTenderingRelevancyButton/lexTenderingRelevancyButton.js
@@ -0,0 +1,115 @@
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { NavigationMixin } from 'lightning/navigation';
+import init from '@salesforce/apex/TenderingButtonController.initTenderingController';
+import { updateRecord } from 'lightning/uiRecordApi';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+
+export default class LexTenderingRelevancyButton extends LightningElement {
+ @api recordId;//褰撳墠杩欐潯鏁版嵁鐨刬d
+ id;//杩斿洖鍊肩殑id Tender_information__c鎷涙爣椤圭洰鐨刬d
+ ProfileId;
+ IsLoading = true;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback(){
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result);
+ this.IsLoading = false;
+ this.id = result.Id;
+ this.ProfileId = result.profileId.slice(0,15);
+ this.RelevancyButton();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }).catch(error => {
+ console.log("error"+error);
+ }).finally(() => {
+
+ });
+ }
+ //鎷涙爣椤圭洰 鍏宠仈宸叉湁璇环
+ RelevancyButton(){
+ if( this.ProfileId != '00e1m000000MSci'
+ // 绯荤粺绠$悊鍛�
+ && this.ProfileId != '00e10000000Y3o5'
+ // 2s1
+ && this.ProfileId != '00e10000000xnp2' && this.ProfileId != '00e10000000xzQ0'
+ // 2s2
+ && this.ProfileId != '00e10000000xnp7'&& this.ProfileId != '00e10000001220i'
+ // 2s4
+ && this.ProfileId != '00e10000000xnpH' && this.ProfileId != '00e10000000xzQA'
+ && this.ProfileId != '00e10000000hkas'
+ // 2s6
+ && this.ProfileId != '00e10000000xnpR' && this.ProfileId != '00e10000000xyK6'
+ // 2s7
+ && this.ProfileId != '00e10000000xnpW'
+ // 2M4 20221012 ljh SWAG-CK28WT
+ && this.ProfileId != '00e10000000Nb7i'
+ ){
+ // alert('鍙湁鎷呭綋鍜屽姪鐞嗘墠鑳藉叧鑱旇浠凤紒');
+ this.showToast('鍙湁鎷呭綋鍜屽姪鐞嗘墠鑳藉叧鑱旇浠�','error');
+ return;
+ }
+
+ window.open ('/apex/Enquiry?id='+this.recordId, '_blank');
+ }
+
+ // this.showToast(result,'success');
+ // this.showToast('椤圭洰宸插叧鑱旇繃璇环锛岃鍒拌浠烽噷鍋氫笉搴旀爣鐢宠','error');
+ showToast(msg,type) {
+ const event = new ShowToastEvent({
+ // title: title,
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ }
+}
+
+// function RelateOpp(){
+
+// var ProfileId = "{!$Profile.Id}";
+// if( ProfileId!= '00e1m000000MSci'
+// // 绯荤粺绠$悊鍛�
+// && ProfileId!= '00e10000000Y3o5'
+// // 2s1
+// && ProfileId!= '00e10000000xnp2' && ProfileId!= '00e10000000xzQ0'
+
+// // 2s2
+// && ProfileId!= '00e10000000xnp7'&& ProfileId!= '00e10000001220i'
+
+// // 2s4
+// && ProfileId!= '00e10000000xnpH' && ProfileId!= '00e10000000xzQA'
+
+// && ProfileId!= '00e10000000hkas'
+
+// // 2s6
+// && ProfileId!= '00e10000000xnpR' && ProfileId!= '00e10000000xyK6'
+
+// // 2s7
+// && ProfileId!= '00e10000000xnpW'
+// // 2M4 20221012 ljh SWAG-CK28WT
+// && ProfileId!= '00e10000000Nb7i'
+// ){
+// alert('鍙湁鎷呭綋鍜屽姪鐞嗘墠鑳藉叧鑱旇浠凤紒');
+// return;
+// }
+
+
+// url = window.location.pathname;
+// url = url.substring(url.lastIndexOf('/') + 1, url.length);
+// window.open ('/apex/Enquiry?id='+url, '_blank');
+// }
+// RelateOpp();
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexTenderingRelevancyButton/lexTenderingRelevancyButton.js-meta.xml b/force-app/main/default/lwc/lexTenderingRelevancyButton/lexTenderingRelevancyButton.js-meta.xml
new file mode 100644
index 0000000..2b7649d
--- /dev/null
+++ b/force-app/main/default/lwc/lexTenderingRelevancyButton/lexTenderingRelevancyButton.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexTenderingUsedAttachmentButton/lexTenderingUsedAttachmentButton.html b/force-app/main/default/lwc/lexTenderingUsedAttachmentButton/lexTenderingUsedAttachmentButton.html
new file mode 100644
index 0000000..40c4113
--- /dev/null
+++ b/force-app/main/default/lwc/lexTenderingUsedAttachmentButton/lexTenderingUsedAttachmentButton.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="NotarizeButton" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexTenderingUsedAttachmentButton/lexTenderingUsedAttachmentButton.js b/force-app/main/default/lwc/lexTenderingUsedAttachmentButton/lexTenderingUsedAttachmentButton.js
new file mode 100644
index 0000000..ad4fa58
--- /dev/null
+++ b/force-app/main/default/lwc/lexTenderingUsedAttachmentButton/lexTenderingUsedAttachmentButton.js
@@ -0,0 +1,54 @@
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import init from '@salesforce/apex/TenderingButtonController.initTenderingController';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+export default class lexTenderingUsedAttachmentButton extends LightningElement {
+ @api recordId;//褰撳墠杩欐潯鏁版嵁鐨刬d
+ id;//杩斿洖鍊肩殑id Tender_information__c鎷涙爣椤圭洰鐨刬d
+ IsLoading = true;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback(){
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ this.IsLoading = false;
+ this.id = result.Id;
+ this.AttachmentButton();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }).catch(error => {
+ console.log("error"+error);
+ }).finally(() => {
+
+ });
+ }
+
+ //鏌ョ湅闄勪欢(鏃�)
+ AttachmentButton(){
+ window.open(`/apex/QLMAttachmentPreview?parentId=${this.id}`);
+ }
+
+ showToast(msg,type) {
+ const event = new ShowToastEvent({
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ }
+}
+
+// var From= function(){
+// window.open( "/apex/QLMAttachmentPreview?parentId={!URLENCODE(Tender_information__c.Id)}");
+// }
+// From();
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexTenderingUsedAttachmentButton/lexTenderingUsedAttachmentButton.js-meta.xml b/force-app/main/default/lwc/lexTenderingUsedAttachmentButton/lexTenderingUsedAttachmentButton.js-meta.xml
new file mode 100644
index 0000000..2b7649d
--- /dev/null
+++ b/force-app/main/default/lwc/lexTenderingUsedAttachmentButton/lexTenderingUsedAttachmentButton.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexTerminalMaintenance/lexTerminalMaintenance.html b/force-app/main/default/lwc/lexTerminalMaintenance/lexTerminalMaintenance.html
new file mode 100644
index 0000000..aaa4cbd
--- /dev/null
+++ b/force-app/main/default/lwc/lexTerminalMaintenance/lexTerminalMaintenance.html
@@ -0,0 +1,6 @@
+<template>
+ <div class="toReportHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ <lightning-button label="Show Toast" onclick={ShowToastEvent}></lightning-button>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexTerminalMaintenance/lexTerminalMaintenance.js b/force-app/main/default/lwc/lexTerminalMaintenance/lexTerminalMaintenance.js
new file mode 100644
index 0000000..2d3938b
--- /dev/null
+++ b/force-app/main/default/lwc/lexTerminalMaintenance/lexTerminalMaintenance.js
@@ -0,0 +1,88 @@
+import {
+ LightningElement,
+ wire,
+ api
+} from 'lwc';
+import {
+ CurrentPageReference
+} from "lightning/navigation";
+import {
+ CloseActionScreenEvent
+} from 'lightning/actions';
+import init from '@salesforce/apex/buttonMaintenanceContractEstimateCtl.init';
+import updateMaintenanceContract from '@salesforce/apex/buttonMaintenanceContractEstimateCtl.updateMaintenanceContract';
+import {
+ ShowToastEvent
+} from 'lightning/platformShowToastEvent';
+
+export default class LexTerminalMaintenance extends LightningElement {
+ @api recordId;
+ str;
+ IsLoading = true;
+ Id;
+ ProcessStatusC;
+ sessionId;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback() {
+ console.log(this.recordId);
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result);
+ if (result != null) {
+ this.IsLoading = false;
+ this.Id = result.Id;
+ this.ProcessStatusC = result.ProcessStatusC;
+ this.sessionId = result.sessionId;
+ this.Terminal();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ }).catch(error => {
+ console.log(error);
+ })
+ }
+
+ //涓
+ Terminal() {
+ // sforce.connection.sessionId = this.sessionId;
+ if (this.ProcessStatusC == "鑽夋涓�" ||
+ this.ProcessStatusC == "涓嶆壒鍑�" ||
+ this.ProcessStatusC == "鎵瑰噯"
+ ) {
+ updateMaintenanceContract({
+ recordId: this.Id
+ }).then(result => {
+ this.ShowToastEvent("璇ョ淮淇悎鍚屾姤浠蜂腑姝簡锛�", "success");
+ // alert("璇ョ淮淇悎鍚屾姤浠蜂腑姝簡锛�")
+ window.location.reload();
+
+ }).catch(error => {
+ console.log(error);
+ })
+ } else {
+ this.ShowToastEvent("璇ョ淮淇悎鍚屾姤浠疯繕鍦ㄥ鎵逛腑 鎴� 宸茬粡涓锛屼笉鑳戒腑姝紒", "error");
+ // alert("璇ョ淮淇悎鍚屾姤浠疯繕鍦ㄥ鎵逛腑 鎴� 宸茬粡涓锛屼笉鑳戒腑姝紒")
+ }
+ }
+
+ // 寮圭獥
+ ShowToastEvent(msg, type) {
+ const event = new ShowToastEvent({
+ title: '',
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexTerminalMaintenance/lexTerminalMaintenance.js-meta.xml b/force-app/main/default/lwc/lexTerminalMaintenance/lexTerminalMaintenance.js-meta.xml
new file mode 100644
index 0000000..3392981
--- /dev/null
+++ b/force-app/main/default/lwc/lexTerminalMaintenance/lexTerminalMaintenance.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexTopInQueue/lexTopInQueue.css b/force-app/main/default/lwc/lexTopInQueue/lexTopInQueue.css
new file mode 100644
index 0000000..635bc6c
--- /dev/null
+++ b/force-app/main/default/lwc/lexTopInQueue/lexTopInQueue.css
@@ -0,0 +1,22 @@
+.outerBorderCss{
+ border: 1px solid #D4D4D4;
+ border-radius : 5px;
+ border-top : 3px solid #565959;
+}
+.borderCss{
+ border: 1px solid #D4D4D4;
+ border-radius : 5px;
+ margin-bottom : 7px;
+ border-top : 3px solid #565959;
+}
+.headerDorderCss{
+ border-top: 1px solid #565959;
+ border-bottom: 1px solid #D4D4D4;
+ padding:3px;
+}
+.centerCss{
+ text-align: center;
+}
+.centerCss .left{
+ margin-left: 100px;
+}/* sample css file */
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexTopInQueue/lexTopInQueue.html b/force-app/main/default/lwc/lexTopInQueue/lexTopInQueue.html
new file mode 100644
index 0000000..49a10f7
--- /dev/null
+++ b/force-app/main/default/lwc/lexTopInQueue/lexTopInQueue.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="sisToOPDHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexTopInQueue/lexTopInQueue.js b/force-app/main/default/lwc/lexTopInQueue/lexTopInQueue.js
new file mode 100644
index 0000000..ca3dd20
--- /dev/null
+++ b/force-app/main/default/lwc/lexTopInQueue/lexTopInQueue.js
@@ -0,0 +1,49 @@
+import { LightningElement, track, wire, api } from 'lwc';
+import { CurrentPageReference,NavigationMixin } from 'lightning/navigation';
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { encodeDefaultFieldValues } from 'lightning/pageReferenceUtils';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+
+import queueTop from '@salesforce/apex/ApplyJsCtl.queueTop';
+export default class lexTopInQueue extends LightningElement {
+
+ @api recordId;
+ IsLoading = true;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference){
+ if(currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if(urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback(){
+ queueTop({
+ applyId: this.recordId
+ }).then(res=>{
+ if(res == 'Success'){
+ const evt = new ShowToastEvent({
+ title : '缃《鎴愬姛',
+ message: '',
+ variant: 'success'
+ });
+ this.dispatchEvent(evt);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }else{
+ const evterr = new ShowToastEvent({
+ title : res,
+ message: '',
+ variant: 'error'
+ });
+ this.dispatchEvent(evterr);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ }).catch(err=>{
+ this.dispatchEvent(new CloseActionScreenEvent());
+ })
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexTopInQueue/lexTopInQueue.js-meta.xml b/force-app/main/default/lwc/lexTopInQueue/lexTopInQueue.js-meta.xml
new file mode 100644
index 0000000..74849f3
--- /dev/null
+++ b/force-app/main/default/lwc/lexTopInQueue/lexTopInQueue.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexOCMSubmit">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexTransferApplyPDF/lexTransferApplyPDF.css b/force-app/main/default/lwc/lexTransferApplyPDF/lexTransferApplyPDF.css
new file mode 100644
index 0000000..af18c76
--- /dev/null
+++ b/force-app/main/default/lwc/lexTransferApplyPDF/lexTransferApplyPDF.css
@@ -0,0 +1,11 @@
+.Holder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+
+.container .uiContainerManager{
+ display : none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexTransferApplyPDF/lexTransferApplyPDF.html b/force-app/main/default/lwc/lexTransferApplyPDF/lexTransferApplyPDF.html
new file mode 100644
index 0000000..2688153
--- /dev/null
+++ b/force-app/main/default/lwc/lexTransferApplyPDF/lexTransferApplyPDF.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="Holder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexTransferApplyPDF/lexTransferApplyPDF.js b/force-app/main/default/lwc/lexTransferApplyPDF/lexTransferApplyPDF.js
new file mode 100644
index 0000000..c41b11e
--- /dev/null
+++ b/force-app/main/default/lwc/lexTransferApplyPDF/lexTransferApplyPDF.js
@@ -0,0 +1,92 @@
+import { LightningElement, track, wire,api } from 'lwc';
+import {CurrentPageReference,NavigationMixin} from 'lightning/navigation';
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+
+
+
+import transferApplyPDF from '@salesforce/apex/TransferApplyController.transferApplyPDF';
+export default class lexTransferApplyPDF extends LightningElement {
+ @api recordId;
+ transferApplyPDFRes;
+ IsLoading=true;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(currentPageReference);
+
+ if(currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if(urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+
+ }
+ }
+ }
+
+ connectedCallback() {
+ console.log('this.transferApplyId:' + this.recordId);
+ transferApplyPDF({
+ transferApplyId : this.recordId
+ }).then(result => {
+ console.log(result);
+ this.transferApplyPDFRes = result;
+ this.cancelSubmit().then(res=>{
+ this.IsLoading=false;
+ this.dispatchEvent(new CloseActionScreenEvent());
+ });
+
+ }).catch( error =>{
+ console.log(error);
+ });
+ }
+ async cancelSubmit(){
+ let records = new Array();
+ records = this.transferApplyPDFRes;
+ var size =records.length;
+ if(size>0){
+ var length = size%10 ==0? size/10 : parseInt(size/10) +1;
+ for(var i =0;i<length;i++){
+ window.open('/apex/TransferApplyPDF?raid='+this.recordId+'&page=' + i);
+ }
+ }else{
+ this.showToast('','褰撳墠鐨勭敵璇峰崟涓病鏈夊凡鎵瑰噯澶囧搧銆�','warning');
+ }
+ }
+
+ showToast(_title,_message,_variant) {
+ const event = new ShowToastEvent({
+ title: _title,
+ message:_message,
+ variant: _variant,
+ });
+ this.dispatchEvent(event);
+ }
+
+}
+
+//old js'
+/*
+{!RequireScript("/soap/ajax/51.0/connection.js")}
+{!RequireScript("/soap/ajax/51.0/apex.js")}
+var foo = function() {
+
+ var sql = "select Id from TransferApplySummary__c where TransferApply__c = '{!TransferApply__c.Id}' and ApprovalDetails__c > 0 and TAS_Status__c != '鍙栨秷'";
+ //Yi_StockDown__c->ApprovalDetails__c 20210805 ljh SFDC-C56D3K 宸蹭笅鏋�->宸叉壒鍑�
+ var sqlResult = sforce.connection.query(sql);
+ var records = sqlResult.getArray("records");
+ var size =records.length;
+ if(size>0){
+ var length = size%10 ==0? size/10 : parseInt(size/10) +1;
+ for(var i =0;i<length;i++){
+ window.open('/apex/TransferApplyPDF?raid={!TransferApply__c.Id}&page=' + i);
+ }
+ }else{
+ alert('褰撳墠鐨勭敵璇峰崟涓病鏈夊凡鎵瑰噯澶囧搧銆�');
+ }
+}
+foo();
+*/
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexTransferApplyPDF/lexTransferApplyPDF.js-meta.xml b/force-app/main/default/lwc/lexTransferApplyPDF/lexTransferApplyPDF.js-meta.xml
new file mode 100644
index 0000000..0a37c91
--- /dev/null
+++ b/force-app/main/default/lwc/lexTransferApplyPDF/lexTransferApplyPDF.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexTransferApplyPDF">
+ <apiVersion>51.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexUploadToRecognitionModel/lexUploadToRecognitionModel.html b/force-app/main/default/lwc/lexUploadToRecognitionModel/lexUploadToRecognitionModel.html
new file mode 100644
index 0000000..87f391a
--- /dev/null
+++ b/force-app/main/default/lwc/lexUploadToRecognitionModel/lexUploadToRecognitionModel.html
@@ -0,0 +1,6 @@
+<template>
+ <div class="exampleHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ <lightning-button label="Show Toast" onclick={ShowToastEvent}></lightning-button>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexUploadToRecognitionModel/lexUploadToRecognitionModel.js b/force-app/main/default/lwc/lexUploadToRecognitionModel/lexUploadToRecognitionModel.js
new file mode 100644
index 0000000..6e22dc1
--- /dev/null
+++ b/force-app/main/default/lwc/lexUploadToRecognitionModel/lexUploadToRecognitionModel.js
@@ -0,0 +1,133 @@
+import {
+ LightningElement,
+ wire,
+ api
+} from 'lwc';
+import {
+ CurrentPageReference
+} from "lightning/navigation";
+import {
+ CloseActionScreenEvent
+} from 'lightning/actions';
+import init from '@salesforce/apex/otherButtonMaintenanceContractCtl.init';
+import updateColunm from '@salesforce/apex/MaintenanceContractSetColunmWebService.updateColunm';
+import up2sap from '@salesforce/apex/MaintenanceContractWebService.up2sap';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+
+export default class LexUploadToRecognitionModel extends LightningElement {
+ @api recordId;
+ str;
+ IsLoading = true;
+ Id;
+ ContractQuotationOrNotC;
+ oldIsRecognitionModelC;
+ MaintenanceContractNoC;
+ uploadToRMTimeC;
+ uploadToSapTimeC;
+ PaymentPlanSumFirstC;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback() {
+ console.log(this.recordId);
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result);
+ if (result != null) {
+ this.IsLoading = false;
+ this.Id = result.Id;
+ this.ContractQuotationOrNotC = result.ContractQuotationOrNotC;
+ this.oldIsRecognitionModelC = result.oldIsRecognitionModelC;
+ this.MaintenanceContractNoC = result.MaintenanceContractNoC;
+ this.uploadToSapTimeC = result.uploadToSapTimeC;
+ this.uploadToRMTimeC = result.uploadToRMTimeC;
+ this.PaymentPlanSumFirstC = result.PaymentPlanSumFirstC;
+
+ this.uploadToRecognitionModel();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ }).catch(error => {
+ console.log(error);
+ }).finally(() => {
+
+ });
+ }
+
+ // 涓婁紶璁ゆ鍚堝悓
+ uploadToRecognitionModel() {
+ if (this.ContractQuotationOrNotC == '杩樻病鍋氭姤浠�') {
+ this.ShowToastEvent("鎮ㄨ繕娌℃湁鍋氬悎鍚屾姤浠凤紝涓嶈兘涓婁紶璁ゆ鍚堝悓銆�", "error")
+ // alert("鎮ㄨ繕娌℃湁鍋氬悎鍚屾姤浠凤紝涓嶈兘涓婁紶璁ゆ鍚堝悓銆�");
+ } else if (this.MaintenanceContractNoC == undefined) {
+ this.ShowToastEvent('鍚堝悓鍙风爜涓虹┖锛屼笉鑳戒笂浼犺娆惧悎鍚屻��', "error")
+ // alert('鍚堝悓鍙风爜涓虹┖锛屼笉鑳戒笂浼犺娆惧悎鍚屻��');
+ } else if (this.uploadToSapTimeC != undefined) {
+ this.ShowToastEvent('宸茬粡涓婁紶SAP锛屼笉鑳藉啀娆′笂浼犺娆惧悎鍚屻��', "error")
+ // alert('宸茬粡涓婁紶SAP锛屼笉鑳藉啀娆′笂浼犺娆惧悎鍚屻��');
+ } else if (this.uploadToRMTimeC != undefined) {
+ this.ShowToastEvent('宸茬粡涓婁紶璁ゆ鍚堝悓锛屼笉鑳藉啀娆′笂浼犺娆惧悎鍚屻��', "error")
+ // alert('宸茬粡涓婁紶璁ゆ鍚堝悓锛屼笉鑳藉啀娆′笂浼犺娆惧悎鍚屻��');
+ } else {
+ if (!this.oldIsRecognitionModelC) {
+ this.ShowToastEvent('缁忛攢鍟嗕负绌烘垨缁忛攢鍟嗕笉鏄厛娆惧璞★紝涓嶉渶瑕佷笂浼犺娆惧悎鍚屻��', "error")
+ // alert('缁忛攢鍟嗕负绌烘垨缁忛攢鍟嗕笉鏄厛娆惧璞★紝涓嶉渶瑕佷笂浼犺娆惧悎鍚屻��');
+ } else if (this.PaymentPlanSumFirstC == undefined) {
+ this.ShowToastEvent('绗竴娆¤鍒掍粯娆鹃噾棰濅笉鑳戒负绌恒��', "error")
+ // alert('绗竴娆¤鍒掍粯娆鹃噾棰濅笉鑳戒负绌恒��');
+ } else {
+ if (!confirm('璇风‘璁ゆ槸鍚﹁涓婁紶璁ゆ鍚堝悓銆�')) {
+ return;
+ }
+
+ updateColunm({
+ mcid: this.Id
+ }).then(result => {
+ console.log(result);
+ if (result != '1') {
+ this.ShowToastEvent('涓婁紶璁ゆ鍚堝悓澶辫触,鍥犱负 鏉ュ勾鍚堝悓鐩稿叧淇℃伅淇敼澶辫触', "error")
+ // alert('涓婁紶璁ゆ鍚堝悓澶辫触,鍥犱负 鏉ュ勾鍚堝悓鐩稿叧淇℃伅淇敼澶辫触');
+ location.href = "/" + this.Id;
+ }
+ }).catch(error => {
+ console.log(error);
+ })
+
+ up2sap({
+ mcid: this.Id
+ }).then(rtn => {
+ console.log(rtn);
+ if (rtn == '1') {
+ this.ShowToastEvent("涓婁紶璁ゆ鍚堝悓鎴愬姛", "success")
+ // alert("涓婁紶璁ゆ鍚堝悓鎴愬姛");
+ location.href = "/" + this.Id;
+ } else {
+ this.ShowToastEvent(rtn, "error")
+ // alert(rtn);
+ }
+ }).catch(error => {
+ console.log(error);
+ })
+ }
+ }
+ }
+
+ // 寮圭獥
+ ShowToastEvent(msg, type) {
+ const event = new ShowToastEvent({
+ title: '',
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexUploadToRecognitionModel/lexUploadToRecognitionModel.js-meta.xml b/force-app/main/default/lwc/lexUploadToRecognitionModel/lexUploadToRecognitionModel.js-meta.xml
new file mode 100644
index 0000000..3392981
--- /dev/null
+++ b/force-app/main/default/lwc/lexUploadToRecognitionModel/lexUploadToRecognitionModel.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexUploadToSap/lexUploadToSap.html b/force-app/main/default/lwc/lexUploadToSap/lexUploadToSap.html
new file mode 100644
index 0000000..87f391a
--- /dev/null
+++ b/force-app/main/default/lwc/lexUploadToSap/lexUploadToSap.html
@@ -0,0 +1,6 @@
+<template>
+ <div class="exampleHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ <lightning-button label="Show Toast" onclick={ShowToastEvent}></lightning-button>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexUploadToSap/lexUploadToSap.js b/force-app/main/default/lwc/lexUploadToSap/lexUploadToSap.js
new file mode 100644
index 0000000..5bd9188
--- /dev/null
+++ b/force-app/main/default/lwc/lexUploadToSap/lexUploadToSap.js
@@ -0,0 +1,155 @@
+import {
+ LightningElement,
+ wire,
+ api
+} from 'lwc';
+import {
+ CurrentPageReference
+} from "lightning/navigation";
+import {
+ CloseActionScreenEvent
+} from 'lightning/actions';
+import init from '@salesforce/apex/otherButtonMaintenanceContractCtl.init';
+import updateColunm from '@salesforce/apex/MaintenanceContractSetColunmWebService.updateColunm';
+import updateFirstContract from '@salesforce/apex/updateFirstServiceContractWebService.updateFirstContract';
+import Check_plan from '@salesforce/apex/MaintenanceContractWebService.Check_plan';
+import up2sap from '@salesforce/apex/MaintenanceContractWebService.up2sap';
+import {
+ ShowToastEvent
+} from 'lightning/platformShowToastEvent';
+
+export default class LexUploadToSap extends LightningElement {
+ @api recordId;
+ str;
+ IsLoading = true;
+ MCApprovalStatusC;
+ MaintenanceContractNoC;
+ uploadToSapTimeC;
+ oldIsRecognitionModelC;
+ uploadToRMTimeC;
+ IsRecognitionModelTrueC;
+ Id;
+ URFContractFC;
+ urfFlag;
+ rtn1;
+ rtn;
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback() {
+ console.log(this.recordId);
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result);
+ if (result != null) {
+ this.IsLoading = false;
+ this.MCApprovalStatusC = result.MCApprovalStatusC;
+ this.MaintenanceContractNoC = result.MaintenanceContractNoC;
+ this.uploadToSapTimeC = result.uploadToSapTimeC;
+ this.oldIsRecognitionModelC = result.oldIsRecognitionModelC;
+ this.uploadToRMTimeC = result.uploadToRMTimeC;
+ this.IsRecognitionModelTrueC = result.IsRecognitionModelTrueC;
+ this.Id = result.Id;
+ this.URFContractFC = result.URFContractFC;
+
+ this.uploadToSap();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ }).catch(error => {
+ console.log(error);
+ }).finally(() => {
+
+ });
+ }
+
+ // 涓婁紶SAP
+ uploadToSap() {
+ if (this.MCApprovalStatusC != 'Pass') {
+ this.ShowToastEvent("鍚堝悓澶嶆牳鎵瑰噯鍚庢墠鍙互涓婁紶SAP銆�", "error")
+ // alert("鍚堝悓澶嶆牳鎵瑰噯鍚庢墠鍙互涓婁紶SAP銆�");
+ } else if (this.MaintenanceContractNoC == undefined) {
+ this.ShowToastEvent('缁翠慨鍚堝悓绠$悊缂栫爜涓虹┖锛屼笉鑳戒笂浼燬AP銆�', "error")
+ // alert('缁翠慨鍚堝悓绠$悊缂栫爜涓虹┖锛屼笉鑳戒笂浼燬AP銆�');
+ } else if (this.uploadToSapTimeC != undefined) {
+ this.ShowToastEvent('宸茬粡涓婁紶SAP锛屼笉鑳介噸澶嶄笂浼犮��', "error")
+ // alert('宸茬粡涓婁紶SAP锛屼笉鑳介噸澶嶄笂浼犮��');
+ } else {
+ if (this.oldIsRecognitionModelC) {
+ if (this.uploadToRMTimeC == undefined) {
+ this.ShowToastEvent('褰撳墠缁翠慨鍚堝悓鐨勭粡閿�鍟嗘槸鍏堟瀵硅薄锛岄渶瑕佸厛銆愪笂浼犺娆惧悎鍚屻�戯紝鐒跺悗瀹屾垚璁ゆ浠ュ悗鎵嶈兘涓婁紶SAP銆�', "error")
+ // alert('褰撳墠缁翠慨鍚堝悓鐨勭粡閿�鍟嗘槸鍏堟瀵硅薄锛岄渶瑕佸厛銆愪笂浼犺娆惧悎鍚屻�戯紝鐒跺悗瀹屾垚璁ゆ浠ュ悗鎵嶈兘涓婁紶SAP銆�');
+ return;
+ } else {
+ if (!this.IsRecognitionModelTrueC) {
+ this.ShowToastEvent('褰撳墠缁翠慨鍚堝悓娌℃湁瀹屾垚璁ゆ锛屼笉鑳戒笂浼燬AP銆�', "error")
+ // alert('褰撳墠缁翠慨鍚堝悓娌℃湁瀹屾垚璁ゆ锛屼笉鑳戒笂浼燬AP銆�');
+ return;
+ }
+ }
+ }
+ updateColunm({
+ mcid: this.Id
+ }).then(result => {
+ if (result != '1') {
+ this.ShowToastEvent('涓婁紶SAP澶辫触,鍥犱负 鏉ュ勾鍚堝悓鐩稿叧淇℃伅淇敼澶辫触', "error")
+ // alert('涓婁紶SAP澶辫触,鍥犱负 鏉ュ勾鍚堝悓鐩稿叧淇℃伅淇敼澶辫触');
+ }
+ });
+ updateFirstContract({
+ mcid: this.Id
+ }).then(result => {
+ if (result != '1') {
+ this.ShowToastEvent(result, "error")
+ // alert(result);
+ }
+ });
+ this.urfFlag = this.URFContractFC;
+ this.rtn1 = '1';
+ this.rtn = '1';
+ if (this.urfFlag == 'false') {
+ Check_plan({
+ mcidList: this.Id
+ }).then(result => {
+ this.rtn1 = result;
+ });
+ }
+ if (this.rtn1 == '1') {
+ up2sap({
+ mcid: this.Id
+ }).then(result => {
+ this.rtn = result;
+ });
+ if (this.rtn == '1') {
+ this.ShowToastEvent("涓婁紶SAP鎴愬姛", "success")
+ // alert("涓婁紶SAP鎴愬姛");
+ window.location.replace("https://ocsm--partial.sandbox.lightning.force.com/lightning/r/Maintenance_Contract__c/" + this.recordId + "/view");
+ } else {
+ this.ShowToastEvent(this.rtn, "error")
+ // alert(this.rtn);
+ }
+ } else {
+ this.ShowToastEvent(this.rtn1, "error")
+ // alert(this.rtn1);
+ }
+ }
+ }
+
+ // 寮圭獥
+ ShowToastEvent(msg, type) {
+ const event = new ShowToastEvent({
+ title: '',
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexUploadToSap/lexUploadToSap.js-meta.xml b/force-app/main/default/lwc/lexUploadToSap/lexUploadToSap.js-meta.xml
new file mode 100644
index 0000000..3392981
--- /dev/null
+++ b/force-app/main/default/lwc/lexUploadToSap/lexUploadToSap.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexVOCAnswer/lexVOCAnswer.css b/force-app/main/default/lwc/lexVOCAnswer/lexVOCAnswer.css
new file mode 100644
index 0000000..f2237d1
--- /dev/null
+++ b/force-app/main/default/lwc/lexVOCAnswer/lexVOCAnswer.css
@@ -0,0 +1,10 @@
+.answerHolder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+.container .uiContainerManager{
+ display: none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexVOCAnswer/lexVOCAnswer.html b/force-app/main/default/lwc/lexVOCAnswer/lexVOCAnswer.html
new file mode 100644
index 0000000..c79d866
--- /dev/null
+++ b/force-app/main/default/lwc/lexVOCAnswer/lexVOCAnswer.html
@@ -0,0 +1,7 @@
+<template>
+ <div class="answerHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ <lightning-button label="Show Toast" onclick={ShowToastEvent}></lightning-button>
+
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexVOCAnswer/lexVOCAnswer.js b/force-app/main/default/lwc/lexVOCAnswer/lexVOCAnswer.js
new file mode 100644
index 0000000..99cc31c
--- /dev/null
+++ b/force-app/main/default/lwc/lexVOCAnswer/lexVOCAnswer.js
@@ -0,0 +1,90 @@
+/*
+ * @Description:
+ * @version:
+ * @Author: chen jing wu
+ * @Date: 2023-03-27 14:05:59
+ * @LastEditors: chen jing wu
+ * @LastEditTime: 2023-04-11 11:30:45
+ */
+import { LightningElement, wire, track, api } from "lwc";
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from "lightning/actions";
+import { NavigationMixin } from "lightning/navigation";
+import init from "@salesforce/apex/ReportController.initForVOCAnswerButton";
+import updateForVOCAnswerButton from "@salesforce/apex/ReportController.updateForVOCAnswerButton";
+import { updateRecord } from "lightning/uiRecordApi";
+import { ShowToastEvent } from "lightning/platformShowToastEvent";
+export default class LexVOCAnswer extends LightningElement {
+ @api recordId;
+ status;
+ Isloading = true;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback() {
+ console.log(this.recordId);
+ init({
+ recordId: this.recordId,
+ })
+ .then((result) => {
+ console.log(result);
+ if (result != null) {
+ this.status = result.status;
+ this.update();
+ }
+ })
+ .catch((error) => {
+ console.log("error");
+ console.log(error);
+ });
+ //window.location.replace("https://ocsm--partial.sandbox.lightning.force.com/lightning/r/Report__c/" + this.recordId + "/view");
+ }
+
+ showToast(msg, type) {
+ const event = new ShowToastEvent({
+ title: "",
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ }
+
+ updateRecordView(recordId) {
+ updateRecord({ fields: { Id: recordId } });
+ }
+
+ update() {
+ if (this.status != "宸插垎閰�") {
+ this.showToast("涓嶆槸宸插垎閰嶄笉鑳界偣鍑�", "error");
+ return;
+ }
+ updateForVOCAnswerButton({
+ recordId: this.recordId
+ }).then(result => {
+ if (result) {
+ this.showToast(result,"error");
+ } else {
+ this.showToast("鎴愬姛", "success");
+ this.updateRecordView(this.recordId);
+ }
+ this.Isloading = false;
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }).catch(error=>{
+ console.log(error);
+ });
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexVOCAnswer/lexVOCAnswer.js-meta.xml b/force-app/main/default/lwc/lexVOCAnswer/lexVOCAnswer.js-meta.xml
new file mode 100644
index 0000000..3392981
--- /dev/null
+++ b/force-app/main/default/lwc/lexVOCAnswer/lexVOCAnswer.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexVOCCheck/lexVOCCheck.css b/force-app/main/default/lwc/lexVOCCheck/lexVOCCheck.css
new file mode 100644
index 0000000..c068424
--- /dev/null
+++ b/force-app/main/default/lwc/lexVOCCheck/lexVOCCheck.css
@@ -0,0 +1,10 @@
+.checkHolder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+.container .uiContainerManager{
+ display: none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexVOCCheck/lexVOCCheck.html b/force-app/main/default/lwc/lexVOCCheck/lexVOCCheck.html
new file mode 100644
index 0000000..592cc85
--- /dev/null
+++ b/force-app/main/default/lwc/lexVOCCheck/lexVOCCheck.html
@@ -0,0 +1,6 @@
+<template>
+ <div class="checkHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ <lightning-button label="Show Toast" onclick={ShowToastEvent}></lightning-button>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexVOCCheck/lexVOCCheck.js b/force-app/main/default/lwc/lexVOCCheck/lexVOCCheck.js
new file mode 100644
index 0000000..edccdf5
--- /dev/null
+++ b/force-app/main/default/lwc/lexVOCCheck/lexVOCCheck.js
@@ -0,0 +1,108 @@
+import UserInfo_Owner from '@salesforce/apex/TaskFeedbackController.UserInfo_Owner';
+import { api, wire,LightningElement } from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import init from '@salesforce/apex/ReportController.initForVOCCheckButton';
+import VOCCheck from '@salesforce/apex/ReportController.updateForVOCCheckButton';
+import { updateRecord } from 'lightning/uiRecordApi';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+
+export default class LexVOCCheck extends LightningElement {
+
+ @api recordId;
+ status;
+ isVOC;
+ personId;
+ profileId;
+ Isloading = true;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+
+
+ connectedCallback(){
+ console.log(this.recordId);
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result);
+ if (result != null) {
+
+ this.status = result.status;
+ this.isVOC = result.isVOC;
+ this.personId = result.personId;
+ this.profileId = result.profileId;
+ console.log(this.status);
+ this.check();
+ //window.location.replace("https://ocsm--partial.sandbox.lightning.force.com/lightning/r/Report__c/" + this.recordId + "/view");
+ }
+ }).catch(error => {
+ console.log("error");
+ console.log(error);
+ });
+ }
+
+
+ updateRecordView(recordId) {
+ updateRecord({fields: { Id: recordId }});
+ }
+
+ showToast(msg, type) {
+ const event = new ShowToastEvent({
+ title: "",
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ }
+
+ check (){
+ // 闄嗚儨锛岃儭杩畨锛岀郴缁熺鐞嗗憳鍙偣(闇�瑕佽皟鏁�)
+ if (UserInfo_Owner.Id != "00510000000gWAE" && UserInfo_Owner.Id != "00510000004reg2" && this.profileId != "00e10000000Y3o5AAC") {
+ this.showToast("浣犳病鏈夊垽瀹歏OC鐨勬潈闄�","error");
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ if (this.status != "璺熻繘涓�") {
+ this.showToast("涓嶆槸璺熻繘涓笉鑳界偣鍑�","error");
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ if (this.isVOC == undefined) {
+ this.showToast("蹇呴』閫夋嫨鏄惁VOC","error");
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ VOCCheck(
+ {
+ recordId:this.recordId,
+ isVOC:this.isVOC,
+ personId:this.personId
+ }
+ ).then(result =>{
+ if(result){
+ this.showToast(result,"error");
+ }else{
+ this.showToast("鎴愬姛","success");
+ this.updateRecordView(this.recordId);
+ }
+ this.Isloading = false;
+ this.dispatchEvent(new CloseActionScreenEvent());
+ });
+
+ //location.reload();
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexVOCCheck/lexVOCCheck.js-meta.xml b/force-app/main/default/lwc/lexVOCCheck/lexVOCCheck.js-meta.xml
new file mode 100644
index 0000000..3392981
--- /dev/null
+++ b/force-app/main/default/lwc/lexVOCCheck/lexVOCCheck.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexVOCConfirm/lexVOCConfirm.css b/force-app/main/default/lwc/lexVOCConfirm/lexVOCConfirm.css
new file mode 100644
index 0000000..68704c6
--- /dev/null
+++ b/force-app/main/default/lwc/lexVOCConfirm/lexVOCConfirm.css
@@ -0,0 +1,10 @@
+.confirmHolder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+.container .uiContainerManager{
+ display: none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexVOCConfirm/lexVOCConfirm.html b/force-app/main/default/lwc/lexVOCConfirm/lexVOCConfirm.html
new file mode 100644
index 0000000..fd0bc74
--- /dev/null
+++ b/force-app/main/default/lwc/lexVOCConfirm/lexVOCConfirm.html
@@ -0,0 +1,6 @@
+<template>
+ <div class="confirmHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ <lightning-button label="Show Toast" onclick={ShowToastEvent}></lightning-button>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexVOCConfirm/lexVOCConfirm.js b/force-app/main/default/lwc/lexVOCConfirm/lexVOCConfirm.js
new file mode 100644
index 0000000..1f3ffdf
--- /dev/null
+++ b/force-app/main/default/lwc/lexVOCConfirm/lexVOCConfirm.js
@@ -0,0 +1,105 @@
+/*
+ * @Description:
+ * @version:
+ * @Author: chen jing wu
+ * @Date: 2023-03-27 14:08:56
+ * @LastEditors: chen jing wu
+ * @LastEditTime: 2023-04-11 11:33:01
+ */
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { NavigationMixin } from 'lightning/navigation';
+import init from '@salesforce/apex/ReportController.initForVOCConfirmButton';
+import updateForVOCConfirmButton from '@salesforce/apex/ReportController.updateForVOCConfirmButton';
+import { updateRecord } from 'lightning/uiRecordApi';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+export default class LexVOCConfirm extends LightningElement {
+ @api recordId;
+ status;
+ VOCSatisfy;
+ VOCSatisfy1;
+ Isloading = true;
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+
+
+
+ connectedCallback(){
+ console.log(this.recordId);
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result);
+ if (result != null) {
+ this.status = result.status;
+ this.VOCSatisfy = result.Satisfy;
+ this.VOCSatisfy1 = result.Satisfy1;
+ console.log(this.VOCSatisfy);
+ console.log(this.VOCSatisfy1);
+ console.log(this.status);
+ this.update();
+ }
+ }).catch(error => {
+ console.log("error");
+ console.log(error);
+ });
+ //window.location.replace("https://ocsm--partial.sandbox.lightning.force.com/lightning/r/Report__c/" + this.recordId + "/view");
+ }
+
+ updateRecordView(recordId) {
+ updateRecord({fields: { Id: recordId }});
+ }
+
+ showToast(msg,type) {
+ const event = new ShowToastEvent({
+ title: '',
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ }
+
+
+ update(){
+ if (this.status != "宸插洖绛�") {
+ this.showToast("涓嶆槸宸插洖绛斾笉鑳界偣鍑�","error");
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ if (this.VOCSatisfy == undefined) {
+ this.showToast("璇烽�夋嫨鏄惁婊℃剰","error");
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ updateForVOCConfirmButton({
+ recordId: this.recordId,
+ Satisfy: this.VOCSatisfy,
+ Satisfy1: this.VOCSatisfy1
+ }).then(result=>{
+ if(result){
+ this.showToast(result,"error");
+ }else{
+ this.updateRecordView(this.recordId);
+ this.showToast("鎴愬姛","success");
+ }
+ this.Isloading = false;
+ this.dispatchEvent(new CloseActionScreenEvent());
+ });
+
+
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexVOCConfirm/lexVOCConfirm.js-meta.xml b/force-app/main/default/lwc/lexVOCConfirm/lexVOCConfirm.js-meta.xml
new file mode 100644
index 0000000..8b2c3d6
--- /dev/null
+++ b/force-app/main/default/lwc/lexVOCConfirm/lexVOCConfirm.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexVOCFinish/lexVOCFinish.css b/force-app/main/default/lwc/lexVOCFinish/lexVOCFinish.css
new file mode 100644
index 0000000..83026d9
--- /dev/null
+++ b/force-app/main/default/lwc/lexVOCFinish/lexVOCFinish.css
@@ -0,0 +1,10 @@
+.vocFinishHolder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+.container .uiContainerManager{
+ display: none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexVOCFinish/lexVOCFinish.html b/force-app/main/default/lwc/lexVOCFinish/lexVOCFinish.html
new file mode 100644
index 0000000..308b1e2
--- /dev/null
+++ b/force-app/main/default/lwc/lexVOCFinish/lexVOCFinish.html
@@ -0,0 +1,6 @@
+<template>
+ <div class="vocFinishHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ <lightning-button label="Show Toast" onclick={ShowToastEvent}></lightning-button>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexVOCFinish/lexVOCFinish.js b/force-app/main/default/lwc/lexVOCFinish/lexVOCFinish.js
new file mode 100644
index 0000000..edcb0f1
--- /dev/null
+++ b/force-app/main/default/lwc/lexVOCFinish/lexVOCFinish.js
@@ -0,0 +1,96 @@
+/*
+ * @Description:
+ * @version:
+ * @Author: chen jing wu
+ * @Date: 2023-03-27 14:11:17
+ * @LastEditors: chen jing wu
+ * @LastEditTime: 2023-04-11 11:34:01
+ */
+import { api, wire,LightningElement } from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import init from '@salesforce/apex/ReportController.initForVOCFinishButton';
+import update from '@salesforce/apex/ReportController.updateForVOCFinishButton';
+import UserInfo_Owner from '@salesforce/apex/TaskFeedbackController.UserInfo_Owner';
+import { updateRecord } from 'lightning/uiRecordApi';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+export default class LexVOCFinish extends LightningElement {
+ @api recordId;
+ status;
+ IsLoading = true;
+ profileId;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback(){
+ console.log(this.recordId);
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result);
+ if (result != null) {
+ this.status = result.status;
+ this.profileId = result.profileId;
+ this.VOCFinish();
+ }
+ }).catch(error => {
+ console.log("error");
+ console.log(error);
+ });
+ //window.location.replace("https://ocsm--partial.sandbox.lightning.force.com/lightning/r/Report__c/" + this.recordId + "/view");
+ //this.updateRecordView(this.recordId);
+ }
+
+ showToast(msg,type) {
+ const event = new ShowToastEvent({
+ title: '',
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ }
+
+
+ updateRecordView(recordId) {
+ updateRecord({fields: { Id: recordId }});
+ }
+
+ VOCFinish () {
+ if (UserInfo_Owner.Id != "00510000000gWAE" && UserInfo_Owner.Id != "00510000004reg2" && this.profileId != "00e10000000Y3o5AAC") {
+ this.showToast("浣犳病鏈夊畬姣昖OC鐨勬潈闄�","error");
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ if (this.status != "缁撴灉纭瀹屾瘯") {
+ this.showToast("涓嶆槸缁撴灉纭瀹屾瘯涓嶈兘鐐瑰嚮","error");
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ update({
+ recordId: this.recordId
+ }).then(result =>{
+ if(result){
+ this.showToast(result,"error");
+ }else{
+ this.showToast("鎴愬姛","success");
+ this.updateRecordView(this.recordId);
+ }
+ this.IsLoading = false;
+ this.dispatchEvent(new CloseActionScreenEvent());
+ });
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexVOCFinish/lexVOCFinish.js-meta.xml b/force-app/main/default/lwc/lexVOCFinish/lexVOCFinish.js-meta.xml
new file mode 100644
index 0000000..3392981
--- /dev/null
+++ b/force-app/main/default/lwc/lexVOCFinish/lexVOCFinish.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexVOCSubmit/lexVOCSubmit.css b/force-app/main/default/lwc/lexVOCSubmit/lexVOCSubmit.css
new file mode 100644
index 0000000..4f256c3
--- /dev/null
+++ b/force-app/main/default/lwc/lexVOCSubmit/lexVOCSubmit.css
@@ -0,0 +1,10 @@
+.vocSubmitHolder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+.container .uiContainerManager{
+ display: none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexVOCSubmit/lexVOCSubmit.html b/force-app/main/default/lwc/lexVOCSubmit/lexVOCSubmit.html
new file mode 100644
index 0000000..cb84330
--- /dev/null
+++ b/force-app/main/default/lwc/lexVOCSubmit/lexVOCSubmit.html
@@ -0,0 +1,6 @@
+<template>
+ <div class="vocSubmitHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ <lightning-button label="Show Toast" onclick={ShowToastEvent}></lightning-button>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexVOCSubmit/lexVOCSubmit.js b/force-app/main/default/lwc/lexVOCSubmit/lexVOCSubmit.js
new file mode 100644
index 0000000..62acb75
--- /dev/null
+++ b/force-app/main/default/lwc/lexVOCSubmit/lexVOCSubmit.js
@@ -0,0 +1,91 @@
+/*
+ * @Description:
+ * @version:
+ * @Author: chen jing wu
+ * @Date: 2023-03-27 13:39:23
+ * @LastEditors: chen jing wu
+ * @LastEditTime: 2023-04-11 11:35:31
+ */
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import init from '@salesforce/apex/ReportController.initForVOCSubmitButton';
+import VOCSubmit from '@salesforce/apex/ReportController.updateForVOCSubmitButton';
+import UserInfo_Owner from '@salesforce/apex/TaskFeedbackController.UserInfo_Owner';
+import { updateRecord } from 'lightning/uiRecordApi';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+export default class LexVOCSubmit extends LightningElement {
+ @api recordId;
+ createdById;
+ status;
+ IsLoading = true;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback () {
+ console.log(this.recordId);
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result);
+ if (result != null) {
+ this.status = result.status;
+ this.createdById = result.createdById;
+ this.Submit();
+ //window.location.replace("https://ocsm--partial.sandbox.lightning.force.com/lightning/r/Report__c/" + this.recordId + "/view");
+ }
+ }).catch(error => {
+ console.log("error");
+ console.log(error);
+ });
+ //this.updateRecordView(this.recordId);
+ }
+
+ updateRecordView(recordId) {
+ updateRecord({fields: { Id: recordId }});
+ }
+
+ showToast(msg,type) {
+ const event = new ShowToastEvent({
+ title: '',
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ }
+
+ Submit () {
+ if (this.status != "鑽夋涓�") {
+ this.showToast("涓嶆槸鑽夋涓笉鑳界偣鍑�","error");
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ VOCSubmit({
+ recordId: this.recordId,
+ createdById: this.createdById
+ }).then(result =>{
+ if(result){
+ this.showToast(result,"error");
+ }else{
+ this.showToast("鎴愬姛","success");
+ this.updateRecordView(this.recordId);
+ }
+ this.IsLoading = false;
+ this.dispatchEvent(new CloseActionScreenEvent());
+ });
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexVOCSubmit/lexVOCSubmit.js-meta.xml b/force-app/main/default/lwc/lexVOCSubmit/lexVOCSubmit.js-meta.xml
new file mode 100644
index 0000000..329e839
--- /dev/null
+++ b/force-app/main/default/lwc/lexVOCSubmit/lexVOCSubmit.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexXinSearchVisitorPlace/lexXinSearchVisitorPlace.css b/force-app/main/default/lwc/lexXinSearchVisitorPlace/lexXinSearchVisitorPlace.css
new file mode 100644
index 0000000..28fc4ad
--- /dev/null
+++ b/force-app/main/default/lwc/lexXinSearchVisitorPlace/lexXinSearchVisitorPlace.css
@@ -0,0 +1,5 @@
+.slds-popover.slds-nubbin_left{
+ position: absolute;
+ left:0rem;
+ top:-1.3rem;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexXinSearchVisitorPlace/lexXinSearchVisitorPlace.html b/force-app/main/default/lwc/lexXinSearchVisitorPlace/lexXinSearchVisitorPlace.html
new file mode 100644
index 0000000..77461fa
--- /dev/null
+++ b/force-app/main/default/lwc/lexXinSearchVisitorPlace/lexXinSearchVisitorPlace.html
@@ -0,0 +1,17 @@
+<!--
+ * @Description:
+ * @version:
+ * @Author: chen jing wu
+ * @Date: 2023-04-19 10:07:12
+ * @LastEditors: chen jing wu
+ * @LastEditTime: 2023-04-19 13:36:27
+-->
+<template>
+ <section if:true={IsOverLimit} class="slds-popover slds-nubbin_left" role="dialog">
+ <span class="result_name" style="color:red;">妫�绱㈢粨鏋滆秴杩囦簡50浠�</span><span class="result_id" style="display:none"></span><br/>
+ </section>
+ <template for:each={results} for:item="result">
+ <span class="result_name" key={result.Id}>{result.Name}</span>
+ <span class="result_id" style="display:none" key={result.Id}>{result.Id}</span>
+ </template>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexXinSearchVisitorPlace/lexXinSearchVisitorPlace.js b/force-app/main/default/lwc/lexXinSearchVisitorPlace/lexXinSearchVisitorPlace.js
new file mode 100644
index 0000000..6341c7c
--- /dev/null
+++ b/force-app/main/default/lwc/lexXinSearchVisitorPlace/lexXinSearchVisitorPlace.js
@@ -0,0 +1,38 @@
+/*
+ * @Description:
+ * @version:
+ * @Author: chen jing wu
+ * @Date: 2023-04-19 10:07:12
+ * @LastEditors: chen jing wu
+ * @LastEditTime: 2023-04-20 09:38:37
+ */
+import { LightningElement,wire } from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import getIsOverLimit from '@salesforce/apex/lexXinSearchVisitorPlaceController.getIsOverLimit';
+import getResults from '@salesforce/apex/lexXinSearchVisitorPlaceController.getResults';
+import search from '@salesforce/apex/lexXinSearchVisitorPlaceController.search';
+export default class LexXinSearchVisitorPlace extends LightningElement {
+ IsOverLimit;
+ results;
+ @wire(CurrentPageReference) pageRef;
+ getParamValue(param){
+ return new URLSearchParams(this.pageRef.state.c_-param).get(param);
+ }
+
+ connectedCallback(){
+ const queryParam = this.getParamValue('q');
+ const reporterStateParam = this.getParamValue('r');
+ console.log("start");
+ search({
+ query: queryParam,
+ reporterState: reporterStateParam
+ }).then(()=>{
+ getIsOverLimit().then(result=>{
+ this.IsOverLimit = result;
+ });
+ getResults().then(result=>{
+ this.results = result;
+ });
+ });
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexXinSearchVisitorPlace/lexXinSearchVisitorPlace.js-meta.xml b/force-app/main/default/lwc/lexXinSearchVisitorPlace/lexXinSearchVisitorPlace.js-meta.xml
new file mode 100644
index 0000000..329e839
--- /dev/null
+++ b/force-app/main/default/lwc/lexXinSearchVisitorPlace/lexXinSearchVisitorPlace.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexYanshoudanRequest/lexYanshoudanRequest.html b/force-app/main/default/lwc/lexYanshoudanRequest/lexYanshoudanRequest.html
new file mode 100644
index 0000000..87f391a
--- /dev/null
+++ b/force-app/main/default/lwc/lexYanshoudanRequest/lexYanshoudanRequest.html
@@ -0,0 +1,6 @@
+<template>
+ <div class="exampleHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ <lightning-button label="Show Toast" onclick={ShowToastEvent}></lightning-button>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexYanshoudanRequest/lexYanshoudanRequest.js b/force-app/main/default/lwc/lexYanshoudanRequest/lexYanshoudanRequest.js
new file mode 100644
index 0000000..84fe55d
--- /dev/null
+++ b/force-app/main/default/lwc/lexYanshoudanRequest/lexYanshoudanRequest.js
@@ -0,0 +1,79 @@
+import {
+ LightningElement,
+ wire,
+ api
+} from 'lwc';
+import {
+ CurrentPageReference
+} from "lightning/navigation";
+import {
+ CloseActionScreenEvent
+} from 'lightning/actions';
+import init from '@salesforce/apex/otherButtonRepairController.init';
+import updateYanshoudan from '@salesforce/apex/otherButtonRepairController.updateYanshoudan';
+import {
+ ShowToastEvent
+} from 'lightning/platformShowToastEvent';
+
+export default class LexYanshoudanRequest extends LightningElement {
+ @api recordId;
+ str;
+ IsLoading = true;
+ Id;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback() {
+ console.log(this.recordId);
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result);
+ if (result != null) {
+ this.IsLoading = false;
+ this.Id = result.Id;
+
+ this.YanshoudanRequest();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ }).catch(error => {
+ console.log(error);
+ }).finally(() => {
+
+ });
+ }
+
+ // 楠屾敹鍗曞洖鏀剁敵璇�
+ YanshoudanRequest() {
+ updateYanshoudan({
+ recordId: this.Id
+ }).then(result => {
+ console.log(result);
+ if (result.length > 0) {
+ var indexs = result.indexOf(": ")
+ var resolves = result.substring(indexs + 1, result.length);
+ alert(resolves);
+ }
+ location.reload();
+ })
+ }
+
+ // 寮圭獥
+ ShowToastEvent(msg, type) {
+ const event = new ShowToastEvent({
+ title: '',
+ message: msg,
+ variant: type
+ });
+ this.dispatchEvent(event);
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexYanshoudanRequest/lexYanshoudanRequest.js-meta.xml b/force-app/main/default/lwc/lexYanshoudanRequest/lexYanshoudanRequest.js-meta.xml
new file mode 100644
index 0000000..3392981
--- /dev/null
+++ b/force-app/main/default/lwc/lexYanshoudanRequest/lexYanshoudanRequest.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexcopyQIS/lexcopyQIS.css b/force-app/main/default/lwc/lexcopyQIS/lexcopyQIS.css
new file mode 100644
index 0000000..9acb129
--- /dev/null
+++ b/force-app/main/default/lwc/lexcopyQIS/lexcopyQIS.css
@@ -0,0 +1,22 @@
+.outerBorderCss{
+ border: 1px solid #D4D4D4;
+ border-radius : 5px;
+ border-top : 3px solid #565959;
+}
+.borderCss{
+ border: 1px solid #D4D4D4;
+ border-radius : 5px;
+ margin-bottom : 7px;
+ border-top : 3px solid #565959;
+}
+.headerDorderCss{
+ border-top: 1px solid #565959;
+ border-bottom: 1px solid #D4D4D4;
+ padding:3px;
+}
+.centerCss{
+ text-align: center;
+}
+.centerCss .left{
+ margin-left: 100px;
+}/* sample css file *//* sample css file */
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexcopyQIS/lexcopyQIS.html b/force-app/main/default/lwc/lexcopyQIS/lexcopyQIS.html
new file mode 100644
index 0000000..c8bdbfc
--- /dev/null
+++ b/force-app/main/default/lwc/lexcopyQIS/lexcopyQIS.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="sisToOPDHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexcopyQIS/lexcopyQIS.js b/force-app/main/default/lwc/lexcopyQIS/lexcopyQIS.js
new file mode 100644
index 0000000..95bfd52
--- /dev/null
+++ b/force-app/main/default/lwc/lexcopyQIS/lexcopyQIS.js
@@ -0,0 +1,52 @@
+import { LightningElement,wire,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+import init from '@salesforce/apex/QISReportController.initForlexcopyQISButton';
+
+
+export default class lexcopyQIS extends LightningElement {
+ @api recordId;
+ err;
+ IsLoading = true;
+ qisReportId;
+ qisStatus;
+ name;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback () {
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ this.IsLoading = false;
+ this.qisReportId = result.Id;
+ this.qisStatus = result.qIStatus;
+ this.name = result.name;
+ if (this.qisStatus != '鍙栨秷') {
+ const evt = new ShowToastEvent({
+ title : '鐘舵�佷负鍙栨秷鐨凲IS鎵嶅彲浠ヨ澶嶅埗骞舵柊寤�',
+ message: '',
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }
+ var url = "/"+this.qisReportId+"/e?newclone=1&retURL=%2F"+this.qisReportId+" &CF00N100000073PA0="+this.name+"&CF00N100000073PA0_lkid="+this.qisReportId;
+ window.open(url);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }).catch(error => {
+ console.log('error='+error);
+ })
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexcopyQIS/lexcopyQIS.js-meta.xml b/force-app/main/default/lwc/lexcopyQIS/lexcopyQIS.js-meta.xml
new file mode 100644
index 0000000..c629aee
--- /dev/null
+++ b/force-app/main/default/lwc/lexcopyQIS/lexcopyQIS.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexcopyQIS">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/listInfiniteScrolling/listInfiniteScrolling.css b/force-app/main/default/lwc/listInfiniteScrolling/listInfiniteScrolling.css
new file mode 100644
index 0000000..3e6b5c2
--- /dev/null
+++ b/force-app/main/default/lwc/listInfiniteScrolling/listInfiniteScrolling.css
@@ -0,0 +1,3 @@
+.table-container {
+ height: 150px;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/listInfiniteScrolling/listInfiniteScrolling.html b/force-app/main/default/lwc/listInfiniteScrolling/listInfiniteScrolling.html
new file mode 100644
index 0000000..97b5510
--- /dev/null
+++ b/force-app/main/default/lwc/listInfiniteScrolling/listInfiniteScrolling.html
@@ -0,0 +1,17 @@
+<template>
+ <template if:true={records}>
+ <div class="table-container">
+ <lightning-datatable
+ key-field="id"
+ data={records}
+ columns={columns}
+ enable-infinite-loading
+ onloadmore={loadMoreData}
+ >
+ </lightning-datatable>
+ </div>
+ </template>
+ <template if:true={error}>
+ <c-error-panel errors={error}></c-error-panel>
+ </template>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/listInfiniteScrolling/listInfiniteScrolling.js b/force-app/main/default/lwc/listInfiniteScrolling/listInfiniteScrolling.js
new file mode 100644
index 0000000..d27d299
--- /dev/null
+++ b/force-app/main/default/lwc/listInfiniteScrolling/listInfiniteScrolling.js
@@ -0,0 +1,54 @@
+import { LightningElement, wire } from 'lwc';
+import getAccountsPaginated from '@salesforce/apex/PaginatedListControllerLwc.getAccountsPaginated';
+import ACCOUNT_NAME_FIELD from '@salesforce/schema/Account.Name';
+import ACCOUNT_TYPE_FIELD from '@salesforce/schema/Account.Type';
+import ACCOUNT_PHONE_FIELD from '@salesforce/schema/Account.Phone';
+import ACCOUNT_EMPLOYEES_FIELD from '@salesforce/schema/Account.NumberOfEmployees';
+
+const COLUMNS = [
+ {
+ label: 'Account Name',
+ fieldName: ACCOUNT_NAME_FIELD.fieldApiName,
+ type: 'text'
+ },
+ { label: 'Type', fieldName: ACCOUNT_TYPE_FIELD.fieldApiName, type: 'text' },
+ {
+ label: 'Phone',
+ fieldName: ACCOUNT_PHONE_FIELD.fieldApiName,
+ type: 'phone'
+ },
+ {
+ label: 'Employees',
+ fieldName: ACCOUNT_EMPLOYEES_FIELD.fieldApiName,
+ type: 'number'
+ }
+];
+const PAGE_SIZE = 5;
+
+export default class ListInfiniteScrolling extends LightningElement {
+ columns = COLUMNS;
+ error;
+ records = [];
+ _currentPageToken = 0;
+ _nextPageToken = PAGE_SIZE;
+
+ @wire(getAccountsPaginated, {
+ pageSize: PAGE_SIZE,
+ pageToken: '$_currentPageToken'
+ })
+ wiredAccounts({ data, error }) {
+ if (data) {
+ this.records = this.records.concat(data.records);
+ this._nextPageToken = data.nextPageToken;
+ } else if (error) {
+ this.records = null;
+ this.error = error;
+ }
+ }
+
+ loadMoreData() {
+ if (this._nextPageToken) {
+ this._currentPageToken = this._nextPageToken;
+ }
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/listInfiniteScrolling/listInfiniteScrolling.js-meta.xml b/force-app/main/default/lwc/listInfiniteScrolling/listInfiniteScrolling.js-meta.xml
new file mode 100644
index 0000000..b9a3113
--- /dev/null
+++ b/force-app/main/default/lwc/listInfiniteScrolling/listInfiniteScrolling.js-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>false</isExposed>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/listInfiniteScrollingWrapper/listInfiniteScrollingWrapper.html b/force-app/main/default/lwc/listInfiniteScrollingWrapper/listInfiniteScrollingWrapper.html
new file mode 100644
index 0000000..c33083d
--- /dev/null
+++ b/force-app/main/default/lwc/listInfiniteScrollingWrapper/listInfiniteScrollingWrapper.html
@@ -0,0 +1,18 @@
+<template>
+ <c-example-wrapper
+ icon-name="custom:custom62"
+ lwc="listInfiniteScrolling"
+ title="Infinite Scrolled List"
+ visualforce="paginatedList"
+ visualforce-height="190px"
+ >
+ <c-list-infinite-scrolling slot="lwc"></c-list-infinite-scrolling>
+
+ <!-- prettier-ignore -->
+ <p>
+ Use <a target="_blank" href="https://developer.salesforce.com/docs/component-library/bundle/lightning-datatable">
+ lightning-datatable</a> with infinite scrolling to replace an apex:pageBlockTable with
+ pagination. Infinite scrolling gives a better User Experience in most of the cases.
+ </p>
+ </c-example-wrapper>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/listInfiniteScrollingWrapper/listInfiniteScrollingWrapper.js b/force-app/main/default/lwc/listInfiniteScrollingWrapper/listInfiniteScrollingWrapper.js
new file mode 100644
index 0000000..4e1b675
--- /dev/null
+++ b/force-app/main/default/lwc/listInfiniteScrollingWrapper/listInfiniteScrollingWrapper.js
@@ -0,0 +1,3 @@
+import { LightningElement } from 'lwc';
+
+export default class ListInfiniteScrollingWrapper extends LightningElement {}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/listInfiniteScrollingWrapper/listInfiniteScrollingWrapper.js-meta.xml b/force-app/main/default/lwc/listInfiniteScrollingWrapper/listInfiniteScrollingWrapper.js-meta.xml
new file mode 100644
index 0000000..6646900
--- /dev/null
+++ b/force-app/main/default/lwc/listInfiniteScrollingWrapper/listInfiniteScrollingWrapper.js-meta.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__AppPage</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/listRecordLinks/__mocks__/listRecordLinks.js b/force-app/main/default/lwc/listRecordLinks/__mocks__/listRecordLinks.js
new file mode 100644
index 0000000..d17e677
--- /dev/null
+++ b/force-app/main/default/lwc/listRecordLinks/__mocks__/listRecordLinks.js
@@ -0,0 +1,3 @@
+import { LightningElement } from 'lwc';
+
+export default class ListRecordLinks extends LightningElement {}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/listRecordLinks/listRecordLinks.css b/force-app/main/default/lwc/listRecordLinks/listRecordLinks.css
new file mode 100644
index 0000000..4b57e95
--- /dev/null
+++ b/force-app/main/default/lwc/listRecordLinks/listRecordLinks.css
@@ -0,0 +1,3 @@
+.table-container {
+ height: var(--lwc-sizeMedium, 320px);
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/listRecordLinks/listRecordLinks.html b/force-app/main/default/lwc/listRecordLinks/listRecordLinks.html
new file mode 100644
index 0000000..8a67af1
--- /dev/null
+++ b/force-app/main/default/lwc/listRecordLinks/listRecordLinks.html
@@ -0,0 +1,15 @@
+<template>
+ <template if:true={accounts.data}>
+ <div class="table-container">
+ <c-datatable-with-custom-types
+ key-field="Id"
+ data={accounts.data}
+ columns={columns}
+ >
+ </c-datatable-with-custom-types>
+ </div>
+ </template>
+ <template if:true={accounts.error}>
+ <c-error-panel errors={accounts.error}></c-error-panel>
+ </template>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/listRecordLinks/listRecordLinks.js b/force-app/main/default/lwc/listRecordLinks/listRecordLinks.js
new file mode 100644
index 0000000..b3fc5db
--- /dev/null
+++ b/force-app/main/default/lwc/listRecordLinks/listRecordLinks.js
@@ -0,0 +1,37 @@
+import { LightningElement, wire } from 'lwc';
+import { NavigationMixin } from 'lightning/navigation';
+import getAccounts from '@salesforce/apex/ListControllerLwc.getAccounts';
+import ACCOUNT_ID_FIELD from '@salesforce/schema/Account.Id';
+import ACCOUNT_NAME_FIELD from '@salesforce/schema/Account.Name';
+import ACCOUNT_TYPE_FIELD from '@salesforce/schema/Account.Type';
+import ACCOUNT_PHONE_FIELD from '@salesforce/schema/Account.Phone';
+import ACCOUNT_EMPLOYEES_FIELD from '@salesforce/schema/Account.NumberOfEmployees';
+
+const COLUMNS = [
+ {
+ label: 'Account Name',
+ type: 'navigateToRecord',
+ fieldName: ACCOUNT_ID_FIELD.fieldApiName,
+ typeAttributes: {
+ label: { fieldName: ACCOUNT_NAME_FIELD.fieldApiName }
+ }
+ },
+ { label: 'Type', fieldName: ACCOUNT_TYPE_FIELD.fieldApiName, type: 'text' },
+ {
+ label: 'Phone',
+ fieldName: ACCOUNT_PHONE_FIELD.fieldApiName,
+ type: 'phone'
+ },
+ {
+ label: 'Employees',
+ fieldName: ACCOUNT_EMPLOYEES_FIELD.fieldApiName,
+ type: 'number'
+ }
+];
+
+export default class ListRecordLinks extends NavigationMixin(LightningElement) {
+ columns = COLUMNS;
+
+ @wire(getAccounts)
+ accounts;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/listRecordLinks/listRecordLinks.js-meta.xml b/force-app/main/default/lwc/listRecordLinks/listRecordLinks.js-meta.xml
new file mode 100644
index 0000000..b9a3113
--- /dev/null
+++ b/force-app/main/default/lwc/listRecordLinks/listRecordLinks.js-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>false</isExposed>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/listRecordLinksWrapper/listRecordLinksWrapper.html b/force-app/main/default/lwc/listRecordLinksWrapper/listRecordLinksWrapper.html
new file mode 100644
index 0000000..d7f8ad1
--- /dev/null
+++ b/force-app/main/default/lwc/listRecordLinksWrapper/listRecordLinksWrapper.html
@@ -0,0 +1,17 @@
+<template>
+ <c-example-wrapper
+ icon-name="custom:custom62"
+ lwc="listRecordLinks"
+ title="List with Record Links"
+ visualforce="listRecordLinks"
+ visualforce-height="285px"
+ >
+ <c-list-record-links slot="lwc"></c-list-record-links>
+
+ <!-- prettier-ignore -->
+ <p>
+ Use <a target="_blank" href="https://developer.salesforce.com/docs/component-library/bundle/lightning-datatable">
+ lightning-datatable</a> with a custom type column to create record hyperlinks.
+ </p>
+ </c-example-wrapper>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/listRecordLinksWrapper/listRecordLinksWrapper.js b/force-app/main/default/lwc/listRecordLinksWrapper/listRecordLinksWrapper.js
new file mode 100644
index 0000000..d991a41
--- /dev/null
+++ b/force-app/main/default/lwc/listRecordLinksWrapper/listRecordLinksWrapper.js
@@ -0,0 +1,3 @@
+import { LightningElement } from 'lwc';
+
+export default class ListRecordLinksWrapper extends LightningElement {}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/listRecordLinksWrapper/listRecordLinksWrapper.js-meta.xml b/force-app/main/default/lwc/listRecordLinksWrapper/listRecordLinksWrapper.js-meta.xml
new file mode 100644
index 0000000..6646900
--- /dev/null
+++ b/force-app/main/default/lwc/listRecordLinksWrapper/listRecordLinksWrapper.js-meta.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__AppPage</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/listWithParentRecordData/__mocks__/listWithParentRecordData.js b/force-app/main/default/lwc/listWithParentRecordData/__mocks__/listWithParentRecordData.js
new file mode 100644
index 0000000..f67815f
--- /dev/null
+++ b/force-app/main/default/lwc/listWithParentRecordData/__mocks__/listWithParentRecordData.js
@@ -0,0 +1,3 @@
+import { LightningElement } from 'lwc';
+
+export default class ListWithParentRecordData extends LightningElement {}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/listWithParentRecordData/listWithParentRecordData.css b/force-app/main/default/lwc/listWithParentRecordData/listWithParentRecordData.css
new file mode 100644
index 0000000..4b57e95
--- /dev/null
+++ b/force-app/main/default/lwc/listWithParentRecordData/listWithParentRecordData.css
@@ -0,0 +1,3 @@
+.table-container {
+ height: var(--lwc-sizeMedium, 320px);
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/listWithParentRecordData/listWithParentRecordData.html b/force-app/main/default/lwc/listWithParentRecordData/listWithParentRecordData.html
new file mode 100644
index 0000000..8d5a9c4
--- /dev/null
+++ b/force-app/main/default/lwc/listWithParentRecordData/listWithParentRecordData.html
@@ -0,0 +1,15 @@
+<template>
+ <template if:true={accounts.data}>
+ <div class="table-container">
+ <lightning-datatable
+ key-field="id"
+ data={formattedAccounts}
+ columns={columns}
+ >
+ </lightning-datatable>
+ </div>
+ </template>
+ <template if:true={accounts.error}>
+ <c-error-panel errors={accounts.error}></c-error-panel>
+ </template>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/listWithParentRecordData/listWithParentRecordData.js b/force-app/main/default/lwc/listWithParentRecordData/listWithParentRecordData.js
new file mode 100644
index 0000000..a71fbde
--- /dev/null
+++ b/force-app/main/default/lwc/listWithParentRecordData/listWithParentRecordData.js
@@ -0,0 +1,38 @@
+import { LightningElement, wire } from 'lwc';
+import { formatApexSObjects } from 'c/apexUtils';
+import getAccounts from '@salesforce/apex/ListWithParentRecordDataControllerLwc.getAccounts';
+import ACCOUNT_NAME_FIELD from '@salesforce/schema/Account.Name';
+import ACCOUNT_TYPE_FIELD from '@salesforce/schema/Account.Type';
+import ACCOUNT_PHONE_FIELD from '@salesforce/schema/Account.Phone';
+import ACCOUNT_OWNER_NAME_FIELD from '@salesforce/schema/Account.Owner.Name';
+
+const COLUMNS = [
+ {
+ label: 'Account Name',
+ fieldName: ACCOUNT_NAME_FIELD.fieldApiName,
+ type: 'text'
+ },
+ { label: 'Type', fieldName: ACCOUNT_TYPE_FIELD.fieldApiName, type: 'text' },
+ {
+ label: 'Phone',
+ fieldName: ACCOUNT_PHONE_FIELD.fieldApiName,
+ type: 'phone'
+ },
+ {
+ label: 'Owner Name',
+ fieldName: ACCOUNT_OWNER_NAME_FIELD.fieldApiName,
+ type: 'text'
+ }
+];
+
+export default class ListWithParentRecordData extends LightningElement {
+ columns = COLUMNS;
+
+ @wire(getAccounts)
+ accounts;
+
+ // Needed only when bringing parent records data
+ get formattedAccounts() {
+ return this.accounts.data ? formatApexSObjects(this.accounts.data) : [];
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/listWithParentRecordData/listWithParentRecordData.js-meta.xml b/force-app/main/default/lwc/listWithParentRecordData/listWithParentRecordData.js-meta.xml
new file mode 100644
index 0000000..b9a3113
--- /dev/null
+++ b/force-app/main/default/lwc/listWithParentRecordData/listWithParentRecordData.js-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>false</isExposed>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/listWithParentRecordDataWrapper/listWithParentRecordDataWrapper.html b/force-app/main/default/lwc/listWithParentRecordDataWrapper/listWithParentRecordDataWrapper.html
new file mode 100644
index 0000000..f68bb54
--- /dev/null
+++ b/force-app/main/default/lwc/listWithParentRecordDataWrapper/listWithParentRecordDataWrapper.html
@@ -0,0 +1,19 @@
+<template>
+ <c-example-wrapper
+ icon-name="custom:custom62"
+ lwc="listWithParentRecordData"
+ title="List with Parent Record Data"
+ visualforce="listWithParentRecordData"
+ visualforce-height="285px"
+ >
+ <c-list-with-parent-record-data
+ slot="lwc"
+ ></c-list-with-parent-record-data>
+
+ <!-- prettier-ignore -->
+ <p>
+ Include parent record data on a <a target="_blank" href="https://developer.salesforce.com/docs/component-library/bundle/lightning-datatable">
+ lightning-datatable</a> by using spanning fields in Apex and transforming the result to lightning-datatable expected format.
+ </p>
+ </c-example-wrapper>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/listWithParentRecordDataWrapper/listWithParentRecordDataWrapper.js b/force-app/main/default/lwc/listWithParentRecordDataWrapper/listWithParentRecordDataWrapper.js
new file mode 100644
index 0000000..181a303
--- /dev/null
+++ b/force-app/main/default/lwc/listWithParentRecordDataWrapper/listWithParentRecordDataWrapper.js
@@ -0,0 +1,3 @@
+import { LightningElement } from 'lwc';
+
+export default class ListWithParentRecordDataWrapper extends LightningElement {}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/listWithParentRecordDataWrapper/listWithParentRecordDataWrapper.js-meta.xml b/force-app/main/default/lwc/listWithParentRecordDataWrapper/listWithParentRecordDataWrapper.js-meta.xml
new file mode 100644
index 0000000..6646900
--- /dev/null
+++ b/force-app/main/default/lwc/listWithParentRecordDataWrapper/listWithParentRecordDataWrapper.js-meta.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__AppPage</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/ll/ll.html b/force-app/main/default/lwc/ll/ll.html
new file mode 100644
index 0000000..af9fa97
--- /dev/null
+++ b/force-app/main/default/lwc/ll/ll.html
@@ -0,0 +1,3 @@
+<template>
+
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/ll/ll.js b/force-app/main/default/lwc/ll/ll.js
new file mode 100644
index 0000000..3cc1b8d
--- /dev/null
+++ b/force-app/main/default/lwc/ll/ll.js
@@ -0,0 +1,5 @@
+import { LightningElement, track, wire } from 'lwc';
+
+export default class ll extends LightningElement {
+
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/ll/ll.js-meta.xml b/force-app/main/default/lwc/ll/ll.js-meta.xml
new file mode 100644
index 0000000..f4752da
--- /dev/null
+++ b/force-app/main/default/lwc/ll/ll.js-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="ll">
+ <apiVersion>51.0</apiVersion>
+ <isExposed>true</isExposed>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/loanerArrangedEmailLWC/loanerArrangedEmailLWC.css b/force-app/main/default/lwc/loanerArrangedEmailLWC/loanerArrangedEmailLWC.css
new file mode 100644
index 0000000..af18c76
--- /dev/null
+++ b/force-app/main/default/lwc/loanerArrangedEmailLWC/loanerArrangedEmailLWC.css
@@ -0,0 +1,11 @@
+.Holder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+
+.container .uiContainerManager{
+ display : none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/loanerArrangedEmailLWC/loanerArrangedEmailLWC.html b/force-app/main/default/lwc/loanerArrangedEmailLWC/loanerArrangedEmailLWC.html
new file mode 100644
index 0000000..bf9cadc
--- /dev/null
+++ b/force-app/main/default/lwc/loanerArrangedEmailLWC/loanerArrangedEmailLWC.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="Holder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/loanerArrangedEmailLWC/loanerArrangedEmailLWC.js b/force-app/main/default/lwc/loanerArrangedEmailLWC/loanerArrangedEmailLWC.js
new file mode 100644
index 0000000..bf2ac0c
--- /dev/null
+++ b/force-app/main/default/lwc/loanerArrangedEmailLWC/loanerArrangedEmailLWC.js
@@ -0,0 +1,258 @@
+import { LightningElement,api, track, wire } from 'lwc';
+import {CurrentPageReference} from 'lightning/navigation';
+import { CloseActionScreenEvent } from 'lightning/actions';
+import init from '@salesforce/apex/SelectSubstituteControllerLWT.initFromLoanerArrangedEmailLButton';
+import selectRentalApplyCByName from '@salesforce/apex/SelectSubstituteControllerLWT.selectRentalApplyCByName';
+import selectRaesById1 from '@salesforce/apex/SelectSubstituteControllerLWT.selectRaesById1';
+import selectRaesById2 from '@salesforce/apex/SelectSubstituteControllerLWT.selectRaesById2';
+import getSessionId from '@salesforce/apex/SelectSubstituteControllerLWT.getSessionId';
+import approvalCheck from '@salesforce/apex/SelectSubstituteControllerLWT.approvalCheck';
+import setShipment_requests from '@salesforce/apex/SelectSubstituteControllerLWT.setShipment_requests';
+// import { label } from '@salesforce/label';
+import STATUS_PROCESS_STATE from '@salesforce/label/c.StatusProcessState';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+export default class loanerArrangedEmailLWC extends LightningElement {
+
+ @api recordId;
+ id;
+ RentalApplyC;
+ Status;
+ Wei_Assigned_Cnt__c;
+ Bollow_Date__c;
+ Assigned_Not_Shipment__c;
+ IsLoading=true;
+ @track statusStringg = STATUS_PROCESS_STATE;
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference){
+ console.log("杩涘叆椤甸潰");
+ console.log(currentPageReference);
+ if(currentPageReference){
+ const urvalue=currentPageReference.state.recordId;
+ if(urvalue){
+ let str=`${urvalue}`;
+ console.log('str');
+ console.log(str);
+ this.recordId=str;
+ }
+ }
+ }
+
+
+
+ connectedCallback(){
+ console.log(this.recordId);
+ init({recordId:this.recordId}).then(result=>{
+ console.log(result);
+ if(result!=null){
+ this.id=result.id;
+ this.RentalApplyC=result.RentalApplyC;
+ this.Status=result.Status;
+ this.Wei_Assigned_Cnt__c=result.WeiAssignedCntC;
+ this.Bollow_Date__c=result.BollowDateC;
+ this.Assigned_Not_Shipment__c=result.AssignedNotShipmentC;
+ this.cancelSubmit().then(res=>{
+ this.IsLoading=false;
+ this.dispatchEvent(new CloseActionScreenEvent());
+ });
+ }
+ }).catch(err=>{
+ console.log("error:");
+ console.log(err);
+ }).finally(()=>{
+
+ });
+ }
+
+
+
+ async cancelSubmit(){
+ let campaignStatus = '';
+ let records = null; // 20220217 ljh OBPM甯傚満娲诲姩鑱斿姩
+ console.log("Ff");
+ let statusSting = "{!$Label.StatusProcessState}"; // 20220322 ljh add
+ let statusList = statusSting.split(',');
+ console.log(statusSting);
+ console.log(statusList);
+ console.log(this.statusStringg);
+ let raliveryGood;
+ await selectRentalApplyCByName({recordId:this.RentalApplyC})
+ .then(res=>{
+ console.log(res);
+ if (res!=null) {
+ raliveryGood=res;
+ }
+ }).catch(err=>{
+ console.log("selectRentalApplyCByName err:")
+ console.log(err.message);
+ });
+ console.log(statusSting);
+ console.log(raliveryGood);
+ console.log("ddd");
+ let RentalApply = raliveryGood[0];
+ console.log(RentalApply);
+
+ if(RentalApply.Campaign__c != null&&RentalApply.Campaign__c != '' ) {
+ console.log();
+ let DeliveryGood;
+ // 20220217 ljh update OBPM甯傚満娲诲姩鑱斿姩 start
+ // DeliveryGood = sforce.connection.query("select Status, Rental_Apply_Flag__c from Campaign where id ='" + RentalApply.Campaign__c + "'");
+ // let records= DeliveryGood.getArray("records");
+ await selectCampaignById({recordId:RentalApply.Campaign__c}).then(res=>{
+ console.log(res);
+ DeliveryGood=res;
+ });
+ console.log(RentalApply);
+ records = DeliveryGood;
+ console.log(DeliveryGood);
+ // 20220217 ljh update OBPM甯傚満娲诲姩鑱斿姩 end
+
+ campaignStatus = records[0].Status;
+ console.log("hh3");
+ }
+ if(this.Wei_Assigned_Cnt__c > "0") {
+ // alert("鐢宠鍗曞唴瀛樺湪鏈垎閰嶇殑閰嶅锛岃鍒嗛厤澶囧搧鎴栧垎鍓茬敵璇峰崟");
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:"鐢宠鍗曞唴瀛樺湪鏈垎閰嶇殑閰嶅锛岃鍒嗛厤澶囧搧鎴栧垎鍓茬敵璇峰崟"
+ });
+ this.dispatchEvent(event);
+ }else if(campaignStatus == '鍙栨秷'){
+ // alert("瀛︿細鍙栨秷锛屼笉鍙嚭搴撴寚绀�");
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:"瀛︿細鍙栨秷锛屼笉鍙嚭搴撴寚绀�"
+ });
+ this.dispatchEvent(event);
+ }else if (this.Assigned_Not_Shipment__c == "0") {
+ // alert("娌℃湁鍙互鍑哄簱鎸囩ず鐨勬槑缁�");
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:"娌℃湁鍙互鍑哄簱鎸囩ず鐨勬槑缁�"
+ });
+ this.dispatchEvent(event);
+ } else if (RentalApply.Demo_purpose1__c == "闀挎湡鍊熷嚭" && RentalApply.Contract_pdf_updated__c == "0") {
+ // alert("闀挎湡鍊熷嚭鏃讹紝蹇呴』鍏堜笂浼犲绾︿功");
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:"闀挎湡鍊熷嚭鏃讹紝蹇呴』鍏堜笂浼犲绾︿功"
+ });
+ this.dispatchEvent(event);
+ } else if(RentalApply.Repair__c != '' && RentalApply.Repair__c != null && (RentalApply.Repair_Final_Inspection_Date_F__c != null && RentalApply.Repair_Final_Inspection_Date_F__c != '') || (RentalApply.RC_return_to_office__c != null && RentalApply.RC_return_to_office__c != '')) {
+ // alert("淇悊鏈夋渶缁堟娴嬫棩鎴栦慨鐞嗗搧杩旈�佹棩锛屼笉鍙嚭搴撴寚绀�");
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:"淇悊鏈夋渶缁堟娴嬫棩鎴栦慨鐞嗗搧杩旈�佹棩锛屼笉鍙嚭搴撴寚绀�"
+ });
+ this.dispatchEvent(event);
+ // 20220217 ljh add OBPM甯傚満娲诲姩鑱斿姩 start
+ } else if (records != null && records[0].IF_Approved__c == "true" && (records[0].Meeting_Approved_No__c == null || records[0].Meeting_Approved_No__c == "") ) {
+ // alert("娌℃湁鍐宠鍙风殑锛屾殏涓嶈兘鍑哄��,璇锋洿鏂拌鍐充俊鎭��");
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:"娌℃湁鍐宠鍙风殑锛屾殏涓嶈兘鍑哄��,璇锋洿鏂拌鍐充俊鎭��"
+ });
+ this.dispatchEvent(event);
+ } else if (records != null && records[0].IF_Approved__c == "true" && records[0].Meeting_Approved_No__c != "" && statusList.indexOf(records[0].Approved_Status__c) != -1 ) {
+ // alert("宸茬敵璇峰喅瑁佷絾鍐宠鐘舵�佷笉绗﹀悎鏉′欢銆�");
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:"宸茬敵璇峰喅瑁佷絾鍐宠鐘舵�佷笉绗﹀悎鏉′欢銆�"
+ });
+ this.dispatchEvent(event);
+ // 20220217 ljh add OBPM甯傚満娲诲姩鑱斿姩 end
+ } else {
+ console.log("hhhh3");
+ let t=await getSessionId();
+ console.log(t);
+ window.sforce = window.sforce || {};
+ window.sforce.connection = window.sforce.connection || {};
+ window.sforce.connection.sessionId =t;
+ //154p 1388 yc 20211020
+ console.log("hhhh4");
+ let raid = RentalApply.Id+";"+this.id;
+ console.log(raid);
+ let rs1 = await approvalCheck({rentalApplyId:raid});
+ console.log(rs1);
+ if (rs1 != '1') {
+ // alert(rs1);
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:rs1
+ });
+ this.dispatchEvent(event);
+ } else {
+ //bp2 let rs2 = sforce.apex.execute("RentalApplyWebService", "reserve", {rentalApplyId: raid});
+ //bp2 if (rs2 != '1') {
+ //bp2 alert(rs2);
+ //bp2 } else {
+ setShipment_requests({raid:null,raesid: this.id}).then(res=>{
+ if (res == "鐘舵�佹洿鏂板埌宸插嚭搴撴寚绀�") {
+ // alert("鐘舵�佹洿鏂板埌宸插嚭搴撴寚绀�");
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:"鐘舵�佹洿鏂板埌宸插嚭搴撴寚绀�"
+ });
+ this.dispatchEvent(event);
+ print().then(res=>{
+ setTimeout(function() {location.href = "/"+this.RentalApplyC;}, 100);
+ });
+ } else {
+ // alert(res);
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:res
+ });
+ this.dispatchEvent(event);
+ }
+ })
+ // sforce.apex.execute("RentalApplyWebService", "setRaesShipment_request",
+ // {raesid: this.id}
+ // ,function(res) {
+ // if (res == "鐘舵�佹洿鏂板埌宸插嚭搴撴寚绀�") {
+ // alert("鐘舵�佹洿鏂板埌宸插嚭搴撴寚绀�");
+ // print().then(res=>{
+ // setTimeout(function() {location.href = "/"+this.RentalApplyC;}, 100);
+ // });
+ // } else {
+ // alert(res);
+ // }
+ // });
+ }
+ }
+
+ async function print(){
+ let sqlResult;
+ if(this.Bollow_Date__c != ''){
+ await selectRaesById1({recordId:RentalApply.Id}).then(res=>{
+ sqlResult=res;
+ });
+ }else{
+ await selectRaesById2({recordId:RentalApply.Id}).then(res=>{
+ sqlResult=res;
+ });
+ }
+ let records = sqlResult;
+ let size =records.length;
+ let length = size%10 ==0? size/10 : parseInt(size/10) +1;
+ for(let i =0;i<length;i++){
+ window.open('/apex/FixtureRentalPDF?raid=' + RentalApply.Id + '&page=' + i);
+ }
+ }
+
+
+ // function fixTime(time){
+ // if(time < 10) {time = "0" + time};
+ // return time;
+ // }
+
+ // function fixDate(date){
+ // let Month = fixTime(date.getMonth() + 1);
+ // let Day = fixTime(date.getDate());
+ // let UTC = date.toUTCString();
+ // let Time = UTC.substring(UTC.indexOf(':')-2, UTC.indexOf(':')+6);
+ // let Minutes = fixTime(date.getMinutes());
+ // let Seconds = fixTime(date.getSeconds());
+ // return date.getFullYear() + "-" + Month + "-" + Day + "T" + Time;
+ // }
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/loanerArrangedEmailLWC/loanerArrangedEmailLWC.js-meta.xml b/force-app/main/default/lwc/loanerArrangedEmailLWC/loanerArrangedEmailLWC.js-meta.xml
new file mode 100644
index 0000000..b772b46
--- /dev/null
+++ b/force-app/main/default/lwc/loanerArrangedEmailLWC/loanerArrangedEmailLWC.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="loanerArrangedEmailLWC">
+ <apiVersion>51.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__AppPage</target>
+ <target>lightning__RecordPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lookup/lookup.css b/force-app/main/default/lwc/lookup/lookup.css
new file mode 100644
index 0000000..0286cad
--- /dev/null
+++ b/force-app/main/default/lwc/lookup/lookup.css
@@ -0,0 +1,30 @@
+.slds-combobox__input,
+.slds-combobox_container {
+ transition: border 0.1s linear, box-shadow 0.1 linear;
+}
+
+.slds-combobox__input {
+ box-shadow: none;
+}
+
+.slds-combobox__input.has-custom-border {
+ box-shadow: 0 0 0 2px #fff inset, 0 0 0 3px rgb(221, 219, 218) inset;
+}
+
+.slds-combobox__input.has-custom-error {
+ border: 1px solid rgb(194, 57, 52);
+ box-shadow: rgb(194, 57, 52) 0 0 0 1px inset;
+}
+
+.slds-combobox_container.has-custom-error {
+ border: none !important;
+}
+
+.slds-combobox__input.has-custom-height {
+ height: 32px !important;
+}
+
+.form-error {
+ color: rgb(194, 57, 52);
+ display: block;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lookup/lookup.html b/force-app/main/default/lwc/lookup/lookup.html
new file mode 100644
index 0000000..36864a9
--- /dev/null
+++ b/force-app/main/default/lwc/lookup/lookup.html
@@ -0,0 +1,139 @@
+<template>
+ <div class={getFormElementClass}>
+ <label lwc:if={label} class={getLabelClass} for="combobox">
+ <abbr lwc:if={required} title="required" class="slds-required">*</abbr>
+ {label}
+ </label>
+ <div class="slds-form-element__control">
+ <div class={getContainerClass}>
+ <div class={getDropdownClass} aria-expanded={isListboxOpen} aria-haspopup="listbox" aria-owns="listbox"
+ role="combobox">
+ <!-- Search input start -->
+ <div class={getComboboxClass} role="none">
+ <template lwc:if={isSingleEntry}>
+ <lightning-icon icon-name={getSelectIconName} size="small"
+ alternative-text="Selected item icon" class={getSelectIconClass}>
+ </lightning-icon>
+ </template>
+
+ <!-- Text input -->
+ <input type="text" class={getInputClass} aria-autocomplete="list" aria-controls="listbox"
+ aria-activedescendant={_focusedResultIndex} autocomplete="off" role="textbox" id="combobox"
+ placeholder={placeholder} value={getInputValue} title={getInputTitle}
+ readonly={isInputReadonly} disabled={disabled} onfocus={handleFocus} onblur={handleBlur}
+ oninput={handleInput} onkeydown={handleKeyDown} />
+
+ <!-- Search icon -->
+ <lightning-icon icon-name="utility:search" size="x-small" alternative-text="Search icon"
+ class={getSearchIconClass}></lightning-icon>
+
+ <!-- Clear selection button icon for single entry lookups -->
+ <template lwc:if={isSingleEntry}>
+ <button title="Remove selected option" type="button" onclick={handleClearSelection}
+ class={getClearSelectionButtonClass} disabled={disabled}>
+ <lightning-icon icon-name="utility:close" size="x-small"
+ alternative-text="Remove selected option"
+ class="slds-button__icon"></lightning-icon>
+ </button>
+ </template>
+ </div>
+ <!-- Search input end -->
+
+ <!-- Result list box start -->
+ <div id="listbox" role="listbox" aria-label={label} onmousedown={handleComboboxMouseDown}
+ onmouseup={handleComboboxMouseUp} class={getListboxClass}>
+ <ul class="slds-listbox slds-listbox_vertical" role="presentation">
+ <!-- Spinner to display when waiting for results of search -->
+ <div lwc:if={loading}>
+ <lightning-spinner alternative-text="Loading" size="small"></lightning-spinner>
+ </div>
+
+ <!-- Result list start -->
+ <template for:each={searchResultsLocalState} for:item="item" for:index="index"
+ lwc:if={hasResults}>
+ <li key={item.result.id} role="presentation" class="slds-listbox__item">
+ <div class={item.classes} role="option" id={index} aria-label={item.result.title}
+ onclick={handleResultClick} data-recordid={item.result.id}>
+ <span class="slds-media__figure slds-listbox__option-icon">
+ <lightning-icon icon-name={item.result.icon} size="small"
+ alternative-text="Result item icon"></lightning-icon>
+ </span>
+ <span class="slds-media__body">
+ <span class="slds-listbox__option-text slds-listbox__option-text_entity">
+ <lightning-formatted-rich-text value={item.result.titleFormatted}
+ disable-linkify>
+ </lightning-formatted-rich-text>
+ </span>
+ <span lwc:if={item.result.subtitleFormatted}
+ class="slds-listbox__option-meta slds-listbox__option-meta_entity">
+ <lightning-formatted-rich-text value={item.result.subtitleFormatted}
+ disable-linkify>
+ </lightning-formatted-rich-text>
+ </span>
+ </span>
+ </div>
+ </li>
+ </template>
+ <!-- Result list end -->
+
+ <!-- No results start -->
+ <template lwc:else>
+ <li role="presentation">
+ <span class="slds-media slds-listbox__option_entity" role="option">
+ <span lwc:if={loading} class="slds-media__body">Loading...</span>
+ <span lwc:else class="slds-media__body">No results.</span>
+ </span>
+ </li>
+ </template>
+ <!-- No results end -->
+
+ <!-- Create new records -->
+ <template for:each={newRecordOptions} for:item="newRecord">
+ <li key={newRecord.value} role="presentation" class="slds-listbox__item">
+ <div class="slds-media slds-media_center slds-listbox__option slds-listbox__option_entity"
+ onclick={handleNewRecordClick} data-sobject={newRecord.value} role="option">
+ <span class="slds-media__figure slds-listbox__option-icon">
+ <lightning-icon icon-name="utility:add" size="small"
+ alternative-text={newRecord.label}></lightning-icon>
+ </span>
+ <span class="slds-media__body">
+ <span class="slds-listbox__option-text">{newRecord.label}</span>
+ </span>
+ </div>
+ </li>
+ </template>
+ <!-- Create new records end -->
+ </ul>
+ </div>
+ <!-- Result list box end -->
+ </div>
+ </div>
+
+ <!-- Multi-selection start -->
+ <template lwc:if={isMultiEntry}>
+ <div id="selection" role="listbox" aria-label={label} aria-orientation="horizontal">
+ <ul class="slds-listbox slds-listbox_inline slds-var-p-top_xxx-small" role="group"
+ aria-label="Selected options">
+ <template for:each={selection} for:item="item">
+ <li key={item.id} role="presentation">
+ <lightning-pill label={item.title} title={item.title}
+ onremove={handleRemoveSelectedItem} name={item.id}>
+ <lightning-icon icon-name={item.icon}></lightning-icon>
+ </lightning-pill>
+ </li>
+ </template>
+ </ul>
+ </div>
+ </template>
+ <!-- Multi-selection end -->
+
+ <!-- Errors start -->
+ <template for:each={_errors} for:item="error">
+ <div key={error.id} role="alert" class="slds-form-element__label slds-var-m-top_xx-small form-error">
+ {error.message}
+ </div>
+ </template>
+ <!-- Errors end -->
+ </div>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lookup/lookup.js b/force-app/main/default/lwc/lookup/lookup.js
new file mode 100644
index 0000000..f071366
--- /dev/null
+++ b/force-app/main/default/lwc/lookup/lookup.js
@@ -0,0 +1,468 @@
+import { LightningElement, api } from 'lwc';
+import { NavigationMixin } from 'lightning/navigation';
+
+const SEARCH_DELAY = 300; // Wait 300 ms after user stops typing then, peform search
+
+const KEY_ARROW_UP = 38;
+const KEY_ARROW_DOWN = 40;
+const KEY_ENTER = 13;
+
+const VARIANT_LABEL_STACKED = 'label-stacked';
+const VARIANT_LABEL_INLINE = 'label-inline';
+const VARIANT_LABEL_HIDDEN = 'label-hidden';
+
+const REGEX_SOSL_RESERVED = /(\?|&|\||!|\{|\}|\[|\]|\(|\)|\^|~|\*|:|"|\+|-|\\)/g;
+const REGEX_EXTRA_TRAP = /(\$|\\)/g;
+
+export default class Lookup extends NavigationMixin(LightningElement) {
+ // Public properties
+ @api variant = VARIANT_LABEL_STACKED;
+ @api label = '';
+ @api required = false;
+ @api disabled = false;
+ @api placeholder = '';
+ @api isMultiEntry = false;
+ @api scrollAfterNItems = null;
+ @api newRecordOptions = [];
+ @api minSearchTermLength = 2;
+
+ // Template properties
+ searchResultsLocalState = [];
+ loading = false;
+
+ // Private properties
+ _errors = [];
+ _hasFocus = false;
+ _isDirty = false;
+ _searchTerm = '';
+ _cleanSearchTerm;
+ _cancelBlur = false;
+ _searchThrottlingTimeout;
+ _searchResults = [];
+ _defaultSearchResults = [];
+ _curSelection = [];
+ _focusedResultIndex = null;
+
+ // PUBLIC FUNCTIONS AND GETTERS/SETTERS
+ @api
+ set selection(initialSelection) {
+ if (initialSelection) {
+ this._curSelection = Array.isArray(initialSelection) ? initialSelection : [initialSelection];
+ this.processSelectionUpdate(false);
+ }
+ }
+
+ get selection() {
+ return this._curSelection;
+ }
+
+ @api
+ set errors(errors) {
+ this._errors = errors;
+ // Blur component if errors are passed
+ if (this._errors?.length > 0) {
+ this.blur();
+ }
+ }
+
+ get errors() {
+ return this._errors;
+ }
+
+ @api
+ get validity() {
+ return { valid: !this._errors || this._errors.length === 0 };
+ }
+
+ @api
+ get value() {
+ return this.getSelection();
+ }
+
+ @api
+ setSearchResults(results) {
+ // Reset the spinner
+ this.loading = false;
+ // Clone results before modifying them to avoid Locker restriction
+ let resultsLocal = JSON.parse(JSON.stringify(results));
+ // Remove selected items from search results
+ const selectedIds = this._curSelection.map((sel) => sel.id);
+ resultsLocal = resultsLocal.filter((result) => selectedIds.indexOf(result.id) === -1);
+ // Format results
+ const cleanSearchTerm = this._searchTerm.replace(REGEX_SOSL_RESERVED, '.?').replace(REGEX_EXTRA_TRAP, '\\$1');
+ const regex = new RegExp(`(${cleanSearchTerm})`, 'gi');
+ this._searchResults = resultsLocal.map((result) => {
+ // Format title and subtitle
+ if (this._searchTerm.length > 0) {
+ result.titleFormatted = result.title
+ ? result.title.replace(regex, '<strong>$1</strong>')
+ : result.title;
+ result.subtitleFormatted = result.subtitle
+ ? result.subtitle.replace(regex, '<strong>$1</strong>')
+ : result.subtitle;
+ } else {
+ result.titleFormatted = result.title;
+ result.subtitleFormatted = result.subtitle;
+ }
+ // Add icon if missing
+ if (typeof result.icon === 'undefined') {
+ result.icon = 'standard:default';
+ }
+ return result;
+ });
+ // Add local state and dynamic class to search results
+ this._focusedResultIndex = null;
+ const self = this;
+ this.searchResultsLocalState = this._searchResults.map((result, i) => {
+ return {
+ result,
+ state: {},
+ get classes() {
+ let cls = 'slds-media slds-media_center slds-listbox__option slds-listbox__option_entity';
+ if (result.subtitleFormatted) {
+ cls += ' slds-listbox__option_has-meta';
+ }
+ if (self._focusedResultIndex === i) {
+ cls += ' slds-has-focus';
+ }
+ return cls;
+ }
+ };
+ });
+ }
+
+ @api
+ getSelection() {
+ return this._curSelection;
+ }
+
+ @api
+ setDefaultResults(results) {
+ this._defaultSearchResults = [...results];
+ if (this._searchResults.length === 0) {
+ this.setSearchResults(this._defaultSearchResults);
+ }
+ }
+
+ @api
+ blur() {
+ this.template.querySelector('input')?.blur();
+ }
+
+ // INTERNAL FUNCTIONS
+
+ updateSearchTerm(newSearchTerm) {
+ this._searchTerm = newSearchTerm;
+
+ // Compare clean new search term with current one and abort if identical
+ const newCleanSearchTerm = newSearchTerm.trim().replace(REGEX_SOSL_RESERVED, '?').toLowerCase();
+ if (this._cleanSearchTerm === newCleanSearchTerm) {
+ return;
+ }
+
+ // Save clean search term
+ this._cleanSearchTerm = newCleanSearchTerm;
+
+ // Ignore search terms that are too small after removing special characters
+ if (newCleanSearchTerm.replace(/\?/g, '').length < this.minSearchTermLength) {
+ this.setSearchResults(this._defaultSearchResults);
+ return;
+ }
+
+ // Apply search throttling (prevents search if user is still typing)
+ if (this._searchThrottlingTimeout) {
+ clearTimeout(this._searchThrottlingTimeout);
+ }
+ // eslint-disable-next-line @lwc/lwc/no-async-operation
+ this._searchThrottlingTimeout = setTimeout(() => {
+ // Send search event if search term is long enougth
+ if (this._cleanSearchTerm.length >= this.minSearchTermLength) {
+ // Display spinner until results are returned
+ this.loading = true;
+
+ const searchEvent = new CustomEvent('search', {
+ detail: {
+ searchTerm: this._cleanSearchTerm,
+ rawSearchTerm: newSearchTerm,
+ selectedIds: this._curSelection.map((element) => element.id)
+ }
+ });
+ this.dispatchEvent(searchEvent);
+ }
+ this._searchThrottlingTimeout = null;
+ }, SEARCH_DELAY);
+ }
+
+ isSelectionAllowed() {
+ if (this.isMultiEntry) {
+ return true;
+ }
+ return !this.hasSelection();
+ }
+
+ hasSelection() {
+ return this._curSelection.length > 0;
+ }
+
+ processSelectionUpdate(isUserInteraction) {
+ // Reset search
+ this._cleanSearchTerm = '';
+ this._searchTerm = '';
+ this.setSearchResults([...this._defaultSearchResults]);
+ // Indicate that component was interacted with
+ this._isDirty = isUserInteraction;
+ // Blur input after single select lookup selection
+ if (!this.isMultiEntry && this.hasSelection()) {
+ this._hasFocus = false;
+ }
+ // If selection was changed by user, notify parent components
+ if (isUserInteraction) {
+ const selectedIds = this._curSelection.map((sel) => sel.id);
+ this.dispatchEvent(new CustomEvent('selectionchange', { detail: selectedIds }));
+ }
+ }
+
+ // EVENT HANDLING
+
+ handleInput(event) {
+ // Prevent action if selection is not allowed
+ if (!this.isSelectionAllowed()) {
+ return;
+ }
+ this.updateSearchTerm(event.target.value);
+ }
+
+ handleKeyDown(event) {
+ if (this._focusedResultIndex === null) {
+ this._focusedResultIndex = -1;
+ }
+ if (event.keyCode === KEY_ARROW_DOWN) {
+ // If we hit 'down', select the next item, or cycle over.
+ this._focusedResultIndex++;
+ if (this._focusedResultIndex >= this._searchResults.length) {
+ this._focusedResultIndex = 0;
+ }
+ event.preventDefault();
+ } else if (event.keyCode === KEY_ARROW_UP) {
+ // If we hit 'up', select the previous item, or cycle over.
+ this._focusedResultIndex--;
+ if (this._focusedResultIndex < 0) {
+ this._focusedResultIndex = this._searchResults.length - 1;
+ }
+ event.preventDefault();
+ } else if (event.keyCode === KEY_ENTER && this._hasFocus && this._focusedResultIndex >= 0) {
+ // If the user presses enter, and the box is open, and we have used arrows,
+ // treat this just like a click on the listbox item
+ const selectedId = this._searchResults[this._focusedResultIndex].id;
+ this.template.querySelector(`[data-recordid="${selectedId}"]`).click();
+ event.preventDefault();
+ }
+ }
+
+ handleResultClick(event) {
+ const recordId = event.currentTarget.dataset.recordid;
+
+ // Save selection
+ const selectedItem = this._searchResults.find((result) => result.id === recordId);
+ if (!selectedItem) {
+ return;
+ }
+ const newSelection = [...this._curSelection];
+ newSelection.push(selectedItem);
+ this._curSelection = newSelection;
+
+ // Process selection update
+ this.processSelectionUpdate(true);
+ }
+
+ handleComboboxMouseDown(event) {
+ const mainButton = 0;
+ if (event.button === mainButton) {
+ this._cancelBlur = true;
+ }
+ }
+
+ handleComboboxMouseUp() {
+ this._cancelBlur = false;
+ // Re-focus to text input for the next blur event
+ this.template.querySelector('input').focus();
+ }
+
+ handleFocus() {
+ // Prevent action if selection is not allowed
+ if (!this.isSelectionAllowed()) {
+ return;
+ }
+ this._hasFocus = true;
+ this._focusedResultIndex = null;
+ }
+
+ handleBlur() {
+ // Prevent action if selection is either not allowed or cancelled
+ if (!this.isSelectionAllowed() || this._cancelBlur) {
+ return;
+ }
+ this._hasFocus = false;
+ }
+
+ handleRemoveSelectedItem(event) {
+ if (this.disabled) {
+ return;
+ }
+ const recordId = event.currentTarget.name;
+ this._curSelection = this._curSelection.filter((item) => item.id !== recordId);
+ // Process selection update
+ this.processSelectionUpdate(true);
+ }
+
+ handleClearSelection() {
+ this._curSelection = [];
+ this._hasFocus = false;
+ // Process selection update
+ this.processSelectionUpdate(true);
+ }
+
+ handleNewRecordClick(event) {
+ const objectApiName = event.currentTarget.dataset.sobject;
+ const selection = this.newRecordOptions.find((option) => option.value === objectApiName);
+
+ const preNavigateCallback = selection.preNavigateCallback
+ ? selection.preNavigateCallback
+ : () => Promise.resolve();
+ preNavigateCallback(selection).then(() => {
+ this[NavigationMixin.Navigate]({
+ type: 'standard__objectPage',
+ attributes: {
+ objectApiName,
+ actionName: 'new'
+ },
+ state: {
+ defaultFieldValues: selection.defaults
+ }
+ });
+ });
+ }
+
+ // STYLE EXPRESSIONS
+
+ get isSingleEntry() {
+ return !this.isMultiEntry;
+ }
+
+ get isListboxOpen() {
+ const isSearchTermValid = this._cleanSearchTerm && this._cleanSearchTerm.length >= this.minSearchTermLength;
+ return (
+ this._hasFocus &&
+ this.isSelectionAllowed() &&
+ (isSearchTermValid || this.hasResults || this.newRecordOptions?.length > 0)
+ );
+ }
+
+ get hasResults() {
+ return this._searchResults.length > 0;
+ }
+
+ get getFormElementClass() {
+ return this.variant === VARIANT_LABEL_INLINE
+ ? 'slds-form-element slds-form-element_horizontal'
+ : 'slds-form-element';
+ }
+
+ get getLabelClass() {
+ return this.variant === VARIANT_LABEL_HIDDEN
+ ? 'slds-form-element__label slds-assistive-text'
+ : 'slds-form-element__label';
+ }
+
+ get getContainerClass() {
+ let css = 'slds-combobox_container ';
+ if (this._errors.length > 0) {
+ css += 'has-custom-error';
+ }
+ return css;
+ }
+
+ get getDropdownClass() {
+ let css = 'slds-combobox slds-dropdown-trigger slds-dropdown-trigger_click ';
+ if (this.isListboxOpen) {
+ css += 'slds-is-open';
+ }
+ return css;
+ }
+
+ get getInputClass() {
+ let css = 'slds-input slds-combobox__input has-custom-height ';
+ if (this._hasFocus && this.hasResults) {
+ css += 'slds-has-focus ';
+ }
+ if (this._errors.length > 0 || (this._isDirty && this.required && !this.hasSelection())) {
+ css += 'has-custom-error ';
+ }
+ if (!this.isMultiEntry) {
+ css += 'slds-combobox__input-value ' + (this.hasSelection() ? 'has-custom-border' : '');
+ }
+ return css;
+ }
+
+ get getComboboxClass() {
+ let css = 'slds-combobox__form-element slds-input-has-icon ';
+ if (this.isMultiEntry) {
+ css += 'slds-input-has-icon_right';
+ } else {
+ css += this.hasSelection() ? 'slds-input-has-icon_left-right' : 'slds-input-has-icon_right';
+ }
+ return css;
+ }
+
+ get getSearchIconClass() {
+ let css = 'slds-input__icon slds-input__icon_right ';
+ if (!this.isMultiEntry) {
+ css += this.hasSelection() ? 'slds-hide' : '';
+ }
+ return css;
+ }
+
+ get getClearSelectionButtonClass() {
+ return (
+ 'slds-button slds-button_icon slds-input__icon slds-input__icon_right ' +
+ (this.hasSelection() ? '' : 'slds-hide')
+ );
+ }
+
+ get getSelectIconName() {
+ return this.hasSelection() ? this._curSelection[0].icon : 'standard:default';
+ }
+
+ get getSelectIconClass() {
+ return 'slds-combobox__input-entity-icon ' + (this.hasSelection() ? '' : 'slds-hide');
+ }
+
+ get getInputValue() {
+ if (this.isMultiEntry) {
+ return this._searchTerm;
+ }
+ return this.hasSelection() ? this._curSelection[0].title : this._searchTerm;
+ }
+
+ get getInputTitle() {
+ if (this.isMultiEntry) {
+ return '';
+ }
+ return this.hasSelection() ? this._curSelection[0].title : '';
+ }
+
+ get getListboxClass() {
+ return (
+ 'slds-dropdown ' +
+ (this.scrollAfterNItems ? `slds-dropdown_length-with-icon-${this.scrollAfterNItems} ` : '') +
+ 'slds-dropdown_fluid'
+ );
+ }
+
+ get isInputReadonly() {
+ if (this.isMultiEntry) {
+ return false;
+ }
+ return this.hasSelection();
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lookup/lookup.js-meta.xml b/force-app/main/default/lwc/lookup/lookup.js-meta.xml
new file mode 100644
index 0000000..036b264
--- /dev/null
+++ b/force-app/main/default/lwc/lookup/lookup.js-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lookup">
+ <apiVersion>57.0</apiVersion>
+ <isExposed>false</isExposed>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/maintenanceContract/maintenanceContract.js b/force-app/main/default/lwc/maintenanceContract/maintenanceContract.js
index 2891246..219c89f 100644
--- a/force-app/main/default/lwc/maintenanceContract/maintenanceContract.js
+++ b/force-app/main/default/lwc/maintenanceContract/maintenanceContract.js
@@ -70,12 +70,8 @@
connectedCallback()
{
this.getTableData();
- // debugger
- // var windowsheight=(window.screen.availHeight-255);
- // var windowsheight=(window.innerHeight-255);
- // this.tab="height:"+windowsheight+"px;overflow:scroll;margin-left: 5px;margin-top: 5px;";
- this.tab="px;overflow:scroll;margin-left: 5px;margin-top: 5px;";
-
+ var windowsheight=(window.screen.availHeight-255);
+ this.tab="height:"+windowsheight+"px;overflow:scroll;margin-left: 5px;margin-top: 5px;";
this.iftab=true;
this.InitPorpsData();
}
diff --git a/force-app/main/default/lwc/newOrderButton/newOrderButton.html b/force-app/main/default/lwc/newOrderButton/newOrderButton.html
new file mode 100644
index 0000000..3239f2d
--- /dev/null
+++ b/force-app/main/default/lwc/newOrderButton/newOrderButton.html
@@ -0,0 +1,4 @@
+<template>
+ <!-- <lightning-button label="鏂板缓娑堣�楀搧璁㈠崟" onclick={handleClick} style="background-color:#515151"></lightning-button> -->
+ <div onclick={handleClick} style="width:200px;height:30px;background:#515151;font-weight:bold;font-size:16px Arial;color:white;border-radius: 5px 10px 10px 5px;;padding:5px 9px;cursor:pointer">鏂板缓娑堣�楀搧璁㈠崟</div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/newOrderButton/newOrderButton.js b/force-app/main/default/lwc/newOrderButton/newOrderButton.js
new file mode 100644
index 0000000..f106862
--- /dev/null
+++ b/force-app/main/default/lwc/newOrderButton/newOrderButton.js
@@ -0,0 +1,24 @@
+import { LightningElement, track } from 'lwc';
+import { NavigationMixin } from 'lightning/navigation';
+
+export default class NewOrderButton extends NavigationMixin(LightningElement) {
+
+ // clickedButtonLabel;
+
+
+ handleClick(event) {
+ var rtId = event.target.id;
+ // this.clickedButtonLabel = event.target.label;
+ this[NavigationMixin.Navigate]({
+ type: 'standard__objectPage',
+ attributes: {
+ objectApiName: 'Consumable_order__c',
+ actionName: 'new'
+ },
+ state: {
+ useRecordTypeCheck: 1
+ }
+ });
+ }
+
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/newOrderButton/newOrderButton.js-meta.xml b/force-app/main/default/lwc/newOrderButton/newOrderButton.js-meta.xml
new file mode 100644
index 0000000..ac620f2
--- /dev/null
+++ b/force-app/main/default/lwc/newOrderButton/newOrderButton.js-meta.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>56.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__AppPage</target>
+ <target>lightning__RecordPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightningCommunity__Page</target>
+ <target>lightningCommunity__Default</target>
+ <target>lightning__Tab</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/newOrderLWC/newOrderLWC.html b/force-app/main/default/lwc/newOrderLWC/newOrderLWC.html
new file mode 100644
index 0000000..b019895
--- /dev/null
+++ b/force-app/main/default/lwc/newOrderLWC/newOrderLWC.html
@@ -0,0 +1,3 @@
+<template>
+ <lightning-button label="Neutral" title="Non-primary action" onclick={handleClick} class="slds-m-left_x-small"></lightning-button>
+ </template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/newOrderLWC/newOrderLWC.js b/force-app/main/default/lwc/newOrderLWC/newOrderLWC.js
new file mode 100644
index 0000000..7e249b5
--- /dev/null
+++ b/force-app/main/default/lwc/newOrderLWC/newOrderLWC.js
@@ -0,0 +1,39 @@
+import { LightningElement,track,api } from 'lwc';
+import { NavigationMixin } from 'lightning/navigation';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+
+export default class NewOrderLWC extends LightningElement(LightningElement) {
+ @track
+ show = false
+ showModal() {
+ this.show = true
+ }
+ Navigate(event) {
+ let recordId = event.detail.id
+ this.openOrder = false
+ this[NavigationMixin.Navigate]({
+ type: 'standard__recordPage',
+ attributes: {
+ recordId: recordId,
+ objectApiName: 'Opportunity',
+ actionName: 'view',
+ },
+ });
+ this.showSuccessNotification('Saved','New opportunity saved','success')
+ }
+
+ // toast util method
+ showSuccessNotification(_title, _message, _variant) {
+ const evt = new ShowToastEvent({
+ title: _title,
+ message: _message,
+ variant: _variant,
+ });
+ this.dispatchEvent(evt);
+ }
+
+ cancel() {
+ this.show = false
+ }
+
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/newOrderLWC/newOrderLWC.js-meta.xml b/force-app/main/default/lwc/newOrderLWC/newOrderLWC.js-meta.xml
new file mode 100644
index 0000000..41e5138
--- /dev/null
+++ b/force-app/main/default/lwc/newOrderLWC/newOrderLWC.js-meta.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>56.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__AppPage</target>
+ <target>lightning__RecordPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightningCommunity__Page</target>
+ <target>lightningCommunity__Default</target>
+ <target>lightning__Tab</target>
+ <target>lightning__RecordAction</target>
+
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/newOrderList/newOrderList.html b/force-app/main/default/lwc/newOrderList/newOrderList.html
new file mode 100644
index 0000000..9c879ef
--- /dev/null
+++ b/force-app/main/default/lwc/newOrderList/newOrderList.html
@@ -0,0 +1,19 @@
+<template>
+ <div style="border-top: 3px solid #51606E;;border-bottom: 1px solid #D4D4D4;padding:3px;">
+ <p style="font-size: 19px;"><strong>搴撳瓨璇︽儏</strong></p>
+ </div>
+ <div style="padding:10px;">
+ <div style="height: 300px;">
+ <lightning-datatable
+ key-field="id"
+ data={data}
+ columns={columns}
+ hide-checkbox-column
+ default-sort-direction={defaultSortDirection}
+ sorted-direction={sortDirection}
+ sorted-by={sortedBy}
+ onsort={onHandleSort}>
+ </lightning-datatable>
+ </div>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/newOrderList/newOrderList.js b/force-app/main/default/lwc/newOrderList/newOrderList.js
new file mode 100644
index 0000000..e585d5c
--- /dev/null
+++ b/force-app/main/default/lwc/newOrderList/newOrderList.js
@@ -0,0 +1,65 @@
+import { LightningElement,track } from 'lwc';
+
+
+
+export default class NewOrderList extends NavigationMixin(LightningElement) {
+ @track data = [];
+ //鎺掑簭
+ defaultSortDirection = 'asc';
+ sortDirection = 'asc';
+ sortedBy;
+
+
+ onHandleSort(event) {
+ console.log('===>杩涘叆鏂规硶');
+ const { fieldName: sortedBy, sortDirection } = event.detail;
+ const cloneData = [...this.data];
+ cloneData.sort(this.sortBy(sortedBy, sortDirection === 'asc' ? 1 : -1));
+ this.data = cloneData;
+ this.sortDirection = sortDirection;
+ this.sortedBy = sortedBy;
+ }
+
+ sortBy(field, reverse, primer) {
+ const key = primer
+ ? function (x) {
+ return primer(x[field]);
+ }
+ : function (x) {
+ return x[field];
+ };
+
+ return function (a, b) {
+ a = key(a);
+ b = key(b);
+ return reverse * ((a > b) - (b > a));
+ };
+ }
+
+
+ // @track orderList =[];
+ // @wire(getOrderList)
+ // result({error,data}){
+ // if(data){
+ // this.orderList = data;
+ // console.log("return is "+this.record);
+ // JSON.stringify("===>data",data);
+ // }
+ // if(error){
+ // this.error= error;
+ // console.log("retrun is "+this.error);
+ // }
+ // }
+ // showDetail(event){
+ // var orderdetailUrl = event.currentTarget.dataset.name;
+ // console.log('===>orderdetailUrl'+orderdetailUrl);
+ // this[NavigationMixin.Navigate]({
+ // type: 'standard__recordPage',
+ // attributes: {
+ // recordId: orderdetailUrl,
+ // objectApiName: 'Consumable_order__c',
+ // actionName: 'view'
+ // }
+ // });
+ // }
+ }
\ No newline at end of file
diff --git a/force-app/main/default/lwc/newOrderList/newOrderList.js-meta.xml b/force-app/main/default/lwc/newOrderList/newOrderList.js-meta.xml
new file mode 100644
index 0000000..5df8676
--- /dev/null
+++ b/force-app/main/default/lwc/newOrderList/newOrderList.js-meta.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>56.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__AppPage</target>
+ <target>lightning__RecordPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightningCommunity__Page</target>
+ <target>lightningCommunity__Default</target>
+ <target>lightning__Tab</target>
+ <target>lightning__RecordAction</target>
+
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/newPaymentPlanLoadLWC/newPaymentPlanLoadLWC.css b/force-app/main/default/lwc/newPaymentPlanLoadLWC/newPaymentPlanLoadLWC.css
new file mode 100644
index 0000000..571ad53
--- /dev/null
+++ b/force-app/main/default/lwc/newPaymentPlanLoadLWC/newPaymentPlanLoadLWC.css
@@ -0,0 +1,14 @@
+.Narrow{
+ padding: 20px;
+}
+.searchField,.searchField .input-text{
+ /*display: flex;*/
+}
+.searchField .slds-combobox_container{
+ width: 160px !important;
+}
+.Firstaccordion {
+ --slds-c-accordion-heading-text-color: white;
+ --slds-c-accordion-summary-color-background: Black;
+ --slds-c-accordion-heading-font-size: 20px;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/newPaymentPlanLoadLWC/newPaymentPlanLoadLWC.html b/force-app/main/default/lwc/newPaymentPlanLoadLWC/newPaymentPlanLoadLWC.html
new file mode 100644
index 0000000..d55cb06
--- /dev/null
+++ b/force-app/main/default/lwc/newPaymentPlanLoadLWC/newPaymentPlanLoadLWC.html
@@ -0,0 +1,228 @@
+<template>
+ <lightning-card variant="Narrow">
+ <div style="padding: 0 20px">
+ <div>
+ <lightning-button label="淇濆瓨" onclick={handlesave} onload ={CloseJs} disabled = {dis29}></lightning-button>
+ <lightning-button label="鍙栨秷" onclick ={CloseJs} disabled = {dis30}></lightning-button>
+ <lightning-button label="鎵撳嵃" onclick={handlePrint} disabled = {dis28} onload ={PrintJs}></lightning-button>
+ <lightning-layout>
+ <lightning-combobox
+ name="progress"
+ label="鏄惁涓烘爣鍑嗗悎鍚岋細"
+ value={PageMCEElement.Is_Standard_Contract__c}
+ placeholder=""
+ options={IsStandardContractoptions}
+ required
+ disabled = {dis1}
+ onchange={handleIsStandardContract} ></lightning-combobox>
+ <lightning-layout-item flexibility="auto" padding="around-small">
+ </lightning-layout-item>
+ <lightning-layout-item flexibility="auto" padding="around-small">
+ </lightning-layout-item>
+ <lightning-layout-item flexibility="auto" padding="around-small">
+ </lightning-layout-item>
+ </lightning-layout>
+ <p>(蹇呭~椤癸紝鎵�鏈夊悎鍚屽潎蹇呴』鍕鹃��) </p>
+
+ </div>
+ <lightning-accordion allow-multiple-sections-open
+ active-section-name={activeSections} class="Firstaccordion">
+ <lightning-accordion-section name="paymentPlan" label="浠樻璁″垝(蹇呭~鍐呭)锛�">
+ <lightning-layout>
+ <lightning-layout-item flexibility="auto" padding="around-small">
+ <lightning-combobox
+ name="progress"
+ label="浠樻鏂瑰紡锛�"
+ value={PageMCEElement.Term_Of_Payment__c}
+ options={TermOfPaymentoptions}
+ onchange={handleTermOfPayment}
+ class="searchField"
+ disabled = {dis2}
+ ></lightning-combobox>
+ </lightning-layout-item>
+ <lightning-layout-item flexibility="auto" padding="around-small">
+ </lightning-layout-item>
+ <lightning-layout-item flexibility="auto" padding="around-small">
+ </lightning-layout-item>
+ <lightning-layout-item flexibility="auto" padding="around-small">
+ </lightning-layout-item>
+ </lightning-layout>
+ <template if:true={showTabOnce}>
+ <lightning-layout >
+ <div style="padding: 10px 3px;border-bottom: 1px solid;font: 16px;font-size: 20px;">涓�娆℃�т粯娆�</div>
+ </lightning-layout>
+ <lightning-layout vertical-align="center">
+ <p style="font-size: 15px;">鏈悎鍚屾寮忕璁箣鏃ヨ捣 </p>
+ <lightning-combobox name="progress" label="" disabled = {dis3} value={PageMCEElement.one_off_payment_agreed_period__c} options={oneoffpaymentagreedperiodOptions}
+ onchange={handleOneoff} class="searchField" style = "width:60px" variant="label-hidden"></lightning-combobox>
+ <p style="font-size: 15px;"> 鏃ュ唴锛岀敳鏂瑰悜涔欐柟鏀粯鍏ㄩ儴鍚堝悓娆句汉姘戝竵</p>{PageMCEElement.Contract_Amount__c}<p style="font-size: 15px;"> 鍏冿紝澶у啓</p>{PageMCEElement.Total_Contract_Amount_In_Words__c}<p style="font-size: 15px;">銆�</p>
+ </lightning-layout>
+ </template>
+ <template if:true={showTabTwice}>
+ <lightning-layout>
+ <div style="padding: 10px 3px;border-bottom: 1px solid;font: 16px;font-size: 20px;">澶氭浠樻</div>
+ </lightning-layout>
+ <lightning-layout vertical-align="center">
+ <p style="font-size: 15px;">鏈悎鍚屾椤瑰垎 </p>
+ <lightning-combobox name="progress" label="" disabled = {dis4} value={PageMCEElement.Total_Payment_Time__c} options={TotalPaymentTimeOption}
+ onchange={handleTotalPaymentTime} class="searchField" style = "width:60px" variant="label-hidden"></lightning-combobox>
+ <p style="font-size: 15px;"> 鏈熶粯鍑猴紝璇︾粏濡備笅锛�</p>
+ </lightning-layout>
+ <lightning-layout vertical-align="center">
+ <p style="font-size: 15px;">绗竴鏈熸椤逛粯娆炬椂闂翠负 </p>
+ <lightning-input disabled = {dis5} type="date" variant="label-hidden" label="" value={PageMCEElement.Payment_Plan_Date_First__c} onchange={handleDateFirst} ></lightning-input>
+ <p style="font-size: 15px;"> 鍓�,鐢叉柟鍚戜箼鏂规敮浠樹汉姘戝竵 </p>
+ <lightning-input disabled = {dis6} value={PageMCEElement.Payment_Plan_Sum_First__c} type="text" variant="label-hidden" label="" class="searchField" onchange={handleSumFirst}></lightning-input>
+ <p style="font-size: 15px;"> 鍏冿紝澶у啓</p>{PageMCEElement.Payment_Plan_Sum_First_in_Word__c}<p style="font-size: 15px;">;</p>
+ </lightning-layout>
+ <lightning-layout vertical-align="center">
+ <p style="font-size: 15px;">绗簩鏈熸椤逛粯娆炬椂闂翠负 </p>
+ <lightning-input disabled = {dis7} type="date" variant="label-hidden" label="" value={PageMCEElement.Payment_Plan_Date_Second__c} onchange={handleDateSecond}></lightning-input>
+ <p style="font-size: 15px;"> 鍓�,鐢叉柟鍚戜箼鏂规敮浠樹汉姘戝竵 </p>
+ <lightning-input disabled = {dis8} value={PageMCEElement.Payment_Plan_Sum_Second__c} type="text" variant="label-hidden" label="" class="searchField" onchange={handleSumSecond}></lightning-input>
+ <p style="font-size: 15px;"> 鍏冿紝澶у啓</p>{PageMCEElement.Payment_Plan_Sum_Second_in_Word__c}<p style="font-size: 15px;">;</p>
+ </lightning-layout>
+ <lightning-layout vertical-align="center">
+ <p style="font-size: 15px;">绗笁鏈熸椤逛粯娆炬椂闂翠负 </p>
+ <lightning-input disabled = {dis9} type="date" variant="label-hidden" label="" value={PageMCEElement.Payment_Plan_Date_Third__c} onchange={handleDateThird}></lightning-input>
+ <p style="font-size: 15px;"> 鍓�,鐢叉柟鍚戜箼鏂规敮浠樹汉姘戝竵 </p>
+ <lightning-input disabled = {dis10} value={PageMCEElement.Payment_Plan_Sum_Third__c} type="text" variant="label-hidden" label="" class="searchField" onchange={handleSumThird}></lightning-input>
+ <p style="font-size: 15px;"> 鍏冿紝澶у啓</p>{PageMCEElement.Payment_Plan_Sum_Third_in_Word__c}<p style="font-size: 15px;">;</p>
+ </lightning-layout>
+ <lightning-layout vertical-align="center">
+ <p style="font-size: 15px;">绗洓鏈熸椤逛粯娆炬椂闂翠负 </p>
+ <lightning-input disabled = {dis11} type="date" variant="label-hidden" label="" value={PageMCEElement.Payment_Plan_Date_Forth__c} onchange={handleDateForth}></lightning-input>
+ <p style="font-size: 15px;"> 鍓�,鐢叉柟鍚戜箼鏂规敮浠樹汉姘戝竵 </p>
+ <lightning-input disabled = {dis12} value={PageMCEElement.Payment_Plan_Sum_Forth__c} type="text" variant="label-hidden" label="" class="searchField" onchange={handleSumForth}></lightning-input>
+ <p style="font-size: 15px;"> 鍏冿紝澶у啓</p>{PageMCEElement.Payment_Plan_Sum_Forth_in_Word__c}<p style="font-size: 15px;">;</p>
+ </lightning-layout>
+ <lightning-layout vertical-align="center">
+ <p style="font-size: 15px;">绗簲鏈熸椤逛粯娆炬椂闂翠负 </p>
+ <lightning-input disabled = {dis13} type="date" variant="label-hidden" label="" value={PageMCEElement.Payment_Plan_Date_Fivth__c} onchange={handleDateFivth}></lightning-input>
+ <p style="font-size: 15px;"> 鍓�,鐢叉柟鍚戜箼鏂规敮浠樹汉姘戝竵 </p>
+ <lightning-input disabled = {dis14} value={PageMCEElement.Payment_Plan_Sum_Fivth__c} type="text" variant="label-hidden" label="" class="searchField" onchange={handleSumFivth}></lightning-input>
+ <p style="font-size: 15px;"> 鍏冿紝澶у啓</p>{PageMCEElement.Payment_Plan_Sum_Fivth_in_Word__c}<p style="font-size: 15px;">;</p>
+ </lightning-layout>
+ <lightning-layout vertical-align="center">
+ <p style="font-size: 15px;">绗叚鏈熸椤逛粯娆炬椂闂翠负 </p>
+ <lightning-input disabled = {dis15} type="date" variant="label-hidden" label="" value={PageMCEElement.Payment_Plan_Date_Sixth__c} onchange={handleDateSixth}></lightning-input>
+ <p style="font-size: 15px;"> 鍓�,鐢叉柟鍚戜箼鏂规敮浠樹汉姘戝竵 </p>
+ <lightning-input disabled = {dis16} value={PageMCEElement.Payment_Plan_Sum_Sixth__c} type="text" variant="label-hidden" label="" class="searchField" onchange={handleSumSixth}></lightning-input>
+ <p style="font-size: 15px;"> 鍏冿紝澶у啓</p>{PageMCEElement.Payment_Plan_Sum_Sixth_in_Word__c}<p style="font-size: 15px;">;</p>
+ </lightning-layout>
+ </template>
+ </lightning-accordion-section>
+ <div style="margin-left:5%; color:Blue ;font-size:25px">
+ <p>鎻愮ず淇℃伅锛氭爣鍑嗗悎鍚屼笅杩板唴瀹归渶瑕佸叏閮ㄥ~鍐欍��</p>
+ </div>
+ <lightning-accordion-section name="TextInformation" label="鏂囨湰淇℃伅锛�">
+ <template if:true={showTabOne}>
+ <lightning-layout>
+ <lightning-layout-item flexibility="auto" padding="around-small">
+ <lightning-combobox disabled = {dis17} name="progress" label="灏忎慨鐞嗘椂闄愶細锛堝伐浣滄棩锛�" value={PageMCEElement.Small_Repair_Time__c} options={SmallRepairTimeOptions}
+ onchange={handleSmallRepairTime} class="searchField"></lightning-combobox>
+ </lightning-layout-item>
+ <lightning-layout-item flexibility="auto" padding="around-small">
+ <lightning-combobox
+ name="progress" disabled = {dis18} label="澶т慨鐞嗘椂闄愶細锛堝伐浣滄棩锛�" value={PageMCEElement.Big_Repair_Time__c} options={BigRepairTimeOptions} onchange={handleBigRepairTime}
+ class="searchField"></lightning-combobox>
+ </lightning-layout-item>
+ <lightning-layout-item flexibility="auto" padding="around-small">
+ <lightning-combobox
+ name="progress" disabled = {dis19} label="鐜板満鎶�鏈敮鎸佹椂闄愶細锛堝皬鏃讹級" value={PageMCEElement.Live_Technical_Support_Time__c} options={LiveTechnicalSupportTimeOptions} onchange={handleLiveTechnicalSupportTime}
+ class="searchField"></lightning-combobox>
+ </lightning-layout-item>
+ <lightning-layout-item flexibility="auto" padding="around-small">
+ <lightning-combobox disabled = {dis20}
+ name="progress" label="宸″洖锛氾紙姣忓勾锛�" value={PageMCEElement.Tour_Check__c} options={TourCheckOptions} onchange={handleTourCheck}
+ class="searchField"></lightning-combobox>
+ </lightning-layout-item>
+ </lightning-layout>
+
+ <lightning-layout>
+ <lightning-layout-item flexibility="auto" padding="around-small">
+ <lightning-combobox disabled = {dis21}
+ name="progress" label="闄ゅ皹锛氾紙姣忓勾锛�" value={PageMCEElement.Dedust__c} options={DedustOptions} onchange={handleDedust}
+ class="searchField" ></lightning-combobox>
+ </lightning-layout-item>
+ <lightning-layout-item flexibility="auto" padding="around-small">
+ <lightning-combobox disabled = {dis22}
+ name="progress" label="鍚堝悓浠芥暟锛氱敳鏂�:" value={PageMCEElement.First_Party_Contract_Number__c} options={FirstPartyContractNumberOptions} onchange={handleFirstPartyContractNumber}
+ class="searchField"></lightning-combobox>
+ </lightning-layout-item>
+ <lightning-layout-item flexibility="auto" padding="around-small">
+ <lightning-combobox disabled = {dis23}
+ name="progress" label="鍚堝悓浠芥暟锛氫箼鏂�:" value={PageMCEElement.Second_Party_Contract_Number__c} options={SecondPartyContractNumberOptions} onchange={handleSecondPartyContractNumber}
+ class="searchField" ></lightning-combobox>
+ </lightning-layout-item>
+ <lightning-layout-item flexibility="auto" padding="around-small">
+ </lightning-layout-item>
+ </lightning-layout>
+
+ <lightning-layout>
+ <lightning-layout-item flexibility="auto" padding="around-small">
+ <lightning-textarea disabled = {dis24} name="EngineerName" label="宸ョ▼甯堝鍚嶏細" value={PageMCEElement.Engineer_Name__c} onchange={handleEngineerName}></lightning-textarea>
+ </lightning-layout-item>
+ <lightning-layout-item flexibility="auto" padding="around-small">
+ <lightning-textarea disabled = {dis25} name="Tel" label="鎵嬫満鍙风爜锛�" onchange={handlephoneNumber} value={PageMCEElement.Phone_Number__c}></lightning-textarea>
+ </lightning-layout-item>
+ </lightning-layout>
+ </template>
+
+ <lightning-layout>
+ <lightning-layout-item flexibility="auto" padding="around-small">
+ <lightning-combobox disabled = {dis26}
+ name="progress" label="鐐规锛氾紙姣忓勾锛夈�愬繀濉」銆�" value={PageMCEElement.Inspection_Time__c} options={InspectionTimeOptions} onchange={handleInspectionTime}
+ class="searchField" required></lightning-combobox>
+ </lightning-layout-item>
+ <lightning-layout-item flexibility="auto" padding="around-small">
+ </lightning-layout-item>
+ <lightning-layout-item flexibility="auto" padding="around-small">
+ </lightning-layout-item>
+ <lightning-layout-item flexibility="auto" padding="around-small">
+ </lightning-layout-item>
+ </lightning-layout>
+ <lightning-layout>
+ <lightning-layout-item flexibility="auto" padding="around-small">
+ <p>鐐规鎬绘鏁帮細 鍏� {PageMCEElement.Inspection_Time__c} 娆�</p>
+ </lightning-layout-item>
+ <lightning-layout-item flexibility="auto" padding="around-small">
+ </lightning-layout-item>
+ <lightning-layout-item flexibility="auto" padding="around-small">
+ </lightning-layout-item>
+ <lightning-layout-item flexibility="auto" padding="around-small">
+ </lightning-layout-item>
+ </lightning-layout>
+ <lightning-layout>
+ <lightning-layout-item flexibility="auto" padding="around-small">
+ <lightning-combobox disabled = {dis27}
+ name="progress" label="鍗忓晢鏂瑰紡" value={PageMCEElement.Negotiate_Mean__c} options={NegotiateMeanOptions} onchange={handleNegotiateMean}
+ class="searchField"></lightning-combobox>
+ </lightning-layout-item>
+ <lightning-layout-item flexibility="auto" padding="around-small">
+ </lightning-layout-item>
+ <lightning-layout-item flexibility="auto" padding="around-small">
+ </lightning-layout-item>
+ <lightning-layout-item flexibility="auto" padding="around-small">
+ </lightning-layout-item>
+ </lightning-layout>
+ <lightning-layout>
+ <lightning-layout-item flexibility="auto" padding="around-small">
+ <p>鎻愮ず淇℃伅锛�(1)浠讳綍涓�鏂规湁鏉冨悜璁惧湪鍖椾含鐨勪腑鍥藉浗闄呯粡娴庤锤鏄撲徊瑁佸鍛樹細鐢宠浠茶锛屼徊瑁佺殑瑁佸喅鏄粓灞�鎬х殑锛屽鍙屾柟鍧囨湁绾︽潫鍔涖��(2)鍚戠敳鏂规墍鍦ㄥ湴鏈夌杈栨潈鐨勪汉姘戞硶闄㈡彁璧疯瘔璁笺��(3)鍚戜箼鏂规墍鍦ㄥ湴鏈夌杈栨潈鐨勪汉姘戞硶闄㈡彁璧疯瘔璁笺��</p>
+ </lightning-layout-item>
+ <lightning-layout-item flexibility="auto" padding="around-small">
+ </lightning-layout-item>
+ <lightning-layout-item flexibility="auto" padding="around-small">
+ </lightning-layout-item>
+ <lightning-layout-item flexibility="auto" padding="around-small">
+ </lightning-layout-item>
+ </lightning-layout>
+ <lightning-button label="淇濆瓨" onclick={handlesave} onload ={CloseJs} disabled = {dis29}></lightning-button>
+ <lightning-button label="鍙栨秷" onclick ={CloseJs} disabled = {dis30}></lightning-button>
+ <lightning-button label="鎵撳嵃" onclick={handlePrint} disabled = {dis28} onload ={PrintJs}></lightning-button>
+ </lightning-accordion-section>
+ </lightning-accordion>
+ </div>
+ </lightning-card>
+
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/newPaymentPlanLoadLWC/newPaymentPlanLoadLWC.js b/force-app/main/default/lwc/newPaymentPlanLoadLWC/newPaymentPlanLoadLWC.js
new file mode 100644
index 0000000..4f88117
--- /dev/null
+++ b/force-app/main/default/lwc/newPaymentPlanLoadLWC/newPaymentPlanLoadLWC.js
@@ -0,0 +1,521 @@
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { NavigationMixin } from 'lightning/navigation';
+import { updateRecord } from 'lightning/uiRecordApi';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+import print from '@salesforce/apex/NewPaymentPlanLoadLWCController.print';
+import init from '@salesforce/apex/NewPaymentPlanLoadLWCController.init';
+import save from '@salesforce/apex/NewPaymentPlanLoadLWCController.save';
+
+export default class newPaymentPlanLoadLWC extends LightningElement {
+ @api recordId;
+ PageMCEElement = {
+ Id: '',
+ Phone_Number__c: '',
+ Status__c: '',
+ old_Is_RecognitionModel__c: '',
+ Engineer_Name__c: '',
+ Is_Standard_Contract__c: '',
+ Term_Of_Payment__c: '',
+ one_off_payment_agreed_period__c: '',
+ Total_Payment_Time__c: '',
+ Payment_Plan_Date_First__c: '',
+ Payment_Plan_Date_Second__c: '',
+ Payment_Plan_Date_Third__c: '',
+ Payment_Plan_Date_Forth__c: '',
+ Payment_Plan_Date_Fivth__c: '',
+ Payment_Plan_Date_Sixth__c: '',
+ Payment_Plan_Sum_First__c: '',
+ Payment_Plan_Sum_Second__c: '',
+ Payment_Plan_Sum_Third__c: '',
+ Payment_Plan_Sum_Forth__c: '',
+ Payment_Plan_Sum_Fivth__c: '',
+ Payment_Plan_Sum_Sixth__c: '',
+ Small_Repair_Time__c: '',
+ Big_Repair_Time__c: '',
+ Live_Technical_Support_Time__c: '',
+ Tour_Check__c: '',
+ Dedust__c: '',
+ First_Party_Contract_Number__c: '',
+ Second_Party_Contract_Number__c: '',
+ Contract_Amount__c: '',
+ Total_Contract_Amount_In_Words__c: '',
+ Payment_Plan_Sum_First_in_Word__c: '',
+ Payment_Plan_Sum_Second_in_Word__c: '',
+ Payment_Plan_Sum_Third_in_Word__c: '',
+ Payment_Plan_Sum_Forth_in_Word__c: '',
+ Payment_Plan_Sum_Fivth_in_Word__c: '',
+ Payment_Plan_Sum_Sixth_in_Word__c: '',
+ Negotiate_Mean__c: '',
+ Amount_Warranty_Coverage_In_Word__c: '',
+ Amount_Warranty_Coverage__c: '',
+ Inspection_Time__c :''
+ };
+ printContract;
+ printAgent;
+ agreeUpperLimit;
+ ContractAllMonth;
+ statusSave;
+ activeSections = ['paymentPlan', 'TextInformation'];
+ showTabOne = true;
+ showTabTwice = false;
+ showTabOnce = true;
+ // 椤甸潰disable
+ dis1;
+ dis2;
+ dis3;
+ dis4;
+ dis5;
+ dis6;
+ dis7;
+ dis8;
+ dis9;
+ dis10;
+ dis11;
+ dis12;
+ dis13;
+ dis14;
+ dis15;
+ dis16;
+ dis17;
+ dis18;
+ dis19;
+ dis21;
+ dis22;
+ dis23;
+ dis24;
+ dis25;
+ dis26;
+ dis27;
+ dis28;
+ dis29;
+ dis30;
+ //鏄惁涓烘爣鍑嗗悎鍚�
+ get IsStandardContractoptions() {
+ return[{ label: '--鏃�--', value: '' },
+ { label: '鏄�', value: '鏄�' },
+ { label: '鍚�', value: '鍚�' }];
+ }
+
+ // 浠樻鏂瑰紡
+ TermOfPaymentoptions = [{ label: '涓�娆℃�т粯娆�', value: '涓�娆℃�т粯娆�' },
+ { label: '澶氭浠樻', value: '澶氭浠樻' }];
+
+ //涓�娆℃�т粯娆�
+ oneoffpaymentagreedperiodOptions = [{ label: '15', value: '15' },
+ { label: '30', value: '30' },
+ { label: '60', value: '60' }];
+ //澶氭浠樻
+ TotalPaymentTimeOption = [
+ { label: '1', value: '1' },
+ { label: '2', value: '2' },
+ { label: '3', value: '3' },
+ { label: '4', value: '4' },
+ { label: '5', value: '5' },
+ { label: '6', value: '6' }];
+ //灏忎慨鐞嗘椂闄愶細
+ SmallRepairTimeOptions = [{ label: '5', value: '5' },
+ { label: '7', value: '7' },
+ { label: '10', value: '10' }];
+ //澶т慨鐞嗘椂闄愶細
+ BigRepairTimeOptions = [{ label: '7', value: '7' },
+ { label: '10', value: '10' },
+ { label: '15', value: '15' },
+ { label: '20', value: '20' },
+ { label: '25', value: '25' },
+ { label: '30', value: '30' }];
+ //鐜板満鎶�鏈敮鎸佹椂闄愶細
+ LiveTechnicalSupportTimeOptions = [{ label: '24', value: '24' },
+ { label: '48', value: '48' },
+ { label: '72', value: '72' }];
+ //宸″洖锛�
+ TourCheckOptions = [{ label: '0', value: '0' },
+ { label: '1', value: '1' },
+ { label: '2', value: '2' },
+ { label: '3', value: '3' },
+ { label: '4', value: '4' }];
+ //鐐规1
+ InspectionTimeOptions = [
+ { label: '1', value: '1' },
+ { label: '2', value: '2' },
+ { label: '3', value: '3' },
+ { label: '4', value: '4' }];
+
+ //闄ゅ皹
+ DedustOptions = [{ label: '0', value: '0' },
+ { label: '1', value: '1' },
+ { label: '2', value: '2' }];
+ //鍚堝悓浠芥暟锛氱敳鏂�:
+ FirstPartyContractNumberOptions = [
+ { label: '1', value: '1' },
+ { label: '2', value: '2' },
+ { label: '3', value: '3' },
+ { label: '4', value: '4' },
+ { label: '5', value: '5' },
+ { label: '6', value: '6' },
+ { label: '7', value: '7' },
+ { label: '8', value: '8' },
+ { label: '9', value: '9' },
+ { label: '10', value: '10' }];
+ //鍚堝悓浠芥暟锛氫箼鏂�:
+ SecondPartyContractNumberOptions = [
+ { label: '1', value: '1' },
+ { label: '2', value: '2' },
+ { label: '3', value: '3' },
+ { label: '4', value: '4' },
+ { label: '5', value: '5' },
+ { label: '6', value: '6' },
+ { label: '7', value: '7' },
+ { label: '8', value: '8' },
+ { label: '9', value: '9' },
+ { label: '10', value: '10' }];
+ // 鍗忓晢鏂瑰紡
+ NegotiateMeanOptions = [
+ { label: '1', value: '1' },
+ { label: '2', value: '2' },
+ { label: '3', value: '3' }];
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback(){
+ this.recordId = 'a0H1000001DV1cp';
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ if (result.PageMCE == null) {
+ const event = new ShowToastEvent({
+ title: 'warning',
+ message: result.status,
+ variant:'warning',
+ });
+ this.dispatchEvent(event);
+ }
+ this.PageMCEElement.Status__c = result.PageMCE.Status__c;
+ this.ContractAllMonth = result.Contract_validMonth;
+ this.statusSave = result.statusSave;
+ this.PageMCEElement.old_Is_RecognitionModel__c = result.PageMCE.old_Is_RecognitionModel__c;
+ this.PageMCEElement.Engineer_Name__c = result.PageMCE.Engineer_Name__c;
+ this.PageMCEElement.Is_Standard_Contract__c = result.PageMCE.Is_Standard_Contract__c;
+ this.PageMCEElement.Term_Of_Payment__c = result.PageMCE.Term_Of_Payment__c;
+ this.PageMCEElement.one_off_payment_agreed_period__c = result.PageMCE.one_off_payment_agreed_period__c;
+ this.PageMCEElement.Total_Payment_Time__c = result.PageMCE.Total_Payment_Time__c;
+ this.PageMCEElement.Payment_Plan_Date_First__c = result.PageMCE.Payment_Plan_Date_First__c;
+ this.PageMCEElement.Payment_Plan_Date_Second__c = result.PageMCE.Payment_Plan_Date_Second__c;
+ this.PageMCEElement.Payment_Plan_Date_Third__c = result.PageMCE.Payment_Plan_Date_Third__c;
+ this.PageMCEElement.Payment_Plan_Date_Forth__c = result.PageMCE.Payment_Plan_Date_Forth__c;
+ this.PageMCEElement.Payment_Plan_Date_Fivth__c = result.PageMCE.Payment_Plan_Date_Fivth__c;
+ this.PageMCEElement.Payment_Plan_Date_Sixth__c = result.PageMCE.Payment_Plan_Date_Sixth__c;
+ this.PageMCEElement.Payment_Plan_Sum_First__c = result.PageMCE.Payment_Plan_Sum_First__c;
+ this.PageMCEElement.Payment_Plan_Sum_Second__c = result.PageMCE.Payment_Plan_Sum_Second__c;
+ this.PageMCEElement.Payment_Plan_Sum_Third__c = result.PageMCE.Payment_Plan_Sum_Third__c;
+ this.PageMCEElement.Payment_Plan_Sum_Forth__c = result.PageMCE.Payment_Plan_Sum_Forth__c;
+ this.PageMCEElement.Payment_Plan_Sum_Fivth__c = result.PageMCE.Payment_Plan_Sum_Fivth__c;
+ this.PageMCEElement.Payment_Plan_Sum_Sixth__c = result.PageMCE.Payment_Plan_Sum_Sixth__c;
+ this.PageMCEElement.Small_Repair_Time__c = result.PageMCE.Small_Repair_Time__c;
+ this.PageMCEElement.Big_Repair_Time__c = result.PageMCE.Big_Repair_Time__c;
+ this.PageMCEElement.Live_Technical_Support_Time__c = result.PageMCE.Live_Technical_Support_Time__c;
+ this.PageMCEElement.Tour_Check__c = result.PageMCE.Tour_Check__c;
+ this.PageMCEElement.Phone_Number__c = result.PageMCE.Phone_Number__c;
+ this.PageMCEElement.Dedust__c = result.PageMCE.Dedust__c;
+ this.PageMCEElement.First_Party_Contract_Number__c = result.PageMCE.First_Party_Contract_Number__c;
+ this.PageMCEElement.Second_Party_Contract_Number__c = result.PageMCE.Second_Party_Contract_Number__c;
+ this.PageMCEElement.Contract_Amount__c = result.PageMCE.Contract_Amount__c;
+ this.PageMCEElement.Total_Contract_Amount_In_Words__c = result.PageMCE.Total_Contract_Amount_In_Words__c;
+ this.PageMCEElement.Payment_Plan_Sum_First_in_Word__c = result.PageMCE.Payment_Plan_Sum_First_in_Word__c;
+ this.PageMCEElement.Payment_Plan_Sum_Second_in_Word__c = result.PageMCE.Payment_Plan_Sum_Second_in_Word__c;
+ this.PageMCEElement.Payment_Plan_Sum_Third_in_Word__c = result.PageMCE.Payment_Plan_Sum_Third_in_Word__c;
+ this.PageMCEElement.Payment_Plan_Sum_Forth_in_Word__c = result.PageMCE.Payment_Plan_Sum_Forth_in_Word__c;
+ this.PageMCEElement.Payment_Plan_Sum_Fivth_in_Word__c = result.PageMCE.Payment_Plan_Sum_Fivth_in_Word__c;
+ this.PageMCEElement.Payment_Plan_Sum_Sixth_in_Word__c = result.PageMCE.Payment_Plan_Sum_Sixth_in_Word__c;
+ this.PageMCEElement.Negotiate_Mean__c = result.PageMCE.Negotiate_Mean__c;
+ this.PageMCEElement.Inspection_Time__c = result.PageMCE.Inspection_Time__c;
+ this.PageMCEElement.Amount_Warranty_Coverage__c = (result.PageMCE.Contract_Amount__c*1.3).toString();
+ this.PageMCEElement.Amount_Warranty_Coverage_In_Word__c = this.smalltoBIG(this.PageMCEElement.Amount_Warranty_Coverage__c);
+ this.AllChecktime();
+ this.Initdisabled();
+ }).catch(error => {
+ console.log("error");
+ console.log(error.message());
+ });
+ }
+ handleIsStandardContract(event) {
+ console.log('鎵ц');
+ this.PageMCEElement.Is_Standard_Contract__c = event.detail.value;
+ if (this.PageMCEElement.Is_Standard_Contract__c == '鍚�') {
+ this.showTabOne = false;
+ }else{
+ this.showTabOne = true;
+ }
+ this.AllChecktime();
+ }
+ handleTermOfPayment(event) {
+ this.PageMCEElement.Term_Of_Payment__c = event.detail.value;
+ if (this.PageMCEElement.Term_Of_Payment__c == '澶氭浠樻') {
+ this.showTabOnce = false;
+ this.showTabTwice = true;
+ }else{
+ this.showTabOnce = true;
+ this.showTabTwice = false;
+ }
+ }
+ handleOneoff(event) {
+ this.PageMCEElement.one_off_payment_agreed_period__c = event.detail.value;
+ }
+ handleSmallRepairTime(event) {
+ this.PageMCEElement.Small_Repair_Time__c = event.detail.value;
+ }
+ handleBigRepairTime(event) {
+ this.PageMCEElement.Big_Repair_Time__c = event.detail.value;
+ }
+ handleLiveTechnicalSupportTime(event) {
+ this.PageMCEElement.Live_Technical_Support_Time__c = event.detail.value;
+ }
+ handleTourCheck(event) {
+ this.PageMCEElement.Tour_Check__c = event.detail.value;
+ }
+ handleInspectionTime(event) {
+ this.PageMCEElement.Inspection_Time__c = event.detail.value;
+ this.AllChecktime();
+ }
+ handleDedust(event) {
+ this.PageMCEElement.Dedust__c = event.detail.value;
+ }
+ handleFirstPartyContractNumber(event) {
+ this.PageMCEElement.First_Party_Contract_Number__c = event.detail.value;
+ }
+ handleSecondPartyContractNumber(event) {
+ this.PageMCEElement.Second_Party_Contract_Number__c = event.detail.value;
+ }
+
+ handleTotalPaymentTime(event) {
+ this.PageMCEElement.Total_Payment_Time__c = event.detail.value;
+ }
+ // 澶氭浠樻鍒�
+ handleDateFirst(event){
+ this.PageMCEElement.Payment_Plan_Date_First__c = event.detail.value;
+ }
+ handleDateSecond(event){
+ this.PageMCEElement.Payment_Plan_Date_Second__c = event.detail.value;
+ }
+ handleDateThird(event){
+ this.PageMCEElement.Payment_Plan_Date_Third__c = event.detail.value;
+ }
+ handleDateForth(event){
+ this.PageMCEElement.Payment_Plan_Date_Forth__c = event.detail.value;
+ }
+ handleDateFivth(event){
+ this.PageMCEElement.Payment_Plan_Date_Fivth__c = event.detail.value;
+ }
+ handleDateSixth(event){
+ this.PageMCEElement.Payment_Plan_Date_Sixth__c = event.detail.value;
+ }
+ handleSumFirst(event){
+ this.PageMCEElement.Payment_Plan_Sum_First__c = event.detail.value;
+ this.PageMCEElement.Payment_Plan_Sum_First_in_Word__c = this.smalltoBIG(this.PageMCEElement.Payment_Plan_Sum_First__c);
+ }
+ handleSumSecond(event){
+ this.PageMCEElement.Payment_Plan_Sum_Second__c = event.detail.value;
+ this.PageMCEElement.Payment_Plan_Sum_Second_in_Word__c = this.smalltoBIG(this.PageMCEElement.Payment_Plan_Sum_Second__c);
+ }
+ handleSumThird(event){
+ this.PageMCEElement.Payment_Plan_Sum_Third__c = event.detail.value;
+ this.PageMCEElement.Payment_Plan_Sum_Third_in_Word__c = this.smalltoBIG(this.PageMCEElement.Payment_Plan_Sum_Third__c);
+ }
+ handleSumForth(event){
+ this.PageMCEElement.Payment_Plan_Sum_Forth__c = event.detail.value;
+ this.PageMCEElement.Payment_Plan_Sum_Forth_in_Word__c = this.smalltoBIG(this.PageMCEElement.Payment_Plan_Sum_Forth__c);
+ }
+ handleSumFivth(event){
+ this.PageMCEElement.Payment_Plan_Sum_Fivth__c = event.detail.value;
+ this.PageMCEElement.Payment_Plan_Sum_Fivth_in_Word__c = this.smalltoBIG(this.PageMCEElement.Payment_Plan_Sum_Fivth__c);
+ }
+ handleSumSixth(event){
+ this.PageMCEElement.Payment_Plan_Sum_Sixth__c = event.detail.value;
+ this.PageMCEElement.Payment_Plan_Sum_Sixth_in_Word__c = this.smalltoBIG(this.PageMCEElement.Payment_Plan_Sum_Sixth__c);
+ }
+ handleNegotiateMean(event){
+ this.PageMCEElement.Negotiate_Mean__c = event.detail.value;
+ }
+ handleEngineerName(event){
+ this.PageMCEElement.Engineer_Name__c = event.detail.value;
+ }
+ handlephoneNumber(event){
+ // this.phoneNumber = event.detail.value;
+ this.PageMCEElement.Phone_Number__c = event.detail.value;
+ }
+ handlePrint(event){
+ print().then(result =>{
+ this.printContract = result.printContract;
+ this.printAgent = result.printAgent;
+ this.agreeUpperLimit = result.agreeUpperLimit;
+ if (result.statusSave == 'Denied') {
+ const event = new ShowToastEvent({
+ title: 'warning',
+ message: result.status,
+ variant:'warning',
+ });
+ this.dispatchEvent(event);
+ }
+ }).catch(error => {
+ console.log("error");
+ console.log(error.message());
+ });;
+ }
+ handlesave(event){
+
+ save({
+ PageMCEElement:this.PageMCEElement
+ }).then(result =>{
+ if (result.statusSave == 'Denied') {
+ const event = new ShowToastEvent({
+ title: 'warning',
+ message: result.status,
+ variant:'warning',
+ });
+ this.dispatchEvent(event);
+ }
+ }).catch(error => {
+ console.log("error"+error.message());
+ });
+ }
+
+
+ /** 鏁板瓧閲戦澶у啓杞崲(鍙互澶勭悊鏁存暟,灏忔暟,璐熸暟) */
+ smalltoBIG(n)
+ {
+
+ var fraction = ['瑙�', '鍒�'];
+ var digit = ['闆�', '澹�', '璐�', '鍙�', '鑲�', '浼�', '闄�', '鏌�', '鎹�', '鐜�'];
+ var unit = [ ['鍏�', '涓�', '浜�'], ['', '鎷�', '浣�', '浠�'] ];
+ var head = n < 0? '娆�': '';
+ n = n.replace(/\,/g,"");
+ n = Math.abs(n);
+ var s = '';
+ for (var i = 0; i < fraction.length; i++){
+ s += (digit[Math.floor(n * 10 * Math.pow(10, i)) % 10] + fraction[i]).replace(/闆�./, '');
+ }
+ s = s || '鏁�';
+ n = Math.floor(n);
+ for (var i = 0; i < unit[0].length && n > 0; i++) {
+ var p = '';
+ for (var j = 0; j < unit[1].length && n > 0; j++) {
+ p = digit[n % 10] + unit[1][j] + p;
+ n = Math.floor(n / 10);
+ }
+ s = p.replace(/(闆�.)*闆�$/, '').replace(/^$/, '闆�') + unit[0][i] + s;
+ }
+ return head + s.replace(/(闆�.)*闆跺厓/, '鍏�').replace(/(闆�.)+/g, '闆�').replace(/^鏁�$/, '闆跺厓鏁�');
+ }
+ Initdisabled(){
+ if(this.PageMCEElement.Status__c != '寮曞悎涓�'){
+ this.dis1 = true;
+ this.dis2 = true;
+ this.dis3 = true;
+ this.dis4 = true;
+ this.dis5 = true;
+ this.dis6 = true;
+ this.dis7 = true;
+ this.dis8 = true;
+ this.dis9 = true;
+ this.dis10 = true;
+ this.dis11 = true;
+ this.dis12 = true;
+ this.dis13 = true;
+ this.dis14 = true;
+ this.dis15 = true;
+ this.dis16 = true;
+ this.dis17 = true;
+ this.dis18 = true;
+ this.dis19 = true;
+ this.dis20 = true;
+ this.dis21 = true;
+ this.dis22 = true;
+ this.dis23 = true;
+ this.dis24 = true;
+ this.dis25 = true;
+ this.dis26 = true;
+ this.dis27 = true;
+ this.dis28 = true;
+ this.dis29 = true;
+ this.dis30 = true;
+ }
+ if (this.PageMCEElement.old_Is_RecognitionModel__c == 'true' && this.PageMCEElement.Term_Of_Payment__c == '澶氭浠樻') {
+ this.dis28 = true;
+ }
+ }
+
+ CloseJs() {
+ if(this.statusSave == 'Fin'){
+ window.opener.top.location.href = '/'+this.recordId;
+ window.close();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }else{
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ }
+
+ // 鏂板鐐规鎬绘鏁帮紙鍙湪椤甸潰涓樉绀猴級fxk 2021/9/2 Star
+ AllChecktime(){
+ var Allchecks;
+ if(( this.PageMCEElement.Inspection_Time__c == '1' && this.ContractAllMonth < 9)
+ || ( this.PageMCEElement.Inspection_Time__c == '2' && this.ContractAllMonth < 6)
+ || ( this.PageMCEElement.Inspection_Time__c == '3' && this.ContractAllMonth < 4)
+ || ( this.PageMCEElement.Inspection_Time__c == '4' && this.ContractAllMonth < 3)){
+ Allchecks = '1';
+ }else{
+ if (this.ContractAllMonth - parseInt(this.ContractAllMonth / 12) * 12 >= 6 && this.PageMCEElement.Inspection_Time__c == '1'){
+ Allchecks = ((this.ContractAllMonth * Number( this.PageMCEElement.Inspection_Time__c))/12+1).toString();
+ }else{
+ Allchecks =((this.ContractAllMonth * Number( this.PageMCEElement.Inspection_Time__c))/12).toString();
+ }
+ }
+ if (Allchecks!=null) {
+ this.PageMCEElement.Inspection_Time__c = Allchecks;
+ }
+ }
+
+
+ PrintJs() {
+ if(this.statusSave == 'Fin'){
+ this.dispatchEvent(new CloseActionScreenEvent());
+ if (this.printContract == 'true') {
+ //HWAG-BHT7XX 2019/11/26 START
+ if(this.agreeUpperLimit == 'true'){
+ // 鎵撳嵃鍖婚櫌闄愭鍚堝悓閰嶇疆
+ window.open('/apex/NewMCHPDFLimit?id='+this.recordId, 'MCHLimitPDF');
+ window.close();
+ }else{
+ // 鎵撳嵃鍖婚櫌鍚堝悓閰嶇疆
+ window.open('/apex/NewMCHPDF?id='+this.recordId, 'MCHPDF');
+ window.close();
+ }
+ //HWAG-BHT7XX 2019/11/26 END
+ }else if (this.printAgent == 'true') {
+ if(this.agreeUpperLimit == 'true'){
+ //鎵撳嵃缁忛攢鍟嗛檺娆″悎鍚�
+ window.open('/apex/NewMCAgentPDFLimit?id='+this.recordId, 'MCAgentLimitPDF');
+ window.close()
+ }else{
+ //鎵撳嵃缁忛攢鍟嗗悎鍚�
+ window.open('/apex/NewMCAgentPDF?id='+this.recordId, 'MCHPDF');
+ window.close();
+ }
+ }else {
+ alert('1');
+ }
+ }else{
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ }
+
+
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/newPaymentPlanLoadLWC/newPaymentPlanLoadLWC.js-meta.xml b/force-app/main/default/lwc/newPaymentPlanLoadLWC/newPaymentPlanLoadLWC.js-meta.xml
new file mode 100644
index 0000000..803bed5
--- /dev/null
+++ b/force-app/main/default/lwc/newPaymentPlanLoadLWC/newPaymentPlanLoadLWC.js-meta.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="newPaymentPlanLoadLWC">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ <target>lightning__Tab</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/newRepairLWC/newRepairLWC.css b/force-app/main/default/lwc/newRepairLWC/newRepairLWC.css
new file mode 100644
index 0000000..fa4ac70
--- /dev/null
+++ b/force-app/main/default/lwc/newRepairLWC/newRepairLWC.css
@@ -0,0 +1,9 @@
+.Narrow{
+ padding: 20px;
+}
+.searchField,.searchField .input-text{
+ /*display: flex;*/
+}
+.searchField .slds-combobox_container{
+ width: 160px !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/newRepairLWC/newRepairLWC.html b/force-app/main/default/lwc/newRepairLWC/newRepairLWC.html
new file mode 100644
index 0000000..e179ff8
--- /dev/null
+++ b/force-app/main/default/lwc/newRepairLWC/newRepairLWC.html
@@ -0,0 +1,106 @@
+<template>
+ <!-- <lightning-card variant="Narrow"> -->
+ <div class="exampleHolder" if:true={isLoading}>
+ <lightning-spinner alternative-text="Loading" size="small"></lightning-spinner>
+ </div>
+ <!-- slds-modal__container -->
+ <div class="">
+ <!-- <header class="slds-modal__header">
+ <button class="slds-button slds-button_icon slds-modal__close slds-button_icon-inverse"
+ title="Close" onclick={closeNewObjectModal}>
+ <lightning-icon icon-name="utility:close" alternative-text="close"
+ variant="inverse" size="small"></lightning-icon>
+ <span class="slds-assistive-text">Close</span>
+ </button>
+ <h2 id="modal-heading-01" class="slds-text-heading_medium slds-hyphenate">
+ {modalHeader} : {selectedRecordType}
+ </h2>
+ </header> -->
+ <div class="slds-modal__content slds-p-around_medium" id="modal-content-id-2">
+ <!-- Repair__c -->
+ <lightning-record-edit-form onload={handleRecordEditFormLoad} onsuccess={successNewRecordInsert} object-api-name='{objectName}'
+ record-type-id={recordId}>
+ <lightning-messages></lightning-messages>
+ <template if:true={uiPageLayoutView}>
+ <lightning-layout multiple-rows="true">
+ <lightning-layout-item size="12">
+ <template for:each={uiPageLayoutView.sections} for:item="section">
+ <!-- slds-grid -->
+ <div key={section.id} class="slds-wrap">
+ <div class="row slds-gutters row-width">
+ <h3 class="slds-p-vertical_xx-small slds-p-left_medium" style="font-size: 16px;width: 100%;border: 3px outset #d0d9e1;">{section.heading}</h3>
+ </div>
+ <lightning-layout multiple-rows="true">
+ <template for:each={section.layoutRows} for:item="layoutRow">
+ <template for:each={layoutRow.layoutItems} for:item="layoutItem">
+ <template for:each={layoutItem.layoutComponents} for:item="layoutComponent">
+ <lightning-layout-item key={layoutComponent.apiName} size="6" padding="horizontal-small">
+ <template if:true={layoutItem.editableForNew}>
+ <lightning-input-field data-fieldname={layoutComponent.apiName}
+ field-name={layoutComponent.apiName} name={layoutComponent.apiName} required={layoutItem.required}>
+ </lightning-input-field>
+ </template>
+ <!-- <template if:false={layoutItem.editableForNew}> -->
+ <!-- 淇悊鍙椾粯鐣彿 -->
+ <!-- <template if:true={layoutComponent.apiName}>
+ <lightning-output-field field-name={layoutComponent.apiName}>
+ </lightning-output-field>
+ </template> -->
+ <!-- </template> -->
+ </lightning-layout-item>
+ </template>
+ </template>
+ </template>
+ </lightning-layout>
+ </div>
+ </template>
+ </lightning-layout-item>
+ </lightning-layout>
+ </template>
+ <lightning-messages></lightning-messages>
+ <!-- slds-m-top_medium slds-m-top_small-->
+ <div class="" style="text-align: center;">
+ <lightning-button
+ class=""
+ label="鍙栨秷"
+ onclick={handleReset}
+ ></lightning-button>
+ <lightning-button
+ class=""
+ type="submit"
+ name="save"
+ label="淇濆瓨"
+ ></lightning-button>
+ <!-- <lightning-button
+ class="slds-m-top_small"
+ type="submit"
+ name="saveAndNew"
+ label="淇濆瓨鏂板缓"
+ ></lightning-button> -->
+ </div>
+ </lightning-record-edit-form>
+ </div>
+ <!-- <div class="footer-background-class">
+ <div class="slds-align_absolute-center slds-p-around_xx-small">
+ <lightning-button class="slds-m-around_xx-small"
+ title="Cancel" label="Cancel"
+ onclick={closeNewObjectModal}>
+ </lightning-button>
+ <lightning-button variant="brand" title="Save"
+ onclick={submitRecordForm} name="Save" label="Save">
+ </lightning-button>
+ </div>
+ </div> -->
+ </div>
+
+ <!-- <lightning-record-edit-form record-id={recordId} object-api-name='{objectName}'>
+ <lightning-input-field field-name="Delivered_Product__c"> </lightning-input-field>
+ <lightning-button
+ class="slds-m-top_small"
+ variant="brand"
+ type="submit"
+ label="Update"
+ >
+ </lightning-button>
+</lightning-record-edit-form> -->
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/newRepairLWC/newRepairLWC.js b/force-app/main/default/lwc/newRepairLWC/newRepairLWC.js
new file mode 100644
index 0000000..305fbf7
--- /dev/null
+++ b/force-app/main/default/lwc/newRepairLWC/newRepairLWC.js
@@ -0,0 +1,124 @@
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { NavigationMixin } from 'lightning/navigation';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+
+// import { getRecordUi } from 'lightning/uiRecordApi';
+
+// import NAME_FIELD from '@salesforce/schema/Repair__c.Incharge_Staff__c';
+import MY_CUSTOM_OBJECT from '@salesforce/schema/Repair__c';
+
+import init from '@salesforce/apex/NewRepairAuraController.init';
+
+export default class newRepairLWC extends LightningElement {
+ // Expose a field to make it available in the template
+ // nameField = NAME_FIELD;
+
+ // Flexipage provides recordId and objectApiName
+ // @api recordId = 'a0J0l00000EouAT';
+ @api recordId;
+ @api urlStr;
+ @api objectApiName;
+
+ /* @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }*/
+
+ objectName = 'Repair__c';
+ uiPageLayoutView;
+ isNewMode;
+ //榛樿鍊艰祴鍊兼爣璁�
+ // defaultFlag = true;
+ defaultValue;
+ isLoading = true;
+
+
+ connectedCallback(){
+ console.log(this.recordId);
+ console.log(JSON.parse(this.urlStr));
+ console.log(333);
+ }
+ //鑾峰彇Layout瀛楁
+ handleRecordEditFormLoad(event) {
+ console.log('Layout => ', JSON.stringify(event.detail.layout));
+ this.uiPageLayoutView = event.detail.layout;
+ console.log('Layout1 => ',this.uiPageLayoutView);
+ // urlStr 浼犲弬澶勭悊
+ init({
+ recordId : this.recordId,urlStr : this.urlStr
+ }).then(result => {
+ console.log("result");
+ console.log(result);
+ this.defaultValue = result;
+ this.defaultValue['Delivered_Product'] = '02i10000004tNXIAA2';
+ if (!result.status) {
+ const inputFields = this.template.querySelectorAll(
+ 'lightning-input-field'
+ );
+ if (inputFields) {
+ inputFields.forEach(field => {
+ /*console.log('fieldsif => ',field);
+ console.log('fieldsif => ',field.name);
+ console.log('fieldsif => ',field.name.replace("__c",""));*/
+ let fieldName = field.name.replace("__c","");
+ if (this.defaultValue.hasOwnProperty(fieldName)) {
+ console.log('fieldsif => ',field);
+ // field.value= this.defaultValue[fieldName];
+ }
+ });
+ }
+ }
+ }).catch(error => {
+ console.log("error");
+ console.log(error);
+ }).finally(() => {
+ this.isLoading = false;
+ });
+
+ }
+ //
+
+ handleSubmit(event){
+ console.log("handleSubmit");
+ event.preventDefault(); // stop the form from submitting
+ const fields = event.detail.fields;
+ console.log("fields");
+ console.log(fields);
+ console.log(event.detail);
+ // this.template.querySelector('lightning-record-edit-form').submit(fields);
+ }
+ //鎴愬姛鍚庤烦杞�
+ handleSucess(event){
+ const updatedRecord = event.detail.id;
+ console.log('onsuccess: ', updatedRecord);
+ }
+ handleReset(event) {
+ const fields = event.detail.fields;
+ console.log('fields => ',fields);
+ const inputFields = this.template.querySelectorAll(
+ 'lightning-input-field'
+ );
+ if (inputFields) {
+ inputFields.forEach(field => {
+
+ console.log('fieldsif => ',field);
+ console.log('fieldsif => ',field.name);
+ // field.reset();
+ });
+ }
+ }
+
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/newRepairLWC/newRepairLWC.js-meta.xml b/force-app/main/default/lwc/newRepairLWC/newRepairLWC.js-meta.xml
new file mode 100644
index 0000000..2b7649d
--- /dev/null
+++ b/force-app/main/default/lwc/newRepairLWC/newRepairLWC.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/opdCancelSubmit/opdCancelSubmit.css b/force-app/main/default/lwc/opdCancelSubmit/opdCancelSubmit.css
new file mode 100644
index 0000000..ebb43d9
--- /dev/null
+++ b/force-app/main/default/lwc/opdCancelSubmit/opdCancelSubmit.css
@@ -0,0 +1,10 @@
+.exampleHolder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+.container .uiContainerManager{
+ display: none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/opdCancelSubmit/opdCancelSubmit.html b/force-app/main/default/lwc/opdCancelSubmit/opdCancelSubmit.html
new file mode 100644
index 0000000..6e573d9
--- /dev/null
+++ b/force-app/main/default/lwc/opdCancelSubmit/opdCancelSubmit.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="CreateEmailHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/opdCancelSubmit/opdCancelSubmit.js b/force-app/main/default/lwc/opdCancelSubmit/opdCancelSubmit.js
new file mode 100644
index 0000000..f6773c7
--- /dev/null
+++ b/force-app/main/default/lwc/opdCancelSubmit/opdCancelSubmit.js
@@ -0,0 +1,99 @@
+/*
+ * @Date: 2023-03-23 16:51:04
+ * @Author: @zyh
+ * @LastEditTime: 2023-03-28 10:39:30
+ * @Descripttion:
+ */
+import { LightningElement,wire,track,api } from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { NavigationMixin } from 'lightning/navigation';
+import init from '@salesforce/apex/OPDLwcController.initOPDCancelSubmit';
+import changeTrade from '@salesforce/apex/OpdPlanWebService.changeTrade';
+
+export default class OpdCancelSubmit extends NavigationMixin(LightningElement) {
+ @api recordId;
+ Status;
+ Name;
+ Id;
+ IsLoading = true;
+
+ @wire(CurrentPageReference)
+ getStateParmeters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+ connectedCallback(){
+ console.log('zheli'+this.recordId);
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log('zheli11'+result);
+
+ console.log(result);
+ if(result != null) {
+ this.IsLoading = false;
+ this.Id = result.Id;
+ this.Status = result.Status;
+ this.Name = result.Name;
+ console.log("123");
+ console.log(this.Id);
+ console.log(this.Status);
+ console.log(this.Name);
+ this.cancleSubmit();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ }).catch(error => {
+ console.log("error");
+ console.log(error);
+ }).finally(() => {
+
+ });
+ }
+ cancleSubmit(){
+ console.log('zheli11'+this.Status);
+ var rtn = '';
+ if(this.Status == '鍙栨秷' || this.Status == '瀹屾瘯' ){
+ alert('OPD璁″垝鐨勭姸鎬佷负鍙栨秷鎴栧畬姣曟椂锛屼笉鑳藉彇娑�');
+ return;
+ }
+ // alert('122');
+ // var rtn = sforce.apex.execute("OpdPlanWebService", "changeTrade",this.Id);
+ changeTrade({
+ opdplanId: this.Id
+ }).then(result => {
+ rtn = result;
+
+ // alert(rtn);
+ if (rtn != 'OK') {
+ alert(rtn);
+ return;
+ }
+ // window.open('/a3D/e?CF00N10000008ps4s='+ this.Name +'&00N10000008ps4u=鍙栨秷&RecordType=01210000000gQyL');
+ // alert('111');
+ // window.open('/lightning/o/CancelPostponePlan__c/new?recordTypeId=01210000000gQyL&additionalParams=CF00N10000008ps4s=' + this.Name + '&count=1');
+ // window.location.replace('/lightning/o/CancelPostponePlan__c/new?recordTypeId=01210000000gQyL&additionalParams=CF00N10000008ps4s=' + this.Name + '&count=1====');
+ this[NavigationMixin.Navigate]({
+ type: 'standard__objectPage',
+ attributes: {
+ objectApiName: 'CancelPostponePlan__c', // 瑕佹柊寤虹殑瀵硅薄API
+ actionName: 'new'
+ },
+ state:{
+ defaultFieldValues:'CancelOPDPlan__c='+this.Id // 瑕佸鍒剁殑瀛楁API
+ }
+ });
+ });
+
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/opdCancelSubmit/opdCancelSubmit.js-meta.xml b/force-app/main/default/lwc/opdCancelSubmit/opdCancelSubmit.js-meta.xml
new file mode 100644
index 0000000..fafbfc5
--- /dev/null
+++ b/force-app/main/default/lwc/opdCancelSubmit/opdCancelSubmit.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>56.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/opdNewSparePartsLoanApplication/opdNewSparePartsLoanApplication.css b/force-app/main/default/lwc/opdNewSparePartsLoanApplication/opdNewSparePartsLoanApplication.css
new file mode 100644
index 0000000..ebb43d9
--- /dev/null
+++ b/force-app/main/default/lwc/opdNewSparePartsLoanApplication/opdNewSparePartsLoanApplication.css
@@ -0,0 +1,10 @@
+.exampleHolder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+.container .uiContainerManager{
+ display: none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/opdNewSparePartsLoanApplication/opdNewSparePartsLoanApplication.html b/force-app/main/default/lwc/opdNewSparePartsLoanApplication/opdNewSparePartsLoanApplication.html
new file mode 100644
index 0000000..6e573d9
--- /dev/null
+++ b/force-app/main/default/lwc/opdNewSparePartsLoanApplication/opdNewSparePartsLoanApplication.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="CreateEmailHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/opdNewSparePartsLoanApplication/opdNewSparePartsLoanApplication.js b/force-app/main/default/lwc/opdNewSparePartsLoanApplication/opdNewSparePartsLoanApplication.js
new file mode 100644
index 0000000..95f2519
--- /dev/null
+++ b/force-app/main/default/lwc/opdNewSparePartsLoanApplication/opdNewSparePartsLoanApplication.js
@@ -0,0 +1,346 @@
+/*
+ * @Date: 2023-04-06 13:41:29
+ * @Author: @zyh
+ * @LastEditTime: 2023-04-17 15:52:15
+ * @Descripttion:
+ */
+import { LightningElement,wire,track,api } from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { NavigationMixin } from 'lightning/navigation';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+import UserInfo_Owner from '@salesforce/apex/TaskFeedbackController.UserInfo_Owner';
+import init from '@salesforce/apex/OPDLwcController.initOPDCancelSubmit';
+import RecordType from '@salesforce/apex/OPDLwcController.RecordType';
+// import applySelect from '@salesforce/apex/OPDLwcController.applySelect';
+import changeTrade from '@salesforce/apex/OpdPlanWebService.changeTrade';
+import { encodeDefaultFieldValues } from 'lightning/pageReferenceUtils';
+
+export default class OpdNewSparePartsLoanApplication extends LightningElement {
+ @api recordId;
+ Status;
+ Name;
+ Days;
+ OPDType;
+ CampaignId;
+ CampaignStatus;
+ CampaignTypeId;
+ cp;
+ StayOrNot;
+ OriginalOpdPlanApplication;
+ IFApproved;
+ ApprovedNo;
+ ApprovedStatus;
+ HaveValue;
+ OriginalOpdPlan;
+ OpportunityId;
+ accountLaboratory;
+ OCMcategoryID;
+ HospitalID;
+ isJump;
+ jumpCause;
+ Id;
+ userId;
+ userName;
+ IsLoading = true;
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+ connectedCallback () {
+ console.log(this.recordId);
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result);
+ if (result != null) {
+ this.IsLoading = false;
+ this.ownerId = result.ownerId;
+ this.monthlyReportId = result.Id;
+ this.Days = result.rentalApplyFlag;
+ this.OPDType = result.oPDType;
+ this.CampaignId = result.campaignId;
+ this.CampaignStatus = result.campaignStatus;
+ this.CampaignTypeId = result.campaignRecodeTypeId;
+ this.cp = result.internalinchargeprovince;
+ this.StayOrNot = result.stayOrNot;
+ this.OriginalOpdPlanApplication = result.originalOpdPlanApplication;
+ this.IFApproved = result.iFApproved;
+ this.ApprovedNo = result.approvedNo;
+ this.ApprovedStatus = result.approvedStatus;
+ this.HaveValue = result.Rental_Apply2;
+ this.OriginalOpdPlan = result.originalOpdPlan;
+ this.OpportunityId = result.Related_Opportunity1_ID;
+ this.accountLaboratory = result.accountLaboratory;
+ this.OCMcategoryID = result.OCM_category_ID;
+ this.HospitalID = result.HospitalID;
+ this.isJump = result.isJump;
+ this.jumpCause = result.jumpCause;
+ this.newSpa();
+ console.log("end");
+ // this.handleSuccess();
+ // this.dispatchEvent(new CloseActionScreenEvent());
+ // this.updateRecordView(this.recordId);
+
+ //window.location.replace("https://ocsm--partial.sandbox.lightning.force.com/lightning/r/Monthly_Report__c/" + this.monthlyReportId + "/view");
+ }
+ }).catch(error => {
+ console.log("error");
+ console.log(error);
+ }).finally(() => {
+
+ });
+ }
+ newSpa(){
+ UserInfo_Owner({
+
+ }).then(result => {
+ console.log(result);
+
+ })
+ if (this.StayOrNot == '宸茬鑱�') {
+ const evt = new ShowToastEvent({
+ title : 'Error',
+ message : '鎵�鏈変汉宸茬粡绂昏亴锛岃鑱旂郴绯荤粺绠$悊鍛樹慨鏀规墍鏈変汉銆�',
+ variant : 'error'
+ });
+ this.dispatchEvent(evt);
+ // alert('鎵�鏈変汉宸茬粡绂昏亴锛岃鑱旂郴绯荤粺绠$悊鍛樹慨鏀规墍鏈変汉銆�');
+ return;
+ }
+ if (this.IFApproved == true && this.ApprovedNo == ''){
+ const evt = new ShowToastEvent({
+ title : 'Error',
+ message : '闇�瑕佸喅瑁佹椂锛屽喅瑁佺紪鐮佷笉鑳戒负绌�',
+ variant : 'error'
+ });
+ this.dispatchEvent(evt);
+ // alert('闇�瑕佸喅瑁佹椂锛屽喅瑁佺紪鐮佷笉鑳戒负绌�');
+ return;
+ }
+ var statusSting = "{!$Label.StatusProcessState}";
+ console.log(statusSting+'=====statusSting');
+ if (this.IFApproved == true && this.ApprovedNo != '' && statusSting.indexOf(this.ApprovedStatus)!= -1 && this.ApprovedStatus != '鑽夌' ){
+ const evt = new ShowToastEvent({
+ title : 'Error',
+ message : '宸茬敵璇峰喅瑁佷絾鍐宠鐘舵�佷笉绗﹀悎鏉′欢',
+ variant : 'error'
+ });
+ this.dispatchEvent(evt);
+ // alert('宸茬敵璇峰喅瑁佷絾鍐宠鐘舵�佷笉绗﹀悎鏉′欢');
+ return;
+ }
+ if (this.HaveValue != '' && this.OPDType != '瀛︿細') {
+ const evt = new ShowToastEvent({
+ title : 'Error',
+ message : '涓�涓狾PD璁″垝鍙彲鍏宠仈鍒涘缓涓�涓鍝佺敵璇峰崟',
+ variant : 'error'
+ });
+ this.dispatchEvent(evt);
+ // alert('涓�涓狾PD璁″垝鍙彲鍏宠仈鍒涘缓涓�涓鍝佺敵璇峰崟');
+ return;
+ }
+ if (this.Status != '璁″垝涓�') {
+ const evt = new ShowToastEvent({
+ title : 'Error',
+ message : 'OPD璁″垝鐨勭姸鎬佷笉鏄鍒掍腑锛屼笉鑳芥柊寤哄鍝佸�熷嚭鐢宠',
+ variant : 'error'
+ });
+ this.dispatchEvent(evt);
+ // alert('OPD璁″垝鐨勭姸鎬佷笉鏄鍒掍腑锛屼笉鑳芥柊寤哄鍝佸�熷嚭鐢宠');
+ return;
+ }
+ if (UserInfo_Owner.isFormal_Stuff__c == 'true') {
+ const evt = new ShowToastEvent({
+ title : 'Error',
+ message : '璇曠敤鏈熷唴锛屼笉鑳界敵璇�',
+ variant : 'error'
+ });
+ this.dispatchEvent(evt);
+ // alert('璇曠敤鏈熷唴锛屼笉鑳界敵璇�');
+ return;
+ }
+ if (this.Status != '璁″垝涓�') {
+ const evt = new ShowToastEvent({
+ title : 'Error',
+ message : 'OPD璁″垝鐨勭姸鎬佷笉鏄鍒掍腑锛屼笉鑳芥柊寤哄鍝佸�熷嚭鐢宠',
+ variant : 'error'
+ });
+ this.dispatchEvent(evt);
+ // alert('OPD璁″垝鐨勭姸鎬佷笉鏄鍒掍腑锛屼笉鑳芥柊寤哄鍝佸�熷嚭鐢宠');
+ return;
+ }
+ if (UserInfo_Owner.isFormal_Stuff__c == 'true') {
+ const evt = new ShowToastEvent({
+ title : 'Error',
+ message : '璇曠敤鏈熷唴锛屼笉鑳界敵璇�',
+ variant : 'error'
+ });
+ this.dispatchEvent(evt);
+ // alert('璇曠敤鏈熷唴锛屼笉鑳界敵璇�');
+ return;
+ }
+
+ if (this.OPDType == '瀛︿細' && this.CampaignId != '') {
+ if (this.Days < 7) {
+ const evt = new ShowToastEvent({
+ title : 'Error',
+ message : '鐢宠鎻愪氦蹇呴』鍦�7澶�(鍚�)浠ヤ笂鎵嶅彲浠�',
+ variant : 'error'
+ });
+ this.dispatchEvent(evt);
+ // alert("鐢宠鎻愪氦蹇呴』鍦�7澶�(鍚�)浠ヤ笂鎵嶅彲浠�");
+ return;
+ }
+ if (this.CampaignTypeId != '01210000000R26P' && UserInfo_Owner.Job_Category__c == '閿�鍞湇鍔�' ) {
+ const evt = new ShowToastEvent({
+ title : 'Error',
+ message : 'FSE涓嶈兘鐢宠璇ュ浼氱被鍨嬪鍝�',
+ variant : 'error'
+ });
+ this.dispatchEvent(evt);
+ // alert('FSE涓嶈兘鐢宠璇ュ浼氱被鍨嬪鍝�');
+ return;
+ } else if (('{!Text($User.Job_Category__c)}' == '閿�鍞湇鍔�' || '{!Text($User.Job_Category__c)}' == '鏀彺') && this.CampaignTypeId == '01210000000R26P' && this.cp.indexOf(ups) == -1) {
+ const evt = new ShowToastEvent({
+ title : 'Error',
+ message : '涓嶧SE鎵�鍦ㄧ渷涓�鑷达紝鎵嶅彲浣跨敤澶囧搧',
+ variant : 'error'
+ });
+ this.dispatchEvent(evt);
+ // alert("涓嶧SE鎵�鍦ㄧ渷涓�鑷达紝鎵嶅彲浣跨敤澶囧搧");
+ return;
+ } else if (this.CampaignStatus == '宸茬粨鏉�') {
+ const evt = new ShowToastEvent({
+ title : 'Error',
+ message : '宸茬粨鏉燂紝涓嶈兘鐢宠',
+ variant : 'error'
+ });
+ this.dispatchEvent(evt);
+ // alert("宸茬粨鏉燂紝涓嶈兘鐢宠");
+ return;
+ } else if (this.CampaignStatus == '宸叉彁浜ゆ姤鍛�') {
+ const evt = new ShowToastEvent({
+ title : 'Error',
+ message : '宸叉彁浜ゆ姤鍛婏紝涓嶈兘鐢宠',
+ variant : 'error'
+ });
+ this.dispatchEvent(evt);
+ // alert("宸叉彁浜ゆ姤鍛婏紝涓嶈兘鐢宠");
+ return;
+ } else if (this.CampaignStatus == '鍙栨秷鐢宠涓�') {
+ const evt = new ShowToastEvent({
+ title : 'Error',
+ message : '鍙栨秷鐢宠涓紝涓嶈兘鐢宠',
+ variant : 'error'
+ });
+ this.dispatchEvent(evt);
+ // alert("鍙栨秷鐢宠涓紝涓嶈兘鐢宠");
+ return;
+ } else if (this.CampaignStatus == '鍙栨秷') {
+ const evt = new ShowToastEvent({
+ title : 'Error',
+ message : '宸茬粡鍙栨秷锛屼笉鑳界敵璇�',
+ variant : 'error'
+ });
+ this.dispatchEvent(evt);
+ // alert("宸茬粡鍙栨秷锛屼笉鑳界敵璇�");
+ return;
+ }
+ }
+
+ if (this.OriginalOpdPlan == '') {
+ // SWAG-BZL695 you 20210413 end
+ if (this.OriginalOpdPlanApplication == '') {
+ if (this.OPDType == '瀛︿細' && this.CampaignId != '') {
+ // var purposeStr = '&00N10000003Msk0=浜у搧璇曠敤' +
+ // '&00N10000003Msk5=瀛︿細灞曚細' +
+ // '&CF00N10000003Mp2q_lkid={!URLENCODE(OPDPlan__c.CampaignId__c)}' +
+ // '&CF00N10000003Mp2q={!URLENCODE(OPDPlan__c.CampaignName__c)}';
+ const defaultValues = encodeDefaultFieldValues({
+ Demo_purpose1__c: '浜у搧璇曠敤',
+ demo_purpose2__c: '瀛︿細灞曚細',
+ Campaign__c: this.CampaignId
+ });
+ console.log(defaultValues);
+ } else if (this.OpportunityId != '') {
+ // var purposeStr = '&00N10000003Msk0=浜у搧璇曠敤' +
+ // '&00N10000003Msk5=璇曠敤锛堟湁璇环锛�' +
+ // '&CF00N10000003O3VB_lkid={!OPDPlan__c.Related_Opportunity1_IDId__c}' +
+ // '&CF00N10000003O3VB={!HTMLENCODE(OPDPlan__c.Related_Opportunity1_Name__c)}';
+ const defaultValues = encodeDefaultFieldValues({
+ Demo_purpose1__c: '浜у搧璇曠敤',
+ demo_purpose2__c: '璇曠敤锛堟湁璇环锛�',
+ Follow_UP_Opp__c: this.OpportunityId
+ });
+ console.log(defaultValues);
+ } else {
+ // var purposeStr = '&00N10000003Msk0=浜у搧璇曠敤' +
+ // '&00N10000003Msk5=璇曠敤锛堟棤璇环锛�' +
+ // '&00N100000098amW={!OPDPlan__c.NoOpp_Reason__c}';
+ const defaultValues = encodeDefaultFieldValues({
+ Demo_purpose1__c: '浜у搧璇曠敤',
+ demo_purpose2__c: '璇曠敤锛堟湁璇环锛�',
+ NoOpp_Reason__c: this.noOppReason
+ });
+ console.log(defaultValues);
+ }
+
+ // var urlStr = '&CF00N10000003Mp2R={!HTMLENCODE(OPDPlan__c.Account_Laboratory__c)}' +
+ // '&CF00N10000003Mp2R_lkid={!OPDPlan__c.Account_LaboratoryId__c}' +
+ // '&CF00N10000003O3V6_lkid={!OPDPlan__c.OCM_category_ID__c}' +
+ // '&CF00N10000003O3V6={!HTMLENCODE(OPDPlan__c.OCM_category_Name__c)}' +
+ // '&CF00N10000003Mp1d_lkid={!OPDPlan__c.HospitalID__c}' +
+ // '&CF00N10000003Mp1d={!HTMLENCODE(OPDPlan__c.HospitalName__c)}' +
+ // '&CF00N10000008ps61={!HTMLENCODE(OPDPlan__c.Name)}' +
+ // '&CF00N10000008ps61_lkid={!OPDPlan__c.Id}' +
+ // '&CF00N10000005HzRr={!URLENCODE($User.LastName&' '&$User.FirstName)}' +
+ // '&CF00N10000005HzRr_lkid={!URLENCODE($User.Id)}' +
+ // '&CF00N10000005HzRz={!URLENCODE($User.LastName&' '&$User.FirstName)}' +
+ // '&CF00N10000005HzRz_lkid={!URLENCODE($User.Id)}' +
+ // '&00N10000003OJzc={!URLENCODE($User.LastName&' '&$User.FirstName)}' +
+ // '&00N100000098dmS={!OPDPlan__c.IsJump__c}' +
+ // '&00N100000098dmI={!HTMLENCODE(OPDPlan__c.JumpCause__c)}' +
+ // '&Name=*'+
+ // '&00N10000009HBWg= {!OPDPlan__c.Approved_Status__c} ' +
+ // '&00N10000009HBXK= {!OPDPlan__c.Approved_No__c} '; //// 20220211 sx add 澶囧搧鍊熷嚭鐢宠-鍐宠鎺у埗 No.2
+ const defaultValues1 = encodeDefaultFieldValues({
+ Account__c: this.accountLaboratory,
+ Strategic_dept__c: this.OCMcategoryID,
+ Hospital__c : this.HospitalID,
+ OPDPlan__c : this.Id,
+ Person_In_Charge__c : $User.Id,
+ applyUser__c : $User.Id,
+ Loaner_received_staff__c : $User.Name,
+ IsJump__c : this.isJump,
+ JumpCause__c : this.jumpCause,
+ Approved_State_Create__c : this.ApprovedStatus,
+ ApprovedNo_Create__c : this.ApprovedNo
+ });
+ console.log(defaultValues1);
+ // window.open('/a0t/e?retURL=%2F{!OPDPlan__c.Id}' + purposeStr + urlStr );
+ } else {
+ //SWAG-C4H67U XHL 20210726 Start
+ var url = "/{!OPDPlan__c.originalOpdRentalApply__c}/e?newclone=1&retURL=%2F{!OPDPlan__c.originalOpdRentalApply__c}&common.udd.actions.ActionsUtilORIG_URI=%2F{!OPDPlan__c.RentalApplyId__c}%2Fe&cloneli=1&00N10000007MNF8=&00N100000098uKJ=&00N10000004oFTC=&00N10000003O1JF=&00N10000003O1JK=&00N10000006pvpZ=&00N10000003O1JU=&00N10000006gY9x=&00N10000003Mp2H=鑽夋涓�&CF00N10000009EKKp_lkid={!OPDPlan__c.RentalApplyId__c}&CF00N10000009EKKp={!OPDPlan__c.RentalApplyName__c}&CF00N10000008ps61={!OPDPlan__c.Name}&CF00N10000008ps61_lkid={!OPDPlan__c.Id}&CF00N10000008poFM=&CF00N10000008poFM_lkid=&CF00N10000005HzRq=&CF00N10000005HzRq_lkid=&00N10000007oQKh=";
+ window.open(url);
+ //SWAG-C4H67U XHL 20210726 End
+ }
+ } else {
+ // SWAG-BZL695 you 20210413 start
+ var url = "/{!OPDPlan__c.RentalApplyId__c}/e?newclone=1&retURL=%2F{!OPDPlan__c.RentalApplyId__c}&common.udd.actions.ActionsUtilORIG_URI=%2F{!OPDPlan__c.RentalApplyId__c}%2Fe&cloneli=1&00N10000007MNF8=&00N100000098uKJ=&00N10000004oFTC=&00N10000003Ntz7=&00N10000008rG1M=&00N10000005HzRw=&00N10000003Mp2H=鑽夋涓�&CF00N10000009EKKp_lkid={!OPDPlan__c.RentalApplyId__c}&CF00N10000009EKKp={!OPDPlan__c.RentalApplyName__c}&CF00N10000008ps61={!OPDPlan__c.Name}&CF00N10000008ps61_lkid={!OPDPlan__c.Id}&CF00N10000008poFM=&CF00N10000008poFM_lkid=&CF00N10000005HzRq=&CF00N10000005HzRq_lkid=&00N10000007oQKh=";
+ window.open(url);
+ // SWAG-BZL695 you 20210413 end
+ }
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/opdNewSparePartsLoanApplication/opdNewSparePartsLoanApplication.js-meta.xml b/force-app/main/default/lwc/opdNewSparePartsLoanApplication/opdNewSparePartsLoanApplication.js-meta.xml
new file mode 100644
index 0000000..fafbfc5
--- /dev/null
+++ b/force-app/main/default/lwc/opdNewSparePartsLoanApplication/opdNewSparePartsLoanApplication.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>56.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/opdReportSubmit/opdReportSubmit.css b/force-app/main/default/lwc/opdReportSubmit/opdReportSubmit.css
new file mode 100644
index 0000000..ebb43d9
--- /dev/null
+++ b/force-app/main/default/lwc/opdReportSubmit/opdReportSubmit.css
@@ -0,0 +1,10 @@
+.exampleHolder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+.container .uiContainerManager{
+ display: none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/opdReportSubmit/opdReportSubmit.html b/force-app/main/default/lwc/opdReportSubmit/opdReportSubmit.html
new file mode 100644
index 0000000..6e573d9
--- /dev/null
+++ b/force-app/main/default/lwc/opdReportSubmit/opdReportSubmit.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="CreateEmailHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/opdReportSubmit/opdReportSubmit.js b/force-app/main/default/lwc/opdReportSubmit/opdReportSubmit.js
new file mode 100644
index 0000000..3d2af51
--- /dev/null
+++ b/force-app/main/default/lwc/opdReportSubmit/opdReportSubmit.js
@@ -0,0 +1,159 @@
+/*
+ * @Date: 2023-03-28 13:58:54
+ * @Author: @zyh
+ * @LastEditTime: 2023-04-17 16:40:08
+ * @Descripttion:
+ */
+import { LightningElement,wire,track,api } from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { NavigationMixin } from 'lightning/navigation';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+import init from '@salesforce/apex/OPDLwcController.initOPDCancelSubmit';
+import changeTrade from '@salesforce/apex/OpdPlanWebService.changeTrade';
+
+export default class OpdReportSubmit extends LightningElement {
+ @api recordId;
+ Status;
+ Name;
+ Id;
+ Rental_Apply1_Status_New;
+ Rental_Apply2_Status_New;
+ Rental_Apply3_Status_New;
+ Rental_Apply4_Status_New;
+ Rental_Apply5_Status_New;
+ Related_Opportunity1_ID;
+ Related_Opportunity1_Name;
+ Related_Opportunity2_ID;
+ Related_Opportunity2_Name;
+ Activity_Type2;
+ Account_Laboratory;
+ OCM_category_ID;
+ OCM_category_Name;
+ HospitalID;
+ HospitalName;
+ Rental_Apply2;
+ IsLoading = true;
+
+ @wire(CurrentPageReference)
+ getStateParmeters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+
+
+ connectedCallback(){
+ console.log('zheli'+this.recordId);
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log('zheli11'+result);
+
+ console.log(result);
+ console.log('123123111' + result.Related_Opportunity1_ID);
+ if(result != null) {
+ this.IsLoading = false;
+ this.Id = result.Id;
+ this.Status = result.Status;
+ this.Name = result.Name;
+ this.Rental_Apply1_Status_New = result.Rental_Apply1_Status_New;
+ this.Rental_Apply2_Status_New = result.Rental_Apply2_Status_New;
+ this.Rental_Apply3_Status_New = result.Rental_Apply3_Status_New;
+ this.Rental_Apply4_Status_New = result.Rental_Apply4_Status_New;
+ this.Rental_Apply5_Status_New = result.Rental_Apply5_Status_New;
+ this.Related_Opportunity1_ID = result.Related_Opportunity1_ID;
+ this.Related_Opportunity1_Name = result.Related_Opportunity1_Name;
+ this.Related_Opportunity2_ID = result.Related_Opportunity2_ID;
+ this.Related_Opportunity2_Name = result.Related_Opportunity2_Name;
+ this.Activity_Type2 = result.Activity_Type2;
+ this.Account_Laboratory = result.Account_Laboratory;
+ this.OCM_category_ID = result.OCM_category_ID;
+ this.OCM_category_Name = result.OCM_category_Name;
+ this.HospitalID = result.HospitalID;
+ this.HospitalName = result.HospitalName;
+ this.Rental_Apply2 = result.Rental_Apply2;
+ console.log("123");
+ console.log(this.Id);
+ console.log(this.Status);
+ console.log(this.Name);
+ console.log(this.Rental_Apply2_Status_New);
+ this.opdReportSubmit();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ }).catch(error => {
+ console.log("error");
+ console.log(error);
+ }).finally(() => {
+
+ });
+ }
+ opdReportSubmit(){
+ if(this.Status == '鍙栨秷' || this.Status == '瀹屾瘯' ){
+ const evt = new ShowToastEvent({
+ title : 'Error',
+ message : 'OPD璁″垝鐨勭姸鎬佷负鍙栨秷鎴栧畬姣曟椂锛屼笉鑳芥柊寤篛PD鎶ュ憡',
+ variant : 'error'
+ });
+ this.dispatchEvent(evt);
+ // alert('OPD璁″垝鐨勭姸鎬佷负鍙栨秷鎴栧畬姣曟椂锛屼笉鑳芥柊寤篛PD鎶ュ憡');
+ return;
+ }
+ if( this.Rental_Apply1_Status_New != "宸插嚭搴�" && this.Rental_Apply1_Status_New != "鐢宠鑰呭凡鏀惰揣" &&
+ this.Rental_Apply1_Status_New != "鍖婚櫌宸茶鏈虹‘璁�" && this.Rental_Apply1_Status_New != "宸插洖瀵�" &&
+ this.Rental_Apply1_Status_New != "宸插洖鏀�" && this.Rental_Apply1_Status_New != "瀹屼簡" && this.Rental_Apply1_Status_New != "娆犲搧涓�" &&
+ this.Rental_Apply2_Status_New != "宸插嚭搴�" && this.Rental_Apply2_Status_New != "鐢宠鑰呭凡鏀惰揣" &&
+ this.Rental_Apply2_Status_New != "鍖婚櫌宸茶鏈虹‘璁�" && this.Rental_Apply2_Status_New != "宸插洖瀵�" &&
+ this.Rental_Apply2_Status_New != "宸插洖鏀�" && this.Rental_Apply2_Status_New != "瀹屼簡" && this.Rental_Apply2_Status_New != "娆犲搧涓�" &&
+ this.Rental_Apply3_Status_New != "宸插嚭搴�" && this.Rental_Apply3_Status_New != "鐢宠鑰呭凡鏀惰揣" &&
+ this.Rental_Apply3_Status_New != "鍖婚櫌宸茶鏈虹‘璁�" && this.Rental_Apply3_Status_New != "宸插洖瀵�" &&
+ this.Rental_Apply3_Status_New != "宸插洖鏀�" && this.Rental_Apply3_Status_New != "瀹屼簡" && this.Rental_Apply3_Status_New != "娆犲搧涓�" &&
+ this.Rental_Apply4_Status_New != "宸插嚭搴�" && this.Rental_Apply4_Status_New != "鐢宠鑰呭凡鏀惰揣" &&
+ this.Rental_Apply4_Status_New != "鍖婚櫌宸茶鏈虹‘璁�" && this.Rental_Apply4_Status_New != "宸插洖瀵�" &&
+ this.Rental_Apply4_Status_New != "宸插洖鏀�" && this.Rental_Apply4_Status_New != "瀹屼簡" && this.Rental_Apply4_Status_New != "娆犲搧涓�" &&
+ this.Rental_Apply5_Status_New != "宸插嚭搴�" && this.Rental_Apply5_Status_New != "鐢宠鑰呭凡鏀惰揣" &&
+ this.Rental_Apply5_Status_New != "鍖婚櫌宸茶鏈虹‘璁�" && this.Rental_Apply5_Status_New != "宸插洖瀵�" &&
+ this.Rental_Apply5_Status_New != "宸插洖鏀�" && this.Rental_Apply5_Status_New != "瀹屼簡" && this.Rental_Apply5_Status_New != "娆犲搧涓�"
+ ){
+ const evt = new ShowToastEvent({
+ title : 'Error',
+ message : '娌℃湁鍑哄簱鐨勭敵璇蜂笉鍏佽鍒涘缓OPD鎶ュ憡锛�',
+ variant : 'error'
+ });
+ this.dispatchEvent(evt);
+ // alert("娌℃湁鍑哄簱鐨勭敵璇蜂笉鍏佽鍒涘缓OPD鎶ュ憡锛�");
+ // return;
+ }
+ var strs='';
+ if(""!=this.Related_Opportunity1_ID && null!=this.Related_Opportunity1_ID){
+ strs='&CF00N10000002DT68='+this.Related_Opportunity1_Name +
+ '&CF00N10000002DT68_lkid='+ this.Related_Opportunity1_ID +
+ '&CF00N10000002DYCZ=' + this.Related_Opportunity2_Name +
+ '&CF00N10000002DYCZ_lkid=' + this.Related_Opportunity2_ID +
+ '&00N10000002DHk5=璺熻繘璇环'
+ // alert('123');
+ }
+ var urlStr = '';
+
+ urlStr += '&CF00N10000002CWW4='+ this.Account_Laboratory +
+ '&CF00N10000002CWW4_lkid='+ this.Account_Laboratory +
+ '&CF00N10000002Dh0f_lkid='+ this.OCM_category_ID +
+ '&CF00N10000002Dh0f='+ this.OCM_category_Name +
+ '&CF00N10000002DPUD_lkid='+ this.HospitalID +
+ '&CF00N10000002DPUD='+ this.HospitalName;
+
+ urlStr += '&CF00N10000004maf3='+ this.Rental_Apply2 +
+ '&CF00N10000008ps6d='+ this.Name +
+ '&CF00N10000008ps6d_lkid=' + this.Id;
+ window.open('/setup/ui/recordtypeselect.jsp?ent=01I10000000SWfe&retURL=%2F'+ this.Id +'&save_new_url=%2Fa0B%2Fe%3FretURL%3D%252Fa0B%252Fo'+urlStr +strs)
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/opdReportSubmit/opdReportSubmit.js-meta.xml b/force-app/main/default/lwc/opdReportSubmit/opdReportSubmit.js-meta.xml
new file mode 100644
index 0000000..fafbfc5
--- /dev/null
+++ b/force-app/main/default/lwc/opdReportSubmit/opdReportSubmit.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>56.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/opdSupplementaryApplication/opdSupplementaryApplication.css b/force-app/main/default/lwc/opdSupplementaryApplication/opdSupplementaryApplication.css
new file mode 100644
index 0000000..ebb43d9
--- /dev/null
+++ b/force-app/main/default/lwc/opdSupplementaryApplication/opdSupplementaryApplication.css
@@ -0,0 +1,10 @@
+.exampleHolder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+.container .uiContainerManager{
+ display: none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/opdSupplementaryApplication/opdSupplementaryApplication.html b/force-app/main/default/lwc/opdSupplementaryApplication/opdSupplementaryApplication.html
new file mode 100644
index 0000000..6e573d9
--- /dev/null
+++ b/force-app/main/default/lwc/opdSupplementaryApplication/opdSupplementaryApplication.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="CreateEmailHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/opdSupplementaryApplication/opdSupplementaryApplication.js b/force-app/main/default/lwc/opdSupplementaryApplication/opdSupplementaryApplication.js
new file mode 100644
index 0000000..1e87a02
--- /dev/null
+++ b/force-app/main/default/lwc/opdSupplementaryApplication/opdSupplementaryApplication.js
@@ -0,0 +1,110 @@
+/*
+ * @Date: 2023-04-03 14:21:56
+ * @Author: @zyh
+ * @LastEditTime: 2023-04-04 15:15:17
+ * @Descripttion:
+ */
+import { LightningElement,wire,track,api } from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { NavigationMixin } from 'lightning/navigation';
+import init from '@salesforce/apex/OPDLwcController.initOPDCancelSubmit';
+import RecordType from '@salesforce/apex/OPDLwcController.RecordType';
+import opdSelect from '@salesforce/apex/OPDLwcController.opdSelect';
+// import applySelect from '@salesforce/apex/OPDLwcController.applySelect';
+import changeTrade from '@salesforce/apex/OpdPlanWebService.changeTrade';
+import datacheck from '@salesforce/apex/OpdPlanWebService.dataCheck';
+import { encodeDefaultFieldValues } from 'lightning/pageReferenceUtils';
+
+export default class OpdSupplementaryApplication extends NavigationMixin(LightningElement) {
+ @api recordId;
+ Status;
+ Name;
+ Id;
+ supplementaryApplication;
+ OriginalOpdPlanRental;
+ Rental_Apply2;
+ @wire(CurrentPageReference)
+ getStateParmeters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+ connectedCallback(){
+ console.log('zheli'+this.recordId);
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log('zheli11'+result);
+
+ console.log(result);
+ if(result != null) {
+ this.IsLoading = false;
+ this.Id = result.Id;
+ this.Status = result.Status;
+ this.Name = result.Name;
+ this.supplementaryApplication = result.supplementaryApplication;
+ this.OriginalOpdPlanRental = result.OriginalOpdPlanRental;
+ this.Rental_Apply2 = result.Rental_Apply2;
+ console.log("123");
+ console.log(this.Id);
+ console.log(this.Status);
+ console.log(this.Name);
+ console.log(this.supplementaryApplication);
+ console.log(this.OriginalOpdPlanRental);
+ this.SupApplication();
+ // this.updateDateSubmit();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ }).catch(error => {
+ console.log("error");
+ console.log(error);
+ }).finally(() => {
+
+ });
+ }
+ SupApplication(){
+ var opdList = [];
+ if(this.Status != '璁″垝涓�'){
+ alert("鍙湁OPD璁″垝鐘舵�佷负璁″垝涓紝鎵嶈兘杩涜OPD琛ュ厖鐢宠");
+ return;
+ }
+ if(this.supplementaryApplication == '1'){
+ alert('OPD璁″垝鏃犳硶杩涜琛ュ厖鐢宠');
+ return;
+ }
+ if(this.OriginalOpdPlanRental != ''){
+ alert('璇疯浆鑷砄PD璁″垝鍘熷崟杩涜鐢宠');
+ return;
+ }
+ datacheck({
+ rentalApplyId : this.Rental_Apply2
+ }).then( result => {
+ console.log(result);
+ if(result != 'OK'){
+ alert(result);
+ return;
+ }
+ });
+ opdSelect({
+ OpdId : this.Id
+ }).then( result => {
+ console.log(result);
+ opdList = result;
+ var records = opdList.getArray("records");
+ if(records != null && records.length > 0){
+ alert('OPD璁″垝宸茶繘琛岃繃琛ュ厖鐢宠锛屾棤娉曞啀娆¤繘琛岃ˉ鍏呯敵璇�');
+ return;
+ }
+ });
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/opdSupplementaryApplication/opdSupplementaryApplication.js-meta.xml b/force-app/main/default/lwc/opdSupplementaryApplication/opdSupplementaryApplication.js-meta.xml
new file mode 100644
index 0000000..fafbfc5
--- /dev/null
+++ b/force-app/main/default/lwc/opdSupplementaryApplication/opdSupplementaryApplication.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>56.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/opdUpdateDate/opdUpdateDate.css b/force-app/main/default/lwc/opdUpdateDate/opdUpdateDate.css
new file mode 100644
index 0000000..ebb43d9
--- /dev/null
+++ b/force-app/main/default/lwc/opdUpdateDate/opdUpdateDate.css
@@ -0,0 +1,10 @@
+.exampleHolder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+.container .uiContainerManager{
+ display: none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/opdUpdateDate/opdUpdateDate.html b/force-app/main/default/lwc/opdUpdateDate/opdUpdateDate.html
new file mode 100644
index 0000000..6e573d9
--- /dev/null
+++ b/force-app/main/default/lwc/opdUpdateDate/opdUpdateDate.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="CreateEmailHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/opdUpdateDate/opdUpdateDate.js b/force-app/main/default/lwc/opdUpdateDate/opdUpdateDate.js
new file mode 100644
index 0000000..f75fb6b
--- /dev/null
+++ b/force-app/main/default/lwc/opdUpdateDate/opdUpdateDate.js
@@ -0,0 +1,134 @@
+/*
+ * @Date: 2023-03-28 16:47:34
+ * @Author: @zyh
+ * @LastEditTime: 2023-04-17 10:33:27
+ * @Descripttion:
+ */
+import { LightningElement,wire,track,api } from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { NavigationMixin } from 'lightning/navigation';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+import init from '@salesforce/apex/OPDLwcController.initOPDCancelSubmit';
+import RecordType from '@salesforce/apex/OPDLwcController.RecordType';
+// import applySelect from '@salesforce/apex/OPDLwcController.applySelect';
+import changeTrade from '@salesforce/apex/OpdPlanWebService.changeTrade';
+import { encodeDefaultFieldValues } from 'lightning/pageReferenceUtils';
+
+export default class OpdUpdateDate extends NavigationMixin(LightningElement) {
+ @api recordId;
+ Status;
+ Name;
+ Id;
+ rtnRecordType;
+
+ @wire(CurrentPageReference)
+ getStateParmeters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+ connectedCallback(){
+ console.log('zheli'+this.recordId);
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log('zheli11'+result);
+
+ console.log(result);
+ if(result != null) {
+ this.IsLoading = false;
+ this.Id = result.Id;
+ this.Status = result.Status;
+ this.Name = result.Name;
+ console.log("123");
+ console.log(this.Id);
+ console.log(this.Status);
+ console.log(this.Name);
+ this.testupdate();
+ this.updateDateSubmit();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ // this.dispatchEvent(new ShowToastEvent({
+ // title: '1111',
+ // message: 'message',
+ // variant: 'success'
+ // }));
+ }
+ }).catch(error => {
+ console.log("error");
+ console.log(error);
+ }).finally(() => {
+
+ });
+ }
+ testupdate(){
+ var typertn = [];
+ RecordType({
+ RecordType : '01210000000gQyMAAU'
+ }).then(result => {
+ console.log(result);
+ const defaultValues = encodeDefaultFieldValues({
+ RecordTypeId: result,
+ Status__c: '寤舵湡鎶ュ憡',
+ CancelOPDPlan__c: this.Id
+ });
+ console.log(defaultValues);
+ this.rtnRecordType = defaultValues;
+ console.log(this.rtnRecordType+'======123131typertn');
+
+ });
+ }
+ updateDateSubmit(){
+ var rtn = [];
+ changeTrade({
+ opdplanId: this.Id
+ }).then(result => {
+ console.log(result);
+ console.log('typertn+++++'+this.rtnRecordType);
+ rtn = result;
+ console.log('4-14');
+ if (rtn.lenth > 0) {
+ // alert('鍙湁褰揙PD璁″垝涓殑澶囧搧鐢宠鍗曟棤/鑽夋/澶囧搧鐢宠鐨勫嚭搴撴寚绀轰负绌烘椂,鎵嶅彲浠ヨ繘琛屾敼鏈熸搷浣�!');
+ // return;
+ const evt = new ShowToastEvent({
+ title : 'Error',
+ message : '鍙湁褰揙PD璁″垝涓殑澶囧搧鐢宠鍗曟棤/鑽夋/澶囧搧鐢宠鐨勫嚭搴撴寚绀轰负绌烘椂,鎵嶅彲浠ヨ繘琛屾敼鏈熸搷浣�!',
+ variant : 'error'
+ });
+ this.dispatchEvent(evt);
+ return;
+ }
+ if (rtn != 'OK') {
+ alert(rtn);
+ return;
+ }
+ // window.open('/a3D/e?CF00N10000008ps4s='+this.Name +'&00N10000008ps4u=寤舵湡鎶ュ憡&RecordType=01210000000gQyM');
+
+ this[NavigationMixin.Navigate]({
+ type: 'standard__objectPage',
+ attributes: {
+ objectApiName: 'CancelPostponePlan__c', // 瑕佹柊寤虹殑瀵硅薄API
+ actionName: 'new'//,
+ // RecordTypeId: '01210000000gQyM'
+ },
+ state:{
+ // defaultFieldValues:'CancelOPDPlan__c='+this.Id// 瑕佸鍒剁殑瀛楁API
+ defaultFieldValues:this.rtnRecordType// 瑕佸鍒剁殑瀛楁API
+
+ }
+ });
+
+ });
+ }
+
+
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/opdUpdateDate/opdUpdateDate.js-meta.xml b/force-app/main/default/lwc/opdUpdateDate/opdUpdateDate.js-meta.xml
new file mode 100644
index 0000000..fafbfc5
--- /dev/null
+++ b/force-app/main/default/lwc/opdUpdateDate/opdUpdateDate.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>56.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/oppLoseButton/oppLoseButton.html b/force-app/main/default/lwc/oppLoseButton/oppLoseButton.html
new file mode 100644
index 0000000..c26c6e8
--- /dev/null
+++ b/force-app/main/default/lwc/oppLoseButton/oppLoseButton.html
@@ -0,0 +1,8 @@
+<template>
+ <div class="slds-is-relative">
+ <template if:true={showSpinner}>
+ <lightning-spinner size="medium" variant="brand"></lightning-spinner>
+ </template>
+ </div>
+
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/oppLoseButton/oppLoseButton.js b/force-app/main/default/lwc/oppLoseButton/oppLoseButton.js
new file mode 100644
index 0000000..b7100e8
--- /dev/null
+++ b/force-app/main/default/lwc/oppLoseButton/oppLoseButton.js
@@ -0,0 +1,86 @@
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { NavigationMixin } from 'lightning/navigation';
+import init from '@salesforce/apex/OppLoseController.init';
+
+export default class OppLoseButton extends LightningElement {
+ @api
+ taskId;
+ opp;
+ stageName;
+ SAP_Send_OK;
+ Cnt_Lost_cancel_report;
+ Name;
+ Sales_assistant_name;
+ Sales_assistant_ID;
+ Manager_name;
+ Sales_manager_departmentID;
+ Sales_owner_buchang;
+ Sales_owner_buchangID;
+ OpportunityId;
+ task;
+
+ connectedCallback(){
+ console.log(this.taskId);
+ init({
+ taskId: this.taskId
+ }).then(result => {
+ console.log(result);
+ if (result != null) {
+
+ this.IsLoading = false;
+ this.opp = result.opp;
+ this.stageName = result.stageName;
+ this.SAP_Send_OK = result.SAP_Send_OK;
+ this.Cnt_Lost_cancel_report = result.Cnt_Lost_cancel_report;
+ this.Name = result.Name;
+ this.Sales_assistant_name = result.Sales_assistant_name;
+ this.Sales_assistant_ID = result.Sales_assistant_ID;
+ this.Manager_name = result.Manager_name;
+ this.Sales_manager_departmentID = result.Sales_manager_departmentID;
+ this.Sales_owner_buchang = result.Sales_owner_buchang;
+ this.Sales_owner_buchangID = result.Sales_owner_buchangID;
+ this.OpportunityId = result.OpportunityId;
+ this.task = result.task;
+
+ this.changeContractType();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ // window.location.reload();
+ }
+ }).catch(error => {
+ console.log("error");
+ console.log(error);
+ }).finally(() => {
+
+ });
+ }
+
+ changeContractType(){
+ if(this.StageName != '寮曞悎' && this.StageName != '璇环'){
+ alert('鐘舵��1: '+ this.StageName + '銆佷笉鑳藉仛 澶卞崟 浜嗭紒');
+ }
+ else if(this.SAP_Send_OK == '1'){
+ alert('宸茬粡涓婁紶SAP銆佷笉鑳藉仛 澶卞崟 浜嗭紒');
+ }
+ else if(this.Cnt_Lost_cancel_report__c > 0){
+ alert('璇环宸茬粡鏈� 鍙栨秷锛忓け鍗曟姤鍛� 浜嗭紒');
+ // window.location.reload();
+ }else{
+ location.href =
+ '/a1U/e?retURL=%2F' + this.OpportunityId +
+ '&RecordType=01210000000R4hM' +
+ '&CF00N10000004lbGT={!URLENCODE('+this.Name+')}' +
+ '&CF00N10000004lbGT_lkid=' + this.OpportunityId +
+
+ '&CF00N10000006QShg={!URLENCODE('+this.Sales_assistant_name+')}' +
+ '&CF00N10000006QShg_lkid={!URLENCODE('+this.Sales_assistant_ID+')}' +
+ '&CF00N10000006QShq={!URLENCODE('+this.Manager_name+')}' +
+ '&CF00N10000006QShq_lkid={!URLENCODE('+this.Sales_manager_departmentID+')}' +
+ '&CF00N10000006QShb={!URLENCODE('+this.Sales_owner_buchang+')}' +
+ '&CF00N10000006QShb_lkid={!URLENCODE('+this.Sales_owner_buchangID+')}' +
+ '';
+ }
+ }
+
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/oppLoseButton/oppLoseButton.js-meta.xml b/force-app/main/default/lwc/oppLoseButton/oppLoseButton.js-meta.xml
new file mode 100644
index 0000000..2b7649d
--- /dev/null
+++ b/force-app/main/default/lwc/oppLoseButton/oppLoseButton.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/oshRecieved/oshRecieved.css b/force-app/main/default/lwc/oshRecieved/oshRecieved.css
new file mode 100644
index 0000000..a612ca7
--- /dev/null
+++ b/force-app/main/default/lwc/oshRecieved/oshRecieved.css
@@ -0,0 +1,10 @@
+.VOCSubmitHolder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+.container .uiContainerManager{
+ display: none !important;
+}/* sample css file */
\ No newline at end of file
diff --git a/force-app/main/default/lwc/oshRecieved/oshRecieved.html b/force-app/main/default/lwc/oshRecieved/oshRecieved.html
new file mode 100644
index 0000000..1d3b62c
--- /dev/null
+++ b/force-app/main/default/lwc/oshRecieved/oshRecieved.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="VOCSubmitHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/oshRecieved/oshRecieved.js b/force-app/main/default/lwc/oshRecieved/oshRecieved.js
new file mode 100644
index 0000000..12ad641
--- /dev/null
+++ b/force-app/main/default/lwc/oshRecieved/oshRecieved.js
@@ -0,0 +1,83 @@
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { NavigationMixin } from 'lightning/navigation';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+import { updateRecord } from 'lightning/uiRecordApi';
+import init from '@salesforce/apex/QISReportController.initForOSHRecievedButton';
+import updateQis from '@salesforce/apex/QISReportController.updateQis';
+export default class oshRecieved extends LightningElement {
+ @api recordId;
+ IsLoading = true;
+ qisReportId;
+ qisStatus;
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback () {
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ this.IsLoading = false;
+ this.qisReportId = result.Id;
+ this.qisStatus = result.qIStatus;
+ console.log('this.qisStatus='+this.qisStatus);
+ if (this.qisStatus!='OSH妫�娴嬬敵璇�' && this.qisStatus!='瀹屾瘯') {
+ const evt = new ShowToastEvent({
+ title : 'OSH宸茬粡鏀跺埌瀹炵墿',
+ message: '',
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ return;
+ }else{
+ this.updateQisSubmit();
+ }
+ }).catch(error => {
+ console.log('error='+error);
+ }).finally(() => {
+
+ });
+ }
+
+ updateRecordView(recordId) {
+ updateRecord({fields: { Id: recordId }});
+ }
+
+ updateQisSubmit(){
+ updateQis({
+ recordId: this.recordId
+ }).then(result =>{
+
+ console.log('result'+result);
+ if (result!='鎴愬姛') {
+ const evt = new ShowToastEvent({
+ title : '鏇存柊澶辫触',
+ message: result,
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+ }
+ this.dispatchEvent(new CloseActionScreenEvent());
+ this.updateRecordView(this.recordId);
+ }).catch(error => {
+ console.log('error='+error);
+ }).finally(() => {
+
+ });
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/oshRecieved/oshRecieved.js-meta.xml b/force-app/main/default/lwc/oshRecieved/oshRecieved.js-meta.xml
new file mode 100644
index 0000000..35ad9fc
--- /dev/null
+++ b/force-app/main/default/lwc/oshRecieved/oshRecieved.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="oshRecieved">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/otherButtonInASACEditor/otherButtonInASACEditor.css b/force-app/main/default/lwc/otherButtonInASACEditor/otherButtonInASACEditor.css
new file mode 100644
index 0000000..689c97d
--- /dev/null
+++ b/force-app/main/default/lwc/otherButtonInASACEditor/otherButtonInASACEditor.css
@@ -0,0 +1,10 @@
+.inASACEditorHolder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+.container .uiContainerManager{
+ display: none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/otherButtonInASACEditor/otherButtonInASACEditor.html b/force-app/main/default/lwc/otherButtonInASACEditor/otherButtonInASACEditor.html
new file mode 100644
index 0000000..19263b7
--- /dev/null
+++ b/force-app/main/default/lwc/otherButtonInASACEditor/otherButtonInASACEditor.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="inASACEditorHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/otherButtonInASACEditor/otherButtonInASACEditor.js b/force-app/main/default/lwc/otherButtonInASACEditor/otherButtonInASACEditor.js
new file mode 100644
index 0000000..b5d86e5
--- /dev/null
+++ b/force-app/main/default/lwc/otherButtonInASACEditor/otherButtonInASACEditor.js
@@ -0,0 +1,74 @@
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import init from '@salesforce/apex/ReportController.initForASACEditorButton';
+export default class OtherButtonInASACEditor extends LightningElement {
+
+ @api recordId;
+ LastModifiedDate
+ Id
+ Name
+ LastModifiedById
+ DeveloperName
+ IsLoading = true;
+ url;
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback () {
+ console.log(this.recordId);
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result);
+ if (result != undefined) {
+ console.log("if");
+ this.LastModifiedById = result.LastModifiedById;
+ this.LastModifiedDate = result.LastModifiedDate;
+ this.Id = result.Id;
+ this.Name = result.Name;
+ this.DeveloperName = result.DeveloperName;
+ console.log(this.Id);
+ this.editor();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ //window.location.replace("https://ocsm--partial.sandbox.lightning.force.com/lightning/r/Report__c/" + this.recordId + "/view");
+ }else{
+ console.log("else");
+ this.IsLoading = false;
+ this.editor();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+ }).catch(error => {
+ console.log("error");
+ console.log(error);
+ }).finally(() => {
+
+ });
+ //this.updateRecordView(this.recordId);
+
+ }
+
+ editor(){
+ if (this.Id != undefined){
+ this.url = "/apex/RepPAEDecisionRecord?Id="+this.Id+"&ReportId="+this.recordId+"&RecordTypeIds="+"ASACDecision";
+ console.log(this.url);
+ } else {
+ this.url = "/apex/RepPAEDecisionRecord?ReportId="+this.recordId+"&RecordTypeIds="+"ASACDecision";
+ console.log(this.url);
+ }
+ window.open(this.url,"_self");
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/otherButtonInASACEditor/otherButtonInASACEditor.js-meta.xml b/force-app/main/default/lwc/otherButtonInASACEditor/otherButtonInASACEditor.js-meta.xml
new file mode 100644
index 0000000..709c8f7
--- /dev/null
+++ b/force-app/main/default/lwc/otherButtonInASACEditor/otherButtonInASACEditor.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/otherButtonInCancelSubmit/OtherButtonInCancelSubmit.css b/force-app/main/default/lwc/otherButtonInCancelSubmit/OtherButtonInCancelSubmit.css
new file mode 100644
index 0000000..9c466ab
--- /dev/null
+++ b/force-app/main/default/lwc/otherButtonInCancelSubmit/OtherButtonInCancelSubmit.css
@@ -0,0 +1,10 @@
+.CancelSubmitHolder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+.container .uiContainerManager{
+ display: none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/otherButtonInCancelSubmit/otherButtonInCancelSubmit.html b/force-app/main/default/lwc/otherButtonInCancelSubmit/otherButtonInCancelSubmit.html
new file mode 100644
index 0000000..c30bb90
--- /dev/null
+++ b/force-app/main/default/lwc/otherButtonInCancelSubmit/otherButtonInCancelSubmit.html
@@ -0,0 +1,7 @@
+<template>
+ <div class="CancelSubmitHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ <lightning-button label="Show Toast" onclick={handleSuccess}></lightning-button>
+ </div>
+
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/otherButtonInCancelSubmit/otherButtonInCancelSubmit.js b/force-app/main/default/lwc/otherButtonInCancelSubmit/otherButtonInCancelSubmit.js
new file mode 100644
index 0000000..a9b799c
--- /dev/null
+++ b/force-app/main/default/lwc/otherButtonInCancelSubmit/otherButtonInCancelSubmit.js
@@ -0,0 +1,82 @@
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { NavigationMixin } from 'lightning/navigation';
+import init from '@salesforce/apex/MonthlyReportController.initForCancelSubmitButton';
+import cancel from '@salesforce/apex/MonthlyReportController.cancel';
+import UserInfo_Owner from '@salesforce/apex/TaskFeedbackController.UserInfo_Owner';
+import { updateRecord } from 'lightning/uiRecordApi';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+export default class OtherButtonInCancelSubmit extends LightningElement {
+
+ @api recordId;//OwnerId
+ ownerId;
+ monthlyReportId;
+ IsLoading = true;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback () {
+ console.log(this.recordId);
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result);
+ if (result != null) {
+ this.IsLoading = false;
+ this.ownerId = result.ownerId;
+ this.monthlyReportId = result.Id;
+ this.cancelSubmit();
+ console.log("end");
+ this.handleSuccess();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ this.updateRecordView(this.recordId);
+
+ //window.location.replace("https://ocsm--partial.sandbox.lightning.force.com/lightning/r/Monthly_Report__c/" + this.monthlyReportId + "/view");
+ }
+ }).catch(error => {
+ console.log("error");
+ console.log(error);
+ }).finally(() => {
+
+ });
+ }
+
+ handleSuccess(){
+ const event = new ShowToastEvent({
+ title: 'Success',
+ message: '鍙栨秷鎻愪氦鎴愬姛锛�',
+ });
+ this.dispatchEvent(event);
+
+ }
+
+ updateRecordView(recordId) {
+ updateRecord({fields: { Id: recordId }});
+ }
+ cancelSubmit () {
+ //闇�瑕佸畬鍠�
+ if(this.ownerId == UserInfo_Owner.Id) {
+ cancel({
+ recordId: this.recordId
+ });
+ console.log("321");
+ } else {
+ alert("鍙懆鎶ョ殑鎵�鏈変汉鍙互鍙栨秷");
+ }
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/otherButtonInCancelSubmit/otherButtonInCancelSubmit.js-meta.xml b/force-app/main/default/lwc/otherButtonInCancelSubmit/otherButtonInCancelSubmit.js-meta.xml
new file mode 100644
index 0000000..36ce96d
--- /dev/null
+++ b/force-app/main/default/lwc/otherButtonInCancelSubmit/otherButtonInCancelSubmit.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/otherButtonInOpportunity/otherButtonInOpportunity.css b/force-app/main/default/lwc/otherButtonInOpportunity/otherButtonInOpportunity.css
index e6bf091..ebb43d9 100644
--- a/force-app/main/default/lwc/otherButtonInOpportunity/otherButtonInOpportunity.css
+++ b/force-app/main/default/lwc/otherButtonInOpportunity/otherButtonInOpportunity.css
@@ -1,3 +1,10 @@
-.bodyFont{
- font-size: 12px;
+.exampleHolder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+.container .uiContainerManager{
+ display: none !important;
}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/otherButtonInOpportunity/otherButtonInOpportunity.html b/force-app/main/default/lwc/otherButtonInOpportunity/otherButtonInOpportunity.html
index fefe06f..f69803e 100644
--- a/force-app/main/default/lwc/otherButtonInOpportunity/otherButtonInOpportunity.html
+++ b/force-app/main/default/lwc/otherButtonInOpportunity/otherButtonInOpportunity.html
@@ -1,44 +1,17 @@
<template>
- <div style="text-align: right;margin-right: 10px;">
+ <div class="exampleHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+ <!-- <div style="text-align: right;margin-right: 10px;"> -->
<!-- Button group: simple buttons -->
- <lightning-button-group>
+ <!-- <lightning-button-group>
<lightning-button label="鎶ヤ环浜у搧" onclick={navigateReportDetail}></lightning-button>
<lightning-button label="鍙樻洿鍚堝悓绫诲瀷" onclick={changeContractType}></lightning-button>
<lightning-button label="鍏变韩缁欑粡閿�鍟�" onclick={sharedToDealers}></lightning-button>
<lightning-button label="鎺堟潈鐢宠" onclick={authorisationRequest}></lightning-button>
<lightning-button label="鍚堝悓鐢宠" onclick={contractApply}></lightning-button>
- <!-- <lightning-button label="Refresh"></lightning-button>
- <lightning-button label="Edit"></lightning-button>
- <lightning-button label="Save" icon-name="utility:save"></lightning-button>
- <lightning-button-icon icon-name="utility:delete" variant="border-filled" alternative-text="Delete"></lightning-button-icon>
- <lightning-button-icon icon-name="utility:settings" variant="border-filled" alternative-text="Settings"></lightning-button-icon>
- <lightning-button-stateful
- selected={buttonStatefulState}
- label-when-off="Follow"
- label-when-on="Following"
- label-when-hover="Unfollow"
- icon-name-when-off="utility:add"
- icon-name-when-on="utility:check"
- icon-name-when-hover="utility:close"
- onclick={handleButtonStatefulClick}
- ></lightning-button-stateful>
- <lightning-button-icon-stateful
- icon-name="utility:like"
- selected={buttonIconStatefulState}
- alternative-text="Like"
- onclick={handleButtonIconStatefulClick}>
- </lightning-button-icon-stateful>
- <lightning-button-menu alternative-text="Show menu">
- <lightning-menu-item label="Menu Item One" value="item1"></lightning-menu-item>
- <lightning-menu-item label="Menu Item Two" value="item2"></lightning-menu-item>
- <lightning-menu-item label="Menu Item Three" value="item3"></lightning-menu-item>
- </lightning-button-menu> -->
- </lightning-button-group>
- <!-- <button class="slds-button slds-button_success" onclick={navigateReportDetail} >鎶ヤ环浜у搧</button>
- <button class="slds-button slds-button_success" onclick={changeContractType} >鍙樻洿鍚堝悓绫诲瀷</button>
- <button class="slds-button slds-button_success" onclick={sharedToDealers} >鍏变韩缁欑粡閿�鍟�</button>
- <button class="slds-button slds-button_success" onclick={assign} >鎺堟潈鐢宠</button>
- <button class="slds-button slds-button_success" onclick={contractApply} >鍚堝悓鐢宠</button> -->
- </div>
+
+ </lightning-button-group> -->
+ <!-- </div> -->
</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/otherButtonInOpportunity/otherButtonInOpportunity.js b/force-app/main/default/lwc/otherButtonInOpportunity/otherButtonInOpportunity.js
index 748b8b1..52b1885 100644
--- a/force-app/main/default/lwc/otherButtonInOpportunity/otherButtonInOpportunity.js
+++ b/force-app/main/default/lwc/otherButtonInOpportunity/otherButtonInOpportunity.js
@@ -1,4 +1,6 @@
import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
import { NavigationMixin } from 'lightning/navigation';
import init from '@salesforce/apex/OtherButtonOppCtl.init';
import changeTrade from '@salesforce/apex/OpportunityWebService.changeTrade';
@@ -21,6 +23,23 @@
trade;
oppName;
opp;
+ IsLoading = true;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
connectedCallback(){
console.log(this.recordId);
@@ -29,6 +48,8 @@
}).then(result => {
console.log(result);
if (result != null) {
+
+ this.IsLoading = false;
this.currencyIsoCode = result.currencyIsoCode;
this.status = result.stageName;
this.quostatus = result.estimationDecision;
@@ -39,9 +60,14 @@
this.trade = result.trade;
this.oppName = result.oppName;
this.opp = result.opp;
+
+ this.changeContractType();
+ this.dispatchEvent(new CloseActionScreenEvent());
+ // window.location.reload();
}
}).catch(error => {
console.log("error");
+ console.log(error);
}).finally(() => {
});
@@ -81,6 +107,7 @@
}
if(this.quostatus == 'true' || this.quostatus == true){
alert('宸插喅瀹氭姤浠凤紝涓嶈兘淇敼鍐呰锤/澶栬锤');
+ // window.location.reload();
return null;
}
if(this.win == 'true' || this.win == true){
@@ -100,7 +127,7 @@
}).catch(error => {
console.log("error");
}).finally(() => {
-
+ // $A.get("e.force:closeQuickAction").fire();
});
}else{
return null;
@@ -396,6 +423,195 @@
}
contractApply(){
+ /* var btns = document.getElementsByName("contract_authorize");
+for (var i=0; i<btns.length; i++) {
+btns[i].disabled = true;
+btns[i].className = 'btnDisabled';
+}
+
+{!REQUIRESCRIPT("/soap/ajax/51.0/connection.js")};
+{!REQUIRESCRIPT("/soap/ajax/51.0/apex.js")};
+{!RequireScript("/resource/CommonUtilJs")};
+//2021-10-21 gwy 鐗堟湰鏇存敼涓�51.0
+
+
+var foo = function() {
+ var oppid = '{!Opportunity.Id}';
+ var decide_quote = '{!Opportunity.Estimation_Decision__c}';
+ var complete_day = '{!Opportunity.Contract_DB_complite_day__c}';
+ var if_contract_auth = '{!Opportunity.Contract_Authorize__c}';
+ var if_contract_lock = '{!Opportunity.Contract_Authorize_Lock__c}';
+ var If_Need_Authorize = '{!Opportunity.If_Need_Authorize__c}';
+ var Authorized_DB_No = '{!Opportunity.Authorized_DB_No__c}';
+ var profileId = '{!$User.ProfileId}';
+ var spoURL = '{!Opportunity.SPO_URL__c}';
+ //SWAG-CG88AG銆愬鎵樸�戞彁鍑轰环鏍肩敵璇锋槸鍦ㄥ崗璁湁鏁堟湡鍐咃紝鍏佽WIN fy start
+ var DecidedQuoteNo = '{!Opportunity.Estimation_No__c}';
+ //SWAG-CG88AG銆愬鎵樸�戞彁鍑轰环鏍肩敵璇锋槸鍦ㄥ崗璁湁鏁堟湡鍐咃紝鍏佽WIN fy end
+ //2022-03-22 yjk SWAG-CCL6R7
+ var Closing_Bid_Date = '{!Opportunity.Closing_Bid_Date__c}';//13.涓爣鏃�
+ var Closing_Bid_Date_Bid = '{!Opportunity.Closing_Bid_Date_Bid__c}';
+
+ var AccDealerBlacklist = '{!Opportunity.AccDealerBlacklist__c}';//鍒ゆ柇瀹㈡埛/缁忛攢鍟嗘槸鍚︿负榛戝悕鍗�
+ var angency1 = '{!Opportunity.Agency1__c}';
+ var angency2 = '{!Opportunity.Agency2__c}';
+ var accname = '{!Opportunity.Hospital__c}';
+ var ownerids = '{!Opportunity.OwnerId}';
+ var ddid = '{!Opportunity.Opportunity_sub_ownerId__c}';
+
+ if (profileId != '00e10000000Y3o5' && profileId != '00e10000000Nab7' &&
+ profileId != '00e10000000xnpR' && profileId != '00e10000000xyK6' && profileId != '00e10000000xnpW' && profileId != '00e10000000NbCE' && profileId != '00e10000000Nb7i'
+ && profileId != '00e10000000xyK6') {
+ alert("鎮ㄦ病鏈夊悎鍚岀敵璇风殑鏉冮檺銆傝鑱旂郴绯荤粺绠$悊鍛樸��");
+ return;
+ }
+
+ //璐告槗鍚堣 you
+ var oppflag=false;
+ if (AccDealerBlacklist=='123') {
+ alert('瀹㈡埛,缁忛攢鍟�1锛岀粡閿�鍟�2閮戒负榛戝悕鍗曪紝涓嶈兘鍋氭巿鏉冪敵璇凤紒');
+ oppflag=true;
+
+ }else if(AccDealerBlacklist=='12'){
+ alert('瀹㈡埛,缁忛攢鍟�1閮戒负榛戝悕鍗曪紝涓嶈兘鍋氭巿鏉冪敵璇凤紒');
+ oppflag=true;
+ }else if(AccDealerBlacklist=='23'){
+ alert('缁忛攢鍟�1锛岀粡閿�鍟�2閮戒负榛戝悕鍗曪紝涓嶈兘鍋氭巿鏉冪敵璇凤紒');
+ oppflag=true;
+ }else if(AccDealerBlacklist=='13'){
+ alert('瀹㈡埛,缁忛攢鍟�1閮戒负榛戝悕鍗曪紝涓嶈兘鍋氭巿鏉冪敵璇凤紒');
+ oppflag=true;
+ }else if(AccDealerBlacklist=='1'){
+ alert('瀹㈡埛涓洪粦鍚嶅崟锛屼笉鑳藉仛鎺堟潈鐢宠锛�');
+ oppflag=true;
+ }else if(AccDealerBlacklist=='2'){
+ alert('缁忛攢鍟�1涓洪粦鍚嶅崟锛屼笉鑳藉仛鎺堟潈鐢宠锛�');
+ oppflag=true;
+ }else if(AccDealerBlacklist=='3'){
+ alert('缁忛攢鍟�2涓洪粦鍚嶅崟锛屼笉鑳藉仛鎺堟潈鐢宠锛�');
+ oppflag=true;
+ }
+ if(oppflag){
+ var opprtn = sforce.apex.execute("OpportunityWebService", "accSendEmail",{"AccDealerBlacklist":AccDealerBlacklist,"accname":accname,"angency1":angency1,"angency2":angency2,"ownerids":ownerids,"angency2":angency2,"oppid":oppid});
+ if (opprtn = true) {
+ return;
+ }
+ }
+ //璐告槗鍚堣 you
+
+ if(!Closing_Bid_Date){
+ alert("璇峰~鍐�13.涓爣鏃ャ��");
+ return;
+ }
+
+ if (decide_quote != '1') {
+ alert('璇峰厛鍐冲畾鎶ヤ环銆�');
+ return;
+ }
+ //SWAG-CG88AG銆愬鎵樸�戞彁鍑轰环鏍肩敵璇锋槸鍦ㄥ崗璁湁鏁堟湡鍐咃紝鍏佽WIN fy start
+ if (DecidedQuoteNo !="") {
+ var judg=sforce.apex.execute("OpportunityWebService","judgeIsAssistantAppliedOutTime",{Quoteid:DecidedQuoteNo});
+ // alert('judg寰楀�硷細'+judg);
+ // return;
+ if(judg == 'false'){
+ alert('缁忛攢鍟嗗崗璁凡杩囨湡锛岃閲嶆柊鍋氭姤浠疯绠椼��');
+ return;
+ }
+ }
+ //SWAG-CG88AG銆愬鎵樸�戞彁鍑轰环鏍肩敵璇锋槸鍦ㄥ崗璁湁鏁堟湡鍐咃紝鍏佽WIN fy end
+ // 20221009 ljh SWAG-CK29AJ start
+ var ClosingBidDate = '{!Opportunity.Closing_Bid_Date__c}';
+ var BidDate = '{!Opportunity.Bid_Date__c}';
+ if( ClosingBidDate < BidDate){
+ alert('13.涓爣鏃ヤ笉鑳芥棭浜�12.鎷涙爣鏃�');
+ return;
+ }
+ // 20221009 ljh SWAG-CK29AJ end
+ if(If_Need_Authorize == '1' && (Authorized_DB_No == null || Authorized_DB_No == '')){
+ alert('璇峰厛鍋氭巿鏉冪敵璇枫��');
+ return;
+ }
+
+ if ('{!Opportunity.Cnt_Lost_cancel_Draft__c}' > 0) {
+ if(!confirm('璇环鏈夎崏妗堜腑鐨勫彇娑�/澶卞崟鎶ュ憡锛屾槸鍚︾户缁紵')){
+ return ;
+ }
+ } else if ('{!Opportunity.Cnt_Lost_cancel_report__c}' - '{!Opportunity.Cnt_Lost_cancel_Draft__c}' > 0) {
+ alert('璇环鏈夊凡鎻愪氦鐨勫彇娑�/澶卞崟鎶ュ憡銆�');
+ return;
+ }
+
+
+
+// 2022-03-31 鏂拌储骞翠环鏍艰皟鏁� start
+ var decide_date = '{!Opportunity.DecideQuoteDate__c}';
+ if (decide_date != null && decide_date < {!DATE(2022,4,1)}) {
+ alert('鎶ヤ环鍙樻洿锛岃閲嶆柊鍋欴ecide銆�');
+ return;
+ }
+
+ // 2022-03-31 鏂拌储骞翠环鏍艰皟鏁� end
+ var sql = "select Id,Contract_Authorize_Lock__c from Opportunity where Id ='" + oppid + "'";
+ var sqlResult = sforce.connection.query(sql);
+ var records = sqlResult.getArray("records");
+
+ if ((complete_day != null && complete_day != '') && records[0].Contract_Authorize_Lock__c== 'true') {
+ alert('鍚堝悓鐢宠宸茬粡瀹屾垚锛岃涓嶈閲嶅鎻愪氦銆�');
+ return;
+ }
+ // if ('{!Opportunity.AcecideCntCheck__c}' != '1') {
+ // alert('闃胯タ璧涘璇环鍙兘鍖呭惈鍗卞寲鍝侊紝鎴栬�咃紝鏅�氳浠蜂笉鑳藉寘鍚嵄鍖栧搧銆�');
+ // return;
+ // }
+ if ((complete_day == null || complete_day == '') && records[0].Contract_Authorize_Lock__c== 'true') {
+ alert('鍚堝悓姝e湪鐢宠涓紝璇蜂笉瑕侀噸澶嶆彁浜ゃ��');
+ return;
+ }
+
+ if ('{!Opportunity.IF_Submit__c }' == '1') {
+ alert('涓婁紶澶辫触锛岃鑱旂郴绯荤粺绠$悊鍛�!');
+ return;
+ }
+
+ var angency = '{!Opportunity.Agency1Id__c}';
+ if('{!Opportunity.Trade__c}' == '澶栬部' || '{!Opportunity.Sales_Root__c}' == 'OCM鐩存帴璨╁2'){
+ var rtn = sforce.apex.execute("OpportunityWebService", "updReg",{oppid:oppid});
+ } else {
+ if('{!Opportunity.Is_Corrosion__c}' == '1'){
+ var rtn1 = sforce.apex.execute("OpportunityWebService", "checkDangerItem",{agency1:angency });
+ if (rtn1 != 'OK') {
+ alert(rtn1);
+ return;
+ }
+ }else{
+ var rtn = sforce.apex.execute("OpportunityWebService", "oppCheck",{oppid:oppid, saveFlg:'1'});
+
+ if (rtn != 'OK') {
+ alert(rtn);
+ return;
+ }
+ }
+
+
+}
+
+var opp = new sforce.SObject('Opportunity');
+opp.Id = '{!Opportunity.Id}';
+opp.Contract_Authorize__c = '1';
+opp.if_Interface_Lock__c = '1';
+opp.IF_Submit__c = '1';
+var result = sforce.connection.update([opp]);
+var messages = getConnectDMLErrorMessages(result);
+if (messages.length > 0) {
+alert(messages.join("\n"));
+return;
+}
+alert('鎻愪氦鎴愬姛锛佽鍦⊿PO绯荤粺涓畬鎴愬悎鍚岀敵璇枫��');
+
+//window.location.reload();
+window.open(spoURL);
+};
+foo();*/
}
}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/otherButtonInOpportunity/otherButtonInOpportunity.js-meta.xml b/force-app/main/default/lwc/otherButtonInOpportunity/otherButtonInOpportunity.js-meta.xml
index ea41701..2b7649d 100644
--- a/force-app/main/default/lwc/otherButtonInOpportunity/otherButtonInOpportunity.js-meta.xml
+++ b/force-app/main/default/lwc/otherButtonInOpportunity/otherButtonInOpportunity.js-meta.xml
@@ -6,5 +6,6 @@
<target>lightning__RecordPage</target>
<target>lightning__AppPage</target>
<target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
</targets>
</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/pageBlocks/pageBlocks.html b/force-app/main/default/lwc/pageBlocks/pageBlocks.html
new file mode 100644
index 0000000..95944b9
--- /dev/null
+++ b/force-app/main/default/lwc/pageBlocks/pageBlocks.html
@@ -0,0 +1,47 @@
+<template>
+ <lightning-card title="Course Details">
+ <lightning-accordion
+ allow-multiple-sections-open
+ active-section-name={activeSections}
+ >
+ <lightning-accordion-section name="A" label="Contents">
+ <lightning-layout multiple-rows="true">
+ <lightning-layout-item size="6">
+ Irrigation systems
+ </lightning-layout-item>
+
+ <lightning-layout-item size="6">
+ Soils
+ </lightning-layout-item>
+
+ <lightning-layout-item size="6">
+ Organic crops
+ </lightning-layout-item>
+
+ <lightning-layout-item size="6">
+ Sustainable pest control
+ </lightning-layout-item>
+ </lightning-layout>
+ </lightning-accordion-section>
+ <lightning-accordion-section name="B" label="Instructors">
+ <lightning-layout multiple-rows="true">
+ <lightning-layout-item size="6">
+ Anna Perez
+ </lightning-layout-item>
+
+ <lightning-layout-item size="6">
+ Mark Kingston
+ </lightning-layout-item>
+
+ <lightning-layout-item size="6">
+ Tom Davis
+ </lightning-layout-item>
+
+ <lightning-layout-item size="6">
+ Rachel Morris
+ </lightning-layout-item>
+ </lightning-layout>
+ </lightning-accordion-section>
+ </lightning-accordion>
+ </lightning-card>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/pageBlocks/pageBlocks.js b/force-app/main/default/lwc/pageBlocks/pageBlocks.js
new file mode 100644
index 0000000..c3037fb
--- /dev/null
+++ b/force-app/main/default/lwc/pageBlocks/pageBlocks.js
@@ -0,0 +1,5 @@
+import { LightningElement } from 'lwc';
+
+export default class PageBlocks extends LightningElement {
+ activeSections = ['A', 'B'];
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/pageBlocks/pageBlocks.js-meta.xml b/force-app/main/default/lwc/pageBlocks/pageBlocks.js-meta.xml
new file mode 100644
index 0000000..b9a3113
--- /dev/null
+++ b/force-app/main/default/lwc/pageBlocks/pageBlocks.js-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>false</isExposed>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/pageBlocksWrapper/pageBlocksWrapper.html b/force-app/main/default/lwc/pageBlocksWrapper/pageBlocksWrapper.html
new file mode 100644
index 0000000..a6e916d
--- /dev/null
+++ b/force-app/main/default/lwc/pageBlocksWrapper/pageBlocksWrapper.html
@@ -0,0 +1,19 @@
+<template>
+ <c-example-wrapper
+ icon-name="custom:custom44"
+ lwc="pageBlocks"
+ title="Page Blocks"
+ visualforce="pageBlocks"
+ visualforce-height="230px"
+ >
+ <c-page-blocks slot="lwc"></c-page-blocks>
+
+ <!-- prettier-ignore -->
+ <p>
+ Use <a target="_blank" href="https://developer.salesforce.com/docs/component-library/bundle/lightning-card">
+ lightning-card</a>, <a target="_blank" href="https://developer.salesforce.com/docs/component-library/bundle/lightning-layout">
+ lightning-layout</a> and <a target="_blank" href="https://developer.salesforce.com/docs/component-library/bundle/lightning-layout-item">
+ lightning-layout-item </a> to replace apex:pageBlock, apex:pageBlockSection and apex:pageBlockSectionItem.
+ </p>
+ </c-example-wrapper>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/pageBlocksWrapper/pageBlocksWrapper.js b/force-app/main/default/lwc/pageBlocksWrapper/pageBlocksWrapper.js
new file mode 100644
index 0000000..c749c28
--- /dev/null
+++ b/force-app/main/default/lwc/pageBlocksWrapper/pageBlocksWrapper.js
@@ -0,0 +1,3 @@
+import { LightningElement } from 'lwc';
+
+export default class PageBlocksWrapper extends LightningElement {}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/pageBlocksWrapper/pageBlocksWrapper.js-meta.xml b/force-app/main/default/lwc/pageBlocksWrapper/pageBlocksWrapper.js-meta.xml
new file mode 100644
index 0000000..6646900
--- /dev/null
+++ b/force-app/main/default/lwc/pageBlocksWrapper/pageBlocksWrapper.js-meta.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__AppPage</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/pageMessagesDataRetrieval/__mocks__/pageMessagesDataRetrieval.js b/force-app/main/default/lwc/pageMessagesDataRetrieval/__mocks__/pageMessagesDataRetrieval.js
new file mode 100644
index 0000000..afde693
--- /dev/null
+++ b/force-app/main/default/lwc/pageMessagesDataRetrieval/__mocks__/pageMessagesDataRetrieval.js
@@ -0,0 +1,3 @@
+import { LightningElement } from 'lwc';
+
+export default class PageMessagesDataRetrieval extends LightningElement {}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/pageMessagesDataRetrieval/pageMessagesDataRetrieval.html b/force-app/main/default/lwc/pageMessagesDataRetrieval/pageMessagesDataRetrieval.html
new file mode 100644
index 0000000..b970684
--- /dev/null
+++ b/force-app/main/default/lwc/pageMessagesDataRetrieval/pageMessagesDataRetrieval.html
@@ -0,0 +1,8 @@
+<template>
+ <template if:true={accounts.data}>
+ <p>{accounts.data}</p>
+ </template>
+ <template if:true={accounts.error}>
+ <c-error-panel errors={accounts.error}></c-error-panel>
+ </template>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/pageMessagesDataRetrieval/pageMessagesDataRetrieval.js b/force-app/main/default/lwc/pageMessagesDataRetrieval/pageMessagesDataRetrieval.js
new file mode 100644
index 0000000..30a4e92
--- /dev/null
+++ b/force-app/main/default/lwc/pageMessagesDataRetrieval/pageMessagesDataRetrieval.js
@@ -0,0 +1,7 @@
+import { LightningElement, wire } from 'lwc';
+import getAccounts from '@salesforce/apex/PageMessagesDataRetrievalControllerLwc.getAccounts';
+
+export default class PageMessagesDataRetrieval extends LightningElement {
+ @wire(getAccounts)
+ accounts;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/pageMessagesDataRetrieval/pageMessagesDataRetrieval.js-meta.xml b/force-app/main/default/lwc/pageMessagesDataRetrieval/pageMessagesDataRetrieval.js-meta.xml
new file mode 100644
index 0000000..b9a3113
--- /dev/null
+++ b/force-app/main/default/lwc/pageMessagesDataRetrieval/pageMessagesDataRetrieval.js-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>false</isExposed>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/pageMessagesDataRetrievalWrapper/pageMessagesDataRetrievalWrapper.html b/force-app/main/default/lwc/pageMessagesDataRetrievalWrapper/pageMessagesDataRetrievalWrapper.html
new file mode 100644
index 0000000..f97fa3d
--- /dev/null
+++ b/force-app/main/default/lwc/pageMessagesDataRetrievalWrapper/pageMessagesDataRetrievalWrapper.html
@@ -0,0 +1,20 @@
+<template>
+ <c-example-wrapper
+ icon-name="custom:custom86"
+ lwc="pageMessagesDataRetrieval"
+ title="Data Retrieval Error Message"
+ visualforce="pageMessagesDataRetrieval"
+ visualforce-height="120px"
+ >
+ <c-page-messages-data-retrieval
+ slot="lwc"
+ ></c-page-messages-data-retrieval>
+ <!-- prettier-ignore -->
+ <p>
+ Let exceptions propagate instead of using apex:pageMessages. Show
+ error messages if no data is found by using
+ a <a target="_blank" href="https://www.lightningdesignsystem.com/components/illustration/#No-Data">
+ no data</a> error panel.
+ </p>
+ </c-example-wrapper>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/pageMessagesDataRetrievalWrapper/pageMessagesDataRetrievalWrapper.js b/force-app/main/default/lwc/pageMessagesDataRetrievalWrapper/pageMessagesDataRetrievalWrapper.js
new file mode 100644
index 0000000..0d98ac9
--- /dev/null
+++ b/force-app/main/default/lwc/pageMessagesDataRetrievalWrapper/pageMessagesDataRetrievalWrapper.js
@@ -0,0 +1,3 @@
+import { LightningElement } from 'lwc';
+
+export default class PageMessagesDataRetrievalWrapper extends LightningElement {}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/pageMessagesDataRetrievalWrapper/pageMessagesDataRetrievalWrapper.js-meta.xml b/force-app/main/default/lwc/pageMessagesDataRetrievalWrapper/pageMessagesDataRetrievalWrapper.js-meta.xml
new file mode 100644
index 0000000..6646900
--- /dev/null
+++ b/force-app/main/default/lwc/pageMessagesDataRetrievalWrapper/pageMessagesDataRetrievalWrapper.js-meta.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__AppPage</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/pageMessagesForm/pageMessagesForm.html b/force-app/main/default/lwc/pageMessagesForm/pageMessagesForm.html
new file mode 100644
index 0000000..3d6be17
--- /dev/null
+++ b/force-app/main/default/lwc/pageMessagesForm/pageMessagesForm.html
@@ -0,0 +1,33 @@
+<template>
+ <lightning-input
+ label="Enter City Name:"
+ onchange={handleInputChange}
+ value={cityName}
+ ></lightning-input>
+ <div class="slds-align_absolute-center slds-var-p-around_medium">
+ <template if:true={errors}>
+ <div style="position: relative">
+ <lightning-button-icon
+ icon-class="slds-button_icon-error"
+ variant="bare"
+ size="large"
+ icon-name="utility:error"
+ alternative-text="Resolve Error"
+ onclick={handleErrorButtonIconClick}
+ ></lightning-button-icon>
+ <c-error-popover errors={errors}></c-error-popover>
+ </div>
+ </template>
+ <lightning-button
+ class="cancel"
+ onclick={handleCancelButtonClick}
+ label="Cancel"
+ ></lightning-button>
+ <lightning-button
+ class="save slds-var-m-left_x-small"
+ onclick={handleSaveButtonClick}
+ label="Save"
+ variant="brand"
+ ></lightning-button>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/pageMessagesForm/pageMessagesForm.js b/force-app/main/default/lwc/pageMessagesForm/pageMessagesForm.js
new file mode 100644
index 0000000..a83a29f
--- /dev/null
+++ b/force-app/main/default/lwc/pageMessagesForm/pageMessagesForm.js
@@ -0,0 +1,35 @@
+import { LightningElement } from 'lwc';
+import { reduceErrors } from 'c/ldsUtils';
+import createCity from '@salesforce/apex/PageMessagesFormControllerLwc.createCity';
+
+export default class PageMessagesForm extends LightningElement {
+ errors;
+ cityName;
+
+ handleSaveButtonClick() {
+ createCity({ cityName: this.cityName })
+ .then(() => {
+ // Handle successful result
+ })
+ .catch((error) => {
+ this.errors = reduceErrors(error).join(', ');
+ // Optionally highlight fields errors
+ this.template
+ .querySelector('lightning-input')
+ .setCustomValidity('Incorrect input');
+ this.template.querySelector('lightning-input').reportValidity();
+ });
+ }
+
+ handleInputChange(event) {
+ this.cityName = event.detail.value;
+ }
+
+ handleCancelButtonClick() {
+ this.cityName = '';
+ }
+
+ handleErrorButtonIconClick() {
+ this.template.querySelector('c-error-popover').toggle();
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/pageMessagesForm/pageMessagesForm.js-meta.xml b/force-app/main/default/lwc/pageMessagesForm/pageMessagesForm.js-meta.xml
new file mode 100644
index 0000000..b9a3113
--- /dev/null
+++ b/force-app/main/default/lwc/pageMessagesForm/pageMessagesForm.js-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>false</isExposed>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/pageMessagesFormWrapper/pageMessagesFormWrapper.html b/force-app/main/default/lwc/pageMessagesFormWrapper/pageMessagesFormWrapper.html
new file mode 100644
index 0000000..3fbb4e9
--- /dev/null
+++ b/force-app/main/default/lwc/pageMessagesFormWrapper/pageMessagesFormWrapper.html
@@ -0,0 +1,20 @@
+<template>
+ <c-example-wrapper
+ icon-name="custom:custom86"
+ lwc="pageMessagesForm"
+ title="Form Error Message"
+ visualforce="pageMessagesForm"
+ visualforce-height="155px"
+ >
+ <c-page-messages-form slot="lwc"></c-page-messages-form>
+ <!-- prettier-ignore -->
+ <p>
+ Let exceptions propagate instead of using apex:pageMessages. Show
+ error messages after a form submission using
+ a <a target="_blank" href="https://www.lightningdesignsystem.com/components/popovers/">
+ popover</a> and optionally highlight the field with
+ an <a target="_blank" href="https://www.lightningdesignsystem.com/guidelines/messaging/components/inline-text/#flavor-variants-state">
+ error state</a>.
+ </p>
+ </c-example-wrapper>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/pageMessagesFormWrapper/pageMessagesFormWrapper.js b/force-app/main/default/lwc/pageMessagesFormWrapper/pageMessagesFormWrapper.js
new file mode 100644
index 0000000..7a08e05
--- /dev/null
+++ b/force-app/main/default/lwc/pageMessagesFormWrapper/pageMessagesFormWrapper.js
@@ -0,0 +1,3 @@
+import { LightningElement } from 'lwc';
+
+export default class PageMessagesFormWrapper extends LightningElement {}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/pageMessagesFormWrapper/pageMessagesFormWrapper.js-meta.xml b/force-app/main/default/lwc/pageMessagesFormWrapper/pageMessagesFormWrapper.js-meta.xml
new file mode 100644
index 0000000..6646900
--- /dev/null
+++ b/force-app/main/default/lwc/pageMessagesFormWrapper/pageMessagesFormWrapper.js-meta.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__AppPage</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/pageMessagesToast/pageMessagesToast.html b/force-app/main/default/lwc/pageMessagesToast/pageMessagesToast.html
new file mode 100644
index 0000000..b476037
--- /dev/null
+++ b/force-app/main/default/lwc/pageMessagesToast/pageMessagesToast.html
@@ -0,0 +1,8 @@
+<template>
+ <p>Click the next button to generate and send the document:</p>
+ <lightning-button
+ onclick={handleButtonClick}
+ label="Send PDF"
+ class="slds-var-m-top_small"
+ ></lightning-button>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/pageMessagesToast/pageMessagesToast.js b/force-app/main/default/lwc/pageMessagesToast/pageMessagesToast.js
new file mode 100644
index 0000000..633e82f
--- /dev/null
+++ b/force-app/main/default/lwc/pageMessagesToast/pageMessagesToast.js
@@ -0,0 +1,21 @@
+import { LightningElement } from 'lwc';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+import { reduceErrors } from 'c/ldsUtils';
+import callApex from '@salesforce/apex/PageMessagesControllerLwc.callApex';
+
+export default class PageMessagesToast extends LightningElement {
+ handleButtonClick() {
+ callApex()
+ .then(() => {
+ // Handle successful result
+ })
+ .catch((error) => {
+ const evt = new ShowToastEvent({
+ title: 'Error',
+ message: reduceErrors(error).join(', '),
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+ });
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/pageMessagesToast/pageMessagesToast.js-meta.xml b/force-app/main/default/lwc/pageMessagesToast/pageMessagesToast.js-meta.xml
new file mode 100644
index 0000000..b9a3113
--- /dev/null
+++ b/force-app/main/default/lwc/pageMessagesToast/pageMessagesToast.js-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>false</isExposed>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/pageMessagesToastWrapper/pageMessagesToastWrapper.html b/force-app/main/default/lwc/pageMessagesToastWrapper/pageMessagesToastWrapper.html
new file mode 100644
index 0000000..b984a3f
--- /dev/null
+++ b/force-app/main/default/lwc/pageMessagesToastWrapper/pageMessagesToastWrapper.html
@@ -0,0 +1,18 @@
+<template>
+ <c-example-wrapper
+ icon-name="custom:custom86"
+ lwc="pageMessagesToast"
+ title="Toast Error Message"
+ visualforce="pageMessages"
+ visualforce-height="70px"
+ >
+ <c-page-messages-toast slot="lwc"></c-page-messages-toast>
+
+ <!-- prettier-ignore -->
+ <p>
+ Let exceptions propagate instead of using apex:pageMessages.
+ Fire a <a target="_blank" href="https://developer.salesforce.com/docs/component-library/bundle/lightning-platform-show-toast-event/documentation">
+ lightning-platform-show-toast-event</a> to show an error toast message.
+ </p>
+ </c-example-wrapper>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/pageMessagesToastWrapper/pageMessagesToastWrapper.js b/force-app/main/default/lwc/pageMessagesToastWrapper/pageMessagesToastWrapper.js
new file mode 100644
index 0000000..b5970f0
--- /dev/null
+++ b/force-app/main/default/lwc/pageMessagesToastWrapper/pageMessagesToastWrapper.js
@@ -0,0 +1,3 @@
+import { LightningElement } from 'lwc';
+
+export default class PageMessagesToastWrapper extends LightningElement {}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/pageMessagesToastWrapper/pageMessagesToastWrapper.js-meta.xml b/force-app/main/default/lwc/pageMessagesToastWrapper/pageMessagesToastWrapper.js-meta.xml
new file mode 100644
index 0000000..6646900
--- /dev/null
+++ b/force-app/main/default/lwc/pageMessagesToastWrapper/pageMessagesToastWrapper.js-meta.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__AppPage</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/paginatedList/paginatedList.html b/force-app/main/default/lwc/paginatedList/paginatedList.html
new file mode 100644
index 0000000..e4c7e1a
--- /dev/null
+++ b/force-app/main/default/lwc/paginatedList/paginatedList.html
@@ -0,0 +1,37 @@
+<template>
+ <template if:true={loader}>
+ <lightning-spinner
+ alternative-text="Loading..."
+ size="small"
+ ></lightning-spinner>
+ </template>
+ <template if:true={records}>
+ <div class="table-container">
+ <lightning-datatable
+ key-field="id"
+ data={records}
+ columns={columns}
+ sorted-by={sortBy}
+ sorted-direction={sortDirection}
+ onsort={doSorting}
+ >
+ </lightning-datatable>
+ </div>
+ <c-paginator
+ onprevious={handlePrevious}
+ onnext={handleNext}
+ onpageschange={handlePageschange}
+ onfirst={handleFirst}
+ onlast={handleLast}
+ page-size-options={pageSizeOptions}
+ previous-button-disabled={previousButtonDisabled}
+ next-button-disabled={nextButtonDisabled}
+ record-start={recordStart}
+ record-end={recordEnd}
+ total-records={totalRecords}
+ ></c-paginator>
+ </template>
+ <template if:true={error}>
+ <c-error-panel errors={error}></c-error-panel>
+ </template>
+</template>
diff --git a/force-app/main/default/lwc/paginatedList/paginatedList.js b/force-app/main/default/lwc/paginatedList/paginatedList.js
new file mode 100644
index 0000000..243ca83
--- /dev/null
+++ b/force-app/main/default/lwc/paginatedList/paginatedList.js
@@ -0,0 +1,126 @@
+import { LightningElement, api, track } from 'lwc';
+import getAccountsPaginated from '@salesforce/apex/PaginatedListControllerLwc.getAccountsPaginated';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+import { reduceErrors } from 'c/ldsUtils';
+import ACCOUNT_NAME_FIELD from '@salesforce/schema/Account.Name';
+import ACCOUNT_TYPE_FIELD from '@salesforce/schema/Account.Type';
+import ACCOUNT_PHONE_FIELD from '@salesforce/schema/Account.Type';
+import ACCOUNT_EMPLOYEES_FIELD from '@salesforce/schema/Account.NumberOfEmployees';
+
+const COLUMNS = [
+ {
+ label: 'Account Name',
+ fieldName: ACCOUNT_NAME_FIELD.fieldApiName,
+ type: 'text',
+ sortable: 'true'
+ },
+ { label: 'Type', fieldName: ACCOUNT_TYPE_FIELD.fieldApiName, type: 'text' },
+ {
+ label: 'Phone',
+ fieldName: ACCOUNT_PHONE_FIELD.fieldApiName,
+ type: 'phone'
+ },
+ {
+ label: 'Employees',
+ fieldName: ACCOUNT_EMPLOYEES_FIELD.fieldApiName,
+ type: 'Number'
+ }
+];
+
+export default class PaginatedList extends LightningElement {
+ columns = COLUMNS;
+ @track sortBy = 'Name';
+ @track sortDirection = 'asc';
+ @track pageSize = 10;
+ error;
+ records;
+ currentPageToken = 0;
+ nextPageToken = this.pageSize;
+ @track loader = false;
+ @track pageNumber = 1;
+ @track paginationVisibility = false;
+ @track totalPages = 1;
+ @api pageSizeOptions = [10, 25, 50, 75, 100];
+ connectedCallback() {
+ this.getAccounts();
+ }
+
+ getAccounts() {
+ this.loader = true;
+ getAccountsPaginated({
+ pageSize: this.pageSize,
+ pageToken: this.currentPageToken,
+ sortField: this.sortBy,
+ sortOrder: this.sortDirection
+ })
+ .then((result) => {
+ this.loader = false;
+ if (result) {
+ this.records = result.records;
+ this.nextPageToken = result.nextPageToken;
+ this.totalRecords = result.totalRecords;
+ this.recordStart = result.recordStart;
+ this.recordEnd = result.recordEnd;
+ this.totalPages = Math.ceil(
+ result.totalRecords / this.pageSize
+ );
+ this.paginationVisibility =
+ this.totalPages > 1 ? true : false;
+ }
+ })
+ .catch((error) => {
+ this.loader = false;
+ this.error = error;
+ this.currentPageToken = 0;
+ const evt = new ShowToastEvent({
+ title: 'Error',
+ message: reduceErrors(error).join(', '),
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+ });
+ }
+ doSorting(event) {
+ console.log('Sort');
+ this.sortBy = event.detail.fieldName;
+ this.sortDirection = event.detail.sortDirection;
+ this.currentPageToken = 0;
+ this.getAccounts();
+ }
+
+ handlePrevious() {
+ this.currentPageToken =
+ Number(this.currentPageToken) - Number(this.pageSize);
+ this.getAccounts();
+ }
+
+ handleNext() {
+ this.currentPageToken =
+ Number(this.currentPageToken) + Number(this.pageSize);
+ this.getAccounts();
+ }
+ handleFirst() {
+ this.currentPageToken = 0;
+ this.getAccounts();
+ }
+
+ handleLast() {
+ this.currentPageToken =
+ this.totalPages > 1 ? (this.totalPages - 1) * this.pageSize : 0;
+ this.getAccounts();
+ }
+
+ handlePageschange(event) {
+ console.log(event.detail);
+ this.pageSize = event.detail;
+ this.currentPageToken = 0;
+ this.getAccounts();
+ }
+ get previousButtonDisabled() {
+ return this.currentPageToken === 0;
+ }
+
+ get nextButtonDisabled() {
+ return this.nextPageToken === undefined;
+ }
+}
diff --git a/force-app/main/default/lwc/paginatedList/paginatedList.js-meta.xml b/force-app/main/default/lwc/paginatedList/paginatedList.js-meta.xml
new file mode 100644
index 0000000..98de4a2
--- /dev/null
+++ b/force-app/main/default/lwc/paginatedList/paginatedList.js-meta.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__AppPage</target>
+ <target>lightning__Tab</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/paginatedListWrapper/paginatedListWrapper.html b/force-app/main/default/lwc/paginatedListWrapper/paginatedListWrapper.html
new file mode 100644
index 0000000..ca7ddc5
--- /dev/null
+++ b/force-app/main/default/lwc/paginatedListWrapper/paginatedListWrapper.html
@@ -0,0 +1,18 @@
+<template>
+ <c-example-wrapper
+ icon-name="custom:custom62"
+ lwc="paginatedList"
+ title="Paginated List"
+ visualforce="paginatedList"
+ visualforce-height="190px"
+ >
+ <c-paginated-list slot="lwc"></c-paginated-list>
+
+ <!-- prettier-ignore -->
+ <p>
+ Implement pagination for <a target="_blank" href="https://developer.salesforce.com/docs/component-library/bundle/lightning-datatable">
+ lightning-datatable</a> calling Apex in this way. Note that infinite scrolling
+ is preferred, as it usually results in a better user experience.
+ </p>
+ </c-example-wrapper>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/paginatedListWrapper/paginatedListWrapper.js b/force-app/main/default/lwc/paginatedListWrapper/paginatedListWrapper.js
new file mode 100644
index 0000000..4245492
--- /dev/null
+++ b/force-app/main/default/lwc/paginatedListWrapper/paginatedListWrapper.js
@@ -0,0 +1,3 @@
+import { LightningElement } from 'lwc';
+
+export default class PaginatedListWrapper extends LightningElement {}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/paginatedListWrapper/paginatedListWrapper.js-meta.xml b/force-app/main/default/lwc/paginatedListWrapper/paginatedListWrapper.js-meta.xml
new file mode 100644
index 0000000..6646900
--- /dev/null
+++ b/force-app/main/default/lwc/paginatedListWrapper/paginatedListWrapper.js-meta.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__AppPage</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/panelBar/panelBar.html b/force-app/main/default/lwc/panelBar/panelBar.html
new file mode 100644
index 0000000..c022506
--- /dev/null
+++ b/force-app/main/default/lwc/panelBar/panelBar.html
@@ -0,0 +1,13 @@
+<template>
+ <lightning-accordion>
+ <lightning-accordion-section name="AnnaPerez" label="Anna Perez">
+ London, UK.
+ </lightning-accordion-section>
+ <lightning-accordion-section name="MarkKingston" label="Mark Kingston">
+ Madrid, Spain.
+ </lightning-accordion-section>
+ <lightning-accordion-section name="TomDavis" label="Tom Davis">
+ San Francisco, USA.
+ </lightning-accordion-section>
+ </lightning-accordion>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/panelBar/panelBar.js b/force-app/main/default/lwc/panelBar/panelBar.js
new file mode 100644
index 0000000..b314fb5
--- /dev/null
+++ b/force-app/main/default/lwc/panelBar/panelBar.js
@@ -0,0 +1,3 @@
+import { LightningElement } from 'lwc';
+
+export default class PanelBar extends LightningElement {}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/panelBar/panelBar.js-meta.xml b/force-app/main/default/lwc/panelBar/panelBar.js-meta.xml
new file mode 100644
index 0000000..0a946b5
--- /dev/null
+++ b/force-app/main/default/lwc/panelBar/panelBar.js-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/panelBarWrapper/panelBarWrapper.html b/force-app/main/default/lwc/panelBarWrapper/panelBarWrapper.html
new file mode 100644
index 0000000..525fd37
--- /dev/null
+++ b/force-app/main/default/lwc/panelBarWrapper/panelBarWrapper.html
@@ -0,0 +1,18 @@
+<template>
+ <c-example-wrapper
+ icon-name="custom:custom44"
+ lwc="panelBar"
+ title="Panel Bar"
+ visualforce="panelBar"
+ visualforce-height="90px"
+ >
+ <c-panel-bar slot="lwc"></c-panel-bar>
+
+ <!-- prettier-ignore -->
+ <p>
+ Use <a target="_blank" href="https://developer.salesforce.com/docs/component-library/bundle/lightning-accordion">
+ lightning-accordion</a> and <a target="_blank" href="https://developer.salesforce.com/docs/component-library/bundle/lightning-accordion-section">
+ lightning-accordion-section</a> to replace apex:panelBar and apex:panelBarItem.
+ </p>
+ </c-example-wrapper>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/panelBarWrapper/panelBarWrapper.js b/force-app/main/default/lwc/panelBarWrapper/panelBarWrapper.js
new file mode 100644
index 0000000..cf0031f
--- /dev/null
+++ b/force-app/main/default/lwc/panelBarWrapper/panelBarWrapper.js
@@ -0,0 +1,3 @@
+import { LightningElement } from 'lwc';
+
+export default class PanelBarWrapper extends LightningElement {}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/panelBarWrapper/panelBarWrapper.js-meta.xml b/force-app/main/default/lwc/panelBarWrapper/panelBarWrapper.js-meta.xml
new file mode 100644
index 0000000..6646900
--- /dev/null
+++ b/force-app/main/default/lwc/panelBarWrapper/panelBarWrapper.js-meta.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__AppPage</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/panelGrid/panelGrid.html b/force-app/main/default/lwc/panelGrid/panelGrid.html
new file mode 100644
index 0000000..431b864
--- /dev/null
+++ b/force-app/main/default/lwc/panelGrid/panelGrid.html
@@ -0,0 +1,19 @@
+<template>
+ <lightning-layout multiple-rows="true">
+ <lightning-layout-item size="6">
+ <lightning-formatted-text value="London"></lightning-formatted-text>
+ </lightning-layout-item>
+ <lightning-layout-item size="6">
+ <lightning-formatted-text value="Madrid"></lightning-formatted-text>
+ </lightning-layout-item>
+ <lightning-layout-item size="6">
+ <lightning-formatted-text
+ value="San Francisco"
+ ></lightning-formatted-text>
+ <lightning-formatted-text value="Tokio"></lightning-formatted-text>
+ </lightning-layout-item>
+ <lightning-layout-item size="6">
+ <lightning-formatted-text value="Dublin"></lightning-formatted-text>
+ </lightning-layout-item>
+ </lightning-layout>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/panelGrid/panelGrid.js b/force-app/main/default/lwc/panelGrid/panelGrid.js
new file mode 100644
index 0000000..ce4b155
--- /dev/null
+++ b/force-app/main/default/lwc/panelGrid/panelGrid.js
@@ -0,0 +1,3 @@
+import { LightningElement } from 'lwc';
+
+export default class PanelGrid extends LightningElement {}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/panelGrid/panelGrid.js-meta.xml b/force-app/main/default/lwc/panelGrid/panelGrid.js-meta.xml
new file mode 100644
index 0000000..0a946b5
--- /dev/null
+++ b/force-app/main/default/lwc/panelGrid/panelGrid.js-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/panelGridWrapper/panelGridWrapper.html b/force-app/main/default/lwc/panelGridWrapper/panelGridWrapper.html
new file mode 100644
index 0000000..675b760
--- /dev/null
+++ b/force-app/main/default/lwc/panelGridWrapper/panelGridWrapper.html
@@ -0,0 +1,18 @@
+<template>
+ <c-example-wrapper
+ icon-name="custom:custom44"
+ lwc="panelGrid"
+ title="Panel Grid"
+ visualforce="panelGrid"
+ visualforce-height="40px"
+ >
+ <c-panel-grid slot="lwc"></c-panel-grid>
+ <!-- prettier-ignore -->
+ <p>
+ Use <a target="_blank" href="https://developer.salesforce.com/docs/component-library/bundle/lightning-layout">
+ lightning-layout</a> and <a target="_blank" href="https://developer.salesforce.com/docs/component-library/bundle/lightning-layout-item">
+ lightning-layout-item </a> to replace apex:panelGrid and apex:panelGroup. These components follow
+ the flexbox model and are very configurable and powerful.
+ </p>
+ </c-example-wrapper>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/panelGridWrapper/panelGridWrapper.js b/force-app/main/default/lwc/panelGridWrapper/panelGridWrapper.js
new file mode 100644
index 0000000..a991724
--- /dev/null
+++ b/force-app/main/default/lwc/panelGridWrapper/panelGridWrapper.js
@@ -0,0 +1,3 @@
+import { LightningElement } from 'lwc';
+
+export default class PanelGridWrapper extends LightningElement {}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/panelGridWrapper/panelGridWrapper.js-meta.xml b/force-app/main/default/lwc/panelGridWrapper/panelGridWrapper.js-meta.xml
new file mode 100644
index 0000000..6646900
--- /dev/null
+++ b/force-app/main/default/lwc/panelGridWrapper/panelGridWrapper.js-meta.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__AppPage</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/parentComponentTest/__tests__/parentComponentTest.test.js b/force-app/main/default/lwc/parentComponentTest/__tests__/parentComponentTest.test.js
new file mode 100644
index 0000000..8f6e775
--- /dev/null
+++ b/force-app/main/default/lwc/parentComponentTest/__tests__/parentComponentTest.test.js
@@ -0,0 +1,25 @@
+import { createElement } from 'lwc';
+import ParentComponentTest from 'c/parentComponentTest';
+
+describe('c-parent-component-test', () => {
+ afterEach(() => {
+ // The jsdom instance is shared across test cases in a single file so reset the DOM
+ while (document.body.firstChild) {
+ document.body.removeChild(document.body.firstChild);
+ }
+ });
+
+ it('TODO: test case generated by CLI command, please fill in test logic', () => {
+ // Arrange
+ const element = createElement('c-parent-component-test', {
+ is: ParentComponentTest
+ });
+
+ // Act
+ document.body.appendChild(element);
+
+ // Assert
+ // const div = element.shadowRoot.querySelector('div');
+ expect(1).toBe(1);
+ });
+});
\ No newline at end of file
diff --git a/force-app/main/default/lwc/parentComponentTest/parentComponentTest.html b/force-app/main/default/lwc/parentComponentTest/parentComponentTest.html
new file mode 100644
index 0000000..572df46
--- /dev/null
+++ b/force-app/main/default/lwc/parentComponentTest/parentComponentTest.html
@@ -0,0 +1,44 @@
+<template>
+ <lightning-card title="Augmentor" icon-name="action:download">
+ <lightning-layout>
+ <lightning-layout-item flexibility="auto" padding="around-small">
+ <lightning-input
+ label="Set Starting Counter"
+ type="number"
+ min="0"
+ max="1000000"
+ value={startCounter}
+ onchange={handleStartChange}
+ >
+ </lightning-input>
+ <lightning-button
+ class="slds-var-p-vertical_xx-small"
+ label="Add 1m To Counter"
+ onclick={handleMaximizeCounter}
+ >
+ </lightning-button>
+ </lightning-layout-item>
+ </lightning-layout>
+ <c-child-component-test
+ class="slds-show slds-is-relative"
+ counter={startCounter}
+ >
+ </c-child-component-test>
+ <lightning-vertical-navigation selected-item={newPageId}>
+ <lightning-vertical-navigation-section
+ label="Navigation"
+ selected-item={newPageId}
+ >
+ <template for:each={navigationItems} for:item="navigationItem">
+ <lightning-vertical-navigation-item
+ key={navigationItem.pageId}
+ label={navigationItem.label}
+ name={navigationItem.pageId}
+ onclick={handleNavigate}
+ ></lightning-vertical-navigation-item>
+ </template>
+ </lightning-vertical-navigation-section>
+ </lightning-vertical-navigation>
+ <p>Current Page is <strong>{newPageId}</strong></p>
+ </lightning-card>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/parentComponentTest/parentComponentTest.js b/force-app/main/default/lwc/parentComponentTest/parentComponentTest.js
new file mode 100644
index 0000000..30c8595
--- /dev/null
+++ b/force-app/main/default/lwc/parentComponentTest/parentComponentTest.js
@@ -0,0 +1,62 @@
+import { LightningElement,wire } from 'lwc';
+import { CurrentPageReference, NavigationMixin } from 'lightning/navigation';
+
+const NAVIGATION_ITEMS = [
+ { label: 'Home', pageId: 'home', isCurrentPage: false },
+ { label: 'PageA', pageId: 'pageA', isCurrentPage: false },
+ { label: 'PageB', pageId: 'pageB', isCurrentPage: false },
+ { label: 'PageC', pageId: 'pageC', isCurrentPage: false },
+];
+
+export default class ParentComponentTest extends NavigationMixin(LightningElement) {
+ startCounter = 0;
+ handleStartChange(event) {
+ this.startCounter = parseInt(event.target.value);
+ }
+ handleMaximizeCounter() {
+ this.template.querySelector('c-child-component-test').maximizeCounter();
+ }
+
+ //Navigation Start
+ currentPageReference;
+ selectedPageId;
+ newPageId = 'home';
+ navigationItems = NAVIGATION_ITEMS;
+
+ get newPageReferenceUrlParams() {
+ return {
+ c__ids: this.selectedPageId
+ };
+ }
+
+ get newPageReference() {
+ return Object.assign({}, this.currentPageReference, {
+ state: Object.assign({}, this.currentPageReference.state, this.newPageReferenceUrlParams)
+ });
+ }
+
+ navigateToNewPage() {
+ this[NavigationMixin.Navigate](
+ this.newPageReference,
+ false // if true js history is replaced without pushing a new history entry onto the browser history stack
+ ); // if false new js history entry is created. User will be able to click browser back/forward buttons
+ }
+
+ handleNavigate(event) {
+ this.selectedPageId = event.target.name;
+ this.navigateToNewPage();
+ }
+
+ @wire(CurrentPageReference)
+ setCurrentPageReference(currentPageReference) {
+ if (currentPageReference) {
+ this.currentPageReference = currentPageReference;
+ this.setCurrentPageIdBasedOnUrl();
+ }
+ }
+
+ setCurrentPageIdBasedOnUrl() {
+ this.newPageId = this.currentPageReference.state.c__ids;
+ }
+ ////Navigation End
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/parentComponentTest/parentComponentTest.js-meta.xml b/force-app/main/default/lwc/parentComponentTest/parentComponentTest.js-meta.xml
new file mode 100644
index 0000000..78dd1e6
--- /dev/null
+++ b/force-app/main/default/lwc/parentComponentTest/parentComponentTest.js-meta.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>56.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__AppPage</target>
+ <target>lightning__Tab</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/pocCustomComp/pocCustomComp.html b/force-app/main/default/lwc/pocCustomComp/pocCustomComp.html
new file mode 100644
index 0000000..aa3a73f
--- /dev/null
+++ b/force-app/main/default/lwc/pocCustomComp/pocCustomComp.html
@@ -0,0 +1,11 @@
+<template>
+ <div>
+ Id: {recordId}
+ </div>
+ <lightning-file-upload label="Upload"
+ name="fileUploader"
+ accept={acceptedFormats}
+ record-id={recordId}
+ onuploadfinished={handleUploadFinished}>
+ </lightning-file-upload>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/pocCustomComp/pocCustomComp.js b/force-app/main/default/lwc/pocCustomComp/pocCustomComp.js
new file mode 100644
index 0000000..a73f9b3
--- /dev/null
+++ b/force-app/main/default/lwc/pocCustomComp/pocCustomComp.js
@@ -0,0 +1,25 @@
+import { api,LightningElement } from 'lwc';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+
+export default class PocCustomComp extends LightningElement {
+ @api recordId;
+ @api acceptedFormats;
+
+ connectedCallback(){
+ console.log('recordId =' + this.recordId);
+ }
+ handleUploadFinished() {
+ this.dispatchEvent(new CustomEvent('uploadfinished', {
+ composed: true,
+ bubbles: true,
+ cancelable: true,
+ detail: {
+ data: { name: 'some data', recordId: this.recordId }
+ }
+ }));
+ this.dispatchEvent(new ShowToastEvent({
+ title: 'Completed',
+ message: 'File has been uploaded',
+ }));
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/pocCustomComp/pocCustomComp.js-meta.xml b/force-app/main/default/lwc/pocCustomComp/pocCustomComp.js-meta.xml
new file mode 100644
index 0000000..f8c5cb4
--- /dev/null
+++ b/force-app/main/default/lwc/pocCustomComp/pocCustomComp.js-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>56.0</apiVersion>
+ <isExposed>false</isExposed>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/pocFileUpload/pocFileUpload.html b/force-app/main/default/lwc/pocFileUpload/pocFileUpload.html
new file mode 100644
index 0000000..deebcf7
--- /dev/null
+++ b/force-app/main/default/lwc/pocFileUpload/pocFileUpload.html
@@ -0,0 +1,5 @@
+<template>
+ <c-poc-custom-comp record-id={value}
+ accepted-formats={typeAttributes.acceptedFormats}>
+ </c-poc-custom-comp>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/pocFileUpload/pocFileUpload.js b/force-app/main/default/lwc/pocFileUpload/pocFileUpload.js
new file mode 100644
index 0000000..cbb38f9
--- /dev/null
+++ b/force-app/main/default/lwc/pocFileUpload/pocFileUpload.js
@@ -0,0 +1,3 @@
+import { LightningElement } from 'lwc';
+
+export default class PocFileUpload extends LightningElement {}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/pocFileUpload/pocFileUpload.js-meta.xml b/force-app/main/default/lwc/pocFileUpload/pocFileUpload.js-meta.xml
new file mode 100644
index 0000000..f8c5cb4
--- /dev/null
+++ b/force-app/main/default/lwc/pocFileUpload/pocFileUpload.js-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>56.0</apiVersion>
+ <isExposed>false</isExposed>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/pocLightningDatatable/customShipmentAmount.html b/force-app/main/default/lwc/pocLightningDatatable/customShipmentAmount.html
new file mode 100644
index 0000000..6b8fb9f
--- /dev/null
+++ b/force-app/main/default/lwc/pocLightningDatatable/customShipmentAmount.html
@@ -0,0 +1,7 @@
+<template>
+ <c-custom-shipment-Amount-comp
+ shipment-amount={typeAttributes.shipmentAmount}
+ record-id={typeAttributes.recordId}>
+
+ </c-custom-shipment-Amount-comp>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/pocLightningDatatable/customShipmentNumber.html b/force-app/main/default/lwc/pocLightningDatatable/customShipmentNumber.html
new file mode 100644
index 0000000..9c16166
--- /dev/null
+++ b/force-app/main/default/lwc/pocLightningDatatable/customShipmentNumber.html
@@ -0,0 +1,6 @@
+<template>
+ <c-custom-shipment-number-comp
+ record-id={typeAttributes.recordId}>
+
+ </c-custom-shipment-number-comp>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/pocLightningDatatable/customShippingUnitPrice.html b/force-app/main/default/lwc/pocLightningDatatable/customShippingUnitPrice.html
new file mode 100644
index 0000000..a4d518a
--- /dev/null
+++ b/force-app/main/default/lwc/pocLightningDatatable/customShippingUnitPrice.html
@@ -0,0 +1,6 @@
+<template>
+ <c-custom-shipping-unit-price-comp
+ record-id={typeAttributes.recordId}>
+
+ </c-custom-shipping-unit-price-comp>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/pocLightningDatatable/customUnit.html b/force-app/main/default/lwc/pocLightningDatatable/customUnit.html
new file mode 100644
index 0000000..f4f17ba
--- /dev/null
+++ b/force-app/main/default/lwc/pocLightningDatatable/customUnit.html
@@ -0,0 +1,12 @@
+<!-- sldsValidatorIgnore -->
+<!-- sldsValidatorIgnore -->
+<template>
+ <c-custom-unit-comp
+ style="position:relative; z-index:9999;"
+ unit-value={typeAttributes.unitValue}
+ unit-options={typeAttributes.unitOptions}
+ record-id={typeAttributes.recordId}
+ onunitchange={handleDataChange}
+ >
+ </c-custom-unit-comp>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/pocLightningDatatable/pocFileUpload.html b/force-app/main/default/lwc/pocLightningDatatable/pocFileUpload.html
new file mode 100644
index 0000000..deebcf7
--- /dev/null
+++ b/force-app/main/default/lwc/pocLightningDatatable/pocFileUpload.html
@@ -0,0 +1,5 @@
+<template>
+ <c-poc-custom-comp record-id={value}
+ accepted-formats={typeAttributes.acceptedFormats}>
+ </c-poc-custom-comp>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/pocLightningDatatable/pocLightningDatatable.html b/force-app/main/default/lwc/pocLightningDatatable/pocLightningDatatable.html
new file mode 100644
index 0000000..27e0f69
--- /dev/null
+++ b/force-app/main/default/lwc/pocLightningDatatable/pocLightningDatatable.html
@@ -0,0 +1,3 @@
+<template>
+
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/pocLightningDatatable/pocLightningDatatable.js b/force-app/main/default/lwc/pocLightningDatatable/pocLightningDatatable.js
new file mode 100644
index 0000000..15828ae
--- /dev/null
+++ b/force-app/main/default/lwc/pocLightningDatatable/pocLightningDatatable.js
@@ -0,0 +1,28 @@
+import LightningDatatable from 'lightning/datatable';
+import pocFileUpload from './pocFileUpload.html';
+import customUnitTemplate from './customUnit.html';
+import customShipmentNumberTemplate from './customShipmentNumber.html';
+import customShippingUnitPriceTemplate from './customShippingUnitPrice.html';
+import customShipmentAmountTemplate from './customShipmentAmount.html';
+
+
+export default class PocLightningDatatable extends LightningDatatable {
+ static customTypes = {
+ customUnit: {
+ template: customUnitTemplate,
+ typeAttributes: ['unitValue','unitOptions','recordId'],
+ },
+ customShipment: {
+ template: customShipmentNumberTemplate,
+ typeAttributes: ['recordId'],
+ },
+ customShipmentUnitPrice: {
+ template: customShippingUnitPriceTemplate,
+ typeAttributes: ['recordId'],
+ },
+ customShipmentAmount: {
+ template: customShipmentAmountTemplate,
+ typeAttributes: ['shipmentAmount','recordId'],
+ }
+ };
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/pocLightningDatatable/pocLightningDatatable.js-meta.xml b/force-app/main/default/lwc/pocLightningDatatable/pocLightningDatatable.js-meta.xml
new file mode 100644
index 0000000..f8c5cb4
--- /dev/null
+++ b/force-app/main/default/lwc/pocLightningDatatable/pocLightningDatatable.js-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>56.0</apiVersion>
+ <isExposed>false</isExposed>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/qisUniversalFailureCode/qisUniversalFailureCode.css b/force-app/main/default/lwc/qisUniversalFailureCode/qisUniversalFailureCode.css
new file mode 100644
index 0000000..66b51b5
--- /dev/null
+++ b/force-app/main/default/lwc/qisUniversalFailureCode/qisUniversalFailureCode.css
@@ -0,0 +1,10 @@
+.exampleHolder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+.container .uiContainerManager{
+ display: none !important;
+}/* sample css file */
\ No newline at end of file
diff --git a/force-app/main/default/lwc/qisUniversalFailureCode/qisUniversalFailureCode.html b/force-app/main/default/lwc/qisUniversalFailureCode/qisUniversalFailureCode.html
new file mode 100644
index 0000000..33549d5
--- /dev/null
+++ b/force-app/main/default/lwc/qisUniversalFailureCode/qisUniversalFailureCode.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="exampleHolder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/qisUniversalFailureCode/qisUniversalFailureCode.js b/force-app/main/default/lwc/qisUniversalFailureCode/qisUniversalFailureCode.js
new file mode 100644
index 0000000..4e4a05c
--- /dev/null
+++ b/force-app/main/default/lwc/qisUniversalFailureCode/qisUniversalFailureCode.js
@@ -0,0 +1,63 @@
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { NavigationMixin } from 'lightning/navigation';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+import init from '@salesforce/apex/QISReportController.initForQisUniversalFailureCodeButton';
+import sqlForPAE from '@salesforce/apex/QISReportController.sqlForPAE';
+
+export default class qisUniversalFailureCode extends LightningElement {
+ @api recordId;
+ IsLoading = true;
+ qisReportId;
+ paeId;
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(111);
+ console.log(currentPageReference);
+
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback () {
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result);
+ if (result != null) {
+ this.IsLoading = false;
+ this.qisReportId = result.Id;
+ var RecordTypeId = "ASACDecision";
+ sqlForPAE({
+ qisReportId: this.qisReportId
+ }).then(result => {
+ if (result!=null) {
+ this.paeId = result.PAEid;
+ console.log('result='+this.paeId);
+ }
+ var url = '';
+ if (result!=null&&result.length>0){
+ url = "/apex/PAEDecisionRecord?Id="+this.paeId+"&QISReportId="+this.qisReportId +"&RecordTypeIds="+RecordTypeId ;
+ } else {
+ url = "/apex/PAEDecisionRecord?QISReportId="+this.qisReportId +"&RecordTypeIds="+RecordTypeId;
+ }
+ console.log('url='+url);
+ // window.open(url,'_self');
+ window.location.replace(url);
+ });
+ }
+ }).catch(error => {
+ console.log('error='+error);
+ }).finally(() => {
+
+ });
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/qisUniversalFailureCode/qisUniversalFailureCode.js-meta.xml b/force-app/main/default/lwc/qisUniversalFailureCode/qisUniversalFailureCode.js-meta.xml
new file mode 100644
index 0000000..f9e530d
--- /dev/null
+++ b/force-app/main/default/lwc/qisUniversalFailureCode/qisUniversalFailureCode.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="qisUniversalFailureCode">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/quoteTrial/quoteTrial.html b/force-app/main/default/lwc/quoteTrial/quoteTrial.html
index 13d2040..8c74d58 100644
--- a/force-app/main/default/lwc/quoteTrial/quoteTrial.html
+++ b/force-app/main/default/lwc/quoteTrial/quoteTrial.html
@@ -301,16 +301,6 @@
<c-jz-data-table onrowselection={SelectedFnOtherData} data-parent-id="parent-div-idOtherData" name="jzDataTableOtherData" ongettabledata={getTableDataOtherData} table-data={jzDataOtherData} table-is-loding={tableIsLodingOtherData} options={initDataTableOtherData} onsave={SaveSpecialDiscount} if:true={jzshows5}></c-jz-data-table>
</div>
</div>
- <!-- <footer class="slds-modal__footer">
- <div if:true= {Teyuebuttonflag}>
- <button class="slds-button slds-button_neutral" onclick={cancelSpecial}>鍏抽棴</button>
- <button class="slds-button slds-button_brand" disabled="">纭畾</button>
- </div>
- <div if:true= {Teyuebuttonflag2}>
- <button class="slds-button slds-button_neutral" onclick={cancelSpecial}>鍏抽棴</button>
- <button class="slds-button slds-button_brand" onclick={SavesSpecial} >纭畾</button>
- </div>
- </footer> -->
<footer class="slds-modal__footer">
<button class="slds-button slds-button_neutral" onclick={cancelSpecial}>鍏抽棴</button>
<button class="slds-button slds-button_brand" onclick={SavesSpecial} >纭畾</button>
diff --git a/force-app/main/default/lwc/quoteTrial/quoteTrial.js b/force-app/main/default/lwc/quoteTrial/quoteTrial.js
index dbdd832..27b3b9d 100644
--- a/force-app/main/default/lwc/quoteTrial/quoteTrial.js
+++ b/force-app/main/default/lwc/quoteTrial/quoteTrial.js
@@ -203,8 +203,7 @@
this.OnLoadSaveProduct.push(item);
}
})
- // var arrss = [...[], ...this.OnLoadSaveProduct];//20230214
- var arrss = [].concat(this.OnLoadSaveProduct);//20230214
+ var arrss = [...[], ...this.OnLoadSaveProduct];
//鍚堝苟涓婁竴娆¤瘯绠楃殑鎶ヤ环琛�
this.addOffer(arrss);
//澶勭悊鎶ヤ环鏁版嵁鏀瑰姩鍚庤瘯绠楃晫闈㈢殑鍙樺寲
@@ -264,8 +263,7 @@
//鍚堝苟涓婁竴娆$殑鎶ヤ环琛�
lastQuotation = [];
addOffer(TrialLine) {
- // this.lastQuotation = [...[], ...addOfferLogic(TrialLine)]; //鍚堝苟涓婁竴娆$殑鎶ヤ环琛岀殑閫昏緫//20230214
- this.lastQuotation = [].concat(addOfferLogic(TrialLine));//20230214
+ this.lastQuotation = [...[], ...addOfferLogic(TrialLine)]; //鍚堝苟涓婁竴娆$殑鎶ヤ环琛岀殑閫昏緫
}
Complate = false;
//浠庢暟鎹簱鏇存柊宸蹭繚瀛樼殑鏁版嵁 鏂规 UpdateBy 2021 06 29
@@ -391,11 +389,7 @@
var newDicountData = [];
newDicountData=SpecialSavesChangePartLogic(jzDataDefaultList,SaveName, SelectedData, IdStr, CompareId,DefalutQuantity,newDicountData,jzDataDiscountList);
this.jzDataDefault = NewDefaultDatass;
- // this.jzDataProduct = [...this.jzDataProduct, ...AddProductDatass]; //浜у搧鏄庣粏//20230213
- this.jzDataProduct =this.jzDataProduct.concat(AddProductDatass);//20230213
- console.warn('newDicountData'+ newDicountData[0].Id);
- console.warn('AddProductDatass'+AddProductDatass[0]);
- console.warn('this.jzDataProduct'+this.jzDataProduct[0]);
+ this.jzDataProduct = [...this.jzDataProduct, ...AddProductDatass]; //浜у搧鏄庣粏
//鍚堝悓浠锋牸姹囨��
this.ContractPriceCompute();
this.jzDataDiscount = newDicountData;
@@ -413,8 +407,7 @@
...jzDataProductParam
}
jzDataProductParam = this.countListAndNod(tempObject, result);
- // arrData = [...[], jzDataProductParam];//20230214
- arrData = [].concat(jzDataProductParam);//20230214
+ arrData = [...[], jzDataProductParam];
//杩斿洖鏁版嵁姣旇緝瑙勫垯
this.CompareData(result, idStr, jzDataProductParam, TypeName, jzDataDefaultToTemps, arrData, isShow);
})
@@ -439,8 +432,7 @@
CompareData(list, idStr, jzDataProductParam, TypeName, jzDataDefaultToTemps, arrData, isShow) {
var isChange = false;
var TempsJzData = []
- // TempsJzData = [...[], ...this.jzDataDefault]; //寰呴�変骇鍝�//20230214
- TempsJzData = [].concat(this.jzDataDefault);//20230214
+ TempsJzData = [...[], ...this.jzDataDefault]; //寰呴�変骇鍝�
var TempsJzDataToCompare = []
TempsJzData.forEach(item => {
list.forEach(element => { //淇冮攢鏂规涓绘暟鎹叧鑱斾骇鍝�
@@ -483,8 +475,7 @@
newObj.element = newElement;
newTempsJzDataToCompare.push(newObj);
})
- // TempsJzDataToCompare = [...[], ...newTempsJzDataToCompare];//20230214
- TempsJzDataToCompare = [].concat(newTempsJzDataToCompare);//20230214
+ TempsJzDataToCompare = [...[], ...newTempsJzDataToCompare];
//End
if (TempsJzDataToCompare.length == list.length&&list.length!=0) {
TempsJzDataToCompare.forEach(TempsItems => {
@@ -516,8 +507,7 @@
//鏇存柊娆℃暟
this.updatesNums();
//鍚堝苟閲嶅浠锋牸鏀跨瓥鏂规
- // var jzarr = [...[], ...this.jzDataFixedPrice];//20230214
- var jzarr = [].concat(this.jzDataFixedPrice);//20230214
+ var jzarr = [...[], ...this.jzDataFixedPrice];
this.MergeDuplicateSchemes(jzarr);
//淇濆瓨鏈�澶ф鏁�
this.savecount(idStr);
@@ -548,8 +538,7 @@
CompareFullDataedit.push(editnum);
}
});
- // this.CompareFullData = [...[], ...CompareFullDataedit];//20230214
- this.CompareFullData = [].concat(CompareFullDataedit);//20230214
+ this.CompareFullData = [...[], ...CompareFullDataedit];
Setmap.set(arrs.Id, object);
} else {
object = {
@@ -562,14 +551,12 @@
for (let [k, v] of Setmap) {
arr.push(v);
}
- // this.jzDataFixedPrice = [...[], ...arr]//20230214
- this.jzDataFixedPrice = [].concat(arr);//20230214
+ this.jzDataFixedPrice = [...[], ...arr]
this.ConsolidationProgramProducts(arr);
}
//褰掑苟鐩稿悓浠锋牸鏀跨瓥鏂规鐨勪骇鍝�
ConsolidationProgramProducts(arrSchemes) {
- // var jzdataList = [...[], ...this.jzDataProduct];//20230214
- var jzdataList = [].concat(this.jzDataProduct);//20230214
+ var jzdataList = [...[], ...this.jzDataProduct];
this.jzDataProduct = PriceConsolidation(arrSchemes, jzdataList);
}
//淇濆瓨鏈�澶ф鏁�
@@ -588,10 +575,8 @@
//鏇挎崲listprice鍗曚环
ReplacementUnitPrice() {
var ifTrade = this.QuoteData[0].Opportunity.Trade__c; //鍐呭璐�
- // var arr = [...[], ...this.jzDataProduct];//20230214
- var arr = [].concat(this.jzDataProduct);//20230214
- // this.jzDataProduct = [...[], ...ReplacementUnitPriceLogic(arr, ifTrade)]; //鏇挎崲listprice鍗曚环閫昏緫//20230214
- this.jzDataProduct = [].concat(ReplacementUnitPriceLogic(arr, ifTrade));//20230214
+ var arr = [...[], ...this.jzDataProduct];
+ this.jzDataProduct = [...[], ...ReplacementUnitPriceLogic(arr, ifTrade)]; //鏇挎崲listprice鍗曚环閫昏緫
//鍚堝悓浠锋牸姹囨��
this.ContractPriceCompute();
}
@@ -678,8 +663,7 @@
newArrsTemp6.push(itsss);
}
});
- // newArrsTemp5 = [...[], ...newArrsTemp6];//20230214
- newArrsTemp5 = [].concat(newArrsTemp6);//20230214
+ newArrsTemp5 = [...[], ...newArrsTemp6];
this.jzDataDefault = newArrsTemp5;
}
this.jzDataProduct = arrProductTemp;
@@ -747,8 +731,7 @@
newArrsTemp6.push(itsss);
}
});
- // newArrsTemp5 = [...[], ...newArrsTemp6];//20230214
- newArrsTemp5 = [].concat(newArrsTemp6);//20230214
+ newArrsTemp5 = [...[], ...newArrsTemp6];
this.jzDataDefault = newArrsTemp5;
}
this.jzDataProduct = arrProductTemp;
@@ -757,8 +740,7 @@
}
}
});
- // this.jzDataFixedPrice = [...[], ...arrTemp];//20230214
- this.jzDataFixedPrice = [].concat(arrTemp);//20230214
+ this.jzDataFixedPrice = [...[], ...arrTemp];
}
}
@@ -839,14 +821,11 @@
}
}
});
- this.jzDataDiscount = [...[], ...arrTemp1];//20230214
- // this.jzDataDiscount = [].concat(arrTemp1);//20230214
- console.warn('this.jzDataDiscountceshi1234567890'+this.jzDataDiscount);
+ this.jzDataDiscount = [...[], ...arrTemp1];
}
//涓�鑸姌鎵f洿鏀硅繃鍚堝悓浠锋牸璁$畻
updateCommonlyDiscountLogic(Id,JxsType,GuaranteeDiscount__c_Input,NormalDiscount__c_Input,Category__c,jzDataDiscount) {
//todu13
- console.warn('jzDataDiscount'+jzDataDiscount);
this.updateIdStr("1");
var arrProductTemp = this.jzDataProduct; // PromotionId 浜у搧鏄庣粏
this.jzDataProduct=updateCDLogic(Id,JxsType,GuaranteeDiscount__c_Input,NormalDiscount__c_Input,Category__c,jzDataDiscount,arrProductTemp);
@@ -855,23 +834,14 @@
//璁$畻涓�鑸姌鎵i潪瀵硅薄鍝佹姌鎵�
ComouteProductDiscount(Id,Category__c,GuaranteeDiscount__c_Input, NormalDiscount__c_Input,GuaranteeDiscount_H_Money__c, NormalDiscount_H_Money__c, item) {
//todu12
- console.warn('this.jzDataDiscountxxx1'+this.jzDataDiscount);
this.updateIdStr("2");
var arrTemp1 = this.jzDataDiscount; //鎶樻墸鏀跨瓥
- console.warn('this.jzDataDiscountxxx2'+this.jzDataDiscount);
this.updateIdStr("1");
var arrProductTemp = this.jzDataProduct; // PromotionId 浜у搧鏄庣粏
var reslut=ReverseCalculationModifyDiscountLogic(arrTemp1,arrProductTemp,Id,Category__c,GuaranteeDiscount__c_Input, NormalDiscount__c_Input,GuaranteeDiscount_H_Money__c, NormalDiscount_H_Money__c, item);
- // var ceshi = arrTempsss;//20230214
- // this.jzDataDiscount=[...[], ...ceshi];//20230214
- this.jzDataDiscount=[...[], ...arrTempsss];//20230214
- // this.jzDataDiscount=[].concat(arrTempsss);//20230214
- // console.warn('ceshi'+ceshi);
- console.warn('this.jzDataDiscountxxx3+++'+this.jzDataDiscount);
- var ceshi2 = arrProductTempsss;
- this.jzDataProduct =[...[], ...ceshi2];//20230214
- // this.jzDataProduct=[].concat(arrProductTempsss);//20230214
+ this.jzDataDiscount=[...[], ...arrTempsss];
+ this.jzDataProduct =[...[], ...arrProductTempsss];
return reslut;
}
//todu
@@ -888,10 +858,7 @@
//鍒犻櫎浠锋牸璁$畻
delectComputeData(item) { //item 浜у搧鏄庣粏鐨勪竴鏉℃暟鎹�
var sum = this.ComputeListPrice(item.PromotionId);
- // var jzProductarry = [...[], ...this.jzDataProduct];//20230214
- var jzProductarry = [].concat(this.jzDataProduct);//20230214
- console.warn('ceshiasdfasdfsdfasdjzProductarry'+arrss);
- console.warn('sfgssgfgthis.jzDataProduct'+this.jzDataProduct);
+ var jzProductarry = [...[], ...this.jzDataProduct];
jzProductarry.forEach(japdt => { //japdt浜у搧鏄庣粏
if (item.PromotionId == japdt.PromotionId) {
japdt.AgencySubtotal__c = japdt.AgencySubtotal__c + item.AgencySubtotal__c * (japdt.ListPrice * japdt.Quantity / sum);
@@ -900,8 +867,7 @@
japdt.AgencyUnitPrice__c = Math.round(japdt.AgencyUnitPrice__c * 100) / 100;
}
});
- // this.jzDataProduct = [...[], ...jzProductarry];//20230214
- this.jzDataProduct = [].concat(jzProductarry);//20230214
+ this.jzDataProduct = [...[], ...jzProductarry];
//鍚堝悓浠锋牸姹囨��
this.ContractPriceCompute();
}
@@ -910,8 +876,7 @@
//淇敼 浜у搧鏄庣粏
let num = parseInt(length / Quantity);
let addArr = [];
- // var newss = [...[], ...this.jzDataDefault];//20230214
- var newss = [].concat(this.jzDataDefault);//20230214
+ var newss = [...[], ...this.jzDataDefault];
var newDataDefault = newss.map(item => {
if (item == undefined) {
console.warn("undefined!!");
@@ -931,8 +896,7 @@
}
return item;
})
- // this.jzDataProduct = [...this.jzDataProduct, ...addArr];//20230213
- this.jzDataProduct = this.jzDataProduct.concat(addArr);//20230213
+ this.jzDataProduct = [...this.jzDataProduct, ...addArr];
//鍚堝悓浠锋牸姹囨��
this.ContractPriceCompute();
this.jzDataDefault = newDataDefault;
@@ -969,10 +933,8 @@
}
// =======鏇存柊淇冮攢鏂规娆℃暟鏁版嵁
updatesNums() {
- // var jzDataFixedPriceTemp = [...[], ...this.jzDataFixedPrice];//20230214
- var jzDataFixedPriceTemp = [].concat(this.jzDataFixedPrice);//20230214
- // var jzDataDiscountTemp = [...[], ...this.jzDataDiscount];//20230214
- var jzDataDiscountTemp = [].concat(this.jzDataDiscount);//20230214
+ var jzDataFixedPriceTemp = [...[], ...this.jzDataFixedPrice];
+ var jzDataDiscountTemp = [...[], ...this.jzDataDiscount];
var CompareFullData = this.CompareFullData;
updatesNumsLogic(jzDataFixedPriceTemp,jzDataDiscountTemp,CompareFullData);
this.jzDataFixedPrice = jzDataFixedPriceTemps;
@@ -981,8 +943,7 @@
// ====================== 鍒ゆ柇鏄惁涓�0
ChangeNumZeroTrueData = []
ChangeNumZeroTrue() {
- // this.ChangeNumZeroTrueData = [...[], ...this.jzDataDefault];//20230214
- this.ChangeNumZeroTrueData = [].concat(this.jzDataDefault);//20230214
+ this.ChangeNumZeroTrueData = [...[], ...this.jzDataDefault];
var newJzDataDefault = this.ChangeNumZeroTrueData.filter(item => {
if (item.Quantity > 0) {
return true;
@@ -1108,8 +1069,7 @@
var falg = true;
if (item.TypeName == "浠锋牸鏀跨瓥") {
this.DeleteIsChangelogic(item, item.TypeName, num, list);
- // var arrTemp = [...[], ...this.jzDataFixedPrice]; //浠锋牸鏀跨瓥//20230214
- var arrTemp = [].concat(this.jzDataFixedPrice);//20230214
+ var arrTemp = [...[], ...this.jzDataFixedPrice]; //浠锋牸鏀跨瓥
var TempItem = {};
arrTemp.forEach(atItem => {
if (atItem.Id == item.PromotionId) {
@@ -1128,8 +1088,7 @@
}
} else if (item.TypeName == "鎶樻墸鏀跨瓥") {
this.DeleteIsChangelogic(item, item.TypeName, num, list);
- // var arrTempTOName = [...[], ...this.jzDataDiscount]; //鎶樻墸鏀跨瓥//20230214
- var arrTempTOName = [].concat(this.jzDataDiscount);//20230214
+ var arrTempTOName = [...[], ...this.jzDataDiscount]; //鎶樻墸鏀跨瓥
var TempItemTOName = {};
var PromotionHeadRecordId = item.recordTypeName__c;
if (PromotionHeadRecordId == "Authorizer") {
@@ -1214,8 +1173,7 @@
}
});
if (flg) {
- // this.jzDataProduct = [...[], ...jzdatas];//20230214
- this.jzDataProduct = [].concat(jzdatas);//20230214
+ this.jzDataProduct = [...[], ...jzdatas];
if (TypeName == "浠锋牸鏀跨瓥") {
//鍒犻櫎浠锋牸璁$畻
this.delectComputeData(item);
@@ -1239,8 +1197,7 @@
}
});
}
- // this.jzDataDefault = [...[], ...arr];//20230214
- this.jzDataDefault = [].concat(arr);//20230214
+ this.jzDataDefault = [...[], ...arr];
}
}
// ==================閫氱煡鏄剧ず ======================
@@ -1366,12 +1323,10 @@
newarrjdf.push(jdf);
}
});
- // this.jzDataFixedPrice = [...[], ...newarrjdf];//20230214
- this.jzDataFixedPrice = [].concat(newarrjdf);//20230214
+ this.jzDataFixedPrice = [...[], ...newarrjdf];
});
});
- // this.jzData = [...[], ...responseObj.records];//20230214
- this.jzData = [].concat(responseObj.records);//20230214
+ this.jzData = [...[], ...responseObj.records];
// this.index=this.jzData.length;
this.tableIsLoding = false;
})
@@ -1437,17 +1392,14 @@
if (this.index == 0) {
if (this.flagall) {
if (this.jzDataDefaultCopy.length < this.lastQuotation.length) { //1銆佹潯鏁板皬浜�
- // this.jzDataDefault = [...[], ...this.jzDataDefaultCopy];//20230214
- this.jzDataDefault = [].concat(this.jzDataDefaultCopy);//20230214
+ this.jzDataDefault = [...[], ...this.jzDataDefaultCopy];
this.jzDataProduct = [];
this.jzDataFixedPrice = [];
this.jzDataDiscount = [];
return;
} else { //2銆�
- // var lastQuotation = [...[], ...this.lastQuotation];//20230214
- var lastQuotation = [].concat(this.lastQuotation);//20230214
- // var DefaultCopy = [...[], ...this.jzDataDefaultCopy];//20230214
- var DefaultCopy = [].concat(this.jzDataDefaultCopy);//20230214
+ var lastQuotation = [...[], ...this.lastQuotation];
+ var DefaultCopy = [...[], ...this.jzDataDefaultCopy];
var Default = [];
for (var j = 0; j < DefaultCopy.length; j++) {
var arrList = [];
@@ -1456,8 +1408,7 @@
for (var i = 0; i < lastQuotation.length; i++) {
if (DefaultCopy[j].Id == lastQuotation[i].Id) {
if (DefaultCopy[j].Quantity < lastQuotation[i].Quantity) { //2-1-1 鏁伴噺灏忎簬 clear
- // this.jzDataDefault = [...[], ...this.jzDataDefaultCopy];//20230214
- this.jzDataDefault = [].concat(this.jzDataDefaultCopy);//20230214
+ this.jzDataDefault = [...[], ...this.jzDataDefaultCopy];
this.jzDataProduct = [];
this.jzDataFixedPrice = [];
this.jzDataDiscount = [];
@@ -1483,15 +1434,13 @@
}
}
if (lastQuotation.length != 0) { //2-2 鍚堟垚鏁版嵁鏈夊墿浣�
- // this.jzDataDefault = [...[], ...this.jzDataDefaultCopy];//20230214
- this.jzDataDefault = [].concat(this.jzDataDefaultCopy);//20230214
+ this.jzDataDefault = [...[], ...this.jzDataDefaultCopy];
this.jzDataProduct = [];
this.jzDataFixedPrice = [];
this.jzDataDiscount = [];
return;
}
- // this.jzDataDefault = [...[], ...Default];//20230214
- this.jzDataDefault = [].concat(Default);//20230214
+ this.jzDataDefault = [...[], ...Default];
}
}
}
@@ -1677,8 +1626,7 @@
CompareFullDataedit.push(editnum);
}
});
- // this.CompareFullData = [...[], ...CompareFullDataedit];//20230214
- this.CompareFullData = [].concat(CompareFullDataedit);//20230214
+ this.CompareFullData = [...[], ...CompareFullDataedit];
// }
}
} else {
@@ -1712,8 +1660,7 @@
}
}
//haha
- // var newArrs = [...[], ...editnewDate];//20230214
- var newArrs = [].concat(editnewDate);//20230214
+ var newArrs = [...[], ...editnewDate];
if (boolean == 1) {
this.jzDataFixedPrice = newData;
newArrs.forEach(item => {
@@ -1723,8 +1670,7 @@
this.CloseAlert();
}, 2000);
});
- // this.jzDataProduct = [...this.newArrsTemp3, ...this.newArrsTemp4];//20230213
- this.jzDataProduct = this.newArrsTemp3.concat(this.newArrsTemp4);//20230213
+ this.jzDataProduct = [...this.newArrsTemp3, ...this.newArrsTemp4];
//鍚堝悓浠锋牸姹囨��
this.ContractPriceCompute();
} else if (boolean == 3) {
@@ -1754,8 +1700,7 @@
if (this.jzDataFixedPrice == null || this.jzDataFixedPrice.length <= 0) {
this.jzDataFixedPrice = arrs;
} else {
- // this.jzDataFixedPrice = [...this.jzDataFixedPrice, ...arrs];//20230213
- this.jzDataFixedPrice = this.jzDataFixedPrice.concat(arrs);//20230213
+ this.jzDataFixedPrice = [...this.jzDataFixedPrice, ...arrs];
};
}
//浠锋牸鏀跨瓥閫変腑
@@ -1792,12 +1737,10 @@
compareFu.push(deletId);
}
});
- // this.CompareFullData = [...[], ...compareFu];//20230214
- this.CompareFullData = [].concat(compareFu);//20230214
+ this.CompareFullData = [...[], ...compareFu];
}
}
- // this.SelectedFnDataFixedPrice = [...[], ...select];//20230214
- this.SelectedFnDataFixedPrice = [].concat(select);//20230214
+ this.SelectedFnDataFixedPrice = [...[], ...select];
if (fag) {
//鍒犻櫎鎵�閫夋柟妗堝尮閰嶇殑浜у搧
this.DeleteChangesFn(ids, "浠锋牸鏀跨瓥");
@@ -1821,8 +1764,7 @@
compareFu.push(deletId);
}
});
- // this.CompareFullData = [...[], ...compareFu];//20230214
- this.CompareFullData = [].concat(compareFu);//20230214
+ this.CompareFullData = [...[], ...compareFu];
if (this.SelectedFnDataFixedPrice[j].Id == this.jzDataFixedPrice[i].Id) {
this.jzDataFixedPrice.splice(i, 1); // 灏嗕娇鍚庨潰鐨勫厓绱犱緷娆″墠绉伙紝鏁扮粍闀垮害鍑�1
i--;
@@ -1935,8 +1877,7 @@
newarrjdf.push(jdf);
}
});
- // this.jzDataFixedPrice = [...[], ...newarrjdf];//20230214
- this.jzDataFixedPrice = [].concat(newarrjdf);//20230214
+ this.jzDataFixedPrice = [...[], ...newarrjdf];
if (event.fag && iflag) {
var newArr = [];
newArr.push(item);
@@ -1953,8 +1894,7 @@
}
})
})
- // this.jzDataFix = [...[], ...respons];//20230214
- this.jzDataFix = [].concat(respons);//20230214
+ this.jzDataFix = [...[], ...respons];
this.tableIsLodingFix = false;
})
}
@@ -1991,8 +1931,7 @@
if (this.jzDataDiscount == null || this.jzDataDiscount.length <= 0) {
this.jzDataDiscount = arrs;
} else {
- // this.jzDataDiscount = [...this.jzDataDiscount, ...arrs];//20230213
- this.jzDataDiscount = this.jzDataDiscount.concat(arrs);//20230213
+ this.jzDataDiscount = [...this.jzDataDiscount, ...arrs];
}
}
//鎶樻墸鏀跨瓥閫変腑
@@ -2329,16 +2268,14 @@
debugger
if (boolean == 0) {
this.jzDataDiscount = newData;
- // var newArrs = [...[], ...editnewDate];//20230214
- var newArrs = [].concat(editnewDate);//20230214
+ var newArrs = [...[], ...editnewDate];
newArrs.forEach(item => {
// this.ComputeData(item.Id, '鎶樻墸鏀跨瓥');
//鍚堝苟鎶樻墸鏀跨瓥閲嶅鏂规
this.ConsolidatedDiscountPolicy(this.jzDataDiscount);
this.ComputeDiscount(item.Id, item.NormalDiscount__c_Input, item.GuaranteeDiscount__c_Input, item.Category__c, item.JxsType);
});
- // this.jzDataProduct = [...this.newArrsTemp2, ...this.newArrsTemp];//20230213
- this.jzDataProduct = this.newArrsTemp2.concat(this.newArrsTemp);//20230213
+ this.jzDataProduct = [...this.newArrsTemp2, ...this.newArrsTemp];
//鍚堝悓浠锋牸姹囨��
this.ContractPriceCompute();
this.Alert("鏁版嵁淇敼鎴愬姛", false, true);
@@ -2356,8 +2293,6 @@
} else if (boolean == 4) {
this.jzDataDiscount = newData;
var ffgg=0;
- console.warn('newData'+newData);
- console.warn('this.jzDataDiscount'+this.jzDataDiscount);
if(boolean3){
newData2.forEach(HeTo => {
//鏍规嵁鍚堝悓浠锋牸璁$畻涓�鑸姌鎵�
@@ -2366,13 +2301,8 @@
ffgg=HeTo;
return ;
}
- console.warn('HeTo'+HeTo);
//鍚堝苟鎶樻墸鏀跨瓥閲嶅鏂规
- // let jzDataDiscountx = [...[], ...this.jzDataDiscount];//20230214
- let jzDataDiscountx = [].concat(this.jzDataDiscount);//20230214
- console.warn('jzDataDiscountx'+jzDataDiscountx);
- console.warn('this.jzDataDiscountxxx'+this.jzDataDiscount);
- this.ConsolidatedDiscountPolicy(jzDataDiscountx);
+ this.ConsolidatedDiscountPolicy(this.jzDataDiscount);
//涓�鑸姌鎵f洿鏀硅繃鍚堝悓浠锋牸璁$畻
this.updateCommonlyDiscountLogic(HeTo.Id,HeTo.JxsType,HeTo.GuaranteeDiscount__c_Input,HeTo.NormalDiscount__c_Input,HeTo.Category__c,this.jzDataDiscount);
});
@@ -2484,21 +2414,15 @@
}
//鍚堝苟鎶樻墸鏀跨瓥閲嶅鏂规
ConsolidatedDiscountPolicy(SchemeSet) {
- console.warn('SchemeSet'+SchemeSet);
var arr = [];
arr = ConsolidatedDiscountPolicyLogic(SchemeSet, arr); //鍚堝苟鎶樻墸鏀跨瓥閲嶅鏂规閫昏緫
- console.warn('arr'+arr);
- // this.jzDataDiscount = [...[], ...arr];//20230214
- this.jzDataDiscount = [].concat(arr);//20230214
- console.warn('this.jzDataDiscount2'+this.jzDataDiscount);
+ this.jzDataDiscount = [...[], ...arr];
// this.ConsolidationProgramProducts(arr);
this.ConsolidatedDiscountDetails(arr); //鍚堝苟鎶樻墸鏀跨瓥浜у搧鏄庣粏
}
//鍚堝苟鎶樻墸鏀跨瓥浜у搧鏄庣粏
ConsolidatedDiscountDetails(arrSchemes) {
- // var jzdataList = [...[], ...this.jzDataProduct];//20230214
- var jzdataList = [].concat(this.jzDataProduct);//20230214
- console.warn('jzdataList'+jzdataList);
+ var jzdataList = [...[], ...this.jzDataProduct];
this.jzDataProduct = ConsolidatedDiscountDetailsLogic(arrSchemes, jzdataList); //鍚堝苟鎶樻墸鏀跨瓥浜у搧鏄庣粏閫昏緫
}
@track
@@ -2538,8 +2462,7 @@
arr.push(jzdsc);
}
});
- // this.jzDataSpecial = [...[], ...arr];//20230214
- this.jzDataSpecial = [].concat(arr);//20230214
+ this.jzDataSpecial = [...[], ...arr];
}
});
})
@@ -2608,8 +2531,7 @@
}
}
//haha4
- // var newArrs = [...[], ...editnewDate];//20230214
- var newArrs = [].concat(editnewDate);//20230214
+ var newArrs = [...[], ...editnewDate];
newArrs.forEach(item => {
if (item.Quantity < item.SplitQuantity) {
boolean = 2;
@@ -2679,7 +2601,6 @@
this.ShowCommonly = true
}
//淇濆瓨浣跨敤鏁伴噺
- @track
IsLoading4 = false;
jzshows4 = true;
IsLoadingFlag = true;
@@ -2723,8 +2644,7 @@
}
}
//haha3
- // var newArrs = [...[], ...editnewDate];//20230214
- var newArrs = [].concat(editnewDate);//20230214
+ var newArrs = [...[], ...editnewDate];
newArrs.forEach(item => {
if (item.Quantity < item.SplitQuantity) {
boolean = 2;
@@ -2924,8 +2844,7 @@
itemTemp.typess = "鎶樻墸鏀跨瓥";
newTemp2.push(itemTemp);
});
- // var data = [...newTemp, ...newTemp2];//20230213
- var data = newTemp.concat(newTemp2);//20230213
+ var data = [...newTemp, ...newTemp2];
var ParamIdStr = this.ParamIdStr;
var Trade__c = this.QuoteData[0].Opportunity.Trade__c;
var NewData = ConsolidationScheme(data, ParamIdStr, Trade__c);
@@ -3036,14 +2955,11 @@
var indexNum = 0;
var jzdpdc = [];
if (str == "1") {
- // jzdpdc = [...[], ...this.jzDataProduct]; //淇冮攢浜у搧//20230214
- jzdpdc = [].concat(this.jzDataProduct);//20230214
+ jzdpdc = [...[], ...this.jzDataProduct]; //淇冮攢浜у搧
} else if (str == "2") {
- // jzdpdc = [...[], ...this.jzDataDiscount]; //鎶樻墸鏀跨瓥//20230214
- jzdpdc = [].concat(this.jzDataDiscount);//20230214
+ jzdpdc = [...[], ...this.jzDataDiscount]; //鎶樻墸鏀跨瓥
} else if (str == "3") {
- // jzdpdc = [...[], ...this.jzDataFixedPrice]; //浠锋牸鏀跨瓥//20230214
- jzdpdc = [].concat(this.jzDataFixedPrice);//20230214
+ jzdpdc = [...[], ...this.jzDataFixedPrice]; //浠锋牸鏀跨瓥
}
jzdpdc.forEach(item => {
indexNum++;
@@ -3054,14 +2970,11 @@
newArr.push(temp);
})
if (str == "1") {
- // this.jzDataProduct = [...[], ...newArr]; //淇冮攢浜у搧//20230214
- this.jzDataProduct = [].concat(newArr);//20230214
+ this.jzDataProduct = [...[], ...newArr]; //淇冮攢浜у搧
} else if (str == "2") {
- // this.jzDataDiscount = [...[], ...newArr]; //鎶樻墸鏀跨瓥//20230214
- this.jzDataDiscount = [].concat(newArr);//20230214
+ this.jzDataDiscount = [...[], ...newArr]; //鎶樻墸鏀跨瓥
} else if (str == "3") {
- // this.jzDataFixedPrice = [...[], ...newArr]; //浠锋牸鏀跨瓥//20230214
- this.jzDataFixedPrice = [].concat(newArr);//20230214
+ this.jzDataFixedPrice = [...[], ...newArr]; //浠锋牸鏀跨瓥
}
//TODU
}
diff --git a/force-app/main/default/lwc/quoteTrial/quoteTrialUtil.js b/force-app/main/default/lwc/quoteTrial/quoteTrialUtil.js
index 98765f6..81660c0 100644
--- a/force-app/main/default/lwc/quoteTrial/quoteTrialUtil.js
+++ b/force-app/main/default/lwc/quoteTrial/quoteTrialUtil.js
@@ -442,8 +442,7 @@
for (let [k, v] of Setmap) {
arrList.push(v);
}
- // jzdataList=[...[],...arrList];//20230214
- jzdataList = [].concat(arrList);//20230214
+ jzdataList=[...[],...arrList];
});
return jzdataList;
}
@@ -536,8 +535,7 @@
for (let [k, v] of Setmap) {
arrList.push(v);
}
- // jzdataList=[...[],...arrList];//20230214
- jzdataList = [].concat(arrList);//20230214
+ jzdataList=[...[],...arrList];
});
return jzdataList;
}
@@ -923,8 +921,7 @@
itemTemp.ismatch = '0';
newTemp4.push(itemTemp);
});
- // var data2 = [...newTemp3, ...newTemp4];//20230213
- var data2 = newTemp3.concat(newTemp4);//20230213
+ var data2 = [...newTemp3, ...newTemp4];
data2.forEach(itmss => { //浜у搧鏄庣粏鍜屽緟閫変骇鍝�
let Temp1 = {};
Temp1.Id = itmss.Id;
@@ -1047,8 +1044,6 @@
}
//涓�鑸姌鎵f洿鏀硅繃鍚堝悓浠锋牸璁$畻閫昏緫
export function updateCDLogic(Id,JxsType,GuaranteeDiscount__c_Input,NormalDiscount__c_Input,Category__c,jzDataDiscount,arrProductTemp){
- console.warn('JxsType'+JxsType);
- console.warn('jzDataDiscount'+jzDataDiscount);
var newArrsTempplus1=[];
var newArrsTempplus2=[];
var jzDataProductlast=[];
@@ -1102,18 +1097,13 @@
newArrsplusN[0].AgencySubtotal__c =newArrsplusN[0].AgencySubtotal__c+chazhiN;
newArrsplusN[0].AgencyUnitPrice__c =newArrsplusN[0].AgencyUnitPrice__c+dangechazhiN;
}
- // newArrsTempplus1=[...newArrsplusG,...newArrsplusN];//20230213
- newArrsTempplus1=newArrsplusG.concat(newArrsplusN);//20230213
- // jzDataProductlast = [...newArrsTempplus1,...newArrsTempplus2];//20230213
- jzDataProductlast = newArrsTempplus1.concat(newArrsTempplus2);//20230213
+ newArrsTempplus1=[...newArrsplusG,...newArrsplusN];
+ jzDataProductlast = [...newArrsTempplus1,...newArrsTempplus2];
}
}
}
}else if(JxsType=="涓�鑸姌鎵�"){
- console.warn('item.JxsType'+item.JxsType);
if(item.JxsType=="涓�鑸姌鎵�"){
- console.warn('NormalDiscount__c_Input'+NormalDiscount__c_Input);
- console.warn('NormalDiscount__c_Input'+NormalDiscount__c_Input);
if (NormalDiscount__c_Input == item.NormalDiscount__c_Input &&
Category__c == item.Category__c){
arrProductTemp.forEach(itemss => { //itemss浜у搧鏄庣粏
@@ -1131,10 +1121,7 @@
var dangechazhi=Math.round((chazhi/newArrsTempplus1[0].Quantity) * 100) / 100;
newArrsTempplus1[0].AgencySubtotal__c =newArrsTempplus1[0].AgencySubtotal__c+chazhi;
newArrsTempplus1[0].AgencyUnitPrice__c =newArrsTempplus1[0].AgencyUnitPrice__c+dangechazhi;
- // jzDataProductlast = [...newArrsTempplus1,...newArrsTempplus2];//20230213
- jzDataProductlast =newArrsTempplus1.concat(newArrsTempplus2);//20230213
- console.warn('newArrsTempplus2'+newArrsTempplus2);
- console.warn('jzDataProductlast'+jzDataProductlast);
+ jzDataProductlast = [...newArrsTempplus1,...newArrsTempplus2];
}
}
}
diff --git a/force-app/main/default/lwc/recentProjectsLWC/recentProjectsLWC.html b/force-app/main/default/lwc/recentProjectsLWC/recentProjectsLWC.html
new file mode 100644
index 0000000..5bdfa2b
--- /dev/null
+++ b/force-app/main/default/lwc/recentProjectsLWC/recentProjectsLWC.html
@@ -0,0 +1,9 @@
+<template>
+ <div style="width:200px;height:30px;background:#515151;font-weight:bold;font-size:16px Arial;color:white;border-radius: 5px 10px 10px 5px;;padding:5px 9px">鏈�杩戦」鐩�</div>
+ <template for:each={orderList} for:item="ord">
+ <div key={ord.id}>
+ <a data-name={ord.Id} onclick = {showDetail} style="color:#515151;font-size:14px">{ord.Name}</a>
+ </div>
+ </template>
+
+ </template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/recentProjectsLWC/recentProjectsLWC.js b/force-app/main/default/lwc/recentProjectsLWC/recentProjectsLWC.js
new file mode 100644
index 0000000..6e27647
--- /dev/null
+++ b/force-app/main/default/lwc/recentProjectsLWC/recentProjectsLWC.js
@@ -0,0 +1,31 @@
+import {LightningElement, wire,track} from 'lwc';
+import getOrderList from '@salesforce/apex/OrderListController.getOrderList';
+import { NavigationMixin } from 'lightning/navigation';
+
+export default class RecentProjectsLWC extends NavigationMixin(LightningElement) {
+ @track orderList =[];
+ @wire(getOrderList)
+ result({error,data}){
+ if(data){
+ this.orderList = data;
+ console.log("return is "+this.record);
+ JSON.stringify("===>data",data);
+ }
+ if(error){
+ this.error= error;
+ console.log("retrun is "+this.error);
+ }
+ }
+ showDetail(event){
+ var orderdetailUrl = event.currentTarget.dataset.name;
+ console.log('===>orderdetailUrl'+orderdetailUrl);
+ this[NavigationMixin.Navigate]({
+ type: 'standard__recordPage',
+ attributes: {
+ recordId: orderdetailUrl,
+ objectApiName: 'Consumable_order__c',
+ actionName: 'view'
+ }
+ });
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/recentProjectsLWC/recentProjectsLWC.js-meta.xml b/force-app/main/default/lwc/recentProjectsLWC/recentProjectsLWC.js-meta.xml
new file mode 100644
index 0000000..f1d5986
--- /dev/null
+++ b/force-app/main/default/lwc/recentProjectsLWC/recentProjectsLWC.js-meta.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>56.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__AppPage</target>
+ <target>lightning__RecordPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightningCommunity__Page</target>
+ <target>lightningCommunity__Default</target>
+ <target>lightning__Tab</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/rentalApplyEquipmentRentalPDF/rentalApplyEquipmentRentalPDF.css b/force-app/main/default/lwc/rentalApplyEquipmentRentalPDF/rentalApplyEquipmentRentalPDF.css
new file mode 100644
index 0000000..ebb43d9
--- /dev/null
+++ b/force-app/main/default/lwc/rentalApplyEquipmentRentalPDF/rentalApplyEquipmentRentalPDF.css
@@ -0,0 +1,10 @@
+.exampleHolder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+.container .uiContainerManager{
+ display: none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/rentalApplyEquipmentRentalPDF/rentalApplyEquipmentRentalPDF.html b/force-app/main/default/lwc/rentalApplyEquipmentRentalPDF/rentalApplyEquipmentRentalPDF.html
new file mode 100644
index 0000000..3eff9e8
--- /dev/null
+++ b/force-app/main/default/lwc/rentalApplyEquipmentRentalPDF/rentalApplyEquipmentRentalPDF.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="EquipmentRentalPDF" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/rentalApplyEquipmentRentalPDF/rentalApplyEquipmentRentalPDF.js b/force-app/main/default/lwc/rentalApplyEquipmentRentalPDF/rentalApplyEquipmentRentalPDF.js
new file mode 100644
index 0000000..12d6d76
--- /dev/null
+++ b/force-app/main/default/lwc/rentalApplyEquipmentRentalPDF/rentalApplyEquipmentRentalPDF.js
@@ -0,0 +1,44 @@
+import { LightningElement, track, wire, api } from 'lwc';
+import {CurrentPageReference,NavigationMixin} from 'lightning/navigation';
+import { CloseActionScreenEvent } from 'lightning/actions';
+
+import init from '@salesforce/apex/rentalApplyEquipmentRentalPDFController.initJumptoPDFButton';
+
+export default class rentalApplyEquipmentRentalPDF extends LightningElement {
+ @api recordId;
+ IsLoading = true;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ console.log(currentPageReference);
+
+ if(currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if(urlValue) {
+ let str = `${urlValue}`;
+ console.log("str");
+ console.log(str);
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback() {
+ console.log('this.recordId' + this.recordId);
+ init({
+ recordId : this.recordId
+ }).then(result => {
+ if(result != null) {
+ this.IsLoading = false;
+ let num = result.pageLength;
+ console.log("======"+this.recordId + ' ' +num);
+ console.log("https://ocsm--partial.sandbox.lightning.force.com/lightning/r/FixtureRentalPDF?raid=" + this.recordId + "&page=" + num)
+ window.location.replace("https://ocsm--partial.sandbox.lightning.force.com/apex/FixtureRentalPDF?raid=" + this.recordId + "&page=" + num);
+ }
+ })
+ .catch( error =>{
+ console.log(error);
+ })
+ }
+
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/rentalApplyEquipmentRentalPDF/rentalApplyEquipmentRentalPDF.js-meta.xml b/force-app/main/default/lwc/rentalApplyEquipmentRentalPDF/rentalApplyEquipmentRentalPDF.js-meta.xml
new file mode 100644
index 0000000..36ce96d
--- /dev/null
+++ b/force-app/main/default/lwc/rentalApplyEquipmentRentalPDF/rentalApplyEquipmentRentalPDF.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/rentalApplyLWT/rentalApplyLWT.css b/force-app/main/default/lwc/rentalApplyLWT/rentalApplyLWT.css
new file mode 100644
index 0000000..af18c76
--- /dev/null
+++ b/force-app/main/default/lwc/rentalApplyLWT/rentalApplyLWT.css
@@ -0,0 +1,11 @@
+.Holder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+
+.container .uiContainerManager{
+ display : none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/rentalApplyLWT/rentalApplyLWT.html b/force-app/main/default/lwc/rentalApplyLWT/rentalApplyLWT.html
new file mode 100644
index 0000000..960b41d
--- /dev/null
+++ b/force-app/main/default/lwc/rentalApplyLWT/rentalApplyLWT.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="Holder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/rentalApplyLWT/rentalApplyLWT.js b/force-app/main/default/lwc/rentalApplyLWT/rentalApplyLWT.js
new file mode 100644
index 0000000..3a73263
--- /dev/null
+++ b/force-app/main/default/lwc/rentalApplyLWT/rentalApplyLWT.js
@@ -0,0 +1,854 @@
+import { LightningElement,api, track, wire } from 'lwc';
+import getUserId from '@salesforce/apex/RentalApplyControllerLWT.getUserId';
+import getProfileId from '@salesforce/apex/RentalApplyControllerLWT.getProfileId';
+import init from '@salesforce/apex/RentalApplyControllerLWT.initFromCancelSubmitButton';
+import selectRentalApplyEquipmentSetDetailByRacId from '@salesforce/apex/RentalApplyControllerLWT.selectRentalApplyEquipmentSetDetailByRacId';
+import selectQISReportById from '@salesforce/apex/RentalApplyControllerLWT.selectQISReportById';
+import selectRepairById from '@salesforce/apex/RentalApplyControllerLWT.selectRepairById';
+import selectCampaignById from '@salesforce/apex/RentalApplyControllerLWT.selectCampaignById';
+import selectRentalApplyEquipmentSetByRacId from '@salesforce/apex/RentalApplyControllerLWT.selectRentalApplyEquipmentSetByRacId';
+import selectRentalApplyById from '@salesforce/apex/RentalApplyControllerLWT.selectRentalApplyById';
+import selectUserById from '@salesforce/apex/RentalApplyControllerLWT.selectUserById';
+import selectQISreportById2 from '@salesforce/apex/RentalApplyControllerLWT.selectQISreportById2';
+import setSObjectShare from '@salesforce/apex/RentalApplyControllerLWT.setSObjectShare';
+import updateRentalApplyC from '@salesforce/apex/RentalApplyControllerLWT.updateRentalApplyC';
+import {CurrentPageReference} from 'lightning/navigation';
+import { CloseActionScreenEvent } from 'lightning/actions';
+import STATUS_PROCESS_STATE from '@salesforce/label/c.StatusProcessState';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+import LightningConfirm from 'lightning/confirm';
+import Id from '@salesforce/user/Id';
+export default class rentalApplyLWT extends LightningElement {
+
+ contactFirstName = 'Yan';
+ contactLastName = 'Khang';
+ opportunityName = 'Possible deal';
+ clickedButtonLabel;
+
+ @api recordId;
+ @track StatusProcessState=STATUS_PROCESS_STATE;
+ Rental_Apply__c;
+ Status__c;
+ Id;
+ Yi_loaner_arranged__c;
+ RA_Status__c;
+ IsLoading=true;
+ demo_purpose2__c;
+ Follow_UP_Opp__c;
+ Statu_Achievements__c;
+ Statu_Achievements_ID__c;
+ Request_shipping_day__c;
+ Demo_purpose1__c;
+ Repair__c;
+ RecordTypeId;
+ SupplementCreated__c;
+ OPDPlan__c;
+ Campaign__c;
+ QIS_number__c;
+ RepairId__c;
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference){
+ console.log("杩涘叆椤甸潰");
+ console.log(currentPageReference);
+ if(currentPageReference){
+ const urvalue=currentPageReference.state.recordId;
+ if(urvalue){
+ let str=`${urvalue}`;
+ console.log('str');
+ console.log(str);
+ this.recordId=str;
+ }
+ }
+ }
+
+
+ async connectedCallback(){
+ console.log(this.recordId);
+ await init({recordId:this.recordId}).then(result=>{
+ console.log(result);
+ if(result!=null){
+ this.Rental_Apply__c=result;
+ this.Status__c=result.Status__c;
+ this.Yi_loaner_arranged__c=result.Yi_loaner_arranged__c;
+ this.Id=result.Id;
+ this.RA_Status__c=result.RA_Status__c;
+ // this.Rental_Apply__c.demo_purpose2__c=result.DemoPurpose2C;
+ // this..Follow_UP_Opp__c=result.FollowUPOppC;
+ // this.Rental_Apply__c.Statu_Achievements__c=result.StatuAchievementsC;
+ // this.Rental_Apply__c.Statu_Achievements_ID__c=result.StatuAchievementsIDC;
+ // this.Rental_Apply__c.Request_shipping_day__c=result.RequestShippingDayC;
+ // this.Rental_Apply__c.Demo_purpose1__c=result.DemoPurpose1C;
+ // this.Rental_Apply__c.Repair__c=result.RepairC;
+ // this.Rental_Apply__c.RecordTypeId=result.RecordTypeId;
+ // this.Rental_Apply__c.SupplementCreated__c=result.SupplementCreatedC;
+ // this.Rental_Apply__c.OPDPlan__c=result.OPDPlanC;
+ // this.Rental_Apply__c.Campaign__c=result.CampaignC;
+ // this.Rental_Apply__c.QIS_number__c=result.QISNumberC;
+
+ this.sumit().then(res=>{
+ console.log("鍏抽棴绐楀彛");
+ this.IsLoading=false;
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }).catch(err=>{
+ console.log("error:");
+ console.log(err.message);
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:"鎿嶄綔澶辫触,鎻愮ず淇℃伅:"+err.message,
+ });
+ this.dispatchEvent(event);
+ //alert("鎿嶄綔澶辫触,鎻愮ず淇℃伅:"+err.message);
+ });
+ console.log("end");
+ }
+ }).catch(err=>{
+ console.log("error:");
+ console.log(err.message);
+ console.log("鎶ラ敊缁撴潫");
+ }).finally(()=>{
+ console.log("finally");
+
+ });
+
+ }
+
+
+ async sumit(){
+ let buttons = document.getElementsByName('submit_approval_process'.toLowerCase());
+ for (let i=0; i<buttons.length; i++) {
+ buttons[i].className = "btnDisabled";
+ buttons[i].disabled = true;
+ }
+ //kk
+
+ const result = await LightningConfirm.open({
+ message: "涓�鏃︽彁浜ゆ璁板綍浠ュ緟鎵瑰噯锛屾牴鎹偍鐨勮缃偍鍙兘涓嶅啀鑳藉缂栬緫姝よ褰曟垨灏嗕粬浠庢壒鍑嗚繃绋嬩腑璋冨洖銆傛槸鍚︾户缁紵",
+ variant: 'headerless',
+ label: 'this is the aria-label value',
+ // setting theme would have no effect
+ });
+ if (result==false) {
+ return;
+ }
+ //1540 you 璇曠敤锛堟棤璇环锛夌洰鐨勭殑澶囧搧鐢宠鍗曪紝涓嶈兘鍏宠仈璇环淇℃伅锛�
+ if(this.Rental_Apply__c.demo_purpose2__c == '璇曠敤锛堟棤璇环锛�' && this.Rental_Apply__c.Follow_UP_Opp__c !=null && this.Rental_Apply__c.Follow_UP_Opp__c != ''){
+ //alert('璇曠敤锛堟棤璇环锛夌洰鐨勭殑澶囧搧鐢宠鍗曪紝涓嶈兘鍏宠仈璇环淇℃伅锛�');
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:'璇曠敤锛堟棤璇环锛夌洰鐨勭殑澶囧搧鐢宠鍗曪紝涓嶈兘鍏宠仈璇环淇℃伅锛�',
+ });
+ this.dispatchEvent(event);
+ return;
+ }
+ // 宸茶喘寰呰揣鐨勭敵璇峰崟瀹℃壒鏃讹紝闇�瑕乧heck娉ㄦ畫鐨勭姸鎬�
+ if (this.Rental_Apply__c.Statu_Achievements__c!=null&&this.Rental_Apply__c.Statu_Achievements__c!='') {
+
+ let SaID=this.Rental_Apply__c.Statu_Achievements_ID__c;
+ let rtn = sforce.apex.execute("RentalApplyWebService","RentalApplyCheckForSAoneEle",{SaID:SaID});
+ if(rtn!='Fin'){
+ //alert(rtn);
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:rtn,
+ });
+ this.dispatchEvent(event);
+ return;
+ }
+ }
+ // 甯屾湜鍒拌揣鏃ヤ笉鑳芥棭浜庣敵璇锋彁浜ゆ棩-0418杩藉姞
+ let d=new Date();
+ if (this.Rental_Apply__c.Request_shipping_day__c < d ) {
+ //alert('甯屾湜鍒拌揣鏃ヤ笉鑳芥棭浜庣敵璇锋彁浜ゆ棩');
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:'甯屾湜鍒拌揣鏃ヤ笉鑳芥棭浜庣敵璇锋彁浜ゆ棩',
+ });
+ this.dispatchEvent(event);
+ return;
+ }
+ let raesdList = new Array();
+ await selectRentalApplyEquipmentSetDetailByRacId({recordId:this.recordId}).then(result=>{
+ console.log(result);
+ if(result!=null){
+ raesdList=result;
+ let modelSet = new Set();
+ let stoppedSet = new Set();
+ for(let i=0;i<raesdList.length;i++){
+ modelSet.add(raesdList[i].Fixture_Model_No_F__c);
+ if('false' == raesdList[i].Product_Status_Flag_F__c
+ && (this.Rental_Apply__c.demo_purpose2__c == '璇曠敤锛堟湁璇环锛�' || this.Rental_Apply__c.demo_purpose2__c == '璇曠敤锛堟棤璇环锛�')){
+ stoppedSet.add(raesdList[i].Fixture_Model_No_F__c);
+ }
+ }
+ if(stoppedSet.size> 0) {
+ //alert( Array.from(stoppedSet).join('锛�') + ' 浜у搧娉ㄥ唽璇佺姸鎬佷负鍋滄锛屼笉鍙敵璇�');
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:Array.from(stoppedSet).join('锛�') + ' 浜у搧娉ㄥ唽璇佺姸鎬佷负鍋滄锛屼笉鍙敵璇�',
+ });
+ this.dispatchEvent(event);
+ return;
+ }
+ }
+ }).catch(err=>{
+ console.log("select1 error:");
+ console.log(err.message);
+ console.log("鎶ラ敊缁撴潫");
+ }).finally(()=>{
+ });
+
+
+
+ if(this.Rental_Apply__c.demo_purpose2__c == '绱㈣禂QIS'){
+ let DeliveryGood = new Array();
+ await selectQISReportById({recordId:this.Rental_Apply__c.QIS_number__c}).then(result=>{
+ console.log(result);
+ DeliveryGood=result;
+ }).catch(err=>{
+ console.log("select1 error:");
+ console.log(err.message);
+ }).finally(()=>{
+ });
+ console.log(DeliveryGood);
+ let records= DeliveryGood;
+ if(records.length == 0 || !modelSet.has(records[0].nonyushohin__r.Product2.Fixture_Model_No_T__c)){
+ //alert('鐢宠鐨勫瀷鍙峰繀椤讳笌QIS鐢宠鍨嬪彿涓�鑷�');
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:'鐢宠鐨勫瀷鍙峰繀椤讳笌QIS鐢宠鍨嬪彿涓�鑷�',
+ });
+ this.dispatchEvent(event);
+ return;
+ }
+ }
+ if(this.Rental_Apply__c.Repair__c==null){
+ console.log("Repair__c涓虹┖")
+ }else{
+ if( this.Rental_Apply__c.Repair__c != ''){
+ console.log("hhh7.1.1");
+ let DeliveryGood ;
+ let records;
+ await selectRepairById({recordId:this.Rental_Apply__c.Repair__c}).then(result=>{
+ console.log(result);
+ DeliveryGood=result;
+ records=result;
+ }).catch(err=>{
+ console.log("select1 error:");
+ console.log(err.message);
+ }).finally(()=>{
+ });
+ if(records==null||records.length==0){
+ console.log("records涓虹┖");
+ }else{
+ if(this.Rental_Apply__c.Demo_purpose1__c == '缁翠慨浠g敤' && this.Rental_Apply__c.demo_purpose2__c != '绱㈣禂QIS') {
+ if(!modelSet.has(records[0].Delivered_Product__r.Product2.Fixture_Model_No_T__c)){
+ //alert('鐢宠鐨勫瀷鍙峰繀椤讳笌閫佷慨鐨勫瀷鍙蜂竴鑷�');
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:'鐢宠鐨勫瀷鍙峰繀椤讳笌閫佷慨鐨勫瀷鍙蜂竴鑷�',
+ });
+ this.dispatchEvent(event);
+ return;
+ }
+ }
+ if(this.Rental_Apply__c.Demo_purpose1__c==null){
+ console.log("Demo_purpose1__c涓虹┖");
+ }else if(this.Rental_Apply__c.Demo_purpose1__c == '缁翠慨浠g敤' && this.Rental_Apply__c.demo_purpose2__c == '涓�鑸敤鎴�' ){
+ if (records[0].Repair_Estimated_date_formula__c == null) {
+ //alert('涓�鑸淮淇棤鎶ヤ环鏃ワ紝涓嶅彲鍊熺敤澶囧搧');
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:'涓�鑸淮淇棤鎶ヤ环鏃ワ紝涓嶅彲鍊熺敤澶囧搧',
+ });
+ this.dispatchEvent(event);
+ return;
+ }
+
+ else if (records[0].Repair_Estimated_date_formula__c < '2019-07-01' && records[0].Agreed_Date__c == null) {
+ //alert('鎶ヤ环鏃ュ湪2019/7/1涔嬪墠涓旀埛鍚屾剰鏃ヤ负绌猴紝涓嶅彲鍊熺敤澶囧搧');
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:'鎶ヤ环鏃ュ湪2019/7/1涔嬪墠涓旀埛鍚屾剰鏃ヤ负绌猴紝涓嶅彲鍊熺敤澶囧搧',
+ });
+ this.dispatchEvent(event);
+ return;
+ }
+ //20210608 ljh SFDC-C3CCN4 start
+ if(records[0].Repair_Rank__c == '' || records[0].Repair_Rank__c == null){
+ //alert('鎶ヤ环绛夌骇涓虹┖涓嶈兘鐢宠澶囧搧');
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:'鎶ヤ环绛夌骇涓虹┖涓嶈兘鐢宠澶囧搧',
+ });
+ this.dispatchEvent(event);
+ return;
+ }else{
+ if(records[0].DW_Sign_Txt__c == 'false' && records[0].Repair_Rank__c == 'DW'){
+ //alert('DW鎶ヤ环绛夌骇涓嬫鍨嬪彿涓嶇鍚堝鍝佺敵璇峰�熺敤鏉′欢');
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:'DW鎶ヤ环绛夌骇涓嬫鍨嬪彿涓嶇鍚堝鍝佺敵璇峰�熺敤鏉′欢',
+ });
+ this.dispatchEvent(event);
+ return;
+ }
+ if(records[0].Repair_Rank__c == 'D1'
+ ||records[0].Repair_Rank__c == 'D2'
+ ||records[0].Repair_Rank__c == 'D3'
+ ||records[0].Repair_Rank__c == 'E2'){
+ //alert('鎶ヤ环绛夌骇涓嶇鍚堝鍝佺敵璇峰�熺敤鏉′欢');
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:'鎶ヤ环绛夌骇涓嶇鍚堝鍝佺敵璇峰�熺敤鏉′欢',
+ });
+ this.dispatchEvent(event);
+ return;
+ }
+ }
+ //20210608 ljh SFDC-C3CCN4 end
+ }
+ if(this.Rental_Apply__c.Demo_purpose1__c ==null){
+ console.log("Demo_purpose1__c涓虹┖");
+ }else if(this.Rental_Apply__c.Demo_purpose1__c == '缁翠慨浠g敤' && this.Rental_Apply__c.demo_purpose2__c == '甯傚満澶氬勾淇濅慨' ){
+ if (records[0].FSE_ApplyForRepair_Day__c == null) {
+ // alert('甯傚満澶氬勾淇濅慨锛屾病鏈塠FSE淇悊鐢宠鏃锛屼笉鍙�熺敤澶囧搧');
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:'甯傚満澶氬勾淇濅慨锛屾病鏈塠FSE淇悊鐢宠鏃锛屼笉鍙�熺敤澶囧搧',
+ });
+ this.dispatchEvent(event);
+ return;
+ }
+ }
+ if(this.Rental_Apply__c.Demo_purpose1__c == '缁翠慨浠g敤' && this.Rental_Apply__c.demo_purpose2__c == '鏁呴殰鎺掓煡' ){
+ if (records[0].FSE_ApplyForRepair_Day__c == null) {
+ //alert('鏁呴殰鎺掓煡锛屾病鏈塠FSE淇悊鐢宠鏃锛屼笉鍙�熺敤澶囧搧');
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:'甯傚満澶氬勾淇濅慨锛屾病鏈塠FSE淇悊鐢宠鏃锛屼笉鍙�熺敤澶囧搧',
+ });
+ this.dispatchEvent(event);
+ return;
+ }
+ if(records[0].Repair_Ordered_Date__c != null) {
+ //alert('鏁呴殰鎺掓煡锛孾4.淇悊鍝丷C鍙楃悊鏃蹇呴』涓虹┖');
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:'甯傚満澶氬勾淇濅慨锛屾病鏈塠FSE淇悊鐢宠鏃锛屼笉鍙�熺敤澶囧搧',
+ });
+ this.dispatchEvent(event);
+ return;
+ }
+ if(records[0].IfCheckFixture__c == 'false'){
+ //alert('涓嶆弧瓒虫晠闅滄帓鏌ョ洰鐨�');
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:'甯傚満澶氬勾淇濅慨锛屾病鏈塠FSE淇悊鐢宠鏃锛屼笉鍙�熺敤澶囧搧',
+ });
+ this.dispatchEvent(event);
+ return;
+ }
+ }
+ let profileId="";
+ await getProfileId().then(result=>{
+ console.log(result);
+ profileId=result;
+ }).catch(err=>{
+ console.log("getProfileId error:");
+ console.log(err.message);
+ }).finally(()=>{
+ });
+ if(this.Rental_Apply__c.RecordTypeId==null){
+ console.log("RecordTypeId涓虹┖");
+ }else if (this.Rental_Apply__c.RecordTypeId != "01210000000RHIn"
+ && profileId != '00e10000000Y3o5'
+ && records[0].NewProductGuaranteeObject__c == '8: 甯傚満澶氬勾淇濅慨'
+ && this.Rental_Apply__c.demo_purpose2__c != '甯傚満澶氬勾淇濅慨') {
+ //alert('鏃犲伩鍖哄埆鏍囧織涓�8: 甯傚満澶氬勾淇濅慨锛屽繀椤婚�夋嫨甯傚満澶氬勾淇濅慨銆�');
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:'甯傚満澶氬勾淇濅慨锛屾病鏈塠FSE淇悊鐢宠鏃锛屼笉鍙�熺敤澶囧搧',
+ });
+ this.dispatchEvent(event);
+ }
+ if(records[0].Repair_Final_Inspection_Date__c != null){
+ //alert('瀛樺湪淇悊鏈�缁堟娴嬫棩锛屼笉鍙�熺敤澶囧搧');
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:'甯傚満澶氬勾淇濅慨锛屾病鏈塠FSE淇悊鐢宠鏃锛屼笉鍙�熺敤澶囧搧',
+ });
+ this.dispatchEvent(event);
+ return;
+ }
+ if(records[0].Repair_Shipped_Date__c != null){
+ //alert('瀛樺湪RC淇悊杩旈�佹棩锛屼笉鍙�熺敤澶囧搧');
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:'甯傚満澶氬勾淇濅慨锛屾病鏈塠FSE淇悊鐢宠鏃锛屼笉鍙�熺敤澶囧搧',
+ });
+ this.dispatchEvent(event);
+ return;
+ }
+ if(records[0].Status1__c =='0.鍒犻櫎' ||records[0].Status1__c =='0.鍙栨秷' ||records[0].Status1__c =='5.瀹屾瘯' ){
+ //alert('淇悊宸茬粡缁撴潫锛屼笉鑳界敵璇峰鍝�');
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:'甯傚満澶氬勾淇濅慨锛屾病鏈塠FSE淇悊鐢宠鏃锛屼笉鍙�熺敤澶囧搧',
+ });
+ this.dispatchEvent(event);
+ return;
+ }
+ if ( this.Rental_Apply__c.demo_purpose2__c == '鍐嶄慨鐞�' && records[0].ReRepairObject_F__c == 'false') {
+ //alert('涓嶅睘浜庡啀鍙楃悊鍙傝�冨璞★紝涓嶅彲鍊熺敤澶囧搧');
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:'甯傚満澶氬勾淇濅慨锛屾病鏈塠FSE淇悊鐢宠鏃锛屼笉鍙�熺敤澶囧搧',
+ });
+ this.dispatchEvent(event);
+ return;
+ }
+ if (this.Rental_Apply__c.RecordTypeId != '01210000000RHIn'
+ && this.Rental_Apply__c.demo_purpose2__c != '淇濅慨鐢ㄦ埛'
+ && this.Rental_Apply__c.demo_purpose2__c != '甯傚満澶氬勾淇濅慨'
+ && records[0].Number_of_EffectiveContract__c == '鏈�' ) {
+ //alert('鏈夌淮淇悎鍚�,蹇呴』閫夋嫨淇濅慨鐢ㄦ埛.');
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:'甯傚満澶氬勾淇濅慨锛屾病鏈塠FSE淇悊鐢宠鏃锛屼笉鍙�熺敤澶囧搧',
+ });
+ this.dispatchEvent(event);
+ return;
+ }
+ let AssetModelNo = records[0].Delivered_Product__r.Product2.Asset_Model_No__c;
+ if (this.Rental_Apply__c.RecordTypeId != '01210000000RHIn' && records[0].Number_of_EffectiveContract__c == '鏃�'
+ && (records[0].NewProductGuaranteeObject__c == '2: 鏈嶅姟澶氬勾淇濅慨'
+ && (AssetModelNo == 'LTF-190-10-3D' || AssetModelNo == 'LTF-S190-5' || AssetModelNo == 'CYF-VHA' || AssetModelNo == 'CYF-VA2' || AssetModelNo == 'CYF-5A'|| AssetModelNo == 'LTF-S190-10'|| AssetModelNo == 'OER-AW'|| AssetModelNo == 'URF-V'|| AssetModelNo == 'URF-V2'|| AssetModelNo == 'URF-P6'))
+ && this.Rental_Apply__c.demo_purpose2__c != '淇濅慨鐢ㄦ埛' ) {
+ //alert('姝よ澶囧瀷鍙峰骞翠繚淇紝璇烽�夋嫨淇濅慨鐢ㄦ埛.');
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:'甯傚満澶氬勾淇濅慨锛屾病鏈塠FSE淇悊鐢宠鏃锛屼笉鍙�熺敤澶囧搧',
+ });
+ this.dispatchEvent(event);
+ return;
+ }
+
+ if (this.Rental_Apply__c.RecordTypeId != '01210000000RHIn'
+ && records[0].NewProductGuaranteeObject__c == '2: 鏈嶅姟澶氬勾淇濅慨'
+ && (AssetModelNo == 'CV-V1' || AssetModelNo == 'CV-V1(A)' || AssetModelNo == 'CV-V1(B)' || AssetModelNo == 'GIF-LV1' || AssetModelNo == 'CF-LV1L' || AssetModelNo == 'CF-LV1I' || AssetModelNo == 'MAJ-1910')
+ && (this.Rental_Apply__c.demo_purpose2__c == '涓�鑸敤鎴�' || this.Rental_Apply__c.demo_purpose2__c == '鍐嶄慨鐞�')
+ ) {
+ //alert('濂ヨ緣璁惧锛屼繚淇湡鍐呬笉鎻愪緵澶囧搧.');
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:'甯傚満澶氬勾淇濅慨锛屾病鏈塠FSE淇悊鐢宠鏃锛屼笉鍙�熺敤澶囧搧',
+ });
+ this.dispatchEvent(event);
+ return;
+ }
+ }
+
+ }
+ }
+
+ if(this.Rental_Apply__c.SupplementCreated__c==null){
+ console.log("SupplementCreated__c涓虹┖");
+ }else if (this.Rental_Apply__c.SupplementCreated__c == '1' && this.Rental_Apply__c.OPDPlan__c != '') {
+ let raId = this.Id;
+ //kk
+ let raesCountCheck = sforce.apex.execute("OpdPlanWebService", "raesCountCheck", {rentalApplyId: raId});
+ if(raesCountCheck != 'OK'){
+ //alert(raesCountCheck);
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:raesCountCheck,
+ });
+ this.dispatchEvent(event);
+ return;
+ }
+ }
+ console.log("hhh10");
+ if(this.Rental_Apply__c.Campaign__c==null){
+ console.log("Campaign__c涓虹┖");
+ }else if( this.Rental_Apply__c.Campaign__c != ''){
+ let DeliveryGood = new Array();
+ // 20220324 ljh obpm update start
+ //kk1
+ let statusSting = this.StatusProcessState;
+ let statusList = statusSting.split(',');
+ // DeliveryGood = sforce.connection.query("select Status, Rental_Apply_Flag__c from Campaign where id ='{!Rental_Apply__c.Campaign__c}'");
+ // DeliveryGood = await selectCampaignById(this.Rental_Apply__c.Campaign__c);
+ await selectCampaignById({recordId:this.Rental_Apply__c.Campaign__c}).then(result=>{
+ console.log(result);
+ DeliveryGood=result;
+ }).catch(err=>{
+ console.log("selectCampaignById error:");
+ console.log(err.message);
+ }).finally(()=>{
+ });
+ // 20220324 ljh obpm update start
+ //kk
+ let records= DeliveryGood;
+
+ let interval = records[0].Status;
+ let records_Date = records[0].Rental_Apply_Flag__c;
+ if (interval==null ) {
+ //alert("璇风‘璁ゅ浼氱姸鎬�");
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:"璇风‘璁ゅ浼氱姸鎬�",
+ });
+ this.dispatchEvent(event);
+ return;
+ }
+ else if (interval == '鑽夋涓�') {
+ //alert('瀛︿細鐘舵�佷负鑽夋涓紝涓嶈兘鎻愪氦');
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:'瀛︿細鐘舵�佷负鑽夋涓紝涓嶈兘鎻愪氦',
+ });
+ this.dispatchEvent(event);
+ return;
+ }
+ else if (interval == '鐢宠涓�') {
+ //alert('瀛︿細鐘舵�佷负鐢宠涓紝涓嶈兘鎻愪氦');
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:'瀛︿細鐘舵�佷负鐢宠涓紝涓嶈兘鎻愪氦',
+ });
+ this.dispatchEvent(event);
+ return;
+ }
+ else if (interval == '宸茬粨鏉�') {
+ // alert('瀛︿細鐘舵�佷负宸茬粨鏉燂紝涓嶈兘鎻愪氦');
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:'瀛︿細鐘舵�佷负宸茬粨鏉燂紝涓嶈兘鎻愪氦',
+ });
+ this.dispatchEvent(event);
+ return;
+ }
+ else if (interval == '宸叉彁浜ゆ姤鍛�') {
+ // alert('瀛︿細鐘舵�佷负宸叉彁浜ゆ姤鍛婏紝涓嶈兘鎻愪氦');
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:'瀛︿細鐘舵�佷负宸叉彁浜ゆ姤鍛婏紝涓嶈兘鎻愪氦',
+ });
+ this.dispatchEvent(event);
+ return;
+ }
+ else if (interval == '鍙栨秷鐢宠涓�') {
+ // alert('瀛︿細鐘舵�佷负鍙栨秷鐢宠涓紝涓嶈兘鎻愪氦');
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:'瀛︿細鐘舵�佷负鍙栨秷鐢宠涓紝涓嶈兘鎻愪氦',
+ });
+ this.dispatchEvent(event);
+ return;
+ }
+ else if (interval == '鍙栨秷') {
+ // alert('瀛︿細鐘舵�佷负鍙栨秷锛屼笉鑳芥彁浜�');
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:'瀛︿細鐘舵�佷负鍙栨秷锛屼笉鑳芥彁浜�',
+ });
+ this.dispatchEvent(event);
+ return;
+ }
+ //kk
+ if(this.Rental_Apply__c.Request_shipping_day__c==null){
+ // alert("璇风‘璁ゅ笇鏈涘埌璐ф棩鏈�");
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:"璇风‘璁ゅ笇鏈涘埌璐ф棩鏈�",
+ });
+ this.dispatchEvent(event);
+ return;
+ }else{
+ if (d >= this.Rental_Apply__c.Request_shipping_day__c -7) {
+ // alert("蹇呴』鎻愬墠浜庡笇鏈涘埌璐ф棩7澶╀互涓婃彁浜ょ敵璇�");
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:"蹇呴』鎻愬墠浜庡笇鏈涘埌璐ф棩7澶╀互涓婃彁浜ょ敵璇�",
+ });
+ this.dispatchEvent(event);
+ return;
+ }
+ // 20220324 ljh obpm add start
+ if (records != null && records[0].IF_Approved__c == "true" && (records[0].Meeting_Approved_No__c == null || records[0].Meeting_Approved_No__c == "") ) {
+ // alert("娌℃湁鍐宠鍙风殑锛屾殏涓嶈兘鍑哄��,璇锋洿鏂拌鍐充俊鎭��");
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:"娌℃湁鍐宠鍙风殑锛屾殏涓嶈兘鍑哄��,璇锋洿鏂拌鍐充俊鎭��",
+ });
+ this.dispatchEvent(event);
+ return;
+ }
+ if (records != null && records[0].IF_Approved__c == "true" && records[0].Meeting_Approved_No__c != "" && statusList.indexOf(records[0].Approved_Status__c) != -1 && records[0].Approved_Status__c != '鑽夌' ) {
+ // alert("宸茬敵璇峰喅瑁佷絾鍐宠鐘舵�佷笉绗﹀悎鏉′欢銆�");
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:"宸茬敵璇峰喅瑁佷絾鍐宠鐘舵�佷笉绗﹀悎鏉′欢銆�",
+ });
+ this.dispatchEvent(event);
+ return;
+ }
+ }
+
+ // 20220324 ljh obpm add end
+ }
+
+ if (this.Rental_Apply__c.QIS_number__c == null) {
+ console.log("QIS_number__c 鏄┖鐨�");
+ }else{
+ if( this.Rental_Apply__c.QIS_number__c != ''){
+ let DeliveryGood = new Array();
+ // DeliveryGood =await selectQISreportById2(this.Rental_Apply__c.QIS_ID_Line__c);
+ await selectQISreportById2({recordId:this.Rental_Apply__c.QIS_ID_Line__c}).then(result=>{
+ console.log(result);
+ DeliveryGood=result;
+ }).catch(err=>{
+ console.log("selectCampaignById error:");
+ console.log(err.message);
+ }).finally(()=>{
+ });
+ let records= DeliveryGood;
+ let interval = records[0].next_action__c;
+ if (interval == '閫佸洖') {
+ // alert("QIS 宸查�佸洖锛屼笉鑳藉啀鐢宠澶囧搧浜�");
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:"QIS 宸查�佸洖锛屼笉鑳藉啀鐢宠澶囧搧浜�",
+ });
+ this.dispatchEvent(event);
+ return;
+ }
+ }
+ }
+ // share
+ let userAccess = new Array();
+ //kk
+ let t=this.Rental_Apply__c.applyUser__c+'_Edit';
+ userAccess.push(t);
+ let rtn ;
+ await setSObjectShare({sobjectName:'Rental_Apply__Share',rowCause:'ApplyUserShare__c',parentId:this.Rental_Apply__c.Id,userAccess:userAccess,ownerId:this.Rental_Apply__c.OwnerId}).then(result=>{
+ console.log(result);
+ rtn=result;
+ }).catch(err=>{
+ console.log("setSObjectShare error:");
+ console.log(err.message);
+ }).finally(()=>{
+ });
+
+ if(rtn==null){
+ // alert("rtn涓虹┖");
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:"rtn涓虹┖",
+ });
+ this.dispatchEvent(event);
+ return;
+ }else{
+ if (rtn != 'OK') {
+ // alert(rtn);
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:rtn,
+ });
+ this.dispatchEvent(event);
+ return;
+ }
+ }
+ if(this.Rental_Apply__c.Status__c == null){
+ // alert('璇峰鍝佺敵璇风姸鎬佺‘璁わ紝涓嶈兘涓虹┖');
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:'璇峰鍝佺敵璇风姸鎬佺‘璁わ紝涓嶈兘涓虹┖',
+ });
+ this.dispatchEvent(event);
+ return;
+ }else{
+ if (this.Rental_Apply__c.Status__c == '濉啓瀹屾瘯' ||
+ this.Rental_Apply__c.Status__c == '鐢宠涓�' ||
+ this.Rental_Apply__c.Status__c == '宸叉壒鍑�' ||
+ //鐜板湪鐢宠涔︾殑Status__c宸茬粡娌℃湁寮曞綋瀹屼簡鐘舵�併�傛墍浠ヨ繖閲屼笉闇�瑕佸垽鏂�
+ //'{!Rental_Apply__c.Status__c}' == '寮曞綋瀹屼簡' ||
+ this.Rental_Apply__c.Status__c == '宸插嚭搴撴寚绀�' ||
+ this.Rental_Apply__c.Status__c == '鍒犻櫎' ||
+ this.Rental_Apply__c.Status__c == '鍙栨秷' ) {
+ // alert('璇峰鍝佺敵璇风姸鎬佺‘璁わ紝宸茬粡鎻愪氦杩囩殑鐢宠锛屼笉鑳介噸澶嶆彁浜�');
+ const event = new ShowToastEvent({
+ title: 'Get Help',
+ message:'璇峰鍝佺敵璇风姸鎬佺‘璁わ紝宸茬粡鎻愪氦杩囩殑鐢宠锛屼笉鑳介噸澶嶆彁浜�'
+ });
+ this.dispatchEvent(event);
+ return;
+ }
+ }
+ // 娌℃湁鏄庣粏鐨勪竴瑙坈heck
+ let raesList = new Array();
+ // raesList = selectRentalApplyEquipmentSetByRacId(this.recordId);
+ await selectRentalApplyEquipmentSetByRacId({recordId:this.recordId}).then(result=>{
+ console.log(result);
+ raesList=result;
+ }).catch(err=>{
+ console.log("selectCampaignById error:");
+ console.log(err.message);
+ }).finally(()=>{
+ });
+ let records= raesList;
+
+ if(records.length > 0){
+ // alert('鏈夋病鏈夋槑缁嗙殑鍊熷嚭澶囧搧閰嶅涓�瑙堬紝涓嶈兘鎻愪氦');
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:'鏈夋病鏈夋槑缁嗙殑鍊熷嚭澶囧搧閰嶅涓�瑙堬紝涓嶈兘鎻愪氦',
+ });
+ this.dispatchEvent(event);
+ return;
+ }
+
+ let racs ;
+ await selectRentalApplyById({recordId:this.recordId}).then(result=>{
+ console.log(result);
+ racs=result;
+ }).catch(err=>{
+ console.log("selectCampaignById error:");
+ console.log(err.message);
+ }).finally(()=>{
+ });
+ let racNew = racs[0];
+ let id=this.Rental_Apply__c.Id;
+ let Status__c="濉啓瀹屾瘯";
+ let userId;
+ await getUserId().then(result=>{
+ console.log(result);
+ userId=result;
+ }).catch(err=>{
+ console.log("selectCampaignById error:");
+ console.log(err.message);
+ }).finally(()=>{
+ });
+ let manageUsers;
+ await selectUserById({recordId:userId}).then(result=>{
+ console.log(result);
+ manageUsers=result;
+ }).catch(err=>{
+ console.log("selectCampaignById error:");
+ console.log(err.message);
+ }).finally(()=>{
+ });
+ let SalesManagerSubmit__c;
+ let OPDManagerApprover__c;
+ let BuchangApprovalManagerSalesSubmit__c;
+ let OPDBuchangApprover__c;
+ if(manageUsers[0].JingliEquipmentManager__c != null){
+ SalesManagerSubmit__c = manageUsers[0].JingliEquipmentManager__r.Name;
+ // 20220930 ljh SWAG-CJR8S7 start
+ if(racNew.OPDPlan__c != null){
+ OPDManagerApprover__c = SalesManagerSubmit__c == racNew.OPDPlan__r.SalesManager_Txt__c?SalesManagerSubmit__c:' ';
+ }
+ // 20220930 ljh SWAG-CJR8S7 end
+ }
+ if(manageUsers[0].Buzhang_Equipment_Manager__c != null){
+ BuchangApprovalManagerSalesSubmit__c = manageUsers[0].Buzhang_Equipment_Manager__r.Name; //2022-07-22 zyh
+ // 20220930 ljh SWAG-CJR8S7 start
+ if(racNew.OPDPlan__c != null){
+ OPDBuchangApprover__c = BuchangApprovalManagerSalesSubmit__c == racNew.OPDPlan__r.BuchangApprovalManagerSales_Txt__c?BuchangApprovalManagerSalesSubmit__c:' ';
+ }
+ // 20220930 ljh SWAG-CJR8S7 end
+ }
+ let resultt;
+ await updateRentalApplyC({
+ recordId:id,
+ SalesManagerSubmitC:SalesManagerSubmit__c,
+ StatusC:Status__c,
+ OPDManagerApproverC:OPDManagerApprover__c,
+ BuchangApprovalManagerSalesSubmitC:BuchangApprovalManagerSalesSubmit__c,
+ OPDBuchangApproverC:OPDBuchangApprover__c
+ }).then(res=>{
+ console.log(res);
+ if(res!=null&&res.success==false){
+ resultt=res;
+ let messages ="";
+ messages=resultt.errors[0].split(',')[1];
+ if (messages!=null&&messages!="") {
+ console.log("hhh26");
+ // alert("鎿嶄綔澶辫触,鎻愮ず淇℃伅:"+messages);
+ const event = new ShowToastEvent({
+ title: '鎻愮ず淇℃伅',
+ message:"鎿嶄綔澶辫触,鎻愮ず淇℃伅:"+messages,
+ });
+ this.dispatchEvent(event);
+ return;
+ }
+ }
+ }).catch(err=>{
+ console.log("updateRentalApplyC error:");
+ console.log(err.message);
+ }).finally(()=>{
+ console.log("finally");
+ console.log(resultt);
+ });
+
+ this.dispatchEvent(new CloseActionScreenEvent());
+ };
+
+ getConnectDMLErrorMessages (results) {
+ console.log("in 1");
+ console.log(results);
+ let messages = [];
+ let i = 0;
+ let len = results.length;
+ let r;
+ console.log("in 1.1");
+ for (; i < len; i++) {
+ console.log("in 1.2");
+ r = results[i];
+ console.log("in 1.3");
+ if (r.success==false) {
+ console.log("in 1.4");
+ messages = messages.concat(this.getConnectDMLMessagesOfAResult(r));
+ }
+ }
+ console.log("in 1");
+ console.log("1缁撴灉");
+ console.log(messages);
+ return messages;
+ };
+ getConnectDMLMessagesOfAResult(res) {
+ console.log("in 2");
+ console.log(res);
+ let messages = [];
+ let errors = res.errors;
+ let i = 0;
+ let len = errors.length;
+ let e;
+ for (; i < len; i++) {
+ e = errors[i];
+ console.log("in 2.1");
+ messages.push(e + " " + this.getConnectDMLErrorFields(errors));
+ console.log("3缁撴灉");
+ console.log(this.getConnectDMLErrorFields(errors));
+ console.log("in 2.2");
+ }
+ console.log("in 2");
+ console.log("2缁撴灉");
+ console.log(messages);
+ return messages;
+ };
+
+ getConnectDMLErrorFields (error) {
+ console.log("in 3");
+ console.log(error);
+ let fields = error;
+ if (fields.length > 0) {
+ console.log("in 3");
+ return "[" + fields + ",]"
+ }
+ else {
+ console.log("in 3");
+ return "";
+ }
+ };
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/rentalApplyLWT/rentalApplyLWT.js-meta.xml b/force-app/main/default/lwc/rentalApplyLWT/rentalApplyLWT.js-meta.xml
new file mode 100644
index 0000000..9ac5a4a
--- /dev/null
+++ b/force-app/main/default/lwc/rentalApplyLWT/rentalApplyLWT.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="rentalApplyLWT">
+ <apiVersion>51.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__AppPage</target>
+ <target>lightning__RecordPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/selectSubstituteLWC/selectSubstituteLWC.css b/force-app/main/default/lwc/selectSubstituteLWC/selectSubstituteLWC.css
new file mode 100644
index 0000000..af18c76
--- /dev/null
+++ b/force-app/main/default/lwc/selectSubstituteLWC/selectSubstituteLWC.css
@@ -0,0 +1,11 @@
+.Holder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+
+.container .uiContainerManager{
+ display : none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/selectSubstituteLWC/selectSubstituteLWC.html b/force-app/main/default/lwc/selectSubstituteLWC/selectSubstituteLWC.html
new file mode 100644
index 0000000..960b41d
--- /dev/null
+++ b/force-app/main/default/lwc/selectSubstituteLWC/selectSubstituteLWC.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="Holder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/selectSubstituteLWC/selectSubstituteLWC.js b/force-app/main/default/lwc/selectSubstituteLWC/selectSubstituteLWC.js
new file mode 100644
index 0000000..1b59e91
--- /dev/null
+++ b/force-app/main/default/lwc/selectSubstituteLWC/selectSubstituteLWC.js
@@ -0,0 +1,78 @@
+import { LightningElement,api, track, wire } from 'lwc';
+import {CurrentPageReference} from 'lightning/navigation';
+import { CloseActionScreenEvent } from 'lightning/actions';
+import init from '@salesforce/apex/SelectSubstituteControllerLWT.initFromSelectSubstituteButton';
+import selectRentalApplyEquipmentSetByID from '@salesforce/apex/SelectSubstituteControllerLWT.selectRentalApplyEquipmentSetByID';
+export default class selectSubstituteLWC extends LightningElement {
+
+ @api recordId;
+ id;
+ RentalApplyId;
+ Status;
+ IsLoading=true;
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference){
+ console.log("杩涘叆椤甸潰");
+ console.log(currentPageReference);
+ if(currentPageReference){
+ const urvalue=currentPageReference.state.recordId;
+ if(urvalue){
+ let str=`${urvalue}`;
+ console.log('str');
+ console.log(str);
+ this.recordId=str;
+ }
+ }
+ }
+
+
+
+ connectedCallback(){
+ console.log(this.recordId);
+ init({recordId:this.recordId}).then(result=>{
+ console.log(result);
+ if(result!=null){
+ this.id=result.id;
+ this.RentalApplyId=result.RentalApplyId;
+ this.Status=result.Status;
+ this.cancelSubmit().then(res=>{
+ this.IsLoading=false;
+ this.dispatchEvent(new CloseActionScreenEvent());
+ });
+ }
+ }).catch(err=>{
+ console.log("error:");
+ console.log(err);
+ }).finally(()=>{
+
+ });
+ }
+
+
+
+ async cancelSubmit(){
+ // 鍙垎閰嶄唬鏇垮搧鍓嶆彁1 -- 澶囧搧鍊熷嚭鐢宠鐨勭姸鎬侊細鈥滃凡鎵瑰噯鈥濆埌鈥滃凡鍑哄簱鎸囩ず鈥�
+ if(this.Status != '宸叉壒鍑�' && this.Status != '宸插嚭搴撴寚绀�') {
+ alert('鐢宠涔︾姸鎬佷笉绗﹀悎鍒嗛厤浠f浛鍝佹潯浠讹紝璇风‘璁ょ敵璇风殑鐘舵��');
+ } else {
+ // 鍙垎閰嶄唬鏇垮搧鍓嶆彁2 -- 鎵�閫夊�熷嚭澶囧搧閰嶅涓�瑙堢殑鐘舵�侊細鈥樺凡鎵瑰噯鈥欏埌鈥樺嚭搴撳墠宸叉娴嬧��
+ var soqlRecord ;
+ await selectRentalApplyEquipmentSetByID({recordId:this.recordId})
+ .then(res=>{
+ soqlRecord=res;
+ var status = soqlRecord.RAES_Status__c;
+ var irreplaceable = soqlRecord.Irreplaceable_flag__c;
+ var shipTime = soqlRecord.Shippment_loaner_time2__c;
+
+ if(status == "鑽夋涓�" || status == "鐢宠涓�" || shipTime != null) {
+ alert("涓�瑙堢殑鐘舵�佷笉绗﹀悎鍒嗛厤鏇夸唬鍝佹潯浠�");
+ } else if(irreplaceable=="true") {
+ alert("鐢宠浜哄嬀閫変簡浠f浛鍝佷笉鍙�");
+ } else {
+ window.open("/apex/RentalFixtureSetSelect?pt_recid="+this.RentalApplyId+"&raesid="+this.recordId);
+ }
+ });
+
+ }
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/selectSubstituteLWC/selectSubstituteLWC.js-meta.xml b/force-app/main/default/lwc/selectSubstituteLWC/selectSubstituteLWC.js-meta.xml
new file mode 100644
index 0000000..c94e4e2
--- /dev/null
+++ b/force-app/main/default/lwc/selectSubstituteLWC/selectSubstituteLWC.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="selectSubstituteLWC">
+ <apiVersion>51.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__AppPage</target>
+ <target>lightning__RecordPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/singleRecords/singleRecords.html b/force-app/main/default/lwc/singleRecords/singleRecords.html
new file mode 100644
index 0000000..3263110
--- /dev/null
+++ b/force-app/main/default/lwc/singleRecords/singleRecords.html
@@ -0,0 +1,23 @@
+<template>
+ <lightning-card title="Single Records" icon-name="custom:custom26">
+ <template if:true={account.data}>
+ <div class="slds-var-m-around_medium slds-text-align_center">
+ Check examples on how to implement single record patterns on the
+ Account record page.
+ <p class="slds-var-m-around_medium">
+ <lightning-button
+ label="Take me there!"
+ onclick={handleButtonClick}
+ ></lightning-button>
+ </p>
+ <!-- prettier-ignore -->
+ <p>
+ (You can also select an account in the <strong>Accounts</strong> tab)
+ </p>
+ </div>
+ </template>
+ <template if:true={account.error}>
+ <c-error-panel errors={account.error}></c-error-panel>
+ </template>
+ </lightning-card>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/singleRecords/singleRecords.js b/force-app/main/default/lwc/singleRecords/singleRecords.js
new file mode 100644
index 0000000..feb4d4f
--- /dev/null
+++ b/force-app/main/default/lwc/singleRecords/singleRecords.js
@@ -0,0 +1,18 @@
+import { LightningElement, wire } from 'lwc';
+import { NavigationMixin } from 'lightning/navigation';
+import getSingleAccountViaSOQL from '@salesforce/apex/RecordPagesController.getSingleAccountViaSOQL';
+
+export default class SingleRecords extends NavigationMixin(LightningElement) {
+ @wire(getSingleAccountViaSOQL) account;
+
+ handleButtonClick() {
+ this[NavigationMixin.Navigate]({
+ type: 'standard__recordPage',
+ attributes: {
+ recordId: this.account.data.Id,
+ objectApiName: 'Account',
+ actionName: 'view'
+ }
+ });
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/singleRecords/singleRecords.js-meta.xml b/force-app/main/default/lwc/singleRecords/singleRecords.js-meta.xml
new file mode 100644
index 0000000..6646900
--- /dev/null
+++ b/force-app/main/default/lwc/singleRecords/singleRecords.js-meta.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__AppPage</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/splitApplyLWC/splitApplyLWC.css b/force-app/main/default/lwc/splitApplyLWC/splitApplyLWC.css
new file mode 100644
index 0000000..af18c76
--- /dev/null
+++ b/force-app/main/default/lwc/splitApplyLWC/splitApplyLWC.css
@@ -0,0 +1,11 @@
+.Holder{
+ position: relative;
+ display: inline-block;
+ width: 80px;
+ height: 80px;
+ text-align: center;
+}
+
+.container .uiContainerManager{
+ display : none !important;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/splitApplyLWC/splitApplyLWC.html b/force-app/main/default/lwc/splitApplyLWC/splitApplyLWC.html
new file mode 100644
index 0000000..960b41d
--- /dev/null
+++ b/force-app/main/default/lwc/splitApplyLWC/splitApplyLWC.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="Holder" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/splitApplyLWC/splitApplyLWC.js b/force-app/main/default/lwc/splitApplyLWC/splitApplyLWC.js
new file mode 100644
index 0000000..d692df9
--- /dev/null
+++ b/force-app/main/default/lwc/splitApplyLWC/splitApplyLWC.js
@@ -0,0 +1,56 @@
+import { LightningElement,api, track, wire } from 'lwc';
+import {CurrentPageReference} from 'lightning/navigation';
+import { CloseActionScreenEvent } from 'lightning/actions';
+import init from '@salesforce/apex/SelectSubstituteControllerLWT.initFromSelectSubstituteButton';
+
+export default class splitApplyLWC extends LightningElement {
+ @api recordId;
+ IsLoading=true;
+ id;
+ RentalApplyId;
+ Status;
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference){
+ console.log("杩涘叆椤甸潰");
+ console.log(currentPageReference);
+ if(currentPageReference){
+ const urvalue=currentPageReference.state.recordId;
+ if(urvalue){
+ let str=`${urvalue}`;
+ console.log('str');
+ console.log(str);
+ this.recordId=str;
+ }
+ }
+ }
+
+
+
+ connectedCallback(){
+ console.log(this.recordId);
+ init({recordId:this.recordId}).then(result=>{
+ console.log(result);
+ if(result!=null){
+ this.id=result.id;
+ this.RentalApplyId=result.RentalApplyId;
+ this.Status=result.Status;
+ this.cancelSubmit().then(res=>{
+ this.IsLoading=false;
+ this.dispatchEvent(new CloseActionScreenEvent());
+ });
+ }
+ }).catch(err=>{
+ console.log("error:");
+ console.log(err);
+ }).finally(()=>{
+
+ });
+ }
+
+
+
+ async cancelSubmit(){
+ let records=[this.recordId];
+ window.open("/apex/RentalApplySplit?objId="+this.RentalApplyId+"&raesIds="+records, 'RentalApplySplit', 'width=600,height=200');
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/splitApplyLWC/splitApplyLWC.js-meta.xml b/force-app/main/default/lwc/splitApplyLWC/splitApplyLWC.js-meta.xml
new file mode 100644
index 0000000..ed92fa4
--- /dev/null
+++ b/force-app/main/default/lwc/splitApplyLWC/splitApplyLWC.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="splitApplyLWC">
+ <apiVersion>51.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__AppPage</target>
+ <target>lightning__RecordPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/tEnquiry/tEnquiry.html b/force-app/main/default/lwc/tEnquiry/tEnquiry.html
index 46f13e5..c620a8b 100644
--- a/force-app/main/default/lwc/tEnquiry/tEnquiry.html
+++ b/force-app/main/default/lwc/tEnquiry/tEnquiry.html
@@ -45,7 +45,7 @@
<!-- <div style="width: 450px;float: left;margin-left: 10px;"> -->
<!-- <c-jzlookupv3 data-parent-id="lookup1" label="鍏宠仈鍖婚櫌" placeholder="璇烽�夋嫨鍏宠仈鍖婚櫌.." onsearchchange={onsearchchange} searchdata={searchdata} option={option} onselected={selectedFn}> </c-jzlookupv3> -->
- <c-jzlookuplightning data-parent-id="lookup1" onsearchchange={onsearchchange1} objectname="Tender_information__c" fieldname="Hospital__c" > </c-jzlookuplightning>
+ <c-jzlookuplightning data-parent-id="lookup1" onsearchchange={onsearchchange1} objectname="Tender_information__c" fieldname="Hospital__c" > </c-jzlookuplightning>
</div>
diff --git a/force-app/main/default/lwc/tabs/tabs.html b/force-app/main/default/lwc/tabs/tabs.html
new file mode 100644
index 0000000..208e475
--- /dev/null
+++ b/force-app/main/default/lwc/tabs/tabs.html
@@ -0,0 +1,15 @@
+<template>
+ <div class="slds-var-m-around_medium">
+ <lightning-tabset active-tab-value="tab2">
+ <lightning-tab label="Irrigation systems" value="tab1">
+ 5 days, 1000 USD.
+ </lightning-tab>
+ <lightning-tab label="Organic crops" value="tab2">
+ 7 days, 1200 USD.
+ </lightning-tab>
+ <lightning-tab label="Soils" value="tab3">
+ 2 days, 500 USD.
+ </lightning-tab>
+ </lightning-tabset>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/tabs/tabs.js b/force-app/main/default/lwc/tabs/tabs.js
new file mode 100644
index 0000000..b5c0a14
--- /dev/null
+++ b/force-app/main/default/lwc/tabs/tabs.js
@@ -0,0 +1,3 @@
+import { LightningElement } from 'lwc';
+
+export default class Tabs extends LightningElement {}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/tabs/tabs.js-meta.xml b/force-app/main/default/lwc/tabs/tabs.js-meta.xml
new file mode 100644
index 0000000..b9a3113
--- /dev/null
+++ b/force-app/main/default/lwc/tabs/tabs.js-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>false</isExposed>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/tabsWrapper/tabsWrapper.html b/force-app/main/default/lwc/tabsWrapper/tabsWrapper.html
new file mode 100644
index 0000000..cab93c5
--- /dev/null
+++ b/force-app/main/default/lwc/tabsWrapper/tabsWrapper.html
@@ -0,0 +1,18 @@
+<template>
+ <c-example-wrapper
+ icon-name="custom:custom44"
+ lwc="tabs"
+ title="Tabs"
+ visualforce="tabs"
+ visualforce-height="60px"
+ >
+ <c-tabs slot="lwc"></c-tabs>
+
+ <!-- prettier-ignore -->
+ <p>
+ Use <a target="_blank" href="https://developer.salesforce.com/docs/component-library/bundle/lightning-tabset">
+ lightning-tabset</a> and <a target="_blank" href="https://developer.salesforce.com/docs/component-library/bundle/lightning-tab">
+ lightning-tab</a> to replace apex:tabPanel and apex:tab.
+ </p>
+ </c-example-wrapper>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/tabsWrapper/tabsWrapper.js b/force-app/main/default/lwc/tabsWrapper/tabsWrapper.js
new file mode 100644
index 0000000..8e5d2bd
--- /dev/null
+++ b/force-app/main/default/lwc/tabsWrapper/tabsWrapper.js
@@ -0,0 +1,3 @@
+import { LightningElement } from 'lwc';
+
+export default class TabsWrapper extends LightningElement {}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/tabsWrapper/tabsWrapper.js-meta.xml b/force-app/main/default/lwc/tabsWrapper/tabsWrapper.js-meta.xml
new file mode 100644
index 0000000..6646900
--- /dev/null
+++ b/force-app/main/default/lwc/tabsWrapper/tabsWrapper.js-meta.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__AppPage</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/tenderLost/tenderLost.js b/force-app/main/default/lwc/tenderLost/tenderLost.js
index 62ce018..6530e03 100644
--- a/force-app/main/default/lwc/tenderLost/tenderLost.js
+++ b/force-app/main/default/lwc/tenderLost/tenderLost.js
@@ -78,9 +78,6 @@
onsearchchangePTKS(event){
var searchContentStr = event.detail.searchContent;
- if(!searchContentStr){
- this.opp.AccountId = "";
- }
console.log('hospitals: ' + this.hospitals);
SearchPTKS({content:searchContentStr, hospitals:this.hospitals}).then(response=>{
var datas = JSON.parse(response);
@@ -91,7 +88,6 @@
PTKSId = '';
selectedPTKS(event)
{
- debugger
console.warn(event.detail.selectdata.Id);
this.opp.AccountId = event.detail.selectdata.Id;
}
@@ -108,7 +104,7 @@
//淇濆瓨鏁版嵁閫昏緫
saveFn(){
- if(this.opp.Fund_Basis__c == undefined || this.opp.Sales_Method__c == undefined || this.opp.AccountId == undefined ||this.opp.Fund_Basis__c == "" || this.opp.Sales_Method__c == "" || this.opp.AccountId == "" ){
+ if(this.opp.Fund_Basis__c == undefined || this.opp.Sales_Method__c == undefined || this.opp.AccountId == undefined){
this.Alert("璇蜂笉瑕佽緭鍏ョ┖鍝︺��",false,true);
}else{
this.OnLoading(true);
diff --git a/force-app/main/default/lwc/test/test.html b/force-app/main/default/lwc/test/test.html
new file mode 100644
index 0000000..af9fa97
--- /dev/null
+++ b/force-app/main/default/lwc/test/test.html
@@ -0,0 +1,3 @@
+<template>
+
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/test/test.js b/force-app/main/default/lwc/test/test.js
new file mode 100644
index 0000000..3c5b666
--- /dev/null
+++ b/force-app/main/default/lwc/test/test.js
@@ -0,0 +1,5 @@
+import { LightningElement, track, wire } from 'lwc';
+
+export default class test extends LightningElement {
+
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/test/test.js-meta.xml b/force-app/main/default/lwc/test/test.js-meta.xml
new file mode 100644
index 0000000..cd860f7
--- /dev/null
+++ b/force-app/main/default/lwc/test/test.js-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="test">
+ <apiVersion>51.0</apiVersion>
+ <isExposed>true</isExposed>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/testPaginated/__tests__/testPaginated.test.js b/force-app/main/default/lwc/testPaginated/__tests__/testPaginated.test.js
new file mode 100644
index 0000000..f1cc319
--- /dev/null
+++ b/force-app/main/default/lwc/testPaginated/__tests__/testPaginated.test.js
@@ -0,0 +1,25 @@
+import { createElement } from 'lwc';
+import TestPaginated from 'c/testPaginated';
+
+describe('c-test-paginated', () => {
+ afterEach(() => {
+ // The jsdom instance is shared across test cases in a single file so reset the DOM
+ while (document.body.firstChild) {
+ document.body.removeChild(document.body.firstChild);
+ }
+ });
+
+ it('TODO: test case generated by CLI command, please fill in test logic', () => {
+ // Arrange
+ const element = createElement('c-test-paginated', {
+ is: TestPaginated
+ });
+
+ // Act
+ document.body.appendChild(element);
+
+ // Assert
+ // const div = element.shadowRoot.querySelector('div');
+ expect(1).toBe(1);
+ });
+});
\ No newline at end of file
diff --git a/force-app/main/default/lwc/testPaginated/testPaginated.html b/force-app/main/default/lwc/testPaginated/testPaginated.html
new file mode 100644
index 0000000..9034aa2
--- /dev/null
+++ b/force-app/main/default/lwc/testPaginated/testPaginated.html
@@ -0,0 +1,3 @@
+<template>
+ <c-paginated-list slot="lwc"></c-paginated-list>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/testPaginated/testPaginated.js b/force-app/main/default/lwc/testPaginated/testPaginated.js
new file mode 100644
index 0000000..99a983f
--- /dev/null
+++ b/force-app/main/default/lwc/testPaginated/testPaginated.js
@@ -0,0 +1,3 @@
+import { LightningElement } from 'lwc';
+
+export default class TestPaginated extends LightningElement {}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/testPaginated/testPaginated.js-meta.xml b/force-app/main/default/lwc/testPaginated/testPaginated.js-meta.xml
new file mode 100644
index 0000000..5b31309
--- /dev/null
+++ b/force-app/main/default/lwc/testPaginated/testPaginated.js-meta.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>56.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__AppPage</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/toolbar/toolbar.css b/force-app/main/default/lwc/toolbar/toolbar.css
new file mode 100644
index 0000000..49f9811
--- /dev/null
+++ b/force-app/main/default/lwc/toolbar/toolbar.css
@@ -0,0 +1,3 @@
+lightning-input {
+ max-width: 130px;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/toolbar/toolbar.html b/force-app/main/default/lwc/toolbar/toolbar.html
new file mode 100644
index 0000000..7206446
--- /dev/null
+++ b/force-app/main/default/lwc/toolbar/toolbar.html
@@ -0,0 +1,31 @@
+<template>
+ <div class="slds-var-page-header">
+ <lightning-layout vertical-align="center" multiple-rows="true">
+ <lightning-layout-item>
+ <ul
+ class="slds-list_horizontal slds-has-dividers_left slds-has-block-links"
+ >
+ <template for:each={links} for:item="link">
+ <li class="slds-item" key={link.value}>
+ <lightning-formatted-url
+ value={link.value}
+ label={link.label}
+ >
+ </lightning-formatted-url>
+ </li>
+ </template>
+ </ul>
+ </lightning-layout-item>
+ <lightning-layout-item alignment-bump="left">
+ <lightning-input
+ label="Search"
+ type="search"
+ variant="label-hidden"
+ placeholder="Search..."
+ onchange={handleInputChange}
+ >
+ </lightning-input>
+ </lightning-layout-item>
+ </lightning-layout>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/toolbar/toolbar.js b/force-app/main/default/lwc/toolbar/toolbar.js
new file mode 100644
index 0000000..eb64a92
--- /dev/null
+++ b/force-app/main/default/lwc/toolbar/toolbar.js
@@ -0,0 +1,19 @@
+import { LightningElement } from 'lwc';
+
+export default class Toolbar extends LightningElement {
+ links = [
+ {
+ value: 'https://www.salesforce.com',
+ label: 'Salesforce'
+ },
+ {
+ value: 'https://developer.salesforce.com',
+ label: 'Devs'
+ }
+ ];
+
+ handleInputChange(event) {
+ // eslint-disable-next-line no-console
+ console.log(event.target.value);
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/toolbar/toolbar.js-meta.xml b/force-app/main/default/lwc/toolbar/toolbar.js-meta.xml
new file mode 100644
index 0000000..b9a3113
--- /dev/null
+++ b/force-app/main/default/lwc/toolbar/toolbar.js-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>false</isExposed>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/toolbarWrapper/toolbarWrapper.html b/force-app/main/default/lwc/toolbarWrapper/toolbarWrapper.html
new file mode 100644
index 0000000..9eb31ab
--- /dev/null
+++ b/force-app/main/default/lwc/toolbarWrapper/toolbarWrapper.html
@@ -0,0 +1,18 @@
+<template>
+ <c-example-wrapper
+ icon-name="custom:custom44"
+ lwc="toolbar"
+ title="Toolbar"
+ visualforce="toolbar"
+ visualforce-height="30px"
+ >
+ <c-toolbar slot="lwc"></c-toolbar>
+
+ <!-- prettier-ignore -->
+ <p>
+ Use <a target="_blank" href="https://developer.salesforce.com/docs/component-library/bundle/lightning-layout">
+ lightning-layout</a> and <a target="_blank" href="https://developer.salesforce.com/docs/component-library/bundle/lightning-layout-item">
+ lightning-layout-item</a> to replace apex:toolbarGroup and apex:toolbar.
+ </p>
+ </c-example-wrapper>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/toolbarWrapper/toolbarWrapper.js b/force-app/main/default/lwc/toolbarWrapper/toolbarWrapper.js
new file mode 100644
index 0000000..bb13cbf
--- /dev/null
+++ b/force-app/main/default/lwc/toolbarWrapper/toolbarWrapper.js
@@ -0,0 +1,3 @@
+import { LightningElement } from 'lwc';
+
+export default class ToolbarWrapper extends LightningElement {}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/toolbarWrapper/toolbarWrapper.js-meta.xml b/force-app/main/default/lwc/toolbarWrapper/toolbarWrapper.js-meta.xml
new file mode 100644
index 0000000..6646900
--- /dev/null
+++ b/force-app/main/default/lwc/toolbarWrapper/toolbarWrapper.js-meta.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__AppPage</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/topPageLwc/topPageLwc.html b/force-app/main/default/lwc/topPageLwc/topPageLwc.html
new file mode 100644
index 0000000..0c219ae
--- /dev/null
+++ b/force-app/main/default/lwc/topPageLwc/topPageLwc.html
@@ -0,0 +1,237 @@
+<template>
+ <div style="border: 1px solid #D4D4D4;border-radius:5px;">
+ <div style="border-top: 3px solid #51606E;;border-bottom: 1px solid #D4D4D4;padding:3px;">
+ <p style="font-size: 19px;"><strong>棣栭〉</strong></p>
+ </div>
+ <div style="padding:10px;">
+ <template if:true={over_view}>
+ <div style="border: 1px solid #D4D4D4;border-radius:5px;margin-bottom:7px;">
+ <div style="border-top: 3px solid #51606E;border-bottom: 1px solid #D4D4D4;padding:3px;">
+ <p style="font-size: 16px;"><strong>鏈叏閮ㄥ彂璐ц鍗曟槑缁�</strong></p>
+ </div>
+ <div style="padding:10px;">
+ <table>
+ <thead>
+ <tr>
+ <template for:each={title} for:item="t">
+ <th key={t} scope="col" >
+ <div class="slds-truncate">{t}</div>
+ </th>
+ </template>
+ </tr>
+ </thead>
+ <tbody>
+ <template for:each={raesList} for:item="raes">
+ <tr key={raes.Id}>
+ <td>{raes.Name}</td>
+ <td>{raes.ContractNo__c}</td>
+ <td>{raes.Total_num__c}</td>
+ <td>{raes.OrderNumber_arrived__c}</td>
+ <td>{raes.Delivery_detail_count__c}</td>
+ <td>{raes.OrderNumber_notarrive__c}</td>
+ <td>{raes.More_than_seven_days__c}</td>
+ <td>{raes.Shipment_date__c}</td>
+ <td>{raes.First_Delivery__c}</td>
+ </tr>
+ </template>
+ <!-- <tr>
+ <td style="text-align: center;" class="dataCell">寰呮搷浣滃叆搴撹鍗曟眹鎬�</td>
+ <td style="text-align: center;" class="dataCell"></td>
+ </tr> -->
+ </tbody>
+ </table>
+ </div>
+ </div>
+ </template>
+ <template if:true={overlimit}>
+ <div style="border: 1px solid #D4D4D4;border-radius:5px;margin-bottom:7px;">
+ <div style="border-top: 3px solid #51606E;border-bottom: 1px solid #D4D4D4;padding:3px;">
+ <p style="font-size: 16px;"><strong>浣跨敤鏈熼檺灏忎簬涓�骞寸殑浜у搧</strong></p>
+ </div>
+ <div style="padding:10px;">
+ <table class="list" border="0" style="border-collapse:collapse;table-layout:fixed;border: 1px solid #e0e3e5;border-spacing:0;width:100%" >
+ <tr class="headerRow">
+ <th>浜у搧鍨嬪彿</th>
+ <th style="text-align: center;">鏁伴噺</th>
+ <th>鍗曚綅</th>
+ </tr>
+ <tbody>
+ <template for:each={overlimitdateorderdetails} for:item="cases">
+ <tr key={cases.prodName}>
+ <td class="dataCell" style="width: 300px;">{cases.prodName}</td>
+ <td class="dataCell" style="text-align: center;width: 100px;">{cases.countid}</td>
+ <td class="dataCell" style="width: 300px;">{cases.BoxPiece}</td>
+ </tr>
+ </template>
+ </tbody>
+ </table>
+ </div>
+ </div>
+ </template>
+ <div style="border: 1px solid #D4D4D4;border-radius:5px;margin-bottom:7px;">
+ <div style="border-top: 3px solid #51606E;border-bottom: 1px solid #D4D4D4;padding:3px;">
+ <p style="font-size: 16px;"><strong>缁忛攢鍟嗕俊鎭�</strong></p>
+ </div>
+ <div style="padding:10px;">
+ <lightning-accordion allow-multiple-sections-open active-section-name={activeSections}>
+ <lightning-record-view-form record-id={accountId} object-api-name="Account">
+ <lightning-accordion-section label="缁忛攢鍟嗚缁嗕俊鎭�" name="A">
+ <lightning-layout multiple-rows="true">
+ <lightning-layout-item size="6">
+ <lightning-output-field field-name="Management_Code__c"></lightning-output-field>
+ </lightning-layout-item>
+ <lightning-layout-item size="6">
+ <lightning-output-field field-name="Name"></lightning-output-field>
+ </lightning-layout-item>
+ <lightning-layout-item size="6">
+ <lightning-output-field field-name="Ban_On_Use_Date__c"></lightning-output-field>
+ </lightning-layout-item>
+ <lightning-layout-item size="6">
+ <lightning-output-field field-name="Ban_On_Use_Reason__c"></lightning-output-field>
+ </lightning-layout-item>
+ <lightning-layout-item size="6">
+ <lightning-output-field field-name="Dealer_discount__c"></lightning-output-field>
+ </lightning-layout-item>
+ <lightning-layout-item size="6">
+ <lightning-output-field field-name="Sales_Shop_Class__c"></lightning-output-field>
+ </lightning-layout-item>
+ <lightning-layout-item size="6">
+ <lightning-output-field field-name="Deposit_Receipt_Finished__c"></lightning-output-field>
+ </lightning-layout-item>
+ <lightning-layout-item size="6">
+ <lightning-output-field field-name="Deposit_Receipt_Completion_Day__c"></lightning-output-field>
+ </lightning-layout-item>
+ </lightning-layout>
+ </lightning-accordion-section>
+ <lightning-accordion-section label="钀ヤ笟璁稿彲璇佷功鐘跺喌" name="B">
+ <lightning-layout multiple-rows="true">
+ <lightning-layout-item size="6">
+ <lightning-output-field field-name="Business_Authorization_No__c"></lightning-output-field>
+ </lightning-layout-item>
+ <lightning-layout-item size="6">
+ <lightning-output-field field-name="Business_Paper_Expiration_Date__c"></lightning-output-field>
+ </lightning-layout-item>
+ <lightning-layout-item size="6">
+ <lightning-output-field field-name="Tax_Practice_No__c"></lightning-output-field>
+ </lightning-layout-item>
+ <lightning-layout-item size="6">
+ <lightning-output-field field-name="Tax_Practice_Expiration_Date__c"></lightning-output-field>
+ </lightning-layout-item>
+ <lightning-layout-item size="6">
+ <lightning-output-field field-name="Medical_Equipment_Num__c"></lightning-output-field>
+ </lightning-layout-item>
+ <lightning-layout-item size="6">
+ <lightning-output-field field-name="Medical_Equipment_Expiration_Date__c"></lightning-output-field>
+ </lightning-layout-item>
+ </lightning-layout>
+ </lightning-accordion-section>
+ <lightning-accordion-section label="鍦板潃淇℃伅" name="C">
+ <lightning-layout multiple-rows="true">
+ <lightning-layout-item size="6">
+ <lightning-output-field field-name="Postal_Code__c"></lightning-output-field>
+ </lightning-layout-item>
+ <lightning-layout-item size="6">
+ <lightning-output-field field-name="Phone"></lightning-output-field>
+ </lightning-layout-item>
+ <lightning-layout-item size="6">
+ <lightning-output-field field-name="Address_Together__c"></lightning-output-field>
+ </lightning-layout-item>
+ <lightning-layout-item size="6">
+ <lightning-output-field field-name="Fax"></lightning-output-field>
+ </lightning-layout-item>
+ </lightning-layout>
+ </lightning-accordion-section>
+ </lightning-record-view-form>
+ </lightning-accordion>
+ </div>
+ </div>
+ <div style="border: 1px solid #D4D4D4;border-radius:5px;margin-bottom:7px;">
+ <div style="border-top: 3px solid #51606E;border-bottom: 1px solid #D4D4D4;padding:3px;">
+ <p style="font-size: 16px;"><strong>缁忛攢鍟嗗簱瀛樹笂涓嬮檺</strong></p>
+ </div>
+ <div style="padding:10px;">
+ <div lwc:dom="manual" id="resultDiv" class="resultDiv"></div>
+ <div draggable="false" >
+ <lightning-button label="缁忛攢鍟嗕骇鍝佷笂涓嬮檺缂栬緫" style="width: 200px;" onclick={editProductLimit}></lightning-button>
+ <!-- <lightning-button label="鏌ヨ閲嶅鐨勪骇鍝�" style="width: 200px;"></lightning-button> -->
+ <!-- <apex:commandButton value="缁忛攢鍟嗕骇鍝佷笂涓嬮檺缂栬緫" style="width: 200px;" onclick="EditProductLimitJs(); return false;" />
+ <apex:commandButton value="鏌ヨ閲嶅鐨勪骇鍝�" style="width: 200px;" onclick="ProfilterJs(); return false;" rendered="false" /> -->
+ </div>
+ </div>
+ </div>
+ <!-- <apex:outputPanel id="message">
+ <apex:pageMessages />
+ </apex:outputPanel> -->
+ <div style="border: 1px solid #D4D4D4;border-radius:5px;margin-bottom:7px;">
+ <div style="border-top: 3px solid #51606E;border-bottom: 1px solid #D4D4D4;padding:3px;">
+ <p style="font-size: 16px;"><strong>鍦ㄥ簱鍟嗗搧搴撳瓨涓�瑙�</strong></p>
+ </div>
+ <div style="padding:10px;">
+ <table class="list" border="0" cellpadding="0" cellspacing="0" id="example">
+ <thead>
+ <tr class="headerRow">
+ <th>娑堣�楀搧鍚嶇О</th>
+ <th>瑙勬牸</th>
+ <th>绗�3鍒嗙被</th>
+ <th>绗�4鍒嗙被</th>
+ <th>绗�5鍒嗙被</th>
+ <th>CFDA鐘舵��</th>
+ <th>娉ㄥ唽璇佺紪鐮佸彿</th>
+ <th>娉ㄥ唽璇佹晥鏈�</th>
+ <th>浜у搧鏁伴噺涓嬮檺</th>
+ <th>浣跨敤鏈熼檺</th>
+ <th>鏈夋晥鏈熷唴搴撳瓨</th>
+ <th>杩囨湡搴撳瓨</th>
+ <th>鍗曚綅</th>
+ <template if:true={hasHos}>
+ <th>鍖婚櫌鐗逛环</th>
+ </template>
+ </tr>
+ </thead>
+ <tbody>
+ <template for:each={pageRecords} for:item="m">
+ <tr key={m.Prod.Name__c}>
+ <td>{m.Prod.Name__c}</td>
+ <td>{m.packing_list}</td>
+ <td>{m.Prod.Category3__c}</td>
+ <td>{m.Prod.Category4__c}</td>
+ <td>{m.Prod.Category5__c}</td>
+ <td>{m.Prod.SFDA_Status__c}</td>
+ <td>{m.approbation_No}</td>
+ <td>{m.expiration_Date}</td>
+ <td>{m.lowerlimit}</td>
+ <td>{m.guaranteeperiod}</td>
+ <td>{m.limitCount}</td>
+ <td>{m.overlimitCount}</td>
+ <td>{m.BoxPiece}</td>
+ <template if:true={hasHos}>
+ <td>
+ <template if:true={m.hospitalSpecialOffer}>
+ 鈭�
+ </template>
+ </td>
+ </template>
+ </tr>
+ </template>
+ </tbody>
+ </table>
+ <!-- <table style="width: 100%">
+ <tbody>
+ <tr>
+ <td width="20%">
+ 1-0 鍏� 0
+ </td>
+ <td align="center" width="60%">
+ <lightning-button-icon style="margin: 3px;" icon-name="utility:jump_to_left"></lightning-button-icon>
+ <lightning-button-icon style="margin: 3px;" icon-name="utility:chevronleft"></lightning-button-icon>
+ <lightning-button-icon style="margin: 3px;" icon-name="utility:chevronright"></lightning-button-icon>
+ <lightning-button-icon style="margin: 3px;" icon-name="utility:jump_to_right"></lightning-button-icon>
+ </td>
+ </tr>
+ </tbody>
+ </table> -->
+ </div>
+ </div>
+ </div>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/topPageLwc/topPageLwc.js b/force-app/main/default/lwc/topPageLwc/topPageLwc.js
new file mode 100644
index 0000000..06acd8a
--- /dev/null
+++ b/force-app/main/default/lwc/topPageLwc/topPageLwc.js
@@ -0,0 +1,138 @@
+import { LightningElement,wire,api,track } from 'lwc';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+import { NavigationMixin } from 'lightning/navigation';
+import initPage from '@salesforce/apex/TopPageLwcController.initPage';
+
+export default class TopPageLwc extends NavigationMixin(LightningElement) {
+
+ @track title = [];
+ @track raesList = [];
+ @track column = [];
+ @track overlimitdateorderdetails = [];
+ @track accountInfo;
+ @track accountId;
+ @track pageRecords = [];
+ @track csvData = [];
+ @track product_Limit;
+ @track over_view = false;
+ @track overlimit = false;
+ @track hasHos = false;
+ @track activeSections = ['A', 'B','C'];
+ @track isRender = false;
+ @track consumableorderdetailsRecordsview;
+
+
+ connectedCallback(){
+ initPage()
+ .then(result=>{
+ if(result.result == 'Success'){
+ this.title = result.title;
+ this.raesList = result.raesList;
+ this.column = result.column;
+ this.accountInfo = result.accountInfo;
+ this.accountId = result.accountInfo.Id;
+ this.pageRecords = result.pageRecords;
+ this.overlimitdateorderdetails = result.overlimitdateorderdetails;
+ this.over_view = result.over_view;
+ this.overlimit = result.overlimit;
+ this.hasHos = result.hasHos;
+ this.product_Limit = result.product_Limit;
+ this.consumableorderdetailsRecordsview = result.consumableorderdetailsRecordsview;
+ console.log('this.accountId:'+this.accountId);
+ console.log('this.accountInfo:'+JSON.stringify(this.accountInfo));
+ }else{
+ console.log("Error:"+result.errorMsg);
+ const evt = new ShowToastEvent({
+ title : '鍒濆鍖栭〉闈㈠け璐�',
+ message: result.errorMsg,
+ variant: 'error'
+ });
+ this.dispatchEvent(evt);
+ }
+ });
+ }
+
+ renderedCallback(){
+ if(!this.isRender){
+ this.isRender = true;
+ var tableStr = productLimitTableJs(this.product_Limit);
+ const container = this.template.querySelector('div.resultDiv');
+ container.innerHTML = tableStr;
+ }
+
+ function productLimitTableJs(str){
+ var csv_data = new Array();
+ if(str != null && str != ''){
+ csv_data = productlist(str);
+ }
+ var table = '<table border="0" cellpadding="0" cellspacing="0" class="list" Id = "tab1"><tr class="headerRow"><th>浜у搧鍨嬪彿</th><th>搴撳瓨涓嬮檺</th><th>搴撳瓨涓婇檺</th></tr>';
+ for (var i = 0; i < csv_data.length; i++) {
+ table = table + '<tr class="dataRow">';
+ var row = csv_data[i];
+ for (var j = 0; j < row.length; j++) {
+ table = table + '<td class="dataCell" style="text-align: center" id = "input' + j +'">';
+ var colu = row[j];
+ table = table + colu + '</td>';
+ }
+ table = table + '</tr>';
+ }
+ var table = table + '</table>';
+ return table;
+ }
+
+ function productlist(text_data) {
+ var records = new Array();
+ var record = new Array();
+ var column = new Array();
+ var quot_flg = false;
+ for (var i = 0; i < text_data.size(); i++) {
+ var ch = text_data.charAt(i);
+ if (ch == ',') {
+ if (quot_flg) {
+ column.push(',');
+ } else {
+ record.push(column.join(''));
+ column = new Array();
+ records.push(record);
+ record = new Array();
+ }
+ } else if (ch == '|') {
+ if (quot_flg) {
+ column.push('|');
+ } else {
+ record.push(column.join(''));
+ column = new Array();
+ }
+ } else if (ch == '"') {
+ if (quot_flg) {
+ if ((i + 1) < text_data.size() && text_data.charAt((i + 1)) == '"') {
+ i++;
+ column.push('"');
+ } else {
+ quot_flg = false;
+ }
+ } else {
+ quot_flg = true;
+ }
+ } else {
+ column.push(ch);
+ }
+ }
+ if (record.length != 0) {
+ record.push(column.join(''));
+ records.push(record);
+ }
+ return records;
+ }
+ }
+
+ editProductLimit(event){
+ const config = {
+ type: 'standard__webPage',
+ attributes: {
+ url: '/LexProductLimitEdit'
+ }
+ };
+ this[NavigationMixin.Navigate](config);
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/topPageLwc/topPageLwc.js-meta.xml b/force-app/main/default/lwc/topPageLwc/topPageLwc.js-meta.xml
new file mode 100644
index 0000000..d893635
--- /dev/null
+++ b/force-app/main/default/lwc/topPageLwc/topPageLwc.js-meta.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>56.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightningCommunity__Page</target>
+ <target>lightningCommunity__Default</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/viewRecord/viewRecord.html b/force-app/main/default/lwc/viewRecord/viewRecord.html
new file mode 100644
index 0000000..aae491a
--- /dev/null
+++ b/force-app/main/default/lwc/viewRecord/viewRecord.html
@@ -0,0 +1,10 @@
+<template>
+ <lightning-record-form
+ record-id={recordId}
+ object-api-name={objectApiName}
+ columns="2"
+ mode="readonly"
+ fields={fields}
+ >
+ </lightning-record-form>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/viewRecord/viewRecord.js b/force-app/main/default/lwc/viewRecord/viewRecord.js
new file mode 100644
index 0000000..154a104
--- /dev/null
+++ b/force-app/main/default/lwc/viewRecord/viewRecord.js
@@ -0,0 +1,18 @@
+import { LightningElement, api } from 'lwc';
+import ACCOUNT_OBJECT from '@salesforce/schema/Account';
+import ACCOUNT_NAME_FIELD from '@salesforce/schema/Account.Name';
+import ACCOUNT_TYPE_FIELD from '@salesforce/schema/Account.Type';
+import ACCOUNT_PHONE_FIELD from '@salesforce/schema/Account.Phone';
+import ACCOUNT_EMPLOYEES_FIELD from '@salesforce/schema/Account.NumberOfEmployees';
+
+export default class ViewRecord extends LightningElement {
+ @api recordId;
+ objectApiName = ACCOUNT_OBJECT;
+
+ fields = [
+ ACCOUNT_NAME_FIELD,
+ ACCOUNT_TYPE_FIELD,
+ ACCOUNT_PHONE_FIELD,
+ ACCOUNT_EMPLOYEES_FIELD
+ ];
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/viewRecord/viewRecord.js-meta.xml b/force-app/main/default/lwc/viewRecord/viewRecord.js-meta.xml
new file mode 100644
index 0000000..b9a3113
--- /dev/null
+++ b/force-app/main/default/lwc/viewRecord/viewRecord.js-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>false</isExposed>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/viewRecordWithParentRecordData/viewRecordWithParentRecordData.html b/force-app/main/default/lwc/viewRecordWithParentRecordData/viewRecordWithParentRecordData.html
new file mode 100644
index 0000000..56f574c
--- /dev/null
+++ b/force-app/main/default/lwc/viewRecordWithParentRecordData/viewRecordWithParentRecordData.html
@@ -0,0 +1,30 @@
+<template>
+ <lightning-record-view-form
+ record-id={recordId}
+ object-api-name={accountObject}
+ >
+ <div class="slds-grid slds-wrap">
+ <div class="slds-col slds-size_1-of-2">
+ <lightning-output-field field-name={accountNameField}>
+ </lightning-output-field>
+ </div>
+ <div class="slds-col slds-size_1-of-2">
+ <lightning-output-field field-name={accountTypeField}>
+ </lightning-output-field>
+ </div>
+ <div class="slds-col slds-size_1-of-2">
+ <lightning-output-field field-name={accountPhoneField}>
+ </lightning-output-field>
+ </div>
+ <div class="slds-col slds-size_1-of-2">
+ <div class="slds-form-element">
+ <span class="slds-form-element__label">Owner Name</span>
+ <div class="slds-form-element__control">
+ <lightning-formatted-text value={ownerNameValue}>
+ </lightning-formatted-text>
+ </div>
+ </div>
+ </div>
+ </div>
+ </lightning-record-view-form>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/viewRecordWithParentRecordData/viewRecordWithParentRecordData.js b/force-app/main/default/lwc/viewRecordWithParentRecordData/viewRecordWithParentRecordData.js
new file mode 100644
index 0000000..54e77af
--- /dev/null
+++ b/force-app/main/default/lwc/viewRecordWithParentRecordData/viewRecordWithParentRecordData.js
@@ -0,0 +1,28 @@
+import { LightningElement, api, wire } from 'lwc';
+import { getRecord, getFieldValue } from 'lightning/uiRecordApi';
+import ACCOUNT_OBJECT from '@salesforce/schema/Account';
+import ACCOUNT_NAME_FIELD from '@salesforce/schema/Account.Name';
+import ACCOUNT_TYPE_FIELD from '@salesforce/schema/Account.Type';
+import ACCOUNT_PHONE_FIELD from '@salesforce/schema/Account.Phone';
+import ACCOUNT_OWNER_NAME_FIELD from '@salesforce/schema/Account.Owner.Name';
+
+export default class ViewRecordWithParentRecordData extends LightningElement {
+ @api recordId;
+
+ accountObject = ACCOUNT_OBJECT;
+ accountNameField = ACCOUNT_NAME_FIELD;
+ accountTypeField = ACCOUNT_TYPE_FIELD;
+ accountPhoneField = ACCOUNT_PHONE_FIELD;
+
+ @wire(getRecord, {
+ recordId: '$recordId',
+ fields: [ACCOUNT_OWNER_NAME_FIELD]
+ })
+ record;
+
+ get ownerNameValue() {
+ return this.record && this.record.data
+ ? getFieldValue(this.record.data, ACCOUNT_OWNER_NAME_FIELD)
+ : '';
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/viewRecordWithParentRecordData/viewRecordWithParentRecordData.js-meta.xml b/force-app/main/default/lwc/viewRecordWithParentRecordData/viewRecordWithParentRecordData.js-meta.xml
new file mode 100644
index 0000000..b9a3113
--- /dev/null
+++ b/force-app/main/default/lwc/viewRecordWithParentRecordData/viewRecordWithParentRecordData.js-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>false</isExposed>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/viewRecordWithParentRecordDataWrapper/viewRecordWithParentRecordDataWrapper.html b/force-app/main/default/lwc/viewRecordWithParentRecordDataWrapper/viewRecordWithParentRecordDataWrapper.html
new file mode 100644
index 0000000..83f7816
--- /dev/null
+++ b/force-app/main/default/lwc/viewRecordWithParentRecordDataWrapper/viewRecordWithParentRecordDataWrapper.html
@@ -0,0 +1,22 @@
+<template>
+ <c-example-wrapper
+ icon-name="standard:account"
+ lwc="viewRecordWithParentRecordData"
+ title="View Record with Parent Record Data"
+ visualforce="viewRecordWithParentRecordData"
+ record-id={recordId}
+ visualforce-height="180px"
+ >
+ <c-view-record-with-parent-record-data
+ record-id={recordId}
+ slot="lwc"
+ ></c-view-record-with-parent-record-data>
+
+ <!-- prettier-ignore -->
+ <p>
+ Combine <a target="_blank" href="https://developer.salesforce.com/docs/component-library/documentation/lwc/data_load_record">
+ base form components</a> with the <a target="_blank" href="https://developer.salesforce.com/docs/component-library/documentation/lwc/reference_wire_adapters_record.html">
+ getRecord</a> LDS wire adapter to read single records and include parent record data.
+ </p>
+ </c-example-wrapper>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/viewRecordWithParentRecordDataWrapper/viewRecordWithParentRecordDataWrapper.js b/force-app/main/default/lwc/viewRecordWithParentRecordDataWrapper/viewRecordWithParentRecordDataWrapper.js
new file mode 100644
index 0000000..bf3f038
--- /dev/null
+++ b/force-app/main/default/lwc/viewRecordWithParentRecordDataWrapper/viewRecordWithParentRecordDataWrapper.js
@@ -0,0 +1,5 @@
+import { LightningElement, api } from 'lwc';
+
+export default class ViewRecordWithParentRecordDataWrapper extends LightningElement {
+ @api recordId;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/viewRecordWithParentRecordDataWrapper/viewRecordWithParentRecordDataWrapper.js-meta.xml b/force-app/main/default/lwc/viewRecordWithParentRecordDataWrapper/viewRecordWithParentRecordDataWrapper.js-meta.xml
new file mode 100644
index 0000000..08bfebb
--- /dev/null
+++ b/force-app/main/default/lwc/viewRecordWithParentRecordDataWrapper/viewRecordWithParentRecordDataWrapper.js-meta.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/viewRecordWrapper/viewRecordWrapper.html b/force-app/main/default/lwc/viewRecordWrapper/viewRecordWrapper.html
new file mode 100644
index 0000000..c7ce6f4
--- /dev/null
+++ b/force-app/main/default/lwc/viewRecordWrapper/viewRecordWrapper.html
@@ -0,0 +1,20 @@
+<template>
+ <c-example-wrapper
+ icon-name="standard:account"
+ lwc="viewRecord"
+ title="View Record"
+ visualforce="viewRecord"
+ record-id={recordId}
+ visualforce-height="170px"
+ >
+ <c-view-record record-id={recordId} slot="lwc"></c-view-record>
+
+ <!-- prettier-ignore -->
+ <p>
+ Use <a target="_blank" href="https://developer.salesforce.com/docs/component-library/bundle/lightning-record-form">
+ lightning-record-form</a> in view mode to read records as first option.
+ Use <a target="_blank" href="https://developer.salesforce.com/docs/component-library/bundle/lightning-record-view-form">
+ lightning-record-view-form</a> if you want to use a custom layout.
+ </p>
+ </c-example-wrapper>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/viewRecordWrapper/viewRecordWrapper.js b/force-app/main/default/lwc/viewRecordWrapper/viewRecordWrapper.js
new file mode 100644
index 0000000..56cede6
--- /dev/null
+++ b/force-app/main/default/lwc/viewRecordWrapper/viewRecordWrapper.js
@@ -0,0 +1,5 @@
+import { LightningElement, api } from 'lwc';
+
+export default class ViewRecordWrapper extends LightningElement {
+ @api recordId;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/viewRecordWrapper/viewRecordWrapper.js-meta.xml b/force-app/main/default/lwc/viewRecordWrapper/viewRecordWrapper.js-meta.xml
new file mode 100644
index 0000000..08bfebb
--- /dev/null
+++ b/force-app/main/default/lwc/viewRecordWrapper/viewRecordWrapper.js-meta.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/viewVfLwcSource/viewVfLwcSource.css b/force-app/main/default/lwc/viewVfLwcSource/viewVfLwcSource.css
new file mode 100644
index 0000000..8e7eaba
--- /dev/null
+++ b/force-app/main/default/lwc/viewVfLwcSource/viewVfLwcSource.css
@@ -0,0 +1,3 @@
+:host {
+ text-align: left;
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/viewVfLwcSource/viewVfLwcSource.html b/force-app/main/default/lwc/viewVfLwcSource/viewVfLwcSource.html
new file mode 100644
index 0000000..6285a20
--- /dev/null
+++ b/force-app/main/default/lwc/viewVfLwcSource/viewVfLwcSource.html
@@ -0,0 +1,21 @@
+<template>
+ <div class="slds-color__text_gray-9 slds-var-m-bottom_small">
+ <slot></slot>
+ </div>
+ <lightning-layout>
+ <lightning-layout-item>
+ <lightning-formatted-url
+ value={visualforceSourceURL}
+ label="View Visualforce source"
+ >
+ </lightning-formatted-url>
+ </lightning-layout-item>
+ <lightning-layout-item alignment-bump="left">
+ <lightning-formatted-url
+ value={lwcSourceURL}
+ label="View LWC source"
+ >
+ </lightning-formatted-url>
+ </lightning-layout-item>
+ </lightning-layout>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/viewVfLwcSource/viewVfLwcSource.js b/force-app/main/default/lwc/viewVfLwcSource/viewVfLwcSource.js
new file mode 100644
index 0000000..02547a8
--- /dev/null
+++ b/force-app/main/default/lwc/viewVfLwcSource/viewVfLwcSource.js
@@ -0,0 +1,17 @@
+import { LightningElement, api } from 'lwc';
+
+export default class ViewSource extends LightningElement {
+ _baseURL =
+ 'https://github.com/trailheadapps/visualforce-to-lwc/tree/master/force-app/main/default/';
+
+ @api lwcSource;
+ @api visualforceSource;
+
+ get lwcSourceURL() {
+ return this._baseURL + this.lwcSource;
+ }
+
+ get visualforceSourceURL() {
+ return this._baseURL + this.visualforceSource;
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/viewVfLwcSource/viewVfLwcSource.js-meta.xml b/force-app/main/default/lwc/viewVfLwcSource/viewVfLwcSource.js-meta.xml
new file mode 100644
index 0000000..b9a3113
--- /dev/null
+++ b/force-app/main/default/lwc/viewVfLwcSource/viewVfLwcSource.js-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>false</isExposed>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/package.xml b/force-app/main/default/package.xml
deleted file mode 100644
index 8d94da9..0000000
--- a/force-app/main/default/package.xml
+++ /dev/null
@@ -1,478 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<Package xmlns="http://soap.sforce.com/2006/04/metadata">
- <types>
- <members>*</members>
- <name>ApexClass</name>
- </types>
- <types>
- <members>*</members>
- <name>ApexComponent</name>
- </types>
- <types>
- <members>*</members>
- <name>ApexPage</name>
- </types>
- <types>
- <members>*</members>
- <name>ApexTrigger</name>
- </types>
- <types>
- <members>*</members>
- <name>AuraDefinitionBundle</name>
- </types>
- <types>
- <members>*</members>
- <name>CustomApplication</name>
- </types>
- <types>
- <members>*</members>
- <name>CustomApplicationComponent</name>
- </types>
- <types>
- <members>*</members>
- <name>CustomMetadata</name>
- </types>
- <types>
- <members>ASEActivity__c</members>
- <members>AWS_Integration_Info__mdt</members>
- <members>Account</members>
- <members>Account2__c</members>
- <members>AccountBrand</members>
- <members>AccountContactRole</members>
- <members>AccountTeamMember</members>
- <members>Account_Number_of_case__c</members>
- <members>Account_Number_of_target__c</members>
- <members>Account_Service_Of_Target__c</members>
- <members>Achievement_linkage__c</members>
- <members>Activity</members>
- <members>ActivityRecurrence2Exception</members>
- <members>Activity_History_Daily_Report__c</members>
- <members>Address_Level2__c</members>
- <members>Address_Level__c</members>
- <members>Address__c</members>
- <members>Advance_Payment__c</members>
- <members>Agency_Contact__c</members>
- <members>Agency_Hospital_Link__c</members>
- <members>Agency_Opportunity__c</members>
- <members>Agency_Report_Header__c</members>
- <members>Agency_Report__c</members>
- <members>Amount_Major_Product__c</members>
- <members>Application_for_Conference_Adjudication__c</members>
- <members>AssessmentReportStaff__c</members>
- <members>AssessmentReport__c</members>
- <members>Asset</members>
- <members>AssetHistory__c</members>
- <members>AssetMaintainDetail__c</members>
- <members>AssetMaintainHeader__c</members>
- <members>AssetModifyBelongsChangeDetail__c</members>
- <members>AssetModifyBelongsChange__c</members>
- <members>AssetRelationship</members>
- <members>Asset_EquipmentSet_Managment_Code__c</members>
- <members>Asset_Service_Of_Target__c</members>
- <members>AssistantProgress</members>
- <members>AssociatedLocation</members>
- <members>AuthorizationForm</members>
- <members>AuthorizationFormConsent</members>
- <members>AuthorizationFormDataUse</members>
- <members>AuthorizationFormText</members>
- <members>BI_OpportunityLineItem__c</members>
- <members>BI_Opportunity__c</members>
- <members>BI_Product2__c</members>
- <members>BI_Statu_Achievements__c</members>
- <members>BMEFollowup__c</members>
- <members>BSS_Master__c</members>
- <members>BackOrderOpen__c</members>
- <members>BackOrder__c</members>
- <members>Backorder_Comment__c</members>
- <members>BatchIF_Log__c</members>
- <members>BatchIF_Transfer__c</members>
- <members>Bid_Announcement__c</members>
- <members>Bulletin_Board__c</members>
- <members>BusinessBrand</members>
- <members>CIC__c</members>
- <members>CIC_and_product_middle_table__c</members>
- <members>CIC_case_and_product_middle_table__c</members>
- <members>Campaign</members>
- <members>CampaignLable__c</members>
- <members>CampaignMember</members>
- <members>CampaignMember__c</members>
- <members>Campaign_Cost__c</members>
- <members>CancelPostponePlan__c</members>
- <members>Case</members>
- <members>CaseContactRole</members>
- <members>ChatterActivity</members>
- <members>CollaborationGroup</members>
- <members>CollaborationGroupMember</members>
- <members>CommSubscription</members>
- <members>CommSubscriptionChannelType</members>
- <members>CommSubscriptionConsent</members>
- <members>CommSubscriptionTiming</members>
- <members>Comment_Sequence__c</members>
- <members>Common_Sequence__c</members>
- <members>Competition_Company__c</members>
- <members>Complaint__c</members>
- <members>ConsumApplySafetyStockMiddleTable__c</members>
- <members>Consum_Apply_Equipment_Set_Detail__c</members>
- <members>Consum_Apply_Equipment_Set__c</members>
- <members>Consum_Apply_Meta__mdt</members>
- <members>Consum_Apply__c</members>
- <members>Consum_Inventory_Detail__c</members>
- <members>ConsumableSales__c</members>
- <members>ConsumableSampleLineItem__c</members>
- <members>ConsumableSample__c</members>
- <members>Consumable_ET__c</members>
- <members>Consumable_Orderdetails__c</members>
- <members>Consumable_Promotion__c</members>
- <members>Consumable_accessories_invoice__c</members>
- <members>Consumable_order_LinkTable__c</members>
- <members>Consumable_order__c</members>
- <members>Consumable_order_details2__c</members>
- <members>Contact</members>
- <members>ContactPointAddress</members>
- <members>ContactPointConsent</members>
- <members>ContactPointEmail</members>
- <members>ContactPointPhone</members>
- <members>ContactPointTypeConsent</members>
- <members>ContactRequest</members>
- <members>ContentVersion</members>
- <members>Contract</members>
- <members>ContractContactRole</members>
- <members>CustomObject123__c</members>
- <members>Customer</members>
- <members>Daily_Report__c</members>
- <members>DataUseLegalBasis</members>
- <members>DataUsePurpose</members>
- <members>Dealer_Product__c</members>
- <members>Dealer_Stock__c</members>
- <members>Dealer_elationship__c</members>
- <members>DelegatedAccount</members>
- <members>DiscountProductApplicationDetail__c</members>
- <members>DiscountProductApplication__c</members>
- <members>DuplicateRecordItem</members>
- <members>DuplicateRecordSet</members>
- <members>EffectProgress__c</members>
- <members>EmailMessage</members>
- <members>EngagementChannelType</members>
- <members>Enquiry_No_Bidding_Apply__c</members>
- <members>Equipment_Set_Detail__c</members>
- <members>Equipment_Set__c</members>
- <members>Event</members>
- <members>Event_Oppotunity__c</members>
- <members>Event_Service__c</members>
- <members>Event__c</members>
- <members>ExchangeUserMapping</members>
- <members>ExpressionFilter</members>
- <members>ExpressionFilterCriteria</members>
- <members>ExternalEventMapping</members>
- <members>FSE_Regional_Assistant_Account__mdt</members>
- <members>FSE_Regional_Assistant__mdt</members>
- <members>FeedItem</members>
- <members>FixtureDeliverySlip__c</members>
- <members>FixtureRemindSnapshot__c</members>
- <members>Fixture_OneToOne_Link__c</members>
- <members>Fixture_Set_Detail__c</members>
- <members>Fixture_Set__c</members>
- <members>GIRSolutionAreaNumber__c</members>
- <members>GuaranteePeriodAlterationApplication__c</members>
- <members>GuaranteePeriodAlterationDetail__c</members>
- <members>IS_Opportunity_Demand_Configuration__c</members>
- <members>IS_Opportunity_Demand_Demonstration__c</members>
- <members>IS_Opportunity_Demand_Operating__c</members>
- <members>IS_Opportunity_Demand__c</members>
- <members>Idea</members>
- <members>Image</members>
- <members>ImportantProductCategory__c</members>
- <members>Individual</members>
- <members>Inquiry_form__c</members>
- <members>Inspection_Item__c</members>
- <members>Inspection_Report__c</members>
- <members>Inspectup_Plan__c</members>
- <members>InstructStatusMonthly__c</members>
- <members>Instruct_report__c</members>
- <members>Instructed_staff__c</members>
- <members>Inventory_Batch_Mapping__mdt</members>
- <members>Inventory_Detail__c</members>
- <members>Inventory_Header_New__c</members>
- <members>Inventory_Header__c</members>
- <members>Inventory_User_Permission__mdt</members>
- <members>JF_scope_Training__c</members>
- <members>Key_Product_Goals__c</members>
- <members>LTV_6_SS__c</members>
- <members>LastbuyProduct__c</members>
- <members>Lead</members>
- <members>License_Information__c</members>
- <members>Loaner_check_disinfection__c</members>
- <members>Location</members>
- <members>LocationTrustMeasure</members>
- <members>LogisticsInformation__c</members>
- <members>LostReport_Detail__c</members>
- <members>LostReport__c</members>
- <members>Lost_Report__c</members>
- <members>Lost_cancel_report__c</members>
- <members>MB4S__MotionBoardProperty__c</members>
- <members>MB_Account__c</members>
- <members>MB_Asset__c</members>
- <members>MB_Daily_Report__c</members>
- <members>MB_Event__c</members>
- <members>MB_Maintenance_Contract__c</members>
- <members>MB_OpportunityLineItem__c</members>
- <members>MB_Opportunity__c</members>
- <members>MB_Repair__c</members>
- <members>MB_Report__c</members>
- <members>MB_Statu_Achievements__c</members>
- <members>MB_TargetLineItem__c</members>
- <members>MB_Target__c</members>
- <members>Macro</members>
- <members>MacroAction</members>
- <members>MacroInstruction</members>
- <members>MacroUsage</members>
- <members>Maintenance_Contract_Asset_Estimate__c</members>
- <members>Maintenance_Contract_Asset__c</members>
- <members>Maintenance_Contract_Estimate__c</members>
- <members>Maintenance_Contract__c</members>
- <members>Maintenance_Product_Data_Details__c</members>
- <members>Maintenance_Product_Data__c</members>
- <members>Maintenance_Task__c</members>
- <members>ManagedContentVersion</members>
- <members>Material_For__c</members>
- <members>Medical_expense_Province__c</members>
- <members>Medical_expense_Request__c</members>
- <members>Medical_expense__c</members>
- <members>Medical_expense_product_middle__c</members>
- <members>MeetingManagement__c</members>
- <members>ModelLendingProduct__c</members>
- <members>Monthly_Report__c</members>
- <members>NetworkMember</members>
- <members>NetworkMemberChunk</members>
- <members>NewMaintenanceReport_Task__c</members>
- <members>NotesEventHistory__c</members>
- <members>Num_Major_Product__c</members>
- <members>OCM_Management_Province__c</members>
- <members>ODS__c</members>
- <members>OFSHospitalLayout__c</members>
- <members>OFSInsReportLayout__c</members>
- <members>OFSSetting__c</members>
- <members>OPDPlan__c</members>
- <members>ObjectPrefix__c</members>
- <members>OlympusCalendar__c</members>
- <members>OnCall_detail__c</members>
- <members>On_Call__c</members>
- <members>On_Line_Survey__c</members>
- <members>OppComment__c</members>
- <members>Opponent_Bid_Information__c</members>
- <members>Opportunity</members>
- <members>Opportunity2__c</members>
- <members>OpportunityCompetitor</members>
- <members>OpportunityContactRole</members>
- <members>OpportunityFileOrder__c</members>
- <members>OpportunityLineItem</members>
- <members>OpportunitySpecialApply__c</members>
- <members>OpportunityTeamMember</members>
- <members>Opportunity_Budget_Actual__c</members>
- <members>Opportunity_File__c</members>
- <members>OrderOpen__c</members>
- <members>Order__c</members>
- <members>Order_history__c</members>
- <members>OrgMetricScanResult</members>
- <members>OrgMetricScanSummary</members>
- <members>PAE_DecisionRecordDetail__c</members>
- <members>PAE_DecisionRecord__c</members>
- <members>PBIAuthorization__c</members>
- <members>PCLLostBrand__c</members>
- <members>PCLLostProduct__c</members>
- <members>PI_Field_Policy__c</members>
- <members>PartnerRole</members>
- <members>PartyConsent</members>
- <members>Payment_Maintenance_Contract__c</members>
- <members>PersonalEvaluation__c</members>
- <members>Personal_Evaluation__c</members>
- <members>Plan_Rental_Equipment__c</members>
- <members>PowerBISyncDefine__c</members>
- <members>Pricebook2</members>
- <members>PricebookEntry</members>
- <members>ProcessException</members>
- <members>Product2</members>
- <members>Product2__c</members>
- <members>ProductMonthlySales__c</members>
- <members>ProductTypes__c</members>
- <members>ProductURF__c</members>
- <members>Product_CategoryPrice_Table__c</members>
- <members>Product_Documentation__c</members>
- <members>Product_Material__c</members>
- <members>Product_Register_Link__c</members>
- <members>Product_Register__c</members>
- <members>Product_Register_contrast__c</members>
- <members>Product_Score_Table_History__c</members>
- <members>Product_Score_Table__c</members>
- <members>Product_Set_Detail__c</members>
- <members>Product_Set__c</members>
- <members>Product_and_document_middle_table__c</members>
- <members>Product_document_Lead__c</members>
- <members>PromotionHead__c</members>
- <members>PromotionProduct__c</members>
- <members>PromotionSalesProducts__c</members>
- <members>PromotionSales__c</members>
- <members>PromptAction</members>
- <members>PromptError</members>
- <members>Province_Target_Table__c</members>
- <members>Provincial_Goal_Setting_Input__c</members>
- <members>QIS_M_BC__c</members>
- <members>QIS_Report__c</members>
- <members>QIS_SC_Report__c</members>
- <members>Questionnaire_Survey__c</members>
- <members>QuestionsAndAnswers__c</members>
- <members>QuickText</members>
- <members>QuickTextUsage</members>
- <members>Quote</members>
- <members>QuoteIraiLineItem__c</members>
- <members>QuoteIrai__c</members>
- <members>QuoteLineItem</members>
- <members>RSA_master_data__c</members>
- <members>ReceivingNoteDetail__c</members>
- <members>ReceivingNoteSummary__c</members>
- <members>ReceivingNote__c</members>
- <members>Recommendation</members>
- <members>RecordAction</members>
- <members>RecordMergeHistory</members>
- <members>RentalApply_Postpone__mdt</members>
- <members>Rental_Apply_App_CCEmail__mdt</members>
- <members>Rental_Apply_Equipment_Set_DetailPower_B__c</members>
- <members>Rental_Apply_Equipment_Set_Detail__c</members>
- <members>Rental_Apply_Equipment_Set_Power_BI__c</members>
- <members>Rental_Apply_Equipment_Set__c</members>
- <members>Rental_Apply_Power_BI__c</members>
- <members>Rental_Apply_Sequence__c</members>
- <members>Rental_Apply__c</members>
- <members>Rental_Equipment__c</members>
- <members>Rental_Queue_Info__c</members>
- <members>RepairAgainAn__c</members>
- <members>RepairComment__c</members>
- <members>RepairSubOrder__c</members>
- <members>Repair_Quotation__c</members>
- <members>Repair__c</members>
- <members>Repair_quotation_reason__c</members>
- <members>Repair_reason__c</members>
- <members>Repair_receipt__c</members>
- <members>ReportList__c</members>
- <members>ReportMemo__c</members>
- <members>Report__c</members>
- <members>Request_tedner_doc__c</members>
- <members>Result_for_Conference_Adjudication__c</members>
- <members>SAP_for_BackOrder__c</members>
- <members>SFDA__c</members>
- <members>SFDelete__c</members>
- <members>SI_Attachment__c</members>
- <members>SLAReportInfo__c</members>
- <members>SMARM__c</members>
- <members>SSConsumable_order_details2__c</members>
- <members>SS_BO_shipment_accurancy__c</members>
- <members>SS_BatchColumnMapping__c</members>
- <members>SS_Batch_Column_Mapping__c</members>
- <members>SS_Dinghuo_accurancy__c</members>
- <members>SS_HCP_vist_cover_monthly__c</members>
- <members>SS_LTV_Dept_monthly__c</members>
- <members>SS_LTV_HP_monthly__c</members>
- <members>SS_LastMonthCompleteaccuracy__c</members>
- <members>SS_OPDPlan__c</members>
- <members>SS_OPDQuarterPlan__c</members>
- <members>SS_OPD_SIS_Monthly_by_User__c</members>
- <members>SS_Prospect_5days_list__c</members>
- <members>SS_Prospect_Order_accurancy__c</members>
- <members>SS_Prospect_detail_product__c</members>
- <members>SS_Prospect_list__c</members>
- <members>SS_User_list__c</members>
- <members>SS_accompany_report_monthly__c</members>
- <members>SS_backorder_list__c</members>
- <members>SS_monthly_submit_daily_report__c</members>
- <members>SS_shipment_acurancy__c</members>
- <members>SS_update_this_month__c</members>
- <members>SS_user_visit_covager__c</members>
- <members>Sample_inventory_sheet__c</members>
- <members>Sample_order_list_DN__c</members>
- <members>Sample_order_list__c</members>
- <members>Sample_order_list_detail__c</members>
- <members>Sample_stock_log_sheet__c</members>
- <members>Scorecard</members>
- <members>ScorecardAssociation</members>
- <members>ScorecardMetric</members>
- <members>SelableProduct__c</members>
- <members>Seller</members>
- <members>Service_Category6__c</members>
- <members>Service_Category7__c</members>
- <members>Ship_History__c</members>
- <members>Ship_History_open__c</members>
- <members>Ship_Open__c</members>
- <members>Ship__c</members>
- <members>Shipment_address__c</members>
- <members>Site</members>
- <members>SocialPersona</members>
- <members>SocialPost</members>
- <members>Solution</members>
- <members>SolutionProjectRequirements__c</members>
- <members>Solution_Programme__c</members>
- <members>Statu_Achievements_DN__c</members>
- <members>Statu_Achievements_DN_details__c</members>
- <members>Statu_Achievements_Journal__c</members>
- <members>Statu_Achievements__c</members>
- <members>StreamActivityAccess</members>
- <members>StreamingChannel</members>
- <members>SubAuthorized__c</members>
- <members>SurveyQuestionResponse__c</members>
- <members>SurveyTaker__c</members>
- <members>Survey_Question__c</members>
- <members>Survey__c</members>
- <members>System_Request__c</members>
- <members>System_UserSetting__c</members>
- <members>Target_account_manage__c</members>
- <members>Task</members>
- <members>TaskEventReportOPD__c</members>
- <members>TemporaryFileBox__c</members>
- <members>Tender_Opportunity_Link__c</members>
- <members>Tender_information__c</members>
- <members>Tender_information_details__c</members>
- <members>Territory2</members>
- <members>Territory2Model</members>
- <members>ThreeMonthlyContact__c</members>
- <members>Topic</members>
- <members>TopicAssignment</members>
- <members>TracingCode__c</members>
- <members>Training_test_Result__c</members>
- <members>Transaction_Log__c</members>
- <members>TransferApplyDetail__c</members>
- <members>TransferApplySummary__c</members>
- <members>TransferApply__c</members>
- <members>User</members>
- <members>UserProvisioningRequest</members>
- <members>UserTerritory2Association</members>
- <members>VideoCall</members>
- <members>VideoCallParticipant</members>
- <members>VideoCallRecording</members>
- <members>Visit_Report__c</members>
- <members>WarlockClassification__c</members>
- <members>Weekly_OPP_Follow_record__c</members>
- <members>accompanying_report__c</members>
- <members>asset_Power_BI__c</members>
- <members>bidInfoFile__c</members>
- <members>bp3_Setting__c</members>
- <members>eSignFormEntry__c</members>
- <members>eSignFormLineItemEntry__c</members>
- <members>eSignFormLineItem__c</members>
- <members>eSignForm__c</members>
- <members>guar__GUAR_Setting__mdt</members>
- <members>hospitalprice__c</members>
- <members>meeting_delay_apply__c</members>
- <members>report_report__c</members>
- <members>solutionClosingAttachment__c</members>
- <members>task__c</members>
- <name>CustomObject</name>
- </types>
- <types>
- <members>*</members>
- <name>HomePageComponent</name>
- </types>
- <types>
- <members>*</members>
- <name>StaticResource</name>
- </types>
- <version>41.0</version>
-</Package>
diff --git a/force-app/main/default/pages/AccChangeApprovalResponse.page b/force-app/main/default/pages/AccChangeApprovalResponse.page
index f0271b3..3b85e09 100644
--- a/force-app/main/default/pages/AccChangeApprovalResponse.page
+++ b/force-app/main/default/pages/AccChangeApprovalResponse.page
@@ -1,41 +1,78 @@
-<apex:page standardController="Account_Delay_Apply__c" extensions="AccChangeApprovalResponseController" showHeader="false" sidebar="false" id="allPage" action="{!init}">
-<apex:stylesheet value="{!URLFOR($Resource.blockUIcss)}"/>
-<apex:includeScript value="{!URLFOR($Resource.jquery183minjs)}"/>
-<apex:includeScript value="{!URLFOR($Resource.PleaseWaitDialog)}"/>
-<script>
-function tocenterjs() {
- //blockme();
- window.open('/apex/AccChangeApprovalResponsePopUp?accid=' + '{!URLENCODE(Account_Delay_Apply__c.Id)}' + '&type=response2system',
- 'HospitalApprovalDate',
- 'height=400,width=600,top=0,left=0,toolbar=no,menubar=no,scrollbars=no,resizable=no,location=no,status=no');
-}
+<apex:page
+ standardController="Account_Delay_Apply__c"
+ extensions="AccChangeApprovalResponseController"
+ showHeader="false"
+ sidebar="false"
+ id="allPage"
+ action="{!init}"
+>
+ <apex:stylesheet value="{!URLFOR($Resource.blockUIcss)}" />
+ <apex:includeScript value="{!URLFOR($Resource.jquery183minjs)}" />
+ <apex:includeScript value="{!URLFOR($Resource.PleaseWaitDialog)}" />
+ <script>
+ function tocenterjs() {
+ //blockme();
+ window.open(
+ "/apex/AccChangeApprovalResponsePopUp?accid=" +
+ "{!URLENCODE(Account_Delay_Apply__c.Id)}" +
+ "&type=response2system",
+ "HospitalApprovalDate",
+ "height=400,width=600,top=0,left=0,toolbar=no,menubar=no,scrollbars=no,resizable=no,location=no,status=no"
+ );
+ }
-function touserjs() {
- //blockme();
- window.open('/apex/AccChangeApprovalResponsePopUp?accid=' + '{!URLENCODE(Account_Delay_Apply__c.Id)}' + '&type=response2user',
- 'HospitalApprovalDate',
- 'height=400,width=600,top=0,left=0,toolbar=no,menubar=no,scrollbars=no,resizable=no,location=no,status=no');
-}
-function reloadjs() {
- //blockme();
- init();
-}
-</script>
- <apex:form id="allForm">
- <apex:actionFunction name="init" action="{!init}" rerender="allPanel,message">
+ function touserjs() {
+ //blockme();
+ window.open(
+ "/apex/AccChangeApprovalResponsePopUp?accid=" +
+ "{!URLENCODE(Account_Delay_Apply__c.Id)}" +
+ "&type=response2user",
+ "HospitalApprovalDate",
+ "height=400,width=600,top=0,left=0,toolbar=no,menubar=no,scrollbars=no,resizable=no,location=no,status=no"
+ );
+ }
+ function reloadjs() {
+ //blockme();
+ init();
+ }
+ </script>
+ <apex:form id="allForm">
+ <apex:actionFunction
+ name="init"
+ action="{!init}"
+ rerender="allPanel,message"
+ >
</apex:actionFunction>
- <apex:outputPanel id="allPanel">
- <apex:pageBlock title="{!$ObjectType.Account_Delay_Apply__c.fields.Response__c.label}" id="allBlock">
- <apex:pageBlockButtons location="top">
- <apex:commandButton onclick="tocenterjs(); return false;" value="To锛氬綋鍓嶅鎵逛汉" rerender="dummy" />
- <apex:commandButton onclick="touserjs(); return false;" value="To锛氱敵璇疯��" rerender="dummy" />
- </apex:pageBlockButtons>
+ <apex:outputPanel id="allPanel">
+ <apex:pageBlock
+ title="{!$ObjectType.Account_Delay_Apply__c.fields.Response__c.label}"
+ id="allBlock"
+ >
+ <apex:pageBlockButtons location="top">
+ <apex:commandButton
+ onclick="tocenterjs(); return false;"
+ value="To锛氬綋鍓嶅鎵逛汉"
+ rerender="dummy"
+ />
+ <apex:commandButton
+ onclick="touserjs(); return false;"
+ value="To锛氱敵璇疯��"
+ rerender="dummy"
+ />
+ </apex:pageBlockButtons>
- <apex:inputField id="response" value="{!ra.Response__c}" style="width:100%; height:120px; resize:none;"/>
- <script>
- j$(escapeVfId('allPage:allForm:allBlock:response')).attr('readonly', true);
- </script>
- </apex:pageBlock>
- </apex:outputPanel>
- </apex:form>
-</apex:page>
\ No newline at end of file
+ <apex:inputField
+ id="response"
+ value="{!ra.Response__c}"
+ style="width: 100%; height: 120px; resize: none"
+ />
+ <script>
+ j$(escapeVfId("allPage:allForm:allBlock:response")).attr(
+ "readonly",
+ true
+ );
+ </script>
+ </apex:pageBlock>
+ </apex:outputPanel>
+ </apex:form>
+</apex:page>
diff --git a/force-app/main/default/pages/Inventory.page b/force-app/main/default/pages/Inventory.page
index 7f05f37..126a68d 100644
--- a/force-app/main/default/pages/Inventory.page
+++ b/force-app/main/default/pages/Inventory.page
@@ -5,6 +5,7 @@
<apex:includeScript value="{!URLFOR($Resource.PleaseWaitDialog)}" />
<script>
+ console.log('ConsumableorderdetailsRecordsview = ' + '{!ConsumableorderdetailsRecordsview}')
function checkAll() {
var productCount = j$(escapeVfId('allPage:allForm:allBlock:ConsumableorderdetailsSection:ConsumableorderdetailsCnt')).value();
if (j$(escapeVfId('checker')).attr('checked') == 'checked') {
diff --git a/force-app/main/default/pages/InventoryView.page b/force-app/main/default/pages/InventoryView.page
index 3f801b5..764097b 100644
--- a/force-app/main/default/pages/InventoryView.page
+++ b/force-app/main/default/pages/InventoryView.page
@@ -4,6 +4,7 @@
<apex:includeScript value="{!URLFOR($Resource.PleaseWaitDialog)}"/>
<apex:includeScript value="{!URLFOR($Resource.CommonUtilJs)}"/>
<script>
+ console.log('pageRecords = ' + '{!pageRecords}')
function ClearJs(){
blockme();
//document.getElementById("allPage:allForm:allBlock:searchBlock:OrderCodeSearch").value = "";
diff --git a/force-app/main/default/pages/summonsCreat.page b/force-app/main/default/pages/summonsCreat.page
index a153471..e78d033 100644
--- a/force-app/main/default/pages/summonsCreat.page
+++ b/force-app/main/default/pages/summonsCreat.page
@@ -1,489 +1,643 @@
-<apex:page Controller="summonsCreatController" showHeader="true" tabStyle="SaleAndDelivery__tab" sidebar="true" id="allPage" action="{!init}" title="鍑哄簱鍗曠鐞�">
-<apex:stylesheet value="{!URLFOR($Resource.blockUIcss)}"/>
-<apex:includeScript value="{!URLFOR($Resource.jquery183minjs)}"/>
-<apex:includeScript value="{!URLFOR($Resource.PleaseWaitDialog)}"/>
-<apex:includeScript value="{!URLFOR($Resource.CommonUtilJs)}"/>
-<apex:includeScript value="{!URLFOR($Resource.summonsCreatJs)}"/>
-<apex:stylesheet value="{!URLFOR($Resource.jquerysuggestcss)}"/>
-<apex:includeScript value="{!URLFOR($Resource.jquerysuggestjs)}"/>
-<apex:includeScript value="{!URLFOR($Resource.connection20)}"/>
-<apex:includeScript value="{!URLFOR($Resource.apex20)}"/>
-<script type="text/javascript">
-function setFocusOnLoad() {}
-function bodyOnLoad(){setFocusOnLoad();}
-function searchsearchAgencyH(str){
- //update by rentx 2021-3-1 start
- //鍏堝垽鏂綋鍓嶇粡閿�鍟嗕笅鏄惁鏈夌淮鎶ょ壒浠峰尰闄� 濡傛灉娌℃湁缁存姢鐗逛环鍖婚櫌 閭d箞鐩存帴鏌ヨ鎵�鏈夊尰闄�
- var flag = j$(escapeVfId('allPage:allForm:allBlock:Editable:OutPattern01')).value();
- j$(escapeVfId('allPage:allForm:allBlock:Editable:OEC')).attr('readonly',true);
- if ({!hasHos == false}) {
- openPopup('/customer/searchAgencyHospital?Ctype=' + str+'&ishos=', 'setsearch', 800, 600, 'width=800,height=600,scrollbars=yes', true);
- }else{
- var noOfRecords = j$(escapeVfId('allPage:allForm:allBlock:ConsumableorderdetailsSection:consumableorderdetailsCount')).value();
- var ishosNum = 0;
- for (var i = 0; i < noOfRecords; i++) {
- var tempCheckVar = j$(escapeVfId('allPage:allForm:allBlock:ConsumableorderdetailsSection:ConsumableorderdetailsTable:'+i+':variableinfo:consumablesCountproRowCheckbox')).value();
- var tempHosVar = j$(escapeVfId('allPage:allForm:allBlock:ConsumableorderdetailsSection:ConsumableorderdetailsTable:'+i+':hosOffer')).value();
- var tempHosProVar = j$(escapeVfId('allPage:allForm:allBlock:ConsumableorderdetailsSection:ConsumableorderdetailsTable:'+i+':hosPro')).value();
- console.log('tempHosProVar:'+tempHosProVar);
- if (((tempCheckVar == true || tempCheckVar == 'on') || {!Existarrive}) && (tempHosVar == true || tempHosVar == 'true') && (tempHosProVar == true || tempHosProVar == 'true')) {
- ishosNum ++;
- }
-
- }
- // alert({!Existarrive} + flag);
- console.log('34:'+ishosNum);
- if (ishosNum > 0 || ({!Existarrive} && flag == 'true')) {
- // if (ishosNum > 0) {
- openPopup('/customer/searchAgencyHospital?Ctype=' + str+'&ishos=true', 'setsearch', 800, 600, 'width=800,height=600,scrollbars=yes', true);
- }else{
- openPopup('/customer/searchAgencyHospital?Ctype=' + str+'&ishos=', 'setsearch', 800, 600, 'width=800,height=600,scrollbars=yes', true);
- }
- }
- //update by rentx 2021-01-29 start
- // j$(escapeVfId('allPage:allForm:allBlock:Editable:OEC')).attr('readonly',true);
- // openPopup('/customer/searchAgencyHospital?Ctype=' + str, 'setsearch', 800, 600, 'width=800,height=600,scrollbars=yes', true);
- // var flag = j$(escapeVfId('allPage:allForm:allBlock:Editable:OutPattern01')).value();
- // j$(escapeVfId('allPage:allForm:allBlock:Editable:OEC')).attr('readonly',true);
- // openPopup('/customer/searchAgencyHospital?Ctype=' + str+'&ishos='+flag, 'setsearch', 800, 600, 'width=800,height=600,scrollbars=yes', true);
- //update by rentx 2021-01-29 end
- //update by rentx 2021-3-1 end
-}
-function clearAgencyI(){
- var agencyname = j$(escapeVfId('allPage:allForm:allBlock:Editable:OEC')).value();
- if (agencyname == '' || agencyname == null) {
- document.getElementById('allPage:allForm:allBlock:Editable:OECId').value = "";
- }
-
- var accid = j$(escapeVfId('allPage:allForm:allBlock:Editable:OECId')).value();
- if (accid != null && accid != '') {
- checkOutPatternFn();
- }
-
-
-}
-// vivek update start
-function saveConfirmJs(str){
- var msg = "鍑哄簱浠锋牸浠呭彲鎿嶄綔涓�娆″彉鏇达紝淇濆瓨鍚庡皢鏃犳硶淇敼銆俓n\n璇风‘璁わ紒";
- if(str == '浠锋牸鏈畾'){
- if(confirm(msg)==true){
- saveJs();
- }
- }else{
- saveJs();
- }
-}
-// vivek update end
-
-function setVisitorPlace(){
- var x = j$(escapeVfId('allPage:allForm:allBlock:Editable:SummonsForDirction__c')).value();
- if (x == '浜掔浉璋冭揣') {
- try{
- var str = 'allPage:allForm:allBlock:Editable:Order_ForDealerText';
- var strPage = null;
- var options = {};
- var ros = j$(escapeVfId('allPage:allForm:allBlock:Editable:Order_ForDealerText')).value();
- strPage = '/customer/apex/ConSearchAgencyPlace?r=' + encodeURI(ros);
- options = {minchars:3, minwords:1, resultsClass:'visitorplace_results'};
- jQuery(escapeVfId(str)).unbind();
- if (strPage != null) {
- jQuery(escapeVfId(str)).suggest(strPage,options);
- }
- }catch(e){
- alert(e);
- }
- }
- else{
- var agencytext = j$(escapeVfId('allPage:allForm:allBlock:Editable:Order_ForDealerText')).value();
- j$(escapeVfId('allPage:allForm:allBlock:Editable:Order_ForDealerTextHidden')).val(agencytext);
- //alert('1' + agencytext);
- //alert('2' + j$(escapeVfId('allPage:allForm:allBlock:Editable:Order_ForDealerTextHidden')).value());
- }
-
-}
-
-function vpClear2_delay(){
- var x = j$(escapeVfId('allPage:allForm:allBlock:Editable:SummonsForDirction__c')).value();
- if (x == '浜掔浉璋冭揣') {
- var vp = 'allPage:allForm:allBlock:Editable:Order_ForDealerText';
- var vpHidden = 'allPage:allForm:allBlock:Editable:Order_ForDealerTextHidden';
- setTimeout(
- function() {
- if(j$(escapeVfId(vp)).attr("jquerysuggest_skip_flag") == "false") {
- if (j$(escapeVfId(vp)).value() != j$(escapeVfId(vpHidden)).value()) {
- vpClear2();
- }
- }
- },
- 200
- );
- }
- else{
- var agencytext = j$(escapeVfId('allPage:allForm:allBlock:Editable:Order_ForDealerText')).value();
- j$(escapeVfId('allPage:allForm:allBlock:Editable:Order_ForDealerTextHidden')).val(agencytext);
- }
-}
-function vpClear2(){
- var vp = 'allPage:allForm:allBlock:Editable:Order_ForDealerText';
- var vpHidden = 'allPage:allForm:allBlock:Editable:Order_ForDealerTextHidden';
- // alert('vp=' + j$(escapeVfId(vp)).value());
- // alert('vpHidden=' + j$(escapeVfId(vpHidden)).value());
- // if (j$(escapeVfId(vp)).value() != j$(escapeVfId(vpHidden)).value()) {
- // changeFlg = 'false';
- // //alert('changeFlg+' +changeFlg);
- // if(changeFlg == 'true'){
- // vpBefore = j$(escapeVfId('allPage:allForm:allBlock:Editable:Order_ForDealerTextHidden')).value();
- // j$(escapeVfId('allPage:allForm:allBlock:Editable:Order_ForDealerText')).val(vpBefore);
- // document.getElementById('allPage:allForm:allBlock:Editable:Order_ForDealerText').blur();
- // return;
- // }
- // }
- resetValue('allPage:allForm:allBlock:Editable:Order_ForDealerText');
-}
-function FilesUaplodJs(){
- //涓婁紶鏂囦欢
- FilesUpload();
-}
-
-function refreshPageSizeJs() {
- refreshPageSize();
-}
-
-function CommitConsumable(){
- //纭鎻愪氦
- approval();
- //openPDF();
-}
-function openPDF(){
- window.open("/customer/summonsPDF?ESetid="+'{!URLENCODE(IdCheck)}');
-}
-
-function openReportJs(){
- //鎵撳紑鎶ヨ〃
- var reportId = '{!IdCheck}';
- reportId = reportId.substring(0,15);
- window.open("/customer/" +'{!URLENCODE($Label.ConsumableOut_report)}'+ "?pv1="+ encodeURI(reportId));
-}
-
-function openToInvoiceJs(){
- //鎵撳紑鍙戠エ
- //upchangeorder();
- var invoiceId = j$(escapeVfId('allPage:allForm:allBlock:unEditable:ConInvoice_Code_lkid')).value();
- if (invoiceId.length > 0 && invoiceId != '000000000000000') {
- window.open("/customer/ConInvoiceView?deliveryId="+'{!URLENCODE(IdCheck)}' + "&invoiceId=" + encodeURI(invoiceId) + "&KeyWords=Redirect","_self");
- }else{
- window.open("/customer/ConInvoiceView?deliveryId="+'{!URLENCODE(IdCheck)}' + "&KeyWords=Redirect","_self");
- }
-}
-
-function PraseToPDFJs(){
- //鎵撳嵃鎴怭DF
- PraseToPDF();
- window.open("/customer/summonsPDF?ESetid="+'{!URLENCODE(IdCheck)}');
-}
-
-function ChangeDirction(j){
- var a = j.id;
- var x = j$(escapeVfId(a)).value();
- var productCount = j$(escapeVfId('allPage:allForm:allBlock:ConsumableorderdetailsSection:consumableorderdetailsCount')).value();
- if(x == '鐩存帴閿�鍞粰鍖婚櫌'){
- //鍖婚櫌
- j$(escapeVfId('allPage:allForm:allBlock:Editable:OEC')).prop('disabled',false);
- j$(escapeVfId('allPage:allForm:allBlock:Editable:Order_ForCustomer')).prop('disabled',false);
- //浜岀骇缁忛攢鍟�
- j$(escapeVfId('allPage:allForm:allBlock:Editable:province')).prop('disabled',true);
- document.getElementById('allPage:allForm:allBlock:Editable:province').value = "";
- j$(escapeVfId('allPage:allForm:allBlock:Editable:Order_ForDealerText')).prop('disabled',true);
- document.getElementById('allPage:allForm:allBlock:Editable:Order_ForDealerText').value = "";
- // for (var i = 0; i < productCount; i++) {
- // j$(escapeVfId('allPage:allForm:allBlock:ConsumableorderdetailsSection:ConsumableorderdetailsTable:' + i + ':variableMoneyinfo:Unitpriceagency')).prop('disabled',true);
- // document.getElementById('allPage:allForm:allBlock:ConsumableorderdetailsSection:ConsumableorderdetailsTable:' + i + ':variableMoneyinfo:Unitpriceagency').value = "";
- // }
- }else if(x == '鍖婚櫌璇曠敤'){
- //鍖婚櫌
- j$(escapeVfId('allPage:allForm:allBlock:Editable:OEC')).prop('disabled',false);
- j$(escapeVfId('allPage:allForm:allBlock:Editable:Order_ForCustomer')).prop('disabled',false);
- //浜岀骇缁忛攢鍟�
- j$(escapeVfId('allPage:allForm:allBlock:Editable:province')).prop('disabled',false);
- j$(escapeVfId('allPage:allForm:allBlock:Editable:Order_ForDealerText')).prop('disabled',false);
- // for (var i = 0; i < productCount; i++) {
- // j$(escapeVfId('allPage:allForm:allBlock:ConsumableorderdetailsSection:ConsumableorderdetailsTable:' + i + ':variableMoneyinfo:Unitpriceagency')).prop('disabled',true);
- // document.getElementById('allPage:allForm:allBlock:ConsumableorderdetailsSection:ConsumableorderdetailsTable:' + i + ':variableMoneyinfo:Unitpriceagency').value = "";
- // }
- }else if(x == '閿�鍞粰浜岀骇缁忛攢鍟�'){
- //鍖婚櫌
- j$(escapeVfId('allPage:allForm:allBlock:Editable:OEC')).prop('disabled',false);
- j$(escapeVfId('allPage:allForm:allBlock:Editable:Order_ForCustomer')).prop('disabled',false);
- //浜岀骇缁忛攢鍟�
- j$(escapeVfId('allPage:allForm:allBlock:Editable:province')).prop('disabled',false);
- j$(escapeVfId('allPage:allForm:allBlock:Editable:Order_ForDealerText')).prop('disabled',false);
- // for (var i = 0; i < productCount; i++) {
- // j$(escapeVfId('allPage:allForm:allBlock:ConsumableorderdetailsSection:ConsumableorderdetailsTable:' + i + ':variableMoneyinfo:Unitpriceagency')).prop('disabled',false);
- // }
- }else if(x == '浜掔浉璋冭揣'){
- //鍖婚櫌
- j$(escapeVfId('allPage:allForm:allBlock:Editable:OEC')).prop('disabled',true);
- document.getElementById('allPage:allForm:allBlock:Editable:OEC').value = "";
- document.getElementById('allPage:allForm:allBlock:Editable:OECId').value = "";
- j$(escapeVfId('allPage:allForm:allBlock:Editable:Order_ForCustomer')).prop('disabled',true);
- document.getElementById('allPage:allForm:allBlock:Editable:Order_ForCustomer').value = "";
- //浜岀骇缁忛攢鍟�
- j$(escapeVfId('allPage:allForm:allBlock:Editable:province')).prop('disabled',false);
- j$(escapeVfId('allPage:allForm:allBlock:Editable:Order_ForDealerText')).prop('disabled',false);
- // for (var i = 0; i < productCount; i++) {
- // j$(escapeVfId('allPage:allForm:allBlock:ConsumableorderdetailsSection:ConsumableorderdetailsTable:' + i + ':variableMoneyinfo:Unitpriceagency')).prop('disabled',true);
- // document.getElementById('allPage:allForm:allBlock:ConsumableorderdetailsSection:ConsumableorderdetailsTable:' + i + ':variableMoneyinfo:Unitpriceagency').value = "";
- // }
- }else{
- //鍖婚櫌
- j$(escapeVfId('allPage:allForm:allBlock:Editable:OEC')).prop('disabled',false);
- j$(escapeVfId('allPage:allForm:allBlock:Editable:Order_ForCustomer')).prop('disabled',false);
- //浜岀骇缁忛攢鍟�
- j$(escapeVfId('allPage:allForm:allBlock:Editable:province')).prop('disabled',false);
- //document.getElementById('allPage:allForm:allBlock:Editable:province').value = "";
- j$(escapeVfId('allPage:allForm:allBlock:Editable:Order_ForDealerText')).prop('disabled',false);
- //document.getElementById('allPage:allForm:allBlock:Editable:Order_ForDealerText').value = "";
- // for (var i = 0; i < productCount; i++) {
- // j$(escapeVfId('allPage:allForm:allBlock:ConsumableorderdetailsSection:ConsumableorderdetailsTable:' + i + ':variableMoneyinfo:Unitpriceagency')).prop('disabled',false);
- // //document.getElementById('allPage:allForm:allBlock:ConsumableorderdetailsSection:ConsumableorderdetailsTable:' + i + ':variableMoneyinfo:Unitpriceagency').value = "";
- // }
- }
-}
-//椤甸潰鍒锋柊閲嶆柊璁$畻閲戦
-function CountCounttestPrice(){
- var numberDetails =j$(escapeVfId('allPage:allForm:allBlock:ConsumableorderdetailsSection:consumableorderdetailsCount')).value();
- for(var i = 0; i < numberDetails ; i++){
- var ckeck = j$(escapeVfId('allPage:allForm:allBlock:ConsumableorderdetailsSection:ConsumableorderdetailsTable:' + i + ':variableinfo' + ':consumablesCountproRowCheckbox')).value();
-
- if (ckeck == 'on') {
- var a=document.getElementById ("allPage:allForm:allBlock:ConsumableorderdetailsSection:ConsumableorderdetailsTable:" + i +":variableAllprice:consumablesCounttestPrice");
- if ({!Existarrive}) {
- z = parseFloat(j$(escapeVfId('allPage:allForm:allBlock:ConsumableorderdetailsSection:ConsumableorderdetailsTable:' + i +':consumablesCount_UnEditout:consumablesCount_UnEditin')).value());
+<apex:page
+ Controller="summonsCreatController"
+ showHeader="true"
+ tabStyle="SaleAndDelivery__tab"
+ sidebar="true"
+ id="allPage"
+ action="{!init}"
+ title="鍑哄簱鍗曠鐞�"
+>
+ <apex:stylesheet value="{!URLFOR($Resource.blockUIcss)}" />
+ <apex:includeScript value="{!URLFOR($Resource.jquery183minjs)}" />
+ <apex:includeScript value="{!URLFOR($Resource.PleaseWaitDialog)}" />
+ <apex:includeScript value="{!URLFOR($Resource.CommonUtilJs)}" />
+ <apex:includeScript value="{!URLFOR($Resource.summonsCreatJs)}" />
+ <apex:stylesheet value="{!URLFOR($Resource.jquerysuggestcss)}" />
+ <apex:includeScript value="{!URLFOR($Resource.jquerysuggestjs)}" />
+ <apex:includeScript value="{!URLFOR($Resource.connection20)}" />
+ <apex:includeScript value="{!URLFOR($Resource.apex20)}" />
+ <script type="text/javascript">
+ console.log('hasHosPro = ' + '{!hasHosPro}')
+ console.log('EditAble = ' + '{!EditAble}')
+ console.log('pageRecords = ' + '{!pageRecords}')
+ console.log('coc = ' + '{!coc}')
+ console.log('provinceOpts = ' + '{!provinceOpts}')
+ console.log('Existarrive = ' + '{!Existarrive}')
+ console.log('SecondDealer = ' + '{!SecondDealer}')
+ function setFocusOnLoad() {}
+ function bodyOnLoad(){setFocusOnLoad();}
+ function searchsearchAgencyH(str){
+ //update by rentx 2021-3-1 start
+ //鍏堝垽鏂綋鍓嶇粡閿�鍟嗕笅鏄惁鏈夌淮鎶ょ壒浠峰尰闄� 濡傛灉娌℃湁缁存姢鐗逛环鍖婚櫌 閭d箞鐩存帴鏌ヨ鎵�鏈夊尰闄�
+ var flag = j$(escapeVfId('allPage:allForm:allBlock:Editable:OutPattern01')).value();
+ j$(escapeVfId('allPage:allForm:allBlock:Editable:OEC')).attr('readonly',true);
+ if ({!hasHos == false}) {
+ openPopup('/customer/searchAgencyHospital?Ctype=' + str+'&ishos=', 'setsearch', 800, 600, 'width=800,height=600,scrollbars=yes', true);
}else{
- z = parseFloat(j$(escapeVfId('allPage:allForm:allBlock:ConsumableorderdetailsSection:ConsumableorderdetailsTable:' + i+':variable:consumablesCount')).value());
+ var noOfRecords = j$(escapeVfId('allPage:allForm:allBlock:ConsumableorderdetailsSection:consumableorderdetailsCount')).value();
+ var ishosNum = 0;
+ for (var i = 0; i < noOfRecords; i++) {
+ var tempCheckVar = j$(escapeVfId('allPage:allForm:allBlock:ConsumableorderdetailsSection:ConsumableorderdetailsTable:'+i+':variableinfo:consumablesCountproRowCheckbox')).value();
+ var tempHosVar = j$(escapeVfId('allPage:allForm:allBlock:ConsumableorderdetailsSection:ConsumableorderdetailsTable:'+i+':hosOffer')).value();
+ var tempHosProVar = j$(escapeVfId('allPage:allForm:allBlock:ConsumableorderdetailsSection:ConsumableorderdetailsTable:'+i+':hosPro')).value();
+ console.log('tempHosProVar:'+tempHosProVar);
+ if (((tempCheckVar == true || tempCheckVar == 'on') || {!Existarrive}) && (tempHosVar == true || tempHosVar == 'true') && (tempHosProVar == true || tempHosProVar == 'true')) {
+ ishosNum ++;
+ }
+
+ }
+ // alert({!Existarrive} + flag);
+ console.log('34:'+ishosNum);
+ if (ishosNum > 0 || ({!Existarrive} && flag == 'true')) {
+ // if (ishosNum > 0) {
+ openPopup('/customer/searchAgencyHospital?Ctype=' + str+'&ishos=true', 'setsearch', 800, 600, 'width=800,height=600,scrollbars=yes', true);
+ }else{
+ openPopup('/customer/searchAgencyHospital?Ctype=' + str+'&ishos=', 'setsearch', 800, 600, 'width=800,height=600,scrollbars=yes', true);
+ }
+ }
+ //update by rentx 2021-01-29 start
+ // j$(escapeVfId('allPage:allForm:allBlock:Editable:OEC')).attr('readonly',true);
+ // openPopup('/customer/searchAgencyHospital?Ctype=' + str, 'setsearch', 800, 600, 'width=800,height=600,scrollbars=yes', true);
+ // var flag = j$(escapeVfId('allPage:allForm:allBlock:Editable:OutPattern01')).value();
+ // j$(escapeVfId('allPage:allForm:allBlock:Editable:OEC')).attr('readonly',true);
+ // openPopup('/customer/searchAgencyHospital?Ctype=' + str+'&ishos='+flag, 'setsearch', 800, 600, 'width=800,height=600,scrollbars=yes', true);
+ //update by rentx 2021-01-29 end
+ //update by rentx 2021-3-1 end
+ }
+ function clearAgencyI(){
+ var agencyname = j$(escapeVfId('allPage:allForm:allBlock:Editable:OEC')).value();
+ if (agencyname == '' || agencyname == null) {
+ document.getElementById('allPage:allForm:allBlock:Editable:OECId').value = "";
+ }
+
+ var accid = j$(escapeVfId('allPage:allForm:allBlock:Editable:OECId')).value();
+ if (accid != null && accid != '') {
+ checkOutPatternFn();
+ }
+
+
+ }
+ // vivek update start
+ function saveConfirmJs(str){
+ console.log('pageRecords = ' + '{!pageRecords}')
+ debugger
+ var msg = "鍑哄簱浠锋牸浠呭彲鎿嶄綔涓�娆″彉鏇达紝淇濆瓨鍚庡皢鏃犳硶淇敼銆俓n\n璇风‘璁わ紒";
+ if(str == '浠锋牸鏈畾'){
+ if(confirm(msg)==true){
+ saveJs();
+ }
+ }else{
+ saveJs();
+ }
+ }
+ // vivek update end
+
+ function setVisitorPlace(){
+ var x = j$(escapeVfId('allPage:allForm:allBlock:Editable:SummonsForDirction__c')).value();
+ if (x == '浜掔浉璋冭揣') {
+ try{
+ var str = 'allPage:allForm:allBlock:Editable:Order_ForDealerText';
+ var strPage = null;
+ var options = {};
+ var ros = j$(escapeVfId('allPage:allForm:allBlock:Editable:Order_ForDealerText')).value();
+ strPage = '/customer/apex/ConSearchAgencyPlace?r=' + encodeURI(ros);
+ options = {minchars:3, minwords:1, resultsClass:'visitorplace_results'};
+ jQuery(escapeVfId(str)).unbind();
+ if (strPage != null) {
+ console.log('杩涘叆strPage != null')
+ jQuery(escapeVfId(str)).suggest(strPage,options);
+ }
+ }catch(e){
+ alert(e);
+ }
+ }
+ else{
+ var agencytext = j$(escapeVfId('allPage:allForm:allBlock:Editable:Order_ForDealerText')).value();
+ j$(escapeVfId('allPage:allForm:allBlock:Editable:Order_ForDealerTextHidden')).val(agencytext);
+ //alert('1' + agencytext);
+ //alert('2' + j$(escapeVfId('allPage:allForm:allBlock:Editable:Order_ForDealerTextHidden')).value());
+ }
+
+ }
+
+ function vpClear2_delay(){
+ var x = j$(escapeVfId('allPage:allForm:allBlock:Editable:SummonsForDirction__c')).value();
+ if (x == '浜掔浉璋冭揣') {
+ var vp = 'allPage:allForm:allBlock:Editable:Order_ForDealerText';
+ var vpHidden = 'allPage:allForm:allBlock:Editable:Order_ForDealerTextHidden';
+ setTimeout(
+ function() {
+ if(j$(escapeVfId(vp)).attr("jquerysuggest_skip_flag") == "false") {
+ if (j$(escapeVfId(vp)).value() != j$(escapeVfId(vpHidden)).value()) {
+ vpClear2();
+ }
+ }
+ },
+ 200
+ );
+ }
+ else{
+ var agencytext = j$(escapeVfId('allPage:allForm:allBlock:Editable:Order_ForDealerText')).value();
+ j$(escapeVfId('allPage:allForm:allBlock:Editable:Order_ForDealerTextHidden')).val(agencytext);
+ }
+ }
+ function vpClear2(){
+ var vp = 'allPage:allForm:allBlock:Editable:Order_ForDealerText';
+ var vpHidden = 'allPage:allForm:allBlock:Editable:Order_ForDealerTextHidden';
+ // alert('vp=' + j$(escapeVfId(vp)).value());
+ // alert('vpHidden=' + j$(escapeVfId(vpHidden)).value());
+ // if (j$(escapeVfId(vp)).value() != j$(escapeVfId(vpHidden)).value()) {
+ // changeFlg = 'false';
+ // //alert('changeFlg+' +changeFlg);
+ // if(changeFlg == 'true'){
+ // vpBefore = j$(escapeVfId('allPage:allForm:allBlock:Editable:Order_ForDealerTextHidden')).value();
+ // j$(escapeVfId('allPage:allForm:allBlock:Editable:Order_ForDealerText')).val(vpBefore);
+ // document.getElementById('allPage:allForm:allBlock:Editable:Order_ForDealerText').blur();
+ // return;
+ // }
+ // }
+ resetValue('allPage:allForm:allBlock:Editable:Order_ForDealerText');
+ }
+ function FilesUaplodJs(){
+ //涓婁紶鏂囦欢
+ FilesUpload();
+ }
+
+ function refreshPageSizeJs() {
+ refreshPageSize();
+ }
+
+ function CommitConsumable(){
+ //纭鎻愪氦
+ approval();
+ //openPDF();
+ }
+ function openPDF(){
+ window.open("/customer/summonsPDF?ESetid="+'{!URLENCODE(IdCheck)}');
+ }
+
+ function openReportJs(){
+ //鎵撳紑鎶ヨ〃
+ var reportId = '{!IdCheck}';
+ reportId = reportId.substring(0,15);
+ window.open("/customer/" +'{!URLENCODE($Label.ConsumableOut_report)}'+ "?pv1="+ encodeURI(reportId));
+ }
+
+ function openToInvoiceJs(){
+ //鎵撳紑鍙戠エ
+ //upchangeorder();
+ var invoiceId = j$(escapeVfId('allPage:allForm:allBlock:unEditable:ConInvoice_Code_lkid')).value();
+ if (invoiceId.length > 0 && invoiceId != '000000000000000') {
+ window.open("/customer/ConInvoiceView?deliveryId="+'{!URLENCODE(IdCheck)}' + "&invoiceId=" + encodeURI(invoiceId) + "&KeyWords=Redirect","_self");
+ }else{
+ window.open("/customer/ConInvoiceView?deliveryId="+'{!URLENCODE(IdCheck)}' + "&KeyWords=Redirect","_self");
+ }
+ }
+
+ function PraseToPDFJs(){
+ //鎵撳嵃鎴怭DF
+ PraseToPDF();
+ window.open("/customer/summonsPDF?ESetid="+'{!URLENCODE(IdCheck)}');
+ }
+
+ function ChangeDirction(j){
+ var a = j.id;
+ var x = j$(escapeVfId(a)).value();
+ var productCount = j$(escapeVfId('allPage:allForm:allBlock:ConsumableorderdetailsSection:consumableorderdetailsCount')).value();
+ if(x == '鐩存帴閿�鍞粰鍖婚櫌'){
+ //鍖婚櫌
+ j$(escapeVfId('allPage:allForm:allBlock:Editable:OEC')).prop('disabled',false);
+ j$(escapeVfId('allPage:allForm:allBlock:Editable:Order_ForCustomer')).prop('disabled',false);
+ //浜岀骇缁忛攢鍟�
+ j$(escapeVfId('allPage:allForm:allBlock:Editable:province')).prop('disabled',true);
+ document.getElementById('allPage:allForm:allBlock:Editable:province').value = "";
+ j$(escapeVfId('allPage:allForm:allBlock:Editable:Order_ForDealerText')).prop('disabled',true);
+ document.getElementById('allPage:allForm:allBlock:Editable:Order_ForDealerText').value = "";
+ // for (var i = 0; i < productCount; i++) {
+ // j$(escapeVfId('allPage:allForm:allBlock:ConsumableorderdetailsSection:ConsumableorderdetailsTable:' + i + ':variableMoneyinfo:Unitpriceagency')).prop('disabled',true);
+ // document.getElementById('allPage:allForm:allBlock:ConsumableorderdetailsSection:ConsumableorderdetailsTable:' + i + ':variableMoneyinfo:Unitpriceagency').value = "";
+ // }
+ }else if(x == '鍖婚櫌璇曠敤'){
+ //鍖婚櫌
+ j$(escapeVfId('allPage:allForm:allBlock:Editable:OEC')).prop('disabled',false);
+ j$(escapeVfId('allPage:allForm:allBlock:Editable:Order_ForCustomer')).prop('disabled',false);
+ //浜岀骇缁忛攢鍟�
+ j$(escapeVfId('allPage:allForm:allBlock:Editable:province')).prop('disabled',false);
+ j$(escapeVfId('allPage:allForm:allBlock:Editable:Order_ForDealerText')).prop('disabled',false);
+ // for (var i = 0; i < productCount; i++) {
+ // j$(escapeVfId('allPage:allForm:allBlock:ConsumableorderdetailsSection:ConsumableorderdetailsTable:' + i + ':variableMoneyinfo:Unitpriceagency')).prop('disabled',true);
+ // document.getElementById('allPage:allForm:allBlock:ConsumableorderdetailsSection:ConsumableorderdetailsTable:' + i + ':variableMoneyinfo:Unitpriceagency').value = "";
+ // }
+ }else if(x == '閿�鍞粰浜岀骇缁忛攢鍟�'){
+ //鍖婚櫌
+ j$(escapeVfId('allPage:allForm:allBlock:Editable:OEC')).prop('disabled',false);
+ j$(escapeVfId('allPage:allForm:allBlock:Editable:Order_ForCustomer')).prop('disabled',false);
+ //浜岀骇缁忛攢鍟�
+ j$(escapeVfId('allPage:allForm:allBlock:Editable:province')).prop('disabled',false);
+ j$(escapeVfId('allPage:allForm:allBlock:Editable:Order_ForDealerText')).prop('disabled',false);
+ // for (var i = 0; i < productCount; i++) {
+ // j$(escapeVfId('allPage:allForm:allBlock:ConsumableorderdetailsSection:ConsumableorderdetailsTable:' + i + ':variableMoneyinfo:Unitpriceagency')).prop('disabled',false);
+ // }
+ }else if(x == '浜掔浉璋冭揣'){
+ //鍖婚櫌
+ j$(escapeVfId('allPage:allForm:allBlock:Editable:OEC')).prop('disabled',true);
+ document.getElementById('allPage:allForm:allBlock:Editable:OEC').value = "";
+ document.getElementById('allPage:allForm:allBlock:Editable:OECId').value = "";
+ j$(escapeVfId('allPage:allForm:allBlock:Editable:Order_ForCustomer')).prop('disabled',true);
+ document.getElementById('allPage:allForm:allBlock:Editable:Order_ForCustomer').value = "";
+ //浜岀骇缁忛攢鍟�
+ j$(escapeVfId('allPage:allForm:allBlock:Editable:province')).prop('disabled',false);
+ j$(escapeVfId('allPage:allForm:allBlock:Editable:Order_ForDealerText')).prop('disabled',false);
+ // for (var i = 0; i < productCount; i++) {
+ // j$(escapeVfId('allPage:allForm:allBlock:ConsumableorderdetailsSection:ConsumableorderdetailsTable:' + i + ':variableMoneyinfo:Unitpriceagency')).prop('disabled',true);
+ // document.getElementById('allPage:allForm:allBlock:ConsumableorderdetailsSection:ConsumableorderdetailsTable:' + i + ':variableMoneyinfo:Unitpriceagency').value = "";
+ // }
+ }else{
+ //鍖婚櫌
+ j$(escapeVfId('allPage:allForm:allBlock:Editable:OEC')).prop('disabled',false);
+ j$(escapeVfId('allPage:allForm:allBlock:Editable:Order_ForCustomer')).prop('disabled',false);
+ //浜岀骇缁忛攢鍟�
+ j$(escapeVfId('allPage:allForm:allBlock:Editable:province')).prop('disabled',false);
+ //document.getElementById('allPage:allForm:allBlock:Editable:province').value = "";
+ j$(escapeVfId('allPage:allForm:allBlock:Editable:Order_ForDealerText')).prop('disabled',false);
+ //document.getElementById('allPage:allForm:allBlock:Editable:Order_ForDealerText').value = "";
+ // for (var i = 0; i < productCount; i++) {
+ // j$(escapeVfId('allPage:allForm:allBlock:ConsumableorderdetailsSection:ConsumableorderdetailsTable:' + i + ':variableMoneyinfo:Unitpriceagency')).prop('disabled',false);
+ // //document.getElementById('allPage:allForm:allBlock:ConsumableorderdetailsSection:ConsumableorderdetailsTable:' + i + ':variableMoneyinfo:Unitpriceagency').value = "";
+ // }
+ }
+ }
+ //椤甸潰鍒锋柊閲嶆柊璁$畻閲戦
+ function CountCounttestPrice(){
+ var numberDetails =j$(escapeVfId('allPage:allForm:allBlock:ConsumableorderdetailsSection:consumableorderdetailsCount')).value();
+ for(var i = 0; i < numberDetails ; i++){
+ var ckeck = j$(escapeVfId('allPage:allForm:allBlock:ConsumableorderdetailsSection:ConsumableorderdetailsTable:' + i + ':variableinfo' + ':consumablesCountproRowCheckbox')).value();
+
+ if (ckeck == 'on') {
+ var a=document.getElementById ("allPage:allForm:allBlock:ConsumableorderdetailsSection:ConsumableorderdetailsTable:" + i +":variableAllprice:consumablesCounttestPrice");
+ if ({!Existarrive}) {
+ z = parseFloat(j$(escapeVfId('allPage:allForm:allBlock:ConsumableorderdetailsSection:ConsumableorderdetailsTable:' + i +':consumablesCount_UnEditout:consumablesCount_UnEditin')).value());
+ }else{
+ z = parseFloat(j$(escapeVfId('allPage:allForm:allBlock:ConsumableorderdetailsSection:ConsumableorderdetailsTable:' + i+':variable:consumablesCount')).value());
+ }
+ //z= z.replace(/,/g,'');
+ if(isNaN(z)){z=0.00;}
+ //alert(z);
+ x = j$(escapeVfId('allPage:allForm:allBlock:ConsumableorderdetailsSection:ConsumableorderdetailsTable:' + i +':variableMoneyinfo:productOrderMoneyinfo')).value().replace(/,/g,'');
+ c = parseFloat(z * x).toFixed(2);
+ //c = number_format_common (c,2,'.',',');
+ a.innerHTML = c;
+ SumCompute();
+ }
+ }
+ }
+
+ function ComputePriceCheck(j){ // FIXME lineNo 銇仐銇︺亸銇犮仌銇�
+ var z,x,c;
+ var a = j.id;
+ var i=a.substring(0,a.lastIndexOf(':'));// <apex:variable value="{!1}" var="lineNo" />
+ i=i.substring(0,i.lastIndexOf(':'));
+ var a=document.getElementById (i+":variableAllprice:consumablesCounttestPrice");
+ if ({!Existarrive}) {
+ z = parseFloat(j$(escapeVfId(i+':consumablesCount_UnEditout:consumablesCount_UnEditin')).value());
+ }else{
+ z = parseFloat(j$(escapeVfId(i+':variable:consumablesCount')).value());
}
//z= z.replace(/,/g,'');
if(isNaN(z)){z=0.00;}
//alert(z);
- x = j$(escapeVfId('allPage:allForm:allBlock:ConsumableorderdetailsSection:ConsumableorderdetailsTable:' + i +':variableMoneyinfo:productOrderMoneyinfo')).value().replace(/,/g,'');
+ x = j$(escapeVfId(i +':variableMoneyinfo:productOrderMoneyinfo')).value().replace(/,/g,'');
c = parseFloat(z * x).toFixed(2);
//c = number_format_common (c,2,'.',',');
a.innerHTML = c;
SumCompute();
}
- }
-}
-function ComputePriceCheck(j){ // FIXME lineNo 銇仐銇︺亸銇犮仌銇�
- var z,x,c;
- var a = j.id;
- var i=a.substring(0,a.lastIndexOf(':'));// <apex:variable value="{!1}" var="lineNo" />
- i=i.substring(0,i.lastIndexOf(':'));
- var a=document.getElementById (i+":variableAllprice:consumablesCounttestPrice");
- if ({!Existarrive}) {
- z = parseFloat(j$(escapeVfId(i+':consumablesCount_UnEditout:consumablesCount_UnEditin')).value());
- }else{
- z = parseFloat(j$(escapeVfId(i+':variable:consumablesCount')).value());
- }
- //z= z.replace(/,/g,'');
- if(isNaN(z)){z=0.00;}
- //alert(z);
- x = j$(escapeVfId(i +':variableMoneyinfo:productOrderMoneyinfo')).value().replace(/,/g,'');
- c = parseFloat(z * x).toFixed(2);
- //c = number_format_common (c,2,'.',',');
- a.innerHTML = c;
- SumCompute();
-}
+ function showCate() {
+ //var productCount = j$(escapeVfId('allPage:allForm:allBlock:searchBlock:category3Search')).value();
+ categoryload();
+ }
-function showCate() {
- //var productCount = j$(escapeVfId('allPage:allForm:allBlock:searchBlock:category3Search')).value();
- categoryload();
-}
+ function showAllCate() {
+ categoryAllload();
+ }
-function showAllCate() {
- categoryAllload();
-}
+ //椤甸潰鍔犺浇 椤圭洰鍒濆鍖�
+ function onLoadDirction(){
+ var x = j$(escapeVfId('allPage:allForm:allBlock:Editable:SummonsForDirction__c')).value();
+ var productCount = j$(escapeVfId('allPage:allForm:allBlock:ConsumableorderdetailsSection:consumableorderdetailsCount')).value();
-//椤甸潰鍔犺浇 椤圭洰鍒濆鍖�
-function onLoadDirction(){
- var x = j$(escapeVfId('allPage:allForm:allBlock:Editable:SummonsForDirction__c')).value();
- var productCount = j$(escapeVfId('allPage:allForm:allBlock:ConsumableorderdetailsSection:consumableorderdetailsCount')).value();
+ if(x == '鐩存帴閿�鍞粰鍖婚櫌'){
+ //鍖婚櫌
+ j$(escapeVfId('allPage:allForm:allBlock:Editable:OEC')).prop('disabled',false);
+ j$(escapeVfId('allPage:allForm:allBlock:Editable:Order_ForCustomer')).prop('disabled',false);
+ //浜岀骇缁忛攢鍟�
+ j$(escapeVfId('allPage:allForm:allBlock:Editable:province')).prop('disabled',true);
+ document.getElementById('allPage:allForm:allBlock:Editable:province').value = "";
+ j$(escapeVfId('allPage:allForm:allBlock:Editable:Order_ForDealerText')).prop('disabled',true);
+ document.getElementById('allPage:allForm:allBlock:Editable:Order_ForDealerText').value = "";
+ // for (var i = 0; i < productCount; i++) {
+ // j$(escapeVfId('allPage:allForm:allBlock:ConsumableorderdetailsSection:ConsumableorderdetailsTable:' + i + ':variableMoneyinfo:Unitpriceagency')).prop('disabled',true);
+ // document.getElementById('allPage:allForm:allBlock:ConsumableorderdetailsSection:ConsumableorderdetailsTable:' + i + ':variableMoneyinfo:Unitpriceagency').value = "";
+ // }
+ }else if(x == '鍖婚櫌璇曠敤'){
+ //鍖婚櫌
+ j$(escapeVfId('allPage:allForm:allBlock:Editable:OEC')).prop('disabled',false);
+ j$(escapeVfId('allPage:allForm:allBlock:Editable:Order_ForCustomer')).prop('disabled',false);
+ //浜岀骇缁忛攢鍟�
+ j$(escapeVfId('allPage:allForm:allBlock:Editable:province')).prop('disabled',false);
+ j$(escapeVfId('allPage:allForm:allBlock:Editable:Order_ForDealerText')).prop('disabled',false);
+ // for (var i = 0; i < productCount; i++) {
+ // j$(escapeVfId('allPage:allForm:allBlock:ConsumableorderdetailsSection:ConsumableorderdetailsTable:' + i + ':variableMoneyinfo:Unitpriceagency')).prop('disabled',true);
+ // document.getElementById('allPage:allForm:allBlock:ConsumableorderdetailsSection:ConsumableorderdetailsTable:' + i + ':variableMoneyinfo:Unitpriceagency').value = "";
+ // }
+ }else if(x == '閿�鍞粰浜岀骇缁忛攢鍟�'){
+ //鍖婚櫌
+ j$(escapeVfId('allPage:allForm:allBlock:Editable:OEC')).prop('disabled',false);
+ j$(escapeVfId('allPage:allForm:allBlock:Editable:Order_ForCustomer')).prop('disabled',false);
+ //浜岀骇缁忛攢鍟�
+ j$(escapeVfId('allPage:allForm:allBlock:Editable:province')).prop('disabled',false);
+ j$(escapeVfId('allPage:allForm:allBlock:Editable:Order_ForDealerText')).prop('disabled',false);
+ // for (var i = 0; i < productCount; i++) {
+ // j$(escapeVfId('allPage:allForm:allBlock:ConsumableorderdetailsSection:ConsumableorderdetailsTable:' + i + ':variableMoneyinfo:Unitpriceagency')).prop('disabled',false);
+ // }
+ }else if(x == '浜掔浉璋冭揣'){
+ //鍖婚櫌
+ j$(escapeVfId('allPage:allForm:allBlock:Editable:OEC')).prop('disabled',true);
+ document.getElementById('allPage:allForm:allBlock:Editable:OEC').value = "";
+ document.getElementById('allPage:allForm:allBlock:Editable:OECId').value = "";
+ j$(escapeVfId('allPage:allForm:allBlock:Editable:Order_ForCustomer')).prop('disabled',true);
+ document.getElementById('allPage:allForm:allBlock:Editable:Order_ForCustomer').value = "";
+ //浜岀骇缁忛攢鍟�
+ j$(escapeVfId('allPage:allForm:allBlock:Editable:province')).prop('disabled',false);
+ j$(escapeVfId('allPage:allForm:allBlock:Editable:Order_ForDealerText')).prop('disabled',false);
- if(x == '鐩存帴閿�鍞粰鍖婚櫌'){
- //鍖婚櫌
- j$(escapeVfId('allPage:allForm:allBlock:Editable:OEC')).prop('disabled',false);
- j$(escapeVfId('allPage:allForm:allBlock:Editable:Order_ForCustomer')).prop('disabled',false);
- //浜岀骇缁忛攢鍟�
- j$(escapeVfId('allPage:allForm:allBlock:Editable:province')).prop('disabled',true);
- document.getElementById('allPage:allForm:allBlock:Editable:province').value = "";
- j$(escapeVfId('allPage:allForm:allBlock:Editable:Order_ForDealerText')).prop('disabled',true);
- document.getElementById('allPage:allForm:allBlock:Editable:Order_ForDealerText').value = "";
- // for (var i = 0; i < productCount; i++) {
- // j$(escapeVfId('allPage:allForm:allBlock:ConsumableorderdetailsSection:ConsumableorderdetailsTable:' + i + ':variableMoneyinfo:Unitpriceagency')).prop('disabled',true);
- // document.getElementById('allPage:allForm:allBlock:ConsumableorderdetailsSection:ConsumableorderdetailsTable:' + i + ':variableMoneyinfo:Unitpriceagency').value = "";
- // }
- }else if(x == '鍖婚櫌璇曠敤'){
- //鍖婚櫌
- j$(escapeVfId('allPage:allForm:allBlock:Editable:OEC')).prop('disabled',false);
- j$(escapeVfId('allPage:allForm:allBlock:Editable:Order_ForCustomer')).prop('disabled',false);
- //浜岀骇缁忛攢鍟�
- j$(escapeVfId('allPage:allForm:allBlock:Editable:province')).prop('disabled',false);
- j$(escapeVfId('allPage:allForm:allBlock:Editable:Order_ForDealerText')).prop('disabled',false);
- // for (var i = 0; i < productCount; i++) {
- // j$(escapeVfId('allPage:allForm:allBlock:ConsumableorderdetailsSection:ConsumableorderdetailsTable:' + i + ':variableMoneyinfo:Unitpriceagency')).prop('disabled',true);
- // document.getElementById('allPage:allForm:allBlock:ConsumableorderdetailsSection:ConsumableorderdetailsTable:' + i + ':variableMoneyinfo:Unitpriceagency').value = "";
- // }
- }else if(x == '閿�鍞粰浜岀骇缁忛攢鍟�'){
- //鍖婚櫌
- j$(escapeVfId('allPage:allForm:allBlock:Editable:OEC')).prop('disabled',false);
- j$(escapeVfId('allPage:allForm:allBlock:Editable:Order_ForCustomer')).prop('disabled',false);
- //浜岀骇缁忛攢鍟�
- j$(escapeVfId('allPage:allForm:allBlock:Editable:province')).prop('disabled',false);
- j$(escapeVfId('allPage:allForm:allBlock:Editable:Order_ForDealerText')).prop('disabled',false);
- // for (var i = 0; i < productCount; i++) {
- // j$(escapeVfId('allPage:allForm:allBlock:ConsumableorderdetailsSection:ConsumableorderdetailsTable:' + i + ':variableMoneyinfo:Unitpriceagency')).prop('disabled',false);
- // }
- }else if(x == '浜掔浉璋冭揣'){
- //鍖婚櫌
- j$(escapeVfId('allPage:allForm:allBlock:Editable:OEC')).prop('disabled',true);
- document.getElementById('allPage:allForm:allBlock:Editable:OEC').value = "";
- document.getElementById('allPage:allForm:allBlock:Editable:OECId').value = "";
- j$(escapeVfId('allPage:allForm:allBlock:Editable:Order_ForCustomer')).prop('disabled',true);
- document.getElementById('allPage:allForm:allBlock:Editable:Order_ForCustomer').value = "";
- //浜岀骇缁忛攢鍟�
- j$(escapeVfId('allPage:allForm:allBlock:Editable:province')).prop('disabled',false);
- j$(escapeVfId('allPage:allForm:allBlock:Editable:Order_ForDealerText')).prop('disabled',false);
+ // for (var i = 0; i < productCount; i++) {
+ // j$(escapeVfId('allPage:allForm:allBlock:ConsumableorderdetailsSection:ConsumableorderdetailsTable:' + i + ':variableMoneyinfo:Unitpriceagency')).prop('disabled',true);
+ // document.getElementById('allPage:allForm:allBlock:ConsumableorderdetailsSection:ConsumableorderdetailsTable:' + i + ':variableMoneyinfo:Unitpriceagency').value = "";
+ // }
+ }
+ }
- // for (var i = 0; i < productCount; i++) {
- // j$(escapeVfId('allPage:allForm:allBlock:ConsumableorderdetailsSection:ConsumableorderdetailsTable:' + i + ':variableMoneyinfo:Unitpriceagency')).prop('disabled',true);
- // document.getElementById('allPage:allForm:allBlock:ConsumableorderdetailsSection:ConsumableorderdetailsTable:' + i + ':variableMoneyinfo:Unitpriceagency').value = "";
- // }
- }
-}
-
-window.sfdcPage.appendToOnloadQueue(function() { onLoadDirction(); });
-
-</script>
-<style>
- .visitorplace_results {
- border: 1px solid gray;
- background-color: white;
- padding: 0;
- margin: 0;
- list-style: none;
- position: absolute;
- z-index: 10000;
- display: none;
- overflow:auto;
- white-space:nowrap;
- width:400px;
- height:250px;
- }
- .visitorplace_results li {
- padding: 2px 5px 2px 0px;
- margin-left : 2px;
- color: #101010;
- text-align: left;
- }
- .panelGridCenter td,.panelGridCenter tr {
- text-align: center;
- }
- .dateFormat {
- display: none;
- }
- tr.dataRow {
- background-color:white;
- }
- td.columus {
- background-color:white;
- text-align: right;
- }
- tr.dataRow:hover {
- background-color: #e3f3ff;
- }
-</style>
+ window.sfdcPage.appendToOnloadQueue(function() { onLoadDirction(); });
+ </script>
+ <style>
+ .visitorplace_results {
+ border: 1px solid gray;
+ background-color: white;
+ padding: 0;
+ margin: 0;
+ list-style: none;
+ position: absolute;
+ z-index: 10000;
+ display: none;
+ overflow: auto;
+ white-space: nowrap;
+ width: 400px;
+ height: 250px;
+ }
+ .visitorplace_results li {
+ padding: 2px 5px 2px 0px;
+ margin-left: 2px;
+ color: #101010;
+ text-align: left;
+ }
+ .panelGridCenter td,
+ .panelGridCenter tr {
+ text-align: center;
+ }
+ .dateFormat {
+ display: none;
+ }
+ tr.dataRow {
+ background-color: white;
+ }
+ td.columus {
+ background-color: white;
+ text-align: right;
+ }
+ tr.dataRow:hover {
+ background-color: #e3f3ff;
+ }
+ </style>
<apex:form id="allForm">
- <!-- //add by rentx 2021-2-26 -->
- <apex:actionFunction name="checkOutPatternFn" action="{!checkOutPattern}" status="fetchStatus" reRender="ConsumableorderdetailsSection,message,OutPattern01" onComplete="CountCounttestPrice();onLoadDirction();"/>
- <!-- //add by rentx 2021-2-26 -->
- <apex:actionFunction name="refreshPageSize" action="{!refreshPageSize}" status="fetchStatus" reRender="ConsumableorderdetailsSection,message" onComplete="CountCounttestPrice();onLoadDirction();"/>
- <apex:actionFunction name="save" action="{!save}" rerender=" message,Editable,ConsumableorderdetailsSection" onComplete="unblockUI();CountCounttestPrice();onLoadDirction();">
+ <!-- //add by rentx 2021-2-26 -->
+ <apex:actionFunction
+ name="checkOutPatternFn"
+ action="{!checkOutPattern}"
+ status="fetchStatus"
+ reRender="ConsumableorderdetailsSection,message,OutPattern01"
+ onComplete="CountCounttestPrice();onLoadDirction();"
+ />
+ <!-- //add by rentx 2021-2-26 -->
+ <apex:actionFunction
+ name="refreshPageSize"
+ action="{!refreshPageSize}"
+ status="fetchStatus"
+ reRender="ConsumableorderdetailsSection,message"
+ onComplete="CountCounttestPrice();onLoadDirction();"
+ />
+ <apex:actionFunction
+ name="save"
+ action="{!save}"
+ rerender=" message,Editable,ConsumableorderdetailsSection"
+ onComplete="unblockUI();CountCounttestPrice();onLoadDirction();"
+ >
</apex:actionFunction>
- <apex:actionFunction name="categoryload" action="{!categoryload}" rerender="searchBlock" onComplete="unblockUI();">
+ <apex:actionFunction
+ name="categoryload"
+ action="{!categoryload}"
+ rerender="searchBlock"
+ onComplete="unblockUI();"
+ >
</apex:actionFunction>
- <apex:actionFunction name="categoryAllload" action="{!categoryAllload}" rerender="searchBlock" onComplete="unblockUI();">
+ <apex:actionFunction
+ name="categoryAllload"
+ action="{!categoryAllload}"
+ rerender="searchBlock"
+ onComplete="unblockUI();"
+ >
</apex:actionFunction>
- <apex:actionFunction name="searchConsumableorderdetails" action="{!searchConsumableorderdetails}" rerender="ConsumableorderdetailsSection, message" onComplete="unblockUI();CountCounttestPrice();onLoadDirction();">
+ <apex:actionFunction
+ name="searchConsumableorderdetails"
+ action="{!searchConsumableorderdetails}"
+ rerender="ConsumableorderdetailsSection, message"
+ onComplete="unblockUI();CountCounttestPrice();onLoadDirction();"
+ >
</apex:actionFunction>
- <apex:actionFunction name="setEditAble" action="{!setEditAble}" rerender="ConsumableorderdetailsSection, message" onComplete="unblockUI();">
+ <apex:actionFunction
+ name="setEditAble"
+ action="{!setEditAble}"
+ rerender="ConsumableorderdetailsSection, message"
+ onComplete="unblockUI();"
+ >
</apex:actionFunction>
- <apex:actionFunction name="approval" action="{!approval}" rerender="allForm" onComplete="unblockUI();openPDF();">
+ <apex:actionFunction
+ name="approval"
+ action="{!approval}"
+ rerender="allForm"
+ onComplete="unblockUI();openPDF();"
+ >
</apex:actionFunction>
- <apex:actionFunction name="DelConsumable" action="{!DelConsumable}" rerender="ConsumableorderdetailsSection, message" onComplete="unblockUI();">
+ <apex:actionFunction
+ name="DelConsumable"
+ action="{!DelConsumable}"
+ rerender="ConsumableorderdetailsSection, message"
+ onComplete="unblockUI();"
+ >
</apex:actionFunction>
- <apex:actionFunction name="PraseToPDF" action="{!PraseToPDF}" rerender="ConsumableorderdetailsSection, message" onComplete="unblockUI();">
+ <apex:actionFunction
+ name="PraseToPDF"
+ action="{!PraseToPDF}"
+ rerender="ConsumableorderdetailsSection, message"
+ onComplete="unblockUI();"
+ >
</apex:actionFunction>
- <apex:actionFunction name="GoodsDelivery" action="{!GoodsDelivery}" rerender="ConsumableorderdetailsSection, message" onComplete="unblockUI();">
+ <apex:actionFunction
+ name="GoodsDelivery"
+ action="{!GoodsDelivery}"
+ rerender="ConsumableorderdetailsSection, message"
+ onComplete="unblockUI();"
+ >
</apex:actionFunction>
- <apex:actionFunction name="SortLimited" action="{!SortLimited}" rerender="ConsumableorderdetailsSection, message" onComplete="unblockUI();CountCounttestPrice();onLoadDirction();">
+ <apex:actionFunction
+ name="SortLimited"
+ action="{!SortLimited}"
+ rerender="ConsumableorderdetailsSection, message"
+ onComplete="unblockUI();CountCounttestPrice();onLoadDirction();"
+ >
<apex:param name="firstParam" assignTo="{!sortKey}" value="" />
</apex:actionFunction>
<!--<apex:actionFunction name="SortStore" action="{!SortStore}" rerender="ConsumableorderdetailsSection, message" onComplete="unblockUI();">
<apex:param name="firstParam" assignTo="{!sortKey}" value="" />
</apex:actionFunction>-->
- <apex:actionFunction name="FilesUpload" action="{!FilesUpload}" rerender="ConsumableorderdetailsSection, message" onComplete="unblockUI();">
+ <apex:actionFunction
+ name="FilesUpload"
+ action="{!FilesUpload}"
+ rerender="ConsumableorderdetailsSection, message"
+ onComplete="unblockUI();"
+ >
</apex:actionFunction>
<apex:outputPanel id="allPanel">
- <input type="hidden" id="userState" value="{!localuser.State_Hospital__c}"/>
- <apex:pageBlock id="allBlock" >
+ <input
+ type="hidden"
+ id="userState"
+ value="{!localuser.State_Hospital__c}"
+ />
+ <apex:pageBlock id="allBlock">
<table>
<colgroup>
- <col width="150px"/>
- <col width="200px"/>
- <col width="200px"/>
- <col width="200px"/>
- <col width="200px"/>
- <col width="200px"/>
- <col width="90px"/>
- <col width="100px"/>
- <col width="10px"/>
- <col width="85px"/>
- <col width="100px"/>
- <col width="10px"/>
- <col width="70px"/>
- <col width="100px"/>
+ <col width="150px" />
+ <col width="200px" />
+ <col width="200px" />
+ <col width="200px" />
+ <col width="200px" />
+ <col width="200px" />
+ <col width="90px" />
+ <col width="100px" />
+ <col width="10px" />
+ <col width="85px" />
+ <col width="100px" />
+ <col width="10px" />
+ <col width="70px" />
+ <col width="100px" />
</colgroup>
<tr>
<td></td>
- <td colspan="4"><apex:commandButton onclick="saveConfirmJs('{!coc.SummonsStatus_c__c}');" value="淇濆瓨" style="width:150px" rerender="dummy" rendered="{!(EditDelCommitBtnDisabled||EditAble)}"/></td>
+ <td colspan="4">
+ <apex:commandButton
+ onclick="saveConfirmJs('{!coc.SummonsStatus_c__c}');"
+ value="淇濆瓨"
+ style="width: 150px"
+ rerender="dummy"
+ rendered="{!(EditDelCommitBtnDisabled||EditAble)}"
+ />
+ </td>
</tr>
<tr>
<td></td>
- <td ><apex:commandButton onclick="EditConsumable();" value="缂栬緫鍑哄簱鍗�" style="width:150px" rerender="dummy" rendered="{!!(EditDelCommitBtnDisabled||EditAble)}" disabled="{!IF(coc.SummonsStatus_c__c='宸插畬鎴�',true,false)}"/></td>
+ <td>
+ <apex:commandButton
+ onclick="EditConsumable();"
+ value="缂栬緫鍑哄簱鍗�"
+ style="width: 150px"
+ rerender="dummy"
+ rendered="{!!(EditDelCommitBtnDisabled||EditAble)}"
+ disabled="{!IF(coc.SummonsStatus_c__c='宸插畬鎴�',true,false)}"
+ />
+ </td>
<!--CHAN-B65CAZ 20181105 UpdateStart-->
<!-- <td ><apex:commandButton onclick="CommitConsumable();" value="鎻愪氦鍑哄簱鍗�" style="width:150px" rerender="dummy" rendered="{!!(EditDelCommitBtnDisabled||EditAble)}" disabled="{!IF(coc.SummonsStatus_c__c='鎵瑰噯'||coc.SummonsStatus_c__c='宸查攢鍞緟涓婁紶绾冲搧涔�'||coc.SummonsStatus_c__c='鍑哄簱鍗曞凡鎵撳嵃'||coc.SummonsStatus_c__c='宸插畬鎴�',true,false)}"/></td> -->
- <td ><apex:commandButton onclick="GoodsDeliveryJs();" value="鍑鸿揣/閿�鍞�" style="width:150px" rerender="dummy" rendered="{!!(EditDelCommitBtnDisabled||EditAble)}" disabled="{!IF(coc.SummonsStatus_c__c='宸查攢鍞緟涓婁紶绾冲搧涔�'||coc.SummonsStatus_c__c='宸插畬鎴�'||coc.SummonsStatus_c__c='浠锋牸鏈畾',true,false)}"/></td>
+ <td>
+ <apex:commandButton
+ onclick="GoodsDeliveryJs();"
+ value="鍑鸿揣/閿�鍞�"
+ style="width: 150px"
+ rerender="dummy"
+ rendered="{!!(EditDelCommitBtnDisabled||EditAble)}"
+ disabled="{!IF(coc.SummonsStatus_c__c='宸查攢鍞緟涓婁紶绾冲搧涔�'||coc.SummonsStatus_c__c='宸插畬鎴�'||coc.SummonsStatus_c__c='浠锋牸鏈畾',true,false)}"
+ />
+ </td>
<!-- CHAN-B65CAZ 20181105 UpdateEnd-->
- <td ><apex:commandButton onclick="openToInvoiceJs();return false;" value="寮�绁�" style="width:150px" rerender="dummy" rendered="{!!(EditDelCommitBtnDisabled||EditAble)}" disabled="{!IF(((coc.Billed_Status__c !='鍏ㄩ儴寮�绁�' &&coc.SummonsStatus_c__c='宸插畬鎴�') || coc.Onchange_order__c = true) && coc.SummonsForDirction__c!='浜掔浉璋冭揣',false,true)}"/></td>
+ <td>
+ <apex:commandButton
+ onclick="openToInvoiceJs();return false;"
+ value="寮�绁�"
+ style="width: 150px"
+ rerender="dummy"
+ rendered="{!!(EditDelCommitBtnDisabled||EditAble)}"
+ disabled="{!IF(((coc.Billed_Status__c !='鍏ㄩ儴寮�绁�' &&coc.SummonsStatus_c__c='宸插畬鎴�') || coc.Onchange_order__c = true) && coc.SummonsForDirction__c!='浜掔浉璋冭揣',false,true)}"
+ />
+ </td>
</tr>
<tr>
<td></td>
<!--CHAN-B65CAZ 20181105 UpdateStart-->
- <td ><apex:commandButton onclick="PraseToPDFJs();" value="鎵撳嵃鎸囩ず鍗�" style="width:150px" rerender="dummy" rendered="{!!(EditDelCommitBtnDisabled||EditAble)}" disabled="{!IF(coc.SummonsStatus_c__c='宸查攢鍞緟涓婁紶绾冲搧涔�'||coc.SummonsStatus_c__c='鎵瑰噯'||coc.SummonsStatus_c__c='鍑哄簱鍗曞凡鎵撳嵃'||coc.SummonsStatus_c__c='鑽夋涓�',false,true)}"/></td>
- <!-- CHAN-B65CAZ 20181105 UpdateEnd-->
- <td ><apex:commandButton onclick="openReportJs(); return false;" value="鏄剧ず鏄庣粏" style="width:150px" rerender="dummy" rendered="{!!(EditDelCommitBtnDisabled||EditAble)}" disabled="{!IF(coc.Billed_Status__c !='杩樻病寮�绁�' || coc.SummonsStatus_c__c='宸插畬鎴�',false,true)}"/></td>
- <td ><apex:commandButton onclick="DeleteConsumable();" value="鍒犻櫎" style="width:150px" rerender="dummy" rendered="{!!(EditDelCommitBtnDisabled||EditAble)}" disabled="{!IF(coc.SummonsStatus_c__c='宸查攢鍞緟涓婁紶绾冲搧涔�'||coc.SummonsStatus_c__c='浠锋牸鏈畾'||coc.SummonsStatus_c__c='鎵瑰噯'||coc.SummonsStatus_c__c='鍑哄簱鍗曞凡鎵撳嵃'||coc.SummonsStatus_c__c='宸插畬鎴�',true,false)}"/></td>
- <td >
+ <td>
+ <apex:commandButton
+ onclick="PraseToPDFJs();"
+ value="鎵撳嵃鎸囩ず鍗�"
+ style="width: 150px"
+ rerender="dummy"
+ rendered="{!!(EditDelCommitBtnDisabled||EditAble)}"
+ disabled="{!IF(coc.SummonsStatus_c__c='宸查攢鍞緟涓婁紶绾冲搧涔�'||coc.SummonsStatus_c__c='鎵瑰噯'||coc.SummonsStatus_c__c='鍑哄簱鍗曞凡鎵撳嵃'||coc.SummonsStatus_c__c='鑽夋涓�',false,true)}"
+ />
</td>
+ <!-- CHAN-B65CAZ 20181105 UpdateEnd-->
+ <td>
+ <apex:commandButton
+ onclick="openReportJs(); return false;"
+ value="鏄剧ず鏄庣粏"
+ style="width: 150px"
+ rerender="dummy"
+ rendered="{!!(EditDelCommitBtnDisabled||EditAble)}"
+ disabled="{!IF(coc.Billed_Status__c !='杩樻病寮�绁�' || coc.SummonsStatus_c__c='宸插畬鎴�',false,true)}"
+ />
+ </td>
+ <td>
+ <apex:commandButton
+ onclick="DeleteConsumable();"
+ value="鍒犻櫎"
+ style="width: 150px"
+ rerender="dummy"
+ rendered="{!!(EditDelCommitBtnDisabled||EditAble)}"
+ disabled="{!IF(coc.SummonsStatus_c__c='宸查攢鍞緟涓婁紶绾冲搧涔�'||coc.SummonsStatus_c__c='浠锋牸鏈畾'||coc.SummonsStatus_c__c='鎵瑰噯'||coc.SummonsStatus_c__c='鍑哄簱鍗曞凡鎵撳嵃'||coc.SummonsStatus_c__c='宸插畬鎴�',true,false)}"
+ />
+ </td>
+ <td></td>
</tr>
</table>
<apex:outputPanel id="message">
<apex:pageMessages />
- </apex:outputPanel>
-<!--==============20160314====INSERT_CODE_END=======================================-->
- <apex:pageBlock title="鍑哄簱鍗曚俊鎭�" id="Editable" rendered="{!EditAble}">
- <!-- update start by vivek 2019-7-15 -->
+ </apex:outputPanel>
+ <!--==============20160314====INSERT_CODE_END=======================================-->
+ <apex:pageBlock
+ title="鍑哄簱鍗曚俊鎭�"
+ id="Editable"
+ rendered="{!EditAble}"
+ >
+ <!-- update start by vivek 2019-7-15 -->
<!-- <table>
<colgroup>
<col width="150px"/>
@@ -501,162 +655,308 @@
<col width="70px"/>
<col width="100px"/>
</colgroup> -->
- <!-- update end by vivek 2019-7-15 -->
- <!-- update start by vivek 2019-7-15 -->
- <apex:outputPanel rendered="{! If(coc.SummonsStatus_c__c == '浠锋牸鏈畾',true,false) }">
+ <!-- update end by vivek 2019-7-15 -->
+ <!-- update start by vivek 2019-7-15 -->
+ <apex:outputPanel
+ rendered="{! If(coc.SummonsStatus_c__c == '浠锋牸鏈畾',true,false) }"
+ >
<table>
- <colgroup>
- <col width="150px"/>
- <col width="300px"/>
- <col width="150px"/>
- <col width="300px"/>
- <col width="80px"/>
- <col width="10px"/>
- <col width="90px"/>
- <col width="100px"/>
- <col width="10px"/>
- <col width="85px"/>
- <col width="100px"/>
- <col width="10px"/>
- <col width="70px"/>
- <col width="100px"/>
- </colgroup>
- <tr>
+ <colgroup>
+ <col width="150px" />
+ <col width="300px" />
+ <col width="150px" />
+ <col width="300px" />
+ <col width="80px" />
+ <col width="10px" />
+ <col width="90px" />
+ <col width="100px" />
+ <col width="10px" />
+ <col width="85px" />
+ <col width="100px" />
+ <col width="10px" />
+ <col width="70px" />
+ <col width="100px" />
+ </colgroup>
+ <tr>
<td align="right">鍑哄簱鍗曞彿锛�</td>
- <td align="left"><apex:outputField id="OrderCode_out2" value="{!coc.Name}" style="width:300px"/></td>
+ <td align="left">
+ <apex:outputField
+ id="OrderCode_out2"
+ value="{!coc.Name}"
+ style="width: 300px"
+ />
+ </td>
<td align="right">鍑哄簱鍗曠姸鎬侊細</td>
- <td align="left"><apex:outputField id="OrderStatus_out2" value="{!coc.SummonsStatus_c__c}" style="width:300px"/></td>
+ <td align="left">
+ <apex:outputField
+ id="OrderStatus_out2"
+ value="{!coc.SummonsStatus_c__c}"
+ style="width: 300px"
+ />
+ </td>
</tr>
<tr>
<td align="right">鐩殑锛�</td>
- <td align="left"><apex:outputField id="OrderDirction_out2" value="{!coc.SummonsForDirction__c}" style="width:300px"/></td>
+ <td align="left">
+ <apex:outputField
+ id="OrderDirction_out2"
+ value="{!coc.SummonsForDirction__c}"
+ style="width: 300px"
+ />
+ </td>
<td align="right">寮�绁ㄧ姸鎬侊細</td>
<td align="left">
- <apex:outputField id="SecondDealer_level22" value="{!coc.Billed_Status__c}" style="width:300px"/>
+ <apex:outputField
+ id="SecondDealer_level22"
+ value="{!coc.Billed_Status__c}"
+ style="width: 300px"
+ />
</td>
-
</tr>
- <tr style="{!IF(coc.SummonsForDirction__c='閿�鍞粰浜岀骇缁忛攢鍟�','','display:none')}">
+ <tr
+ style="{!IF(coc.SummonsForDirction__c='閿�鍞粰浜岀骇缁忛攢鍟�','','display:none')}"
+ >
<td align="right">浜岀骇缁忛攢鍟嗭細</td>
- <td align="left"><apex:outputField id="SecondDealer_out2" value="{!coc.Order_Dealer_Info__c}" style="width:300px"/></td>
+ <td align="left">
+ <apex:outputField
+ id="SecondDealer_out2"
+ value="{!coc.Order_Dealer_Info__c}"
+ style="width: 300px"
+ />
+ </td>
<td align="right"></td>
<td align="left"></td>
</tr>
<tr>
<td align="right">瀹㈡埛鍚嶏細</td>
- <td align="left"><apex:outputField id="OrderForHospital_out2" value="{!coc.ShipmentAccount__c}" style="width:300px"/></td>
- <td align="right"><apex:outputText value="鍙戠エ锛�" rendered="{!IF(coc.SummonsStatus_c__c='宸插畬鎴�' && coc.SummonsForDirction__c!='浜掔浉璋冭揣',true,false)}"/></td>
- <td align="left"><apex:inputField value="{!coc.ConInvoice_Code__c}" rendered="{!IF(coc.SummonsStatus_c__c='宸插畬鎴�' && coc.SummonsForDirction__c!='浜掔浉璋冭揣',true,false)}" id="ConInvoice_Code2"/>
- <c:helpicon helpText="宸插紑绁ㄧ殑鎹㈣揣鐨勬椂鍊欙紝閫夋嫨宸插紑绁ㄧ殑鍙戠エ銆�" rendered="{!IF(coc.SummonsStatus_c__c='宸插畬鎴�' && coc.SummonsForDirction__c!='浜掔浉璋冭揣',true,false)}"/>
+ <td align="left">
+ <apex:outputField
+ id="OrderForHospital_out2"
+ value="{!coc.ShipmentAccount__c}"
+ style="width: 300px"
+ />
+ </td>
+ <td align="right">
+ <apex:outputText
+ value="鍙戠エ锛�"
+ rendered="{!IF(coc.SummonsStatus_c__c='宸插畬鎴�' && coc.SummonsForDirction__c!='浜掔浉璋冭揣',true,false)}"
+ />
+ </td>
+ <td align="left">
+ <apex:inputField
+ value="{!coc.ConInvoice_Code__c}"
+ rendered="{!IF(coc.SummonsStatus_c__c='宸插畬鎴�' && coc.SummonsForDirction__c!='浜掔浉璋冭揣',true,false)}"
+ id="ConInvoice_Code2"
+ />
+ <c:helpicon
+ helpText="宸插紑绁ㄧ殑鎹㈣揣鐨勬椂鍊欙紝閫夋嫨宸插紑绁ㄧ殑鍙戠エ銆�"
+ rendered="{!IF(coc.SummonsStatus_c__c='宸插畬鎴�' && coc.SummonsForDirction__c!='浜掔浉璋冭揣',true,false)}"
+ />
</td>
</tr>
<tr>
<td align="right">绉戝锛�</td>
<td align="left">
- <apex:outputField id="Order_ForDealerText2" value="{!coc.Order_ForCustomerText__c}" style="width:170px"/>
+ <apex:outputField
+ id="Order_ForDealerText2"
+ value="{!coc.Order_ForCustomerText__c}"
+ style="width: 170px"
+ />
</td>
<td align="right">鍑哄簱閲戦锛�</td>
- <td align="left"><apex:outputField id="sumPrice_buttom2" value="{!coc.Shipment_total_amount__c}" style="width:300px"/> 鍏�</td>
+ <td align="left">
+ <apex:outputField
+ id="sumPrice_buttom2"
+ value="{!coc.Shipment_total_amount__c}"
+ style="width: 300px"
+ />
+ 鍏�
+ </td>
</tr>
<tr>
<td align="right">娌℃湁纭畾浠锋牸锛�</td>
<td align="left">
- <apex:inputCheckbox id="NoConfirmedPrice_out2" value="{!coc.NoConfirmedPrice__c}" disabled="true" />
+ <apex:inputCheckbox
+ id="NoConfirmedPrice_out2"
+ value="{!coc.NoConfirmedPrice__c}"
+ disabled="true"
+ />
</td>
<!-- ===add by rentx 2020-12-04 start -->
<!-- <apex:detail rendered="{!agencyProType == 'ENG'}"> -->
- <!-- <td align="right">鏄惁鍖婚櫌鐗逛环鍑哄簱 : </td> -->
- <!-- <td align="left"> -->
- <apex:inputHidden id="OutPattern02" value="{!coc.OutPattern__c}" />
- <!-- <apex:outputField id="OutPattern02" value="{!coc.OutPattern__c}" /> -->
- <!-- <apex:inputCheckbox id="OutPattern02" value="{!coc.OutPattern__c}" disabled="true" /> -->
+ <!-- <td align="right">鏄惁鍖婚櫌鐗逛环鍑哄簱 : </td> -->
+ <!-- <td align="left"> -->
+ <apex:inputHidden
+ id="OutPattern02"
+ value="{!coc.OutPattern__c}"
+ />
+ <!-- <apex:outputField id="OutPattern02" value="{!coc.OutPattern__c}" /> -->
+ <!-- <apex:inputCheckbox id="OutPattern02" value="{!coc.OutPattern__c}" disabled="true" /> -->
- <!-- <apex:inputField id="OutPattern" value="{!coc.DeliveryMode__c}" style="width:160px"/> -->
- <!-- </td> -->
+ <!-- <apex:inputField id="OutPattern" value="{!coc.DeliveryMode__c}" style="width:160px"/> -->
+ <!-- </td> -->
<!-- </apex:detail> -->
<!-- ===add by rentx 2020-12-04 end -->
</tr>
</table>
- </apex:outputPanel>
- <apex:outputPanel rendered="{! If(coc.SummonsStatus_c__c != '浠锋牸鏈畾',true,false) }">
+ </apex:outputPanel>
+ <apex:outputPanel
+ rendered="{! If(coc.SummonsStatus_c__c != '浠锋牸鏈畾',true,false) }"
+ >
<table>
- <colgroup>
- <col width="150px"/>
- <col width="300px"/>
- <col width="150px"/>
- <col width="300px"/>
- <col width="80px"/>
- <col width="10px"/>
- <col width="90px"/>
- <col width="100px"/>
- <col width="10px"/>
- <col width="85px"/>
- <col width="100px"/>
- <col width="10px"/>
- <col width="70px"/>
- <col width="100px"/>
- </colgroup>
- <tr id = "SummonsFlag" style="visibility:{!SummonsFlag}">
+ <colgroup>
+ <col width="150px" />
+ <col width="300px" />
+ <col width="150px" />
+ <col width="300px" />
+ <col width="80px" />
+ <col width="10px" />
+ <col width="90px" />
+ <col width="100px" />
+ <col width="10px" />
+ <col width="85px" />
+ <col width="100px" />
+ <col width="10px" />
+ <col width="70px" />
+ <col width="100px" />
+ </colgroup>
+ <tr
+ id="SummonsFlag"
+ style="visibility:{!SummonsFlag}"
+ >
<td align="right">鍑哄簱鍗曞彿锛�</td>
- <td align="left"><apex:outputField id="OrderCode" value="{!coc.Name}" style="width:100px"/></td>
+ <td align="left">
+ <apex:outputField
+ id="OrderCode"
+ value="{!coc.Name}"
+ style="width: 100px"
+ />
+ </td>
<td align="right">鍑哄簱鍗曠姸鎬侊細</td>
- <td align="left"><apex:outputField id="SummonsStatus_c__c" value="{!coc.SummonsStatus_c__c}" style="width:100px"/></td>
+ <td align="left">
+ <apex:outputField
+ id="SummonsStatus_c__c"
+ value="{!coc.SummonsStatus_c__c}"
+ style="width: 100px"
+ />
+ </td>
</tr>
<tr>
<td align="right">鐩殑锛�</td>
- <td align="left"><div style="width:3px;height:20px;background-color:red; position:absolute;margin-right:5px;"></div>
- <apex:inputField onchange="ChangeDirction(this)" id="SummonsForDirction__c" value="{!coc.SummonsForDirction__c}" style="width:160px"/></td>
+ <td align="left">
+ <div
+ style="
+ width: 3px;
+ height: 20px;
+ background-color: red;
+ position: absolute;
+ margin-right: 5px;
+ "
+ ></div>
+ <apex:inputField
+ onchange="ChangeDirction(this)"
+ id="SummonsForDirction__c"
+ value="{!coc.SummonsForDirction__c}"
+ style="width: 160px"
+ />
+ </td>
<td align="right">浜岀骇缁忛攢鍟嗭細</td>
<td align="left">
- <apex:selectList id="province" value="{!SecondDealer}" style="width:160px" size="1" >
- <apex:selectOptions value="{!provinceOpts}"/>
- </apex:selectList>
+ <apex:selectList
+ id="province"
+ value="{!SecondDealer}"
+ style="width: 160px"
+ size="1"
+ >
+ <apex:selectOptions
+ value="{!provinceOpts}"
+ />
+ </apex:selectList>
</td>
</tr>
<tr>
<td align="right">瀹㈡埛鍚嶏細</td>
<td align="left">
- <apex:inputText id="OEC" value="{!HospitalName}" onclick="searchsearchAgencyH('{!agencyProType}'); return false;" onblur="clearAgencyI();return false;" style="width:155px" />
- <apex:inputHidden value="{!HospitalInfo}" id="OECId" />
+ <apex:inputText
+ id="OEC"
+ value="{!HospitalName}"
+ onclick="searchsearchAgencyH('{!agencyProType}'); return false;"
+ onblur="clearAgencyI();return false;"
+ style="width: 155px"
+ />
+ <apex:inputHidden
+ value="{!HospitalInfo}"
+ id="OECId"
+ />
</td>
<td align="right">缁忛攢鍟�(褰曞叆)锛�</td>
<td align="left">
- <apex:inputField id="Order_ForDealerText" value="{!coc.Order_ForDealerText__c}" onfocus="setVisitorPlace();" style="width:155px" onblur="if (j$(escapeVfId('allPage:allForm:allBlock:Editable:SummonsForDirction__c')).value() == '浜掔浉璋冭揣'){vpClear2_delay();}"/>
-<!-- <apex:inputField id="Order_ForDealerText" value="{!coc.Order_ForDealerText__c}" style="width:155px" onblur="if (j$(escapeVfId('allPage:allForm:allBlock:Editable:SummonsForDirction__c')).value() == '浜掔浉璋冭揣'){vpClear2_delay();}"/>-->
- <apex:inputHidden id="Order_ForDealerTextHidden" value="{!coc.Order_ForDealerText__c}" />
- <apex:inputHidden id="Order_ForDealerTextId" value="{!coc.Order_ForDealerTextID__c}" />
- <apex:inputHidden id="Order_ForDealerTextHiddenId" value="{!coc.Order_ForDealerTextID__c}" />
+ <apex:inputField
+ id="Order_ForDealerText"
+ value="{!coc.Order_ForDealerText__c}"
+ onfocus="setVisitorPlace();"
+ style="width: 155px"
+ onblur="if (j$(escapeVfId('allPage:allForm:allBlock:Editable:SummonsForDirction__c')).value() == '浜掔浉璋冭揣'){vpClear2_delay();}"
+ />
+ <!-- <apex:inputField id="Order_ForDealerText" value="{!coc.Order_ForDealerText__c}" style="width:155px" onblur="if (j$(escapeVfId('allPage:allForm:allBlock:Editable:SummonsForDirction__c')).value() == '浜掔浉璋冭揣'){vpClear2_delay();}"/>-->
+ <apex:inputHidden
+ id="Order_ForDealerTextHidden"
+ value="{!coc.Order_ForDealerText__c}"
+ />
+ <apex:inputHidden
+ id="Order_ForDealerTextId"
+ value="{!coc.Order_ForDealerTextID__c}"
+ />
+ <apex:inputHidden
+ id="Order_ForDealerTextHiddenId"
+ value="{!coc.Order_ForDealerTextID__c}"
+ />
</td>
</tr>
<tr>
<td align="right">绉戝锛�</td>
<td align="left">
- <apex:inputField id="Order_ForCustomer" value="{!coc.Order_ForCustomerText__c}" style="width:155px"/>
+ <apex:inputField
+ id="Order_ForCustomer"
+ value="{!coc.Order_ForCustomerText__c}"
+ style="width: 155px"
+ />
</td>
<td align="right">鎬婚噾棰濓細</td>
- <td align="left"><apex:outputText id="sumPrice_buttom" value="{!sumPrice}"/> 鍏�</td>
+ <td align="left">
+ <apex:outputText
+ id="sumPrice_buttom"
+ value="{!sumPrice}"
+ />
+ 鍏�
+ </td>
</tr>
<tr>
<td align="right">娌℃湁纭畾浠锋牸锛�</td>
<td align="left">
- <apex:inputCheckbox id="NoConfirmedPrice" value="{!coc.NoConfirmedPrice__c}" />
+ <apex:inputCheckbox
+ id="NoConfirmedPrice"
+ value="{!coc.NoConfirmedPrice__c}"
+ />
</td>
<!-- ===add by rentx 2020-12-04 start 鍥犱负鐩墠缁存姢浜嗙壒浠蜂骇鍝佺殑鍖婚櫌閮芥槸ENG鍖婚櫌,鎵�浠ュ彧鏈塃NG鐨勬椂鍊欏睍绀� 鏄惁鍖婚櫌鐗逛环鍑哄簱 鍗冲彲-->
<!-- <apex:detail rendered="{!agencyProType == 'ENG'}"> -->
- <!-- <td align="right" >鏄惁鍖婚櫌鐗逛环鍑哄簱 : </td> -->
- <!-- <td align="left"> -->
- <!-- <apex:outputField id="OutPattern01" value="{!coc.OutPattern__c}" /> -->
- <apex:inputHidden id="OutPattern01" value="{!coc.OutPattern__c}" />
+ <!-- <td align="right" >鏄惁鍖婚櫌鐗逛环鍑哄簱 : </td> -->
+ <!-- <td align="left"> -->
+ <!-- <apex:outputField id="OutPattern01" value="{!coc.OutPattern__c}" /> -->
+ <apex:inputHidden
+ id="OutPattern01"
+ value="{!coc.OutPattern__c}"
+ />
- <!-- </td> -->
+ <!-- </td> -->
<!-- </apex:detail> -->
<!-- ===add by rentx 2020-12-04 end -->
-
</tr>
</table>
- </apex:outputPanel>
+ </apex:outputPanel>
<!-- <tr id = "SummonsFlag" style="visibility:{!SummonsFlag}">
<td align="right">鍑哄簱鍗曞彿锛�</td>
@@ -704,193 +1004,374 @@
</table> -->
<!-- update end by vivek2019-7-12 -->
</apex:pageBlock>
-<!--==============20160314====INSERT_CODE_START=======================================-->
- <apex:pageBlock title="鍑哄簱鍗曚俊鎭�" id="unEditable" rendered="{!!EditAble}">
+ <!--==============20160314====INSERT_CODE_START=======================================-->
+ <apex:pageBlock
+ title="鍑哄簱鍗曚俊鎭�"
+ id="unEditable"
+ rendered="{!!EditAble}"
+ >
<table>
<colgroup>
- <col width="150px"/>
- <col width="300px"/>
- <col width="150px"/>
- <col width="300px"/>
- <col width="100px"/>
- <col width="70px"/>
- <col width="90px"/>
- <col width="100px"/>
- <col width="10px"/>
- <col width="85px"/>
- <col width="100px"/>
- <col width="10px"/>
- <col width="70px"/>
- <col width="100px"/>
+ <col width="150px" />
+ <col width="300px" />
+ <col width="150px" />
+ <col width="300px" />
+ <col width="100px" />
+ <col width="70px" />
+ <col width="90px" />
+ <col width="100px" />
+ <col width="10px" />
+ <col width="85px" />
+ <col width="100px" />
+ <col width="10px" />
+ <col width="70px" />
+ <col width="100px" />
</colgroup>
<tr>
<td align="right">鍑哄簱鍗曞彿锛�</td>
- <td align="left"><apex:outputField id="OrderCode_out" value="{!coc.Name}" style="width:300px"/></td>
+ <td align="left">
+ <apex:outputField
+ id="OrderCode_out"
+ value="{!coc.Name}"
+ style="width: 300px"
+ />
+ </td>
<td align="right">鍑哄簱鍗曠姸鎬侊細</td>
- <td align="left"><apex:outputField id="OrderStatus_out" value="{!coc.SummonsStatus_c__c}" style="width:300px"/></td>
+ <td align="left">
+ <apex:outputField
+ id="OrderStatus_out"
+ value="{!coc.SummonsStatus_c__c}"
+ style="width: 300px"
+ />
+ </td>
</tr>
<tr>
<td align="right">鐩殑锛�</td>
- <td align="left"><apex:outputField id="OrderDirction_out" value="{!coc.SummonsForDirction__c}" style="width:300px"/></td>
+ <td align="left">
+ <apex:outputField
+ id="OrderDirction_out"
+ value="{!coc.SummonsForDirction__c}"
+ style="width: 300px"
+ />
+ </td>
<td align="right">寮�绁ㄧ姸鎬侊細</td>
<td align="left">
- <apex:outputField id="SecondDealer_level2" value="{!coc.Billed_Status__c}" style="width:300px"/>
+ <apex:outputField
+ id="SecondDealer_level2"
+ value="{!coc.Billed_Status__c}"
+ style="width: 300px"
+ />
</td>
-
</tr>
- <tr style="{!IF(coc.SummonsForDirction__c='閿�鍞粰浜岀骇缁忛攢鍟�','','display:none')}">
+ <tr
+ style="{!IF(coc.SummonsForDirction__c='閿�鍞粰浜岀骇缁忛攢鍟�','','display:none')}"
+ >
<td align="right">浜岀骇缁忛攢鍟嗭細</td>
- <td align="left"><apex:outputField id="SecondDealer_out" value="{!coc.Order_Dealer_Info__c}" style="width:300px"/></td>
+ <td align="left">
+ <apex:outputField
+ id="SecondDealer_out"
+ value="{!coc.Order_Dealer_Info__c}"
+ style="width: 300px"
+ />
+ </td>
<td align="right"></td>
<td align="left"></td>
</tr>
<tr>
<td align="right">瀹㈡埛鍚嶏細</td>
- <td align="left"><apex:outputField id="OrderForHospital_out" value="{!coc.ShipmentAccount__c}" style="width:300px"/></td>
- <td align="right"><apex:outputText value="鍙戠エ锛�" rendered="{!IF(coc.SummonsStatus_c__c='宸插畬鎴�' && coc.SummonsForDirction__c!='浜掔浉璋冭揣',true,false)}"/></td>
- <td align="left"><apex:inputField value="{!coc.ConInvoice_Code__c}" rendered="{!IF(coc.SummonsStatus_c__c='宸插畬鎴�' && coc.SummonsForDirction__c!='浜掔浉璋冭揣',true,false)}" id="ConInvoice_Code"/>
- <c:helpicon helpText="宸插紑绁ㄧ殑鎹㈣揣鐨勬椂鍊欙紝閫夋嫨宸插紑绁ㄧ殑鍙戠エ銆�" rendered="{!IF(coc.SummonsStatus_c__c='宸插畬鎴�' && coc.SummonsForDirction__c!='浜掔浉璋冭揣',true,false)}"/>
+ <td align="left">
+ <apex:outputField
+ id="OrderForHospital_out"
+ value="{!coc.ShipmentAccount__c}"
+ style="width: 300px"
+ />
+ </td>
+ <td align="right">
+ <apex:outputText
+ value="鍙戠エ锛�"
+ rendered="{!IF(coc.SummonsStatus_c__c='宸插畬鎴�' && coc.SummonsForDirction__c!='浜掔浉璋冭揣',true,false)}"
+ />
+ </td>
+ <td align="left">
+ <apex:inputField
+ value="{!coc.ConInvoice_Code__c}"
+ rendered="{!IF(coc.SummonsStatus_c__c='宸插畬鎴�' && coc.SummonsForDirction__c!='浜掔浉璋冭揣',true,false)}"
+ id="ConInvoice_Code"
+ />
+ <c:helpicon
+ helpText="宸插紑绁ㄧ殑鎹㈣揣鐨勬椂鍊欙紝閫夋嫨宸插紑绁ㄧ殑鍙戠エ銆�"
+ rendered="{!IF(coc.SummonsStatus_c__c='宸插畬鎴�' && coc.SummonsForDirction__c!='浜掔浉璋冭揣',true,false)}"
+ />
</td>
</tr>
<tr>
<td align="right">绉戝锛�</td>
<td align="left">
- <apex:outputField id="Order_ForDealerText" value="{!coc.Order_ForCustomerText__c}" style="width:170px"/>
+ <apex:outputField
+ id="Order_ForDealerText"
+ value="{!coc.Order_ForCustomerText__c}"
+ style="width: 170px"
+ />
</td>
<td align="right">鍑哄簱閲戦锛�</td>
- <td align="left"><apex:outputField id="sumPrice_buttom" value="{!coc.Shipment_total_amount__c}" style="width:300px"/> 鍏�</td>
- <!-- <td/>
+ <td align="left">
+ <apex:outputField
+ id="sumPrice_buttom"
+ value="{!coc.Shipment_total_amount__c}"
+ style="width: 300px"
+ />
+ 鍏�
+ </td>
+ <!-- <td/>
<td align="right" style="visibility:hidden">鍑哄簱鍗曟棩鏈�:</td>
<td align="right" style="visibility:hidden"><apex:outputField id="OrderDate_out" value="{!coc.Order_date__c}" style="width:300px"/></td> -->
-
</tr>
<!-- update start by vivek2019-7-12 -->
<tr>
<td align="right">娌℃湁纭畾浠锋牸锛�</td>
<td align="left">
- <apex:inputCheckbox id="NoConfirmedPrice_out" value="{!coc.NoConfirmedPrice__c}" disabled="true" />
+ <apex:inputCheckbox
+ id="NoConfirmedPrice_out"
+ value="{!coc.NoConfirmedPrice__c}"
+ disabled="true"
+ />
</td>
<!-- ===add by rentx 2020-12-04 start -->
<!-- <apex:detail rendered="{!agencyProType == 'ENG'}"> -->
- <!-- <td align="right">鏄惁鍖婚櫌鐗逛环鍑哄簱 : </td> -->
- <!-- <td align="left"> -->
- <!-- <apex:outputField id="OutPattern" value="{!coc.OutPattern__c}"/> -->
- <apex:inputHidden id="OutPattern" value="{!coc.OutPattern__c}"/>
- <!-- </td> -->
+ <!-- <td align="right">鏄惁鍖婚櫌鐗逛环鍑哄簱 : </td> -->
+ <!-- <td align="left"> -->
+ <!-- <apex:outputField id="OutPattern" value="{!coc.OutPattern__c}"/> -->
+ <apex:inputHidden
+ id="OutPattern"
+ value="{!coc.OutPattern__c}"
+ />
+ <!-- </td> -->
<!-- </apex:detail> -->
<!-- ===add by rentx 2020-12-04 end -->
</tr>
<!-- update end by vivek2019-7-12 -->
</table>
</apex:pageBlock>
-<!--==============20160314====INSERT_CODE_END=======================================-->
+ <!--==============20160314====INSERT_CODE_END=======================================-->
-<!--==============20160310====鍒拌揣鑱斿姩鏃朵笉闇�瑕佹绱�====================================-->
+ <!--==============20160310====鍒拌揣鑱斿姩鏃朵笉闇�瑕佹绱�====================================-->
<!-- update start by vivek 2019-7-15 -->
- <apex:pageBlock id="searchBlock" rendered="{!IF(!Existarrive && EditAble && coc.SummonsStatus_c__c != '浠锋牸鏈畾',true,false)}">
- <!-- apex:pageBlock id="searchBlock" rendered="{!IF(!Existarrive && EditAble,true,false)}"> -->
- <!-- update end by vivek 2019-7-15 -->
+ <apex:pageBlock
+ id="searchBlock"
+ rendered="{!IF(!Existarrive && EditAble && coc.SummonsStatus_c__c != '浠锋牸鏈畾',true,false)}"
+ >
+ <!-- apex:pageBlock id="searchBlock" rendered="{!IF(!Existarrive && EditAble,true,false)}"> -->
+ <!-- update end by vivek 2019-7-15 -->
<table>
<colgroup>
- <col width="160px"/>
- <col width="200"/>
- <col width="15px"/>
- <col width="120px"/>
- <col width="200px"/>
- <col width="20px"/>
- <col width="120px"/>
- <col width="200px"/>
- <col width="20px"/>
- <col width="120px"/>
- <col width="200px"/>
- <col width="20px"/>
- <col width="90px"/>
- <col width="100px"/>
- <col width="10px"/>
- <col width="85px"/>
- <col width="100px"/>
- <col width="10px"/>
- <col width="70px"/>
- <col width="100px"/>
+ <col width="160px" />
+ <col width="200" />
+ <col width="15px" />
+ <col width="120px" />
+ <col width="200px" />
+ <col width="20px" />
+ <col width="120px" />
+ <col width="200px" />
+ <col width="20px" />
+ <col width="120px" />
+ <col width="200px" />
+ <col width="20px" />
+ <col width="90px" />
+ <col width="100px" />
+ <col width="10px" />
+ <col width="85px" />
+ <col width="100px" />
+ <col width="10px" />
+ <col width="70px" />
+ <col width="100px" />
</colgroup>
<tr>
<td align="right">娑堣�楀搧鍚嶇О</td>
- <td><apex:inputText id="OrderDateSearch" value="{!category1}" style="width:100px"/></td>
- <td/>
+ <td>
+ <apex:inputText
+ id="OrderDateSearch"
+ value="{!category1}"
+ style="width: 100px"
+ />
+ </td>
+ <td />
<td align="right">绗�3鍒嗙被</td>
<td>
- <apex:selectList id="category3Search" value="{!category3}" style="width:100px" size="1" onchange="showAllCate();">
- <apex:selectOptions value="{!categoryOptionList}"/>
- </apex:selectList>
+ <apex:selectList
+ id="category3Search"
+ value="{!category3}"
+ style="width: 100px"
+ size="1"
+ onchange="showAllCate();"
+ >
+ <apex:selectOptions
+ value="{!categoryOptionList}"
+ />
+ </apex:selectList>
</td>
- <td/>
- <td align="right">绗�4鍒嗙被</td>
+ <td />
+ <td align="right">绗�4鍒嗙被</td>
<td>
- <apex:selectList id="category4Search" value="{!category4}" style="width:100px" size="1" onchange="showCate();">
- <apex:selectOptions value="{!category4OptionList}"/>
- </apex:selectList>
+ <apex:selectList
+ id="category4Search"
+ value="{!category4}"
+ style="width: 100px"
+ size="1"
+ onchange="showCate();"
+ >
+ <apex:selectOptions
+ value="{!category4OptionList}"
+ />
+ </apex:selectList>
</td>
- <td/>
- <td align="right">绗�5鍒嗙被</td>
- <td>
- <apex:selectList id="category5Search" value="{!category5}" style="width:100px" size="1">
- <apex:selectOptions value="{!category5OptionList}"/>
- </apex:selectList>
+ <td />
+ <td align="right">绗�5鍒嗙被</td>
+ <td>
+ <apex:selectList
+ id="category5Search"
+ value="{!category5}"
+ style="width: 100px"
+ size="1"
+ >
+ <apex:selectOptions
+ value="{!category5OptionList}"
+ />
+ </apex:selectList>
</td>
- <td/>
+ <td />
<!-- //add by rentx start -->
<apex:detail rendered="{!hasHosPro}">
<td align="right" width="120px">鍖婚櫌鐗逛环</td>
- <td>
- <apex:selectList id="outOutPattern" value="{!outOutPattern}" style="width:100px" size="1">
- <apex:selectOptions value="{!outOutPatternOptionList}"/>
- </apex:selectList>
+ <td>
+ <apex:selectList
+ id="outOutPattern"
+ value="{!outOutPattern}"
+ style="width: 100px"
+ size="1"
+ >
+ <apex:selectOptions
+ value="{!outOutPatternOptionList}"
+ />
+ </apex:selectList>
</td>
- </apex:detail>
- <td/>
+ </apex:detail>
+ <td />
<!-- //add by rentx end -->
<!-- <td align="right">浜у搧鍨嬪彿</td>
<td><apex:inputText id="OrderCodeSearch" value="{!category_Goods}" style="width:100px"/></td> -->
<td align="right"></td>
- <td><apex:commandButton value="妫�绱�" style="width: 100px;" onclick="searchProductJs(); return false;" /></td>
- <td><input type="button" value="娓呯┖" style="width: 100px;" onclick="ClearJs()" class="btn"/></td>
- <td/>
+ <td>
+ <apex:commandButton
+ value="妫�绱�"
+ style="width: 100px"
+ onclick="searchProductJs(); return false;"
+ />
+ </td>
+ <td>
+ <input
+ type="button"
+ value="娓呯┖"
+ style="width: 100px"
+ onclick="ClearJs()"
+ class="btn"
+ />
+ </td>
+ <td />
</tr>
<tr>
<td></td>
</tr>
</table>
</apex:pageBlock>
- <div id="ErrorName" style="color: red;font-weight: bold;">{!alertMessage}</div>
- <apex:pageBlock title="鍑哄簱鍗曟槑缁�" id="ConsumableorderdetailsSection">
+ <div id="ErrorName" style="color: red; font-weight: bold">
+ {!alertMessage}
+ </div>
+ <apex:pageBlock
+ title="鍑哄簱鍗曟槑缁�"
+ id="ConsumableorderdetailsSection"
+ >
<!--<apex:inputHidden id="consumableorderdetailsCnt" value="{!consumableorderdetailsCount}"/>-->
- <input type="hidden" id="allPage:allForm:allBlock:ConsumableorderdetailsSection:consumableorderdetailsCount" value="{!consumableorderdetailsCount}" />
- <table class="list" border="0" cellpadding="0" cellspacing="0" id="ConsumableorderdetailsTable">
- <tr class="headerRow">
+ <input
+ type="hidden"
+ id="allPage:allForm:allBlock:ConsumableorderdetailsSection:consumableorderdetailsCount"
+ value="{!consumableorderdetailsCount}"
+ />
+ <table
+ class="list"
+ border="0"
+ cellpadding="0"
+ cellspacing="0"
+ id="ConsumableorderdetailsTable"
+ >
+ <tr class="headerRow">
<!-- update start by vivek 2019-7-15 -->
- <apex:variable var="v" value="" rendered="{!IF(!Existarrive && EditAble && coc.SummonsStatus_c__c != '浠锋牸鏈畾',true,false)}">
- <!-- <apex:variable var="v" value="" rendered="{!IF(!Existarrive && EditAble,true,false)}"> -->
- <!-- update start by vivek 2019-7-15 -->
- <th><input type='checkbox' onClick='checkAll()' id='checker'/>閫夋嫨</th>
+ <apex:variable
+ var="v"
+ value=""
+ rendered="{!IF(!Existarrive && EditAble && coc.SummonsStatus_c__c != '浠锋牸鏈畾',true,false)}"
+ >
+ <!-- <apex:variable var="v" value="" rendered="{!IF(!Existarrive && EditAble,true,false)}"> -->
+ <!-- update start by vivek 2019-7-15 -->
+ <th>
+ <input
+ type="checkbox"
+ onClick="checkAll()"
+ id="checker"
+ />閫夋嫨
+ </th>
</apex:variable>
- <th><a href="#" onclick="SortLimitedJs('0');return false;" style="text-decoration: underline;">娑堣�楀搧鍚嶇О</a>{!sortOrder[0]}</th>
- <!-- <th><a href="#" onclick="SortLimitedJs('1');return false;" style="text-decoration: underline;">浜у搧鍨嬪彿</a>{!sortOrder[1]}</th>-->
+ <th>
+ <a
+ href="#"
+ onclick="SortLimitedJs('0');return false;"
+ style="text-decoration: underline"
+ >娑堣�楀搧鍚嶇О</a
+ >{!sortOrder[0]}
+ </th>
+ <!-- <th><a href="#" onclick="SortLimitedJs('1');return false;" style="text-decoration: underline;">浜у搧鍨嬪彿</a>{!sortOrder[1]}</th>-->
<!-- TODO 鏈暘鏆備笉鏄剧ず -->
<apex:variable var="v" value="">
- <th style="width: 80px;text-align:center;">瑙勬牸</th>
+ <th style="width: 80px; text-align: center">
+ 瑙勬牸
+ </th>
</apex:variable>
<th>CFDA鐘舵��</th>
<th>娉ㄥ唽璇佺紪鐮佸彿</th>
<th>娉ㄥ唽璇佹晥鏈�</th>
- <apex:variable var="v" value="" rendered="{!IF(arriveorder ='' && Existarrive = false && EditAble,true,false)}">
- <th><a href="#" onclick="SortLimitedJs('5');return false;" style="text-decoration: underline;">绗�3鍒嗙被</a>{!sortOrder[5]}</th>
- <th><a href="#" onclick="SortLimitedJs('6');return false;" style="text-decoration: underline;">绗�4鍒嗙被</a>{!sortOrder[6]}</th>
- <th><a href="#" onclick="SortLimitedJs('7');return false;" style="text-decoration: underline;">绗�5鍒嗙被</a>{!sortOrder[7]}</th>
+ <apex:variable
+ var="v"
+ value=""
+ rendered="{!IF(arriveorder ='' && Existarrive = false && EditAble,true,false)}"
+ >
+ <th>
+ <a
+ href="#"
+ onclick="SortLimitedJs('5');return false;"
+ style="text-decoration: underline"
+ >绗�3鍒嗙被</a
+ >{!sortOrder[5]}
+ </th>
+ <th>
+ <a
+ href="#"
+ onclick="SortLimitedJs('6');return false;"
+ style="text-decoration: underline"
+ >绗�4鍒嗙被</a
+ >{!sortOrder[6]}
+ </th>
+ <th>
+ <a
+ href="#"
+ onclick="SortLimitedJs('7');return false;"
+ style="text-decoration: underline"
+ >绗�5鍒嗙被</a
+ >{!sortOrder[7]}
+ </th>
</apex:variable>
<th>鍗曚綅</th>
<th>鍑鸿揣鏁伴噺</th>
@@ -906,23 +1387,50 @@
<th>鍑鸿揣鍗曚环(鍏�)</th>
</apex:variable>-->
- <apex:variable var="v" value="" rendered="{!NOT(IF(arriveorder ='' && Existarrive = false && EditAble,true,false))}" id="BoxPiece_UnEditout">
+ <apex:variable
+ var="v"
+ value=""
+ rendered="{!NOT(IF(arriveorder ='' && Existarrive = false && EditAble,true,false))}"
+ id="BoxPiece_UnEditout"
+ >
</apex:variable>
- <apex:variable var="v" value="" rendered="{!if(EditAble,true,false)}">
- <th>鍑鸿揣閲戦(鍏�)</th>
- <!--<th><a href="#" onclick="SortStoreJs('3');return false;" style="text-decoration: underline;width: 100px;text-align: center;">鏈夋晥鏈熷唴搴撳瓨</a>{!sortOrder[3]}</th>-->
- <th>鏈夋晥鏈熷唴搴撳瓨(鐩�)</th>
- <th>鏈夋晥鏈熷唴搴撳瓨(涓�)</th>
+ <apex:variable
+ var="v"
+ value=""
+ rendered="{!if(EditAble,true,false)}"
+ >
+ <th>鍑鸿揣閲戦(鍏�)</th>
+ <!--<th><a href="#" onclick="SortStoreJs('3');return false;" style="text-decoration: underline;width: 100px;text-align: center;">鏈夋晥鏈熷唴搴撳瓨</a>{!sortOrder[3]}</th>-->
+ <th>鏈夋晥鏈熷唴搴撳瓨(鐩�)</th>
+ <th>鏈夋晥鏈熷唴搴撳瓨(涓�)</th>
</apex:variable>
- <apex:variable var="v" value="" rendered="{!!EditAble}">
- <th>{!$ObjectType.Consumable_Orderdetails__c.fields.InvoiceProNot_count__c.label}</th>
+ <apex:variable
+ var="v"
+ value=""
+ rendered="{!!EditAble}"
+ >
+ <th>
+ {!$ObjectType.Consumable_Orderdetails__c.fields.InvoiceProNot_count__c.label}
+ </th>
</apex:variable>
- <apex:variable var="v" value="" rendered="{!!EditAble}">
- <th>{!$ObjectType.Consumable_Orderdetails__c.fields.RrturnPro_count__c.label}</th>
+ <apex:variable
+ var="v"
+ value=""
+ rendered="{!!EditAble}"
+ >
+ <th>
+ {!$ObjectType.Consumable_Orderdetails__c.fields.RrturnPro_count__c.label}
+ </th>
</apex:variable>
- <apex:variable var="v" value="" rendered="{!!EditAble}">
- <th>{!$ObjectType.Consumable_Orderdetails__c.fields.Invoiced_Procount__c.label}</th>
+ <apex:variable
+ var="v"
+ value=""
+ rendered="{!!EditAble}"
+ >
+ <th>
+ {!$ObjectType.Consumable_Orderdetails__c.fields.Invoiced_Procount__c.label}
+ </th>
</apex:variable>
<!-- //add by rentx 2020-11-27 start -->
@@ -931,117 +1439,294 @@
</apex:detail>
<!-- //add by rentx 2020-11-27 end -->
</tr>
- <apex:repeat value="{!pageRecords}" var="records" id="ConsumableorderdetailsTable">
+ <apex:repeat
+ value="{!pageRecords}"
+ var="records"
+ id="ConsumableorderdetailsTable"
+ >
<tr class="dataRow">
<!-- update start by vivek 2019-7-15 -->
<!-- <apex:variable var="v" value="" rendered="{!IF(!Existarrive && EditAble,true,false)}" id="variableinfo"> -->
- <apex:variable var="v" value="" rendered="{!IF(!Existarrive && EditAble && coc.SummonsStatus_c__c != '浠锋牸鏈畾',true,false)}" id="variableinfo">
- <!-- update end by vivek 2019-7-15 -->
+ <apex:variable
+ var="v"
+ value=""
+ rendered="{!IF(!Existarrive && EditAble && coc.SummonsStatus_c__c != '浠锋牸鏈畾',true,false)}"
+ id="variableinfo"
+ >
+ <!-- update end by vivek 2019-7-15 -->
<td>
- <apex:inputCheckbox value="{!records.check}" id="consumablesCountproRowCheckbox" disabled="{!!records.canSelect}"/>
- <apex:inputCheckbox value="{!records.oldCheck}" id="proRowOldCheckbox" style="display:none"/></td>
- </apex:variable>
+ <apex:inputCheckbox
+ value="{!records.check}"
+ id="consumablesCountproRowCheckbox"
+ disabled="{!!records.canSelect}"
+ />
+ <apex:inputCheckbox
+ value="{!records.oldCheck}"
+ id="proRowOldCheckbox"
+ style="display: none"
+ />
+ </td>
+ </apex:variable>
<td class="dataCell">
- <apex:outputText id="ProductName" value="{!IF(records.oldCheck=false,records.Prod.Name__c,records.orderdetails1.Consumable_Product__r.Name__c)}"/>
+ <apex:outputText
+ id="ProductName"
+ value="{!IF(records.oldCheck=false,records.Prod.Name__c,records.orderdetails1.Consumable_Product__r.Name__c)}"
+ />
</td>
- <!-- <td>{!records.Prod.Asset_Model_No__c}</td>
+ <!-- <td>{!records.Prod.Asset_Model_No__c}</td>
-->
- <td style="width: 80px;text-align:center;">{!records.packinglist}</td>
- <td class="dataCell">{!records.Prod.SFDA_Status__c}</td>
- <td class="dataCell">{!records.approbation_No}</td>
+ <td style="width: 80px; text-align: center">
+ {!records.packinglist}
+ </td>
<td class="dataCell">
- <apex:outputText value="{0, date, yyyy/MM/dd}">
- <apex:param value="{!records.expiration_Date}" />
+ {!records.Prod.SFDA_Status__c}
+ </td>
+ <td class="dataCell">
+ {!records.approbation_No}
+ </td>
+ <td class="dataCell">
+ <apex:outputText
+ value="{0, date, yyyy/MM/dd}"
+ >
+ <apex:param
+ value="{!records.expiration_Date}"
+ />
</apex:outputText>
</td>
- <apex:variable var="v" value="" rendered="{!IF(arriveorder ='' && Existarrive = false && EditAble,true,false)}" id="variableCategory3">
- <td class="dataCell">{!records.Prod.Category3__c}</td>
- <td class="dataCell">{!records.Prod.Category4__c}</td>
- <td class="dataCell">{!records.Prod.Category5__c}</td>
- <!-- update start by vivek 2019-7-15 -->
- <apex:variable var="v" value="" rendered="{!IF(arriveorder ='' && Existarrive = false && EditAble && coc.SummonsStatus_c__c != '浠锋牸鏈畾',true,false)}" id="BoxPiece_UnEditout1">
- <td class="dataCell">
- <apex:selectList value="{!records.orderdetails1.Box_Piece__c}" size="1" style="width:60px;" id="BoxPiece">
- <apex:selectOptions value="{!records.boxorpiece}"/>
- </apex:selectList>
- </td>
+ <apex:variable
+ var="v"
+ value=""
+ rendered="{!IF(arriveorder ='' && Existarrive = false && EditAble,true,false)}"
+ id="variableCategory3"
+ >
+ <td class="dataCell">
+ {!records.Prod.Category3__c}
+ </td>
+ <td class="dataCell">
+ {!records.Prod.Category4__c}
+ </td>
+ <td class="dataCell">
+ {!records.Prod.Category5__c}
+ </td>
+ <!-- update start by vivek 2019-7-15 -->
+ <apex:variable
+ var="v"
+ value=""
+ rendered="{!IF(arriveorder ='' && Existarrive = false && EditAble && coc.SummonsStatus_c__c != '浠锋牸鏈畾',true,false)}"
+ id="BoxPiece_UnEditout1"
+ >
+ <td class="dataCell">
+ <apex:selectList
+ value="{!records.orderdetails1.Box_Piece__c}"
+ size="1"
+ style="width: 60px"
+ id="BoxPiece"
+ >
+ <apex:selectOptions
+ value="{!records.boxorpiece}"
+ />
+ </apex:selectList>
+ </td>
+ </apex:variable>
+ <!-- update end by vivek 2019-7-15 -->
</apex:variable>
- <!-- update end by vivek 2019-7-15 -->
- </apex:variable>
<!-- update start by vivek 2019-7-15 -->
- <apex:variable var="v" value="" rendered="{!NOT(IF(arriveorder ='' && Existarrive = false && EditAble && coc.SummonsStatus_c__c != '浠锋牸鏈畾',true,false))}" id="BoxPiece_UnEditout1">
- <!-- <apex:variable var="v" value="" rendered="{!NOT(IF(arriveorder ='' && Existarrive = false && EditAble,true,false))}" id="BoxPiece_UnEditout"> -->
- <!-- update end by vivek 2019-7-15 -->
- <td><apex:outputField id="BoxPiece_UnEditin" value="{!records.orderdetails1.Box_Piece__c}"/></td>
+ <apex:variable
+ var="v"
+ value=""
+ rendered="{!NOT(IF(arriveorder ='' && Existarrive = false && EditAble && coc.SummonsStatus_c__c != '浠锋牸鏈畾',true,false))}"
+ id="BoxPiece_UnEditout1"
+ >
+ <!-- <apex:variable var="v" value="" rendered="{!NOT(IF(arriveorder ='' && Existarrive = false && EditAble,true,false))}" id="BoxPiece_UnEditout"> -->
+ <!-- update end by vivek 2019-7-15 -->
+ <td>
+ <apex:outputField
+ id="BoxPiece_UnEditin"
+ value="{!records.orderdetails1.Box_Piece__c}"
+ />
+ </td>
</apex:variable>
<!-- update start by vivek 2019-7-15 -->
- <apex:variable var="v" value="" rendered="{!NOT(IF(arriveorder ='' && Existarrive = false && EditAble && coc.SummonsStatus_c__c != '浠锋牸鏈畾',true,false))}" id="consumablesCount_UnEditout">
- <!-- <apex:variable var="v" value="" rendered="{!NOT(IF(arriveorder ='' && Existarrive = false && EditAble,true,false))}" id="consumablesCount_UnEditout"> -->
- <!-- update start by vivek 2019-7-15 -->
- <!--<td style="text-align:right;"><apex:outputField id="consumablesCount_Unagency" value="{!records.orderdetails1.Unitprice_To_agency__c}"/></td>-->
- <td style="text-align:center;"><apex:outputField id="consumablesCount_UnEditin" value="{!records.orderdetails1.Shipment_Count__c}"/></td>
+ <apex:variable
+ var="v"
+ value=""
+ rendered="{!NOT(IF(arriveorder ='' && Existarrive = false && EditAble && coc.SummonsStatus_c__c != '浠锋牸鏈畾',true,false))}"
+ id="consumablesCount_UnEditout"
+ >
+ <!-- <apex:variable var="v" value="" rendered="{!NOT(IF(arriveorder ='' && Existarrive = false && EditAble,true,false))}" id="consumablesCount_UnEditout"> -->
+ <!-- update start by vivek 2019-7-15 -->
+ <!--<td style="text-align:right;"><apex:outputField id="consumablesCount_Unagency" value="{!records.orderdetails1.Unitprice_To_agency__c}"/></td>-->
+ <td style="text-align: center">
+ <apex:outputField
+ id="consumablesCount_UnEditin"
+ value="{!records.orderdetails1.Shipment_Count__c}"
+ />
+ </td>
</apex:variable>
<!-- update start by vivek 2019-7-15 -->
- <apex:variable var="v" value="" rendered="{!IF(arriveorder ='' && Existarrive = false && EditAble && coc.SummonsStatus_c__c != '浠锋牸鏈畾',true,false)}" id="variable">
- <!-- <apex:variable var="v" value="" rendered="{!IF(arriveorder ='' && Existarrive = false && EditAble,true,false)}" id="variable"> -->
- <!-- update end by vivek 2019-7-15 -->
- <td class="dataCell">
- <div style="width:2px;height:20px;background-color:red; position:absolute;margin-right:5px;"></div>
- <apex:inputField onblur="ComputePrice(this)" id="consumablesCount" value="{!records.orderdetails1.Shipment_Count__c}" style="width: 100px;" /></td>
- </apex:variable>
- <apex:variable var="v" value="" rendered="{!EditAble}" id="variableMoneyinfo">
+ <apex:variable
+ var="v"
+ value=""
+ rendered="{!IF(arriveorder ='' && Existarrive = false && EditAble && coc.SummonsStatus_c__c != '浠锋牸鏈畾',true,false)}"
+ id="variable"
+ >
+ <!-- <apex:variable var="v" value="" rendered="{!IF(arriveorder ='' && Existarrive = false && EditAble,true,false)}" id="variable"> -->
+ <!-- update end by vivek 2019-7-15 -->
<td class="dataCell">
- <div style="width:2px;height:20px;background-color:red; position:absolute;margin-right:5px;"></div>
- <apex:inputField onblur="ComputePriceCheck(this)" value="{!records.orderdetails1.Delivery_List_RMB__c}" style="width: 100px;" id="productOrderMoneyinfo"/>
+ <div
+ style="
+ width: 2px;
+ height: 20px;
+ background-color: red;
+ position: absolute;
+ margin-right: 5px;
+ "
+ ></div>
+ <apex:inputField
+ onblur="ComputePrice(this)"
+ id="consumablesCount"
+ value="{!records.orderdetails1.Shipment_Count__c}"
+ style="width: 100px"
+ />
+ </td>
+ </apex:variable>
+ <apex:variable
+ var="v"
+ value=""
+ rendered="{!EditAble}"
+ id="variableMoneyinfo"
+ >
+ <td class="dataCell">
+ <div
+ style="
+ width: 2px;
+ height: 20px;
+ background-color: red;
+ position: absolute;
+ margin-right: 5px;
+ "
+ ></div>
+ <apex:inputField
+ onblur="ComputePriceCheck(this)"
+ value="{!records.orderdetails1.Delivery_List_RMB__c}"
+ style="width: 100px"
+ id="productOrderMoneyinfo"
+ />
</td>
<!-- <td class="dataCell">
<apex:inputField id="Unitpriceagency" value="{!records.orderdetails1.Unitprice_To_agency__c}" style="width: 100px;"/>
</td> -->
</apex:variable>
- <apex:variable var="v" value="" rendered="{!!EditAble}">
- <td class="dataCell" style="text-align:center;">
- <apex:outputText id="consumablesCountDealerPrice_Unedit" value="{!IF(records.orderdetails1.Delivery_List_RMB__c==null,0.00,records.orderdetails1.Delivery_List_RMB__c)}"/>
+ <apex:variable
+ var="v"
+ value=""
+ rendered="{!!EditAble}"
+ >
+ <td
+ class="dataCell"
+ style="text-align: center"
+ >
+ <apex:outputText
+ id="consumablesCountDealerPrice_Unedit"
+ value="{!IF(records.orderdetails1.Delivery_List_RMB__c==null,0.00,records.orderdetails1.Delivery_List_RMB__c)}"
+ />
</td>
<!-- <td style="text-align:center;"><apex:outputField id="consumablesCount_Unagency" value="{!records.orderdetails1.Unitprice_To_agency__c}"/></td> -->
</apex:variable>
- <apex:variable var="v" value="" id="variableAllprice" rendered="{!EditAble}">
- <td class="dataCell" style="text-align:center;">
- <apex:outputField id="consumablesCounttestPrice" value="{!records.orderdetails1.Shipment_amount__c}"/>
- </td>
- <!--<td class="dataCell" style="text-align:right;width: 50px;">{!records.allnumber}</td>-->
- <td class="dataCell" style="text-align:center;width: 50px;">{!records.Boxnumber}</td>
- <td class="dataCell" style="text-align:center;width: 50px;">{!records.Piecenumber}</td>
+ <apex:variable
+ var="v"
+ value=""
+ id="variableAllprice"
+ rendered="{!EditAble}"
+ >
+ <td
+ class="dataCell"
+ style="text-align: center"
+ >
+ <apex:outputField
+ id="consumablesCounttestPrice"
+ value="{!records.orderdetails1.Shipment_amount__c}"
+ />
+ </td>
+ <!--<td class="dataCell" style="text-align:right;width: 50px;">{!records.allnumber}</td>-->
+ <td
+ class="dataCell"
+ style="text-align: center; width: 50px"
+ >
+ {!records.Boxnumber}
+ </td>
+ <td
+ class="dataCell"
+ style="text-align: center; width: 50px"
+ >
+ {!records.Piecenumber}
+ </td>
</apex:variable>
- <apex:variable var="v" value="" rendered="{!!EditAble}">
- <td class="dataCell" style="text-align:center;"><apex:outputField value="{!records.orderdetails1.InvoiceProNot_count__c}"/></td>
- <td class="dataCell" style="text-align:center;"><apex:outputField value="{!records.orderdetails1.RrturnPro_count__c}"/></td>
- <td class="dataCell" style="text-align:center;"><apex:outputField value="{!records.orderdetails1.Invoiced_Procount__c}"/></td>
+ <apex:variable
+ var="v"
+ value=""
+ rendered="{!!EditAble}"
+ >
+ <td
+ class="dataCell"
+ style="text-align: center"
+ >
+ <apex:outputField
+ value="{!records.orderdetails1.InvoiceProNot_count__c}"
+ />
+ </td>
+ <td
+ class="dataCell"
+ style="text-align: center"
+ >
+ <apex:outputField
+ value="{!records.orderdetails1.RrturnPro_count__c}"
+ />
+ </td>
+ <td
+ class="dataCell"
+ style="text-align: center"
+ >
+ <apex:outputField
+ value="{!records.orderdetails1.Invoiced_Procount__c}"
+ />
+ </td>
</apex:variable>
- <!-- add by rentx 2020-11-26 start -->
- <apex:detail rendered="{!hasHosPro}" >
+ <!-- add by rentx 2020-11-26 start -->
+ <apex:detail rendered="{!hasHosPro}">
<td>
<!-- <apex:outputField value="{!records.orderdetails2.hospitalSpecialOffer__c}"/> -->
- <apex:detail rendered="{!records.hospitalSpecialOffer}" >
- <apex:inputHidden value="{!records.hospitalSpecialOffer}" id="hosOffer"/>
- <apex:inputHidden value="{!records.hosPro}" id="hosPro"/>
+ <apex:detail
+ rendered="{!records.hospitalSpecialOffer}"
+ >
+ <apex:inputHidden
+ value="{!records.hospitalSpecialOffer}"
+ id="hosOffer"
+ />
+ <apex:inputHidden
+ value="{!records.hosPro}"
+ id="hosPro"
+ />
鈭�
</apex:detail>
</td>
</apex:detail>
- <!-- add by rentx 2020-11-26 end -->
+ <!-- add by rentx 2020-11-26 end -->
</tr>
</apex:repeat>
</table>
<table style="width: 100%">
- <tr>
+ <tr>
<td>
<!-- Page X of Y -->
<!-- PageNumber锛氬綋鍓嶉〉闈㈡墍鍦ㄤ綅缃紝ResultSize锛氳褰曟�绘潯鏁帮紝PageSize锛氭瘡椤佃褰曟潯鏁� -->
- <apex:outputText value="{!(setCon.pageNumber * size)+1-size}-{!IF((setCon.pageNumber * size)>noOfRecords, noOfRecords,
- (setCon.pageNumber * size))} 鍏� {!noOfRecords} 涓�" />
- <!--<apex:outputPanel >
+ <apex:outputText
+ value="{!(setCon.pageNumber * size)+1-size}-{!IF((setCon.pageNumber * size)>noOfRecords, noOfRecords,
+ (setCon.pageNumber * size))} 鍏� {!noOfRecords} 涓�"
+ />
+ <!--<apex:outputPanel >
<apex:actionStatus id="fetchStatus" >
<apex:facet name="start" >
<img src="/img/loading.gif" />
@@ -1051,64 +1736,162 @@
</td>
<td align="center">
<div class="paginator line1">
- <span class="prevNextLinks">
- <!-- 鏈夎繛鎺� -->
- <apex:outputPanel rendered="{!setCon.hasPrevious}">
- <span class="prevNext">
- <apex:commandLink status="fetchStatus" reRender="ConsumableorderdetailsSection" action="{!setCon.first}" oncomplete="refreshPageSizeJs();" title="棣栭〉" >
- <img src="/s.gif" title="棣栭〉" alt="棣栭〉" class="{!if((setCon.hasPrevious),'first','firstoff')}"/>
- </apex:commandLink>
- </span>
- <span class="prevNext">
- <apex:commandLink status="fetchStatus" reRender="ConsumableorderdetailsSection" action="{!setCon.previous}" oncomplete="refreshPageSizeJs();" title="涓婁竴椤�">
- <img src="/s.gif" title="涓婁竴椤�" alt="涓婁竴椤�" class="{!if((setCon.hasPrevious),'prev','prevoff')}"/>涓婁竴椤�
- </apex:commandLink>
- </span>
- </apex:outputPanel>
- <!-- 鏃犺繛鎺� -->
- <apex:outputPanel rendered="{!!setCon.hasPrevious}">
- <span class="prevNext">
- <apex:commandLink status="fetchStatus" oncomplete="onLoadDirction();" reRender="ConsumableorderdetailsSection" title="棣栭〉" >
- <img src="/s.gif" title="棣栭〉" alt="棣栭〉" class="{!if((setCon.hasPrevious),'first','firstoff')}"/>
- </apex:commandLink>
- </span>
- <span class="prevNext">
- <apex:commandLink status="fetchStatus" oncomplete="onLoadDirction();" reRender="ConsumableorderdetailsSection" title="涓婁竴椤�">
- <img src="/s.gif" title="涓婁竴椤�" alt="涓婁竴椤�" class="{!if((setCon.hasPrevious),'prev','prevoff')}"/>涓婁竴椤�
- </apex:commandLink>
- </span>
- </apex:outputPanel>
- <!-- 鏈夎繛鎺� -->
- <apex:outputPanel rendered="{!setCon.hasNext}">
- <span class="prevNext" rendered = "{!!setCon.hasNext}">
- <apex:commandLink status="fetchStatus" reRender="ConsumableorderdetailsSection" action="{!setCon.next}" oncomplete="refreshPageSizeJs();" title="涓嬩竴椤�" rendered="{!setCon.hasNext}">涓嬩竴椤�
- <img src="/s.gif" title="涓嬩竴椤�" alt="涓嬩竴椤�" class="{!if((setCon.hasNext),'next','nextoff')}" />
- </apex:commandLink>
- </span>
- <span class="prevNext">
- <apex:commandLink status="fetchStatus" reRender="ConsumableorderdetailsSection" action="{!setCon.last}" oncomplete="refreshPageSizeJs();" title="灏鹃〉">
- <img src="/s.gif" title="灏鹃〉" alt="灏鹃〉" class="{!if((setCon.hasNext),'last','lastoff')}"/>
- </apex:commandLink>
- </span>
- </apex:outputPanel>
- <!-- 鏃犺繛鎺� -->
- <apex:outputPanel rendered="{!!setCon.hasNext}">
- <span class="prevNext" rendered = "{!setCon.hasNext}">
- <apex:commandLink status="fetchStatus" oncomplete="onLoadDirction();" reRender="ConsumableorderdetailsSection" title="涓嬩竴椤�">涓嬩竴椤�
- <img src="/s.gif" title="涓嬩竴椤�" alt="涓嬩竴椤�" class="{!if((setCon.hasNext),'next','nextoff')}" />
- </apex:commandLink>
- </span>
- <span class="prevNext">
- <apex:commandLink status="fetchStatus" oncomplete="onLoadDirction();" reRender="ConsumableorderdetailsSection" title="灏鹃〉">
- <img src="/s.gif" title="灏鹃〉" alt="灏鹃〉" class="{!if((setCon.hasNext),'last','lastoff')}"/>
- </apex:commandLink>
- </span>
- </apex:outputPanel>
- </span>
+ <span class="prevNextLinks">
+ <!-- 鏈夎繛鎺� -->
+ <apex:outputPanel
+ rendered="{!setCon.hasPrevious}"
+ >
+ <span class="prevNext">
+ <apex:commandLink
+ status="fetchStatus"
+ reRender="ConsumableorderdetailsSection"
+ action="{!setCon.first}"
+ oncomplete="refreshPageSizeJs();"
+ title="棣栭〉"
+ >
+ <img
+ src="/s.gif"
+ title="棣栭〉"
+ alt="棣栭〉"
+ class="{!if((setCon.hasPrevious),'first','firstoff')}"
+ />
+ </apex:commandLink>
+ </span>
+ <span class="prevNext">
+ <apex:commandLink
+ status="fetchStatus"
+ reRender="ConsumableorderdetailsSection"
+ action="{!setCon.previous}"
+ oncomplete="refreshPageSizeJs();"
+ title="涓婁竴椤�"
+ >
+ <img
+ src="/s.gif"
+ title="涓婁竴椤�"
+ alt="涓婁竴椤�"
+ class="{!if((setCon.hasPrevious),'prev','prevoff')}"
+ />涓婁竴椤�
+ </apex:commandLink>
+ </span>
+ </apex:outputPanel>
+ <!-- 鏃犺繛鎺� -->
+ <apex:outputPanel
+ rendered="{!!setCon.hasPrevious}"
+ >
+ <span class="prevNext">
+ <apex:commandLink
+ status="fetchStatus"
+ oncomplete="onLoadDirction();"
+ reRender="ConsumableorderdetailsSection"
+ title="棣栭〉"
+ >
+ <img
+ src="/s.gif"
+ title="棣栭〉"
+ alt="棣栭〉"
+ class="{!if((setCon.hasPrevious),'first','firstoff')}"
+ />
+ </apex:commandLink>
+ </span>
+ <span class="prevNext">
+ <apex:commandLink
+ status="fetchStatus"
+ oncomplete="onLoadDirction();"
+ reRender="ConsumableorderdetailsSection"
+ title="涓婁竴椤�"
+ >
+ <img
+ src="/s.gif"
+ title="涓婁竴椤�"
+ alt="涓婁竴椤�"
+ class="{!if((setCon.hasPrevious),'prev','prevoff')}"
+ />涓婁竴椤�
+ </apex:commandLink>
+ </span>
+ </apex:outputPanel>
+ <!-- 鏈夎繛鎺� -->
+ <apex:outputPanel
+ rendered="{!setCon.hasNext}"
+ >
+ <span
+ class="prevNext"
+ rendered="{!!setCon.hasNext}"
+ >
+ <apex:commandLink
+ status="fetchStatus"
+ reRender="ConsumableorderdetailsSection"
+ action="{!setCon.next}"
+ oncomplete="refreshPageSizeJs();"
+ title="涓嬩竴椤�"
+ rendered="{!setCon.hasNext}"
+ >涓嬩竴椤�
+ <img
+ src="/s.gif"
+ title="涓嬩竴椤�"
+ alt="涓嬩竴椤�"
+ class="{!if((setCon.hasNext),'next','nextoff')}"
+ />
+ </apex:commandLink>
+ </span>
+ <span class="prevNext">
+ <apex:commandLink
+ status="fetchStatus"
+ reRender="ConsumableorderdetailsSection"
+ action="{!setCon.last}"
+ oncomplete="refreshPageSizeJs();"
+ title="灏鹃〉"
+ >
+ <img
+ src="/s.gif"
+ title="灏鹃〉"
+ alt="灏鹃〉"
+ class="{!if((setCon.hasNext),'last','lastoff')}"
+ />
+ </apex:commandLink>
+ </span>
+ </apex:outputPanel>
+ <!-- 鏃犺繛鎺� -->
+ <apex:outputPanel
+ rendered="{!!setCon.hasNext}"
+ >
+ <span
+ class="prevNext"
+ rendered="{!setCon.hasNext}"
+ >
+ <apex:commandLink
+ status="fetchStatus"
+ oncomplete="onLoadDirction();"
+ reRender="ConsumableorderdetailsSection"
+ title="涓嬩竴椤�"
+ >涓嬩竴椤�
+ <img
+ src="/s.gif"
+ title="涓嬩竴椤�"
+ alt="涓嬩竴椤�"
+ class="{!if((setCon.hasNext),'next','nextoff')}"
+ />
+ </apex:commandLink>
+ </span>
+ <span class="prevNext">
+ <apex:commandLink
+ status="fetchStatus"
+ oncomplete="onLoadDirction();"
+ reRender="ConsumableorderdetailsSection"
+ title="灏鹃〉"
+ >
+ <img
+ src="/s.gif"
+ title="灏鹃〉"
+ alt="灏鹃〉"
+ class="{!if((setCon.hasNext),'last','lastoff')}"
+ />
+ </apex:commandLink>
+ </span>
+ </apex:outputPanel>
+ </span>
</div>
- </td>
- <td align="right" width="20%">
</td>
+ <td align="right" width="20%"></td>
</tr>
</table>
<!--
@@ -1138,49 +1921,87 @@
</apex:panelGrid>-->
</apex:pageBlock>
- <apex:pageBlock title="鍙戠エ鏄庣粏" rendered="{!IF((coc.Billed_Status__c !='杩樻病寮�绁�') && IdCheck != null,true,false)}">
- <apex:pageblocksection columns="1" id="consumableInvoiceRecordsSection">
- <apex:pageblocktable value="{!consumableInvoiceRecords}" var="records" id="consumableInvoiceRecordsTable">
- <apex:column width="80">
- <apex:facet name="header">鍙戠エ鍙�</apex:facet>
- <apex:outputField value="{!records.Name}"/>
- </apex:column>
- <apex:column width="80">
- <apex:facet name="header">鍙戠エ鏃�</apex:facet>
- <apex:outputField value="{!records.Invoice_Date__c}"/>
- </apex:column>
- <apex:column width="80" style="text-align: center;">
- <apex:facet name="header">鍙戠エ绁ㄩ潰閲戦(鍏�)</apex:facet>
- <apex:outputField value="{!records.Invoice_total_amount__c}"/>
- </apex:column>
- <apex:column width="80">
- <apex:facet name="header">鍙戠エ鐘舵��</apex:facet>
- <apex:outputField value="{!records.Invoice_status__c}"/>
- </apex:column>
+ <apex:pageBlock
+ title="鍙戠エ鏄庣粏"
+ rendered="{!IF((coc.Billed_Status__c !='杩樻病寮�绁�') && IdCheck != null,true,false)}"
+ >
+ <apex:pageblocksection
+ columns="1"
+ id="consumableInvoiceRecordsSection"
+ >
+ <apex:pageblocktable
+ value="{!consumableInvoiceRecords}"
+ var="records"
+ id="consumableInvoiceRecordsTable"
+ >
+ <apex:column width="80">
+ <apex:facet name="header">鍙戠エ鍙�</apex:facet>
+ <apex:outputField value="{!records.Name}" />
+ </apex:column>
+ <apex:column width="80">
+ <apex:facet name="header">鍙戠エ鏃�</apex:facet>
+ <apex:outputField
+ value="{!records.Invoice_Date__c}"
+ />
+ </apex:column>
+ <apex:column width="80" style="text-align: center">
+ <apex:facet name="header"
+ >鍙戠エ绁ㄩ潰閲戦(鍏�)</apex:facet
+ >
+ <apex:outputField
+ value="{!records.Invoice_total_amount__c}"
+ />
+ </apex:column>
+ <apex:column width="80">
+ <apex:facet name="header">鍙戠エ鐘舵��</apex:facet>
+ <apex:outputField
+ value="{!records.Invoice_status__c}"
+ />
+ </apex:column>
</apex:pageblocktable>
</apex:pageblocksection>
</apex:pageBlock>
- <apex:pageBlock title="鍑哄簱浜у搧鏄庣粏" rendered="{!IF(consumableorderdetails2Count > 0,true,false)}">
- <apex:pageblocksection columns="1" id="Consumableorderdetails2Section">
- <apex:pageblocktable value="{!consumableorderdetails2Records}" var="records" id="Consumableorderdetails2Table">
- <apex:column width="80">
- <apex:facet name="header">娑堣�楀搧鍚嶇О</apex:facet>
- <apex:outputField value="{!records.Prod.name}"/>
- </apex:column>
- <apex:column width="80">
- <apex:facet name="header">鎵规鍙�</apex:facet>
- <apex:outputField value="{!records.orderdetails2.SerialLotNo__c}" />
- </apex:column>
- <apex:column width="80">
- <apex:facet name="header">绠$悊缂栫爜</apex:facet>
- <apex:outputField value="{!records.orderdetails2.TracingCode__c}"/>
- </apex:column>
- <apex:column width="80">
- <apex:facet name="header">浣跨敤鏈熼檺</apex:facet>
- <apex:outputField value="{!records.orderdetails2.Sterilization_limit__c}"/>
- </apex:column>
- <!-- <apex:column width="80">
+ <apex:pageBlock
+ title="鍑哄簱浜у搧鏄庣粏"
+ rendered="{!IF(consumableorderdetails2Count > 0,true,false)}"
+ >
+ <apex:pageblocksection
+ columns="1"
+ id="Consumableorderdetails2Section"
+ >
+ <apex:pageblocktable
+ value="{!consumableorderdetails2Records}"
+ var="records"
+ id="Consumableorderdetails2Table"
+ >
+ <apex:column width="80">
+ <apex:facet name="header"
+ >娑堣�楀搧鍚嶇О</apex:facet
+ >
+ <apex:outputField
+ value="{!records.Prod.name}"
+ />
+ </apex:column>
+ <apex:column width="80">
+ <apex:facet name="header">鎵规鍙�</apex:facet>
+ <apex:outputField
+ value="{!records.orderdetails2.SerialLotNo__c}"
+ />
+ </apex:column>
+ <apex:column width="80">
+ <apex:facet name="header">绠$悊缂栫爜</apex:facet>
+ <apex:outputField
+ value="{!records.orderdetails2.TracingCode__c}"
+ />
+ </apex:column>
+ <apex:column width="80">
+ <apex:facet name="header">浣跨敤鏈熼檺</apex:facet>
+ <apex:outputField
+ value="{!records.orderdetails2.Sterilization_limit__c}"
+ />
+ </apex:column>
+ <!-- <apex:column width="80">
<apex:facet name="header">寮�绁ㄦ棩</apex:facet>
<apex:outputField value="{!records.orderdetails2.Invoice_Date__c}" />
</apex:column>
@@ -1190,28 +2011,39 @@
<apex:outputText value="{!records.orderdetails2.Invoice_No__r.Name}" />
</apex:outputLink>
</apex:column> -->
- </apex:pageblocktable>
- </apex:pageblocksection>
- </apex:pageBlock>
+ </apex:pageblocktable>
+ </apex:pageblocksection>
+ </apex:pageBlock>
</apex:pageBlock>
</apex:outputPanel>
- <apex:pageBlock title="闄勪欢" id="ConsumableConsumeSection" rendered="{!!editAble}">
- <apex:pageBlockTable value="{!AttachmentRecoeds}" var="a" >
- <apex:column headerValue="鏍囬" style="width: 33%">
- <apex:outputLink value="{!a.Concc.Id}" target="LINK_{!a.Concc.Id}">
- {!a.Concc.name}
- </apex:outputLink>
- </apex:column>
- <apex:column headerValue="鍒涘缓浜�">
- <apex:outputField value="{!a.Concc.OwnerId}"/>
- </apex:column>
- </apex:pageBlockTable>
- <apex:pageBlockButtons location="top" >
- <apex:commandButton onclick="FilesUaplodJs();" value="涓婁紶闄勪欢" style="margin-left:30px;width:100px" rerender="dummy" rendered="{!!(EditDelCommitBtnDisabled||EditAble)}"/>
- </apex:pageBlockButtons>
- </apex:pageBlock>
+ <apex:pageBlock
+ title="闄勪欢"
+ id="ConsumableConsumeSection"
+ rendered="{!!editAble}"
+ >
+ <apex:pageBlockTable value="{!AttachmentRecoeds}" var="a">
+ <apex:column headerValue="鏍囬" style="width: 33%">
+ <apex:outputLink
+ value="{!a.Concc.Id}"
+ target="LINK_{!a.Concc.Id}"
+ >
+ {!a.Concc.name}
+ </apex:outputLink>
+ </apex:column>
+ <apex:column headerValue="鍒涘缓浜�">
+ <apex:outputField value="{!a.Concc.OwnerId}" />
+ </apex:column>
+ </apex:pageBlockTable>
+ <apex:pageBlockButtons location="top">
+ <apex:commandButton
+ onclick="FilesUaplodJs();"
+ value="涓婁紶闄勪欢"
+ style="margin-left: 30px; width: 100px"
+ rerender="dummy"
+ rendered="{!!(EditDelCommitBtnDisabled||EditAble)}"
+ />
+ </apex:pageBlockButtons>
+ </apex:pageBlock>
</apex:form>
-<script>
-
-</script>
-</apex:page>
\ No newline at end of file
+ <script></script>
+</apex:page>
diff --git a/manifest/package.xml b/manifest/package.xml
deleted file mode 100644
index c18b30a..0000000
--- a/manifest/package.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
-<Package xmlns="http://soap.sforce.com/2006/04/metadata">
- <types>
- <members>NewAndEditLead</members>
- <members>NewAndEditReport</members>
- <name>ApexPage</name>
- </types>
- <version>52.0</version>
-</Package>
\ No newline at end of file
diff --git a/manifest/packageForLex copy.xml b/manifest/packageForLex copy.xml
new file mode 100644
index 0000000..25a1a2e
--- /dev/null
+++ b/manifest/packageForLex copy.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
+<Package xmlns="http://soap.sforce.com/2006/04/metadata">
+ <types>
+ <members>*</members>
+ <name>LightningComponentBundle</name>
+ </types>
+ <version>52.0</version>
+</Package>
diff --git a/manifest/packageForSign.xml b/manifest/packageForSign.xml
new file mode 100644
index 0000000..c0c2ef3
--- /dev/null
+++ b/manifest/packageForSign.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
+<Package xmlns="http://soap.sforce.com/2006/04/metadata">
+ <types>
+ <members>updateESignBatch</members>
+ <members>DNUpsertBatch</members>
+ <members>OCSMHandler</members>
+ <members>updateESignBatchTest</members>
+ <members>OCSMHandlerTest</members>
+ <members>DNUpsertBatchTest</members>
+ <members>SyncProvinceWIndowToSignForm</members>
+ <members>SyncProvinceWIndowToSignFormTest</members>
+ <members>LexArriveGoodsController</members>
+ <name>ApexClass</name>
+ </types>
+ <version>52.0</version>
+</Package>
diff --git a/package-lock.json b/package-lock.json
new file mode 100644
index 0000000..d933ae4
--- /dev/null
+++ b/package-lock.json
@@ -0,0 +1,15430 @@
+{
+ "name": "salesforce-app",
+ "version": "1.0.0",
+ "lockfileVersion": 3,
+ "requires": true,
+ "packages": {
+ "": {
+ "name": "salesforce-app",
+ "version": "1.0.0",
+ "devDependencies": {
+ "@prettier/plugin-xml": "^0.12.0",
+ "@salesforce/eslint-config-lwc": "^0.11.0",
+ "@salesforce/eslint-plugin-aura": "^2.0.0",
+ "@salesforce/sfdx-lwc-jest": "^0.10.4",
+ "eslint": "^7.24.0",
+ "eslint-config-prettier": "^6.11.0",
+ "husky": "^4.2.1",
+ "lint-staged": "^10.0.7",
+ "prettier": "2.8.7",
+ "prettier-plugin-apex": "1.12.0"
+ }
+ },
+ "node_modules/@babel/code-frame": {
+ "version": "7.18.6",
+ "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz",
+ "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==",
+ "dev": true,
+ "dependencies": {
+ "@babel/highlight": "^7.18.6"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/compat-data": {
+ "version": "7.21.0",
+ "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.21.0.tgz",
+ "integrity": "sha512-gMuZsmsgxk/ENC3O/fRw5QY8A9/uxQbbCEypnLIiYYc/qVJtEV7ouxC3EllIIwNzMqAQee5tanFabWsUOutS7g==",
+ "dev": true,
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/core": {
+ "version": "7.13.16",
+ "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.13.16.tgz",
+ "integrity": "sha512-sXHpixBiWWFti0AV2Zq7avpTasr6sIAu7Y396c608541qAU2ui4a193m0KSQmfPSKFZLnQ3cvlKDOm3XkuXm3Q==",
+ "dev": true,
+ "dependencies": {
+ "@babel/code-frame": "^7.12.13",
+ "@babel/generator": "^7.13.16",
+ "@babel/helper-compilation-targets": "^7.13.16",
+ "@babel/helper-module-transforms": "^7.13.14",
+ "@babel/helpers": "^7.13.16",
+ "@babel/parser": "^7.13.16",
+ "@babel/template": "^7.12.13",
+ "@babel/traverse": "^7.13.15",
+ "@babel/types": "^7.13.16",
+ "convert-source-map": "^1.7.0",
+ "debug": "^4.1.0",
+ "gensync": "^1.0.0-beta.2",
+ "json5": "^2.1.2",
+ "semver": "^6.3.0",
+ "source-map": "^0.5.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/babel"
+ }
+ },
+ "node_modules/@babel/eslint-parser": {
+ "version": "7.13.14",
+ "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.13.14.tgz",
+ "integrity": "sha512-I0HweR36D73Ibn/FfrRDMKlMqJHFwidIUgYdMpH+aXYuQC+waq59YaJ6t9e9N36axJ82v1jR041wwqDrDXEwRA==",
+ "dev": true,
+ "dependencies": {
+ "eslint-scope": "^5.1.0",
+ "eslint-visitor-keys": "^1.3.0",
+ "semver": "^6.3.0"
+ },
+ "engines": {
+ "node": "^10.13.0 || ^12.13.0 || >=14.0.0"
+ },
+ "peerDependencies": {
+ "@babel/core": ">=7.11.0",
+ "eslint": ">=7.5.0"
+ }
+ },
+ "node_modules/@babel/generator": {
+ "version": "7.21.3",
+ "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.21.3.tgz",
+ "integrity": "sha512-QS3iR1GYC/YGUnW7IdggFeN5c1poPUurnGttOV/bZgPGV+izC/D8HnD6DLwod0fsatNyVn1G3EVWMYIF0nHbeA==",
+ "dev": true,
+ "dependencies": {
+ "@babel/types": "^7.21.3",
+ "@jridgewell/gen-mapping": "^0.3.2",
+ "@jridgewell/trace-mapping": "^0.3.17",
+ "jsesc": "^2.5.1"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/helper-annotate-as-pure": {
+ "version": "7.18.6",
+ "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz",
+ "integrity": "sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==",
+ "dev": true,
+ "dependencies": {
+ "@babel/types": "^7.18.6"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": {
+ "version": "7.18.9",
+ "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.18.9.tgz",
+ "integrity": "sha512-yFQ0YCHoIqarl8BCRwBL8ulYUaZpz3bNsA7oFepAzee+8/+ImtADXNOmO5vJvsPff3qi+hvpkY/NYBTrBQgdNw==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-explode-assignable-expression": "^7.18.6",
+ "@babel/types": "^7.18.9"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/helper-compilation-targets": {
+ "version": "7.20.7",
+ "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.7.tgz",
+ "integrity": "sha512-4tGORmfQcrc+bvrjb5y3dG9Mx1IOZjsHqQVUz7XCNHO+iTmqxWnVg3KRygjGmpRLJGdQSKuvFinbIb0CnZwHAQ==",
+ "dev": true,
+ "dependencies": {
+ "@babel/compat-data": "^7.20.5",
+ "@babel/helper-validator-option": "^7.18.6",
+ "browserslist": "^4.21.3",
+ "lru-cache": "^5.1.1",
+ "semver": "^6.3.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0"
+ }
+ },
+ "node_modules/@babel/helper-create-class-features-plugin": {
+ "version": "7.21.0",
+ "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.21.0.tgz",
+ "integrity": "sha512-Q8wNiMIdwsv5la5SPxNYzzkPnjgC0Sy0i7jLkVOCdllu/xcVNkr3TeZzbHBJrj+XXRqzX5uCyCoV9eu6xUG7KQ==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-annotate-as-pure": "^7.18.6",
+ "@babel/helper-environment-visitor": "^7.18.9",
+ "@babel/helper-function-name": "^7.21.0",
+ "@babel/helper-member-expression-to-functions": "^7.21.0",
+ "@babel/helper-optimise-call-expression": "^7.18.6",
+ "@babel/helper-replace-supers": "^7.20.7",
+ "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0",
+ "@babel/helper-split-export-declaration": "^7.18.6"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0"
+ }
+ },
+ "node_modules/@babel/helper-create-regexp-features-plugin": {
+ "version": "7.21.0",
+ "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.21.0.tgz",
+ "integrity": "sha512-N+LaFW/auRSWdx7SHD/HiARwXQju1vXTW4fKr4u5SgBUTm51OKEjKgj+cs00ggW3kEvNqwErnlwuq7Y3xBe4eg==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-annotate-as-pure": "^7.18.6",
+ "regexpu-core": "^5.3.1"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0"
+ }
+ },
+ "node_modules/@babel/helper-define-polyfill-provider": {
+ "version": "0.2.4",
+ "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.2.4.tgz",
+ "integrity": "sha512-OrpPZ97s+aPi6h2n1OXzdhVis1SGSsMU2aMHgLcOKfsp4/v1NWpx3CWT3lBj5eeBq9cDkPkh+YCfdF7O12uNDQ==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-compilation-targets": "^7.13.0",
+ "@babel/helper-module-imports": "^7.12.13",
+ "@babel/helper-plugin-utils": "^7.13.0",
+ "@babel/traverse": "^7.13.0",
+ "debug": "^4.1.1",
+ "lodash.debounce": "^4.0.8",
+ "resolve": "^1.14.2",
+ "semver": "^6.1.2"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.4.0-0"
+ }
+ },
+ "node_modules/@babel/helper-environment-visitor": {
+ "version": "7.18.9",
+ "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz",
+ "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==",
+ "dev": true,
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/helper-explode-assignable-expression": {
+ "version": "7.18.6",
+ "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.18.6.tgz",
+ "integrity": "sha512-eyAYAsQmB80jNfg4baAtLeWAQHfHFiR483rzFK+BhETlGZaQC9bsfrugfXDCbRHLQbIA7U5NxhhOxN7p/dWIcg==",
+ "dev": true,
+ "dependencies": {
+ "@babel/types": "^7.18.6"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/helper-function-name": {
+ "version": "7.21.0",
+ "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.21.0.tgz",
+ "integrity": "sha512-HfK1aMRanKHpxemaY2gqBmL04iAPOPRj7DxtNbiDOrJK+gdwkiNRVpCpUJYbUT+aZyemKN8brqTOxzCaG6ExRg==",
+ "dev": true,
+ "dependencies": {
+ "@babel/template": "^7.20.7",
+ "@babel/types": "^7.21.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/helper-hoist-variables": {
+ "version": "7.18.6",
+ "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz",
+ "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==",
+ "dev": true,
+ "dependencies": {
+ "@babel/types": "^7.18.6"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/helper-member-expression-to-functions": {
+ "version": "7.21.0",
+ "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.21.0.tgz",
+ "integrity": "sha512-Muu8cdZwNN6mRRNG6lAYErJ5X3bRevgYR2O8wN0yn7jJSnGDu6eG59RfT29JHxGUovyfrh6Pj0XzmR7drNVL3Q==",
+ "dev": true,
+ "dependencies": {
+ "@babel/types": "^7.21.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/helper-module-imports": {
+ "version": "7.18.6",
+ "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz",
+ "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==",
+ "dev": true,
+ "dependencies": {
+ "@babel/types": "^7.18.6"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/helper-module-transforms": {
+ "version": "7.21.2",
+ "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.21.2.tgz",
+ "integrity": "sha512-79yj2AR4U/Oqq/WOV7Lx6hUjau1Zfo4cI+JLAVYeMV5XIlbOhmjEk5ulbTc9fMpmlojzZHkUUxAiK+UKn+hNQQ==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-environment-visitor": "^7.18.9",
+ "@babel/helper-module-imports": "^7.18.6",
+ "@babel/helper-simple-access": "^7.20.2",
+ "@babel/helper-split-export-declaration": "^7.18.6",
+ "@babel/helper-validator-identifier": "^7.19.1",
+ "@babel/template": "^7.20.7",
+ "@babel/traverse": "^7.21.2",
+ "@babel/types": "^7.21.2"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/helper-optimise-call-expression": {
+ "version": "7.18.6",
+ "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.18.6.tgz",
+ "integrity": "sha512-HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA==",
+ "dev": true,
+ "dependencies": {
+ "@babel/types": "^7.18.6"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/helper-plugin-utils": {
+ "version": "7.20.2",
+ "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz",
+ "integrity": "sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/helper-remap-async-to-generator": {
+ "version": "7.18.9",
+ "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.18.9.tgz",
+ "integrity": "sha512-dI7q50YKd8BAv3VEfgg7PS7yD3Rtbi2J1XMXaalXO0W0164hYLnh8zpjRS0mte9MfVp/tltvr/cfdXPvJr1opA==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-annotate-as-pure": "^7.18.6",
+ "@babel/helper-environment-visitor": "^7.18.9",
+ "@babel/helper-wrap-function": "^7.18.9",
+ "@babel/types": "^7.18.9"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0"
+ }
+ },
+ "node_modules/@babel/helper-replace-supers": {
+ "version": "7.20.7",
+ "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.20.7.tgz",
+ "integrity": "sha512-vujDMtB6LVfNW13jhlCrp48QNslK6JXi7lQG736HVbHz/mbf4Dc7tIRh1Xf5C0rF7BP8iiSxGMCmY6Ci1ven3A==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-environment-visitor": "^7.18.9",
+ "@babel/helper-member-expression-to-functions": "^7.20.7",
+ "@babel/helper-optimise-call-expression": "^7.18.6",
+ "@babel/template": "^7.20.7",
+ "@babel/traverse": "^7.20.7",
+ "@babel/types": "^7.20.7"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/helper-simple-access": {
+ "version": "7.20.2",
+ "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz",
+ "integrity": "sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==",
+ "dev": true,
+ "dependencies": {
+ "@babel/types": "^7.20.2"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/helper-skip-transparent-expression-wrappers": {
+ "version": "7.20.0",
+ "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.20.0.tgz",
+ "integrity": "sha512-5y1JYeNKfvnT8sZcK9DVRtpTbGiomYIHviSP3OQWmDPU3DeH4a1ZlT/N2lyQ5P8egjcRaT/Y9aNqUxK0WsnIIg==",
+ "dev": true,
+ "dependencies": {
+ "@babel/types": "^7.20.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/helper-split-export-declaration": {
+ "version": "7.18.6",
+ "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz",
+ "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==",
+ "dev": true,
+ "dependencies": {
+ "@babel/types": "^7.18.6"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/helper-string-parser": {
+ "version": "7.19.4",
+ "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz",
+ "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==",
+ "dev": true,
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/helper-validator-identifier": {
+ "version": "7.19.1",
+ "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz",
+ "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==",
+ "dev": true,
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/helper-validator-option": {
+ "version": "7.21.0",
+ "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.21.0.tgz",
+ "integrity": "sha512-rmL/B8/f0mKS2baE9ZpyTcTavvEuWhTTW8amjzXNvYG4AwBsqTLikfXsEofsJEfKHf+HQVQbFOHy6o+4cnC/fQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/helper-wrap-function": {
+ "version": "7.20.5",
+ "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.20.5.tgz",
+ "integrity": "sha512-bYMxIWK5mh+TgXGVqAtnu5Yn1un+v8DDZtqyzKRLUzrh70Eal2O3aZ7aPYiMADO4uKlkzOiRiZ6GX5q3qxvW9Q==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-function-name": "^7.19.0",
+ "@babel/template": "^7.18.10",
+ "@babel/traverse": "^7.20.5",
+ "@babel/types": "^7.20.5"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/helpers": {
+ "version": "7.21.0",
+ "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.21.0.tgz",
+ "integrity": "sha512-XXve0CBtOW0pd7MRzzmoyuSj0e3SEzj8pgyFxnTT1NJZL38BD1MK7yYrm8yefRPIDvNNe14xR4FdbHwpInD4rA==",
+ "dev": true,
+ "dependencies": {
+ "@babel/template": "^7.20.7",
+ "@babel/traverse": "^7.21.0",
+ "@babel/types": "^7.21.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/highlight": {
+ "version": "7.18.6",
+ "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz",
+ "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-validator-identifier": "^7.18.6",
+ "chalk": "^2.0.0",
+ "js-tokens": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/parser": {
+ "version": "7.21.3",
+ "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.21.3.tgz",
+ "integrity": "sha512-lobG0d7aOfQRXh8AyklEAgZGvA4FShxo6xQbUrrT/cNBPUdIDojlokwJsQyCC/eKia7ifqM0yP+2DRZ4WKw2RQ==",
+ "dev": true,
+ "bin": {
+ "parser": "bin/babel-parser.js"
+ },
+ "engines": {
+ "node": ">=6.0.0"
+ }
+ },
+ "node_modules/@babel/plugin-proposal-class-properties": {
+ "version": "7.10.4",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.10.4.tgz",
+ "integrity": "sha512-vhwkEROxzcHGNu2mzUC0OFFNXdZ4M23ib8aRRcJSsW8BZK9pQMD7QB7csl97NBbgGZO7ZyHUyKDnxzOaP4IrCg==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-create-class-features-plugin": "^7.10.4",
+ "@babel/helper-plugin-utils": "^7.10.4"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-proposal-object-rest-spread": {
+ "version": "7.11.0",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.11.0.tgz",
+ "integrity": "sha512-wzch41N4yztwoRw0ak+37wxwJM2oiIiy6huGCoqkvSTA9acYWcPfn9Y4aJqmFFJ70KTJUu29f3DQ43uJ9HXzEA==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.10.4",
+ "@babel/plugin-syntax-object-rest-spread": "^7.8.0",
+ "@babel/plugin-transform-parameters": "^7.10.4"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-syntax-async-generators": {
+ "version": "7.8.4",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz",
+ "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.8.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-syntax-bigint": {
+ "version": "7.8.3",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz",
+ "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.8.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-syntax-class-properties": {
+ "version": "7.8.3",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.8.3.tgz",
+ "integrity": "sha512-UcAyQWg2bAN647Q+O811tG9MrJ38Z10jjhQdKNAL8fsyPzE3cCN/uT+f55cFVY4aGO4jqJAvmqsuY3GQDwAoXg==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.8.3"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-syntax-decorators": {
+ "version": "7.8.3",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.8.3.tgz",
+ "integrity": "sha512-8Hg4dNNT9/LcA1zQlfwuKR8BUc/if7Q7NkTam9sGTcJphLwpf2g4S42uhspQrIrR+dpzE0dtTqBVFoHl8GtnnQ==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.8.3"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-syntax-dynamic-import": {
+ "version": "7.8.3",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz",
+ "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.8.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-syntax-import-meta": {
+ "version": "7.10.4",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz",
+ "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.10.4"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-syntax-json-strings": {
+ "version": "7.8.3",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz",
+ "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.8.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-syntax-logical-assignment-operators": {
+ "version": "7.10.4",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz",
+ "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.10.4"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": {
+ "version": "7.8.3",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz",
+ "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.8.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-syntax-numeric-separator": {
+ "version": "7.10.4",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz",
+ "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.10.4"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-syntax-object-rest-spread": {
+ "version": "7.8.3",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz",
+ "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.8.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-syntax-optional-catch-binding": {
+ "version": "7.8.3",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz",
+ "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.8.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-syntax-optional-chaining": {
+ "version": "7.8.3",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz",
+ "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.8.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-syntax-typescript": {
+ "version": "7.20.0",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.20.0.tgz",
+ "integrity": "sha512-rd9TkG+u1CExzS4SM1BlMEhMXwFLKVjOAFFCDx9PbX5ycJWDoWMcwdJH9RhkPu1dOgn5TrxLot/Gx6lWFuAUNQ==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.19.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-arrow-functions": {
+ "version": "7.14.5",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.14.5.tgz",
+ "integrity": "sha512-KOnO0l4+tD5IfOdi4x8C1XmEIRWUjNRV8wc6K2vz/3e8yAOoZZvsRXRRIF/yo/MAOFb4QjtAw9xSxMXbSMRy8A==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.14.5"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-async-to-generator": {
+ "version": "7.14.5",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.14.5.tgz",
+ "integrity": "sha512-szkbzQ0mNk0rpu76fzDdqSyPu0MuvpXgC+6rz5rpMb5OIRxdmHfQxrktL8CYolL2d8luMCZTR0DpIMIdL27IjA==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-module-imports": "^7.14.5",
+ "@babel/helper-plugin-utils": "^7.14.5",
+ "@babel/helper-remap-async-to-generator": "^7.14.5"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-block-scoped-functions": {
+ "version": "7.14.5",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.14.5.tgz",
+ "integrity": "sha512-dtqWqdWZ5NqBX3KzsVCWfQI3A53Ft5pWFCT2eCVUftWZgjc5DpDponbIF1+c+7cSGk2wN0YK7HGL/ezfRbpKBQ==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.14.5"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-block-scoping": {
+ "version": "7.15.3",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.15.3.tgz",
+ "integrity": "sha512-nBAzfZwZb4DkaGtOes1Up1nOAp9TDRRFw4XBzBBSG9QK7KVFmYzgj9o9sbPv7TX5ofL4Auq4wZnxCoPnI/lz2Q==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.14.5"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-classes": {
+ "version": "7.15.4",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.15.4.tgz",
+ "integrity": "sha512-Yjvhex8GzBmmPQUvpXRPWQ9WnxXgAFuZSrqOK/eJlOGIXwvv8H3UEdUigl1gb/bnjTrln+e8bkZUYCBt/xYlBg==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-annotate-as-pure": "^7.15.4",
+ "@babel/helper-function-name": "^7.15.4",
+ "@babel/helper-optimise-call-expression": "^7.15.4",
+ "@babel/helper-plugin-utils": "^7.14.5",
+ "@babel/helper-replace-supers": "^7.15.4",
+ "@babel/helper-split-export-declaration": "^7.15.4",
+ "globals": "^11.1.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-computed-properties": {
+ "version": "7.14.5",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.14.5.tgz",
+ "integrity": "sha512-pWM+E4283UxaVzLb8UBXv4EIxMovU4zxT1OPnpHJcmnvyY9QbPPTKZfEj31EUvG3/EQRbYAGaYEUZ4yWOBC2xg==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.14.5"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-destructuring": {
+ "version": "7.14.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.14.7.tgz",
+ "integrity": "sha512-0mDE99nK+kVh3xlc5vKwB6wnP9ecuSj+zQCa/n0voENtP/zymdT4HH6QEb65wjjcbqr1Jb/7z9Qp7TF5FtwYGw==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.14.5"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-duplicate-keys": {
+ "version": "7.14.5",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.14.5.tgz",
+ "integrity": "sha512-iJjbI53huKbPDAsJ8EmVmvCKeeq21bAze4fu9GBQtSLqfvzj2oRuHVx4ZkDwEhg1htQ+5OBZh/Ab0XDf5iBZ7A==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.14.5"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-exponentiation-operator": {
+ "version": "7.14.5",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.14.5.tgz",
+ "integrity": "sha512-jFazJhMBc9D27o9jDnIE5ZErI0R0m7PbKXVq77FFvqFbzvTMuv8jaAwLZ5PviOLSFttqKIW0/wxNSDbjLk0tYA==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-builder-binary-assignment-operator-visitor": "^7.14.5",
+ "@babel/helper-plugin-utils": "^7.14.5"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-for-of": {
+ "version": "7.15.4",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.15.4.tgz",
+ "integrity": "sha512-DRTY9fA751AFBDh2oxydvVm4SYevs5ILTWLs6xKXps4Re/KG5nfUkr+TdHCrRWB8C69TlzVgA9b3RmGWmgN9LA==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.14.5"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-function-name": {
+ "version": "7.14.5",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.14.5.tgz",
+ "integrity": "sha512-vbO6kv0fIzZ1GpmGQuvbwwm+O4Cbm2NrPzwlup9+/3fdkuzo1YqOZcXw26+YUJB84Ja7j9yURWposEHLYwxUfQ==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-function-name": "^7.14.5",
+ "@babel/helper-plugin-utils": "^7.14.5"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-instanceof": {
+ "version": "7.14.5",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-instanceof/-/plugin-transform-instanceof-7.14.5.tgz",
+ "integrity": "sha512-3CIpRzBLk5tEwIzjjD86KR8oMYrp1fl9q7kbdJa6O6Lcmkcee9DXfeO6zRXis//5gWRf63o5oDlNBh0VAlmtgw==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.14.5"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-literals": {
+ "version": "7.14.5",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.14.5.tgz",
+ "integrity": "sha512-ql33+epql2F49bi8aHXxvLURHkxJbSmMKl9J5yHqg4PLtdE6Uc48CH1GS6TQvZ86eoB/ApZXwm7jlA+B3kra7A==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.14.5"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-modules-amd": {
+ "version": "7.14.5",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.14.5.tgz",
+ "integrity": "sha512-3lpOU8Vxmp3roC4vzFpSdEpGUWSMsHFreTWOMMLzel2gNGfHE5UWIh/LN6ghHs2xurUp4jRFYMUIZhuFbody1g==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-module-transforms": "^7.14.5",
+ "@babel/helper-plugin-utils": "^7.14.5",
+ "babel-plugin-dynamic-import-node": "^2.3.3"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-modules-commonjs": {
+ "version": "7.9.0",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.9.0.tgz",
+ "integrity": "sha512-qzlCrLnKqio4SlgJ6FMMLBe4bySNis8DFn1VkGmOcxG9gqEyPIOzeQrA//u0HAKrWpJlpZbZMPB1n/OPa4+n8g==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-module-transforms": "^7.9.0",
+ "@babel/helper-plugin-utils": "^7.8.3",
+ "@babel/helper-simple-access": "^7.8.3",
+ "babel-plugin-dynamic-import-node": "^2.3.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-modules-systemjs": {
+ "version": "7.15.4",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.15.4.tgz",
+ "integrity": "sha512-fJUnlQrl/mezMneR72CKCgtOoahqGJNVKpompKwzv3BrEXdlPspTcyxrZ1XmDTIr9PpULrgEQo3qNKp6dW7ssw==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-hoist-variables": "^7.15.4",
+ "@babel/helper-module-transforms": "^7.15.4",
+ "@babel/helper-plugin-utils": "^7.14.5",
+ "@babel/helper-validator-identifier": "^7.14.9",
+ "babel-plugin-dynamic-import-node": "^2.3.3"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-modules-umd": {
+ "version": "7.14.5",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.14.5.tgz",
+ "integrity": "sha512-RfPGoagSngC06LsGUYyM9QWSXZ8MysEjDJTAea1lqRjNECE3y0qIJF/qbvJxc4oA4s99HumIMdXOrd+TdKaAAA==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-module-transforms": "^7.14.5",
+ "@babel/helper-plugin-utils": "^7.14.5"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-object-super": {
+ "version": "7.14.5",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.14.5.tgz",
+ "integrity": "sha512-MKfOBWzK0pZIrav9z/hkRqIk/2bTv9qvxHzPQc12RcVkMOzpIKnFCNYJip00ssKWYkd8Sf5g0Wr7pqJ+cmtuFg==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.14.5",
+ "@babel/helper-replace-supers": "^7.14.5"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-parameters": {
+ "version": "7.21.3",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.21.3.tgz",
+ "integrity": "sha512-Wxc+TvppQG9xWFYatvCGPvZ6+SIUxQ2ZdiBP+PHYMIjnPXD+uThCshaz4NZOnODAtBjjcVQQ/3OKs9LW28purQ==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.20.2"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-regenerator": {
+ "version": "7.14.5",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.14.5.tgz",
+ "integrity": "sha512-NVIY1W3ITDP5xQl50NgTKlZ0GrotKtLna08/uGY6ErQt6VEQZXla86x/CTddm5gZdcr+5GSsvMeTmWA5Ii6pkg==",
+ "dev": true,
+ "dependencies": {
+ "regenerator-transform": "^0.14.2"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-runtime": {
+ "version": "7.15.0",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.15.0.tgz",
+ "integrity": "sha512-sfHYkLGjhzWTq6xsuQ01oEsUYjkHRux9fW1iUA68dC7Qd8BS1Unq4aZ8itmQp95zUzIcyR2EbNMTzAicFj+guw==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-module-imports": "^7.14.5",
+ "@babel/helper-plugin-utils": "^7.14.5",
+ "babel-plugin-polyfill-corejs2": "^0.2.2",
+ "babel-plugin-polyfill-corejs3": "^0.2.2",
+ "babel-plugin-polyfill-regenerator": "^0.2.2",
+ "semver": "^6.3.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-shorthand-properties": {
+ "version": "7.14.5",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.14.5.tgz",
+ "integrity": "sha512-xLucks6T1VmGsTB+GWK5Pl9Jl5+nRXD1uoFdA5TSO6xtiNjtXTjKkmPdFXVLGlK5A2/or/wQMKfmQ2Y0XJfn5g==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.14.5"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-spread": {
+ "version": "7.14.6",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.14.6.tgz",
+ "integrity": "sha512-Zr0x0YroFJku7n7+/HH3A2eIrGMjbmAIbJSVv0IZ+t3U2WUQUA64S/oeied2e+MaGSjmt4alzBCsK9E8gh+fag==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.14.5",
+ "@babel/helper-skip-transparent-expression-wrappers": "^7.14.5"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-sticky-regex": {
+ "version": "7.14.5",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.14.5.tgz",
+ "integrity": "sha512-Z7F7GyvEMzIIbwnziAZmnSNpdijdr4dWt+FJNBnBLz5mwDFkqIXU9wmBcWWad3QeJF5hMTkRe4dAq2sUZiG+8A==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.14.5"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-template-literals": {
+ "version": "7.14.5",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.14.5.tgz",
+ "integrity": "sha512-22btZeURqiepOfuy/VkFr+zStqlujWaarpMErvay7goJS6BWwdd6BY9zQyDLDa4x2S3VugxFb162IZ4m/S/+Gg==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.14.5"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-typeof-symbol": {
+ "version": "7.14.5",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.14.5.tgz",
+ "integrity": "sha512-lXzLD30ffCWseTbMQzrvDWqljvZlHkXU+CnseMhkMNqU1sASnCsz3tSzAaH3vCUXb9PHeUb90ZT1BdFTm1xxJw==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.14.5"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-typescript": {
+ "version": "7.21.3",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.21.3.tgz",
+ "integrity": "sha512-RQxPz6Iqt8T0uw/WsJNReuBpWpBqs/n7mNo18sKLoTbMp+UrEekhH+pKSVC7gWz+DNjo9gryfV8YzCiT45RgMw==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-annotate-as-pure": "^7.18.6",
+ "@babel/helper-create-class-features-plugin": "^7.21.0",
+ "@babel/helper-plugin-utils": "^7.20.2",
+ "@babel/plugin-syntax-typescript": "^7.20.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/plugin-transform-unicode-regex": {
+ "version": "7.14.5",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.14.5.tgz",
+ "integrity": "sha512-UygduJpC5kHeCiRw/xDVzC+wj8VaYSoKl5JNVmbP7MadpNinAm3SvZCxZ42H37KZBKztz46YC73i9yV34d0Tzw==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-create-regexp-features-plugin": "^7.14.5",
+ "@babel/helper-plugin-utils": "^7.14.5"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/preset-typescript": {
+ "version": "7.9.0",
+ "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.9.0.tgz",
+ "integrity": "sha512-S4cueFnGrIbvYJgwsVFKdvOmpiL0XGw9MFW9D0vgRys5g36PBhZRL8NX8Gr2akz8XRtzq6HuDXPD/1nniagNUg==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.8.3",
+ "@babel/plugin-transform-typescript": "^7.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/@babel/regjsgen": {
+ "version": "0.8.0",
+ "resolved": "https://registry.npmjs.org/@babel/regjsgen/-/regjsgen-0.8.0.tgz",
+ "integrity": "sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==",
+ "dev": true
+ },
+ "node_modules/@babel/runtime": {
+ "version": "7.21.0",
+ "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.21.0.tgz",
+ "integrity": "sha512-xwII0//EObnq89Ji5AKYQaRYiW/nZ3llSv29d49IuxPhKbtJoLP+9QUUZ4nVragQVtaVGeZrpB+ZtG/Pdy/POw==",
+ "dev": true,
+ "dependencies": {
+ "regenerator-runtime": "^0.13.11"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/template": {
+ "version": "7.20.7",
+ "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.20.7.tgz",
+ "integrity": "sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==",
+ "dev": true,
+ "dependencies": {
+ "@babel/code-frame": "^7.18.6",
+ "@babel/parser": "^7.20.7",
+ "@babel/types": "^7.20.7"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/traverse": {
+ "version": "7.21.3",
+ "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.21.3.tgz",
+ "integrity": "sha512-XLyopNeaTancVitYZe2MlUEvgKb6YVVPXzofHgqHijCImG33b/uTurMS488ht/Hbsb2XK3U2BnSTxKVNGV3nGQ==",
+ "dev": true,
+ "dependencies": {
+ "@babel/code-frame": "^7.18.6",
+ "@babel/generator": "^7.21.3",
+ "@babel/helper-environment-visitor": "^7.18.9",
+ "@babel/helper-function-name": "^7.21.0",
+ "@babel/helper-hoist-variables": "^7.18.6",
+ "@babel/helper-split-export-declaration": "^7.18.6",
+ "@babel/parser": "^7.21.3",
+ "@babel/types": "^7.21.3",
+ "debug": "^4.1.0",
+ "globals": "^11.1.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/types": {
+ "version": "7.21.3",
+ "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.21.3.tgz",
+ "integrity": "sha512-sBGdETxC+/M4o/zKC0sl6sjWv62WFR/uzxrJ6uYyMLZOUlPnwzw0tKgVHOXxaAd5l2g8pEDM5RZ495GPQI77kg==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-string-parser": "^7.19.4",
+ "@babel/helper-validator-identifier": "^7.19.1",
+ "to-fast-properties": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@bcoe/v8-coverage": {
+ "version": "0.2.3",
+ "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz",
+ "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==",
+ "dev": true
+ },
+ "node_modules/@cnakazawa/watch": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/@cnakazawa/watch/-/watch-1.0.4.tgz",
+ "integrity": "sha512-v9kIhKwjeZThiWrLmj0y17CWoyddASLj9O2yvbZkbvw/N3rWOYy9zkV66ursAoVr0mV15bL8g0c4QZUE6cdDoQ==",
+ "dev": true,
+ "dependencies": {
+ "exec-sh": "^0.3.2",
+ "minimist": "^1.2.0"
+ },
+ "bin": {
+ "watch": "cli.js"
+ },
+ "engines": {
+ "node": ">=0.1.95"
+ }
+ },
+ "node_modules/@eslint/eslintrc": {
+ "version": "0.4.3",
+ "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz",
+ "integrity": "sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw==",
+ "dev": true,
+ "dependencies": {
+ "ajv": "^6.12.4",
+ "debug": "^4.1.1",
+ "espree": "^7.3.0",
+ "globals": "^13.9.0",
+ "ignore": "^4.0.6",
+ "import-fresh": "^3.2.1",
+ "js-yaml": "^3.13.1",
+ "minimatch": "^3.0.4",
+ "strip-json-comments": "^3.1.1"
+ },
+ "engines": {
+ "node": "^10.12.0 || >=12.0.0"
+ }
+ },
+ "node_modules/@eslint/eslintrc/node_modules/globals": {
+ "version": "13.20.0",
+ "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz",
+ "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==",
+ "dev": true,
+ "dependencies": {
+ "type-fest": "^0.20.2"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/@eslint/eslintrc/node_modules/type-fest": {
+ "version": "0.20.2",
+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz",
+ "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/@hapi/hoek": {
+ "version": "9.3.0",
+ "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-9.3.0.tgz",
+ "integrity": "sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ==",
+ "dev": true
+ },
+ "node_modules/@hapi/topo": {
+ "version": "5.1.0",
+ "resolved": "https://registry.npmjs.org/@hapi/topo/-/topo-5.1.0.tgz",
+ "integrity": "sha512-foQZKJig7Ob0BMAYBfcJk8d77QtOe7Wo4ox7ff1lQYoNNAb6jwcY1ncdoy2e9wQZzvNy7ODZCYJkK8kzmcAnAg==",
+ "dev": true,
+ "dependencies": {
+ "@hapi/hoek": "^9.0.0"
+ }
+ },
+ "node_modules/@humanwhocodes/config-array": {
+ "version": "0.5.0",
+ "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.5.0.tgz",
+ "integrity": "sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg==",
+ "dev": true,
+ "dependencies": {
+ "@humanwhocodes/object-schema": "^1.2.0",
+ "debug": "^4.1.1",
+ "minimatch": "^3.0.4"
+ },
+ "engines": {
+ "node": ">=10.10.0"
+ }
+ },
+ "node_modules/@humanwhocodes/object-schema": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz",
+ "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==",
+ "dev": true
+ },
+ "node_modules/@istanbuljs/load-nyc-config": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz",
+ "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==",
+ "dev": true,
+ "dependencies": {
+ "camelcase": "^5.3.1",
+ "find-up": "^4.1.0",
+ "get-package-type": "^0.1.0",
+ "js-yaml": "^3.13.1",
+ "resolve-from": "^5.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/@istanbuljs/load-nyc-config/node_modules/find-up": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
+ "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
+ "dev": true,
+ "dependencies": {
+ "locate-path": "^5.0.0",
+ "path-exists": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/@istanbuljs/load-nyc-config/node_modules/locate-path": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
+ "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
+ "dev": true,
+ "dependencies": {
+ "p-locate": "^4.1.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/@istanbuljs/load-nyc-config/node_modules/p-limit": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
+ "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
+ "dev": true,
+ "dependencies": {
+ "p-try": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=6"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/@istanbuljs/load-nyc-config/node_modules/p-locate": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
+ "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
+ "dev": true,
+ "dependencies": {
+ "p-limit": "^2.2.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/@istanbuljs/load-nyc-config/node_modules/resolve-from": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz",
+ "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/@istanbuljs/schema": {
+ "version": "0.1.3",
+ "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz",
+ "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/@jest/console": {
+ "version": "25.5.0",
+ "resolved": "https://registry.npmjs.org/@jest/console/-/console-25.5.0.tgz",
+ "integrity": "sha512-T48kZa6MK1Y6k4b89sexwmSF4YLeZS/Udqg3Jj3jG/cHH+N/sLFCEoXEDMOKugJQ9FxPN1osxIknvKkxt6MKyw==",
+ "dev": true,
+ "dependencies": {
+ "@jest/types": "^25.5.0",
+ "chalk": "^3.0.0",
+ "jest-message-util": "^25.5.0",
+ "jest-util": "^25.5.0",
+ "slash": "^3.0.0"
+ },
+ "engines": {
+ "node": ">= 8.3"
+ }
+ },
+ "node_modules/@jest/console/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/@jest/console/node_modules/chalk": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz",
+ "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/@jest/console/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/@jest/console/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/@jest/console/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/@jest/console/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/@jest/core": {
+ "version": "25.5.4",
+ "resolved": "https://registry.npmjs.org/@jest/core/-/core-25.5.4.tgz",
+ "integrity": "sha512-3uSo7laYxF00Dg/DMgbn4xMJKmDdWvZnf89n8Xj/5/AeQ2dOQmn6b6Hkj/MleyzZWXpwv+WSdYWl4cLsy2JsoA==",
+ "dev": true,
+ "dependencies": {
+ "@jest/console": "^25.5.0",
+ "@jest/reporters": "^25.5.1",
+ "@jest/test-result": "^25.5.0",
+ "@jest/transform": "^25.5.1",
+ "@jest/types": "^25.5.0",
+ "ansi-escapes": "^4.2.1",
+ "chalk": "^3.0.0",
+ "exit": "^0.1.2",
+ "graceful-fs": "^4.2.4",
+ "jest-changed-files": "^25.5.0",
+ "jest-config": "^25.5.4",
+ "jest-haste-map": "^25.5.1",
+ "jest-message-util": "^25.5.0",
+ "jest-regex-util": "^25.2.6",
+ "jest-resolve": "^25.5.1",
+ "jest-resolve-dependencies": "^25.5.4",
+ "jest-runner": "^25.5.4",
+ "jest-runtime": "^25.5.4",
+ "jest-snapshot": "^25.5.1",
+ "jest-util": "^25.5.0",
+ "jest-validate": "^25.5.0",
+ "jest-watcher": "^25.5.0",
+ "micromatch": "^4.0.2",
+ "p-each-series": "^2.1.0",
+ "realpath-native": "^2.0.0",
+ "rimraf": "^3.0.0",
+ "slash": "^3.0.0",
+ "strip-ansi": "^6.0.0"
+ },
+ "engines": {
+ "node": ">= 8.3"
+ }
+ },
+ "node_modules/@jest/core/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/@jest/core/node_modules/chalk": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz",
+ "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/@jest/core/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/@jest/core/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/@jest/core/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/@jest/core/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/@jest/environment": {
+ "version": "25.5.0",
+ "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-25.5.0.tgz",
+ "integrity": "sha512-U2VXPEqL07E/V7pSZMSQCvV5Ea4lqOlT+0ZFijl/i316cRMHvZ4qC+jBdryd+lmRetjQo0YIQr6cVPNxxK87mA==",
+ "dev": true,
+ "dependencies": {
+ "@jest/fake-timers": "^25.5.0",
+ "@jest/types": "^25.5.0",
+ "jest-mock": "^25.5.0"
+ },
+ "engines": {
+ "node": ">= 8.3"
+ }
+ },
+ "node_modules/@jest/fake-timers": {
+ "version": "25.5.0",
+ "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-25.5.0.tgz",
+ "integrity": "sha512-9y2+uGnESw/oyOI3eww9yaxdZyHq7XvprfP/eeoCsjqKYts2yRlsHS/SgjPDV8FyMfn2nbMy8YzUk6nyvdLOpQ==",
+ "dev": true,
+ "dependencies": {
+ "@jest/types": "^25.5.0",
+ "jest-message-util": "^25.5.0",
+ "jest-mock": "^25.5.0",
+ "jest-util": "^25.5.0",
+ "lolex": "^5.0.0"
+ },
+ "engines": {
+ "node": ">= 8.3"
+ }
+ },
+ "node_modules/@jest/globals": {
+ "version": "25.5.2",
+ "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-25.5.2.tgz",
+ "integrity": "sha512-AgAS/Ny7Q2RCIj5kZ+0MuKM1wbF0WMLxbCVl/GOMoCNbODRdJ541IxJ98xnZdVSZXivKpJlNPIWa3QmY0l4CXA==",
+ "dev": true,
+ "dependencies": {
+ "@jest/environment": "^25.5.0",
+ "@jest/types": "^25.5.0",
+ "expect": "^25.5.0"
+ },
+ "engines": {
+ "node": ">= 8.3"
+ }
+ },
+ "node_modules/@jest/reporters": {
+ "version": "25.5.1",
+ "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-25.5.1.tgz",
+ "integrity": "sha512-3jbd8pPDTuhYJ7vqiHXbSwTJQNavczPs+f1kRprRDxETeE3u6srJ+f0NPuwvOmk+lmunZzPkYWIFZDLHQPkviw==",
+ "dev": true,
+ "dependencies": {
+ "@bcoe/v8-coverage": "^0.2.3",
+ "@jest/console": "^25.5.0",
+ "@jest/test-result": "^25.5.0",
+ "@jest/transform": "^25.5.1",
+ "@jest/types": "^25.5.0",
+ "chalk": "^3.0.0",
+ "collect-v8-coverage": "^1.0.0",
+ "exit": "^0.1.2",
+ "glob": "^7.1.2",
+ "graceful-fs": "^4.2.4",
+ "istanbul-lib-coverage": "^3.0.0",
+ "istanbul-lib-instrument": "^4.0.0",
+ "istanbul-lib-report": "^3.0.0",
+ "istanbul-lib-source-maps": "^4.0.0",
+ "istanbul-reports": "^3.0.2",
+ "jest-haste-map": "^25.5.1",
+ "jest-resolve": "^25.5.1",
+ "jest-util": "^25.5.0",
+ "jest-worker": "^25.5.0",
+ "slash": "^3.0.0",
+ "source-map": "^0.6.0",
+ "string-length": "^3.1.0",
+ "terminal-link": "^2.0.0",
+ "v8-to-istanbul": "^4.1.3"
+ },
+ "engines": {
+ "node": ">= 8.3"
+ },
+ "optionalDependencies": {
+ "node-notifier": "^6.0.0"
+ }
+ },
+ "node_modules/@jest/reporters/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/@jest/reporters/node_modules/chalk": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz",
+ "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/@jest/reporters/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/@jest/reporters/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/@jest/reporters/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/@jest/reporters/node_modules/source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/@jest/reporters/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/@jest/source-map": {
+ "version": "25.5.0",
+ "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-25.5.0.tgz",
+ "integrity": "sha512-eIGx0xN12yVpMcPaVpjXPnn3N30QGJCJQSkEDUt9x1fI1Gdvb07Ml6K5iN2hG7NmMP6FDmtPEssE3z6doOYUwQ==",
+ "dev": true,
+ "dependencies": {
+ "callsites": "^3.0.0",
+ "graceful-fs": "^4.2.4",
+ "source-map": "^0.6.0"
+ },
+ "engines": {
+ "node": ">= 8.3"
+ }
+ },
+ "node_modules/@jest/source-map/node_modules/source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/@jest/test-result": {
+ "version": "25.5.0",
+ "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-25.5.0.tgz",
+ "integrity": "sha512-oV+hPJgXN7IQf/fHWkcS99y0smKLU2czLBJ9WA0jHITLst58HpQMtzSYxzaBvYc6U5U6jfoMthqsUlUlbRXs0A==",
+ "dev": true,
+ "dependencies": {
+ "@jest/console": "^25.5.0",
+ "@jest/types": "^25.5.0",
+ "@types/istanbul-lib-coverage": "^2.0.0",
+ "collect-v8-coverage": "^1.0.0"
+ },
+ "engines": {
+ "node": ">= 8.3"
+ }
+ },
+ "node_modules/@jest/test-sequencer": {
+ "version": "25.5.4",
+ "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-25.5.4.tgz",
+ "integrity": "sha512-pTJGEkSeg1EkCO2YWq6hbFvKNXk8ejqlxiOg1jBNLnWrgXOkdY6UmqZpwGFXNnRt9B8nO1uWMzLLZ4eCmhkPNA==",
+ "dev": true,
+ "dependencies": {
+ "@jest/test-result": "^25.5.0",
+ "graceful-fs": "^4.2.4",
+ "jest-haste-map": "^25.5.1",
+ "jest-runner": "^25.5.4",
+ "jest-runtime": "^25.5.4"
+ },
+ "engines": {
+ "node": ">= 8.3"
+ }
+ },
+ "node_modules/@jest/transform": {
+ "version": "25.5.1",
+ "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-25.5.1.tgz",
+ "integrity": "sha512-Y8CEoVwXb4QwA6Y/9uDkn0Xfz0finGkieuV0xkdF9UtZGJeLukD5nLkaVrVsODB1ojRWlaoD0AJZpVHCSnJEvg==",
+ "dev": true,
+ "dependencies": {
+ "@babel/core": "^7.1.0",
+ "@jest/types": "^25.5.0",
+ "babel-plugin-istanbul": "^6.0.0",
+ "chalk": "^3.0.0",
+ "convert-source-map": "^1.4.0",
+ "fast-json-stable-stringify": "^2.0.0",
+ "graceful-fs": "^4.2.4",
+ "jest-haste-map": "^25.5.1",
+ "jest-regex-util": "^25.2.6",
+ "jest-util": "^25.5.0",
+ "micromatch": "^4.0.2",
+ "pirates": "^4.0.1",
+ "realpath-native": "^2.0.0",
+ "slash": "^3.0.0",
+ "source-map": "^0.6.1",
+ "write-file-atomic": "^3.0.0"
+ },
+ "engines": {
+ "node": ">= 8.3"
+ }
+ },
+ "node_modules/@jest/transform/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/@jest/transform/node_modules/chalk": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz",
+ "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/@jest/transform/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/@jest/transform/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/@jest/transform/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/@jest/transform/node_modules/source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/@jest/transform/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/@jest/types": {
+ "version": "25.5.0",
+ "resolved": "https://registry.npmjs.org/@jest/types/-/types-25.5.0.tgz",
+ "integrity": "sha512-OXD0RgQ86Tu3MazKo8bnrkDRaDXXMGUqd+kTtLtK1Zb7CRzQcaSRPPPV37SvYTdevXEBVxe0HXylEjs8ibkmCw==",
+ "dev": true,
+ "dependencies": {
+ "@types/istanbul-lib-coverage": "^2.0.0",
+ "@types/istanbul-reports": "^1.1.1",
+ "@types/yargs": "^15.0.0",
+ "chalk": "^3.0.0"
+ },
+ "engines": {
+ "node": ">= 8.3"
+ }
+ },
+ "node_modules/@jest/types/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/@jest/types/node_modules/chalk": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz",
+ "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/@jest/types/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/@jest/types/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/@jest/types/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/@jest/types/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/@jridgewell/gen-mapping": {
+ "version": "0.3.2",
+ "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz",
+ "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==",
+ "dev": true,
+ "dependencies": {
+ "@jridgewell/set-array": "^1.0.1",
+ "@jridgewell/sourcemap-codec": "^1.4.10",
+ "@jridgewell/trace-mapping": "^0.3.9"
+ },
+ "engines": {
+ "node": ">=6.0.0"
+ }
+ },
+ "node_modules/@jridgewell/resolve-uri": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz",
+ "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==",
+ "dev": true,
+ "engines": {
+ "node": ">=6.0.0"
+ }
+ },
+ "node_modules/@jridgewell/set-array": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz",
+ "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==",
+ "dev": true,
+ "engines": {
+ "node": ">=6.0.0"
+ }
+ },
+ "node_modules/@jridgewell/sourcemap-codec": {
+ "version": "1.4.14",
+ "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz",
+ "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==",
+ "dev": true
+ },
+ "node_modules/@jridgewell/trace-mapping": {
+ "version": "0.3.17",
+ "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz",
+ "integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==",
+ "dev": true,
+ "dependencies": {
+ "@jridgewell/resolve-uri": "3.1.0",
+ "@jridgewell/sourcemap-codec": "1.4.14"
+ }
+ },
+ "node_modules/@lwc/babel-plugin-component": {
+ "version": "1.9.3-230.1",
+ "resolved": "https://registry.npmjs.org/@lwc/babel-plugin-component/-/babel-plugin-component-1.9.3-230.1.tgz",
+ "integrity": "sha512-5QItISA/MS+772c5wkHJ2EyiWVfpgd/Wlt8F8fDxwb9JncqA91nlLu1Z7yib1fWuEw8tIPp+zQ2kptFdGWj/JA==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-module-imports": "~7.10.4",
+ "@lwc/errors": "1.9.3-230.1",
+ "line-column": "~1.0.2"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7"
+ }
+ },
+ "node_modules/@lwc/babel-plugin-component/node_modules/@babel/helper-module-imports": {
+ "version": "7.10.4",
+ "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.10.4.tgz",
+ "integrity": "sha512-nEQJHqYavI217oD9+s5MUBzk6x1IlvoS9WTPfgG43CbMEeStE0v+r+TucWdx8KFGowPGvyOkDT9+7DHedIDnVw==",
+ "dev": true,
+ "dependencies": {
+ "@babel/types": "^7.10.4"
+ }
+ },
+ "node_modules/@lwc/compiler": {
+ "version": "1.9.3-230.1",
+ "resolved": "https://registry.npmjs.org/@lwc/compiler/-/compiler-1.9.3-230.1.tgz",
+ "integrity": "sha512-hRWGj8x/B6KoY5ffPUsEeebnQdItnU9uR77pJtp4seFAgujcvtbGZu19IH/b7XU54W3RlhwMecMQCJ1JddXOxw==",
+ "dev": true,
+ "dependencies": {
+ "@babel/core": "~7.11.6",
+ "@babel/plugin-proposal-class-properties": "~7.10.4",
+ "@babel/plugin-proposal-object-rest-spread": "~7.11.0",
+ "@lwc/babel-plugin-component": "1.9.3-230.1",
+ "@lwc/errors": "1.9.3-230.1",
+ "@lwc/shared": "1.9.3-230.1",
+ "@lwc/style-compiler": "1.9.3-230.1",
+ "@lwc/template-compiler": "1.9.3-230.1",
+ "@rollup/plugin-replace": "~2.3.3",
+ "babel-preset-compat": "~0.22.1",
+ "rollup": "~2.28.1",
+ "terser": "~5.3.8"
+ }
+ },
+ "node_modules/@lwc/compiler/node_modules/@babel/core": {
+ "version": "7.11.6",
+ "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.11.6.tgz",
+ "integrity": "sha512-Wpcv03AGnmkgm6uS6k8iwhIwTrcP0m17TL1n1sy7qD0qelDu4XNeW0dN0mHfa+Gei211yDaLoEe/VlbXQzM4Bg==",
+ "dev": true,
+ "dependencies": {
+ "@babel/code-frame": "^7.10.4",
+ "@babel/generator": "^7.11.6",
+ "@babel/helper-module-transforms": "^7.11.0",
+ "@babel/helpers": "^7.10.4",
+ "@babel/parser": "^7.11.5",
+ "@babel/template": "^7.10.4",
+ "@babel/traverse": "^7.11.5",
+ "@babel/types": "^7.11.5",
+ "convert-source-map": "^1.7.0",
+ "debug": "^4.1.0",
+ "gensync": "^1.0.0-beta.1",
+ "json5": "^2.1.2",
+ "lodash": "^4.17.19",
+ "resolve": "^1.3.2",
+ "semver": "^5.4.1",
+ "source-map": "^0.5.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/babel"
+ }
+ },
+ "node_modules/@lwc/compiler/node_modules/semver": {
+ "version": "5.7.1",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
+ "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
+ "dev": true,
+ "bin": {
+ "semver": "bin/semver"
+ }
+ },
+ "node_modules/@lwc/engine": {
+ "version": "1.9.3-230.1",
+ "resolved": "https://registry.npmjs.org/@lwc/engine/-/engine-1.9.3-230.1.tgz",
+ "integrity": "sha512-ZQV7QdXvm7qfKYhbVp2+uxQIoCuetaityNVYMyHM3ujkYjGy8my9XFvrISuLhbTewRyqn98mjfrZS/amCzgrYw==",
+ "dev": true
+ },
+ "node_modules/@lwc/errors": {
+ "version": "1.9.3-230.1",
+ "resolved": "https://registry.npmjs.org/@lwc/errors/-/errors-1.9.3-230.1.tgz",
+ "integrity": "sha512-kwfMqcz8pZmf0L7UyTyJrO6pv+eBZxHms6J61xkKj5EQ8VbnpedwwmdrS+9GOgDSMRchiQ81VEKvY56MeDGC3w==",
+ "dev": true
+ },
+ "node_modules/@lwc/eslint-plugin-lwc": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/@lwc/eslint-plugin-lwc/-/eslint-plugin-lwc-1.0.1.tgz",
+ "integrity": "sha512-BtVlcIc+Fc/G61lM0jixFSr5XNY4w4YjWigSlNHA1+wBEe0VZ/ByJpUZnePrLfHM4lYCl9qOs8t/6c8ZqK1ghA==",
+ "dev": true,
+ "dependencies": {
+ "minimatch": "^3.0.4"
+ },
+ "engines": {
+ "node": ">=10.0.0"
+ },
+ "peerDependencies": {
+ "@babel/eslint-parser": "^7",
+ "eslint": "^7"
+ }
+ },
+ "node_modules/@lwc/jest-preset": {
+ "version": "9.0.0-230.0",
+ "resolved": "https://registry.npmjs.org/@lwc/jest-preset/-/jest-preset-9.0.0-230.0.tgz",
+ "integrity": "sha512-uNnBSK0m+hS9XU+5wpcGffaidkUAl9yWjLqG1bs+cB7Jl/V6CTD9/RbEjDNO9+4vqDS4mAzL3DqRbgR9FR0+uw==",
+ "dev": true,
+ "dependencies": {
+ "@lwc/jest-resolver": "9.0.0-230.0",
+ "@lwc/jest-serializer": "9.0.0-230.0",
+ "@lwc/jest-transformer": "9.0.0-230.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "peerDependencies": {
+ "@lwc/compiler": "*",
+ "@lwc/synthetic-shadow": "*",
+ "jest": ">=25.5.4"
+ }
+ },
+ "node_modules/@lwc/jest-resolver": {
+ "version": "9.0.0-230.0",
+ "resolved": "https://registry.npmjs.org/@lwc/jest-resolver/-/jest-resolver-9.0.0-230.0.tgz",
+ "integrity": "sha512-uq2o/hNLNVnzQ1eAUNRb2Rr+8EOEZaljl0o5tq9YLvz0U6pEyp0rAekeL1kSo7mjuacOPdRSHcBUFZ/KbdpGdQ==",
+ "dev": true,
+ "dependencies": {
+ "jest-resolve": "~25.5.1"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "peerDependencies": {
+ "jest": ">=25.5.4"
+ }
+ },
+ "node_modules/@lwc/jest-serializer": {
+ "version": "9.0.0-230.0",
+ "resolved": "https://registry.npmjs.org/@lwc/jest-serializer/-/jest-serializer-9.0.0-230.0.tgz",
+ "integrity": "sha512-3iVTQrBbfHL8VPDMYcoGLjGeFnjclxs/xax9jDWUcfoaGqN6F5A+0RGdq41eb290bjkUeRvfNikgt9mrOJrSTQ==",
+ "dev": true,
+ "dependencies": {
+ "pretty-format": "~25.4.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "peerDependencies": {
+ "jest": ">=25.5.4"
+ }
+ },
+ "node_modules/@lwc/jest-transformer": {
+ "version": "9.0.0-230.0",
+ "resolved": "https://registry.npmjs.org/@lwc/jest-transformer/-/jest-transformer-9.0.0-230.0.tgz",
+ "integrity": "sha512-ShS8hym4UWtXuCiikR6BGyjPK2AkXp55qiQvuSGXHFTRMbXhs7AbSD3OJgUmGv0DAI59avPfmC+9kM4zLUi8rw==",
+ "dev": true,
+ "dependencies": {
+ "@babel/core": "7.9.0",
+ "@babel/plugin-syntax-class-properties": "7.8.3",
+ "@babel/plugin-syntax-decorators": "7.8.3",
+ "@babel/plugin-transform-modules-commonjs": "7.9.0",
+ "@babel/preset-typescript": "7.9.0",
+ "@babel/template": "~7.8.6",
+ "babel-plugin-transform-dynamic-import": "~2.1.0",
+ "babel-preset-jest": "~25.5.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "peerDependencies": {
+ "@lwc/compiler": "*",
+ "jest": ">=25.5.4"
+ }
+ },
+ "node_modules/@lwc/jest-transformer/node_modules/@babel/core": {
+ "version": "7.9.0",
+ "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.9.0.tgz",
+ "integrity": "sha512-kWc7L0fw1xwvI0zi8OKVBuxRVefwGOrKSQMvrQ3dW+bIIavBY3/NpXmpjMy7bQnLgwgzWQZ8TlM57YHpHNHz4w==",
+ "dev": true,
+ "dependencies": {
+ "@babel/code-frame": "^7.8.3",
+ "@babel/generator": "^7.9.0",
+ "@babel/helper-module-transforms": "^7.9.0",
+ "@babel/helpers": "^7.9.0",
+ "@babel/parser": "^7.9.0",
+ "@babel/template": "^7.8.6",
+ "@babel/traverse": "^7.9.0",
+ "@babel/types": "^7.9.0",
+ "convert-source-map": "^1.7.0",
+ "debug": "^4.1.0",
+ "gensync": "^1.0.0-beta.1",
+ "json5": "^2.1.2",
+ "lodash": "^4.17.13",
+ "resolve": "^1.3.2",
+ "semver": "^5.4.1",
+ "source-map": "^0.5.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/babel"
+ }
+ },
+ "node_modules/@lwc/jest-transformer/node_modules/@babel/template": {
+ "version": "7.8.6",
+ "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.8.6.tgz",
+ "integrity": "sha512-zbMsPMy/v0PWFZEhQJ66bqjhH+z0JgMoBWuikXybgG3Gkd/3t5oQ1Rw2WQhnSrsOmsKXnZOx15tkC4qON/+JPg==",
+ "dev": true,
+ "dependencies": {
+ "@babel/code-frame": "^7.8.3",
+ "@babel/parser": "^7.8.6",
+ "@babel/types": "^7.8.6"
+ }
+ },
+ "node_modules/@lwc/jest-transformer/node_modules/semver": {
+ "version": "5.7.1",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
+ "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
+ "dev": true,
+ "bin": {
+ "semver": "bin/semver"
+ }
+ },
+ "node_modules/@lwc/module-resolver": {
+ "version": "1.9.3-230.1",
+ "resolved": "https://registry.npmjs.org/@lwc/module-resolver/-/module-resolver-1.9.3-230.1.tgz",
+ "integrity": "sha512-2rSl45K3wcGxqQBneE1Pd8Kh8CXOgNaTVdAH1WFSYDoCt0fzyiALFMBgPTPBtsJZEiDSLcabNGI7hVCG8W570g==",
+ "dev": true,
+ "dependencies": {
+ "resolve": "~1.17.0"
+ }
+ },
+ "node_modules/@lwc/shared": {
+ "version": "1.9.3-230.1",
+ "resolved": "https://registry.npmjs.org/@lwc/shared/-/shared-1.9.3-230.1.tgz",
+ "integrity": "sha512-iNX5/gWgu3sFr1OjL0NJOC7fwr8G/Xn8wuBF+YSJvtQKGVZpZ1v0ZcDRsrMz2e36X5lvInIfgo7jCF683+hm/Q==",
+ "dev": true
+ },
+ "node_modules/@lwc/style-compiler": {
+ "version": "1.9.3-230.1",
+ "resolved": "https://registry.npmjs.org/@lwc/style-compiler/-/style-compiler-1.9.3-230.1.tgz",
+ "integrity": "sha512-bWs1lS2GwbY7BZh33JJX010a3hAZId2xvnA2cEQIHbl+g76k3G1WkvZ6E3g3BQDyzDvk/433m8YQvwMD/Z6+bg==",
+ "dev": true,
+ "dependencies": {
+ "cssnano-preset-default": "~4.0.7",
+ "postcss": "~8.0.9",
+ "postcss-selector-parser": "~6.0.2",
+ "postcss-value-parser": "~4.1.0"
+ }
+ },
+ "node_modules/@lwc/synthetic-shadow": {
+ "version": "1.9.3-230.1",
+ "resolved": "https://registry.npmjs.org/@lwc/synthetic-shadow/-/synthetic-shadow-1.9.3-230.1.tgz",
+ "integrity": "sha512-0/cSDYuXNO8Od30fjvnhHEM93DfSIXmM7fRtZhLip8W6+wKmbsK3HPY2ygpuvUlz5jYj0FVh9kXH5fdZChi0KA==",
+ "dev": true
+ },
+ "node_modules/@lwc/template-compiler": {
+ "version": "1.9.3-230.1",
+ "resolved": "https://registry.npmjs.org/@lwc/template-compiler/-/template-compiler-1.9.3-230.1.tgz",
+ "integrity": "sha512-L40kUYyrLfxphZsF0ChZPAxxZCcClVRAIpp2O0Kk8hs6w8rT2XA1mIERQZHBbS/YAlcqeoatdrhybHuthc0hrg==",
+ "dev": true,
+ "dependencies": {
+ "@babel/generator": "~7.11.6",
+ "@babel/parser": "~7.11.5",
+ "@babel/template": "~7.10.4",
+ "@babel/traverse": "~7.11.5",
+ "@babel/types": "~7.11.5",
+ "@lwc/errors": "1.9.3-230.1",
+ "@lwc/shared": "1.9.3-230.1",
+ "acorn": "~8.0.1",
+ "esutils": "~2.0.3",
+ "he": "~1.2.0",
+ "parse5-with-errors": "~4.0.4"
+ }
+ },
+ "node_modules/@lwc/template-compiler/node_modules/@babel/generator": {
+ "version": "7.11.6",
+ "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.11.6.tgz",
+ "integrity": "sha512-DWtQ1PV3r+cLbySoHrwn9RWEgKMBLLma4OBQloPRyDYvc5msJM9kvTLo1YnlJd1P/ZuKbdli3ijr5q3FvAF3uA==",
+ "dev": true,
+ "dependencies": {
+ "@babel/types": "^7.11.5",
+ "jsesc": "^2.5.1",
+ "source-map": "^0.5.0"
+ }
+ },
+ "node_modules/@lwc/template-compiler/node_modules/@babel/parser": {
+ "version": "7.11.5",
+ "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.11.5.tgz",
+ "integrity": "sha512-X9rD8qqm695vgmeaQ4fvz/o3+Wk4ZzQvSHkDBgpYKxpD4qTAUm88ZKtHkVqIOsYFFbIQ6wQYhC6q7pjqVK0E0Q==",
+ "dev": true,
+ "bin": {
+ "parser": "bin/babel-parser.js"
+ },
+ "engines": {
+ "node": ">=6.0.0"
+ }
+ },
+ "node_modules/@lwc/template-compiler/node_modules/@babel/template": {
+ "version": "7.10.4",
+ "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.10.4.tgz",
+ "integrity": "sha512-ZCjD27cGJFUB6nmCB1Enki3r+L5kJveX9pq1SvAUKoICy6CZ9yD8xO086YXdYhvNjBdnekm4ZnaP5yC8Cs/1tA==",
+ "dev": true,
+ "dependencies": {
+ "@babel/code-frame": "^7.10.4",
+ "@babel/parser": "^7.10.4",
+ "@babel/types": "^7.10.4"
+ }
+ },
+ "node_modules/@lwc/template-compiler/node_modules/@babel/traverse": {
+ "version": "7.11.5",
+ "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.11.5.tgz",
+ "integrity": "sha512-EjiPXt+r7LiCZXEfRpSJd+jUMnBd4/9OUv7Nx3+0u9+eimMwJmG0Q98lw4/289JCoxSE8OolDMNZaaF/JZ69WQ==",
+ "dev": true,
+ "dependencies": {
+ "@babel/code-frame": "^7.10.4",
+ "@babel/generator": "^7.11.5",
+ "@babel/helper-function-name": "^7.10.4",
+ "@babel/helper-split-export-declaration": "^7.11.0",
+ "@babel/parser": "^7.11.5",
+ "@babel/types": "^7.11.5",
+ "debug": "^4.1.0",
+ "globals": "^11.1.0",
+ "lodash": "^4.17.19"
+ }
+ },
+ "node_modules/@lwc/template-compiler/node_modules/@babel/types": {
+ "version": "7.11.5",
+ "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.11.5.tgz",
+ "integrity": "sha512-bvM7Qz6eKnJVFIn+1LPtjlBFPVN5jNDc1XmN15vWe7Q3DPBufWWsLiIvUu7xW87uTG6QoggpIDnUgLQvPheU+Q==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-validator-identifier": "^7.10.4",
+ "lodash": "^4.17.19",
+ "to-fast-properties": "^2.0.0"
+ }
+ },
+ "node_modules/@lwc/wire-service": {
+ "version": "1.9.3-230.1",
+ "resolved": "https://registry.npmjs.org/@lwc/wire-service/-/wire-service-1.9.3-230.1.tgz",
+ "integrity": "sha512-qnxyg9olsjdXmvqquKRQbWpYGGH51bmZNYKFAQjTNCZzEuWW8i7Bs44ZMdQagLbrgOI+CE6IldJbfwpu2fWHEA==",
+ "dev": true
+ },
+ "node_modules/@mdn/browser-compat-data": {
+ "version": "5.2.45",
+ "resolved": "https://registry.npmjs.org/@mdn/browser-compat-data/-/browser-compat-data-5.2.45.tgz",
+ "integrity": "sha512-Er03EjYAx3TTMvdBdm6Z3SG4IV0/FWfRJP4CBNtRLWoPVVyp9BdYt/9X4zSFw4GAIOVx6+6r7d8VAw0sbPtMjg==",
+ "dev": true
+ },
+ "node_modules/@nodelib/fs.scandir": {
+ "version": "2.1.5",
+ "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
+ "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==",
+ "dev": true,
+ "dependencies": {
+ "@nodelib/fs.stat": "2.0.5",
+ "run-parallel": "^1.1.9"
+ },
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/@nodelib/fs.stat": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz",
+ "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==",
+ "dev": true,
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/@nodelib/fs.walk": {
+ "version": "1.2.8",
+ "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz",
+ "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==",
+ "dev": true,
+ "dependencies": {
+ "@nodelib/fs.scandir": "2.1.5",
+ "fastq": "^1.6.0"
+ },
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/@prettier/plugin-xml": {
+ "version": "0.12.0",
+ "resolved": "https://registry.npmjs.org/@prettier/plugin-xml/-/plugin-xml-0.12.0.tgz",
+ "integrity": "sha512-196oXlmim2SiqeG1jQO5aS/nChI85DvyfIQTBkOiVHHev2j15x4TVxOMGAWHkqdlD8pmCg/KmX8SfFIyT2L7tA==",
+ "dev": true,
+ "dependencies": {
+ "@xml-tools/parser": "^1.0.2",
+ "prettier": ">=1.10"
+ }
+ },
+ "node_modules/@rollup/plugin-replace": {
+ "version": "2.3.4",
+ "resolved": "https://registry.npmjs.org/@rollup/plugin-replace/-/plugin-replace-2.3.4.tgz",
+ "integrity": "sha512-waBhMzyAtjCL1GwZes2jaE9MjuQ/DQF2BatH3fRivUF3z0JBFrU0U6iBNC/4WR+2rLKhaAhPWDNPYp4mI6RqdQ==",
+ "dev": true,
+ "dependencies": {
+ "@rollup/pluginutils": "^3.1.0",
+ "magic-string": "^0.25.7"
+ },
+ "peerDependencies": {
+ "rollup": "^1.20.0 || ^2.0.0"
+ }
+ },
+ "node_modules/@rollup/pluginutils": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-3.1.0.tgz",
+ "integrity": "sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==",
+ "dev": true,
+ "dependencies": {
+ "@types/estree": "0.0.39",
+ "estree-walker": "^1.0.1",
+ "picomatch": "^2.2.2"
+ },
+ "engines": {
+ "node": ">= 8.0.0"
+ },
+ "peerDependencies": {
+ "rollup": "^1.20.0||^2.0.0"
+ }
+ },
+ "node_modules/@salesforce/eslint-config-lwc": {
+ "version": "0.11.1",
+ "resolved": "https://registry.npmjs.org/@salesforce/eslint-config-lwc/-/eslint-config-lwc-0.11.1.tgz",
+ "integrity": "sha512-HwZWz62FiZ0dF7SFltBvidQOsjCi8SaRItiIWAUd0cHO+x3Ao68e4NYR2DSOGZJ6Ct8qIKkVpXY8I9WOR0FQzQ==",
+ "dev": true,
+ "dependencies": {
+ "@babel/core": "~7.13.14",
+ "@babel/eslint-parser": "~7.13.14",
+ "@lwc/eslint-plugin-lwc": "~1.0.0",
+ "eslint-plugin-import": "~2.22.1",
+ "eslint-plugin-jest": "~23.8.2",
+ "eslint-restricted-globals": "~0.2.0"
+ },
+ "engines": {
+ "node": ">=10.0.0"
+ },
+ "peerDependencies": {
+ "eslint": "^6 || ^7"
+ }
+ },
+ "node_modules/@salesforce/eslint-plugin-aura": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/@salesforce/eslint-plugin-aura/-/eslint-plugin-aura-2.1.0.tgz",
+ "integrity": "sha512-7HfwSBKTHQZQboLoEhkBY7bYR9wTaT+G5jHXGlq8y31hEnNhJXRZ+RERDEwDm1jYa2SV9lE8nMNr0/8EKIGjlQ==",
+ "dev": true,
+ "dependencies": {
+ "eslint-plugin-compat": "^4.0.2"
+ },
+ "engines": {
+ "node": ">=12.0.0"
+ },
+ "peerDependencies": {
+ "eslint": "^7 || ^8"
+ }
+ },
+ "node_modules/@salesforce/sfdx-lwc-jest": {
+ "version": "0.10.4",
+ "resolved": "https://registry.npmjs.org/@salesforce/sfdx-lwc-jest/-/sfdx-lwc-jest-0.10.4.tgz",
+ "integrity": "sha512-jvPylJ3wkXaDmTMYGJpIbf6R5O1Ow9k8Ft621mzBUZxfTtEc+TA+a6IXlKxm/HIRV0GJSUbSb5Wm7hWvwVhzHg==",
+ "dev": true,
+ "dependencies": {
+ "@lwc/compiler": "1.9.3-230.1",
+ "@lwc/engine": "1.9.3-230.1",
+ "@lwc/jest-preset": "9.0.0-230.0",
+ "@lwc/jest-resolver": "9.0.0-230.0",
+ "@lwc/jest-serializer": "9.0.0-230.0",
+ "@lwc/jest-transformer": "9.0.0-230.0",
+ "@lwc/module-resolver": "1.9.3-230.1",
+ "@lwc/synthetic-shadow": "1.9.3-230.1",
+ "@lwc/wire-service": "1.9.3-230.1",
+ "@salesforce/wire-service-jest-util": "~2.4.2",
+ "chalk": "~4.0.0",
+ "fast-glob": "^3.2.4",
+ "jest": "25.5.4",
+ "yargs": "~15.3.1"
+ },
+ "bin": {
+ "lwc-jest": "bin/sfdx-lwc-jest",
+ "sfdx-lwc-jest": "bin/sfdx-lwc-jest"
+ }
+ },
+ "node_modules/@salesforce/sfdx-lwc-jest/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/@salesforce/sfdx-lwc-jest/node_modules/chalk": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.0.0.tgz",
+ "integrity": "sha512-N9oWFcegS0sFr9oh1oz2d7Npos6vNoWW9HvtCg5N1KRFpUhaAhvTv5Y58g880fZaEYSNm3qDz8SU1UrGvp+n7A==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/chalk?sponsor=1"
+ }
+ },
+ "node_modules/@salesforce/sfdx-lwc-jest/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/@salesforce/sfdx-lwc-jest/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/@salesforce/sfdx-lwc-jest/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/@salesforce/sfdx-lwc-jest/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/@salesforce/wire-service-jest-util": {
+ "version": "2.4.2",
+ "resolved": "https://registry.npmjs.org/@salesforce/wire-service-jest-util/-/wire-service-jest-util-2.4.2.tgz",
+ "integrity": "sha512-yYf1AUhvxhEP9fJLrakogkdbNtrBiRprED+N6Vd3oGydDZrShdPwmYgqLKkzFR0HUw00LiSWaUO19yS1z6n0HA==",
+ "dev": true
+ },
+ "node_modules/@sideway/address": {
+ "version": "4.1.4",
+ "resolved": "https://registry.npmjs.org/@sideway/address/-/address-4.1.4.tgz",
+ "integrity": "sha512-7vwq+rOHVWjyXxVlR76Agnvhy8I9rpzjosTESvmhNeXOXdZZB15Fl+TI9x1SiHZH5Jv2wTGduSxFDIaq0m3DUw==",
+ "dev": true,
+ "dependencies": {
+ "@hapi/hoek": "^9.0.0"
+ }
+ },
+ "node_modules/@sideway/formula": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/@sideway/formula/-/formula-3.0.1.tgz",
+ "integrity": "sha512-/poHZJJVjx3L+zVD6g9KgHfYnb443oi7wLu/XKojDviHy6HOEOA6z1Trk5aR1dGcmPenJEgb2sK2I80LeS3MIg==",
+ "dev": true
+ },
+ "node_modules/@sideway/pinpoint": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/@sideway/pinpoint/-/pinpoint-2.0.0.tgz",
+ "integrity": "sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ==",
+ "dev": true
+ },
+ "node_modules/@sinonjs/commons": {
+ "version": "1.8.6",
+ "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.6.tgz",
+ "integrity": "sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ==",
+ "dev": true,
+ "dependencies": {
+ "type-detect": "4.0.8"
+ }
+ },
+ "node_modules/@types/babel__core": {
+ "version": "7.20.0",
+ "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.0.tgz",
+ "integrity": "sha512-+n8dL/9GWblDO0iU6eZAwEIJVr5DWigtle+Q6HLOrh/pdbXOhOtqzq8VPPE2zvNJzSKY4vH/z3iT3tn0A3ypiQ==",
+ "dev": true,
+ "dependencies": {
+ "@babel/parser": "^7.20.7",
+ "@babel/types": "^7.20.7",
+ "@types/babel__generator": "*",
+ "@types/babel__template": "*",
+ "@types/babel__traverse": "*"
+ }
+ },
+ "node_modules/@types/babel__generator": {
+ "version": "7.6.4",
+ "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.4.tgz",
+ "integrity": "sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==",
+ "dev": true,
+ "dependencies": {
+ "@babel/types": "^7.0.0"
+ }
+ },
+ "node_modules/@types/babel__template": {
+ "version": "7.4.1",
+ "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.1.tgz",
+ "integrity": "sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==",
+ "dev": true,
+ "dependencies": {
+ "@babel/parser": "^7.1.0",
+ "@babel/types": "^7.0.0"
+ }
+ },
+ "node_modules/@types/babel__traverse": {
+ "version": "7.18.3",
+ "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.18.3.tgz",
+ "integrity": "sha512-1kbcJ40lLB7MHsj39U4Sh1uTd2E7rLEa79kmDpI6cy+XiXsteB3POdQomoq4FxszMrO3ZYchkhYJw7A2862b3w==",
+ "dev": true,
+ "dependencies": {
+ "@babel/types": "^7.3.0"
+ }
+ },
+ "node_modules/@types/estree": {
+ "version": "0.0.39",
+ "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.39.tgz",
+ "integrity": "sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==",
+ "dev": true
+ },
+ "node_modules/@types/graceful-fs": {
+ "version": "4.1.6",
+ "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.6.tgz",
+ "integrity": "sha512-Sig0SNORX9fdW+bQuTEovKj3uHcUL6LQKbCrrqb1X7J6/ReAbhCXRAhc+SMejhLELFj2QcyuxmUooZ4bt5ReSw==",
+ "dev": true,
+ "dependencies": {
+ "@types/node": "*"
+ }
+ },
+ "node_modules/@types/istanbul-lib-coverage": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz",
+ "integrity": "sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==",
+ "dev": true
+ },
+ "node_modules/@types/istanbul-lib-report": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz",
+ "integrity": "sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==",
+ "dev": true,
+ "dependencies": {
+ "@types/istanbul-lib-coverage": "*"
+ }
+ },
+ "node_modules/@types/istanbul-reports": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-1.1.2.tgz",
+ "integrity": "sha512-P/W9yOX/3oPZSpaYOCQzGqgCQRXn0FFO/V8bWrCQs+wLmvVVxk6CRBXALEvNs9OHIatlnlFokfhuDo2ug01ciw==",
+ "dev": true,
+ "dependencies": {
+ "@types/istanbul-lib-coverage": "*",
+ "@types/istanbul-lib-report": "*"
+ }
+ },
+ "node_modules/@types/json-schema": {
+ "version": "7.0.11",
+ "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz",
+ "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==",
+ "dev": true
+ },
+ "node_modules/@types/json5": {
+ "version": "0.0.29",
+ "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz",
+ "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==",
+ "dev": true
+ },
+ "node_modules/@types/node": {
+ "version": "18.15.10",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.15.10.tgz",
+ "integrity": "sha512-9avDaQJczATcXgfmMAW3MIWArOO7A+m90vuCFLr8AotWf8igO/mRoYukrk2cqZVtv38tHs33retzHEilM7FpeQ==",
+ "dev": true
+ },
+ "node_modules/@types/normalize-package-data": {
+ "version": "2.4.1",
+ "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz",
+ "integrity": "sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==",
+ "dev": true
+ },
+ "node_modules/@types/parse-json": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz",
+ "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==",
+ "dev": true
+ },
+ "node_modules/@types/prettier": {
+ "version": "1.19.1",
+ "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-1.19.1.tgz",
+ "integrity": "sha512-5qOlnZscTn4xxM5MeGXAMOsIOIKIbh9e85zJWfBRVPlRMEVawzoPhINYbRGkBZCI8LxvBe7tJCdWiarA99OZfQ==",
+ "dev": true
+ },
+ "node_modules/@types/q": {
+ "version": "1.5.5",
+ "resolved": "https://registry.npmjs.org/@types/q/-/q-1.5.5.tgz",
+ "integrity": "sha512-L28j2FcJfSZOnL1WBjDYp2vUHCeIFlyYI/53EwD/rKUBQ7MtUUfbQWiyKJGpcnv4/WgrhWsFKrcPstcAt/J0tQ==",
+ "dev": true
+ },
+ "node_modules/@types/stack-utils": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-1.0.1.tgz",
+ "integrity": "sha512-l42BggppR6zLmpfU6fq9HEa2oGPEI8yrSPL3GITjfRInppYFahObbIQOQK3UGxEnyQpltZLaPe75046NOZQikw==",
+ "dev": true
+ },
+ "node_modules/@types/yargs": {
+ "version": "15.0.15",
+ "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.15.tgz",
+ "integrity": "sha512-IziEYMU9XoVj8hWg7k+UJrXALkGFjWJhn5QFEv9q4p+v40oZhSuC135M38st8XPjICL7Ey4TV64ferBGUoJhBg==",
+ "dev": true,
+ "dependencies": {
+ "@types/yargs-parser": "*"
+ }
+ },
+ "node_modules/@types/yargs-parser": {
+ "version": "21.0.0",
+ "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz",
+ "integrity": "sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==",
+ "dev": true
+ },
+ "node_modules/@typescript-eslint/experimental-utils": {
+ "version": "2.34.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-2.34.0.tgz",
+ "integrity": "sha512-eS6FTkq+wuMJ+sgtuNTtcqavWXqsflWcfBnlYhg/nS4aZ1leewkXGbvBhaapn1q6qf4M71bsR1tez5JTRMuqwA==",
+ "dev": true,
+ "dependencies": {
+ "@types/json-schema": "^7.0.3",
+ "@typescript-eslint/typescript-estree": "2.34.0",
+ "eslint-scope": "^5.0.0",
+ "eslint-utils": "^2.0.0"
+ },
+ "engines": {
+ "node": "^8.10.0 || ^10.13.0 || >=11.10.1"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/typescript-eslint"
+ },
+ "peerDependencies": {
+ "eslint": "*"
+ }
+ },
+ "node_modules/@typescript-eslint/typescript-estree": {
+ "version": "2.34.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-2.34.0.tgz",
+ "integrity": "sha512-OMAr+nJWKdlVM9LOqCqh3pQQPwxHAN7Du8DR6dmwCrAmxtiXQnhHJ6tBNtf+cggqfo51SG/FCwnKhXCIM7hnVg==",
+ "dev": true,
+ "dependencies": {
+ "debug": "^4.1.1",
+ "eslint-visitor-keys": "^1.1.0",
+ "glob": "^7.1.6",
+ "is-glob": "^4.0.1",
+ "lodash": "^4.17.15",
+ "semver": "^7.3.2",
+ "tsutils": "^3.17.1"
+ },
+ "engines": {
+ "node": "^8.10.0 || ^10.13.0 || >=11.10.1"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/typescript-eslint"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@typescript-eslint/typescript-estree/node_modules/lru-cache": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
+ "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
+ "dev": true,
+ "dependencies": {
+ "yallist": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/@typescript-eslint/typescript-estree/node_modules/semver": {
+ "version": "7.3.8",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz",
+ "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==",
+ "dev": true,
+ "dependencies": {
+ "lru-cache": "^6.0.0"
+ },
+ "bin": {
+ "semver": "bin/semver.js"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/@typescript-eslint/typescript-estree/node_modules/yallist": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
+ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
+ "dev": true
+ },
+ "node_modules/@xml-tools/parser": {
+ "version": "1.0.11",
+ "resolved": "https://registry.npmjs.org/@xml-tools/parser/-/parser-1.0.11.tgz",
+ "integrity": "sha512-aKqQ077XnR+oQtHJlrAflaZaL7qZsulWc/i/ZEooar5JiWj1eLt0+Wg28cpa+XLney107wXqneC+oG1IZvxkTA==",
+ "dev": true,
+ "dependencies": {
+ "chevrotain": "7.1.1"
+ }
+ },
+ "node_modules/abab": {
+ "version": "2.0.6",
+ "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz",
+ "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==",
+ "dev": true
+ },
+ "node_modules/acorn": {
+ "version": "8.0.5",
+ "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.0.5.tgz",
+ "integrity": "sha512-v+DieK/HJkJOpFBETDJioequtc3PfxsWMaxIdIwujtF7FEV/MAyDQLlm6/zPvr7Mix07mLh6ccVwIsloceodlg==",
+ "dev": true,
+ "bin": {
+ "acorn": "bin/acorn"
+ },
+ "engines": {
+ "node": ">=0.4.0"
+ }
+ },
+ "node_modules/acorn-globals": {
+ "version": "4.3.4",
+ "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-4.3.4.tgz",
+ "integrity": "sha512-clfQEh21R+D0leSbUdWf3OcfqyaCSAQ8Ryq00bofSekfr9W8u1jyYZo6ir0xu9Gtcf7BjcHJpnbZH7JOCpP60A==",
+ "dev": true,
+ "dependencies": {
+ "acorn": "^6.0.1",
+ "acorn-walk": "^6.0.1"
+ }
+ },
+ "node_modules/acorn-globals/node_modules/acorn": {
+ "version": "6.4.2",
+ "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.2.tgz",
+ "integrity": "sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ==",
+ "dev": true,
+ "bin": {
+ "acorn": "bin/acorn"
+ },
+ "engines": {
+ "node": ">=0.4.0"
+ }
+ },
+ "node_modules/acorn-jsx": {
+ "version": "5.3.2",
+ "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz",
+ "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==",
+ "dev": true,
+ "peerDependencies": {
+ "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0"
+ }
+ },
+ "node_modules/acorn-walk": {
+ "version": "6.2.0",
+ "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-6.2.0.tgz",
+ "integrity": "sha512-7evsyfH1cLOCdAzZAd43Cic04yKydNx0cF+7tiA19p1XnLLPU4dpCQOqpjqwokFe//vS0QqfqqjCS2JkiIs0cA==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.4.0"
+ }
+ },
+ "node_modules/aggregate-error": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz",
+ "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==",
+ "dev": true,
+ "dependencies": {
+ "clean-stack": "^2.0.0",
+ "indent-string": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/ajv": {
+ "version": "6.12.6",
+ "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
+ "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==",
+ "dev": true,
+ "dependencies": {
+ "fast-deep-equal": "^3.1.1",
+ "fast-json-stable-stringify": "^2.0.0",
+ "json-schema-traverse": "^0.4.1",
+ "uri-js": "^4.2.2"
+ },
+ "funding": {
+ "type": "github",
+ "url": "https://github.com/sponsors/epoberezkin"
+ }
+ },
+ "node_modules/alphanum-sort": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/alphanum-sort/-/alphanum-sort-1.0.2.tgz",
+ "integrity": "sha512-0FcBfdcmaumGPQ0qPn7Q5qTgz/ooXgIyp1rf8ik5bGX8mpE2YHjC0P/eyQvxu1GURYQgq9ozf2mteQ5ZD9YiyQ==",
+ "dev": true
+ },
+ "node_modules/ansi-colors": {
+ "version": "4.1.3",
+ "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz",
+ "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==",
+ "dev": true,
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/ansi-escapes": {
+ "version": "4.3.2",
+ "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz",
+ "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==",
+ "dev": true,
+ "dependencies": {
+ "type-fest": "^0.21.3"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/ansi-regex": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
+ "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/ansi-styles": {
+ "version": "3.2.1",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
+ "dev": true,
+ "dependencies": {
+ "color-convert": "^1.9.0"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/anymatch": {
+ "version": "3.1.3",
+ "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz",
+ "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==",
+ "dev": true,
+ "dependencies": {
+ "normalize-path": "^3.0.0",
+ "picomatch": "^2.0.4"
+ },
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/argparse": {
+ "version": "1.0.10",
+ "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
+ "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
+ "dev": true,
+ "dependencies": {
+ "sprintf-js": "~1.0.2"
+ }
+ },
+ "node_modules/arr-diff": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz",
+ "integrity": "sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/arr-flatten": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz",
+ "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/arr-union": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz",
+ "integrity": "sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/array-buffer-byte-length": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.0.tgz",
+ "integrity": "sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==",
+ "dev": true,
+ "dependencies": {
+ "call-bind": "^1.0.2",
+ "is-array-buffer": "^3.0.1"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/array-equal": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/array-equal/-/array-equal-1.0.0.tgz",
+ "integrity": "sha512-H3LU5RLiSsGXPhN+Nipar0iR0IofH+8r89G2y1tBKxQ/agagKyAjhkAFDRBfodP2caPrNKHpAWNIM/c9yeL7uA==",
+ "dev": true
+ },
+ "node_modules/array-includes": {
+ "version": "3.1.6",
+ "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.6.tgz",
+ "integrity": "sha512-sgTbLvL6cNnw24FnbaDyjmvddQ2ML8arZsgaJhoABMoplz/4QRhtrYS+alr1BUM1Bwp6dhx8vVCBSLG+StwOFw==",
+ "dev": true,
+ "dependencies": {
+ "call-bind": "^1.0.2",
+ "define-properties": "^1.1.4",
+ "es-abstract": "^1.20.4",
+ "get-intrinsic": "^1.1.3",
+ "is-string": "^1.0.7"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/array-unique": {
+ "version": "0.3.2",
+ "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz",
+ "integrity": "sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/array.prototype.flat": {
+ "version": "1.3.1",
+ "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.1.tgz",
+ "integrity": "sha512-roTU0KWIOmJ4DRLmwKd19Otg0/mT3qPNt0Qb3GWW8iObuZXxrjB/pzn0R3hqpRSWg4HCwqx+0vwOnWnvlOyeIA==",
+ "dev": true,
+ "dependencies": {
+ "call-bind": "^1.0.2",
+ "define-properties": "^1.1.4",
+ "es-abstract": "^1.20.4",
+ "es-shim-unscopables": "^1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/array.prototype.reduce": {
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/array.prototype.reduce/-/array.prototype.reduce-1.0.5.tgz",
+ "integrity": "sha512-kDdugMl7id9COE8R7MHF5jWk7Dqt/fs4Pv+JXoICnYwqpjjjbUurz6w5fT5IG6brLdJhv6/VoHB0H7oyIBXd+Q==",
+ "dev": true,
+ "dependencies": {
+ "call-bind": "^1.0.2",
+ "define-properties": "^1.1.4",
+ "es-abstract": "^1.20.4",
+ "es-array-method-boxes-properly": "^1.0.0",
+ "is-string": "^1.0.7"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/asn1": {
+ "version": "0.2.6",
+ "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz",
+ "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==",
+ "dev": true,
+ "dependencies": {
+ "safer-buffer": "~2.1.0"
+ }
+ },
+ "node_modules/assert-plus": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
+ "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.8"
+ }
+ },
+ "node_modules/assign-symbols": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz",
+ "integrity": "sha512-Q+JC7Whu8HhmTdBph/Tq59IoRtoy6KAm5zzPv00WdujX82lbAL8K7WVjne7vdCsAmbF4AYaDOPyO3k0kl8qIrw==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/ast-metadata-inferer": {
+ "version": "0.7.0",
+ "resolved": "https://registry.npmjs.org/ast-metadata-inferer/-/ast-metadata-inferer-0.7.0.tgz",
+ "integrity": "sha512-OkMLzd8xelb3gmnp6ToFvvsHLtS6CbagTkFQvQ+ZYFe3/AIl9iKikNR9G7pY3GfOR/2Xc222hwBjzI7HLkE76Q==",
+ "dev": true,
+ "dependencies": {
+ "@mdn/browser-compat-data": "^3.3.14"
+ }
+ },
+ "node_modules/ast-metadata-inferer/node_modules/@mdn/browser-compat-data": {
+ "version": "3.3.14",
+ "resolved": "https://registry.npmjs.org/@mdn/browser-compat-data/-/browser-compat-data-3.3.14.tgz",
+ "integrity": "sha512-n2RC9d6XatVbWFdHLimzzUJxJ1KY8LdjqrW6YvGPiRmsHkhOUx74/Ct10x5Yo7bC/Jvqx7cDEW8IMPv/+vwEzA==",
+ "dev": true
+ },
+ "node_modules/astral-regex": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz",
+ "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/asynckit": {
+ "version": "0.4.0",
+ "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
+ "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==",
+ "dev": true
+ },
+ "node_modules/atob": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz",
+ "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==",
+ "dev": true,
+ "bin": {
+ "atob": "bin/atob.js"
+ },
+ "engines": {
+ "node": ">= 4.5.0"
+ }
+ },
+ "node_modules/available-typed-arrays": {
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz",
+ "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==",
+ "dev": true,
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/aws-sign2": {
+ "version": "0.7.0",
+ "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz",
+ "integrity": "sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA==",
+ "dev": true,
+ "engines": {
+ "node": "*"
+ }
+ },
+ "node_modules/aws4": {
+ "version": "1.12.0",
+ "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.12.0.tgz",
+ "integrity": "sha512-NmWvPnx0F1SfrQbYwOi7OeaNGokp9XhzNioJ/CSBs8Qa4vxug81mhJEAVZwxXuBmYB5KDRfMq/F3RR0BIU7sWg==",
+ "dev": true
+ },
+ "node_modules/axios": {
+ "version": "1.3.4",
+ "resolved": "https://registry.npmjs.org/axios/-/axios-1.3.4.tgz",
+ "integrity": "sha512-toYm+Bsyl6VC5wSkfkbbNB6ROv7KY93PEBBL6xyDczaIHasAiv4wPqQ/c4RjoQzipxRD2W5g21cOqQulZ7rHwQ==",
+ "dev": true,
+ "dependencies": {
+ "follow-redirects": "^1.15.0",
+ "form-data": "^4.0.0",
+ "proxy-from-env": "^1.1.0"
+ }
+ },
+ "node_modules/babel-jest": {
+ "version": "25.5.1",
+ "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-25.5.1.tgz",
+ "integrity": "sha512-9dA9+GmMjIzgPnYtkhBg73gOo/RHqPmLruP3BaGL4KEX3Dwz6pI8auSN8G8+iuEG90+GSswyKvslN+JYSaacaQ==",
+ "dev": true,
+ "dependencies": {
+ "@jest/transform": "^25.5.1",
+ "@jest/types": "^25.5.0",
+ "@types/babel__core": "^7.1.7",
+ "babel-plugin-istanbul": "^6.0.0",
+ "babel-preset-jest": "^25.5.0",
+ "chalk": "^3.0.0",
+ "graceful-fs": "^4.2.4",
+ "slash": "^3.0.0"
+ },
+ "engines": {
+ "node": ">= 8.3"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0"
+ }
+ },
+ "node_modules/babel-jest/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/babel-jest/node_modules/chalk": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz",
+ "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/babel-jest/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/babel-jest/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/babel-jest/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/babel-jest/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/babel-plugin-dynamic-import-node": {
+ "version": "2.3.3",
+ "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz",
+ "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==",
+ "dev": true,
+ "dependencies": {
+ "object.assign": "^4.1.0"
+ }
+ },
+ "node_modules/babel-plugin-istanbul": {
+ "version": "6.1.1",
+ "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz",
+ "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.0.0",
+ "@istanbuljs/load-nyc-config": "^1.0.0",
+ "@istanbuljs/schema": "^0.1.2",
+ "istanbul-lib-instrument": "^5.0.4",
+ "test-exclude": "^6.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/babel-plugin-istanbul/node_modules/istanbul-lib-instrument": {
+ "version": "5.2.1",
+ "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz",
+ "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==",
+ "dev": true,
+ "dependencies": {
+ "@babel/core": "^7.12.3",
+ "@babel/parser": "^7.14.7",
+ "@istanbuljs/schema": "^0.1.2",
+ "istanbul-lib-coverage": "^3.2.0",
+ "semver": "^6.3.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/babel-plugin-jest-hoist": {
+ "version": "25.5.0",
+ "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-25.5.0.tgz",
+ "integrity": "sha512-u+/W+WAjMlvoocYGTwthAiQSxDcJAyHpQ6oWlHdFZaaN+Rlk8Q7iiwDPg2lN/FyJtAYnKjFxbn7xus4HCFkg5g==",
+ "dev": true,
+ "dependencies": {
+ "@babel/template": "^7.3.3",
+ "@babel/types": "^7.3.3",
+ "@types/babel__traverse": "^7.0.6"
+ },
+ "engines": {
+ "node": ">= 8.3"
+ }
+ },
+ "node_modules/babel-plugin-polyfill-corejs2": {
+ "version": "0.2.3",
+ "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.2.3.tgz",
+ "integrity": "sha512-NDZ0auNRzmAfE1oDDPW2JhzIMXUk+FFe2ICejmt5T4ocKgiQx3e0VCRx9NCAidcMtL2RUZaWtXnmjTCkx0tcbA==",
+ "dev": true,
+ "dependencies": {
+ "@babel/compat-data": "^7.13.11",
+ "@babel/helper-define-polyfill-provider": "^0.2.4",
+ "semver": "^6.1.1"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/babel-plugin-polyfill-corejs3": {
+ "version": "0.2.5",
+ "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.2.5.tgz",
+ "integrity": "sha512-ninF5MQNwAX9Z7c9ED+H2pGt1mXdP4TqzlHKyPIYmJIYz0N+++uwdM7RnJukklhzJ54Q84vA4ZJkgs7lu5vqcw==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-define-polyfill-provider": "^0.2.2",
+ "core-js-compat": "^3.16.2"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/babel-plugin-polyfill-regenerator": {
+ "version": "0.2.3",
+ "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.2.3.tgz",
+ "integrity": "sha512-JVE78oRZPKFIeUqFGrSORNzQnrDwZR16oiWeGM8ZyjBn2XAT5OjP+wXx5ESuo33nUsFUEJYjtklnsKbxW5L+7g==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-define-polyfill-provider": "^0.2.4"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/babel-plugin-transform-dynamic-import": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/babel-plugin-transform-dynamic-import/-/babel-plugin-transform-dynamic-import-2.1.0.tgz",
+ "integrity": "sha512-ja4NWc37+7bV6/uJKCERJEGHEyK1DXgXp8teHvjKC4Jsj3Ib484dJdamFIBtSb40JFniyWZo6ML46usVvfdsSg==",
+ "dev": true,
+ "dependencies": {
+ "@babel/plugin-syntax-dynamic-import": "^7.0.0"
+ }
+ },
+ "node_modules/babel-plugin-transform-proxy-compat": {
+ "version": "0.22.4",
+ "resolved": "https://registry.npmjs.org/babel-plugin-transform-proxy-compat/-/babel-plugin-transform-proxy-compat-0.22.4.tgz",
+ "integrity": "sha512-R7GxNCPTiLfUSPMS9Ggp5oM8SsCBiZNbxI43+at9lj9zXYWCqv89GvOyk7CYvq594LzsrLDJ5iMlvP5sAdK7nw==",
+ "dev": true,
+ "dependencies": {
+ "@babel/types": "7.16.8"
+ }
+ },
+ "node_modules/babel-plugin-transform-proxy-compat/node_modules/@babel/types": {
+ "version": "7.16.8",
+ "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.16.8.tgz",
+ "integrity": "sha512-smN2DQc5s4M7fntyjGtyIPbRJv6wW4rU/94fmYJ7PKQuZkC0qGMHXJbg6sNGt12JmVr4k5YaptI/XtiLJBnmIg==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-validator-identifier": "^7.16.7",
+ "to-fast-properties": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/babel-preset-compat": {
+ "version": "0.22.4",
+ "resolved": "https://registry.npmjs.org/babel-preset-compat/-/babel-preset-compat-0.22.4.tgz",
+ "integrity": "sha512-d0m1nouKFcTSmPTVs9hXwEB2vTHKdLSG0tMoEMa4bv2xSKGwATqUwrB5xSqZ2dAUl6nlpt8qXShkJ6G0diDp+Q==",
+ "dev": true,
+ "dependencies": {
+ "@babel/plugin-proposal-class-properties": "7.14.5",
+ "@babel/plugin-proposal-object-rest-spread": "7.14.7",
+ "@babel/plugin-transform-arrow-functions": "7.14.5",
+ "@babel/plugin-transform-async-to-generator": "7.14.5",
+ "@babel/plugin-transform-block-scoped-functions": "7.14.5",
+ "@babel/plugin-transform-block-scoping": "7.15.3",
+ "@babel/plugin-transform-classes": "7.15.4",
+ "@babel/plugin-transform-computed-properties": "7.14.5",
+ "@babel/plugin-transform-destructuring": "7.14.7",
+ "@babel/plugin-transform-duplicate-keys": "7.14.5",
+ "@babel/plugin-transform-exponentiation-operator": "7.14.5",
+ "@babel/plugin-transform-for-of": "7.15.4",
+ "@babel/plugin-transform-function-name": "7.14.5",
+ "@babel/plugin-transform-instanceof": "7.14.5",
+ "@babel/plugin-transform-literals": "7.14.5",
+ "@babel/plugin-transform-modules-amd": "7.14.5",
+ "@babel/plugin-transform-modules-commonjs": "7.15.4",
+ "@babel/plugin-transform-modules-systemjs": "7.15.4",
+ "@babel/plugin-transform-modules-umd": "7.14.5",
+ "@babel/plugin-transform-object-super": "7.14.5",
+ "@babel/plugin-transform-parameters": "7.15.4",
+ "@babel/plugin-transform-regenerator": "7.14.5",
+ "@babel/plugin-transform-runtime": "7.15.0",
+ "@babel/plugin-transform-shorthand-properties": "7.14.5",
+ "@babel/plugin-transform-spread": "7.14.6",
+ "@babel/plugin-transform-sticky-regex": "7.14.5",
+ "@babel/plugin-transform-template-literals": "7.14.5",
+ "@babel/plugin-transform-typeof-symbol": "7.14.5",
+ "@babel/plugin-transform-unicode-regex": "7.14.5",
+ "babel-plugin-transform-proxy-compat": "0.22.4"
+ }
+ },
+ "node_modules/babel-preset-compat/node_modules/@babel/plugin-proposal-class-properties": {
+ "version": "7.14.5",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.14.5.tgz",
+ "integrity": "sha512-q/PLpv5Ko4dVc1LYMpCY7RVAAO4uk55qPwrIuJ5QJ8c6cVuAmhu7I/49JOppXL6gXf7ZHzpRVEUZdYoPLM04Gg==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-create-class-features-plugin": "^7.14.5",
+ "@babel/helper-plugin-utils": "^7.14.5"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/babel-preset-compat/node_modules/@babel/plugin-proposal-object-rest-spread": {
+ "version": "7.14.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.14.7.tgz",
+ "integrity": "sha512-082hsZz+sVabfmDWo1Oct1u1AgbKbUAyVgmX4otIc7bdsRgHBXwTwb3DpDmD4Eyyx6DNiuz5UAATT655k+kL5g==",
+ "dev": true,
+ "dependencies": {
+ "@babel/compat-data": "^7.14.7",
+ "@babel/helper-compilation-targets": "^7.14.5",
+ "@babel/helper-plugin-utils": "^7.14.5",
+ "@babel/plugin-syntax-object-rest-spread": "^7.8.3",
+ "@babel/plugin-transform-parameters": "^7.14.5"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/babel-preset-compat/node_modules/@babel/plugin-transform-modules-commonjs": {
+ "version": "7.15.4",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.15.4.tgz",
+ "integrity": "sha512-qg4DPhwG8hKp4BbVDvX1s8cohM8a6Bvptu4l6Iingq5rW+yRUAhe/YRup/YcW2zCOlrysEWVhftIcKzrEZv3sA==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-module-transforms": "^7.15.4",
+ "@babel/helper-plugin-utils": "^7.14.5",
+ "@babel/helper-simple-access": "^7.15.4",
+ "babel-plugin-dynamic-import-node": "^2.3.3"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/babel-preset-compat/node_modules/@babel/plugin-transform-parameters": {
+ "version": "7.15.4",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.15.4.tgz",
+ "integrity": "sha512-9WB/GUTO6lvJU3XQsSr6J/WKvBC2hcs4Pew8YxZagi6GkTdniyqp8On5kqdK8MN0LMeu0mGbhPN+O049NV/9FQ==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.14.5"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
+ }
+ },
+ "node_modules/babel-preset-current-node-syntax": {
+ "version": "0.1.4",
+ "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-0.1.4.tgz",
+ "integrity": "sha512-5/INNCYhUGqw7VbVjT/hb3ucjgkVHKXY7lX3ZjlN4gm565VyFmJUrJ/h+h16ECVB38R/9SF6aACydpKMLZ/c9w==",
+ "dev": true,
+ "dependencies": {
+ "@babel/plugin-syntax-async-generators": "^7.8.4",
+ "@babel/plugin-syntax-bigint": "^7.8.3",
+ "@babel/plugin-syntax-class-properties": "^7.8.3",
+ "@babel/plugin-syntax-import-meta": "^7.8.3",
+ "@babel/plugin-syntax-json-strings": "^7.8.3",
+ "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3",
+ "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3",
+ "@babel/plugin-syntax-numeric-separator": "^7.8.3",
+ "@babel/plugin-syntax-object-rest-spread": "^7.8.3",
+ "@babel/plugin-syntax-optional-catch-binding": "^7.8.3",
+ "@babel/plugin-syntax-optional-chaining": "^7.8.3"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0"
+ }
+ },
+ "node_modules/babel-preset-jest": {
+ "version": "25.5.0",
+ "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-25.5.0.tgz",
+ "integrity": "sha512-8ZczygctQkBU+63DtSOKGh7tFL0CeCuz+1ieud9lJ1WPQ9O6A1a/r+LGn6Y705PA6whHQ3T1XuB/PmpfNYf8Fw==",
+ "dev": true,
+ "dependencies": {
+ "babel-plugin-jest-hoist": "^25.5.0",
+ "babel-preset-current-node-syntax": "^0.1.2"
+ },
+ "engines": {
+ "node": ">= 8.3"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0"
+ }
+ },
+ "node_modules/balanced-match": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
+ "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==",
+ "dev": true
+ },
+ "node_modules/base": {
+ "version": "0.11.2",
+ "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz",
+ "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==",
+ "dev": true,
+ "dependencies": {
+ "cache-base": "^1.0.1",
+ "class-utils": "^0.3.5",
+ "component-emitter": "^1.2.1",
+ "define-property": "^1.0.0",
+ "isobject": "^3.0.1",
+ "mixin-deep": "^1.2.0",
+ "pascalcase": "^0.1.1"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/base/node_modules/define-property": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz",
+ "integrity": "sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==",
+ "dev": true,
+ "dependencies": {
+ "is-descriptor": "^1.0.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/base/node_modules/isobject": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz",
+ "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/bcrypt-pbkdf": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz",
+ "integrity": "sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==",
+ "dev": true,
+ "dependencies": {
+ "tweetnacl": "^0.14.3"
+ }
+ },
+ "node_modules/boolbase": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz",
+ "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==",
+ "dev": true
+ },
+ "node_modules/brace-expansion": {
+ "version": "1.1.11",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
+ "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
+ "dev": true,
+ "dependencies": {
+ "balanced-match": "^1.0.0",
+ "concat-map": "0.0.1"
+ }
+ },
+ "node_modules/braces": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
+ "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
+ "dev": true,
+ "dependencies": {
+ "fill-range": "^7.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/browser-process-hrtime": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz",
+ "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==",
+ "dev": true
+ },
+ "node_modules/browser-resolve": {
+ "version": "1.11.3",
+ "resolved": "https://registry.npmjs.org/browser-resolve/-/browser-resolve-1.11.3.tgz",
+ "integrity": "sha512-exDi1BYWB/6raKHmDTCicQfTkqwN5fioMFV4j8BsfMU4R2DK/QfZfK7kOVkmWCNANf0snkBzqGqAJBao9gZMdQ==",
+ "dev": true,
+ "dependencies": {
+ "resolve": "1.1.7"
+ }
+ },
+ "node_modules/browser-resolve/node_modules/resolve": {
+ "version": "1.1.7",
+ "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz",
+ "integrity": "sha512-9znBF0vBcaSN3W2j7wKvdERPwqTxSpCq+if5C0WoTCyV9n24rua28jeuQ2pL/HOf+yUe/Mef+H/5p60K0Id3bg==",
+ "dev": true
+ },
+ "node_modules/browserslist": {
+ "version": "4.21.5",
+ "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.5.tgz",
+ "integrity": "sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/browserslist"
+ },
+ {
+ "type": "tidelift",
+ "url": "https://tidelift.com/funding/github/npm/browserslist"
+ }
+ ],
+ "dependencies": {
+ "caniuse-lite": "^1.0.30001449",
+ "electron-to-chromium": "^1.4.284",
+ "node-releases": "^2.0.8",
+ "update-browserslist-db": "^1.0.10"
+ },
+ "bin": {
+ "browserslist": "cli.js"
+ },
+ "engines": {
+ "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7"
+ }
+ },
+ "node_modules/bser": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz",
+ "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==",
+ "dev": true,
+ "dependencies": {
+ "node-int64": "^0.4.0"
+ }
+ },
+ "node_modules/buffer-from": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz",
+ "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==",
+ "dev": true
+ },
+ "node_modules/cache-base": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz",
+ "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==",
+ "dev": true,
+ "dependencies": {
+ "collection-visit": "^1.0.0",
+ "component-emitter": "^1.2.1",
+ "get-value": "^2.0.6",
+ "has-value": "^1.0.0",
+ "isobject": "^3.0.1",
+ "set-value": "^2.0.0",
+ "to-object-path": "^0.3.0",
+ "union-value": "^1.0.0",
+ "unset-value": "^1.0.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/cache-base/node_modules/isobject": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz",
+ "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/call-bind": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz",
+ "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==",
+ "dev": true,
+ "dependencies": {
+ "function-bind": "^1.1.1",
+ "get-intrinsic": "^1.0.2"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/callsites": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
+ "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/camelcase": {
+ "version": "5.3.1",
+ "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz",
+ "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==",
+ "dev": true,
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/caniuse-api": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/caniuse-api/-/caniuse-api-3.0.0.tgz",
+ "integrity": "sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==",
+ "dev": true,
+ "dependencies": {
+ "browserslist": "^4.0.0",
+ "caniuse-lite": "^1.0.0",
+ "lodash.memoize": "^4.1.2",
+ "lodash.uniq": "^4.5.0"
+ }
+ },
+ "node_modules/caniuse-lite": {
+ "version": "1.0.30001470",
+ "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001470.tgz",
+ "integrity": "sha512-065uNwY6QtHCBOExzbV6m236DDhYCCtPmQUCoQtwkVqzud8v5QPidoMr6CoMkC2nfp6nksjttqWQRRh75LqUmA==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/browserslist"
+ },
+ {
+ "type": "tidelift",
+ "url": "https://tidelift.com/funding/github/npm/caniuse-lite"
+ }
+ ]
+ },
+ "node_modules/capture-exit": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/capture-exit/-/capture-exit-2.0.0.tgz",
+ "integrity": "sha512-PiT/hQmTonHhl/HFGN+Lx3JJUznrVYJ3+AQsnthneZbvW7x+f08Tk7yLJTLEOUvBTbduLeeBkxEaYXUOUrRq6g==",
+ "dev": true,
+ "dependencies": {
+ "rsvp": "^4.8.4"
+ },
+ "engines": {
+ "node": "6.* || 8.* || >= 10.*"
+ }
+ },
+ "node_modules/caseless": {
+ "version": "0.12.0",
+ "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz",
+ "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==",
+ "dev": true
+ },
+ "node_modules/chalk": {
+ "version": "2.4.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
+ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^3.2.1",
+ "escape-string-regexp": "^1.0.5",
+ "supports-color": "^5.3.0"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/chevrotain": {
+ "version": "7.1.1",
+ "resolved": "https://registry.npmjs.org/chevrotain/-/chevrotain-7.1.1.tgz",
+ "integrity": "sha512-wy3mC1x4ye+O+QkEinVJkPf5u2vsrDIYW9G7ZuwFl6v/Yu0LwUuT2POsb+NUWApebyxfkQq6+yDfRExbnI5rcw==",
+ "dev": true,
+ "dependencies": {
+ "regexp-to-ast": "0.5.0"
+ }
+ },
+ "node_modules/ci-info": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz",
+ "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==",
+ "dev": true
+ },
+ "node_modules/class-utils": {
+ "version": "0.3.6",
+ "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz",
+ "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==",
+ "dev": true,
+ "dependencies": {
+ "arr-union": "^3.1.0",
+ "define-property": "^0.2.5",
+ "isobject": "^3.0.0",
+ "static-extend": "^0.1.1"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/class-utils/node_modules/define-property": {
+ "version": "0.2.5",
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
+ "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==",
+ "dev": true,
+ "dependencies": {
+ "is-descriptor": "^0.1.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/class-utils/node_modules/is-accessor-descriptor": {
+ "version": "0.1.6",
+ "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz",
+ "integrity": "sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==",
+ "dev": true,
+ "dependencies": {
+ "kind-of": "^3.0.2"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/class-utils/node_modules/is-accessor-descriptor/node_modules/kind-of": {
+ "version": "3.2.2",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
+ "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==",
+ "dev": true,
+ "dependencies": {
+ "is-buffer": "^1.1.5"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/class-utils/node_modules/is-data-descriptor": {
+ "version": "0.1.4",
+ "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz",
+ "integrity": "sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==",
+ "dev": true,
+ "dependencies": {
+ "kind-of": "^3.0.2"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/class-utils/node_modules/is-data-descriptor/node_modules/kind-of": {
+ "version": "3.2.2",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
+ "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==",
+ "dev": true,
+ "dependencies": {
+ "is-buffer": "^1.1.5"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/class-utils/node_modules/is-descriptor": {
+ "version": "0.1.6",
+ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz",
+ "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==",
+ "dev": true,
+ "dependencies": {
+ "is-accessor-descriptor": "^0.1.6",
+ "is-data-descriptor": "^0.1.4",
+ "kind-of": "^5.0.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/class-utils/node_modules/isobject": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz",
+ "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/class-utils/node_modules/kind-of": {
+ "version": "5.1.0",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz",
+ "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/clean-stack": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz",
+ "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==",
+ "dev": true,
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/cli-cursor": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz",
+ "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==",
+ "dev": true,
+ "dependencies": {
+ "restore-cursor": "^3.1.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/cli-truncate": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-2.1.0.tgz",
+ "integrity": "sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==",
+ "dev": true,
+ "dependencies": {
+ "slice-ansi": "^3.0.0",
+ "string-width": "^4.2.0"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/cliui": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz",
+ "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==",
+ "dev": true,
+ "dependencies": {
+ "string-width": "^4.2.0",
+ "strip-ansi": "^6.0.0",
+ "wrap-ansi": "^6.2.0"
+ }
+ },
+ "node_modules/cliui/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/cliui/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/cliui/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/cliui/node_modules/wrap-ansi": {
+ "version": "6.2.0",
+ "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz",
+ "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^4.0.0",
+ "string-width": "^4.1.0",
+ "strip-ansi": "^6.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/co": {
+ "version": "4.6.0",
+ "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz",
+ "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==",
+ "dev": true,
+ "engines": {
+ "iojs": ">= 1.0.0",
+ "node": ">= 0.12.0"
+ }
+ },
+ "node_modules/coa": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/coa/-/coa-2.0.2.tgz",
+ "integrity": "sha512-q5/jG+YQnSy4nRTV4F7lPepBJZ8qBNJJDBuJdoejDyLXgmL7IEo+Le2JDZudFTFt7mrCqIRaSjws4ygRCTCAXA==",
+ "dev": true,
+ "dependencies": {
+ "@types/q": "^1.5.1",
+ "chalk": "^2.4.1",
+ "q": "^1.1.2"
+ },
+ "engines": {
+ "node": ">= 4.0"
+ }
+ },
+ "node_modules/collect-v8-coverage": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz",
+ "integrity": "sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg==",
+ "dev": true
+ },
+ "node_modules/collection-visit": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz",
+ "integrity": "sha512-lNkKvzEeMBBjUGHZ+q6z9pSJla0KWAQPvtzhEV9+iGyQYG+pBpl7xKDhxoNSOZH2hhv0v5k0y2yAM4o4SjoSkw==",
+ "dev": true,
+ "dependencies": {
+ "map-visit": "^1.0.0",
+ "object-visit": "^1.0.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/color": {
+ "version": "3.2.1",
+ "resolved": "https://registry.npmjs.org/color/-/color-3.2.1.tgz",
+ "integrity": "sha512-aBl7dZI9ENN6fUGC7mWpMTPNHmWUSNan9tuWN6ahh5ZLNk9baLJOnSMlrQkHcrfFgz2/RigjUVAjdx36VcemKA==",
+ "dev": true,
+ "dependencies": {
+ "color-convert": "^1.9.3",
+ "color-string": "^1.6.0"
+ }
+ },
+ "node_modules/color-convert": {
+ "version": "1.9.3",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
+ "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "1.1.3"
+ }
+ },
+ "node_modules/color-name": {
+ "version": "1.1.3",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
+ "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==",
+ "dev": true
+ },
+ "node_modules/color-string": {
+ "version": "1.9.1",
+ "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz",
+ "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "^1.0.0",
+ "simple-swizzle": "^0.2.2"
+ }
+ },
+ "node_modules/colorette": {
+ "version": "2.0.19",
+ "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.19.tgz",
+ "integrity": "sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ==",
+ "dev": true
+ },
+ "node_modules/combined-stream": {
+ "version": "1.0.8",
+ "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
+ "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==",
+ "dev": true,
+ "dependencies": {
+ "delayed-stream": "~1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/commander": {
+ "version": "6.2.1",
+ "resolved": "https://registry.npmjs.org/commander/-/commander-6.2.1.tgz",
+ "integrity": "sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA==",
+ "dev": true,
+ "engines": {
+ "node": ">= 6"
+ }
+ },
+ "node_modules/compare-versions": {
+ "version": "3.6.0",
+ "resolved": "https://registry.npmjs.org/compare-versions/-/compare-versions-3.6.0.tgz",
+ "integrity": "sha512-W6Af2Iw1z4CB7q4uU4hv646dW9GQuBM+YpC0UvUCWSD8w90SJjp+ujJuXaEMtAXBtSqGfMPuFOVn4/+FlaqfBA==",
+ "dev": true
+ },
+ "node_modules/component-emitter": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz",
+ "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==",
+ "dev": true
+ },
+ "node_modules/concat-map": {
+ "version": "0.0.1",
+ "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
+ "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==",
+ "dev": true
+ },
+ "node_modules/contains-path": {
+ "version": "0.1.0",
+ "resolved": "https://registry.npmjs.org/contains-path/-/contains-path-0.1.0.tgz",
+ "integrity": "sha512-OKZnPGeMQy2RPaUIBPFFd71iNf4791H12MCRuVQDnzGRwCYNYmTDy5pdafo2SLAcEMKzTOQnLWG4QdcjeJUMEg==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/convert-source-map": {
+ "version": "1.9.0",
+ "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz",
+ "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==",
+ "dev": true
+ },
+ "node_modules/copy-descriptor": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz",
+ "integrity": "sha512-XgZ0pFcakEUlbwQEVNg3+QAis1FyTL3Qel9FYy8pSkQqoG3PNoT0bOCQtOXcOkur21r2Eq2kI+IE+gsmAEVlYw==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/core-js-compat": {
+ "version": "3.29.1",
+ "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.29.1.tgz",
+ "integrity": "sha512-QmchCua884D8wWskMX8tW5ydINzd8oSJVx38lx/pVkFGqztxt73GYre3pm/hyYq8bPf+MW5In4I/uRShFDsbrA==",
+ "dev": true,
+ "dependencies": {
+ "browserslist": "^4.21.5"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/core-js"
+ }
+ },
+ "node_modules/core-util-is": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
+ "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==",
+ "dev": true
+ },
+ "node_modules/cosmiconfig": {
+ "version": "7.1.0",
+ "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz",
+ "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==",
+ "dev": true,
+ "dependencies": {
+ "@types/parse-json": "^4.0.0",
+ "import-fresh": "^3.2.1",
+ "parse-json": "^5.0.0",
+ "path-type": "^4.0.0",
+ "yaml": "^1.10.0"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/cross-spawn": {
+ "version": "7.0.3",
+ "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
+ "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==",
+ "dev": true,
+ "dependencies": {
+ "path-key": "^3.1.0",
+ "shebang-command": "^2.0.0",
+ "which": "^2.0.1"
+ },
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/css-color-names": {
+ "version": "0.0.4",
+ "resolved": "https://registry.npmjs.org/css-color-names/-/css-color-names-0.0.4.tgz",
+ "integrity": "sha512-zj5D7X1U2h2zsXOAM8EyUREBnnts6H+Jm+d1M2DbiQQcUtnqgQsMrdo8JW9R80YFUmIdBZeMu5wvYM7hcgWP/Q==",
+ "dev": true,
+ "engines": {
+ "node": "*"
+ }
+ },
+ "node_modules/css-declaration-sorter": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-4.0.1.tgz",
+ "integrity": "sha512-BcxQSKTSEEQUftYpBVnsH4SF05NTuBokb19/sBt6asXGKZ/6VP7PLG1CBCkFDYOnhXhPh0jMhO6xZ71oYHXHBA==",
+ "dev": true,
+ "dependencies": {
+ "postcss": "^7.0.1",
+ "timsort": "^0.3.0"
+ },
+ "engines": {
+ "node": ">4"
+ }
+ },
+ "node_modules/css-declaration-sorter/node_modules/picocolors": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+ "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+ "dev": true
+ },
+ "node_modules/css-declaration-sorter/node_modules/postcss": {
+ "version": "7.0.39",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+ "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+ "dev": true,
+ "dependencies": {
+ "picocolors": "^0.2.1",
+ "source-map": "^0.6.1"
+ },
+ "engines": {
+ "node": ">=6.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/postcss/"
+ }
+ },
+ "node_modules/css-declaration-sorter/node_modules/source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/css-select": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/css-select/-/css-select-2.1.0.tgz",
+ "integrity": "sha512-Dqk7LQKpwLoH3VovzZnkzegqNSuAziQyNZUcrdDM401iY+R5NkGBXGmtO05/yaXQziALuPogeG0b7UAgjnTJTQ==",
+ "dev": true,
+ "dependencies": {
+ "boolbase": "^1.0.0",
+ "css-what": "^3.2.1",
+ "domutils": "^1.7.0",
+ "nth-check": "^1.0.2"
+ }
+ },
+ "node_modules/css-select-base-adapter": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/css-select-base-adapter/-/css-select-base-adapter-0.1.1.tgz",
+ "integrity": "sha512-jQVeeRG70QI08vSTwf1jHxp74JoZsr2XSgETae8/xC8ovSnL2WF87GTLO86Sbwdt2lK4Umg4HnnwMO4YF3Ce7w==",
+ "dev": true
+ },
+ "node_modules/css-tree": {
+ "version": "1.0.0-alpha.37",
+ "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.0.0-alpha.37.tgz",
+ "integrity": "sha512-DMxWJg0rnz7UgxKT0Q1HU/L9BeJI0M6ksor0OgqOnF+aRCDWg/N2641HmVyU9KVIu0OVVWOb2IpC9A+BJRnejg==",
+ "dev": true,
+ "dependencies": {
+ "mdn-data": "2.0.4",
+ "source-map": "^0.6.1"
+ },
+ "engines": {
+ "node": ">=8.0.0"
+ }
+ },
+ "node_modules/css-tree/node_modules/source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/css-what": {
+ "version": "3.4.2",
+ "resolved": "https://registry.npmjs.org/css-what/-/css-what-3.4.2.tgz",
+ "integrity": "sha512-ACUm3L0/jiZTqfzRM3Hi9Q8eZqd6IK37mMWPLz9PJxkLWllYeRf+EHUSHYEtFop2Eqytaq1FizFVh7XfBnXCDQ==",
+ "dev": true,
+ "engines": {
+ "node": ">= 6"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/fb55"
+ }
+ },
+ "node_modules/cssesc": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz",
+ "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==",
+ "dev": true,
+ "bin": {
+ "cssesc": "bin/cssesc"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/cssnano-preset-default": {
+ "version": "4.0.8",
+ "resolved": "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-4.0.8.tgz",
+ "integrity": "sha512-LdAyHuq+VRyeVREFmuxUZR1TXjQm8QQU/ktoo/x7bz+SdOge1YKc5eMN6pRW7YWBmyq59CqYba1dJ5cUukEjLQ==",
+ "dev": true,
+ "dependencies": {
+ "css-declaration-sorter": "^4.0.1",
+ "cssnano-util-raw-cache": "^4.0.1",
+ "postcss": "^7.0.0",
+ "postcss-calc": "^7.0.1",
+ "postcss-colormin": "^4.0.3",
+ "postcss-convert-values": "^4.0.1",
+ "postcss-discard-comments": "^4.0.2",
+ "postcss-discard-duplicates": "^4.0.2",
+ "postcss-discard-empty": "^4.0.1",
+ "postcss-discard-overridden": "^4.0.1",
+ "postcss-merge-longhand": "^4.0.11",
+ "postcss-merge-rules": "^4.0.3",
+ "postcss-minify-font-values": "^4.0.2",
+ "postcss-minify-gradients": "^4.0.2",
+ "postcss-minify-params": "^4.0.2",
+ "postcss-minify-selectors": "^4.0.2",
+ "postcss-normalize-charset": "^4.0.1",
+ "postcss-normalize-display-values": "^4.0.2",
+ "postcss-normalize-positions": "^4.0.2",
+ "postcss-normalize-repeat-style": "^4.0.2",
+ "postcss-normalize-string": "^4.0.2",
+ "postcss-normalize-timing-functions": "^4.0.2",
+ "postcss-normalize-unicode": "^4.0.1",
+ "postcss-normalize-url": "^4.0.1",
+ "postcss-normalize-whitespace": "^4.0.2",
+ "postcss-ordered-values": "^4.1.2",
+ "postcss-reduce-initial": "^4.0.3",
+ "postcss-reduce-transforms": "^4.0.2",
+ "postcss-svgo": "^4.0.3",
+ "postcss-unique-selectors": "^4.0.1"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/cssnano-preset-default/node_modules/picocolors": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+ "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+ "dev": true
+ },
+ "node_modules/cssnano-preset-default/node_modules/postcss": {
+ "version": "7.0.39",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+ "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+ "dev": true,
+ "dependencies": {
+ "picocolors": "^0.2.1",
+ "source-map": "^0.6.1"
+ },
+ "engines": {
+ "node": ">=6.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/postcss/"
+ }
+ },
+ "node_modules/cssnano-preset-default/node_modules/source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/cssnano-util-get-arguments": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/cssnano-util-get-arguments/-/cssnano-util-get-arguments-4.0.0.tgz",
+ "integrity": "sha512-6RIcwmV3/cBMG8Aj5gucQRsJb4vv4I4rn6YjPbVWd5+Pn/fuG+YseGvXGk00XLkoZkaj31QOD7vMUpNPC4FIuw==",
+ "dev": true,
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/cssnano-util-get-match": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/cssnano-util-get-match/-/cssnano-util-get-match-4.0.0.tgz",
+ "integrity": "sha512-JPMZ1TSMRUPVIqEalIBNoBtAYbi8okvcFns4O0YIhcdGebeYZK7dMyHJiQ6GqNBA9kE0Hym4Aqym5rPdsV/4Cw==",
+ "dev": true,
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/cssnano-util-raw-cache": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/cssnano-util-raw-cache/-/cssnano-util-raw-cache-4.0.1.tgz",
+ "integrity": "sha512-qLuYtWK2b2Dy55I8ZX3ky1Z16WYsx544Q0UWViebptpwn/xDBmog2TLg4f+DBMg1rJ6JDWtn96WHbOKDWt1WQA==",
+ "dev": true,
+ "dependencies": {
+ "postcss": "^7.0.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/cssnano-util-raw-cache/node_modules/picocolors": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+ "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+ "dev": true
+ },
+ "node_modules/cssnano-util-raw-cache/node_modules/postcss": {
+ "version": "7.0.39",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+ "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+ "dev": true,
+ "dependencies": {
+ "picocolors": "^0.2.1",
+ "source-map": "^0.6.1"
+ },
+ "engines": {
+ "node": ">=6.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/postcss/"
+ }
+ },
+ "node_modules/cssnano-util-raw-cache/node_modules/source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/cssnano-util-same-parent": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/cssnano-util-same-parent/-/cssnano-util-same-parent-4.0.1.tgz",
+ "integrity": "sha512-WcKx5OY+KoSIAxBW6UBBRay1U6vkYheCdjyVNDm85zt5K9mHoGOfsOsqIszfAqrQQFIIKgjh2+FDgIj/zsl21Q==",
+ "dev": true,
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/csso": {
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/csso/-/csso-4.2.0.tgz",
+ "integrity": "sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==",
+ "dev": true,
+ "dependencies": {
+ "css-tree": "^1.1.2"
+ },
+ "engines": {
+ "node": ">=8.0.0"
+ }
+ },
+ "node_modules/csso/node_modules/css-tree": {
+ "version": "1.1.3",
+ "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.1.3.tgz",
+ "integrity": "sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==",
+ "dev": true,
+ "dependencies": {
+ "mdn-data": "2.0.14",
+ "source-map": "^0.6.1"
+ },
+ "engines": {
+ "node": ">=8.0.0"
+ }
+ },
+ "node_modules/csso/node_modules/mdn-data": {
+ "version": "2.0.14",
+ "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.14.tgz",
+ "integrity": "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==",
+ "dev": true
+ },
+ "node_modules/csso/node_modules/source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/cssom": {
+ "version": "0.4.4",
+ "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz",
+ "integrity": "sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==",
+ "dev": true
+ },
+ "node_modules/cssstyle": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz",
+ "integrity": "sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==",
+ "dev": true,
+ "dependencies": {
+ "cssom": "~0.3.6"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/cssstyle/node_modules/cssom": {
+ "version": "0.3.8",
+ "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz",
+ "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==",
+ "dev": true
+ },
+ "node_modules/dashdash": {
+ "version": "1.14.1",
+ "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz",
+ "integrity": "sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==",
+ "dev": true,
+ "dependencies": {
+ "assert-plus": "^1.0.0"
+ },
+ "engines": {
+ "node": ">=0.10"
+ }
+ },
+ "node_modules/data-urls": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-1.1.0.tgz",
+ "integrity": "sha512-YTWYI9se1P55u58gL5GkQHW4P6VJBJ5iBT+B5a7i2Tjadhv52paJG0qHX4A0OR6/t52odI64KP2YvFpkDOi3eQ==",
+ "dev": true,
+ "dependencies": {
+ "abab": "^2.0.0",
+ "whatwg-mimetype": "^2.2.0",
+ "whatwg-url": "^7.0.0"
+ }
+ },
+ "node_modules/debug": {
+ "version": "4.3.4",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
+ "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
+ "dev": true,
+ "dependencies": {
+ "ms": "2.1.2"
+ },
+ "engines": {
+ "node": ">=6.0"
+ },
+ "peerDependenciesMeta": {
+ "supports-color": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/decamelize": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz",
+ "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/decode-uri-component": {
+ "version": "0.2.2",
+ "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.2.tgz",
+ "integrity": "sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10"
+ }
+ },
+ "node_modules/dedent": {
+ "version": "0.7.0",
+ "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz",
+ "integrity": "sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==",
+ "dev": true
+ },
+ "node_modules/deep-is": {
+ "version": "0.1.4",
+ "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz",
+ "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==",
+ "dev": true
+ },
+ "node_modules/deepmerge": {
+ "version": "4.3.1",
+ "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz",
+ "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/define-properties": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.0.tgz",
+ "integrity": "sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==",
+ "dev": true,
+ "dependencies": {
+ "has-property-descriptors": "^1.0.0",
+ "object-keys": "^1.1.1"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/define-property": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz",
+ "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==",
+ "dev": true,
+ "dependencies": {
+ "is-descriptor": "^1.0.2",
+ "isobject": "^3.0.1"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/define-property/node_modules/isobject": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz",
+ "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/delayed-stream": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
+ "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.4.0"
+ }
+ },
+ "node_modules/detect-newline": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz",
+ "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/diff-sequences": {
+ "version": "25.2.6",
+ "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-25.2.6.tgz",
+ "integrity": "sha512-Hq8o7+6GaZeoFjtpgvRBUknSXNeJiCx7V9Fr94ZMljNiCr9n9L8H8aJqgWOQiDDGdyn29fRNcDdRVJ5fdyihfg==",
+ "dev": true,
+ "engines": {
+ "node": ">= 8.3"
+ }
+ },
+ "node_modules/doctrine": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz",
+ "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==",
+ "dev": true,
+ "dependencies": {
+ "esutils": "^2.0.2"
+ },
+ "engines": {
+ "node": ">=6.0.0"
+ }
+ },
+ "node_modules/dom-serializer": {
+ "version": "0.2.2",
+ "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.2.2.tgz",
+ "integrity": "sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==",
+ "dev": true,
+ "dependencies": {
+ "domelementtype": "^2.0.1",
+ "entities": "^2.0.0"
+ }
+ },
+ "node_modules/dom-serializer/node_modules/domelementtype": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz",
+ "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/fb55"
+ }
+ ]
+ },
+ "node_modules/domelementtype": {
+ "version": "1.3.1",
+ "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz",
+ "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==",
+ "dev": true
+ },
+ "node_modules/domexception": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/domexception/-/domexception-1.0.1.tgz",
+ "integrity": "sha512-raigMkn7CJNNo6Ihro1fzG7wr3fHuYVytzquZKX5n0yizGsTcYgzdIUwj1X9pK0VvjeihV+XiclP+DjwbsSKug==",
+ "dev": true,
+ "dependencies": {
+ "webidl-conversions": "^4.0.2"
+ }
+ },
+ "node_modules/domutils": {
+ "version": "1.7.0",
+ "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.7.0.tgz",
+ "integrity": "sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg==",
+ "dev": true,
+ "dependencies": {
+ "dom-serializer": "0",
+ "domelementtype": "1"
+ }
+ },
+ "node_modules/dot-prop": {
+ "version": "5.3.0",
+ "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz",
+ "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==",
+ "dev": true,
+ "dependencies": {
+ "is-obj": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/dot-prop/node_modules/is-obj": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz",
+ "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/ecc-jsbn": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz",
+ "integrity": "sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw==",
+ "dev": true,
+ "dependencies": {
+ "jsbn": "~0.1.0",
+ "safer-buffer": "^2.1.0"
+ }
+ },
+ "node_modules/electron-to-chromium": {
+ "version": "1.4.340",
+ "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.340.tgz",
+ "integrity": "sha512-zx8hqumOqltKsv/MF50yvdAlPF9S/4PXbyfzJS6ZGhbddGkRegdwImmfSVqCkEziYzrIGZ/TlrzBND4FysfkDg==",
+ "dev": true
+ },
+ "node_modules/emoji-regex": {
+ "version": "8.0.0",
+ "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
+ "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
+ "dev": true
+ },
+ "node_modules/end-of-stream": {
+ "version": "1.4.4",
+ "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz",
+ "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==",
+ "dev": true,
+ "dependencies": {
+ "once": "^1.4.0"
+ }
+ },
+ "node_modules/enquirer": {
+ "version": "2.3.6",
+ "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz",
+ "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==",
+ "dev": true,
+ "dependencies": {
+ "ansi-colors": "^4.1.1"
+ },
+ "engines": {
+ "node": ">=8.6"
+ }
+ },
+ "node_modules/entities": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz",
+ "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==",
+ "dev": true,
+ "funding": {
+ "url": "https://github.com/fb55/entities?sponsor=1"
+ }
+ },
+ "node_modules/error-ex": {
+ "version": "1.3.2",
+ "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz",
+ "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==",
+ "dev": true,
+ "dependencies": {
+ "is-arrayish": "^0.2.1"
+ }
+ },
+ "node_modules/es-abstract": {
+ "version": "1.21.2",
+ "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.21.2.tgz",
+ "integrity": "sha512-y/B5POM2iBnIxCiernH1G7rC9qQoM77lLIMQLuob0zhp8C56Po81+2Nj0WFKnd0pNReDTnkYryc+zhOzpEIROg==",
+ "dev": true,
+ "dependencies": {
+ "array-buffer-byte-length": "^1.0.0",
+ "available-typed-arrays": "^1.0.5",
+ "call-bind": "^1.0.2",
+ "es-set-tostringtag": "^2.0.1",
+ "es-to-primitive": "^1.2.1",
+ "function.prototype.name": "^1.1.5",
+ "get-intrinsic": "^1.2.0",
+ "get-symbol-description": "^1.0.0",
+ "globalthis": "^1.0.3",
+ "gopd": "^1.0.1",
+ "has": "^1.0.3",
+ "has-property-descriptors": "^1.0.0",
+ "has-proto": "^1.0.1",
+ "has-symbols": "^1.0.3",
+ "internal-slot": "^1.0.5",
+ "is-array-buffer": "^3.0.2",
+ "is-callable": "^1.2.7",
+ "is-negative-zero": "^2.0.2",
+ "is-regex": "^1.1.4",
+ "is-shared-array-buffer": "^1.0.2",
+ "is-string": "^1.0.7",
+ "is-typed-array": "^1.1.10",
+ "is-weakref": "^1.0.2",
+ "object-inspect": "^1.12.3",
+ "object-keys": "^1.1.1",
+ "object.assign": "^4.1.4",
+ "regexp.prototype.flags": "^1.4.3",
+ "safe-regex-test": "^1.0.0",
+ "string.prototype.trim": "^1.2.7",
+ "string.prototype.trimend": "^1.0.6",
+ "string.prototype.trimstart": "^1.0.6",
+ "typed-array-length": "^1.0.4",
+ "unbox-primitive": "^1.0.2",
+ "which-typed-array": "^1.1.9"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/es-array-method-boxes-properly": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/es-array-method-boxes-properly/-/es-array-method-boxes-properly-1.0.0.tgz",
+ "integrity": "sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA==",
+ "dev": true
+ },
+ "node_modules/es-set-tostringtag": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz",
+ "integrity": "sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==",
+ "dev": true,
+ "dependencies": {
+ "get-intrinsic": "^1.1.3",
+ "has": "^1.0.3",
+ "has-tostringtag": "^1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/es-shim-unscopables": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz",
+ "integrity": "sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==",
+ "dev": true,
+ "dependencies": {
+ "has": "^1.0.3"
+ }
+ },
+ "node_modules/es-to-primitive": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz",
+ "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==",
+ "dev": true,
+ "dependencies": {
+ "is-callable": "^1.1.4",
+ "is-date-object": "^1.0.1",
+ "is-symbol": "^1.0.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/escalade": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz",
+ "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==",
+ "dev": true,
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/escape-string-regexp": {
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
+ "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.8.0"
+ }
+ },
+ "node_modules/escodegen": {
+ "version": "1.14.3",
+ "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.14.3.tgz",
+ "integrity": "sha512-qFcX0XJkdg+PB3xjZZG/wKSuT1PnQWx57+TVSjIMmILd2yC/6ByYElPwJnslDsuWuSAp4AwJGumarAAmJch5Kw==",
+ "dev": true,
+ "dependencies": {
+ "esprima": "^4.0.1",
+ "estraverse": "^4.2.0",
+ "esutils": "^2.0.2",
+ "optionator": "^0.8.1"
+ },
+ "bin": {
+ "escodegen": "bin/escodegen.js",
+ "esgenerate": "bin/esgenerate.js"
+ },
+ "engines": {
+ "node": ">=4.0"
+ },
+ "optionalDependencies": {
+ "source-map": "~0.6.1"
+ }
+ },
+ "node_modules/escodegen/node_modules/levn": {
+ "version": "0.3.0",
+ "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz",
+ "integrity": "sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==",
+ "dev": true,
+ "dependencies": {
+ "prelude-ls": "~1.1.2",
+ "type-check": "~0.3.2"
+ },
+ "engines": {
+ "node": ">= 0.8.0"
+ }
+ },
+ "node_modules/escodegen/node_modules/optionator": {
+ "version": "0.8.3",
+ "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz",
+ "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==",
+ "dev": true,
+ "dependencies": {
+ "deep-is": "~0.1.3",
+ "fast-levenshtein": "~2.0.6",
+ "levn": "~0.3.0",
+ "prelude-ls": "~1.1.2",
+ "type-check": "~0.3.2",
+ "word-wrap": "~1.2.3"
+ },
+ "engines": {
+ "node": ">= 0.8.0"
+ }
+ },
+ "node_modules/escodegen/node_modules/prelude-ls": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz",
+ "integrity": "sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==",
+ "dev": true,
+ "engines": {
+ "node": ">= 0.8.0"
+ }
+ },
+ "node_modules/escodegen/node_modules/source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "dev": true,
+ "optional": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/escodegen/node_modules/type-check": {
+ "version": "0.3.2",
+ "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz",
+ "integrity": "sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==",
+ "dev": true,
+ "dependencies": {
+ "prelude-ls": "~1.1.2"
+ },
+ "engines": {
+ "node": ">= 0.8.0"
+ }
+ },
+ "node_modules/eslint": {
+ "version": "7.32.0",
+ "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.32.0.tgz",
+ "integrity": "sha512-VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA==",
+ "dev": true,
+ "dependencies": {
+ "@babel/code-frame": "7.12.11",
+ "@eslint/eslintrc": "^0.4.3",
+ "@humanwhocodes/config-array": "^0.5.0",
+ "ajv": "^6.10.0",
+ "chalk": "^4.0.0",
+ "cross-spawn": "^7.0.2",
+ "debug": "^4.0.1",
+ "doctrine": "^3.0.0",
+ "enquirer": "^2.3.5",
+ "escape-string-regexp": "^4.0.0",
+ "eslint-scope": "^5.1.1",
+ "eslint-utils": "^2.1.0",
+ "eslint-visitor-keys": "^2.0.0",
+ "espree": "^7.3.1",
+ "esquery": "^1.4.0",
+ "esutils": "^2.0.2",
+ "fast-deep-equal": "^3.1.3",
+ "file-entry-cache": "^6.0.1",
+ "functional-red-black-tree": "^1.0.1",
+ "glob-parent": "^5.1.2",
+ "globals": "^13.6.0",
+ "ignore": "^4.0.6",
+ "import-fresh": "^3.0.0",
+ "imurmurhash": "^0.1.4",
+ "is-glob": "^4.0.0",
+ "js-yaml": "^3.13.1",
+ "json-stable-stringify-without-jsonify": "^1.0.1",
+ "levn": "^0.4.1",
+ "lodash.merge": "^4.6.2",
+ "minimatch": "^3.0.4",
+ "natural-compare": "^1.4.0",
+ "optionator": "^0.9.1",
+ "progress": "^2.0.0",
+ "regexpp": "^3.1.0",
+ "semver": "^7.2.1",
+ "strip-ansi": "^6.0.0",
+ "strip-json-comments": "^3.1.0",
+ "table": "^6.0.9",
+ "text-table": "^0.2.0",
+ "v8-compile-cache": "^2.0.3"
+ },
+ "bin": {
+ "eslint": "bin/eslint.js"
+ },
+ "engines": {
+ "node": "^10.12.0 || >=12.0.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/eslint"
+ }
+ },
+ "node_modules/eslint-config-prettier": {
+ "version": "6.15.0",
+ "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-6.15.0.tgz",
+ "integrity": "sha512-a1+kOYLR8wMGustcgAjdydMsQ2A/2ipRPwRKUmfYaSxc9ZPcrku080Ctl6zrZzZNs/U82MjSv+qKREkoq3bJaw==",
+ "dev": true,
+ "dependencies": {
+ "get-stdin": "^6.0.0"
+ },
+ "bin": {
+ "eslint-config-prettier-check": "bin/cli.js"
+ },
+ "peerDependencies": {
+ "eslint": ">=3.14.1"
+ }
+ },
+ "node_modules/eslint-import-resolver-node": {
+ "version": "0.3.7",
+ "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.7.tgz",
+ "integrity": "sha512-gozW2blMLJCeFpBwugLTGyvVjNoeo1knonXAcatC6bjPBZitotxdWf7Gimr25N4c0AAOo4eOUfaG82IJPDpqCA==",
+ "dev": true,
+ "dependencies": {
+ "debug": "^3.2.7",
+ "is-core-module": "^2.11.0",
+ "resolve": "^1.22.1"
+ }
+ },
+ "node_modules/eslint-import-resolver-node/node_modules/debug": {
+ "version": "3.2.7",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz",
+ "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==",
+ "dev": true,
+ "dependencies": {
+ "ms": "^2.1.1"
+ }
+ },
+ "node_modules/eslint-import-resolver-node/node_modules/resolve": {
+ "version": "1.22.1",
+ "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz",
+ "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==",
+ "dev": true,
+ "dependencies": {
+ "is-core-module": "^2.9.0",
+ "path-parse": "^1.0.7",
+ "supports-preserve-symlinks-flag": "^1.0.0"
+ },
+ "bin": {
+ "resolve": "bin/resolve"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/eslint-module-utils": {
+ "version": "2.7.4",
+ "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.7.4.tgz",
+ "integrity": "sha512-j4GT+rqzCoRKHwURX7pddtIPGySnX9Si/cgMI5ztrcqOPtk5dDEeZ34CQVPphnqkJytlc97Vuk05Um2mJ3gEQA==",
+ "dev": true,
+ "dependencies": {
+ "debug": "^3.2.7"
+ },
+ "engines": {
+ "node": ">=4"
+ },
+ "peerDependenciesMeta": {
+ "eslint": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/eslint-module-utils/node_modules/debug": {
+ "version": "3.2.7",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz",
+ "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==",
+ "dev": true,
+ "dependencies": {
+ "ms": "^2.1.1"
+ }
+ },
+ "node_modules/eslint-plugin-compat": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/eslint-plugin-compat/-/eslint-plugin-compat-4.1.2.tgz",
+ "integrity": "sha512-DNrQgDi5L4mAL4FdFboKBlSRg6MWfd75eA7K91lMjtP5ryN+O11qT2FDn7Z6zqy6sZ4sJawUR5V75qzB6l0CBg==",
+ "dev": true,
+ "dependencies": {
+ "@mdn/browser-compat-data": "^5.2.34",
+ "ast-metadata-inferer": "^0.7.0",
+ "browserslist": "^4.21.5",
+ "caniuse-lite": "^1.0.30001451",
+ "find-up": "^5.0.0",
+ "lodash.memoize": "4.1.2",
+ "semver": "7.3.8"
+ },
+ "engines": {
+ "node": ">=16.x"
+ },
+ "peerDependencies": {
+ "eslint": "^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0"
+ }
+ },
+ "node_modules/eslint-plugin-compat/node_modules/lru-cache": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
+ "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
+ "dev": true,
+ "dependencies": {
+ "yallist": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/eslint-plugin-compat/node_modules/semver": {
+ "version": "7.3.8",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz",
+ "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==",
+ "dev": true,
+ "dependencies": {
+ "lru-cache": "^6.0.0"
+ },
+ "bin": {
+ "semver": "bin/semver.js"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/eslint-plugin-compat/node_modules/yallist": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
+ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
+ "dev": true
+ },
+ "node_modules/eslint-plugin-import": {
+ "version": "2.22.1",
+ "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.22.1.tgz",
+ "integrity": "sha512-8K7JjINHOpH64ozkAhpT3sd+FswIZTfMZTjdx052pnWrgRCVfp8op9tbjpAk3DdUeI/Ba4C8OjdC0r90erHEOw==",
+ "dev": true,
+ "dependencies": {
+ "array-includes": "^3.1.1",
+ "array.prototype.flat": "^1.2.3",
+ "contains-path": "^0.1.0",
+ "debug": "^2.6.9",
+ "doctrine": "1.5.0",
+ "eslint-import-resolver-node": "^0.3.4",
+ "eslint-module-utils": "^2.6.0",
+ "has": "^1.0.3",
+ "minimatch": "^3.0.4",
+ "object.values": "^1.1.1",
+ "read-pkg-up": "^2.0.0",
+ "resolve": "^1.17.0",
+ "tsconfig-paths": "^3.9.0"
+ },
+ "engines": {
+ "node": ">=4"
+ },
+ "peerDependencies": {
+ "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0"
+ }
+ },
+ "node_modules/eslint-plugin-import/node_modules/debug": {
+ "version": "2.6.9",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
+ "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
+ "dev": true,
+ "dependencies": {
+ "ms": "2.0.0"
+ }
+ },
+ "node_modules/eslint-plugin-import/node_modules/doctrine": {
+ "version": "1.5.0",
+ "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-1.5.0.tgz",
+ "integrity": "sha512-lsGyRuYr4/PIB0txi+Fy2xOMI2dGaTguCaotzFGkVZuKR5usKfcRWIFKNM3QNrU7hh/+w2bwTW+ZeXPK5l8uVg==",
+ "dev": true,
+ "dependencies": {
+ "esutils": "^2.0.2",
+ "isarray": "^1.0.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/eslint-plugin-import/node_modules/ms": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
+ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
+ "dev": true
+ },
+ "node_modules/eslint-plugin-jest": {
+ "version": "23.8.2",
+ "resolved": "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-23.8.2.tgz",
+ "integrity": "sha512-xwbnvOsotSV27MtAe7s8uGWOori0nUsrXh2f1EnpmXua8sDfY6VZhHAhHg2sqK7HBNycRQExF074XSZ7DvfoFg==",
+ "dev": true,
+ "dependencies": {
+ "@typescript-eslint/experimental-utils": "^2.5.0"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "peerDependencies": {
+ "eslint": ">=5"
+ }
+ },
+ "node_modules/eslint-restricted-globals": {
+ "version": "0.2.0",
+ "resolved": "https://registry.npmjs.org/eslint-restricted-globals/-/eslint-restricted-globals-0.2.0.tgz",
+ "integrity": "sha512-kwYJALm5KS2QW3Mc1PgObO4V+pTR6RQtRT65L1GQILlEnAhabUQqGAX7/qUjoQR4KZJKehWpBtyDEiDecwmY9A==",
+ "dev": true
+ },
+ "node_modules/eslint-scope": {
+ "version": "5.1.1",
+ "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz",
+ "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==",
+ "dev": true,
+ "dependencies": {
+ "esrecurse": "^4.3.0",
+ "estraverse": "^4.1.1"
+ },
+ "engines": {
+ "node": ">=8.0.0"
+ }
+ },
+ "node_modules/eslint-utils": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz",
+ "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==",
+ "dev": true,
+ "dependencies": {
+ "eslint-visitor-keys": "^1.1.0"
+ },
+ "engines": {
+ "node": ">=6"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/mysticatea"
+ }
+ },
+ "node_modules/eslint-visitor-keys": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz",
+ "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/eslint/node_modules/@babel/code-frame": {
+ "version": "7.12.11",
+ "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz",
+ "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==",
+ "dev": true,
+ "dependencies": {
+ "@babel/highlight": "^7.10.4"
+ }
+ },
+ "node_modules/eslint/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/eslint/node_modules/chalk": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+ "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/chalk?sponsor=1"
+ }
+ },
+ "node_modules/eslint/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/eslint/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/eslint/node_modules/escape-string-regexp": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
+ "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
+ "dev": true,
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/eslint/node_modules/eslint-visitor-keys": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz",
+ "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==",
+ "dev": true,
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/eslint/node_modules/globals": {
+ "version": "13.20.0",
+ "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz",
+ "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==",
+ "dev": true,
+ "dependencies": {
+ "type-fest": "^0.20.2"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/eslint/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/eslint/node_modules/lru-cache": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
+ "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
+ "dev": true,
+ "dependencies": {
+ "yallist": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/eslint/node_modules/semver": {
+ "version": "7.3.8",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz",
+ "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==",
+ "dev": true,
+ "dependencies": {
+ "lru-cache": "^6.0.0"
+ },
+ "bin": {
+ "semver": "bin/semver.js"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/eslint/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/eslint/node_modules/type-fest": {
+ "version": "0.20.2",
+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz",
+ "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/eslint/node_modules/yallist": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
+ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
+ "dev": true
+ },
+ "node_modules/espree": {
+ "version": "7.3.1",
+ "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz",
+ "integrity": "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==",
+ "dev": true,
+ "dependencies": {
+ "acorn": "^7.4.0",
+ "acorn-jsx": "^5.3.1",
+ "eslint-visitor-keys": "^1.3.0"
+ },
+ "engines": {
+ "node": "^10.12.0 || >=12.0.0"
+ }
+ },
+ "node_modules/espree/node_modules/acorn": {
+ "version": "7.4.1",
+ "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz",
+ "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==",
+ "dev": true,
+ "bin": {
+ "acorn": "bin/acorn"
+ },
+ "engines": {
+ "node": ">=0.4.0"
+ }
+ },
+ "node_modules/esprima": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz",
+ "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==",
+ "dev": true,
+ "bin": {
+ "esparse": "bin/esparse.js",
+ "esvalidate": "bin/esvalidate.js"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/esquery": {
+ "version": "1.5.0",
+ "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz",
+ "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==",
+ "dev": true,
+ "dependencies": {
+ "estraverse": "^5.1.0"
+ },
+ "engines": {
+ "node": ">=0.10"
+ }
+ },
+ "node_modules/esquery/node_modules/estraverse": {
+ "version": "5.3.0",
+ "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz",
+ "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==",
+ "dev": true,
+ "engines": {
+ "node": ">=4.0"
+ }
+ },
+ "node_modules/esrecurse": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz",
+ "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==",
+ "dev": true,
+ "dependencies": {
+ "estraverse": "^5.2.0"
+ },
+ "engines": {
+ "node": ">=4.0"
+ }
+ },
+ "node_modules/esrecurse/node_modules/estraverse": {
+ "version": "5.3.0",
+ "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz",
+ "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==",
+ "dev": true,
+ "engines": {
+ "node": ">=4.0"
+ }
+ },
+ "node_modules/estraverse": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz",
+ "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==",
+ "dev": true,
+ "engines": {
+ "node": ">=4.0"
+ }
+ },
+ "node_modules/estree-walker": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-1.0.1.tgz",
+ "integrity": "sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==",
+ "dev": true
+ },
+ "node_modules/esutils": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz",
+ "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/exec-sh": {
+ "version": "0.3.6",
+ "resolved": "https://registry.npmjs.org/exec-sh/-/exec-sh-0.3.6.tgz",
+ "integrity": "sha512-nQn+hI3yp+oD0huYhKwvYI32+JFeq+XkNcD1GAo3Y/MjxsfVGmrrzrnzjWiNY6f+pUCP440fThsFh5gZrRAU/w==",
+ "dev": true
+ },
+ "node_modules/execa": {
+ "version": "3.4.0",
+ "resolved": "https://registry.npmjs.org/execa/-/execa-3.4.0.tgz",
+ "integrity": "sha512-r9vdGQk4bmCuK1yKQu1KTwcT2zwfWdbdaXfCtAh+5nU/4fSX+JAb7vZGvI5naJrQlvONrEB20jeruESI69530g==",
+ "dev": true,
+ "dependencies": {
+ "cross-spawn": "^7.0.0",
+ "get-stream": "^5.0.0",
+ "human-signals": "^1.1.1",
+ "is-stream": "^2.0.0",
+ "merge-stream": "^2.0.0",
+ "npm-run-path": "^4.0.0",
+ "onetime": "^5.1.0",
+ "p-finally": "^2.0.0",
+ "signal-exit": "^3.0.2",
+ "strip-final-newline": "^2.0.0"
+ },
+ "engines": {
+ "node": "^8.12.0 || >=9.7.0"
+ }
+ },
+ "node_modules/exit": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz",
+ "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==",
+ "dev": true,
+ "engines": {
+ "node": ">= 0.8.0"
+ }
+ },
+ "node_modules/expand-brackets": {
+ "version": "2.1.4",
+ "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz",
+ "integrity": "sha512-w/ozOKR9Obk3qoWeY/WDi6MFta9AoMR+zud60mdnbniMcBxRuFJyDt2LdX/14A1UABeqk+Uk+LDfUpvoGKppZA==",
+ "dev": true,
+ "dependencies": {
+ "debug": "^2.3.3",
+ "define-property": "^0.2.5",
+ "extend-shallow": "^2.0.1",
+ "posix-character-classes": "^0.1.0",
+ "regex-not": "^1.0.0",
+ "snapdragon": "^0.8.1",
+ "to-regex": "^3.0.1"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/expand-brackets/node_modules/debug": {
+ "version": "2.6.9",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
+ "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
+ "dev": true,
+ "dependencies": {
+ "ms": "2.0.0"
+ }
+ },
+ "node_modules/expand-brackets/node_modules/define-property": {
+ "version": "0.2.5",
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
+ "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==",
+ "dev": true,
+ "dependencies": {
+ "is-descriptor": "^0.1.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/expand-brackets/node_modules/extend-shallow": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
+ "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==",
+ "dev": true,
+ "dependencies": {
+ "is-extendable": "^0.1.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/expand-brackets/node_modules/is-accessor-descriptor": {
+ "version": "0.1.6",
+ "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz",
+ "integrity": "sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==",
+ "dev": true,
+ "dependencies": {
+ "kind-of": "^3.0.2"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/expand-brackets/node_modules/is-accessor-descriptor/node_modules/kind-of": {
+ "version": "3.2.2",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
+ "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==",
+ "dev": true,
+ "dependencies": {
+ "is-buffer": "^1.1.5"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/expand-brackets/node_modules/is-data-descriptor": {
+ "version": "0.1.4",
+ "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz",
+ "integrity": "sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==",
+ "dev": true,
+ "dependencies": {
+ "kind-of": "^3.0.2"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/expand-brackets/node_modules/is-data-descriptor/node_modules/kind-of": {
+ "version": "3.2.2",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
+ "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==",
+ "dev": true,
+ "dependencies": {
+ "is-buffer": "^1.1.5"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/expand-brackets/node_modules/is-descriptor": {
+ "version": "0.1.6",
+ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz",
+ "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==",
+ "dev": true,
+ "dependencies": {
+ "is-accessor-descriptor": "^0.1.6",
+ "is-data-descriptor": "^0.1.4",
+ "kind-of": "^5.0.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/expand-brackets/node_modules/is-extendable": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz",
+ "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/expand-brackets/node_modules/kind-of": {
+ "version": "5.1.0",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz",
+ "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/expand-brackets/node_modules/ms": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
+ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
+ "dev": true
+ },
+ "node_modules/expect": {
+ "version": "25.5.0",
+ "resolved": "https://registry.npmjs.org/expect/-/expect-25.5.0.tgz",
+ "integrity": "sha512-w7KAXo0+6qqZZhovCaBVPSIqQp7/UTcx4M9uKt2m6pd2VB1voyC8JizLRqeEqud3AAVP02g+hbErDu5gu64tlA==",
+ "dev": true,
+ "dependencies": {
+ "@jest/types": "^25.5.0",
+ "ansi-styles": "^4.0.0",
+ "jest-get-type": "^25.2.6",
+ "jest-matcher-utils": "^25.5.0",
+ "jest-message-util": "^25.5.0",
+ "jest-regex-util": "^25.2.6"
+ },
+ "engines": {
+ "node": ">= 8.3"
+ }
+ },
+ "node_modules/expect/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/expect/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/expect/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/extend": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz",
+ "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==",
+ "dev": true
+ },
+ "node_modules/extend-shallow": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz",
+ "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==",
+ "dev": true,
+ "dependencies": {
+ "assign-symbols": "^1.0.0",
+ "is-extendable": "^1.0.1"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/extglob": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz",
+ "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==",
+ "dev": true,
+ "dependencies": {
+ "array-unique": "^0.3.2",
+ "define-property": "^1.0.0",
+ "expand-brackets": "^2.1.4",
+ "extend-shallow": "^2.0.1",
+ "fragment-cache": "^0.2.1",
+ "regex-not": "^1.0.0",
+ "snapdragon": "^0.8.1",
+ "to-regex": "^3.0.1"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/extglob/node_modules/define-property": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz",
+ "integrity": "sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==",
+ "dev": true,
+ "dependencies": {
+ "is-descriptor": "^1.0.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/extglob/node_modules/extend-shallow": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
+ "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==",
+ "dev": true,
+ "dependencies": {
+ "is-extendable": "^0.1.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/extglob/node_modules/is-extendable": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz",
+ "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/extsprintf": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz",
+ "integrity": "sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==",
+ "dev": true,
+ "engines": [
+ "node >=0.6.0"
+ ]
+ },
+ "node_modules/fast-deep-equal": {
+ "version": "3.1.3",
+ "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
+ "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==",
+ "dev": true
+ },
+ "node_modules/fast-glob": {
+ "version": "3.2.12",
+ "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz",
+ "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==",
+ "dev": true,
+ "dependencies": {
+ "@nodelib/fs.stat": "^2.0.2",
+ "@nodelib/fs.walk": "^1.2.3",
+ "glob-parent": "^5.1.2",
+ "merge2": "^1.3.0",
+ "micromatch": "^4.0.4"
+ },
+ "engines": {
+ "node": ">=8.6.0"
+ }
+ },
+ "node_modules/fast-json-stable-stringify": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
+ "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==",
+ "dev": true
+ },
+ "node_modules/fast-levenshtein": {
+ "version": "2.0.6",
+ "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
+ "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==",
+ "dev": true
+ },
+ "node_modules/fastq": {
+ "version": "1.15.0",
+ "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz",
+ "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==",
+ "dev": true,
+ "dependencies": {
+ "reusify": "^1.0.4"
+ }
+ },
+ "node_modules/fb-watchman": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz",
+ "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==",
+ "dev": true,
+ "dependencies": {
+ "bser": "2.1.1"
+ }
+ },
+ "node_modules/file-entry-cache": {
+ "version": "6.0.1",
+ "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz",
+ "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==",
+ "dev": true,
+ "dependencies": {
+ "flat-cache": "^3.0.4"
+ },
+ "engines": {
+ "node": "^10.12.0 || >=12.0.0"
+ }
+ },
+ "node_modules/fill-range": {
+ "version": "7.0.1",
+ "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
+ "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
+ "dev": true,
+ "dependencies": {
+ "to-regex-range": "^5.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/find-up": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz",
+ "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==",
+ "dev": true,
+ "dependencies": {
+ "locate-path": "^6.0.0",
+ "path-exists": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/find-versions": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/find-versions/-/find-versions-4.0.0.tgz",
+ "integrity": "sha512-wgpWy002tA+wgmO27buH/9KzyEOQnKsG/R0yrcjPT9BOFm0zRBVQbZ95nRGXWMywS8YR5knRbpohio0bcJABxQ==",
+ "dev": true,
+ "dependencies": {
+ "semver-regex": "^3.1.2"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/flat-cache": {
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz",
+ "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==",
+ "dev": true,
+ "dependencies": {
+ "flatted": "^3.1.0",
+ "rimraf": "^3.0.2"
+ },
+ "engines": {
+ "node": "^10.12.0 || >=12.0.0"
+ }
+ },
+ "node_modules/flatted": {
+ "version": "3.2.7",
+ "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz",
+ "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==",
+ "dev": true
+ },
+ "node_modules/follow-redirects": {
+ "version": "1.15.2",
+ "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz",
+ "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "individual",
+ "url": "https://github.com/sponsors/RubenVerborgh"
+ }
+ ],
+ "engines": {
+ "node": ">=4.0"
+ },
+ "peerDependenciesMeta": {
+ "debug": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/for-each": {
+ "version": "0.3.3",
+ "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz",
+ "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==",
+ "dev": true,
+ "dependencies": {
+ "is-callable": "^1.1.3"
+ }
+ },
+ "node_modules/for-in": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz",
+ "integrity": "sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/forever-agent": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz",
+ "integrity": "sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==",
+ "dev": true,
+ "engines": {
+ "node": "*"
+ }
+ },
+ "node_modules/form-data": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz",
+ "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==",
+ "dev": true,
+ "dependencies": {
+ "asynckit": "^0.4.0",
+ "combined-stream": "^1.0.8",
+ "mime-types": "^2.1.12"
+ },
+ "engines": {
+ "node": ">= 6"
+ }
+ },
+ "node_modules/fragment-cache": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz",
+ "integrity": "sha512-GMBAbW9antB8iZRHLoGw0b3HANt57diZYFO/HL1JGIC1MjKrdmhxvrJbupnVvpys0zsz7yBApXdQyfepKly2kA==",
+ "dev": true,
+ "dependencies": {
+ "map-cache": "^0.2.2"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/fs.realpath": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
+ "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==",
+ "dev": true
+ },
+ "node_modules/fsevents": {
+ "version": "2.3.2",
+ "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz",
+ "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==",
+ "dev": true,
+ "hasInstallScript": true,
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": "^8.16.0 || ^10.6.0 || >=11.0.0"
+ }
+ },
+ "node_modules/function-bind": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
+ "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==",
+ "dev": true
+ },
+ "node_modules/function.prototype.name": {
+ "version": "1.1.5",
+ "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz",
+ "integrity": "sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==",
+ "dev": true,
+ "dependencies": {
+ "call-bind": "^1.0.2",
+ "define-properties": "^1.1.3",
+ "es-abstract": "^1.19.0",
+ "functions-have-names": "^1.2.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/functional-red-black-tree": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz",
+ "integrity": "sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g==",
+ "dev": true
+ },
+ "node_modules/functions-have-names": {
+ "version": "1.2.3",
+ "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz",
+ "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==",
+ "dev": true,
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/gensync": {
+ "version": "1.0.0-beta.2",
+ "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz",
+ "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==",
+ "dev": true,
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/get-caller-file": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
+ "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==",
+ "dev": true,
+ "engines": {
+ "node": "6.* || 8.* || >= 10.*"
+ }
+ },
+ "node_modules/get-intrinsic": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.0.tgz",
+ "integrity": "sha512-L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q==",
+ "dev": true,
+ "dependencies": {
+ "function-bind": "^1.1.1",
+ "has": "^1.0.3",
+ "has-symbols": "^1.0.3"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/get-own-enumerable-property-symbols": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz",
+ "integrity": "sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==",
+ "dev": true
+ },
+ "node_modules/get-package-type": {
+ "version": "0.1.0",
+ "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz",
+ "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==",
+ "dev": true,
+ "engines": {
+ "node": ">=8.0.0"
+ }
+ },
+ "node_modules/get-stdin": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-6.0.0.tgz",
+ "integrity": "sha512-jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g==",
+ "dev": true,
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/get-stream": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz",
+ "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==",
+ "dev": true,
+ "dependencies": {
+ "pump": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/get-symbol-description": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz",
+ "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==",
+ "dev": true,
+ "dependencies": {
+ "call-bind": "^1.0.2",
+ "get-intrinsic": "^1.1.1"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/get-value": {
+ "version": "2.0.6",
+ "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz",
+ "integrity": "sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/getpass": {
+ "version": "0.1.7",
+ "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz",
+ "integrity": "sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==",
+ "dev": true,
+ "dependencies": {
+ "assert-plus": "^1.0.0"
+ }
+ },
+ "node_modules/glob": {
+ "version": "7.2.3",
+ "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
+ "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==",
+ "dev": true,
+ "dependencies": {
+ "fs.realpath": "^1.0.0",
+ "inflight": "^1.0.4",
+ "inherits": "2",
+ "minimatch": "^3.1.1",
+ "once": "^1.3.0",
+ "path-is-absolute": "^1.0.0"
+ },
+ "engines": {
+ "node": "*"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
+ },
+ "node_modules/glob-parent": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
+ "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
+ "dev": true,
+ "dependencies": {
+ "is-glob": "^4.0.1"
+ },
+ "engines": {
+ "node": ">= 6"
+ }
+ },
+ "node_modules/globals": {
+ "version": "11.12.0",
+ "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz",
+ "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==",
+ "dev": true,
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/globalthis": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz",
+ "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==",
+ "dev": true,
+ "dependencies": {
+ "define-properties": "^1.1.3"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/gopd": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz",
+ "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==",
+ "dev": true,
+ "dependencies": {
+ "get-intrinsic": "^1.1.3"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/graceful-fs": {
+ "version": "4.2.11",
+ "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz",
+ "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==",
+ "dev": true
+ },
+ "node_modules/growly": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/growly/-/growly-1.3.0.tgz",
+ "integrity": "sha512-+xGQY0YyAWCnqy7Cd++hc2JqMYzlm0dG30Jd0beaA64sROr8C4nt8Yc9V5Ro3avlSUDTN0ulqP/VBKi1/lLygw==",
+ "dev": true,
+ "optional": true
+ },
+ "node_modules/har-schema": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz",
+ "integrity": "sha512-Oqluz6zhGX8cyRaTQlFMPw80bSJVG2x/cFb8ZPhUILGgHka9SsokCCOQgpveePerqidZOrT14ipqfJb7ILcW5Q==",
+ "dev": true,
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/har-validator": {
+ "version": "5.1.5",
+ "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz",
+ "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==",
+ "deprecated": "this library is no longer supported",
+ "dev": true,
+ "dependencies": {
+ "ajv": "^6.12.3",
+ "har-schema": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/has": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
+ "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
+ "dev": true,
+ "dependencies": {
+ "function-bind": "^1.1.1"
+ },
+ "engines": {
+ "node": ">= 0.4.0"
+ }
+ },
+ "node_modules/has-bigints": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz",
+ "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==",
+ "dev": true,
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/has-flag": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
+ "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==",
+ "dev": true,
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/has-property-descriptors": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz",
+ "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==",
+ "dev": true,
+ "dependencies": {
+ "get-intrinsic": "^1.1.1"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/has-proto": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz",
+ "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==",
+ "dev": true,
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/has-symbols": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz",
+ "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==",
+ "dev": true,
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/has-tostringtag": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz",
+ "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==",
+ "dev": true,
+ "dependencies": {
+ "has-symbols": "^1.0.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/has-value": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz",
+ "integrity": "sha512-IBXk4GTsLYdQ7Rvt+GRBrFSVEkmuOUy4re0Xjd9kJSUQpnTrWR4/y9RpfexN9vkAPMFuQoeWKwqzPozRTlasGw==",
+ "dev": true,
+ "dependencies": {
+ "get-value": "^2.0.6",
+ "has-values": "^1.0.0",
+ "isobject": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/has-value/node_modules/isobject": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz",
+ "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/has-values": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz",
+ "integrity": "sha512-ODYZC64uqzmtfGMEAX/FvZiRyWLpAC3vYnNunURUnkGVTS+mI0smVsWaPydRBsE3g+ok7h960jChO8mFcWlHaQ==",
+ "dev": true,
+ "dependencies": {
+ "is-number": "^3.0.0",
+ "kind-of": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/has-values/node_modules/is-number": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz",
+ "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==",
+ "dev": true,
+ "dependencies": {
+ "kind-of": "^3.0.2"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/has-values/node_modules/is-number/node_modules/kind-of": {
+ "version": "3.2.2",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
+ "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==",
+ "dev": true,
+ "dependencies": {
+ "is-buffer": "^1.1.5"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/has-values/node_modules/kind-of": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz",
+ "integrity": "sha512-24XsCxmEbRwEDbz/qz3stgin8TTzZ1ESR56OMCN0ujYg+vRutNSiOj9bHH9u85DKgXguraugV5sFuvbD4FW/hw==",
+ "dev": true,
+ "dependencies": {
+ "is-buffer": "^1.1.5"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/he": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz",
+ "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==",
+ "dev": true,
+ "bin": {
+ "he": "bin/he"
+ }
+ },
+ "node_modules/hex-color-regex": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/hex-color-regex/-/hex-color-regex-1.1.0.tgz",
+ "integrity": "sha512-l9sfDFsuqtOqKDsQdqrMRk0U85RZc0RtOR9yPI7mRVOa4FsR/BVnZ0shmQRM96Ji99kYZP/7hn1cedc1+ApsTQ==",
+ "dev": true
+ },
+ "node_modules/hosted-git-info": {
+ "version": "2.8.9",
+ "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz",
+ "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==",
+ "dev": true
+ },
+ "node_modules/hsl-regex": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/hsl-regex/-/hsl-regex-1.0.0.tgz",
+ "integrity": "sha512-M5ezZw4LzXbBKMruP+BNANf0k+19hDQMgpzBIYnya//Al+fjNct9Wf3b1WedLqdEs2hKBvxq/jh+DsHJLj0F9A==",
+ "dev": true
+ },
+ "node_modules/hsla-regex": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/hsla-regex/-/hsla-regex-1.0.0.tgz",
+ "integrity": "sha512-7Wn5GMLuHBjZCb2bTmnDOycho0p/7UVaAeqXZGbHrBCl6Yd/xDhQJAXe6Ga9AXJH2I5zY1dEdYw2u1UptnSBJA==",
+ "dev": true
+ },
+ "node_modules/html-encoding-sniffer": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-1.0.2.tgz",
+ "integrity": "sha512-71lZziiDnsuabfdYiUeWdCVyKuqwWi23L8YeIgV9jSSZHCtb6wB1BKWooH7L3tn4/FuZJMVWyNaIDr4RGmaSYw==",
+ "dev": true,
+ "dependencies": {
+ "whatwg-encoding": "^1.0.1"
+ }
+ },
+ "node_modules/html-escaper": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz",
+ "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==",
+ "dev": true
+ },
+ "node_modules/http-signature": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz",
+ "integrity": "sha512-CAbnr6Rz4CYQkLYUtSNXxQPUH2gK8f3iWexVlsnMeD+GjlsQ0Xsy1cOX+mN3dtxYomRy21CiOzU8Uhw6OwncEQ==",
+ "dev": true,
+ "dependencies": {
+ "assert-plus": "^1.0.0",
+ "jsprim": "^1.2.2",
+ "sshpk": "^1.7.0"
+ },
+ "engines": {
+ "node": ">=0.8",
+ "npm": ">=1.3.7"
+ }
+ },
+ "node_modules/human-signals": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz",
+ "integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==",
+ "dev": true,
+ "engines": {
+ "node": ">=8.12.0"
+ }
+ },
+ "node_modules/husky": {
+ "version": "4.3.8",
+ "resolved": "https://registry.npmjs.org/husky/-/husky-4.3.8.tgz",
+ "integrity": "sha512-LCqqsB0PzJQ/AlCgfrfzRe3e3+NvmefAdKQhRYpxS4u6clblBoDdzzvHi8fmxKRzvMxPY/1WZWzomPZww0Anow==",
+ "dev": true,
+ "hasInstallScript": true,
+ "dependencies": {
+ "chalk": "^4.0.0",
+ "ci-info": "^2.0.0",
+ "compare-versions": "^3.6.0",
+ "cosmiconfig": "^7.0.0",
+ "find-versions": "^4.0.0",
+ "opencollective-postinstall": "^2.0.2",
+ "pkg-dir": "^5.0.0",
+ "please-upgrade-node": "^3.2.0",
+ "slash": "^3.0.0",
+ "which-pm-runs": "^1.0.0"
+ },
+ "bin": {
+ "husky-run": "bin/run.js",
+ "husky-upgrade": "lib/upgrader/bin.js"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/husky"
+ }
+ },
+ "node_modules/husky/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/husky/node_modules/chalk": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+ "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/chalk?sponsor=1"
+ }
+ },
+ "node_modules/husky/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/husky/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/husky/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/husky/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/iconv-lite": {
+ "version": "0.4.24",
+ "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
+ "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==",
+ "dev": true,
+ "dependencies": {
+ "safer-buffer": ">= 2.1.2 < 3"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/ignore": {
+ "version": "4.0.6",
+ "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz",
+ "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==",
+ "dev": true,
+ "engines": {
+ "node": ">= 4"
+ }
+ },
+ "node_modules/import-fresh": {
+ "version": "3.3.0",
+ "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz",
+ "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==",
+ "dev": true,
+ "dependencies": {
+ "parent-module": "^1.0.0",
+ "resolve-from": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=6"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/import-local": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz",
+ "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==",
+ "dev": true,
+ "dependencies": {
+ "pkg-dir": "^4.2.0",
+ "resolve-cwd": "^3.0.0"
+ },
+ "bin": {
+ "import-local-fixture": "fixtures/cli.js"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/import-local/node_modules/find-up": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
+ "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
+ "dev": true,
+ "dependencies": {
+ "locate-path": "^5.0.0",
+ "path-exists": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/import-local/node_modules/locate-path": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
+ "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
+ "dev": true,
+ "dependencies": {
+ "p-locate": "^4.1.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/import-local/node_modules/p-limit": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
+ "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
+ "dev": true,
+ "dependencies": {
+ "p-try": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=6"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/import-local/node_modules/p-locate": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
+ "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
+ "dev": true,
+ "dependencies": {
+ "p-limit": "^2.2.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/import-local/node_modules/pkg-dir": {
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz",
+ "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==",
+ "dev": true,
+ "dependencies": {
+ "find-up": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/imurmurhash": {
+ "version": "0.1.4",
+ "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
+ "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.8.19"
+ }
+ },
+ "node_modules/indent-string": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz",
+ "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/indexes-of": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz",
+ "integrity": "sha512-bup+4tap3Hympa+JBJUG7XuOsdNQ6fxt0MHyXMKuLBKn0OqsTfvUxkUrroEX1+B2VsSHvCjiIcZVxRtYa4nllA==",
+ "dev": true
+ },
+ "node_modules/inflight": {
+ "version": "1.0.6",
+ "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
+ "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==",
+ "dev": true,
+ "dependencies": {
+ "once": "^1.3.0",
+ "wrappy": "1"
+ }
+ },
+ "node_modules/inherits": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
+ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
+ "dev": true
+ },
+ "node_modules/internal-slot": {
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.5.tgz",
+ "integrity": "sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==",
+ "dev": true,
+ "dependencies": {
+ "get-intrinsic": "^1.2.0",
+ "has": "^1.0.3",
+ "side-channel": "^1.0.4"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/ip-regex": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-2.1.0.tgz",
+ "integrity": "sha512-58yWmlHpp7VYfcdTwMTvwMmqx/Elfxjd9RXTDyMsbL7lLWmhMylLEqiYVLKuLzOZqVgiWXD9MfR62Vv89VRxkw==",
+ "dev": true,
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/is-absolute-url": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/is-absolute-url/-/is-absolute-url-2.1.0.tgz",
+ "integrity": "sha512-vOx7VprsKyllwjSkLV79NIhpyLfr3jAp7VaTCMXOJHu4m0Ew1CZ2fcjASwmV1jI3BWuWHB013M48eyeldk9gYg==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/is-accessor-descriptor": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz",
+ "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==",
+ "dev": true,
+ "dependencies": {
+ "kind-of": "^6.0.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/is-array-buffer": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz",
+ "integrity": "sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==",
+ "dev": true,
+ "dependencies": {
+ "call-bind": "^1.0.2",
+ "get-intrinsic": "^1.2.0",
+ "is-typed-array": "^1.1.10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/is-arrayish": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz",
+ "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==",
+ "dev": true
+ },
+ "node_modules/is-bigint": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz",
+ "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==",
+ "dev": true,
+ "dependencies": {
+ "has-bigints": "^1.0.1"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/is-boolean-object": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz",
+ "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==",
+ "dev": true,
+ "dependencies": {
+ "call-bind": "^1.0.2",
+ "has-tostringtag": "^1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/is-buffer": {
+ "version": "1.1.6",
+ "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz",
+ "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==",
+ "dev": true
+ },
+ "node_modules/is-callable": {
+ "version": "1.2.7",
+ "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz",
+ "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==",
+ "dev": true,
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/is-ci": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz",
+ "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==",
+ "dev": true,
+ "dependencies": {
+ "ci-info": "^2.0.0"
+ },
+ "bin": {
+ "is-ci": "bin.js"
+ }
+ },
+ "node_modules/is-color-stop": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/is-color-stop/-/is-color-stop-1.1.0.tgz",
+ "integrity": "sha512-H1U8Vz0cfXNujrJzEcvvwMDW9Ra+biSYA3ThdQvAnMLJkEHQXn6bWzLkxHtVYJ+Sdbx0b6finn3jZiaVe7MAHA==",
+ "dev": true,
+ "dependencies": {
+ "css-color-names": "^0.0.4",
+ "hex-color-regex": "^1.1.0",
+ "hsl-regex": "^1.0.0",
+ "hsla-regex": "^1.0.0",
+ "rgb-regex": "^1.0.1",
+ "rgba-regex": "^1.0.0"
+ }
+ },
+ "node_modules/is-core-module": {
+ "version": "2.11.0",
+ "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz",
+ "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==",
+ "dev": true,
+ "dependencies": {
+ "has": "^1.0.3"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/is-data-descriptor": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz",
+ "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==",
+ "dev": true,
+ "dependencies": {
+ "kind-of": "^6.0.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/is-date-object": {
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz",
+ "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==",
+ "dev": true,
+ "dependencies": {
+ "has-tostringtag": "^1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/is-descriptor": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz",
+ "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==",
+ "dev": true,
+ "dependencies": {
+ "is-accessor-descriptor": "^1.0.0",
+ "is-data-descriptor": "^1.0.0",
+ "kind-of": "^6.0.2"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/is-docker": {
+ "version": "2.2.1",
+ "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz",
+ "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==",
+ "dev": true,
+ "optional": true,
+ "bin": {
+ "is-docker": "cli.js"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/is-extendable": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz",
+ "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==",
+ "dev": true,
+ "dependencies": {
+ "is-plain-object": "^2.0.4"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/is-extglob": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
+ "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/is-fullwidth-code-point": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
+ "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/is-generator-fn": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz",
+ "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/is-glob": {
+ "version": "4.0.3",
+ "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz",
+ "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==",
+ "dev": true,
+ "dependencies": {
+ "is-extglob": "^2.1.1"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/is-negative-zero": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz",
+ "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==",
+ "dev": true,
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/is-number": {
+ "version": "7.0.0",
+ "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
+ "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.12.0"
+ }
+ },
+ "node_modules/is-number-object": {
+ "version": "1.0.7",
+ "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz",
+ "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==",
+ "dev": true,
+ "dependencies": {
+ "has-tostringtag": "^1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/is-obj": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz",
+ "integrity": "sha512-l4RyHgRqGN4Y3+9JHVrNqO+tN0rV5My76uW5/nuO4K1b6vw5G8d/cmFjP9tRfEsdhZNt0IFdZuK/c2Vr4Nb+Qg==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/is-plain-object": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz",
+ "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==",
+ "dev": true,
+ "dependencies": {
+ "isobject": "^3.0.1"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/is-plain-object/node_modules/isobject": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz",
+ "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/is-regex": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz",
+ "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==",
+ "dev": true,
+ "dependencies": {
+ "call-bind": "^1.0.2",
+ "has-tostringtag": "^1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/is-regexp": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-regexp/-/is-regexp-1.0.0.tgz",
+ "integrity": "sha512-7zjFAPO4/gwyQAAgRRmqeEeyIICSdmCqa3tsVHMdBzaXXRiqopZL4Cyghg/XulGWrtABTpbnYYzzIRffLkP4oA==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/is-shared-array-buffer": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz",
+ "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==",
+ "dev": true,
+ "dependencies": {
+ "call-bind": "^1.0.2"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/is-stream": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz",
+ "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/is-string": {
+ "version": "1.0.7",
+ "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz",
+ "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==",
+ "dev": true,
+ "dependencies": {
+ "has-tostringtag": "^1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/is-symbol": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz",
+ "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==",
+ "dev": true,
+ "dependencies": {
+ "has-symbols": "^1.0.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/is-typed-array": {
+ "version": "1.1.10",
+ "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.10.tgz",
+ "integrity": "sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A==",
+ "dev": true,
+ "dependencies": {
+ "available-typed-arrays": "^1.0.5",
+ "call-bind": "^1.0.2",
+ "for-each": "^0.3.3",
+ "gopd": "^1.0.1",
+ "has-tostringtag": "^1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/is-typedarray": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz",
+ "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==",
+ "dev": true
+ },
+ "node_modules/is-unicode-supported": {
+ "version": "0.1.0",
+ "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz",
+ "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==",
+ "dev": true,
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/is-weakref": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz",
+ "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==",
+ "dev": true,
+ "dependencies": {
+ "call-bind": "^1.0.2"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/is-windows": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz",
+ "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/is-wsl": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz",
+ "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==",
+ "dev": true,
+ "optional": true,
+ "dependencies": {
+ "is-docker": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/isarray": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
+ "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==",
+ "dev": true
+ },
+ "node_modules/isexe": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
+ "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==",
+ "dev": true
+ },
+ "node_modules/isobject": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz",
+ "integrity": "sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA==",
+ "dev": true,
+ "dependencies": {
+ "isarray": "1.0.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/isstream": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz",
+ "integrity": "sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==",
+ "dev": true
+ },
+ "node_modules/istanbul-lib-coverage": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz",
+ "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/istanbul-lib-instrument": {
+ "version": "4.0.3",
+ "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz",
+ "integrity": "sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ==",
+ "dev": true,
+ "dependencies": {
+ "@babel/core": "^7.7.5",
+ "@istanbuljs/schema": "^0.1.2",
+ "istanbul-lib-coverage": "^3.0.0",
+ "semver": "^6.3.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/istanbul-lib-report": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz",
+ "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==",
+ "dev": true,
+ "dependencies": {
+ "istanbul-lib-coverage": "^3.0.0",
+ "make-dir": "^3.0.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/istanbul-lib-report/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/istanbul-lib-report/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/istanbul-lib-source-maps": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz",
+ "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==",
+ "dev": true,
+ "dependencies": {
+ "debug": "^4.1.1",
+ "istanbul-lib-coverage": "^3.0.0",
+ "source-map": "^0.6.1"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/istanbul-lib-source-maps/node_modules/source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/istanbul-reports": {
+ "version": "3.1.5",
+ "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.5.tgz",
+ "integrity": "sha512-nUsEMa9pBt/NOHqbcbeJEgqIlY/K7rVWUX6Lql2orY5e9roQOthbR3vtY4zzf2orPELg80fnxxk9zUyPlgwD1w==",
+ "dev": true,
+ "dependencies": {
+ "html-escaper": "^2.0.0",
+ "istanbul-lib-report": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest": {
+ "version": "25.5.4",
+ "resolved": "https://registry.npmjs.org/jest/-/jest-25.5.4.tgz",
+ "integrity": "sha512-hHFJROBTqZahnO+X+PMtT6G2/ztqAZJveGqz//FnWWHurizkD05PQGzRZOhF3XP6z7SJmL+5tCfW8qV06JypwQ==",
+ "dev": true,
+ "dependencies": {
+ "@jest/core": "^25.5.4",
+ "import-local": "^3.0.2",
+ "jest-cli": "^25.5.4"
+ },
+ "bin": {
+ "jest": "bin/jest.js"
+ },
+ "engines": {
+ "node": ">= 8.3"
+ }
+ },
+ "node_modules/jest-changed-files": {
+ "version": "25.5.0",
+ "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-25.5.0.tgz",
+ "integrity": "sha512-EOw9QEqapsDT7mKF162m8HFzRPbmP8qJQny6ldVOdOVBz3ACgPm/1nAn5fPQ/NDaYhX/AHkrGwwkCncpAVSXcw==",
+ "dev": true,
+ "dependencies": {
+ "@jest/types": "^25.5.0",
+ "execa": "^3.2.0",
+ "throat": "^5.0.0"
+ },
+ "engines": {
+ "node": ">= 8.3"
+ }
+ },
+ "node_modules/jest-cli": {
+ "version": "25.5.4",
+ "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-25.5.4.tgz",
+ "integrity": "sha512-rG8uJkIiOUpnREh1768/N3n27Cm+xPFkSNFO91tgg+8o2rXeVLStz+vkXkGr4UtzH6t1SNbjwoiswd7p4AhHTw==",
+ "dev": true,
+ "dependencies": {
+ "@jest/core": "^25.5.4",
+ "@jest/test-result": "^25.5.0",
+ "@jest/types": "^25.5.0",
+ "chalk": "^3.0.0",
+ "exit": "^0.1.2",
+ "graceful-fs": "^4.2.4",
+ "import-local": "^3.0.2",
+ "is-ci": "^2.0.0",
+ "jest-config": "^25.5.4",
+ "jest-util": "^25.5.0",
+ "jest-validate": "^25.5.0",
+ "prompts": "^2.0.1",
+ "realpath-native": "^2.0.0",
+ "yargs": "^15.3.1"
+ },
+ "bin": {
+ "jest": "bin/jest.js"
+ },
+ "engines": {
+ "node": ">= 8.3"
+ }
+ },
+ "node_modules/jest-cli/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/jest-cli/node_modules/chalk": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz",
+ "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-cli/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/jest-cli/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/jest-cli/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-cli/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-config": {
+ "version": "25.5.4",
+ "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-25.5.4.tgz",
+ "integrity": "sha512-SZwR91SwcdK6bz7Gco8qL7YY2sx8tFJYzvg216DLihTWf+LKY/DoJXpM9nTzYakSyfblbqeU48p/p7Jzy05Atg==",
+ "dev": true,
+ "dependencies": {
+ "@babel/core": "^7.1.0",
+ "@jest/test-sequencer": "^25.5.4",
+ "@jest/types": "^25.5.0",
+ "babel-jest": "^25.5.1",
+ "chalk": "^3.0.0",
+ "deepmerge": "^4.2.2",
+ "glob": "^7.1.1",
+ "graceful-fs": "^4.2.4",
+ "jest-environment-jsdom": "^25.5.0",
+ "jest-environment-node": "^25.5.0",
+ "jest-get-type": "^25.2.6",
+ "jest-jasmine2": "^25.5.4",
+ "jest-regex-util": "^25.2.6",
+ "jest-resolve": "^25.5.1",
+ "jest-util": "^25.5.0",
+ "jest-validate": "^25.5.0",
+ "micromatch": "^4.0.2",
+ "pretty-format": "^25.5.0",
+ "realpath-native": "^2.0.0"
+ },
+ "engines": {
+ "node": ">= 8.3"
+ }
+ },
+ "node_modules/jest-config/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/jest-config/node_modules/chalk": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz",
+ "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-config/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/jest-config/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/jest-config/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-config/node_modules/pretty-format": {
+ "version": "25.5.0",
+ "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-25.5.0.tgz",
+ "integrity": "sha512-kbo/kq2LQ/A/is0PQwsEHM7Ca6//bGPPvU6UnsdDRSKTWxT/ru/xb88v4BJf6a69H+uTytOEsTusT9ksd/1iWQ==",
+ "dev": true,
+ "dependencies": {
+ "@jest/types": "^25.5.0",
+ "ansi-regex": "^5.0.0",
+ "ansi-styles": "^4.0.0",
+ "react-is": "^16.12.0"
+ },
+ "engines": {
+ "node": ">= 8.3"
+ }
+ },
+ "node_modules/jest-config/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-diff": {
+ "version": "25.5.0",
+ "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-25.5.0.tgz",
+ "integrity": "sha512-z1kygetuPiREYdNIumRpAHY6RXiGmp70YHptjdaxTWGmA085W3iCnXNx0DhflK3vwrKmrRWyY1wUpkPMVxMK7A==",
+ "dev": true,
+ "dependencies": {
+ "chalk": "^3.0.0",
+ "diff-sequences": "^25.2.6",
+ "jest-get-type": "^25.2.6",
+ "pretty-format": "^25.5.0"
+ },
+ "engines": {
+ "node": ">= 8.3"
+ }
+ },
+ "node_modules/jest-diff/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/jest-diff/node_modules/chalk": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz",
+ "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-diff/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/jest-diff/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/jest-diff/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-diff/node_modules/pretty-format": {
+ "version": "25.5.0",
+ "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-25.5.0.tgz",
+ "integrity": "sha512-kbo/kq2LQ/A/is0PQwsEHM7Ca6//bGPPvU6UnsdDRSKTWxT/ru/xb88v4BJf6a69H+uTytOEsTusT9ksd/1iWQ==",
+ "dev": true,
+ "dependencies": {
+ "@jest/types": "^25.5.0",
+ "ansi-regex": "^5.0.0",
+ "ansi-styles": "^4.0.0",
+ "react-is": "^16.12.0"
+ },
+ "engines": {
+ "node": ">= 8.3"
+ }
+ },
+ "node_modules/jest-diff/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-docblock": {
+ "version": "25.3.0",
+ "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-25.3.0.tgz",
+ "integrity": "sha512-aktF0kCar8+zxRHxQZwxMy70stc9R1mOmrLsT5VO3pIT0uzGRSDAXxSlz4NqQWpuLjPpuMhPRl7H+5FRsvIQAg==",
+ "dev": true,
+ "dependencies": {
+ "detect-newline": "^3.0.0"
+ },
+ "engines": {
+ "node": ">= 8.3"
+ }
+ },
+ "node_modules/jest-each": {
+ "version": "25.5.0",
+ "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-25.5.0.tgz",
+ "integrity": "sha512-QBogUxna3D8vtiItvn54xXde7+vuzqRrEeaw8r1s+1TG9eZLVJE5ZkKoSUlqFwRjnlaA4hyKGiu9OlkFIuKnjA==",
+ "dev": true,
+ "dependencies": {
+ "@jest/types": "^25.5.0",
+ "chalk": "^3.0.0",
+ "jest-get-type": "^25.2.6",
+ "jest-util": "^25.5.0",
+ "pretty-format": "^25.5.0"
+ },
+ "engines": {
+ "node": ">= 8.3"
+ }
+ },
+ "node_modules/jest-each/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/jest-each/node_modules/chalk": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz",
+ "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-each/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/jest-each/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/jest-each/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-each/node_modules/pretty-format": {
+ "version": "25.5.0",
+ "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-25.5.0.tgz",
+ "integrity": "sha512-kbo/kq2LQ/A/is0PQwsEHM7Ca6//bGPPvU6UnsdDRSKTWxT/ru/xb88v4BJf6a69H+uTytOEsTusT9ksd/1iWQ==",
+ "dev": true,
+ "dependencies": {
+ "@jest/types": "^25.5.0",
+ "ansi-regex": "^5.0.0",
+ "ansi-styles": "^4.0.0",
+ "react-is": "^16.12.0"
+ },
+ "engines": {
+ "node": ">= 8.3"
+ }
+ },
+ "node_modules/jest-each/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-environment-jsdom": {
+ "version": "25.5.0",
+ "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-25.5.0.tgz",
+ "integrity": "sha512-7Jr02ydaq4jaWMZLY+Skn8wL5nVIYpWvmeatOHL3tOcV3Zw8sjnPpx+ZdeBfc457p8jCR9J6YCc+Lga0oIy62A==",
+ "dev": true,
+ "dependencies": {
+ "@jest/environment": "^25.5.0",
+ "@jest/fake-timers": "^25.5.0",
+ "@jest/types": "^25.5.0",
+ "jest-mock": "^25.5.0",
+ "jest-util": "^25.5.0",
+ "jsdom": "^15.2.1"
+ },
+ "engines": {
+ "node": ">= 8.3"
+ }
+ },
+ "node_modules/jest-environment-node": {
+ "version": "25.5.0",
+ "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-25.5.0.tgz",
+ "integrity": "sha512-iuxK6rQR2En9EID+2k+IBs5fCFd919gVVK5BeND82fYeLWPqvRcFNPKu9+gxTwfB5XwBGBvZ0HFQa+cHtIoslA==",
+ "dev": true,
+ "dependencies": {
+ "@jest/environment": "^25.5.0",
+ "@jest/fake-timers": "^25.5.0",
+ "@jest/types": "^25.5.0",
+ "jest-mock": "^25.5.0",
+ "jest-util": "^25.5.0",
+ "semver": "^6.3.0"
+ },
+ "engines": {
+ "node": ">= 8.3"
+ }
+ },
+ "node_modules/jest-get-type": {
+ "version": "25.2.6",
+ "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-25.2.6.tgz",
+ "integrity": "sha512-DxjtyzOHjObRM+sM1knti6or+eOgcGU4xVSb2HNP1TqO4ahsT+rqZg+nyqHWJSvWgKC5cG3QjGFBqxLghiF/Ig==",
+ "dev": true,
+ "engines": {
+ "node": ">= 8.3"
+ }
+ },
+ "node_modules/jest-haste-map": {
+ "version": "25.5.1",
+ "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-25.5.1.tgz",
+ "integrity": "sha512-dddgh9UZjV7SCDQUrQ+5t9yy8iEgKc1AKqZR9YDww8xsVOtzPQSMVLDChc21+g29oTRexb9/B0bIlZL+sWmvAQ==",
+ "dev": true,
+ "dependencies": {
+ "@jest/types": "^25.5.0",
+ "@types/graceful-fs": "^4.1.2",
+ "anymatch": "^3.0.3",
+ "fb-watchman": "^2.0.0",
+ "graceful-fs": "^4.2.4",
+ "jest-serializer": "^25.5.0",
+ "jest-util": "^25.5.0",
+ "jest-worker": "^25.5.0",
+ "micromatch": "^4.0.2",
+ "sane": "^4.0.3",
+ "walker": "^1.0.7",
+ "which": "^2.0.2"
+ },
+ "engines": {
+ "node": ">= 8.3"
+ },
+ "optionalDependencies": {
+ "fsevents": "^2.1.2"
+ }
+ },
+ "node_modules/jest-jasmine2": {
+ "version": "25.5.4",
+ "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-25.5.4.tgz",
+ "integrity": "sha512-9acbWEfbmS8UpdcfqnDO+uBUgKa/9hcRh983IHdM+pKmJPL77G0sWAAK0V0kr5LK3a8cSBfkFSoncXwQlRZfkQ==",
+ "dev": true,
+ "dependencies": {
+ "@babel/traverse": "^7.1.0",
+ "@jest/environment": "^25.5.0",
+ "@jest/source-map": "^25.5.0",
+ "@jest/test-result": "^25.5.0",
+ "@jest/types": "^25.5.0",
+ "chalk": "^3.0.0",
+ "co": "^4.6.0",
+ "expect": "^25.5.0",
+ "is-generator-fn": "^2.0.0",
+ "jest-each": "^25.5.0",
+ "jest-matcher-utils": "^25.5.0",
+ "jest-message-util": "^25.5.0",
+ "jest-runtime": "^25.5.4",
+ "jest-snapshot": "^25.5.1",
+ "jest-util": "^25.5.0",
+ "pretty-format": "^25.5.0",
+ "throat": "^5.0.0"
+ },
+ "engines": {
+ "node": ">= 8.3"
+ }
+ },
+ "node_modules/jest-jasmine2/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/jest-jasmine2/node_modules/chalk": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz",
+ "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-jasmine2/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/jest-jasmine2/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/jest-jasmine2/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-jasmine2/node_modules/pretty-format": {
+ "version": "25.5.0",
+ "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-25.5.0.tgz",
+ "integrity": "sha512-kbo/kq2LQ/A/is0PQwsEHM7Ca6//bGPPvU6UnsdDRSKTWxT/ru/xb88v4BJf6a69H+uTytOEsTusT9ksd/1iWQ==",
+ "dev": true,
+ "dependencies": {
+ "@jest/types": "^25.5.0",
+ "ansi-regex": "^5.0.0",
+ "ansi-styles": "^4.0.0",
+ "react-is": "^16.12.0"
+ },
+ "engines": {
+ "node": ">= 8.3"
+ }
+ },
+ "node_modules/jest-jasmine2/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-leak-detector": {
+ "version": "25.5.0",
+ "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-25.5.0.tgz",
+ "integrity": "sha512-rV7JdLsanS8OkdDpZtgBf61L5xZ4NnYLBq72r6ldxahJWWczZjXawRsoHyXzibM5ed7C2QRjpp6ypgwGdKyoVA==",
+ "dev": true,
+ "dependencies": {
+ "jest-get-type": "^25.2.6",
+ "pretty-format": "^25.5.0"
+ },
+ "engines": {
+ "node": ">= 8.3"
+ }
+ },
+ "node_modules/jest-leak-detector/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/jest-leak-detector/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/jest-leak-detector/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/jest-leak-detector/node_modules/pretty-format": {
+ "version": "25.5.0",
+ "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-25.5.0.tgz",
+ "integrity": "sha512-kbo/kq2LQ/A/is0PQwsEHM7Ca6//bGPPvU6UnsdDRSKTWxT/ru/xb88v4BJf6a69H+uTytOEsTusT9ksd/1iWQ==",
+ "dev": true,
+ "dependencies": {
+ "@jest/types": "^25.5.0",
+ "ansi-regex": "^5.0.0",
+ "ansi-styles": "^4.0.0",
+ "react-is": "^16.12.0"
+ },
+ "engines": {
+ "node": ">= 8.3"
+ }
+ },
+ "node_modules/jest-matcher-utils": {
+ "version": "25.5.0",
+ "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-25.5.0.tgz",
+ "integrity": "sha512-VWI269+9JS5cpndnpCwm7dy7JtGQT30UHfrnM3mXl22gHGt/b7NkjBqXfbhZ8V4B7ANUsjK18PlSBmG0YH7gjw==",
+ "dev": true,
+ "dependencies": {
+ "chalk": "^3.0.0",
+ "jest-diff": "^25.5.0",
+ "jest-get-type": "^25.2.6",
+ "pretty-format": "^25.5.0"
+ },
+ "engines": {
+ "node": ">= 8.3"
+ }
+ },
+ "node_modules/jest-matcher-utils/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/jest-matcher-utils/node_modules/chalk": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz",
+ "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-matcher-utils/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/jest-matcher-utils/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/jest-matcher-utils/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-matcher-utils/node_modules/pretty-format": {
+ "version": "25.5.0",
+ "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-25.5.0.tgz",
+ "integrity": "sha512-kbo/kq2LQ/A/is0PQwsEHM7Ca6//bGPPvU6UnsdDRSKTWxT/ru/xb88v4BJf6a69H+uTytOEsTusT9ksd/1iWQ==",
+ "dev": true,
+ "dependencies": {
+ "@jest/types": "^25.5.0",
+ "ansi-regex": "^5.0.0",
+ "ansi-styles": "^4.0.0",
+ "react-is": "^16.12.0"
+ },
+ "engines": {
+ "node": ">= 8.3"
+ }
+ },
+ "node_modules/jest-matcher-utils/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-message-util": {
+ "version": "25.5.0",
+ "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-25.5.0.tgz",
+ "integrity": "sha512-ezddz3YCT/LT0SKAmylVyWWIGYoKHOFOFXx3/nA4m794lfVUskMcwhip6vTgdVrOtYdjeQeis2ypzes9mZb4EA==",
+ "dev": true,
+ "dependencies": {
+ "@babel/code-frame": "^7.0.0",
+ "@jest/types": "^25.5.0",
+ "@types/stack-utils": "^1.0.1",
+ "chalk": "^3.0.0",
+ "graceful-fs": "^4.2.4",
+ "micromatch": "^4.0.2",
+ "slash": "^3.0.0",
+ "stack-utils": "^1.0.1"
+ },
+ "engines": {
+ "node": ">= 8.3"
+ }
+ },
+ "node_modules/jest-message-util/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/jest-message-util/node_modules/chalk": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz",
+ "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-message-util/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/jest-message-util/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/jest-message-util/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-message-util/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-mock": {
+ "version": "25.5.0",
+ "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-25.5.0.tgz",
+ "integrity": "sha512-eXWuTV8mKzp/ovHc5+3USJMYsTBhyQ+5A1Mak35dey/RG8GlM4YWVylZuGgVXinaW6tpvk/RSecmF37FKUlpXA==",
+ "dev": true,
+ "dependencies": {
+ "@jest/types": "^25.5.0"
+ },
+ "engines": {
+ "node": ">= 8.3"
+ }
+ },
+ "node_modules/jest-pnp-resolver": {
+ "version": "1.2.3",
+ "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz",
+ "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==",
+ "dev": true,
+ "engines": {
+ "node": ">=6"
+ },
+ "peerDependencies": {
+ "jest-resolve": "*"
+ },
+ "peerDependenciesMeta": {
+ "jest-resolve": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/jest-regex-util": {
+ "version": "25.2.6",
+ "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-25.2.6.tgz",
+ "integrity": "sha512-KQqf7a0NrtCkYmZZzodPftn7fL1cq3GQAFVMn5Hg8uKx/fIenLEobNanUxb7abQ1sjADHBseG/2FGpsv/wr+Qw==",
+ "dev": true,
+ "engines": {
+ "node": ">= 8.3"
+ }
+ },
+ "node_modules/jest-resolve": {
+ "version": "25.5.1",
+ "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-25.5.1.tgz",
+ "integrity": "sha512-Hc09hYch5aWdtejsUZhA+vSzcotf7fajSlPA6EZPE1RmPBAD39XtJhvHWFStid58iit4IPDLI/Da4cwdDmAHiQ==",
+ "dev": true,
+ "dependencies": {
+ "@jest/types": "^25.5.0",
+ "browser-resolve": "^1.11.3",
+ "chalk": "^3.0.0",
+ "graceful-fs": "^4.2.4",
+ "jest-pnp-resolver": "^1.2.1",
+ "read-pkg-up": "^7.0.1",
+ "realpath-native": "^2.0.0",
+ "resolve": "^1.17.0",
+ "slash": "^3.0.0"
+ },
+ "engines": {
+ "node": ">= 8.3"
+ }
+ },
+ "node_modules/jest-resolve-dependencies": {
+ "version": "25.5.4",
+ "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-25.5.4.tgz",
+ "integrity": "sha512-yFmbPd+DAQjJQg88HveObcGBA32nqNZ02fjYmtL16t1xw9bAttSn5UGRRhzMHIQbsep7znWvAvnD4kDqOFM0Uw==",
+ "dev": true,
+ "dependencies": {
+ "@jest/types": "^25.5.0",
+ "jest-regex-util": "^25.2.6",
+ "jest-snapshot": "^25.5.1"
+ },
+ "engines": {
+ "node": ">= 8.3"
+ }
+ },
+ "node_modules/jest-resolve/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/jest-resolve/node_modules/chalk": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz",
+ "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-resolve/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/jest-resolve/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/jest-resolve/node_modules/find-up": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
+ "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
+ "dev": true,
+ "dependencies": {
+ "locate-path": "^5.0.0",
+ "path-exists": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-resolve/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-resolve/node_modules/locate-path": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
+ "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
+ "dev": true,
+ "dependencies": {
+ "p-locate": "^4.1.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-resolve/node_modules/p-limit": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
+ "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
+ "dev": true,
+ "dependencies": {
+ "p-try": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=6"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/jest-resolve/node_modules/p-locate": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
+ "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
+ "dev": true,
+ "dependencies": {
+ "p-limit": "^2.2.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-resolve/node_modules/read-pkg": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz",
+ "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==",
+ "dev": true,
+ "dependencies": {
+ "@types/normalize-package-data": "^2.4.0",
+ "normalize-package-data": "^2.5.0",
+ "parse-json": "^5.0.0",
+ "type-fest": "^0.6.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-resolve/node_modules/read-pkg-up": {
+ "version": "7.0.1",
+ "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz",
+ "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==",
+ "dev": true,
+ "dependencies": {
+ "find-up": "^4.1.0",
+ "read-pkg": "^5.2.0",
+ "type-fest": "^0.8.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/jest-resolve/node_modules/read-pkg/node_modules/type-fest": {
+ "version": "0.6.0",
+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz",
+ "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-resolve/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-resolve/node_modules/type-fest": {
+ "version": "0.8.1",
+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz",
+ "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-runner": {
+ "version": "25.5.4",
+ "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-25.5.4.tgz",
+ "integrity": "sha512-V/2R7fKZo6blP8E9BL9vJ8aTU4TH2beuqGNxHbxi6t14XzTb+x90B3FRgdvuHm41GY8ch4xxvf0ATH4hdpjTqg==",
+ "dev": true,
+ "dependencies": {
+ "@jest/console": "^25.5.0",
+ "@jest/environment": "^25.5.0",
+ "@jest/test-result": "^25.5.0",
+ "@jest/types": "^25.5.0",
+ "chalk": "^3.0.0",
+ "exit": "^0.1.2",
+ "graceful-fs": "^4.2.4",
+ "jest-config": "^25.5.4",
+ "jest-docblock": "^25.3.0",
+ "jest-haste-map": "^25.5.1",
+ "jest-jasmine2": "^25.5.4",
+ "jest-leak-detector": "^25.5.0",
+ "jest-message-util": "^25.5.0",
+ "jest-resolve": "^25.5.1",
+ "jest-runtime": "^25.5.4",
+ "jest-util": "^25.5.0",
+ "jest-worker": "^25.5.0",
+ "source-map-support": "^0.5.6",
+ "throat": "^5.0.0"
+ },
+ "engines": {
+ "node": ">= 8.3"
+ }
+ },
+ "node_modules/jest-runner/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/jest-runner/node_modules/chalk": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz",
+ "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-runner/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/jest-runner/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/jest-runner/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-runner/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-runtime": {
+ "version": "25.5.4",
+ "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-25.5.4.tgz",
+ "integrity": "sha512-RWTt8LeWh3GvjYtASH2eezkc8AehVoWKK20udV6n3/gC87wlTbE1kIA+opCvNWyyPeBs6ptYsc6nyHUb1GlUVQ==",
+ "dev": true,
+ "dependencies": {
+ "@jest/console": "^25.5.0",
+ "@jest/environment": "^25.5.0",
+ "@jest/globals": "^25.5.2",
+ "@jest/source-map": "^25.5.0",
+ "@jest/test-result": "^25.5.0",
+ "@jest/transform": "^25.5.1",
+ "@jest/types": "^25.5.0",
+ "@types/yargs": "^15.0.0",
+ "chalk": "^3.0.0",
+ "collect-v8-coverage": "^1.0.0",
+ "exit": "^0.1.2",
+ "glob": "^7.1.3",
+ "graceful-fs": "^4.2.4",
+ "jest-config": "^25.5.4",
+ "jest-haste-map": "^25.5.1",
+ "jest-message-util": "^25.5.0",
+ "jest-mock": "^25.5.0",
+ "jest-regex-util": "^25.2.6",
+ "jest-resolve": "^25.5.1",
+ "jest-snapshot": "^25.5.1",
+ "jest-util": "^25.5.0",
+ "jest-validate": "^25.5.0",
+ "realpath-native": "^2.0.0",
+ "slash": "^3.0.0",
+ "strip-bom": "^4.0.0",
+ "yargs": "^15.3.1"
+ },
+ "bin": {
+ "jest-runtime": "bin/jest-runtime.js"
+ },
+ "engines": {
+ "node": ">= 8.3"
+ }
+ },
+ "node_modules/jest-runtime/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/jest-runtime/node_modules/chalk": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz",
+ "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-runtime/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/jest-runtime/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/jest-runtime/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-runtime/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-serializer": {
+ "version": "25.5.0",
+ "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-25.5.0.tgz",
+ "integrity": "sha512-LxD8fY1lByomEPflwur9o4e2a5twSQ7TaVNLlFUuToIdoJuBt8tzHfCsZ42Ok6LkKXWzFWf3AGmheuLAA7LcCA==",
+ "dev": true,
+ "dependencies": {
+ "graceful-fs": "^4.2.4"
+ },
+ "engines": {
+ "node": ">= 8.3"
+ }
+ },
+ "node_modules/jest-snapshot": {
+ "version": "25.5.1",
+ "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-25.5.1.tgz",
+ "integrity": "sha512-C02JE1TUe64p2v1auUJ2ze5vcuv32tkv9PyhEb318e8XOKF7MOyXdJ7kdjbvrp3ChPLU2usI7Rjxs97Dj5P0uQ==",
+ "dev": true,
+ "dependencies": {
+ "@babel/types": "^7.0.0",
+ "@jest/types": "^25.5.0",
+ "@types/prettier": "^1.19.0",
+ "chalk": "^3.0.0",
+ "expect": "^25.5.0",
+ "graceful-fs": "^4.2.4",
+ "jest-diff": "^25.5.0",
+ "jest-get-type": "^25.2.6",
+ "jest-matcher-utils": "^25.5.0",
+ "jest-message-util": "^25.5.0",
+ "jest-resolve": "^25.5.1",
+ "make-dir": "^3.0.0",
+ "natural-compare": "^1.4.0",
+ "pretty-format": "^25.5.0",
+ "semver": "^6.3.0"
+ },
+ "engines": {
+ "node": ">= 8.3"
+ }
+ },
+ "node_modules/jest-snapshot/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/jest-snapshot/node_modules/chalk": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz",
+ "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-snapshot/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/jest-snapshot/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/jest-snapshot/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-snapshot/node_modules/pretty-format": {
+ "version": "25.5.0",
+ "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-25.5.0.tgz",
+ "integrity": "sha512-kbo/kq2LQ/A/is0PQwsEHM7Ca6//bGPPvU6UnsdDRSKTWxT/ru/xb88v4BJf6a69H+uTytOEsTusT9ksd/1iWQ==",
+ "dev": true,
+ "dependencies": {
+ "@jest/types": "^25.5.0",
+ "ansi-regex": "^5.0.0",
+ "ansi-styles": "^4.0.0",
+ "react-is": "^16.12.0"
+ },
+ "engines": {
+ "node": ">= 8.3"
+ }
+ },
+ "node_modules/jest-snapshot/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-util": {
+ "version": "25.5.0",
+ "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-25.5.0.tgz",
+ "integrity": "sha512-KVlX+WWg1zUTB9ktvhsg2PXZVdkI1NBevOJSkTKYAyXyH4QSvh+Lay/e/v+bmaFfrkfx43xD8QTfgobzlEXdIA==",
+ "dev": true,
+ "dependencies": {
+ "@jest/types": "^25.5.0",
+ "chalk": "^3.0.0",
+ "graceful-fs": "^4.2.4",
+ "is-ci": "^2.0.0",
+ "make-dir": "^3.0.0"
+ },
+ "engines": {
+ "node": ">= 8.3"
+ }
+ },
+ "node_modules/jest-util/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/jest-util/node_modules/chalk": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz",
+ "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-util/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/jest-util/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/jest-util/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-util/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-validate": {
+ "version": "25.5.0",
+ "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-25.5.0.tgz",
+ "integrity": "sha512-okUFKqhZIpo3jDdtUXUZ2LxGUZJIlfdYBvZb1aczzxrlyMlqdnnws9MOxezoLGhSaFc2XYaHNReNQfj5zPIWyQ==",
+ "dev": true,
+ "dependencies": {
+ "@jest/types": "^25.5.0",
+ "camelcase": "^5.3.1",
+ "chalk": "^3.0.0",
+ "jest-get-type": "^25.2.6",
+ "leven": "^3.1.0",
+ "pretty-format": "^25.5.0"
+ },
+ "engines": {
+ "node": ">= 8.3"
+ }
+ },
+ "node_modules/jest-validate/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/jest-validate/node_modules/chalk": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz",
+ "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-validate/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/jest-validate/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/jest-validate/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-validate/node_modules/pretty-format": {
+ "version": "25.5.0",
+ "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-25.5.0.tgz",
+ "integrity": "sha512-kbo/kq2LQ/A/is0PQwsEHM7Ca6//bGPPvU6UnsdDRSKTWxT/ru/xb88v4BJf6a69H+uTytOEsTusT9ksd/1iWQ==",
+ "dev": true,
+ "dependencies": {
+ "@jest/types": "^25.5.0",
+ "ansi-regex": "^5.0.0",
+ "ansi-styles": "^4.0.0",
+ "react-is": "^16.12.0"
+ },
+ "engines": {
+ "node": ">= 8.3"
+ }
+ },
+ "node_modules/jest-validate/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-watcher": {
+ "version": "25.5.0",
+ "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-25.5.0.tgz",
+ "integrity": "sha512-XrSfJnVASEl+5+bb51V0Q7WQx65dTSk7NL4yDdVjPnRNpM0hG+ncFmDYJo9O8jaSRcAitVbuVawyXCRoxGrT5Q==",
+ "dev": true,
+ "dependencies": {
+ "@jest/test-result": "^25.5.0",
+ "@jest/types": "^25.5.0",
+ "ansi-escapes": "^4.2.1",
+ "chalk": "^3.0.0",
+ "jest-util": "^25.5.0",
+ "string-length": "^3.1.0"
+ },
+ "engines": {
+ "node": ">= 8.3"
+ }
+ },
+ "node_modules/jest-watcher/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/jest-watcher/node_modules/chalk": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz",
+ "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-watcher/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/jest-watcher/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/jest-watcher/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-watcher/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-worker": {
+ "version": "25.5.0",
+ "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-25.5.0.tgz",
+ "integrity": "sha512-/dsSmUkIy5EBGfv/IjjqmFxrNAUpBERfGs1oHROyD7yxjG/w+t0GOJDX8O1k32ySmd7+a5IhnJU2qQFcJ4n1vw==",
+ "dev": true,
+ "dependencies": {
+ "merge-stream": "^2.0.0",
+ "supports-color": "^7.0.0"
+ },
+ "engines": {
+ "node": ">= 8.3"
+ }
+ },
+ "node_modules/jest-worker/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-worker/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/joi": {
+ "version": "17.9.1",
+ "resolved": "https://registry.npmjs.org/joi/-/joi-17.9.1.tgz",
+ "integrity": "sha512-FariIi9j6QODKATGBrEX7HZcja8Bsh3rfdGYy/Sb65sGlZWK/QWesU1ghk7aJWDj95knjXlQfSmzFSPPkLVsfw==",
+ "dev": true,
+ "dependencies": {
+ "@hapi/hoek": "^9.0.0",
+ "@hapi/topo": "^5.0.0",
+ "@sideway/address": "^4.1.3",
+ "@sideway/formula": "^3.0.1",
+ "@sideway/pinpoint": "^2.0.0"
+ }
+ },
+ "node_modules/js-tokens": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
+ "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==",
+ "dev": true
+ },
+ "node_modules/js-yaml": {
+ "version": "3.14.1",
+ "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz",
+ "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==",
+ "dev": true,
+ "dependencies": {
+ "argparse": "^1.0.7",
+ "esprima": "^4.0.0"
+ },
+ "bin": {
+ "js-yaml": "bin/js-yaml.js"
+ }
+ },
+ "node_modules/jsbn": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz",
+ "integrity": "sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==",
+ "dev": true
+ },
+ "node_modules/jsdom": {
+ "version": "15.2.1",
+ "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-15.2.1.tgz",
+ "integrity": "sha512-fAl1W0/7T2G5vURSyxBzrJ1LSdQn6Tr5UX/xD4PXDx/PDgwygedfW6El/KIj3xJ7FU61TTYnc/l/B7P49Eqt6g==",
+ "dev": true,
+ "dependencies": {
+ "abab": "^2.0.0",
+ "acorn": "^7.1.0",
+ "acorn-globals": "^4.3.2",
+ "array-equal": "^1.0.0",
+ "cssom": "^0.4.1",
+ "cssstyle": "^2.0.0",
+ "data-urls": "^1.1.0",
+ "domexception": "^1.0.1",
+ "escodegen": "^1.11.1",
+ "html-encoding-sniffer": "^1.0.2",
+ "nwsapi": "^2.2.0",
+ "parse5": "5.1.0",
+ "pn": "^1.1.0",
+ "request": "^2.88.0",
+ "request-promise-native": "^1.0.7",
+ "saxes": "^3.1.9",
+ "symbol-tree": "^3.2.2",
+ "tough-cookie": "^3.0.1",
+ "w3c-hr-time": "^1.0.1",
+ "w3c-xmlserializer": "^1.1.2",
+ "webidl-conversions": "^4.0.2",
+ "whatwg-encoding": "^1.0.5",
+ "whatwg-mimetype": "^2.3.0",
+ "whatwg-url": "^7.0.0",
+ "ws": "^7.0.0",
+ "xml-name-validator": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "peerDependencies": {
+ "canvas": "^2.5.0"
+ },
+ "peerDependenciesMeta": {
+ "canvas": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/jsdom/node_modules/acorn": {
+ "version": "7.4.1",
+ "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz",
+ "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==",
+ "dev": true,
+ "bin": {
+ "acorn": "bin/acorn"
+ },
+ "engines": {
+ "node": ">=0.4.0"
+ }
+ },
+ "node_modules/jsesc": {
+ "version": "2.5.2",
+ "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz",
+ "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==",
+ "dev": true,
+ "bin": {
+ "jsesc": "bin/jsesc"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/json-parse-even-better-errors": {
+ "version": "2.3.1",
+ "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz",
+ "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==",
+ "dev": true
+ },
+ "node_modules/json-schema": {
+ "version": "0.4.0",
+ "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz",
+ "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==",
+ "dev": true
+ },
+ "node_modules/json-schema-traverse": {
+ "version": "0.4.1",
+ "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
+ "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==",
+ "dev": true
+ },
+ "node_modules/json-stable-stringify-without-jsonify": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz",
+ "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==",
+ "dev": true
+ },
+ "node_modules/json-stringify-safe": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz",
+ "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==",
+ "dev": true
+ },
+ "node_modules/json5": {
+ "version": "2.2.3",
+ "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz",
+ "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==",
+ "dev": true,
+ "bin": {
+ "json5": "lib/cli.js"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/jsprim": {
+ "version": "1.4.2",
+ "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz",
+ "integrity": "sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==",
+ "dev": true,
+ "dependencies": {
+ "assert-plus": "1.0.0",
+ "extsprintf": "1.3.0",
+ "json-schema": "0.4.0",
+ "verror": "1.10.0"
+ },
+ "engines": {
+ "node": ">=0.6.0"
+ }
+ },
+ "node_modules/kind-of": {
+ "version": "6.0.3",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz",
+ "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/kleur": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz",
+ "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==",
+ "dev": true,
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/leven": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz",
+ "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==",
+ "dev": true,
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/levn": {
+ "version": "0.4.1",
+ "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz",
+ "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==",
+ "dev": true,
+ "dependencies": {
+ "prelude-ls": "^1.2.1",
+ "type-check": "~0.4.0"
+ },
+ "engines": {
+ "node": ">= 0.8.0"
+ }
+ },
+ "node_modules/line-column": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/line-column/-/line-column-1.0.2.tgz",
+ "integrity": "sha512-Ktrjk5noGYlHsVnYWh62FLVs4hTb8A3e+vucNZMgPeAOITdshMSgv4cCZQeRDjm7+goqmo6+liZwTXo+U3sVww==",
+ "dev": true,
+ "dependencies": {
+ "isarray": "^1.0.0",
+ "isobject": "^2.0.0"
+ }
+ },
+ "node_modules/lines-and-columns": {
+ "version": "1.2.4",
+ "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz",
+ "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==",
+ "dev": true
+ },
+ "node_modules/lint-staged": {
+ "version": "10.5.4",
+ "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-10.5.4.tgz",
+ "integrity": "sha512-EechC3DdFic/TdOPgj/RB3FicqE6932LTHCUm0Y2fsD9KGlLB+RwJl2q1IYBIvEsKzDOgn0D4gll+YxG5RsrKg==",
+ "dev": true,
+ "dependencies": {
+ "chalk": "^4.1.0",
+ "cli-truncate": "^2.1.0",
+ "commander": "^6.2.0",
+ "cosmiconfig": "^7.0.0",
+ "debug": "^4.2.0",
+ "dedent": "^0.7.0",
+ "enquirer": "^2.3.6",
+ "execa": "^4.1.0",
+ "listr2": "^3.2.2",
+ "log-symbols": "^4.0.0",
+ "micromatch": "^4.0.2",
+ "normalize-path": "^3.0.0",
+ "please-upgrade-node": "^3.2.0",
+ "string-argv": "0.3.1",
+ "stringify-object": "^3.3.0"
+ },
+ "bin": {
+ "lint-staged": "bin/lint-staged.js"
+ },
+ "funding": {
+ "url": "https://opencollective.com/lint-staged"
+ }
+ },
+ "node_modules/lint-staged/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/lint-staged/node_modules/chalk": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+ "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/chalk?sponsor=1"
+ }
+ },
+ "node_modules/lint-staged/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/lint-staged/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/lint-staged/node_modules/execa": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/execa/-/execa-4.1.0.tgz",
+ "integrity": "sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA==",
+ "dev": true,
+ "dependencies": {
+ "cross-spawn": "^7.0.0",
+ "get-stream": "^5.0.0",
+ "human-signals": "^1.1.1",
+ "is-stream": "^2.0.0",
+ "merge-stream": "^2.0.0",
+ "npm-run-path": "^4.0.0",
+ "onetime": "^5.1.0",
+ "signal-exit": "^3.0.2",
+ "strip-final-newline": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sindresorhus/execa?sponsor=1"
+ }
+ },
+ "node_modules/lint-staged/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/lint-staged/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/listr2": {
+ "version": "3.14.0",
+ "resolved": "https://registry.npmjs.org/listr2/-/listr2-3.14.0.tgz",
+ "integrity": "sha512-TyWI8G99GX9GjE54cJ+RrNMcIFBfwMPxc3XTFiAYGN4s10hWROGtOg7+O6u6LE3mNkyld7RSLE6nrKBvTfcs3g==",
+ "dev": true,
+ "dependencies": {
+ "cli-truncate": "^2.1.0",
+ "colorette": "^2.0.16",
+ "log-update": "^4.0.0",
+ "p-map": "^4.0.0",
+ "rfdc": "^1.3.0",
+ "rxjs": "^7.5.1",
+ "through": "^2.3.8",
+ "wrap-ansi": "^7.0.0"
+ },
+ "engines": {
+ "node": ">=10.0.0"
+ },
+ "peerDependencies": {
+ "enquirer": ">= 2.3.0 < 3"
+ },
+ "peerDependenciesMeta": {
+ "enquirer": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/load-json-file": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz",
+ "integrity": "sha512-3p6ZOGNbiX4CdvEd1VcE6yi78UrGNpjHO33noGwHCnT/o2fyllJDepsm8+mFFv/DvtwFHht5HIHSyOy5a+ChVQ==",
+ "dev": true,
+ "dependencies": {
+ "graceful-fs": "^4.1.2",
+ "parse-json": "^2.2.0",
+ "pify": "^2.0.0",
+ "strip-bom": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/load-json-file/node_modules/parse-json": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz",
+ "integrity": "sha512-QR/GGaKCkhwk1ePQNYDRKYZ3mwU9ypsKhB0XyFnLQdomyEqk3e8wpW3V5Jp88zbxK4n5ST1nqo+g9juTpownhQ==",
+ "dev": true,
+ "dependencies": {
+ "error-ex": "^1.2.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/load-json-file/node_modules/strip-bom": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz",
+ "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==",
+ "dev": true,
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/locate-path": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz",
+ "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==",
+ "dev": true,
+ "dependencies": {
+ "p-locate": "^5.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/lodash": {
+ "version": "4.17.21",
+ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz",
+ "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==",
+ "dev": true
+ },
+ "node_modules/lodash.debounce": {
+ "version": "4.0.8",
+ "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz",
+ "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==",
+ "dev": true
+ },
+ "node_modules/lodash.memoize": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz",
+ "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==",
+ "dev": true
+ },
+ "node_modules/lodash.merge": {
+ "version": "4.6.2",
+ "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz",
+ "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==",
+ "dev": true
+ },
+ "node_modules/lodash.sortby": {
+ "version": "4.7.0",
+ "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz",
+ "integrity": "sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA==",
+ "dev": true
+ },
+ "node_modules/lodash.truncate": {
+ "version": "4.4.2",
+ "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz",
+ "integrity": "sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw==",
+ "dev": true
+ },
+ "node_modules/lodash.uniq": {
+ "version": "4.5.0",
+ "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz",
+ "integrity": "sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==",
+ "dev": true
+ },
+ "node_modules/log-symbols": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz",
+ "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==",
+ "dev": true,
+ "dependencies": {
+ "chalk": "^4.1.0",
+ "is-unicode-supported": "^0.1.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/log-symbols/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/log-symbols/node_modules/chalk": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+ "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/chalk?sponsor=1"
+ }
+ },
+ "node_modules/log-symbols/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/log-symbols/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/log-symbols/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/log-symbols/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/log-update": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/log-update/-/log-update-4.0.0.tgz",
+ "integrity": "sha512-9fkkDevMefjg0mmzWFBW8YkFP91OrizzkW3diF7CpG+S2EYdy4+TVfGwz1zeF8x7hCx1ovSPTOE9Ngib74qqUg==",
+ "dev": true,
+ "dependencies": {
+ "ansi-escapes": "^4.3.0",
+ "cli-cursor": "^3.1.0",
+ "slice-ansi": "^4.0.0",
+ "wrap-ansi": "^6.2.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/log-update/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/log-update/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/log-update/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/log-update/node_modules/slice-ansi": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz",
+ "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^4.0.0",
+ "astral-regex": "^2.0.0",
+ "is-fullwidth-code-point": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/slice-ansi?sponsor=1"
+ }
+ },
+ "node_modules/log-update/node_modules/wrap-ansi": {
+ "version": "6.2.0",
+ "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz",
+ "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^4.0.0",
+ "string-width": "^4.1.0",
+ "strip-ansi": "^6.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/lolex": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/lolex/-/lolex-5.1.2.tgz",
+ "integrity": "sha512-h4hmjAvHTmd+25JSwrtTIuwbKdwg5NzZVRMLn9saij4SZaepCrTCxPr35H/3bjwfMJtN+t3CX8672UIkglz28A==",
+ "dev": true,
+ "dependencies": {
+ "@sinonjs/commons": "^1.7.0"
+ }
+ },
+ "node_modules/lru-cache": {
+ "version": "5.1.1",
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz",
+ "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==",
+ "dev": true,
+ "dependencies": {
+ "yallist": "^3.0.2"
+ }
+ },
+ "node_modules/magic-string": {
+ "version": "0.25.9",
+ "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.9.tgz",
+ "integrity": "sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==",
+ "dev": true,
+ "dependencies": {
+ "sourcemap-codec": "^1.4.8"
+ }
+ },
+ "node_modules/make-dir": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz",
+ "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==",
+ "dev": true,
+ "dependencies": {
+ "semver": "^6.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/makeerror": {
+ "version": "1.0.12",
+ "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz",
+ "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==",
+ "dev": true,
+ "dependencies": {
+ "tmpl": "1.0.5"
+ }
+ },
+ "node_modules/map-cache": {
+ "version": "0.2.2",
+ "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz",
+ "integrity": "sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/map-visit": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz",
+ "integrity": "sha512-4y7uGv8bd2WdM9vpQsiQNo41Ln1NvhvDRuVt0k2JZQ+ezN2uaQes7lZeZ+QQUHOLQAtDaBJ+7wCbi+ab/KFs+w==",
+ "dev": true,
+ "dependencies": {
+ "object-visit": "^1.0.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/mdn-data": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.4.tgz",
+ "integrity": "sha512-iV3XNKw06j5Q7mi6h+9vbx23Tv7JkjEVgKHW4pimwyDGWm0OIQntJJ+u1C6mg6mK1EaTv42XQ7w76yuzH7M2cA==",
+ "dev": true
+ },
+ "node_modules/merge-stream": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz",
+ "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==",
+ "dev": true
+ },
+ "node_modules/merge2": {
+ "version": "1.4.1",
+ "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz",
+ "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==",
+ "dev": true,
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/micromatch": {
+ "version": "4.0.5",
+ "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz",
+ "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==",
+ "dev": true,
+ "dependencies": {
+ "braces": "^3.0.2",
+ "picomatch": "^2.3.1"
+ },
+ "engines": {
+ "node": ">=8.6"
+ }
+ },
+ "node_modules/mime-db": {
+ "version": "1.52.0",
+ "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz",
+ "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==",
+ "dev": true,
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/mime-types": {
+ "version": "2.1.35",
+ "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz",
+ "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==",
+ "dev": true,
+ "dependencies": {
+ "mime-db": "1.52.0"
+ },
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/mimic-fn": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz",
+ "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==",
+ "dev": true,
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/minimatch": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
+ "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
+ "dev": true,
+ "dependencies": {
+ "brace-expansion": "^1.1.7"
+ },
+ "engines": {
+ "node": "*"
+ }
+ },
+ "node_modules/minimist": {
+ "version": "1.2.8",
+ "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz",
+ "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==",
+ "dev": true,
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/mixin-deep": {
+ "version": "1.3.2",
+ "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz",
+ "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==",
+ "dev": true,
+ "dependencies": {
+ "for-in": "^1.0.2",
+ "is-extendable": "^1.0.1"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/mkdirp": {
+ "version": "0.5.6",
+ "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz",
+ "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==",
+ "dev": true,
+ "dependencies": {
+ "minimist": "^1.2.6"
+ },
+ "bin": {
+ "mkdirp": "bin/cmd.js"
+ }
+ },
+ "node_modules/ms": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
+ "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
+ "dev": true
+ },
+ "node_modules/nanoid": {
+ "version": "3.3.6",
+ "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz",
+ "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/ai"
+ }
+ ],
+ "bin": {
+ "nanoid": "bin/nanoid.cjs"
+ },
+ "engines": {
+ "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
+ }
+ },
+ "node_modules/nanomatch": {
+ "version": "1.2.13",
+ "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz",
+ "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==",
+ "dev": true,
+ "dependencies": {
+ "arr-diff": "^4.0.0",
+ "array-unique": "^0.3.2",
+ "define-property": "^2.0.2",
+ "extend-shallow": "^3.0.2",
+ "fragment-cache": "^0.2.1",
+ "is-windows": "^1.0.2",
+ "kind-of": "^6.0.2",
+ "object.pick": "^1.3.0",
+ "regex-not": "^1.0.0",
+ "snapdragon": "^0.8.1",
+ "to-regex": "^3.0.1"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/natural-compare": {
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz",
+ "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==",
+ "dev": true
+ },
+ "node_modules/nice-try": {
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz",
+ "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==",
+ "dev": true
+ },
+ "node_modules/node-int64": {
+ "version": "0.4.0",
+ "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz",
+ "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==",
+ "dev": true
+ },
+ "node_modules/node-notifier": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/node-notifier/-/node-notifier-6.0.0.tgz",
+ "integrity": "sha512-SVfQ/wMw+DesunOm5cKqr6yDcvUTDl/yc97ybGHMrteNEY6oekXpNpS3lZwgLlwz0FLgHoiW28ZpmBHUDg37cw==",
+ "dev": true,
+ "optional": true,
+ "dependencies": {
+ "growly": "^1.3.0",
+ "is-wsl": "^2.1.1",
+ "semver": "^6.3.0",
+ "shellwords": "^0.1.1",
+ "which": "^1.3.1"
+ }
+ },
+ "node_modules/node-notifier/node_modules/which": {
+ "version": "1.3.1",
+ "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz",
+ "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==",
+ "dev": true,
+ "optional": true,
+ "dependencies": {
+ "isexe": "^2.0.0"
+ },
+ "bin": {
+ "which": "bin/which"
+ }
+ },
+ "node_modules/node-releases": {
+ "version": "2.0.10",
+ "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.10.tgz",
+ "integrity": "sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w==",
+ "dev": true
+ },
+ "node_modules/normalize-package-data": {
+ "version": "2.5.0",
+ "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz",
+ "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==",
+ "dev": true,
+ "dependencies": {
+ "hosted-git-info": "^2.1.4",
+ "resolve": "^1.10.0",
+ "semver": "2 || 3 || 4 || 5",
+ "validate-npm-package-license": "^3.0.1"
+ }
+ },
+ "node_modules/normalize-package-data/node_modules/semver": {
+ "version": "5.7.1",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
+ "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
+ "dev": true,
+ "bin": {
+ "semver": "bin/semver"
+ }
+ },
+ "node_modules/normalize-path": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
+ "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/normalize-url": {
+ "version": "3.3.0",
+ "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-3.3.0.tgz",
+ "integrity": "sha512-U+JJi7duF1o+u2pynbp2zXDW2/PADgC30f0GsHZtRh+HOcXHnw137TrNlyxxRvWW5fjKd3bcLHPxofWuCjaeZg==",
+ "dev": true,
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/npm-run-path": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz",
+ "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==",
+ "dev": true,
+ "dependencies": {
+ "path-key": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/nth-check": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz",
+ "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==",
+ "dev": true,
+ "dependencies": {
+ "boolbase": "~1.0.0"
+ }
+ },
+ "node_modules/nwsapi": {
+ "version": "2.2.2",
+ "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.2.tgz",
+ "integrity": "sha512-90yv+6538zuvUMnN+zCr8LuV6bPFdq50304114vJYJ8RDyK8D5O9Phpbd6SZWgI7PwzmmfN1upeOJlvybDSgCw==",
+ "dev": true
+ },
+ "node_modules/oauth-sign": {
+ "version": "0.9.0",
+ "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz",
+ "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==",
+ "dev": true,
+ "engines": {
+ "node": "*"
+ }
+ },
+ "node_modules/object-copy": {
+ "version": "0.1.0",
+ "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz",
+ "integrity": "sha512-79LYn6VAb63zgtmAteVOWo9Vdj71ZVBy3Pbse+VqxDpEP83XuujMrGqHIwAXJ5I/aM0zU7dIyIAhifVTPrNItQ==",
+ "dev": true,
+ "dependencies": {
+ "copy-descriptor": "^0.1.0",
+ "define-property": "^0.2.5",
+ "kind-of": "^3.0.3"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/object-copy/node_modules/define-property": {
+ "version": "0.2.5",
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
+ "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==",
+ "dev": true,
+ "dependencies": {
+ "is-descriptor": "^0.1.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/object-copy/node_modules/is-accessor-descriptor": {
+ "version": "0.1.6",
+ "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz",
+ "integrity": "sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==",
+ "dev": true,
+ "dependencies": {
+ "kind-of": "^3.0.2"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/object-copy/node_modules/is-data-descriptor": {
+ "version": "0.1.4",
+ "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz",
+ "integrity": "sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==",
+ "dev": true,
+ "dependencies": {
+ "kind-of": "^3.0.2"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/object-copy/node_modules/is-descriptor": {
+ "version": "0.1.6",
+ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz",
+ "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==",
+ "dev": true,
+ "dependencies": {
+ "is-accessor-descriptor": "^0.1.6",
+ "is-data-descriptor": "^0.1.4",
+ "kind-of": "^5.0.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/object-copy/node_modules/is-descriptor/node_modules/kind-of": {
+ "version": "5.1.0",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz",
+ "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/object-copy/node_modules/kind-of": {
+ "version": "3.2.2",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
+ "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==",
+ "dev": true,
+ "dependencies": {
+ "is-buffer": "^1.1.5"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/object-inspect": {
+ "version": "1.12.3",
+ "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz",
+ "integrity": "sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==",
+ "dev": true,
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/object-keys": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz",
+ "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==",
+ "dev": true,
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/object-visit": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz",
+ "integrity": "sha512-GBaMwwAVK9qbQN3Scdo0OyvgPW7l3lnaVMj84uTOZlswkX0KpF6fyDBJhtTthf7pymztoN36/KEr1DyhF96zEA==",
+ "dev": true,
+ "dependencies": {
+ "isobject": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/object-visit/node_modules/isobject": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz",
+ "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/object.assign": {
+ "version": "4.1.4",
+ "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz",
+ "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==",
+ "dev": true,
+ "dependencies": {
+ "call-bind": "^1.0.2",
+ "define-properties": "^1.1.4",
+ "has-symbols": "^1.0.3",
+ "object-keys": "^1.1.1"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/object.getownpropertydescriptors": {
+ "version": "2.1.5",
+ "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.5.tgz",
+ "integrity": "sha512-yDNzckpM6ntyQiGTik1fKV1DcVDRS+w8bvpWNCBanvH5LfRX9O8WTHqQzG4RZwRAM4I0oU7TV11Lj5v0g20ibw==",
+ "dev": true,
+ "dependencies": {
+ "array.prototype.reduce": "^1.0.5",
+ "call-bind": "^1.0.2",
+ "define-properties": "^1.1.4",
+ "es-abstract": "^1.20.4"
+ },
+ "engines": {
+ "node": ">= 0.8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/object.pick": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz",
+ "integrity": "sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ==",
+ "dev": true,
+ "dependencies": {
+ "isobject": "^3.0.1"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/object.pick/node_modules/isobject": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz",
+ "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/object.values": {
+ "version": "1.1.6",
+ "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.6.tgz",
+ "integrity": "sha512-FVVTkD1vENCsAcwNs9k6jea2uHC/X0+JcjG8YA60FN5CMaJmG95wT9jek/xX9nornqGRrBkKtzuAu2wuHpKqvw==",
+ "dev": true,
+ "dependencies": {
+ "call-bind": "^1.0.2",
+ "define-properties": "^1.1.4",
+ "es-abstract": "^1.20.4"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/once": {
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
+ "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==",
+ "dev": true,
+ "dependencies": {
+ "wrappy": "1"
+ }
+ },
+ "node_modules/onetime": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz",
+ "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==",
+ "dev": true,
+ "dependencies": {
+ "mimic-fn": "^2.1.0"
+ },
+ "engines": {
+ "node": ">=6"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/opencollective-postinstall": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/opencollective-postinstall/-/opencollective-postinstall-2.0.3.tgz",
+ "integrity": "sha512-8AV/sCtuzUeTo8gQK5qDZzARrulB3egtLzFgteqB2tcT4Mw7B8Kt7JcDHmltjz6FOAHsvTevk70gZEbhM4ZS9Q==",
+ "dev": true,
+ "bin": {
+ "opencollective-postinstall": "index.js"
+ }
+ },
+ "node_modules/optionator": {
+ "version": "0.9.1",
+ "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz",
+ "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==",
+ "dev": true,
+ "dependencies": {
+ "deep-is": "^0.1.3",
+ "fast-levenshtein": "^2.0.6",
+ "levn": "^0.4.1",
+ "prelude-ls": "^1.2.1",
+ "type-check": "^0.4.0",
+ "word-wrap": "^1.2.3"
+ },
+ "engines": {
+ "node": ">= 0.8.0"
+ }
+ },
+ "node_modules/p-each-series": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/p-each-series/-/p-each-series-2.2.0.tgz",
+ "integrity": "sha512-ycIL2+1V32th+8scbpTvyHNaHe02z0sjgh91XXjAk+ZeXoPN4Z46DVUnzdso0aX4KckKw0FNNFHdjZ2UsZvxiA==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/p-finally": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-2.0.1.tgz",
+ "integrity": "sha512-vpm09aKwq6H9phqRQzecoDpD8TmVyGw70qmWlyq5onxY7tqyTTFVvxMykxQSQKILBSFlbXpypIw2T1Ml7+DDtw==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/p-limit": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz",
+ "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==",
+ "dev": true,
+ "dependencies": {
+ "yocto-queue": "^0.1.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/p-locate": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz",
+ "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==",
+ "dev": true,
+ "dependencies": {
+ "p-limit": "^3.0.2"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/p-map": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz",
+ "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==",
+ "dev": true,
+ "dependencies": {
+ "aggregate-error": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/p-try": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
+ "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/parent-module": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
+ "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
+ "dev": true,
+ "dependencies": {
+ "callsites": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/parse-json": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz",
+ "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==",
+ "dev": true,
+ "dependencies": {
+ "@babel/code-frame": "^7.0.0",
+ "error-ex": "^1.3.1",
+ "json-parse-even-better-errors": "^2.3.0",
+ "lines-and-columns": "^1.1.6"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/parse5": {
+ "version": "5.1.0",
+ "resolved": "https://registry.npmjs.org/parse5/-/parse5-5.1.0.tgz",
+ "integrity": "sha512-fxNG2sQjHvlVAYmzBZS9YlDp6PTSSDwa98vkD4QgVDDCAo84z5X1t5XyJQ62ImdLXx5NdIIfihey6xpum9/gRQ==",
+ "dev": true
+ },
+ "node_modules/parse5-with-errors": {
+ "version": "4.0.4",
+ "resolved": "https://registry.npmjs.org/parse5-with-errors/-/parse5-with-errors-4.0.4.tgz",
+ "integrity": "sha512-c9o3ucuboCcWfnfhMaOwUbj6ymACsKviD3P0K6ry0iETUK3nmasCncmFhBeyuRaLK4+aIEg4e0UXX3qdV7Byww==",
+ "dev": true,
+ "dependencies": {
+ "@types/node": "^6.0.46"
+ }
+ },
+ "node_modules/parse5-with-errors/node_modules/@types/node": {
+ "version": "6.14.13",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-6.14.13.tgz",
+ "integrity": "sha512-J1F0XJ/9zxlZel5ZlbeSuHW2OpabrUAqpFuC2sm2I3by8sERQ8+KCjNKUcq8QHuzpGMWiJpo9ZxeHrqrP2KzQw==",
+ "dev": true
+ },
+ "node_modules/pascalcase": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz",
+ "integrity": "sha512-XHXfu/yOQRy9vYOtUDVMN60OEJjW013GoObG1o+xwQTpB9eYJX/BjXMsdW13ZDPruFhYYn0AG22w0xgQMwl3Nw==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/path-exists": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
+ "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/path-is-absolute": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
+ "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/path-key": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
+ "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/path-parse": {
+ "version": "1.0.7",
+ "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
+ "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==",
+ "dev": true
+ },
+ "node_modules/path-type": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz",
+ "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/performance-now": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz",
+ "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==",
+ "dev": true
+ },
+ "node_modules/picocolors": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
+ "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==",
+ "dev": true
+ },
+ "node_modules/picomatch": {
+ "version": "2.3.1",
+ "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz",
+ "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==",
+ "dev": true,
+ "engines": {
+ "node": ">=8.6"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/jonschlinkert"
+ }
+ },
+ "node_modules/pify": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
+ "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/pirates": {
+ "version": "4.0.5",
+ "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.5.tgz",
+ "integrity": "sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ==",
+ "dev": true,
+ "engines": {
+ "node": ">= 6"
+ }
+ },
+ "node_modules/pkg-dir": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-5.0.0.tgz",
+ "integrity": "sha512-NPE8TDbzl/3YQYY7CSS228s3g2ollTFnc+Qi3tqmqJp9Vg2ovUpixcJEo2HJScN2Ez+kEaal6y70c0ehqJBJeA==",
+ "dev": true,
+ "dependencies": {
+ "find-up": "^5.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/please-upgrade-node": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/please-upgrade-node/-/please-upgrade-node-3.2.0.tgz",
+ "integrity": "sha512-gQR3WpIgNIKwBMVLkpMUeR3e1/E1y42bqDQZfql+kDeXd8COYfM8PQA4X6y7a8u9Ua9FHmsrrmirW2vHs45hWg==",
+ "dev": true,
+ "dependencies": {
+ "semver-compare": "^1.0.0"
+ }
+ },
+ "node_modules/pn": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/pn/-/pn-1.1.0.tgz",
+ "integrity": "sha512-2qHaIQr2VLRFoxe2nASzsV6ef4yOOH+Fi9FBOVH6cqeSgUnoyySPZkxzLuzd+RYOQTRpROA0ztTMqxROKSb/nA==",
+ "dev": true
+ },
+ "node_modules/posix-character-classes": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz",
+ "integrity": "sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/postcss": {
+ "version": "8.0.9",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.0.9.tgz",
+ "integrity": "sha512-9Ikq03Hvb/L6dgnOtNOUbcgg9Rsff5uKrI1TyNTQ2ALpa6psZk1Ar3/Hhxv2Q0rECRGDxtcMUTZIQglXozlrDQ==",
+ "dev": true,
+ "dependencies": {
+ "colorette": "^1.2.1",
+ "line-column": "^1.0.2",
+ "nanoid": "^3.1.12",
+ "source-map": "^0.6.1"
+ },
+ "engines": {
+ "node": "^10 || ^12 || >=14"
+ },
+ "funding": {
+ "type": "tidelift",
+ "url": "https://tidelift.com/funding/github/npm/postcss"
+ }
+ },
+ "node_modules/postcss-calc": {
+ "version": "7.0.5",
+ "resolved": "https://registry.npmjs.org/postcss-calc/-/postcss-calc-7.0.5.tgz",
+ "integrity": "sha512-1tKHutbGtLtEZF6PT4JSihCHfIVldU72mZ8SdZHIYriIZ9fh9k9aWSppaT8rHsyI3dX+KSR+W+Ix9BMY3AODrg==",
+ "dev": true,
+ "dependencies": {
+ "postcss": "^7.0.27",
+ "postcss-selector-parser": "^6.0.2",
+ "postcss-value-parser": "^4.0.2"
+ }
+ },
+ "node_modules/postcss-calc/node_modules/picocolors": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+ "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+ "dev": true
+ },
+ "node_modules/postcss-calc/node_modules/postcss": {
+ "version": "7.0.39",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+ "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+ "dev": true,
+ "dependencies": {
+ "picocolors": "^0.2.1",
+ "source-map": "^0.6.1"
+ },
+ "engines": {
+ "node": ">=6.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/postcss/"
+ }
+ },
+ "node_modules/postcss-calc/node_modules/source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/postcss-colormin": {
+ "version": "4.0.3",
+ "resolved": "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-4.0.3.tgz",
+ "integrity": "sha512-WyQFAdDZpExQh32j0U0feWisZ0dmOtPl44qYmJKkq9xFWY3p+4qnRzCHeNrkeRhwPHz9bQ3mo0/yVkaply0MNw==",
+ "dev": true,
+ "dependencies": {
+ "browserslist": "^4.0.0",
+ "color": "^3.0.0",
+ "has": "^1.0.0",
+ "postcss": "^7.0.0",
+ "postcss-value-parser": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/postcss-colormin/node_modules/picocolors": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+ "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+ "dev": true
+ },
+ "node_modules/postcss-colormin/node_modules/postcss": {
+ "version": "7.0.39",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+ "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+ "dev": true,
+ "dependencies": {
+ "picocolors": "^0.2.1",
+ "source-map": "^0.6.1"
+ },
+ "engines": {
+ "node": ">=6.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/postcss/"
+ }
+ },
+ "node_modules/postcss-colormin/node_modules/postcss-value-parser": {
+ "version": "3.3.1",
+ "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
+ "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
+ "dev": true
+ },
+ "node_modules/postcss-colormin/node_modules/source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/postcss-convert-values": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-4.0.1.tgz",
+ "integrity": "sha512-Kisdo1y77KUC0Jmn0OXU/COOJbzM8cImvw1ZFsBgBgMgb1iL23Zs/LXRe3r+EZqM3vGYKdQ2YJVQ5VkJI+zEJQ==",
+ "dev": true,
+ "dependencies": {
+ "postcss": "^7.0.0",
+ "postcss-value-parser": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/postcss-convert-values/node_modules/picocolors": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+ "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+ "dev": true
+ },
+ "node_modules/postcss-convert-values/node_modules/postcss": {
+ "version": "7.0.39",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+ "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+ "dev": true,
+ "dependencies": {
+ "picocolors": "^0.2.1",
+ "source-map": "^0.6.1"
+ },
+ "engines": {
+ "node": ">=6.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/postcss/"
+ }
+ },
+ "node_modules/postcss-convert-values/node_modules/postcss-value-parser": {
+ "version": "3.3.1",
+ "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
+ "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
+ "dev": true
+ },
+ "node_modules/postcss-convert-values/node_modules/source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/postcss-discard-comments": {
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-4.0.2.tgz",
+ "integrity": "sha512-RJutN259iuRf3IW7GZyLM5Sw4GLTOH8FmsXBnv8Ab/Tc2k4SR4qbV4DNbyyY4+Sjo362SyDmW2DQ7lBSChrpkg==",
+ "dev": true,
+ "dependencies": {
+ "postcss": "^7.0.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/postcss-discard-comments/node_modules/picocolors": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+ "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+ "dev": true
+ },
+ "node_modules/postcss-discard-comments/node_modules/postcss": {
+ "version": "7.0.39",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+ "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+ "dev": true,
+ "dependencies": {
+ "picocolors": "^0.2.1",
+ "source-map": "^0.6.1"
+ },
+ "engines": {
+ "node": ">=6.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/postcss/"
+ }
+ },
+ "node_modules/postcss-discard-comments/node_modules/source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/postcss-discard-duplicates": {
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-4.0.2.tgz",
+ "integrity": "sha512-ZNQfR1gPNAiXZhgENFfEglF93pciw0WxMkJeVmw8eF+JZBbMD7jp6C67GqJAXVZP2BWbOztKfbsdmMp/k8c6oQ==",
+ "dev": true,
+ "dependencies": {
+ "postcss": "^7.0.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/postcss-discard-duplicates/node_modules/picocolors": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+ "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+ "dev": true
+ },
+ "node_modules/postcss-discard-duplicates/node_modules/postcss": {
+ "version": "7.0.39",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+ "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+ "dev": true,
+ "dependencies": {
+ "picocolors": "^0.2.1",
+ "source-map": "^0.6.1"
+ },
+ "engines": {
+ "node": ">=6.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/postcss/"
+ }
+ },
+ "node_modules/postcss-discard-duplicates/node_modules/source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/postcss-discard-empty": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-4.0.1.tgz",
+ "integrity": "sha512-B9miTzbznhDjTfjvipfHoqbWKwd0Mj+/fL5s1QOz06wufguil+Xheo4XpOnc4NqKYBCNqqEzgPv2aPBIJLox0w==",
+ "dev": true,
+ "dependencies": {
+ "postcss": "^7.0.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/postcss-discard-empty/node_modules/picocolors": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+ "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+ "dev": true
+ },
+ "node_modules/postcss-discard-empty/node_modules/postcss": {
+ "version": "7.0.39",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+ "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+ "dev": true,
+ "dependencies": {
+ "picocolors": "^0.2.1",
+ "source-map": "^0.6.1"
+ },
+ "engines": {
+ "node": ">=6.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/postcss/"
+ }
+ },
+ "node_modules/postcss-discard-empty/node_modules/source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/postcss-discard-overridden": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-4.0.1.tgz",
+ "integrity": "sha512-IYY2bEDD7g1XM1IDEsUT4//iEYCxAmP5oDSFMVU/JVvT7gh+l4fmjciLqGgwjdWpQIdb0Che2VX00QObS5+cTg==",
+ "dev": true,
+ "dependencies": {
+ "postcss": "^7.0.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/postcss-discard-overridden/node_modules/picocolors": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+ "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+ "dev": true
+ },
+ "node_modules/postcss-discard-overridden/node_modules/postcss": {
+ "version": "7.0.39",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+ "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+ "dev": true,
+ "dependencies": {
+ "picocolors": "^0.2.1",
+ "source-map": "^0.6.1"
+ },
+ "engines": {
+ "node": ">=6.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/postcss/"
+ }
+ },
+ "node_modules/postcss-discard-overridden/node_modules/source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/postcss-merge-longhand": {
+ "version": "4.0.11",
+ "resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-4.0.11.tgz",
+ "integrity": "sha512-alx/zmoeXvJjp7L4mxEMjh8lxVlDFX1gqWHzaaQewwMZiVhLo42TEClKaeHbRf6J7j82ZOdTJ808RtN0ZOZwvw==",
+ "dev": true,
+ "dependencies": {
+ "css-color-names": "0.0.4",
+ "postcss": "^7.0.0",
+ "postcss-value-parser": "^3.0.0",
+ "stylehacks": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/postcss-merge-longhand/node_modules/picocolors": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+ "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+ "dev": true
+ },
+ "node_modules/postcss-merge-longhand/node_modules/postcss": {
+ "version": "7.0.39",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+ "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+ "dev": true,
+ "dependencies": {
+ "picocolors": "^0.2.1",
+ "source-map": "^0.6.1"
+ },
+ "engines": {
+ "node": ">=6.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/postcss/"
+ }
+ },
+ "node_modules/postcss-merge-longhand/node_modules/postcss-value-parser": {
+ "version": "3.3.1",
+ "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
+ "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
+ "dev": true
+ },
+ "node_modules/postcss-merge-longhand/node_modules/source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/postcss-merge-rules": {
+ "version": "4.0.3",
+ "resolved": "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-4.0.3.tgz",
+ "integrity": "sha512-U7e3r1SbvYzO0Jr3UT/zKBVgYYyhAz0aitvGIYOYK5CPmkNih+WDSsS5tvPrJ8YMQYlEMvsZIiqmn7HdFUaeEQ==",
+ "dev": true,
+ "dependencies": {
+ "browserslist": "^4.0.0",
+ "caniuse-api": "^3.0.0",
+ "cssnano-util-same-parent": "^4.0.0",
+ "postcss": "^7.0.0",
+ "postcss-selector-parser": "^3.0.0",
+ "vendors": "^1.0.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/postcss-merge-rules/node_modules/picocolors": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+ "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+ "dev": true
+ },
+ "node_modules/postcss-merge-rules/node_modules/postcss": {
+ "version": "7.0.39",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+ "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+ "dev": true,
+ "dependencies": {
+ "picocolors": "^0.2.1",
+ "source-map": "^0.6.1"
+ },
+ "engines": {
+ "node": ">=6.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/postcss/"
+ }
+ },
+ "node_modules/postcss-merge-rules/node_modules/postcss-selector-parser": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz",
+ "integrity": "sha512-h7fJ/5uWuRVyOtkO45pnt1Ih40CEleeyCHzipqAZO2e5H20g25Y48uYnFUiShvY4rZWNJ/Bib/KVPmanaCtOhA==",
+ "dev": true,
+ "dependencies": {
+ "dot-prop": "^5.2.0",
+ "indexes-of": "^1.0.1",
+ "uniq": "^1.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/postcss-merge-rules/node_modules/source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/postcss-minify-font-values": {
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-4.0.2.tgz",
+ "integrity": "sha512-j85oO6OnRU9zPf04+PZv1LYIYOprWm6IA6zkXkrJXyRveDEuQggG6tvoy8ir8ZwjLxLuGfNkCZEQG7zan+Hbtg==",
+ "dev": true,
+ "dependencies": {
+ "postcss": "^7.0.0",
+ "postcss-value-parser": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/postcss-minify-font-values/node_modules/picocolors": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+ "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+ "dev": true
+ },
+ "node_modules/postcss-minify-font-values/node_modules/postcss": {
+ "version": "7.0.39",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+ "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+ "dev": true,
+ "dependencies": {
+ "picocolors": "^0.2.1",
+ "source-map": "^0.6.1"
+ },
+ "engines": {
+ "node": ">=6.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/postcss/"
+ }
+ },
+ "node_modules/postcss-minify-font-values/node_modules/postcss-value-parser": {
+ "version": "3.3.1",
+ "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
+ "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
+ "dev": true
+ },
+ "node_modules/postcss-minify-font-values/node_modules/source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/postcss-minify-gradients": {
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-4.0.2.tgz",
+ "integrity": "sha512-qKPfwlONdcf/AndP1U8SJ/uzIJtowHlMaSioKzebAXSG4iJthlWC9iSWznQcX4f66gIWX44RSA841HTHj3wK+Q==",
+ "dev": true,
+ "dependencies": {
+ "cssnano-util-get-arguments": "^4.0.0",
+ "is-color-stop": "^1.0.0",
+ "postcss": "^7.0.0",
+ "postcss-value-parser": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/postcss-minify-gradients/node_modules/picocolors": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+ "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+ "dev": true
+ },
+ "node_modules/postcss-minify-gradients/node_modules/postcss": {
+ "version": "7.0.39",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+ "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+ "dev": true,
+ "dependencies": {
+ "picocolors": "^0.2.1",
+ "source-map": "^0.6.1"
+ },
+ "engines": {
+ "node": ">=6.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/postcss/"
+ }
+ },
+ "node_modules/postcss-minify-gradients/node_modules/postcss-value-parser": {
+ "version": "3.3.1",
+ "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
+ "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
+ "dev": true
+ },
+ "node_modules/postcss-minify-gradients/node_modules/source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/postcss-minify-params": {
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-4.0.2.tgz",
+ "integrity": "sha512-G7eWyzEx0xL4/wiBBJxJOz48zAKV2WG3iZOqVhPet/9geefm/Px5uo1fzlHu+DOjT+m0Mmiz3jkQzVHe6wxAWg==",
+ "dev": true,
+ "dependencies": {
+ "alphanum-sort": "^1.0.0",
+ "browserslist": "^4.0.0",
+ "cssnano-util-get-arguments": "^4.0.0",
+ "postcss": "^7.0.0",
+ "postcss-value-parser": "^3.0.0",
+ "uniqs": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/postcss-minify-params/node_modules/picocolors": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+ "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+ "dev": true
+ },
+ "node_modules/postcss-minify-params/node_modules/postcss": {
+ "version": "7.0.39",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+ "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+ "dev": true,
+ "dependencies": {
+ "picocolors": "^0.2.1",
+ "source-map": "^0.6.1"
+ },
+ "engines": {
+ "node": ">=6.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/postcss/"
+ }
+ },
+ "node_modules/postcss-minify-params/node_modules/postcss-value-parser": {
+ "version": "3.3.1",
+ "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
+ "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
+ "dev": true
+ },
+ "node_modules/postcss-minify-params/node_modules/source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/postcss-minify-selectors": {
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-4.0.2.tgz",
+ "integrity": "sha512-D5S1iViljXBj9kflQo4YutWnJmwm8VvIsU1GeXJGiG9j8CIg9zs4voPMdQDUmIxetUOh60VilsNzCiAFTOqu3g==",
+ "dev": true,
+ "dependencies": {
+ "alphanum-sort": "^1.0.0",
+ "has": "^1.0.0",
+ "postcss": "^7.0.0",
+ "postcss-selector-parser": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/postcss-minify-selectors/node_modules/picocolors": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+ "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+ "dev": true
+ },
+ "node_modules/postcss-minify-selectors/node_modules/postcss": {
+ "version": "7.0.39",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+ "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+ "dev": true,
+ "dependencies": {
+ "picocolors": "^0.2.1",
+ "source-map": "^0.6.1"
+ },
+ "engines": {
+ "node": ">=6.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/postcss/"
+ }
+ },
+ "node_modules/postcss-minify-selectors/node_modules/postcss-selector-parser": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz",
+ "integrity": "sha512-h7fJ/5uWuRVyOtkO45pnt1Ih40CEleeyCHzipqAZO2e5H20g25Y48uYnFUiShvY4rZWNJ/Bib/KVPmanaCtOhA==",
+ "dev": true,
+ "dependencies": {
+ "dot-prop": "^5.2.0",
+ "indexes-of": "^1.0.1",
+ "uniq": "^1.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/postcss-minify-selectors/node_modules/source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/postcss-normalize-charset": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-4.0.1.tgz",
+ "integrity": "sha512-gMXCrrlWh6G27U0hF3vNvR3w8I1s2wOBILvA87iNXaPvSNo5uZAMYsZG7XjCUf1eVxuPfyL4TJ7++SGZLc9A3g==",
+ "dev": true,
+ "dependencies": {
+ "postcss": "^7.0.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/postcss-normalize-charset/node_modules/picocolors": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+ "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+ "dev": true
+ },
+ "node_modules/postcss-normalize-charset/node_modules/postcss": {
+ "version": "7.0.39",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+ "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+ "dev": true,
+ "dependencies": {
+ "picocolors": "^0.2.1",
+ "source-map": "^0.6.1"
+ },
+ "engines": {
+ "node": ">=6.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/postcss/"
+ }
+ },
+ "node_modules/postcss-normalize-charset/node_modules/source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/postcss-normalize-display-values": {
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/postcss-normalize-display-values/-/postcss-normalize-display-values-4.0.2.tgz",
+ "integrity": "sha512-3F2jcsaMW7+VtRMAqf/3m4cPFhPD3EFRgNs18u+k3lTJJlVe7d0YPO+bnwqo2xg8YiRpDXJI2u8A0wqJxMsQuQ==",
+ "dev": true,
+ "dependencies": {
+ "cssnano-util-get-match": "^4.0.0",
+ "postcss": "^7.0.0",
+ "postcss-value-parser": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/postcss-normalize-display-values/node_modules/picocolors": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+ "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+ "dev": true
+ },
+ "node_modules/postcss-normalize-display-values/node_modules/postcss": {
+ "version": "7.0.39",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+ "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+ "dev": true,
+ "dependencies": {
+ "picocolors": "^0.2.1",
+ "source-map": "^0.6.1"
+ },
+ "engines": {
+ "node": ">=6.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/postcss/"
+ }
+ },
+ "node_modules/postcss-normalize-display-values/node_modules/postcss-value-parser": {
+ "version": "3.3.1",
+ "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
+ "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
+ "dev": true
+ },
+ "node_modules/postcss-normalize-display-values/node_modules/source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/postcss-normalize-positions": {
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/postcss-normalize-positions/-/postcss-normalize-positions-4.0.2.tgz",
+ "integrity": "sha512-Dlf3/9AxpxE+NF1fJxYDeggi5WwV35MXGFnnoccP/9qDtFrTArZ0D0R+iKcg5WsUd8nUYMIl8yXDCtcrT8JrdA==",
+ "dev": true,
+ "dependencies": {
+ "cssnano-util-get-arguments": "^4.0.0",
+ "has": "^1.0.0",
+ "postcss": "^7.0.0",
+ "postcss-value-parser": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/postcss-normalize-positions/node_modules/picocolors": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+ "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+ "dev": true
+ },
+ "node_modules/postcss-normalize-positions/node_modules/postcss": {
+ "version": "7.0.39",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+ "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+ "dev": true,
+ "dependencies": {
+ "picocolors": "^0.2.1",
+ "source-map": "^0.6.1"
+ },
+ "engines": {
+ "node": ">=6.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/postcss/"
+ }
+ },
+ "node_modules/postcss-normalize-positions/node_modules/postcss-value-parser": {
+ "version": "3.3.1",
+ "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
+ "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
+ "dev": true
+ },
+ "node_modules/postcss-normalize-positions/node_modules/source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/postcss-normalize-repeat-style": {
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-4.0.2.tgz",
+ "integrity": "sha512-qvigdYYMpSuoFs3Is/f5nHdRLJN/ITA7huIoCyqqENJe9PvPmLhNLMu7QTjPdtnVf6OcYYO5SHonx4+fbJE1+Q==",
+ "dev": true,
+ "dependencies": {
+ "cssnano-util-get-arguments": "^4.0.0",
+ "cssnano-util-get-match": "^4.0.0",
+ "postcss": "^7.0.0",
+ "postcss-value-parser": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/postcss-normalize-repeat-style/node_modules/picocolors": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+ "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+ "dev": true
+ },
+ "node_modules/postcss-normalize-repeat-style/node_modules/postcss": {
+ "version": "7.0.39",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+ "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+ "dev": true,
+ "dependencies": {
+ "picocolors": "^0.2.1",
+ "source-map": "^0.6.1"
+ },
+ "engines": {
+ "node": ">=6.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/postcss/"
+ }
+ },
+ "node_modules/postcss-normalize-repeat-style/node_modules/postcss-value-parser": {
+ "version": "3.3.1",
+ "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
+ "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
+ "dev": true
+ },
+ "node_modules/postcss-normalize-repeat-style/node_modules/source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/postcss-normalize-string": {
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/postcss-normalize-string/-/postcss-normalize-string-4.0.2.tgz",
+ "integrity": "sha512-RrERod97Dnwqq49WNz8qo66ps0swYZDSb6rM57kN2J+aoyEAJfZ6bMx0sx/F9TIEX0xthPGCmeyiam/jXif0eA==",
+ "dev": true,
+ "dependencies": {
+ "has": "^1.0.0",
+ "postcss": "^7.0.0",
+ "postcss-value-parser": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/postcss-normalize-string/node_modules/picocolors": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+ "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+ "dev": true
+ },
+ "node_modules/postcss-normalize-string/node_modules/postcss": {
+ "version": "7.0.39",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+ "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+ "dev": true,
+ "dependencies": {
+ "picocolors": "^0.2.1",
+ "source-map": "^0.6.1"
+ },
+ "engines": {
+ "node": ">=6.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/postcss/"
+ }
+ },
+ "node_modules/postcss-normalize-string/node_modules/postcss-value-parser": {
+ "version": "3.3.1",
+ "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
+ "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
+ "dev": true
+ },
+ "node_modules/postcss-normalize-string/node_modules/source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/postcss-normalize-timing-functions": {
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-4.0.2.tgz",
+ "integrity": "sha512-acwJY95edP762e++00Ehq9L4sZCEcOPyaHwoaFOhIwWCDfik6YvqsYNxckee65JHLKzuNSSmAdxwD2Cud1Z54A==",
+ "dev": true,
+ "dependencies": {
+ "cssnano-util-get-match": "^4.0.0",
+ "postcss": "^7.0.0",
+ "postcss-value-parser": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/postcss-normalize-timing-functions/node_modules/picocolors": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+ "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+ "dev": true
+ },
+ "node_modules/postcss-normalize-timing-functions/node_modules/postcss": {
+ "version": "7.0.39",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+ "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+ "dev": true,
+ "dependencies": {
+ "picocolors": "^0.2.1",
+ "source-map": "^0.6.1"
+ },
+ "engines": {
+ "node": ">=6.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/postcss/"
+ }
+ },
+ "node_modules/postcss-normalize-timing-functions/node_modules/postcss-value-parser": {
+ "version": "3.3.1",
+ "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
+ "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
+ "dev": true
+ },
+ "node_modules/postcss-normalize-timing-functions/node_modules/source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/postcss-normalize-unicode": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-4.0.1.tgz",
+ "integrity": "sha512-od18Uq2wCYn+vZ/qCOeutvHjB5jm57ToxRaMeNuf0nWVHaP9Hua56QyMF6fs/4FSUnVIw0CBPsU0K4LnBPwYwg==",
+ "dev": true,
+ "dependencies": {
+ "browserslist": "^4.0.0",
+ "postcss": "^7.0.0",
+ "postcss-value-parser": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/postcss-normalize-unicode/node_modules/picocolors": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+ "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+ "dev": true
+ },
+ "node_modules/postcss-normalize-unicode/node_modules/postcss": {
+ "version": "7.0.39",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+ "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+ "dev": true,
+ "dependencies": {
+ "picocolors": "^0.2.1",
+ "source-map": "^0.6.1"
+ },
+ "engines": {
+ "node": ">=6.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/postcss/"
+ }
+ },
+ "node_modules/postcss-normalize-unicode/node_modules/postcss-value-parser": {
+ "version": "3.3.1",
+ "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
+ "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
+ "dev": true
+ },
+ "node_modules/postcss-normalize-unicode/node_modules/source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/postcss-normalize-url": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-4.0.1.tgz",
+ "integrity": "sha512-p5oVaF4+IHwu7VpMan/SSpmpYxcJMtkGppYf0VbdH5B6hN8YNmVyJLuY9FmLQTzY3fag5ESUUHDqM+heid0UVA==",
+ "dev": true,
+ "dependencies": {
+ "is-absolute-url": "^2.0.0",
+ "normalize-url": "^3.0.0",
+ "postcss": "^7.0.0",
+ "postcss-value-parser": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/postcss-normalize-url/node_modules/picocolors": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+ "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+ "dev": true
+ },
+ "node_modules/postcss-normalize-url/node_modules/postcss": {
+ "version": "7.0.39",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+ "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+ "dev": true,
+ "dependencies": {
+ "picocolors": "^0.2.1",
+ "source-map": "^0.6.1"
+ },
+ "engines": {
+ "node": ">=6.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/postcss/"
+ }
+ },
+ "node_modules/postcss-normalize-url/node_modules/postcss-value-parser": {
+ "version": "3.3.1",
+ "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
+ "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
+ "dev": true
+ },
+ "node_modules/postcss-normalize-url/node_modules/source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/postcss-normalize-whitespace": {
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/postcss-normalize-whitespace/-/postcss-normalize-whitespace-4.0.2.tgz",
+ "integrity": "sha512-tO8QIgrsI3p95r8fyqKV+ufKlSHh9hMJqACqbv2XknufqEDhDvbguXGBBqxw9nsQoXWf0qOqppziKJKHMD4GtA==",
+ "dev": true,
+ "dependencies": {
+ "postcss": "^7.0.0",
+ "postcss-value-parser": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/postcss-normalize-whitespace/node_modules/picocolors": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+ "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+ "dev": true
+ },
+ "node_modules/postcss-normalize-whitespace/node_modules/postcss": {
+ "version": "7.0.39",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+ "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+ "dev": true,
+ "dependencies": {
+ "picocolors": "^0.2.1",
+ "source-map": "^0.6.1"
+ },
+ "engines": {
+ "node": ">=6.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/postcss/"
+ }
+ },
+ "node_modules/postcss-normalize-whitespace/node_modules/postcss-value-parser": {
+ "version": "3.3.1",
+ "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
+ "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
+ "dev": true
+ },
+ "node_modules/postcss-normalize-whitespace/node_modules/source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/postcss-ordered-values": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-4.1.2.tgz",
+ "integrity": "sha512-2fCObh5UanxvSxeXrtLtlwVThBvHn6MQcu4ksNT2tsaV2Fg76R2CV98W7wNSlX+5/pFwEyaDwKLLoEV7uRybAw==",
+ "dev": true,
+ "dependencies": {
+ "cssnano-util-get-arguments": "^4.0.0",
+ "postcss": "^7.0.0",
+ "postcss-value-parser": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/postcss-ordered-values/node_modules/picocolors": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+ "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+ "dev": true
+ },
+ "node_modules/postcss-ordered-values/node_modules/postcss": {
+ "version": "7.0.39",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+ "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+ "dev": true,
+ "dependencies": {
+ "picocolors": "^0.2.1",
+ "source-map": "^0.6.1"
+ },
+ "engines": {
+ "node": ">=6.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/postcss/"
+ }
+ },
+ "node_modules/postcss-ordered-values/node_modules/postcss-value-parser": {
+ "version": "3.3.1",
+ "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
+ "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
+ "dev": true
+ },
+ "node_modules/postcss-ordered-values/node_modules/source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/postcss-reduce-initial": {
+ "version": "4.0.3",
+ "resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-4.0.3.tgz",
+ "integrity": "sha512-gKWmR5aUulSjbzOfD9AlJiHCGH6AEVLaM0AV+aSioxUDd16qXP1PCh8d1/BGVvpdWn8k/HiK7n6TjeoXN1F7DA==",
+ "dev": true,
+ "dependencies": {
+ "browserslist": "^4.0.0",
+ "caniuse-api": "^3.0.0",
+ "has": "^1.0.0",
+ "postcss": "^7.0.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/postcss-reduce-initial/node_modules/picocolors": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+ "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+ "dev": true
+ },
+ "node_modules/postcss-reduce-initial/node_modules/postcss": {
+ "version": "7.0.39",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+ "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+ "dev": true,
+ "dependencies": {
+ "picocolors": "^0.2.1",
+ "source-map": "^0.6.1"
+ },
+ "engines": {
+ "node": ">=6.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/postcss/"
+ }
+ },
+ "node_modules/postcss-reduce-initial/node_modules/source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/postcss-reduce-transforms": {
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-4.0.2.tgz",
+ "integrity": "sha512-EEVig1Q2QJ4ELpJXMZR8Vt5DQx8/mo+dGWSR7vWXqcob2gQLyQGsionYcGKATXvQzMPn6DSN1vTN7yFximdIAg==",
+ "dev": true,
+ "dependencies": {
+ "cssnano-util-get-match": "^4.0.0",
+ "has": "^1.0.0",
+ "postcss": "^7.0.0",
+ "postcss-value-parser": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/postcss-reduce-transforms/node_modules/picocolors": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+ "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+ "dev": true
+ },
+ "node_modules/postcss-reduce-transforms/node_modules/postcss": {
+ "version": "7.0.39",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+ "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+ "dev": true,
+ "dependencies": {
+ "picocolors": "^0.2.1",
+ "source-map": "^0.6.1"
+ },
+ "engines": {
+ "node": ">=6.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/postcss/"
+ }
+ },
+ "node_modules/postcss-reduce-transforms/node_modules/postcss-value-parser": {
+ "version": "3.3.1",
+ "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
+ "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
+ "dev": true
+ },
+ "node_modules/postcss-reduce-transforms/node_modules/source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/postcss-selector-parser": {
+ "version": "6.0.11",
+ "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.11.tgz",
+ "integrity": "sha512-zbARubNdogI9j7WY4nQJBiNqQf3sLS3wCP4WfOidu+p28LofJqDH1tcXypGrcmMHhDk2t9wGhCsYe/+szLTy1g==",
+ "dev": true,
+ "dependencies": {
+ "cssesc": "^3.0.0",
+ "util-deprecate": "^1.0.2"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/postcss-svgo": {
+ "version": "4.0.3",
+ "resolved": "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-4.0.3.tgz",
+ "integrity": "sha512-NoRbrcMWTtUghzuKSoIm6XV+sJdvZ7GZSc3wdBN0W19FTtp2ko8NqLsgoh/m9CzNhU3KLPvQmjIwtaNFkaFTvw==",
+ "dev": true,
+ "dependencies": {
+ "postcss": "^7.0.0",
+ "postcss-value-parser": "^3.0.0",
+ "svgo": "^1.0.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/postcss-svgo/node_modules/picocolors": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+ "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+ "dev": true
+ },
+ "node_modules/postcss-svgo/node_modules/postcss": {
+ "version": "7.0.39",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+ "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+ "dev": true,
+ "dependencies": {
+ "picocolors": "^0.2.1",
+ "source-map": "^0.6.1"
+ },
+ "engines": {
+ "node": ">=6.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/postcss/"
+ }
+ },
+ "node_modules/postcss-svgo/node_modules/postcss-value-parser": {
+ "version": "3.3.1",
+ "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
+ "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
+ "dev": true
+ },
+ "node_modules/postcss-svgo/node_modules/source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/postcss-unique-selectors": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-4.0.1.tgz",
+ "integrity": "sha512-+JanVaryLo9QwZjKrmJgkI4Fn8SBgRO6WXQBJi7KiAVPlmxikB5Jzc4EvXMT2H0/m0RjrVVm9rGNhZddm/8Spg==",
+ "dev": true,
+ "dependencies": {
+ "alphanum-sort": "^1.0.0",
+ "postcss": "^7.0.0",
+ "uniqs": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/postcss-unique-selectors/node_modules/picocolors": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+ "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+ "dev": true
+ },
+ "node_modules/postcss-unique-selectors/node_modules/postcss": {
+ "version": "7.0.39",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+ "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+ "dev": true,
+ "dependencies": {
+ "picocolors": "^0.2.1",
+ "source-map": "^0.6.1"
+ },
+ "engines": {
+ "node": ">=6.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/postcss/"
+ }
+ },
+ "node_modules/postcss-unique-selectors/node_modules/source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/postcss-value-parser": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.1.0.tgz",
+ "integrity": "sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ==",
+ "dev": true
+ },
+ "node_modules/postcss/node_modules/colorette": {
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.4.0.tgz",
+ "integrity": "sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==",
+ "dev": true
+ },
+ "node_modules/postcss/node_modules/source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/prelude-ls": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz",
+ "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==",
+ "dev": true,
+ "engines": {
+ "node": ">= 0.8.0"
+ }
+ },
+ "node_modules/prettier": {
+ "version": "2.8.7",
+ "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.7.tgz",
+ "integrity": "sha512-yPngTo3aXUUmyuTjeTUT75txrf+aMh9FiD7q9ZE/i6r0bPb22g4FsE6Y338PQX1bmfy08i9QQCB7/rcUAVntfw==",
+ "dev": true,
+ "bin": {
+ "prettier": "bin-prettier.js"
+ },
+ "engines": {
+ "node": ">=10.13.0"
+ },
+ "funding": {
+ "url": "https://github.com/prettier/prettier?sponsor=1"
+ }
+ },
+ "node_modules/prettier-plugin-apex": {
+ "version": "1.12.0",
+ "resolved": "https://registry.npmjs.org/prettier-plugin-apex/-/prettier-plugin-apex-1.12.0.tgz",
+ "integrity": "sha512-8tnF2Pp5RMoEYipgFudrujlWRlXqags4lJZD7xSgordX+Bsh8Pq1jXPihkkquHKy4PeZMIuJAtYIEOFLBQIv/w==",
+ "dev": true,
+ "dependencies": {
+ "axios": "^1.0.0",
+ "jest-docblock": "^29.0.0",
+ "wait-on": "^6.0.0",
+ "yargs": "^17.0.0"
+ },
+ "bin": {
+ "apex-ast-serializer": "vendor/apex-ast-serializer/bin/apex-ast-serializer",
+ "apex-ast-serializer-http": "vendor/apex-ast-serializer/bin/apex-ast-serializer-http",
+ "start-apex-server": "dist/bin/start-apex-server.js",
+ "stop-apex-server": "dist/bin/stop-apex-server.js"
+ },
+ "engines": {
+ "node": ">= 14.0.0"
+ },
+ "peerDependencies": {
+ "prettier": "^2.0.0"
+ }
+ },
+ "node_modules/prettier-plugin-apex/node_modules/cliui": {
+ "version": "8.0.1",
+ "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz",
+ "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==",
+ "dev": true,
+ "dependencies": {
+ "string-width": "^4.2.0",
+ "strip-ansi": "^6.0.1",
+ "wrap-ansi": "^7.0.0"
+ },
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/prettier-plugin-apex/node_modules/jest-docblock": {
+ "version": "29.4.3",
+ "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-29.4.3.tgz",
+ "integrity": "sha512-fzdTftThczeSD9nZ3fzA/4KkHtnmllawWrXO69vtI+L9WjEIuXWs4AmyME7lN5hU7dB0sHhuPfcKofRsUb/2Fg==",
+ "dev": true,
+ "dependencies": {
+ "detect-newline": "^3.0.0"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/prettier-plugin-apex/node_modules/y18n": {
+ "version": "5.0.8",
+ "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz",
+ "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==",
+ "dev": true,
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/prettier-plugin-apex/node_modules/yargs": {
+ "version": "17.7.1",
+ "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.1.tgz",
+ "integrity": "sha512-cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw==",
+ "dev": true,
+ "dependencies": {
+ "cliui": "^8.0.1",
+ "escalade": "^3.1.1",
+ "get-caller-file": "^2.0.5",
+ "require-directory": "^2.1.1",
+ "string-width": "^4.2.3",
+ "y18n": "^5.0.5",
+ "yargs-parser": "^21.1.1"
+ },
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/prettier-plugin-apex/node_modules/yargs-parser": {
+ "version": "21.1.1",
+ "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz",
+ "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==",
+ "dev": true,
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/pretty-format": {
+ "version": "25.4.0",
+ "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-25.4.0.tgz",
+ "integrity": "sha512-PI/2dpGjXK5HyXexLPZU/jw5T9Q6S1YVXxxVxco+LIqzUFHXIbKZKdUVt7GcX7QUCr31+3fzhi4gN4/wUYPVxQ==",
+ "dev": true,
+ "dependencies": {
+ "@jest/types": "^25.4.0",
+ "ansi-regex": "^5.0.0",
+ "ansi-styles": "^4.0.0",
+ "react-is": "^16.12.0"
+ },
+ "engines": {
+ "node": ">= 8.3"
+ }
+ },
+ "node_modules/pretty-format/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/pretty-format/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/pretty-format/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/progress": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz",
+ "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.4.0"
+ }
+ },
+ "node_modules/prompts": {
+ "version": "2.4.2",
+ "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz",
+ "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==",
+ "dev": true,
+ "dependencies": {
+ "kleur": "^3.0.3",
+ "sisteransi": "^1.0.5"
+ },
+ "engines": {
+ "node": ">= 6"
+ }
+ },
+ "node_modules/proxy-from-env": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz",
+ "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==",
+ "dev": true
+ },
+ "node_modules/psl": {
+ "version": "1.9.0",
+ "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz",
+ "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==",
+ "dev": true
+ },
+ "node_modules/pump": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz",
+ "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==",
+ "dev": true,
+ "dependencies": {
+ "end-of-stream": "^1.1.0",
+ "once": "^1.3.1"
+ }
+ },
+ "node_modules/punycode": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz",
+ "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==",
+ "dev": true,
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/q": {
+ "version": "1.5.1",
+ "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz",
+ "integrity": "sha512-kV/CThkXo6xyFEZUugw/+pIOywXcDbFYgSct5cT3gqlbkBE1SJdwy6UQoZvodiWF/ckQLZyDE/Bu1M6gVu5lVw==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.6.0",
+ "teleport": ">=0.2.0"
+ }
+ },
+ "node_modules/qs": {
+ "version": "6.5.3",
+ "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz",
+ "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.6"
+ }
+ },
+ "node_modules/queue-microtask": {
+ "version": "1.2.3",
+ "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz",
+ "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/feross"
+ },
+ {
+ "type": "patreon",
+ "url": "https://www.patreon.com/feross"
+ },
+ {
+ "type": "consulting",
+ "url": "https://feross.org/support"
+ }
+ ]
+ },
+ "node_modules/react-is": {
+ "version": "16.13.1",
+ "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz",
+ "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==",
+ "dev": true
+ },
+ "node_modules/read-pkg": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz",
+ "integrity": "sha512-eFIBOPW7FGjzBuk3hdXEuNSiTZS/xEMlH49HxMyzb0hyPfu4EhVjT2DH32K1hSSmVq4sebAWnZuuY5auISUTGA==",
+ "dev": true,
+ "dependencies": {
+ "load-json-file": "^2.0.0",
+ "normalize-package-data": "^2.3.2",
+ "path-type": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/read-pkg-up": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz",
+ "integrity": "sha512-1orxQfbWGUiTn9XsPlChs6rLie/AV9jwZTGmu2NZw/CUDJQchXJFYE0Fq5j7+n558T1JhDWLdhyd1Zj+wLY//w==",
+ "dev": true,
+ "dependencies": {
+ "find-up": "^2.0.0",
+ "read-pkg": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/read-pkg-up/node_modules/find-up": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz",
+ "integrity": "sha512-NWzkk0jSJtTt08+FBFMvXoeZnOJD+jTtsRmBYbAIzJdX6l7dLgR7CTubCM5/eDdPUBvLCeVasP1brfVR/9/EZQ==",
+ "dev": true,
+ "dependencies": {
+ "locate-path": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/read-pkg-up/node_modules/locate-path": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz",
+ "integrity": "sha512-NCI2kiDkyR7VeEKm27Kda/iQHyKJe1Bu0FlTbYp3CqJu+9IFe9bLyAjMxf5ZDDbEg+iMPzB5zYyUTSm8wVTKmA==",
+ "dev": true,
+ "dependencies": {
+ "p-locate": "^2.0.0",
+ "path-exists": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/read-pkg-up/node_modules/p-limit": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz",
+ "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==",
+ "dev": true,
+ "dependencies": {
+ "p-try": "^1.0.0"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/read-pkg-up/node_modules/p-locate": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz",
+ "integrity": "sha512-nQja7m7gSKuewoVRen45CtVfODR3crN3goVQ0DDZ9N3yHxgpkuBhZqsaiotSQRrADUrne346peY7kT3TSACykg==",
+ "dev": true,
+ "dependencies": {
+ "p-limit": "^1.1.0"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/read-pkg-up/node_modules/p-try": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz",
+ "integrity": "sha512-U1etNYuMJoIz3ZXSrrySFjsXQTWOx2/jdi86L+2pRvph/qMKL6sbcCYdH23fqsbm8TH2Gn0OybpT4eSFlCVHww==",
+ "dev": true,
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/read-pkg-up/node_modules/path-exists": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
+ "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/read-pkg/node_modules/path-type": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz",
+ "integrity": "sha512-dUnb5dXUf+kzhC/W/F4e5/SkluXIFf5VUHolW1Eg1irn1hGWjPGdsRcvYJ1nD6lhk8Ir7VM0bHJKsYTx8Jx9OQ==",
+ "dev": true,
+ "dependencies": {
+ "pify": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/realpath-native": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/realpath-native/-/realpath-native-2.0.0.tgz",
+ "integrity": "sha512-v1SEYUOXXdbBZK8ZuNgO4TBjamPsiSgcFr0aP+tEKpQZK8vooEUqV6nm6Cv502mX4NF2EfsnVqtNAHG+/6Ur1Q==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/regenerate": {
+ "version": "1.4.2",
+ "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz",
+ "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==",
+ "dev": true
+ },
+ "node_modules/regenerate-unicode-properties": {
+ "version": "10.1.0",
+ "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.0.tgz",
+ "integrity": "sha512-d1VudCLoIGitcU/hEg2QqvyGZQmdC0Lf8BqdOMXGFSvJP4bNV1+XqbPQeHHLD51Jh4QJJ225dlIFvY4Ly6MXmQ==",
+ "dev": true,
+ "dependencies": {
+ "regenerate": "^1.4.2"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/regenerator-runtime": {
+ "version": "0.13.11",
+ "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz",
+ "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==",
+ "dev": true
+ },
+ "node_modules/regenerator-transform": {
+ "version": "0.14.5",
+ "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.14.5.tgz",
+ "integrity": "sha512-eOf6vka5IO151Jfsw2NO9WpGX58W6wWmefK3I1zEGr0lOD0u8rwPaNqQL1aRxUaxLeKO3ArNh3VYg1KbaD+FFw==",
+ "dev": true,
+ "dependencies": {
+ "@babel/runtime": "^7.8.4"
+ }
+ },
+ "node_modules/regex-not": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz",
+ "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==",
+ "dev": true,
+ "dependencies": {
+ "extend-shallow": "^3.0.2",
+ "safe-regex": "^1.1.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/regexp-to-ast": {
+ "version": "0.5.0",
+ "resolved": "https://registry.npmjs.org/regexp-to-ast/-/regexp-to-ast-0.5.0.tgz",
+ "integrity": "sha512-tlbJqcMHnPKI9zSrystikWKwHkBqu2a/Sgw01h3zFjvYrMxEDYHzzoMZnUrbIfpTFEsoRnnviOXNCzFiSc54Qw==",
+ "dev": true
+ },
+ "node_modules/regexp.prototype.flags": {
+ "version": "1.4.3",
+ "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz",
+ "integrity": "sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==",
+ "dev": true,
+ "dependencies": {
+ "call-bind": "^1.0.2",
+ "define-properties": "^1.1.3",
+ "functions-have-names": "^1.2.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/regexpp": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz",
+ "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/mysticatea"
+ }
+ },
+ "node_modules/regexpu-core": {
+ "version": "5.3.2",
+ "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.3.2.tgz",
+ "integrity": "sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==",
+ "dev": true,
+ "dependencies": {
+ "@babel/regjsgen": "^0.8.0",
+ "regenerate": "^1.4.2",
+ "regenerate-unicode-properties": "^10.1.0",
+ "regjsparser": "^0.9.1",
+ "unicode-match-property-ecmascript": "^2.0.0",
+ "unicode-match-property-value-ecmascript": "^2.1.0"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/regjsparser": {
+ "version": "0.9.1",
+ "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.9.1.tgz",
+ "integrity": "sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==",
+ "dev": true,
+ "dependencies": {
+ "jsesc": "~0.5.0"
+ },
+ "bin": {
+ "regjsparser": "bin/parser"
+ }
+ },
+ "node_modules/regjsparser/node_modules/jsesc": {
+ "version": "0.5.0",
+ "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz",
+ "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==",
+ "dev": true,
+ "bin": {
+ "jsesc": "bin/jsesc"
+ }
+ },
+ "node_modules/remove-trailing-separator": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz",
+ "integrity": "sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw==",
+ "dev": true
+ },
+ "node_modules/repeat-element": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.4.tgz",
+ "integrity": "sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/repeat-string": {
+ "version": "1.6.1",
+ "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz",
+ "integrity": "sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10"
+ }
+ },
+ "node_modules/request": {
+ "version": "2.88.2",
+ "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz",
+ "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==",
+ "deprecated": "request has been deprecated, see https://github.com/request/request/issues/3142",
+ "dev": true,
+ "dependencies": {
+ "aws-sign2": "~0.7.0",
+ "aws4": "^1.8.0",
+ "caseless": "~0.12.0",
+ "combined-stream": "~1.0.6",
+ "extend": "~3.0.2",
+ "forever-agent": "~0.6.1",
+ "form-data": "~2.3.2",
+ "har-validator": "~5.1.3",
+ "http-signature": "~1.2.0",
+ "is-typedarray": "~1.0.0",
+ "isstream": "~0.1.2",
+ "json-stringify-safe": "~5.0.1",
+ "mime-types": "~2.1.19",
+ "oauth-sign": "~0.9.0",
+ "performance-now": "^2.1.0",
+ "qs": "~6.5.2",
+ "safe-buffer": "^5.1.2",
+ "tough-cookie": "~2.5.0",
+ "tunnel-agent": "^0.6.0",
+ "uuid": "^3.3.2"
+ },
+ "engines": {
+ "node": ">= 6"
+ }
+ },
+ "node_modules/request-promise-core": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.4.tgz",
+ "integrity": "sha512-TTbAfBBRdWD7aNNOoVOBH4pN/KigV6LyapYNNlAPA8JwbovRti1E88m3sYAwsLi5ryhPKsE9APwnjFTgdUjTpw==",
+ "dev": true,
+ "dependencies": {
+ "lodash": "^4.17.19"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ },
+ "peerDependencies": {
+ "request": "^2.34"
+ }
+ },
+ "node_modules/request-promise-native": {
+ "version": "1.0.9",
+ "resolved": "https://registry.npmjs.org/request-promise-native/-/request-promise-native-1.0.9.tgz",
+ "integrity": "sha512-wcW+sIUiWnKgNY0dqCpOZkUbF/I+YPi+f09JZIDa39Ec+q82CpSYniDp+ISgTTbKmnpJWASeJBPZmoxH84wt3g==",
+ "deprecated": "request-promise-native has been deprecated because it extends the now deprecated request package, see https://github.com/request/request/issues/3142",
+ "dev": true,
+ "dependencies": {
+ "request-promise-core": "1.1.4",
+ "stealthy-require": "^1.1.1",
+ "tough-cookie": "^2.3.3"
+ },
+ "engines": {
+ "node": ">=0.12.0"
+ },
+ "peerDependencies": {
+ "request": "^2.34"
+ }
+ },
+ "node_modules/request-promise-native/node_modules/tough-cookie": {
+ "version": "2.5.0",
+ "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz",
+ "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==",
+ "dev": true,
+ "dependencies": {
+ "psl": "^1.1.28",
+ "punycode": "^2.1.1"
+ },
+ "engines": {
+ "node": ">=0.8"
+ }
+ },
+ "node_modules/request/node_modules/form-data": {
+ "version": "2.3.3",
+ "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz",
+ "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==",
+ "dev": true,
+ "dependencies": {
+ "asynckit": "^0.4.0",
+ "combined-stream": "^1.0.6",
+ "mime-types": "^2.1.12"
+ },
+ "engines": {
+ "node": ">= 0.12"
+ }
+ },
+ "node_modules/request/node_modules/tough-cookie": {
+ "version": "2.5.0",
+ "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz",
+ "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==",
+ "dev": true,
+ "dependencies": {
+ "psl": "^1.1.28",
+ "punycode": "^2.1.1"
+ },
+ "engines": {
+ "node": ">=0.8"
+ }
+ },
+ "node_modules/require-directory": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
+ "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/require-from-string": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz",
+ "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/require-main-filename": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz",
+ "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==",
+ "dev": true
+ },
+ "node_modules/resolve": {
+ "version": "1.17.0",
+ "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz",
+ "integrity": "sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==",
+ "dev": true,
+ "dependencies": {
+ "path-parse": "^1.0.6"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/resolve-cwd": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz",
+ "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==",
+ "dev": true,
+ "dependencies": {
+ "resolve-from": "^5.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/resolve-cwd/node_modules/resolve-from": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz",
+ "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/resolve-from": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
+ "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
+ "dev": true,
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/resolve-url": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz",
+ "integrity": "sha512-ZuF55hVUQaaczgOIwqWzkEcEidmlD/xl44x1UZnhOXcYuFN2S6+rcxpG+C1N3So0wvNI3DmJICUFfu2SxhBmvg==",
+ "deprecated": "https://github.com/lydell/resolve-url#deprecated",
+ "dev": true
+ },
+ "node_modules/restore-cursor": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz",
+ "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==",
+ "dev": true,
+ "dependencies": {
+ "onetime": "^5.1.0",
+ "signal-exit": "^3.0.2"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/ret": {
+ "version": "0.1.15",
+ "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz",
+ "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.12"
+ }
+ },
+ "node_modules/reusify": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz",
+ "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==",
+ "dev": true,
+ "engines": {
+ "iojs": ">=1.0.0",
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/rfdc": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.0.tgz",
+ "integrity": "sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==",
+ "dev": true
+ },
+ "node_modules/rgb-regex": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/rgb-regex/-/rgb-regex-1.0.1.tgz",
+ "integrity": "sha512-gDK5mkALDFER2YLqH6imYvK6g02gpNGM4ILDZ472EwWfXZnC2ZEpoB2ECXTyOVUKuk/bPJZMzwQPBYICzP+D3w==",
+ "dev": true
+ },
+ "node_modules/rgba-regex": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/rgba-regex/-/rgba-regex-1.0.0.tgz",
+ "integrity": "sha512-zgn5OjNQXLUTdq8m17KdaicF6w89TZs8ZU8y0AYENIU6wG8GG6LLm0yLSiPY8DmaYmHdgRW8rnApjoT0fQRfMg==",
+ "dev": true
+ },
+ "node_modules/rimraf": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
+ "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
+ "dev": true,
+ "dependencies": {
+ "glob": "^7.1.3"
+ },
+ "bin": {
+ "rimraf": "bin.js"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
+ },
+ "node_modules/rollup": {
+ "version": "2.28.2",
+ "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.28.2.tgz",
+ "integrity": "sha512-8txbsFBFLmm9Xdt4ByTOGa9Muonmc8MfNjnGAR8U8scJlF1ZW7AgNZa7aqBXaKtlvnYP/ab++fQIq9dB9NWUbg==",
+ "dev": true,
+ "bin": {
+ "rollup": "dist/bin/rollup"
+ },
+ "engines": {
+ "node": ">=10.0.0"
+ },
+ "optionalDependencies": {
+ "fsevents": "~2.1.2"
+ }
+ },
+ "node_modules/rollup/node_modules/fsevents": {
+ "version": "2.1.3",
+ "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.3.tgz",
+ "integrity": "sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==",
+ "deprecated": "\"Please update to latest v2.3 or v2.2\"",
+ "dev": true,
+ "hasInstallScript": true,
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": "^8.16.0 || ^10.6.0 || >=11.0.0"
+ }
+ },
+ "node_modules/rsvp": {
+ "version": "4.8.5",
+ "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-4.8.5.tgz",
+ "integrity": "sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA==",
+ "dev": true,
+ "engines": {
+ "node": "6.* || >= 7.*"
+ }
+ },
+ "node_modules/run-parallel": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz",
+ "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/feross"
+ },
+ {
+ "type": "patreon",
+ "url": "https://www.patreon.com/feross"
+ },
+ {
+ "type": "consulting",
+ "url": "https://feross.org/support"
+ }
+ ],
+ "dependencies": {
+ "queue-microtask": "^1.2.2"
+ }
+ },
+ "node_modules/rxjs": {
+ "version": "7.8.0",
+ "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.0.tgz",
+ "integrity": "sha512-F2+gxDshqmIub1KdvZkaEfGDwLNpPvk9Fs6LD/MyQxNgMds/WH9OdDDXOmxUZpME+iSK3rQCctkL0DYyytUqMg==",
+ "dev": true,
+ "dependencies": {
+ "tslib": "^2.1.0"
+ }
+ },
+ "node_modules/safe-buffer": {
+ "version": "5.2.1",
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
+ "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/feross"
+ },
+ {
+ "type": "patreon",
+ "url": "https://www.patreon.com/feross"
+ },
+ {
+ "type": "consulting",
+ "url": "https://feross.org/support"
+ }
+ ]
+ },
+ "node_modules/safe-regex": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz",
+ "integrity": "sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg==",
+ "dev": true,
+ "dependencies": {
+ "ret": "~0.1.10"
+ }
+ },
+ "node_modules/safe-regex-test": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz",
+ "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==",
+ "dev": true,
+ "dependencies": {
+ "call-bind": "^1.0.2",
+ "get-intrinsic": "^1.1.3",
+ "is-regex": "^1.1.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/safer-buffer": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
+ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==",
+ "dev": true
+ },
+ "node_modules/sane": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/sane/-/sane-4.1.0.tgz",
+ "integrity": "sha512-hhbzAgTIX8O7SHfp2c8/kREfEn4qO/9q8C9beyY6+tvZ87EpoZ3i1RIEvp27YBswnNbY9mWd6paKVmKbAgLfZA==",
+ "deprecated": "some dependency vulnerabilities fixed, support for node < 10 dropped, and newer ECMAScript syntax/features added",
+ "dev": true,
+ "dependencies": {
+ "@cnakazawa/watch": "^1.0.3",
+ "anymatch": "^2.0.0",
+ "capture-exit": "^2.0.0",
+ "exec-sh": "^0.3.2",
+ "execa": "^1.0.0",
+ "fb-watchman": "^2.0.0",
+ "micromatch": "^3.1.4",
+ "minimist": "^1.1.1",
+ "walker": "~1.0.5"
+ },
+ "bin": {
+ "sane": "src/cli.js"
+ },
+ "engines": {
+ "node": "6.* || 8.* || >= 10.*"
+ }
+ },
+ "node_modules/sane/node_modules/anymatch": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz",
+ "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==",
+ "dev": true,
+ "dependencies": {
+ "micromatch": "^3.1.4",
+ "normalize-path": "^2.1.1"
+ }
+ },
+ "node_modules/sane/node_modules/braces": {
+ "version": "2.3.2",
+ "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz",
+ "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==",
+ "dev": true,
+ "dependencies": {
+ "arr-flatten": "^1.1.0",
+ "array-unique": "^0.3.2",
+ "extend-shallow": "^2.0.1",
+ "fill-range": "^4.0.0",
+ "isobject": "^3.0.1",
+ "repeat-element": "^1.1.2",
+ "snapdragon": "^0.8.1",
+ "snapdragon-node": "^2.0.1",
+ "split-string": "^3.0.2",
+ "to-regex": "^3.0.1"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/sane/node_modules/braces/node_modules/extend-shallow": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
+ "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==",
+ "dev": true,
+ "dependencies": {
+ "is-extendable": "^0.1.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/sane/node_modules/cross-spawn": {
+ "version": "6.0.5",
+ "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz",
+ "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==",
+ "dev": true,
+ "dependencies": {
+ "nice-try": "^1.0.4",
+ "path-key": "^2.0.1",
+ "semver": "^5.5.0",
+ "shebang-command": "^1.2.0",
+ "which": "^1.2.9"
+ },
+ "engines": {
+ "node": ">=4.8"
+ }
+ },
+ "node_modules/sane/node_modules/execa": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz",
+ "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==",
+ "dev": true,
+ "dependencies": {
+ "cross-spawn": "^6.0.0",
+ "get-stream": "^4.0.0",
+ "is-stream": "^1.1.0",
+ "npm-run-path": "^2.0.0",
+ "p-finally": "^1.0.0",
+ "signal-exit": "^3.0.0",
+ "strip-eof": "^1.0.0"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/sane/node_modules/fill-range": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz",
+ "integrity": "sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ==",
+ "dev": true,
+ "dependencies": {
+ "extend-shallow": "^2.0.1",
+ "is-number": "^3.0.0",
+ "repeat-string": "^1.6.1",
+ "to-regex-range": "^2.1.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/sane/node_modules/fill-range/node_modules/extend-shallow": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
+ "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==",
+ "dev": true,
+ "dependencies": {
+ "is-extendable": "^0.1.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/sane/node_modules/get-stream": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz",
+ "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==",
+ "dev": true,
+ "dependencies": {
+ "pump": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/sane/node_modules/is-extendable": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz",
+ "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/sane/node_modules/is-number": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz",
+ "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==",
+ "dev": true,
+ "dependencies": {
+ "kind-of": "^3.0.2"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/sane/node_modules/is-number/node_modules/kind-of": {
+ "version": "3.2.2",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
+ "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==",
+ "dev": true,
+ "dependencies": {
+ "is-buffer": "^1.1.5"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/sane/node_modules/is-stream": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz",
+ "integrity": "sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/sane/node_modules/isobject": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz",
+ "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/sane/node_modules/micromatch": {
+ "version": "3.1.10",
+ "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz",
+ "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==",
+ "dev": true,
+ "dependencies": {
+ "arr-diff": "^4.0.0",
+ "array-unique": "^0.3.2",
+ "braces": "^2.3.1",
+ "define-property": "^2.0.2",
+ "extend-shallow": "^3.0.2",
+ "extglob": "^2.0.4",
+ "fragment-cache": "^0.2.1",
+ "kind-of": "^6.0.2",
+ "nanomatch": "^1.2.9",
+ "object.pick": "^1.3.0",
+ "regex-not": "^1.0.0",
+ "snapdragon": "^0.8.1",
+ "to-regex": "^3.0.2"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/sane/node_modules/normalize-path": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz",
+ "integrity": "sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w==",
+ "dev": true,
+ "dependencies": {
+ "remove-trailing-separator": "^1.0.1"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/sane/node_modules/npm-run-path": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz",
+ "integrity": "sha512-lJxZYlT4DW/bRUtFh1MQIWqmLwQfAxnqWG4HhEdjMlkrJYnJn0Jrr2u3mgxqaWsdiBc76TYkTG/mhrnYTuzfHw==",
+ "dev": true,
+ "dependencies": {
+ "path-key": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/sane/node_modules/p-finally": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz",
+ "integrity": "sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==",
+ "dev": true,
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/sane/node_modules/path-key": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz",
+ "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==",
+ "dev": true,
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/sane/node_modules/semver": {
+ "version": "5.7.1",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
+ "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
+ "dev": true,
+ "bin": {
+ "semver": "bin/semver"
+ }
+ },
+ "node_modules/sane/node_modules/shebang-command": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz",
+ "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==",
+ "dev": true,
+ "dependencies": {
+ "shebang-regex": "^1.0.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/sane/node_modules/shebang-regex": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz",
+ "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/sane/node_modules/to-regex-range": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz",
+ "integrity": "sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg==",
+ "dev": true,
+ "dependencies": {
+ "is-number": "^3.0.0",
+ "repeat-string": "^1.6.1"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/sane/node_modules/which": {
+ "version": "1.3.1",
+ "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz",
+ "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==",
+ "dev": true,
+ "dependencies": {
+ "isexe": "^2.0.0"
+ },
+ "bin": {
+ "which": "bin/which"
+ }
+ },
+ "node_modules/sax": {
+ "version": "1.2.4",
+ "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz",
+ "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==",
+ "dev": true
+ },
+ "node_modules/saxes": {
+ "version": "3.1.11",
+ "resolved": "https://registry.npmjs.org/saxes/-/saxes-3.1.11.tgz",
+ "integrity": "sha512-Ydydq3zC+WYDJK1+gRxRapLIED9PWeSuuS41wqyoRmzvhhh9nc+QQrVMKJYzJFULazeGhzSV0QleN2wD3boh2g==",
+ "dev": true,
+ "dependencies": {
+ "xmlchars": "^2.1.1"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/semver": {
+ "version": "6.3.0",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
+ "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
+ "dev": true,
+ "bin": {
+ "semver": "bin/semver.js"
+ }
+ },
+ "node_modules/semver-compare": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz",
+ "integrity": "sha512-YM3/ITh2MJ5MtzaM429anh+x2jiLVjqILF4m4oyQB18W7Ggea7BfqdH/wGMK7dDiMghv/6WG7znWMwUDzJiXow==",
+ "dev": true
+ },
+ "node_modules/semver-regex": {
+ "version": "3.1.4",
+ "resolved": "https://registry.npmjs.org/semver-regex/-/semver-regex-3.1.4.tgz",
+ "integrity": "sha512-6IiqeZNgq01qGf0TId0t3NvKzSvUsjcpdEO3AQNeIjR6A2+ckTnQlDpl4qu1bjRv0RzN3FP9hzFmws3lKqRWkA==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/set-blocking": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz",
+ "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==",
+ "dev": true
+ },
+ "node_modules/set-value": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz",
+ "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==",
+ "dev": true,
+ "dependencies": {
+ "extend-shallow": "^2.0.1",
+ "is-extendable": "^0.1.1",
+ "is-plain-object": "^2.0.3",
+ "split-string": "^3.0.1"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/set-value/node_modules/extend-shallow": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
+ "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==",
+ "dev": true,
+ "dependencies": {
+ "is-extendable": "^0.1.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/set-value/node_modules/is-extendable": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz",
+ "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/shebang-command": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
+ "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
+ "dev": true,
+ "dependencies": {
+ "shebang-regex": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/shebang-regex": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
+ "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/shellwords": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/shellwords/-/shellwords-0.1.1.tgz",
+ "integrity": "sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww==",
+ "dev": true,
+ "optional": true
+ },
+ "node_modules/side-channel": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz",
+ "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==",
+ "dev": true,
+ "dependencies": {
+ "call-bind": "^1.0.0",
+ "get-intrinsic": "^1.0.2",
+ "object-inspect": "^1.9.0"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/signal-exit": {
+ "version": "3.0.7",
+ "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz",
+ "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==",
+ "dev": true
+ },
+ "node_modules/simple-swizzle": {
+ "version": "0.2.2",
+ "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz",
+ "integrity": "sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==",
+ "dev": true,
+ "dependencies": {
+ "is-arrayish": "^0.3.1"
+ }
+ },
+ "node_modules/simple-swizzle/node_modules/is-arrayish": {
+ "version": "0.3.2",
+ "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz",
+ "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==",
+ "dev": true
+ },
+ "node_modules/sisteransi": {
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz",
+ "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==",
+ "dev": true
+ },
+ "node_modules/slash": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz",
+ "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/slice-ansi": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-3.0.0.tgz",
+ "integrity": "sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^4.0.0",
+ "astral-regex": "^2.0.0",
+ "is-fullwidth-code-point": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/slice-ansi/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/slice-ansi/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/slice-ansi/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/snapdragon": {
+ "version": "0.8.2",
+ "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz",
+ "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==",
+ "dev": true,
+ "dependencies": {
+ "base": "^0.11.1",
+ "debug": "^2.2.0",
+ "define-property": "^0.2.5",
+ "extend-shallow": "^2.0.1",
+ "map-cache": "^0.2.2",
+ "source-map": "^0.5.6",
+ "source-map-resolve": "^0.5.0",
+ "use": "^3.1.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/snapdragon-node": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz",
+ "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==",
+ "dev": true,
+ "dependencies": {
+ "define-property": "^1.0.0",
+ "isobject": "^3.0.0",
+ "snapdragon-util": "^3.0.1"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/snapdragon-node/node_modules/define-property": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz",
+ "integrity": "sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==",
+ "dev": true,
+ "dependencies": {
+ "is-descriptor": "^1.0.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/snapdragon-node/node_modules/isobject": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz",
+ "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/snapdragon-util": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz",
+ "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==",
+ "dev": true,
+ "dependencies": {
+ "kind-of": "^3.2.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/snapdragon-util/node_modules/kind-of": {
+ "version": "3.2.2",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
+ "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==",
+ "dev": true,
+ "dependencies": {
+ "is-buffer": "^1.1.5"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/snapdragon/node_modules/debug": {
+ "version": "2.6.9",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
+ "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
+ "dev": true,
+ "dependencies": {
+ "ms": "2.0.0"
+ }
+ },
+ "node_modules/snapdragon/node_modules/define-property": {
+ "version": "0.2.5",
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
+ "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==",
+ "dev": true,
+ "dependencies": {
+ "is-descriptor": "^0.1.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/snapdragon/node_modules/extend-shallow": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
+ "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==",
+ "dev": true,
+ "dependencies": {
+ "is-extendable": "^0.1.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/snapdragon/node_modules/is-accessor-descriptor": {
+ "version": "0.1.6",
+ "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz",
+ "integrity": "sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==",
+ "dev": true,
+ "dependencies": {
+ "kind-of": "^3.0.2"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/snapdragon/node_modules/is-accessor-descriptor/node_modules/kind-of": {
+ "version": "3.2.2",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
+ "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==",
+ "dev": true,
+ "dependencies": {
+ "is-buffer": "^1.1.5"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/snapdragon/node_modules/is-data-descriptor": {
+ "version": "0.1.4",
+ "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz",
+ "integrity": "sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==",
+ "dev": true,
+ "dependencies": {
+ "kind-of": "^3.0.2"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/snapdragon/node_modules/is-data-descriptor/node_modules/kind-of": {
+ "version": "3.2.2",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
+ "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==",
+ "dev": true,
+ "dependencies": {
+ "is-buffer": "^1.1.5"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/snapdragon/node_modules/is-descriptor": {
+ "version": "0.1.6",
+ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz",
+ "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==",
+ "dev": true,
+ "dependencies": {
+ "is-accessor-descriptor": "^0.1.6",
+ "is-data-descriptor": "^0.1.4",
+ "kind-of": "^5.0.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/snapdragon/node_modules/is-extendable": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz",
+ "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/snapdragon/node_modules/kind-of": {
+ "version": "5.1.0",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz",
+ "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/snapdragon/node_modules/ms": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
+ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
+ "dev": true
+ },
+ "node_modules/source-map": {
+ "version": "0.5.7",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
+ "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/source-map-resolve": {
+ "version": "0.5.3",
+ "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz",
+ "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==",
+ "deprecated": "See https://github.com/lydell/source-map-resolve#deprecated",
+ "dev": true,
+ "dependencies": {
+ "atob": "^2.1.2",
+ "decode-uri-component": "^0.2.0",
+ "resolve-url": "^0.2.1",
+ "source-map-url": "^0.4.0",
+ "urix": "^0.1.0"
+ }
+ },
+ "node_modules/source-map-support": {
+ "version": "0.5.21",
+ "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz",
+ "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==",
+ "dev": true,
+ "dependencies": {
+ "buffer-from": "^1.0.0",
+ "source-map": "^0.6.0"
+ }
+ },
+ "node_modules/source-map-support/node_modules/source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/source-map-url": {
+ "version": "0.4.1",
+ "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.1.tgz",
+ "integrity": "sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw==",
+ "deprecated": "See https://github.com/lydell/source-map-url#deprecated",
+ "dev": true
+ },
+ "node_modules/sourcemap-codec": {
+ "version": "1.4.8",
+ "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz",
+ "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==",
+ "deprecated": "Please use @jridgewell/sourcemap-codec instead",
+ "dev": true
+ },
+ "node_modules/spdx-correct": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz",
+ "integrity": "sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==",
+ "dev": true,
+ "dependencies": {
+ "spdx-expression-parse": "^3.0.0",
+ "spdx-license-ids": "^3.0.0"
+ }
+ },
+ "node_modules/spdx-exceptions": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz",
+ "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==",
+ "dev": true
+ },
+ "node_modules/spdx-expression-parse": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz",
+ "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==",
+ "dev": true,
+ "dependencies": {
+ "spdx-exceptions": "^2.1.0",
+ "spdx-license-ids": "^3.0.0"
+ }
+ },
+ "node_modules/spdx-license-ids": {
+ "version": "3.0.13",
+ "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.13.tgz",
+ "integrity": "sha512-XkD+zwiqXHikFZm4AX/7JSCXA98U5Db4AFd5XUg/+9UNtnH75+Z9KxtpYiJZx36mUDVOwH83pl7yvCer6ewM3w==",
+ "dev": true
+ },
+ "node_modules/split-string": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz",
+ "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==",
+ "dev": true,
+ "dependencies": {
+ "extend-shallow": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/sprintf-js": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
+ "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==",
+ "dev": true
+ },
+ "node_modules/sshpk": {
+ "version": "1.17.0",
+ "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz",
+ "integrity": "sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==",
+ "dev": true,
+ "dependencies": {
+ "asn1": "~0.2.3",
+ "assert-plus": "^1.0.0",
+ "bcrypt-pbkdf": "^1.0.0",
+ "dashdash": "^1.12.0",
+ "ecc-jsbn": "~0.1.1",
+ "getpass": "^0.1.1",
+ "jsbn": "~0.1.0",
+ "safer-buffer": "^2.0.2",
+ "tweetnacl": "~0.14.0"
+ },
+ "bin": {
+ "sshpk-conv": "bin/sshpk-conv",
+ "sshpk-sign": "bin/sshpk-sign",
+ "sshpk-verify": "bin/sshpk-verify"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/stable": {
+ "version": "0.1.8",
+ "resolved": "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz",
+ "integrity": "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==",
+ "deprecated": "Modern JS already guarantees Array#sort() is a stable sort, so this library is deprecated. See the compatibility table on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#browser_compatibility",
+ "dev": true
+ },
+ "node_modules/stack-utils": {
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-1.0.5.tgz",
+ "integrity": "sha512-KZiTzuV3CnSnSvgMRrARVCj+Ht7rMbauGDK0LdVFRGyenwdylpajAp4Q0i6SX8rEmbTpMMf6ryq2gb8pPq2WgQ==",
+ "dev": true,
+ "dependencies": {
+ "escape-string-regexp": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/stack-utils/node_modules/escape-string-regexp": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz",
+ "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/static-extend": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz",
+ "integrity": "sha512-72E9+uLc27Mt718pMHt9VMNiAL4LMsmDbBva8mxWUCkT07fSzEGMYUCk0XWY6lp0j6RBAG4cJ3mWuZv2OE3s0g==",
+ "dev": true,
+ "dependencies": {
+ "define-property": "^0.2.5",
+ "object-copy": "^0.1.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/static-extend/node_modules/define-property": {
+ "version": "0.2.5",
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
+ "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==",
+ "dev": true,
+ "dependencies": {
+ "is-descriptor": "^0.1.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/static-extend/node_modules/is-accessor-descriptor": {
+ "version": "0.1.6",
+ "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz",
+ "integrity": "sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==",
+ "dev": true,
+ "dependencies": {
+ "kind-of": "^3.0.2"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/static-extend/node_modules/is-accessor-descriptor/node_modules/kind-of": {
+ "version": "3.2.2",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
+ "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==",
+ "dev": true,
+ "dependencies": {
+ "is-buffer": "^1.1.5"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/static-extend/node_modules/is-data-descriptor": {
+ "version": "0.1.4",
+ "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz",
+ "integrity": "sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==",
+ "dev": true,
+ "dependencies": {
+ "kind-of": "^3.0.2"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/static-extend/node_modules/is-data-descriptor/node_modules/kind-of": {
+ "version": "3.2.2",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
+ "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==",
+ "dev": true,
+ "dependencies": {
+ "is-buffer": "^1.1.5"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/static-extend/node_modules/is-descriptor": {
+ "version": "0.1.6",
+ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz",
+ "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==",
+ "dev": true,
+ "dependencies": {
+ "is-accessor-descriptor": "^0.1.6",
+ "is-data-descriptor": "^0.1.4",
+ "kind-of": "^5.0.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/static-extend/node_modules/kind-of": {
+ "version": "5.1.0",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz",
+ "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/stealthy-require": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/stealthy-require/-/stealthy-require-1.1.1.tgz",
+ "integrity": "sha512-ZnWpYnYugiOVEY5GkcuJK1io5V8QmNYChG62gSit9pQVGErXtrKuPC55ITaVSukmMta5qpMU7vqLt2Lnni4f/g==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/string-argv": {
+ "version": "0.3.1",
+ "resolved": "https://registry.npmjs.org/string-argv/-/string-argv-0.3.1.tgz",
+ "integrity": "sha512-a1uQGz7IyVy9YwhqjZIZu1c8JO8dNIe20xBmSS6qu9kv++k3JGzCVmprbNN5Kn+BgzD5E7YYwg1CcjuJMRNsvg==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.6.19"
+ }
+ },
+ "node_modules/string-length": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/string-length/-/string-length-3.1.0.tgz",
+ "integrity": "sha512-Ttp5YvkGm5v9Ijagtaz1BnN+k9ObpvS0eIBblPMp2YWL8FBmi9qblQ9fexc2k/CXFgrTIteU3jAw3payCnwSTA==",
+ "dev": true,
+ "dependencies": {
+ "astral-regex": "^1.0.0",
+ "strip-ansi": "^5.2.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/string-length/node_modules/ansi-regex": {
+ "version": "4.1.1",
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz",
+ "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==",
+ "dev": true,
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/string-length/node_modules/astral-regex": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz",
+ "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==",
+ "dev": true,
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/string-length/node_modules/strip-ansi": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
+ "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
+ "dev": true,
+ "dependencies": {
+ "ansi-regex": "^4.1.0"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/string-width": {
+ "version": "4.2.3",
+ "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
+ "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
+ "dev": true,
+ "dependencies": {
+ "emoji-regex": "^8.0.0",
+ "is-fullwidth-code-point": "^3.0.0",
+ "strip-ansi": "^6.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/string.prototype.trim": {
+ "version": "1.2.7",
+ "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.7.tgz",
+ "integrity": "sha512-p6TmeT1T3411M8Cgg9wBTMRtY2q9+PNy9EV1i2lIXUN/btt763oIfxwN3RR8VU6wHX8j/1CFy0L+YuThm6bgOg==",
+ "dev": true,
+ "dependencies": {
+ "call-bind": "^1.0.2",
+ "define-properties": "^1.1.4",
+ "es-abstract": "^1.20.4"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/string.prototype.trimend": {
+ "version": "1.0.6",
+ "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz",
+ "integrity": "sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==",
+ "dev": true,
+ "dependencies": {
+ "call-bind": "^1.0.2",
+ "define-properties": "^1.1.4",
+ "es-abstract": "^1.20.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/string.prototype.trimstart": {
+ "version": "1.0.6",
+ "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.6.tgz",
+ "integrity": "sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==",
+ "dev": true,
+ "dependencies": {
+ "call-bind": "^1.0.2",
+ "define-properties": "^1.1.4",
+ "es-abstract": "^1.20.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/stringify-object": {
+ "version": "3.3.0",
+ "resolved": "https://registry.npmjs.org/stringify-object/-/stringify-object-3.3.0.tgz",
+ "integrity": "sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw==",
+ "dev": true,
+ "dependencies": {
+ "get-own-enumerable-property-symbols": "^3.0.0",
+ "is-obj": "^1.0.1",
+ "is-regexp": "^1.0.0"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/strip-ansi": {
+ "version": "6.0.1",
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
+ "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
+ "dev": true,
+ "dependencies": {
+ "ansi-regex": "^5.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/strip-bom": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz",
+ "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/strip-eof": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz",
+ "integrity": "sha512-7FCwGGmx8mD5xQd3RPUvnSpUXHM3BWuzjtpD4TXsfcZ9EL4azvVVUscFYwD9nx8Kh+uCBC00XBtAykoMHwTh8Q==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/strip-final-newline": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz",
+ "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==",
+ "dev": true,
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/strip-json-comments": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz",
+ "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/stylehacks": {
+ "version": "4.0.3",
+ "resolved": "https://registry.npmjs.org/stylehacks/-/stylehacks-4.0.3.tgz",
+ "integrity": "sha512-7GlLk9JwlElY4Y6a/rmbH2MhVlTyVmiJd1PfTCqFaIBEGMYNsrO/v3SeGTdhBThLg4Z+NbOk/qFMwCa+J+3p/g==",
+ "dev": true,
+ "dependencies": {
+ "browserslist": "^4.0.0",
+ "postcss": "^7.0.0",
+ "postcss-selector-parser": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/stylehacks/node_modules/picocolors": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+ "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+ "dev": true
+ },
+ "node_modules/stylehacks/node_modules/postcss": {
+ "version": "7.0.39",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+ "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+ "dev": true,
+ "dependencies": {
+ "picocolors": "^0.2.1",
+ "source-map": "^0.6.1"
+ },
+ "engines": {
+ "node": ">=6.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/postcss/"
+ }
+ },
+ "node_modules/stylehacks/node_modules/postcss-selector-parser": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz",
+ "integrity": "sha512-h7fJ/5uWuRVyOtkO45pnt1Ih40CEleeyCHzipqAZO2e5H20g25Y48uYnFUiShvY4rZWNJ/Bib/KVPmanaCtOhA==",
+ "dev": true,
+ "dependencies": {
+ "dot-prop": "^5.2.0",
+ "indexes-of": "^1.0.1",
+ "uniq": "^1.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/stylehacks/node_modules/source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/supports-color": {
+ "version": "5.5.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
+ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/supports-hyperlinks": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.3.0.tgz",
+ "integrity": "sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^4.0.0",
+ "supports-color": "^7.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/supports-hyperlinks/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/supports-hyperlinks/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/supports-preserve-symlinks-flag": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz",
+ "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==",
+ "dev": true,
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/svgo": {
+ "version": "1.3.2",
+ "resolved": "https://registry.npmjs.org/svgo/-/svgo-1.3.2.tgz",
+ "integrity": "sha512-yhy/sQYxR5BkC98CY7o31VGsg014AKLEPxdfhora76l36hD9Rdy5NZA/Ocn6yayNPgSamYdtX2rFJdcv07AYVw==",
+ "deprecated": "This SVGO version is no longer supported. Upgrade to v2.x.x.",
+ "dev": true,
+ "dependencies": {
+ "chalk": "^2.4.1",
+ "coa": "^2.0.2",
+ "css-select": "^2.0.0",
+ "css-select-base-adapter": "^0.1.1",
+ "css-tree": "1.0.0-alpha.37",
+ "csso": "^4.0.2",
+ "js-yaml": "^3.13.1",
+ "mkdirp": "~0.5.1",
+ "object.values": "^1.1.0",
+ "sax": "~1.2.4",
+ "stable": "^0.1.8",
+ "unquote": "~1.1.1",
+ "util.promisify": "~1.0.0"
+ },
+ "bin": {
+ "svgo": "bin/svgo"
+ },
+ "engines": {
+ "node": ">=4.0.0"
+ }
+ },
+ "node_modules/symbol-tree": {
+ "version": "3.2.4",
+ "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz",
+ "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==",
+ "dev": true
+ },
+ "node_modules/table": {
+ "version": "6.8.1",
+ "resolved": "https://registry.npmjs.org/table/-/table-6.8.1.tgz",
+ "integrity": "sha512-Y4X9zqrCftUhMeH2EptSSERdVKt/nEdijTOacGD/97EKjhQ/Qs8RTlEGABSJNNN8lac9kheH+af7yAkEWlgneA==",
+ "dev": true,
+ "dependencies": {
+ "ajv": "^8.0.1",
+ "lodash.truncate": "^4.4.2",
+ "slice-ansi": "^4.0.0",
+ "string-width": "^4.2.3",
+ "strip-ansi": "^6.0.1"
+ },
+ "engines": {
+ "node": ">=10.0.0"
+ }
+ },
+ "node_modules/table/node_modules/ajv": {
+ "version": "8.12.0",
+ "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz",
+ "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==",
+ "dev": true,
+ "dependencies": {
+ "fast-deep-equal": "^3.1.1",
+ "json-schema-traverse": "^1.0.0",
+ "require-from-string": "^2.0.2",
+ "uri-js": "^4.2.2"
+ },
+ "funding": {
+ "type": "github",
+ "url": "https://github.com/sponsors/epoberezkin"
+ }
+ },
+ "node_modules/table/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/table/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/table/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/table/node_modules/json-schema-traverse": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz",
+ "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==",
+ "dev": true
+ },
+ "node_modules/table/node_modules/slice-ansi": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz",
+ "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^4.0.0",
+ "astral-regex": "^2.0.0",
+ "is-fullwidth-code-point": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/slice-ansi?sponsor=1"
+ }
+ },
+ "node_modules/terminal-link": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/terminal-link/-/terminal-link-2.1.1.tgz",
+ "integrity": "sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==",
+ "dev": true,
+ "dependencies": {
+ "ansi-escapes": "^4.2.1",
+ "supports-hyperlinks": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/terser": {
+ "version": "5.3.8",
+ "resolved": "https://registry.npmjs.org/terser/-/terser-5.3.8.tgz",
+ "integrity": "sha512-zVotuHoIfnYjtlurOouTazciEfL7V38QMAOhGqpXDEg6yT13cF4+fEP9b0rrCEQTn+tT46uxgFsTZzhygk+CzQ==",
+ "dev": true,
+ "dependencies": {
+ "commander": "^2.20.0",
+ "source-map": "~0.7.2",
+ "source-map-support": "~0.5.19"
+ },
+ "bin": {
+ "terser": "bin/terser"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/terser/node_modules/commander": {
+ "version": "2.20.3",
+ "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz",
+ "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==",
+ "dev": true
+ },
+ "node_modules/terser/node_modules/source-map": {
+ "version": "0.7.4",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz",
+ "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==",
+ "dev": true,
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/test-exclude": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz",
+ "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==",
+ "dev": true,
+ "dependencies": {
+ "@istanbuljs/schema": "^0.1.2",
+ "glob": "^7.1.4",
+ "minimatch": "^3.0.4"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/text-table": {
+ "version": "0.2.0",
+ "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
+ "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==",
+ "dev": true
+ },
+ "node_modules/throat": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/throat/-/throat-5.0.0.tgz",
+ "integrity": "sha512-fcwX4mndzpLQKBS1DVYhGAcYaYt7vsHNIvQV+WXMvnow5cgjPphq5CaayLaGsjRdSCKZFNGt7/GYAuXaNOiYCA==",
+ "dev": true
+ },
+ "node_modules/through": {
+ "version": "2.3.8",
+ "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz",
+ "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==",
+ "dev": true
+ },
+ "node_modules/timsort": {
+ "version": "0.3.0",
+ "resolved": "https://registry.npmjs.org/timsort/-/timsort-0.3.0.tgz",
+ "integrity": "sha512-qsdtZH+vMoCARQtyod4imc2nIJwg9Cc7lPRrw9CzF8ZKR0khdr8+2nX80PBhET3tcyTtJDxAffGh2rXH4tyU8A==",
+ "dev": true
+ },
+ "node_modules/tmpl": {
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz",
+ "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==",
+ "dev": true
+ },
+ "node_modules/to-fast-properties": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz",
+ "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==",
+ "dev": true,
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/to-object-path": {
+ "version": "0.3.0",
+ "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz",
+ "integrity": "sha512-9mWHdnGRuh3onocaHzukyvCZhzvr6tiflAy/JRFXcJX0TjgfWA9pk9t8CMbzmBE4Jfw58pXbkngtBtqYxzNEyg==",
+ "dev": true,
+ "dependencies": {
+ "kind-of": "^3.0.2"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/to-object-path/node_modules/kind-of": {
+ "version": "3.2.2",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
+ "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==",
+ "dev": true,
+ "dependencies": {
+ "is-buffer": "^1.1.5"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/to-regex": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz",
+ "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==",
+ "dev": true,
+ "dependencies": {
+ "define-property": "^2.0.2",
+ "extend-shallow": "^3.0.2",
+ "regex-not": "^1.0.2",
+ "safe-regex": "^1.1.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/to-regex-range": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
+ "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
+ "dev": true,
+ "dependencies": {
+ "is-number": "^7.0.0"
+ },
+ "engines": {
+ "node": ">=8.0"
+ }
+ },
+ "node_modules/tough-cookie": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-3.0.1.tgz",
+ "integrity": "sha512-yQyJ0u4pZsv9D4clxO69OEjLWYw+jbgspjTue4lTQZLfV0c5l1VmK2y1JK8E9ahdpltPOaAThPcp5nKPUgSnsg==",
+ "dev": true,
+ "dependencies": {
+ "ip-regex": "^2.1.0",
+ "psl": "^1.1.28",
+ "punycode": "^2.1.1"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/tr46": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz",
+ "integrity": "sha512-dTpowEjclQ7Kgx5SdBkqRzVhERQXov8/l9Ft9dVM9fmg0W0KQSVaXX9T4i6twCPNtYiZM53lpSSUAwJbFPOHxA==",
+ "dev": true,
+ "dependencies": {
+ "punycode": "^2.1.0"
+ }
+ },
+ "node_modules/tsconfig-paths": {
+ "version": "3.14.2",
+ "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.2.tgz",
+ "integrity": "sha512-o/9iXgCYc5L/JxCHPe3Hvh8Q/2xm5Z+p18PESBU6Ff33695QnCHBEjcytY2q19ua7Mbl/DavtBOLq+oG0RCL+g==",
+ "dev": true,
+ "dependencies": {
+ "@types/json5": "^0.0.29",
+ "json5": "^1.0.2",
+ "minimist": "^1.2.6",
+ "strip-bom": "^3.0.0"
+ }
+ },
+ "node_modules/tsconfig-paths/node_modules/json5": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz",
+ "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==",
+ "dev": true,
+ "dependencies": {
+ "minimist": "^1.2.0"
+ },
+ "bin": {
+ "json5": "lib/cli.js"
+ }
+ },
+ "node_modules/tsconfig-paths/node_modules/strip-bom": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz",
+ "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==",
+ "dev": true,
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/tslib": {
+ "version": "2.5.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz",
+ "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==",
+ "dev": true
+ },
+ "node_modules/tsutils": {
+ "version": "3.21.0",
+ "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz",
+ "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==",
+ "dev": true,
+ "dependencies": {
+ "tslib": "^1.8.1"
+ },
+ "engines": {
+ "node": ">= 6"
+ },
+ "peerDependencies": {
+ "typescript": ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta"
+ }
+ },
+ "node_modules/tsutils/node_modules/tslib": {
+ "version": "1.14.1",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
+ "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
+ "dev": true
+ },
+ "node_modules/tunnel-agent": {
+ "version": "0.6.0",
+ "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz",
+ "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==",
+ "dev": true,
+ "dependencies": {
+ "safe-buffer": "^5.0.1"
+ },
+ "engines": {
+ "node": "*"
+ }
+ },
+ "node_modules/tweetnacl": {
+ "version": "0.14.5",
+ "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz",
+ "integrity": "sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==",
+ "dev": true
+ },
+ "node_modules/type-check": {
+ "version": "0.4.0",
+ "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz",
+ "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==",
+ "dev": true,
+ "dependencies": {
+ "prelude-ls": "^1.2.1"
+ },
+ "engines": {
+ "node": ">= 0.8.0"
+ }
+ },
+ "node_modules/type-detect": {
+ "version": "4.0.8",
+ "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz",
+ "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==",
+ "dev": true,
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/type-fest": {
+ "version": "0.21.3",
+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz",
+ "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==",
+ "dev": true,
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/typed-array-length": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.4.tgz",
+ "integrity": "sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==",
+ "dev": true,
+ "dependencies": {
+ "call-bind": "^1.0.2",
+ "for-each": "^0.3.3",
+ "is-typed-array": "^1.1.9"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/typedarray-to-buffer": {
+ "version": "3.1.5",
+ "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz",
+ "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==",
+ "dev": true,
+ "dependencies": {
+ "is-typedarray": "^1.0.0"
+ }
+ },
+ "node_modules/typescript": {
+ "version": "5.0.2",
+ "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.0.2.tgz",
+ "integrity": "sha512-wVORMBGO/FAs/++blGNeAVdbNKtIh1rbBL2EyQ1+J9lClJ93KiiKe8PmFIVdXhHcyv44SL9oglmfeSsndo0jRw==",
+ "dev": true,
+ "peer": true,
+ "bin": {
+ "tsc": "bin/tsc",
+ "tsserver": "bin/tsserver"
+ },
+ "engines": {
+ "node": ">=12.20"
+ }
+ },
+ "node_modules/unbox-primitive": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz",
+ "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==",
+ "dev": true,
+ "dependencies": {
+ "call-bind": "^1.0.2",
+ "has-bigints": "^1.0.2",
+ "has-symbols": "^1.0.3",
+ "which-boxed-primitive": "^1.0.2"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/unicode-canonical-property-names-ecmascript": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz",
+ "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/unicode-match-property-ecmascript": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz",
+ "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==",
+ "dev": true,
+ "dependencies": {
+ "unicode-canonical-property-names-ecmascript": "^2.0.0",
+ "unicode-property-aliases-ecmascript": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/unicode-match-property-value-ecmascript": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz",
+ "integrity": "sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==",
+ "dev": true,
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/unicode-property-aliases-ecmascript": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz",
+ "integrity": "sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==",
+ "dev": true,
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/union-value": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz",
+ "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==",
+ "dev": true,
+ "dependencies": {
+ "arr-union": "^3.1.0",
+ "get-value": "^2.0.6",
+ "is-extendable": "^0.1.1",
+ "set-value": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/union-value/node_modules/is-extendable": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz",
+ "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/uniq": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz",
+ "integrity": "sha512-Gw+zz50YNKPDKXs+9d+aKAjVwpjNwqzvNpLigIruT4HA9lMZNdMqs9x07kKHB/L9WRzqp4+DlTU5s4wG2esdoA==",
+ "dev": true
+ },
+ "node_modules/uniqs": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/uniqs/-/uniqs-2.0.0.tgz",
+ "integrity": "sha512-mZdDpf3vBV5Efh29kMw5tXoup/buMgxLzOt/XKFKcVmi+15ManNQWr6HfZ2aiZTYlYixbdNJ0KFmIZIv52tHSQ==",
+ "dev": true
+ },
+ "node_modules/unquote": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/unquote/-/unquote-1.1.1.tgz",
+ "integrity": "sha512-vRCqFv6UhXpWxZPyGDh/F3ZpNv8/qo7w6iufLpQg9aKnQ71qM4B5KiI7Mia9COcjEhrO9LueHpMYjYzsWH3OIg==",
+ "dev": true
+ },
+ "node_modules/unset-value": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz",
+ "integrity": "sha512-PcA2tsuGSF9cnySLHTLSh2qrQiJ70mn+r+Glzxv2TWZblxsxCC52BDlZoPCsz7STd9pN7EZetkWZBAvk4cgZdQ==",
+ "dev": true,
+ "dependencies": {
+ "has-value": "^0.3.1",
+ "isobject": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/unset-value/node_modules/has-value": {
+ "version": "0.3.1",
+ "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz",
+ "integrity": "sha512-gpG936j8/MzaeID5Yif+577c17TxaDmhuyVgSwtnL/q8UUTySg8Mecb+8Cf1otgLoD7DDH75axp86ER7LFsf3Q==",
+ "dev": true,
+ "dependencies": {
+ "get-value": "^2.0.3",
+ "has-values": "^0.1.4",
+ "isobject": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/unset-value/node_modules/has-value/node_modules/isobject": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz",
+ "integrity": "sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA==",
+ "dev": true,
+ "dependencies": {
+ "isarray": "1.0.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/unset-value/node_modules/has-values": {
+ "version": "0.1.4",
+ "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz",
+ "integrity": "sha512-J8S0cEdWuQbqD9//tlZxiMuMNmxB8PlEwvYwuxsTmR1G5RXUePEX/SJn7aD0GMLieuZYSwNH0cQuJGwnYunXRQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/unset-value/node_modules/isobject": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz",
+ "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/update-browserslist-db": {
+ "version": "1.0.10",
+ "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz",
+ "integrity": "sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/browserslist"
+ },
+ {
+ "type": "tidelift",
+ "url": "https://tidelift.com/funding/github/npm/browserslist"
+ }
+ ],
+ "dependencies": {
+ "escalade": "^3.1.1",
+ "picocolors": "^1.0.0"
+ },
+ "bin": {
+ "browserslist-lint": "cli.js"
+ },
+ "peerDependencies": {
+ "browserslist": ">= 4.21.0"
+ }
+ },
+ "node_modules/uri-js": {
+ "version": "4.4.1",
+ "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
+ "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==",
+ "dev": true,
+ "dependencies": {
+ "punycode": "^2.1.0"
+ }
+ },
+ "node_modules/urix": {
+ "version": "0.1.0",
+ "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz",
+ "integrity": "sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg==",
+ "deprecated": "Please see https://github.com/lydell/urix#deprecated",
+ "dev": true
+ },
+ "node_modules/use": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz",
+ "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/util-deprecate": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
+ "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==",
+ "dev": true
+ },
+ "node_modules/util.promisify": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.1.tgz",
+ "integrity": "sha512-g9JpC/3He3bm38zsLupWryXHoEcS22YHthuPQSJdMy6KNrzIRzWqcsHzD/WUnqe45whVou4VIsPew37DoXWNrA==",
+ "dev": true,
+ "dependencies": {
+ "define-properties": "^1.1.3",
+ "es-abstract": "^1.17.2",
+ "has-symbols": "^1.0.1",
+ "object.getownpropertydescriptors": "^2.1.0"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/uuid": {
+ "version": "3.4.0",
+ "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz",
+ "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==",
+ "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.",
+ "dev": true,
+ "bin": {
+ "uuid": "bin/uuid"
+ }
+ },
+ "node_modules/v8-compile-cache": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz",
+ "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==",
+ "dev": true
+ },
+ "node_modules/v8-to-istanbul": {
+ "version": "4.1.4",
+ "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-4.1.4.tgz",
+ "integrity": "sha512-Rw6vJHj1mbdK8edjR7+zuJrpDtKIgNdAvTSAcpYfgMIw+u2dPDntD3dgN4XQFLU2/fvFQdzj+EeSGfd/jnY5fQ==",
+ "dev": true,
+ "dependencies": {
+ "@types/istanbul-lib-coverage": "^2.0.1",
+ "convert-source-map": "^1.6.0",
+ "source-map": "^0.7.3"
+ },
+ "engines": {
+ "node": "8.x.x || >=10.10.0"
+ }
+ },
+ "node_modules/v8-to-istanbul/node_modules/source-map": {
+ "version": "0.7.4",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz",
+ "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==",
+ "dev": true,
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/validate-npm-package-license": {
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz",
+ "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==",
+ "dev": true,
+ "dependencies": {
+ "spdx-correct": "^3.0.0",
+ "spdx-expression-parse": "^3.0.0"
+ }
+ },
+ "node_modules/vendors": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/vendors/-/vendors-1.0.4.tgz",
+ "integrity": "sha512-/juG65kTL4Cy2su4P8HjtkTxk6VmJDiOPBufWniqQ6wknac6jNiXS9vU+hO3wgusiyqWlzTbVHi0dyJqRONg3w==",
+ "dev": true,
+ "funding": {
+ "type": "github",
+ "url": "https://github.com/sponsors/wooorm"
+ }
+ },
+ "node_modules/verror": {
+ "version": "1.10.0",
+ "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz",
+ "integrity": "sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==",
+ "dev": true,
+ "engines": [
+ "node >=0.6.0"
+ ],
+ "dependencies": {
+ "assert-plus": "^1.0.0",
+ "core-util-is": "1.0.2",
+ "extsprintf": "^1.2.0"
+ }
+ },
+ "node_modules/w3c-hr-time": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz",
+ "integrity": "sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==",
+ "deprecated": "Use your platform's native performance.now() and performance.timeOrigin.",
+ "dev": true,
+ "dependencies": {
+ "browser-process-hrtime": "^1.0.0"
+ }
+ },
+ "node_modules/w3c-xmlserializer": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-1.1.2.tgz",
+ "integrity": "sha512-p10l/ayESzrBMYWRID6xbuCKh2Fp77+sA0doRuGn4tTIMrrZVeqfpKjXHY+oDh3K4nLdPgNwMTVP6Vp4pvqbNg==",
+ "dev": true,
+ "dependencies": {
+ "domexception": "^1.0.1",
+ "webidl-conversions": "^4.0.2",
+ "xml-name-validator": "^3.0.0"
+ }
+ },
+ "node_modules/wait-on": {
+ "version": "6.0.1",
+ "resolved": "https://registry.npmjs.org/wait-on/-/wait-on-6.0.1.tgz",
+ "integrity": "sha512-zht+KASY3usTY5u2LgaNqn/Cd8MukxLGjdcZxT2ns5QzDmTFc4XoWBgC+C/na+sMRZTuVygQoMYwdcVjHnYIVw==",
+ "dev": true,
+ "dependencies": {
+ "axios": "^0.25.0",
+ "joi": "^17.6.0",
+ "lodash": "^4.17.21",
+ "minimist": "^1.2.5",
+ "rxjs": "^7.5.4"
+ },
+ "bin": {
+ "wait-on": "bin/wait-on"
+ },
+ "engines": {
+ "node": ">=10.0.0"
+ }
+ },
+ "node_modules/wait-on/node_modules/axios": {
+ "version": "0.25.0",
+ "resolved": "https://registry.npmjs.org/axios/-/axios-0.25.0.tgz",
+ "integrity": "sha512-cD8FOb0tRH3uuEe6+evtAbgJtfxr7ly3fQjYcMcuPlgkwVS9xboaVIpcDV+cYQe+yGykgwZCs1pzjntcGa6l5g==",
+ "dev": true,
+ "dependencies": {
+ "follow-redirects": "^1.14.7"
+ }
+ },
+ "node_modules/walker": {
+ "version": "1.0.8",
+ "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz",
+ "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==",
+ "dev": true,
+ "dependencies": {
+ "makeerror": "1.0.12"
+ }
+ },
+ "node_modules/webidl-conversions": {
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz",
+ "integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==",
+ "dev": true
+ },
+ "node_modules/whatwg-encoding": {
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz",
+ "integrity": "sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==",
+ "dev": true,
+ "dependencies": {
+ "iconv-lite": "0.4.24"
+ }
+ },
+ "node_modules/whatwg-mimetype": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz",
+ "integrity": "sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==",
+ "dev": true
+ },
+ "node_modules/whatwg-url": {
+ "version": "7.1.0",
+ "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.1.0.tgz",
+ "integrity": "sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==",
+ "dev": true,
+ "dependencies": {
+ "lodash.sortby": "^4.7.0",
+ "tr46": "^1.0.1",
+ "webidl-conversions": "^4.0.2"
+ }
+ },
+ "node_modules/which": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
+ "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
+ "dev": true,
+ "dependencies": {
+ "isexe": "^2.0.0"
+ },
+ "bin": {
+ "node-which": "bin/node-which"
+ },
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/which-boxed-primitive": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz",
+ "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==",
+ "dev": true,
+ "dependencies": {
+ "is-bigint": "^1.0.1",
+ "is-boolean-object": "^1.1.0",
+ "is-number-object": "^1.0.4",
+ "is-string": "^1.0.5",
+ "is-symbol": "^1.0.3"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/which-module": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz",
+ "integrity": "sha512-B+enWhmw6cjfVC7kS8Pj9pCrKSc5txArRyaYGe088shv/FGWH+0Rjx/xPgtsWfsUtS27FkP697E4DDhgrgoc0Q==",
+ "dev": true
+ },
+ "node_modules/which-pm-runs": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/which-pm-runs/-/which-pm-runs-1.1.0.tgz",
+ "integrity": "sha512-n1brCuqClxfFfq/Rb0ICg9giSZqCS+pLtccdag6C2HyufBrh3fBOiy9nb6ggRMvWOVH5GrdJskj5iGTZNxd7SA==",
+ "dev": true,
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/which-typed-array": {
+ "version": "1.1.9",
+ "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.9.tgz",
+ "integrity": "sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA==",
+ "dev": true,
+ "dependencies": {
+ "available-typed-arrays": "^1.0.5",
+ "call-bind": "^1.0.2",
+ "for-each": "^0.3.3",
+ "gopd": "^1.0.1",
+ "has-tostringtag": "^1.0.0",
+ "is-typed-array": "^1.1.10"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/word-wrap": {
+ "version": "1.2.3",
+ "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz",
+ "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/wrap-ansi": {
+ "version": "7.0.0",
+ "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
+ "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^4.0.0",
+ "string-width": "^4.1.0",
+ "strip-ansi": "^6.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/wrap-ansi?sponsor=1"
+ }
+ },
+ "node_modules/wrap-ansi/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/wrap-ansi/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/wrap-ansi/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/wrappy": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
+ "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==",
+ "dev": true
+ },
+ "node_modules/write-file-atomic": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz",
+ "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==",
+ "dev": true,
+ "dependencies": {
+ "imurmurhash": "^0.1.4",
+ "is-typedarray": "^1.0.0",
+ "signal-exit": "^3.0.2",
+ "typedarray-to-buffer": "^3.1.5"
+ }
+ },
+ "node_modules/ws": {
+ "version": "7.5.9",
+ "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz",
+ "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==",
+ "dev": true,
+ "engines": {
+ "node": ">=8.3.0"
+ },
+ "peerDependencies": {
+ "bufferutil": "^4.0.1",
+ "utf-8-validate": "^5.0.2"
+ },
+ "peerDependenciesMeta": {
+ "bufferutil": {
+ "optional": true
+ },
+ "utf-8-validate": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/xml-name-validator": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz",
+ "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==",
+ "dev": true
+ },
+ "node_modules/xmlchars": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz",
+ "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==",
+ "dev": true
+ },
+ "node_modules/y18n": {
+ "version": "4.0.3",
+ "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz",
+ "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==",
+ "dev": true
+ },
+ "node_modules/yallist": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz",
+ "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==",
+ "dev": true
+ },
+ "node_modules/yaml": {
+ "version": "1.10.2",
+ "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz",
+ "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==",
+ "dev": true,
+ "engines": {
+ "node": ">= 6"
+ }
+ },
+ "node_modules/yargs": {
+ "version": "15.3.1",
+ "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.3.1.tgz",
+ "integrity": "sha512-92O1HWEjw27sBfgmXiixJWT5hRBp2eobqXicLtPBIDBhYB+1HpwZlXmbW2luivBJHBzki+7VyCLRtAkScbTBQA==",
+ "dev": true,
+ "dependencies": {
+ "cliui": "^6.0.0",
+ "decamelize": "^1.2.0",
+ "find-up": "^4.1.0",
+ "get-caller-file": "^2.0.1",
+ "require-directory": "^2.1.1",
+ "require-main-filename": "^2.0.0",
+ "set-blocking": "^2.0.0",
+ "string-width": "^4.2.0",
+ "which-module": "^2.0.0",
+ "y18n": "^4.0.0",
+ "yargs-parser": "^18.1.1"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/yargs-parser": {
+ "version": "18.1.3",
+ "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz",
+ "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==",
+ "dev": true,
+ "dependencies": {
+ "camelcase": "^5.0.0",
+ "decamelize": "^1.2.0"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/yargs/node_modules/find-up": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
+ "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
+ "dev": true,
+ "dependencies": {
+ "locate-path": "^5.0.0",
+ "path-exists": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/yargs/node_modules/locate-path": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
+ "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
+ "dev": true,
+ "dependencies": {
+ "p-locate": "^4.1.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/yargs/node_modules/p-limit": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
+ "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
+ "dev": true,
+ "dependencies": {
+ "p-try": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=6"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/yargs/node_modules/p-locate": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
+ "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
+ "dev": true,
+ "dependencies": {
+ "p-limit": "^2.2.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/yocto-queue": {
+ "version": "0.1.0",
+ "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz",
+ "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==",
+ "dev": true,
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ }
+ }
+}
diff --git a/package.json b/package.json
index 060c432..f2511a5 100644
--- a/package.json
+++ b/package.json
@@ -12,7 +12,7 @@
"test:unit:watch": "sfdx-lwc-jest --watch",
"test:unit:debug": "sfdx-lwc-jest --debug",
"test:unit:coverage": "sfdx-lwc-jest --coverage",
- "prettier": "prettier --write \"**/*.{cls,cmp,component,css,html,js,json,md,page,trigger,xml,yaml,yml}\"",
+ "prettier": "prettier",
"prettier:verify": "prettier --list-different \"**/*.{cls,cmp,component,css,html,js,json,md,page,trigger,xml,yaml,yml}\""
},
"devDependencies": {
--
Gitblit v1.9.1