进行了 GVSDSDK 迁移,可能存在诸多问题

This commit is contained in:
2026-06-17 20:37:47 +08:00
parent 72770ad73b
commit d00f0d08e5
132 changed files with 161593 additions and 4827 deletions

View File

@@ -1,149 +1,208 @@
# Generated by Django 5.2.10 on 2026-01-14 19:59
from django.db import migrations, models
class Migration(migrations.Migration):
initial = True
dependencies = [
]
operations = [
migrations.CreateModel(
name='Huiyuan',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('huiyuan_id', models.CharField(max_length=6, unique=True, verbose_name='会员ID')),
('jieshao', models.CharField(max_length=30, verbose_name='会员介绍')),
('jtjieshao', models.TextField(blank=True, null=True, verbose_name='会员规则介绍')),
('jiage', models.DecimalField(decimal_places=2, default=0.0, max_digits=10, verbose_name='会员价格')),
('guanshifc', models.DecimalField(decimal_places=2, default=0.0, max_digits=10, verbose_name='管事分成')),
('goumai_cishu', models.PositiveIntegerField(default=0, verbose_name='购买次数')),
('create_time', models.DateTimeField(auto_now_add=True, verbose_name='创建时间')),
('update_time', models.DateTimeField(auto_now=True, verbose_name='更新时间')),
],
options={
'verbose_name': '会员',
'verbose_name_plural': '会员',
'db_table': 'huiyuan',
},
),
migrations.CreateModel(
name='Huiyuangoumai',
fields=[
('id', models.AutoField(primary_key=True, serialize=False, verbose_name='购买记录ID')),
('huiyuan_id', models.CharField(db_index=True, max_length=6, verbose_name='会员ID')),
('yonghu_id', models.CharField(db_index=True, max_length=32, verbose_name='用户ID')),
('huiyuan_zhuangtai', models.PositiveIntegerField(default=1, verbose_name='会员状态')),
('jieshao', models.CharField(max_length=30, null=True, verbose_name='会员介绍')),
('daoqi_time', models.DateTimeField(verbose_name='会员到期时间')),
('create_time', models.DateTimeField(auto_now_add=True, verbose_name='创建时间')),
('update_time', models.DateTimeField(auto_now=True, verbose_name='更新时间')),
],
options={
'verbose_name': '用户购买会员',
'verbose_name_plural': '用户购买会员',
'db_table': 'huiyuangoumai',
},
),
migrations.CreateModel(
name='Shangpin',
fields=[
('id', models.AutoField(primary_key=True, serialize=False, verbose_name='商品ID')),
('biaoqian', models.CharField(blank=True, max_length=45, null=True, verbose_name='商品标题')),
('jiage', models.DecimalField(decimal_places=2, default=0.0, max_digits=10, verbose_name='商品价格')),
('kucun', models.PositiveIntegerField(default=0, verbose_name='商品库存')),
('leixing_id', models.PositiveIntegerField(blank=True, null=True, verbose_name='商品类型ID')),
('zhuanqu_id', models.PositiveIntegerField(blank=True, null=True, verbose_name='商品专区ID')),
('zhenshi_xiaoliang', models.PositiveIntegerField(default=0, verbose_name='商品真实销量')),
('duiwai_xiaoliang', models.PositiveIntegerField(default=0, verbose_name='商品对外销量')),
('jieshao', models.TextField(blank=True, null=True, verbose_name='商品介绍')),
('xiadan_xuzhi', models.TextField(blank=True, null=True, verbose_name='下单须知')),
('guize_tupian', models.CharField(blank=True, max_length=500, null=True, verbose_name='规则图片URL')),
('yaoqiuleixing', models.PositiveIntegerField(blank=True, null=True, verbose_name='抢单要求类型')),
('huiyuan_id', models.CharField(blank=True, max_length=6, null=True, verbose_name='会员ID')),
('yongjin', models.DecimalField(blank=True, decimal_places=2, max_digits=10, null=True, verbose_name='佣金要求')),
('tupian_url', models.CharField(blank=True, max_length=500, null=True, verbose_name='商品图片URL')),
('create_time', models.DateTimeField(auto_now_add=True, verbose_name='创建时间')),
('update_time', models.DateTimeField(auto_now=True, verbose_name='更改时间')),
],
options={
'verbose_name': '商品',
'verbose_name_plural': '商品',
'db_table': 'shangpin',
},
),
migrations.CreateModel(
name='ShangpinLeixing',
fields=[
('id', models.AutoField(primary_key=True, serialize=False, verbose_name='类型ID')),
('yaoqiuleixing', models.PositiveIntegerField(blank=True, null=True, verbose_name='抢单要求类型')),
('huiyuan_id', models.CharField(blank=True, max_length=6, null=True, verbose_name='会员ID')),
('yongjin', models.DecimalField(blank=True, decimal_places=2, max_digits=10, null=True, verbose_name='佣金要求')),
('jieshao', models.CharField(blank=True, max_length=45, null=True, verbose_name='类型介绍')),
('tupian_url', models.CharField(blank=True, max_length=500, null=True, verbose_name='类型图片URL')),
],
options={
'verbose_name': '商品类型',
'verbose_name_plural': '商品类型',
'db_table': 'shangpin_leixing',
},
),
migrations.CreateModel(
name='ShangpinZhuanqu',
fields=[
('id', models.AutoField(primary_key=True, serialize=False, verbose_name='专区ID')),
('mingzi', models.CharField(blank=True, max_length=45, null=True, verbose_name='专区名称')),
('leixing_id', models.PositiveIntegerField(verbose_name='类型ID')),
],
options={
'verbose_name': '商品专区',
'verbose_name_plural': '商品专区',
'db_table': 'shangpin_zhuanqu',
},
),
migrations.CreateModel(
name='Czjilu',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('dingdan_id', models.CharField(db_index=True, max_length=32, unique=True, verbose_name='订单ID')),
('huiyuan_id', models.CharField(blank=True, max_length=6, null=True, verbose_name='会员ID')),
('zhuangtai', models.IntegerField(blank=True, null=True, verbose_name='订单状态')),
('yonghuid', models.CharField(db_index=True, max_length=7, verbose_name='用户ID')),
('jine', models.DecimalField(decimal_places=2, max_digits=10, verbose_name='订单金额')),
('leixing', models.IntegerField(blank=True, null=True, verbose_name='充值类型1:会员2:押金,3:积分,4:商家')),
('shuoming', models.CharField(blank=True, max_length=100, null=True, verbose_name='订单说明')),
('create_time', models.DateTimeField(auto_now_add=True, verbose_name='创建时间')),
('update_time', models.DateTimeField(auto_now=True, verbose_name='更新时间')),
],
options={
'verbose_name': '充值记录订单',
'verbose_name_plural': '充值记录订单',
'db_table': 'czjilu',
'indexes': [models.Index(fields=['dingdan_id'], name='czjilu_dingdan_39bbd0_idx'), models.Index(fields=['yonghuid'], name='czjilu_yonghui_a0555f_idx')],
},
),
migrations.CreateModel(
name='Gsfenhong',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('dingdan_id', models.CharField(max_length=32, unique=True, verbose_name='订单ID')),
('guanshi', models.CharField(db_index=True, max_length=7, verbose_name='管事ID')),
('dashouid', models.CharField(db_index=True, max_length=7, unique=True, verbose_name='打手ID')),
('shuoming', models.CharField(blank=True, max_length=100, null=True, verbose_name='订单说明')),
('fenhong', models.DecimalField(decimal_places=2, max_digits=10, verbose_name='订单分红金额')),
('avatar', models.CharField(blank=True, max_length=500, null=True, verbose_name='打手头像')),
('nicheng', models.CharField(max_length=50, null=True, verbose_name='打手昵称')),
('create_time', models.DateTimeField(auto_now_add=True, verbose_name='创建时间')),
('update_time', models.DateTimeField(auto_now=True, verbose_name='更新时间')),
],
options={
'verbose_name': '管事分红记录',
'verbose_name_plural': '管事分红记录',
'db_table': 'gsfenhong',
'indexes': [models.Index(fields=['guanshi'], name='gsfenhong_guanshi_dc440f_idx'), models.Index(fields=['dashouid'], name='gsfenhong_dashoui_5473ca_idx')],
},
),
]
# Generated by Django 4.2.27 on 2026-06-17 16:31
from django.db import migrations, models
class Migration(migrations.Migration):
initial = True
dependencies = [
]
operations = [
migrations.CreateModel(
name='Czjilu',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('dingdan_id', models.CharField(db_index=True, max_length=32, unique=True, verbose_name='订单ID')),
('huiyuan_id', models.CharField(blank=True, max_length=6, null=True, verbose_name='会员ID')),
('zhuangtai', models.IntegerField(blank=True, null=True, verbose_name='订单状态')),
('yonghuid', models.CharField(db_index=True, max_length=7, verbose_name='用户ID')),
('jine', models.DecimalField(decimal_places=2, max_digits=10, verbose_name='订单金额')),
('leixing', models.IntegerField(blank=True, null=True, verbose_name='充值类型1:会员2:押金,3:积分,4:商家')),
('shuoming', models.CharField(blank=True, max_length=100, null=True, verbose_name='订单说明')),
('create_time', models.DateTimeField(auto_now_add=True, verbose_name='创建时间')),
('update_time', models.DateTimeField(auto_now=True, verbose_name='更新时间')),
],
options={
'verbose_name': '充值记录订单',
'verbose_name_plural': '充值记录订单',
'db_table': 'czjilu',
},
),
migrations.CreateModel(
name='DuociFenhong',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('huiyuan', models.CharField(max_length=10, verbose_name='会员ID')),
('yonghuid', models.CharField(db_index=True, max_length=7, verbose_name='管事ID')),
('cishu', models.PositiveIntegerField(verbose_name='分红次数')),
('guanshi_fenhong', models.DecimalField(decimal_places=2, default=0.0, max_digits=10, verbose_name='管事分红金额')),
('zuzhang_fenhong', models.DecimalField(decimal_places=2, default=0.0, max_digits=10, verbose_name='组长分红金额')),
('create_time', models.DateTimeField(auto_now_add=True, verbose_name='创建时间')),
('update_time', models.DateTimeField(auto_now=True, verbose_name='更新时间')),
],
options={
'verbose_name': '多次分红配置',
'verbose_name_plural': '多次分红配置',
'db_table': 'duoci_fenhong',
},
),
migrations.CreateModel(
name='Gsfenhong',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('dingdan_id', models.CharField(max_length=32, unique=True, verbose_name='订单ID')),
('guanshi', models.CharField(db_index=True, max_length=7, verbose_name='管事ID')),
('dashouid', models.CharField(db_index=True, max_length=7, verbose_name='打手ID')),
('shuoming', models.CharField(blank=True, max_length=100, null=True, verbose_name='订单说明')),
('fenhong', models.DecimalField(decimal_places=2, max_digits=10, verbose_name='订单分红金额')),
('avatar', models.CharField(blank=True, max_length=500, null=True, verbose_name='打手头像')),
('nicheng', models.CharField(max_length=50, null=True, verbose_name='打手昵称')),
('zuzhang_id', models.CharField(blank=True, db_index=True, max_length=7, null=True, verbose_name='组长ID')),
('zuzhang_fenhong', models.DecimalField(blank=True, decimal_places=2, max_digits=10, null=True, verbose_name='组长分红金额')),
('fenhong_leixing', models.PositiveSmallIntegerField(choices=[(1, '会员分红'), (2, '押金分红'), (3, '商家订单分红')], default=1, verbose_name='分红类型')),
('huiyuan_id', models.CharField(blank=True, max_length=6, null=True, verbose_name='会员ID')),
('create_time', models.DateTimeField(auto_now_add=True, verbose_name='创建时间')),
('update_time', models.DateTimeField(auto_now=True, verbose_name='更新时间')),
],
options={
'verbose_name': '管事分红记录',
'verbose_name_plural': '管事分红记录',
'db_table': 'gsfenhong',
},
),
migrations.CreateModel(
name='Huiyuan',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('huiyuan_id', models.CharField(max_length=6, unique=True, verbose_name='会员ID')),
('jieshao', models.CharField(max_length=30, verbose_name='会员介绍')),
('jtjieshao', models.TextField(blank=True, null=True, verbose_name='会员规则介绍')),
('jiage', models.DecimalField(decimal_places=2, default=0.0, max_digits=10, verbose_name='会员价格')),
('guanshifc', models.DecimalField(decimal_places=2, default=0.0, max_digits=10, verbose_name='管事分成')),
('zuzhangfc', models.DecimalField(decimal_places=2, default=0.0, max_digits=10, verbose_name='组长分成')),
('goumai_cishu', models.PositiveIntegerField(default=0, verbose_name='购买次数')),
('create_time', models.DateTimeField(auto_now_add=True, verbose_name='创建时间')),
('update_time', models.DateTimeField(auto_now=True, verbose_name='更新时间')),
],
options={
'verbose_name': '会员',
'verbose_name_plural': '会员',
'db_table': 'huiyuan',
},
),
migrations.CreateModel(
name='Huiyuangoumai',
fields=[
('id', models.AutoField(primary_key=True, serialize=False, verbose_name='购买记录ID')),
('huiyuan_id', models.CharField(db_index=True, max_length=6, verbose_name='会员ID')),
('yonghu_id', models.CharField(db_index=True, max_length=32, verbose_name='用户ID')),
('huiyuan_zhuangtai', models.PositiveIntegerField(default=1, verbose_name='会员状态')),
('jieshao', models.CharField(max_length=30, null=True, verbose_name='会员介绍')),
('daoqi_time', models.DateTimeField(verbose_name='会员到期时间')),
('create_time', models.DateTimeField(auto_now_add=True, verbose_name='创建时间')),
('update_time', models.DateTimeField(auto_now=True, verbose_name='更新时间')),
],
options={
'verbose_name': '用户购买会员',
'verbose_name_plural': '用户购买会员',
'db_table': 'huiyuangoumai',
},
),
migrations.CreateModel(
name='Shangpin',
fields=[
('id', models.AutoField(primary_key=True, serialize=False, verbose_name='商品ID')),
('biaoqian', models.CharField(blank=True, max_length=45, null=True, verbose_name='商品标题')),
('jiage', models.DecimalField(decimal_places=2, default=0.0, max_digits=10, verbose_name='商品价格')),
('kucun', models.PositiveIntegerField(default=0, verbose_name='商品库存')),
('leixing_id', models.PositiveIntegerField(blank=True, null=True, verbose_name='商品类型ID')),
('zhuanqu_id', models.PositiveIntegerField(blank=True, null=True, verbose_name='商品专区ID')),
('zhenshi_xiaoliang', models.PositiveIntegerField(default=0, verbose_name='商品真实销量')),
('duiwai_xiaoliang', models.PositiveIntegerField(default=0, verbose_name='商品对外销量')),
('jieshao', models.TextField(blank=True, null=True, verbose_name='商品介绍')),
('xiadan_xuzhi', models.TextField(blank=True, null=True, verbose_name='下单须知')),
('guize_tupian', models.CharField(blank=True, max_length=500, null=True, verbose_name='规则图片URL')),
('yaoqiuleixing', models.PositiveIntegerField(blank=True, null=True, verbose_name='抢单要求类型')),
('huiyuan_id', models.CharField(blank=True, max_length=6, null=True, verbose_name='会员ID')),
('yongjin', models.DecimalField(blank=True, decimal_places=2, max_digits=10, null=True, verbose_name='佣金要求')),
('kaioi_ewai_dashou_fencheng', models.BooleanField(default=False, verbose_name='是否开启打手额外分成')),
('ewai_dashou_fencheng', models.DecimalField(blank=True, decimal_places=2, max_digits=10, null=True, verbose_name='打手额外分成金额')),
('tupian_url', models.CharField(blank=True, max_length=500, null=True, verbose_name='商品图片URL')),
('create_time', models.DateTimeField(auto_now_add=True, verbose_name='创建时间')),
('update_time', models.DateTimeField(auto_now=True, verbose_name='更改时间')),
('paixu', models.IntegerField(default=0, verbose_name='排序权重')),
('shenhezhuangtai', models.IntegerField(default=1, help_text='1=正常, 2=审核专用', verbose_name='审核状态')),
('shangjia_zhuangtai', models.BooleanField(default=True, verbose_name='是否上架')),
('fengjin_zhuangtai', models.BooleanField(default=True, verbose_name='是否封禁')),
('shenhe_zhuangtai', models.BooleanField(default=False, help_text='True=审核通过False=未审核', verbose_name='平台审核状态')),
],
options={
'verbose_name': '商品',
'verbose_name_plural': '商品',
'db_table': 'shangpin',
},
),
migrations.CreateModel(
name='ShangpinLeixing',
fields=[
('id', models.AutoField(primary_key=True, serialize=False, verbose_name='类型ID')),
('yaoqiuleixing', models.PositiveIntegerField(blank=True, null=True, verbose_name='抢单要求类型')),
('huiyuan_id', models.CharField(blank=True, max_length=6, null=True, verbose_name='会员ID')),
('yongjin', models.DecimalField(blank=True, decimal_places=2, max_digits=10, null=True, verbose_name='佣金要求')),
('jieshao', models.CharField(blank=True, max_length=45, null=True, verbose_name='类型介绍')),
('tupian_url', models.CharField(blank=True, max_length=500, null=True, verbose_name='类型图片URL')),
('paixu', models.IntegerField(default=0, verbose_name='排序权重')),
('shenhezhuangtai', models.IntegerField(default=1, help_text='1=正常, 2=审核专用', verbose_name='审核状态')),
],
options={
'verbose_name': '商品类型',
'verbose_name_plural': '商品类型',
'db_table': 'shangpin_leixing',
},
),
migrations.CreateModel(
name='ShangpinMeiriTongji',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('riqi', models.DateField(db_index=True, verbose_name='统计日期')),
('nian', models.PositiveSmallIntegerField(verbose_name='年份')),
('yue', models.PositiveSmallIntegerField(verbose_name='月份')),
('ri', models.PositiveSmallIntegerField(verbose_name='')),
('diandan_zongliang', models.PositiveIntegerField(default=0, verbose_name='点单总量')),
('diandan_zonge', models.DecimalField(decimal_places=2, default=0.0, max_digits=12, verbose_name='点单总额')),
('chengjiao_zongliang', models.PositiveIntegerField(default=0, verbose_name='成交总量')),
('chengjiao_zonge', models.DecimalField(decimal_places=2, default=0.0, max_digits=12, verbose_name='成交总额')),
('tuikuan_zongliang', models.PositiveIntegerField(default=0, verbose_name='退款总量')),
('tuikuan_zonge', models.DecimalField(decimal_places=2, default=0.0, max_digits=12, verbose_name='退款总额')),
('pingtai_shouyi', models.DecimalField(decimal_places=2, default=0.0, max_digits=12, verbose_name='平台收益')),
('dianpu_zongshouyi', models.DecimalField(decimal_places=2, default=0.0, max_digits=12, verbose_name='店铺总收益')),
('create_time', models.DateTimeField(auto_now_add=True, verbose_name='创建时间')),
('update_time', models.DateTimeField(auto_now=True, verbose_name='更新时间')),
],
options={
'verbose_name': '商品每日统计',
'verbose_name_plural': '商品每日统计',
'db_table': 'shangpin_meiri_tongji',
},
),
migrations.CreateModel(
name='ShangpinZhuanqu',
fields=[
('id', models.AutoField(primary_key=True, serialize=False, verbose_name='专区ID')),
('mingzi', models.CharField(blank=True, max_length=45, null=True, verbose_name='专区名称')),
('leixing_id', models.PositiveIntegerField(verbose_name='类型ID')),
('paixu', models.IntegerField(default=0, verbose_name='排序权重')),
('shenhezhuangtai', models.IntegerField(default=1, help_text='1=正常, 2=审核专用', verbose_name='审核状态')),
('shangjia_zhuangtai', models.BooleanField(default=True, verbose_name='是否上架')),
('fengjin_zhuangtai', models.BooleanField(default=True, verbose_name='是否封禁')),
],
options={
'verbose_name': '商品专区',
'verbose_name_plural': '商品专区',
'db_table': 'shangpin_zhuanqu',
},
),
]

