buli
2023-06-05 d324588faa5120c95321425a06de683e8aae445b
LEX Community NewComponent
1个文件已删除
5个文件已添加
23个文件已修改
7184 ■■■■ 已修改文件
force-app/main/default/classes/LexConInvoiceViewController.cls 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/classes/LexConsumableAccountController.cls 108 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/classes/LexConsumableAccountSOQL.cls 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/classes/LexConsumableAccountSOQL.cls-meta.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/classes/LexDealerInquiryModifyStateController.cls 332 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/classes/LexInventoryController.cls 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/classes/LexInventoryListController.cls 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/classes/LexInventoryViewController.cls 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/classes/LexOverdueStockController.cls 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/classes/LexProductLimitEditController.cls 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/classes/LookupSearchResult.cls 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/labels/CustomLabels.labels-meta.xml 5560 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/lwc/commonToast/__tests__/commonToast.test.js 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/lwc/customUnitComp/customUnitComp.html 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/lwc/customUnitComp/customUnitComp.js 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/lwc/lexConInvoiceView/lexConInvoiceView.html 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/lwc/lexConInvoiceView/lexConInvoiceView.js 80 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/lwc/lexConsumable/lexConsumable.js 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/lwc/lexCustomLightningDatatable/customMyDrCheckBox.html 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/lwc/lexCustomLightningDatatable/customUnit.html 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/lwc/lexCustomLightningDatatable/customdeleteReason.html 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/lwc/lexCustomLightningDatatable/lexCustomLightningDatatable.js 14 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/lwc/lexInventory/lexInventory.js 65 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/lwc/lexOverdueStock/lexOverdueStock.html 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/lwc/lexOverdueStock/lexOverdueStock.js 543 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/lwc/lexSummonsCreat/lexSummonsCreat.html 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/lwc/lexSummonsCreat/lexSummonsCreat.js 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/lwc/lexinventoryViewLWC/lexinventoryViewLWC.js 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/permissionsets/Community_LEX_PS.permissionset-meta.xml 315 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/classes/LexConInvoiceViewController.cls
@@ -1175,9 +1175,9 @@
            FROM Consumable_Orderdetails__c
            WHERE Consumable_order__c IN :orderIdList
        ];
        for (Integer i = 0; i < existLinkinfo.size(); i++) {
            ordermx1defaultMap.put(existLinkinfo[i].Consumable_order__c + existLinkinfo[i].Asset_Model_No__c, 0);
        }
        // for (Integer i = 0; i < existLinkinfo.size(); i++) {
        //     ordermx1defaultMap.put(existLinkinfo[i].Consumable_order__c + existLinkinfo[i].Asset_Model_No__c, 0);
        // }
    }
    public static void deleteOutboundorder(Map<String, String> deleteMap, String value) {
force-app/main/default/classes/LexConsumableAccountController.cls
@@ -148,62 +148,20 @@
            System.debug('fiscalYear = ' + fiscalYear);
            if (fiscalYear == 'thisYear') {
                AggregateResult[] saleAmountList = [
                    SELECT sum(Sale_amount__c) saleAmount
                    FROM Consumable_Orderdetails__c
                    WHERE CreatedDate >= :thisDatetime AND CreatedDate < :nextDatetime
                ];
                AggregateResult[] saleAmountList = LexConsumableAccountSOQL.getAccountTotalSales(thisDatetime, nextDatetime);
                topInfo.saleAmount = Decimal.valueOf(String.valueOf(saleAmountList[0].get('saleAmount')));
                System.debug('topInfo.saleAmount = ' + topInfo.saleAmount);
                arList = [
                    SELECT count(id), Consumable_order__r.Order_ForHospital__r.name hospitalName, sum(Sale_amount__c) thisAmount
                    FROM Consumable_Orderdetails__c
                    WHERE
                        CreatedDate >= :thisDatetime
                        AND CreatedDate < :nextDatetime
                        AND Consumable_order__r.Order_ForHospital__r.name != ''
                    GROUP BY Consumable_order__r.Order_ForHospital__r.Name
                    ORDER BY sum(Sale_amount__c) DESC
                    LIMIT 10
                ];
                arList = LexConsumableAccountSOQL.getAccountBySales(thisDatetime, nextDatetime);
            } else if (fiscalYear == 'lastYear') {
                AggregateResult[] saleAmountList = [
                    SELECT sum(Sale_amount__c) saleAmount
                    FROM Consumable_Orderdetails__c
                    WHERE CreatedDate >= :lastDatetime AND CreatedDate < :thisDatetime2
                ];
                AggregateResult[] saleAmountList = LexConsumableAccountSOQL.getAccountTotalSales(lastDatetime, thisDatetime2);
                topInfo.saleAmount = Decimal.valueOf(String.valueOf(saleAmountList[0].get('saleAmount')));
                System.debug('topInfo.saleAmount = ' + topInfo.saleAmount);
                arList = [
                    SELECT count(id), Consumable_order__r.Order_ForHospital__r.name hospitalName, sum(Sale_amount__c) thisAmount
                    FROM Consumable_Orderdetails__c
                    WHERE
                        CreatedDate >= :lastDatetime
                        AND CreatedDate < :thisDatetime2
                        AND Consumable_order__r.Order_ForHospital__r.name != ''
                    GROUP BY Consumable_order__r.Order_ForHospital__r.Name
                    ORDER BY sum(Sale_amount__c) DESC
                    LIMIT 10
                ];
                arList = LexConsumableAccountSOQL.getAccountBySales(lastDatetime, thisDatetime2);
            } else {
                AggregateResult[] saleAmountList = [
                    SELECT sum(Sale_amount__c) saleAmount
                    FROM Consumable_Orderdetails__c
                    WHERE CreatedDate >= :lastDatetime AND CreatedDate < :nextDatetime
                ];
                AggregateResult[] saleAmountList = LexConsumableAccountSOQL.getAccountTotalSales(lastDatetime, nextDatetime);
                topInfo.saleAmount = Decimal.valueOf(String.valueOf(saleAmountList[0].get('saleAmount')));
                System.debug('topInfo.saleAmount = ' + topInfo.saleAmount);
                arList = [
                    SELECT count(id), Consumable_order__r.Order_ForHospital__r.name hospitalName, sum(Sale_amount__c) thisAmount
                    FROM Consumable_Orderdetails__c
                    WHERE
                        CreatedDate >= :lastDatetime
                        AND CreatedDate < :nextDatetime
                        AND Consumable_order__r.Order_ForHospital__r.name != ''
                    GROUP BY Consumable_order__r.Order_ForHospital__r.Name
                    ORDER BY sum(Sale_amount__c) DESC
                    LIMIT 10
                ];
                arList = LexConsumableAccountSOQL.getAccountBySales(lastDatetime, nextDatetime);
            }
            //查询客户信息(名称,省,县)
@@ -287,62 +245,20 @@
            System.debug('fiscalYear = ' + fiscalYear);
            if (fiscalYear == 'thisYear') {
                AggregateResult[] saleAmountList = [
                    SELECT sum(Sale_amount__c) saleAmount
                    FROM Consumable_Orderdetails__c
                    WHERE CreatedDate >= :thisDatetime AND CreatedDate < :nextDatetime
                ];
                AggregateResult[] saleAmountList = LexConsumableAccountSOQL.getAccountTotalSales(thisDatetime, nextDatetime);
                topInfo.saleAmount = Decimal.valueOf(String.valueOf(saleAmountList[0].get('saleAmount')));
                System.debug('topInfo.saleAmount = ' + topInfo.saleAmount);
                arList = [
                    SELECT count(id), Consumable_order__r.Order_ForHospital__r.name hospitalName, sum(Sale_amount__c) thisAmount
                    FROM Consumable_Orderdetails__c
                    WHERE
                        CreatedDate >= :thisDatetime
                        AND CreatedDate < :nextDatetime
                        AND Consumable_order__r.Order_ForHospital__r.name != ''
                    GROUP BY Consumable_order__r.Order_ForHospital__r.Name
                    ORDER BY sum(Sale_amount__c) DESC
                    LIMIT 10
                ];
                arList = LexConsumableAccountSOQL.getAccountBySales(thisDatetime, nextDatetime);
            } else if (fiscalYear == 'lastYear') {
                AggregateResult[] saleAmountList = [
                    SELECT sum(Sale_amount__c) saleAmount
                    FROM Consumable_Orderdetails__c
                    WHERE CreatedDate >= :lastDatetime AND CreatedDate < :thisDatetime2
                ];
                AggregateResult[] saleAmountList = LexConsumableAccountSOQL.getAccountTotalSales(lastDatetime, thisDatetime2);
                topInfo.saleAmount = Decimal.valueOf(String.valueOf(saleAmountList[0].get('saleAmount')));
                System.debug('topInfo.saleAmount = ' + topInfo.saleAmount);
                arList = [
                    SELECT count(id), Consumable_order__r.Order_ForHospital__r.name hospitalName, sum(Sale_amount__c) thisAmount
                    FROM Consumable_Orderdetails__c
                    WHERE
                        CreatedDate >= :lastDatetime
                        AND CreatedDate < :thisDatetime2
                        AND Consumable_order__r.Order_ForHospital__r.name != ''
                    GROUP BY Consumable_order__r.Order_ForHospital__r.Name
                    ORDER BY sum(Sale_amount__c) DESC
                    LIMIT 10
                ];
                arList = LexConsumableAccountSOQL.getAccountBySales(lastDatetime, thisDatetime2);
            } else {
                AggregateResult[] saleAmountList = [
                    SELECT sum(Sale_amount__c) saleAmount
                    FROM Consumable_Orderdetails__c
                    WHERE CreatedDate >= :lastDatetime AND CreatedDate < :nextDatetime
                ];
                AggregateResult[] saleAmountList = LexConsumableAccountSOQL.getAccountTotalSales(lastDatetime, nextDatetime);
                topInfo.saleAmount = Decimal.valueOf(String.valueOf(saleAmountList[0].get('saleAmount')));
                System.debug('topInfo.saleAmount = ' + topInfo.saleAmount);
                arList = [
                    SELECT count(id), Consumable_order__r.Order_ForHospital__r.name hospitalName, sum(Sale_amount__c) thisAmount
                    FROM Consumable_Orderdetails__c
                    WHERE
                        CreatedDate >= :lastDatetime
                        AND CreatedDate < :nextDatetime
                        AND Consumable_order__r.Order_ForHospital__r.name != ''
                    GROUP BY Consumable_order__r.Order_ForHospital__r.Name
                    ORDER BY sum(Sale_amount__c) DESC
                    LIMIT 10
                ];
                arList = LexConsumableAccountSOQL.getAccountBySales(lastDatetime, nextDatetime);
            }
            //查询客户信息(名称,省,县)
            List<String> accountList = new List<String>();
force-app/main/default/classes/LexConsumableAccountSOQL.cls
New file
@@ -0,0 +1,27 @@
public with sharing class LexConsumableAccountSOQL {
    public static AggregateResult[] getAccountBySales(Datetime thisDatetime ,Datetime nextDatetime){
        AggregateResult[] arList = new List<AggregateResult>([
            SELECT count(id), Consumable_order__r.Order_ForHospital__r.name hospitalName, sum(Sale_amount__c) thisAmount
            FROM Consumable_Orderdetails__c
            WHERE
                CreatedDate >= :thisDatetime
                AND CreatedDate < :nextDatetime
                AND Consumable_order__r.Order_ForHospital__r.name != ''
            GROUP BY Consumable_order__r.Order_ForHospital__r.Name
            ORDER BY sum(Sale_amount__c) DESC
            LIMIT 10
        ]);
        return arList;
    }
    public static AggregateResult[] getAccountTotalSales(Datetime thisDatetime ,Datetime nextDatetime){
        AggregateResult[] saleAmountList = [
            SELECT sum(Sale_amount__c) saleAmount
            FROM Consumable_Orderdetails__c
            WHERE CreatedDate >= :thisDatetime AND CreatedDate < :nextDatetime
        ];
        return saleAmountList;
    }
}
force-app/main/default/classes/LexConsumableAccountSOQL.cls-meta.xml
New file
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<ApexClass xmlns="http://soap.sforce.com/2006/04/metadata">
    <apiVersion>57.0</apiVersion>
    <status>Active</status>
</ApexClass>
force-app/main/default/classes/LexDealerInquiryModifyStateController.cls
@@ -20,10 +20,16 @@
    public static String limits { get; set; }//日期03
    public static List<SelectOption> dateOpts { get; private set; }
    public static List<CusOption> textCusOpts;
    public static List<SelectOption> textOpts { get; private set; }
    public static List<CusOption> timeCusOpts;
    public static List<SelectOption> timeOpts { get; private set; }
    public static List<CusOption>  equalCusOpts;
    public static List<SelectOption> equalOpts { get; private set; }
    public static List<SelectOption> timeequalOpts { get; private set; }
    public static List<CusOption> limitCusOpts;
    public static List<SelectOption> limitOpts { get; private set; }
    /*****************画面表示Bean******************/
@@ -54,7 +60,22 @@
    @TestVisible private static String accTypeForSort = null;
    private static Integer oppLimit = 500;
     // 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 LexDealerInquiryModifyStateController() {
    }
    @AuraEnabled
    public static Results init(Integer pageSizeLWC,Integer pageTokenLWC) {
        pageSize = pageSizeLWC;
        pageToken = pageTokenLWC;
        Results results = new Results();
        oppRecords = new List<OpportunityInfo>();
        //dateOpts = new List<SelectOption>();
@@ -63,46 +84,83 @@
        //dateOpts.add(new SelectOption('Ban_On_Use_Date__c', '禁用日期'));
        //数据字段下拉列表
        textOpts = new List<SelectOption>();
        textOpts.add(new SelectOption('', '--无--'));
        textOpts.add(new SelectOption('Agency_Opportunity_No__c', '经销商询价编码'));
        textOpts.add(new SelectOption('Agency__r.Name', '经销商'));
        textOpts.add(new SelectOption('Agency_Hospital__r.Name', '经销商医院'));
        textOpts.add(new SelectOption('Department_Cateogy__c', '科室分类'));
        textOpts.add(new SelectOption('Change_To_Opportunity_T__c', '询价名称'));
        // textOpts.add(new SelectOption('Name', '询价名称'));
        // textOpts = new List<SelectOption>();
        // textOpts.add(new SelectOption('', '--无--'));
        // textOpts.add(new SelectOption('Agency_Opportunity_No__c', '经销商询价编码'));
        // textOpts.add(new SelectOption('Agency__r.Name', '经销商'));
        // textOpts.add(new SelectOption('Agency_Hospital__r.Name', '经销商医院'));
        // textOpts.add(new SelectOption('Department_Cateogy__c', '科室分类'));
        // textOpts.add(new SelectOption('Change_To_Opportunity_T__c', '询价名称'));
        // // textOpts.add(new SelectOption('Name', '询价名称'));
        // textOpts.add(new SelectOption('StageName__c', '询价阶段'));
        // textOpts.add(new SelectOption('Oly_Inquiry_Status1__c', '状态1'));
        // //精琢科技   zxk    2021-08-25   start
        // // textOpts.add(new SelectOption('Oly_Inquiry_Status2__c', '状态2'));
        // textOpts.add(new SelectOption('Oly_Inquiry_Stage__c', 'Oly询价阶段'));
        // //精琢科技   zxk    2021-08-25   end
        // textOpts.add(new SelectOption('Hospital_City_Master__c', '市'));
        textOpts.add(new SelectOption('StageName__c', '询价阶段'));
        textOpts.add(new SelectOption('Oly_Inquiry_Status1__c', '状态1'));
        //精琢科技   zxk    2021-08-25   start
        // textOpts.add(new SelectOption('Oly_Inquiry_Status2__c', '状态2'));
        textOpts.add(new SelectOption('Oly_Inquiry_Stage__c', 'Oly询价阶段'));
        //精琢科技   zxk    2021-08-25   end
        textOpts.add(new SelectOption('Hospital_City_Master__c', '市'));
        //custom option
        textCusOpts = new List<CusOption>();
        textCusOpts.add(new CusOption('', '--无--'));
        textCusOpts.add(new CusOption('Agency_Opportunity_No__c', '经销商询价编码'));
        textCusOpts.add(new CusOption('Agency__r.Name', '经销商'));
        textCusOpts.add(new CusOption('Agency_Hospital__r.Name', '经销商医院'));
        textCusOpts.add(new CusOption('Department_Cateogy__c', '科室分类'));
        textCusOpts.add(new CusOption('Change_To_Opportunity_T__c', '询价名称'));
        textCusOpts.add(new CusOption('StageName__c', '询价阶段'));
        textCusOpts.add(new CusOption('Oly_Inquiry_Status1__c', '状态1'));
        textCusOpts.add(new CusOption('Oly_Inquiry_Stage__c', 'Oly询价阶段'));
        textCusOpts.add(new CusOption('Hospital_City_Master__c', '市'));
        // textOpts.add(new SelectOption('Agency_Hospital__r.Hospital__r.Salesdepartment_HP__c', '销售本部'));
        // textOpts.add(new SelectOption('Agency_Hospital__r.Hospital__r.State_Master__r.Name', '省'));
        // textOpts.add(new SelectOption('Agency_Hospital__r.Hospital__r.City_Master__r.Name', '市'));
        //日期字段下拉列表
        timeOpts = new List<SelectOption>();
        timeOpts.add(new SelectOption('', '--无--'));
        timeOpts.add(new SelectOption('Created_Day__c', '创建日'));
        timeOpts.add(new SelectOption('Bid_Planned_Date__c', '预测招标日'));
        timeOpts.add(new SelectOption('Forecasted_Bid_Date__c', '预测中标日'));
        timeOpts.add(new SelectOption('Close_Forecasted_Date__c', '预测与OLY签约日'));
        timeOpts.add(new SelectOption('Lost_Opportunity_Date__c', '失单日期'));
        timeOpts.add(new SelectOption('Deleted_Reason_Date__c', '取消日期'));
        // timeOpts = new List<SelectOption>();
        // timeOpts.add(new SelectOption('', '--无--'));
        // timeOpts.add(new SelectOption('Created_Day__c', '创建日'));
        // timeOpts.add(new SelectOption('Bid_Planned_Date__c', '预测招标日'));
        // timeOpts.add(new SelectOption('Forecasted_Bid_Date__c', '预测中标日'));
        // timeOpts.add(new SelectOption('Close_Forecasted_Date__c', '预测与OLY签约日'));
        // timeOpts.add(new SelectOption('Lost_Opportunity_Date__c', '失单日期'));
        // timeOpts.add(new SelectOption('Deleted_Reason_Date__c', '取消日期'));
        timeCusOpts = new List<CusOption>();
        timeCusOpts.add(new CusOption('', '--无--'));
        timeCusOpts.add(new CusOption('Created_Day__c', '创建日'));
        timeCusOpts.add(new CusOption('Bid_Planned_Date__c', '预测招标日'));
        timeCusOpts.add(new CusOption('Forecasted_Bid_Date__c', '预测中标日'));
        timeCusOpts.add(new CusOption('Close_Forecasted_Date__c', '预测与OLY签约日'));
        timeCusOpts.add(new CusOption('Lost_Opportunity_Date__c', '失单日期'));
        timeCusOpts.add(new CusOption('Deleted_Reason_Date__c', '取消日期'));
        //数据字段中间连接符号
        equalOpts = new List<SelectOption>();
        equalOpts.add(new SelectOption('=', '等于'));
        equalOpts.add(new SelectOption('<>', '不等于'));
        equalOpts.add(new SelectOption('<', '<'));
        equalOpts.add(new SelectOption('>', '>'));
        equalOpts.add(new SelectOption('<=', '<='));
        equalOpts.add(new SelectOption('>=', '>='));
        equalOpts.add(new SelectOption('contains', '包含'));
        equalOpts.add(new SelectOption('notcontains', '不包含'));
        equalOpts.add(new SelectOption('starts with', '起始字符'));
        // equalOpts = new List<SelectOption>();
        // equalOpts.add(new SelectOption('=', '等于'));
        // equalOpts.add(new SelectOption('<>', '不等于'));
        // equalOpts.add(new SelectOption('<', '<'));
        // equalOpts.add(new SelectOption('>', '>'));
        // equalOpts.add(new SelectOption('<=', '<='));
        // equalOpts.add(new SelectOption('>=', '>='));
        // equalOpts.add(new SelectOption('contains', '包含'));
        // equalOpts.add(new SelectOption('notcontains', '不包含'));
        // equalOpts.add(new SelectOption('starts with', '起始字符'));
        equalCusOpts = new List<CusOption>();
        equalCusOpts.add(new CusOption('=', '等于'));
        equalCusOpts.add(new CusOption('<>', '不等于'));
        equalCusOpts.add(new CusOption('<', '<'));
        equalCusOpts.add(new CusOption('>', '>'));
        equalCusOpts.add(new CusOption('<=', '<='));
        equalCusOpts.add(new CusOption('>=', '>='));
        equalCusOpts.add(new CusOption('contains', '包含'));
        equalCusOpts.add(new CusOption('notcontains', '不包含'));
        equalCusOpts.add(new CusOption('starts with', '起始字符'));
        //日期字段连接符号
        //timeequalOpts = new List<SelectOption>();
        //timeequalOpts.add(new SelectOption('=', '等于'));
@@ -112,19 +170,23 @@
        //timeequalOpts.add(new SelectOption('<=', '<='));
        //timeequalOpts.add(new SelectOption('>=', '>='));
        //数据显示条数
        limitOpts = new List<SelectOption>();
        limitOpts.add(new SelectOption('10', '10'));
        limitOpts.add(new SelectOption('20', '20'));
        limitOpts.add(new SelectOption('50', '50'));
        limitOpts.add(new SelectOption('100', '100'));
        limitOpts.add(new SelectOption('200', '200'));
        limitOpts.add(new SelectOption('1000', '全部'));
        // limitOpts = new List<SelectOption>();
        // limitOpts.add(new SelectOption('10', '10'));
        // limitOpts.add(new SelectOption('20', '20'));
        // limitOpts.add(new SelectOption('50', '50'));
        // limitOpts.add(new SelectOption('100', '100'));
        // limitOpts.add(new SelectOption('200', '200'));
        // limitOpts.add(new SelectOption('1000', '全部'));
        //数据显示默认条数
        limits = '20';
    }
    @AuraEnabled
    public static Results init() {
        Results results = new Results();
        limitCusOpts = new List<CusOption>();
        limitCusOpts.add(new CusOption('10', '10'));
        limitCusOpts.add(new CusOption('20', '20'));
        limitCusOpts.add(new CusOption('50', '50'));
        limitCusOpts.add(new CusOption('100', '100'));
        limitCusOpts.add(new CusOption('200', '200'));
        limitCusOpts.add(new CusOption('1000', '全部'));
        try{
            PartnerSoapSforceCom.Soap soap = new PartnerSoapSforceCom.Soap();
            soap.SessionHeader = new PartnerSoapSforceCom.SessionHeader_element();
@@ -193,13 +255,54 @@
            tmpAO = new Agency_Opportunity__c();
            tmpBO = new Agency_Opportunity__c();
            setLayoutRWInfo();
            searchOppInner();
            searchOppInner(strColumus,strRtColumus,accSearch,aooSearch,numtext,numtext1,numtext2,sortKey);
            System.debug('limitCusOpts==>'+limitCusOpts);
            System.debug('searchOppInner==>'+ searchOppInner(strColumus,strRtColumus,accSearch,aooSearch,numtext,numtext1,numtext2,sortKey));
            LexDealerInquiryModifyStateController.Results returnList = searchOppInner(strColumus,strRtColumus,accSearch,aooSearch,numtext,numtext1,numtext2,sortKey);
            System.debug('returnList==>'+ returnList);
                 //分页
                 PaginatedAccounts paginatedAccounts = new PaginatedAccounts();
                 totalCount = oppRecords.size();
                 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;
                 Integer startIdx;
                 Integer endIdx;
                 List<OpportunityInfo> pageoppRecords = new List<OpportunityInfo>();
                 startIdx = pageToken;
                 endIdx = startIdx + pageSize;
                 if (endIdx > oppRecords.size()) {
                     endIdx = oppRecords.size();
                 }
                 for (Integer i = startIdx; i < endIdx; i++) {
                    pageoppRecords.add(oppRecords.get(i));
                 }
                 //end
            //回传参数
            results.result = 'Success';
            results.oppRecords = oppRecords;
            results.timeCusOpts = timeCusOpts;
            results.equalCusOpts = equalCusOpts;
            results.limitCusOpts = limitCusOpts;
            results.textCusOpts = textCusOpts;
            results.limits = limits;
            results.strColumus = strColumus;
            results.strRtColumus = strRtColumus;
            results.paginatedAccounts = paginatedAccounts;
            results.pageoppRecords = pageoppRecords;
            results.Msg = returnList.Msg;
            System.debug('results==>'+results);
        }catch (Exception e) {
            results.result = 'Fail';
            results.errorMsg = e.getLineNumber()+'---'+e.getMessage();
            results.Msg = e.getLineNumber()+'---'+e.getMessage();
        }
      
        // return null;
@@ -299,7 +402,11 @@
        }
    }
    //用于拼接SOQL语句 根据不同检索条件拼接不同SOQL语句。
    public static void searchOppInner() {
    @AuraEnabled
    public static Results searchOppInner(String strColumus,String strRtColumus,String accSearch,String aooSearch,String numtext,String numtext1,String numtext2,String sortKeyLWC) {
        Results results = new Results();
        sortKey = sortKeyLWC;
        //SOQL:拼接检索条件以及经销商询价的SOQL语句
        // List<User> userlist2 = [select id,name from user where Contactid in (select id from Contact)];
        // String querySoql = '';
@@ -388,16 +495,56 @@
        oppCount = oppRecords.size();
        //显示提示操作信息
        if (String.isBlank(saveType) && String.isBlank(sortKey)) {
            ApexPages.addmessage(new ApexPages.message(ApexPages.severity.INFO, '取得最近的 ' + oppCount + ' 条数据'));
            // ApexPages.addmessage(new ApexPages.message(ApexPages.severity.INFO, '取得最近的 ' + oppCount + ' 条数据'));
            results.result = 'Success';
            results.Msg = '取得最近的 ' + oppCount + ' 条数据';
            return results;
        } else if (!String.isBlank(sortKey)) {
            if (oppCount > oppLimit) {
                ApexPages.addmessage(new ApexPages.message(ApexPages.severity.INFO, '数据超过' + oppLimit + '件,只显示前' + oppLimit + '件'));
                // ApexPages.addmessage(new ApexPages.message(ApexPages.severity.INFO, '数据超过' + oppLimit + '件,只显示前' + oppLimit + '件'));
                results.result = 'Success';
                results.Msg = '数据超过' + oppLimit + '件,只显示前' + oppLimit + '件';
            } else {
                ApexPages.addmessage(new ApexPages.message(ApexPages.severity.INFO, '共有 ' + oppCount + ' 条数据'));
                results.result = 'Success';
                results.Msg = '共有 ' + oppCount + ' 条数据';
                // ApexPages.addmessage(new ApexPages.message(ApexPages.severity.INFO, '共有 ' + oppCount + ' 条数据'));
            }
        } else {
            ApexPages.addmessage(new ApexPages.message(ApexPages.severity.INFO, '共有 ' + oppCount + ' 条数据'));
            // ApexPages.addmessage(new ApexPages.message(ApexPages.severity.INFO, '共有 ' + oppCount + ' 条数据'));
            results.result = 'Success';
            results.Msg = '共有 ' + oppCount + ' 条数据';
        }
        //   //分页
        //   PaginatedAccounts paginatedAccounts = new PaginatedAccounts();
        //   totalCount = oppRecords.size();
        //   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;
        //   Integer startIdx;
        //   Integer endIdx;
        //   List<OpportunityInfo> pageoppRecords = new List<OpportunityInfo>();
        //   startIdx = pageToken;
        //   endIdx = startIdx + pageSize;
        //   if (endIdx > oppRecords.size()) {
        //       endIdx = oppRecords.size();
        //   }
        //   for (Integer i = startIdx; i < endIdx; i++) {
        //      pageoppRecords.add(oppRecords.get(i));
        //   }
        //   //end
        //回传参数
        results.result = 'Success';
        results.oppRecords = oppRecords;
        return results;
    }
    //检索条件:数据字段1,数据字段2,数据字段3均满足进入此方法 判断多种情况
    private static String makeTextSql(String textOpts, String equalOpts, String numtext) {
@@ -553,14 +700,17 @@
    }
    //检索按钮:点击检索按钮触发此方法;
    public static PageReference chick() {
        setLayoutRWInfo();
        searchOppInner();
        return null;
    }
    // public static PageReference chick() {
    //     setLayoutRWInfo();
    //     searchOppInner(strColumus,strRtColumus,accSearch,aooSearch,numtext,numtext1,numtext2,sortKey,pageSizeLWC,pageTokenLWC);
    //     return null;
    // }
    //页面内容有修改时,页面判断后传值给changeFlg以及changeFlgRt属性,点击保存时调用此方法,进行保存。
    public static PageReference save() {
    @AuraEnabled
    public static Results save(List<OpportunityInfo> oppRecordsLWC) {
        //system.debug('oppRecords[1].opp:' + oppRecords[1].opp +' oppRecords[1].AgcOpp:' + oppRecords[1].AgcOpp );
        Results results = new Results();
        oppRecords = oppRecordsLWC;
        try {
            List<Agency_Opportunity__c> updTarget = new List<Agency_Opportunity__c>();
            // List<Opportunity> updOpps = new List<Opportunity>();
@@ -582,12 +732,15 @@
            // if (updOpps.size() > 0) {
            //     update updOpps;
            // }
            ApexPages.addmessage(new ApexPages.message(ApexPages.severity.INFO, '保存完了'));
            // ApexPages.addmessage(new ApexPages.message(ApexPages.severity.INFO, '保存完了'));
            results.result = 'Success';
            results.Msg = '保存完了';
            return results;
        } catch (Exception e) {
            //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.Error, '请确定科室分类和产品区分的关系'));
        }
        if (saveType == '1') {
            searchOppInner();
        if(saveType == '1') {
            searchOppInner(strColumus,strRtColumus,accSearch,aooSearch,numtext,numtext1,numtext2,sortKey);
            saveType = '';
        } else if (saveType == '2') {
            sortTable();
@@ -615,8 +768,21 @@
        preSortKey = sortKey;
        setLayoutRWInfo();
        searchOppInner();
        searchOppInner(strColumus,strRtColumus,accSearch,aooSearch,numtext,numtext1,numtext2,sortKey);
        return null;
    }
      //分页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; }
    }
    //自定义类OpportunityInfo,用于创建虚拟字段,合并输出。
@@ -657,8 +823,44 @@
        @AuraEnabled
        public String result;
        @AuraEnabled
        public String errorMsg;
        public String Msg;
        @AuraEnabled
        public List<OpportunityInfo> oppRecords;
        @AuraEnabled
        public Integer oppCount ;
        @AuraEnabled
        public List<CusOption> timeCusOpts;
        @AuraEnabled
        public List<CusOption> textCusOpts;
        @AuraEnabled
        public List<CusOption> equalCusOpts;
        @AuraEnabled
        public List<CusOption> limitCusOpts;
        @AuraEnabled
        public String limits;
        @AuraEnabled
        public String strColumus;
        @AuraEnabled
        public String strRtColumus;
        @AuraEnabled
        public List<OpportunityInfo> pageoppRecords;
        @AuraEnabled
        public PaginatedAccounts paginatedAccounts;
        @AuraEnabled
        public Boolean canEdit;
        @AuraEnabled
        public String changeFlg;
    }
    public class CusOption {
        CusOption(String value,String label) {
            this.label = label;
            this.value = value;
        }
        @AuraEnabled
        public String label;
        @AuraEnabled
        public String value;
    }
}
force-app/main/default/classes/LexInventoryController.cls
@@ -20,7 +20,7 @@
    public static  Boolean done { get; set; }
    /*****************画面表示Bean******************/
    //页面主数据显示用
    private static List<ConsumableorderdetailsInfo> consumableorderdetailsRecords;
    public static List<ConsumableorderdetailsInfo> consumableorderdetailsRecords { get; set; }
    //盘点到的产品
    public static  List<Consumable_order_details2__c> reSet = new List<Consumable_order_details2__c>();
    public static  List<Consumable_order_details2__c> showcod2nid = new List<Consumable_order_details2__c>();
@@ -183,6 +183,7 @@
                            AND Product_Type__c like : sqlagencyProType
                            AND Arrive_Owner_Work_Location__c =: userWorkLocation
                            AND  Dealer_Info_text__c = :accountName];
                            System.debug('ProductCount_Res==>'+ProductCount_Res);
        //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'ProductCount_Res  ' + ProductCount_Res.size()));
        for(Integer i = 0 ; i< ProductCount_Res.size();i++){
            //然后循环CountDel做Box和piece2个map
@@ -371,6 +372,7 @@
                            AND Arrive_Owner_Work_Location__c =: userWorkLocation
                            AND  Dealer_Info_text__c = :accountName ];
        reFindProduct.clear();
        System.debug('ProductCount_Res==>'+ProductCount_Res);
        Map<String,ConsumableorderdetailsInfo> barCodeListAdjustMap = new  Map<String,ConsumableorderdetailsInfo>();
        //barCodeListLoseMap.clear();
        Set<String> carCodeListLose = new Set<String>();
