FUYU
2023-12-13 4488f711dbc01a8db6753907cae2ef4021dede68
force-app/main/default/lwc/lexCancelRemoveBox/lexCancelRemoveBox.js
@@ -1,245 +1,252 @@
import { LightningElement, wire, api, track } from "lwc";
import { ShowToastEvent } from "lightning/platformShowToastEvent";
import oninit from "@salesforce/apex/LexCancelRemoveBoxController.init";
import searchDeatail from "@salesforce/apex/LexCancelRemoveBoxController.searchConsumableorderdetails";
import saveConfirm from "@salesforce/apex/LexCancelRemoveBoxController.cancelRemoveBoxConfirm";
import { LightningElement, wire, api, track } from 'lwc';
import { ShowToastEvent } from 'lightning/platformShowToastEvent';
import oninit from '@salesforce/apex/LexCancelRemoveBoxController.init';
import searchDeatail from '@salesforce/apex/LexCancelRemoveBoxController.searchConsumableorderdetails';
import saveConfirm from '@salesforce/apex/LexCancelRemoveBoxController.cancelRemoveBoxConfirm';
//table css
import { loadStyle } from "lightning/platformResourceLoader";
import WrappedHeaderTable from "@salesforce/resourceUrl/lexdatatable";
import { loadStyle } from 'lightning/platformResourceLoader';
import WrappedHeaderTable from '@salesforce/resourceUrl/lexdatatable';
const columns = [
  {
    label: "消耗品名称",
    fieldName: "Name__c",
    hideDefaultActions: true,
    wrapText: true
    // initialWidth: 350,
  },
  {
    label: "规格",
    fieldName: "ProductPacking_list_manual__c",
    hideDefaultActions: true,
    cellAttributes: { alignment: "right" },
    initialWidth: 50
  },
  {
    label: "CFDA状态",
    fieldName: "CFDA_Status__c",
    hideDefaultActions: true,
    initialWidth: 100,
    wrapText: true
  },
  {
    label: "注册证编码号",
    fieldName: "Report_Product_Approbation__c",
    hideDefaultActions: true,
    initialWidth: 200,
    wrapText: true
  },
  {
    label: "注册证效期",
    fieldName: "Report_Product_Expiration__c",
    hideDefaultActions: true,
    initialWidth: 110,
    wrapText: true
  },
  {
    label: "BarCode",
    fieldName: "Bar_Code__c",
    hideDefaultActions: true,
    wrapText: true
  }
    {
        label: '消耗品名称',
        fieldName: 'Name__c',
        hideDefaultActions: true,
        wrapText: true
        // initialWidth: 350,
    },
    {
        label: '规格',
        fieldName: 'ProductPacking_list_manual__c',
        hideDefaultActions: true,
        cellAttributes: { alignment: 'right' },
        initialWidth: 50
    },
    {
        label: 'CFDA状态',
        fieldName: 'CFDA_Status__c',
        hideDefaultActions: true,
        initialWidth: 100,
        wrapText: true
    },
    {
        label: '注册证编码号',
        fieldName: 'Report_Product_Approbation__c',
        hideDefaultActions: true,
        initialWidth: 200,
        wrapText: true
    },
    {
        label: '注册证效期',
        fieldName: 'Report_Product_Expiration__c',
        hideDefaultActions: true,
        initialWidth: 110,
        wrapText: true
    },
    {
        label: 'BarCode',
        fieldName: 'Bar_Code__c',
        hideDefaultActions: true,
        wrapText: true
    }
];
const column = [
  {
    label: "消耗品名称",
    fieldName: "Name__c",
    hideDefaultActions: true,
    wrapText: true
  },
  {
    label: "BarCode",
    fieldName: "Bar_Code__c",
    wrapText: true,
    hideDefaultActions: true
    // initialWidth:600
  },
  {
    label: "错误原因",
    fieldName: "ErrorReason",
    hideDefaultActions: true
  }
    {
        label: '消耗品名称',
        fieldName: 'Name__c',
        hideDefaultActions: true,
        wrapText: true
    },
    {
        label: 'BarCode',
        fieldName: 'Bar_Code__c',
        wrapText: true,
        hideDefaultActions: true
        // initialWidth:600
    },
    {
        label: '错误原因',
        fieldName: 'ErrorReason',
        hideDefaultActions: true
    }
];
export default class LexCancelRemoveBox extends LightningElement {
  columns = columns;
  column = column;
  @track selectedRows = [];
  @track data = [];
  @track errorDetail = [];
    columns = columns;
    column = column;
    @track selectedRows = [];
    @track data = [];
    @track errorDetail = [];
  // 显示
  @track showTable = false;
  @track showSpinner = false;
    // 显示
    @track showTable = false;
    @track showSpinner = false;
  //数据构成
  @track accountName;
  @track userWorkLocation;
  @track agencyProType;
  @track barcode = "";
  @track saveFLGbln = false;
  @track dataSize = 0;
    //数据构成
    @track accountName;
    @track userWorkLocation;
    @track agencyProType;
    @track barcode = '';
    @track saveFLGbln = false;
    @track dataSize = 0;
  renderedCallback() {
    if (!this.stylesLoaded) {
      Promise.all([loadStyle(this, WrappedHeaderTable)])
        .then(() => {
          console.log("Custom styles loaded");
          this.stylesLoaded = true;
    renderedCallback() {
        if (!this.stylesLoaded) {
            Promise.all([loadStyle(this, WrappedHeaderTable)])
                .then(() => {
                    console.log('Custom styles loaded');
                    this.stylesLoaded = true;
                })
                .catch((error) => {
                    console.error('Error loading custom styles');
                });
        }
    }
    connectedCallback() {
        console.log('初始化');
        // this.showTable = false;
        oninit()
            .then((result) => {
                result = JSON.parse(JSON.stringify(result));
                console.log('result =' + JSON.stringify(result));
                if ((result.status = 'Success')) {
                    console.log('result');
                    this.agencyProType = result.entity.agencyProType;
                    this.userWorkLocation = result.entity.userWorkLocation;
                    this.accountName = result.entity.accountName;
                    // this.data = JSON.parse(result.entity.codPageRecords);
                    // this.showTable = true;
                } else {
                    this.showMyToast('初始化失败', result.msg, 'error');
                }
            })
            .catch((error) => {
                console.log('error = ' + JSON.stringify(error));
            });
    }
    //录入
    getDetails() {
        this.showSpinner = true;
        searchDeatail({
            accountName: this.accountName,
            userWorkLocation: this.userWorkLocation,
            agencyProType: this.agencyProType,
            barcode: this.barcode
        })
        .catch((error) => {
          console.error("Error loading custom styles");
        });
            .then((result) => {
                result = JSON.parse(JSON.stringify(result));
                console.log('result =' + JSON.stringify(result));
                if (result.status == 'Success') {
                    console.log('成功');
                    this.data = JSON.parse(
                        result.entity.ConsumableorderdetailsRecordsdummy
                    );
                    this.errorDetail = JSON.parse(
                        result.entity.ConsumableorderdetailsRecordserror
                    );
                    this.dataSize = result.entity.dataSize;
                    for (let i in this.data) {
                        this.data[i]['Name__c'] = this.data[i].Prod.Name__c;
                        this.data[i]['ProductPacking_list_manual__c'] =
                            this.data[i].esd.ProductPacking_list_manual__c;
                        this.data[i]['CFDA_Status__c'] =
                            this.data[i].esd.CFDA_Status__c;
                        this.data[i]['Report_Product_Approbation__c'] =
                            this.data[i].esd.Report_Product_Approbation__c;
                        this.data[i]['Report_Product_Expiration__c'] =
                            this.data[i].esd.Report_Product_Expiration__c;
                        this.data[i]['Bar_Code__c'] =
                            this.data[i].esd.Bar_Code__c;
                    }
                    // this.showTable = true;
                    for (let i in this.errorDetail) {
                        this.errorDetail[i]['Name__c'] =
                            this.errorDetail[i].Prod.Name__c;
                        this.errorDetail[i]['Bar_Code__c'] =
                            this.errorDetail[i].esd.Bar_Code__c;
                        this.errorDetail[i]['ErrorReason'] =
                            this.errorDetail[i].ErrorReason;
                    }
                    // this.showTables = true;
                    this.showSpinner = false;
                } else {
                    this.showMyToast('获取失败', result.msg, 'error');
                    this.showSpinner = false;
                }
            })
            .catch((error) => {
                console.log('error = ' + JSON.stringify(error));
            });
    }
  }
    //获取当前输入值
    handleChange(event) {
        let value = event.detail.value;
        console.log('value' + value);
        this.barcode = value;
        console.log('this.barcode' + this.barcode);
    }
  connectedCallback() {
    console.log("初始化");
    // this.showTable = false;
    oninit()
      .then((result) => {
        result = JSON.parse(JSON.stringify(result));
        console.log("result =" + JSON.stringify(result));
        if ((result.status = "Success")) {
          console.log("result");
          this.agencyProType = result.entity.agencyProType;
          this.userWorkLocation = result.entity.userWorkLocation;
          this.accountName = result.entity.accountName;
          // this.data = JSON.parse(result.entity.codPageRecords);
          // this.showTable = true;
    saveConfirm() {
        let msg = '确认取消拆盒吗';
        if (this.dataSize > 0) {
            if (confirm(msg) == true) {
                this.CancelRemoveBox();
            }
        } else {
          this.showMyToast("初始化失败", result.msg, "error");
            this.CancelRemoveBox();
        }
      })
      .catch((error) => {
        console.log("error = " + JSON.stringify(error));
      });
  }
  //录入
  getDetails() {
    this.showSpinner = true;
    searchDeatail({
      accountName: this.accountName,
      userWorkLocation: this.userWorkLocation,
      agencyProType: this.agencyProType,
      barcode: this.barcode
    })
      .then((result) => {
        result = JSON.parse(JSON.stringify(result));
        console.log("result =" + JSON.stringify(result));
        if (result.status == "Success") {
          console.log("成功");
          this.data = JSON.parse(
            result.entity.ConsumableorderdetailsRecordsdummy
          );
          this.errorDetail = JSON.parse(
            result.entity.ConsumableorderdetailsRecordserror
          );
          this.dataSize = result.entity.dataSize;
          for (let i in this.data) {
            this.data[i]["Name__c"] = this.data[i].Prod.Name__c;
            this.data[i]["ProductPacking_list_manual__c"] =
              this.data[i].esd.ProductPacking_list_manual__c;
            this.data[i]["CFDA_Status__c"] = this.data[i].esd.CFDA_Status__c;
            this.data[i]["Report_Product_Approbation__c"] =
              this.data[i].esd.Report_Product_Approbation__c;
            this.data[i]["Report_Product_Expiration__c"] =
              this.data[i].esd.Report_Product_Expiration__c;
            this.data[i]["Bar_Code__c"] = this.data[i].esd.Bar_Code__c;
          }
          // this.showTable = true;
          for (let i in this.errorDetail) {
            this.errorDetail[i]["Name__c"] = this.errorDetail[i].Prod.Name__c;
            this.errorDetail[i]["Bar_Code__c"] =
              this.errorDetail[i].esd.Bar_Code__c;
            this.errorDetail[i]["ErrorReason"] =
              this.errorDetail[i].ErrorReason;
          }
          // this.showTables = true;
          this.showSpinner = false;
    }
    CancelRemoveBox() {
        this.showSpinner = true;
        saveConfirm({
            saveConsumableorderdetailsRecordsdummy: JSON.stringify(this.data),
            accountName: this.accountName,
            userWorkLocation: this.userWorkLocation,
            agencyProType: this.agencyProType
        })
            .then((result) => {
                result = JSON.parse(JSON.stringify(result));
                console.log('result保存 = ' + JSON.stringify(result));
                if (result.status == 'Success') {
                    this.saveFLGbln = result.entity.saveFLGbln;
                    //  this.showSpinner = false;
                    if (this.saveFLGbln) {
                        this.showMyToast(result.msg, '', 'success');
                        this.showSpinner = false;
                    }
                } else {
                    this.showMyToast('取消拆盒失败', result.msg, 'error');
                    this.showSpinner = false;
                }
            })
            .catch((error) => {
                console.log('error = ' + JSON.stringify(error));
            });
    }
    showMyToast(title, message, variant) {
        console.log('show custom message');
        var iconName = '';
        var content = '';
        if (variant == 'success') {
            iconName = 'utility:check';
        } else {
          this.showMyToast("获取失败", result.msg, "error");
          this.showSpinner = false;
            iconName = 'utility:error';
        }
      })
      .catch((error) => {
        console.log("error = " + JSON.stringify(error));
      });
  }
  //获取当前输入值
  handleChange(event) {
    let value = event.detail.value;
    console.log("value" + value);
    this.barcode = value;
    console.log("this.barcode" + this.barcode);
  }
  saveConfirm() {
    let msg = "确认取消拆盒吗";
    if (this.dataSize > 0) {
      if (confirm(msg) == true) {
        this.CancelRemoveBox();
      }
    } else {
      this.CancelRemoveBox();
    }
  }
  CancelRemoveBox() {
    this.showSpinner = true;
    saveConfirm({
      saveConsumableorderdetailsRecordsdummy: JSON.stringify(this.data),
      accountName: this.accountName,
      userWorkLocation: this.userWorkLocation,
      agencyProType: this.agencyProType
    })
      .then((result) => {
        result = JSON.parse(JSON.stringify(result));
        console.log("result保存 = " + JSON.stringify(result));
        if (result.status == "Success") {
          this.saveFLGbln = result.entity.saveFLGbln;
          //  this.showSpinner = false;
          if (this.saveFLGbln) {
            this.showMyToast(result.msg, "", "success");
            this.showSpinner = false;
          }
        if (message != '') {
            content =
                '<h2><strong>' +
                title +
                '<strong/></h2><h5>' +
                message +
                '</h5>';
        } else {
          this.showMyToast("取消拆盒失败", result.msg, "error");
          this.showSpinner = false;
            content = '<h2><strong>' + title + '<strong/></h2>';
        }
      })
      .catch((error) => {
        console.log("error = " + JSON.stringify(error));
      });
  }
  showMyToast(title, message, variant) {
    console.log("show custom message");
    var iconName = "";
    var content = "";
    if (variant == "success") {
      iconName = "utility:check";
    } else {
      iconName = "utility:error";
        this.template
            .querySelector('c-common-toast')
            .showToast(variant, content, iconName, 10000);
    }
    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);
  }
}