Misma info de sim para el /select
This commit is contained in:
46
packages/sim-consumidor-objenious/domain/transformers.ts
Normal file
46
packages/sim-consumidor-objenious/domain/transformers.ts
Normal file
@@ -0,0 +1,46 @@
|
||||
import { CommonSim } from "sim-shared/domain/CommonSim.js";
|
||||
import { ObjeniousLine } from "sim-shared/domain/objeniousLine.js";
|
||||
|
||||
type ObjeniousBillingStates = ObjeniousLine["status"]["billingStatus"]
|
||||
type ObjeniousNetworkStates = ObjeniousLine["status"]["networkStatus"]
|
||||
|
||||
//"PREACTIVATED" | "ACTIVE" | "SUSPENDED" | "TERMINATED" | "UNKNOWN",
|
||||
const objeiousStates = new Map<ObjeniousBillingStates, CommonSim<any>["billing_status"]>([
|
||||
["ACTIVATED", "ACTIVE"],
|
||||
["CANCELED", "TERMINATED"],
|
||||
["SUSPENDED", "SUSPENDED"],
|
||||
["TEST", "PREACTIVATED"]
|
||||
])
|
||||
|
||||
const objeiousNetworkStates = new Map<ObjeniousNetworkStates, CommonSim<any>["network_status"]>([
|
||||
["ACTIVATED", "ACTIVE"],
|
||||
["CANCELED", "TERMINATED"],
|
||||
["SUSPENDED", "SUSPENDED"],
|
||||
["BARRED", "SUSPENDED"]
|
||||
])
|
||||
|
||||
export function objeniousSimToCommon(objSim: ObjeniousLine): CommonSim<ObjeniousLine> {
|
||||
const status = objeiousStates.get(objSim.status.billingStatus) ?? "UNKNOWN"
|
||||
const networkStatus = objeiousNetworkStates.get(objSim.status.networkStatus) ?? "UNKNOWN"
|
||||
|
||||
const preDate = objSim.status.preactivationDate
|
||||
const actDate = objSim.status.activationDate
|
||||
|
||||
const preactivate = (preDate) ? new Date(preDate) : null
|
||||
const activate = (actDate) ? new Date(actDate) : null
|
||||
|
||||
const common: CommonSim<ObjeniousLine> = {
|
||||
company: "OBJ",
|
||||
tariff: objSim.offer.code,
|
||||
iccid: objSim.identifier.iccid,
|
||||
msisdn: objSim.identifier.msisdn,
|
||||
billing_status: status,
|
||||
network_status: networkStatus,
|
||||
raw: objSim,
|
||||
imei: objSim.identifier.imei,
|
||||
preactivation_date: preactivate,
|
||||
activation_date: activate
|
||||
}
|
||||
|
||||
return common
|
||||
}
|
||||
Reference in New Issue
Block a user