Skip to content

Commit

Permalink
Merge pull request #1017 from MetaPhase-Consulting/6123-TM_6126-TM_re…
Browse files Browse the repository at this point in the history
…_integrate_projected_vacancy

TM-6123, TM-6126, Re-Interate Projected Vacancy
  • Loading branch information
M00staff committed Jun 11, 2024
2 parents 16c4a05 + 683af9e commit 1dda339
Show file tree
Hide file tree
Showing 2 changed files with 39 additions and 75 deletions.
80 changes: 34 additions & 46 deletions talentmap_api/fsbid/services/admin_projected_vacancies.py
Original file line number Diff line number Diff line change
Expand Up @@ -183,63 +183,51 @@ def admin_projected_vacancy_req_mapping(query):

def admin_projected_vacancy_res_mapping(response):
# return service_response(response, 'Projected Vacancy List')
return {
**response,
"combinedppgrade": combine_pp_grade(response.pospayplancode, response.posgradecode),
}
return {
**response,
"combinedppgrade": combine_pp_grade(response.get("pospayplancode"), response.get("posgradecode")),
}


# ======================== Edit PV ========================

def edit_admin_projected_vacancy(data, jwt_token):
def edit_admin_projected_vacancy(query, jwt_token):
'''
Edit Admin Projected Vacancy
'''
fvseqnum = query.get("data")
args = {
"proc_name": 'PRC_IUD_FUTURE_VACANCY',
"package_name": 'PKG_WEBAPI_WRAP_SPRINT98',
"request_mapping_function": edit_admin_projected_vacancy_req_mapping,
"response_mapping_function": edit_admin_projected_vacancy_res_mapping,
"uri": f"v1/futureVacancies/{fvseqnum}",
"query": query,
"query_mapping_function": convert_admin_projected_vacancy_edit_query,
"jwt_token": jwt_token,
"request_body": data,
"mapping_function": None,
}
return services.send_post_back_office(
**args
)
return services.send_put_request(**args)

def edit_admin_projected_vacancy_req_mapping(request):
pvData = []
for pv in request:
pvData.append({
'FV_SEQ_NUM': pv.get('future_vacancy_seq_num'),
# 'FV_SEQ_NUM_REF': pv.get('future_vacancy_seq_num_ref'),
'POS_SEQ_NUM': pv.get('position_seq_num'),
'BSN_ID': pv.get('bid_season_code'),
# 'ASG_SEQ_NUM_EF': pv.get('assignment_seq_num_effective'),
# 'ASG_SEQ_NUM': pv.get('assignment_seq_num'),
# 'CDT_CD': pv.get('cycle_date_type_code'),
'FVS_CODE': pv.get('future_vacancy_status_code'),
# 'FVO_CODE': pv.get('future_vacancy_override_code'),
'FV_OVERRIDE_TED_DATE': pv.get('future_vacancy_override_tour_end_date'),
# 'FV_SYSTEM_IND': pv.get('future_vacancy_system_indicator'),
# 'FV_COMMENT_TXT': pv.get('future_vacancy_comment'),
# 'FV_CREATE_ID': pv.get('creator_id'),
# 'FV_CREATE_DATE': pv.get('created_date'),
# 'FV_UPDATE_ID': pv.get('updater_id'),
# 'FV_UPDATE_DATE': pv.get('updated_date'),
# 'FV_MC_IND': pv.get('future_vacancy_mc_indicator'),
'FV_EXCL_IMPORT_IND': pv.get('future_vacancy_exclude_import_indicator'),
})
return {
'PV_API_VERSION_I': '',
'PV_AD_ID_I': '',
'pv_action_i': 'U',
'pjson_fv_i': {
'Data': pvData
}
}

def edit_admin_projected_vacancy_res_mapping(data):
return service_response(data, 'Projected Vacancy Edit')
def convert_admin_projected_vacancy_edit_query(query):
values = {
"fvfvscode": query.get("future_vacancy_status_code"),
"fvoverrideteddate": query.get("future_vacancy_override_tour_end_date"),
"fvbsnid": int(query.get("future_vacancy_bid_season_code")),
"fvcommenttxt": query.get("future_vacancy_comment_text"),
"fvexclimportind": query.get("future_vacancy_exclude_import_indicator"),
"fvseqnum": query.get("fvseqnum"),
"fvseqnumref": query.get("fvfvseqnumref"),
"fvposseqnum": query.get("fvposseqnum"),
"fvasgseqnumef": query.get("fvasgseqnumef"),
"fvasgseqnum": query.get("fvasgseqnum"),
"fvcdtcd": query.get("fvcdtcd"),
"fvfvocode": query.get("fvfvocode"),
"fvsystemind": query.get("fvsystemind"),
"fvcreateid": query.get("fvcreateid"),
"fvcreatedate": query.get("fvcreatedate", "").replace("T", " "),
"fvupdateid": query.get("fvupdateid"),
"fvupdatedate": query.get("fvupdatedate", "").replace("T", " "),
"fvmcind": query.get("fvmcind"),
}
return values

# ======================== Edit PV Language Offsets ========================

Expand Down
34 changes: 5 additions & 29 deletions talentmap_api/fsbid/views/admin_projected_vacancies.py
Original file line number Diff line number Diff line change
Expand Up @@ -73,37 +73,12 @@ def get(self, request):
return Response(status=status.HTTP_404_NOT_FOUND)
return Response(result)


class FSBidAdminProjectedVacancyActionsView(APIView):

# ======================== Edit PV ========================

permission_classes = [IsAuthenticated, Or(isDjangoGroupMember('bureau_user'), isDjangoGroupMember('superuser'), ) ]
# ======================== Edit PV ========================

@swagger_auto_schema(request_body=openapi.Schema(
type=openapi.TYPE_ARRAY, items=openapi.Items(
type=openapi.TYPE_OBJECT,
properties={
'future_vacancy_seq_num': openapi.Schema(type=openapi.TYPE_STRING, description='Projected Vacancy Seq Num'),
'future_vacancy_seq_num_ref': openapi.Schema(type=openapi.TYPE_STRING, description='Projected Vacancy Seq Num Reference'),
'position_seq_num': openapi.Schema(type=openapi.TYPE_STRING, description='Position Seq Num'),
'bid_season_code': openapi.Schema(type=openapi.TYPE_STRING, description='Bid Season Code'),
'assignment_seq_num_effective': openapi.Schema(type=openapi.TYPE_STRING, description='Assignment Seq Num Effective'),
'assignment_seq_num': openapi.Schema(type=openapi.TYPE_STRING, description='Assignment Seq Num'),
'cycle_date_type_code': openapi.Schema(type=openapi.TYPE_STRING, description='Cycle Date Type Code'),
'future_vacancy_status_code': openapi.Schema(type=openapi.TYPE_STRING, description='Status Code'),
'future_vacancy_override_code': openapi.Schema(type=openapi.TYPE_STRING, description='Override Code'),
'future_vacancy_override_tour_end_date': openapi.Schema(type=openapi.TYPE_STRING, description='Override TED'),
'future_vacancy_system_indicator': openapi.Schema(type=openapi.TYPE_STRING, description='System Indicator'),
'future_vacancy_comment': openapi.Schema(type=openapi.TYPE_STRING, description='Comment'),
'created_date': openapi.Schema(type=openapi.TYPE_STRING, description='Created Date'),
'creator_id': openapi.Schema(type=openapi.TYPE_STRING, description='Creator ID'),
'updater_id': openapi.Schema(type=openapi.TYPE_STRING, description='Updater ID'),
'updated_date': openapi.Schema(type=openapi.TYPE_STRING, description='Updated Date'),
'future_vacancy_mc_indicator': openapi.Schema(type=openapi.TYPE_STRING, description='MC Indicator'),
'future_vacancy_exclude_import_indicator': openapi.Schema(type=openapi.TYPE_STRING, description='Exclude Import Indicator'),
}
), description='Projected Vacancy'
))
permission_classes = [IsAuthenticated, Or(isDjangoGroupMember('bureau_user'), isDjangoGroupMember('superuser'), )]

def put(self, request):
'''
Expand All @@ -114,7 +89,8 @@ def put(self, request):
return Response(status=status.HTTP_404_NOT_FOUND)

return Response(status=status.HTTP_204_NO_CONTENT)



class FSBidAdminProjectedVacancyEditLangOffsetsView(APIView):

# ======================== Edit PV Language Offsets ========================
Expand Down

0 comments on commit 1dda339

Please sign in to comment.