liyuanyuan %!s(int64=10) %!d(string=před) měsíci
rodič
revize
8a19034a8d

+ 78 - 36
hjzx-api/src/main/java/api/controller/order/WorkOrderBaseController.java

286
             input.setWorkorderstate(EnumOrderStatus.xgd.getValue());
286
             input.setWorkorderstate(EnumOrderStatus.xgd.getValue());
287
         } else {
287
         } else {
288
             //结束了 已完成
288
             //结束了 已完成
289
-            input.setWorkorderstate(EnumOrderStatus.end.getValue());
290
-            input.setEndtime(currentDate);
291
-            input.setDealuser(CurrentUser().getUserName());
289
+            if(input.getIsNeedVisit()==1){
290
+
291
+                input.setWorkorderstate(EnumOrderStatus.dhf.getValue());
292
+            }
293
+           else{
294
+                input.setWorkorderstate(EnumOrderStatus.end.getValue());
295
+                input.setEndtime(currentDate);
296
+                input.setDealuser(CurrentUser().getUserName());
297
+
298
+                input.setDealdept(CurrentUser().getDeptId());
299
+                input.setDealusername(CurrentUser().getNickName());
300
+            }
292
 
301
 
293
-            input.setDealdept(CurrentUser().getDeptId());
294
-            input.setDealusername(CurrentUser().getNickName());
295
         }
302
         }
296
 
303
 
297
         boolean result = workorderbaseService.insert(input);
304
         boolean result = workorderbaseService.insert(input);
314
                 boolean logresult = addlog("创建了工单", "创建", CurrentUser().getUserName(), input.getWorkordercode(), CurrentUser().getNickName(), "");
321
                 boolean logresult = addlog("创建了工单", "创建", CurrentUser().getUserName(), input.getWorkordercode(), CurrentUser().getNickName(), "");
315
             } else {
322
             } else {
316
                 //结束了 已完成
323
                 //结束了 已完成
324
+if(input.getIsNeedVisit()==1){
325
+    boolean logresult = addlog("创建了工单,工单待回访", "创建", CurrentUser().getUserName(), input.getWorkordercode(), CurrentUser().getNickName(), "");
326
+
327
+}
328
+else {
329
+    boolean logresult = addlog("创建并完成了工单" + dealContent, "创建并完成", CurrentUser().getUserName(), input.getWorkordercode(), CurrentUser().getNickName(), "");
317
 
330
 
318
-                boolean logresult = addlog("创建并完成了工单" + dealContent, "创建并完成", CurrentUser().getUserName(), input.getWorkordercode(), CurrentUser().getNickName(), "");
331
+}
319
             }
332
             }
320
 
333
 
321
             //判断手机号存在不customer,不存在就添加新用户
334
             //判断手机号存在不customer,不存在就添加新用户
363
         Date currentDate = new Date(System.currentTimeMillis());
376
         Date currentDate = new Date(System.currentTimeMillis());
364
         WorkOrderBase orderBase = workorderbaseService.getEntity(input.getWorkorderId());
377
         WorkOrderBase orderBase = workorderbaseService.getEntity(input.getWorkorderId());
365
         //boolean noend = orderBase.getIsend() == 0 ? true : false;
378
         //boolean noend = orderBase.getIsend() == 0 ? true : false;
366
-        orderBase.setCaller(input.getCaller());
367
-        orderBase.setCallnum(input.getCallnum());
368
-        orderBase.setProject(input.getProject());
369
-        orderBase.setWorkordercate(input.getWorkordercate());
370
-        orderBase.setContent(input.getContent());
371
-        orderBase.setSource(input.getSource());
379
+//        orderBase.setCaller(input.getCaller());
380
+//        orderBase.setCallnum(input.getCallnum());
381
+//        orderBase.setProject(input.getProject());
382
+//        orderBase.setWorkordercate(input.getWorkordercate());
383
+//        orderBase.setContent(input.getContent());
384
+//        orderBase.setSource(input.getSource());
372
         if (input.getIsend()==1)
