# Generated by Django 2.1.4 on 2023-06-27 09:25 from django.db import migrations, models class Migration(migrations.Migration): initial = True dependencies = [ ] operations = [ migrations.CreateModel( name='DeviceUser', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('user_tag', models.IntegerField(choices=[(1, '专业用户'), (2, '销售用户'), (3, '普通用户')], default=3, verbose_name='用户分类')), ('uid', models.PositiveIntegerField(default=0, unique=True)), ('role_id', models.PositiveIntegerField(default=0)), ('mobile', models.CharField(default='', max_length=15)), ('username_change_times', models.PositiveIntegerField(default=0)), ('email', models.EmailField(default='', max_length=80)), ('real_name', models.CharField(default='', max_length=100)), ('image', models.CharField(default='', max_length=100)), ('state', models.PositiveIntegerField(default=1)), ('province', models.CharField(default='', max_length=50, verbose_name='设备归属 省')), ('city', models.CharField(default='', max_length=50, verbose_name='设备归属 市')), ('district', models.CharField(default='', max_length=50, verbose_name='设备归属 县')), ('remark', models.TextField(default='', verbose_name='用户备注')), ('regiest_source', models.PositiveIntegerField(default=0)), ('login_time', models.PositiveIntegerField(default=0)), ('user_type', models.PositiveIntegerField(default=4)), ('user_area', models.CharField(default='', max_length=50, verbose_name='用户区域')), ('package_time', models.PositiveIntegerField(default=31536000)), ('addtime', models.PositiveIntegerField(default=0)), ('uptime', models.PositiveIntegerField(default=0)), ('user_group_id', models.PositiveIntegerField(default=0)), ('tets_user', models.PositiveIntegerField(default=0)), ('children_num', models.PositiveIntegerField(default=0)), ('identify_model', models.CharField(default='A', max_length=5)), ('user_purviews', models.TextField(verbose_name='角色拥有的用户权限')), ('user_purviews_init', models.BooleanField(default=False, verbose_name='是否初始化用户权限')), ('sms_count', models.PositiveIntegerField(default=100)), ('pay_sms_count', models.PositiveIntegerField(default=0)), ('other_uuid', models.CharField(default='', max_length=512, verbose_name='第三方登陆对接用户唯一标识')), ('other_type', models.CharField(default='', max_length=16, verbose_name='第三方登陆用户类型标识')), ('user_attribute', models.IntegerField(default=0, verbose_name='用户属性,0 表示标准用户,1 表示中性用户')), ('api_token', models.CharField(default='', max_length=32, verbose_name='用户调用接口令牌')), ], options={ 'verbose_name': 'user', 'verbose_name_plural': 'users', 'db_table': 'sa_device_user', 'abstract': False, }, ), migrations.CreateModel( name='MongoAlarm_Record', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('equip_id', models.CharField(max_length=50)), ('alarm_time', models.IntegerField(default=0)), ('equip_type', models.CharField(max_length=50)), ('alarm_desc', models.TextField(blank=True, null=True, verbose_name='预警描述')), ], options={ 'verbose_name': '设备预警', 'verbose_name_plural': '设备预警', 'db_table': 'sa_alarm_record', }, ), migrations.CreateModel( name='MongoAreaIrrigate', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('backcode', models.CharField(default='', max_length=50, verbose_name='溯源码')), ('farm', models.CharField(default='', max_length=50, verbose_name='所属基地')), ('land', models.CharField(default='', max_length=50, verbose_name='操作地块')), ('batch', models.CharField(blank=True, max_length=20, null=True, verbose_name='批次名称')), ('area', models.CharField(blank=True, max_length=20, null=True, verbose_name='灌溉面积')), ('user', models.CharField(blank=True, max_length=20, null=True, verbose_name='操作人')), ('uptime', models.IntegerField(default=0, verbose_name='操作时间')), ], options={ 'db_table': 'sa_irrigate_info', }, ), migrations.CreateModel( name='MongoAreaJob', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('backcode', models.CharField(default='', max_length=50, verbose_name='溯源码')), ('farm', models.CharField(default='', max_length=50, verbose_name='所属基地')), ('land', models.CharField(default='', max_length=50, verbose_name='操作地块')), ('batch', models.CharField(blank=True, max_length=20, null=True, verbose_name='批次名称')), ('jobname', models.CharField(blank=True, max_length=20, null=True, verbose_name='操作事项')), ('user', models.CharField(blank=True, max_length=20, null=True, verbose_name='操作人')), ('uptime', models.IntegerField(default=0, verbose_name='操作时间')), ], options={ 'db_table': 'sa_job_info', }, ), migrations.CreateModel( name='MongoAreaManure', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('backcode', models.CharField(default='', max_length=50, verbose_name='溯源码')), ('farm', models.CharField(default='', max_length=50, verbose_name='所属基地')), ('land', models.CharField(default='', max_length=50, verbose_name='操作地块')), ('manureuse', models.CharField(default='', max_length=50, verbose_name='肥料用量')), ('batch', models.CharField(blank=True, max_length=20, null=True, verbose_name='批次名称')), ('itemname', models.CharField(blank=True, max_length=20, null=True, verbose_name='肥料名称')), ('user', models.CharField(blank=True, max_length=20, null=True, verbose_name='操作人')), ('uptime', models.IntegerField(default=0, verbose_name='操作时间')), ], options={ 'db_table': 'sa_manura_info', }, ), migrations.CreateModel( name='MongoAreaMedi', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('backcode', models.CharField(default='', max_length=50, verbose_name='溯源码')), ('farm', models.CharField(default='', max_length=50, verbose_name='所属基地')), ('land', models.CharField(default='', max_length=50, verbose_name='操作地块')), ('batch', models.CharField(blank=True, max_length=20, null=True, verbose_name='批次名称')), ('mediname', models.CharField(blank=True, max_length=20, null=True, verbose_name='药品名称')), ('user', models.CharField(blank=True, max_length=20, null=True, verbose_name='操作人')), ('uptime', models.IntegerField(default=0, verbose_name='操作时间')), ], options={ 'db_table': 'sa_medi_info', }, ), migrations.CreateModel( name='MongoAreaPick', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('backcode', models.CharField(default='', max_length=50, verbose_name='溯源码')), ('pickname', models.CharField(default='', max_length=50, verbose_name='采收名称')), ('farm', models.CharField(default='', max_length=50, verbose_name='所属基地')), ('land', models.CharField(default='', max_length=50, verbose_name='操作地块')), ('batch', models.CharField(blank=True, max_length=20, null=True, verbose_name='批次名称')), ('picktotal', models.CharField(blank=True, max_length=20, null=True, verbose_name='采收总量')), ('user', models.CharField(blank=True, max_length=20, null=True, verbose_name='操作人')), ('uptime', models.IntegerField(default=0, verbose_name='操作时间')), ], options={ 'db_table': 'sa_pick_info', }, ), migrations.CreateModel( name='MongoAscendCode', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('backcode', models.CharField(default='', max_length=50, verbose_name='溯源码')), ('farmid', models.CharField(default='', max_length=50, verbose_name='基地id')), ('landid', models.CharField(default='', max_length=50, verbose_name='地块id')), ('farmname', models.CharField(blank=True, max_length=20, null=True, verbose_name='基地名称')), ('landname', models.CharField(blank=True, max_length=20, null=True, verbose_name='地块名称')), ('user', models.CharField(blank=True, max_length=20, null=True, verbose_name='操作人')), ('is_pick', models.IntegerField(default=0, verbose_name='是否采收')), ('uptime', models.IntegerField(default=0, verbose_name='操作时间')), ], options={ 'db_table': 'sa_ascendcode', }, ), migrations.CreateModel( name='MongoAttractphoto', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('device_id', models.CharField(default='', max_length=50)), ('addtime', models.IntegerField(default=0)), ('uptime', models.IntegerField(default=0)), ('addr', models.CharField(default=0, max_length=200, verbose_name='照片路径')), ('at', models.CharField(default=0, max_length=50, verbose_name='环境温度')), ('ah', models.CharField(default=0, max_length=50, verbose_name='环境湿度')), ('describe', models.CharField(default=0, max_length=50, verbose_name='描述')), ('indentify_photo', models.CharField(default=0, max_length=200, verbose_name='识别照片路径')), ('indentify_result', models.CharField(default=0, max_length=100)), ('photo_status', models.PositiveIntegerField(default=1)), ('is_mark', models.PositiveIntegerField(default=0)), ('mark', models.TextField(default='[]')), ], options={ 'db_table': 'sa_device_attract_photo', }, ), migrations.CreateModel( name='MongoBase', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('base_user', models.CharField(blank=True, max_length=20, null=True, verbose_name='基地所属用户')), ('base_name', models.CharField(blank=True, max_length=20, null=True, verbose_name='基地名称')), ('base_charge', models.CharField(blank=True, max_length=20, null=True, verbose_name='负责人')), ('base_phone', models.CharField(blank=True, max_length=20, null=True, verbose_name='联系电话')), ('base_img', models.CharField(blank=True, max_length=500, null=True, verbose_name='基地图片')), ('base_area', models.CharField(blank=True, max_length=10, null=True, verbose_name='基地面积')), ('base_equip', models.TextField(blank=True, null=True, verbose_name='绑定设备')), ('base_describe', models.TextField(blank=True, null=True, verbose_name='基地描述')), ('lng', models.CharField(blank=True, max_length=50, null=True, verbose_name='经度')), ('lat', models.CharField(blank=True, max_length=50, null=True, verbose_name='纬度')), ('addtime', models.IntegerField(default=0)), ], options={ 'db_table': 'sa_base_table', }, ), migrations.CreateModel( name='MongoBZYData', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('device_id', models.PositiveIntegerField(default=0, verbose_name='设备自增id')), ('device_data', models.TextField(default='', verbose_name='具体历史状态数据')), ('addtime', models.IntegerField(default=0)), ], options={ 'db_table': 'sa_device_bzy_data', }, ), migrations.CreateModel( name='MongoBZYphoto', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('device_id', models.CharField(default='', max_length=50)), ('addtime', models.IntegerField(default=0)), ('uptime', models.IntegerField(default=0)), ('addr', models.CharField(default='', max_length=200, verbose_name='照片路径')), ('at', models.CharField(default='', max_length=50, verbose_name='环境温度')), ('ah', models.CharField(default='', max_length=50, verbose_name='环境湿度')), ('describe', models.CharField(default='', max_length=50, verbose_name='描述')), ('indentify_photo', models.CharField(default='', max_length=200, verbose_name='识别照片路径')), ('indentify_result', models.CharField(default='', max_length=100)), ('photo_status', models.PositiveIntegerField(default=1)), ('mark', models.TextField(default='')), ], options={ 'db_table': 'sa_device_bzyphoto', }, ), migrations.CreateModel( name='MongoCameraAccount', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('account', models.CharField(default=0, max_length=30, verbose_name='账号')), ('token', models.CharField(default=0, max_length=80, verbose_name='token')), ('addtime', models.IntegerField(default=0)), ('uptime', models.IntegerField(default=0)), ('app_key', models.CharField(default=0, max_length=50, verbose_name='用户账号appkey')), ('app_secret', models.CharField(default=0, max_length=50, verbose_name='用户账号appsecret')), ('salesman', models.CharField(default=0, max_length=50, verbose_name='业务员')), ('account_type', models.IntegerField(default=0)), ], options={ 'db_table': 'sa_device_camera_account', }, ), migrations.CreateModel( name='MongoCameraData', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('device_id', models.CharField(default='', max_length=50)), ('addtime', models.IntegerField(default=0)), ('uptime', models.IntegerField(default=0)), ('status', models.PositiveIntegerField(default=1, verbose_name='设备状态 1在线 0离线')), ('device_info', models.TextField(default='', verbose_name='播放地址')), ('camera_playback', models.CharField(default=0, max_length=10, verbose_name='是否支持回放')), ('account_id', models.CharField(default=1, max_length=50)), ], options={ 'db_table': 'sa_device_camera', }, ), migrations.CreateModel( name='MongoCameraPhoto', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('device_id', models.CharField(default='', max_length=50)), ('addtime', models.IntegerField(default=0)), ('addr', models.CharField(blank=True, max_length=200, null=True, verbose_name='照片路径')), ('photo_status', models.PositiveIntegerField(default=1)), ], options={ 'db_table': 'sa_device_camera_photo', }, ), migrations.CreateModel( name='MongoCBDData', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('device_id', models.PositiveIntegerField(default=0, verbose_name='设备自增id')), ('device_data', models.TextField(default='', verbose_name='具体历史状态数据')), ('addtime', models.IntegerField(default=0)), ], options={ 'db_table': 'sa_device_cbd_data', }, ), migrations.CreateModel( name='MongoCBDPestWarning', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('device_id', models.TextField(default='', verbose_name='设备号')), ('user_id', models.CharField(blank=True, default='', max_length=50, null=True, verbose_name='用户id')), ('warning_name', models.CharField(blank=True, default='', max_length=50, null=True, verbose_name='预警设置名称')), ('warning_content', models.TextField(default='', verbose_name='预警内容')), ('warning_types', models.CharField(default=0, max_length=10, verbose_name='预警类型')), ('upltime', models.IntegerField(default=0, verbose_name='预警时间')), ('send_user', models.TextField(default='', verbose_name='发送用户')), ('status', models.IntegerField(default=0, verbose_name='是否已读')), ], options={ 'db_table': 'sa_device_cbd_pest_warning', }, ), migrations.CreateModel( name='MongoCBDphoto', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('device_id', models.CharField(default='', max_length=50)), ('addtime', models.IntegerField(default=0)), ('uptime', models.IntegerField(default=0)), ('addr', models.CharField(default='', max_length=200, verbose_name='照片路径')), ('at', models.CharField(default='', max_length=50, verbose_name='环境温度')), ('ah', models.CharField(default='', max_length=50, verbose_name='环境湿度')), ('describe', models.CharField(default='', max_length=50, verbose_name='描述')), ('indentify_photo', models.CharField(default='', max_length=200, verbose_name='识别照片路径')), ('indentify_result', models.CharField(default='', max_length=100)), ('photo_status', models.PositiveIntegerField(default=1)), ('is_mark', models.PositiveIntegerField(default=0)), ('mark', models.TextField(default='[]')), ('label', models.TextField(blank=True)), ], options={ 'db_table': 'sa_device_cbdphoto', }, ), migrations.CreateModel( name='MongoCBDphoto_B', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('device_id', models.CharField(default='', max_length=50)), ('addtime', models.IntegerField(default=0)), ('uptime', models.IntegerField(default=0)), ('addr', models.CharField(default='', max_length=200, verbose_name='照片路径')), ('at', models.CharField(default='', max_length=50, verbose_name='环境温度')), ('ah', models.CharField(default='', max_length=50, verbose_name='环境湿度')), ('describe', models.CharField(default='', max_length=50, verbose_name='描述')), ('indentify_photo', models.CharField(default='', max_length=200, verbose_name='识别照片路径')), ('indentify_result', models.CharField(default='', max_length=100)), ('photo_status', models.PositiveIntegerField(default=1)), ('is_mark', models.PositiveIntegerField(default=0)), ('mark', models.TextField(default='[]')), ('label', models.TextField(blank=True)), ], options={ 'db_table': 'sa_device_cbdphoto_b', }, ), migrations.CreateModel( name='MongoCBDphoto_C', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('device_id', models.CharField(default='', max_length=50)), ('addtime', models.IntegerField(default=0)), ('uptime', models.IntegerField(default=0)), ('addr', models.CharField(default='', max_length=200, verbose_name='照片路径')), ('at', models.CharField(default='', max_length=50, verbose_name='环境温度')), ('ah', models.CharField(default='', max_length=50, verbose_name='环境湿度')), ('describe', models.CharField(default='', max_length=50, verbose_name='描述')), ('indentify_photo', models.CharField(default='', max_length=200, verbose_name='识别照片路径')), ('indentify_result', models.CharField(default='', max_length=100)), ('photo_status', models.PositiveIntegerField(default=1)), ('is_mark', models.PositiveIntegerField(default=0)), ('mark', models.TextField(default='[]')), ('label', models.TextField(blank=True)), ], options={ 'db_table': 'sa_device_cbdphoto_c', }, ), migrations.CreateModel( name='MongoCooperationUnit', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('briefing', models.TextField(blank=True, null=True, verbose_name='简介')), ('name', models.CharField(blank=True, max_length=20, null=True, verbose_name='名称')), ('img_urls', models.CharField(blank=True, max_length=300, null=True, verbose_name='图片路径')), ('code', models.CharField(blank=True, max_length=10, null=True, verbose_name='单位与院校与专家')), ], options={ 'verbose_name': '专家单位与院校表', 'verbose_name_plural': '专家单位与院校表', 'db_table': 'sa_cooperation_unit', }, ), migrations.CreateModel( name='MongoDevice', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('device_id', models.CharField(max_length=50, unique=True, verbose_name='设备本身id')), ('dver_num', models.CharField(default='', max_length=50, verbose_name='设备固件版本号')), ('device_model', models.PositiveIntegerField(default=0)), ('device_type_id', models.PositiveIntegerField(default=0, verbose_name='设备类型id')), ('device_name', models.CharField(default='', max_length=50, verbose_name='设备名称')), ('owner_uid', models.PositiveIntegerField(default=0, verbose_name='负责人uid')), ('user_dealer', models.PositiveIntegerField(default=0, verbose_name='负责人uid')), ('province', models.CharField(default='', max_length=50, verbose_name='设备归属 省')), ('city', models.CharField(default='', max_length=50, verbose_name='设备归属 市')), ('district', models.CharField(default='', max_length=50, verbose_name='设备归属 县')), ('device_code', models.PositiveIntegerField(default=0, verbose_name='设备编码 当设备为性诱设备的时候必须存在')), ('device_status', models.PositiveIntegerField(default=1, verbose_name='设备状态 1在线 0离线')), ('off_time', models.PositiveIntegerField(default=0, verbose_name='设备离线时间')), ('ftp_push_addr', models.CharField(default='', max_length=50, verbose_name='设备推送图片地址')), ('serverconf', models.TextField(default='', verbose_name='服务器配置')), ('lng', models.CharField(default='', max_length=50, verbose_name='经度')), ('lat', models.CharField(default='', max_length=50, verbose_name='纬度')), ('gps', models.PositiveIntegerField(default=2, verbose_name='纬度')), ('addtime', models.IntegerField(default=0)), ('uptime', models.IntegerField(default=0)), ('glass_slide_time', models.IntegerField(default=0)), ('cultivate_time', models.IntegerField(default=0)), ('add_position', models.PositiveIntegerField(default=0, verbose_name='是否手动添加位置')), ('simid', models.CharField(default='', max_length=50, verbose_name='海康流量卡')), ('disable', models.PositiveIntegerField(default=0, verbose_name='禁用识别统计')), ('decoy', models.CharField(default='', max_length=50, verbose_name='性诱设备诱芯')), ('sim_dealer', models.CharField(default=0, max_length=50, verbose_name='SIM经销商')), ('xy_uptime', models.IntegerField(default=0)), ('networking', models.CharField(default=0, max_length=10, verbose_name='联网方式')), ('equipment', models.CharField(default=0, max_length=10, verbose_name='设备状态')), ('sale_uid', models.IntegerField(default=0, verbose_name='销售用户uid')), ('salesman_task_number', models.CharField(default=0, max_length=20, verbose_name='销售用户#任务单号')), ('whether_equipment_status', models.CharField(default=0, max_length=10, verbose_name='是否更新设备状态')), ('device_expire_time', models.IntegerField(default=0)), ('device_activation', models.IntegerField(default=0)), ('device_expire', models.CharField(default=0, max_length=10, verbose_name='设备是否到期')), ('device_expire_days', models.CharField(default=0, max_length=10, verbose_name='设备到期天数')), ('water_pump_switch', models.CharField(default=0, max_length=10, verbose_name='水泵开关')), ('device_notes', models.CharField(blank=True, default=0, max_length=20, null=True, verbose_name='设备备注')), ('water_pump_times', models.CharField(default=0, max_length=10, verbose_name='水泵控制时间')), ('water_pump_switch_times', models.CharField(default=0, max_length=10, verbose_name='下发水泵开关的时间')), ('xy_expire_time', models.IntegerField(default=0)), ('device_tag', models.IntegerField(choices=[(51, '土壤墒情站')], default=0, verbose_name='设备标记')), ], options={ 'db_table': 'sa_device', }, ), migrations.CreateModel( name='MongoDevice_Desc', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('device_id', models.CharField(blank=True, max_length=50, null=True, verbose_name='对应的设备id')), ('photo_id', models.CharField(blank=True, max_length=50, null=True, verbose_name='照片ID')), ('desc_user', models.CharField(blank=True, max_length=50, null=True, verbose_name='添加描述的用户')), ('add_time', models.IntegerField(default=0)), ('crop_name', models.CharField(blank=True, max_length=20, null=True, verbose_name='作物名称')), ('pest_case', models.CharField(blank=True, max_length=30, null=True, verbose_name='虫害情况')), ('pest_name', models.CharField(blank=True, max_length=50, null=True, verbose_name='害虫名称')), ('pest_num', models.CharField(blank=True, max_length=10, null=True, verbose_name='害虫数量')), ('photo_time', models.IntegerField(default=0)), ], options={ 'db_table': 'sa_device_desc', }, ), migrations.CreateModel( name='MongoDevice_Payment', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('device_id', models.CharField(default='', max_length=50, verbose_name='设备号')), ('device_type', models.CharField(default='', max_length=10, verbose_name='设备类型')), ('order_number', models.CharField(default='', max_length=50, verbose_name='订单编号')), ('addtime', models.IntegerField(default=0, verbose_name='下单时间')), ('upltime', models.IntegerField(default=0, verbose_name='支付时间')), ('price', models.CharField(blank=True, max_length=20, null=True, verbose_name='支付钱数')), ('menu', models.CharField(blank=True, max_length=20, null=True, verbose_name='套餐')), ('payment_method', models.CharField(default=1, max_length=20, verbose_name='支付方式')), ('recharge_user', models.CharField(blank=True, max_length=20, null=True, verbose_name='充值用户')), ('paystatus', models.CharField(default=0, max_length=20, verbose_name='支付状态')), ('paytype', models.PositiveIntegerField(default=0, verbose_name='充值状态')), ], options={ 'db_table': 'sa_device_payment', }, ), migrations.CreateModel( name='MongoDevice_QP_SimInfo', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('device_id', models.CharField(blank=True, max_length=50, null=True, verbose_name='设备ID')), ('device_name', models.CharField(blank=True, max_length=100, null=True, verbose_name='设备名称')), ('device_type', models.CharField(blank=True, max_length=10, null=True, verbose_name='设备类型')), ('iccid', models.CharField(blank=True, max_length=30, null=True, verbose_name='iccid')), ('msisdn', models.CharField(blank=True, max_length=30, null=True, verbose_name='msisdn')), ('imsi', models.CharField(blank=True, max_length=30, null=True, verbose_name='imsi')), ('ratePlanExpirationDate', models.CharField(blank=True, max_length=30, null=True, verbose_name='套餐过期时间')), ('activeDuration', models.CharField(blank=True, max_length=30, null=True, verbose_name='激活宽限期(天)')), ('ratePlanId', models.CharField(blank=True, max_length=20, null=True, verbose_name='卡当前套餐ID')), ('sim_type', models.CharField(blank=True, max_length=20, null=True, verbose_name='卡类型')), ('totalDataVolume', models.CharField(blank=True, max_length=20, null=True, verbose_name='卡套餐大小, 单位M')), ('deviceStatus', models.CharField(blank=True, max_length=10, null=True, verbose_name='卡在运营商的状态')), ('useCountAsVolume', models.CharField(blank=True, max_length=10, null=True, verbose_name='卡套餐单位')), ('expireDate', models.CharField(blank=True, max_length=20, null=True, verbose_name='过期时间')), ('ratePlanEffetiveDate', models.CharField(blank=True, max_length=20, null=True, verbose_name='卡套餐生效时间')), ('dataUsage', models.CharField(blank=True, max_length=20, null=True, verbose_name='卡本月用量, 单位M')), ('nbCard', models.CharField(blank=True, max_length=10, null=True, verbose_name='是否NB卡')), ('imeiStatus', models.CharField(blank=True, max_length=20, null=True, verbose_name='机卡绑定状态')), ('orgName', models.CharField(blank=True, max_length=30, null=True, verbose_name='卡所属机构名称')), ('testingExpireDate', models.CharField(blank=True, max_length=30, null=True, verbose_name='测试期结束时间')), ('usedDataVolume', models.CharField(blank=True, max_length=30, null=True, verbose_name='卡套餐用量')), ('lastSyncDate', models.CharField(blank=True, max_length=30, null=True, verbose_name='餐用量同步时间')), ('realnameRequired', models.CharField(blank=True, max_length=30, null=True, verbose_name='卡实名需求')), ('realNameCertifystatus', models.CharField(blank=True, max_length=30, null=True, verbose_name='卡实名审核状态')), ('speedLimit', models.CharField(blank=True, max_length=30, null=True, verbose_name='网络限速值,单位:Kbps')), ('carrier', models.CharField(blank=True, max_length=30, null=True, verbose_name='运营商')), ('openDate', models.CharField(blank=True, max_length=30, null=True, verbose_name='出库时间')), ('iratePlanName', models.CharField(blank=True, max_length=30, null=True, verbose_name='卡当前套餐')), ('startDate', models.CharField(blank=True, max_length=30, null=True, verbose_name='激活时间')), ('status', models.CharField(blank=True, max_length=30, null=True, verbose_name='SIM卡状态')), ('uptime', models.IntegerField(default=0)), ], options={ 'db_table': 'sa_device_qp_sim_info', }, ), migrations.CreateModel( name='MongoDevice_SimInfo', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('device_id', models.CharField(blank=True, max_length=50, null=True, verbose_name='设备ID')), ('device_name', models.CharField(blank=True, max_length=100, null=True, verbose_name='设备名称')), ('device_type', models.CharField(blank=True, max_length=10, null=True, verbose_name='设备类型')), ('iccid', models.CharField(blank=True, max_length=30, null=True, verbose_name='iccid')), ('msisdn', models.CharField(blank=True, max_length=50, null=True, verbose_name='msisdn')), ('imsi', models.CharField(blank=True, max_length=30, null=True, verbose_name='imsi')), ('sp_code', models.CharField(blank=True, max_length=30, null=True, verbose_name='短信端口')), ('carrier', models.CharField(blank=True, max_length=30, null=True, verbose_name='运营商')), ('data_plan', models.CharField(blank=True, max_length=20, null=True, verbose_name='套餐大小')), ('data_usage', models.CharField(blank=True, max_length=20, null=True, verbose_name='当月用量')), ('account_status', models.CharField(blank=True, max_length=20, null=True, verbose_name='卡状态')), ('expiry_date', models.CharField(blank=True, max_length=20, null=True, verbose_name='计费结束日期')), ('active', models.CharField(blank=True, max_length=10, null=True, verbose_name='激活状态')), ('test_valid_date', models.CharField(blank=True, max_length=20, null=True, verbose_name='测试期起始日期')), ('silent_valid_date', models.CharField(blank=True, max_length=20, null=True, verbose_name='沉默期起始日期')), ('test_used_data_usage', models.CharField(blank=True, max_length=20, null=True, verbose_name='测试期已用流量')), ('active_date', models.CharField(blank=True, max_length=20, null=True, verbose_name='激活日期')), ('data_balance', models.CharField(blank=True, max_length=20, null=True, verbose_name='剩余流量,单位M')), ('outbound_date', models.CharField(blank=True, max_length=20, null=True, verbose_name='出库日期')), ('support_sms', models.CharField(blank=True, max_length=10, null=True, verbose_name='是否支持短信')), ('sim_alarm', models.TextField(blank=True, null=True, verbose_name='sim卡提示配置')), ('uptime', models.IntegerField(default=0)), ], options={ 'db_table': 'sa_device_sim_info', }, ), migrations.CreateModel( name='MongoDeviceConfig', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('d_id', models.PositiveIntegerField(default=0, verbose_name='设备自增id')), ('device_config', models.TextField(default='', verbose_name='设备配置')), ('cmd', models.CharField(max_length=50, verbose_name='配置属性')), ('addtime', models.IntegerField(default=0)), ('uptime', models.IntegerField(default=0)), ], options={ 'db_table': 'sa_device_config', }, ), migrations.CreateModel( name='MongoDevicePest', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('user', models.CharField(blank=True, max_length=50, null=True, verbose_name='害虫所属用户')), ('pest_add_time', models.IntegerField(default=0)), ('pest_name', models.CharField(max_length=50, verbose_name='害虫名称')), ], options={ 'db_table': 'sa_device_pest', }, ), migrations.CreateModel( name='MongoDevicePestInfo', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('device_id', models.CharField(default='', max_length=50)), ('photo_id', models.CharField(default='', max_length=50)), ('addtime', models.IntegerField(default=0)), ('pest_name', models.CharField(default=0, max_length=50)), ('pest_num', models.CharField(default=0, max_length=50)), ('at', models.CharField(default=0, max_length=50, verbose_name='环境温度')), ('ah', models.CharField(default=0, max_length=50, verbose_name='环境湿度')), ('upltime', models.IntegerField(default=0)), ], options={ 'db_table': 'sa_device_pest_info', }, ), migrations.CreateModel( name='MongoDeviceTemporary', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('device_id', models.CharField(default='', max_length=50)), ('addtime', models.IntegerField(default=0)), ('equipment', models.CharField(default=0, max_length=10, verbose_name='设备状态')), ('whether_equipment_status', models.CharField(default=0, max_length=10, verbose_name='是否更新设备状态')), ('device_expire_time', models.IntegerField(default=0)), ('device_activation', models.IntegerField(default=0)), ('device_expire', models.CharField(default=0, max_length=10, verbose_name='设备是否到期')), ('device_expire_days', models.CharField(default=0, max_length=10, verbose_name='设备到期天数')), ], options={ 'db_table': 'sa_device_temporary', }, ), migrations.CreateModel( name='MongoDeviceType', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('type_name', models.CharField(default='', max_length=50, verbose_name='设备类型名称 ')), ('img_url', models.TextField(default='', verbose_name='设备类型图片url地址')), ('addtime', models.IntegerField(default=0)), ('uptime', models.IntegerField(default=0)), ], options={ 'db_table': 'sa_device_type', }, ), migrations.CreateModel( name='MongoFarmInfo', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('farmname', models.CharField(default='', max_length=50, verbose_name='农场名称')), ('farmaddr', models.CharField(default='', max_length=50, verbose_name='农场地址')), ('farmdesc', models.CharField(default='', max_length=50, verbose_name='农场描述')), ('farmarea', models.CharField(default='', max_length=50, verbose_name='农场面积')), ('farmframe', models.CharField(default='', max_length=200, verbose_name='农场坐标点')), ('user', models.CharField(default='', max_length=50, verbose_name='所属用户')), ('uptime', models.IntegerField(default=0, verbose_name='操作时间')), ], options={ 'db_table': 'sa_farm_info_record', }, ), migrations.CreateModel( name='MongoLandInfo', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('farm', models.CharField(default='', max_length=50, verbose_name='所属农场')), ('landname', models.CharField(blank=True, max_length=20, null=True, verbose_name='地块名称')), ('landuse', models.CharField(blank=True, max_length=20, null=True, verbose_name='地块用途')), ('landaddr', models.CharField(blank=True, max_length=50, null=True, verbose_name='地块地址')), ('landarea', models.CharField(blank=True, max_length=20, null=True, verbose_name='地块面积')), ('uptime', models.IntegerField(default=0, verbose_name='操作时间')), ], options={ 'db_table': 'sa_land_info', }, ), migrations.CreateModel( name='MongoMake_Log', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('log_user', models.CharField(blank=True, max_length=50, null=True, verbose_name='用户名')), ('log_time', models.IntegerField(default=0)), ('log_ip', models.CharField(blank=True, max_length=100, null=True, verbose_name='IP地址')), ('log_desc', models.CharField(blank=True, max_length=100, null=True, verbose_name='操作描述')), ], options={ 'verbose_name': '用户操作日志表', 'verbose_name_plural': '用户操作日志表', 'db_table': 'sa_make_log', }, ), migrations.CreateModel( name='MongoManual_Alert_Record', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('user_id', models.CharField(blank=True, default='', max_length=50, null=True, verbose_name='用户id')), ('device_type_id', models.IntegerField(default=0, verbose_name='设备类型')), ('conf', models.TextField(default=0, verbose_name='短信预警内容')), ('liaisons', models.CharField(max_length=50, verbose_name='联系人名称')), ('phone', models.IntegerField(default=0, verbose_name='联系人电话')), ('create_time', models.IntegerField(default=0, verbose_name='创建时间')), ('status', models.IntegerField(default=0, verbose_name='是否已读')), ], options={ 'db_table': 'sa_device_manual_alert_record', }, ), migrations.CreateModel( name='MongoMenuPerGroupModel', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=20, verbose_name='权限组名称')), ('menus', models.TextField(verbose_name='菜单id列表')), ('uid', models.IntegerField(verbose_name='创建用户uid')), ('create_time', models.DateTimeField(auto_now_add=True, verbose_name='创建时间')), ('modify_time', models.DateTimeField(auto_now=True, verbose_name='修改时间')), ], options={ 'db_table': 'sa_menu_per_group', }, ), migrations.CreateModel( name='MongoMsg_Conf', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('device_id', models.CharField(blank=True, max_length=50, null=True, verbose_name='设备ID')), ('conf', models.TextField(blank=True, null=True, verbose_name='短信配置')), ('uptime', models.IntegerField(default=0)), ], options={ 'db_table': 'sa_device_msg_conf', }, ), migrations.CreateModel( name='MongoMsg_Send', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('mobile', models.CharField(blank=True, max_length=20, verbose_name='手机号')), ('equip_id', models.CharField(blank=True, max_length=20, verbose_name='设备号')), ('uptime', models.IntegerField(default=0)), ('send_dec', models.CharField(blank=True, max_length=300, verbose_name='发送内容')), ('result_desc', models.TextField(blank=True, null=True, verbose_name='短信描述')), ], options={ 'db_table': 'sa_device_msg_send', }, ), migrations.CreateModel( name='MongoND_qxz_data', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('device_id', models.CharField(default='', max_length=50)), ('csq', models.CharField(max_length=10, verbose_name='信号强度')), ('temp', models.CharField(max_length=50, verbose_name='土壤温度')), ('swc', models.CharField(max_length=50, verbose_name='土壤湿度')), ('atm', models.CharField(max_length=10, verbose_name='大气压强')), ('at', models.CharField(max_length=10, verbose_name='空气温度')), ('ats', models.CharField(max_length=10, verbose_name='空气湿度')), ('upl_time', models.IntegerField(default=0, verbose_name='上报时间')), ], options={ 'db_table': 'sa_nd_qxz_data', }, ), migrations.CreateModel( name='MongoND_qxz_status', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('device_id', models.CharField(default='', max_length=50)), ('lat', models.CharField(max_length=50, verbose_name='纬度')), ('lng', models.CharField(max_length=50, verbose_name='经度')), ('topic', models.CharField(default='10', max_length=10, verbose_name='列标题')), ('inidepth', models.CharField(default='10', max_length=10, verbose_name='初始深度')), ('depth', models.CharField(default='', max_length=50, verbose_name='层级深度')), ('csq', models.CharField(max_length=10, verbose_name='信号强度')), ('temp', models.CharField(max_length=50, verbose_name='土壤温度')), ('swc', models.CharField(max_length=50, verbose_name='土壤湿度')), ('atm', models.CharField(max_length=10, verbose_name='大气压强')), ('at', models.CharField(max_length=10, verbose_name='空气温度')), ('ats', models.CharField(max_length=10, verbose_name='空气湿度')), ('upl_time', models.IntegerField(default=0, verbose_name='上报时间')), ], options={ 'db_table': 'sa_nd_qxz_status', }, ), migrations.CreateModel( name='MongoNL_Device', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('device_id', models.CharField(default=0, max_length=50, verbose_name='设备号')), ('device_data', models.TextField(default='', verbose_name='具体状态数据')), ('protocolType', models.CharField(max_length=50, verbose_name='配置属性')), ('addtime', models.IntegerField(default=0)), ('at', models.CharField(max_length=50, verbose_name='环境温度')), ('ah', models.CharField(max_length=50, verbose_name='环境湿度')), ], options={ 'db_table': 'sa_nl_device', }, ), migrations.CreateModel( name='MongoNL_Device_Status', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('device_id', models.CharField(default=0, max_length=50, verbose_name='设备号')), ('addtime', models.IntegerField(default=0)), ('at', models.CharField(max_length=50, verbose_name='环境温度')), ('ah', models.CharField(max_length=50, verbose_name='环境湿度')), ('rain', models.CharField(max_length=50, verbose_name='是否下雨')), ('wind', models.CharField(max_length=50, verbose_name='风速风向')), ('weather', models.CharField(max_length=50, verbose_name='天气')), ('warn', models.CharField(max_length=50, verbose_name='害虫预警情况')), ('lure', models.CharField(max_length=50, verbose_name='诱芯')), ('xy_uptime', models.IntegerField(default=0)), ('xy_expire_time', models.IntegerField(default=0)), ], options={ 'db_table': 'sa_nl_device_status', }, ), migrations.CreateModel( name='MongoOperateLogs', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('uid', models.PositiveIntegerField(default=0, verbose_name='操作用户id')), ('target_id', models.CharField(default='', max_length=100, verbose_name='被操作目标id')), ('content', models.CharField(max_length=500, verbose_name='操作内容')), ('operation_type', models.PositiveIntegerField(default=0, verbose_name='操作类型对设备操作为0 对用户操作为1')), ('ip', models.CharField(max_length=100, verbose_name='操作者ip')), ('addtime', models.IntegerField(default=0)), ], options={ 'db_table': 'sa_operate_logs', }, ), migrations.CreateModel( name='MongoOtherUserTypeModel', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('other_name', models.CharField(max_length=50, verbose_name='其他用户公司名称')), ('other_type', models.CharField(max_length=50, verbose_name='公司标志')), ], options={ 'db_table': 'sa_other_user_type', }, ), migrations.CreateModel( name='MongoOutStock', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('backcode', models.CharField(default='', max_length=50, verbose_name='溯源码')), ('farm', models.CharField(default='', max_length=50, verbose_name='所属基地')), ('land', models.CharField(default='', max_length=50, verbose_name='所属地块')), ('suppliesname', models.CharField(default='', max_length=50, verbose_name='物料名称')), ('suppliescode', models.CharField(default='', max_length=50, verbose_name='物料编号')), ('typename', models.CharField(default='', max_length=50, verbose_name='品类')), ('stockbatch', models.CharField(blank=True, max_length=20, null=True, verbose_name='出库批次')), ('stocknum', models.CharField(blank=True, max_length=20, null=True, verbose_name='出库数量')), ('firm', models.CharField(blank=True, max_length=20, null=True, verbose_name='生产企业')), ('user', models.CharField(blank=True, max_length=20, null=True, verbose_name='操作人')), ('uptime', models.IntegerField(default=0, verbose_name='操作时间')), ], options={ 'db_table': 'sa_out_stock_info', }, ), migrations.CreateModel( name='MongoPest_distribute', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('pest_name', models.CharField(max_length=50)), ('province', models.CharField(default='', max_length=50, verbose_name='害虫统计 省')), ('city', models.CharField(default='', max_length=50, verbose_name='害虫统计 市')), ('avg_num', models.CharField(max_length=10)), ('uptime', models.IntegerField(default=0)), ], options={ 'verbose_name': '害虫地域密度', 'verbose_name_plural': '害虫地域密度', 'db_table': 'sa_pest_distribute', }, ), migrations.CreateModel( name='MongoPestAnswers', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('pestbank_id', models.CharField(blank=True, max_length=50, null=True)), ('user', models.CharField(blank=True, max_length=20, null=True, verbose_name='用户')), ('title', models.CharField(blank=True, max_length=20, null=True, verbose_name='标题')), ('content', models.TextField(blank=True, null=True, verbose_name='问题描述')), ('img_urls', models.CharField(blank=True, max_length=500, null=True, verbose_name='图片路径')), ('lower', models.CharField(blank=True, default=0, max_length=20, null=True, verbose_name='二级评论')), ('user_type', models.CharField(default=0, max_length=20, verbose_name='用户身份')), ('adtime', models.IntegerField(default=0)), ('uptime', models.IntegerField(default=0)), ], options={ 'verbose_name': '病虫害提问表', 'verbose_name_plural': '病虫害提问表', 'db_table': 'sa_pest_answers', }, ), migrations.CreateModel( name='MongoPestBank', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('course', models.CharField(blank=True, max_length=100, null=True, verbose_name='所属科目')), ('name', models.CharField(blank=True, max_length=32, null=True, verbose_name='病虫害名')), ('img_urls', models.CharField(blank=True, max_length=300, null=True, verbose_name='识别出来的图片')), ('prevention', models.TextField(blank=True, null=True, verbose_name='防止方法')), ('search', models.IntegerField(default=0, verbose_name='搜索排名')), ('code', models.CharField(blank=True, max_length=10, null=True, verbose_name='病虫害区分')), ], options={ 'verbose_name': '病虫害知识库表', 'verbose_name_plural': '病虫害知识库表', 'db_table': 'sa_pest_bank', }, ), migrations.CreateModel( name='MongoPestBankNew', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('name', models.CharField(blank=True, max_length=32, null=True, verbose_name='病虫害名')), ('alias', models.CharField(blank=True, max_length=32, null=True, verbose_name='别名')), ('types', models.CharField(blank=True, max_length=10, null=True, verbose_name='区分')), ('cycle', models.CharField(blank=True, max_length=32, null=True, verbose_name='周期')), ('distribution', models.CharField(blank=True, max_length=32, null=True, verbose_name='分布')), ('pathogen', models.CharField(blank=True, max_length=32, null=True, verbose_name='病原体')), ('features', models.CharField(blank=True, max_length=100, null=True, verbose_name='特征')), ('habits', models.CharField(blank=True, max_length=300, null=True, verbose_name='习惯')), ('host', models.CharField(blank=True, max_length=50, null=True, verbose_name='寄主')), ('summary', models.CharField(blank=True, max_length=50, null=True, verbose_name='概括')), ('taxonomy', models.CharField(blank=True, max_length=100, null=True, verbose_name='分类')), ('symptom', models.CharField(blank=True, max_length=100, null=True, verbose_name='症状')), ('prevention', models.TextField(blank=True, null=True, verbose_name='防止方法')), ('img_urls', models.TextField(blank=True, null=True, verbose_name='识别出来的图片')), ('thumb', models.TextField(blank=True, null=True, verbose_name='类似')), ('search', models.IntegerField(default=0, verbose_name='搜索排名')), ], options={ 'verbose_name': '新病虫害知识库表', 'verbose_name_plural': '新病虫害知识库表', 'db_table': 'sa_pest_bank_new', }, ), migrations.CreateModel( name='MongoPestSupplement', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('pestbank_id', models.CharField(default='', max_length=50)), ('user', models.CharField(blank=True, max_length=20, null=True, verbose_name='用户')), ('content', models.TextField(blank=True, null=True, verbose_name='补充内容')), ('review', models.CharField(default=0, max_length=5, verbose_name='是否审核')), ('adtime', models.IntegerField(default=0)), ], options={ 'verbose_name': '病虫害补充数据表', 'verbose_name_plural': '病虫害补充数据表', 'db_table': 'sa_pest_supplement', }, ), migrations.CreateModel( name='MongoPlantInfo', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('backcode', models.CharField(default='', max_length=50, verbose_name='溯源码')), ('farm', models.CharField(default='', max_length=50, verbose_name='所属农场')), ('batch', models.CharField(blank=True, max_length=20, null=True, verbose_name='批次名称')), ('land', models.CharField(blank=True, max_length=20, null=True, verbose_name='所属地块')), ('planttype', models.CharField(blank=True, max_length=20, null=True, verbose_name='种植类别')), ('plantname', models.CharField(blank=True, max_length=20, null=True, verbose_name='作物名称')), ('pickcode', models.CharField(default='0', max_length=20, verbose_name='采收状态')), ('uptime', models.IntegerField(default=0, verbose_name='操作时间')), ], options={ 'db_table': 'sa_plant_info', }, ), migrations.CreateModel( name='MongoProductInfo', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('backcode', models.CharField(default='', max_length=50, verbose_name='溯源码')), ('productphoto', models.CharField(blank=True, max_length=500, null=True, verbose_name='产品图片')), ('productdesc', models.CharField(blank=True, max_length=500, null=True, verbose_name='产品描述')), ('photo1', models.CharField(blank=True, max_length=500, null=True, verbose_name='生长期1')), ('photo2', models.CharField(blank=True, max_length=500, null=True, verbose_name='生长期2')), ('photo3', models.CharField(blank=True, max_length=500, null=True, verbose_name='生长期3')), ('photo4', models.CharField(blank=True, max_length=500, null=True, verbose_name='生长期4')), ('photo5', models.CharField(blank=True, max_length=500, null=True, verbose_name='生长期5')), ('uptime', models.IntegerField(default=0, verbose_name='操作时间')), ], options={ 'db_table': 'sa_product_info', }, ), migrations.CreateModel( name='MongoProjectArea', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('project_user_id', models.PositiveIntegerField(default=0, verbose_name='项目区域所属用户id')), ('project_name', models.CharField(blank=True, max_length=20, null=True, verbose_name='项目区域名称')), ('project_coordinates', models.TextField(verbose_name='项目区域坐标')), ('addtime', models.IntegerField(default=0)), ('upltime', models.IntegerField(default=0)), ], options={ 'verbose_name': '大屏项目区域表', 'verbose_name_plural': '大屏项目区域表', 'db_table': 'sa_project_area', }, ), migrations.CreateModel( name='MongoPutStock', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('backcode', models.CharField(default='', max_length=50, verbose_name='溯源码')), ('farm', models.CharField(default='', max_length=50, verbose_name='所属基地')), ('land', models.CharField(default='', max_length=50, verbose_name='所属地块')), ('suppliesname', models.CharField(default='', max_length=50, verbose_name='物料名称')), ('suppliescode', models.CharField(default='', max_length=50, verbose_name='物料编号')), ('typename', models.CharField(default='', max_length=50, verbose_name='品类')), ('stockbatch', models.CharField(blank=True, max_length=20, null=True, verbose_name='入库批次')), ('stocknum', models.CharField(blank=True, max_length=20, null=True, verbose_name='入库数量')), ('firm', models.CharField(blank=True, max_length=20, null=True, verbose_name='生产企业')), ('user', models.CharField(blank=True, max_length=20, null=True, verbose_name='操作人')), ('uptime', models.IntegerField(default=0, verbose_name='操作时间')), ], options={ 'db_table': 'sa_put_stock_info', }, ), migrations.CreateModel( name='MongoQualityInfo', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('backcode', models.CharField(default='', max_length=50, verbose_name='溯源码')), ('qualitydesc', models.CharField(blank=True, max_length=30, null=True, verbose_name='质检标题')), ('qualityphoto', models.CharField(blank=True, max_length=300, null=True, verbose_name='质检图片')), ('uptime', models.IntegerField(default=0, verbose_name='操作时间')), ], options={ 'db_table': 'sa_quality_info', }, ), migrations.CreateModel( name='MongoQXZ_Alarm', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('device_id', models.CharField(default='', max_length=50)), ('conf', models.TextField(blank=True, null=True, verbose_name='短信配置')), ('phone', models.CharField(blank=True, max_length=20, verbose_name='手机号')), ('upl_time', models.IntegerField(default=0, verbose_name='上报时间')), ], options={ 'db_table': 'sa_qxz_alarm', }, ), migrations.CreateModel( name='MongoQXZ_Alarm_Log', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('device_id', models.CharField(default='', max_length=50)), ('logs', models.TextField(blank=True, null=True, verbose_name='短信反馈')), ('ekey', models.CharField(blank=True, max_length=20, verbose_name='通道号')), ('info', models.CharField(blank=True, max_length=20, verbose_name='内容')), ('upl_time', models.IntegerField(default=0, verbose_name='上报时间')), ], options={ 'db_table': 'sa_qxz_alarm_log', }, ), migrations.CreateModel( name='MongoQXZ_Alarm_Log_New', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('device_id', models.CharField(default='', max_length=50)), ('user_id', models.CharField(default='', max_length=50, verbose_name='用户id')), ('warning_name', models.CharField(default='', max_length=50, verbose_name='预警设置名称')), ('ekey', models.TextField(blank=True, verbose_name='通道号')), ('warning_content', models.TextField(default='', verbose_name='预警内容')), ('send_user', models.TextField(default='', verbose_name='发送用户')), ('status', models.IntegerField(default=0, verbose_name='是否已读')), ('upl_time', models.IntegerField(default=0, verbose_name='上报时间')), ], options={ 'db_table': 'sa_qxz_alarm_log_new', }, ), migrations.CreateModel( name='MongoQXZ_Alarm_New', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('user_id', models.CharField(default='', max_length=50, verbose_name='用户id')), ('warning_id', models.CharField(default='', max_length=50, verbose_name='预警设置id')), ('device_id', models.CharField(default='', max_length=50, verbose_name='设备号')), ('conf', models.TextField(blank=True, null=True, verbose_name='短信配置')), ('send_user_id', models.TextField(default='', verbose_name='多个联系人id')), ('upl_time', models.IntegerField(default=0, verbose_name='上报时间')), ], options={ 'db_table': 'sa_qxz_alarm_new', }, ), migrations.CreateModel( name='MongoQXZ_Auto_Switch', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('device_id', models.CharField(default='', max_length=50)), ('upl_time', models.IntegerField(default=0, verbose_name='上报时间')), ('qxz_auto', models.TextField(blank=True, null=True, verbose_name='气象站阈值')), ], options={ 'db_table': 'sa_qxz_auto_switch', }, ), migrations.CreateModel( name='MongoQXZ_Base_Info', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('device_id', models.CharField(default='', max_length=50)), ('volt', models.CharField(blank=True, max_length=20, null=True, verbose_name='电压')), ('rssi', models.CharField(blank=True, max_length=20, null=True, verbose_name='信号强度')), ('iccid', models.CharField(blank=True, max_length=50, null=True, verbose_name='设备卡号')), ('lng', models.CharField(blank=True, max_length=50, null=True, verbose_name='经度')), ('lat', models.CharField(blank=True, max_length=50, null=True, verbose_name='纬度')), ('led', models.CharField(blank=True, max_length=10, null=True, verbose_name='led点阵屏')), ('ledinfo', models.CharField(blank=True, max_length=100, null=True, verbose_name='led屏幕内容')), ('dver', models.CharField(blank=True, max_length=100, null=True, verbose_name='设备版本号')), ('uptime', models.IntegerField(default=0)), ], options={ 'db_table': 'sa_qxz_base_info', }, ), migrations.CreateModel( name='MongoQXZ_Conf', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('device_id', models.CharField(default='', max_length=50)), ('e1', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道1')), ('e2', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道2')), ('e3', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道3')), ('e4', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道4')), ('e5', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道5')), ('e6', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道6')), ('e7', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道7')), ('e8', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道8')), ('e9', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道9')), ('e10', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道10')), ('e11', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道11')), ('e12', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道12')), ('e13', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道13')), ('e14', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道14')), ('e15', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道15')), ('e16', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道16')), ('e17', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道17')), ('e18', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道18')), ('e19', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道19')), ('e20', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道20')), ('e21', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道21')), ('e22', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道22')), ('e23', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道23')), ('e24', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道24')), ('e25', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道25')), ('e26', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道26')), ('e27', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道27')), ('e28', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道28')), ('e29', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道29')), ('e30', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道30')), ('uptime', models.IntegerField(default=0)), ], options={ 'db_table': 'sa_qxz_conf', }, ), migrations.CreateModel( name='MongoQXZ_Control_History', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('topic', models.CharField(max_length=30, verbose_name='订阅主题')), ('return_value', models.TextField(verbose_name='气象站设备反馈内容')), ('return_time', models.IntegerField(default=0, verbose_name='上报时间')), ], options={ 'db_table': 'sa_qxz_control_history', }, ), migrations.CreateModel( name='MongoQXZ_Default_Conf', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('device_id', models.CharField(default='', max_length=50)), ('e1', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道1')), ('e2', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道2')), ('e3', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道3')), ('e4', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道4')), ('e5', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道5')), ('e6', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道6')), ('e7', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道7')), ('e8', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道8')), ('e9', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道9')), ('e10', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道10')), ('e11', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道11')), ('e12', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道12')), ('e13', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道13')), ('e14', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道14')), ('e15', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道15')), ('e16', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道16')), ('e17', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道17')), ('e18', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道18')), ('e19', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道19')), ('e20', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道20')), ('e21', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道21')), ('e22', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道22')), ('e23', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道23')), ('e24', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道24')), ('e25', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道25')), ('e26', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道26')), ('e27', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道27')), ('e28', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道28')), ('e29', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道29')), ('e30', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道30')), ('uptime', models.IntegerField(default=0)), ], options={ 'db_table': 'sa_qxz_default_conf', }, ), migrations.CreateModel( name='MongoQXZ_Info_Record', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('device_id', models.CharField(default='', max_length=50)), ('volt', models.CharField(blank=True, max_length=20, null=True, verbose_name='电压')), ('rssi', models.CharField(blank=True, max_length=20, null=True, verbose_name='信号强度')), ('uptime', models.IntegerField(default=0)), ], options={ 'db_table': 'sa_qxz_info_record', }, ), migrations.CreateModel( name='MongoQXZ_Switch', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('device_id', models.CharField(default='', max_length=50)), ('upl_time', models.IntegerField(default=0, verbose_name='上报时间')), ('qxz_switch_data', models.TextField(blank=True, null=True, verbose_name='气象站开关名字')), ], options={ 'db_table': 'sa_qxz_switch', }, ), migrations.CreateModel( name='MongoQXZ_Switch_Status', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('device_id', models.CharField(default='', max_length=50)), ('upl_time', models.IntegerField(default=0, verbose_name='上报时间')), ('qxz_switch', models.TextField(blank=True, null=True, verbose_name='气象站开关')), ], options={ 'db_table': 'sa_qxz_switch_status', }, ), migrations.CreateModel( name='MongoQXZ_Timing_Switch', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('device_id', models.CharField(default='', max_length=50)), ('upl_time', models.IntegerField(default=0, verbose_name='上报时间')), ('qxz_timing', models.TextField(blank=True, null=True, verbose_name='气象站开关定时')), ], options={ 'db_table': 'sa_qxz_timing_switch', }, ), migrations.CreateModel( name='MongoQXZdata_New', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('device_id', models.CharField(default='', max_length=50)), ('uptime', models.IntegerField(default=0)), ('e1', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道1')), ('e2', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道2')), ('e3', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道3')), ('e4', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道4')), ('e5', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道5')), ('e6', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道6')), ('e7', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道7')), ('e8', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道8')), ('e9', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道9')), ('e10', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道10')), ('e11', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道11')), ('e12', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道12')), ('e13', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道13')), ('e14', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道14')), ('e15', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道15')), ('e16', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道16')), ('e17', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道17')), ('e18', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道18')), ('e19', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道19')), ('e20', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道20')), ('e21', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道21')), ('e22', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道22')), ('e23', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道23')), ('e24', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道24')), ('e25', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道25')), ('e26', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道26')), ('e27', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道27')), ('e28', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道28')), ('e29', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道29')), ('e30', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道30')), ], options={ 'db_table': 'sa_qxz_data', }, ), migrations.CreateModel( name='MongoQXZstatus_New', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('device_id', models.CharField(default='', max_length=50)), ('is_online', models.CharField(blank=True, max_length=5, null=True, verbose_name='在线状态')), ('uptime', models.IntegerField(default=0)), ('e1', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道1')), ('e2', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道2')), ('e3', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道3')), ('e4', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道4')), ('e5', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道5')), ('e6', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道6')), ('e7', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道7')), ('e8', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道8')), ('e9', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道9')), ('e10', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道10')), ('e11', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道11')), ('e12', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道12')), ('e13', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道13')), ('e14', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道14')), ('e15', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道15')), ('e16', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道16')), ('e17', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道17')), ('e18', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道18')), ('e19', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道19')), ('e20', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道20')), ('e21', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道21')), ('e22', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道22')), ('e23', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道23')), ('e24', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道24')), ('e25', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道25')), ('e26', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道26')), ('e27', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道27')), ('e28', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道28')), ('e29', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道29')), ('e30', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道30')), ('interval', models.CharField(blank=True, max_length=30, null=True, verbose_name='设备数据上传时间间隔')), ], options={ 'db_table': 'sa_qxz_status', }, ), migrations.CreateModel( name='MongoRole_Projection', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('RTid', models.PositiveIntegerField(default=0, unique=True)), ('role_company', models.CharField(blank=True, max_length=50, null=True, verbose_name='公司名称')), ('projection_index_title', models.TextField(default='5G+智慧农业云平台', verbose_name='首页标题')), ('projection_bzy_title', models.TextField(default='智能孢子监测系统', verbose_name='孢子仪标题')), ('projection_fb_title', models.TextField(default='设备分布展示', verbose_name='设备分布标题')), ('projection_zh_title', models.TextField(default='数字监测预警系统', verbose_name='设备综合标题')), ('projection_cbd_title', models.TextField(default='虫情测报系统', verbose_name='测报灯标题')), ('projection_qxz_title', models.TextField(default='气象监测系统', verbose_name='气象站标题')), ('water_title', models.TextField(default='水肥一体控制系统展示大屏', verbose_name='水肥默认标题')), ('elect_title', models.TextField(default='机井水电双控系统展示大屏', verbose_name='水电默认标题')), ('wheat_scab', models.TextField(default='小麦赤霉病检测平台', verbose_name='小麦赤霉病默认标题')), ('water_fertilizer_control', models.TextField(default='水肥一体控制系统(X)', verbose_name='水肥一体控制默认标题')), ], options={ 'verbose_name': '投屏主题', 'verbose_name_plural': '投屏主题', 'db_table': 'sa_role_projection', }, ), migrations.CreateModel( name='MongoRole_Table', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('role_describe', models.CharField(blank=True, max_length=50, null=True, verbose_name='角色描述')), ('role_cre_time', models.IntegerField(default=0)), ('role_cre_user', models.CharField(blank=True, max_length=20, null=True, verbose_name='角色创建者')), ('role_logo', models.CharField(default='/data/home_logo/log.jpg', max_length=200, verbose_name='首页logo')), ('role_footer', models.TextField(default='Copyright©2007-2019 All Rrights Resvered\u3000版权所有:河南云飞科技发展有限公司', verbose_name='首页footer信息')), ('role_header', models.TextField(default='智慧农业大数据平台', verbose_name='首页header信息')), ('qr_show', models.BooleanField(default=True)), ], options={ 'verbose_name': '用户组列表', 'verbose_name_plural': '用户组列表', 'db_table': 'sa_role_table', }, ), migrations.CreateModel( name='MongoSCDData', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('device_id', models.PositiveIntegerField(default=0, verbose_name='设备自增id')), ('device_data', models.TextField(default='', verbose_name='具体历史状态数据')), ('addtime', models.IntegerField(default=0)), ('device_status', models.CharField(default=1, max_length=10, verbose_name='四情数据区分')), ], options={ 'db_table': 'sa_device_scd_data', }, ), migrations.CreateModel( name='MongoSellInfo', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('sellname', models.CharField(blank=True, max_length=20, null=True, verbose_name='产品名称')), ('backcode', models.CharField(default='', max_length=50, verbose_name='溯源码')), ('selltime', models.CharField(blank=True, max_length=30, null=True, verbose_name='售卖时间')), ('batch', models.CharField(blank=True, max_length=30, null=True, verbose_name='售卖批次')), ('sellnum', models.CharField(blank=True, max_length=30, null=True, verbose_name='售卖数量')), ('clientname', models.CharField(blank=True, max_length=30, null=True, verbose_name='客户名称')), ('clienttel', models.CharField(blank=True, max_length=30, null=True, verbose_name='客户电话')), ('user', models.CharField(blank=True, max_length=20, null=True, verbose_name='操作人')), ('uptime', models.IntegerField(default=0, verbose_name='操作时间')), ], options={ 'db_table': 'sa_sell_info', }, ), migrations.CreateModel( name='MongoSf_Control_Data', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('device_id', models.CharField(default='', max_length=50)), ('user', models.CharField(default='', max_length=50)), ('relayNum', models.CharField(blank=True, max_length=200, null=True, verbose_name='设备通道操作编号')), ('relayState', models.CharField(blank=True, max_length=200, null=True, verbose_name='设备操作记录')), ('uptime', models.IntegerField(default=0)), ], options={ 'db_table': 'sa_sf_control_data', }, ), migrations.CreateModel( name='MongoSf_Data', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('device_id', models.CharField(default='', max_length=50)), ('device_data', models.CharField(blank=True, max_length=200, null=True, verbose_name='设备历史数据')), ('uptime', models.IntegerField(default=0)), ], options={ 'db_table': 'sa_sf_data', }, ), migrations.CreateModel( name='MongoSf_Info', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('device_id', models.CharField(default='', max_length=50)), ('device_name', models.CharField(default='', max_length=50)), ('eleNum', models.CharField(blank=True, max_length=200, null=True, verbose_name='16路要素通道的索引')), ('eleName', models.CharField(blank=True, max_length=200, null=True, verbose_name='16路要素通道的名称')), ('relayNum', models.CharField(blank=True, max_length=200, null=True, verbose_name='32路继电器通道的索引')), ('relayName', models.CharField(blank=True, max_length=200, null=True, verbose_name='32路继电器通道的名称')), ('lng', models.CharField(blank=True, max_length=30, null=True, verbose_name='经度')), ('lat', models.CharField(blank=True, max_length=30, null=True, verbose_name='纬度')), ('uptime', models.IntegerField(default=0)), ], options={ 'db_table': 'sa_sf_info', }, ), migrations.CreateModel( name='MongoSf_Status', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('device_id', models.CharField(default='', max_length=50)), ('device_addr', models.CharField(blank=True, max_length=200, null=True, verbose_name='设备电磁阀定位')), ('device_status', models.CharField(blank=True, max_length=200, null=True, verbose_name='当前设备状态')), ('uptime', models.IntegerField(default=0)), ], options={ 'db_table': 'sa_sf_status', }, ), migrations.CreateModel( name='MongoSimInfo', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('iccid', models.CharField(max_length=30, unique=True, verbose_name='sim卡号')), ('expiry_time', models.IntegerField(default=0, verbose_name='到期时间')), ('sim_type', models.IntegerField(default=0, verbose_name='sim卡厂商')), ('sim_data', models.TextField(default='', verbose_name='sim信息')), ('create_time', models.DateTimeField(auto_now_add=True, verbose_name='创建时间')), ('modify_time', models.DateTimeField(auto_now=True, verbose_name='修改时间')), ], options={ 'db_table': 'sa_sim_info', }, ), migrations.CreateModel( name='MongoStockInfo', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('backcode', models.CharField(default='', max_length=50, verbose_name='溯源码')), ('farm', models.CharField(default='', max_length=50, verbose_name='所属基地')), ('land', models.CharField(default='', max_length=50, verbose_name='所属地块')), ('suppliesname', models.CharField(default='', max_length=50, verbose_name='物料名称')), ('suppliescode', models.CharField(default='', max_length=50, verbose_name='物料编号')), ('typename', models.CharField(default='', max_length=50, verbose_name='品类')), ('stockbatch', models.CharField(blank=True, max_length=20, null=True, verbose_name='库存')), ('stocknum', models.CharField(blank=True, max_length=20, null=True, verbose_name='库存数量')), ('firm', models.CharField(blank=True, max_length=20, null=True, verbose_name='生产企业')), ('user', models.CharField(blank=True, max_length=20, null=True, verbose_name='操作人')), ('uptime', models.IntegerField(default=0, verbose_name='操作时间')), ], options={ 'db_table': 'sa_stock_info', }, ), migrations.CreateModel( name='MongoSYCBData', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('device_id', models.PositiveIntegerField(default=0, verbose_name='设备自增id')), ('device_data', models.TextField(default='', verbose_name='具体历史状态数据')), ('addtime', models.IntegerField(default=0)), ], options={ 'db_table': 'sa_device_sycb_data', }, ), migrations.CreateModel( name='MongoTransportInfo', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('backcode', models.CharField(default='', max_length=50, verbose_name='溯源码')), ('transname', models.CharField(blank=True, max_length=30, null=True, verbose_name='产品名称')), ('stime', models.CharField(blank=True, max_length=30, null=True, verbose_name='发货时间')), ('etime', models.CharField(blank=True, max_length=30, null=True, verbose_name='到货时间')), ('saddr', models.CharField(blank=True, max_length=30, null=True, verbose_name='发货地点')), ('province', models.CharField(blank=True, max_length=30, null=True, verbose_name='省-到货地点')), ('city', models.CharField(blank=True, max_length=30, null=True, verbose_name='市-到货地点')), ('area', models.CharField(blank=True, max_length=30, null=True, verbose_name='县-到货地点')), ('eaddr', models.CharField(blank=True, max_length=30, null=True, verbose_name='到货地点')), ('detailaddr', models.CharField(blank=True, max_length=100, null=True, verbose_name='详细到货地址')), ('trans', models.CharField(blank=True, max_length=30, null=True, verbose_name='运输方法')), ('batch', models.CharField(blank=True, max_length=30, null=True, verbose_name='批次名称')), ('user', models.CharField(blank=True, max_length=20, null=True, verbose_name='操作人')), ('uptime', models.IntegerField(default=0, verbose_name='操作时间')), ], options={ 'db_table': 'sa_transport_info', }, ), migrations.CreateModel( name='MongoUserDeviceOrderModel', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('uid', models.IntegerField(default=0, verbose_name='负责人uid')), ('device_id', models.CharField(max_length=50, verbose_name='设备id')), ('order', models.IntegerField(default=0, verbose_name='排序字段')), ('create_time', models.DateTimeField(auto_now_add=True, verbose_name='创建时间')), ], options={ 'db_table': 'sa_user_device_order', }, ), migrations.CreateModel( name='MongoUserEarlyWarningConfig', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('user_id', models.CharField(blank=True, default='', max_length=50, null=True, verbose_name='用户id')), ('title', models.CharField(max_length=50, verbose_name='标题')), ('create_time', models.IntegerField(default=0, verbose_name='创建时间')), ('device_type_id', models.IntegerField(default=0, verbose_name='设备类型')), ('status', models.IntegerField(default=1, verbose_name='状态')), ], options={ 'db_table': 'sa_device_user_early_warning_config', }, ), migrations.CreateModel( name='MongoUserLoginLog', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('uid', models.PositiveIntegerField(default=0)), ('ip', models.GenericIPAddressField(default='')), ('addtime', models.PositiveIntegerField(default=0)), ('device_type', models.PositiveIntegerField(default=0)), ], options={ 'db_table': 'sa_user_login_log', }, ), migrations.CreateModel( name='MongoUserMenuPerGroupModel', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('uid', models.IntegerField(unique=True, verbose_name='用户uid')), ('menus', models.TextField(verbose_name='菜单id列表')), ('group_ids', models.CharField(max_length=256, verbose_name='权限组id列表')), ], options={ 'db_table': 'sa_user_menu_per_group', }, ), migrations.CreateModel( name='MongoUserPestWarningSMSConf', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('user_id', models.CharField(blank=True, default='', max_length=50, null=True, verbose_name='用户id')), ('warning_id', models.CharField(blank=True, default='', max_length=50, null=True, verbose_name='预警设置id')), ('device_ids', models.TextField(default='', verbose_name='多个设备号')), ('warning_type', models.IntegerField(default=0, verbose_name='预警类型')), ('conf', models.TextField(default=0, verbose_name='短信预警内容')), ('send_user', models.TextField(default=0, verbose_name='多个发送用户')), ('create_time', models.IntegerField(default=0, verbose_name='创建时间')), ], options={ 'db_table': 'sa_device_user_pest_warning_sms_conf', }, ), migrations.CreateModel( name='MongoUserSaleDevice', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('uid', models.PositiveIntegerField(verbose_name='用户UID')), ('device_id', models.CharField(max_length=50, unique=True, verbose_name='设备本身id')), ], options={ 'db_table': 'sa_user_sale_device', }, ), migrations.CreateModel( name='MongoUserUploadsPictures', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('uid', models.PositiveIntegerField(default=0, verbose_name='用户ID')), ('addr', models.CharField(default='', max_length=200, verbose_name='原图路径')), ('indentify_photo', models.CharField(default='', max_length=200, verbose_name='识别图路径')), ('indentify_result', models.CharField(default='', max_length=100)), ('addtime', models.IntegerField(default=0, verbose_name='上传时间戳秒级')), ('interface', models.CharField(default='', max_length=50)), ], options={ 'db_table': 'user_uploads_pictures', }, ), migrations.CreateModel( name='MongoUserWarningLiaisons', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('user_id', models.CharField(blank=True, default='', max_length=50, null=True, verbose_name='用户id')), ('liaisons', models.CharField(default='', max_length=50, verbose_name='联系人名称')), ('phone', models.IntegerField(default=0, verbose_name='联系人电话')), ('send_count', models.IntegerField(default=0, verbose_name='发送次数')), ('create_time', models.IntegerField(default=0, verbose_name='创建时间')), ], options={ 'db_table': 'sa_device_user_warning_liaisons', }, ), migrations.CreateModel( name='MongoVersion_Record', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('app_name', models.CharField(blank=True, max_length=50, verbose_name='app版本名称')), ('app_num', models.CharField(blank=True, max_length=50, verbose_name='版本号')), ('app_desc', models.CharField(blank=True, max_length=50, verbose_name='更新描述')), ('addtime', models.IntegerField(default=0)), ], options={ 'db_table': 'sa_app_version_record', 'ordering': ['-id'], }, ), migrations.CreateModel( name='MongoWarm_Base_Info', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('device_id', models.CharField(default='', max_length=50)), ('have_camera', models.CharField(blank=True, max_length=20, null=True, verbose_name='是否有监控')), ('camera_addr', models.TextField(default='', verbose_name='播放地址')), ('runmode', models.CharField(blank=True, max_length=20, null=True, verbose_name='设备运行状态')), ('dev_list', models.TextField(blank=True, null=True, verbose_name='设备列表及名称')), ('remark', models.TextField(blank=True, null=True, verbose_name='设备列表的新名称')), ('uptime', models.IntegerField(default=0)), ], options={ 'db_table': 'sa_warm_base_info', }, ), migrations.CreateModel( name='MongoWarm_Input_Status', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('device_id', models.CharField(default='', max_length=50)), ('output', models.TextField(blank=True, null=True, verbose_name='控制IO输入点状态上报')), ('remark', models.TextField(blank=True, null=True, verbose_name='控制IO输入点备注')), ('uptime', models.IntegerField(default=0)), ], options={ 'db_table': 'sa_warm_input_status', }, ), migrations.CreateModel( name='MongoWarm_Output_Status', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('device_id', models.CharField(default='', max_length=50)), ('output', models.TextField(blank=True, null=True, verbose_name='控制IO输出点状态上报')), ('remark', models.TextField(blank=True, null=True, verbose_name='控制IO输出点备注')), ('uptime', models.IntegerField(default=0)), ], options={ 'db_table': 'sa_warm_output_status', }, ), migrations.CreateModel( name='MongoWarm_Switch_Auto_His', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('device_id', models.CharField(default='', max_length=50)), ('dev_name', models.CharField(blank=True, max_length=20, null=True, verbose_name='开关名称')), ('ctl_mod', models.CharField(blank=True, max_length=20, null=True, verbose_name='控制模式')), ('switch_list', models.TextField(blank=True, null=True, verbose_name='开关状态')), ('remark', models.TextField(blank=True, null=True, verbose_name='开关状态备注')), ('uptime', models.IntegerField(default=0)), ], options={ 'db_table': 'sa_warm_switch_auto_his', }, ), migrations.CreateModel( name='MongoWarm_Switch_Data', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('device_id', models.CharField(default='', max_length=50)), ('data', models.TextField(blank=True, null=True, verbose_name='开关状态')), ('remark', models.TextField(blank=True, null=True, verbose_name='开关状态备注')), ('uptime', models.IntegerField(default=0)), ], options={ 'db_table': 'sa_warm_switch_data', }, ), migrations.CreateModel( name='MongoWarm_Switch_Status', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('device_id', models.CharField(default='', max_length=50)), ('dev_name', models.CharField(default='', max_length=50, verbose_name='开关名称')), ('status', models.TextField(blank=True, null=True, verbose_name='开关状态')), ('remark', models.TextField(blank=True, null=True, verbose_name='开关状态备注')), ('uptime', models.IntegerField(default=0)), ], options={ 'db_table': 'sa_warm_switch_status', }, ), migrations.CreateModel( name='MongoWarm_Weather_Data', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('device_id', models.CharField(default='', max_length=50)), ('data', models.TextField(blank=True, null=True, verbose_name='气象要素')), ('uptime', models.IntegerField(default=0)), ], options={ 'db_table': 'sa_warm_weather_data', }, ), migrations.CreateModel( name='MongoWarm_Weather_Status', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('device_id', models.CharField(default='', max_length=50)), ('status', models.TextField(blank=True, null=True, verbose_name='气象要素')), ('uptime', models.IntegerField(default=0)), ], options={ 'db_table': 'sa_warm_weather_status', }, ), migrations.CreateModel( name='MongoWheatdata', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('device_id', models.CharField(default='', max_length=50)), ('province', models.CharField(blank=True, max_length=20, null=True, verbose_name='省')), ('city', models.CharField(blank=True, max_length=20, null=True, verbose_name='市')), ('county', models.CharField(blank=True, max_length=20, null=True, verbose_name='县')), ('uptime', models.IntegerField(default=0, verbose_name='上传时间')), ('data', models.TextField(blank=True, null=True, verbose_name='数据')), ], options={ 'db_table': 'sa_device_wheatdata', }, ), migrations.CreateModel( name='MongoWheatIncidence', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('device_id', models.CharField(default='', max_length=50)), ('province', models.CharField(blank=True, max_length=20, null=True, verbose_name='省')), ('city', models.CharField(blank=True, max_length=20, null=True, verbose_name='市')), ('county', models.CharField(blank=True, max_length=20, null=True, verbose_name='县')), ('uptime', models.IntegerField(default=0, verbose_name='上传时间')), ('incidence', models.CharField(blank=True, max_length=200, null=True, verbose_name='发生率')), ], options={ 'db_table': 'sa_device_wheatincidence', }, ), migrations.CreateModel( name='MongoWheatstatus', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('device_id', models.CharField(default='', max_length=50)), ('province', models.CharField(blank=True, max_length=20, null=True, verbose_name='省')), ('city', models.CharField(blank=True, max_length=20, null=True, verbose_name='市')), ('county', models.CharField(blank=True, max_length=20, null=True, verbose_name='县')), ('uptime', models.IntegerField(default=0, verbose_name='上传时间')), ('status', models.TextField(blank=True, max_length=500, null=True, verbose_name='状态')), ], options={ 'db_table': 'sa_device_wheatstatus', }, ), migrations.CreateModel( name='MongoXCTData', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('device_id', models.PositiveIntegerField(default=0, verbose_name='设备自增id')), ('device_data', models.TextField(default='', verbose_name='具体历史状态数据')), ('addtime', models.IntegerField(default=0)), ], options={ 'db_table': 'sa_device_xct_data', }, ), migrations.CreateModel( name='MongoXCTphoto', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('device_id', models.CharField(default='', max_length=50)), ('addtime', models.IntegerField(default=0)), ('uptime', models.IntegerField(default=0)), ('addr', models.CharField(default=0, max_length=200, verbose_name='照片路径')), ('at', models.CharField(default=0, max_length=50, verbose_name='环境温度')), ('ah', models.CharField(default=0, max_length=50, verbose_name='环境湿度')), ('describe', models.CharField(default=0, max_length=50, verbose_name='描述')), ('indentify_photo', models.CharField(default=0, max_length=200, verbose_name='识别照片路径')), ('indentify_result', models.CharField(default=0, max_length=100)), ('photo_status', models.PositiveIntegerField(default=1)), ('is_mark', models.PositiveIntegerField(default=0)), ('mark', models.TextField(default='[]')), ('label', models.TextField(blank=True)), ], options={ 'db_table': 'sa_device_xct_photo', }, ), migrations.CreateModel( name='MongoXYCBData', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('device_id', models.PositiveIntegerField(default=0, verbose_name='设备自增id')), ('device_data', models.TextField(default='', verbose_name='具体历史状态数据')), ('addtime', models.IntegerField(default=0)), ], options={ 'db_table': 'sa_device_xycb_data', }, ), migrations.CreateModel( name='MongoXYThreeData', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('device_id', models.PositiveIntegerField(default=0, verbose_name='设备自增id')), ('device_data', models.TextField(default='', verbose_name='具体历史状态数据')), ('addtime', models.IntegerField(default=0)), ], options={ 'db_table': 'sa_device_xy_three_data', }, ), migrations.CreateModel( name='MongoXYThreephoto', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('device_id', models.CharField(default='', max_length=50)), ('addtime', models.IntegerField(default=0)), ('uptime', models.IntegerField(default=0)), ('addr', models.CharField(default=0, max_length=200, verbose_name='照片路径')), ('at', models.CharField(default=0, max_length=50, verbose_name='环境温度')), ('ah', models.CharField(default=0, max_length=50, verbose_name='环境湿度')), ('describe', models.CharField(default=0, max_length=50, verbose_name='描述')), ('indentify_photo', models.CharField(default=0, max_length=200, verbose_name='识别照片路径')), ('indentify_result', models.CharField(default=0, max_length=100)), ('photo_status', models.PositiveIntegerField(default=1)), ('is_mark', models.PositiveIntegerField(default=0)), ('mark', models.TextField(default='[]')), ], options={ 'db_table': 'sa_device_xy_three_photo', }, ), migrations.CreateModel( name='Purview', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('parent_perm_id', models.PositiveIntegerField(default=0, verbose_name='父级权限')), ('purview_name', models.CharField(default='', max_length=100, verbose_name='权限名称')), ('path', models.CharField(default='', max_length=100, verbose_name='接口标识')), ('menu', models.CharField(default='', max_length=100, verbose_name='菜单标识')), ('addtime', models.PositiveIntegerField(default=0)), ('uptime', models.PositiveIntegerField(default=0)), ('url', models.TextField(default=0, verbose_name='页面路由')), ('enable', models.BooleanField(default=True, verbose_name='是否启用')), ('priority', models.IntegerField(default=0, verbose_name='排序优先级,整数0最小')), ], options={ 'db_table': 'sa_purview', }, ), migrations.CreateModel( name='Role', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('role_name', models.CharField(default='', max_length=100, verbose_name='角色名称')), ('role_message', models.TextField(default='', verbose_name='角色描述')), ('role_perm', models.TextField(default='', verbose_name='角色拥有的权限')), ('role_status', models.PositiveIntegerField(default=1)), ('addtime', models.PositiveIntegerField(default=0)), ('uptime', models.PositiveIntegerField(default=0)), ('add_by', models.PositiveIntegerField(blank=True, default=None, null=True, verbose_name='创建人')), ], options={ 'db_table': 'sa_role', }, ), migrations.CreateModel( name='UserPurview', fields=[ ('id', models.AutoField(primary_key=True, serialize=False)), ('parent_perm_id', models.PositiveIntegerField(default=0, verbose_name='父级权限')), ('purview_name', models.CharField(default='', max_length=100, verbose_name='权限名称')), ('path', models.CharField(default='', max_length=100, verbose_name='接口标识')), ('menu', models.CharField(default='', max_length=100, verbose_name='菜单标识')), ('addtime', models.PositiveIntegerField(default=0)), ('uptime', models.PositiveIntegerField(default=0)), ('url', models.TextField(default=0, verbose_name='页面路由')), ], options={ 'db_table': 'sa_user_purview', }, ), migrations.AlterUniqueTogether( name='mongootherusertypemodel', unique_together={('other_name', 'other_type')}, ), migrations.AlterUniqueTogether( name='mongomenupergroupmodel', unique_together={('name', 'uid')}, ), migrations.AlterUniqueTogether( name='mongodeviceconfig', unique_together={('d_id', 'cmd')}, ), ]