|
|
@@ -29,6 +29,7 @@ using com.igetui.api.openservice.igetui.template;
|
|
29
|
29
|
using System.Data;
|
|
30
|
30
|
using MongoDB.Driver.Core.Bindings;
|
|
31
|
31
|
using OfficeOpenXml.FormulaParsing.Utilities;
|
|
|
32
|
+using EquipmentApi.Model;
|
|
32
|
33
|
|
|
33
|
34
|
namespace EquipmentApi.Controllers.workordermanage
|
|
34
|
35
|
{
|
|
|
@@ -6322,6 +6323,142 @@ namespace EquipmentApi.Controllers.workordermanage
|
|
6322
|
6323
|
}
|
|
6323
|
6324
|
return Success("成功", listbb);
|
|
6324
|
6325
|
}
|
|
|
6326
|
+ [AllowAnonymous]
|
|
|
6327
|
+ [HttpGet("excelwxrygzllist")]
|
|
|
6328
|
+ public async Task<IActionResult> excelwxrygzllist(string stime, string etime, string deptname, string usercode) {
|
|
|
6329
|
+ List<Model.Dto.userdealwocode> listbb = new List<Model.Dto.userdealwocode>();
|
|
|
6330
|
+ //获取所有维修人员信息
|
|
|
6331
|
+ var list = _sys_user_accountRepository.GetProjectUser(deptname);
|
|
|
6332
|
+ if (!string.IsNullOrEmpty(deptname))
|
|
|
6333
|
+ {
|
|
|
6334
|
+ if (!string.IsNullOrEmpty(usercode))
|
|
|
6335
|
+ {
|
|
|
6336
|
+ var usermode = _sys_user_accountRepository.GetUserinfobycode(usercode, deptname);//.GetSingle(p => p.usercode == usercode);
|
|
|
6337
|
+ if (usermode != null)
|
|
|
6338
|
+ {
|
|
|
6339
|
+ foreach (var item in usermode)
|
|
|
6340
|
+ {
|
|
|
6341
|
+ var userinfolist = ConvertObject<MadRunFabric.Model.SignTokenApi.Model.Zxryworkcount>(item);
|
|
|
6342
|
+ var deptnames = userinfolist.role_name;// usermode.postlist[0];//科室名称
|
|
|
6343
|
+ var usernames = userinfolist.username;//维修人
|
|
|
6344
|
+ long tocount = 0;
|
|
|
6345
|
+ long dealcount = 0;
|
|
|
6346
|
+ tocount = _wo_repair_baseRepository.Count(p => p.touser[0] == userinfolist.usercode && p.totime >= Convert.ToDateTime(stime + " 00:00:00") && p.totime <= Convert.ToDateTime(etime + " 23:59:59")).Result;//接单数量
|
|
|
6347
|
+ dealcount = _wo_repair_baseRepository.Count(p => p.dealuser[0] == userinfolist.usercode && p.totime >= Convert.ToDateTime(stime + " 00:00:00") && p.totime <= Convert.ToDateTime(etime + " 23:59:59")).Result;//处理数量
|
|
|
6348
|
+
|
|
|
6349
|
+ Model.Dto.userdealwocode model = new Model.Dto.userdealwocode();
|
|
|
6350
|
+ model.deptname = deptnames;//科室名称
|
|
|
6351
|
+ model.username = usernames;//维修人
|
|
|
6352
|
+ model.tocount = tocount.ToString();//接单量
|
|
|
6353
|
+ model.dealcount = dealcount.ToString();//处理量
|
|
|
6354
|
+ listbb.Add(model);
|
|
|
6355
|
+ }
|
|
|
6356
|
+ }
|
|
|
6357
|
+ }
|
|
|
6358
|
+ else
|
|
|
6359
|
+ {
|
|
|
6360
|
+ foreach (var item in list)
|
|
|
6361
|
+ {
|
|
|
6362
|
+
|
|
|
6363
|
+ var userinfolist = ConvertObject<MadRunFabric.Model.SignTokenApi.Model.Zxryworkcount>(item);
|
|
|
6364
|
+ //if (userinfolist.postlist.Count == 0)
|
|
|
6365
|
+ //{
|
|
|
6366
|
+ // continue;
|
|
|
6367
|
+ //}
|
|
|
6368
|
+ var deptnames = userinfolist.role_name;// userinfolist.postlist[0];//科室名称
|
|
|
6369
|
+ //if (deptnames != deptname)
|
|
|
6370
|
+ //{
|
|
|
6371
|
+ // continue;
|
|
|
6372
|
+ //}
|
|
|
6373
|
+ var usernames = userinfolist.username;//维修人
|
|
|
6374
|
+ long tocount = 0;
|
|
|
6375
|
+ long dealcount = 0;
|
|
|
6376
|
+ tocount = _wo_repair_baseRepository.Count(p => p.touser[0] == userinfolist.usercode && p.totime >= Convert.ToDateTime(stime + " 00:00:00") && p.totime <= Convert.ToDateTime(etime + " 23:59:59")).Result;//接单数量
|
|
|
6377
|
+ dealcount = _wo_repair_baseRepository.Count(p => p.dealuser[0] == userinfolist.usercode && p.totime >= Convert.ToDateTime(stime + " 00:00:00") && p.totime <= Convert.ToDateTime(etime + " 23:59:59")).Result;//处理数量
|
|
|
6378
|
+
|
|
|
6379
|
+ Model.Dto.userdealwocode model = new Model.Dto.userdealwocode();
|
|
|
6380
|
+ model.deptname = deptnames;//科室名称
|
|
|
6381
|
+ model.username = usernames;//维修人
|
|
|
6382
|
+ model.tocount = tocount.ToString();//接单量
|
|
|
6383
|
+ model.dealcount = dealcount.ToString();//处理量
|
|
|
6384
|
+ listbb.Add(model);
|
|
|
6385
|
+
|
|
|
6386
|
+ }
|
|
|
6387
|
+ }
|
|
|
6388
|
+
|
|
|
6389
|
+ }
|
|
|
6390
|
+ else
|
|
|
6391
|
+ {
|
|
|
6392
|
+ if (!string.IsNullOrEmpty(usercode))
|
|
|
6393
|
+ {
|
|
|
6394
|
+ var usermode = _sys_user_accountRepository.GetUserinfobycode(usercode, deptname);
|
|
|
6395
|
+ if (usermode != null)
|
|
|
6396
|
+ {
|
|
|
6397
|
+ foreach (var item in usermode)
|
|
|
6398
|
+ {
|
|
|
6399
|
+ var userinfolist = ConvertObject<MadRunFabric.Model.SignTokenApi.Model.Zxryworkcount>(item);
|
|
|
6400
|
+
|
|
|
6401
|
+ var deptnames = userinfolist.role_name;// usermode.postlist[0];//科室名称
|
|
|
6402
|
+ var usernames = userinfolist.username;//维修人
|
|
|
6403
|
+ long tocount = 0;
|
|
|
6404
|
+ long dealcount = 0;
|
|
|
6405
|
+ tocount = _wo_repair_baseRepository.Count(p => p.touser[0] == userinfolist.usercode && p.totime >= Convert.ToDateTime(stime + " 00:00:00") && p.totime <= Convert.ToDateTime(etime + " 23:59:59")).Result;//接单数量
|
|
|
6406
|
+ dealcount = _wo_repair_baseRepository.Count(p => p.dealuser[0] == userinfolist.usercode && p.totime >= Convert.ToDateTime(stime + " 00:00:00") && p.totime <= Convert.ToDateTime(etime + " 23:59:59")).Result;//处理数量
|
|
|
6407
|
+
|
|
|
6408
|
+ Model.Dto.userdealwocode model = new Model.Dto.userdealwocode();
|
|
|
6409
|
+ model.deptname = deptnames;//科室名称
|
|
|
6410
|
+ model.username = usernames;//维修人
|
|
|
6411
|
+ model.tocount = tocount.ToString();//接单量
|
|
|
6412
|
+ model.dealcount = dealcount.ToString();//处理量
|
|
|
6413
|
+ listbb.Add(model);
|
|
|
6414
|
+ }
|
|
|
6415
|
+ }
|
|
|
6416
|
+ }
|
|
|
6417
|
+ else
|
|
|
6418
|
+ {
|
|
|
6419
|
+ foreach (var item in list)
|
|
|
6420
|
+ {
|
|
|
6421
|
+
|
|
|
6422
|
+ var userinfolist = ConvertObject<MadRunFabric.Model.SignTokenApi.Model.Zxryworkcount>(item);
|
|
|
6423
|
+
|
|
|
6424
|
+ var deptnames = userinfolist.role_name;// userinfolist.postlist[0];//科室名称
|
|
|
6425
|
+ var usernames = userinfolist.username;//维修人
|
|
|
6426
|
+ long tocount = 0;
|
|
|
6427
|
+ long dealcount = 0;
|
|
|
6428
|
+ tocount = _wo_repair_baseRepository.Count(p => p.touser[0] == userinfolist.usercode && p.totime >= Convert.ToDateTime(stime + " 00:00:00") && p.totime <= Convert.ToDateTime(etime + " 23:59:59")).Result;//接单数量
|
|
|
6429
|
+ dealcount = _wo_repair_baseRepository.Count(p => p.dealuser[0] == userinfolist.usercode && p.totime >= Convert.ToDateTime(stime + " 00:00:00") && p.totime <= Convert.ToDateTime(etime + " 23:59:59")).Result;//处理数量
|
|
|
6430
|
+
|
|
|
6431
|
+ Model.Dto.userdealwocode model = new Model.Dto.userdealwocode();
|
|
|
6432
|
+ model.deptname = deptnames;//科室名称
|
|
|
6433
|
+ model.username = usernames;//维修人
|
|
|
6434
|
+ model.tocount = tocount.ToString();//接单量
|
|
|
6435
|
+ model.dealcount = dealcount.ToString();//处理量
|
|
|
6436
|
+ listbb.Add(model);
|
|
|
6437
|
+
|
|
|
6438
|
+ }
|
|
|
6439
|
+ }
|
|
|
6440
|
+ }
|
|
|
6441
|
+ NPOIHelper npoi = new NPOIHelper();
|
|
|
6442
|
+ var tb = ModelConvertHelper<Model.Dto.userdealwocode>.ListToTable(listbb, null);
|
|
|
6443
|
+ if (tb != null)
|
|
|
6444
|
+ {
|
|
|
6445
|
+ //导出dtnew
|
|
|
6446
|
+ string[] cols = { "科室名称", "维修人", "接单量", "处理量" };
|
|
|
6447
|
+
|
|
|
6448
|
+ byte[] sm = npoi.ExportToExcel1(tb, cols);
|
|
|
6449
|
+ if (sm != null)
|
|
|
6450
|
+ {
|
|
|
6451
|
+ return File(sm, "application/vnd.ms-excel", "维修人员工作量统计.xlsx");
|
|
|
6452
|
+ }
|
|
|
6453
|
+ else
|
|
|
6454
|
+ {
|
|
|
6455
|
+ return Error("导出失败");
|
|
|
6456
|
+ }
|
|
|
6457
|
+ }
|
|
|
6458
|
+ return Error("没有数据");
|
|
|
6459
|
+ }
|
|
|
6460
|
+
|
|
|
6461
|
+
|
|
6325
|
6462
|
|
|
6326
|
6463
|
#endregion
|
|
6327
|
6464
|
#region 工单操作接口
|
|
|
@@ -6528,36 +6665,36 @@ namespace EquipmentApi.Controllers.workordermanage
|
|
6528
|
6665
|
// wostatemap = dModel.wostate; // 0;
|
|
6529
|
6666
|
// listmap = listmap.Where(x => x.wostate == 0);
|
|
6530
|
6667
|
//}
|
|
6531
|
|
- if (dModel.wostate == 0 || dModel.wostate == 1)
|
|
6532
|
|
- {
|
|
6533
|
|
- //维修工单号
|
|
6534
|
|
- var listmap = await _wo_order_user_maprepository.Get(x => x.woid == dModel.id && x.wocode == dModel.wocode && x.channelcode == channelcode && x.readby == usercode);
|
|
6535
|
|
- var modelmap = listmap.FirstOrDefault();
|
|
6536
|
|
- if (modelmap == null)
|
|
6537
|
|
- {
|
|
6538
|
|
- //添加是否已读关系表
|
|
6539
|
|
- modelmap = new Wo_Order_User_Map();
|
|
6540
|
|
- modelmap.woid = dModel.id;
|
|
6541
|
|
- modelmap.wocode = dModel.wocode;
|
|
6542
|
|
- modelmap.wostate = dModel.wostate;
|
|
6543
|
|
- modelmap.readby = usercode;
|
|
6544
|
|
- modelmap.channelcode = channelcode; //工单类型(枚举EnumOrderState) 维修工单 = 1, 保养工单 = 2, 运行工单 = 3, 超时工单 = 4
|
|
6545
|
|
- modelmap.isread = 1;
|
|
6546
|
|
- modelmap.isnotice = 1;
|
|
6547
|
|
- modelmap.readtime = DateTime.Now.ToLocalTime();
|
|
6548
|
|
- modelmap.note = "故障说明:" + dModel.faultdescripe;
|
|
6549
|
|
- //modelmap.note = dModel.faultdescripe;
|
|
6550
|
|
- bool b = await _wo_order_user_maprepository.Add(modelmap);
|
|
6551
|
|
- }
|
|
6552
|
|
- else
|
|
6553
|
|
- {
|
|
6554
|
|
- modelmap.isread = 1;
|
|
6555
|
|
- modelmap.isnotice = 1;
|
|
6556
|
|
- modelmap.note = "故障说明:" + dModel.faultdescripe;
|
|
6557
|
|
- // modelmap.note = dModel.faultdescripe;
|
|
6558
|
|
- bool b = await _wo_order_user_maprepository.UpdateOne(modelmap);
|
|
6559
|
|
- }
|
|
6560
|
|
- }
|
|
|
6668
|
+ //if (dModel.wostate == 0 || dModel.wostate == 1)
|
|
|
6669
|
+ //{
|
|
|
6670
|
+ // //维修工单号
|
|
|
6671
|
+ // var listmap = await _wo_order_user_maprepository.Get(x => x.woid == dModel.id && x.wocode == dModel.wocode && x.channelcode == channelcode && x.readby == usercode);
|
|
|
6672
|
+ // var modelmap = listmap.FirstOrDefault();
|
|
|
6673
|
+ // if (modelmap == null)
|
|
|
6674
|
+ // {
|
|
|
6675
|
+ // //添加是否已读关系表
|
|
|
6676
|
+ // modelmap = new Wo_Order_User_Map();
|
|
|
6677
|
+ // modelmap.woid = dModel.id;
|
|
|
6678
|
+ // modelmap.wocode = dModel.wocode;
|
|
|
6679
|
+ // modelmap.wostate = dModel.wostate;
|
|
|
6680
|
+ // modelmap.readby = usercode;
|
|
|
6681
|
+ // modelmap.channelcode = channelcode; //工单类型(枚举EnumOrderState) 维修工单 = 1, 保养工单 = 2, 运行工单 = 3, 超时工单 = 4
|
|
|
6682
|
+ // modelmap.isread = 1;
|
|
|
6683
|
+ // modelmap.isnotice = 1;
|
|
|
6684
|
+ // modelmap.readtime = DateTime.Now.ToLocalTime();
|
|
|
6685
|
+ // modelmap.note = "故障说明:" + dModel.faultdescripe;
|
|
|
6686
|
+ // //modelmap.note = dModel.faultdescripe;
|
|
|
6687
|
+ // bool b = await _wo_order_user_maprepository.Add(modelmap);
|
|
|
6688
|
+ // }
|
|
|
6689
|
+ // else
|
|
|
6690
|
+ // {
|
|
|
6691
|
+ // modelmap.isread = 1;
|
|
|
6692
|
+ // modelmap.isnotice = 1;
|
|
|
6693
|
+ // modelmap.note = "故障说明:" + dModel.faultdescripe;
|
|
|
6694
|
+ // // modelmap.note = dModel.faultdescripe;
|
|
|
6695
|
+ // bool b = await _wo_order_user_maprepository.UpdateOne(modelmap);
|
|
|
6696
|
+ // }
|
|
|
6697
|
+ //}
|
|
6561
|
6698
|
}
|
|
6562
|
6699
|
#endregion
|
|
6563
|
6700
|
return Success("获取工单成功", obj);
|
|
|
@@ -6876,7 +7013,7 @@ namespace EquipmentApi.Controllers.workordermanage
|
|
6876
|
7013
|
var clintidlist1 = await _IusercoldandclintidsRepository.GetSingle(p => p.usercode == usercoudemode.usercode);
|
|
6877
|
7014
|
if (clintidlist1 != null)
|
|
6878
|
7015
|
{
|
|
6879
|
|
- PushMessageToList("通知", "您有新的工单需要处理", clintidlist1.clintid);
|
|
|
7016
|
+ // PushMessageToList("通知", "您有新的工单需要处理", clintidlist1.clintid);
|
|
6880
|
7017
|
}
|
|
6881
|
7018
|
}
|
|
6882
|
7019
|
|
|
|
@@ -7076,10 +7213,10 @@ namespace EquipmentApi.Controllers.workordermanage
|
|
7076
|
7213
|
{
|
|
7077
|
7214
|
return Error("请选择故障类型");
|
|
7078
|
7215
|
}
|
|
7079
|
|
- if (string.IsNullOrWhiteSpace(detail))
|
|
7080
|
|
- {
|
|
7081
|
|
- return Error("请输入异常说明");
|
|
7082
|
|
- }
|
|
|
7216
|
+ //if (string.IsNullOrWhiteSpace(detail))
|
|
|
7217
|
+ //{
|
|
|
7218
|
+ // return Error("请输入异常说明");
|
|
|
7219
|
+ //}
|
|
7083
|
7220
|
|
|
7084
|
7221
|
string optuser = User.Claims.FirstOrDefault(c => c.Type == ClaimTypes.Sid).Value;
|
|
7085
|
7222
|
string optusername = User.Claims.FirstOrDefault(c => c.Type == ClaimTypes.Name).Value;
|
|
|
@@ -7159,12 +7296,14 @@ namespace EquipmentApi.Controllers.workordermanage
|
|
7159
|
7296
|
if (state == (int)EnumWorkOrderState.deal)
|
|
7160
|
7297
|
{
|
|
7161
|
7298
|
msg = "处理";
|
|
|
7299
|
+ state = (int)EnumWorkOrderState.evaluate;
|
|
7162
|
7300
|
clmodel.dealtime = DateTime.Now;
|
|
7163
|
7301
|
clmodel.islosematerials = 0;
|
|
|
7302
|
+ clmodel.arrivetime = DateTime.Now;
|
|
7164
|
7303
|
clmodel.losematerials = new List<MaterialModel>();
|
|
7165
|
7304
|
}
|
|
7166
|
7305
|
|
|
7167
|
|
- //clmodel.dealuser = dealcodes;
|
|
|
7306
|
+
|
|
7168
|
7307
|
//clmodel.dealusername = dealnames;
|
|
7169
|
7308
|
clmodel.wostate = state;
|
|
7170
|
7309
|
clmodel.faulttypeid = faulttypeid;
|
|
|
@@ -7335,7 +7474,7 @@ namespace EquipmentApi.Controllers.workordermanage
|
|
7335
|
7474
|
await _wo_repair_sendRepository.Add(wrs);
|
|
7336
|
7475
|
|
|
7337
|
7476
|
string mobile = string.IsNullOrEmpty(userinfo.mobile) ? "" : "(" + userinfo.mobile + ")";
|
|
7338
|
|
- AddItems(clmodel.wocode, clmodel.wostate, channel, optuser + "-" + optusername + mobile + " 抢单", new List<FileBaseModel>(), optuser, optusername, "");
|
|
|
7477
|
+ AddItems(clmodel.wocode, clmodel.wostate, channel, optuser + "-" + optusername + mobile + " 接收", new List<FileBaseModel>(), optuser, optusername, "");
|
|
7339
|
7478
|
|
|
7340
|
7479
|
if (clmodel.channel == 4)
|
|
7341
|
7480
|
{
|
|
|
@@ -7344,10 +7483,10 @@ namespace EquipmentApi.Controllers.workordermanage
|
|
7344
|
7483
|
//SendWechatMessage(clmodel.wocode, "维修人员接单!", content, clmodel.id, clmodel.createuser);
|
|
7345
|
7484
|
}
|
|
7346
|
7485
|
|
|
7347
|
|
- return Success("抢单成功");
|
|
|
7486
|
+ return Success("接收成功");
|
|
7348
|
7487
|
}
|
|
7349
|
7488
|
|
|
7350
|
|
- return Error("抢单失败");
|
|
|
7489
|
+ return Error("接收失败");
|
|
7351
|
7490
|
|
|
7352
|
7491
|
}
|
|
7353
|
7492
|
/// <summary>
|
|
|
@@ -7658,22 +7797,54 @@ namespace EquipmentApi.Controllers.workordermanage
|
|
7658
|
7797
|
var clintidlist = await _IusercoldandclintidsRepository.GetSingle(p => p.usercode == userinfo.usercode);
|
|
7659
|
7798
|
if (clintidlist != null)
|
|
7660
|
7799
|
{
|
|
7661
|
|
- PushMessageToList("通知", "您有新的工单需要处理", clintidlist.clintid);
|
|
7662
|
|
- }
|
|
7663
|
|
- var clintidlist1 = await _IusercoldandclintidsRepository.GetSingle(p => p.usercode == touserinfo.usercode);
|
|
7664
|
|
- if (clintidlist1 != null)
|
|
7665
|
|
- {
|
|
7666
|
|
- PushMessageToList("通知", "您有新的工单需要处理", clintidlist1.clintid);
|
|
|
7800
|
+ // PushMessageToList("通知", "您有新的工单需要处理", clintidlist.clintid);
|
|
|
7801
|
+
|
|
|
7802
|
+
|
|
|
7803
|
+
|
|
7667
|
7804
|
}
|
|
|
7805
|
+ //var clintidlist1 = await _IusercoldandclintidsRepository.GetSingle(p => p.usercode == touserinfo.usercode);
|
|
|
7806
|
+ //if (clintidlist1 != null)
|
|
|
7807
|
+ //{
|
|
|
7808
|
+ // PushMessageToList("通知", "您有新的工单需要处理", clintidlist1.clintid);
|
|
|
7809
|
+ //}
|
|
7668
|
7810
|
|
|
7669
|
7811
|
//工单信息
|
|
7670
|
|
- var listmap = await _wo_order_user_maprepository.Get(x => x.wocode == clmodel.wocode && x.channelcode == 1 && x.readby == assignman);
|
|
7671
|
|
- var modelmap = listmap.FirstOrDefault();
|
|
7672
|
|
- if (modelmap != null)
|
|
|
7812
|
+ //var listmap = await _wo_order_user_maprepository.Get(x => x.wocode == clmodel.wocode && x.channelcode == 1 && x.readby == assignman);
|
|
|
7813
|
+ //var modelmap = listmap.FirstOrDefault();
|
|
|
7814
|
+ //if (modelmap != null)
|
|
|
7815
|
+ //{
|
|
|
7816
|
+ // //删除工单关系表中对应工单
|
|
|
7817
|
+ // bool boo = await _wo_order_user_maprepository.Remove(modelmap.id);
|
|
|
7818
|
+ //}
|
|
|
7819
|
+
|
|
|
7820
|
+
|
|
|
7821
|
+ if (clmodel.wostate == 1 && !string.IsNullOrEmpty(assignman))
|
|
7673
|
7822
|
{
|
|
7674
|
|
- //删除工单关系表中对应工单
|
|
7675
|
|
- bool boo = await _wo_order_user_maprepository.Remove(modelmap.id);
|
|
|
7823
|
+ //维修工单号
|
|
|
7824
|
+ var listmap = await _wo_order_user_maprepository.Get(x => x.woid == clmodel.id && x.wocode == clmodel.wocode && x.channelcode == 1 && x.readby == assignman);
|
|
|
7825
|
+ var modelmap = listmap.FirstOrDefault();
|
|
|
7826
|
+ if (modelmap == null)
|
|
|
7827
|
+ {
|
|
|
7828
|
+ //添加是否已读关系表
|
|
|
7829
|
+ modelmap = new Wo_Order_User_Map();
|
|
|
7830
|
+ modelmap.woid = clmodel.id;
|
|
|
7831
|
+ modelmap.wocode = clmodel.wocode;
|
|
|
7832
|
+ modelmap.wostate = clmodel.wostate;
|
|
|
7833
|
+ modelmap.readby = assignman;
|
|
|
7834
|
+ modelmap.channelcode = 1; //工单类型(枚举EnumOrderState) 维修工单 = 1, 保养工单 = 2, 运行工单 = 3, 超时工单 = 4
|
|
|
7835
|
+ modelmap.isread = 0;
|
|
|
7836
|
+ modelmap.isnotice = 0;
|
|
|
7837
|
+ modelmap.readtime = DateTime.Now;
|
|
|
7838
|
+ // modelmap.readtime = DateTime.Now.ToLocalTime();
|
|
|
7839
|
+ modelmap.note = "您有新的工单需要处理,工单编号:" + clmodel.wocode;// "故障说明:" + clmodel.faultdescripe;
|
|
|
7840
|
+ //modelmap.note = dModel.faultdescripe;
|
|
|
7841
|
+ bool b = await _wo_order_user_maprepository.Add(modelmap);
|
|
|
7842
|
+ }
|
|
|
7843
|
+
|
|
7676
|
7844
|
}
|
|
|
7845
|
+
|
|
|
7846
|
+
|
|
|
7847
|
+
|
|
7677
|
7848
|
#endregion
|
|
7678
|
7849
|
return Success("派单成功");
|
|
7679
|
7850
|
}
|
|
|
@@ -7923,10 +8094,11 @@ namespace EquipmentApi.Controllers.workordermanage
|
|
7923
|
8094
|
/// <summary>
|
|
7924
|
8095
|
/// 取消工单
|
|
7925
|
8096
|
/// </summary>
|
|
|
8097
|
+
|
|
7926
|
8098
|
[HttpPost("cancle")]
|
|
7927
|
8099
|
public async Task<IActionResult> UpdateCancleAsync(string wocode, int channel = 1)
|
|
7928
|
8100
|
{
|
|
7929
|
|
- string optuser = User.Claims.FirstOrDefault(c => c.Type == ClaimTypes.Sid).Value;
|
|
|
8101
|
+ string optuser = User.Claims.FirstOrDefault(c => c.Type == ClaimTypes.Sid).Value;
|
|
7930
|
8102
|
string optusername = User.Claims.FirstOrDefault(c => c.Type == ClaimTypes.Name).Value;
|
|
7931
|
8103
|
//var userstr = _signTokenService.GetUserInfoAsync(optuser).Result;
|
|
7932
|
8104
|
//var userinfo = userstr.ToJObject()["data"].ToString().ToObject<UserInfoModel>();
|
|
|
@@ -7937,7 +8109,7 @@ namespace EquipmentApi.Controllers.workordermanage
|
|
7937
|
8109
|
|
|
7938
|
8110
|
var cls = await _wo_repair_baseRepository.Get(p => p.wocode == wocode && p.isdelete == 0);
|
|
7939
|
8111
|
var clmodel = cls.FirstOrDefault();
|
|
7940
|
|
- if (clmodel != null && clmodel.createuser == optuser && clmodel.wostate == (int)EnumWorkOrderState.create)
|
|
|
8112
|
+ if (clmodel != null && clmodel.createuser == optuser )
|
|
7941
|
8113
|
{
|
|
7942
|
8114
|
clmodel.wostate = (int)EnumWorkOrderState.cancle;
|
|
7943
|
8115
|
clmodel.canceltime = DateTime.Now;
|
|
|
@@ -12157,6 +12329,105 @@ namespace EquipmentApi.Controllers.workordermanage
|
|
12157
|
12329
|
return Success("成功", hcinfolist);
|
|
12158
|
12330
|
}
|
|
12159
|
12331
|
|
|
|
12332
|
+
|
|
|
12333
|
+
|
|
|
12334
|
+ [HttpGet("getbxmessagelist")]
|
|
|
12335
|
+ public async Task<IActionResult> GetBxMessageList(int isread)
|
|
|
12336
|
+ {
|
|
|
12337
|
+ string nowusercode = User.Claims.FirstOrDefault(c => c.Type == ClaimTypes.Sid).Value;
|
|
|
12338
|
+ var listmap = await _wo_order_user_maprepository.Get(x => x.channelcode == 1 && x.readby == nowusercode);
|
|
|
12339
|
+
|
|
|
12340
|
+ var list = new List<MessageListDto>();
|
|
|
12341
|
+ if (isread == 0)
|
|
|
12342
|
+ {
|
|
|
12343
|
+ var listnoreadmaps = listmap.Where(x => x.isread == 0).OrderByDescending(x => x.readtime).Take(50);
|
|
|
12344
|
+ foreach (var item in listnoreadmaps)
|
|
|
12345
|
+ {
|
|
|
12346
|
+ list.Add(new MessageListDto
|
|
|
12347
|
+ {
|
|
|
12348
|
+ id = item.id,
|
|
|
12349
|
+ woid = item.woid,
|
|
|
12350
|
+ channelcode = 1,
|
|
|
12351
|
+ wotype = 1,
|
|
|
12352
|
+ wocode = item.wocode,
|
|
|
12353
|
+ proname = "维修工单:" + item.wocode, // + " " + item.proname,
|
|
|
12354
|
+ title = "待处理提醒",
|
|
|
12355
|
+ content = item.note,
|
|
|
12356
|
+ wostate = item.wostate,
|
|
|
12357
|
+ statename = "", //工单状态
|
|
|
12358
|
+ checkby = "", //接单人
|
|
|
12359
|
+ createby = "",
|
|
|
12360
|
+ isread = 0,
|
|
|
12361
|
+ });
|
|
|
12362
|
+ }
|
|
|
12363
|
+ }
|
|
|
12364
|
+ else
|
|
|
12365
|
+ {
|
|
|
12366
|
+ var listreadmaps = listmap.Where(x => x.isread == 1).OrderByDescending(x => x.readtime).Take(50);
|
|
|
12367
|
+
|
|
|
12368
|
+
|
|
|
12369
|
+ foreach (var item in listreadmaps)
|
|
|
12370
|
+ {
|
|
|
12371
|
+ list.Add(new MessageListDto
|
|
|
12372
|
+ {
|
|
|
12373
|
+ id = item.id,
|
|
|
12374
|
+ woid = item.id,
|
|
|
12375
|
+ channelcode = 1,
|
|
|
12376
|
+ wotype = 1,
|
|
|
12377
|
+ wocode = item.wocode,
|
|
|
12378
|
+ proname = "维修工单:" + item.wocode, // + " " + item.proname,
|
|
|
12379
|
+ title = item.wocode,
|
|
|
12380
|
+ content = item.note,
|
|
|
12381
|
+ wostate = item.wostate,
|
|
|
12382
|
+ statename = "", //工单状态
|
|
|
12383
|
+ checkby = "", //接单人
|
|
|
12384
|
+ createby = "",
|
|
|
12385
|
+ isread = 1,
|
|
|
12386
|
+ });
|
|
|
12387
|
+ }
|
|
|
12388
|
+ }
|
|
|
12389
|
+
|
|
|
12390
|
+
|
|
|
12391
|
+
|
|
|
12392
|
+
|
|
|
12393
|
+ var obj = new
|
|
|
12394
|
+ {
|
|
|
12395
|
+ rows = list,
|
|
|
12396
|
+ total = list.Count
|
|
|
12397
|
+
|
|
|
12398
|
+ };
|
|
|
12399
|
+ return Success("获取成功", obj);
|
|
|
12400
|
+ }
|
|
|
12401
|
+
|
|
|
12402
|
+ [HttpGet("getyd")]
|
|
|
12403
|
+ public async Task<IActionResult> GetYdList(string id)
|
|
|
12404
|
+ {
|
|
|
12405
|
+
|
|
|
12406
|
+
|
|
|
12407
|
+ string nowusercode = User.Claims.FirstOrDefault(c => c.Type == ClaimTypes.Sid).Value;
|
|
|
12408
|
+ // string nowusercode="1003";
|
|
|
12409
|
+ var listmap = await _wo_order_user_maprepository.Get(x => x.channelcode == 1 && x.readby == nowusercode && x.id == id);
|
|
|
12410
|
+ if (listmap != null)
|
|
|
12411
|
+ {
|
|
|
12412
|
+ var modelmap = listmap.FirstOrDefault();
|
|
|
12413
|
+ if (modelmap != null)
|
|
|
12414
|
+ {
|
|
|
12415
|
+ modelmap.isread = 1;
|
|
|
12416
|
+ modelmap.isnotice = 1;
|
|
|
12417
|
+
|
|
|
12418
|
+ modelmap.readtime = DateTime.Now;
|
|
|
12419
|
+ bool b = await _wo_order_user_maprepository.UpdateOne(modelmap);
|
|
|
12420
|
+ }
|
|
|
12421
|
+ return Success("已读成功");
|
|
|
12422
|
+ }
|
|
|
12423
|
+ else
|
|
|
12424
|
+ {
|
|
|
12425
|
+ return Success(nowusercode + listmap.ToJson());
|
|
|
12426
|
+ }
|
|
|
12427
|
+
|
|
|
12428
|
+ }
|
|
|
12429
|
+
|
|
|
12430
|
+
|
|
12160
|
12431
|
#endregion
|
|
12161
|
12432
|
}
|
|
12162
|
12433
|
}
|