/// <summary>
        /// 插入
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        public ReturnModel Insert(Wjtc model)
        {
            try
            {
                //验证参数
                if (string.IsNullOrWhiteSpace(model.TCID))
                {
                    return(new ReturnModel {
                        Code = 201, Msg = "套餐不能为空"
                    });
                }

                //保存
                StringBuilder sbSql = new StringBuilder();
                using (IDbConnection conn = new DapperConnection().DbConnection)
                {
                    var transaction = conn.BeginTransaction();
                    try
                    {
                        //判断重名
                        sbSql.Append("SELECT * FROM WJ_TC WHERE TCID=@TCID and SFQY=1");
                        Wjbq sameName = conn.QueryFirstOrDefault <Wjbq>(sbSql.ToString(), model, transaction);
                        if (sameName != null)
                        {
                            return(new ReturnModel {
                                Code = 201, Msg = "存在相同名称的套餐"
                            });
                        }

                        sbSql.Clear();
                        model.SFQY = 1;
                        sbSql.Append("INSERT INTO WJ_TC(TCID, SYRQ, TCZY, SFQY) VALUES (@TCID, @SYRQ, @TCZY, @SFQY);select @@IDENTITY");
                        int id = Convert.ToInt32(conn.ExecuteScalar(sbSql.ToString(), model, transaction));

                        if (!string.IsNullOrWhiteSpace(model.BQIDS))
                        {
                            //标签列表
                            List <string> lstBq = model.BQIDS.Split(new string[] { "," }, StringSplitOptions.RemoveEmptyEntries).ToList();
                            //深度列表
                            List <string> lstSd = model.BQSDS.Split(new string[] { "," }, StringSplitOptions.RemoveEmptyEntries).ToList();
                            foreach (var item in lstBq)
                            {
                                var sd = lstSd[lstBq.IndexOf(item)];
                                sbSql.Clear();
                                sbSql.Append("INSERT INTO WJ_TCBQ(GLID, BQID, JCSD) VALUES (@GLID, @BQID, @JCSD)");
                                conn.Execute(sbSql.ToString(), new { GLID = id, BQID = item, JCSD = sd }, transaction);
                            }
                        }
                        transaction.Commit();
                        return(new ReturnModel {
                            Code = 200, Msg = "保存成功"
                        });
                    }
                    catch (Exception e)
                    {
                        transaction.Rollback();
                        Log.WriteLog(e.Message);
                        return(new ReturnModel {
                            Code = 201, Msg = "保存失败"
                        });
                    }
                }
            }
            catch (Exception e)
            {
                Log.WriteLog(e.Message);
                return(new ReturnModel {
                    Code = 201, Msg = "保存失败"
                });
            }
        }
Beispiel #2
0
        public ReturnModel PostToCalculate(List <string> listDdbh, string yybh, int qdid, int tjr)
        {
            try
            {
                //验证参数
                if (listDdbh.Count.Equals(0))
                {
                    return(new ReturnModel {
                        Code = 201, Msg = "请选择订单"
                    });
                }

                StringBuilder sbSql = new StringBuilder();
                //生成流水号
                string jsbh = new XT_ZZB().GetJsLsh(qdid);

                //保存
                using (IDbConnection conn = new DapperConnection().DbConnection)
                {
                    var transaction = conn.BeginTransaction();
                    try
                    {
                        //获取订单基本信息
                        sbSql.Append("SELECT * FROM dd_jbxx WHERE ddbh IN @ids");
                        var listDd = conn.Query <DdjbxxModel>(sbSql.ToString(), new { ids = listDdbh }, transaction).ToList();

                        int     result = 0;
                        decimal ysjsze = listDd.Sum(x => x.ysjsj);
                        decimal tkze   = listDd.Sum(x => x.tkze);
                        //插入结算基本信息表获取自增Id
                        sbSql.Clear();
                        sbSql.Append("INSERT INTO qd_jsjbxx (jsbh, yybh, qdid, zt, tjsj, tjr, ysjsze, sjjsze, tkze) VALUES (@Jsbh, @Yybh, @Qdid, @Zt, @Tjsj, @Tjr, @Ysjsze, @Sjjsze, @Tkze);select @@IDENTITY");
                        int jsjbxxid = Convert.ToInt32(conn.ExecuteScalar(sbSql.ToString(), new { Jsbh = jsbh, Yybh = yybh, Qdid = qdid, Zt = 1, Tjsj = DateTime.Now, Tjr = tjr, Ysjsze = ysjsze, Sjjsze = ysjsze - tkze, Tkze = tkze }, transaction));

                        foreach (var model in listDd)
                        {
                            //插入结算明细
                            sbSql.Clear();
                            sbSql.Append("INSERT INTO qd_jsjbxxmx (jbxxid, ddbh, ysjsj, tkze, jstz, sjjsj) VALUES (@Jbxxid, @Ddbh, @Ysjsj, @Tkze, @Jstz, @Sjjsj)");
                            conn.Execute(sbSql.ToString(), new { Jbxxid = jsjbxxid, Ddbh = model.ddbh, Ysjsj = model.ysjsj, Tkze = model.tkze, Jstz = 0, Sjjsj = model.ysjsj - model.tkze }, transaction);
                        }

                        transaction.Commit();
                        return(new ReturnModel {
                            Code = 200, Msg = "提交成功"
                        });
                    }
                    catch (Exception ex)
                    {
                        transaction.Rollback();
                        Log.WriteLog(ex.Message);
                        return(new ReturnModel {
                            Code = 201, Msg = "提交失败"
                        });
                    }
                }
            }
            catch (Exception ex)
            {
                Log.WriteLog(ex.Message);
                return(new ReturnModel {
                    Code = 201, Msg = "提交失败"
                });
            }
        }
