Exemplo n.º 1
0
 def post(self, request, *args, **kwargs):
     postdata = request.data
     data = {
         "name": postdata.get('name', ''),
         "mobile": postdata.get('mobile', ''),
         "comments": postdata.get('comments', ''),
         "openid": postdata.get('openid', '')
     }
     script_obj = re.findall(r'script', str(data), re.IGNORECASE)
     select_obj = re.findall(r'select', str(data), re.IGNORECASE)
     if script_obj:
         return JsonResponse(FBMsg.err_bad())
     elif select_obj:
         return JsonResponse(FBMsg.err_bad())
     else:
         ip = request.META.get('HTTP_X_FORWARDED_FOR') if request.META.get(
             'HTTP_X_FORWARDED_FOR') else request.META.get('REMOTE_ADDR')
         if 'name' not in data:
             err_contact_name = FBMsg.err_contact_name()
             return JsonResponse(err_contact_name)
         else:
             if data['name'] == '':
                 err_contact_name = FBMsg.err_contact_name()
                 return JsonResponse(err_contact_name)
             else:
                 if 'mobile' not in data:
                     err_contact_mobile = FBMsg.err_contact_mobile()
                     return JsonResponse(err_contact_mobile)
                 else:
                     if data['mobile'] == '':
                         err_contact_mobile = FBMsg.err_contact_mobile()
                         return JsonResponse(err_contact_mobile)
                     else:
                         if 'comments' not in data:
                             err_contact_comments = FBMsg.err_contact_comments(
                             )
                             return JsonResponse(err_contact_comments)
                         else:
                             if data['comments'] == '':
                                 err_contact_comments = FBMsg.err_contact_comments(
                                 )
                                 return JsonResponse(err_contact_comments)
                             else:
                                 Contact.objects.create(
                                     name=data['name'],
                                     mobile=data['mobile'],
                                     comments=data['comments'],
                                     openid=data['openid'],
                                     ip=ip)
                                 ret = FBMsg.ret()
                                 ret['ip'] = ip
                                 ret['data'] = data
                                 return JsonResponse(ret)
Exemplo n.º 2
0
 def patch(self, request, *args, **kwargs):
     if models.Users.objects.filter(openid=request.auth,
                                    appid=request.user.appid,
                                    developer=1,
                                    is_delete=0).exists():
         pass
     else:
         return Response(FBMsg.err_dev())
     data = DataSolve.datasolve(request)
     try:
         if data['code'] == "1031":
             return Response(FBMsg.err_bad())
     except:
         ip = request.META.get('HTTP_X_FORWARDED_FOR') if request.META.get(
             'HTTP_X_FORWARDED_FOR') else request.META.get('REMOTE_ADDR')
         if models.Users.objects.filter(
                 transaction_code=data['transaction_code'],
                 developer=0,
                 is_delete=0).exists():
             patch_data = models.Users.objects.filter(
                 transaction_code=data['transaction_code'],
                 developer=0,
                 is_delete=0).first()
             patch_data.nickname = data['nickname']
             patch_data.save()
             ret = FBMsg.ret()
             ret['ip'] = ip
             ret['data'] = data
             return Response(ret)
         else:
             return Response(FBMsg.err_tc_empty())
Exemplo n.º 3
0
 def post(self, request, *args, **kwargs):
     vip_id = Users.objects.filter(appid=request.user.appid, developer=1, is_delete=0).first().vip
     vip_check = VipCheck.VipCheck(vip_id)
     if vip_check == "N":
         return Response(FBMsg.wms_vip())
     elif vip_check == "Y":
         data = DataSolve.datasolve(request)
         try:
             if data['code'] == "1031":
                 return Response(FBMsg.err_bad())
         except:
             if ListModel.objects.filter(appid=request.user.appid, is_delete=0).count() > 0:
                 ret = FBMsg.wms_warehouse_more()
                 ret['data'] = data
                 return Response(ret)
             else:
                 ListModel.objects.create(appid=request.user.appid, name=str(data['name']), province=str(data['province']),
                                          city=str(data['city']), district=str(data['district']), address=str(data['address']),
                                          manager=str(data['manager']), mobile=str(data['mobile']), t_code=Md5.md5(str(data['name'])))
                 ip = request.META.get('HTTP_X_FORWARDED_FOR') if request.META.get(
                     'HTTP_X_FORWARDED_FOR') else request.META.get('REMOTE_ADDR')
                 ret = FBMsg.wms_ret()
                 ret['ip'] = ip
                 ret['data'] = data
                 return Response(ret)
     else:
         return Response(FBMsg.wms_vip())
Exemplo n.º 4
0
 def post(self, request, *args, **kwargs):
     vip_id = Users.objects.filter(appid=request.user.appid, developer=1, is_delete=0).first().vip
     vip_check = VipCheck.VipCheck(vip_id)
     if vip_check == "N":
         return Response(FBMsg.wms_vip())
     elif vip_check == "Y":
         data = DataSolve.datasolve(request)
         try:
             if data['code'] == "1031":
                 return Response(FBMsg.err_bad())
         except:
             if ListModel.objects.filter(appid=request.user.appid, name=str(data['name']), is_delete=0).exists():
                 ret = FBMsg.wms_same()
                 ret['data'] = data
                 return Response(ret)
             else:
                 create_name = Users.objects.filter(openid=request.auth, appid=request.user.appid,
                                                    is_delete=0).first().name
                 ListModel.objects.create(appid=request.user.appid, name=str(data['name']), create_name=create_name,
                                          t_code=Md5.md5(str(data['name'])))
                 ip = request.META.get('HTTP_X_FORWARDED_FOR') if request.META.get(
                     'HTTP_X_FORWARDED_FOR') else request.META.get('REMOTE_ADDR')
                 ret = FBMsg.wms_ret()
                 ret['ip'] = ip
                 ret['data'] = data
                 return Response(ret)
     else:
         return Response(FBMsg.wms_vip())
Exemplo n.º 5
0
 def patch(self, request, *args, **kwargs):
     vip_id = Users.objects.filter(appid=request.user.appid, developer=1, is_delete=0).first().vip
     vip_check = VipCheck.VipCheck(vip_id)
     if vip_check == "N":
         return Response(FBMsg.wms_vip())
     elif vip_check == "Y":
         data = DataSolve.datasolve(request)
         try:
             if data['code'] == "1031":
                 return Response(FBMsg.err_bad())
         except:
             if ListModel.objects.filter(appid=request.user.appid, t_code=str(data['t_code']), is_delete=0).exists():
                 patch_name = ListModel.objects.get(t_code=str(data['t_code'])).name
                 if patch_name != str(data['name']):
                     if ListModel.objects.filter(appid=request.user.appid, name=str(data['name']), is_delete=0).exists():
                         ret = FBMsg.wms_same()
                         ret['data'] = data
                         return Response(ret)
                 patch_data = ListModel.objects.filter(appid=request.user.appid, t_code=str(data['t_code']), is_delete=0).first()
                 if 'name' in data:
                     patch_data.name = str(data['name'])
                 patch_data.save()
                 ip = request.META.get('HTTP_X_FORWARDED_FOR') if request.META.get(
                     'HTTP_X_FORWARDED_FOR') else request.META.get('REMOTE_ADDR')
                 ret = FBMsg.wms_ret()
                 ret['ip'] = ip
                 ret['data'] = data
                 return Response(ret)
             else:
                 ret = FBMsg.wms_err()
                 ret['data'] = data
                 return Response(ret)
     else:
         return Response(FBMsg.wms_vip())