View File

@@ -1,29 +0,0 @@
# Generated by Django 4.2.27 on 2026-01-18 14:24
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('products', '0001_initial'),
]
operations = [
migrations.AlterUniqueTogether(
name='huiyuangoumai',
unique_together={('yonghu_id', 'huiyuan_id')},
),
migrations.AddIndex(
model_name='huiyuangoumai',
index=models.Index(fields=['yonghu_id'], name='huiyuangoum_yonghu__ba2138_idx'),
),
migrations.AddIndex(
model_name='huiyuangoumai',
index=models.Index(fields=['huiyuan_id'], name='huiyuangoum_huiyuan_35fe1d_idx'),
),
migrations.AddIndex(
model_name='huiyuangoumai',
index=models.Index(fields=['yonghu_id', 'huiyuan_id'], name='huiyuangoum_yonghu__21e6e1_idx'),
),
]

View File

@@ -1,4 +1,4 @@
# Generated by Django 4.2.27 on 2026-06-17 01:32
# Generated by Django 4.2.27 on 2026-06-17 16:31
from django.db import migrations, models
import django.db.models.deletion
@@ -9,8 +9,8 @@ class Migration(migrations.Migration):
initial = True
dependencies = [
('rank', '0001_initial'),
('products', '0001_initial'),
('rank', '0001_initial'),
('shop', '0001_initial'),
]

