Example #1
0
 public void TableUsingReduce(int?Table_Id)
 {
     try
     {
         //获取表的引用,减少引用次数
         Eva_Table table = Constant.Eva_Table_List.FirstOrDefault(t => Table_Id == t.Id);
         if (table != null)
         {
             //克隆该表格
             Eva_Table table_clone = Constant.Clone <Eva_Table>(table);
             if (table_clone.UseTimes > 0)
             {
                 table_clone.UseTimes -= 1;
                 JsonModel m3 = Constant.Eva_TableService.Update(table_clone);
                 if (m3.errNum == 0)
                 {
                     table.UseTimes -= 1;
                 }
             }
         }
     }
     catch (Exception ex)
     {
         LogHelper.Error(ex);
     }
 }
 public static void Eva_Table_Add(Eva_Table Eva_Table)
 {
     try
     {
         if (!Eva_Table_List.Contains(Eva_Table))
         {
             Eva_Table_List.Add(Eva_Table);
         }
     }
     catch (Exception ex)
     {
         LogHelper.Error(ex);
     }
 }
        private static void Reg_Table_Add_Helper(string CreateUID, string EditUID, Eva_Regular Eva_Regular, int[] tables, int[] eva_roles, string[] course_types)
        {
            try
            {
                //匹配并进行关联
                for (int i = 0; i < tables.Count(); i++)
                {
                    //定期评价添加
                    Eva_Distribution distribution = new Eva_Distribution()
                    {
                        CousrseType_Id = course_types[i],
                        Evaluate_Id    = Eva_Regular.Id,
                        Eva_Role       = eva_roles[i],
                        CreateTime     = DateTime.Now,
                        CreateUID      = CreateUID,
                        EditTime       = DateTime.Now,
                        EditUID        = EditUID,
                        IsDelete       = (int)IsDelete.No_Delete,
                        IsEnable       = (int)IsEnable.Enable,
                        Table_Id       = tables[i]
                    };


                    JsonModel model = Constant.Eva_DistributionService.Add(distribution);

                    if (model.errNum == (int)errNum.Success)
                    {
                        if (!Constant.Eva_Distribution_List.Contains(distribution))
                        {
                            Constant.Eva_Distribution_List.Add(distribution);
                            distribution.Id = RequestHelper.int_transfer(Convert.ToString(model.retData));

                            //表格的计数
                            Eva_Table table = Constant.Eva_Table_List.FirstOrDefault(t => t.Id == tables[i]);
                            //直接进行更改
                            if (table != null)
                            {
                                table.UseTimes += 1;
                                JsonModel m = Constant.Eva_TableService.Update(table);
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                LogHelper.Error(ex);
            }
        }
 public static void Eva_Table_Update(Eva_Table Eva_Table)
 {
     try
     {
         if (Eva_Table != null)
         {
             if (Eva_Table_List.Contains(Eva_Table))
             {
                 Eva_Table_List.Remove(Eva_Table);
             }
         }
     }
     catch (Exception ex)
     {
         LogHelper.Error(ex);
     }
 }
Example #5
0
 /// <summary>
 /// 编辑表格
 /// </summary>
 public void Enable_Eva_Table(HttpContext context)
 {
     lock (obj_Enable_Eva_Table)
     {
         int         intSuccess = (int)errNum.Success;
         HttpRequest Request    = context.Request;
         //表格Id
         int table_Id = RequestHelper.int_transfer(Request, "table_Id");
         int IsEnable = RequestHelper.int_transfer(Request, "IsEnable");
         try
         {
             //获取指定要删除的表格
             Eva_Table Eva_Table_edit = Constant.Eva_Table_List.FirstOrDefault(i => i.Id == table_Id);
             if (Eva_Table_edit != null)
             {
                 //克隆该表格
                 Eva_Table Eva_Table_clone = Constant.Clone <Eva_Table>(Eva_Table_edit);
                 Eva_Table_clone.IsEnable = (byte)IsEnable;
                 //数据库操作成功再改缓存
                 jsonModel = Constant.Eva_TableService.Update(Eva_Table_clone);
                 if (jsonModel.errNum == intSuccess)
                 {
                     Eva_Table_edit.IsEnable = (byte)IsEnable;
                 }
                 else
                 {
                     jsonModel = JsonModel.get_jsonmodel(3, "failed", "编辑失败");
                 }
             }
             else
             {
                 jsonModel = JsonModel.get_jsonmodel(3, "failed", "该表格不存在");
             }
         }
         catch (Exception ex)
         {
             LogHelper.Error(ex);
         }
         finally
         {
             //无论后端出现什么问题,都要给前端有个通知【为防止jsonModel 为空 ,全局字段 jsonModel 特意声明之后进行初始化】
             context.Response.Write("{\"result\":" + Constant.jss.Serialize(jsonModel) + "}");
         }
     }
 }
 public static void Eva_Table_Remove(int Id)
 {
     try
     {
         Eva_Table Eva_Table = Eva_Table_List.FirstOrDefault(t => t.Id == Id);
         if (Eva_Table != null)
         {
             if (Eva_Table_List.Contains(Eva_Table))
             {
                 Eva_Table_List.Remove(Eva_Table);
             }
         }
     }
     catch (Exception ex)
     {
         LogHelper.Error(ex);
     }
 }
Example #7
0
        /// <summary>
        /// 表格详情表创建添加
        /// </summary>
        /// <param name="CreateUID"></param>
        /// <param name="EditUID"></param>
        /// <param name="Eva_Table_Add"></param>
        /// <param name="Table_A_List"></param>
        private static void Eva_TableAdd_Helper(string CreateUID, string EditUID, Eva_Table Eva_Table_Add, List <Table_A> Table_A_List)
        {
            var Table_Id = Eva_Table_Add.Id;

            //开启线程操作数据库
            new Thread(() =>
            {
                try
                {
                    foreach (Table_A table_A in Table_A_List)
                    {
                        //表明细列表保证不为null513
                        if (table_A.indicator_list == null)
                        {
                            continue;
                        }
                        foreach (indicator_list item in table_A.indicator_list)
                        {
                            Eva_TableDetail Eva_TableDetail = new Eva_TableDetail()
                            {
                                CreateTime         = DateTime.Now,
                                EditTime           = DateTime.Now,
                                CreateUID          = CreateUID,
                                EditUID            = EditUID,
                                Indicator_Id       = (int)item.Id,
                                IndicatorType_Id   = (int)item.IndicatorType_Id,
                                IndicatorType_Name = item.IndicatorType_Name,
                                OptionA            = item.OptionA,
                                OptionB            = item.OptionB,
                                OptionC            = item.OptionC,
                                OptionD            = item.OptionD,
                                OptionE            = item.OptionE,
                                OptionF            = item.OptionF,
                                OptionA_S          = RequestHelper.decimal_transfer(item.OptionA_S),
                                OptionB_S          = RequestHelper.decimal_transfer(item.OptionB_S),
                                OptionC_S          = RequestHelper.decimal_transfer(item.OptionC_S),
                                OptionD_S          = RequestHelper.decimal_transfer(item.OptionD_S),
                                OptionE_S          = RequestHelper.decimal_transfer(item.OptionE_S),
                                OptionF_S          = RequestHelper.decimal_transfer(item.OptionF_S),
                                //Indicator_Name = item.Name,
                                IsDelete     = (int)IsDelete.No_Delete,
                                IsEnable     = (int)IsEnable.Enable,
                                Name         = item.Name,
                                QuesType_Id  = (int)item.QuesType_Id,
                                Remarks      = item.Remarks,
                                Sort         = RequestHelper.int_transfer(item.Sort),
                                Root         = item.Root,
                                RootID       = item.RootID,
                                Eva_table_Id = Table_Id,
                                //评价任务 1,表格设计 0
                                Type          = Convert.ToString((int)TableDetail_Type.Table),
                                OptionF_S_Max = item.OptionF_S_Max,
                            };

                            //入库
                            JsonModel model2 = Constant.Eva_TableDetailService.Add(Eva_TableDetail);
                            if (model2.errNum == 0)
                            {
                                //添加到缓存
                                Constant.Eva_TableDetail_List.Add(Eva_TableDetail);
                                Eva_TableDetail.Id = RequestHelper.int_transfer(Convert.ToString(model2.retData));

                                Indicate_Using_Add((int)item.Id);
                            }
                        }
                    }
                }
                catch (Exception ex)
                {
                    LogHelper.Error(ex);
                }
            })
            {
                IsBackground = true
            }.Start();
        }
Example #8
0
        /// <summary>
        /// 删除表格
        /// </summary>
        public void Delete_Eva_Table(HttpContext context)
        {
            int         intSuccess = (int)errNum.Success;
            HttpRequest Request    = context.Request;
            //指标的ID
            int Id = RequestHelper.int_transfer(Request, "Id");

            try
            {
                //获取指定要删除的表格
                Eva_Table Eva_Table_delete = Constant.Eva_Table_List.FirstOrDefault(i => i.Id == Id);
                if (Eva_Table_delete != null)
                {
                    //克隆该表格
                    Eva_Table indic = Constant.Clone <Eva_Table>(Eva_Table_delete);
                    indic.IsDelete = (int)IsDelete.Delete;
                    //数据库操作成功再改缓存
                    jsonModel = Constant.Eva_TableService.Update(indic);
                    if (jsonModel.errNum == intSuccess)
                    {
                        Eva_Table_delete.IsDelete = (int)IsDelete.Delete;
                        Constant.Eva_Table_List.Remove(Eva_Table_delete);
                        List <Eva_Table_Header> Eva_Table_Header_List = Constant.Eva_Table_Header_List.Where(t => t.Table_Id == Id).ToList();
                        foreach (Eva_Table_Header item in Eva_Table_Header_List)
                        {
                            item.IsDelete = (int)IsDelete.Delete;
                            var jm = Constant.Eva_Table_HeaderService.Update(item);
                            if (jm.errNum == 0)
                            {
                                Constant.Eva_Table_Header_List.Remove(item);
                            }
                        }

                        List <Eva_TableDetail> Eva_TableDetail_List = Constant.Eva_TableDetail_List.Where(t => t.Eva_table_Id == Id).ToList();
                        foreach (Eva_TableDetail item in Eva_TableDetail_List)
                        {
                            item.IsDelete = (int)IsDelete.Delete;
                            var jsonmodel = Constant.Eva_TableDetailService.Update(item);
                            if (jsonmodel.errNum == 0)
                            {
                                Constant.Eva_TableDetail_List.Remove(item);
                                Indicate_Using_Reduce((int)item.Indicator_Id);
                            }
                        }
                    }
                    else
                    {
                        jsonModel = JsonModel.get_jsonmodel(3, "failed", "删除失败");
                    }
                }
                else
                {
                    jsonModel = JsonModel.get_jsonmodel(3, "failed", "该表格不存在");
                }
            }
            catch (Exception ex)
            {
                LogHelper.Error(ex);
            }
            finally
            {
                //无论后端出现什么问题,都要给前端有个通知【为防止jsonModel 为空 ,全局字段 jsonModel 特意声明之后进行初始化】
                context.Response.Write("{\"result\":" + Constant.jss.Serialize(jsonModel) + "}");
            }
        }
Example #9
0
        /// <summary>
        /// 编辑表格
        /// </summary>
        public void Edit_Eva_Table(HttpContext context)
        {
            lock (obj_Edit_Eva_Table)
            {
                int         intSuccess = (int)errNum.Success;
                HttpRequest Request    = context.Request;
                //表格Id
                int table_Id = RequestHelper.int_transfer(Request, "table_Id");
                try
                {
                    //获取指定要删除的表格
                    Eva_Table Eva_Table_edit = Constant.Eva_Table_List.FirstOrDefault(i => i.Id == table_Id);
                    if (Eva_Table_edit != null)
                    {
                        string Name = RequestHelper.string_transfer(Request, "Name");

                        int    IsScore       = RequestHelper.int_transfer(Request, "IsScore");
                        string Remarks       = RequestHelper.string_transfer(Request, "Remarks");
                        string EditUID       = RequestHelper.string_transfer(Request, "EditUID");
                        string CourseType_Id = RequestHelper.string_transfer(Request, "CourseType_Id");

                        int IsEnable = RequestHelper.int_transfer(Request, "IsEnable");
                        //克隆该表格
                        Eva_Table Eva_Table_clone = Constant.Clone <Eva_Table>(Eva_Table_edit);
                        Eva_Table_clone.Name     = Name;
                        Eva_Table_clone.IsScore  = (byte)IsScore;
                        Eva_Table_clone.Remarks  = Remarks;
                        Eva_Table_clone.EditTime = DateTime.Now;
                        Eva_Table_clone.EditUID  = EditUID;
                        Eva_Table_clone.IsEnable = (byte)IsEnable;
                        //数据库操作成功再改缓存
                        jsonModel = Constant.Eva_TableService.Update(Eva_Table_clone);
                        if (jsonModel.errNum == intSuccess)
                        {
                            Eva_Table_edit.Name     = Name;
                            Eva_Table_edit.IsScore  = (byte)IsScore;
                            Eva_Table_edit.Remarks  = Remarks;
                            Eva_Table_edit.EditTime = DateTime.Now;
                            Eva_Table_edit.EditUID  = EditUID;
                            Eva_Table_edit.IsEnable = (byte)IsEnable;
                            //表单明细
                            string List = RequestHelper.string_transfer(Request, "List");

                            //序列化表单详情列表
                            List <Table_A> Table_A_List = JsonConvert.DeserializeObject <List <Table_A> >(List);
                            //先进行删除,然后进行添加
                            List <Eva_TableDetail> table_list = (from t in Constant.Eva_TableDetail_List where t.Eva_table_Id == Eva_Table_edit.Id select t).ToList();

                            //删除详情表
                            foreach (Eva_TableDetail item in table_list)
                            {
                                JsonModel m = Constant.Eva_TableDetailService.Delete((int)item.Id);
                                if (m.errNum == intSuccess)
                                {
                                    Constant.Eva_TableDetail_List.Remove(item);
                                    Indicate_Using_Reduce((int)item.Indicator_Id);
                                }
                            }
                            Remove_Header((int)Eva_Table_edit.Id);

                            //解析正常才可进行操作
                            if (Table_A_List != null)
                            {
                                //表格详情表创建添加
                                Eva_TableAdd_Helper(Eva_Table_edit.EditUID, EditUID, Eva_Table_edit, Table_A_List);

                                string head_value = RequestHelper.string_transfer(Request, "head_value");
                                //string lisss = RequestHelper.string_transfer(Request, "lisss");
                                //表头信息添加
                                Table_Header((int)Eva_Table_edit.Id, head_value);//lisss
                            }
                        }
                        else
                        {
                            jsonModel = JsonModel.get_jsonmodel(3, "failed", "编辑失败");
                        }
                    }
                    else
                    {
                        jsonModel = JsonModel.get_jsonmodel(3, "failed", "该表格不存在");
                    }
                }
                catch (Exception ex)
                {
                    LogHelper.Error(ex);
                }
                finally
                {
                    //无论后端出现什么问题,都要给前端有个通知【为防止jsonModel 为空 ,全局字段 jsonModel 特意声明之后进行初始化】
                    context.Response.Write("{\"result\":" + Constant.jss.Serialize(jsonModel) + "}");
                }
            }
        }
Example #10
0
        /// <summary>
        /// 复制表格
        /// </summary>
        /// <param name="context">当前上下文</param>
        public void Copy_Eva_Table(HttpContext context)
        {
            lock (obj_Copy_Eva_Table)
            {
                HttpRequest Request   = context.Request;
                int         table_Id  = RequestHelper.int_transfer(Request, "table_Id");
                string      CreateUID = RequestHelper.string_transfer(Request, "CreateUID");
                try
                {
                    Eva_Table Eva_Table_Need_Copy = Constant.Eva_Table_List.FirstOrDefault(t => t.Id == table_Id);
                    if (Eva_Table_Need_Copy != null)
                    {
                        Eva_Table Eva_Table_Copy_Clone = Constant.Clone <Eva_Table>(Eva_Table_Need_Copy);
                        Eva_Table_Copy_Clone.Id         = null;
                        Eva_Table_Copy_Clone.UseTimes   = 0;
                        Eva_Table_Copy_Clone.CreateUID  = CreateUID;
                        Eva_Table_Copy_Clone.EditUID    = CreateUID;
                        Eva_Table_Copy_Clone.CreateTime = DateTime.Now;
                        Eva_Table_Copy_Clone.EditTime   = DateTime.Now;
                        jsonModel = Constant.Eva_TableService.Add(Eva_Table_Copy_Clone);
                        if (jsonModel.errNum == 0)
                        {
                            Eva_Table_Copy_Clone.Id = Convert.ToInt32(jsonModel.retData);

                            //添加克隆出来的表
                            Constant.Eva_Table_List.Add(Eva_Table_Copy_Clone);

                            //表头复制
                            var table_headers = (from t_h in Constant.Eva_Table_Header_List where t_h.Table_Id == table_Id select t_h).ToList();
                            foreach (var header in table_headers)
                            {
                                Eva_Table_Header h_Clone = Constant.Clone <Eva_Table_Header>(header);
                                h_Clone.Table_Id = Eva_Table_Copy_Clone.Id;
                                h_Clone.Id       = null;
                                var jsonmodel = Constant.Eva_Table_HeaderService.Add(h_Clone);
                                if (jsonmodel.errNum == 0)
                                {
                                    h_Clone.Id = Convert.ToInt32(jsonmodel.retData);
                                    Constant.Eva_Table_Header_List.Add(h_Clone);
                                }
                            }

                            //详情题干添加
                            var table_details = (from detail in Constant.Eva_TableDetail_List where detail.Eva_table_Id == table_Id select detail).OrderBy(t => t.Id).ToList();
                            foreach (var detail in table_details)
                            {
                                Eva_TableDetail detail_clone = Constant.Clone <Eva_TableDetail>(detail);
                                detail_clone.Eva_table_Id = Eva_Table_Copy_Clone.Id;
                                detail_clone.Id           = null;
                                var jsonmodel = Constant.Eva_TableDetailService.Add(detail_clone);
                                if (jsonmodel.errNum == 0)
                                {
                                    detail_clone.Id = Convert.ToInt32(jsonmodel.retData);
                                    Constant.Eva_TableDetail_List.Add(detail_clone);

                                    Indicate_Using_Add((int)detail_clone.Indicator_Id);
                                }
                            }
                        }
                    }
                }
                catch (Exception ex)
                {
                    LogHelper.Error(ex);
                }
                finally
                {
                    //无论后端出现什么问题,都要给前端有个通知【为防止jsonModel 为空 ,全局字段 jsonModel 特意声明之后进行初始化】
                    context.Response.Write("{\"result\":" + Constant.jss.Serialize(jsonModel) + "}");
                }
            }
        }
Example #11
0
        /// <summary>
        /// 新增表格
        /// </summary>
        /// <param name="context">当前上下文</param>
        public void Add_Eva_Table(HttpContext context)
        {
            lock (obj_Add_Eva_Table)
            {
                int         intSuccess    = (int)errNum.Success;
                HttpRequest Request       = context.Request;
                string      Name          = RequestHelper.string_transfer(Request, "Name");
                int         IsScore       = RequestHelper.int_transfer(Request, "IsScore");
                int         IsEnable      = RequestHelper.int_transfer(Request, "IsEnable");
                string      Remarks       = RequestHelper.string_transfer(Request, "Remarks");
                string      CreateUID     = RequestHelper.string_transfer(Request, "CreateUID");
                string      EditUID       = RequestHelper.string_transfer(Request, "EditUID");
                string      CourseType_Id = RequestHelper.string_transfer(Request, "CourseType_Id");
                int         Type          = RequestHelper.int_transfer(Request, "Type");
                try
                {
                    Eva_Table Eva_Table_Add = new Eva_Table()
                    {
                        Name           = Name,
                        IsScore        = (byte)IsScore,
                        CousrseType_Id = CourseType_Id,
                        Type           = Type,
                        //Type = 2,//新加的  主要区别于即时(1)和扫码(0)
                        Remarks    = Remarks,
                        UseTimes   = 0,
                        CreateTime = DateTime.Now,
                        CreateUID  = CreateUID,
                        EditTime   = DateTime.Now,
                        EditUID    = EditUID,
                        IsEnable   = (byte)IsEnable,
                        IsDelete   = (int)IsDelete.No_Delete
                    };

                    //表单明细
                    string List = RequestHelper.string_transfer(Request, "List");
                    //序列化表单详情列表
                    List <Table_A> Table_A_List = JsonConvert.DeserializeObject <List <Table_A> >(List);

                    //数据库添加
                    jsonModel = Constant.Eva_TableService.Add(Eva_Table_Add);
                    if (jsonModel.errNum == 0)
                    {
                        //从数据库返回的ID绑定
                        Eva_Table_Add.Id = RequestHelper.int_transfer(Convert.ToString(jsonModel.retData));
                        string head_value = RequestHelper.string_transfer(Request, "head_value");
                        //string lisss = RequestHelper.string_transfer(Request, "lisss");
                        //添加头部内容
                        Table_Header((int)Eva_Table_Add.Id, head_value);  //lisss
                        if (jsonModel.errNum == intSuccess)
                        {
                            //缓存添加
                            Constant.Eva_Table_List.Add(Eva_Table_Add);
                            //解析正常才可进行操作
                            if (Table_A_List != null)
                            {
                                //表格详情表创建添加
                                Eva_TableAdd_Helper(CreateUID, EditUID, Eva_Table_Add, Table_A_List);
                            }
                        }
                        else
                        {
                            jsonModel = JsonModel.get_jsonmodel(3, "failed", "添加失败");
                        }
                    }
                    else
                    {
                        jsonModel = JsonModel.get_jsonmodel(3, "failed", "添加失败");
                    }
                }
                catch (Exception ex)
                {
                    LogHelper.Error(ex);
                }
                finally
                {
                    //无论后端出现什么问题,都要给前端有个通知【为防止jsonModel 为空 ,全局字段 jsonModel 特意声明之后进行初始化】
                    context.Response.Write("{\"result\":" + Constant.jss.Serialize(jsonModel) + "}");
                }
            }
        }