load->library('session'); $this->load->_model('Model_fullorder','fullorder'); $this->load->_model('Model_fullorderxw','fullorderxw'); $this->load->_model('Model_fullorderexcel','fullorderexcel'); $this->load->_model('Model_shop','shop'); $this->load->_model('Model_typeclass','typeclass'); $this->load->_model('Model_express','express'); $this->load->_model('Model_country','country'); $this->load->_model('Model_productdescribe','productdescribe'); $this->load->_model('Model_customs','customs'); $this->load->_model('Model_detailed','detailed'); $this->load->_model('Model_productdescription','productdescription'); $this->load->_model('Model_logistics','logistics'); $this->load->_model('Model_hl','hl'); $this->load->_model('Model_excel','excel'); $this->load->_model('Model_warehouse','warehouse'); $this->load->_model('Model_customertt','customertt'); $this->load->_model('Model_user','user'); $this->load->_model('Model_dhl','dhl'); $this->load->_model('Model_ali','ali'); $this->load->_model('Model_notice','notice'); $this->load->_model('Model_api','api'); $this->load->_model('Model_usps','usps'); $this->load->_model('Model_fullorder_smt','fullorder_smt'); $this->load->_model('Model_whlabel','whlabel'); $this->load->_model('Model_reset','fullreset'); $this->load->_model('Model_specialstock','specialstock'); $this->load->_model('Model_systemwigsout','systemwigsout'); $this->load->_model('Model_colourorderts','colourorderts'); $this->load->_model('Model_paypal','paypal'); $this->load->_model('Model_ck','ck'); $this->load->_model('Model_weight','weight'); $this->load->_model('Model_pay','pay'); $this->load->_model('Model_setting','setting'); $this->load->_model('Model_whlabel_fc','whlabel_fc'); $this->load->_model('Model_transfer','transfer'); $this->load->_model('Model_systemtransfer','systemtransfer'); $this->load->_model('Model_power','power'); } //定义方法的调用规则 获取URI第二段值 public function _remap($arg,$arg_array) { if($arg == 'add')//添加 { $this->_add(); } else if($arg == 'edit')//修改 { $this->_edit($arg_array); } else if($arg == 'readonly')//修改 { $this->_readonly($arg_array); } else if($arg == 'readlist') { $this->_readlist(); } else if($arg == 'readlistdown') { $this->_readlistdown(); } else if($arg == 'del')//修改 { $this->_del(); } else if($arg == 'price')//价格明细 { $this->_price(); } else if($arg == 'customs') { $this->_customs(); } else if($arg == 'express') { $this->_express(); } else if($arg == 'hl') { $this->_hl(); } else if($arg == 'repeat') { $this->_repeat(); } else if($arg == 'operation') { $this->_operation(); } else if($arg == 'merge') { $this->_merge(); } else if($arg == 'fmexcel') { $this->_fmexcel(); } else if($arg == 'fdexcel') { $this->_fdexcel(); } else if($arg == 'fdfexcel') { $this->_fdfexcel(); } else if($arg == 'evaluate') { $this->_evaluate(); } else if($arg == 'state') { $this->_state(); } else if($arg == 'wl') { $this->_wl(); } else if($arg == 'wlbz') { $this->_wlbz($arg_array); } else if($arg == 'review') { $this->_review(); } else if($arg == 'black') { $this->_black(); } else if($arg == 'ryf') { $this->_ryf(); } else if($arg == 'expresstype') { $this->_expresstype(); } else if($arg == 'fsstate') { $this->_fsstate(); } else if($arg == 'power') { $this->_power(); } else if($arg == 'error') { $this->_error(); } else if($arg == 'yzaddress') { $this->_yzaddress(); } else if($arg == 'return') { $this->_return(); } else if($arg == 'clearreturn') { $this->_clearreturn(); } else if($arg == 'ali') { $this->_ali(); } else if($arg == 'dqpm') { $this->_dqpm(); } else if($arg == 'ddpmdata') { $this->_ddpmdata($arg_array); } else if($arg == 'dqpmprovince') { $this->_dqpmprovince($arg_array); } else if($arg == 'ddpmexcel') { $this->_ddpmexcel($arg_array); } else if($arg == 'statedc') { $this->_statedc(); } else if($arg == 'statedcwl') { $this->_statedcwl(); } else if($arg == 'waybillemail') { $this->_waybillemail(); } else if($arg == 'khdd') { $this->_khdd(); } else if($arg == 'klarnadata') { $this->_klarnadata(); } else if($arg == 'epod') { $this->_epod(); } else if($arg == 'zw') { $this->_zw($arg_array); } else if($arg == 'thxz') { $this->_thxz($arg_array); } else if($arg == 'dcdxyz') { $this->_dcdxyz(); } else { $this->_index(); } } //管理 public function _index() { $dt = 0;$fgshop = "shop = 0";$sid = 'id = 0'; if(isset($_SESSION['api'])) { $user = $this->user->get_api($_SESSION['api']); $usp = $user; $fgshop = "";$sid = ""; $usersp = explode('|',trim($user['shop'],'|')); foreach ($usersp as $value) { $fgshop .= " shop = ".$value." or"; $sid .= " id = ".$value." or"; } if($user['vip'] == 1) { $vip = 1; } else { $vip = 0; } } else { $vip = 0; header('Location: /');exit; } $post = $this->input->post(NULL, TRUE); if(isset($post['page'])) { $page = $this->input->post('page',true); $perpage = $this->input->post('perpage',true); $warehouse = $this->input->post('warehouse',true); $timetk = $this->input->post('timetk',true); $timetj = $this->input->post('timetj',true); $shop = $this->input->post('shop',true); $source = $this->input->post('source',true); $state = $this->input->post('state',true); $review = $this->input->post('review',true); $type = $this->input->post('type',true); $express = $this->input->post('express',true); $orderinfo = $this->input->post('orderinfo',true); $user = $this->input->post('user',true); $client = $this->input->post('name'); $waybill = $this->input->post('waybill',true); $number = $this->input->post('number',true); $email = $this->input->post('email',true); $phone = $this->input->post('phone',true); $dlz = $this->input->post('dlz',true); $print = $this->input->post('print',true); $library = $this->input->post('library',true); $js = $this->input->post('js',true); $exstate = $this->input->post('exstate',true); $xztime = $this->input->post('xztime',true); $libraryconfirm = $this->input->post('libraryconfirm',true); $timetk = strtotime($timetk); $timetj = strtotime($timetj); $plorder = $this->input->post('pl',true); $paypal = $this->input->post('paypal',true); $pay = $this->input->post('pay',true); $klarna = $this->input->post('klarna',true); $zf = $this->input->post('zf',true); $where = "1=1 and mergeid = 0 and (".rtrim($fgshop,'or').")"; if($warehouse) { $where .= " and type = '$warehouse'"; } if($timetk && $timetj) { $where .= " and ".$xztime." > '$timetk' and ".$xztime." < '$timetj'"; } if($shop) { $where .= " and shop = '$shop'"; } if($source) { if($source == '2d') { $where .= " and source >= '2'"; } else { $where .= " and source = '$source'"; } } if($state) { $where .= " and state = '$state'"; } if($review) { $where .= " and review = '$review'"; } if($type) { $where .= " and type = '$type'"; } if($express) { $where .= " and express = '$express'"; } if($orderinfo) { $where .= " and orderinfo = '$orderinfo' and orderinfo != '0'"; } if($user) { $where .= " and user = '$user'"; } if($client) { $where .= " and client like '%$client%'"; } if($waybill) { $where .= " and waybill = '$waybill'"; } if($number) { $where .= " and number = '$number'"; } if($email) { $where .= " and email = '$email'"; } if($phone) { $where .= " and phone like '%$phone%'"; } if($library) { $where .= " and library = '$library'"; } if($print) { $where .= " and print = '$print'"; } if($dlz != '') { $where .= " and dlz = '$dlz'"; } if($js) { $where .= " and js = '$js'"; } if($exstate) { $where .= " and exstate = '$exstate'"; } if($libraryconfirm) { $where .= " and libraryconfirm = '$libraryconfirm'"; } if($klarna != '') { if($klarna == 2) { $where .= " and klarna >= '$klarna'"; } else { $where .= " and klarna = '$klarna'"; } } if($paypal) { $where .= " and paypal = '$paypal'"; } if($pay) { $where .= " and pay = '$pay'"; } if($zf) { if($zf == 1) { $where .= " and paypal not like '%-%-%-%'"; } else { $where .= " and paypal like '%-%-%-%'"; } } if($plorder) { $plorderinfo = '';$plnumber = '';$pln = 0; $plorder = explode(',',trim($plorder,',')); foreach ($plorder as $value) { if(is_numeric($value)) { $plorderinfo .= " orderinfo = ".$value." or"; } else if($value != '') { $plorderinfo .= " number = '".$value."' or"; } } if($pln > 0) { $where .= " and (".rtrim($plorderinfo,'or').") and (".rtrim($plnumber,'or').")"; } else { $where .= " and (".rtrim($plorderinfo,'or').")"; } } //数据排序 $order_str = "dtime desc"; if(empty($page)) { $start = 0; $perpage = 1; } else { $start = ($page - 1)*$perpage; } //取得信息列表id,shop,type,source,user,orderinfo,number,name,state,buytime,clientremarks,review,print,library,libraryconfirm,express,waybill,orderremarks,black $info_list = $this->fullorderxw->find_all($where,'id,shop,type,orderinfo,number,sname,phone,state,dtime,review,libraryconfirm,express,waybill,orderremarks,library,black,clientremarks',$order_str,$start,$perpage); //格式化数据 foreach ($info_list as $key=>$value) { $ud = $this->fullorderxw->read($value['id']); $ud['address'] = str_replace("'","’",$ud['address']); $ud['name'] = str_replace("'","’",$ud['name']); $customer = $this->customertt->get_email($ud['email'],$value['shop']); $customernum = $this->fullorderxw->find_count("email = '".$ud['email']."' and shop = '".$value['shop']."'"); preg_match_all('/[0-9]/u',$ud['phone'],$result); $numphone = join('',$result[0]); $hmdaddress1 = str_replace(array(' parkway',' drive',' street',' road',' avenue',' boulevard',' alley',' court',' place',' lane',' manor',' terrace',' trail',' view',' cove'),array(' pkwy',' dr',' st',' rd',' av',' blvd',' aly',' ct',' pl',' ln',' mnr',' ter',' trl',' vw',' cv'),strtolower($ud['address'])); $hmdaddress2 = str_replace(array(' pkwy',' dr',' st',' rd',' av',' blvd',' aly',' ct',' pl',' ln',' mnr',' ter',' trl',' vw',' cv'),array(' parkway',' drive',' street',' road',' avenue',' boulevard',' alley',' court',' place',' lane',' manor',' terrace',' trail',' view',' cove'),strtolower($ud['address'])); $hmdaddress3 = str_replace(array(' avenue',' ave',' av'),array(' ave',' avenue',' ave'),strtolower($ud['address'])); if($numphone == '0') { $customerb = $this->customertt->find_all("type = 2 and (email = '".$ud['email']."' or address = '".$ud['address']."' or address = '".$hmdaddress1."' or address = '".$hmdaddress2."' or address = '".$hmdaddress3."' or phone = '".$numphone."')",'*','id desc'); } else { $customerb = $this->customertt->find_all("type = 2 and (email = '".$ud['email']."' or address = '".$ud['address']."' or address = '".$hmdaddress1."' or address = '".$hmdaddress2."' or address = '".$hmdaddress3."' or numphone = '".$numphone."')",'*','id desc'); } $customerc = $this->customertt->find_all("type = 1 and shop = '".$ud['shop']."' and address = '".$ud['address']."' and numphone = '".$numphone."'",'*','id desc'); $customerd = $this->customertt->find_all("type = 2 and shop = '".$ud['shop']."' and email = '".$ud['email']."'",'*','id desc'); //$a = array_column($customer, 'email'); //三维找其中健的数组 //$a = array_flip($a); //键和值调换 $djcount = ''; $lkh = $value['sname']; $djlkh = 0;$djhmd = 0; if($customer) { if($customer['count'] != '' && $customernum < 2) { $count = ''; $djcount = $count; } if(($customer['type'] == 1 && $customernum > 1))// || $customerc['type'] == 1 && $customerc['num'] > 1 { $count = $customer['count']?'':''; $lkh = "

".$value['sname']."

".$count."老客户

"; $djlkh = 1; $djcount = $count; } else if(isset($customerc[0]['num'])) { if($customerc[0]['num'] > 1) { $count = $customer['count']?'':''; $lkh = "

".$value['sname']."

".$count."老客户

"; $djlkh = 1; $djcount = $count; } } } if($customerb) { $hmsp = $this->shop->read($customerb[0]['shop']); $count = $customerb[0]['count']?'':''; $lkh = "

".$value['sname']."

".$count."黑名单

来自".$hmsp['shopname']."

"; $djhmd = 1; if($customerd) { if($customerd[0]['num'] > 1) { $count = $customerd[0]['count']?'':''; $lkh = "

".$value['sname']."

".$count."老客户

"; $djlkh = 1; $djcount = $count; $djlkh = 1; } } } if($djlkh == '1' && $djhmd == '1') { $lkh = "

".$value['sname']."

".$djcount."老客户 - ".$count."黑名单

来自".$hmsp['shopname']."

"; } if($djlkh != '1' && $djhmd != '1' && $djcount) { $info_list[$key]['sname'] = $lkh."

".$djcount."

"; } else { $info_list[$key]['sname'] = $lkh; } $shop = $this->shop->read($value['shop']); $info_list[$key]['shop'] = $shop['shopname']; //$info_list[$key]['user'] = $shop['shopuser']; $warehouse = $this->warehouse->read($value['type']); $warehousetitle = $warehouse['title']; if($value['type'] != 13){$warehousetitle = "".$warehouse['title']."";} $info_list[$key]['type'] = $warehousetitle; $info_list[$key]['phone'] = $value['phone']; $typeclass = $this->typeclass->read($value['state']); $info_list[$key]['state'] = "".$typeclass['spare'].""; /** $wl = ''; if($value['exstate'] == '99') { $wl = '未获取到物流信息'; } else if($value['exstate'] == '1') { $wl = '已揽收'.$ud['excontent'].''; } else if($value['exstate'] == '2') { $wl = '在途中'.$ud['excontent'].''; } else if($value['exstate'] == '3') { $wl = '派送中'.$ud['excontent'].''; } else if($value['exstate'] == '4') { $wl = '已签收'.$ud['excontent'].''; } else if($value['exstate'] == '5') { $wl = '派送异常'.$ud['excontent'].''; } $info_list[$key]['exstate'] = $wl.'
'; **/ if($ud['source'] == 1) //线下单用订单时间,其他用付款时间 { $info_list[$key]['dtime'] = '

'.date('Y-m-d',$ud['dtime']).'

'.date('H:i:s',$ud['dtime']).'

'; } else { $info_list[$key]['dtime'] = '

'.date('Y-m-d',$value['dtime']+$dt).'

'.date('H:i:s',$value['dtime']+$dt).'

'; } if($value['review'] == 1) { $info_list[$key]['review'] = "未送审"; } else if($value['review'] == 2) { $info_list[$key]['review'] = "待审核"; } else if($value['review'] == 3) { $info_list[$key]['review'] = "不通过"; } else if($value['review'] == 4) { $info_list[$key]['review'] = "取消重审"; } else if($value['review'] == 5) { $info_list[$key]['review'] = "审核通过"; } else if($value['review'] == 6) { $info_list[$key]['review'] = "自动通过"; } if($ud['dlz'] == 1) { $dlz = "

独立站已更新

"; } else if($ud['dlz'] == 3) { $dlz = "

不需要更新

"; } else if($ud['dlz'] == 2) { $dlz = "

独立站更新失败

"; } else { $dlz = ""; } if($value['waybill'] != "") { $info_list[$key]['waybill'] = "

".$value['waybill']."

".$dlz; } if($value['express'] != 0) { $express = $this->express->read($value['express']); $expressservicename = $express['servicename']; if($value['express'] != 1){$expressservicename = "".$express['servicename']."";} $info_list[$key]['express'] = $expressservicename; } else { $info_list[$key]['express'] = "无"; } $x = ""; if($value['libraryconfirm'] == 2 && $value['review'] > 4 && $ud['library'] == 1) { $x = "

禁止发货

"; } else if(($value['review'] > 4) && $ud['print'] != 1 && $value['libraryconfirm'] == 1) { $x = "

允许发货

"; } if(($value['review'] > 4) && $ud['print'] == 2) { $x = "

禁止打印

"; } else if($value['review'] >4 && $ud['print'] == 1) { $x = "

允许打印

"; } if($value['waybill'] == "" && $value['review'] > 4) { $x .= "

填写运单号

"; } else if($value['waybill'] != "" && $value['review'] > 4) { $x .= "

修改运单号

"; } if(($value['review'] == 1 || $value['review'] == 3) && $ud['express'] > 0 && $ud['dtsbjz'] != 0 && $ud['ts'] != 0 && $ud['zsbjz'] != 0 && $ud['zjs'] != 0 && $ud['ts'] != 0) { $x .= "

提交审核

"; } $x .= "

客户信息

"; $info_list[$key]['black'] = $x; $tly = ""; if($value['clientremarks'] != "") { $tly = "

有客户留言

"; } if($value['review'] > 4 && $usp['vip'] != 1) { $info_list[$key]['orderinfo'] = "

".$value['orderinfo']."

".$tly."
"; } else { $info_list[$key]['orderinfo'] = "

".$value['orderinfo']."

".$tly."
"; } if($value['library'] == 1 && $ud['printtype'] == 3) { $info_list[$key]['library'] = "不需要"; } else if($value['library'] == 1 && $ud['printtype'] != 3) { $info_list[$key]['library'] = "未出库"; } else if($value['library'] == 2) { $info_list[$key]['library'] = '

'.date('Y-m-d',$ud['librarytime']).'

'.date('H:i:s',$ud['librarytime']).'出库

'; } else if($value['library'] == 3) { $info_list[$key]['library'] = '

'.date('Y-m-d',$ud['retreattime']).'

'.date('H:i:s',$ud['retreattime']).'退库

'; } } $total = $this->fullorderxw->find_count($where); $pagenum = ceil($total/$perpage); $over = $total-($start+$perpage); $rows = array('total'=>$total,'over'=>$over,'pagenum'=>$pagenum,'rows'=>($info_list)); echo json_encode($rows);exit; } $wlshop = $this->shop->find_all('1=1 and '.rtrim($sid,'or')); $this->data['wlshop'] = $wlshop; $this->data['express'] = $this->express->find_all(); $user = $this->user->get_api($_SESSION['api']); $powerid = $this->power->read($user['power']); $powertext = explode('|',trim($powerid['excelid'],'|')); $pid = ''; foreach ($powertext as $v) { $pid .= " id = ".$v." or"; } $fullorderexcel = $this->fullorderexcel->find_all("type = '100008' and (".rtrim($pid,'or').")",'*','idorder desc');//导出模板 $this->data['fullorderexcel'] = $fullorderexcel; $error = $this->fullorderxw->find_count("failed !='' and mergeid = 0 and print != 3 and (".rtrim($fgshop,'or').") and dtime > '".(time()-90*24*3600)."'"); $this->data['error'] = $error; $this->data['power'] = $vip; $this->_Template('fullorderxw',$this->data); } //筛选重复订单 public function _repeat() { $user = $this->user->get_api($_SESSION['api']); if($user) { $fgshop = "";$sid = ""; $user = explode('|',trim($user['shop'],'|')); foreach ($user as $value) { $fgshop .= " shop = ".$value." or"; $sid .= " id = ".$value." or"; } } $post = $this->input->post(NULL, TRUE); if(isset($post['page'])) { $page = $this->input->post('page',true); $perpage = $this->input->post('perpage',true); $shop = $this->input->post('shop',true); $timetk = $this->input->post('timetk',true); $timetj = $this->input->post('timetj',true); $timetk = strtotime($timetk); $timetj = strtotime($timetj); $where = "print != 999 and (".rtrim($fgshop,'or').")"; if($shop) { $where .= " and shop = '$shop'"; } if($timetk && $timetj) { $where .= " and dtime > '$timetk' and dtime < '$timetj'"; } //数据排序 $order_str = "id desc"; if(empty($page)) { $start = 0; $perpage = 1; } else { $start = ($page - 1)*$perpage; } //取得信息列表 $info_list = $this->fullorderxw->find_all($where,'id,shop,type,orderinfo,number,shipremarks,state,dtime,name,email,address'); $info = array(); $len = count($info_list); //格式化数据 foreach ($info_list as $key=>$value) { $shop = $this->shop->read($value['shop']); $info_list[$key]['shop'] = $shop['shopname']; $warehouse = $this->warehouse->read($value['type']); $info_list[$key]['type'] = $warehouse['title']; $typeclass = $this->typeclass->read($value['state']); $info_list[$key]['state'] = $typeclass['title']; $info_list[$key]['dtime'] = '

'.date('Y-m-d',$value['dtime']).'

'.date('H:i:s',$value['dtime']).'

'; } /** 操作合并 if($value['merge'] == 0) { $info_list[$key]['merge'] = "

合并订单

