mirror of
http://git.coreshop.cn/jianweie/coreshoppro.git
synced 2025-12-06 18:13:26 +08:00
Merge branch 'develop' into 'master'
Develop See merge request jianweie/coreshoppro!12
This commit is contained in:
@@ -43,7 +43,7 @@ namespace CoreCms.Net.Filter
|
||||
//处理各种异常
|
||||
var jm = new AdminUiCallBack();
|
||||
jm.code = (int)status;
|
||||
jm.msg = "系统异常,请查看错误描述并进行解决。";
|
||||
jm.msg = "系统异常:" + context.Exception.Message;
|
||||
jm.data = context.Exception;
|
||||
context.ExceptionHandled = true;
|
||||
context.Result = new ObjectResult(jm);
|
||||
|
||||
@@ -46,7 +46,7 @@ namespace CoreCms.Net.Filter
|
||||
{
|
||||
status = false,
|
||||
code = (int)status,
|
||||
msg = "系统返回异常,请联系管理员进行处理!",
|
||||
msg = "系统异常" + context.Exception.Message,
|
||||
data = context.Exception
|
||||
};
|
||||
context.ExceptionHandled = true;
|
||||
|
||||
@@ -33,11 +33,13 @@ namespace CoreCms.Net.IRepository
|
||||
/// <returns></returns>
|
||||
Task<AdminUiCallBack> InsertAsync(List<CoreCmsContinuousCheckInRules> entity);
|
||||
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 获取缓存的所有数据
|
||||
/// 获取的所有数据及子集
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
Task<List<CoreCmsContinuousCheckInRules>> GetCaChe();
|
||||
Task<List<CoreCmsContinuousCheckInRules>> GetDataWidthChild();
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -25,18 +25,6 @@ namespace CoreCms.Net.IRepository
|
||||
/// </summary>
|
||||
public interface ICoreCmsCumulativeCheckInRulesRepository : IBaseRepository<CoreCmsCumulativeCheckInRules>
|
||||
{
|
||||
/// <summary>
|
||||
/// 重写异步更新方法
|
||||
/// </summary>
|
||||
/// <param name="entity"></param>
|
||||
/// <returns></returns>
|
||||
Task<AdminUiCallBack> InsertAsync(List<CoreCmsCumulativeCheckInRules> entity);
|
||||
|
||||
/// <summary>
|
||||
/// 获取缓存的所有数据
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
Task<List<CoreCmsCumulativeCheckInRules>> GetCaChe();
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -32,11 +32,13 @@ namespace CoreCms.Net.IServices
|
||||
/// <returns></returns>
|
||||
Task<AdminUiCallBack> InsertAsync(List<CoreCmsContinuousCheckInRules> entity);
|
||||
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 获取缓存的所有数据
|
||||
/// 获取的所有数据及子集
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
Task<List<CoreCmsContinuousCheckInRules>> GetCaChe();
|
||||
Task<List<CoreCmsContinuousCheckInRules>> GetDataWidthChild();
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -24,17 +24,5 @@ namespace CoreCms.Net.IServices
|
||||
/// </summary>
|
||||
public interface ICoreCmsCumulativeCheckInRulesServices : IBaseServices<CoreCmsCumulativeCheckInRules>
|
||||
{
|
||||
/// <summary>
|
||||
/// 重写异步更新方法
|
||||
/// </summary>
|
||||
/// <param name="entity"></param>
|
||||
/// <returns></returns>
|
||||
Task<AdminUiCallBack> InsertAsync(List<CoreCmsCumulativeCheckInRules> entity);
|
||||
|
||||
/// <summary>
|
||||
/// 获取缓存的所有数据
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
Task<List<CoreCmsCumulativeCheckInRules>> GetCaChe();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -77,13 +77,13 @@ namespace CoreCms.Net.Repository
|
||||
days = item.days
|
||||
};
|
||||
|
||||
var id = await DbClient.Insertable(continuous).ExecuteReturnIdentityAsync();
|
||||
var id = await DbClient.Insertable(continuous).RemoveDataCache().ExecuteReturnIdentityAsync();
|
||||
if (id <= 0) continue;
|
||||
foreach (var detail in item.details)
|
||||
{
|
||||
detail.ruleId = id;
|
||||
}
|
||||
await DbClient.Insertable(item.details).ExecuteReturnIdentityAsync();
|
||||
await DbClient.Insertable(item.details).RemoveDataCache().ExecuteReturnIdentityAsync();
|
||||
}
|
||||
|
||||
_unitOfWork.CommitTran();
|
||||
@@ -103,13 +103,12 @@ namespace CoreCms.Net.Repository
|
||||
}
|
||||
|
||||
|
||||
#region 获取缓存的所有数据==========================================================
|
||||
|
||||
/// <summary>
|
||||
/// 获取缓存的所有数据
|
||||
/// 获取的所有数据及子集
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public async Task<List<CoreCmsContinuousCheckInRules>> GetCaChe()
|
||||
public async Task<List<CoreCmsContinuousCheckInRules>> GetDataWidthChild()
|
||||
{
|
||||
var list = await DbClient.Queryable<CoreCmsContinuousCheckInRules>()
|
||||
.Select(p => new CoreCmsContinuousCheckInRules
|
||||
@@ -123,53 +122,5 @@ namespace CoreCms.Net.Repository
|
||||
}
|
||||
|
||||
|
||||
#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<CoreCmsContinuousCheckInRules>> QueryPageAsync(Expression<Func<CoreCmsContinuousCheckInRules, bool>> predicate,
|
||||
Expression<Func<CoreCmsContinuousCheckInRules, object>> orderByExpression, OrderByType orderByType, int pageIndex = 1,
|
||||
int pageSize = 20, bool blUseNoLock = false)
|
||||
{
|
||||
RefAsync<int> totalCount = 0;
|
||||
List<CoreCmsContinuousCheckInRules> page;
|
||||
if (blUseNoLock)
|
||||
{
|
||||
page = await DbClient.Queryable<CoreCmsContinuousCheckInRules>()
|
||||
.OrderByIF(orderByExpression != null, orderByExpression, orderByType)
|
||||
.WhereIF(predicate != null, predicate).Select(p => new CoreCmsContinuousCheckInRules
|
||||
{
|
||||
id = p.id,
|
||||
days = p.days,
|
||||
|
||||
}).With(SqlWith.NoLock).ToPageListAsync(pageIndex, pageSize, totalCount);
|
||||
}
|
||||
else
|
||||
{
|
||||
page = await DbClient.Queryable<CoreCmsContinuousCheckInRules>()
|
||||
.OrderByIF(orderByExpression != null, orderByExpression, orderByType)
|
||||
.WhereIF(predicate != null, predicate).Select(p => new CoreCmsContinuousCheckInRules
|
||||
{
|
||||
id = p.id,
|
||||
days = p.days,
|
||||
|
||||
}).ToPageListAsync(pageIndex, pageSize, totalCount);
|
||||
}
|
||||
var list = new PageList<CoreCmsContinuousCheckInRules>(page, pageIndex, pageSize, totalCount);
|
||||
return list;
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -34,29 +34,5 @@ namespace CoreCms.Net.Repository
|
||||
_unitOfWork = unitOfWork;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 重写异步更新方法
|
||||
/// </summary>
|
||||
/// <param name="entity"></param>
|
||||
/// <returns></returns>
|
||||
public async Task<AdminUiCallBack> InsertAsync(List<CoreCmsCumulativeCheckInRules> entity)
|
||||
{
|
||||
var jm = new AdminUiCallBack();
|
||||
|
||||
var bl = await DbClient.Insertable(entity).ExecuteCommandAsync();
|
||||
jm.code = 0;
|
||||
jm.msg = GlobalConstVars.EditSuccess;
|
||||
return jm;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取缓存的所有数据
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public async Task<List<CoreCmsCumulativeCheckInRules>> GetCaChe()
|
||||
{
|
||||
return await DbClient.Queryable<CoreCmsCumulativeCheckInRules>().With(SqlWith.NoLock).WithCache().ToListAsync();
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -50,14 +50,17 @@ namespace CoreCms.Net.Services
|
||||
return await _dal.InsertAsync(entity);
|
||||
}
|
||||
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 获取缓存的所有数据
|
||||
/// 获取的所有数据及子集
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public async Task<List<CoreCmsContinuousCheckInRules>> GetCaChe()
|
||||
public async Task<List<CoreCmsContinuousCheckInRules>> GetDataWidthChild()
|
||||
{
|
||||
return await _dal.GetCaChe();
|
||||
return await _dal.GetDataWidthChild();
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -39,24 +39,5 @@ namespace CoreCms.Net.Services
|
||||
_unitOfWork = unitOfWork;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 重写异步插入方法
|
||||
/// </summary>
|
||||
/// <param name="entity">实体数据</param>
|
||||
/// <returns></returns>
|
||||
public async Task<AdminUiCallBack> InsertAsync(List<CoreCmsCumulativeCheckInRules> entity)
|
||||
{
|
||||
return await _dal.InsertAsync(entity);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取缓存的所有数据
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public async Task<List<CoreCmsCumulativeCheckInRules>> GetCaChe()
|
||||
{
|
||||
return await _dal.GetCaChe();
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -121,7 +121,7 @@ namespace CoreCms.Net.Services
|
||||
}
|
||||
|
||||
//判断累计签到次数是否满足
|
||||
var cumulativeCheckInRules = await _cumulativeCheckInRulesServices.GetCaChe();
|
||||
var cumulativeCheckInRules = await _cumulativeCheckInRulesServices.QueryAsync(true, true);
|
||||
//获取用户总签到次数(使用userCheckIn的签到次数统计也可以,但是查询实时数据最可靠。根据个人来)
|
||||
//var cumulativeCheckInCount = await _dal.GetCountAsync(p => p.userId == entity.userId);
|
||||
var cumulativeCheckInCount = userCheckIn.cumulativeCheckInCount;
|
||||
@@ -150,7 +150,7 @@ namespace CoreCms.Net.Services
|
||||
|
||||
|
||||
//判断连续签到次数是否满足
|
||||
var continuousCheckInRules = await _continuousCheckInRulesServices.GetCaChe();
|
||||
var continuousCheckInRules = await _continuousCheckInRulesServices.QueryAsync(true, true);
|
||||
//获取用户数据
|
||||
var user = await _userServices.QueryByIdAsync(entity.userId);
|
||||
//获取用户当前已经连续签到的次数
|
||||
|
||||
@@ -1,16 +1,19 @@
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Linq;
|
||||
using System.Text.Json.Nodes;
|
||||
using System.Threading.Tasks;
|
||||
using CoreCms.Net.Configuration;
|
||||
using CoreCms.Net.Filter;
|
||||
using CoreCms.Net.IServices;
|
||||
using CoreCms.Net.Model.Entities;
|
||||
using CoreCms.Net.Model.FromBody;
|
||||
using CoreCms.Net.Model.ViewModels.Basics;
|
||||
using CoreCms.Net.Model.ViewModels.UI;
|
||||
using CoreCms.Net.Utility.Helper;
|
||||
using Microsoft.AspNetCore.Authorization;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using SqlSugar;
|
||||
|
||||
namespace CoreCms.Net.Web.Admin.Controllers.Shop
|
||||
@@ -63,10 +66,38 @@ namespace CoreCms.Net.Web.Admin.Controllers.Shop
|
||||
var userGrade = await _coreCmsUserGradeServices.QueryAsync();
|
||||
|
||||
//连续签到规则
|
||||
var continuousCheckInRules = await _coreCmsContinuousCheckInRulesServices.GetCaChe();
|
||||
var continuousCheckInRules = await _coreCmsContinuousCheckInRulesServices.GetDataWidthChild();
|
||||
//制作新数据,防止出现
|
||||
|
||||
|
||||
JArray newDetails = new JArray();
|
||||
|
||||
if (continuousCheckInRules.Any())
|
||||
{
|
||||
foreach (var item in continuousCheckInRules)
|
||||
{
|
||||
JArray di = new JArray();
|
||||
var newUserGrand = userGrade;
|
||||
foreach (var itemGrade in newUserGrand)
|
||||
{
|
||||
JObject diItem = new JObject();
|
||||
diItem.Add("grand", JObject.FromObject(itemGrade));
|
||||
var details = item.details.Find(p => p.userGradeId == itemGrade.id);
|
||||
if (details != null)
|
||||
{
|
||||
diItem.Add("details", JObject.FromObject(details));
|
||||
}
|
||||
di.Add(diItem);
|
||||
}
|
||||
newDetails.Add(di);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
//累计签到规则
|
||||
var cumulativeCheckInRules = await _coreCmsCumulativeCheckInRulesServices.GetCaChe();
|
||||
var cumulativeCheckInRules = await _coreCmsCumulativeCheckInRulesServices.QueryAsync(true, true);
|
||||
|
||||
jm.data = new
|
||||
{
|
||||
@@ -74,6 +105,7 @@ namespace CoreCms.Net.Web.Admin.Controllers.Shop
|
||||
filesStorageOptionsType,
|
||||
userGrade,
|
||||
continuousCheckInRules,
|
||||
newDetails,
|
||||
cumulativeCheckInRules
|
||||
};
|
||||
|
||||
@@ -133,11 +165,12 @@ namespace CoreCms.Net.Web.Admin.Controllers.Shop
|
||||
}
|
||||
|
||||
//先清理掉数据,因为是配置数据,可直接删除添加新的
|
||||
var doEnpty = await _coreCmsCumulativeCheckInRulesServices.DeleteAsync(p => p.id > 0);
|
||||
var doEnpty = await _coreCmsCumulativeCheckInRulesServices.DeleteAsync(p => p.id > 0, true);
|
||||
|
||||
//插入新的数据
|
||||
var insertCount = await _coreCmsCumulativeCheckInRulesServices.InsertAsync(entity.entity, true);
|
||||
|
||||
|
||||
var insertCount = await _coreCmsCumulativeCheckInRulesServices.InsertAsync(entity.entity);
|
||||
jm.code = 0;
|
||||
jm.msg = "保存成功";
|
||||
return jm;
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
using Microsoft.AspNetCore.Http;
|
||||
using System;
|
||||
using Microsoft.AspNetCore.Http;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
using System.ComponentModel;
|
||||
using System.Linq;
|
||||
@@ -45,26 +46,37 @@ namespace CoreCms.Net.Web.Admin.Controllers.WeChat
|
||||
{
|
||||
var jm = new AdminUiCallBack();
|
||||
|
||||
|
||||
var accessToken = WeChatCacheAccessTokenHelper.GetWxOpenAccessToken();
|
||||
var client = _weChatApiHttpClientFactory.CreateWxOpenClient();
|
||||
var request = new ShopAccountGetInfoRequest();
|
||||
request.AccessToken = accessToken;
|
||||
|
||||
var response = await client.ExecuteShopAccountGetInfoAsync(request);
|
||||
|
||||
jm.code = response.IsSuccessful() ? 0 : 1;
|
||||
jm.msg = response.IsSuccessful() ? "获取成功" : response.ErrorMessage;
|
||||
jm.data = response.Data;
|
||||
|
||||
jm.otherData = new
|
||||
try
|
||||
{
|
||||
service_agent_type_service = response.Data.ServiceAgentTypeList?.Contains(0) == true ? 0 : -1,
|
||||
service_agent_type_phone = response.Data.ServiceAgentTypeList?.Contains(2) == true ? 0 : -1,
|
||||
service_agent_type_path = response.Data.ServiceAgentTypeList?.Contains(1) == true ? 0 : -1,
|
||||
};
|
||||
var accessToken = WeChatCacheAccessTokenHelper.GetWxOpenAccessToken();
|
||||
var client = _weChatApiHttpClientFactory.CreateWxOpenClient();
|
||||
var request = new ShopAccountGetInfoRequest();
|
||||
request.AccessToken = accessToken;
|
||||
|
||||
var response = await client.ExecuteShopAccountGetInfoAsync(request);
|
||||
|
||||
jm.code = response.IsSuccessful() ? 0 : 1;
|
||||
jm.msg = response.IsSuccessful() ? "获取成功" : response.ErrorMessage;
|
||||
jm.data = response.Data;
|
||||
|
||||
jm.otherData = new
|
||||
{
|
||||
service_agent_type_service = response.Data.ServiceAgentTypeList?.Contains(0) == true ? 0 : -1,
|
||||
service_agent_type_phone = response.Data.ServiceAgentTypeList?.Contains(2) == true ? 0 : -1,
|
||||
service_agent_type_path = response.Data.ServiceAgentTypeList?.Contains(1) == true ? 0 : -1,
|
||||
};
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
jm.code = 0;
|
||||
jm.msg = e.Message;
|
||||
jm.otherData = new
|
||||
{
|
||||
service_agent_type_service = -1,
|
||||
service_agent_type_phone = -1,
|
||||
service_agent_type_path = -1,
|
||||
};
|
||||
}
|
||||
|
||||
return jm;
|
||||
}
|
||||
|
||||
@@ -2784,7 +2784,7 @@
|
||||
促销表
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:CoreCms.Net.Web.Admin.Controllers.CoreCmsPromotionController.#ctor(Microsoft.AspNetCore.Hosting.IWebHostEnvironment,CoreCms.Net.IServices.ICoreCmsPromotionServices,CoreCms.Net.IServices.ICoreCmsPromotionConditionServices,CoreCms.Net.IServices.ICoreCmsPromotionResultServices,CoreCms.Net.IServices.ICoreCmsGoodsCategoryServices,CoreCms.Net.IServices.ICoreCmsBrandServices,CoreCms.Net.IServices.ICoreCmsUserGradeServices,CoreCms.Net.IServices.ICoreCmsPromotionConditionServices,CoreCms.Net.IServices.ICoreCmsPromotionResultServices,CoreCms.Net.IServices.ICoreCmsCouponServices,CoreCms.Net.IServices.ICoreCmsGoodsServices)">
|
||||
<member name="M:CoreCms.Net.Web.Admin.Controllers.CoreCmsPromotionController.#ctor(Microsoft.AspNetCore.Hosting.IWebHostEnvironment,CoreCms.Net.IServices.ICoreCmsPromotionServices,CoreCms.Net.IServices.ICoreCmsPromotionConditionServices,CoreCms.Net.IServices.ICoreCmsPromotionResultServices,CoreCms.Net.IServices.ICoreCmsGoodsCategoryServices,CoreCms.Net.IServices.ICoreCmsBrandServices,CoreCms.Net.IServices.ICoreCmsUserGradeServices,CoreCms.Net.IServices.ICoreCmsPromotionConditionServices,CoreCms.Net.IServices.ICoreCmsPromotionResultServices,CoreCms.Net.IServices.ICoreCmsCouponServices,CoreCms.Net.IServices.ICoreCmsGoodsServices,CoreCms.Net.IServices.ICoreCmsUserServices)">
|
||||
<summary>
|
||||
构造函数
|
||||
</summary>
|
||||
@@ -2828,6 +2828,20 @@
|
||||
<param name="entity"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:CoreCms.Net.Web.Admin.Controllers.CoreCmsPromotionController.GetGrant(CoreCms.Net.Model.FromBody.FMIntId)">
|
||||
<summary>
|
||||
分发优惠券
|
||||
</summary>
|
||||
<param name="entity"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:CoreCms.Net.Web.Admin.Controllers.CoreCmsPromotionController.DoGrant(CoreCms.Net.Model.FromBody.FMIntId)">
|
||||
<summary>
|
||||
分发优惠券提交
|
||||
</summary>
|
||||
<param name="entity"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:CoreCms.Net.Web.Admin.Controllers.CoreCmsPromotionController.DoDelete(CoreCms.Net.Model.FromBody.FMIntId)">
|
||||
<summary>
|
||||
单选删除
|
||||
@@ -3127,13 +3141,6 @@
|
||||
</summary>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:CoreCms.Net.Web.Admin.Controllers.CoreCmsUserServicesOrderController.DoSetisPay(CoreCms.Net.Model.FromBody.FMUpdateBoolDataByIntId)">
|
||||
<summary>
|
||||
设置是否支付
|
||||
</summary>
|
||||
<param name="entity"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:CoreCms.Net.Web.Admin.Controllers.CoreCmsUserServicesOrderController.GetTicketPageList(System.String)">
|
||||
<summary>
|
||||
获取核销码列表
|
||||
|
||||
@@ -1,2 +1,171 @@
|
||||
/** layuiAdmin.pro-v1.7.0 LPPL License */
|
||||
;layui.define(["laytpl","layer"],function(e){var t=layui.jquery,a=layui.laytpl,n=layui.layer,r=layui.setter,o=(layui.device(),layui.hint()),i=function(e){return new d(e)},s="LAY_app_body",d=function(e){this.id=e,this.container=t("#"+(e||s))};i.loading=function(e){e.append(this.elemLoad=t('<i class="layui-anim layui-anim-rotate layui-anim-loop layui-icon layui-icon-loading layadmin-loading"></i>'))},i.removeLoad=function(){this.elemLoad&&this.elemLoad.remove()},i.exit=function(){layui.data(r.tableName,{key:r.request.tokenName,remove:!0}),location.hash="/user/login"},i.req=function(e){var a=e.success,n=e.error,o=r.request,s=r.response,d=function(){return r.debug?"<br><cite>URL:</cite>"+e.url:""};if(e.data=e.data||{},e.headers=e.headers||{},o.tokenName){var l="string"==typeof e.data?JSON.parse(e.data):e.data;e.data[o.tokenName]=o.tokenName in l?e.data[o.tokenName]:layui.data(r.tableName)[o.tokenName]||"",e.headers[o.tokenName]=o.tokenName in e.headers?e.headers[o.tokenName]:layui.data(r.tableName)[o.tokenName]||""}return delete e.success,delete e.error,t.ajax(t.extend({type:"get",dataType:"json",success:function(t){var n=s.statusCode;if(t[s.statusName]==n.ok)"function"==typeof e.done&&e.done(t);else if(t[s.statusName]==n.logout)i.exit();else{var r=["<cite>Error:</cite> "+(t[s.msgName]||"返回状态码异常"),d()].join("");i.error(r)}"function"==typeof a&&a(t)},error:function(e,t){var a=["请求异常,请重试<br><cite>错误信息:</cite>"+t,d()].join("");i.error(a),"function"==typeof n&&n.apply(this,arguments)}},e))},i.popup=function(e){var a=e.success,r=e.skin;return delete e.success,delete e.skin,n.open(t.extend({type:1,title:"提示",content:"",id:"LAY-system-view-popup",skin:"layui-layer-admin"+(r?" "+r:""),shadeClose:!0,closeBtn:!1,success:function(e,r){var o=t('<i class="layui-icon" close>ဆ</i>');e.append(o),o.on("click",function(){n.close(r)}),"function"==typeof a&&a.apply(this,arguments)}},e))},i.error=function(e,a){return i.popup(t.extend({content:e,maxWidth:300,offset:"t",anim:6,id:"LAY_adminError"},a))},d.prototype.render=function(e,a){var n=this;layui.router();return e=r.views+e+r.engine,t("#"+s).children(".layadmin-loading").remove(),i.loading(n.container),t.ajax({url:e,type:"get",dataType:"html",data:{v:layui.cache.version},success:function(e){e="<div>"+e+"</div>";var r=t(e).find("title"),o=r.text()||(e.match(/\<title\>([\s\S]*)\<\/title>/)||[])[1],s={title:o,body:e};r.remove(),n.params=a||{},n.then&&(n.then(s),delete n.then),n.parse(e),i.removeLoad(),n.done&&(n.done(s),delete n.done)},error:function(e){return i.removeLoad(),n.render.isError?i.error("请求视图文件异常,状态:"+e.status):(404===e.status?n.render("template/tips/404"):n.render("template/tips/error"),void(n.render.isError=!0))}}),n},d.prototype.parse=function(e,n,r){var s=this,d="object"==typeof e,l=d?e:t(e),u=d?e:l.find("*[template]"),c=function(e){var n=a(e.dataElem.html()),o=t.extend({params:y.params},e.res);e.dataElem.after(n.render(o)),"function"==typeof r&&r();try{e.done&&new Function("d",e.done)(o)}catch(i){console.error(e.dataElem[0],"\n存在错误回调脚本\n\n",i)}},y=layui.router();l.find("title").remove(),s.container[n?"after":"html"](l.children()),y.params=s.params||{};for(var p=u.length;p>0;p--)!function(){var e=u.eq(p-1),t=e.attr("lay-done")||e.attr("lay-then"),n=a(e.attr("lay-url")||"").render(y),r=a(e.attr("lay-data")||"").render(y),s=a(e.attr("lay-headers")||"").render(y);try{r=new Function("return "+r+";")()}catch(d){o.error("lay-data: "+d.message),r={}}try{s=new Function("return "+s+";")()}catch(d){o.error("lay-headers: "+d.message),s=s||{}}n?i.req({type:e.attr("lay-type")||"get",url:n,data:r,dataType:"json",headers:s,success:function(a){c({dataElem:e,res:a,done:t})}}):c({dataElem:e,done:t})}();return s},d.prototype.send=function(e,t){var n=a(e||this.container.html()).render(t||{});return this.container.html(n),this},d.prototype.refresh=function(e){var t=this,a=t.container.next(),n=a.attr("lay-templateid");return t.id!=n?t:(t.parse(t.container,"refresh",function(){t.container.siblings('[lay-templateid="'+t.id+'"]:last').remove(),"function"==typeof e&&e()}),t)},d.prototype.then=function(e){return this.then=e,this},d.prototype.done=function(e){return this.done=e,this},e("view",i)});
|
||||
;
|
||||
layui.define(["laytpl", "layer"], function (e) {
|
||||
var t = layui.jquery,
|
||||
a = layui.laytpl,
|
||||
n = layui.layer,
|
||||
r = layui.setter,
|
||||
o = (layui.device(), layui.hint()),
|
||||
i = function (e) {
|
||||
return new d(e)
|
||||
}, s = "LAY_app_body",
|
||||
d = function (e) {
|
||||
this.id = e, this.container = t("#" + (e || s))
|
||||
};
|
||||
i.loading = function (e) {
|
||||
e.append(this.elemLoad = t('<i class="layui-anim layui-anim-rotate layui-anim-loop layui-icon layui-icon-loading layadmin-loading"></i>'))
|
||||
}, i.removeLoad = function () {
|
||||
this.elemLoad && this.elemLoad.remove()
|
||||
}, i.exit = function () {
|
||||
layui.data(r.tableName, {
|
||||
key: r.request.tokenName,
|
||||
remove: !0
|
||||
}), location.hash = "/user/login"
|
||||
}, i.req = function (e) {
|
||||
var a = e.success,
|
||||
n = e.error,
|
||||
o = r.request,
|
||||
s = r.response,
|
||||
d = function () {
|
||||
return r.debug ? "<br><cite>URL:</cite>" + e.url : ""
|
||||
};
|
||||
if (e.data = e.data || {}, e.headers = e.headers || {}, o.tokenName) {
|
||||
var l = "string" == typeof e.data ? JSON.parse(e.data) : e.data;
|
||||
e.data[o.tokenName] = o.tokenName in l ? e.data[o.tokenName] : layui.data(r.tableName)[o.tokenName] || "", e.headers[o.tokenName] = o.tokenName in e.headers ? e.headers[o.tokenName] : layui.data(r.tableName)[o.tokenName] || ""
|
||||
}
|
||||
return delete e.success, delete e.error, t.ajax(t.extend({
|
||||
type: "get",
|
||||
dataType: "json",
|
||||
success: function (t) {
|
||||
var n = s.statusCode;
|
||||
if (t[s.statusName] == n.ok) "function" == typeof e.done && e.done(t);
|
||||
else if (t[s.statusName] == n.logout) i.exit();
|
||||
else {
|
||||
var r = ["<cite>Error:</cite> " + (t[s.msgName] || "返回状态码异常"), d()].join("<br>");
|
||||
i.error(r)
|
||||
}
|
||||
"function" == typeof a && a(t)
|
||||
},
|
||||
error: function (e, t) {
|
||||
var a = ["请求异常,请重试<br><cite>错误信息:</cite>" + t, d()].join("");
|
||||
i.error(a), "function" == typeof n && n.apply(this, arguments)
|
||||
}
|
||||
}, e))
|
||||
}, i.popup = function (e) {
|
||||
var a = e.success,
|
||||
r = e.skin;
|
||||
return delete e.success, delete e.skin, n.open(t.extend({
|
||||
type: 0,
|
||||
title: "提示",
|
||||
content: "",
|
||||
id: "LAY-system-view-popup",
|
||||
skin: "layui-layer-admin" + (r ? " " + r : ""),
|
||||
shadeClose: !0,
|
||||
closeBtn: !1,
|
||||
success: function (e, r) {
|
||||
var o = t('<i class="layui-icon" close>ဆ</i>');
|
||||
e.append(o), o.on("click", function () {
|
||||
n.close(r)
|
||||
}), "function" == typeof a && a.apply(this, arguments)
|
||||
}
|
||||
}, e))
|
||||
}, i.error = function (e, a) {
|
||||
return i.popup(t.extend({
|
||||
content: e,
|
||||
maxWidth: 500,
|
||||
offset: "auto",
|
||||
anim: 6,
|
||||
id: "LAY_adminError"
|
||||
}, a))
|
||||
}, d.prototype.render = function (e, a) {
|
||||
var n = this;
|
||||
layui.router();
|
||||
return e = r.views + e + r.engine, t("#" + s).children(".layadmin-loading").remove(), i.loading(n.container), t.ajax({
|
||||
url: e,
|
||||
type: "get",
|
||||
dataType: "html",
|
||||
data: {
|
||||
v: layui.cache.version
|
||||
},
|
||||
success: function (e) {
|
||||
e = "<div>" + e + "</div>";
|
||||
var r = t(e).find("title"),
|
||||
o = r.text() || (e.match(/\<title\>([\s\S]*)\<\/title>/) || [])[1],
|
||||
s = {
|
||||
title: o,
|
||||
body: e
|
||||
};
|
||||
r.remove(), n.params = a || {}, n.then && (n.then(s), delete n.then), n.parse(e), i.removeLoad(), n.done && (n.done(s), delete n.done)
|
||||
},
|
||||
error: function (e) {
|
||||
return i.removeLoad(), n.render.isError ? i.error("请求视图文件异常,状态:" + e.status) : (404 === e.status ? n.render("template/tips/404") : n.render("template/tips/error"), void (n.render.isError = !0))
|
||||
}
|
||||
}), n
|
||||
}, d.prototype.parse = function (e, n, r) {
|
||||
var s = this,
|
||||
d = "object" == typeof e,
|
||||
l = d ? e : t(e),
|
||||
u = d ? e : l.find("*[template]"),
|
||||
c = function (e) {
|
||||
var n = a(e.dataElem.html()),
|
||||
o = t.extend({
|
||||
params: y.params
|
||||
}, e.res);
|
||||
e.dataElem.after(n.render(o)), "function" == typeof r && r();
|
||||
try {
|
||||
e.done && new Function("d", e.done)(o)
|
||||
} catch (i) {
|
||||
console.error(e.dataElem[0], "\n存在错误回调脚本\n\n", i)
|
||||
}
|
||||
}, y = layui.router();
|
||||
l.find("title").remove(), s.container[n ? "after" : "html"](l.children()), y.params = s.params || {};
|
||||
for (var p = u.length; p > 0; p--)! function () {
|
||||
var e = u.eq(p - 1),
|
||||
t = e.attr("lay-done") || e.attr("lay-then"),
|
||||
n = a(e.attr("lay-url") || "").render(y),
|
||||
r = a(e.attr("lay-data") || "").render(y),
|
||||
s = a(e.attr("lay-headers") || "").render(y);
|
||||
try {
|
||||
r = new Function("return " + r + ";")()
|
||||
} catch (d) {
|
||||
o.error("lay-data: " + d.message), r = {}
|
||||
}
|
||||
try {
|
||||
s = new Function("return " + s + ";")()
|
||||
} catch (d) {
|
||||
o.error("lay-headers: " + d.message), s = s || {}
|
||||
}
|
||||
n ? i.req({
|
||||
type: e.attr("lay-type") || "get",
|
||||
url: n,
|
||||
data: r,
|
||||
dataType: "json",
|
||||
headers: s,
|
||||
success: function (a) {
|
||||
c({
|
||||
dataElem: e,
|
||||
res: a,
|
||||
done: t
|
||||
})
|
||||
}
|
||||
}) : c({
|
||||
dataElem: e,
|
||||
done: t
|
||||
})
|
||||
}();
|
||||
return s
|
||||
}, d.prototype.send = function (e, t) {
|
||||
var n = a(e || this.container.html()).render(t || {});
|
||||
return this.container.html(n), this
|
||||
}, d.prototype.refresh = function (e) {
|
||||
var t = this,
|
||||
a = t.container.next(),
|
||||
n = a.attr("lay-templateid");
|
||||
return t.id != n ? t : (t.parse(t.container, "refresh", function () {
|
||||
t.container.siblings('[lay-templateid="' + t.id + '"]:last').remove(), "function" == typeof e && e()
|
||||
}), t)
|
||||
}, d.prototype.then = function (e) {
|
||||
return this.then = e, this
|
||||
}, d.prototype.done = function (e) {
|
||||
return this.done = e, this
|
||||
}, e("view", i)
|
||||
});
|
||||
277
CoreCms.Net.Web.Admin/wwwroot/views/good/servicegoods/edit.html
Normal file
277
CoreCms.Net.Web.Admin/wwwroot/views/good/servicegoods/edit.html
Normal file
@@ -0,0 +1,277 @@
|
||||
<script type="text/html" template lay-done="layui.data.sendParams(d);">
|
||||
<div class="layui-form coreshop-form layui-form-pane" lay-filter="LAY-app-CoreCmsServices-editForm" id="LAY-app-CoreCmsServices-editForm">
|
||||
<input type="hidden" name="id" value="{{d.params.data.model.id || '' }}" />
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label for="title" class="layui-form-label layui-form-required">项目名称</label>
|
||||
<div class="layui-input-block">
|
||||
<input name="title" lay-verify="required|verifytitle" value="{{d.params.data.model.title || '' }}" class="layui-input" lay-reqText="请输入项目名称" placeholder="请输入项目名称" />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label for="description" class="layui-form-label layui-form-required">售价</label>
|
||||
<div class="layui-input-inline layui-inline-2">
|
||||
<input name="money" lay-verify="required|money" value="{{d.params.data.model.money || '' }}" class="layui-input" placeholder="请输入售价" lay-reqText="请输入售价" />
|
||||
</div>
|
||||
<label for="thumbnail" class="layui-form-label layui-form-required">项目缩略图</label>
|
||||
<div class="layui-input-inline layui-inline-8">
|
||||
<input name="thumbnail" id="thumbnailInput" lay-verify="required" value="{{d.params.data.model.thumbnail || '' }}" class="layui-input" placeholder="请上传项目缩略图" lay-reqText="请上传项目缩略图" />
|
||||
</div>
|
||||
<div class="layui-input-inline">
|
||||
<img class="coreshop-upload-img" id="viewImgBoxthumbnail" src="{{d.params.data.model.thumbnail || layui.setter.noImagePicUrl }}">
|
||||
<button type="button" class="layui-btn" id="upBtnthumbnail" lay-active="doCropperImg">上传图片</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label for="description" class="layui-form-label layui-form-required">一句话概述</label>
|
||||
<div class="layui-input-block">
|
||||
<input name="description" lay-verify="required|verifydescription" class="layui-input" lay-reqText="请输入项目概述" placeholder="请输入项目概述" value="{{d.params.data.model.description || '' }}" />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label for="allowedMembership" class="layui-form-label layui-form-required">允许会员</label>
|
||||
<div class="layui-input-block">
|
||||
<div id="selectBox" class="xm-select-demo"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label for="consumableStore" class="layui-form-label layui-form-required">核销门店</label>
|
||||
<div class="layui-input-block">
|
||||
<div id="selectStoreBox" class="xm-select-demo"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label for="status" class="layui-form-label layui-form-required">项目状态</label>
|
||||
<div class="layui-input-inline">
|
||||
<select name="status">
|
||||
{{# layui.each(d.params.data.status, function(index, item){ }}
|
||||
<option value="{{ item.value }}" {{ d.params.data.model.status==item.value ? 'selected="selected"' : '' }}>{{ item.description }}</option>
|
||||
{{# }); }}
|
||||
</select>
|
||||
</div>
|
||||
<label for="maxBuyNumber" class="layui-form-label layui-form-required">重复购买数</label>
|
||||
<div class="layui-input-inline layui-inline-2">
|
||||
<input type="number" min="0" max="999999" name="maxBuyNumber" lay-verify="required|number" class="layui-input" value="{{d.params.data.model.maxBuyNumber}}" placeholder="请输入项目重复购买次数" lay-reqText="请输入项目重复购买次数并为数字" />
|
||||
</div>
|
||||
<div class="layui-form-mid">0为不限制</div>
|
||||
<label for="amount" class="layui-form-label layui-form-required">可销售数量</label>
|
||||
<div class="layui-input-inline layui-inline-2">
|
||||
<input type="number" min="0" max="999999" name="amount" lay-verify="required|number" class="layui-input" value="{{d.params.data.model.amount }}" placeholder="请输入项目可销售数量" lay-reqText="请输入项目可销售数量并为数字" />
|
||||
</div>
|
||||
<div class="layui-form-mid">销售完售罄状态</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label for="startTime" class="layui-form-label layui-form-required">可购买时间</label>
|
||||
<div class="layui-input-inline">
|
||||
<input name="startTime" id="editTime-CoreCmsServices-startTime" type="text" lay-verify="required|datetime" class="layui-input" placeholder="请输入项目开始时间" lay-reqText="请输入项目开始时间" value="{{d.params.data.model.startTime }}" />
|
||||
</div>
|
||||
<div class="layui-form-mid">至</div>
|
||||
<div class="layui-input-inline">
|
||||
<input name="endTime" id="editTime-CoreCmsServices-endTime" type="text" lay-verify="required|datetime" class="layui-input" placeholder="请输入项目截止时间" lay-reqText="请输入项目截止时间" value="{{d.params.data.model.endTime }}" />
|
||||
</div>
|
||||
<div class="layui-form-mid">在此时间段内,前端才能进行显示并购买</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label for="validityType" class="layui-form-label layui-form-required">有效期类型</label>
|
||||
<div class="layui-input-inline">
|
||||
|
||||
<select name="validityType" id="validityType" lay-verify="required" lay-verify="required|number" lay-reqText="请选择核销有效期类型" lay-filter="validityTypeChange">
|
||||
{{# layui.each(d.params.data.types, function(index, item){ }}
|
||||
<option value="{{ item.value }}" {{ d.params.data.model.validityType==item.value ? 'selected="selected"' : '' }}>{{ item.description }}</option>
|
||||
{{# }); }}
|
||||
</select>
|
||||
</div>
|
||||
<div class="layui-form-mid">不限:购买后不限制核销服务券时间,限时间段:只能在允许的时间段内进行服务券的核销消费。</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item" style="display: none;" id="validityBox">
|
||||
<label for="validityStartTime" class="layui-form-label">核销时间段</label>
|
||||
<div class="layui-input-inline">
|
||||
<input name="validityStartTime" id="editTime-CoreCmsServices-validityStartTime" type="text" class="layui-input" placeholder="请输入核销开始时间" lay-reqText="请输入核销开始时间" value="{{d.params.data.model.validityStartTime || '' }}" />
|
||||
</div>
|
||||
<div class="layui-form-mid">至</div>
|
||||
<div class="layui-input-inline">
|
||||
<input name="validityEndTime" id="editTime-CoreCmsServices-validityEndTime" type="text" class="layui-input" placeholder="请输入核销结束时间" lay-reqText="请输入核销结束时间" value="{{d.params.data.model.validityEndTime || '' }}" />
|
||||
</div>
|
||||
<button type="button" class="layui-btn" lay-active="e1">三月内</button>
|
||||
<button type="button" class="layui-btn" lay-active="e2">半年内</button>
|
||||
<button type="button" class="layui-btn" lay-active="e3">一年内</button>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label for="ticketNumber" class="layui-form-label layui-form-required">服务券数量</label>
|
||||
<div class="layui-input-inline layui-inline-2">
|
||||
<input type="number" min="0" max="999999" name="ticketNumber" lay-verify="required|number" class="layui-input" value="{{d.params.data.model.ticketNumber || '' }}" placeholder="请输入核销服务券数量" lay-reqText="请输入核销服务券数量并为数字" />
|
||||
</div>
|
||||
<div class="layui-form-mid">购买服务项目后,将按照此数量发送服务券。到店使用服务券上的核销码进行核销消费</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item layui-form-text">
|
||||
<label for="contentBody" class="layui-form-label layui-form-required">详细说明</label>
|
||||
<div class="layui-input-block">
|
||||
<div class="document-editor">
|
||||
<div class="toolbar-container" id="toolbar-container"></div>
|
||||
<div class="content-container">
|
||||
<div id="editor"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item text-right core-hidden">
|
||||
<input type="button" class="layui-btn" lay-submit lay-filter="LAY-app-CoreCmsServices-editForm-submit" id="LAY-app-CoreCmsServices-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', 'coreHelper', 'cropperImg', 'xmSelect', 'util'],
|
||||
function () {
|
||||
var $ = layui.$
|
||||
, form = layui.form
|
||||
, admin = layui.admin
|
||||
, laydate = layui.laydate
|
||||
, cropperImg = layui.cropperImg
|
||||
, xmSelect = layui.xmSelect
|
||||
, util = layui.util
|
||||
, coreHelper = layui.coreHelper;
|
||||
|
||||
if (d.params.data.model.validityType == 2) {
|
||||
$('#validityBox').show();
|
||||
}
|
||||
|
||||
let dataStrArr = d.params.data.model.allowedMembership.split(","); //分割成字符串数组
|
||||
let dataIntArr = [];//保存转换后的整型字符串
|
||||
dataStrArr.forEach(item => {
|
||||
dataIntArr.push(+item);
|
||||
});
|
||||
|
||||
var selectBox = xmSelect.render({
|
||||
el: '#selectBox',
|
||||
tips: '请选择用户级别?',
|
||||
name: 'allowedMembership',
|
||||
layVerify: 'required',
|
||||
prop: {
|
||||
name: 'title',
|
||||
value: 'id',
|
||||
},
|
||||
data: d.params.data.userGrade,
|
||||
initValue: dataIntArr
|
||||
})
|
||||
|
||||
let dataStoreStrArr = d.params.data.model.consumableStore.split(","); //分割成字符串数组
|
||||
let dataStoreIntArr = [];//保存转换后的整型字符串
|
||||
dataStoreStrArr.forEach(item => {
|
||||
dataStoreIntArr.push(+item);
|
||||
});
|
||||
var selectStoreBox = xmSelect.render({
|
||||
el: '#selectStoreBox',
|
||||
tips: '请选择核销门店?',
|
||||
name: 'consumableStore',
|
||||
layVerify: 'required',
|
||||
prop: {
|
||||
name: 'storeName',
|
||||
value: 'id',
|
||||
},
|
||||
data: d.params.data.stores,
|
||||
initValue: dataStoreIntArr
|
||||
})
|
||||
|
||||
//加载编辑器
|
||||
var Authorization = layui.data(layui.setter.tableName)[layui.setter.request.tokenName];
|
||||
editor = CKEDITOR.replace('editor', {
|
||||
fileTools_requestHeaders: {
|
||||
'Authorization': Authorization
|
||||
}
|
||||
});
|
||||
editor.setData(d.params.data.model.contentBody);
|
||||
|
||||
//项目缩略图图片上传
|
||||
$('#upBtnthumbnail').click(function () {
|
||||
cropperImg.cropImg({
|
||||
aspectRatio: 1 / 1,
|
||||
imgSrc: $('#viewImgBoxthumbnail').attr('src'),
|
||||
onCrop: function (data) {
|
||||
var loadIndex = layer.load(2);
|
||||
coreHelper.Post("api/Tools/UploadFilesFByBase64", { base64: data }, function (res) {
|
||||
if (0 === res.code) {
|
||||
$('#viewImgBoxthumbnail').attr('src', res.data.fileUrl);
|
||||
$("#thumbnailInput").val(res.data.fileUrl);
|
||||
layer.msg(res.msg);
|
||||
layer.close(loadIndex);
|
||||
} else {
|
||||
layer.close(loadIndex);
|
||||
layer.msg(res.msg, { icon: 2, anim: 6 });
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
laydate.render({
|
||||
elem: '#editTime-CoreCmsServices-startTime',
|
||||
type: 'datetime'
|
||||
});
|
||||
laydate.render({
|
||||
elem: '#editTime-CoreCmsServices-endTime',
|
||||
type: 'datetime'
|
||||
});
|
||||
laydate.render({
|
||||
elem: '#editTime-CoreCmsServices-validityStartTime',
|
||||
type: 'datetime'
|
||||
});
|
||||
laydate.render({
|
||||
elem: '#editTime-CoreCmsServices-validityEndTime',
|
||||
type: 'datetime'
|
||||
});
|
||||
|
||||
form.verify({
|
||||
money: [/((^[1-9]\d*)|^0)(\.\d{0,2}){0,1}$/, '请输入金额'],
|
||||
verifytitle: [/^[\S]{0,50}$/, '项目名称最大只允许输入50位字符,且不能出现空格'],
|
||||
verifythumbnail: [/^[\S]{0,255}$/, '项目缩略图最大只允许输入255位字符,且不能出现空格'],
|
||||
verifydescription: [/^[\S]{0,255}$/, '项目概述最大只允许输入255位字符,且不能出现空格'],
|
||||
verifyallowedMembership: [/^[\S]{0,50}$/, '允许购买会员级别最大只允许输入50位字符,且不能出现空格'],
|
||||
});
|
||||
|
||||
form.on('select(validityTypeChange)', function (data) {
|
||||
console.log(data.value);
|
||||
if (data.value == 2) {
|
||||
$('#validityBox').show();
|
||||
} else {
|
||||
$('#validityBox').hide();
|
||||
$('#editTime-CoreCmsServices-validityStartTime').val("");
|
||||
$('#editTime-CoreCmsServices-validityEndTime').val("");
|
||||
}
|
||||
});
|
||||
|
||||
//处理属性 为 lay-active 的所有元素事件
|
||||
util.event('lay-active', {
|
||||
e1: function () {
|
||||
$('#editTime-CoreCmsServices-validityStartTime').val(layui.util.toDateString(new Date(), 'yyyy-MM-dd 00:00:00'));
|
||||
$('#editTime-CoreCmsServices-validityEndTime').val(layui.util.toDateString((new Date()).setMonth((new Date()).getMonth() + 3), 'yyyy-MM-dd 00:00:00'));
|
||||
}
|
||||
, e2: function () {
|
||||
$('#editTime-CoreCmsServices-validityStartTime').val(layui.util.toDateString(new Date(), 'yyyy-MM-dd 00:00:00'));
|
||||
$('#editTime-CoreCmsServices-validityEndTime').val(layui.util.toDateString((new Date()).setMonth((new Date()).getMonth() + 6), 'yyyy-MM-dd 00:00:00'));
|
||||
}
|
||||
, e3: function () {
|
||||
$('#editTime-CoreCmsServices-validityStartTime').val(layui.util.toDateString(new Date(), 'yyyy-MM-dd 00:00:00'));
|
||||
$('#editTime-CoreCmsServices-validityEndTime').val(layui.util.toDateString((new Date()).setFullYear((new Date()).getFullYear() + 1), 'yyyy-MM-dd 00:00:00'));
|
||||
}
|
||||
});
|
||||
|
||||
//重载form
|
||||
form.render(null, 'LAY-app-CoreCmsServices-editForm');
|
||||
})
|
||||
};
|
||||
</script>
|
||||
@@ -1,4 +1,4 @@
|
||||
<title>服务购买表</title>
|
||||
<title>服务项目表</title>
|
||||
<!--当前位置开始-->
|
||||
<div class="layui-card layadmin-header">
|
||||
<div class="layui-breadcrumb" lay-filter="breadcrumb">
|
||||
@@ -10,98 +10,70 @@
|
||||
<style>
|
||||
/* 重写样式 */
|
||||
</style>
|
||||
<script type="text/html" template lay-type="Post" lay-url="{{ layui.setter.apiUrl }}Api/CoreCmsUserServicesOrder/GetIndex" lay-done="layui.data.done(d);">
|
||||
|
||||
<script type="text/html" template lay-type="Post" lay-url="{{ layui.setter.apiUrl }}Api/CoreCmsServices/GetIndex" lay-done="layui.data.done(d);">
|
||||
</script>
|
||||
<div class="table-body">
|
||||
<table id="LAY-app-CoreCmsUserServicesOrder-tableBox" lay-filter="LAY-app-CoreCmsUserServicesOrder-tableBox"></table>
|
||||
<table id="LAY-app-CoreCmsServices-tableBox" lay-filter="LAY-app-CoreCmsServices-tableBox"></table>
|
||||
</div>
|
||||
|
||||
<script type="text/html" id="LAY-app-CoreCmsUserServicesOrder-toolbar">
|
||||
<script type="text/html" id="LAY-app-CoreCmsServices-toolbar">
|
||||
<div class="layui-form coreshop-toolbar-search-form">
|
||||
<div class="layui-form-item">
|
||||
<div class="layui-inline">
|
||||
<div class="layui-input-inline">
|
||||
<input type="text" name="serviceOrderId" placeholder="请输入服务订单编号" class="layui-input">
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-inline">
|
||||
<div class="layui-input-inline">
|
||||
<input type="text" name="userId" placeholder="请输入关联用户" class="layui-input">
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-inline">
|
||||
<div class="layui-input-inline">
|
||||
<input type="text" name="servicesId" placeholder="请输入关联服务" class="layui-input">
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-inline">
|
||||
<div class="layui-input-inline">
|
||||
<select name="isPay">
|
||||
<option value="">请选择是否支付</option>
|
||||
<option value="True">是</option>
|
||||
<option value="False">否</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-inline">
|
||||
<div class="layui-input-inline">
|
||||
<input type="text" name="paymentId" placeholder="请输入支付单号" class="layui-input">
|
||||
<input type="text" name="title" placeholder="请输入项目名称" class="layui-input">
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-inline">
|
||||
<div class="layui-input-inline">
|
||||
<select name="status">
|
||||
<option value="">请选择状态</option>
|
||||
{{# layui.each(indexData.serviceOrderStatus, function(index, item){ }}
|
||||
<option value="{{ item.value }}">{{ item.title }}</option>
|
||||
<option value="">请选择项目状态</option>
|
||||
{{# layui.each(indexData.status, function(index, item){ }}
|
||||
<option value="{{ item.value }}">{{ item.description }}</option>
|
||||
{{# }); }}
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-inline">
|
||||
<div class="layui-input-inline" style="width: 260px;">
|
||||
<input type="text" name="payTime" id="searchTime-CoreCmsUserServicesOrder-payTime" placeholder="请输入支付时间" class="layui-input">
|
||||
<div class="layui-input-inline">
|
||||
<select name="validityType">
|
||||
<option value="">请选择核销类型</option>
|
||||
{{# layui.each(indexData.types, function(index, item){ }}
|
||||
<option value="{{ item.value }}">{{ item.description }}</option>
|
||||
{{# }); }}
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-inline">
|
||||
<div class="layui-input-inline" style="width: 260px;">
|
||||
<input type="text" name="createTime" id="searchTime-CoreCmsUserServicesOrder-createTime" placeholder="请输入订单创建时间" class="layui-input">
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-inline">
|
||||
<div class="layui-input-inline" style="width: 260px;">
|
||||
<input type="text" name="servicesEndTime" id="searchTime-CoreCmsUserServicesOrder-servicesEndTime" placeholder="请输入截止服务时间" class="layui-input">
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-inline">
|
||||
<button class="layui-btn layui-btn-sm" lay-submit lay-filter="LAY-app-CoreCmsUserServicesOrder-search"><i class="layui-icon layui-icon-search"></i>筛选</button>
|
||||
<button class="layui-btn layui-btn-sm" lay-submit lay-filter="LAY-app-CoreCmsServices-search"><i class="layui-icon layui-icon-search"></i>筛选</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</script>
|
||||
|
||||
<script type="text/html" id="LAY-app-CoreCmsUserServicesOrder-pagebar">
|
||||
<script type="text/html" id="LAY-app-CoreCmsServices-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="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-CoreCmsUserServicesOrder-tableBox-bar">
|
||||
<a class="layui-btn layui-btn-xs" lay-event="detail">核销码</a>
|
||||
<a class="layui-btn layui-btn-danger layui-btn-xs" data-dropdown="#CoreCmsUserServicesOrderTbCancellationDrop{{d.LAY_INDEX}}" no-shade="true">作废</a>
|
||||
<div class="dropdown-menu-nav dropdown-popconfirm dropdown-top-right layui-hide" id="CoreCmsUserServicesOrderTbCancellationDrop{{d.LAY_INDEX}}"
|
||||
<script type="text/html" id="LAY-app-CoreCmsServices-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="#CoreCmsServicesTbDelDrop{{d.LAY_INDEX}}" no-shade="true">删除</a>
|
||||
<div class="dropdown-menu-nav dropdown-popconfirm dropdown-top-right layui-hide" id="CoreCmsServicesTbDelDrop{{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="cancellation">确定</a>
|
||||
<a class="layui-btn layui-btn-normal cursor" lay-event="del">确定</a>
|
||||
</div>
|
||||
</div>
|
||||
</script>
|
||||
@@ -111,7 +83,7 @@
|
||||
var debug = layui.setter.debug;
|
||||
layui.data.done = function (d) {
|
||||
//开启调试情况下获取接口赋值数据
|
||||
if (debug) { console.log(d); }
|
||||
if (debug) { console.log(d.data); }
|
||||
|
||||
indexData = d.data;
|
||||
layui.use(['index', 'table', 'laydate', 'util', 'coredropdown', 'coreHelper'],
|
||||
@@ -126,22 +98,25 @@
|
||||
, util = layui.util
|
||||
, view = layui.view;
|
||||
|
||||
|
||||
//重载form
|
||||
form.render();
|
||||
var searchwhere;
|
||||
//监听搜索
|
||||
form.on('submit(LAY-app-CoreCmsUserServicesOrder-search)',
|
||||
form.on('submit(LAY-app-CoreCmsServices-search)',
|
||||
function (data) {
|
||||
var field = data.field;
|
||||
searchwhere = field;
|
||||
//执行重载
|
||||
table.reloadData('LAY-app-CoreCmsUserServicesOrder-tableBox', { where: field });
|
||||
table.reloadData('LAY-app-CoreCmsServices-tableBox', { where: field });
|
||||
});
|
||||
//数据绑定
|
||||
table.render({
|
||||
elem: '#LAY-app-CoreCmsUserServicesOrder-tableBox',
|
||||
url: layui.setter.apiUrl + 'Api/CoreCmsUserServicesOrder/GetPageList',
|
||||
elem: '#LAY-app-CoreCmsServices-tableBox',
|
||||
url: layui.setter.apiUrl + 'Api/CoreCmsServices/GetPageList',
|
||||
method: 'POST',
|
||||
toolbar: '#LAY-app-CoreCmsUserServicesOrder-toolbar',
|
||||
pagebar: '#LAY-app-CoreCmsUserServicesOrder-pagebar',
|
||||
toolbar: '#LAY-app-CoreCmsServices-toolbar',
|
||||
pagebar: '#LAY-app-CoreCmsServices-pagebar',
|
||||
className: 'pagebarbox',
|
||||
defaultToolbar: ['filter', 'print', 'exports'],
|
||||
height: 'full-127',//面包屑142px,搜索框4行172,3行137,2行102,1行67
|
||||
@@ -152,36 +127,77 @@
|
||||
cols: [
|
||||
[
|
||||
{ type: "checkbox", fixed: "left" },
|
||||
{ field: 'id', title: '序列', width: 50, sort: false },
|
||||
{ field: 'serviceOrderId', title: '服务订单编号', sort: false, width: 125 },
|
||||
{ field: 'id', title: '序列', width: 70, sort: false },
|
||||
{ field: 'title', title: '项目名称', sort: false, width: 205 },
|
||||
{
|
||||
field: 'userId', title: '关联用户', sort: false, width: 155, templet: function (d) {
|
||||
return d.userId + '【' + d.userName + '】';
|
||||
field: 'thumbnail', title: '缩略图', sort: false, width: 85,
|
||||
templet: function (d) {
|
||||
if (d.thumbnail) {
|
||||
return '<a href="javascript:void(0);" onclick=layui.coreHelper.viewImage("' + d.thumbnail + '")><image style="max-width:28px;max-height:28px;" src="' + d.thumbnail + '" /></a>';
|
||||
} else {
|
||||
return '<a href="javascript:void(0);" onclick=layui.coreHelper.viewImage("' + setter.noImagePicUrl + '")><image style="max-width:30px;max-height:30px;" src="' + setter.noImagePicUrl + '" /></a>';
|
||||
}
|
||||
}, width: 60
|
||||
},
|
||||
{ field: 'money', title: '售价', sort: false, width: 80, templet: function (data) { return '¥' + data.money } },
|
||||
|
||||
//{ field: 'description', title: '项目概述', sort: false, width: 105 },
|
||||
//{ field: 'contentBody', title: '项目详细说明', sort: false, width: 105 },
|
||||
{
|
||||
field: 'allowedMembership', title: '允许购买会员级别', sort: false, width: 305, templet: function (data) {
|
||||
var arr = data.allowedMembership.split(',');
|
||||
var outStr = "";
|
||||
for (var i = 0; i < arr.length; i++) {
|
||||
for (var j = 0; j < d.data.userGrade.length; j++) {
|
||||
if (d.data.userGrade[j].id == arr[i]) {
|
||||
outStr += '<span class="layui-badge layui-badge-gray">' + d.data.userGrade[j].title + '</span> ';
|
||||
}
|
||||
}
|
||||
}
|
||||
return outStr;
|
||||
}
|
||||
},
|
||||
{ field: 'serviceTitle', title: '关联服务', sort: false },
|
||||
{ field: 'isPay', title: '是否支付', width: 95, templet: '#switch_isPay', sort: false, unresize: true },
|
||||
{ field: 'payTime', title: '支付时间', width: 130, sort: false },
|
||||
{ field: 'paymentId', title: '支付单号', sort: false, width: 125 },
|
||||
{
|
||||
field: 'status', title: '状态', sort: false, width: 80, templet: function (data) {
|
||||
for (var i = 0; i < d.data.serviceOrderStatus.length; i++) {
|
||||
if (data.status == d.data.serviceOrderStatus[i].value) {
|
||||
return d.data.serviceOrderStatus[i].description;
|
||||
field: 'status',
|
||||
title: '项目状态',
|
||||
sort: false,
|
||||
width: 85,
|
||||
templet: function (data) {
|
||||
for (var j = 0; j < d.data.status.length; j++) {
|
||||
if (d.data.status[j].value == data.status) {
|
||||
return d.data.status[j].description;
|
||||
}
|
||||
}
|
||||
return "";
|
||||
}
|
||||
},
|
||||
{ field: 'createTime', title: '订单创建时间', width: 130, sort: false },
|
||||
{ field: 'servicesEndTime', title: '截止服务时间', width: 130, sort: false },
|
||||
{ width: 122, align: 'center', title: '操作', fixed: 'right', toolbar: '#LAY-app-CoreCmsUserServicesOrder-tableBox-bar' }
|
||||
{ field: 'maxBuyNumber', title: '项目重复购买次数', sort: false, width: 125 },
|
||||
{ field: 'amount', title: '项目可销售数量', sort: false, width: 105 },
|
||||
{ field: 'startTime', title: '项目开始时间', width: 130, sort: false },
|
||||
{ field: 'endTime', title: '项目截止时间', width: 130, sort: false },
|
||||
{
|
||||
field: 'validityType', title: '核销有效期类型', sort: false, width: 105,
|
||||
templet: function (data) {
|
||||
for (var j = 0; j < d.data.types.length; j++) {
|
||||
if (d.data.types[j].value == data.validityType) {
|
||||
return d.data.types[j].description;
|
||||
}
|
||||
}
|
||||
return "";
|
||||
}
|
||||
},
|
||||
{ field: 'validityStartTime', title: '核销开始时间', width: 130, sort: false },
|
||||
{ field: 'validityEndTime', title: '核销结束时间', width: 130, sort: false },
|
||||
{ field: 'ticketNumber', title: '核销服务券数量', sort: false, width: 105 },
|
||||
{ field: 'createTime', title: '项目创建时间', width: 130, sort: false },
|
||||
{ field: 'updateTime', title: '项目更新时间', width: 130, sort: false },
|
||||
{ width: 142, align: 'center', title: '操作', fixed: 'right', toolbar: '#LAY-app-CoreCmsServices-tableBox-bar' }
|
||||
]
|
||||
]
|
||||
});
|
||||
//监听排序事件
|
||||
table.on('sort(LAY-app-CoreCmsUserServicesOrder-tableBox)', function (obj) {
|
||||
table.reloadData('LAY-app-CoreCmsUserServicesOrder-tableBox', {
|
||||
table.on('sort(LAY-app-CoreCmsServices-tableBox)', function (obj) {
|
||||
table.reloadData('LAY-app-CoreCmsServices-tableBox', {
|
||||
initSort: obj, //记录初始排序,如果不设的话,将无法标记表头的排序状态。
|
||||
where: { //请求参数(注意:这里面的参数可任意定义,并非下面固定的格式)
|
||||
orderField: obj.field, //排序字段
|
||||
@@ -190,14 +206,20 @@
|
||||
});
|
||||
});
|
||||
//监听行双击事件
|
||||
table.on('rowDouble(LAY-app-CoreCmsUserServicesOrder-tableBox)', function (obj) {
|
||||
table.on('rowDouble(LAY-app-CoreCmsServices-tableBox)', function (obj) {
|
||||
//查看详情
|
||||
doDetails(obj);
|
||||
});
|
||||
//头工具栏事件
|
||||
table.on('pagebar(LAY-app-CoreCmsUserServicesOrder-tableBox)', function (obj) {
|
||||
table.on('pagebar(LAY-app-CoreCmsServices-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;
|
||||
@@ -207,26 +229,139 @@
|
||||
};
|
||||
});
|
||||
//监听工具条
|
||||
table.on('tool(LAY-app-CoreCmsUserServicesOrder-tableBox)',
|
||||
table.on('tool(LAY-app-CoreCmsServices-tableBox)',
|
||||
function (obj) {
|
||||
if (obj.event === 'detail') {
|
||||
doDetails(obj);
|
||||
} else if (obj.event === 'cancellation') {
|
||||
doCancellation(obj);
|
||||
} else if (obj.event === 'del') {
|
||||
doDelete(obj);
|
||||
} else if (obj.event === 'edit') {
|
||||
doEdit(obj)
|
||||
}
|
||||
});
|
||||
//执行创建操作
|
||||
function doCreate() {
|
||||
coreHelper.Post("Api/CoreCmsServices/GetCreate", null, function (e) {
|
||||
if (e.code === 0) {
|
||||
admin.popup({
|
||||
shadeClose: false,
|
||||
title: '创建数据',
|
||||
area: ['1200px', '90%'],
|
||||
id: 'LAY-popup-CoreCmsServices-create',
|
||||
success: function (layero, index) {
|
||||
view(this.id).render('good/servicegoods/create', { data: e.data }).done(function () {
|
||||
//监听提交
|
||||
form.on('submit(LAY-app-CoreCmsServices-createForm-submit)',
|
||||
function (data) {
|
||||
var field = data.field; //获取提交的字段
|
||||
|
||||
field.contentBody = window.editor.getData();
|
||||
if (!!!field.contentBody) {
|
||||
layer.msg('文章详情内容不能为空', { icon: 5 });
|
||||
return false;
|
||||
}
|
||||
|
||||
if (field.validityType == 2) {
|
||||
if (!field.validityStartTime || !field.validityStartTime) {
|
||||
layer.msg('请设置【核销有效时段】', { icon: 5 });
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
if (debug) { console.log(field); } //开启调试返回数据
|
||||
//提交 Ajax 成功后,关闭当前弹层并重载表格
|
||||
coreHelper.Post("Api/CoreCmsServices/DoCreate", field, function (e) {
|
||||
console.log(e)
|
||||
if (e.code === 0) {
|
||||
layui.table.reloadData('LAY-app-CoreCmsServices-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-CoreCmsServices-createForm-submit").click();
|
||||
}
|
||||
});
|
||||
} else {
|
||||
layer.msg(e.msg);
|
||||
}
|
||||
});
|
||||
}
|
||||
//执行编辑操作
|
||||
function doEdit(obj) {
|
||||
coreHelper.Post("Api/CoreCmsServices/GetEdit", { id: obj.data.id }, function (e) {
|
||||
if (e.code === 0) {
|
||||
admin.popup({
|
||||
shadeClose: false,
|
||||
title: '编辑数据',
|
||||
area: ['1200px', '90%'],
|
||||
id: 'LAY-popup-CoreCmsServices-edit',
|
||||
success: function (layero, index) {
|
||||
view(this.id).render('good/servicegoods/edit', { data: e.data }).done(function () {
|
||||
//监听提交
|
||||
form.on('submit(LAY-app-CoreCmsServices-editForm-submit)',
|
||||
function (data) {
|
||||
var field = data.field; //获取提交的字段
|
||||
|
||||
field.contentBody = window.editor.getData();
|
||||
if (!!!field.contentBody) {
|
||||
layer.msg('文章详情内容不能为空', { icon: 5 });
|
||||
return false;
|
||||
}
|
||||
|
||||
if (field.validityType == 2) {
|
||||
if (!field.validityStartTime || !field.validityStartTime) {
|
||||
layer.msg('请设置【核销有效时段】', { icon: 5 });
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
if (debug) { console.log(field); } //开启调试返回数据
|
||||
//提交 Ajax 成功后,关闭当前弹层并重载表格
|
||||
coreHelper.Post("Api/CoreCmsServices/DoEdit", field, function (e) {
|
||||
console.log(e)
|
||||
if (e.code === 0) {
|
||||
layui.table.reloadData('LAY-app-CoreCmsServices-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-CoreCmsServices-editForm-submit").click();
|
||||
}
|
||||
});
|
||||
} else {
|
||||
layer.msg(e.msg);
|
||||
}
|
||||
});
|
||||
}
|
||||
//执行预览操作
|
||||
function doDetails(obj) {
|
||||
coreHelper.Post("Api/CoreCmsUserServicesOrder/GetDetails", { id: obj.data.id }, function (e) {
|
||||
coreHelper.Post("Api/CoreCmsServices/GetDetails", { id: obj.data.id }, function (e) {
|
||||
if (e.code === 0) {
|
||||
admin.popup({
|
||||
shadeClose: false,
|
||||
title: '查看详情',
|
||||
area: ['1200px', '90%'],
|
||||
id: 'LAY-popup-CoreCmsUserServicesOrder-details',
|
||||
id: 'LAY-popup-CoreCmsServices-details',
|
||||
success: function (layero, index) {
|
||||
view(this.id).render('order/servicesOrder/details', { data: e.data }).done(function () {
|
||||
view(this.id).render('good/servicegoods/details', { data: e.data }).done(function () {
|
||||
form.render();
|
||||
});
|
||||
// 禁止弹窗出现滚动条
|
||||
@@ -238,20 +373,40 @@
|
||||
}
|
||||
});
|
||||
}
|
||||
//执行作废订单
|
||||
function doCancellation(obj) {
|
||||
coreHelper.Post("Api/CoreCmsUserServicesOrder/DoCancellation", { id: obj.data.id }, function (e) {
|
||||
//执行单个删除
|
||||
function doDelete(obj) {
|
||||
coreHelper.Post("Api/CoreCmsServices/DoDelete", { id: obj.data.id }, function (e) {
|
||||
if (debug) { console.log(e); } //开启调试返回数据
|
||||
table.reloadData('LAY-app-CoreCmsUserServicesOrder-tableBox');
|
||||
table.reloadData('LAY-app-CoreCmsServices-tableBox');
|
||||
layer.msg(e.msg);
|
||||
});
|
||||
}
|
||||
//执行批量删除
|
||||
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/CoreCmsServices/DoBatchDelete", { id: delidsStr }, function (e) {
|
||||
if (debug) { console.log(e); } //开启调试返回数据
|
||||
table.reloadData('LAY-app-CoreCmsServices-tableBox');
|
||||
layer.msg(e.msg);
|
||||
});
|
||||
});
|
||||
}
|
||||
//执行查询条件导出excel
|
||||
function doQueryExportexcel() {
|
||||
layer.confirm('确定根据当前的查询条件导出数据吗?',
|
||||
function (index) {
|
||||
var field = searchwhere;
|
||||
coreHelper.PostForm("Api/CoreCmsUserServicesOrder/QueryExportExcel", field, function (e) {
|
||||
coreHelper.PostForm("Api/CoreCmsServices/QueryExportExcel", field, function (e) {
|
||||
if (debug) { console.log(e); } //开启调试返回数据
|
||||
if (e.code === 0) {
|
||||
window.open(e.data);
|
||||
@@ -275,7 +430,7 @@
|
||||
delidsStr.push(item.id);
|
||||
});
|
||||
layer.close(index);
|
||||
coreHelper.Post("Api/CoreCmsUserServicesOrder/SelectExportExcel", { id: delidsStr }, function (e) {
|
||||
coreHelper.Post("Api/CoreCmsServices/SelectExportExcel", { id: delidsStr }, function (e) {
|
||||
if (debug) { console.log(e); } //开启调试返回数据
|
||||
if (e.code === 0) {
|
||||
window.open(e.data);
|
||||
@@ -285,34 +440,27 @@
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
laydate.render({
|
||||
elem: '#searchTime-CoreCmsUserServicesOrder-payTime',
|
||||
type: 'datetime',
|
||||
range: '到',
|
||||
});
|
||||
laydate.render({
|
||||
elem: '#searchTime-CoreCmsUserServicesOrder-createTime',
|
||||
type: 'datetime',
|
||||
range: '到',
|
||||
});
|
||||
laydate.render({
|
||||
elem: '#searchTime-CoreCmsUserServicesOrder-servicesEndTime',
|
||||
type: 'datetime',
|
||||
range: '到',
|
||||
});
|
||||
|
||||
//监听 表格复选框操作
|
||||
|
||||
//重载form
|
||||
form.render();
|
||||
laydate.render({
|
||||
elem: '#searchTime-CoreCmsServices-startTime',
|
||||
type: 'datetime',
|
||||
range: '到',
|
||||
});
|
||||
laydate.render({
|
||||
elem: '#searchTime-CoreCmsServices-endTime',
|
||||
type: 'datetime',
|
||||
range: '到',
|
||||
});
|
||||
laydate.render({
|
||||
elem: '#searchTime-CoreCmsServices-validityStartTime',
|
||||
type: 'datetime',
|
||||
range: '到',
|
||||
});
|
||||
laydate.render({
|
||||
elem: '#searchTime-CoreCmsServices-validityEndTime',
|
||||
type: 'datetime',
|
||||
range: '到',
|
||||
});
|
||||
});
|
||||
};
|
||||
</script>
|
||||
|
||||
<!--设置是否支付-->
|
||||
<script type="text/html" id="switch_isPay">
|
||||
<input type="checkbox" name="switch_isPay" value="{{d.id}}" lay-skin="switch" lay-text="已支付|未支付" disabled="disabled" lay-filter="switch_isPay" {{ d.isPay ? 'checked' : '' }}>
|
||||
</script>
|
||||
|
||||
</script>
|
||||
@@ -1,115 +0,0 @@
|
||||
<script type="text/html" template lay-done="layui.data.done(d);">
|
||||
<div class="layui-form coreshop-form layui-form-pane" lay-filter="LAY-app-CoreCmsUserServicesOrder-createForm" id="LAY-app-CoreCmsUserServicesOrder-createForm">
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label for="id" class="layui-form-label layui-form-required">序列</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="请输入序列" lay-reqText="请输入序列并为数字" />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label for="serviceOrderId" class="layui-form-label layui-form-required">服务订单编号</label>
|
||||
<div class="layui-input-block">
|
||||
<input name="serviceOrderId" lay-verType="tips" lay-verify="required|verifyserviceOrderId" class="layui-input" lay-reqText="请输入服务订单编号" placeholder="请输入服务订单编号"/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label for="userId" class="layui-form-label layui-form-required">关联用户</label>
|
||||
<div class="layui-input-block">
|
||||
<input type="number" min="0" max="999999" name="userId" lay-verType="tips" lay-verify="required|number" class="layui-input" value="1" placeholder="请输入关联用户" lay-reqText="请输入关联用户并为数字" />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label for="servicesId" class="layui-form-label layui-form-required">关联服务</label>
|
||||
<div class="layui-input-block">
|
||||
<input type="number" min="0" max="999999" name="servicesId" lay-verType="tips" lay-verify="required|number" class="layui-input" value="1" placeholder="请输入关联服务" lay-reqText="请输入关联服务并为数字" />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item" pane>
|
||||
<label for="isPay" class="layui-form-label layui-form-required">是否支付</label>
|
||||
<div class="layui-input-block">
|
||||
<input type="checkbox" lay-filter="switch" name="isPay" lay-skin="switch" lay-text="开启|关闭">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label for="payTime" class="layui-form-label layui-form-required">支付时间</label>
|
||||
<div class="layui-input-block">
|
||||
<input name="payTime" id="createTime-CoreCmsUserServicesOrder-payTime" type="text" lay-verType="tips" lay-verify="required|datetime" class="layui-input" placeholder="请输入支付时间" lay-reqText="请输入支付时间" />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label for="paymentId" class="layui-form-label layui-form-required">支付单号</label>
|
||||
<div class="layui-input-block">
|
||||
<input name="paymentId" lay-verType="tips" lay-verify="required|verifypaymentId" class="layui-input" lay-reqText="请输入支付单号" placeholder="请输入支付单号"/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label for="status" class="layui-form-label layui-form-required">状态</label>
|
||||
<div class="layui-input-block">
|
||||
<input type="number" min="0" max="999999" name="status" lay-verType="tips" lay-verify="required|number" class="layui-input" value="1" 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-CoreCmsUserServicesOrder-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="servicesEndTime" class="layui-form-label layui-form-required">截止服务时间</label>
|
||||
<div class="layui-input-block">
|
||||
<input name="servicesEndTime" id="createTime-CoreCmsUserServicesOrder-servicesEndTime" type="text" lay-verType="tips" lay-verify="required|datetime" class="layui-input" 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-CoreCmsUserServicesOrder-createForm-submit" id="LAY-app-CoreCmsUserServicesOrder-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-CoreCmsUserServicesOrder-payTime',
|
||||
type: 'datetime'
|
||||
});
|
||||
laydate.render({
|
||||
elem: '#createTime-CoreCmsUserServicesOrder-createTime',
|
||||
type: 'datetime'
|
||||
});
|
||||
laydate.render({
|
||||
elem: '#createTime-CoreCmsUserServicesOrder-servicesEndTime',
|
||||
type: 'datetime'
|
||||
});
|
||||
form.verify({
|
||||
|
||||
verifyserviceOrderId: [/^.{0,50}$/,'服务订单编号最大只允许输入50位字符'],
|
||||
verifypaymentId: [/^.{0,50}$/,'支付单号最大只允许输入50位字符'],
|
||||
});
|
||||
//重载form
|
||||
form.render(null, 'LAY-app-CoreCmsUserServicesOrder-createForm');
|
||||
})
|
||||
};
|
||||
</script>
|
||||
@@ -1,115 +0,0 @@
|
||||
<script type="text/html" template lay-done="layui.data.sendParams(d);">
|
||||
<div class="layui-form coreshop-form layui-form-pane" lay-filter="LAY-app-CoreCmsUserServicesOrder-editForm" id="LAY-app-CoreCmsUserServicesOrder-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">序列</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="请输入序列" lay-reqText="请输入序列并为数字" />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label for="serviceOrderId" class="layui-form-label layui-form-required">服务订单编号</label>
|
||||
<div class="layui-input-block">
|
||||
<input name="serviceOrderId" lay-verType="tips" lay-verify="required|verifyserviceOrderId" class="layui-input" placeholder="请输入服务订单编号" lay-reqText="请输入服务订单编号" value="{{d.params.data.serviceOrderId || '' }}" />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label for="userId" class="layui-form-label layui-form-required">关联用户</label>
|
||||
<div class="layui-input-block">
|
||||
<input type="number" min="0" max="999999" name="userId" lay-verType="tips" lay-verify="required|number" class="layui-input" value="{{d.params.data.userId || '' }}" placeholder="请输入关联用户" lay-reqText="请输入关联用户并为数字" />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label for="servicesId" class="layui-form-label layui-form-required">关联服务</label>
|
||||
<div class="layui-input-block">
|
||||
<input type="number" min="0" max="999999" name="servicesId" lay-verType="tips" lay-verify="required|number" class="layui-input" value="{{d.params.data.servicesId || '' }}" placeholder="请输入关联服务" lay-reqText="请输入关联服务并为数字" />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item" pane>
|
||||
<label for="isPay" class="layui-form-label layui-form-required">是否支付</label>
|
||||
<div class="layui-input-block">
|
||||
<input type="checkbox" lay-filter="switch" name="isPay" {{ d.params.data.isPay ? 'checked' : '' }} lay-skin="switch" lay-text="开启|关闭">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label for="payTime" class="layui-form-label layui-form-required">支付时间</label>
|
||||
<div class="layui-input-block">
|
||||
<input name="payTime" id="editTime-CoreCmsUserServicesOrder-payTime" type="text" lay-verType="tips" lay-verify="required|datetime" class="layui-input" placeholder="请输入支付时间" lay-reqText="请输入支付时间" value="{{d.params.data.payTime || '' }}"/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label for="paymentId" class="layui-form-label layui-form-required">支付单号</label>
|
||||
<div class="layui-input-block">
|
||||
<input name="paymentId" lay-verType="tips" lay-verify="required|verifypaymentId" class="layui-input" placeholder="请输入支付单号" lay-reqText="请输入支付单号" value="{{d.params.data.paymentId || '' }}" />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label for="status" class="layui-form-label layui-form-required">状态</label>
|
||||
<div class="layui-input-block">
|
||||
<input type="number" min="0" max="999999" name="status" lay-verType="tips" lay-verify="required|number" class="layui-input" value="{{d.params.data.status || '' }}" 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="editTime-CoreCmsUserServicesOrder-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="servicesEndTime" class="layui-form-label layui-form-required">截止服务时间</label>
|
||||
<div class="layui-input-block">
|
||||
<input name="servicesEndTime" id="editTime-CoreCmsUserServicesOrder-servicesEndTime" type="text" lay-verType="tips" lay-verify="required|datetime" class="layui-input" placeholder="请输入截止服务时间" lay-reqText="请输入截止服务时间" value="{{d.params.data.servicesEndTime || '' }}"/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item text-right core-hidden">
|
||||
<input type="button" class="layui-btn" lay-submit lay-filter="LAY-app-CoreCmsUserServicesOrder-editForm-submit" id="LAY-app-CoreCmsUserServicesOrder-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-CoreCmsUserServicesOrder-payTime',
|
||||
type: 'datetime'
|
||||
});
|
||||
laydate.render({
|
||||
elem: '#editTime-CoreCmsUserServicesOrder-createTime',
|
||||
type: 'datetime'
|
||||
});
|
||||
laydate.render({
|
||||
elem: '#editTime-CoreCmsUserServicesOrder-servicesEndTime',
|
||||
type: 'datetime'
|
||||
});
|
||||
form.verify({
|
||||
|
||||
verifyserviceOrderId: [/^.{0,50}$/,'服务订单编号最大只允许输入50位字符'],
|
||||
verifypaymentId: [/^.{0,50}$/,'支付单号最大只允许输入50位字符'],
|
||||
});
|
||||
//重载form
|
||||
form.render(null, 'LAY-app-CoreCmsUserServicesOrder-editForm');
|
||||
})
|
||||
};
|
||||
</script>
|
||||
@@ -305,15 +305,6 @@
|
||||
|
||||
//监听 表格复选框操作
|
||||
|
||||
layui.form.on('switch(switch_isPay)', function (obj) {
|
||||
coreHelper.Post("Api/CoreCmsUserServicesOrder/DoSetisPay", { id: this.value, data: obj.elem.checked }, function (e) {
|
||||
if (debug) { console.log(e); } //开启调试返回数据
|
||||
//table.reloadData('LAY-app-CoreCmsUserServicesOrder-tableBox');
|
||||
layer.msg(e.msg);
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
//重载form
|
||||
form.render();
|
||||
});
|
||||
@@ -322,6 +313,6 @@
|
||||
|
||||
<!--设置是否支付-->
|
||||
<script type="text/html" id="switch_isPay">
|
||||
<input type="checkbox" name="switch_isPay" value="{{d.id}}" lay-skin="switch" lay-text="已支付|未支付" lay-filter="switch_isPay" {{ d.isPay ? 'checked' : '' }}>
|
||||
<input type="checkbox" name="switch_isPay" value="{{d.id}}" lay-skin="switch" lay-text="已支付|未支付" disabled="disabled" lay-filter="switch_isPay" {{ d.isPay ? 'checked' : '' }}>
|
||||
</script>
|
||||
|
||||
|
||||
@@ -76,7 +76,6 @@
|
||||
<div class="layui-form-mid layui-word-aux">清除连续签到次数</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="layui-form-item">
|
||||
<div class="layui-input-block">
|
||||
<button class="layui-btn" lay-submit="" lay-filter="save">保存更改</button>
|
||||
@@ -103,24 +102,18 @@
|
||||
<fieldset class="layui-elem-field layui-field-title" style="margin-top: 20px;">
|
||||
<legend>会员组设置</legend>
|
||||
</fieldset>
|
||||
{{# layui.each(item.details, function(indexChild, itemChild){ }}
|
||||
{{# layui.each(d.data.newDetails[index], function(indexChild, itemChild){ }}
|
||||
<div class="layui-form-item listItems">
|
||||
<input type="hidden" id="detailsId" name="continuousCheckInRules.details[{{index}}].id[{{indexChild}}]" value="{{itemChild.id}}">
|
||||
<input type="hidden" id="detailsUserGradeId" name="continuousCheckInRules.details[{{index}}].userGradeId[{{indexChild}}]" value="{{itemChild.userGradeId}}">
|
||||
<input type="hidden" id="detailsRuleId" name="continuousCheckInRules.details[{{index}}].ruleId[{{indexChild}}]" value="{{itemChild.ruleId}}">
|
||||
<label class="layui-form-label">
|
||||
{{# layui.each(d.data.userGrade, function(indexGrade, itemGrade){ }}
|
||||
{{# if(itemChild.userGradeId === itemGrade.id){ }}
|
||||
{{ itemGrade.title }}
|
||||
{{# } }}
|
||||
{{# }); }}
|
||||
</label>
|
||||
<input type="hidden" id="detailsId" name="continuousCheckInRules.details[{{index}}].id[{{indexChild}}]" value="{{ itemChild.details ? itemChild.details.id : 0}}">
|
||||
<input type="hidden" id="detailsUserGradeId" name="continuousCheckInRules.details[{{index}}].userGradeId[{{indexChild}}]" value="{{itemChild.grand.id}}">
|
||||
<input type="hidden" id="detailsRuleId" name="continuousCheckInRules.details[{{index}}].ruleId[{{indexChild}}]" value="{{ item.id }}">
|
||||
<label class="layui-form-label">{{ itemChild.grand.title }}</label>
|
||||
<div class="layui-input-inline layui-inline-2">
|
||||
<input type="number" id="detailsNum" name="continuousCheckInRules.details[{{index}}].num[{{indexChild}}]" value="{{itemChild.num}}" lay-verify="required|number" autocomplete="off" placeholder="" class="layui-input">
|
||||
<input type="number" id="detailsNum" name="continuousCheckInRules.details[{{index}}].num[{{indexChild}}]" value="{{itemChild.details ? itemChild.details.num : 0}}" lay-verify="required|number" autocomplete="off" placeholder="" class="layui-input">
|
||||
</div>
|
||||
<div class="layui-input-inline layui-inline-4">
|
||||
<input type="radio" id="detailsType" name="continuousCheckInRules.details[{{index}}].type[{{indexChild}}]" value="1" title="积分" {{itemChild.type==1?'checked="checked"':''}}>
|
||||
<input type="radio" id="detailsType" name="continuousCheckInRules.details[{{index}}].type[{{indexChild}}]" value="2" title="余额" {{itemChild.type==2?'checked="checked"':''}}>
|
||||
<input type="radio" id="detailsType" name="continuousCheckInRules.details[{{index}}].type[{{indexChild}}]" value="1" title="积分" {{(itemChild.details && itemChild.details.type==1)|| !itemChild.details?'checked="checked"':''}}>
|
||||
<input type="radio" id="detailsType" name="continuousCheckInRules.details[{{index}}].type[{{indexChild}}]" value="2" title="余额" {{itemChild.details && itemChild.details.type==2?'checked="checked"':''}}>
|
||||
</div>
|
||||
</div>
|
||||
{{# }); }}
|
||||
@@ -193,11 +186,10 @@
|
||||
</div>
|
||||
</script>
|
||||
|
||||
|
||||
<script id="continuousCheckInBoxTmp" type="text/html">
|
||||
<div class="continuousCheckInBox coreshop-solid" data-id="{{d.index}}">
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">累计签到天数</label>
|
||||
<label class="layui-form-label">连续签到天数</label>
|
||||
<div class="layui-input-inline">
|
||||
<input type="hidden" id="id" name="continuousCheckInRules.id[{{d.index}}]" value="0">
|
||||
<input type="number" id="days" name="continuousCheckInRules.days[{{d.index}}]" value="100" lay-verify="required|number" autocomplete="off" placeholder="" class="layui-input">
|
||||
@@ -264,6 +256,7 @@
|
||||
//开启调试情况下获取接口赋值数据
|
||||
if (debug) { console.log(d); }
|
||||
indexData = d.data;
|
||||
|
||||
layui.use(['admin', 'form', 'coreHelper', 'element', 'table', 'util', 'laytpl', 'table', 'laydate'], function () {
|
||||
var $ = layui.$
|
||||
, setter = layui.setter
|
||||
@@ -278,7 +271,6 @@
|
||||
, router = layui.router()
|
||||
, search = router.search;
|
||||
|
||||
|
||||
//时间选择器
|
||||
laydate.render({
|
||||
elem: '#checkInAlertTime'
|
||||
@@ -304,7 +296,6 @@
|
||||
index: continuousCheckInRulesCount,
|
||||
userGrade: d.data.userGrade
|
||||
};
|
||||
console.log(data);
|
||||
var getTpl = continuousCheckInBoxTmp.innerHTML;
|
||||
laytpl(getTpl).render(data, function (html) {
|
||||
$("#continuousCheckInRulesCount").before(html);
|
||||
@@ -326,7 +317,7 @@
|
||||
//重置排序
|
||||
function resetContinuousCheckInRulesInputNameID() {
|
||||
$.each($("#continuousCheckInBox .continuousCheckInBox"), function (i, item) {
|
||||
var oldIndex = $(this).attr('data-id');
|
||||
//var oldIndex = $(this).attr('data-id');
|
||||
$(this).attr('data-id', i);
|
||||
$(this).find("#id").attr("name", "continuousCheckInRules.id[" + i + "]");
|
||||
$(this).find("#days").attr("name", "continuousCheckInRules.days[" + i + "]");
|
||||
@@ -510,7 +501,6 @@
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
form.render();
|
||||
});
|
||||
}
|
||||
|
||||
@@ -21,7 +21,7 @@
|
||||
<div class="layui-form-item">
|
||||
<label for="licenseImage" class="layui-form-label">客服地址</label>
|
||||
<div class="layui-input-inline layui-inline-12">
|
||||
<input name="service_agent_path" class="layui-input" placeholder="请输入客服地址" lay-reqText="请输入客服地址" value="{{d.data.service_agent_path ? d.data.service_agent_path:''}}" />
|
||||
<input name="service_agent_path" class="layui-input" placeholder="请输入客服地址" lay-reqText="请输入客服地址" value="{{d.data && d.data.service_agent_path ? d.data.service_agent_path:''}}" />
|
||||
</div>
|
||||
<div class="layui-form-mid">
|
||||
输入小程序的客服自定义地址,如:/pages/member/customerService/index
|
||||
@@ -30,7 +30,7 @@
|
||||
<div class="layui-form-item">
|
||||
<label for="licenseImage" class="layui-form-label">联系方式</label>
|
||||
<div class="layui-input-inline layui-inline-12">
|
||||
<input name="service_agent_phone" class="layui-input" placeholder="请输入客服地址" lay-reqText="请输入客服地址" value="{{d.data.service_agent_phone ? d.data.service_agent_phone:''}}" />
|
||||
<input name="service_agent_phone" class="layui-input" placeholder="请输入客服地址" lay-reqText="请输入客服地址" value="{{d.data && d.data.service_agent_phone ? d.data.service_agent_phone:''}}" />
|
||||
</div>
|
||||
<div class="layui-form-mid">
|
||||
如:020-888888
|
||||
@@ -50,7 +50,7 @@
|
||||
<div class="layui-form-item">
|
||||
<label for="licenseImage" class="layui-form-label layui-form-required">收货人姓名</label>
|
||||
<div class="layui-input-inline layui-inline-8">
|
||||
<input name="receiver_name" lay-verify="required" class="layui-input" placeholder="请输入收货人姓名" lay-reqText="请输入收货人姓名" value="{{d.data.default_receiving_address ? d.data.default_receiving_address.receiver_name:''}}" />
|
||||
<input name="receiver_name" lay-verify="required" class="layui-input" placeholder="请输入收货人姓名" lay-reqText="请输入收货人姓名" value="{{d.data && d.data.default_receiving_address ? d.data.default_receiving_address.receiver_name:''}}" />
|
||||
</div>
|
||||
<div class="layui-form-mid">
|
||||
如:张三
|
||||
@@ -60,7 +60,7 @@
|
||||
<div class="layui-form-item">
|
||||
<label for="licenseImage" class="layui-form-label layui-form-required">收货地址</label>
|
||||
<div class="layui-input-inline layui-inline-8">
|
||||
<input name="detailed_address" lay-verify="required" class="layui-input" placeholder="请输入详细收货地址信息" lay-reqText="请输入详细收货地址信息" value="{{d.data.default_receiving_address ? d.data.default_receiving_address.detailed_address:''}}" />
|
||||
<input name="detailed_address" lay-verify="required" class="layui-input" placeholder="请输入详细收货地址信息" lay-reqText="请输入详细收货地址信息" value="{{d.data && d.data.default_receiving_address ? d.data.default_receiving_address.detailed_address:''}}" />
|
||||
</div>
|
||||
<div class="layui-form-mid">
|
||||
如:详细收货地址信息
|
||||
@@ -69,7 +69,7 @@
|
||||
<div class="layui-form-item">
|
||||
<label for="licenseImage" class="layui-form-label layui-form-required">手机号码</label>
|
||||
<div class="layui-input-inline layui-inline-8">
|
||||
<input name="tel_number" lay-verify="required|phone" class="layui-input" placeholder="请输入手机号码" lay-reqText="请输入手机号码" value="{{d.data.default_receiving_address ? d.data.default_receiving_address.tel_number:''}}" />
|
||||
<input name="tel_number" lay-verify="required|phone" class="layui-input" placeholder="请输入手机号码" lay-reqText="请输入手机号码" value="{{d.data && d.data.default_receiving_address ? d.data.default_receiving_address.tel_number:''}}" />
|
||||
</div>
|
||||
<div class="layui-form-mid">
|
||||
如:19145919666
|
||||
@@ -79,7 +79,7 @@
|
||||
<div class="layui-form-item">
|
||||
<label for="licenseImage" class="layui-form-label">国家</label>
|
||||
<div class="layui-input-inline layui-inline-8">
|
||||
<input name="country" class="layui-input" placeholder="请输入手机号码" lay-reqText="请输入手机号码" value="{{d.data.default_receiving_address ? d.data.default_receiving_address.country:''}}" />
|
||||
<input name="country" class="layui-input" placeholder="请输入手机号码" lay-reqText="请输入手机号码" value="{{d.data && d.data.default_receiving_address ? d.data.default_receiving_address.country:''}}" />
|
||||
</div>
|
||||
<div class="layui-form-mid">
|
||||
选填,如:中国
|
||||
@@ -89,7 +89,7 @@
|
||||
<div class="layui-form-item">
|
||||
<label for="licenseImage" class="layui-form-label layui-form-required">省份</label>
|
||||
<div class="layui-input-inline layui-inline-8">
|
||||
<input name="province" class="layui-input" lay-verify="required" placeholder="请输入手机号码" lay-reqText="请输入手机号码" value="{{d.data.default_receiving_address ? d.data.default_receiving_address.province:''}}" />
|
||||
<input name="province" class="layui-input" lay-verify="required" placeholder="请输入手机号码" lay-reqText="请输入手机号码" value="{{d.data && d.data.default_receiving_address ? d.data.default_receiving_address.province:''}}" />
|
||||
</div>
|
||||
<div class="layui-form-mid">
|
||||
选填,如:湖南省
|
||||
@@ -99,7 +99,7 @@
|
||||
<div class="layui-form-item">
|
||||
<label for="licenseImage" class="layui-form-label layui-form-required">市</label>
|
||||
<div class="layui-input-inline layui-inline-8">
|
||||
<input name="city" class="layui-input" lay-verify="required" placeholder="请输入城市" lay-reqText="请输入城市" value="{{d.data.default_receiving_address ? d.data.default_receiving_address.city:''}}" />
|
||||
<input name="city" class="layui-input" lay-verify="required" placeholder="请输入城市" lay-reqText="请输入城市" value="{{d.data && d.data.default_receiving_address ? d.data.default_receiving_address.city:''}}" />
|
||||
</div>
|
||||
<div class="layui-form-mid">
|
||||
选填,如:怀化市
|
||||
@@ -109,7 +109,7 @@
|
||||
<div class="layui-form-item">
|
||||
<label for="licenseImage" class="layui-form-label layui-form-required">区</label>
|
||||
<div class="layui-input-inline layui-inline-8">
|
||||
<input name="town" class="layui-input" lay-verify="required" placeholder="请输入乡镇" lay-reqText="请输入乡镇" value="{{d.data.default_receiving_address ? d.data.default_receiving_address.town:''}}" />
|
||||
<input name="town" class="layui-input" lay-verify="required" placeholder="请输入乡镇" lay-reqText="请输入乡镇" value="{{d.data && d.data.default_receiving_address ? d.data.default_receiving_address.town:''}}" />
|
||||
</div>
|
||||
<div class="layui-form-mid">
|
||||
选填,如:鹤城区
|
||||
@@ -158,6 +158,9 @@
|
||||
verifylicenseImage: [/^.{0,255}$/, '最大只允许输入255位字符'],
|
||||
});
|
||||
|
||||
if (!d.data) {
|
||||
layer.msg(d.msg, { icon: 5 });
|
||||
}
|
||||
|
||||
//保存数据
|
||||
form.on('submit(LAY-app-WeChatTransactionComponentAuditCategory-updateInfo-submit)', function (data) {
|
||||
|
||||
Reference in New Issue
Block a user