View File

@@ -1,33 +0,0 @@
# Generated by Django 4.2.27 on 2026-02-07 19:42
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('products', '0002_alter_huiyuangoumai_unique_together_and_more'),
]
operations = [
migrations.AddField(
model_name='shangpin',
name='paixu',
field=models.IntegerField(default=0, verbose_name='排序权重'),
),
migrations.AddField(
model_name='shangpinleixing',
name='paixu',
field=models.IntegerField(default=0, verbose_name='排序权重'),
),
migrations.AddField(
model_name='shangpinleixing',
name='shenhezhuangtai',
field=models.IntegerField(default=1, help_text='1=正常, 2=审核专用', verbose_name='审核状态'),
),
migrations.AddField(
model_name='shangpinzhuanqu',
name='paixu',
field=models.IntegerField(default=0, verbose_name='排序权重'),
),
]

View File

@@ -1,23 +0,0 @@
# Generated by Django 4.2.27 on 2026-02-09 15:38
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('products', '0003_shangpin_paixu_shangpinleixing_paixu_and_more'),
]
operations = [
migrations.AddField(
model_name='shangpin',
name='shenhezhuangtai',
field=models.IntegerField(default=1, help_text='1=正常, 2=审核专用', verbose_name='审核状态'),
),
migrations.AddField(
model_name='shangpinzhuanqu',
name='shenhezhuangtai',
field=models.IntegerField(default=1, help_text='1=正常, 2=审核专用', verbose_name='审核状态'),
),
]

