| | |
| | | /// </summary> |
| | | [Description("退货")] |
| | | ReturnedGoods = 5, |
| | | |
| | | /// <summary> |
| | | /// 铺货盘点 |
| | | /// </summary> |
| | | [Description("铺货盘点")] |
| | | CheckPuhuo = 6, |
| | | } |
| | | |
| | | #endregion |
| | |
| | | /// </summary> |
| | | /// <param name="entity"></param> |
| | | /// <returns></returns> |
| | | Task<AdminUiCallBack> InsertAsync(FMCreateStock entity); |
| | | Task<AdminUiCallBack> InsertAsync(FMCreateStock entity, string username, CoreCmsDistribution distribution); |
| | | |
| | | #endregion |
| | | } |
| | |
| | | /// <returns></returns> |
| | | Task<IPageList<Puhuo>> QueryPageGroupAsync( |
| | | Expression<Func<Puhuo, bool>> predicate, |
| | | Expression<Func<Puhuo, object>> orderByExpression, OrderByType orderByType, int pageIndex = 1, |
| | | Expression<Func<Puhuo, object>> orderByExpression, OrderByType orderByType, OtherData otherData, int pageIndex = 1, |
| | | int pageSize = 20, bool blUseNoLock = false); |
| | | |
| | | } |
New file |
| | |
| | | /*********************************************************************** |
| | | * Project: baifenBinfa |
| | | * ProjectName: 百分兵法管理系统 |
| | | * Web: http://chuanyin.com |
| | | * Author: |
| | | * Email: |
| | | * CreateTime: 2024/6/25 13:17:00 |
| | | * Description: 暂无 |
| | | ***********************************************************************/ |
| | | |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using System.Linq.Expressions; |
| | | using System.Threading.Tasks; |
| | | using CoreCms.Net.Model.Entities; |
| | | using CoreCms.Net.Model.Entities.baifenbingfa.puhuo; |
| | | using CoreCms.Net.Model.ViewModels.Basics; |
| | | using CoreCms.Net.Model.ViewModels.UI; |
| | | using SqlSugar; |
| | | |
| | | |
| | | namespace CoreCms.Net.IRepository |
| | | { |
| | | /// <summary> |
| | | /// 铺货 工厂接口 |
| | | /// </summary> |
| | | public interface IPuhuoShoukuanRepository : IBaseRepository<PuhuoShoukuan> |
| | | { |
| | | #region 重写增删改查操作=========================================================== |
| | | |
| | | /// <summary> |
| | | /// 重写异步插入方法 |
| | | /// </summary> |
| | | /// <param name="entity"></param> |
| | | /// <returns></returns> |
| | | Task<AdminUiCallBack> InsertAsync(PuhuoShoukuan entity); |
| | | |
| | | |
| | | /// <summary> |
| | | /// 重写异步更新方法 |
| | | /// </summary> |
| | | /// <param name="entity"></param> |
| | | /// <returns></returns> |
| | | Task<AdminUiCallBack> UpdateAsync(PuhuoShoukuan entity); |
| | | |
| | | |
| | | /// <summary> |
| | | /// 重写异步更新方法 |
| | | /// </summary> |
| | | /// <param name="entity"></param> |
| | | /// <returns></returns> |
| | | Task<AdminUiCallBack> UpdateAsync(List<PuhuoShoukuan> entity); |
| | | |
| | | |
| | | /// <summary> |
| | | /// 重写删除指定ID的数据 |
| | | /// </summary> |
| | | /// <param name="id"></param> |
| | | /// <returns></returns> |
| | | Task<AdminUiCallBack> DeleteByIdAsync(object id); |
| | | |
| | | |
| | | /// <summary> |
| | | /// 重写删除指定ID集合的数据(批量删除) |
| | | /// </summary> |
| | | /// <param name="ids"></param> |
| | | /// <returns></returns> |
| | | Task<AdminUiCallBack> DeleteByIdsAsync(int[] ids); |
| | | |
| | | #endregion |
| | | |
| | | #region 获取缓存的所有数据========================================================== |
| | | |
| | | /// <summary> |
| | | /// 获取缓存的所有数据 |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | Task<List<PuhuoShoukuan>> GetCaChe(); |
| | | |
| | | #endregion |
| | | |
| | | |
| | | /// <summary> |
| | | /// 重写根据条件查询分页数据 |
| | | /// </summary> |
| | | /// <param name="predicate">判断集合</param> |
| | | /// <param name="orderByType">排序方式</param> |
| | | /// <param name="pageIndex">当前页面索引</param> |
| | | /// <param name="pageSize">分布大小</param> |
| | | /// <param name="orderByExpression"></param> |
| | | /// <param name="blUseNoLock">是否使用WITH(NOLOCK)</param> |
| | | /// <returns></returns> |
| | | Task<IPageList<PuhuoShoukuan>> QueryPageAsync( |
| | | Expression<Func<PuhuoShoukuan, bool>> predicate, |
| | | Expression<Func<PuhuoShoukuan, object>> orderByExpression, OrderByType orderByType, OtherData otherData, int pageIndex = 1, |
| | | int pageSize = 20, bool blUseNoLock = false); |
| | | |
| | | } |
| | | } |
| | |
| | | /// </summary> |
| | | /// <param name="entity"></param> |
| | | /// <returns></returns> |
| | | Task<AdminUiCallBack> InsertAsync(FMCreateStock entity); |
| | | Task<AdminUiCallBack> InsertAsync(FMCreateStock entity, string username, CoreCmsDistribution distribution); |
| | | |
| | | #endregion |
| | | } |
| | |
| | | /// <returns></returns> |
| | | Task<IPageList<Puhuo>> QueryPageGroupAsync( |
| | | Expression<Func<Puhuo, bool>> predicate, |
| | | Expression<Func<Puhuo, object>> orderByExpression, OrderByType orderByType, int pageIndex = 1, |
| | | Expression<Func<Puhuo, object>> orderByExpression, OrderByType orderByType, OtherData otherData, int pageIndex = 1, |
| | | int pageSize = 20, bool blUseNoLock = false); |
| | | #endregion |
| | | } |
New file |
| | |
| | | /*********************************************************************** |
| | | * Project: baifenBinfa |
| | | * ProjectName: 百分兵法管理系统 |
| | | * Web: http://chuanyin.com |
| | | * Author: |
| | | * Email: |
| | | * CreateTime: 2024/6/25 13:17:00 |
| | | * Description: 暂无 |
| | | ***********************************************************************/ |
| | | |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using System.Linq.Expressions; |
| | | using System.Threading.Tasks; |
| | | using CoreCms.Net.Model.Entities; |
| | | using CoreCms.Net.Model.Entities.baifenbingfa.puhuo; |
| | | using CoreCms.Net.Model.ViewModels.Basics; |
| | | using CoreCms.Net.Model.ViewModels.UI; |
| | | using SqlSugar; |
| | | |
| | | namespace CoreCms.Net.IServices |
| | | { |
| | | /// <summary> |
| | | /// 铺货 服务工厂接口 |
| | | /// </summary> |
| | | public interface IPuhuoShoukuanServices : IBaseServices<PuhuoShoukuan> |
| | | { |
| | | #region 重写增删改查操作=========================================================== |
| | | |
| | | /// <summary> |
| | | /// 重写异步插入方法 |
| | | /// </summary> |
| | | /// <param name="entity"></param> |
| | | /// <returns></returns> |
| | | Task<AdminUiCallBack> InsertAsync(PuhuoShoukuan entity); |
| | | |
| | | /// <summary> |
| | | /// 重写异步更新方法 |
| | | /// </summary> |
| | | /// <param name="entity"></param> |
| | | /// <returns></returns> |
| | | Task<AdminUiCallBack> UpdateAsync(PuhuoShoukuan entity); |
| | | |
| | | /// <summary> |
| | | /// 重写异步更新方法 |
| | | /// </summary> |
| | | /// <param name="entity"></param> |
| | | /// <returns></returns> |
| | | Task<AdminUiCallBack> UpdateAsync(List<PuhuoShoukuan> entity); |
| | | |
| | | /// <summary> |
| | | /// 重写删除指定ID的数据 |
| | | /// </summary> |
| | | /// <param name="id"></param> |
| | | /// <returns></returns> |
| | | Task<AdminUiCallBack> DeleteByIdAsync(object id); |
| | | |
| | | /// <summary> |
| | | /// 重写删除指定ID集合的数据(批量删除) |
| | | /// </summary> |
| | | /// <param name="ids"></param> |
| | | /// <returns></returns> |
| | | Task<AdminUiCallBack> DeleteByIdsAsync(int[] ids); |
| | | |
| | | #endregion |
| | | |
| | | |
| | | #region 获取缓存的所有数据========================================================== |
| | | |
| | | /// <summary> |
| | | /// 获取缓存的所有数据 |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | Task<List<PuhuoShoukuan>> GetCaChe(); |
| | | |
| | | #endregion |
| | | |
| | | #region 重写根据条件查询分页数据 |
| | | /// <summary> |
| | | /// 重写根据条件查询分页数据 |
| | | /// </summary> |
| | | /// <param name="predicate">判断集合</param> |
| | | /// <param name="orderByType">排序方式</param> |
| | | /// <param name="pageIndex">当前页面索引</param> |
| | | /// <param name="pageSize">分布大小</param> |
| | | /// <param name="orderByExpression"></param> |
| | | /// <param name="blUseNoLock">是否使用WITH(NOLOCK)</param> |
| | | /// <returns></returns> |
| | | Task<IPageList<PuhuoShoukuan>> QueryPageAsync( |
| | | Expression<Func<PuhuoShoukuan, bool>> predicate, |
| | | Expression<Func<PuhuoShoukuan, object>> orderByExpression, OrderByType orderByType, OtherData otherData, int pageIndex = 1, |
| | | int pageSize = 20, bool blUseNoLock = false); |
| | | #endregion |
| | | } |
| | | } |
| | |
| | | public bool isCustomizable { get; set; }=false; |
| | | |
| | | |
| | | |
| | | /// <summary> |
| | | /// 变动数量 |
| | | /// </summary> |
| | | [Display(Name = "变动数量")] |
| | | [SugarColumn(IsIgnore = true)] |
| | | public System.Int32 nums { get; set; } |
| | | |
| | | } |
| | | } |
| | |
| | | [Display(Name = "操作员昵称")] |
| | | [SugarColumn(IsIgnore = true)] |
| | | public string managerName { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 经销商id |
| | | /// </summary> |
| | | [Display(Name = "经销商id")] |
| | | [SugarColumn(IsIgnore = true)] |
| | | public int distributionId { get; set; } |
| | | } |
| | | } |
| | |
| | | /// <summary> |
| | | /// 铺货 |
| | | /// </summary> |
| | | |
| | | [SqlCodeFirst] |
| | | public class Puhuo : BFBaseModel |
| | | { |
| | | /// <summary> |
| | |
| | | public System.Int32 tiaozhengnums { get; set; } |
| | | |
| | | |
| | | /// <summary> |
| | | /// 学校名称 |
| | | /// </summary> |
| | | [Display(Name = "学校名称")] |
| | | [SugarColumn(IsIgnore = true)] |
| | | public string schoolName { get; set; } |
| | | |
| | | |
| | | /// <summary> |
| | | /// 收款数量 |
| | | /// </summary> |
| | | [Display(Name = "收款数量")] |
| | | [SugarColumn(ColumnDescription = "收款数量", IsNullable = true, DefaultValue = "0")] |
| | | public System.Int32? shoukuannums { get; set; } = 0; |
| | | /// <summary> |
| | | /// 金额 |
| | | /// </summary> |
| | | [Display(Name = "收款金额")] |
| | | [SugarColumn(ColumnDescription = "收款金额", IsNullable = true,DefaultValue = "0", Length = 18, DecimalDigits = 4)] |
| | | public System.Decimal? shoukuanamount { get; set; } = new decimal(0); |
| | | |
| | | |
| | | } |
| | | } |
New file |
| | |
| | | using Chuanyin.Attribute; |
| | | using CoreCms.Net.Model.Entities.baifenbingfa.jon; |
| | | using CoreCms.Net.Model.Entities.baseModel; |
| | | using SqlSugar; |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using System.ComponentModel.DataAnnotations; |
| | | using System.Linq; |
| | | using System.Text; |
| | | using System.Threading.Tasks; |
| | | |
| | | |
| | | namespace CoreCms.Net.Model.Entities.baifenbingfa.puhuo |
| | | { |
| | | /// <summary> |
| | | /// 铺货 |
| | | /// </summary> |
| | | [SqlCodeFirst] |
| | | public class PuhuoShoukuan : BFBaseModel |
| | | { |
| | | |
| | | /// <summary> |
| | | /// 主键ID,自增长 |
| | | /// </summary> |
| | | [SugarColumn(IsPrimaryKey = true, IsIdentity = true, ColumnDescription = "主键ID")] |
| | | public int id { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 铺货id |
| | | /// </summary> |
| | | public int puhuoId { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 经销商id |
| | | /// </summary> |
| | | public int distributionId { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 经销商 |
| | | /// </summary> |
| | | public string distributionName { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 区域 |
| | | /// </summary> |
| | | public string areaCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 区域名称 |
| | | /// </summary> |
| | | public string areaCodeName { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 商品分类id |
| | | /// </summary> |
| | | public int CategoryId { get; set; } |
| | | |
| | | |
| | | |
| | | /// <summary> |
| | | /// 商品分类 |
| | | /// </summary> |
| | | public string CategoryName { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 商品id |
| | | /// </summary> |
| | | public int goodsId { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 商品名称 |
| | | /// </summary> |
| | | public string goodsName { get; set; } |
| | | |
| | | |
| | | /// <summary> |
| | | /// 货品id |
| | | /// </summary> |
| | | public int productsId { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 货品编号 |
| | | /// </summary> |
| | | public string productsName { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 货品规格 |
| | | /// </summary> |
| | | public string spesDesc { get; set; } |
| | | |
| | | |
| | | /// <summary> |
| | | /// 货品价格 |
| | | /// </summary> |
| | | [Display(Name = "货品价格")] |
| | | |
| | | [Required(ErrorMessage = "请输入{0}")] |
| | | |
| | | |
| | | |
| | | public System.Decimal price { get; set; } |
| | | |
| | | |
| | | /// <summary> |
| | | /// 数量 |
| | | /// </summary> |
| | | [Display(Name = "数量")] |
| | | [SugarColumn(ColumnDescription = "数量")] |
| | | [Required(ErrorMessage = "请输入{0}")] |
| | | public System.Int32 nums { get; set; } |
| | | /// <summary> |
| | | /// 金额 |
| | | /// </summary> |
| | | [Display(Name = "金额")] |
| | | [SugarColumn(ColumnDescription = "金额")] |
| | | [Required(ErrorMessage = "请输入{0}")] |
| | | public System.Decimal amount { get; set; } |
| | | |
| | | |
| | | |
| | | /// <summary> |
| | | /// 铺货退货 |
| | | /// </summary> |
| | | [Display(Name = "铺货退货")] |
| | | [SugarColumn(IsIgnore = true)] |
| | | public System.Int32 jintui { get; set; } |
| | | |
| | | |
| | | /// <summary> |
| | | /// 调整数量 |
| | | /// </summary> |
| | | [Display(Name = "调整数量")] |
| | | [SugarColumn(IsIgnore = true)] |
| | | public System.Int32 tiaozhengnums { get; set; } |
| | | |
| | | |
| | | /// <summary> |
| | | /// 学校名称 |
| | | /// </summary> |
| | | [Display(Name = "学校名称")] |
| | | [SugarColumn(IsIgnore = true)] |
| | | public string schoolName { get; set; } |
| | | |
| | | |
| | | /// <summary> |
| | | /// 收款数量 |
| | | /// </summary> |
| | | [Display(Name = "收款数量")] |
| | | [SugarColumn(ColumnDescription = "收款数量" )] |
| | | public System.Int32 shoukuannums { get; set; } = 0; |
| | | /// <summary> |
| | | /// 金额 |
| | | /// </summary> |
| | | [Display(Name = "收款金额")] |
| | | [SugarColumn(ColumnDescription = "收款金额", Length = 18, DecimalDigits = 4)] |
| | | public System.Decimal shoukuanamount { get; set; } = new decimal(0); |
| | | |
| | | } |
| | | } |
| | |
| | | public object otherData { get; set; } |
| | | |
| | | public int count { get; set; } |
| | | |
| | | } |
| | | |
| | | public class OtherData |
| | | { |
| | | public decimal heji1 { get; set; } |
| | | public decimal heji2 { get; set; } |
| | | public decimal heji3 { get; set; } |
| | | |
| | | public decimal heji4 { get; set; } |
| | | public decimal heji5 { get; set; } |
| | | public decimal heji6 { get; set; } |
| | | } |
| | | } |
| | |
| | | using CoreCms.Net.Model.ViewModels.UI; |
| | | using CoreCms.Net.Utility.Helper; |
| | | using SqlSugar; |
| | | using CoreCms.Net.Model.Entities.baifenbingfa.puhuo; |
| | | |
| | | namespace CoreCms.Net.Repository |
| | | { |
| | |
| | | /// </summary> |
| | | /// <param name="entity">实体数据</param> |
| | | /// <returns></returns> |
| | | public async Task<AdminUiCallBack> InsertAsync(FMCreateStock entity) |
| | | public async Task<AdminUiCallBack> InsertAsync(FMCreateStock entity, string username, CoreCmsDistribution distribution) |
| | | { |
| | | var jm = new AdminUiCallBack(); |
| | | |
| | |
| | | { |
| | | stockModel.id = await CreateCode(GlobalEnumVars.StockType.Out.ToString()); |
| | | } |
| | | else if (entity.model.type == 3) |
| | | { |
| | | stockModel.id = await CreateCode(GlobalEnumVars.StockType.Out.ToString()); |
| | | } |
| | | else |
| | | { |
| | | jm.msg = "单据类型错误"; |
| | |
| | | stockModel.memo = entity.model.memo; |
| | | stockModel.createTime = DateTime.Now; |
| | | stockModel.manager = entity.model.manager; |
| | | stockModel.type = entity.model.type; |
| | | if (entity.model.type == 3 ) |
| | | { |
| | | if (stockModel.memo == "无") |
| | | { |
| | | stockModel.memo = ""; |
| | | } |
| | | stockModel.memo = distribution.name+ " 经销商铺货 " + stockModel.memo; |
| | | stockModel.type = 2; |
| | | } |
| | | else |
| | | { |
| | | stockModel.type = entity.model.type; |
| | | } |
| | | |
| | | |
| | | var logs = new List<CoreCmsStockLog>(); |
| | | var products = new List<CoreCmsProducts>(); |
| | |
| | | name = good.name, |
| | | bn = good.bn, |
| | | isMarketable = good.isMarketable, |
| | | unit = good.unit |
| | | unit = good.unit, |
| | | distributionPrice = p.distributionPrice, |
| | | CategoryID = good.goodsCategoryId, |
| | | }).With(SqlWith.NoLock) |
| | | .MergeTable() |
| | | .Where(p => p.id == item.productId).FirstAsync(); |
| | |
| | | return jm; |
| | | } |
| | | } |
| | | else if (entity.model.type == 3) |
| | | { |
| | | stock = product.stock - item.nums; |
| | | if (stock < 0) |
| | | { |
| | | jm.msg = $"第{index}个货品最大出库数量为:" + product.stock; |
| | | return jm; |
| | | } |
| | | } |
| | | product.nums = item.nums; |
| | | product.stock = stock; |
| | | products.Add(product); |
| | | |
| | |
| | | } |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | try |
| | | { |
| | | _unitOfWork.BeginTran(); |
| | |
| | | { |
| | | await DbClient.Insertable(logs).ExecuteCommandAsync(); |
| | | } |
| | | |
| | | //铺货 |
| | | if (entity.model.type == 3) |
| | | { |
| | | if (products.Any() && distribution != null) |
| | | { |
| | | foreach (var products1 in products) |
| | | { |
| | | var puhuo = await DbClient.Queryable<Puhuo>().Where(x => x.isdelete == false && x.productsId == products1.id && x.distributionId == entity.model.distributionId).FirstAsync(); |
| | | if (puhuo != null) |
| | | { |
| | | |
| | | puhuo.nums = puhuo.nums + products1.nums; |
| | | puhuo.price = products1.distributionPrice; |
| | | puhuo.amount = products1.distributionPrice * new decimal(puhuo.nums); |
| | | puhuo.isdelete = false; |
| | | //entity.createBy = username; |
| | | puhuo.upDataBy = username; |
| | | //entity.createTime = DateTime.Now; |
| | | puhuo.upDataTime = DateTime.Now; |
| | | await DbClient.Updateable<Puhuo>(puhuo).ExecuteCommandAsync(); |
| | | } |
| | | else |
| | | { |
| | | puhuo = new Puhuo(); |
| | | puhuo.distributionId = entity.model.distributionId; |
| | | puhuo.distributionName = distribution.name; |
| | | puhuo.areaCode = distribution.areaCode; |
| | | puhuo.areaCodeName = distribution.areaName; |
| | | |
| | | puhuo.CategoryId = products1.CategoryID??0; |
| | | //获取全部数据缓存 |
| | | var categorie = await DbClient.Queryable<CoreCmsGoodsCategory>().Where(x => x.id == puhuo.CategoryId).FirstAsync(); ; |
| | | if (categorie != null) |
| | | { |
| | | puhuo.CategoryName = categorie.name; |
| | | } |
| | | puhuo.goodsId = products1.goodsId; |
| | | puhuo.goodsName = products1.name; |
| | | puhuo.productsId = products1.id; |
| | | puhuo.productsName = products1.sn; |
| | | puhuo.spesDesc = products1.spesDesc; |
| | | puhuo.shoukuannums = 0; |
| | | puhuo.shoukuanamount = 0; |
| | | |
| | | |
| | | |
| | | puhuo.nums = puhuo.nums + products1.nums; |
| | | puhuo.price = products1.distributionPrice; |
| | | puhuo.amount = products1.distributionPrice * new decimal(puhuo.nums); |
| | | puhuo.isdelete = false; |
| | | puhuo.createBy = username; |
| | | puhuo.upDataBy = username; |
| | | puhuo.createTime = DateTime.Now; |
| | | puhuo.upDataTime = DateTime.Now; |
| | | await DbClient.Insertable<Puhuo>(puhuo).ExecuteCommandAsync(); |
| | | } |
| | | } |
| | | } |
| | | |
| | | |
| | | |
| | | } |
| | | |
| | | |
| | | jm.code = bl ? 0 : 1; |
| | | jm.msg = bl ? GlobalConstVars.CreateSuccess : GlobalConstVars.CreateFailure; |
| | | _unitOfWork.CommitTran(); |
| | |
| | | oldModel.createBy = entity.createBy; |
| | | oldModel.upDataBy = entity.upDataBy; |
| | | oldModel.isdelete = entity.isdelete; |
| | | |
| | | oldModel.shoukuannums = entity.shoukuannums; |
| | | oldModel.shoukuanamount = entity.shoukuanamount; |
| | | |
| | | //事物处理过程结束 |
| | | var bl = await DbClient.Updateable(oldModel).ExecuteCommandHasChangeAsync(); |
| | | jm.code = bl ? 0 : 1; |
| | |
| | | goodsId = p.goodsId, |
| | | goodsName = p.goodsName, |
| | | productsId = p.productsId, |
| | | productsName = p.productsName, |
| | | productsName = p.productsName +" " + p.spesDesc, |
| | | spesDesc = p.spesDesc, |
| | | price = p.price, |
| | | nums = p.nums, |
| | |
| | | goodsId = p.goodsId, |
| | | goodsName = p.goodsName, |
| | | productsId = p.productsId, |
| | | productsName = p.productsName, |
| | | productsName = p.productsName + " " + p.spesDesc, |
| | | spesDesc = p.spesDesc, |
| | | price = p.price, |
| | | nums = p.nums, |
| | |
| | | |
| | | }).ToPageListAsync(pageIndex, pageSize, totalCount); |
| | | } |
| | | |
| | | foreach (var puhuo in page) |
| | | { |
| | | var distribution = await DbClient.Queryable<CoreCmsDistribution>().In(puhuo.distributionId).WithNoLockOrNot(blUseNoLock).WithCacheIF(false).SingleAsync(); |
| | | if (distribution !=null) |
| | | { |
| | | puhuo.schoolName = distribution.schoolName; |
| | | } |
| | | } |
| | | |
| | | var list = new PageList<Puhuo>(page, pageIndex, pageSize, totalCount); |
| | | return list; |
| | | } |
| | |
| | | /// <param name="blUseNoLock">是否使用WITH(NOLOCK)</param> |
| | | /// <returns></returns> |
| | | public async Task<IPageList<Puhuo>> QueryPageGroupAsync(Expression<Func<Puhuo, bool>> predicate, |
| | | Expression<Func<Puhuo, object>> orderByExpression, OrderByType orderByType, int pageIndex = 1, |
| | | Expression<Func<Puhuo, object>> orderByExpression, OrderByType orderByType, OtherData otherData, int pageIndex = 1, |
| | | int pageSize = 20, bool blUseNoLock = false) |
| | | { |
| | | RefAsync<int> totalCount = 0; |
| | |
| | | if (blUseNoLock) |
| | | { |
| | | page = await DbClient.Queryable<Puhuo>() |
| | | .GroupBy(it => new { it.CategoryId, it.CategoryName, it.goodsId, it.goodsName, it.productsId, it.productsName, it.price }) |
| | | .GroupBy(it => new { it.CategoryId, it.CategoryName, it.goodsId, it.goodsName, it.productsId, it.productsName, it.price ,it.spesDesc }) |
| | | .WhereIF(predicate != null, predicate) |
| | | .Select(p => new Puhuo |
| | | { |
| | |
| | | goodsId = p.goodsId, |
| | | goodsName = p.goodsName, |
| | | productsId = p.productsId, |
| | | productsName = p.productsName, |
| | | productsName = p.productsName + " " + p.spesDesc, |
| | | price = p.price, |
| | | tiaozhengnums =SqlFunc.AggregateCount(p.id), |
| | | nums = SqlFunc.AggregateSum(p.nums), |
| | |
| | | .MergeTable()//需要加MergeTable才能排序统计过的列 |
| | | .OrderByIF(orderByExpression != null, orderByExpression, orderByType) |
| | | .With(SqlWith.NoLock).ToPageListAsync(pageIndex, pageSize, totalCount); |
| | | |
| | | |
| | | |
| | | } |
| | | else |
| | | { |
| | |
| | | goodsId = p.goodsId, |
| | | goodsName = p.goodsName, |
| | | productsId = p.productsId, |
| | | productsName = p.productsName, |
| | | productsName = p.productsName + " " + p.spesDesc, |
| | | price = p.price, |
| | | tiaozhengnums = SqlFunc.AggregateCount(p.id), |
| | | nums = SqlFunc.AggregateSum(p.nums), |
| | |
| | | .OrderByIF(orderByExpression != null, orderByExpression, orderByType) |
| | | .ToPageListAsync(pageIndex, pageSize, totalCount); |
| | | } |
| | | |
| | | |
| | | var pagetotal = DbClient.Queryable<Puhuo>() |
| | | // .GroupBy(it => new { it.CategoryId, it.CategoryName, it.goodsId, it.goodsName, it.productsId, it.productsName, it.price }) |
| | | .WhereIF(predicate != null, predicate) |
| | | .Select(p => new Puhuo |
| | | { |
| | | tiaozhengnums = SqlFunc.AggregateCount(p.id), |
| | | nums = SqlFunc.AggregateSum(p.nums), |
| | | amount = SqlFunc.AggregateSum(p.amount), |
| | | }) |
| | | .First(); // 或者使用 Single/FirstOrDefault 等方法获取结果 |
| | | //.Select(p => new Puhuo |
| | | //{ |
| | | // tiaozhengnums = SqlFunc.AggregateCount(p.id), |
| | | // nums = SqlFunc.AggregateSum(p.nums), |
| | | // amount = SqlFunc.AggregateSum(p.amount), |
| | | |
| | | |
| | | //}); |
| | | |
| | | otherData.heji4 = pagetotal.nums; |
| | | otherData.heji5 = pagetotal.amount; |
| | | otherData.heji6 = pagetotal.tiaozhengnums; |
| | | |
| | | var list = new PageList<Puhuo>(page, pageIndex, pageSize, totalCount); |
| | | return list; |
| | | } |
New file |
| | |
| | | /*********************************************************************** |
| | | * Project: baifenBinfa |
| | | * ProjectName: 百分兵法管理系统 |
| | | * Web: http://chuanyin.com |
| | | * Author: |
| | | * Email: |
| | | * CreateTime: 2024/6/25 13:17:00 |
| | | * Description: 暂无 |
| | | ***********************************************************************/ |
| | | |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using System.Linq.Expressions; |
| | | using System.Threading.Tasks; |
| | | using CoreCms.Net.Caching.Manual; |
| | | using CoreCms.Net.Configuration; |
| | | using CoreCms.Net.Model.Entities; |
| | | using CoreCms.Net.Model.ViewModels.Basics; |
| | | using CoreCms.Net.IRepository; |
| | | using CoreCms.Net.IRepository.UnitOfWork; |
| | | using CoreCms.Net.Model.ViewModels.UI; |
| | | using SqlSugar; |
| | | using CoreCms.Net.Model.Entities.baifenbingfa.puhuo; |
| | | |
| | | namespace CoreCms.Net.Repository |
| | | { |
| | | /// <summary> |
| | | /// 铺货 接口实现 |
| | | /// </summary> |
| | | public class PuhuoShoukuanRepository : BaseRepository<PuhuoShoukuan>, IPuhuoShoukuanRepository |
| | | { |
| | | private readonly IUnitOfWork _unitOfWork; |
| | | public PuhuoShoukuanRepository(IUnitOfWork unitOfWork) : base(unitOfWork) |
| | | { |
| | | _unitOfWork = unitOfWork; |
| | | } |
| | | |
| | | #region 实现重写增删改查操作========================================================== |
| | | |
| | | /// <summary> |
| | | /// 重写异步插入方法 |
| | | /// </summary> |
| | | /// <param name="entity">实体数据</param> |
| | | /// <returns></returns> |
| | | public async Task<AdminUiCallBack> InsertAsync(PuhuoShoukuan entity) |
| | | { |
| | | var jm = new AdminUiCallBack(); |
| | | |
| | | var bl = await DbClient.Insertable(entity).ExecuteReturnIdentityAsync() > 0; |
| | | jm.code = bl ? 0 : 1; |
| | | jm.msg = bl ? GlobalConstVars.CreateSuccess : GlobalConstVars.CreateFailure; |
| | | |
| | | return jm; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 重写异步更新方法 |
| | | /// </summary> |
| | | /// <param name="entity"></param> |
| | | /// <returns></returns> |
| | | public async Task<AdminUiCallBack> UpdateAsync(PuhuoShoukuan entity) |
| | | { |
| | | var jm = new AdminUiCallBack(); |
| | | |
| | | var oldModel = await DbClient.Queryable<PuhuoShoukuan>().In(entity.id).SingleAsync(); |
| | | if (oldModel == null) |
| | | { |
| | | jm.msg = "不存在此信息"; |
| | | return jm; |
| | | } |
| | | //事物处理过程开始 |
| | | oldModel.id = entity.id; |
| | | oldModel.puhuoId = entity.puhuoId; |
| | | oldModel.distributionId = entity.distributionId; |
| | | oldModel.distributionName = entity.distributionName; |
| | | oldModel.areaCode = entity.areaCode; |
| | | oldModel.areaCodeName = entity.areaCodeName; |
| | | oldModel.CategoryId = entity.CategoryId; |
| | | oldModel.CategoryName = entity.CategoryName; |
| | | oldModel.goodsId = entity.goodsId; |
| | | oldModel.goodsName = entity.goodsName; |
| | | oldModel.productsId = entity.productsId; |
| | | oldModel.productsName = entity.productsName; |
| | | oldModel.spesDesc = entity.spesDesc; |
| | | oldModel.price = entity.price; |
| | | oldModel.nums = entity.nums; |
| | | oldModel.amount = entity.amount; |
| | | oldModel.shoukuannums = entity.shoukuannums; |
| | | oldModel.shoukuanamount = entity.shoukuanamount; |
| | | oldModel.createTime = entity.createTime; |
| | | oldModel.upDataTime = entity.upDataTime; |
| | | oldModel.createBy = entity.createBy; |
| | | oldModel.upDataBy = entity.upDataBy; |
| | | oldModel.isdelete = entity.isdelete; |
| | | |
| | | //事物处理过程结束 |
| | | var bl = await DbClient.Updateable(oldModel).ExecuteCommandHasChangeAsync(); |
| | | jm.code = bl ? 0 : 1; |
| | | jm.msg = bl ? GlobalConstVars.EditSuccess : GlobalConstVars.EditFailure; |
| | | |
| | | return jm; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 重写异步更新方法 |
| | | /// </summary> |
| | | /// <param name="entity"></param> |
| | | /// <returns></returns> |
| | | public async Task<AdminUiCallBack> UpdateAsync(List<PuhuoShoukuan> entity) |
| | | { |
| | | var jm = new AdminUiCallBack(); |
| | | |
| | | var bl = await DbClient.Updateable(entity).ExecuteCommandHasChangeAsync(); |
| | | jm.code = bl ? 0 : 1; |
| | | jm.msg = bl ? GlobalConstVars.EditSuccess : GlobalConstVars.EditFailure; |
| | | |
| | | return jm; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 重写删除指定ID的数据 |
| | | /// </summary> |
| | | /// <param name="id"></param> |
| | | /// <returns></returns> |
| | | public async Task<AdminUiCallBack> DeleteByIdAsync(object id) |
| | | { |
| | | var jm = new AdminUiCallBack(); |
| | | |
| | | var bl = await DbClient.Deleteable<PuhuoShoukuan>(id).ExecuteCommandHasChangeAsync(); |
| | | jm.code = bl ? 0 : 1; |
| | | jm.msg = bl ? GlobalConstVars.DeleteSuccess : GlobalConstVars.DeleteFailure; |
| | | |
| | | return jm; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 重写删除指定ID集合的数据(批量删除) |
| | | /// </summary> |
| | | /// <param name="ids"></param> |
| | | /// <returns></returns> |
| | | public async Task<AdminUiCallBack> DeleteByIdsAsync(int[] ids) |
| | | { |
| | | var jm = new AdminUiCallBack(); |
| | | |
| | | var bl = await DbClient.Deleteable<PuhuoShoukuan>().In(ids).ExecuteCommandHasChangeAsync(); |
| | | jm.code = bl ? 0 : 1; |
| | | jm.msg = bl ? GlobalConstVars.DeleteSuccess : GlobalConstVars.DeleteFailure; |
| | | |
| | | return jm; |
| | | } |
| | | |
| | | #endregion |
| | | |
| | | #region 获取缓存的所有数据========================================================== |
| | | |
| | | /// <summary> |
| | | /// 获取缓存的所有数据 |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | public async Task<List<PuhuoShoukuan>> GetCaChe() |
| | | { |
| | | var list = await DbClient.Queryable<PuhuoShoukuan>().With(SqlWith.NoLock).WithCache().ToListAsync(); |
| | | return list; |
| | | } |
| | | |
| | | #endregion |
| | | |
| | | |
| | | #region 重写根据条件查询分页数据 |
| | | /// <summary> |
| | | /// 重写根据条件查询分页数据 |
| | | /// </summary> |
| | | /// <param name="predicate">判断集合</param> |
| | | /// <param name="orderByType">排序方式</param> |
| | | /// <param name="pageIndex">当前页面索引</param> |
| | | /// <param name="pageSize">分布大小</param> |
| | | /// <param name="orderByExpression"></param> |
| | | /// <param name="blUseNoLock">是否使用WITH(NOLOCK)</param> |
| | | /// <returns></returns> |
| | | public async Task<IPageList<PuhuoShoukuan>> QueryPageAsync(Expression<Func<PuhuoShoukuan, bool>> predicate, |
| | | Expression<Func<PuhuoShoukuan, object>> orderByExpression, OrderByType orderByType, OtherData otherData , int pageIndex = 1, |
| | | int pageSize = 20, bool blUseNoLock = false) |
| | | { |
| | | RefAsync<int> totalCount = 0; |
| | | List<PuhuoShoukuan> page; |
| | | if (blUseNoLock) |
| | | { |
| | | page = await DbClient.Queryable<PuhuoShoukuan>() |
| | | .OrderByIF(orderByExpression != null, orderByExpression, orderByType) |
| | | .WhereIF(predicate != null, predicate).Select(p => new PuhuoShoukuan |
| | | { |
| | | id = p.id, |
| | | puhuoId = p.puhuoId, |
| | | distributionId = p.distributionId, |
| | | distributionName = p.distributionName, |
| | | areaCode = p.areaCode, |
| | | areaCodeName = p.areaCodeName, |
| | | CategoryId = p.CategoryId, |
| | | CategoryName = p.CategoryName, |
| | | goodsId = p.goodsId, |
| | | goodsName = p.goodsName, |
| | | productsId = p.productsId, |
| | | productsName = p.productsName, |
| | | spesDesc = p.spesDesc, |
| | | price = p.price, |
| | | nums = p.nums, |
| | | amount = p.amount, |
| | | shoukuannums = p.shoukuannums, |
| | | shoukuanamount = p.shoukuanamount, |
| | | createTime = p.createTime, |
| | | upDataTime = p.upDataTime, |
| | | createBy = p.createBy, |
| | | upDataBy = p.upDataBy, |
| | | isdelete = p.isdelete, |
| | | |
| | | }).With(SqlWith.NoLock).ToPageListAsync(pageIndex, pageSize, totalCount); |
| | | } |
| | | else |
| | | { |
| | | page = await DbClient.Queryable<PuhuoShoukuan>() |
| | | .OrderByIF(orderByExpression != null, orderByExpression, orderByType) |
| | | .WhereIF(predicate != null, predicate).Select(p => new PuhuoShoukuan |
| | | { |
| | | id = p.id, |
| | | puhuoId = p.puhuoId, |
| | | distributionId = p.distributionId, |
| | | distributionName = p.distributionName, |
| | | areaCode = p.areaCode, |
| | | areaCodeName = p.areaCodeName, |
| | | CategoryId = p.CategoryId, |
| | | CategoryName = p.CategoryName, |
| | | goodsId = p.goodsId, |
| | | goodsName = p.goodsName, |
| | | productsId = p.productsId, |
| | | productsName = p.productsName, |
| | | spesDesc = p.spesDesc, |
| | | price = p.price, |
| | | nums = p.nums, |
| | | amount = p.amount, |
| | | shoukuannums = p.shoukuannums, |
| | | shoukuanamount = p.shoukuanamount, |
| | | createTime = p.createTime, |
| | | upDataTime = p.upDataTime, |
| | | createBy = p.createBy, |
| | | upDataBy = p.upDataBy, |
| | | isdelete = p.isdelete, |
| | | |
| | | }).ToPageListAsync(pageIndex, pageSize, totalCount); |
| | | } |
| | | |
| | | foreach (var puhuo in page) |
| | | { |
| | | var distribution = await DbClient.Queryable<CoreCmsDistribution>().In(puhuo.distributionId).WithNoLockOrNot(blUseNoLock).WithCacheIF(false).SingleAsync(); |
| | | if (distribution != null) |
| | | { |
| | | puhuo.schoolName = distribution.schoolName; |
| | | } |
| | | } |
| | | |
| | | |
| | | var pagetotal = DbClient.Queryable<PuhuoShoukuan>() |
| | | .WhereIF(predicate != null, predicate) |
| | | .Select(p => new Puhuo |
| | | { |
| | | shoukuanamount = SqlFunc.AggregateSum(p.shoukuanamount), |
| | | shoukuannums = SqlFunc.AggregateSum(p.shoukuannums), |
| | | }) |
| | | .First(); |
| | | |
| | | otherData.heji4 = pagetotal.shoukuannums??0; |
| | | otherData.heji5 = pagetotal.shoukuanamount??0; |
| | | |
| | | var list = new PageList<PuhuoShoukuan>(page, pageIndex, pageSize, totalCount); |
| | | return list; |
| | | } |
| | | |
| | | #endregion |
| | | |
| | | } |
| | | } |
| | |
| | | using CoreCms.Net.Model.FromBody; |
| | | using CoreCms.Net.Model.ViewModels.Basics; |
| | | using CoreCms.Net.Model.ViewModels.UI; |
| | | using Essensoft.Paylink.Alipay.Domain; |
| | | using SqlSugar; |
| | | |
| | | |
| | |
| | | /// </summary> |
| | | /// <param name="entity">实体数据</param> |
| | | /// <returns></returns> |
| | | public async Task<AdminUiCallBack> InsertAsync(FMCreateStock entity) |
| | | public async Task<AdminUiCallBack> InsertAsync(FMCreateStock entity, string username, CoreCmsDistribution distribution) |
| | | { |
| | | return await _dal.InsertAsync(entity); |
| | | return await _dal.InsertAsync(entity, username, distribution); |
| | | } |
| | | |
| | | #endregion |
| | |
| | | /// <param name="blUseNoLock">是否使用WITH(NOLOCK)</param> |
| | | /// <returns></returns> |
| | | public async Task<IPageList<Puhuo>> QueryPageGroupAsync(Expression<Func<Puhuo, bool>> predicate, |
| | | Expression<Func<Puhuo, object>> orderByExpression, OrderByType orderByType, int pageIndex = 1, |
| | | Expression<Func<Puhuo, object>> orderByExpression, OrderByType orderByType, OtherData otherData, int pageIndex = 1, |
| | | int pageSize = 20, bool blUseNoLock = false) |
| | | { |
| | | return await _dal.QueryPageGroupAsync(predicate, orderByExpression, orderByType, pageIndex, pageSize, blUseNoLock); |
| | | return await _dal.QueryPageGroupAsync(predicate, orderByExpression, orderByType, otherData , pageIndex, pageSize, blUseNoLock); |
| | | } |
| | | #endregion |
| | | |
New file |
| | |
| | | /*********************************************************************** |
| | | * Project: baifenBinfa |
| | | * ProjectName: 百分兵法管理系统 |
| | | * Web: http://chuanyin.com |
| | | * Author: |
| | | * Email: |
| | | * CreateTime: 2024/6/25 13:17:00 |
| | | * Description: 暂无 |
| | | ***********************************************************************/ |
| | | |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using System.Linq.Expressions; |
| | | using System.Threading.Tasks; |
| | | using CoreCms.Net.Configuration; |
| | | using CoreCms.Net.IRepository; |
| | | using CoreCms.Net.IRepository.UnitOfWork; |
| | | using CoreCms.Net.IServices; |
| | | using CoreCms.Net.Model.Entities; |
| | | using CoreCms.Net.Model.Entities.baifenbingfa.puhuo; |
| | | using CoreCms.Net.Model.ViewModels.Basics; |
| | | using CoreCms.Net.Model.ViewModels.UI; |
| | | using SqlSugar; |
| | | |
| | | |
| | | namespace CoreCms.Net.Services |
| | | { |
| | | /// <summary> |
| | | /// 铺货 接口实现 |
| | | /// </summary> |
| | | public class PuhuoShoukuanServices : BaseServices<PuhuoShoukuan>, IPuhuoShoukuanServices |
| | | { |
| | | private readonly IPuhuoShoukuanRepository _dal; |
| | | private readonly IUnitOfWork _unitOfWork; |
| | | |
| | | public PuhuoShoukuanServices(IUnitOfWork unitOfWork, IPuhuoShoukuanRepository dal) |
| | | { |
| | | this._dal = dal; |
| | | base.BaseDal = dal; |
| | | _unitOfWork = unitOfWork; |
| | | } |
| | | |
| | | #region 实现重写增删改查操作========================================================== |
| | | |
| | | /// <summary> |
| | | /// 重写异步插入方法 |
| | | /// </summary> |
| | | /// <param name="entity">实体数据</param> |
| | | /// <returns></returns> |
| | | public async Task<AdminUiCallBack> InsertAsync(PuhuoShoukuan entity) |
| | | { |
| | | return await _dal.InsertAsync(entity); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 重写异步更新方法方法 |
| | | /// </summary> |
| | | /// <param name="entity"></param> |
| | | /// <returns></returns> |
| | | public async Task<AdminUiCallBack> UpdateAsync(PuhuoShoukuan entity) |
| | | { |
| | | return await _dal.UpdateAsync(entity); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 重写异步更新方法方法 |
| | | /// </summary> |
| | | /// <param name="entity"></param> |
| | | /// <returns></returns> |
| | | public async Task<AdminUiCallBack> UpdateAsync(List<PuhuoShoukuan> entity) |
| | | { |
| | | return await _dal.UpdateAsync(entity); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 重写删除指定ID的数据 |
| | | /// </summary> |
| | | /// <param name="id"></param> |
| | | /// <returns></returns> |
| | | public async Task<AdminUiCallBack> DeleteByIdAsync(object id) |
| | | { |
| | | return await _dal.DeleteByIdAsync(id); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 重写删除指定ID集合的数据(批量删除) |
| | | /// </summary> |
| | | /// <param name="ids"></param> |
| | | /// <returns></returns> |
| | | public async Task<AdminUiCallBack> DeleteByIdsAsync(int[] ids) |
| | | { |
| | | return await _dal.DeleteByIdsAsync(ids); |
| | | } |
| | | |
| | | #endregion |
| | | |
| | | #region 获取缓存的所有数据========================================================== |
| | | |
| | | /// <summary> |
| | | /// 获取缓存的所有数据 |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | public async Task<List<PuhuoShoukuan>> GetCaChe() |
| | | { |
| | | return await _dal.GetCaChe(); |
| | | } |
| | | |
| | | #endregion |
| | | |
| | | #region 重写根据条件查询分页数据 |
| | | /// <summary> |
| | | /// 重写根据条件查询分页数据 |
| | | /// </summary> |
| | | /// <param name="predicate">判断集合</param> |
| | | /// <param name="orderByType">排序方式</param> |
| | | /// <param name="pageIndex">当前页面索引</param> |
| | | /// <param name="pageSize">分布大小</param> |
| | | /// <param name="orderByExpression"></param> |
| | | /// <param name="blUseNoLock">是否使用WITH(NOLOCK)</param> |
| | | /// <returns></returns> |
| | | public async Task<IPageList<PuhuoShoukuan>> QueryPageAsync(Expression<Func<PuhuoShoukuan, bool>> predicate, |
| | | Expression<Func<PuhuoShoukuan, object>> orderByExpression, OrderByType orderByType, OtherData otherData, int pageIndex = 1, |
| | | int pageSize = 20, bool blUseNoLock = false) |
| | | { |
| | | return await _dal.QueryPageAsync(predicate, orderByExpression, orderByType, otherData, pageIndex, pageSize, blUseNoLock); |
| | | } |
| | | #endregion |
| | | |
| | | } |
| | | } |
| | |
| | | using Microsoft.AspNetCore.Mvc; |
| | | using NPOI.HSSF.UserModel; |
| | | using SqlSugar; |
| | | using CoreCms.Net.Services; |
| | | using Essensoft.Paylink.Alipay.Domain; |
| | | using CoreCms.Net.Services.Basic; |
| | | |
| | | namespace CoreCms.Net.Web.Admin.Controllers |
| | | { |
| | |
| | | private readonly ICoreCmsStockLogServices _stockLogServices; |
| | | private readonly ISysUserServices _sysUserServices; |
| | | private readonly IHttpContextUser _user; |
| | | private readonly ICoreCmsDistributionServices _coreCmsDistributionServices; |
| | | private readonly ICoreCmsAreaServices _coreCmsAreaServices; |
| | | |
| | | /// <summary> |
| | | /// 构造函数 |
| | | ///</summary> |
| | | public CoreCmsStockController(IWebHostEnvironment webHostEnvironment |
| | | , ICoreCmsStockServices stockServices, ICoreCmsProductsServices productsServices, IHttpContextUser user, ICoreCmsStockLogServices stockLogServices, ISysUserServices sysUserServices) |
| | | , ICoreCmsStockServices stockServices, ICoreCmsProductsServices productsServices, IHttpContextUser user, ICoreCmsStockLogServices stockLogServices, ISysUserServices sysUserServices |
| | | , ICoreCmsDistributionServices coreCmsDistributionServices |
| | | , ICoreCmsAreaServices coreCmsAreaServices) |
| | | { |
| | | _webHostEnvironment = webHostEnvironment; |
| | | _stockServices = stockServices; |
| | |
| | | _user = user; |
| | | _stockLogServices = stockLogServices; |
| | | _sysUserServices = sysUserServices; |
| | | _coreCmsDistributionServices = coreCmsDistributionServices; |
| | | _coreCmsAreaServices = coreCmsAreaServices; |
| | | } |
| | | |
| | | #region 获取列表============================================================ |
| | |
| | | |
| | | var products = await _productsServices.GetProducts(); |
| | | |
| | | var distributions = await _coreCmsDistributionServices.QueryListByClauseAsync(p => p.isDelete == false && p.verifyStatus == 1, p => p.createTime, OrderByType.Desc, true, true); |
| | | |
| | | jm.data = new |
| | | { |
| | | stockType, |
| | | products, |
| | | distributions |
| | | }; |
| | | |
| | | return jm; |
| | |
| | | [Description("创建提交")] |
| | | public async Task<AdminUiCallBack> DoCreate([FromBody] FMCreateStock entity) |
| | | { |
| | | //返回数据 |
| | | var jm = new AdminUiCallBack { code = 0 }; |
| | | if (_user != null) |
| | | { |
| | | entity.model.manager = _user.ID; |
| | |
| | | { |
| | | entity.model.manager = 0; |
| | | } |
| | | var distributions = new CoreCmsDistribution(); |
| | | if (entity.model.type == 3) |
| | | { |
| | | if (entity.model.distributionId == 0) |
| | | { |
| | | jm.msg = "请选择经销商"; |
| | | return jm; |
| | | } |
| | | |
| | | var jm = await _stockServices.InsertAsync(entity); |
| | | distributions = await _coreCmsDistributionServices.QueryByIdAsync(entity.model.distributionId); |
| | | if (distributions != null) |
| | | { |
| | | |
| | | var d = await _coreCmsAreaServices.GetAreaFullName(distributions.areaCode?.Split(",").ToList().OrderDescending()?.FirstOrDefault()?.ToInt32OrDefault(0) ?? 0); |
| | | if (d.status == true) |
| | | { |
| | | distributions.areaName = d.data.ToString(); |
| | | } |
| | | |
| | | } |
| | | } |
| | | |
| | | |
| | | jm = await _stockServices.InsertAsync(entity,_user.Name, distributions); |
| | | return jm; |
| | | } |
| | | #endregion |
| | |
| | | using Essensoft.Paylink.Alipay.Domain; |
| | | using CoreCms.Net.Auth.HttpContextUser; |
| | | using MathNet.Numerics.Distributions; |
| | | using EnumsNET; |
| | | using CoreCms.Net.IRepository; |
| | | |
| | | namespace CoreCms.Net.Web.Admin.Controllers |
| | | { |
| | |
| | | private readonly IHttpContextUser _user; |
| | | private readonly ICoreCmsAreaServices _areaServices; |
| | | private readonly ICoreCmsGoodsCategoryServices _goodsCategoryServices; |
| | | private readonly ICoreCmsStockRepository _stockRepository; |
| | | private readonly ICoreCmsStockServices _stockServices; |
| | | private readonly ICoreCmsStockLogServices _stockLogServices; |
| | | private readonly IPuhuoShoukuanServices _puhuoShoukuanServices; |
| | | |
| | | /// <summary> |
| | | /// 构造函数 |
| | |
| | | , IHttpContextUser user |
| | | , ICoreCmsAreaServices areaServices |
| | | , ICoreCmsGoodsCategoryServices goodsCategoryServices |
| | | , ICoreCmsStockRepository stockRepository |
| | | , ICoreCmsStockServices stockServices |
| | | , ICoreCmsStockLogServices stockLogServices |
| | | , IPuhuoShoukuanServices puhuoShoukuanServices |
| | | ) |
| | | { |
| | | _webHostEnvironment = webHostEnvironment; |
| | |
| | | _user = user; |
| | | _areaServices = areaServices; |
| | | _goodsCategoryServices = goodsCategoryServices; |
| | | _stockRepository = stockRepository; |
| | | _stockServices = stockServices; |
| | | _stockLogServices = stockLogServices; |
| | | _puhuoShoukuanServices = puhuoShoukuanServices; |
| | | } |
| | | |
| | | |
| | |
| | | { |
| | | where = where.And(p => p.isdelete == false); |
| | | } |
| | | OtherData otherData = new OtherData(); |
| | | //获取数据 |
| | | var list = await _PuhuoServices.QueryPageGroupAsync(where, orderEx, orderBy, pageCurrent, pageSize, true); |
| | | var list = await _PuhuoServices.QueryPageGroupAsync(where, orderEx, orderBy, otherData, pageCurrent, pageSize, true); |
| | | //返回数据 |
| | | jm.data = list; |
| | | jm.code = 0; |
| | | jm.count = list.TotalCount; |
| | | jm.msg = "数据调用成功!"; |
| | | |
| | | |
| | | |
| | | otherData.heji1 = list.Sum(x=>x.nums); |
| | | otherData.heji2 = list.Sum(x => x.amount); |
| | | otherData.heji3 = list.Sum(x => x.tiaozhengnums); |
| | | jm.otherData = otherData; |
| | | return jm; |
| | | } |
| | | #endregion |
| | |
| | | coreCmsProduct.stock = coreCmsProduct.stock - entity.nums; |
| | | var bb = await _coreCmsProductsServices.UpdateAsync(coreCmsProduct); |
| | | |
| | | |
| | | //库存盘点 |
| | | var stockModel = new CoreCmsStock(); |
| | | stockModel.id = await _stockRepository.CreateCode(GlobalEnumVars.StockType.CheckGoods.ToString()); |
| | | stockModel.memo = entity.distributionName + " 经销商铺货"; |
| | | stockModel.type = (int)GlobalEnumVars.StockType.Out; |
| | | stockModel.manager = _user.ID; |
| | | stockModel.createTime = DateTime.Now; |
| | | |
| | | var stockLogModel = new CoreCmsStockLog(); |
| | | stockLogModel.stockId = stockModel.id; |
| | | stockLogModel.productId = entity.productsId; |
| | | stockLogModel.goodsId = entity.goodsId; |
| | | stockLogModel.nums = entity.nums; |
| | | stockLogModel.goodsName = entity.goodsName; |
| | | stockLogModel.sn = entity.productsName; |
| | | stockLogModel.bn = entity.productsName; |
| | | stockLogModel.spesDesc = entity.spesDesc; |
| | | var s = await _stockServices.InsertAsync(stockModel); |
| | | s = await _stockLogServices.InsertAsync(stockLogModel); |
| | | |
| | | |
| | | jm = await _PuhuoServices.InsertAsync(entity); |
| | | return jm; |
| | |
| | | |
| | | var jm = new AdminUiCallBack(); |
| | | |
| | | |
| | | if (entity.tiaozhengnums <= 0) |
| | | if(entity.jintui == 4) |
| | | { |
| | | jm.msg = "请填写调整数量"; |
| | | return jm; |
| | | } |
| | | |
| | | |
| | | |
| | | var puhuo = await _PuhuoServices.QueryByIdAsync(entity.id); |
| | | |
| | | if (entity.jintui == 2 && puhuo.nums < entity.tiaozhengnums) |
| | | { |
| | | jm.msg = "退货数量大于铺货数量,不能提交"; |
| | | return jm; |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | var coreCmsProduct = await _coreCmsProductsServices.QueryByIdAsync(puhuo.productsId); |
| | | if (coreCmsProduct != null) |
| | | { |
| | | if (entity.jintui == 1 && coreCmsProduct.stock < entity.tiaozhengnums) |
| | | if (entity.shoukuannums <= 0) |
| | | { |
| | | jm.msg = "库存不足!"; |
| | | jm.msg = "请填写收款数量"; |
| | | return jm; |
| | | } |
| | | if (entity.jintui == 1) |
| | | |
| | | var puhuo = await _PuhuoServices.QueryByIdAsync(entity.id); |
| | | var aaaa = puhuo.shoukuannums ?? 0; |
| | | if ( puhuo.nums < (aaaa + entity.shoukuannums)) |
| | | { |
| | | puhuo.nums = puhuo.nums + entity.tiaozhengnums; |
| | | jm.msg = "收款数量大于铺货数量,不能提交"; |
| | | return jm; |
| | | } |
| | | else if (entity.jintui == 2) |
| | | { |
| | | puhuo.nums = puhuo.nums - entity.tiaozhengnums; |
| | | } |
| | | puhuo.price = coreCmsProduct.distributionPrice; |
| | | puhuo.amount = coreCmsProduct.distributionPrice * new decimal(puhuo.nums); |
| | | PuhuoShoukuan puhuoShoukuan = new PuhuoShoukuan(); |
| | | puhuoShoukuan.puhuoId = puhuo.id; |
| | | puhuoShoukuan.distributionId = puhuo.distributionId; |
| | | puhuoShoukuan.distributionName = puhuo.distributionName; |
| | | puhuoShoukuan.areaCode = puhuo.areaCode; |
| | | puhuoShoukuan.areaCodeName = puhuo.areaCodeName; |
| | | puhuoShoukuan.CategoryId = puhuo.CategoryId; |
| | | puhuoShoukuan.CategoryName = puhuo.CategoryName; |
| | | puhuoShoukuan.goodsId = puhuo.goodsId; |
| | | puhuoShoukuan.goodsName = puhuo.goodsName; |
| | | puhuoShoukuan.productsId = puhuo.productsId; |
| | | puhuoShoukuan.productsName = puhuo.productsName; |
| | | puhuoShoukuan.spesDesc = puhuo.spesDesc; |
| | | puhuoShoukuan.price = puhuo.price; |
| | | |
| | | puhuoShoukuan.nums = puhuo.nums; |
| | | puhuoShoukuan.amount = puhuo.amount; |
| | | puhuoShoukuan.shoukuannums = entity.shoukuannums.Value; |
| | | puhuoShoukuan.shoukuanamount = new decimal(entity.shoukuannums.Value) * puhuo.price; |
| | | puhuoShoukuan.isdelete = false; |
| | | puhuoShoukuan.createBy = _user.Name; |
| | | puhuoShoukuan.upDataBy = _user.Name; |
| | | puhuoShoukuan.createTime = DateTime.Now; |
| | | puhuoShoukuan.upDataTime = DateTime.Now; |
| | | jm = await _puhuoShoukuanServices.InsertAsync(puhuoShoukuan); |
| | | |
| | | |
| | | puhuo.upDataBy = _user.Name; |
| | | puhuo.upDataTime = DateTime.Now; |
| | | var sss = puhuo.shoukuannums ?? 0; |
| | | puhuo.shoukuannums = sss + entity.shoukuannums.Value; |
| | | var aaa = puhuo.shoukuanamount ?? new decimal(0); |
| | | puhuo.shoukuanamount = aaa + (new decimal(entity.shoukuannums.Value) * puhuo.price); |
| | | jm = await _PuhuoServices.UpdateAsync(puhuo); |
| | | |
| | | |
| | | |
| | | } |
| | | else |
| | | { |
| | | jm.msg = "没找到产品"; |
| | | return jm; |
| | | if (entity.tiaozhengnums <= 0 && entity.jintui != 3) |
| | | { |
| | | jm.msg = "请填写调整数量"; |
| | | return jm; |
| | | } |
| | | |
| | | |
| | | |
| | | var puhuo = await _PuhuoServices.QueryByIdAsync(entity.id); |
| | | |
| | | if (entity.jintui == 2 && puhuo.nums < entity.tiaozhengnums) |
| | | { |
| | | jm.msg = "退货数量大于铺货数量,不能提交"; |
| | | return jm; |
| | | } |
| | | |
| | | if (entity.jintui == 3 && puhuo.nums < -entity.tiaozhengnums) |
| | | { |
| | | jm.msg = "盘点减少数量大于铺货数量,不能提交"; |
| | | return jm; |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | var coreCmsProduct = await _coreCmsProductsServices.QueryByIdAsync(puhuo.productsId); |
| | | if (coreCmsProduct != null) |
| | | { |
| | | if (entity.jintui == 1 && coreCmsProduct.stock < entity.tiaozhengnums) |
| | | { |
| | | jm.msg = "库存不足!"; |
| | | return jm; |
| | | } |
| | | if (entity.jintui == 1) |
| | | { |
| | | puhuo.nums = puhuo.nums + entity.tiaozhengnums; |
| | | } |
| | | else if (entity.jintui == 2) |
| | | { |
| | | puhuo.nums = puhuo.nums - entity.tiaozhengnums; |
| | | } |
| | | else if (entity.jintui == 3) |
| | | { |
| | | puhuo.nums = puhuo.nums + entity.tiaozhengnums; |
| | | } |
| | | puhuo.price = coreCmsProduct.distributionPrice; |
| | | puhuo.amount = coreCmsProduct.distributionPrice * new decimal(puhuo.nums); |
| | | } |
| | | else |
| | | { |
| | | jm.msg = "没找到产品"; |
| | | return jm; |
| | | } |
| | | |
| | | |
| | | puhuo.isdelete = false; |
| | | //entity.createBy = _user.Name; |
| | | puhuo.upDataBy = _user.Name; |
| | | //entity.createTime = DateTime.Now; |
| | | puhuo.upDataTime = DateTime.Now; |
| | | |
| | | |
| | | |
| | | if (entity.jintui == 1) |
| | | { |
| | | coreCmsProduct.stock = coreCmsProduct.stock - entity.tiaozhengnums; |
| | | } |
| | | else if (entity.jintui == 2) |
| | | { |
| | | coreCmsProduct.stock = coreCmsProduct.stock + entity.tiaozhengnums; |
| | | } |
| | | |
| | | //盘点不扣减库存 |
| | | if (entity.jintui != 3) |
| | | { |
| | | var bb = await _coreCmsProductsServices.UpdateAsync(coreCmsProduct); |
| | | |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | var stockModel = new CoreCmsStock(); |
| | | stockModel.id = await _stockRepository.CreateCode(GlobalEnumVars.StockType.CheckGoods.ToString()); |
| | | |
| | | |
| | | stockModel.manager = _user.ID; |
| | | stockModel.createTime = DateTime.Now; |
| | | |
| | | var stockLogModel = new CoreCmsStockLog(); |
| | | stockLogModel.stockId = stockModel.id; |
| | | stockLogModel.productId = puhuo.productsId; |
| | | stockLogModel.goodsId = puhuo.goodsId; |
| | | if (entity.jintui == 1) |
| | | { |
| | | stockModel.memo = puhuo.distributionName + " 经销商铺货"; |
| | | stockModel.type = (int)GlobalEnumVars.StockType.Out; |
| | | stockLogModel.nums = entity.tiaozhengnums; |
| | | } |
| | | else if (entity.jintui == 2) |
| | | { |
| | | stockModel.memo = puhuo.distributionName + " 经销商铺货退货"; |
| | | stockModel.type = (int)GlobalEnumVars.StockType.In; |
| | | stockLogModel.nums = entity.tiaozhengnums; |
| | | } |
| | | else if (entity.jintui == 3) |
| | | { |
| | | stockModel.memo = puhuo.distributionName + " 铺货盘点核减损耗"; |
| | | stockModel.type = (int)GlobalEnumVars.StockType.CheckPuhuo; |
| | | stockLogModel.nums = entity.tiaozhengnums; |
| | | } |
| | | |
| | | stockLogModel.goodsName = puhuo.goodsName; |
| | | stockLogModel.sn = puhuo.productsName; |
| | | stockLogModel.bn = puhuo.productsName; |
| | | stockLogModel.spesDesc = puhuo.spesDesc; |
| | | var s = await _stockServices.InsertAsync(stockModel); |
| | | s = await _stockLogServices.InsertAsync(stockLogModel); |
| | | |
| | | |
| | | |
| | | jm = await _PuhuoServices.UpdateAsync(puhuo); |
| | | } |
| | | |
| | | |
| | | puhuo.isdelete = false; |
| | | //entity.createBy = _user.Name; |
| | | puhuo.upDataBy = _user.Name; |
| | | //entity.createTime = DateTime.Now; |
| | | puhuo.upDataTime = DateTime.Now; |
| | | |
| | | |
| | | |
| | | if (entity.jintui == 1) |
| | | { |
| | | coreCmsProduct.stock = coreCmsProduct.stock - entity.tiaozhengnums; |
| | | } |
| | | else if (entity.jintui == 2) |
| | | { |
| | | coreCmsProduct.stock = coreCmsProduct.stock + entity.tiaozhengnums; |
| | | } |
| | | |
| | | var bb = await _coreCmsProductsServices.UpdateAsync(coreCmsProduct); |
| | | |
| | | |
| | | |
| | | jm = await _PuhuoServices.UpdateAsync(puhuo); |
| | | |
| | | return jm; |
| | | } |
| | | #endregion |
| | |
| | | { |
| | | var jm = new AdminUiCallBack(); |
| | | var puhuoss = await _PuhuoServices.QueryListByClauseAsync(p => p.productsId == entity.productsId); |
| | | |
| | | foreach (var puhuo in puhuoss) |
| | | { |
| | | puhuo.productsName = puhuo.productsName + " " + puhuo.spesDesc; |
| | | var distribution = await _coreCmsDistributionServices.QueryByIdAsync(puhuo.distributionId); |
| | | if (distribution != null) |
| | | { |
| | | puhuo.schoolName = distribution.schoolName; |
| | | } |
| | | } |
| | | //var model = await _PuhuoServices.QueryByIdAsync(entity.id, false); |
| | | //if (model == null) |
| | | //{ |
New file |
| | |
| | | /*********************************************************************** |
| | | * Project: baifenBinfa |
| | | * ProjectName: 百分兵法管理系统 |
| | | * Web: http://chuanyin.com |
| | | * Author: |
| | | * Email: |
| | | * CreateTime: 2024/6/25 13:17:00 |
| | | * Description: 暂无 |
| | | ***********************************************************************/ |
| | | |
| | | |
| | | using System; |
| | | using System.ComponentModel; |
| | | using System.IO; |
| | | using System.Linq; |
| | | using System.Linq.Expressions; |
| | | using System.Threading.Tasks; |
| | | using CoreCms.Net.Configuration; |
| | | using CoreCms.Net.Model.Entities; |
| | | using CoreCms.Net.Model.Entities.Expression; |
| | | using CoreCms.Net.Model.FromBody; |
| | | using CoreCms.Net.Model.ViewModels.UI; |
| | | using CoreCms.Net.Filter; |
| | | using CoreCms.Net.Loging; |
| | | using CoreCms.Net.IServices; |
| | | using CoreCms.Net.Utility.Helper; |
| | | using CoreCms.Net.Utility.Extensions; |
| | | using Microsoft.AspNetCore.Authorization; |
| | | using Microsoft.AspNetCore.Hosting; |
| | | using Microsoft.AspNetCore.Mvc; |
| | | using NPOI.HSSF.UserModel; |
| | | using SqlSugar; |
| | | using CoreCms.Net.Web.Admin.Infrastructure; |
| | | using CoreCms.Net.Model.Entities.baifenbingfa.puhuo; |
| | | |
| | | namespace CoreCms.Net.Web.Admin.Controllers |
| | | { |
| | | /// <summary> |
| | | /// 铺货 |
| | | ///</summary> |
| | | [Description("铺货")] |
| | | [Route("api/[controller]/[action]")] |
| | | [ApiController] |
| | | [RequiredErrorForAdmin] |
| | | [Authorize(Permissions.Name)] |
| | | public class PuhuoShoukuanController : ControllerBase |
| | | { |
| | | private readonly IWebHostEnvironment _webHostEnvironment; |
| | | private readonly IPuhuoShoukuanServices _PuhuoShoukuanServices; |
| | | private readonly ICoreCmsAreaServices _areaServices; |
| | | |
| | | /// <summary> |
| | | /// 构造函数 |
| | | ///</summary> |
| | | public PuhuoShoukuanController(IWebHostEnvironment webHostEnvironment |
| | | ,IPuhuoShoukuanServices PuhuoShoukuanServices |
| | | , ICoreCmsAreaServices areaServices |
| | | ) |
| | | { |
| | | _webHostEnvironment = webHostEnvironment; |
| | | _PuhuoShoukuanServices = PuhuoShoukuanServices; |
| | | _areaServices = areaServices; |
| | | } |
| | | |
| | | #region 获取列表============================================================ |
| | | // POST: Api/PuhuoShoukuan/GetPageList |
| | | /// <summary> |
| | | /// 获取列表 |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | [HttpPost] |
| | | [Description("获取列表")] |
| | | public async Task<AdminUiCallBack> GetPageList() |
| | | { |
| | | var jm = new AdminUiCallBack(); |
| | | var pageCurrent = Request.Form["page"].FirstOrDefault().ObjectToInt(1); |
| | | var pageSize = Request.Form["limit"].FirstOrDefault().ObjectToInt(30); |
| | | var where = PredicateBuilder.True<PuhuoShoukuan>(); |
| | | //获取排序字段 |
| | | var orderField = Request.Form["orderField"].FirstOrDefault(); |
| | | |
| | | Expression<Func<PuhuoShoukuan, object>> orderEx = orderField switch |
| | | { |
| | | "id" => p => p.id,"puhuoId" => p => p.puhuoId,"distributionId" => p => p.distributionId,"distributionName" => p => p.distributionName,"areaCode" => p => p.areaCode,"areaCodeName" => p => p.areaCodeName,"CategoryId" => p => p.CategoryId,"CategoryName" => p => p.CategoryName,"goodsId" => p => p.goodsId,"goodsName" => p => p.goodsName,"productsId" => p => p.productsId,"productsName" => p => p.productsName,"spesDesc" => p => p.spesDesc,"price" => p => p.price,"nums" => p => p.nums,"amount" => p => p.amount,"shoukuannums" => p => p.shoukuannums,"shoukuanamount" => p => p.shoukuanamount,"createTime" => p => p.createTime,"upDataTime" => p => p.upDataTime,"createBy" => p => p.createBy,"upDataBy" => p => p.upDataBy,"isdelete" => p => p.isdelete, |
| | | _ => p => p.id |
| | | }; |
| | | |
| | | //设置排序方式 |
| | | var orderDirection = Request.Form["orderDirection"].FirstOrDefault(); |
| | | var orderBy = orderDirection switch |
| | | { |
| | | "asc" => OrderByType.Asc, |
| | | "desc" => OrderByType.Desc, |
| | | _ => OrderByType.Desc |
| | | }; |
| | | //查询筛选 |
| | | |
| | | //主键ID int |
| | | var id = Request.Form["id"].FirstOrDefault().ObjectToInt(0); |
| | | if (id > 0) |
| | | { |
| | | where = where.And(p => p.id == id); |
| | | } |
| | | //铺货id int |
| | | var puhuoId = Request.Form["puhuoId"].FirstOrDefault().ObjectToInt(0); |
| | | if (puhuoId > 0) |
| | | { |
| | | where = where.And(p => p.puhuoId == puhuoId); |
| | | } |
| | | //经销商id int |
| | | var distributionId = Request.Form["distributionId"].FirstOrDefault().ObjectToInt(0); |
| | | if (distributionId > 0) |
| | | { |
| | | where = where.And(p => p.distributionId == distributionId); |
| | | } |
| | | //经销商 varchar |
| | | var distributionName = Request.Form["distributionName"].FirstOrDefault(); |
| | | if (!string.IsNullOrEmpty(distributionName)) |
| | | { |
| | | where = where.And(p => p.distributionName.Contains(distributionName)); |
| | | } |
| | | //区域 varchar |
| | | var sheng = Request.Form["sheng"].FirstOrDefault(); |
| | | if (!string.IsNullOrEmpty(sheng)) |
| | | { |
| | | where = where.And(p => p.areaCode.Contains(sheng)); |
| | | } |
| | | var shi = Request.Form["shi"].FirstOrDefault(); |
| | | if (!string.IsNullOrEmpty(shi)) |
| | | { |
| | | where = where.And(p => p.areaCode.Contains(shi)); |
| | | } |
| | | var quxian = Request.Form["quxian"].FirstOrDefault(); |
| | | if (!string.IsNullOrEmpty(quxian)) |
| | | { |
| | | where = where.And(p => p.areaCode.Contains(quxian)); |
| | | } |
| | | //区域名称 varchar |
| | | var areaCodeName = Request.Form["areaCodeName"].FirstOrDefault(); |
| | | if (!string.IsNullOrEmpty(areaCodeName)) |
| | | { |
| | | where = where.And(p => p.areaCodeName.Contains(areaCodeName)); |
| | | } |
| | | //商品分类id int |
| | | var CategoryId = Request.Form["CategoryId"].FirstOrDefault().ObjectToInt(0); |
| | | if (CategoryId > 0) |
| | | { |
| | | where = where.And(p => p.CategoryId == CategoryId); |
| | | } |
| | | //商品分类 varchar |
| | | var CategoryName = Request.Form["CategoryName"].FirstOrDefault(); |
| | | if (!string.IsNullOrEmpty(CategoryName)) |
| | | { |
| | | where = where.And(p => p.CategoryName.Contains(CategoryName)); |
| | | } |
| | | //商品id int |
| | | var goodsId = Request.Form["goodsId"].FirstOrDefault().ObjectToInt(0); |
| | | if (goodsId > 0) |
| | | { |
| | | where = where.And(p => p.goodsId == goodsId); |
| | | } |
| | | //商品名称 varchar |
| | | var goodsName = Request.Form["goodsName"].FirstOrDefault(); |
| | | if (!string.IsNullOrEmpty(goodsName)) |
| | | { |
| | | where = where.And(p => p.goodsName.Contains(goodsName)); |
| | | } |
| | | //货品id int |
| | | var productsId = Request.Form["productsId"].FirstOrDefault().ObjectToInt(0); |
| | | if (productsId > 0) |
| | | { |
| | | where = where.And(p => p.productsId == productsId); |
| | | } |
| | | //货品编号 varchar |
| | | var productsName = Request.Form["productsName"].FirstOrDefault(); |
| | | if (!string.IsNullOrEmpty(productsName)) |
| | | { |
| | | where = where.And(p => p.productsName.Contains(productsName)); |
| | | } |
| | | //货品规格 varchar |
| | | var spesDesc = Request.Form["spesDesc"].FirstOrDefault(); |
| | | if (!string.IsNullOrEmpty(spesDesc)) |
| | | { |
| | | where = where.And(p => p.spesDesc.Contains(spesDesc)); |
| | | } |
| | | //货品价格 decimal |
| | | var price = Request.Form["price"].FirstOrDefault().ObjectToDecimal(0); |
| | | if (price > 0) |
| | | { |
| | | where = where.And(p => p.price == price); |
| | | } |
| | | //数量 int |
| | | var nums = Request.Form["nums"].FirstOrDefault().ObjectToInt(0); |
| | | if (nums > 0) |
| | | { |
| | | where = where.And(p => p.nums == nums); |
| | | } |
| | | //金额 decimal |
| | | var amount = Request.Form["amount"].FirstOrDefault().ObjectToDecimal(0); |
| | | if (amount > 0) |
| | | { |
| | | where = where.And(p => p.amount == amount); |
| | | } |
| | | //收款数量 int |
| | | var shoukuannums = Request.Form["shoukuannums"].FirstOrDefault().ObjectToInt(0); |
| | | if (shoukuannums > 0) |
| | | { |
| | | where = where.And(p => p.shoukuannums == shoukuannums); |
| | | } |
| | | //收款金额 decimal |
| | | var shoukuanamount = Request.Form["shoukuanamount"].FirstOrDefault().ObjectToDecimal(0); |
| | | if (shoukuanamount > 0) |
| | | { |
| | | where = where.And(p => p.shoukuanamount == shoukuanamount); |
| | | } |
| | | //建立时间 datetime |
| | | var createTime = Request.Form["createTime"].FirstOrDefault(); |
| | | if (!string.IsNullOrEmpty(createTime)) |
| | | { |
| | | if (createTime.Contains("到")) |
| | | { |
| | | var dts = createTime.Split("到"); |
| | | var dtStart = dts[0].Trim().ObjectToDate(); |
| | | where = where.And(p => p.createTime > dtStart); |
| | | var dtEnd = dts[1].Trim().ObjectToDate(); |
| | | where = where.And(p => p.createTime < dtEnd); |
| | | } |
| | | else |
| | | { |
| | | var dt = createTime.ObjectToDate(); |
| | | where = where.And(p => p.createTime > dt); |
| | | } |
| | | } |
| | | //修改时间 datetime |
| | | var upDataTime = Request.Form["upDataTime"].FirstOrDefault(); |
| | | if (!string.IsNullOrEmpty(upDataTime)) |
| | | { |
| | | if (upDataTime.Contains("到")) |
| | | { |
| | | var dts = upDataTime.Split("到"); |
| | | var dtStart = dts[0].Trim().ObjectToDate(); |
| | | where = where.And(p => p.upDataTime > dtStart); |
| | | var dtEnd = dts[1].Trim().ObjectToDate(); |
| | | where = where.And(p => p.upDataTime < dtEnd); |
| | | } |
| | | else |
| | | { |
| | | var dt = upDataTime.ObjectToDate(); |
| | | where = where.And(p => p.upDataTime > dt); |
| | | } |
| | | } |
| | | //创建人 varchar |
| | | var createBy = Request.Form["createBy"].FirstOrDefault(); |
| | | if (!string.IsNullOrEmpty(createBy)) |
| | | { |
| | | where = where.And(p => p.createBy.Contains(createBy)); |
| | | } |
| | | //修改人 varchar |
| | | var upDataBy = Request.Form["upDataBy"].FirstOrDefault(); |
| | | if (!string.IsNullOrEmpty(upDataBy)) |
| | | { |
| | | where = where.And(p => p.upDataBy.Contains(upDataBy)); |
| | | } |
| | | //删除标志 bit |
| | | var isdelete = Request.Form["isdelete"].FirstOrDefault(); |
| | | if (!string.IsNullOrEmpty(isdelete) && isdelete.ToLowerInvariant() == "true") |
| | | { |
| | | where = where.And(p => p.isdelete == true); |
| | | } |
| | | else if (!string.IsNullOrEmpty(isdelete) && isdelete.ToLowerInvariant() == "false") |
| | | { |
| | | where = where.And(p => p.isdelete == false); |
| | | } |
| | | OtherData otherData = new OtherData(); |
| | | //获取数据 |
| | | var list = await _PuhuoShoukuanServices.QueryPageAsync(where, orderEx, orderBy, otherData, pageCurrent, pageSize, true); |
| | | //返回数据 |
| | | jm.data = list; |
| | | jm.code = 0; |
| | | jm.count = list.TotalCount; |
| | | jm.msg = "数据调用成功!"; |
| | | |
| | | otherData.heji1 = list.Sum(x => x.shoukuannums); |
| | | otherData.heji2 = list.Sum(x => x.shoukuanamount); |
| | | jm.otherData = otherData; |
| | | |
| | | return jm; |
| | | } |
| | | #endregion |
| | | |
| | | #region 首页数据============================================================ |
| | | // POST: Api/PuhuoShoukuan/GetIndex |
| | | /// <summary> |
| | | /// 首页数据 |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | [HttpPost] |
| | | [Description("首页数据")] |
| | | public async Task<AdminUiCallBack> GetIndex() |
| | | { |
| | | //返回数据 |
| | | var jm = new AdminUiCallBack { code = 0 }; |
| | | |
| | | var shi = await _areaServices.QueryListByClauseAsync(p => p.parentId == 0);//510000 |
| | | |
| | | var sss = shi.Where(x => x.id == 510000).FirstOrDefault(); |
| | | |
| | | |
| | | if (shi.Remove(sss)) |
| | | { |
| | | shi.Insert(0, sss); |
| | | } |
| | | jm.data = shi; |
| | | |
| | | return jm; |
| | | } |
| | | #endregion |
| | | |
| | | #region 创建数据============================================================ |
| | | // POST: Api/PuhuoShoukuan/GetCreate |
| | | /// <summary> |
| | | /// 创建数据 |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | [HttpPost] |
| | | [Description("创建数据")] |
| | | public AdminUiCallBack GetCreate() |
| | | { |
| | | //返回数据 |
| | | var jm = new AdminUiCallBack { code = 0 }; |
| | | return jm; |
| | | } |
| | | #endregion |
| | | |
| | | #region 创建提交============================================================ |
| | | // POST: Api/PuhuoShoukuan/DoCreate |
| | | /// <summary> |
| | | /// 创建提交 |
| | | /// </summary> |
| | | /// <param name="entity"></param> |
| | | /// <returns></returns> |
| | | [HttpPost] |
| | | [Description("创建提交")] |
| | | public async Task<AdminUiCallBack> DoCreate([FromBody]PuhuoShoukuan entity) |
| | | { |
| | | var jm = await _PuhuoShoukuanServices.InsertAsync(entity); |
| | | return jm; |
| | | } |
| | | #endregion |
| | | |
| | | #region 编辑数据============================================================ |
| | | // POST: Api/PuhuoShoukuan/GetEdit |
| | | /// <summary> |
| | | /// 编辑数据 |
| | | /// </summary> |
| | | /// <param name="entity"></param> |
| | | /// <returns></returns> |
| | | [HttpPost] |
| | | [Description("编辑数据")] |
| | | public async Task<AdminUiCallBack> GetEdit([FromBody]FMIntId entity) |
| | | { |
| | | var jm = new AdminUiCallBack(); |
| | | |
| | | var model = await _PuhuoShoukuanServices.QueryByIdAsync(entity.id, false); |
| | | if (model == null) |
| | | { |
| | | jm.msg = "不存在此信息"; |
| | | return jm; |
| | | } |
| | | jm.code = 0; |
| | | jm.data = model; |
| | | |
| | | return jm; |
| | | } |
| | | #endregion |
| | | |
| | | #region 编辑提交============================================================ |
| | | // POST: Api/PuhuoShoukuan/Edit |
| | | /// <summary> |
| | | /// 编辑提交 |
| | | /// </summary> |
| | | /// <param name="entity"></param> |
| | | /// <returns></returns> |
| | | [HttpPost] |
| | | [Description("编辑提交")] |
| | | public async Task<AdminUiCallBack> DoEdit([FromBody]PuhuoShoukuan entity) |
| | | { |
| | | var jm = await _PuhuoShoukuanServices.UpdateAsync(entity); |
| | | return jm; |
| | | } |
| | | #endregion |
| | | |
| | | #region 删除数据============================================================ |
| | | // POST: Api/PuhuoShoukuan/DoDelete/10 |
| | | /// <summary> |
| | | /// 单选删除 |
| | | /// </summary> |
| | | /// <param name="entity"></param> |
| | | /// <returns></returns> |
| | | [HttpPost] |
| | | [Description("单选删除")] |
| | | public async Task<AdminUiCallBack> DoDelete([FromBody]FMIntId entity) |
| | | { |
| | | var jm = new AdminUiCallBack(); |
| | | |
| | | var model = await _PuhuoShoukuanServices.ExistsAsync(p => p.id == entity.id, true); |
| | | if (!model) |
| | | { |
| | | jm.msg = GlobalConstVars.DataisNo; |
| | | return jm; |
| | | } |
| | | jm = await _PuhuoShoukuanServices.DeleteByIdAsync(entity.id); |
| | | |
| | | return jm; |
| | | } |
| | | #endregion |
| | | |
| | | #region 批量删除============================================================ |
| | | // POST: Api/PuhuoShoukuan/DoBatchDelete/10,11,20 |
| | | /// <summary> |
| | | /// 批量删除 |
| | | /// </summary> |
| | | /// <param name="entity"></param> |
| | | /// <returns></returns> |
| | | [HttpPost] |
| | | [Description("批量删除")] |
| | | public async Task<AdminUiCallBack> DoBatchDelete([FromBody]FMArrayIntIds entity) |
| | | { |
| | | var jm = await _PuhuoShoukuanServices.DeleteByIdsAsync(entity.id); |
| | | return jm; |
| | | } |
| | | |
| | | #endregion |
| | | |
| | | #region 预览数据============================================================ |
| | | // POST: Api/PuhuoShoukuan/GetDetails/10 |
| | | /// <summary> |
| | | /// 预览数据 |
| | | /// </summary> |
| | | /// <param name="entity"></param> |
| | | /// <returns></returns> |
| | | [HttpPost] |
| | | [Description("预览数据")] |
| | | public async Task<AdminUiCallBack> GetDetails([FromBody]FMIntId entity) |
| | | { |
| | | var jm = new AdminUiCallBack(); |
| | | |
| | | var model = await _PuhuoShoukuanServices.QueryByIdAsync(entity.id, false); |
| | | if (model == null) |
| | | { |
| | | jm.msg = "不存在此信息"; |
| | | return jm; |
| | | } |
| | | jm.code = 0; |
| | | jm.data = model; |
| | | |
| | | return jm; |
| | | } |
| | | #endregion |
| | | |
| | | #region 选择导出============================================================ |
| | | // POST: Api/PuhuoShoukuan/SelectExportExcel/10 |
| | | /// <summary> |
| | | /// 选择导出 |
| | | /// </summary> |
| | | /// <param name="entity"></param> |
| | | /// <returns></returns> |
| | | [HttpPost] |
| | | [Description("选择导出")] |
| | | public async Task<AdminUiCallBack> SelectExportExcel([FromBody]FMArrayIntIds entity) |
| | | { |
| | | var jm = new AdminUiCallBack(); |
| | | |
| | | //创建Excel文件的对象 |
| | | var book = new HSSFWorkbook(); |
| | | //添加一个sheet |
| | | var mySheet = book.CreateSheet("Sheet1"); |
| | | //获取list数据 |
| | | var listModel = await _PuhuoShoukuanServices.QueryListByClauseAsync(p => entity.id.Contains(p.id), p => p.id, OrderByType.Asc, true); |
| | | //给sheet1添加第一行的头部标题 |
| | | var headerRow = mySheet.CreateRow(0); |
| | | var headerStyle = ExcelHelper.GetHeaderStyle(book); |
| | | var cellNum = 0; |
| | | |
| | | var cell0 = headerRow.CreateCell(cellNum); |
| | | cell0.SetCellValue("主键ID"); |
| | | cell0.CellStyle = headerStyle; |
| | | mySheet.SetColumnWidth(cellNum, 10 * 256); |
| | | cellNum++; |
| | | |
| | | var cell1 = headerRow.CreateCell(cellNum); |
| | | cell1.SetCellValue("铺货id"); |
| | | cell1.CellStyle = headerStyle; |
| | | mySheet.SetColumnWidth(cellNum, 10 * 256); |
| | | cellNum++; |
| | | |
| | | var cell2 = headerRow.CreateCell(cellNum); |
| | | cell2.SetCellValue("经销商id"); |
| | | cell2.CellStyle = headerStyle; |
| | | mySheet.SetColumnWidth(cellNum, 10 * 256); |
| | | cellNum++; |
| | | |
| | | var cell3 = headerRow.CreateCell(cellNum); |
| | | cell3.SetCellValue("经销商"); |
| | | cell3.CellStyle = headerStyle; |
| | | mySheet.SetColumnWidth(cellNum, 10 * 256); |
| | | cellNum++; |
| | | |
| | | var cell4 = headerRow.CreateCell(cellNum); |
| | | cell4.SetCellValue("区域"); |
| | | cell4.CellStyle = headerStyle; |
| | | mySheet.SetColumnWidth(cellNum, 10 * 256); |
| | | cellNum++; |
| | | |
| | | var cell5 = headerRow.CreateCell(cellNum); |
| | | cell5.SetCellValue("区域名称"); |
| | | cell5.CellStyle = headerStyle; |
| | | mySheet.SetColumnWidth(cellNum, 10 * 256); |
| | | cellNum++; |
| | | |
| | | var cell6 = headerRow.CreateCell(cellNum); |
| | | cell6.SetCellValue("商品分类id"); |
| | | cell6.CellStyle = headerStyle; |
| | | mySheet.SetColumnWidth(cellNum, 10 * 256); |
| | | cellNum++; |
| | | |
| | | var cell7 = headerRow.CreateCell(cellNum); |
| | | cell7.SetCellValue("商品分类"); |
| | | cell7.CellStyle = headerStyle; |
| | | mySheet.SetColumnWidth(cellNum, 10 * 256); |
| | | cellNum++; |
| | | |
| | | var cell8 = headerRow.CreateCell(cellNum); |
| | | cell8.SetCellValue("商品id"); |
| | | cell8.CellStyle = headerStyle; |
| | | mySheet.SetColumnWidth(cellNum, 10 * 256); |
| | | cellNum++; |
| | | |
| | | var cell9 = headerRow.CreateCell(cellNum); |
| | | cell9.SetCellValue("商品名称"); |
| | | cell9.CellStyle = headerStyle; |
| | | mySheet.SetColumnWidth(cellNum, 10 * 256); |
| | | cellNum++; |
| | | |
| | | var cell10 = headerRow.CreateCell(cellNum); |
| | | cell10.SetCellValue("货品id"); |
| | | cell10.CellStyle = headerStyle; |
| | | mySheet.SetColumnWidth(cellNum, 10 * 256); |
| | | cellNum++; |
| | | |
| | | var cell11 = headerRow.CreateCell(cellNum); |
| | | cell11.SetCellValue("货品编号"); |
| | | cell11.CellStyle = headerStyle; |
| | | mySheet.SetColumnWidth(cellNum, 10 * 256); |
| | | cellNum++; |
| | | |
| | | var cell12 = headerRow.CreateCell(cellNum); |
| | | cell12.SetCellValue("货品规格"); |
| | | cell12.CellStyle = headerStyle; |
| | | mySheet.SetColumnWidth(cellNum, 10 * 256); |
| | | cellNum++; |
| | | |
| | | var cell13 = headerRow.CreateCell(cellNum); |
| | | cell13.SetCellValue("货品价格"); |
| | | cell13.CellStyle = headerStyle; |
| | | mySheet.SetColumnWidth(cellNum, 10 * 256); |
| | | cellNum++; |
| | | |
| | | var cell14 = headerRow.CreateCell(cellNum); |
| | | cell14.SetCellValue("数量"); |
| | | cell14.CellStyle = headerStyle; |
| | | mySheet.SetColumnWidth(cellNum, 10 * 256); |
| | | cellNum++; |
| | | |
| | | var cell15 = headerRow.CreateCell(cellNum); |
| | | cell15.SetCellValue("金额"); |
| | | cell15.CellStyle = headerStyle; |
| | | mySheet.SetColumnWidth(cellNum, 10 * 256); |
| | | cellNum++; |
| | | |
| | | var cell16 = headerRow.CreateCell(cellNum); |
| | | cell16.SetCellValue("收款数量"); |
| | | cell16.CellStyle = headerStyle; |
| | | mySheet.SetColumnWidth(cellNum, 10 * 256); |
| | | cellNum++; |
| | | |
| | | var cell17 = headerRow.CreateCell(cellNum); |
| | | cell17.SetCellValue("收款金额"); |
| | | cell17.CellStyle = headerStyle; |
| | | mySheet.SetColumnWidth(cellNum, 10 * 256); |
| | | cellNum++; |
| | | |
| | | var cell18 = headerRow.CreateCell(cellNum); |
| | | cell18.SetCellValue("建立时间"); |
| | | cell18.CellStyle = headerStyle; |
| | | mySheet.SetColumnWidth(cellNum, 10 * 256); |
| | | cellNum++; |
| | | |
| | | var cell19 = headerRow.CreateCell(cellNum); |
| | | cell19.SetCellValue("修改时间"); |
| | | cell19.CellStyle = headerStyle; |
| | | mySheet.SetColumnWidth(cellNum, 10 * 256); |
| | | cellNum++; |
| | | |
| | | var cell20 = headerRow.CreateCell(cellNum); |
| | | cell20.SetCellValue("创建人"); |
| | | cell20.CellStyle = headerStyle; |
| | | mySheet.SetColumnWidth(cellNum, 10 * 256); |
| | | cellNum++; |
| | | |
| | | var cell21 = headerRow.CreateCell(cellNum); |
| | | cell21.SetCellValue("修改人"); |
| | | cell21.CellStyle = headerStyle; |
| | | mySheet.SetColumnWidth(cellNum, 10 * 256); |
| | | cellNum++; |
| | | |
| | | var cell22 = headerRow.CreateCell(cellNum); |
| | | cell22.SetCellValue("删除标志"); |
| | | cell22.CellStyle = headerStyle; |
| | | mySheet.SetColumnWidth(cellNum, 10 * 256); |
| | | cellNum++; |
| | | |
| | | headerRow.Height = 30 * 20; |
| | | var commonCellStyle = ExcelHelper.GetCommonStyle(book); |
| | | |
| | | //将数据逐步写入sheet1各个行 |
| | | for (var i = 0; i < listModel.Count; i++) |
| | | { |
| | | var rowTemp = mySheet.CreateRow(i + 1); |
| | | var cellNumTemp = 0; |
| | | |
| | | var rowTemp0 = rowTemp.CreateCell(cellNumTemp); |
| | | rowTemp0.SetCellValue(listModel[i].id.ToString()); |
| | | rowTemp0.CellStyle = commonCellStyle; |
| | | cellNumTemp++; |
| | | |
| | | var rowTemp1 = rowTemp.CreateCell(cellNumTemp); |
| | | rowTemp1.SetCellValue(listModel[i].puhuoId.ToString()); |
| | | rowTemp1.CellStyle = commonCellStyle; |
| | | cellNumTemp++; |
| | | |
| | | var rowTemp2 = rowTemp.CreateCell(cellNumTemp); |
| | | rowTemp2.SetCellValue(listModel[i].distributionId.ToString()); |
| | | rowTemp2.CellStyle = commonCellStyle; |
| | | cellNumTemp++; |
| | | |
| | | var rowTemp3 = rowTemp.CreateCell(cellNumTemp); |
| | | rowTemp3.SetCellValue(listModel[i].distributionName.ToString()); |
| | | rowTemp3.CellStyle = commonCellStyle; |
| | | cellNumTemp++; |
| | | |
| | | var rowTemp4 = rowTemp.CreateCell(cellNumTemp); |
| | | rowTemp4.SetCellValue(listModel[i].areaCode.ToString()); |
| | | rowTemp4.CellStyle = commonCellStyle; |
| | | cellNumTemp++; |
| | | |
| | | var rowTemp5 = rowTemp.CreateCell(cellNumTemp); |
| | | rowTemp5.SetCellValue(listModel[i].areaCodeName.ToString()); |
| | | rowTemp5.CellStyle = commonCellStyle; |
| | | cellNumTemp++; |
| | | |
| | | var rowTemp6 = rowTemp.CreateCell(cellNumTemp); |
| | | rowTemp6.SetCellValue(listModel[i].CategoryId.ToString()); |
| | | rowTemp6.CellStyle = commonCellStyle; |
| | | cellNumTemp++; |
| | | |
| | | var rowTemp7 = rowTemp.CreateCell(cellNumTemp); |
| | | rowTemp7.SetCellValue(listModel[i].CategoryName.ToString()); |
| | | rowTemp7.CellStyle = commonCellStyle; |
| | | cellNumTemp++; |
| | | |
| | | var rowTemp8 = rowTemp.CreateCell(cellNumTemp); |
| | | rowTemp8.SetCellValue(listModel[i].goodsId.ToString()); |
| | | rowTemp8.CellStyle = commonCellStyle; |
| | | cellNumTemp++; |
| | | |
| | | var rowTemp9 = rowTemp.CreateCell(cellNumTemp); |
| | | rowTemp9.SetCellValue(listModel[i].goodsName.ToString()); |
| | | rowTemp9.CellStyle = commonCellStyle; |
| | | cellNumTemp++; |
| | | |
| | | var rowTemp10 = rowTemp.CreateCell(cellNumTemp); |
| | | rowTemp10.SetCellValue(listModel[i].productsId.ToString()); |
| | | rowTemp10.CellStyle = commonCellStyle; |
| | | cellNumTemp++; |
| | | |
| | | var rowTemp11 = rowTemp.CreateCell(cellNumTemp); |
| | | rowTemp11.SetCellValue(listModel[i].productsName.ToString()); |
| | | rowTemp11.CellStyle = commonCellStyle; |
| | | cellNumTemp++; |
| | | |
| | | var rowTemp12 = rowTemp.CreateCell(cellNumTemp); |
| | | rowTemp12.SetCellValue(listModel[i].spesDesc.ToString()); |
| | | rowTemp12.CellStyle = commonCellStyle; |
| | | cellNumTemp++; |
| | | |
| | | var rowTemp13 = rowTemp.CreateCell(cellNumTemp); |
| | | rowTemp13.SetCellValue(listModel[i].price.ToString()); |
| | | rowTemp13.CellStyle = commonCellStyle; |
| | | cellNumTemp++; |
| | | |
| | | var rowTemp14 = rowTemp.CreateCell(cellNumTemp); |
| | | rowTemp14.SetCellValue(listModel[i].nums.ToString()); |
| | | rowTemp14.CellStyle = commonCellStyle; |
| | | cellNumTemp++; |
| | | |
| | | var rowTemp15 = rowTemp.CreateCell(cellNumTemp); |
| | | rowTemp15.SetCellValue(listModel[i].amount.ToString()); |
| | | rowTemp15.CellStyle = commonCellStyle; |
| | | cellNumTemp++; |
| | | |
| | | var rowTemp16 = rowTemp.CreateCell(cellNumTemp); |
| | | rowTemp16.SetCellValue(listModel[i].shoukuannums.ToString()); |
| | | rowTemp16.CellStyle = commonCellStyle; |
| | | cellNumTemp++; |
| | | |
| | | var rowTemp17 = rowTemp.CreateCell(cellNumTemp); |
| | | rowTemp17.SetCellValue(listModel[i].shoukuanamount.ToString()); |
| | | rowTemp17.CellStyle = commonCellStyle; |
| | | cellNumTemp++; |
| | | |
| | | var rowTemp18 = rowTemp.CreateCell(cellNumTemp); |
| | | rowTemp18.SetCellValue(listModel[i].createTime.ToString()); |
| | | rowTemp18.CellStyle = commonCellStyle; |
| | | cellNumTemp++; |
| | | |
| | | var rowTemp19 = rowTemp.CreateCell(cellNumTemp); |
| | | rowTemp19.SetCellValue(listModel[i].upDataTime.ToString()); |
| | | rowTemp19.CellStyle = commonCellStyle; |
| | | cellNumTemp++; |
| | | |
| | | var rowTemp20 = rowTemp.CreateCell(cellNumTemp); |
| | | rowTemp20.SetCellValue(listModel[i].createBy.ToString()); |
| | | rowTemp20.CellStyle = commonCellStyle; |
| | | cellNumTemp++; |
| | | |
| | | var rowTemp21 = rowTemp.CreateCell(cellNumTemp); |
| | | rowTemp21.SetCellValue(listModel[i].upDataBy.ToString()); |
| | | rowTemp21.CellStyle = commonCellStyle; |
| | | cellNumTemp++; |
| | | |
| | | var rowTemp22 = rowTemp.CreateCell(cellNumTemp); |
| | | rowTemp22.SetCellValue(listModel[i].isdelete.ToString()); |
| | | rowTemp22.CellStyle = commonCellStyle; |
| | | cellNumTemp++; |
| | | |
| | | } |
| | | // 导出excel |
| | | string webRootPath = _webHostEnvironment.WebRootPath; |
| | | string tpath = "/files/" + DateTime.Now.ToString("yyyy-MM-dd") + "/"; |
| | | string fileName = DateTime.Now.ToString("yyyyMMddHHmmssfff") + "-PuhuoShoukuan导出(选择结果).xls"; |
| | | string filePath = webRootPath + tpath; |
| | | DirectoryInfo di = new DirectoryInfo(filePath); |
| | | if (!di.Exists) |
| | | { |
| | | di.Create(); |
| | | } |
| | | FileStream fileHssf = new FileStream(filePath + fileName, FileMode.Create); |
| | | book.Write(fileHssf); |
| | | fileHssf.Close(); |
| | | |
| | | jm.code = 0; |
| | | jm.msg = GlobalConstVars.ExcelExportSuccess; |
| | | jm.data = tpath + fileName; |
| | | |
| | | return jm; |
| | | } |
| | | #endregion |
| | | |
| | | #region 查询导出============================================================ |
| | | // POST: Api/PuhuoShoukuan/QueryExportExcel/10 |
| | | /// <summary> |
| | | /// 查询导出 |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | [HttpPost] |
| | | [Description("查询导出")] |
| | | public async Task<AdminUiCallBack> QueryExportExcel() |
| | | { |
| | | var jm = new AdminUiCallBack(); |
| | | |
| | | var where = PredicateBuilder.True<PuhuoShoukuan>(); |
| | | //查询筛选 |
| | | |
| | | //主键ID int |
| | | var id = Request.Form["id"].FirstOrDefault().ObjectToInt(0); |
| | | if (id > 0) |
| | | { |
| | | where = where.And(p => p.id == id); |
| | | } |
| | | //铺货id int |
| | | var puhuoId = Request.Form["puhuoId"].FirstOrDefault().ObjectToInt(0); |
| | | if (puhuoId > 0) |
| | | { |
| | | where = where.And(p => p.puhuoId == puhuoId); |
| | | } |
| | | //经销商id int |
| | | var distributionId = Request.Form["distributionId"].FirstOrDefault().ObjectToInt(0); |
| | | if (distributionId > 0) |
| | | { |
| | | where = where.And(p => p.distributionId == distributionId); |
| | | } |
| | | //经销商 varchar |
| | | var distributionName = Request.Form["distributionName"].FirstOrDefault(); |
| | | if (!string.IsNullOrEmpty(distributionName)) |
| | | { |
| | | where = where.And(p => p.distributionName.Contains(distributionName)); |
| | | } |
| | | //区域 varchar |
| | | var areaCode = Request.Form["areaCode"].FirstOrDefault(); |
| | | if (!string.IsNullOrEmpty(areaCode)) |
| | | { |
| | | where = where.And(p => p.areaCode.Contains(areaCode)); |
| | | } |
| | | //区域名称 varchar |
| | | var areaCodeName = Request.Form["areaCodeName"].FirstOrDefault(); |
| | | if (!string.IsNullOrEmpty(areaCodeName)) |
| | | { |
| | | where = where.And(p => p.areaCodeName.Contains(areaCodeName)); |
| | | } |
| | | //商品分类id int |
| | | var CategoryId = Request.Form["CategoryId"].FirstOrDefault().ObjectToInt(0); |
| | | if (CategoryId > 0) |
| | | { |
| | | where = where.And(p => p.CategoryId == CategoryId); |
| | | } |
| | | //商品分类 varchar |
| | | var CategoryName = Request.Form["CategoryName"].FirstOrDefault(); |
| | | if (!string.IsNullOrEmpty(CategoryName)) |
| | | { |
| | | where = where.And(p => p.CategoryName.Contains(CategoryName)); |
| | | } |
| | | //商品id int |
| | | var goodsId = Request.Form["goodsId"].FirstOrDefault().ObjectToInt(0); |
| | | if (goodsId > 0) |
| | | { |
| | | where = where.And(p => p.goodsId == goodsId); |
| | | } |
| | | //商品名称 varchar |
| | | var goodsName = Request.Form["goodsName"].FirstOrDefault(); |
| | | if (!string.IsNullOrEmpty(goodsName)) |
| | | { |
| | | where = where.And(p => p.goodsName.Contains(goodsName)); |
| | | } |
| | | //货品id int |
| | | var productsId = Request.Form["productsId"].FirstOrDefault().ObjectToInt(0); |
| | | if (productsId > 0) |
| | | { |
| | | where = where.And(p => p.productsId == productsId); |
| | | } |
| | | //货品编号 varchar |
| | | var productsName = Request.Form["productsName"].FirstOrDefault(); |
| | | if (!string.IsNullOrEmpty(productsName)) |
| | | { |
| | | where = where.And(p => p.productsName.Contains(productsName)); |
| | | } |
| | | //货品规格 varchar |
| | | var spesDesc = Request.Form["spesDesc"].FirstOrDefault(); |
| | | if (!string.IsNullOrEmpty(spesDesc)) |
| | | { |
| | | where = where.And(p => p.spesDesc.Contains(spesDesc)); |
| | | } |
| | | //货品价格 decimal |
| | | var price = Request.Form["price"].FirstOrDefault().ObjectToDecimal(0); |
| | | if (price > 0) |
| | | { |
| | | where = where.And(p => p.price == price); |
| | | } |
| | | //数量 int |
| | | var nums = Request.Form["nums"].FirstOrDefault().ObjectToInt(0); |
| | | if (nums > 0) |
| | | { |
| | | where = where.And(p => p.nums == nums); |
| | | } |
| | | //金额 decimal |
| | | var amount = Request.Form["amount"].FirstOrDefault().ObjectToDecimal(0); |
| | | if (amount > 0) |
| | | { |
| | | where = where.And(p => p.amount == amount); |
| | | } |
| | | //收款数量 int |
| | | var shoukuannums = Request.Form["shoukuannums"].FirstOrDefault().ObjectToInt(0); |
| | | if (shoukuannums > 0) |
| | | { |
| | | where = where.And(p => p.shoukuannums == shoukuannums); |
| | | } |
| | | //收款金额 decimal |
| | | var shoukuanamount = Request.Form["shoukuanamount"].FirstOrDefault().ObjectToDecimal(0); |
| | | if (shoukuanamount > 0) |
| | | { |
| | | where = where.And(p => p.shoukuanamount == shoukuanamount); |
| | | } |
| | | //建立时间 datetime |
| | | var createTime = Request.Form["createTime"].FirstOrDefault(); |
| | | if (!string.IsNullOrEmpty(createTime)) |
| | | { |
| | | if (createTime.Contains("到")) |
| | | { |
| | | var dts = createTime.Split("到"); |
| | | var dtStart = dts[0].Trim().ObjectToDate(); |
| | | where = where.And(p => p.createTime > dtStart); |
| | | var dtEnd = dts[1].Trim().ObjectToDate(); |
| | | where = where.And(p => p.createTime < dtEnd); |
| | | } |
| | | else |
| | | { |
| | | var dt = createTime.ObjectToDate(); |
| | | where = where.And(p => p.createTime > dt); |
| | | } |
| | | } |
| | | //修改时间 datetime |
| | | var upDataTime = Request.Form["upDataTime"].FirstOrDefault(); |
| | | if (!string.IsNullOrEmpty(upDataTime)) |
| | | { |
| | | if (upDataTime.Contains("到")) |
| | | { |
| | | var dts = upDataTime.Split("到"); |
| | | var dtStart = dts[0].Trim().ObjectToDate(); |
| | | where = where.And(p => p.upDataTime > dtStart); |
| | | var dtEnd = dts[1].Trim().ObjectToDate(); |
| | | where = where.And(p => p.upDataTime < dtEnd); |
| | | } |
| | | else |
| | | { |
| | | var dt = upDataTime.ObjectToDate(); |
| | | where = where.And(p => p.upDataTime > dt); |
| | | } |
| | | } |
| | | //创建人 varchar |
| | | var createBy = Request.Form["createBy"].FirstOrDefault(); |
| | | if (!string.IsNullOrEmpty(createBy)) |
| | | { |
| | | where = where.And(p => p.createBy.Contains(createBy)); |
| | | } |
| | | //修改人 varchar |
| | | var upDataBy = Request.Form["upDataBy"].FirstOrDefault(); |
| | | if (!string.IsNullOrEmpty(upDataBy)) |
| | | { |
| | | where = where.And(p => p.upDataBy.Contains(upDataBy)); |
| | | } |
| | | //删除标志 bit |
| | | var isdelete = Request.Form["isdelete"].FirstOrDefault(); |
| | | if (!string.IsNullOrEmpty(isdelete) && isdelete.ToLowerInvariant() == "true") |
| | | { |
| | | where = where.And(p => p.isdelete == true); |
| | | } |
| | | else if (!string.IsNullOrEmpty(isdelete) && isdelete.ToLowerInvariant() == "false") |
| | | { |
| | | where = where.And(p => p.isdelete == false); |
| | | } |
| | | //获取数据 |
| | | //创建Excel文件的对象 |
| | | var book = new HSSFWorkbook(); |
| | | //添加一个sheet |
| | | var mySheet = book.CreateSheet("Sheet1"); |
| | | //获取list数据 |
| | | var listModel = await _PuhuoShoukuanServices.QueryListByClauseAsync(where, p => p.id, OrderByType.Asc, true); |
| | | //给sheet1添加第一行的头部标题 |
| | | var headerRow = mySheet.CreateRow(0); |
| | | var headerStyle = ExcelHelper.GetHeaderStyle(book); |
| | | var cellNum = 0; |
| | | |
| | | var cell0 = headerRow.CreateCell(cellNum); |
| | | cell0.SetCellValue("主键ID"); |
| | | cell0.CellStyle = headerStyle; |
| | | mySheet.SetColumnWidth(cellNum, 10 * 256); |
| | | cellNum++; |
| | | |
| | | var cell1 = headerRow.CreateCell(cellNum); |
| | | cell1.SetCellValue("铺货id"); |
| | | cell1.CellStyle = headerStyle; |
| | | mySheet.SetColumnWidth(cellNum, 10 * 256); |
| | | cellNum++; |
| | | |
| | | var cell2 = headerRow.CreateCell(cellNum); |
| | | cell2.SetCellValue("经销商id"); |
| | | cell2.CellStyle = headerStyle; |
| | | mySheet.SetColumnWidth(cellNum, 10 * 256); |
| | | cellNum++; |
| | | |
| | | var cell3 = headerRow.CreateCell(cellNum); |
| | | cell3.SetCellValue("经销商"); |
| | | cell3.CellStyle = headerStyle; |
| | | mySheet.SetColumnWidth(cellNum, 10 * 256); |
| | | cellNum++; |
| | | |
| | | var cell4 = headerRow.CreateCell(cellNum); |
| | | cell4.SetCellValue("区域"); |
| | | cell4.CellStyle = headerStyle; |
| | | mySheet.SetColumnWidth(cellNum, 10 * 256); |
| | | cellNum++; |
| | | |
| | | var cell5 = headerRow.CreateCell(cellNum); |
| | | cell5.SetCellValue("区域名称"); |
| | | cell5.CellStyle = headerStyle; |
| | | mySheet.SetColumnWidth(cellNum, 10 * 256); |
| | | cellNum++; |
| | | |
| | | var cell6 = headerRow.CreateCell(cellNum); |
| | | cell6.SetCellValue("商品分类id"); |
| | | cell6.CellStyle = headerStyle; |
| | | mySheet.SetColumnWidth(cellNum, 10 * 256); |
| | | cellNum++; |
| | | |
| | | var cell7 = headerRow.CreateCell(cellNum); |
| | | cell7.SetCellValue("商品分类"); |
| | | cell7.CellStyle = headerStyle; |
| | | mySheet.SetColumnWidth(cellNum, 10 * 256); |
| | | cellNum++; |
| | | |
| | | var cell8 = headerRow.CreateCell(cellNum); |
| | | cell8.SetCellValue("商品id"); |
| | | cell8.CellStyle = headerStyle; |
| | | mySheet.SetColumnWidth(cellNum, 10 * 256); |
| | | cellNum++; |
| | | |
| | | var cell9 = headerRow.CreateCell(cellNum); |
| | | cell9.SetCellValue("商品名称"); |
| | | cell9.CellStyle = headerStyle; |
| | | mySheet.SetColumnWidth(cellNum, 10 * 256); |
| | | cellNum++; |
| | | |
| | | var cell10 = headerRow.CreateCell(cellNum); |
| | | cell10.SetCellValue("货品id"); |
| | | cell10.CellStyle = headerStyle; |
| | | mySheet.SetColumnWidth(cellNum, 10 * 256); |
| | | cellNum++; |
| | | |
| | | var cell11 = headerRow.CreateCell(cellNum); |
| | | cell11.SetCellValue("货品编号"); |
| | | cell11.CellStyle = headerStyle; |
| | | mySheet.SetColumnWidth(cellNum, 10 * 256); |
| | | cellNum++; |
| | | |
| | | var cell12 = headerRow.CreateCell(cellNum); |
| | | cell12.SetCellValue("货品规格"); |
| | | cell12.CellStyle = headerStyle; |
| | | mySheet.SetColumnWidth(cellNum, 10 * 256); |
| | | cellNum++; |
| | | |
| | | var cell13 = headerRow.CreateCell(cellNum); |
| | | cell13.SetCellValue("货品价格"); |
| | | cell13.CellStyle = headerStyle; |
| | | mySheet.SetColumnWidth(cellNum, 10 * 256); |
| | | cellNum++; |
| | | |
| | | var cell14 = headerRow.CreateCell(cellNum); |
| | | cell14.SetCellValue("数量"); |
| | | cell14.CellStyle = headerStyle; |
| | | mySheet.SetColumnWidth(cellNum, 10 * 256); |
| | | cellNum++; |
| | | |
| | | var cell15 = headerRow.CreateCell(cellNum); |
| | | cell15.SetCellValue("金额"); |
| | | cell15.CellStyle = headerStyle; |
| | | mySheet.SetColumnWidth(cellNum, 10 * 256); |
| | | cellNum++; |
| | | |
| | | var cell16 = headerRow.CreateCell(cellNum); |
| | | cell16.SetCellValue("收款数量"); |
| | | cell16.CellStyle = headerStyle; |
| | | mySheet.SetColumnWidth(cellNum, 10 * 256); |
| | | cellNum++; |
| | | |
| | | var cell17 = headerRow.CreateCell(cellNum); |
| | | cell17.SetCellValue("收款金额"); |
| | | cell17.CellStyle = headerStyle; |
| | | mySheet.SetColumnWidth(cellNum, 10 * 256); |
| | | cellNum++; |
| | | |
| | | var cell18 = headerRow.CreateCell(cellNum); |
| | | cell18.SetCellValue("建立时间"); |
| | | cell18.CellStyle = headerStyle; |
| | | mySheet.SetColumnWidth(cellNum, 10 * 256); |
| | | cellNum++; |
| | | |
| | | var cell19 = headerRow.CreateCell(cellNum); |
| | | cell19.SetCellValue("修改时间"); |
| | | cell19.CellStyle = headerStyle; |
| | | mySheet.SetColumnWidth(cellNum, 10 * 256); |
| | | cellNum++; |
| | | |
| | | var cell20 = headerRow.CreateCell(cellNum); |
| | | cell20.SetCellValue("创建人"); |
| | | cell20.CellStyle = headerStyle; |
| | | mySheet.SetColumnWidth(cellNum, 10 * 256); |
| | | cellNum++; |
| | | |
| | | var cell21 = headerRow.CreateCell(cellNum); |
| | | cell21.SetCellValue("修改人"); |
| | | cell21.CellStyle = headerStyle; |
| | | mySheet.SetColumnWidth(cellNum, 10 * 256); |
| | | cellNum++; |
| | | |
| | | var cell22 = headerRow.CreateCell(cellNum); |
| | | cell22.SetCellValue("删除标志"); |
| | | cell22.CellStyle = headerStyle; |
| | | mySheet.SetColumnWidth(cellNum, 10 * 256); |
| | | cellNum++; |
| | | |
| | | |
| | | headerRow.Height = 30 * 20; |
| | | var commonCellStyle = ExcelHelper.GetCommonStyle(book); |
| | | |
| | | //将数据逐步写入sheet1各个行 |
| | | for (var i = 0; i < listModel.Count; i++) |
| | | { |
| | | var rowTemp = mySheet.CreateRow(i + 1); |
| | | var cellNumTemp = 0; |
| | | |
| | | var rowTemp0 = rowTemp.CreateCell(cellNumTemp); |
| | | rowTemp0.SetCellValue(listModel[i].id.ToString()); |
| | | rowTemp0.CellStyle = commonCellStyle; |
| | | cellNumTemp++; |
| | | |
| | | var rowTemp1 = rowTemp.CreateCell(cellNumTemp); |
| | | rowTemp1.SetCellValue(listModel[i].puhuoId.ToString()); |
| | | rowTemp1.CellStyle = commonCellStyle; |
| | | cellNumTemp++; |
| | | |
| | | var rowTemp2 = rowTemp.CreateCell(cellNumTemp); |
| | | rowTemp2.SetCellValue(listModel[i].distributionId.ToString()); |
| | | rowTemp2.CellStyle = commonCellStyle; |
| | | cellNumTemp++; |
| | | |
| | | var rowTemp3 = rowTemp.CreateCell(cellNumTemp); |
| | | rowTemp3.SetCellValue(listModel[i].distributionName.ToString()); |
| | | rowTemp3.CellStyle = commonCellStyle; |
| | | cellNumTemp++; |
| | | |
| | | var rowTemp4 = rowTemp.CreateCell(cellNumTemp); |
| | | rowTemp4.SetCellValue(listModel[i].areaCode.ToString()); |
| | | rowTemp4.CellStyle = commonCellStyle; |
| | | cellNumTemp++; |
| | | |
| | | var rowTemp5 = rowTemp.CreateCell(cellNumTemp); |
| | | rowTemp5.SetCellValue(listModel[i].areaCodeName.ToString()); |
| | | rowTemp5.CellStyle = commonCellStyle; |
| | | cellNumTemp++; |
| | | |
| | | var rowTemp6 = rowTemp.CreateCell(cellNumTemp); |
| | | rowTemp6.SetCellValue(listModel[i].CategoryId.ToString()); |
| | | rowTemp6.CellStyle = commonCellStyle; |
| | | cellNumTemp++; |
| | | |
| | | var rowTemp7 = rowTemp.CreateCell(cellNumTemp); |
| | | rowTemp7.SetCellValue(listModel[i].CategoryName.ToString()); |
| | | rowTemp7.CellStyle = commonCellStyle; |
| | | cellNumTemp++; |
| | | |
| | | var rowTemp8 = rowTemp.CreateCell(cellNumTemp); |
| | | rowTemp8.SetCellValue(listModel[i].goodsId.ToString()); |
| | | rowTemp8.CellStyle = commonCellStyle; |
| | | cellNumTemp++; |
| | | |
| | | var rowTemp9 = rowTemp.CreateCell(cellNumTemp); |
| | | rowTemp9.SetCellValue(listModel[i].goodsName.ToString()); |
| | | rowTemp9.CellStyle = commonCellStyle; |
| | | cellNumTemp++; |
| | | |
| | | var rowTemp10 = rowTemp.CreateCell(cellNumTemp); |
| | | rowTemp10.SetCellValue(listModel[i].productsId.ToString()); |
| | | rowTemp10.CellStyle = commonCellStyle; |
| | | cellNumTemp++; |
| | | |
| | | var rowTemp11 = rowTemp.CreateCell(cellNumTemp); |
| | | rowTemp11.SetCellValue(listModel[i].productsName.ToString()); |
| | | rowTemp11.CellStyle = commonCellStyle; |
| | | cellNumTemp++; |
| | | |
| | | var rowTemp12 = rowTemp.CreateCell(cellNumTemp); |
| | | rowTemp12.SetCellValue(listModel[i].spesDesc.ToString()); |
| | | rowTemp12.CellStyle = commonCellStyle; |
| | | cellNumTemp++; |
| | | |
| | | var rowTemp13 = rowTemp.CreateCell(cellNumTemp); |
| | | rowTemp13.SetCellValue(listModel[i].price.ToString()); |
| | | rowTemp13.CellStyle = commonCellStyle; |
| | | cellNumTemp++; |
| | | |
| | | var rowTemp14 = rowTemp.CreateCell(cellNumTemp); |
| | | rowTemp14.SetCellValue(listModel[i].nums.ToString()); |
| | | rowTemp14.CellStyle = commonCellStyle; |
| | | cellNumTemp++; |
| | | |
| | | var rowTemp15 = rowTemp.CreateCell(cellNumTemp); |
| | | rowTemp15.SetCellValue(listModel[i].amount.ToString()); |
| | | rowTemp15.CellStyle = commonCellStyle; |
| | | cellNumTemp++; |
| | | |
| | | var rowTemp16 = rowTemp.CreateCell(cellNumTemp); |
| | | rowTemp16.SetCellValue(listModel[i].shoukuannums.ToString()); |
| | | rowTemp16.CellStyle = commonCellStyle; |
| | | cellNumTemp++; |
| | | |
| | | var rowTemp17 = rowTemp.CreateCell(cellNumTemp); |
| | | rowTemp17.SetCellValue(listModel[i].shoukuanamount.ToString()); |
| | | rowTemp17.CellStyle = commonCellStyle; |
| | | cellNumTemp++; |
| | | |
| | | var rowTemp18 = rowTemp.CreateCell(cellNumTemp); |
| | | rowTemp18.SetCellValue(listModel[i].createTime.ToString()); |
| | | rowTemp18.CellStyle = commonCellStyle; |
| | | cellNumTemp++; |
| | | |
| | | var rowTemp19 = rowTemp.CreateCell(cellNumTemp); |
| | | rowTemp19.SetCellValue(listModel[i].upDataTime.ToString()); |
| | | rowTemp19.CellStyle = commonCellStyle; |
| | | cellNumTemp++; |
| | | |
| | | var rowTemp20 = rowTemp.CreateCell(cellNumTemp); |
| | | rowTemp20.SetCellValue(listModel[i].createBy.ToString()); |
| | | rowTemp20.CellStyle = commonCellStyle; |
| | | cellNumTemp++; |
| | | |
| | | var rowTemp21 = rowTemp.CreateCell(cellNumTemp); |
| | | rowTemp21.SetCellValue(listModel[i].upDataBy.ToString()); |
| | | rowTemp21.CellStyle = commonCellStyle; |
| | | cellNumTemp++; |
| | | |
| | | var rowTemp22 = rowTemp.CreateCell(cellNumTemp); |
| | | rowTemp22.SetCellValue(listModel[i].isdelete.ToString()); |
| | | rowTemp22.CellStyle = commonCellStyle; |
| | | cellNumTemp++; |
| | | |
| | | } |
| | | // 写入到excel |
| | | string webRootPath = _webHostEnvironment.WebRootPath; |
| | | string tpath = "/files/" + DateTime.Now.ToString("yyyy-MM-dd") + "/"; |
| | | string fileName = DateTime.Now.ToString("yyyyMMddHHmmssfff") + "-PuhuoShoukuan导出(查询结果).xls"; |
| | | string filePath = webRootPath + tpath; |
| | | DirectoryInfo di = new DirectoryInfo(filePath); |
| | | if (!di.Exists) |
| | | { |
| | | di.Create(); |
| | | } |
| | | FileStream fileHssf = new FileStream(filePath + fileName, FileMode.Create); |
| | | book.Write(fileHssf); |
| | | fileHssf.Close(); |
| | | |
| | | jm.code = 0; |
| | | jm.msg = GlobalConstVars.ExcelExportSuccess; |
| | | jm.data = tpath + fileName; |
| | | |
| | | return jm; |
| | | } |
| | | #endregion |
| | | |
| | | |
| | | #region 设置删除标志============================================================ |
| | | // POST: Api/PuhuoShoukuan/DoSetisdelete/10 |
| | | /// <summary> |
| | | /// 设置删除标志 |
| | | /// </summary> |
| | | /// <param name="entity"></param> |
| | | /// <returns></returns> |
| | | [HttpPost] |
| | | [Description("设置删除标志")] |
| | | public async Task<AdminUiCallBack> DoSetisdelete([FromBody]FMUpdateBoolDataByIntId entity) |
| | | { |
| | | var jm = new AdminUiCallBack(); |
| | | |
| | | var oldModel = await _PuhuoShoukuanServices.QueryByIdAsync(entity.id, false); |
| | | if (oldModel == null) |
| | | { |
| | | jm.msg = "不存在此信息"; |
| | | return jm; |
| | | } |
| | | oldModel.isdelete = (bool)entity.data; |
| | | |
| | | var bl = await _PuhuoShoukuanServices.UpdateAsync(p => new PuhuoShoukuan() { isdelete = oldModel.isdelete }, p => p.id == oldModel.id); |
| | | jm.code = bl ? 0 : 1; |
| | | jm.msg = bl ? GlobalConstVars.EditSuccess : GlobalConstVars.EditFailure; |
| | | |
| | | return jm; |
| | | } |
| | | #endregion |
| | | |
| | | |
| | | } |
| | | } |
| | |
| | | if (data.data.length > 0) { |
| | | for (var i = 0; i < data.data.length; i++) { |
| | | |
| | | var o = '<option value="' + data.data[i].id + '" >' + data.data[i].sn + '</option>'; |
| | | var o = '<option value="' + data.data[i].id + '" >' + data.data[i].sn + ' ' + data.data[i].spesDesc + '</option>'; |
| | | quxian.append(o); |
| | | } |
| | | // 使用form.render方法重新渲染select |
| | |
| | | <tbody> |
| | | |
| | | <tr> |
| | | <td style="background-color:lightsteelblue;width:12.5%;"> |
| | | <td style="background-color:lightsteelblue;width:15.5%;"> |
| | | 区域 |
| | | </td> |
| | | <td style="background-color: lightsteelblue; width: 12.5%;"> |
| | | 经销商 |
| | | </td> |
| | | <td style="background-color: lightsteelblue; width: 12.5%;"> |
| | | 学校 |
| | | </td> |
| | | <td style="background-color: lightsteelblue; width: 12.5%;"> |
| | | 商品类别 |
| | |
| | | {{ item.distributionName }} |
| | | </td> |
| | | <td> |
| | | {{ item.schoolName }} |
| | | </td> |
| | | <td> |
| | | {{ item.categoryName }} |
| | | </td> |
| | | <td> |
| | |
| | | <div class="layui-form-item"> |
| | | <label for="price" class="layui-form-label ">单价</label> |
| | | <div class="layui-input-block"> |
| | | <input name="price" lay-verType="tips" lay-verify="required" class="layui-input" readonly="readonly" placeholder="请输入货品价格" lay-reqText="请输入货品价格" value="{{d.params.data.price || '' }}" /> |
| | | <input name="price" lay-verType="tips" lay-verify="required" class="layui-input" readonly="readonly" placeholder="请输入货品价格" lay-reqText="请输入货品价格" value="{{d.params.data.price || '0' }}" /> |
| | | </div> |
| | | </div> |
| | | |
| | |
| | | <div class="layui-form-item"> |
| | | <label for="amount" class="layui-form-label ">金额</label> |
| | | <div class="layui-input-block"> |
| | | <input name="amount" lay-verType="tips" lay-verify="required" class="layui-input" readonly="readonly" placeholder="请输入金额" lay-reqText="请输入金额" value="{{d.params.data.amount || '' }}" /> |
| | | <input name="amount" lay-verType="tips" lay-verify="required" class="layui-input" readonly="readonly" placeholder="请输入金额" lay-reqText="请输入金额" value="{{d.params.data.amount || '0' }}" /> |
| | | </div> |
| | | </div> |
| | | <div class="layui-form-item"> |
New file |
| | |
| | | <script type="text/html" template lay-done="layui.data.sendParams(d);"> |
| | | <div class="layui-form coreshop-form layui-form-pane" lay-filter="LAY-app-Puhuo-editForm" id="LAY-app-Puhuo-editForm"> |
| | | <input type="hidden" name="id" value="{{d.params.data.id || '' }}" /> |
| | | <input type="hidden" name="jintui" value="{{d.params.data.jintui || '' }}" /> |
| | | |
| | | <!--<div class="layui-form-item"> |
| | | <label for="id" class="layui-form-label ">主键ID</label> |
| | | <div class="layui-input-block"> |
| | | <input type="number" min="0" max="999999" name="id" lay-verType="tips" lay-verify="required|number" class="layui-input" value="{{d.params.data.id || '' }}" placeholder="请输入主键ID" lay-reqText="请输入主键ID并为数字" /> |
| | | </div> |
| | | </div>--> |
| | | <!--<div class="layui-form-item"> |
| | | <label for="distributionId" class="layui-form-label ">经销商id</label> |
| | | <div class="layui-input-block"> |
| | | <input type="number" min="0" max="999999" name="distributionId" lay-verType="tips" lay-verify="required|number" class="layui-input" value="{{d.params.data.distributionId || '' }}" placeholder="请输入经销商id" lay-reqText="请输入经销商id并为数字" /> |
| | | </div> |
| | | </div>--> |
| | | <div class="layui-form-item"> |
| | | <label for="areaCodeName" class="layui-form-label ">区域名称</label> |
| | | <div class="layui-input-block"> |
| | | <input name="areaCodeName" lay-verType="tips" readonly="readonly" class="layui-input" placeholder="请输入区域名称" lay-reqText="请输入区域名称" value="{{d.params.data.areaCodeName || '' }}" /> |
| | | </div> |
| | | </div> |
| | | <div class="layui-form-item"> |
| | | <label for="distributionName" class="layui-form-label ">经销商</label> |
| | | <div class="layui-input-block"> |
| | | <input name="distributionName" lay-verType="tips" readonly="readonly" class="layui-input" placeholder="请输入经销商" lay-reqText="请输入经销商" value="{{d.params.data.distributionName || '' }}" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <!--<div class="layui-form-item"> |
| | | <label for="areaCode" class="layui-form-label ">区域</label> |
| | | <div class="layui-input-block"> |
| | | <input name="areaCode" lay-verType="tips" class="layui-input" placeholder="请输入区域" lay-reqText="请输入区域" value="{{d.params.data.areaCode || '' }}" /> |
| | | </div> |
| | | </div>--> |
| | | <!--<div class="layui-form-item"> |
| | | <label for="CategoryId" class="layui-form-label ">商品分类id</label> |
| | | <div class="layui-input-block"> |
| | | <input type="number" min="0" max="999999" name="CategoryId" lay-verType="tips" class="layui-input" value="{{d.params.data.CategoryId || '' }}" placeholder="请输入商品分类id" lay-reqText="请输入商品分类id并为数字" /> |
| | | </div> |
| | | </div>--> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label for="CategoryName" class="layui-form-label ">商品分类</label> |
| | | <div class="layui-input-block"> |
| | | <input name="CategoryName" lay-verType="tips" readonly="readonly" class="layui-input" placeholder="请输入商品分类" lay-reqText="请输入商品分类" value="{{d.params.data.categoryName || '' }}" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <!--<div class="layui-form-item"> |
| | | <label for="goodsId" class="layui-form-label ">商品id</label> |
| | | <div class="layui-input-block"> |
| | | <input type="number" min="0" max="999999" name="goodsId" lay-verType="tips" class="layui-input" value="{{d.params.data.goodsId || '' }}" placeholder="请输入商品id" lay-reqText="请输入商品id并为数字" /> |
| | | </div> |
| | | </div>--> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label for="goodsName" class="layui-form-label ">商品名称</label> |
| | | <div class="layui-input-block"> |
| | | <input name="goodsName" lay-verType="tips" readonly="readonly" class="layui-input" placeholder="请输入商品名称" lay-reqText="请输入商品名称" value="{{d.params.data.goodsName || '' }}" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <!--<div class="layui-form-item"> |
| | | <label for="productsId" class="layui-form-label ">货品id</label> |
| | | <div class="layui-input-block"> |
| | | <input type="number" min="0" max="999999" name="productsId" lay-verType="tips" lay-verify="required|number" class="layui-input" value="{{d.params.data.productsId || '' }}" placeholder="请输入货品id" lay-reqText="请输入货品id并为数字" /> |
| | | </div> |
| | | </div>--> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label for="productsName" class="layui-form-label ">货品编号</label> |
| | | <div class="layui-input-block"> |
| | | <input name="productsName" lay-verType="tips" readonly="readonly" class="layui-input" placeholder="请输入货品编号" lay-reqText="请输入货品编号" value="{{d.params.data.productsName || '' }}" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <!--<div class="layui-form-item"> |
| | | <label for="spesDesc" class="layui-form-label ">货品规格</label> |
| | | <div class="layui-input-block"> |
| | | <input name="spesDesc" lay-verType="tips" lay-verify="required" class="layui-input" placeholder="请输入货品规格" lay-reqText="请输入货品规格" value="{{d.params.data.spesDesc || '' }}" /> |
| | | </div> |
| | | </div>--> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label for="price" class="layui-form-label ">单价</label> |
| | | <div class="layui-input-block"> |
| | | <input name="price" id="price" lay-verType="tips" lay-verify="required" class="layui-input" readonly="readonly" placeholder="请输入货品价格" lay-reqText="请输入货品价格" value="{{d.params.data.price || '' }}" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label for="nums" class="layui-form-label ">数量</label> |
| | | <div class="layui-input-block"> |
| | | <input type="number" min="0" max="999999" name="nums" lay-verType="tips" readonly="readonly" class="layui-input" value="{{d.params.data.nums || '' }}" placeholder="请输入数量" lay-reqText="请输入数量并为数字" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label for="amount" class="layui-form-label ">金额</label> |
| | | <div class="layui-input-block"> |
| | | <input name="amount" lay-verType="tips" class="layui-input" readonly="readonly" placeholder="请输入金额" lay-reqText="请输入金额" value="{{d.params.data.amount || '' }}" /> |
| | | </div> |
| | | </div> |
| | | <div class="layui-form-item"> |
| | | <label for="shoukuannumsshoukuan" class="layui-form-label">收款数量</label> |
| | | <div class="layui-input-block"> |
| | | <input type="number" min="0" max="999999" name="shoukuannumsshoukuan" id="shoukuannumsshoukuan" lay-verType="tips" class="layui-input" value="{{d.params.data.shoukuannums || '0' }}" placeholder="请输入数量" lay-reqText="请输入数量并为数字" onchange="sumjine();" /> |
| | | </div> |
| | | </div> |
| | | <div class="layui-form-item"> |
| | | <label for="shoukuannums" class="layui-form-label layui-form-required">回款数量</label> |
| | | <div class="layui-input-block"> |
| | | <input type="number" min="0" max="999999" name="shoukuannums" id="shoukuannums" lay-verType="tips" lay-verify="required|number" class="layui-input" value="0" placeholder="请输入数量" lay-reqText="请输入数量并为数字" onchange="sumjine();" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label for="shoukuanamount" class="layui-form-label layui-form-required">回款金额</label> |
| | | <div class="layui-input-block"> |
| | | <input type="number" min="0" max="999999" name="shoukuanamount" id="shoukuanamount" lay-verType="tips" readonly="readonly" lay-verify="required|number" class="layui-input" value="0" placeholder="请输入数量" lay-reqText="请输入数量并为数字" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item text-right core-hidden"> |
| | | <input type="button" class="layui-btn" lay-submit lay-filter="LAY-app-Puhuo-editForm-submit" id="LAY-app-Puhuo-editForm-submit" value="确认收款"> |
| | | </div> |
| | | </div> |
| | | </script> |
| | | <script> |
| | | var debug= layui.setter.debug; |
| | | layui.data.sendParams = function (d) { |
| | | //开启调试情况下获取接口赋值数据 |
| | | if (debug) { console.log(d.params.data); } |
| | | layui.use(['admin', 'form', 'laydate', 'upload', 'coreHelper', 'cropperImg'], |
| | | function () { |
| | | var $ = layui.$ |
| | | , form = layui.form |
| | | , admin = layui.admin |
| | | , laydate = layui.laydate |
| | | , upload = layui.upload |
| | | , cropperImg = layui.cropperImg |
| | | , coreHelper = layui.coreHelper; |
| | | |
| | | laydate.render({ |
| | | elem: '#editTime-Puhuo-createTime', |
| | | type: 'datetime', |
| | | fullPanel: true |
| | | }); |
| | | laydate.render({ |
| | | elem: '#editTime-Puhuo-upDataTime', |
| | | type: 'datetime', |
| | | fullPanel: true |
| | | }); |
| | | form.verify({ |
| | | |
| | | }); |
| | | |
| | | |
| | | //重载form |
| | | form.render(null, 'LAY-app-Puhuo-editForm'); |
| | | }) |
| | | }; |
| | | |
| | | function sumjine() { |
| | | |
| | | |
| | | var price = parseFloat($('#price').val()) || 0; // 获取值并转换为浮点数,如果无法转换则默认为0 |
| | | var shoukuannums = parseFloat($('#shoukuannums').val()) || 0; // 获取值并转换为浮点数,如果无法转换则默认为0 |
| | | var result = price * shoukuannums; // 进行乘法运算 |
| | | $('#shoukuanamount').val(result); // 显示结果 |
| | | } |
| | | </script> |
| | |
| | | |
| | | <script type="text/html" id="LAY-app-Puhuo-tableBox-bar"> |
| | | <!--<a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="detail">查看</a>--> |
| | | <a class="layui-btn layui-btn-xs" lay-event="editshoukuan">回款</a> |
| | | <a class="layui-btn layui-btn-xs" lay-event="edit">铺货</a> |
| | | <a class="layui-btn layui-btn-xs" lay-event="edittui">退货</a> |
| | | <a class="layui-btn layui-btn-xs" lay-event="editpandian">盘点</a> |
| | | <!--<a class="layui-btn layui-btn-danger layui-btn-xs" data-dropdown="#PuhuoTbDelDrop{{d.LAY_INDEX}}" no-shade="true">删除</a>--> |
| | | <div class="dropdown-menu-nav dropdown-popconfirm dropdown-top-right layui-hide" id="PuhuoTbDelDrop{{d.LAY_INDEX}}" |
| | | style="max-width: 200px;white-space: normal;min-width: auto;margin-left: 10px;"> |
| | |
| | | /* { field: 'id', title: '主键ID', width: 60, sort: false},*/ |
| | | { field: 'areaCodeName', title: '区域名称', sort: false, width: 165 }, |
| | | /* { field: 'distributionId', title: '经销商id', sort: false,width: 105 },*/ |
| | | { field: 'distributionName', title: '经销商', sort: false, width: 165 }, |
| | | { field: 'distributionName', title: '经销商', sort: false, width: 125 }, |
| | | { field: 'schoolName', title: '学校', sort: false, width: 125 }, |
| | | /* { field: 'areaCode', title: '区域', sort: false,width: 105 },*/ |
| | | |
| | | /* { field: 'categoryId', title: '商品分类id', sort: false,width: 105 },*/ |
| | | { field: 'categoryName', title: '商品类别', sort: false, width: 165 }, |
| | | { field: 'categoryName', title: '商品类别', sort: false, width: 105 }, |
| | | /* { field: 'goodsId', title: '商品id', sort: false,width: 105 },*/ |
| | | { field: 'goodsName', title: '商品名称', sort: false, width: 165 }, |
| | | /* { field: 'productsId', title: '货品id', sort: false,width: 105 },*/ |
| | | { field: 'productsName', title: '货品编号', sort: false, width: 165 }, |
| | | { field: 'productsName', title: '货品编号', sort: false, width: 215 }, |
| | | /* { field: 'spesDesc', title: '货品规格', sort: false,width: 105 },*/ |
| | | { field: 'nums', title: '数量', sort: false, width: 165 }, |
| | | { field: 'price', title: '单价', sort: false, width: 165 }, |
| | | { field: 'nums', title: '数量', sort: false, width: 125 }, |
| | | { field: 'price', title: '单价', sort: false, width: 125 }, |
| | | |
| | | { field: 'amount', title: '金额', sort: false, width: 165 }, |
| | | { field: 'amount', title: '金额', sort: false, width: 125 }, |
| | | //{ field: 'createTime', title: '建立时间', width: 130, sort: false}, |
| | | //{ field: 'upDataTime', title: '修改时间', width: 130, sort: false}, |
| | | //{ field: 'createBy', title: '创建人', sort: false,width: 105 }, |
| | |
| | | doEdit(obj) |
| | | } else if (obj.event === 'edittui') { |
| | | doEdittui(obj) |
| | | } else if (obj.event === 'editpandian') { |
| | | doEditpandian(obj) |
| | | } else if (obj.event === 'editshoukuan') { |
| | | doEditshoukuan(obj) |
| | | } |
| | | |
| | | }); |
| | |
| | | } |
| | | }); |
| | | } |
| | | |
| | | |
| | | |
| | | //执行盘点操作 |
| | | function doEditpandian(obj) { |
| | | coreHelper.Post("Api/Puhuo/GetEdit", { id: obj.data.id, jintui: 3 }, function (e) { |
| | | if (e.code === 0) { |
| | | admin.popup({ |
| | | shadeClose: false, |
| | | title: '盘点', |
| | | area: ['1200px', '90%'], |
| | | id: 'LAY-popup-Puhuo-edit', |
| | | success: function (layero, index) { |
| | | view(this.id).render('baifenbingfa/Puhuo/edit', { data: e.data }).done(function () { |
| | | //监听提交 |
| | | form.on('submit(LAY-app-Puhuo-editForm-submit)', |
| | | function (data) { |
| | | var field = data.field; //获取提交的字段 |
| | | |
| | | field.isdelete = field.isdelete == 'on'; |
| | | |
| | | if (debug) { console.log(field); } //开启调试返回数据 |
| | | //提交 Ajax 成功后,关闭当前弹层并重载表格 |
| | | coreHelper.Post("Api/Puhuo/DoEdit", field, function (e) { |
| | | console.log(e) |
| | | if (e.code === 0) { |
| | | layui.table.reloadData('LAY-app-Puhuo-tableBox'); //重载表格 |
| | | layer.close(index); //再执行关闭 |
| | | layer.msg(e.msg); |
| | | } else { |
| | | layer.msg(e.msg); |
| | | } |
| | | }); |
| | | }); |
| | | }) |
| | | //// 禁止弹窗出现滚动条 |
| | | //$(layero).children('.layui-layer-content').css('overflow', 'visible'); |
| | | } |
| | | , btn: ['确定', '取消'] |
| | | , yes: function (index, layero) { |
| | | layero.contents().find("#LAY-app-Puhuo-editForm-submit").click(); |
| | | } |
| | | }); |
| | | } else { |
| | | layer.msg(e.msg); |
| | | } |
| | | }); |
| | | } |
| | | |
| | | |
| | | //执行退货操作 |
| | | function doEditshoukuan(obj) { |
| | | coreHelper.Post("Api/Puhuo/GetEdit", { id: obj.data.id, jintui: 4 }, function (e) { |
| | | if (e.code === 0) { |
| | | admin.popup({ |
| | | shadeClose: false, |
| | | title: '回款', |
| | | area: ['1200px', '90%'], |
| | | id: 'LAY-popup-Puhuo-edit', |
| | | success: function (layero, index) { |
| | | view(this.id).render('baifenbingfa/Puhuo/editshoukuan', { data: e.data }).done(function () { |
| | | //监听提交 |
| | | form.on('submit(LAY-app-Puhuo-editForm-submit)', |
| | | function (data) { |
| | | var field = data.field; //获取提交的字段 |
| | | |
| | | field.isdelete = field.isdelete == 'on'; |
| | | |
| | | if (debug) { console.log(field); } //开启调试返回数据 |
| | | //提交 Ajax 成功后,关闭当前弹层并重载表格 |
| | | coreHelper.Post("Api/Puhuo/DoEdit", field, function (e) { |
| | | console.log(e) |
| | | if (e.code === 0) { |
| | | layui.table.reloadData('LAY-app-Puhuo-tableBox'); //重载表格 |
| | | layer.close(index); //再执行关闭 |
| | | layer.msg(e.msg); |
| | | } else { |
| | | layer.msg(e.msg); |
| | | } |
| | | }); |
| | | }); |
| | | }) |
| | | //// 禁止弹窗出现滚动条 |
| | | //$(layero).children('.layui-layer-content').css('overflow', 'visible'); |
| | | } |
| | | , btn: ['确定', '取消'] |
| | | , yes: function (index, layero) { |
| | | layero.contents().find("#LAY-app-Puhuo-editForm-submit").click(); |
| | | } |
| | | }); |
| | | } else { |
| | | layer.msg(e.msg); |
| | | } |
| | | }); |
| | | } |
| | | |
| | | //执行预览操作 |
| | | function doDetails(obj) { |
| | | coreHelper.Post("Api/Puhuo/GetDetails", { id: obj.data.id }, function (e) { |
| | |
| | | text: {none: '暂无相关数据'}, |
| | | cols: [ |
| | | [ |
| | | { type: "checkbox", fixed: "left" }, |
| | | { type: "checkbox" }, |
| | | { type: 'numbers', title: '序号', width: 60, sort: false }, |
| | | /* { field: 'id', title: '主键ID', width: 60, sort: false},*/ |
| | | /* { field: 'areaCodeName', title: '区域名称', sort: false, width: 165 },*/ |
| | |
| | | /* { field: 'areaCode', title: '区域', sort: false,width: 105 },*/ |
| | | |
| | | /* { field: 'categoryId', title: '商品分类id', sort: false,width: 105 },*/ |
| | | { field: 'categoryName', title: '商品类别', sort: false, width: 185 }, |
| | | { field: 'categoryName', title: '商品类别', sort: false, width: 125 }, |
| | | /* { field: 'goodsId', title: '商品id', sort: false,width: 105 },*/ |
| | | { field: 'goodsName', title: '商品名称', sort: false, width: 185 }, |
| | | /* { field: 'productsId', title: '货品id', sort: false,width: 105 },*/ |
| | | { field: 'productsName', title: '货品编号', sort: false, width: 185 }, |
| | | { field: 'productsName', title: '货品编号', sort: false, width: 265 }, |
| | | /* { field: 'spesDesc', title: '货品规格', sort: false,width: 105 },*/ |
| | | { field: 'nums', title: '数量', sort: false, width: 185 }, |
| | | { field: 'price', title: '单价', sort: false, width: 185 }, |
| | | { field: 'nums', title: '数量', sort: false, width: 165 }, |
| | | { field: 'price', title: '单价', sort: false, width: 165 }, |
| | | |
| | | { field: 'amount', title: '金额', sort: false, width: 185 }, |
| | | { field: 'amount', title: '金额', sort: false, width: 165 }, |
| | | { field: 'tiaozhengnums', title: '经销商数量', sort: false, width: 185 }, |
| | | //{ field: 'createTime', title: '建立时间', width: 130, sort: false}, |
| | | //{ field: 'upDataTime', title: '修改时间', width: 130, sort: false}, |
| | | //{ field: 'createBy', title: '创建人', sort: false,width: 105 }, |
| | | //{ field: 'upDataBy', title: '修改人', sort: false,width: 105 }, |
| | | //{ field: 'isdelete', title: '删除标志', width: 95, templet: '#switch_isdelete', sort: false , unresize: true}, |
| | | { width: 230, align: 'center', title:'操作', fixed: 'right', toolbar: '#LAY-app-Puhuo-tableBox-bar' } |
| | | { width: 230, align: 'center', title:'操作' , toolbar: '#LAY-app-Puhuo-tableBox-bar' } |
| | | ] |
| | | ] |
| | | ], done: function (res, curr, count) { |
| | | |
| | | console.log(res); |
| | | // 创建合计行的HTML |
| | | var totalRowHtml = '<tr class="layui-table-total" style="background-color: #f2f2f2; font-weight: bold;">\ |
| | | <td></td><td></td><td colspan="3">当页合计</td><td> '+ res.otherData.heji1 + '</td><td></td><td> ' + res.otherData.heji2 + '</td><td> ' + res.otherData.heji3 +'</td><td></td>\ |
| | | </tr>\ |
| | | <tr class="layui-table-total" style="background-color: #e9e9e9; font-weight: bold;">\ |
| | | <td></td><td></td><td colspan="3">总合计</td><td> '+ res.otherData.heji4 + '</td><td></td><td> ' + res.otherData.heji5 + '</td><td> ' + res.otherData.heji6 + '</td><td></td>\ |
| | | </tr>'; |
| | | |
| | | // 将合计行添加到表格底部 |
| | | $('#LAY-app-Puhuo-tableBox').next().find('.layui-table-body tbody').append(totalRowHtml); |
| | | } |
| | | }); |
| | | //监听排序事件 |
| | | table.on('sort(LAY-app-Puhuo-tableBox)', function(obj){ |
New file |
| | |
| | | <script type="text/html" template lay-done="layui.data.done(d);"> |
| | | <div class="layui-form coreshop-form layui-form-pane" lay-filter="LAY-app-PuhuoShoukuan-createForm" id="LAY-app-PuhuoShoukuan-createForm"> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label for="id" class="layui-form-label layui-form-required">主键ID</label> |
| | | <div class="layui-input-block"> |
| | | <input type="number" min="0" max="999999" name="id" lay-verType="tips" lay-verify="required|number" class="layui-input" value="1" placeholder="请输入主键ID" lay-reqText="请输入主键ID并为数字" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label for="puhuoId" class="layui-form-label layui-form-required">铺货id</label> |
| | | <div class="layui-input-block"> |
| | | <input type="number" min="0" max="999999" name="puhuoId" lay-verType="tips" lay-verify="required|number" class="layui-input" value="1" placeholder="请输入铺货id" lay-reqText="请输入铺货id并为数字" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label for="distributionId" class="layui-form-label layui-form-required">经销商id</label> |
| | | <div class="layui-input-block"> |
| | | <input type="number" min="0" max="999999" name="distributionId" lay-verType="tips" lay-verify="required|number" class="layui-input" value="1" placeholder="请输入经销商id" lay-reqText="请输入经销商id并为数字" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label for="distributionName" class="layui-form-label layui-form-required">经销商</label> |
| | | <div class="layui-input-block"> |
| | | <input name="distributionName" lay-verType="tips" lay-verify="required" class="layui-input" placeholder="请输入经销商" lay-reqText="请输入经销商" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label for="areaCode" class="layui-form-label layui-form-required">区域</label> |
| | | <div class="layui-input-block"> |
| | | <input name="areaCode" lay-verType="tips" lay-verify="required" class="layui-input" placeholder="请输入区域" lay-reqText="请输入区域" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label for="areaCodeName" class="layui-form-label layui-form-required">区域名称</label> |
| | | <div class="layui-input-block"> |
| | | <input name="areaCodeName" lay-verType="tips" lay-verify="required" class="layui-input" placeholder="请输入区域名称" lay-reqText="请输入区域名称" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label for="CategoryId" class="layui-form-label layui-form-required">商品分类id</label> |
| | | <div class="layui-input-block"> |
| | | <input type="number" min="0" max="999999" name="CategoryId" lay-verType="tips" lay-verify="required|number" class="layui-input" value="1" placeholder="请输入商品分类id" lay-reqText="请输入商品分类id并为数字" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label for="CategoryName" class="layui-form-label layui-form-required">商品分类</label> |
| | | <div class="layui-input-block"> |
| | | <input name="CategoryName" lay-verType="tips" lay-verify="required" class="layui-input" placeholder="请输入商品分类" lay-reqText="请输入商品分类" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label for="goodsId" class="layui-form-label layui-form-required">商品id</label> |
| | | <div class="layui-input-block"> |
| | | <input type="number" min="0" max="999999" name="goodsId" lay-verType="tips" lay-verify="required|number" class="layui-input" value="1" placeholder="请输入商品id" lay-reqText="请输入商品id并为数字" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label for="goodsName" class="layui-form-label layui-form-required">商品名称</label> |
| | | <div class="layui-input-block"> |
| | | <input name="goodsName" lay-verType="tips" lay-verify="required" class="layui-input" placeholder="请输入商品名称" lay-reqText="请输入商品名称" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label for="productsId" class="layui-form-label layui-form-required">货品id</label> |
| | | <div class="layui-input-block"> |
| | | <input type="number" min="0" max="999999" name="productsId" lay-verType="tips" lay-verify="required|number" class="layui-input" value="1" placeholder="请输入货品id" lay-reqText="请输入货品id并为数字" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label for="productsName" class="layui-form-label layui-form-required">货品编号</label> |
| | | <div class="layui-input-block"> |
| | | <input name="productsName" lay-verType="tips" lay-verify="required" class="layui-input" placeholder="请输入货品编号" lay-reqText="请输入货品编号" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label for="spesDesc" class="layui-form-label layui-form-required">货品规格</label> |
| | | <div class="layui-input-block"> |
| | | <input name="spesDesc" lay-verType="tips" lay-verify="required" class="layui-input" placeholder="请输入货品规格" lay-reqText="请输入货品规格" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label for="price" class="layui-form-label layui-form-required">货品价格</label> |
| | | <div class="layui-input-block"> |
| | | <input name="price" lay-verType="tips" lay-verify="required" class="layui-input" placeholder="请输入货品价格" lay-reqText="请输入货品价格" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label for="nums" class="layui-form-label layui-form-required">数量</label> |
| | | <div class="layui-input-block"> |
| | | <input type="number" min="0" max="999999" name="nums" lay-verType="tips" lay-verify="required|number" class="layui-input" value="1" placeholder="请输入数量" lay-reqText="请输入数量并为数字" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label for="amount" class="layui-form-label layui-form-required">金额</label> |
| | | <div class="layui-input-block"> |
| | | <input name="amount" lay-verType="tips" lay-verify="required" class="layui-input" placeholder="请输入金额" lay-reqText="请输入金额" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label for="shoukuannums" class="layui-form-label layui-form-required">收款数量</label> |
| | | <div class="layui-input-block"> |
| | | <input type="number" min="0" max="999999" name="shoukuannums" lay-verType="tips" lay-verify="required|number" class="layui-input" value="1" placeholder="请输入收款数量" lay-reqText="请输入收款数量并为数字" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label for="shoukuanamount" class="layui-form-label layui-form-required">收款金额</label> |
| | | <div class="layui-input-block"> |
| | | <input name="shoukuanamount" lay-verType="tips" lay-verify="required" class="layui-input" placeholder="请输入收款金额" lay-reqText="请输入收款金额" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label for="createTime" class="layui-form-label layui-form-required">建立时间</label> |
| | | <div class="layui-input-block"> |
| | | <input name="createTime" id="createTime-PuhuoShoukuan-createTime" type="text" lay-verType="tips" lay-verify="required|datetime" class="layui-input" placeholder="请输入建立时间" lay-reqText="请输入建立时间" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label for="upDataTime" class="layui-form-label layui-form-required">修改时间</label> |
| | | <div class="layui-input-block"> |
| | | <input name="upDataTime" id="createTime-PuhuoShoukuan-upDataTime" type="text" lay-verType="tips" lay-verify="required|datetime" class="layui-input" placeholder="请输入修改时间" lay-reqText="请输入修改时间" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label for="createBy" class="layui-form-label layui-form-required">创建人</label> |
| | | <div class="layui-input-block"> |
| | | <input name="createBy" lay-verType="tips" lay-verify="required" class="layui-input" placeholder="请输入创建人" lay-reqText="请输入创建人" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label for="upDataBy" class="layui-form-label layui-form-required">修改人</label> |
| | | <div class="layui-input-block"> |
| | | <input name="upDataBy" lay-verType="tips" lay-verify="required" class="layui-input" placeholder="请输入修改人" lay-reqText="请输入修改人" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item" pane> |
| | | <label for="isdelete" class="layui-form-label layui-form-required">删除标志</label> |
| | | <div class="layui-input-block"> |
| | | <input type="checkbox" lay-filter="switch" name="isdelete" lay-skin="switch" lay-text="开启|关闭"> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item text-right core-hidden"> |
| | | <input type="button" class="layui-btn" lay-submit lay-filter="LAY-app-PuhuoShoukuan-createForm-submit" id="LAY-app-PuhuoShoukuan-createForm-submit" value="确认添加"> |
| | | </div> |
| | | </div> |
| | | </script> |
| | | <script> |
| | | var debug= layui.setter.debug; |
| | | layui.data.done = function (d) { |
| | | //开启调试情况下获取接口赋值数据 |
| | | if (debug) { console.log(d.params.data); } |
| | | layui.use(['admin', 'form', 'laydate', 'upload', 'coreHelper', 'cropperImg'], |
| | | function () { |
| | | var $ = layui.$ |
| | | , form = layui.form |
| | | , admin = layui.admin |
| | | , laydate = layui.laydate |
| | | , upload = layui.upload |
| | | , cropperImg = layui.cropperImg |
| | | , coreHelper = layui.coreHelper; |
| | | |
| | | laydate.render({ |
| | | elem: '#createTime-PuhuoShoukuan-createTime', |
| | | type: 'datetime', |
| | | value: new Date(), |
| | | fullPanel: true |
| | | }); |
| | | laydate.render({ |
| | | elem: '#createTime-PuhuoShoukuan-upDataTime', |
| | | type: 'datetime', |
| | | value: new Date(), |
| | | fullPanel: true |
| | | }); |
| | | form.verify({ |
| | | |
| | | }); |
| | | //重载form |
| | | form.render(null, 'LAY-app-PuhuoShoukuan-createForm'); |
| | | }) |
| | | }; |
| | | </script> |
New file |
| | |
| | | <script type="text/html" template lay-done="layui.data.done(d);"> |
| | | <table class="layui-table layui-form" lay-filter="LAY-app-PuhuoShoukuan-detailsForm" id="LAY-app-PuhuoShoukuan-detailsForm"> |
| | | <colgroup> |
| | | <col width="100"> |
| | | <col> |
| | | </colgroup> |
| | | <tbody> |
| | | |
| | | <tr> |
| | | <td> |
| | | <label for="id">主键ID</label> |
| | | </td> |
| | | <td> |
| | | {{ d.params.data.id || '' }} |
| | | </td> |
| | | </tr> |
| | | |
| | | <tr> |
| | | <td> |
| | | <label for="puhuoId">铺货id</label> |
| | | </td> |
| | | <td> |
| | | {{ d.params.data.puhuoId || '' }} |
| | | </td> |
| | | </tr> |
| | | |
| | | <tr> |
| | | <td> |
| | | <label for="distributionId">经销商id</label> |
| | | </td> |
| | | <td> |
| | | {{ d.params.data.distributionId || '' }} |
| | | </td> |
| | | </tr> |
| | | |
| | | <tr> |
| | | <td> |
| | | <label for="distributionName">经销商</label> |
| | | </td> |
| | | <td> |
| | | {{ d.params.data.distributionName || '' }} |
| | | </td> |
| | | </tr> |
| | | |
| | | <tr> |
| | | <td> |
| | | <label for="areaCode">区域</label> |
| | | </td> |
| | | <td> |
| | | {{ d.params.data.areaCode || '' }} |
| | | </td> |
| | | </tr> |
| | | |
| | | <tr> |
| | | <td> |
| | | <label for="areaCodeName">区域名称</label> |
| | | </td> |
| | | <td> |
| | | {{ d.params.data.areaCodeName || '' }} |
| | | </td> |
| | | </tr> |
| | | |
| | | <tr> |
| | | <td> |
| | | <label for="CategoryId">商品分类id</label> |
| | | </td> |
| | | <td> |
| | | {{ d.params.data.CategoryId || '' }} |
| | | </td> |
| | | </tr> |
| | | |
| | | <tr> |
| | | <td> |
| | | <label for="CategoryName">商品分类</label> |
| | | </td> |
| | | <td> |
| | | {{ d.params.data.CategoryName || '' }} |
| | | </td> |
| | | </tr> |
| | | |
| | | <tr> |
| | | <td> |
| | | <label for="goodsId">商品id</label> |
| | | </td> |
| | | <td> |
| | | {{ d.params.data.goodsId || '' }} |
| | | </td> |
| | | </tr> |
| | | |
| | | <tr> |
| | | <td> |
| | | <label for="goodsName">商品名称</label> |
| | | </td> |
| | | <td> |
| | | {{ d.params.data.goodsName || '' }} |
| | | </td> |
| | | </tr> |
| | | |
| | | <tr> |
| | | <td> |
| | | <label for="productsId">货品id</label> |
| | | </td> |
| | | <td> |
| | | {{ d.params.data.productsId || '' }} |
| | | </td> |
| | | </tr> |
| | | |
| | | <tr> |
| | | <td> |
| | | <label for="productsName">货品编号</label> |
| | | </td> |
| | | <td> |
| | | {{ d.params.data.productsName || '' }} |
| | | </td> |
| | | </tr> |
| | | |
| | | <tr> |
| | | <td> |
| | | <label for="spesDesc">货品规格</label> |
| | | </td> |
| | | <td> |
| | | {{ d.params.data.spesDesc || '' }} |
| | | </td> |
| | | </tr> |
| | | |
| | | <tr> |
| | | <td> |
| | | <label for="price">货品价格</label> |
| | | </td> |
| | | <td> |
| | | {{ d.params.data.price || '' }} |
| | | </td> |
| | | </tr> |
| | | |
| | | <tr> |
| | | <td> |
| | | <label for="nums">数量</label> |
| | | </td> |
| | | <td> |
| | | {{ d.params.data.nums || '' }} |
| | | </td> |
| | | </tr> |
| | | |
| | | <tr> |
| | | <td> |
| | | <label for="amount">金额</label> |
| | | </td> |
| | | <td> |
| | | {{ d.params.data.amount || '' }} |
| | | </td> |
| | | </tr> |
| | | |
| | | <tr> |
| | | <td> |
| | | <label for="shoukuannums">收款数量</label> |
| | | </td> |
| | | <td> |
| | | {{ d.params.data.shoukuannums || '' }} |
| | | </td> |
| | | </tr> |
| | | |
| | | <tr> |
| | | <td> |
| | | <label for="shoukuanamount">收款金额</label> |
| | | </td> |
| | | <td> |
| | | {{ d.params.data.shoukuanamount || '' }} |
| | | </td> |
| | | </tr> |
| | | |
| | | <tr> |
| | | <td> |
| | | <label for="createTime">建立时间</label> |
| | | </td> |
| | | <td> |
| | | {{ d.params.data.createTime || '' }} |
| | | </td> |
| | | </tr> |
| | | |
| | | <tr> |
| | | <td> |
| | | <label for="upDataTime">修改时间</label> |
| | | </td> |
| | | <td> |
| | | {{ d.params.data.upDataTime || '' }} |
| | | </td> |
| | | </tr> |
| | | |
| | | <tr> |
| | | <td> |
| | | <label for="createBy">创建人</label> |
| | | </td> |
| | | <td> |
| | | {{ d.params.data.createBy || '' }} |
| | | </td> |
| | | </tr> |
| | | |
| | | <tr> |
| | | <td> |
| | | <label for="upDataBy">修改人</label> |
| | | </td> |
| | | <td> |
| | | {{ d.params.data.upDataBy || '' }} |
| | | </td> |
| | | </tr> |
| | | |
| | | <tr> |
| | | <td> |
| | | <label for="isdelete">删除标志</label> |
| | | </td> |
| | | <td> |
| | | <input type="checkbox" disabled name="isdelete" value="{{d.params.data.isdelete}}" lay-skin="switch" lay-text="开启|关闭" lay-filter="isdelete" {{ d.params.data.isdelete ? 'checked' : '' }}> |
| | | </td> |
| | | </tr> |
| | | |
| | | </tbody> |
| | | </table> |
| | | </script> |
| | | <script> |
| | | var debug= layui.setter.debug; |
| | | layui.data.done = function (d) { |
| | | //开启调试情况下获取接口赋值数据 |
| | | if (debug) { console.log(d.params.data); } |
| | | |
| | | layui.use(['admin', 'form', 'coreHelper'], function () { |
| | | var $ = layui.$ |
| | | , setter = layui.setter |
| | | , admin = layui.admin |
| | | , coreHelper = layui.coreHelper |
| | | , form = layui.form; |
| | | form.render(null, 'LAY-app-PuhuoShoukuan-detailsForm'); |
| | | }); |
| | | }; |
| | | </script> |
New file |
| | |
| | | <script type="text/html" template lay-done="layui.data.sendParams(d);"> |
| | | <div class="layui-form coreshop-form layui-form-pane" lay-filter="LAY-app-PuhuoShoukuan-editForm" id="LAY-app-PuhuoShoukuan-editForm"> |
| | | <input type="hidden" name="id" value="{{d.params.data.id || '' }}" /> |
| | | <div class="layui-form-item"> |
| | | <label for="id" class="layui-form-label layui-form-required">主键ID</label> |
| | | <div class="layui-input-block"> |
| | | <input type="number" min="0" max="999999" name="id" lay-verType="tips" lay-verify="required|number" class="layui-input" value="{{d.params.data.id || '' }}" placeholder="请输入主键ID" lay-reqText="请输入主键ID并为数字" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label for="puhuoId" class="layui-form-label layui-form-required">铺货id</label> |
| | | <div class="layui-input-block"> |
| | | <input type="number" min="0" max="999999" name="puhuoId" lay-verType="tips" lay-verify="required|number" class="layui-input" value="{{d.params.data.puhuoId || '' }}" placeholder="请输入铺货id" lay-reqText="请输入铺货id并为数字" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label for="distributionId" class="layui-form-label layui-form-required">经销商id</label> |
| | | <div class="layui-input-block"> |
| | | <input type="number" min="0" max="999999" name="distributionId" lay-verType="tips" lay-verify="required|number" class="layui-input" value="{{d.params.data.distributionId || '' }}" placeholder="请输入经销商id" lay-reqText="请输入经销商id并为数字" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label for="distributionName" class="layui-form-label layui-form-required">经销商</label> |
| | | <div class="layui-input-block"> |
| | | <input name="distributionName" lay-verType="tips" lay-verify="required" class="layui-input" placeholder="请输入经销商" lay-reqText="请输入经销商" value="{{d.params.data.distributionName || '' }}" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label for="areaCode" class="layui-form-label layui-form-required">区域</label> |
| | | <div class="layui-input-block"> |
| | | <input name="areaCode" lay-verType="tips" lay-verify="required" class="layui-input" placeholder="请输入区域" lay-reqText="请输入区域" value="{{d.params.data.areaCode || '' }}" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label for="areaCodeName" class="layui-form-label layui-form-required">区域名称</label> |
| | | <div class="layui-input-block"> |
| | | <input name="areaCodeName" lay-verType="tips" lay-verify="required" class="layui-input" placeholder="请输入区域名称" lay-reqText="请输入区域名称" value="{{d.params.data.areaCodeName || '' }}" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label for="CategoryId" class="layui-form-label layui-form-required">商品分类id</label> |
| | | <div class="layui-input-block"> |
| | | <input type="number" min="0" max="999999" name="CategoryId" lay-verType="tips" lay-verify="required|number" class="layui-input" value="{{d.params.data.CategoryId || '' }}" placeholder="请输入商品分类id" lay-reqText="请输入商品分类id并为数字" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label for="CategoryName" class="layui-form-label layui-form-required">商品分类</label> |
| | | <div class="layui-input-block"> |
| | | <input name="CategoryName" lay-verType="tips" lay-verify="required" class="layui-input" placeholder="请输入商品分类" lay-reqText="请输入商品分类" value="{{d.params.data.CategoryName || '' }}" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label for="goodsId" class="layui-form-label layui-form-required">商品id</label> |
| | | <div class="layui-input-block"> |
| | | <input type="number" min="0" max="999999" name="goodsId" lay-verType="tips" lay-verify="required|number" class="layui-input" value="{{d.params.data.goodsId || '' }}" placeholder="请输入商品id" lay-reqText="请输入商品id并为数字" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label for="goodsName" class="layui-form-label layui-form-required">商品名称</label> |
| | | <div class="layui-input-block"> |
| | | <input name="goodsName" lay-verType="tips" lay-verify="required" class="layui-input" placeholder="请输入商品名称" lay-reqText="请输入商品名称" value="{{d.params.data.goodsName || '' }}" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label for="productsId" class="layui-form-label layui-form-required">货品id</label> |
| | | <div class="layui-input-block"> |
| | | <input type="number" min="0" max="999999" name="productsId" lay-verType="tips" lay-verify="required|number" class="layui-input" value="{{d.params.data.productsId || '' }}" placeholder="请输入货品id" lay-reqText="请输入货品id并为数字" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label for="productsName" class="layui-form-label layui-form-required">货品编号</label> |
| | | <div class="layui-input-block"> |
| | | <input name="productsName" lay-verType="tips" lay-verify="required" class="layui-input" placeholder="请输入货品编号" lay-reqText="请输入货品编号" value="{{d.params.data.productsName || '' }}" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label for="spesDesc" class="layui-form-label layui-form-required">货品规格</label> |
| | | <div class="layui-input-block"> |
| | | <input name="spesDesc" lay-verType="tips" lay-verify="required" class="layui-input" placeholder="请输入货品规格" lay-reqText="请输入货品规格" value="{{d.params.data.spesDesc || '' }}" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label for="price" class="layui-form-label layui-form-required">货品价格</label> |
| | | <div class="layui-input-block"> |
| | | <input name="price" lay-verType="tips" lay-verify="required" class="layui-input" placeholder="请输入货品价格" lay-reqText="请输入货品价格" value="{{d.params.data.price || '' }}" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label for="nums" class="layui-form-label layui-form-required">数量</label> |
| | | <div class="layui-input-block"> |
| | | <input type="number" min="0" max="999999" name="nums" lay-verType="tips" lay-verify="required|number" class="layui-input" value="{{d.params.data.nums || '' }}" placeholder="请输入数量" lay-reqText="请输入数量并为数字" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label for="amount" class="layui-form-label layui-form-required">金额</label> |
| | | <div class="layui-input-block"> |
| | | <input name="amount" lay-verType="tips" lay-verify="required" class="layui-input" placeholder="请输入金额" lay-reqText="请输入金额" value="{{d.params.data.amount || '' }}" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label for="shoukuannums" class="layui-form-label layui-form-required">收款数量</label> |
| | | <div class="layui-input-block"> |
| | | <input type="number" min="0" max="999999" name="shoukuannums" lay-verType="tips" lay-verify="required|number" class="layui-input" value="{{d.params.data.shoukuannums || '' }}" placeholder="请输入收款数量" lay-reqText="请输入收款数量并为数字" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label for="shoukuanamount" class="layui-form-label layui-form-required">收款金额</label> |
| | | <div class="layui-input-block"> |
| | | <input name="shoukuanamount" lay-verType="tips" lay-verify="required" class="layui-input" placeholder="请输入收款金额" lay-reqText="请输入收款金额" value="{{d.params.data.shoukuanamount || '' }}" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label for="createTime" class="layui-form-label layui-form-required">建立时间</label> |
| | | <div class="layui-input-block"> |
| | | <input name="createTime" id="editTime-PuhuoShoukuan-createTime" type="text" lay-verType="tips" lay-verify="required|datetime" class="layui-input" placeholder="请输入建立时间" lay-reqText="请输入建立时间" value="{{d.params.data.createTime || '' }}"/> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label for="upDataTime" class="layui-form-label layui-form-required">修改时间</label> |
| | | <div class="layui-input-block"> |
| | | <input name="upDataTime" id="editTime-PuhuoShoukuan-upDataTime" type="text" lay-verType="tips" lay-verify="required|datetime" class="layui-input" placeholder="请输入修改时间" lay-reqText="请输入修改时间" value="{{d.params.data.upDataTime || '' }}"/> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label for="createBy" class="layui-form-label layui-form-required">创建人</label> |
| | | <div class="layui-input-block"> |
| | | <input name="createBy" lay-verType="tips" lay-verify="required" class="layui-input" placeholder="请输入创建人" lay-reqText="请输入创建人" value="{{d.params.data.createBy || '' }}" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label for="upDataBy" class="layui-form-label layui-form-required">修改人</label> |
| | | <div class="layui-input-block"> |
| | | <input name="upDataBy" lay-verType="tips" lay-verify="required" class="layui-input" placeholder="请输入修改人" lay-reqText="请输入修改人" value="{{d.params.data.upDataBy || '' }}" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item" pane> |
| | | <label for="isdelete" class="layui-form-label layui-form-required">删除标志</label> |
| | | <div class="layui-input-block"> |
| | | <input type="checkbox" lay-filter="switch" name="isdelete" {{ d.params.data.isdelete ? 'checked' : '' }} lay-skin="switch" lay-text="开启|关闭"> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item text-right core-hidden"> |
| | | <input type="button" class="layui-btn" lay-submit lay-filter="LAY-app-PuhuoShoukuan-editForm-submit" id="LAY-app-PuhuoShoukuan-editForm-submit" value="确认编辑"> |
| | | </div> |
| | | </div> |
| | | </script> |
| | | <script> |
| | | var debug= layui.setter.debug; |
| | | layui.data.sendParams = function (d) { |
| | | //开启调试情况下获取接口赋值数据 |
| | | if (debug) { console.log(d.params.data); } |
| | | layui.use(['admin', 'form', 'laydate', 'upload', 'coreHelper', 'cropperImg'], |
| | | function () { |
| | | var $ = layui.$ |
| | | , form = layui.form |
| | | , admin = layui.admin |
| | | , laydate = layui.laydate |
| | | , upload = layui.upload |
| | | , cropperImg = layui.cropperImg |
| | | , coreHelper = layui.coreHelper; |
| | | |
| | | laydate.render({ |
| | | elem: '#editTime-PuhuoShoukuan-createTime', |
| | | type: 'datetime', |
| | | fullPanel: true |
| | | }); |
| | | laydate.render({ |
| | | elem: '#editTime-PuhuoShoukuan-upDataTime', |
| | | type: 'datetime', |
| | | fullPanel: true |
| | | }); |
| | | form.verify({ |
| | | |
| | | }); |
| | | //重载form |
| | | form.render(null, 'LAY-app-PuhuoShoukuan-editForm'); |
| | | }) |
| | | }; |
| | | </script> |
New file |
| | |
| | | <title>铺货</title> |
| | | <!--当前位置开始--> |
| | | <div class="layui-card layadmin-header"> |
| | | <div class="layui-breadcrumb" lay-filter="breadcrumb"> |
| | | <script type="text/html" template lay-done="layui.data.updateMainBreadcrumb();"> |
| | | </script> |
| | | </div> |
| | | </div> |
| | | <!--当前位置结束--> |
| | | <style> |
| | | /* 重写样式 */ |
| | | </style> |
| | | <script type="text/html" template lay-type="Post" lay-url="Api/PuhuoShoukuan/GetIndex" lay-done="layui.data.done(d);"> |
| | | |
| | | </script> |
| | | <div class="table-body"> |
| | | <table id="LAY-app-PuhuoShoukuan-tableBox" lay-filter="LAY-app-PuhuoShoukuan-tableBox"></table> |
| | | </div> |
| | | |
| | | <script type="text/html" id="LAY-app-PuhuoShoukuan-toolbar"> |
| | | <div class="layui-form coreshop-toolbar-search-form"> |
| | | <div class="layui-form-item"> |
| | | |
| | | <!--<div class="layui-inline"> |
| | | <label class="layui-form-label" for="id">主键ID</label> |
| | | <div class="layui-input-inline"> |
| | | <input type="text" name="id" placeholder="请输入主键ID" class="layui-input"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label" for="distributionId">经销商id</label> |
| | | <div class="layui-input-inline"> |
| | | <input type="text" name="distributionId" placeholder="请输入经销商id" class="layui-input"> |
| | | </div> |
| | | </div>--> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label" for="areaCode">省</label> |
| | | <div class="layui-input-inline"> |
| | | <!--<input type="text" name="areaCode" placeholder="请输入省" class="layui-input">--> |
| | | <select name="sheng" id="sheng" lay-filter="shengFilter"> |
| | | <option value="0">请选择</option> |
| | | {{# layui.each(indexData, function(index, item){ }} |
| | | <option value="{{ item.id }}">{{ item.name }}</option> |
| | | {{# }); }} |
| | | </select> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label" for="shi">市</label> |
| | | <div class="layui-input-inline"> |
| | | <!--<input type="text" name="shi" placeholder="请输入市" class="layui-input">--> |
| | | |
| | | <select name="shi" id="shi" lay-filter="cityFilter"> |
| | | </select> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label" for="quxian">区县</label> |
| | | <div class="layui-input-inline"> |
| | | <!--<input type="text" name="quxian" placeholder="请输入区县" class="layui-input">--> |
| | | <select name="quxian" id="quxian" lay-filter="quxian"> |
| | | </select> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label" for="distributionName">经销商</label> |
| | | <div class="layui-input-inline"> |
| | | <input type="text" name="distributionName" placeholder="请输入经销商" class="layui-input"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label" for="goodsName">商品名称</label> |
| | | <div class="layui-input-inline"> |
| | | <input type="text" name="goodsName" placeholder="请输入商品名称" class="layui-input"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label" for="productsName">货品编号</label> |
| | | <div class="layui-input-inline"> |
| | | <input type="text" name="productsName" placeholder="请输入货品编号" class="layui-input"> |
| | | </div> |
| | | </div> |
| | | |
| | | <!--<div class="layui-inline"> |
| | | <label class="layui-form-label" for="areaCodeName">区域名称</label> |
| | | <div class="layui-input-inline"> |
| | | <input type="text" name="areaCodeName" placeholder="请输入区域名称" class="layui-input"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label" for="CategoryId">商品分类id</label> |
| | | <div class="layui-input-inline"> |
| | | <input type="text" name="CategoryId" placeholder="请输入商品分类id" class="layui-input"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label" for="CategoryName">商品分类</label> |
| | | <div class="layui-input-inline"> |
| | | <input type="text" name="CategoryName" placeholder="请输入商品分类" class="layui-input"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label" for="goodsId">商品id</label> |
| | | <div class="layui-input-inline"> |
| | | <input type="text" name="goodsId" placeholder="请输入商品id" class="layui-input"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label" for="goodsName">商品名称</label> |
| | | <div class="layui-input-inline"> |
| | | <input type="text" name="goodsName" placeholder="请输入商品名称" class="layui-input"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label" for="productsId">货品id</label> |
| | | <div class="layui-input-inline"> |
| | | <input type="text" name="productsId" placeholder="请输入货品id" class="layui-input"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label" for="productsName">货品编号</label> |
| | | <div class="layui-input-inline"> |
| | | <input type="text" name="productsName" placeholder="请输入货品编号" class="layui-input"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label" for="spesDesc">货品规格</label> |
| | | <div class="layui-input-inline"> |
| | | <input type="text" name="spesDesc" placeholder="请输入货品规格" class="layui-input"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label" for="price">货品价格</label> |
| | | <div class="layui-input-inline"> |
| | | <input type="text" name="price" placeholder="请输入货品价格" class="layui-input"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label" for="nums">数量</label> |
| | | <div class="layui-input-inline"> |
| | | <input type="text" name="nums" placeholder="请输入数量" class="layui-input"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label" for="amount">金额</label> |
| | | <div class="layui-input-inline"> |
| | | <input type="text" name="amount" placeholder="请输入金额" class="layui-input"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label" for="createTime">建立时间</label> |
| | | <div class="layui-input-inline" style="width: 260px;"> |
| | | <input type="text" name="createTime" id="searchTime-Puhuo-createTime" placeholder="请输入建立时间" class="layui-input"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label" for="upDataTime">修改时间</label> |
| | | <div class="layui-input-inline" style="width: 260px;"> |
| | | <input type="text" name="upDataTime" id="searchTime-Puhuo-upDataTime" placeholder="请输入修改时间" class="layui-input"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label" for="createBy">创建人</label> |
| | | <div class="layui-input-inline"> |
| | | <input type="text" name="createBy" placeholder="请输入创建人" class="layui-input"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label" for="upDataBy">修改人</label> |
| | | <div class="layui-input-inline"> |
| | | <input type="text" name="upDataBy" placeholder="请输入修改人" class="layui-input"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label" for="isdelete">删除标志</label> |
| | | <div class="layui-input-inline"> |
| | | <select name="isdelete"> |
| | | <option value="">请选择</option> |
| | | <option value="True">是</option> |
| | | <option value="False">否</option> |
| | | </select> |
| | | </div> |
| | | </div>--> |
| | | <div class="layui-inline"> |
| | | <button class="layui-btn layui-btn-sm" lay-submit lay-filter="LAY-app-PuhuoShoukuan-search"><i class="layui-icon layui-icon-search"></i>筛选</button> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </script> |
| | | |
| | | <script type="text/html" id="LAY-app-PuhuoShoukuan-pagebar"> |
| | | <div class="layui-btn-container"> |
| | | <!--<button class="layui-btn layui-btn-sm" lay-event="addData"><i class="layui-icon layui-icon-add-1"></i>添加数据</button> |
| | | <button class="layui-btn layui-btn-sm" lay-event="batchDelete"><i class="layui-icon layui-icon-delete"></i>批量删除</button>--> |
| | | <button class="layui-btn layui-btn-sm" lay-event="selectExportExcel"><i class="layui-icon layui-icon-add-circle"></i>选择导出</button> |
| | | <button class="layui-btn layui-btn-sm" lay-event="queryExportExcel"><i class="layui-icon layui-icon-download-circle"></i>查询导出</button> |
| | | </div> |
| | | </script> |
| | | |
| | | <script type="text/html" id="LAY-app-PuhuoShoukuan-tableBox-bar"> |
| | | <!--<a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="detail">查看</a> |
| | | <a class="layui-btn layui-btn-xs" lay-event="edit">编辑</a> |
| | | <a class="layui-btn layui-btn-danger layui-btn-xs" data-dropdown="#PuhuoShoukuanTbDelDrop{{d.LAY_INDEX}}" no-shade="true">删除</a>--> |
| | | <div class="dropdown-menu-nav dropdown-popconfirm dropdown-top-right layui-hide" id="PuhuoShoukuanTbDelDrop{{d.LAY_INDEX}}" |
| | | style="max-width: 200px;white-space: normal;min-width: auto;margin-left: 10px;"> |
| | | <div class="dropdown-anchor"></div> |
| | | <div class="dropdown-popconfirm-title"> |
| | | <i class="layui-icon layui-icon-help"></i> |
| | | 确定要删除吗? |
| | | </div> |
| | | <div class="dropdown-popconfirm-btn"> |
| | | <a class="layui-btn layui-btn-primary cursor" btn-cancel>取消</a> |
| | | <a class="layui-btn layui-btn-normal cursor" lay-event="del">确定</a> |
| | | </div> |
| | | </div> |
| | | </script> |
| | | |
| | | <script> |
| | | var indexData; |
| | | var debug= layui.setter.debug; |
| | | layui.data.done = function (d) { |
| | | //开启调试情况下获取接口赋值数据 |
| | | if (debug) { console.log(d); } |
| | | |
| | | indexData = d.data; |
| | | layui.use(['index', 'table', 'laydate', 'util', 'coredropdown', 'coreHelper'], |
| | | function () { |
| | | var $ = layui.$ |
| | | , admin = layui.admin |
| | | , table = layui.table |
| | | , form = layui.form |
| | | , laydate = layui.laydate |
| | | , setter = layui.setter |
| | | , coreHelper = layui.coreHelper |
| | | , util = layui.util |
| | | , view = layui.view; |
| | | |
| | | var searchwhere; |
| | | //监听搜索 |
| | | form.on('submit(LAY-app-PuhuoShoukuan-search)', |
| | | function(data) { |
| | | var field = data.field; |
| | | searchwhere = field; |
| | | //执行重载 |
| | | table.reloadData('LAY-app-PuhuoShoukuan-tableBox',{ where: field }); |
| | | }); |
| | | //数据绑定 |
| | | table.render({ |
| | | elem: '#LAY-app-PuhuoShoukuan-tableBox', |
| | | url: layui.setter.apiUrl + 'Api/PuhuoShoukuan/GetPageList', |
| | | method: 'POST', |
| | | toolbar: '#LAY-app-PuhuoShoukuan-toolbar', |
| | | pagebar: '#LAY-app-PuhuoShoukuan-pagebar', |
| | | className: 'pagebarbox', |
| | | defaultToolbar: ['filter', 'print', 'exports'], |
| | | height: 'full-127',//面包屑142px,搜索框4行172,3行137,2行102,1行67 |
| | | page: true, |
| | | limit: 30, |
| | | limits: [10, 15, 20, 25, 30, 50, 100, 200], |
| | | text: {none: '暂无相关数据'}, |
| | | cols: [ |
| | | [ |
| | | { type: "checkbox" }, |
| | | { type: 'numbers', title: '序号', width: 60, sort: false }, |
| | | /* { field: 'id', title: '主键ID', width: 60, sort: false},*/ |
| | | { field: 'areaCodeName', title: '区域名称', sort: false, width: 165 }, |
| | | /* { field: 'distributionId', title: '经销商id', sort: false,width: 105 },*/ |
| | | { field: 'distributionName', title: '经销商', sort: false, width: 125 }, |
| | | { field: 'schoolName', title: '学校', sort: false, width: 165 }, |
| | | /* { field: 'areaCode', title: '区域', sort: false,width: 105 },*/ |
| | | |
| | | /* { field: 'categoryId', title: '商品分类id', sort: false,width: 105 },*/ |
| | | { field: 'categoryName', title: '商品类别', sort: false, width: 165 }, |
| | | /* { field: 'goodsId', title: '商品id', sort: false,width: 105 },*/ |
| | | { field: 'goodsName', title: '商品名称', sort: false, width: 165 }, |
| | | /* { field: 'productsId', title: '货品id', sort: false,width: 105 },*/ |
| | | { field: 'productsName', title: '货品编号', sort: false, width: 215 }, |
| | | /* { field: 'spesDesc', title: '货品规格', sort: false,width: 105 },*/ |
| | | { field: 'shoukuannums', title: '收款数量', sort: false, width: 165 }, |
| | | { field: 'price', title: '单价', sort: false, width: 165 }, |
| | | |
| | | { field: 'shoukuanamount', title: '收款金额', sort: false, width: 165 }, |
| | | ] |
| | | ], done: function (res, curr, count) { |
| | | |
| | | console.log(res); |
| | | // 创建合计行的HTML |
| | | var totalRowHtml = '<tr class="layui-table-total" style="background-color: #f2f2f2; font-weight: bold;">\ |
| | | <td></td><td></td><td colspan="6">当页合计</td><td> '+ res.otherData.heji1 + '</td><td></td><td> ' + res.otherData.heji2 + '</td>\ |
| | | </tr>\ |
| | | <tr class="layui-table-total" style="background-color: #e9e9e9; font-weight: bold;">\ |
| | | <td></td><td></td><td colspan="6">总合计</td><td> '+ res.otherData.heji4 + '</td><td></td><td> ' + res.otherData.heji5 + '</td>\ |
| | | </tr>'; |
| | | |
| | | // 将合计行添加到表格底部 |
| | | $('#LAY-app-PuhuoShoukuan-tableBox').next().find('.layui-table-body tbody').append(totalRowHtml); |
| | | } |
| | | }); |
| | | //监听排序事件 |
| | | table.on('sort(LAY-app-PuhuoShoukuan-tableBox)', function(obj){ |
| | | table.reloadData('LAY-app-PuhuoShoukuan-tableBox', { |
| | | initSort: obj, //记录初始排序,如果不设的话,将无法标记表头的排序状态。 |
| | | where: { //请求参数(注意:这里面的参数可任意定义,并非下面固定的格式) |
| | | orderField: obj.field, //排序字段 |
| | | orderDirection: obj.type //排序方式 |
| | | } |
| | | }); |
| | | }); |
| | | //监听行双击事件 |
| | | table.on('rowDouble(LAY-app-PuhuoShoukuan-tableBox)', function (obj) { |
| | | //查看详情 |
| | | doDetails(obj); |
| | | }); |
| | | //头工具栏事件 |
| | | table.on('pagebar(LAY-app-PuhuoShoukuan-tableBox)', function (obj) { |
| | | var checkStatus = table.checkStatus(obj.config.id); |
| | | switch (obj.event) { |
| | | case 'addData': |
| | | doCreate(); |
| | | break; |
| | | case 'batchDelete': |
| | | doBatchDelete(checkStatus); |
| | | break; |
| | | case 'selectExportExcel': |
| | | doSelectExportExcel(checkStatus); |
| | | break; |
| | | case 'queryExportExcel': |
| | | doQueryExportexcel(); |
| | | break; |
| | | }; |
| | | }); |
| | | //监听工具条 |
| | | table.on('tool(LAY-app-PuhuoShoukuan-tableBox)', |
| | | function(obj) { |
| | | if (obj.event === 'detail') { |
| | | doDetails(obj); |
| | | } else if (obj.event === 'del') { |
| | | doDelete(obj); |
| | | } else if (obj.event === 'edit') { |
| | | doEdit(obj) |
| | | } |
| | | }); |
| | | //执行创建操作 |
| | | function doCreate(){ |
| | | coreHelper.Post("Api/PuhuoShoukuan/GetCreate", null, function (e) { |
| | | if (e.code === 0) { |
| | | admin.popup({ |
| | | shadeClose: false, |
| | | title: '创建数据', |
| | | area: ['1200px', '90%'], |
| | | id: 'LAY-popup-PuhuoShoukuan-create', |
| | | success: function (layero, index) { |
| | | view(this.id).render('base/PuhuoShoukuan/create', { data: e.data }).done(function () { |
| | | //监听提交 |
| | | form.on('submit(LAY-app-PuhuoShoukuan-createForm-submit)', |
| | | function(data) { |
| | | var field = data.field; //获取提交的字段 |
| | | |
| | | field.isdelete = field.isdelete == 'on'; |
| | | |
| | | if (debug) { console.log(field); } //开启调试返回数据 |
| | | //提交 Ajax 成功后,关闭当前弹层并重载表格 |
| | | coreHelper.Post("Api/PuhuoShoukuan/DoCreate", field, function (e) { |
| | | console.log(e) |
| | | if (e.code === 0) { |
| | | layui.table.reloadData('LAY-app-PuhuoShoukuan-tableBox'); //重载表格 |
| | | layer.close(index); //再执行关闭 |
| | | layer.msg(e.msg); |
| | | } else { |
| | | layer.msg(e.msg); |
| | | } |
| | | }); |
| | | }); |
| | | }); |
| | | // 禁止弹窗出现滚动条 |
| | | $(layero).children('.layui-layer-content').css('overflow', 'visible'); |
| | | } |
| | | , btn: ['确定', '取消'] |
| | | , yes: function (index, layero) { |
| | | layero.contents().find("#LAY-app-PuhuoShoukuan-createForm-submit").click(); |
| | | } |
| | | }); |
| | | } else { |
| | | layer.msg(e.msg); |
| | | } |
| | | }); |
| | | } |
| | | //执行编辑操作 |
| | | function doEdit(obj){ |
| | | coreHelper.Post("Api/PuhuoShoukuan/GetEdit", {id:obj.data.id}, function (e) { |
| | | if (e.code === 0) { |
| | | admin.popup({ |
| | | shadeClose: false, |
| | | title: '编辑数据', |
| | | area: ['1200px', '90%'], |
| | | id: 'LAY-popup-PuhuoShoukuan-edit', |
| | | success: function (layero, index) { |
| | | view(this.id).render('base/PuhuoShoukuan/edit', { data: e.data }).done(function () { |
| | | //监听提交 |
| | | form.on('submit(LAY-app-PuhuoShoukuan-editForm-submit)', |
| | | function(data) { |
| | | var field = data.field; //获取提交的字段 |
| | | |
| | | field.isdelete = field.isdelete == 'on'; |
| | | |
| | | if (debug) { console.log(field); } //开启调试返回数据 |
| | | //提交 Ajax 成功后,关闭当前弹层并重载表格 |
| | | coreHelper.Post("Api/PuhuoShoukuan/DoEdit", field, function (e) { |
| | | console.log(e) |
| | | if (e.code === 0) { |
| | | layui.table.reloadData('LAY-app-PuhuoShoukuan-tableBox'); //重载表格 |
| | | layer.close(index); //再执行关闭 |
| | | layer.msg(e.msg); |
| | | } else { |
| | | layer.msg(e.msg); |
| | | } |
| | | }); |
| | | }); |
| | | }) |
| | | // 禁止弹窗出现滚动条 |
| | | $(layero).children('.layui-layer-content').css('overflow', 'visible'); |
| | | } |
| | | , btn: ['确定', '取消'] |
| | | , yes: function (index, layero) { |
| | | layero.contents().find("#LAY-app-PuhuoShoukuan-editForm-submit").click(); |
| | | } |
| | | }); |
| | | } else { |
| | | layer.msg(e.msg); |
| | | } |
| | | }); |
| | | } |
| | | //执行预览操作 |
| | | function doDetails(obj) { |
| | | coreHelper.Post("Api/PuhuoShoukuan/GetDetails", { id: obj.data.id }, function (e) { |
| | | if (e.code === 0) { |
| | | admin.popup({ |
| | | shadeClose: false, |
| | | title: '查看详情', |
| | | area: ['1200px', '90%'], |
| | | id: 'LAY-popup-PuhuoShoukuan-details', |
| | | success: function (layero, index) { |
| | | view(this.id).render('base/PuhuoShoukuan/details', { data: e.data }).done(function () { |
| | | form.render(); |
| | | }); |
| | | // 禁止弹窗出现滚动条 |
| | | $(layero).children('.layui-layer-content').css('overflow', 'visible'); |
| | | } |
| | | }); |
| | | } else { |
| | | layer.msg(e.msg); |
| | | } |
| | | }); |
| | | } |
| | | //执行单个删除 |
| | | function doDelete(obj){ |
| | | coreHelper.Post("Api/PuhuoShoukuan/DoDelete", { id: obj.data.id }, function (e) { |
| | | if (debug) { console.log(e); } //开启调试返回数据 |
| | | table.reloadData('LAY-app-PuhuoShoukuan-tableBox'); |
| | | layer.msg(e.msg); |
| | | }); |
| | | } |
| | | |
| | | // 监听提交事件 |
| | | form.on('select(shengFilter)', function (data) { |
| | | var city = $("#sheng").val(); |
| | | $.ajax({ |
| | | type: "GET", |
| | | url: layui.setter.apiUrl + 'Api/CoreCmsPlanOrder/GetCityId?shengid=' + city, |
| | | dataType: "json", |
| | | global: false, |
| | | data: "", |
| | | success: function (data) { |
| | | console.log(data.data); |
| | | var quxian = $("#shi"); |
| | | quxian.find('option').remove(); |
| | | var aaa = '<option value="0">请选择</option>'; |
| | | quxian.append(aaa); |
| | | if (data.data.length > 0) { |
| | | for (var i = 0; i < data.data.length; i++) { |
| | | |
| | | var o = '<option value="' + data.data[i].id + '" >' + data.data[i].name + '</option>'; |
| | | quxian.append(o); |
| | | } |
| | | // 使用form.render方法重新渲染select |
| | | form.render('select'); |
| | | } |
| | | }, |
| | | error: function () { |
| | | |
| | | |
| | | parent.layer.msg('失败', { icon: 5 }); |
| | | } |
| | | }); |
| | | }); |
| | | |
| | | // 监听提交事件 |
| | | form.on('select(cityFilter)', function (data) { |
| | | var city = $("#shi").val(); |
| | | $.ajax({ |
| | | type: "GET", |
| | | url: layui.setter.apiUrl + 'Api/CoreCmsPlanOrder/GetAreaId?cityid=' + city, |
| | | dataType: "json", |
| | | global: false, |
| | | data: "", |
| | | success: function (data) { |
| | | console.log(data.data); |
| | | var quxian = $("#quxian"); |
| | | quxian.find('option').remove(); |
| | | var aaa = '<option value="0">请选择</option>'; |
| | | quxian.append(aaa); |
| | | if (data.data.length > 0) { |
| | | for (var i = 0; i < data.data.length; i++) { |
| | | |
| | | var o = '<option value="' + data.data[i].id + '" >' + data.data[i].name + '</option>'; |
| | | quxian.append(o); |
| | | } |
| | | // 使用form.render方法重新渲染select |
| | | form.render('select'); |
| | | } |
| | | }, |
| | | error: function () { |
| | | |
| | | |
| | | parent.layer.msg('失败', { icon: 5 }); |
| | | } |
| | | }); |
| | | }); |
| | | //执行批量删除 |
| | | function doBatchDelete(checkStatus){ |
| | | var checkData = checkStatus.data; |
| | | if (checkData.length === 0) { |
| | | return layer.msg('请选择要删除的数据'); |
| | | } |
| | | layer.confirm('确定删除吗?删除后将无法恢复。', |
| | | function(index) { |
| | | var delidsStr = []; |
| | | layui.each(checkData, |
| | | function(index, item) { |
| | | delidsStr.push(item.id); |
| | | }); |
| | | coreHelper.Post("Api/PuhuoShoukuan/DoBatchDelete", { id: delidsStr }, function (e) { |
| | | if (debug) { console.log(e); } //开启调试返回数据 |
| | | table.reloadData('LAY-app-PuhuoShoukuan-tableBox'); |
| | | layer.msg(e.msg); |
| | | }); |
| | | }); |
| | | } |
| | | //执行查询条件导出excel |
| | | function doQueryExportexcel(){ |
| | | layer.confirm('确定根据当前的查询条件导出数据吗?', |
| | | function(index) { |
| | | var field = searchwhere; |
| | | coreHelper.PostForm("Api/PuhuoShoukuan/QueryExportExcel", field, function (e) { |
| | | if (debug) { console.log(e); } //开启调试返回数据 |
| | | if (e.code === 0) { |
| | | window.open(e.data); |
| | | } else { |
| | | layer.msg(e.msg); |
| | | } |
| | | }); |
| | | }); |
| | | } |
| | | //执行选择目录导出数据 |
| | | function doSelectExportExcel(checkStatus){ |
| | | var checkData = checkStatus.data; |
| | | if (checkData.length === 0) { |
| | | return layer.msg('请选择您要导出的数据'); |
| | | } |
| | | layer.confirm('确定导出选择的内容吗?', |
| | | function(index) { |
| | | var delidsStr = []; |
| | | layui.each(checkData, |
| | | function(index, item) { |
| | | delidsStr.push(item.id); |
| | | }); |
| | | layer.close(index); |
| | | coreHelper.Post("Api/PuhuoShoukuan/SelectExportExcel", { id: delidsStr }, function (e) { |
| | | if (debug) { console.log(e); } //开启调试返回数据 |
| | | if (e.code === 0) { |
| | | window.open(e.data); |
| | | } else { |
| | | layer.msg(e.msg); |
| | | } |
| | | }); |
| | | }); |
| | | } |
| | | |
| | | |
| | | laydate.render({ |
| | | elem: '#searchTime-PuhuoShoukuan-createTime', |
| | | type: 'datetime', |
| | | range: '到', |
| | | }); |
| | | laydate.render({ |
| | | elem: '#searchTime-PuhuoShoukuan-upDataTime', |
| | | type: 'datetime', |
| | | range: '到', |
| | | }); |
| | | |
| | | //监听 表格复选框操作 |
| | | |
| | | layui.form.on('switch(switch_isdelete)', function (obj) { |
| | | coreHelper.Post("Api/PuhuoShoukuan/DoSetisdelete", { id: this.value, data: obj.elem.checked }, function (e) { |
| | | if (debug) { console.log(e); } //开启调试返回数据 |
| | | //table.reloadData('LAY-app-PuhuoShoukuan-tableBox'); |
| | | layer.msg(e.msg); |
| | | }); |
| | | }); |
| | | |
| | | |
| | | //重载form |
| | | form.render(); |
| | | }); |
| | | }; |
| | | </script> |
| | | |
| | | <!--设置删除标志--> |
| | | <script type="text/html" id="switch_isdelete"> |
| | | <input type="checkbox" name="switch_isdelete" value="{{d.id}}" lay-skin="switch" lay-text="开启|关闭" lay-filter="switch_isdelete" {{ d.isdelete ? 'checked' : '' }}> |
| | | </script> |
| | | |
| | |
| | | [ |
| | | { field: 'id', title: '序列', width: 40, sort: false }, |
| | | { field: 'stockId', title: '关联单号', sort: false, width: 150 }, |
| | | { field: 'memo', title: '备注', sort: false, width: 250 }, |
| | | { field: 'goodsName', title: '商品名称', sort: false }, |
| | | { field: 'spesDesc', title: '货品规格', sort: false }, |
| | | //{ field: 'productId', title: '货品序列', sort: false, width: 105 }, |
| | |
| | | <div class="layui-form-item"> |
| | | <label for="type" class="layui-form-label layui-form-required">操作类型</label> |
| | | <div class="layui-input-block"> |
| | | {{# layui.each(d.params.data.stockType, function(index, item){ }} |
| | | <input type="radio" name="type" value="{{ item.value }}" title="{{ item.description }}" lay-verify="required"> |
| | | {{# }); }} |
| | | <!--<select name="type" lay-verify="required" lay-reqText="请选择入库单类型"> |
| | | <option value="">请选择出库入库类型</option> |
| | | <!--{{# layui.each(d.params.data.stockType, function(index, item){ }} |
| | | <input type="radio" name="type" value="{{ item.value }}" title="{{ item.description }}" lay-verify="required"> |
| | | {{# }); }}--> |
| | | <select name="type" lay-verify="required" lay-reqText="请选择操作类型" lay-filter="cityFilter"> |
| | | <option value="">请选择操作类型</option> |
| | | {{# layui.each(d.params.data.stockType, function(index, item){ }} |
| | | <option value="{{ item.value }}">{{ item.description }}</option> |
| | | {{# }); }} |
| | | </select>--> |
| | | <option value="3">经销商铺货</option> |
| | | </select> |
| | | </div> |
| | | </div> |
| | | <div class="layui-form-item"> |
| | |
| | | </div> |
| | | |
| | | |
| | | <div class="layui-form-item" id="jingxiaoshang" style="display:none;"> |
| | | <label for="distributionId" class="layui-form-label layui-form-required">经销商</label> |
| | | <div class="layui-input-block"> |
| | | |
| | | <select name="distributionId" lay-verify="required" lay-reqText="请选择经销商" lay-filter="cityFilter" lay-search> |
| | | {{# layui.each(d.params.data.distributions, function(index, item){ }} |
| | | <option value="{{ item.id }}">{{ item.name }}</option> |
| | | {{# }); }} |
| | | </select> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label for="memo" class="layui-form-label layui-form-required">选择货品</label> |
| | | <div class="layui-input-block" style="padding: 0 0 10px 10px;" id="father"> |
| | |
| | | <label class="layui-form-label layui-form-required">选择货品</label> |
| | | <div class="pro clearfix"> |
| | | <div class="layui-input-inline layui-inline-13"> |
| | | <select name="item.productId[0]" id="productId" lay-verify="required"> |
| | | <select name="item.productId[0]" id="productId" lay-verify="required" lay-search> |
| | | <option value="">根据商品名称、货品编号搜索</option> |
| | | {{# layui.each(d.params.data.products, function(index, item){ }} |
| | | <option value="{{ item.id }}">商品名称:{{ item.name }}{{ item.spesDesc ? '-'+item.spesDesc :''}},货品编号:{{ item.sn }},当前库存:{{ item.stock }}</option> |
| | |
| | | <i class="layui-icon"></i> |
| | | </button> |
| | | <!--<button type="button" class="layui-btn layui-btn-primary layui-btn-sm del"> |
| | | <i class="layui-icon"></i> |
| | | </button>--> |
| | | <i class="layui-icon"></i> |
| | | </button>--> |
| | | </div> |
| | | </div> |
| | | </div> |
| | |
| | | <label class="layui-form-label layui-form-required">选择货品</label> |
| | | <div class="pro clearfix"> |
| | | <div class="layui-input-inline layui-inline-13"> |
| | | <select name="item.productId[{{ d.id }}]" id="productId" lay-verify="required"> |
| | | <select name="item.productId[{{ d.id }}]" id="productId" lay-verify="required" lay-search> |
| | | <option value="">根据商品名称、货品编号搜索</option> |
| | | {{# layui.each(paramsData, function(index, item){ }} |
| | | <option value="{{ item.id }}">商品名称:{{ item.name }}{{ item.spesDesc ? '-'+item.spesDesc :''}},货品编号:{{ item.sn }},当前库存:{{ item.stock }}</option> |
| | |
| | | form.render(); |
| | | } |
| | | |
| | | // 监听提交事件 |
| | | form.on('select(cityFilter)', function (data) { |
| | | //console.log(data.value); // 被选中的值 |
| | | //console.log(data.elem); // 被选中的元素 |
| | | //console.log(data.field); // 相关表单的字段名 |
| | | // 在这里可以执行其他操作 |
| | | if (data.value == '3') { |
| | | $('#jingxiaoshang').show(); |
| | | } else { |
| | | $('#jingxiaoshang').hide(); |
| | | } |
| | | |
| | | }); |
| | | |
| | | form.verify({ |
| | | |
| | | verifyid: [/^.{0,20}$/, '序列最大只允许输入20位字符'], |
| | |
| | | form.render(null, 'LAY-app-CoreCmsStock-createForm'); |
| | | }) |
| | | }; |
| | | |
| | | </script> |
| | |
| | | model.id = field.id; |
| | | model.type = field.type; |
| | | model.memo = field.memo; |
| | | model.distributionId = field.distributionId; |
| | | field.model = model; |
| | | |
| | | if (debug) { console.log(field); } //开启调试返回数据 |
| | |
| | | ,url = (item.jump && typeof item.jump === 'string') ? item.jump : item.name; |
| | | }} |
| | | <li data-name="{{ item.name || '' }}" data-jump="{{ item.jump || '' }}" class="layui-nav-item {{ classSelected() }}"> |
| | | <a href="javascript:;" {{ hasChildren ? '' : 'lay-href="'+ url+'"' }} lay-tips="{{ item.title }}" lay-direction="2"> |
| | | <a style="padding-top:0px;padding-bottom:0px;" href="javascript:;" {{ hasChildren ? '' : 'lay-href="'+ url+'"' }} lay-tips="{{ item.title }}" lay-direction="2"> |
| | | <i class="layui-icon {{ item.icon }}"></i> |
| | | <cite>{{ item.title }}</cite> |
| | | </a> |
| | |
| | | }} |
| | | <dd data-name="{{ item2.name || '' }}" data-jump="{{ item2.jump || '' }}" |
| | | {{ classSelected2() ? ('class='+ classSelected2()) : '' }}> |
| | | <a href="javascript:;" {{ hasChildren2 ? '' : 'lay-href='+ url2+' ' }}>{{ item2.title }}</a> |
| | | <a style="padding-top:0px;padding-bottom:0px;" href="javascript:;" {{ hasChildren2 ? '' : 'lay-href='+ url2+' ' }}>{{ item2.title }}</a> |
| | | {{# if(hasChildren2){ }} |
| | | <dl class="layui-nav-child"> |
| | | {{# layui.each(item2.list, function(index3, item3){ |
| | |
| | | }} |
| | | <dd data-name="{{ item3.name || '' }}" data-jump="{{ item3.jump || '' }}" |
| | | {{ match ? 'class="layui-this"' : '' }}> |
| | | <a href="javascript:;" lay-href="{{ url3 }}" {{ item3.iframe ? 'lay-iframe="true"' : '' }}>{{ item3.title }}</a> |
| | | <a style="padding-top:0px;padding-bottom:0px;" href="javascript:;" lay-href="{{ url3 }}" {{ item3.iframe ? 'lay-iframe="true"' : '' }}>{{ item3.title }}</a> |
| | | </dd> |
| | | {{# }); }} |
| | | </dl> |