public BsTableDataSource <ADCDQRCodeViewModel> POST(NoVerifyQRCodeList request) { return(NoVerifyZZTXManager.QRCodeList(request)); }
public BsTableDataSource <ADCDQRCodeViewModel> QRCodeList(NoVerifyQRCodeList request) { //if (string.IsNullOrEmpty(adcd)) throw new Exception("adcd无效"); var _adcd = string.IsNullOrEmpty(request.adcd) ? adcd : request.adcd; var _year = request.year == null ? DateTime.Now.Year : request.year; using (var db = DbFactory.Open()) { var builder = db.From <ADCDInfo>(); builder.LeftJoin <ADCDInfo, ADCDQRCode>((x, y) => x.adcd == y.adcd); builder.Where(w => w.adcd.Contains(_adcd.Substring(0, 9)) && w.adcd != _adcd); if (!string.IsNullOrEmpty(request.adnm)) { builder.Where(w => w.adnm.Contains(request.adnm)); } builder.Select(" ADCDQRCode.id,ADCDQRCode.qrpath,ADCDQRCode.qrname,ADCDInfo.adcd,ADCDInfo.adnm"); var count = db.Count(builder); if (!string.IsNullOrEmpty(request.Sort) && !string.IsNullOrEmpty(request.Order) && request.Order == "asc") { builder.OrderBy(o => request.Sort); } else if (!string.IsNullOrEmpty(request.Sort) && !string.IsNullOrEmpty(request.Order) && request.Order == "desc") { builder.OrderByDescending(o => request.Sort); } else { builder.OrderBy(o => o.adcd); } //var rows = request.PageSize == 0 ? 10 : request.PageSize; //var skip = request.PageIndex == 0 ? 0 : request.PageIndex * rows; //builder.Limit(skip, rows); var RList = db.Select <ADCDQRCodeViewModel>(builder); if (!string.IsNullOrEmpty(request.adcds)) { List <ADCDQRCodeViewModel> lstqrcode = new List <ADCDQRCodeViewModel>(); var A = request.adcds.Split(','); for (var i = 0; i < A.Length; i++) { var f = RList.Single(w => w.adcd == A[i]); if (f != null) { ADCDQRCode qrcode = new ADCDQRCode(); qrcode.adcd = f.adcd; var filename = f.adnm + f.adcd.Substring(9, 3); if (string.IsNullOrEmpty(f.qrpath)) { //新增 string str = ConfigurationManager.AppSettings["QRCodeUrl"].ToString() + "?a=" + f.adcd + ""; qrcode.qrpath = QRCodeHelper.GetQRCode(str, RealName, filename); qrcode.qrname = filename; db.Insert(qrcode); } else { //删除 var filepath = System.Web.HttpContext.Current.Server.MapPath("~/" + f.qrpath); File.Delete(filepath); string str = ConfigurationManager.AppSettings["QRCodeUrl"].ToString() + "?a=" + f.adcd + ""; qrcode.qrpath = QRCodeHelper.GetQRCode(str, RealName, filename); qrcode.qrname = filename; db.Update <ADCDQRCode>(qrcode, w => w.adcd == f.adcd); } ADCDQRCodeViewModel qrv = new ADCDQRCodeViewModel() { adcd = f.adcd, adnm = f.adnm, qrname = f.qrname, qrpath = qrcode.qrpath }; lstqrcode.Add(qrv); } } return(new BsTableDataSource <ADCDQRCodeViewModel>() { rows = lstqrcode, total = lstqrcode.Count() }); } return(new BsTableDataSource <ADCDQRCodeViewModel>() { rows = RList, total = count }); } }