using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using Pub_Class;
using System;
using System.Collections;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Web.Http;
using WebAPI.Models;
namespace WebAPI.Controllers
{
public class Xt_UserController : ApiController
{
public DBUtility.ClsPub.Enum_BillStatus BillStatus;
private json objJsonResult = new json();
SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
DataSet ds;
#region[用户列表查询]
[Route("Xt_User/list")]
[HttpGet]
public object list(string sWhere)
{
try
{
if (sWhere == null || sWhere.Equals(""))
{
ds = oCN.RunProcReturn("select * from h_v_IF_UserList " + sWhere, "h_v_IF_UserList");
}
else
{
string sql1 = "select * from h_v_IF_UserList where 1 = 1 ";
string sql = sql1 + sWhere;
ds = oCN.RunProcReturn(sql, "h_v_IF_UserList");
}
if (ds == null || ds.Tables[0].Rows.Count == 0)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "没有返回任何记录!";
objJsonResult.data = null;
return objJsonResult;
}
else
{
objJsonResult.code = "1";
objJsonResult.count = 1;
objJsonResult.Message = "Sucess!";
objJsonResult.data = ds.Tables[0];
return objJsonResult;
}
}
catch (Exception e)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "Exception!" + e.ToString();
objJsonResult.data = null;
return objJsonResult;
}
}
#endregion
#region [用户列表删除功能]
///
/// 用户信息删除功能
///
///
[Route("Xt_User/DeltetUser")]
[HttpGet]
public object DeltetUser(string HCzybm)
{
try
{
//编辑权限
//if (!DBUtility.ClsPub.Security_Log("Gy_UserByUserRelation_Delete", 1, true, DBUtility.ClsPub.CurUserName))
//{
// objJsonResult.code = "0";
// objJsonResult.count = 0;
// objJsonResult.Message = "无删除权限!";
// objJsonResult.data = null;
// return objJsonResult;
//}
Int64 lngBillKey = 0;
lngBillKey = DBUtility.ClsPub.isLong(HCzybm);
if (lngBillKey == 0)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "用户编码为空!";
objJsonResult.data = null;
return objJsonResult;
}
oCN.BeginTran();
//删除用户信息
oCN.RunProc("delete from Gy_Czygl where Czybm='" + HCzybm + "'");
//删除用户对应的角色信息
oCN.RunProc("delete from System_UserGroupInfo where UserId='" + HCzybm + "'");
DBUtility.ClsPub.Add_Log(DBUtility.ClsPub.CurUserName, "删除用户:" + HCzybm, DBUtility.ClsPub.CurUserName);
oCN.Commit();
objJsonResult.code = "1";
objJsonResult.count = 1;
objJsonResult.Message ="删除信息成功!";
objJsonResult.data = null;
}
catch (Exception e)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = e.Message;
objJsonResult.data = null;
}
return objJsonResult;
}
#endregion
#region[用户列表编辑时获取表头数据]
[Route("Xt_User/EditUser")]
[HttpGet]
public ApiResult EditUser(string HID)
{
if (string.IsNullOrEmpty(HID))
return new ApiResult { code = -1, msg = "ID不能为空" };
SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
var dataSet = oCN.RunProcReturn("select top 1 * from h_v_IF_UserList_Edit where 用户编码= " + HID + " ", "h_v_IF_UserList_Edit");
if (dataSet == null || dataSet.Tables[0].Rows.Count == 0)
return new ApiResult { code = -1, msg = "不存在此用户" };
return new ApiResult { code = 1, msg = "查询成功", data = dataSet };
}
#endregion
#region 用户信息保存
///
///
///
///
///
[Route("Xt_User/SaveUser")]
[HttpPost]
public object SaveUser([FromBody] JObject msg)
{
var _value = msg["msg"].ToString();
string msg1 = _value.ToString();
string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
string msg2 = sArray[0].ToString();
string msg3 = sArray[1].ToString();
ListModels oListModels = new ListModels();
try
{
List lsmain = new List();
msg2 = msg2.Replace("\\", "");
msg2 = msg2.Replace("\n", ""); //\n
lsmain = oListModels.getObjectByJson_Gy_Gy_User(msg2);
oCN.BeginTran();
//保存
if (msg3=="Add") //新增
{
oCN.RunProc("insert into Gy_Czygl (Czybm,Czymc,Czmm,Explain) values ('" + lsmain[0].Czybm.ToString() + "','" + lsmain[0].Czymc.ToString() + "','" + ClsPub.StrToPsd(lsmain[0].Czmm.ToString()) + "','" + lsmain[0].Explain.ToString()+"')");
}
else //修改
{
if (lsmain[0].Czyyz != "" && lsmain[0].Czmm == lsmain[0].Czyyz) //修改密码
{
oCN.RunProc("update Gy_Czygl set Czymc='"+lsmain[0].Czymc.ToString()+ "',Czmm='"+ ClsPub.StrToPsd(lsmain[0].Czmm.ToString()) + "',Explain='"+lsmain[0].Explain.ToString()+ "' where Czybm='"+lsmain[0].Czybm.ToString()+"'");
}
else
{
oCN.RunProc("update Gy_Czygl set Czymc='" + lsmain[0].Czymc.ToString() + "',Explain='" + lsmain[0].Explain.ToString() + "' where Czybm='" + lsmain[0].Czybm.ToString() + "'");
}
}
oCN.Commit();
objJsonResult.code = "1";
objJsonResult.count = 1;
objJsonResult.Message = "保存成功!";
//WebAPIController.Add_Log("送货单下推", UserName, "生成送货单");
objJsonResult.data = 1;
return objJsonResult;
}
catch (Exception e)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "保存失败!" + e.ToString();
objJsonResult.data = 1;
return objJsonResult;
}
}
#endregion
#region 根据用户编码查找已分配供应商列表
[Route("Xt_User/SupperPlaylist")]
[HttpGet]
public object SupperPlaylist(string HUserID)
{
try
{
ds = oCN.RunProcReturn("select HSupID,供应商代码 HSupperNumber,供应商名称 HSupperName from h_v_Gy_UserSupplierList where HUserID='" + HUserID + "' ", "h_v_Gy_UserSupplierList");
if (ds == null || ds.Tables[0].Rows.Count == 0)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "无供应商信息!";
objJsonResult.data = null;
return objJsonResult;
}
else
{
objJsonResult.code = "1";
objJsonResult.count = 1;
objJsonResult.Message = "Sucess!";
objJsonResult.data = ds.Tables[0];
return objJsonResult;
}
}
catch (Exception e)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "Exception!" + e.ToString();
objJsonResult.data = null;
return objJsonResult;
}
}
#endregion
#region 用户关联供应商保存
[Route("Xt_User/SaveUserSupper")]
[HttpPost]
public object SaveUserSupper([FromBody] JObject msg)
{
var _value = msg["msg"].ToString();
string msg1 = _value.ToString();
string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
string msg2 = sArray[0].ToString();
string msg3 = sArray[1].ToString();
ListModels oListModels = new ListModels();
try
{
List lsmain = new List();
msg2 = msg2.Substring(1, msg2.Length - 2);
msg2 = msg2.Replace("\\", "");
msg2 = msg2.Replace("\n", ""); //\n
lsmain = oListModels.getObjectByJson_Gy_UserSupper(msg2);
oCN.BeginTran();
//删除已经关联的数据
oCN.RunProc("Delete From Gy_UserSupplierRelation where HUserID=" + msg3.ToString());
foreach (Models.Gy_UserSupper oItem in lsmain)
{
//重新写入关联数据
oCN.RunProc("insert into Gy_UserSupplierRelation (HSupID,HUserID) values ('" + oItem.HSupID + "','" + msg3.ToString() + "')");
}
oCN.Commit();
objJsonResult.code = "1";
objJsonResult.count = 1;
objJsonResult.Message = "保存成功!";
//WebAPIController.Add_Log("送货单下推", UserName, "生成送货单");
objJsonResult.data = 1;
return objJsonResult;
}
catch (Exception e)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "保存失败!" + e.ToString();
objJsonResult.data = 1;
return objJsonResult;
}
}
#endregion
}
}