您的位置:首页 > 其它

明源售楼系统技术解析(五)开发商销控、客户自助查询

2015-06-03 19:34 746 查看

1、开发商销控

1.1主界面截图:



1.1图(1)

1.2主界面代码:

<div id="w开发商销控" class="easyui-window" title="开发商销控" data-options="fit:true" style="width:1108px;height:585px">
<div class="easyui-layout" data-options="fit:true" style="width:1108px;height:505px">
<div data-options="region:'north'" style="width:1108px;height:30px">
<table>
<tr>
<td>项目名称</td><td><input class="easyui-combobox" id="comXiangMuMC" data-options="onSelect:onXiangMuSelect"  style="width:150px" /></td>
<td style="width:20px"></td>
<td>项目分区</td><td><input class="easyui-combobox" id="comXiangMuFQ" data-options="onSelect:onXiangMuFenQuSelect"  style="width:150px" /></td>
<td style="width:20px"></td>
<td>楼栋</td><td><input class="easyui-combobox" id="comXiangLD" data-options="onSelect:onChangeHouse"   style="width:150px" /></td>
<td style="width:20px"></td>

<td><a id="LouPanSouShuo" href="../XiaoShouQianTai/KaiFaShangXiaoKong" class="easyui-linkbutton">刷新</a></td>
<td><a id="ShuaXin" onclick="" class="easyui-linkbutton">顺序显示</a></td>
<td><a id="YiXiangChaXun" onclick="OpenChuangTi('#w意向查询')" class="easyui-linkbutton">意向查询</a></td>
<td><a id="LouPanSouShuo" onclick="" class="easyui-linkbutton">多楼栋</a></td>
<td><a id="ShuaXin" onclick="" class="easyui-linkbutton">关闭</a></td>
</tr>
</table>
</div>
<div data-options="region:'center'" style="width:1108px;height:475px">
<div class="easyui-layout" data-options="fit:true" style="width:1108px;height:585px">
<div data-options="region:'west'" style="width:650px;height:432px">
<table id="tbFangJianZiLiao" class="easyui-datagrid"
data-options="singleSelect:true,onClickCell:onClickRoom">

</table>
</div>
<div data-options="region:'east'" style="width:550px;height:432px">
<fieldset style="padding:5px;border:1px solid #C0C0C0;width:480px;height:250px;margin-left:15px;" >
<legend>房间资料</legend>
<table>
<tr>
<td>房间</td> <td colspan=2><input id="fangjian" style="width:130px" /></td>
</tr>
<tr>
<td>销售状态</td> <td colspan=2><input id="xiaoshouzhuangtai" style="width:80px" /></td>
</tr>
<tr>
<td>房间类型</td> <td colspan=2><input id="fangjianleixing" style="width:80px" /></td>
<td>朝向</td> <td colspan=2><input id="chaoxiang" style="width:80px" /></td>
</tr>
<tr>
<td>建筑面积</td> <td><input id="jianzhumianji" style="width:80px" /></td> <td>平米</td>
<td>建筑实测</td> <td><input id="jianzhushice" style="width:80px" /></td> <td>平米</td>
</tr>
<tr>
<td>套内面积</td> <td><input id="taoneimianji" style="width:80px" /></td> <td>平米</td>
<td>套内实测</td> <td><input id="taoneishice" style="width:80px" /></td> <td>平米</td>
</tr>
<tr>
<td>标准单价</td> <td><input id="biaozhundanjia" style="width:80px" /></td> <td>元/平米</td>
<td>套内单价</td> <td><input id="taoneidanjia" style="width:80px" /></td> <td>元/平米</td>
</tr>
<tr>
<td>标准总价</td> <td><input id="biaozhunzongjia" style="width:80px" /></td> <td>元</td>
</tr>
</table>
</fieldset>

<div id="menu" class="easyui-menu" style="width: 30px; display: none;">
<!--放置一个隐藏的菜单Div-->
<div id="btn_WeiShou" data-options="iconCls:'icon-remove'" onclick="sahj()">1.未售状态</div>
<!--具体的菜单事件请自行添加,跟toolbar的方法是基本一样的-->
<div id="btn_BaoLiu" data-options="iconCls:'icon-edit'"onclick="bl()">2.保留状态</div>@*菜单选项*@
<div id="btn_YuLiu" data-options="iconCls:'icon-edit'"onclick="yl()">3.预留状态</div>
<div id="btn_YuDing" data-options="iconCls:'icon-edit'"onclick="yd()">4.预定状态</div>
<div id="btn_RenGou" data-options="iconCls:'icon-edit'"onclick="yy()">5.认购状态</div>
<div id="btn_QianYue" data-options="iconCls:'icon-edit'"onclick="qy()">6.签约状态</div>
</div>

