From 8878b4d2c65329d454688d306e9d692c760bffe5 Mon Sep 17 00:00:00 2001
From: username@email.com <yzy2002yzy@163.com>
Date: 星期二, 30 十一月 2021 14:32:39 +0800
Subject: [PATCH] 提交

---
 zhengcaioa/zhengcaioa/Controllers/BusinessOrder/CooperOrderController.cs |  236 +++++++++++++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 205 insertions(+), 31 deletions(-)

diff --git a/zhengcaioa/zhengcaioa/Controllers/BusinessOrder/CooperOrderController.cs b/zhengcaioa/zhengcaioa/Controllers/BusinessOrder/CooperOrderController.cs
index ba62186..9465279 100644
--- a/zhengcaioa/zhengcaioa/Controllers/BusinessOrder/CooperOrderController.cs
+++ b/zhengcaioa/zhengcaioa/Controllers/BusinessOrder/CooperOrderController.cs
@@ -40,7 +40,10 @@
         private readonly IFiMemberService _fiMemberService;
         private readonly IConfiguration _configuration;
         private readonly IHttpClientFactory _clientFactory;
-        private readonly IAskService _askService; 
+        private readonly IAskService _askService;
+        private readonly IAdmGoodsRecordService _admGoodsRecordService;
+
+        private readonly IAdmGoodsManageService _admGoodsManageService;
 
 
         public CooperOrderController(ILogger<CooperOrderController> logger, ILiaotianService liaotianService, IUserService userService, ICooperOrderService cooperOrderService
@@ -48,7 +51,10 @@
             , IFiServiceService fiServiceService, IFiMemberService fiMemberService
             , IConfiguration configuration
             , IHttpClientFactory clientFactory
-            , IAskService askService)
+            , IAskService askService
+            , IAdmGoodsRecordService admGoodsRecordService
+            , IAdmGoodsManageService admGoodsManageService
+            )
         {
             _logger = logger;
             _liaotianService = liaotianService;
@@ -63,6 +69,8 @@
             _configuration = configuration;
             _clientFactory = clientFactory;
             _askService = askService;
+            _admGoodsRecordService = admGoodsRecordService;
+            _admGoodsManageService = admGoodsManageService;
         }
 
         [CheckLogin]
@@ -409,15 +417,70 @@
                 dto = _cooperOrderService.Get(id);
                 ViewBag.ShouliStatus = ShouliStatus;
                 //ViewBag.YouHuiList = _askService.GetAskYouHuiList(dto.Khdw, dto.OrderType);
+                //璐ㄧ枒鍑�
+                List<TChallengeletterDTO> challengeletterDTOs  = _cooperOrderService.GetListChallengeletter(id);
+                TChallengeletterDTO challengeletterDTO = new TChallengeletterDTO();
+                if (challengeletterDTOs!=null&& challengeletterDTOs.Count > 0)
+                {
+                    challengeletterDTO = challengeletterDTOs[0];
+                    List<TChallengeItemDTO> challengeItemDTOs = _cooperOrderService.GetListChallengeItem(challengeletterDTO.Id);
+                    if(challengeItemDTOs.Count>0)
+                        challengeletterDTO.challengeItemDTOs = challengeItemDTOs;
+                    else
+                        challengeletterDTO.challengeItemDTOs = new List<TChallengeItemDTO>() { new TChallengeItemDTO() };
+                }
+                else
+                {
+                    challengeletterDTO.challengeItemDTOs = new List<TChallengeItemDTO>() { new TChallengeItemDTO() };
+                }
+                ViewBag.challengeletterDTO = challengeletterDTO;
+                //鎶曡瘔涔�
+                List<TComplaintletterDTO> complaintletterDTOs = _cooperOrderService.GetListComplaintletter(id);
+                TComplaintletterDTO complaintletterDTO = new TComplaintletterDTO();
+                if (complaintletterDTOs != null && complaintletterDTOs.Count > 0)
+                {
+                    complaintletterDTO = complaintletterDTOs[0];
+                    List<TComplaintItemDTO> complaintItemDTOs = _cooperOrderService.GetListComplaintItem(complaintletterDTO.Id);
+                    if (complaintItemDTOs.Count > 0)
+                        complaintletterDTO.complaintItemDTOs = complaintItemDTOs;
+                    else
+                        complaintletterDTO.complaintItemDTOs = new List<TComplaintItemDTO>() { new TComplaintItemDTO() };
+
+                    List<TComplaintRespondentDTO> complaintRespondentDTOs = _cooperOrderService.GetListComplaintRespondent(complaintletterDTO.Id);
+                    if (complaintRespondentDTOs.Count > 0)
+                        complaintletterDTO.complaintRespondentDTOs = complaintRespondentDTOs;
+                    else
+                        complaintletterDTO.complaintRespondentDTOs = new List<TComplaintRespondentDTO>() { new TComplaintRespondentDTO() };
+
+                }
+                else
+                {
+                    complaintletterDTO.complaintItemDTOs = new List<TComplaintItemDTO>() { new TComplaintItemDTO() };
+                    complaintletterDTO.complaintRespondentDTOs = new List<TComplaintRespondentDTO>() { new TComplaintRespondentDTO() };
+                }
+                ViewBag.complaintletterDTO = complaintletterDTO;
             }
             else
             {
                 dto.XdTime = DateTime.Now;
                 dto.OrderNum = 1;
                 ViewBag.ShouliStatus = "1";
+                dto.OrderNo = _cooperOrderService.GetOrderNo();
                 //ViewBag.YouHuiList = new List<AdmAskYouHuiDTO>();
-            }
+                //璐ㄧ枒鍑�
+                TChallengeletterDTO challengeletterDTO = new TChallengeletterDTO();
+                challengeletterDTO.challengeItemDTOs = new List<TChallengeItemDTO>() { new TChallengeItemDTO() };
+                ViewBag.challengeletterDTO = challengeletterDTO;
+                //鎶曡瘔涔�
+                TComplaintletterDTO complaintletterDTO = new TComplaintletterDTO();
+                complaintletterDTO.complaintItemDTOs = new List<TComplaintItemDTO>() { new TComplaintItemDTO() };
+                complaintletterDTO.complaintRespondentDTOs = new List<TComplaintRespondentDTO>() { new TComplaintRespondentDTO()};
+                ViewBag.complaintletterDTO = complaintletterDTO;
 
