Esempio n. 1
0
 private function operate($type)
 {
     // 记录日志
     $operate = new Application_Model_Log_Operate();
     $now = date('Y-m-d H:i:s');
     $computer_name = gethostbyaddr(getenv("REMOTE_ADDR"));
     $user_session = new Zend_Session_Namespace('user');
     $user = $user_session->user_info['user_id'];
     $data = array('user_id' => $user, 'operate' => $type, 'target' => 'bom', 'computer_name' => $computer_name, 'ip' => $_SERVER['REMOTE_ADDR'], 'time' => $now);
     $operate->insert($data);
 }
Esempio n. 2
0
 public function editpwdAction()
 {
     // 返回值数组
     $result = array('success' => true, 'info' => '修改密码成功');
     $user_session = new Zend_Session_Namespace('user');
     $user_id = $user_session->user_info['user_id'];
     $request = $this->getRequest()->getParams();
     $pwd0 = isset($request['pwd0']) ? $request['pwd0'] : null;
     $pwd1 = isset($request['pwd1']) ? $request['pwd1'] : null;
     $pwd2 = isset($request['pwd2']) ? $request['pwd2'] : null;
     if ($pwd0 && $pwd1 && $pwd2) {
         $user = new Application_Model_User();
         if ($user->checkUserPwdById($user_id, $pwd0)) {
             $employeeInfo = $user->getEmployeeInfoById($user_id);
             $pwd = md5($employeeInfo['number'] . $pwd1);
             try {
                 $user->update(array('password' => $pwd), "id = " . $user_id);
                 $computer_name = gethostbyaddr(getenv("REMOTE_ADDR"));
                 // 计算机名
                 $now = date('Y-m-d H:i:s');
                 $data = array('operate' => '修改密码', 'target' => 'UserAccount', 'computer_name' => $computer_name, 'ip' => $_SERVER['REMOTE_ADDR'], 'time' => $now);
                 $operate = new Application_Model_Log_Operate();
                 try {
                     $operate->insert($data);
                 } catch (Exception $e) {
                     $result['success'] = false;
                     $result['info'] = $e->getMessage();
                     echo Zend_Json::encode($result);
                     exit;
                 }
             } catch (Exception $e) {
                 $result['success'] = false;
                 $result['info'] = $e->getMessage();
                 echo Zend_Json::encode($result);
                 exit;
             }
         } else {
             $result['success'] = false;
             $result['info'] = '旧密码输入错误!';
         }
     } else {
         $result['success'] = false;
         $result['info'] = '新、旧密码不能为空!';
     }
     echo Zend_Json::encode($result);
     exit;
 }
Esempio n. 3
0
 public function getdataAction()
 {
     // 请求参数
     $request = $this->getRequest()->getParams();
     $option = isset($request['option']) ? $request['option'] : null;
     $condition = array('key' => isset($request['key']) ? $request['key'] : '', 'operate' => isset($request['operate']) ? $request['operate'] : '', 'date_from' => isset($request['date_from']) ? $request['date_from'] : date('Y-m-01'), 'date_to' => isset($request['date_to']) ? $request['date_to'] : date('Y-m-t'), 'page' => isset($request['page']) ? $request['page'] : 1, 'limit' => isset($request['limit']) ? $request['limit'] : 0, 'option' => $option);
     $operate = new Application_Model_Log_Operate();
     $data = $operate->getData($condition);
     if ($option == 'csv') {
         $this->view->layout()->disableLayout();
         $this->_helper->viewRenderer->setNoRender(true);
         $h = new Application_Model_Helpers();
         $h->exportCsv($data);
     } else {
         echo Zend_Json::encode($data);
     }
     exit;
 }
Esempio n. 4
0
 public function replydeliverydateAction()
 {
     // 返回值数组
     $result = array('success' => true, 'info' => '');
     $request = $this->getRequest()->getParams();
     $id = isset($request['id']) ? $request['id'] : null;
     $date = isset($request['date']) && $request['date'] != '' ? $request['date'] : null;
     $remark = isset($request['remark']) ? $request['remark'] : null;
     if ($id) {
         $item = new Erp_Model_Purchse_Orderitems();
         $itemData = $item->fetchRow("id = " . $id)->toArray();
         $user_session = new Zend_Session_Namespace('user');
         $user_id = $user_session->user_info['user_id'];
         $user_name = $user_session->user_info['user_name'];
         $now = date('Y-m-d H:i:s');
         $itemInfo = $item->fetchRow("id = " . $id)->toArray();
         $updateData = array('delivery_date_remark' => $remark);
         if ($itemInfo['delivery_date'] != $date) {
             $updateData['delivery_date'] = $date;
             $updateData['delivery_date_update_time'] = $now;
             $params = Zend_Json::encode(array('code' => $itemData['code'], 'name' => $itemData['name'], 'description' => $itemData['description'], 'delivery_date' => $date, 'delivery_date_remark' => $remark, 'user' => $user_name, 'time' => $now));
             $data = array('user_id' => $user_id, 'operate' => '采购交期回复', 'target' => 'Purchse Order Statistics', 'target_id' => $id, 'computer_name' => gethostbyaddr(getenv("REMOTE_ADDR")), 'ip' => $_SERVER['REMOTE_ADDR'], 'content' => $params, 'time' => $now);
             try {
                 $operate = new Application_Model_Log_Operate();
                 $operate->insert($data);
             } catch (Exception $e) {
                 $result['success'] = false;
                 $result['info'] = $e->getMessage();
                 echo Zend_Json::encode($result);
                 exit;
             }
         }
         $item->update($updateData, "id = " . $id);
     } else {
         $result['success'] = false;
         $result['info'] = '信息填写错误,交期回复失败!';
     }
     echo Zend_Json::encode($result);
     exit;
 }
