0001_initial.py 23 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384
  1. # Generated by Django 5.0.2 on 2024-08-14 07:43
  2. import datetime
  3. import django.utils.timezone
  4. from django.db import migrations, models
  5. class Migration(migrations.Migration):
  6. initial = True
  7. dependencies = [
  8. ]
  9. operations = [
  10. migrations.CreateModel(
  11. name='Admin',
  12. fields=[
  13. ('id', models.AutoField(primary_key=True, serialize=False)),
  14. ('username', models.CharField(max_length=60, unique=True, verbose_name='登录用户名')),
  15. ('password', models.CharField(max_length=255, verbose_name='登录密码')),
  16. ('mobile', models.CharField(max_length=20, verbose_name='手机号码')),
  17. ('email', models.CharField(max_length=60, verbose_name='邮件地址')),
  18. ('real_name', models.CharField(default='', max_length=255, verbose_name='真实姓名')),
  19. ('token', models.CharField(default='', max_length=120, verbose_name='登录授权码')),
  20. ('role_id', models.IntegerField(default=0, verbose_name='所属角色')),
  21. ('create_time', models.DateTimeField(default=datetime.datetime(2024, 8, 14, 15, 43, 16, 372756), verbose_name='创建日期')),
  22. ('last_login_time', models.DateTimeField(default=datetime.datetime(2024, 8, 14, 15, 43, 16, 372756), verbose_name='最后登录时间')),
  23. ('status', models.SmallIntegerField(choices=[(5, '使用中'), (6, '已停用'), (4, '已删除')], verbose_name='状态')),
  24. ('header', models.CharField(default='', max_length=255, verbose_name='头像')),
  25. ('code', models.CharField(default='', max_length=255, verbose_name='工号')),
  26. ('job', models.CharField(default='', max_length=255, verbose_name='职位')),
  27. ('contact', models.CharField(default='', max_length=255, verbose_name='联系方式')),
  28. ],
  29. options={
  30. 'verbose_name': '管理员信息',
  31. 'verbose_name_plural': '管理员信息',
  32. 'db_table': 'dc_admin',
  33. },
  34. ),
  35. migrations.CreateModel(
  36. name='AdminRole',
  37. fields=[
  38. ('id', models.AutoField(primary_key=True, serialize=False)),
  39. ('name', models.CharField(max_length=60, unique=True, verbose_name='角色名称')),
  40. ('intro', models.CharField(max_length=255, verbose_name='角色介绍')),
  41. ('is_admin', models.SmallIntegerField(default=2, verbose_name='超管标识')),
  42. ('create_time', models.DateTimeField(default=datetime.datetime(2024, 8, 14, 15, 43, 16, 373756), verbose_name='创建日期')),
  43. ('status', models.SmallIntegerField(choices=[(5, '使用中'), (6, '已停用'), (4, '已删除')], verbose_name='状态')),
  44. ],
  45. options={
  46. 'verbose_name': '管理员角色',
  47. 'verbose_name_plural': '管理员角色信息',
  48. 'db_table': 'dc_admin_role',
  49. },
  50. ),
  51. migrations.CreateModel(
  52. name='Brand',
  53. fields=[
  54. ('id', models.AutoField(primary_key=True, serialize=False)),
  55. ('name', models.CharField(max_length=255, unique=True, verbose_name='品牌名称')),
  56. ('intro', models.TextField(verbose_name='品牌介绍')),
  57. ('create_time', models.DateTimeField(default=datetime.datetime(2024, 8, 14, 15, 43, 16, 375757), verbose_name='创建日期')),
  58. ('status', models.SmallIntegerField(choices=[(5, '使用中'), (6, '已停用'), (4, '已删除')], verbose_name='状态')),
  59. ],
  60. options={
  61. 'verbose_name': '品牌信息',
  62. 'verbose_name_plural': '品牌信息',
  63. 'db_table': 'dc_brand',
  64. },
  65. ),
  66. migrations.CreateModel(
  67. name='Customer',
  68. fields=[
  69. ('id', models.AutoField(primary_key=True, serialize=False)),
  70. ('code', models.CharField(max_length=60, unique=True, verbose_name='客户编码')),
  71. ('name', models.CharField(max_length=255, unique=True, verbose_name='客户名称')),
  72. ('en_name', models.CharField(max_length=255, verbose_name='英文名称')),
  73. ('mobile', models.CharField(max_length=255, verbose_name='手机号码')),
  74. ('contact', models.CharField(max_length=60, verbose_name='联系人')),
  75. ('address', models.CharField(max_length=255, verbose_name='联系地址')),
  76. ('other', models.CharField(max_length=255, verbose_name='其它信息')),
  77. ('create_time', models.DateTimeField(default=datetime.datetime(2024, 8, 14, 15, 43, 16, 373756), verbose_name='创建日期')),
  78. ('status', models.SmallIntegerField(choices=[(5, '使用中'), (6, '已停用'), (4, '已删除')], verbose_name='状态')),
  79. ],
  80. options={
  81. 'verbose_name': '客户信息',
  82. 'verbose_name_plural': '客户信息',
  83. 'db_table': 'dc_customer',
  84. },
  85. ),
  86. migrations.CreateModel(
  87. name='Document',
  88. fields=[
  89. ('id', models.AutoField(primary_key=True, serialize=False)),
  90. ('title', models.CharField(max_length=255, verbose_name='文档标题')),
  91. ('data', models.TextField(verbose_name='文档内容')),
  92. ('user_id', models.IntegerField(default=0, verbose_name='用户id')),
  93. ('create_time', models.DateTimeField(default=datetime.datetime(2024, 8, 14, 15, 43, 16, 375757), verbose_name='创建日期')),
  94. ('update_time', models.DateTimeField(default=datetime.datetime(2024, 8, 14, 15, 43, 16, 375757), verbose_name='更新时间')),
  95. ('status', models.SmallIntegerField(choices=[(5, '使用中'), (6, '已停用'), (4, '已删除')], verbose_name='状态')),
  96. ('category_id', models.IntegerField(default=0, verbose_name='所属文档分类')),
  97. ],
  98. options={
  99. 'verbose_name': '文档',
  100. 'verbose_name_plural': '文档',
  101. 'db_table': 'dc_document',
  102. },
  103. ),
  104. migrations.CreateModel(
  105. name='DocumentCategory',
  106. fields=[
  107. ('id', models.AutoField(primary_key=True, serialize=False)),
  108. ('name', models.CharField(max_length=255, unique=True, verbose_name='文档分类名称')),
  109. ('intro', models.TextField(verbose_name='文档分类介绍')),
  110. ('create_time', models.DateTimeField(default=datetime.datetime(2024, 8, 14, 15, 43, 16, 375757), verbose_name='创建日期')),
  111. ('status', models.SmallIntegerField(choices=[(5, '使用中'), (6, '已停用'), (4, '已删除')], verbose_name='状态')),
  112. ],
  113. options={
  114. 'verbose_name': '文档分类',
  115. 'verbose_name_plural': '文档分类',
  116. 'db_table': 'dc_document_category',
  117. },
  118. ),
  119. migrations.CreateModel(
  120. name='Formula',
  121. fields=[
  122. ('id', models.AutoField(primary_key=True, serialize=False)),
  123. ('name', models.CharField(max_length=255, unique=True, verbose_name='公式名称')),
  124. ('formula', models.TextField(max_length=255, verbose_name='公式内容')),
  125. ('intro', models.CharField(max_length=255, verbose_name='公式介绍')),
  126. ('params', models.CharField(max_length=255, verbose_name='公式参数')),
  127. ('create_time', models.DateTimeField(default=datetime.datetime(2024, 8, 14, 15, 43, 16, 378267), verbose_name='创建日期')),
  128. ('use_status', models.SmallIntegerField(choices=[(5, '已用中'), (6, '未使用')], default=5, verbose_name='用户状态')),
  129. ('status', models.SmallIntegerField(choices=[(5, '使用中'), (6, '已停用'), (4, '已删除')], default=5, verbose_name='状态')),
  130. ],
  131. options={
  132. 'verbose_name': '公式管理',
  133. 'verbose_name_plural': '公式管理',
  134. 'db_table': 'dc_formula',
  135. },
  136. ),
  137. migrations.CreateModel(
  138. name='Image',
  139. fields=[
  140. ('id', models.AutoField(primary_key=True, serialize=False)),
  141. ('category_id', models.IntegerField(verbose_name='图片分类')),
  142. ('name', models.CharField(max_length=255, unique=True, verbose_name='图片信息')),
  143. ('width', models.CharField(max_length=60, verbose_name='图片宽度')),
  144. ('height', models.CharField(max_length=255, verbose_name='图片高度')),
  145. ('path', models.CharField(max_length=255, verbose_name='图片路径')),
  146. ('create_time', models.DateTimeField(default=datetime.datetime(2024, 8, 14, 15, 43, 16, 377257), verbose_name='创建日期')),
  147. ('status', models.SmallIntegerField(choices=[(5, '使用中'), (6, '已停用'), (4, '已删除')], verbose_name='状态')),
  148. ],
  149. options={
  150. 'verbose_name': '图片信息',
  151. 'verbose_name_plural': '图片信息',
  152. 'db_table': 'dc_image',
  153. },
  154. ),
  155. migrations.CreateModel(
  156. name='ImageCategory',
  157. fields=[
  158. ('id', models.AutoField(primary_key=True, serialize=False)),
  159. ('name', models.CharField(max_length=255, unique=True, verbose_name='图片分类名称')),
  160. ('intro', models.TextField(verbose_name='图片分类介绍')),
  161. ('create_time', models.DateTimeField(default=datetime.datetime(2024, 8, 14, 15, 43, 16, 377257), verbose_name='创建日期')),
  162. ('status', models.SmallIntegerField(choices=[(5, '使用中'), (6, '已停用'), (4, '已删除')], verbose_name='状态')),
  163. ],
  164. options={
  165. 'verbose_name': '图片分类',
  166. 'verbose_name_plural': '图片分类',
  167. 'db_table': 'dc_image_category',
  168. },
  169. ),
  170. migrations.CreateModel(
  171. name='Params',
  172. fields=[
  173. ('id', models.AutoField(primary_key=True, serialize=False)),
  174. ('code', models.CharField(max_length=255, unique=True, verbose_name='参数代码')),
  175. ('name', models.CharField(max_length=255, unique=True, verbose_name='参数名称')),
  176. ('value', models.CharField(blank=True, max_length=255, null=True, verbose_name='参数值')),
  177. ('value_type', models.SmallIntegerField(choices=[(1, '文本'), (2, '选择')], default=1, verbose_name='变量类型')),
  178. ('value_item', models.CharField(blank=True, max_length=255, null=True, verbose_name='取值范围')),
  179. ('intro', models.CharField(max_length=255, verbose_name='参数介绍')),
  180. ('create_time', models.DateTimeField(default=datetime.datetime(2024, 8, 14, 15, 43, 16, 378267), verbose_name='创建日期')),
  181. ('type', models.SmallIntegerField(choices=[(1, '变量'), (2, '常量')], default=1, verbose_name='状态')),
  182. ('status', models.SmallIntegerField(choices=[(5, '使用中'), (6, '已停用'), (4, '已删除')], verbose_name='状态')),
  183. ],
  184. options={
  185. 'verbose_name': '参数配置',
  186. 'verbose_name_plural': '参数配置',
  187. 'db_table': 'dc_params',
  188. },
  189. ),
  190. migrations.CreateModel(
  191. name='Product',
  192. fields=[
  193. ('id', models.AutoField(primary_key=True, serialize=False)),
  194. ('category_id', models.IntegerField(verbose_name='分类信息')),
  195. ('brand_id', models.IntegerField(verbose_name='所属品牌')),
  196. ('supplier_id', models.IntegerField(verbose_name='所属供应商')),
  197. ('name', models.CharField(max_length=255, verbose_name='产品名称')),
  198. ('intro', models.CharField(max_length=255, verbose_name='产品介绍')),
  199. ('price', models.CharField(max_length=255, verbose_name='价格')),
  200. ('product_area', models.CharField(max_length=255, verbose_name='产地')),
  201. ('is_safe', models.CharField(max_length=255, verbose_name='是否质保')),
  202. ('safe_time', models.CharField(default='', max_length=255, verbose_name='质保期限')),
  203. ('is_package', models.CharField(max_length=255, verbose_name='是否为套餐商品')),
  204. ('package_intro', models.CharField(default='', max_length=255, verbose_name='套餐说明')),
  205. ('qualifications', models.CharField(max_length=255, verbose_name='产品资质')),
  206. ('create_time', models.DateTimeField(default=datetime.datetime(2024, 8, 14, 15, 43, 16, 378267), verbose_name='创建日期')),
  207. ('status', models.SmallIntegerField(choices=[(5, '使用中'), (6, '已停用'), (4, '已删除')], default=5, verbose_name='状态')),
  208. ('attrs', models.TextField(default='', verbose_name='产品资质')),
  209. ],
  210. options={
  211. 'verbose_name': '产品信息',
  212. 'verbose_name_plural': '产品信息',
  213. 'db_table': 'dc_product',
  214. },
  215. ),
  216. migrations.CreateModel(
  217. name='ProductCategory',
  218. fields=[
  219. ('id', models.AutoField(primary_key=True, serialize=False)),
  220. ('parent_id', models.IntegerField(verbose_name='所属父级')),
  221. ('name', models.CharField(max_length=255, unique=True, verbose_name='分类名称')),
  222. ('attrs', models.TextField(verbose_name='属性配置')),
  223. ('create_time', models.DateTimeField(default=datetime.datetime(2024, 8, 14, 15, 43, 16, 378267), verbose_name='创建日期')),
  224. ('status', models.SmallIntegerField(choices=[(5, '使用中'), (6, '已停用'), (4, '已删除')], verbose_name='状态')),
  225. ],
  226. options={
  227. 'verbose_name': '产品分类',
  228. 'verbose_name_plural': '产品分类',
  229. 'db_table': 'dc_product_category',
  230. },
  231. ),
  232. migrations.CreateModel(
  233. name='ProductDocument',
  234. fields=[
  235. ('id', models.AutoField(primary_key=True, serialize=False)),
  236. ('product_id', models.IntegerField(verbose_name='相关产品')),
  237. ('document_id', models.IntegerField(verbose_name='文档id')),
  238. ('create_time', models.DateTimeField(default=django.utils.timezone.now, verbose_name='创建日期')),
  239. ('status', models.SmallIntegerField(choices=[(5, '使用中'), (6, '已停用'), (4, '已删除')], verbose_name='状态')),
  240. ],
  241. options={
  242. 'verbose_name': '产品相关文档',
  243. 'verbose_name_plural': '产品相关文档',
  244. 'db_table': 'dc_product_document',
  245. },
  246. ),
  247. migrations.CreateModel(
  248. name='Project',
  249. fields=[
  250. ('id', models.AutoField(primary_key=True, serialize=False)),
  251. ('name', models.CharField(max_length=255, unique=True, verbose_name='客户名称')),
  252. ('intro', models.TextField(verbose_name='客户编码')),
  253. ('customer_id', models.IntegerField(verbose_name='客户id')),
  254. ('category_id', models.IntegerField(verbose_name='所属分类id')),
  255. ('create_time', models.DateTimeField(default=datetime.datetime(2024, 8, 14, 15, 43, 16, 375757), verbose_name='创建日期')),
  256. ('status', models.SmallIntegerField(choices=[(5, '使用中'), (6, '已停用'), (4, '已删除')], verbose_name='状态')),
  257. ],
  258. options={
  259. 'verbose_name': '项目信息',
  260. 'verbose_name_plural': '项目信息',
  261. 'db_table': 'dc_project',
  262. },
  263. ),
  264. migrations.CreateModel(
  265. name='ProjectCategory',
  266. fields=[
  267. ('id', models.AutoField(primary_key=True, serialize=False)),
  268. ('code', models.CharField(max_length=60, verbose_name='客户编码')),
  269. ('name', models.CharField(max_length=255, verbose_name='客户名称')),
  270. ('create_time', models.DateTimeField(default=datetime.datetime(2024, 8, 14, 15, 43, 16, 373756), verbose_name='创建日期')),
  271. ('status', models.SmallIntegerField(choices=[(5, '使用中'), (6, '已停用'), (4, '已删除')], verbose_name='状态')),
  272. ],
  273. options={
  274. 'verbose_name': '项目分类',
  275. 'verbose_name_plural': '项目分类',
  276. 'db_table': 'dc_project_category',
  277. },
  278. ),
  279. migrations.CreateModel(
  280. name='ProjectDocument',
  281. fields=[
  282. ('id', models.AutoField(primary_key=True, serialize=False)),
  283. ('project_id', models.IntegerField(verbose_name='项目id')),
  284. ('doc_id', models.IntegerField(verbose_name='文档id')),
  285. ('create_time', models.DateTimeField(default=datetime.datetime(2024, 8, 14, 15, 43, 16, 375757), verbose_name='创建日期')),
  286. ('status', models.SmallIntegerField(choices=[(5, '使用中'), (6, '已停用'), (4, '已删除')], verbose_name='状态')),
  287. ],
  288. options={
  289. 'verbose_name': '项目相关文档',
  290. 'verbose_name_plural': '项目相关文档',
  291. 'db_table': 'dc_project_document',
  292. },
  293. ),
  294. migrations.CreateModel(
  295. name='SourceCategory',
  296. fields=[
  297. ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
  298. ('name', models.CharField(max_length=100, verbose_name='分类名称')),
  299. ('status', models.CharField(choices=[('active', '启用'), ('inactive', '禁用')], default='active', max_length=20, verbose_name='分类状态')),
  300. ('created_at', models.DateTimeField(auto_now_add=True, verbose_name='创建时间')),
  301. ],
  302. options={
  303. 'verbose_name': '原始数据分类',
  304. 'verbose_name_plural': '原始数据分类',
  305. 'db_table': 'dc_source_data_category',
  306. },
  307. ),
  308. migrations.CreateModel(
  309. name='SourceData',
  310. fields=[
  311. ('id', models.AutoField(primary_key=True, serialize=False)),
  312. ('code', models.CharField(max_length=60, unique=True, verbose_name='数据代码')),
  313. ('name', models.TextField(verbose_name='数据名称')),
  314. ('file_name', models.TextField(default='', verbose_name='文件名称')),
  315. ('source_data', models.TextField(default='', verbose_name='文件内容')),
  316. ('create_time', models.DateTimeField(default=django.utils.timezone.now, verbose_name='创建日期')),
  317. ('status', models.SmallIntegerField(choices=[(5, '使用中'), (6, '已停用'), (4, '已删除')], verbose_name='状态')),
  318. ],
  319. options={
  320. 'verbose_name': '原始数据',
  321. 'verbose_name_plural': '原始数据',
  322. 'db_table': 'dc_source_data',
  323. },
  324. ),
  325. migrations.CreateModel(
  326. name='Supplier',
  327. fields=[
  328. ('id', models.AutoField(primary_key=True, serialize=False)),
  329. ('code', models.CharField(max_length=255, unique=True, verbose_name='供应商编码')),
  330. ('name', models.CharField(max_length=255, verbose_name='供应商名称')),
  331. ('intro', models.TextField(verbose_name='供应商介绍')),
  332. ('create_time', models.DateTimeField(default=datetime.datetime(2024, 8, 14, 15, 43, 16, 377257), verbose_name='创建日期')),
  333. ('status', models.SmallIntegerField(choices=[(5, '使用中'), (6, '已停用'), (4, '已删除')], verbose_name='状态')),
  334. ],
  335. options={
  336. 'verbose_name': '供应商信息',
  337. 'verbose_name_plural': '供应商信息',
  338. 'db_table': 'dc_supplier',
  339. },
  340. ),
  341. migrations.CreateModel(
  342. name='Template',
  343. fields=[
  344. ('id', models.AutoField(primary_key=True, serialize=False)),
  345. ('code', models.CharField(max_length=255, unique=True, verbose_name='模板编码')),
  346. ('name', models.CharField(max_length=255, verbose_name='模板分类名称')),
  347. ('intro', models.TextField(default='', verbose_name='介绍')),
  348. ('lay_id', models.CharField(default='', max_length=100, verbose_name='图层id')),
  349. ('type', models.CharField(default='', max_length=100, verbose_name='类型')),
  350. ('content', models.TextField(default='', verbose_name='模板内容')),
  351. ('attrs', models.TextField(default='[]', verbose_name='属性')),
  352. ('category_id', models.IntegerField(verbose_name='所属分类')),
  353. ('admin_id', models.IntegerField(default=0, verbose_name='管理员id')),
  354. ('create_time', models.DateTimeField(default=datetime.datetime(2024, 8, 14, 15, 43, 16, 377257), verbose_name='创建日期')),
  355. ('status', models.SmallIntegerField(choices=[(5, '使用中'), (6, '已停用'), (4, '已删除')], verbose_name='状态')),
  356. ],
  357. options={
  358. 'verbose_name': '模板信息',
  359. 'verbose_name_plural': '模板信息',
  360. 'db_table': 'dc_template',
  361. },
  362. ),
  363. migrations.CreateModel(
  364. name='TemplateCategory',
  365. fields=[
  366. ('id', models.AutoField(primary_key=True, serialize=False)),
  367. ('name', models.CharField(max_length=255, unique=True, verbose_name='文档分类名称')),
  368. ('intro', models.TextField(verbose_name='文档分类介绍')),
  369. ('create_time', models.DateTimeField(default=datetime.datetime(2024, 8, 14, 15, 43, 16, 377257), verbose_name='创建日期')),
  370. ('status', models.SmallIntegerField(choices=[(5, '使用中'), (6, '已停用'), (4, '已删除')], verbose_name='状态')),
  371. ],
  372. options={
  373. 'verbose_name': '模板分类',
  374. 'verbose_name_plural': '模板分类',
  375. 'db_table': 'dc_template_category',
  376. },
  377. ),
  378. ]