Data getting imported twice

  I am working on a MEAN project in which I am trying to import the data from excel  by converting the data using convertexceltojson plugin and then importing it into database . The entire frontend and backend code is attached. It i working fine. The data is getting imported but its getting imported twice. The function is being called twice. It is working find when I execute the same API  using Postman but when done from link in my frontend, its creating problem. Can someone help ?
    //// Frontend - HTML
    
    <a class="dropdown-item" (click)="excelUploadOrder({'type': 'order'})" *ngIf="userData.permission === 'L3'">Import Order</a>
    

    /// Frontend - Function and Service

    excelUploadOrder(data1) {
        this.salesService.excelUploadOrder(data1).subscribe((obj) => {
        }, (error) => {
        });
    
    public excelUploadOrder(data1): Observable<any> {
            return this.httpClient.post(`${environment.origin}/order/orderexcelToData`, data1).
              pipe(catchError(this.handleError()));
          }
    
    
    /// BACKEND - Function to extract the excel to json and fill the data array 
    
    const excelToData = (req, res) => {
	const type = req.body.type;
	let path;

	if (type === 'dc') {
		path = "<my_excel_path>"
	} else if (type === 'slip') {
		path = "<my_excel_path>"
	} else {
		path = "<my_excel_path>"
	}
	const result = excelToJson({
		sourceFile: path
	});

	if (result && result['Sheet1']) {
		const data = []
		for (let i = 1; i < result['Sheet1'].length; i++) {
			const configForOrder = config.get(type);
			for (var key in configForOrder) {
				if (typeof configForOrder[key] !== 'string') {
					for (var childobj of configForOrder[key]) {
						for (var childKey in childobj) {
							childobj[childKey] = typeChecker(childKey, result['Sheet1'][i][childobj[childKey].toUpperCase()])
							if (childobj[childKey] === undefined) {
								delete childobj[childKey];
							}
						}
					}
				} else {
					configForOrder[key] = typeChecker(key, result['Sheet1'][i][configForOrder[key].toUpperCase()])
					if (configForOrder[key] === undefined) {
						delete configForOrder[key]
					}
				}
			}
			data.push(configForOrder)
		}
		if (type === 'order') {
			orderModel.importData(data).then(res => {
			}, error => {
			})
		} else if (type === 'slip') {			
		} else {
			orderModel.importDC(data).then(res => {
			}, error => {
			})
		}
	}

}

/// BACKEND - Post the data into databse

const importData = (data) => {
    return new Promise((resolved, reject) => {
        db.getDocument(config.get('mongodb.database.db.collection.customer')).then((resp) => {
            insetToDb(data, resp);
        }, (error)=> {
            reject(error)
        })
    });
}


const insetToDb = (orderData, customerData) => {
    return new Promise((resolved, reject) => {
        if(orderData) {
            const order = orderData.pop();
            if (order) {
                order.material = order.displayMaterial
                order.lamination = order.displayLamination
                order.coating = order.displayCoating
                order.emboss = order.displayEmboss
                order.foil = order.displayFoil
                order.rEmboss = order.displayREmboss

                if(order.size && order.size.indexOf('*') > -1) {
                    const sizeLBH = order.size.split('*');
                    order.sizeL = parseInt(sizeLBH[0]) ;
                    if(sizeLBH[1] && sizeLBH[1].indexOf(' ') > -1){
                        const sizeBUnit = sizeLBH[1].split(' ');
                        order.sizeB = parseInt(sizeBUnit[0])
                        order.sizeUnit = sizeBUnit[1]
                    } else {
                        order.sizeB = parseInt(sizeLBH[1]);
                    }
                    if(sizeLBH[2] && sizeLBH[2].indexOf(' ') > -1){
                        const sizeHUnit = sizeLBH[2].split(' ');
                        order.sizeH = parseInt(sizeHUnit[0])
                        order.sizeUnit = sizeHUnit[1]
                    } else if (sizeLBH[2]){
                        order.sizeH = parseInt(sizeLBH[2]);
                    }
                }

                const customer = customerData.find(obj =>  obj.cId === order.customerId);
                if(customer) {
                    order.customerId = customer._id.toString();
                    for(const location of order.deliveryDetails) {
                        const selectdLocation = customer.deliveryLocations.find(dLocation => dLocation.locationName === location.locationId)
                        if (selectdLocation) {
                            location.locationId = selectdLocation.id;
                        }
                    }

                    const selectdLedgers = customer.ledgers.find(dLocation => dLocation.name === order.customerLedger)
                        if (selectdLedgers) {
                            order.customerLedger = selectdLedgers.id;
                        }
                }
                saveOrder(order, customerData).then(res => {
                    insetToDb(orderData, customerData)
                }, error => {

                })
            } else {
                resolved(true)
            }
        } else {
            resolved(true)
        }
        
    })
    
}

because * orderModel.importData(data).then * was executed twice whatever the * type * value