Esempio n. 5
0
 public function getReqStatistics($condition = array())
 {
     $data = array();
     $sql = $this->select()->setIntegrityCheck(false)->from(array('t1' => $this->_name), array('req_active' => 'active', 'req_state' => new Zend_Db_Expr("case when t1.state = 0 then '审核中' when t1.state = 1 then '拒绝' else '批准' end"), 'req_number' => 'number', 'req_dept_id' => 'dept_id', 'req_release_time' => 'release_time', 'req_create_time' => 'create_time', 'req_remark' => 'remark', 'req_reason' => 'reason', 'req_type_id' => 'type_id'))->joinLeft(array('t2' => $this->_dbprefix . 'user'), "t1.create_user = t2.id", array())->joinLeft(array('t3' => $this->_dbprefix . 'employee'), "t2.employee_id = t3.id", array('req_creater' => 'cname'))->joinLeft(array('t4' => $this->_dbprefix . 'user'), "t1.update_user = t4.id", array())->joinLeft(array('t5' => $this->_dbprefix . 'employee'), "t4.employee_id = t5.id", array('req_updater' => 'cname'))->joinLeft(array('t6' => $this->_dbprefix . 'employee_dept'), "t1.dept_id = t6.id", array('req_dept' => 'name'))->joinLeft(array('t7' => $this->_dbprefix . 'erp_pur_type'), "t1.type_id = t7.id", array('req_type' => 'name'))->joinLeft(array('t8' => $this->_dbprefix . 'erp_pur_req_items'), "t1.id = t8.req_id")->joinLeft(array('t9' => $this->_dbprefix . 'employee_dept'), "t8.dept_id = t9.id", array('dept' => 'name'))->joinLeft(array('t10' => $this->_dbprefix . 'erp_pur_order_items_req'), "t10.req_item_id = t8.id and t10.active = 1", array('req_item_id', 'order_item_ids' => new Zend_Db_Expr("group_concat(t10.order_item_id)"), 'qty_order' => new Zend_Db_Expr("sum(t10.qty)")))->joinLeft(array('t11' => $this->_dbprefix . 'erp_pur_order_items'), "t10.order_item_id = t11.id", array('order_item_id' => 'id', 'delivery_date', 'delivery_date_remark'))->joinLeft(array('t14' => $this->_dbprefix . 'erp_pur_order'), "t11.order_id = t14.id", array('order_number' => new Zend_Db_Expr("group_concat(t14.number)")))->joinLeft(array('t12' => $this->_dbprefix . 'user'), "t1.apply_user = t12.id", array())->joinLeft(array('t13' => $this->_dbprefix . 'employee'), "t12.employee_id = t13.id", array('req_applier' => 'cname'))->group("t8.id")->order(array('t1.number desc', 't1.create_time desc'));
     // 状态
     if ($condition['state'] != null) {
         if ($condition['state'] == 3) {
             $sql->where("t1.active = 0");
         } else {
             $sql->where("t1.state = " . $condition['state']);
         }
     }
     // 申请人
     if ($condition['applier']) {
         $sql->where("t3.cname like '%" . $condition['applier'] . "%' or t3.ename like '%" . $condition['applier'] . "%'");
     }
     // 日前从
     if ($condition['date_from']) {
         $sql->where("t1.create_time >= '" . $condition['date_from'] . " 00:00:00'");
     }
     // 日期至
     if ($condition['date_to']) {
         $sql->where("t1.create_time <= '" . $condition['date_to'] . " 23:59:59'");
     }
     // 采购类别
     if ($condition['type']) {
         $type = json_decode($condition['type']);
         if (count($type)) {
             $type_con = "t1.type_id = " . $type[0];
             for ($i = 1; $i < count($type); $i++) {
                 $type_con .= " or t1.type_id = " . $type[$i];
             }
             $sql->where($type_con);
         }
     }
     // 需求部门
     if ($condition['dept']) {
         $dept = json_decode($condition['dept']);
         if (count($dept)) {
             $dept_con = "t1.dept_id = " . $dept[0];
             for ($i = 1; $i < count($dept); $i++) {
                 $dept_con .= " or t1.dept_id = " . $dept[$i];
             }
             $sql->where($dept_con);
         }
     }
     if ($condition['key']) {
         $sql->where("t1.number like '%" . $condition['key'] . "%' or t1.remark like '%" . $condition['key'] . "%' or t1.reason like '%" . $condition['key'] . "%' or t3.cname like '%" . $condition['key'] . "%' or t3.ename like '%" . $condition['key'] . "%' or t7.name like '%" . $condition['key'] . "%' or t8.code like '%" . $condition['key'] . "%' or t8.name like '%" . $condition['key'] . "%' or t8.description like '%" . $condition['key'] . "%'");
     }
     $total = $this->fetchAll($sql)->count();
     if ($condition['option'] != 'csv') {
         $sql->limitPage($condition['page'], $condition['limit']);
     }
     $data = $this->fetchAll($sql)->toArray();
     $items_req = new Erp_Model_Purchse_Orderitemsreq();
     $order = new Erp_Model_Purchse_Order();
     $operateModel = new Application_Model_Log_Operate();
     $receiveModel = new Erp_Model_Purchse_Reqitemsreceived();
     for ($i = 0; $i < count($data); $i++) {
         $data[$i]['delivery_reply_log'] = '';
         // 入库日志
         $data[$i]['in_stock_qty'] = 0;
         $data[$i]['in_stock_info'] = '';
         if ($data[$i]['req_item_id']) {
             $in_stock_info = $receiveModel->getReceivedInfo('req', $data[$i]['req_item_id']);
             $data[$i]['in_stock_qty'] = $in_stock_info['qty'];
             $data[$i]['in_stock_info'] = implode(',', $in_stock_info['info']);
         }
         // 交期回复日志
         if ($data[$i]['delivery_date'] != '' || $data[$i]['delivery_date_remark'] != '') {
             $logInfo = array();
             $log = $operateModel->getLogByOperateAndTargetId('采购交期回复', $data[$i]['order_item_id']);
             foreach ($log as $l) {
                 $content = Zend_Json::decode($l['content']);
                 $logText = $content['time'] . ' [' . $content['delivery_date'] . '] [' . $content['delivery_date_remark'] . '] ' . $content['user'];
                 array_push($logInfo, $logText);
             }
             $data[$i]['delivery_reply_log'] = implode(',', $logInfo);
         }
         // 获取采购订单数量(合并下单的申请分拆显示)
         $data[$i]['req_info'] = '';
         $data[$i]['receive_info'] = '';
         $data[$i]['receive_qty'] = 0;
         $data[$i]['order_info'] = '';
         if ($data[$i]['order_item_ids'] != '') {
             $item_ids = explode(',', $data[$i]['order_item_ids']);
             $req_item_data = $order->getOrderQty($item_ids, $data[$i]['req_item_id']);
             $orderInfoArr = array();
             $receiveInfoArr = array();
             //echo '<pre>';print_r($req_item_data);exit;
             foreach ($req_item_data as $req_info) {
                 foreach ($req_info['receive_data'] as $r) {
                     array_push($receiveInfoArr, $r['number'] . ' [' . $r['qty'] . '] [' . $r['time'] . ']');
                     $data[$i]['receive_qty'] += $r['qty'];
                 }
                 array_push($orderInfoArr, $req_info['number'] . ' [' . $req_info['qty'] . '] [' . $req_info['time'] . ']');
             }
             $data[$i]['order_info'] = implode(',', $orderInfoArr);
             $data[$i]['receive_info'] = implode(',', $receiveInfoArr);
         }
         $data[$i]['qty_left'] = $data[$i]['qty'] - $data[$i]['qty_order'];
         if ($data[$i]['req_active'] == 0) {
             $data[$i]['req_state'] = '取消';
         }
     }
     //echo '<pre>';print_r($data);exit;
     if ($condition['option'] == 'csv') {
         $data_csv = array();
         $title = array('cnt' => '#', 'active' => '启用', 'req_number' => '申请单号', 'req_type' => '类别', 'req_dept' => '申请部门', 'dept' => '需求部门', 'code' => '物料号', 'qty' => '申请数量', 'qty_order' => '下单数量', 'order_info' => '采购订单', 'receive_qty' => '到货数量', 'receive_info' => '到货信息', 'in_stock_qty' => '入库数量', 'in_stock_info' => '入库信息', 'qty_left' => '未下单数量', 'date_req' => '需求日期', 'delivery_date' => '预计交期', 'delivery_date_remark' => '交期备注', 'delivery_reply_log' => '交期回复日志', 'name' => '名称', 'description' => '描述', 'model' => '型号', 'order_req_num' => '订货产品出库申请号', 'customer_address' => '客户收件人地址简码', 'customer_aggrement' => '客户合同号', 'remark' => '备注', 'req_creater' => '制单人', 'req_applier' => '申请人', 'req_reason' => '申请事由', 'project_info' => '项目信息', 'req_remark' => '申请备注', 'req_create_date' => '申请日期', 'req_create_time' => '申请时间', 'req_release_date' => '批准日期', 'req_release_time' => '批准时间');
         array_push($data_csv, $title);
         $i = 0;
         foreach ($data as $d) {
             $i++;
             $info = array('cnt' => $i, 'active' => $d['active'] == 1 ? '是' : '否', 'req_number' => $d['req_number'], 'req_type' => $d['req_type'], 'req_dept' => $d['req_dept'], 'dept' => $d['dept'], 'code' => $d['code'], 'qty' => $d['qty'], 'qty_order' => $d['qty_order'], 'order_info' => $d['order_info'], 'receive_qty' => $d['receive_qty'], 'receive_info' => $d['receive_info'], 'in_stock_qty' => $d['in_stock_qty'], 'in_stock_info' => $d['in_stock_info'], 'qty_left' => $d['qty_left'], 'date_req' => $d['date_req'], 'delivery_date' => $d['delivery_date'], 'delivery_date_remark' => $d['delivery_date_remark'], 'delivery_reply_log' => $d['delivery_reply_log'], 'name' => $d['name'], 'description' => $d['description'], 'model' => $d['model'], 'order_req_num' => isset($d['order_req_num']) ? $d['order_req_num'] : '', 'customer_address' => $d['customer_address'], 'customer_aggrement' => $d['customer_aggrement'], 'remark' => $d['remark'], 'req_creater' => $d['req_creater'], 'req_applier' => $d['req_applier'], 'req_reason' => $d['req_reason'], 'project_info' => $d['project_info'], 'req_remark' => $d['req_remark'], 'req_create_date' => $d['req_create_time'] != '' ? date('Y-m-d', strtotime($d['req_create_time'])) : '', 'req_create_time' => $d['req_create_time'] != '' ? date('H:i:s', strtotime($d['req_create_time'])) : '', 'req_release_date' => $d['req_release_time'] != '' ? date('Y-m-d', strtotime($d['req_release_time'])) : '', 'req_release_time' => $d['req_release_time'] != '' ? date('H:i:s', strtotime($d['req_release_time'])) : '');
             array_push($data_csv, $info);
         }
         return $data_csv;
     }
     return array('total' => $total, 'rows' => $data);
 }