Exemplo n.º 6
0
 def patch(self, request, *args, **kwargs):
     data = DataSolve.datasolve(request)
     try:
         if data['code'] == "1031":
             return Response(FBMsg.err_bad())
     except:
         ip = request.META.get('HTTP_X_FORWARDED_FOR') if request.META.get(
             'HTTP_X_FORWARDED_FOR') else request.META.get('REMOTE_ADDR')
         if models.NoteBook.objects.filter(openid=request.auth, id=data['id']).exists():
             if 'progress' in data:
                 progress_data = models.NoteBook.objects.get(id=data['id'])
                 progress_data.icon = 'check'
                 progress_data.icon_color = 'green'
                 progress_data.progress = 1
                 progress_data.save()
                 ret = FBMsg.ret()
                 ret['ip'] = ip
                 ret['data'] = data
                 return Response(ret)
             elif 'desc' in data:
                 progress_data = models.NoteBook.objects.get(id=data['id'])
                 progress_data.desc = data['desc']
                 progress_data.save()
                 ret = FBMsg.ret()
                 ret['ip'] = ip
                 ret['data'] = data
                 return Response(ret)
Exemplo n.º 7
0
 def post(self, request, *args, **kwargs):
     vip_id = Users.objects.filter(appid=request.user.appid, developer=1, is_delete=0).first().vip
     vip_check = VipCheck.VipCheck(vip_id)
     if vip_check == "N":
         return Response(FBMsg.wms_vip())
     elif vip_check == "Y":
         data = DataSolve.datasolve(request)
         try:
             if data['code'] == "1031":
                 return Response(FBMsg.err_bad())
         except:
             date_data = str(datetime.date.today()).split('-')
             check_date = str(date_data[0]) + str(date_data[1]) + str(date_data[2])
             create_name = Users.objects.filter(openid=request.auth, appid=request.user.appid, is_delete=0).first().name
             if ListModel.objects.filter(is_delete=0).exists():
                 po_name = ListModel.objects.filter(is_delete=0).order_by('-create_time').first().name
                 if str(po_name[0:8]) == str(check_date):
                     po_create = str(check_date) + str(int(po_name[-5:]) + 1).rjust(5, '0')
                 else:
                     po_create = str(check_date) + str(1).rjust(5, '0')
             else:
                 po_create = str(check_date) + str(1).rjust(5, '0')
             t_code = Md5.md5(datetime.datetime.now().strftime('%Y%m%d%H%M%S'))
             ListModel.objects.create(appid=request.user.appid, name=po_create, create_name=create_name, t_code=t_code)
             c_po_num = ListModel.objects.get(appid=request.user.appid, t_code=t_code).name
             ip = request.META.get('HTTP_X_FORWARDED_FOR') if request.META.get(
                 'HTTP_X_FORWARDED_FOR') else request.META.get('REMOTE_ADDR')
             ret = FBMsg.wms_ret()
             ret['ip'] = ip
             ret['data'] = c_po_num
             return Response(ret)
     else:
         return Response(FBMsg.wms_vip())
Exemplo n.º 8
0
 def post(self, request, *args, **kwargs):
     vip_id = Users.objects.filter(appid=request.user.appid,
                                   developer=1,
                                   is_delete=0).first().vip
     vip_check = VipCheck.VipCheck(vip_id)
     if vip_check == "N":
         return Response(FBMsg.wms_vip())
     elif vip_check == "Y":
         data = DataSolve.datasolve(request)
         try:
             if data['code'] == "1031":
                 return Response(FBMsg.err_bad())
         except:
             create_name = Users.objects.filter(openid=request.auth,
                                                appid=request.user.appid,
                                                is_delete=0).first().name
             if ListModel.objects.filter(appid=request.user.appid,
                                         name=str(data[0]['po_number']),
                                         is_delete=0).exists():
                 supplier_data = ListModel.objects.filter(
                     appid=request.user.appid,
                     name=str(data[0]['po_number']),
                     is_delete=0).first()
                 supplier_data.supplier = str(data[0]['supplier'])
                 supplier_data.save()
                 for i in range(len(data)):
                     DetailModel.objects.create(
                         appid=request.user.appid,
                         name=str(data[i]['po_number']),
                         goods_code=str(data[i]['goods_code']),
                         goods_name=str(data[i]['goods_name']),
                         po_qty=int(data[i]['goods_qty']),
                         create_name=create_name,
                         supplier=str(data[i]['supplier']),
                         t_code=Md5.md5(str(data[i]['goods_name'])))
                     stock_list_data = stocklist.models.ListModel.objects.filter(
                         appid=request.user.appid,
                         name=str(data[i]['goods_code']),
                         is_delete=0).first()
                     stock_list_data.pre_delivery_stock = stock_list_data.pre_delivery_stock + int(
                         data[i]['goods_qty'])
                     stock_list_data.save()
             else:
                 ret = FBMsg.wms_po_empty()
                 ret['data'] = data
                 return Response(ret)
             ip = request.META.get(
                 'HTTP_X_FORWARDED_FOR') if request.META.get(
                     'HTTP_X_FORWARDED_FOR') else request.META.get(
                         'REMOTE_ADDR')
             ret = FBMsg.wms_ret()
             ret['ip'] = ip
             ret['data'] = data
             return Response(ret)
     else:
         return Response(FBMsg.wms_vip())
Exemplo n.º 9
0
 def datasolve(d):
     data = d.data
     script_obj = re.findall(r'script', str(data), re.IGNORECASE)
     select_obj = re.findall(r'select', str(data), re.IGNORECASE)
     if script_obj:
         return FBMsg.err_bad()
     elif select_obj:
         return FBMsg.err_bad()
     else:
         type_obj_dict = re.findall(r'dict', str(type(data)), re.IGNORECASE)
         type_obj_list = re.findall(r'list', str(type(data)), re.IGNORECASE)
         if len(type_obj_dict) > 0:
             if 'data' in data:
                 data = data['data']
                 return data
             else:
                 return data
         elif len(type_obj_list) > 0:
             return data
         else:
             return FBMsg.err_bad()
Exemplo n.º 10
0
 def delete(self, request, *args, **kwargs):
     data = DataSolve.datasolve(request)
     try:
         if data['code'] == "1031":
             return Response(FBMsg.err_bad())
     except:
         ip = request.META.get('HTTP_X_FORWARDED_FOR') if request.META.get(
             'HTTP_X_FORWARDED_FOR') else request.META.get('REMOTE_ADDR')
         if models.NoteBook.objects.filter(openid=request.auth, id=data['id']).exists():
             delete_data = models.NoteBook.objects.get(id=data['id'])
             delete_data.is_delete = 1
             delete_data.save()
             ret = FBMsg.ret()
             ret['ip'] = ip
             ret['data'] = delete_data.title
             return Response(ret)
Exemplo n.º 11
0
 def post(self, request, *args, **kwargs):
     data = DataSolve.datasolve(request)
     try:
         if data['code'] == "1031":
             return Response(FBMsg.err_bad())
     except:
         ip = request.META.get('HTTP_X_FORWARDED_FOR') if request.META.get(
             'HTTP_X_FORWARDED_FOR') else request.META.get('REMOTE_ADDR')
         note_day = data['note_day'].split('/')
         note_day = datetime.datetime(int(note_day[0]), int(note_day[1]), int(note_day[2]))
         note_day = note_day.strftime('%Y-%m-%d')
         models.NoteBook.objects.create(openid=request.auth, icon='close', icon_color='light-blue-10',
                                        title=data['title'], note_day=note_day, desc=data['desc'])
         ret = FBMsg.ret()
         ret['ip'] = ip
         ret['data'] = data
         return Response(ret)
