Commit f2df1629 by felix

每日一更

parent 102311c9
......@@ -39,34 +39,8 @@ class House extends Tospur_House{
);
$wpdb->query("START TRANSACTION");
if(isset($_POST['houseId'])){
//首先判断是经理修改还是职业顾问做不同的操作,接着判断置业顾问是否修改了状态
if($_POST["userType"] == 0){
//经理
//通过
if($_POST["status"] != -2){
$insert_tospur_house_array["status"] =$_POST["status"];
$insert_tospur_house_array["approval"] = -2;
}else{
//退回
$insert_tospur_house_array["approval"] = $_POST["status"];
}
}else{
//置业顾问
$currentStatus = SearchDao::getDetailInfo($_POST["userType"]);
//修改了状态
if($currentStatus["result"]->status != $_POST["status"]){
$insert_tospur_house_array["approval"] = $_POST["status"];
}else {
//没有修改状态
//没有申请审批
if($currentStatus["result"]->approval == -2){
$insert_tospur_house_array["approval"] = $currentStatus["result"]->status;
}else{
//申请了审批,没有修改状态,approval保持原来的
$insert_tospur_house_array["approval"] = $currentStatus["result"]->approval;
}
}
}
//修改list中当前状态的方法
$insert_tospur_house_array = House::list_status_upate($_POST["userType"],$_POST["status"],$insert_tospur_house_array);
$result = House::data_update($_POST['houseId'],$insert_tospur_house_array);
if(!is_numeric($result)){
$wpdb->query("ROLLBACK");
......@@ -177,23 +151,29 @@ class House extends Tospur_House{
if (!$res) {
$houseId = InsertDao::insert_tospur_house($params);
if(is_numeric($houseId)){
$mainImageRes = InsertDao::addMainImage($houseId,$data);
if(!is_numeric($mainImageRes)){
return $mainImageRes;
}
$recommendRes = InsertDao::addRecommend($houseId,$data);
if(!is_numeric($recommendRes)){
return $recommendRes;
}
$recConsultantRes = InsertDao::addRecConsultant($houseId, $data['recConsultant']);
if(!is_numeric($recConsultantRes)){
return $recConsultantRes;
}
InsertDao::addHouseTag($houseId, $data['houseTag']);
$tagRes = InsertDao::addHouseTag($houseId, $data['houseTag']);
if(!is_numeric($tagRes)){
return $tagRes;
}
$customerTrackRes = CustomerTrackingDao::insert($houseId, $_REQUEST);
if(!is_numeric($mainImageRes)){
return $mainImageRes;
}else if(!is_numeric($recommendRes)){
return $recommendRes;
}else if(!is_numeric($recConsultantRes)){
return $recConsultantRes;
}else if(is_numeric($customerTrackRes)){
if(!is_numeric($customerTrackRes)){
return $customerTrackRes;
}
}
......
......@@ -12,4 +12,36 @@ class Tospur_House{
$roles = $current_user->roles;
return $roles[0];
}
public static function list_status_upate($userType,$postStatus,$arrayParams){
//首先判断是经理修改还是职业顾问做不同的操作,接着判断置业顾问是否修改了状态
if($userType == 0){
//经理
//通过
if($postStatus != -2){
$arrayParams["status"] =$postStatus;
$arrayParams["approval"] = -2;
}else{
//退回
$arrayParams["approval"] = $postStatus;
}
}else{
//置业顾问
//修改了状态
$currentStatus = SearchDao::getDetailInfo($_POST["userType"]);
if($currentStatus["result"]->status != $postStatus){
$arrayParams["approval"] = $postStatus;
}else {
//没有修改状态
//没有申请审批
if($currentStatus["result"]->approval == -2){
$arrayParams["approval"] = $currentStatus["result"]->status;
}else{
//申请了审批,没有修改状态,approval保持原来的
$arrayParams["approval"] = $currentStatus["result"]->approval;
}
}
}
return $arrayParams;
}
}
\ No newline at end of file
......@@ -132,9 +132,9 @@ class consultantScoreList extends WP_List_Table
//$data = $this->example_data;
$sql = "SELECT s.id,c.display_name as consultant,u.user_login as user,s.score,s.valid FROM tospur_consultant_score s " .
"left join wp_users u on s.user_id = u.ID " .
"left join wp_users c on s.consultant_id = c.ID";
$sql = "SELECT s.id,c.name as consultant,u.user_login as user,s.score,s.valid FROM tospur_consultant_score s" .
" left join wp_users u on s.user_id = u.ID" .
" left join tospur_consultant c on s.consultant_id = c.id";
$result = $wpdb->get_results($sql);
$data = array();
foreach ($result as $key => $value) {
......
<?php
$house_id = $_GET['id'];
$house_sql = 'SELECT v.id, h.name, u.user_login as phone, v.date, v.time, v.consultant_id as consultant_id, v.handle, v.handle_date FROM tospur_view_house v '
global $wpdb;
$id = $_GET['id'];
$role_flag = current_user_can('zygw');
if (isset($_POST['submit']) && !$role_flag) {
$consultant_id = $_POST['data']['recConsultant'][0];
if (isset($consultant_id) && $consultant_id != null && isset($id)) {
$result = TospurDao::update_view_house_consultant($id, $consultant_id);
} else {
echo '<script>alert("请选择置业顾问")</script>';
}
} else if (isset($_POST['handle']) && $role_flag) {
$wpdb->update('tospur_view_house',
array(
'handle' => 1,
'handle_date' => current_time('Y-m-d H:i:s'),
),
array('id' => $id)
);
}
$house_sql = 'SELECT v.id,h.name,h.city_id as cityId,u.user_login as phone,v.date,v.time,v.consultant_id as consultant_id,v.handle,v.handle_date,c.imageUrl,c.name as consultant_name FROM tospur_view_house v '
. 'left join tospur_house h on v.house_id = h.id '
. 'left join wp_users u on v.user_id = u.id '
. 'where v.id = ' . $house_id;
$consultant_sql = 'SELECT u.id,u.display_name FROM wp_users u '
. 'left join wp_usermeta m on u.id=m.user_id where meta_key="wp_user_level" and meta_value=7;';
global $wpdb;
. 'left join tospur_consultant c on v.consultant_id = c.id '
. 'where v.id = ' . $id;
$context['house_result'] = $wpdb->get_row($house_sql);
$context['consultant_result'] = $wpdb->get_results($consultant_sql);
$context['role_flag'] = $role_flag;
$context['city'] = SearchDao::searchCity();
$result = $wpdb->get_row($house_sql);
$context['url'] = home_url();
$context['id'] = $house_id;
if ($result->consultant_id && !$role_flag) {
$context['consultant'][0] = array(
'id' => $result->consultant_id,
'imageUrl' => $result->imageUrl,
'name' => $result->consultant_name
);
}
$context['cityId'] = $result->cityId;
$context['page'] = 'view';
$context['house_result'] = $result;
Timber::render('handle.html', $context);
......
......@@ -8,37 +8,40 @@ if (!class_exists('WP_List_Table')) {
class newHouseList extends WP_List_Table
{
function get_views(){
function get_views()
{
global $wpdb;
$current_url = set_url_scheme( 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'] );
$current_url = remove_query_arg( array( 'paged','type'), $current_url );
$current_url = set_url_scheme('http://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']);
$current_url = remove_query_arg(array('paged', 'type'), $current_url);
$sql = "select COUNT(*) as allNum,
COUNT(NULLIF(approval != -2, false)) as needCheckNum,
COUNT(NULLIF(approval = 0, false)) as unCheckNum,
COUNT(NULLIF(approval = 1, false)) as checkNum,
COUNT(NULLIF(approval = -1, false)) as onSaleNum,
COUNT(NULLIF(approval = 2, false)) as notSaleNum
from ".Config::TOSPUR_HOUSE_TABLE." where house_type = 0";
from " . Config::TOSPUR_HOUSE_TABLE . " where house_type = 0";
$result = $wpdb->get_results($sql);
foreach($result as $value){
foreach ($result as $value) {
$approvalParam = array(
"allNum" =>$value->allNum,
"allNum" => $value->allNum,
"needCheckNum" => $value->needCheckNum,
"unCheckNum" => $value->unCheckNum,
"checkNum" => $value->checkNum,
"checkNum" => $value->checkNum,
"onSaleNum" => $value->onSaleNum,
"notSaleNum" => $value->notSaleNum
);
}
return array(
"allNum" => '<a href="'.$current_url.'&approval=" class="current">全部<span class="count">('.$approvalParam["allNum"].')</span></a>',
"needCheckNum" => '<a href="'.$current_url.'&approval=-2" class="current">需审批<span class="count">('.$approvalParam["needCheckNum"].')</span></a>',
"unCheckNum" => '<a href="'.$current_url.'&approval=0">未审核<span class="count">('.$approvalParam["unCheckNum"].')</span></a>',
"checkNum" => '<a href="'.$current_url.'&approval=1">审核<span class="count">('.$approvalParam["checkNum"].')</span></a>',
"onSaleNum" => '<a href="'.$current_url.'&approval=-1">交易中<span class="count">('.$approvalParam["onSaleNum"].')</span></a>',
"notSaleNum" => '<a href="'.$current_url.'&approval=-1">下架<span class="count">('.$approvalParam["notSaleNum"].')</span></a>'
"allNum" => '<a href="' . $current_url . '&approval=" class="current">全部<span class="count">(' . $approvalParam["allNum"] . ')</span></a>',
"needCheckNum" => '<a href="' . $current_url . '&approval=-2" class="current">需审批<span class="count">(' . $approvalParam["needCheckNum"] . ')</span></a>',
"unCheckNum" => '<a href="' . $current_url . '&approval=0">未审核<span class="count">(' . $approvalParam["unCheckNum"] . ')</span></a>',
"checkNum" => '<a href="' . $current_url . '&approval=1">审核<span class="count">(' . $approvalParam["checkNum"] . ')</span></a>',
"onSaleNum" => '<a href="' . $current_url . '&approval=-1">交易中<span class="count">(' . $approvalParam["onSaleNum"] . ')</span></a>',
"notSaleNum" => '<a href="' . $current_url . '&approval=-1">下架<span class="count">(' . $approvalParam["notSaleNum"] . ')</span></a>'
);
} function __construct()
}
function __construct()
{
global $status, $page;
//Set parent defaults
......@@ -77,11 +80,9 @@ class newHouseList extends WP_List_Table
function column_cb($item)
{
return sprintf(
'<input type="checkbox" name="%1$s[]" value="%2$s" />',
/*$1%s*/
$this->_args['singular'], //Let's simply repurpose the table's singular label ("score")
/*$2%s*/
$item['id'] //The value of the checkbox should be the record's id
'<input type="checkbox" name="%1$s[]" value="%2$s"/>',
$this->_args['singular'],
$item['id']
);
}
......@@ -90,23 +91,23 @@ class newHouseList extends WP_List_Table
$columns = array(
'cb' => '<input type="checkbox" />'
);
$columns['id']= 'ID';
$columns['name']= '楼盘名';
$columns['address']= '地址';
$columns['average_price']= '单价';
$columns['developer']= '开发商';
$columns['check_in_time']= '入住时间';
$columns['room_id']= '建筑类型';
$columns['property_age']= '产权年限';
$columns['decoration']= '装修状况';
$columns['covered_area']= '建筑面积';
$columns['volume_rate']= '容积率';
$columns['greening_rate']= '绿化率';
$columns['households']= '规划户数';
$columns['parking_spaces']= '车位数';
$columns['property_management']= '物业公司';
$columns['property_money']= '物业费';
$columns['status']= '状态';
$columns['id'] = 'ID';
$columns['name'] = '楼盘名';
$columns['address'] = '地址';
$columns['average_price'] = '单价';
$columns['developer'] = '开发商';
$columns['check_in_time'] = '入住时间';
$columns['room_id'] = '建筑类型';
$columns['property_age'] = '产权年限';
$columns['decoration'] = '装修状况';
$columns['covered_area'] = '建筑面积';
$columns['volume_rate'] = '容积率';
$columns['greening_rate'] = '绿化率';
$columns['households'] = '规划户数';
$columns['parking_spaces'] = '车位数';
$columns['property_management'] = '物业公司';
$columns['property_money'] = '物业费';
$columns['status'] = '状态';
return $columns;
}
......@@ -125,7 +126,7 @@ class newHouseList extends WP_List_Table
'covered_area' => array('covered_area', false),
'status' => array('status', false),
'volume_rate' => array('valvolume_rateid', false),
'greening_rate' => array('greening_rate', false),
'greening_rate' => array('greening_rate', false),
'households' => array('households', false),
'parking_spaces' => array('parking_spaces', false),
'property_management' => array('property_management', false),
......@@ -136,77 +137,74 @@ class newHouseList extends WP_List_Table
function get_bulk_actions()
{
if( current_user_can('houseApproval') ) {
if (current_user_can('houseApproval')) {
$actions = array(
"agree" =>"通过",
"goBack" =>"退回"
"agree" => "通过",
"goBack" => "退回"
);
}else{
} else {
$actions = array(
'unCheck'=>'未审核',
'check' =>'审核',
'onSale'=>'交易中',
'notSale' =>'下架'
'unCheck' => '未审核',
'check' => '审核',
'onSale' => '交易中',
'notSale' => '下架'
);
}
return $actions;
}
function manage_bulk_action(){
function manage_bulk_action()
{
global $wpdb;
$flag = 0;
$action = $this->current_action();
if($action){
$id = $_POST['sechandhouselist'];
if ($action && $id) {
$string = null;
$approval = null;
switch ($action) {
case"agree":
$id = $_REQUEST['newhouselist'];
if ($id) {
$string = '(' . implode(',', array_map('intval', $id)) . ')';
$approvalRes = $wpdb ->get_results('select approval from tospur_house where id in '.$string);
foreach($approvalRes as $value){
if($value->approval == -2){
print_r("您审批的房源中含有未申请审批的房源,请重新选择");
exit;
}
$string = '(' . implode(',', array_map('intval', $id)) . ')';
$approvalRes = $wpdb->get_results('select approval from tospur_house where id in ' . $string);
foreach ($approvalRes as $value) {
if ($value->approval == -2) {
print_r("您审批的房源中含有未申请审批的房源,请重新选择");
exit;
}
$result = $wpdb->query('update tospur_house th SET th.status= th.approval where id in ' . $string);
$flag = 1;
}
$result = $wpdb->query('update tospur_house th SET th.status= th.approval where id in ' . $string);
$flag = 1;
break;
case"goBack":
$id = $_REQUEST['newhouselist'];
if ($id) {
$string = '(' . implode(',', array_map('intval', $id)) . ')';
$flag = 1;
}
$string = '(' . implode(',', array_map('intval', $id)) . ')';
$flag = 1;
break;
}
if($flag == 1){
if ($flag == 1) {
$wpdb->query('update tospur_house th SET th.approval= -2 where id in ' . $string);
}
}
}
function getCurrentStatus($houseId,$changeStatus = null){
function getCurrentStatus($houseId, $changeStatus = null)
{
global $wpdb;
$sql = "select status from tospur_house where id in".$houseId;
$sql = "select status from tospur_house where id in" . $houseId;
$res = $wpdb->get_results($sql);
if($changeStatus != null|| $changeStatus == 0 ){
foreach($res as $value){
if($value->status == $changeStatus){
if ($changeStatus != null || $changeStatus == 0) {
foreach ($res as $value) {
if ($value->status == $changeStatus) {
print_r("您申请的状态含有与原状态相同的房源,请重新选择");
return false;
}
else{
} else {
return $changeStatus;
}
}
}
return $res;
} function process_bulk_action()
}
function process_bulk_action()
{
$action = $this->current_action();
if ($action) {
......@@ -217,8 +215,8 @@ class newHouseList extends WP_List_Table
case 'unCheck':
if ($id) {
$string = '(' . implode(',', array_map('intval', $id)) . ')';
$res = $this->getCurrentStatus($string,0);
if($res === false){
$res = $this->getCurrentStatus($string, 0);
if ($res === false) {
exit;
}
$status = $res;
......@@ -227,8 +225,8 @@ class newHouseList extends WP_List_Table
case 'check':
if ($id) {
$string = '(' . implode(',', array_map('intval', $id)) . ')';
$res = $this->getCurrentStatus($string,1);
if(!$res){
$res = $this->getCurrentStatus($string, 1);
if (!$res) {
exit;
}
$status = $res;
......@@ -237,8 +235,8 @@ class newHouseList extends WP_List_Table
case 'onSale':
if ($id) {
$string = '(' . implode(',', array_map('intval', $id)) . ')';
$res = $this->getCurrentStatus($string,-1);
if(!$res){
$res = $this->getCurrentStatus($string, -1);
if (!$res) {
exit;
}
$status = $res;
......@@ -247,8 +245,8 @@ class newHouseList extends WP_List_Table
case 'notSale':
if ($id) {
$string = '(' . implode(',', array_map('intval', $id)) . ')';
$res = $this->getCurrentStatus($string,2);
if(!$res){
$res = $this->getCurrentStatus($string, 2);
if (!$res) {
exit;
}
$status = $res;
......@@ -256,13 +254,12 @@ class newHouseList extends WP_List_Table
break;
}
global $wpdb;
$result = $wpdb->query($wpdb->prepare('update tospur_house SET approval=%d where id in ' . $string,$status));
$result = $wpdb->query($wpdb->prepare('update tospur_house SET approval=%d where id in ' . $string, $status));
}
}
function prepare_items()
function prepare_items()
{
global $wpdb;
$params = array();
......@@ -273,15 +270,15 @@ class newHouseList extends WP_List_Table
$this->_column_headers = array($columns, $hidden, $sortable);
if( current_user_can('houseApproval') ) {
if (current_user_can('houseApproval')) {
$this->manage_bulk_action();
}else{
} else {
$this->process_bulk_action();
}
//$data = $this->example_data;
$sql = "select * from tospur_house th
$sql = "select * from tospur_house th
left join (select buildproperty_id,house_area,image_id,house_id as bph_id from a_district_area) ada on th.id = ada.bph_id
left join (select value as did,literal as room_type from dic_room) dr on dr.did = th.room_id
left join(select user_id as aus_id,house_id,user_type from a_house_user) ahu on th.id = ahu.house_id and ahu.user_type=1
......@@ -290,80 +287,78 @@ class newHouseList extends WP_List_Table
left join(select status_name as approvalName,status_type,status_id from tospur_status)tss on th.approval = tss.status_id and tss.status_type=1
where 1=1 and house_type=0 ";
if( isset( $_REQUEST["listCity"]) && $_REQUEST["listCity"] != -1 ){
if (isset($_REQUEST["listCity"]) && $_REQUEST["listCity"] != -1) {
$params[] = $_REQUEST["listCity"];
$sql = $sql." and city_id=%d";
$sql = $sql . " and city_id=%d";
}
if( isset( $_REQUEST["listDistrict"]) && $_REQUEST["listDistrict"] != -1 ){
if (isset($_REQUEST["listDistrict"]) && $_REQUEST["listDistrict"] != -1) {
$params[] = $_REQUEST["listDistrict"];
$sql = $sql." and district_id=%d";
$sql = $sql . " and district_id=%d";
}
if( isset( $_REQUEST["listPlate"]) && $_REQUEST["listPlate"] != -1){
if (isset($_REQUEST["listPlate"]) && $_REQUEST["listPlate"] != -1) {
$params[] = $_REQUEST["listPlate"];
$sql = $sql." and plate_id=%d";
$sql = $sql . " and plate_id=%d";
}
if( isset( $_REQUEST["buildProperty"]) && $_REQUEST["buildProperty"]!=-1){
if (isset($_REQUEST["buildProperty"]) && $_REQUEST["buildProperty"] != -1) {
$params[] = $_REQUEST["buildProperty"];
$sql = $sql." and buildproperty_id=%d";
$sql = $sql . " and buildproperty_id=%d";
}
if( isset( $_REQUEST["room"]) && $_REQUEST["room"]!= -1){
if (isset($_REQUEST["room"]) && $_REQUEST["room"] != -1) {
$params[] = $_REQUEST["room"];
$sql = $sql." and room_id=%d";
$sql = $sql . " and room_id=%d";
}
if(isset($_REQUEST["status"]) && $_REQUEST["status"]!=-1){
if (isset($_REQUEST["status"]) && $_REQUEST["status"] != -1) {
$params[] = $_REQUEST["status"];
$sql = $sql." and status=%d";
$sql = $sql . " and status=%d";
}
if( isset( $_REQUEST["organization"]) && $_REQUEST["organization"] != -1 ){
$params[] = $_REQUEST["organization"];
$sql = $sql." and subsidiaryId=%d ";
}
if($_REQUEST["totalPrice"]!=NULL){
if ($_REQUEST["totalPrice"] != NULL) {
$priceArray = explode("-", $_REQUEST['totalPrice']);
$params[] = $priceArray[0];
$params[] = $priceArray[1];
$sql = $sql . " and average_price between %d and %d";
}
if($_REQUEST["acreage"]!= NULL){
if ($_REQUEST["acreage"] != NULL) {
$areaArray = explode("-", $_REQUEST['acreage']);
$params[] = $areaArray[0];
$params[] = $areaArray[1];
$sql = $sql . " and covered_area between %d and %d";
}
if($_REQUEST["searchText"]!=NULL){
$params[] = '%'.$_REQUEST['searchText'].'%';
$sql = $sql . " and name like %s";
}
if(isset($_REQUEST["approval"]) && $_REQUEST["approval"]!=""){
if($_REQUEST["approval"] == -2){
if (isset($_REQUEST["approval"]) && $_REQUEST["approval"] != "") {
if ($_REQUEST["approval"] == -2) {
$params[] = $_REQUEST["approval"];
$sql = $sql . " and approval != %d";
}else{
} else {
$params[] = $_REQUEST["approval"];
$sql = $sql . " and approval = %d";
}
}
if($_REQUEST["beginDate"]!=NULL && $_REQUEST["endDate"]!= NULL){
$time = array($_REQUEST["beginDate"],$_REQUEST["endDate"]);
if ($_REQUEST["beginDate"] != NULL && $_REQUEST["endDate"] != NULL) {
$time = array($_REQUEST["beginDate"], $_REQUEST["endDate"]);
$params[] = $time[0];
$params[] = $time[1];
$sql = $sql." and creattime between %s and %s";
$sql = $sql . " and creattime between %s and %s";
}
if($_REQUEST["stuff"]!= NULL){
$params[] = '%'.$_REQUEST['stuff'].'%';
if (isset($_REQUEST["organization"]) && $_REQUEST["organization"] != -1) {
$params[] = $_REQUEST["organization"];
$sql = $sql . " and subsidiaryId=%d ";
} else if ($_REQUEST["searchText"] != NULL) {
$params[] = '%' . $_REQUEST['searchText'] . '%';
$sql = $sql . " and name like %s";
} else if ($_REQUEST["stuff"] != NULL) {
$params[] = '%' . $_REQUEST['stuff'] . '%';
$sql = $sql . " and consul_name like %s";
}
$sql = $sql . " group by id";
if(isset($_REQUEST["orderby"])){
if (isset($_REQUEST["orderby"])) {
$orderby = $_REQUEST["orderby"];
$order = $_REQUEST["order"];
$sql = $sql ." order by ".$orderby." ".$order;
$sql = $sql . " order by " . $orderby . " " . $order;
}
$result = $wpdb->get_results($wpdb->prepare($sql, $params));
......@@ -371,26 +366,26 @@ class newHouseList extends WP_List_Table
foreach ($result as $key => $value) {
$data[$key] = array(
'id' => $value->id,
'name' => $value->name,
'address' => $value->address,
'average_price' => $value->average_price,
'developer' => $value->developer,
'name' => $value->name,
'address' => $value->address,
'average_price' => $value->average_price,
'developer' => $value->developer,
'check_in_time' => $value->check_in_time,
'room_id' => $value->room_type,
'property_age' => $value->property_age,
'decoration' => $value->decoration,
'room_id' => $value->room_type,
'property_age' => $value->property_age,
'decoration' => $value->decoration,
'covered_area' => $value->covered_area,
'volume_rate' => $value->volume_rate,
'greening_rate' => $value->greening_rate,
'households' => $value->households,
'volume_rate' => $value->volume_rate,
'greening_rate' => $value->greening_rate,
'households' => $value->households,
'parking_spaces' => $value->parking_spaces,
'property_management' => $value->property_management,
'property_money' => $value->property_money
'property_management' => $value->property_management,
'property_money' => $value->property_money
);
if($value->approval == -2){
$data[$key]['status'] = $value->status_name;
}else{
$data[$key]['status'] = $value->status_name."(".$value->approvalName.")";
if ($value->approval == -2) {
$data[$key]['status'] = $value->status_name;
} else {
$data[$key]['status'] = $value->status_name . "(" . $value->approvalName . ")";
}
}
......@@ -409,10 +404,11 @@ class newHouseList extends WP_List_Table
));
}
}
add_action( 'wp_ajax_updateList', 'newHouseList::prepare_items');
add_action( 'wp_ajax_nopriv_updateList', 'newHouseList::prepare_items');
add_action( 'wp_ajax_searchListCity', 'SearchDao::ajax_searchListCity');
add_action( 'wp_ajax_nopriv_searchListCity', 'SearchDao::ajax_searchListCity');
add_action('wp_ajax_updateList', 'newHouseList::prepare_items');
add_action('wp_ajax_nopriv_updateList', 'newHouseList::prepare_items');
add_action('wp_ajax_searchListCity', 'SearchDao::ajax_searchListCity');
add_action('wp_ajax_nopriv_searchListCity', 'SearchDao::ajax_searchListCity');
function function_newHouseList()
{
......@@ -422,29 +418,32 @@ function function_newHouseList()
$contest['status'] = SearchDao::searchStatusType(1);
$contest['buildProperty'] = SearchDao::searchBuildProperty();
$contest['room'] = searchDao::searchRoom();
if(isset($_REQUEST['hasSearch'])){
if (isset($_REQUEST['hasSearch'])) {
$contest['district'] = SearchDao::searchCity($_REQUEST['listCity']);
$contest['plate'] = SearchDao::searchCity($_REQUEST['listCity'],$_REQUEST['listDistrict']);
$contest['plate'] = SearchDao::searchCity($_REQUEST['listCity'], $_REQUEST['listDistrict']);
$contest['dicTotalPrice'] = searchDao::searchTotalPrice($_REQUEST['listCity']);
$contest['dicArea'] = searchDao::searchArea($_REQUEST['listCity']);
$contest['cityId'] = $_REQUEST['listCity'];
$contest['districtId'] = $_REQUEST['listDistrict'];
$contest['plateId' ]= $_REQUEST['listPlate'];
$contest['roomId']= $_REQUEST['room'];
$contest['buildPropertyId']= $_REQUEST['buildProperty'];
$contest['plateId'] = $_REQUEST['listPlate'];
$contest['roomId'] = $_REQUEST['room'];
$contest['buildPropertyId'] = $_REQUEST['buildProperty'];
$contest['averagePrice'] = $_REQUEST['averagePrice'];
$contest['acreage'] = $_REQUEST['acreage'];
$contest['statusId'] = $_REQUEST['status'];
$contest['statusId'] = $_REQUEST['status'];
$contest['req']['organization'] = $_REQUEST['organization'];
$contest['req'] = $_REQUEST;
}
$contest["house_type"] = 0;
Timber::render("houseList.html",$contest);
Timber::render("houseList.html", $contest);
}
function addNewHouseTable(){
function addNewHouseTable()
{
$newHouseList = new newHouseList();
$newHouseList->prepare_items();
$newHouseList->views(); $newHouseList->display();
$newHouseList->views();
$newHouseList->display();
}
?>
......@@ -56,34 +56,7 @@ class RentHouse extends Tospur_House{
if($type==3){
$wpdb->query("START TRANSACTION");
if(isset($_POST['houseId'])){
//首先判断是经理修改还是职业顾问做不同的操作,接着判断置业顾问是否修改了状态
if($_POST["userType"] == 0){
//经理
//通过
if($_POST["status"] != -2){
$insert_tospur_house_array["status"] =$_POST["status"];
$insert_tospur_house_array["approval"] = -2;
}else{
//退回
$insert_tospur_house_array["approval"] = $_POST["status"];
}
}else{
//置业顾问
$currentStatus = SearchDao::getDetailInfo($_POST["userType"]);
//修改了状态
if($currentStatus["result"]->status != $_POST["status"]){
$insert_tospur_house_array["approval"] = $_POST["status"];
}else {
//没有修改状态
//没有申请审批
if($currentStatus["result"]->approval == -2){
$insert_tospur_house_array["approval"] = $currentStatus["result"]->status;
}else{
//申请了审批,没有修改状态,approval保持原来的
$insert_tospur_house_array["approval"] = $currentStatus["result"]->approval;
}
}
}
$insert_tospur_house_array = House::list_status_upate($_POST["userType"],$_POST["status"],$insert_tospur_house_array);
$result = RentHouse::data_update($_POST['houseId'],$insert_tospur_house_array);
if(!is_numeric($result)){
$wpdb->query("ROLLBACK");
......@@ -140,27 +113,33 @@ class RentHouse extends Tospur_House{
$houseId = InsertDao::insert_tospur_house($params);
if(is_numeric($houseId)){
$mainImageRes = InsertDao::addMainImage($houseId,$data);
if(!is_numeric($mainImageRes)){
return $mainImageRes;
}
$recommendRes = InsertDao::addRecommend($houseId,$data);
if(!is_numeric($recommendRes)){
return $recommendRes;
}
$recConsultantRes = InsertDao::addRecConsultant($houseId, $data['recConsultant']);
if(!is_numeric($recConsultantRes)){
return $recConsultantRes;
}
InsertDao::addHouseTag($houseId, $data['houseTag']);
$tagRes = InsertDao::addHouseTag($houseId, $data['houseTag']);
if(!is_numeric($tagRes)){
return $tagRes;
}
$houseFeatureRes = InsertDao::addHouseFeature($houseId, $data['houseFeature']);
if(!is_numeric($houseFeatureRes)){
return $houseFeatureRes;
}
$customerTrackRes = CustomerTrackingDao::insert($houseId, $_REQUEST);
if(!is_numeric($mainImageRes)){
return $mainImageRes;
}else if(!is_numeric($recommendRes)){
return $recommendRes;
}else if(!is_numeric($recConsultantRes)){
return $recConsultantRes;
}else if(is_numeric($customerTrackRes)){
if(!is_numeric($customerTrackRes)){
return $customerTrackRes;
}else if(is_numeric($houseFeatureRes)){
return $houseFeatureRes;
}
}
return $houseId;
......
......@@ -6,10 +6,11 @@ if (!class_exists('WP_List_Table')) {
class rentHouseList extends WP_List_Table
{
function get_views(){
function get_views()
{
global $wpdb;
$current_url = set_url_scheme( 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'] );
$current_url = remove_query_arg( array( 'paged','type'), $current_url );
$current_url = set_url_scheme('http://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']);
$current_url = remove_query_arg(array('paged', 'type'), $current_url);
$sql = "select COUNT(*) as allNum,
COUNT(NULLIF(approval != -2, false)) as needCheckNum,
COUNT(NULLIF(approval = 0, false)) as unCheckNum,
......@@ -19,33 +20,34 @@ class rentHouseList extends WP_List_Table
COUNT(NULLIF(approval = 3, false)) as otherSaleNum,
COUNT(NULLIF(approval = 4, false)) as invalidNum,
COUNT(NULLIF(approval = 5, false)) as reactivationNum
from ".Config::TOSPUR_HOUSE_TABLE." where house_type = 2";
from " . Config::TOSPUR_HOUSE_TABLE . " where house_type = 2";
$result = $wpdb->get_results($sql);
foreach($result as $value){
foreach ($result as $value) {
$approvalParam = array(
"allNum" =>$value->allNum,
"allNum" => $value->allNum,
"needCheckNum" => $value->needCheckNum,
"unCheckNum" => $value->unCheckNum,
"checkNum" => $value->checkNum,
"checkNum" => $value->checkNum,
"onSaleNum" => $value->onSaleNum,
"selfSaleNum"=>$value->selfSaleNum,
"otherSaleNum"=>$value->otherSaleNum,
"invalidNum"=>$value->invalidNum,
"reactivationNum"=>$value->reactivationNum
"selfSaleNum" => $value->selfSaleNum,
"otherSaleNum" => $value->otherSaleNum,
"invalidNum" => $value->invalidNum,
"reactivationNum" => $value->reactivationNum
);
}
return array(
"allNum" => '<a href="'.$current_url.'&approval" class="current">全部<span class="count">('.$approvalParam["allNum"].')</span></a>',
"needCheckNum" => '<a href="'.$current_url.'&approval=-2" class="current">需审批<span class="count">('.$approvalParam["needCheckNum"].')</span></a>',
"unCheckNum" => '<a href="'.$current_url.'&approval=0">未审核<span class="count">('.$approvalParam["unCheckNum"].')</span></a>',
"checkNum" => '<a href="'.$current_url.'&approval=1">审核<span class="count">('.$approvalParam["checkNum"].')</span></a>',
"onSaleNum" => '<a href="'.$current_url.'&approval=-1">交易中<span class="count">('.$approvalParam["onSaleNum"].')</span></a>',
"selfSaleNum" => '<a href="'.$current_url.'&approval=2">自售<span class="count">('.$approvalParam["selfSaleNum"].')</span></a>',
"otherSaleNum" => '<a href="'.$current_url.'&approval=3">他售<span class="count">('.$approvalParam["otherSaleNum"].')</span></a>',
"invalidNum" => '<a href="'.$current_url.'&approval=4">无效<span class="count">('.$approvalParam["invalidNum"].')</span></a>',
"reactivationNum" => '<a href="'.$current_url.'&approval=5">重激活<span class="count">('.$approvalParam["reactivationNum"].')</span></a>',
"allNum" => '<a href="' . $current_url . '&approval" class="current">全部<span class="count">(' . $approvalParam["allNum"] . ')</span></a>',
"needCheckNum" => '<a href="' . $current_url . '&approval=-2" class="current">需审批<span class="count">(' . $approvalParam["needCheckNum"] . ')</span></a>',
"unCheckNum" => '<a href="' . $current_url . '&approval=0">未审核<span class="count">(' . $approvalParam["unCheckNum"] . ')</span></a>',
"checkNum" => '<a href="' . $current_url . '&approval=1">审核<span class="count">(' . $approvalParam["checkNum"] . ')</span></a>',
"onSaleNum" => '<a href="' . $current_url . '&approval=-1">交易中<span class="count">(' . $approvalParam["onSaleNum"] . ')</span></a>',
"selfSaleNum" => '<a href="' . $current_url . '&approval=2">自售<span class="count">(' . $approvalParam["selfSaleNum"] . ')</span></a>',
"otherSaleNum" => '<a href="' . $current_url . '&approval=3">他售<span class="count">(' . $approvalParam["otherSaleNum"] . ')</span></a>',
"invalidNum" => '<a href="' . $current_url . '&approval=4">无效<span class="count">(' . $approvalParam["invalidNum"] . ')</span></a>',
"reactivationNum" => '<a href="' . $current_url . '&approval=5">重激活<span class="count">(' . $approvalParam["reactivationNum"] . ')</span></a>',
);
}
function __construct()
{
global $status, $page;
......@@ -81,11 +83,10 @@ class rentHouseList extends WP_List_Table
function column_cb($item)
{
return sprintf(
'<input type="checkbox" name="%1$s[]" value="%2$s" />',
/*$1%s*/
$this->_args['singular'], //Let's simply repurpose the table's singular label ("score")
/*$2%s*/
$item['id'] //The value of the checkbox should be the record's id
'<input type="checkbox" name="%1$s[]" value="%2$s" data-consultant="%3$s"/>',
$this->_args['singular'],
$item['id'],
$item['consultant_id']
);
}
......@@ -94,19 +95,19 @@ class rentHouseList extends WP_List_Table
$columns = array(
'cb' => '<input type="checkbox" />'
);
$columns['id']= 'ID';
$columns['name']= '租房标题';
$columns['community_name']= '小区名称';
$columns['rent']= '元/月';
$columns['buildproperty_id']= '户型';
$columns['covered_area']= '面积';
$columns['floor']= '楼层';
$columns['faceto']= '朝向';
$columns['decoration']= '装修状况';
$columns['age']= '年代';
$columns['matching_facilities']= '配套设施';
$columns['user_id']= '置业顾问';
$columns['status']= '状态';
$columns['id'] = 'ID';
$columns['name'] = '租房标题';
$columns['community_name'] = '小区名称';
$columns['rent'] = '元/月';
$columns['buildproperty_id'] = '户型';
$columns['covered_area'] = '面积';
$columns['floor'] = '楼层';
$columns['faceto'] = '朝向';
$columns['decoration'] = '装修状况';
$columns['age'] = '年代';
$columns['matching_facilities'] = '配套设施';
$columns['user_id'] = '置业顾问';
$columns['status'] = '状态';
return $columns;
}
......@@ -132,174 +133,167 @@ class rentHouseList extends WP_List_Table
function get_bulk_actions()
{
if( current_user_can('houseApproval') ) {
if (current_user_can('houseApproval')) {
$actions = array(
"agree" =>"通过",
"goBack" =>"退回"
"agree" => "通过",
"goBack" => "退回",
'allot' => '分配置业顾问'
);
}else{
} else {
$actions = array(
'unCheck'=>'未审核',
'check' =>'审核',
'onSale'=>'交易中',
'selfSale'=>'自售',
'otherSale'=>'他售',
'invalid'=>'无效',
'reactivation'=>'重激活'
'unCheck' => '未审核',
'check' => '审核',
'onSale' => '交易中',
'selfSale' => '自售',
'otherSale' => '他售',
'invalid' => '无效',
'reactivation' => '重激活'
);
}
return $actions;
}
function manage_bulk_action(){
function manage_bulk_action()
{
global $wpdb;
$flag = 0;
$action = $this->current_action();
if($action){
$id = $_REQUEST['renthouselist'];
if ($action && $id) {
$string = null;
$approval = null;
switch ($action) {
case"agree":
$id = $_REQUEST['renthouselist'];
if ($id) {
$string = '(' . implode(',', array_map('intval', $id)) . ')';
$approvalRes = $wpdb ->get_results('select approval from tospur_house where id in '.$string);
foreach($approvalRes as $value){
if($value->approval == -2){
print_r("您审批的房源中含有未申请审批的房源,请重新选择");
exit;
}
$string = '(' . implode(',', array_map('intval', $id)) . ')';
$approvalRes = $wpdb->get_results('select approval from tospur_house where id in ' . $string);
foreach ($approvalRes as $value) {
if ($value->approval == -2) {
print_r("您审批的房源中含有未申请审批的房源,请重新选择");
exit;
}
$result = $wpdb->query('update tospur_house th SET th.status= th.approval where id in ' . $string);
$flag = 1;
}
$result = $wpdb->query('update tospur_house th SET th.status= th.approval where id in ' . $string);
$flag = 1;
break;
case"goBack":
$id = $_REQUEST['renthouselist'];
if ($id) {
$string = '(' . implode(',', array_map('intval', $id)) . ')';
$flag = 1;
}
$string = '(' . implode(',', array_map('intval', $id)) . ')';
$flag = 1;
break;
case "allot":
HouseDao::houseAllotConsultant($_POST['allot_consultant_id'], $id);
break;
}
if($flag == 1){
if ($flag == 1) {
$wpdb->query('update tospur_house th SET th.approval= -2 where id in ' . $string);
}
}
}
function getCurrentStatus($houseId,$changeStatus = null){
function getCurrentStatus($houseId, $changeStatus)
{
global $wpdb;
$sql = "select status from tospur_house where id in".$houseId;
$sql = "select status from tospur_house where id in" . $houseId;
$res = $wpdb->get_results($sql);
if($changeStatus != null|| $changeStatus == 0 ){
foreach($res as $value){
if($value->status == $changeStatus){
print_r("您申请的状态含有与原状态相同的房源,请重新选择");
return false;
}
else{
return $changeStatus;
}
foreach ($res as $value) {
if ($value->status == $changeStatus) {
print_r("您申请的状态含有与原状态相同的房源,请重新选择");
return false;
}
if ($value->status == 2 || $value->status == 3) {
print_r("自售与他售房源不能修改状态,请重新选择");
return false;
}
if ($value->status == 4 && $changeStatus != 5) {
print_r("无效房源必须先重激活才能继续修改,请重新选择");
return false;
}
if ($changeStatus == 5 && $value->status != 4) {
print_r("只有无效房源才可以重激活,请重新选择");
return false;
}
}
return $res;
return $changeStatus;
}
function process_bulk_action()
{
$action = $this->current_action();
global $wpdb;
global $wpdb;
$id = $_REQUEST['renthouselist'];
if ($action) {
if ($action && $id) {
$string = null;
$status = null;
if($action == 'allot'){
HouseDao::houseAllotConsultant($_POST['allot_consultant_id'], $_POST['sechandhouselist']);
}else{
switch ($action) {
switch ($action) {
case 'unCheck':
if ($id) {
$string = '(' . implode(',', array_map('intval', $id)) . ')';
$res = $this->getCurrentStatus($string,0);
if($res === false){
exit;
}
$status = $res;
$string = '(' . implode(',', array_map('intval', $id)) . ')';
$res = $this->getCurrentStatus($string, 0);
if ($res === false) {
exit;
}
$status = $res;
break;
case 'check':
if ($id) {
$string = '(' . implode(',', array_map('intval', $id)) . ')';
$res = $this->getCurrentStatus($string,1);
if(!$res){
exit;
}
$status = $res;
$string = '(' . implode(',', array_map('intval', $id)) . ')';
$res = $this->getCurrentStatus($string, 1);
if (!$res) {
exit;
}
$status = $res;
break;
case 'selfSale':
if ($id) {
$string = '(' . implode(',', array_map('intval', $id)) . ')';
$res = $this->getCurrentStatus($string,2);
if(!$res){
exit;
}
$status = 2;
$string = '(' . implode(',', array_map('intval', $id)) . ')';
$res = $this->getCurrentStatus($string, 2);
if (!$res) {
exit;
}
$status = 2;
break;
case 'otherSale':
if ($id) {
$string = '(' . implode(',', array_map('intval', $id)) . ')';
$res = $this->getCurrentStatus($string,3);
if(!$res){
exit;
}
$status = $res;
$string = '(' . implode(',', array_map('intval', $id)) . ')';
$res = $this->getCurrentStatus($string, 3);
if (!$res) {
exit;
}
$status = $res;
break;
case 'invalid':
if ($id) {
$string = '(' . implode(',', array_map('intval', $id)) . ')';
$res = $this->getCurrentStatus($string,4);
if(!$res){
exit;
}
$status = $res;
$string = '(' . implode(',', array_map('intval', $id)) . ')';
$res = $this->getCurrentStatus($string, 4);
if (!$res) {
exit;
}
$status = $res;
break;
case 'reactivation':
if ($id) {
$string = '(' . implode(',', array_map('intval', $id)) . ')';
$res = $this->getCurrentStatus($string);
foreach($res as $value){
if($value->status == 4){
$status = 5;
}else{
print_r("只有无效房源可重激活,请重新选择");
exit;
}
$string = '(' . implode(',', array_map('intval', $id)) . ')';
$res = $this->getCurrentStatus($string);
foreach ($res as $value) {
if ($value->status == 4) {
$status = 5;
} else {
print_r("只有无效房源可重激活,请重新选择");
exit;
}
}
break;
case 'onSale':
if ($id) {
$string = '(' . implode(',', array_map('intval', $id)) . ')';
$res = $this->getCurrentStatus($string,-1);
if(!$res){
exit;
}
$status = $res;
$string = '(' . implode(',', array_map('intval', $id)) . ')';
$res = $this->getCurrentStatus($string, -1);
if (!$res) {
exit;
}
$status = $res;
break;
}
$result = $wpdb->query($wpdb->prepare('update tospur_house SET approval=%d where id in ' . $string,$status));
}
$result = $wpdb->query($wpdb->prepare('update tospur_house SET approval=%d where id in ' . $string, $status));
}
}
function prepare_items()
{
global $wpdb;
......@@ -311,9 +305,9 @@ class rentHouseList extends WP_List_Table
$this->_column_headers = array($columns, $hidden, $sortable);
if( current_user_can('houseApproval') ) {
if (current_user_can('houseApproval')) {
$this->manage_bulk_action();
}else{
} else {
$this->process_bulk_action();
}
......@@ -326,101 +320,97 @@ class rentHouseList extends WP_List_Table
left join(select status_name,status_type,status_id from tospur_status)ts on th.status = ts.status_id and ts.status_type=2
left join(select status_name as approvalName,status_type,status_id from tospur_status)tss on th.approval = tss.status_id and tss.status_type=2
where 1=1 and house_type=2 ";
if( isset( $_REQUEST["listCity"]) && $_REQUEST["listCity"] != -1 ){
if (isset($_REQUEST["listCity"]) && $_REQUEST["listCity"] != -1) {
$params[] = $_REQUEST["listCity"];
$sql = $sql." and city_id=%d";
$sql = $sql . " and city_id=%d";
}
if( isset( $_REQUEST["listDistrict"]) && $_REQUEST["listDistrict"] != -1 ){
if (isset($_REQUEST["listDistrict"]) && $_REQUEST["listDistrict"] != -1) {
$params[] = $_REQUEST["listDistrict"];
$sql = $sql." and district_id=%d";
$sql = $sql . " and district_id=%d";
}
if( isset( $_REQUEST["listPlate"]) && $_REQUEST["listPlate"] != -1){
if (isset($_REQUEST["listPlate"]) && $_REQUEST["listPlate"] != -1) {
$params[] = $_REQUEST["listPlate"];
$sql = $sql." and plate_id=%d";
$sql = $sql . " and plate_id=%d";
}
if( isset( $_REQUEST["buildProperty"]) && $_REQUEST["buildProperty"]!=-1){
if (isset($_REQUEST["buildProperty"]) && $_REQUEST["buildProperty"] != -1) {
$params[] = $_REQUEST["buildProperty"];
$sql = $sql." and buildproperty_id=%d";
$sql = $sql . " and buildproperty_id=%d";
}
if( isset( $_REQUEST["room"]) && $_REQUEST["room"]!= -1){
if (isset($_REQUEST["room"]) && $_REQUEST["room"] != -1) {
$params[] = $_REQUEST["room"];
$sql = $sql." and room_id=%d";
$sql = $sql . " and room_id=%d";
}
if(isset($_REQUEST["status"]) && $_REQUEST["status"]!=-1){
if (isset($_REQUEST["status"]) && $_REQUEST["status"] != -1) {
$params[] = $_REQUEST["status"];
$sql = $sql." and status=%d";
$sql = $sql . " and status=%d";
}
if( isset( $_REQUEST["organization"]) && $_REQUEST["organization"] != -1 ){
$params[] = $_REQUEST["organization"];
$sql = $sql." and subsidiaryId=%d ";
}
if($_REQUEST["rentalPrice"]!=NULL){
if ($_REQUEST["rentalPrice"] != NULL) {
$priceArray = explode("-", $_REQUEST['rentalPrice']);
$params[] = $priceArray[0];
$params[] = $priceArray[1];
$sql = $sql . " and rent between %d and %d";
}
if($_REQUEST["acreage"]!= NULL){
if ($_REQUEST["acreage"] != NULL) {
$areaArray = explode("-", $_REQUEST['acreage']);
$params[] = $areaArray[0];
$params[] = $areaArray[1];
$sql = $sql . " and covered_area between %d and %d";
}
if($_REQUEST["searchText"]!=NULL){
$params[] = '%'.$_REQUEST['searchText'].'%';
$sql = $sql . " and name like %s";
}
if(isset($_REQUEST["approval"]) && $_REQUEST["approval"]!=""){
if($_REQUEST["approval"] == -2){
if (isset($_REQUEST["approval"]) && $_REQUEST["approval"] != "") {
if ($_REQUEST["approval"] == -2) {
$params[] = $_REQUEST["approval"];
$sql = $sql . " and approval != %d";
}else{
} else {
$params[] = $_REQUEST["approval"];
$sql = $sql . " and approval = %d";
}
}
if($_REQUEST["beginDate"]!=NULL && $_REQUEST["endDate"]!= NULL){
$time = array($_REQUEST["beginDate"],$_REQUEST["endDate"]);
if ($_REQUEST["beginDate"] != NULL && $_REQUEST["endDate"] != NULL) {
$time = array($_REQUEST["beginDate"], $_REQUEST["endDate"]);
$params[] = $time[0];
$params[] = $time[1];
$sql = $sql." and creattime between %s and %s";
$sql = $sql . " and creattime between %s and %s";
}
if($_REQUEST["stuff"]!= NULL){
$params[] = '%'.$_REQUEST['stuff'].'%';
if (isset($_REQUEST["organization"]) && $_REQUEST["organization"] != -1) {
$params[] = $_REQUEST["organization"];
$sql = $sql . " and subsidiaryId=%d ";
} else if ($_REQUEST["searchText"] != NULL) {
$params[] = '%' . $_REQUEST['searchText'] . '%';
$sql = $sql . " and name like %s";
} else if ($_REQUEST["stuff"] != NULL) {
$params[] = '%' . $_REQUEST['stuff'] . '%';
$sql = $sql . " and consul_name like %s";
}
if(isset($_GET["orderby"])){
if (isset($_GET["orderby"])) {
$orderby = $_GET["orderby"];
$order = $_GET["order"];
$sql = $sql ." order by ".$orderby." ".$order;
$sql = $sql . " order by " . $orderby . " " . $order;
}
$result = $wpdb->get_results($wpdb->prepare($sql, $params));
$data = array();
foreach ($result as $key => $value) {
$data[$key] = array(
'id' => $value->id,
'name' => $value->name,
'community_name' => $value->community_name,
'rent' => $value->rent,
'buildproperty_id' => $value->literal,
'name' => $value->name,
'community_name' => $value->community_name,
'rent' => $value->rent,
'buildproperty_id' => $value->literal,
'covered_area' => $value->covered_area,
'floor' => $value->floor,
'faceto' => $value->faceto,
'decoration' => $value->decoration,
'floor' => $value->floor,
'faceto' => $value->faceto,
'decoration' => $value->decoration,
'age' => $value->age,
'matching_facilities'=> $value->matching_facilities,
'user_id' => $value->consul_name,
'matching_facilities' => $value->matching_facilities,
'user_id' => $value->consul_name,
);
if($value->approval == -2){
$data[$key]['status'] = $value->status_name;
}else{
$data[$key]['status'] = $value->status_name."(".$value->approvalName.")";
if ($value->approval == -2) {
$data[$key]['status'] = $value->status_name;
} else {
$data[$key]['status'] = $value->status_name . "(" . $value->approvalName . ")";
}
}
......@@ -440,10 +430,11 @@ class rentHouseList extends WP_List_Table
));
}
}
add_action( 'wp_ajax_updateList', 'newHouseList::prepare_items');
add_action( 'wp_ajax_nopriv_updateList', 'newHouseList::prepare_items');
add_action( 'wp_ajax_searchListCity', 'SearchDao::ajax_searchListCity');
add_action( 'wp_ajax_nopriv_searchListCity', 'SearchDao::ajax_searchListCity');
add_action('wp_ajax_updateList', 'newHouseList::prepare_items');
add_action('wp_ajax_nopriv_updateList', 'newHouseList::prepare_items');
add_action('wp_ajax_searchListCity', 'SearchDao::ajax_searchListCity');
add_action('wp_ajax_nopriv_searchListCity', 'SearchDao::ajax_searchListCity');
function function_rentHouseList()
{
......@@ -452,31 +443,33 @@ function function_rentHouseList()
$contest['city'] = SearchDao::searchCity();
$contest['status'] = SearchDao::searchStatusType(2);
$contest['buildProperty'] = SearchDao::searchBuildProperty();
if(isset($_REQUEST['hasSearch'])){
if (isset($_REQUEST['hasSearch'])) {
$contest['district'] = SearchDao::searchCity($_REQUEST['listCity']);
$contest['plate'] = SearchDao::searchCity($_REQUEST['listCity'],$_REQUEST['listDistrict']);
$contest['plate'] = SearchDao::searchCity($_REQUEST['listCity'], $_REQUEST['listDistrict']);
$contest['dicRentalPrice'] = searchDao::searchRentalPrice($_REQUEST['listCity']);
$contest['dicArea'] = searchDao::searchArea($_REQUEST['listCity']);
$contest['cityId'] = $_REQUEST['listCity'];
$contest['districtId'] = $_REQUEST['listDistrict'];
$contest['plateId' ]= $_REQUEST['listPlate'];
$contest['buildPropertyId']= $_REQUEST['buildProperty'];
$contest['plateId'] = $_REQUEST['listPlate'];
$contest['buildPropertyId'] = $_REQUEST['buildProperty'];
$contest['rentalPrice'] = $_REQUEST['rentalPrice'];
$contest['acreage'] = $_REQUEST['acreage'];
$contest['statusId'] = $_REQUEST['status'];
$contest['statusId'] = $_REQUEST['status'];
$contest['req']['organization'] = $_REQUEST['organization'];
$contest['req'] = $_REQUEST;
}
$contest["house_type"] = 2;
Timber::render("houseList.html",$contest);
Timber::render("houseList.html", $contest);
}
function addRentTable(){
function addRentTable()
{
$rentHouseList = new rentHouseList();
$rentHouseList->prepare_items();
$rentHouseList->views();
$rentHouseList->display();
}
?>
......
......@@ -56,34 +56,7 @@ class SecHandHouse extends Tospur_House{
if($type==2){
$wpdb->query("START TRANSACTION");
if(isset($_POST['houseId'])){
//首先判断是经理修改还是职业顾问做不同的操作,接着判断置业顾问是否修改了状态
if($_POST["userType"] == 0){
//经理
//通过
if($_POST["status"] != -2){
$insert_tospur_house_array["status"] =$_POST["status"];
$insert_tospur_house_array["approval"] = -2;
}else{
//退回
$insert_tospur_house_array["approval"] = $_POST["status"];
}
}else{
//置业顾问
$currentStatus = SearchDao::getDetailInfo($_POST["userType"]);
//修改了状态
if($currentStatus["result"]->status != $_POST["status"]){
$insert_tospur_house_array["approval"] = $_POST["status"];
}else {
//没有修改状态
//没有申请审批
if($currentStatus["result"]->approval == -2){
$insert_tospur_house_array["approval"] = $currentStatus["result"]->status;
}else{
//申请了审批,没有修改状态,approval保持原来的
$insert_tospur_house_array["approval"] = $currentStatus["result"]->approval;
}
}
}
$insert_tospur_house_array = House::list_status_upate($_POST["userType"],$_POST["status"],$insert_tospur_house_array);
$result = SecHandHouse::data_update($_POST['houseId'],$insert_tospur_house_array);
if(!is_numeric($result)){
$wpdb->query("ROLLBACK");
......@@ -113,6 +86,7 @@ class SecHandHouse extends Tospur_House{
$context = array_merge($context,SearchDao::getDetailInfo($_GET['id']));
$context["district"] = SearchDao::searchCity($context['result']->city_id);
$context["plate"] = SearchDao::searchCity($context['result']->city_id,$context['result']->district_id);
}
$context['canApproval'] = House::canApproval();
$context["city"] = SearchDao::searchCity();
......@@ -139,27 +113,33 @@ class SecHandHouse extends Tospur_House{
$houseId = InsertDao::insert_tospur_house($params);
if(is_numeric($houseId)){
$mainImageRes = InsertDao::addMainImage($houseId,$data);
if(!is_numeric($mainImageRes)){
return $mainImageRes;
}
$recommendRes = InsertDao::addRecommend($houseId,$data);
if(!is_numeric($recommendRes)){
return $recommendRes;
}
$recConsultantRes = InsertDao::addRecConsultant($houseId,$data['recConsultant']);
if(!is_numeric($recConsultantRes)){
return $recConsultantRes;
}
InsertDao::addHouseTag($houseId, $data['houseTag']);
$tagRes = InsertDao::addHouseTag($houseId, $data['houseTag']);
if(!is_numeric($tagRes)){
return $tagRes;
}
$houseFeatureRes = InsertDao::addHouseFeature($houseId, $data['houseFeature']);
if(!is_numeric($houseFeatureRes)){
return $houseFeatureRes;
}
$customerTrackRes = CustomerTrackingDao::insert($houseId, $_REQUEST);
if(!is_numeric($mainImageRes)){
return $mainImageRes;
}else if(!is_numeric($recommendRes)){
return $recommendRes;
}else if(!is_numeric($recConsultantRes)){
return $recConsultantRes;
}else if(is_numeric($customerTrackRes)){
if(!is_numeric($customerTrackRes)){
return $customerTrackRes;
}else if(is_numeric($houseFeatureRes)){
return $houseFeatureRes;
}
}
return $houseId;
......
......@@ -5,10 +5,11 @@ if (!class_exists('WP_List_Table')) {
class secHandHouseList extends WP_List_Table
{
function get_views(){
function get_views()
{
global $wpdb;
$current_url = set_url_scheme( 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'] );
$current_url = remove_query_arg( array( 'paged','type'), $current_url );
$current_url = set_url_scheme('http://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']);
$current_url = remove_query_arg(array('paged', 'type'), $current_url);
$sql = "select COUNT(*) as allNum,
COUNT(NULLIF(approval != -2, false)) as needCheckNum,
COUNT(NULLIF(approval = 0, false)) as unCheckNum,
......@@ -18,33 +19,34 @@ class secHandHouseList extends WP_List_Table
COUNT(NULLIF(approval = 3, false)) as otherSaleNum,
COUNT(NULLIF(approval = 4, false)) as invalidNum,
COUNT(NULLIF(approval = 5, false)) as reactivationNum
from ".Config::TOSPUR_HOUSE_TABLE." where house_type = 1";
from " . Config::TOSPUR_HOUSE_TABLE . " where house_type = 1";
$result = $wpdb->get_results($sql);
foreach($result as $value){
foreach ($result as $value) {
$approvalParam = array(
"allNum" =>$value->allNum,
"allNum" => $value->allNum,
"needCheckNum" => $value->needCheckNum,
"unCheckNum" => $value->unCheckNum,
"checkNum" => $value->checkNum,
"checkNum" => $value->checkNum,
"onSaleNum" => $value->onSaleNum,
"selfSaleNum"=>$value->selfSaleNum,
"otherSaleNum"=>$value->otherSaleNum,
"invalidNum"=>$value->invalidNum,
"reactivationNum"=>$value->reactivationNum
"selfSaleNum" => $value->selfSaleNum,
"otherSaleNum" => $value->otherSaleNum,
"invalidNum" => $value->invalidNum,
"reactivationNum" => $value->reactivationNum
);
}
return array(
"allNum" => '<a href="'.$current_url.'&approval" class="current">全部<span class="count">('.$approvalParam["allNum"].')</span></a>',
"needCheckNum" => '<a href="'.$current_url.'&approval=-2" class="current">需审批<span class="count">('.$approvalParam["needCheckNum"].')</span></a>',
"unCheckNum" => '<a href="'.$current_url.'&approval=0">未审核<span class="count">('.$approvalParam["unCheckNum"].')</span></a>',
"checkNum" => '<a href="'.$current_url.'&approval=1">审核<span class="count">('.$approvalParam["checkNum"].')</span></a>',
"onSaleNum" => '<a href="'.$current_url.'&approval=-1">交易中<span class="count">('.$approvalParam["onSaleNum"].')</span></a>',
"selfSaleNum" => '<a href="'.$current_url.'&approval=2">自售<span class="count">('.$approvalParam["selfSaleNum"].')</span></a>',
"otherSaleNum" => '<a href="'.$current_url.'&approval=3">他售<span class="count">('.$approvalParam["otherSaleNum"].')</span></a>',
"invalidNum" => '<a href="'.$current_url.'&approval=4">无效<span class="count">('.$approvalParam["invalidNum"].')</span></a>',
"reactivationNum" => '<a href="'.$current_url.'&approval=5">重激活<span class="count">('.$approvalParam["reactivationNum"].')</span></a>',
"allNum" => '<a href="' . $current_url . '&approval" class="current">全部<span class="count">(' . $approvalParam["allNum"] . ')</span></a>',
"needCheckNum" => '<a href="' . $current_url . '&approval=-2" class="current">需审批<span class="count">(' . $approvalParam["needCheckNum"] . ')</span></a>',
"unCheckNum" => '<a href="' . $current_url . '&approval=0">未审核<span class="count">(' . $approvalParam["unCheckNum"] . ')</span></a>',
"checkNum" => '<a href="' . $current_url . '&approval=1">审核<span class="count">(' . $approvalParam["checkNum"] . ')</span></a>',
"onSaleNum" => '<a href="' . $current_url . '&approval=-1">交易中<span class="count">(' . $approvalParam["onSaleNum"] . ')</span></a>',
"selfSaleNum" => '<a href="' . $current_url . '&approval=2">自售<span class="count">(' . $approvalParam["selfSaleNum"] . ')</span></a>',
"otherSaleNum" => '<a href="' . $current_url . '&approval=3">他售<span class="count">(' . $approvalParam["otherSaleNum"] . ')</span></a>',
"invalidNum" => '<a href="' . $current_url . '&approval=4">无效<span class="count">(' . $approvalParam["invalidNum"] . ')</span></a>',
"reactivationNum" => '<a href="' . $current_url . '&approval=5">重激活<span class="count">(' . $approvalParam["reactivationNum"] . ')</span></a>',
);
}
function __construct()
{
global $status, $page;
......@@ -73,18 +75,17 @@ class secHandHouseList extends WP_List_Table
case 'user_id':
case 'status':
default:
return '<a href="' . admin_url() . 'admin.php?page=secHandHouse&edit=true&id='. $item['id'].'">' . $item[$column_name] . '</a>';
return '<a href="' . admin_url() . 'admin.php?page=secHandHouse&edit=true&id=' . $item['id'] . '">' . $item[$column_name] . '</a>';
}
}
function column_cb($item)
{
return sprintf(
'<input type="checkbox" name="%1$s[]" value="%2$s" />',
/*$1%s*/
$this->_args['singular'], //Let's simply repurpose the table's singular label ("score")
/*$2%s*/
$item['id'] //The value of the checkbox should be the record's id
'<input type="checkbox" name="%1$s[]" value="%2$s" data-consultant="%3$s"/>',
$this->_args['singular'],
$item['id'],
$item['consultant_id']
);
}
......@@ -93,19 +94,19 @@ class secHandHouseList extends WP_List_Table
$columns = array(
'cb' => '<input type="checkbox" />'
);
$columns['id']= 'ID';
$columns['name']= '二手房标题';
$columns['community_name']= '小区名称';
$columns['total_price']= '总价';
$columns['average_price']='单价';
$columns['buildproperty_id']= '户型';
$columns['covered_area']= '面积';
$columns['floor']= '楼层';
$columns['faceto']= '朝向';
$columns['decoration']= '装修状况';
$columns['age']= '年代';
$columns['user_id']= '置业顾问';
$columns['status']= '状态';
$columns['id'] = 'ID';
$columns['name'] = '二手房标题';
$columns['community_name'] = '小区名称';
$columns['total_price'] = '总价';
$columns['average_price'] = '单价';
$columns['buildproperty_id'] = '户型';
$columns['covered_area'] = '面积';
$columns['floor'] = '楼层';
$columns['faceto'] = '朝向';
$columns['decoration'] = '装修状况';
$columns['age'] = '年代';
$columns['user_id'] = '置业顾问';
$columns['status'] = '状态';
return $columns;
}
......@@ -131,76 +132,89 @@ class secHandHouseList extends WP_List_Table
function get_bulk_actions()
{
if( current_user_can('houseApproval') ) {
if (current_user_can('houseApproval')) {
$actions = array(
"agree" =>"通过",
"goBack" =>"退回"
"agree" => "通过",
"goBack" => "退回",
'allot' => '分配置业顾问'
);
}else{
} else {
$actions = array(
'unCheck'=>'未审核',
'check' =>'审核',
'onSale'=>'交易中',
'selfSale'=>'自售',
'otherSale'=>'他售',
'invalid'=>'无效',
'reactivation'=>'重激活'
'unCheck' => '未审核',
'check' => '审核',
'onSale' => '交易中',
'selfSale' => '自售',
'otherSale' => '他售',
'invalid' => '无效',
'reactivation' => '重激活'
);
}
return $actions;
}
function manage_bulk_action(){
function manage_bulk_action()
{
global $wpdb;
$flag = 0;
$action = $this->current_action();
if($action){
$id = $_REQUEST['sechandhouselist'];
if ($action && $id) {
$string = null;
$approval = null;
switch ($action) {
case"agree":
$id = $_REQUEST['sechandhouselist'];
if ($id) {
$string = '(' . implode(',', array_map('intval', $id)) . ')';
$approvalRes = $wpdb ->get_results('select approval from tospur_house where id in '.$string);
foreach($approvalRes as $value){
if($value->approval == -2){
print_r("您审批的房源中含有未申请审批的房源,请重新选择");
exit;
}
$string = '(' . implode(',', array_map('intval', $id)) . ')';
$approvalRes = $wpdb->get_results('select approval from tospur_house where id in ' . $string);
foreach ($approvalRes as $value) {
if ($value->approval == -2) {
print_r("您审批的房源中含有未申请审批的房源,请重新选择");
exit;
}
$result = $wpdb->query('update tospur_house th SET th.status= th.approval where id in ' . $string);
$flag = 1;
}
$result = $wpdb->query('update tospur_house th SET th.status= th.approval where id in ' . $string);
$flag = 1;
break;
case"goBack":
$id = $_REQUEST['sechandhouselist'];
if ($id) {
$string = '(' . implode(',', array_map('intval', $id)) . ')';
$flag = 1;
}
$string = '(' . implode(',', array_map('intval', $id)) . ')';
$flag = 1;
break;
case "allot":
HouseDao::houseAllotConsultant($_POST['allot_consultant_id'], $id);
break;
}
if($flag == 1){
if ($flag == 1) {
$wpdb->query('update tospur_house th SET th.approval= -2 where id in ' . $string);
}
}
}
function getCurrentStatus($houseId,$changeStatus = null){
function getCurrentStatus($houseId, $changeStatus = null)
{
global $wpdb;
$sql = "select status from tospur_house where id in".$houseId;
$sql = "select status from tospur_house where id in" . $houseId;
$res = $wpdb->get_results($sql);
if($changeStatus != null|| $changeStatus == 0 ){
foreach($res as $value){
if($value->status == $changeStatus){
print_r("您申请的状态含有与原状态相同的房源,请重新选择");
return false;
}
else{
return $changeStatus;
}
foreach ($res as $value) {
if ($value->status == $changeStatus) {
print_r("您申请的状态含有与原状态相同的房源,请重新选择");
return false;
}
if ($value->status == 2 || $value->status == 3) {
print_r("自售与他售房源不能修改状态,请重新选择");
return false;
}
if ($value->status == 4 && $changeStatus != 5) {
print_r("无效房源必须先重激活才能继续修改,请重新选择");
return false;
}
if ($changeStatus == 5 && $value->status != 4) {
print_r("只有无效房源才可以重激活,请重新选择");
return false;
}
}
return $res;
return $changeStatus;
}
function process_bulk_action()
......@@ -211,15 +225,15 @@ class secHandHouseList extends WP_List_Table
$id = $_REQUEST['sechandhouselist'];
$string = null;
$status = null;
if($action == 'allot'){
if ($action == 'allot') {
HouseDao::houseAllotConsultant($_POST['allot_consultant_id'], $_POST['sechandhouselist']);
}else{
} else {
switch ($action) {
case 'unCheck':
if ($id) {
$string = '(' . implode(',', array_map('intval', $id)) . ')';
$res = $this->getCurrentStatus($string,0);
if($res === false){
$res = $this->getCurrentStatus($string, 0);
if ($res === false) {
exit;
}
$status = $res;
......@@ -228,8 +242,8 @@ class secHandHouseList extends WP_List_Table
case 'check':
if ($id) {
$string = '(' . implode(',', array_map('intval', $id)) . ')';
$res = $this->getCurrentStatus($string,1);
if(!$res){
$res = $this->getCurrentStatus($string, 1);
if (!$res) {
exit;
}
$status = $res;
......@@ -238,8 +252,8 @@ class secHandHouseList extends WP_List_Table
case 'selfSale':
if ($id) {
$string = '(' . implode(',', array_map('intval', $id)) . ')';
$res = $this->getCurrentStatus($string,2);
if(!$res){
$res = $this->getCurrentStatus($string, 2);
if (!$res) {
exit;
}
$status = $res;
......@@ -248,8 +262,8 @@ class secHandHouseList extends WP_List_Table
case 'otherSale':
if ($id) {
$string = '(' . implode(',', array_map('intval', $id)) . ')';
$res = $this->getCurrentStatus($string,3);
if(!$res){
$res = $this->getCurrentStatus($string, 3);
if (!$res) {
exit;
}
$status = $res;
......@@ -258,8 +272,8 @@ class secHandHouseList extends WP_List_Table
case 'invalid':
if ($id) {
$string = '(' . implode(',', array_map('intval', $id)) . ')';
$res = $this->getCurrentStatus($string,4);
if(!$res){
$res = $this->getCurrentStatus($string, 4);
if (!$res) {
exit;
}
$status = $res;
......@@ -268,36 +282,30 @@ class secHandHouseList extends WP_List_Table
case 'reactivation':
if ($id) {
$string = '(' . implode(',', array_map('intval', $id)) . ')';
$sql = "select status from tospur_house where id in".$string;
$res = $wpdb->get_results($sql);
foreach($res as $value){
if($value->status == 4){
$status = 5;
}else{
print_r("只有无效房源可重激活,请重新选择");
exit;
}
}
$res = $this->getCurrentStatus($string, 5);
if (!$res) {
exit;
}
$status = $res;
}
break;
case 'onSale':
if ($id) {
$string = '(' . implode(',', array_map('intval', $id)) . ')';
$res = $this->getCurrentStatus($string,-1);
if(!$res){
$res = $this->getCurrentStatus($string, -1);
if (!$res) {
exit;
}
$status = $res;
}
break;
}
$result = $wpdb->query($wpdb->prepare('update tospur_house SET approval=%d where id in ' . $string,$status));
$result = $wpdb->query($wpdb->prepare('update tospur_house SET approval=%d where id in ' . $string, $status));
}
}
}
function prepare_items()
{
global $wpdb;
......@@ -308,9 +316,9 @@ class secHandHouseList extends WP_List_Table
$sortable = $this->get_sortable_columns();
$this->_column_headers = array($columns, $hidden, $sortable);
if( current_user_can('houseApproval') ) {
if (current_user_can('houseApproval')) {
$this->manage_bulk_action();
}else{
} else {
$this->process_bulk_action();
}
......@@ -323,81 +331,75 @@ class secHandHouseList extends WP_List_Table
left join(select status_name,status_type,status_id from tospur_status)ts on th.status = ts.status_id and ts.status_type=2
left join(select status_name as approvalName,status_type,status_id from tospur_status)tss on th.approval = tss.status_id and tss.status_type=2
where 1=1 and house_type=1 ";
if( isset( $_REQUEST["listCity"]) && $_REQUEST["listCity"] != -1 ){
if (isset($_REQUEST["listCity"]) && $_REQUEST["listCity"] != -1) {
$params[] = $_REQUEST["listCity"];
$sql = $sql." and city_id=%d";
$sql = $sql . " and city_id=%d";
}
if( isset( $_REQUEST["listDistrict"]) && $_REQUEST["listDistrict"] != -1 ){
if (isset($_REQUEST["listDistrict"]) && $_REQUEST["listDistrict"] != -1) {
$params[] = $_REQUEST["listDistrict"];
$sql = $sql." and district_id=%d";
$sql = $sql . " and district_id=%d";
}
if( isset( $_REQUEST["listPlate"]) && $_REQUEST["listPlate"] != -1){
if (isset($_REQUEST["listPlate"]) && $_REQUEST["listPlate"] != -1) {
$params[] = $_REQUEST["listPlate"];
$sql = $sql." and plate_id=%d";
$sql = $sql . " and plate_id=%d";
}
if( isset( $_REQUEST["buildProperty"]) && $_REQUEST["buildProperty"]!=-1){
if (isset($_REQUEST["buildProperty"]) && $_REQUEST["buildProperty"] != -1) {
$params[] = $_REQUEST["buildProperty"];
$sql = $sql." and buildproperty_id=%d";
$sql = $sql . " and buildproperty_id=%d";
}
if( isset( $_REQUEST["room"]) && $_REQUEST["room"]!= -1){
if (isset($_REQUEST["room"]) && $_REQUEST["room"] != -1) {
$params[] = $_REQUEST["room"];
$sql = $sql." and room_id=%d";
$sql = $sql . " and room_id=%d";
}
if(isset($_REQUEST["status"]) && $_REQUEST["status"]!=-1){
if (isset($_REQUEST["status"]) && $_REQUEST["status"] != -1) {
$params[] = $_REQUEST["status"];
$sql = $sql." and status=%d";
}
if( isset( $_REQUEST["organization"]) && $_REQUEST["organization"] != -1 ){
$params[] = $_REQUEST["organization"];
$sql = $sql." and subsidiaryId=%d ";
$sql = $sql . " and status=%d";
}
if($_REQUEST["totalPrice"]!=NULL){
if ($_REQUEST["totalPrice"] != NULL) {
$priceArray = explode("-", $_REQUEST['totalPrice']);
$params[] = $priceArray[0];
$params[] = $priceArray[1];
$sql = $sql . " and average_price between %d and %d";
}
if($_REQUEST["acreage"]!= NULL){
if ($_REQUEST["acreage"] != NULL) {
$areaArray = explode("-", $_REQUEST['acreage']);
$params[] = $areaArray[0];
$params[] = $areaArray[1];
$sql = $sql . " and covered_area between %d and %d";
}
if($_REQUEST["searchText"]!=NULL){
$params[] = '%'.$_REQUEST['searchText'].'%';
$sql = $sql . " and name like %s";
}
if(isset($_REQUEST["approval"]) && $_REQUEST["approval"]!=""){
if($_REQUEST["approval"] == -2){
if (isset($_REQUEST["approval"]) && $_REQUEST["approval"] != "") {
if ($_REQUEST["approval"] == -2) {
$params[] = $_REQUEST["approval"];
$sql = $sql . " and approval != %d";
}else{
} else {
$params[] = $_REQUEST["approval"];
$sql = $sql . " and approval = %d";
}
}
if($_REQUEST["beginDate"]!=NULL && $_REQUEST["endDate"]!= NULL){
$time = array($_REQUEST["beginDate"],$_REQUEST["endDate"]);
if ($_REQUEST["beginDate"] != NULL && $_REQUEST["endDate"] != NULL) {
$time = array($_REQUEST["beginDate"], $_REQUEST["endDate"]);
$params[] = $time[0];
$params[] = $time[1];
$sql = $sql." and creattime between %s and %s";
$sql = $sql . " and creattime between %s and %s";
}
if($_REQUEST["stuff"]!= NULL){
$params[] = '%'.$_REQUEST['stuff'].'%';
if (isset($_REQUEST["organization"]) && $_REQUEST["organization"] != -1) {
$params[] = $_REQUEST["organization"];
$sql = $sql . " and subsidiaryId=%d ";
} else if ($_REQUEST["searchText"] != NULL) {
$params[] = '%' . $_REQUEST['searchText'] . '%';
$sql = $sql . " and name like %s";
} else if ($_REQUEST["stuff"] != NULL) {
$params[] = '%' . $_REQUEST['stuff'] . '%';
$sql = $sql . " and consul_name like %s";
}
if(isset($_GET["orderby"])){
if (isset($_GET["orderby"])) {
$orderby = $_GET["orderby"];
$order = $_GET["order"];
$sql = $sql ." order by ".$orderby." ".$order;
$sql = $sql . " order by " . $orderby . " " . $order;
}
$result = $wpdb->get_results($wpdb->prepare($sql, $params));
$data = array();
......@@ -438,8 +440,9 @@ class secHandHouseList extends WP_List_Table
));
}
}
add_action( 'wp_ajax_updateList', 'newHouseList::prepare_items');
add_action( 'wp_ajax_nopriv_updateList', 'newHouseList::prepare_items');
add_action('wp_ajax_updateList', 'newHouseList::prepare_items');
add_action('wp_ajax_nopriv_updateList', 'newHouseList::prepare_items');
function function_secHandHouseList()
{
......@@ -448,30 +451,33 @@ function function_secHandHouseList()
$contest['city'] = SearchDao::searchCity();
$contest['status'] = SearchDao::searchStatusType(2);
$contest['buildProperty'] = SearchDao::searchBuildProperty();
if(isset($_REQUEST['hasSearch'])){
if (isset($_REQUEST['hasSearch'])) {
$contest['district'] = SearchDao::searchCity($_REQUEST['listCity']);
$contest['plate'] = SearchDao::searchCity($_REQUEST['listCity'],$_REQUEST['listDistrict']);
$contest['plate'] = SearchDao::searchCity($_REQUEST['listCity'], $_REQUEST['listDistrict']);
$contest['dicTotalPrice'] = searchDao::searchTotalPrice($_REQUEST['listCity']);
$contest['dicArea'] = searchDao::searchArea($_REQUEST['listCity']);
$contest['cityId'] = $_REQUEST['listCity'];
$contest['districtId'] = $_REQUEST['listDistrict'];
$contest['plateId' ]= $_REQUEST['listPlate'];
$contest['buildPropertyId']= $_REQUEST['buildProperty'];
$contest['plateId'] = $_REQUEST['listPlate'];
$contest['buildPropertyId'] = $_REQUEST['buildProperty'];
$contest['totalPrice'] = $_REQUEST['totalPrice'];
$contest['acreage'] = $_REQUEST['acreage'];
$contest['statusId'] = $_REQUEST['status'];
$contest['statusId'] = $_REQUEST['status'];
$contest['req']['organization'] = $_REQUEST['organization'];
$contest['req'] = $_REQUEST;
}
$contest["house_type"] = 1;
Timber::render("houseList.html",$contest);
Timber::render("houseList.html", $contest);
}
function addSecTable(){
function addSecTable()
{
$secHandHouseList = new secHandHouseList();
$secHandHouseList->prepare_items();
$secHandHouseList->views();
$secHandHouseList->display();
}
?>
......
......@@ -92,18 +92,21 @@ class viewHouseList extends WP_List_Table
$this->_column_headers = array($columns, $hidden);
$sql = 'SELECT v.id, h.name, u.user_login as phone, v.date, v.time, c.display_name as consultant, v.handle, v.handle_date FROM tospur_view_house v '
$sql = 'SELECT v.id, h.name, u.user_login as phone, v.date, v.time, c.name as consultant, v.handle, v.handle_date FROM tospur_view_house v '
. 'left join tospur_house h on v.house_id = h.id '
. 'left join wp_users u on v.user_id = u.id '
. 'left join wp_users c on v.consultant_id = c.id '
. 'order by handle';
. 'left join tospur_consultant c on v.consultant_id = c.id';
if (current_user_can('zygw')) {
$sql .= " where c.id = " . get_current_user_id();
}
$sql .= ' order by handle';
$result = $wpdb->get_results($sql);
$data = array();
foreach ($result as $key => $value) {
$data[$key] = array(
'id' => $value->id,
'name' => $value->name,
'date' => $value->date.' '.$value->time,
'date' => $value->date . ' ' . $value->time,
'phone' => $value->phone,
'consultant' => $value->consultant,
'handle' => $value->handle,
......
......@@ -46,7 +46,7 @@
row.append(left).append(mid).append(right);
var p = $("<p>").append(row).append(recommendConsultant);
$("#consultantImg").append(p);
{% if (house_type == 1 or house_type == 2 or page == 'customer') %}
{% if (house_type == 1 or house_type == 2 or page == 'customer' or page == 'view') %}
controlCommand("consultantImg",1,1);
{% endif %}
}
......
<div class="wrap">
<h2>客户列表</h2>
<form method="get">
<form method="get" id="search_form">
<input type="hidden" name="page" value="customerList">
<div id="search_form">
<div>
<input type="hidden" name="hasSearch" value="1"/>
{% include 'selectOrganization.html' %}
<label for="status" class="hidden"></label>
<select name="status" id="status">
<option value="-1">状态</option>
{% for item in status %}
<option {{ item.id == status_id ?"selected":"" }} value="{{ item.id }}">{{ item.value }}</option>
{% set customer_status_array = function('SearchDao::searchStatusType', 5) %}
{% for item in customer_status_array %}
<option {{ item.id == req.status ?"selected":"" }} value="{{ item.id }}">{{ item.value }}</option>
{% endfor %}
</select>
<label for="customer_type" class="hidden"></label>
<select name="customer_type" id="customer_type">
<option value="-1">客户类型</option>
{% for item in customer_type %}
<option {{ item.id == customer_type_id ?"selected":"" }} value="{{ item.id }}">{{ item.value }}</option>
{% set customer_type_array = function('SearchDao::searchStatusType', 6) %}
{% for item in customer_type_array %}
<option {{ item.id == req.customer_type ?"selected":"" }} value="{{ item.id }}">{{ item.value }}</option>
{% endfor %}
</select>
<label for="demand_type" class="hidden"></label>
......@@ -29,74 +32,80 @@
<select id="listCity" name="listCity">
<option value="-1"> 城市</option>
{% for item in city %}
<option {{ item.id == cityId ?"selected":"" }} value="{{ item.id }}">{{ item.value }}</option>
<option {{ item.id == req.listCity ?"selected":"" }} value="{{ item.id }}">{{ item.value }}</option>
{% endfor %}
</select>
<label for="listDistrict" class="hidden"></label>
<select id="listDistrict" name="listDistrict">
<option value="-1">区域</option>
{% set district = function('SearchDao::searchCity', req.listCity) %}
{% if district %}
{% for item in district %}
<option {{ item.id == districtId ?"selected":"" }} value="{{ item.id }}">{{ item.value }}</option>
<option {{ item.id == req.listDistrict ?"selected":"" }} value="{{ item.id }}">{{ item.value }}</option>
{% endfor %}
{% endif %}
</select>
<label for="listPlate" class="hidden"></label>
<select id="listPlate" name="listPlate">
<option value="-1">板块</option>
{% set plate = function('SearchDao::searchCity', req.listCity, req.listDistrict) %}
{% if plate %}
{% for item in plate %}
<option {{ item.id == plateId ?"selected":"" }} value="{{ item.id }}">{{ item.value }}</option>
<option {{ item.id == req.listPlate ?"selected":"" }} value="{{ item.id }}">{{ item.value }}</option>
{% endfor %}
{% endif %}
</select>
<label for="totalPrice" class="hidden"></label>
<select id="totalPrice" name="totalPrice" class="hidden">
<option value="">总价</option>
<option value="-1">总价</option>
{% set dicTotalPrice = function('SearchDao::searchTotalPrice', req.listCity) %}
{% if dicTotalPrice %}
{% for item in dicTotalPrice %}
<option {{ item.value == totalPrice ?"selected":"" }} value="{{ item.value }}">{{ item.value }}</option>
<option {{ item.value == req.totalPrice ?"selected":"" }} value="{{ item.value }}">{{ item.value }}</option>
{% endfor %}
{% endif %}
</select>
<label for="rentalPrice" class="hidden"></label>
<select id="rentalPrice" name="rentalPrice" class="hidden">
<option value ="">月租</option>
<option value ="-1">月租</option>
{% set dicRentalPrice = function('SearchDao::searchRentalPrice', req.listCity) %}
{% if dicRentalPrice %}
{% for item in dicRentalPrice %}
<option {{ item.value == rentalPrice ?"selected":"" }} value="{{ item.value }}">{{ item.value }}</option>
<option {{ item.value == req.rentalPrice ?"selected":"" }} value="{{ item.value }}">{{ item.value }}</option>
{% endfor %}
{% endif %}
</select>
<label for="buildProperty" class="hidden"></label>
<select id="buildProperty" name="buildProperty">
<option value="-1">房型</option>
{% for item in buildProperty %}
<option {{ item.id == buildPropertyId ?"selected":"" }} value="{{ item.id }}">{{ item.value }}</option>
{% set buildProperty_array = function('SearchDao::searchBuildProperty') %}
{% for item in buildProperty_array %}
<option {{ item.id == req.buildProperty ?"selected":"" }} value="{{ item.id }}">{{ item.value }}</option>
{% endfor %}
</select>
<label for="acreage" class="hidden"></label>
<select id="acreage" name="acreage">
<option value="">面积</option>
{% if acreage %}
<option value="-1">面积</option>
{% set dicArea = function('SearchDao::searchArea', req.listCity) %}
{% if dicArea %}
{% for item in dicArea %}
<option {{ item.value == acreage ?"selected":"" }} value="{{ item.value }}">{{ item.value }}</option>
<option {{ item.value == req.acreage ?"selected":"" }} value="{{ item.value }}">{{ item.value }}</option>
{% endfor %}
{% endif %}
</select>
</div>
<div style="margin-top: 10px;">
<input type="text" placeholder="请输入姓名" name="search_name" value="{{ search_name }}">
<input type="text" placeholder="请输入置业顾问" name="search_consultant_name" value="{{ search_consultant_name }}">
<input type="text" placeholder="请输入电话" name="search_phone" value="{{ search_phone }}">
<input type="text" placeholder="请输入姓名" name="search_name" value="{{ req.search_name }}">
<input type="text" placeholder="请输入置业顾问" name="search_consultant_name" value="{{ req.search_consultant_name }}">
<input type="text" placeholder="请输入电话" name="search_phone" value="{{ req.search_phone }}">
</div>
<div style="margin-top: 10px;">
<span>日期</span>
<label>日期:</label>
<label for="search_min_time" class="hidden"></label>
<input type="date" name="search_min_time" id="search_min_time" value="{{ search_min_time }}">
<input type="date" name="search_min_time" id="search_min_time" value="{{ req.search_min_time }}">
<label for="search_max_time" class="hidden"></label>
<input type="date" name="search_max_time" id="search_max_time" value="{{ search_max_time }}">
<input type="date" name="search_max_time" id="search_max_time" value="{{ req.search_max_time }}">
<input type="submit" id="submit" class="button action" value="搜索">
</div>
</form>
......@@ -110,7 +119,7 @@
<script>
$(document).ready(function () {
var demand_type_select = $('#demand_type');
demand_type_select.val('{{ demand_type }}');
demand_type_select.val('{{ req.demand_type|default(-1) }}');
search_form_set_page();
var acreage = $("#acreage");
......@@ -157,5 +166,16 @@
}
allot_consultant('customerlist');
$('form').submit(function () {
var organization = getOrganization();
var select = $('select[data-depth]:not(.hidden)');
if (select.length > 1 && organization == -1) {
alert('请选择门店');
return false;
} else {
$(this).append('<input type="hidden" name="organization" value="' + organization + '">');
}
});
});
</script>
\ No newline at end of file
<div class="wrap">
<h2>签约-房客跟进</h2>
<form method="get">
<form method="get" id="search_form">
<input type="hidden" name="page" value="customerTrackingList">
<div id="search_form">
<div>
{% include 'selectOrganization.html' %}
<label for="status_type" class="hidden"></label>
<select name="status_type" id="status_type">
<option value="-1">跟进类型</option>
{% for item in status %}
<option
{{ item.id == status_type ?"selected":"" }} value="{{ item.id }}">{{ item.value }}</option>
{{ item.id == (req.status_type) ?"selected":"" }} value="{{ item.id }}">{{ item.value }}</option>
{% endfor %}
</select>
<label for="search_consultant_name" class="hidden"></label>
<input type="text" placeholder="请输入置业顾问" name="search_consultant_name" id="search_consultant_name"
value="{{ search_consultant_name }}">
<span>日期</span>
value="{{ req.search_consultant_name }}">
<label>日期:</label>
<label for="search_min_time" class="hidden"></label>
<input type="date" name="search_min_time" id="search_min_time" value="{{ search_min_time }}">
<input type="date" name="search_min_time" id="search_min_time" value="{{ req.search_min_time }}">
<label for="search_max_time" class="hidden"></label>
<input type="date" name="search_max_time" id="search_max_time" value="{{ search_max_time }}">
<input type="date" name="search_max_time" id="search_max_time" value="{{ req.search_max_time }}">
<input type="submit" id="submit" class="button action" value="搜索">
</div>
</form>
<form method="post">
{{ function("addCustomerTrackingTable") }}
</form>
</div>
<script>
$(document).ready(function () {
search_form_set_page();
$('form').submit(function () {
var organization = getOrganization();
var select = $('select[data-depth]:not(.hidden)');
if (select.length > 1 && organization == -1) {
alert('请选择门店');
return false;
} else {
$(this).append('<input type="hidden" name="organization" value="' + organization + '">');
}
});
});
</script>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
<style></style>
<script>
(function ($) {
$(document).ready(function () {
$('#handle').click(function () {
var consultant_id = $('#consultant option:selected').val();
$.ajax({
type: 'POST',
url: '{{ url }}/wp-admin/admin-ajax.php/',
data: 'action=update_consultant&id={{ id }}&consultant_id=' + consultant_id,
success: function (data) {
if (data.code == 2000) {
alert('提交处理成功');
} else {
alert('提交处理失败');
}
}
});
});
});
})(jQuery);
</script>
</head>
<body>
<div>
<ul>
<li>楼盘名/房源名:{{ house_result.name }}</li>
<li>用户:{{ house_result.phone }}</li>
<li>预约时间:{{ house_result.date }} {{ house_result.time }}</li>
</ul>
</div>
<label for="consultant"></label>
<select id="consultant">
{% for consultant in consultant_result %}
<option value="{{ consultant.id }}"
{% if(house_result.consultant_id==consultant.id) %}selected="selected"{% endif %}>{{ consultant.display_name }}</option>
{% endfor %}
</select>
<button id="handle">提交处理</button>
</body>
</html>
\ No newline at end of file
<style>
.handle ul {
margin-top: 30px;
}
.handle ul li {
margin: 20px 0;
}
.handle ul li span:nth-of-type(1) {
font-weight: bold;
font-size: 14px;
display: inline-block;
width: 120px;
}
.handle ul li span:nth-of-type(2) {
font-size: 14px;
display: inline-block;
width: 400px;
}
</style>
<form method="post">
<div class="handle">
<ul>
<li>
<span>楼盘名/房源名:</span>
<span>{{ house_result.name }}</span>
</li>
<li>
<span>用户:</span>
<span>{{ house_result.phone }}</span>
</li>
<li>
<span>预约时间:</span>
<span>{{ house_result.date }} {{ house_result.time }}</span>
</li>
</ul>
{% if role_flag %}
<input type="hidden" name="handle" value="1">
{% else %}
{% include 'addConsultant.html' %}
<input type="hidden" id="baseCity" value="{{ cityId }}">
<input type="hidden" name="submit" value="1">
{% include 'recConsultant.html' %}
{{ block('recConsultant') }}
{% endif %}
<input type="submit" id="handle" class="button action" value="提交处理">
</div>
</form>
\ No newline at end of file
......@@ -109,28 +109,34 @@
});
var json = {"decoration":"{{result.decoration}}"};
revertOption(json);
var rulesJson = {
housename:'required',
mark:'required',
community_name:'required',
address:'required',
average_price:'required',
baseCity:{
citySelectcheck: true
},
baseAreaId:{
areaSelectcheck: true
},
basePlateId:{
plateSelectcheck: true
}
};
{% if not canApproval %}
rulesJson.description = 'required';
{% endif %}
$('#newHouse').validate({
onkeyup: false,
onfocusout: false,
ignore: [],
errorClass: "my-error-class",
rules: {
housename:'required',
mark:'required',
community_name:'required',
address:'required',
average_price:'required',
description:'required',
baseCity:{
citySelectcheck: true
},
baseAreaId:{
areaSelectcheck: true
},
basePlateId:{
plateSelectcheck: true
}
},
rules: rulesJson,
messages: {
housename:'请输入楼盘名称',
mark:'请输入标签',
......@@ -151,10 +157,6 @@
alert("请选择置业顾问");
return false;
}
if($("#photosTbody > tr").length == 0){
alert("请选择房源相册");
return false;
}
form.submit();
}
});
......
......@@ -51,7 +51,7 @@
</div>
<div class="col-xs-2">
<div class="row" style="position: fixed;">
{% if houseId %}
{% if (result.status != 2 and result.status != 3) %} {% if houseId %}
{% if canApproval %}
{% if result.approval != -2 %}
<select name="status" class="form-control">
......@@ -70,7 +70,7 @@
{% endif %}
{% endif %}
<input type="submit" id="submit" class="button action" style="float:left">
</div>
{% endif %} </div>
</div>
</div>
</form>
......@@ -132,6 +132,9 @@
rulesJson.owner_name = 'required';
rulesJson.owner_phone = 'required';
{% endif %}
{% if not canApproval %}
rulesJson.description = 'required';
{% endif %}
$('#rentHouse').validate({
onkeyup: false,
......@@ -159,10 +162,6 @@
alert("请选择房源相册");
return false;
}
if($("#houseImg > p").length == 0){
alert("请选择推荐房源");
return false;
}
form.submit();
}
});
......
......@@ -17,16 +17,6 @@
width: 400px;
}
</style>
<script>
(function ($) {
$(document).ready(function () {
$('#handle').click(function () {
var consultant_id = $('#consultant').find('option:selected').val();
alert(consultant_id);
});
});
})(jQuery);
</script>
{% if house_type == 1 %}
{% set unit = '万元' %}
{% set price = '售价' %}
......
{% if function('current_user_can', 'zygw') %}
<style>
.customer_tracking h2 {
margin-bottom: 30px;
......@@ -39,4 +40,5 @@
<label for="description"></label>
</span>
</p>
</div>
\ No newline at end of file
</div>
{% endif %}
\ No newline at end of file
......@@ -55,25 +55,27 @@
</div>
<div class="col-xs-2">
<div class="row" style="position: fixed;top:200px;">
{% if houseId %}
{% if canApproval %}
{% if result.approval != -2 %}
<select name="status" class="form-control">
<option value="{{result.approval}}">通过</option>
<option value="-2">退回</option>
</select>
<input type="hidden" name="userType" value="0">
{% if (result.status != 2 and result.status != 3) %}
{% if houseId %}
{% if canApproval %}
{% if result.approval != -2 %}
<select name="status" class="form-control">
<option value="{{result.approval}}">通过</option>
<option value="-2">退回</option>
</select>
<input type="hidden" name="userType" value="0">
{% endif %}
{% else %}
<select name="status" class="form-control">
{% for item in status %}
<option {{ item.id == result.status?"selected":"" }} value={{item.id}}>{{item.value}}</option>
{% endfor %}
</select>
<input type="hidden" name="userType" value="{{houseId}}">
{% endif %}
{% endif %}
<input type="submit" id="submit" class="button action" style="float:left">
{% endif %}
{% else %}
<select name="status" class="form-control">
{% for item in status %}
<option {{ item.id == result.status?"selected":"" }} value={{item.id}}>{{item.value}}</option>
{% endfor %}
</select>
<input type="hidden" name="userType" value="{{houseId}}">
{% endif %}
{% endif %}
<input type="submit" id="submit" class="button action" style="float:left">
</div>
</div>
</div>
......@@ -138,6 +140,10 @@
rulesJson.owner_name = 'required';
rulesJson.owner_phone = 'required';
{% endif %}
{% if not canApproval %}
rulesJson.description = 'required';
{% endif %}
$('#secHouse').validate({
onkeyup: false,
onfocusout: false,
......@@ -165,10 +171,6 @@
alert("请选择房源相册");
return false;
}
if($("#houseImg > p").length == 0){
alert("请选择推荐房源");
return false;
}
if($("#feature > div").length == 0){
alert("请选择推荐特色");
return false;
......
......@@ -93,11 +93,12 @@ class TospurDao
{
global $wpdb;
$sql = 'select c.id, c.cityId, c.mobile, c.imageUrl, c.name as display_name, c.introduction, s.average_score from ' . Config::TOSPUR_CONSULTANT . ' c ' .
'left join (select consultant_id,sum(score)/count(score) as average_score from ' . Config::TOSPUR_CONSULTANT_SCORE_TABLE . ' group by consultant_id) s ' .
'left join (select consultant_id,sum(score)/count(score) as average_score from ' . Config::TOSPUR_CONSULTANT_SCORE_TABLE . ' where valid = 1 group by consultant_id) s ' .
'on c.id = s.consultant_id where c.id = ' . $consultant_id;
return $wpdb->get_row($sql);
}
public static function update_consultant_score($score_id, $valid)
{
global $wpdb;
......
......@@ -11,7 +11,8 @@ define('PLUGIN_DIR', dirname(__FILE__) . '/');
add_action('init', 'tospur_init');
function tospur_init()
{my_plugin_activate();
{
//my_plugin_activate();
require_once(PLUGIN_DIR . 'Config.php');
require_once(PLUGIN_DIR . 'Tools/TCSync.php');
require_once(PLUGIN_DIR . 'Tools/Image.php');
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment