public with sharing class buttonQISReportCtl {
|
@AuraEnabled
|
public static InitData init(String recordId){
|
InitData res = new initData();
|
try{
|
QIS_Report__c report = [SELECT Source_OnCall__r.Id,nonyushohin__r.Id,Hospital_Department__r.Id,Hospital__r.Id,source_for_repair__c,Trable_occur_daY_collect__c,nonyushohin__c,Hospital_Department__c,Department_Class__c,Department_Class__r.Id,Source_OnCall__c,HP_ID__c,Special_follow__c,next_action__c,Hospital__c,is_CNBuy__c,isPAE_Profile__c,isAE_Profile__c,Name,QIS_Status__c,PAE_DetermineAC__c,AE_DetermineResult__c,ETQ_UPLOAD_STATUS__c,QIS_final_judgement__c,OCM_judgement__c,PAE_Determine__c,Id FROM QIS_Report__c WHERE Id =: recordId LIMIT 1];
|
res.Hospital = report.Hospital__c;
|
res.HospitalId = report.Hospital__r.Id;
|
res.nextAction = report.next_action__c;
|
res.SpecialFollow = report.Special_follow__c;
|
res.HPID = report.HP_ID__c;
|
res.SourceOnCallId = report.Source_OnCall__r.Id;
|
res.SourceOnCall = report.Source_OnCall__c;
|
res.DepartmentClassId = report.Department_Class__r.Id;
|
res.DepartmentClass = report.Department_Class__c;
|
res.HospitalDepartment = report.Hospital_Department__c;
|
res.HospitalDepartmentId = report.Hospital_Department__r.Id;
|
res.nonyushohin = report.nonyushohin__c;
|
res.nonyushohinId = report.nonyushohin__r.Id;
|
res.TrableOccurDaYCollect = report.Trable_occur_daY_collect__c;
|
res.sourceForRepair = report.source_for_repair__c;
|
|
|
res.PAEDetermineC = report.PAE_Determine__c;
|
res.PAEDetermineACC = report.PAE_DetermineAC__c;
|
res.OCMJudgementC = report.OCM_judgement__c;
|
res.QISFinalJudgementC = report.QIS_final_judgement__c;
|
res.ETQUPLOADSTATUSC = report.ETQ_UPLOAD_STATUS__c;
|
res.AEDetermineResultC = report.AE_DetermineResult__c;
|
res.Id = report.Id;
|
res.Name = report.Name;
|
res.QISStatusC = report.QIS_Status__c;
|
|
res.isAEProfileC = report.isAE_Profile__c;
|
res.isCNBuyC = report.is_CNBuy__c;
|
res.isPAEProfileC = report.isPAE_Profile__c;
|
res.userId = UserInfo.getUserId();
|
res.email = UserInfo.getUserEmail();
|
res.profileId = UserInfo.getProfileId();
|
}catch(Exception e){
|
System.debug(LoggingLevel.INFO, '*** e: ' + e);
|
}
|
return res;
|
}
|
|
// 根据ID修理报价提交
|
@AuraEnabled
|
public static String updateOSHNogoods(String Id,String email,String userId){
|
List<User> user = new List<User>();
|
user = [SELECT Id,Alias,Alias__c from User where id = :userId];
|
|
String res ='';
|
try {
|
QIS_Report__c rac = new QIS_Report__c();
|
rac.Id = Id;
|
rac.QIS_Status__c = 'OSH检测中';
|
rac.OSHRecievedDate__c = Date.today();
|
rac.OSH_Receive_staff__c = user[0].Alias;
|
rac.OSH_staff__c = user[0].Alias;
|
rac.OSH_staff_email__c = email;
|
rac.Is_ProductGot__c = true;
|
rac.OSH_GotProductPeople__c = userId;
|
|
List<User> records = new List<User>();
|
records = [SELECT Id, JingliApprovalManager__c, BuchangApprovalManager__c, ZongjianApprovalManager__c FROM User WHERE Id=: userId ];
|
if (records != null && records.size() > 0 && records[0].JingliApprovalManager__c != null&& records[0].BuchangApprovalManager__c != null) {
|
rac.OSH_Manager__c= records[0].JingliApprovalManager__c;
|
rac.OSH_Buzhang__c= records[0].BuchangApprovalManager__c;
|
} else {
|
rac.OSH_Manager__c= userId;
|
rac.OSH_Buzhang__c= userId;
|
}
|
rac.OSHInspectionDate__c = Date.today();
|
rac.OSH_Nogoods__c = true;
|
update rac;
|
} catch (Exception e) {
|
System.debug(LoggingLevel.INFO, '*** e: ' + e);
|
if (e.getMessage().contains(':')){
|
String eMessage = e.getMessage();
|
Integer left = eMessage .indexof(',')+1 ;
|
Integer right = eMessage.indexof('[')-2;
|
res = eMessage.substring(left,right);
|
}else {
|
res = e.getMessage();
|
}
|
// res = e.getDmlMessage(0);
|
}
|
return res;
|
}
|
|
@AuraEnabled
|
public static String sendToETQ(String iflog_Id,BatchIF_Log__c rowDataSFDC, List<String> repairIds,String statu){
|
List<QIS_Report__c> temp = [select id from QIS_Report__c where id in :repairIds ];
|
if(temp != null && temp.size() > 0){
|
try {
|
if (!Test.isRunningTest()) {
|
Database.executeBatch(new QISToPDFBatch(iflog_Id, rowDataSFDC,repairIds,statu),50); //生成PDF
|
}
|
}
|
catch (Exception e) {
|
return '更新QIS报错:'+ e.getMessage();
|
}
|
}else{
|
BatchIF_Log__c iflog = new BatchIF_Log__c();
|
iflog.Type__c = 'sendToETQ';
|
iflog.ErrorLog__c = '';
|
iflog.Log__c = 'NFM401WebService start--';
|
|
Repair__c updateRe = new Repair__c();
|
updateRe.Id = repairIds[0];
|
updateRe.INTERFACE_RECORD_ID__c = null;
|
updateRe.ETQ_UPLOAD_STATUS__c = null;
|
updateRe.ETQ_UPLOAD_MESSAGE__c = null;
|
updateRe.OSH_ConfirmationDate__c = Date.today();
|
updateRe.OSH_Affirmant__c = UserInfo.getUserId();
|
updateRe.AWS_Interface_Time__c = Datetime.now();
|
updateRe.AsyncData__c = true;
|
try{
|
update updateRe;
|
if (!Test.isRunningTest()) {
|
Database.executeBatch(new RepairToPDFBatch(iflog_Id, rowDataSFDC,repairIds,statu)); //生成PDF
|
}
|
iflog.Log__c += '\n修理:'+updateRe+' 更新成功';
|
iflog.Log__c = '\nNFM401WebService end--';
|
insert iflog;
|
}catch(Exception ex){
|
iflog.ErrorLog__c += '修理:'+updateRe+' 更新失败,因为::'+ex.getMessage();
|
iflog.Log__c = '\nNFM401WebService end--';
|
insert iflog;
|
return '更新修理报错:'+ ex.getMessage();
|
}
|
}
|
return '发送成功!';
|
}
|
|
// 根据ID修理报价提交
|
@AuraEnabled
|
public static String updateQISReportC(String QId,String uid){
|
try {
|
QIS_Report__c rac = new QIS_Report__c();
|
rac.Id = QId;
|
rac.INTERFACE_RECORD_ID__c = null;
|
rac.ETQ_UPLOAD_STATUS__c = null;
|
rac.ETQ_UPLOAD_MESSAGE__c = null;
|
rac.AsyncData__c = true;
|
rac.AWS_Interface_Time__c = Datetime.now();
|
rac.OSH_ConfirmationDate__c = Date.today();
|
rac.OSH_Affirmant__c = uid;
|
update rac;
|
return '更新成功!';
|
} catch (Exception e) {
|
if (e.getMessage().contains(':')){
|
String eMessage = e.getMessage();
|
Integer left = eMessage .indexof(',')+1 ;
|
Integer right = eMessage.indexof('[')-2;
|
return eMessage.substring(left,right);
|
}else {
|
return e.getMessage();
|
}
|
// return e.getDmlMessage(0);
|
}
|
}
|
|
// 根据ID修理报价提交
|
@AuraEnabled
|
public static List<QIS_Report__c> selectQISReportC(String QId){
|
List<QIS_Report__c> res = new List<QIS_Report__c>();
|
try {
|
res = [SELECT Id,AsyncData__c,Complaint_Number__c,ETQ_UPLOAD_STATUS__c from QIS_Report__c where Id=: QId ];
|
} catch (Exception e) {
|
System.debug(LoggingLevel.INFO, '*** e: ' + e);
|
}
|
return res;
|
}
|
|
// 根据ID修理报价提交
|
@AuraEnabled
|
public static String updateQisForRCRecieved(String QId,String uid){
|
String res='';
|
try {
|
List<User> user = new List<User>();
|
user = [SELECT Id,Alias,Alias__c from User];
|
|
System.debug('The value of user is: ' + user);
|
|
QIS_Report__c rac = new QIS_Report__c();
|
rac.Id = QId;
|
rac.QIS_Status__c = 'RC检测中';
|
rac.OCM_RC_RecievedDate__c = Date.today();
|
rac.RC__c = uid;
|
rac.RC_Receive_staff__c = user[0].Alias;
|
List<User> records = new List<User>();
|
records = [SELECT Id, BuchangApprovalManagerSales__c,JingliApprovalManager__c, BuchangApprovalManager__c, ZongjianApprovalManager__c FROM User WHERE Id=: uid ];
|
if (records != null && records.size() > 0 && records[0].BuchangApprovalManagerSales__c != null) {
|
rac.RC_Manager__c = records[0].BuchangApprovalManagerSales__c;
|
} else {
|
rac.RC_Manager__c = uid;
|
}
|
rac.CDS_date__c = Date.today();
|
rac.RC_CDS_staff__c = user[0].Alias__c;
|
rac.OCSM_Nogoods__c = true;
|
update rac;
|
} catch (Exception e) {
|
System.debug(LoggingLevel.INFO, '*** e: ' + e);
|
if (e.getMessage().contains(':')){
|
String eMessage = e.getMessage();
|
Integer left = eMessage .indexof(',')+1 ;
|
Integer right = eMessage.indexof('[')-2;
|
res = eMessage.substring(left,right);
|
}else {
|
res = e.getMessage();
|
}
|
// res = e.getDmlMessage(0);
|
}
|
return res;
|
}
|
|
// 查找简档
|
@AuraEnabled
|
public static String initSelectProfile(String profileId){ //update 20240218 by DTT-亚楠 List<Profile>——>String
|
List<Profile> res = new List<Profile>();
|
String profileName = ''; //update 20240218 by DTT-亚楠
|
try{
|
res = [SELECT Id,name FROM Profile WHERE Id=: profileId ];
|
if (res.size() > 0) {
|
profileName = res[0].Name;
|
}
|
}catch(Exception e){
|
System.debug(LoggingLevel.INFO, '*** e: ' + e);
|
}
|
// return res;
|
return profileName; //update 20240218 by DTT-亚楠
|
}
|
|
@AuraEnabled
|
public static List<Account> selecctAccountByAccountId(String HospitalDepartmentId){
|
try {
|
List<Account> accounts = [SELECT ParentId,Parent.RecordTypeId, Parent.RecordType_DeveloperName__c,RecordType_DeveloperName__c ,Parent.Parent.FSE_GI_Main_Leader__c, Parent.Parent.FSE_GI_Main_Leader__r.Name,Parent.Parent.FSE_SP_Main_Leader__r.Name,Parent.Parent.FSE_SP_Main_Leader__c,Parent.Parent.FSE_GI_Main_Leader__r.Work_Location__c,Parent.Parent.FSE_SP_Main_Leader__r.Work_Location__c FROM Account WHERE ID=: HospitalDepartmentId];
|
return accounts;
|
} catch (Exception e) {
|
throw new AuraHandledException(e.getMessage());
|
}
|
}
|
|
// 查找UserName
|
@AuraEnabled
|
public static List<User> initUserName(String userId){
|
List<User> res = new List<User>();
|
try{
|
res = [SELECT Id,name,RepairSalesPoint_Province_China__c FROM User WHERE Id=: userId ];
|
}catch(Exception e){
|
System.debug(LoggingLevel.INFO, '*** e: ' + e);
|
}
|
return res;
|
}
|
|
public class InitData{
|
@AuraEnabled
|
public String SourceOnCallId;
|
@AuraEnabled
|
public String nonyushohinId;
|
@AuraEnabled
|
public String Hospital;
|
@AuraEnabled
|
public String HospitalId;
|
@AuraEnabled
|
public String nextAction;
|
@AuraEnabled
|
public Boolean SpecialFollow;
|
@AuraEnabled
|
public String HPID;
|
@AuraEnabled
|
public String SourceOnCall;
|
@AuraEnabled
|
public String DepartmentClassId;
|
@AuraEnabled
|
public String DepartmentClass;
|
@AuraEnabled
|
public String HospitalDepartment;
|
@AuraEnabled
|
public String nonyushohin;
|
@AuraEnabled
|
public Date TrableOccurDaYCollect;
|
@AuraEnabled
|
public String sourceForRepair;
|
@AuraEnabled
|
public String HospitalDepartmentId;
|
|
@AuraEnabled
|
public String isAEProfileC;
|
@AuraEnabled
|
public String isCNBuyC;
|
@AuraEnabled
|
public String isPAEProfileC;
|
|
@AuraEnabled
|
public String Id;
|
@AuraEnabled
|
public String Name;
|
@AuraEnabled
|
public String QISStatusC;
|
@AuraEnabled
|
public String userId;
|
@AuraEnabled
|
public String email;
|
@AuraEnabled
|
public String profileId;
|
@AuraEnabled
|
public String PAEDetermineC;
|
@AuraEnabled
|
public String PAEDetermineACC;
|
@AuraEnabled
|
public String OCMJudgementC;
|
@AuraEnabled
|
public String QISFinalJudgementC;
|
@AuraEnabled
|
public String ETQUPLOADSTATUSC;
|
@AuraEnabled
|
public String AEDetermineResultC;
|
|
}
|
}
|