"; } else { if($value['merge'] == $value['id']) { $info_list[$key]['merge'] = "已合并"; } else { $info_list[$key]['merge'] = "被合并"; } } **/ for($i=0;$i<$len;$i++) { for($j=$i+1;$j<$len;$j++) { if ($info_list[$i]['name'] == $info_list[$j]['name'] || $info_list[$i]['address'] == $info_list[$j]['address'] || $info_list[$i]['email'] == $info_list[$j]['email']) { if(!array_key_exists($j,$info)) { $info[$j] = $info_list[$j]; } if(!array_key_exists($i,$info)) { $info[$i] = $info_list[$i]; } } } } rsort($info); $total = count($info); $pagenum = ceil($total/$perpage); $over = $total-($start+$perpage); $rows = array('total'=>$total,'over'=>$over,'pagenum'=>$pagenum,'rows'=>(array_slice($info,$start,$perpage))); echo json_encode($rows);exit; } $wlshop = $this->shop->find_all('1=1 and '.rtrim($sid,'or')); $this->data['wlshop'] = $wlshop; $this->_Template('fullorderxw_repeat',$this->data); } //修改 public function _edit($arg_array) { if(isset($_SESSION['api'])) { $user = $this->user->get_api($_SESSION['api']); if($user['vip'] == 1) { $vip = 1; } else { $vip = 0; } } else { $vip = 0; } $post = $this->input->post(NULL, TRUE); if(isset($post['id'])) { $id = $this->input->post('id',true); $data = $this->fullorderxw->read($id); $post['type'] = $this->input->post('warehouse',true); $post['country'] = $this->input->post('country',true); $currency = $this->country->read($post['country']); $post['al'] = $currency['lb']; $post['freight'] = $this->input->post('freight',true); $post['expressmoney'] = $this->input->post('expressmoney',true); $post['shouldmoney'] = $this->input->post('shouldmoney',true); $orderremarks = $this->input->post('orderremarks'); $orderremarks = str_replace(array('%26','%2B'),array('&','+'),$orderremarks); $post['orderremarks'] = $orderremarks; $shipremarks = $this->input->post('shipremarks'); $shipremarks = str_replace(array('%26','%2B'),array('&','+'),$shipremarks); $post['shipremarks'] = preg_replace('/( | | |\s)/',' ',$shipremarks); $post['email'] = $this->input->post('email',true); //$post['paypal'] = $this->input->post('paypal',true); $name = $this->input->post('name',true); $post['name'] = str_replace("'","’",$name); $post['phone'] = $this->input->post('phone',true); $post['phone'] = preg_replace('/\D/s','',$post['phone']); $post['country'] = $this->input->post('country',true); $post['province'] = $this->input->post('province',true);//省、州 $post['province'] = preg_replace("/^[\s\v".chr(227).chr(128)."]+/","", $post['province']); //替换开头空字符 $post['province'] = preg_replace("/[\s\v".chr(227).chr(128)."]+$/","", $post['province']); //替换结尾空字符 $post['city'] = $this->input->post('city',true);//城市 $post['city'] = preg_replace("/^[\s\v".chr(227).chr(128)."]+/","", $post['city']); //替换开头空字符 $post['city'] = preg_replace("/[\s\v".chr(227).chr(128)."]+$/","", $post['city']); //替换结尾空字符 $post['zipcode'] = $this->input->post('zipcode',true);//邮编 $post['zipcode'] = preg_replace("/^[\s\v".chr(227).chr(128)."]+/","", $post['zipcode']); //替换开头空字符 $post['zipcode'] = preg_replace("/[\s\v".chr(227).chr(128)."]+$/","", $post['zipcode']); //替换结尾空字符 $post['street'] = $this->input->post('street',true); $address = $this->input->post('address',true); $address = preg_replace('/( | | |\s)/',' ',$address); $post['address'] = str_replace("'","’",$address); $address2 = $this->input->post('address2',true); $address2 = preg_replace('/( | | |\s)/',' ',$address2); if($address2 == ' ') { $address2 = ''; } $post['address2'] = str_replace("'","’",$address2); $post['express'] = $this->input->post('express',true); $post['printtype'] = $this->input->post('printtype',true); $fpdata = $this->input->post('fpdata'); $fpdata = str_replace(array('%26','%2B'),array('&','+'),$fpdata); $post['fpdata'] = $fpdata; $post['waybill'] = $this->input->post('waybill',true); $post['msg'] = $this->input->post('msg',true); $post['zsbjz'] = $this->input->post('zsbjz',true); $post['refundy'] = $this->input->post('refundy',true); $post['refundj'] = $this->input->post('refundj',true); $rtime = $this->input->post('rtime',true); $post['rtime'] = strtotime($rtime); $post['rpaypal'] = $this->input->post('rpaypal',true); $post['rtext'] = $this->input->post('rtext',true); $post['sbpm'] = $this->input->post('sbpm',true); $post['edittime'] = time(); $editstate = $this->input->post('state',true); $whlabel = $this->input->post('whlabel',true); $fpcount = $this->input->post('fpcount',true); $post['ioss'] = $this->input->post('ioss',true); $post['waybill'] = preg_replace('/( | | | |\s)/','',$post['waybill']); $pay = $this->pay->get_typeclass($data['pay']); $yga = $post['shouldmoney']; $ygc = $data['estimaterate']; $post['budget'] = $this->input->post('newbudget',true); /** $post['budget'] = 0; $ifbudget = eval("return $yga*1.$ygc;"); if($ifbudget > 0) { $post['budget'] = eval("return $yga*1.$ygc;"); } **/ $whlabeldata = explode('|',trim($whlabel,'|'));$way = 0; foreach ($whlabeldata as $va) { if(stripos($va,'z') !== false) { $way += 1; } } if((($post['express'] == 2 && $post['type'] != 5) || ($post['express'] != 2 && $post['type'] == 5)) && $post['type'] != 34) { echo json_encode(array('msg'=>'此快递方式必须选择美国仓!','success'=>false));exit; } if($post['express'] == 42 && $post['sbpm'] != 'Human Hair Wigs' && $post['sbpm'] != 'Human Hair Goods' && $post['type'] != 34)//$post['express'] == 3 || { echo json_encode(array('msg'=>'此快递方式必须选择Human Hair Wigs/Human Hair Goods!','success'=>false));exit; } if($post['express'] == 24 && $post['sbpm'] != 'Hair Sample' && $post['sbpm'] != 'Human Hair Wigs' && $post['sbpm'] != 'Human Hair Goods' && $post['type'] != 34)//$post['express'] == 3 || { echo json_encode(array('msg'=>'此快递方式必须选择Hair Sample/Human Hair Wigs/Human Hair Goods!','success'=>false));exit; } if($post['country'] != 192 && $post['express'] == 1 && $post['sbpm'] != 'Synthetic Hair Wigs' && $post['sbpm'] != 'Synthetic Hair Goods' && $post['type'] != 34)//$post['express'] == 3 || { echo json_encode(array('msg'=>'非美国选择官方DHL必须选择Synthetic Hair Wigs/Synthetic Hair Goods','success'=>false));exit; } if($way == count($whlabeldata) && $post['type'] != 12) { echo json_encode(array('msg'=>'必须选择特殊仓!','success'=>false));exit; } if($way == '0' && $post['type'] == 12) { echo json_encode(array('msg'=>'特殊仓必须包含特殊仓货物!','success'=>false));exit; } $post['review'] = 1; if($post['zsbjz'] < '0.01' && $post['type'] != 34) { echo json_encode(array('msg'=>'总申报价错误!'.$post['type'],'success'=>false));exit; } if($data['library'] == 1) { if($data['print'] != 3) { $post['print'] = 1; $post['libraryconfirm'] = 1; $post['librarynot'] = "订单未打印,未审核或未通过"; } else { $post['libraryconfirm'] = 1; $post['librarynot'] = "订单被修改或重新提交"; } } if($data['yhs'] == 1) { echo json_encode(array('msg'=>'仓库货物验证中,请稍后再试!','success'=>false));exit; } if($post['express'] == 2 && (stripos($post['name'],'&') !== false || stripos($post['name'],"'") !== false)) { echo json_encode(array('msg'=>'USPS收件人或公司名不可用特殊符号!','success'=>false));exit; } if(strlen($post['client']) > 34 || strlen($post['name']) > 34)//收件人姓名或公司名不允许超过35位 { echo json_encode(array('msg'=>'收件人姓名或公司名不可超过34个字符!','success'=>false));exit; } if($post['express'] == '3' && $post['address2'] != '')//UPS不允许提交地址2 { echo json_encode(array('msg'=>'UPS不允许提交地址2','success'=>false));exit; } if(($post['express'] == '5' || $post['express'] == '24' || $post['express'] == '42' || $post['express'] == '31') && $post['country'] != 192 && $post['type'] != 34) { echo json_encode(array('msg'=>'非美国无法选择Fedex、DHL官方-美国!','success'=>false));exit; } if($post['express'] == '3' && $post['country'] != 192 && $post['country'] != 35) { echo json_encode(array('msg'=>'非美国和加拿大无法选择UPS!','success'=>false));exit; } if($post['express'] == '3' && $post['country'] == 35 && $post['zsbjz'] > 20) { echo json_encode(array('msg'=>'UPS加拿大最高申报不可超过20','success'=>false));exit; } if(($post['express'] == '28' || $post['express'] == '7') && $post['country'] != 191) { echo json_encode(array('msg'=>'非英国无法选择CNE和GES!','success'=>false));exit; } $express = $this->express->read($post['express']); if($express['ioss'] == 1 && $post['ioss'] == '') { echo json_encode(array('msg'=>'此快递方式必须选择IOSS!','success'=>false));exit; } if(strlen($post['address']) > $express['addresssize'] || strlen($post['address2']) > $express['addresssize']) { echo json_encode(array('msg'=>'此快递方地址不可超出'.$express['addresssize'].'个字符','success'=>false));exit; } if(strlen($post['address']) > 32 && ($post['express'] == 2 || $post['express'] == 16)) { echo json_encode(array('msg'=>'此快递方地址不可超出32个字符','success'=>false));exit; } if(strlen($post['address']) < 5) { echo json_encode(array('msg'=>'地址不可留空!','success'=>false));exit; } if($post['zsbjz'] > $express['sbjz']) { echo json_encode(array('msg'=>'总申报价值不可超出'.$express['sbjz'],'success'=>false));exit; } if($post['express'] == '2' && $post['zzl'] >= '16' && isset($post['js']) && $post['js'] == '0') { //echo json_encode(array('msg'=>'总重量大于等于16不可选FIRST CLASS','success'=>false));exit; } if(isset($post['bx'])) { if($post['express'] == '99' && $post['bx'] > 0) { echo json_encode(array('msg'=>'此物流不允许购买保险','success'=>false));exit; } } if(($post['express'] == '3' || $post['express'] == '42' || $post['express'] == '24') && $post['shouldmoney'] < 1) { //echo json_encode(array('msg'=>'零金额订单不可发 UPS/DHL官方-美国/Fedex(杭州)','success'=>false));exit; } if($post['express'] == '6' && $post['province'] == '') { echo json_encode(array('msg'=>'选择DPEX必须填写州信息','success'=>false));exit; } if($post['printtype'] == 1)//如果是运单 { $post['productdescription'] = $this->input->post('productdescription',true); $post['customs'] = $this->input->post('customs',true); } /** if($post['paypal'] != '') { $pp = $this->fullorderxw->get_paypal($post['paypal']); if(isset($pp['number']) && $pp['number'] != $data['number']) { echo json_encode(array('msg'=>'此交易号的订单已存在!-'.$pp['number'],'success'=>false));exit; } } **/ /** if($editstate == 216 && $data['state'] != 216) { echo json_encode(array('msg'=>'不可修改为完成状态','success'=>false));exit; } **/ if($editstate == 216 && preg_match('/\d/is',$post['waybill']) != true) { //echo json_encode(array('msg'=>'当前信息不可修改订单状态','success'=>false));exit; } else { $post['review'] = $data['review']; $post['state'] = $editstate; } $thisdata = $this->fullorderxw->read($id); $warehouse = $this->warehouse->read($thisdata['type']); $warehousenew = $this->warehouse->read($post['type']); if($warehousenew['bdcountry'] != 0 && $post['country'] != $warehousenew['bdcountry']) { echo json_encode(array('msg'=>'当前国家无法选择'.$warehousenew['title'].'!','success'=>false));exit; } if(($warehouse['zd'] == '1' || stripos($thisdata['whlabel'],'z|') !== false) && $thisdata['library'] == '2' && $post['type'] != $thisdata['type'])//如果已出库并且开启库存模式仓库或者有特殊库存,禁止调整仓库 { echo json_encode(array('msg'=>'此单已占用库存并出库,无法更改仓库!','success'=>false));exit; } $expt = $this->express->read($post['express']); if($expt['pt'] != '' && stripos($post['fpdata'],$expt['pt']) !== false && $post['type'] != 34) { echo json_encode(array('msg'=>$expt['ptts'],'success'=>false));exit; } /** if($warehouse['zd'] == '1' && $warehouse['ys'] != '1' && $thisdata['library'] == '2' && $post['fpdata'] != $thisdata['fpdata']) { echo json_encode(array('msg'=>'已扣减库存,无法更改产品!','success'=>false));exit; } **/ //开始注释 xyxg /** $ft = array(); $ftdata = explode('|',rtrim($fpcount,'|')); foreach ($ftdata as $va) { $ftitle = ''; $va = explode('-',trim($va,'-')); foreach ($va as $v) { $v = $this->typeclass->read($v); $ftitle .= $v['title'].' '; } $ft[] = rtrim($ftitle,' '); } if($data['library'] == 1) { $tqkcyz = $this->_kcyz($post['type'],$whlabel,$id,$data['shop'],$data['number']); if(isset($tqkcyz[0])) { echo json_encode(array('t'=>2,'msg'=>"红色商品名库存匹配错误或库存不够扣减",'error'=>$tqkcyz,'success'=>false));exit; } if(stripos($whlabel,'z|') !== false || stripos($thisdata['whlabel'],'z|') !== false) { $tskcyz = $this->specialstock->get_kc($thisdata['state'],$post['state'],$whlabel,$thisdata['whlabel'],$thisdata['number']); if($tskcyz['t'] > '0') { echo $tskcyz['m'];exit; } } $kcyz = $this->whlabel->get_kc($thisdata['state'],$post['state'],$warehousenew['zd'],$warehousenew['ys'],$post['type'],$whlabel,$fpcount,$ft,$thisdata['number'],$thisdata['shop'],$thisdata['type'],$thisdata['whlabel']);//旧状态、新状态、仓库占单设置、仓库预设设置、新仓库、新产品简化数字、旧产品数字、旧产品名称、订单号、订单店铺、旧订单仓库、旧产品简化数字 if($kcyz['t'] > '0') { echo $kcyz['m'];exit; } } //结束注释 **/ /** 重新写产品名称 $dtctitle = array(); $dictionaries = $this->typeclass->find_all(); foreach ($dictionaries as $v) { $dtctitle[$v['id']] = array($v['title'],$v['bqsku']); } if(stripos($fpdata,'-128-') !== false || stripos($fpdata,'-127-') !== false) { $dfp = explode(';',trim($fpdata,';')); $fdata = ''; foreach ($dfp as $k=>$v) { $ptitleb = ''; $fp = explode('|',trim($v,'|')); $fp0 = explode(',',$fp[0]); $fp1 = explode('-',trim($fp0[1],'-')); foreach ($fp1 as $vv) { $ptitleb .= isset($dtctitle[$vv])?$dtctitle[$vv][0].' ':''; } $ptitleb .= $dtctitle[$fp0[0]][1].'inch '; $fp[1] = $ptitleb; $fdata .= implode("|",$fp).";"; } $fpdata = $fdata; } **/ $warehouse = $this->warehouse->read($post['type']); if($data['library'] == 1 || ($data['library'] != 2 && ($post['state'] != '207' || $post['state'] == '209'))) { $kcyz = $this->ck->get_kc($post['state'],$warehouse,$thisdata['shop'],$thisdata['number'],$whlabel,$fpdata); if($kcyz['t'] > '0') { echo $kcyz['m'];exit; } else if($kcyz['fpdata'] != '') { $post['whlabel'] = $kcyz['whlabel']; $post['fpdata'] = $kcyz['fpdata']; } } $fl = $this->ck->get_fl($warehouse['hz'],$whlabel,$fpdata); $post['sfxh'] = $fl['sfxh']; $post['ckfl'] = $fl['ckfl']; //查询净重开始 $post['jweight'] = $this->weight->get_weightcx($post['fpdata']); //查询净重结束 if($this->fullorderxw->save($post,$id)) { if($data['printtime'] == '0') { $xghz = ',将自动禁止打印'; } else if($data['printtime'] > '0' && $data['librarytime'] == '0') { $q = ''; if($data['libraryconfirm'] == 1) { $q = ',改前状态为:禁止出库'; } $xghz = ',将自动禁止发货'.$q; } else { $xghz = ''; } echo json_encode(array('msg'=>'修改成功'.$xghz,'id'=>$id,'success'=>true));exit; } else { echo json_encode(array('msg'=>'修改失败,请重试','success'=>false));exit; } } $this->data['vip'] = $vip; $arg_array = $arg_array[0];$fpdata = array(); $fullorderxw = $this->fullorderxw->read($arg_array); $fullorderxw['parameter'] = str_replace(",","---",$fullorderxw['parameter']); $country = $this->country->find_all('1=1','id,name','name asc');//所有国家信息 $express = $this->express->find_all('1=1');//所有快递配置信息 $this->data['fullorderxw'] = $fullorderxw; $this->data['country'] = $country; $this->data['express'] = $express; $this->data['dtime'] = date('Y-m-d H:i:s',$fullorderxw['dtime']); $warehouse = $this->warehouse->read($fullorderxw['type']); if(stripos($fullorderxw['fpdata'],';') !== false) { $fpdata = explode(';',rtrim($fullorderxw['fpdata'],';')); foreach ($fpdata as $k=>$v) { $xxv = explode('|',$v); if(isset($xxv[9]) && stripos($xxv[9],$warehouse['hz']) !== false && $warehouse['hz'] != '' && $warehouse['zd'] == 1) { $xxv['zd'] = "

已占单

"; $bdck = $warehouse['bdck']; if(stripos($xxv[9],'~') !== false) { $dxxv = explode('~',trim($xxv[9],'~')); foreach ($dxxv as $val) { $wzid = $this->$bdck->read(trim($val,$warehouse['hz'])); if($wzid['details'] != '') { $xxv['zd'] .= '

位置:'.$wzid['details'].' - '.$wzid['cpid'].'

'; } } } else { $wzid = $this->$bdck->read(trim($xxv[9],$warehouse['hz'])); if($wzid['details'] != '') { $xxv['zd'] .= '

位置:'.$wzid['details'].' - '.$wzid['cpid'].'

'; } } } $fpdata[$k] = $xxv; } } $this->data['fpdata'] = $fpdata; $thfpdataxs = array(); if($fullorderxw['thfpdata'] != '') { $thfpdata = explode(';',trim($fullorderxw['thfpdata'],';')); foreach ($thfpdata as $k=>$v) { $thxs = explode('~',trim($v,'~')); $thxs[0] = explode('|',trim($thxs[0],'|')); $thxs[1] = explode('|',trim($thxs[1],'|')); $thfpdataxs[] = array("

".$thxs[0][1]."

".$thxs[1][1]."

","

".$thxs[0][2]."

".$thxs[1][2]."

","

