Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Sign in
Toggle navigation
R
red-ci-cd
Project overview
Project overview
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
red-group-test
red-ci-cd
Commits
2e2e1daa
Commit
2e2e1daa
authored
Mar 17, 2020
by
John Red Medrano
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
added endpoint for asset and asset stock list
parent
8ce8f8a2
Changes
9
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
123 additions
and
129 deletions
+123
-129
app/applicationlayer/ams/asset/serializers.py
app/applicationlayer/ams/asset/serializers.py
+1
-8
app/applicationlayer/ams/asset_stock/serializers.py
app/applicationlayer/ams/asset_stock/serializers.py
+17
-0
app/applicationlayer/ams/asset_stock/table_filters.py
app/applicationlayer/ams/asset_stock/table_filters.py
+9
-0
app/applicationlayer/ams/asset_stock/views.py
app/applicationlayer/ams/asset_stock/views.py
+90
-0
app/applicationlayer/ams/asset_stock_detail/serializers.py
app/applicationlayer/ams/asset_stock_detail/serializers.py
+0
-22
app/applicationlayer/ams/asset_stock_detail/table_filters.py
app/applicationlayer/ams/asset_stock_detail/table_filters.py
+0
-9
app/applicationlayer/ams/asset_stock_detail/views.py
app/applicationlayer/ams/asset_stock_detail/views.py
+0
-88
app/applicationlayer/ams/urls_ams.py
app/applicationlayer/ams/urls_ams.py
+2
-0
app/entities/models.py
app/entities/models.py
+4
-2
No files found.
app/applicationlayer/ams/asset/serializers.py
View file @
2e2e1daa
...
...
@@ -15,11 +15,4 @@ class AMSAssetSerializer(serializers.ModelSerializer):
class
Meta
:
model
=
AMSAsset
fields
=
(
'code'
'name'
,
'asset_type'
,
)
read_only_fields
=
(
'created'
,
)
\ No newline at end of file
fields
=
'__all__'
app/applicationlayer/ams/asset_stock/serializers.py
View file @
2e2e1daa
from
app.entities.models
import
AMSAssetStock
from
rest_framework
import
serializers
class
AMSAssetStockSerializer
(
serializers
.
ModelSerializer
):
def
to_representation
(
self
,
instance
):
ret
=
super
()
.
to_representation
(
instance
)
ret
[
'asset_group'
]
=
instance
.
asset_group
.
name
ret
[
'asset'
]
=
instance
.
asset
.
name
ret
[
'asset_type'
]
=
instance
.
asset
.
asset_type
.
name
return
ret
class
Meta
:
model
=
AMSAssetStock
fields
=
'__all__'
\ No newline at end of file
app/applicationlayer/ams/asset_stock/table_filters.py
View file @
2e2e1daa
from
django_filters
import
rest_framework
as
filters
from
app.entities.models
import
AMSAssetStock
class
AMSAssetStockFilter
(
filters
.
FilterSet
):
class
Meta
:
model
=
AMSAssetStock
fields
=
'__all__'
\ No newline at end of file
app/applicationlayer/ams/asset_stock/views.py
View file @
2e2e1daa
from
app.entities.models
import
AMSAssetStock
from
rest_framework
import
viewsets
,
status
from
rest_framework.response
import
Response
from
django_filters
import
rest_framework
as
filters
from
django_filters.rest_framework
import
DjangoFilterBackend
from
rest_framework.filters
import
SearchFilter
,
OrderingFilter
from
app.applicationlayer.ams.asset_stock.table_filters
import
AMSAssetStockFilter
from
app.applicationlayer.ams.asset_stock
import
serializers
from
django.db
import
transaction
from
app.applicationlayer.utils
import
(
CustomPagination
,
status_message_response
)
class
AMSAssetStockViewSet
(
viewsets
.
ModelViewSet
):
queryset
=
AMSAssetStock
.
objects
.
all
()
serializer_class
=
serializers
.
AMSAssetStockSerializer
pagination_class
=
CustomPagination
lookup_field
=
'code'
filter_backends
=
(
DjangoFilterBackend
,
SearchFilter
,
OrderingFilter
)
ordering_fields
=
'__all__'
search_filter
=
(
'code'
,
'name'
,
'asset_group__name'
,
'asset__name'
,
'asset_type__name'
,
)
def
list
(
self
,
request
,
*
args
,
**
kwargs
):
queryset
=
self
.
filter_queryset
(
self
.
get_queryset
())
page
=
self
.
paginate_queryset
(
queryset
)
if
page
is
not
None
:
serializer
=
self
.
get_serializer
(
page
,
many
=
True
)
message
=
status_message_response
(
200
,
'success'
,
'List of Asset Stock list found!'
,
serializer
.
data
)
return
self
.
get_paginated_response
(
message
)
serializer
=
self
.
get_serializer
(
self
.
queryset
,
many
=
True
)
return
Response
(
serializer
.
data
,
status
=
status
.
HTTP_200_OK
)
@
transaction
.
atomic
def
create
(
self
,
request
,
*
args
,
**
kwargs
):
serializer
=
self
.
get_serializer
(
data
=
request
.
data
)
serializer
.
is_valid
(
raise_exception
=
True
)
self
.
perform_create
(
serializer
)
message
=
status_message_response
(
201
,
'success'
,
'New Asset Stock created'
,
serializer
.
data
)
return
Response
(
message
)
def
retrieve
(
self
,
request
,
*
args
,
**
kwargs
):
instance
=
self
.
get_object
()
serializer
=
self
.
get_serializer
(
instance
)
return
Response
(
serializer
.
data
)
@
transaction
.
atomic
def
destroy
(
self
,
request
,
*
args
,
**
kwargs
):
instance
=
self
.
get_object
()
self
.
perform_destroy
(
instance
)
return
Response
(
status
=
status
.
HTTP_204_NO_CONTENT
)
app/applicationlayer/ams/asset_stock_detail/serializers.py
deleted
100644 → 0
View file @
8ce8f8a2
from
app.entities.models
import
AMSAsset
from
rest_framework
import
serializers
class
AMSAssetSerializer
(
serializers
.
ModelSerializer
):
def
to_representation
(
self
,
instance
):
ret
=
super
()
.
to_representation
(
instance
)
ret
[
'asset_type'
]
=
instance
.
asset_type
.
name
return
ret
class
Meta
:
model
=
AMSAsset
fields
=
(
'code'
'name'
,
'asset_type'
,
)
read_only_fields
=
(
'created'
,
)
\ No newline at end of file
app/applicationlayer/ams/asset_stock_detail/table_filters.py
deleted
100644 → 0
View file @
8ce8f8a2
from
django_filters
import
rest_framework
as
filters
from
app.entities.models
import
AMSAsset
class
AMSAssetFilter
(
filters
.
FilterSet
):
class
Meta
:
model
=
AMSAsset
fields
=
'__all__'
\ No newline at end of file
app/applicationlayer/ams/asset_stock_detail/views.py
deleted
100644 → 0
View file @
8ce8f8a2
from
app.entities.models
import
AMSAsset
from
rest_framework
import
viewsets
,
status
from
rest_framework.response
import
Response
from
django_filters
import
rest_framework
as
filters
from
django_filters.rest_framework
import
DjangoFilterBackend
from
rest_framework.filters
import
SearchFilter
,
OrderingFilter
from
app.applicationlayer.ams.asset.table_filters
import
AMSAssetFilter
from
app.applicationlayer.ams.asset
import
serializers
from
django.db
import
transaction
from
app.applicationlayer.utils
import
(
CustomPagination
,
status_message_response
)
class
AMSAssetViewSet
(
viewsets
.
ModelViewSet
):
queryset
=
AMSAsset
.
objects
.
all
()
serializer_class
=
serializers
.
AMSAssetSerializer
pagination_class
=
CustomPagination
lookup_field
=
'code'
filter_backends
=
(
DjangoFilterBackend
,
SearchFilter
,
OrderingFilter
)
ordering_fields
=
'__all__'
search_filter
=
(
'code'
,
'name'
,
'asset_type__name'
)
def
list
(
self
,
request
,
*
args
,
**
kwargs
):
queryset
=
self
.
filter_queryset
(
self
.
get_queryset
())
page
=
self
.
paginate_queryset
(
queryset
)
if
page
is
not
None
:
serializer
=
self
.
get_serializer
(
page
,
many
=
True
)
message
=
status_message_response
(
200
,
'success'
,
'List of Asset found!'
,
serializer
.
data
)
return
self
.
get_paginated_response
(
message
)
serializer
=
self
.
get_serializer
(
self
.
queryset
,
many
=
True
)
return
Response
(
serializer
.
data
,
status
=
status
.
HTTP_200_OK
)
@
transaction
.
atomic
def
create
(
self
,
request
,
*
args
,
**
kwargs
):
serializer
=
self
.
get_serializer
(
data
=
request
.
data
)
serializer
.
is_valid
(
raise_exception
=
True
)
self
.
perform_create
(
serializer
)
message
=
status_message_response
(
201
,
'success'
,
'New Asset created'
,
serializer
.
data
)
return
Response
(
message
)
def
retrieve
(
self
,
request
,
*
args
,
**
kwargs
):
instance
=
self
.
get_object
()
serializer
=
self
.
get_serializer
(
instance
)
return
Response
(
serializer
.
data
)
@
transaction
.
atomic
def
destroy
(
self
,
request
,
*
args
,
**
kwargs
):
instance
=
self
.
get_object
()
self
.
perform_destroy
(
instance
)
return
Response
(
status
=
status
.
HTTP_204_NO_CONTENT
)
app/applicationlayer/ams/urls_ams.py
View file @
2e2e1daa
...
...
@@ -8,6 +8,7 @@ from app.applicationlayer.ams.ams_privilege import views as amsprivilege
from
app.applicationlayer.ams.ams_user_type.views
import
AMSUserTypeViewSet
from
app.applicationlayer.ams.asset_type
import
views
as
assettype
from
app.applicationlayer.ams.asset.views
import
AMSAssetViewSet
from
app.applicationlayer.ams.asset_stock.views
import
AMSAssetStockViewSet
router
=
routers
.
DefaultRouter
()
...
...
@@ -15,6 +16,7 @@ router.register(r'asset-group', assetgroup.AssetGroupViewset)
router
.
register
(
r'asset-type'
,
assettype
.
AssetTypeViewset
)
router
.
register
(
r'ams-privilege'
,
amsprivilege
.
AMSPrivilegeViewSet
)
router
.
register
(
r'assets'
,
AMSAssetViewSet
)
router
.
register
(
r'assets-stock-list'
,
AMSAssetStockViewSet
)
urlpatterns
=
[
path
(
''
,
include
(
router
.
urls
)),
...
...
app/entities/models.py
View file @
2e2e1daa
...
...
@@ -1347,7 +1347,8 @@ class AMSAsset(models.Model):
code
=
models
.
CharField
(
unique
=
True
,
max_length
=
255
)
max_length
=
255
,
default
=
''
)
name
=
models
.
CharField
(
unique
=
True
,
max_length
=
255
)
...
...
@@ -1391,7 +1392,8 @@ class AMSAssetStock(models.Model):
code
=
models
.
CharField
(
unique
=
True
,
max_length
=
255
)
max_length
=
255
,
default
=
''
)
unique_identifier
=
models
.
CharField
(
unique
=
True
,
max_length
=
255
)
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment