def changeOrderItemStatus(request): data = request.POST pk = data['pk']; instock = int(data['instock']); orderitem = OrderItem.objects.get(pk = pk); order = orderitem.order orderitem.status = 'I' if instock < orderitem.quantity: new_order_item = OrderItem() new_order_item.quantity = orderitem.quantity - instock new_order_item.category = orderitem.category new_order_item.description = orderitem.description new_order_item.status = 'P' new_order_item.order = orderitem.order new_order_item.save() inform_purchase_agent(subject='سفارش نیازمند خرید است',message=render_to_string('mail/buy_orderitem.html',{'orderitem' : new_order_item})) if instock == 0: orderitem.delete() else: orderitem.quantity = instock orderitem.save() inner_q = Good.objects.filter(category=orderitem.category,user=None)[:instock] Good.objects.filter(pk__in = inner_q).update(user=order.user) inform_user(user=order.user, message=render_to_string('mail/orderitem_available.html', {'orderitem': orderitem}), subject='سفارش شما در انبار موجود است') #check and change the status of the order if OrderItem.objects.filter(order= order,status='N').count() == 0: return HttpResponse('order_changed') return HttpResponse("success")
def addGood(request): buy_agent = MyBackend().authenticate(request.POST['username'], request.POST['password']) if buy_agent == None or (buy_agent.groups.all()[0].name != 'B' and not buy_agent.is_superuser) : return HttpResponse('borooo') today = jDateField() today = today.to_python(datetime.datetime.now()) order = Order.objects.filter(pk=int(request.POST['order']))[0] orderitem = OrderItem.objects.filter(pk=int(request.POST['orderitem']))[0] orderitem.status = 'I' orderitem.save() if not order.user == None: inform_user(user=order.user, message=render_to_string('mail/orderitem_available.html', {'orderitem': orderitem}), subject='سفارش شما در انبار موجود است') if not OrderItem.objects.filter(order=order).exclude(status='I'): order.status = 'D' order.save() for i in range(0, orderitem.quantity): good = Good(submitDate=today, category=orderitem.category, user=order.user, orderitem=orderitem, status='W') good.save() c = {'rlink': '../../allgoods/', 'success': "کالاها با موفقیت ثبت شدند"} return render_to_response("success.html", c)
def deleteDamaged(request): damaged = Damaged.objects.get(pk=request.POST['pk']) inform_user(user=damaged.good.user, message=render_to_string("mail/damaged_deleted.html", {'good': damaged.good}), subject='کالای معیوب شما مرجوعی است') deleteFromQuerySet(request, Damaged.objects) damaged.good.delete() return HttpResponse('success')
def returnDamaged(request): columns = ['status'] damaged = Damaged.objects.get(pk=request.POST['pk']) inform_user(user=damaged.good.user, message=render_to_string("mail/damaged_repaired.html", {'good': damaged.good}), subject='کالای شما تعمیر شد') changeQuerySet(request, columns=columns, queryset=Damaged.objects) return HttpResponse('success')
def acceptOrder(request): order=Order.objects.get(pk=int(request.POST['pk'])) if order.user != None: inform_user(user=order.user, message=render_to_string('mail/order_accepted.html', {'order': order}), subject='سفارش شما تایید شد') inform_warehouse_manager( message=render_to_string('mail/order_warehouse_manager.html', {'order': order}), subject='سفارش نیازمند بررسی است') columns = ["status"] return changeQuerySet(request,columns,Order.objects)
def deleteOrder(request): order=Order.objects.get(pk=int(request.POST['pk'])) if order.user != None: inform_user(user=order.user, message=render_to_string('mail/order_rejected.html', {'order': order}), subject='سفارش شما رد شد') return deleteFromQuerySet(request,Order.objects)