150 lines
6.5 KiB
C#
150 lines
6.5 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Web;
|
|
using Business = SuperMap.RealEstate.HighWay.Storage.Business;
|
|
using HZQR.Common;
|
|
using Newtonsoft.Json.Linq;
|
|
using System.Text;
|
|
|
|
namespace SuperMap.RealEstate.HighWay.Handler.CommonInterface
|
|
{
|
|
public class Publicity
|
|
{
|
|
#region 点赞
|
|
public static string ThumbUp(ServiceModel.Transaction _Transaction)
|
|
{
|
|
string reString = "";
|
|
JObject info = new JObject();
|
|
|
|
try
|
|
{
|
|
string _TABLE_ID = CommonHelper.Request("TABLE_ID"); //业务关联内码
|
|
//int thumbUpState = CommonHelper.Request("THUMBUP_STATE").TryParseToInt(); //点赞or取消点赞
|
|
string _STAFF_ID = CommonHelper.Request("STAFF_ID"); //点赞人
|
|
string _STAFF_NAME = CommonHelper.Request("STAFF_NAME"); //点赞人名称
|
|
string _TABLE_NAME = "HIGHWAY_STORAGE.T_PUBLICITY"; //业务关联表名称
|
|
|
|
int thumbUpState = 0;
|
|
Business.THUMBUP _THUMBUP = new Business.THUMBUP(_Transaction);
|
|
_THUMBUP.AddSearchParameter("TABLE_ID", _TABLE_ID);
|
|
_THUMBUP.AddSearchParameter("TABLE_NAME", _TABLE_NAME);
|
|
_THUMBUP.AddSearchParameter("STAFF_ID", _STAFF_ID);
|
|
if (_THUMBUP.Search())
|
|
{
|
|
if (_THUMBUP.THUMBUP_STATE.Value == -1)
|
|
{
|
|
thumbUpState = 1;
|
|
}
|
|
else
|
|
{
|
|
thumbUpState = -1;
|
|
}
|
|
}
|
|
else
|
|
{
|
|
thumbUpState = 1;
|
|
}
|
|
|
|
if (thumbUpState == 1 && _THUMBUP.GetCount("WHERE THUMBUP_STATE = 1 AND STAFF_ID = " + _STAFF_ID +
|
|
" AND TO_CHAR(OPERATE_DATE,'YYYYMM') = TO_CHAR(SYSDATE,'YYYYMM')") == 3)
|
|
{
|
|
info["ResultCode"] = "200";
|
|
}
|
|
else
|
|
{
|
|
_THUMBUP = new Business.THUMBUP(_Transaction);
|
|
_THUMBUP.AddSearchParameter("TABLE_ID", _TABLE_ID);
|
|
_THUMBUP.AddSearchParameter("TABLE_NAME", _TABLE_NAME);
|
|
_THUMBUP.AddSearchParameter("STAFF_ID", _STAFF_ID);
|
|
if (_THUMBUP.Search())
|
|
{
|
|
//已经点赞过,修改
|
|
_THUMBUP.THUMBUP_STATE = thumbUpState;
|
|
_THUMBUP.OPERATE_DATE = DateTime.Now;
|
|
_THUMBUP.Update();
|
|
}
|
|
else
|
|
{
|
|
//未点过赞,记录点赞记录。
|
|
_THUMBUP.ResetProperty();
|
|
_THUMBUP.TABLE_ID = _TABLE_ID.TryParseToInt();
|
|
_THUMBUP.TABLE_NAME = _TABLE_NAME;
|
|
_THUMBUP.THUMBUP_STATE = thumbUpState;
|
|
_THUMBUP.STAFF_ID = _STAFF_ID.TryParseToInt();
|
|
_THUMBUP.STAFF_NAME = _STAFF_NAME;
|
|
_THUMBUP.OPERATE_DATE = DateTime.Now;
|
|
_THUMBUP.Insert();
|
|
}
|
|
//修改阳光公示表的点赞数
|
|
string sql = "UPDATE HIGHWAY_STORAGE.T_PUBLICITY SET THUMBUP_COUNT = THUMBUP_COUNT + " +
|
|
thumbUpState + " WHERE PUBLICITY_ID = " + _TABLE_ID;
|
|
_THUMBUP.ExecuteNonQuery(sql, null);
|
|
info["ResultCode"] = "100";
|
|
}
|
|
//查询最终的点赞数
|
|
string sqlWhere = string.Format("WHERE TABLE_ID = {0} AND TABLE_NAME='{1}' AND THUMBUP_STATE = 1", _TABLE_ID, _TABLE_NAME);
|
|
int count = new Business.THUMBUP(_Transaction).GetCount(sqlWhere);
|
|
|
|
info["ThumbUpCount"] = count; //点赞数量
|
|
|
|
reString = info.ToString();
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
ex = ex ?? ex.InnerException;
|
|
info["ResultCode"] = "999";
|
|
info["ResultDesc"] = ex.Message;
|
|
|
|
reString = info.ToString();
|
|
}
|
|
return reString;
|
|
}
|
|
#endregion
|
|
|
|
#region 评论
|
|
public static string AddComment(ServiceModel.Transaction _Transaction)
|
|
{
|
|
string reString = "";
|
|
try
|
|
{
|
|
string _TABLE_ID = CommonHelper.Request("TABLE_ID"); //业务关联内码
|
|
string _STAFF_ID = CommonHelper.Request("STAFF_ID"); //评论人
|
|
string _STAFF_NAME = CommonHelper.Request("STAFF_NAME"); //评论人名称
|
|
string _COMMENT_CONTENT = CommonHelper.Request("COMMENT_CONTENT"); //评论内容
|
|
string _TABLE_NAME = "HIGHWAY_STORAGE.T_PUBLICITY"; //业务关联表名称
|
|
|
|
Business.COMMENT _COMMENT = new Business.COMMENT(_Transaction);
|
|
//评论可以重复添加
|
|
_COMMENT.TABLE_ID = _TABLE_ID.TryParseToInt();
|
|
_COMMENT.TABLE_NAME = _TABLE_NAME;
|
|
_COMMENT.COMMENT_STATE = 1;
|
|
_COMMENT.COMMENT_CONTENT = _COMMENT_CONTENT;
|
|
_COMMENT.STAFF_ID = _STAFF_ID.TryParseToInt();
|
|
_COMMENT.STAFF_NAME = _STAFF_NAME;
|
|
_COMMENT.OPERATE_DATE = DateTime.Now;
|
|
_COMMENT.Insert();
|
|
|
|
//修改阳光公示表的评论数
|
|
string sql = string.Format("UPDATE HIGHWAY_STORAGE.T_PUBLICITY SET COMMENT_COUNT = COMMENT_COUNT+1 WHERE PUBLICITY_ID = {0}", _TABLE_ID);
|
|
_COMMENT.ExecuteNonQuery(sql, null);
|
|
|
|
//查询最终的评论数
|
|
string sqlWhere = string.Format(@"WHERE TABLE_ID = {0} AND TABLE_NAME='{1}'", _TABLE_ID, _TABLE_NAME);
|
|
int count = new Business.COMMENT(_Transaction).GetCount(sqlWhere);
|
|
JObject info = new JObject();
|
|
info["CommentCount"] = count; //评论数量
|
|
string list = Business.COMMENT.GetCommentList(_Transaction, _TABLE_ID, _TABLE_NAME);
|
|
info["CommentList"] = list;
|
|
reString = info.ToString();
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
ex = ex ?? ex.InnerException;
|
|
reString = ex.Message;
|
|
}
|
|
return reString;
|
|
}
|
|
#endregion
|
|
}
|
|
} |