0001_initial.py 121 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969
  1. # Generated by Django 2.1.4 on 2023-06-27 09:25
  2. from django.db import migrations, models
  3. class Migration(migrations.Migration):
  4. initial = True
  5. dependencies = [
  6. ]
  7. operations = [
  8. migrations.CreateModel(
  9. name='DeviceUser',
  10. fields=[
  11. ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
  12. ('user_tag', models.IntegerField(choices=[(1, '专业用户'), (2, '销售用户'), (3, '普通用户')], default=3, verbose_name='用户分类')),
  13. ('uid', models.PositiveIntegerField(default=0, unique=True)),
  14. ('role_id', models.PositiveIntegerField(default=0)),
  15. ('mobile', models.CharField(default='', max_length=15)),
  16. ('username_change_times', models.PositiveIntegerField(default=0)),
  17. ('email', models.EmailField(default='', max_length=80)),
  18. ('real_name', models.CharField(default='', max_length=100)),
  19. ('image', models.CharField(default='', max_length=100)),
  20. ('state', models.PositiveIntegerField(default=1)),
  21. ('province', models.CharField(default='', max_length=50, verbose_name='设备归属 省')),
  22. ('city', models.CharField(default='', max_length=50, verbose_name='设备归属 市')),
  23. ('district', models.CharField(default='', max_length=50, verbose_name='设备归属 县')),
  24. ('remark', models.TextField(default='', verbose_name='用户备注')),
  25. ('regiest_source', models.PositiveIntegerField(default=0)),
  26. ('login_time', models.PositiveIntegerField(default=0)),
  27. ('user_type', models.PositiveIntegerField(default=4)),
  28. ('user_area', models.CharField(default='', max_length=50, verbose_name='用户区域')),
  29. ('package_time', models.PositiveIntegerField(default=31536000)),
  30. ('addtime', models.PositiveIntegerField(default=0)),
  31. ('uptime', models.PositiveIntegerField(default=0)),
  32. ('user_group_id', models.PositiveIntegerField(default=0)),
  33. ('tets_user', models.PositiveIntegerField(default=0)),
  34. ('children_num', models.PositiveIntegerField(default=0)),
  35. ('identify_model', models.CharField(default='A', max_length=5)),
  36. ('user_purviews', models.TextField(verbose_name='角色拥有的用户权限')),
  37. ('user_purviews_init', models.BooleanField(default=False, verbose_name='是否初始化用户权限')),
  38. ('sms_count', models.PositiveIntegerField(default=100)),
  39. ('pay_sms_count', models.PositiveIntegerField(default=0)),
  40. ('other_uuid', models.CharField(default='', max_length=512, verbose_name='第三方登陆对接用户唯一标识')),
  41. ('other_type', models.CharField(default='', max_length=16, verbose_name='第三方登陆用户类型标识')),
  42. ('user_attribute', models.IntegerField(default=0, verbose_name='用户属性,0 表示标准用户,1 表示中性用户')),
  43. ('api_token', models.CharField(default='', max_length=32, verbose_name='用户调用接口令牌')),
  44. ],
  45. options={
  46. 'verbose_name': 'user',
  47. 'verbose_name_plural': 'users',
  48. 'db_table': 'sa_device_user',
  49. 'abstract': False,
  50. },
  51. ),
  52. migrations.CreateModel(
  53. name='MongoAlarm_Record',
  54. fields=[
  55. ('id', models.AutoField(primary_key=True, serialize=False)),
  56. ('equip_id', models.CharField(max_length=50)),
  57. ('alarm_time', models.IntegerField(default=0)),
  58. ('equip_type', models.CharField(max_length=50)),
  59. ('alarm_desc', models.TextField(blank=True, null=True, verbose_name='预警描述')),
  60. ],
  61. options={
  62. 'verbose_name': '设备预警',
  63. 'verbose_name_plural': '设备预警',
  64. 'db_table': 'sa_alarm_record',
  65. },
  66. ),
  67. migrations.CreateModel(
  68. name='MongoAreaIrrigate',
  69. fields=[
  70. ('id', models.AutoField(primary_key=True, serialize=False)),
  71. ('backcode', models.CharField(default='', max_length=50, verbose_name='溯源码')),
  72. ('farm', models.CharField(default='', max_length=50, verbose_name='所属基地')),
  73. ('land', models.CharField(default='', max_length=50, verbose_name='操作地块')),
  74. ('batch', models.CharField(blank=True, max_length=20, null=True, verbose_name='批次名称')),
  75. ('area', models.CharField(blank=True, max_length=20, null=True, verbose_name='灌溉面积')),
  76. ('user', models.CharField(blank=True, max_length=20, null=True, verbose_name='操作人')),
  77. ('uptime', models.IntegerField(default=0, verbose_name='操作时间')),
  78. ],
  79. options={
  80. 'db_table': 'sa_irrigate_info',
  81. },
  82. ),
  83. migrations.CreateModel(
  84. name='MongoAreaJob',
  85. fields=[
  86. ('id', models.AutoField(primary_key=True, serialize=False)),
  87. ('backcode', models.CharField(default='', max_length=50, verbose_name='溯源码')),
  88. ('farm', models.CharField(default='', max_length=50, verbose_name='所属基地')),
  89. ('land', models.CharField(default='', max_length=50, verbose_name='操作地块')),
  90. ('batch', models.CharField(blank=True, max_length=20, null=True, verbose_name='批次名称')),
  91. ('jobname', models.CharField(blank=True, max_length=20, null=True, verbose_name='操作事项')),
  92. ('user', models.CharField(blank=True, max_length=20, null=True, verbose_name='操作人')),
  93. ('uptime', models.IntegerField(default=0, verbose_name='操作时间')),
  94. ],
  95. options={
  96. 'db_table': 'sa_job_info',
  97. },
  98. ),
  99. migrations.CreateModel(
  100. name='MongoAreaManure',
  101. fields=[
  102. ('id', models.AutoField(primary_key=True, serialize=False)),
  103. ('backcode', models.CharField(default='', max_length=50, verbose_name='溯源码')),
  104. ('farm', models.CharField(default='', max_length=50, verbose_name='所属基地')),
  105. ('land', models.CharField(default='', max_length=50, verbose_name='操作地块')),
  106. ('manureuse', models.CharField(default='', max_length=50, verbose_name='肥料用量')),
  107. ('batch', models.CharField(blank=True, max_length=20, null=True, verbose_name='批次名称')),
  108. ('itemname', models.CharField(blank=True, max_length=20, null=True, verbose_name='肥料名称')),
  109. ('user', models.CharField(blank=True, max_length=20, null=True, verbose_name='操作人')),
  110. ('uptime', models.IntegerField(default=0, verbose_name='操作时间')),
  111. ],
  112. options={
  113. 'db_table': 'sa_manura_info',
  114. },
  115. ),
  116. migrations.CreateModel(
  117. name='MongoAreaMedi',
  118. fields=[
  119. ('id', models.AutoField(primary_key=True, serialize=False)),
  120. ('backcode', models.CharField(default='', max_length=50, verbose_name='溯源码')),
  121. ('farm', models.CharField(default='', max_length=50, verbose_name='所属基地')),
  122. ('land', models.CharField(default='', max_length=50, verbose_name='操作地块')),
  123. ('batch', models.CharField(blank=True, max_length=20, null=True, verbose_name='批次名称')),
  124. ('mediname', models.CharField(blank=True, max_length=20, null=True, verbose_name='药品名称')),
  125. ('user', models.CharField(blank=True, max_length=20, null=True, verbose_name='操作人')),
  126. ('uptime', models.IntegerField(default=0, verbose_name='操作时间')),
  127. ],
  128. options={
  129. 'db_table': 'sa_medi_info',
  130. },
  131. ),
  132. migrations.CreateModel(
  133. name='MongoAreaPick',
  134. fields=[
  135. ('id', models.AutoField(primary_key=True, serialize=False)),
  136. ('backcode', models.CharField(default='', max_length=50, verbose_name='溯源码')),
  137. ('pickname', models.CharField(default='', max_length=50, verbose_name='采收名称')),
  138. ('farm', models.CharField(default='', max_length=50, verbose_name='所属基地')),
  139. ('land', models.CharField(default='', max_length=50, verbose_name='操作地块')),
  140. ('batch', models.CharField(blank=True, max_length=20, null=True, verbose_name='批次名称')),
  141. ('picktotal', models.CharField(blank=True, max_length=20, null=True, verbose_name='采收总量')),
  142. ('user', models.CharField(blank=True, max_length=20, null=True, verbose_name='操作人')),
  143. ('uptime', models.IntegerField(default=0, verbose_name='操作时间')),
  144. ],
  145. options={
  146. 'db_table': 'sa_pick_info',
  147. },
  148. ),
  149. migrations.CreateModel(
  150. name='MongoAscendCode',
  151. fields=[
  152. ('id', models.AutoField(primary_key=True, serialize=False)),
  153. ('backcode', models.CharField(default='', max_length=50, verbose_name='溯源码')),
  154. ('farmid', models.CharField(default='', max_length=50, verbose_name='基地id')),
  155. ('landid', models.CharField(default='', max_length=50, verbose_name='地块id')),
  156. ('farmname', models.CharField(blank=True, max_length=20, null=True, verbose_name='基地名称')),
  157. ('landname', models.CharField(blank=True, max_length=20, null=True, verbose_name='地块名称')),
  158. ('user', models.CharField(blank=True, max_length=20, null=True, verbose_name='操作人')),
  159. ('is_pick', models.IntegerField(default=0, verbose_name='是否采收')),
  160. ('uptime', models.IntegerField(default=0, verbose_name='操作时间')),
  161. ],
  162. options={
  163. 'db_table': 'sa_ascendcode',
  164. },
  165. ),
  166. migrations.CreateModel(
  167. name='MongoAttractphoto',
  168. fields=[
  169. ('id', models.AutoField(primary_key=True, serialize=False)),
  170. ('device_id', models.CharField(default='', max_length=50)),
  171. ('addtime', models.IntegerField(default=0)),
  172. ('uptime', models.IntegerField(default=0)),
  173. ('addr', models.CharField(default=0, max_length=200, verbose_name='照片路径')),
  174. ('at', models.CharField(default=0, max_length=50, verbose_name='环境温度')),
  175. ('ah', models.CharField(default=0, max_length=50, verbose_name='环境湿度')),
  176. ('describe', models.CharField(default=0, max_length=50, verbose_name='描述')),
  177. ('indentify_photo', models.CharField(default=0, max_length=200, verbose_name='识别照片路径')),
  178. ('indentify_result', models.CharField(default=0, max_length=100)),
  179. ('photo_status', models.PositiveIntegerField(default=1)),
  180. ('is_mark', models.PositiveIntegerField(default=0)),
  181. ('mark', models.TextField(default='[]')),
  182. ],
  183. options={
  184. 'db_table': 'sa_device_attract_photo',
  185. },
  186. ),
  187. migrations.CreateModel(
  188. name='MongoBase',
  189. fields=[
  190. ('id', models.AutoField(primary_key=True, serialize=False)),
  191. ('base_user', models.CharField(blank=True, max_length=20, null=True, verbose_name='基地所属用户')),
  192. ('base_name', models.CharField(blank=True, max_length=20, null=True, verbose_name='基地名称')),
  193. ('base_charge', models.CharField(blank=True, max_length=20, null=True, verbose_name='负责人')),
  194. ('base_phone', models.CharField(blank=True, max_length=20, null=True, verbose_name='联系电话')),
  195. ('base_img', models.CharField(blank=True, max_length=500, null=True, verbose_name='基地图片')),
  196. ('base_area', models.CharField(blank=True, max_length=10, null=True, verbose_name='基地面积')),
  197. ('base_equip', models.TextField(blank=True, null=True, verbose_name='绑定设备')),
  198. ('base_describe', models.TextField(blank=True, null=True, verbose_name='基地描述')),
  199. ('lng', models.CharField(blank=True, max_length=50, null=True, verbose_name='经度')),
  200. ('lat', models.CharField(blank=True, max_length=50, null=True, verbose_name='纬度')),
  201. ('addtime', models.IntegerField(default=0)),
  202. ],
  203. options={
  204. 'db_table': 'sa_base_table',
  205. },
  206. ),
  207. migrations.CreateModel(
  208. name='MongoBZYData',
  209. fields=[
  210. ('id', models.AutoField(primary_key=True, serialize=False)),
  211. ('device_id', models.PositiveIntegerField(default=0, verbose_name='设备自增id')),
  212. ('device_data', models.TextField(default='', verbose_name='具体历史状态数据')),
  213. ('addtime', models.IntegerField(default=0)),
  214. ],
  215. options={
  216. 'db_table': 'sa_device_bzy_data',
  217. },
  218. ),
  219. migrations.CreateModel(
  220. name='MongoBZYphoto',
  221. fields=[
  222. ('id', models.AutoField(primary_key=True, serialize=False)),
  223. ('device_id', models.CharField(default='', max_length=50)),
  224. ('addtime', models.IntegerField(default=0)),
  225. ('uptime', models.IntegerField(default=0)),
  226. ('addr', models.CharField(default='', max_length=200, verbose_name='照片路径')),
  227. ('at', models.CharField(default='', max_length=50, verbose_name='环境温度')),
  228. ('ah', models.CharField(default='', max_length=50, verbose_name='环境湿度')),
  229. ('describe', models.CharField(default='', max_length=50, verbose_name='描述')),
  230. ('indentify_photo', models.CharField(default='', max_length=200, verbose_name='识别照片路径')),
  231. ('indentify_result', models.CharField(default='', max_length=100)),
  232. ('photo_status', models.PositiveIntegerField(default=1)),
  233. ('mark', models.TextField(default='')),
  234. ],
  235. options={
  236. 'db_table': 'sa_device_bzyphoto',
  237. },
  238. ),
  239. migrations.CreateModel(
  240. name='MongoCameraAccount',
  241. fields=[
  242. ('id', models.AutoField(primary_key=True, serialize=False)),
  243. ('account', models.CharField(default=0, max_length=30, verbose_name='账号')),
  244. ('token', models.CharField(default=0, max_length=80, verbose_name='token')),
  245. ('addtime', models.IntegerField(default=0)),
  246. ('uptime', models.IntegerField(default=0)),
  247. ('app_key', models.CharField(default=0, max_length=50, verbose_name='用户账号appkey')),
  248. ('app_secret', models.CharField(default=0, max_length=50, verbose_name='用户账号appsecret')),
  249. ('salesman', models.CharField(default=0, max_length=50, verbose_name='业务员')),
  250. ('account_type', models.IntegerField(default=0)),
  251. ],
  252. options={
  253. 'db_table': 'sa_device_camera_account',
  254. },
  255. ),
  256. migrations.CreateModel(
  257. name='MongoCameraData',
  258. fields=[
  259. ('id', models.AutoField(primary_key=True, serialize=False)),
  260. ('device_id', models.CharField(default='', max_length=50)),
  261. ('addtime', models.IntegerField(default=0)),
  262. ('uptime', models.IntegerField(default=0)),
  263. ('status', models.PositiveIntegerField(default=1, verbose_name='设备状态 1在线 0离线')),
  264. ('device_info', models.TextField(default='', verbose_name='播放地址')),
  265. ('camera_playback', models.CharField(default=0, max_length=10, verbose_name='是否支持回放')),
  266. ('account_id', models.CharField(default=1, max_length=50)),
  267. ],
  268. options={
  269. 'db_table': 'sa_device_camera',
  270. },
  271. ),
  272. migrations.CreateModel(
  273. name='MongoCameraPhoto',
  274. fields=[
  275. ('id', models.AutoField(primary_key=True, serialize=False)),
  276. ('device_id', models.CharField(default='', max_length=50)),
  277. ('addtime', models.IntegerField(default=0)),
  278. ('addr', models.CharField(blank=True, max_length=200, null=True, verbose_name='照片路径')),
  279. ('photo_status', models.PositiveIntegerField(default=1)),
  280. ],
  281. options={
  282. 'db_table': 'sa_device_camera_photo',
  283. },
  284. ),
  285. migrations.CreateModel(
  286. name='MongoCBDData',
  287. fields=[
  288. ('id', models.AutoField(primary_key=True, serialize=False)),
  289. ('device_id', models.PositiveIntegerField(default=0, verbose_name='设备自增id')),
  290. ('device_data', models.TextField(default='', verbose_name='具体历史状态数据')),
  291. ('addtime', models.IntegerField(default=0)),
  292. ],
  293. options={
  294. 'db_table': 'sa_device_cbd_data',
  295. },
  296. ),
  297. migrations.CreateModel(
  298. name='MongoCBDPestWarning',
  299. fields=[
  300. ('id', models.AutoField(primary_key=True, serialize=False)),
  301. ('device_id', models.TextField(default='', verbose_name='设备号')),
  302. ('user_id', models.CharField(blank=True, default='', max_length=50, null=True, verbose_name='用户id')),
  303. ('warning_name', models.CharField(blank=True, default='', max_length=50, null=True, verbose_name='预警设置名称')),
  304. ('warning_content', models.TextField(default='', verbose_name='预警内容')),
  305. ('warning_types', models.CharField(default=0, max_length=10, verbose_name='预警类型')),
  306. ('upltime', models.IntegerField(default=0, verbose_name='预警时间')),
  307. ('send_user', models.TextField(default='', verbose_name='发送用户')),
  308. ('status', models.IntegerField(default=0, verbose_name='是否已读')),
  309. ],
  310. options={
  311. 'db_table': 'sa_device_cbd_pest_warning',
  312. },
  313. ),
  314. migrations.CreateModel(
  315. name='MongoCBDphoto',
  316. fields=[
  317. ('id', models.AutoField(primary_key=True, serialize=False)),
  318. ('device_id', models.CharField(default='', max_length=50)),
  319. ('addtime', models.IntegerField(default=0)),
  320. ('uptime', models.IntegerField(default=0)),
  321. ('addr', models.CharField(default='', max_length=200, verbose_name='照片路径')),
  322. ('at', models.CharField(default='', max_length=50, verbose_name='环境温度')),
  323. ('ah', models.CharField(default='', max_length=50, verbose_name='环境湿度')),
  324. ('describe', models.CharField(default='', max_length=50, verbose_name='描述')),
  325. ('indentify_photo', models.CharField(default='', max_length=200, verbose_name='识别照片路径')),
  326. ('indentify_result', models.CharField(default='', max_length=100)),
  327. ('photo_status', models.PositiveIntegerField(default=1)),
  328. ('is_mark', models.PositiveIntegerField(default=0)),
  329. ('mark', models.TextField(default='[]')),
  330. ('label', models.TextField(blank=True)),
  331. ],
  332. options={
  333. 'db_table': 'sa_device_cbdphoto',
  334. },
  335. ),
  336. migrations.CreateModel(
  337. name='MongoCBDphoto_B',
  338. fields=[
  339. ('id', models.AutoField(primary_key=True, serialize=False)),
  340. ('device_id', models.CharField(default='', max_length=50)),
  341. ('addtime', models.IntegerField(default=0)),
  342. ('uptime', models.IntegerField(default=0)),
  343. ('addr', models.CharField(default='', max_length=200, verbose_name='照片路径')),
  344. ('at', models.CharField(default='', max_length=50, verbose_name='环境温度')),
  345. ('ah', models.CharField(default='', max_length=50, verbose_name='环境湿度')),
  346. ('describe', models.CharField(default='', max_length=50, verbose_name='描述')),
  347. ('indentify_photo', models.CharField(default='', max_length=200, verbose_name='识别照片路径')),
  348. ('indentify_result', models.CharField(default='', max_length=100)),
  349. ('photo_status', models.PositiveIntegerField(default=1)),
  350. ('is_mark', models.PositiveIntegerField(default=0)),
  351. ('mark', models.TextField(default='[]')),
  352. ('label', models.TextField(blank=True)),
  353. ],
  354. options={
  355. 'db_table': 'sa_device_cbdphoto_b',
  356. },
  357. ),
  358. migrations.CreateModel(
  359. name='MongoCBDphoto_C',
  360. fields=[
  361. ('id', models.AutoField(primary_key=True, serialize=False)),
  362. ('device_id', models.CharField(default='', max_length=50)),
  363. ('addtime', models.IntegerField(default=0)),
  364. ('uptime', models.IntegerField(default=0)),
  365. ('addr', models.CharField(default='', max_length=200, verbose_name='照片路径')),
  366. ('at', models.CharField(default='', max_length=50, verbose_name='环境温度')),
  367. ('ah', models.CharField(default='', max_length=50, verbose_name='环境湿度')),
  368. ('describe', models.CharField(default='', max_length=50, verbose_name='描述')),
  369. ('indentify_photo', models.CharField(default='', max_length=200, verbose_name='识别照片路径')),
  370. ('indentify_result', models.CharField(default='', max_length=100)),
  371. ('photo_status', models.PositiveIntegerField(default=1)),
  372. ('is_mark', models.PositiveIntegerField(default=0)),
  373. ('mark', models.TextField(default='[]')),
  374. ('label', models.TextField(blank=True)),
  375. ],
  376. options={
  377. 'db_table': 'sa_device_cbdphoto_c',
  378. },
  379. ),
  380. migrations.CreateModel(
  381. name='MongoCooperationUnit',
  382. fields=[
  383. ('id', models.AutoField(primary_key=True, serialize=False)),
  384. ('briefing', models.TextField(blank=True, null=True, verbose_name='简介')),
  385. ('name', models.CharField(blank=True, max_length=20, null=True, verbose_name='名称')),
  386. ('img_urls', models.CharField(blank=True, max_length=300, null=True, verbose_name='图片路径')),
  387. ('code', models.CharField(blank=True, max_length=10, null=True, verbose_name='单位与院校与专家')),
  388. ],
  389. options={
  390. 'verbose_name': '专家单位与院校表',
  391. 'verbose_name_plural': '专家单位与院校表',
  392. 'db_table': 'sa_cooperation_unit',
  393. },
  394. ),
  395. migrations.CreateModel(
  396. name='MongoDevice',
  397. fields=[
  398. ('id', models.AutoField(primary_key=True, serialize=False)),
  399. ('device_id', models.CharField(max_length=50, unique=True, verbose_name='设备本身id')),
  400. ('dver_num', models.CharField(default='', max_length=50, verbose_name='设备固件版本号')),
  401. ('device_model', models.PositiveIntegerField(default=0)),
  402. ('device_type_id', models.PositiveIntegerField(default=0, verbose_name='设备类型id')),
  403. ('device_name', models.CharField(default='', max_length=50, verbose_name='设备名称')),
  404. ('owner_uid', models.PositiveIntegerField(default=0, verbose_name='负责人uid')),
  405. ('user_dealer', models.PositiveIntegerField(default=0, verbose_name='负责人uid')),
  406. ('province', models.CharField(default='', max_length=50, verbose_name='设备归属 省')),
  407. ('city', models.CharField(default='', max_length=50, verbose_name='设备归属 市')),
  408. ('district', models.CharField(default='', max_length=50, verbose_name='设备归属 县')),
  409. ('device_code', models.PositiveIntegerField(default=0, verbose_name='设备编码 当设备为性诱设备的时候必须存在')),
  410. ('device_status', models.PositiveIntegerField(default=1, verbose_name='设备状态 1在线 0离线')),
  411. ('off_time', models.PositiveIntegerField(default=0, verbose_name='设备离线时间')),
  412. ('ftp_push_addr', models.CharField(default='', max_length=50, verbose_name='设备推送图片地址')),
  413. ('serverconf', models.TextField(default='', verbose_name='服务器配置')),
  414. ('lng', models.CharField(default='', max_length=50, verbose_name='经度')),
  415. ('lat', models.CharField(default='', max_length=50, verbose_name='纬度')),
  416. ('gps', models.PositiveIntegerField(default=2, verbose_name='纬度')),
  417. ('addtime', models.IntegerField(default=0)),
  418. ('uptime', models.IntegerField(default=0)),
  419. ('glass_slide_time', models.IntegerField(default=0)),
  420. ('cultivate_time', models.IntegerField(default=0)),
  421. ('add_position', models.PositiveIntegerField(default=0, verbose_name='是否手动添加位置')),
  422. ('simid', models.CharField(default='', max_length=50, verbose_name='海康流量卡')),
  423. ('disable', models.PositiveIntegerField(default=0, verbose_name='禁用识别统计')),
  424. ('decoy', models.CharField(default='', max_length=50, verbose_name='性诱设备诱芯')),
  425. ('sim_dealer', models.CharField(default=0, max_length=50, verbose_name='SIM经销商')),
  426. ('xy_uptime', models.IntegerField(default=0)),
  427. ('networking', models.CharField(default=0, max_length=10, verbose_name='联网方式')),
  428. ('equipment', models.CharField(default=0, max_length=10, verbose_name='设备状态')),
  429. ('sale_uid', models.IntegerField(default=0, verbose_name='销售用户uid')),
  430. ('salesman_task_number', models.CharField(default=0, max_length=20, verbose_name='销售用户#任务单号')),
  431. ('whether_equipment_status', models.CharField(default=0, max_length=10, verbose_name='是否更新设备状态')),
  432. ('device_expire_time', models.IntegerField(default=0)),
  433. ('device_activation', models.IntegerField(default=0)),
  434. ('device_expire', models.CharField(default=0, max_length=10, verbose_name='设备是否到期')),
  435. ('device_expire_days', models.CharField(default=0, max_length=10, verbose_name='设备到期天数')),
  436. ('water_pump_switch', models.CharField(default=0, max_length=10, verbose_name='水泵开关')),
  437. ('device_notes', models.CharField(blank=True, default=0, max_length=20, null=True, verbose_name='设备备注')),
  438. ('water_pump_times', models.CharField(default=0, max_length=10, verbose_name='水泵控制时间')),
  439. ('water_pump_switch_times', models.CharField(default=0, max_length=10, verbose_name='下发水泵开关的时间')),
  440. ('xy_expire_time', models.IntegerField(default=0)),
  441. ('device_tag', models.IntegerField(choices=[(51, '土壤墒情站')], default=0, verbose_name='设备标记')),
  442. ],
  443. options={
  444. 'db_table': 'sa_device',
  445. },
  446. ),
  447. migrations.CreateModel(
  448. name='MongoDevice_Desc',
  449. fields=[
  450. ('id', models.AutoField(primary_key=True, serialize=False)),
  451. ('device_id', models.CharField(blank=True, max_length=50, null=True, verbose_name='对应的设备id')),
  452. ('photo_id', models.CharField(blank=True, max_length=50, null=True, verbose_name='照片ID')),
  453. ('desc_user', models.CharField(blank=True, max_length=50, null=True, verbose_name='添加描述的用户')),
  454. ('add_time', models.IntegerField(default=0)),
  455. ('crop_name', models.CharField(blank=True, max_length=20, null=True, verbose_name='作物名称')),
  456. ('pest_case', models.CharField(blank=True, max_length=30, null=True, verbose_name='虫害情况')),
  457. ('pest_name', models.CharField(blank=True, max_length=50, null=True, verbose_name='害虫名称')),
  458. ('pest_num', models.CharField(blank=True, max_length=10, null=True, verbose_name='害虫数量')),
  459. ('photo_time', models.IntegerField(default=0)),
  460. ],
  461. options={
  462. 'db_table': 'sa_device_desc',
  463. },
  464. ),
  465. migrations.CreateModel(
  466. name='MongoDevice_Payment',
  467. fields=[
  468. ('id', models.AutoField(primary_key=True, serialize=False)),
  469. ('device_id', models.CharField(default='', max_length=50, verbose_name='设备号')),
  470. ('device_type', models.CharField(default='', max_length=10, verbose_name='设备类型')),
  471. ('order_number', models.CharField(default='', max_length=50, verbose_name='订单编号')),
  472. ('addtime', models.IntegerField(default=0, verbose_name='下单时间')),
  473. ('upltime', models.IntegerField(default=0, verbose_name='支付时间')),
  474. ('price', models.CharField(blank=True, max_length=20, null=True, verbose_name='支付钱数')),
  475. ('menu', models.CharField(blank=True, max_length=20, null=True, verbose_name='套餐')),
  476. ('payment_method', models.CharField(default=1, max_length=20, verbose_name='支付方式')),
  477. ('recharge_user', models.CharField(blank=True, max_length=20, null=True, verbose_name='充值用户')),
  478. ('paystatus', models.CharField(default=0, max_length=20, verbose_name='支付状态')),
  479. ('paytype', models.PositiveIntegerField(default=0, verbose_name='充值状态')),
  480. ],
  481. options={
  482. 'db_table': 'sa_device_payment',
  483. },
  484. ),
  485. migrations.CreateModel(
  486. name='MongoDevice_QP_SimInfo',
  487. fields=[
  488. ('id', models.AutoField(primary_key=True, serialize=False)),
  489. ('device_id', models.CharField(blank=True, max_length=50, null=True, verbose_name='设备ID')),
  490. ('device_name', models.CharField(blank=True, max_length=100, null=True, verbose_name='设备名称')),
  491. ('device_type', models.CharField(blank=True, max_length=10, null=True, verbose_name='设备类型')),
  492. ('iccid', models.CharField(blank=True, max_length=30, null=True, verbose_name='iccid')),
  493. ('msisdn', models.CharField(blank=True, max_length=30, null=True, verbose_name='msisdn')),
  494. ('imsi', models.CharField(blank=True, max_length=30, null=True, verbose_name='imsi')),
  495. ('ratePlanExpirationDate', models.CharField(blank=True, max_length=30, null=True, verbose_name='套餐过期时间')),
  496. ('activeDuration', models.CharField(blank=True, max_length=30, null=True, verbose_name='激活宽限期(天)')),
  497. ('ratePlanId', models.CharField(blank=True, max_length=20, null=True, verbose_name='卡当前套餐ID')),
  498. ('sim_type', models.CharField(blank=True, max_length=20, null=True, verbose_name='卡类型')),
  499. ('totalDataVolume', models.CharField(blank=True, max_length=20, null=True, verbose_name='卡套餐大小, 单位M')),
  500. ('deviceStatus', models.CharField(blank=True, max_length=10, null=True, verbose_name='卡在运营商的状态')),
  501. ('useCountAsVolume', models.CharField(blank=True, max_length=10, null=True, verbose_name='卡套餐单位')),
  502. ('expireDate', models.CharField(blank=True, max_length=20, null=True, verbose_name='过期时间')),
  503. ('ratePlanEffetiveDate', models.CharField(blank=True, max_length=20, null=True, verbose_name='卡套餐生效时间')),
  504. ('dataUsage', models.CharField(blank=True, max_length=20, null=True, verbose_name='卡本月用量, 单位M')),
  505. ('nbCard', models.CharField(blank=True, max_length=10, null=True, verbose_name='是否NB卡')),
  506. ('imeiStatus', models.CharField(blank=True, max_length=20, null=True, verbose_name='机卡绑定状态')),
  507. ('orgName', models.CharField(blank=True, max_length=30, null=True, verbose_name='卡所属机构名称')),
  508. ('testingExpireDate', models.CharField(blank=True, max_length=30, null=True, verbose_name='测试期结束时间')),
  509. ('usedDataVolume', models.CharField(blank=True, max_length=30, null=True, verbose_name='卡套餐用量')),
  510. ('lastSyncDate', models.CharField(blank=True, max_length=30, null=True, verbose_name='餐用量同步时间')),
  511. ('realnameRequired', models.CharField(blank=True, max_length=30, null=True, verbose_name='卡实名需求')),
  512. ('realNameCertifystatus', models.CharField(blank=True, max_length=30, null=True, verbose_name='卡实名审核状态')),
  513. ('speedLimit', models.CharField(blank=True, max_length=30, null=True, verbose_name='网络限速值,单位:Kbps')),
  514. ('carrier', models.CharField(blank=True, max_length=30, null=True, verbose_name='运营商')),
  515. ('openDate', models.CharField(blank=True, max_length=30, null=True, verbose_name='出库时间')),
  516. ('iratePlanName', models.CharField(blank=True, max_length=30, null=True, verbose_name='卡当前套餐')),
  517. ('startDate', models.CharField(blank=True, max_length=30, null=True, verbose_name='激活时间')),
  518. ('status', models.CharField(blank=True, max_length=30, null=True, verbose_name='SIM卡状态')),
  519. ('uptime', models.IntegerField(default=0)),
  520. ],
  521. options={
  522. 'db_table': 'sa_device_qp_sim_info',
  523. },
  524. ),
  525. migrations.CreateModel(
  526. name='MongoDevice_SimInfo',
  527. fields=[
  528. ('id', models.AutoField(primary_key=True, serialize=False)),
  529. ('device_id', models.CharField(blank=True, max_length=50, null=True, verbose_name='设备ID')),
  530. ('device_name', models.CharField(blank=True, max_length=100, null=True, verbose_name='设备名称')),
  531. ('device_type', models.CharField(blank=True, max_length=10, null=True, verbose_name='设备类型')),
  532. ('iccid', models.CharField(blank=True, max_length=30, null=True, verbose_name='iccid')),
  533. ('msisdn', models.CharField(blank=True, max_length=50, null=True, verbose_name='msisdn')),
  534. ('imsi', models.CharField(blank=True, max_length=30, null=True, verbose_name='imsi')),
  535. ('sp_code', models.CharField(blank=True, max_length=30, null=True, verbose_name='短信端口')),
  536. ('carrier', models.CharField(blank=True, max_length=30, null=True, verbose_name='运营商')),
  537. ('data_plan', models.CharField(blank=True, max_length=20, null=True, verbose_name='套餐大小')),
  538. ('data_usage', models.CharField(blank=True, max_length=20, null=True, verbose_name='当月用量')),
  539. ('account_status', models.CharField(blank=True, max_length=20, null=True, verbose_name='卡状态')),
  540. ('expiry_date', models.CharField(blank=True, max_length=20, null=True, verbose_name='计费结束日期')),
  541. ('active', models.CharField(blank=True, max_length=10, null=True, verbose_name='激活状态')),
  542. ('test_valid_date', models.CharField(blank=True, max_length=20, null=True, verbose_name='测试期起始日期')),
  543. ('silent_valid_date', models.CharField(blank=True, max_length=20, null=True, verbose_name='沉默期起始日期')),
  544. ('test_used_data_usage', models.CharField(blank=True, max_length=20, null=True, verbose_name='测试期已用流量')),
  545. ('active_date', models.CharField(blank=True, max_length=20, null=True, verbose_name='激活日期')),
  546. ('data_balance', models.CharField(blank=True, max_length=20, null=True, verbose_name='剩余流量,单位M')),
  547. ('outbound_date', models.CharField(blank=True, max_length=20, null=True, verbose_name='出库日期')),
  548. ('support_sms', models.CharField(blank=True, max_length=10, null=True, verbose_name='是否支持短信')),
  549. ('sim_alarm', models.TextField(blank=True, null=True, verbose_name='sim卡提示配置')),
  550. ('uptime', models.IntegerField(default=0)),
  551. ],
  552. options={
  553. 'db_table': 'sa_device_sim_info',
  554. },
  555. ),
  556. migrations.CreateModel(
  557. name='MongoDeviceConfig',
  558. fields=[
  559. ('id', models.AutoField(primary_key=True, serialize=False)),
  560. ('d_id', models.PositiveIntegerField(default=0, verbose_name='设备自增id')),
  561. ('device_config', models.TextField(default='', verbose_name='设备配置')),
  562. ('cmd', models.CharField(max_length=50, verbose_name='配置属性')),
  563. ('addtime', models.IntegerField(default=0)),
  564. ('uptime', models.IntegerField(default=0)),
  565. ],
  566. options={
  567. 'db_table': 'sa_device_config',
  568. },
  569. ),
  570. migrations.CreateModel(
  571. name='MongoDevicePest',
  572. fields=[
  573. ('id', models.AutoField(primary_key=True, serialize=False)),
  574. ('user', models.CharField(blank=True, max_length=50, null=True, verbose_name='害虫所属用户')),
  575. ('pest_add_time', models.IntegerField(default=0)),
  576. ('pest_name', models.CharField(max_length=50, verbose_name='害虫名称')),
  577. ],
  578. options={
  579. 'db_table': 'sa_device_pest',
  580. },
  581. ),
  582. migrations.CreateModel(
  583. name='MongoDevicePestInfo',
  584. fields=[
  585. ('id', models.AutoField(primary_key=True, serialize=False)),
  586. ('device_id', models.CharField(default='', max_length=50)),
  587. ('photo_id', models.CharField(default='', max_length=50)),
  588. ('addtime', models.IntegerField(default=0)),
  589. ('pest_name', models.CharField(default=0, max_length=50)),
  590. ('pest_num', models.CharField(default=0, max_length=50)),
  591. ('at', models.CharField(default=0, max_length=50, verbose_name='环境温度')),
  592. ('ah', models.CharField(default=0, max_length=50, verbose_name='环境湿度')),
  593. ('upltime', models.IntegerField(default=0)),
  594. ],
  595. options={
  596. 'db_table': 'sa_device_pest_info',
  597. },
  598. ),
  599. migrations.CreateModel(
  600. name='MongoDeviceTemporary',
  601. fields=[
  602. ('id', models.AutoField(primary_key=True, serialize=False)),
  603. ('device_id', models.CharField(default='', max_length=50)),
  604. ('addtime', models.IntegerField(default=0)),
  605. ('equipment', models.CharField(default=0, max_length=10, verbose_name='设备状态')),
  606. ('whether_equipment_status', models.CharField(default=0, max_length=10, verbose_name='是否更新设备状态')),
  607. ('device_expire_time', models.IntegerField(default=0)),
  608. ('device_activation', models.IntegerField(default=0)),
  609. ('device_expire', models.CharField(default=0, max_length=10, verbose_name='设备是否到期')),
  610. ('device_expire_days', models.CharField(default=0, max_length=10, verbose_name='设备到期天数')),
  611. ],
  612. options={
  613. 'db_table': 'sa_device_temporary',
  614. },
  615. ),
  616. migrations.CreateModel(
  617. name='MongoDeviceType',
  618. fields=[
  619. ('id', models.AutoField(primary_key=True, serialize=False)),
  620. ('type_name', models.CharField(default='', max_length=50, verbose_name='设备类型名称 ')),
  621. ('img_url', models.TextField(default='', verbose_name='设备类型图片url地址')),
  622. ('addtime', models.IntegerField(default=0)),
  623. ('uptime', models.IntegerField(default=0)),
  624. ],
  625. options={
  626. 'db_table': 'sa_device_type',
  627. },
  628. ),
  629. migrations.CreateModel(
  630. name='MongoFarmInfo',
  631. fields=[
  632. ('id', models.AutoField(primary_key=True, serialize=False)),
  633. ('farmname', models.CharField(default='', max_length=50, verbose_name='农场名称')),
  634. ('farmaddr', models.CharField(default='', max_length=50, verbose_name='农场地址')),
  635. ('farmdesc', models.CharField(default='', max_length=50, verbose_name='农场描述')),
  636. ('farmarea', models.CharField(default='', max_length=50, verbose_name='农场面积')),
  637. ('farmframe', models.CharField(default='', max_length=200, verbose_name='农场坐标点')),
  638. ('user', models.CharField(default='', max_length=50, verbose_name='所属用户')),
  639. ('uptime', models.IntegerField(default=0, verbose_name='操作时间')),
  640. ],
  641. options={
  642. 'db_table': 'sa_farm_info_record',
  643. },
  644. ),
  645. migrations.CreateModel(
  646. name='MongoLandInfo',
  647. fields=[
  648. ('id', models.AutoField(primary_key=True, serialize=False)),
  649. ('farm', models.CharField(default='', max_length=50, verbose_name='所属农场')),
  650. ('landname', models.CharField(blank=True, max_length=20, null=True, verbose_name='地块名称')),
  651. ('landuse', models.CharField(blank=True, max_length=20, null=True, verbose_name='地块用途')),
  652. ('landaddr', models.CharField(blank=True, max_length=50, null=True, verbose_name='地块地址')),
  653. ('landarea', models.CharField(blank=True, max_length=20, null=True, verbose_name='地块面积')),
  654. ('uptime', models.IntegerField(default=0, verbose_name='操作时间')),
  655. ],
  656. options={
  657. 'db_table': 'sa_land_info',
  658. },
  659. ),
  660. migrations.CreateModel(
  661. name='MongoMake_Log',
  662. fields=[
  663. ('id', models.AutoField(primary_key=True, serialize=False)),
  664. ('log_user', models.CharField(blank=True, max_length=50, null=True, verbose_name='用户名')),
  665. ('log_time', models.IntegerField(default=0)),
  666. ('log_ip', models.CharField(blank=True, max_length=100, null=True, verbose_name='IP地址')),
  667. ('log_desc', models.CharField(blank=True, max_length=100, null=True, verbose_name='操作描述')),
  668. ],
  669. options={
  670. 'verbose_name': '用户操作日志表',
  671. 'verbose_name_plural': '用户操作日志表',
  672. 'db_table': 'sa_make_log',
  673. },
  674. ),
  675. migrations.CreateModel(
  676. name='MongoManual_Alert_Record',
  677. fields=[
  678. ('id', models.AutoField(primary_key=True, serialize=False)),
  679. ('user_id', models.CharField(blank=True, default='', max_length=50, null=True, verbose_name='用户id')),
  680. ('device_type_id', models.IntegerField(default=0, verbose_name='设备类型')),
  681. ('conf', models.TextField(default=0, verbose_name='短信预警内容')),
  682. ('liaisons', models.CharField(max_length=50, verbose_name='联系人名称')),
  683. ('phone', models.IntegerField(default=0, verbose_name='联系人电话')),
  684. ('create_time', models.IntegerField(default=0, verbose_name='创建时间')),
  685. ('status', models.IntegerField(default=0, verbose_name='是否已读')),
  686. ],
  687. options={
  688. 'db_table': 'sa_device_manual_alert_record',
  689. },
  690. ),
  691. migrations.CreateModel(
  692. name='MongoMenuPerGroupModel',
  693. fields=[
  694. ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
  695. ('name', models.CharField(max_length=20, verbose_name='权限组名称')),
  696. ('menus', models.TextField(verbose_name='菜单id列表')),
  697. ('uid', models.IntegerField(verbose_name='创建用户uid')),
  698. ('create_time', models.DateTimeField(auto_now_add=True, verbose_name='创建时间')),
  699. ('modify_time', models.DateTimeField(auto_now=True, verbose_name='修改时间')),
  700. ],
  701. options={
  702. 'db_table': 'sa_menu_per_group',
  703. },
  704. ),
  705. migrations.CreateModel(
  706. name='MongoMsg_Conf',
  707. fields=[
  708. ('id', models.AutoField(primary_key=True, serialize=False)),
  709. ('device_id', models.CharField(blank=True, max_length=50, null=True, verbose_name='设备ID')),
  710. ('conf', models.TextField(blank=True, null=True, verbose_name='短信配置')),
  711. ('uptime', models.IntegerField(default=0)),
  712. ],
  713. options={
  714. 'db_table': 'sa_device_msg_conf',
  715. },
  716. ),
  717. migrations.CreateModel(
  718. name='MongoMsg_Send',
  719. fields=[
  720. ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
  721. ('mobile', models.CharField(blank=True, max_length=20, verbose_name='手机号')),
  722. ('equip_id', models.CharField(blank=True, max_length=20, verbose_name='设备号')),
  723. ('uptime', models.IntegerField(default=0)),
  724. ('send_dec', models.CharField(blank=True, max_length=300, verbose_name='发送内容')),
  725. ('result_desc', models.TextField(blank=True, null=True, verbose_name='短信描述')),
  726. ],
  727. options={
  728. 'db_table': 'sa_device_msg_send',
  729. },
  730. ),
  731. migrations.CreateModel(
  732. name='MongoND_qxz_data',
  733. fields=[
  734. ('id', models.AutoField(primary_key=True, serialize=False)),
  735. ('device_id', models.CharField(default='', max_length=50)),
  736. ('csq', models.CharField(max_length=10, verbose_name='信号强度')),
  737. ('temp', models.CharField(max_length=50, verbose_name='土壤温度')),
  738. ('swc', models.CharField(max_length=50, verbose_name='土壤湿度')),
  739. ('atm', models.CharField(max_length=10, verbose_name='大气压强')),
  740. ('at', models.CharField(max_length=10, verbose_name='空气温度')),
  741. ('ats', models.CharField(max_length=10, verbose_name='空气湿度')),
  742. ('upl_time', models.IntegerField(default=0, verbose_name='上报时间')),
  743. ],
  744. options={
  745. 'db_table': 'sa_nd_qxz_data',
  746. },
  747. ),
  748. migrations.CreateModel(
  749. name='MongoND_qxz_status',
  750. fields=[
  751. ('id', models.AutoField(primary_key=True, serialize=False)),
  752. ('device_id', models.CharField(default='', max_length=50)),
  753. ('lat', models.CharField(max_length=50, verbose_name='纬度')),
  754. ('lng', models.CharField(max_length=50, verbose_name='经度')),
  755. ('topic', models.CharField(default='10', max_length=10, verbose_name='列标题')),
  756. ('inidepth', models.CharField(default='10', max_length=10, verbose_name='初始深度')),
  757. ('depth', models.CharField(default='', max_length=50, verbose_name='层级深度')),
  758. ('csq', models.CharField(max_length=10, verbose_name='信号强度')),
  759. ('temp', models.CharField(max_length=50, verbose_name='土壤温度')),
  760. ('swc', models.CharField(max_length=50, verbose_name='土壤湿度')),
  761. ('atm', models.CharField(max_length=10, verbose_name='大气压强')),
  762. ('at', models.CharField(max_length=10, verbose_name='空气温度')),
  763. ('ats', models.CharField(max_length=10, verbose_name='空气湿度')),
  764. ('upl_time', models.IntegerField(default=0, verbose_name='上报时间')),
  765. ],
  766. options={
  767. 'db_table': 'sa_nd_qxz_status',
  768. },
  769. ),
  770. migrations.CreateModel(
  771. name='MongoNL_Device',
  772. fields=[
  773. ('id', models.AutoField(primary_key=True, serialize=False)),
  774. ('device_id', models.CharField(default=0, max_length=50, verbose_name='设备号')),
  775. ('device_data', models.TextField(default='', verbose_name='具体状态数据')),
  776. ('protocolType', models.CharField(max_length=50, verbose_name='配置属性')),
  777. ('addtime', models.IntegerField(default=0)),
  778. ('at', models.CharField(max_length=50, verbose_name='环境温度')),
  779. ('ah', models.CharField(max_length=50, verbose_name='环境湿度')),
  780. ],
  781. options={
  782. 'db_table': 'sa_nl_device',
  783. },
  784. ),
  785. migrations.CreateModel(
  786. name='MongoNL_Device_Status',
  787. fields=[
  788. ('id', models.AutoField(primary_key=True, serialize=False)),
  789. ('device_id', models.CharField(default=0, max_length=50, verbose_name='设备号')),
  790. ('addtime', models.IntegerField(default=0)),
  791. ('at', models.CharField(max_length=50, verbose_name='环境温度')),
  792. ('ah', models.CharField(max_length=50, verbose_name='环境湿度')),
  793. ('rain', models.CharField(max_length=50, verbose_name='是否下雨')),
  794. ('wind', models.CharField(max_length=50, verbose_name='风速风向')),
  795. ('weather', models.CharField(max_length=50, verbose_name='天气')),
  796. ('warn', models.CharField(max_length=50, verbose_name='害虫预警情况')),
  797. ('lure', models.CharField(max_length=50, verbose_name='诱芯')),
  798. ('xy_uptime', models.IntegerField(default=0)),
  799. ('xy_expire_time', models.IntegerField(default=0)),
  800. ],
  801. options={
  802. 'db_table': 'sa_nl_device_status',
  803. },
  804. ),
  805. migrations.CreateModel(
  806. name='MongoOperateLogs',
  807. fields=[
  808. ('id', models.AutoField(primary_key=True, serialize=False)),
  809. ('uid', models.PositiveIntegerField(default=0, verbose_name='操作用户id')),
  810. ('target_id', models.CharField(default='', max_length=100, verbose_name='被操作目标id')),
  811. ('content', models.CharField(max_length=500, verbose_name='操作内容')),
  812. ('operation_type', models.PositiveIntegerField(default=0, verbose_name='操作类型对设备操作为0 对用户操作为1')),
  813. ('ip', models.CharField(max_length=100, verbose_name='操作者ip')),
  814. ('addtime', models.IntegerField(default=0)),
  815. ],
  816. options={
  817. 'db_table': 'sa_operate_logs',
  818. },
  819. ),
  820. migrations.CreateModel(
  821. name='MongoOtherUserTypeModel',
  822. fields=[
  823. ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
  824. ('other_name', models.CharField(max_length=50, verbose_name='其他用户公司名称')),
  825. ('other_type', models.CharField(max_length=50, verbose_name='公司标志')),
  826. ],
  827. options={
  828. 'db_table': 'sa_other_user_type',
  829. },
  830. ),
  831. migrations.CreateModel(
  832. name='MongoOutStock',
  833. fields=[
  834. ('id', models.AutoField(primary_key=True, serialize=False)),
  835. ('backcode', models.CharField(default='', max_length=50, verbose_name='溯源码')),
  836. ('farm', models.CharField(default='', max_length=50, verbose_name='所属基地')),
  837. ('land', models.CharField(default='', max_length=50, verbose_name='所属地块')),
  838. ('suppliesname', models.CharField(default='', max_length=50, verbose_name='物料名称')),
  839. ('suppliescode', models.CharField(default='', max_length=50, verbose_name='物料编号')),
  840. ('typename', models.CharField(default='', max_length=50, verbose_name='品类')),
  841. ('stockbatch', models.CharField(blank=True, max_length=20, null=True, verbose_name='出库批次')),
  842. ('stocknum', models.CharField(blank=True, max_length=20, null=True, verbose_name='出库数量')),
  843. ('firm', models.CharField(blank=True, max_length=20, null=True, verbose_name='生产企业')),
  844. ('user', models.CharField(blank=True, max_length=20, null=True, verbose_name='操作人')),
  845. ('uptime', models.IntegerField(default=0, verbose_name='操作时间')),
  846. ],
  847. options={
  848. 'db_table': 'sa_out_stock_info',
  849. },
  850. ),
  851. migrations.CreateModel(
  852. name='MongoPest_distribute',
  853. fields=[
  854. ('id', models.AutoField(primary_key=True, serialize=False)),
  855. ('pest_name', models.CharField(max_length=50)),
  856. ('province', models.CharField(default='', max_length=50, verbose_name='害虫统计 省')),
  857. ('city', models.CharField(default='', max_length=50, verbose_name='害虫统计 市')),
  858. ('avg_num', models.CharField(max_length=10)),
  859. ('uptime', models.IntegerField(default=0)),
  860. ],
  861. options={
  862. 'verbose_name': '害虫地域密度',
  863. 'verbose_name_plural': '害虫地域密度',
  864. 'db_table': 'sa_pest_distribute',
  865. },
  866. ),
  867. migrations.CreateModel(
  868. name='MongoPestAnswers',
  869. fields=[
  870. ('id', models.AutoField(primary_key=True, serialize=False)),
  871. ('pestbank_id', models.CharField(blank=True, max_length=50, null=True)),
  872. ('user', models.CharField(blank=True, max_length=20, null=True, verbose_name='用户')),
  873. ('title', models.CharField(blank=True, max_length=20, null=True, verbose_name='标题')),
  874. ('content', models.TextField(blank=True, null=True, verbose_name='问题描述')),
  875. ('img_urls', models.CharField(blank=True, max_length=500, null=True, verbose_name='图片路径')),
  876. ('lower', models.CharField(blank=True, default=0, max_length=20, null=True, verbose_name='二级评论')),
  877. ('user_type', models.CharField(default=0, max_length=20, verbose_name='用户身份')),
  878. ('adtime', models.IntegerField(default=0)),
  879. ('uptime', models.IntegerField(default=0)),
  880. ],
  881. options={
  882. 'verbose_name': '病虫害提问表',
  883. 'verbose_name_plural': '病虫害提问表',
  884. 'db_table': 'sa_pest_answers',
  885. },
  886. ),
  887. migrations.CreateModel(
  888. name='MongoPestBank',
  889. fields=[
  890. ('id', models.AutoField(primary_key=True, serialize=False)),
  891. ('course', models.CharField(blank=True, max_length=100, null=True, verbose_name='所属科目')),
  892. ('name', models.CharField(blank=True, max_length=32, null=True, verbose_name='病虫害名')),
  893. ('img_urls', models.CharField(blank=True, max_length=300, null=True, verbose_name='识别出来的图片')),
  894. ('prevention', models.TextField(blank=True, null=True, verbose_name='防止方法')),
  895. ('search', models.IntegerField(default=0, verbose_name='搜索排名')),
  896. ('code', models.CharField(blank=True, max_length=10, null=True, verbose_name='病虫害区分')),
  897. ],
  898. options={
  899. 'verbose_name': '病虫害知识库表',
  900. 'verbose_name_plural': '病虫害知识库表',
  901. 'db_table': 'sa_pest_bank',
  902. },
  903. ),
  904. migrations.CreateModel(
  905. name='MongoPestBankNew',
  906. fields=[
  907. ('id', models.AutoField(primary_key=True, serialize=False)),
  908. ('name', models.CharField(blank=True, max_length=32, null=True, verbose_name='病虫害名')),
  909. ('alias', models.CharField(blank=True, max_length=32, null=True, verbose_name='别名')),
  910. ('types', models.CharField(blank=True, max_length=10, null=True, verbose_name='区分')),
  911. ('cycle', models.CharField(blank=True, max_length=32, null=True, verbose_name='周期')),
  912. ('distribution', models.CharField(blank=True, max_length=32, null=True, verbose_name='分布')),
  913. ('pathogen', models.CharField(blank=True, max_length=32, null=True, verbose_name='病原体')),
  914. ('features', models.CharField(blank=True, max_length=100, null=True, verbose_name='特征')),
  915. ('habits', models.CharField(blank=True, max_length=300, null=True, verbose_name='习惯')),
  916. ('host', models.CharField(blank=True, max_length=50, null=True, verbose_name='寄主')),
  917. ('summary', models.CharField(blank=True, max_length=50, null=True, verbose_name='概括')),
  918. ('taxonomy', models.CharField(blank=True, max_length=100, null=True, verbose_name='分类')),
  919. ('symptom', models.CharField(blank=True, max_length=100, null=True, verbose_name='症状')),
  920. ('prevention', models.TextField(blank=True, null=True, verbose_name='防止方法')),
  921. ('img_urls', models.TextField(blank=True, null=True, verbose_name='识别出来的图片')),
  922. ('thumb', models.TextField(blank=True, null=True, verbose_name='类似')),
  923. ('search', models.IntegerField(default=0, verbose_name='搜索排名')),
  924. ],
  925. options={
  926. 'verbose_name': '新病虫害知识库表',
  927. 'verbose_name_plural': '新病虫害知识库表',
  928. 'db_table': 'sa_pest_bank_new',
  929. },
  930. ),
  931. migrations.CreateModel(
  932. name='MongoPestSupplement',
  933. fields=[
  934. ('id', models.AutoField(primary_key=True, serialize=False)),
  935. ('pestbank_id', models.CharField(default='', max_length=50)),
  936. ('user', models.CharField(blank=True, max_length=20, null=True, verbose_name='用户')),
  937. ('content', models.TextField(blank=True, null=True, verbose_name='补充内容')),
  938. ('review', models.CharField(default=0, max_length=5, verbose_name='是否审核')),
  939. ('adtime', models.IntegerField(default=0)),
  940. ],
  941. options={
  942. 'verbose_name': '病虫害补充数据表',
  943. 'verbose_name_plural': '病虫害补充数据表',
  944. 'db_table': 'sa_pest_supplement',
  945. },
  946. ),
  947. migrations.CreateModel(
  948. name='MongoPlantInfo',
  949. fields=[
  950. ('id', models.AutoField(primary_key=True, serialize=False)),
  951. ('backcode', models.CharField(default='', max_length=50, verbose_name='溯源码')),
  952. ('farm', models.CharField(default='', max_length=50, verbose_name='所属农场')),
  953. ('batch', models.CharField(blank=True, max_length=20, null=True, verbose_name='批次名称')),
  954. ('land', models.CharField(blank=True, max_length=20, null=True, verbose_name='所属地块')),
  955. ('planttype', models.CharField(blank=True, max_length=20, null=True, verbose_name='种植类别')),
  956. ('plantname', models.CharField(blank=True, max_length=20, null=True, verbose_name='作物名称')),
  957. ('pickcode', models.CharField(default='0', max_length=20, verbose_name='采收状态')),
  958. ('uptime', models.IntegerField(default=0, verbose_name='操作时间')),
  959. ],
  960. options={
  961. 'db_table': 'sa_plant_info',
  962. },
  963. ),
  964. migrations.CreateModel(
  965. name='MongoProductInfo',
  966. fields=[
  967. ('id', models.AutoField(primary_key=True, serialize=False)),
  968. ('backcode', models.CharField(default='', max_length=50, verbose_name='溯源码')),
  969. ('productphoto', models.CharField(blank=True, max_length=500, null=True, verbose_name='产品图片')),
  970. ('productdesc', models.CharField(blank=True, max_length=500, null=True, verbose_name='产品描述')),
  971. ('photo1', models.CharField(blank=True, max_length=500, null=True, verbose_name='生长期1')),
  972. ('photo2', models.CharField(blank=True, max_length=500, null=True, verbose_name='生长期2')),
  973. ('photo3', models.CharField(blank=True, max_length=500, null=True, verbose_name='生长期3')),
  974. ('photo4', models.CharField(blank=True, max_length=500, null=True, verbose_name='生长期4')),
  975. ('photo5', models.CharField(blank=True, max_length=500, null=True, verbose_name='生长期5')),
  976. ('uptime', models.IntegerField(default=0, verbose_name='操作时间')),
  977. ],
  978. options={
  979. 'db_table': 'sa_product_info',
  980. },
  981. ),
  982. migrations.CreateModel(
  983. name='MongoProjectArea',
  984. fields=[
  985. ('id', models.AutoField(primary_key=True, serialize=False)),
  986. ('project_user_id', models.PositiveIntegerField(default=0, verbose_name='项目区域所属用户id')),
  987. ('project_name', models.CharField(blank=True, max_length=20, null=True, verbose_name='项目区域名称')),
  988. ('project_coordinates', models.TextField(verbose_name='项目区域坐标')),
  989. ('addtime', models.IntegerField(default=0)),
  990. ('upltime', models.IntegerField(default=0)),
  991. ],
  992. options={
  993. 'verbose_name': '大屏项目区域表',
  994. 'verbose_name_plural': '大屏项目区域表',
  995. 'db_table': 'sa_project_area',
  996. },
  997. ),
  998. migrations.CreateModel(
  999. name='MongoPutStock',
  1000. fields=[
  1001. ('id', models.AutoField(primary_key=True, serialize=False)),
  1002. ('backcode', models.CharField(default='', max_length=50, verbose_name='溯源码')),
  1003. ('farm', models.CharField(default='', max_length=50, verbose_name='所属基地')),
  1004. ('land', models.CharField(default='', max_length=50, verbose_name='所属地块')),
  1005. ('suppliesname', models.CharField(default='', max_length=50, verbose_name='物料名称')),
  1006. ('suppliescode', models.CharField(default='', max_length=50, verbose_name='物料编号')),
  1007. ('typename', models.CharField(default='', max_length=50, verbose_name='品类')),
  1008. ('stockbatch', models.CharField(blank=True, max_length=20, null=True, verbose_name='入库批次')),
  1009. ('stocknum', models.CharField(blank=True, max_length=20, null=True, verbose_name='入库数量')),
  1010. ('firm', models.CharField(blank=True, max_length=20, null=True, verbose_name='生产企业')),
  1011. ('user', models.CharField(blank=True, max_length=20, null=True, verbose_name='操作人')),
  1012. ('uptime', models.IntegerField(default=0, verbose_name='操作时间')),
  1013. ],
  1014. options={
  1015. 'db_table': 'sa_put_stock_info',
  1016. },
  1017. ),
  1018. migrations.CreateModel(
  1019. name='MongoQualityInfo',
  1020. fields=[
  1021. ('id', models.AutoField(primary_key=True, serialize=False)),
  1022. ('backcode', models.CharField(default='', max_length=50, verbose_name='溯源码')),
  1023. ('qualitydesc', models.CharField(blank=True, max_length=30, null=True, verbose_name='质检标题')),
  1024. ('qualityphoto', models.CharField(blank=True, max_length=300, null=True, verbose_name='质检图片')),
  1025. ('uptime', models.IntegerField(default=0, verbose_name='操作时间')),
  1026. ],
  1027. options={
  1028. 'db_table': 'sa_quality_info',
  1029. },
  1030. ),
  1031. migrations.CreateModel(
  1032. name='MongoQXZ_Alarm',
  1033. fields=[
  1034. ('id', models.AutoField(primary_key=True, serialize=False)),
  1035. ('device_id', models.CharField(default='', max_length=50)),
  1036. ('conf', models.TextField(blank=True, null=True, verbose_name='短信配置')),
  1037. ('phone', models.CharField(blank=True, max_length=20, verbose_name='手机号')),
  1038. ('upl_time', models.IntegerField(default=0, verbose_name='上报时间')),
  1039. ],
  1040. options={
  1041. 'db_table': 'sa_qxz_alarm',
  1042. },
  1043. ),
  1044. migrations.CreateModel(
  1045. name='MongoQXZ_Alarm_Log',
  1046. fields=[
  1047. ('id', models.AutoField(primary_key=True, serialize=False)),
  1048. ('device_id', models.CharField(default='', max_length=50)),
  1049. ('logs', models.TextField(blank=True, null=True, verbose_name='短信反馈')),
  1050. ('ekey', models.CharField(blank=True, max_length=20, verbose_name='通道号')),
  1051. ('info', models.CharField(blank=True, max_length=20, verbose_name='内容')),
  1052. ('upl_time', models.IntegerField(default=0, verbose_name='上报时间')),
  1053. ],
  1054. options={
  1055. 'db_table': 'sa_qxz_alarm_log',
  1056. },
  1057. ),
  1058. migrations.CreateModel(
  1059. name='MongoQXZ_Alarm_Log_New',
  1060. fields=[
  1061. ('id', models.AutoField(primary_key=True, serialize=False)),
  1062. ('device_id', models.CharField(default='', max_length=50)),
  1063. ('user_id', models.CharField(default='', max_length=50, verbose_name='用户id')),
  1064. ('warning_name', models.CharField(default='', max_length=50, verbose_name='预警设置名称')),
  1065. ('ekey', models.TextField(blank=True, verbose_name='通道号')),
  1066. ('warning_content', models.TextField(default='', verbose_name='预警内容')),
  1067. ('send_user', models.TextField(default='', verbose_name='发送用户')),
  1068. ('status', models.IntegerField(default=0, verbose_name='是否已读')),
  1069. ('upl_time', models.IntegerField(default=0, verbose_name='上报时间')),
  1070. ],
  1071. options={
  1072. 'db_table': 'sa_qxz_alarm_log_new',
  1073. },
  1074. ),
  1075. migrations.CreateModel(
  1076. name='MongoQXZ_Alarm_New',
  1077. fields=[
  1078. ('id', models.AutoField(primary_key=True, serialize=False)),
  1079. ('user_id', models.CharField(default='', max_length=50, verbose_name='用户id')),
  1080. ('warning_id', models.CharField(default='', max_length=50, verbose_name='预警设置id')),
  1081. ('device_id', models.CharField(default='', max_length=50, verbose_name='设备号')),
  1082. ('conf', models.TextField(blank=True, null=True, verbose_name='短信配置')),
  1083. ('send_user_id', models.TextField(default='', verbose_name='多个联系人id')),
  1084. ('upl_time', models.IntegerField(default=0, verbose_name='上报时间')),
  1085. ],
  1086. options={
  1087. 'db_table': 'sa_qxz_alarm_new',
  1088. },
  1089. ),
  1090. migrations.CreateModel(
  1091. name='MongoQXZ_Auto_Switch',
  1092. fields=[
  1093. ('id', models.AutoField(primary_key=True, serialize=False)),
  1094. ('device_id', models.CharField(default='', max_length=50)),
  1095. ('upl_time', models.IntegerField(default=0, verbose_name='上报时间')),
  1096. ('qxz_auto', models.TextField(blank=True, null=True, verbose_name='气象站阈值')),
  1097. ],
  1098. options={
  1099. 'db_table': 'sa_qxz_auto_switch',
  1100. },
  1101. ),
  1102. migrations.CreateModel(
  1103. name='MongoQXZ_Base_Info',
  1104. fields=[
  1105. ('id', models.AutoField(primary_key=True, serialize=False)),
  1106. ('device_id', models.CharField(default='', max_length=50)),
  1107. ('volt', models.CharField(blank=True, max_length=20, null=True, verbose_name='电压')),
  1108. ('rssi', models.CharField(blank=True, max_length=20, null=True, verbose_name='信号强度')),
  1109. ('iccid', models.CharField(blank=True, max_length=50, null=True, verbose_name='设备卡号')),
  1110. ('lng', models.CharField(blank=True, max_length=50, null=True, verbose_name='经度')),
  1111. ('lat', models.CharField(blank=True, max_length=50, null=True, verbose_name='纬度')),
  1112. ('led', models.CharField(blank=True, max_length=10, null=True, verbose_name='led点阵屏')),
  1113. ('ledinfo', models.CharField(blank=True, max_length=100, null=True, verbose_name='led屏幕内容')),
  1114. ('dver', models.CharField(blank=True, max_length=100, null=True, verbose_name='设备版本号')),
  1115. ('uptime', models.IntegerField(default=0)),
  1116. ],
  1117. options={
  1118. 'db_table': 'sa_qxz_base_info',
  1119. },
  1120. ),
  1121. migrations.CreateModel(
  1122. name='MongoQXZ_Conf',
  1123. fields=[
  1124. ('id', models.AutoField(primary_key=True, serialize=False)),
  1125. ('device_id', models.CharField(default='', max_length=50)),
  1126. ('e1', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道1')),
  1127. ('e2', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道2')),
  1128. ('e3', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道3')),
  1129. ('e4', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道4')),
  1130. ('e5', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道5')),
  1131. ('e6', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道6')),
  1132. ('e7', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道7')),
  1133. ('e8', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道8')),
  1134. ('e9', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道9')),
  1135. ('e10', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道10')),
  1136. ('e11', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道11')),
  1137. ('e12', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道12')),
  1138. ('e13', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道13')),
  1139. ('e14', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道14')),
  1140. ('e15', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道15')),
  1141. ('e16', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道16')),
  1142. ('e17', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道17')),
  1143. ('e18', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道18')),
  1144. ('e19', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道19')),
  1145. ('e20', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道20')),
  1146. ('e21', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道21')),
  1147. ('e22', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道22')),
  1148. ('e23', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道23')),
  1149. ('e24', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道24')),
  1150. ('e25', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道25')),
  1151. ('e26', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道26')),
  1152. ('e27', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道27')),
  1153. ('e28', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道28')),
  1154. ('e29', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道29')),
  1155. ('e30', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道30')),
  1156. ('uptime', models.IntegerField(default=0)),
  1157. ],
  1158. options={
  1159. 'db_table': 'sa_qxz_conf',
  1160. },
  1161. ),
  1162. migrations.CreateModel(
  1163. name='MongoQXZ_Control_History',
  1164. fields=[
  1165. ('id', models.AutoField(primary_key=True, serialize=False)),
  1166. ('topic', models.CharField(max_length=30, verbose_name='订阅主题')),
  1167. ('return_value', models.TextField(verbose_name='气象站设备反馈内容')),
  1168. ('return_time', models.IntegerField(default=0, verbose_name='上报时间')),
  1169. ],
  1170. options={
  1171. 'db_table': 'sa_qxz_control_history',
  1172. },
  1173. ),
  1174. migrations.CreateModel(
  1175. name='MongoQXZ_Default_Conf',
  1176. fields=[
  1177. ('id', models.AutoField(primary_key=True, serialize=False)),
  1178. ('device_id', models.CharField(default='', max_length=50)),
  1179. ('e1', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道1')),
  1180. ('e2', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道2')),
  1181. ('e3', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道3')),
  1182. ('e4', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道4')),
  1183. ('e5', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道5')),
  1184. ('e6', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道6')),
  1185. ('e7', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道7')),
  1186. ('e8', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道8')),
  1187. ('e9', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道9')),
  1188. ('e10', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道10')),
  1189. ('e11', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道11')),
  1190. ('e12', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道12')),
  1191. ('e13', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道13')),
  1192. ('e14', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道14')),
  1193. ('e15', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道15')),
  1194. ('e16', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道16')),
  1195. ('e17', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道17')),
  1196. ('e18', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道18')),
  1197. ('e19', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道19')),
  1198. ('e20', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道20')),
  1199. ('e21', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道21')),
  1200. ('e22', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道22')),
  1201. ('e23', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道23')),
  1202. ('e24', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道24')),
  1203. ('e25', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道25')),
  1204. ('e26', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道26')),
  1205. ('e27', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道27')),
  1206. ('e28', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道28')),
  1207. ('e29', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道29')),
  1208. ('e30', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道30')),
  1209. ('uptime', models.IntegerField(default=0)),
  1210. ],
  1211. options={
  1212. 'db_table': 'sa_qxz_default_conf',
  1213. },
  1214. ),
  1215. migrations.CreateModel(
  1216. name='MongoQXZ_Info_Record',
  1217. fields=[
  1218. ('id', models.AutoField(primary_key=True, serialize=False)),
  1219. ('device_id', models.CharField(default='', max_length=50)),
  1220. ('volt', models.CharField(blank=True, max_length=20, null=True, verbose_name='电压')),
  1221. ('rssi', models.CharField(blank=True, max_length=20, null=True, verbose_name='信号强度')),
  1222. ('uptime', models.IntegerField(default=0)),
  1223. ],
  1224. options={
  1225. 'db_table': 'sa_qxz_info_record',
  1226. },
  1227. ),
  1228. migrations.CreateModel(
  1229. name='MongoQXZ_Switch',
  1230. fields=[
  1231. ('id', models.AutoField(primary_key=True, serialize=False)),
  1232. ('device_id', models.CharField(default='', max_length=50)),
  1233. ('upl_time', models.IntegerField(default=0, verbose_name='上报时间')),
  1234. ('qxz_switch_data', models.TextField(blank=True, null=True, verbose_name='气象站开关名字')),
  1235. ],
  1236. options={
  1237. 'db_table': 'sa_qxz_switch',
  1238. },
  1239. ),
  1240. migrations.CreateModel(
  1241. name='MongoQXZ_Switch_Status',
  1242. fields=[
  1243. ('id', models.AutoField(primary_key=True, serialize=False)),
  1244. ('device_id', models.CharField(default='', max_length=50)),
  1245. ('upl_time', models.IntegerField(default=0, verbose_name='上报时间')),
  1246. ('qxz_switch', models.TextField(blank=True, null=True, verbose_name='气象站开关')),
  1247. ],
  1248. options={
  1249. 'db_table': 'sa_qxz_switch_status',
  1250. },
  1251. ),
  1252. migrations.CreateModel(
  1253. name='MongoQXZ_Timing_Switch',
  1254. fields=[
  1255. ('id', models.AutoField(primary_key=True, serialize=False)),
  1256. ('device_id', models.CharField(default='', max_length=50)),
  1257. ('upl_time', models.IntegerField(default=0, verbose_name='上报时间')),
  1258. ('qxz_timing', models.TextField(blank=True, null=True, verbose_name='气象站开关定时')),
  1259. ],
  1260. options={
  1261. 'db_table': 'sa_qxz_timing_switch',
  1262. },
  1263. ),
  1264. migrations.CreateModel(
  1265. name='MongoQXZdata_New',
  1266. fields=[
  1267. ('id', models.AutoField(primary_key=True, serialize=False)),
  1268. ('device_id', models.CharField(default='', max_length=50)),
  1269. ('uptime', models.IntegerField(default=0)),
  1270. ('e1', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道1')),
  1271. ('e2', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道2')),
  1272. ('e3', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道3')),
  1273. ('e4', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道4')),
  1274. ('e5', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道5')),
  1275. ('e6', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道6')),
  1276. ('e7', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道7')),
  1277. ('e8', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道8')),
  1278. ('e9', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道9')),
  1279. ('e10', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道10')),
  1280. ('e11', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道11')),
  1281. ('e12', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道12')),
  1282. ('e13', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道13')),
  1283. ('e14', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道14')),
  1284. ('e15', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道15')),
  1285. ('e16', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道16')),
  1286. ('e17', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道17')),
  1287. ('e18', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道18')),
  1288. ('e19', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道19')),
  1289. ('e20', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道20')),
  1290. ('e21', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道21')),
  1291. ('e22', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道22')),
  1292. ('e23', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道23')),
  1293. ('e24', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道24')),
  1294. ('e25', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道25')),
  1295. ('e26', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道26')),
  1296. ('e27', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道27')),
  1297. ('e28', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道28')),
  1298. ('e29', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道29')),
  1299. ('e30', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道30')),
  1300. ],
  1301. options={
  1302. 'db_table': 'sa_qxz_data',
  1303. },
  1304. ),
  1305. migrations.CreateModel(
  1306. name='MongoQXZstatus_New',
  1307. fields=[
  1308. ('id', models.AutoField(primary_key=True, serialize=False)),
  1309. ('device_id', models.CharField(default='', max_length=50)),
  1310. ('is_online', models.CharField(blank=True, max_length=5, null=True, verbose_name='在线状态')),
  1311. ('uptime', models.IntegerField(default=0)),
  1312. ('e1', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道1')),
  1313. ('e2', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道2')),
  1314. ('e3', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道3')),
  1315. ('e4', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道4')),
  1316. ('e5', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道5')),
  1317. ('e6', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道6')),
  1318. ('e7', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道7')),
  1319. ('e8', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道8')),
  1320. ('e9', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道9')),
  1321. ('e10', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道10')),
  1322. ('e11', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道11')),
  1323. ('e12', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道12')),
  1324. ('e13', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道13')),
  1325. ('e14', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道14')),
  1326. ('e15', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道15')),
  1327. ('e16', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道16')),
  1328. ('e17', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道17')),
  1329. ('e18', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道18')),
  1330. ('e19', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道19')),
  1331. ('e20', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道20')),
  1332. ('e21', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道21')),
  1333. ('e22', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道22')),
  1334. ('e23', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道23')),
  1335. ('e24', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道24')),
  1336. ('e25', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道25')),
  1337. ('e26', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道26')),
  1338. ('e27', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道27')),
  1339. ('e28', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道28')),
  1340. ('e29', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道29')),
  1341. ('e30', models.CharField(blank=True, max_length=30, null=True, verbose_name='通道30')),
  1342. ('interval', models.CharField(blank=True, max_length=30, null=True, verbose_name='设备数据上传时间间隔')),
  1343. ],
  1344. options={
  1345. 'db_table': 'sa_qxz_status',
  1346. },
  1347. ),
  1348. migrations.CreateModel(
  1349. name='MongoRole_Projection',
  1350. fields=[
  1351. ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
  1352. ('RTid', models.PositiveIntegerField(default=0, unique=True)),
  1353. ('role_company', models.CharField(blank=True, max_length=50, null=True, verbose_name='公司名称')),
  1354. ('projection_index_title', models.TextField(default='5G+智慧农业云平台', verbose_name='首页标题')),
  1355. ('projection_bzy_title', models.TextField(default='智能孢子监测系统', verbose_name='孢子仪标题')),
  1356. ('projection_fb_title', models.TextField(default='设备分布展示', verbose_name='设备分布标题')),
  1357. ('projection_zh_title', models.TextField(default='数字监测预警系统', verbose_name='设备综合标题')),
  1358. ('projection_cbd_title', models.TextField(default='虫情测报系统', verbose_name='测报灯标题')),
  1359. ('projection_qxz_title', models.TextField(default='气象监测系统', verbose_name='气象站标题')),
  1360. ('water_title', models.TextField(default='水肥一体控制系统展示大屏', verbose_name='水肥默认标题')),
  1361. ('elect_title', models.TextField(default='机井水电双控系统展示大屏', verbose_name='水电默认标题')),
  1362. ('wheat_scab', models.TextField(default='小麦赤霉病检测平台', verbose_name='小麦赤霉病默认标题')),
  1363. ('water_fertilizer_control', models.TextField(default='水肥一体控制系统(X)', verbose_name='水肥一体控制默认标题')),
  1364. ],
  1365. options={
  1366. 'verbose_name': '投屏主题',
  1367. 'verbose_name_plural': '投屏主题',
  1368. 'db_table': 'sa_role_projection',
  1369. },
  1370. ),
  1371. migrations.CreateModel(
  1372. name='MongoRole_Table',
  1373. fields=[
  1374. ('id', models.AutoField(primary_key=True, serialize=False)),
  1375. ('role_describe', models.CharField(blank=True, max_length=50, null=True, verbose_name='角色描述')),
  1376. ('role_cre_time', models.IntegerField(default=0)),
  1377. ('role_cre_user', models.CharField(blank=True, max_length=20, null=True, verbose_name='角色创建者')),
  1378. ('role_logo', models.CharField(default='/data/home_logo/log.jpg', max_length=200, verbose_name='首页logo')),
  1379. ('role_footer', models.TextField(default='Copyright©2007-2019 All Rrights Resvered\u3000版权所有:河南云飞科技发展有限公司', verbose_name='首页footer信息')),
  1380. ('role_header', models.TextField(default='智慧农业大数据平台', verbose_name='首页header信息')),
  1381. ('qr_show', models.BooleanField(default=True)),
  1382. ],
  1383. options={
  1384. 'verbose_name': '用户组列表',
  1385. 'verbose_name_plural': '用户组列表',
  1386. 'db_table': 'sa_role_table',
  1387. },
  1388. ),
  1389. migrations.CreateModel(
  1390. name='MongoSCDData',
  1391. fields=[
  1392. ('id', models.AutoField(primary_key=True, serialize=False)),
  1393. ('device_id', models.PositiveIntegerField(default=0, verbose_name='设备自增id')),
  1394. ('device_data', models.TextField(default='', verbose_name='具体历史状态数据')),
  1395. ('addtime', models.IntegerField(default=0)),
  1396. ('device_status', models.CharField(default=1, max_length=10, verbose_name='四情数据区分')),
  1397. ],
  1398. options={
  1399. 'db_table': 'sa_device_scd_data',
  1400. },
  1401. ),
  1402. migrations.CreateModel(
  1403. name='MongoSellInfo',
  1404. fields=[
  1405. ('id', models.AutoField(primary_key=True, serialize=False)),
  1406. ('sellname', models.CharField(blank=True, max_length=20, null=True, verbose_name='产品名称')),
  1407. ('backcode', models.CharField(default='', max_length=50, verbose_name='溯源码')),
  1408. ('selltime', models.CharField(blank=True, max_length=30, null=True, verbose_name='售卖时间')),
  1409. ('batch', models.CharField(blank=True, max_length=30, null=True, verbose_name='售卖批次')),
  1410. ('sellnum', models.CharField(blank=True, max_length=30, null=True, verbose_name='售卖数量')),
  1411. ('clientname', models.CharField(blank=True, max_length=30, null=True, verbose_name='客户名称')),
  1412. ('clienttel', models.CharField(blank=True, max_length=30, null=True, verbose_name='客户电话')),
  1413. ('user', models.CharField(blank=True, max_length=20, null=True, verbose_name='操作人')),
  1414. ('uptime', models.IntegerField(default=0, verbose_name='操作时间')),
  1415. ],
  1416. options={
  1417. 'db_table': 'sa_sell_info',
  1418. },
  1419. ),
  1420. migrations.CreateModel(
  1421. name='MongoSf_Control_Data',
  1422. fields=[
  1423. ('id', models.AutoField(primary_key=True, serialize=False)),
  1424. ('device_id', models.CharField(default='', max_length=50)),
  1425. ('user', models.CharField(default='', max_length=50)),
  1426. ('relayNum', models.CharField(blank=True, max_length=200, null=True, verbose_name='设备通道操作编号')),
  1427. ('relayState', models.CharField(blank=True, max_length=200, null=True, verbose_name='设备操作记录')),
  1428. ('uptime', models.IntegerField(default=0)),
  1429. ],
  1430. options={
  1431. 'db_table': 'sa_sf_control_data',
  1432. },
  1433. ),
  1434. migrations.CreateModel(
  1435. name='MongoSf_Data',
  1436. fields=[
  1437. ('id', models.AutoField(primary_key=True, serialize=False)),
  1438. ('device_id', models.CharField(default='', max_length=50)),
  1439. ('device_data', models.CharField(blank=True, max_length=200, null=True, verbose_name='设备历史数据')),
  1440. ('uptime', models.IntegerField(default=0)),
  1441. ],
  1442. options={
  1443. 'db_table': 'sa_sf_data',
  1444. },
  1445. ),
  1446. migrations.CreateModel(
  1447. name='MongoSf_Info',
  1448. fields=[
  1449. ('id', models.AutoField(primary_key=True, serialize=False)),
  1450. ('device_id', models.CharField(default='', max_length=50)),
  1451. ('device_name', models.CharField(default='', max_length=50)),
  1452. ('eleNum', models.CharField(blank=True, max_length=200, null=True, verbose_name='16路要素通道的索引')),
  1453. ('eleName', models.CharField(blank=True, max_length=200, null=True, verbose_name='16路要素通道的名称')),
  1454. ('relayNum', models.CharField(blank=True, max_length=200, null=True, verbose_name='32路继电器通道的索引')),
  1455. ('relayName', models.CharField(blank=True, max_length=200, null=True, verbose_name='32路继电器通道的名称')),
  1456. ('lng', models.CharField(blank=True, max_length=30, null=True, verbose_name='经度')),
  1457. ('lat', models.CharField(blank=True, max_length=30, null=True, verbose_name='纬度')),
  1458. ('uptime', models.IntegerField(default=0)),
  1459. ],
  1460. options={
  1461. 'db_table': 'sa_sf_info',
  1462. },
  1463. ),
  1464. migrations.CreateModel(
  1465. name='MongoSf_Status',
  1466. fields=[
  1467. ('id', models.AutoField(primary_key=True, serialize=False)),
  1468. ('device_id', models.CharField(default='', max_length=50)),
  1469. ('device_addr', models.CharField(blank=True, max_length=200, null=True, verbose_name='设备电磁阀定位')),
  1470. ('device_status', models.CharField(blank=True, max_length=200, null=True, verbose_name='当前设备状态')),
  1471. ('uptime', models.IntegerField(default=0)),
  1472. ],
  1473. options={
  1474. 'db_table': 'sa_sf_status',
  1475. },
  1476. ),
  1477. migrations.CreateModel(
  1478. name='MongoSimInfo',
  1479. fields=[
  1480. ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
  1481. ('iccid', models.CharField(max_length=30, unique=True, verbose_name='sim卡号')),
  1482. ('expiry_time', models.IntegerField(default=0, verbose_name='到期时间')),
  1483. ('sim_type', models.IntegerField(default=0, verbose_name='sim卡厂商')),
  1484. ('sim_data', models.TextField(default='', verbose_name='sim信息')),
  1485. ('create_time', models.DateTimeField(auto_now_add=True, verbose_name='创建时间')),
  1486. ('modify_time', models.DateTimeField(auto_now=True, verbose_name='修改时间')),
  1487. ],
  1488. options={
  1489. 'db_table': 'sa_sim_info',
  1490. },
  1491. ),
  1492. migrations.CreateModel(
  1493. name='MongoStockInfo',
  1494. fields=[
  1495. ('id', models.AutoField(primary_key=True, serialize=False)),
  1496. ('backcode', models.CharField(default='', max_length=50, verbose_name='溯源码')),
  1497. ('farm', models.CharField(default='', max_length=50, verbose_name='所属基地')),
  1498. ('land', models.CharField(default='', max_length=50, verbose_name='所属地块')),
  1499. ('suppliesname', models.CharField(default='', max_length=50, verbose_name='物料名称')),
  1500. ('suppliescode', models.CharField(default='', max_length=50, verbose_name='物料编号')),
  1501. ('typename', models.CharField(default='', max_length=50, verbose_name='品类')),
  1502. ('stockbatch', models.CharField(blank=True, max_length=20, null=True, verbose_name='库存')),
  1503. ('stocknum', models.CharField(blank=True, max_length=20, null=True, verbose_name='库存数量')),
  1504. ('firm', models.CharField(blank=True, max_length=20, null=True, verbose_name='生产企业')),
  1505. ('user', models.CharField(blank=True, max_length=20, null=True, verbose_name='操作人')),
  1506. ('uptime', models.IntegerField(default=0, verbose_name='操作时间')),
  1507. ],
  1508. options={
  1509. 'db_table': 'sa_stock_info',
  1510. },
  1511. ),
  1512. migrations.CreateModel(
  1513. name='MongoSYCBData',
  1514. fields=[
  1515. ('id', models.AutoField(primary_key=True, serialize=False)),
  1516. ('device_id', models.PositiveIntegerField(default=0, verbose_name='设备自增id')),
  1517. ('device_data', models.TextField(default='', verbose_name='具体历史状态数据')),
  1518. ('addtime', models.IntegerField(default=0)),
  1519. ],
  1520. options={
  1521. 'db_table': 'sa_device_sycb_data',
  1522. },
  1523. ),
  1524. migrations.CreateModel(
  1525. name='MongoTransportInfo',
  1526. fields=[
  1527. ('id', models.AutoField(primary_key=True, serialize=False)),
  1528. ('backcode', models.CharField(default='', max_length=50, verbose_name='溯源码')),
  1529. ('transname', models.CharField(blank=True, max_length=30, null=True, verbose_name='产品名称')),
  1530. ('stime', models.CharField(blank=True, max_length=30, null=True, verbose_name='发货时间')),
  1531. ('etime', models.CharField(blank=True, max_length=30, null=True, verbose_name='到货时间')),
  1532. ('saddr', models.CharField(blank=True, max_length=30, null=True, verbose_name='发货地点')),
  1533. ('province', models.CharField(blank=True, max_length=30, null=True, verbose_name='省-到货地点')),
  1534. ('city', models.CharField(blank=True, max_length=30, null=True, verbose_name='市-到货地点')),
  1535. ('area', models.CharField(blank=True, max_length=30, null=True, verbose_name='县-到货地点')),
  1536. ('eaddr', models.CharField(blank=True, max_length=30, null=True, verbose_name='到货地点')),
  1537. ('detailaddr', models.CharField(blank=True, max_length=100, null=True, verbose_name='详细到货地址')),
  1538. ('trans', models.CharField(blank=True, max_length=30, null=True, verbose_name='运输方法')),
  1539. ('batch', models.CharField(blank=True, max_length=30, null=True, verbose_name='批次名称')),
  1540. ('user', models.CharField(blank=True, max_length=20, null=True, verbose_name='操作人')),
  1541. ('uptime', models.IntegerField(default=0, verbose_name='操作时间')),
  1542. ],
  1543. options={
  1544. 'db_table': 'sa_transport_info',
  1545. },
  1546. ),
  1547. migrations.CreateModel(
  1548. name='MongoUserDeviceOrderModel',
  1549. fields=[
  1550. ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
  1551. ('uid', models.IntegerField(default=0, verbose_name='负责人uid')),
  1552. ('device_id', models.CharField(max_length=50, verbose_name='设备id')),
  1553. ('order', models.IntegerField(default=0, verbose_name='排序字段')),
  1554. ('create_time', models.DateTimeField(auto_now_add=True, verbose_name='创建时间')),
  1555. ],
  1556. options={
  1557. 'db_table': 'sa_user_device_order',
  1558. },
  1559. ),
  1560. migrations.CreateModel(
  1561. name='MongoUserEarlyWarningConfig',
  1562. fields=[
  1563. ('id', models.AutoField(primary_key=True, serialize=False)),
  1564. ('user_id', models.CharField(blank=True, default='', max_length=50, null=True, verbose_name='用户id')),
  1565. ('title', models.CharField(max_length=50, verbose_name='标题')),
  1566. ('create_time', models.IntegerField(default=0, verbose_name='创建时间')),
  1567. ('device_type_id', models.IntegerField(default=0, verbose_name='设备类型')),
  1568. ('status', models.IntegerField(default=1, verbose_name='状态')),
  1569. ],
  1570. options={
  1571. 'db_table': 'sa_device_user_early_warning_config',
  1572. },
  1573. ),
  1574. migrations.CreateModel(
  1575. name='MongoUserLoginLog',
  1576. fields=[
  1577. ('id', models.AutoField(primary_key=True, serialize=False)),
  1578. ('uid', models.PositiveIntegerField(default=0)),
  1579. ('ip', models.GenericIPAddressField(default='')),
  1580. ('addtime', models.PositiveIntegerField(default=0)),
  1581. ('device_type', models.PositiveIntegerField(default=0)),
  1582. ],
  1583. options={
  1584. 'db_table': 'sa_user_login_log',
  1585. },
  1586. ),
  1587. migrations.CreateModel(
  1588. name='MongoUserMenuPerGroupModel',
  1589. fields=[
  1590. ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
  1591. ('uid', models.IntegerField(unique=True, verbose_name='用户uid')),
  1592. ('menus', models.TextField(verbose_name='菜单id列表')),
  1593. ('group_ids', models.CharField(max_length=256, verbose_name='权限组id列表')),
  1594. ],
  1595. options={
  1596. 'db_table': 'sa_user_menu_per_group',
  1597. },
  1598. ),
  1599. migrations.CreateModel(
  1600. name='MongoUserPestWarningSMSConf',
  1601. fields=[
  1602. ('id', models.AutoField(primary_key=True, serialize=False)),
  1603. ('user_id', models.CharField(blank=True, default='', max_length=50, null=True, verbose_name='用户id')),
  1604. ('warning_id', models.CharField(blank=True, default='', max_length=50, null=True, verbose_name='预警设置id')),
  1605. ('device_ids', models.TextField(default='', verbose_name='多个设备号')),
  1606. ('warning_type', models.IntegerField(default=0, verbose_name='预警类型')),
  1607. ('conf', models.TextField(default=0, verbose_name='短信预警内容')),
  1608. ('send_user', models.TextField(default=0, verbose_name='多个发送用户')),
  1609. ('create_time', models.IntegerField(default=0, verbose_name='创建时间')),
  1610. ],
  1611. options={
  1612. 'db_table': 'sa_device_user_pest_warning_sms_conf',
  1613. },
  1614. ),
  1615. migrations.CreateModel(
  1616. name='MongoUserSaleDevice',
  1617. fields=[
  1618. ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
  1619. ('uid', models.PositiveIntegerField(verbose_name='用户UID')),
  1620. ('device_id', models.CharField(max_length=50, unique=True, verbose_name='设备本身id')),
  1621. ],
  1622. options={
  1623. 'db_table': 'sa_user_sale_device',
  1624. },
  1625. ),
  1626. migrations.CreateModel(
  1627. name='MongoUserUploadsPictures',
  1628. fields=[
  1629. ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
  1630. ('uid', models.PositiveIntegerField(default=0, verbose_name='用户ID')),
  1631. ('addr', models.CharField(default='', max_length=200, verbose_name='原图路径')),
  1632. ('indentify_photo', models.CharField(default='', max_length=200, verbose_name='识别图路径')),
  1633. ('indentify_result', models.CharField(default='', max_length=100)),
  1634. ('addtime', models.IntegerField(default=0, verbose_name='上传时间戳秒级')),
  1635. ('interface', models.CharField(default='', max_length=50)),
  1636. ],
  1637. options={
  1638. 'db_table': 'user_uploads_pictures',
  1639. },
  1640. ),
  1641. migrations.CreateModel(
  1642. name='MongoUserWarningLiaisons',
  1643. fields=[
  1644. ('id', models.AutoField(primary_key=True, serialize=False)),
  1645. ('user_id', models.CharField(blank=True, default='', max_length=50, null=True, verbose_name='用户id')),
  1646. ('liaisons', models.CharField(default='', max_length=50, verbose_name='联系人名称')),
  1647. ('phone', models.IntegerField(default=0, verbose_name='联系人电话')),
  1648. ('send_count', models.IntegerField(default=0, verbose_name='发送次数')),
  1649. ('create_time', models.IntegerField(default=0, verbose_name='创建时间')),
  1650. ],
  1651. options={
  1652. 'db_table': 'sa_device_user_warning_liaisons',
  1653. },
  1654. ),
  1655. migrations.CreateModel(
  1656. name='MongoVersion_Record',
  1657. fields=[
  1658. ('id', models.AutoField(primary_key=True, serialize=False)),
  1659. ('app_name', models.CharField(blank=True, max_length=50, verbose_name='app版本名称')),
  1660. ('app_num', models.CharField(blank=True, max_length=50, verbose_name='版本号')),
  1661. ('app_desc', models.CharField(blank=True, max_length=50, verbose_name='更新描述')),
  1662. ('addtime', models.IntegerField(default=0)),
  1663. ],
  1664. options={
  1665. 'db_table': 'sa_app_version_record',
  1666. 'ordering': ['-id'],
  1667. },
  1668. ),
  1669. migrations.CreateModel(
  1670. name='MongoWarm_Base_Info',
  1671. fields=[
  1672. ('id', models.AutoField(primary_key=True, serialize=False)),
  1673. ('device_id', models.CharField(default='', max_length=50)),
  1674. ('have_camera', models.CharField(blank=True, max_length=20, null=True, verbose_name='是否有监控')),
  1675. ('camera_addr', models.TextField(default='', verbose_name='播放地址')),
  1676. ('runmode', models.CharField(blank=True, max_length=20, null=True, verbose_name='设备运行状态')),
  1677. ('dev_list', models.TextField(blank=True, null=True, verbose_name='设备列表及名称')),
  1678. ('remark', models.TextField(blank=True, null=True, verbose_name='设备列表的新名称')),
  1679. ('uptime', models.IntegerField(default=0)),
  1680. ],
  1681. options={
  1682. 'db_table': 'sa_warm_base_info',
  1683. },
  1684. ),
  1685. migrations.CreateModel(
  1686. name='MongoWarm_Input_Status',
  1687. fields=[
  1688. ('id', models.AutoField(primary_key=True, serialize=False)),
  1689. ('device_id', models.CharField(default='', max_length=50)),
  1690. ('output', models.TextField(blank=True, null=True, verbose_name='控制IO输入点状态上报')),
  1691. ('remark', models.TextField(blank=True, null=True, verbose_name='控制IO输入点备注')),
  1692. ('uptime', models.IntegerField(default=0)),
  1693. ],
  1694. options={
  1695. 'db_table': 'sa_warm_input_status',
  1696. },
  1697. ),
  1698. migrations.CreateModel(
  1699. name='MongoWarm_Output_Status',
  1700. fields=[
  1701. ('id', models.AutoField(primary_key=True, serialize=False)),
  1702. ('device_id', models.CharField(default='', max_length=50)),
  1703. ('output', models.TextField(blank=True, null=True, verbose_name='控制IO输出点状态上报')),
  1704. ('remark', models.TextField(blank=True, null=True, verbose_name='控制IO输出点备注')),
  1705. ('uptime', models.IntegerField(default=0)),
  1706. ],
  1707. options={
  1708. 'db_table': 'sa_warm_output_status',
  1709. },
  1710. ),
  1711. migrations.CreateModel(
  1712. name='MongoWarm_Switch_Auto_His',
  1713. fields=[
  1714. ('id', models.AutoField(primary_key=True, serialize=False)),
  1715. ('device_id', models.CharField(default='', max_length=50)),
  1716. ('dev_name', models.CharField(blank=True, max_length=20, null=True, verbose_name='开关名称')),
  1717. ('ctl_mod', models.CharField(blank=True, max_length=20, null=True, verbose_name='控制模式')),
  1718. ('switch_list', models.TextField(blank=True, null=True, verbose_name='开关状态')),
  1719. ('remark', models.TextField(blank=True, null=True, verbose_name='开关状态备注')),
  1720. ('uptime', models.IntegerField(default=0)),
  1721. ],
  1722. options={
  1723. 'db_table': 'sa_warm_switch_auto_his',
  1724. },
  1725. ),
  1726. migrations.CreateModel(
  1727. name='MongoWarm_Switch_Data',
  1728. fields=[
  1729. ('id', models.AutoField(primary_key=True, serialize=False)),
  1730. ('device_id', models.CharField(default='', max_length=50)),
  1731. ('data', models.TextField(blank=True, null=True, verbose_name='开关状态')),
  1732. ('remark', models.TextField(blank=True, null=True, verbose_name='开关状态备注')),
  1733. ('uptime', models.IntegerField(default=0)),
  1734. ],
  1735. options={
  1736. 'db_table': 'sa_warm_switch_data',
  1737. },
  1738. ),
  1739. migrations.CreateModel(
  1740. name='MongoWarm_Switch_Status',
  1741. fields=[
  1742. ('id', models.AutoField(primary_key=True, serialize=False)),
  1743. ('device_id', models.CharField(default='', max_length=50)),
  1744. ('dev_name', models.CharField(default='', max_length=50, verbose_name='开关名称')),
  1745. ('status', models.TextField(blank=True, null=True, verbose_name='开关状态')),
  1746. ('remark', models.TextField(blank=True, null=True, verbose_name='开关状态备注')),
  1747. ('uptime', models.IntegerField(default=0)),
  1748. ],
  1749. options={
  1750. 'db_table': 'sa_warm_switch_status',
  1751. },
  1752. ),
  1753. migrations.CreateModel(
  1754. name='MongoWarm_Weather_Data',
  1755. fields=[
  1756. ('id', models.AutoField(primary_key=True, serialize=False)),
  1757. ('device_id', models.CharField(default='', max_length=50)),
  1758. ('data', models.TextField(blank=True, null=True, verbose_name='气象要素')),
  1759. ('uptime', models.IntegerField(default=0)),
  1760. ],
  1761. options={
  1762. 'db_table': 'sa_warm_weather_data',
  1763. },
  1764. ),
  1765. migrations.CreateModel(
  1766. name='MongoWarm_Weather_Status',
  1767. fields=[
  1768. ('id', models.AutoField(primary_key=True, serialize=False)),
  1769. ('device_id', models.CharField(default='', max_length=50)),
  1770. ('status', models.TextField(blank=True, null=True, verbose_name='气象要素')),
  1771. ('uptime', models.IntegerField(default=0)),
  1772. ],
  1773. options={
  1774. 'db_table': 'sa_warm_weather_status',
  1775. },
  1776. ),
  1777. migrations.CreateModel(
  1778. name='MongoWheatdata',
  1779. fields=[
  1780. ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
  1781. ('device_id', models.CharField(default='', max_length=50)),
  1782. ('province', models.CharField(blank=True, max_length=20, null=True, verbose_name='省')),
  1783. ('city', models.CharField(blank=True, max_length=20, null=True, verbose_name='市')),
  1784. ('county', models.CharField(blank=True, max_length=20, null=True, verbose_name='县')),
  1785. ('uptime', models.IntegerField(default=0, verbose_name='上传时间')),
  1786. ('data', models.TextField(blank=True, null=True, verbose_name='数据')),
  1787. ],
  1788. options={
  1789. 'db_table': 'sa_device_wheatdata',
  1790. },
  1791. ),
  1792. migrations.CreateModel(
  1793. name='MongoWheatIncidence',
  1794. fields=[
  1795. ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
  1796. ('device_id', models.CharField(default='', max_length=50)),
  1797. ('province', models.CharField(blank=True, max_length=20, null=True, verbose_name='省')),
  1798. ('city', models.CharField(blank=True, max_length=20, null=True, verbose_name='市')),
  1799. ('county', models.CharField(blank=True, max_length=20, null=True, verbose_name='县')),
  1800. ('uptime', models.IntegerField(default=0, verbose_name='上传时间')),
  1801. ('incidence', models.CharField(blank=True, max_length=200, null=True, verbose_name='发生率')),
  1802. ],
  1803. options={
  1804. 'db_table': 'sa_device_wheatincidence',
  1805. },
  1806. ),
  1807. migrations.CreateModel(
  1808. name='MongoWheatstatus',
  1809. fields=[
  1810. ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
  1811. ('device_id', models.CharField(default='', max_length=50)),
  1812. ('province', models.CharField(blank=True, max_length=20, null=True, verbose_name='省')),
  1813. ('city', models.CharField(blank=True, max_length=20, null=True, verbose_name='市')),
  1814. ('county', models.CharField(blank=True, max_length=20, null=True, verbose_name='县')),
  1815. ('uptime', models.IntegerField(default=0, verbose_name='上传时间')),
  1816. ('status', models.TextField(blank=True, max_length=500, null=True, verbose_name='状态')),
  1817. ],
  1818. options={
  1819. 'db_table': 'sa_device_wheatstatus',
  1820. },
  1821. ),
  1822. migrations.CreateModel(
  1823. name='MongoXCTData',
  1824. fields=[
  1825. ('id', models.AutoField(primary_key=True, serialize=False)),
  1826. ('device_id', models.PositiveIntegerField(default=0, verbose_name='设备自增id')),
  1827. ('device_data', models.TextField(default='', verbose_name='具体历史状态数据')),
  1828. ('addtime', models.IntegerField(default=0)),
  1829. ],
  1830. options={
  1831. 'db_table': 'sa_device_xct_data',
  1832. },
  1833. ),
  1834. migrations.CreateModel(
  1835. name='MongoXCTphoto',
  1836. fields=[
  1837. ('id', models.AutoField(primary_key=True, serialize=False)),
  1838. ('device_id', models.CharField(default='', max_length=50)),
  1839. ('addtime', models.IntegerField(default=0)),
  1840. ('uptime', models.IntegerField(default=0)),
  1841. ('addr', models.CharField(default=0, max_length=200, verbose_name='照片路径')),
  1842. ('at', models.CharField(default=0, max_length=50, verbose_name='环境温度')),
  1843. ('ah', models.CharField(default=0, max_length=50, verbose_name='环境湿度')),
  1844. ('describe', models.CharField(default=0, max_length=50, verbose_name='描述')),
  1845. ('indentify_photo', models.CharField(default=0, max_length=200, verbose_name='识别照片路径')),
  1846. ('indentify_result', models.CharField(default=0, max_length=100)),
  1847. ('photo_status', models.PositiveIntegerField(default=1)),
  1848. ('is_mark', models.PositiveIntegerField(default=0)),
  1849. ('mark', models.TextField(default='[]')),
  1850. ('label', models.TextField(blank=True)),
  1851. ],
  1852. options={
  1853. 'db_table': 'sa_device_xct_photo',
  1854. },
  1855. ),
  1856. migrations.CreateModel(
  1857. name='MongoXYCBData',
  1858. fields=[
  1859. ('id', models.AutoField(primary_key=True, serialize=False)),
  1860. ('device_id', models.PositiveIntegerField(default=0, verbose_name='设备自增id')),
  1861. ('device_data', models.TextField(default='', verbose_name='具体历史状态数据')),
  1862. ('addtime', models.IntegerField(default=0)),
  1863. ],
  1864. options={
  1865. 'db_table': 'sa_device_xycb_data',
  1866. },
  1867. ),
  1868. migrations.CreateModel(
  1869. name='MongoXYThreeData',
  1870. fields=[
  1871. ('id', models.AutoField(primary_key=True, serialize=False)),
  1872. ('device_id', models.PositiveIntegerField(default=0, verbose_name='设备自增id')),
  1873. ('device_data', models.TextField(default='', verbose_name='具体历史状态数据')),
  1874. ('addtime', models.IntegerField(default=0)),
  1875. ],
  1876. options={
  1877. 'db_table': 'sa_device_xy_three_data',
  1878. },
  1879. ),
  1880. migrations.CreateModel(
  1881. name='MongoXYThreephoto',
  1882. fields=[
  1883. ('id', models.AutoField(primary_key=True, serialize=False)),
  1884. ('device_id', models.CharField(default='', max_length=50)),
  1885. ('addtime', models.IntegerField(default=0)),
  1886. ('uptime', models.IntegerField(default=0)),
  1887. ('addr', models.CharField(default=0, max_length=200, verbose_name='照片路径')),
  1888. ('at', models.CharField(default=0, max_length=50, verbose_name='环境温度')),
  1889. ('ah', models.CharField(default=0, max_length=50, verbose_name='环境湿度')),
  1890. ('describe', models.CharField(default=0, max_length=50, verbose_name='描述')),
  1891. ('indentify_photo', models.CharField(default=0, max_length=200, verbose_name='识别照片路径')),
  1892. ('indentify_result', models.CharField(default=0, max_length=100)),
  1893. ('photo_status', models.PositiveIntegerField(default=1)),
  1894. ('is_mark', models.PositiveIntegerField(default=0)),
  1895. ('mark', models.TextField(default='[]')),
  1896. ],
  1897. options={
  1898. 'db_table': 'sa_device_xy_three_photo',
  1899. },
  1900. ),
  1901. migrations.CreateModel(
  1902. name='Purview',
  1903. fields=[
  1904. ('id', models.AutoField(primary_key=True, serialize=False)),
  1905. ('parent_perm_id', models.PositiveIntegerField(default=0, verbose_name='父级权限')),
  1906. ('purview_name', models.CharField(default='', max_length=100, verbose_name='权限名称')),
  1907. ('path', models.CharField(default='', max_length=100, verbose_name='接口标识')),
  1908. ('menu', models.CharField(default='', max_length=100, verbose_name='菜单标识')),
  1909. ('addtime', models.PositiveIntegerField(default=0)),
  1910. ('uptime', models.PositiveIntegerField(default=0)),
  1911. ('url', models.TextField(default=0, verbose_name='页面路由')),
  1912. ('enable', models.BooleanField(default=True, verbose_name='是否启用')),
  1913. ('priority', models.IntegerField(default=0, verbose_name='排序优先级,整数0最小')),
  1914. ],
  1915. options={
  1916. 'db_table': 'sa_purview',
  1917. },
  1918. ),
  1919. migrations.CreateModel(
  1920. name='Role',
  1921. fields=[
  1922. ('id', models.AutoField(primary_key=True, serialize=False)),
  1923. ('role_name', models.CharField(default='', max_length=100, verbose_name='角色名称')),
  1924. ('role_message', models.TextField(default='', verbose_name='角色描述')),
  1925. ('role_perm', models.TextField(default='', verbose_name='角色拥有的权限')),
  1926. ('role_status', models.PositiveIntegerField(default=1)),
  1927. ('addtime', models.PositiveIntegerField(default=0)),
  1928. ('uptime', models.PositiveIntegerField(default=0)),
  1929. ('add_by', models.PositiveIntegerField(blank=True, default=None, null=True, verbose_name='创建人')),
  1930. ],
  1931. options={
  1932. 'db_table': 'sa_role',
  1933. },
  1934. ),
  1935. migrations.CreateModel(
  1936. name='UserPurview',
  1937. fields=[
  1938. ('id', models.AutoField(primary_key=True, serialize=False)),
  1939. ('parent_perm_id', models.PositiveIntegerField(default=0, verbose_name='父级权限')),
  1940. ('purview_name', models.CharField(default='', max_length=100, verbose_name='权限名称')),
  1941. ('path', models.CharField(default='', max_length=100, verbose_name='接口标识')),
  1942. ('menu', models.CharField(default='', max_length=100, verbose_name='菜单标识')),
  1943. ('addtime', models.PositiveIntegerField(default=0)),
  1944. ('uptime', models.PositiveIntegerField(default=0)),
  1945. ('url', models.TextField(default=0, verbose_name='页面路由')),
  1946. ],
  1947. options={
  1948. 'db_table': 'sa_user_purview',
  1949. },
  1950. ),
  1951. migrations.AlterUniqueTogether(
  1952. name='mongootherusertypemodel',
  1953. unique_together={('other_name', 'other_type')},
  1954. ),
  1955. migrations.AlterUniqueTogether(
  1956. name='mongomenupergroupmodel',
  1957. unique_together={('name', 'uid')},
  1958. ),
  1959. migrations.AlterUniqueTogether(
  1960. name='mongodeviceconfig',
  1961. unique_together={('d_id', 'cmd')},
  1962. ),
  1963. ]