",$thxs[1][0]); } } $this->data['thfpdata'] = $thfpdataxs; $shop = $this->shop->read($fullorderxw['shop']); $this->data['et'] = $shop['estimaterate'];//此店铺配置预计到帐金额比例 $is = 0; if($shop['type'] == 269)//判断是否独立站,269是独立站 { $is = 1; } $this->data['is'] = $is; if(isset($_SESSION['api'])) { $user = $this->user->get_api($_SESSION['api']); if($user['vip'] == 1) { $vip = 1; } else { $vip = 0; } } else { $vip = 0; } $this->data['power'] = $vip; /** 历史运单号展示并下载PDF 打印时间需要2019-3-21 0点之后有记录 **/ $downwaybill = '';$dwls = array(); $oldwaybill = explode('-',ltrim($fullorderxw['oldwaybill'],'-')); if(isset($oldwaybill[0][1])) { $oldwaybill = array_reverse($oldwaybill); //调整顺序 foreach ($oldwaybill as $v) { $dw = explode('/',$v); if(isset($dw[1])) { if(stripos($downwaybill,$dw[1]) === false) { $dwls[$dw[1]] = 1; $downwaybill .= ''.$dw[1].'、'; } } } } if($fullorderxw['printtype'] == 1) { if($fullorderxw['waybill'] != '' && !isset($dwls[$fullorderxw['waybill']])) { $downwaybill = ''.$fullorderxw['waybill'].'、'.$downwaybill; } } $this->data['downwaybill'] = rtrim($downwaybill,'、'); /** 历史打印时间 **/ $printtime = ''; if($fullorderxw['oldprinttime']) { $pte = explode('-',rtrim($fullorderxw['oldprinttime'],'-')); foreach ($pte as $v) { $printtime .= date('Y-m-d H:i:s',$v).'、'; } } $this->data['printtime'] = rtrim($printtime,'、'); $product = ''; $fullorderxw['product'] = str_replace("'","",$fullorderxw['product']); if($fullorderxw['link'] != '' && $fullorderxw['source'] != '1') { $pt = explode(',',$fullorderxw['product']); $lk = explode(',',$fullorderxw['link']); for($i=0;$icolourorderts->get_texturl($pt[$i],$lk[$i]); } else { $octs = ''; } $a = $octs?''.$pt[$i].'':$pt[$i]; //$a = (stripos($pt[$i],'Lace Front Wig Body Wave Human Hair Wigs Pre Plucked Brazilian Virgin Hair') !== false || stripos($pt[$i],'Deep Wave Wig 100 Human Hair Swiss Lace Curly Hair Lace Front Wig') !== false || stripos($pt[$i],'Alipearl Lace Front Wig Silky Straight 100% Virgin Human Hair') !== false || stripos($pt[$i],'Long Wigs Water Wave Lace Front Wigs Natural Wave Wigs For Sale') !== false || stripos($pt[$i],'Deep Wave Long Hair Wigs Lace Front Wigs Cheap Human Hair Wigs') !== false || stripos($pt[$i],'Long Wigs Loose Deep Wave Lace Front Wigs For Black Women') !== false || stripos($pt[$i],'Long Black Wigs Body Wave Lace Front Wigs With Baby Hair') !== false || stripos($pt[$i],'Long Curly Wigs Lace Front Wigs Human Hair Lace Front Wigs') !== false || stripos($pt[$i],'Blonde Skunk Stripe Hair Natural Body Wave Hairstyle Lace Wigs for Women') !== false)?''.$pt[$i].'':$pt[$i]; if(isset($lk[$i])) { $product .= ($product != '')?' , '.$a.'':''.$a.''; } else { $product .= ($product != '')?' , '.$a:$a; } } } else { $octs = $this->colourorderts->get_text($fullorderxw['product']); $a = $octs?''.$fullorderxw['product'].'':$fullorderxw['product']; //$a = (stripos($fullorderxw['product'],'Lace Front Wig Body Wave Human Hair Wigs Pre Plucked Brazilian Virgin Hair') !== false || stripos($fullorderxw['product'],'Deep Wave Wig 100 Human Hair Swiss Lace Curly Hair Lace Front Wig') !== false || stripos($fullorderxw['product'],'Alipearl Lace Front Wig Silky Straight 100% Virgin Human Hair') !== false || stripos($fullorderxw['product'],'Long Wigs Water Wave Lace Front Wigs Natural Wave Wigs For Sale') !== false || stripos($fullorderxw['product'],'Deep Wave Long Hair Wigs Lace Front Wigs Cheap Human Hair Wigs') !== false || stripos($fullorderxw['product'],'Long Wigs Loose Deep Wave Lace Front Wigs For Black Women') !== false || stripos($fullorderxw['product'],'Long Black Wigs Body Wave Lace Front Wigs With Baby Hair') !== false || stripos($fullorderxw['product'],'Long Curly Wigs Lace Front Wigs Human Hair Lace Front Wigs') !== false || stripos($fullorderxw['product'],'Blonde Skunk Stripe Hair Natural Body Wave Hairstyle Lace Wigs for Women') !== false)?''.$fullorderxw['product'].'':$fullorderxw['product']; $product = $a; } $this->data['product'] = $product; $out = $this->systemtransfer->find_all("number = '".$fullorderxw['number']."'"); $outread = ''; if($out) { foreach ($out as $val) { $list = ''; $rk = explode('|',trim($val['rk'],'|')); $rktime = explode('|',trim($val['rktime'],'|')); $zw = array(); $t = $this->transfer->find_all("1=1"); foreach ($t as $v) { $zw[$v['id']] = $v['title']; } if($val['rk'] != '' && count($rk) > 0) { for($i=0;$i:'.$list.'
'; } } else { $systemwigsout = $this->systemwigsout->find_all("number = '".$fullorderxw['number']."'"); $outread = array(); if($systemwigsout) { foreach ($systemwigsout as $v) { if($v['czwarehouse'] == 37) { $outread[] = '华荣厂'; } else if($v['czwarehouse'] == 0) { $outread[] = '龙盈厂'; } $cz = explode('|',trim($v['cz'],'|')); $cztime = explode('|',trim($v['cztime'],'|')); $zw = $this->transfer->get_list(); if($v['cz'] != '' && count($cz) > 0) { for($i=0;$i'AL','alaska'=>'AK','arizona'=>'AZ','arkansas'=>'AR','california'=>'CA','colorado'=>'CO','connecticut'=>'CT','delaware'=>'DE','florida'=>'FL','georgia'=>'GA','hawaii'=>'HI','idaho'=>'ID','illinois'=>'IL','indiana'=>'IN','iowa'=>'IA','kansas'=>'KS','kentucky'=>'KY','louisiana'=>'LA','maine'=>'ME','maryland'=>'MD','massachusetts'=>'MA','michigan'=>'MI','minnesota'=>'MN','mississippi'=>'MS','missouri'=>'MO','montana'=>'MT','nebraska'=>'NE','nevada'=>'NV','new hampshire'=>'NH','new jersey'=>'NJ','new mexico'=>'NM','new york'=>'NY','north carolina'=>'NC','north dakota'=>'ND','ohio'=>'OH','oklahoma'=>'OK','oregon'=>'OR','pennsylvania'=>'PA','rhode island'=>'RI','south carolina'=>'SC','south dakota'=>'SD','tennessee'=>'TN','texas'=>'TX','utah'=>'UT','vermont'=>'VT','virginia'=>'VA','washington'=>'WA','west virginia'=>'WV','wisconsin'=>'WI','wyoming'=>'WY','district of columbia'=>'DC','virgin islands'=>'VI','guam'=>'GU','puerto rico'=>'PR'); $ToState = array_flip($ToState); $klarnadata3 = str_replace(' ','',$klarnadata[3]); $city = str_replace(' ','',$fullorderxw['city']); $klarnadataaddress = explode($city,$klarnadata3); if(isset($klarnadataaddress[1])) { $klarnadata3 = $city.$klarnadataaddress[1]; $klarnadatacolor = explode(',',$klarnadata3); unset($klarnadatacolor[4]); unset($klarnadatacolor[6]); if(isset($ToState[$klarnadatacolor[1]])) { $klarnadatacolor[1] = ucwords($ToState[$klarnadatacolor[1]]); } $klarnadata['color'] = $klarnadataaddress[0].implode(",",$klarnadatacolor); } else { $klarnadata['color'] = $klarnadata3; } } } else { $klarnadata = ''; } $p = explode('-',$fullorderxw['paypal']); $this->data['klarnacolor'] = $klarnacolor; $this->data['klarnadata'] = $klarnadata; $this->data['systemwigsout'] = $outread; $quantity = explode(';',trim($fullorderxw['quantity'],';')); $qc = 0; foreach ($quantity as $v) { if($v > 1) { $qc += 1; } } $this->data['qc'] = $qc; $this->_Template('fullorderxw_edit',$this->data); } //不可修改 public function _readonly($arg_array) { $post = $this->input->post(NULL, TRUE); if(isset($post['id'])) { $id = $this->input->post('id',true); $ud = $this->fullorderxw->read($id); $post['type'] = $this->input->post('warehouse',true); $post['orderremarks'] = $this->input->post('orderremarks',true); $post['state'] = $this->input->post('state',true); $post['msg'] = $this->input->post('msg',true); $post['refundy'] = $this->input->post('refundy',true); $post['refundj'] = $this->input->post('refundj',true); $fpdata = $this->input->post('fpdata'); $fpdata = str_replace(array('%26','%2B'),array('&','+'),$fpdata); $post['fpdata'] = $fpdata; $rtime = $this->input->post('rtime',true); $post['rtime'] = strtotime($rtime); $post['rpaypal'] = $this->input->post('rpaypal',true); $post['rtext'] = $this->input->post('rtext',true); $post['express'] = $this->input->post('express',true); $whlabel = $this->input->post('whlabel',true); $post['budget'] = $this->input->post('newbudget',true); //$post['ioss'] = $this->input->post('ioss',true); $post['edittime'] = time(); $editstate = $post['state']; /** if($post['state'] == 216 && $ud['state'] != 216) { echo json_encode(array('msg'=>'不可修改为完成状态','success'=>false));exit; } **/ $whlabeldata = explode('|',trim($whlabel,'|'));$way = 0; foreach ($whlabeldata as $va) { if(stripos($va,'z') !== false) { $way += 1; } } if(($post['express'] == 2 && $post['type'] != 5) || ($post['express'] != 2 && $post['type'] == 5)) { echo json_encode(array('msg'=>'此快递方式必须选择美国仓!','success'=>false));exit; } if($way == count($whlabeldata) && $post['type'] != 12) { echo json_encode(array('msg'=>'必须选择特殊仓!','success'=>false));exit; } if($way == '0' && $post['type'] == 12) { echo json_encode(array('msg'=>'特殊仓必须包含特殊仓货物!','success'=>false));exit; } $fpcount = $this->input->post('fpcount',true); if(!$fpcount) { echo json_encode(array('msg'=>'需要先清理浏览器缓存,刷新当前页面后再试!','success'=>false));exit; } if($ud['library'] == 1) { if($ud['print'] != 3) { $post['print'] = 1; $post['libraryconfirm'] = 1; $post['librarynot'] = "订单未打印,未审核或未通过"; } else { $post['libraryconfirm'] = 1; $post['librarynot'] = "订单被重新提交"; } } if(($post['express'] == '5' || $post['express'] == '24' || $post['express'] == '42' || $post['express'] == '31') && $ud['country'] != 192) { echo json_encode(array('msg'=>'非美国无法选择Fedex、DHL官方-美国!','success'=>false));exit; } if($post['express'] == '3' && $ud['country'] != 192 && $ud['country'] != 35) { echo json_encode(array('msg'=>'非美国和加拿大无法选择UPS!','success'=>false));exit; } if(($post['express'] == '28' || $post['express'] == '7') && $ud['country'] != 191) { echo json_encode(array('msg'=>'非英国无法选择CNE和GES!','success'=>false));exit; } $express = $this->express->read($post['express']); /** if($express['ioss'] == 1 && $post['ioss'] == '') { echo json_encode(array('msg'=>'此快递方式必须选择IOSS!','success'=>false));exit; } **/ $thisdata = $this->fullorderxw->read($id); $warehouse = $this->warehouse->read($thisdata['type']); $warehousenew = $this->warehouse->read($post['type']); if(($warehouse['zd'] == '1' || stripos($thisdata['whlabel'],'z|') !== false) && $thisdata['library'] == '2' && $post['type'] != $thisdata['type'])//如果已出库并且开启库存模式仓库或者有特殊库存,禁止调整仓库 { echo json_encode(array('msg'=>'此单已占用库存并出库,无法更改仓库!','success'=>false));exit; } if($ud['yhs'] == 1) { echo json_encode(array('msg'=>'仓库货物验证中,请稍后再试!','success'=>false));exit; } $expt = $this->express->read($post['express']); if($expt['pt'] != '' && stripos($post['fpdata'],$expt['pt']) !== false) { echo json_encode(array('msg'=>$expt['ptts'],'success'=>false));exit; } /** if($warehouse['zd'] == '1' && $warehouse['ys'] != '1' && $thisdata['library'] == '2' && $post['fpdata'] != $thisdata['fpdata']) { echo json_encode(array('msg'=>'已扣减库存,无法更改产品!','success'=>false));exit; } **/ /** if($warehousenew['zd'] == '1' && $editstate != $thisdata['state'] && $thisdata['library'] == '1')//如果提交的仓库开启库存模式并且更改订单状态并且未出库,那么拒绝 { echo json_encode(array('msg'=>'如需更改订单状态,请先把仓库选择为非开启库存模式仓库或等待订单出库!','success'=>false));exit; } if($warehousenew['zd'] == '1' && $editstate != '207' && $thisdata['library'] == '1')//如果提交的仓库开启库存模式并且更改订单状态并且未出库,那么拒绝 { echo json_encode(array('msg'=>'非待发货状态,不允许修改为开启库存模式仓库','success'=>false));exit; } **/ //开始注释 xyxg /** $ft = array(); $ftdata = explode('|',rtrim($fpcount,'|')); foreach ($ftdata as $va) { $ftitle = ''; $va = explode('-',trim($va,'-')); foreach ($va as $v) { $v = $this->typeclass->read($v); $ftitle .= $v['title'].' '; } $ft[] = rtrim($ftitle,' '); } $user = $this->user->get_api($_SESSION['api']); if($ud['library'] == 1) { $tqkcyz = $this->_kcyz($post['type'],$whlabel,$id,$ud['shop'],$ud['number']); if(isset($tqkcyz[0])) { echo json_encode(array('t'=>2,'msg'=>"红色商品名库存匹配错误或库存不够扣减",'error'=>$tqkcyz,'success'=>false));exit; } if(stripos($whlabel,'z|') !== false || stripos($thisdata['whlabel'],'z|') !== false) { $tskcyz = $this->specialstock->get_kc($thisdata['state'],$post['state'],$whlabel,$thisdata['whlabel'],$thisdata['number']); if($tskcyz['t'] > '0') { echo $tskcyz['m'];exit; } } $kcyz = $this->whlabel->get_kc($thisdata['state'],$post['state'],$warehousenew['zd'],$warehousenew['ys'],$post['type'],$whlabel,$fpcount,$ft,$thisdata['number'],$thisdata['shop'],$thisdata['type'],$thisdata['whlabel']);//旧状态、新状态、仓库占单设置、仓库预设设置、新仓库、新产品简化数字、旧产品数字、旧产品名称、订单号、订单店铺、旧订单仓库、旧产品简化数字 if($kcyz['t'] > '0') { echo $kcyz['m'];exit; } } //结束注释 **/ $warehouse = $this->warehouse->read($post['type']); if($ud['library'] == 1 || ($ud['library'] != 2 && ($post['state'] != '207' || $post['state'] == '209'))) { $kcyz = $this->ck->get_kc($post['state'],$warehouse,$thisdata['shop'],$thisdata['number'],$whlabel,$fpdata); if($kcyz['t'] > '0') { echo $kcyz['m'];exit; } else if($kcyz['fpdata'] != '') { $post['whlabel'] = $kcyz['whlabel']; $post['fpdata'] = $kcyz['fpdata']; } } $fl = $this->ck->get_fl($warehouse['hz'],$whlabel,$fpdata); $post['sfxh'] = $fl['sfxh']; $post['ckfl'] = $fl['ckfl']; //查询净重开始 $post['jweight'] = $this->weight->get_weightcx($post['fpdata']); //查询净重结束 if($this->fullorderxw->save($post,$id)) { if($ud['printtime'] == '0') { $xghz = ',将自动禁止打印'; } else if($ud['printtime'] > '0' && $ud['librarytime'] == '0') { $q = ''; if($ud['libraryconfirm'] == 1) { $q = ',改前状态为:禁止出库'; } $xghz = ',将自动禁止发货'.$q; } else { $xghz = ''; } echo json_encode(array('msg'=>'修改成功'.$xghz,'id'=>$id,'success'=>true));exit; } else { echo json_encode(array('msg'=>'修改失败,请重试','success'=>false));exit; } } $arg_array = $arg_array[0];$fpdata = array(); $fullorderxw = $this->fullorderxw->read($arg_array); $fullorderxw['shipremarks'] = str_replace(array('<','>'),array('<','>'),$fullorderxw['shipremarks']); $fullorderxw['parameter'] = str_replace(",","---",$fullorderxw['parameter']); $this->data['fullorderxw'] = $fullorderxw; $this->data['countrys'] = $this->country->find_all(); $this->data['express'] = $this->express->find_all(); $warehouse = $this->warehouse->read($fullorderxw['type']); if(stripos($fullorderxw['fpdata'],';') !== false) { $fpdata = explode(';',rtrim($fullorderxw['fpdata'],';')); foreach ($fpdata as $k=>$v) { $xxv = explode('|',$v); if(isset($xxv[9]) && stripos($xxv[9],$warehouse['hz']) !== false && $warehouse['hz'] != '' && $warehouse['zd'] == 1) { $xxv['zd'] = "

已占单

"; $bdck = $warehouse['bdck']; if(stripos($xxv[9],'~') !== false) { $dxxv = explode('~',trim($xxv[9],'~')); foreach ($dxxv as $val) { $wzid = $this->$bdck->read(trim($val,$warehouse['hz'])); if($wzid['details'] != '') { $xxv['zd'] .= '

位置:'.$wzid['details'].' - '.$wzid['cpid'].'

'; } } } else { $wzid = $this->$bdck->read(trim($xxv[9],$warehouse['hz'])); if($wzid['details'] != '') { $xxv['zd'] .= '

位置:'.$wzid['details'].' - '.$wzid['cpid'].'

'; } } } $fpdata[$k] = $xxv; } } $this->data['fpdata'] = $fpdata; $this->data['fpdata'] = $fpdata; $thfpdataxs = array(); if($fullorderxw['thfpdata'] != '') { $thfpdata = explode(';',trim($fullorderxw['thfpdata'],';')); foreach ($thfpdata as $k=>$v) { $thxs = explode('~',trim($v,'~')); $thxs[0] = explode('|',trim($thxs[0],'|')); $thxs[1] = explode('|',trim($thxs[1],'|')); $thfpdataxs[] = array("

".$thxs[0][1]."

".$thxs[1][1]."

","

".$thxs[0][2]."

".$thxs[1][2]."

","

",$thxs[1][0]); } } $this->data['thfpdata'] = $thfpdataxs; $shop = $this->shop->read($fullorderxw['shop']); $this->data['et'] = $shop['estimaterate'];//此店铺配置预计到帐金额比例 $is = 0; if($shop['type'] == 269)//判断是否独立站,269是独立站 { $is = 1; } $this->data['is'] = $is; //单项开始 $warehouse = $this->warehouse->read($fullorderxw['warehouse']);//发货仓库 $state = $this->typeclass->read($fullorderxw['state']);//订单状态 $country = $this->country->read($fullorderxw['country']);//国家 if($fullorderxw['capital'] == 1) { $capital = '暂未支付'; } else if($fullorderxw['capital'] == 2) { $capital = '部分支付'; } else if($fullorderxw['capital'] == 3) { $capital = '全部支付'; } if($fullorderxw['printtype'] == 1) { $printtype = '运单'; } else if($fullorderxw['printtype'] == 2) { $printtype = '发货单'; } else if($fullorderxw['printtype'] == 3) { $printtype = '不打印单据'; } else { $printtype = '未选择'; } $this->data['warehouse'] = $warehouse['title']; $this->data['state'] = $state['title']; $this->data['capital'] = $capital; $this->data['country'] = $country['name']; $this->data['printtype'] = $printtype; //单项结束 /** 历史运单号展示并下载PDF 打印时间需要2019-3-21 0点之后有记录 **/ $downwaybill = '';$dwls = array(); $oldwaybill = explode('-',ltrim($fullorderxw['oldwaybill'],'-')); if(isset($oldwaybill[0][1])) { $oldwaybill = array_reverse($oldwaybill); //调整顺序 foreach ($oldwaybill as $v) { $dw = explode('/',$v); if(isset($dw[1])) { if(stripos($downwaybill,$dw[1]) === false) { $dwls[$dw[1]] = 1; $downwaybill .= ''.$dw[1].'、'; } } } } if($fullorderxw['printtype'] == 1) { if($fullorderxw['waybill'] != '' && !isset($dwls[$fullorderxw['waybill']])) { $downwaybill = ''.$fullorderxw['waybill'].'、'.$downwaybill; } } $this->data['downwaybill'] = rtrim($downwaybill,'、'); /** 历史打印时间 **/ $printtime = ''; if($fullorderxw['oldprinttime']) { $pte = explode('-',rtrim($fullorderxw['oldprinttime'],'-')); foreach ($pte as $v) { $printtime .= date('Y-m-d H:i:s',$v).'、'; } } $this->data['printtime'] = rtrim($printtime,'、'); $product = ''; $fullorderxw['product'] = str_replace("'","",$fullorderxw['product']); if($fullorderxw['link'] != '' && $fullorderxw['source'] != '1') { $pt = explode(',',$fullorderxw['product']); $lk = explode(',',$fullorderxw['link']); for($i=0;$icolourorderts->get_texturl($pt[$i],$lk[$i]); } else { $octs = ''; } $a = $octs?''.$pt[$i].'':$pt[$i]; //$a = (stripos($pt[$i],'Lace Front Wig Body Wave Human Hair Wigs Pre Plucked Brazilian Virgin Hair') !== false || stripos($pt[$i],'Deep Wave Wig 100 Human Hair Swiss Lace Curly Hair Lace Front Wig') !== false || stripos($pt[$i],'Alipearl Lace Front Wig Silky Straight 100% Virgin Human Hair') !== false || stripos($pt[$i],'Long Wigs Water Wave Lace Front Wigs Natural Wave Wigs For Sale') !== false || stripos($pt[$i],'Deep Wave Long Hair Wigs Lace Front Wigs Cheap Human Hair Wigs') !== false || stripos($pt[$i],'Long Wigs Loose Deep Wave Lace Front Wigs For Black Women') !== false || stripos($pt[$i],'Long Black Wigs Body Wave Lace Front Wigs With Baby Hair') !== false || stripos($pt[$i],'Long Curly Wigs Lace Front Wigs Human Hair Lace Front Wigs') !== false || stripos($pt[$i],'Blonde Skunk Stripe Hair Natural Body Wave Hairstyle Lace Wigs for Women') !== false)?''.$pt[$i].'':$pt[$i]; if(isset($lk[$i])) { $product .= ($product != '')?' , '.$a.'':''.$a.''; } else { $product .= ($product != '')?' , '.$a:$a; } } } else { $octs = $this->colourorderts->get_text($fullorderxw['product']); $a = $octs?''.$fullorderxw['product'].'':$fullorderxw['product']; //$a = (stripos($fullorderxw['product'],'Lace Front Wig Body Wave Human Hair Wigs Pre Plucked Brazilian Virgin Hair') !== false || stripos($fullorderxw['product'],'Deep Wave Wig 100 Human Hair Swiss Lace Curly Hair Lace Front Wig') !== false || stripos($fullorderxw['product'],'Alipearl Lace Front Wig Silky Straight 100% Virgin Human Hair') !== false || stripos($fullorderxw['product'],'Long Wigs Water Wave Lace Front Wigs Natural Wave Wigs For Sale') !== false || stripos($fullorderxw['product'],'Deep Wave Long Hair Wigs Lace Front Wigs Cheap Human Hair Wigs') !== false || stripos($fullorderxw['product'],'Long Wigs Loose Deep Wave Lace Front Wigs For Black Women') !== false || stripos($fullorderxw['product'],'Long Black Wigs Body Wave Lace Front Wigs With Baby Hair') !== false || stripos($fullorderxw['product'],'Long Curly Wigs Lace Front Wigs Human Hair Lace Front Wigs') !== false || stripos($fullorderxw['product'],'Blonde Skunk Stripe Hair Natural Body Wave Hairstyle Lace Wigs for Women') !== false)?''.$fullorderxw['product'].'':$fullorderxw['product']; $product = $a; } $this->data['product'] = $product; $out = $this->systemtransfer->find_all("number = '".$fullorderxw['number']."'"); $outread = ''; if($out) { foreach ($out as $val) { $list = ''; $rk = explode('|',trim($val['rk'],'|')); $rktime = explode('|',trim($val['rktime'],'|')); $zw = array(); $t = $this->transfer->find_all("1=1"); foreach ($t as $v) { $zw[$v['id']] = $v['title']; } if($val['rk'] != '' && count($rk) > 0) { for($i=0;$i:'.$list.'
'; } } else { $systemwigsout = $this->systemwigsout->find_all("number = '".$fullorderxw['number']."'"); $outread = array(); if($systemwigsout) { foreach ($systemwigsout as $v) { if($v['czwarehouse'] == 37) { $outread[] = '华荣厂'; } else if($v['czwarehouse'] == 0) { $outread[] = '龙盈厂'; } $cz = explode('|',trim($v['cz'],'|')); $cztime = explode('|',trim($v['cztime'],'|')); $zw = $this->transfer->get_list(); if($v['cz'] != '' && count($cz) > 0) { for($i=0;$i'AL','alaska'=>'AK','arizona'=>'AZ','arkansas'=>'AR','california'=>'CA','colorado'=>'CO','connecticut'=>'CT','delaware'=>'DE','florida'=>'FL','georgia'=>'GA','hawaii'=>'HI','idaho'=>'ID','illinois'=>'IL','indiana'=>'IN','iowa'=>'IA','kansas'=>'KS','kentucky'=>'KY','louisiana'=>'LA','maine'=>'ME','maryland'=>'MD','massachusetts'=>'MA','michigan'=>'MI','minnesota'=>'MN','mississippi'=>'MS','missouri'=>'MO','montana'=>'MT','nebraska'=>'NE','nevada'=>'NV','new hampshire'=>'NH','new jersey'=>'NJ','new mexico'=>'NM','new york'=>'NY','north carolina'=>'NC','north dakota'=>'ND','ohio'=>'OH','oklahoma'=>'OK','oregon'=>'OR','pennsylvania'=>'PA','rhode island'=>'RI','south carolina'=>'SC','south dakota'=>'SD','tennessee'=>'TN','texas'=>'TX','utah'=>'UT','vermont'=>'VT','virginia'=>'VA','washington'=>'WA','west virginia'=>'WV','wisconsin'=>'WI','wyoming'=>'WY','district of columbia'=>'DC','virgin islands'=>'VI','guam'=>'GU','puerto rico'=>'PR'); $ToState = array_flip($ToState); $klarnadata3 = str_replace(' ','',$klarnadata[3]); $city = str_replace(' ','',$fullorderxw['city']); $klarnadataaddress = explode($city,$klarnadata3); if(isset($klarnadataaddress[1])) { $klarnadata3 = $city.$klarnadataaddress[1]; $klarnadatacolor = explode(',',$klarnadata3); unset($klarnadatacolor[4]); unset($klarnadatacolor[6]); if(isset($ToState[$klarnadatacolor[1]])) { $klarnadatacolor[1] = ucwords($ToState[$klarnadatacolor[1]]); } $klarnadata['color'] = $klarnadataaddress[0].implode(",",$klarnadatacolor); } else { $klarnadata['color'] = $klarnadata3; } } } else { $klarnadata = ''; } $p = explode('-',$fullorderxw['paypal']); $this->data['klarnacolor'] = $klarnacolor; $this->data['klarnadata'] = $klarnadata; $this->data['systemwigsout'] = $outread; $quantity = explode(';',trim($fullorderxw['quantity'],';')); $qc = 0; foreach ($quantity as $v) { if($v > 1) { $qc += 1; } } $this->data['qc'] = $qc; $this->_Template('fullorderxw_readonly',$this->data); } //浏览列表 public function _readlist() { if(isset($_SESSION['api'])) { $user = $this->user->get_api($_SESSION['api']); $usp = $user; $fgshop = "";$sid = ""; $usersp = explode('|',trim($user['shop'],'|')); foreach ($usersp as $value) { $fgshop .= " shop = ".$value." or"; $sid .= " id = ".$value." or"; } } $post = $this->input->post(NULL, TRUE); if(isset($post['page'])) { $page = $this->input->post('page',true); $perpage = $this->input->post('perpage',true); $shop = $this->input->post('shop',true); $warehouse = $this->input->post('warehouse',true); $express = $this->input->post('express',true); $state = $this->input->post('state',true); $print = $this->input->post('print',true); $libraryconfirm = $this->input->post('libraryconfirm',true); $orderinfo = $this->input->post('orderinfo',true); $client = $this->input->post('name',true); $email = $this->input->post('email',true); $number = $this->input->post('number',true); $waybill = $this->input->post('waybill',true); $authorid = $this->input->post('authorid',true); $sourcecontentid = $this->input->post('sourcecontentid',true); $timetk = $this->input->post('timetk',true); $timetj = $this->input->post('timetj',true); $timetk = strtotime($timetk); $timetj = strtotime($timetj); $where = "1=1 and mergeid = 0 and (".rtrim($fgshop,'or').")"; if($shop) { $where .= " and shop = '$shop'"; } if($warehouse) { $where .= " and type = '$warehouse'"; } if($express) { $where .= " and express = '$express'"; } if($state) { $where .= " and state = '$state'"; } if($print) { $where .= " and print = '$print'"; } if($libraryconfirm) { $where .= " and libraryconfirm = '$libraryconfirm'"; } if($orderinfo) { $where .= " and orderinfo = '$orderinfo'"; } if($client) { $where .= " and client like '%$client%'"; } if($email) { $where .= " and email = '$email'"; } if($number) { $where .= " and number = '$number'"; } if($waybill) { $where .= " and waybill = '$waybill'"; } if($authorid) { $where .= " and authorid = '$authorid'"; } if($sourcecontentid) { $where .= " and sourcecontentid = '$sourcecontentid'"; } if($timetk && $timetj) { $timetj = $timetj+24*3600; $where .= " and dtime > '$timetk' and dtime < '$timetj'"; } //数据排序 $order_str = "dtime desc"; if(empty($page)) { $start = 0; $perpage = 1; } else { $start = ($page - 1)*$perpage; } //取得信息列表 $info_list = $this->fullorderxw->find_all($where,'id,shop,type,orderinfo,number,sname,state,dtime,review,libraryconfirm,express,waybill,exstate,orderremarks,library,clientremarks',$order_str,$start,$perpage); //格式化数据 $dt = 0; foreach ($info_list as $key=>$value) { $ud = $this->fullorderxw->read($value['id']); $ud['address'] = str_replace("'","’",$ud['address']); $ud['name'] = str_replace("'","’",$ud['name']); $customer = $this->customertt->get_email($ud['email'],$value['shop']); $customernum = $this->fullorderxw->find_count("email = '".$ud['email']."' and shop = '".$value['shop']."'"); preg_match_all('/[0-9]/u',$ud['phone'],$result); $numphone = join('',$result[0]); $customerb = $this->customertt->find_all("type = 2 and (email = '".$ud['email']."' or address = '".$ud['address']."' or numphone = '".$numphone."')",'*','id desc'); $customerc = $this->customertt->find_all("type = 1 and shop = '".$ud['shop']."' and address = '".$ud['address']."' and numphone = '".$numphone."'",'*','id desc'); //$a = array_column($customer, 'email'); //三维找其中健的数组 //$a = array_flip($a); //键和值调换 $lkh = $value['sname']; $djlkh = 0;$djhmd = 0; if($customer) { if(($customer['type'] == 1 && $customernum > 1))// || $customerc['type'] == 1 && $customerc['num'] > 1 { $count = $customer['count']?'':''; $lkh = "

