zhoufan %!s(int64=4) %!d(string=hace) años
padre
commit
25be689d0f

+ 606 - 112
CallCenterApi/CallCenterApi.Interface/CallCenterApi.Interface/Controllers/workorder/WorkOrderController.cs

@@ -9124,11 +9124,11 @@ namespace CallCenterApi.Interface.Controllers.workorder
9124 9124
                                 {
9125 9125
                                     maindept = department((int)modeldept.F_PartentId);
9126 9126
                                     if (maindept == null)
9127
-                                        return Error("该单位没有上级单位派单失败");
9127
+                                        return Error("该单位没有上级单位派单失败");
9128 9128
                                 }
9129 9129
                                 else
9130 9130
                                 {
9131
-                                    return Error("该单位没有上级单位派单失败");
9131
+                                    return Error("该单位没有上级单位派单失败");
9132 9132
                                 }
9133 9133
                             }
9134 9134
                             string resdatetime = "";
@@ -9188,7 +9188,7 @@ namespace CallCenterApi.Interface.Controllers.workorder
9188 9188
                                 string mag = modelT_Bus_WorkOrder.F_WorkOrderId;
9189 9189
                                 bool n = SMSController.AddSmS(0, mag, count, u.F_Mobile, "153305", "");
9190 9190
                             }
9191
-                            var user = new BLL.T_Sys_UserAccount().GetModelList("F_DeptId in (" + maindept.F_DeptId + ") ");
9191
+                            //var user = new BLL.T_Sys_UserAccount().GetModelList("F_DeptId in (" + maindept.F_DeptId + ") ");
9192 9192
                         }
9193 9193
                         #endregion
9194 9194
                         //推送消息表
@@ -9267,6 +9267,8 @@ namespace CallCenterApi.Interface.Controllers.workorder
9267 9267
 
9268 9268
                 int deptid = 0;
9269 9269
                 var modeldept = new Model.T_Sys_Department();
9270
+                var premodeldept = new Model.T_Sys_Department();
9271
+
9270 9272
                 if (ispd > 0)
9271 9273
                 {
9272 9274
                     if (string.IsNullOrEmpty(keys))
@@ -9293,6 +9295,20 @@ namespace CallCenterApi.Interface.Controllers.workorder
9293 9295
                     modeldept = new BLL.T_Sys_Department().GetModel(deptid);
9294 9296
                     if (modeldept == null)
9295 9297
                         return Error("自动派单失败,派单单位不存在");
9298
+
9299
+                    if (modeldept.F_IsDept == 2)
9300
+                    {
9301
+                        if (modeldept.F_PartentId > 0)
9302
+                        {
9303
+                            premodeldept = department((int)modeldept.F_PartentId);
9304
+                            if (premodeldept == null)
9305
+                                return Error("该单位没有上级单位,派单失败");
9306
+                        }
9307
+                        else
9308
+                        {
9309
+                            return Error("该单位没有上级单位,派单失败");
9310
+                        }
9311
+                    }
9296 9312
                 }
9297 9313
                 Model.T_Bus_WorkOrder modelT_Bus_WorkOrder = new Model.T_Bus_WorkOrder();
9298 9314
 
@@ -9360,8 +9376,6 @@ namespace CallCenterApi.Interface.Controllers.workorder
9360 9376
                         modelT_Bus_WorkOrder.F_WorkState = (int)EnumWorkState.submit;// 
9361 9377
                     }
9362 9378
                     #region
9363
-                    #region
9364
-                    #endregion
9365 9379
                     #endregion
9366 9380
                     if (!string.IsNullOrEmpty(callid))
9367 9381
                     {
@@ -9380,12 +9394,23 @@ namespace CallCenterApi.Interface.Controllers.workorder
9380 9394
                         return Error("添加失败");
9381 9395
                     #endregion
9382 9396
 
9383
-                    
9384
-
9385 9397
                     trans.Complete();
9386 9398
                 }
9387 9399
 
9388 9400
                 string userinfo = User.depname + "(" + User.F_UserCode + ")";
