From 1cb49b04ae6709e6054c328f5ed12bff9ca014c8 Mon Sep 17 00:00:00 2001
From: 移动系统liao <liaoxujun@qq.com>
Date: 星期二, 12 十一月 2024 09:21:57 +0800
Subject: [PATCH] no message

---
 CoreCms.Net.Web.Admin/Controllers/apply/applyModelController.cs |  310 +++++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 286 insertions(+), 24 deletions(-)

diff --git a/CoreCms.Net.Web.Admin/Controllers/apply/applyModelController.cs b/CoreCms.Net.Web.Admin/Controllers/apply/applyModelController.cs
index d2443ff..a904480 100644
--- a/CoreCms.Net.Web.Admin/Controllers/apply/applyModelController.cs
+++ b/CoreCms.Net.Web.Admin/Controllers/apply/applyModelController.cs
@@ -32,6 +32,13 @@
 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;
+using CoreCms.Net.Model.ViewModels.Basics;
+using System.Collections.Generic;
 
 namespace CoreCms.Net.Web.Admin.Controllers
 {
@@ -47,16 +54,28 @@
     {
         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 鑾峰彇鍒楄〃============================================================
@@ -99,31 +118,28 @@
                 where = where.And(p => p.id == id);
             }
 			//瀹℃壒浜篒D varchar
-			var managerID = Request.Form["managerID"].FirstOrDefault();
-            if (!string.IsNullOrEmpty(managerID))
+			var managerName = Request.Form["managerName"].FirstOrDefault();
+            if (!string.IsNullOrEmpty(managerName))
             {
-                where = where.And(p => p.managerID.Contains(managerID));
+                where = where.And(p => p.managerName.Contains(managerName));
             }
-			//瀹℃壒瑙掕壊ID varchar
-			var roleID = Request.Form["roleID"].FirstOrDefault();
-            if (!string.IsNullOrEmpty(roleID))
-            {
-                where = where.And(p => p.roleID.Contains(roleID));
-            }
-			//瀹℃牳浜烘暟鏁伴噺 int
-			var managerApplyCount = Request.Form["managerApplyCount"].FirstOrDefault().ObjectToInt(0);
-            if (managerApplyCount > 0)
-            {
-                where = where.And(p => p.managerApplyCount == managerApplyCount);
-            }
+			 
 			//绫诲瀷 int
-			var aType = Request.Form["aType"].FirstOrDefault().ObjectToInt(0);
-            if (aType > 0)
+			var aType = Request.Form["aType"].FirstOrDefault().ObjectToInt(-1);
+            if (aType > -1)
             {
                 where = where.And(p => p.aType ==(applyType)aType);
             }
-			//鍐呭 varchar
-			var dec = Request.Form["dec"].FirstOrDefault();
+            //绫诲瀷 int
+            var ayStataType = Request.Form["ayStataType"].FirstOrDefault().ObjectToInt(-1);
+            if (ayStataType > -1)
+            {
+                where = where.And(p => p.ayStataType == (applyStataType)ayStataType);
+            }
+
+
+            //鍐呭 varchar
+            var dec = Request.Form["dec"].FirstOrDefault();
             if (!string.IsNullOrEmpty(dec))
             {
                 where = where.And(p => p.dec.Contains(dec));
@@ -206,10 +222,45 @@
             }
             //鑾峰彇鏁版嵁
             var list = await _applyModelServices.QueryPageAsync(where, orderEx, orderBy, pageCurrent, pageSize, true);
+           
+                var applyModelDTOs = new List<applyModelDTO>();
+
+            foreach( var model in list)
+            {
+                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;
+                applyModelDTOs.Add(modelDTO);
+            }
+
+            IPageList<applyModelDTO>  listpage = new PageList<applyModelDTO>(applyModelDTOs, list.PageIndex, pageSize, list.TotalCount);
+
+
             //杩斿洖鏁版嵁
-            jm.data = list;
+            jm.data = listpage;
             jm.code = 0;
-            jm.count = list.TotalCount;
+            jm.count = listpage.TotalCount;
             jm.msg = "鏁版嵁璋冪敤鎴愬姛!";
             return jm;
         }
@@ -282,8 +333,77 @@
                 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;
         }
@@ -300,7 +420,120 @@
         [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
@@ -361,13 +594,42 @@
             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;
         }

--
Gitblit v1.9.1