Example #1
0
        /// <summary>
        /// 提交实体数据
        /// </summary>
        /// <param name="submitParams"></param>
        /// <returns></returns>
        public bool SubmitData(FE_SubmitDataParam submitParams)
        {
            if (submitParams == null)
            {
                return(false);
            }
            bool suc = TmoServiceClient.InvokeServerMethodT <bool>(funCode.FakeEntity_SubmitDataNew, submitParams);

            return(suc);
        }
Example #2
0
        public bool SubmitData(DBOperateType opType, string entityName, string pkName, string pkValue, Dictionary <string, object> dicParams)
        {
            FE_SubmitDataParam param = new FE_SubmitDataParam();

            param.OperateType  = opType;
            param.EntityName   = entityName;
            param.PrimaryKey   = pkName;
            param.PKValue      = pkValue;
            param.SubmitValues = dicParams;
            return(SubmitData(param));
        }
Example #3
0
 /// <summary>
 /// 根据参数保存修改实体数据
 /// </summary>
 /// <param name="param"></param>
 /// <returns></returns>
 public bool SubmitData(FE_SubmitDataParam param)
 {
     return(dal.SubmitData(param));
 }
        /// <summary>
        /// 根据参数保存修改实体数据
        /// </summary>
        /// <param name="param"></param>
        /// <returns></returns>
        public bool SubmitData(FE_SubmitDataParam param)
        {
            if (param == null)
            {
                return(false);
            }
            if (string.IsNullOrWhiteSpace(param.EntityName))
            {
                return(false);
            }
            if (param.OperateType != DBOperateType.Add &&
                (string.IsNullOrWhiteSpace(param.PrimaryKey) || string.IsNullOrWhiteSpace(param.PKValue)))
            {
                return(false);
            }
            if (param.OperateType != DBOperateType.Delete && param.OperateType != DBOperateType.View &&
                (param.SubmitValues == null || param.SubmitValues.Count == 0))
            {
                return(false);
            }

            DBOperateType opType     = param.OperateType;
            string        entityName = param.EntityName;
            string        pkName     = param.PrimaryKey;
            string        pkValue    = param.PKValue;

            Dictionary <string, string> dicParams = new Dictionary <string, string>();

            foreach (KeyValuePair <string, object> keyValuePair in param.SubmitValues)
            {
                if (!string.IsNullOrWhiteSpace(keyValuePair.Key))
                {
                    string value = string.Empty;
                    if (keyValuePair.Value != null)
                    {
                        value = keyValuePair.Value.ToString();
                    }
                    if (keyValuePair.Key.IndexOf("time", StringComparison.OrdinalIgnoreCase) > 0 ||
                        keyValuePair.Key.IndexOf("date", StringComparison.OrdinalIgnoreCase) > 0)
                    {
                        if (value.Contains("午") || value.Contains("星期") || value.Contains("周") || !value.Take(4).All(char.IsNumber))
                        {
                            value = DateTimeHelper.ToDateTime(value).ToFormatDateTimeStr();
                        }
                    }

                    dicParams.Add(keyValuePair.Key, value);
                }
            }

            DataTable dtStruct      = GetTableStruct(entityName);
            bool      falseDel      = dtStruct.Columns.Contains("is_del");
            bool      autoInputTime = dtStruct.Columns.Contains("input_time") && opType == DBOperateType.Add;

            if (autoInputTime && !dicParams.ContainsKey("input_time"))
            {
                dicParams.Add("input_time", TmoShare.DateTimeNow);
            }
            bool autoUpdateTime = dtStruct.Columns.Contains("update_time") && opType != DBOperateType.Delete;

            if (autoUpdateTime && !dicParams.ContainsKey("update_time"))
            {
                dicParams.Add("update_time", DateTimeHelper.DateTimeNowStr);
            }

            StringBuilder sbsql = new StringBuilder();

            if (opType == DBOperateType.Add)
            {
                if (falseDel)
                {
                    if (dicParams.ContainsKey("is_del"))
                    {
                        dicParams["is_del"] = "0";
                    }
                    else
                    {
                        dicParams.Add("is_del", "0");
                    }
                }

                sbsql.AppendFormat("insert into {0}(", entityName);
                int i = 0;
                foreach (string col in dicParams.Keys)
                {
                    sbsql.Append(col);
                    if (i < dicParams.Count - 1)
                    {
                        sbsql.Append(",");
                    }
                    i++;
                }

                sbsql.Append(") values(");
                i = 0;
                foreach (string val in dicParams.Values)
                {
                    sbsql.AppendFormat("'{0}'", val);
                    if (i < dicParams.Count - 1)
                    {
                        sbsql.Append(",");
                    }
                    i++;
                }

                sbsql.Append(");");
            }
            else if (opType == DBOperateType.Update)
            {
                sbsql.AppendFormat("update {0} set ", entityName);
                int i = 0;
                foreach (var item in dicParams)
                {
                    sbsql.AppendFormat("{0}='{1}'", item.Key, item.Value);
                    if (i < dicParams.Count - 1)
                    {
                        sbsql.Append(",");
                    }
                    i++;
                }

                sbsql.AppendFormat(" where {0}='{1}';", pkName, pkValue);
            }
            else if (opType == DBOperateType.Delete)
            {
                return(DeleteData(entityName, pkName, pkValue));
            }

            int count = MySQLHelper.ExecuteSqlTran(sbsql.ToString());

            if (count > 0)
            {
                if (entityName.ToLower() == "tmo_monitor_devicebind")
                {
                    MemoryCacheHelper.ClearCache("tmo_monitor_devicebind");
                }
            }

            return(count > 0);
        }