コード例 #1
0
ファイル: order_v - Copy.php プロジェクト: OmondiKevin/ADT
		<div class="span12">
		  <ul class="nav nav-tabs">
			<li id="cdrr_btn" class="active">
				<a  href="#cdrrs">my CDRRs</a>
			</li>
			<li id="maps_btn">
				<a  href="#maps">my MAPs</a>
			</li>
			<!-- new section added for the offline modules -->
			<!-- <li id="download_templates">
				<a  href="">CDRRs and MAPs TEMPLATES</a>
			</li> -->
			<a href="#download_templates" role="button" id="updates_messagesbtn" class="btn btn-info" data-toggle="modal"> Download Templates</a>
            <!--ensure it shows when its a central site-->
            <?php 
$facility_type = Facilities::getType($this->session->userdata("facility"));
if ($facility_type > 1 && $supplier_name === "kemsa") {
    ?>
		
			<li id="aggregate_btn">
				<a  href="#aggregate">my Aggregates</a>
			</li>
			<?php 
}
?>
		  </ul>
		</div>
	</div>

<!-- modal that has the links to the cdrrs and the maps -->
	<div id="download_templates" class="modal hide fade" tabindex="-1" role="dialog" aria-lebelledby"download_templates" aria-hidden="true">
コード例 #2
0
ファイル: order.php プロジェクト: OmondiKevin/ADT
 public function getItems()
 {
     //Default row values
     $row = array('beginning_balance' => 0, 'received_from' => 0, 'dispensed_to_patients' => 0, 'losses' => 0, 'adjustments' => 0, 'adjustments_neg' => 0, 'physical_stock' => 0, 'expiry_qty' => 0, 'expiry_month' => "--", 'stock_out' => 0, 'resupply' => 0);
     //Set parameters
     $param = array("drug_id" => $this->input->post("drug_id"), "period_begin" => $this->input->post("period_begin"), "facility_id" => $this->input->post("facility_id"), "code" => $this->input->post("code"), "stores" => $this->input->post("stores"));
     $code = $param['code'];
     $facility_id = $param['facility_id'];
     $period_begin = date('Y-m-01', strtotime($param['period_begin']));
     $period_end = date('Y-m-t', strtotime($param['period_begin']));
     $stores = $param['stores'];
     $stores = implode(",", $stores);
     $stores = str_replace("multiselect-all,", "", $stores);
     $drug_id = $param['drug_id'];
     //get packsize
     $drug = Sync_Drug::getPackSize($drug_id);
     $pack_size = $drug['packsize'];
     //check whether a satellite,standalone or central site
     $facility_code = $this->session->userdata("facility");
     $facility_type = Facilities::getType($facility_code);
     $row['beginning_balance'] = $this->getBeginningBalance($param);
     $row['pack_size'] = $pack_size;
     $row = $this->getOtherTransactions($param, $row);
     if ($row['stock_out'] == null) {
         $row['stock_out'] = 0;
     }
     if ($facility_type > 1) {
         //central site
         if ($code == "D-CDRR") {
             //reported_consumed & reported_stock_on_hand
             $reported_consumed = 0;
             $reported_count = 0;
             $satellites = Sync_Facility::getSatellites($facility_id);
             foreach ($satellites as $satellite) {
                 $satellite_site = $satellite['id'];
                 $sql = "SELECT ci.drug_id,SUM(ci.dispensed_units) as consumed,SUM(ci.count) as phy_count\n\t\t\t\t\t\t    FROM cdrr c\n\t\t\t\t\t\t    LEFT JOIN cdrr_item ci ON ci.cdrr_id=c.id\n\t\t\t\t\t\t    WHERE c.period_begin='{$period_begin}' \n\t\t\t\t\t\t    AND c.period_end='{$period_end}'\n\t\t\t\t\t\t    AND ci.drug_id='{$drug_id}'\n\t\t\t\t\t\t    AND c.status LIKE '%approved%'\n\t\t\t\t\t\t    AND c.facility_id='{$satellite_site}'\n\t\t\t\t\t\t    GROUP BY ci.drug_id";
                 $query = $this->db->query($sql);
                 $results = $query->result_array();
                 if (!$results) {
                     //if satellite did not report use previous period
                     $start_date = date('Y-m-01', strtotime($period_begin . "-1 month"));
                     $end_date = date('Y-m-t', strtotime($period_end . "-1 month"));
                     $sql = "SELECT ci.drug_id,SUM(ci.dispensed_units) as consumed,SUM(ci.count) as phy_count\n\t\t\t\t\t            FROM cdrr c\n\t\t\t\t\t            LEFT JOIN cdrr_item ci ON ci.cdrr_id=c.id\n\t\t\t\t\t            WHERE c.period_begin='{$start_date}' \n\t\t\t\t\t\t\t    AND c.period_end='{$end_date}'\n\t\t\t\t\t\t\t    AND ci.drug_id='{$drug_id}'\n\t\t\t\t\t\t\t    AND c.facility_id='{$satellite_site}'\n\t\t\t\t\t\t\t    GROUP BY ci.drug_id";
                     $query = $this->db->query($sql);
                     $results = $query->result_array();
                 }
                 if ($results) {
                     $reported_consumed += @$results[0]['consumed'];
                     $reported_count += @$results[0]['phy_count'];
                 }
             }
             //append to json array
             $row['reported_consumed'] = $reported_consumed;
             $row['reported_physical_stock'] = $reported_count;
             //get issued to satellites as dispensed_to patients
             $sql = "SELECT SUM(dsm.quantity_out) AS total \n\t\t\t          FROM drug_stock_movement dsm\n\t\t\t          LEFT JOIN drugcode d ON d.id=dsm.drug\n\t\t\t          LEFT JOIN sync_drug sd ON d.map=sd.id\n\t\t\t          LEFT JOIN transaction_type t ON t.id=dsm.transaction_type\n\t\t\t          WHERE dsm.transaction_date \n\t\t\t          BETWEEN  '{$period_begin}' \n\t\t\t          AND  '{$period_end}' \n\t\t\t          AND sd.id =  '{$drug_id}'\n\t\t\t          AND t.name LIKE '%issue%'\n\t\t\t          AND dsm.ccc_store_sp IN({$stores})";
             $query = $this->db->query($sql);
             $results = $query->result_array();
             $row['dispensed_to_patients'] = 0;
             if ($results) {
                 if ($results[0]['total'] != null) {
                     $row['dispensed_to_patients'] = $results[0]['total'];
                 }
             }
         }
     }
     // Changes made on DCDRR
     if ($code == "D-CDRR") {
         foreach ($row as $i => $v) {
             $exempted_columns = array('expiry_month', 'beginning_balance', 'reported_consumed', 'reported_physical_stock');
             if (!in_array($i, $exempted_columns)) {
                 $row[$i] = round(@$v / @$pack_size);
             }
         }
         //Get Physical Count
         $row['physical_stock'] = $row['beginning_balance'] + $row['received_from'] - $row['dispensed_to_patients'] - $row['losses'] + $row['adjustments'];
         //Get Resupply
         $row['resupply'] = $row['reported_consumed'] * 3 - $row['physical_stock'];
     } else {
         $row['physical_stock'] = $row['beginning_balance'] + $row['received_from'] - $row['dispensed_to_patients'] - $row['losses'] + $row['adjustments'];
         $row['resupply'] = $row['dispensed_to_patients'] * 3 - $row['physical_stock'];
     }
     if ($code == "F-CDRR_packs") {
         foreach ($row as $i => $v) {
             if ($i != "expiry_month" && $i != "dispensed_to_patients" && $i != "beginning_balance") {
                 $row[$i] = round(@$v / @$pack_size);
             }
         }
         $row['dispensed_packs'] = 0;
         if ($row['dispensed_to_patients'] > 0) {
             $row['dispensed_packs'] = round(@$row['dispensed_to_patients'] / @$pack_size);
         }
     }
     echo json_encode($row);
 }
