From e0e522aa69f69e0aa95f677fc083734281099df2 Mon Sep 17 00:00:00 2001
From: username@email.com <yzy2002yzy@163.com>
Date: 星期一, 15 十一月 2021 09:39:26 +0800
Subject: [PATCH] 回车查询
---
zhengcaioa/zhengcaioa/Controllers/BusinessOrder/CooperOrderController.cs | 312 +++++++++++++++++++++++++++++++++++++++++++++------
1 files changed, 272 insertions(+), 40 deletions(-)
diff --git a/zhengcaioa/zhengcaioa/Controllers/BusinessOrder/CooperOrderController.cs b/zhengcaioa/zhengcaioa/Controllers/BusinessOrder/CooperOrderController.cs
index 3c67038..c4cdcf7 100644
--- a/zhengcaioa/zhengcaioa/Controllers/BusinessOrder/CooperOrderController.cs
+++ b/zhengcaioa/zhengcaioa/Controllers/BusinessOrder/CooperOrderController.cs
@@ -19,6 +19,9 @@
using Services;
using System.Transactions;
using System.IdentityModel.Tokens.Jwt;
+using Microsoft.Extensions.Configuration;
+using Newtonsoft.Json.Linq;
+using System.Net.Http.Headers;
namespace zhengcaioa.Controllers.BusinessOrder
{
@@ -35,11 +38,23 @@
private readonly IFiBookService _fiBookService;
private readonly IFiServiceService _fiServiceService;
private readonly IFiMemberService _fiMemberService;
+ private readonly IConfiguration _configuration;
+ private readonly IHttpClientFactory _clientFactory;
+ private readonly IAskService _askService;
+ private readonly IAdmGoodsRecordService _admGoodsRecordService;
+
+ private readonly IAdmGoodsManageService _admGoodsManageService;
public CooperOrderController(ILogger<CooperOrderController> logger, ILiaotianService liaotianService, IUserService userService, ICooperOrderService cooperOrderService
, ICooperatecustomCustomerService cooperatecustomCustomerService, IProjectService projectService, IPltPageService pltPageService, IFiBookService fiBookService
- , IFiServiceService fiServiceService, IFiMemberService fiMemberService)
+ , IFiServiceService fiServiceService, IFiMemberService fiMemberService
+ , IConfiguration configuration
+ , IHttpClientFactory clientFactory
+ , IAskService askService
+ , IAdmGoodsRecordService admGoodsRecordService
+ , IAdmGoodsManageService admGoodsManageService
+ )
{
_logger = logger;
_liaotianService = liaotianService;
@@ -51,6 +66,11 @@
_fiBookService = fiBookService;
_fiServiceService = fiServiceService;
_fiMemberService = fiMemberService;
+ _configuration = configuration;
+ _clientFactory = clientFactory;
+ _askService = askService;
+ _admGoodsRecordService = admGoodsRecordService;
+ _admGoodsManageService = admGoodsManageService;
}
[CheckLogin]
@@ -396,12 +416,15 @@
{
dto = _cooperOrderService.Get(id);
ViewBag.ShouliStatus = ShouliStatus;
+ //ViewBag.YouHuiList = _askService.GetAskYouHuiList(dto.Khdw, dto.OrderType);
}
else
{
dto.XdTime = DateTime.Now;
dto.OrderNum = 1;
ViewBag.ShouliStatus = "1";
+ dto.OrderNo = _cooperOrderService.GetOrderNo();
+ //ViewBag.YouHuiList = new List<AdmAskYouHuiDTO>();
}
@@ -447,11 +470,11 @@
///
[CheckLogin]
[HttpPost]
- public IActionResult Save(CooperOrderDTO data)
+ public async Task<IActionResult> SaveAsync(CooperOrderDTO data)
{
ResultEntity resultEntity = new ResultEntity();
- using (TransactionScope scope = new TransactionScope())
- {
+ //using (TransactionScope scope = new TransactionScope())
+ //{
var curentuser = JsonConvert.DeserializeObject<PltUser>(HttpContext.Session.GetString("User"));
ViewData["curentuser"] = curentuser;
data.RecStatus = "A";
@@ -460,16 +483,114 @@
data.Creater = curentuser.Id;
data.Createtime = DateTime.Now;
data.XdTime = data.Createtime;
+ if (data.OrderType == "03" || data.OrderType == "07" || (data.OrderType == "02" && (data.OrderType1 == "浠f嫙鎶曡瘔涔�" || data.OrderType1 == "浠f嫙璐ㄧ枒鍑�")))
+ {
+ var cooperatecustomCustomerDTO = _cooperatecustomCustomerService.Get(data.Khdw);
+ if (cooperatecustomCustomerDTO != null && !string.IsNullOrEmpty(cooperatecustomCustomerDTO.HuiyuanId))
+ {
+ string huiyuanurl = _configuration.GetSection("huiyuanurl").Value;
+ string SetCaseOrder = _configuration.GetSection("SetCaseOrder").Value;
+
+ Uri postUrl2 = new Uri(huiyuanurl + SetCaseOrder);
+
+ JObject questions2 = new JObject();
+ questions2.Add("UserID", cooperatecustomCustomerDTO.HuiyuanId);
+ if (data.OrderType == "03")
+ {
+ questions2.Add("CaseType", 0);
+ }
+ else if (data.OrderType == "07")
+ {
+ questions2.Add("CaseType", 1);
+ }
+ else if (data.OrderType == "07")
+ {
+ questions2.Add("CaseType", 1);
+ }
+ else if (data.OrderType == "02" && (data.OrderType1 == "浠f嫙鎶曡瘔涔�" || data.OrderType1 == "浠f嫙璐ㄧ枒鍑�"))
+ {
+ questions2.Add("CaseType", 2);
+ }
+
+ questions2.Add("count", Decimal.ToInt32(data.OrderNum.Value) );
+
+ string requestJson2 = questions2.ToString();
+ string result2 = string.Empty;
+
+ using (HttpContent httpContent = new StringContent(requestJson2))
+ {
+ httpContent.Headers.ContentType = new MediaTypeHeaderValue("application/json");
+
+ var httpClient2 = _clientFactory.CreateClient();
+ httpClient2.Timeout = new TimeSpan(0, 0, 10);
+ var Result2 = await httpClient2.PostAsync(postUrl2, httpContent);
+ result2 = Result2.Content.ReadAsStringAsync().Result;
+ }
+
+ _logger.LogInformation("result2:" + result2);
+ JObject jobjectresult = (JObject)JsonConvert.DeserializeObject(result2);
+
+ if (jobjectresult["code"] != null && jobjectresult["code"].ToString() == "1")
+ {
+ resultEntity.Result = true;
+ }
+ else
+ {
+ resultEntity.Result = false;
+ resultEntity.Message = "鍐欏叆浼氬憳璁㈠崟澶辫触";
+ return new JsonResult(resultEntity);
+ }
+ }
+ }
+
+
+
+
+
+ }
+
+ var youHuiDTOs = _askService.GetAskYouHuiList(data.Khdw, data.OrderType).FirstOrDefault();
+ if (youHuiDTOs != null)
+ {
+ data.Youhuier = youHuiDTOs.Id;
+ if(youHuiDTOs.Youhuistandard == "01")
+ {
+ data.Youhui = youHuiDTOs.YouHui.Value;
+ if(data.Money.Value < data.Youhui.Value)
+ {
+ data.Money = 0;
+ }
+ else
+ {
+ data.Money = data.Money.Value - data.Youhui.Value;
+ }
}
- data.ShouliStatus = "1";
- data.Modifier = curentuser.Id;
- data.Modifytime = DateTime.Now;
-
- resultEntity = _cooperOrderService.save(data);
- scope.Complete();
+ else if (youHuiDTOs.Youhuistandard == "02")
+ {
+ if (youHuiDTOs.YouHui.Value >= 100)
+ {
+ data.Youhui = data.Money.Value;
+ data.Money = 0;
+ }
+ else
+ {
+ data.Youhui =Math.Round(data.Money.Value * youHuiDTOs.YouHui.Value * new decimal(0.01),2);
+ data.Money = data.Money.Value - data.Youhui.Value;
+ }
+ }
+
+
}
-
+
+ data.ShouliStatus = "1";
+ data.Modifier = curentuser.Id;
+ data.Modifytime = DateTime.Now;
+
+ resultEntity = _cooperOrderService.save(data);
+ // scope.Complete();
+ //}
+
return new JsonResult(resultEntity);
}
@@ -504,19 +625,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);
}
@@ -564,24 +748,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]
@@ -775,7 +1004,7 @@
result = JsonConvert.SerializeObject(shi);
}
- if (OrderType == "08" || OrderType == "10")
+ if (OrderType == "08" || OrderType == "10" || OrderType == "11")
{
result = "[]";
@@ -834,7 +1063,10 @@
}
-
+ if (result == "")
+ {
+ result = "[]";
+ }
return result;
}
--
Gitblit v1.9.1