".$value['sname']."

".$count."老客户

"; $djlkh = 1; $djcount = $count; } else if(isset($customerc[0]['num'])) { if($customerc[0]['num'] > 1) { $count = $customer['count']?'':''; $lkh = "

".$value['sname']."

".$count."老客户

"; $djlkh = 1; $djcount = $count; } } } if($customerb) { $hmsp = $this->shop->read($customerb[0]['shop']); $count = $customerb[0]['count']?'':''; $lkh = "

".$value['sname']."

".$count."黑名单

来自".$hmsp['shopname']."

"; $djhmd = 1; } if($djlkh == '1' && $djhmd == '1') { $lkh = "

".$value['sname']."

".$djcount."老客户 - ".$count."黑名单

来自".$hmsp['shopname']."

"; } $info_list[$key]['sname'] = $lkh; $shop = $this->shop->read($value['shop']); $info_list[$key]['shop'] = $shop['shopname']; //$info_list[$key]['user'] = $shop['shopuser']; $warehouse = $this->warehouse->read($value['type']); $warehousetitle = $warehouse['title']; if($value['type'] != 1){$warehousetitle = "".$warehouse['title']."";} $info_list[$key]['type'] = $warehousetitle; $typeclass = $this->typeclass->read($value['state']); $info_list[$key]['state'] = $typeclass['spare']; $wl = ''; if($value['exstate'] == '99') { $wl = '未获取到物流信息'; } else if($value['exstate'] == '1') { $wl = '已揽收'.$ud['excontent'].''; } else if($value['exstate'] == '2') { $wl = '在途中'.$ud['excontent'].''; } else if($value['exstate'] == '3') { $wl = '派送中'.$ud['excontent'].''; } else if($value['exstate'] == '4') { $wl = '已签收'.$ud['excontent'].''; } else if($value['exstate'] == '5') { $wl = '派送异常'.$ud['excontent'].''; } $info_list[$key]['exstate'] = $wl.'
'; if($ud['source'] == 1) //线下单用订单时间,其他用付款时间 { $info_list[$key]['dtime'] = '

'.date('Y-m-d',$ud['dtime']).'

'.date('H:i:s',$ud['dtime']).'

'; } else { $info_list[$key]['dtime'] = '

'.date('Y-m-d',$value['dtime']+$dt).'

'.date('H:i:s',$value['dtime']+$dt).'

'; } if($value['review'] == 1) { $info_list[$key]['review'] = "未送审"; } else if($value['review'] == 2) { $info_list[$key]['review'] = "待审核"; } else if($value['review'] == 3) { $info_list[$key]['review'] = "不通过"; } else if($value['review'] == 4) { $info_list[$key]['review'] = "取消重审"; } else if($value['review'] == 5) { $info_list[$key]['review'] = "审核通过"; } else if($value['review'] == 6) { $info_list[$key]['review'] = "自动通过"; } if($ud['dlz'] == 1) { $dlz = "

独立站已更新

"; } else if($ud['dlz'] == 3) { $dlz = "

不需要更新

"; } else if($ud['dlz'] == 2) { $dlz = "

独立站更新失败

"; } else { $dlz = ""; } if($value['waybill'] != "") { $info_list[$key]['waybill'] = "

".$value['waybill']."

".$dlz; } if($value['express'] != 0) { $express = $this->express->read($value['express']); $expressservicename = $express['servicename']; if($value['express'] != 1){$expressservicename = "".$express['servicename']."";} $info_list[$key]['express'] = $expressservicename; } else { $info_list[$key]['express'] = "无"; } $tly = ""; if($value['clientremarks'] != "") { $tly = "

有客户留言

"; } if($value['library'] == 1 && $ud['printtype'] == 3) { $info_list[$key]['library'] = "不需要"; } else if($value['library'] == 1 && $ud['printtype'] != 3) { $info_list[$key]['library'] = "未出库"; } else if($value['library'] == 2) { $info_list[$key]['library'] = '

'.date('Y-m-d',$ud['librarytime']).'

'.date('H:i:s',$ud['librarytime']).'出库

'; } else if($value['library'] == 3) { $info_list[$key]['library'] = '

'.date('Y-m-d',$ud['retreattime']).'

'.date('H:i:s',$ud['retreattime']).'退库

'; } if($ud['authorid'] != '' && $ud['authorid'] != 0) { $info_list[$key]['orderremarks'] = '

'.$value['orderremarks'].'

author_id:

'.$ud['authorid'].'

source_content_id:

'.$ud['sourcecontentid'].'

'; } } $total = $this->fullorderxw->find_count($where); $pagenum = ceil($total/$perpage); $over = $total-($start+$perpage); $rows = array('total'=>$total,'over'=>$over,'pagenum'=>$pagenum,'rows'=>($info_list)); echo json_encode($rows);exit; } $wlshop = $this->shop->find_all('1=1 and '.rtrim($sid,'or')); $this->data['wlshop'] = $wlshop; $this->_Template('fullorderxw_readlist',$this->data); } public function _readlistdown() { if(isset($_SESSION['api'])) { $user = $this->user->get_api($_SESSION['api']); $usp = $user; $fgshop = "";$sid = ""; $usersp = explode('|',trim($user['shop'],'|')); foreach ($usersp as $value) { $fgshop .= " shop = ".$value." or"; $sid .= " id = ".$value." or"; } } $post = $this->input->get(NULL, TRUE); if(isset($post['excel'])) { $shop = $this->input->get('shop',true); $warehouse = $this->input->get('warehouse',true); $express = $this->input->get('express',true); $state = $this->input->get('state',true); $print = $this->input->get('print',true); $libraryconfirm = $this->input->get('libraryconfirm',true); $orderinfo = $this->input->get('orderinfo',true); $client = $this->input->get('name',true); $email = $this->input->get('email',true); $number = $this->input->get('number',true); $waybill = $this->input->get('waybill',true); $authorid = $this->input->get('authorid',true); $sourcecontentid = $this->input->get('sourcecontentid',true); $timetk = $this->input->get('timetk',true); $timetj = $this->input->get('timetj',true); $timetk = strtotime($timetk); $timetj = strtotime($timetj); $where = "1=1 and mergeid = 0 and (".rtrim($fgshop,'or').")"; if($shop) { $where .= " and shop = '$shop'"; } if($warehouse) { $where .= " and type = '$warehouse'"; } if($express) { $where .= " and express = '$express'"; } if($state) { $where .= " and state = '$state'"; } if($print) { $where .= " and print = '$print'"; } if($libraryconfirm) { $where .= " and libraryconfirm = '$libraryconfirm'"; } if($orderinfo) { $where .= " and orderinfo = '$orderinfo'"; } if($client) { $where .= " and client like '%$client%'"; } if($email) { $where .= " and email = '$email'"; } if($number) { $where .= " and number = '$number'"; } if($waybill) { $where .= " and waybill = '$waybill'"; } if($authorid) { $where .= " and authorid = '$authorid'"; } if($sourcecontentid) { $where .= " and sourcecontentid = '$sourcecontentid'"; } if($timetk && $timetj) { $timetj = $timetj+24*3600; $where .= " and dtime > '$timetk' and dtime < '$timetj'"; } //数据排序 $order_str = "dtime desc"; //取得信息列表 $info_list = $this->fullorderxw->find_all($where,'shop,number,orderinfo,dtime,name,express,waybill,email,shipremarks,shouldmoney,orderremarks,librarytime,authorid,sourcecontentid',$order_str); //格式化数据 $dt = 0; foreach ($info_list as $key=>$value) { $shop = $this->shop->read($value['shop']); $info_list[$key]['shop'] = $shop['shopname']; $info_list[$key]['dtime'] = date('Y-m-d H:i:s',$value['dtime']); if($value['librarytime'] > 0) { $info_list[$key]['librarytime'] = date('Y-m-d H:i:s',$value['librarytime']); } if($value['express'] != 0) { $express = $this->express->read($value['express']); $info_list[$key]['express'] = $express['servicename']; } else { $info_list[$key]['express'] = "无"; } } $title = "订单列表 ".date("Y-m-d"); $titlename = "

".$title."

店铺 编号 订单号 订单日期 客户姓名 快递方式 运单号 邮箱 仓库品名 订单金额 订单备注 出库时间 author_id source_content_id
"; $filename = $title.".xls"; $tail = "\n"; $this->excel->get_fz2($info_list,$titlename,$filename,$tail); } } //删除 public function _del() { $post = $this->input->post(NULL, TRUE); if(isset($post['s'])) { $id_arr = $this->input->post('s'); $id_arr = explode(',',$id_arr); if(!$id_arr) { echo json_encode(array('msg'=>'参数错误!','success'=>false));exit; } //循环删除记录 foreach ($id_arr as $v) { $this->fullorderxw->remove($v); } echo json_encode(array('del'=>$id_arr,'msg'=>'删除记录成功!','success'=>true)); } } //查找商品价格 public function _price() { $post = $this->input->post(NULL, TRUE); if(isset($post['data'])) { $data = $this->input->post('data'); $data = explode('-',$data); $number = '';$num = count($data); //循环删除记录 for($i=0;$i<$num-1;$i++) { if($data[$i] != 0) { $number=$number.$data[$i]; if($i == 2) { $number=$number.$data[$num-1]; } } } $list = $this->productdescribe->get_number($number); if($list) { echo json_encode(array('msg'=>($list),'n'=>$data[$num-1],'number'=>$number,'success'=>true)); } else { $list = array('purchase'=>0,'cost'=>0,'salesprice'=>0); //echo json_encode(array('msg'=>'此信息没有配置价格!','n'=>$data[$num-1],'success'=>false));exit; echo json_encode(array('msg'=>($list),'n'=>$data[$num-1],'number'=>$number,'success'=>true));exit; } } } public function _customs() { $post = $this->input->post(NULL, TRUE); if(isset($post['e'])) { $e = $this->input->post('e');//快递信息 $c = $this->input->post('c');//国家信息 $data = $this->customs->find_all('express = "'.$e.'" and country = "'.$c.'"'); $list = $this->productdescription->find_all('express = "'.$e.'" and country = "'.$c.'"'); $rows = array(); foreach ($data as $key=>$value) { $detailed = explode('|',trim($value['detailed'],'|')); //此处未对比重量选择价值,暂直接选择第一条海关价值 $detailed = $this->detailed->read($detailed[0]); $money = $detailed['customsval'];//找到海关价值 } foreach ($list as $key=>$value) { $description = $this->typeclass->read($value['description']); $list[$key]['title'] = $description['title'];//产品描述名称 } if(!$data && !$list) { echo json_encode(array('msg'=>'无此快递配置信息!','success'=>false));exit; } else { //$list-title -description 取值 echo json_encode(array('money'=>sprintf("%.2f",$money),'msg'=>$list,'success'=>true)); } } } public function _express() { $post = $this->input->post(NULL, TRUE); if(isset($post['e'])) { $e = $this->input->post('e');//快递信息 $c = $this->input->post('c');//国家信息 $data = $this->logistics->find_all('express = "'.$e.'" and country = "'.$c.'"'); if(!$data) { echo json_encode(array('success'=>false));exit; } else { echo json_encode(array('money'=>sprintf("%.2f",$data[0]['firstmoney']),'success'=>true)); } } } public function _hl() { $post = $this->input->post(NULL, TRUE); if(isset($post['cy'])) { $hl = 0; $cy = $this->input->post('cy');//币种ID $cy = $this->typeclass->read($cy); $gethl = $this->hl->get_hl(); foreach ($gethl as $v) { $code = str_replace(" ","",$v['code']); if($code == $cy['title']) { $hl = $v['refePrice']/100; } } echo json_encode(array('msg'=>$hl,'success'=>true)); } } public function _operation() { $post = $this->input->post(NULL, TRUE); if(isset($post['type'])) { $type = $this->input->post('type'); $id = $this->input->post('id'); $msg = $this->input->post('msg'); if($type == 1)//禁止发货 { $d = $this->fullorderxw->read($id); if($d['library'] != 1) { echo json_encode(array('msg'=>'操作失败,订单非未出库状态!','success'=>false));exit; } if($msg == "") { echo json_encode(array('msg'=>'必须填写禁止原因!','success'=>false));exit; } if($d['print'] < 3) { $a = "订单未打印,"; } else { $a = ""; } if($this->fullorderxw->save(array('libraryconfirm'=>1,'librarynot'=>$a.$msg),$id)) { echo json_encode(array('msg'=>'操作成功','l'=>1,'d'=>$id,'success'=>true));exit; } else { echo json_encode(array('msg'=>'操作失败,请重试','success'=>false));exit; } } if($type == 6)//允许发货 { $d = $this->fullorderxw->read($id); if($d['library'] > 1) { echo json_encode(array('msg'=>'订单已出库,操作失败','success'=>false));exit; } if($d['print'] < 3) { $a = "订单未打印,"; } else { $a = ""; } if($this->fullorderxw->save(array('libraryconfirm'=>2,'librarynot'=>$a.$msg),$id)) { echo json_encode(array('msg'=>'操作成功','l'=>1,'d'=>$id,'success'=>true));exit; } else { echo json_encode(array('msg'=>'操作失败,请重试','success'=>false));exit; } } if($type == 7)//禁止打印 { $d = $this->fullorderxw->read($id); if($d['printtime'] != 0) { echo json_encode(array('msg'=>'订单已打印,操作失败','success'=>false));exit; } if($d['library'] > 1) { echo json_encode(array('msg'=>'订单已出库,操作失败','success'=>false));exit; } if($d['print'] < 3) { $a = "订单未打印,"; } else { $a = ""; } if($this->fullorderxw->save(array('print'=>1),$id)) { echo json_encode(array('msg'=>'操作成功','l'=>2,'d'=>$id,'success'=>true));exit; } else { echo json_encode(array('msg'=>'操作失败,请重试','success'=>false));exit; } } if($type == 8)//允许打印 { $d = $this->fullorderxw->read($id); /** if($d['printtime'] != 0) { echo json_encode(array('msg'=>'订单已打印,操作失败','success'=>false));exit; } **/ if($d['library'] > 1) { echo json_encode(array('msg'=>'订单已出库,操作失败','success'=>false));exit; } if($d['print'] < 3) { $a = "订单未打印,"; } else { $a = ""; } if($d['printtime'] == '0') { $bcprint = 2; } else { $bcprint = 3; } if($this->fullorderxw->save(array('print'=>$bcprint,'failed'=>''),$id)) { echo json_encode(array('msg'=>'操作成功','l'=>2,'d'=>$id,'success'=>true));exit; } else { echo json_encode(array('msg'=>'操作失败,请重试','success'=>false));exit; } } if($type == 9)//关闭 { if($this->fullorderxw->save(array('failed'=>''),$id)) { echo json_encode(array('msg'=>'操作成功','l'=>2,'d'=>$id,'success'=>true));exit; } else { echo json_encode(array('msg'=>'操作失败,请重试','success'=>false));exit; } } if($type == 2)//填写运单、修改运单 { $d = $this->fullorderxw->read($id); if($d['express'] == 0) { echo json_encode(array('msg'=>'操作失败,未选择物流方式!','success'=>false));exit; } if($d['library'] == 3 || ($d['print'] == 3 && $d['libraryconfirm'] == 1)) { echo json_encode(array('msg'=>'操作失败,不允许填写运单号!','success'=>false));exit; } $xg = $this->fullorderxw->read($id); $shop = $this->shop->read($xg['shop']); $ex = $this->express->read($xg['express']); $fs = $this->notice->get_ordertatus(216);//216成功状态 if($xg['source'] != 1) { //独立站地址更新订单状态、物流信息 $gx = $this->api->get_gx(substr($xg['orderinfo'],1),$msg,$xg,$shop,$ex,$xg['msg'],$xg['shopify']); } else if($xg['source'] == 1) { $gx['res'] = 3; $gx['state'] = 216; } if(!isset($gx['res'])) { $gx['res'] = 2; $gx['state'] = $xg['state']; } if($gx['res'] > 0 && $fs) { $warehouse = $this->warehouse->read($xg['type']); $ck = $this->_email($fs['content'],$xg,$warehouse['company']); } $msg = preg_replace('/( | | | |\s)/','',$msg); if($this->fullorderxw->save(array('waybill'=>$msg,'state'=>$gx['state'],'dlz'=>$gx['res']),$id)) { echo json_encode(array('msg'=>'操作成功','success'=>true));exit; } else { echo json_encode(array('msg'=>'操作失败,请重试','success'=>false));exit; } } } } public function _merge() { $post = $this->input->post(NULL, TRUE); if(isset($post['type'])) { $type = $this->input->post('type'); $id = $this->input->post('id'); $u = $this->fullorderxw->read($id); $rows = $this->fullorderxw->find_all('name = "'.$u['name'].'" or email = "'.$u['email'].'" or address = "'.$u['address'].'"','*','id desc'); if(count($rows)>1) { $this->db->trans_begin(); $fpdata=$rows[0]['fpdata'];//购买产品 $shouldmoney=$rows[0]['shouldmoney'];//购买应收金额 $budget=$rows[0]['budget'];//预估到帐金额 $cost=$rows[0]['cost'];//成本金额 $merge=$rows[0]['id']; $d = array($rows[0]['id']); for($i=1;$ifullorderxw->save(array('merge'=>$rows[0]['id'],'mergeid'=>1),$rows[$i]['id']); } $this->fullorderxw->save(array('fpdata'=>$fpdata,'shouldmoney'=>$shouldmoney,'budget'=>$budget,'cost'=>$cost,'merge'=>$merge),$rows[0]['id']); if ($this->db->trans_status() === FALSE) { $this->db->trans_commit(); echo json_encode(array('msg'=>'操作失败,请重试','success'=>false));exit; } else { $this->db->trans_commit(); echo json_encode(array('msg'=>'操作成功','d'=>($d),'b'=>$rows[0]['id'],'success'=>true)); } } } } //评价管理 public function _evaluate() { $user = $this->user->get_api($_SESSION['api']); if($user) { $fgshop = "";$sid = ""; $user = explode('|',trim($user['shop'],'|')); foreach ($user as $value) { $fgshop .= " shop = ".$value." or"; $sid .= " id = ".$value." or"; } } $post = $this->input->post(NULL, TRUE); if(isset($post['page'])) { $page = $this->input->post('page',true); $perpage = $this->input->post('perpage',true); $shop = $this->input->post('shop',true); $where = "1=1 and evaluate = 0 and (".rtrim($fgshop,'or').")"; if($shop) { $where .= " and shop = '$shop'"; } //数据排序 $order_str = "id desc"; if(empty($page)) { $start = 0; $perpage = 1; } else { $start = ($page - 1)*$perpage; } //取得信息列表 $info_list = $this->fullorderxw->find_all($where,'id,shop,orderinfo,number,operation',$order_str,$start,$perpage); //格式化数据 foreach ($info_list as $key=>$value) { $shop = $this->shop->read($value['shop']); $info_list[$key]['shop'] = $shop['shopname']; $info_list[$key]['operation'] = "评价"; } $total = $this->fullorderxw->find_count($where); $pagenum = ceil($total/$perpage); $over = $total-($start+$perpage); $rows = array('total'=>$total,'over'=>$over,'pagenum'=>$pagenum,'rows'=>($info_list)); echo json_encode($rows);exit; } $this->_Template('fullorderxw_evaluate',$this->data); } //订单消息 public function _state() { $user = $this->user->get_api($_SESSION['api']); if($user) { $fgshop = "";$sid = ""; $user = explode('|',trim($user['shop'],'|')); foreach ($user as $value) { $fgshop .= " shop = ".$value." or"; $sid .= " id = ".$value." or"; } } $post = $this->input->post(NULL, TRUE); if(isset($post['page'])) { $page = $this->input->post('page',true); $perpage = $this->input->post('perpage',true); $timetk = $this->input->post('timetk',true); $timetj = $this->input->post('timetj',true); $shop = $this->input->post('shop',true); $expressstate = $this->input->post('expressstate',true); $fs = $this->input->post('fs',true); $state = $this->input->post('state',true); $express = $this->input->post('express',true); $review = $this->input->post('review',true); $orderinfo = $this->input->post('orderinfo',true); $number = $this->input->post('number',true); $waybill = $this->input->post('waybill',true); $xztime = $this->input->post('xztime',true); $timetk = strtotime($timetk); $timetj = strtotime($timetj); $where = "1=1 and mergeid = 0 and (".rtrim($fgshop,'or').")"; if($timetk && $timetj) { $where .= " and ".$xztime." > '$timetk' and ".$xztime." < '$timetj'"; } if($xztime == 'librarytime') { $order_str = "librarytime desc"; } else if($xztime == 'dtime') { $order_str = "dtime desc"; } if($shop) { $where .= " and shop = '$shop'"; } if($expressstate) { $where .= " and expressstate = '$expressstate'"; } if($review) { $where .= " and review = '$review'"; } if($fs) { if($fs == '2') { $where .= " and exstateerror != ''"; } else { $where .= " and exstateerror = ''"; } } if($state) { $where .= " and state = '$state'"; } if($express) { $where .= " and express = '$express'"; } if($orderinfo) { $where .= " and orderinfo = '$orderinfo'"; } if($number) { $where .= " and number = '$number'"; } if($waybill) { $where .= " and waybill = '$waybill'"; } if(empty($page)) { $start = 0; $perpage = 1; } else { $start = ($page - 1)*$perpage; } //取得信息列表 $info_list = $this->fullorderxw->find_all($where,'id,shop,orderinfo,number,country,library,librarytime,express,waybill,content,orderremarks,exstateerror',$order_str,$start,$perpage); //格式化数据 foreach ($info_list as $key=>$value) { $shop = $this->shop->read($value['shop']); $info_list[$key]['shop'] = $shop['shopname']; $country = $this->country->read($value['country']); $info_list[$key]['country'] = $country['name']; //$state = $this->typeclass->read($value['state']); //$info_list[$key]['state'] = $state['title']; if($value['library'] == 1) { $info_list[$key]['library'] = "未出库"; } else if($value['library'] == 2) { $info_list[$key]['library'] = "已出库"; } else if($value['library'] == 3) { $info_list[$key]['library'] = "已退库"; } if($value['librarytime'] == '0') { $info_list[$key]['librarytime'] = '无'; } else { $info_list[$key]['librarytime'] = date('Y-m-d',$value['librarytime']).'
'.date('H:i:s',$value['librarytime']); } $express = $this->express->read($value['express']); $info_list[$key]['express'] = $express['servicename']; } $total = $this->fullorderxw->find_count($where); $pagenum = ceil($total/$perpage); $over = $total-($start+$perpage); $rows = array('total'=>$total,'over'=>$over,'pagenum'=>$pagenum,'rows'=>($info_list)); echo json_encode($rows);exit; } $notice = $this->notice->find_all("type = '1' and (".rtrim($fgshop,'or').")"); $this->data['notice'] = $notice; $wlshop = $this->shop->find_all('1=1 and '.rtrim($sid,'or')); $this->data['wlshop'] = $wlshop; $this->data['express'] = $this->express->find_all(); $this->_Template('fullorderxw_state',$this->data); } //物流信息 public function _wl() { $user = $this->user->get_api($_SESSION['api']); if($user) { $fgshop = "";$sid = ""; $user = explode('|',trim($user['shop'],'|')); foreach ($user as $value) { $fgshop .= " shop = ".$value." or"; $sid .= " id = ".$value." or"; } } $post = $this->input->post(NULL, TRUE); if(isset($post['page'])) { $page = $this->input->post('page',true); $perpage = $this->input->post('perpage',true); $timetk = $this->input->post('timetk',true); $timetj = $this->input->post('timetj',true); $shop = $this->input->post('shop',true); $expressstate = $this->input->post('expressstate',true); $fs = $this->input->post('fs',true); $state = $this->input->post('state',true); $express = $this->input->post('express',true); $orderinfo = $this->input->post('orderinfo',true); $number = $this->input->post('number',true); $waybill = $this->input->post('waybill',true); $wlyc = $this->input->post('wlyc',true); $wltype = $this->input->post('wltype',true); $source = $this->input->post('source',true); $xztime = $this->input->post('xztime',true); $timetk = strtotime($timetk); $timetj = strtotime($timetj); $where = "1=1 and mergeid = 0 and (".rtrim($fgshop,'or').")"; if($timetk && $timetj) { $where .= " and ".$xztime." > '$timetk' and ".$xztime." < '$timetj'"; } if($xztime == 'librarytime') { $order_str = "librarytime desc"; } else if($xztime == 'dtime') { $order_str = "dtime desc"; } else if ($xztime == 'wlfstime') { $order_str = "wlfstime desc"; } if($shop) { $where .= " and shop = '$shop'"; } if($expressstate != '') { $where .= " and expressstate = '$expressstate'"; } if($fs) { if($fs == '1') { $where .= " and wlcontent != ''"; } if($fs == '2') { $where .= " and wlerror != ''"; } if($fs == '3') { $where .= " and wlcontent = '' and shouldmoney > 100"; } else if($fs == '4') { $where .= " and wltype = '1'"; } } if($state) { $where .= " and state = '$state'"; } if($express) { $where .= " and express = '$express'"; } if($orderinfo) { $where .= " and orderinfo = '$orderinfo'"; } if($number) { $where .= " and number = '$number'"; } if($waybill) { $where .= " and waybill = '$waybill'"; } if($wlyc!='') { $where .= " and wlyc = '$wlyc'"; } if($wltype!='') { $where .= " and wltype = '$wltype'"; } if($source) { if($source == 1) { $where .= " and source = '$source'"; } else { $where .= " and source != '1'"; } } if(empty($page)) { $start = 0; $perpage = 1; } else { $start = ($page - 1)*$perpage; } //取得信息列表 $info_list = $this->fullorderxw->find_all($where,'id,orderinfo,number,country,library,librarytime,expressstate,express,waybill,wlbz,orderremarks,wlcontent,wlerror,excontent,wltype',$order_str,$start,$perpage); //格式化数据 foreach ($info_list as $key=>$value) { $f = $this->fullorderxw->read($value['id']); $info_list[$key]['number'] = "

