Exemplo n.º 1
0
        //[SupportFilter]
        public string Delete(dynamic obj)
        {
            try
            {
                if (obj.typemodel.ToString() == "eqise")
                {
                    obj.typemodel = "eqiw_r";
                }
                RuletblDictionary dic      = new RuletblDictionary();
                string            list     = dic.ByParentIDAndValue("数据审核视图", obj.typemodel.ToString());
                string            listone  = list.Split(',')[0].ToString().Substring(2);
                string            listones = listone.Substring(0, listone.Length - 7);
                string            table    = "";
                if (obj.typemodel.ToString() == "eqib_v")
                {
                    table = "tbl_" + listones;
                }
                else if (obj.typemodel.ToString() == "eqiw_r_auto")
                {
                    table = "tblEQIW_R_Basedata_Pre_Auto";
                }
                else
                {
                    table = "tbl" + listones;
                }
                List <long> lstDelID = new List <long>();
                string[]    fld      = obj.fldAutoId.ToString().Split(',');
                for (int i = 0; i < fld.Length; i++)
                {
                    string[] pk = fld[i].Split('_');
                    for (int j = 0; j < pk.Length; j++)
                    {
                        lstDelID.Add(Convert.ToInt64(pk[j].ToString()));
                    }
                }
                RuletblEQIA_RPI_Basedata_Pre rule_basedata = new RuletblEQIA_RPI_Basedata_Pre();

                bool isb = rule_basedata.delById(lstDelID, table);
                if (isb)
                {
                    return("删除成功!");
                }
                else
                {
                    return("删除失败!");
                }
            }
            catch (Exception e)
            {
                throw new Exception("删除数据失败!");
            }
        }
        /// <summary>
        /// 功能描述:数据插入到临时表
        /// 创建  人:周文卿
        /// 创建时间:2017/07/11
        /// 修改原因:
        /// 修改时间:
        /// 修改  人:
        /// </summary>
        /// <param name="inputdata">插入的实体类</param>
        /// <returns>json(是否成功)</returns>
        public HttpResponseMessage ItemSave(List <tbleqia_r_table> inputdata)
        {
            string returntext = "";

            try
            {
                Regex regexvalue  = new Regex(@"^(\d*\.?\d+)+$");
                Regex regexvalue2 = new Regex(@"^(\d*\.?\d+)?[lL]$");
                List <tblEQIA_RPI_Basedata_Pre> lstData = new List <tblEQIA_RPI_Basedata_Pre>();
                tblEQIA_RPI_Basedata_Pre        objData = new tblEQIA_RPI_Basedata_Pre();//临时表

                for (int i = 0; i < inputdata.Count; i++)
                {
                    List <tbaeqia_r_value> valueall = inputdata[i].valueall;
                    for (int j = 0; j < valueall.Count; j++)
                    {
                        objData.fldSTCode         = valueall[j].fldSTCode;
                        objData.fldUserID         = int.Parse(inputdata[i].fldUserID);
                        objData.fldFlag           = 0;
                        objData.fldCityID_Operate = int.Parse(inputdata[i].fldCityID_Operate);
                        objData.fldCityID_Submit  = inputdata[i].fldCityID_Submit;
                        objData.fldDate_Operate   = DateTime.Now;
                        RuletblEQIA_R_Item rule_item = new RuletblEQIA_R_Item();
                        DataTable          dataTable = rule_item.GetItemAndSTDDataByItemCode(inputdata[i].itemcode);
                        decimal            dValue    = -1;
                        if (dataTable.Rows.Count > 0)
                        {
                            if (valueall[j].monitorvalue != "")
                            {
                                if (regexvalue2.IsMatch(valueall[j].monitorvalue))
                                {
                                    if (valueall[j].monitorvalue.ToString().Trim().ToLower() == "l")
                                    {
                                        decimal temp = Convert.ToDecimal(dataTable.Rows[0]["fldSense"].ToString());
                                        if (temp <= 0)
                                        {
                                            returntext = rule.JsonStr("error", "项目[" + dataTable.Rows[0]["fldItemName"].ToString() + "]的检出限<=0,不能输入 L 作为监测值", "");
                                            return(new HttpResponseMessage {
                                                Content = new StringContent(returntext, System.Text.Encoding.UTF8, "application/json")
                                            });
                                        }
                                        dValue = -temp;
                                    }
                                    else
                                    {
                                        dValue = -Convert.ToDecimal(valueall[j].monitorvalue.ToString().Trim().Replace("l", "").Replace("L", ""));
                                    }
                                    if (dValue == -1)
                                    {
                                        dValue = Convert.ToDecimal(-0.99999999);
                                    }
                                }
                                else
                                {
                                    dValue = Convert.ToDecimal(valueall[j].monitorvalue.ToString().Trim());
                                }
                            }
                        }
                        tblEQIA_RPI_Basedata_Pre objTmp = objData.Clone();
                        objTmp.fldPCode = valueall[j].fldPCode;
                        DateTime time = DateTime.Parse(valueall[j].fldDate.ToString());
                        objTmp.fldSYear     = time.Year;
                        objTmp.fldSMonth    = time.Month;
                        objTmp.fldSDay      = time.Day;
                        objTmp.fldSHour     = 0;
                        objTmp.fldSMinute   = 0;
                        objTmp.fldEYear     = time.Year;
                        objTmp.fldEMonth    = time.Month;
                        objTmp.fldEDay      = time.Day;
                        objTmp.fldEHour     = 0;
                        objTmp.fldEMinute   = 0;
                        objTmp.fldFlag      = 0;
                        objTmp.fldImport    = false;
                        objTmp.fldItemCode  = inputdata[i].itemcode;
                        objTmp.fldItemValue = dValue;
                        lstData.Add(objTmp);
                    }
                }
                RuletblEQIA_RPI_Basedata_Pre rule_basedata = new RuletblEQIA_RPI_Basedata_Pre();
                bool issave = rule_basedata.InsertAll(lstData);
                if (issave)
                {
                    RuleWriteOperateLog rule_wol = new RuleWriteOperateLog();
                    rule_wol.WriteLog(0, "录入大气数据到临时表", "", int.Parse(inputdata[0].fldUserID), int.Parse(inputdata[0].fldCityID_Operate));
                    returntext = rule.JsonStr("ok", "录入成功!您保存的数据,已进入“待提交审核的数据”状态", "");
                }
                else
                {
                    returntext = rule.JsonStr("error", "保存失败!请重试!", "");
                }
            }
            catch (InputException ex)
            {
                returntext = rule.JsonStr("error", ex.Message, "");
            }
            catch (InsertException ex)
            {
                returntext = rule.JsonStr("error", ex.Message, "");
            }
            catch (Exception ex)
            {
                returntext = rule.JsonStr("error", ex.Message, "");
            }
            return(new HttpResponseMessage {
                Content = new StringContent(returntext, System.Text.Encoding.UTF8, "application/json")
            });
        }
