Преглед на файлове

新增编辑工单异步方法

zhoufan преди 4 години
родител
ревизия
727054fa93
променени са 1 файла, в които са добавени 159 реда и са изтрити 0 реда
  1. 159 0
      CallCenterApi/CallCenterApi.Interface/CallCenterApi.Interface/Controllers/workorder/WorkOrderController.cs

+ 159 - 0
CallCenterApi/CallCenterApi.Interface/CallCenterApi.Interface/Controllers/workorder/WorkOrderController.cs

@@ -10217,6 +10217,165 @@ namespace CallCenterApi.Interface.Controllers.workorder
10217 10217
         /// </summary>
10218 10218
         /// <returns></returns>
10219 10219
         //[Authority]
10220
+        public async Task<ActionResult> EditWorkOrderNew()
10221
+        {
10222
+            if (User.F_RoleCode == "ZXHWY" || User.F_RoleCode == "ZXBZ" || User.F_RoleCode == "ZXLD" || User.F_RoleCode == "ZXLDGLYGLY" || User.F_RoleCode == "GLY" || User.F_RoleCode == "DDZG" || User.F_RoleCode == "MTDD")
10223
+            {
10224
+                string workorderid = RequestString.GetFormString("workorderid");
10225
+                Model.T_Bus_WorkOrder modelT_Bus_WorkOrder = workorderBLL.GetModel(workorderid);
10226
+
10227
+                int source = RequestString.GetInt("source", 0);
10228
+                string cusname = RequestString.GetFormString("cusname");
10229
+                string cussex = RequestString.GetFormString("cussex");
10230
+                string cusphone = RequestString.GetFormString("cusphone");
10231
+                string cusaddress = RequestString.GetFormString("cusaddress");
10232
+                string email = RequestString.GetFormString("email");
10233
+                string zipcode = RequestString.GetFormString("zipcode");
10234
+                string conname = RequestString.GetFormString("conname");
10235
+                string conphone = RequestString.GetFormString("conphone");
10236
+                int state = RequestString.GetInt("state", 0);
10237
+                string title = RequestString.GetFormString("title");
10238
+                string content = RequestString.GetFormString("content");
10239
+                string files = RequestString.GetFormString("files");
10240
+                int sourcearea = RequestString.GetInt("sourcearea", 0);
10241
+                string sourceaddress = RequestString.GetFormString("sourceaddress");
10242
+                int isresult = RequestString.GetInt("isresult", 0);
10243
+                string result = RequestString.GetFormString("result");
10244
+                string keys = RequestString.GetFormString("keys");
10245
+                string splituser = RequestString.GetFormString("splituser");
10246
+                int type = RequestString.GetInt("type", 0);
10247
+                int bigtype = RequestString.GetInt("bigtype", 0);
10248
+                int smalltype = RequestString.GetInt("smalltype", 0);
10249
+                int isprotect = RequestString.GetInt("isprotect", 0);
10250
+                int level = RequestString.GetInt("level", 0);
10251
+                int issubmit = RequestString.GetInt("issubmit", 0);
10252
+                int isopen = RequestString.GetInt("isopen", 0);
10253
+                int business = RequestString.GetInt("business", 0);
10254
+                string workcontent = RequestString.GetFormString("workcontent");
10255
+
10256
+                #region 保存工单信息
10257
+
10258
+                modelT_Bus_WorkOrder.F_InfoSource = source;//信息来源
10259
+
10260
+                modelT_Bus_WorkOrder.F_InfoType = type;//信息类别
10261
+                modelT_Bus_WorkOrder.F_InfoConBigType = bigtype;//内容大类
10262
+                modelT_Bus_WorkOrder.F_InfoConSmallType = smalltype;//内容小类
10263
+                modelT_Bus_WorkOrder.F_SourceArea = sourcearea;//反映地域
10264
+                modelT_Bus_WorkOrder.F_SourceAddress = sourceaddress;//事发地址
10265
+
10266
+                modelT_Bus_WorkOrder.F_CusName = cusname;//投诉人姓名
10267
+                modelT_Bus_WorkOrder.F_CusSex = cussex;//性别
10268
+                modelT_Bus_WorkOrder.F_CusPhone = cusphone;//来电号码
10269
+                modelT_Bus_WorkOrder.F_CusAddress = cusaddress;//地址
10270
+                modelT_Bus_WorkOrder.F_ZipCode = zipcode;//邮编
10271
+                modelT_Bus_WorkOrder.F_ConName = conname;//联系人姓名
10272
+                modelT_Bus_WorkOrder.F_ConPhone = conphone;//联系人电话
10273
+                modelT_Bus_WorkOrder.F_Email = email;//E-mail
10274
+
10275
+                modelT_Bus_WorkOrder.F_ComTitle = title;//标题
10276
+                modelT_Bus_WorkOrder.F_ComContent = content;//情况摘要(投诉内容)
10277
+                modelT_Bus_WorkOrder.F_File = files;//附件
10278
+                modelT_Bus_WorkOrder.F_IsProtect = isprotect;//保密方式0否1是
10279
+                modelT_Bus_WorkOrder.F_Content = workcontent;
10280
+                modelT_Bus_WorkOrder.F_Key = keys;
10281
+                modelT_Bus_WorkOrder.F_Level = level;
10282
+                modelT_Bus_WorkOrder.F_ToBereply = 0;
10283
+                //是否直办(即时答复)0:,否1: 是         
10284
+                modelT_Bus_WorkOrder.F_IsResult = isresult;
10285
+                modelT_Bus_WorkOrder.F_Result = result;//处理结果
10286
+                if (isopen > 0)
10287
+                    modelT_Bus_WorkOrder.F_IsOpen = isopen;
10288
+                modelT_Bus_WorkOrder.F_Business = business;
10289
+                //如果选择即刻答复:是,即为直办,工单结束
10290
+                if (isresult == 1)
10291
+                {
10292
+                    modelT_Bus_WorkOrder.F_WorkState = (int)EnumWorkState.finish;// 9;//已结案
10293
+                    modelT_Bus_WorkOrder.F_DealDeptId = User.F_DeptId;
10294
+                    modelT_Bus_WorkOrder.F_DealUser = User.F_UserCode;
10295
+                    modelT_Bus_WorkOrder.F_DealTime = DateTime.Now;
10296
+                    modelT_Bus_WorkOrder.F_IsClosed = 1;
10297
+                    modelT_Bus_WorkOrder.F_CloseUser = User.F_UserCode;
10298
+                    modelT_Bus_WorkOrder.F_CloseTime = DateTime.Now;
10299
+                }
10300
+                else if (issubmit == 1)
10301
+                {
10302
+                    modelT_Bus_WorkOrder.F_SubmitTime = DateTime.Now;
10303
+                    modelT_Bus_WorkOrder.F_WorkState = (int)EnumWorkState.submit;// 1;//提交领导
10304
+                }
10305
+
10306
+                bool r = workorderBLL.Update(modelT_Bus_WorkOrder);
10307
+
10308
+                #endregion
10309
+                if (r)
10310
+                {
10311
+                    string userinfo = User.depname + "(" + User.F_UserCode + ")";
10312
+                    string message = string.Empty;
10313
+                    if (modelT_Bus_WorkOrder.F_WorkState == (int)EnumWorkState.neworder || modelT_Bus_WorkOrder.F_WorkState == (int)EnumWorkState.audit)//0)
10314
+                    {
10315
+                        message = userinfo + " 修改了工单";
10316
+                    }
10317
+                    if (modelT_Bus_WorkOrder.F_WorkState == (int)EnumWorkState.submit)//1)
10318
+                    {
10319
+                        message = userinfo + " 修改并提交了工单";
10320
+                    }
10321
+                    if (modelT_Bus_WorkOrder.F_WorkState == (int)EnumWorkState.resubmit)//1)
10322
+                    {
10323
+                        message = userinfo + " 修改了重办工单";
10324
+                    }
10325
+                    if (modelT_Bus_WorkOrder.F_WorkState == (int)EnumWorkState.finish)//9)
10326
+                    {
10327
+                        message = userinfo + " 修改并结案了工单";
10328
+                    }
10329
+
10330
+                    await Task.Run(()=> {
10331
+                        #region 插入操作记录
10332
+                        Model.T_Bus_Operation oper = new Model.T_Bus_Operation();
10333
+                        oper.F_WorkOrderId = modelT_Bus_WorkOrder.F_WorkOrderId;
10334
+                        oper.F_State = modelT_Bus_WorkOrder.F_WorkState;
10335
+                        oper.F_CallRecordId = modelT_Bus_WorkOrder.F_CallRecordId;
10336
+                        oper.F_File = modelT_Bus_WorkOrder.F_File;
10337
+                        oper.F_Message = message;
10338
+
10339
+                        oper.F_CreateUser = User.F_UserCode;
10340
+                        oper.F_CreateTime = DateTime.Now;
10341
+                        oper.F_IsDelete = 0;
10342
+
10343
+                        operBLL.Add(oper);
10344
+                        #endregion
10345
+                    });
10346
+                    await Task.Run(() => {
10347
+                        #region 插入推送消息
10348
+                        if (modelT_Bus_WorkOrder.F_WorkState == (int)EnumWorkState.submit)//1)
10349
+                        {
10350
+
10351
+                            var role = new BLL.T_Sys_RoleInfo().GetModelList(" (F_RoleCode='ZXLD' or F_RoleCode='ZXLDGLYGLY'or F_RoleCode='MTDD')  ").Select(p => p.F_RoleId);
10352
+                            var users = userBLL.GetModelList(" F_RoleId in (" + string.Join(",", role) + ")  ");
10353
+
10354
+                            foreach (var u in users)
10355
+                            {
10356
+                                msg.AddInternalMessagesInfo("工单消息", message + ",工单编号:" + modelT_Bus_WorkOrder.F_WorkOrderId, u.F_UserCode, User.F_UserCode, (int)EnumSmsType.workorder);
10357
+                            }
10358
+                        }
10359
+                        #endregion
10360
+                    });
10361
+                }
10362
+
10363
+                
10364
+
10365
+                return Success("操作成功");
10366
+
10367
+            }
10368
+            else
10369
+            {
10370
+                return Success("权限不足");
10371
+            }
10372
+        }
10373
+
10374
+        /// <summary>
10375
+        /// 修改工单信息
10376
+        /// </summary>
10377
+        /// <returns></returns>
10378
+        //[Authority]
10220 10379
         public ActionResult EditWorkOrderBySource()
10221 10380
         {
10222 10381
             if (User.F_RoleCode == "ZXHWY" || User.F_RoleCode == "ZXBZ" || User.F_RoleCode == "GLY" || User.F_RoleCode == "DDZG")