".$value['number']."

"."

".$f['email']."

"; $country = $this->country->read($value['country']); $info_list[$key]['country'] = "

".$country['name']."

".$f['phone']."

"; //$state = $this->typeclass->read($value['state']); //$info_list[$key]['state'] = $state['title']; if($value['library'] == 1) { $info_list[$key]['library'] = "未出库"; } else if($value['library'] == 2) { $info_list[$key]['library'] = "已出库"; } else if($value['library'] == 3) { $info_list[$key]['library'] = "已退库"; } if($value['librarytime'] == '0') { $info_list[$key]['librarytime'] = '无'; } else { $info_list[$key]['librarytime'] = date('Y-m-d',$value['librarytime']).'
'.date('H:i:s',$value['librarytime']).'
'.$f['shouldmoney']; } if($value['expressstate'] == 0) { $info_list[$key]['expressstate'] = "无信息"; } else if($value['expressstate'] == 2) { $info_list[$key]['expressstate'] = "已取件"; } else if($value['expressstate'] == 3) { $info_list[$key]['expressstate'] = "在途中"; } else if($value['expressstate'] == 4) { $info_list[$key]['expressstate'] = "到达目的地国".$value['expressstate']; } else if($value['expressstate'] == 5) { $info_list[$key]['expressstate'] = "即将派送"; } else if($value['expressstate'] == 6) { $info_list[$key]['expressstate'] = "已签收"; } else if($value['expressstate'] == 1) { $info_list[$key]['expressstate'] = "派送异常"; } $express = $this->express->read($value['express']); $info_list[$key]['express'] = $express['servicename']; if($value['wltype'] == '0') { $info_list[$key]['wltype'] = "

禁止发送

"; } else { $info_list[$key]['wltype'] = "

允许发送

"; } if($f['wlyc'] == '0') { $info_list[$key]['wltype'] .= "

加入异常

"; } else if($f['wlyc'] == '1') { $info_list[$key]['wltype'] .= "

物流异常

"; } else if($f['wlyc'] == '2') { $info_list[$key]['wltype'] .= "

异常已处理

"; } if(stripos($value['excontent'],'
') !== false) { $excontent = explode('
',$value['excontent']); $info_list[$key]['excontent'] = ' '.$excontent[0]; } } $total = $this->fullorderxw->find_count($where); $pagenum = ceil($total/$perpage); $over = $total-($start+$perpage); $rows = array('total'=>$total,'over'=>$over,'pagenum'=>$pagenum,'rows'=>($info_list)); echo json_encode($rows);exit; } if(isset($post['q'])) { $id = $this->input->post('id',true); $f = $this->fullorderxw->read($id); $wl = ($f['wltype']=='0')?1:0; $wltitle = ($f['wltype']=='0')?'已禁发送':'已允发送'; if($this->fullorderxw->save(array('wltype'=>$wl),$id)) { echo json_encode(array('msg'=>'ckn','id'=>$id,'wltitle'=>$wltitle,'success'=>true));exit; } else { echo json_encode(array('msg'=>'失败,请重试','id'=>$id,'wltitle'=>$wltitle,'success'=>false));exit; } } if(isset($post['t'])) { $id = $this->input->post('id',true); $f = $this->fullorderxw->read($id); $t = $this->input->post('t',true); $yc = ($f['wlyc']=='0')?1:2; $yctitle = ($f['wlyc']=='0')?'物流异常':'异常已处理'; if($this->fullorderxw->save(array('wlyc'=>$yc),$id)) { echo json_encode(array('msg'=>'yc','id'=>$id,'wltitle'=>$yctitle,'success'=>true));exit; } else { echo json_encode(array('msg'=>'失败,请重试','id'=>$id,'wltitle'=>$yctitle,'success'=>false));exit; } } $notice = $this->notice->find_all("type = '2' and (".rtrim($fgshop,'or').")"); $this->data['notice'] = $notice; $wlshop = $this->shop->find_all('1=1 and '.rtrim($sid,'or')); $this->data['wlshop'] = $wlshop; $this->data['express'] = $this->express->find_all(); $this->_Template('fullorderxw_wl',$this->data); } //审核订单 public function _review() { $user = $this->user->get_api($_SESSION['api']); if($user) { $fgshop = "";$sid = ""; $user = explode('|',trim($user['shop'],'|')); foreach ($user as $value) { $sid .= " id = ".$value." or"; $fgshop .= " shop = ".$value." or"; } $fgshop = " and (".rtrim($fgshop,'or').")"; } $post = $this->input->post(NULL, TRUE); if(isset($post['page'])) { $page = $this->input->post('page',true); $perpage = $this->input->post('perpage',true); $source = $this->input->post('source',true); $warehouse = $this->input->post('warehouse',true); $express = $this->input->post('express',true); $orderremarks = $this->input->post('orderremarks',true); $shop = $this->input->post('shop',true); $review = $this->input->post('review',true); $orderinfo = $this->input->post('orderinfo',true); $shipremarks = $this->input->post('shipremarks',true); $number = $this->input->post('number',true); $timetk = $this->input->post('timetk',true); $timetj = $this->input->post('timetj',true); $timetk = strtotime($timetk); $timetj = strtotime($timetj); $where = "mergeid = 0 and state = '207'".$fgshop; if($timetk && $timetj) { $where .= " and dtime > '$timetk' and dtime < '$timetj'"; } if($source) { if($source == '2d') { $where .= " and source >= '2'"; } else { $where .= " and source = '$source'"; } } if($review) { $where .= " and review = '$review'"; } else { $where .= " and ((review = '2' and source = '1') or (review = '1' and source >= '2'))"; } if($shop) { $where .= " and shop = '$shop'"; } if($warehouse) { $where .= " and type = '$warehouse'"; } if($express) { $where .= " and express = '$express'"; } if($orderremarks) { $where .= " and orderremarks like '%$orderremarks%'"; } if($orderinfo) { $where .= " and orderinfo = '$orderinfo'"; } if($number) { $where .= " and number = '$number'"; } if($shipremarks) { $where .= " and shipremarks like '%$shipremarks%'"; } //数据排序 $order_str = "id desc"; if(empty($page)) { $start = 0; $perpage = 1; } else { $start = ($page - 1)*$perpage; } //取得信息列表 $info_list = $this->fullorderxw->find_all($where,'id,shop,type,orderinfo,number,client,express,dtime,shouldmoney,review,orderremarks'); //格式化数据 foreach ($info_list as $key=>$value) { $lr = $this->fullorderxw->read($value['id']); $shop = $this->shop->read($value['shop']); $info_list[$key]['shop'] = $shop['shopname']; $warehouse = $this->warehouse->read($value['type']); $info_list[$key]['type'] = $warehouse['title']; $express = $this->express->read($value['express']); $info_list[$key]['express'] = $express['servicename']; $info_list[$key]['dtime'] = '

'.date('Y-m-d',$value['dtime']).'

'.date('H:i:s',$value['dtime']).'

'; if($value['review'] == 1) { $info_list[$key]['review'] = "未送审"; } else if($value['review'] == 2) { $info_list[$key]['review'] = "待审核"; } else if($value['review'] == 3) { $info_list[$key]['review'] = "不通过"; } else if($value['review'] == 4) { $info_list[$key]['review'] = "取消重审"; } else if($value['review'] == 5) { $info_list[$key]['review'] = "审核通过"; } else if($value['review'] == 6) { $info_list[$key]['review'] = "自动通过"; } /** $info_list[$key]['library'] = ""; if($value['review'] == 1) { $info_list[$key]['library'] = "

审核通过

"; } if($value['review'] == 2) { $info_list[$key]['library'] = "

审核通过

不通过

"; } else if($value['review'] == 3) { $info_list[$key]['library'] = "

审核通过

"; } else if($value['review'] == 5) { $info_list[$key]['library'] = "

不通过

"; } $info_list[$key]['shouldmoney'] = $value['shouldmoney'].' '.$lr['currencytitle']; $lr['hl'] = $lr['hl']==0?6.71:$lr['hl']; $cost = $lr['cost']/$lr['hl']; $currencytitle = $lr['budget']-$lr['refundj']-$cost-$lr['expressmoney']; $info_list[$key]['currencytitle'] = sprintf("%.2f",$currencytitle).' '.$lr['currencytitle']; **/ } $total = $this->fullorderxw->find_count($where); $pagenum = ceil($total/$perpage); $over = $total-($start+$perpage); $rows = array('total'=>$total,'over'=>$over,'pagenum'=>$pagenum,'rows'=>($info_list)); echo json_encode($rows);exit; } $wlshop = $this->shop->find_all('1=1 and '.rtrim($sid,'or')); $this->data['shop'] = $wlshop; $this->_Template('fullorderxw_review',$this->data); } public function _wlbz($arg_array) { $post = $this->input->post(NULL, TRUE); if(isset($post['id'])) { $id = $this->input->post('id',true); $post['wlbz'] = $this->input->post('wlbz',true); if($post['wlbz'] == '') { echo json_encode(array('msg'=>'备注不能为空','success'=>false));exit; } if($this->fullorderxw->save($post,$id)) { echo json_encode(array('msg'=>'修改成功','id'=>$id,'success'=>true));exit; } else { echo json_encode(array('msg'=>'修改失败,请重试','success'=>false));exit; } } $arg_array = $arg_array[0]; $fullorderxw = $this->fullorderxw->read($arg_array); $this->data['fullorderxw'] = $fullorderxw; $this->_Template('fullorderxw_wlbz',$this->data); } //导出资金统计excel public function _fmexcel() { $user = $this->user->get_api($_SESSION['api']); if($user) { $fgshop = "";$sid = ""; $user = explode('|',trim($user['shop'],'|')); foreach ($user as $value) { $fgshop .= " shop = ".$value." or"; $sid .= " id = ".$value." or"; } } if(isset($_GET['excel'])) { $timetk = $this->input->get('timetk',true); $timetj = $this->input->get('timetj',true); $shop = $this->input->get('shop',true); $source = $this->input->get('source',true); $state = $this->input->get('state',true); $type = $this->input->get('type',true); $orderinfo = $this->input->get('orderinfo',true); $user = $this->input->get('user',true); $name = $this->input->get('name',true); $timetk = strtotime($timetk); $timetj = strtotime($timetj); $where = "1=1 and mergeid = 0 and (".rtrim($fgshop,'or').")"; if($timetk && $timetj) { $where .= " and dtime > '$timetk' and dtime < '$timetj'"; } if($shop) { $where .= " and shop = '$shop'"; } if($source) { $where .= " and source = '$source'"; } if($state) { if($state == 1) { $where .= " and state = '$state'"; } } if($type) { $where .= " and type = '$type'"; } if($orderinfo) { $where .= " and orderinfo = '$orderinfo'"; } if($user) { $where .= " and user = '$user'"; } if($name) { $where .= " and name = '$name'"; } //取得信息列表 $info_list = $this->fullorderxw->find_all($where,'id,shop,user,number,orderinfo,client,country,dtime,ftime,express,waybill,shouldmoney,refund,currency,budget,fpdata,hl,currencytitle'); //格式化数据 $i = 1;$shouldmoney = 0;$refund = 0;$budget = 0;$currency = 0;$hl=1; foreach ($info_list as $key=>$value) { $info_list[$key]['id'] = $i; if($value['currencytitle'] != "CNY") { $hl=$value['hl']; } $shouldmoney=$shouldmoney+($value['shouldmoney']*$hl); $budget=$budget+($value['budget']*$hl); $currency=$currency+(($value['shouldmoney']-$value['budget'])*$hl); $refund=$refund+($value['refund']*$hl); $shop = $this->shop->read($value['shop']); $info_list[$key]['shop'] = $shop['shopname']; $info_list[$key]['user'] = $shop['shopuser']; $info_list[$key]['dtime'] = date('Y-m-d H:i:s',$value['dtime']); $info_list[$key]['ftime'] = date('Y-m-d H:i:s',$value['ftime']); $country = $this->country->read($value['country']); $info_list[$key]['country'] = $country['name']; $express = $this->express->read($value['express']); $info_list[$key]['express'] = $express['servicename']; $info_list[$key]['shouldmoney'] = $value['shouldmoney'].' '.$value['currencytitle']; $info_list[$key]['refund'] = $value['refund'].' '.$value['currencytitle']; $info_list[$key]['budget'] = $value['budget'].' '.$value['currencytitle']; $info_list[$key]['currency'] = sprintf("%.2f",$value['shouldmoney']-$value['budget']).' '.$value['currencytitle']; $fpdata = array(); if(stripos($value['fpdata'],';') !== false) { $fpdata = explode(';',rtrim($value['fpdata'],';')); foreach ($fpdata as $ke=>$va) { $v = explode('|',rtrim($va,'|')); $fpdata[$ke] = array($v[4],$v[5],$v[6],$v[5]*$v[6]);//内容,条数,数量,总条数 } } $info_list[$key]['fpdata'] = $fpdata; $i++; } $data = array($shouldmoney.' CNY',$refund.' CNY',$currency.' CNY',$budget.' CNY'); $title = "订单资金信息"; $titlename = "

".$title."

NO. 店铺 负责人 编号 订单号 客户姓名 国家 订单日期 发货日期 快递公司 运单号 订单金额 退款金额 手续费 预估金额
订单产品信息
产品 条数 数量
总条数
"; $filename = $title.".xls"; $tail = "合计:".$data[0]."".$data[1]."".$data[2]."".$data[3]."\n"; $this->excel->get_fz($info_list,$titlename,$filename,$tail); } } //导出订单excel public function _fdexcel() { if(isset($_GET['excel'])) { $page = $this->input->post('page',true); $perpage = $this->input->post('perpage',true); $timetk = $this->input->post('timetk',true); $timetj = $this->input->post('timetj',true); $shop = $this->input->post('shop',true); $source = $this->input->post('source',true); $state = $this->input->post('state',true); $review = $this->input->post('review',true); $express = $this->input->post('express',true); $orderinfo = $this->input->post('orderinfo',true); $user = $this->input->post('user',true); $name = $this->input->post('name',true); $waybill = $this->input->post('waybill',true); $timetk = strtotime($timetk); $timetj = strtotime($timetj); $where = "1=1 and mergeid = 0"; if($timetk && $timetj) { $where .= " and dtime > '$timetk' and dtime < '$timetj'"; } if($shop) { $where .= " and shop = '$shop'"; } if($source) { $where .= " and source = '$source'"; } if($state) { $where .= " and state = '$state'"; } if($review) { $where .= " and review = '$review'"; } if($express) { $where .= " and express = '$express'"; } if($orderinfo) { $where .= " and orderinfo = '$orderinfo'"; } if($user) { $where .= " and user = '$user'"; } if($name) { $where .= " and name = '$name'"; } if($waybill) { $where .= " and waybill = '$waybill'"; } //取得信息列表 $info_list = $this->fullorderxw->find_all($where,'id,shop,number,orderinfo,source,client,name,address,city,zipcode,province,country,phone,dtime,ftime,state,shouldmoney,express,waybill,orderremarks,clientremarks,fpdata,hl,currencytitle'); //格式化数据 $i = 1;$shouldmoney = 0;$hl=1; foreach ($info_list as $key=>$value) { $info_list[$key]['id'] = $i; if($value['source'] == 1) { $info_list[$key]['source'] = "线下订单"; } else if($value['source'] == 2) { $info_list[$key]['source'] = "PC订单"; } else if($value['source'] == 3) { $info_list[$key]['source'] = "手机订单"; } if($value['currencytitle'] != "CNY") { $hl=$value['hl']; } $shouldmoney=$shouldmoney+($value['shouldmoney']*$hl); $shop = $this->shop->read($value['shop']); $info_list[$key]['shop'] = $shop['shopname']; $info_list[$key]['dtime'] = date('Y-m-d H:i:s',$value['dtime']); $info_list[$key]['ftime'] = date('Y-m-d H:i:s',$value['ftime']); $state = $this->typeclass->read($value['state']); $info_list[$key]['state'] = $state['title']; $country = $this->country->read($value['country']); $info_list[$key]['country'] = $country['name']; $express = $this->express->read($value['express']); $info_list[$key]['express'] = $express['servicename']; $info_list[$key]['shouldmoney'] = $value['shouldmoney'].' '.$value['currencytitle']; $fpdata = array(); if(stripos($value['fpdata'],';') !== false) { $fpdata = explode(';',rtrim($value['fpdata'],';')); foreach ($fpdata as $ke=>$va) { $v = explode('|',rtrim($va,'|')); $fpdata[$ke] = array($v[4],$v[5],$v[6],$v[5]*$v[6]);//内容,条数,数量,总条数 } } $info_list[$key]['fpdata'] = $fpdata; $i++; } $data = array($shouldmoney.' CNY'); $title = "订单信息表"; $titlename = "

".$title."

