123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233 |
- <?php
- /**
- * @author darkredz
- */
- class SoftController extends DooController {
- public $webPath="http://cld.smartcost.com.cn/upload/emailAnnex/";
- function __construct() {
-
- }
- function longleTest(){
- $this->render ( "/test", array() );
- }
-
- function categoryApi(){
- Doo::loadModel ( 'L_category' );
- $L_category = new L_category ();
- $category=$L_category->getCategory();
- header ( 'Content-Type:text/html;charset=utf-8' );
- echo json_encode(array('status'=>1,'categoryList'=>$category),JSON_UNESCAPED_UNICODE);die;
- }
- function productApi(){
- Doo::loadModel ( 'product' );
- $product = new product ();
- $product=$product->getProudct();
- header ( 'Content-Type:text/html;charset=utf-8' );
- echo json_encode(array('status'=>1,'productList'=>$product),JSON_UNESCAPED_UNICODE);die;
- }
-
- function addLockApi(){
- $longleList=isset($_POST['longle'])?$_POST['longle']:"";
- header ( 'Content-Type:text/html;charset=utf-8' );
- if($longleList!=""){
- Doo::loadModel ( 'longle' );
- Doo::loadModel ( 'longle_log' );
- //$exlArray=$this->_format_excel_to_array(DOO::conf()->SITE_PATH."upload/".iconv("UTF-8", "GB2312", $path));
-
- $longleList=json_decode($longleList,TRUE);
- //print_r($longleList);die;
- if (!is_array($longleList)){
- echo json_encode(array('status'=>2,'msg'=>'锁数据不正确'),JSON_UNESCAPED_UNICODE);die;
- }
-
- $findStr='';$longle = new longle ();
- foreach ($longleList as $key=>$value){
- $li=$longle->getOne(array('where'=>'key_num like "'.$value['key_num'].'"','asArray' => TRUE));
-
- if (!empty($li))
- $findStr.=$li['key_num']." ; ";
- }
- if (!empty($findStr))
- $this->postEmail($findStr);
-
-
- //$category=$L_category->getCategoryById($cid);
- try {
- Doo::db()->beginTransaction();
- foreach ($longleList as $key=>$value){
- //锁记录
- $longle = new longle ();
- $longle->key_num=$value['key_num'];
- $longle->product=$value['product'];
- $longle->make_day=$value['make_day'];
- $longle->alloted_time=$value['alloted_time'];
- $longle->status=1;
- $longle->statusT="生成";
- $longle->cid=$value['cid'];
- $longle->category=$value['title'];
- $longle->SerialNumber=$value['serialnumber'];
- $longle->version=$value['version'];
- $lid=$longle->insert();
- //锁日志记录
- $longle_log=new longle_log();
- $longle_log->lid=$lid;
- $longle_log->status=1;
- $longle_log->statusT="生成";
- $longle_log->operator='软件生成';
- $longle_log->product=$longle->product;
- $longle_log->category='总部';
- $longle_log->dateline=date("Y-m-d");
- $id=$longle_log->insert();
- }
- //记录日常行为
- Doo::loadModel("action_log");
- $action_log=new action_log();
- $action_log->action='总部<b href="javascript:void(0)" >软件</b>生成<a href="javascript:void(0)" onclick="showLook(\''.$longleList[0]['key_num'].'\')">'.$longleList[0]['key_num'].'</a>等<b>'.count($longleList).'</b>个锁';
- $action_log->sid=43;
- $action_log->cid=12;
- $action_log->class=$action_log->iconGenerate;
- $action_log->updatetime=date("Y-m-d");
- $action_log->time=date("H:i");
- $action_log->status=11;
- $action_log->insert();
- Doo::db()->commit();
-
-
- } catch (Exception $e) {
- echo json_encode(array('status'=>2,'msg'=>'数据录入发生异常'),JSON_UNESCAPED_UNICODE);
- //print $e->getMessage();
- die;
- }
- echo json_encode(array('status'=>1,'msg'=>'入库'.count($longleList).'个'),JSON_UNESCAPED_UNICODE);die;
- }else{
- echo json_encode(array('status'=>2,'msg'=>'请求参数不正确或者为空'),JSON_UNESCAPED_UNICODE);die;
- }
- }
- function postEmail($elid){
-
- if (!empty($elid)){
-
-
- $url = 'http://sendcloud.sohu.com/webapi/mail.send.json';
-
-
- $param = array('api_user' => 'cldmail',
- 'api_key' => 'cDO1GjtY1seH',
- 'to'=>'1971614655@qq.com',
- 'from' =>'1971614655@qq.com',
- 'fromname' => '软件导入CLD锁接口',
- 'subject' => '软件导入CLD锁接口通知',
- 'html' => $elid);
- $post_data = http_build_query($param);
- $ch = curl_init();
- curl_setopt($ch, CURLOPT_POST, 1);
- curl_setopt($ch, CURLOPT_URL,$url);
- curl_setopt($ch, CURLOPT_HEADER, false); //设定是否输出页面内容
- curl_setopt($ch, CURLOPT_NOBODY, false);
- curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);
-
- $result =curl_exec($ch);
- curl_close($ch);
- }
- }
-
-
-
- /**
- * 格式化excel文件为数组
- * @param unknown_type $file_url
- * @param unknown_type $mcid
- */
- function _format_excel_to_array($file_url = "") {
- if (! file_exists ( $file_url ))
- return array ();
- Doo::loadClass ( 'PHPExcel' );
- $PHPExcel = new PHPExcel ();
- $PHPReader = new PHPExcel_Reader_Excel2007 ();
- if (! $PHPReader->canRead ( $file_url )) {
- $PHPReader = new PHPExcel_Reader_Excel5 ();
- if (! $PHPReader->canRead ( $file_url )) {
- echo 'no Excel';
- return;
- }
- }
- $PHPExcel = $PHPReader->load ( $file_url );
- /**读取excel文件中的第一个工作表*/
- $currentSheet = $PHPExcel->getSheet ( 0 );
- /**取得最大的列号*/
- $allColumn = $currentSheet->getHighestColumn ();
- /**取得一共有多少行*/
- $allRow = $currentSheet->getHighestRow ();
- $excel_array = array ();
- for($currentRow = 2; $currentRow <= $allRow; $currentRow ++) {
- $excel_column = array ();
- //后期改进
- if($allColumn=='AM')
- $allColumn='Z';
- /**从第A列开始输出*/
- for($currentColumn = 'A'; $currentColumn <= $allColumn; $currentColumn ++) {
- $val = $currentSheet->getCellByColumnAndRow ( ord ( $currentColumn ) - 65, $currentRow )->getValue ();
- /**ord()将字符转为十进制数 iconv ( 'utf-8', 'gb2312',*/
- $val = "'" . addslashes ( $val ) . "'";
- if ($currentColumn == 'A')
- $excel_column ['key_num'] = $val;
- elseif ($currentColumn == 'C')
- $excel_column ['product'] = $val;
- elseif ($currentColumn == 'D'){
- $val=str_replace("'","",$val);
- $excel_column ['make_day'] = $this->excelTime($val);
- }elseif($currentColumn == 'E'){
- $val=str_replace("'","",$val);
- $excel_column ['alloted_time'] = $this->excelTime($val);
- }elseif($currentColumn == 'F'){
- $val=str_replace("'","",$val);
- $excel_column ['version'] = $val;
- }elseif ($currentColumn == 'B'){
- $val=str_replace("'","",$val);
- $excel_column ['SerialNumber'] = $val;
- }
- }
- array_push ( $excel_array, $excel_column );
- }
- return $excel_array;
- }
- }
- ?>
|