Example #1
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())
Example #2
0
 def put(self, request, format=None):
     file_obj = request.data['file']
     vip_id = Users.objects.filter(appid=request.user.appid, developer=1, is_delete=0).first().vip
     file_check = FileVipCheck.FileVipCheck(file_obj.size, vip_id)
     if file_check == "N":
         return Response(FBMsg.err_data())
     elif file_check == "Y":
         if os.path.exists(os.path.join(settings.BASE_DIR, 'media/upload/' + pathlink)):
             pass
         else:
             os.makedirs(os.path.join(settings.BASE_DIR, 'media/upload/' + pathlink))
         if file_obj.name.endswith('.xlsx'):
             filename = os.path.join(settings.BASE_DIR, 'media/upload/' + pathlink + '/' + request.user.appid + '.xlsx')
         elif file_obj.name.endswith('.xls'):
             filename = os.path.join(settings.BASE_DIR, 'media/upload/' + pathlink + '/' + request.user.appid + '.xls')
         else:
             return Response(FBMsg.err_data())
         with open(filename, 'wb+') as f:
             for chunk in file_obj.chunks():
                 f.write(chunk)
             f.close()
         df = pd.read_excel(filename)
         if ListModel.objects.filter(appid=request.user.appid).exists():
             upload_data = ListModel.objects.filter(appid=request.user.appid)
             for i in range(len(upload_data)):
                 upload_data[i].delete()
         for index, row in df.iterrows():
             if str(row[pathname]) == '':
                 pass
             else:
                 if ListModel.objects.filter(appid=request.user.appid, is_delete=0).count() > 0:
                     ret = FBMsg.wms_warehouse_more()
                     ret['data'] = row
                     return Response(ret)
                 else:
                     ListModel.objects.create(appid=request.user.appid, name=str(row[pathname]), province=str(row['省份']),
                                              city=str(row['城市']), district=str(row['行政区']), address=str(row['详细地址']),
                                              manager=str(row['负责人']), mobile=str(row['联系电话']),
                                              t_code=Md5.md5(str(row[pathname])))
         os.remove(filename)
         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
         return Response(ret)
     else:
         return Response(FBMsg.err_data())