Browse Source

manualsize

tum 1 year ago
parent
commit
cae275e4f5

+ 1 - 1
app/core/utils.py

34
     config_readonly_fields = []  # Fields that should be read-only in update view
34
     config_readonly_fields = []  # Fields that should be read-only in update view
35
 
35
 
36
     config_edit_fields = "__all__"  # "all" or a list of field names to display
36
     config_edit_fields = "__all__"  # "all" or a list of field names to display
37
-    ordering = ["-id","-created_at"]
37
+    ordering = None
38
     form_class = None
38
     form_class = None
39
 
39
 
40
     def get_fields(self):
40
     def get_fields(self):

+ 14 - 1
app/legacy/filters.py

1
 import django_filters
1
 import django_filters
2
 from .models import Data, DataMs, TbFgPressinfoLotlist, LotSummary, DataRl, DataWb, \
2
 from .models import Data, DataMs, TbFgPressinfoLotlist, LotSummary, DataRl, DataWb, \
3
-        LotSummaryRl, LotSummaryWb, RotateData
3
+        LotSummaryRl, LotSummaryWb, RotateData, Manualsize
4
 
4
 
5
 class DataFilter(django_filters.FilterSet):
5
 class DataFilter(django_filters.FilterSet):
6
     lot_no = django_filters.CharFilter(field_name='lot_no', lookup_expr='icontains')
6
     lot_no = django_filters.CharFilter(field_name='lot_no', lookup_expr='icontains')
85
     class Meta:
85
     class Meta:
86
         model = RotateData
86
         model = RotateData
87
         fields = ['lot_no', 'code']  # Add fields you want to filter
87
         fields = ['lot_no', 'code']  # Add fields you want to filter
88
+
89
+
90
+class ManualsizeFilter(django_filters.FilterSet):
91
+    lotno = django_filters.CharFilter(field_name='lotno', lookup_expr='icontains')
92
+    size_name = django_filters.CharFilter(field_name='size_name', lookup_expr='icontains')
93
+    std = django_filters.NumberFilter(field_name='std')
94
+    tolun = django_filters.NumberFilter(field_name='tolun')
95
+    tolup = django_filters.NumberFilter(field_name='tolup')
96
+    created_at = django_filters.DateTimeFilter(field_name='created_at', lookup_expr='gte')  # Filter for recent entries
97
+    productcode = django_filters.CharFilter(field_name='productcode', lookup_expr='icontains')
98
+    class Meta:
99
+        model = Manualsize
100
+        fields = ['lotno', 'size_name', 'std', 'tolun', 'tolup', 'created_at', 'productcode']

+ 7 - 1
app/legacy/urls.py

2
 from .views import DataListView, DataDetailView, DataCreateView, DataUpdateView, DataDeleteView,\
2
 from .views import DataListView, DataDetailView, DataCreateView, DataUpdateView, DataDeleteView,\
3
 DataMsCRUDView, TbFgPressInfoLotListCRUDView, LotSummaryCRUDView, VMasterViewCRUDView, MgMasterViewCRUDView,\
3
 DataMsCRUDView, TbFgPressInfoLotListCRUDView, LotSummaryCRUDView, VMasterViewCRUDView, MgMasterViewCRUDView,\
4
 BelMasterViewCRUDView, EMasterViewCRUDView, DataRLCRUDView, DataWbCRUDView, LotSummaryRlCRUDView, \
4
 BelMasterViewCRUDView, EMasterViewCRUDView, DataRLCRUDView, DataWbCRUDView, LotSummaryRlCRUDView, \
5
-LotSummaryWbCRUDView, RotateDataCRUDView
5
+LotSummaryWbCRUDView, RotateDataCRUDView, ManualsizeCRUDView
6
 
6
 
7
 app_name = 'legacy'  # Namespace for this app
7
 app_name = 'legacy'  # Namespace for this app
8
 
8
 
18
 lsrl_crud = LotSummaryRlCRUDView()