<table id="tbFangJianSuoYouZiLiao" class="easyui-datagrid"
data-options="singleSelect:true@*,onRowContextMenu:YouJian*@" style="width:1px;height:1px;">
<thead>
<tr>
<th data-options="field:'RoomDataID',width:50,hidden:true, align:'center'">房间资料ID</th>
<th data-options="field:'FangHao',width:50,hidden:true, align:'center'">房号</th>
<th data-options="field:'SellStatusName',width:50,hidden:true, align:'center'">销售状态名称</th>
<th data-options="field:'RoomType',width:50,hidden:true, align:'center'">房间类型</th>
<th data-options="field:'RoomFaceDirection',width:50,hidden:true, align:'center'">朝向</th>
<th data-options="field:'CoveredArea',width:50,hidden:true, align:'center'">套内面积</th>
<th data-options="field:'BuildingMeasurement',width:50,hidden:true, align:'center'">建筑实测</th>
<th data-options="field:'BuilDingExceptArea',width:50,hidden:true, align:'center'">建筑面积</th>
<th data-options="field:'CoverInnerMeasurement',width:50,hidden:true, align:'center'">套内实测</th>
<th data-options="field:'CoverInnerUnivalent',width:50,hidden:true, align:'center'">套内面积单价</th>
<th data-options="field:'BuildingUnivalent',width:50,hidden:true, align:'center'">建筑面积单价</th>
<th data-options="field:'BiaoZhunZongJia',width:50,hidden:true, align:'center'">标准总价</th>
<th data-options="field:'XiaoShouJiaID',width:50,hidden:true, align:'center'">销售状态ID</th>
</tr>
</thead>
</table>

<fieldset style="padding:5px;border:1px solid #C0C0C0;width:480px;height:130px;margin-left:15px;" >
<legend>付款情况</legend>
<table>
<tr>
<td>付款方式:</td> <td colspan=2><input id="" class="easyui-combobox" style="width:140px" /></td>
<td style="width:5px"></td>
<td>折扣:</td> <td><input id="" style="width:140px" /></td> <td>%</td>
</tr>
<tr>
<td>优惠:</td> <td><input id="" style="width:140px" /></td> <td>元</td>
<td style="width:5px"></td>
<td>房款总额:</td> <td><input id="" style="width:140px" /></td> <td>元</td>
</tr>
<tr>
<td>按揭总额:</td> <td><input id="" style="width:140px" /></td> <td>元</td>
<td style="width:5px"></td>
<td>公积金总额:</td> <td><input id="" style="width:140px" /></td> <td>元</td>
</tr>
</table>
<table>
<tr>
<td style="width:380px"></td>
<td><button id="FuKuanXiangQing" onclick="OpenChuangTi('#w付款详情')" style="width:80px">付款详情</button></td>
</tr>
</table>
</fieldset>

</div>
<div data-options="region:'south'" style="width:550px;height:30px">
<table>
<tr>
<td><div style="background-color: #FF0000;">签约:</div></td><td><input id="QianYue" readonly ="true" style="width:30px" /></td>

<td><div >占:</div></td><td><input id="Zan1" readonly ="true" style="width:30px" />%</td>
<td style="width:5px"></td>
<td><div style="background-color: #00FFFF;">认购:</div></td><td><input id="RenGou" readonly ="true" style="width:30px" /></td>

<td><div >占:</div></td><td><input id="Zan2" readonly ="true" style="width:30px" />%</td>
<td style="width:5px"></td>
<td><div style="background-color: #FFFF00;">预定:</div></td><td><input id="YuDing" readonly ="true" style="width:30px" /></td>

<td><div >占:</div></td><td><input id="Zan3" readonly ="true" style="width:30px" />%</td>
<td style="width:5px"></td>
<td><div style="background-color: #00FF00;">预留:</div></td><td><input id="YuLiu" readonly ="true" style="width:30px" /></td>

<td><div >占:</div></td><td><input id="Zan4" readonly ="true" style="width:30px" />%</td>
<td style="width:5px"></td>
<td> <div >未售:</div></td><td><input id="WeiShou" readonly ="true" style="width:30px" /></td>

<td><div >占:</div></td><td><input id="Zan5" readonly ="true" style="width:30px" />%</td>
<td style="width:5px"></td>
<td> <div >保留:</div></td><td><input id="BaoLiu" readonly ="true" style="width:30px" /></td>

<td><div >占:</div></td><td><input id="Zan6" readonly ="true" style="width:30px" />%</td>

