Merge branch 'master' of https://e.coding.net/ctcdevteam/ehs/ehs_server
This commit is contained in:
commit
5ecb3341e0
|
@ -0,0 +1,19 @@
|
|||
# Generated by Django 3.2.12 on 2025-02-11 06:49
|
||||
|
||||
from django.db import migrations, models
|
||||
import django.db.models.deletion
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('qm', '0041_auto_20250122_1347'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name='ptest',
|
||||
name='testitem',
|
||||
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='qm.testitem', verbose_name='测试项目'),
|
||||
),
|
||||
]
|
|
@ -351,7 +351,7 @@ class Ptest(CommonAModel):
|
|||
test_user = models.ForeignKey(
|
||||
User, verbose_name='检验员', on_delete=models.CASCADE)
|
||||
testitem = models.ForeignKey(
|
||||
TestItem, verbose_name='测试项目', on_delete=models.CASCADE)
|
||||
TestItem, verbose_name='测试项目', on_delete=models.CASCADE, null=True, blank=True)
|
||||
sample_number = models.CharField('样品编号', max_length=20)
|
||||
sample_count = models.PositiveIntegerField('样品数量', null=True, blank=True)
|
||||
sample_density = models.FloatField('样品密度', null=True, blank=True)
|
||||
|
|
|
@ -35,7 +35,7 @@ def get_user_route(user: User) -> List[str]:
|
|||
user_routes_qs = perm_qs
|
||||
else:
|
||||
user_routes_qs = perm_qs.filter(role_perms__in=PostRole.objects.filter(
|
||||
post__in=UserPost.objects.filter(user=user).values_list("post", flat=True)).values_list("role", flat=True))
|
||||
post__in=UserPost.objects.filter(user=user).values_list("post", flat=True)).values_list("role", flat=True)).distinct()
|
||||
user_routes_qs = user_routes_qs.order_by('sort')
|
||||
user_routes_list = list(user_routes_qs.values("id", "name", "type", "route_name", "icon", "path", "component", "is_hidden", "is_fullpage", "parent"))
|
||||
for item in user_routes_list:
|
||||
|
|
|
@ -0,0 +1,30 @@
|
|||
# Generated by Django 3.2.12 on 2025-02-12 03:58
|
||||
|
||||
from django.db import migrations, models
|
||||
import django.db.models.deletion
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('em', '0021_auto_20241203_1531'),
|
||||
('wpm', '0086_alter_handover_type'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddField(
|
||||
model_name='mlogbw',
|
||||
name='equip',
|
||||
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='em.equipment', verbose_name='设备'),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='mlogbw',
|
||||
name='work_end_time',
|
||||
field=models.DateTimeField(blank=True, null=True, verbose_name='结束加工时间'),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='mlogbw',
|
||||
name='work_start_time',
|
||||
field=models.DateTimeField(blank=True, null=True, verbose_name='开始加工时间'),
|
||||
),
|
||||
]
|
|
@ -355,6 +355,9 @@ class Mlogbw(BaseModel):
|
|||
mlogb = models.ForeignKey(Mlogb, verbose_name='生产记录', on_delete=models.CASCADE)
|
||||
wpr = models.ForeignKey("wpmw.wpr", verbose_name='关联产品', on_delete=models.SET_NULL
|
||||
, related_name='wpr_mlogbw', null=True, blank=True)
|
||||
equip = models.ForeignKey(Equipment, verbose_name='设备', on_delete=models.SET_NULL, null=True, blank=True)
|
||||
work_start_time = models.DateTimeField('开始加工时间', null=True, blank=True)
|
||||
work_end_time = models.DateTimeField('结束加工时间', null=True, blank=True)
|
||||
ftest = models.OneToOneField("qm.ftest", verbose_name='关联检验',
|
||||
on_delete=models.PROTECT, null=True, blank=True, related_name="mlogbw_ftest")
|
||||
note = models.TextField('备注', null=True, blank=True)
|
||||
|
|
|
@ -580,7 +580,7 @@ class MlogbwCreateUpdateSerializer(CustomModelSerializer):
|
|||
ftest = FtestProcessSerializer(required=False)
|
||||
class Meta:
|
||||
model = Mlogbw
|
||||
fields = ["id", "number", "wpr", "note", "mlogb", "ftest"]
|
||||
fields = ["id", "number", "wpr", "note", "mlogb", "ftest", "equip", "work_start_time", "work_end_time"]
|
||||
|
||||
def validate(self, attrs):
|
||||
mlogb:Mlogb = attrs["mlogb"]
|
||||
|
|
|
@ -230,8 +230,11 @@ def get_alldata_with_batch(batch: str):
|
|||
# 六车间工段生产数据
|
||||
mgroup_list = ["平头", "粘铁头", "粗中细磨", "抛光", "开槽"]
|
||||
for mgroup_name in mgroup_list:
|
||||
mgroup = Mgroup.objects.get(name=mgroup_name)
|
||||
mlogs_qs = Mlog.objects.filter(submit_time__isnull=False, mgroup=mgroup, batch=batch)
|
||||
if mgroup_name == '粗中细磨':
|
||||
mgroups = Mgroup.objects.filter(name__in=['粗磨', '粗中磨', '粗中细磨'])
|
||||
else:
|
||||
mgroups = Mgroup.objects.filter(name=mgroup_name)
|
||||
mlogs_qs = Mlog.objects.filter(submit_time__isnull=False, mgroup__in=mgroups, batch=batch)
|
||||
if mlogs_qs.exists():
|
||||
last_time = item.update_time if item.update_time > last_time else last_time
|
||||
data[f'六车间_{mgroup_name}_日期'] = []
|
||||
|
|
Loading…
Reference in New Issue