using System;
using SysDataLibs;
using SysBaseLibs;
using System.Data;
using System.Text;
using System.Web.Mvc;
using SysDataLibs.TableClass;
namespace GSMarketSys.Controllers
{
public class MainController : BaseController
{
// GET: Main
///
/// 主页面
///
///
public ActionResult MainIndex()
{
ViewBag.Title1= SysDataLibs.AppEnv.SysSetObj.GetString("MAINPAGETITLE1");
ViewBag.Title2= SysDataLibs.AppEnv.SysSetObj.GetString("MAINPAGETITLE");
ViewBag.IsSystem = UserSessionInfo.IsSystem ? "Y" : "N";
ViewBag.IsAdvance = UserSessionInfo.IsAdvance ? "Y" : "N";
ViewBag.IsMarketSysAccount = UserSessionInfo.IsMarketSysAccount ? "Y" : "N";
ViewBag.UserId = UserSessionInfo.UserInfo.UserID;
ViewBag.UserInfo = UserSessionInfo.IsMarketSysAccount ? UserSessionInfo.MarketInfo?.Names + " , " + UserSessionInfo.UserInfo.Names : UserSessionInfo.UserInfo.Names;
ViewBag.LoginIp = HttpContext.Request.UserHostAddress;
string systemId = UserSessionInfo.UserInfo.GSSystem.SystemID;
switch (systemId)
{
case "Farmer":
ViewBag.SystemInfo = "市场管理系统";
break;
case "Industry":
ViewBag.SystemInfo = "工业品管理系统";
break;
case "SuperMark":
ViewBag.SystemInfo = "超市管理系统";
break;
case "GSSys":
ViewBag.SystemInfo = "工商管理系统";
break;
default:
ViewBag.SystemInfo = "";
break;
}
return View();
}
#region 功能菜单树
public ActionResult GetFunctionTrees()
{
UserSessionInfo.refreshFunctions();
DataTable loDataTable = UserSessionInfo.GetMenuDataTable(MenuType.Front);
StringBuilder sb = new StringBuilder();
if (loDataTable != null && loDataTable.Rows.Count > 0)
{
sb.Append(ConvertJson.ToJson(loDataTable));
}
else
{
sb.Append("[]");
}
return Content(sb.ToString());
}
public ActionResult GetFunctionUrl()
{
string id = Request["id"];
//Sys_Functions_info lTbl = new Sys_Functions_info(id, UserSessionInfo.DBConn);
string lcSql = " select * from Sys_Functions where FunctionID='"+ id + "'";
rsQuery loQuery = UserSessionInfo.DBConn.OpenQuery(lcSql);
string lcRetval = string.IsNullOrEmpty(loQuery.GetString("URL")) ? "#" : loQuery.GetString("URL");
return Content(lcRetval);
}
#endregion
#region 用户信息及密码
///
/// 获取用户信息
///
///
[HttpPost]
public ActionResult UserInfo()
{
Sys_Users_info userInfo = UserSessionInfo.UserInfo;
if (userInfo == null)
return Content(SysRebackDisplayInfo.Instance.GetDisplayValue("UserInfo_Error"));
string farmInfo = GetData.Instance.GetSelStr(Farms_info.cFarmID, Farms_info.cNames, Tn.Farms,
Farms_info.cIsLock + "=0 ", UserSessionInfo.DBConn).Replace("\"", "\\\""),
departmentInfo = GetData.Instance.GetSelStr(Departments_info.cDepartmentID, Departments_info.cNames, Tn.Departments,
Departments_info.cIsLock + "=0 ", UserSessionInfo.DBConn).Replace("\"", "\\\""),
dutyInfo = GetData.Instance.GetSelStr(Dutys_info.cDutyID, Dutys_info.cNames, Tn.Dutys,
Dutys_info.cIsLock + "=0 ", UserSessionInfo.DBConn).Replace("\"", "\\\"");
StringBuilder sb = new StringBuilder();
sb.Append("{");
sb.AppendFormat("\"Success\":true,\"State\":0,\"FarmInfo\":\"{0}\",\"DepartmentInfo\":\"{1}\",\"DutyInfo\":\"{2}\",\"Names\":\"{3}\",\"Address\":\"{4}\",\"Age\":\"{5}\",\"Telephone\":\"{6}\",\"ZIP\":\"{7}\",\"Email\":\"{8}\",\"DepartmentID\":\"{9}\",\"DutyID\":\"{10}\",\"FarmID\":\"{11}\",\"Sex\":\"{12}\"", farmInfo,
departmentInfo, dutyInfo, userInfo.Names, userInfo.Address, userInfo.Age, userInfo.Telephone, userInfo.ZIP, userInfo.Email, userInfo.DepartmentID, userInfo.DutyID, userInfo.FarmID, userInfo.Sex);
sb.Append("}");
return Content(sb.ToString());
}
///
/// 用户信息修改提交
///
///
[HttpPost]
public ActionResult UserInfoEdit()
{
string farm = GetRequest("Farm"),
department = GetRequest("Department"),
names = GetRequest("Names"),
duty = GetRequest("Duty"),
sex = GetRequest("Sex"),
zip = GetRequest("ZIP"),
age = GetRequest("Age"),
telephone = GetRequest("Telephone"),
email = GetRequest("Email"),
address = GetRequest("Address");
Sys_Users_info userInfo = UserSessionInfo.UserInfo;
userInfo.Names = names;
userInfo.Address = address;
userInfo.Age = age;
userInfo.Telephone = telephone;
userInfo.ZIP = zip;
userInfo.Email = email;
userInfo.DepartmentID = department;
userInfo.DutyID = duty;
userInfo.FarmID = farm;
userInfo.Sex = sex;
return userInfo.UpdateRecord(UserSessionInfo) ? Content(SysRebackDisplayInfo.Instance.GetDisplayValue("ModUserInfo_Success")) : Content(SysRebackDisplayInfo.Instance.GetDisplayValue("ModUserInfo_Error"));
}
[HttpPost]
public ActionResult UserPwdEdit()
{
string oldPassword = GetRequest("OldPassword"),
newPassword = GetRequest("NewPassword");
if (oldPassword != UserSessionInfo.UserInfo.Password)
return Content(SysRebackDisplayInfo.Instance.GetDisplayValue("Password_Error"));
UserSessionInfo.UserInfo.Password = newPassword;
return UserSessionInfo.UserInfo.ChangePassword(UserSessionInfo.DBConn) ? Content(SysRebackDisplayInfo.Instance.GetDisplayValue("ModPassword_Success")) : Content(SysRebackDisplayInfo.Instance.GetDisplayValue("ModPassword_Error"));
}
#endregion
#region 消息通知
///
/// 市场信息、公告通知
///
///
///
public ActionResult BulletinInfo(string id)
{
ViewBag.Title = id == "1" ? "公告通知" : id == "3" ? "市场信息" : "";
ViewBag.BulletinType = id;
return View();
}
///
/// 证照过期信息
///
///
public ActionResult MarketWrntDueExpire()
{
// 视图中已经对Markets.IsLock=0进行了过滤
string lcSql = "SELECT * FROM " + Tn.vwMarketWrntDueExpire + " WHERE " + UserSessionInfo.MarketDataSql(false) +
" AND " + vwMarketWrntDueExpire_info.cDEFlag + "<> 0" + " ORDER BY " +
vwMarketWrntDueExpire_info.cMarketId + "," + vwMarketWrntDueExpire_info.cWarrantTypeId;
rsQuery loQuery = UserSessionInfo.DBConn.OpenQuery(lcSql);
StringBuilder sb = new StringBuilder();
if (loQuery != null && loQuery.IsOpened)
{
loQuery.MoveFirst();
for (int i = 0; i < loQuery.RecCount; i++)
{
sb.Append("
");
// 序号
sb.Append("");
sb.Append((i + 1) + "");
sb.Append(" | ");
// 市场名称
sb.Append("");
sb.Append(loQuery.GetString(vwMarketWrntDueExpire_info.cMktName));
sb.Append(" | ");
// 证照类型
sb.Append("");
sb.Append(loQuery.GetString(vwMarketWrntDueExpire_info.cWarrantName));
sb.Append(" | ");
// 证照号
sb.Append("");
sb.Append(loQuery.GetString(vwMarketWrntDueExpire_info.cWarrantNumber));
sb.Append(" | ");
// 证照有限期截止日期
sb.Append("");
DateTime dtValidEnd = loQuery.GetDateTime(vwMarketWrntDueExpire_info.cValidEndTime);
sb.Append(dtValidEnd.ToString("yyyy-MM-dd"));
sb.Append(" | ");
// 到期过期
sb.Append("");
if (loQuery.GetInt(vwMarketWrntDueExpire_info.cDEFlag) == 1)
sb.Append("三个月到期");
else
sb.Append("过期");
sb.Append(" | ");
sb.Append("
");
loQuery.MoveNext();
}
}
//ViewBag.Hid_WhereSql = lcSql;
ViewBag.TableMsg = sb.ToString();
return View();
}
///
/// 市场违规信息
///
///
public ActionResult MarketViolationInfos()
{
ViewBag.SelLogTypeInfo = GetData.Instance.GetSelStr(MarketViolations_info.cLogType, Tn.MarketViolations,
UserSessionInfo.DBConn);
ViewBag.SelResultInfo = GetData.Instance.GetSelStr(MarketViolations_info.cResult, Tn.MarketViolations,
UserSessionInfo.DBConn);
ViewBag.SelMarketInfo = GetData.Instance.GetSelStr(Markets_info.cMarketID, Markets_info.cNames, Tn.Markets, Markets_info.cIsLock + "='0' " + UserSessionInfo.MarketDataSql(true), UserSessionInfo.DBConn);
return View();
}
[HttpPost]
public ActionResult GetMsgNum()
{
int msgBulletinInfo = BulletinInfo_info.HasNotRead("1", UserSessionInfo);
int msgMarketInfo = BulletinInfo_info.HasNotRead("2", UserSessionInfo);
var lcSql = "SELECT * FROM " + Tn.vwMarketWrntDueExpire + " WHERE " + UserSessionInfo.MarketDataSql(false) + " ORDER BY " + vwMarketWrntDueExpire_info.cMarketId + "," + vwMarketWrntDueExpire_info.cWarrantTypeId;
var loQuery = UserSessionInfo.DBConn.OpenQuery(lcSql);
if (loQuery.RecCount > 0)
UserSessionInfo.SetObj("RptMarketWrntDueExpire", loQuery);
int msgWrntDueExpireInfo = loQuery.RecCount;
lcSql = "SELECT * FROM " + Tn.SysRegisters + " WHERE IsAudit='N' ";
loQuery = UserSessionInfo.DBConn.OpenQuery(lcSql);
int msgSysRegisterInfo = loQuery.RecCount;
lcSql = "SELECT COUNT(*) AS ct FROM MarketViolations WHERE IsRead='N' AND MarketID='" + UserSessionInfo.MarketId + "' ";
loQuery = UserSessionInfo.DBConn.OpenQuery(lcSql);
int msgViolationInfo = loQuery.GetInt("ct");
string msgNums = "{\"Success\":true,\"state\":\"0\"," + $"\"MsgBulletinInfo\":{msgBulletinInfo},\"MsgMarketInfo\":{msgMarketInfo},\"MsgWrntDueExpireInfo\":{msgWrntDueExpireInfo},\"MsgSysRegisterInfo\":{msgSysRegisterInfo},\"MsgViolationInfo\":{msgViolationInfo}" + "}";
return Content(msgNums);
}
///
/// 设置消息已读
///
///
///
///
///
///
[HttpPost]
public ActionResult SetMsgRead(string tableId, string columnId, string sourceKey, string pcTitle)
{
Sys_AttachTables_info loAttachTables = new Sys_AttachTables_info
{
TableId = tableId,
ColumnId = columnId,
SourceKey = sourceKey,
UserID = UserSessionInfo.UserInfo.UserID,
Actiion = "已读"
};
if (loAttachTables.Update(UserSessionInfo))
{
Sys_Log_info.LogMsg(LogType.Normal, "阅读消息", "信息" + pcTitle + "已被" + UserSessionInfo.UserInfo.Names + "阅读", "");
return Content("已阅读");
}
return Content("操作失败");
}
[HttpPost]
public ActionResult SetViolationMsgRead()
{
string violationsNo = GetRequest("ViolationsNo");
MarketViolations_info marketViolationsInfo = new MarketViolations_info(violationsNo, UserSessionInfo.DBConn)
{
IsRead = "Y"
};
string lcSql = marketViolationsInfo.UpdateSql();
if (string.IsNullOrEmpty(lcSql))
return Content(SysRebackDisplayInfo.Instance.GetDisplayValue("Oper_Error"));
return Content(UserSessionInfo.DBConn.ExcuteSqlTran(lcSql) ? SysRebackDisplayInfo.Instance.GetDisplayValue("Oper_Success") : SysRebackDisplayInfo.Instance.GetDisplayValue("Oper_DBError"));
}
#endregion
///
/// 获取Requset[key]值,并ToSQL处理
///
///
///
///
private string GetRequest(string key, string type = "string")
{
string lcRetval = Request[key] ?? "";
if (type.ToLower() == "int")
lcRetval = GetData.Instance.SetIntDefault(lcRetval);
return Utils.AreaToSQLcs(lcRetval);
}
}
}