def callback_c(n, durationValue, amountValue, rvValue, scheduleRows, modeValue, rateValue, **kwargs): user = kwargs['user'] if n is None: user = kwargs['user'] return [ html.Div('Lease quote', className='h3 mb-0'), dbc.Button("Save quote", id="save_quote_button", className="d-none d-md-block btn btn-sm btn-primary"), ] return dash.no_update else: if n > 1: return [ html.Div('Lease quote', className='h3 mb-0'), ] customer = get_object_or_404(Customer, pk=1) contract = Contract() contract.customer = customer contract.user = user contract.status = 'Created' contract.creation_date = datetime.date.today() contract.status_date = datetime.date.today() contract.save() schedule = Schedule() schedule.contract = contract schedule.mode = modeValue schedule.rv = rvValue schedule.amount = amountValue schedule.start_date = startdate schedule.rate = rateValue / 120000 schedule.save() i = 0 for scheduleRow in scheduleRows: if (modeValue == '01'): date = startdate + relativedelta(months=i) else: date = startdate + relativedelta(months=i + 1) i = i + 1 step = Step() step.schedule = schedule step.rent = scheduleRow['rent'] step.balance = scheduleRow['balance'] step.date = date step.save() return [ html.Div('Lease quote', className='h3 mb-0 text-gray-800'), html.Div('Quote saved !', className='h3 mb-0 text-gray-800'), ]
def test_saving_and_retrieving_schedule(self): schedule1 = Schedule(event="New", start_time=datetime.time(11, 23, 44), end_time=datetime.time(11, 25, 44)) schedule1.save() schedule2 = Schedule(event="Next", start_time=datetime.time(8, 11, 10), end_time=datetime.time(8, 25, 12)) schedule2.save() saved_schedule = Schedule.objects.all() self.assertEqual(saved_schedule.count(), 2) self.assertEqual(saved_schedule[0], schedule1) self.assertEqual(saved_schedule[1], schedule2)
def save(self): schedule_code = self.cleaned_data['file'].read() parser = ScheduleParser() schedule = parser.parse(schedule_code) with transaction.commit_on_success(): t = Trigger.objects.get(method__name=schedule['trigger_method'], method__interface__name=schedule['trigger_interface']) s = Schedule(trigger=t, name=schedule['schedule_name'], schedule_file=self.cleaned_data['file']) s.save() for action in schedule['actions']: a = Action.objects.get(name=action['action_name']) sa = ScheduleAction(schedule=s, action=a) if action['trigger_from'] != None: ad = ActionDevice.objects.get(action=a, parameter_position=action['trigger_from']) sa.trigger_device = ad sa.save()
def setUp(self): import datetime schedule1 = Schedule(event="New", start_time=datetime.time(11, 23), end_time=datetime.time(11, 25)) schedule1.save()