buli
2023-06-05 0f44cb1a0b7b36860e9ce81c1eac9e395d87f0b4
force-app/main/default/lwc/lexSaleAndDelivery/lexSaleAndDelivery.js
@@ -1,17 +1,21 @@
import { LightningElement, wire, api, track } from 'lwc';
import { NavigationMixin } from 'lightning/navigation';
import init from '@salesforce/apex/LexSaleAndDeliveryController.init';
import init from '@salesforce/apex/LexSaleAndDeliveryController.init';//cleanUp
import cleanUp from '@salesforce/apex/LexSaleAndDeliveryController.cleanUp';
import { ShowToastEvent } from "lightning/platformShowToastEvent";
import searchOrderInstatus from '@salesforce/apex/LexSaleAndDeliveryController.searchOrderInstatus';
import searchConsumableorderdetails from '@salesforce/apex/LexSaleAndDeliveryController.searchConsumableorderdetails';
import searchConsumableorFinish from '@salesforce/apex/LexSaleAndDeliveryController.searchConsumableorFinish';
//table css
import { loadStyle } from "lightning/platformResourceLoader";
import WrappedHeaderTable from "@salesforce/resourceUrl/lexdatatable";
const columns = [
    { 
        label: '出库日', 
        fieldName: 'Outbound_Date__c', 
        type: 'date',
        initialWidth : 100,
        initialWidth: 130,
        hideDefaultActions: true ,
        sortable: true
    },
@@ -27,6 +31,7 @@
            target: '_blank'
        },
        hideDefaultActions: true,
        initialWidth: 225,
        sortable: true 
    },
    { 
@@ -39,7 +44,8 @@
    { 
        label: '科室', 
        fieldName: 'Order_ForCustomerText__c', 
        hideDefaultActions: true
        hideDefaultActions: true,
        initialWidth: 120
    },
    { 
        label: '出库单状态', 
@@ -59,6 +65,10 @@
        label: '未发票金额(元)', 
        fieldName: 'InvoiceNotPro_money__c', 
        hideDefaultActions: true,
        type: "number",
        typeAttributes: {
            minimumFractionDigits: 2,
        },
        initialWidth : 150
    },
    { 
@@ -68,91 +78,15 @@
        sortable: true ,
        type: "date",
        typeAttributes:{
            timeZone: "Asia/Shanghai",
            day: "numeric",
            month: "numeric",
            year: "numeric",
            month: "long",
            day: "2-digit",
            hour: "2-digit",
            minute: "2-digit"
        },
        initialWidth : 200
    }
];
const editColumns = [
    {
        label: '出库日',
        fieldName: 'Outbound_Date__c',
        type: 'date',
        hideDefaultActions: true ,
        sortable: true
    },
    {
        label: '出库单号',
        fieldName: 'url',
        type : 'url',
        typeAttributes: {
            label: {
                fieldName: 'Name'
            },
            target: '_blank'
        },
        hideDefaultActions: true,
        sortable: true
    },
    {
        label: '客户名',
        fieldName: 'ShipmentAccount__c',
        hideDefaultActions: true ,
        sortable: true
    },
    {
        label: '科室',
        fieldName: 'Order_ForCustomerText__c',
        hideDefaultActions: true
    },
    {
        label: '出库单状态',
        fieldName: 'SummonsStatus_c__c',
        hideDefaultActions: true ,
        sortable: true,
        initialWidth : 100
    },
    {
        label: '开票状态',
        fieldName: 'Billed_Status__c',
        hideDefaultActions: true,
        sortable: true,
        initialWidth : 100
    },
    {
        label: '未发票金额(元)',
        fieldName: 'InvoiceNotPro_money__c',
        hideDefaultActions: true,
        initialWidth : 150
    },
    {
        label: '创建日期',
        fieldName: 'CreatedDate',
        hideDefaultActions: true,
        sortable: true
    },
    // {
    //     label: '单位',
    //     hideDefaultActions: true,
    //     type:'customUnit',
    // },
    // {
    //     label: '出货数量',
    //     hideDefaultActions: true,
    //     type:'customShipment',
    // },
    // {
    //     label: '出货单价(元)',
    //     hideDefaultActions: true,
    //     type:'customShipmentUnitPrice',
    // }
];
export default class LexSaleAndDelivery extends NavigationMixin(LightningElement) {
    columns = columns;
@@ -175,6 +109,21 @@
    sortDirection = 'asc';
    sortedBy;
    stylesLoaded = false;
    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() {
        init().then((r) => {
            r = JSON.parse(JSON.stringify(r));
@@ -191,14 +140,18 @@
                console.log('this.data = ' + JSON.stringify(this.data));
                this.isShowSpinner = false;
                this.showTable = true;
            } else {
                console.log('r = ' + JSON.stringify(r))
                this.showToast('Error', r.msg);
                this.showMyToast('初始化失败', r.msg,'Error');
            }
        }).catch((error) => {
            console.log('error = ' + JSON.stringify(error))
            this.showMyToast('错误', '初始化失败','Error');
        })
    }
    //新建出库单
    neworderhead(){
@@ -232,15 +185,16 @@
                    this.data[i]['url'] = '/s/lexsummonscreat?ESetid='+this.data[i].Id;
                }
                this.message = r.msg;
                if(this.message == '没有搜索到相关出库单。'){
                    this.showToast('Error', this.message);
                if (this.message == '没有搜索到相关出库单') {
                    this.showMyToast('搜索失败', this.message,'Error');
                }else{
                    this.showToast('Success', this.message);
                    this.showMyToast('搜索成功', this.message,'Success');
                }
                this.isShowSpinner = false;
                //this.isCssLoaded = true
                this.showTable = true;
            } else {
                this.showToast('Error', r.msg);
                this.showMyToast('错误',  r.msg,'Error');
            }
        }).catch((error) => {
            console.log('error = ' + JSON.stringify(error))
@@ -252,6 +206,8 @@
        this.isShowSpinner = true;
        this.showTable = false;
        console.log('searchConsumableorderdetailsJs');
        console.log('this.deliveryFromDate = ' + this.deliveryFromDate);
        console.log('this.deliveryToDate = ' + this.deliveryToDate);
        searchConsumableorderdetails({
            orderDate: this.deliveryFromDate,
            deliverDate: this.deliveryToDate,
@@ -269,18 +225,19 @@
                    this.data[i]['url'] = '/s/lexsummonscreat?ESetid='+this.data[i].Id;
                }
                this.message = r.msg;
                if(this.message == '没有搜索到相关出库单。'){
                    this.showToast('Error', this.message);
                if (this.message == '没有搜索到相关出库单') {
                    this.showMyToast('搜索失败', this.message,'Error');
                }else{
                    this.showToast('Success', this.message);
                    this.showMyToast('搜索成功', this.message,'Success');
                }
                this.isShowSpinner = false;
                this.showTable = true;
            } else {
                this.showToast('Error', r.msg);
                this.showMyToast('搜索失败', r.msg,'Error');
            }
        }).catch((error) => {
            console.log('error = ' + JSON.stringify(error))
            this.showMyToast('搜索失败', '搜索还没出库的出库单出错','Error');
        })
    }