18
 lsrl_crud = LotSummaryRlCRUDView()
19
 lswb_crud = LotSummaryWbCRUDView()
19
 lswb_crud = LotSummaryWbCRUDView()
20
 rotate_crud = RotateDataCRUDView()
20
 rotate_crud = RotateDataCRUDView()
21
+manualsize_crud = ManualsizeCRUDView()
21
 
22
 
22
 urlpatterns = [
23
 urlpatterns = [
23
     path('data/', DataListView.as_view(), name='data-list'),            # data/
24
     path('data/', DataListView.as_view(), name='data-list'),            # data/
86
     path('rotate/create/', rotate_crud.get_create_view().as_view(), name='rotate-create'),
87
     path('rotate/create/', rotate_crud.get_create_view().as_view(), name='rotate-create'),
87
     path('rotate/<int:pk>/update/', rotate_crud.get_update_view().as_view(), name='rotate-update'),
88
     path('rotate/<int:pk>/update/', rotate_crud.get_update_view().as_view(), name='rotate-update'),
88
     path('rotate/<int:pk>/delete/', rotate_crud.get_delete_view().as_view(), name='rotate-delete'),
89
     path('rotate/<int:pk>/delete/', rotate_crud.get_delete_view().as_view(), name='rotate-delete'),
90
+    # Add this line at line 88
91
+    path('manualsize/', manualsize_crud.get_list_view().as_view(), name='manualsize-list'),
92
+    path('manualsize/create/', manualsize_crud.get_create_view().as_view(), name='manualsize-create'),
93
+    path('manualsize/<str:pk>/update/', manualsize_crud.get_update_view().as_view(), name='manualsize-update'),
94
+    path('manualsize/<str:pk>/delete/', manualsize_crud.get_delete_view().as_view(), name='manualsize-delete'),
89
 ]
95
 ]

+ 26 - 2
app/legacy/views.py

12
 )
12
 )
13
 from django.core.paginator import Paginator
13
 from django.core.paginator import Paginator
14
 from .models import Data, DataMs, TbFgPressinfoLotlist, LotSummary, DataRl, DataWb, LotSummaryRl, \
14
 from .models import Data, DataMs, TbFgPressinfoLotlist, LotSummary, DataRl, DataWb, LotSummaryRl, \
15
-        RotateData, LotSummaryWb
15
+        RotateData, LotSummaryWb, Manualsize
16
 from .filters import DataFilter, DataMsFilter, TbFgPressFilter, LotSummaryFilter, \
16
 from .filters import DataFilter, DataMsFilter, TbFgPressFilter, LotSummaryFilter, \
17
-        DataRlFilter, DataWbFilter, LotSummaryRlFilter, LotSummaryWbFilter, RotateDataFilter
17
+        DataRlFilter, DataWbFilter, LotSummaryRlFilter, LotSummaryWbFilter, RotateDataFilter, ManualsizeFilter
18
 from django.urls import reverse
18
 from django.urls import reverse
19
 from django.contrib import messages
19
 from django.contrib import messages
20
 from pprint import pprint
20
 from pprint import pprint
137
     delete_url_name = 'legacy:datams-delete'
137
     delete_url_name = 'legacy:datams-delete'
138
     excludes = ["splitdata"]
138
     excludes = ["splitdata"]
139
     config_field_orders = ["id", "lot_no", "code"]  # Display these fields first
139
     config_field_orders = ["id", "lot_no", "code"]  # Display these fields first
140
+    ordering = ['-id',]
140
 
141
 
141
 class TbFgPressInfoLotListCRUDView(ConfigurableCRUDView):
142
 class TbFgPressInfoLotListCRUDView(ConfigurableCRUDView):
142
     model = TbFgPressinfoLotlist
143
     model = TbFgPressinfoLotlist
321
     delete_url_name = 'legacy:datarl-delete'
322
     delete_url_name = 'legacy:datarl-delete'
322
     # excludes = ["splitdata"]
323
     # excludes = ["splitdata"]