@@ -421,6 +423,7 @@
                        AND  Bar_Code__c in :carCodeListLose
                        AND Dealer_Info_text__c = :accountName
                        ORDER BY Name ];
                        System.debug('reSet1==>'+reSet1);
            Map<String,Consumable_order_details2__c> needreturnMap = new Map<String,Consumable_order_details2__c>();
            for(Consumable_order_details2__c cod2 :reSet1){
                needreturnMap.put(cod2.Bar_Code__c,cod2);
@@ -560,17 +563,18 @@
            //end
            data.put('codPageRecords',JSON.serialize(codPageRecords));
            data.put('consumableorderdetailsRecords',JSON.serialize(consumableorderdetailsRecords));
            data.put('consumableorderdetailsRecords',JSON.serialize(consumableorderdetailsRecords));
            data.put('consumableorderdetailsRecordsview',JSON.serialize(consumableorderdetailsRecordsview));
            data.put('pandiandetailsMap',pandiandetailsMap);
            System.debug('iSinventory===>'+iSinventory);
            System.debug('codPageRecords===>'+codPageRecords);
            data.put('iSinventory',JSON.serialize(iSinventory));
            data.put('reSet1',JSON.serialize(reSet1));
            data.put('reSet1',reSet1);
            System.debug('reSet1===>'+reSet1);
            res.code = 200;
            res.status = 'Success1';
            // res.msg = 'barcode为空';
            return res;
            // return;
        }