View File

@@ -1,18 +0,0 @@
# Generated by Django 4.2.27 on 2026-02-27 15:22
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('products', '0004_shangpin_shenhezhuangtai_and_more'),
]
operations = [
migrations.AlterField(
model_name='gsfenhong',
name='dashouid',
field=models.CharField(db_index=True, max_length=7, verbose_name='打手ID'),
),
]

View File

@@ -1,45 +0,0 @@
# Generated by Django 4.2.27 on 2026-03-18 12:09
from django.db import migrations, models
import django.db.models.deletion
class Migration(migrations.Migration):
dependencies = [
('products', '0005_alter_gsfenhong_dashouid'),
]
operations = [
migrations.AddField(
model_name='gsfenhong',
name='huiyuan_id',
field=models.CharField(blank=True, max_length=6, null=True, verbose_name='会员ID'),
),
migrations.AddField(
model_name='huiyuan',
name='zuzhangfc',
field=models.DecimalField(decimal_places=2, default=0.0, max_digits=10, verbose_name='组长分成'),
),
migrations.CreateModel(
name='DuociFenhong',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('guanshi', models.CharField(db_index=True, max_length=7, verbose_name='管事ID')),
('zuzhang', models.CharField(blank=True, db_index=True, max_length=7, null=True, verbose_name='组长ID')),
('cishu', models.PositiveIntegerField(verbose_name='分红次数')),
('guanshi_fenhong', models.DecimalField(decimal_places=2, default=0.0, max_digits=10, verbose_name='管事分红金额')),
('zuzhang_fenhong', models.DecimalField(decimal_places=2, default=0.0, max_digits=10, verbose_name='组长分红金额')),
('create_time', models.DateTimeField(auto_now_add=True, verbose_name='创建时间')),
('update_time', models.DateTimeField(auto_now=True, verbose_name='更新时间')),
('huiyuan', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='products.huiyuan', verbose_name='会员')),
],
options={
'verbose_name': '多次分红配置',
'verbose_name_plural': '多次分红配置',
'db_table': 'duoci_fenhong',
'indexes': [models.Index(fields=['guanshi'], name='duoci_fenho_guanshi_b3de53_idx'), models.Index(fields=['zuzhang'], name='duoci_fenho_zuzhang_69997d_idx')],
'unique_together': {('huiyuan', 'guanshi', 'cishu')},
},
),
]

