Commit 230ebc0f by felix

每日一更

parent ebce5cf5
<?php
require_once(PLUGIN_DIR . 'Dao/ContractDao.php');
require_once(PLUGIN_DIR . 'Dao/SearchDao.php');
class Contract {
public static function init_view(){
......@@ -6,16 +8,21 @@ class Contract {
$type = $_POST["type"];
$context = array();
$context['siteUrl'] = get_site_url();
$context['adminUrl'] = admin_url();
$context['city'] = SearchDao::searchCity();
$context['managers'] = get_users( 'role=editor' );
$context['status'] = SearchDao::searchStatusType(4);
$params = array(
'business' => $_REQUEST['business'],
'houseNumber' =>$_REQUEST['houseNumber'],
'address' =>$_REQUEST['address'],
'customerNumber' =>$_REQUEST['customerNumber'],
'signedDate' =>$_REQUEST['signedDate'],
'permitNumber' =>$_REQUEST['permitNumber'],
'area' =>$_REQUEST['area'],
'house_number' =>$_REQUEST['house_number'],
'price' =>$_REQUEST['price'],
'managerId' =>$_REQUEST['managerId'],
'managerId' =>1,
'paymentMethod' =>$_REQUEST['paymentMethod'],
'codicil' =>$_REQUEST['codicil'],
'oName' =>$_REQUEST['oName'],
......@@ -33,20 +40,38 @@ class Contract {
'cPayBack' =>$_REQUEST['cPayBack'],
'cMoney' =>$_REQUEST['cMoney']
);
if($type==1){
$wpdb->query("START TRANSACTION");
if($type==1){
$prefix = "新增";
if(isset($_REQUEST["id"])){
$result = ContractDao::update($_REQUEST["id"],$_REQUEST['']);
$prefix = "修改";
}else{
$result = ContractDao::insert($params);
if(is_numeric($result)){
$prefix = "CJCS";
if($_REQUEST['type'] > 1){
$prefix = "CJCZ";
}
$contractId = $prefix.str_pad($result,6,'0',STR_PAD_LEFT);
$result = ContractDao::setContractId($result,$contractId);
}
}
if(!is_numeric($result)){
$wpdb->query("ROLLBACK");
$context["error"] = $result;
echo $prefix."合同失败";
}else{
$wpdb->query("COMMIT");
echo $prefix."合同成功";
}
exit;
}else if(isset($_GET['edit'])){
$id = $_REQUEST["id"];
$context['houseId'] = $id;
$context['result'] = ContractDao::searchContract($id);
}
Timber::render("contract.html",$context);
}
public static function insert($params){
global $wpdb;
//$wpdb->insert(Config::);
}
public static function update($params){
}
}
\ No newline at end of file
<?php
class Contract_List extends WP_List_Table{
function __construct()
{
global $status, $page;
//Set parent defaults
parent::__construct(array(
'singular' => 'contractLists', //singular name of the listed records
'plural' => 'contractLists', //plural name of the listed records
'ajax' => false //does this table support ajax?
));
}
function column_default($item, $column_name)
{
$name = $item[$column_name];
switch ($column_name) {
case'business':
switch($item[$column_name]){
case 0:
$name = "新房";
break;
case 1:
$name = "二手房";
break;
case 2:
$name = "租房";
break;
}
break;
}
return '<a href="' . admin_url() . 'admin.php?page=contract&edit=true&id='. $item['id'].'">' .$name . '</a>';
}
function get_columns()
{
$columns['contractId']= '合同编号';
$columns['signedDate']= '签约日期';
$columns['business']= '业务类型';
$columns['address']='房源地址';
$columns['price']= '成交金额';
$columns['commission']= '佣金总额';
$columns['manager']= '签约人员';
$columns['status']= '状态';
$columns['oName']= '业主姓名';
return $columns;
}
function get_sortable_columns()
{
$sortable_columns = array(
'contractId' => array('contractId', false),
'signedDate' => array('signedDate', false),
'business' => array('business', false),
'address' => array('address', false),
'price' => array('price', false),
'commission' => array('commission', false),
'status' => array('status', false),
'oName' => array('oName', false)
);
return $sortable_columns;
}
function prepare_items()
{
global $wpdb;
$per_page = 10;
$columns = $this->get_columns();
$hidden = array();
$sortable = $this->get_sortable_columns();
$this->_column_headers = array($columns, $hidden, $sortable);
$this->process_bulk_action();
//$data = $this->example_data;
$sql = "select t.id,t.contractId,t.signedDate,t.business,t.address,t.price,(t.oCommission+t.cCommission) as commission,
tc.name as manager,ts.status_name as status,oName
from tospur_contract t
left join tospur_consultant tc on tc.id = t.managerId
left join tospur_status ts on ts.status_type = 4 and t.status = ts.status_id;";
$result = $wpdb->get_results($sql);
$data = array();
foreach ($result as $key => $value) {
$data[$key] = array(
'id' => $value->id,
'contractId' => $value->contractId,
'signedDate' => $value->signedDate,
'business' => $value->business,
'address' => $value->address,
'price' => $value->price,
'commission' => $value->commission,
'manager' => $value->manager,
'status' => $value->status,
'oName' => $value->oName
);
}
$current_page = $this->get_pagenum();
$total_items = count($data);
$data = array_slice($data, (($current_page - 1) * $per_page), $per_page);
$this->items = $data;
$this->set_pagination_args(array(
'total_items' => $total_items, //WE have to calculate the total number of items
'per_page' => $per_page, //WE have to determine how many items to show on a page
'total_pages' => ceil($total_items / $per_page) //WE have to calculate the total number of pages
));
}
public static function showTableView()
{
Timber::render("contractList.html");
}
public static function displayTable(){
$contractList = new Contract_List();
$contractList->prepare_items();
$contractList->display();
}
}
\ No newline at end of file
<?php
require_once(PLUGIN_DIR . 'Tools/TCSync.php');
class TCSyncView {
public static function display(){
if(isset($_REQUEST["type"])){
switch($_REQUEST["type"]){
case 0:
TCSync::user_sync();
break;
case 1:
TCSync::organization_sync();
break;
case 2:
TCSync::other_sync();
break;
}
}
Timber::render("TCSyncView.html");
}
}
\ No newline at end of file
......@@ -38,7 +38,6 @@ class feature
public static function add_feature_html()
{
wp_enqueue_style('bootstrapMinCss');
$context = array();
$context['view'] = plugins_url() . '/tospur/Admin/views';
$context['result'] = feature::search_feature();
......
......@@ -57,7 +57,7 @@ class newHouseList extends WP_List_Table
function get_columns()
{
if( current_user_can('administrator') ) {
if( current_user_can('moderate_comments') ) {
$columns = array(
'cb' => '<input type="checkbox" />'
);
......@@ -230,16 +230,6 @@ class newHouseList extends WP_List_Table
}
}
function usort_reorder($a, $b)
{
$orderby = (!empty($_REQUEST['orderby'])) ? $_REQUEST['orderby'] : 'valid'; //If no sort, default to title
$order = (!empty($_REQUEST['order'])) ? $_REQUEST['order'] : 'desc'; //If no order, default to asc
$result = strcmp($a[$orderby], $b[$orderby]); //Determine sort order
return ($order === 'asc') ? $result : -$result; //Send final sort direction to usort
}
usort($data, 'usort_reorder');
$current_page = $this->get_pagenum();
$total_items = count($data);
......
......@@ -12,16 +12,14 @@ class RentHouse extends Tospur_House{
//获取新房信息,存入tospur_house表
$insert_tospur_house_array = array(
'name' => $_POST['housename'],
'house_number' =>$_POST['house_number'],
'rent'=>$_POST['rent'],
'total_price' =>$_POST['total_price'],
'average_price' => $_POST['average_price'],
'buildproperty_id'=>$_POST['buildproperty_id'],
'covered_area' =>$_POST['covered_area'],
'floor' =>$_POST['floor'],
'faceto'=>$_POST['faceto'],
'decoration' => $_POST['decoration'],
'age'=>$_POST['age'],
'matching_facilities'=>$_POST['matching_facilities'],
'flat'=>$_POST['flat'],
'suite'=>$_POST["suite"],
'overview' => $_POST['overview'],
'city_id' => $_POST['baseCity'],
......@@ -46,7 +44,11 @@ class RentHouse extends Tospur_House{
"propertyRight"=>$_POST["propertyRight"],
"structure"=>$_POST["structure"],
"key"=>$_POST["key"],
"garage"=>$_POST["garage"]
"matching_facilities"=>$_POST["matching_facilities"],
"garage"=>$_POST["garage"],
"entrustDay"=>$_POST["entrustDay"],
"deadLine"=>$_POST["deadLine"],
"rent"=>$_POST["rent"]
);
if($type==3){
$wpdb->query("START TRANSACTION");
......@@ -90,9 +92,7 @@ class RentHouse extends Tospur_House{
$context["room"] = SearchDao::searchRoom();
$context["photoType"] = SearchDao::searchPhotoType();
$context["status"] = searchDao::searchStatusType(2);
for($i = 1981; $i<= 2020; $i++){
$context["age"][]=$i;
}
$context["house_type"] = 2;
Timber::render("rentHouse.html",$context);
}
......
......@@ -51,7 +51,7 @@ class rentHouseList extends WP_List_Table
function get_columns()
{
if( current_user_can('administrator') ) {
if( current_user_can('moderate_comments') ) {
$columns = array(
'cb' => '<input type="checkbox" />'
);
......@@ -246,15 +246,6 @@ class rentHouseList extends WP_List_Table
}
}
function usort_reorder($a, $b)
{
$orderby = (!empty($_REQUEST['orderby'])) ? $_REQUEST['orderby'] : 'valid'; //If no sort, default to title
$order = (!empty($_REQUEST['order'])) ? $_REQUEST['order'] : 'desc'; //If no order, default to asc
$result = strcmp($a[$orderby], $b[$orderby]); //Determine sort order
return ($order === 'asc') ? $result : -$result; //Send final sort direction to usort
}
usort($data, 'usort_reorder');
$current_page = $this->get_pagenum();
......
......@@ -11,7 +11,6 @@ class SecHandHouse extends Tospur_House{
$context['siteUrl'] = get_site_url();
$insert_tospur_house_array = array(
'name' => $_POST['housename'],
'house_number' =>$_POST['house_number'],
'total_price' =>$_POST['total_price'],
'average_price' => $_POST['average_price'],
'buildproperty_id'=>$_POST['buildproperty_id'],
......@@ -20,7 +19,6 @@ class SecHandHouse extends Tospur_House{
'faceto'=>$_POST['faceto'],
'decoration' => $_POST['decoration'],
'age'=>$_POST['age'],
'flat'=>$_POST['flat'],
'suite'=>$_POST["suite"],
'overview' => $_POST['overview'],
'city_id' => $_POST['baseCity'],
......@@ -46,8 +44,11 @@ class SecHandHouse extends Tospur_House{
"structure"=>$_POST["structure"],
"key"=>$_POST["key"],
"matching_facilities"=>$_POST["matching_facilities"],
"garage"=>$_POST["garage"]
"garage"=>$_POST["garage"],
"entrustDay"=>$_POST["entrustDay"],
"deadLine"=>$_POST["deadLine"]
);
if($type==2){
$wpdb->query("START TRANSACTION");
if(isset($_POST['houseId'])){
......@@ -55,6 +56,7 @@ class SecHandHouse extends Tospur_House{
$result = SecHandHouse::data_update($_POST['houseId'],$insert_tospur_house_array);
if($result != 201){
$wpdb->query("ROLLBACK");
print_r( $result);;
echo "二手房房源修改失败";
}else{
......@@ -81,7 +83,7 @@ class SecHandHouse extends Tospur_House{
$context["district"] = SearchDao::searchCity($context['result']->city_id);
$context["plate"] = SearchDao::searchCity($context['result']->city_id,$context['result']->district_id);
$context["mark"] = SearchDao::searchHouseTag($_GET['id']);
$context['featureOld'] = SearchDao::searchFeatureOld($_GET['id']);
$context['featureOld'] = json_encode(SearchDao::searchFeatureOld($_GET['id']));
$context["searchStatus"] = SearchDao::searchStatus($_GET['id'],2);
}
......@@ -92,9 +94,7 @@ class SecHandHouse extends Tospur_House{
$context["photoType"] = SearchDao::searchPhotoType();
$context["status"] = searchDao::searchStatusType(2);
$context["feature"] = searchDao::searchFeature();
for($i = 1981; $i<= 2020; $i++){
$context["age"][]=$i;
}
$context["house_type"] = 1;
Timber::render("secHandHouse.html",$context);
}
......@@ -110,13 +110,14 @@ class SecHandHouse extends Tospur_House{
//获取新房信息,存入tospur_house表
$res = $wpdb->get_results('SELECT * FROM tospur_house WHERE address="' .$params['address'] . '" and owner_name="' .$params['owner_name'] . '" and owner_phone="'.$params['owner_phone'].'" and house_type=1', OBJECT);
if(!$res){
$houseId = InsertDao::insert_tospur_house($params);
InsertDao::addMainImage($houseId,$data);
InsertDao::addRecommend($houseId,$data);
$recommendRes = InsertDao::addRecommend($houseId,$data);
InsertDao::addRecConsultant($houseId,$data);
$recConsultant=InsertDao::addRecConsultant($houseId,$data);
if(isset($_POST['mark'])&&$_POST['mark']!=""){
InsertDao::addHouseTag($_POST['mark'],$houseId);
......
......@@ -50,7 +50,7 @@ class secHandHouseList extends WP_List_Table
function get_columns()
{
if( current_user_can('administrator') ) {
if( current_user_can('moderate_comments') ) {
$columns = array(
'cb' => '<input type="checkbox" />'
);
......@@ -240,16 +240,6 @@ class secHandHouseList extends WP_List_Table
}
}
function usort_reorder($a, $b)
{
$orderby = (!empty($_REQUEST['orderby'])) ? $_REQUEST['orderby'] : 'valid'; //If no sort, default to title
$order = (!empty($_REQUEST['order'])) ? $_REQUEST['order'] : 'desc'; //If no order, default to asc
$result = strcmp($a[$orderby], $b[$orderby]); //Determine sort order
return ($order === 'asc') ? $result : -$result; //Send final sort direction to usort
}
usort($data, 'usort_reorder');
$current_page = $this->get_pagenum();
$total_items = count($data);
......
<body>
<h2 class="title">数据同步</h2><br/>
<form action="" method="POST" class="form-inline">
<div class="form-group">
<label>请选择要同步内容:</label>
<select name="type" class="form-control">
<option value="0">同步置业顾问</option>
<option value="1">同步组织机构</option>
<option value="2">同步字典表</option>
</select>
</div><br/><br/>
<div class="form-group">
<input type="submit" value="同步" class="form-control">
</div>
</form>
</body>
\ No newline at end of file
<table class="form-table">
<tbody>
<tr>
<th><label for="periphery">置业顾问</label></th>
<td>
<div id="consultantImg">
</div><br />
<button type="button" class="button action" data-toggle="modal" data-target="#myConsultant" id="recConsultantBt">
选择置业顾问
</button>
</td>
</tr>
</tbody>
</table>
<script>
(function($){
{% if consultant %}
var data = {{ consultant|json_encode()}};
$.each(data,function(i,item){
addConsultant(item.imageUrl,item.name,item.id);
});
{% endif %}
$(document).ready(function(){
//根据上方选择的城市,选择推荐置业顾问的默认城市
$("#recConsultantBt").click(function(){
$('#consultCity').find('option').remove();
$("#consultantList").find("li").remove();
var consulCityId = $("#baseCity").val();
var consultantName =$("#consultantName").val();
var cityName = $("#baseCity").find("option:selected").text();
var option = $("<option>").attr("value",consulCityId).append(cityName);
$("#consultCity").append(option);
searchConsultant(consulCityId,consultantName);
});
//添加置业顾问
$("#consultantList").on("click",".consultantImg",function(){
addConsultant($(this).find("img").attr("src"), $(this).text(), $(this).attr("id"));
});
$("#consultantImg").on("click",".consultantCancel",function(){
$(this).parents("p").remove();
});
//添加置业顾问弹出层中搜索框的搜索内容
$("#searchConsult").click(function(){
var consulCityId = $("#consultCity").val();
var consultantName =$("#consultantName").val();
$("#consultantList").find("li").remove();
searchConsultant(consulCityId,consultantName);
});
});
//点击模态框中的置业顾问后显示
function addConsultant(url,name,id){
var img = $("<img>").attr({"src":url,"height":100,"width":100,"style":"margin-right:50px"});
var recommendConsultant = $("<input>").attr({"type":"hidden","name":"data[recConsultant][]","value":id});
var cancel = $("<input>").attr({"type":"button","value":"删除"}).addClass("button action consultantCancel");
var span = $("<span>").attr("style","margin-right:50px").append(name);
var p = $("<p>").append(img).append(span).append(cancel).append(recommendConsultant);
$("#consultantImg").append(p);
{% if (house_type==1 or house_type==2)%}
controlCommand("consultantImg",1,1);
{% endif %}
}
})(jQuery);
</script>
\ No newline at end of file
<table class="form-table">
<tbody>
<tr>
<th><label for="feature">房源特色</label></th>
<td>
<div id="feature" class="row">
</div><br/>
<button type="button" class="button action" data-toggle="modal" data-target="#houseFeature" id="featureBt">
添加特色
</button>
</td>
</tr>
</tbody>
</table>
<script>
(function($){
{% if featureOld %}
var data = {{ featureOld }};
$.each(data,function(i,item){
addFeature(item.tag_id,item.name);
});
{% endif %}
$(document).ready(function(){
//显示选中的特色
$("#featureList").find("tr > td").click(function(){
addFeature($(this).attr("id"),$(this).text());
});
existsCancel();
});
function addFeature(id,name){
var houseFeature = $("<input>").attr({"type":"hidden","name":"data[houseFeature][]","value":id});
var cancel = $("<span>").attr("aria-hidden","true").addClass("glyphicon glyphicon-remove featureCancel ");
var span = $("<span>").attr("style","margin-right:5px").append(name);
var divCol =$("<div>").append(houseFeature).append(span).append(cancel).addClass("col-md-3").attr("style","margin-bottom:10px");
$("#feature").append(divCol);
}
})(jQuery);
</script>
\ No newline at end of file
<table class="form-table">
<tbody>
<tr>
<th><label for="traffic">推荐房源</label></th>
<td>
<div id="houseImg">
</div><br />
<button type="button" class="button action" data-toggle="modal" data-target="#myModal" id="recHouseBt">
添加房源
</button>
</td>
</tr>
</tbody>
</table>
<script>
(function($){
{% if recommends %}
var data = {{ recommends|json_encode()}};
$.each(data,function(i,item){
url = "{{siteUrl}}"+item.path;
addRecHouse(item.id,url);
});
{% endif %}
$(document).ready(function(){
var urlParams = getUrlParmas();
init_modal_houseList(addRecHouse,urlParams.page);
//删除推荐房源
$("#houseImg").on("click",".imgCancel",function(){
$(this).parents("p").remove();
});
});
function addRecHouse(data){
var recommendHouse = $("<input>").attr({"type":"hidden","name":"data[recommend][]","value":data.id});
var url = url;
var img = $("<img>").attr({"src":data.path,"height":90,"width":140,"style":"margin-right:50px"});
var cancel = $("<input>").attr({"type":"button","value":"删除"}).addClass("button action imgCancel");
var p = $("<p>").append(img).append(cancel).append(recommendHouse);
$("#houseImg").append(p);
controlCommand("houseImg",3,0);
}
})(jQuery);
</script>
\ No newline at end of file
......@@ -11,12 +11,12 @@
<div class="modal-content">
<div class="row" id="featureTable">
<div class="col-md-12">
<table class="table">
<table class="table" id="featureList">
{% for item in feature %}
{% if loop.index0%4 == 0%}
<tr>
{% endif %}
<td>{{ item.value }}</td>
<td id="{{item.id}}">{{ item.value }}</td>
{% if loop.index0%4 == 3%}
</tr>
{% endif %}
......
<br />
<div class="row">
{% if house_type == 1%}
<div class="col-md-6">
<label for="total_price">总价:</label>
<input name="total_price" id="total_price" type="text" value="{{result.total_price}}" class="form-control"> 万元
......@@ -8,4 +9,15 @@
<label for="average_price">单价:</label>
<input name="average_price" id="average_price" type="text" value="{{result.average_price}}" class="form-control">
</div>
{% elseif house_type== 2 %}
<div class="col-md-6">
<label for="rent">租金:</label>
<input name="rent" id="rent" type="text" value="{{rent.value}}" class="form-control"> 元/月
</div>
{% else %}
<div class="col-md-6">
<label for="average_price">均价:</label>
<input name="average_price" id="average_price" type="text" value="{{result.average_price}}" class="form-control">
</div>
{% endif %}
</div>
\ No newline at end of file
......@@ -2,6 +2,7 @@
<html>
<head>
{% set title = contractId?"修改合同":"添加合同" %}
{% set disabled = result?"disabled":"" %}
<meta charset="utf-8">
<title>{{title}}</title>
</head>
......@@ -14,8 +15,7 @@
<ul class="nav nav-tabs" role="tablist">
<li role="presentation" class="active"><a href="#info" aria-controls="info" role="tab" data-toggle="tab">合同信息</a></li>
<li role="presentation"><a href="#soInfo" aria-controls="soInfo" role="tab" data-toggle="tab">业主/买方信息</a></li>
<li role="presentation"><a href="#photos" aria-controls="photos" role="tab" data-toggle="tab">房源相册</a></li>
<li role="presentation"><a href="#recommend" aria-controls="recommend" role="tab" data-toggle="tab">推荐房源</a></li>
<li role="presentation" style="display: none;"><a id="houseInfo" data-toggle="tab">房源信息</a></li>
</ul>
<!-- Tab panes -->
......@@ -25,7 +25,7 @@
<div class="row">
<div class="col-md-6" class="form-control">
<label for="business">业务:</label>
<select name="business" id="business">
<select name="business" id="business" {{disabled}}>
<option value="-1">请选择</option>
<option value="0">新房</option>
<option value="1">二手房</option>
......@@ -34,31 +34,31 @@
</div>
<div class="col-md-6" class="form-control">
<label>合同编号:</label>
<label></label>
<label>{{result.contractId}}</label>
</div>
</div>
<br />
<div class="row">
<div class="col-md-6">
<label for="houseNumber">房源编号:</label>
<input name="houseNumber" id="houseNumber" type="text" value="{{result.houseNumber}}" class="form-control" disabled>
<input name="houseNumber" id="houseNumber" type="text" value="{{result.houseNumber}}" class="form-control" >
</div>
<div class="col-md-6">
<label for="address">房源地址:</label>
<input id="address" type="text" value="{{result.address}}" class="form-control" disabled style="width:60%;">
<input type="button" id="select_house" value="选择" class="form-control">
<input id="address" type="text" value="{{result.address}}" class="form-control" style="width:60%;">
<input type="button" id="select_house" value="选择" data-toggle="modal" data-target="#myModal" class="form-control" {{disabled}}>
</div>
</div>
<br />
<div class="row">
<div class="col-md-6">
<label for="customerNumber">客源编号:</label>
<input id="customerNumber" name="customerNumber" type="text" value="{{result.customerNumber}}" class="form-control" disabled style="width:60%;">
<input type="button" id="customerNumber" value="选择" class="form-control">
<input id="customerNumber" name="customerNumber" type="text" value="{{result.customerNumber}}" class="form-control" style="width:60%;">
<input type="button" id="customerNumber" value="选择" class="form-control" {{disabled}}>
</div>
<div class="col-md-6">
<label for="signedDate">签约日:</label>
<input name="signedDate" id="signedDate" type="date" value="{{result.signedDate}}" class="form-control">
<input name="signedDate" id="signedDate" type="date" value="{{result.signedDate}}" class="form-control" {{disabled}}>
</div>
</div>
<br />
......@@ -76,12 +76,14 @@
<div class="row">
<div class="col-md-6">
<label for="price">合同金额:</label>
<input name="price" id="price" type="text" value="{{result.price}}" class="form-control">
<input name="price" id="price" type="text" value="{{result.price}}" class="form-control" {{disabled}}>
</div>
<div class="col-md-6">
<label for="managerId">主管:</label>
<select name="managerId" id="managerId" class="form-control">
<select name="managerId" id="managerId" class="form-control" {{disabled}}>
{% for item in managers %}
<option value="{{item.ID}}">{{item.display_name}}</option>
{% endfor%}
</select>
</div>
</div>
......@@ -166,14 +168,6 @@
</div>
</div>
</div>
<div role="tabpanel" class="tab-pane" id="business">
</div>
<div role="tabpanel" class="tab-pane" id="owner">
</div>
<div role="tabpanel" class="tab-pane" id="photos">
</div>
<div role="tabpanel" class="tab-pane" id="recommend">
</div>
</div>
</div>
<div class="col-md-2">
......@@ -181,14 +175,45 @@
<input type="submit" id="submit" class="button action" style="position: fixed;">
</div>
</div>
</form>
<script>
(function($){
$(document).ready(function(){
{% if result %}
$("#business").val({{result.business}});
{% endif %}
$("#select_house").click(function(){
init_modal_houseList(selectHouse,$("#business").val());
});
});
function selectHouse(data){
$("#address").val(data.address);
var houseType = $("#business").val();
if(houseType != -1){
$("#houseInfo").parent().show();
switch(houseType){
case "0":
houseType = "newHouse";
break;
case "1":
houseType = "secHandHouse";
break;
case "2":
houseType = "rentHouse";
break;
}
$("#houseInfo").unbind().click(function(){
window.open("{{adminUrl}}admin.php?page="+houseType+"&edit=true&id="+data.id);
});
}
close_modal_houseList();
}
})(jQuery);
</script>
{% include 'recommendHouse.html' %}
{{ block('recommendHouse') }}
</body>
</html>
\ No newline at end of file
{{function("Contract_List::displayTable")}}
\ No newline at end of file
label.my-error-class {
padding-left: 16px;
padding-bottom: 2px;
font-weight: bold;
color: #EA5200;
}
\ No newline at end of file
......@@ -65,9 +65,8 @@
<option value="南"></option>
<option value="西">西</option>
<option value="北"></option>
<option value="东西">东西</option>
<option value="南北">南北</option>
<option value="南南">南南</option>
<option value="东西">东西</option>
<option value="东南">东南</option>
<option value="东北">东北</option>
<option value="西南">西南</option>
......@@ -76,29 +75,14 @@
</div>
<div class="col-md-6">
<label for="age">建筑年代:</label>
<!--<input name="age" type="text" value="{{result.age}}" class="form-control">-->
<select name="age" class="form-control">
<option>未知</option>
{% for item in age%}
<option {{ item == result.age?"selected":"" }}value="{{item}}">{{item}}</option>
{% endfor %}
<select name="age" id="pageAge" class="form-control">
<option value="未知">未知</option>
</select>
</div>
</div>
<br />
<div class="row">
<div class="col-md-6">
<label for="address">小区名称:</label>
<input name="community_name" type="text" value="{{result.community_name}}" class="form-control">
</div>
<div class="col-md-6">
<label for="suite">门牌号码:</label></th>
<input name="suite" type="text" value="{{result.suite}}" class="form-control">
</div>
</div>
<br />
<div class="row">
<div class="col-md-6">
<label for="from">户型:</label>
<select name="roomNum" class="form-control">
<option value="0">0</option>
......@@ -228,6 +212,17 @@
<br />
<div class="row">
<div class="col-md-6">
<label for="entrustDay">委托日:</label>
<input type="text" name="entrustDay" id="entrustDay" value="{{result.entrustDay}}" class="form-control">
</div>
<div class="col-md-6">
<label for="deadLine">到期日:</label>
<input name="deadLine" type="text" id="deadLine" value="{{result.deadLine}}" class="form-control">
</div>
</div>
<br />
<div class="row">
<div class="col-md-6">
<label for="street">街道:</label>
<input type="text" name="street" value="{{result.street}}" class="form-control">
</div>
......
(function($){
//城市区域联动
function setCity(){
$("#baseCity").change(function(){
var cityId = $("#baseCity").val();
var baserArea = $("#baseAreaId");
$('#baseAreaId').find('option:not(:first-child)').remove();
$('#basePlateId').find('option:not(:first-child)').remove();
//城市联动区域
searchCity(cityId,baserArea)
});
}
//区域联动板块
function setArea(){
$("#baseAreaId").change(function(){
var basePlate = $("#basePlateId");
var areaId = $("#baseAreaId").val();
var cityId = $("#baseCity").val();
$('#basePlateId').find('option:not(:first-child)').remove();
searchArea(cityId,areaId,basePlate);
});
}
//搜索城市的方法
function searchCity(cityId,optionId){
$.ajax({
type: "GET",
url: "/tospur/wp-admin/admin-ajax.php",
data: "action=serachCity&cityId="+cityId,
success:function(json){
addOption(json,optionId);
}
});
}
//搜索区域的方法
function searchArea(cityId,areaId,optionId){
$.ajax({
type: "GET",
url: "/tospur/wp-admin/admin-ajax.php",
data: "action=serachCity&cityId="+cityId+"&districtId="+areaId,
success:function(json){
addOption(json,optionId);
}
});
}
function existsCancel(){
$("#preview,#houseImg,#feature").on("click",".existsCancel,.featureCancel",function(){
$(this).parent().remove();
});
}
//租房与二手房中钥匙与车库的选项
function setCheckBox(){
$("input[id='keyCheck']").change(function(){
textDisable("keyCheck","key");
});
$("input[id='garageCheck']").change(function(){
textDisable("garageCheck","garage");
});
}
//控制当二手房租房中钥匙与车库被勾选时,后面的文本域可使用
function textDisable(checkId,textId){
if($('input[id="'+checkId+'"]:checked').length > 0){
$("#"+textId).removeAttr("disabled");
}else{
$("#"+textId).attr("disabled","true");
}
}
//搜索置业顾问的方法
function searchConsultant(consulCityId,consultantName){
$.ajax({
type: "GET",
......@@ -15,4 +92,92 @@
}
});
}
})(jQuery);
\ No newline at end of file
//往给定id的select中添加option
function addOption(json,select){
var selectId = select.attr("id");
for(var i = 0; i <=json.length-1; i++){
var id = json[i]["id"];
var value = json[i]["value"];
if(selectId == "acreage" || selectId == "price"){
id = value;
}
var Option = $("<option>").attr({"value": id}).append(value);
select.append(Option);
}
}
//控制推荐房源与置业顾问的个数
function controlCommand(id,number,type){
var num = $("#"+id+" > p").length;
if(num>number){
if(type==0){
alert("最多只能推荐3个房源");
}else if(type==1){
alert("您只能推荐一位置业顾问");
}
$("#"+id).find("p:last-child").remove();
}
}
function getUrlParmas(){
var href = location.search.substr(1,location.search.length-1);
var params = href.split("&");
var map = {};
for(item in params){
var key = params[item].split("=")[0] || "";
var value = params[item].split("=")[1] || "";
map[key] = value;
}
return map;
}
function setDate(id){
$("#"+id).datepicker({
dateFormat: "yy-mm-dd"
});
}
//建筑年代的下拉框
function setAge(){
for(var i = 1981; i<= 2020; i++){
var option = $("<option>").append(i);
$("#pageAge").append(option);
}
}
//租房二手房中,修改界面下拉框的信息还原
function revertOption(data){
$.each(data,function(i,item){
$("form").find("select[name='"+i+"']").val(item);
});
}
//搜索面积的方法
function searchAcreage(cityId,optionId){
$.ajax({
type: "GET",
url: "/tospur/wp-admin/admin-ajax.php",
data: "action=searchArea&cityId="+cityId,
success:function(json){
addOption(json,optionId);
}
});
}
//搜索单价的方法
function searchPrice(cityId,optionId){
$.ajax({
type: "GET",
url: "/tospur/wp-admin/admin-ajax.php",
data: "action=searchUnitPriceRange&cityId="+cityId,
success:function(json){
addOption(json,optionId);
}
});
}
<div id="preview">
{% set exists_ids = "" %}
{% for item in mainImage %}
{% if exists_ids != "" %}
{% set exists_ids = exists_ids~"," %}
{% endif %}
{% set exists_ids = exists_ids~item.id %}
<div>
<img src="{{siteUrl}}{{item.path}}" height="90" width="140" style="margin-right: 50px;margin-top:10px">
<select name="exists[{{item.id}}][buildProperty]" style="margin-right: 50px">
{% for i in buildProperty %}
<option {{ i.id == item.buildproperty_id?"selected":"" }} value="{{i.id}}">{{i.value}}</option>
{% endfor %}
</select>
<input type="text" placeholder="面积" name="exists[{{item.id}}][housearea]" class="form-control" value="{{item.area}}" style="width: 100px;display:inline-block; margin-right: 50px">
<input type="button" value="删除" class="button action cancel existsCancel" style="margin-top: 30px">
</div>
{% endfor %}
<p></p>
<input type="hidden" name="exists_ids" value="{{exists_ids}}" >
<input type="file" name="files[0]" property="0" class = "files"multiple class="browser button button-hero">
</div>
<script>
(function($){
$(document).ready(function(){
$("form").on("change",".files",function(){
mainHouse(this,i);
$(this).hide();
i++;
});
$("#preview").on("click",".cancel",function(){
$(this).parent("div").remove();
});
});
//显示主力户型
function mainHouse(input,i){
var reader = new FileReader();
reader.onload = function (e) {
var img = $("<img>").attr({"id":"target","src":e.target.result,"height":90,"width":140,"style":"margin-right:50px;margin-top:10px"});
var button = $("<input>").attr({"type":"button","value":"删除","property":+i,"id":+i}).addClass("button action cancel");
var type = $("<input>").attr({"type":"hidden","name":"data["+i+"][type]","value":4,"property":+i});
var mainHousePic = $("<input>").attr({"type":"hidden","name":"data["+i+"][mainHouse]","value":0,"property":+i});
var file = $("<input>").attr({"type":"file","name":"files["+(i+1)+"]","property":+(i+1)}).addClass("files");
var select = $("<select>").attr({"name":"data["+i+"][buildProperty]","style":"margin-right:50px"});
{% for item in buildProperty %}
select.append($("<option>").attr("value",{{item.id}}).append('{{item.value}}'));
{% endfor%}
var areatext = $("<input>").attr({"type":"text","placeholder":"面积","name":"data["+i+"][housearea]","style":"width: 100px;display:inline-block;margin-right:50px"}).addClass("form-control");
var div = $("<div>").attr({"property":+i}).append(img).append(select).append(areatext).append(button).append(type).append(mainHousePic);
$("form").find("#preview > p").after(file);
$("#preview > p").append(div);
}
reader.readAsDataURL(input.files[0]);
}
})(jQuery);
</script>
\ No newline at end of file
<br />
<div class="row">
<div class="col-md-12">
<label for="housename">城市:</label>
<select id="baseCity" name="baseCity" class="form-control">
<option value="-1"> 城市</option>
{% for item in city %}
<option {{ item.id == result.city_id?"selected":"" }} value="{{ item.id }}">{{ item.value }}</option>
{% endfor %}
</select>
<select id="baseAreaId" name="baseAreaId" class="form-control">
<option value = "-1">区域</option>
{% if district %}
{% for item in district %}
<option {{ item.id == result.district_id?"selected":"" }} value="{{ item.id }}">{{ item.value }}</option>
{% endfor %}
{% endif %}
</select>
<select id="basePlateId" name="basePlateId" class="form-control">
<option value = "-1">板块</option>
{% if district %}
{% for item in plate %}
<option {{ item.id == result.plate_id?"selected":"" }} value="{{ item.id }}">{{ item.value }}</option>
{% endfor %}
{% endif %}
</select>
</div>
</div>
<br />
<div class="row">
<div class="col-md-12">
<label for="address">地址:</label>
<input name="address" type="text" value="{{result.address}}" class="form-control" style="width:80%;">
</div>
</div>
<br />
<div class="row">
<div class="col-md-6">
<label for="address">小区名称:</label>
<input name="community_name" type="text" value="{{result.community_name}}" class="form-control">
</div>
<div class="col-md-6">
<label for="developers">开发商:</label>
<input name="developers" type="text" value="{{result.developer}}" class="form-control" >
</div>
</div>
<br />
<div class="row">
<div class="col-md-6">
<label for="check_in_time">入住时间:</label>
<input name="check_in_time" id="checkin" type="text" value="{{result.check_in_time}}" class="form-control" >
</div>
<div class="col-md-6">
<label for="property_age">产权年限:</label>
<input name="property_age" type="text" value="{{result.property_age}}" class="form-control" >
</div>
</div>
<br />
<div class="row">
<div class="col-md-6">
<label for="developers">建筑类型:</label>
<select id="baseRoom" name="baseRoom" class="form-control">
{% for item in room %}
<option {{ item.id == result.room_id?"selected":"" }} value="{{ item.id }}">{{ item.value }}</option>
{% endfor %}
</select>
</div>
<div class="col-md-6">
<label for="decoration">装修程度:</label>
<select name="decoration" class="form-control">
<option value="毛坯">毛坯</option>
<option value="简单装修">简单装修</option>
<option value="中等装修">中等装修</option>
<option value="精装修">精装修</option>
<option value="豪华装修">豪华装修</option>
</select>
</div>
</div>
<br />
<div class="row">
<div class="col-md-6">
<label for="covered_area">建筑面积:</label>
<input name="covered_area" type="text" value="{{result.covered_area}}" class="form-control" >平方米
</div>
<div class="col-md-6">
<label for="households">规划户数:</label>
<input name="households" type="text" value="{{result.households}}" class="form-control" >
</div>
</div>
<br />
<div class="row">
<div class="col-md-6">
<label for="volume_rate">容积率:</label>
<input name="volume_rate" type="text" value="{{result.volume_rate}}" class="form-control">
</div>
<div class="col-md-6">
<label for="greening_rate">绿化率:</label>
<input name="greening_rate" type="text" value="{{result.greening_rate}}" class="form-control" >
</div>
</div>
<br />
<div class="row">
<div class="col-md-6">
<label for="property_management">物业公司:</label></th>
<input name="property_management" type="text" value="{{result.property_management}}" class="form-control" >
</div>
<div class="col-md-6">
<label for="property_money">物业费:</label>
<input name="property_money" type="text" value="{{result.property_money}}" class="form-control">
</div>
</div>
<br />
<div class="row">
<div class="col-md-6">
<label for="parking_spaces">车位数:</label>
<input name="parking_spaces" type="text" value="{{result.parking_spaces}}" class="form-control" >
</div>
<div class="col-md-6">
<label for="periphery">周边配套:</label>
<input name="periphery" type="text" value="{{result.periphery}}" class="form-control">
</div>
</div>
<br />
<div class="row">
<div class="col-md-6">
<label for="traffic">交通线路:</label>
<input name="traffic" type="text" value="{{result.traffic}}" class="form-control">
</div>
<div class="col-md-6">
<label for="location">地域坐标:</label>
<input name="location" id="location" type="text" value="{{result.location}}" class="form-control">
</div>
</div>
<br />
<div class="row">
<div class="col-md-12">
<label for="overview">最新动态:</label>
<textarea name="overview" rows="4" cols="60" class="form-control">{{result.overview}}</textarea>
</div>
</div>
<br />
<div class="row">
<div class="col-md-12">
<label for="overview">楼盘概述:</label>
<textarea name="overview" rows="4" cols="60" class="form-control">{{result.overview}}</textarea>
</div>
</div>
......@@ -30,6 +30,7 @@
</td>
<td>
<input type="button" value="删除" class="button action cancel existsCancel">
</td>
</div>
</tr>
{% endfor %}
......@@ -44,20 +45,19 @@
(function($){
$(document).ready(function(){
//新增房源相册
var j = 0;
$("#housePicture").click(function(){
var tr = $("<tr>");
var td = $("<td>");
var select = $("<select>").attr({"name":"data["+j+"][type]"}).addClass("form-control");
var select = $("<select>").attr({"name":"data["+i+"][type]"}).addClass("form-control");
{% for item in photoType %}
select.append($("<option>").attr("value",{{item.id}}).append('{{item.value}}'));
{% endfor%}
var td1 = td.clone().append(select);
var file = $("<input>").attr({"type":"file","name":"files["+j+"]"}).addClass("picFiles form-control");
var file = $("<input>").attr({"type":"file","name":"files["+i+"]"}).addClass("picFiles form-control");
var td2 = td.clone().append(file);
var radio = $("<input>").attr({"type":"radio","name":"frontCover","value":j}).addClass("form-control");
var radio = $("<input>").attr({"type":"radio","name":"frontCover","value":i}).addClass("form-control");
var td3 = td.clone().append(radio);
var picDelet = $("<input>").attr({"type":"button","value":"删除"}).addClass("button action existsCancel form-control");
......@@ -67,7 +67,7 @@
$("#photosTbody").append(tr);
j++
i++
});
$("#photosTbody").on("change",".picFiles",function(){
var that = this;
......
{% block recConsultant %}
<div class="modal fade" id="myConsultant" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-body" style="height: 300px;overflow: auto;">
<select id="consultCity">
<option value=""> 城市</option>
{% for item in city %}
<option value="{{ item.id }}">{{ item.value }}</option>
{% endfor %}
</select>
<input type="text" placeholder="请出入置业顾问姓名搜索" id="consultantName" class="form-control">
<button type="button" class="button action" id="searchConsult">搜索</button>
<ul id="consultantList">
</ul>
</div>
</div>
</div>
</div>
{% endblock %}
\ No newline at end of file
{% block recommendHouse %}
<!-- 新增房源弹出层 -->
<div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<div class="row">
<div class="col-md-3">
<select id="cityId" class="form-control">
<option value="-1"> 城市</option>
{% for item in city %}
<option value="{{ item.id }}">{{ item.value }}</option>
{% endfor %}
</select>
</div>
<div class="col-md-3">
<select id="areaId" class="form-control">
<option value = "-1">区域</option>
</select>
</div>
<div class="col-md-3">
<select id="plateId" class="form-control">
<option value = "-1">板块</option>
</select>
</div>
<div class="col-md-3">
<select id="price" class="form-control">
<option value = "-1">价格</option>
</select>
</div>
<div class="col-md-3">
<select id="buildProperty" class="form-control">
<option value = "-1">房型</option>
{% for item in buildProperty %}
<option value="{{ item.id }}">{{ item.value }}</option>
{% endfor %}
</select>
</div>
<div class="col-md-3">
<select id="room" class="form-control">
<option value = "-1">类型</option>
{% for item in room %}
<option value="{{ item.id }}">{{ item.value }}</option>
{% endfor %}
</select>
</div>
<div class="col-md-3">
<select id="acreage" class="form-control">
<option value = "-1">面积</option>
</select>
</div>
<div class="col-md-6">
<input type="text" placeholder="请出入楼盘名/地段名搜索" id="searchtext" class="form-control">
</div>
<div class="col-md-2">
<button type="button" class="button action" id="search">搜索</button>
</div>
</div>
</div>
<div class="modal-body " style="height: 500px;overflow: auto;">
<ul id="modal_houseList">
</ul>
</div>
</div>
</div>
</div>
<script>
function close_modal_houseList(){
$("#myModal").modal('hide');
}
function init_modal_houseList(callback,houseType){
judgeHouseType(houseType);
$("#myModal").on("shown.bs.modal",function(){
setCityArea();
});
$("#cityId,#areaId,#plateId,#buildProperty,#room,#acreage,#price").change(function(){
judgeHouseType(houseType);
});
//添加房源中搜索框的搜索
$("#search").click(function(){
judgeHouseType(houseType);
});
//将推荐房源模态框中选中的房源显示到界面中
$("#modal_houseList").on("click",".row",function(){
callback($(this).data());
});
};
function setCityArea(){
var acreage =$("#acreage");
var price = $("#price");
var city = $("#cityId");
var area = $("#areaId");
var plate = $('#plateId');
if($("#baseCity").length>0){
var cityId = $("#baseCity").val();
$("#cityId").val(cityId);
}else{
var cityId = city.val();
}
city.change(function(){
area.find('option:not(:first-child)').remove();
plate.find('option:not(:first-child)').remove();
searchCity($(this).val(),area)
});
area.change(function () {
var cityId = city.val();
var areaId = area.val();
$("#modal_houseList").find(".row").remove();
plate.find('option:not(:first-child)').remove();
searchArea(cityId, areaId, plate)
});
//城市面积联动
searchAcreage(cityId, acreage);
//城市联动房子价格
searchPrice(cityId, price);
}
function judgeHouseType(type){
if($.isNumeric(type)){
addList(type);
return;
}
if(type == "newHouse"){
addList(0);
}else if(type == "secHandHouse"){
addList(1);
}else if(type == "rentHouse"){
addList(2);
}
}
function addList(houseType){
var params = {
action:"searchHouse",
cityId:$("#cityId").val(),
districtId:$("#areaId").val(),
plateId:$("#plateId").val(),
buildPropertyId:$("#buildProperty").val(),
roomId:$("#room").val(),
acreage:$("#acreage").val(),
totalPrice:$("#price").val(),
searchText:$("#searchtext").val(),
houseType:houseType
};
$.ajax({
type: "post",
url: "/tospur/wp-admin/admin-ajax.php",
data: params,
success:function(json){
$("#modal_houseList").find(".row").remove();
var result = json.result;
var urlParams = getUrlParmas();
for(var i = 0; i <result.length; i++){
var item = result[i];
var name = item["name"];
var id = item['id'];
var imgUrl = item['path'];
var row = $("<div>").addClass("row").css("margin-bottom","10px");
var left = $("<div>").addClass("col-md-3");
var img = $("<img>").attr({"src":imgUrl,"height":90,"width":140,"style":"margin-right:50px"});
left.append(img);
var right = $("<div>").addClass("col-md-3");
var label = $("<label>").append(name);
right.append(label);
row.append(left).append(right).data(item);
if(urlParams["id"]!=id){
$("#modal_houseList").append(row);
}
}
}
});
}
</script>
{% endblock %}
\ No newline at end of file
<?php
class ContractDao {
public static function insert($params){
global $wpdb;
$wpdb->insert(Config::TOSPUR_CONTRACT,$params);
if($wpdb->insert_id){
return $wpdb->insert_id;
}
return $wpdb->last_error;
}
public static function setContractId($id,$contractId){
global $wpdb;
$result = $wpdb->update(Config::TOSPUR_CONTRACT,array(
"contractId" => $contractId
),array(
"id" => $id
));
if($result){
return $result;
}else{
return $wpdb->last_error;
}
}
public static function update($id,$params){
global $wpdb;
$result = $wpdb->update(Config::TOSPUR_CONTRACT,$params,array(
"id" => $id
));
if($result){
return $result;
}else{
return $wpdb->last_error;
}
}
public static function searchContract($id){
global $wpdb;
$sql = "select * from ".Config::TOSPUR_CONTRACT." where id = %d;";
$result = $wpdb->get_row($wpdb->prepare($sql,$id));
if($result){
return $result;
}else{
return $wpdb->last_error;
}
}
}
\ No newline at end of file
......@@ -147,7 +147,7 @@ class InsertDao{
"house_area" => $data["$key"]["housearea"],
"image_id" => $imgid
);
$houseTypeAreaRes = $wpdb->insert('a_district_area', $houseTypeArea);
$houseTypeAreaRes = $wpdb->insert(Config::A_DISTRICT_AREA_TABLE, $houseTypeArea);
if (!$houseTypeAreaRes) {
return 502;
}
......@@ -157,7 +157,7 @@ class InsertDao{
'house_id' => $houseId,
'image_id' => $imgid,
);
$houseImgRes = $wpdb->insert('a_house_image', $house_img_array);
$houseImgRes = $wpdb->insert(Config::A_HOUSE_IMAGE_TABLE, $house_img_array);
if (!$houseImgRes) {
return 503;
}
......@@ -232,7 +232,7 @@ class InsertDao{
//房源的标签id数组
$tags_ids = array();
//查询存在的标签
$sql = "select * from tospur_tag where name in " . $tags_string." and type=0";
$sql = "select * from ".Config::TOSPUR_TAG_TABLE." where name in " . $tags_string." and type=0";
$has_tags_result = $wpdb->get_results($sql);
//排除存在的标签,剩下未有的标签和存在标签id数组
foreach ($has_tags_result as $key => $value) {
......
......@@ -93,8 +93,7 @@ class TospurDao
public static function search_consultant_info($consultant_id)
{
global $wpdb;
$sql = 'select c.*,u.display_name,s.average_score from ' . Config::TOSPUR_CONSULTANT . ' c ' .
'left join ' . Config::WP_USERS_TABLE . ' u on c.id = u.ID ' .
$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 ' .
'on c.id = s.consultant_id where c.id = ' . $consultant_id;
return $wpdb->get_row($sql);
......@@ -146,10 +145,9 @@ class TospurDao
public static function search_consultant_by_city($city_id, $index)
{
global $wpdb;
$consultant_sql = 'select c.*,u.display_name,s.average_score from ' . Config::TOSPUR_CONSULTANT . ' c ' .
'left join ' . Config::WP_USERS_TABLE . ' u on c.id = u.ID ' .
$consultant_sql = 'select c.id, c.mobile, c.imageUrl, c.name as display_name, 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 . ' where valid=1 group by consultant_id) s on c.id = s.consultant_id ' .
'where cityid = ' . $city_id . ' LIMIT ' . $index . ',20;';
'where c.cityid = ' . $city_id . ' LIMIT ' . $index . ',20;';
return $wpdb->get_results($consultant_sql);
}
......
......@@ -22,6 +22,7 @@ class TCSync {
$user = get_user_by( "login", $item['WorkNum'] );
$userdata = array(
'ID' => $user->data->ID,
'role' => 'author',
'display_name' => $item['Name']
);
$user_id = wp_update_user( $userdata ) ;
......@@ -29,8 +30,7 @@ class TCSync {
$userdata = array(
'user_login' => $item['WorkNum'],
'user_pass' => $item['WorkNumAndID'], // When creating an user, `user_pass` is expected.
'role' => 'editor',
'wp_user_level' => 7,
'role' => 'author',
'display_name' => $item['Name']
);
$user_id = wp_insert_user( $userdata ) ;
......
......@@ -30,6 +30,9 @@ function tospur_init()
require_once(PLUGIN_DIR . 'Admin/consultant_score.php');
require_once(PLUGIN_DIR . 'Admin/view_house.php');
require_once(PLUGIN_DIR . 'Admin/tospur_sale.php');
require_once(PLUGIN_DIR . 'Admin/TCSyncView.php');
require_once(PLUGIN_DIR . 'Admin/Contract_List.php');
add_action('admin_menu', 'reset_menu');
tospur_register_script_style();
tospur_ajax_set();
......@@ -75,24 +78,27 @@ function tospur_theme_format(){
function tospur_load_resources(){
wp_enqueue_script('jqueryjs');
wp_enqueue_script('jquery-ui');
wp_enqueue_script('bootstrapjs');
wp_enqueue_script('publicjs');
wp_enqueue_script('validate');
wp_enqueue_style('jquery-ui_css');
wp_enqueue_style('publicCss');
wp_enqueue_style('bootstrapMinCss');
}
function tospur_register_script_style(){
wp_register_script('jqueryjs',plugins_url('Admin/views', __FILE__)."/js/jquery.min.js");
wp_register_script('jquery-ui',plugins_url('Admin/views', __FILE__)."/js/jquery-ui.js");
wp_register_script('validate',plugins_url('Admin/views', __FILE__)."/js/jquery.validate.js");
wp_register_script('bootstrapjs',plugins_url('Admin/views', __FILE__)."/js/bootstrap.min.js");
wp_register_script('publicjs',plugins_url('Admin/views', __FILE__)."/js/public.js");
wp_register_style('jquery-ui_css', plugins_url('Admin/views', __FILE__)."/css/jquery-ui.css");
wp_register_style('bootstrapcss', plugins_url('Admin/views', __FILE__)."/css/bootstrap.css");
wp_register_style('publicCss', plugins_url('Admin/views', __FILE__)."/css/public.css"); wp_register_style('bootstrapcss', plugins_url('Admin/views', __FILE__)."/css/bootstrap.css");
wp_register_style('bootstrapMinCss', plugins_url('Admin/views', __FILE__)."/css/bootstrap.min.css");
}
......@@ -159,16 +165,18 @@ function update_consultant()
function reset_menu()
{
add_menu_page("sync", "同步数据", "manage_options", "1", "do_sync");
add_menu_page('nesHouseList','新房列表', 'moderate_comments', 'newHouseList', 'function_newHouseList', 'dashicons-menu', 6);
add_submenu_page('newHouseList', '添加新房', '添加新房', 'moderate_comments', 'newHouse', 'House::init_view');
add_menu_page('secHandHouseList','二手房列表', 'moderate_comments', 'secHandHouseList', 'function_secHandHouseList', 'dashicons-menu', 7);
add_submenu_page('secHandHouseList', '添加二手房', '添加二手房', 'moderate_comments', 'secHandHouse', 'SecHandHouse::secHandHouse_html');
add_submenu_page('secHandHouseList', '添加特色', '添加特色', 'moderate_comments', 'add_feature', 'feature::add_feature_html');
add_menu_page('rentHouseList','租房列表', 'moderate_comments', 'rentHouseList', 'function_rentHouseList', 'dashicons-menu', 8);
add_submenu_page('rentHouseList', '添加租房', '添加租房', 'moderate_comments', 'rentHouse', 'RentHouse::rentHouse_html');
add_menu_page("introduction", "诚信宣言", "editor", "introduction", "introduction::introduction_html", 'dashicons-menu', 9);
add_menu_page('contract','合同管理', 'moderate_comments', 'contract', 'Contract::init_view', 'dashicons-menu', 10);
add_menu_page('新房列表','新房列表', 'edit_published_posts', 'newHouseList', 'function_newHouseList', 'dashicons-menu', 6);
add_submenu_page('newHouseList', '添加新房', '添加新房', 'edit_published_posts', 'newHouse', 'House::init_view');
add_menu_page('二手房列表','二手房列表', 'moderate_comments', 'secHandHouseList', 'function_secHandHouseList', 'dashicons-menu', 7);
add_submenu_page('secHandHouseList', '添加二手房', '添加二手房', 'edit_published_posts', 'secHandHouse', 'SecHandHouse::secHandHouse_html');
add_submenu_page('secHandHouseList', '添加特色', '添加特色', 'edit_published_posts', 'add_feature', 'feature::add_feature_html');
add_menu_page('租房列表','租房列表', 'edit_published_posts', 'rentHouseList', 'function_rentHouseList', 'dashicons-menu', 8);
add_submenu_page('rentHouseList', '添加租房', '添加租房', 'edit_published_posts', 'rentHouse', 'RentHouse::rentHouse_html');
add_menu_page("诚信宣言", "诚信宣言", "author", "introduction", "introduction::introduction_html", 'dashicons-menu', 9);
add_menu_page('合同列表','合同列表', 'edit_published_posts', 'contractList', 'Contract_List::showTableView', 'dashicons-menu', 10);
add_submenu_page('contractList', '合同管理', '合同管理', 'moderate_comments', 'contract', 'Contract::init_view');
add_menu_page("同步数据", "同步数据", "manage_options", "sync", "TCSyncView::display", 'dashicons-menu');
//移除更新信息
remove_action( 'admin_notices', 'update_nag', 3 );
global $menu;
......@@ -200,11 +208,4 @@ function reset_menu()
}
}
}
}
function do_sync()
{
TCSync::user_sync();
TCSync::organization_sync();
TCSync::other_sync();
}
}
\ No newline at end of file
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