コード例 #3
0
 public function stock_transaction($stock_type = 1)
 {
     $data['hide_side_menu'] = 1;
     $facility_code = $this->session->userdata('facility');
     $user_id = $this->session->userdata('user_id');
     $access_level = $this->session->userdata('user_indicator');
     if ($access_level == "facility_administrator") {
         $transaction_type = Transaction_Type::getAll();
     } else {
         $transaction_type = Transaction_Type::getAllNonAdjustments();
     }
     $drug_source = Drug_Source::getAll();
     $facility_detail = facilities::getSupplier($facility_code);
     $drug_destination = Drug_Destination::getAll();
     //Check facility type(satelitte, standalone or central)
     $facility_type = Facilities::getType($facility_code);
     $get_list = array();
     $data['list_facility'] = "";
     if ($facility_type == 0) {
         //Satellite
         $central_code = facilities::getCentralCode($facility_code);
         $get_list = facilities::getCentralName($central_code);
         $data['list_facility'] = "Central Site";
     } else {
         if ($facility_type == 1) {
             //Standalone
             $get_list = array();
             $data['list_facility'] = "";
         } else {
             if ($facility_type > 1) {
                 //Central
                 $get_list = facilities::getSatellites($facility_code);
                 $data['list_facility'] = "Satelitte Sites";
             }
         }
     }
     $name = CCC_store_service_point::getCCC($stock_type);
     $name = $name['Name'];
     $data['supplier_name'] = $facility_detail->supplier->name;
     $data['picking_lists'] = "";
     $data['get_list'] = $get_list;
     $data['user_id'] = $user_id;
     $data['facility'] = $facility_code;
     $data['stock_type'] = $stock_type;
     $data['transaction_types'] = $transaction_type;
     $data['drug_sources'] = $drug_source;
     $data['drug_destinations'] = $drug_destination;
     $data['store'] = strtoupper($name);
     $data['content_view'] = "stock_transaction_v";
     $this->base_params($data);
 }