Esempio n. 6
0
 public function getOrderStatistics($condition = array())
 {
     $sql = $this->select()->setIntegrityCheck(false)->from(array('t1' => $this->_name), array('order_price_tax' => 'price_tax', 'order_state' => new Zend_Db_Expr("case when t1.state = 0 then '审核中' when t1.state = 1 then '拒绝' else '批准' end"), 'order_create_time' => 'create_time', 'order_release_time' => 'release_time', 'order_buyer_id' => 'buyer_id', 'order_supplier_id' => 'supplier_id', 'order_date', 'order_number' => 'number', 'order_remark' => 'remark', 'order_currency' => 'currency', 'order_type_id' => 'type_id'))->joinLeft(array('t2' => $this->_dbprefix . 'user'), "t1.create_user = t2.id", array())->joinLeft(array('t3' => $this->_dbprefix . 'employee'), "t2.employee_id = t3.id", array('creater' => 'cname'))->joinLeft(array('t4' => $this->_dbprefix . 'user'), "t1.update_user = t4.id", array())->joinLeft(array('t5' => $this->_dbprefix . 'employee'), "t4.employee_id = t5.id", array('updater' => 'cname'))->joinLeft(array('t7' => $this->_dbprefix . 'erp_pur_type'), "t1.type_id = t7.id", array('order_type_name' => 'name'))->joinLeft(array('t8' => $this->_dbprefix . 'erp_pur_order_items'), "t1.id = t8.order_id", array('delivery_date', 'delivery_date_remark', 'active', 'id', 'order_id', 'request_date', 'code', 'name', 'description', 'remark', 'supplier_code', 'supplier_codename', 'supplier_description', 'warehouse_code', 'price', 'qty', 'unit', 'project_info', 'req_number'))->joinLeft(array('t9' => $this->_dbprefix . 'bpartner'), "t1.supplier_id = t9.id", array('order_supplier_code' => 'code', 'order_supplier_name' => new Zend_Db_Expr("case when t9.cname != '' then t9.cname else t9.ename end")))->joinLeft(array('t10' => $this->_dbprefix . 'bpartner_contact'), "t1.supplier_contact_id = t10.id", array('order_supplier_contact' => new Zend_Db_Expr("concat(t10.name, ' [', t10.tel, ']')")))->joinLeft(array('t11' => $this->_dbprefix . 'erp_pur_order_items_req'), "t11.order_item_id = t8.id", array('req_item_ids' => new Zend_Db_Expr("group_concat(t11.req_item_id)")))->joinLeft(array('t12' => $this->_dbprefix . 'erp_pur_req_items'), "t12.id = t11.req_item_id", array('qty_req' => new Zend_Db_Expr('sum(t12.qty)'), 'order_req_num', 'customer_address', 'customer_aggrement'))->where("t1.active = 1")->group("t8.id")->order(array('t1.number desc', 't1.create_time desc'));
     // 状态
     if ($condition['state'] != null) {
         $sql->where("t1.state = " . $condition['state']);
     }
     // 日前从
     if ($condition['date_from']) {
         $sql->where("t1.create_time >= '" . $condition['date_from'] . " 00:00:00'");
     }
     // 日期至
     if ($condition['date_to']) {
         $sql->where("t1.create_time <= '" . $condition['date_to'] . " 23:59:59'");
     }
     // 采购类别
     if ($condition['type']) {
         $type = json_decode($condition['type']);
         if (count($type)) {
             $type_con = "t1.type_id = " . $type[0];
             for ($i = 1; $i < count($type); $i++) {
                 $type_con .= " or t1.type_id = " . $type[$i];
             }
             $sql->where($type_con);
         }
     }
     // 需求部门
     if ($condition['dept']) {
         $dept = json_decode($condition['dept']);
         if (count($dept)) {
             $dept_con = "t8.dept_id = " . $dept[0];
             for ($i = 1; $i < count($dept); $i++) {
                 $dept_con .= " or t8.dept_id = " . $dept[$i];
             }
             $sql->where($dept_con);
         }
     }
     // 采购员
     if ($condition['buyer']) {
         $buyer = json_decode($condition['buyer']);
         if (count($buyer)) {
             $buyer_con = "t1.buyer_id = " . $buyer[0];
             for ($i = 1; $i < count($buyer); $i++) {
                 $buyer_con .= " or t1.buyer_id = " . $buyer[$i];
             }
             $sql->where($buyer_con);
         }
     }
     if ($condition['key']) {
         $sql->where("t9.code like '%" . $condition['key'] . "%' or t9.cname like '%" . $condition['key'] . "%' or t9.ename like '%" . $condition['key'] . "%' or t3.cname like '%" . $condition['key'] . "%' or t3.ename like '%" . $condition['key'] . "%' or t1.number like '%" . $condition['key'] . "%' or t1.remark like '%" . $condition['key'] . "%' or t3.cname like '%" . $condition['key'] . "%' or t3.ename like '%" . $condition['key'] . "%' or t7.name like '%" . $condition['key'] . "%' or t8.code like '%" . $condition['key'] . "%' or t8.name like '%" . $condition['key'] . "%' or t8.description like '%" . $condition['key'] . "%'");
     }
     $total = $this->fetchAll($sql)->count();
     /* echo $sql;
        exit; */
     if ($condition['option'] != 'csv') {
         $sql->limitPage($condition['page'], $condition['limit']);
     }
     $data = $this->fetchAll($sql)->toArray();
     //echo '<pre>';print_r($data);exit;
     $items_receive = new Erp_Model_Purchse_Receiveitemsorder();
     $items_invoice = new Erp_Model_Purchse_Invoiceitems();
     $buyer = new Erp_Model_Purchse_Buyer();
     $req = new Erp_Model_Purchse_Req();
     $operateModel = new Application_Model_Log_Operate();
     $receiveModel = new Erp_Model_Purchse_Reqitemsreceived();
     for ($i = 0; $i < count($data); $i++) {
         // 入库日志
         $in_stock_info = $receiveModel->getReceivedInfo('order', $data[$i]['id']);
         $data[$i]['in_stock_qty'] = $in_stock_info['qty'];
         $data[$i]['in_stock_info'] = implode(',', $in_stock_info['info']);
         // 交期回复日志
         if ($data[$i]['delivery_date'] != '' || $data[$i]['delivery_date_remark'] != '') {
             $logInfo = array();
             $log = $operateModel->getLogByOperateAndTargetId('采购交期回复', $data[$i]['id']);
             foreach ($log as $l) {
                 $content = Zend_Json::decode($l['content']);
                 $logText = $content['time'] . ' [' . $content['delivery_date'] . '] [' . $content['delivery_date_remark'] . '] ' . $content['user'];
                 array_push($logInfo, $logText);
             }
             $data[$i]['delivery_reply_log'] = implode(',', $logInfo);
         }
         // 获取采购申请数量(合并下单的申请分拆显示)
         $data[$i]['req_info'] = '';
         if ($data[$i]['req_item_ids'] != '') {
             $item_ids = explode(',', $data[$i]['req_item_ids']);
             $req_item_data = $req->getReqQty($item_ids);
             $reqInfoArr = array();
             foreach ($req_item_data as $req_info) {
                 array_push($reqInfoArr, $req_info['number'] . ' [' . $req_info['qty'] . '] [' . $req_info['time'] . ']');
             }
             $data[$i]['req_info'] = implode(',', $reqInfoArr);
         }
         $data[$i]['order_supplier'] = $data[$i]['order_supplier_code'] . $data[$i]['order_supplier_name'];
         $data[$i]['qty_receive'] = 0;
         $data[$i]['receive_info'] = '';
         if ($data[$i]['id']) {
             if ($data[$i]['code'] != '') {
                 // 已收货物料:从采购收货
                 $receiveData = $items_receive->getOrderItemReceivedQty($data[$i]['id']);
                 $receiveInfoArr = array();
                 foreach ($receiveData as $r) {
                     $data[$i]['qty_receive'] += $r['qty'];
                     array_push($receiveInfoArr, $r['number'] . ' [' . $r['qty'] . '] [' . $r['time'] . ']');
                 }
                 $data[$i]['receive_info'] = implode(',', $receiveInfoArr);
             } else {
                 // 已收货非物料:从采购发票
                 $data[$i]['qty_receive'] = $items_invoice->getQty($data[$i]['id'], 1);
             }
         }
         $data[$i]['qty_left'] = $data[$i]['qty'] - $data[$i]['qty_receive'];
         $buyerData = $buyer->getData($data[$i]['order_buyer_id']);
         $data[$i]['order_buyer_name'] = isset($buyerData['cname']) ? $buyerData['cname'] : '';
     }
     if ($condition['option'] == 'csv') {
         $data_csv = array();
         $showPrice = false;
         if (Application_Model_User::checkPermissionByRoleName('系统管理员') || Application_Model_User::checkPermissionByRoleName('采购人员') || Application_Model_User::checkPermissionByRoleName('财务人员')) {
             $showPrice = true;
         }
         if ($showPrice) {
             $title = array('cnt' => '#', 'active' => '启用', 'order_number' => '订单号', 'order_state' => '订单状态', 'order_date' => '订单日期', 'order_buyer_name' => '采购员', 'order_type_name' => '类别', 'order_supplier_code' => '供应商代码', 'order_supplier_name' => '供应商名称', 'code' => '物料号', 'price' => '价格', 'order_price_tax' => '含税', 'qty' => '订单数量', 'qty_req' => '申请数量', 'qty_receive' => '到货数量', 'receive_info' => '到货信息', 'in_stock_qty' => '入库数量', 'in_stock_info' => '入库信息', 'qty_left' => '未到货数量', 'request_date' => '需求交期', 'delivery_date' => '预计交期', 'delivery_date_remark' => '交期备注', 'order_req_num' => '订货产品出库申请号', 'customer_address' => '客户收件人地址简码', 'customer_aggrement' => '客户合同号', 'name' => '名称', 'description' => '描述', 'req_info' => '申购单号', 'remark' => '备注', 'order_create_date' => '下单日期', 'order_create_time' => '下单时间', 'order_release_date' => '批准日期', 'order_release_time' => '批准时间');
         } else {
             $title = array('cnt' => '#', 'active' => '启用', 'order_number' => '订单号', 'order_state' => '订单状态', 'order_date' => '订单日期', 'order_buyer_name' => '采购员', 'order_type_name' => '类别', 'order_supplier_code' => '供应商代码', 'order_supplier_name' => '供应商名称', 'code' => '物料号', 'qty' => '订单数量', 'qty_req' => '申请数量', 'qty_receive' => '到货数量', 'receive_info' => '到货信息', 'in_stock_qty' => '入库数量', 'in_stock_info' => '入库信息', 'qty_left' => '未到货数量', 'request_date' => '需求交期', 'delivery_date' => '预计交期', 'delivery_date_remark' => '交期备注', 'order_req_num' => '订货产品出库申请号', 'customer_address' => '客户收件人地址简码', 'customer_aggrement' => '客户合同号', 'name' => '名称', 'description' => '描述', 'req_info' => '申购单号', 'remark' => '备注', 'order_create_date' => '下单日期', 'order_create_time' => '下单时间', 'order_release_date' => '批准日期', 'order_release_time' => '批准时间');
         }
         array_push($data_csv, $title);
         $i = 0;
         foreach ($data as $d) {
             $i++;
             if ($showPrice) {
                 $info = array('cnt' => $i, 'active' => $d['active'] == 1 ? '是' : '否', 'order_number' => $d['order_number'], 'order_state' => $d['order_state'], 'order_date' => $d['order_date'], 'order_buyer_name' => $d['order_buyer_name'], 'order_type_name' => $d['order_type_name'], 'order_supplier_code' => $d['order_supplier_code'], 'order_supplier_name' => $d['order_supplier_name'], 'code' => $d['code'], 'price' => $d['price'], 'order_price_tax' => $d['order_price_tax'] == 1 ? '是' : '否', 'qty' => $d['qty'], 'qty_req' => $d['qty_req'], 'qty_receive' => $d['qty_receive'], 'receive_info' => $d['receive_info'], 'in_stock_qty' => $d['in_stock_qty'], 'in_stock_info' => $d['in_stock_info'], 'qty_left' => $d['qty_left'], 'request_date' => $d['request_date'], 'delivery_date' => $d['delivery_date'], 'delivery_date_remark' => $d['delivery_date_remark'], 'order_req_num' => $d['order_req_num'], 'customer_address' => $d['customer_address'], 'customer_aggrement' => $d['customer_aggrement'], 'name' => $d['name'], 'description' => $d['description'], 'req_info' => $d['req_info'], 'remark' => $d['remark'], 'order_create_date' => $d['order_create_time'] != '' ? date('Y-m-d', strtotime($d['order_create_time'])) : '', 'order_create_time' => $d['order_create_time'] != '' ? date('H:i:s', strtotime($d['order_create_time'])) : '', 'order_release_date' => $d['order_release_time'] != '' ? date('Y-m-d', strtotime($d['order_release_time'])) : '', 'order_release_time' => $d['order_release_time'] != '' ? date('H:i:s', strtotime($d['order_release_time'])) : '');
             } else {
                 $info = array('cnt' => $i, 'active' => $d['active'] == 1 ? '是' : '否', 'order_number' => $d['order_number'], 'order_state' => $d['order_state'], 'order_date' => $d['order_date'], 'order_buyer_name' => $d['order_buyer_name'], 'order_type_name' => $d['order_type_name'], 'order_supplier_code' => $d['order_supplier_code'], 'order_supplier_name' => $d['order_supplier_name'], 'code' => $d['code'], 'qty' => $d['qty'], 'qty_req' => $d['qty_req'], 'qty_receive' => $d['qty_receive'], 'receive_info' => $d['receive_info'], 'in_stock_qty' => $d['in_stock_qty'], 'in_stock_qty' => $d['in_stock_info'], 'qty_left' => $d['qty_left'], 'request_date' => $d['request_date'], 'delivery_date' => $d['delivery_date'], 'delivery_date_remark' => $d['delivery_date_remark'], 'order_req_num' => $d['order_req_num'], 'customer_address' => $d['customer_address'], 'customer_aggrement' => $d['customer_aggrement'], 'name' => $d['name'], 'description' => $d['description'], 'req_info' => $d['req_info'], 'remark' => $d['remark'], 'order_create_date' => $d['order_create_time'] != '' ? date('Y-m-d', strtotime($d['order_create_time'])) : '', 'order_create_time' => $d['order_create_time'] != '' ? date('H:i:s', strtotime($d['order_create_time'])) : '', 'order_release_date' => $d['order_release_time'] != '' ? date('Y-m-d', strtotime($d['order_release_time'])) : '', 'order_release_time' => $d['order_release_time'] != '' ? date('H:i:s', strtotime($d['order_release_time'])) : '');
             }
             array_push($data_csv, $info);
         }
         return $data_csv;
     }
     return array('total' => $total, 'rows' => $data);
 }
