import getStaticResource from "@salesforce/apex/ButtonJsUtility.getStaticResource"; import init from "@salesforce/apex/otherButtonRepairController.init"; import initSelectProfile from '@salesforce/apex/otherButtonRepairController.initSelectProfile'; import initUserName from '@salesforce/apex/otherButtonRepairController.initUserName'; 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; userName; profileName; 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); var btns = document.getElementsByName("send_nfm103"); for (var i = 0; i < btns.length; i++) { btns[i].disabled = true; btns[i].className = 'btnDisabled'; } this.Id = result.Id; this.detailedAddress = result.detailedAddress; this.dealer = result.DealerC; this.numberofEffectiveContract = result.numberofEffectiveContract; this.newProductGuaranteTxt = result.newProductGuaranteTxt; this.onSiteRepair = result.OnSiteRepairC; this.maintenanceContract = result.maintenanceContract; this.VMMaintenanceContract = result.VMMaintenanceContract; this.FSEState = result.FSEState; this.dateReceiptQuestions = result.DateReceiptQuestionsC; this.delayReportReason = result.DelayReportReasonC; this.repairSource = result.repairSource; this.quickRepairSign = result.quickRepairSign; this.RCCD = result.RCCD; this.returnsProductway = result.ReturnsProductWayC; 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.ifDeadHurtC; 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.SalesOfficeCodeSelectionC; this.profileId = result.profileId; this.userId = result.userID; this.AWSDataId = result.AWSDataId; initUserName({ userId: this.userId }).then(result => { if (result != null) { this.IsLoading = false; this.userName = result[0].Name; } }) initSelectProfile({ profileId: this.profileId }).then(result => { if (result != null) { this.IsLoading = false; this.profileName = result[0].Name; this.foo(); } }) this.dispatchEvent(new CloseActionScreenEvent()); }).catch(error => { console.log(error); }); } foo() { // queryForrecords3({ // dealer: this.dealer // }).then(result => { // if (result.length > 0 && result[0].FirstParagraph__c == true) { // if (!confirm("该经销商为先款对象,是否继续申请修理?")) { // return; // } // } // if ( // this.numberofEffectiveContract == "无" && this.newProductGuaranteTxt != "2: 多年保修" && // this.newProductGuaranteTxt != "2: 服务多年保修" && this.newProductGuaranteTxt != "8: 市场多年保修" && // this.onSiteRepair == "直送SORC修理" // ) { // if (!confirm("设备为非维修合同且非多年保修对象品,请确认是否直送SORC修理?")) { // return; // } // } // if ((this.maintenanceContract != undefined || this.VMMaintenanceContract != undefined) && // this.onSiteRepair == "RC修理" && this.FSEState == "山东省" // ) { // if (!confirm("该设备为维修合同或多年保修对象品,请确认是否送至RC修理?")) { // return; // } // } // var today = Date.now(); // var dateReceiptQuestions = Date.parse(this.dateReceiptQuestions); // var dates = (today - dateReceiptQuestions) / (24 * 60 * 60 * 1000); // if (this.profileName != "系统管理员" && this.userName != "胡 玉成" && this.userName != "李 琪清" && // this.userName != "郭 洋" && // this.delayReportReason == undefined && dates > "1" && // this.repairSource != "QIS转修理") { // alert("申请修理时SAP修理申请日超过问题联络收到日1天,必须填写问超时报告的理由"); // 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("该型号对应为合同或多年保对象品。如确认为大修理故障,需要选择直送SORC修理,请确认是否继续。")) { // return; // } // } else if (this.RCCD == "1.华北" || this.RCCD == "6.华南" || this.RCCD == "4.西南") { // if (!confirm("该型号对应为合同或多年保对象品。如确认为大修理故障,需要选择直送OGZ修理,请确认是否继续。")) { // return; // } // } // } // var returnsProductWay = this.returnsProductway; // if (returnsProductWay == undefined) { // if (!confirm("返品方式为空,是否继续申请修理!")) { // return; // } // } // var DetailedAddress = this.detailedAddress; // if (this.assetOwner != "Olympus") { // if (DetailedAddress != undefined) { // var prompt = '当前直返收货地址为:' + DetailedAddress + ',您确认不修改了吗?'; // if (!confirm(prompt)) { // return; // } // } else { // alert('当前修理没有录入直返收货的详细地址,不能申请修理!'); // return; // } // } // queryForEquipments({ // deliveredProductId: this.deliveredProductId, // }).then(equipments => { // if (equipments != null && equipments.length > 0) { // var equipment = equipments[0]; // if (equipment.Status == "廃棄") { // alert("设备废弃,不能提交申请!"); // return; // } // } // }); // if (this.FSEApplyForRepairTime != undefined) { // alert("已修理申请,不再修理申请了"); // return; // } // var surplusCount = 0; // if (this.URFReapir == false) { // queryForUrfAsset({ // maintenanceContractId: this.maintenanceContractId, // deliveredProductId: this.deliveredProductId, // }).then(urfAsset => { // 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; // } // }); // queryForUrfSeriesInfo({ // URFLimitSerial: this.URFLimitSerial, // }).then(urfSeriesInfo => { // var urfSeries = ""; // if (urfSeriesInfo != null && urfSeriesInfo.length > 0) { // urfSeries = urfSeriesInfo[0].URFLimitSerial__c; // } // queryForRepairCount({ // maintenanceContractId: this.maintenanceContractId, // status1: "1.受理完毕", // URFLimitSerial: urfSeries, // }).then(repairCount => { // if (repairCount.length > 0 && surplusCount == 1) { // alert("该设备关联限次合同,目前剩余次数小于送修设备。请等待进行中修理完成后再进行申请"); // return; // } // }); // }); // } // if (this.status != "草案中" && this.status != "1.受理完毕(SAP待发送)" && this.status != "4.修理品返送阶段") { // alert("不是草案中不能申请"); // } else { // if (this.dealer != undefined) { // queryForFindInvalidLicense({ // dealerId: this.dealerId, // }).then(findInvalidLicense => { // console.log(findInvalidLicense); // if (findInvalidLicense.length > 0) { // alert("经销商三证不在有效期,无法送修"); // return; // } // }); // } // } // if (this.ifDeadHurt == "有") { // if (!confirm("是否确认AE要提交?")) { // return; // } // } // if (this.dayLater30 == "是") { // alert("创建后超过30天,不能申请了"); // return; // } // var prompt11 = "合同内大修次数已用完,当前修理为合同外的修理,是否继续?"; // if (this.URFReapir == false && surplusCount == 0) { // if (!confirm(prompt11)) { // return; // } // } // updateForRepair1({ // recordId: this.Id // }).then(result => { // if (result != null && result.length > 0) { // var split = result.split(", "); // alert(split[1]); // } else { // queryForReocrds({ // inchargeStaffId: this.inchargeStaffId, // }).then(records => { // if (records != null && records.length > 0) { // var staff = records[0]; // console.log(staff); // updateRepair2({ // recordId: this.Id, // staff: staff, // DWSign: this.DWSign, // statusc: "1.受理完毕", // DOJStatus: this.DOJStatus, // SAPcondition: this.SAPcondition, // }).then(result => { // console.log(result); // if (result != null && result.length > 0) { // var split = result.split(", "); // alert(split[1]); // } else { // if (this.salesOfficeCodeSelection == "成都RC") { // alert("现阶段,成都RC仅受理四川(西藏)内镜、西南全域CV/CLV,其余实物请发至广州RC。"); // } // } // }); // queryForRds({ // recordId: this.Id, // }).then(rds => { // if (rds != null && rds.length > 0) { // var repairAft = rds[0]; // if (repairAft.NewProductGuarante_Formula__c != repairAft.ProductGuarante_Create__c) { // alert("该设备保修信息已发生变化,请了解"); // } // } // }); // } else { // alert("没有找到 修理委托者"); // } // }); // } // }); // }); var staticResource; var DetailedAddress = this.detailedAddress; 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) { DetailedAddress = data.object.detailedAddress; } this.foo(); }, staticResource.token); }); }) } ShowToastEvent(msg, type) { const event = new ShowToastEvent({ title: '', message: msg, variant: type }); this.dispatchEvent(event); } }