enterpriseId = $enterpriseId; $this->userCenterId = $userCenterId; $this->objDCustomerDemand = new DCustomerDemand('default'); $this->objDCustomer = new DCustomer(); $this->objDCustomer->setTable('qianniao_customer_'.$enterpriseId); } /** * 添加客户需求 * @param $params * @return ResultWrapper * @throws Exception */ public function addCustomerdemand($demandData) { $demandData = $this->objDCustomerDemand->insert($demandData); if($demandData === false){ return ResultWrapper::fail($this->objDCustomerDemand->error(), ErrorCode::$dberror); } return ResultWrapper::success($demandData); } /** * 获取所有的客户需求提报 */ public function getAllCustomerdemand($selectParams) { $limit = $selectParams['limit']; unset($selectParams['limit']); $offset = $selectParams['offset']; unset($selectParams['offset']); $selectParams['deleteStatus'] = StatusCode::$standard; $returnData = [ 'data' => [], 'total' => 0, ]; $whereSql = ''; if (isset($selectParams['beginTime']) && !empty($selectParams['beginTime'])) { $where = empty($whereSql) ? '' : ' AND '; $whereSql .= $where . ' createTime >=' . $selectParams['beginTime']; } if (isset($selectParams['endTime']) && !empty($selectParams['endTime'])) { $where = empty($whereSql) ? '' : ' AND '; $whereSql .= $where . ' createTime <= '. $selectParams['endTime']; } $where = empty($whereSql) ? '' : ' AND '; $whereSql .= $where . 'deleteStatus = ' . StatusCode::$standard.' AND enterpriseId ='.$this->enterpriseId; $dbResult = $this->objDCustomerDemand->select($whereSql,'*','createTime desc',$limit,$offset); if ($dbResult === false) { return ResultWrapper::fail($this->objDCustomerDemand->error(), ErrorCode::$dberror); } if(empty($dbResult)){ return ResultWrapper::success($returnData); } $dbTotalResult = $this->objDCustomerDemand->count($whereSql); if ($dbTotalResult === false) { return ResultWrapper::fail($this->objDCustomerDemand->error(), ErrorCode::$dberror); } $return = [ 'data' => $this->format($dbResult), 'total' => $dbTotalResult ]; return ResultWrapper::success($return); } /** * 格式化 * @return array */ public function format($data) { // 映射客户id对应的名字 $customerIdBindName = []; $customerIds = array_column($data, 'customerId'); $customerData = $this->objDCustomer->select($customerIds, 'id,name'); if( !empty($customerData) ){ foreach ($customerData as $key => $value){ $customerIdBindName[$value['id']] = $value['name']; } } foreach ($data as $key => $value){ $data[$key]['name'] = ''; if( isset($customerIdBindName[$value['customerId']]) ){ $data[$key]['name'] = $customerIdBindName[$value['customerId']]; } } return $data; } /** * 获取指定的客户需求提报 */ public function getCustomerdemandInfo($receiptRequisitionId) { $dbResult = $this->objDCustomerDemand->select($receiptRequisitionId); if($dbResult === false){ return ResultWrapper::fail($this->objDCustomerDemand->error(), ErrorCode::$dberror); } if( empty($dbResult) ){ return ResultWrapper::success([]); } $returnData = self::format($dbResult); return ResultWrapper::success( array_pop($returnData) ); } }