Exemplo n.º 3
0
        //
        public HttpResponseMessage ItemSave(eqia_rsavedata itemvalue)
        {
            string result = string.Empty;

            if (itemvalue.fldUserID == null || itemvalue.fldUserName == null)
            {
                itemvalue.fldUserID   = rule.ConductUserinfo(itemvalue.fldUserID);
                itemvalue.fldUserName = "";
            }
            try
            {
                if (itemvalue.BeginDate != null && itemvalue.EndDate != null)
                {
                    if (itemvalue.fldSTCode != null)
                    {
                        if (itemvalue.fldPCode != null)
                        {
                            if (itemvalue.fldItemData.Count > 0)
                            {
                                List <tblEQIA_RPI_Basedata_Pre> lstData = new List <tblEQIA_RPI_Basedata_Pre>();
                                tblEQIA_RPI_Basedata_Pre        objData = new tblEQIA_RPI_Basedata_Pre();
                                tblEQI_InputDate inputdate_new          = new tblEQI_InputDate();
                                objData.fldSTCode         = itemvalue.fldSTCode;
                                objData.fldPCode          = itemvalue.fldPCode;
                                objData.fldSYear          = inputdate_new.fldSYear = decimal.Parse(Convert.ToDateTime(itemvalue.BeginDate).Year.ToString());
                                objData.fldSMonth         = inputdate_new.fldSMonth = decimal.Parse(Convert.ToDateTime(itemvalue.BeginDate).Month.ToString());
                                objData.fldSDay           = inputdate_new.fldSDay = decimal.Parse(Convert.ToDateTime(itemvalue.BeginDate).Day.ToString());
                                objData.fldSHour          = inputdate_new.fldSHour = decimal.Parse(Convert.ToDateTime(itemvalue.BeginDate).Hour.ToString());
                                objData.fldSMinute        = inputdate_new.fldSMinute = decimal.Parse(Convert.ToDateTime(itemvalue.BeginDate).Minute.ToString());
                                objData.fldEYear          = inputdate_new.fldEYear = decimal.Parse(Convert.ToDateTime(itemvalue.EndDate).Year.ToString());
                                objData.fldEMonth         = inputdate_new.fldEMonth = decimal.Parse(Convert.ToDateTime(itemvalue.EndDate).Month.ToString());
                                objData.fldEDay           = inputdate_new.fldEDay = decimal.Parse(Convert.ToDateTime(itemvalue.EndDate).Day.ToString());
                                objData.fldEHour          = inputdate_new.fldEHour = decimal.Parse(Convert.ToDateTime(itemvalue.EndDate).Hour.ToString());
                                objData.fldEMinute        = inputdate_new.fldEMinute = decimal.Parse(Convert.ToDateTime(itemvalue.EndDate).Minute.ToString());
                                objData.fldSource         = 0;
                                objData.fldUserID         = inputdate_new.fldUserID = int.Parse(itemvalue.fldUserID);
                                objData.fldFlag           = 0;
                                objData.fldCityID_Operate = inputdate_new.fldCityID = int.Parse(itemvalue.fldCityID_Operate);
                                objData.fldCityID_Submit  = itemvalue.fldCityID_Submit;
                                objData.fldDate_Operate   = DateTime.Now;
                                objData.fldBatch          = itemvalue.BeginDate + Guid.NewGuid().ToString();
                                inputdate_new.fldObject   = "eqia_r";
                                Regex regexvalue2 = new Regex(@"^(\d*\.?\d+)?[lL]$");
                                for (int i = 0; i < itemvalue.fldItemData.Count; i++)
                                {
                                    decimal            dValue    = -1;
                                    RuletblEQIA_R_Item rule_item = new RuletblEQIA_R_Item();

                                    DataTable dataTable = rule_item.GetItemAndSTDDataByItemCode(itemvalue.fldItemData[i].itemcode);

                                    if (dataTable.Rows.Count > 0)
                                    {
                                        if (itemvalue.fldItemData[i].itemvalue.Trim() != "")
                                        {
                                            if (regexvalue2.IsMatch(itemvalue.fldItemData[i].itemvalue.Trim()))
                                            {
                                                if (itemvalue.fldItemData[i].itemvalue.Trim().ToLower() == "l")
                                                {
                                                    decimal temp = Convert.ToDecimal(dataTable.Rows[0]["fldSense"].ToString());

                                                    if (temp <= 0)
                                                    {
                                                        result = rule.JsonStr("error", "项目[" + dataTable.Rows[0]["fldItemName"].ToString() + "]的检出限<=0,不能输入 L 作为监测值", "");
                                                        return(new HttpResponseMessage {
                                                            Content = new StringContent(result, System.Text.Encoding.UTF8, "application/json")
                                                        });
                                                    }
                                                    dValue = -temp;
                                                }
                                                else
                                                {
                                                    dValue = -Convert.ToDecimal(itemvalue.fldItemData[i].itemvalue.Trim().Replace("l", "").Replace("L", ""));
                                                }
                                                if (dValue == -1)
                                                {
                                                    dValue = Convert.ToDecimal(-0.99999999);
                                                }
                                            }
                                            else
                                            {
                                                dValue = Convert.ToDecimal(itemvalue.fldItemData[i].itemvalue.ToString().Trim());
                                            }
                                        }

                                        tblEQIA_RPI_Basedata_Pre objTmp = objData.Clone();
                                        objTmp.fldItemCode       = itemvalue.fldItemData[i].itemcode;
                                        objTmp.fldItemValue      = dValue;
                                        objTmp.fldCityID_Operate = Int32.Parse(itemvalue.fldCityID_Operate);
                                        objTmp.fldCityID_Submit  = itemvalue.fldCityID_Submit;
                                        lstData.Add(objTmp);
                                    }
                                }
                                RuletblEQIA_RPI_Basedata_Pre rule_basedata = new RuletblEQIA_RPI_Basedata_Pre();
                                bool issave = rule_basedata.InsertAll(lstData, inputdate_new);
                                if (issave)
                                {
                                    RuleWriteOperateLog rule_wol = new RuleWriteOperateLog();
                                    rule_wol.WriteLog(0, "录入大气数据到临时表,测点代码:" + itemvalue.fldPCode +
                                                      ";时间:" + itemvalue.BeginDate + " " + itemvalue.EndDate + ";录入者ID:" + int.Parse(itemvalue.fldUserID), itemvalue.fldUserName, int.Parse(itemvalue.fldUserID), int.Parse(itemvalue.fldCityID_Submit));
                                    result = rule.JsonStr("error", "录入成功!您保存的数据,已进入“待提交审核的数据”状态", "");
                                }
                                else
                                {
                                    result = rule.JsonStr("error", "数据保存失败,请重试", "");
                                }
                            }
                            else
                            {
                                result = rule.JsonStr("error", "缺少因子监测值", "");
                            }
                        }
                        else
                        {
                            result = rule.JsonStr("error", "缺少点位代码", "");
                        }
                    }
                    else
                    {
                        result = rule.JsonStr("error", "缺少城市代码", "");
                    }
                }
                else
                {
                    result = rule.JsonStr("error", "缺少监测时间", "");
                }
            }
            catch (InputException ex)
            {
                result = rule.JsonStr("error", "数据保存失败," + ex.Message, "");
            }
            catch (InsertException ex)
            {
                PageException pagex = new PageException(int.Parse(itemvalue.fldUserID), ex.Message,
                                                        "Eqia_rPointInputController", "ItemSave", "");
                result = rule.JsonStr("error", "数据写入数据库失败," + ex.Message, "");
            }
            catch (Exception ex)
            {
                PageException pagex = new PageException(int.Parse(itemvalue.fldUserID), ex.Message,
                                                        "Eqia_rPointInputController", "ItemSave", "");
                result = rule.JsonStr("error", "数据保存时出现了错误," + ex.Message, "");
            }
            return(new HttpResponseMessage {
                Content = new StringContent(result, System.Text.Encoding.UTF8, "application/json")
            });
        }