</tr>
</table>
</div>
</div>
</div>
</div>
</div>


1.2.1数据库:

开发商销控模块所涉及到的表的关系:



涉及到的表有:

















1.3动态列(因为房间的个数不是固定的,因此要动态生成表格):



1.3.1动态列代码(JQuery)

var y;//动态列
var options = {};
var String1 = "[[{ field:'LouChen', title: '楼层', width: 40},";
function onChangeHouse() {//下拉框触发事件
TongJi();//调用统计房间数的方法
$.getJSON("/XiaoShouQianTai/SelectAllRoomData?HouseID=" + $("#comXiangLD").combobox('getValue'),
function (data) {
$('#tbFangJianSuoYouZiLiao').datagrid('loadData', data);//加载所有房间资料
}); //查询所有房间资料
HouseID = $('#comXiangLD').combobox('getValue'); //赋值给HouseID
$.getJSON("/XiaoShouQianTai/TiaoJianChaXunFangJianMiaoShu?LouDongID=" + $('#comXiangLD').combobox('getValue'),
function (data) {
if (data > 0) {
for (var i = 0; i < data; i++) {//for循环,循环遍历每个房间
y = i + 1;
if (i < data - 1) {
var s = "{ field:'F" + i + "', title: '0" + y + "', width:80,styler: cellStyler},"; //“styler: cellStyler”是变颜色的方法
String1 = String1 + s;
} else {
var s = "{ field:'F" + i + "', title: '0" + y + "', width: 80,styler: cellStyler}"; //
String1 = String1 + s + "]]";
}
}
options.columns = eval(String1);
$('#tbFangJianZiLiao').datagrid(options);
$.getJSON("/XiaoShouQianTai/LouDongBiaoMoXing1?LouDongID=" + $('#comXiangLD').combobox('getValue') + "&" + "LouCengHao=1",
function (data) {
$('#tbFangJianZiLiao').datagrid("loadData", data);//加载房间资料
String1 = "[[{ field:'LouChen', title: '楼层', width: 40},";//楼层
});
} else {
Kong();
}
});
}
动态列界面代码

<div data-options="region:'center'" style="width:1108px;height:475px">
<div class="easyui-layout" data-options="fit:true" style="width:1108px;height:585px">
<div data-options="region:'west'" style="width:650px;height:432px">
<table id="tbFangJianZiLiao" class="easyui-datagrid"
data-options="singleSelect:true,onClickCell:onClickRoom">

</table>
</div>


1.3下拉框级联

下拉框级联是紧密联系的,当上一个下拉框选中时,下一个下拉框才能进行选择,否则,下一个下拉框将无东西可选。

截图如下



功能实现:
1.3.1数据库存储过程
if @type='SelectProject'--查询项目
begin
SELECT     ProjectID, ProjectName
FROM         SYS_ProjectTable
end
if @type='SelectProjectPartition'--查询项目分区
begin
SELECT     ProjectSubregionID, ProjectSubregionName, ProjectID
FROM         SYS_ProjectSubregionTable
where  ProjectID=@ProjectID--查询的条件ID
end
if @type='SelectHouseOfID'--查询楼栋
begin
SELECT     HouseID, HouseName, ProjectSubregionID
FROM         SYS_HouseTable
where  ProjectSubregionID=@ProjectSubregionID--查询的条件ID
end

1.3.2逻辑层代码:(逻辑层是连接数据库的)

#endregion 项目名称
public DataTable SelectProject()//查询项目
{
SqlParameter[] SQLCMpas = {
new SqlParameter("@Type",SqlDbType.Char)
};
SQLCMpas[0].Value = "SelectProject";//对应数据库的存储过程中的方法名
DataTable dt = myDALMethod.DAL_SelectDB_Par("KaiFaShangXiaoKong_Select", SQLCMpas);//对应存储过程名称
return dt;
}
public DataTable SelectProjectPartition(int ProjectID)//查询项目分区
{
SqlParameter[] SQLCMpas = {
new SqlParameter("@Type",SqlDbType.Char),//对应的参数
new SqlParameter("@ProjectID",SqlDbType.Int)
};
SQLCMpas[0].Value = "SelectProjectPartition";//对应数据库的存储过程中的方法名
SQLCMpas[1].Value = ProjectID;
DataTable dt = myDALMethod.DAL_SelectDB_Par("KaiFaShangXiaoKong_Select", SQLCMpas);//对应存储过程名称
return dt;
}
public DataTable SelectHouseOfID(int ProjectSubregionID)//查询楼栋
{
SqlParameter[] SQLCMpas = {
new SqlParameter("@Type",SqlDbType.Char),
new SqlParameter("@ProjectSubregionID",SqlDbType.Int)
};
SQLCMpas[0].Value = "SelectHouseOfID";//对应数据库的存储过程的方法名
SQLCMpas[1].Value = ProjectSubregionID;
DataTable dt = myDALMethod.DAL_SelectDB_Par("KaiFaShangXiaoKong_Select", SQLCMpas);//对应存储过程名称
return dt;
}