Esempio n. 7
0
 public function getOrderStatistics($condition = array())
 {
     $sql = $this->select()->setIntegrityCheck(false)->from(array('t1' => $this->_name), array('order_state' => new Zend_Db_Expr("case when t1.state = 0 then '审核中' when t1.state = 1 then '拒绝' else '批准' end"), 'order_create_time' => 'create_time', 'order_release_time' => 'release_time', 'order_sales_id' => 'sales_id', 'order_customer_id' => 'customer_id', 'order_date', 'order_status', 'order_id' => 'id', 'order_number' => 'number', 'order_remark' => 'remark', 'order_currency' => 'currency', 'order_type_id' => 'type_id'))->joinLeft(array('t2' => $this->_dbprefix . 'user'), "t1.create_user = t2.id", array())->joinLeft(array('t3' => $this->_dbprefix . 'employee'), "t2.employee_id = t3.id", array('creater' => 'cname'))->joinLeft(array('t4' => $this->_dbprefix . 'user'), "t1.update_user = t4.id", array())->joinLeft(array('t5' => $this->_dbprefix . 'employee'), "t4.employee_id = t5.id", array('updater' => 'cname'))->joinLeft(array('t7' => $this->_dbprefix . 'erp_sale_type'), "t1.type_id = t7.id", array('order_type_name' => 'name'))->joinLeft(array('t8' => $this->_dbprefix . 'erp_sale_order_items'), "t1.id = t8.order_id", array('delivery_date', 'delivery_date_remark', 'active', 'id', 'type', 'order_id', 'request_date', 'code', 'code_internal', 'name', 'description', 'customer_code', 'customer_description', 'product_type', 'product_series', 'remark', 'price', 'total', 'total', 'price_tax', 'qty', 'product_type', 'product_series', 'sales_remark', 'unit'))->joinLeft(array('t9' => $this->_dbprefix . 'bpartner'), "t1.customer_id = t9.id", array('order_customer_code' => 'code', 'order_customer_name' => new Zend_Db_Expr("case when t9.cname != '' then t9.cname else t9.ename end")))->joinLeft(array('t10' => $this->_dbprefix . 'bpartner_contact'), "t1.customer_address_code = t10.area_code", array('order_customer_contact' => new Zend_Db_Expr("concat(t10.area_code, ' [', t10.name, ']')")))->where("t1.active = 1")->group("t8.id")->order(array('t1.number desc', 't1.create_time desc'));
     // 状态
     if ($condition['state'] != null) {
         $sql->where("t1.state = " . $condition['state']);
     }
     // 日前从
     if ($condition['date_from']) {
         $sql->where("t1.create_time >= '" . $condition['date_from'] . " 00:00:00'");
     }
     // 日期至
     if ($condition['date_to']) {
         $sql->where("t1.create_time <= '" . $condition['date_to'] . " 23:59:59'");
     }
     // 采购类别
     if ($condition['type']) {
         $type = json_decode($condition['type']);
         if (count($type)) {
             $type_con = "t1.type_id = " . $type[0];
             for ($i = 1; $i < count($type); $i++) {
                 $type_con .= " or t1.type_id = " . $type[$i];
             }
             $sql->where($type_con);
         }
     }
     if ($condition['sales']) {
         $sales = json_decode($condition['sales']);
         if (count($sales)) {
             $sales_con = "t1.sales_id = " . $sales[0];
             for ($i = 1; $i < count($sales); $i++) {
                 $sales_con .= " or t1.sales_id = " . $sales[$i];
             }
             $sql->where($sales_con);
         }
     }
     if ($condition['key']) {
         $sql->where("t9.code like '%" . $condition['key'] . "%' \n                    or t9.cname like '%" . $condition['key'] . "%' \n                    or t9.ename like '%" . $condition['key'] . "%' \n                    or t3.cname like '%" . $condition['key'] . "%' \n                    or t3.ename like '%" . $condition['key'] . "%' \n                    or t1.number like '%" . $condition['key'] . "%' \n                    or t1.remark like '%" . $condition['key'] . "%' \n                    or t3.cname like '%" . $condition['key'] . "%' \n                    or t3.ename like '%" . $condition['key'] . "%' \n                    or t7.name like '%" . $condition['key'] . "%' \n                    or t8.code like '%" . $condition['key'] . "%' \n                    or t8.name like '%" . $condition['key'] . "%' \n                    or t8.description like '%" . $condition['key'] . "%'");
     }
     $total = $this->fetchAll($sql)->count();
     /* echo $sql;
        exit; */
     if ($condition['option'] != 'csv') {
         $sql->limitPage($condition['page'], $condition['limit']);
     }
     $data = $this->fetchAll($sql)->toArray();
     //echo '<pre>';print_r($data);exit;
     $item = new Erp_Model_Sale_Receiveitemsordersale();
     // 交货
     $items_invoice = new Erp_Model_Sale_Invoiceitems();
     $sales = new Erp_Model_Sale_Sales();
     $operateModel = new Application_Model_Log_Operate();
     for ($i = 0; $i < count($data); $i++) {
         $data[$i]['delivery_date_first'] = '';
         // 交期回复日志
         if ($data[$i]['delivery_date'] != '' || $data[$i]['delivery_date_remark'] != '') {
             $logInfo = array();
             $log = $operateModel->getLogByOperateAndTargetId('销售交期回复', $data[$i]['id']);
             $j = 0;
             foreach ($log as $l) {
                 $content = Zend_Json::decode($l['content']);
                 $logText = $content['time'] . ' [' . $content['delivery_date'] . '] [' . $content['delivery_date_remark'] . '] ' . $content['user'];
                 array_push($logInfo, $logText);
                 if ($j == count($log) - 1) {
                     $data[$i]['delivery_date_first'] = $content['delivery_date'];
                 }
                 $j++;
             }
             $data[$i]['delivery_reply_log'] = implode(',', $logInfo);
         }
         $data[$i]['order_customer'] = $data[$i]['order_customer_code'] . $data[$i]['order_customer_name'];
         $data[$i]['qty_send'] = 0;
         $data[$i]['send_info'] = '';
         if ($data[$i]['id']) {
             if ($data[$i]['code'] != '') {
                 // 已交货:从销售交货
                 $receiveData = $item->getOrderItemSendQty($data[$i]['id']);
                 $sendInfoArr = array();
                 foreach ($receiveData as $r) {
                     $data[$i]['qty_send'] += $r['qty'];
                     // 交货(负数)
                     array_push($sendInfoArr, $r['number'] . ' [' . $r['qty'] . '] [' . $r['time'] . ']');
                 }
                 $data[$i]['send_info'] = implode(',', $sendInfoArr);
             } else {
                 // 已交货非物料:从销售发票
                 $data[$i]['qty_send'] = $items_invoice->getQty($data[$i]['id'], 1);
             }
         }
         $data[$i]['qty_left'] = $data[$i]['qty'] - $data[$i]['qty_send'];
         $salesData = $sales->getData($data[$i]['order_sales_id']);
         $data[$i]['order_sales_name'] = isset($salesData['cname']) ? $salesData['cname'] : '';
     }
     //echo '<pre>';print_r($data);exit;
     if ($condition['option'] == 'csv') {
         $data_csv = array();
         $showPrice = false;
         if (Application_Model_User::checkPermissionByRoleName('系统管理员') || Application_Model_User::checkPermissionByRoleName('销售人员') || Application_Model_User::checkPermissionByRoleName('财务人员')) {
             $showPrice = true;
         }
         if ($showPrice) {
             $title = array('cnt' => '#', 'active' => '启用', 'order_number' => '订单号', 'order_state' => '审核状态', 'order_status' => '订单状态', 'price' => '价格', 'total' => '金额', 'type' => '类别', 'code' => '产品型号', 'code_internal' => '内部型号', 'order_sales_name' => '销售员', 'order_type_name' => '订单类别', 'order_customer_code' => '客户代码', 'order_customer_name' => '客户名称', 'name' => '名称', 'description' => '描述', 'customer_code' => '客户产品型号', 'customer_description' => '客户产品描述', 'product_type' => '产品类别', 'product_series' => '产品系列', 'qty' => '订单数量', 'qty_send' => '交货数量', 'send_info' => '交货信息', 'qty_left' => '未交货数量', 'request_date' => '需求交期', 'delivery_date_first' => '预计交期(首次)', 'delivery_date' => '预计交期(最终)', 'delivery_date_remark' => '交期备注', 'order_customer_contact' => '客户收件人地址简码', 'remark' => '备注', 'order_create_date' => '下单日期', 'order_create_time' => '下单时间', 'order_release_date' => '批准日期', 'order_release_time' => '批准时间');
         } else {
             $title = array('cnt' => '#', 'active' => '启用', 'order_number' => '订单号', 'order_state' => '审核状态', 'order_status' => '订单状态', 'type' => '类别', 'code' => '产品型号', 'code_internal' => '内部型号', 'order_sales_name' => '销售员', 'order_type_name' => '订单类别', 'order_customer_code' => '客户代码', 'order_customer_name' => '客户名称', 'name' => '名称', 'description' => '描述', 'customer_code' => '客户产品型号', 'customer_description' => '客户产品描述', 'product_type' => '产品类别', 'product_series' => '产品系列', 'qty' => '订单数量', 'qty_send' => '交货数量', 'send_info' => '交货信息', 'qty_left' => '未交货数量', 'request_date' => '需求交期', 'delivery_date_first' => '预计交期(首次)', 'delivery_date' => '预计交期(最终)', 'delivery_date_remark' => '交期备注', 'order_customer_contact' => '客户收件人地址简码', 'remark' => '备注', 'order_create_date' => '下单日期', 'order_create_time' => '下单时间', 'order_release_date' => '批准日期', 'order_release_time' => '批准时间');
         }
         array_push($data_csv, $title);
         $i = 0;
         foreach ($data as $d) {
             $i++;
             if ($showPrice) {
                 $info = array('cnt' => $i, 'active' => $d['active'] == 1 ? '是' : '否', 'order_number' => $d['order_number'], 'order_state' => $d['order_state'], 'order_status' => $d['order_status'], 'price' => $d['price'], 'total' => $d['total'], 'type' => $d['type'] == 'catalog' ? '产品' : '物料', 'code' => $d['code'], 'code_internal' => $d['code_internal'], 'order_sales_name' => $d['order_sales_name'], 'order_type_name' => $d['order_type_name'], 'order_customer_code' => $d['order_customer_code'], 'order_customer_name' => $d['order_customer_name'], 'name' => $d['name'], 'description' => $d['description'], 'customer_code' => $d['customer_code'], 'customer_description' => $d['customer_description'], 'product_type' => $d['product_type'], 'product_series' => $d['product_series'], 'qty' => $d['qty'], 'qty_send' => $d['qty_send'], 'send_info' => $d['send_info'], 'qty_left' => $d['qty_left'], 'request_date' => $d['request_date'], 'delivery_date_first' => $d['delivery_date_first'], 'delivery_date' => $d['delivery_date'], 'delivery_date_remark' => $d['delivery_date_remark'], 'order_customer_contact' => $d['order_customer_contact'], 'remark' => $d['remark'], 'order_create_date' => $d['order_create_time'] != '' ? date('Y-m-d', strtotime($d['order_create_time'])) : '', 'order_create_time' => $d['order_create_time'] != '' ? date('H:i:s', strtotime($d['order_create_time'])) : '', 'order_release_date' => $d['order_release_time'] != '' ? date('Y-m-d', strtotime($d['order_release_time'])) : '', 'order_release_time' => $d['order_release_time'] != '' ? date('H:i:s', strtotime($d['order_release_time'])) : '');
             } else {
                 $info = array('cnt' => $i, 'active' => $d['active'] == 1 ? '是' : '否', 'order_number' => $d['order_number'], 'order_state' => $d['order_state'], 'order_status' => $d['order_status'], 'type' => $d['type'] == 'catalog' ? '产品' : '物料', 'code' => $d['code'], 'code_internal' => $d['code_internal'], 'order_sales_name' => $d['order_sales_name'], 'order_type_name' => $d['order_type_name'], 'order_customer_code' => $d['order_customer_code'], 'order_customer_name' => $d['order_customer_name'], 'name' => $d['name'], 'description' => $d['description'], 'customer_code' => $d['customer_code'], 'customer_description' => $d['customer_description'], 'product_type' => $d['product_type'], 'product_series' => $d['product_series'], 'qty' => $d['qty'], 'qty_send' => $d['qty_send'], 'send_info' => $d['send_info'], 'qty_left' => $d['qty_left'], 'request_date' => $d['request_date'], 'delivery_date_first' => $d['delivery_date_first'], 'delivery_date' => $d['delivery_date'], 'delivery_date_remark' => $d['delivery_date_remark'], 'order_customer_contact' => $d['order_customer_contact'], 'remark' => $d['remark'], 'order_create_date' => $d['order_create_time'] != '' ? date('Y-m-d', strtotime($d['order_create_time'])) : '', 'order_create_time' => $d['order_create_time'] != '' ? date('H:i:s', strtotime($d['order_create_time'])) : '', 'order_release_date' => $d['order_release_time'] != '' ? date('Y-m-d', strtotime($d['order_release_time'])) : '', 'order_release_time' => $d['order_release_time'] != '' ? date('H:i:s', strtotime($d['order_release_time'])) : '');
             }
             array_push($data_csv, $info);
         }
         return $data_csv;
     }
     return array('total' => $total, 'rows' => $data);
 }
