/var/www/enzatesting.onesolution.hk/ord_setd_checkin.php


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
<?php 
$formid 
"Order";
require_once 
"inc/configure.php";

function 
seto_checkin($orddtl_refid$opr_param){
    
//write tx details to $param['subtable']
    
global $dbh;        
    
$sql "INSERT INTO ord_txseto (
                txmain_refid, moldno, worker, worker_sign,
                checkin_time, checkin_wt, txqty, itemno,
                createby, createdate, lastupby, lastupdate
            ) VALUES (
                :txmain_refid, :moldno, :worker, :worker_sign,
                GETDATE(), :checkin_wt, :txqty, :itemno,
                :createby, GETDATE(), :lastupby, GETDATE()
            )"
;
    
$sth $dbh->prepare($sql);
    
$q $sth->execute(  array( ':txmain_refid' => $opr_param['txmain_refid'],                                             
                            
':moldno' => $opr_param['moldno'],
                            
':worker' => $opr_param['worker'], 
                            
':worker_sign' => $opr_param['worker_sign'],    
                            
':checkin_wt' => $opr_param['checkin_wt'], 
                            
':txqty' => $opr_param['txqty'],
                            
':itemno' => 'ALL',                                             
                            
':createby' => $opr_param['createby'],
                            
':lastupby' => $opr_param['lastupby']) );    
/*    echo $sth->getSQL( array( ':txmain_refid' => $opr_param['txmain_refid'],                                             
                            ':moldno' => $opr_param['moldno'],
                            ':worker' => $opr_param['worker'], 
                            ':worker_sign' => $opr_param['worker_sign'],    
                            ':checkin_wt' => $opr_param['checkin_wt'], 
                            ':txqty' => $opr_param['txqty'],    
                            ':itemno' => 'ALL',                                             
                            ':createby' => $opr_param['createby'],
                            ':lastupby' => $opr_param['lastupby']) );    */    
    
pdo_showerror($sth$q);                                                
                                           
}

$refid                 = (int) filter_var($_REQUEST['refid'], FILTER_SANITIZE_STRING);
//$txmain_refid         = (int) filter_var($_REQUEST['txmain_refid'], FILTER_SANITIZE_STRING);

if( $_POST['action']=="ord_setd_checkin" && !empty($refid) ){
    
//vdump($_REQUEST); //exit;    
    
    
$opr_param['opr_code']    = "SETO";
    
//check the job card status to ensure the JC is ready to checkin, old fn: oprReadyForCheckin
    
$opr oprReadyForCheckin($refid$opr_param$status);
    
//vdump($opr); exit;
    
if($opr === false){
        
myerror("Unable to checkin: "  $msg);    
        exit;
        
header("Location: ord_setd_modifyform.php?refid=$refid");
    }
    else{        
        
//get more data from database
        
$sql="SELECT
                dbo.dgn_master_submold.mold_subno,
                dbo.ord_dtl.qty                
                FROM
                dbo.ord_dtl
                INNER JOIN dbo.inv_product ON dbo.ord_dtl.product_refid = dbo.inv_product.refid
                INNER JOIN dbo.dgn_master_mold ON dbo.inv_product.mold_refid = dbo.dgn_master_mold.refid
                INNER JOIN dbo.dgn_master_submold ON dbo.dgn_master_submold.mold_refid = dbo.dgn_master_mold.refid
                WHERE
                dbo.ord_dtl.refid = :refid
                "
;
        
$sth_opr $dbh->prepare($sql);
        
$sth_opr->execute(  array(':refid' => $refid) );
        
$moredata $sth_opr->fetch();
        
//pick the first mold if not splitted    
        
$opr_param['moldno']    = $moredata['mold_subno'];
        
//$opr_param['ttlqty']    = $moredata['qty'];
        
$opr_param['uom_qty']    = "pcs";
        
//$opr_param['txqty']        = $moredata['qty'];
        
$sth_opr->closeCursor();
        
        
$opr_param['opr_code']    = "SETO";
        
$opr_param['subtable']     = "ord_txseto";
        
$opr_param['php_function']    = "seto_checkin";
        
$opr_param['checkin_wt']     = (float)filter_var($_REQUEST['checkin_wt'], FILTER_SANITIZE_NUMBER_FLOATFILTER_FLAG_ALLOW_FRACTION);
        
$opr_param['worker']     = filter_var($_REQUEST['worker'], FILTER_SANITIZE_STRING);
        
$opr_param['worker_sign']     = filter_var($_REQUEST['worker_sign'], FILTER_SANITIZE_STRING);
        
//$opr_param['worker_sign']     = "0000000000000000000000000000000000000";
        
$opr_param['worker']     = filter_var($_REQUEST['worker'], FILTER_SANITIZE_STRING);
        
$opr_param['createby']    = filter_var($_SESSION['user'], FILTER_SANITIZE_STRING);
        
$opr_param['lastupby']    = filter_var($_SESSION['user'], FILTER_SANITIZE_STRING);
        
//$opr_param['txmain_refid']    = (int) filter_var($_REQUEST['txmain_refid'], FILTER_SANITIZE_STRING);    
    
        
        //var_dump($opr); exit;
        
$dbh->beginTransaction();
        
ord_updateJCLocation($refid$opr['refid'], $opr_param);
        
$checkin_time ord_checkin($refid$opr['refid'], $opr_param);
        
//update_txmain($refid, $opr_param);
        //exit;
        
$dbh->commit();
        
form_dest($_REQUEST['godest'], $_REQUEST['formdest']);            
        
header("Location: ord_setd_checkoutform.php?refid=$refid&msg=Saved.");
        print 
"Saved.";
        exit;
    }
}
myerror(INVALID.WS.REQUEST);


?>