From 7f26cd7c3e492062418cdc7dbe9d7ce14cbe5f05 Mon Sep 17 00:00:00 2001 From: username@email.com <yzy2002yzy@163.com> Date: 星期三, 26 六月 2024 11:47:37 +0800 Subject: [PATCH] 铺货修改 --- CoreCms.Net.IRepository/Stock/ICoreCmsStockRepository.cs | 2 CoreCms.Net.Web.Admin/wwwroot/views/baifenbingfa/puhuo/details.html | 8 CoreCms.Net.Web.Admin/wwwroot/views/baifenbingfa/puhuo/index.html | 115 + CoreCms.Net.Web.Admin/wwwroot/views/baifenbingfa/puhuoshoukuan/details.html | 234 +++ CoreCms.Net.IServices/baifenbingfa/IPuhuoServices.cs | 2 CoreCms.Net.Web.Admin/Controllers/baifenbingfa/PuhuoShoukuanController.cs | 1281 ++++++++++++++++++ CoreCms.Net.IRepository/baifenbinfa/IPuhuoShoukuanRepository.cs | 99 + CoreCms.Net.Repository/baifenbingfa/PuhuoRepository.cs | 54 CoreCms.Net.Web.Admin/wwwroot/views/content/stock/stocks/index.html | 1 CoreCms.Net.Repository/baifenbingfa/PuhuoShoukuanRepository.cs | 280 +++ CoreCms.Net.Web.Admin/wwwroot/views/baifenbingfa/puhuo/create.html | 2 CoreCms.Net.Web.Admin/wwwroot/views/baifenbingfa/puhuo/edit.html | 4 CoreCms.Net.Web.Admin/wwwroot/views/baifenbingfa/puhuo/indexgroup.html | 29 CoreCms.Net.IServices/Stock/ICoreCmsStockServices.cs | 2 CoreCms.Net.Configuration/GlobalEnumVars.cs | 6 CoreCms.Net.Web.Admin/Controllers/baifenbingfa/PuhuoController.cs | 282 +++ CoreCms.Net.Web.Admin/wwwroot/views/baifenbingfa/puhuoshoukuan/create.html | 204 ++ CoreCms.Net.IServices/baifenbingfa/IPuhuoShoukuanServices.cs | 95 + CoreCms.Net.Model/Entities/baifenbingfa/puhuo/Puhuo.cs | 24 CoreCms.Net.Services/baifenbingfa/PuhuoServices.cs | 4 CoreCms.Net.IRepository/baifenbinfa/IPuhuoRepository.cs | 2 CoreCms.Net.Model/Entities/baifenbingfa/puhuo/PuhuoShoukuan.cs | 159 ++ CoreCms.Net.Web.Admin/wwwroot/views/content/stock/stocklog/index.html | 1 CoreCms.Net.Model/ViewModels/UI/AdminUiCallBack.cs | 12 CoreCms.Net.Services/Stock/CoreCmsStockServices.cs | 5 CoreCms.Net.Web.Admin/wwwroot/views/baifenbingfa/puhuoshoukuan/edit.html | 202 ++ CoreCms.Net.Repository/Stock/CoreCmsStockRepository.cs | 104 + CoreCms.Net.Web.Admin/Controllers/Stock/CoreCmsStockController.cs | 40 CoreCms.Net.Model/Entities/Good/CoreCmsProducts.cs | 8 CoreCms.Net.Web.Admin/wwwroot/views/baifenbingfa/puhuoshoukuan/index.html | 623 ++++++++ CoreCms.Net.Web.Admin/wwwroot/views/content/stock/stocks/create.html | 48 CoreCms.Net.Model/Entities/Stock/CoreCmsStockPartial.cs | 7 CoreCms.Net.Services/baifenbingfa/PuhuoShoukuanServices.cs | 130 + CoreCms.Net.Web.Admin/wwwroot/views/layout.html | 6 CoreCms.Net.Web.Admin/wwwroot/views/baifenbingfa/puhuo/editshoukuan.html | 174 ++ 35 files changed, 4,138 insertions(+), 111 deletions(-) diff --git a/CoreCms.Net.Configuration/GlobalEnumVars.cs b/CoreCms.Net.Configuration/GlobalEnumVars.cs index acba533..42a8a21 100644 --- a/CoreCms.Net.Configuration/GlobalEnumVars.cs +++ b/CoreCms.Net.Configuration/GlobalEnumVars.cs @@ -2872,6 +2872,12 @@ /// </summary> [Description("閫�璐�")] ReturnedGoods = 5, + + /// <summary> + /// 閾鸿揣鐩樼偣 + /// </summary> + [Description("閾鸿揣鐩樼偣")] + CheckPuhuo = 6, } #endregion diff --git a/CoreCms.Net.IRepository/Stock/ICoreCmsStockRepository.cs b/CoreCms.Net.IRepository/Stock/ICoreCmsStockRepository.cs index 07e03ba..b93ea20 100644 --- a/CoreCms.Net.IRepository/Stock/ICoreCmsStockRepository.cs +++ b/CoreCms.Net.IRepository/Stock/ICoreCmsStockRepository.cs @@ -55,7 +55,7 @@ /// </summary> /// <param name="entity"></param> /// <returns></returns> - Task<AdminUiCallBack> InsertAsync(FMCreateStock entity); + Task<AdminUiCallBack> InsertAsync(FMCreateStock entity, string username, CoreCmsDistribution distribution); #endregion } diff --git a/CoreCms.Net.IRepository/baifenbinfa/IPuhuoRepository.cs b/CoreCms.Net.IRepository/baifenbinfa/IPuhuoRepository.cs index da7c86a..9bcd31f 100644 --- a/CoreCms.Net.IRepository/baifenbinfa/IPuhuoRepository.cs +++ b/CoreCms.Net.IRepository/baifenbinfa/IPuhuoRepository.cs @@ -109,7 +109,7 @@ /// <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); } diff --git a/CoreCms.Net.IRepository/baifenbinfa/IPuhuoShoukuanRepository.cs b/CoreCms.Net.IRepository/baifenbinfa/IPuhuoShoukuanRepository.cs new file mode 100644 index 0000000..8f9a9f1 --- /dev/null +++ b/CoreCms.Net.IRepository/baifenbinfa/IPuhuoShoukuanRepository.cs @@ -0,0 +1,99 @@ +/*********************************************************************** + * 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); + + } +} diff --git a/CoreCms.Net.IServices/Stock/ICoreCmsStockServices.cs b/CoreCms.Net.IServices/Stock/ICoreCmsStockServices.cs index 13040bf..a5afc84 100644 --- a/CoreCms.Net.IServices/Stock/ICoreCmsStockServices.cs +++ b/CoreCms.Net.IServices/Stock/ICoreCmsStockServices.cs @@ -51,7 +51,7 @@ /// </summary> /// <param name="entity"></param> /// <returns></returns> - Task<AdminUiCallBack> InsertAsync(FMCreateStock entity); + Task<AdminUiCallBack> InsertAsync(FMCreateStock entity, string username, CoreCmsDistribution distribution); #endregion } diff --git a/CoreCms.Net.IServices/baifenbingfa/IPuhuoServices.cs b/CoreCms.Net.IServices/baifenbingfa/IPuhuoServices.cs index 64a4993..dd89c5e 100644 --- a/CoreCms.Net.IServices/baifenbingfa/IPuhuoServices.cs +++ b/CoreCms.Net.IServices/baifenbingfa/IPuhuoServices.cs @@ -105,7 +105,7 @@ /// <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 } diff --git a/CoreCms.Net.IServices/baifenbingfa/IPuhuoShoukuanServices.cs b/CoreCms.Net.IServices/baifenbingfa/IPuhuoShoukuanServices.cs new file mode 100644 index 0000000..fc3fb9b --- /dev/null +++ b/CoreCms.Net.IServices/baifenbingfa/IPuhuoShoukuanServices.cs @@ -0,0 +1,95 @@ +/*********************************************************************** + * 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 + } +} diff --git a/CoreCms.Net.Model/Entities/Good/CoreCmsProducts.cs b/CoreCms.Net.Model/Entities/Good/CoreCmsProducts.cs index 8afe4af..cf2a0c5 100644 --- a/CoreCms.Net.Model/Entities/Good/CoreCmsProducts.cs +++ b/CoreCms.Net.Model/Entities/Good/CoreCmsProducts.cs @@ -265,5 +265,13 @@ public bool isCustomizable { get; set; }=false; + + /// <summary> + /// 鍙樺姩鏁伴噺 + /// </summary> + [Display(Name = "鍙樺姩鏁伴噺")] + [SugarColumn(IsIgnore = true)] + public System.Int32 nums { get; set; } + } } diff --git a/CoreCms.Net.Model/Entities/Stock/CoreCmsStockPartial.cs b/CoreCms.Net.Model/Entities/Stock/CoreCmsStockPartial.cs index e42b53f..f4f1290 100644 --- a/CoreCms.Net.Model/Entities/Stock/CoreCmsStockPartial.cs +++ b/CoreCms.Net.Model/Entities/Stock/CoreCmsStockPartial.cs @@ -24,5 +24,12 @@ [Display(Name = "鎿嶄綔鍛樻樀绉�")] [SugarColumn(IsIgnore = true)] public string managerName { get; set; } + + /// <summary> + /// 缁忛攢鍟唅d + /// </summary> + [Display(Name = "缁忛攢鍟唅d")] + [SugarColumn(IsIgnore = true)] + public int distributionId { get; set; } } } \ No newline at end of file diff --git a/CoreCms.Net.Model/Entities/baifenbingfa/puhuo/Puhuo.cs b/CoreCms.Net.Model/Entities/baifenbingfa/puhuo/Puhuo.cs index ddd39ef..06d7ba5 100644 --- a/CoreCms.Net.Model/Entities/baifenbingfa/puhuo/Puhuo.cs +++ b/CoreCms.Net.Model/Entities/baifenbingfa/puhuo/Puhuo.cs @@ -14,7 +14,7 @@ /// <summary> /// 閾鸿揣 /// </summary> - + [SqlCodeFirst] public class Puhuo : BFBaseModel { /// <summary> @@ -126,5 +126,27 @@ 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); + + } } diff --git a/CoreCms.Net.Model/Entities/baifenbingfa/puhuo/PuhuoShoukuan.cs b/CoreCms.Net.Model/Entities/baifenbingfa/puhuo/PuhuoShoukuan.cs new file mode 100644 index 0000000..6547bd6 --- /dev/null +++ b/CoreCms.Net.Model/Entities/baifenbingfa/puhuo/PuhuoShoukuan.cs @@ -0,0 +1,159 @@ +锘縰sing 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> + /// 缁忛攢鍟唅d + /// </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); + + } +} diff --git a/CoreCms.Net.Model/ViewModels/UI/AdminUiCallBack.cs b/CoreCms.Net.Model/ViewModels/UI/AdminUiCallBack.cs index 5b00948..5a0e5f0 100644 --- a/CoreCms.Net.Model/ViewModels/UI/AdminUiCallBack.cs +++ b/CoreCms.Net.Model/ViewModels/UI/AdminUiCallBack.cs @@ -30,5 +30,17 @@ 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; } } } \ No newline at end of file diff --git a/CoreCms.Net.Repository/Stock/CoreCmsStockRepository.cs b/CoreCms.Net.Repository/Stock/CoreCmsStockRepository.cs index 5f54c7c..b3b09cc 100644 --- a/CoreCms.Net.Repository/Stock/CoreCmsStockRepository.cs +++ b/CoreCms.Net.Repository/Stock/CoreCmsStockRepository.cs @@ -23,6 +23,7 @@ using CoreCms.Net.Model.ViewModels.UI; using CoreCms.Net.Utility.Helper; using SqlSugar; +using CoreCms.Net.Model.Entities.baifenbingfa.puhuo; namespace CoreCms.Net.Repository { @@ -44,7 +45,7 @@ /// </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(); @@ -76,6 +77,10 @@ { 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 = "鍗曟嵁绫诲瀷閿欒"; @@ -85,7 +90,20 @@ 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>(); @@ -116,7 +134,9 @@ 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(); @@ -136,6 +156,16 @@ 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); @@ -160,6 +190,9 @@ } } + + + try { _unitOfWork.BeginTran(); @@ -172,6 +205,71 @@ { 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(); diff --git a/CoreCms.Net.Repository/baifenbingfa/PuhuoRepository.cs b/CoreCms.Net.Repository/baifenbingfa/PuhuoRepository.cs index bc78e62..e159d1f 100644 --- a/CoreCms.Net.Repository/baifenbingfa/PuhuoRepository.cs +++ b/CoreCms.Net.Repository/baifenbingfa/PuhuoRepository.cs @@ -89,7 +89,9 @@ 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; @@ -196,7 +198,7 @@ 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, @@ -225,7 +227,7 @@ 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, @@ -238,6 +240,16 @@ }).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; } @@ -259,7 +271,7 @@ /// <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; @@ -267,7 +279,7 @@ 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 { @@ -278,7 +290,7 @@ 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), @@ -289,6 +301,9 @@ .MergeTable()//闇�瑕佸姞MergeTable鎵嶈兘鎺掑簭缁熻杩囩殑鍒� .OrderByIF(orderByExpression != null, orderByExpression, orderByType) .With(SqlWith.NoLock).ToPageListAsync(pageIndex, pageSize, totalCount); + + + } else { @@ -303,7 +318,7 @@ 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), @@ -315,6 +330,31 @@ .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; } diff --git a/CoreCms.Net.Repository/baifenbingfa/PuhuoShoukuanRepository.cs b/CoreCms.Net.Repository/baifenbingfa/PuhuoShoukuanRepository.cs new file mode 100644 index 0000000..9516525 --- /dev/null +++ b/CoreCms.Net.Repository/baifenbingfa/PuhuoShoukuanRepository.cs @@ -0,0 +1,280 @@ +/*********************************************************************** + * 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 + + } +} diff --git a/CoreCms.Net.Services/Stock/CoreCmsStockServices.cs b/CoreCms.Net.Services/Stock/CoreCmsStockServices.cs index fb7ded6..f051705 100644 --- a/CoreCms.Net.Services/Stock/CoreCmsStockServices.cs +++ b/CoreCms.Net.Services/Stock/CoreCmsStockServices.cs @@ -20,6 +20,7 @@ using CoreCms.Net.Model.FromBody; using CoreCms.Net.Model.ViewModels.Basics; using CoreCms.Net.Model.ViewModels.UI; +using Essensoft.Paylink.Alipay.Domain; using SqlSugar; @@ -47,9 +48,9 @@ /// </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 diff --git a/CoreCms.Net.Services/baifenbingfa/PuhuoServices.cs b/CoreCms.Net.Services/baifenbingfa/PuhuoServices.cs index ac6acc9..843c92c 100644 --- a/CoreCms.Net.Services/baifenbingfa/PuhuoServices.cs +++ b/CoreCms.Net.Services/baifenbingfa/PuhuoServices.cs @@ -139,10 +139,10 @@ /// <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 diff --git a/CoreCms.Net.Services/baifenbingfa/PuhuoShoukuanServices.cs b/CoreCms.Net.Services/baifenbingfa/PuhuoShoukuanServices.cs new file mode 100644 index 0000000..af3ecad --- /dev/null +++ b/CoreCms.Net.Services/baifenbingfa/PuhuoShoukuanServices.cs @@ -0,0 +1,130 @@ +/*********************************************************************** + * 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 + + } +} diff --git a/CoreCms.Net.Web.Admin/Controllers/Stock/CoreCmsStockController.cs b/CoreCms.Net.Web.Admin/Controllers/Stock/CoreCmsStockController.cs index efbbc3e..fb528b9 100644 --- a/CoreCms.Net.Web.Admin/Controllers/Stock/CoreCmsStockController.cs +++ b/CoreCms.Net.Web.Admin/Controllers/Stock/CoreCmsStockController.cs @@ -31,6 +31,9 @@ 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 { @@ -50,12 +53,16 @@ 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; @@ -63,6 +70,8 @@ _user = user; _stockLogServices = stockLogServices; _sysUserServices = sysUserServices; + _coreCmsDistributionServices = coreCmsDistributionServices; + _coreCmsAreaServices = coreCmsAreaServices; } #region 鑾峰彇鍒楄〃============================================================ @@ -199,10 +208,13 @@ 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; @@ -220,6 +232,8 @@ [Description("鍒涘缓鎻愪氦")] public async Task<AdminUiCallBack> DoCreate([FromBody] FMCreateStock entity) { + //杩斿洖鏁版嵁 + var jm = new AdminUiCallBack { code = 0 }; if (_user != null) { entity.model.manager = _user.ID; @@ -228,8 +242,30 @@ { 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 diff --git a/CoreCms.Net.Web.Admin/Controllers/baifenbingfa/PuhuoController.cs b/CoreCms.Net.Web.Admin/Controllers/baifenbingfa/PuhuoController.cs index a0ccdb2..da67438 100644 --- a/CoreCms.Net.Web.Admin/Controllers/baifenbingfa/PuhuoController.cs +++ b/CoreCms.Net.Web.Admin/Controllers/baifenbingfa/PuhuoController.cs @@ -42,6 +42,8 @@ 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 { @@ -66,6 +68,10 @@ 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> /// 鏋勯�犲嚱鏁� @@ -81,6 +87,10 @@ , IHttpContextUser user , ICoreCmsAreaServices areaServices , ICoreCmsGoodsCategoryServices goodsCategoryServices + , ICoreCmsStockRepository stockRepository + , ICoreCmsStockServices stockServices + , ICoreCmsStockLogServices stockLogServices + , IPuhuoShoukuanServices puhuoShoukuanServices ) { _webHostEnvironment = webHostEnvironment; @@ -94,6 +104,10 @@ _user = user; _areaServices = areaServices; _goodsCategoryServices = goodsCategoryServices; + _stockRepository = stockRepository; + _stockServices = stockServices; + _stockLogServices = stockLogServices; + _puhuoShoukuanServices = puhuoShoukuanServices; } @@ -321,13 +335,21 @@ { 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 @@ -832,7 +854,26 @@ 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; @@ -883,74 +924,187 @@ 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 @@ -1010,6 +1164,16 @@ { 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) //{ diff --git a/CoreCms.Net.Web.Admin/Controllers/baifenbingfa/PuhuoShoukuanController.cs b/CoreCms.Net.Web.Admin/Controllers/baifenbingfa/PuhuoShoukuanController.cs new file mode 100644 index 0000000..c3de4f2 --- /dev/null +++ b/CoreCms.Net.Web.Admin/Controllers/baifenbingfa/PuhuoShoukuanController.cs @@ -0,0 +1,1281 @@ +/*********************************************************************** + * 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); + } + //缁忛攢鍟唅d 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(); + //娣诲姞涓�涓猻heet + var mySheet = book.CreateSheet("Sheet1"); + //鑾峰彇list鏁版嵁 + var listModel = await _PuhuoShoukuanServices.QueryListByClauseAsync(p => entity.id.Contains(p.id), p => p.id, OrderByType.Asc, true); + //缁檚heet1娣诲姞绗竴琛岀殑澶撮儴鏍囬 + 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("缁忛攢鍟唅d"); + 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); + } + //缁忛攢鍟唅d 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(); + //娣诲姞涓�涓猻heet + var mySheet = book.CreateSheet("Sheet1"); + //鑾峰彇list鏁版嵁 + var listModel = await _PuhuoShoukuanServices.QueryListByClauseAsync(where, p => p.id, OrderByType.Asc, true); + //缁檚heet1娣诲姞绗竴琛岀殑澶撮儴鏍囬 + 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("缁忛攢鍟唅d"); + 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++; + + } + // 鍐欏叆鍒癳xcel + 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 + + + } +} diff --git a/CoreCms.Net.Web.Admin/wwwroot/views/baifenbingfa/puhuo/create.html b/CoreCms.Net.Web.Admin/wwwroot/views/baifenbingfa/puhuo/create.html index 23e5b53..3d7e8ae 100644 --- a/CoreCms.Net.Web.Admin/wwwroot/views/baifenbingfa/puhuo/create.html +++ b/CoreCms.Net.Web.Admin/wwwroot/views/baifenbingfa/puhuo/create.html @@ -217,7 +217,7 @@ 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 diff --git a/CoreCms.Net.Web.Admin/wwwroot/views/baifenbingfa/puhuo/details.html b/CoreCms.Net.Web.Admin/wwwroot/views/baifenbingfa/puhuo/details.html index c661d6c..8fd2ac1 100644 --- a/CoreCms.Net.Web.Admin/wwwroot/views/baifenbingfa/puhuo/details.html +++ b/CoreCms.Net.Web.Admin/wwwroot/views/baifenbingfa/puhuo/details.html @@ -7,11 +7,14 @@ <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%;"> 鍟嗗搧绫诲埆 @@ -42,6 +45,9 @@ {{ item.distributionName }} </td> <td> + {{ item.schoolName }} + </td> + <td> {{ item.categoryName }} </td> <td> diff --git a/CoreCms.Net.Web.Admin/wwwroot/views/baifenbingfa/puhuo/edit.html b/CoreCms.Net.Web.Admin/wwwroot/views/baifenbingfa/puhuo/edit.html index a707b6c..fa15f5e 100644 --- a/CoreCms.Net.Web.Admin/wwwroot/views/baifenbingfa/puhuo/edit.html +++ b/CoreCms.Net.Web.Admin/wwwroot/views/baifenbingfa/puhuo/edit.html @@ -86,7 +86,7 @@ <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> @@ -100,7 +100,7 @@ <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"> diff --git a/CoreCms.Net.Web.Admin/wwwroot/views/baifenbingfa/puhuo/editshoukuan.html b/CoreCms.Net.Web.Admin/wwwroot/views/baifenbingfa/puhuo/editshoukuan.html new file mode 100644 index 0000000..c7b7621 --- /dev/null +++ b/CoreCms.Net.Web.Admin/wwwroot/views/baifenbingfa/puhuo/editshoukuan.html @@ -0,0 +1,174 @@ +<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="璇疯緭鍏ヤ富閿甀D" lay-reqText="璇疯緭鍏ヤ富閿甀D骞朵负鏁板瓧" /> + </div> + </div>--> + <!--<div class="layui-form-item"> + <label for="distributionId" class="layui-form-label ">缁忛攢鍟唅d</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="璇疯緭鍏ョ粡閿�鍟唅d" lay-reqText="璇疯緭鍏ョ粡閿�鍟唅d骞朵负鏁板瓧" /> + </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="璇疯緭鍏ュ晢鍝佸垎绫籭d" lay-reqText="璇疯緭鍏ュ晢鍝佸垎绫籭d骞朵负鏁板瓧" /> + </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="璇疯緭鍏ュ晢鍝乮d" lay-reqText="璇疯緭鍏ュ晢鍝乮d骞朵负鏁板瓧" /> + </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="璇疯緭鍏ヨ揣鍝乮d" lay-reqText="璇疯緭鍏ヨ揣鍝乮d骞朵负鏁板瓧" /> + </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> diff --git a/CoreCms.Net.Web.Admin/wwwroot/views/baifenbingfa/puhuo/index.html b/CoreCms.Net.Web.Admin/wwwroot/views/baifenbingfa/puhuo/index.html index 9ce45d8..b392421 100644 --- a/CoreCms.Net.Web.Admin/wwwroot/views/baifenbingfa/puhuo/index.html +++ b/CoreCms.Net.Web.Admin/wwwroot/views/baifenbingfa/puhuo/index.html @@ -188,8 +188,10 @@ <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;"> @@ -255,20 +257,21 @@ /* { field: 'id', title: '涓婚敭ID', width: 60, sort: false},*/ { field: 'areaCodeName', title: '鍖哄煙鍚嶇О', sort: false, width: 165 }, /* { field: 'distributionId', title: '缁忛攢鍟唅d', 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 }, @@ -322,6 +325,10 @@ doEdit(obj) } else if (obj.event === 'edittui') { doEdittui(obj) + } else if (obj.event === 'editpandian') { + doEditpandian(obj) + } else if (obj.event === 'editshoukuan') { + doEditshoukuan(obj) } }); @@ -462,6 +469,102 @@ } }); } + + + + //鎵ц鐩樼偣鎿嶄綔 + 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) { diff --git a/CoreCms.Net.Web.Admin/wwwroot/views/baifenbingfa/puhuo/indexgroup.html b/CoreCms.Net.Web.Admin/wwwroot/views/baifenbingfa/puhuo/indexgroup.html index 462001a..be9f880 100644 --- a/CoreCms.Net.Web.Admin/wwwroot/views/baifenbingfa/puhuo/indexgroup.html +++ b/CoreCms.Net.Web.Admin/wwwroot/views/baifenbingfa/puhuo/indexgroup.html @@ -236,7 +236,7 @@ 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 },*/ @@ -245,25 +245,38 @@ /* { 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){ diff --git a/CoreCms.Net.Web.Admin/wwwroot/views/baifenbingfa/puhuoshoukuan/create.html b/CoreCms.Net.Web.Admin/wwwroot/views/baifenbingfa/puhuoshoukuan/create.html new file mode 100644 index 0000000..a09ed6e --- /dev/null +++ b/CoreCms.Net.Web.Admin/wwwroot/views/baifenbingfa/puhuoshoukuan/create.html @@ -0,0 +1,204 @@ +<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="璇疯緭鍏ヤ富閿甀D" lay-reqText="璇疯緭鍏ヤ富閿甀D骞朵负鏁板瓧" /> + </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="璇疯緭鍏ラ摵璐d" lay-reqText="璇疯緭鍏ラ摵璐d骞朵负鏁板瓧" /> + </div> + </div> + + <div class="layui-form-item"> + <label for="distributionId" class="layui-form-label layui-form-required">缁忛攢鍟唅d</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="璇疯緭鍏ョ粡閿�鍟唅d" lay-reqText="璇疯緭鍏ョ粡閿�鍟唅d骞朵负鏁板瓧" /> + </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="璇疯緭鍏ュ晢鍝佸垎绫籭d" lay-reqText="璇疯緭鍏ュ晢鍝佸垎绫籭d骞朵负鏁板瓧" /> + </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="璇疯緭鍏ュ晢鍝乮d" lay-reqText="璇疯緭鍏ュ晢鍝乮d骞朵负鏁板瓧" /> + </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="璇疯緭鍏ヨ揣鍝乮d" lay-reqText="璇疯緭鍏ヨ揣鍝乮d骞朵负鏁板瓧" /> + </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> diff --git a/CoreCms.Net.Web.Admin/wwwroot/views/baifenbingfa/puhuoshoukuan/details.html b/CoreCms.Net.Web.Admin/wwwroot/views/baifenbingfa/puhuoshoukuan/details.html new file mode 100644 index 0000000..b9e8efc --- /dev/null +++ b/CoreCms.Net.Web.Admin/wwwroot/views/baifenbingfa/puhuoshoukuan/details.html @@ -0,0 +1,234 @@ +<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">缁忛攢鍟唅d</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> \ No newline at end of file diff --git a/CoreCms.Net.Web.Admin/wwwroot/views/baifenbingfa/puhuoshoukuan/edit.html b/CoreCms.Net.Web.Admin/wwwroot/views/baifenbingfa/puhuoshoukuan/edit.html new file mode 100644 index 0000000..7fcdeef --- /dev/null +++ b/CoreCms.Net.Web.Admin/wwwroot/views/baifenbingfa/puhuoshoukuan/edit.html @@ -0,0 +1,202 @@ +<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="璇疯緭鍏ヤ富閿甀D" lay-reqText="璇疯緭鍏ヤ富閿甀D骞朵负鏁板瓧" /> + </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="璇疯緭鍏ラ摵璐d" lay-reqText="璇疯緭鍏ラ摵璐d骞朵负鏁板瓧" /> + </div> + </div> + + <div class="layui-form-item"> + <label for="distributionId" class="layui-form-label layui-form-required">缁忛攢鍟唅d</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="璇疯緭鍏ョ粡閿�鍟唅d" lay-reqText="璇疯緭鍏ョ粡閿�鍟唅d骞朵负鏁板瓧" /> + </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="璇疯緭鍏ュ晢鍝佸垎绫籭d" lay-reqText="璇疯緭鍏ュ晢鍝佸垎绫籭d骞朵负鏁板瓧" /> + </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="璇疯緭鍏ュ晢鍝乮d" lay-reqText="璇疯緭鍏ュ晢鍝乮d骞朵负鏁板瓧" /> + </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="璇疯緭鍏ヨ揣鍝乮d" lay-reqText="璇疯緭鍏ヨ揣鍝乮d骞朵负鏁板瓧" /> + </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> diff --git a/CoreCms.Net.Web.Admin/wwwroot/views/baifenbingfa/puhuoshoukuan/index.html b/CoreCms.Net.Web.Admin/wwwroot/views/baifenbingfa/puhuoshoukuan/index.html new file mode 100644 index 0000000..2faff99 --- /dev/null +++ b/CoreCms.Net.Web.Admin/wwwroot/views/baifenbingfa/puhuoshoukuan/index.html @@ -0,0 +1,623 @@ +<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="璇疯緭鍏ヤ富閿甀D" class="layui-input"> + </div> + </div> + <div class="layui-inline"> + <label class="layui-form-label" for="distributionId">缁忛攢鍟唅d</label> + <div class="layui-input-inline"> + <input type="text" name="distributionId" placeholder="璇疯緭鍏ョ粡閿�鍟唅d" 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="璇疯緭鍏ュ晢鍝佸垎绫籭d" 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="璇疯緭鍏ュ晢鍝乮d" 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="璇疯緭鍏ヨ揣鍝乮d" 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: '缁忛攢鍟唅d', 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> + diff --git a/CoreCms.Net.Web.Admin/wwwroot/views/content/stock/stocklog/index.html b/CoreCms.Net.Web.Admin/wwwroot/views/content/stock/stocklog/index.html index 21a6262..b0167ac 100644 --- a/CoreCms.Net.Web.Admin/wwwroot/views/content/stock/stocklog/index.html +++ b/CoreCms.Net.Web.Admin/wwwroot/views/content/stock/stocklog/index.html @@ -112,6 +112,7 @@ [ { 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 }, diff --git a/CoreCms.Net.Web.Admin/wwwroot/views/content/stock/stocks/create.html b/CoreCms.Net.Web.Admin/wwwroot/views/content/stock/stocks/create.html index f0dfb9d..605620a 100644 --- a/CoreCms.Net.Web.Admin/wwwroot/views/content/stock/stocks/create.html +++ b/CoreCms.Net.Web.Admin/wwwroot/views/content/stock/stocks/create.html @@ -12,15 +12,16 @@ <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"> @@ -31,6 +32,18 @@ </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"> @@ -38,7 +51,7 @@ <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> @@ -54,8 +67,8 @@ <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> @@ -79,7 +92,7 @@ <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> @@ -156,6 +169,20 @@ 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浣嶅瓧绗�'], @@ -165,4 +192,5 @@ form.render(null, 'LAY-app-CoreCmsStock-createForm'); }) }; + </script> diff --git a/CoreCms.Net.Web.Admin/wwwroot/views/content/stock/stocks/index.html b/CoreCms.Net.Web.Admin/wwwroot/views/content/stock/stocks/index.html index b8fc3e3..dc99936 100644 --- a/CoreCms.Net.Web.Admin/wwwroot/views/content/stock/stocks/index.html +++ b/CoreCms.Net.Web.Admin/wwwroot/views/content/stock/stocks/index.html @@ -209,6 +209,7 @@ model.id = field.id; model.type = field.type; model.memo = field.memo; + model.distributionId = field.distributionId; field.model = model; if (debug) { console.log(field); } //寮�鍚皟璇曡繑鍥炴暟鎹� diff --git a/CoreCms.Net.Web.Admin/wwwroot/views/layout.html b/CoreCms.Net.Web.Admin/wwwroot/views/layout.html index 4181eed..ce3c828 100644 --- a/CoreCms.Net.Web.Admin/wwwroot/views/layout.html +++ b/CoreCms.Net.Web.Admin/wwwroot/views/layout.html @@ -82,7 +82,7 @@ ,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> @@ -104,7 +104,7 @@ }} <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){ @@ -116,7 +116,7 @@ }} <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> -- Gitblit v1.9.1