Beispiel #3
0
        /// <summary>
        /// 插入
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        public ReturnModel Insert(Wjtm model)
        {
            try
            {
                //验证参数
                if (string.IsNullOrWhiteSpace(model.TMNR))
                {
                    return(new ReturnModel {
                        Code = 201, Msg = "题目内容不能为空"
                    });
                }
                if (model.ListTMXX == null || model.ListTMXX.Count < 2)
                {
                    return(new ReturnModel {
                        Code = 201, Msg = "题目选项少于2个"
                    });
                }
                //保存
                StringBuilder sbSql = new StringBuilder();
                using (IDbConnection conn = new DapperConnection().DbConnection)
                {
                    var transaction = conn.BeginTransaction();
                    try
                    {
                        sbSql.Append("SELECT MAX(PX) FROM WJ_WJTM WHERE WJID=@WJID");
                        int maxPx = Convert.ToInt32(conn.ExecuteScalar(sbSql.ToString(), model, transaction));
                        maxPx += 1;

                        sbSql.Clear();
                        model.PX = maxPx;
                        sbSql.Append("INSERT INTO WJ_WJTM(WJID, TMNR, PX, XGR, XGSJ, TMLX) VALUES (@WJID, @TMNR, @PX, @XGR, @XGSJ, @TMLX);select @@IDENTITY");
                        int tmid = Convert.ToInt32(conn.ExecuteScalar(sbSql.ToString(), model, transaction));
                        foreach (var xx in model.ListTMXX)
                        {
                            sbSql.Clear();
                            sbSql.Append("INSERT INTO WJ_TMXX(TMID, XXNR) VALUES(@TMID, @XXNR);select @@IDENTITY");
                            int xxid = Convert.ToInt32(conn.ExecuteScalar(sbSql.ToString(), new { TMID = tmid, XXNR = xx.XXNR }, transaction));
                            if (xx.ListTMXXBQ == null || xx.ListTMXXBQ.Count <= 0)
                            {
                                continue;
                            }
                            foreach (var bq in xx.ListTMXXBQ)
                            {
                                sbSql.Clear();
                                sbSql.Append("INSERT INTO WJ_TMXXBQ(XXID, BQID) VALUES(@XXID, @BQID)");
                                conn.Execute(sbSql.ToString(), new { XXID = xxid, BQID = bq.BQID }, transaction);
                            }
                        }
                        transaction.Commit();
                        return(new ReturnModel {
                            Code = 200, Msg = "保存成功"
                        });
                    }
                    catch (Exception e)
                    {
                        transaction.Rollback();
                        Log.WriteLog(e.Message);
                        return(new ReturnModel {
                            Code = 201, Msg = "保存失败"
                        });
                    }
                }
            }
            catch (Exception e)
            {
                Log.WriteLog(e.Message);
                return(new ReturnModel {
                    Code = 201, Msg = "保存失败"
                });
            }
        }