Esempio n. 8
0
 public function sendmsgAction()
 {
     // 返回值数组
     $result = array('success' => true, 'info' => '发送成功');
     $request = $this->getRequest()->getParams();
     // 标题
     $title = isset($request['msg_title']) ? $request['msg_title'] : null;
     // 优先级
     $priority = isset($request['msg_priority']) ? $request['msg_priority'] : null;
     // 是否发送邮件
     $sendmail = isset($request['msg_sendmail']) ? $request['msg_sendmail'] : null;
     // 内容
     $content = isset($request['msg_content']) ? $request['msg_content'] : null;
     // 备注
     $remark = isset($request['msg_remark']) ? $request['msg_remark'] : null;
     // 接收人用户ID
     $receivers_ids = isset($request['msg_receivers_ids']) ? $request['msg_receivers_ids'] : null;
     // 接收人邮箱
     $receivers_email = isset($request['msg_receivers_email']) ? $request['msg_receivers_email'] : null;
     // 接收人
     $receivers = isset($request['msg_receivers']) ? $request['msg_receivers'] : null;
     if ($title && $priority && $content && $receivers_ids) {
         $receiverIdArr = explode(',', $receivers_ids);
         $receiverEmailArr = explode(',', $receivers_email);
         $receiverArr = explode(',', $receivers);
         $now = date('Y-m-d H:i:s');
         $user_session = new Zend_Session_Namespace('user');
         $user_id = $user_session->user_info['user_id'];
         $user_name = $user_session->user_info['user_name'];
         // 记录消息内容
         $msg = new Application_Model_Log_Msg();
         $email = $sendmail == 'on' ? 1 : 0;
         $data = array('title' => $title, 'priority' => $priority, 'content' => $content, 'remark' => $remark, 'email' => $email, 'receivers' => $receivers, 'create_time' => $now, 'create_user' => $user_id, 'update_time' => $now, 'update_user' => $user_id);
         $msg_id = null;
         try {
             $msg_id = $msg->insert($data);
         } catch (Exception $e) {
             $result['success'] = false;
             $result['info'] = $e->getMessage();
             echo Zend_Json::encode($result);
             exit;
         }
         // 记录接收人信息
         $msgsend = new Application_Model_Log_Msgsend();
         foreach ($receiverIdArr as $r) {
             $data = array('msg_id' => $msg_id, 'user_id' => $r, 'email' => $email);
             try {
                 $msgsend->insert($data);
             } catch (Exception $e) {
                 $result['success'] = false;
                 $result['info'] = $e->getMessage();
                 echo Zend_Json::encode($result);
                 exit;
             }
         }
         // 当选择同时发送邮件时,向接收人发送邮件消息
         if ($sendmail == 'on') {
             $mail = new Application_Model_Log_Mail();
             $mailContent = '<div>你有一条新消息:</div>
                         <div><b>发送人:</b>' . $user_name . '</div>
                         <div><b>发送时间:</b>' . $now . '</div>
                         <div><b>优先级:</b>' . $priority . '</div>
                         <div><b>内容:</b><br>' . $content . '<br></div>
                         <div><b>备注:</b>' . $remark . '</div>';
             for ($i = 0; $i < count($receiverEmailArr); $i++) {
                 $data = array('type' => '消息', 'subject' => $title, 'to' => $receiverEmailArr[$i], 'user_id' => $receiverArr[$i], 'content' => $mailContent, 'add_date' => $now);
                 try {
                     // 记录邮件日志并发送邮件
                     $mail->send($mail->insert($data));
                 } catch (Exception $e) {
                     $result['success'] = false;
                     $result['info'] = $e->getMessage();
                     echo Zend_Json::encode($result);
                     exit;
                 }
             }
         }
         // 记录日志
         $operate = new Application_Model_Log_Operate();
         $computer_name = gethostbyaddr(getenv("REMOTE_ADDR"));
         // 计算机名
         $data = array('operate' => '发送消息', 'user_id' => $user_id, 'target' => 'Contact', 'computer_name' => $computer_name, 'ip' => $_SERVER['REMOTE_ADDR'], 'remark' => $receivers, 'time' => $now);
         try {
             $operate->insert($data);
         } catch (Exception $e) {
             $result['success'] = false;
             $result['info'] = $e->getMessage();
             echo Zend_Json::encode($result);
             exit;
         }
     } else {
         $result['result'] = false;
         $result['info'] = '发送失败:信息不完整!';
     }
     echo Zend_Json::encode($result);
     exit;
 }