View File

@@ -1,47 +0,0 @@
# Generated by Django 4.2.27 on 2026-03-19 13:40
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('products', '0006_gsfenhong_huiyuan_id_huiyuan_zuzhangfc_duocifenhong'),
]
operations = [
migrations.RemoveIndex(
model_name='duocifenhong',
name='duoci_fenho_guanshi_b3de53_idx',
),
migrations.RemoveIndex(
model_name='duocifenhong',
name='duoci_fenho_zuzhang_69997d_idx',
),
migrations.RenameField(
model_name='duocifenhong',
old_name='guanshi',
new_name='yonghuid',
),
migrations.AlterUniqueTogether(
name='duocifenhong',
unique_together=set(),
),
migrations.AlterField(
model_name='duocifenhong',
name='huiyuan',
field=models.CharField(max_length=10, verbose_name='会员ID'),
),
migrations.AlterUniqueTogether(
name='duocifenhong',
unique_together={('huiyuan', 'yonghuid', 'cishu')},
),
migrations.AddIndex(
model_name='duocifenhong',
index=models.Index(fields=['yonghuid'], name='duoci_fenho_yonghui_db6a2f_idx'),
),
migrations.RemoveField(
model_name='duocifenhong',
name='zuzhang',
),
]

View File

@@ -1,23 +0,0 @@
# Generated by Django 4.2.27 on 2026-03-19 13:53
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('products', '0007_remove_duocifenhong_duoci_fenho_guanshi_b3de53_idx_and_more'),
]
operations = [
migrations.AddField(
model_name='gsfenhong',
name='zuzhang_fenhong',
field=models.DecimalField(blank=True, decimal_places=2, max_digits=10, null=True, verbose_name='组长分红金额'),
),
migrations.AddField(
model_name='gsfenhong',
name='zuzhang_id',
field=models.CharField(blank=True, db_index=True, max_length=7, null=True, verbose_name='组长ID'),
),
]