@@ -306,18 +263,19 @@
                    this.data[i]['url'] = '/s/lexsummonscreat?ESetid='+this.data[i].Id;
                }
                this.message = r.msg;
                if(this.message == '没有搜索到相关出库单。'){
                    this.showToast('Error', this.message);
                if (this.message == '没有搜索到相关出库单') {
                    this.showMyToast('搜索失败', this.message,'Error');
                }else{
                    this.showToast('Success', this.message);
                    this.showMyToast('搜索成功', this.message,'Success');
                }
                this.isShowSpinner = false;
                this.showTable = true;
            } else {
                this.showToast('Error', r.msg);
                this.showMyToast('搜索失败', r.msg,'Error');
            }
        }).catch((error) => {
            console.log('error = ' + JSON.stringify(error))
            this.showMyToast('搜索失败', '搜索已出库已开票的出库单出错','Error');
        })
    }
@@ -327,6 +285,35 @@
        this.deliveryToDate = '';
        this.deliveryOrderNo = '';
        this.contactName = '';
        this.isShowSpinner = true;
        this.showTable = false;
        cleanUp({
            accountid: this.accountid,
            agencyProType: this.agencyProType,
            userWorkLocation: this.userWorkLocation,
        }).then((r) => {
            r = JSON.parse(JSON.stringify(r));
            console.log('r = ' + JSON.stringify(r));
            if (r.status == 'Success') {
                this.data = r.entity.raesList;
                for (var i in this.data) {
                    this.data[i]['url'] = '/s/lexsummonscreat?ESetid=' + this.data[i].Id;
                }
                this.message = r.msg;
                if (this.message == '没有搜索到相关出库单') {
                    this.showMyToast('搜索失败', this.message,'Error');
                } else {
                    this.showMyToast('搜索成功', this.message,'Success');
                }
                this.isShowSpinner = false;
                this.showTable = true;
            } else {
                this.showMyToast('搜索失败', r.msg,'Error');
            }
        }).catch((error) => {
            console.log('error = ' + JSON.stringify(error))
            this.showMyToast('搜索失败', '搜索失败','Error');
        })
    }
    //Capture the event fired from the paginator component
@@ -398,14 +385,22 @@
        });
    }
    showToast(type, msg) {
    showMyToast(title, message, variant) {
        this.isShowSpinner = false;
        const event = new ShowToastEvent({
            title: type,
            variant: type,
            message: msg
        });
        this.dispatchEvent(event);
        console.log('show custom message');
        var iconName = '';
        var content = '';
        if (variant.toLowerCase() == '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);
    }
    @track isModalOpen = false;