Esempio n. 9
0
 public function getpasswordAction()
 {
     // 返回值数组
     $result = array('success' => true, 'info' => '密码找回邮件已发往你的邮箱,请通过邮件中的链接地址重设密码。');
     // 请求参数
     $request = $this->getRequest()->getParams();
     if (isset($request['email'])) {
         $email = $request['email'];
         $user = new Application_Model_User();
         $checkEmail = $user->checkEmail($email);
         if ($checkEmail['success']) {
             $mail = new Application_Model_Log_Mail();
             $now = date('Y-m-d H:i:s');
             $key = time() . rand(1, 100);
             $link = HOME_PATH . '/public/login/resetpassword/user_id/' . $checkEmail['user_id'] . '/key/' . $key;
             $data = array('type' => '找回密码', 'subject' => '找回密码', 'to' => $email, 'key' => $key, 'user_id' => $checkEmail['user_id'], 'content' => '请通过以下链接重设密码:<br><a href="' . $link . '">' . $link . '</a>', 'add_date' => $now);
             try {
                 // 记录邮件日志
                 $mailId = $mail->insert($data);
                 // 发送邮件
                 $mail->send($mailId);
                 // 记录日志
                 $computer_name = gethostbyaddr(getenv("REMOTE_ADDR"));
                 // 计算机名
                 $data = array('operate' => '找回密码', 'target' => 'Login', 'computer_name' => $computer_name, 'ip' => $_SERVER['REMOTE_ADDR'], 'remark' => $email, 'time' => $now);
                 $operate = new Application_Model_Log_Operate();
                 try {
                     $operate->insert($data);
                 } catch (Exception $e) {
                     $result['success'] = false;
                     $result['info'] = $e->getMessage();
                     echo Zend_Json::encode($result);
                     exit;
                 }
             } catch (Exception $e) {
                 $result['success'] = false;
                 $result['info'] = $e->getMessage();
                 echo Zend_Json::encode($result);
                 exit;
             }
         } else {
             $result = $checkEmail;
         }
     } else {
         $result = array('success' => false, 'info' => '邮箱地址错误');
     }
     echo Zend_Json::encode($result);
     exit;
 }