Explorar el Código

物联网卡功能模块初步构造

yf_fyh hace 3 años
padre
commit
954f240c6a

+ 4 - 4
apps/IOTCard/models.py

@@ -2,7 +2,7 @@ from django.db import models
 import django.utils.timezone as timezone
 
 # Create your models here.
-class PlatIOTCardInfo(models.Model):
+class PlatSimInfo(models.Model):
     OPERATORS_CHOICE = [
         (1, "合宙"),
         (2, "企朋"), # 企朋和SIMBOSS是同一单位
@@ -22,13 +22,13 @@ class PlatIOTCardInfo(models.Model):
     deviceId = models.CharField(u'设备号', max_length=32)
     device_type = models.CharField(u'设备类型', max_length=50, default="")
     platform = models.IntegerField(u'设备所在平台', choices=PLATFORM_CHOICE, default=1)
-
     account_status = models.CharField(u'卡状态', max_length=20, default="")
-    # active = models.CharField(u'激活状态', max_length=10, blank=True, null=True)
     active_date = models.CharField(u'激活日期', max_length=20, default="")
     data_plan = models.CharField(u'套餐大小', max_length=20, default="")
     data_usage = models.CharField(u'当月用量', max_length=20, default="")
     data_balance = models.CharField(u'剩余流量', max_length=20, default="")
     expiry_date = models.CharField(u'到期时间', max_length=20, default="")
+    upl_time = models.DateTimeField(u'更新时间', default=timezone.now)
 
-    upl_time = models.DateTimeField(u'更新时间', default=timezone.now)
+    class Meta:
+        db_table = "plat_sim_info"

+ 31 - 0
apps/IOTCard/serializers.py

@@ -0,0 +1,31 @@
+from rest_framework import serializers
+
+
+class PlatSimInfoSerializer(serializers.Serializer):
+    id = serializers.IntegerField(help_text="记录ID", read_only=True)
+    simId = serializers.CharField(help_text="sim卡号", required=False)
+    sim_operators = serializers.IntegerField(help_text="物联网卡商", read_only=True)
+    input_type = serializers.IntegerField(help_text="输入类型", read_only=True)
+    deviceId = serializers.CharField(help_text="设备号", required=False)
+    device_type = serializers.CharField(help_text="设备类型", required=False)
+    platform = serializers.IntegerField(help_text="所属平台", required=False)
+    account_status = serializers.CharField(help_text="卡状态", read_only=True)
+    active_date = serializers.CharField(help_text="激活日期", read_only=True)
+    data_plan = serializers.CharField(help_text="套餐类型", read_only=True)
+    data_usage = serializers.CharField(help_text="当月用量", read_only=True)
+    data_balance = serializers.CharField(help_text="剩余流量", read_only=True)
+    expiry_date = serializers.CharField(help_text="到期时间", read_only=True)
+    upl_time = serializers.DateTimeField(help_text='更新时间', read_only=True)
+
+    def validate_simId(self, value):
+        vlaue = vlaue.strip()
+        if len(value) < 4:
+            raise serializers.ValidationError("搜索卡号长度不能小于4位")
+        else:
+            return value
+    def validate_deviceId(self, value):
+        vlaue = vlaue.strip()
+        if len(value) < 4:
+            raise serializers.ValidationError("搜索设备号长度不能小于4位")
+        else:
+            return value

+ 9 - 3
apps/IOTCard/views.py

@@ -1,15 +1,21 @@
 from rest_framework.views import APIView
-from rest_framework.generics import GenericAPIView
+from rest_framework.viewsets import GenericViewSet
 from rest_framework.response import Response
 
-from .models import PlatIOTCardInfo
+from .serializers import PlatSimInfoSerializer
+from .models import PlatSimInfo
 
 # Create your views here.
 
 class GetBaseType(APIView):
     def get(self, request):
-        queryset = PlatIOTCardInfo.objects.raw("SELECT id,device_type FROM IOTCard_platiotcardinfo GROUP BY device_type;")
+        queryset = PlatSimInfo.objects.raw("SELECT id,device_type FROM plat_sim_info GROUP BY device_type;")
         data = []
         for i in queryset:
             data.append(i.device_type)
         return Response(data)
+
+
+class PlatformIOTCardViewSet(GenericViewSet):
+    queryset = PlatSimInfo.objects.all()
+    serializer_class = PlatSimInfoSerializer

+ 2 - 2
apps/SearchEquip/serializers.py

@@ -10,7 +10,7 @@ class SearchEquipSerializer(serializers.Serializer):
     isfullId = serializers.IntegerField(help_text="是否完整搜索固定值1", required=False)
 
     def validate_device_id(self, value):
-        if len(value) < 5:
-            raise serializers.ValidationError("设备号长度不能小于5位")
+        if len(value) < 4:
+            raise serializers.ValidationError("设备号长度不能小于4位")
         else:
             return value