+            }
+            ViewBag.request_info = _liaotianService.GetSYScode("t_challengeletter", "request_info");//璐ㄧ枒璇锋眰
+            ViewBag.question = _liaotianService.GetSYScode("t_challenge_items", "question"); //	璐ㄧ枒浜嬮」
+            ViewBag.law = _liaotianService.GetSYScode("t_complaint_items", "law");//娉曞緥渚濇嵁
 
 
 
@@ -616,19 +679,82 @@
             ResultEntity resultEntity = new ResultEntity();
             resultEntity.Result = false;
 
-            CooperOrderDTO dto = _cooperOrderService.Get(id);
-            if(dto.ShouliStatus != "1")
+            using (TransactionScope scope = new TransactionScope())
             {
-                resultEntity.Result = false;
-                resultEntity.Message = "鍙湁宸蹭笅鍗曠姸鎬佺殑璁㈠崟鎵嶈兘鍙楃悊";
-                return new JsonResult(resultEntity);
+
+                CooperOrderDTO dto = _cooperOrderService.Get(id);
+                if (dto.ShouliStatus != "1")
+                {
+                    resultEntity.Result = false;
+                    resultEntity.Message = "鍙湁宸蹭笅鍗曠姸鎬佺殑璁㈠崟鎵嶈兘鍙楃悊";
+                    return new JsonResult(resultEntity);
+                }
+
+
+                if (dto.OrderType == "01")
+                {
+                    var shi = _fiBookService.Get(dto.OrderType1);
+                    if (string.IsNullOrEmpty(shi.Id))
+                    {
+                        resultEntity.Result = false;
+                        resultEntity.Message = "鏈壘鍒拌鍟嗗搧";
+                        return new JsonResult(resultEntity);
+                    }
+                    var admGoodsManageDTOs = _admGoodsManageService.GetList().Where(x => x.ISBN == shi.BookNo).FirstOrDefault();
+
+                    if (admGoodsManageDTOs == null)
+                    {
+
+
+                        resultEntity.Result = false;
+                        resultEntity.Message = "娌℃湁鎵惧埌璇ュ晢鍝�";
+                        return new JsonResult(resultEntity);
+
+                    }
+                    else if (!admGoodsManageDTOs.GoodsLeft.HasValue)
+                    {
+                        resultEntity.Result = false;
+                        resultEntity.Message = "璇ュ晢鍝佹病鏈夊簱瀛�";
+                        return new JsonResult(resultEntity);
+
+                    }
+                    else if (admGoodsManageDTOs.GoodsLeft.Value < dto.OrderNum)
+                    {
+                        resultEntity.Result = false;
+                        resultEntity.Message = "璇ュ晢鍝佸簱瀛樹笉瓒�";
+                        return new JsonResult(resultEntity);
+
+                    }
+                    var left = admGoodsManageDTOs.GoodsLeft - dto.OrderNum;
+                    admGoodsManageDTOs.GoodsLeft = left;
+
+                    resultEntity = _admGoodsManageService.save(admGoodsManageDTOs);
+
+                    AdmGoodsRecordDTO dto1 = new AdmGoodsRecordDTO();
+                    dto1.GoodsId = admGoodsManageDTOs.Id;
+                    dto1.GoodsNum = dto.OrderNum;
+                    dto1.GoodsLeft = admGoodsManageDTOs.GoodsLeft;
+                    dto1.RecordTypeId = "02";
+                    dto1.RecStatus = "A";
+                    dto1.Creater = curentuser.Id;
+                    dto1.Createtime = DateTime.Now;
+                    dto1.Modifier = curentuser.Id;
+                    dto1.Modifytime = DateTime.Now;
+                    dto1.OperationalMatters = "璁㈠崟锛�" + dto.OrderNo + " 璐拱涔︾睄";
+                    resultEntity = _admGoodsRecordService.save(dto1);
+
+                }
+
+
+
+                dto.Shoulier = curentuser.Id;
+                dto.Shoulitime = DateTime.Now;
+                dto.ShouliStatus = "2";
+
+                resultEntity = _cooperOrderService.shouli(dto);
+
+                scope.Complete();
             }