Exemplo n.º 4
0
        public string Update(string fldAutoId, string typemodel, string userId, string userName, string cityId, string NewFlag = null)
        {
            try
            {
                userId = rule.ConductUserinfo(userId);
                RuletblDictionary dic = new RuletblDictionary();
                if (typemodel.ToString() == "eqise")
                {
                    typemodel = "eqiw_r";
                }
                string list = dic.ByParentIDAndValue("数据审核视图", typemodel.ToString());

                string listone  = list.Split(',')[0].ToString().Substring(2);
                string listones = null;
                if (listone.ToLower().Contains("auto"))
                {
                    listones = listone.Substring(0, listone.Length - 12);
                }
                else
                {
                    listones = listone.Substring(0, listone.Length - 7);
                }
                string table = "";
                if (typemodel.ToString() == "eqib_v")
                {
                    table = "tbl_" + listones;
                }
                else
                {
                    table = "tbl" + listones;
                }


                List <long> lstDelID = new List <long>();
                string[]    fld      = fldAutoId.ToString().Split(',');
                for (int i = 0; i < fld.Length; i++)
                {
                    string[] pk = fld[i].Split('_');
                    for (int j = 0; j < pk.Length; j++)
                    {
                        lstDelID.Add(Convert.ToInt64(pk[j].ToString()));
                    }
                }
                RuletblEQIA_RPI_Basedata_Pre rule_basedata = new RuletblEQIA_RPI_Basedata_Pre();
                RuleWriteOperateLog          rule_wol      = new RuleWriteOperateLog();
                if (NewFlag == null)
                {
                    NewFlag = "1";
                }
                bool isb = rule_basedata.delBytable(lstDelID, table, NewFlag.ToString());
                if (isb)
                {
                    rule_wol.WriteLog(0, "提交审核选中的数据数据,进入监测数据审核状态录入这ID=" + userId.ToString(), userName.ToString(), int.Parse(userId.ToString()), int.Parse(cityId.ToString()));
                    return("提交审核数据成功!");
                }
                else
                {
                    return("提交审核数据失败,请重试!");
                }
            }
            catch (Exception e)
            {
                throw new Exception("提交审核数据失败!");
            }
        }