View File

@@ -1,23 +0,0 @@
# Generated by Django 4.2.27 on 2026-03-22 15:35
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('products', '0008_gsfenhong_zuzhang_fenhong_gsfenhong_zuzhang_id'),
]
operations = [
migrations.AddField(
model_name='shangpin',
name='ewai_dashou_fencheng',
field=models.DecimalField(blank=True, decimal_places=2, max_digits=10, null=True, verbose_name='打手额外分成金额'),
),
migrations.AddField(
model_name='shangpin',
name='kaioi_ewai_dashou_fencheng',
field=models.BooleanField(default=False, verbose_name='是否开启打手额外分成'),
),
]

View File

@@ -1,18 +0,0 @@
# Generated by Django 4.2.27 on 2026-03-24 17:34
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('products', '0009_shangpin_ewai_dashou_fencheng_and_more'),
]
operations = [
migrations.AddField(
model_name='shangpinleixing',
name='is_cross_enabled',
field=models.BooleanField(default=False, verbose_name='是否开启平台互通'),
),
]

View File

@@ -1,60 +0,0 @@
# Generated by Django 4.2.27 on 2026-04-21 12:36
from django.db import migrations, models
import django.db.models.deletion
class Migration(migrations.Migration):
dependencies = [
('shop', '0001_initial'),
('products', '0010_shangpinleixing_is_cross_enabled'),
]
operations = [
migrations.AddField(
model_name='shangpin',
name='dianpu',
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='shop.dianpu', verbose_name='所属店铺'),
),
migrations.AddField(
model_name='shangpin',
name='dianpu_leixing',
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='shop.shangpinleixingdianpu', verbose_name='店铺商品类型'),
),
migrations.AddField(
model_name='shangpin',
name='fengjin_zhuangtai',
field=models.BooleanField(default=True, verbose_name='是否封禁'),
),
migrations.AddField(
model_name='shangpin',
name='shangjia_zhuangtai',
field=models.BooleanField(default=True, verbose_name='是否上架'),
),
migrations.AddField(
model_name='shangpin',
name='shenhe_zhuangtai',
field=models.BooleanField(default=False, help_text='True=审核通过False=未审核', verbose_name='平台审核状态'),
),
migrations.AddField(
model_name='shangpinzhuanqu',
name='dianpu',
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='shop.dianpu', verbose_name='所属店铺'),
),
migrations.AddField(
model_name='shangpinzhuanqu',
name='dianpu_leixing',
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='shop.shangpinleixingdianpu', verbose_name='店铺商品类型'),
),
migrations.AddField(
model_name='shangpinzhuanqu',
name='fengjin_zhuangtai',
field=models.BooleanField(default=True, verbose_name='是否封禁'),
),
migrations.AddField(
model_name='shangpinzhuanqu',
name='shangjia_zhuangtai',
field=models.BooleanField(default=True, verbose_name='是否上架'),
),
]