1.3.3控制器代码:(控制器是联系逻辑层的)

public ActionResult SelectProject_XiangMu()//查询项目
{
DataTable dt = myfrmXiaoShouQianTai.SelectProject();//这里对应的是实例化逻辑层,调用逻辑层的查询项目方法
List<Dictionary<string, object>> ListRetrun = ConvertHelper.DtToList(dt);
return Json(ListRetrun, JsonRequestBehavior.AllowGet);
}
public ActionResult SelectProjectPartition_Selecte(int ProjectID)//查询项目分区
{
DataTable dt = myfrmXiaoShouQianTai.SelectProjectPartition(ProjectID);//这里对应的是实例化逻辑层,调用逻辑层的查询项目分区方法
List<Dictionary<string, object>> ListRetrun = ConvertHelper.DtToList(dt);
return Json(ListRetrun, JsonRequestBehavior.AllowGet);
}
public ActionResult SelectHouseOfID_Selecte(int ProjectSubregionID)//查询楼栋
{
DataTable dt = myfrmXiaoShouQianTai.SelectHouseOfID(ProjectSubregionID);//这里对应的是实例化逻辑层,调用逻辑层的查询楼栋方法
List<Dictionary<string, object>> ListRetrun = ConvertHelper.DtToList(dt);
return Json(ListRetrun, JsonRequestBehavior.AllowGet);
}
1.3.4界面层(JQuery)代码

function getXiangMuMC() {//绑定项目名称
$.getJSON("/XiaoShouQianTai/SelectProject_XiangMu",//这里是调用控制器的方法名
function (data) {
$('#comXiangMuMC').combobox({ data: data, valueField: 'ProjectID', //“comXiangMuMC”是下拉框的ID
textField: 'ProjectName'
});
});
}
function onXiangMuSelect() {//获取项目名称

$.getJSON("/XiaoShouQianTai/SelectProjectPartition_Selecte?ProjectID=" + $("#comXiangMuMC").combobox('getValue'), //这里是调用控制器的方法名
function (data) {
$('#comXiangMuFQ').combobox({ data: data, valueField: 'ProjectSubregionID', //“comXiangMuFQ”是下拉框的ID
textField: 'ProjectSubregionName'
});
});
}
function onXiangMuFenQuSelect() {//获取项目分区
$.getJSON("/XiaoShouQianTai/SelectHouseOfID_Selecte?ProjectSubregionID=" + $("#comXiangMuFQ").combobox('getValue'), //这里是调用控制器的方法名
function (data) {
$('#comXiangLD').combobox({ data: data, valueField: 'HouseID', //“comXiangLD”是下拉框的ID
textField: 'HouseName'
});
});
}
下拉框控件代码:
<td>项目名称</td><td><input class="easyui-combobox" id="comXiangMuMC" data-options="onSelect:onXiangMuSelect"  style="width:150px" /></td>
<td style="width:20px"></td>
<td>项目分区</td><td><input class="easyui-combobox" id="comXiangMuFQ" data-options="onSelect:onXiangMuFenQuSelect"  style="width:150px" /></td>
<td style="width:20px"></td>
<td>楼栋</td><td><input class="easyui-combobox" id="comXiangLD" data-options="onSelect:onChangeHouse"   style="width:150px" /></td>
<td style="width:20px"></td>


1.4查询房间代码:

1.4.1存储过程