323
     config_field_orders = ["id", "lot_no", "code"]  # Display these fields first
324
     config_field_orders = ["id", "lot_no", "code"]  # Display these fields first
325
+    ordering = ["-id"]
324
 
326
 
325
 class DataWbCRUDView(ConfigurableCRUDView):
327
 class DataWbCRUDView(ConfigurableCRUDView):
326
     model = DataWb
328
     model = DataWb
339
     delete_url_name = 'legacy:datawb-delete'
341
     delete_url_name = 'legacy:datawb-delete'
340
     # excludes = ["splitdata"]
342
     # excludes = ["splitdata"]
341
     config_field_orders = ["id", "lot_no", "code"]  # Display these fields first
343
     config_field_orders = ["id", "lot_no", "code"]  # Display these fields first
344
+    ordering = ["-id"]
342
 
345
 
343
 class LotSummaryRlCRUDView(ConfigurableCRUDView):
346
 class LotSummaryRlCRUDView(ConfigurableCRUDView):
344
     model = LotSummaryRl
347
     model = LotSummaryRl
393
     delete_url_name = 'legacy:rotate-delete'
396
     delete_url_name = 'legacy:rotate-delete'
394
     # excludes = ["splitdata"]
397
     # excludes = ["splitdata"]
395
     config_field_orders = ["id", "lot_no", "code"]  # Display these fields first
398
     config_field_orders = ["id", "lot_no", "code"]  # Display these fields first
399
+
400
+class ManualsizeCRUDView(ConfigurableCRUDView):
401
+    model = Manualsize
402
+    list_template_name = 'legacy/datacrud_list.html'
403
+    detail_template_name = 'legacy/datacrud_detail.html'
404
+    form_template_name = 'legacy/datacrud_form.html'
405
+    confirm_delete_template_name = 'legacy/datacrud_confirm_delete.html'
406
+    
407
+    filterset_class = ManualsizeFilter  # If you have a filter for this model
408
+
409
+    page_title = "Manual Size Data"
410
+
411
+    # URL name mappings
412
+    list_url_name = 'legacy:manualsize-list'
413
+    create_url_name = 'legacy:manualsize-create'
414
+    update_url_name = 'legacy:manualsize-update'
415
+    delete_url_name = 'legacy:manualsize-delete'
416
+
417
+    # Define the order of fields to be displayed
418
+    config_field_orders = ["lotno", "size_name", "std", "tolun", "tolup", "created_at", "productcode"]
419
+

BIN
app/report/~$coi_templates.xlsx


+ 1 - 0
app/sysadmin/views.py

86
     config_field_orders = ["id",]  # Display these fields first
86
     config_field_orders = ["id",]  # Display these fields first
87
     form_class = UserCustomForm
87
     form_class = UserCustomForm
88
     config_edit_fields = None
88
     config_edit_fields = None
89
+    ordering = ["-id"]

+ 3 - 0
app/templates/base.html

120
                           <li>
120
                           <li>
121
                             <a href="{% url "legacy:em-list" %}" class="flex items-center w-full p-2 text-gray-900 transition duration-75 rounded-lg pl-11 group hover:bg-gray-100 dark:text-white dark:hover:bg-gray-700">EMaster</a>
121
                             <a href="{% url "legacy:em-list" %}" class="flex items-center w-full p-2 text-gray-900 transition duration-75 rounded-lg pl-11 group hover:bg-gray-100 dark:text-white dark:hover:bg-gray-700">EMaster</a>
122
                           </li>
122
                           </li>
123
+                          <li>
124
+                            <a href="{% url "legacy:manualsize-list" %}" class="flex items-center w-full p-2 text-gray-900 transition duration-75 rounded-lg pl-11 group hover:bg-gray-100 dark:text-white dark:hover:bg-gray-700">Manual Size</a>
125
+                          </li>
123
                     </ul>
126
                     </ul>
124
                  </li>
127
                  </li>
125
                  <li>
128
                  <li>