View File

@@ -1,42 +0,0 @@
# Generated by Django 4.2.27 on 2026-04-23 14:56
from django.db import migrations, models
import django.db.models.deletion
class Migration(migrations.Migration):
dependencies = [
('products', '0011_shangpin_dianpu_shangpin_dianpu_leixing_and_more'),
]
operations = [
migrations.CreateModel(
name='ShangpinMeiriTongji',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('riqi', models.DateField(db_index=True, verbose_name='统计日期')),
('nian', models.PositiveSmallIntegerField(verbose_name='年份')),
('yue', models.PositiveSmallIntegerField(verbose_name='月份')),
('ri', models.PositiveSmallIntegerField(verbose_name='')),
('diandan_zongliang', models.PositiveIntegerField(default=0, verbose_name='点单总量')),
('diandan_zonge', models.DecimalField(decimal_places=2, default=0.0, max_digits=12, verbose_name='点单总额')),
('chengjiao_zongliang', models.PositiveIntegerField(default=0, verbose_name='成交总量')),
('chengjiao_zonge', models.DecimalField(decimal_places=2, default=0.0, max_digits=12, verbose_name='成交总额')),
('tuikuan_zongliang', models.PositiveIntegerField(default=0, verbose_name='退款总量')),
('tuikuan_zonge', models.DecimalField(decimal_places=2, default=0.0, max_digits=12, verbose_name='退款总额')),
('pingtai_shouyi', models.DecimalField(decimal_places=2, default=0.0, max_digits=12, verbose_name='平台收益')),
('dianpu_zongshouyi', models.DecimalField(decimal_places=2, default=0.0, max_digits=12, verbose_name='店铺总收益')),
('create_time', models.DateTimeField(auto_now_add=True, verbose_name='创建时间')),
('update_time', models.DateTimeField(auto_now=True, verbose_name='更新时间')),
('shangpin', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='products.shangpin', verbose_name='商品ID')),
],
options={
'verbose_name': '商品每日统计',
'verbose_name_plural': '商品每日统计',
'db_table': 'shangpin_meiri_tongji',
'indexes': [models.Index(fields=['shangpin', 'riqi'], name='shangpin_me_shangpi_d27e5c_idx'), models.Index(fields=['nian', 'yue', 'ri'], name='shangpin_me_nian_e3b409_idx')],
'unique_together': {('shangpin', 'riqi')},
},
),
]

