From 6e2b929cf381e2320ba6e7dec56c0371124d2b51 Mon Sep 17 00:00:00 2001
From: username@email.com <yzy2002yzy@163.com>
Date: 星期六, 27 八月 2022 15:03:00 +0800
Subject: [PATCH] 提交

---
 zhengcaioa/zhengcaioa/Controllers/admin/AdmAskController.cs |  182 +++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 181 insertions(+), 1 deletions(-)

diff --git a/zhengcaioa/zhengcaioa/Controllers/admin/AdmAskController.cs b/zhengcaioa/zhengcaioa/Controllers/admin/AdmAskController.cs
index cb75041..23e8156 100644
--- a/zhengcaioa/zhengcaioa/Controllers/admin/AdmAskController.cs
+++ b/zhengcaioa/zhengcaioa/Controllers/admin/AdmAskController.cs
@@ -30,6 +30,11 @@
         private readonly ICooperatecustomCustomerService _cooperatecustomCustomerService;
         private readonly IIntentionCustomerService _intentionCustomerService;
         private readonly IHrPositionService _hrPositionService;
+        private readonly IAdmGoodsRecordService _admGoodsRecordService;
+        private readonly IFiSubjectService _ifiSubjectService;
+        private readonly IFiAccountService _fiAccountService;
+
+        private readonly IFiAccountRecordService _iFiAccountRecordService;
 
         public AdmAskController(ILogger<AdmAskController> logger, IAskService askService, IHrDeptService hrDeptService, IWfRunProcessService wfRunProcessService
             , IWfHistoryService wfHistoryService, IWfNeeddeelService wfNeeddeelService
@@ -39,7 +44,11 @@
             , IAdmBreakPrecedentService aAdmBreakPrecedentService
             , ICooperatecustomCustomerService cooperatecustomCustomerService
             , IIntentionCustomerService intentionCustomerService
-            , IHrPositionService hrPositionService)
+            , IHrPositionService hrPositionService
+            , IAdmGoodsRecordService admGoodsRecordService
+            , IFiSubjectService ifiSubjectService
+            , IFiAccountService fiAccountService
+            , IFiAccountRecordService iFiAccountRecordService)
         {
             _logger = logger;
             _hrDeptService = hrDeptService;
@@ -54,6 +63,10 @@
             _cooperatecustomCustomerService = cooperatecustomCustomerService;
             _intentionCustomerService = intentionCustomerService;
             _hrPositionService = hrPositionService;
+            _admGoodsRecordService = admGoodsRecordService;
+            _ifiSubjectService = ifiSubjectService;
+            _fiAccountService = fiAccountService;
+            _iFiAccountRecordService = iFiAccountRecordService;
         }
 
         public IActionResult Askcost(string id = "")
@@ -277,6 +290,19 @@
                         resultEntity.Message = "鐗╁搧鍓╀綑鏁伴噺涓嶈冻";
                         return new JsonResult(resultEntity);
                     }
+
+                    AdmGoodsRecordDTO dto = new AdmGoodsRecordDTO();
+                    dto.GoodsId = admGoodsManageDTO.Id;
+                    dto.GoodsNum = admAskGoodDTO.Shuliang.Value;
+                    dto.GoodsLeft = admGoodsManageDTO.GoodsLeft;
+                    dto.RecordTypeId = "02";
+                    dto.RecStatus = "A";
+                    dto.Creater = curentuser.Id;
+                    dto.Createtime = DateTime.Now;
+                    dto.Modifier = curentuser.Id;
+                    dto.Modifytime = DateTime.Now;
+                    dto.OperationalMatters = admAskGoodDTO.Tittle;
+                    resultEntity = _admGoodsRecordService.save(dto);
                 }
 
 
@@ -1277,6 +1303,12 @@
 
             //ViewBag.CooperatecustomCustomerDTOs = 
 
+            if (dangqianbuzhou == "璐㈠姟瀹℃壒")
+            {
+                ViewBag.accounttype = _liaotianService.GetSYScode("fi_account", "accounttype");
+                ViewBag.FiSubject = _ifiSubjectService.GetList().Where(x => x.Subjecttype == "02").ToList();
+            }
+
             ViewData.Model = dto;
             return View();
         }
@@ -1311,6 +1343,39 @@
                     }
                 }
 
+                if(data.Step == "璐㈠姟瀹℃壒" && data.Tongguojujue == "A")
+                {
+                    WfRunProcessDTO wfRunProcessDTO = _wfRunProcessService.GetList(data.Id, "20").FirstOrDefault();
+
+                    FiAccountRecordDTO datafi = new FiAccountRecordDTO();
+                    datafi.Creater = curentuser.Id;
+                    datafi.Createtime = DateTime.Now;
+                    datafi.Modifier = curentuser.Id;
+                    datafi.Modifytime = DateTime.Now;
+                    datafi.AccountId = data.AccountId;
+                    datafi.Accounttype = data.Accounttype;
+                    datafi.SubjectId = data.SubjectId;
+                    datafi.Money = data.Jine;
+                    if(wfRunProcessDTO!=null)
+                        datafi.OperationalMatters = data.Tittle + wfRunProcessDTO.Applyno;
+                    datafi.PaymentUnit = data.Username;
+                    FiAccountDTO firmAccount = _fiAccountService.Get(data.AccountId);
+
+
+                    datafi.RecordTypeId = "2";//鏀嚭
+                                            //data.Department = "";
+
+                    //resultEntity = _iFiAccountRecordService.save(data);
+
+                    firmAccount.AllExpenses = (firmAccount.AllExpenses ?? 0) + datafi.Money;
+                    firmAccount.Balance = (firmAccount.Balance ?? 0) - datafi.Money;
+
+                    datafi.AccountMoney = firmAccount.Balance;
+
+                    resultEntity = _iFiAccountRecordService.save(datafi);
+
+                    resultEntity = _fiAccountService.save(firmAccount);
+                }
 
 
                 //鍙戣捣娴佺▼鐩稿叧