NO. 店铺 编号 订单号 订单类型 客户姓名 收件人名称 收货人地址 城市 邮编 国家 收件电话 订单日期 发货日期 订单状态 订单金额 快递公司 运单号 订单备注 客户备注
订单产品信息
产品 条数 数量
总条数
"; $filename = $title.".xls"; $tail = "合计:".$data[0]."\n"; $this->excel->get_fz($info_list,$titlename,$filename,$tail); } } public function _black() { $post = $this->input->post(NULL, TRUE); if(isset($post['bd'])) { $bd = $this->input->post('bd',true); $rows = $this->fullorderxw->read($bd); $post['shop'] = $rows['shop']; $post['source'] = 1; $post['name'] = $rows['client']; $post['email'] = $rows['email']; $post['phone'] = $rows['phone']; $post['country'] = $rows['country']; $post['money'] = $rows['shouldmoney']; $post['num'] = 1; $post['time'] = $rows['dtime']; $post['province'] = $rows['province']; $post['city'] = $rows['city']; $post['street'] = $rows['street']; $post['address'] = $rows['address']; $post['address2'] = $rows['address2']; $post['zipcode'] = $rows['zipcode']; $post['type'] = 2; if($this->customertt->insert($post)) { $this->fullorderxw->save(array('black'=>1),$bd); echo json_encode(array('msg'=>'操作成功','success'=>true));exit; } else { echo json_encode(array('msg'=>'操作失败,请重试','success'=>false));exit; } } } public function _ryf() { $post = $this->input->post(NULL, TRUE); if(isset($post['bd'])) { $bd = $this->input->post('bd',true); $d = $this->fullorderxw->read($bd); if($d['state'] == 207 || $d['state'] == 207)//订单状态为等待发货或等待部分发货才可更改为允许发货 { if($d['print'] < 3)//打印状态为未打印 { $print = 1;//未打印 $libraryconfirm = 1;//不允许出库 $a = "订单未打印,"; } else//已打印订单 { $libraryconfirm = 2;//允许出库 $a = ""; } if($this->fullorderxw->save(array('librarynot'=>$a,'libraryconfirm'=>$libraryconfirm,'print'=>$print),$bd)) { echo json_encode(array('msg'=>'操作成功','success'=>true));exit; } else { echo json_encode(array('msg'=>'操作失败,请重试','success'=>false));exit; } } if($this->fullorderxw->save(array('librarynot'=>$a,'libraryconfirm'=>$libraryconfirm,'print'=>$print),$bd)) { echo json_encode(array('msg'=>'操作失败!订单未非发货状态','success'=>false));exit; } else { echo json_encode(array('msg'=>'操作失败,请重试','success'=>false));exit; } } } public function _fsstate() { $post = $this->input->post(NULL, TRUE); if(isset($post['s'])) { $id_arr = $this->input->post('s'); $id_arr = explode(',',$id_arr); if(!$id_arr) { echo json_encode(array('msg'=>'参数错误!','success'=>false));exit; } foreach ($id_arr as $v) { $data = $this->fullorderxw->read($v); $warehouse = $this->warehouse->read($data['type']); $fs = $this->notice->get_ordertatus($data['state']); if($fs) { $ck = $this->_email($fs['content'],$data,$warehouse['company']); if($ck == 1) { $this->fullorderxw->save(array('fscontent'=>date('Y-m-d H:i:s',time()).'已发送:'.$fs['title'].' - '),$v); } } } echo json_encode(array('msg'=>'发送完成!','success'=>true));exit; } } public function _power() { $user = $this->user->get_api($_SESSION['api']); $post = $this->input->post(NULL, TRUE); if(isset($post['id'])) { $id = $this->input->post('id',true); $fullorderxw = $this->fullorderxw->read($id); $express = $this->express->read($fullorderxw['express']); $warehouse = $this->warehouse->read($fullorderxw['type']); if(($warehouse['zd'] == '1' || stripos($fullorderxw['whlabel'],'z|') !== false) && $fullorderxw['library'] == '2') { echo json_encode(array('msg'=>'需要先退库释放库存后才可重置!','success'=>false));exit; } /** if($fullorderxw['print'] == '3' && isset($express['iscode']) && ($express['iscode'] == 'ARAMEX' || $express['iscode'] == 'TOLL' || $express['iscode'] == 'FEDEX')) { $lj = $this->ali->get_lj($fullorderxw['number'],2,'订单修改'); if($lj != '1' && $lj != '订单不存在') { echo json_encode(array('msg'=>$lj,'success'=>false));exit; } } **/ $warehouse = $this->warehouse->read($fullorderxw['warehouse']); $typeclass = $this->typeclass->read($fullorderxw['state']); $express = $this->express->read($fullorderxw['express']); $printtype = array(1=>'运单',2=>'发货单',3=>'不打印单据'); $teset['number']=$fullorderxw['number']; $teset['orderinfo']=$fullorderxw['orderinfo']; $teset['shop']=$fullorderxw['shop']; $teset['user']=$user['userid']; $teset['ip']=$this->input->ip_address(); $teset['time']=time(); $teset['warehouse']=(isset($warehouse['title']))?$warehouse['title']:'未选择'; $teset['state']=(isset($typeclass['title']))?$typeclass['spare']:'未选择'; $teset['express']=(isset($express['title']))?$express['servicename']:'未选择'; $teset['printtype']=(isset($printtype[$fullorderxw['printtype']]))?$printtype[$fullorderxw['printtype']]:'未选择'; $teset['reviewtime']=($fullorderxw['reviewtime'] > '0')?date('Y-m-d H:i:s',$fullorderxw['reviewtime']):'无'; $teset['printtime']=($fullorderxw['printtime'] > '0')?date('Y-m-d H:i:s',$fullorderxw['printtime']):'无'; $teset['librarytime']=($fullorderxw['librarytime'] > '0')?date('Y-m-d H:i:s',$fullorderxw['librarytime']):'无'; $teset['shipremarks']=$fullorderxw['shipremarks']; $teset['fpdata']=$fullorderxw['fpdata']; $teset['oldwaybill']=$fullorderxw['oldwaybill']; $teset['oldprinttime']=$fullorderxw['oldprinttime']; if($fullorderxw['printtype'] == 1) { if($fullorderxw['waybill'] != '' && stripos($fullorderxw['oldwaybill'],$fullorderxw['waybill']) === false) { $teset['oldwaybill'] .= '-'.date('Ymd',$fullorderxw['printtime']).'/'.$fullorderxw['waybill']; $teset['oldprinttime'] .= '-'.$fullorderxw['printtime']; } } $review = ($fullorderxw['source']==1)?2:1;//线下单审核状态直接为待审核 if(!$this->fullreset->insert($teset)) { echo json_encode(array('msg'=>'重置失败,请重试','success'=>true));exit; } if($this->fullorderxw->save(array('library'=>1,'librarytime'=>0,'libraryconfirm'=>2,'print'=>1,'printtime'=>0,'printnumber'=>0,'retreattime'=>0,'librarynot'=>'订单未打印,未审核或未通过','review'=>$review,'reviewtime'=>0,'state'=>207,'waybill'=>'','waybill2'=>'','oldwaybill'=>$teset['oldwaybill'],'oldprinttime'=>$teset['oldprinttime'],'dlzemail'=>0,'yhs'=>0,'failed'=>''),$id)) { echo json_encode(array('msg'=>'重置成功!如需再次提交,请先保存、再提交','success'=>true));exit; } else { echo json_encode(array('msg'=>'重置失败,请重试','success'=>false));exit; } } } public function _expresstype() { $post = $this->input->post(NULL, TRUE); if(isset($post['id'])) { $id = $this->input->post('id',true); $data = $this->express->read($id); echo json_encode(array('msg'=>$data['type'],'success'=>true));exit; } } public function _email($content,$data,$shopname) { $express = $this->express->read($data['express']); $t= array('$userName','$orderid','$trackingNumber','$expressCompany','$contactPerson','$mobileNo','$zip','$recipientAddress');//需要被替换的内容 $h= array($data['client'],$data['orderinfo'],$data['waybill'],$express['servicename'],$data['name'],$data['phone'],$data['zipcode'],$data['address']);//替换的内容 $content = str_replace($t,$h,$content); $this->load->library('email'); $config['protocol'] = 'smtp'; $config['smtp_host'] = 'smtpdm-ap-southeast-1.aliyun.com'; $config['smtp_port'] = 465; $config['smtp_user'] = 'service@email.supernovahair.com'; $config['smtp_pass'] = 'LONGyihair374'; $config['smtp_crypto'] = 'ssl'; $config['crlf'] = "\r\n"; $config['newline'] = "\r\n"; $this->email->initialize($config); $this->email->from('service@email.supernovahair.com',$shopname); $this->email->to($data['email']);//收件 $this->email->subject('The product you purchased has a new progress');//标题 $this->email->message($content);//内容 if ( ! $this->email->send()) { return 2; } else { return 1; } } public function _error() { if(isset($_SESSION['api'])) { $user = $this->user->get_api($_SESSION['api']); $usp = $user; $fgshop = "";$sid = ""; $user = explode('|',trim($user['shop'],'|')); foreach ($user as $value) { $fgshop .= " shop = ".$value." or"; $sid .= " id = ".$value." or"; } } $post = $this->input->post(NULL, TRUE); if(isset($post['page'])) { $page = $this->input->post('page',true); $perpage = $this->input->post('perpage',true); $orderinfo = $this->input->post('orderinfo',true); $waybill = $this->input->post('waybill',true); $number = $this->input->post('number',true); $timetk = $this->input->post('timetk',true); $timetj = $this->input->post('timetj',true); $timetk = strtotime($timetk); $timetj = strtotime($timetj); $where = "failed !='' and mergeid = 0 and print != 3 and (".rtrim($fgshop,'or').")"; if($orderinfo) { $where .= " and orderinfo = '$orderinfo'"; } if($waybill) { $where .= " and waybill = '$waybill'"; } if($number) { $where .= " and number = '$number'"; } if($timetk && $timetj) { $timetj = $timetj+24*3600; $where .= " and dtime > '$timetk' and dtime < '$timetj'"; } //数据排序 $order_str = "dtime desc"; if(empty($page)) { $start = 0; $perpage = 1; } else { $start = ($page - 1)*$perpage; } $info_list = $this->fullorderxw->find_all($where,'id,shop,type,orderinfo,number,express,failed,operation',$order_str,$start,$perpage); //格式化数据 foreach ($info_list as $key=>$value) { $ud = $this->fullorderxw->read($value['id']); $shop = $this->shop->read($value['shop']); $info_list[$key]['shop'] = $shop['shopname']; $info_list[$key]['orderinfo'] = "".$value['orderinfo']."

"; $warehouse = $this->warehouse->read($value['type']); $warehousetitle = $warehouse['title']; if($value['type'] != 1){$warehousetitle = "".$warehouse['title']."";} $info_list[$key]['type'] = $warehousetitle; if($value['express'] != 0) { $express = $this->express->read($value['express']); $expressservicename = $express['servicename']; if($value['express'] != 1){$expressservicename = "".$express['servicename']."";} $info_list[$key]['express'] = $expressservicename; } else { $info_list[$key]['express'] = "无"; } $x = ""; if($ud['review'] >4 && $ud['print'] == 1) { $x = "

允许打印

"; } else { $x = "

关闭

"; } $info_list[$key]['operation'] = $x; } $total = $this->fullorderxw->find_count($where); $pagenum = ceil($total/$perpage); $over = $total-($start+$perpage); $rows = array('total'=>$total,'over'=>$over,'pagenum'=>$pagenum,'rows'=>($info_list)); echo json_encode($rows);exit; } $wlshop = $this->shop->find_all('1=1 and '.rtrim($sid,'or')); $this->data['wlshop'] = $wlshop; $this->data['express'] = $this->express->find_all(); $user = $this->user->get_api($_SESSION['api']); $powerid = $this->power->read($user['power']); $powertext = explode('|',trim($powerid['excelid'],'|')); $pid = ''; foreach ($powertext as $v) { $pid .= " id = ".$v." or"; } $fullorderexcel = $this->fullorderexcel->find_all("type = '100008' and (".rtrim($pid,'or').")",'*','idorder desc');//导出模板 $this->data['fullorderexcel'] = $fullorderexcel; $this->_Template('fullorderxw_error',$this->data); } //验证地址 public function _yzaddress() { $post = $this->input->post(NULL, TRUE); if(isset($post['address'])) { $address = $this->input->post('address',true); $address2 = $this->input->post('address2',true); $city = $this->input->post('city',true); $province = $this->input->post('province',true); $zipcode = $this->input->post('zipcode',true); $barcode = $this->usps->get_address(array('address'=>$address,'address2'=>$address2,'city'=>$city,'province'=>$province,'zipcode'=>$zipcode)); echo $barcode; } } //清除退货信息 public function _clearreturn() { $post = $this->input->post(NULL, TRUE); if(isset($post['orderinfo'])) { $orderinfo = $this->input->post('orderinfo',true); $data = $this->fullorderxw->get_orderinfo($orderinfo); $fu = 'fullorderxw'; if(!$data) { $data = $this->fullorder_smt->get_orderinfo($orderinfo); $fu = 'fullorder_smt'; } $this->$fu->save(array('library'=>'2','retreattime'=>'0','returndata'=>''),$data['id']); echo json_encode(array('msg'=>'清除成功!','success'=>true));exit; } } //订单退货 public function _return() { $post = $this->input->post(NULL, TRUE); if(isset($post['orderinfo'])) { $orderinfo = $this->input->post('orderinfo',true); $data = $this->fullorderxw->get_orderinfo($orderinfo); $fu = 'fullorderxw'; if(!$data) { $data = $this->fullorder_smt->get_orderinfo($orderinfo); $fu = 'fullorder_smt'; } $bctime = date('Ymd',time()); if($data['returndata'] != "") { echo json_encode(array('msg'=>'请求失败,已有Return Label信息!','success'=>false));exit; } $barcode = $this->usps->get_return($data); if(isset($barcode['errors']['ExternalReturnLabelError']['InternalErrorDescription'])) { echo json_encode(array('msg'=>$barcode['errors']['ExternalReturnLabelError']['InternalErrorDescription'],'success'=>false));exit; } else if(isset($barcode['TrackingNumber'])) { $pdf = $this->_pdf($barcode['ReturnLabel'],'t-'.$barcode['TrackingNumber'],$bctime); $read = 'PostalRouting:'.$barcode['PostalRouting'].' - TrackingNumber:'.$barcode['TrackingNumber'].''; $this->$fu->save(array('returndata'=>$read),$data['id']); echo json_encode(array('msg'=>'生成Return Label成功!','data'=>$read,'success'=>true));exit; } else { echo json_encode(array('msg'=>'请求失败,请稍后重试!','cs'=>$barcode,'success'=>false));exit; } } } public function _pdf($pdf,$title,$bctime) { $pdf_path = './data/pdf/'.$bctime.'/'; $file_base64 = $pdf; $file_base64 = preg_replace('/data:.*;base64,/i', '', $file_base64); $file_base64 = base64_decode($file_base64); if(!is_dir($pdf_path))mkdir($pdf_path,0777); //上传目录不存在则创建 file_put_contents($pdf_path.$title.'.pdf',$file_base64); return $bctime; } public function _find($find) { preg_match_all('/\d+/',$find,$n); $a = ''; foreach($n[0] as $v) { $a .= $v; } return $a; } public function _dqpm() { if(isset($_SESSION['api'])) { $user = $this->user->get_api($_SESSION['api']); $usp = $user; $fgshop = "";$sid = ""; $usersp = explode('|',trim($user['shop'],'|')); foreach ($usersp as $value) { $fgshop .= " shop = ".$value." or"; $sid .= " id = ".$value." or"; } } $post = $this->input->post(NULL, TRUE); if(isset($post['page'])) { $timetk = $this->input->post('timetk',true); $timetj = $this->input->post('timetj',true); $timetk = strtotime($timetk); $timetj = strtotime($timetj); $where = "mergeid = 0 and (".rtrim($fgshop,'or').")"; if($timetk && $timetj) { $where .= " and dtime > '$timetk' and dtime < '$timetj'"; } //数据排序 $order_str = "dtime desc"; if(empty($page)) { $start = 0; $perpage = 1; } else { $start = ($page - 1)*$perpage; } $continentdata = ''; $continent = array();//陆地板块 $num = $this->fullorderxw->find_count($where);//订单总数量 $country = $this->country->find_all('1=1','id,continent,ename,zname'); foreach ($country as $k=>$v) { $tc = $this->typeclass->read($v['continent']); $continent[$v['continent']] = array(0=>$tc['title'],1=>0,2=>''); } foreach ($country as $k=>$v) { $n = $this->fullorderxw->find_count($where.' and country = "'.$v['id'].'"'); $country[$k]['continent'] = $continent[$v['continent']][0];//此国家数量 $country[$k]['zname'] = ''.$v['zname'].'';//此国家数量 $country[$k]['num'] = $n;//此国家数量 $country[$k]['zb'] = (sprintf("%.4f",$n/$num)*100).'%';//此国家占比 $continent[$v['continent']]['1'] += $n;//此洲数量增加; } array_multisort(array_column($continent, '1'), SORT_DESC, $continent); array_multisort(array_column($country, 'num'), SORT_DESC, $country); foreach ($continent as $k=>$v) { $continentdata .= $v['0'].' 总量:'.$v['1'].' 占比:'.(sprintf("%.4f",$v['1']/$num)*100).'%   -   '; } echo json_encode(array('ewnr'=>$continentdata,'rows'=>$country,'total'=>count($country),'over'=>0,'pagenum'=>1,'success'=>true));exit; } $this->_Template('fullorderxw_dqpm',$this->data); } public function _dqpmprovince($arg_array) { if(isset($_SESSION['api'])) { $user = $this->user->get_api($_SESSION['api']); $usp = $user; $fgshop = "";$sid = ""; $usersp = explode('|',trim($user['shop'],'|')); foreach ($usersp as $value) { $fgshop .= " shop = ".$value." or"; $sid .= " id = ".$value." or"; } } $post = $this->input->post(NULL, TRUE); if(isset($post['page'])) { $country = $this->input->post('country',true); $timetk = $this->input->post('timetk',true); $timetj = $this->input->post('timetj',true); $where = "mergeid = 0 and dtime > '$timetk' and dtime < '$timetj' and country = '$country' and (".rtrim($fgshop,'or').")"; $province = array(); $city_list = $this->fullorderxw->find_all($where,'id,province'); $ToState = array('AL'=>'alabama','AK'=>'alaska','AZ'=>'arizona','AR'=>'arkansas','CA'=>'california','CO'=>'colorado','CT'=>'connecticut','DE'=>'delaware','FL'=>'florida','GA'=>'georgia','HI'=>'hawaii','ID'=>'idaho','IL'=>'illinois','IN'=>'indiana','IA'=>'iowa','KS'=>'kansas','KY'=>'kentucky','LA'=>'louisiana','ME'=>'maine','MD'=>'maryland','MA'=>'massachusetts','MI'=>'michigan','MN'=>'minnesota','MS'=>'mississippi','MO'=>'missouri','MT'=>'montana','NE'=>'nebraska','NV'=>'nevada','NH'=>'new hampshire','NJ'=>'new jersey','NM'=>'new mexico','NY'=>'new york','NC'=>'north carolina','ND'=>'north dakota','OH'=>'ohio','OK'=>'oklahoma','OR'=>'oregon','PA'=>'pennsylvania','RI'=>'rhode island','SC'=>'south carolina','SD'=>'south dakota','TN'=>'tennessee','TX'=>'texas','UT'=>'utah','VT'=>'vermont','VA'=>'virginia','WA'=>'washington','WV'=>'west virginia','WI'=>'wisconsin','WY'=>'wyoming','DC'=>'district of columbia','VI'=>'virgin islands'); foreach ($city_list as $k=>$v) { $v['province'] = strtoupper(trim($v['province'],' ')); if(isset($ToState[$v['province']])) { $v['province'] = $ToState[$v['province']]; } if(!isset($province[$v['province']])) { $province[$v['province']] = array('id'=>$v['id'],'province'=>''.$v['province'].'','num'=>0,'zb'=>''); } $province[$v['province']]['num'] += 1; } array_multisort(array_column($province, 'num'), SORT_DESC, $province); $province = array_values($province); foreach ($province as $k=>$v) { $province[$k]['zb'] = (sprintf("%.4f",$v['num']/count($city_list))*100).'%'; } echo json_encode(array('rows'=>($province),'total'=>count($province),'over'=>0,'pagenum'=>1,'success'=>true));exit; } $this->data['arg_array'] = $arg_array; $this->_Template('fullorderxw_dqpmprovince',$this->data); } public function _ddpmdata($arg_array) { $arg_array[3] = str_replace('%20',' ',$arg_array[3]); if(isset($_SESSION['api'])) { $user = $this->user->get_api($_SESSION['api']); $usp = $user; $fgshop = "";$sid = ""; $usersp = explode('|',trim($user['shop'],'|')); foreach ($usersp as $value) { $fgshop .= " shop = ".$value." or"; $sid .= " id = ".$value." or"; } } $post = $this->input->post(NULL, TRUE); if(isset($post['page'])) { $page = $this->input->post('page',true); $perpage = $this->input->post('perpage',true); $province = $this->input->post('province',true); $timetk = $this->input->post('timetk',true);; $timetj = $this->input->post('timetj',true);; $country = $this->input->post('country',true);; $where = "mergeid = 0 and dtime > '$timetk' and dtime < '$timetj' and country = '$country' and (".rtrim($fgshop,'or').")"; if($province) { $where .= " and province = '$province'"; } $order_str = "dtime desc"; if(empty($page)) { $start = 0; $perpage = 1; } else { $start = ($page - 1)*$perpage; } $info_list = $this->fullorderxw->find_all($where,'id,orderinfo,number,shipremarks,shouldmoney',$order_str,$start,$perpage); $total = $this->fullorderxw->find_count($where); $pagenum = ceil($total/$perpage); $over = $total-($start+$perpage); $rows = array('total'=>$total,'over'=>$over,'pagenum'=>$pagenum,'rows'=>($info_list)); echo json_encode($rows);exit; } $province = array(); $city_list = $this->fullorderxw->find_all("mergeid = 0 and dtime > '$arg_array[1]' and dtime < '$arg_array[2]' and country = '$arg_array[0]' and (".rtrim($fgshop,'or').")",'province'); $ToState = array('AL'=>'alabama','AK'=>'alaska','AZ'=>'arizona','AR'=>'arkansas','CA'=>'california','CO'=>'colorado','CT'=>'connecticut','DE'=>'delaware','FL'=>'florida','GA'=>'georgia','HI'=>'hawaii','ID'=>'idaho','IL'=>'illinois','IN'=>'indiana','IA'=>'iowa','KS'=>'kansas','KY'=>'kentucky','LA'=>'louisiana','ME'=>'maine','MD'=>'maryland','MA'=>'massachusetts','MI'=>'michigan','MN'=>'minnesota','MS'=>'mississippi','MO'=>'missouri','MT'=>'montana','NE'=>'nebraska','NV'=>'nevada','NH'=>'new hampshire','NJ'=>'new jersey','NM'=>'new mexico','NY'=>'new york','NC'=>'north carolina','ND'=>'north dakota','OH'=>'ohio','OK'=>'oklahoma','OR'=>'oregon','PA'=>'pennsylvania','RI'=>'rhode island','SC'=>'south carolina','SD'=>'south dakota','TN'=>'tennessee','TX'=>'texas','UT'=>'utah','VT'=>'vermont','VA'=>'virginia','WA'=>'washington','WV'=>'west virginia','WI'=>'wisconsin','WY'=>'wyoming','DC'=>'district of columbia','VI'=>'virgin islands'); foreach ($city_list as $k=>$v) { $v['province'] = strtoupper(trim($v['province'],' ')); if(isset($ToState[$v['province']])) { $v['province'] = $ToState[$v['province']]; } $province[$v['province']] = array('province'=>$v['province']); } $this->data['province'] = $province; $this->data['arg_array'] = $arg_array; $this->_Template('fullorderxw_ddpmdata',$this->data); } public function _ddpmexcel($arg_array) { if(isset($_SESSION['api'])) { $user = $this->user->get_api($_SESSION['api']); $usp = $user; $fgshop = "";$sid = ""; $usersp = explode('|',trim($user['shop'],'|')); foreach ($usersp as $value) { $fgshop .= " shop = ".$value." or"; $sid .= " id = ".$value." or"; } } $province = $this->input->get('province',true); $timetk = $arg_array[1]; $timetj = $arg_array[2]; $country = $arg_array[0]; $where = "mergeid = 0 and dtime > '$timetk' and dtime < '$timetj' and country = '$country' and (".rtrim($fgshop,'or').")"; if($province) { $where .= " and province = '$province'"; } $order_str = "dtime desc"; $info_list = $this->fullorderxw->find_all($where,'orderinfo,number,shipremarks,shouldmoney',$order_str); $country = $this->country->read($arg_array[0]); $title = $country['zname'].date('Y-m-d',$timetk).'-'.date('Y-m-d',$timetj); $titlename = "