View File

@@ -1,20 +0,0 @@
# Generated by Django 4.2.27 on 2026-05-14 04:25
from django.db import migrations, models
import django.db.models.deletion
class Migration(migrations.Migration):
dependencies = [
('rank', '0003_alter_dashoubiaoxian_bankuai'),
('products', '0012_shangpinmeiritongji'),
]
operations = [
migrations.AddField(
model_name='shangpinleixing',
name='bankuai',
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='rank.bankuai', verbose_name='所属板块'),
),
]

View File

@@ -1,20 +0,0 @@
# Generated by Django 4.2.27 on 2026-05-16 16:51
from django.db import migrations, models
import django.db.models.deletion
class Migration(migrations.Migration):
dependencies = [
('rank', '0010_kaohejilufeiyong'),
('products', '0013_shangpinleixing_bankuai'),
]
operations = [
migrations.AddField(
model_name='huiyuan',
name='bankuai',
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='rank.bankuai', verbose_name='所属板块'),
),
]

View File

@@ -1,18 +0,0 @@
# Generated by Django 4.2.27 on 2026-06-12 01:29
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('products', '0014_huiyuan_bankuai'),
]
operations = [
migrations.AddField(
model_name='gsfenhong',
name='fenhong_leixing',
field=models.PositiveSmallIntegerField(choices=[(1, '会员分红'), (2, '押金分红'), (3, '商家订单分红')], default=1, verbose_name='分红类型'),
),
]

View File

@@ -1,17 +0,0 @@
# Generated by Django 4.2.27 on 2026-06-15 01:42
from django.db import migrations
class Migration(migrations.Migration):
dependencies = [
('products', '0015_gsfenhong_fenhong_leixing'),
]
operations = [
migrations.RemoveField(
model_name='shangpinleixing',
name='is_cross_enabled',
),
]

View File

@@ -46,8 +46,9 @@ from .models import (
Czjilu, Gsfenhong, Huiyuangoumai, DuociFenhong
)
from users.models import (
UserMain, AdminProfile, UserDashou, UserGuanshi, UserZuzhang, UserShangjia
AdminProfile, UserDashou, UserGuanshi, UserZuzhang, UserShangjia
)
from gvsdsdk.models import User
from orders.models import Lilubiao
from config.models import Szjilu, Gonggao, Lunbo
@@ -5945,7 +5946,7 @@ class ZuzhangFenhongView(APIView):
return {}
# 查询用户主表,并预加载 boss_profile
users = UserMain.query.filter(yonghuid__in=guanshi_ids).select_related(
users = User.query.filter(yonghuid__in=guanshi_ids).select_related(
'boss_profile'
).only(
'yonghuid', 'avatar',
@@ -6008,7 +6009,7 @@ class CzhqdyView(APIView):
{
'id': 1,
'name': '打手佣金抵扣',
'profile_attr': 'dashou_profile', # UserMain 的反向 related_name
'profile_attr': 'dashou_profile', # User 的反向 related_name
'balance_field': 'yue',
'rate_key': '5',
'model': UserDashou,