Example #1
0
        public ActionResult <string> add(dynamic param)
        {
            var    jsonParams = JsonConvert.DeserializeObject <dynamic>(param.ToString());
            string oid        = Convert.ToString(jsonParams.Taskoid);
            string id         = Convert.ToString(jsonParams.Taskid);
            int    times      = getTimes_Feedback(Convert.ToString(jsonParams.Taskoid));

            // 查询任务信息
            string sql   = "TaskOrderOid = @0 and Taskid = @1 And Taskstatus != @2 And Taskstatus != @3";
            var    query = _context.TaskOrder
                           .AsQueryable()
                           .Where(sql, oid, id, "已回退", "已完成");
            string resOid = "";
            int    result = 0;

            if (query.Count() == 1)
            {
                TaskOrder    oder = query.Take(1).Single();
                TaskFeedback obj  = new TaskFeedback
                {
                    TaskFeedbackOid           = Guid.NewGuid().ToString("D"),
                    Taskordeid                = jsonParams.Taskoid,
                    Taskid                    = jsonParams.Taskid,
                    Supervision               = jsonParams.Supervision,
                    Isitnecessarytorectify    = jsonParams.Isitnecessarytorectify,
                    Islawenforcementnecessary = jsonParams.Islawenforcementnecessary,
                    Isitnecessarytopunish     = jsonParams.Isitnecessarytopunish,
                    Picturenames              = jsonParams.Picturenames,

                    Taskfeedbackperson      = jsonParams.Taskfeedbackperson,
                    Taskfeedbackpersonphone = jsonParams.Taskfeedbackpersonphone,
                    Taskfeedbacktimes       = times,
                    Taskfeedbacktime        = DateTime.Now,

                    Tasktype       = oder.Tasktype,
                    Taskstatus     = "开展中",
                    TaskTypeSrc    = oder.TaskTypeSrc,
                    TaskTypesubSrc = oder.TaskTypesubSrc
                };
                UserInfo usr = common.getUserInfo(jsonParams.userName);
                if (usr != null)
                {
                    obj.TaskfeedbackpersonId    = usr.Useroid;
                    obj.Taskfeedbackperson      = usr.Username;
                    obj.Taskfeedbackpersonphone = usr.Userphone;
                }
                _context.Add(obj);
                result = _context.SaveChanges();
                if (result == 1)
                {
                    result = updateTimes_Feedback(Convert.ToString(jsonParams.Taskoid));
                }
                resOid = obj.TaskFeedbackOid;
            }
            var data = new { TaskFeedbackOid = resOid, result = result };

            return(common.transResult(data));
        }
        //更新任务反馈信息
        public int updateInfo_Feedback(TaskOrder oder, string usrName)
        {
            int          nTimes = (int)(oder.Taskstatus == "" ? 0 : oder.Taskfeedbacktimes);
            TaskFeedback obj    = new TaskFeedback
            {
                TaskFeedbackOid = Guid.NewGuid().ToString("D"),
                Taskordeid      = oder.TaskOrderOid,
                Taskid          = oder.Taskid,
                Taskobjectname  = oder.Tasksubobjectname,

                //Supervision = oder.Supervision,
                //Isitnecessarytorectify = jsonParams.Isitnecessarytorectify,
                //Islawenforcementnecessary = jsonParams.Islawenforcementnecessary,
                //Isitnecessarytopunish = jsonParams.Isitnecessarytopunish,
                //Picturenames = jsonParams.Picturenames,

                //Taskfeedbackperson = jsonParams.Taskfeedbackperson,
                //Taskfeedbackpersonphone = jsonParams.Taskfeedbackpersonphone,
                Taskfeedbacktimes = nTimes,
                Taskfeedbacktime  = oder.Taskfeedbacktime,

                Tasktype       = oder.Tasktype,
                Taskstatus     = oder.Taskstatus,
                TaskTypeSrc    = oder.TaskTypeSrc,
                TaskTypesubSrc = oder.TaskTypesubSrc
            };
            UserInfo usr = common.getUserInfo(usrName);

            if (usr != null)
            {
                obj.TaskfeedbackpersonId    = usr.Useroid;
                obj.Taskfeedbackperson      = usr.Username;
                obj.Taskfeedbackpersonphone = usr.Userphone;
            }

            // 更新完成时信息
            if (oder.Taskstatus == "未开展")
            {
                obj.Taskfeedbacktime = oder.Checktime;
            }
            else if (oder.Taskstatus == "完成")
            {
                var query = _context.TaskFeedback.Where(s => s.Taskordeid == oder.TaskOrderOid);
                obj.Taskfeedbacktimes = query.Count() - 1;
            }
            else if (oder.Taskstatus == "已回退")
            {
                obj.Supervision      = oder.Taskfallbackreason;
                obj.Taskfeedbacktime = oder.Taskfeedbacktime;
            }
            _context.Add(obj);
            int result = _context.SaveChanges();

            return(result);
        }