-
-            dto.Shoulier = curentuser.Id;
-            dto.Shoulitime = DateTime.Now;
-            dto.ShouliStatus = "2";
-
-              resultEntity = _cooperOrderService.shouli(dto);
 
             return new JsonResult(resultEntity);
         }
@@ -676,24 +802,69 @@
 
             ResultEntity resultEntity = new ResultEntity();
             resultEntity.Result = false;
-
-            CooperOrderDTO dto = _cooperOrderService.Get(Chedanid);
-            if (dto.ShouliStatus != "2")
+            using (TransactionScope scope = new TransactionScope())
             {
-                resultEntity.Result = false;
-                resultEntity.Message = "鍙湁鍙楃悊鐘舵�佺殑璁㈠崟鎵嶈兘鎾ゅ崟";
-                return new JsonResult(resultEntity);
+
+                CooperOrderDTO dto = _cooperOrderService.Get(Chedanid);
+                if (dto.ShouliStatus != "2")
+                {
+                    resultEntity.Result = false;
+                    resultEntity.Message = "鍙湁鍙楃悊鐘舵�佺殑璁㈠崟鎵嶈兘鎾ゅ崟";
+                    return new JsonResult(resultEntity);
+                }
+
+
+                if (dto.OrderType == "01")
+                {
+                    var shi = _fiBookService.Get(dto.OrderType1);
+                    if (string.IsNullOrEmpty(shi.Id))
+                    {
+                        resultEntity.Result = false;
+                        resultEntity.Message = "鏈壘鍒拌鍟嗗搧";
+                        return new JsonResult(resultEntity);
+                    }
+                    var admGoodsManageDTOs = _admGoodsManageService.GetList().Where(x => x.ISBN == shi.BookNo).FirstOrDefault();
+
+                    if (admGoodsManageDTOs == null)
+                    {
+
+
+                        resultEntity.Result = false;
+                        resultEntity.Message = "娌℃湁鎵惧埌璇ュ晢鍝�";
+                        return new JsonResult(resultEntity);
+
+                    }
+
+                    var left = admGoodsManageDTOs.GoodsLeft + dto.OrderNum;
+                    admGoodsManageDTOs.GoodsLeft = left;
+
+                    resultEntity = _admGoodsManageService.save(admGoodsManageDTOs);
+
+                    AdmGoodsRecordDTO dto1 = new AdmGoodsRecordDTO();
+                    dto1.GoodsId = admGoodsManageDTOs.Id;
+                    dto1.GoodsNum = dto.OrderNum;
+                    dto1.GoodsLeft = admGoodsManageDTOs.GoodsLeft;
+                    dto1.RecordTypeId = "01";
+                    dto1.RecStatus = "A";
+                    dto1.Creater = curentuser.Id;
+                    dto1.Createtime = DateTime.Now;
+                    dto1.Modifier = curentuser.Id;
+                    dto1.Modifytime = DateTime.Now;
+                    dto1.OperationalMatters = "璁㈠崟锛�" + dto.OrderNo + " 鎾ゅ崟";
+                    resultEntity = _admGoodsRecordService.save(dto1);
+
+                }
+
+
+                dto.Chedaner = curentuser.Id;
+                dto.Chedantime = DateTime.Now;
+                dto.ChedanStatus = "A";
+                dto.Chedan = Price;
+                dto.ShouliStatus = "0";
+
+                resultEntity = _cooperOrderService.chedan(dto);
+                scope.Complete();
             }
-
-           
-            dto.Chedaner = curentuser.Id;
-            dto.Chedantime = DateTime.Now;
-            dto.ChedanStatus = "A";
-            dto.Chedan = Price;
-            dto.ShouliStatus = "0";
-
-            resultEntity = _cooperOrderService.chedan(dto);
-
             return new JsonResult(resultEntity);
         }
         [CheckLogin]
@@ -946,7 +1117,10 @@
 
                
             }
-           
+            if (result == "")
+            {
+                result = "[]";
+            }
             return result;
 
         }

--
Gitblit v1.9.1