public without sharing class LexArriveGoodsMainController {
|
/*****************検索用******************/
|
//经销商产品分类
|
public static String agencyProType { get; set; }
|
// public static Consumable_order__c coc { get; set; }
|
public static String category1 { get; set; }
|
private static String cate1ForSort = null;
|
private static Date cate2ForSort = Date.today();
|
private static Date cate2 = Date.today();
|
private static String[] columus = new List<String>{ 'Product2__c.Name' };
|
// 产品 ID
|
private static String ESetId = '';
|
private static String accountid = null;
|
// 订单 字段标签
|
public static List<String> title { get; private set; }
|
// 订单 字段名
|
public static List<String> column;
|
public static List<List<String>> columns { get; private set; }
|
// 画面显示数据
|
public static List<Consumable_order__c> raesList { get; private set; }
|
// 登录者工作地
|
private static String userWorkLocation;
|
// 20200904 ljh 汇总使用 start
|
public static Integer Total_num { get; set; }
|
public static Integer OrderNumber_arrived { get; set; }
|
public static Integer Delivery_detail_count { get; set; }
|
public static Integer OrderNumber_notarrive { get; set; }
|
public static Integer More_than_seven_days { get; set; }
|
|
@AuraEnabled
|
public static Results init() {
|
Results results = new Results();
|
results.isNoteStay = LexUtility.getIsNoteStay();
|
try {
|
// coc = new Consumable_order__c();
|
String userId = UserInfo.getUserId();
|
List<user> Useracc = new List<user>();
|
Useracc = [
|
SELECT accountid, Work_Location__c, UserPro_Type__c
|
FROM user
|
WHERE id = :userId
|
];
|
accountid = Useracc[0].accountid;
|
userWorkLocation = Useracc[0].Work_Location__c;
|
agencyProType = Useracc[0].UserPro_Type__c;
|
if (String.isBlank(Useracc[0].UserPro_Type__c)) {
|
agencyProType = 'ET';
|
}
|
// 获得订单一览
|
Map<String, Schema.FieldSet> fsMap = Schema.getGlobalDescribe()
|
.get('Consumable_order__c')
|
.getDescribe()
|
.fieldSets.getMap();
|
Schema.FieldSet fs = fsMap.get('arrive_view');
|
// 获得订单中的所有项目
|
List<FieldSetMember> fsmList = fs.getFields();
|
// 获得字段标签和字段名
|
title = new List<String>();
|
column = new List<String>();
|
columns = new List<List<String>>();
|
for (FieldSetMember fsm : fsmList) {
|
title.add(fsm.getLabel());
|
column.add(fsm.getFieldPath());
|
columns.add(fsm.getFieldPath().split('\\.'));
|
}
|
// 获得显示数据
|
raesList = new List<Consumable_order__c>();
|
String soql = 'select Id';
|
for (String s : column) {
|
soql += ',' + s;
|
}
|
soql +=
|
' from Consumable_order__c where Order_type__c = \'' +
|
'订单' +
|
'\' and recordtypeid =\'' +
|
System.Label.RT_ConOrder_Delivery +
|
'\' and Dealer_Info__c =\'' +
|
accountid +
|
'\' and Order_ProType__c =\'' +
|
agencyProType +
|
'\' and (OrderNumber_notarrive__c > 0 or Delivery_detail_count__c >0) and Order_Owner_WorkLocal__c = \'' +
|
userWorkLocation +
|
'\' and showFalseNotshowTrue__c = false order by Deliver_date__c'; //
|
// soql = 'select id,name,ContractNo__c,Total_num__c,OrderNumber_arrived__c,Delivery_detail_count__c,OrderNumber_notarrive__c,More_than_seven_days__c,Shipment_date__c,First_Delivery__c from Consumable_order__c where id in :idList';
|
raesList = Database.query(soql);
|
//20200904 ljh add start
|
Total_num = 0;
|
OrderNumber_arrived = 0;
|
Delivery_detail_count = 0;
|
OrderNumber_notarrive = 0;
|
More_than_seven_days = 0;
|
System.debug('-----1------' + raesList);
|
for (Consumable_order__c conorder : raesList) {
|
if (conorder.Total_num__c != null) {
|
Total_num += (Integer) conorder.Total_num__c;
|
}
|
if (conorder.OrderNumber_arrived__c != null) {
|
OrderNumber_arrived += (Integer) conorder.OrderNumber_arrived__c;
|
}
|
if (conorder.Delivery_detail_count__c != null) {
|
Delivery_detail_count += (Integer) conorder.Delivery_detail_count__c;
|
}
|
if (conorder.OrderNumber_notarrive__c != null) {
|
OrderNumber_notarrive += (Integer) conorder.OrderNumber_notarrive__c;
|
}
|
if (conorder.More_than_seven_days__c != null) {
|
More_than_seven_days += (Integer) conorder.More_than_seven_days__c;
|
}
|
}
|
results.agencyProType = agencyProType;
|
results.accountId = accountid;
|
results.title = title;
|
results.raesList = raesList;
|
results.userWorkLocation = userWorkLocation;
|
results.totalNum = Total_num;
|
results.orderNumberArrived = OrderNumber_arrived;
|
results.deliveryDetailCount = Delivery_detail_count;
|
results.orderNumberNotarrive = OrderNumber_notarrive;
|
results.moreThanSevenDays = More_than_seven_days;
|
results.result = 'Success';
|
} catch (Exception e) {
|
results.result = 'Fail';
|
results.errorMsg = e.getLineNumber() + '---' + e.getMessage();
|
}
|
return results;
|
}
|
|
@AuraEnabled
|
public static Results searchConsumableorderdetails(
|
String category1Str,
|
Date cate2Str,
|
String accountidStr,
|
String userWorkLocationStr,
|
String agencyProTypeStr
|
) {
|
Results results = new Results();
|
category1 = category1Str;
|
cate2 = cate2Str;
|
accountid = accountidStr;
|
userWorkLocation = userWorkLocationStr;
|
agencyProType = agencyProTypeStr;
|
try {
|
// cate2 = coc.Shipment_date__c;
|
// 获得订单一览
|
Map<String, Schema.FieldSet> fsMap = Schema.getGlobalDescribe()
|
.get('Consumable_order__c')
|
.getDescribe()
|
.fieldSets.getMap();
|
Schema.FieldSet fs = fsMap.get('arrive_view');
|
// 获得订单中的所有项目
|
List<FieldSetMember> fsmList = fs.getFields();
|
// 获得字段标签和字段名
|
title = new List<String>();
|
column = new List<String>();
|
columns = new List<List<String>>();
|
for (FieldSetMember fsm : fsmList) {
|
title.add(fsm.getLabel());
|
column.add(fsm.getFieldPath());
|
columns.add(fsm.getFieldPath().split('\\.'));
|
}
|
// 获得显示数据
|
raesList = new List<Consumable_order__c>();
|
String soql = 'select Id';
|
for (String s : column) {
|
soql += ',' + s;
|
}
|
soql +=
|
' from Consumable_order__c where Order_type__c = \'' +
|
'订单' +
|
'\' and recordtypeid =\'' +
|
System.Label.RT_ConOrder_Delivery +
|
'\' and Dealer_Info__c =\'' +
|
accountid +
|
'\' and (OrderNumber_notarrive__c > 0 or Delivery_detail_count__c >0) ';
|
soql += 'and Order_Owner_WorkLocal__c = \'' + userWorkLocation + '\' ';
|
soql += 'and showFalseNotshowTrue__c = false';
|
if (!String.isBlank(category1)) {
|
soql +=
|
' and Name like \'%' +
|
String.escapeSingleQuotes(category1.replaceAll('%', '\\%')) +
|
'%\' ';
|
}
|
if (cate2 != null) {
|
soql += ' and Shipment_date__c = :cate2 ';
|
}
|
soql += ' and Order_ProType__c =\'' + agencyProType + '\'';
|
soql += ' order by Deliver_date__c';
|
system.debug('====soql:' + soql);
|
raesList = Database.query(soql);
|
results.raesList = raesList;
|
results.result = 'Success';
|
} catch (Exception e) {
|
results.result = 'Fail';
|
results.errorMsg = e.getLineNumber() + '---' + e.getMessage();
|
}
|
return results;
|
}
|
|
public class Results {
|
@AuraEnabled
|
public String result;
|
@AuraEnabled
|
public String errorMsg;
|
@AuraEnabled
|
public String agencyProType;
|
@AuraEnabled
|
public String category1;
|
@AuraEnabled
|
public Date cate2;
|
@AuraEnabled
|
public String eSetId;
|
@AuraEnabled
|
public String accountId;
|
@AuraEnabled
|
public List<String> title;
|
@AuraEnabled
|
public List<Consumable_order__c> raesList;
|
@AuraEnabled
|
public String userWorkLocation;
|
@AuraEnabled
|
public Integer totalNum;
|
@AuraEnabled
|
public Integer orderNumberArrived;
|
@AuraEnabled
|
public Integer deliveryDetailCount;
|
@AuraEnabled
|
public Integer orderNumberNotarrive;
|
@AuraEnabled
|
public Integer moreThanSevenDays;
|
@AuraEnabled
|
public Boolean isNoteStay;
|
}
|
}
|