Exemplo n.º 12
0
 def post(self, request, *args, **kwargs):
     vip_id = Users.objects.filter(appid=request.user.appid,
                                   developer=1,
                                   is_delete=0).first().vip
     vip_check = VipCheck.VipCheck(vip_id)
     if vip_check == "N":
         return Response(FBMsg.wms_vip())
     elif vip_check == "Y":
         data = DataSolve.datasolve(request)
         try:
             if data['code'] == "1031":
                 return Response(FBMsg.err_bad())
         except:
             if 'changedata' in data:
                 if str(data['changedata']) == '1':
                     if ListModel.objects.filter(
                             appid=request.user.appid,
                             t_code=str(data['t_code'])).exists():
                         patch_data = ListModel.objects.filter(
                             appid=request.user.appid,
                             t_code=str(data['t_code'])).first()
                         if 'goods_qty' in data:
                             patch_data.goods_qty = patch_data.goods_qty + int(
                                 data['goods_qty'])
                             patch_data.cycle_count_balance = patch_data.cycle_count_balance + int(
                                 data['goods_qty'])
                         patch_data.save()
                         ip = request.META.get(
                             'HTTP_X_FORWARDED_FOR') if request.META.get(
                                 'HTTP_X_FORWARDED_FOR'
                             ) else request.META.get('REMOTE_ADDR')
                         ret = FBMsg.wms_ret()
                         ret['ip'] = ip
                         ret['data'] = data
                         return Response(ret)
                     else:
                         ret = FBMsg.wms_err()
                         ret['data'] = data
                         return Response(ret)
             if 'postdata' in data:
                 if str(data['postdata']) == '1':
                     if binset.models.ListModel.objects.filter(
                             appid=request.user.appid,
                             name=str(data['name']),
                             is_delete=0).exists():
                         if goodslist.models.ListModel.objects.filter(
                                 appid=request.user.appid,
                                 name=str(data['goods_code']),
                                 is_delete=0).exists():
                             goods_name = goodslist.models.ListModel.objects.filter(
                                 appid=request.user.appid,
                                 name=str(data['goods_code']),
                                 is_delete=0).first().goods_name
                         else:
                             goods_name = ''
                         ListModel.objects.create(
                             appid=request.user.appid,
                             name=str(data['name']),
                             goods_code=str(data['goods_code']),
                             goods_name=goods_name,
                             goods_qty=int(data['goods_qty']),
                             inbound_time=datetime.datetime.now(),
                             staff=str(data['staff']),
                             cycle_count_balance=int(data['goods_qty']),
                             t_code=Md5.md5(str(data['name'])))
                         ip = request.META.get(
                             'HTTP_X_FORWARDED_FOR') if request.META.get(
                                 'HTTP_X_FORWARDED_FOR'
                             ) else request.META.get('REMOTE_ADDR')
                         ret = FBMsg.wms_ret()
                         ret['ip'] = ip
                         ret['data'] = data
                         return Response(ret)
                     else:
                         ret = FBMsg.wms_err()
                         ret['data'] = {"库位不存在": str(data['name'])}
                         return Response(ret)
     else:
         return Response(FBMsg.wms_vip())
Exemplo n.º 13
0
 def put(self, request, *args, **kwargs):
     vip_id = Users.objects.filter(appid=request.user.appid,
                                   developer=1,
                                   is_delete=0).first().vip
     vip_check = VipCheck.VipCheck(vip_id)
     if vip_check == "N":
         return Response(FBMsg.wms_vip())
     elif vip_check == "Y":
         data = DataSolve.datasolve(request)
         try:
             if data['code'] == "1031":
                 return Response(FBMsg.err_bad())
         except:
             ip = request.META.get(
                 'HTTP_X_FORWARDED_FOR') if request.META.get(
                     'HTTP_X_FORWARDED_FOR') else request.META.get(
                         'REMOTE_ADDR')
             for i in range(len(data)):
                 if PickingModel.objects.filter(appid=request.user.appid,
                                                t_code=data[i]['t_code'],
                                                picking_status=0,
                                                is_delete=0).exists():
                     picking_data = PickingModel.objects.filter(
                         appid=request.user.appid,
                         t_code=data[i]['t_code'],
                         is_delete=0).first()
                     if picking_data.picked_stock + int(data[i][
                             'picked_stock']) > picking_data.pick_stock:
                         ret = FBMsg.wms_so_picked_more()
                         ret['data'] = data
                         return Response(ret)
                 else:
                     ret = FBMsg.wms_so_picked_more()
                     ret['data'] = data
                     return Response(ret)
             pick_data = PickingModel.objects.filter(
                 appid=request.user.appid,
                 t_code=data[0]['t_code'],
                 is_delete=0).first()
             so_list = ListModel.objects.filter(appid=request.user.appid,
                                                name=pick_data.so_name,
                                                is_delete=0).first()
             so_list.so_status = 4
             so_list.save()
             for j in range(len(data)):
                 picking_data = PickingModel.objects.filter(
                     appid=request.user.appid,
                     t_code=data[j]['t_code'],
                     is_delete=0).first()
                 picking_data.pick_stock = picking_data.pick_stock - int(
                     data[j]['picked_stock'])
                 picking_data.picked_stock = int(data[j]['picked_stock'])
                 picking_data.shipping_stock = int(data[j]['picked_stock'])
                 picking_data.picking_status = 1
                 so_detail = DetailModel.objects.filter(
                     appid=request.user.appid,
                     name=picking_data.so_name,
                     goods_code=picking_data.goods_code,
                     is_delete=0)
                 for k in range(len(so_detail)):
                     so_detail[k].pick_stock = so_detail[
                         k].pick_stock - int(data[j]['picked_stock'])
                     so_detail[k].picked_stock = so_detail[
                         k].picked_stock + int(data[j]['picked_stock'])
                     if PickingModel.objects.filter(
                             appid=request.user.appid,
                             goods_code=picking_data.goods_code,
                             so_name=picking_data.so_name,
                             picking_status=0,
                             is_delete=0).exists():
                         pass
                     else:
                         so_detail[k].so_status = 4
                     so_detail[k].save()
                 picking_data.save()
             ret = FBMsg.wms_ret()
             ret['ip'] = ip
             ret['data'] = data
             return Response(ret)
     else:
         return Response(FBMsg.wms_vip())