Beispiel #4
0
        /// <summary>
        /// 修改
        /// </summary>
        /// <returns></returns>
        public ReturnModel Update(Wjtm model)
        {
            try
            {
                //验证参数
                if (string.IsNullOrWhiteSpace(model.TMNR))
                {
                    return(new ReturnModel {
                        Code = 201, Msg = "题目内容不能为空"
                    });
                }
                if (model.ListTMXX == null || model.ListTMXX.Count < 2)
                {
                    return(new ReturnModel {
                        Code = 201, Msg = "题目选项少于2个"
                    });
                }
                StringBuilder sbSql = new StringBuilder();
                using (IDbConnection conn = new DapperConnection().DbConnection)
                {
                    var transaction = conn.BeginTransaction();
                    try
                    {
                        //判断题目存在
                        sbSql.Append("SELECT * FROM WJ_WJTM WHERE Id=@Id");
                        Wjtm existModel = conn.QueryFirstOrDefault <Wjtm>(sbSql.ToString(), new { Id = model.ID }, transaction);
                        if (existModel == null)
                        {
                            return(new ReturnModel {
                                Code = 201, Msg = "题目不存在"
                            });
                        }

                        //保存题目
                        sbSql.Clear();
                        sbSql.Append("UPDATE WJ_WJTM SET TMNR = @TMNR, XGR = @XGR, XGSJ = @XGSJ, TMLX = @TMLX WHERE ID = @ID");
                        conn.Execute(sbSql.ToString(), model, transaction);

                        //保存选项
                        foreach (var xx in model.ListTMXX)
                        {
                            //删除选项标签
                            sbSql.Clear();
                            sbSql.Append("DELETE FROM WJ_TMXXBQ WHERE XXID IN (SELECT ID FROM WJ_TMXX WHERE TMID=@TMID);");
                            conn.Execute(sbSql.ToString(), new { TMID = xx.ID }, transaction);

                            //删除选项
                            sbSql.Clear();
                            sbSql.Append("DELETE FROM WJ_TMXX WHERE TMID=@TMID;");
                            conn.Execute(sbSql.ToString(), new { TMID = model.ID }, transaction);

                            //重新插入选项
                            sbSql.Clear();
                            sbSql.Append("INSERT INTO WJ_TMXX(TMID, XXNR) VALUES(@TMID, @XXNR);select @@IDENTITY");
                            int xxid = Convert.ToInt32(conn.ExecuteScalar(sbSql.ToString(), new { TMID = model.ID, XXNR = xx.XXNR }, transaction));

                            //重新插入标签
                            foreach (var bq in xx.ListTMXXBQ)
                            {
                                sbSql.Clear();
                                sbSql.Append("INSERT INTO WJ_TMXXBQ(XXID, BQID) VALUES(@XXID, @BQID)");
                                conn.Execute(sbSql.ToString(), new { XXID = xxid, BQID = bq.BQID }, transaction);
                            }
                        }
                        transaction.Commit();
                        return(new ReturnModel {
                            Code = 200, Msg = "保存成功"
                        });
                    }
                    catch (Exception e)
                    {
                        transaction.Rollback();
                        Log.WriteLog(e.Message);
                        return(new ReturnModel {
                            Code = 201, Msg = "保存失败"
                        });
                    }
                }
            }
            catch (Exception e)
            {
                Log.WriteLog(e.Message);
                return(new ReturnModel {
                    Code = 201, Msg = "保存失败"
                });
            }
        }
Beispiel #5
0
        /// <summary>
        /// 插入
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        public ReturnModel Insert(Wjgz model)
        {
            try
            {
                //验证参数
                if (string.IsNullOrWhiteSpace(model.GZMC))
                {
                    return(new ReturnModel {
                        Code = 201, Msg = "规则名称不能为空"
                    });
                }

                //保存
                StringBuilder sbSql = new StringBuilder();
                using (IDbConnection conn = new DapperConnection().DbConnection)
                {
                    var transaction = conn.BeginTransaction();
                    try
                    {
                        //判断重名
                        sbSql.Append("SELECT * FROM WJ_GZ WHERE GZMC=@GZMC and SFQY=1");
                        Wjgz sameName = conn.QueryFirstOrDefault <Wjgz>(sbSql.ToString(), model, transaction);
                        if (sameName != null)
                        {
                            return(new ReturnModel {
                                Code = 201, Msg = "存在相同名称的规则"
                            });
                        }

                        sbSql.Clear();
                        model.SFQY = 1;
                        sbSql.Append("INSERT INTO WJ_GZ(GZMC, ZXNL, ZDNL, SFQY, XB) VALUES (@GZMC, @ZXNL, @ZDNL, @SFQY, @XB);select @@IDENTITY");
                        int gzid = Convert.ToInt32(conn.ExecuteScalar(sbSql.ToString(), model, transaction));
                        if (!string.IsNullOrWhiteSpace(model.XZBQ))
                        {
                            List <string> lstBq = model.XZBQ.Split(new string[] { "," }, StringSplitOptions.RemoveEmptyEntries).ToList();
                            foreach (var item in lstBq)
                            {
                                sbSql.Clear();
                                sbSql.Append("INSERT INTO WJ_GZMX(GZID, BQID) VALUES(@GZID, @BQID)");
                                conn.Execute(sbSql.ToString(), new { GZID = gzid, BQID = item }, transaction);
                            }
                        }
                        transaction.Commit();
                        return(new ReturnModel {
                            Code = 200, Msg = "保存成功"
                        });
                    }
                    catch (Exception e)
                    {
                        transaction.Rollback();
                        Log.WriteLog(e.Message);
                        return(new ReturnModel {
                            Code = 201, Msg = "保存失败"
                        });
                    }
                }
            }
            catch (Exception e)
            {
                Log.WriteLog(e.Message);
                return(new ReturnModel {
                    Code = 201, Msg = "保存失败"
                });
            }
        }