if @type='SelectAllRoomData'--查询楼栋信息(KaiFaShangXiaoKong)
begin
SELECT     SYS_RoomDataTable.RoomDataID, SYS_RoomDataTable.HouseID, SYS_RoomDataTable.RoomCode, SYS_RoomDataTable.RoomUnit, SYS_RoomDataTable.RoomNumber,
SYS_RoomDataTable.natureNumber, SYS_RoomDataTable.Floor, SYS_RoomDataTable.ColumnNumber, SYS_RoomDataTable.CoveredArea, SYS_RoomDataTable.BuilDingExceptArea,
SYS_RoomDataTable.AreaShare, SYS_RoomDataTable.BalconyArea, SYS_RoomDataTable.RoomFaceDirectionID, SYS_RoomDataTable.RoomTypeID,
SYS_AttributeAssembleDetailTable_1.AttributeAssembleDetailName AS RoomType, SYS_UnivalentTable.UnivalentID, SYS_UnivalentTable.BuildingUnivalent,
SYS_UnivalentTable.CoverInnerUnivalent, SYS_UnivalentTable.RoomUnivalent, SYS_AreaMeasurementTable.AreaMeasurementID, SYS_AreaMeasurementTable.BuildingMeasurement,
SYS_AreaMeasurementTable.CoverInnerMeasurement, SYS_AreaMeasurementTable.ShareMeasurement, SYS_RoomDataTable.RoomRanking,
SYS_RoomDataTable.OnbuildingExceptAreaCountNot, SYS_RoomDataTable.LockNot, SYS_StatusChangeTable.StatusChangeID, SYS_StatusChangeTable.SellStatusDetailID,
SYS_SellStatusTable.SellStatusName, SYS_AttributeAssembleDetailTable.AttributeAssembleDetailName AS RoomFaceDirection, SYS_StatusChangeTable.DeleteNot,
SYS_SellStatusDetailTable.SellStatusID, SYS_RoomDataTable.ZhuangTaiWeiZhenFou, SYS_StatusChangeTable.XiaoShouJiaID--查询房间时要查的字段
FROM         SYS_SellStatusDetailTable LEFT OUTER JOIN
SYS_StatusChangeTable ON SYS_SellStatusDetailTable.SellStatusDetailID = SYS_StatusChangeTable.SellStatusDetailID LEFT OUTER JOIN
SYS_SellStatusTable ON SYS_SellStatusDetailTable.SellStatusID = SYS_SellStatusTable.SellStatusID RIGHT OUTER JOIN
SYS_RoomDataTable LEFT OUTER JOIN
SYS_AreaMeasurementTable ON SYS_RoomDataTable.RoomDataID = SYS_AreaMeasurementTable.RoomDataID ON
SYS_StatusChangeTable.RoomDatumID = SYS_RoomDataTable.RoomDataID LEFT OUTER JOIN--表与表之间的关系
SYS_AttributeAssembleDetailTable ON SYS_RoomDataTable.RoomFaceDirectionID = SYS_AttributeAssembleDetailTable.AttributeAssembleDetailID LEFT OUTER JOIN
SYS_AttributeAssembleDetailTable AS SYS_AttributeAssembleDetailTable_1 ON
SYS_RoomDataTable.RoomTypeID = SYS_AttributeAssembleDetailTable_1.AttributeAssembleDetailID LEFT OUTER JOIN
SYS_UnivalentTable ON SYS_RoomDataTable.RoomDataID = SYS_UnivalentTable.RoomDatumID
where         SYS_StatusChangeTable.DeleteNot='false' and SYS_RoomDataTable.HouseID=@HouseID--查询的条件

end
1.4.2逻辑层代码:(接收来自数据库的数据)

public DataTable SelectAllRoomData(int HouseID)//查询房间的条件ID
{
SqlParameter[] SQLCMDpas = {
new SqlParameter("@type",SqlDbType.Char),//数据库定义的变量
new SqlParameter("@HouseID",SqlDbType.Int),
};
SQLCMDpas[0].Value = "SelectAllRoomData";//数据库的存储过程的方法
SQLCMDpas[1].Value =HouseID;
DataTable dt = myDALMethod.DAL_SelectDB_Par("KaiFaShangXiaoKong_Select", SQLCMDpas);//数据库存储过程名称
return dt;
}//查询所有房间资料


1.4.3控制器代码:(接收来自逻辑层的数据)

public ActionResult SelectAllRoomData(int HouseID) //查询所有房间资料
{
DataTable dt = myfrmXiaoShouQianTai.SelectAllRoomData(HouseID);//调用逻辑层的方法,括号里的是条件ID
dt.Columns.Add("FangHao",typeof(string));
for (var i = 0; i < dt.Rows.Count; i++) {//for循环遍历所有房间
if (Convert.ToBoolean(dt.Rows[i]["ZhuangTaiWeiZhenFou"]) == true)//判断ZhuangTaiWeiZhenFou是否为true,并执行以下操作
{
dt.Rows[i]["FangHao"] = dt.Rows[i]["RoomNumber"];
}
else {
dt.Rows[i]["FangHao"] = dt.Rows[i]["RoomNumber"].ToString().Trim() + "假";//ZhuangTaiWeiZhenFou不为true,在其房号后加假字
}
}
List<Dictionary<string, object>> listReturn = ConvertHelper.DtToList(dt);
return Json(listReturn, JsonRequestBehavior.AllowGet);
}


1.4.4界面层代码(JQuery):