385
         if (input.getIsend()==1)
373
         {
386
         {
374
-            orderBase.setWorkorderstate(EnumOrderStatus.end.getValue());
375
-            orderBase.setIsend(1L);
376
-            orderBase.setEndtime(currentDate);
377
-            orderBase.setDealuser(CurrentUser().getUserName());
378
-            orderBase.setDealdept(CurrentUser().getDeptId());
379
-            orderBase.setDealusername(CurrentUser().getNickName());
387
+            input.setWorkorderstate(EnumOrderStatus.end.getValue());
388
+            input.setIsend(1L);
389
+            input.setEndtime(currentDate);
390
+            input.setDealuser(CurrentUser().getUserName());
391
+            input.setDealdept(CurrentUser().getDeptId());
392
+            input.setDealusername(CurrentUser().getNickName());
380
         }
393
         }
381
-        boolean result = workorderbaseService.update(orderBase);
394
+        boolean result = workorderbaseService.update(input);
382
         if (result) {
395
         if (result) {
383
 
396
 
384
             boolean logresult = addlog("编辑了工单", "编辑", CurrentUser().getUserName(), orderBase.getWorkordercode(), CurrentUser().getNickName(), "");
397
             boolean logresult = addlog("编辑了工单", "编辑", CurrentUser().getUserName(), orderBase.getWorkordercode(), CurrentUser().getNickName(), "");
502
         if(orderBase.getWorkorderstate()>EnumOrderStatus.dhf.getValue()){
515
         if(orderBase.getWorkorderstate()>EnumOrderStatus.dhf.getValue()){
503
             LambdaQueryWrapper<WorkOrderVisitLog> la=new LambdaQueryWrapper<>();
516
             LambdaQueryWrapper<WorkOrderVisitLog> la=new LambdaQueryWrapper<>();
504
             la.eq(WorkOrderVisitLog::getWorkordercode,orderBase.getWorkordercode());
517
             la.eq(WorkOrderVisitLog::getWorkordercode,orderBase.getWorkordercode());
505
-            WorkOrderVisitLog log=  workordervisitlogService.getEntity(la);
506
-            ov.setVisitName(log!=null?log.getOperatorname():"");
507
-            ov.setVisitTime(log!=null?log.getCreatetime():null);
518
+            la.orderByDesc(WorkOrderVisitLog::getCreatetime);
519
+           List< WorkOrderVisitLog >loglist=  workordervisitlogService.getList(la);
520
+           if(loglist!=null &&loglist.size()>0){
521
+               WorkOrderVisitLog log=loglist.stream().findFirst().get();
522
+               ov.setVisitName(log!=null?log.getOperatorname():"");
523
+               ov.setVisitTime(log!=null?log.getCreatetime():null);
524
+           }
525
+
508
 
526
 
509
         }
527
         }
510
 
528
 
840
         qw.eq(WorkOrderBase::getWorkordercode, code);
858
         qw.eq(WorkOrderBase::getWorkordercode, code);
841
         if (agree == 1) {
859
         if (agree == 1) {
842
             //同意 工单状态改
860
             //同意 工单状态改
843
-            qw.set(WorkOrderBase::getWorkorderstate,  EnumOrderStatus.dhf.getValue());
861
+            if (orderBase.getIsNeedVisit()==0){
862
+
863
+                qw.set(WorkOrderBase::getWorkorderstate,  EnumOrderStatus.end.getValue());
864
+                qw.set(WorkOrderBase::getIsend, 1);
865
+                qw.set(WorkOrderBase::getEndtime, currentDate);
866
+            }
867
+            if(orderBase.getIsNeedVisit()==1){
868
+                qw.set(WorkOrderBase::getWorkorderstate,  EnumOrderStatus.dhf.getValue());
869
+            }
870
+
844
         } else {
871
         } else {
845
             reason= map.get("reason").toString();
872
             reason= map.get("reason").toString();
846
             qw.set(WorkOrderBase::getWorkorderstate,  EnumOrderStatus.dcl.getValue());
873
             qw.set(WorkOrderBase::getWorkorderstate,  EnumOrderStatus.dcl.getValue());
882
         qw.eq(WorkOrderBase::getWorkordercode, code);
909
         qw.eq(WorkOrderBase::getWorkordercode, code);
883
 
910
 
884
 
911
 
885
-        Long myd= Long.parseLong(map.get("myd").toString());
912
+        Long myd=0L;
913
+        if(map.get("myd")!=null)
914
+        {
915
+         myd=   Long.parseLong(map.get("myd").toString());
916
+        }
886
         int isover= (int) map.get("isover");
917
         int isover= (int) map.get("isover");
887
         //工单状态改
918
         //工单状态改
888
-         if (isover>0||myd>0)
889
-         {
890
-             qw.set(WorkOrderBase::getWorkorderstate,  EnumOrderStatus.end.getValue());
891
-             qw.set(WorkOrderBase::getIsend, 1);
892
-             qw.set(WorkOrderBase::getEndtime, currentDate);
893
-         }
894
-        qw.set(WorkOrderBase::getVisitresult,  map.get("visitresult"));
895
-        qw.set(WorkOrderBase::getCallvisitid,  map.get("callid"));
896
-        qw.set(WorkOrderBase::getVisittime, currentDate);
897
-        qw.set(WorkOrderBase::getMyd, myd);
919
+//         if (isover>0||myd>0)
920
+//         {
921
+//             qw.set(WorkOrderBase::getWorkorderstate,  EnumOrderStatus.end.getValue());
922
+//             qw.set(WorkOrderBase::getIsend, 1);
923
+//             qw.set(WorkOrderBase::getEndtime, currentDate);
924
+//         }
925
+
926
+        if(isover==0){
927
+            qw.set(WorkOrderBase::getWorkorderstate,  EnumOrderStatus.dhf.getValue());
928
+        }
929
+        else {
930
+            qw.set(WorkOrderBase::getWorkorderstate,  EnumOrderStatus.end.getValue());
931
+            qw.set(WorkOrderBase::getIsend, 1);
932
+            qw.set(WorkOrderBase::getEndtime, currentDate);
933
+            qw.set(WorkOrderBase::getVisitresult,  map.get("result"));
934
+            qw.set(WorkOrderBase::getCallvisitid,  map.get("callid"));
935
+            qw.set(WorkOrderBase::getVisittime, currentDate);
936
+            qw.set(WorkOrderBase::getMyd, myd);
937
+        }
938
+
898
         boolean result = workorderbaseService.updateBatch(qw);
939
         boolean result = workorderbaseService.updateBatch(qw);
899
 
940
 
900
 
941
 
911
         visitLog.setWorkordercode(code);
952
         visitLog.setWorkordercode(code);
912
         visitLog.setOperator(CurrentUser().getUserName());
953
         visitLog.setOperator(CurrentUser().getUserName());
913
         visitLog.setOperatorname(CurrentUser().getNickName());
954
         visitLog.setOperatorname(CurrentUser().getNickName());
914
-        visitLog.setContent(map.get("visitresult").toString());
955
+        visitLog.setContent(map.get("visitresult")!=null?map.get("visitresult").toString():"");
915
         visitLog.setMyd(myd);
956
         visitLog.setMyd(myd);
957
+        visitLog.setResult( map.get("result")!=null?map.get("result").toString():"");
916
         visitLog.setCreatetime(currentDate);
958
         visitLog.setCreatetime(currentDate);
917
         visitLogService.insert(visitLog);
959
         visitLogService.insert(visitLog);
918
-        System.out.println("到这没错4");
960
+
919
         if (result) {
961
         if (result) {
920
             boolean logresult = addlog("回访了工单" , "回访", CurrentUser().getUserName(),
962
             boolean logresult = addlog("回访了工单" , "回访", CurrentUser().getUserName(),
921
                     code , CurrentUser().getNickName(), "");
963
                     code , CurrentUser().getNickName(), "");