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); } }
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(); } } }