| | |
| | | using SqlSugar; |
| | | using CoreCms.Net.Web.Admin.Infrastructure; |
| | | using CoreCms.Net.Model.Entities.baifenbingfa.apply; |
| | | using CoreCms.Net.Model.ViewModels.baifenbingfa; |
| | | using CoreCms.Net.Auth.HttpContextUser; |
| | | using Essensoft.Paylink.Alipay.Domain; |
| | | using Microsoft.CodeAnalysis.CSharp.Syntax; |
| | | using K4os.Compression.LZ4.Internal; |
| | | |
| | | namespace CoreCms.Net.Web.Admin.Controllers |
| | | { |
| | |
| | | { |
| | | private readonly IWebHostEnvironment _webHostEnvironment; |
| | | private readonly IapplyModelServices _applyModelServices; |
| | | private readonly IHttpContextUser _httpContextUser; |
| | | private readonly ICoreCmsUserServices _coreCmsUserServices; |
| | | private readonly ISysRoleServices _sysRoleServices; |
| | | private readonly ISysUserRoleServices _sysUserRoleServices; |
| | | |
| | | /// <summary> |
| | | /// 构造函数 |
| | | ///</summary> |
| | | public applyModelController(IWebHostEnvironment webHostEnvironment |
| | | ,IapplyModelServices applyModelServices |
| | | , IHttpContextUser httpContextUser |
| | | , ICoreCmsUserServices coreCmsUserServices |
| | | , ISysRoleServices sysRoleServices |
| | | , ISysUserRoleServices sysUserRoleServices |
| | | ) |
| | | { |
| | | _webHostEnvironment = webHostEnvironment; |
| | | _applyModelServices = applyModelServices; |
| | | _httpContextUser = httpContextUser; |
| | | _coreCmsUserServices = coreCmsUserServices; |
| | | _sysRoleServices = sysRoleServices; |
| | | _sysUserRoleServices = sysUserRoleServices; |
| | | } |
| | | |
| | | #region 获取列表============================================================ |
| | |
| | | jm.msg = "不存在此信息"; |
| | | return jm; |
| | | } |
| | | //审批逻辑 |
| | | //判断审批状态是否可以审批 |
| | | if (model.ayStataType != applyStataType.applying) |
| | | { |
| | | jm.msg = "信息已经审批结束"; |
| | | return jm; |
| | | } |
| | | //查询审批角色里边是否有当前人,当前人是否已经审批过了 |
| | | var id = _httpContextUser.ID; |
| | | var name = _httpContextUser.Name; |
| | | |
| | | var shenpirole = _sysRoleServices.QueryListByClause(x=>x.roleCode == model.roleID).FirstOrDefault(); |
| | | if (shenpirole != null) |
| | | { |
| | | var shenpiren = _sysUserRoleServices.QueryListByClause(x => x.roleId == shenpirole.id && x.userId == id).FirstOrDefault(); |
| | | if(shenpiren == null) |
| | | { |
| | | jm.msg = "你不是审批人"; |
| | | return jm; |
| | | } |
| | | } |
| | | else |
| | | { |
| | | jm.msg = "没有审批角色"; |
| | | return jm; |
| | | } |
| | | |
| | | |
| | | if (!string.IsNullOrEmpty(model.managerID)) |
| | | { |
| | | var managerID = model.managerID.Split(','); |
| | | var sid = id + ""; |
| | | var managerIDs = managerID.Where(x => x == sid).FirstOrDefault(); |
| | | |
| | | if (!string.IsNullOrEmpty(managerIDs)) |
| | | { |
| | | jm.msg = "你已经审批过了"; |
| | | return jm; |
| | | } |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | var modelDTO = new applyModelDTO(); |
| | | modelDTO.id = model.id; |
| | | |
| | | modelDTO.id = model.id; |
| | | modelDTO.managerID = model.managerID; |
| | | modelDTO.managerName = model.managerName; |
| | | modelDTO.roleID = model.roleID; |
| | | modelDTO.managerApplyCount = model.managerApplyCount; |
| | | modelDTO.aType = (int)model.aType; |
| | | modelDTO.aTypeName = model.aType.GetDescription(); |
| | | modelDTO.ayStataType = (int)model.ayStataType; |
| | | modelDTO.ayStataTypeName = model.ayStataType.GetDescription(); |
| | | modelDTO.userID = model.userID; |
| | | modelDTO.dec = model.dec; |
| | | modelDTO.reMake = model.reMake; |
| | | modelDTO.oldData = model.oldData; |
| | | modelDTO.data = model.data; |
| | | modelDTO.createById = model.createById; |
| | | modelDTO.upDataById = model.upDataById; |
| | | modelDTO.createTime = model.createTime; |
| | | modelDTO.upDataTime = model.upDataTime; |
| | | modelDTO.createBy = model.createBy; |
| | | modelDTO.upDataBy = model.upDataBy; |
| | | modelDTO.isdelete = model.isdelete; |
| | | modelDTO.isdelete = true; |
| | | jm.code = 0; |
| | | jm.data = model; |
| | | jm.data = modelDTO; |
| | | |
| | | return jm; |
| | | } |
| | |
| | | [Description("编辑提交")] |
| | | public async Task<AdminUiCallBack> DoEdit([FromBody]applyModel entity) |
| | | { |
| | | var jm = await _applyModelServices.UpdateAsync(entity); |
| | | |
| | | |
| | | var applyModel = await _applyModelServices.QueryByIdAsync(entity.id, false); |
| | | var jm = new AdminUiCallBack(); |
| | | if (applyModel == null) |
| | | { |
| | | jm.msg = "不存在此信息"; |
| | | return jm; |
| | | } |
| | | //审批逻辑 |
| | | //判断审批状态是否可以审批 |
| | | if (applyModel.ayStataType != applyStataType.applying) |
| | | { |
| | | jm.msg = "信息已经审批结束"; |
| | | return jm; |
| | | } |
| | | var id = _httpContextUser.ID; |
| | | var name = _httpContextUser.Name; |
| | | if (!string.IsNullOrEmpty(applyModel.managerID)) |
| | | { |
| | | var managerID = applyModel.managerID.Split(','); |
| | | var sid = id + ""; |
| | | var managerIDs = managerID.Where(x => x == sid).FirstOrDefault(); |
| | | |
| | | if (!string.IsNullOrEmpty(managerIDs)) |
| | | { |
| | | jm.msg = "你已经审批过了"; |
| | | return jm; |
| | | } |
| | | } |
| | | |
| | | //同意还是拒绝 |
| | | |
| | | if (entity.isdelete == true) |
| | | { |
| | | if (string.IsNullOrEmpty(applyModel.managerID)) |
| | | { |
| | | if(applyModel.managerApplyCount == 1) |
| | | { |
| | | applyModel.ayStataType = applyStataType.ok; |
| | | } |
| | | else |
| | | { |
| | | applyModel.ayStataType = applyStataType.applying; |
| | | } |
| | | applyModel.managerID = id + ""; |
| | | applyModel.managerName = name + ""; |
| | | } |
| | | else |
| | | { |
| | | var managerID = applyModel.managerID.Split(','); |
| | | if(managerID.Length +1 < applyModel.managerApplyCount) |
| | | { |
| | | applyModel.ayStataType = applyStataType.applying; |
| | | } |
| | | else |
| | | { |
| | | applyModel.ayStataType = applyStataType.ok; |
| | | } |
| | | applyModel.managerID += "," +id ; |
| | | applyModel.managerName += "," + name; |
| | | } |
| | | } |
| | | else |
| | | { |
| | | applyModel.ayStataType = applyStataType.no; |
| | | if (string.IsNullOrEmpty(applyModel.managerID)) |
| | | { |
| | | applyModel.managerID = id + ""; |
| | | applyModel.managerName = name + ""; |
| | | } |
| | | else |
| | | { |
| | | applyModel.managerID += "," + id; |
| | | applyModel.managerName += "," + name; |
| | | } |
| | | } |
| | | applyModel.upDataBy = name; |
| | | applyModel.upDataById = id; |
| | | applyModel.upDataTime = DateTime.Now; |
| | | //修改审批人,审批状态 |
| | | jm = await _applyModelServices.UpdateAsync(applyModel); |
| | | //如果审批已经通过,执行修改。 |
| | | if (applyModel.ayStataType == applyStataType.ok) |
| | | { |
| | | if (applyModel.aType == applyType.points) |
| | | { |
| | | FMUpdateUserPoint entityjifen = new FMUpdateUserPoint(); |
| | | entityjifen.id = applyModel.userID; |
| | | int data; |
| | | int.TryParse(entity.data, out data); |
| | | entityjifen.point = data; |
| | | entityjifen.memo = applyModel.reMake; |
| | | jm = await _coreCmsUserServices.UpdatePiont(entityjifen); |
| | | } |
| | | else if (applyModel.aType == applyType.Balance) |
| | | { |
| | | decimal data; |
| | | decimal.TryParse(entity.data, out data); |
| | | |
| | | jm = await _coreCmsUserServices.UpdateBalance(applyModel.userID, data, applyModel.reMake); |
| | | } |
| | | else if (applyModel.aType == applyType.Referrer) |
| | | { |
| | | int data; |
| | | int.TryParse(entity.data, out data); |
| | | var bl = await _coreCmsUserServices.UpdateAsync(p => new CoreCmsUser() { parentId = data }, p => p.id == applyModel.userID); |
| | | } |
| | | } |
| | | if(jm.code == 0) |
| | | { |
| | | jm.msg = "审批成功"; |
| | | } |
| | | |
| | | return jm; |
| | | } |
| | | #endregion |
| | |
| | | var jm = new AdminUiCallBack(); |
| | | |
| | | var model = await _applyModelServices.QueryByIdAsync(entity.id, false); |
| | | |
| | | |
| | | if (model == null) |
| | | { |
| | | jm.msg = "不存在此信息"; |
| | | return jm; |
| | | } |
| | | |
| | | var modelDTO = new applyModelDTO(); |
| | | modelDTO.id = model.id; |
| | | |
| | | modelDTO.id = model.id; |
| | | modelDTO.managerID = model.managerID; |
| | | modelDTO.managerName = model.managerName; |
| | | modelDTO.roleID = model.roleID; |
| | | modelDTO.managerApplyCount = model.managerApplyCount; |
| | | modelDTO.aType = (int)model.aType; |
| | | modelDTO.aTypeName = model.aType.GetDescription(); |
| | | modelDTO.ayStataType = (int)model.ayStataType; |
| | | modelDTO.ayStataTypeName = model.ayStataType.GetDescription(); |
| | | modelDTO.userID = model.userID; |
| | | modelDTO.dec = model.dec; |
| | | modelDTO.reMake = model.reMake; |
| | | modelDTO.oldData = model.oldData; |
| | | modelDTO.data = model.data; |
| | | modelDTO.createById = model.createById; |
| | | modelDTO.upDataById = model.upDataById; |
| | | modelDTO.createTime = model.createTime; |
| | | modelDTO.upDataTime = model.upDataTime; |
| | | modelDTO.createBy = model.createBy; |
| | | modelDTO.upDataBy = model.upDataBy; |
| | | modelDTO.isdelete = model.isdelete; |
| | | |
| | | |
| | | jm.code = 0; |
| | | jm.data = model; |
| | | jm.data = modelDTO; |
| | | |
| | | return jm; |
| | | } |