public without sharing class LexInventoryViewController {
|
/*****************画面表示Bean******************/
|
public static List<ConsumableorderdetailsInfo> consumableorderdetailsRecords = new List<ConsumableorderdetailsInfo>();
|
public static List<List<ConsumableorderdetailsInfo>> consumableorderdetailsRecordsview = new List<List<ConsumableorderdetailsInfo>>();
|
|
// page
|
public static Integer pagesize { get; set; }
|
public static Integer pageToken { get; set; }
|
public static String sortField { get; set; }
|
public static String sortOrder { get; set; }
|
|
public static Integer totalcount { get; set; }
|
// public static Integer pagecount { get; set; }
|
// public static Integer currentpage { get; set; }
|
// public static Boolean hasPrevious { get; set; }
|
// public static Boolean hasNext { get; set; }
|
public static List<ConsumableorderdetailsInfo> pageRecords { get; set; }
|
public static String soql { get; set; }
|
|
// public static String sortKey { get; set; }
|
// public static String preSortKey { get; private set; }
|
// public static Boolean sortOrderAsc { get; private set; }
|
// public static String[] sortOrder { get; private set; }
|
// private static String[] columus = new List<String>{
|
// 'Product2__c.Name__c',
|
// 'Asset_Model_No__c',
|
// '',
|
// 'Category3__c',
|
// 'Category4__c',
|
// 'Category5__c',
|
// ''
|
// };
|
|
public static String[] proLimitAndDate = new List<String>{};
|
public static Map<String, Date> productkucun = new Map<String, Date>();
|
public static List<SelectOption> categoryOptionList { get; set; }
|
@AuraEnabled
|
public static Map<String, String> categoryOptionMap { get; set; }
|
public static List<SelectOption> category4OptionList { get; set; }
|
@AuraEnabled
|
public static Map<String, String> category4OptionMap { get; set; }
|
public static List<SelectOption> category5OptionList { get; set; }
|
@AuraEnabled
|
public static Map<String, String> category5OptionMap { get; set; }
|
public static String category5 { get; set; }
|
public static String category4 { get; set; }
|
public static String category3 { get; set; }
|
public static String category_Goods { get; set; }
|
public static String category1 { get; set; }
|
public static Boolean editAble { get; set; }
|
// 经销商在库产品ID
|
public static List<String> orderDetZaikuList{set;get;}
|
// 产品 ID
|
public static String ESetId { get; set; }
|
public static String idCheck { get; set; }
|
/*****************ソート時再検索条件(画面からの入力条件を無視するため)******************/
|
private static String accountid = null;
|
public static String accountName { get; set; }
|
// 查看产品
|
// private String[] ProidListAll = new String[]{};
|
// 登录者工作地
|
private static String userWorkLocation;
|
// 经销商用户产品分类(ET、ENG)
|
public static String agencyProType { get; set; }
|
public static String sqlagencyProType;
|
|
// add by rentx 2021-3-10
|
public static Boolean hasHos { get; set; }
|
// add by rentx 2021-3-10
|
|
public LexInventoryViewController() {
|
orderDetZaikuList = new List<String>();
|
consumableorderdetailsRecords = new List<ConsumableorderdetailsInfo>();
|
consumableorderdetailsRecordsview = new List<List<ConsumableorderdetailsInfo>>();
|
editAble = false;
|
categoryOptionList = new List<SelectOption>();
|
category4OptionList = new List<SelectOption>();
|
category5OptionList = new List<SelectOption>();
|
categoryOptionMap = new Map<String, String>();
|
category4OptionMap = new Map<String, String>();
|
category5OptionMap = new Map<String, String>();
|
|
// page
|
// pagesize = Integer.valueof(system.label.orderdetLimitsize);
|
// currentpage = 0;
|
}
|
@AuraEnabled
|
public static ResponseBodyLWC init(Integer pageSizeLWC, Integer pageTokenLWC, String sortFieldLWC, String sortOrderLWC) {
|
pageSize = pageSizeLWC;
|
pageToken = pageTokenLWC;
|
sortField = sortFieldLWC;
|
sortOrder = sortOrderLWC;
|
|
ResponseBodyLWC res = new ResponseBodyLWC();
|
Map<String, object> data = new Map<String, object>();
|
res.entity = data;
|
|
categoryOptionMap = new Map<String, String>();
|
category4OptionMap = new Map<String, String>();
|
category5OptionMap = new Map<String, String>();
|
|
|
// 取用户ID
|
String userId = UserInfo.getUserId();
|
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)) {
|
agencyProType = 'ET';
|
}
|
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 != '') {
|
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>();
|
// 库存明细取得
|
sqlagencyProType = '%' + agencyProType + '%';
|
orderDetZaikuList = new List<String>();
|
System.debug('sqlagencyProType = ' + sqlagencyProType);
|
System.debug('accountName = ' + accountName);
|
System.debug('userWorkLocation = ' + userWorkLocation);
|
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')));
|
}
|
System.debug('orderDetZaikuList = ' + 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
|
];
|
System.debug('MidMap = ' + MidMap);
|
System.debug('CountDel111 = ' + CountDel);
|
System.debug('orderDetZaikuList = ' + orderDetZaikuList);
|
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
|
];
|
System.debug('product2Selected = ' + product2Selected);
|
for (Integer i = 0; i < product2Selected.size(); i++) {
|
MidMap.put(product2Selected[i].Id, product2Selected[i]);
|
}
|
System.debug('MidMap = ' + MidMap);
|
/////////////////////====================================update by rentx
|
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++) {
|
// 然后循环CountDel做Box和piece2个map
|
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) {
|
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 {
|
ConsumableorderdetailsInfo Jstage = new ConsumableorderdetailsInfo(MidMap.get(CountDel[i].Consumable_Product__c));
|
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 {
|
Jstage.hospitalSpecialOffer = false;
|
}
|
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 == '个') {
|
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) {
|
Jstage.limitCount = Jstage.limitCount + 1;
|
}
|
Jstage.BoxPiece = CountDel[i].Box_Piece__c;
|
if (CountDel[i].hospitalSpecialOffer__c) {
|
Jstage.hospitalSpecialOffer = true;
|
} else {
|
Jstage.hospitalSpecialOffer = false;
|
}
|
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.limitCount = Jstage.limitCount + 1;
|
}
|
Jstage.BoxPiece = CountDel[i].Box_Piece__c;
|
if (CountDel[i].hospitalSpecialOffer__c) {
|
Jstage.hospitalSpecialOffer = true;
|
} else {
|
Jstage.hospitalSpecialOffer = false;
|
}
|
newMidPieceMap.put(CountDel[i].Consumable_Product__c + CountDel[i].Box_Piece__c + tex, Jstage);
|
}
|
}
|
}
|
consumableorderdetailsRecords = new List<ConsumableorderdetailsInfo>();
|
// 把Boxmap里的值从新赋给boxRecords
|
System.debug('newMidBoxMap = ' + newMidBoxMap);
|
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;
|
bss.expiration_Date = bss.Prod.Product2__r.SFDA_Expiration_Date__c;
|
bss.overlimitCount = bss.allnumber - bss.limitCount;
|
boxRecords.add(bss);
|
}
|
}
|
|
boxRecords.sort();
|
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) {
|
consumableorderdetailsRecords.add(bss);
|
// 该产品是医院特价产品
|
if (bss.hospitalSpecialOffer && newMidPieceMap.containsKey(bss.Prod.Id + '个B')) {
|
if (newMidPieceMap.get(bss.Prod.Id + '个B').hospitalSpecialOffer) {
|
consumableorderdetailsRecords.add(newMidPieceMap.get(bss.Prod.Id + '个B'));
|
newMidPieceMap.remove(bss.Prod.Id + '个B');
|
}
|
}
|
|
if (!bss.hospitalSpecialOffer && newMidPieceMap.containsKey(bss.Prod.Id + '个A')) {
|
// if (newMidPieceMap.get(bss.Prod.Id+'个A')) {
|
consumableorderdetailsRecords.add(newMidPieceMap.get(bss.Prod.Id + '个A'));
|
newMidPieceMap.remove(bss.Prod.Id + '个A');
|
// }
|
}
|
}
|
for (ConsumableorderdetailsInfo bss : newMidPieceMap.values()) {
|
if (newMidPieceMap.containsKey(bss.Prod.Id + '个B')) {
|
consumableorderdetailsRecords.add(newMidPieceMap.get(bss.Prod.Id + '个B'));
|
}
|
}
|
for (ConsumableorderdetailsInfo bss : newMidPieceMap.values()) {
|
if (newMidPieceMap.containsKey(bss.Prod.Id + '个A')) {
|
consumableorderdetailsRecords.add(newMidPieceMap.get(bss.Prod.Id + '个A'));
|
}
|
}
|
productLimtAndDate();
|
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) {
|
bss.guaranteeperiod = productkucun.get(bss.Prod.Id);
|
}
|
|
// add by rentx 2021-3-10 start
|
if (bss.hospitalSpecialOffer) {
|
hosnum = hosnum + 1;
|
}
|
}
|
if (hosnum > 0) {
|
hasHos = true;
|
} 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('', '-无-'));
|
categoryOptionMap.put('', '-无-');
|
for (AggregateResult category3Search : categoryList) {
|
String deliverycnt = String.valueOf(category3Search.get('c3c'));
|
categoryOptionList.add(new SelectOption(deliverycnt, deliverycnt));
|
categoryOptionMap.put(deliverycnt, deliverycnt);
|
}
|
|
category4OptionList = new List<SelectOption>();
|
category4OptionList.add(new SelectOption('', '-无-'));
|
category4OptionMap.put('', '-无-');
|
|
category5OptionList = new List<SelectOption>();
|
category5OptionList.add(new SelectOption('', '-无-'));
|
category5OptionMap.put('', '-无-');
|
System.debug('categoryOptionList===>' + category4OptionList);
|
System.debug('category4OptionList===>' + category4OptionList);
|
System.debug('category5OptionList===>' + category4OptionList);
|
|
//// 总件数
|
totalcount = consumableorderdetailsRecords.size();
|
//// 页数
|
// pagecount = (totalcount + pagesize - 1) / pagesize;
|
|
//// 显示第一页
|
|
// moveToFirst();
|
makeCurrentPageRecords();
|
// data.put('categoryOptionList',categoryOptionList);
|
PaginatedAccounts paginatedAccounts = new PaginatedAccounts();
|
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;
|
|
data.put('paginatedAccounts', paginatedAccounts);
|
|
data.put('categoryOptionMap', categoryOptionMap);
|
data.put('category4OptionMap', category4OptionMap);
|
data.put('category5OptionMap', category5OptionMap);
|
|
data.put('agencyProType', agencyProType);
|
data.put('orderDetZaikuList', orderDetZaikuList);
|
data.put('accountid', accountid);
|
data.put('accountName', accountName);
|
data.put('sqlagencyProType', accountName);
|
data.put('userWorkLocation', userWorkLocation);
|
data.put('agencyProType', agencyProType);
|
data.put('pageRecords', pageRecords);
|
data.put('consumableorderdetailsRecords', consumableorderdetailsRecords);
|
data.put('hasHos', hasHos);
|
data.put('productLimtAndDate',proLimitAndDate);
|
data.put('productkucun',productkucun);
|
res.status = 'Success';
|
res.code = 200;
|
System.debug('res = ' + res);
|
System.debug('productkucun = ' + productkucun);
|
return res;
|
}
|
@AuraEnabled
|
public static ResponseBodyLWC categoryAllload(String category3LWC,String agencyProTypeLWC) {
|
ResponseBodyLWC res = new ResponseBodyLWC();
|
Map<String, object> data = new Map<String, object>();
|
res.entity = data;
|
category3 = category3LWC;
|
agencyProType = '%' + agencyProTypeLWC + '%';
|
|
System.debug('category3LWC===>'+category3LWC);
|
System.debug('agencyProType===>'+agencyProType);
|
|
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('', '-无-'));
|
category4OptionMap = new Map<String, String>();
|
category4OptionMap.put('', '-无-');
|
|
for (AggregateResult category4Search : category4List) {
|
String deliverycnt4 = String.valueOf(category4Search.get('c4c'));
|
category4OptionList.add(new SelectOption(deliverycnt4, deliverycnt4));
|
category4OptionMap.put(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('', '-无-'));
|
category5OptionMap = new Map<String, String>();
|
category5OptionMap.put('', '-无-');
|
for (AggregateResult category5Search : category5List) {
|
String deliverycnt5 = String.valueOf(category5Search.get('c5c'));
|
category5OptionList.add(new SelectOption(deliverycnt5, deliverycnt5));
|
category5OptionMap.put(deliverycnt5, deliverycnt5);
|
}
|
System.debug('类别4'+category4OptionList);
|
System.debug('类别5'+category5OptionList);
|
data.put('category4OptionMap', category4OptionMap);
|
data.put('category5OptionMap', category5OptionMap);
|
res.status = 'Success';
|
res.code = 200;
|
System.debug('res = ' + res);
|
return res;
|
}
|
|
public static 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) {
|
String deliverycnt4 = String.valueOf(category4Search.get('c4c'));
|
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) {
|
String deliverycnt5 = String.valueOf(category5Search.get('c5c'));
|
category5OptionList.add(new SelectOption(deliverycnt5, deliverycnt5));
|
}
|
}
|
// 检索
|
@AuraEnabled
|
public static ResponseBodyLWC searchConsumableorderdetails(
|
String category1,
|
String Category3,
|
String Category4,
|
String Category5,
|
List<String> orderDetZaikuListLWC,
|
String accountName,
|
string agencyProType,
|
string userWorkLocation,
|
Integer pageSizeLWC,
|
Integer pageTokenLWC,
|
String sortFieldLWC,
|
String sortOrderLWC,
|
Map<String, Date> productkucunLWC
|
) {
|
try {
|
System.debug('orderDetZaikuListLWC===>'+orderDetZaikuListLWC);
|
System.debug('productkucun===>'+productkucun);
|
pageSize = pageSizeLWC;
|
pageToken = pageTokenLWC;
|
sortField = sortFieldLWC;
|
sortOrder = sortOrderLWC;
|
productkucun = new Map<String, Date>();
|
orderDetZaikuList = new List<String>();
|
productkucun = productkucunLWC;
|
|
orderDetZaikuList = orderDetZaikuListLWC;
|
sqlagencyProType = '%' + agencyProType + '%';
|
ResponseBodyLWC res = new ResponseBodyLWC();
|
Map<String, object> data = new Map<String, object>();
|
res.entity = data;
|
System.debug('====>accountName' + accountName);
|
System.debug('====>sqlagencyProType' + sqlagencyProType);
|
System.debug('====>userWorkLocation' + userWorkLocation);
|
System.debug('====>category1' + category1);
|
System.debug('====>Category3' + Category3);
|
System.debug('====>Category4' + Category4);
|
System.debug('====>Category5' + Category5);
|
// sortKey = '2';
|
// preSortKey = '2';
|
// sortOrderAsc = false;
|
// sortOrder = new List<String>(8);
|
// 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 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
|
];
|
System.debug('CountDel = ' + CountDel);
|
|
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>();
|
|
// 所有产品取得
|
String soql = makeSoql(category1, category_Goods, category3, category4, category5);
|
//orderDetZaikuList
|
System.debug('orderDetZaikuList = ' + orderDetZaikuList);
|
System.debug('accountName = ' + accountName);
|
System.debug('soql====>' + soql);
|
//排序
|
// if (String.isNotBlank(sortField) && String.isNotBlank(sortOrder)) {
|
// if(sortFieldLWC != 'limitCount'){
|
// soql += ' ORDER BY ' + sortField + ' ' + sortOrder;
|
|
// }
|
// }
|
System.debug('soql = ' + 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);
|
System.debug('queryList = ' + queryList);
|
|
for (Integer i = 0; i < queryList.size(); i++) {
|
MidMap.put(queryList[i].Id, queryList[i]);
|
}
|
System.debug('MidMap = ' + MidMap);
|
Map<String, ConsumableorderdetailsInfo> newHosMidBoxMap = new Map<String, ConsumableorderdetailsInfo>();
|
Map<String, ConsumableorderdetailsInfo> newHosMidPieceMap = new Map<String, ConsumableorderdetailsInfo>();
|
System.debug('CountDel = ' + CountDel);
|
for (Integer i = 0; i < CountDel.size(); i++) {
|
//然后循环CountDel做Box和piece2个map
|
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) {
|
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 {
|
ConsumableorderdetailsInfo Jstage = new ConsumableorderdetailsInfo(MidMap.get(CountDel[i].Consumable_Product__c));
|
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 {
|
Jstage.hospitalSpecialOffer = false;
|
}
|
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 == '个') {
|
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) {
|
Jstage.limitCount = Jstage.limitCount + 1;
|
}
|
Jstage.BoxPiece = CountDel[i].Box_Piece__c;
|
if (CountDel[i].hospitalSpecialOffer__c) {
|
Jstage.hospitalSpecialOffer = true;
|
} else {
|
Jstage.hospitalSpecialOffer = false;
|
}
|
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.limitCount = Jstage.limitCount + 1;
|
}
|
Jstage.BoxPiece = CountDel[i].Box_Piece__c;
|
if (CountDel[i].hospitalSpecialOffer__c) {
|
Jstage.hospitalSpecialOffer = true;
|
} else {
|
Jstage.hospitalSpecialOffer = false;
|
}
|
newMidPieceMap.put(CountDel[i].Consumable_Product__c + CountDel[i].Box_Piece__c + tex, Jstage);
|
}
|
}
|
}
|
|
consumableorderdetailsRecords = new List<ConsumableorderdetailsInfo>();
|
System.debug('newMidBoxMap = ' + newMidBoxMap);
|
//把Boxmap里的值从新赋给boxRecords
|
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;
|
bss.expiration_Date = bss.Prod.Product2__r.SFDA_Expiration_Date__c;
|
bss.overlimitCount = bss.allnumber - bss.limitCount;
|
boxRecords.add(bss);
|
}
|
}
|
|
boxRecords.sort();
|
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;
|
}
|
}
|
System.debug('boxRecords = ' + boxRecords);
|
for (ConsumableorderdetailsInfo bss : boxRecords) {
|
consumableorderdetailsRecords.add(bss);
|
//该产品是医院特价产品
|
if (bss.hospitalSpecialOffer && newMidPieceMap.containsKey(bss.Prod.Id + '个B')) {
|
if (newMidPieceMap.get(bss.Prod.Id + '个B').hospitalSpecialOffer) {
|
consumableorderdetailsRecords.add(newMidPieceMap.get(bss.Prod.Id + '个B'));
|
newMidPieceMap.remove(bss.Prod.Id + '个B');
|
}
|
}
|
|
if (!bss.hospitalSpecialOffer && newMidPieceMap.containsKey(bss.Prod.Id + '个A')) {
|
// if (newMidPieceMap.get(bss.Prod.Id+'个A')) {
|
consumableorderdetailsRecords.add(newMidPieceMap.get(bss.Prod.Id + '个A'));
|
newMidPieceMap.remove(bss.Prod.Id + '个A');
|
// }
|
}
|
}
|
for (ConsumableorderdetailsInfo bss : newMidPieceMap.values()) {
|
if (newMidPieceMap.containsKey(bss.Prod.Id + '个B')) {
|
consumableorderdetailsRecords.add(newMidPieceMap.get(bss.Prod.Id + '个B'));
|
}
|
}
|
for (ConsumableorderdetailsInfo bss : newMidPieceMap.values()) {
|
if (newMidPieceMap.containsKey(bss.Prod.Id + '个A')) {
|
consumableorderdetailsRecords.add(newMidPieceMap.get(bss.Prod.Id + '个A'));
|
}
|
}
|
|
productLimtAndDate();
|
datelimitSearch();
|
System.debug('consumableorderdetailsRecords zzz = ' + consumableorderdetailsRecords);
|
for (ConsumableorderdetailsInfo bss : consumableorderdetailsRecords) {
|
if (productkucun.get(bss.Prod.Id) != null) {
|
bss.guaranteeperiod = productkucun.get(bss.Prod.Id);
|
}
|
}
|
//listCut();
|
|
// sortKey = '2';
|
// preSortKey = '2';
|
// sortOrderAsc = false;
|
// sortOrder = new List<String>(8);
|
// sortOrder = new List<String>{ ' ', '', ' ', ' ', '', '', '', '↓' };
|
|
// //总件数
|
totalcount = consumableorderdetailsRecords.size();
|
// //页数
|
// pagecount=(totalcount + pagesize - 1) / pagesize;
|
|
//显示第一页
|
//currentpage = 0;
|
//moveToFirst();
|
makeCurrentPageRecords();
|
PaginatedAccounts paginatedAccounts = new PaginatedAccounts();
|
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;
|
|
List<ConsumableorderdetailsInfo> pageRecordsCompare = new List<ConsumableorderdetailsInfo>();
|
System.debug('queryList = ' + JSON.serialize(queryList));
|
for (Integer i = 0; i < queryList.size(); i++) {
|
for(ConsumableorderdetailsInfo ci : pageRecords){
|
if(queryList[i].Id == ci.Prod.Id){
|
System.debug('queryList[i].Id =' + queryList[i].Id);
|
System.debug('ci.Prod.Id =' + queryList[i].Id);
|
pageRecordsCompare.add(ci);
|
}
|
}
|
}
|
data.put('paginatedAccounts', paginatedAccounts);
|
data.put('accountid', accountid);
|
data.put('userWorkLocation', userWorkLocation);
|
data.put('agencyProType', agencyProType);
|
data.put('pageRecords', pageRecordsCompare);
|
data.put('hasHos', hasHos);
|
system.debug('===========>pageRecords' + pageRecordsCompare);
|
system.debug('===========>data' + data);
|
if (pageRecords.isEmpty()) {
|
res.msg = '未搜索到相关消耗品订单!';
|
res.status = 'fail';
|
res.code = 500;
|
} else {
|
res.status = 'Success';
|
res.msg = '共有' + pageRecords.size() + '条数据';
|
res.code = 200;
|
System.debug('res = ' + res);
|
}
|
return res;
|
} catch (Exception e) {
|
return new ResponseBodyLWC('Error', 500, e.getStackTraceString(), '');
|
}
|
}
|
|
public static void productLimtAndDate() {
|
String nowName = null, nowRightAsstModelNo = null;
|
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);
|
}
|
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)
|
);
|
}
|
}
|
}
|
|
public static 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)) {
|
continue;
|
} else {
|
productkucun.put(orderkucun[i].Consumable_Product__c, orderkucun[i].Sterilization_limit__c);
|
}
|
}
|
}
|
|
//名称排序
|
// public static void SortLimited() {
|
// Map<String, ConsumableorderdetailsInfo> MidMap = new Map<String, ConsumableorderdetailsInfo>();
|
// Map<String, ConsumableorderdetailsInfo> newMap = new Map<String, ConsumableorderdetailsInfo>();
|
// if (sortKey == preSortKey) {
|
// // 方向が変わるのみ
|
// sortOrderAsc = !sortOrderAsc;
|
// sortOrder[Integer.valueOf(sortKey)] = (sortOrderAsc == true ? '↑' : '↓');
|
// } else {
|
// sortOrderAsc = true;
|
// sortOrder[Integer.valueOf(preSortKey)] = ' ';
|
// sortOrder[Integer.valueOf(sortKey)] = (sortOrderAsc == true ? '↑' : '↓');
|
// }
|
|
// preSortKey = sortKey;
|
// // 所有产品取得
|
// String soql = makeSoql(null, null, null, null, null);
|
// soql += ' ORDER BY ' + columus[Integer.valueOf(sortKey)] + ' ' + (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)) {
|
// 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);
|
// }
|
// }
|
// }
|
|
// pageRecords = new List<ConsumableorderdetailsInfo>();
|
|
// //update byr entx 2020-12-29
|
// //再把map里的值从新赋给CpageRecords
|
// 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);
|
// }
|
// }
|
// }
|
// for (ConsumableorderdetailsInfo bss : newMap.values()) {
|
// if (bss != null) {
|
// pageRecords.add(bss);
|
// }
|
// }
|
// }
|
|
//库存排序
|
// public static void SortStore() {
|
// if (sortKey == preSortKey) {
|
// // 方向が変わるのみ
|
// sortOrder = !sortOrder;
|
// sortOrder[Integer.valueOf(sortKey)] = (sortOrderAsc == true ? '↑' : '↓');
|
// } else {
|
// sortOrderAsc = true;
|
// sortOrder[Integer.valueOf(preSortKey)] = ' ';
|
// sortOrder[Integer.valueOf(sortKey)] = (sortOrderAsc == true ? '↑' : '↓');
|
// }
|
// preSortKey = sortKey;
|
|
// for (ConsumableorderdetailsInfo ass : pageRecords) {
|
// ass.sortBy = sortOrderAsc;
|
// }
|
// pageRecords.sort();
|
// }
|
|
|
//检索sql文做成
|
private static String makeSoql(String CateName, String CateCode, String Category3, String Category4, String Category5) {
|
System.debug('orderDetZaikuList = ' + orderDetZaikuList);
|
String sqlTail = '(\'';
|
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 + '\'';
|
}
|
return soql;
|
}
|
//首页
|
// public static void moveToFirst() {
|
// if (currentpage == 1)
|
// return;
|
// currentpage = 1;
|
// canMove();
|
// }
|
|
// //尾页
|
// public static void moveToLast() {
|
// if (currentpage >= pagecount)
|
// return;
|
// currentpage = pagecount;
|
// canMove();
|
// }
|
|
// //上一页
|
// public static void moveToPrevious() {
|
// if (currentpage == 1)
|
// return;
|
// currentpage = currentpage - 1;
|
// canMove();
|
// }
|
|
// //下一页
|
// public static void moveToNext() {
|
// if (currentpage >= pagecount)
|
// return;
|
|
// currentpage = currentpage + 1;
|
// canMove();
|
// }
|
|
// //判断是否可翻页
|
// public static void canMove() {
|
// hasPrevious = false;
|
// hasNext = false;
|
// if (pagecount > 1 && currentpage > 1)
|
// hasPrevious = true;
|
// if (pagecount > 1 && currentpage < pagecount)
|
// hasNext = true;
|
// }
|
|
//刷新当前页
|
// public static PageReference refreshPageSize() {
|
// makeCurrentPageRecords();
|
// return null;
|
// }
|
|
//编辑当前页内容
|
public static void makeCurrentPageRecords() {
|
// pageRecords = new List<ConsumableorderdetailsInfo>();
|
// System.debug('consumableorderdetailsRecords =' + consumableorderdetailsRecords);
|
// for (Integer i = 0; i < consumableorderdetailsRecords.size(); i++) {
|
// pageRecords.add(consumableorderdetailsRecords.get(i));
|
// }
|
|
Integer startIdx;
|
Integer endIdx;
|
pageRecords = new List<ConsumableorderdetailsInfo>();
|
startIdx = pageToken;
|
endIdx = pageToken + pageSize;
|
if (endIdx > consumableorderdetailsRecords.size()) {
|
endIdx = consumableorderdetailsRecords.size();
|
}
|
for (Integer i = startIdx; i < endIdx; i++) {
|
pageRecords.add(consumableorderdetailsRecords.get(i));
|
}
|
}
|
|
//分页Bean
|
public class PaginatedAccounts {
|
@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; }
|
}
|
|
// Data Bean
|
@TestVisible
|
class ConsumableorderdetailsInfo implements Comparable {
|
@AuraEnabled
|
public Consumable_order_details2__c esd { get; set; }
|
@AuraEnabled
|
public Product2__c Prod { get; set; }
|
@AuraEnabled
|
public Decimal allnumber { get; set; }
|
@AuraEnabled
|
public Integer packing_list { get; set; }
|
@AuraEnabled
|
public Date expiration_Date { get; set; }
|
@AuraEnabled
|
public String approbation_No { get; set; }
|
@AuraEnabled
|
public Consumable_order__c Concc { get; set; }
|
@AuraEnabled
|
public Boolean sortBy { get; set; }
|
@AuraEnabled
|
public Decimal upperlimit { get; set; }
|
@AuraEnabled
|
public Decimal lowerlimit { get; set; }
|
@AuraEnabled
|
public String BoxPiece { get; set; }
|
@AuraEnabled
|
public Date guaranteeperiod { get; set; }
|
@AuraEnabled
|
public Decimal limitCount { get; set; }
|
@AuraEnabled
|
public Decimal overlimitCount { get; set; }
|
@AuraEnabled
|
public Boolean hospitalSpecialOffer { get; set; }
|
|
public ConsumableorderdetailsInfo(Product2__c e) {
|
esd = new Consumable_order_details2__c();
|
Prod = e;
|
allnumber = 0;
|
limitCount = 0;
|
overlimitCount = 0;
|
}
|
// 排序
|
public Integer compareTo(Object compareTo) {
|
ConsumableorderdetailsInfo compareToesd = (ConsumableorderdetailsInfo) compareTo;
|
Integer returnValue = 0;
|
if (sortBy == false) {
|
if (allnumber > compareToesd.allnumber) {
|
returnValue = -1;
|
} else if (allnumber < compareToesd.allnumber) {
|
returnValue = 1;
|
}
|
return returnValue;
|
} else {
|
if (allnumber > compareToesd.allnumber) {
|
returnValue = 1;
|
} else if (allnumber < compareToesd.allnumber) {
|
returnValue = -1;
|
}
|
return returnValue;
|
}
|
}
|
}
|
}
|