2026-07-27 11:28:33 +08:00

277 lines
9.1 KiB
JavaScript

const zytHis = require("./zyt-his");
const drugInfo = require("./drug-info");
const patientDescription = require("./patient-description");
const tencentIM = require("./tencent-im");
const hlwDoctor = require("./hlw-doctor");
const hlwReg = require("./hlw-reg/hlw-reg");
const hlwDiagnosis = require("./hlw-diagnosis");
const consultOrder = require("./consult-order");
const diagnosticRecord = require("./diagnostic-record");
const beijingCa = require("./beijing-ca");
const chatRecord = require("./chat-record");
const drugStore = require("./drug-store");
const statistics = require("./statistics");
const chargeItem = require("./charge-item");
const downloadXlsx = require("./download-xlsx");
const hlwTimeDuration = require("./hlw-time-duration");
const hlwConfig = require("./hlw-config");
const famliyProfile = require("./family-profile");
const mrtc = require("./mrtc");
const address = require("./address");
const lackMedicineReg = require("./lack-medicine-reg");
const medicinePurchaseOrder = require("./medicine-purchase-order");
const stats = require("./stats");
const onlineDrugInfo = require("./online-drug-info");
const fengniaoApi = require("./fengniao");
const miniAppLog = require("./mini-app-log");
const chineseMedicine = require("./chinese-medicine");
const chineseMedicineOrder = require("./chinese-medicine-order");
const hlwPatient = require("./hlw-patient");
module.exports = async (item, db, res) => {
switch (item.type) {
case "getHisCustomer":
case "addHisCustomer":
case "registration":
case "getPayStatus":
case "hlwRefund":
case "hlwuploadprescription":
case "hlwPrescriptionOrderStatus":
case "getRecent90daysDrugRecord":
case "getHisDrugInfo":
case "getHisInvoice":
case "getHisEmployeeInfo":
case "getWineDrugStockInfo":
return await zytHis(item, db);
case "getDrugInfo":
case "deleteDrugInfo":
case "updateDrugInfo":
case "addDrugInfo":
case "getHlwDrugInfo":
case "editHlwDrugInfo":
case "addHlwDrugInfo":
case "setHlwDrugOnSale":
case "importHlwDrugInfo":
case "getStoreSimilarDrugInfo":
case "searchDrugs":
return await drugInfo(item, db);
case "addPatientDescription":
case "deletePatientDescription":
case "updatePatientDescription":
case "getPatientDescription":
return await patientDescription(item, db);
case "sendSystemNotification":
case "generateUserSig":
case "setUserProfileOrderStatys":
case "setUserProfile":
return await tencentIM(item, db);
case "getHlwDoctorList":
case "getHlwPersonList":
case "deleteHlwDoctor":
case "updateHlwDoctor":
case "addHlwDoctor":
case "getRandomOnlineDoctor":
case "isDoctorOnline":
case "getAllDoctorNos":
case "getRecommendDoctor":
case "getOptimalRecommendDoctor":
case "setPharmacistOnlineStatus":
case "getPharmacistOnlineStatus":
case "addHlwPerson":
case "updateHlwPerson":
case "deleteHlwPerson":
case "updateHlwPersonDeptInfo":
case "autoSetPeopleOffline":
case "getDoctorByNo":
return await hlwDoctor(item, db);
case "getDiagnosisList":
case "deleteHlwDiagnosis":
case "updateHlwDiagnosis":
case "addHlwDiagnosis":
case "updateHlwDiagnosisCategory":
return await hlwDiagnosis(item, db);
case "getConsultOrder":
case "updateConsultOrder":
case "deleteConsultOrder":
case "addConsultOrder":
case "addDrugStoreConsultOrder":
case "updateConsultOrderStatus":
case "getPatientOrder":
case "getPatientOrderList":
case "getDrugStoreOrderList":
case "refundConsultOrder":
case "acceptConsultOrder":
case "completeConsultOrder":
case "finishConsultOrder":
case "startConsultOrder":
case "refreshOrderPayStatus":
case "cancelConsultOrder":
case "doctorHasPendingOrder":
case "serviceFinishConsultOrder":
case "getHisStoreRegList":
case "validHlwOrderConfig":
case "getOrderPatientList":
case "getHlwOrderList":
case "applyRefundOrder":
case "getRefundOrderList":
case "handleRefundOrder":
case "autoHandleExpireOrder":
return await consultOrder(item, db);
case "addConsultDiagnosis":
case "getOrderDiagnosis":
case "getAuditDiagnosisList":
case "getAuditedDiagnosisList":
case "auditDiagnosis":
case "uploadDiagnosis":
case "reUploadDiagnosticRecord":
case "getPatientDiagnosisRecord":
case "getPatientPassDiagnosisRecord":
case "getLatestSubmitTime":
case "orderHasDiagnosis":
case "getStoreDiagnosisRecord":
case "getAllDiagnosisRecord":
case "getDoctorRxStats":
case "getPharmacistRxStats":
case "checkRxUploadStatus":
case "getAccountRxList":
case "getRxDetail":
case "getAccountHistoryDrugs":
case "getPatientHistoryDrugs":
case "runOnlineRxExpireSchedule":
case "getRxMedicineOrderStatus":
case "getPatientHomeRxCount":
case "getReUploadRxList":
case "handleReUploadRx":
case "getDiagnosisById":
case "getPatientWineBuyCount":
case "getYbReviewResult":
return diagnosticRecord(item, db);
case "caAuth":
case "getSealImage":
case "getCaUserInfo":
case "startAutoSign":
case "autoSign":
case "closeAutoSign":
case "autoSignVerifyCA":
return await beijingCa(item, db);
case "addChatMsg":
case "getChatRecord":
return await chatRecord(item, db);
case "getChargeList":
case "addHlwChargeItem":
case "deleteHlwChargeItem":
case "editHlwChargeItem":
return await chargeItem(item, db)
case "hlwStats":
return await stats(item, db);
case "getDrugStoreList":
case "addDrugStore":
case "editDrugStore":
case "getChargeItemList":
case "setDrugStoreStatus":
case "getDrugStoreOptions":
case "getSaleWineStatus":
return await drugStore(item, db);
case "getDoctorPrescriptionCount":
case "getStoreOrderStatistics":
case "getTimePeriodStatistics":
return await statistics(item, db);
case "hlwWebReg":
case "hlwWebRegSettle":
case "getPatientHlwRegList":
case "hlwRegRefund":
case "getRegPayStatus":
return await hlwReg(item, db);
case "downloadXlsx":
return await downloadXlsx(item, db, res);
case "getDoctorTimeStats":
return await hlwTimeDuration(item, db);
case "getHlwOrderConfig":
case "updateHlwOrderConfig":
case "getHlwConfigGroup":
case "getHlwConfigByCorpIds":
return await hlwConfig(item, db);
case "addFamilyProfile":
case "getFamilyProfile":
case "updateFamilyProfile":
case "sm4Encrypt":
return await famliyProfile(item, db);
case "getMrtcConfig":
case "notifyVideoRoomCreated":
case "notifyVideoRoomEnded":
case "saveMrtcRecordEvent":
case "getMrtcRecordList":
return await mrtc(item, db);
case "addAddress":
case "updateAddress":
case "deleteAddress":
case "getAddressList":
case "getDefaultAddress":
return await address.main(item, db);
case "addLackMedicineReg":
case "getLackMedicineList":
return await lackMedicineReg(item, db);
case "getRxMedicinePurchaseOrderId":
case "getMedicinePurchaseOrder":
case "getMedicinePurchaseOrderList":
case "getMedicinePurchaseShippingList":
case "reloadYbPayStatus":
case "reloadZfPayStatus":
case "getMedicineOrderTradeNo":
case "getShippingDetail":
case "runMedicinePurchaseOrderSchedule":
case "refundMedicinePurchaseOrderSelfFee":
case "refundMedicinePurchaseOrderYbFee":
case "getMedicinePurchaseOrderDetail":
case "updateAfterSaleInfo":
case "getLastestPurchaseOrder":
case "getPatientPurchaseOrderList":
case "getHighFreqAddressOrders":
return await medicinePurchaseOrder(item, db);
case "testFengniaoAvailable":
case "getCancelReasons":
case "preCancelFengniaoOrder":
return await fengniaoApi.main(item, db);
case "getOnlineDrugList":
case "getOnlineDrugInfo":
case "addOnlineDrugInfo":
case "editOnlineDrugInfo":
case "setOnlineDrugOnSale":
case "importOnlineDrugInfo":
case "getOnlineSimilarDrugInfo":
case "checkOnlineDrugInfoStock":
case "getOnlineDrugRepeatTags":
return await onlineDrugInfo.main(item, db);
case "addAlipayMiniAppLaunchLog":
return await miniAppLog[item.type](item, db);
case "getMedicalWineList":
return await chineseMedicine.main(item, db);
case "getRxMedicalWineOrder":
case "getWineOrderPayQrcode":
case "initRxMedicalWineOrder":
case "checkReceiveAddress":
case "runChineseMedicineOrderSchedule":
case 'getWineShippingList':
case 'getWineShippingDetail':
case 'updateWineAfterSaleInfo':
case 'getWineOrderStatus':
case 'refundWineOrderFee':
case 'refundWineOrderShippingFee':
case 'getWineOrderPatient':
case 'reCreateWineEmsOrder':
return await chineseMedicineOrder.main(item, db);
case "addHlwPatient":
case "autoAddHlwPatient":
case "getHlwPatientList":
case "getHlwPatient":
case "updateHlwPatient":
case "deleteHlwPatient":
return await hlwPatient.main(item, db);
default:
return {
success: false,
message: "未找到接口",
};
}
};