9401
+                string message = "";
9402
+                if (modelT_Bus_WorkOrder.F_WorkState == (int)EnumWorkState.neworder || modelT_Bus_WorkOrder.F_WorkState == (int)EnumWorkState.audit)
9403
+                {
9404
+                    message = userinfo + " 登记了工单,工单编号:" + modelT_Bus_WorkOrder.F_WorkOrderId;
9405
+                }
9406
+                if (modelT_Bus_WorkOrder.F_WorkState == (int)EnumWorkState.submit)
9407
+                {
9408
+                    message = userinfo + " 登记并提交了工单,工单编号:" + modelT_Bus_WorkOrder.F_WorkOrderId;
9409
+                }
9410
+                if (modelT_Bus_WorkOrder.F_WorkState == (int)EnumWorkState.finish)
9411
+                {
9412
+                    message = userinfo + " 登记并结案了工单,工单编号:" + modelT_Bus_WorkOrder.F_WorkOrderId;
9413
+                }
9389 9414
                 await Task.Run(() =>
9390 9415
                 {
9391 9416
                     #region 插入操作记录
@@ -9394,23 +9419,9 @@ namespace CallCenterApi.Interface.Controllers.workorder
9394 9419
                     oper.F_State = modelT_Bus_WorkOrder.F_WorkState;
9395 9420
                     oper.F_CallRecordId = modelT_Bus_WorkOrder.F_CallRecordId;
9396 9421
                     oper.F_File = modelT_Bus_WorkOrder.F_File;
9422
+                    oper.F_Message = message;
9397 9423
 
9398
-                    //if (modelT_Bus_WorkOrder.F_WorkState == 0)
9399
-                    if (modelT_Bus_WorkOrder.F_WorkState == (int)EnumWorkState.neworder || modelT_Bus_WorkOrder.F_WorkState == (int)EnumWorkState.audit)
9400
-                    {
9401
-                        oper.F_Message = userinfo + " 登记了工单,工单编号:" + modelT_Bus_WorkOrder.F_WorkOrderId;
9402
-                    }
9403
-                    //if (modelT_Bus_WorkOrder.F_WorkState == 1)
9404
-                    if (modelT_Bus_WorkOrder.F_WorkState == (int)EnumWorkState.submit)
9405
-                    {
9406
-                        oper.F_Message = userinfo + " 登记并提交了工单,工单编号:" + modelT_Bus_WorkOrder.F_WorkOrderId;
9407
-                    }
9408
-                    //if (modelT_Bus_WorkOrder.F_WorkState == 9)
9409
-                    if (modelT_Bus_WorkOrder.F_WorkState == (int)EnumWorkState.finish)
9410
-                    {
9411
-                        oper.F_Message = userinfo + " 登记并结案了工单,工单编号:" + modelT_Bus_WorkOrder.F_WorkOrderId;
9412
-                    }
9413
-                    else
9424
+                    if (modelT_Bus_WorkOrder.F_WorkState != (int)EnumWorkState.finish)
9414 9425
                     {
9415 9426
                         string count = "您反映的事项已受理并转交相关部门处理,感谢您拨打市长热线!";
9416 9427
                         string msg = "";
@@ -9420,9 +9431,14 @@ namespace CallCenterApi.Interface.Controllers.workorder
9420 9431
                     oper.F_CreateTime = DateTime.Now;
9421 9432
                     oper.F_IsDelete = 0;
9422 9433
                     operBLL.Add(oper);
9434
+                    #endregion
9435
+                });
9436
+                await Task.Run(() =>
9437
+                {
9438
+                    #region 插入推送消息
9423 9439
 
9424 9440
                     //推送消息表
9425
-                    if (modelT_Bus_WorkOrder.F_WorkState != (int)EnumWorkState.neworder && modelT_Bus_WorkOrder.F_WorkState != (int)EnumWorkState.audit) //0)
9441
+                    if (modelT_Bus_WorkOrder.F_WorkState != (int)EnumWorkState.neworder && modelT_Bus_WorkOrder.F_WorkState != (int)EnumWorkState.audit)
9426 9442
                     {
9427 9443
 
9428 9444
                         var role = new BLL.T_Sys_RoleInfo().GetModelList(" (F_RoleCode='ZXLD' or F_RoleCode='ZXLDGLYGLY' or F_RoleCode='MTDD')  ").Select(p => p.F_RoleId);
@@ -9430,22 +9446,24 @@ namespace CallCenterApi.Interface.Controllers.workorder
9430 9446
 
9431 9447
                         foreach (var u in users)
9432 9448
                         {
9433
-                            msg.AddInternalMessagesInfo("工单消息", oper.F_Message, u.F_UserCode, User.F_UserCode, (int)EnumSmsType.workorder);
9449
+                            msg.AddInternalMessagesInfo("工单消息", message, u.F_UserCode, User.F_UserCode, (int)EnumSmsType.workorder);
9434 9450
                         }
9435 9451
                     }
9436 9452
                     #endregion
9437 9453
                 });
9438
-                await Task.Run(() =>
9454
+                await Task.Run(async () =>
9439 9455
                 {
9440 9456
                     #region 自动派单
9441 9457
                     if (ispd > 0)
9442 9458
                     {
9459
+                        //时限
9443 9460
                         string resdatetime = "";
9444 9461
                         string resdate = DateTime.Now.Date.ToString("yyyy-MM-dd");
9445 9462
                         DataTable dt = DbHelperSQL.Query("select top " + 7 + " F_OffDate from  T_Sys_WorkOFFDays  where F_OffState = 1   and F_OffDate>'" + resdate + "' order by F_OffDate").Tables[0];
9446 9463
                         resdatetime = dt.Rows[dt.Rows.Count - 1]["F_OffDate"].ToString();
9447 9464
                         resdatetime = Convert.ToDateTime(resdatetime).ToString("yyyy-MM-dd") + " 23:59:59 ";
9448 9465
 
9466
+                        //交办信息
9449 9467
                         Model.T_Bus_AssignedInfo modelT_Bus_AssignedInfo = new Model.T_Bus_AssignedInfo();
9450 9468
                         modelT_Bus_AssignedInfo.F_WorkOrderId = modelT_Bus_WorkOrder.F_WorkOrderId;
9451 9469
                         modelT_Bus_AssignedInfo.F_LimitTime = Convert.ToDateTime(resdatetime);
@@ -9462,27 +9480,45 @@ namespace CallCenterApi.Interface.Controllers.workorder
9462 9480
                         modelT_Bus_AssignedInfo.F_IsNext = 0;
9463 9481
                         modelT_Bus_AssignedInfo.F_TimeResp = assignBLL.GetRepTimly(DateTime.Now);//及时查收时间点
9464 9482
                         int aid = assignBLL.Add(modelT_Bus_AssignedInfo);
9483
+                        //工单信息
9465 9484
                         modelT_Bus_WorkOrder.F_LimitTime = Convert.ToDateTime(resdatetime);
9466 9485
                         modelT_Bus_WorkOrder.F_MainDeptId = deptid;
9467 9486
                         modelT_Bus_WorkOrder.F_OtherDeptIds = "";
9468 9487
                         modelT_Bus_WorkOrder.F_AssignUser = User.F_UserCode;
9469 9488
                         modelT_Bus_WorkOrder.F_AssignTime = DateTime.Now;
9470 9489
                         workorderBLL.Update(modelT_Bus_WorkOrder);
9471
-                        var msgss = userinfo + " 交办了工单,主办单位:" + modeldept.F_DeptName;
9472 9490
 
9473
-                        addoptlog(modelT_Bus_WorkOrder.F_WorkOrderId, modelT_Bus_WorkOrder.F_WorkState, modelT_Bus_AssignedInfo.F_Id, msgss, User.F_UserCode);
9474 9491
 
9475
-                        //推送消息表
9476
-                        var users = userBLL.GetModelList(" F_DeptId='" + deptid + "' ");
9492
+                        var msgss = userinfo + " 交办了工单,主办单位:" + modeldept.F_DeptName;
9477 9493
 
9478
-                        foreach (var u in users)
9494
+                        if (modeldept.F_IsDept == 2)
9479 9495
                         {
9480
-                            msg.AddInternalMessagesInfo("工单消息", msgss + ",工单编号:" + modelT_Bus_WorkOrder.F_WorkOrderId, u.F_UserCode, User.F_UserCode, (int)EnumSmsType.workorder);
9481
-                            string count = "你有新工单:" + modelT_Bus_WorkOrder.F_WorkOrderId + ",请及时查收处理。";
9482
-                            string mag = modelT_Bus_WorkOrder.F_WorkOrderId;
9483
-                            bool n = SMSController.AddSmS(0, mag, count, u.F_Mobile, "153305", "");
9496
+                            await SplitOrderNew(modelT_Bus_WorkOrder, premodeldept, Convert.ToDateTime(resdatetime), modelT_Bus_AssignedInfo, "自动派单").ContinueWith(p =>
9497
+                            {
9498
+                                addoptlog(modelT_Bus_WorkOrder.F_WorkOrderId, modelT_Bus_WorkOrder.F_WorkState, modelT_Bus_AssignedInfo.F_Id, msgss, User.F_UserCode);
9499
+                            });
9484 9500
                         }
9485
-                        var user = new BLL.T_Sys_UserAccount().GetModelList("F_DeptId in (" + deptid + ") ");
9501
+                        else
9502
+                        {
9503
+                            await Task.Run(() =>
9504
+                            {
9505
+                                addoptlog(modelT_Bus_WorkOrder.F_WorkOrderId, modelT_Bus_WorkOrder.F_WorkState, modelT_Bus_AssignedInfo.F_Id, msgss, User.F_UserCode);
9506
+                            });
9507
+                        }
9508
+
9509
+
9510
+                        await Task.Run(()=> {
9511
+                            //推送消息表
9512
+                            var users = userBLL.GetModelList(" F_DeptId='" + deptid + "' ");
9513
+
9514
+                            foreach (var u in users)
9515
+                            {
9516
+                                msg.AddInternalMessagesInfo("工单消息", msgss + ",工单编号:" + modelT_Bus_WorkOrder.F_WorkOrderId, u.F_UserCode, User.F_UserCode, (int)EnumSmsType.workorder);
9517
+                                string count = "你有新工单:" + modelT_Bus_WorkOrder.F_WorkOrderId + ",请及时查收处理。";
9518
+                                string mag = modelT_Bus_WorkOrder.F_WorkOrderId;
9519
+                                bool n = SMSController.AddSmS(0, mag, count, u.F_Mobile, "153305", "");
9520
+                            }
9521
+                        });
9486 9522
                     }
9487 9523
                     #endregion
9488 9524
                 });
@@ -11308,6 +11344,385 @@ namespace CallCenterApi.Interface.Controllers.workorder
11308 11344
         }
11309 11345
 
11310 11346
         /// <summary>
11347
+        /// 
11348
+        /// </summary>
11349
+        /// <returns></returns>
11350
+        //[Authority]
11351
+        public async Task<ActionResult> AssignWorkOrderNewNew()
11352
+        {
11353
+            if (User.F_RoleCode == "ZXLD" || User.F_RoleCode == "ZXLDGLYGLY" || User.F_RoleCode == "GLY" || User.F_RoleCode == "DDZG" || User.F_RoleCode == "DBZY" || User.F_RoleCode == "MTDD")
11354
+            {
11355
+                string workorderid = RequestString.GetFormString("workorderid");
11356
+                int state = RequestString.GetInt("state", 0);
11357
+                int assignid = RequestString.GetInt("assignid", 0);
11358
+                string maindeptid = RequestString.GetFormString("maindeptid");
11359
+                string otherdeptids = RequestString.GetFormString("otherdeptids");
11360
+                int limittime = RequestString.GetInt("limittime", 0);
11361
+                string limittimes = RequestString.GetFormString("limittimes");
11362
+                string resdatetime = "";
11363
+                if (limittime > 0)
11364
+                {
11365
+                    string resdate = DateTime.Now.Date.ToString("yyyy-MM-dd");
11366
+                    DataTable dt = DbHelperSQL.Query("select top " + limittime + " F_OffDate from  T_Sys_WorkOFFDays  where F_OffState = 1   and F_OffDate>'" + resdate + "' order by F_OffDate").Tables[0];
11367
+                    resdatetime = dt.Rows[dt.Rows.Count - 1]["F_OffDate"].ToString();
11368
+                }
11369
+                resdatetime = Convert.ToDateTime(resdatetime).ToString("yyyy-MM-dd") + " 23:59:59 ";
11370
+                string assignedopinion = RequestString.GetFormString("assignedopinion");
11371
+
11372
+                var modelT_Bus_AssignedInfoLasts = assignBLL.GetList(0, $" F_WorkOrderId='{workorderid}' and F_IsDelete='0' and  F_State='1' ", " F_CreateTime desc").Tables[0];
11373
+                if (!string.IsNullOrEmpty(otherdeptids))
11374
+                {
11375
+                    var both = otherdeptids.Split(',').Intersect(maindeptid.Split(','));
11376
+                    if (both.Count() > 0)
11377
+                    {
11378
+                        return Error("主办单位不能出现在协办单位");
11379
+                    }
11380
+                }
11381
+
11382
+                var premodeldept = new Model.T_Sys_Department();
11383
+                var deptlist = new BLL.T_Sys_Department().GetModelList("F_DeptId in (" + maindeptid + ")");
11384
+                if (deptlist.Count == 1)
11385
+                {
11386
+                    var deptinfo = deptlist.FirstOrDefault();
11387
+                    if (deptinfo.F_IsDept == 2)
11388
+                    {
11389
+                        if (deptinfo.F_PartentId > 0)
11390
+                        {
11391
+                            premodeldept = department((int)deptinfo.F_PartentId);
11392
+                            if (premodeldept == null)
11393
+                                return Error("该单位没有上级单位,派单失败");
11394
+                        }
11395
+                        else
11396
+                        {
11397
+                            return Error("该单位没有上级单位,派单失败");
11398
+                        }
11399
+                    }
11400
+                }
11401
+                else
11402
+                {
11403
+                    if (deptlist.Where(x => x.F_IsDept == 2).Count() > 0)
11404
+                        return Error("派单多单位不能派给三级单位");
11405
+                }
11406
+
11407
+                string userinfo = User.depname + "(" + User.F_UserCode + ")";
11408
+                Model.T_Bus_WorkOrder modelT_Bus_WorkOrder = workorderBLL.GetModel(workorderid);
11409
+                Model.T_Bus_WorkOrder tempT_Bus_WorkOrder = workorderBLL.GetModel(workorderid);
11410
+                Model.T_Bus_AssignedInfo modelT_Bus_AssignedInfo = new Model.T_Bus_AssignedInfo();
11411
+                if (modelT_Bus_WorkOrder != null && deptlist != null && deptlist.Count > 0)
11412
+                {
11413
+                    if (modelT_Bus_WorkOrder.F_Level == 2)
11414
+                    {
11415
+                        try
11416
+                        {
11417
+                            Convert.ToDateTime(limittimes);
11418
+                        }
11419
+                        catch
11420
+                        {
11421
+                            return Error("请选择正确的时间");
11422
+                        }
11423
+                    }
11424
+
11425
+                    int aid = 0; var rre = "";
11426
+
11427
+                    if (deptlist.Count == 1)
11428
+                    {
11429
+                        var maindept = deptlist.FirstOrDefault();
11430
+                        using (TransactionScope trans = new TransactionScope(TransactionScopeOption.Required, new TimeSpan(0, 10, 0)))
11431
+                        {
11432
+                            if (assignid == 0)
11433
+                            {
11434
+                                #region 插入交办记录
11435
+                                modelT_Bus_AssignedInfo.F_WorkOrderId = modelT_Bus_WorkOrder.F_WorkOrderId;
11436
+                                if (modelT_Bus_WorkOrder.F_Level == 2)
11437
+                                {
11438
+                                    modelT_Bus_AssignedInfo.F_LimitTime = Convert.ToDateTime(limittimes);
11439
+                                }
11440
+                                else
11441
+                                {
11442
+                                    modelT_Bus_AssignedInfo.F_LimitTime = Convert.ToDateTime(resdatetime);
11443
+                                }
11444
+                                modelT_Bus_AssignedInfo.F_MainDeptId = maindept.F_DeptId;//主办单位id
11445
+                                modelT_Bus_AssignedInfo.F_OtherDeptIds = otherdeptids;//协办单位id
11446
+                                modelT_Bus_AssignedInfo.F_AssignedOpinion = assignedopinion;//交办意见
11447
+                                modelT_Bus_AssignedInfo.F_State = state;//0草稿  1正式
11448
+                                modelT_Bus_AssignedInfo.F_CreateUser = User.F_UserCode;
11449
+                                modelT_Bus_AssignedInfo.F_CreateTime = DateTime.Now;
11450
+                                modelT_Bus_AssignedInfo.F_IsDelete = 0;
11451
+                                modelT_Bus_AssignedInfo.F_IsOverdue = 0;
11452
+                                modelT_Bus_AssignedInfo.F_IsSure = 0;
11453
+                                modelT_Bus_AssignedInfo.F_IsReload = 0;
11454
+                                modelT_Bus_AssignedInfo.F_IsNext = 0;
11455
+                                modelT_Bus_AssignedInfo.F_TimeResp = assignBLL.GetRepTimly(DateTime.Now);//及时查收时间点
11456
+                                aid = assignBLL.Add(modelT_Bus_AssignedInfo);
11457
+
11458
+                                #endregion
11459
+                            }
11460
+                            else
11461
+                            {
11462
+                                #region 修改交办记录
11463
+                                modelT_Bus_AssignedInfo = assignBLL.GetModel(assignid);
11464
+                                if (modelT_Bus_AssignedInfo != null)
11465
+                                {
11466
+                                    if (modelT_Bus_WorkOrder.F_Level == 2)
11467
+                                    {
11468
+                                        modelT_Bus_AssignedInfo.F_LimitTime = Convert.ToDateTime(limittimes);
11469
+                                    }
11470
+                                    else
11471
+                                    {
11472
+                                        modelT_Bus_AssignedInfo.F_LimitTime = Convert.ToDateTime(resdatetime);
11473
+                                    }
11474
+
11475
+                                    modelT_Bus_AssignedInfo.F_MainDeptId = maindept.F_DeptId;//主办单位id
11476
+                                    modelT_Bus_AssignedInfo.F_OtherDeptIds = otherdeptids;//协办单位id
11477
+                                    modelT_Bus_AssignedInfo.F_AssignedOpinion = assignedopinion;//交办意见
11478
+                                    modelT_Bus_AssignedInfo.F_TimeResp = assignBLL.GetRepTimly(DateTime.Now);//及时查收时间点
11479
+                                    modelT_Bus_AssignedInfo.F_State = state;//0草稿  1正式
11480
+                                    modelT_Bus_AssignedInfo.F_CreateUser = User.F_UserCode;
11481
+                                    modelT_Bus_AssignedInfo.F_CreateTime = DateTime.Now;
11482
+                                    assignBLL.Update(modelT_Bus_AssignedInfo);
11483
+                                    aid = modelT_Bus_AssignedInfo.F_Id;
11484
+                                }
11485
+
11486
+                                #endregion
11487
+                            }
11488
+                            if (modelT_Bus_AssignedInfo != null && modelT_Bus_AssignedInfo.F_State == 1)
11489
+                            {
11490
+                                #region 保存工单信息
11491
+                                modelT_Bus_WorkOrder.F_WorkState = (int)EnumWorkState.receive;//待查收
11492
+                                if (modelT_Bus_WorkOrder.F_Level == 2)
11493
+                                {
11494
+                                    modelT_Bus_WorkOrder.F_LimitTime = Convert.ToDateTime(limittimes);
11495
+                                }
11496
+                                else
11497
+                                {
11498
+                                    modelT_Bus_WorkOrder.F_LimitTime = Convert.ToDateTime(resdatetime);
11499
+                                }
11500
+                                modelT_Bus_WorkOrder.F_MainDeptId = maindept.F_DeptId;
11501
+                                modelT_Bus_WorkOrder.F_OtherDeptIds = otherdeptids;
11502
+                                modelT_Bus_WorkOrder.F_AssignUser = User.F_UserCode;
11503
+                                modelT_Bus_WorkOrder.F_AssignTime = DateTime.Now;
11504
+                                workorderBLL.Update(modelT_Bus_WorkOrder);
11505
+
11506
+                                #endregion
11507
+                            }
11508
+                            trans.Complete();
11509
+                        }
11510
+                        if (modelT_Bus_AssignedInfo != null && modelT_Bus_AssignedInfo.F_State == 1)
11511
+                        {
11512
+                            var msgss = userinfo + " 交办了工单,主办单位:" + maindept.F_DeptName;
11513
+                            if (!string.IsNullOrEmpty(otherdeptids))
11514
+                            {
11515
+                                string sql = "select dbo.GetDeptNames('" + otherdeptids + "')";
11516
+                                msgss += ",协办单位:" + DbHelperSQL.GetSingle(sql);
11517
+                            }
11518
+
11519
+                            if (maindept.F_IsDept == 2)
11520
+                            {
11521
+                                await SplitOrderNew(modelT_Bus_WorkOrder, premodeldept, Convert.ToDateTime(resdatetime), modelT_Bus_AssignedInfo, assignedopinion).ContinueWith(p =>
11522
+                                {
11523
+                                    addoptlog(modelT_Bus_WorkOrder.F_WorkOrderId, modelT_Bus_WorkOrder.F_WorkState, modelT_Bus_AssignedInfo.F_Id, msgss, User.F_UserCode);
11524
+                                });
11525
+                            }
11526
+                            else
11527
+                            {
11528
+                                await Task.Run(() =>
11529
+                                {
11530
+                                    addoptlog(modelT_Bus_WorkOrder.F_WorkOrderId, modelT_Bus_WorkOrder.F_WorkState, modelT_Bus_AssignedInfo.F_Id, msgss, User.F_UserCode);
11531
+                                });
11532
+                            }
11533
+
11534
+                            await Task.Run(() =>
11535
+                            {
11536
+                                #region 删除草稿信息
11537
+                                var cglist = assignBLL.GetModelList(" F_IsDelete=0 and F_State=0 and F_WorkOrderId='" + modelT_Bus_WorkOrder.F_WorkOrderId + "'");
11538
+
11539
+                                foreach (var cg in cglist)
11540
+                                {
11541
+                                    cg.F_IsDelete = 1;
11542
+                                    cg.F_DeleteUser = User.F_UserCode;
11543
+                                    cg.F_DeleteTime = DateTime.Now;
11544
+
11545
+                                    assignBLL.Update(cg);
11546
+                                }
11547
+                                #endregion
11548
+                            });
11549
+
11550
+                            await Task.Run(() =>
11551
+                            {
11552
+                                #region 插入推送消息
11553
+                                var users = userBLL.GetModelList(" F_DeptId='" + maindept.F_DeptId + "' ");
11554
+
11555
+                                foreach (var u in users)
11556
+                                {
11557
+                                    msg.AddInternalMessagesInfo("工单消息", msgss + ",工单编号:" + modelT_Bus_WorkOrder.F_WorkOrderId, u.F_UserCode, User.F_UserCode, (int)EnumSmsType.workorder);
11558
+                                }
11559
+                                #endregion
11560
+                            });
11561
+                        }
11562
+                    }
11563
+                    else
11564
+                    {
11565
+                        string newids = ""; string errdeptid = ""; string deptname = "";
11566
+
11567
+                        object obj = new object();
11568
+                        List<Task> taskList = new List<Task>();
11569
+                        foreach (var deptinfo in deptlist)
11570
+                        {
11571
+                            deptname += deptinfo.F_DeptName + ",";
11572
+
11573
+                            taskList.Add(Task.Run(() =>
11574
+                            {
11575
+                                #region 新增工单
11576
+                                Model.T_Bus_WorkOrder modelT_Bus_WorkOrder1 = new Model.T_Bus_WorkOrder();
11577
+                                modelT_Bus_WorkOrder1 = tempT_Bus_WorkOrder;
11578
+                                string creattime = ((DateTime)modelT_Bus_WorkOrder1.F_CreateTime).ToString("yyyy-MM-dd") + " 00:00:00";
11579
+                                string endtime = ((DateTime)modelT_Bus_WorkOrder1.F_CreateTime).ToString("yyyy-MM-dd") + " 23:59:59";
11580
+                                modelT_Bus_WorkOrder1.F_WorkOrderId = workorderBLL.GetNewWorkOrderID((int)modelT_Bus_WorkOrder.F_InfoSource, (int)modelT_Bus_WorkOrder.F_SourceArea, creattime, endtime);
11581
+                                modelT_Bus_WorkOrder1.F_MainWorkorder1 = modelT_Bus_WorkOrder.F_WorkOrderId;
11582
+                                modelT_Bus_WorkOrder1.F_Id = workorderBLL.Add(modelT_Bus_WorkOrder1);
11583
+                                if (modelT_Bus_WorkOrder1.F_Id > 0)
11584
+                                {
11585
+                                    #region 插入交办记录
11586
+                                    modelT_Bus_AssignedInfo.F_WorkOrderId = modelT_Bus_WorkOrder1.F_WorkOrderId;
11587
+                                    if (modelT_Bus_WorkOrder.F_Level == 2)
11588
+                                    {
11589
+                                        modelT_Bus_AssignedInfo.F_LimitTime = Convert.ToDateTime(limittimes);
11590
+                                    }
11591
+                                    else
11592
+                                    {
11593
+                                        modelT_Bus_AssignedInfo.F_LimitTime = Convert.ToDateTime(resdatetime);
11594
+                                    }
11595
+
11596
+                                    modelT_Bus_AssignedInfo.F_MainDeptId = deptinfo.F_DeptId;//主办单位id
11597
+                                    modelT_Bus_AssignedInfo.F_OtherDeptIds = otherdeptids;//协办单位id
11598
+                                    modelT_Bus_AssignedInfo.F_AssignedOpinion = assignedopinion;//交办意见
11599
+                                    modelT_Bus_AssignedInfo.F_TimeResp = assignBLL.GetRepTimly(DateTime.Now);//及时查收时间点
11600
+                                    modelT_Bus_AssignedInfo.F_State = state;//0草稿  1正式
11601
+                                    modelT_Bus_AssignedInfo.F_CreateUser = User.F_UserCode;
11602
+                                    modelT_Bus_AssignedInfo.F_CreateTime = DateTime.Now;
11603
+                                    modelT_Bus_AssignedInfo.F_IsDelete = 0;
11604
+                                    modelT_Bus_AssignedInfo.F_IsOverdue = 0;
11605
+                                    modelT_Bus_AssignedInfo.F_IsSure = 0;
11606
+                                    modelT_Bus_AssignedInfo.F_IsReload = 0;
11607
+                                    modelT_Bus_AssignedInfo.F_IsNext = 0;
11608
+                                    aid = assignBLL.Add(modelT_Bus_AssignedInfo);
11609
+
11610
+                                    #endregion
11611
+                                    if (modelT_Bus_AssignedInfo != null && modelT_Bus_AssignedInfo.F_State == 1)
11612
+                                    {
11613
+                                        #region 保存工单信息
11614
+                                        modelT_Bus_WorkOrder1.F_WorkState = (int)EnumWorkState.receive;//待查收
11615
+                                        if (modelT_Bus_WorkOrder1.F_Level == 2)
11616
+                                        {
11617
+                                            modelT_Bus_WorkOrder1.F_LimitTime = Convert.ToDateTime(limittimes);
11618
+                                        }
11619
+                                        else
11620
+                                        {
11621
+                                            modelT_Bus_WorkOrder1.F_LimitTime = Convert.ToDateTime(resdatetime);
11622
+                                        }
11623
+                                        modelT_Bus_WorkOrder1.F_MainDeptId = deptinfo.F_DeptId;
11624
+                                        modelT_Bus_WorkOrder1.F_OtherDeptIds = otherdeptids;
11625
+                                        modelT_Bus_WorkOrder1.F_AssignUser = User.F_UserCode;
11626
+                                        modelT_Bus_WorkOrder1.F_AssignTime = DateTime.Now;
11627
+                                        workorderBLL.Update(modelT_Bus_WorkOrder1);
11628
+                                        #endregion
11629
+
11630
+                                        #region 插入操作记录
11631
+                                        var msgss = userinfo + " 交办了工单,主办单位:" + deptinfo.F_DeptName;
11632
+                                        if (!string.IsNullOrEmpty(otherdeptids))
11633
+                                        {
11634
+                                            string sql = "select dbo.GetDeptNames('" + otherdeptids + "')";
11635
+                                            msgss += ",协办单位:" + DbHelperSQL.GetSingle(sql);
11636
+                                        }
11637
+
11638
+                                        addoptlog(modelT_Bus_WorkOrder1.F_WorkOrderId, modelT_Bus_WorkOrder1.F_WorkState, modelT_Bus_AssignedInfo.F_Id, msgss, User.F_UserCode);
11639
+
11640
+                                        //推送消息表
11641
+                                        var users = userBLL.GetModelList(" F_DeptId='" + deptinfo.F_DeptId + "' ");
11642
+
11643
+                                        foreach (var u in users)
11644
+                                        {
11645
+                                            msg.AddInternalMessagesInfo("工单消息", msgss + ",工单编号:" + modelT_Bus_WorkOrder1.F_WorkOrderId, u.F_UserCode, User.F_UserCode, (int)EnumSmsType.workorder);
11646
+                                        }
11647
+                                        #endregion
11648
+                                    }
11649
+
11650
+                                    return modelT_Bus_WorkOrder1.F_WorkOrderId;
11651
+                                }
11652
+                                else
11653
+                                {
11654
+                                    return "";
11655
+                                }
11656
+                                #endregion
11657
+                            }).ContinueWith(p =>
11658
+                            {
11659
+                                if (string.IsNullOrEmpty(p.Result))
11660
+                                {
11661
+                                    lock (obj)
11662
+                                    {
11663
+                                        errdeptid += deptinfo.F_DeptName + ",";
11664
+                                    }
11665
+                                }
11666
+                                else
11667
+                                {
11668
+                                    lock (obj)
11669
+                                    {
11670
+                                        newids += p.Result + ",";
11671
+                                    }
11672
+                                }
11673
+                            }));
11674
+                        }
11675
+                        await Task.WhenAll(taskList.ToArray()).ContinueWith(p =>
11676
+                        {
11677
+                            newids = newids.Trim(','); deptname = deptname.Trim(',');
11678
+                            var msgs = "";
11679
+                            if (errdeptid == "")
11680
+                            {
11681
+                                modelT_Bus_WorkOrder.F_SubWorkorder1 = newids;
11682
+                                modelT_Bus_WorkOrder.F_WorkState = (int)EnumWorkState.dealing;
11683
+                                workorderBLL.Update(modelT_Bus_WorkOrder);
11684
+                                msgs = userinfo + " 交办多单位,生成新工单,新工单编号为:" + newids;
11685
+                            }
11686
+                            else
11687
+                            {
11688
+                                errdeptid = errdeptid.Trim(',');
11689
+                                msgs = userinfo + " 交办的单位有" + deptname + ",部分操作成功,新工单编号为:" + newids + ",交办失败的部门为:" + errdeptid;
11690
+                            }
11691
+
11692
+                            addoptlog(modelT_Bus_WorkOrder.F_WorkOrderId, modelT_Bus_WorkOrder.F_WorkState, modelT_Bus_AssignedInfo.F_Id, msgs, User.F_UserCode);
11693
+
11694
+                        });
11695
+                    }
11696
+                    await Task.Run(() =>
11697
+                    {
11698
+                        var user = new BLL.T_Sys_UserAccount().GetModelList("F_DeptId in (" + maindeptid + ") ");
11699
+                        if (user != null && user.Count > 0)
11700
+                        {
11701
+                            foreach (var it in user)
11702
+                            {
11703
+                                string count = "你有新工单:" + workorderid + ",请及时查收处理。";
11704
+                                string msg = workorderid;
11705
+                                bool n = SMSController.AddSmS(0, msg, count, it.F_Mobile, "153305", "");
11706
+                            }
11707
+                        }
11708
+                    });
11709
+                    //审核员给二级单位转派
11710
+
11711
+                    return Success("操作成功" + rre, modelT_Bus_AssignedInfo.F_Id);
11712
+                }
11713
+                else
11714
+                {
11715
+                    return Error("操作失败");
11716
+                }
11717
+
11718
+            }
11719
+            else
11720
+            {
11721
+                return Error("权限不足");
11722
+            }
11723
+        }
11724
+
11725
+        /// <summary>
11311 11726
         /// 交办工单
11312 11727
         /// </summary>
11313 11728
         /// <returns></returns>
@@ -11485,97 +11900,176 @@ namespace CallCenterApi.Interface.Controllers.workorder
11485 11900
         /// </summary>
11486 11901
         /// <returns></returns>
11487 11902
         //[Authority]
11488
-        public string  SplitOrder(Model.T_Bus_WorkOrder modelT_Bus_WorkOrder
11489
-            ,Model.T_Sys_Department deptinfo, DateTime limittime, Model.T_Bus_AssignedInfo modelT_Bus_AssignedInfo, string assignedopinion)
11903
+        public string SplitOrder(Model.T_Bus_WorkOrder modelT_Bus_WorkOrder
11904
+            , Model.T_Sys_Department deptinfo, DateTime limittime, Model.T_Bus_AssignedInfo modelT_Bus_AssignedInfo, string assignedopinion)
11490 11905
         {
11491
-               
11492
-                Model.T_Bus_AssignedInfo_Next modelT_Bus_AssignedInfo_Next = new Model.T_Bus_AssignedInfo_Next();
11493
-                if (modelT_Bus_WorkOrder != null && modelT_Bus_AssignedInfo != null && deptinfo != null)
11906
+
11907
+            Model.T_Bus_AssignedInfo_Next modelT_Bus_AssignedInfo_Next = new Model.T_Bus_AssignedInfo_Next();
11908
+            if (modelT_Bus_WorkOrder != null && modelT_Bus_AssignedInfo != null && deptinfo != null)
11909
+            {
11910
+
11911
+                if (modelT_Bus_AssignedInfo.F_IsNext == null || modelT_Bus_AssignedInfo.F_IsNext.Value == 0 || modelT_Bus_AssignedInfo.F_IsNext.Value == 4)
11494 11912
                 {
11495
-                   
11496
-                        if (modelT_Bus_AssignedInfo.F_IsNext == null || modelT_Bus_AssignedInfo.F_IsNext.Value == 0 || modelT_Bus_AssignedInfo.F_IsNext.Value == 4)
11913
+                    // using (TransactionScope trans = new TransactionScope(TransactionScopeOption.Required, new TimeSpan(0, 10, 0)))
11914
+                    using (TransactionScope trans = new TransactionScope(TransactionScopeOption.Required, new TimeSpan(0, 10, 0)))
11915
+                    {
11916
+
11917
+                        #region 插入派单记录
11918
+                        modelT_Bus_AssignedInfo_Next.F_WorkOrderId = modelT_Bus_WorkOrder.F_WorkOrderId;
11919
+                        modelT_Bus_AssignedInfo_Next.F_LimitTime = limittime;//办理时限
11920
+                                                                             //  modelT_Bus_AssignedInfo_Next.F_LimitTime = modelT_Bus_AssignedInfo.F_LimitTime ;
11921
+                        modelT_Bus_AssignedInfo_Next.F_MainDeptId = deptinfo.F_DeptId;//主办单位id
11922
+
11923
+                        modelT_Bus_AssignedInfo_Next.F_OtherDeptIds = "";
11924
+                        modelT_Bus_AssignedInfo_Next.F_AssignedOpinion = assignedopinion;//交办意见
11925
+                        modelT_Bus_AssignedInfo_Next.F_State = 1;//0草稿  1正式
11926
+                        modelT_Bus_AssignedInfo_Next.F_CreateUser = User.F_UserCode;
11927
+                        modelT_Bus_AssignedInfo_Next.F_CreateTime = DateTime.Now;
11928
+                        modelT_Bus_AssignedInfo_Next.F_IsDelete = 0;
11929
+                        modelT_Bus_AssignedInfo_Next.F_IsOverdue = 0;
11930
+                        modelT_Bus_AssignedInfo_Next.F_IsSure = 0;
11931
+                        modelT_Bus_AssignedInfo_Next.F_IsReload = 0;
11932
+                        modelT_Bus_AssignedInfo_Next.F_Id = new BLL.T_Bus_AssignedInfo_Next().Add(modelT_Bus_AssignedInfo_Next);
11933
+                        #endregion
11934
+
11935
+
11936
+                        if (modelT_Bus_AssignedInfo_Next != null && modelT_Bus_AssignedInfo_Next.F_State == 1)
11497 11937
                         {
11498
-                            // using (TransactionScope trans = new TransactionScope(TransactionScopeOption.Required, new TimeSpan(0, 10, 0)))
11499
-                            using (TransactionScope trans = new TransactionScope(TransactionScopeOption.Required, new TimeSpan(0, 10, 0)))
11500
-                            {
11501
-                              
11502
-                                    #region 插入派单记录
11503
-                                    modelT_Bus_AssignedInfo_Next.F_WorkOrderId = modelT_Bus_WorkOrder.F_WorkOrderId;
11504
-                                    modelT_Bus_AssignedInfo_Next.F_LimitTime = limittime;//办理时限
11505
-                                                                                         //  modelT_Bus_AssignedInfo_Next.F_LimitTime = modelT_Bus_AssignedInfo.F_LimitTime ;
11506
-                                    modelT_Bus_AssignedInfo_Next.F_MainDeptId = deptinfo.F_DeptId ;//主办单位id
11507
-                                   
11508
-                                        modelT_Bus_AssignedInfo_Next.F_OtherDeptIds = "";
11509
-                                    modelT_Bus_AssignedInfo_Next.F_AssignedOpinion = assignedopinion;//交办意见
11510
-                                    modelT_Bus_AssignedInfo_Next.F_State = 1;//0草稿  1正式
11511
-                                    modelT_Bus_AssignedInfo_Next.F_CreateUser = User.F_UserCode;
11512
-                                    modelT_Bus_AssignedInfo_Next.F_CreateTime = DateTime.Now;
11513
-                                    modelT_Bus_AssignedInfo_Next.F_IsDelete = 0;
11514
-                                    modelT_Bus_AssignedInfo_Next.F_IsOverdue = 0;
11515
-                                    modelT_Bus_AssignedInfo_Next.F_IsSure = 0;
11516
-                                    modelT_Bus_AssignedInfo_Next.F_IsReload = 0;
11517
-                                    modelT_Bus_AssignedInfo_Next.F_Id = new BLL.T_Bus_AssignedInfo_Next().Add(modelT_Bus_AssignedInfo_Next);
11518
-                                    #endregion
11519
-                                
11520
-                             
11521
-                                if (modelT_Bus_AssignedInfo_Next != null && modelT_Bus_AssignedInfo_Next.F_State == 1)
11522
-                                {
11523
-                                    #region 保存交办信息
11524
-                                    modelT_Bus_AssignedInfo.F_IsNext = 1;
11525
-                                    modelT_Bus_AssignedInfo.F_NextUser = User.F_UserCode;
11526
-                                    modelT_Bus_AssignedInfo.F_NextTime = DateTime.Now;
11527
-                                    new BLL.T_Bus_AssignedInfo().Update(modelT_Bus_AssignedInfo);
11528
-                                    #endregion
11529
-                                    #region 保存工单信息
11530
-                                  
11531
-                                  
11532
-                                    #endregion
11938
+                            #region 保存交办信息
11939
+                            modelT_Bus_AssignedInfo.F_IsNext = 1;
11940
+                            modelT_Bus_AssignedInfo.F_NextUser = User.F_UserCode;
11941
+                            modelT_Bus_AssignedInfo.F_NextTime = DateTime.Now;
11942
+                            new BLL.T_Bus_AssignedInfo().Update(modelT_Bus_AssignedInfo);
11943
+                            #endregion
11533 11944
 
11534
-                                    #region 插入操作记录
11535
-                                    Model.T_Bus_Operation oper = new Model.T_Bus_Operation();
11536
-                                    oper.F_WorkOrderId = modelT_Bus_WorkOrder.F_WorkOrderId;
11537
-                                    oper.F_AssignedId = modelT_Bus_AssignedInfo.F_Id;
11538
-                                    oper.F_State =4;
11945
+                            #region 插入操作记录
11946
+                            Model.T_Bus_Operation oper = new Model.T_Bus_Operation();
11947
+                            oper.F_WorkOrderId = modelT_Bus_WorkOrder.F_WorkOrderId;
11948
+                            oper.F_AssignedId = modelT_Bus_AssignedInfo.F_Id;
11949
+                            oper.F_State = 4;
11539 11950
 
11540
-                                    string userinfo = User.depname + "(" + User.F_UserCode + ")";
11541
-                                    oper.F_Message = userinfo + " 派单给单位:" + deptinfo.F_DeptName;
11542
-                                    oper.F_CreateUser = User.F_UserCode;
11543
-                                    oper.F_CreateTime = DateTime.Now;
11544
-                                    oper.F_IsDelete = 0;
11545
-                                    operBLL.Add(oper);
11546
-                                    //推送消息表
11547
-                                    msg.AddInternalMessagesInfo("工单消息", oper.F_Message + ",工单编号:" + oper.F_WorkOrderId, modelT_Bus_WorkOrder.F_CreateUser, User.F_UserCode, (int)EnumSmsType.workorder);
11548
-                                    #endregion
11549
-                                }
11550
-                                trans.Complete();
11551
-                            }
11552
-                            var user = new BLL.T_Sys_UserAccount().GetModelList(" F_DeptId=" + deptinfo.F_DeptId  + "  ");
11951
+                            string userinfo = User.depname + "(" + User.F_UserCode + ")";
11952
+                            oper.F_Message = userinfo + " 派单给单位:" + deptinfo.F_DeptName;
11953
+                            oper.F_CreateUser = User.F_UserCode;
11954
+                            oper.F_CreateTime = DateTime.Now;
11955
+                            oper.F_IsDelete = 0;
11956
+                            operBLL.Add(oper);
11957
+                            //推送消息表
11958
+                            msg.AddInternalMessagesInfo("工单消息", oper.F_Message + ",工单编号:" + oper.F_WorkOrderId, modelT_Bus_WorkOrder.F_CreateUser, User.F_UserCode, (int)EnumSmsType.workorder);
11959
+                            #endregion
11960
+                        }
11961
+                        trans.Complete();
11962
+                    }
11963
+                    var user = new BLL.T_Sys_UserAccount().GetModelList(" F_DeptId=" + deptinfo.F_DeptId + "  ");
11964
+                    if (user != null && user.Count > 0)
11965
+                    {
11966
+                        foreach (var it in user)
11967
+                        {
11968
+                            string count = "你有新工单:" + modelT_Bus_WorkOrder.F_WorkOrderId + ",请及时查收处理。";
11969
+                            string msg = modelT_Bus_WorkOrder.F_WorkOrderId;
11970
+                            bool n = SMSController.AddSmS(0, msg, count, it.F_Mobile, "153305", "");
11971
+                        }
11972
+
11973
+                    }
11974
+                    //二级单位给三级单位转派都有短信提醒
11975
+
11976
+                    return ("操作成功");
11977
+                }
11978
+                else
11979
+                {
11980
+                    return ("操作失败");
11981
+                }
11982
+
11983
+            }
11984
+            else
11985
+            {
11986
+                return ("操作失败");
11987
+            }
11988
+        }
11989
+
11990
+        public async Task SplitOrderNew(Model.T_Bus_WorkOrder modelT_Bus_WorkOrder
11991
+            , Model.T_Sys_Department deptinfo, DateTime limittime, Model.T_Bus_AssignedInfo modelT_Bus_AssignedInfo, string assignedopinion)
11992
+        {
11993
+
11994
+            Model.T_Bus_AssignedInfo_Next modelT_Bus_AssignedInfo_Next = new Model.T_Bus_AssignedInfo_Next();
11995
+            if (modelT_Bus_WorkOrder != null && modelT_Bus_AssignedInfo != null && deptinfo != null)
11996
+            {
11997
+
11998
+                if (modelT_Bus_AssignedInfo.F_IsNext == null || modelT_Bus_AssignedInfo.F_IsNext.Value == 0 || modelT_Bus_AssignedInfo.F_IsNext.Value == 4)
11999
+                {
12000
+
12001
+                    #region 插入派单记录
12002
+                    modelT_Bus_AssignedInfo_Next.F_WorkOrderId = modelT_Bus_WorkOrder.F_WorkOrderId;
12003
+                    modelT_Bus_AssignedInfo_Next.F_LimitTime = limittime;//办理时限
12004
+                    modelT_Bus_AssignedInfo_Next.F_MainDeptId = deptinfo.F_DeptId;//主办单位id
12005
+
12006
+                    modelT_Bus_AssignedInfo_Next.F_OtherDeptIds = "";
12007
+                    modelT_Bus_AssignedInfo_Next.F_AssignedOpinion = assignedopinion;//交办意见
12008
+                    modelT_Bus_AssignedInfo_Next.F_State = 1;//0草稿  1正式
12009
+                    modelT_Bus_AssignedInfo_Next.F_CreateUser = User.F_UserCode;
12010
+                    modelT_Bus_AssignedInfo_Next.F_CreateTime = DateTime.Now;
12011
+                    modelT_Bus_AssignedInfo_Next.F_IsDelete = 0;
12012
+                    modelT_Bus_AssignedInfo_Next.F_IsOverdue = 0;
12013
+                    modelT_Bus_AssignedInfo_Next.F_IsSure = 0;
12014
+                    modelT_Bus_AssignedInfo_Next.F_IsReload = 0;
12015
+                    modelT_Bus_AssignedInfo.F_IsNext = 1;
12016
+                    modelT_Bus_AssignedInfo.F_NextUser = User.F_UserCode;
12017
+                    modelT_Bus_AssignedInfo.F_NextTime = DateTime.Now;
12018
+                    modelT_Bus_AssignedInfo_Next.F_Id = new BLL.T_Bus_AssignedInfo_Next().Add(modelT_Bus_AssignedInfo_Next);
12019
+                    #endregion
12020
+
12021
+                    string userinfo = User.depname + "(" + User.F_UserCode + ")";
12022
+                    string message = userinfo + " 派单给单位:" + deptinfo.F_DeptName;
12023
+                    if (modelT_Bus_AssignedInfo_Next.F_Id > 0)
12024
+                    {
12025
+                        await Task.Run(() =>
12026
+                        {
12027
+                            #region 保存工单信息
12028
+                            modelT_Bus_WorkOrder.F_MainDeptID3 = deptinfo.F_DeptId.ToString();
12029
+                            modelT_Bus_WorkOrder.F_WorkState = 4;
12030
+                            new BLL.T_Bus_AssignedInfo().Update(modelT_Bus_AssignedInfo);
12031
+                            #endregion
12032
+                        });
12033
+                        await Task.Run(() =>
12034
+                        {
12035
+                            #region 插入操作记录
12036
+                            Model.T_Bus_Operation oper = new Model.T_Bus_Operation();
12037
+                            oper.F_WorkOrderId = modelT_Bus_WorkOrder.F_WorkOrderId;
12038
+                            oper.F_AssignedId = modelT_Bus_AssignedInfo.F_Id;
12039
+                            oper.F_State = 4;
12040
+                            oper.F_Message = message;
12041
+                            oper.F_CreateUser = User.F_UserCode;
12042
+                            oper.F_CreateTime = DateTime.Now;
12043
+                            oper.F_IsDelete = 0;
12044
+                            operBLL.Add(oper);
12045
+                            #endregion
12046
+                        });
12047
+                        await Task.Run(() =>
12048
+                        {
12049
+                            #region 插入推送消息
12050
+                            msg.AddInternalMessagesInfo("工单消息", message + ",工单编号:" + modelT_Bus_WorkOrder.F_WorkOrderId, modelT_Bus_WorkOrder.F_CreateUser, User.F_UserCode, (int)EnumSmsType.workorder);
12051
+                            #endregion
12052
+                        });
12053
+                        await Task.Run(() =>
12054
+                        {
12055
+                            #region 短信通知
12056
+                            var user = new BLL.T_Sys_UserAccount().GetModelList(" F_DeptId=" + deptinfo.F_DeptId + "  ");
11553 12057
                             if (user != null && user.Count > 0)
11554 12058
                             {
11555 12059
                                 foreach (var it in user)
11556 12060
                                 {
11557
-                                    string count = "你有新工单:" + modelT_Bus_WorkOrder .F_WorkOrderId  + ",请及时查收处理。";
12061
+                                    string count = "你有新工单:" + modelT_Bus_WorkOrder.F_WorkOrderId + ",请及时查收处理。";
11558 12062
                                     string msg = modelT_Bus_WorkOrder.F_WorkOrderId;
11559
-                            bool n = SMSController.AddSmS(0, msg, count, it.F_Mobile, "153305", "");
12063
+                                    bool n = SMSController.AddSmS(0, msg, count, it.F_Mobile, "153305", "");
11560 12064
                                 }
11561
-
11562 12065
                             }
11563
-                            //二级单位给三级单位转派都有短信提醒
11564
-
11565
-                            return ("操作成功");
11566
-                        }
11567
-                        else
11568
-                        {
11569
-                          return ("操作失败");
11570
-                       }
11571
-                   
12066
+                            #endregion
12067
+                        });
12068
+                    }
11572 12069
                 }
11573
-                else
11574
-                {
11575
-                return ("操作失败");
11576 12070
             }
11577
-          
11578 12071
         }
12072
+
11579 12073
         /// <summary>
11580 12074
         /// 派工单
11581 12075
         /// </summary>