createPlan method
Create plan.
Implementation
void createPlan(String id, String commandSetId, NmTelecomL10n l10n, {String? cloneFromId}) {
final source = cloneFromId == null ? null : repository.byId(cloneFromId);
final record = source != null
? NmDialPlan(
id: id,
commandSetId: commandSetId,
priority: source.priority,
proTag: source.proTag,
onlineMax: source.onlineMax,
addMax: source.addMax,
canIn: source.canIn,
canOut: source.canOut,
canSout: source.canSout,
notVip: source.notVip,
qualityFlags: source.qualityFlags,
capOk: source.capOk,
capNew: source.capNew,
capFail: source.capFail,
diffSlow: source.diffSlow,
diffMin: source.diffMin,
diffMinOut: source.diffMinOut,
timeWake: source.timeWake,
timeSleep: source.timeSleep,
timeWorkWake: source.timeWorkWake,
timeWorkSleep: source.timeWorkSleep,
timeHolidayWake: source.timeHolidayWake,
timeHolidaySleep: source.timeHolidaySleep,
directions: source.directions,
iattMin: source.iattMin,
iattMax: source.iattMax,
iattSoft: source.iattSoft,
inAcdMin: source.inAcdMin,
inAcdMax: source.inAcdMax,
outAcdMin: source.outAcdMin,
outAcdMax: source.outAcdMax,
forwarding: source.forwarding,
outInAns: source.outInAns,
conn: source.conn,
rand: source.rand,
inWait: source.inWait,
inSound: source.inSound,
mayLimit: source.mayLimit,
monLimit: source.monLimit,
msmLimit: source.msmLimit,
smsoutSoft: source.smsoutSoft,
smsoutHard: source.smsoutHard,
sattSoft: source.sattSoft,
sattHard: source.sattHard,
sattSoftDay: source.sattSoftDay,
sattHardDay: source.sattHardDay,
sattSoftTotal: source.sattSoftTotal,
sattHardTotal: source.sattHardTotal,
nospam: source.nospam,
)
: NmDialPlan(
id: id,
commandSetId: commandSetId,
directions: [
for (var n = 0; n < 6; n++) NmPlanDirectionSlot(slot: n, editable: n >= 1 && n <= 4, alg: 0, nodiff: false, limitSoft: 0, limitHard: 0),
],
);
repository.create(record, l10n);
_selectImmediately(id);
}