From 138697015a3b9fc31a5f72f58bd12e652026dfc7 Mon Sep 17 00:00:00 2001 From: qianjiawei <1184704771@qq.com> Date: Mon, 30 Oct 2023 09:31:45 +0800 Subject: [PATCH 1/9] =?UTF-8?q?=E8=B4=A8=E6=A3=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- QcMgr/Tnb.QcMgr/QcCheckTaskResultService.cs | 56 ++++++++++++++++++++- 1 file changed, 54 insertions(+), 2 deletions(-) diff --git a/QcMgr/Tnb.QcMgr/QcCheckTaskResultService.cs b/QcMgr/Tnb.QcMgr/QcCheckTaskResultService.cs index ee0fd197..958e8a26 100644 --- a/QcMgr/Tnb.QcMgr/QcCheckTaskResultService.cs +++ b/QcMgr/Tnb.QcMgr/QcCheckTaskResultService.cs @@ -25,13 +25,13 @@ namespace Tnb.QcMgr [ApiDescriptionSettings(Tag = ModuleConsts.Tag, Area = ModuleConsts.Area, Order = 800)] [Route("api/[area]/[controller]/[action]")] [OverideVisualDev(ModuleId)] - public class QcCheckTaskResultServic:IDynamicApiController, ITransient, IOverideVisualDevService + public class QcCheckTaskResultService : IDynamicApiController, ITransient, IOverideVisualDevService { private const string ModuleId = "26873741070613"; private readonly ISqlSugarRepository _repository; private readonly IUserManager _userManager; public OverideVisualDevFunc OverideFuncs { get; } = new OverideVisualDevFunc(); - public QcCheckTaskResultServic(ISqlSugarRepository repository, IUserManager userManager) + public QcCheckTaskResultService(ISqlSugarRepository repository, IUserManager userManager) { _repository = repository; _userManager = userManager; @@ -87,5 +87,57 @@ namespace Tnb.QcMgr } return PageResult.SqlSugarPageResult(result); } + + [HttpGet] + public async Task GetCheckTask(VisualDevModelListQueryInput input) + { + var db = _repository.AsSugarClient(); + Dictionary dic = new Dictionary(); + dic.Add("ok", "合格"); + dic.Add("no", "不合格"); + dic.Add("barelyok", "让步合格"); + dic.Add("await", "待检"); + dic.Add("temporarily", "暂控"); + Dictionary queryJson = !string.IsNullOrEmpty(input.queryJson) ? JsonConvert.DeserializeObject>(input.queryJson) : new Dictionary(); + string materialid = queryJson.ContainsKey("materialid") ? queryJson["materialid"].ToString() : ""; + string checktype = queryJson.ContainsKey("checktype") ? queryJson["checktype"].ToString() : ""; + string status = queryJson.ContainsKey("status") ? queryJson["status"].ToString() : ""; + var list = await db.Queryable() + .LeftJoin((a, b) => a.DictionaryTypeId == b.Id) + .Where((a, b) => b.FullName == "质检状态" || b.FullName == "质检类型选择").ToListAsync(); + var BasLocations = await db.Queryable().ToListAsync(); + var result = await db.Queryable() + .LeftJoin((a, b) => a.materialid == b.id) + .LeftJoin((a, b, c) => a.processid == c.id) + .LeftJoin((a, b, c, d) => a.workid == d.Id) + .LeftJoin((a, b, c, d, e) => a.execuser == e.Id) + .WhereIF(!string.IsNullOrEmpty(materialid), (a, b, c, d, e) => a.materialid == materialid) + .WhereIF(!string.IsNullOrEmpty(checktype), (a, b, c, d, e) => a.checktype == checktype) + .WhereIF(!string.IsNullOrEmpty(status), (a, b, c, d, e) => a.status == status) + // .Where((a, b, c, d, e) => a.status == list.Where(p => p.FullName == "已完成").First().Id) + .Select((a, b, c, d, e) => new QcCheckExecHOut + { + id = a.id, + materialid = b.name, + checktype = a.checktype, + workid = d.FullName, + processid = c.process_name, + wareid = a.wareid, + checknum = a.checknum, + status = a.status, + result = a.result, + tasktime = a.tasktime == null ? "" : a.tasktime, + exectime = a.exectime == null ? "" : a.exectime, + execuser = e.RealName == null ? "" : e.RealName, + }).OrderByDescending(a => DateTime.Parse(a.exectime)).ToPagedListAsync(input.currentPage, input.pageSize); + foreach (var item in result.list) + { + item.checktype = list.Select(p => p.Id).Contains(item.checktype) ? list.Where(p => p.Id == item.checktype).First().FullName : ""; + item.status = list.Select(p => p.Id).Contains(item.status) ? list.Where(p => p.Id == item.status).First().FullName : ""; + item.result = dic.Where(p => p.Key == item.result).Any() ? dic.Where(p => p.Key == item.result).First().Value : ""; + item.wareid = BasLocations.Where(p => p.id == item.wareid).Any() ? BasLocations.Where(p => p.id == item.wareid).First().location_code : ""; + } + return PageResult.SqlSugarPageResult(result); + } } } From f94bd6f809a4380f9681cc0af51752bd8b43010e Mon Sep 17 00:00:00 2001 From: qianjiawei <1184704771@qq.com> Date: Mon, 30 Oct 2023 09:48:50 +0800 Subject: [PATCH 2/9] =?UTF-8?q?=E8=B4=A8=E6=A3=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- QcMgr/Tnb.QcMgr/QcCheckTaskResultService.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/QcMgr/Tnb.QcMgr/QcCheckTaskResultService.cs b/QcMgr/Tnb.QcMgr/QcCheckTaskResultService.cs index 958e8a26..eb231cf8 100644 --- a/QcMgr/Tnb.QcMgr/QcCheckTaskResultService.cs +++ b/QcMgr/Tnb.QcMgr/QcCheckTaskResultService.cs @@ -88,7 +88,7 @@ namespace Tnb.QcMgr return PageResult.SqlSugarPageResult(result); } - [HttpGet] + [HttpPost] public async Task GetCheckTask(VisualDevModelListQueryInput input) { var db = _repository.AsSugarClient(); From bd7f854f31f64eb48585a39694aaf2bbc6361a2a Mon Sep 17 00:00:00 2001 From: zhoukeda <1315948824@qq.com> Date: Mon, 30 Oct 2023 10:22:29 +0800 Subject: [PATCH 3/9] bug --- EquipMgr/Tnb.EquipMgr/EquipmentService.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/EquipMgr/Tnb.EquipMgr/EquipmentService.cs b/EquipMgr/Tnb.EquipMgr/EquipmentService.cs index f73e11f5..3ca12c85 100644 --- a/EquipMgr/Tnb.EquipMgr/EquipmentService.cs +++ b/EquipMgr/Tnb.EquipMgr/EquipmentService.cs @@ -89,7 +89,7 @@ namespace Tnb.EquipMgr private async Task Create(VisualDevModelDataCrInput visualDevModelDataCrInput) { - string qrcode = visualDevModelDataCrInput.data.ContainsKey("qrcode") ? visualDevModelDataCrInput.data["qrcode"].ToString() : ""; + string qrcode = visualDevModelDataCrInput.data.ContainsKey("qrcode") ? visualDevModelDataCrInput.data["qrcode"]?.ToString() : ""; if (!string.IsNullOrEmpty(qrcode) && await _repository.AsSugarClient().Queryable().AnyAsync(x => x.code == qrcode)) { throw Oops.Bah("二维码总表中已存在该二维码"); @@ -120,7 +120,7 @@ namespace Tnb.EquipMgr private async Task Update(string id,VisualDevModelDataUpInput visualDevModelDataUpInput) { - string qrcode = visualDevModelDataUpInput.data.ContainsKey("qrcode") ? visualDevModelDataUpInput.data["qrcode"].ToString() : ""; + string qrcode = visualDevModelDataUpInput.data.ContainsKey("qrcode") ? visualDevModelDataUpInput.data["qrcode"]?.ToString() : ""; if (!string.IsNullOrEmpty(qrcode) && await _repository.AsSugarClient().Queryable().AnyAsync(x => x.code == visualDevModelDataUpInput.data["qrcode"] && x.source_id!=id)) { throw Oops.Bah("二维码总表中已存在该二维码"); From 2291c4f0968d5bcd0ea9c1e78fb55daa6f888df2 Mon Sep 17 00:00:00 2001 From: zhoukeda <1315948824@qq.com> Date: Mon, 30 Oct 2023 11:26:50 +0800 Subject: [PATCH 4/9] bug --- EquipMgr/Tnb.EquipMgr/EquMaintainRecordService.cs | 5 +++++ EquipMgr/Tnb.EquipMgr/EquSpotInsRecordService.cs | 6 ++++++ 2 files changed, 11 insertions(+) diff --git a/EquipMgr/Tnb.EquipMgr/EquMaintainRecordService.cs b/EquipMgr/Tnb.EquipMgr/EquMaintainRecordService.cs index 043561b7..b5ed35e9 100644 --- a/EquipMgr/Tnb.EquipMgr/EquMaintainRecordService.cs +++ b/EquipMgr/Tnb.EquipMgr/EquMaintainRecordService.cs @@ -200,6 +200,11 @@ namespace Tnb.EquipMgr public async Task RepeatMaintain(MaintainRecordRepeatInput input) { var db = _repository.AsSugarClient(); + EqpMaintainRecordH eqpMaintainRecordH = await _repository.GetSingleAsync(x => x.id == input.id); + if (eqpMaintainRecordH.status == "1") + { + throw Oops.Bah("状态错误"); + } DbResult result = await db.Ado.UseTranAsync(async () => { diff --git a/EquipMgr/Tnb.EquipMgr/EquSpotInsRecordService.cs b/EquipMgr/Tnb.EquipMgr/EquSpotInsRecordService.cs index 936f43dc..ae8bc2a6 100644 --- a/EquipMgr/Tnb.EquipMgr/EquSpotInsRecordService.cs +++ b/EquipMgr/Tnb.EquipMgr/EquSpotInsRecordService.cs @@ -119,6 +119,7 @@ namespace Tnb.EquipMgr DbResult result = await _repository.AsSugarClient().Ado.UseTranAsync(async () => { EqpSpotInsRecordH eqpSpotInsRecordH = _repository.GetSingle(x=>x.id==input.id); + string status = ""; if (eqpSpotInsRecordH.is_repeat == "1") { @@ -184,6 +185,11 @@ namespace Tnb.EquipMgr [HttpPost] public async Task RepeatSpotIns(SpotInsRecordRepeatInput input) { + EqpSpotInsRecordH eqpSpotInsRecordH = await _repository.GetSingleAsync(x => x.id == input.id); + if (eqpSpotInsRecordH.status == "1") + { + throw Oops.Bah("状态错误"); + } await _repository.UpdateAsync(x => new EqpSpotInsRecordH() { repeat_result = input.repeat_result, From ad9974b1afe3f6eb99429b95cfe7ac2c565f3cde Mon Sep 17 00:00:00 2001 From: zhoukeda <1315948824@qq.com> Date: Mon, 30 Oct 2023 14:58:43 +0800 Subject: [PATCH 5/9] =?UTF-8?q?=E9=87=8D=E5=86=99=E6=8A=A5=E4=BF=AE?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3=20=20bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Tnb.EquipMgr/EqpRepairApplyService.cs | 38 +++++++++++++++++-- 1 file changed, 35 insertions(+), 3 deletions(-) diff --git a/EquipMgr/Tnb.EquipMgr/EqpRepairApplyService.cs b/EquipMgr/Tnb.EquipMgr/EqpRepairApplyService.cs index 6a78f6c6..3da509f2 100644 --- a/EquipMgr/Tnb.EquipMgr/EqpRepairApplyService.cs +++ b/EquipMgr/Tnb.EquipMgr/EqpRepairApplyService.cs @@ -12,6 +12,7 @@ using JNPF.Systems.Interfaces.System; using JNPF.VisualDev; using JNPF.VisualDev.Entitys; using JNPF.VisualDev.Interfaces; +using Mapster; using Microsoft.AspNetCore.Mvc; using Newtonsoft.Json; using SqlSugar; @@ -58,29 +59,60 @@ namespace Tnb.EquipMgr if (!input.data.ContainsKey("create_time")) { input.data.Add("create_time",DateTime.Now); + }else if ( string.IsNullOrEmpty((string)input.data["create_time"])) + { + input.data["create_time"] = DateTime.Now; } if (!input.data.ContainsKey("create_id")) { input.data.Add("create_id",_userManager.UserId); + }else if ( string.IsNullOrEmpty((string)input.data["create_id"])) + { + input.data["create_id"] = _userManager.UserId; } if (!input.data.ContainsKey("apply_user_id")) { input.data.Add("apply_user_id",_userManager.UserId); + }else if ( string.IsNullOrEmpty((string)input.data["apply_user_id"])) + { + input.data["apply_user_id"] = _userManager.UserId; } if (!input.data.ContainsKey("org_id")) { input.data.Add("org_id",_userManager.GetUserInfo().Result.organizeId); + }else if ( string.IsNullOrEmpty((string)input.data["org_id"])) + { + input.data["org_id"] = _userManager.GetUserInfo().Result.organizeId; } if (!input.data.ContainsKey("code")) { input.data.Add("code",await _billRuleService.GetBillNumber(CodeTemplateConst.EQPREPAIR_CODE)); + }else if (string.IsNullOrEmpty((string)input.data["code"])) + { + input.data["code"] = await _billRuleService.GetBillNumber(CodeTemplateConst.EQPREPAIR_CODE); } - VisualDevEntity? templateEntity = await _visualDevService.GetInfoById(ModuleId, true); - await _runService.Create(templateEntity, input); + + EqpRepairApply eqpRepairApply = new EqpRepairApply(); + eqpRepairApply.code = (string)input.data["code"]; + eqpRepairApply.name = (string)input.data["name"]; + eqpRepairApply.equip_id = (string)input.data["equip_id"]; + eqpRepairApply.expect_complete_time = input.data["expect_complete_time"]!=null && input.data["expect_complete_time"].ToString()!="" ? (DateTime?)input.data["expect_complete_time"] : null; + eqpRepairApply.is_ugent = (int?)(long)input.data["is_ugent"]; + eqpRepairApply.attachment = (string)input.data["attachment"]; + eqpRepairApply.apply_user_id = (string)input.data["apply_user_id"]; + eqpRepairApply.create_id = (string)input.data["create_id"]; + eqpRepairApply.create_time = DateTime.Now; + eqpRepairApply.org_id = (string)input.data["org_id"]; + eqpRepairApply.remark = (string)input.data["remark"]; + eqpRepairApply.description = (string)input.data["description"]; + await _repository.InsertAsync(eqpRepairApply); + + // VisualDevEntity? templateEntity = await _visualDevService.GetInfoById(ModuleId, true); + // await _runService.Create(templateEntity, input); return await Task.FromResult(true); } @@ -209,7 +241,7 @@ namespace Tnb.EquipMgr { EqpRepairApply eqpRepairApply = await _repository.GetSingleAsync(x=>x.id==input.id); - if (eqpRepairApply.status == RepairApplyStatus.TOBERECEIVED) + if (eqpRepairApply.status == RepairApplyStatus.RECEIVED) { if (_userManager.UserId == eqpRepairApply.repairer_id) { From 38c7644dde4dfb1f0eef54d22cf0900db31dff98 Mon Sep 17 00:00:00 2001 From: zhoukeda <1315948824@qq.com> Date: Mon, 30 Oct 2023 15:08:21 +0800 Subject: [PATCH 6/9] BUG --- EquipMgr/Tnb.EquipMgr/EqpRepairApplyService.cs | 1 + 1 file changed, 1 insertion(+) diff --git a/EquipMgr/Tnb.EquipMgr/EqpRepairApplyService.cs b/EquipMgr/Tnb.EquipMgr/EqpRepairApplyService.cs index 3da509f2..b24b13af 100644 --- a/EquipMgr/Tnb.EquipMgr/EqpRepairApplyService.cs +++ b/EquipMgr/Tnb.EquipMgr/EqpRepairApplyService.cs @@ -109,6 +109,7 @@ namespace Tnb.EquipMgr eqpRepairApply.org_id = (string)input.data["org_id"]; eqpRepairApply.remark = (string)input.data["remark"]; eqpRepairApply.description = (string)input.data["description"]; + eqpRepairApply.status = RepairApplyStatus.TOBEEXECUTED; await _repository.InsertAsync(eqpRepairApply); // VisualDevEntity? templateEntity = await _visualDevService.GetInfoById(ModuleId, true); From ab1635cbe5585a2ec7ed02cff75300f8951ec26b Mon Sep 17 00:00:00 2001 From: zhoukeda <1315948824@qq.com> Date: Mon, 30 Oct 2023 17:30:59 +0800 Subject: [PATCH 7/9] bug --- EquipMgr/Tnb.EquipMgr/EqpRepairApplyService.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/EquipMgr/Tnb.EquipMgr/EqpRepairApplyService.cs b/EquipMgr/Tnb.EquipMgr/EqpRepairApplyService.cs index b24b13af..e4a04049 100644 --- a/EquipMgr/Tnb.EquipMgr/EqpRepairApplyService.cs +++ b/EquipMgr/Tnb.EquipMgr/EqpRepairApplyService.cs @@ -100,9 +100,9 @@ namespace Tnb.EquipMgr eqpRepairApply.code = (string)input.data["code"]; eqpRepairApply.name = (string)input.data["name"]; eqpRepairApply.equip_id = (string)input.data["equip_id"]; - eqpRepairApply.expect_complete_time = input.data["expect_complete_time"]!=null && input.data["expect_complete_time"].ToString()!="" ? (DateTime?)input.data["expect_complete_time"] : null; + eqpRepairApply.expect_complete_time = input.data["expect_complete_time"]!=null && input.data["expect_complete_time"].ToString()!="" ? Convert.ToDateTime(input.data["expect_complete_time"]) : null; eqpRepairApply.is_ugent = (int?)(long)input.data["is_ugent"]; - eqpRepairApply.attachment = (string)input.data["attachment"]; + eqpRepairApply.attachment = input.data.ContainsKey("attachment") ? (string)input.data["attachment"] : null; eqpRepairApply.apply_user_id = (string)input.data["apply_user_id"]; eqpRepairApply.create_id = (string)input.data["create_id"]; eqpRepairApply.create_time = DateTime.Now; From 2c37098bc28d9c55c3439461b396ecf9aa21dadb Mon Sep 17 00:00:00 2001 From: qianjiawei <1184704771@qq.com> Date: Tue, 31 Oct 2023 14:53:58 +0800 Subject: [PATCH 8/9] =?UTF-8?q?=E8=B4=A8=E6=A3=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- QcMgr/Tnb.QcMgr/QcCheckTaskResultService.cs | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/QcMgr/Tnb.QcMgr/QcCheckTaskResultService.cs b/QcMgr/Tnb.QcMgr/QcCheckTaskResultService.cs index eb231cf8..b6544561 100644 --- a/QcMgr/Tnb.QcMgr/QcCheckTaskResultService.cs +++ b/QcMgr/Tnb.QcMgr/QcCheckTaskResultService.cs @@ -1,6 +1,7 @@ using System; using System.Collections.Generic; using System.Linq; +using System.Linq.Expressions; using System.Text; using System.Threading.Tasks; using Aspose.Cells.Drawing; @@ -14,6 +15,7 @@ using JNPF.VisualDev; using JNPF.VisualDev.Entitys.Dto.VisualDevModelData; using Microsoft.AspNetCore.Mvc; using Newtonsoft.Json; +using NPOI.SS.Formula.Functions; using SqlSugar; using Tnb.BasicData.Entities; using Tnb.QcMgr.Entities; @@ -95,7 +97,7 @@ namespace Tnb.QcMgr Dictionary dic = new Dictionary(); dic.Add("ok", "合格"); dic.Add("no", "不合格"); - dic.Add("barelyok", "让步合格"); + dic.Add("barelyOk", "让步合格"); dic.Add("await", "待检"); dic.Add("temporarily", "暂控"); Dictionary queryJson = !string.IsNullOrEmpty(input.queryJson) ? JsonConvert.DeserializeObject>(input.queryJson) : new Dictionary(); @@ -106,6 +108,15 @@ namespace Tnb.QcMgr .LeftJoin((a, b) => a.DictionaryTypeId == b.Id) .Where((a, b) => b.FullName == "质检状态" || b.FullName == "质检类型选择").ToListAsync(); var BasLocations = await db.Queryable().ToListAsync(); + Expression> expression; + if (list.Where(p => p.FullName == "待执行").First().Id == status) + { + expression = a => DateTime.Parse(a.tasktime!); + } + else + { + expression = a => DateTime.Parse(a.exectime!); + } var result = await db.Queryable() .LeftJoin((a, b) => a.materialid == b.id) .LeftJoin((a, b, c) => a.processid == c.id) @@ -129,7 +140,8 @@ namespace Tnb.QcMgr tasktime = a.tasktime == null ? "" : a.tasktime, exectime = a.exectime == null ? "" : a.exectime, execuser = e.RealName == null ? "" : e.RealName, - }).OrderByDescending(a => DateTime.Parse(a.exectime)).ToPagedListAsync(input.currentPage, input.pageSize); + }).OrderByDescending(expression).ToPagedListAsync(input.currentPage, input.pageSize); + foreach (var item in result.list) { item.checktype = list.Select(p => p.Id).Contains(item.checktype) ? list.Where(p => p.Id == item.checktype).First().FullName : ""; From b00eea39dd695bb938c7d4b5eccc8fbfe647db74 Mon Sep 17 00:00:00 2001 From: qianjiawei <1184704771@qq.com> Date: Tue, 31 Oct 2023 17:32:57 +0800 Subject: [PATCH 9/9] bug --- QcMgr/Tnb.QcMgr.Entities/Dto/CheckTask.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/QcMgr/Tnb.QcMgr.Entities/Dto/CheckTask.cs b/QcMgr/Tnb.QcMgr.Entities/Dto/CheckTask.cs index e2bae448..23982478 100644 --- a/QcMgr/Tnb.QcMgr.Entities/Dto/CheckTask.cs +++ b/QcMgr/Tnb.QcMgr.Entities/Dto/CheckTask.cs @@ -53,7 +53,7 @@ namespace Tnb.QcMgr.Entities public object[]? checkbox { get; set; } public string? errorcause { get; set; } public string? errorlevel { get; set; } - public object? measuredValue { get; set; } + public string? measuredValue { get; set; } public string? radio { get; set; } public string? remark { get; set; } public string? text { get; set; }