예제 #1
0
        public PqQytDto GetModel(string pqbh)
        {
            string sql = "SELECT * FROM dbo.pq_qy WHERE pqbh=@pqbh";

            using (IDbConnection conn = new DapperConnection().DbConnection)
            {
                PqQytDto model = conn.QueryFirstOrDefault <PqQytDto>(sql, new { pqbh = pqbh });
                sql            = "SELECT * FROM dbo.pq_qy_pjtc WHERE pqbh=@pqbh";
                model.pjtcList = conn.Query <PqQyPjtcModel>(sql, new { pqbh = pqbh }).ToList();
                return(model);
            }
        }
예제 #2
0
        public void Save(PqQytDto model)
        {
            using (IDbConnection conn = new DapperConnection().DbConnection)
            {
                IDbTransaction transaction = conn.BeginTransaction();
                try
                {
                    StringBuilder strSql = new StringBuilder();
                    if (!string.IsNullOrEmpty(model.pqbh))
                    {
                        strSql.Append("DELETE FROM dbo.pq_qy_rq WHERE pqbh=@pqbh;");
                        strSql.Append("DELETE FROM dbo.pq_qy_pjtc WHERE pqbh=@pqbh;");
                        strSql.Append("UPDATE dbo.pq_qy SET ksrq=@ksrq,jsrq=@jsrq,jzsj=@jzsj,xxr=@xxr,tqts=@tqts,tjrs=@tjrs WHERE pqbh=@pqbh");
                    }
                    else
                    {
                        model.pqbh = GetPqbh();
                        strSql.Append("insert into pq_qy(pqbh,yybh,qdid,ksrq,jsrq,cjsj,jzsj,xxr,tqts,tjrs) values (@pqbh,@yybh,@qdid,@ksrq,@jsrq,@cjsj,@jzsj,@xxr,@tqts,@tjrs);");
                    }
                    conn.Execute(strSql.ToString(), model, transaction);
                    strSql.Clear();


                    foreach (var item in model.pjtcList)
                    {
                        strSql.Append("insert into pq_qy_pjtc(");
                        strSql.Append("pqbh,tcbh,tjrs)");
                        strSql.Append(" values (");
                        strSql.Append("@pqbh,@tcbh,@tjrs)");
                        item.pqbh = model.pqbh;
                        conn.Execute(strSql.ToString(), item, transaction);
                        strSql.Clear();
                    }


                    for (int i = 0; i < model.jsrq.Subtract(model.ksrq).TotalDays + 1; i++)
                    {
                        DateTime rq = model.ksrq.AddDays(i);

                        PqQyRqModel rqModel = new PqQyRqModel();
                        rqModel.pqbh = model.pqbh;
                        rqModel.qdid = model.qdid;
                        rqModel.rq   = model.ksrq.AddDays(i);
                        rqModel.tjrs = model.tjrs;
                        rqModel.yybh = model.yybh;
                        rqModel.flag = GetFlag(model.ksrq.AddDays(i), model.xxr);

                        strSql.Append("insert into pq_qy_rq(");
                        strSql.Append("pqbh,yybh,qdid,rq,tjrs,flag)");
                        strSql.Append(" values (");
                        strSql.Append("@pqbh,@yybh,@qdid,@rq,@tjrs,@flag)");
                        conn.Execute(strSql.ToString(), rqModel, transaction);
                        strSql.Clear();
                    }
                    transaction.Commit();
                }
                catch (Exception ex)
                {
                    transaction.Rollback();
                }
            }
        }