public function create_order($type = "cdrr", $order_type, $content_array = array()) { $data['hide_generate'] = 0; $data['hide_save'] = 0; $data['hide_btn'] = 0; $data['stand_alone'] = 0; if ($type == "cdrr") { $this->session->set_userdata("order_go_back", "cdrr"); $data['hide_side_menu'] = 0; $data['options'] = "none"; if ($order_type == 0) { //satellite $data['page_title'] = "Satellite Facility(F-CDRR)"; $data['banner_text'] = "Satellite Facility(F-CDRR)"; $facility = $this->input->post("satellite_facility", TRUE); if ($facility == null) { $facility = $this->session->userdata("facility"); } else { $data['hide_generate'] = 1; } } else { if ($order_type == 1) { //standalone $data['page_title'] = "Stand-alone(F-CDRR)"; $data['banner_text'] = "Stand-alone(F-CDRR)"; $facility = $this->session->userdata("facility"); $data['stand_alone'] = 1; } else { if ($order_type == 2) { //dispensing_point $data['page_title'] = "Central Dispensing Point(F-CDRR)"; $data['banner_text'] = "Central Dispensing Point(F-CDRR)"; $facility = $this->session->userdata("facility"); $order_type = 0; } else { //aggregate $data['page_title'] = "Central Aggregate(D-CDRR)"; $data['banner_text'] = "Central Aggregate(D-CDRR)"; $data['hide_generate'] = 2; $facility = $this->session->userdata("facility"); } } } if (!empty($content_array)) { $cdrr_array = $content_array; $data['cdrr_array'] = $cdrr_array['cdrr_array']; $data['status_name'] = strtolower($cdrr_array['cdrr_array'][0]['status_name']); $facility_id = $cdrr_array['cdrr_array'][0]['facility_id']; $data['facility_id'] = $facility_id; $facilities = Sync_Facility::getCode($facility_id, $order_type); $facility = $facilities['code']; $code = $cdrr_array['cdrr_array'][0]['code']; $code = $this->getDummyCode($code, $order_type); $data['options'] = $cdrr_array['options']; if ($data['options'] == "view") { $data['hide_save'] = 1; } $data['hide_btn'] = 1; $cdrr_id = $cdrr_array['cdrr_array'][0]['cdrr_id']; $data['cdrr_id'] = $cdrr_id; $data['logs'] = Cdrr_Log::getLogs($cdrr_id); if ($data['options'] == "view" || $data['options'] == "update") { if ($data['status_name'] == "prepared" || $data['status_name'] == "review") { $data['option_links'] = "<li class='active'><a href='" . site_url("order/view_order/cdrr/" . $cdrr_id) . "'>view</a></li><li><a href='" . site_url("order/update_order/cdrr/" . $cdrr_id) . "'>update</a></li><li><a class='delete' href='" . site_url("order/delete_order/cdrr/" . $cdrr_id) . "'>delete</a></li>"; } else { $data['option_links'] = "<li class='active'><a href='" . site_url("order/view_order/cdrr/" . $cdrr_id) . "'>view</a></li>"; } } if ($code == 0) { $and = ""; } else { $and = "AND ci.resupply !='0'"; } if ($cdrr_array['options'] == "update") { $data['commodities'] = Sync_Drug::getActiveList(); } else { $sql = "SELECT sd.id,CONCAT_WS('] ',CONCAT_WS(' [',name,abbreviation),CONCAT_WS(' ',strength,formulation)) as Drug,unit as Unit_Name,packsize as Pack_Size,category_id as Category\n\t\t\t FROM cdrr_item ci\n\t\t\t LEFT JOIN sync_drug sd ON sd.id=ci.drug_id\n\t\t\t WHERE ci.cdrr_id='{$cdrr_id}'\n\t\t\t AND(sd.category_id='1' OR sd.category_id='2' OR sd.category_id='3')"; $query = $this->db->query($sql); $data['commodities'] = $query->result(); } } else { $period_start = date('Y-m-01', strtotime(date('Y-m-d') . "-1 month")); $period_end = date('Y-m-t', strtotime(date('Y-m-d') . "-1 month")); $code = $this->getActualCode($order_type, $type); $facilities = Sync_Facility::getId($facility, $order_type); $duplicate = $this->check_duplicate($code, $period_start, $period_end, $facilities['id'], $type); $data['commodities'] = Sync_Drug::getActiveList(); $data['duplicate'] = $duplicate; } $facilities = Sync_Facility::getId($facility, $order_type); $data['facility_id'] = $facilities['id']; $data['facility_object'] = Facilities::getCodeFacility($facility); $data['content_view'] = "orders/cdrr_template"; $data['report_type'] = $order_type; $data['stores'] = CCC_store_service_point::getStoreGroups(); $this->base_params($data); } else { if ($type == "maps") { $this->session->set_userdata("order_go_back", "fmaps"); $data['o_type'] = "FMAP"; $data['options'] = "none"; $data["is_update"] = 0; $data["is_view"] = 0; if ($order_type == 0) { //satellite $facility_code = $this->input->post("satellite_facility", TRUE); $data['page_title'] = "Satellite Facility(F-MAPS)"; $data['banner_text'] = "Satellite Facility(F-MAPS)"; if ($facility_code == null) { $facility_code = $this->session->userdata("facility"); } else { $data['hide_generate'] = 1; } } else { if ($order_type == 1) { //standalone $facility_code = $this->session->userdata('facility'); $facility_id = $this->session->userdata('facility_id'); $data['commodities'] = Sync_Drug::getActiveList(); $data['page_title'] = "Stand-Alone MAPS"; $data['banner_text'] = "Maps Form"; } else { if ($order_type == 2) { //dispensing_point $facility_code = $this->session->userdata('facility'); $facility_id = $this->session->userdata('facility_id'); $data['commodities'] = Sync_Drug::getActiveList(); $data['page_title'] = "Central Dispensing Point"; $data['banner_text'] = "Maps Form"; $order_type = 0; } else { //aggregate $facility_code = $this->session->userdata('facility'); $data['page_title'] = "Aggregate Maps List"; $facility = Facilities::getParent($facility_code); $parent_code = $facility['parent']; if ($parent_code == $facility_code) { //Check if button was clicked to start new aggregate order $data['hide_generate'] = 2; } $data['banner_text'] = "Aggregate Maps List"; } } } if (!empty($content_array)) { $fmaps_array = $content_array; $data['fmaps_array'] = $fmaps_array['fmaps_array']; $facility_id = $fmaps_array['fmaps_array'][0]['facility_id']; $data['facility_id'] = $facility_id; $facilities = Sync_Facility::getCode($facility_id, $order_type); $facility_code = $facilities['code']; $code = $fmaps_array['fmaps_array'][0]['code']; $code = $this->getDummyCode($code, $order_type); //Central or Satellite or Aggregate $data['status'] = strtolower($fmaps_array['fmaps_array'][0]['status_name']); $data['created'] = $fmaps_array['fmaps_array'][0]['created']; // Pending, Approved, ... $data['options'] = $fmaps_array['options']; $data['hide_btn'] = 1; $maps_id = $fmaps_array['fmaps_array'][0]['maps_id']; //Complet id with # $map_id = $fmaps_array['fmaps_array'][0]['map_id']; //Id from DB $data['maps_id'] = $maps_id; $data['map_id'] = $map_id; $data['logs'] = Maps_Log::getMapLogs($map_id); if ($data['options'] == "view") { $data['hide_save'] = 1; $regimen_table = 'sync_regimen'; $regimen_cat_table = 'sync_regimen_category'; $regimen_code = 'r.code'; $regimen_desc = 'r.name as description'; $regimen_cat_join = 'r.category_id'; $regimen_join = 'mi.regimen_id=r.id'; $sql_regimen = "SELECT rc.id,r.id as reg_id,rc.Name as name,{$regimen_code},{$regimen_desc},{$regimen_cat_join},mi.total\n\t\t\t\t\t\t\t\t\tFROM {$regimen_table} r\n\t\t\t\t\t\t\t\t\tLEFT JOIN {$regimen_cat_table} rc ON rc.id = {$regimen_cat_join}\n\t\t\t\t\t\t\t\t\tLEFT JOIN maps_item mi ON {$regimen_join}\n\t\t\t\t\t\t\t\t\tWHERE maps_id='{$map_id}'"; $query_regimen = $this->db->query($sql_regimen); $regimen_array = $query_regimen->result_array(); $regimen_categories = array(); foreach ($regimen_array as $value) { $regimen_categories[] = $value['name']; } $regimen_categories = array_unique($regimen_categories); $data['regimen_categories'] = $regimen_categories; $data['regimen_array'] = $regimen_array; } if ($data['options'] == "update") { $data["is_update"] = 1; $data['regimen_categories'] = Sync_Regimen_Category::getAll(); } else { $data["is_view"] = 1; $data['regimens'] = Maps_Item::getOrderItems($maps_id); } } else { $data['regimen_categories'] = Sync_Regimen_Category::getAll(); $period_start = date('Y-m-01', strtotime(date('Y-m-d') . "-1 month")); $period_end = date('Y-m-t', strtotime(date('Y-m-d') . "-1 month")); $code = $this->getActualCode($order_type, $type); $facilities = Sync_Facility::getId($facility_code, $order_type); $duplicate = $this->check_duplicate($code, $period_start, $period_end, $facilities['id'], $type); $data['duplicate'] = $duplicate; } $facilities = Sync_Facility::getId($facility_code, $order_type); $data['facility_id'] = $facilities['id']; $data['content_view'] = "orders/fmap_template"; $data['report_type'] = $order_type; $data['facility_object'] = Facilities::getCodeFacility($facility_code); $this->base_params($data); } } }