force-app/main/default/classes/LexInventoryListController.cls
@@ -33,6 +33,7 @@
        consumableorderdetailsRecords = new List<ConsumableorderdetailsInfo>();
        List<Consumable_order__c> qs = New List<Consumable_order__c>();
        qs = [select Name,Inventory_date__c,Order_date__c From Consumable_order__c Where Id =:ESetId];
        System.debug('qs===>'+qs);
        if (qs.size()>0){
            coc = qs[0];
        }
force-app/main/default/classes/LexInventoryViewController.cls
@@ -49,7 +49,7 @@
    public static String category1 { get; set; }
    public static Boolean editAble { get; set; }
    // 经销商在库产品ID
    public static List<String> orderDetZaikuList = new List<String>();
    public static List<String> orderDetZaikuList{set;get;}
    // 产品 ID
    public static String ESetId { get; set; }
    public static String idCheck { get; set; }
@@ -69,6 +69,7 @@
    // add by rentx 2021-3-10
    public LexInventoryViewController() {
        orderDetZaikuList = new List<String>();
        consumableorderdetailsRecords = new List<ConsumableorderdetailsInfo>();
        consumableorderdetailsRecordsview = new List<List<ConsumableorderdetailsInfo>>();
        editAble = false;
@@ -83,12 +84,6 @@
        // pagesize = Integer.valueof(system.label.orderdetLimitsize);
        // currentpage = 0;
    }
    @AuraEnabled
    public static ResponseBodyLWC init2(Integer pageSizeLWC, Integer pageTokenLWC, String sortFieldLWC, String sortOrderLWC) {
        return new ResponseBodyLWC('Error', 500, '测试 init2', '');
    }
    @AuraEnabled
    public static ResponseBodyLWC init(Integer pageSizeLWC, Integer pageTokenLWC, String sortFieldLWC, String sortOrderLWC) {
        pageSize = pageSizeLWC;
@@ -153,7 +148,7 @@
        for (AggregateResult zaikuId : orderDetZaiku) {
            orderDetZaikuList.add(String.valueOf(zaikuId.get('Consumable_Product__c')));
        }
        System.debug('orderDetZaikuList = ' + orderDetZaikuList);
        System.debug('orderDetZaikuListinit = ' + orderDetZaikuList);
        List<Consumable_order_details2__c> CountDel = [
            SELECT
                Id,
@@ -179,9 +174,7 @@
                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,
@@ -537,10 +530,12 @@
        String sortOrderLWC
    ) {
        try {
            System.debug('orderDetZaikuListLWC检索===>'+orderDetZaikuListLWC);
            pageSize = pageSizeLWC;
            pageToken = pageTokenLWC;
            sortField = sortFieldLWC;
            sortOrder = sortOrderLWC;
            orderDetZaikuList = new List<String>();
            orderDetZaikuList = orderDetZaikuListLWC;
            sqlagencyProType = '%' + agencyProType + '%';
@@ -939,6 +934,7 @@
    //检索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) {
@@ -1054,6 +1050,7 @@
    }
    // Data Bean
    @TestVisible
    class ConsumableorderdetailsInfo implements Comparable {
        @AuraEnabled
        public Consumable_order_details2__c esd { get; set; }
@@ -1086,6 +1083,7 @@
        @AuraEnabled
        public Boolean hospitalSpecialOffer { get; set; }
        @TestVisible
        public ConsumableorderdetailsInfo(Product2__c e) {
            esd = new Consumable_order_details2__c();
            Prod = e;
force-app/main/default/classes/LexOverdueStockController.cls
@@ -147,11 +147,12 @@
            }
            // return;
            System.debug('overduePageRecords = ' + overduePageRecords);
            System.debug('overdueList = ' + overdueList);
        data.put('overduePageRecords',JSON.serialize(overduePageRecords));
        data.put('codPageRecords',JSON.serialize(codPageRecords));
        data.put('iSinventory',iSinventory);
        data.put('overdueList',overdueList);
        res.status = 'Success';
        res.status = 'Success1';
        res.code = 200;
        // res.msg = '请输入BarCode号';
        System.debug('res = ' + res);
force-app/main/default/classes/LexProductLimitEditController.cls
@@ -23,6 +23,8 @@
    }
    @AuraEnabled
    public static ResponseBodyLWC  init(String accountid,string userPro_Type) {
        System.debug('userPro_Type==>'+userPro_Type);
        System.debug('accountid==>'+accountid);
        ResponseBodyLWC res = new ResponseBodyLWC();
        Map<String,object> data = new Map<String,object>();
        res.entity = data;
force-app/main/default/classes/LookupSearchResult.cls
@@ -55,6 +55,7 @@
    /**
     * Allow to sort search results based on title
     */
    @TestVisible
    public Integer compareTo(Object compareTo) {
        LookupSearchResult other = (LookupSearchResult) compareTo;
        if (this.getTitle() == null) {
force-app/main/default/labels/CustomLabels.labels-meta.xml
Diff too large
force-app/main/default/lwc/commonToast/__tests__/commonToast.test.js
File was deleted
force-app/main/default/lwc/customUnitComp/customUnitComp.html
@@ -16,7 +16,7 @@
            data-field="selectUnit"
            options={unitOptions}
            class="inputFont"
            disabled={isDisabled}
        ></lightning-combobox>
    </div>
</template>
force-app/main/default/lwc/customUnitComp/customUnitComp.js
@@ -4,8 +4,12 @@
    @api unitValue;
    @api unitOptions;
    @api recordId;
    @api isDisabled;
    connectedCallback(){
        if(this.isDisabled == null){
            this.isDisabled = false;
        }
    }
    handleDataChange(event){
force-app/main/default/lwc/lexConInvoiceView/lexConInvoiceView.html
@@ -527,7 +527,7 @@
                            <div draggable="false">
                                <lightning-datatable key-field="Id" data={outboundData} columns={outboundColumns}
                                    hide-checkbox-column={hideCheckbox} onrowselection={getSelectedRows}
                                    selected-rows={selectedRows} class="wrapped-header-datatable">
                                    selected-rows={selectedRows} class="wrapped-header-datatable" data-field="outbound">
                                </lightning-datatable>
                                <lightning-datatable key-field="id" data={outboundDataSumPrice}
                                    columns={outboundColumns} hide-checkbox-column hide-table-header
force-app/main/default/lwc/lexConInvoiceView/lexConInvoiceView.js
@@ -96,6 +96,7 @@
        hideDefaultActions: true,
        wrapText: true,
        cellAttributes: { alignment: 'right' },
        type: "number",
        typeAttributes: {
            minimumFractionDigits: 2,
@@ -160,6 +161,7 @@
        label: "产品型号",
        fieldName: "esdAssetModelNo",
        hideDefaultActions: true,
        wrapText: true,
    },
    {
        label: "规格",
@@ -211,13 +213,13 @@
    },
    {
        label: "开票单位",
        //fieldName: "esdInvoiceUnit",
        hideDefaultActions: true,
        type: "customUnit",
        typeAttributes: {
            unitValue: { fieldName: "unitValue" },
            unitOptions: { fieldName: "unitOptions" },
            recordId: { fieldName: "recordId" },
            isDisabled: { fieldName: "isDisabled" },
        },
    },
    {
@@ -247,6 +249,7 @@
        fieldName: "invoiceAllprice",
        hideDefaultActions: true,
        type: "number",
        initialWidth: 150,
        typeAttributes: {
            minimumFractionDigits: 2,
        },
@@ -497,8 +500,14 @@
                        this.detailsData[i]['esdInvoicedProcount'] = this.detailsData[i].esd.Invoiced_Procount__c;
                        this.detailsData[i]['esdInvoiceProNotCount'] = this.detailsData[i].esd.InvoiceProNot_count__c;
                        //开票单位
                        this.detailsData[i]['unitValue'] = this.detailsData[i].esd.Invoice_Unit__c;
                        //this.detailsData[i].esd.Box_Piece__c
                        //this.detailsData[i]['unitValue'] = this.detailsData[i].esd.Invoice_Unit__c;
                        this.detailsData[i]['unitValue'] = this.detailsData[i].esd.Box_Piece__c;
                        console.log('unitValue = ' + this.detailsData[i]['unitValue']);
                        this.detailsData[i]['recordId'] = this.detailsData[i].esd.Id;
                        //disabled="{!IF(records.esd.Box_Piece__c =='个' || (records.esd.Box_Piece__c =='盒' && records.Packing_list_manual ==1),true,false)}"
                        //this.detailsData[i]['isDisabled'] = (this.detailsData[i].esd.Box_Piece__c == '个' || (this.detailsData[i].esd.Box_Piece__c =='盒' && this.detailsData[i].Packing_list_manual ==1)) ? true:false;
                        this.detailsData[i]['isDisabled'] = true;
                        let unitOptions = [];
                        for (var key in this.detailsData[i].Invoice_UnitOptsMap) {
                            let unitOption = {};
@@ -585,6 +594,7 @@
                    this.isChange = r.entity.isChange;
                    this.ExistOutbound = r.entity.ExistOutbound;
                    this.outboundData = r.entity.invoiceOrderRecoeds;
                    console.log('this.outboundData = ' + JSON.stringify(this.outboundData))
                    this.done = r.entity.done;
                    this.accountid = r.entity.accountid;
                    this.userWorkLocation = r.entity.userWorkLocation;
@@ -949,7 +959,22 @@
    SaveJs() {
        this.isShowSpinner = true;
        let cloneData = this.outboundData
        debugger
        const selectedRows = this.template.querySelector("[data-field='outbound']").getSelectedRows();
        console.log('selectedRows = ' + JSON.stringify(selectedRows));
        for (var i in cloneData) {
            let b = false;
            for (var j in selectedRows) {
                if (cloneData[i].esd.Id == selectedRows[j].esd.Id) {
                    b = true;
                    cloneData[i].check = true;
                }
            }
            if(!b){
                cloneData[i].check = false;
            }
            delete cloneData[i].esdOutboundDate;
            delete cloneData[i].esdNameUrl;
            delete cloneData[i].esdName;
@@ -1210,8 +1235,21 @@
    InvoiceorderSearchJs() {
        this.isShowSpinner = true;
        debugger
        let cloneData = this.outboundData
        const selectedRows = this.template.querySelector("[data-field='outbound']").getSelectedRows();
        console.log('selectedRows ' + JSON.stringify(selectedRows));
        for (var i in cloneData) {
            let b = false;
            for (var j in selectedRows) {
                if (cloneData[i].esd.Id == selectedRows[j].esd.Id) {
                    b = true;
                    cloneData[i].check = true;
                }
            }
            if(!b){
                cloneData[i].check = false;
            }
            delete cloneData[i].esdOutboundDate;
            delete cloneData[i].esdNameUrl;
            delete cloneData[i].esdName;
@@ -1231,6 +1269,7 @@
        console.log('this.HospitalInfo = ' + this.HospitalInfo);
        console.log('SecondDealer = ' + this.secondaryDistributor);
        console.log('invoiceOrderRecoedsLwc = ' + JSON.stringify(cloneData));
        InvoiceorderSearch({
            cocLwc: this.coc,
            invoiceIdLwc: this.invoiceId,
@@ -1245,8 +1284,14 @@
            console.log("r = " + JSON.stringify(r));
            if (r.status == "Success") {
                this.outboundData = r.entity.invoiceOrderRecoeds;
                console.log('this.outboundData = ' + JSON.stringify(this.outboundData));
                let index = 0;
                this.selectedRows = [];
                for (var i in this.outboundData) {
                    if(this.outboundData[i].check)
                        this.selectedRows.push(this.outboundData[i].esd.Id)
                    this.outboundData[i].Id = this.outboundData[i].esd.Id;
                    this.outboundData[i]['esdOutboundDate'] = this.outboundData[i].esd.Outbound_Date__c;
                    this.outboundData[i]['esdNameUrl'] = '/s/lexsummonscreat?ESetid=' + this.outboundData[i].esd.Id;
                    this.outboundData[i]['esdName'] = this.outboundData[i].esd.Name;
@@ -1292,6 +1337,7 @@
                    //计算发票票面金额
                    this.sumPrice += this.outboundData[i].needInvoiceCount;
                }
                console.log('this.selectedRows = ' + JSON.stringify(this.selectedRows))
                this.isShowSpinner = false;
            } else {
                this.showMyToast('搜索失败', r.msg, 'Error');
@@ -1303,20 +1349,20 @@
    }
    getSelectedRows(event) {
        console.log("getSelectedRows ");
        for (var i in this.outboundData) {
            this.outboundData[i].check = false;
        }
        const selectedRows = event.detail.selectedRows;
        for (var i in this.outboundData) {
            for (var j in selectedRows) {
                if (this.outboundData[i].esd.Id == selectedRows[j].esd.Id) {
                    //this.outboundData[i].check = !this.outboundData[i].check;
                    this.outboundData[i].check = true;
                }
            }
        }
        console.log('this.outboundData = ' + JSON.stringify(this.outboundData));
        // console.log("getSelectedRows ");
        // for (var i in this.outboundData) {
        //     this.outboundData[i].check = false;
        // }
        // const selectedRows = event.detail.selectedRows;
        // for (var i in this.outboundData) {
        //     for (var j in selectedRows) {
        //         if (this.outboundData[i].esd.Id == selectedRows[j].esd.Id) {
        //             //this.outboundData[i].check = !this.outboundData[i].check;
        //             this.outboundData[i].check = true;
        //         }
        //     }
        // }
        // console.log('this.outboundData = ' + JSON.stringify(this.outboundData));
    }
    deleteButtonJs() {
@@ -1705,7 +1751,7 @@
            contentVersionId: recordId
        }).then(result => {
            if (result.result == 'Success') {
                this.showMyToast('成功', '删除成功', 'Success');
                this.showMyToast('删除成功', '', 'Success');
                if (this.fileData.length == 1)
                    window.location.reload();
                else
force-app/main/default/lwc/lexConsumable/lexConsumable.js
@@ -143,10 +143,10 @@
   get cols(){
      var cols = [];
      cols.push({label:'消耗品名称',fieldName:'prodName',wrapText:true,hideDefaultActions: true,sortable: true});
      cols.push({label:'规格',fieldName:'packing_list',hideDefaultActions: true,initialWidth:50,cellAttributes: { alignment: "right" }});
      cols.push({label:'CFDA状态',fieldName:'prodSFDAStatus',hideDefaultActions: true,initialWidth:97});
      cols.push({label:'规格',fieldName:'packing_list',wrapText:true,hideDefaultActions: true,initialWidth:50,cellAttributes: { alignment: "right" }});
      cols.push({label:'CFDA状态',fieldName:'prodSFDAStatus',wrapText:true,hideDefaultActions: true,initialWidth:97});
      cols.push({label:'注册证编码号',fieldName:'approbation_No',wrapText:true,hideDefaultActions: true,initialWidth:120});
      cols.push({label:'注册证效期',fieldName:'expiration_Date',hideDefaultActions: true,initialWidth:105});
      cols.push({label:'注册证效期',fieldName:'expiration_Date',wrapText:true,hideDefaultActions: true,initialWidth:105});
      cols.push({label:'第3分类',fieldName:'prodCategory3',wrapText:true,hideDefaultActions: true,initialWidth:78,sortable: true});
      cols.push({label:'第4分类',fieldName:'prodCategory4',wrapText:true,hideDefaultActions: true,initialWidth:107,sortable: true});
      cols.push({label:'第5分类',fieldName:'prodCategory5',wrapText:true,hideDefaultActions: true,initialWidth:80,sortable: true});
@@ -1122,7 +1122,7 @@
   //打开合同检索弹窗并初始化
   showSearchCon(){
      initContract({ctype:this.agencyProType})
      initContract({ctype:this.agencyProType1})
      .then(result=>{
         if(result.result == 'Success'){
            this.showConPop = true;
force-app/main/default/lwc/lexCustomLightningDatatable/customMyDrCheckBox.html
New file
@@ -0,0 +1,10 @@
<!-- sldsValidatorIgnore -->
<!-- sldsValidatorIgnore -->
<template>
    <c-custom-mydr-comp
        record-id={typeAttributes.recordId}
        is-checked-my-dr={typeAttributes.isCheckedMyDr}
        onunitchange={handleDataChange}
    >
    </c-custom-mydr-comp>
</template>
force-app/main/default/lwc/lexCustomLightningDatatable/customUnit.html
@@ -5,6 +5,7 @@
        unit-value={typeAttributes.unitValue}
        unit-options={typeAttributes.unitOptions}
        record-id={typeAttributes.recordId}
        is-disabled={typeAttributes.isDisabled}
        onunitchange={handleDataChange}
    >
    </c-custom-unit-comp>
force-app/main/default/lwc/lexCustomLightningDatatable/customdeleteReason.html
New file
@@ -0,0 +1,8 @@
<!-- sldsValidatorIgnore -->
<!-- sldsValidatorIgnore -->
<template>
    <c-custom-delete-reason-comp
        record-id={typeAttributes.recordId}
    >
    </c-custom-delete-reason-comp>
</template>
force-app/main/default/lwc/lexCustomLightningDatatable/lexCustomLightningDatatable.js
@@ -13,6 +13,8 @@
import customOutboundCountTemplate from './customOutboundCount.html';
import customWeeklyReportTemplate from './customWeeklyReport.html';
import customAgencyOppInputTemplate from './customAgencyOppInput.html';
import customMyDrCheckBoxTemplate from './customMyDrCheckBox.html';
import customdeleteReasonTemplate from './customdeleteReason.html';
import { loadStyle} from 'lightning/platformResourceLoader';
import LexCustomDataTable from '@salesforce/resourceUrl/LexCustomDataTable';
@@ -20,7 +22,7 @@
    static customTypes = {
        customUnit: {
            template: customUnitTemplate,
            typeAttributes: ['unitValue','unitOptions','recordId'],
            typeAttributes: ['unitValue','unitOptions','recordId','isDisabled'],
        },
        customShipment: {
            template: customShipmentNumberTemplate,
@@ -73,7 +75,15 @@
        agencyOppInput:{
            template: customAgencyOppInputTemplate,
            typeAttributes:['inputValue','recordId','fieldName','showType'],
        }
        },
        MyDrCheckBox:{
            template: customMyDrCheckBoxTemplate,
            typeAttributes:['recordId','isCheckedMyDr'],
        },
        deleteReason:{
            template: customdeleteReasonTemplate,
            typeAttributes:['recordId'],
        },
    };
    constructor() {
        super();
force-app/main/default/lwc/lexInventory/lexInventory.js
@@ -393,10 +393,10 @@
            }
        }
        if(this.barcode == ''||this.barcode == null){
            this.showMyToast('获取失败','请输入BarCode号','error');
        // if(this.barcode == ''||this.barcode == null){
        //     this.showMyToast('获取失败','请输入BarCode号','error');
        }
        // }
        console.log('this.data--->'+JSON.stringify(this.data));
        console.log('this.currentPageToken'+this.currentPageToken);
        this.selectedRows = [];
@@ -450,7 +450,7 @@
                        }
                        this.iSinventory = result.entity.iSinventory;
                        this.pandiandetailsMap = result.entity.pandiandetailsMap;
                        this.reSet = result.entity.reSet;
                        this.reSet = result.entity.reSet1;
                        console.log("iSinventory:" + this.iSinventory);
                        this.showTable = true;
                        this.showbutton = true;
@@ -518,19 +518,19 @@
        this.barcode = value;
    }
    // getSelectedRows(event) {
    //         let selectedRowsEvent = event.detail.selectedRows;
    //         this.selectedRows = [];
    //         for (var i in selectedRowsEvent) {
    //             this.selectedRows.push(selectedRowsEvent[i].ProdId+this.data[i]["boxPiece"]);
    //         }
    //     const selectedRows = event.detail.selectedRows;
    //     console.log("this.selectedRows = " + JSON.stringify(selectedRows));
    //     for (var i in selectedRows) {
    //         this.selectedRows.push(selectedRows[i].ProdId+this.data[i]["boxPiece"]);
    //     }
    getSelectedRows(event) {
            let selectedRowsEvent = event.detail.selectedRows;
            this.selectedRows = [];
            for (var i in selectedRowsEvent) {
                this.selectedRows.push(selectedRowsEvent[i].ProdId+this.data[i]["boxPiece"]);
            }
        const selectedRows = event.detail.selectedRows;
        console.log("this.selectedRows = " + JSON.stringify(selectedRows));
        for (var i in selectedRows) {
            this.selectedRows.push(selectedRows[i].ProdId+this.data[i]["boxPiece"]);
        }
    // }
    }
    //导出为csv
    exportData() {
@@ -593,13 +593,34 @@
        console.log('reSet' + this.reSet);
        this.showSpinner = true;
        console.log('pandiandetailsMap' + this.pandiandetailsMap);
        var el = this.template.querySelector("c-lex-custom-lightning-datatable");
        var selected = el.getSelectedRows();
        this.selectedData = selected;
        console.log("选中数据" + JSON.stringify(this.selectedData));
        //查询有哪些选择了的然后check
        const selectedRows = this.template.querySelector('c-lex-custom-lightning-datatable').getSelectedRows();
        console.log('selectedRows========> ' + JSON.stringify(selectedRows));
        for (var i in this.data) {
            this.data[i]["check"] = false;
        }
        for (var i in this.data) {
            for (var j in selectedRows) {
                if (this.data[i].ProdId+this.data[i]["boxPiece"] == selectedRows[j].ProdId+ selectedRows[j]["boxPiece"]) {
                    this.data[i]["check"] = true;
                }
                // console.log('this.data[i].ProdId+this.data[i]["boxPiece"]'+this.data[i].ProdId+this.data[i]["boxPiece"]);
                console.log('selectedRows[j].ProdId+this.data[i]["boxPiece"]'+selectedRows[j].ProdId+selectedRows[j]["boxPiece"]);
            }
        }
        // var el = this.template.querySelector("c-lex-custom-lightning-datatable");
        // var selected = el.getSelectedRows();
        // this.selectedData = selected;
        // console.log("选中数据" + JSON.stringify(this.selectedData));
        // console.log("reset" + JSON.stringify(this.reSet));
        // console.log("reset1" + JSON.stringify(this.reSet1));
        // console.log("r" + JSON.stringify(this.reSet1));
        save({
            iSinventory: this.iSinventory,
            consumableorderdetailsRecordsLWC: JSON.stringify(this.selectedData),
            consumableorderdetailsRecordsLWC:JSON.stringify(this.data),
            accountid: this.accountid,
            agencyProType: this.agencyProType,
            reSet: this.reSet,
@@ -611,7 +632,7 @@
                console.log("111111");
                if (result.status == "Success") {
                    let url = "/lexInventory?ESetid=" + result.entity.eSetId;
                    let url = "/lexinventory?ESetid=" + result.entity.eSetId;
                    this[NavigationMixin.Navigate]({
                        type: "standard__webPage",
                        attributes: {
force-app/main/default/lwc/lexOverdueStock/lexOverdueStock.html
@@ -75,7 +75,7 @@
                    <!-- <div style="height: 300px;"> -->
                        <template if:true={showTable}>
                            <c-lex-custom-lightning-datatable key-field="prodid" data={data} columns={columns}
                            <c-lex-custom-lightning-datatable key-field="key" data={data} columns={columns}
                            onrowselection={getSelectedRows}
                            selected-rows={selectedRows} class="wrapped-header-datatable">
                                </c-lex-custom-lightning-datatable>
@@ -114,7 +114,7 @@
                    <lightning-datatable
                    key-field="id" data={overduePageRecords} columns={column}
                    onrowselection={getSelectedRows}   hide-checkbox-column="true"
                   selected-rows={selectedRows} class="wrapped-header-datatable">
                   selected-rows={selectedRows} class="wrapped-header-datatable " style="word-wrap:break-word; word-break:break-all; ">
            </lightning-datatable>
        </div>
force-app/main/default/lwc/lexOverdueStock/lexOverdueStock.js
@@ -11,268 +11,335 @@
//过期库存一览
const columns = [
    {
      label: '是否销存',
      fieldName: 'iscount',
      type: 'checkbox',
      hideDefaultActions: true,
      initialWidth: 80,
    },
    {
      label: '消耗品名称',
      fieldName: 'prodname',
      type: 'prodname',
      wrapText: true,
      initialWidth: 350,
      hideDefaultActions: true
  {
    label: '是否销存',
    fieldName: 'iscount',
    type: 'checkbox',
    hideDefaultActions: true,
    initialWidth: 80,
  },
  {
    label: '消耗品名称',
    fieldName: 'prodname',
    type: 'prodname',
    wrapText: true,
    initialWidth: 350,
    },
    {
      label: '单位',
      fieldName: 'boxPiece',
      hideDefaultActions: true,
      // initialWidth: 250,
    },
    {
      label: '过期数量',
      fieldName: 'overlimitCount',
      hideDefaultActions: true,
      cellAttributes: { alignment: 'right' }
      // initialWidth: 250,
    },
    {
      label: '销存数量',
      fieldName: 'pandian',
      hideDefaultActions: true,
      cellAttributes: { alignment: 'right' }
      // initialWidth: 250,
    hideDefaultActions: true
  },
  {
    label: '单位',
    fieldName: 'boxPiece',
    hideDefaultActions: true,
    // initialWidth: 250,
  },
  {
    label: '过期数量',
    fieldName: 'overlimitCount',
    hideDefaultActions: true,
    cellAttributes: { alignment: 'right' }
    // initialWidth: 250,
  },
  {
    label: '销存数量',
    fieldName: 'pandian',
    hideDefaultActions: true,
    cellAttributes: { alignment: 'right' }
    // initialWidth: 250,
    //   cellAttributes: { alignment: 'center' }
    }
  ];
  //销存明细
  }
];
//销存明细
const column = [
    {
      label: '消耗品名称',
      fieldName: 'Name__c',
      type: 'Name',
      // initialWidth : 300,
      hideDefaultActions: true,
      cellAttributes: { alignment: 'left' }
    },
    {
      label: '单位',
      fieldName: 'Box_Piece__c',
      initialWidth : 80,
      hideDefaultActions: true
    },
    {
      label: 'BarCode',
      fieldName: 'Bar_Code__c',
      wrapText: true,
      hideDefaultActions: true,
      initialWidth : 500,
    },
    {
      label: '使用期限',
      fieldName: 'Sterilization_limit__c',
      hideDefaultActions: true,
      // initialWidth : 250
  {
    label: '消耗品名称',
    fieldName: 'Name__c',
    type: 'Name',
    // initialWidth : 300,
    hideDefaultActions: true,
    cellAttributes: { alignment: 'left' }
  },
  {
    label: '单位',
    fieldName: 'Box_Piece__c',
    initialWidth: 80,
    hideDefaultActions: true
  },
  {
    label: 'BarCode',
    fieldName: 'Bar_Code__c',
    wrapText: true,
    hideDefaultActions: true,
    initialWidth: 500,
  },
  {
    label: '使用期限',
    fieldName: 'Sterilization_limit__c',
    hideDefaultActions: true,
    // initialWidth : 250
  }
  ,
  {
    label: '销存原因',
    fieldName: 'diffReason',
    hideDefaultActions: true,
    initialWidth: 160
  }
];
export default class LexOverdueStock extends NavigationMixin(LightningElement) {
  columns = columns
  column = column
  @track data = [];
  @track overduePageRecords = [];
  @track iSinventory = false
  //加载框
  // @track casesSpinner = true;
  @track showSpinner = true;
  //显示口
  @track showbutton = false
  @track showTable = false;
  @track showTables = false;
  //销存一览数据
  @track accountName;
  @track agencyProType;
  @track userWorkLocation;
  @track barcode = ''
  @track orderDetZaiku
  @track selectedRows = [];
  @track codPageRecordsLWC;
  @track Id;
  @track overdueList = [];
  renderedCallback() {
    if (!this.stylesLoaded) {
      Promise.all([loadStyle(this, WrappedHeaderTable)])
        .then(() => {
          console.log("Custom styles loaded");
          this.stylesLoaded = true;
        })
        .catch((error) => {
          console.error("Error loading custom styles");
        });
    }
    ,
    {
      label: '销存原因',
      fieldName: 'diffReason',
      hideDefaultActions: true,
      initialWidth: 160
    }
  ];
export default class LexOverdueStock extends NavigationMixin (LightningElement ){
    columns = columns
    column = column
    @track data =[];
    @track overduePageRecords = [];
    @track iSinventory = false
    //加载框
    // @track casesSpinner = true;
    @track showSpinner =true;
    //显示口
    @track showbutton = false
    @track showTable = false;
    @track showTables = false;
    //销存一览数据
    @track accountName;
    @track agencyProType;
    @track userWorkLocation;
    @track barcode = ''
    @track orderDetZaiku
    @track selectedRows = [];
    @track codPageRecordsLWC;
    @track Id;
    @track overdueList = [];
    renderedCallback() {
      if (!this.stylesLoaded) {
          Promise.all([loadStyle(this, WrappedHeaderTable)])
              .then(() => {
                  console.log("Custom styles loaded");
                  this.stylesLoaded = true;
              })
              .catch((error) => {
                  console.error("Error loading custom styles");
              });
      }
  }
    //初始化
    connectedCallback() {
        console.log('初始化');
        this.showSpinner = true;
  //初始化
  connectedCallback() {
    console.log('初始化');
    this.showSpinner = true;
        init().then((result) => {
            result = JSON.parse(JSON.stringify(result));
            console.log('result ='+JSON.stringify(result));
            console.log('result 1='+result.entity.codPageRecords);
            if(result.status = 'Success'){
                this.data = JSON.parse(result.entity.codPageRecords);
                this.codPageRecordsLWC = result.entity.codPageRecords;
                console.log('this.data'+this.data);
                this.accountName = result.entity.accountName;
                this.agencyProType = result.entity.agencyProType;
                this.userWorkLocation = result.entity.userWorkLocation;
                this.showTable = true;
                // this.casesSpinner = false;
                this.showSpinner = false;
            }else {
              this.showMyToast('初始化失败',result.msg,'error');
              this.showSpinner = false;
              }
        }).catch((error) => {
            console.log('error = ' + JSON.stringify(error));
          });
    }
    //barcode录入
    barcodeEntrys(){
        this.showSpinner = true;
        this.showTable = false;
        console.log('code'+this.barcode);
        console.log(' this.accountName'+ this.accountName);
        console.log(' this.barcode'+ this.barcode);
        if(this.barcode == ''||this.barcode==null){
          this.showMyToast('获取失败','请输入BarCode号','error');
          this.showSpinner = false;
    init().then((result) => {
      result = JSON.parse(JSON.stringify(result));
      console.log('result =' + JSON.stringify(result));
      console.log('result 1=' + result.entity.codPageRecords);
      if (result.status = 'Success') {
        this.data = JSON.parse(result.entity.codPageRecords);
        this.codPageRecordsLWC = result.entity.codPageRecords;
        console.log('this.data' + this.data);
        this.accountName = result.entity.accountName;
        this.agencyProType = result.entity.agencyProType;
        this.userWorkLocation = result.entity.userWorkLocation;
        for (var i in this.data) {
          this.data[i]["key"] = this.data[i]["prodid"] + this.data[i]["boxPiece"];
        }
        barcodeEntry({
            accountNameLWC: this.accountName,
            agencyProTypeLWC: this.agencyProType,
            userWorkLocationLWC:this.userWorkLocation,
            barcodeLWC:this.barcode,
            codPageRecordsLWC:this.codPageRecordsLWC
        }).then((result)=>{
            result = JSON.parse(JSON.stringify(result));
            if (result.status == 'Success') {
            this.overduePageRecords = JSON.parse(result.entity.overduePageRecords);
            this.overdueList = result.entity.overdueList;
            this.iSinventory = result.entity.iSinventory;
            console.log('result录入'+JSON.stringify( result));
            console.log('overdueList==>'+JSON.stringify(   this.overdueList));
            for(let i in this.overduePageRecords){
              if(this.overduePageRecords[i].Prod!=null){
                this.overduePageRecords[i]['Name__c'] = this.overduePageRecords[i].Prod.Name__c;
        this.showTable = true;
        // this.casesSpinner = false;
        this.showSpinner = false;
      } else {
        this.showMyToast('初始化失败', result.msg, 'error');
        this.showSpinner = false;
      }
    }).catch((error) => {
      console.log('error = ' + JSON.stringify(error));
    });
  }
  //barcode录入
  barcodeEntrys() {
    this.showSpinner = true;
    this.showTable = false;
    console.log('code' + this.barcode);
    console.log(' this.accountName' + this.accountName);
    console.log(' this.barcode' + this.barcode);
    const selectedRows = this.template.querySelector('c-lex-custom-lightning-datatable').getSelectedRows();
    console.log('selectedRows========> ' + JSON.stringify(selectedRows));
    for (var i in this.data) {
      this.data[i]["check"] = false;
    }
    for (var i in this.data) {
      for (var j in selectedRows) {
        if (this.data[i].prodid + this.data[i]["boxPiece"] == selectedRows[j].prodid + selectedRows[j]["boxPiece"]) {
          this.data[i]["check"] = true;
        }
        // console.log('this.data[i].ProdId+this.data[i]["boxPiece"]'+this.data[i].ProdId+this.data[i]["boxPiece"]);
        console.log('selectedRows[j].prodid+this.data[i]["boxPiece"]' + selectedRows[j].prodid + selectedRows[j]["boxPiece"]);
              }
                this.overduePageRecords[i]['Bar_Code__c'] = this.overduePageRecords[i].orderdetails2.Bar_Code__c;
                this.overduePageRecords[i]['Box_Piece__c'] = this.overduePageRecords[i].orderdetails2.Box_Piece__c;
                this.overduePageRecords[i]['Sterilization_limit__c'] = this.overduePageRecords[i].orderdetails2.Sterilization_limit__c;
      }
      console.log('data===>'+  JSON.stringify(this.data));
    }
    // this.selectedRows = [];
    // if(this.barcode == ''||this.barcode==null){
    //   this.showMyToast('获取失败','请输入BarCode号','error');
    //   this.showSpinner = false;
    // }
    barcodeEntry({
      accountNameLWC: this.accountName,
      agencyProTypeLWC: this.agencyProType,
      userWorkLocationLWC: this.userWorkLocation,
      barcodeLWC: this.barcode,
      codPageRecordsLWC: JSON.stringify(this.data)
    }).then((result) => {
      result = JSON.parse(JSON.stringify(result));
      if (result.status == 'Success') {
        this.overduePageRecords = JSON.parse(result.entity.overduePageRecords);
        this.overdueList = result.entity.overdueList;
        this.iSinventory = result.entity.iSinventory;
        console.log('result录入' + JSON.stringify(result));
        console.log('overdueList==>' + JSON.stringify(this.overdueList));
        for (let i in this.overduePageRecords) {
          if (this.overduePageRecords[i].Prod != null) {
            this.overduePageRecords[i]['Name__c'] = this.overduePageRecords[i].Prod.Name__c;
          }
          this.overduePageRecords[i]['Bar_Code__c'] = this.overduePageRecords[i].orderdetails2.Bar_Code__c;
          this.overduePageRecords[i]['Box_Piece__c'] = this.overduePageRecords[i].orderdetails2.Box_Piece__c;
          this.overduePageRecords[i]['Sterilization_limit__c'] = this.overduePageRecords[i].orderdetails2.Sterilization_limit__c;
        }
        this.data = JSON.parse(result.entity.codPageRecords);
        console.log(' this.data' + JSON.stringify(this.data));
        for (var i in this.data) {
          this.data[i]["key"] = this.data[i]["prodid"] + this.data[i]["boxPiece"];
        }
        for (var i in this.data) {
          if (this.data[i]['check']) {
            this.selectedRows.push(this.data[i].prodid + this.data[i]["boxPiece"]);
            console.log("selectedRows:" + this.selectedRows);
          }
        }
        this.showSpinner = false;
        // this.showTables = true;
        this.showTable = true;
      } else {
        if (result.status == 'Success1') {
          this.overduePageRecords = JSON.parse(result.entity.overduePageRecords);
          this.overdueList = result.entity.overdueList;
          this.iSinventory = result.entity.iSinventory;
          console.log('result录入' + JSON.stringify(result));
          console.log('overdueList==>' + JSON.stringify(this.overdueList));
          for (let i in this.overduePageRecords) {
            if (this.overduePageRecords[i].Prod != null) {
              this.overduePageRecords[i]['Name__c'] = this.overduePageRecords[i].Prod.Name__c;
            }
           this.data = JSON.parse(result.entity.codPageRecords);
           console.log(' this.data'+ JSON.stringify(this.data));
           for (var i in this.data) {
            this.overduePageRecords[i]['Bar_Code__c'] = this.overduePageRecords[i].orderdetails2.Bar_Code__c;
            this.overduePageRecords[i]['Box_Piece__c'] = this.overduePageRecords[i].orderdetails2.Box_Piece__c;
            this.overduePageRecords[i]['Sterilization_limit__c'] = this.overduePageRecords[i].orderdetails2.Sterilization_limit__c;
          }
          this.data = JSON.parse(result.entity.codPageRecords);
          console.log(' this.data' + JSON.stringify(this.data));
          for (var i in this.data) {
            this.data[i]["key"] = this.data[i]["prodid"] + this.data[i]["boxPiece"];
          }
          for (var i in this.data) {
            if (this.data[i]['check']) {
              this.selectedRows.push(this.data[i].prodid);
              console.log('selectedRows:' + this.selectedRows);
              this.selectedRows.push(this.data[i].prodid + this.data[i]["boxPiece"]);
              console.log("selectedRows:" + this.selectedRows);
            }
          }
          this.showSpinner = false;
          // this.showTables = true;
          this.showTable = true;
        }else{
          this.showMyToast('获取失败',result.msg,'error');
        }else {
          console.log('Error:' + result.msg);
          this.showMyToast(result.msg,'','error');
          this.showSpinner = false;
          this.showTable = true;
        }
        }).catch((error) => {
            console.log('error = ' + JSON.stringify(error));
          });
    }
     //获取当前输入值
        // this.showMyToast('获取失败', result.msg, 'error');
        // this.showSpinner = false;
      }
    }).catch((error) => {
      console.log('error = ' + JSON.stringify(error));
    });
  }
  //获取当前输入值
  handleChange(event) {
    let value = event.detail.value;
    console.log('value' + value);
    this.barcode = value;
    console.log('this.barcode'+this.barcode);
    console.log('this.barcode' + this.barcode);
  }
  getSelectedRows(event) {
    console.log('打勾');
    const selectedRows = event.detail.selectedRows;
    console.log('this.selectedRows = ' + this.selectedRows);
    for (var i in this.data) {
      this.data[i]['check'] = false;
    }
    for (var i in this.data) {
      for (var j in selectedRows) {
        console.log('this.selectedRows111 = ' + selectedRows[j].prodid);
        console.log('this.selectedRows1112 = ' + this.data[i].prodid );
        if (this.data[i].prodid == selectedRows[j].prodid) {
          this.data[i]['check'] = true;
        }
      }
    }
            let selectedRowsEvent = event.detail.selectedRows;
            this.selectedRows = [];
            for (var i in selectedRowsEvent) {
                this.selectedRows.push(selectedRowsEvent[i].prodid+this.data[i]["boxPiece"]);
            }
        console.log('this.selectedRows==>'+this.selectedRows);
  }
  //保存
  saveConfirm() {
    console.log('进入销存确认');
    this.showSpinner = true;
    var el = this.template.querySelector('c-lex-custom-lightning-datatable');
    var selected = el.getSelectedRows();
    this.selectedData = selected;
    console.log('选中数据' + JSON.stringify(this.selectedData));
    console.log('this.overdueList'+this.overdueList);
        //查询有哪些选择了的然后check
        const selectedRows = this.template.querySelector('c-lex-custom-lightning-datatable').getSelectedRows();
        console.log('selectedRows========> ' + JSON.stringify(selectedRows));
        for (var i in this.data) {
            this.data[i]["check"] = false;
        }
        for (var i in this.data) {
            for (var j in selectedRows) {
                if (this.data[i].prodid+this.data[i]["boxPiece"] == selectedRows[j].prodid+ selectedRows[j]["boxPiece"]) {
                    this.data[i]["check"] = true;
                }
                // console.log('this.data[i].ProdId+this.data[i]["boxPiece"]'+this.data[i].ProdId+this.data[i]["boxPiece"]);
                console.log('selectedRows[j].prodid+this.data[i]["boxPiece"]'+selectedRows[j].prodid+selectedRows[j]["boxPiece"]);
            }
        }
    // var el = this.template.querySelector('c-lex-custom-lightning-datatable');
    // var selected = el.getSelectedRows();
    // this.selectedData = selected;
    // console.log('选中数据' + JSON.stringify(this.selectedData));
    // console.log('this.overdueList' + this.overdueList);
    save({
      iSinventory: this.iSinventory,
      saveCodPageRecords:  JSON.stringify(this.selectedData),
      saveCodPageRecords: JSON.stringify(this.data),
      // saveoverdueList:JSON.stringify(this.overdueList)
      saveoverdueList:this.overdueList
      saveoverdueList: this.overdueList
    }).then((result) => {
        result = JSON.parse(JSON.stringify(result));
        console.log('result保存 = ' + JSON.stringify(result));
        if (result.status == 'Success') {
            this[NavigationMixin.Navigate]({
                type: 'standard__recordPage',
                attributes: {
                    recordId:result.entity.Id,
                    objectApiName: 'Consumable_order__c',
                    actionName: 'view'
                }
            });
            this.showSpinner = false;
        } else {
          this.showMyToast('销存失败',result.msg,'error');
          this.showSpinner = false;
        }
      })
      result = JSON.parse(JSON.stringify(result));
      console.log('result保存 = ' + JSON.stringify(result));
      if (result.status == 'Success') {
        this[NavigationMixin.Navigate]({
          type: 'standard__recordPage',
          attributes: {
            recordId: result.entity.Id,
            objectApiName: 'Consumable_order__c',
            actionName: 'view'
          }
        });
        this.showSpinner = false;
      } else {
        this.showMyToast('销存失败', result.msg, 'error');
        this.showSpinner = false;
      }
    })
      .catch((error) => {
        console.log('error = ' + JSON.stringify(error));
        this.showSpinner = false;
@@ -283,17 +350,17 @@
    console.log('show custom message');
    var iconName = '';
    var content = '';
    if(variant == 'success'){
       iconName = 'utility:check';
    }else{
       iconName = 'utility:error';
    if (variant == 'success') {
      iconName = 'utility:check';
    } else {
      iconName = 'utility:error';
    }
    if(message != ''){
       content = '<h2><strong>'+title+'<strong/></h2><h5>'+message+'</h5>';
    }else{
       content = '<h2><strong>'+title+'<strong/></h2>';
    if (message != '') {
      content = '<h2><strong>' + title + '<strong/></h2><h5>' + message + '</h5>';
    } else {
      content = '<h2><strong>' + title + '<strong/></h2>';
    }
    this.template.querySelector('c-common-toast').showToast(variant,content,iconName,10000);
    }
    this.template.querySelector('c-common-toast').showToast(variant, content, iconName, 10000);
  }
    }
}
force-app/main/default/lwc/lexSummonsCreat/lexSummonsCreat.html
@@ -632,7 +632,7 @@
                            <div lwc:dom="manual" class="resultDiv"></div>
                            <div draggable="false">
                                <lightning-layout multiple-rows>
                                    <lightning-layout-item padding="around-small" flexibility="auto">
                                    <lightning-layout-item style="padding: 10px;" flexibility="auto">
                                        <div class="slds-grid slds-grid_vertical-align-center">
                                            <div class="slds-form-element__label">消耗品名称</div>
                                            <lightning-input type="text" name="consumableName" label="消耗品名称"
@@ -641,7 +641,7 @@
                                        </div>
                                    </lightning-layout-item>
                                    <lightning-layout-item padding="around-small" flexibility="auto">
                                    <lightning-layout-item style="padding: 10px;" flexibility="auto">
                                        <div class="slds-grid slds-grid_vertical-align-center">
                                            <div class="slds-form-element__label" style="width:80px">第3分类</div>
                                            <lightning-combobox name="progress" label="第3分类" value={Category3}
@@ -650,7 +650,7 @@
                                                class="inputFont"></lightning-combobox>
                                        </div>
                                    </lightning-layout-item>
                                    <lightning-layout-item padding="around-small" flexibility="auto">
                                    <lightning-layout-item style="padding: 10px;" flexibility="auto">
                                        <div class="slds-grid slds-grid_vertical-align-center">
                                            <div class="slds-form-element__label" style="width:80px">第4分类</div>
                                            <lightning-combobox name="progress" label="第4分类" value={Category4}
@@ -660,7 +660,7 @@
                                        </div>
                                    </lightning-layout-item>
                                    <lightning-layout-item padding="around-small" flexibility="auto">
                                    <lightning-layout-item style="padding: 10px;" flexibility="auto">
                                        <div class="slds-grid slds-grid_vertical-align-center">
                                            <div class="slds-form-element__label" style="width:80px">第5分类</div>
                                            <lightning-combobox name="progress" label="第5分类" value={Category5}
@@ -671,7 +671,7 @@
                                    </lightning-layout-item>
                                    <template if:true={hasHosPro}>
                                        <lightning-layout-item padding="around-small" flexibility="auto">
                                        <lightning-layout-item style="padding: 10px;" flexibility="auto">
                                            <div class="slds-grid slds-grid_vertical-align-center">
                                                <div class="slds-form-element__label">医院特价</div>
                                                <lightning-combobox name="progress" label="医院特价" value={outOutPattern}
force-app/main/default/lwc/lexSummonsCreat/lexSummonsCreat.js
@@ -25,7 +25,13 @@
import { loadStyle } from "lightning/platformResourceLoader";
import WrappedHeaderTable from "@salesforce/resourceUrl/lexdatatable";
import ConsumableOutboundReportId from '@salesforce/label/c.ConsumableOutboundReportId';
const customLabel = {
    ConsumableOutboundReportId
}
export default class LexSummonsCreat extends NavigationMixin(LightningElement) {
    @track label = customLabel;
    @track isShowSpinner = true;
    @track isEditShowSpinner = false;
    @track showResults = true;
@@ -1774,7 +1780,9 @@
        var reportId = this.ESetid;
        reportId = reportId.substring(0, 15);
        let reportFilters = '[{"operator":"equals","value":"' + reportId + '","column":"FK_CUSTENT_ID"}]';
        let url = "/report/00O0l000000zZtpEAE?reportFilters=" + encodeURIComponent(reportFilters);
        let reportUrl = this.label.ConsumableOutboundReportId;
        console.log("reportUrl = " + reportUrl);
        let url = "/report/" + reportUrl + "?reportFilters=" + encodeURIComponent(reportFilters);
        console.log("url = " + url);
        this[NavigationMixin.Navigate]({
            type: "standard__webPage",
force-app/main/default/lwc/lexinventoryViewLWC/lexinventoryViewLWC.js
@@ -442,7 +442,7 @@
        this[NavigationMixin.Navigate]({
            type: 'standard__webPage',
            attributes: {
                url: '/lexInventory'
                url: '/lexinventory'
            }
        });
    }
@@ -452,7 +452,7 @@
        this[NavigationMixin.Navigate]({
            type: 'standard__webPage',
            attributes: {
                url: '/lexoverdueStock'
                url: '/lexoverduestock'
            }
        });
@@ -470,7 +470,7 @@
        this[NavigationMixin.Navigate]({
            type: 'standard__webPage',
            attributes: {
                url: '/lexCancelRemoveBox'
                url: '/lexcancelremovebox'
            }
        });
force-app/main/default/permissionsets/Community_LEX_PS.permissionset-meta.xml
New file
@@ -0,0 +1,315 @@
<?xml version="1.0" encoding="UTF-8"?>
<PermissionSet xmlns="http://soap.sforce.com/2006/04/metadata">
    <classAccesses>
        <apexClass>LexArriveGoodsController</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexArriveGoodsMainController</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexArriveGsDetailsController</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexBTReportController</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexCancelRemoveBoxController</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexCancelRemoveBoxControllerTest</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexConInvoiceList</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexConInvoiceViewController</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexConInvoicedetailsController</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexConsumApply_FromQISCtl</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexConsumableAccountController</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexConsumableAccountInfoController</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexConsumableAccountSOQL</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexConsumableController</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexConsumableGoodsInfo</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexConsumableOrderManageController</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexContractAuthorizeController</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexDealerInquiryModifyStateController</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexEquipmentRentalApply_FromQISCtl</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexInventoryController</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexInventoryHeaderClearStatusController</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexInventoryHeaderController</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexInventoryListController</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexInventoryListControllerTest</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexInventoryListTest</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexInventoryViewController</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexInventoryViewControllerTest</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexInventoryViewTest</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexLicenceReminderController</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexLicenceReminderControllerTest</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexLostSubmitApprovalController</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexMeetingCostsController</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexNewAndEditBasePIPLController</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexNewAndEditContactPIPLController</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexNewAndEditLeadPIPLController</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexNewAndEditReportPIPLController</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexNewSICustomNewController</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexNoReportApplicationController</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexOutboundorderImportController</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexOverdueStockController</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexPaymentPlanLoadController</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexPrintInspectupReportController</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexProductLimitEditController</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexProductLimitEditControllerTest</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexProductLimitEditTest</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexRemoveBoxController</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexRemoveBoxControllerTest</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexRentalApplySetSelectSubstitute</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexSIAbortBtnController</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexSINewQuoteEntryController</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexSISearchSetProductController</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexSaleAndDeliveryController</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexSaleOrderController</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexSearchAgencyHospitalTest</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexSearchContractController</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexSearchHospitalController</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexSearchProductController</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexSearchProductCsController</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexSearchProductIraiController</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexSearchSetProductController</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexStockCancelController</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexSummonsCreatController</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexTopPageController</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexTopPageControllerTest</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexTransferApplyController</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexUpAccountProLimit</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexUpAccountProLimitControllerTest</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexUpAccountProLimitTest</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexUtility</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexUtilityTest</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <classAccesses>
        <apexClass>LexVisitReportCancelController</apexClass>
        <enabled>true</enabled>
    </classAccesses>
    <hasActivationRequired>false</hasActivationRequired>
    <label>Community LEX PS</label>
    <objectPermissions>
        <allowCreate>true</allowCreate>
        <allowDelete>false</allowDelete>
        <allowEdit>false</allowEdit>
        <allowRead>true</allowRead>
        <modifyAllRecords>false</modifyAllRecords>
        <object>Agency_Report_Header__c</object>
        <viewAllRecords>false</viewAllRecords>
    </objectPermissions>
    <objectPermissions>
        <allowCreate>true</allowCreate>
        <allowDelete>false</allowDelete>
        <allowEdit>false</allowEdit>
        <allowRead>true</allowRead>
        <modifyAllRecords>false</modifyAllRecords>
        <object>Agency_Report__c</object>
        <viewAllRecords>false</viewAllRecords>
    </objectPermissions>
    <userPermissions>
        <enabled>true</enabled>
        <name>ChatterEnabledForUser</name>
    </userPermissions>
    <userPermissions>
        <enabled>true</enabled>
        <name>ViewContent</name>
    </userPermissions>
</PermissionSet>