".$title."

订单号 订单编号 仓库品名 订单金额
"; $filename = $title.".xls"; $tail = "\n"; $this->excel->get_fz2($info_list,$titlename,$filename,$tail); } public function _statedc() { $user = $this->user->get_api($_SESSION['api']); if($user) { $fgshop = "";$sid = ""; $user = explode('|',trim($user['shop'],'|')); foreach ($user as $value) { $fgshop .= " shop = ".$value." or"; $sid .= " id = ".$value." or"; } } $post = $this->input->get(NULL, TRUE); if(isset($post['timetk'])) { $page = $this->input->get('page',true); $perpage = $this->input->get('perpage',true); $timetk = $this->input->get('timetk',true); $timetj = $this->input->get('timetj',true); $shop = $this->input->get('shop',true); $source = $this->input->get('source',true); $state = $this->input->get('state',true); $review = $this->input->get('review',true); $express = $this->input->get('express',true); $fs = $this->input->get('fs',true); $orderinfo = $this->input->get('orderinfo',true); $number = $this->input->get('number',true); $user = $this->input->get('user',true); $name = $this->input->get('name',true); $waybill = $this->input->get('waybill',true); $expressstate = $this->input->get('expressstate',true); $wltype = $this->input->get('wltype',true); $wlyc = $this->input->get('wlyc',true); $xztime = $this->input->get('xztime',true); $timetk = strtotime($timetk); $timetj = strtotime($timetj); $where = "1=1 and mergeid = 0 and (".rtrim($fgshop,'or').")"; if($timetk && $timetj) { $where .= " and ".$xztime." > '$timetk' and ".$xztime." < '$timetj'"; } if($xztime == 'librarytime') { $order_str = "librarytime desc"; } else if($xztime == 'dtime') { $order_str = "dtime desc"; } if($shop) { $where .= " and shop = '$shop'"; } if($source) { if($source == 11) { $where .= " and source != '1'"; } else { $where .= " and source = '$source'"; } } if($fs) { if($fs == '2') { $where .= " and exstateerror != ''"; } else { $where .= " and exstateerror = ''"; } } if($state) { $where .= " and state = '$state'"; } if($review) { $where .= " and review = '$review'"; } if($expressstate != "") { $where .= " and expressstate = '$expressstate'"; } if($wltype != "") { $where .= " and wltype = '$wltype'"; } if($wlyc != "") { $where .= " and wlyc = '$wlyc'"; } if($express) { $where .= " and express = '$express'"; } if($orderinfo) { $where .= " and orderinfo = '$orderinfo'"; } if($number) { $where .= " and number = '$number'"; } if($user) { $where .= " and user = '$user'"; } if($name) { $where .= " and name = '$name'"; } if($waybill) { $where .= " and waybill = '$waybill'"; } if(empty($page)) { $start = 0; $perpage = 1; } else { $start = ($page - 1)*$perpage; } //取得信息列表 $info_list = $this->fullorderxw->find_all($where,'shop,number,country,library,librarytime,expressstate,express,waybill,content,exstateerror,excontent',$order_str); //格式化数据 foreach ($info_list as $key=>$value) { $shop = $this->shop->read($value['shop']); $info_list[$key]['shop'] = $shop['shopname']; $country = $this->country->read($value['country']); $info_list[$key]['country'] = $country['name']; //$state = $this->typeclass->read($value['state']); //$info_list[$key]['state'] = $state['title']; if($value['library'] == 1) { $info_list[$key]['library'] = "未出库"; } else if($value['library'] == 2) { $info_list[$key]['library'] = "已出库"; } else if($value['library'] == 3) { $info_list[$key]['library'] = "已退库"; } if($value['librarytime'] == '0') { $info_list[$key]['librarytime'] = '无'; } else { $info_list[$key]['librarytime'] = date('Y-m-d H:i:s',$value['librarytime']); } if($value['expressstate'] == 0) { $info_list[$key]['expressstate'] = "无信息"; } else if($value['expressstate'] == 2) { $info_list[$key]['expressstate'] = "已取件"; } else if($value['expressstate'] == 3) { $info_list[$key]['expressstate'] = "在途中"; } else if($value['expressstate'] == 4) { $info_list[$key]['expressstate'] = "到达目的地国"; } else if($value['expressstate'] == 5) { $info_list[$key]['expressstate'] = "即将派送"; } else if($value['expressstate'] == 6) { $info_list[$key]['expressstate'] = "已签收"; } else if($value['expressstate'] == 1) { $info_list[$key]['expressstate'] = "派送异常"; } $express = $this->express->read($value['express']); $info_list[$key]['express'] = $express['servicename']; } } $title = date('Y-m-d',$timetk).'-'.date('Y-m-d',$timetj); $titlename = "
店铺名称 编号 收件人国家 出库状态 发货时间 物流状态 快递公司 运单号 消息状态 错误提示 物流信息
"; $filename = $title.".xls"; $tail = "\n"; $this->excel->get_fz2($info_list,$titlename,$filename,$tail); } public function _statedcwl() { $user = $this->user->get_api($_SESSION['api']); if($user) { $fgshop = "";$sid = ""; $user = explode('|',trim($user['shop'],'|')); foreach ($user as $value) { $fgshop .= " shop = ".$value." or"; $sid .= " id = ".$value." or"; } } $post = $this->input->get(NULL, TRUE); if(isset($post['timetk'])) { $dowid = $this->input->get('a'); $wid = ""; if($dowid != "") { $id_arr = explode(',',rtrim($dowid,',')); $wid .= " id = 0 or"; foreach ($id_arr as $v) { $wid .= " id = '$v' or"; } $wid = " and".rtrim($wid,'or'); } $page = $this->input->get('page',true); $perpage = $this->input->get('perpage',true); $timetk = $this->input->get('timetk',true); $timetj = $this->input->get('timetj',true); $shop = $this->input->get('shop',true); $expressstate = $this->input->get('expressstate',true); $fs = $this->input->get('fs',true); $state = $this->input->get('state',true); $express = $this->input->get('express',true); $orderinfo = $this->input->get('orderinfo',true); $number = $this->input->get('number',true); $waybill = $this->input->get('waybill',true); $wlyc = $this->input->get('wlyc',true); $wltype = $this->input->get('wltype',true); $source = $this->input->get('source',true); $xztime = $this->input->get('xztime',true); $timetk = strtotime($timetk); $timetj = strtotime($timetj); $where = "1=1 and mergeid = 0 and (".rtrim($fgshop,'or').")"; if($timetk && $timetj) { $where .= " and ".$xztime." > '$timetk' and ".$xztime." < '$timetj'"; } if($xztime == 'librarytime') { $order_str = "librarytime desc"; } else if($xztime == 'dtime') { $order_str = "dtime desc"; } if($shop) { $where .= " and shop = '$shop'"; } if($expressstate) { $where .= " and expressstate = '$expressstate'"; } if($fs) { if($fs == '1') { $where .= " and wlcontent != ''"; } if($fs == '2') { $where .= " and wlerror != ''"; } if($fs == '3') { $where .= " and wlcontent = '' and shouldmoney > 100"; } else if($fs == '4') { $where .= " and wltype = '1'"; } } if($state) { $where .= " and state = '$state'"; } if($express) { $where .= " and express = '$express'"; } if($orderinfo) { $where .= " and orderinfo = '$orderinfo'"; } if($number) { $where .= " and number = '$number'"; } if($waybill) { $where .= " and waybill = '$waybill'"; } if($wlyc!='') { $where .= " and wlyc = '$wlyc'"; } if($wltype!='') { $where .= " and wltype = '$wltype'"; } if($source) { if($source == 1) { $where .= " and source = '$source'"; } else { $where .= " and source != '1'"; } } $info_list = $this->fullorderxw->find_all($where.$wid,'orderinfo,number,country,library,librarytime,expressstate,express,waybill,wlbz,orderremarks,shipremarks,wlfstime,email,phone,wlcontent,wlerror,excontent',$order_str); //格式化数据 foreach ($info_list as $key=>$value) { $country = $this->country->read($value['country']); $info_list[$key]['country'] = $country['name']; //$state = $this->typeclass->read($value['state']); //$info_list[$key]['state'] = $state['title']; if($value['library'] == 1) { $info_list[$key]['library'] = "未出库"; } else if($value['library'] == 2) { $info_list[$key]['library'] = "已出库"; } else if($value['library'] == 3) { $info_list[$key]['library'] = "已退库"; } if($value['librarytime'] == '0') { $info_list[$key]['librarytime'] = '无'; } else { $info_list[$key]['librarytime'] = date('Y-m-d H:i:s',$value['librarytime']); } if($value['expressstate'] == 0) { $info_list[$key]['expressstate'] = "无信息"; } else if($value['expressstate'] == 2) { $info_list[$key]['expressstate'] = "已取件"; } else if($value['expressstate'] == 3) { $info_list[$key]['expressstate'] = "在途中"; } else if($value['expressstate'] == 4) { $info_list[$key]['expressstate'] = "到达目的地国"; } else if($value['expressstate'] == 5) { $info_list[$key]['expressstate'] = "即将派送"; } else if($value['expressstate'] == 6) { $info_list[$key]['expressstate'] = "已签收"; } else if($value['expressstate'] == 1) { $info_list[$key]['expressstate'] = "派送异常"; } $info_list[$key]['wlfstime'] = date('Y-m-d H:i:s',$value['wlfstime']); $express = $this->express->read($value['express']); $info_list[$key]['express'] = $express['servicename']; $info_list[$key]['excontent'] = str_replace('
','',$value['excontent']); } } $title = date('Y-m-d',$timetk).'-'.date('Y-m-d',$timetj); $titlename = "
订单号 编号 收件人国家 出库状态 出库时间 物流状态 快递公司 运单号 物流备注 订单备注 仓库品名 发送时间 邮箱 电话 邮件发送 错误提示 物流信息
"; $filename = $title.".xls"; $tail = "\n"; $this->excel->get_fz2($info_list,$titlename,$filename,$tail); } public function _waybillemail() { $user = $this->user->get_api($_SESSION['api']); if($user) { $fgshop = "";$sid = ""; $user = explode('|',trim($user['shop'],'|')); foreach ($user as $value) { $fgshop .= " shop = ".$value." or"; $sid .= " id = ".$value." or"; } } $post = $this->input->post(NULL, TRUE); if(isset($post['page'])) { $page = $this->input->post('page',true); $perpage = $this->input->post('perpage',true); $timetk = $this->input->post('timetk',true); $timetj = $this->input->post('timetj',true); $shop = $this->input->post('shop',true); $expressstate = $this->input->post('expressstate',true); $fs = $this->input->post('fs',true); $state = $this->input->post('state',true); $express = $this->input->post('express',true); $orderinfo = $this->input->post('orderinfo',true); $number = $this->input->post('number',true); $waybill = $this->input->post('waybill',true); $dlzemail = $this->input->post('dlzemail',true); $xztime = $this->input->post('xztime',true); $timetk = strtotime($timetk); $timetj = strtotime($timetj); $where = "1=1 and mergeid = 0 and (".rtrim($fgshop,'or').")"; if($timetk && $timetj) { $where .= " and ".$xztime." > '$timetk' and ".$xztime." < '$timetj'"; } $order_str = $xztime." desc"; if($shop) { $where .= " and shop = '$shop'"; } if($expressstate) { $where .= " and expressstate = '$expressstate'"; } if($state) { $where .= " and state = '$state'"; } if($express) { $where .= " and express = '$express'"; } if($orderinfo) { $where .= " and orderinfo = '$orderinfo'"; } if($number) { $where .= " and number = '$number'"; } if($waybill) { $where .= " and waybill = '$waybill'"; } if($dlzemail != '') { $where .= " and dlzemail = '$dlzemail'"; } if(empty($page)) { $start = 0; $perpage = 1; } else { $start = ($page - 1)*$perpage; } //取得信息列表 $info_list = $this->fullorderxw->find_all($where,'id,shop,orderinfo,number,country,library,librarytime,express,waybill,dlzemail,dlzemailtime',$order_str,$start,$perpage); //格式化数据 foreach ($info_list as $key=>$value) { $shop = $this->shop->read($value['shop']); $info_list[$key]['shop'] = $shop['shopname']; $country = $this->country->read($value['country']); $info_list[$key]['country'] = $country['name']; //$state = $this->typeclass->read($value['state']); //$info_list[$key]['state'] = $state['title']; if($value['library'] == 1) { $info_list[$key]['library'] = "未出库"; } else if($value['library'] == 2) { $info_list[$key]['library'] = "已出库"; } else if($value['library'] == 3) { $info_list[$key]['library'] = "已退库"; } if($value['librarytime'] == '0') { $info_list[$key]['librarytime'] = '无'; } else { $info_list[$key]['librarytime'] = date('Y-m-d',$value['librarytime']).'
'.date('H:i:s',$value['librarytime']); } $express = $this->express->read($value['express']); $info_list[$key]['express'] = $express['servicename']; if($value['dlzemail'] == '1') { $info_list[$key]['dlzemail'] = '发送成功'; } else if ($value['dlzemail'] == '2') { $info_list[$key]['dlzemail'] = '发送失败'; } else { $info_list[$key]['dlzemail'] = ''; } $info_list[$key]['dlzemailtime'] = ($value['dlzemailtime']>0)?date('Y-m-d H:i:s',$value['dlzemailtime']):''; } $total = $this->fullorderxw->find_count($where); $pagenum = ceil($total/$perpage); $over = $total-($start+$perpage); $rows = array('total'=>$total,'over'=>$over,'pagenum'=>$pagenum,'rows'=>($info_list)); echo json_encode($rows);exit; } $notice = $this->notice->find_all("type = '2' and (".rtrim($fgshop,'or').")"); $this->data['notice'] = $notice; $wlshop = $this->shop->find_all('1=1 and '.rtrim($sid,'or')); $this->data['wlshop'] = $wlshop; $this->data['express'] = $this->express->find_all(); $this->_Template('fullorderxw_waybillemail',$this->data); } public function _khdd() { $dt = 0;$fgshop = "shop = 0";$sid = 'id = 0'; if(isset($_SESSION['api'])) { $user = $this->user->get_api($_SESSION['api']); $usp = $user; $fgshop = "";$sid = ""; $usersp = explode('|',trim($user['shop'],'|')); foreach ($usersp as $value) { $fgshop .= " shop = ".$value." or"; $sid .= " id = ".$value." or"; } if($user['vip'] == 1) { $vip = 1; } else { $vip = 0; } } $post = $this->input->post(NULL, TRUE); if(isset($_GET['excel'])) { $page = $this->input->get('page',true); $perpage = $this->input->get('perpage',true); $warehouse = $this->input->get('warehouse',true); $timetk = $this->input->get('timetk',true); $timetj = $this->input->get('timetj',true); $shop = $this->input->get('shop',true); $source = $this->input->get('source',true); $state = $this->input->get('state',true); $review = $this->input->get('review',true); $type = $this->input->get('type',true); $express = $this->input->get('express',true); $orderinfo = $this->input->get('orderinfo',true); $user = $this->input->get('user',true); $client = $this->input->get('name',true); $waybill = $this->input->get('waybill',true); $number = $this->input->get('number',true); $email = $this->input->get('email',true); $phone = $this->input->get('phone',true); $dlz = $this->input->get('dlz',true); $print = $this->input->get('print',true); $library = $this->input->get('library',true); $js = $this->input->get('js',true); $exstate = $this->input->get('exstate',true); $xztime = $this->input->get('xztime',true); $libraryconfirm = $this->input->get('libraryconfirm',true); $timetk = strtotime($timetk); $timetj = strtotime($timetj); $plorder = $this->input->get('pl',true); $paypal = $this->input->get('paypal',true); $zf = $this->input->get('zf',true); $pay = $this->input->get('pay',true); $excel = $this->input->get('excel',true); $where = "1=1 and mergeid = 0 and (".rtrim($fgshop,'or').")"; if($warehouse) { $where .= " and type = '$warehouse'"; } if($timetk && $timetj) { $where .= " and ".$xztime." > '$timetk' and ".$xztime." < '$timetj'"; } if($shop) { $where .= " and shop = '$shop'"; } if($source) { if($source == '2d') { $where .= " and source >= '2'"; } else { $where .= " and source = '$source'"; } } if($state) { $where .= " and state = '$state'"; } if($review) { $where .= " and review = '$review'"; } if($type) { $where .= " and type = '$type'"; } if($express) { $where .= " and express = '$express'"; } if($orderinfo) { $where .= " and orderinfo = '$orderinfo'"; } if($user) { $where .= " and user = '$user'"; } if($client) { $where .= " and client like '%$client%'"; } if($waybill) { $where .= " and waybill = '$waybill'"; } if($number) { $where .= " and number = '$number'"; } if($email) { $where .= " and email = '$email'"; } if($phone) { $where .= " and phone like '%$phone%'"; } if($library) { $where .= " and library = '$library'"; } if($print) { $where .= " and print = '$print'"; } if($dlz != '') { $where .= " and dlz = '$dlz'"; } if($js) { $where .= " and js = '$js'"; } if($exstate) { $where .= " and exstate = '$exstate'"; } if($libraryconfirm) { $where .= " and libraryconfirm = '$libraryconfirm'"; } if($paypal) { $where .= " and paypal = '$paypal'"; } if($pay) { $where .= " and pay = '$pay'"; } if($zf) { if($zf == 1) { $where .= " and paypal not like '%-%-%-%'"; } else { $where .= " and paypal like '%-%-%-%'"; } } if($plorder) { $plorderinfo = '';$plnumber = '';$pln = 0; $plorder = explode(',',trim($plorder,',')); foreach ($plorder as $value) { if(is_numeric($value)) { $plorderinfo .= " orderinfo = ".$value." or"; } else if($value != '') { $plorderinfo .= " number = '".$value."' or"; } } if($pln > 0) { $where .= " and (".rtrim($plorderinfo,'or').") and (".rtrim($plnumber,'or').")"; } else { $where .= " and (".rtrim($plorderinfo,'or').")"; } } //数据排序 $order_str = "dtime desc"; if(empty($page)) { $start = 0; $perpage = 1; } else { $start = ($page - 1)*$perpage; } if($excel == '1') { $shop = array(); $shopdata = $this->shop->find_all("type = '269'"); foreach ($shopdata as $v) { $shop[$v['id']] = array('t'=>$v['brandname'],'z'=>0,'l'=>0,'x'=>0);//店铺名称,总客户,老客户,新客户 } $oldnumber = 0;$newnumber = 0; $info_list = $this->db->query('select distinct shop,email from crowd_fullorderxw where '.$where)->result_array(); foreach ($info_list as $key=>$v) { $shop[$v['shop']]['z'] += 1; $num = $this->fullorderxw->find_count("email = '".$v['email']."' and shop = '".$v['shop']."' and ".$xztime." < '$timetj'"); if($num > 1) { $shop[$v['shop']]['l'] += 1; } else { $shop[$v['shop']]['x'] += 1; } if(isset($v['email']) && $usp['excelpass'] == '1') { $emailpass = $this->setting->get_excelpass($v['email']); $info_list[$key]['email'] = $emailpass; } } $title = date('Y-m-d',$timetk).'-'.date('Y-m-d',$timetj); $titlename = "
店铺 客户数 老客户数 新客户数
"; $filename = $title.".xls"; $tail = "\n"; $this->excel->get_fz2($shop,$titlename,$filename,$tail); } else if($excel == '2' || $excel == '3') { $kh = array(); $info_list = $this->db->query('select distinct shop,email from crowd_fullorderxw where email != "" and '.$where)->result_array(); foreach ($info_list as $key=>$v) { $k = $this->fullorderxw->find_all("shop = '".$v['shop']."' and email = '".$v['email']."' and ".$xztime." < '$timetj'",'name,email,dtime,shouldmoney','dtime desc'); if($excel == 2 && count($k) > 1) { $kh[] = array($k[0]['name'],$k[0]['email'],date("Y-m-d H:i:s",$k[0]['dtime']),count($k),array_sum(array_column($k,'shouldmoney'))); } if($excel == 3 && count($k) < 2) { $kh[] = array($k[0]['name'],$k[0]['email'],date("Y-m-d H:i:s",$k[0]['dtime']),count($k),array_sum(array_column($k,'shouldmoney'))); } if(isset($v['email']) && $usp['excelpass'] == '1') { $emailpass = $this->setting->get_excelpass($v['email']); $info_list[$key]['email'] = $emailpass; } } $title = $country['zname'].date('Y-m-d',$timetk).'-'.date('Y-m-d',$timetj); $titlename = "
名称 邮箱 最后购买时间 购买次数 购买总额
"; $filename = $title.".xls"; $tail = "\n"; $this->excel->get_fz2($kh,$titlename,$filename,$tail); } else if($excel == '4' || $excel == '5') { $kh = array(); $info_list = $this->db->query('select distinct shop,email from crowd_fullorderxw where email != "" and '.$where)->result_array(); foreach ($info_list as $key=>$value) { $k = $this->fullorderxw->find_all("shop = '".$value['shop']."' and email = '".$value['email']."' and ".$xztime." < '$timetj'",'orderinfo,state,product,name,email,dtime,shouldmoney','dtime desc'); if($excel == 4 && count($k) > 1) { foreach ($k as $v) { $typeclass = $this->typeclass->read($v['state']); $kh[] = array($v['orderinfo'],$typeclass['spare'],$v['product'],$v['name'],$v['email'],date("Y-m-d H:i:s",$v['dtime']),$v['shouldmoney']); } } if($excel == 5 && count($k) < 2) { if(!isset($k[0]['state'])) { $typeclass = $k[0]['state'].'-数据字典无此信息'; } else { $typeclass = $this->typeclass->read($k[0]['state']); } $kh[] = array($k[0]['orderinfo'],$typeclass['spare'],$k[0]['product'],$k[0]['name'],$k[0]['email'],date("Y-m-d H:i:s",$k[0]['dtime']),$k[0]['shouldmoney']); } if(isset($value['email']) && $usp['excelpass'] == '1') { $emailpass = $this->setting->get_excelpass($value['email']); $info_list[$key]['email'] = $emailpass; } } $title = $country['zname'].date('Y-m-d',$timetk).'-'.date('Y-m-d',$timetj); $titlename = "
订单号 订单状态 产品名 客户名 客户邮箱 下单时间 订单金额
"; $filename = $title.".xls"; $tail = "\n"; $this->excel->get_fz2($kh,$titlename,$filename,$tail); } } } public function _klarnadata() { $post = $this->input->post(NULL, TRUE); if(isset($post['number'])) { $number = $this->input->post('number',true); $data = $this->fullorderxw->get_number($number); $shop = $this->shop->read($data['shop']); $f = ''; if($data['pay'] == '23') { $url = 'https://api-na.klarna.com/ordermanagement/v1/orders/'.$data['paypal']; $header[] = "Content-Type:application/json"; $header[] = "Authorization: Basic ".base64_encode($shop['klarnaname'].":".$shop['klarnapass']); $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HTTPHEADER, $header); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); $res = curl_exec($ch); curl_close($ch); $res = json_decode($res,true); if(isset($res['fraud_status']) && $shop['klarnaname'] != '') { $f = (($res['fraud_status'] == 'ACCEPTED')?1:2).'|'.$res['purchase_currency'].($res['order_amount']/100).' , '.(($res['fraud_status'] != 'ACCEPTED')?''.$res['fraud_status'].'':$res['fraud_status']).' , description:'.$res['initial_payment_method']['description'].' , number of installments:'.$res['initial_payment_method']['number_of_installments'].'|'.$res['billing_address']['street_address'].(($res['billing_address']['street_address2']!='')?' '.$res['billing_address']['street_address2']:'').','.$res['billing_address']['city'].','.$res['billing_address']['region'].','.$res['billing_address']['postal_code'].','.$res['billing_address']['country'].','.$res['billing_address']['given_name'].' '.$res['billing_address']['family_name'].','.$res['billing_address']['phone'].','.$res['billing_address']['email'].'|'.$res['shipping_address']['street_address'].(($res['shipping_address']['street_address2']!='')?' '.$res['shipping_address']['street_address2']:'').','.$res['shipping_address']['city'].','.$res['shipping_address']['region'].','.$res['shipping_address']['postal_code'].','.$res['shipping_address']['country'].','.$res['shipping_address']['given_name'].' '.$res['shipping_address']['family_name'].','.$res['shipping_address']['phone'].','.$res['shipping_address']['email']; } } else if($data['pay'] == '22' && $shop['paypalname'] != '') { $f = $this->paypal->data($data['paypal'],$shop); } else if(($data['pay'] == '26') && $shop['afterpayname'] != '') { $url = 'https://global-api.afterpay.com/v2/payments?ids='.$data['paypal']; $header[] = "Accept:application/json"; $header[] = "User-Agent: Readme.io API Simulator'"; $header[] = "Authorization: Basic ".base64_encode($shop['afterpayname'].":".$shop['afterpaypass']); $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HTTPHEADER, $header); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); $res = curl_exec($ch); curl_close($ch); $res = json_decode($res,true); if(isset($res['results'][0]['orderDetails']['consumer']['email'])) { $f = $res['results'][0]['orderDetails']['consumer']['email'].'|'.$res['results'][0]['orderDetails']['billing']['line1'].','.$res['results'][0]['orderDetails']['billing']['line2'].','.$res['results'][0]['orderDetails']['billing']['area1'].','.$res['results'][0]['orderDetails']['billing']['region'].','.$res['results'][0]['orderDetails']['billing']['postcode'].','.$res['results'][0]['orderDetails']['billing']['countryCode'].','.$res['results'][0]['orderDetails']['billing']['name'].','.$res['results'][0]['orderDetails']['billing']['phoneNumber'].'|'.$res['results'][0]['orderDetails']['shipping']['line1'].','.$res['results'][0]['orderDetails']['shipping']['line2'].','.$res['results'][0]['orderDetails']['shipping']['area1'].','.$res['results'][0]['orderDetails']['shipping']['region'].','.$res['results'][0]['orderDetails']['shipping']['postcode'].','.$res['results'][0]['orderDetails']['shipping']['countryCode'].','.$res['results'][0]['orderDetails']['shipping']['name'].','.$res['results'][0]['orderDetails']['shipping']['phoneNumber']; $f = str_replace(',,',',',$f); } } else if(($data['pay'] == '27') && $shop['clearpayname'] != '') { $url = 'https://global-api.afterpay.com/v2/payments?ids='.$data['paypal']; $header[] = "Accept:application/json"; $header[] = "User-Agent: Readme.io API Simulator'"; $header[] = "Authorization: Basic ".base64_encode($shop['clearpayname'].":".$shop['clearpaypass']); $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HTTPHEADER, $header); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); $res = curl_exec($ch); curl_close($ch); $res = json_decode($res,true); if(isset($res['results'][0]['orderDetails']['consumer']['email'])) { $f = $res['results'][0]['orderDetails']['consumer']['email'].'|'.$res['results'][0]['orderDetails']['billing']['line1'].','.$res['results'][0]['orderDetails']['billing']['line2'].','.$res['results'][0]['orderDetails']['billing']['area1'].','.$res['results'][0]['orderDetails']['billing']['region'].','.$res['results'][0]['orderDetails']['billing']['postcode'].','.$res['results'][0]['orderDetails']['billing']['countryCode'].','.$res['results'][0]['orderDetails']['billing']['name'].','.$res['results'][0]['orderDetails']['billing']['phoneNumber'].'|'.$res['results'][0]['orderDetails']['shipping']['line1'].','.$res['results'][0]['orderDetails']['shipping']['line2'].','.$res['results'][0]['orderDetails']['shipping']['area1'].','.$res['results'][0]['orderDetails']['shipping']['region'].','.$res['results'][0]['orderDetails']['shipping']['postcode'].','.$res['results'][0]['orderDetails']['shipping']['countryCode'].','.$res['results'][0]['orderDetails']['shipping']['name'].','.$res['results'][0]['orderDetails']['shipping']['phoneNumber']; $f = str_replace(',,',',',$f); } } else if($data['pay'] == '1211') { $url = 'https://api.stripe.com/v1/payment_intents/'.$data['paypal']; $header[] = "Authorization:Bearer ".$shop['stripe']; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HTTPHEADER, $header); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); $res = curl_exec($ch); curl_close($ch); $res = json_decode($res,true); $f = ''; if(isset($res['shipping']['name'])) { $line = ($res['shipping']['address']['line2'] != '')?$res['shipping']['address']['line1'].' '.$res['shipping']['address']['line2']:$res['shipping']['address']['line1']; $f = 'stripe|'.json_encode(array('name'=>$res['shipping']['name'],'email'=>$res['receipt_email'],'address'=>$line.','.$res['shipping']['address']['city'].','.$res['shipping']['address']['state'].','.$res['shipping']['address']['postal_code'].','.$res['shipping']['address']['country'].','.$res['shipping']['phone'],'shouldmoney'=>$res['amount']/100)); } } else { echo json_encode(array('msg'=>'此店铺没有对接信息','success'=>false));exit; } if($f != '') { if($this->fullorderxw->save(array('klarnadata'=>$f),$data['id'])) { echo json_encode(array('msg'=>'获取成功,请关闭此页重新打开','success'=>true));exit; } else { echo json_encode(array('msg'=>'写入失败,请重试','success'=>false));exit; } } else { echo json_encode(array('msg'=>'获取失败,请稍后重试','cl'=>base64_encode($shop['afterpayname'].":".$shop['afterpaypass']),'a'=>$data['paypal'],'success'=>false));exit; } } } public function _kcyz($warehouse,$whlabel,$id,$shop,$number) { if(!$whlabel || $whlabel == '|') { return array('t'=>1,'m'=>json_encode(array('t'=>1,'msg'=>'请先添加产品信息!','success'=>false)));exit; } $w = $this->warehouse->read($warehouse); if($w['zd'] != 1) { return 1; } $pp = explode('|',trim($whlabel,'|')); $x = 0;$save = array(); foreach ($pp as $va) { $num = explode('-',$va); if($number) { $whlabel = $this->whlabel->find_all("state = 0 and number = '$num[0]' and warehouse = '$warehouse' and (zd = '$number' or zd = '') and (shop IS NULL or shop = '')");//通用 $shopwhlabel = $this->whlabel->find_all("state = 0 and number = '$num[0]' and warehouse = '$warehouse' and (zd = '$number' or zd = '') and shop like '%,".$shop.",%'");//专属 } else { $whlabel = $this->whlabel->find_all("state = 0 and number = '$num[0]' and warehouse = '$warehouse' and zd = '' and (shop IS NULL or shop = '')");//通用 $shopwhlabel = $this->whlabel->find_all("state = 0 and number = '$num[0]' and warehouse = '$warehouse' and zd = '' and shop like '%,".$shop.",%'");//专属 } $x++; if(count($whlabel)+count($shopwhlabel) < $num[1]) { $save[] = $x-1;continue;//提前先加X不然出错,所以要减1 } } return $save; } public function _epod() { $post = $this->input->post(NULL, TRUE); if(isset($post['number'])) { $number = $this->input->post('number',true); $data = $this->fullorderxw->get_number($number); if(is_file('./data/epod/'.date('Y',time()).'/epod-'.$data['waybill'].'.pdf')) { echo json_encode(array('msg'=>'http://'.$_SERVER['HTTP_HOST'].'/data/epod/'.date('Y',time()).'/epod-'.$data['waybill'].'.pdf','success'=>true));exit; } else { $epod = $this->dhl->get_epod($data); if($epod['c'] == 1) { echo json_encode(array('msg'=>'http://'.$_SERVER['HTTP_HOST'].$epod['d'],'success'=>true));exit; } else { echo json_encode(array('msg'=>$epod['d'],'success'=>false));exit; } } } } public function _zw($arg_array) { $arg_array = $arg_array[0];$fpdata = array(); $fullorderxw = $this->fullorderxw->read($arg_array); $fullorderxw['shipremarks'] = str_replace(array('<','>'),array('<','>'),$fullorderxw['shipremarks']); $fullorderxw['parameter'] = str_replace(",","---",$fullorderxw['parameter']); $this->data['fullorderxw'] = $fullorderxw; $this->data['countrys'] = $this->country->find_all(); $this->data['express'] = $this->express->find_all(); $warehouse = $this->warehouse->read($fullorderxw['type']); if(stripos($fullorderxw['fpdata'],';') !== false) { $fpdata = explode(';',rtrim($fullorderxw['fpdata'],';')); foreach ($fpdata as $k=>$v) { $xxv = explode('|',$v); if(isset($xxv[9]) && stripos($xxv[9],$warehouse['hz']) !== false && $warehouse['hz'] != '' && $warehouse['zd'] == 1) { $xxv['zd'] = "

