public with sharing class EquipmentRentalExtendController {
|
// 检索条件
|
public Rental_Apply__c searchCondition { get; set; } // 其他定值条件
|
public Rental_Apply_Equipment_Set__c finalDay { get; set; } // 适用
|
public User finalDayFrom { get; set; } // 最终期限开始
|
public User finalDayTo { get; set; } // 最终期限结束
|
public String ownerSearch { get; set; } // 所有者
|
public String returnIMFupdate {get; set;}
|
public String userProfileName {get; set;}
|
public boolean isStockUser {get; set;}
|
|
// 分页用 SWAG-B9UBDP start
|
public Integer currPage { get; set; } // 当前页
|
public Integer totalPage { get; set; } // 总页数
|
public Integer selctRecordNum { get { return Integer.valueOf(selRecordOption); } } // 选择的每页记录数
|
public Integer totalRecords { get; set; } // 总记录数
|
public String selRecordOption { get; set; }
|
public static List<SelectOption> recordNum { get; private set; } // 选择每页记录数List
|
// 分页用 SWAG-B9UBDP end
|
// 分页用 SWAG-B9UBDP start
|
// 翻页到首页
|
public void firstPage() {
|
currPage = 1;
|
}
|
|
// 向前翻页
|
public void previousPage() {
|
currPage --;
|
}
|
|
// 向后翻页
|
public void nextPage() {
|
currPage ++;
|
}
|
|
// 翻页到尾页
|
public void endPage() {
|
currPage = totalPage;
|
}
|
|
// 每页显示记录数变更
|
public void recordNumChange() {
|
currPage = 1;
|
totalPage = (totalRecords / selctRecordNum) + (Math.mod(totalRecords, selctRecordNum) > 0 ? 1 : 0);
|
setupRaesInfoList(raesInfoList);
|
}
|
|
static {
|
recordNum = new List<SelectOption>();
|
recordNum.add(new SelectOption('10', '10'));
|
recordNum.add(new SelectOption('20', '20'));
|
recordNum.add(new SelectOption('50', '50'));
|
recordNum.add(new SelectOption('100', '100'));
|
recordNum.add(new SelectOption('200', '200'));
|
}
|
// 分页用 SWAG-B9UBDP end
|
|
public static List<SelectOption> textOpts { get; private set; }
|
static {
|
textOpts = new List<SelectOption>();
|
textOpts.add(new SelectOption('', '-无-'));
|
textOpts.add(new SelectOption('S:Rental_Apply__r.Name', Schema.SObjectType.Rental_Apply__c.fields.Name.label));
|
textOpts.add(new SelectOption('S:Loaner_name_F__c', Schema.SObjectType.Rental_Apply_Equipment_Set__c.fields.Loaner_name_F__c.label));
|
textOpts.add(new SelectOption('S:Loaner_code_F__c', Schema.SObjectType.Rental_Apply_Equipment_Set__c.fields.Loaner_code_F__c.label));
|
textOpts.add(new SelectOption('S:Rental_Apply__r.Hospital__r.Hospital_Name__c', Schema.SObjectType.Account.fields.Hospital_Name__c.label));
|
textOpts.add(new SelectOption('S:SerialNumber_F__c', Schema.SObjectType.Rental_Apply_Equipment_Set__c.fields.Rental_Asset_SerialNumber__c.label));
|
}
|
public static List<SelectOption> equalOpts { get; private set; }
|
static {
|
equalOpts = new List<SelectOption>();
|
equalOpts.add(new SelectOption('equals', '等于'));
|
equalOpts.add(new SelectOption('contains', '包含'));
|
}
|
public String text1 { get; set; } // 对象
|
public String cond1 { get; set; } // 条件
|
public String val1 { 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[] { 'Rental_Apply__c', 'RAES_Status__c', 'Demo_purpose2__c', 'Loaner_code_F__c', 'Rental_Apply__r.Hospital__r.Hospital_Name__c', 'Final_reply_day__c', 'Demo_purpose1__c', 'Bollow_Date__c'};
|
|
private Boolean isSoft;
|
private boolean isSearchAll;
|
// 20210831 ljh SFDC-C4BBFH
|
public String ExceedOrWeekDayFrom; // 预定归还日开始
|
public String ExceedOrWeekDayEnd; // 预定归还日结束
|
private boolean IsExceed;//超过中
|
private boolean IsWeek;// 1周以内回收预定
|
// 20210831 ljh SFDC-C4BBFH end
|
|
/*****************ソート時再検索条件(画面からの入力条件を無視するため)******************/
|
private String text1ForSort = null;
|
private String cond1ForSort = null;
|
private String val1ForSort = null;
|
private String purpose1ForSort = null;
|
private Date fromDateForSort = null;
|
private Date toDateForSort = null;
|
private String ownerIdForSort = null;
|
|
// 明细结果
|
public List<RaesInfo> raesInfoList { get; set; }
|
|
// 明细条数
|
public Integer getRaesInfoListSize() {
|
return raesInfoList.size();
|
}
|
|
private String loginName; // 用户ID
|
// 分页用 SWAG-B9UBDP start
|
//private Integer Select_Limit = 200;
|
// 显示数据条数限制
|
|
private Integer Select_Limit = 600;
|
|
public List<List<RaesInfo>> raesInfoListList { get; set; }
|
|
// 分页用 SWAG-B9UBDP end
|
|
public EquipmentRentalExtendController(ApexPages.StandardController controller) {
|
// 分页用 SWAG-B9UBDP start
|
this();
|
// 分页用 SWAG-B9UBDP end
|
}
|
|
public EquipmentRentalExtendController() {
|
// 分页用 SWAG-B9UBDP start
|
currPage = 1;
|
totalPage = 1;
|
selRecordOption = '20';
|
totalRecords = 0;
|
raesInfoListList = new List<List<RaesInfo>>();
|
raesInfoListList.add(new List<RaesInfo>());
|
|
// 分页用 SWAG-B9UBDP end
|
}
|
|
// 画面初始化
|
public void init() {
|
|
returnIMFupdate = 'None';
|
searchCondition = new Rental_Apply__c();
|
finalDay = new Rental_Apply_Equipment_Set__c();
|
finalDayFrom = [select id, Birth_Date__c from User where id = :Userinfo.getUserId()];
|
finalDayFrom.Birth_Date__c = null;
|
finalDayTo = [select id, Birth_Date__c from User where id = :Userinfo.getUserId()];
|
finalDayTo.Birth_Date__c = null;
|
|
text1 = '';
|
cond1 = 'equals';
|
val1 = null;
|
userProfileName = UserInfo.getProfileId();
|
if (userProfileName == System.Label.Profile_2B2)isStockUser = true;
|
isSoft = false;
|
isSearchAll = false;
|
IsExceed = false;//20210816 ljh SFDC-C4BBFH 超过中
|
IsWeek = false;//20210816 ljh SFDC-C4BBFH 1周以内回收预定
|
|
loginName = null;
|
|
// 获得用户ID
|
String uidParam = System.currentPageReference().getParameters().get('uid');
|
if (uidParam != null) {
|
// URL传入用户
|
User u = [select Id, FirstName, LastName from User where Id = :uidParam];
|
ownerSearch = u.LastName + ' ' + u.FirstName;
|
loginName = ownerSearch;
|
} else {
|
// 当前登陆用户
|
User u = [Select Id, FirstName, LastName From User Where Id = :UserInfo.getUserId()];
|
ownerSearch = u.LastName + ' ' + u.FirstName;
|
loginName = ownerSearch;
|
}
|
|
raesInfoList = new List<RaesInfo>();
|
// 获取借出备品set一览
|
// 20210901 ljh SFDC-C4BBFH update start
|
// List<Rental_Apply_Equipment_Set__c> raesList = getData(text1, cond1, val1, searchCondition.Demo_purpose1__c, finalDayFrom.Birth_Date__c, finalDayTo.Birth_Date__c, ownerSearch);
|
List<Rental_Apply_Equipment_Set__c> raesList = getData(text1, cond1, val1, searchCondition.Demo_purpose1__c, finalDayFrom.Birth_Date__c, finalDayTo.Birth_Date__c, ownerSearch, ExceedOrWeekDayFrom,ExceedOrWeekDayEnd);
|
// 20210901 ljh SFDC-C4BBFH update end
|
// 作成明细行
|
getRaesInfoList(raesList);
|
// 生成犯规信息
|
for (Rental_Apply_Equipment_Set__c rase : raesList) {
|
|
}
|
// 默认排序
|
this.sortKey = '0';
|
this.preSortKey = '0';
|
this.sortOrderAsc = true;
|
this.sortOrder = new String[7];
|
this.sortOrder = new String[] {'↑', ' ', ' ', ' ', ' ', ' ', ' ', ' '};
|
// 排序用检索条件退避
|
text1ForSort = '';
|
cond1ForSort = 'equals';
|
val1ForSort = null;
|
purpose1ForSort = null;
|
fromDateForSort = null;
|
toDateForSort = null;
|
ownerIdForSort = ownerSearch;
|
}
|
|
// 检索按钮
|
public PageReference searchBtn() {
|
// 获取借出备品set一览
|
// List<Rental_Apply_Equipment_Set__c> raesList = getData(text1, cond1, val1, searchCondition.Demo_purpose1__c, finalDayFrom.Birth_Date__c, finalDayTo.Birth_Date__c, ownerSearch);
|
List<Rental_Apply_Equipment_Set__c> raesList = getData(text1, cond1, val1, searchCondition.Demo_purpose1__c, finalDayFrom.Birth_Date__c, finalDayTo.Birth_Date__c, ownerSearch , ExceedOrWeekDayFrom,ExceedOrWeekDayEnd);
|
// 20210827 ljh SFDC-C4BBFH add start
|
List<Rental_Apply_Equipment_Set__c> raesListNew = New List<Rental_Apply_Equipment_Set__c>();
|
if(IsExceed || IsWeek){
|
for(Rental_Apply_Equipment_Set__c raes:raesList){
|
//Wei_Return_Finish__c
|
if(raes.Wei_Return_Finish__c > 0){
|
raesListNew.add(raes);
|
}else{
|
if(IsExceed && raes.Final_reply_day__c < raes.Return_Time_Day__c){
|
raesListNew.add(raes);
|
}
|
if(IsWeek && raes.Final_reply_day__c >= raes.Return_Time_Day__c){
|
raesListNew.add(raes);
|
}
|
}
|
}
|
}else{
|
raesListNew = raesList;
|
}
|
// 20210827 ljh SFDC-C4BBFH add end
|
// 分页用 SWAG-B9UBDP start
|
currPage = 1;
|
// 分页用 SWAG-B9UBDP end
|
// 作成明细行
|
// getRaesInfoList(raesList);
|
getRaesInfoList(raesListNew);
|
// 排序用检索条件退避
|
text1ForSort = text1;
|
cond1ForSort = cond1;
|
val1ForSort = val1;
|
purpose1ForSort = searchCondition.Demo_purpose1__c;
|
fromDateForSort = finalDayFrom.Birth_Date__c;
|
toDateForSort = finalDayTo.Birth_Date__c;
|
ownerIdForSort = ownerSearch;
|
|
|
|
return null;
|
}
|
|
// 对明细行进行分页
|
private void setupRaesInfoList(List<RaesInfo> raesInfoList) {
|
list<List<RaesInfo>> tempraesInfoListList = new list<List<RaesInfo>>();
|
List<RaesInfo> tempraesInfoList = new List<RaesInfo>();
|
for (RaesInfo tempRaesInfo : raesInfoList) {
|
if (tempraesInfoList.size() >= selctRecordNum) {
|
tempraesInfoListList.add(tempraesInfoList);
|
tempraesInfoList = new List<RaesInfo>();
|
}
|
tempraesInfoList.add(tempRaesInfo);
|
}
|
tempraesInfoListList.add(tempraesInfoList);
|
totalPage = tempraesInfoListList.size();
|
if (tempraesInfoList.size() == 0) {
|
totalPage --;
|
}
|
totalRecords = raesInfoList.size();
|
currPage = 1;
|
raesInfoListList = tempraesInfoListList.clone();
|
}
|
|
// 作成明细行
|
private void getRaesInfoList(List<Rental_Apply_Equipment_Set__c> raesList) {
|
Boolean overLimit = false;
|
Set<String> unReturnCompletely = new Set<String>();
|
// 已经延期申请中的备品借出申请
|
Map<Id, Id> rentalApplyMap = new Map<Id, Id>();
|
for (Rental_Apply_Equipment_Set__c raes : raesList) {
|
if (raes.Extend_Status__c == '申请中' && !rentalApplyMap.containsKey(raes.Rental_Apply__c)) {
|
rentalApplyMap.put(raes.Rental_Apply__c, raes.Rental_Apply__c);
|
}
|
if (raes.Rental_Apply__r.Local_Borrow_Foul__c > 0) {
|
unReturnCompletely.add(raes.Rental_Apply__r.Name);
|
}
|
}
|
List<id> raesIdList = new List<id>();
|
// 已经打勾的明细保留并提前,但是要刷新最新状态
|
Map<String, Rental_Apply_Equipment_Set__c> raesMap = new Map<String, Rental_Apply_Equipment_Set__c>();
|
for (Rental_Apply_Equipment_Set__c raes : raesList) {
|
raesMap.put(raes.Id, raes);
|
raesIdList.add(raes.Id);
|
}
|
// 已经选择的明细
|
Map<Id, Rental_Apply_Equipment_Set__c> selectedMap = new Map<Id, Rental_Apply_Equipment_Set__c>();
|
for (RaesInfo info : raesInfoList) {
|
// 打勾并且备品借出申请不是申请中的,或者刚刚进行延期申请的(特殊处理),视为优先显示明细
|
if ((info.check && !rentalApplyMap.containsKey(info.raes.Rental_Apply__c)) || info.isExtend) {
|
selectedMap.put(info.raes.Id, raesMap.containsKey(info.raes.Id) ? raesMap.get(info.raes.Id) : info.raes);
|
}
|
}
|
|
Map<String, List<Rental_Apply_Equipment_Set_Detail__c>> resultRaesdMap = new Map<String, List<Rental_Apply_Equipment_Set_Detail__c>>();
|
|
List<Rental_Apply_Equipment_Set_Detail__c> RaasedList = [
|
select id
|
, Rental_Apply_Equipment_Set__r.Id, Rental_Apply_Equipment_Set__r.SerialNumber_F__c
|
, Rental_Apply_Equipment_Set__r.Fixture_Set__r.Loaner_code__c, Rental_Apply_Equipment_Set__r.Fixture_Set__r.Name
|
//, Asset__r.OwnershipMachine_No__c
|
//, Asset__r.Name,Asset__r.Loaner_accsessary__c
|
, OwnershipMachine_No_c__c
|
, Asset__r.Name, Loaner_accsessary_F__c
|
from Rental_Apply_Equipment_Set_Detail__c
|
where Rental_Apply_Equipment_Set__r.Id in :raesIdList
|
and Cancel_Select__c = False];
|
|
if (RaasedList != null) {
|
for (Rental_Apply_Equipment_Set_Detail__c RaesdInfo : RaasedList) {
|
if (resultRaesdMap.containsKey(RaesdInfo.Rental_Apply_Equipment_Set__r.Id)) {
|
resultRaesdMap.get(RaesdInfo.Rental_Apply_Equipment_Set__r.Id).add(RaesdInfo);
|
} else {
|
List<Rental_Apply_Equipment_Set_Detail__c> raList = New List<Rental_Apply_Equipment_Set_Detail__c>();
|
raList.add(RaesdInfo);
|
resultRaesdMap.put(RaesdInfo.Rental_Apply_Equipment_Set__r.Id, raList);
|
}
|
}
|
}
|
|
|
// 优先显示明细放在最前面
|
raesInfoList = new List<RaesInfo>();
|
List<Rental_Apply_Equipment_Set_Detail__c> raesdList = New List<Rental_Apply_Equipment_Set_Detail__c>();
|
for (Rental_Apply_Equipment_Set__c raes : selectedMap.values()) {
|
raesdList = resultRaesdMap.get(raes.Id);
|
RaesInfo raesinfo = new RaesInfo(true, raes, true, raesdList);
|
raesInfoList.add(raesinfo);
|
}
|
raesInfoList.sort();
|
Integer selectCnt = raesInfoList.size();
|
// 其他明细作成
|
for (Integer i = 0; i < raesList.size(); i++) {
|
// 201を超えた場合前200のみを出す
|
if (selectCnt + i >= Select_Limit) {overLimit = true; break;}
|
raesdList = resultRaesdMap.get(raesList[i].Id);
|
// 作成明细行
|
if (!selectedMap.containsKey(raesList[i].Id)) {
|
if (rentalApplyMap.containsKey(raesList[i].Rental_Apply__c)) {
|
// 延长申请中的备品借出申请,不能操作
|
RaesInfo raesinfo = new RaesInfo(false, raesList[i], false, raesdList);
|
raesInfoList.add(raesinfo);
|
} else {
|
// 其他备品借出申请,可以操作
|
RaesInfo raesinfo = new RaesInfo(false, raesList[i], true, raesdList);
|
raesInfoList.add(raesinfo);
|
}
|
}
|
}
|
|
// 显示数据条数信息
|
if (returnIMFupdate != 'None') {
|
//for(String Str : unReturnCompletely){
|
// ApexPages.addmessage(new ApexPages.message(ApexPages.severity.INFO, Str ));
|
//}
|
//ApexPages.addmessage(new ApexPages.message(ApexPages.severity.INFO, '以上备品申请未整单归还,计入违规' ));
|
}
|
if (overLimit) {
|
ApexPages.addmessage(new ApexPages.message(ApexPages.severity.INFO, '数据超过' + Select_Limit + '条,只显示前' + Select_Limit + '条'));
|
} else {
|
ApexPages.addmessage(new ApexPages.message(ApexPages.severity.INFO, '共有' + getRaesInfoListSize() + '条数据'));
|
}
|
// 分页用 SWAG-B9UBDP start
|
setupRaesInfoList(raesInfoList);
|
// 分页用 SWAG-B9UBDP end
|
}
|
|
// 貸出中全部
|
public void searchsp1Btn() {
|
isSearchAll = false;
|
IsExceed = false;//20210816 ljh SFDC-C4BBFH 超过中
|
IsWeek = false;//20210816 ljh SFDC-C4BBFH 1周以内回收预定
|
// 设定对应检索条件
|
text1 = '';
|
cond1 = 'equals';
|
val1 = null;
|
searchCondition.Demo_purpose1__c = null;
|
finalDayFrom.Birth_Date__c = null;
|
finalDayTo.Birth_Date__c = null;
|
// 检索
|
searchBtn();
|
}
|
|
// 超過中
|
public void searchsp2Btn() {
|
isSearchAll = false;
|
// 设定对应检索条件
|
text1 = '';
|
cond1 = 'equals';
|
val1 = null;
|
searchCondition.Demo_purpose1__c = null;
|
finalDayFrom.Birth_Date__c = null;
|
// 20210628 ljh update SFDC-C4BBFH start
|
// finalDayTo.Birth_Date__c = Date.today();
|
finalDayTo.Birth_Date__c = null;
|
ExceedOrWeekDayFrom = null; // 开始
|
ExceedOrWeekDayEnd = String.valueOf(Date.today());// 结束
|
IsExceed = true;
|
IsWeek = false;
|
// 20210628 ljh update SFDC-C4BBFH end
|
// 检索
|
searchBtn();
|
}
|
|
// 1週間以内
|
public void searchsp3Btn() {
|
isSearchAll = false;
|
// 设定对应检索条件
|
text1 = '';
|
cond1 = 'equals';
|
val1 = null;
|
searchCondition.Demo_purpose1__c = null;
|
// 20210628 ljh update SFDC-C4BBFH start
|
// finalDayFrom.Birth_Date__c = Date.today();
|
// finalDayTo.Birth_Date__c = Date.today().adddays(7);
|
ExceedOrWeekDayFrom = String.valueOf(Date.today()); // 开始
|
ExceedOrWeekDayEnd = String.valueOf(Date.today().adddays(7)); // 结束
|
finalDayFrom.Birth_Date__c = null;
|
finalDayTo.Birth_Date__c = null;
|
IsExceed = false; //【超过中】
|
IsWeek = true; // 【1周以内回收预定】
|
// 20210628 ljh update SFDC-C4BBFH end
|
// 检索
|
searchBtn();
|
}
|
|
// 全部
|
public void searchsp4Btn() {
|
isSearchAll = true;
|
IsExceed = false;//20210816 ljh SFDC-C4BBFH 超过中
|
IsWeek = false;//20210816 ljh SFDC-C4BBFH 1周以内回收预定
|
// 设定对应检索条件
|
text1 = '';
|
cond1 = 'equals';
|
val1 = null;
|
searchCondition.Demo_purpose1__c = null;
|
finalDayFrom.Birth_Date__c = null;
|
finalDayTo.Birth_Date__c = null;
|
// 检索
|
searchBtn();
|
}
|
|
// 明细排序
|
public void sortTable() {
|
// 排序
|
if (this.sortKey == this.preSortKey) {
|
// 方向が変わるのみ
|
this.sortOrderAsc = !this.sortOrderAsc;
|
this.sortOrder[Integer.valueOf(this.sortKey)] = (this.sortOrderAsc == true ? '↑' : '↓');
|
} else {
|
if (preSortKey == '') {
|
preSortKey = '0';
|
}
|
this.sortOrderAsc = true;
|
this.sortOrder[Integer.valueOf(this.preSortKey)] = ' ';
|
this.sortOrder[Integer.valueOf(this.sortKey)] = (this.sortOrderAsc == true ? '↑' : '↓');
|
}
|
this.preSortKey = this.sortKey;
|
// 获取排序后借出备品set一览
|
isSoft = true;
|
system.debug('IsExceed:'+IsExceed+'~'+IsWeek);
|
// ApexPages.addmessage(new ApexPages.message(ApexPages.severity.Info, 'IsExceed。IsWeek' + IsExceed+IsWeek));
|
// 20210901 ljh SFDC-C4BBFH update start
|
// List<Rental_Apply_Equipment_Set__c> raesList = getData(text1ForSort, cond1ForSort, val1ForSort, purpose1ForSort, fromDateForSort, toDateForSort, ownerIdForSort);
|
List<Rental_Apply_Equipment_Set__c> raesList = getData(text1ForSort, cond1ForSort, val1ForSort, purpose1ForSort, fromDateForSort, toDateForSort, ownerIdForSort, ExceedOrWeekDayFrom,ExceedOrWeekDayEnd);
|
List<Rental_Apply_Equipment_Set__c> raesListNew = New List<Rental_Apply_Equipment_Set__c>();
|
if(IsExceed || IsWeek){
|
for(Rental_Apply_Equipment_Set__c raes:raesList){
|
//Wei_Return_Finish__c
|
if(raes.Wei_Return_Finish__c > 0){
|
raesListNew.add(raes);
|
}else{
|
if(IsExceed && raes.Final_reply_day__c < raes.Return_Time_Day__c){
|
raesListNew.add(raes);
|
}
|
if(IsWeek && raes.Final_reply_day__c >= raes.Return_Time_Day__c){
|
raesListNew.add(raes);
|
}
|
}
|
}
|
}else{
|
raesListNew = raesList;
|
}
|
// 作成明细行
|
// getRaesInfoList(raesList);
|
getRaesInfoList(raesListNew);
|
// 20210827 ljh SFDC-C4BBFH add end
|
}
|
|
// 适用按钮
|
public void setDate() {
|
// 检索,选择的明细优先显示
|
searchBtn();
|
// 打勾的明细自动填入适用的值
|
for (RaesInfo info : raesInfoList) {
|
if (info.check == true) {
|
info.raes.Request_extend_day__c = finalDay.Request_extend_day__c;
|
info.raes.Extend_request_reason__c = finalDay.Extend_request_reason__c;
|
}
|
}
|
}
|
|
// 保存按钮
|
public PageReference saveBtn() {
|
// 回寄物流信息检查
|
boolean errflg = false;
|
//bp2 for (RaesInfo info : raesInfoList) {
|
//
|
// if (info.check && (info.raes.Return_Fedex_number2__c != null && info.raes.Return_Fedex_number2__c != '' ||
|
// info.raes.Return_delivery_company2__c != null ||
|
// info.raes.Return_Distributor_method2__c != null ||
|
// info.raes.Received_confirmation_staff2__c != null)
|
// ) {
|
// if (info.raes.Return_Fedex_number2__c == null ||
|
// info.raes.Return_Fedex_number2__c == '') {
|
// info.raes.Return_Fedex_number2__c.addError('请补全回寄物流信息');
|
// errflg = true;
|
// }
|
// if (info.raes.Return_delivery_company2__c == null) {
|
// info.raes.Return_delivery_company2__c.addError('请补全回寄物流信息');
|
// errflg = true;
|
// }
|
// if (info.raes.Return_Distributor_method2__c == null) {
|
// info.raes.Return_Distributor_method2__c.addError('请补全回寄物流信息');
|
// errflg = true;
|
// }
|
// if (info.raes.Received_confirmation_staff2__c == null) {
|
// info.raes.Received_confirmation_staff2__c.addError('请补全回寄物流信息');
|
// errflg = true;
|
// }
|
// }
|
// }
|
// if (errflg == true) {
|
// return null;
|
// }
|
// 打勾的明细,保存延期时间和延期理由
|
List<Rental_Apply_Equipment_Set__c> updateList = new List<Rental_Apply_Equipment_Set__c>();
|
//bp2 List<Equipment_Set__c> updateList2 = new List<Equipment_Set__c>();
|
for (RaesInfo info : raesInfoList) {
|
if (info.check) {
|
Rental_Apply_Equipment_Set__c raes = new Rental_Apply_Equipment_Set__c(Id = info.raes.Id);
|
//bp2
|
// raes.Request_extend_day__c = info.raes.Request_extend_day__c;
|
// raes.Extend_request_reason__c = info.raes.Extend_request_reason__c;
|
raes.Received_Confirm__c = info.raes.Received_Confirm__c;
|
raes.Received_ng_detail__c = info.raes.Received_ng_detail__c;
|
// OLY_OCM-460 Loaner_received_time__c的设置移动到Trigger
|
//bp2
|
// raes.Return_delivery_company2__c = info.raes.Return_delivery_company2__c;
|
// raes.Return_Fedex_number2__c = info.raes.Return_Fedex_number2__c;
|
// raes.Return_Distributor_method2__c = info.raes.Return_Distributor_method2__c;
|
// raes.Received_confirmation_staff2__c = info.raes.Received_confirmation_staff2__c;
|
// if (info.raes.Return_Fedex_number2__c == null) {
|
// raes.Asset_return_time__c = null;
|
// }
|
updateList.add(raes);
|
//bp2
|
// Equipment_Set__c es = new Equipment_Set__c(Id=info.raes.Equipment_Set__c);
|
// es.Return_delivery_company__c = info.raes.Return_delivery_company2__c;
|
// es.Return_Fedex_number__c = info.raes.Return_Fedex_number2__c;
|
// es.Return_Distributor_method__c = info.raes.Return_Distributor_method2__c;
|
// es.Received_confirmation_staff__c = info.raes.Received_confirmation_staff2__c;
|
// if (info.raes.Return_Fedex_number2__c == null) {
|
// es.Received_loaner_time__c = null;
|
// }
|
// updateList2.add(es);
|
}
|
}
|
System.debug('raes is' + updateList);
|
// 更新
|
if (updateList.size() > 0) {
|
try {
|
//update updateList;//2017/1/12之前,该更新操作位于Savepoint内部,但发现会导致个别工作流无法出发
|
FixtureUtil.withoutUpdate(updateList);
|
} catch (Exception e) {
|
//故将其外移,注此说明,以备后查
|
ApexPages.addMessages(e);
|
return null;
|
}
|
//bp2
|
// Savepoint sp = Database.setSavepoint();
|
// try {
|
// ControllerUtil.updEquipmentSetList(updateList2);
|
|
ApexPages.addmessage(new ApexPages.message(ApexPages.severity.Info, '保存完了'));
|
//bp2
|
// } catch (Exception e) {
|
// system.debug('=====' + e.getMessage());
|
// ApexPages.addMessages(e);
|
// Database.rollback(sp);
|
// return null;
|
// }
|
}
|
|
// 检索,选择的明细优先显示
|
searchBtn();
|
|
return null;
|
}
|
|
//bp2
|
// // 延期申请按钮
|
// public PageReference extendBtn() {
|
// // 检索,选择的明细优先显示
|
// searchBtn();
|
// // 选择的明细中第一条的备品借出申请ID
|
//// String raid = '';
|
//// if (raesInfoList.size() > 0) {
|
//// raid = raesInfoList[0].raes.Rental_Apply__c;
|
//// }
|
// // 每次只能对一个备品借出申请进行延期
|
//// for (RaesInfo info : raesInfoList) {
|
//// if (info.check && raid != info.raes.Rental_Apply__c) {
|
//// ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR, '每次只能对一个备品借出申请进行延期'));
|
//// return null;
|
//// }
|
//// }
|
// // 打勾的明细,保存延期时间和延期理由
|
// List<Rental_Apply_Equipment_Set__c> updateList = new List<Rental_Apply_Equipment_Set__c>();
|
// for (RaesInfo info : raesInfoList) {
|
// if (info.check) {
|
// Rental_Apply_Equipment_Set__c raes = new Rental_Apply_Equipment_Set__c(Id=info.raes.Id);
|
// raes.Request_extend_day__c = info.raes.Request_extend_day__c;
|
// raes.Extend_request_reason__c = info.raes.Extend_request_reason__c;
|
// raes.Extend_Status__c = '填写完毕';
|
// updateList.add(raes);
|
// // 填入延长时间的,标记为延长申请的对象
|
// if (info.raes.Request_extend_day__c != null) {
|
// info.isExtend = true;
|
// }
|
// }
|
// }
|
// // 更新备品借出申请的承认申请状态
|
//// Rental_Apply__c ra = new Rental_Apply__c(Id=raid);
|
//// ra.ApprovalProcess_Status__c = '已填写延长申请';
|
// // 更新
|
// if (updateList.size() > 0) {
|
// Savepoint sp = Database.setSavepoint();
|
// try {
|
// update updateList;
|
//// update ra;
|
// Approval.ProcessSubmitRequest[] psrList = new List<Approval.ProcessSubmitRequest>();
|
// for (Rental_Apply_Equipment_Set__c raes : updateList) {
|
// // 开始承认流程
|
// Approval.ProcessSubmitRequest psr = new Approval.ProcessSubmitRequest();
|
// psr.setObjectId(raes.Id);
|
// psrList.add(psr);
|
// }
|
// Approval.ProcessResult[] submitResult = Approval.process(psrList);
|
// ApexPages.addmessage(new ApexPages.message(ApexPages.severity.Info, '延长申请完了。'));
|
// } catch (Exception e) {
|
// system.debug('=====' + e.getMessage());
|
// ApexPages.addMessages(e);
|
// Database.rollback(sp);
|
// return null;
|
// }
|
// }
|
// // 更新后,刷新明细行
|
// searchBtn();
|
// for (RaesInfo info : raesInfoList) {
|
// // 刚刚延期申请的明细特殊处理
|
// if (info.check) {
|
// info.check = false;
|
// info.canChange = false;
|
// info.status = 'Blue';
|
// }
|
// }
|
|
// return null;
|
// }
|
|
// 获取借出备品set一览
|
// 20210901 ljh SFDC-C4BBFH update start
|
// private List<Rental_Apply_Equipment_Set__c> getData(String txt, String con, String val, String pur, Date fd, Date td, String uname) {
|
private List<Rental_Apply_Equipment_Set__c> getData(String txt, String con, String val, String pur, Date fd, Date td, String uname , String fdEW, String tdEW) {
|
// 20210901 ljh SFDC-C4BBFH update end
|
String soql = '';
|
// 注释掉不再使用的数据 SWAG-B9UBDP start
|
soql += 'select Id,Name,Demo_purpose1__c,Demo_purpose2__c,Final_reply_day__c, Return_Time_Day__c, Wei_Return_Finish__c, RetalFSetDetail_Cnt__c, ' +
|
//'Request_extend_day__c, Extend_request_reason__c, ' +
|
'Extend_Status__c,';
|
soql += ' Rental_Apply__c,' +
|
//'Rental_Apply__r.Foul_Points__c,Rental_Apply__r.Hospital__c, Loaner_code_text__c,'+
|
'Wei_loaner_arranged__c, First_RAESD_Model_No_F__c, ';
|
soql += ' Rental_Apply__r.Hospital__r.Hospital_Name__c,'+
|
'Fixture_Set__c,'+
|
'Loaner_name_F__c,Loaner_code_F__c,RAES_Status__c,SerialNumber_F__c,Rental_Apply__r.name, ';
|
soql += ' Rental_Apply__r.Bollow_Date__c,Bollow_Date__c,'+
|
//'Rental_Apply__r.Person_In_Charge__c,' +
|
'Rental_Apply__r.Person_In_Charge__r.Name,Rental_Apply__r.Local_Borrow_Foul__c,';
|
|
soql += ' Received_Confirm__c,Received_ng_detail__c,';
|
soql += ' Rental_Apply__r.RecordType.Name,';
|
//'Return_delivery_company2__c,Return_Fedex_number2__c,Return_Distributor_method2__c,Received_confirmation_staff2__c,'+
|
// '';
|
soql += 'Rental_Apply__r.Received_Confirm_NG_Not_Return__c, '+
|
//' Rental_Apply__r.faraway__c, Rental_Apply__r.RequestOrderPoint_sum__c, ' +
|
' Rental_Apply__r.UnSign_Foul_point__c, Rental_Apply__r.Not_Create_Repair_Ordered_Date__c, Rental_Apply__r.Borrow_Date_Fouls__c, ';
|
|
soql += ' First_RAESD__r.DeliverySlip__c, First_RAESD__r.Return_DeliverySlip__c';
|
// 注释掉不再使用的数据 SWAG-B9UBDP end
|
soql += ' from Rental_Apply_Equipment_Set__c';
|
soql += ' where Rental_Apply__r.OwnerId != null';
|
//soql += ' and Cancel_Select__c = false';
|
// soql += ' and Shippment_loaner_time__c != null';
|
// soql += ' and Lost_product_check__c != \'OK\'';
|
soql += ' and Yi_loaner_arranged__c > 0';
|
soql += ' and Wei_Arrival_in_wh__c > 0';
|
// 欠品确认数 欠品确认未完了数,欠品确认不为OK的,因为消耗的已被未回库件数排出了,所以只看欠品中的和欠品未确认数
|
soql += ' and (Lost_product_cnt__c > 0 or Lost_item_check_not_finish__c > 0)';
|
if (!String.isBlank(uname)) {
|
String[] vals = uname.split(' ');
|
for (String v : vals) {
|
soql += ' and Rental_Apply__r.Owner.Name like \'%' + String.escapeSingleQuotes(v.replaceAll('%', '\\%')) + '%\'';
|
}
|
}
|
if (!isSearchAll) {
|
//soql += ' and Shippment_loaner_time__c <> null';
|
//soql += ' and Received_loaner_time__c = null';
|
//soql += ' and Equipment_Set__r.Asset_Set_status2__c = \'2.借出中\'';
|
//bp2 soql += ' and RAES_Status__c in (\'出库完了\',\'申请者收到确认完了\',\'申请者收货NG\',\'医院收到确认完了\',\'归还发送完了\',\'欠品中\',\'归还后CDS完了\',\'归还后检查完了\',\'回收后检测NG\',\'归还后检查完了(附属品NG)\')';
|
soql += ' and RAES_Status__c in ('
|
+ '\'' + FixtureUtil.raesStatusMap.get(FixtureUtil.RaesStatus.Yi_Chu_Ku.ordinal()) + '\''
|
+ ',\'' + FixtureUtil.raesStatusMap.get(FixtureUtil.RaesStatus.Shen_Qing_Zhe_Yi_Shou_Huo.ordinal()) + '\''
|
+ ',\'' + FixtureUtil.raesStatusMap.get(FixtureUtil.RaesStatus.Shen_Qing_Zhe_Shou_Huo_NG.ordinal()) + '\''
|
+ ',\'' + FixtureUtil.raesStatusMap.get(FixtureUtil.RaesStatus.Yi_Yuan_Yi_Zhuang_Ji_Que_Ren.ordinal()) + '\''
|
+ ',\'' + FixtureUtil.raesStatusMap.get(FixtureUtil.RaesStatus.Yi_Hui_Ji.ordinal()) + '\''
|
+ ',\'' + FixtureUtil.raesStatusMap.get(FixtureUtil.RaesStatus.Qian_Pin_Zhong.ordinal()) + '\''
|
+ ',\'' + FixtureUtil.raesStatusMap.get(FixtureUtil.RaesStatus.Yi_Hui_Shou.ordinal()) + '\''
|
//bp2 TODO \'欠品中\'
|
+ ',\'' + FixtureUtil.raesStatusMap.get(FixtureUtil.RaesStatus.Hui_Shou_Hou_Yi_CDS.ordinal()) + '\''
|
+ ',\'' + FixtureUtil.raesStatusMap.get(FixtureUtil.RaesStatus.Hui_Shou_Hou_Jian_Ce_NG.ordinal()) + '\''
|
//bp2 toDO \'归还后检查完了(附属品NG)\'
|
+ ',\'' + FixtureUtil.raesStatusMap.get(FixtureUtil.RaesStatus.Hui_Shou_Hou_Yi_Jian_Ce.ordinal()) + '\''
|
+ ')';
|
}
|
// 借出设备机身号码特别处理
|
if (txt == 'S:SerialNumber_F__c' && con == 'equals' && String.isNotBlank(val)) {
|
String[] vals = val.split(',');
|
if (vals.size() > 0) {
|
String txt1 = txt.substring(2); // S:Name 、最初の2文字がタイプです
|
soql += ' and ( ';
|
for (String v : vals) {
|
soql += txt1 + ' like \'%' + String.escapeSingleQuotes(v.replaceAll('%', '\\%')) + '%\' or ';
|
}
|
soql = soql.substring(0, soql.length() - 4);
|
soql += ')';
|
}
|
} else {
|
soql += makeTextSql(txt, con, val);
|
}
|
|
if (pur != null) {
|
soql += ' and Demo_purpose1__c = :pur ';
|
}
|
if (fd != null) {
|
soql += ' and Final_reply_day__c >= :fd ';
|
}
|
if (td != null) {
|
soql += ' and Final_reply_day__c <= :td ';
|
}
|
//20210816 ljh SFDC-C4BBFH start
|
if(IsExceed || IsWeek){
|
soql += ' and Extend_Status__c != \'批准\' and Extend_Status__c != \'申请中\' ';
|
// 超过中
|
if(IsExceed){
|
soql += ' and ((Wei_Return_Finish__c > 0 ';
|
soql += ' and Final_reply_day__c < '+tdEW;
|
soql += ') OR Wei_Return_Finish__c = 0)';
|
// Return_Time_Day__c
|
}
|
// 一周以内
|
if(IsWeek){
|
// Date.today().adddays(7)
|
soql += ' and ((Wei_Return_Finish__c > 0 ';
|
soql += ' and Final_reply_day__c >= '+fdEW;
|
soql += ' and Final_reply_day__c < '+tdEW;
|
soql += ') OR (Wei_Return_Finish__c = 0 ';
|
// soql += ' and Final_reply_day__c >= Return_Time_Day__c';
|
soql += ' and Final_reply_day__c < '+tdEW;
|
soql += '))';
|
}
|
}
|
//20210816 ljh SFDC-C4BBFH end
|
if (isSoft) {
|
soql += ' order by ' + this.columus[Integer.valueOf(this.sortKey)] + ' ' + (this.sortOrderAsc == true ? 'asc nulls first' : 'desc nulls last ');
|
} else {
|
soql += ' order by Rental_Apply__c,Name ';
|
}
|
soql += ' limit ' + (Select_Limit + 1);
|
// ApexPages.addmessage(new ApexPages.message(ApexPages.severity.Info, 'soql。' + tdEW+soql));
|
system.debug('====soql:' + soql);
|
return Database.query(soql);
|
}
|
|
// 拼接检索条件sql文
|
private String makeTextSql(String txt1, String con, String val) {
|
String soql = '';
|
if (String.isBlank(con)) {
|
con = 'equals';
|
}
|
// containsの場合、日報画面の病院検索を真似し、spaceで分けて、and検索
|
// equalsの場合、SF標準の検索を真似し、「,」で分けて、or検索
|
if (!String.isBlank(txt1)) {
|
if ((con == 'contains' || con == 'notcontains') && val.contains(' ')) {
|
String[] vals = val.split(' ');
|
String cSql = '';
|
for (String v : vals) {
|
cSql += this.makeTextSqlStr(txt1, con, v);
|
}
|
if (con == 'contains') {
|
soql += cSql;
|
} else {
|
// notcontains
|
cSql = cSql.replaceAll(' and ', ') and (NOT ');
|
soql += cSql.substring(1) + ') ';
|
}
|
} else if ((con == 'equals' || con == 'notequals') && val.contains(',')) {
|
String[] vals = val.split(',');
|
if (vals.size() > 0) {
|
String txt = txt1.substring(2); // S:Name 、最初の2文字がタイプです
|
soql += ' and ( ';
|
for (String v : vals) {
|
if (con == 'equals') {
|
soql += txt + ' = \'' + v + '\' or ';
|
} else {
|
// notequals
|
soql += txt + ' <> \'' + v + '\' and ';
|
}
|
}
|
soql = soql.substring(0, soql.length() - 4);
|
soql += ')';
|
}
|
} else {
|
String cSql = this.makeTextSqlStr(txt1, con, val);
|
if (con != 'notcontains') {
|
soql += this.makeTextSqlStr(txt1, con, val);
|
} else {
|
// notcontains
|
if (!String.isBlank(cSql)) {
|
cSql = cSql.substring(5); // ' and ' の5文字を外す
|
soql += ' and (NOT ' + cSql + ') ';
|
}
|
}
|
}
|
}
|
return soql;
|
}
|
|
/**
|
* 文字列検索文を作成
|
*/
|
private String makeTextSqlStr(String txt1, String con, String val) {
|
String soql = '';
|
if (!String.isBlank(txt1)) {
|
String txt = txt1.substring(2);
|
String colType = txt1.substring(0, 2);
|
String tmpVal = val;
|
// 空白の場合''にする
|
if (String.isBlank(tmpVal)) {
|
if (con == 'equals') {
|
//soql += ' and ' + txt + ' = ' + tmpVal;
|
soql += ' and ' + txt + ' = null';
|
} else if (con == 'notequals') {
|
soql += ' and ' + txt + ' <> null';
|
} else {
|
// 空白の場合、contains, notcontains と starts withは無視
|
}
|
} else {
|
soql += ' and ' + txt;
|
if (con == 'equals') {
|
if (colType == 'S:') {
|
soql += ' = \'' + tmpVal + '\'';
|
} else {
|
soql += ' = ' + tmpVal + ' ';
|
}
|
} else if (con == 'notequals') {
|
if (colType == 'S:') {
|
soql += ' <> \'' + tmpVal + '\'';
|
} else {
|
soql += ' <> ' + tmpVal + ' ';
|
}
|
} else if (con == 'contains' || con == 'notcontains') {
|
soql += ' like \'%' + String.escapeSingleQuotes(tmpVal.replaceAll('%', '\\%')) + '%\'';
|
} else if (con == 'starts with') {
|
soql += ' like \'' + String.escapeSingleQuotes(tmpVal.replaceAll('%', '\\%')) + '%\'';
|
} else {
|
if (colType == 'S:') {
|
soql += ' ' + con + '\'' + tmpVal + '\'';
|
} else {
|
soql += ' ' + con + ' ' + tmpVal + ' ';
|
}
|
}
|
}
|
}
|
return soql;
|
}
|
|
@TestVisible
|
class RaesInfo implements Comparable {
|
public Boolean check { get; set; } // 是否选择
|
public Rental_Apply_Equipment_Set__c raes { get; set; } // 借出备品set一览
|
//public Equipment_Set__c es { get; set; } // 备品set
|
public String esName { get; private set; } // 备品名称
|
public String esCode { get; private set; } // 备品型号
|
public String hpName { get; private set; } // 借用医院名
|
public String rentalPerson { get; private set; } //申请人
|
public Date bollowDate { get; private set; } //发货日期
|
public Boolean canChange { get; set; } // 是否可编辑
|
public String status { get; private set; } // 明细状态
|
public Boolean isExtend { get; private set; } // 延长申请标记
|
public String DetailsLine { get; private set; }//附属品明细
|
public String serialNumber {get; private set; }//机身编号
|
public String recordTypeName {get; private set; }//レコードタイプ名
|
public String FoulReasonStr {get; set;} //犯规理由
|
public RaesInfo(Boolean incheck, Rental_Apply_Equipment_Set__c inraes, Boolean incan, List<Rental_Apply_Equipment_Set_Detail__c> raasedList) {
|
check = incheck;
|
raes = inraes;
|
//es = inraes.Equipment_Set__r;
|
esName = inraes.Loaner_name_F__c;
|
|
hpName = inraes.Rental_Apply__r.Hospital__r.Hospital_Name__c;
|
rentalPerson = inraes.Rental_Apply__r.Person_In_Charge__r.Name;
|
bollowDate = inraes.Rental_Apply__r.Bollow_Date__c;
|
canChange = incan;
|
Map<String, Object> result = new Map<String, Object>();
|
result = getAppendage(raasedList);
|
DetailsLine = (String)result.get('DetailsLine');
|
Boolean LotFlag = (Boolean)result.get('LotFlag');
|
if (LotFlag) {
|
serialNumber = ' ';
|
esCode = ' ';
|
} else {
|
serialNumber = inraes.SerialNumber_F__c;
|
esCode = inraes.First_RAESD_Model_No_F__c;
|
}
|
recordTypeName = inraes.Rental_Apply__r.RecordType.Name;
|
//*******************************增加生成犯规原因的功能*************************************************
|
FoulReasonStr = '';
|
if (inraes.Rental_Apply__r.Not_Create_Repair_Ordered_Date__c > 0) {
|
FoulReasonStr += '未生成RC受理日犯规 ';
|
}
|
if (inraes.Rental_Apply__r.UnSign_Foul_point__c > 0) {
|
FoulReasonStr += '未签字确认犯规 ';
|
}
|
if (inraes.Rental_Apply__r.Received_Confirm_NG_Not_Return__c > 0) {
|
FoulReasonStr += '现场收货NG未寄回犯规 ';
|
}
|
if (inraes.Rental_Apply__r.Borrow_Date_Fouls__c > 0) {
|
FoulReasonStr += '借出日期犯规';
|
}
|
if (inraes.Rental_Apply__r.Local_Borrow_Foul__c > 0) {
|
FoulReasonStr += '未整单归还犯规';
|
}
|
//*******************************增加生成犯规原因的功能*************************************************
|
Date now = Date.today();
|
|
// OLY_OCM-610 对应
|
Date redDate = Date.today();
|
// 如果 未回寄未完了件数 == 0 说明都链上了运输单 这样的话就看最新回寄日和最新预定归还日最对比
|
if (inraes.Wei_Return_Finish__c == 0) {
|
redDate = inraes.Return_Time_Day__c;
|
}
|
|
if (inraes.Extend_Status__c == '批准') {
|
// 灰色 延長申請完了
|
status = 'Gray';
|
canChange = false;
|
} else if (inraes.Extend_Status__c == '申请中') {
|
// 青色 延長申請中
|
status = 'Blue';
|
} else if (inraes.Final_reply_day__c < redDate) {
|
// 赤色 超過
|
status = 'Red';
|
} else if (inraes.Final_reply_day__c < now.adddays(7)) {
|
// 黄色 一週間以内
|
status = 'Yellow';
|
} else {
|
// 其他,正常颜色
|
status = 'Normal';
|
}
|
isExtend = false;
|
}
|
|
private Map<String, Object> getAppendage(List<Rental_Apply_Equipment_Set_Detail__c> raasedList) {
|
Map<String, Object> resultMap = new Map<String, Object>();
|
String DetailsLine = '';
|
boolean LotFlag = true;
|
if (raasedList != null) {
|
Map<String, integer> DLSM = new Map<String, integer>();
|
Set<String> AllSet = new Set<String>();
|
for (Rental_Apply_Equipment_Set_Detail__c Ec : raasedList) {
|
if (DLSM.containsKey(Ec.OwnershipMachine_No_c__c)) {
|
integer i = DLSM.get(Ec.OwnershipMachine_No_c__c) + 1;
|
DLSM.put(Ec.OwnershipMachine_No_c__c, i);
|
} else {
|
DLSM.put(Ec.OwnershipMachine_No_c__c, 1);
|
}
|
if (Ec.Loaner_accsessary_F__c == false) {
|
//有主机
|
LotFlag = false;
|
}
|
|
//去掉主机
|
if (Ec.Loaner_accsessary_F__c == true) {
|
AllSet.add(Ec.OwnershipMachine_No_c__c);
|
}
|
}
|
system.debug('DLSM:::::' + DLSM);
|
system.debug('AllSet:::::' + AllSet);
|
for (String Ecc : AllSet) {
|
//然后做成字符串
|
if (DLSM.get(Ecc) == 1) {
|
DetailsLine = DetailsLine + Ecc + ' ; ';
|
} else if (DLSM.get(Ecc) != 1) {
|
DetailsLine = DetailsLine + Ecc + '*' + DLSM.get(Ecc) + ' ; ';
|
}
|
|
}
|
if (DetailsLine.length() > 0) {
|
DetailsLine = DetailsLine.substring(0, DetailsLine.length() - 2);
|
}
|
|
}
|
resultMap.put('DetailsLine', DetailsLine);
|
resultMap.put('LotFlag', LotFlag);
|
return resultMap;
|
}
|
|
// 默认排序 Rental_Apply__c,Name
|
public Integer compareTo(Object compareTo) {
|
RaesInfo info = (RaesInfo)compareTo;
|
if (check == info.check) {
|
if (raes.Rental_Apply__c == info.raes.Rental_Apply__c) {
|
if (raes.Name == info.raes.Name) {
|
return 0;
|
}
|
if (raes.Name > info.raes.Name) {
|
return 1;
|
}
|
return -1;
|
}
|
if (raes.Rental_Apply__c > info.raes.Rental_Apply__c) {
|
return 1;
|
}
|
return -1;
|
}
|
if (check) {
|
return 1;
|
}
|
return -1;
|
}
|
}
|
}
|