var y;//动态列
var options = {};//自定义的变量
var String1 = "[[{ field:'LouChen', title: '楼层', width: 40},";
function onChangeHouse() {//下拉框触发事件
TongJi();//调用统计房间数的方法
$.getJSON("/XiaoShouQianTai/SelectAllRoomData?HouseID=" + $("#comXiangLD").combobox('getValue'),
function (data) {
$('#tbFangJianSuoYouZiLiao').datagrid('loadData', data);//加载所有房间资料
}); //查询所有房间资料
HouseID = $('#comXiangLD').combobox('getValue'); //赋值给HouseID
$.getJSON("/XiaoShouQianTai/TiaoJianChaXunFangJianMiaoShu?LouDongID=" + $('#comXiangLD').combobox('getValue'),
function (data) {
if (data > 0) {
for (var i = 0; i < data; i++) {//for循环,循环遍历每个房间
y = i + 1;
if (i < data - 1) {
var s = "{ field:'F" + i + "', title: '0" + y + "', width:80,styler: cellStyler},"; //“styler: cellStyler”是变颜色的方法
String1 = String1 + s;
} else {
var s = "{ field:'F" + i + "', title: '0" + y + "', width: 80,styler: cellStyler}"; //
String1 = String1 + s + "]]";
}
}
options.columns = eval(String1);
$('#tbFangJianZiLiao').datagrid(options);
$.getJSON("/XiaoShouQianTai/LouDongBiaoMoXing1?LouDongID=" + $('#comXiangLD').combobox('getValue') + "&" + "LouCengHao=1",
function (data) {
$('#tbFangJianZiLiao').datagrid("loadData", data);//加载房间资料
String1 = "[[{ field:'LouChen', title: '楼层', width: 40},";//楼层
});
} else {
Kong();
}
});
}


1.5修改房间状态:

截图:



变更房间状态时,只需要右键点击对应的房间,且单击要改变的房间状态即可,但只是改变假的房间状态ID,并不影响真正的房间状态。查询时若是假销控状态,则房号后面标记为假。
1.5.1存储过程(修改房间状态):

if  @type ='RoomData_Update'--修改(状态是否为真)
begin
Update  SYS_RoomDataTable--修改房间资料表
set         ZhuangTaiWeiZhenFou=@ZhuangTaiWeiZhenFou
where SYS_RoomDataTable.RoomDataID=@RoomDataID--条件ID
end
if @type ='Update_JiaID'--修改假状态ID
begin
update   SYS_StatusChangeTable --修改状态更改表
set          XiaoShouJiaID=@XiaoShouJiaID
where SYS_StatusChangeTable.RoomDatumID=@RoomDatumID--条件ID
end


1.5.2逻辑层:

public int btnBaoCun_Click_UpdateRoomData(Boolean ZhuangTaiWeiZhenFou, int RoomDataID)//修改的条件ID
{
#region 在btnBaoCun_Click事件中修改房间资料表(是否为真)
SqlParameter[] SQlCMDpas = {
new SqlParameter("@Type", SqlDbType.Char), //数据库的变量
new SqlParameter("@ZhuangTaiWeiZhenFou", SqlDbType.Bit ),
new SqlParameter("@RoomDataID", SqlDbType.Int ),

};
SQlCMDpas[0].Value = "RoomData_Update";//存储过程中的方法
SQlCMDpas[1].Value = ZhuangTaiWeiZhenFou;//要对应顺序
SQlCMDpas[2].Value = RoomDataID;

int mydt = myDALMethod.DAL_OPTableDB_Par("KaiFaShangXiaoKong_Select", SQlCMDpas);//数据库的存储过程名称
return mydt;
#endregion
}
public int btnBaoCun_Click_UpdateJiaID(int XiaoShouJiaID, int RoomDatumID)//修改的条件ID
{
#region 在btnBaoCun_Click事件中保存进程
SqlParameter[] SQlCMDpas = {
new SqlParameter("@Type", SqlDbType.Char),//数据库的变量
new SqlParameter("@XiaoShouJiaID", SqlDbType.Int),
new SqlParameter("@RoomDatumID", SqlDbType.Int ),

};
SQlCMDpas[0].Value = "Update_JiaID";//存储过程中的方法
SQlCMDpas[1].Value = XiaoShouJiaID;//要对应顺序
SQlCMDpas[2].Value = RoomDatumID;

int mydt = myDALMethod.DAL_OPTableDB_Par("PW_PaymentType", SQlCMDpas);//数据库的存储过程名称
return mydt;
#endregion
}
1.5.3控制器:

