using System; using System.Collections.Generic; using System.Common; using System.IRepositories; using System.Linq; using System.Model; using System.Security.Claims; using System.Threading.Tasks; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Mvc; using TVShoppingCallCenter_ZLJ.Models.Inputs; using SqlSugar; namespace TVShoppingCallCenter_ZLJ.Controllers.Customer { //[Authorize] [Produces("application/json")] [Route("api/[controller]")] public class VipInfoController : BaseController { private readonly ICus_VipInfoRepository _cus_vip_infoRepository; private readonly ISys_UserAccountRepository _sys_user_accountRepository; public VipInfoController(ICus_VipInfoRepository cus_vip_infoRepository, ISys_UserAccountRepository sys_user_accountRepository) { _cus_vip_infoRepository = cus_vip_infoRepository; _sys_user_accountRepository = sys_user_accountRepository; } [HttpGet] public IActionResult Index() { return Success("成功"); } /// /// 获取会员列表分页 /// /// /// /// /// [HttpGet("getlistbypage")] public async Task GetListsByPageAsync(string keyword, int pageindex = 1, int pagesize = 20) { List conModels = new List(); #region 条件筛选 conModels.Add(new ConditionalModel() { FieldName = "F_State", ConditionalType = ConditionalType.Equal, FieldValue = ((int)EnumDelState.Enabled).ToString() }); if (!string.IsNullOrEmpty(keyword)) { conModels.Add(new ConditionalModel() { FieldName = "F_Name", ConditionalType = ConditionalType.Like, FieldValue = keyword }); } #endregion int recordCount = 0; var list = await _cus_vip_infoRepository.GetListByPage(conModels, new MyPageModel() { PageIndex = pageindex, PageSize = pagesize, PageCount = recordCount }); var obj = new { state = "success", message = "成功", rows = list, total = recordCount, }; return Content(obj.ToJson()); } /// /// 获取会员信息详情 /// /// id /// [HttpGet("getdetailes")] public async Task GetDetailsAsync(int id) { if (id <= 0) return Error("参数错误"); var model = await _cus_vip_infoRepository.GetSingle(x => x.F_ID == id); if (model == null) { return Error("获取失败"); } return Success("获取成功!", model); } /// /// 添加会员 /// /// /// [HttpPost("add")] public async Task AddAsync(VipInfoInput input) { if (string.IsNullOrEmpty(input.name )) return Error("请输入名字"); if (string.IsNullOrEmpty(input.phone )) return Error("请输入手机号"); var model = new T_Cus_VipInfo(); model.F_VIPCode = input .vipcode ;//会员卡号 model.F_Name = input.name; model.F_Birthday = input.birthday ; model.F_Phone = input.phone; model.F_Recommender = input.recommender; model.F_Sex = input.sex; model.F_Label = input.label; model.F_State = input.state; model.F_Note = input.note; model.F_City = input.city; model.F_Nickname = input.nickname; model.F_Address = input.address; model.F_Address1 = input.address1; model.F_RegTime = DateTime.Now; model.F_CreateBy = User.Claims.FirstOrDefault(c => c.Type == ClaimTypes.Sid).Value; model.F_CreateOn = DateTime.Now; if (await _cus_vip_infoRepository.GetCount(x => x.F_VIPCode == model.F_VIPCode && x.F_Name == input.name) > 0) { return Error("添加失败,存在相同会员信息"); } var res = await _cus_vip_infoRepository.Add(model); if (res > 0) { return Success("添加成功"); } else { return Error("添加失败"); } } /// /// 修改会员信息 /// [HttpPost("update")] public async Task UpdateAsync(VipInfoInput input) { if (string.IsNullOrEmpty(input.name)) return Error("请输入名字"); if (string.IsNullOrEmpty(input.phone)) return Error("请输入手机号"); var model = await _cus_vip_infoRepository.GetSingle(x => x.F_ID == input.id); if (model == null) return Error("操作失败"); //model.F_VIPCode = input.vipcode;//会员卡号 model.F_Name = input.name; model.F_Birthday = input.birthday; model.F_Phone = input.phone; model.F_Recommender = input.recommender; model.F_Sex = input.sex; model.F_Label = input.label; model.F_State = input.state; model.F_Note = input.note; model.F_City = input.city; model.F_Nickname = input.nickname; model.F_Address = input.address; model.F_Address1 = input.address1; model.F_RegTime = DateTime.Now; model.F_LastModifyOn = DateTime.Now.ToLocalTime(); model.F_LastModifyBy = User.Claims.FirstOrDefault(c => c.Type == ClaimTypes.Sid).Value; bool b = await _cus_vip_infoRepository.Update(model); if (b) return Success("修改成功"); return Error("修改失败"); } /// /// 删除会员信息 by ids /// /// /// [HttpPost("delete")] public async Task Remove(int[] ids) { var res = 0; if (ids != null && ids.Length > 0) { foreach (var item in ids) { var ml = await _cus_vip_infoRepository.GetSingle(x => x.F_ID == item); ml.F_State = (int)EnumDelState.Delete; ml.F_DeleteOn = DateTime.Now.ToLocalTime(); ml.F_DeleteBy = User.Claims.FirstOrDefault(c => c.Type == ClaimTypes.Sid).Value; if (_cus_vip_infoRepository.Update(ml).Result) res += 1; } if (res == ids.Length) return Success("删除成功"); else if (res > 0 && res < ids.Length) return Error("部分删除失败,请查看后重新操作"); else return Error("删除失败,请查看后重新操作"); } else return Error("请选择要删除的记录"); } } }