三元财务API

MageCusController.cs 17KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475
  1. using CallCenterApi.DB;
  2. using CallCenterApi.Interface.Controllers.Base;
  3. using CallCenterApi.Interface.Models.Input;
  4. using CallCenterApi.Model;
  5. using System;
  6. using System.Collections.Generic;
  7. using System.Data;
  8. using System.Linq;
  9. using System.Web;
  10. using System.Web.Mvc;
  11. namespace CallCenterApi.Interface.Controllers.MageCus
  12. {
  13. public class MageCusController : BaseController
  14. {
  15. BLL.ManagementUser muserbll = new BLL.ManagementUser();
  16. BLL.T_Cus_CustomerBaseNew customnew = new BLL.T_Cus_CustomerBaseNew();
  17. /// <summary>
  18. /// 分页显示管理员账号信息
  19. /// </summary>
  20. /// <param name="PageIndex"></param>
  21. /// <param name="PageSize"></param>
  22. /// <param name="username"></param>
  23. /// <returns></returns>
  24. public ActionResult GetManagementcus(int PageIndex, int PageSize, string username)
  25. {
  26. #region 分页显示管理员账号信息
  27. if (PageIndex == 0)
  28. {
  29. PageIndex = 1;
  30. }
  31. if (PageSize == 0)
  32. {
  33. PageSize = 10;
  34. }
  35. var sql = "";
  36. ///按名称模糊查询
  37. if (username != null)
  38. {
  39. if (username != "")
  40. {
  41. sql += " and username like '%" + username + "%' ";
  42. }
  43. }
  44. Model.PageData<Model.ManagementUser> pageModel = new Model.PageData<Model.ManagementUser>();
  45. var recordCount = 0;
  46. var dt = BLL.PagerBLL.GetListPager(
  47. "ManagementUser",
  48. "ManagementUser.id",
  49. "*",
  50. sql,
  51. "ORDER BY ManagementUser.id desc ",
  52. PageSize,
  53. PageIndex,
  54. true,
  55. out recordCount);
  56. List<Model.ManagementUser> modelList = new BLL.ManagementUser().DataTableToList(dt);
  57. var list = new List<Model.ManagementUser>();
  58. foreach (var item in modelList)
  59. {
  60. list.Add(new Model.ManagementUser
  61. {
  62. id = item.id,
  63. username = item.username,
  64. userpower = item.userpower,
  65. handdate = item.handdate,
  66. handleper = item.handleper,
  67. ifdeler = item.ifdeler,
  68. openid = item.openid
  69. });
  70. }
  71. var obj = new
  72. {
  73. rows = list,
  74. total = recordCount
  75. };
  76. return Success("成功", obj);
  77. #endregion
  78. }
  79. /// <summary>
  80. /// 登陆
  81. /// </summary>
  82. /// <param name="username"></param>
  83. /// <param name="userpower"></param>
  84. /// <param name="openid"></param>
  85. /// <returns></returns>
  86. public ActionResult Login(string username, string userpower, string openid)
  87. {
  88. #region 把其他OpenId更新为空
  89. var userAccount = muserbll.GetModelByOpenid(openid);
  90. if (userAccount != null)
  91. {
  92. userAccount.openid = "";
  93. muserbll.Update(userAccount);
  94. }
  95. #endregion
  96. Dictionary<string, string> paras_Customer = new Dictionary<string, string>();
  97. string sql_Customer = " select * from ManagementUser (NOLOCK) where username=@username and userpower=@userpower ";//and ifdeler = 0
  98. paras_Customer.Add("@username", username);
  99. paras_Customer.Add("@userpower", userpower);
  100. var dt_Customer = DbHelperSQL.Query(sql_Customer, paras_Customer).Tables[0];
  101. if (dt_Customer != null && dt_Customer.Rows.Count > 0)
  102. {
  103. //var customer = customerBaseBLL.GetModel(login.UserCode); //20180926 次方法查询有漏洞
  104. var customer = muserbll.DataTableToList(dt_Customer).ToList().FirstOrDefault();
  105. customer.openid = openid;
  106. if (customer.ifdeler == 0)
  107. {
  108. #region 新加 - 登录后同时获取用户账号,openid,和角色
  109. //5--业主(客户档案会员)
  110. //int UserType = 5;
  111. var obj = new
  112. {
  113. openid = openid,
  114. username = username,
  115. userpower = userpower
  116. };
  117. #endregion
  118. if (muserbll.Update(customer))
  119. return Success("绑定成功!", obj);
  120. else
  121. return Error("绑定失败!");
  122. }
  123. else {
  124. return Error("该账户被禁用!");
  125. }
  126. }
  127. return Error("账号或密码错误或者没有注册,请重新登录");
  128. }
  129. //[Authority]
  130. //添加用户信息
  131. public ActionResult AddUsers(ManagementUserInput input)
  132. {
  133. Model.ManagementUser ManagementUsertModel = new Model.ManagementUser();
  134. //用户名不能重复
  135. string username = input.username.Trim();
  136. //用户名与客户信息表编号也不能重复
  137. Model.T_Cus_CustomerBaseNew cusmodel = customnew.GetModelcuscode(username);
  138. if (cusmodel != null)
  139. return Error("客户名已存在");
  140. Model.ManagementUser uModel = new BLL.ManagementUser().GetModel(username);
  141. if (uModel != null)
  142. {
  143. if (uModel.ifdeler == 0)
  144. {
  145. return Error("该用户名已存在");
  146. }
  147. else {
  148. return Error("该账户被禁用");
  149. }
  150. }
  151. else
  152. {
  153. ManagementUsertModel.username = username;
  154. }
  155. ManagementUsertModel.handleper = CurrentUser.UserData.F_UserCode;// "000";//
  156. ManagementUsertModel.handdate = DateTime.Now;
  157. ManagementUsertModel.ifdeler = 0;
  158. if (input.userpower != null)
  159. ManagementUsertModel.userpower = input.userpower.Trim();
  160. if (muserbll.Add(ManagementUsertModel) > 0)
  161. return Success("新增成功!");
  162. else
  163. return Error("新增失败!");
  164. }
  165. /// <summary>
  166. /// 获取详情
  167. /// </summary>
  168. /// <param name="id"></param>
  169. /// <returns></returns>
  170. public ActionResult GetModelarchives(int id)
  171. {
  172. var model = muserbll.GetModels(id);
  173. if (model == null)
  174. return Error("该信息不存在");
  175. //根据id获取过关联的客户信息
  176. var manacustomer = muserbll.GetManageCustomerModelList(" mangid="+id);
  177. string companyname = "";
  178. int a = 1;
  179. foreach (var item in manacustomer)
  180. {
  181. companyname += item.F_CompanyName;
  182. if (a < manacustomer.Count)
  183. {
  184. companyname += ",";
  185. }
  186. a++;
  187. }
  188. var obj = new Model.ManagementUser
  189. {
  190. id = model.id,
  191. username = model.username,
  192. userpower = model.userpower,
  193. handdate = model.handdate,
  194. handleper = model.handleper,
  195. ifdeler = model.ifdeler,
  196. openid = model.openid,
  197. companyname = companyname
  198. };
  199. return Success("获取成功", obj);
  200. }
  201. //修改用户信息
  202. public ActionResult EditUsers(ManagementUserInput input)
  203. {
  204. Model.ManagementUser ManagementUsertModel = muserbll.GetModelList(" id = " + input.id).FirstOrDefault();
  205. if (ManagementUsertModel == null)
  206. return Error("获取用户失败");
  207. //用户名不能重复
  208. string username = input.username.Trim();
  209. //用户名与客户信息表编号也不能重复
  210. Model.T_Cus_CustomerBaseNew cusmodel = customnew.GetModelcuscode(username);
  211. if (cusmodel != null)
  212. return Error("客户名已存在");
  213. Model.ManagementUser uModel = new BLL.ManagementUser().GetModel(username);
  214. if (uModel != null)
  215. {
  216. if (uModel.id != input.id)
  217. {
  218. if (uModel != null)
  219. {
  220. if (uModel.ifdeler == 0)
  221. {
  222. return Error("该用户名已存在");
  223. }
  224. else
  225. {
  226. return Error("该账户被禁用");
  227. }
  228. }
  229. else
  230. {
  231. ManagementUsertModel.username = username;
  232. }
  233. }
  234. else
  235. {
  236. ManagementUsertModel.username = username;
  237. }
  238. }
  239. else {
  240. ManagementUsertModel.username = username;
  241. }
  242. ManagementUsertModel.handleper = CurrentUser.UserData.F_UserCode;//;//"900";//
  243. ManagementUsertModel.handdate = DateTime.Now;
  244. ManagementUsertModel.ifdeler = 0;
  245. if (input.userpower != null)
  246. ManagementUsertModel.userpower = input.userpower.Trim();
  247. if (muserbll.Update(ManagementUsertModel))
  248. return Success("编辑成功!");
  249. else
  250. return Error("编辑失败!");
  251. }
  252. //[Authority]
  253. //删除用户
  254. public ActionResult DeleteUsers(string ids)
  255. {
  256. if (ids == null || ids=="")
  257. return Error("请选择用户");
  258. if (string.IsNullOrEmpty(ids))
  259. return Error("请选择用户");
  260. if (muserbll.DeleteList(ids))
  261. return Success("删除成功");
  262. else
  263. return Error("删除失败");
  264. }
  265. /// <summary>
  266. /// 根据名称获取管理员信息
  267. /// </summary>
  268. /// <param name="username"></param>
  269. /// <returns></returns>
  270. public ActionResult GetModelManageuser(string username)
  271. {
  272. string sql = "";
  273. var list = new List<Model.ManagementUser>();
  274. if (username == null || username == "")
  275. {
  276. sql += " ifdeler=0";
  277. }
  278. else
  279. {
  280. sql += " ifdeler=0 ";
  281. sql += $" and username like '%" + username.Trim() + "%'";
  282. }
  283. if (!string.IsNullOrWhiteSpace(sql))
  284. {
  285. list = muserbll.GetModelList(sql);
  286. }
  287. if (list.Count > 0)
  288. return Success("根据名称获取管理员信息", list);
  289. else
  290. return Success("没有获取到管理员信息,请重新搜索", list);
  291. }
  292. /// <summary>
  293. /// 获取管理员和客户关联信息
  294. /// </summary>
  295. /// <returns></returns>
  296. public ActionResult GetManageCustomer(int PageIndex, int PageSize)
  297. {
  298. //DataTable dt = new DataTable();
  299. //dt = muserbll.GetManageCustomer().Tables[0];
  300. //return Success("加载成功", dt);
  301. #region 分页显示管理员账号信息
  302. if (PageIndex == 0)
  303. {
  304. PageIndex = 1;
  305. }
  306. if (PageSize == 0)
  307. {
  308. PageSize = 10;
  309. }
  310. var sql = " ";
  311. Model.PageData<Model.ManageCustomer> pageModel = new Model.PageData<Model.ManageCustomer>();
  312. var recordCount = 0;
  313. var dt = BLL.PagerBLL.GetListPager(
  314. "( select a.*,b.username,c.F_CompanyName,c.F_CustomerCode from ManageCustomer a left join ManagementUser b on a.mangid=b.id left join T_Cus_CustomerBaseNew c on a.cusmid=c.F_CustomerId ) d",
  315. "d.id",
  316. "*",
  317. sql,
  318. "ORDER BY d.id desc ",
  319. PageSize,
  320. PageIndex,
  321. true,
  322. out recordCount);
  323. List<Model.ManageCustomer> modelList = new BLL.ManagementUser().DataTableToList1(dt);
  324. var list = new List<Model.ManageCustomer>();
  325. foreach (var item in modelList)
  326. {
  327. list.Add(new Model.ManageCustomer
  328. {
  329. id = item.id,
  330. username = item.username,
  331. mangid=item.mangid,
  332. cusmid=item.cusmid,
  333. F_CompanyName=item.F_CompanyName,
  334. F_CustomerCode=item.F_CustomerCode
  335. });
  336. }
  337. var obj = new
  338. {
  339. rows = list,
  340. total = recordCount
  341. };
  342. return Success("成功", obj);
  343. #endregion
  344. }
  345. //添加关联信息
  346. public ActionResult AddManageCustomer(int mangid,string cusmid)
  347. {
  348. string[] arrStr = cusmid.Split(',');
  349. foreach (var item in arrStr)
  350. {
  351. Model.ManageCustomer ManageCustomerModel = new Model.ManageCustomer();
  352. ManageCustomerModel.mangid = mangid;
  353. ManageCustomerModel.cusmid =Convert.ToInt32(item);
  354. if (muserbll.AddManageCustomer(ManageCustomerModel) > 0)
  355. {
  356. }
  357. else
  358. {
  359. return Error("新增失败!");
  360. }
  361. }
  362. return Success("新增成功!");
  363. }
  364. /// <summary>
  365. /// 获取管理员客户关联数据详情
  366. /// </summary>
  367. /// <param name="id"></param>
  368. /// <returns></returns>
  369. public ActionResult GetManageCustomerModel(int id)
  370. {
  371. var model = muserbll.GetManageCustomerModel(id);
  372. if (model == null)
  373. return Error("该信息不存在");
  374. var obj = new Model.ManageCustomer
  375. {
  376. id = model.id,
  377. cusmid=model.cusmid,
  378. mangid=model.mangid,
  379. username=model.username,
  380. F_CompanyName=model.F_CompanyName,
  381. F_CustomerCode=model.F_CustomerCode
  382. };
  383. return Success("获取成功", obj);
  384. }
  385. /// <summary>
  386. /// 修改管理员客户关联数据信息
  387. /// </summary>
  388. /// <param name="mangid"></param>
  389. /// <param name="cusmid"></param>
  390. /// <param name="id"></param>
  391. /// <returns></returns>
  392. public ActionResult UpdateManageCustomer(int mangid, int cusmid,int id)
  393. {
  394. Model.ManageCustomer ManageCustomerModel = new Model.ManageCustomer();
  395. ManageCustomerModel.mangid = mangid;
  396. ManageCustomerModel.cusmid = cusmid;
  397. ManageCustomerModel.id = id;
  398. if (muserbll.UpdateManageCustomer(ManageCustomerModel))
  399. return Success("修改成功!");
  400. else
  401. return Error("修改失败!");
  402. }
  403. /// <summary>
  404. /// 根据用户名获取所管理的客户
  405. /// </summary>
  406. /// <param name="username"></param>
  407. /// <returns></returns>
  408. public ActionResult GetManageCustomername(string username)
  409. {
  410. ManagementUser mause = muserbll.GetModelname(username);
  411. int id = 0;
  412. if (mause != null)
  413. {
  414. id = mause.id;
  415. }
  416. string sql = "";
  417. if (id > 0)
  418. {
  419. sql += " mangid=" + id;
  420. }
  421. var maulist = muserbll.GetManageCustomerModelList(sql);
  422. return Success("获取成功", maulist);
  423. }
  424. /// <summary>
  425. /// 删除管理员账号与客户关联表数据
  426. /// </summary>
  427. /// <param name="ids"></param>
  428. /// <returns></returns>
  429. public ActionResult DeleManageCust(string ids)
  430. {
  431. if (ids == null || ids == "")
  432. return Error("请选择数据");
  433. if (string.IsNullOrEmpty(ids))
  434. return Error("请选择数据");
  435. if (muserbll.DeleteManaList(ids))
  436. return Success("删除成功");
  437. else
  438. return Error("删除失败");
  439. }
  440. }
  441. }