#region 修改假ID
public ContentResult XiuGaiJiaID(string XiaoShouJiaID, string RoomDatumID)
{
int i = myfrmXiaoShouQianTai.btnBaoCun_Click_UpdateJiaID(Convert.ToInt32(XiaoShouJiaID), Convert.ToInt32(RoomDatumID));//调用逻辑层的方法
int l = myfrmXiaoShouQianTai.btnBaoCun_Click_UpdateRoomData(false, Convert.ToInt32(RoomDatumID));//调用逻辑层的方法
return Content("true");//跳转到资料主页面
}

#endregion


function sahj() {//未售

var row = $('#tbFangJianZiLiao').datagrid('getSelected');//单击单元格获取房间号

if (confirm('是否修改?')) {
$.getJSON("/XiaoShouQianTai/XiuGaiJiaID?XiaoShouJiaID=1" + "&"
+ "RoomDatumID=" + RoomDatumID1 + "&", //把XiaoShouJiaID等于未售状态的ID
function (data) {
if (data != null) {
alert("修改成功");
onChangeHouse();//刷新datagrid
}
});
}
}
function yy() {//认购

var row = $('#tbFangJianZiLiao').datagrid('getSelected'); //单击单元格获取房间号

if (confirm('是否修改?')) {
$.getJSON("/XiaoShouQianTai/XiuGaiJiaID?XiaoShouJiaID=6" + "&"
+ "RoomDatumID=" + RoomDatumID1 + "&", //把XiaoShouJiaID等于认购状态的ID
function (data) {
if (data != null) {
alert("修改成功");
onChangeHouse();//刷新datagrid
}
});
}

}

function qy() {//签约

var row = $('#tbFangJianZiLiao').datagrid('getSelected'); //单击单元格获取房间号
if (confirm('是否修改?')) {
$.getJSON("/XiaoShouQianTai/XiuGaiJiaID?XiaoShouJiaID=5" + "&"
+ "RoomDatumID=" + RoomDatumID1 + "&", //把XiaoShouJiaID等于签约状态的ID
function (data) {
if (data != null) {
alert("修改成功");
onChangeHouse();//刷新datagrid
}
});
}

}
function yd() {//预定

var row = $('#tbFangJianZiLiao').datagrid('getSelected'); //单击单元格获取房间号

if (confirm('是否修改?')) {
$.getJSON("/XiaoShouQianTai/XiuGaiJiaID?XiaoShouJiaID=3" + "&"//把XiaoShouJiaID等于预定状态的ID
+ "RoomDatumID=" + RoomDatumID1 + "&",
function (data) {
if (data != null) {
alert("修改成功");
onChangeHouse();//刷新datagrid

}
});
}

}
function yl() {//预留

var row = $('#tbFangJianZiLiao').datagrid('getSelected'); //单击单元格获取房间号

if (confirm('是否修改?')) {
$.getJSON("/XiaoShouQianTai/XiuGaiJiaID?XiaoShouJiaID=2" + "&"//把XiaoShouJiaID等于预定状态的ID
+ "RoomDatumID=" + RoomDatumID1 + "&",
function (data) {
if (data != null) {
alert("修改成功");
onChangeHouse();//刷新datagrid
}
});
}

}
function bl() {//保留

var row = $('#tbFangJianZiLiao').datagrid('getSelected'); //单击单元格获取房间号

if (confirm('是否修改?')) {
$.getJSON("/XiaoShouQianTai/XiuGaiJiaID?XiaoShouJiaID=4" + "&"
+ "RoomDatumID=" + RoomDatumID1 + "&", //把XiaoShouJiaID等于保留状态的ID
function (data) {
alert("修改成功");

onChangeHouse(); //刷新datagrid
});
}

}


<div id="menu" class="easyui-menu" style="width: 30px; display: none;">
<!--放置一个隐藏的菜单Div-->
<div id="btn_WeiShou" data-options="iconCls:'icon-remove'" onclick="sahj()">1.未售状态</div>
<!--具体的菜单事件请自行添加,跟toolbar的方法是基本一样的-->
<div id="btn_BaoLiu" data-options="iconCls:'icon-edit'"onclick="bl()">2.保留状态</div>@*菜单选项*@
<div id="btn_YuLiu" data-options="iconCls:'icon-edit'"onclick="yl()">3.预留状态</div>
<div id="btn_YuDing" data-options="iconCls:'icon-edit'"onclick="yd()">4.预定状态</div>
<div id="btn_RenGou" data-options="iconCls:'icon-edit'"onclick="yy()">5.认购状态</div>
<div id="btn_QianYue" data-options="iconCls:'icon-edit'"onclick="qy()">6.签约状态</div>


变换颜色:

//    界面改变颜色方法