Exemplo n.º 14
0
def register(request):
    postdata = json.loads(request.body.decode().replace("'", "\""))
    data = {
        "name": postdata.get("name", ''),
        "password1": postdata.get("password1", ''),
        "password2": postdata.get("password2", ''),
    }
    ip = request.META.get('HTTP_X_FORWARDED_FOR') if request.META.get(
        'HTTP_X_FORWARDED_FOR') else request.META.get('REMOTE_ADDR')
    script_obj = re.findall(r'script', str(data), re.IGNORECASE)
    select_obj = re.findall(r'select', str(data), re.IGNORECASE)
    if script_obj:
        return JsonResponse(FBMsg.err_bad())
    elif select_obj:
        return JsonResponse(FBMsg.err_bad())
    else:
        if Users.objects.filter(name=str(data['name']),
                                developer=1,
                                is_delete=0).exists():
            err_user_same = FBMsg.err_user_same()
            err_user_same['ip'] = ip
            err_user_same['data'] = data['name']
            return JsonResponse(err_user_same)
        else:
            if Users.objects.filter(ip=ip).exists():
                if Users.objects.filter(ip=ip).count() > 2:
                    err_register_more = FBMsg.err_register_more()
                    err_register_more['ip'] = ip
                    err_register_more['data'] = data['name']
                    return JsonResponse(err_register_more)
                else:
                    if 'password1' not in data:
                        err_password1_empty = FBMsg.err_password1_empty()
                        err_password1_empty['ip'] = ip
                        err_password1_empty['data'] = data['name']
                        return JsonResponse(err_password1_empty)
                    else:
                        if str(data['password1']) == '':
                            err_password1_empty = FBMsg.err_password1_empty()
                            err_password1_empty['ip'] = ip
                            err_password1_empty['data'] = data['name']
                            return JsonResponse(err_password1_empty)
                        else:
                            if 'password2' not in data:
                                err_password2_empty = FBMsg.err_password2_empty(
                                )
                                err_password2_empty['ip'] = ip
                                err_password2_empty['data'] = data['name']
                                return JsonResponse(err_password2_empty)
                            else:
                                if str(data['password2']) == '':
                                    err_password2_empty = FBMsg.err_password2_empty(
                                    )
                                    err_password2_empty['ip'] = ip
                                    err_password2_empty['data'] = data['name']
                                    return JsonResponse(err_password2_empty)
                                else:
                                    if str(data['password1']) != str(
                                            data['password2']):
                                        err_password_not_same = FBMsg.err_password_not_same(
                                        )
                                        err_password_not_same['ip'] = ip
                                        err_password_not_same['data'] = data[
                                            'name']
                                        return JsonResponse(
                                            err_password_not_same)
                                    else:
                                        transaction_code = Md5.md5(
                                            data['name'])
                                        user = User.objects.create_user(
                                            username=str(data['name']),
                                            password=str(data['password1']))
                                        Users.objects.create(
                                            user_id=user.id,
                                            name=user.username,
                                            password=str(data['password1']),
                                            openid=transaction_code,
                                            appid=Md5.md5(data['name'] + '1'),
                                            transaction_code=Md5.md5(
                                                str(timezone.now())),
                                            developer=1,
                                            ip=ip)
                                        auth.login(request, user)
                                        ret = FBMsg.ret()
                                        data['openid'] = transaction_code
                                        ret['ip'] = ip
                                        data.pop('password1', '')
                                        data.pop('password2', '')
                                        ret['data'] = data
                                        return JsonResponse(ret)
            else:
                if 'password1' not in data:
                    err_password1_empty = FBMsg.err_password1_empty()
                    err_password1_empty['ip'] = ip
                    err_password1_empty['data'] = data['name']
                    return JsonResponse(err_password1_empty)
                else:
                    if str(data['password1']) == '':
                        err_password1_empty = FBMsg.err_password1_empty()
                        err_password1_empty['ip'] = ip
                        err_password1_empty['data'] = data['name']
                        return JsonResponse(err_password1_empty)
                    else:
                        if 'password2' not in data:
                            err_password2_empty = FBMsg.err_password2_empty()
                            err_password2_empty['ip'] = ip
                            err_password2_empty['data'] = data['name']
                            return JsonResponse(err_password2_empty)
                        else:
                            if str(data['password2']) == '':
                                err_password2_empty = FBMsg.err_password2_empty(
                                )
                                err_password2_empty['ip'] = ip
                                err_password2_empty['data'] = data['name']
                                return JsonResponse(err_password2_empty)
                            else:
                                if str(data['password1']) != str(
                                        data['password2']):
                                    err_password_not_same = FBMsg.err_password_not_same(
                                    )
                                    err_password_not_same['ip'] = ip
                                    err_password_not_same['data'] = data[
                                        'name']
                                    return JsonResponse(err_password_not_same)
                                else:
                                    transaction_code = Md5.md5(data['name'])
                                    user = User.objects.create_user(
                                        username=str(data['name']),
                                        password=str(data['password1']))
                                    Users.objects.create(
                                        user_id=user.id,
                                        name=user.username,
                                        password=str(data['password1']),
                                        openid=transaction_code,
                                        appid=Md5.md5(data['name'] + '1'),
                                        transaction_code=Md5.md5(
                                            str(timezone.now())),
                                        developer=1,
                                        ip=ip)
                                    auth.login(request, user)
                                    ret = FBMsg.ret()
                                    ret['ip'] = ip
                                    data['openid'] = transaction_code
                                    data.pop('password1', '')
                                    data.pop('password2', '')
                                    ret['data'] = data
                                    return JsonResponse(ret)
Exemplo n.º 15
0
 def post(self, request, *args, **kwargs):
     if models.Users.objects.filter(openid=request.auth,
                                    appid=request.user.appid,
                                    developer=1,
                                    is_delete=0).exists():
         if models.Users.objects.filter(appid=request.user.appid,
                                        is_delete=0).count() >= 6:
             return Response(FBMsg.err_more_user())
     else:
         return Response(FBMsg.err_dev())
     data = DataSolve.datasolve(request)
     try:
         if data['code'] == "1031":
             return Response(FBMsg.err_bad())
     except:
         if models.Users.objects.filter(appid=request.user.appid,
                                        name=data['name'],
                                        is_delete=0).exists():
             return Response(FBMsg.err_user_same())
         else:
             ip = request.META.get(
                 'HTTP_X_FORWARDED_FOR') if request.META.get(
                     'HTTP_X_FORWARDED_FOR') else request.META.get(
                         'REMOTE_ADDR')
             if 'name' not in data:
                 return Response(FBMsg.err_user_name())
             else:
                 if data['name'] == '':
                     return Response(FBMsg.err_user_name())
                 else:
                     if 'nickname' not in data:
                         return Response(FBMsg.err_user_name())
                     else:
                         if data['nickname'] == '':
                             return Response(FBMsg.err_user_name())
                         else:
                             if 'password1' not in data:
                                 return Response(
                                     FBMsg.err_password1_empty())
                             else:
                                 if data['password1'] == '':
                                     return Response(
                                         FBMsg.err_password1_empty())
                                 else:
                                     if 'password2' not in data:
                                         return Response(
                                             FBMsg.err_password2_empty())
                                     else:
                                         if data['password2'] == '':
                                             return Response(
                                                 FBMsg.err_password2_empty(
                                                 ))
                                         else:
                                             if data['password1'] != data[
                                                     'password2']:
                                                 return Response(
                                                     FBMsg.
                                                     err_password_not_same(
                                                     ))
                                             else:
                                                 transaction_code = Md5.md5(
                                                     data['nickname'])
                                                 models.Users.objects.create(
                                                     openid=Md5.md5(
                                                         data['name']),
                                                     appid=request.user.
                                                     appid,
                                                     transaction_code=
                                                     transaction_code,
                                                     name=data['name'],
                                                     nickname=data[
                                                         'nickname'],
                                                     password=data[
                                                         'password1'],
                                                     ip=ip)
                                                 ret = FBMsg.ret()
                                                 ret['ip'] = ip
                                                 ret['data'] = data['name']
                                                 return Response(ret)
Exemplo n.º 16
0
 def patch(self, request, *args, **kwargs):
     vip_id = Users.objects.filter(appid=request.user.appid, developer=1, is_delete=0).first().vip
     vip_check = VipCheck.VipCheck(vip_id)
     if vip_check == "N":
         return Response(FBMsg.wms_vip())
     elif vip_check == "Y":
         data = DataSolve.datasolve(request)
         try:
             if data['code'] == "1031":
                 return Response(FBMsg.err_bad())
         except:
             ip = request.META.get('HTTP_X_FORWARDED_FOR') if request.META.get(
                 'HTTP_X_FORWARDED_FOR') else request.META.get('REMOTE_ADDR')
             if ListModel.objects.filter(appid=request.user.appid, t_code=str(data), is_delete=0).exists():
                 patch_data = ListModel.objects.filter(appid=request.user.appid, t_code=str(data), is_delete=0).first()
                 if patch_data.po_status == 1:
                     if DetailModel.objects.filter(appid=request.user.appid, name=patch_data.name, is_delete=0).exists():
                         patch_detail = DetailModel.objects.filter(appid=request.user.appid, name=patch_data.name, is_delete=0)
                         for i in range(len(patch_detail)):
                             patch_detail[i].po_status = 2
                             stock_list_data = stocklist.models.ListModel.objects.filter(appid=request.user.appid,
                                                                                         name=patch_detail[i].goods_code,
                                                                                         is_delete=0).first()
                             stock_list_data.pre_delivery_stock = stock_list_data.pre_delivery_stock - patch_detail[i].po_qty
                             stock_list_data.pre_load_stock = stock_list_data.pre_load_stock + patch_detail[i].po_qty
                             stock_list_data.save()
                             patch_detail[i].save()
                         patch_data.po_status = 2
                         patch_data.save()
                     else:
                         ret = FBMsg.wms_po_status_predelivery_detail()
                         ret['ip'] = ip
                         return Response(ret)
                 elif patch_data.po_status == 2:
                     if DetailModel.objects.filter(appid=request.user.appid, name=patch_data.name, is_delete=0).exists():
                         patch_detail = DetailModel.objects.filter(appid=request.user.appid, name=patch_data.name, is_delete=0)
                         for i in range(len(patch_detail)):
                             patch_detail[i].po_status = 3
                             stock_list_data = stocklist.models.ListModel.objects.filter(appid=request.user.appid,
                                                                                         name=patch_detail[i].goods_code,
                                                                                         is_delete=0).first()
                             stock_list_data.pre_load_stock = stock_list_data.pre_load_stock - patch_detail[i].po_qty
                             stock_list_data.pre_sort_stock = stock_list_data.pre_sort_stock + patch_detail[i].po_qty
                             stock_list_data.save()
                             patch_detail[i].save()
                         patch_data.po_status = 3
                         patch_data.save()
                     else:
                         ret = FBMsg.wms_po_status_preload_detail()
                         ret['ip'] = ip
                         return Response(ret)
                 else:
                     ret = FBMsg.wms_po_status_predelivery()
                     ret['ip'] = ip
                     return Response(ret)
             else:
                 ret = FBMsg.wms_po_empty()
                 ret['ip'] = ip
                 return Response(ret)
             ret = FBMsg.wms_ret()
             ret['ip'] = ip
             ret['data'] = data
             return Response(ret)
     else:
         return Response(FBMsg.wms_vip())
Exemplo n.º 17
0
 def post(self, request, *args, **kwargs):
     global aut1, aut2
     vip_id = Users.objects.filter(appid=request.user.appid,
                                   developer=1,
                                   is_delete=0).first().vip
     vip_check = VipCheck.VipCheck(vip_id)
     if vip_check == "N":
         return Response(FBMsg.wms_vip())
     elif vip_check == "Y":
         data = DataSolve.datasolve(request)
         try:
             if data['code'] == "1031":
                 return Response(FBMsg.err_bad())
         except:
             if UserAuth.objects.filter(appid=request.user.appid,
                                        name=data['name'],
                                        is_delete=0).exists():
                 ret = FBMsg.wms_same()
                 ret['data'] = data
                 return Response(ret)
             else:
                 create_name = Users.objects.filter(
                     openid=request.auth,
                     appid=request.user.appid,
                     is_delete=0).first().name
                 if 'aut1' in data:
                     if str(data['aut1']) == "1":
                         aut1 = 1
                     else:
                         aut1 = 0
                 else:
                     aut1 = 0
                 if 'aut2' in data:
                     if str(data['aut2']) == "1":
                         aut2 = 1
                     else:
                         aut2 = 0
                 else:
                     aut2 = 0
                 if 'aut3' in data:
                     if str(data['aut3']) == "1":
                         aut3 = 1
                     else:
                         aut3 = 0
                 else:
                     aut3 = 0
                 if 'aut4' in data:
                     if str(data['aut4']) == "1":
                         aut4 = 1
                     else:
                         aut4 = 0
                 else:
                     aut4 = 0
                 if 'aut5' in data:
                     if str(data['aut5']) == "1":
                         aut5 = 1
                     else:
                         aut5 = 0
                 else:
                     aut5 = 0
                 if 'aut6' in data:
                     if str(data['aut6']) == "1":
                         aut6 = 1
                     else:
                         aut6 = 0
                 else:
                     aut6 = 0
                 if 'aut7' in data:
                     if str(data['aut7']) == "1":
                         aut7 = 1
                     else:
                         aut7 = 0
                 else:
                     aut7 = 0
                 if 'aut8' in data:
                     if str(data['aut8']) == "1":
                         aut8 = 1
                     else:
                         aut8 = 0
                 else:
                     aut8 = 0
                 if 'aut9' in data:
                     if str(data['aut9']) == "1":
                         aut9 = 1
                     else:
                         aut9 = 0
                 else:
                     aut9 = 0
                 if 'aut10' in data:
                     if str(data['aut10']) == "1":
                         aut10 = 1
                     else:
                         aut10 = 0
                 else:
                     aut10 = 0
                 if 'aut11' in data:
                     if str(data['aut11']) == "1":
                         aut11 = 1
                     else:
                         aut11 = 0
                 else:
                     aut11 = 0
                 if 'aut12' in data:
                     if str(data['aut12']) == "1":
                         aut12 = 1
                     else:
                         aut12 = 0
                 else:
                     aut12 = 0
                 if 'aut13' in data:
                     if str(data['aut13']) == "1":
                         aut13 = 1
                     else:
                         aut13 = 0
                 else:
                     aut13 = 0
                 if 'aut14' in data:
                     if str(data['aut14']) == "1":
                         aut14 = 1
                     else:
                         aut14 = 0
                 else:
                     aut14 = 0
                 if 'aut15' in data:
                     if str(data['aut15']) == "1":
                         aut15 = 1
                     else:
                         aut15 = 0
                 else:
                     aut15 = 0
                 if 'aut16' in data:
                     if str(data['aut16']) == "1":
                         aut16 = 1
                     else:
                         aut16 = 0
                 else:
                     aut16 = 0
                 if 'aut17' in data:
                     if str(data['aut17']) == "1":
                         aut17 = 1
                     else:
                         aut17 = 0
                 else:
                     aut17 = 0
                 if 'aut18' in data:
                     if str(data['aut18']) == "1":
                         aut18 = 1
                     else:
                         aut18 = 0
                 else:
                     aut18 = 0
                 if 'aut19' in data:
                     if str(data['aut19']) == "1":
                         aut19 = 1
                     else:
                         aut19 = 0
                 else:
                     aut19 = 0
                 if 'aut20' in data:
                     if str(data['aut20']) == "1":
                         aut20 = 1
                     else:
                         aut20 = 0
                 else:
                     aut20 = 0
                 UserAuth.objects.create(appid=request.user.appid,
                                         name=str(data['name']),
                                         create_name=create_name,
                                         t_code=Md5.md5(str(data['name'])),
                                         aut1=aut1,
                                         aut2=aut2,
                                         aut3=aut3,
                                         aut4=aut4,
                                         aut5=aut5,
                                         aut6=aut6,
                                         aut7=aut7,
                                         aut8=aut8,
                                         aut9=aut9,
                                         aut10=aut10,
                                         aut11=aut11,
                                         aut12=aut12,
                                         aut13=aut13,
                                         aut14=aut14,
                                         aut15=aut15,
                                         aut16=aut16,
                                         aut17=aut17,
                                         aut18=aut18,
                                         aut19=aut19,
                                         aut20=aut20)
                 ip = request.META.get(
                     'HTTP_X_FORWARDED_FOR') if request.META.get(
                         'HTTP_X_FORWARDED_FOR') else request.META.get(
                             'REMOTE_ADDR')
                 ret = FBMsg.wms_ret()
                 ret['ip'] = ip
                 ret['data'] = data
                 return Response(ret)
     else:
         return Response(FBMsg.wms_vip())