@@ -1325,6 +1390,121 @@
             return new JsonResult(resultEntity);
         }
 
+
+
+        public IActionResult CustomerRefund(string id = "")
+        {
+            AdmCustomerWithdrawalDTO dto = new AdmCustomerWithdrawalDTO();
+            var curentuser = JsonConvert.DeserializeObject<PltUser>(HttpContext.Session.GetString("User"));
+
+
+            //娴佺▼鐩稿叧
+            string shifoubiaoji = "A";
+            string sifoudangqian = "A";
+            string dangqianbuzhou = "鎻愪氦";
+            var lishiyijian = new List<WfHistoryDTO>();
+
+            if (string.IsNullOrEmpty(id))
+            {
+                dto.CreaterName = curentuser.UserName;
+                dto.Tittle = "浼氬憳閫�娆剧敵璇凤紙" + curentuser.UserName + "锛�";
+            }
+            else if (dto != null)
+            {
+                dto = _askService.GetCustomerWithdrawal(id);
+                dto.ShenqingtimeName = dto.Shenqingtime.ToString("yyyy-MM-dd");
+                dto.JineName = dto.Jine.Value.ToString("F2");
+
+                var wfRunProcessDTO = _wfRunProcessService.GetList(dto.Id, "23").FirstOrDefault();
+                if (wfRunProcessDTO == null)
+                {
+                    shifoubiaoji = "D";
+                    sifoudangqian = "D";
+                }
+                else
+                {
+                    dangqianbuzhou = wfRunProcessDTO.Step;
+                    //鏌ヨ瀹℃壒杩涘害
+                    lishiyijian = _wfHistoryService.GetListshenpi(wfRunProcessDTO.Id);
+                    if (wfRunProcessDTO.Step != "鎻愪氦")
+                    {
+                        shifoubiaoji = "D";
+                    }
+
+                    //鏌ヨ寰呭姙
+                    var chaxundaiban = _wfNeeddeelService.GetListTracking(wfRunProcessDTO.Id, wfRunProcessDTO.Step).Where(x => x.DeelUserId == curentuser.Id).ToList();
+                    if (chaxundaiban != null && chaxundaiban.Count > 0)
+                    {
+                        sifoudangqian = "A";
+                    }
+                    else
+                    {
+                        sifoudangqian = "D";
+                    }
+
+                }
+
+
+
+
+            }
+
+            ViewBag.shifoubiaoji = shifoubiaoji;
+            ViewBag.sifoudangqian = sifoudangqian;
+            ViewBag.lishiyijian = lishiyijian;
+            ViewBag.dangqianbuzhou = dangqianbuzhou;
+
+             
+
+            ViewData.Model = dto;
+            return View();
+        }
+
+
+        /// <summary>
+        /// 浼氬憳鎻愮幇鐢宠
+        /// </summary>
+        /// <param name="data"></param>
+        /// <returns></returns>
+        [HttpPost]
+        public IActionResult SaveCustomerRefund(AdmCustomerWithdrawalDTO data)
+        {
+            var curentuser = JsonConvert.DeserializeObject<PltUser>(HttpContext.Session.GetString("User"));
+            ResultEntity resultEntity = new ResultEntity();
+            using (TransactionScope scope = new TransactionScope())
+            {
+                if (data.Step == "鎻愪氦")
+                {
+
+                    data.ShenpiStatus = "D";
+                    data.RecStatus = "A";
+                    data.Creater = curentuser.Id;
+                    data.Createtime = DateTime.Now;
+                    data.Modifier = data.Creater;
+                    data.Modifytime = data.Createtime;
+
+                    resultEntity = _askService.SaveCustomerWithdrawal(data);
+                    if (!resultEntity.Result)
+                    {
+                        return new JsonResult(resultEntity);
+                    }
+                }
+
+            
+
+
+                //鍙戣捣娴佺▼鐩稿叧
+
+                resultEntity = _wfRunProcessService.WfCustomerRefund(data.Id, data.Step, data.Tongguojujue, curentuser.Id, data.Content, data.Tittle, "v1");
+                if (!resultEntity.Result)
+                {
+                    return new JsonResult(resultEntity);
+                }
+                scope.Complete();
+            }
+            return new JsonResult(resultEntity);
+        }
+
         public IActionResult AskCiZhi(string id = "")
         {
             AdmAskCiZhiDTO dto = new AdmAskCiZhiDTO();

--
Gitblit v1.9.1