From 2fe6d35301dfb69dffc123e414d50c065579e7fd Mon Sep 17 00:00:00 2001
From: qiuyao <qiuyao@hnkhzn.com>
Date: 星期一, 31 三月 2025 17:35:05 +0800
Subject: [PATCH] 新增人脸识别
---
项目代码/WIDESEAWCS_Server 正式/SerialPortService/ProcessServer.cs | 477 +++++++++++++++++++++++++++++++++++++++++++----------------
1 files changed, 345 insertions(+), 132 deletions(-)
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WIDESEAWCS_Server \346\255\243\345\274\217/SerialPortService/ProcessServer.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WIDESEAWCS_Server \346\255\243\345\274\217/SerialPortService/ProcessServer.cs"
index 76a679e..2962900 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WIDESEAWCS_Server \346\255\243\345\274\217/SerialPortService/ProcessServer.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WIDESEAWCS_Server \346\255\243\345\274\217/SerialPortService/ProcessServer.cs"
@@ -1,10 +1,13 @@
锘縰sing System;
using System.Collections.Generic;
+using System.Diagnostics;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
using System.Threading.Tasks;
+using AutoMapper;
using AutoMapper.Configuration.Conventions;
+using OfficeOpenXml.FormulaParsing.Excel.Functions.DateTime;
using SqlSugar;
using WIDESEA_ISerialPortRepository;
using WIDESEA_SerialPortRepository;
@@ -22,11 +25,14 @@
private IPutakeRepository _putakeRepository;
private IUnitOfWorkManage _unitOfWorkManage;
private ITorqueOpRepository _torqueOpRepository;
- public ProcessServer(IProcessRepository BaseDal, IUnitOfWorkManage unitOfWorkManage, IPutakeRepository putakeRepository, ITorqueOpRepository torqueOpRepository) : base(BaseDal)
+ private readonly IMapper _mapper;
+
+ public ProcessServer(IProcessRepository BaseDal, IUnitOfWorkManage unitOfWorkManage, IPutakeRepository putakeRepository, ITorqueOpRepository torqueOpRepository, IMapper mapper) : base(BaseDal)
{
_putakeRepository = putakeRepository;
_unitOfWorkManage = unitOfWorkManage;
_torqueOpRepository = torqueOpRepository;
+ _mapper = mapper;
}
public override PageGridData<Dt_Process> GetPageData(PageDataOptions options)
@@ -34,186 +40,356 @@
OrderByParameters = new Dictionary<string, OrderByType>
{
{ nameof(Dt_Process.SetpNum), OrderByType.Asc },//鎸変粈涔堝瓧娈垫帓搴�
+ { nameof(Dt_Process.CraftType), OrderByType.Asc }
};
return base.GetPageData(options);
}
- public WebResponseContent GetProcess(string gruop)
+ /// <summary>
+ /// 鑾峰彇濂楃瓛鏁伴噺
+ /// </summary>
+ /// <returns>杩斿洖鐝粍銆佹�绘楠ゃ�佸绛掓暟閲�</returns>
+ public WebResponseContent GetSleeveandStep()
{
try
{
- _unitOfWorkManage.BeginTran();
- var proce = BaseDal.QueryData(i => i.CraftType == gruop);
-
-
- _unitOfWorkManage.CommitTran();
- if (proce != null)
- {
- return new WebResponseContent { Status = true, Data = proce };
- }
- else
- {
- return new WebResponseContent { Status = false, Message = "鏁版嵁涓虹┖" };
- }
-
- }
- catch (Exception ex)
- {
- _unitOfWorkManage.RollbackTran();
- return new WebResponseContent { Status = false, Message = "澶辫触" + ex.Message };
- }
- }
-
- //鑾峰彇濂楃瓛鏁伴噺
- public WebResponseContent GetSleeveandStep(string gruops)
- {
- try
- {
- _unitOfWorkManage.BeginTran();
- var result = BaseDal.QueryData(x => x.CraftType == gruops) // 鍏堢瓫閫� CraftType
+ var result = BaseDal.QueryData() // 鍏堟煡鍑哄叏閮�
.GroupBy(x => x.CraftType) // 鎸� CraftType 鍒嗙粍
.Select(g => new
{
- maxNodal = g.Max(a => a.Nodal),
- sumTorqueSum = g.Sum(a => a.TorqueSum)
+ //灏介噺鍚庣鏁版嵁缁欏墠绔殑鏁版嵁锛岃皟涓�娆℃帴鍙e氨鍙互鎷垮埌锛屼笉瑕佽鍓嶇澶氭璋冪敤
+ CraftType = g.Key, // 娣诲姞 CraftType
+ maxNodal = g.Max(a => a.Nodal),//鏈�澶ф楠�
+ sumTorqueSum = g.Sum(a => a.TorqueSum),//濂楃瓛鏁伴噺
}).ToList();
- _unitOfWorkManage.CommitTran();
+
return new WebResponseContent { Status = true, Data = result };
}
catch (Exception ex)
{
- _unitOfWorkManage.RollbackTran();
return new WebResponseContent { Status = false, Message = "鏌ヨ澶辫触锛�" + ex.Message };
}
}
+ #region
+ //public WebResponseContent AddOrUpdateProcess(AddProcessDTO addProcessDTO)
+ //{
+ // try
+ // {
+ // var allProcesses = BaseDal.QueryData(); // 浠呮煡璇竴娆℃墍鏈夋暟鎹�
- public WebResponseContent AddOrUpdateProcess(AddProcessDTO addProcessDTO)
- {
- try
- {
- _unitOfWorkManage.BeginTran(); // 寮�鍚簨鍔�
+ // if (addProcessDTO.id == 0) // 娣诲姞
+ // {
+ // // 妫�鏌ユ槸鍚﹀凡缁忓瓨鍦ㄧ浉鍚岀殑 setnum
+ // if (allProcesses.Any(x => x.SetpNum == addProcessDTO.setnum && x.CraftType == addProcessDTO.craftstype))
+ // {
+ // return new WebResponseContent { Status = false, Message = $"姝ラ {addProcessDTO.setnum} 宸插瓨鍦紝涓嶈兘閲嶅娣诲姞锛�" };
+ // }
- // 鍒ゆ柇鏄坊鍔犺繕鏄洿鏂�
- if (addProcessDTO.id == 0)//娣诲姞
- {
- // 妫�鏌ユ槸鍚﹀凡缁忓瓨鍦ㄧ浉鍚岀殑 setnum
- bool isExist = BaseDal.QueryData(x => x.SetpNum == addProcessDTO.setnum && x.CraftType == addProcessDTO.craftstype).Any();
- if (isExist)
- {
- return new WebResponseContent { Status = false, Message = $"姝ラ {addProcessDTO.setnum} 宸插瓨鍦紝涓嶈兘閲嶅娣诲姞锛�" };
- }
+ // // 鍒涘缓鏂板伐鑹烘楠�
+ // var proces = new Dt_Process
+ // {
+ // SetpNum = addProcessDTO.setnum,
+ // CraftType = addProcessDTO.craftstype,
+ // CraftsStep = addProcessDTO.craftsstep,
+ // CraftContent = addProcessDTO.craftcontent,
+ // Tools = addProcessDTO.tools,
+ // Material = addProcessDTO.material,
+ // ArticleOneid = addProcessDTO.aritcleoneid,
+ // ArticleOne = addProcessDTO.articleone,
+ // ArticleTowid = addProcessDTO.aritcletowid,
+ // ArticleTwo = addProcessDTO.articletwo,
+ // CreateDate = DateTime.Now
+ // };
- // 鍒涘缓鏂板伐鑹烘楠�
- var proces = new Dt_Process
- {
- SetpNum = addProcessDTO.setnum,
- CraftType = addProcessDTO.craftstype,
- CraftsStep = addProcessDTO.craftsstep,
- CraftContent = addProcessDTO.craftcontent,
- Tools = addProcessDTO.tools,
- Material = addProcessDTO.material,
- ArticleOneid = addProcessDTO.aritcleoneid,
- ArticleOne = addProcessDTO.articleone,
- ArticleTowid = addProcessDTO.aritcletowid,
- ArticleTwo = addProcessDTO.articletwo,
- Creater = "admin",
- CreateDate = DateTime.Now
- };
+ // BaseDal.AddData(proces);
+ // return new WebResponseContent { Status = true, Data = proces };
+ // }
+ // else // 鏇存柊
+ // {
+ // var existingProcess = allProcesses.FirstOrDefault(x => x.CraftID == addProcessDTO.id);
+ // if (existingProcess == null)
+ // {
+ // return new WebResponseContent { Status = false, Message = "鏈壘鍒拌宸ヨ壓姝ラ锛屾棤娉曟洿鏂帮紒" };
+ // }
- BaseDal.AddData(proces);
- _unitOfWorkManage.CommitTran(); // 鎻愪氦浜嬪姟
- return new WebResponseContent { Status = true, Data = proces };
- }
- else
- {
- // 鏌ヨ褰撳墠瑕佹洿鏂扮殑璁板綍
- var existingProcess = BaseDal.QueryFirst(x => x.CraftID == addProcessDTO.id);
- if (existingProcess == null)
- {
- return new WebResponseContent { Status = false, Message = "鏈壘鍒拌宸ヨ壓姝ラ锛屾棤娉曟洿鏂帮紒" };
- }
+ // // 鍙湁褰� setnum 鍙戠敓鍙樺寲鏃讹紝鎵嶈繘琛岄噸澶嶆�ф鏌�
+ // if (existingProcess.SetpNum != addProcessDTO.setnum && allProcesses.Any(x => x.SetpNum == addProcessDTO.setnum && x.CraftType == addProcessDTO.craftstype && x.CraftID != addProcessDTO.id))
+ // {
+ // return new WebResponseContent { Status = false, Message = $"姝ラ {addProcessDTO.setnum} 宸插瓨鍦紝涓嶈兘閲嶅锛�" };
+ // }
- // 鍙湁褰� setnum 鍙戠敓鍙樺寲鏃讹紝鎵嶈繘琛岄噸澶嶆�ф鏌�
- if (existingProcess.Nodal != addProcessDTO.setnum)
- {
- bool isExist = BaseDal.QueryData(x => x.Nodal == addProcessDTO.setnum && x.CraftType == addProcessDTO.craftstype && x.CraftID != addProcessDTO.id).Any();
- if (isExist)
- {
- return new WebResponseContent { Status = false, Message = $"姝ラ {addProcessDTO.setnum} 宸插瓨鍦紝涓嶈兘閲嶅锛�" };
- }
- }
+ // // 鏇存柊鏁版嵁
+ // existingProcess.Nodal = addProcessDTO.Nodal;
+ // existingProcess.SetpNum = addProcessDTO.setnum;
+ // existingProcess.CraftType = addProcessDTO.craftstype;
+ // existingProcess.CraftsStep = addProcessDTO.craftsstep;
+ // existingProcess.CraftContent = addProcessDTO.craftcontent;
+ // existingProcess.Tools = addProcessDTO.tools;
+ // existingProcess.Material = addProcessDTO.material;
+ // existingProcess.ArticleOneid = addProcessDTO.aritcleoneid;
+ // existingProcess.ArticleOne = addProcessDTO.articleone;
+ // existingProcess.ArticleTowid = addProcessDTO.aritcletowid;
+ // existingProcess.ArticleTwo = addProcessDTO.articletwo;
+ // existingProcess.CreateDate = DateTime.Now;
- // 鏇存柊鏁版嵁
- existingProcess.SetpNum = addProcessDTO.setnum;
- existingProcess.CraftType = addProcessDTO.craftstype;
- existingProcess.CraftsStep = addProcessDTO.craftsstep;
- existingProcess.CraftContent = addProcessDTO.craftcontent;
- existingProcess.Tools = addProcessDTO.tools;
- existingProcess.Material = addProcessDTO.material;
- existingProcess.ArticleOneid = addProcessDTO.aritcleoneid;
- existingProcess.ArticleOne = addProcessDTO.articleone;
- existingProcess.ArticleTowid = addProcessDTO.aritcletowid;
- existingProcess.ArticleTwo = addProcessDTO.articletwo;
- existingProcess.CreateDate = DateTime.Now;
- BaseDal.UpdateData(existingProcess);
- _unitOfWorkManage.CommitTran(); // 鎻愪氦浜嬪姟
-
- return new WebResponseContent { Status = true, Data = existingProcess };
- }
- }
- catch (Exception ex)
- {
- _unitOfWorkManage.RollbackTran(); // 浜嬪姟鍥炴粴
- return new WebResponseContent { Status = false, Message = "鎿嶄綔澶辫触锛�" + ex.Message };
- }
- }
+ // BaseDal.UpdateData(existingProcess);
+ // return new WebResponseContent { Status = true, Data = existingProcess };
+ // }
+ // }
+ // catch (Exception ex)
+ // {
+ // return new WebResponseContent { Status = false, Message = "鎿嶄綔澶辫触锛�" + ex.Message };
+ // }
+ //}
//鑾峰彇褰撳墠浠诲姟宸ヤ綔姝ラ
+ #endregion
+
+ /// <summary>
+ /// 鏍规嵁id鏉ュ垽鏂紝鏈塱d灏辨洿鏂版病鏈夊氨娣诲姞
+ /// </summary>
+ /// <param name="addProcessDTO"></param>
+ /// <returns></returns>
+ public WebResponseContent AddOrUpdateProcess(AddProcessDTO addProcessDTO)
+ {
+ try
+ {
+ var allProcesses = BaseDal.QueryData().OrderBy(x => x.SetpNum).ToList(); // 鎸� SetpNum 鎺掑簭
+ Dt_Process proces = _mapper.Map<Dt_Process>(addProcessDTO);
+
+ #region 娣诲姞
+ if (addProcessDTO.CraftID == 0) // 娣诲姞
+ {
+ //// 妫�鏌ユ槸鍚﹀凡缁忓瓨鍦ㄧ浉鍚岀殑 SetpNum
+ //if (allProcesses.Any(x => x.SetpNum == addProcessDTO.setpNum && x.CraftType == addProcessDTO.craftstype))
+ //{
+ // return new WebResponseContent { Status = false, Message = $"姝ラ {addProcessDTO.setpNum} 宸插瓨鍦紝涓嶈兘閲嶅娣诲姞锛�" };
+ //}
+
+ //// 闇�瑕佽皟鏁村悗缁楠ょ殑搴忓彿
+ //foreach (var process in allProcesses.Where(x => x.SetpNum >= addProcessDTO.setpNum))
+ //{
+ // process.SetpNum++; // 鍚庣Щ涓�浣�
+ // BaseDal.UpdateData(process);
+ //}
+
+ // 闇�瑕佽皟鏁村悗缁楠ょ殑搴忓彿
+ var processList = allProcesses.Where(x => x.SetpNum >= addProcessDTO.SetpNum).ToList();
+
+ if (processList != null)
+ {
+ for (int i = 0; i < processList.Count; i++)
+ {
+ processList[i].SetpNum += 1;
+ }
+ }
+
+ // 鍒涘缓鏂板伐鑹烘楠�
+
+ proces.TorqueSum = (string.IsNullOrEmpty(addProcessDTO.ArticleOne) ? 0 : 1) + (string.IsNullOrEmpty(addProcessDTO.ArticleTwo) ? 0 : 1);
+ proces.CreateDate = DateTime.Now;
+
+ //var proces = new Dt_Process
+ //{
+ // Nodal = addProcessDTO.Nodal,
+ // SetpNum = addProcessDTO.setpNum,
+ // CraftType = addProcessDTO.craftstype,
+ // CraftsStep = addProcessDTO.craftsstep,
+ // CraftContent = addProcessDTO.craftcontent,
+ // Tools = addProcessDTO.tools,
+ // Material = addProcessDTO.material,
+ // ArticleOneid = addProcessDTO.aritcleoneid,
+ // ArticleOne = addProcessDTO.articleone,
+ // ArticleTowid = addProcessDTO.aritcletowid,
+ // ArticleTwo = addProcessDTO.articletwo,
+ // CreateDate = DateTime.Now,
+ // PointAxisXYZ = addProcessDTO.PointAxisXYZ,
+ // PointAxisHPB = addProcessDTO.PointAxisHPB,
+ // //涓虹┖灏辨槸0锛屼笉涓虹┖灏辨槸1
+ // TorqueSum = (string.IsNullOrEmpty(addProcessDTO.articleone) ? 0 : 1) + (string.IsNullOrEmpty(addProcessDTO.articletwo) ? 0 : 1)
+ //};
+
+ _unitOfWorkManage.BeginTran();
+ BaseDal.AddData(proces);
+ BaseDal.UpdateData(processList);
+ _unitOfWorkManage.CommitTran();
+ return new WebResponseContent { Status = true, Data = proces };
+ }
+ #endregion
+ #region 淇敼
+ else // 鏇存柊
+ {
+ var existingProcess = allProcesses.FirstOrDefault(x => x.CraftID == addProcessDTO.CraftID);
+ if (existingProcess == null)
+ {
+ return new WebResponseContent { Status = false, Message = "鏈壘鍒拌宸ヨ壓姝ラ锛屾棤娉曟洿鏂帮紒" };
+ }
+
+ int oldSetNum = existingProcess.SetpNum;
+ int newSetNum = addProcessDTO.SetpNum;
+
+ if (existingProcess.SetpNum == addProcessDTO.SetpNum) // 濡傛灉娌℃敼椤哄簭锛岀洿鎺ユ洿鏂板叾浠栧唴瀹�
+ {
+ proces.TorqueSum = (string.IsNullOrEmpty(addProcessDTO.ArticleOne) ? 0 : 1) + (string.IsNullOrEmpty(addProcessDTO.ArticleTwo) ? 0 : 1);
+ proces.ModifyDate = DateTime.Now;
+
+ //existingProcess.Nodal = addProcessDTO.Nodal;
+ //existingProcess.CraftType = addProcessDTO.craftstype;
+ //existingProcess.CraftsStep = addProcessDTO.craftsstep;
+ //existingProcess.CraftContent = addProcessDTO.craftcontent;
+ //existingProcess.Tools = addProcessDTO.tools;
+ //existingProcess.Material = addProcessDTO.material;
+ //existingProcess.ArticleOneid = addProcessDTO.aritcleoneid;
+ //existingProcess.ArticleOne = addProcessDTO.articleone;
+ //existingProcess.ArticleTowid = addProcessDTO.aritcletowid;
+ //existingProcess.ArticleTwo = addProcessDTO.articletwo;
+ //existingProcess.CreateDate = DateTime.Now;
+ //existingProcess.TorqueSum = (string.IsNullOrEmpty(addProcessDTO.articleone) ? 0 : 1) + (string.IsNullOrEmpty(addProcessDTO.articletwo) ? 0 : 1);
+
+ BaseDal.UpdateData(proces);
+ return new WebResponseContent { Status = true, Data = proces };
+ }
+ // 鏇存柊 TorqueSum
+
+ // 璋冩暣椤哄簭
+ if (newSetNum < oldSetNum) // 鍚戝墠绉诲姩锛屽悗缁暟鎹線鍚庣Щ
+ {
+ var processList = allProcesses.Where(x => x.SetpNum >= newSetNum && x.SetpNum < oldSetNum).ToList();
+
+ for (int i = 0; i < processList.Count; i++)
+ {
+ processList[i].SetpNum += 1;
+ }
+
+ BaseDal.UpdateData(processList);
+ //foreach (var process in allProcesses.Where(x => x.SetpNum >= newSetNum && x.SetpNum < oldSetNum))
+ //{
+ // process.SetpNum++; // 鍚庣Щ涓�浣�
+ // BaseDal.UpdateData(process);
+ //}
+ }
+ else if (newSetNum > oldSetNum) // 鍚戝悗绉诲姩锛屽墠闈㈡暟鎹線鍓嶇Щ
+ {
+ var processList = allProcesses.Where(x => x.SetpNum > oldSetNum && x.SetpNum <= newSetNum).ToList();
+
+ for (int i = 0; i < processList.Count; i++)
+ {
+ processList[i].SetpNum -= 1;
+ }
+
+ BaseDal.UpdateData(processList);
+
+ //foreach (var process in allProcesses.Where(x => x.SetpNum > oldSetNum && x.SetpNum <= newSetNum))
+ //{
+ // process.SetpNum--; // 鍓嶇Щ涓�浣�
+ // BaseDal.UpdateData(process);
+ //}
+ }
+
+ proces.SetpNum = newSetNum;
+ proces.TorqueSum = (string.IsNullOrEmpty(addProcessDTO.ArticleOne) ? 0 : 1) + (string.IsNullOrEmpty(addProcessDTO.ArticleTwo) ? 0 : 1);
+ proces.ModifyDate = DateTime.Now;
+
+ //// 鏇存柊褰撳墠姝ラ鐨勬柊搴忓彿
+ //existingProcess.SetpNum = newSetNum;
+ //existingProcess.Nodal = addProcessDTO.Nodal;
+ //existingProcess.CraftType = addProcessDTO.craftstype;
+ //existingProcess.CraftsStep = addProcessDTO.craftsstep;
+ //existingProcess.CraftContent = addProcessDTO.craftcontent;
+ //existingProcess.Tools = addProcessDTO.tools;
+ //existingProcess.Material = addProcessDTO.material;
+ //existingProcess.ArticleOneid = addProcessDTO.aritcleoneid;
+ //existingProcess.ArticleOne = addProcessDTO.articleone;
+ //existingProcess.ArticleTowid = addProcessDTO.aritcletowid;
+ //existingProcess.ArticleTwo = addProcessDTO.articletwo;
+ //existingProcess.CreateDate = DateTime.Now;
+
+ BaseDal.UpdateData(proces);
+ return new WebResponseContent { Status = true, Data = proces };
+ }
+ #endregion
+ }
+ catch (Exception ex)
+ {
+ return new WebResponseContent { Status = false, Message = "鎿嶄綔澶辫触锛�" + ex.Message };
+ }
+ }
+
+
public WebResponseContent Getcircuit(string group, string takeid)
{
try
{
- //鏍规嵁缁勫拰浠诲姟鍙疯幏寰梩op琛ㄥ叏閮ㄦ暟鎹�
+ Dt_Process proNow = new Dt_Process();
+ //鏍规嵁缁勫拰浠诲姟鍙疯幏寰梩orqueOp琛ㄥ叏閮ㄦ暟鎹�
var torp = _torqueOpRepository.QueryData(x => x.GroupOp == group && x.TakeId == takeid);
//鑾峰彇Modifier ="true" 琛ㄧず鏄己鍒舵墽琛�
- var Mod = torp.Select(x => x.Modifier).FirstOrDefault();
+ //var Mod = torp.Select(x => x.Modifier).FirstOrDefault();
+
//鏌ュ嚭宸ヨ壓琛�
var process = BaseDal.QueryData(x => x.CraftType == group);
//杩斿洖褰撳墠宸ヨ壓鐨勬渶澶ф楠�
var maxproce = process.Max(x => x.SetpNum);
-
+
//鎷垮埌宸ヨ壓琛ㄤ腑姝ラ涓�1鐨�
- var proNoe = process.Where(x => x.SetpNum == 1);//鑾峰緱宸ヨ壓琛ㄤ腑鐨勭涓�姝�
+ //var proNoe = process.Where(x => x.SetpNum == 1);//鑾峰緱宸ヨ壓琛ㄤ腑鐨勭涓�姝�
if (torp.Count == 0)
{
- return new WebResponseContent { Status = true, Message = "杩斿洖宸ヨ壓琛ㄤ腑鐨勭涓�鏉�", Data =new { proNoe, maxproce } };
+ proNow = process.Where(x => x.SetpNum == 1).First();
+ return new WebResponseContent { Status = true, Message = "杩斿洖宸ヨ壓琛ㄤ腑鐨勭涓�鏉�", Data = new { proNow, maxproce } };
}
var nowNum = torp.Max(x => x.ProcessSte);//鑾峰緱褰撳墠鏈�澶ф楠�
-
+ var flag = torp.Where(a => a.ProcessSte == nowNum && a.Modifier == "true").FirstOrDefault();
//op.Modifier="true" 琛ㄧず鏄己鍒舵墽琛岋紝灏变笉闇�瑕佸垽鏂簲鎵殑娆℃暟锛岀洿鎺ヨ繑鍥� op.ProcessSte+1
- if (Mod == "true")
+ //if (Mod == "true")
+ //{
+ // var now = maxproce + 1;
+ // return new WebResponseContent { Status = true, Data = new { proNoe, maxproce, now } };
+ //}
+ if (flag != null)
{
- var now= maxproce + 1;
- return new WebResponseContent { Status = true, Data = new { proNoe, maxproce, now } };
+ var now = maxproce + 1;
+ proNow = process.Where(x => x.SetpNum == now).First();
+ var finish= process.Where(x => x.SetpNum > now);
+ return new WebResponseContent { Status = true, Data = new { proNow, maxproce, now, finish } };
}
//濡傛灉瀛樺�艰〃涓湁鏁版嵁灏辫繑鍥炵粰浠栧綋鍓嶅伐鑹烘楠�
- var maxpro = process.Where(x => x.SetpNum == nowNum);
-
+ var maxpro = process.Where(x => x.SetpNum == nowNum).FirstOrDefault();
+ if (maxpro != null)
+ {
+ if (maxpro.TorqueOneQuantity + maxpro.TorqueTwoQuantity > torp.Where(a => a.ProcessSte == nowNum).Count())
+ {
+ proNow = maxpro;
+ var finish = process.Where(x => x.SetpNum < nowNum);
+ return new WebResponseContent { Status = true, Message = "杩斿洖褰撳墠浠诲姟鍋氬埌鐨勫ぇ姝ラ", Data = new { proNow, maxproce, finish } };
+ }
+ else
+ {
+ var now = nowNum + 1;
+ proNow = process.Where(x => x.SetpNum == now).First();
+ var finish = process.Where(x => x.SetpNum < now);
+ return new WebResponseContent { Status = true, Message = "杩斿洖褰撳墠浠诲姟鍋氬埌鐨勫ぇ姝ラ", Data = new { proNow, maxproce, finish } };
+ }
+ }
+ else
+ {
+ return new WebResponseContent { Status = false, Message = "宸ヨ壓鏁版嵁鏈夎"};
+ }
//鍒ゆ柇褰撳墠姝ラ鐨勬壄鍔涙鏁版槸鍚﹀畬鎴愶紝娌″畬鎴愯繑鍥炲綋鍓嶆楠わ紝瀹屾垚杩斿洖op.ProcessSte+1锛岀姸鎬佸�肩粰false
- return new WebResponseContent { Status = true, Message = "杩斿洖褰撳墠浠诲姟鍋氬埌鐨勫ぇ姝ラ", Data =new { maxpro, maxproce } };
+ //return new WebResponseContent { Status = true, Message = "杩斿洖褰撳墠浠诲姟鍋氬埌鐨勫ぇ姝ラ", Data = new { maxpro, maxproce } };
}
catch (Exception ex)
@@ -222,7 +398,13 @@
}
}
- public WebResponseContent Nextprocess(SetpDTO setpDTO,bool flag)//寮哄埗鎵ц缁欐垜true
+ /// <summary>
+ /// 宸ヨ壓涓嬩竴姝ヨ烦杞�
+ /// </summary>
+ /// <param name="setpDTO">褰撳墠鐝粍鐨勪换鍔″綋鍓嶆楠�</param>
+ /// <param name="flag">鏄惁寮哄埗鎵ц锛涙槸true锛屽惁false</param>
+ /// <returns>杩斿洖1銆佸綋鍓嶆楠わ紱2銆佹渶澶ф楠わ紱3銆佸凡瀹屾垚鐨勫伐鑹�</returns>
+ public WebResponseContent Nextprocess(SetpDTO setpDTO, bool flag)//寮哄埗鎵ц缁欐垜true
{
try
{
@@ -238,17 +420,18 @@
//杩斿洖褰撳墠宸ヨ壓鐨勬渶澶ф楠�
var maxproce = process.Max(x => x.SetpNum);
+
var TorqueOneQuantity = nowdate.Select(x => x.TorqueOneQuantity).FirstOrDefault();
- var TorqueTwoQuantity= nowdate.Select(x => x.TorqueTwoQuantity).FirstOrDefault();
+ var TorqueTwoQuantity = nowdate.Select(x => x.TorqueTwoQuantity).FirstOrDefault();
//鍒ゆ柇瀛樺�艰〃鐨勬暟鎹槸鍚︽弧瓒宠姝ラ闇�瑕佸嚑鏉℃暟鎹殑鏉℃暟
int TargetCount = TorqueOneQuantity + TorqueTwoQuantity;//涓�鍏辫鏈夊灏戞潯鏁版嵁锛堢洰鏍囨暟閲忥級
if (practiceCount < TargetCount && !flag)
{
- return new WebResponseContent { Status = true, Message = "娌℃湁瀹屾垚褰撳墠姝ラ", Data =new { nowdate, maxproce } };
+ return new WebResponseContent { Status = true, Message = "娌℃湁瀹屾垚褰撳墠姝ラ", Data = new { nowdate, maxproce } };
}
- else if(practiceCount == TargetCount || (practiceCount != TargetCount && flag))//寮哄埗鎵ц 鍓嶇缁欐垜涓�涓猣lag=ture鏃�
+ else if ((practiceCount == TargetCount && TargetCount == 0) || (practiceCount != TargetCount && flag))//寮哄埗鎵ц 鍓嶇缁欐垜涓�涓猣lag=ture鏃�
{
//寮哄埗璺宠浆涓嬩竴姝ワ紝鎻掑叆op琛ㄥ綋鍓嶆楠�
op.TakeId = setpDTO.takeid;
@@ -266,17 +449,18 @@
int num = setpDTO.setnum + 1;
//杩斿洖涓嬩竴姝ユ楠�
- var nex = process.Where(x => x.CraftType == setpDTO.group && x.SetpNum == num).FirstOrDefault();
-
+ var nex = process.Where(x => x.SetpNum == num).FirstOrDefault();
+ var finish = process.Where(x => x.SetpNum < num).ToList();
_torqueOpRepository.AddData(op);
- return new WebResponseContent { Status = true,Message= $"浣犲凡瀹屾垚褰撳墠绗瑊setpDTO.setnum}锛屽噯澶囩{num}姝ヤ换鍔�", Data = new { nex, maxproce } };
+ return new WebResponseContent { Status = true, Message = $"浣犲凡瀹屾垚褰撳墠绗瑊setpDTO.setnum}锛屽噯澶囩{num}姝ヤ换鍔�", Data = new { nex, maxproce, finish } };
}
catch (Exception ex)
{
return new WebResponseContent { Status = false, Message = "鏌ヨ澶辫触锛�" + ex.Message };
}
}
+
public WebResponseContent PreviousProcess(SetpDTO setpDTO)
{
@@ -294,15 +478,44 @@
var maxproce = process.Max(x => x.SetpNum);
int num = setpDTO.setnum - 1;
var nex = process.Where(x => x.CraftType == setpDTO.group && x.SetpNum == num).FirstOrDefault();
- return new WebResponseContent { Status = true, Message = $"涓婁竴姝setpDTO.setnum}", Data = new { nex, maxproce } };
+ var finish = process.Where(x => x.SetpNum < num).ToList();
+ return new WebResponseContent { Status = true, Message = $"涓婁竴姝setpDTO.setnum}", Data = new { nex, maxproce, finish } };
}
catch (Exception ex)
{
return new WebResponseContent { Status = false, Message = "鏌ヨ澶辫触锛�" + ex.Message };
}
}
- }
-
+ /// <summary>
+ /// 璇诲彇褰撳墠宸ヨ壓姝ラ鐨勬壄鍔涘�间笌娆℃暟
+ /// </summary>
+ /// <param name="grop"></param>
+ /// <param name="setnum"></param>
+ /// <returns></returns>
+ /// <exception cref="NotImplementedException"></exception>
+ public WebResponseContent GetValueandNumber(string grop, int setnum)
+ {
+ try
+ {
+ var result = BaseDal.QueryData(x => x.CraftType == grop && x.SetpNum == setnum)
+ .Select(g => new
+ {
+ g.TorqueOne,
+ g.TorqueOneQuantity,
+ g.TorqueTwo,
+ g.TorqueTwoQuantity
+ });
+ return new WebResponseContent { Status = true, Data = result };
+
+ }
+ catch (Exception ex)
+ {
+ return new WebResponseContent { Status = false,Message="閿欒锛�"+ex }; throw;
+ }
+ }
}
+
+}
+
--
Gitblit v1.9.3