Exemplo n.º 18
0
 def patch(self, request, *args, **kwargs):
     vip_id = Users.objects.filter(appid=request.user.appid,
                                   developer=1,
                                   is_delete=0).first().vip
     vip_check = VipCheck.VipCheck(vip_id)
     if vip_check == "N":
         return Response(FBMsg.wms_vip())
     elif vip_check == "Y":
         data = DataSolve.datasolve(request)
         try:
             if data['code'] == "1031":
                 return Response(FBMsg.err_bad())
         except:
             if UserAuth.objects.filter(appid=request.user.appid,
                                        t_code=data['t_code'],
                                        is_delete=0).exists():
                 patch_name = UserAuth.objects.get(
                     t_code=data['t_code']).name
                 if patch_name != data['name']:
                     if UserAuth.objects.filter(appid=request.user.appid,
                                                name=data['name'],
                                                is_delete=0).exists():
                         ret = FBMsg.wms_same()
                         ret['data'] = data
                         return Response(ret)
                 patch_data = UserAuth.objects.filter(
                     appid=request.user.appid,
                     t_code=data['t_code'],
                     is_delete=0).first()
                 if 'name' in data:
                     patch_data.name = data['name']
                 if 'aut1' in data:
                     if str(data['aut1']) == "1":
                         patch_data.aut1 = int(data['aut1'])
                     elif str(data['aut1']) == "0":
                         patch_data.aut1 = int(data['aut1'])
                 if 'aut2' in data:
                     if str(data['aut2']) == "1":
                         patch_data.aut2 = int(data['aut2'])
                     elif str(data['aut2']) == "0":
                         patch_data.aut2 = int(data['aut2'])
                 if 'aut3' in data:
                     if str(data['aut3']) == "1":
                         patch_data.aut3 = int(data['aut3'])
                     elif str(data['aut3']) == "0":
                         patch_data.aut3 = int(data['aut3'])
                 if 'aut4' in data:
                     if str(data['aut4']) == "1":
                         patch_data.aut4 = int(data['aut4'])
                     elif str(data['aut4']) == "0":
                         patch_data.aut4 = int(data['aut4'])
                 if 'aut5' in data:
                     if str(data['aut5']) == "1":
                         patch_data.aut5 = int(data['aut5'])
                     elif str(data['aut5']) == "0":
                         patch_data.aut5 = int(data['aut5'])
                 if 'aut6' in data:
                     if str(data['aut6']) == "1":
                         patch_data.aut6 = int(data['aut6'])
                     elif str(data['aut6']) == "0":
                         patch_data.aut6 = int(data['aut6'])
                 if 'aut7' in data:
                     if str(data['aut7']) == "1":
                         patch_data.aut7 = int(data['aut7'])
                     elif str(data['aut7']) == "0":
                         patch_data.aut7 = int(data['aut7'])
                 if 'aut8' in data:
                     if str(data['aut8']) == "1":
                         patch_data.aut8 = int(data['aut8'])
                     elif str(data['aut8']) == "0":
                         patch_data.aut8 = int(data['aut8'])
                 if 'aut9' in data:
                     if str(data['aut9']) == "1":
                         patch_data.aut9 = int(data['aut9'])
                     elif str(data['aut9']) == "0":
                         patch_data.aut9 = int(data['aut9'])
                 if 'aut10' in data:
                     if str(data['aut10']) == "1":
                         patch_data.aut10 = int(data['aut10'])
                     elif str(data['aut10']) == "0":
                         patch_data.aut10 = int(data['aut10'])
                 if 'aut11' in data:
                     if str(data['aut11']) == "1":
                         patch_data.aut11 = int(data['aut11'])
                     elif str(data['aut11']) == "0":
                         patch_data.aut11 = int(data['aut11'])
                 if 'aut12' in data:
                     if str(data['aut12']) == "1":
                         patch_data.aut12 = int(data['aut12'])
                     elif str(data['aut12']) == "0":
                         patch_data.aut12 = int(data['aut12'])
                 if 'aut13' in data:
                     if str(data['aut13']) == "1":
                         patch_data.aut13 = int(data['aut13'])
                     elif str(data['aut13']) == "0":
                         patch_data.aut13 = int(data['aut13'])
                 if 'aut14' in data:
                     if str(data['aut14']) == "1":
                         patch_data.aut14 = int(data['aut14'])
                     elif str(data['aut14']) == "0":
                         patch_data.aut14 = int(data['aut14'])
                 if 'aut15' in data:
                     if str(data['aut15']) == "1":
                         patch_data.aut15 = int(data['aut15'])
                     elif str(data['aut15']) == "0":
                         patch_data.aut15 = int(data['aut15'])
                 if 'aut15' in data:
                     if str(data['aut15']) == "1":
                         patch_data.aut15 = int(data['aut15'])
                     elif str(data['aut15']) == "0":
                         patch_data.aut15 = int(data['aut15'])
                 if 'aut15' in data:
                     if str(data['aut15']) == "1":
                         patch_data.aut15 = int(data['aut15'])
                     elif str(data['aut15']) == "0":
                         patch_data.aut15 = int(data['aut15'])
                 if 'aut16' in data:
                     if str(data['aut16']) == "1":
                         patch_data.aut16 = int(data['aut16'])
                     elif str(data['aut16']) == "0":
                         patch_data.aut16 = int(data['aut16'])
                 if 'aut17' in data:
                     if str(data['aut17']) == "1":
                         patch_data.aut17 = int(data['aut17'])
                     elif str(data['aut17']) == "0":
                         patch_data.aut17 = int(data['aut17'])
                 if 'aut18' in data:
                     if str(data['aut18']) == "1":
                         patch_data.aut18 = int(data['aut18'])
                     elif str(data['aut18']) == "0":
                         patch_data.aut18 = int(data['aut18'])
                 if 'aut19' in data:
                     if str(data['aut19']) == "1":
                         patch_data.aut19 = int(data['aut19'])
                     elif str(data['aut19']) == "0":
                         patch_data.aut19 = int(data['aut19'])
                 if 'aut20' in data:
                     if str(data['aut20']) == "1":
                         patch_data.aut20 = int(data['aut20'])
                     elif str(data['aut20']) == "0":
                         patch_data.aut20 = int(data['aut20'])
                 patch_data.save()
                 ip = request.META.get(
                     'HTTP_X_FORWARDED_FOR') if request.META.get(
                         'HTTP_X_FORWARDED_FOR') else request.META.get(
                             'REMOTE_ADDR')
                 ret = FBMsg.wms_ret()
                 ret['ip'] = ip
                 ret['data'] = data
                 return Response(ret)
             else:
                 ret = FBMsg.wms_err()
                 ret['data'] = data
                 return Response(ret)
     else:
         return Response(FBMsg.wms_vip())
