buli
2023-07-13 a046b3fe914e46147334d33bbdcb21e2759a3c43
force-app/main/default/lwc/lexConsumable/lexConsumable.js
@@ -1,1703 +1,1778 @@
import { LightningElement, wire, api, track } from "lwc";
import { CurrentPageReference } from "lightning/navigation";
import { ShowToastEvent } from "lightning/platformShowToastEvent";
import { NavigationMixin } from "lightning/navigation";
import initPage from "@salesforce/apex/LexConsumableController.init";
import categoryAllload from "@salesforce/apex/LexConsumableController.categoryAllload";
import categoryload from "@salesforce/apex/LexConsumableController.categoryload";
import searchConsumableorderdetails from "@salesforce/apex/LexConsumableController.searchConsumableorderdetails";
import searchorderdetails from "@salesforce/apex/LexConsumableController.searchorderdetails";
import save from "@salesforce/apex/LexConsumableController.save";
import ordrCopy from "@salesforce/apex/LexConsumableController.ordrCopy";
import setEditAble from "@salesforce/apex/LexConsumableController.setEditAble";
import backOrder from "@salesforce/apex/LexConsumableController.backOrder";
import delConsumable from "@salesforce/apex/LexConsumableController.delConsumable";
import sorder from "@salesforce/apex/LexConsumableController.sorder";
import filesUpload from "@salesforce/apex/LexConsumableController.filesUpload";
import initHospital from "@salesforce/apex/LexSearchHospitalController.init";
import searchHospital from "@salesforce/apex/LexSearchHospitalController.searchHospital";
import initContract from "@salesforce/apex/LexSearchContractController.init";
import searchContract from "@salesforce/apex/LexSearchContractController.searchContract";
import deleteAtt from "@salesforce/apex/LexConsumableController.deleteAtt";
import { LightningElement, wire, api, track } from 'lwc';
import { CurrentPageReference } from 'lightning/navigation';
import { ShowToastEvent } from 'lightning/platformShowToastEvent';
import { NavigationMixin } from 'lightning/navigation';
import initPage from '@salesforce/apex/LexConsumableController.init';
import categoryAllload from '@salesforce/apex/LexConsumableController.categoryAllload';
import categoryload from '@salesforce/apex/LexConsumableController.categoryload';
import searchConsumableorderdetails from '@salesforce/apex/LexConsumableController.searchConsumableorderdetails';
import searchorderdetails from '@salesforce/apex/LexConsumableController.searchorderdetails';
import save from '@salesforce/apex/LexConsumableController.save';
import ordrCopy from '@salesforce/apex/LexConsumableController.ordrCopy';
import setEditAble from '@salesforce/apex/LexConsumableController.setEditAble';
import backOrder from '@salesforce/apex/LexConsumableController.backOrder';
import delConsumable from '@salesforce/apex/LexConsumableController.delConsumable';
import sorder from '@salesforce/apex/LexConsumableController.sorder';
import filesUpload from '@salesforce/apex/LexConsumableController.filesUpload';
import initHospital from '@salesforce/apex/LexSearchHospitalController.init';
import searchHospital from '@salesforce/apex/LexSearchHospitalController.searchHospital';
import initContract from '@salesforce/apex/LexSearchContractController.init';
import searchContract from '@salesforce/apex/LexSearchContractController.searchContract';
import deleteAtt from '@salesforce/apex/LexConsumableController.deleteAtt';
//table css
import { loadStyle } from "lightning/platformResourceLoader";
import WrappedHeaderTable from "@salesforce/resourceUrl/lexdatatable";
import { loadStyle } from 'lightning/platformResourceLoader';
import WrappedHeaderTable from '@salesforce/resourceUrl/lexdatatable';
export default class LexConsumable extends NavigationMixin(LightningElement) {
  //页面基础数据
  @track editAble;
  @track pageType;
  @track esetId;
  @track keyWords;
  @track coc;
  @track cocId;
  @track userWorkLocation;
  @track accountName;
  @track accountid;
  @track specialCampaign = false;
  @track dealerProductId = [];
  @track category1;
  @track category3 = "";
  @track category4 = "";
  @track category5 = "";
  @track category_Goods;
  @track category3Option = [];
  @track category4Option = [];
  @track category5Option = [];
  @track consumableorderdetailsRecordsview = [];
  @track currentRecord = []; //分页
  @track selectRows = [];
  @track attachmentRecoeds = [];
  @track contactDealer = [];
  @track proLimitAndDate = [];
  @track agencyProType;
  @track agencyProType1;
  @track OSHFLG = false;
  @track bargainPrice;
  @track showOrderDate = false;
  @track showAttUploadDate = false;
  @track edoffersPrice = false;
  @track editDelCommitBtnDisabled = false;
  @track showEditBtn = false;
  @track disabledEditBtn = false;
  @track showPrintSheetBtn = false;
  @track showUploadSheetBtn = false;
  @track disabledUploadSheetBtn = false;
  @track showSubOrderbtn = false;
  @track disabledSubOrderbtn = false;
  @track showSaveOrderbtn1 = false;
  @track showSaveOrderbtn2 = false;
  @track showDeleteBtn = false;
  @track disabledDeleteBtn = false;
  @track showOfferPriceInputBtn = false;
  @track disabledOfferPriceInputBtn = false;
  @track showReapplyBtn = false;
  @track showHospital = false;
  @track showPage = false;
  @track cansee = false;
  @track showSpinner = true;
  @track showPopSpinner = false;
  stylesLoaded = false;
  //是否一直显示提示
  @track isNoteStay = true;
  //排序相关
  @track sortDirection = "asc";
  @track sortedBy;
  //分页
  @track currentPage = 1;
  @track pageSize = 10;
  // @track totalPage = 0;
  @track pageSizeOptions = [10, 25, 50, 100];
  @track recordStart = 0;
  @track recordEnd = 0;
  //报错提醒
  // @track hasError = false;
  @track errorMsgs = [];
  // @track hasWarning = false;
  @track warningMsgs = [];
  //附件上传
  @track showAttPop = false;
  @track filesUploaded = [];
  @track fileName;
  file;
  fileContents;
  fileReader;
  content;
  //医院搜索
  @track showAttHosPop = false;
  @track hospitalList = [];
  @track searchNameHos;
  @track chooseHospital;
  @track chooseHospitalId;
  @track hospitalId;
  @track hospitalName;
  @track tempidHp;
  @track hosCols = [
    // {label:'医院名称',fieldName:'Name',type:'button',typeAttributes:{label:{fieldName:'Name'},variant:'base'}},
    {
      label: "",
      type: "button",
      typeAttributes: { label: "选择" },
      initialWidth: 90,
      hideDefaultActions: true,
      wrapText: true
    },
    {
      label: "医院名称",
      fieldName: "Name",
      initialWidth: 380,
      wrapText: true,
      hideDefaultActions: true
    },
    {
      label: "省份",
      fieldName: "StateMaster",
      initialWidth: 80,
      hideDefaultActions: true,
      wrapText: true
    },
    {
      label: "地址",
      fieldName: "Address__c",
      hideDefaultActions: true,
      wrapText: true
    }
  ];
  //合同搜索
  @track contractLabel;
  @track showConPop = false;
  @track contractList = [];
  @track searchNameCon;
  @track chooseContract;
  @track chooseContractId;
  @track contractId;
  @track contractName;
  @track tempidPp;
  @track conCols = [
    {
      label: "",
      type: "button",
      typeAttributes: { label: "选择" },
      initialWidth: 90,
      hideDefaultActions: true,
      wrapText: true
    },
    {
      label: "合同名称",
      fieldName: "Name",
      wrapText: true,
      hideDefaultActions: true
    },
    {
      label: "省份",
      fieldName: "StateMaster",
      initialWidth: 80,
      hideDefaultActions: true,
      wrapText: true
    },
    {
      label: "申请销售课",
      fieldName: "Sales_Section__c",
      initialWidth: 160,
      hideDefaultActions: true,
      wrapText: true
    },
    {
      label: "允许报价期间(开始日)",
      fieldName: "Contract_Decide_Start_Date__c",
      initialWidth: 175,
      hideDefaultActions: true,
      wrapText: true
    },
    {
      label: "允许报价期间(结束日)",
      fieldName: "Contract_Decide_End_Date__c",
      initialWidth: 175,
      hideDefaultActions: true,
      wrapText: true
    }
  ];
  //消耗品数据col
  get cols() {
    var cols = [];
    cols.push({
      label: "消耗品名称",
      fieldName: "prodName",
      wrapText: true,
      hideDefaultActions: true,
      sortable: true
      // initialWidth: 136
    });
    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: 84
    });
    cols.push({
      label: "注册证编码号",
      fieldName: "approbation_No",
      wrapText: true,
      hideDefaultActions: true,
      initialWidth: 104
    });
    cols.push({
      label: "注册证效期",
      fieldName: "expiration_Date",
      wrapText: true,
      hideDefaultActions: true,
      initialWidth: 95
    });
    cols.push({
      label: "第3分类",
      fieldName: "prodCategory3",
      wrapText: true,
      hideDefaultActions: true,
      initialWidth: 84,
      sortable: true
    });
    cols.push({
      label: "第4分类",
      fieldName: "prodCategory4",
      wrapText: true,
      hideDefaultActions: true,
      initialWidth: 84,
      sortable: true
    });
    cols.push({
      label: "第5分类",
      fieldName: "prodCategory5",
      wrapText: true,
      hideDefaultActions: true,
      initialWidth: 84,
      sortable: true
    });
    if (this.cansee) {
      cols.push({
        label: "标准单价",
        type: "number",
        typeAttributes: { minimumFractionDigits: 2 },
        fieldName: "prodIntraTradeList",
        hideDefaultActions: true,
        initialWidth: 78
      });
    }
    if (this.editAble) {
      cols.push({
        label: "采购数量",
        type: "customTableInput",
        typeAttributes: {
          recordId: { fieldName: "recordId" },
          inputValue: { fieldName: "consumableCount" },
          upperLimit: { fieldName: "upperlimit" },
          lowerLimit: { fieldName: "lowerlimit" },
          allnumber: { fieldName: "allnumber" },
          valueType: "Number"
    //页面基础数据
    @track editAble;
    @track pageType;
    @track esetId;
    @track keyWords;
    @track coc;
    @track cocId;
    @track userWorkLocation;
    @track accountName;
    @track accountid;
    @track specialCampaign = false;
    @track dealerProductId = [];
    @track category1;
    @track category3 = '';
    @track category4 = '';
    @track category5 = '';
    @track category_Goods;
    @track category3Option = [];
    @track category4Option = [];
    @track category5Option = [];
    @track consumableorderdetailsRecordsview = [];
    @track currentRecord = []; //分页
    @track selectRows = [];
    @track attachmentRecoeds = [];
    @track contactDealer = [];
    @track proLimitAndDate = [];
    @track agencyProType;
    @track agencyProType1;
    @track OSHFLG = false;
    @track bargainPrice;
    @track showOrderDate = false;
    @track showAttUploadDate = false;
    @track edoffersPrice = false;
    @track editDelCommitBtnDisabled = false;
    @track showEditBtn = false;
    @track disabledEditBtn = false;
    @track showPrintSheetBtn = false;
    @track showUploadSheetBtn = false;
    @track disabledUploadSheetBtn = false;
    @track showSubOrderbtn = false;
    @track disabledSubOrderbtn = false;
    @track showSaveOrderbtn1 = false;
    @track showSaveOrderbtn2 = false;
    @track showDeleteBtn = false;
    @track disabledDeleteBtn = false;
    @track showOfferPriceInputBtn = false;
    @track disabledOfferPriceInputBtn = false;
    @track showReapplyBtn = false;
    @track showHospital = false;
    @track showPage = false;
    @track cansee = false;
    @track showSpinner = true;
    @track showPopSpinner = false;
    stylesLoaded = false;
    //是否一直显示提示
    @track isNoteStay = true;
    //排序相关
    @track sortDirection = 'asc';
    @track sortedBy;
    //分页
    @track currentPage = 1;
    @track pageSize = 10;
    // @track totalPage = 0;
    @track pageSizeOptions = [10, 25, 50, 100];
    @track recordStart = 0;
    @track recordEnd = 0;
    //报错提醒
    // @track hasError = false;
    @track errorMsgs = [];
    // @track hasWarning = false;
    @track warningMsgs = [];
    //附件上传
    @track showAttPop = false;
    @track filesUploaded = [];
    @track fileName;
    file;
    fileContents;
    fileReader;
    content;
    //医院搜索
    @track showAttHosPop = false;
    @track hospitalList = [];
    @track searchNameHos;
    @track chooseHospital;
    @track chooseHospitalId;
    @track hospitalId;
    @track hospitalName;
    @track tempidHp;
    @track hosCols = [
        // {label:'医院名称',fieldName:'Name',type:'button',typeAttributes:{label:{fieldName:'Name'},variant:'base'}},
        {
            label: '',
            type: 'button',
            typeAttributes: { label: '选择' },
            initialWidth: 90,
            hideDefaultActions: true,
            wrapText: true
        },
        hideDefaultActions: true,
        initialWidth: 78
      });
    } else {
      cols.push({
        label: "采购数量",
        fieldName: "consumableCount",
        hideDefaultActions: true,
        initialWidth: 78,
        cellAttributes: { alignment: "right" }
      });
    }
    cols.push({
      label: "在库数下限",
      fieldName: "lowerlimit",
      hideDefaultActions: true,
      initialWidth: 86,
      cellAttributes: { alignment: "right" }
    });
    cols.push({
      label: "在库数上限",
      fieldName: "upperlimit",
      hideDefaultActions: true,
      initialWidth: 86,
      cellAttributes: { alignment: "right" }
    });
    // cols.push({label:'有效期库存(盒)',fieldName:'allnumber',hideDefaultActions: true,initialWidth:105,sortable: true});
    cols.push({
      label: "有效期库存(盒)",
      type: "customInventoryColor",
      fieldName: "allnumber",
      typeAttributes: {
        value: { fieldName: "allnumber" },
        upperlimit: { fieldName: "upperlimit" },
        lowerlimit: { fieldName: "lowerlimit" },
        boxPrice: "盒"
      },
      hideDefaultActions: true,
      initialWidth: 122,
      sortable: true
    });
    cols.push({
      label: "有效期库存(个)",
      fieldName: "allnumber_piece",
      hideDefaultActions: true,
      initialWidth: 112,
      cellAttributes: { alignment: "right" }
    });
    return cols;
  }
  //附件cols
  @track attCols = [
    {
      label: "标题",
      fieldName: "attUrl",
      type: "url",
      typeAttributes: {
        label: { fieldName: "fileName" },
        target: "_blank"
      },
      hideDefaultActions: true
    },
    {
      label: "创建人",
      fieldName: "ownerUrl",
      type: "url",
      typeAttributes: {
        label: { fieldName: "ownerName" },
        target: "_blank"
      },
      hideDefaultActions: true
    },
    {
      label: "上传日期",
      fieldName: "updateDate",
      hideDefaultActions: true
    },
    {
      label: "",
      type: "tableCellIcon",
      typeAttributes: {
        iconName: "utility:delete",
        recordId: { fieldName: "recordId" }
      },
      initialWidth: 50,
      hideDefaultActions: true
    }
  ];
  //取得所有被勾选的产品id
  getAllChecked() {
    this.selectRows = [];
    for (var i in this.currentRecord) {
      if (this.currentRecord[i].check) {
        this.selectRows.push(this.currentRecord[i].recordId);
      }
    }
  }
  //勾选操作
  checkRows(event) {
    this.selectRows = [];
    const selectedRows = event.detail.selectedRows;
    for (var i in this.consumableorderdetailsRecordsview) {
      var count = 0;
      for (var j in selectedRows) {
        if (
          this.consumableorderdetailsRecordsview[i].recordId ==
          selectedRows[j].recordId
        ) {
          count++;
          console.log(
            "checkId:" +
              selectedRows[j].recordId +
              "---" +
              this.consumableorderdetailsRecordsview[i].prodName
          );
        {
            label: '医院名称',
            fieldName: 'Name',
            initialWidth: 380,
            wrapText: true,
            hideDefaultActions: true
        },
        {
            label: '省份',
            fieldName: 'StateMaster',
            initialWidth: 80,
            hideDefaultActions: true,
            wrapText: true
        },
        {
            label: '地址',
            fieldName: 'Address__c',
            hideDefaultActions: true,
            wrapText: true
        }
      }
      if (count == 0) {
        this.consumableorderdetailsRecordsview[i].check = false;
      } else {
        this.consumableorderdetailsRecordsview[i].check = true;
        this.selectRows.push(
          this.consumableorderdetailsRecordsview[i].recordId
        );
      }
    }
    for (var i in this.selectRows) {
      console.log("checkId1:" + this.selectRows[i]);
      for (var i in this.currentRecord) {
        if (this.currentRecord[i].recordId == this.selectRows[i]) {
          console.log("currentRecord:" + this.selectRows[i]);
    ];
    //合同搜索
    @track contractLabel;
    @track showConPop = false;
    @track contractList = [];
    @track searchNameCon;
    @track chooseContract;
    @track chooseContractId;
    @track contractId;
    @track contractName;
    @track tempidPp;
    @track conCols = [
        {
            label: '',
            type: 'button',
            typeAttributes: { label: '选择' },
            initialWidth: 90,
            hideDefaultActions: true,
            wrapText: true
        },
        {
            label: '合同名称',
            fieldName: 'Name',
            wrapText: true,
            hideDefaultActions: true
        },
        {
            label: '省份',
            fieldName: 'StateMaster',
            initialWidth: 80,
            hideDefaultActions: true,
            wrapText: true
        },
        {
            label: '申请销售课',
            fieldName: 'Sales_Section__c',
            initialWidth: 160,
            hideDefaultActions: true,
            wrapText: true
        },
        {
            label: '允许报价期间(开始日)',
            fieldName: 'Contract_Decide_Start_Date__c',
            initialWidth: 175,
            hideDefaultActions: true,
            wrapText: true
        },
        {
            label: '允许报价期间(结束日)',
            fieldName: 'Contract_Decide_End_Date__c',
            initialWidth: 175,
            hideDefaultActions: true,
            wrapText: true
        }
      }
    }
  }
    ];
  //采购数量获取
  conCountChange(event) {
    var recordId = event.detail.data.recordId;
    var conCount = event.detail.data.value;
    console.log("countChange:" + recordId + "---" + conCount);
    for (var i in this.consumableorderdetailsRecordsview) {
      if (this.consumableorderdetailsRecordsview[i].recordId == recordId) {
        this.consumableorderdetailsRecordsview[i].esd.Consumable_count__c =
          conCount;
        this.consumableorderdetailsRecordsview[i].consumableCount = conCount;
        if (conCount != null && conCount != 0 && conCount != "") {
          this.consumableorderdetailsRecordsview[i].check = true;
    //消耗品数据col
    get cols() {
        var cols = [];
        cols.push({
            label: '消耗品名称',
            fieldName: 'prodName',
            wrapText: true,
            hideDefaultActions: true,
            sortable: true
            // initialWidth: 136
        });
        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: 84
        });
        cols.push({
            label: '注册证编码号',
            fieldName: 'approbation_No',
            wrapText: true,
            hideDefaultActions: true,
            initialWidth: 104
        });
        cols.push({
            label: '注册证效期',
            fieldName: 'expiration_Date',
            wrapText: true,
            hideDefaultActions: true,
            initialWidth: 95
        });
        cols.push({
            label: '第3分类',
            fieldName: 'prodCategory3',
            wrapText: true,
            hideDefaultActions: true,
            initialWidth: 84,
            sortable: true
        });
        cols.push({
            label: '第4分类',
            fieldName: 'prodCategory4',
            wrapText: true,
            hideDefaultActions: true,
            initialWidth: 84,
            sortable: true
        });
        cols.push({
            label: '第5分类',
            fieldName: 'prodCategory5',
            wrapText: true,
            hideDefaultActions: true,
            initialWidth: 84,
            sortable: true
        });
        if (this.cansee) {
            cols.push({
                label: '标准单价',
                type: 'number',
                typeAttributes: { minimumFractionDigits: 2 },
                fieldName: 'prodIntraTradeList',
                hideDefaultActions: true,
                initialWidth: 78
            });
        }
        if (this.editAble) {
            cols.push({
                label: '采购数量',
                type: 'customTableInput',
                typeAttributes: {
                    recordId: { fieldName: 'recordId' },
                    inputValue: { fieldName: 'consumableCount' },
                    upperLimit: { fieldName: 'upperlimit' },
                    lowerLimit: { fieldName: 'lowerlimit' },
                    allnumber: { fieldName: 'allnumber' },
                    valueType: 'Number'
                },
                hideDefaultActions: true,
                initialWidth: 78
            });
        } else {
          this.consumableorderdetailsRecordsview[i].check = false;
          this.consumableorderdetailsRecordsview[i].esd.Consumable_count__c =
            null;
          this.consumableorderdetailsRecordsview[i].consumableCount = null;
            cols.push({
                label: '采购数量',
                fieldName: 'consumableCount',
                hideDefaultActions: true,
                initialWidth: 78,
                cellAttributes: { alignment: 'right' }
            });
        }
      }
        cols.push({
            label: '在库数下限',
            fieldName: 'lowerlimit',
            hideDefaultActions: true,
            initialWidth: 86,
            cellAttributes: { alignment: 'right' }
        });
        cols.push({
            label: '在库数上限',
            fieldName: 'upperlimit',
            hideDefaultActions: true,
            initialWidth: 86,
            cellAttributes: { alignment: 'right' }
        });
        // cols.push({label:'有效期库存(盒)',fieldName:'allnumber',hideDefaultActions: true,initialWidth:105,sortable: true});
        cols.push({
            label: '有效期库存(盒)',
            type: 'customInventoryColor',
            fieldName: 'allnumber',
            typeAttributes: {
                value: { fieldName: 'allnumber' },
                upperlimit: { fieldName: 'upperlimit' },
                lowerlimit: { fieldName: 'lowerlimit' },
                boxPrice: '盒'
            },
            hideDefaultActions: true,
            initialWidth: 122,
            sortable: true
        });
        cols.push({
            label: '有效期库存(个)',
            fieldName: 'allnumber_piece',
            hideDefaultActions: true,
            initialWidth: 112,
            cellAttributes: { alignment: 'right' }
        });
        return cols;
    }
    this.getAllChecked();
    for (var i in this.currentRecord) {
      if (this.currentRecord[i].recordId == recordId) {
    //附件cols
    @track attCols = [
        {
            label: '标题',
            fieldName: 'attUrl',
            type: 'url',
            typeAttributes: {
                label: { fieldName: 'fileName' },
                target: '_blank'
            },
            hideDefaultActions: true
        },
        {
            label: '创建人',
            fieldName: 'ownerUrl',
            type: 'url',
            typeAttributes: {
                label: { fieldName: 'ownerName' },
                target: '_blank'
            },
            hideDefaultActions: true
        },
        {
            label: '上传日期',
            fieldName: 'updateDate',
            hideDefaultActions: true
        },
        {
            label: '',
            type: 'tableCellIcon',
            typeAttributes: {
                iconName: 'utility:delete',
                recordId: { fieldName: 'recordId' }
            },
            initialWidth: 50,
            hideDefaultActions: true
        }
    ];
    //取得所有被勾选的产品id
    getAllChecked() {
        this.selectRows = [];
        for (var i in this.currentRecord) {
            if (this.currentRecord[i].check) {
                this.selectRows.push(this.currentRecord[i].recordId);
            }
        }
    }
    //勾选操作
    checkRows(event) {
        this.selectRows = [];
        const selectedRows = event.detail.selectedRows;
        for (var i in this.consumableorderdetailsRecordsview) {
            var count = 0;
            for (var j in selectedRows) {
                if (
                    this.consumableorderdetailsRecordsview[i].recordId ==
                    selectedRows[j].recordId
                ) {
                    count++;
                    console.log(
                        'checkId:' +
                            selectedRows[j].recordId +
                            '---' +
                            this.consumableorderdetailsRecordsview[i].prodName
                    );
                }
            }
            if (count == 0) {
                this.consumableorderdetailsRecordsview[i].check = false;
            } else {
                this.consumableorderdetailsRecordsview[i].check = true;
                this.selectRows.push(
                    this.consumableorderdetailsRecordsview[i].recordId
                );
            }
        }
        for (var i in this.selectRows) {
            console.log('checkId1:' + this.selectRows[i]);
            for (var i in this.currentRecord) {
                if (this.currentRecord[i].recordId == this.selectRows[i]) {
                    console.log('currentRecord:' + this.selectRows[i]);
                }
            }
        }
    }
    //采购数量获取
    conCountChange(event) {
        var recordId = event.detail.data.recordId;
        var conCount = event.detail.data.value;
        console.log('countChange:' + recordId + '---' + conCount);
        for (var i in this.consumableorderdetailsRecordsview) {
            if (
                this.consumableorderdetailsRecordsview[i].recordId == recordId
            ) {
                this.consumableorderdetailsRecordsview[
                    i
                ].esd.Consumable_count__c = conCount;
                this.consumableorderdetailsRecordsview[i].consumableCount =
                    conCount;
                if (conCount != null && conCount != 0 && conCount != '') {
                    this.consumableorderdetailsRecordsview[i].check = true;
                } else {
                    this.consumableorderdetailsRecordsview[i].check = false;
                    this.consumableorderdetailsRecordsview[
                        i
                    ].esd.Consumable_count__c = null;
                    this.consumableorderdetailsRecordsview[i].consumableCount =
                        null;
                }
            }
        }
        this.getAllChecked();
        for (var i in this.currentRecord) {
            if (this.currentRecord[i].recordId == recordId) {
                console.log(
                    'currentRecord1:' +
                        this.currentRecord[i].esd.Consumable_count__c
                );
            }
        }
    }
    //采购数量失焦
    conCountBlur(event) {
        var conCount = event.detail.data.value;
        var allnumber = event.detail.data.allnumber;
        var upperLimit = event.detail.data.upperLimit;
        var lowerLimit = event.detail.data.lowerLimit;
        console.log(
          "currentRecord1:" + this.currentRecord[i].esd.Consumable_count__c
            'limit:' +
                conCount +
                '---' +
                allnumber +
                '---' +
                lowerLimit +
                '---' +
                allnumber
        );
      }
        if (
            upperLimit != null &&
            lowerLimit != null &&
            conCount != null &&
            allnumber != null
        ) {
            if (parseInt(allnumber) + parseInt(conCount) > upperLimit) {
                // window.alert("该产品订购数量超出库存上限!");
                this.showMyToast('该产品订购数量超出库存上限!', '', 'error');
            }
            if (parseInt(allnumber) + parseInt(conCount) < lowerLimit) {
                // window.alert("该产品订购数量低于库存下限!");
                this.showMyToast('该产品订购数量低于库存下限!', '', 'error');
            }
        }
    }
  }
  //采购数量失焦
  conCountBlur(event) {
    var conCount = event.detail.data.value;
    var allnumber = event.detail.data.allnumber;
    var upperLimit = event.detail.data.upperLimit;
    var lowerLimit = event.detail.data.lowerLimit;
    console.log(
      "limit:" +
        conCount +
        "---" +
        allnumber +
        "---" +
        lowerLimit +
        "---" +
        allnumber
    );
    if (
      upperLimit != null &&
      lowerLimit != null &&
      conCount != null &&
      allnumber != null
    ) {
      if (parseInt(allnumber) + parseInt(conCount) > upperLimit) {
        // window.alert("该产品订购数量超出库存上限!");
        this.showMyToast("该产品订购数量超出库存上限!", "", "error");
      }
      if (parseInt(allnumber) + parseInt(conCount) < lowerLimit) {
        // window.alert("该产品订购数量低于库存下限!");
        this.showMyToast("该产品订购数量低于库存下限!", "", "error");
      }
    @wire(CurrentPageReference)
    getStateParameters(currentPageReference) {
        console.log('CurrentPageReference');
        if (currentPageReference) {
            this.pageType = currentPageReference.state?.type;
            this.esetId = currentPageReference.state?.ESetid;
            this.keyWords = currentPageReference.state?.KeyWords;
            console.log('type:' + this.pageType);
            console.log('esetId:' + this.esetId);
            console.log('keyWords:' + this.keyWords);
        }
    }
  }
  @wire(CurrentPageReference)
  getStateParameters(currentPageReference) {
    console.log("CurrentPageReference");
    if (currentPageReference) {
      this.pageType = currentPageReference.state?.type;
      this.esetId = currentPageReference.state?.ESetid;
      this.keyWords = currentPageReference.state?.KeyWords;
      console.log("type:" + this.pageType);
      console.log("esetId:" + this.esetId);
      console.log("keyWords:" + this.keyWords);
    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');
                });
        }
    }
  }
  renderedCallback() {
    if (!this.stylesLoaded) {
      Promise.all([loadStyle(this, WrappedHeaderTable)])
        .then(() => {
          console.log("Custom styles loaded");
          this.stylesLoaded = true;
    //页面初始化
    connectedCallback() {
        this.showSpinner = true;
        initPage({
            type: this.pageType,
            esetId: this.esetId,
            keywordStr: this.keyWords
        })
        .catch((error) => {
          console.error("Error loading custom styles");
            .then((result) => {
                this.isNoteStay = result.isNoteStay;
                if (result.result == 'Success') {
                    this.editAble = result.editAble;
                    this.edoffersPrice = result.edoffersPrice;
                    this.cansee = result.cansee;
                    this.editDelCommitBtnDisabled =
                        result.editDelCommitBtnDisabled;
                    this.category3Option = result.category3Option;
                    this.category4Option = result.category4Option;
                    this.category5Option = result.category5Option;
                    this.agencyProType = result.agencyProType;
                    this.agencyProType1 = result.agencyProType1;
                    this.OSHFLG = result.OSHFLG;
                    this.hospitalName = result.hospitalName;
                    this.contractName = result.contractName;
                    this.contractLabel = '经销商有效合同';
                    this.consumableorderdetailsRecordsview =
                        result.consumableorderdetailsRecordsview;
                    this.currentPage = 1;
                    this.showCurrentReocrd();
                    this.getAllChecked();
                    this.attachmentRecoeds = result.attachmentRecoeds;
                    console.log('attSize:' + this.attachmentRecoeds.length);
                    for (var i in this.attachmentRecoeds) {
                        this.attachmentRecoeds[i]['recordId'] =
                            this.attachmentRecoeds[i].Concc.Id;
                        this.attachmentRecoeds[i]['documentId'] =
                            this.attachmentRecoeds[i].Concc.ContentDocumentId;
                        this.attachmentRecoeds[i]['fileFullName'] =
                            this.attachmentRecoeds[i].Concc.Title;
                        var contractionName =
                            this.attachmentRecoeds[i].Concc.Title;
                        // var contractionName = '长文件长文件长文件长文件';
                        if (contractionName.length > 25) {
                            contractionName =
                                contractionName.substr(0, 21) + '...';
                        }
                        this.attachmentRecoeds[i]['fileName'] = contractionName;
                        this.attachmentRecoeds[i]['ownerName'] =
                            this.attachmentRecoeds[i].Concc.Owner.Name;
                        this.attachmentRecoeds[i]['downloadUrl'] =
                            '/sfc/servlet.shepherd/document/download/' +
                            this.attachmentRecoeds[i].Concc.ContentDocumentId +
                            '?operationContext=S1';
                        // var date = this.attachmentRecoeds[i].Concc.CreatedDate;
                        // var year = date.getFullYear();
                        // var month = date.getMonth();
                        // var day = date.getDay();
                        // console.log(year+'-'+month+'-'+day);
                        this.attachmentRecoeds[i]['updateDate'] = new Date(
                            Date.parse(
                                this.attachmentRecoeds[i].Concc.CreatedDate
                            )
                        ).toLocaleString();
                        this.attachmentRecoeds[i]['attUrl'] =
                            '/' + this.attachmentRecoeds[i].Concc.Id;
                        this.attachmentRecoeds[i]['ownerUrl'] =
                            '/' + this.attachmentRecoeds[i].Concc.OwnerId;
                    }
                    this.errorMsgs = result.errorMsgList;
                    this.warningMsgs = result.warningMsgList;
                    this.userWorkLocation = result.userWorkLocation;
                    this.accountName = result.accountName;
                    this.accountid = result.accountid;
                    this.hospitalId = result.hospitalId;
                    this.contractId = result.contractId;
                    this.category_Goods = result.category_Goods;
                    this.specialCampaign = result.specialCampaign;
                    this.dealerProductId = result.dealerProductId;
                    this.contactDealer = result.contactDealer;
                    this.pageType = result.methodType;
                    this.proLimitAndDate = result.proLimitAndDate;
                    console.log(
                        'proLimitAndDate:' +
                            JSON.stringify(this.proLimitAndDate)
                    );
                    this.coc = result.coc;
                    this.cocId = this.coc.Id;
                    if (
                        this.pageType == 'hospitalorder' &&
                        this.agencyProType != 'ET'
                    ) {
                        this.showHospital = true;
                    }
                    if (
                        this.coc.Order_status__c == '已提交' ||
                        this.coc.Order_status__c == '批准'
                    ) {
                        this.showOrderDate = true;
                    }
                    if (this.coc.Consumable_pdf_insert_day__c != null) {
                        this.showAttUploadDate = true;
                    }
                    if (!(this.editAble || this.edoffersPrice)) {
                        this.showEditBtn = true;
                        this.showOfferPriceInputBtn = true;
                    }
                    if (
                        this.coc.Order_status__c == '已提交' ||
                        this.coc.Order_status__c == '批准' ||
                        this.coc.Order_status__c == '驳回'
                    ) {
                        this.disabledEditBtn = true;
                        this.disabledUploadSheetBtn = true;
                        this.disabledSubOrderbtn = true;
                        this.disabledDeleteBtn = true;
                        this.disabledOfferPriceInputBtn = true;
                    }
                    if (
                        !(
                            this.editDelCommitBtnDisabled ||
                            this.editAble ||
                            this.edoffersPrice
                        )
                    ) {
                        this.showPrintSheetBtn = true;
                        this.showUploadSheetBtn = true;
                        this.showSubOrderbtn = true;
                        this.showDeleteBtn = true;
                    }
                    if (
                        (this.editDelCommitBtnDisabled ||
                            this.editAble ||
                            this.edoffersPrice) &&
                        this.coc.Order_status__c != '驳回'
                    ) {
                        this.showSaveOrderbtn1 = true;
                    }
                    if (this.coc.Order_status__c == '驳回' && this.editAble) {
                        this.showSaveOrderbtn2 = true;
                    }
                    if (this.coc.Order_status__c == '驳回' && !this.editAble) {
                        this.showReapplyBtn = true;
                    }
                    this.showSpinner = false;
                    this.showPage = true;
                } else {
                    this.showSpinner = false;
                    console.log('Error:' + result.errorMsg);
                    this.showMyToast(
                        '初始化页面失败',
                        result.errorMsg,
                        'error'
                    );
                }
            })
            .catch((error) => {
                this.showSpinner = false;
                console.log('error:' + error);
                this.showMyToast('初始化页面失败', error, 'error');
            });
    }
    //排序
    onHandleSort(event) {
        //将已经选好了的放到前面,不进行排序
        console.log('sort');
        if (this.editAble) {
            const { fieldName: sortedBy, sortDirection } = event.detail;
            const cloneData = [...this.currentRecord];
            cloneData.sort(
                this.sortBy(sortedBy, sortDirection === 'asc' ? 1 : -1)
            );
            let index = 0;
            let selectedRows = this.template
                .querySelector('c-lex-custom-lightning-datatable')
                .getSelectedRows();
            let selectedRowsIds = [];
            for (var i in selectedRows) {
                selectedRowsIds.push(selectedRows[i].recordId);
            }
            console.log('selectedRowsIds = ' + JSON.stringify(selectedRowsIds));
            for (var i = 0; i < cloneData.length; i++) {
                if (selectedRowsIds.indexOf(cloneData[i].recordId) != -1) {
                    if (i != 0) {
                        let temp = cloneData[index];
                        cloneData[index] = cloneData[i];
                        cloneData[i] = temp;
                    }
                    index++;
                }
            }
            this.currentRecord = cloneData;
            this.sortDirection = sortDirection;
            this.sortedBy = sortedBy;
        } else {
            const { fieldName: sortedBy, sortDirection } = event.detail;
            const cloneData = [...this.currentRecord];
            cloneData.sort(
                this.sortBy(sortedBy, sortDirection === 'asc' ? 1 : -1)
            );
            this.currentRecord = cloneData;
            this.sortDirection = sortDirection;
            this.sortedBy = sortedBy;
        }
    }
    sortBy(field, reverse, primer) {
        const key = primer
            ? function (x) {
                  return primer(x[field]);
              }
            : function (x) {
                  return x[field];
              };
        return function (a, b) {
            a = key(a);
            b = key(b);
            return reverse * ((a > b) - (b > a));
        };
    }
    //是否有警告
    get hasWarning() {
        if (this.warningMsgs == null || this.warningMsgs.length == 0) {
            return false;
        }
        if (this.warningMsgs.length > 0) {
            return true;
        }
    }
    //是否有错误
    get hasError() {
        if (this.errorMsgs == null || this.errorMsgs.length == 0) {
            return false;
        }
        if (this.errorMsgs.length > 0) {
            return true;
        }
    }
    //特价change事件
    offerPriceChange(event) {
        this.coc.Offers_Price__c = event.detail.value;
    }
    //消耗品名称change事件
    category1Change(event) {
        this.category1 = event.detail.value;
    }
    //第三分类change事件
    category3Change(event) {
        this.showSpinner = true;
        this.category3 = event.detail.value;
        this.category4 = '';
        this.category5 = '';
        categoryAllload({
            agencyProTypeStr: this.agencyProType,
            category3Str: this.category3
        }).then((result) => {
            if (result.result == 'Success') {
                this.category4Option = result.category4Option;
                this.category5Option = result.category5Option;
                this.showSpinner = false;
            } else {
                this.showSpinner = false;
                console.log('Error:' + result.errorMsg);
                this.showMyToast('加载分类失败', result.errorMsg, 'error');
            }
        });
    }
  }
  //页面初始化
  connectedCallback() {
    this.showSpinner = true;
    initPage({
      type: this.pageType,
      esetId: this.esetId,
      keywordStr: this.keyWords
    })
      .then((result) => {
        this.isNoteStay = result.isNoteStay;
        if (result.result == "Success") {
          this.editAble = result.editAble;
          this.edoffersPrice = result.edoffersPrice;
          this.cansee = result.cansee;
          this.editDelCommitBtnDisabled = result.editDelCommitBtnDisabled;
          this.category3Option = result.category3Option;
          this.category4Option = result.category4Option;
          this.category5Option = result.category5Option;
          this.agencyProType = result.agencyProType;
          this.agencyProType1 = result.agencyProType1;
          this.OSHFLG = result.OSHFLG;
          this.hospitalName = result.hospitalName;
          this.contractName = result.contractName;
          this.contractLabel = "经销商有效合同";
          this.consumableorderdetailsRecordsview =
            result.consumableorderdetailsRecordsview;
          this.currentPage = 1;
          this.showCurrentReocrd();
          this.getAllChecked();
          this.attachmentRecoeds = result.attachmentRecoeds;
          console.log("attSize:" + this.attachmentRecoeds.length);
          for (var i in this.attachmentRecoeds) {
            this.attachmentRecoeds[i]["recordId"] =
              this.attachmentRecoeds[i].Concc.Id;
            this.attachmentRecoeds[i]["documentId"] =
              this.attachmentRecoeds[i].Concc.ContentDocumentId;
            this.attachmentRecoeds[i]["fileFullName"] =
              this.attachmentRecoeds[i].Concc.Title;
            var contractionName = this.attachmentRecoeds[i].Concc.Title;
            // var contractionName = '长文件长文件长文件长文件';
            if (contractionName.length > 25) {
              contractionName = contractionName.substr(0, 21) + "...";
    //第四分类change事件
    category4Change(event) {
        this.showSpinner = true;
        this.category4 = event.detail.value;
        this.category5 = '';
        categoryload({
            agencyProTypeStr: this.agencyProType,
            category3Str: this.category3,
            category4Str: this.category4
        }).then((result) => {
            if (result.result == 'Success') {
                this.category4Option = result.category4Option;
                this.category5Option = result.category5Option;
                this.showSpinner = false;
            } else {
                this.showSpinner = false;
                console.log('Error:' + result.errorMsg);
                this.showMyToast('加载分类失败', result.errorMsg, 'error');
            }
            this.attachmentRecoeds[i]["fileName"] = contractionName;
            this.attachmentRecoeds[i]["ownerName"] =
              this.attachmentRecoeds[i].Concc.Owner.Name;
            this.attachmentRecoeds[i]["downloadUrl"] =
              "/sfc/servlet.shepherd/document/download/" +
              this.attachmentRecoeds[i].Concc.ContentDocumentId +
              "?operationContext=S1";
            // var date = this.attachmentRecoeds[i].Concc.CreatedDate;
            // var year = date.getFullYear();
            // var month = date.getMonth();
            // var day = date.getDay();
            // console.log(year+'-'+month+'-'+day);
            this.attachmentRecoeds[i]["updateDate"] = new Date(
              Date.parse(this.attachmentRecoeds[i].Concc.CreatedDate)
            ).toLocaleString();
            this.attachmentRecoeds[i]["attUrl"] =
              "/" + this.attachmentRecoeds[i].Concc.Id;
            this.attachmentRecoeds[i]["ownerUrl"] =
              "/" + this.attachmentRecoeds[i].Concc.OwnerId;
          }
          this.errorMsgs = result.errorMsgList;
          this.warningMsgs = result.warningMsgList;
          this.userWorkLocation = result.userWorkLocation;
          this.accountName = result.accountName;
          this.accountid = result.accountid;
          this.hospitalId = result.hospitalId;
          this.contractId = result.contractId;
          this.category_Goods = result.category_Goods;
          this.specialCampaign = result.specialCampaign;
          this.dealerProductId = result.dealerProductId;
          this.contactDealer = result.contactDealer;
          this.pageType = result.methodType;
          this.proLimitAndDate = result.proLimitAndDate;
          console.log(
            "proLimitAndDate:" + JSON.stringify(this.proLimitAndDate)
          );
          this.coc = result.coc;
          this.cocId = this.coc.Id;
          if (this.pageType == "hospitalorder" && this.agencyProType != "ET") {
            this.showHospital = true;
          }
          if (
            this.coc.Order_status__c == "已提交" ||
            this.coc.Order_status__c == "批准"
          ) {
            this.showOrderDate = true;
          }
          if (this.coc.Consumable_pdf_insert_day__c != null) {
            this.showAttUploadDate = true;
          }
          if (!(this.editAble || this.edoffersPrice)) {
        });
    }
    //第五分类change事件
    category5Change(event) {
        this.category5 = event.detail.value;
    }
    //搜索产品
    searchProduct(event) {
        this.showSpinner = true;
        searchConsumableorderdetails({
            userWorkLocationStr: this.userWorkLocation,
            agencyProTypeStr: this.agencyProType,
            accountNameStr: this.accountName,
            accountIdStr: this.accountid,
            contractIdStr: this.contractId,
            hospitalIdStr: this.hospitalId,
            category1Str: this.category1,
            category3Str: this.category3,
            category4Str: this.category4,
            category5Str: this.category5,
            category_GoodStr: this.category_Goods,
            specialCampaignStr: this.specialCampaign,
            dealerProductIdStr: JSON.stringify(this.dealerProductId),
            methodTypeStr: this.pageType,
            editAbleStr: this.editAble,
            consumableorderdetailsRecordsviewStr: JSON.stringify(
                this.consumableorderdetailsRecordsview
            ),
            proLimitAndDateList: this.proLimitAndDate
        })
            .then((result) => {
                if (result.result == 'Success') {
                    this.consumableorderdetailsRecordsview =
                        result.consumableorderdetailsRecordsview;
                    this.currentPage = 1;
                    this.currentRecord = [];
                    this.showCurrentReocrd();
                    this.getAllChecked();
                    this.showSpinner = false;
                    this.errorMsgs = result.errorMsgList;
                    this.warningMsgs = result.warningMsgList;
                    // this.hasError = result.hasError;
                    // this.hasWarning = result.hasWarning;
                    this.showMyToast('搜索成功', result.errorMsg, 'success');
                } else {
                    this.showSpinner = false;
                    console.log('Error:' + result.errorMsg);
                    if (result.errorMsg == '没有搜索到相关数据') {
                        this.showMyToast(result.errorMsg, '', 'error');
                    } else {
                        this.showMyToast('搜索失败', result.errorMsg, 'error');
                    }
                }
            })
            .catch((error) => {
                console.log('Error:' + error);
            });
    }
    //清除搜索栏
    clear(event) {
        this.category1 = '';
        this.category3 = '';
        this.category4 = '';
        this.category5 = '';
        this.showSpinner = true;
        searchConsumableorderdetails({
            userWorkLocationStr: this.userWorkLocation,
            agencyProTypeStr: this.agencyProType,
            accountNameStr: this.accountName,
            accountIdStr: this.accountid,
            contractIdStr: this.contractId,
            hospitalIdStr: this.hospitalId,
            category1Str: this.category1,
            category3Str: this.category3,
            category4Str: this.category4,
            category5Str: this.category5,
            category_GoodStr: this.category_Goods,
            specialCampaignStr: this.specialCampaign,
            dealerProductIdStr: JSON.stringify(this.dealerProductId),
            methodTypeStr: this.pageType,
            editAbleStr: this.editAble,
            consumableorderdetailsRecordsviewStr: JSON.stringify(
                this.consumableorderdetailsRecordsview
            ),
            proLimitAndDateList: this.proLimitAndDate
        }).then((result) => {
            if (result.result == 'Success') {
                this.consumableorderdetailsRecordsview =
                    result.consumableorderdetailsRecordsview;
                this.currentPage = 1;
                this.currentRecord = [];
                this.showCurrentReocrd();
                this.getAllChecked();
                this.showSpinner = false;
                this.showMyToast('搜索成功', result.errorMsg, 'success');
            } else {
                this.showSpinner = false;
                console.log('Error:' + result.errorMsg);
                if (result.errorMsg == '没有搜索到相关数据') {
                    this.showMyToast(result.errorMsg, '', 'error');
                } else {
                    this.showMyToast('搜索失败', result.errorMsg, 'error');
                }
            }
        });
    }
    //选择所有
    checkAll(event) {
        for (
            let i = 0, len = this.consumableorderdetailsRecordsview.length;
            i < len;
            i++
        ) {
            this.consumableorderdetailsRecordsview[i].check =
                event.target.checked;
        }
    }
    //选择
    check(event) {
        let index = event.target.getAttribute('data-index');
        this.consumableorderdetailsRecordsview[index].check =
            event.target.checked;
    }
    //采购数量change事件
    // consumableCountChange(event){
    //    let index = event.target.getAttribute("data-index");
    //    var value = event.target.value;
    //    this.consumableorderdetailsRecordsview[index].esd.Consumable_count__c = value;
    //    if(isNaN(value)){
    //       value=0.00;
    //    }
    //    if(value != null && value !=0 && value!=''){
    //       this.consumableorderdetailsRecordsview[index].check = true;
    //    }else{
    //       this.consumableorderdetailsRecordsview[index].check = false;
    //    }
    // }
    //保存订单
    saveOrder(event) {
        this.showSpinner = true;
        console.log('start save');
        save({
            contractNameStr: this.contractName,
            cocStr: JSON.stringify(this.coc),
            agencyProTypeStr: this.agencyProType,
            accountidStr: this.accountid,
            consumableorderdetailsRecordsviewStr: JSON.stringify(
                this.consumableorderdetailsRecordsview
            ),
            contactDealerStr: JSON.stringify(this.contactDealer),
            methodTypeStr: this.pageType,
            eSetIdStr: this.esetId,
            hospitalIdStr: this.hospitalId,
            contractIdStr: this.contractId,
            agencyProType1Str: this.agencyProType1,
            OSHFLGStr: this.OSHFLG
        }).then((result) => {
            this.showSpinner = false;
            if (result.result == 'Success') {
                this.esetId = result.eSetId;
                const config = {
                    type: 'standard__webPage',
                    attributes: {
                        url:
                            '/lexconsumable?ESetid=' +
                            this.esetId +
                            '&type=' +
                            this.pageType
                    }
                };
                this[NavigationMixin.Navigate](config);
            } else {
                this.showSpinner = false;
                console.log('Error:' + result.errorMsg);
                this.showMyToast('保存失败', result.errorMsg, 'error');
            }
        });
    }
    //保存订单(驳回)
    orderCopy(event) {
        this.showSpinner = true;
        ordrCopy({
            contractNameStr: this.contractName,
            cocStr: JSON.stringify(this.coc),
            agencyProTypeStr: this.agencyProType,
            accountidStr: this.accountid,
            consumableorderdetailsRecordsviewStr: JSON.stringify(
                this.consumableorderdetailsRecordsview
            ),
            contactDealerStr: JSON.stringify(this.contactDealer),
            methodTypeStr: this.pageType,
            hospitalIdStr: this.hospitalId,
            contractIdStr: this.contractId,
            agencyProType1Str: this.agencyProType1,
            OSHFLGStr: this.OSHFLG
        }).then((result) => {
            this.showSpinner = false;
            if (result.result == 'Success') {
                this.esetId = result.eSetId;
                const config = {
                    type: 'standard__webPage',
                    attributes: {
                        url:
                            '/lexconsumable?ESetid=' +
                            this.esetId +
                            '&type=' +
                            this.pageType
                    }
                };
                this[NavigationMixin.Navigate](config);
            } else {
                this.showSpinner = false;
                console.log('Error:' + result.errorMsg);
                this.showMyToast('保存失败', result.errorMsg, 'error');
            }
        });
    }
    //编辑
    editOrder(event) {
        setEditAble({ eSetidStr: this.esetId }).then((result) => {
            if (result.result == 'Success') {
                const config = {
                    type: 'standard__webPage',
                    attributes: {
                        url: result.url
                    }
                };
                this[NavigationMixin.Navigate](config);
            } else {
                this.showSpinner = false;
                console.log('Error:' + result.errorMsg);
                this.showMyToast('编辑失败', result.errorMsg, 'error');
            }
        });
    }
    //打印配置单
    printOrder(event) {
        var site = window.location.origin;
        const config = {
            type: 'standard__webPage',
            attributes: {
                url:
                    site + '/consumable/PrintConsumblePDF?ESetid=' + this.esetId
            }
        };
        this[NavigationMixin.Navigate](config);
    }
    //上传配置单
    uploadOrder(event) {
        this.showAttPop = true;
    }
    //提交订单
    submitOrder(event) {
        sorder({ eSetidStr: this.esetId, accountidStr: this.accountid })
            .then((result) => {
                if (result.result == 'Success') {
                    const config = {
                        type: 'standard__webPage',
                        attributes: {
                            url: result.url
                        }
                    };
                    this[NavigationMixin.Navigate](config);
                } else {
                    this.showSpinner = false;
                    this.errorMsgs = result.errorMsgList;
                    this.warningMsgs = result.warningMsgList;
                    console.log('Error:' + result.errorMsg);
                    if (result.errorMsg.indexOf('请上传订货配置单附件') != -1) {
                        result.errorMsg = '请上传订货配置单附件';
                    }
                    this.showMyToast('提交失败', result.errorMsg, 'error');
                }
            })
            .catch((error) => {
                console.log('Error:' + error);
            });
    }
    //删除订单
    deleteOrder(event) {
        if (!window.confirm('删除是不可恢复的,你确认要删除吗?')) {
            return;
        }
        delConsumable({ eSetidStr: this.esetId }).then((result) => {
            if (result.result == 'Success') {
                const config = {
                    type: 'standard__webPage',
                    attributes: {
                        url: result.url
                    }
                };
                this[NavigationMixin.Navigate](config);
            } else {
                this.showSpinner = false;
                console.log('Error:' + result.errorMsg);
                this.showMyToast('删除失败', result.errorMsg, 'error');
            }
        });
    }
    //特价金额录入
    inputOfferPrice(event) {
        this.edoffersPrice = true;
        if (!(this.editAble || this.edoffersPrice)) {
            this.showEditBtn = true;
            this.showOfferPriceInputBtn = true;
          }
          if (
            this.coc.Order_status__c == "已提交" ||
            this.coc.Order_status__c == "批准" ||
            this.coc.Order_status__c == "驳回"
          ) {
            this.disabledEditBtn = true;
            this.disabledUploadSheetBtn = true;
            this.disabledSubOrderbtn = true;
            this.disabledDeleteBtn = true;
            this.disabledOfferPriceInputBtn = true;
          }
          if (
        } else {
            this.showEditBtn = false;
            this.showOfferPriceInputBtn = false;
        }
        if (
            !(
              this.editDelCommitBtnDisabled ||
              this.editAble ||
              this.edoffersPrice
                this.editDelCommitBtnDisabled ||
                this.editAble ||
                this.edoffersPrice
            )
          ) {
        ) {
            this.showPrintSheetBtn = true;
            this.showUploadSheetBtn = true;
            this.showSubOrderbtn = true;
            this.showDeleteBtn = true;
          }
          if (
        } else {
            this.showPrintSheetBtn = false;
            this.showUploadSheetBtn = false;
            this.showSubOrderbtn = false;
            this.showDeleteBtn = false;
        }
        if (
            (this.editDelCommitBtnDisabled ||
              this.editAble ||
              this.edoffersPrice) &&
            this.coc.Order_status__c != "驳回"
          ) {
                this.editAble ||
                this.edoffersPrice) &&
            this.coc.Order_status__c != '驳回'
        ) {
            this.showSaveOrderbtn1 = true;
          }
          if (this.coc.Order_status__c == "驳回" && this.editAble) {
            this.showSaveOrderbtn2 = true;
          }
          if (this.coc.Order_status__c == "驳回" && !this.editAble) {
            this.showReapplyBtn = true;
          }
          this.showSpinner = false;
          this.showPage = true;
        } else {
          this.showSpinner = false;
          console.log("Error:" + result.errorMsg);
          this.showMyToast("初始化页面失败", result.errorMsg, "error");
            this.showSaveOrderbtn1 = false;
        }
      })
      .catch((error) => {
        this.showSpinner = false;
        console.log("error:" + error);
        this.showMyToast("初始化页面失败", error, "error");
      });
  }
    }
  //排序
  onHandleSort(event) {
    //将已经选好了的放到前面,不进行排序
    console.log("sort");
    if (this.editAble) {
      const { fieldName: sortedBy, sortDirection } = event.detail;
      const cloneData = [...this.currentRecord];
      cloneData.sort(this.sortBy(sortedBy, sortDirection === "asc" ? 1 : -1));
      let index = 0;
      let selectedRows = this.template
        .querySelector("c-lex-custom-lightning-datatable")
        .getSelectedRows();
      let selectedRowsIds = [];
      for (var i in selectedRows) {
        selectedRowsIds.push(selectedRows[i].recordId);
      }
      console.log("selectedRowsIds = " + JSON.stringify(selectedRowsIds));
      for (var i = 0; i < cloneData.length; i++) {
        if (selectedRowsIds.indexOf(cloneData[i].recordId) != -1) {
          if (i != 0) {
            let temp = cloneData[index];
            cloneData[index] = cloneData[i];
            cloneData[i] = temp;
          }
          index++;
    //再申请
    reapplyOrder(event) {
        backOrder({ eSetidStr: this.esetId }).then((result) => {
            if (result.result == 'Success') {
                const config = {
                    type: 'standard__webPage',
                    attributes: {
                        url: result.url
                    }
                };
                this[NavigationMixin.Navigate](config);
            } else {
                this.showSpinner = false;
                console.log('Error:' + result.errorMsg);
                this.showMyToast('再申请失败', result.errorMsg, 'error');
            }
        });
    }
    //附件change事件
    attChange(event) {
        if (event.target.files.length > 0) {
            this.filesUploaded = event.target.files;
            this.fileName = event.target.files[0].name;
            console.log('this.fileName:' + this.fileName);
        }
      }
      this.currentRecord = cloneData;
      this.sortDirection = sortDirection;
      this.sortedBy = sortedBy;
    } else {
      const { fieldName: sortedBy, sortDirection } = event.detail;
      const cloneData = [...this.currentRecord];
      cloneData.sort(this.sortBy(sortedBy, sortDirection === "asc" ? 1 : -1));
      this.currentRecord = cloneData;
      this.sortDirection = sortDirection;
      this.sortedBy = sortedBy;
    }
  }
  sortBy(field, reverse, primer) {
    const key = primer
      ? function (x) {
          return primer(x[field]);
        }
      : function (x) {
          return x[field];
        };
    return function (a, b) {
      a = key(a);
      b = key(b);
      return reverse * ((a > b) - (b > a));
    };
  }
  //是否有警告
  get hasWarning() {
    if (this.warningMsgs == null || this.warningMsgs.length == 0) {
      return false;
    }
    if (this.warningMsgs.length > 0) {
      return true;
    }
  }
  //是否有错误
  get hasError() {
    if (this.errorMsgs == null || this.errorMsgs.length == 0) {
      return false;
    }
    if (this.errorMsgs.length > 0) {
      return true;
    }
  }
  //特价change事件
  offerPriceChange(event) {
    this.coc.Offers_Price__c = event.detail.value;
  }
  //消耗品名称change事件
  category1Change(event) {
    this.category1 = event.detail.value;
  }
  //第三分类change事件
  category3Change(event) {
    this.showSpinner = true;
    this.category3 = event.detail.value;
    this.category4 = "";
    this.category5 = "";
    categoryAllload({
      agencyProTypeStr: this.agencyProType,
      category3Str: this.category3
    }).then((result) => {
      if (result.result == "Success") {
        this.category4Option = result.category4Option;
        this.category5Option = result.category5Option;
        this.showSpinner = false;
      } else {
        this.showSpinner = false;
        console.log("Error:" + result.errorMsg);
        this.showMyToast("加载分类失败", result.errorMsg, "error");
      }
    });
  }
  //第四分类change事件
  category4Change(event) {
    this.showSpinner = true;
    this.category4 = event.detail.value;
    this.category5 = "";
    categoryload({
      agencyProTypeStr: this.agencyProType,
      category3Str: this.category3,
      category4Str: this.category4
    }).then((result) => {
      if (result.result == "Success") {
        this.category4Option = result.category4Option;
        this.category5Option = result.category5Option;
        this.showSpinner = false;
      } else {
        this.showSpinner = false;
        console.log("Error:" + result.errorMsg);
        this.showMyToast("加载分类失败", result.errorMsg, "error");
      }
    });
  }
  //第五分类change事件
  category5Change(event) {
    this.category5 = event.detail.value;
  }
  //搜索产品
  searchProduct(event) {
    this.showSpinner = true;
    searchConsumableorderdetails({
      userWorkLocationStr: this.userWorkLocation,
      agencyProTypeStr: this.agencyProType,
      accountNameStr: this.accountName,
      accountIdStr: this.accountid,
      contractIdStr: this.contractId,
      hospitalIdStr: this.hospitalId,
      category1Str: this.category1,
      category3Str: this.category3,
      category4Str: this.category4,
      category5Str: this.category5,
      category_GoodStr: this.category_Goods,
      specialCampaignStr: this.specialCampaign,
      dealerProductIdStr: JSON.stringify(this.dealerProductId),
      methodTypeStr: this.pageType,
      editAbleStr: this.editAble,
      consumableorderdetailsRecordsviewStr: JSON.stringify(
        this.consumableorderdetailsRecordsview
      ),
      proLimitAndDateList: this.proLimitAndDate
    })
      .then((result) => {
        if (result.result == "Success") {
          this.consumableorderdetailsRecordsview =
            result.consumableorderdetailsRecordsview;
          this.currentPage = 1;
          this.currentRecord = [];
          this.showCurrentReocrd();
          this.getAllChecked();
          this.showSpinner = false;
          this.errorMsgs = result.errorMsgList;
          this.warningMsgs = result.warningMsgList;
          // this.hasError = result.hasError;
          // this.hasWarning = result.hasWarning;
          this.showMyToast("搜索成功", result.errorMsg, "success");
    //是否显示附件移除
    get attDelBtn() {
        if (
            this.fileName != '' &&
            this.fileName != null &&
            this.fileName != '请选择一个文件上传'
        ) {
            return true;
        } else {
          this.showSpinner = false;
          console.log("Error:" + result.errorMsg);
          if (result.errorMsg == "没有搜索到相关数据") {
            this.showMyToast(result.errorMsg, "", "error");
          } else {
            this.showMyToast("搜索失败", result.errorMsg, "error");
          }
            return false;
        }
      })
      .catch((error) => {
        console.log("Error:" + error);
      });
  }
    }
  //清除搜索栏
  clear(event) {
    this.category1 = "";
    this.category3 = "";
    this.category4 = "";
    this.category5 = "";
    this.showSpinner = true;
    searchConsumableorderdetails({
      userWorkLocationStr: this.userWorkLocation,
      agencyProTypeStr: this.agencyProType,
      accountNameStr: this.accountName,
      accountIdStr: this.accountid,
      contractIdStr: this.contractId,
      hospitalIdStr: this.hospitalId,
      category1Str: this.category1,
      category3Str: this.category3,
      category4Str: this.category4,
      category5Str: this.category5,
      category_GoodStr: this.category_Goods,
      specialCampaignStr: this.specialCampaign,
      dealerProductIdStr: JSON.stringify(this.dealerProductId),
      methodTypeStr: this.pageType,
      editAbleStr: this.editAble,
      consumableorderdetailsRecordsviewStr: JSON.stringify(
        this.consumableorderdetailsRecordsview
      ),
      proLimitAndDateList: this.proLimitAndDate
    }).then((result) => {
      if (result.result == "Success") {
        this.consumableorderdetailsRecordsview =
          result.consumableorderdetailsRecordsview;
    //关闭附件弹窗
    closePop() {
        this.showAttPop = false;
        this.filesUploaded = [];
        this.fileName = null;
    }
    //移除附件
    removeAtt() {
        this.filesUploaded = [];
        this.fileName = '';
    }
    //上传附件
    uploadAtt(event) {
        if (this.filesUploaded.length > 0) {
            this.file = this.filesUploaded[0];
            if (this.file.size > this.MAX_FILE_SIZE) {
                window.console.log('文件过大');
                return;
            }
            this.fileReader = new FileReader();
            this.fileReader.onloadend = () => {
                this.fileContents = this.fileReader.result;
                let base64 = 'base64,';
                this.content =
                    this.fileContents.indexOf(base64) + base64.length;
                this.fileContents = this.fileContents.substring(this.content);
                this.saveToFile();
            };
            this.fileReader.readAsDataURL(this.file);
        } else {
            this.fileName = '请选择一个文件上传';
        }
    }
    //调用上传附件后台方法
    saveToFile() {
        this.showPopSpinner = true;
        filesUpload({
            pId: this.esetId,
            fileName: this.file.name,
            base64Data: encodeURIComponent(this.fileContents)
        })
            .then((result) => {
                this.showPopSpinner = false;
                if (result.result == 'Success') {
                    this.closePop();
                    window.location.reload();
                } else {
                    console.log('Error:' + result.errorMsg);
                    this.showMyToast('上传失败', result.errorMsg, 'error');
                }
            })
            .catch((error) => {
                this.showPopSpinner = false;
                this.showMyToast('上传失败', error, 'error');
            });
    }
    //删除附件
    deleteAtt(event) {
        this.showSpinner = true;
        var recordId = event.target.getAttribute('data-fileid');
        console.log('attid:' + recordId);
        deleteAtt({ contentVersionId: recordId, cocId: this.esetId })
            .then((result) => {
                this.showSpinner = false;
                if (result.result == 'Success') {
                    window.location.reload();
                } else {
                    console.log('Error:' + result.errorMsg);
                    this.showMyToast('删除失败', result.errorMsg, 'error');
                }
            })
            .catch((error) => {
                this.showSpinner = false;
                console.log('Error:' + error);
                this.showMyToast('删除失败', JSON.stringify(error), 'error');
            });
    }
    //预览附件
    previweAtt(event) {
        var recordId = event.target.getAttribute('data-fileid');
        console.log(recordId);
        this[NavigationMixin.Navigate]({
            type: 'standard__namedPage',
            attributes: {
                pageName: 'filePreview'
            },
            state: {
                recordIds: recordId,
                selectedRecordId: recordId
            }
        });
    }
    //打开搜索弹窗,并初始化弹窗
    showSearchHos(event) {
        initHospital()
            .then((result) => {
                if (result.result == 'Success') {
                    this.showAttHosPop = true;
                    this.hospitalList = result.attList;
                    for (var i in this.hospitalList) {
                        if (this.hospitalList[i].State_Master__c) {
                            this.hospitalList[i]['StateMaster'] =
                                this.hospitalList[i].State_Master__r.Name;
                        }
                    }
                } else {
                    console.log('Error:' + result.errorMsg);
                    this.showMyToast(
                        '初始化检索医院页面失败',
                        result.errorMsg,
                        'error'
                    );
                }
            })
            .catch((error) => {
                console.log('Error:' + error);
                this.showMyToast('初始化检索医院页面失败', error, 'error');
            });
    }
    //检索医院
    searchHos(event) {
        searchHospital({
            searchName: this.searchNameHos,
            accountId: this.accountid
        })
            .then((result) => {
                if (result.result == 'Success') {
                    this.hospitalList = result.attList;
                    for (var i in this.hospitalList) {
                        if (this.hospitalList[i].State_Master__c) {
                            this.hospitalList[i]['StateMaster'] =
                                this.hospitalList[i].State_Master__r.Name;
                        }
                    }
                } else {
                    console.log('Error:' + result.errorMsg);
                    this.showMyToast('搜索失败', result.errorMsg, 'error');
                }
            })
            .catch((error) => {
                console.log('Error:' + error);
                this.showMyToast('搜索失败', error, 'error');
            });
    }
    //医院名称change
    searchNameHosChange(event) {
        this.searchNameHos = event.detail.value;
    }
    //关闭弹窗
    closeHospitalPop() {
        this.showAttHosPop = false;
        this.chooseHospital = '';
        this.chooseHospitalId = '';
    }
    // //选择医院
    // chooseHos(event){
    //    var hosName = event.target.getAttribute("data-name");
    //    var hosid = event.target.getAttribute("data-hosid");
    //    console.log('hos:'+hosName+'---'+hosid);
    //    this.chooseHospital = hosName;
    //    this.chooseHospitalId = hosid;
    // }
    changeHos(event) {
        this.hospitalName = event.detail.value;
    }
    changeCon(event) {
        this.contractName = event.detail.value;
    }
    chooseHos(event) {
        const row = event.detail.row;
        this.chooseHospitalId = row.Id;
        this.chooseHospital = row.Name;
        console.log('row.Id:' + row.Id);
        console.log('row.Name:' + row.Name);
        this.confirmHospital();
    }
    //确认选择医院
    confirmHospital() {
        if (this.chooseHospital != '' && this.chooseHospital != null) {
            this.hospitalId = this.chooseHospitalId;
            this.tempidHp = this.chooseHospitalId;
            this.hospitalName = this.chooseHospital;
            this.closeHospitalPop();
            //消除警告
            var arr = [];
            for (var i in this.warningMsgs) {
                if (this.warningMsgs[i] != '请选择医院') {
                    arr.push(this.warningMsgs[i]);
                }
            }
            this.warningMsgs = arr;
            if (this.tempidHp != 'tempId' && this.tempidHp != '') {
                searchorderdetails({
                    methodTypeStr: this.pageType,
                    accountIdStr: this.accountid,
                    hospitalIdStr: this.hospitalId,
                    contractIdStr: this.contractId,
                    userWorkLocationStr: this.userWorkLocation,
                    accountNameStr: this.accountName,
                    proLimitAndDateList: this.proLimitAndDate,
                    editAbleStr: this.editAble
                })
                    .then((result) => {
                        if (result.result == 'Success') {
                            this.consumableorderdetailsRecordsview =
                                result.consumableorderdetailsRecordsview;
                            this.currentPage = 1;
                            this.currentRecord = [];
                            this.showCurrentReocrd();
                            this.getAllChecked();
                            this.showMyToast(
                                '搜索成功',
                                result.errorMsg,
                                'success'
                            );
                        } else {
                            console.log('Error:' + result.errorMsg);
                            if (result.errorMsg == '没有搜索到相关数据') {
                                this.showMyToast(result.errorMsg, '', 'error');
                            } else {
                                this.showMyToast(
                                    '搜索产品失败',
                                    result.errorMsg,
                                    'error'
                                );
                            }
                        }
                    })
                    .catch((error) => {
                        console.log('Error:' + error);
                        this.showMyToast('搜索产品失败', error, 'error');
                    });
                this.tempidHp = 'tempId';
            }
        } else {
            this.showMyToast('请选择医院', '', 'error');
        }
    }
    //打开合同检索弹窗并初始化
    showSearchCon() {
        initContract({ ctype: this.agencyProType1 })
            .then((result) => {
                if (result.result == 'Success') {
                    this.showConPop = true;
                    this.contractList = result.attList;
                    for (var i in this.contractList) {
                        if (this.contractList[i].State_Master__c) {
                            this.contractList[i]['StateMaster'] =
                                this.contractList[i].State_Master__r.Name;
                        }
                    }
                } else {
                    console.log('Error:' + result.errorMsg);
                    this.showMyToast(
                        '初始化检索合同页面失败',
                        result.errorMsg,
                        'error'
                    );
                }
            })
            .catch((error) => {
                console.log('Error:' + error);
                this.showMyToast('初始化检索合同页面失败', error, 'error');
            });
    }
    //检索合同
    searchCon() {
        searchContract({
            searchName: this.searchNameCon,
            accountId: this.accountid,
            ctype: this.agencyProType1,
            OSHFLGStr: this.OSHFLG
        })
            .then((result) => {
                if (result.result == 'Success') {
                    this.contractList = result.attList;
                    for (var i in this.contractList) {
                        if (this.contractList[i].State_Master__c) {
                            this.contractList[i]['StateMaster'] =
                                this.contractList[i].State_Master__r.Name;
                        }
                    }
                } else {
                    console.log('Error:' + result.errorMsg);
                    this.showMyToast('搜索失败', result.errorMsg, 'error');
                }
            })
            .catch((error) => {
                console.log('Error:' + error);
                this.showMyToast('搜索失败', error, 'error');
            });
    }
    searchNameConChange(event) {
        this.searchNameCon = event.detail.value;
    }
    //关闭弹窗
    closeContractPop() {
        this.showConPop = false;
        this.chooseContract = '';
        this.chooseContractId = '';
    }
    //选择合同
    // chooseCon(event){
    //    var conName = event.target.getAttribute("data-name");
    //    var conid = event.target.getAttribute("data-hosid");
    //    console.log('hos:'+conName+'---'+conid);
    //    this.chooseContract = conName;
    //    this.chooseContractId = conid;
    // }
    chooseCon(event) {
        const row = event.detail.row;
        this.chooseContractId = row.Id;
        this.chooseContract = row.Name;
        console.log('row.Id:' + row.Id);
        console.log('row.Name:' + row.Name);
        this.confirmContract();
    }
    //确认选择合同
    confirmContract() {
        if (this.chooseContract != '' && this.chooseContract != null) {
            this.contractId = this.chooseContractId;
            this.tempidPp = this.chooseContractId;
            this.contractName = this.chooseContract;
            this.closeContractPop();
            if (
                this.tempidPp != 'tempId' &&
                this.tempidPp != '' &&
                this.contractId != '' &&
                this.pageType == 'promotionorder'
            ) {
                searchorderdetails({
                    methodTypeStr: this.pageType,
                    accountIdStr: this.accountid,
                    hospitalIdStr: this.hospitalId,
                    contractIdStr: this.contractId,
                    userWorkLocationStr: this.userWorkLocation,
                    accountNameStr: this.accountName,
                    proLimitAndDateList: this.proLimitAndDate,
                    editAbleStr: this.editAble
                })
                    .then((result) => {
                        if (result.result == 'Success') {
                            this.consumableorderdetailsRecordsview =
                                result.consumableorderdetailsRecordsview;
                            this.currentPage = 1;
                            this.currentRecord = [];
                            this.showCurrentReocrd();
                            this.getAllChecked();
                            this.showMyToast(
                                '搜索成功',
                                result.errorMsg,
                                'success'
                            );
                        } else {
                            console.log('Error:' + result.errorMsg);
                            if (result.errorMsg == '没有搜索到相关数据') {
                                this.showMyToast(result.errorMsg, '', 'error');
                            } else {
                                this.showMyToast(
                                    '搜索产品失败',
                                    result.errorMsg,
                                    'error'
                                );
                            }
                        }
                    })
                    .catch((error) => {
                        console.log('Error:' + error);
                        this.showMyToast('搜索产品失败', error, 'error');
                    });
                this.tempidPp = 'tempId';
            }
        } else {
            this.showMyToast('请选择合同', '', 'error');
        }
    }
    showMyToast(title, message, variant) {
        console.log('show custom message');
        var iconName = '';
        var content = '';
        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>';
        }
        this.template
            .querySelector('c-common-toast')
            .showToast(variant, content, iconName, 10000);
        // var mode;
        // if(this.isNoteStay){
        //     mode ='sticky';
        // }else{
        //     mode = 'dismissable';
        // }
        // const evt = new ShowToastEvent({
        //     title: title,
        //     message: message,
        //     variant: variant,
        //     mode: mode
        // });
        // this.dispatchEvent(evt);
    }
    //分页
    showCurrentReocrd() {
        var startIndex = 0;
        var endIndex = 0;
        console.log('len:' + this.consumableorderdetailsRecordsview.length);
        if (
            this.consumableorderdetailsRecordsview != null &&
            this.consumableorderdetailsRecordsview.length > 0
        ) {
            var currentRecord = [];
            var currentCount = 0;
            var mu =
                this.consumableorderdetailsRecordsview.length % this.pageSize;
            if (this.currentPage == this.totalPage) {
                if (mu != 0) {
                    currentCount = mu;
                } else {
                    currentCount = this.pageSize;
                }
            } else {
                currentCount = this.pageSize;
            }
            console.log('this.totalPage:' + this.totalPage);
            console.log('this.pageSize:' + this.pageSize);
            console.log('mu:' + mu);
            console.log('currentCount:' + currentCount);
            startIndex = (this.currentPage - 1) * this.pageSize;
            endIndex = parseInt(startIndex) + parseInt(currentCount) - 1;
            console.log('startIndex:' + startIndex);
            console.log('endIndex:' + endIndex);
            if (this.editAble) {
                for (var i in this.currentRecord) {
                    if (this.currentRecord[i].check) {
                        currentRecord.push(this.currentRecord[i]);
                    }
                }
            }
            for (var i = startIndex; i <= endIndex; i++) {
                var count = 0;
                for (var j in this.currentRecord) {
                    if (
                        this.consumableorderdetailsRecordsview[i].recordId ==
                        this.currentRecord[j].recordId
                    ) {
                        count++;
                    }
                }
                if (count == 0) {
                    currentRecord.push(
                        this.consumableorderdetailsRecordsview[i]
                    );
                }
            }
            this.recordStart = startIndex + 1;
            this.recordEnd = endIndex + 1;
            this.currentRecord = currentRecord;
        } else {
            this.currentPage = 0;
            this.currentRecord = [];
        }
    }
    get prePage() {
        return this.currentPage - 1;
    }
    get nextPage() {
        return this.currentPage + 1;
    }
    get totalPage() {
        if (
            this.consumableorderdetailsRecordsview.length % this.pageSize ==
            0
        ) {
            return Math.trunc(
                this.consumableorderdetailsRecordsview.length / this.pageSize
            );
        } else {
            return (
                Math.trunc(
                    this.consumableorderdetailsRecordsview.length /
                        this.pageSize
                ) + 1
            );
        }
    }
    get totalRecords() {
        return this.consumableorderdetailsRecordsview.length;
    }
    //第一页
    goFirstPage() {
        this.currentPage = 1;
        this.showCurrentReocrd();
    }
    //最后一页
    goLastPage() {
        this.currentPage = this.totalPage;
        this.showCurrentReocrd();
    }
    //上一页
    prePageClick() {
        this.currentPage = this.currentPage - 1;
        this.showCurrentReocrd();
    }
    //下一页
    nextPageClick() {
        this.currentPage = this.currentPage + 1;
        this.showCurrentReocrd();
    }
    //page size change
    pageSizeChange(event) {
        console.log('pagesize:' + event.detail);
        this.pageSize = event.detail;
        this.currentPage = 1;
        this.currentRecord = [];
        this.showCurrentReocrd();
        this.getAllChecked();
        this.showSpinner = false;
        this.showMyToast("搜索成功", result.errorMsg, "success");
      } else {
        this.showSpinner = false;
        console.log("Error:" + result.errorMsg);
        if (result.errorMsg == "没有搜索到相关数据") {
          this.showMyToast(result.errorMsg, "", "error");
        } else {
          this.showMyToast("搜索失败", result.errorMsg, "error");
        }
      }
    });
  }
  //选择所有
  checkAll(event) {
    for (
      let i = 0, len = this.consumableorderdetailsRecordsview.length;
      i < len;
      i++
    ) {
      this.consumableorderdetailsRecordsview[i].check = event.target.checked;
    }
  }
  //选择
  check(event) {
    let index = event.target.getAttribute("data-index");
    this.consumableorderdetailsRecordsview[index].check = event.target.checked;
  }
  //采购数量change事件
  // consumableCountChange(event){
  //    let index = event.target.getAttribute("data-index");
  //    var value = event.target.value;
  //    this.consumableorderdetailsRecordsview[index].esd.Consumable_count__c = value;
  //    if(isNaN(value)){
  //       value=0.00;
  //    }
  //    if(value != null && value !=0 && value!=''){
  //       this.consumableorderdetailsRecordsview[index].check = true;
  //    }else{
  //       this.consumableorderdetailsRecordsview[index].check = false;
  //    }
  // }
  //保存订单
  saveOrder(event) {
    this.showSpinner = true;
    console.log("start save");
    save({
      contractNameStr: this.contractName,
      cocStr: JSON.stringify(this.coc),
      agencyProTypeStr: this.agencyProType,
      accountidStr: this.accountid,
      consumableorderdetailsRecordsviewStr: JSON.stringify(
        this.consumableorderdetailsRecordsview
      ),
      contactDealerStr: JSON.stringify(this.contactDealer),
      methodTypeStr: this.pageType,
      eSetIdStr: this.esetId,
      hospitalIdStr: this.hospitalId,
      contractIdStr: this.contractId,
      agencyProType1Str: this.agencyProType1,
      OSHFLGStr: this.OSHFLG
    }).then((result) => {
      this.showSpinner = false;
      if (result.result == "Success") {
        this.esetId = result.eSetId;
        const config = {
          type: "standard__webPage",
          attributes: {
            url:
              "/lexconsumable?ESetid=" + this.esetId + "&type=" + this.pageType
          }
        };
        this[NavigationMixin.Navigate](config);
      } else {
        this.showSpinner = false;
        console.log("Error:" + result.errorMsg);
        this.showMyToast("保存失败", result.errorMsg, "error");
      }
    });
  }
  //保存订单(驳回)
  orderCopy(event) {
    this.showSpinner = true;
    ordrCopy({
      contractNameStr: this.contractName,
      cocStr: JSON.stringify(this.coc),
      agencyProTypeStr: this.agencyProType,
      accountidStr: this.accountid,
      consumableorderdetailsRecordsviewStr: JSON.stringify(
        this.consumableorderdetailsRecordsview
      ),
      contactDealerStr: JSON.stringify(this.contactDealer),
      methodTypeStr: this.pageType,
      hospitalIdStr: this.hospitalId,
      contractIdStr: this.contractId,
      agencyProType1Str: this.agencyProType1,
      OSHFLGStr: this.OSHFLG
    }).then((result) => {
      this.showSpinner = false;
      if (result.result == "Success") {
        this.esetId = result.eSetId;
        const config = {
          type: "standard__webPage",
          attributes: {
            url:
              "/lexconsumable?ESetid=" + this.esetId + "&type=" + this.pageType
          }
        };
        this[NavigationMixin.Navigate](config);
      } else {
        this.showSpinner = false;
        console.log("Error:" + result.errorMsg);
        this.showMyToast("保存失败", result.errorMsg, "error");
      }
    });
  }
  //编辑
  editOrder(event) {
    setEditAble({ eSetidStr: this.esetId }).then((result) => {
      if (result.result == "Success") {
        const config = {
          type: "standard__webPage",
          attributes: {
            url: result.url
          }
        };
        this[NavigationMixin.Navigate](config);
      } else {
        this.showSpinner = false;
        console.log("Error:" + result.errorMsg);
        this.showMyToast("编辑失败", result.errorMsg, "error");
      }
    });
  }
  //打印配置单
  printOrder(event) {
    var site = window.location.origin;
    const config = {
      type: "standard__webPage",
      attributes: {
        url: site + "/consumable/PrintConsumblePDF?ESetid=" + this.esetId
      }
    };
    this[NavigationMixin.Navigate](config);
  }
  //上传配置单
  uploadOrder(event) {
    this.showAttPop = true;
  }
  //提交订单
  submitOrder(event) {
    sorder({ eSetidStr: this.esetId, accountidStr: this.accountid })
      .then((result) => {
        if (result.result == "Success") {
          const config = {
            type: "standard__webPage",
            attributes: {
              url: result.url
            }
          };
          this[NavigationMixin.Navigate](config);
        } else {
          this.showSpinner = false;
          this.errorMsgs = result.errorMsgList;
          this.warningMsgs = result.warningMsgList;
          console.log("Error:" + result.errorMsg);
          if (result.errorMsg.indexOf("请上传订货配置单附件") != -1) {
            result.errorMsg = "请上传订货配置单附件";
          }
          this.showMyToast("提交失败", result.errorMsg, "error");
        }
      })
      .catch((error) => {
        console.log("Error:" + error);
      });
  }
  //删除订单
  deleteOrder(event) {
    if (!window.confirm("删除是不可恢复的,你确认要删除吗?")) {
      return;
    //上一页按钮是否disable
    get previousButtonDisabled() {
        return this.currentPage == 1 || this.currentPage == 0;
    }
    delConsumable({ eSetidStr: this.esetId }).then((result) => {
      if (result.result == "Success") {
        const config = {
          type: "standard__webPage",
          attributes: {
            url: result.url
          }
        };
        this[NavigationMixin.Navigate](config);
      } else {
        this.showSpinner = false;
        console.log("Error:" + result.errorMsg);
        this.showMyToast("删除失败", result.errorMsg, "error");
      }
    });
  }
  //特价金额录入
  inputOfferPrice(event) {
    this.edoffersPrice = true;
    if (!(this.editAble || this.edoffersPrice)) {
      this.showEditBtn = true;
      this.showOfferPriceInputBtn = true;
    } else {
      this.showEditBtn = false;
      this.showOfferPriceInputBtn = false;
    //下一页按钮是否disable
    get nextButtonDisabled() {
        return this.currentPage == this.totalPage;
    }
    if (
      !(this.editDelCommitBtnDisabled || this.editAble || this.edoffersPrice)
    ) {
      this.showPrintSheetBtn = true;
      this.showUploadSheetBtn = true;
      this.showSubOrderbtn = true;
      this.showDeleteBtn = true;
    } else {
      this.showPrintSheetBtn = false;
      this.showUploadSheetBtn = false;
      this.showSubOrderbtn = false;
      this.showDeleteBtn = false;
    }
    if (
      (this.editDelCommitBtnDisabled || this.editAble || this.edoffersPrice) &&
      this.coc.Order_status__c != "驳回"
    ) {
      this.showSaveOrderbtn1 = true;
    } else {
      this.showSaveOrderbtn1 = false;
    }
  }
  //再申请
  reapplyOrder(event) {
    backOrder({ eSetidStr: this.esetId }).then((result) => {
      if (result.result == "Success") {
        const config = {
          type: "standard__webPage",
          attributes: {
            url: result.url
          }
        };
        this[NavigationMixin.Navigate](config);
      } else {
        this.showSpinner = false;
        console.log("Error:" + result.errorMsg);
        this.showMyToast("再申请失败", result.errorMsg, "error");
      }
    });
  }
  //附件change事件
  attChange(event) {
    if (event.target.files.length > 0) {
      this.filesUploaded = event.target.files;
      this.fileName = event.target.files[0].name;
      console.log("this.fileName:" + this.fileName);
    }
  }
  //是否显示附件移除
  get attDelBtn() {
    if (
      this.fileName != "" &&
      this.fileName != null &&
      this.fileName != "请选择一个文件上传"
    ) {
      return true;
    } else {
      return false;
    }
  }
  //关闭附件弹窗
  closePop() {
    this.showAttPop = false;
    this.filesUploaded = [];
    this.fileName = null;
  }
  //移除附件
  removeAtt() {
    this.filesUploaded = [];
    this.fileName = "";
  }
  //上传附件
  uploadAtt(event) {
    if (this.filesUploaded.length > 0) {
      this.file = this.filesUploaded[0];
      if (this.file.size > this.MAX_FILE_SIZE) {
        window.console.log("文件过大");
        return;
      }
      this.fileReader = new FileReader();
      this.fileReader.onloadend = () => {
        this.fileContents = this.fileReader.result;
        let base64 = "base64,";
        this.content = this.fileContents.indexOf(base64) + base64.length;
        this.fileContents = this.fileContents.substring(this.content);
        this.saveToFile();
      };
      this.fileReader.readAsDataURL(this.file);
    } else {
      this.fileName = "请选择一个文件上传";
    }
  }
  //调用上传附件后台方法
  saveToFile() {
    this.showPopSpinner = true;
    filesUpload({
      pId: this.esetId,
      fileName: this.file.name,
      base64Data: encodeURIComponent(this.fileContents)
    })
      .then((result) => {
        this.showPopSpinner = false;
        if (result.result == "Success") {
          this.closePop();
          window.location.reload();
        } else {
          console.log("Error:" + result.errorMsg);
          this.showMyToast("上传失败", result.errorMsg, "error");
        }
      })
      .catch((error) => {
        this.showPopSpinner = false;
        this.showMyToast("上传失败", error, "error");
      });
  }
  //删除附件
  deleteAtt(event) {
    this.showSpinner = true;
    var recordId = event.target.getAttribute("data-fileid");
    console.log("attid:" + recordId);
    deleteAtt({ contentVersionId: recordId, cocId: this.esetId })
      .then((result) => {
        this.showSpinner = false;
        if (result.result == "Success") {
          window.location.reload();
        } else {
          console.log("Error:" + result.errorMsg);
          this.showMyToast("删除失败", result.errorMsg, "error");
        }
      })
      .catch((error) => {
        this.showSpinner = false;
        console.log("Error:" + error);
        this.showMyToast("删除失败", JSON.stringify(error), "error");
      });
  }
  //预览附件
  previweAtt(event) {
    var recordId = event.target.getAttribute("data-fileid");
    console.log(recordId);
    this[NavigationMixin.Navigate]({
      type: "standard__namedPage",
      attributes: {
        pageName: "filePreview"
      },
      state: {
        recordIds: recordId,
        selectedRecordId: recordId
      }
    });
  }
  //打开搜索弹窗,并初始化弹窗
  showSearchHos(event) {
    initHospital()
      .then((result) => {
        if (result.result == "Success") {
          this.showAttHosPop = true;
          this.hospitalList = result.attList;
          for (var i in this.hospitalList) {
            if (this.hospitalList[i].State_Master__c) {
              this.hospitalList[i]["StateMaster"] =
                this.hospitalList[i].State_Master__r.Name;
            }
          }
        } else {
          console.log("Error:" + result.errorMsg);
          this.showMyToast("初始化检索医院页面失败", result.errorMsg, "error");
        }
      })
      .catch((error) => {
        console.log("Error:" + error);
        this.showMyToast("初始化检索医院页面失败", error, "error");
      });
  }
  //检索医院
  searchHos(event) {
    searchHospital({
      searchName: this.searchNameHos,
      accountId: this.accountid
    })
      .then((result) => {
        if (result.result == "Success") {
          this.hospitalList = result.attList;
          for (var i in this.hospitalList) {
            if (this.hospitalList[i].State_Master__c) {
              this.hospitalList[i]["StateMaster"] =
                this.hospitalList[i].State_Master__r.Name;
            }
          }
        } else {
          console.log("Error:" + result.errorMsg);
          this.showMyToast("搜索失败", result.errorMsg, "error");
        }
      })
      .catch((error) => {
        console.log("Error:" + error);
        this.showMyToast("搜索失败", error, "error");
      });
  }
  //医院名称change
  searchNameHosChange(event) {
    this.searchNameHos = event.detail.value;
  }
  //关闭弹窗
  closeHospitalPop() {
    this.showAttHosPop = false;
    this.chooseHospital = "";
    this.chooseHospitalId = "";
  }
  // //选择医院
  // chooseHos(event){
  //    var hosName = event.target.getAttribute("data-name");
  //    var hosid = event.target.getAttribute("data-hosid");
  //    console.log('hos:'+hosName+'---'+hosid);
  //    this.chooseHospital = hosName;
  //    this.chooseHospitalId = hosid;
  // }
  changeHos(event) {
    this.hospitalName = event.detail.value;
  }
  changeCon(event) {
    this.contractName = event.detail.value;
  }
  chooseHos(event) {
    const row = event.detail.row;
    this.chooseHospitalId = row.Id;
    this.chooseHospital = row.Name;
    console.log("row.Id:" + row.Id);
    console.log("row.Name:" + row.Name);
    this.confirmHospital();
  }
  //确认选择医院
  confirmHospital() {
    if (this.chooseHospital != "" && this.chooseHospital != null) {
      this.hospitalId = this.chooseHospitalId;
      this.tempidHp = this.chooseHospitalId;
      this.hospitalName = this.chooseHospital;
      this.closeHospitalPop();
      //消除警告
      var arr = [];
      for (var i in this.warningMsgs) {
        if (this.warningMsgs[i] != "请选择医院") {
          arr.push(this.warningMsgs[i]);
        }
      }
      this.warningMsgs = arr;
      if (this.tempidHp != "tempId" && this.tempidHp != "") {
        searchorderdetails({
          methodTypeStr: this.pageType,
          accountIdStr: this.accountid,
          hospitalIdStr: this.hospitalId,
          contractIdStr: this.contractId,
          userWorkLocationStr: this.userWorkLocation,
          accountNameStr: this.accountName,
          proLimitAndDateList: this.proLimitAndDate,
          editAbleStr: this.editAble
        })
          .then((result) => {
            if (result.result == "Success") {
              this.consumableorderdetailsRecordsview =
                result.consumableorderdetailsRecordsview;
              this.currentPage = 1;
              this.currentRecord = [];
              this.showCurrentReocrd();
              this.getAllChecked();
              this.showMyToast("搜索成功", result.errorMsg, "success");
            } else {
              console.log("Error:" + result.errorMsg);
              if (result.errorMsg == "没有搜索到相关数据") {
                this.showMyToast(result.errorMsg, "", "error");
              } else {
                this.showMyToast("搜索产品失败", result.errorMsg, "error");
              }
            }
          })
          .catch((error) => {
            console.log("Error:" + error);
            this.showMyToast("搜索产品失败", error, "error");
          });
        this.tempidHp = "tempId";
      }
    } else {
      this.showMyToast("请选择医院", "", "error");
    }
  }
  //打开合同检索弹窗并初始化
  showSearchCon() {
    initContract({ ctype: this.agencyProType1 })
      .then((result) => {
        if (result.result == "Success") {
          this.showConPop = true;
          this.contractList = result.attList;
          for (var i in this.contractList) {
            if (this.contractList[i].State_Master__c) {
              this.contractList[i]["StateMaster"] =
                this.contractList[i].State_Master__r.Name;
            }
          }
        } else {
          console.log("Error:" + result.errorMsg);
          this.showMyToast("初始化检索合同页面失败", result.errorMsg, "error");
        }
      })
      .catch((error) => {
        console.log("Error:" + error);
        this.showMyToast("初始化检索合同页面失败", error, "error");
      });
  }
  //检索合同
  searchCon() {
    searchContract({
      searchName: this.searchNameCon,
      accountId: this.accountid,
      ctype: this.agencyProType1,
      OSHFLGStr: this.OSHFLG
    })
      .then((result) => {
        if (result.result == "Success") {
          this.contractList = result.attList;
          for (var i in this.contractList) {
            if (this.contractList[i].State_Master__c) {
              this.contractList[i]["StateMaster"] =
                this.contractList[i].State_Master__r.Name;
            }
          }
        } else {
          console.log("Error:" + result.errorMsg);
          this.showMyToast("搜索失败", result.errorMsg, "error");
        }
      })
      .catch((error) => {
        console.log("Error:" + error);
        this.showMyToast("搜索失败", error, "error");
      });
  }
  searchNameConChange(event) {
    this.searchNameCon = event.detail.value;
  }
  //关闭弹窗
  closeContractPop() {
    this.showConPop = false;
    this.chooseContract = "";
    this.chooseContractId = "";
  }
  //选择合同
  // chooseCon(event){
  //    var conName = event.target.getAttribute("data-name");
  //    var conid = event.target.getAttribute("data-hosid");
  //    console.log('hos:'+conName+'---'+conid);
  //    this.chooseContract = conName;
  //    this.chooseContractId = conid;
  // }
  chooseCon(event) {
    const row = event.detail.row;
    this.chooseContractId = row.Id;
    this.chooseContract = row.Name;
    console.log("row.Id:" + row.Id);
    console.log("row.Name:" + row.Name);
    this.confirmContract();
  }
  //确认选择合同
  confirmContract() {
    if (this.chooseContract != "" && this.chooseContract != null) {
      this.contractId = this.chooseContractId;
      this.tempidPp = this.chooseContractId;
      this.contractName = this.chooseContract;
      this.closeContractPop();
      if (
        this.tempidPp != "tempId" &&
        this.tempidPp != "" &&
        this.contractId != "" &&
        this.pageType == "promotionorder"
      ) {
        searchorderdetails({
          methodTypeStr: this.pageType,
          accountIdStr: this.accountid,
          hospitalIdStr: this.hospitalId,
          contractIdStr: this.contractId,
          userWorkLocationStr: this.userWorkLocation,
          accountNameStr: this.accountName,
          proLimitAndDateList: this.proLimitAndDate,
          editAbleStr: this.editAble
        })
          .then((result) => {
            if (result.result == "Success") {
              this.consumableorderdetailsRecordsview =
                result.consumableorderdetailsRecordsview;
              this.currentPage = 1;
              this.currentRecord = [];
              this.showCurrentReocrd();
              this.getAllChecked();
              this.showMyToast("搜索成功", result.errorMsg, "success");
            } else {
              console.log("Error:" + result.errorMsg);
              if (result.errorMsg == "没有搜索到相关数据") {
                this.showMyToast(result.errorMsg, "", "error");
              } else {
                this.showMyToast("搜索产品失败", result.errorMsg, "error");
              }
            }
          })
          .catch((error) => {
            console.log("Error:" + error);
            this.showMyToast("搜索产品失败", error, "error");
          });
        this.tempidPp = "tempId";
      }
    } else {
      this.showMyToast("请选择合同", "", "error");
    }
  }
  showMyToast(title, message, variant) {
    console.log("show custom message");
    var iconName = "";
    var content = "";
    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>";
    }
    this.template
      .querySelector("c-common-toast")
      .showToast(variant, content, iconName, 10000);
    // var mode;
    // if(this.isNoteStay){
    //     mode ='sticky';
    // }else{
    //     mode = 'dismissable';
    // }
    // const evt = new ShowToastEvent({
    //     title: title,
    //     message: message,
    //     variant: variant,
    //     mode: mode
    // });
    // this.dispatchEvent(evt);
  }
  //分页
  showCurrentReocrd() {
    var startIndex = 0;
    var endIndex = 0;
    console.log("len:" + this.consumableorderdetailsRecordsview.length);
    if (
      this.consumableorderdetailsRecordsview != null &&
      this.consumableorderdetailsRecordsview.length > 0
    ) {
      var currentRecord = [];
      var currentCount = 0;
      var mu = this.consumableorderdetailsRecordsview.length % this.pageSize;
      if (this.currentPage == this.totalPage) {
        if (mu != 0) {
          currentCount = mu;
        } else {
          currentCount = this.pageSize;
        }
      } else {
        currentCount = this.pageSize;
      }
      console.log("this.totalPage:" + this.totalPage);
      console.log("this.pageSize:" + this.pageSize);
      console.log("mu:" + mu);
      console.log("currentCount:" + currentCount);
      startIndex = (this.currentPage - 1) * this.pageSize;
      endIndex = parseInt(startIndex) + parseInt(currentCount) - 1;
      console.log("startIndex:" + startIndex);
      console.log("endIndex:" + endIndex);
      if (this.editAble) {
        for (var i in this.currentRecord) {
          if (this.currentRecord[i].check) {
            currentRecord.push(this.currentRecord[i]);
          }
        }
      }
      for (var i = startIndex; i <= endIndex; i++) {
        var count = 0;
        for (var j in this.currentRecord) {
          if (
            this.consumableorderdetailsRecordsview[i].recordId ==
            this.currentRecord[j].recordId
          ) {
            count++;
          }
        }
        if (count == 0) {
          currentRecord.push(this.consumableorderdetailsRecordsview[i]);
        }
      }
      this.recordStart = startIndex + 1;
      this.recordEnd = endIndex + 1;
      this.currentRecord = currentRecord;
    } else {
      this.currentPage = 0;
      this.currentRecord = [];
    }
  }
  get prePage() {
    return this.currentPage - 1;
  }
  get nextPage() {
    return this.currentPage + 1;
  }
  get totalPage() {
    if (this.consumableorderdetailsRecordsview.length % this.pageSize == 0) {
      return Math.trunc(
        this.consumableorderdetailsRecordsview.length / this.pageSize
      );
    } else {
      return (
        Math.trunc(
          this.consumableorderdetailsRecordsview.length / this.pageSize
        ) + 1
      );
    }
  }
  get totalRecords() {
    return this.consumableorderdetailsRecordsview.length;
  }
  //第一页
  goFirstPage() {
    this.currentPage = 1;
    this.showCurrentReocrd();
  }
  //最后一页
  goLastPage() {
    this.currentPage = this.totalPage;
    this.showCurrentReocrd();
  }
  //上一页
  prePageClick() {
    this.currentPage = this.currentPage - 1;
    this.showCurrentReocrd();
  }
  //下一页
  nextPageClick() {
    this.currentPage = this.currentPage + 1;
    this.showCurrentReocrd();
  }
  //page size change
  pageSizeChange(event) {
    console.log("pagesize:" + event.detail);
    this.pageSize = event.detail;
    this.currentPage = 1;
    this.currentRecord = [];
    this.showCurrentReocrd();
  }
  //上一页按钮是否disable
  get previousButtonDisabled() {
    return this.currentPage == 1 || this.currentPage == 0;
  }
  //下一页按钮是否disable
  get nextButtonDisabled() {
    return this.currentPage == this.totalPage;
  }
}
}