已占单

"; $bdck = $warehouse['bdck']; if(stripos($xxv[9],'~') !== false) { $dxxv = explode('~',trim($xxv[9],'~')); foreach ($dxxv as $val) { $wzid = $this->$bdck->read(trim($val,$warehouse['hz'])); if($wzid['details'] != '') { $xxv['zd'] .= '

位置:'.$wzid['details'].' - '.$wzid['cpid'].'

'; } } } else { $wzid = $this->$bdck->read(trim($xxv[9],$warehouse['hz'])); if($wzid['details'] != '') { $xxv['zd'] .= '

位置:'.$wzid['details'].' - '.$wzid['cpid'].'

'; } } } $fpdata[$k] = $xxv; } } $this->data['fpdata'] = $fpdata; $this->data['fpdata'] = $fpdata; $thfpdataxs = array(); if($fullorderxw['thfpdata'] != '') { $thfpdata = explode(';',trim($fullorderxw['thfpdata'],';')); foreach ($thfpdata as $k=>$v) { $thxs = explode('~',trim($v,'~')); $thxs[0] = explode('|',trim($thxs[0],'|')); $thxs[1] = explode('|',trim($thxs[1],'|')); $thfpdataxs[] = array("

".$thxs[0][1]."

".$thxs[1][1]."

","

".$thxs[0][2]."

".$thxs[1][2]."

","

",$thxs[1][0]); } } $this->data['thfpdata'] = $thfpdataxs; $shop = $this->shop->read($fullorderxw['shop']); $this->data['et'] = $shop['estimaterate'];//此店铺配置预计到帐金额比例 $is = 0; if($shop['type'] == 269)//判断是否独立站,269是独立站 { $is = 1; } $this->data['is'] = $is; //单项开始 $warehouse = $this->warehouse->read($fullorderxw['warehouse']);//发货仓库 $state = $this->typeclass->read($fullorderxw['state']);//订单状态 $country = $this->country->read($fullorderxw['country']);//国家 if($fullorderxw['capital'] == 1) { $capital = '暂未支付'; } else if($fullorderxw['capital'] == 2) { $capital = '部分支付'; } else if($fullorderxw['capital'] == 3) { $capital = '全部支付'; } if($fullorderxw['printtype'] == 1) { $printtype = '运单'; } else if($fullorderxw['printtype'] == 2) { $printtype = '发货单'; } else if($fullorderxw['printtype'] == 3) { $printtype = '不打印单据'; } else { $printtype = '未选择'; } $this->data['warehouse'] = $warehouse['title']; $this->data['state'] = $state['title']; $this->data['capital'] = $capital; $this->data['country'] = $country['name']; $this->data['printtype'] = $printtype; //单项结束 /** 历史运单号展示并下载PDF 打印时间需要2019-3-21 0点之后有记录 **/ $downwaybill = '';$dwls = array(); $oldwaybill = explode('-',ltrim($fullorderxw['oldwaybill'],'-')); if(isset($oldwaybill[0][1])) { $oldwaybill = array_reverse($oldwaybill); //调整顺序 foreach ($oldwaybill as $v) { $dw = explode('/',$v); if(isset($dw[1])) { if(stripos($downwaybill,$dw[1]) === false) { $dwls[$dw[1]] = 1; $downwaybill .= ''.$dw[1].'、'; } } } } if($fullorderxw['printtype'] == 1) { if($fullorderxw['waybill'] != '' && !isset($dwls[$fullorderxw['waybill']])) { $downwaybill = ''.$fullorderxw['waybill'].'、'.$downwaybill; } } $this->data['downwaybill'] = rtrim($downwaybill,'、'); /** 历史打印时间 **/ $printtime = ''; if($fullorderxw['oldprinttime']) { $pte = explode('-',rtrim($fullorderxw['oldprinttime'],'-')); foreach ($pte as $v) { $printtime .= date('Y-m-d H:i:s',$v).'、'; } } $this->data['printtime'] = rtrim($printtime,'、'); $product = ''; $fullorderxw['product'] = str_replace("'","",$fullorderxw['product']); if($fullorderxw['link'] != '' && $fullorderxw['source'] != '1') { $pt = explode(',',$fullorderxw['product']); $lk = explode(',',$fullorderxw['link']); for($i=0;$icolourorderts->get_texturl($pt[$i],$lk[$i]); } else { $octs = ''; } $a = $octs?''.$pt[$i].'':$pt[$i]; //$a = (stripos($pt[$i],'Lace Front Wig Body Wave Human Hair Wigs Pre Plucked Brazilian Virgin Hair') !== false || stripos($pt[$i],'Deep Wave Wig 100 Human Hair Swiss Lace Curly Hair Lace Front Wig') !== false || stripos($pt[$i],'Alipearl Lace Front Wig Silky Straight 100% Virgin Human Hair') !== false || stripos($pt[$i],'Long Wigs Water Wave Lace Front Wigs Natural Wave Wigs For Sale') !== false || stripos($pt[$i],'Deep Wave Long Hair Wigs Lace Front Wigs Cheap Human Hair Wigs') !== false || stripos($pt[$i],'Long Wigs Loose Deep Wave Lace Front Wigs For Black Women') !== false || stripos($pt[$i],'Long Black Wigs Body Wave Lace Front Wigs With Baby Hair') !== false || stripos($pt[$i],'Long Curly Wigs Lace Front Wigs Human Hair Lace Front Wigs') !== false || stripos($pt[$i],'Blonde Skunk Stripe Hair Natural Body Wave Hairstyle Lace Wigs for Women') !== false)?''.$pt[$i].'':$pt[$i]; if(isset($lk[$i])) { $product .= ($product != '')?' , '.$a.'':''.$a.''; } else { $product .= ($product != '')?' , '.$a:$a; } } } else { $octs = $this->colourorderts->get_text($fullorderxw['product']); $a = $octs?''.$fullorderxw['product'].'':$fullorderxw['product']; //$a = (stripos($fullorderxw['product'],'Lace Front Wig Body Wave Human Hair Wigs Pre Plucked Brazilian Virgin Hair') !== false || stripos($fullorderxw['product'],'Deep Wave Wig 100 Human Hair Swiss Lace Curly Hair Lace Front Wig') !== false || stripos($fullorderxw['product'],'Alipearl Lace Front Wig Silky Straight 100% Virgin Human Hair') !== false || stripos($fullorderxw['product'],'Long Wigs Water Wave Lace Front Wigs Natural Wave Wigs For Sale') !== false || stripos($fullorderxw['product'],'Deep Wave Long Hair Wigs Lace Front Wigs Cheap Human Hair Wigs') !== false || stripos($fullorderxw['product'],'Long Wigs Loose Deep Wave Lace Front Wigs For Black Women') !== false || stripos($fullorderxw['product'],'Long Black Wigs Body Wave Lace Front Wigs With Baby Hair') !== false || stripos($fullorderxw['product'],'Long Curly Wigs Lace Front Wigs Human Hair Lace Front Wigs') !== false || stripos($fullorderxw['product'],'Blonde Skunk Stripe Hair Natural Body Wave Hairstyle Lace Wigs for Women') !== false)?''.$fullorderxw['product'].'':$fullorderxw['product']; $product = $a; } $this->data['product'] = $product; $out = $this->systemtransfer->find_all("number = '".$fullorderxw['number']."'"); $outread = ''; if($out) { foreach ($out as $val) { $list = ''; $rk = explode('|',trim($val['rk'],'|')); $rktime = explode('|',trim($val['rktime'],'|')); $zw = array(); $t = $this->transfer->find_all("1=1"); foreach ($t as $v) { $zw[$v['id']] = $v['title']; } if($val['rk'] != '' && count($rk) > 0) { for($i=0;$i:'.$list.'
'; } } else { $systemwigsout = $this->systemwigsout->find_all("number = '".$fullorderxw['number']."'"); $outread = array(); if($systemwigsout) { foreach ($systemwigsout as $v) { if($v['czwarehouse'] == 37) { $outread[] = '华荣厂'; } else if($v['czwarehouse'] == 0) { $outread[] = '龙盈厂'; } $cz = explode('|',trim($v['cz'],'|')); $cztime = explode('|',trim($v['cztime'],'|')); $zw = $this->transfer->get_list(); if($v['cz'] != '' && count($cz) > 0) { for($i=0;$i'AL','alaska'=>'AK','arizona'=>'AZ','arkansas'=>'AR','california'=>'CA','colorado'=>'CO','connecticut'=>'CT','delaware'=>'DE','florida'=>'FL','georgia'=>'GA','hawaii'=>'HI','idaho'=>'ID','illinois'=>'IL','indiana'=>'IN','iowa'=>'IA','kansas'=>'KS','kentucky'=>'KY','louisiana'=>'LA','maine'=>'ME','maryland'=>'MD','massachusetts'=>'MA','michigan'=>'MI','minnesota'=>'MN','mississippi'=>'MS','missouri'=>'MO','montana'=>'MT','nebraska'=>'NE','nevada'=>'NV','new hampshire'=>'NH','new jersey'=>'NJ','new mexico'=>'NM','new york'=>'NY','north carolina'=>'NC','north dakota'=>'ND','ohio'=>'OH','oklahoma'=>'OK','oregon'=>'OR','pennsylvania'=>'PA','rhode island'=>'RI','south carolina'=>'SC','south dakota'=>'SD','tennessee'=>'TN','texas'=>'TX','utah'=>'UT','vermont'=>'VT','virginia'=>'VA','washington'=>'WA','west virginia'=>'WV','wisconsin'=>'WI','wyoming'=>'WY','district of columbia'=>'DC','virgin islands'=>'VI','guam'=>'GU','puerto rico'=>'PR'); $ToState = array_flip($ToState); $klarnadata3 = str_replace(' ','',$klarnadata[3]); $city = str_replace(' ','',$fullorderxw['city']); $klarnadataaddress = explode($city,$klarnadata3); if(isset($klarnadataaddress[1])) { $klarnadata3 = $city.$klarnadataaddress[1]; $klarnadatacolor = explode(',',$klarnadata3); unset($klarnadatacolor[4]); unset($klarnadatacolor[6]); if(isset($ToState[$klarnadatacolor[1]])) { $klarnadatacolor[1] = ucwords($ToState[$klarnadatacolor[1]]); } $klarnadata['color'] = $klarnadataaddress[0].implode(",",$klarnadatacolor); } else { $klarnadata['color'] = $klarnadata3; } } } else { $klarnadata = ''; } $p = explode('-',$fullorderxw['paypal']); $this->data['klarnacolor'] = $klarnacolor; $this->data['klarnadata'] = $klarnadata; $this->data['systemwigsout'] = $outread; $this->_Template('fullorderxw_zw',$this->data); } public function _dcdxyz() { $post = $this->input->get(NULL, TRUE); if(isset($post['timetk'])) { $timetk = $this->input->get('timetk',true); $timetj = $this->input->get('timetj',true); $timetk = strtotime($timetk); $timetj = strtotime($timetj); $where = "1=1"; if($timetk && $timetj) { $where .= " and dtime > '$timetk' and dtime < '$timetj'"; } //数据排序 $order_str = "dtime desc"; //取得信息列表 $info_list = $this->fullorderxw->find_all($where,'orderinfo,number,waybill',$order_str); $data = array(); foreach ($info_list as $key=>$value) { } $title = "订单信息 ".date("Y-m-d"); $titlename = "

".$title."

订单号 编号 运单号
"; $filename = $title.".xls"; $tail = "\n"; $this->excel->get_fz2($data,$titlename,$filename,$tail); } } public function _thxz() { $post = $this->input->get(NULL, TRUE); if(isset($post['timetk'])) { $timetk = $this->input->get('timetk',true); $timetj = $this->input->get('timetj',true); $timetk = strtotime($timetk); $timetj = strtotime($timetj); $where = "returndata != ''"; if($timetk && $timetj) { $where .= " and dtime > '$timetk' and dtime < '$timetj'"; } //数据排序 $order_str = "dtime desc"; //取得信息列表 $info_list = $this->fullorderxw->find_all($where,'orderinfo,number,returndata',$order_str); foreach ($info_list as $key=>$value) { $ydh = explode('">',$value['returndata']); $ydh = explode('',$ydh[1]); $info_list[$key]['returndata'] = $ydh[0]; $time = explode('pdf/',$value['returndata']); $time = explode('/',$time[1]); $info_list[$key]['time'] = $time[0]; } $title = "退货订单信息 ".date("Y-m-d"); $titlename = "

".$title."

订单号 编号 退货运单号 退货时间
"; $filename = $title.".xls"; $tail = "\n"; $this->excel->get_fz2($info_list,$titlename,$filename,$tail); } } }