Exemplo n.º 19
0
 def post(self, request, format=None):
     data = DataSolve.datasolve(request)
     try:
         if data['code'] == "1031":
             return Response(FBMsg.err_bad())
     except:
         if ShippingModel.objects.filter(appid=request.user.appid).exists():
             if GoodsModel.objects.filter(appid=request.user.appid).exists():
                 if BaseInfoModel.objects.filter(appid=request.user.appid).exists():
                     if ShippingModel.objects.filter(goods_code=data, appid=request.user.appid).exists():
                         if GoodsModel.objects.filter(goods_code=data, appid=request.user.appid).exists():
                             if BaseInfoModel.objects.filter(goods_code=data, appid=request.user.appid).exists():
                                 on_hand_stock = GoodsModel.objects.filter(goods_code=data, appid=request.user.appid).first().on_hand_stock
                                 lead_time = BaseInfoModel.objects.filter(goods_code=data,
                                                                           appid=request.user.appid).first().total_leadtime
                                 today = datetime.date.today()
                                 delta = datetime.timedelta(days=89)
                                 demand_data = ShippingModel.objects.filter(goods_code=data, appid=request.user.appid,
                                 shipping_time__range=[(today - delta).strftime('%Y-%m-%d'), today])
                                 demand = []
                                 for i in range(len(demand_data)):
                                     demand.append({
                                         "goods_code": data,
                                         "forcast_day": demand_data[i].shipping_time,
                                         "forcast_shipping": demand_data[i].shipping_qty,
                                         "forcast_on_hand": 0,
                                         "plan_order_qty": 0,
                                         "oos": ''
                                     })
                                 for j in range(0, 90):
                                     delta = datetime.timedelta(days=j)
                                     a_date = (today - delta).strftime('%Y-%m-%d')
                                     date = [int(x) for x in a_date.split('-')]
                                     b_date = datetime.date(date[0], date[1], date[2])
                                     check_date = 0
                                     for k in demand:
                                         if (k['forcast_day'] - b_date).days == 0:
                                             check_date = 1
                                     if check_date == 0:
                                         demand.append({
                                             "goods_code": data,
                                             "forcast_day": b_date,
                                             "forcast_shipping": 0,
                                             "forcast_on_hand": 0,
                                             "plan_order_qty": 0,
                                             "oos": ''
                                         })
                                 for k in range(1, 91):
                                     delta = datetime.timedelta(days=k)
                                     plan_date = (today + delta).strftime('%Y-%m-%d')
                                     demand.append({
                                         "goods_code": data,
                                         "forcast_day": plan_date,
                                         "forcast_shipping": 0,
                                         "forcast_on_hand": 0,
                                         "plan_order_qty": 0,
                                         "oos": ''
                                     })
                                 ret = FBMsg.ret()
                                 ret["forcast_on_hand"] = on_hand_stock
                                 ret['lead_time'] = lead_time
                                 ret['data'] = demand
                                 return Response(ret)
                             else:
                                 return Response(FBMsg.err_goods_code())
                         else:
                             return Response(FBMsg.err_goods_code())
                     else:
                         return Response(FBMsg.err_goods_code())
                 else:
                     return Response(FBMsg.err_req_baseinfo_list())
             else:
                 return Response(FBMsg.err_req_stock_list())
         else:
             return Response(FBMsg.err_req_shipping_list())
Exemplo n.º 20
0
 def patch(self, request, *args, **kwargs):
     vip_id = Users.objects.filter(appid=request.user.appid,
                                   developer=1,
                                   is_delete=0).first().vip
     vip_check = VipCheck.VipCheck(vip_id)
     if vip_check == "N":
         return Response(FBMsg.wms_vip())
     elif vip_check == "Y":
         data = DataSolve.datasolve(request)
         try:
             if data['code'] == "1031":
                 return Response(FBMsg.err_bad())
         except:
             ip = request.META.get(
                 'HTTP_X_FORWARDED_FOR') if request.META.get(
                     'HTTP_X_FORWARDED_FOR') else request.META.get(
                         'REMOTE_ADDR')
             po_data = DetailModel.objects.filter(appid=request.user.appid,
                                                  t_code=str(
                                                      data[0]['t_code']),
                                                  is_delete=0).first().name
             po_status_data = ListModel.objects.filter(
                 appid=request.user.appid, name=po_data,
                 is_delete=0).first()
             if po_status_data.po_status == 3:
                 po_status_data.po_status = 4
                 po_status_data.save()
             for i in range(len(data)):
                 patch_data = DetailModel.objects.filter(
                     appid=request.user.appid,
                     t_code=str(data[i]['t_code']),
                     is_delete=0).first()
                 patch_data.arrive_qty = int(data[i]['damage_qty']) + int(
                     data[i]['actual_qty'])
                 more_qty = patch_data.arrive_qty - patch_data.po_qty
                 if more_qty <= 0:
                     patch_data.more_qty = 0
                 else:
                     patch_data.more_qty = more_qty
                 patch_data.damage_qty = int(data[i]['damage_qty'])
                 patch_data.damage_up_qty = int(data[i]['damage_qty'])
                 patch_data.actual_qty = int(data[i]['actual_qty'])
                 patch_data.actual_up_qty = int(data[i]['actual_qty'])
                 patch_data.up_qty = patch_data.arrive_qty
                 if int(data[i]['damage_qty']) + int(
                         data[i]['actual_qty']) < patch_data.po_qty:
                     patch_data.shortage_qty = patch_data.po_qty - (
                         int(data[i]['damage_qty']) +
                         int(data[i]['actual_qty']))
                 else:
                     patch_data.shortage_qty = 0
                 patch_data.po_status = 4
                 stock_list_data = stocklist.models.ListModel.objects.filter(
                     appid=request.user.appid,
                     name=patch_data.goods_code,
                     is_delete=0).first()
                 stock_list_data.pre_sort_stock = stock_list_data.pre_sort_stock - patch_data.arrive_qty
                 stock_list_data.sort_stock = stock_list_data.sort_stock + patch_data.arrive_qty
                 stock_list_data.save()
                 patch_data.save()
             ret = FBMsg.wms_ret()
             ret['ip'] = ip
             ret['data'] = data
             return Response(ret)
     else:
         return Response(FBMsg.wms_vip())
