using Dapper; using dccdc.Models; using System; using System.Collections.Generic; using System.Data; using System.Linq; using System.Text; using System.Threading.Tasks; namespace dccdc.DAL { public class szyd_zjsysqDal { public int getCountLevel(string where) { string sql = "select count(1) from dbo.szyd_zjsysq"; if (!string.IsNullOrEmpty(where)) { sql += " where " + where; } using (IDbConnection conn = CommHelper.GetSqlConnection()) { return conn.ExecuteScalar(sql); } } public List getPageLevel(int page, int pagesize, string where) { string sql = "select *,row_number() over(order by id desc) as rownum from szyd_zjsysq"; if (!string.IsNullOrEmpty(where)) { sql += " where " + where; } sql = "select * from (" + sql + ") t where t.rownum>(" + page + "-1)*" + pagesize + " and rownum<=" + page + "*" + pagesize; using (IDbConnection conn = CommHelper.GetSqlConnection()) { return conn.Query(sql).ToList(); } } private string getszydsqdh(out string errmsg) { errmsg = ""; string result = ""; string start = DateTime.Now.ToString("yyyyMM") + "0001"; string end = DateTime.Now.ToString("yyyyMM") + "9999"; using (IDbConnection conn = CommHelper.GetSqlConnection()) { string sql = "select top 1 sqdh from szyd_zjsysq where sqdh >= '" + start + "' and sqdh<= '" + end + "' order by id desc"; try { var result2 = conn.ExecuteScalar(sql); if (result2 == null) result = start; else { result = (Convert.ToInt32(result2) + 1).ToString(); if (result == end) errmsg = "单号不足!"; } } catch (Exception ex) { errmsg = ex.Message; } } return result; } public List GetAllList(string id) { using (IDbConnection conn = CommHelper.GetSqlConnection()) { string sql = "select * from szyd_zjsysq where 1=1"; if (!string.IsNullOrEmpty(id)) { sql += " and id=@id"; } return conn.Query(sql, new { @id = id }).ToList(); } } public object szyd_sqdSave(string id, int ksid, string ksmc, int sqrid, string sqr, string je, string nr, string zjxz, string fyly1, string fyly2, string cgfs, string yjsysj, int zt, string del) { string errmsg = ""; string sqdh = getszydsqdh(out errmsg); if (errmsg != "") return new { State = 0, Message = "false" }; szyd_zjsysqModel model = new szyd_zjsysqModel(); model.sqdh = sqdh; model.sqrid = sqrid; model.sqr = sqr; model.sqsj = DateTime.Now; model.tjsj = DateTime.Now; model.ksid = ksid; model.ksmc = ksmc; model.je = Convert.ToDecimal(je); model.nr = nr; model.zjxz = zjxz; model.fyly1 = Convert.ToBoolean(fyly1); model.fyly2 = Convert.ToBoolean(fyly2); model.cgfs = cgfs; model.yjsysj = Convert.ToDateTime(yjsysj); model.mx = ""; model.zt = zt; if (model.zt == 7) { model.zt = 3; //三重一大7变成3 } model.del = 0; model.sort = "单独添加"; if (!string.IsNullOrEmpty(del)) { model.del = 1; model.sort = "等待确认"; } string sql = @"INSERT INTO [dbo].[szyd_zjsysq] ([sqdh],[sqsj],[tjsj],[sqrid],[sqr],[ksid],[ksmc],[je],[nr],[zjxz],[fyly1],[fyly2],[cgfs],[yjsysj],[mx],[zt],[del],[sort]) VALUES (@sqdh,@sqsj,@tjsj,@sqrid,@sqr,@ksid,@ksmc,@je,@nr,@zjxz,@fyly1,@fyly2,@cgfs,@yjsysj,@mx,@zt,@del,@sort)select SCOPE_IDENTITY()"; int sqdid = 0; using (IDbConnection conn = CommHelper.GetSqlConnection()) { try { sqdid = conn.Query(sql, model).FirstOrDefault(); return new { State = 1, Message = "操作成功", id = sqdid }; } catch (Exception ex) { return new { State = 0, Message = ex.Message }; } } } public object szyd_sqdSave2(string id, int ksid, string ksmc, int sqrid, string sqr, string je, string nr, string zjxz, string fyly1, string fyly2, string cgfs, string yjsysj, int zt) { szyd_zjsysqModel model = new szyd_zjsysqModel(); model.id = Convert.ToInt32(id); model.je = Convert.ToDecimal(je); model.nr = nr; model.zjxz = zjxz; model.fyly1 = Convert.ToBoolean(fyly1); model.fyly2 = Convert.ToBoolean(fyly2); model.cgfs = cgfs; model.yjsysj = Convert.ToDateTime(yjsysj); model.zt = zt; if (model.zt == 7) { model.zt = 3; //三重一大7变成3 } string sql = @"UPDATE [dbo].[szyd_zjsysq] SET [je] = @je,[nr] = @nr,[zjxz] = @zjxz,[fyly1] = @fyly1,[fyly2] = @fyly2,[cgfs] = @cgfs,[yjsysj] = @yjsysj,[zt] = @zt WHERE id=@id"; using (IDbConnection conn = CommHelper.GetSqlConnection()) { try { conn.Execute(sql, model); return new { State = 1, Message = "修改成功", id = id }; } catch (Exception ex) { return new { State = 0, Message = ex.Message }; } } } public object delete(string id) { string sql = "delete from szyd_zjsysq where id=@id"; using (IDbConnection conn = CommHelper.GetSqlConnection()) { try { //删除之前获取明细 int result = conn.Execute(sql, new { id = id }); if (result > 0) { return new { State = 1, Message = "操作成功!" }; } else return new { State = 0, Message = "操作失败!" }; } catch (Exception ex) { return new { State = 0, Message = ex.Message }; } } } public object opSzydSp(string id, int sprid, string spr, string yj, bool ty) { using (IDbConnection conn = CommHelper.GetSqlConnection()) { string sql2 = "select * from szyd_zjsysq where 1=1"; if (!string.IsNullOrEmpty(id)) { sql2 += " and id=@id"; } szyd_zjsysqModel model = conn.Query(sql2, new { @id = id }).FirstOrDefault(); if (model == null) return new { State = 0, Message = "不存在记录" }; else { string sql = ""; int zt = 0; switch (model.zt) { case 1: sql = "update szyd_zjsysq set mx='', sprid1=@sprid, spr1=@spr,sptime1=@sptime,spnr1=@spnr,zt=@zt where id=@id"; if (ty) { zt = 2; } else { zt = -1; } break; case 2: sql = "update szyd_zjsysq set sprid2=@sprid, spr2=@spr,sptime2=@sptime,spnr2=@spnr,zt=@zt where id=@id"; if (ty) { zt = 3; } else { zt = -2; } break; case 3: sql = "update szyd_zjsysq set sprid3=@sprid, spr3=@spr,sptime3=@sptime,spnr3=@spnr,zt=@zt where id=@id"; //if (ty) { zt = 4; } else { zt = -3; } //跳过会签 if (ty) { zt = 5; } else { zt = -3; } break; case 4: //会签特殊 int hqCount = model.mx.Split(new string[] { "
" }, StringSplitOptions.RemoveEmptyEntries).Length; if (hqCount >= 4) { sql = "update szyd_zjsysq set mx=mx+@mx, sprid4=@sprid,spr4=@spr,sptime4=@sptime,spnr4=@spnr,zt=@zt where id=@id"; if (ty) { zt = 5; } else { zt = -4; } } else { sql = "update szyd_zjsysq set mx=mx+@mx,zt=@zt where id=@id"; if (ty) { zt = 4; } else { zt = -4; } } break; case 5: sql = "update szyd_zjsysq set sprid5=@sprid,spr5=@spr,sptime5=@sptime,spnr5=@spnr,zt=@zt where id=@id"; if (ty) { zt = 7; } else { zt = -5; } break; case 7: sql = "update szyd_zjsysq set sprid6=@sprid,spr6=@spr,sptime6=@sptime,spnr6=@spnr,zt=@zt where id=@id"; if (ty) { zt = 8; } else { zt = -7; } break; } try { int result = conn.Execute(sql, new { @id = id, @sprid = sprid, @spr = spr, @sptime = DateTime.Now, @spnr = yj, @zt = zt, @mx = spr + " (会签) " + DateTime.Now.ToString() + " " + yj + "
" }); if (result > 0) { return new { State = 1, Message = "修改成功" }; } else return new { State = 0, Message = "修改失败" }; } catch (Exception ex) { return new { State = 0, Message = ex.Message }; } } } } public object opSpOneself(string id, int sprid, string spr, string yj, bool ty, string zw) { using (IDbConnection conn = CommHelper.GetSqlConnection()) { string sql2 = "select * from szyd_zjsysq where 1=1"; if (!string.IsNullOrEmpty(id)) { sql2 += " and id=@id"; } szyd_zjsysqModel model = conn.Query(sql2, new { @id = id }).FirstOrDefault(); if (model == null) return new { State = 0, Message = "不存在记录" }; else { string sql = ""; switch (zw) { case "科室领导": sql = "update szyd_zjsysq set sprid1=@sprid, spr1=@spr,sptime1=@sptime,spnr1=@spnr where id=@id"; break; case "分管领导": sql = "update szyd_zjsysq set sprid2=@sprid, spr2=@spr,sptime2=@sptime,spnr2=@spnr where id=@id"; break; } try { int result = conn.Execute(sql, new { @id = id, @sprid = sprid, @spr = spr, @sptime = DateTime.Now, @spnr = yj, @mx = spr + " (会签) " + DateTime.Now.ToString() + " " + yj + "
" }); if (result > 0) { return new { State = 1, Message = "修改成功" }; } else return new { State = 0, Message = "修改失败" }; } catch (Exception ex) { return new { State = 0, Message = ex.Message }; } } } } public object opQd(string id, string sort, string sortid, int del) { szyd_zjsysqModel model = new szyd_zjsysqModel(); model.id = Convert.ToInt32(id); model.sort = sort; model.sortid = Convert.ToInt32(sortid); model.del = del; string sql = @"UPDATE [dbo].[szyd_zjsysq] SET [sort] = @sort,[sortid] = @sortid,[del] = @del WHERE id=@id and del=1"; using (IDbConnection conn = CommHelper.GetSqlConnection()) { try { int result = conn.Execute(sql, model); if (result > 0) { return new { State = 1, Message = "修改成功" }; } else return new { State = 0, Message = "修改失败" }; } catch (Exception ex) { return new { State = 0, Message = ex.Message }; } } } } }