SqlSugar的Left Join

  public ActionResult Logistics_Page(string StartTime, string EndTime, string LogisticsType, string LogisticsNo, int pageIndex, int pageSize)
        {
            string json = "[]";
            try
            {
                int total = 0;
                int allPage = 1;

                DataTable dt = sugar._db.Queryable<LogisticsNoImport, WdtStockoutOrder, WdtStockoutDetails>((a, b, c) => new JoinQueryInfos(
                    JoinType.Left, a.LogisticsNo == b.LogisticsNo,
                    JoinType.Left, c.StockoutId == b.StockoutId))
                    .Select((a, b, c) => new
                    {
                        运单号 = a.LogisticsNo,
                        京仓云仓 = a.LogisticsType,
                        导入时间 = a.UpdateTime,
                        所属店铺 = b.ShopName,
                        ERP系统订单编号 = b.SrcOrderNo,
                        原始订单号 = c.SrcTid,
                        原始子订单号 = c.SrcOid,
                        出库时间 = b.ConsignTime
                    })
                    .Distinct()
                //可选查询条件
                //.WhereIF(!string.IsNullOrWhiteSpace(LogisticsType), " a.LogisticsType = '" + LogisticsType + "' ")
                //.WhereIF(!string.IsNullOrWhiteSpace(LogisticsNo), " a.LogisticsNo = '" + LogisticsNo + "' ")
                .WhereIF(!string.IsNullOrWhiteSpace(LogisticsType), " a.LogisticsType LIKE '%" + LogisticsType + "%' ")
                .WhereIF(!string.IsNullOrWhiteSpace(LogisticsNo), " a.LogisticsNo IN (" + FormatLogisticsNo(LogisticsNo) + ") ")
                //必须查询条件
                .Where(" a.UpdateTime >='" + DateTime.Parse(StartTime).ToString("yyyy-MM-dd") + "'")
                .Where(" a.UpdateTime < '" + DateTime.Parse(EndTime).AddDays(1).ToString("yyyy-MM-dd") + "'")
                .OrderBy("a.LogisticsNo asc")
                .ToDataTablePage(pageIndex, pageSize, ref total, ref allPage);

                json = JsonConvert.SerializeObject(new { total = total, allPage = allPage, data = dt, });
            }
            catch { }
            return Content(json);
        }

我写给我自己看的,我能看懂就行,下次遇到同样的问题,我自己翻出来复制一下再改改

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值