var RoomNumber = '';
var FangJianZhuangTaiID;
function cellStyler(value, row, index) {//FangJianZhuangTaiID为房间状态ID,当状态ID为3(未售)时,默认为不变色
var row = $('#tbFangJianSuoYouZiLiao').datagrid("getData");//单击房间

for (var i = 0; i < row.rows.length; i++) {//for循环,循环遍历所有房间
FangJianZhuangTaiID = (row.rows[i].XiaoShouJiaID).toString().trim(); //赋值给FangJianZhuangTaiID

RoomNumber = (row.rows[i].FangHao).toString().trim(); //赋值给RoomNumber
if (FangJianZhuangTaiID == 6) {//认购
if (value == RoomNumber) {//根据房间ID来进行变颜色
return 'background-color:#00FFFF;color:#000000;';
}
}
if (FangJianZhuangTaiID == 5) {//签约
if (value == RoomNumber) {//根据房间ID来进行变颜色
return 'background-color:#FF0000;color:#000000;';
}
}
if (FangJianZhuangTaiID == 3) {//预定
if (value == RoomNumber) {//根据房间ID来进行变颜色
return 'background-color:#FFFF00;color:#000000;';
}
}
if (FangJianZhuangTaiID == 2) {//预留
if (value == RoomNumber) {//根据房间ID来进行变颜色
return 'background-color:#00FF00;color:#000000;';
}
}
}
}


1.6统计百分比:

本模块还可以通过计算,统计各种状态的房间的个数以及所占的比例:
截图如下:



1.6.1界面层(JQuery):
var zt;
var ld;
var oo;
var yd;
var y;
var kk;
function TongJi() {//统计百分比
$.getJSON("/XiaoShouQianTai/bangdingfnagjain1?HouseID=" + $('#comXiangLD').combobox('getValue'),
function (data2) {
ld = data2.length;
$.getJSON("/XiaoShouQianTai/bangdingfnagjain2?SellStatusName=签约" + "&" + "HouseID=" + $('#comXiangLD').combobox('getValue'),
function (data3) {//签约所占百分比

zt = data3.length; //获取签约的房间
$('#QianYue').attr('value', zt);
var dsa = (zt / ld) * 100; //签约房间数除以总房间数等于所占百分比
$('#Zan1').attr('value', dsa);
});
$.getJSON("/XiaoShouQianTai/bangdingfnagjain2?SellStatusName=认购" + "&" + "HouseID=" + $('#comXiangLD').combobox('getValue'),
function (data4) {//认购所占百分比
oo = data4.length;
$('#RenGou').attr('value', oo);
var yd = (oo / ld) * 100; //认购房间数除以总房间数等于所占百分比
$('#Zan2').attr('value', yd);
});
$.getJSON("/XiaoShouQianTai/bangdingfnagjain2?SellStatusName=预订" + "&" + "HouseID=" + $('#comXiangLD').combobox('getValue'),
function (data5) {//预定所占百分比
y = data5.length;
$('#YuDing').attr('value', y);
var kk = (y / ld) * 100; //预定房间数除以总房间数等于所占百分比
$('#Zan3').attr('value', kk);
});
$.getJSON("/XiaoShouQianTai/bangdingfnagjain2?SellStatusName=预留" + "&" + "HouseID=" + $('#comXiangLD').combobox('getValue'),
function (data6) {//预留所占百分比
zt = data6.length;
$('#YuLiu').attr('value', zt);
var dsa = (zt / ld) * 100; //预留房间数除以总房间数等于所占百分比
$('#Zan4').attr('value', dsa);
});
$.getJSON("/XiaoShouQianTai/bangdingfnagjain2?SellStatusName=未售" + "&" + "HouseID=" + $('#comXiangLD').combobox('getValue'),
function (data7) {//未售所占百分比
zt = data7.length;
$('#WeiShou').attr('value', zt);
var dsa = (zt / ld) * 100; //未售房间数除以总房间数等于所占百分比
$('#Zan5').attr('value', dsa);
});
$.getJSON("/XiaoShouQianTai/bangdingfnagjain2?SellStatusName=保留" + "&" + "HouseID=" + $('#comXiangLD').combobox('getValue'),
function (data8) {//保留所占百分比
zt = data8.length;
$('#BaoLiu').attr('value', zt);
var dsa = (zt / ld) * 100; //保留房间数除以总房间数等于所占百分比
$('#Zan6').attr('value', dsa);
});
});
}


2.客户自助查询

客户自助查询是给客户查询房间的,界面和开发商销控差不多,但客户自助查询看到的全部是“真的”不会带有假字。



仅供学习,不得用于商业用途,违者后果自负!!!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: