This commit is contained in:
Sanjeev 2021-03-20 19:11:36 +05:30
commit d4485cc330
4 changed files with 138 additions and 2 deletions

View File

@ -105,6 +105,7 @@ $route['updateExistUser'] = 'User_Management_Controller/updateExistUser';
$route['getUsersDetails'] = 'User_Management_Controller/getUsersDetails';
$route['getSingedProfilePicURL'] = 'User_Management_Controller/getSingedProfilePicURL';
$route['checkpin'] = 'User_Management_Controller/checkpin';
$route['saveOrUpdateUserConfig'] = 'User_Management_Controller/saveOrUpdateUserConfig';
// TEMPLATE MANAGEMENT
$route['(listAllTemplates/:any)'] = 'Template_Management_Controller/listAllTemplates/';

View File

@ -429,4 +429,113 @@ class User_Management_Controller extends REST_Controller {
}
}
/** USER CONFIGURATION SAVE AND UPDATE API
* @PARAM post params sales_products, state mapping -- currently implemented for MWISE LENDER only
*/
public function saveOrUpdateUserConfig_post() {
if($this->post('user_id')) {
$user_id = $this->post('user_id');
$user_config = $this->User_Management_Model->getUserConfigDetails($user_id);
// print_r($user_config);
// die();
$salesproduct_msg = "";
$rcmstate_msg = "";
/** FOR SALES PD PRODUCTS ADD AND UPDATE */
if($this->post('salespd_products')){
$salespd_products = $this->post('salespd_products');
if($salespd_products && !empty($salespd_products))
{
$salespd_products = (implode(',',$salespd_products));
$arr = array('fk_user_id' => $user_id,'config_type' => 1,'data' => $salespd_products);
$this->db->set($arr);
if(!$user_config || !array_key_exists('salespd_products',$user_config) || empty($user_config['salespd_products'])) {
$res = $this->db->insert(USERCONFIG);
$salesproduct_msg = "Sales Products Added";
}
else{
$this->db->where('fk_user_id',$user_id);
$res = $this->db->update(USERCONFIG);
$salesproduct_msg = "Sales Products Updated";
}
// print_r($res);
}
}
/** END OF SALES PD PRODUCTS ADD AND UPDATE */
/** FOR INSERTING THE RCM STATE MAPPING DATA */
if($this->post('rcm_state_mapping')){
$rcm_state_mapping = $this->post('rcm_state_mapping');
}
if($rcm_state_mapping && !empty($rcm_state_mapping)) {
if(!$user_config || !array_key_exists('rcm_state_mapping',$user_config) || empty($user_config['rcm_state_mapping'])) {
}
else {
$intersect_value = array_intersect($rcm_state_mapping,$user_config['rcm_state_mapping']);
if(!empty($intersect_value)) {
foreach( $intersect_value as $key => $value) {
$key = (float) array_search($value,$rcm_state_mapping);
unset($rcm_state_mapping[$key]);
$key = (float) array_search($value,$user_config['rcm_state_mapping']);
unset($user_config['rcm_state_mapping'][$key]);
}
if(!empty($user_config['rcm_state_mapping'])) {
$this->User_Management_Model->deactivateDataOnRcmStateMapping($user_id,$user_config['rcm_state_mapping']);
$rcmstate_msg = "RCM States Modified";
}
}
// print_r($rcm_state_mapping);
// die();
if(!empty($rcm_state_mapping)) {
$insert_value = array();
foreach($rcm_state_mapping as $key=>$value) {
if($value) {
array_push($insert_value,(object)[
"fk_user_id" => $user_id,
"fk_state_id" => $value,
"isactive" => "1"
]);
}
}
if(!empty($insert_value)) {
$res = $this->db->insert_batch(RCM_STATE_MAPPING,$insert_value);
$rcmstate_msg = "RCM States Added";
}
}
// echo "\n old data \n";
// print_r($user_config['rcm_state_mapping']);
// echo "new data";
// print_r($rcm_state_mapping);
// die();
}
}
/** END OF INSERTING THE RCM STATE MAPPING DATA */
$response_msg = salesproduct_msg ? $salesproduct_msg : '';
$response_msg.= $response_msg && $rcmstate_msg ? ' and '.$rcmstate_msg : $rcmstate_msg ? ' '.$rcmstate_msg : '';
$data['dataStatus'] = true;
$data['status'] = REST_Controller::HTTP_OK;
$data['msg'] = $response_msg." Successully";
$this->response($data,REST_Controller::HTTP_OK);
/** FOR GETTING SALES PRODUCTS */
// $user_id = $this->post('user_id');
// $user_config = $this->User_Management_Model->getUserConfigDetails($user_id);
// print_r($user_config);
}
else {
$data['dataStatus'] = false;
$data['status'] = REST_Controller::HTTP_NOT_FOUND;
$data['msg'] = 'User Not Found';
$this->response($data,REST_Controller::HTTP_NOT_FOUND);
}
}
}

View File

@ -1416,7 +1416,7 @@ class PD_Model extends SPARQ_Model {
{
if($val['form_id'] == 10)
{
$template_forms[$k]['form_name'] = 'Facility Details';
$template_forms[$k]['form_name'] = 'Facility & Anchor Details Section';
break;
}
}

View File

@ -123,7 +123,23 @@ class User_Management_Model extends SPARQ_Model {
}
}
/** FOR GETTING THE RCM STATE MAPPING DATA BY ACTIVE USER ID */
$this->db->select('*');
$this->db->where('RCM_STATE_MAPPING.fk_user_id',$userid);
$this->db->where('RCM_STATE_MAPPING.isactive',1);
$state_mapping_result = $this->db->get(RCM_STATE_MAPPING.' as RCM_STATE_MAPPING')->result_array();
// print_r($state_mapping_result);
// die();
if(count($state_mapping_result) != 0) {
$return_data['rcm_state_mapping'] = array();
foreach($state_mapping_result as $key => $value)
{
array_push($return_data['rcm_state_mapping'],$value['fk_state_id']);
}
}
/** END OF GETTING THE RCM STATE MAPPING DATA BY ACTIVE USER ID */
return $return_data;
@ -147,4 +163,14 @@ class User_Management_Model extends SPARQ_Model {
return $result_data;
}
}
public function deactivateDataOnRcmStateMapping($userid,$data_arr) {
echo "inside function";
foreach($data_arr as $key => $value) {
$this->db->set(array('isactive' => 0));
$this->db->where('fk_user_id',$userid);
$this->db->where('fk_state_id',$value);
$this->db->update(RCM_STATE_MAPPING);
}
}
}