def test_functions_defaults(self): self.assertEqual(get_last_value(), None) self.assertEqual(get_next_value(), 1) self.assertEqual(get_last_value(), 1) self.assertEqual(get_next_value(), 2) self.assertEqual(get_last_value(), 2) self.assertEqual(get_next_value(), 3)
def test_functions_sequence_name(self): self.assertEqual(get_last_value("cases"), None) self.assertEqual(get_next_value("cases"), 1) self.assertEqual(get_last_value("cases"), 1) self.assertEqual(get_next_value("cases"), 2) self.assertEqual(get_last_value("invoices"), None) self.assertEqual(get_next_value("invoices"), 1) self.assertEqual(get_last_value("invoices"), 1) self.assertEqual(get_next_value("invoices"), 2)
def retorna_numero_do_protocolo(cls): id_sequecial = get_last_value('protocolo_analise_sensorial') serial = '' if id_sequecial is None: id_sequecial = '1' else: id_sequecial = str(get_last_value('protocolo_analise_sensorial') + 1) for _ in range(MAX_NUMERO_PROTOCOLO - len(id_sequecial)): serial = serial + '0' serial = serial + str(id_sequecial) return f'AS{serial}'
def outbound(request, id=0): if 'is_login' not in request.session or request.session['limit'] <= datetime.datetime.today().strftime('%Y-%m-%d'): return redirect('login') else: if request.session['role'] == "OPR": raise PermissionDenied else: if request.method == "GET": if id == 0: context = { 'form': OutboundForm(), 'title': 'Add Outbound | Outbound', 'customer': Customer.objects.filter(deleted=0, userGroup=request.session['usergroup']), 'date': datetime.datetime.now().strftime("%Y-%m-%d"), 'id_outbound_date': datetime.datetime.now().strftime("%d%m%Y"), 'id_outbound': get_last_value('outbound_seq'), 'role': request.session['role'], 'username': request.session['username'], 'group_id': request.session['usergroup'], 'con_cre': request.session['id'], } return render(request, 'inside/wmsOutbound/outbound.html', context) return render(request, 'inside/wmsOutbound/update_outbound.html', context) else: if id == 0: form = OutboundForm(request.POST) if form.is_valid(): form.save() if id == 0: get_next_value('outbound_seq') return redirect('outbound') return render(request, 'inside/wmsOutbound/outbound.html')
def subcategory(request, id=0): if 'is_login' not in request.session or request.session[ 'limit'] <= datetime.datetime.today().strftime('%Y-%m-%d'): return redirect('login') else: if request.session['role'] == "OPR": raise PermissionDenied else: if request.method == "GET": if id == 0: context = { 'form': SubcategoryForm(), 'category': Category.objects.get(pk=request.session['category']), 'subcategory_id': get_last_value('subcategory_seq'), 'group_id': request.session['usergroup'], 'role': request.session['role'], 'username': request.session['username'], 'title': 'Add Subcategory | Inbound' } return render(request, 'inside/wmsInbound/subcategoryCreate.html', context) else: subcategory = Subcategory.objects.get(pk=id) context = { 'form': SubcategoryForm(instance=subcategory), 'subcategory': subcategory, 'role': request.session['role'], 'group_id': request.session['usergroup'], 'username': request.session['username'], 'title': 'Update Subcategory | Inbound' } return render(request, 'inside/wmsInbound/subcategoryUpdate.html', context) else: if id == 0: form = SubcategoryForm(request.POST) else: subcategory = Subcategory.objects.get(pk=id) form = SubcategoryForm(request.POST, instance=subcategory) if form.is_valid(): form.save() if id == 0: get_next_value('subcategory_seq') return redirect('subcategoryIndex', id=request.session['category'])
def register(request): if request.method == "GET": context = { 'title': 'Register Akun', 'id': get_last_value('usergroup_seq'), 'provinsi': Province.objects.all(), } return render(request, "inside/wmsGroup/register.html", context) elif request.method == "POST": if UserGroup.objects.filter(email=request.POST['email']).exists(): messages.error(request, 'Email already exists') return redirect('groupRegister') else: form = UserGroupForm(request.POST, request.FILES) if form.is_valid(): form.save() man_user = User.objects.create( name='MAN_'+request.POST['name'], username=request.POST['email'], password=request.POST['password'], userGroup=UserGroup.objects.get(pk=request.POST['id']), role=Role.objects.get(pk='MAN') ) man_user.save() get_next_value('usergroup_seq') email = urlsafe_base64_encode(force_bytes(request.POST['email'])) domain = get_current_site(request).domain token = token_generator.make_token(request.POST['phoneNumber']) link = reverse('activate', kwargs={'email': email, 'token': token}) usergroup = UserGroup.objects.filter(email=request.POST['email']) usergroup.update(token=token) activate_url = 'http://'+domain+link email_subject = 'Activate WMS Polpos account' email_body = 'Hello '+request.POST['name']+' link activate is '+activate_url email = EmailMessage( email_subject, email_body, settings.EMAIL_HOST_USER, [request.POST['email']], ) email.send(fail_silently=False) return redirect('login') else: messages.error(request, 'Terjadi Error') return redirect('groupRegister') else: context = { 'title': 'Register Akun', 'ug': UserGroup.objects.get(pk=request.session['usergroup']) } return render(request, "inside/wmsGroup/register.html", context)
def rack(request): if 'is_login' not in request.session or request.session[ 'limit'] <= datetime.datetime.today().strftime('%Y-%m-%d'): return redirect('login') else: if request.session['role'] == 'OPR': raise PermissionDenied else: if request.method == "GET": context = { 'form': RackForm(), 'role': request.session['role'], 'group_id': request.session['usergroup'], 'username': request.session['username'], 'id': get_last_value('rack_seq'), 'title': 'Add Rack', } return render(request, 'inside/wmsStorage/rackCreate.html', context) else: if Rack.objects.filter(rack=request.POST['rack'], userGroup=request.session['usergroup'], deleted=0).exists(): messages.error(request, 'Rack ID has been used') return redirect('rackCreate') else: form = RackForm(request.POST) if form.is_valid(): form.save() numberbin = int(request.POST['row']) * int( request.POST['col']) data_bin = [] for i in range(int(numberbin)): binlocation = request.POST['rack'] + (str(i + 1)) data_bin.append( Binlocation( binlocation=binlocation, rack=Rack.objects.get( pk=request.POST['id']), capacity=request.POST['capacity'], userGroup=UserGroup.objects.get( pk=request.session['usergroup']))) Binlocation.objects.bulk_create(data_bin) get_next_value('rack_seq') return redirect('rackIndex') return render(request, 'inside/wmsStorage/rackIndex.html')
def supplier(request, id=0): if 'is_login' not in request.session or request.session[ 'limit'] <= datetime.datetime.today().strftime('%Y-%m-%d'): return redirect('login') else: if request.session['role'] == "OPR": raise PermissionDenied else: if request.method == "GET": if id == 0: context = { 'form': SupplierForm(), 'id_supplier': get_last_value('supplier_seq'), 'group_id': request.session['usergroup'], 'username': request.session['username'], 'role': request.session['role'], 'title': 'Add Supplier | Inbound' } return render(request, 'inside/wmsInbound/supplier.html', context) else: supplier = Supplier.objects.get(pk=id) context = { 'form': SupplierForm(instance=supplier), 'supplier': supplier, 'group_id': request.session['usergroup'], 'username': request.session['username'], 'role': request.session['role'], 'title': 'Update Supplier | Inbound' } return render(request, 'inside/wmsInbound/update_supplier.html', context) else: if id == 0: form = SupplierForm(request.POST) else: supplier = Supplier.objects.get(pk=id) form = SupplierForm(request.POST, instance=supplier) if form.is_valid(): form.save() if id == 0: get_next_value('supplier_seq') return redirect('list_supplier') return render(request, 'inside/wmsInbound/supplier.html')
def supplierReturn(request, id=0): if 'is_login' not in request.session or request.session[ 'limit'] <= datetime.datetime.today().strftime('%Y-%m-%d'): return redirect('login') else: if request.session['role'] == 'OPR': raise PermissionDenied else: if request.method == "GET": if id == 0: context = { 'inbound': Inbound.objects.filter( deleted=0, status=2, userGroup=request.session['usergroup']), 'form': SupplierReturnForm(), 'id': request.session['id'], 'role': request.session['role'], 'group_id': request.session['usergroup'], 'username': request.session['username'], 'id_supplierreturn': get_last_value('supplierreturn_seq'), 'date': datetime.datetime.today().strftime('%Y-%m-%d'), 'title': 'Add Supplier Return', } return render( request, 'inside/wmsReturn/supplierReturnCreate.html', context) else: if id == 0: form = SupplierReturnForm(request.POST) if form.is_valid(): form.save() if id == 0: get_next_value('supplierreturn_seq') return redirect('supplierReturnIndex')
def customer(request, id=0): if 'is_login' not in request.session or request.session['limit'] <= datetime.datetime.today().strftime('%Y-%m-%d'): return redirect('login') else: if request.session['role'] == "OPR": raise PermissionDenied else: if request.method == "GET": if id == 0: context = { 'form': CustomerForm(), 'id_customer': get_last_value('customer_seq'), 'title': 'Add Customer | Customer', 'role': request.session['role'], 'username': request.session['username'], 'group_id': request.session['usergroup'], 'con_cre': request.session['id'], } return render(request, 'inside/wmsOutbound/customer.html', context) else: customer = Customer.objects.get(pk=id) context = { 'form': CustomerForm(instance=customer), 'customer': customer, 'group_id': request.session['usergroup'], 'title': 'Update customer | customer' } return render(request, 'inside/wmsOutbound/update_customer.html', context) else: if id == 0: form = CustomerForm(request.POST) else: customer = Customer.objects.get(pk=id) form = CustomerForm(request.POST, instance=customer) if form.is_valid(): form.save() print(form.save()) if id == 0: get_next_value('customer_seq') return redirect('customer') return render(request, 'inside/wmsOutbound/customer.html')
def costumerReturn(request, id=0): if 'is_login' not in request.session or request.session[ 'limit'] <= datetime.datetime.today().strftime('%Y-%m-%d'): return redirect('login') else: if request.session['role'] == 'OPR': raise PermissionDenied else: if request.method == "GET": if id == 0: context = { 'form': CostumerReturnForm(), 'id': request.session['id'], 'role': request.session['role'], 'group_id': request.session['usergroup'], 'username': request.session['username'], 'id_costumerreturn': get_last_value('costumerreturn_seq'), 'date': datetime.datetime.today().strftime('%Y-%m-%d'), 'title': 'Add Costumer Return', } return render( request, 'inside/wmsReturn/costumerReturnCreate.html', context) else: if id == 0: form = CostumerReturnForm(request.POST) if form.is_valid(): outbound = Outbound.objects.get( pk=request.POST['outbound']) if request.POST['userGroup'] != outbound.userGroup.id: messages.error(request, 'Outbound ID Not exist') return redirect('costumerReturnCreate') form.save() if id == 0: get_next_value('costumerreturn_seq') return redirect('costumerReturnIndex') else: messages.error(request, 'Outbound ID Not exist') return redirect('costumerReturnCreate')
def borrow(request, id=0): if 'is_login' not in request.session or request.session[ 'limit'] <= datetime.datetime.today().strftime('%Y-%m-%d'): return redirect('login') else: if request.session['role'] == 'OPR': raise PermissionDenied else: if request.method == "GET": if id == 0: context = { 'form': BorrowForm(), 'id': request.session['id'], 'role': request.session['role'], 'group_id': request.session['usergroup'], 'username': request.session['username'], 'id_borrow': get_last_value('borrow_seq'), 'date': datetime.datetime.today().strftime('%Y-%m-%d'), 'title': 'Add Borrow Data', } return render(request, 'inside/wmsBorrow/borrowCreate.html', context) else: borrow = Borrow.objects.get(pk=id) context = { 'form': BorrowForm(instance=borrow), 'item': Item.objects.filter( deleted=0, userGroup=request.session['usergroup']), 'borrow': borrow, 'borrow_date': datetime.datetime.today().strftime('%Y-%m-%d'), 'borrow_id': request.session['borrow'], 'id': request.session['id'], 'role': request.session['role'], 'group_id': request.session['usergroup'], 'username': request.session['username'], 'title': 'Update List Borrow Data', } return render(request, 'inside/wmsBorrow/borrowUpdate.html', context) else: if id == 0: form = BorrowForm(request.POST) else: borrow = Borrow.objects.get(pk=id) form = BorrowForm(request.POST, instance=borrow) if form.is_valid(): form.save() if id == 0: get_next_value('borrow_seq') return redirect('borrowIndex')
def outbounddata(request, id=0): if 'is_login' not in request.session or request.session['limit'] <= datetime.datetime.today().strftime('%Y-%m-%d'): return redirect('login') else: if request.session['role'] == "OPR": raise PermissionDenied else: print(it.avaibleItem(1, 0, request.session['usergroup'])) if request.method == "GET": if id == 0: context = { 'form': OutboundDataForm(), 'title': 'Add Outbounddata | Outbound', 'id_outbounddata': get_last_value('outbounddata_seq'), 'role': request.session['role'], 'group_id': request.session['usergroup'], 'username': request.session['username'], 'item': it.avaibleItem(1, 0, request.session['usergroup']), 'outboundid': request.session['outbound_id'], } return render(request, 'inside/wmsOutbound/outbounddata.html', context) else: outbounddata = OutboundData.objects.get(pk=id) context = { 'title': 'Update Outbounddata | Outbound', 'form': OutboundDataForm(instance=outbounddata), 'item': it.avaibleItem(1, 0, request.session['usergroup']), 'outbounddata': outbounddata, 'outboundid': request.session['outbound_id'], 'group_id': request.session['usergroup'], 'role': request.session['role'], 'username': request.session['username'], } return render(request, 'inside/wmsOutbound/update_outbounddata.html', context) else: if id == 0: form = OutboundDataForm(request.POST) else: outbounddata = OutboundData.objects.get(pk=id) form = OutboundDataForm( request.POST, instance=outbounddata) if form.is_valid(): formqty = request.POST['quantity'] formitem = request.POST['item'] item = it.avaibleItem( 1, 0, request.session['usergroup']) for i in item: if i['item'] == formitem: if i['qty'] < int(formqty): messages.error( request, 'Item quantity exceeded the limit !') return redirect('add_outbounddata') else: qtyOut = list(OutboundData.objects.filter( outbound=request.session['outbound_id'], deleted=0, userGroup=request.session['usergroup']).values_list('item__id')) j = 0 while j < len(qtyOut): if qtyOut[j][0] == formitem: out = OutboundData.objects.filter( item=i['item'], outbound=request.session['outbound_id'], userGroup=request.session['usergroup']) outqty = out.first().quantity if id == 0: out.update( quantity=outqty + int(formqty)) return redirect('view_outbound', id=request.session['outbound_id']) else: out.update( quantity=int(formqty)) return redirect('view_outbound', id=request.session['outbound_id']) j += 1 form.save() if id == 0: get_next_value('outbounddata_seq') return redirect('view_outbound', id=request.session['outbound_id'])
def item(request, id=0): if 'is_login' not in request.session or request.session[ 'limit'] <= datetime.datetime.today().strftime('%Y-%m-%d'): return redirect('login') else: if request.session['role'] == "OPR": raise PermissionDenied else: if request.method == "GET": if id == 0: context = { 'form': ItemForm(), 'subcategory': Subcategory.objects.filter( deleted=0, userGroup=request.session['usergroup']), 'item_id': get_last_value('item_seq'), 'group_id': request.session['usergroup'], 'role': request.session['role'], 'username': request.session['username'], 'title': 'Add Item | Inbound' } return render(request, 'inside/wmsInbound/itemCreate.html', context) else: item = Item.objects.get(pk=id) context = { 'form': ItemForm(instance=item), 'item': item, 'subcategory': Subcategory.objects.filter( deleted=0, userGroup=request.session['usergroup']), 'role': request.session['role'], 'group_id': request.session['usergroup'], 'username': request.session['username'], 'title': 'Update Item | Inbound' } return render(request, 'inside/wmsInbound/itemUpdate.html', context) else: if id == 0: form = ItemForm(request.POST) else: item = Item.objects.get(pk=id) form = ItemForm(request.POST, instance=item) if form.is_valid(): form.save() if id == 0: get_next_value('item_seq') return redirect('itemIndex')
def inbound_data(request, id=0): if 'is_login' not in request.session or request.session[ 'limit'] <= datetime.datetime.today().strftime('%Y-%m-%d'): return redirect('login') else: if request.session['role'] == "OPR": raise PermissionDenied else: item = Item.objects.filter(userGroup=request.session['usergroup'], deleted=0).all() if request.method == "GET": if id == 0: context = { 'form': InboundDataForm(), 'item': item, 'username': request.session['username'], 'role': request.session['role'], 'group_id': request.session['usergroup'], 'inbound_id': request.session['inbound_id'], 'date': datetime.datetime.now().strftime("%Y-%m-%d"), 'id_inbounddata_date': datetime.datetime.now().strftime("%d%m%Y"), 'inbounddata_id': get_last_value('inbounddata_seq'), 'title': 'Add InboundData | Inbound', } return render(request, 'inside/wmsInbound/inbounddata.html', context) else: inbounddata = InboundData.objects.get(pk=id) context = { 'form': InboundDataForm(instance=inbounddata), 'item': item, 'title': 'Update ItemData | Inbound', 'username': request.session['username'], 'role': request.session['role'], 'inboundid': request.session['inbound_id'], 'inbounddata': inbounddata, } return render(request, 'inside/wmsInbound/update_inbounddata.html', context) else: if id == 0: form = InboundDataForm(request.POST) else: inbounddata = InboundData.objects.get(pk=id) form = InboundDataForm(request.POST, instance=inbounddata) if form.is_valid(): formqty = request.POST['quantity'] formitem = request.POST['item'] formreject = request.POST['reject'] Inbounddata = list( InboundData.objects.filter( inbound=request.session['inbound_id'], userGroup=request.session['usergroup'], deleted=0).values_list('item__id', flat=True)) if id == 0: for i in Inbounddata: if i == formitem: InData = InboundData.objects.filter( item=i, inbound=request.session['inbound_id'], userGroup=request.session['usergroup'], deleted=0) InData.update( quantity=InData.first().quantity + int(formqty), rejectCounter=InData.first().rejectCounter + int(formreject), reject=InData.first().reject + int(formreject)) return redirect( 'view_inbound', id=request.session['inbound_id']) form.save() if id == 0: get_next_value('inbounddata_seq') return redirect('view_inbound', id=request.session['inbound_id']) return render(request, 'inside/wmsInbound/view_inbound.html')
def costumerReturndata(request, id=0): if 'is_login' not in request.session or request.session[ 'limit'] <= datetime.datetime.today().strftime('%Y-%m-%d'): return redirect('login') else: if request.session['role'] == 'OPR': raise PermissionDenied else: if CostumerReturn.objects.get( pk=request.session['costumerReturn']).status == '1': if request.method == "GET": if id == 0: context = { 'form': CostumerReturndataForm(), 'item': it.avaibleItem(1, 0, request.session['usergroup']), 'costumerReturnId': request.session['costumerReturn'], 'id': request.session['id'], 'role': request.session['role'], 'group_id': request.session['usergroup'], 'username': request.session['username'], 'id_costumerreturndata': get_last_value('costumerreturndata_seq'), 'date': datetime.datetime.today().strftime('%Y-%m-%d'), 'title': 'Add Costumer Return Data', } return render( request, 'inside/wmsReturn/costumerReturndataCreate.html', context) else: costumerReturn = CostumerReturn.objects.get(pk=id) context = { 'form': CostumerReturndataForm(), 'item': it.avaibleItem(1, 0, request.session['usergroup']), 'costumerReturnId': request.session['costumerReturn'], 'id': request.session['id'], 'role': request.session['role'], 'group_id': request.session['usergroup'], 'username': request.session['username'], 'date': datetime.datetime.today().strftime('%Y-%m-%d'), 'title': 'Add Costumer Return Data', 'id_costumerreturndata': id } return render( request, 'inside/wmsReturn/costumerReturndataUpdate.html', context) else: if id == 0: form = CostumerReturndataForm(request.POST) else: costumerReturn = CostumerReturn.objects.get(pk=id) form = CostumerReturndataForm(request.POST, instance=costumerReturn) if form.is_valid(): formqty = request.POST['quantity'] formitem = request.POST['item'] item = it.avaibleItem(1, 0, request.session['usergroup']) for i in item: if i['item'] == formitem: if i['qty'] < int(formqty): messages.error( request, 'Item quantity exceeded the limit !') return redirect('costumerReturndataCreate') else: qtyCostumer = list( CostumerReturnData.objects.filter( costumerReturn=request. session['costumerReturn'], deleted=0).values_list('item__id')) j = 0 while j < len(qtyCostumer): if qtyCostumer[j][0] == formitem: cosRet = CostumerReturnData.objects.filter( item=i['item'], costumerReturn=request. session['costumerReturn'], userGroup=request. session['usergroup']) cosRetqty = cosRet.first().quantity cosRet.update(quantity=cosRetqty) return redirect( 'costumerReturndataIndex', id=request. session['costumerReturn']) j += 1 form.save() if id == 0: get_next_value( 'costumerreturndata_seq') return redirect( 'costumerReturndataIndex', id=request.session['costumerReturn']) else: raise PermissionDenied
def supplierReturndata(request, id=0): if 'is_login' not in request.session or request.session[ 'limit'] <= datetime.datetime.today().strftime('%Y-%m-%d'): return redirect('login') else: if request.session['role'] == 'OPR': raise PermissionDenied else: if request.method == "GET": if id == 0: data = [] inbound = list( InboundData.objects.filter( deleted=0, userGroup=request.session['usergroup'], inbound=request.session['id_inbound']).values( 'id', 'item', 'rejectCounter', 'item__name')) supplierReturnData = list( SupplierReturnData.objects.filter( deleted=0, userGroup=request.session['usergroup'], supplierReturn=request.session['supplierReturn']). values('id', 'item', 'quantity')) for i in inbound: a = 0 for s in supplierReturnData: if i['item'] == s['item']: data.append({ 'id': i['id'], 'rejectCounter': i['rejectCounter'] - s['quantity'], 'item': i['item__name'], 'item_id': i['item'] }) a = 1 break if a == 0: data.append({ 'id': i['id'], 'rejectCounter': i['rejectCounter'], 'item': i['item__name'], 'item_id': i['item'] }) context = { 'form': SupplierReturndataForm(), 'inbounddata': InboundData.objects.filter( inbound=request.session['id_inbound'], deleted=0, userGroup=request.session['usergroup']), 'supplierReturnId': request.session['supplierReturn'], 'id': request.session['id'], 'role': request.session['role'], 'data': data, 'group_id': request.session['usergroup'], 'username': request.session['username'], 'date': datetime.datetime.today().strftime('%Y-%m-%d'), 'id_supplierreturndata': get_last_value('supplierreturndata_seq'), 'title': 'Add Supplier Return Data', } return render( request, 'inside/wmsReturn/supplierReturnDataCreate.html', context) else: supplierReturn = SupplierReturnData.objects.get(pk=id) context = { 'form': SupplierReturndataForm(instance=supplierReturn), 'inbounddata': InboundData.objects.filter( inbound=request.session['id_inbound'], deleted=0, userGroup=request.session['usergroup']), 'item': it.avaibleItem(1, 0, request.session['usergroup']), 'supplierReturnId': request.session['supplierReturn'], 'id': request.session['id'], 'role': request.session['role'], 'group_id': request.session['usergroup'], 'username': request.session['username'], 'date': datetime.datetime.today().strftime('%Y-%m-%d'), 'title': 'Add Supplier Return Data', 'supplierreturn': supplierReturn, } return render( request, 'inside/wmsReturn/supplierReturnDataUpdate.html', context) else: if id == 0: form = SupplierReturndataForm(request.POST) else: supplierReturn = SupplierReturnData.objects.get(pk=id) form = SupplierReturndataForm(request.POST, instance=supplierReturn) if form.is_valid(): formqty = request.POST['quantity'] formitem = request.POST['item'] rejectCounter = list( InboundData.objects.filter( inbound=request.session['id_inbound'], deleted=0, userGroup=request.session['usergroup']).values( 'rejectCounter', 'item')) # for s in rejectCounter: # if formitem == (s['item']): # if int(formqty) > (s['rejectCounter']): # messages.error( # request, 'Item quantity exceeded the limit !') # return redirect('supplierReturndataCreate') if id == 0: for i in rejectCounter: # print(i['item']) # print(i['rejectCounter']) if i['item'] == formitem: if int(formqty) > (i['rejectCounter']): messages.error( request, 'Item quantity exceeded the limit !') return redirect('supplierReturndataCreate') else: qtySupplier = list( SupplierReturnData.objects.filter( supplierReturn=request. session['supplierReturn'], deleted=0, userGroup=request. session['usergroup']).values_list( 'item__id')) j = 0 while j < len(qtySupplier): if qtySupplier[j][0] == formitem: supRet = SupplierReturnData.objects.filter( item=qtySupplier[j][0], supplierReturn=request. session['supplierReturn'], deleted=0, userGroup=request. session['usergroup']) pprint(supRet) supRetqty = supRet.first().quantity supRet.update(quantity=supRetqty + int(formqty)) # inbounddata2 = InboundData.objects.filter( # item=qtySupplier[j][0], inbound=request.session['id_inbound'], deleted=0, userGroup=request.session['usergroup']) # inbounddata3 = inbounddata2.first() # inbounddata2.update(rejectCounter=inbounddata3.rejectCounter - int( # formqty), quantity=inbounddata3.quantity + int(formqty)) return redirect( 'supplierReturndataIndex', id=request. session['supplierReturn']) j += 1 form.save() # inbounddata2 = InboundData.objects.filter( # item=formitem, inbound=request.session['id_inbound'], deleted=0, userGroup=request.session['usergroup']) # inbounddata3 = inbounddata2.first() # # pp (inbounddata2) # # pp (inbounddata3.rejectCounter) # inbounddata2.update( # rejectCounter=inbounddata3.rejectCounter - int(formqty), quantity=inbounddata3.quantity + int(formqty)) if id == 0: get_next_value('supplierreturndata_seq') return redirect('supplierReturndataIndex', id=request.session['supplierReturn']) else: return HttpResponse('error')
def borrowdata(request, id=0): if 'is_login' not in request.session or request.session[ 'limit'] <= datetime.datetime.today().strftime('%Y-%m-%d'): return redirect('login') else: if request.session['role'] == 'OPR': raise PermissionDenied else: if Borrow.objects.get(pk=request.session['borrow']).status != '1': raise PermissionDenied else: if request.method == "GET": if id == 0: context = { 'form': BorrowdataForm(), 'id_borrowdata': get_last_value('borrowdata_seq'), 'item': it.avaibleItem(1, 0, request.session['usergroup']), 'borrow_id': request.session['borrow'], 'id': request.session['id'], 'role': request.session['role'], 'group_id': request.session['usergroup'], 'username': request.session['username'], 'title': 'Add List Borrow Data', } return render( request, 'inside/wmsBorrow/borrowdataCreate.html', context) else: borrowdata = BorrowData.objects.get(pk=id) context = { 'form': BorrowdataForm(instance=borrowdata), 'item': it.avaibleItem(1, 0, request.session['usergroup']), 'borrowdata': borrowdata, 'borrow_id': request.session['borrow'], 'id': request.session['id'], 'role': request.session['role'], 'group_id': request.session['usergroup'], 'username': request.session['username'], 'title': 'Update List Borrow Data', } return render( request, 'inside/wmsBorrow/borrowdataUpdate.html', context) else: if id == 0: form = BorrowdataForm(request.POST) else: borrowdata = BorrowData.objects.get(pk=id) form = BorrowdataForm(request.POST, instance=borrowdata) if form.is_valid(): formqty = request.POST['quantity'] formitem = request.POST['item'] item = it.avaibleItem(1, 0, request.session['usergroup']) for i in item: if i['item'] == formitem: if i['qty'] < int(formqty): messages.error( request, 'Item quantity exceeded the limit !') return redirect('borrowdataCreate') else: qtyBorrow = list( BorrowData.objects.filter( borrow=request.session['borrow'], deleted=0, userGroup=request. session['usergroup']).values_list( 'item__id')) j = 0 while j < len(qtyBorrow): if qtyBorrow[j][0] == formitem: bor = BorrowData.objects.filter( item=i['item'], borrow=request. session['borrow'], userGroup=request. session['usergroup'], deleted=0) borqty = bor.first().quantity if id == 0: bor.update(quantity=borqty + int(formqty)) return redirect( 'borrowView', id=request. session['borrow']) else: bor.update( quantity=int(formqty)) return redirect( 'borrowView', id=request. session['borrow']) j += 1 form.save() if id == 0: get_next_value('borrowdata_seq') return redirect( 'borrowView', id=request.session['borrow'])