Linux中自動生成數據詳解

本文主要和大家分享linux中自動生成數據詳解,主要以代碼的方法和大家分享,希望能幫助到大家。

/*  ?*?自動任務跑數據  ?*?訂單組日工作量報表數據寫入  ?*?  ?*?$start_date?????0000-00-00?00:00:00?????????????????開始時間  ?*?$email_start_date????0000-00-00?00:00:00?????????????????開始時間  ?*?$end_dates???????????0000-00-00?00:00:00?????????????????結束時間  ?*/  require_once(?"config.php"?);  $flagFile?=?dirname(__FILE__)?.?"/order-day-workload";  if?(@file_exists($flagFile))?{  ????Common_Service_Common::autoRunFlag($flagFile,?__FILE__,?2);  ????die("程序正在運行!");  }  ini_set("memory_limit",?"-1");  set_time_limit(0);  define("RUNTIME",?"[?"?.?date("Y-m-d?H:i:s")?.?"?]?");  echo?RUNTIME?.?"Starting!n";  $reRun?=?false;  $start_date?=?date("Y-m-d?08:30:00",?strtotime("-1?day"));  $end_dates?=?date("Y-m-d?08:30:00");  $Object?=?new?Order_Service_OrderWorkload();  for?(;?$start_date?orderDayWorkload($email_start_date,?$end_dates);  echo?"[?"?.?date('Y-m-d?H:i:s')?.?"?]?結束運行rn";  @unlink($flagFile);      //Services  //配置標準時間  public?static?$StandardConfigurationTime?=?array(  ????//配貨員  ????"STANDARD_CONFIGURATION_PEIHUO",  ????//打包員  ????"STANDARD_CONFIGURATION_PACKING",  ????//分揀員  ????"STANDARD_CONFIGURATION_SORTER",  );    public?static?function?getAdapter()?{  ????$model?=?new?Order_Model_OrderWorkload();  ????return?$model->getAdapter();  }    /*  ?*?$row????????array()?????????????條件  ?*/    public?static?function?add($row)?{  ????$object?=?new?Order_Model_OrderWorkload();  ????return?$object->add($row);  }    /*  *?訂單組日工作量數據寫入  *  *?$email_start_date???0000-00-00?00:00:00??????????????開始時間  *?$end_dates??????????0000-00-00?00:00:00??????????????結束時間  */    public?static?function?orderDayWorkload($email_start_date,?$end_dates)?{  ???$orderWorkload?=?new?Order_Model_OrderWorkload();  ???$dbAdapter?=?$orderWorkload->getAdapter();  ???$dbAdapter->beginTransaction();  ???try?{  ???????//配貨時間  ???????$peihuo_time?=?"";  ???????//打包時間  ???????$packing_time?=?"";  ???????//分揀時間  ???????$sorter_time?=?"";  ???????//配貨員超時票數  ???????$count_peihuo?=?"";  ???????//打包員超時票數  ???????$count_packing?=?"";  ???????//分揀員超時票數  ???????$count_sorter?=?"";  ???????$row?=?array();    ???????//根據條件獲取對應數據  ???????$combination?=?array(  ???????????"op_create_date_gt"?=>?$email_start_date,  ???????????"op_create_date_lt"?=>?$end_dates,  ???????????"op_status"?=>?1,  ???????);  ???????$opIds?=?Product_Service_Pickup::getByCondition($combination,?"*");  ???????if?(!$opIds)?{  ???????????echo?"未獲取到該時間段??[?"?.?$email_start_date?.?"?]?~?[?"?.?$end_dates?.?"?]?的信息";  ???????}  ???????foreach?($opIds?as?$value)?{  ???????????$opOrdersType?=?$value['op_orders_type'];  ???????????$warehouseId?=?$value['warehouse_id'];    ???????????/*  ????????????*?配貨員數據  ????????????*/  ???????????$pickupUserId?=?$value['pickup_user_id'];  ???????????//配貨員時間  ???????????if?($value['op_end_time']?!=?'0000-00-00?00:00:00'?&&?$value['op_start_time']?!=?'0000-00-00?00:00:00')?{  ???????????????$peihuo_time?=?round((strtotime($value['op_end_time'])?-?strtotime($value['op_start_time']))?/?60,?0);  ???????????}?else?{  ???????????????$peihuo_time?=?0;  ???????????}  ???????????//根據配貨員賬號開通時間和訂單類型分別計算超時票數  ???????????$userInfo?=?User_Service_User::getByUserId($pickupUserId);  ???????????$configId?=?Common_Service_Config::getByAttribute(Order_Service_OrderWorkload::$StandardConfigurationTime['0'],?$warehouseId);  ???????????$configValueInfo?=?unserialize($configId['config_value']);  ???????????//培訓期  ???????????$trainDate?=?date("Y-m-d?H:i:s",?strtotime("+10?day",?strtotime($userInfo['create_date'])));  ???????????//試崗期  ???????????$try_hillockDate?=?date("Y-m-d?H:i:s",?strtotime("+20?day",?strtotime($userInfo['create_date'])));  ???????????//上崗期  ???????????$postsDate?=?date("Y-m-d?H:i:s",?strtotime("+30?day",?strtotime($userInfo['create_date'])));  ???????????$count_peihuo?=?0;  ???????????if?($value['op_start_time']??$trainDate?&&?$value['op_start_time']??$try_hillockDate?&&?$value['op_start_time']??$postsDate)?{  ???????????????if?((($opOrdersType?==?0?&&?$configValueInfo['matureA'])?||?($opOrdersType?==?1?&&?$configValueInfo['matureB'])?||?($opOrdersType?==?2?&&?$configValueInfo['matureC']))??$trainDate?&&?$value['op_pack_start']??$try_hillockDate?&&?$value['op_pack_start']??$postsDate)?{  ??????????????if?((($opOrdersType?==?0?&&?$configValueInfo['matureA'])?||?($opOrdersType?==?1?&&?$configValueInfo['matureB'])?||?($opOrdersType?==?2?&&?$configValueInfo['matureC']))??$trainDate?&&?$value['op_sorting_start']??$try_hillockDate?&&?$value['op_sorting_start']??$postsDate)?{  ???????????????if?((($opOrdersType?==?0?&&?$configValueInfo['matureA'])?||?($opOrdersType?==?1?&&?$configValueInfo['matureB'])?||?($opOrdersType?==?2?&&?$configValueInfo['matureC']))??$val)?{  ???????????$substr?=?substr($key,?-1);  ???????????if?($key?!=?0)?{  ???????????????foreach?($val?as?$ke?=>?$va)?{  ???????????????????foreach?($va?as?$k?=>?$v)?{  ???????????????????????$combition?=?array(  ???????????????????????????"user_id"?=>?$key,  ???????????????????????????"warehouse_id"?=>?$k,  ???????????????????????????"ow_date"?=>?$email_start_date,  ???????????????????????????"ow_total_pickup"?=>?$v['ow_total_pickup'],  ???????????????????????????"ow_type"?=>?$ke,  ???????????????????????????"ow_fast"?=>?min($v['total_time']),  ???????????????????????????"ow_avg"?=>?round(array_sum($v['total_time'])?/?$v['ow_total_pickup']),  ???????????????????????????"ow_slow"?=>?max($v['total_time']),  ???????????????????????????"ow_orders"?=>?$v['ow_total_pickup'],  ???????????????????????????"ow_overtime_qty"?=>?$v['ow_overtime_qty'],  ???????????????????????????"ow_more"?=>?$v['ow_more'],  ???????????????????????????"ow_wrong"?=>?$v['ow_wrong'],  ???????????????????????????"ow_leakage"?=>?$v['ow_leakage'],  ???????????????????????????"ow_create_time"?=>?date("Y-m-d?H:i:s"),  ???????????????????????????"ow_post"?=>?$substr,  ???????????????????????);  ???????????????????????if?(!Order_Service_OrderWorkload::add($combition))?{  ???????????????????????????echo?"寫入數據失敗";  ???????????????????????}  ???????????????????}  ???????????????}  ???????????}  ???????}  ???????$dbAdapter->commit();  ???}?catch?(Exception?$e)?{  ???????$dbAdapter->rollback();  ???????echo?"[?"?.?date("Y-m-d?H:is")?.?"?]?出現異常,異常信息為:"?.?$e->getMessage();  ???}  }      //Models  private?$_table;    public?function?__construct()?{  ????$this->_table?=?new?Order_Model_DbTable_OrderWorkload();  }    public?function?getAdapter()?{  ????return?$this->_table->getAdapter();  }    /*  ?*?$row????????array()?????????????條件  ?*/    public?function?add($row)?{  ????return?$this->_table->insert($row);  }      //Models/DbTable  class?Order_Model_DbTable_OrderWorkload?extends?Zend_Db_Table_Abstract?{    ????//數據表名稱  ????protected?$_name?=?"order_workload";  ????//主鍵  ????protected?$_primary?=?"ow_id";  ????protected?$_sequence?=?true;    }

? ? ? ? ? ?

/*  ?*?自動任務跑數據  ?*?訂單組日工作量報表數據寫入  ?*?  ?*?$start_date?????0000-00-00?00:00:00?????????????????開始時間  ?*?$email_start_date????0000-00-00?00:00:00?????????????????開始時間  ?*?$end_dates???????????0000-00-00?00:00:00?????????????????結束時間  ?*/  require_once(?"config.php"?);  $flagFile?=?dirname(__FILE__)?.?"/order-day-workload";  if?(@file_exists($flagFile))?{  ????Common_Service_Common::autoRunFlag($flagFile,?__FILE__,?2);  ????die("程序正在運行!");  }  ini_set("memory_limit",?"-1");  set_time_limit(0);  define("RUNTIME",?"[?"?.?date("Y-m-d?H:i:s")?.?"?]?");  echo?RUNTIME?.?"Starting!n";  $reRun?=?false;  $start_date?=?date("Y-m-d?08:30:00",?strtotime("-1?day"));  $end_dates?=?date("Y-m-d?08:30:00");  $Object?=?new?Order_Service_OrderWorkload();  for?(;?$start_date?orderDayWorkload($email_start_date,?$end_dates);  echo?"[?"?.?date('Y-m-d?H:i:s')?.?"?]?結束運行rn";  @unlink($flagFile);      //Services  //配置標準時間  public?static?$StandardConfigurationTime?=?array(  ????//配貨員  ????"STANDARD_CONFIGURATION_PEIHUO",  ????//打包員  ????"STANDARD_CONFIGURATION_PACKING",  ????//分揀員  ????"STANDARD_CONFIGURATION_SORTER",  );    public?static?function?getAdapter()?{  ????$model?=?new?Order_Model_OrderWorkload();  ????return?$model->getAdapter();  }    /*  ?*?$row????????array()?????????????條件  ?*/    public?static?function?add($row)?{  ????$object?=?new?Order_Model_OrderWorkload();  ????return?$object->add($row);  }    /*  *?訂單組日工作量數據寫入  *  *?$email_start_date???0000-00-00?00:00:00??????????????開始時間  *?$end_dates??????????0000-00-00?00:00:00??????????????結束時間  */    public?static?function?orderDayWorkload($email_start_date,?$end_dates)?{  ???$orderWorkload?=?new?Order_Model_OrderWorkload();  ???$dbAdapter?=?$orderWorkload->getAdapter();  ???$dbAdapter->beginTransaction();  ???try?{  ???????//配貨時間  ???????$peihuo_time?=?"";  ???????//打包時間  ???????$packing_time?=?"";  ???????//分揀時間  ???????$sorter_time?=?"";  ???????//配貨員超時票數  ???????$count_peihuo?=?"";  ???????//打包員超時票數  ???????$count_packing?=?"";  ???????//分揀員超時票數  ???????$count_sorter?=?"";  ???????$row?=?array();    ???????//根據條件獲取對應數據  ???????$combination?=?array(  ???????????"op_create_date_gt"?=>?$email_start_date,  ???????????"op_create_date_lt"?=>?$end_dates,  ???????????"op_status"?=>?1,  ???????);  ???????$opIds?=?Product_Service_Pickup::getByCondition($combination,?"*");  ???????if?(!$opIds)?{  ???????????echo?"未獲取到該時間段??[?"?.?$email_start_date?.?"?]?~?[?"?.?$end_dates?.?"?]?的信息";  ???????}  ???????foreach?($opIds?as?$value)?{  ???????????$opOrdersType?=?$value['op_orders_type'];  ???????????$warehouseId?=?$value['warehouse_id'];    ???????????/*  ????????????*?配貨員數據  ????????????*/  ???????????$pickupUserId?=?$value['pickup_user_id'];  ???????????//配貨員時間  ???????????if?($value['op_end_time']?!=?'0000-00-00?00:00:00'?&&?$value['op_start_time']?!=?'0000-00-00?00:00:00')?{  ???????????????$peihuo_time?=?round((strtotime($value['op_end_time'])?-?strtotime($value['op_start_time']))?/?60,?0);  ???????????}?else?{  ???????????????$peihuo_time?=?0;  ???????????}  ???????????//根據配貨員賬號開通時間和訂單類型分別計算超時票數  ???????????$userInfo?=?User_Service_User::getByUserId($pickupUserId);  ???????????$configId?=?Common_Service_Config::getByAttribute(Order_Service_OrderWorkload::$StandardConfigurationTime['0'],?$warehouseId);  ???????????$configValueInfo?=?unserialize($configId['config_value']);  ???????????//培訓期  ???????????$trainDate?=?date("Y-m-d?H:i:s",?strtotime("+10?day",?strtotime($userInfo['create_date'])));  ???????????//試崗期  ???????????$try_hillockDate?=?date("Y-m-d?H:i:s",?strtotime("+20?day",?strtotime($userInfo['create_date'])));  ???????????//上崗期  ???????????$postsDate?=?date("Y-m-d?H:i:s",?strtotime("+30?day",?strtotime($userInfo['create_date'])));  ???????????$count_peihuo?=?0;  ???????????if?($value['op_start_time']??$trainDate?&&?$value['op_start_time']??$try_hillockDate?&&?$value['op_start_time']??$postsDate)?{  ???????????????if?((($opOrdersType?==?0?&&?$configValueInfo['matureA'])?||?($opOrdersType?==?1?&&?$configValueInfo['matureB'])?||?($opOrdersType?==?2?&&?$configValueInfo['matureC']))??$trainDate?&&?$value['op_pack_start']??$try_hillockDate?&&?$value['op_pack_start']??$postsDate)?{  ??????????????if?((($opOrdersType?==?0?&&?$configValueInfo['matureA'])?||?($opOrdersType?==?1?&&?$configValueInfo['matureB'])?||?($opOrdersType?==?2?&&?$configValueInfo['matureC']))??$trainDate?&&?$value['op_sorting_start']??$try_hillockDate?&&?$value['op_sorting_start']??$postsDate)?{  ???????????????if?((($opOrdersType?==?0?&&?$configValueInfo['matureA'])?||?($opOrdersType?==?1?&&?$configValueInfo['matureB'])?||?($opOrdersType?==?2?&&?$configValueInfo['matureC']))??$val)?{  ???????????$substr?=?substr($key,?-1);  ???????????if?($key?!=?0)?{  ???????????????foreach?($val?as?$ke?=>?$va)?{  ???????????????????foreach?($va?as?$k?=>?$v)?{  ???????????????????????$combition?=?array(  ???????????????????????????"user_id"?=>?$key,  ???????????????????????????"warehouse_id"?=>?$k,  ???????????????????????????"ow_date"?=>?$email_start_date,  ???????????????????????????"ow_total_pickup"?=>?$v['ow_total_pickup'],  ???????????????????????????"ow_type"?=>?$ke,  ???????????????????????????"ow_fast"?=>?min($v['total_time']),  ???????????????????????????"ow_avg"?=>?round(array_sum($v['total_time'])?/?$v['ow_total_pickup']),  ???????????????????????????"ow_slow"?=>?max($v['total_time']),  ???????????????????????????"ow_orders"?=>?$v['ow_total_pickup'],  ???????????????????????????"ow_overtime_qty"?=>?$v['ow_overtime_qty'],  ???????????????????????????"ow_more"?=>?$v['ow_more'],  ???????????????????????????"ow_wrong"?=>?$v['ow_wrong'],  ???????????????????????????"ow_leakage"?=>?$v['ow_leakage'],  ???????????????????????????"ow_create_time"?=>?date("Y-m-d?H:i:s"),  ???????????????????????????"ow_post"?=>?$substr,  ???????????????????????);  ???????????????????????if?(!Order_Service_OrderWorkload::add($combition))?{  ???????????????????????????echo?"寫入數據失敗";  ???????????????????????}  ???????????????????}  ???????????????}  ???????????}  ???????}  ???????$dbAdapter->commit();  ???}?catch?(Exception?$e)?{  ???????$dbAdapter->rollback();  ???????echo?"[?"?.?date("Y-m-d?H:is")?.?"?]?出現異常,異常信息為:"?.?$e->getMessage();  ???}  }      //Models  private?$_table;    public?function?__construct()?{  ????$this->_table?=?new?Order_Model_DbTable_OrderWorkload();  }    public?function?getAdapter()?{  ????return?$this->_table->getAdapter();  }    /*  ?*?$row????????array()?????????????條件  ?*/    public?function?add($row)?{  ????return?$this->_table->insert($row);  }      //Models/DbTable  class?Order_Model_DbTable_OrderWorkload?extends?Zend_Db_Table_Abstract?{    ????//數據表名稱  ????protected?$_name?=?"order_workload";  ????//主鍵  ????protected?$_primary?=?"ow_id";  ????protected?$_sequence?=?true;    }

? 版權聲明
THE END
喜歡就支持一下吧
點贊5 分享