mirror of https://github.com/raiots/TasksManager
关于序号错误的bug
This commit is contained in:
parent
15f80ce25d
commit
15f0165ae4
|
@ -1,50 +0,0 @@
|
|||
# Generated by Django 3.1.5 on 2021-02-17 09:37
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
initial = True
|
||||
|
||||
dependencies = [
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.CreateModel(
|
||||
name='Task',
|
||||
fields=[
|
||||
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('task_topic', models.CharField(max_length=50, verbose_name='任务名称')),
|
||||
('task_id', models.CharField(max_length=50, unique=True, verbose_name='任务编号')),
|
||||
('task_note', models.CharField(max_length=100, verbose_name='任务说明')),
|
||||
('task_origin', models.CharField(max_length=150, verbose_name='任务来源')),
|
||||
('aim_value', models.CharField(max_length=50, verbose_name='目标值')),
|
||||
('deadline', models.DateField(verbose_name='完成时间')),
|
||||
],
|
||||
options={
|
||||
'verbose_name': '年度任务',
|
||||
'verbose_name_plural': '年度任务',
|
||||
'ordering': ['deadline'],
|
||||
},
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name='Todo',
|
||||
fields=[
|
||||
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('todo_topic', models.CharField(max_length=50, verbose_name='工作事项')),
|
||||
('todo_note', models.CharField(blank=True, max_length=100, verbose_name='工作要求及交付物')),
|
||||
('predict_work', models.DecimalField(decimal_places=1, max_digits=5, verbose_name='预计工作量')),
|
||||
('evaluate_factor', models.DecimalField(decimal_places=1, max_digits=5, verbose_name='折算系数')),
|
||||
('maturity', models.CharField(blank=True, choices=[('0%', '0%'), ('10%', '10%'), ('20%', '20%'), ('30%', '30%'), ('40%', '40%'), ('50%', '50%'), ('60%', '60%'), ('70%', '70%'), ('80%', '80%'), ('90%', '90%'), ('100%', '100%')], default='0%', max_length=5, verbose_name='成熟度')),
|
||||
('real_work', models.DecimalField(blank=True, decimal_places=1, max_digits=5, null=True, verbose_name='实际工作量')),
|
||||
('complete_note', models.TextField(blank=True, max_length=150, verbose_name='完成情况说明')),
|
||||
('deadline', models.DateField(verbose_name='完成时间')),
|
||||
],
|
||||
options={
|
||||
'verbose_name': '工作包',
|
||||
'verbose_name_plural': '工作包',
|
||||
'ordering': ['deadline'],
|
||||
},
|
||||
),
|
||||
]
|
|
@ -1,69 +0,0 @@
|
|||
# Generated by Django 3.1.5 on 2021-02-17 09:37
|
||||
|
||||
from django.conf import settings
|
||||
from django.db import migrations, models
|
||||
import django.db.models.deletion
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
initial = True
|
||||
|
||||
dependencies = [
|
||||
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
|
||||
('tasks', '0001_initial'),
|
||||
('users', '0001_initial'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddField(
|
||||
model_name='todo',
|
||||
name='duty_group',
|
||||
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='users.department', verbose_name='承办单位'),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='todo',
|
||||
name='main_executor',
|
||||
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='main_executor', to=settings.AUTH_USER_MODEL, verbose_name='承/督办人'),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='todo',
|
||||
name='quality_mark',
|
||||
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='users.qualitymark', verbose_name='质量评价'),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='todo',
|
||||
name='sub_executor',
|
||||
field=models.ManyToManyField(blank=True, default='', related_name='sub_executor', to=settings.AUTH_USER_MODEL, verbose_name='协办人'),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='task',
|
||||
name='department',
|
||||
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='department', to='users.department', verbose_name='所属单位'),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='task',
|
||||
name='duty_group',
|
||||
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='duty_group', to='users.department', verbose_name='责任单位'),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='task',
|
||||
name='leader',
|
||||
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='leader', to=settings.AUTH_USER_MODEL, verbose_name='主管领导'),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='task',
|
||||
name='principal',
|
||||
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='principal', to=settings.AUTH_USER_MODEL, verbose_name='负责人'),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='task',
|
||||
name='related_task',
|
||||
field=models.ManyToManyField(blank=True, to='tasks.Todo', verbose_name='任务节点'),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='task',
|
||||
name='task_property',
|
||||
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='users.taskproperty', verbose_name='任务属性'),
|
||||
),
|
||||
]
|
|
@ -0,0 +1,56 @@
|
|||
# Generated by Django 3.1.5 on 2021-03-05 19:27
|
||||
|
||||
from django.conf import settings
|
||||
from django.db import migrations, models
|
||||
import django.db.models.deletion
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
|
||||
('tasks', '0003_auto_20210304_2224'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name='task',
|
||||
name='aim_value',
|
||||
field=models.CharField(blank=True, max_length=50, verbose_name='目标值'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='task',
|
||||
name='leader',
|
||||
field=models.ForeignKey(blank=True, on_delete=django.db.models.deletion.CASCADE, related_name='leader', to=settings.AUTH_USER_MODEL, verbose_name='主管领导'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='task',
|
||||
name='principal',
|
||||
field=models.ForeignKey(blank=True, on_delete=django.db.models.deletion.CASCADE, related_name='principal', to=settings.AUTH_USER_MODEL, verbose_name='负责人'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='task',
|
||||
name='task_note',
|
||||
field=models.CharField(blank=True, max_length=100, verbose_name='任务说明'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='task',
|
||||
name='task_origin',
|
||||
field=models.CharField(blank=True, max_length=150, verbose_name='任务来源'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='todo',
|
||||
name='evaluate_factor',
|
||||
field=models.DecimalField(blank=True, decimal_places=1, default='1', max_digits=5, verbose_name='折算系数'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='todo',
|
||||
name='predict_work',
|
||||
field=models.DecimalField(blank=True, decimal_places=1, max_digits=5, verbose_name='预计工作量'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='todo',
|
||||
name='related_task',
|
||||
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='related_task', to='tasks.task', verbose_name='年度任务'),
|
||||
),
|
||||
]
|
|
@ -0,0 +1,18 @@
|
|||
# Generated by Django 3.1.5 on 2021-03-05 20:59
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('tasks', '0004_auto_20210305_1927'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name='task',
|
||||
name='task_id',
|
||||
field=models.CharField(max_length=50, unique=True, verbose_name='编号'),
|
||||
),
|
||||
]
|
|
@ -0,0 +1,18 @@
|
|||
# Generated by Django 3.1.5 on 2021-03-05 21:06
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('tasks', '0005_auto_20210305_2059'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name='todo',
|
||||
name='predict_work',
|
||||
field=models.DecimalField(blank=True, decimal_places=1, max_digits=5, null=True, verbose_name='预计工作量'),
|
||||
),
|
||||
]
|
|
@ -0,0 +1,21 @@
|
|||
# Generated by Django 3.1.5 on 2021-03-05 22:25
|
||||
|
||||
from django.conf import settings
|
||||
from django.db import migrations, models
|
||||
import django.db.models.deletion
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
|
||||
('tasks', '0006_auto_20210305_2106'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name='task',
|
||||
name='leader',
|
||||
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='leader', to=settings.AUTH_USER_MODEL, verbose_name='主管领导'),
|
||||
),
|
||||
]
|
|
@ -0,0 +1,21 @@
|
|||
# Generated by Django 3.1.5 on 2021-03-05 22:26
|
||||
|
||||
from django.conf import settings
|
||||
from django.db import migrations, models
|
||||
import django.db.models.deletion
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
|
||||
('tasks', '0007_auto_20210305_2225'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name='task',
|
||||
name='principal',
|
||||
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='principal', to=settings.AUTH_USER_MODEL, verbose_name='负责人'),
|
||||
),
|
||||
]
|
|
@ -0,0 +1,20 @@
|
|||
# Generated by Django 3.1.5 on 2021-03-05 23:17
|
||||
|
||||
from django.conf import settings
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
|
||||
('tasks', '0008_auto_20210305_2226'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name='todo',
|
||||
name='sub_executor',
|
||||
field=models.ManyToManyField(blank=True, related_name='sub_executor', to=settings.AUTH_USER_MODEL, verbose_name='协办人'),
|
||||
),
|
||||
]
|
|
@ -1,107 +0,0 @@
|
|||
# Generated by Django 3.1.5 on 2021-02-17 09:37
|
||||
|
||||
import django.contrib.auth.models
|
||||
import django.contrib.auth.validators
|
||||
from django.db import migrations, models
|
||||
import django.db.models.deletion
|
||||
import django.utils.timezone
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
initial = True
|
||||
|
||||
dependencies = [
|
||||
('auth', '0012_alter_user_first_name_max_length'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.CreateModel(
|
||||
name='Department',
|
||||
fields=[
|
||||
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('name', models.CharField(max_length=50, verbose_name='部门名称')),
|
||||
],
|
||||
options={
|
||||
'verbose_name': '部门',
|
||||
'verbose_name_plural': '部门',
|
||||
},
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name='MarkValue',
|
||||
fields=[
|
||||
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('mark_value', models.DecimalField(decimal_places=2, max_digits=3, verbose_name='评价等级考核系数')),
|
||||
],
|
||||
options={
|
||||
'verbose_name': '评价等级考核系数',
|
||||
'verbose_name_plural': '评价等级考核系数',
|
||||
},
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name='MyGroup',
|
||||
fields=[
|
||||
('group_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='auth.group')),
|
||||
],
|
||||
options={
|
||||
'verbose_name': '权限组',
|
||||
'verbose_name_plural': '权限组',
|
||||
},
|
||||
bases=('auth.group',),
|
||||
managers=[
|
||||
('objects', django.contrib.auth.models.GroupManager()),
|
||||
],
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name='TaskProperty',
|
||||
fields=[
|
||||
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('task_property', models.CharField(max_length=50, verbose_name='任务属性')),
|
||||
('own_department', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='users.department', verbose_name='所属部门')),
|
||||
],
|
||||
options={
|
||||
'verbose_name': '任务属性',
|
||||
'verbose_name_plural': '任务属性',
|
||||
},
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name='QualityMark',
|
||||
fields=[
|
||||
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('mark_name', models.CharField(max_length=10, verbose_name='评价等级定义')),
|
||||
('mark_value', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='users.markvalue')),
|
||||
],
|
||||
options={
|
||||
'verbose_name': '评价等级定义',
|
||||
'verbose_name_plural': '评价等级定义',
|
||||
},
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name='User',
|
||||
fields=[
|
||||
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('password', models.CharField(max_length=128, verbose_name='password')),
|
||||
('last_login', models.DateTimeField(blank=True, null=True, verbose_name='last login')),
|
||||
('is_superuser', models.BooleanField(default=False, help_text='Designates that this user has all permissions without explicitly assigning them.', verbose_name='superuser status')),
|
||||
('username', models.CharField(error_messages={'unique': 'A user with that username already exists.'}, help_text='Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only.', max_length=150, unique=True, validators=[django.contrib.auth.validators.UnicodeUsernameValidator()], verbose_name='username')),
|
||||
('first_name', models.CharField(blank=True, max_length=150, verbose_name='first name')),
|
||||
('last_name', models.CharField(blank=True, max_length=150, verbose_name='last name')),
|
||||
('email', models.EmailField(blank=True, max_length=254, verbose_name='email address')),
|
||||
('is_staff', models.BooleanField(default=False, help_text='Designates whether the user can log into this admin site.', verbose_name='staff status')),
|
||||
('is_active', models.BooleanField(default=True, help_text='Designates whether this user should be treated as active. Unselect this instead of deleting accounts.', verbose_name='active')),
|
||||
('date_joined', models.DateTimeField(default=django.utils.timezone.now, verbose_name='date joined')),
|
||||
('real_name', models.CharField(max_length=150, verbose_name='姓名')),
|
||||
('staff_id', models.CharField(max_length=150, verbose_name='工号')),
|
||||
('department', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='users.department')),
|
||||
('groups', models.ManyToManyField(blank=True, help_text='The groups this user belongs to. A user will get all permissions granted to each of their groups.', related_name='user_set', related_query_name='user', to='auth.Group', verbose_name='groups')),
|
||||
('user_permissions', models.ManyToManyField(blank=True, help_text='Specific permissions for this user.', related_name='user_set', related_query_name='user', to='auth.Permission', verbose_name='user permissions')),
|
||||
],
|
||||
options={
|
||||
'verbose_name': '用户',
|
||||
'verbose_name_plural': '用户',
|
||||
},
|
||||
managers=[
|
||||
('objects', django.contrib.auth.models.UserManager()),
|
||||
],
|
||||
),
|
||||
]
|
|
@ -77,7 +77,7 @@
|
|||
<tbody>
|
||||
{% for todo in group_todo %}
|
||||
<tr>
|
||||
<td>{{ todo.id }}</td>
|
||||
<td>{{ forloop.counter }}</td>
|
||||
<td>{{ todo.todo_topic }}</td>
|
||||
<td style="text-align: center">{{ todo.deadline | date:"m月d日" }}</td>
|
||||
<td style="width: 160px"><textarea style="width:100%;overflow:hidden">{{ todo.todo_note }}</textarea></td>
|
||||
|
|
|
@ -80,7 +80,7 @@
|
|||
<tbody>
|
||||
{% for todo in my_todo %}
|
||||
<tr>
|
||||
<td style="text-align: center">{{ todo.id }}</td>
|
||||
<td style="text-align: center">{{ forloop.counter }}</td>
|
||||
<td>{{ todo.todo_topic }}</td>
|
||||
<td style="text-align: center">{{ todo.deadline | date:"m月d日" }}</td>
|
||||
<td style="width: 160px"><textarea style="width:100%;overflow:hidden">{{ todo.todo_note }}</textarea></td>
|
||||
|
@ -132,7 +132,7 @@
|
|||
<tbody>
|
||||
{% for todo in my_sub_todo %}
|
||||
<tr>
|
||||
<td style="text-align: center">{{ todo.id }}</td>
|
||||
<td style="text-align: center">{{ forloop.counter }}</td>
|
||||
<td>{{ todo.todo_topic }}</td>
|
||||
<td style="text-align: center">{{ todo.deadline | date:"m月d日" }}</td>
|
||||
<td style="width: 160px"><textarea style="width:100%;overflow:hidden">{{ todo.todo_note }}</textarea></td>
|
||||
|
|
Loading…
Reference in New Issue