Exemplo n.º 21
0
 def post(self, request, *args, **kwargs):
     vip_id = Users.objects.filter(appid=request.user.appid,
                                   developer=1,
                                   is_delete=0).first().vip
     vip_check = VipCheck.VipCheck(vip_id)
     if vip_check == "N":
         return Response(FBMsg.wms_vip())
     elif vip_check == "Y":
         data = DataSolve.datasolve(request)
         try:
             if data['code'] == "1031":
                 return Response(FBMsg.err_bad())
         except:
             if DetailModel.objects.filter(appid=request.user.appid,
                                           t_code=str(data[0]['t_code']),
                                           is_delete=0).exists():
                 up_data = DetailModel.objects.filter(
                     t_code=str(data[0]['t_code'])).first()
                 bin_data = binset.models.ListModel.objects.filter(
                     appid=request.user.appid,
                     name=str(data[0]['bin']),
                     is_delete=0).first()
                 property_data = property.models.ListModel.objects.filter(
                     appid=request.user.appid,
                     name=bin_data.bin_property).first()
                 up_data.up_qty = up_data.up_qty - int(
                     data[0]['finish_qty'])
                 goods_stock = stocklist.models.ListModel.objects.filter(
                     appid=request.user.appid,
                     name=up_data.goods_code,
                     goods_name=up_data.goods_name,
                 ).first()
                 if property_data.property_code == 1:
                     up_data.actual_up_qty = up_data.actual_up_qty - int(
                         data[0]['finish_qty'])
                     goods_stock.onhand_stock = goods_stock.onhand_stock + int(
                         data[0]['finish_qty'])
                     goods_stock.can_order_stock = goods_stock.can_order_stock + int(
                         data[0]['finish_qty'])
                     goods_stock.sort_stock = goods_stock.sort_stock - int(
                         data[0]['finish_qty'])
                     if up_data.up_qty > 0:
                         if up_data.actual_up_qty >= 0:
                             up_data.save()
                             goods_stock.save()
                             bin_data.bin_empty = 1
                             bin_data.save()
                             stockbinlist.models.ListModel.objects.create(
                                 appid=request.user.appid,
                                 name=str(data[0]['bin']),
                                 goods_code=up_data.goods_code,
                                 goods_name=up_data.goods_name,
                                 goods_qty=int(data[0]['finish_qty']),
                                 can_order_stock=int(data[0]['finish_qty']),
                                 bin_property=bin_data.bin_property,
                                 bin_size=bin_data.bin_size,
                                 po_name=up_data.name,
                                 t_code=Md5.md5(data[0]['t_code']))
                         else:
                             ret = FBMsg.wms_po_qty_up_more()
                             ret['data'] = data
                             return Response(ret)
                     elif up_data.up_qty == 0:
                         if up_data.actual_up_qty >= 0:
                             up_data.save()
                             goods_stock.save()
                             bin_data.bin_empty = 1
                             bin_data.save()
                             stockbinlist.models.ListModel.objects.create(
                                 appid=request.user.appid,
                                 name=str(data[0]['bin']),
                                 goods_code=up_data.goods_code,
                                 goods_name=up_data.goods_name,
                                 goods_qty=int(data[0]['finish_qty']),
                                 can_order_stock=int(data[0]['finish_qty']),
                                 bin_property=bin_data.bin_property,
                                 bin_size=bin_data.bin_size,
                                 po_name=up_data.name,
                                 t_code=Md5.md5(data[0]['t_code']))
                             if DetailModel.objects.filter(
                                     appid=request.user.appid,
                                     name=up_data.name,
                                     up_qty__gt=0,
                                     is_delete=0).exists():
                                 pass
                             else:
                                 po_detail_status = DetailModel.objects.filter(
                                     appid=request.user.appid,
                                     name=up_data.name,
                                     is_delete=0)
                                 po_list_status = ListModel.objects.filter(
                                     appid=request.user.appid,
                                     name=up_data.name,
                                     is_delete=0).first()
                                 for i in range(len(po_detail_status)):
                                     po_detail_status[i].po_status = 5
                                     po_detail_status[i].save()
                                 po_list_status.po_status = 5
                                 po_list_status.save()
                         else:
                             ret = FBMsg.wms_po_qty_up_more()
                             ret['data'] = data
                             return Response(ret)
                     else:
                         ret = FBMsg.wms_po_qty_all_up_more()
                         ret['data'] = data
                         return Response(ret)
                 elif property_data.property_code == 4:
                     up_data.damage_up_qty = up_data.damage_up_qty - int(
                         data[0]['finish_qty'])
                     goods_stock.damage_stock = goods_stock.damage_stock + int(
                         data[0]['finish_qty'])
                     if up_data.up_qty > 0:
                         if up_data.damage_up_qty >= 0:
                             up_data.save()
                             goods_stock.save()
                             bin_data.bin_empty = 1
                             bin_data.save()
                             stockbinlist.models.ListModel.objects.create(
                                 appid=request.user.appid,
                                 name=str(data[0]['bin']),
                                 goods_code=up_data.goods_code,
                                 goods_name=up_data.goods_name,
                                 goods_qty=int(data[0]['finish_qty']),
                                 bin_property=bin_data.bin_property,
                                 bin_size=bin_data.bin_size,
                                 po_name=up_data.name,
                                 t_code=Md5.md5(data[0]['t_code']))
                         else:
                             ret = FBMsg.wms_po_qty_dup_more()
                             ret['data'] = data
                             return Response(ret)
                     elif up_data.up_qty == 0:
                         if up_data.damage_up_qty >= 0:
                             up_data.save()
                             goods_stock.save()
                             bin_data.bin_empty = 1
                             bin_data.save()
                             stockbinlist.models.ListModel.objects.create(
                                 appid=request.user.appid,
                                 name=str(data[0]['bin']),
                                 goods_code=up_data.goods_code,
                                 goods_name=up_data.goods_name,
                                 goods_qty=int(data[0]['finish_qty']),
                                 bin_property=bin_data.bin_property,
                                 bin_size=bin_data.bin_size,
                                 po_name=up_data.name,
                                 t_code=Md5.md5(data[0]['t_code']))
                             if DetailModel.objects.filter(
                                     appid=request.user.appid,
                                     name=up_data.name,
                                     up_qty__gt=0,
                                     is_delete=0).exists():
                                 pass
                             else:
                                 po_detail_status = DetailModel.objects.filter(
                                     appid=request.user.appid,
                                     name=up_data.name,
                                     is_delete=0)
                                 po_list_status = ListModel.objects.filter(
                                     appid=request.user.appid,
                                     name=up_data.name,
                                     is_delete=0).first()
                                 for i in range(len(po_detail_status)):
                                     po_detail_status[i].po_status = 5
                                     po_detail_status[i].save()
                                 po_list_status.po_status = 5
                                 po_list_status.save()
                         else:
                             ret = FBMsg.wms_po_qty_dup_more()
                             ret['data'] = data
                             return Response(ret)
                     else:
                         ret = FBMsg.wms_po_qty_all_up_more()
                         ret['data'] = data
                         return Response(ret)
             else:
                 ret = FBMsg.wms_po_empty()
                 ret['data'] = data
                 return Response(ret)
             ip = request.META.get(
                 'HTTP_X_FORWARDED_FOR') if request.META.get(
                     'HTTP_X_FORWARDED_FOR') else request.META.get(
                         'REMOTE_ADDR')
             ret = FBMsg.wms_ret()
             ret['ip'] = ip
             ret['data'] = data
             return Response(ret)
     else:
         return Response(FBMsg.wms_vip())
Exemplo n.º 22
0
 def post(self, request, *args, **kwargs):
     if models.Users.objects.filter(openid=request.auth,
                                    appid=request.user.appid,
                                    developer=1,
                                    is_delete=0).exists():
         pass
     else:
         return Response(FBMsg.err_dev())
     data = DataSolve.datasolve(request)
     try:
         if data['code'] == "1031":
             return Response(FBMsg.err_bad())
     except:
         ip = request.META.get('HTTP_X_FORWARDED_FOR') if request.META.get(
             'HTTP_X_FORWARDED_FOR') else request.META.get('REMOTE_ADDR')
         if models.Users.objects.filter(appid=request.user.appid,
                                        name=data['name'],
                                        is_delete=0).exists():
             user = models.Users.objects.filter(appid=request.user.appid,
                                                name=data['name'],
                                                is_delete=0).first()
             if 'password' not in data:
                 return Response(FBMsg.err_psw())
             else:
                 if data['password'] == '':
                     return Response(FBMsg.err_psw())
                 else:
                     if user.password == data['password']:
                         today = datetime.date.today()
                         note_date = today.strftime('%Y-%m-%d')
                         today_note = NoteBook.objects.filter(
                             openid=user.openid,
                             note_day__gte=note_date,
                             is_delete=0).order_by('note_day')[:30]
                         today_note_ser = NoteBookSerializers(today_note,
                                                              many=True)
                         note_num = NoteBook.objects.filter(
                             openid=user.openid,
                             note_day=note_date,
                             progress=0,
                             is_delete=0).count()
                         delta = datetime.timedelta(days=90)
                         start_date = (today - delta).strftime('%Y-%m-%d')
                         end_date = (today + delta).strftime('%Y-%m-%d')
                         events = NoteBook.objects.filter(
                             openid=user.openid,
                             note_day__range=[start_date, end_date
                                              ]).order_by('-create_time')
                         events_ser = NoteBookEventSerializers(events,
                                                               many=True)
                         ret = FBMsg.ret()
                         data.pop('name')
                         data.pop('password')
                         ret['ip'] = ip
                         ret['events'] = events_ser.data
                         ret['today_note'] = today_note_ser.data
                         ret['note_num'] = note_num
                         data['openid'] = user.openid
                         ret['data'] = data
                         return Response(ret)
                     else:
                         err_ret = FBMsg.err_ret()
                         return Response(err_ret)
         else:
             return Response(FBMsg.err_auth())