import HandleType from '../types/handleType' import { gettaskInfo } from '@/model/indexRx' // 根据业务类型和业务码获取对应url export function code2Url (type, code, state,status,message,businessId) { console.log(type,code, state,message) switch (type) { // 判断 出入库 case 'INOUTTASK': return checkoutput(code, state) // 判断 采购 case 'PROCUREMENT': return checkpurchase(code, state) // 判断 统计报表 case 'REPORT': return checkPurchase(code, state) // 判断 销售 case 'SALE': return sale(code, state) // 判断 运输 case 'Tran': return tran(code, state) // 判断 付款 case 'PAYMENT': return payment(code, state) case 'TRADE': return warehouseReceiptRegulation(code, state) case 'ROLE': return stock(code, state) case 'TRANSPORTATIONTASK': return trantask(code,state,message) case 'WAREHOUSE': return warehousetask(code,state) default: return '' } } // 运输任务 export function trantask(code, state,message){ let url = '' switch (code) { case 'TRANTASK-APPROVE': if(message.indexOf('汽运')!=-1){ url = 'vehicleDispatching' break } if(message.indexOf('火运')!=-1){ url = 'fireDispatching' break } if(message.indexOf('船运')!=-1){ url = 'shippingDispatching' break } } return url } export function warehousetask(code, state){ let url = '' switch (code) { // 出入库任务 case 'INOUTTASK-TASK-APPROVE': url = 'tranManagementWarehouseInOutTask' break } return url } export function checkNavigation (code, state) { // 航海 let url = '' switch (code) { case 'NAVIGATION-APPLY': url = 'applicationDetail' break case 'NAVIGATION_SHIP_SUPPLY': url = 'shipSupplyDetail' break case 'NAVIGATION-APPL-CONFIRM': url = 'applicationDetail'; break; case 'NAVIGATION-APPL-RETURN': url = 'applicationDetail'; break; case 'NAVIGATION-APPL-SUBMIT': url = 'applicationDetail'; break; } return url } // 通知通函 export function checkCircular (code, state) { if (code === 'CIRCULAR-MANAGEMENT-RECEIVE') { // 通知通函 return 'notificationItDetail' } if (code === 'CIRCULAR-MANAGEMENT-POSTED') { // 通知通函 return 'notificationDetail' } return undefined } export function checkMateriel (code, state) { // 物料 let url = '' switch (code) { // 申请单_物料 case 'PURCHASE-MA-APPL14': url = 'appPurDetailMa' // url = "applDetailMa"; break case 'MATERIAL_APPLINFO_MESSAGE': url = 'appPurDetailMa' break case 'PURCHASE-MA-APPL': url = 'maApplicationLabel' break case 'MATERIEL-OUT-STORE': url = isEdited(state) ? 'deliveryEdit' : 'deliveryLabel' break // 新增的物料申请 case 'MATERIEL-APPL-CONFIRM': url = 'maApplicationEdit' break case 'MATERIEL-APPL-SUBMIT': url = 'maApplicationLabel' break case 'MATERIEL-APPL-RETURN': url = 'maApplicationEdit' break case 'MATERIEL-MAT-APPL': url = isEdited(state) ? 'maApplicationEdit' : 'maApplicationLabel' break // 新增物料库存盘点 case 'MATERIEL-CHECK-CONFIRM': url = 'inventoryCountEdit' break case 'MATERIEL-CHECK-SUBMIT': url = 'inventoryCountLabel' break case 'MATERIEL-CHECK-RETURN': url = 'inventoryCountEdit' break case 'MATERIEL-MAT-CHECK': url = isEdited(state) ? 'inventoryCountEdit' : 'inventoryCountLabel' break // 质量反馈 case 'MATERIEL-FB-ADD': url = 'materielQualityFeedbackEdit' break case 'MATERIEL-FB-CONFIRM': url = 'materielQualityFeedbackEdit' break case 'MATERIEL-FB-SUBMIT': url = 'materielQualityFeedbackDetail' break case 'MATERIEL-FB-RETURN': url = 'materielQualityFeedbackEdit' break case 'MATERIEL-FB-AUDIT-SUBMIT': url = 'materielQualityFeedbackDetail' break case 'MATERIEL-FB-AUDIT-CONFIRM': url = 'materielQualityFeedbackDetail' break case 'MATERIEL-FEEDBACK-WORKFLOW': url = isEdited(state) ? 'materielQualityFeedbackEdit' : 'materielQualityFeedbackDetail' break // 物料供船 case 'MATERIEL-IN-STORE': // 待入库 url = 'maShipSupplyEdit' break case 'MATERIEL-IN-STORE-SUBMIT': // 待提交签收单 url = 'maShipSupplyLabel' break // 物料出库 case 'MATERIEL-OUT-CONFIRM': // 待确认任务 url = 'deliveryLabel' break case 'MATERIEL-OUT-RETURN': // 退回做成人任务 url = 'deliveryEdit' break } return url } export function stock (code, state) { if (code === 'TRADE-WAREHOUSE-REPORT') { // 现货入库统计 return 'stockPurchaseReceiptReportList' } return undefined } export function checkSparepart (code, state) { // 备件 let url = '' switch (code) { // case "SPAREPART-FEEDBACK-WORKFLOW": // url = "qualityFeedbackEdit"; // break; // case 'SPAREPART-TRANSACTION-WORKFLOW': // url = 'businessEdit'; // break; case 'SPAREPART_APPLINFO_MESSAGE': url = 'appPurDetail' break case 'PURCHASE-SP-APPL': url = 'appPurDetail' break // 备件入库 case 'SPAREPART-IN-STORE': url = 'shipSupplyEdit' break case 'SPAREPART-OUT-STORE': url = 'theLibraryStatic' break case 'SPAREPART-FEEDBACK-WORKFLOW': url = isEdited(state) ? 'qualityFeedbackEdit' : 'qualityFeedbackDetail' break case 'SPAREPART-TRANSACTION-WORKFLOW': url = 'nonlocalBusinessDetail' break // case 'SPAREPART-SP-APPL': // url = 'clientEdit'; // break; // case 'SPAREPART-SP-CHECK': // url = 'inventoryDrawEdit'; // break; // 新增部分 2020-6-9 case 'SPAREPART-APPL-CONFIRM': url = 'clientEdit' break case 'SPAREPART-APPL-SUBMIT': url = 'staticDetail' //TODO 路由没有 break case 'SPAREPART-APPL-RETURN': url = 'clientEdit' break case 'SPAREPART-SP-APPL': url = isEdited(state) ? 'clientEdit' : 'staticDetail' break // case 'SPAREPART-CHECK-RETURN': // url = 'inventoryDrawEdit' // break; case 'SPAREPART-OUT-CONFIRM': url = 'theLibraryStatic' break case 'SPAREPART-OUT-RETURN': url = 'theLibraryEdit' break // 库存盘点 case 'SPAREPART-CHECK-RETURN': url = 'inventoryDrawEdit' break case 'SPAREPART-SP-CHECK': url = isEdited(state) ? 'inventoryDrawEdit' : 'inventoryDrawStatic' break case 'SPAREPART-CHECK-CONFIRM': url = 'inventoryDrawEdit' break case 'SPAREPART-CHECK-SUBMIT': url = 'inventoryDrawStatic' break case 'SPAREPART-IN-STORE-SUBMIT': url = 'shipSupplyStatic' break // 备件质量反馈 case 'SPAREPART-FB-ADD': url = 'qualityFeedbackEdit' break case 'SPAREPART-FB-CONFIRM': url = 'qualityFeedbackEdit' break case 'SPAREPART-FB-SUBMIT': url = 'qualityFeedbackDetail' break case 'SPAREPART-FB-RETURN': url = 'qualityFeedbackEdit' break case 'SPAREPART-FB-AUDIT-SUBMIT': url = 'qualityFeedbackDetail' break case 'SPAREPART-FB-AUDIT-CONFIRM': url = 'qualityFeedbackDetail' break } return url } export function checkRepair (code, state) { // 修船 let url = '' switch (code) { case 'REPAIR-VOYAGE-APPL': url = isEdited(state) ? 'detailEditRequisitionVoyage' : 'detailRequisitionVoyage' // 航修申请单 break case 'REPAIR-VOYAGE-BUDGET': url = isEdited(state) ? 'projectBudgetBillDatail' : 'projectBudgetBillLabel' break case 'REPAIR-VOYAGE-ACCEPTANCE': url = isEdited(state) ? 'detailEditAcceptanceReport' : 'detailAcceptanceReport' // 航修验收单 break case 'REPAIR-VOYAGE-SETTLEMENT': url = isEdited(state) ? 'statementGenerateList' : 'statementGenerateDatail' // 航修结算单 break case 'REPAIR-SELF-SETTLEMENT': url = isEdited(state) ? 'detailEditSettlement' : 'detailSettlement' // 自修结算单 break case 'REPAIR-QUALITY-FEEDBACK': url = isEdited(state) ? 'qualityList' : 'qualityDetail' // 质量反馈 break case 'REPAIR-YEAR-PLAN': url = isEdited(state) ? 'annualRepairList' : 'annualRepairDetail' // 年度计划 break case 'REPAIR-YARD-APPLY': url = isEdited(state) ? 'detailEditRequisitionFactory' : 'detailRequisitionFactory' // 厂修申请单 break case 'REPAIR-YARD-PROJECT': url = isEdited(state) ? 'factoryProjectDetailChange' : 'factoryProjectDetailLable' break case 'REPAIR-YARD-BUDGET': url = isEdited(state) ? 'factoryProjectBudgetDatailChange' : 'factoryProjectBudgetDatailLabel' break case 'REPAIR-YARD-ACCEPTANCE': url = isEdited(state) ? 'acceptanceList' : 'acceptanceDetail' // 厂修验收单 break } return url } export function checkMaintain (code, state, typeShow) { // 维修保养 let url = '' switch (code) { case 'MAINTAIN-WORKORDER': // 工单报告 url = 'maintenanceReportList' break case 'MAINTAIN-TIMER': //计时器 url = isWarnDely(state, typeShow) ? 'clockUpdateHistory' : 'equipmentTimer' break case 'MAINTAIN-CHECKREPORT': // 检查报告 url = isWarnDely(state, typeShow) ? isEdited(state) ? 'inspectionReportEdit' : 'inspectionReportDetail' : 'inspectionReportList' break case 'MAINTAIN-CHECKREPORT-MSG': // 检查报告消息 url = 'inspectionReportDetail' break case 'MAINTAIN-CHECKREPORT-EDIT': url = isWarnDely(state, typeShow) ? isEdited(state) ? 'inspectionReportEdit' : 'inspectionReportDetail' : 'inspectionReportList' break } return url } export function checkOil (code, state) { // 油品 let url = '' switch (code) { case 'OIL-MONTHLY-CONSUMPTION-APPROVE': // url = "fuelConsumptionMonthAdd"; url = isEdited(state) ? 'fuelConsumptionMonthEdit' : 'fuelConsumptionMonthDetail' break case 'OIL-VOYAGE-CONSUMPTION-APPROVE': // url = "fuelConsVoyageEdit"; url = isEdited(state) ? 'fuelConsVoyageEdit' : 'fuelConsVoyageDetail' break case 'OIL-APPLY-APPROVE': url = isEdited(state) ? 'applicationRefuelingEdit' : 'applicationRefuelingDetail' break case 'OIL-BUNKERING-REPORT-APPROVE': url = isEdited(state) ? 'retrofitReportEdit' : 'retrofitReportDetail' break case 'OIL-FEEDBACK-APPROVE': url = isEdited(state) ? 'qualityFeedbacksAdd' : 'qualityFeedbacksDetail' break } return url } export function checkServicer (code, state) { // 服务商 let url = '' switch (code) { case 'SERVICER-MERCHANT-ADD': url = isEdited(state) ? 'serviceProviderEdit' : 'serviceProviderDetail' break } return url } export function checkInspection (code, state) { // 产品 船舶检查 let url = '' switch (code) { case 'ISM-SHIPPSC-INSPECTION-REPORT': url = isEdited(state) ? 'inspectionPscNewly' : 'inspectionPscDetails' break case 'ISM-SHIPFSC-INSPECTION-REPORT': url = isEdited(state) ? 'inspectionFscNewly' : 'inspectionFscDetails' break case 'INS-VISIT-SHIP': url = isEdited(state) ? 'visitingNewly' : 'visitingDetails' break case 'INS-INCOMPATIBLE-REPORT': url = isEdited(state) ? 'faultinessNewly' : 'faultinessDetails' break // 产品- 船舶自查 case 'INS-SHIPSELF-INSPECTION-REPORT': url = isEdited(state) ? 'inspectionNewly' : 'inspectionDetails' break case 'INS-SHIPPSC-INSPECTION-REPORT': url = isEdited(state) ? 'inspectionPscNewly' : 'inspectionPscDetails' break case 'INS-SHIPFSC-INSPECTION-REPORT': url = isEdited(state) ? 'inspectionFscNewly' : 'inspectionFscDetails' break } return url } export function checkIsm (code, state) { // 体系 let url = '' switch (code) { // 产品-体系-start case 'TX-FILE-RECEIVE-CODE': url = 'circulationStatement' break case 'TX-FILE-RECEIVE': url = 'circulationStatement' break // 修改文件 ISM-SYSTEM-OPERATION case 'ISM-SYSTEM-OPERATION': url = 'systemOperation' break // 产品-体系-end // case 'ISM-SYSTEM-OPERATION': // url = 'systemOperation' // break case 'ISM-SYSTEM-FILE': url = 'systemOperation' break case 'ISM-FSCXT-INSPECTION-REPORT': url = isEdited(state) ? 'inspectionReportFscEditqgxt' : 'inspectionReportFscDetailqgxt' break case 'ISM-SELFXT-INS-REPORT': url = isEdited(state) ? 'selfReportEditqgxt' : 'selfReportDetailqgxt' break case 'ISM-VISIT-VESSEL-PLAN': url = isEdited(state) ? 'visitingPlanEdit' : 'visitingPlanDetail' break case 'ISM-VISIT-VESSEL-REPORT': url = isEdited(state) ? 'visitingReportqgxtEdit' : 'visitingReportqgxtDetail' break case 'NCOMPATIBLE-REPORT': url = isEdited(state) ? 'nonConformEdit' : 'nonConformDetail' break // case 'ISM-INCOMPATIBLE-REPORT': // url = isEdited(state) ? 'nonConformEdit' : 'nonConformCheck' // break // 产品- 缺陷管理-不符合报告 case 'ISM-INCOMPATIBLE-REPORT': url = isEdited(state) ? 'faultinessNewly' : 'faultinessDetails' break // 产品- 船舶自查 case 'ISM-SHIPSELF-INSPECTION-REPORT': url = isEdited(state) ? 'inspectionNewly' : 'inspectionDetails' break // 产品- 岸基访船 case 'ISM-VISIT-SHIP': url = isEdited(state) ? 'visitingNewly' : 'visitingDetails' break // case 'ISM-SHIPSELF-INSPECTION-REPORT': // url = isEdited(state) ? 'selfReportEdit' : 'selfReportDetail' // break // 产品 =船舶检查 case 'ISM-SHIPPSC-INSPECTION-REPORT': url = isEdited(state) ? 'inspectionPscNewly' : 'inspectionPscDetails' break case 'ISM-SHIPFSC-INSPECTION-REPORT': url = isEdited(state) ? 'inspectionFscNewly' : 'inspectionFscDetails' break // case 'ISM-SHIPPSC-INSPECTION-REPORT': // url = isEdited(state) // ? 'inspectionReportPscEdit' // : 'inspectionReportPscDetail' // break // case 'ISM-SHIPFSC-INSPECTION-REPORT': // url = isEdited(state) // ? 'inspectionReportFscEdit' // : 'inspectionReportFscDetail' // break case 'SYSTEM-OPERATION': url = 'systemOperation' break // case 'ISM-VISIT-SHIP': // url = isEdited(state) ? 'visitingReportEdit' : 'visitingReportDetail' // break case 'ISM-COMP-INS-REPORT': url = 'companyInspectionReportSave' break case 'ISM-SELFFY-INS-REPORT': url = 'selfReportUpdate' break case 'ISM-INC-STUA-REPORT': url = isEdited(state) ? 'nonConformConditionAdd' : 'nonConformConditionEdit' break case 'ISM-SITE-SUPERVISION-REPORT': url = isEdited(state) ? 'shipSiteSupervisionReportEdit' : 'shipSiteSupervisionReportDetail' break case 'ISM-THIRD-INSPECTION-REPORT': url = isEdited(state) ? 'thirdPartyInspectionReportEdit' : 'thirdPartyInspectionReportDetail' break // case 'TX-FILE-RECEIVE': // url = 'systemOperation'; // break; // case 'TX-FILE-RECEIVE-CODE': // url = 'systemOperation'; // break; } return url } export function checkMonitor (code, state) { // 海务 let url = '' switch (code) { case 'Voyage-Plan': url = 'voyagePlanEdit' break case 'Voyage-Plan-Submit': url = 'voyagePlanDetail' break case 'Voyage-Plan-Commit': url = 'voyagePlanEdit' break case 'Voyage-Plan-Submission': url = 'voyagePlanDetail' break case 'MONITOR-VOYAGE-PLAN': url = 'voyagePlanDetail' break case 'Voyage-Mission-Audit': url = 'voyageTaskDetail' break case 'Voyage-Mission-Submit': url = 'voyageTaskEdit' break case 'Voyage-Mission-Return': // url = isEdited(state) ? "voyageTaskEdit" : "voyageTaskDetail"; url = 'voyageTaskEdit' break case 'VoyageMission-Add': url = 'voyageTaskEdit' break case 'VoyageMission-Submit': url = 'voyageTaskEdit' break case 'VoyageMission-Return': url = 'voyageTaskDetail' break case 'Department-Improve': url = 'voyageTaskDetail' break case 'Reviewed-By-Department': url = 'voyageTaskDetail' break case 'Reviewed-By-General': url = 'voyageTaskDetail' break case 'Implementation-Feedback': url = 'voyageTaskDetail' break case 'Dynamic-Report-Confirm': url = 'checkReports' break case 'Voyage-Mission-Msg': url = 'voyageTaskDetailNew' break case 'Voyage-Mission-Return-New': url = 'voyageTaskEditNew' break case 'Voyage-Mission-Audit-New': url = 'voyageTaskDetailNew' break case 'Department-Improve-New': url = 'voyageTaskDetailNew' break case 'Reviewed-By-General-New': url = 'voyageTaskDetailNew' break case 'Implementation-Feedback-New': url = 'voyageTaskDetailNew' break } if (code && code !== '') { if ( code.includes('RETURNED_BY_DEPARTMENT') || code.includes('REVIEWED_BY_DEPARTMENT') ) { url = 'voyageTaskDetail' } else if ( code.includes('Returned-By-Department-New') || code.includes('Reviewed-By-Department-New') ) { url = 'voyageTaskDetailNew' } } return url } export function checkVessel (code, state) { let url = '' switch (code) { case 'VESSEL-NOON-REPORT': case 'DYNAMIC-REPORT-CONFIRM': case 'DYNAMIC-REPORT-VIEW': url = 'dynamicReportView' break } return url } export function checkoutput (code, state) { let url = '' let compDomainName = localStorage.getItem('ws-pf_compDomainName') switch (code) { // 出入库 case 'INOUTTASK-TASK-APPROVE': url = 'tranManagementWarehouseInOuttask' break default: url = undefined } return url } export function checkpurchase (code, state) { let url = '' switch (code) { case 'PROCUREMENT-CLOSE-REPORT': url = 'purchaseClosingCashierList' break case 'PROCUREMENT-RECEIPT-REPORT': url = 'purchaseReceiptStatisticsList' break case 'PROCUREMENT-ORDER-APPROVE': url = 'purchaseOrderList' break default: url = undefined } return url } export function checkPurchase (code, state) { let url = '' switch (code) { // 申请单-备件 case 'PURCHASE-SP-APPL-REMIND': url = 'sparepart' break // 申请单-物料 case 'PURCHASE-MA-APPL-REMIND': url = 'sparepartMa' break // 询价单-备件 case 'PURCHASE-SP-PARITY-SUBMITTED': url = 'parityDetail' break // 询价单-物料 case 'PURCHASE-MA-PARITY-SUBMITTED': url = 'parityDetailMa' break case 'PURCHASE-SP-APPL': url = 'appPurDetail' // url = "applDetail"; break // 比价单-备件 case 'PURCHASE-SP-PARITY': url = 'parityDetail' break case 'PURCHASE-SP-PURCHASE-SUBMITTED': url = 'purchasDetail' break case 'PURCHASE-MA-PURCHASE-SUBMITTED': url = 'purchasDetailMa' break case 'PURCHASE-SP-PURCHASE-SEND': url = 'purchasDetail' break case 'PURCHASE-MA-PURCHASE-SEND': url = 'purchasDetailMa' break case 'PURCHASE-SP-BILL-SUBMITTED': url = 'billDetail' break case 'PURCHASE-MA-BILL-SUBMITTED': url = 'billDetailMa' break // 采购单-备件 case 'PURCHASE-SP-PURCHAS': url = 'purchasDetail' break // 结算单-备件 case 'PURCHASE-SP-BILL': url = 'billDetail' break // 申请单_物料 case 'PURCHASE-MA-APPL': case 'PURCHASE-MA-APPL14': url = 'appPurDetailMa' // url = "applDetailMa"; break // 比价单_物料 case 'PURCHASE-MA-PARITY': url = 'parityDetailMa' break // 采购单-物料 case 'PURCHASE-MA-PURCHAS': url = 'purchasDetailMa' break // 结算单-物料 case 'PURCHASE-MA-BILL': url = 'billDetailMa' break // 申请单-海图 case 'PURCHASE-MAP-APPL': url = 'applDetailMap' break // 比价单-海图 case 'PURCHASE-MAP-PARITY': url = 'parityDetailMap' break case 'PURCHASE-NAV-APPL-REMIND': url = 'sparepartMap'; break; case 'PURCHASE-NAV-PURCHASE-SUBMITTED': url = 'purchasDetailMap'; break; case 'PURCHASE-NAV-PARITY-SUBMITTED': url = 'parityDetailMap'; break; case 'PURCHASE-NAV-PURCHASE-SEND': url = 'purchasDetailMap'; break; case 'PURCHASE-MAP-PURCHAS': url = 'purchasDetailMap'; break; case 'PURCHASE-NAV-BILL-SUBMITTED': url = 'billDetailMap'; break; case 'PURCHASE-MAP-BILL': url = 'billDetailMap'; break; // 2020-07-14 case 'PURCHASE-SP-BILL-SUBMIT': url = 'billDetail'; break; case 'PURCHASE-SP-BILL-AUDIT': url = 'billDetail'; break; case 'PURCHASE-MA-BILL-SUBMIT': url = 'billDetailMa'; break; case 'PURCHASE-MA-BILL-AUDIT': url = 'billDetailMa'; break; case 'PURCHASE-NAV-BILL-SUBMIT': url = 'billDetailMap'; break; case 'PURCHASE-NAV-BILL-AUDIT': url = 'billDetailMap'; break; default: url = undefined } return url } export function sale (code, state) { if (code === 'SALE-CLOSE-REPORT') { // 销售平仓统计 return 'salesClosingCashierList' } if (code === 'SALE-RECEIPT-REPORT') { // 销售出库统计 return 'salesDeliveryReportList' } if (code === 'SALE-ORDER-APPROVE') { // 销售订单 return 'salesOrderList' } return undefined } export function tran (code, state) { if (code === 'TRAN-TASK-APPROVE') { // 运输单价 return 'vehicleDispatching' } return undefined } export function payment (code, state) { if (code === 'PAYMENT-MANAGEMENT-APPROVE') { // 付款管理 return 'paymentManagement' } return undefined } export function warehouseReceiptRegulation (code, state) { if (code === 'STOCK-PROCUREMENT-RECEIPT-REPORT') { // 付款管理 return 'stockWarehouseReceiptRegulation' } return undefined } // 调度 export function checkDispatch (code, state) { let url = '' switch (code) { // 航次指令 case 'DISPATCH-VOYAGE-COMMAND': url = isEdited(state) ? 'addVoyageInstruction' : 'detailVoyageInstruction' break // 动态报 case 'DISPATCH-DYNAMIC-REPORT': url = isEdited(state) ? 'addDynamicNewspaper' : 'detailDynamicNewspaper' break default: url = undefined } return url } export function isHandled (state) { if ( state === HandleType.COMPLETED || state === HandleType.HANDLED || state === HandleType.NEED_CONFIRMED ) { return true } return false } // 是否是已退回、待完善的状态 export function isEdited (state) { if (state === HandleType.RETURN || state === HandleType.TO_BE_MORE) { return true } return false } export function isWarnDely (state, typeShow) { if (typeShow === '0') { return true } return false }