Authored by 陶雨

Merge branch 'develop' of http://git.dev.yoho.cn/platform/yohobuy-portal-fe into develop

... ... @@ -2,8 +2,10 @@
var $ = require('jquery'),
common=require('../common/common');
/*基础商品模型(Model)*/
var RESPONSEDATA={};
/*获取基础商品数据*/
var param = location.href.match(/(add|update|update2)\/(\d+)/);
if(param){
common.util.__ajax({
... ... @@ -15,6 +17,7 @@ if(param){
},true);
}
/*货品年,规则从2015年开始,到今年之后的10年*/
RESPONSEDATA.ENUMYEAR=(function(){
var _y=[];
for(var i=2005;i<(new Date).getFullYear()+10;i++){
... ... @@ -28,20 +31,20 @@ console.log(RESPONSEDATA);
/*审核*/
/*根据Model渲染View 基础商品基本信息*/
$("#basicInfo").html(common.util.__template2($("#template2").html(),RESPONSEDATA));
/*类目配置*/
var ENUM={
goodsSizeList:{"sizeId":"","salePrice":$("#salesPriceStr").val(),"barCode":"","isSuppled":"N","presaleStorageNum":""}
}
/*商品名称*/
/*公共模块*/
var Bll={
/*判断类目级别,如果符合三级四级,返回对应id*/
validateSort:function(){
var id=false;
var select=tabTree.getAddress();
console.log("select",select);
if(select.length>2){
if(select[2]&&select[2].id){
id=select[2].id;
... ... @@ -52,6 +55,7 @@ var Bll={
}
return id;
},
/*商品名称*/
IsEnter:false,
productNameArr:['','',''],
setProductName:function(){
... ... @@ -65,45 +69,45 @@ var Bll={
}
/*非销售属性配置*/
var ag=new common.grid({
el:"#attributeTable",
columns:[
{display:"名称",name:"attributeName",render:function(item){
item.required=item.isMust=="Y"?"required":"";
var arr=[];
arr.push(item.attributeName);
if(item.required){
arr.push("<span class='red'>*</span>");
}
return arr.join('');
}},
{display:"属性",render:function(item){
item.required=item.isMust=="Y"?"required":"";
// item.attributeValues=item.attributeValues.split(',').map(function(elem, index, arr){
// return {name:elem}
// });
var attrs=RESPONSEDATA.productStandardRelationBoList;
if(attrs){
for(var i in attrs){
if(attrs[i].standardId==item.attributeId){
item.val=attrs[i].standardVal
item.__val=attrs[i].parameterMakeId
}
}
}
// item.attributeValues={name:};
return common.util.__template2($("#template3").html(),item);
}},
{display:"备注",name:"remark"}
],
complete:function(){
ag.__edit.init();
}
});
ag.__edit=new common.edit("#attributeTable");
/*品类*/
// var ag=new common.grid({
// el:"#attributeTable",
// columns:[
// {display:"名称",name:"attributeName",render:function(item){
// item.required=item.isMust=="Y"?"required":"";
// var arr=[];
// arr.push(item.attributeName);
// if(item.required){
// arr.push("<span class='red'>*</span>");
// }
// return arr.join('');
// }},
// {display:"属性",render:function(item){
// item.required=item.isMust=="Y"?"required":"";
// // item.attributeValues=item.attributeValues.split(',').map(function(elem, index, arr){
// // return {name:elem}
// // });
// var attrs=RESPONSEDATA.productStandardRelationBoList;
// if(attrs){
// for(var i in attrs){
// if(attrs[i].standardId==item.attributeId){
// item.val=attrs[i].standardVal
// item.__val=attrs[i].parameterMakeId
// }
// }
// }
// // item.attributeValues={name:};
// return common.util.__template2($("#template3").html(),item);
// }},
// {display:"备注",name:"remark"}
// ],
// complete:function(){
// ag.__edit.init();
// }
// });
// ag.__edit=new common.edit("#attributeTable");
/*品类初始化*/
var SORTDATA={
url:"/goods/query/querySortBySmallSort",
datas:[
... ... @@ -120,19 +124,18 @@ var SORTDATA={
Bll.productNameArr[2]=data[data.length-1].sortName;
Bll.setProductName();
/*查出非销售属性*/
var sorid=Bll.validateSort();
if(sorid){
common.util.__ajax({
url:'/base/goods/queryAllProductAttr',
data:{
categoryId:sorid,
displayPosition:1
}
},function(res){
console.log("分类",res);
ag.init(res.data);
},true);
}
// var sorid=Bll.validateSort();
// if(sorid){
// common.util.__ajax({
// url:'/base/goods/queryAllProductAttr',
// data:{
// categoryId:sorid,
// displayPosition:1
// }
// },function(res){
// ag.init(res.data);
// },true);
// }
}
}
... ... @@ -190,7 +193,7 @@ var g=new common.grid({
g.__gsm[item.__index]=item.goodsSizeList.length;
}
var html=[];
html.push("<div class='form-group'><div class='col-sm-11 red'><input type=text value='"+item.factoryCode+"' data-index="+item.__index+" class='factoryCode form-control' placeholder='款型编码' required/></div></div>");
html.push("<div class='form-group'><div class='col-sm-11 red'><input type=text value='"+item.modelCode+"' data-index="+item.__index+" class='modelCode form-control' placeholder='款型编码' required/></div></div>");
html.push('<div class="rows" id="rows__'+item.__index+'">');
item.goodsSizeList=item.goodsSizeList||[$.extend({},ENUM.goodsSizeList)];
var ISXIANGO=(common.util.__input("isAdvance")=="Y"&&+RESPONSEDATA.isAuditing==200)?true:false;
... ... @@ -225,7 +228,7 @@ var g=new common.grid({
var warp=$("#basicTable").find("tbody").children("tr").eq(i);
warp.find(".w-goods-text").prop("readonly",true).prop("disabled",true);
warp.find("input[name=file]").prop("readonly",true).prop("disabled",true);
warp.find(".factoryCode").prop("readonly",true).prop("disabled",true);
warp.find(".modelCode").prop("readonly",true).prop("disabled",true);
warp.find(".sortdelete").remove();
}
}
... ... @@ -259,7 +262,7 @@ $(document).on("click",".sortadd",function(){
var goodsSizeList=$.extend({},ENUM.goodsSizeList);
goodsSizeList.salePrice=$("#salesPriceStr").val();
g.__rows.push({
"factoryCode": "",
"modelCode": "",
"goodsColorImage": "",
goodsName: $(this).text(),
colorId: (+$(this).data("id")),
... ... @@ -311,20 +314,23 @@ $(document).on("change",".salesPriceStr",function(){
ENUM.goodsSizeList.salePrice=$.trim($(this).val());
});
$(document).on("click",".sortdelete",function(){
var that=this;
common.dialog.confirm("温馨提示","你确定删除吗?",function(){
var index=$(this).data("index");
var index=$(that).data("index");
[].splice.call(g.__rows,index,1);
g.reload();
});
// g.__e.init();
});
$(document).on("change",".factoryCode",function(){
$(document).on("change",".modelCode",function(){
var item=g.__rows[$(this).data("index")];
item.factoryCode=$(this).val();
item.modelCode=$(this).val();
});
$(document).on("click",".btn-sort-add",function(){
var item=g.__rows[$(this).data("index")];
item.goodsSizeList.push($.extend({},ENUM.goodsSizeList));
var goodsSizeList=$.extend({},ENUM.goodsSizeList);
goodsSizeList.salePrice=$("#salesPriceStr").val();
item.goodsSizeList.push(goodsSizeList);
g.reload();
// g.__e.init();
});
... ... @@ -402,7 +408,6 @@ $(document).on("change",".attr_input",function(){
$(document).on("change",".attr_checkobx_class",function(){
var item=ag.rows[$(this).data("index")];
item.val=$("#attr_"+$(this).data("index")).val();
console.log(item);
})
var e=new common.edit("#basicInfo");
... ... @@ -417,7 +422,6 @@ e.on("validate",function(){
return "请选择完整的分类目录";
});
e.on("validate",function(){
console.log(g.__gsm);
if(g.__rows.length==0){
return "请添加销售属性";
}
... ... @@ -470,11 +474,12 @@ e.on("validate",function(){
}
});
e.on("validate",function(){
if(!ag.__edit.validate(true)){
return ag.__edit.errMessage;
}
});
/*非销售属性验证*/
// e.on("validate",function(){
// if(!ag.__edit.validate(true)){
// return ag.__edit.errMessage;
// }
// });
$(document).on("click","#btnReview",function(){
... ... @@ -503,6 +508,9 @@ $(document).on("click","#btnReview",function(){
option.data.baseGoodInfoStr=JSON.stringify(g.__rows);
/*获取非销售属性数据*/
/*
option.data.productStandardRelationStr=[];
if(ag.rows.length>0){
for(var i in ag.rows){
... ... @@ -533,10 +541,12 @@ $(document).on("click","#btnReview",function(){
}
}
}
option.data.productStandardRelationStr=JSON.stringify(option.data.productStandardRelationStr);
option.data.productStandardRelationStr=JSON.stringify(option.data.productStandardRelationStr);*/
// option.debug=true;
console.log(option.data);
// console.log(option.data);
option.success=function(res){
res = res.data;
if(res.code == "200") {
... ...
... ... @@ -7,10 +7,11 @@ var edit=require('../common/edit');
//brandTonality
e.on("validate",function(){
var num=$.trim($("#brandTonality").val());
if(+num>100||+num<1){
return "调性指数(范围:1-100)";
if(num){
if(+num>100||+num<1){
return "调性指数(范围:1-100)";
}
}
return true;
});
e.init();
... ...
... ... @@ -5,19 +5,19 @@ var $ = require('jquery');
var urlObj = {
'supplier': '/supplier/supplier/getSupplierListByIdName',
'brand': '/brand/getBrandNames',
'managerName': '/supplier/storeadmin/managerName',//根据身份选择管理员
'managerName': '/supplier/storeadmin/managerName', //根据身份选择管理员
'sortattribute': '/erpproduct/sortattribute/ajax/automatic', // 品类关联实物测量属性
'sortsize': '/erpproduct/sortsize/ajax/automatic',//尺码模糊查询【验证通过】
'queryBrand': '/goods/query/brand',//查询品牌列表接口
'querySupplier': '/goods/query/supplier',//查询供应商列表接口
'sortsize': '/erpproduct/sortsize/ajax/automatic', //尺码模糊查询【验证通过】
'queryBrand': '/goods/query/brand', //查询品牌列表接口
'querySupplier': '/goods/query/supplier', //查询供应商列表接口
'queryShop': '/goods/query/shop', // 查询店铺列表接口
'queryShopPass': '/goods/query/shopPass', // 查询通过审核店铺列表接口
'maxSort': '/goods/query/maxSort',//查询一级类目列表接口
'maxSort': '/goods/query/maxSort', //查询一级类目列表接口
'shopsRest': '/ShopsRest/getShopsByName', // 店铺列表
'xiangouID': '/limit/xiangouID/selectActivityListForSelect', //限购ID
'sortsize2':'/erpproduct/sortsize/ajax/querySizeListBySortId4Html',//尺码
'sortbybrand':'/goods/query/queryShopsByBrandId',
'getjitSup':'/goods/query/getJitSupplierByBrandld',
'sortsize2': '/erpproduct/sortsize/ajax/querySizeListBySortId4Html', //尺码
'sortbybrand': '/goods/query/queryShopsByBrandId',
'getjitSup': '/goods/query/getJitSupplierByBrandld',
// 'getsort':'/goods/query/querySortBySmallSort',
'sortlist': '/product/class/queryAllProductSortList',
... ... @@ -27,6 +27,7 @@ var urlObj = {
'getAllHelpCategory': '/operations/helpcontent/getAllHelpCategory',
'getHelpCategory': '/operations/helpcontent/getHelpCategory',
'queryAll4Select': '/goods/brandSeries/queryAll4Select', //品牌款型系列
'getSelectItems': '/meterManage/brand/getSelectItems',//品牌获取选择选项的枚举
// 逛
... ... @@ -34,9 +35,12 @@ var urlObj = {
'guangGetSortList':'/guang/article/getSortList', // 逛-获取作者
'guangGetTagCategoryByStatus':'/guang/tagSort/getTagItems',
'guangCommentGetFilterItems':'/guang/comment/getItems', // 逛-评论列表-获取筛选条件
'queryBrandByShopId': '/query/brandByshopId', //查询店铺下关联品牌
'querySupplierByShopId': '/query/supplierByshopId' //查询店铺下关联供应商
};
var minimumResultsForSearch=["sortbybrand","getjitSup","sortsize2"];
var minimumResultsForSearch = ["sortbybrand", "getjitSup", "sortsize2"];
var dropDown = function(option) {
new dropDown.prototype.init(option);
... ... @@ -54,24 +58,24 @@ dropDown.prototype = {
option[i] = _option[i];
}
}
if(minimumResultsForSearch.indexOf(_option.ajax)>-1){
option.minimumResultsForSearch=Infinity
if (minimumResultsForSearch.indexOf(_option.ajax) > -1) {
option.minimumResultsForSearch = Infinity
}
if (option.ajax) {
$(option.el).select2({
minimumResultsForSearch: option.minimumResultsForSearch||0,
minimumResultsForSearch: option.minimumResultsForSearch || 0,
ajax: {
url: option.url,
dataType: 'json',
type: 'POST',
delay: 250,
data: function(params) {
var param={};
if(Object.prototype.toString.call(option.params)=="[object Function]"){
param=option.params();
}else{
param=option.params;
var param = {};
if (Object.prototype.toString.call(option.params) == "[object Function]") {
param = option.params();
} else {
param = option.params;
}
var data = $.extend({}, {
idName: params.term
... ...
... ... @@ -76,7 +76,7 @@ $.ajax({
url: '/goods/product/queryAttributesByConf',
data: {
saleType: 2,
displayPosition: 3,
displayPosition: 2,
categoryId: basicInfo.smallSortId
},
dataType: 'json',
... ... @@ -175,7 +175,7 @@ common.util.__ajax({
url: '/goods/product/queryAttributesByConfEx',
data: {
saleType: 2,
displayPosition: 2,
displayPosition: 3,
categoryId: basicInfo.smallSortId
}
}, function(res) {
... ...
... ... @@ -41,7 +41,7 @@ var g = new common.grid({
g.init("/meterManage/tryInfo/index2");
var modelLists = [];
//根据productSkn获取所有试穿信息并拼接返回
var getAllInfo = function (productSkn, callback) {
var getAllInfo = function (productSkn, maxSortId,callback) {
common.util.__ajax({url: '/meterManage/tryInfo/info1', data: {productSkn: productSkn}}, function (data) {
var feelIds = {
1: "合适",
... ... @@ -75,7 +75,12 @@ var getAllInfo = function (productSkn, callback) {
callback(modelLists);
new common.dropDown({
el: '.fit_size',
ajax: 'sortsize'
ajax: 'sortsize2',
params: function(){
return {
"sortId" : maxSortId
};
}
});
}, true);
};
... ... @@ -85,10 +90,10 @@ var getNewLists = function (modelLists, callback) {
for (var i = 0; i < modelLists.length; i++) {
newList[i] = {};
newList[i].model_id = modelLists[i].id;
if (modelLists[i].tryInfo) {
newList[i].feel_id = modelLists[i].tryInfo.feel_id;
newList[i].fit_size = modelLists[i].tryInfo.fit_size;
newList[i].fit_remark = modelLists[i].tryInfo.fit_remark;
if (modelLists[i].tryInfo.feel_id||modelLists[i].tryInfo.fit_size|| modelLists[i].tryInfo.fit_remark) {
newList[i].feel_id = modelLists[i].tryInfo.feel_id||"";
newList[i].fit_size = modelLists[i].tryInfo.fit_size||"";
newList[i].fit_remark = modelLists[i].tryInfo.fit_remark||"";
}
else {
newList[i].feel_id = "";
... ... @@ -102,7 +107,7 @@ var getNewLists = function (modelLists, callback) {
//详情模态
var Bll = {
toast: function (url, item) {
getAllInfo(item.productSkn, function (data) {
getAllInfo(item.productSkn, item.maxSortId,function (data) {
var a = new common.dialog({
title: "试穿信息",
width: '80%',
... ...
/**
* Created by JiangMin on 2016/3/17.
* 模特管理
*/
var $ = require('jquery');
var common = require('../common/common');
//日期插件
$('.hasDatepicker').fdatepicker({
format: 'yyyy-mm-dd'
});
/**
* 列表显示数据
* @type {common.grid}
*/
var g = new common.grid({
el: '#content-list',
hash: false,
//查询参数
parms: function () {
return {
modelName: common.util.__input('content-filter1'),
beginTime:((new Date($('#beginTime').val())).getTime())/1000||"",
endTime: ((new Date($('#endTime').val())).getTime())/1000||"",
modelType:parseInt($("#aa").val()),
status: parseInt($("#bb").val())
};
},
//列表显示
columns: [
{display: "ID", name: "id"},
{display: "姓名", name: "modelName"},
{
display: "头像", name: "avatar", render: function (item) {
return '<img src="' + item.avatar + '" width="100" height="60"/>'
}
},//图片显示
{display: "身高", name: "height"},
{display: "体重", name: "weight"},
{
display: "胸围", render: function (item) {
var a = item.vitalStatistics.split(/[,|/]/g);
return a[0];
}
},
{
display: "腰围", render: function (item) {
var a = item.vitalStatistics.split(/[,|/]/g);
return a[1];
}
},
{
display: "臀围", render: function (item) {
var a = item.vitalStatistics.split(/[,|/]/g);
return a[2];
}
},
{
display: "创建时间", name: "createTime",
render: function (item) {
var t = new Date(item.createTime * 1000);
var formatted = common.util.__dateFormat(t, "yyyy-MM-dd hh:mm:ss");
return "<p>" + formatted + "</p>";
}
},
{
display: "操作", name: "", render: function (item) {
var arr = [];
arr.push('<a class="btn btn-info update" data-index="' + item.__index + '">修改</a>');
arr.push('<a class="btn btn-danger delete" data-index="' + item.__index + '">删除</a>');
return arr.join('');
}
}
]
});
g.init("/meterManage/tryModel/index1");
var Bll = {
toast: function (url, item, hint) {
var e = new common.edit("#baseform", {
bucket: "modelCard"//真实的
});
//验证身高
e.on("validate", function () {
var height = $.trim($("#height").val());
if (height>250) {
return "身高值应小于250"
}
return true;
});
//验证体重
e.on("validate", function () {
var weight = $.trim($("#weight").val());
if (weight>200) {
return "体重值应小于200"
}
return true;
});
//验证胸围
e.on("validate", function () {
var Bust = $.trim($("#Bust").val());
if (Bust>200) {
return "胸围值应小于200"
}
return true;
});
//验证腰围
e.on("validate", function () {
var waist = $.trim($("#waist").val());
if (waist>200) {
return "腰围值应小于200"
}
return true;
});
//验证臀围
e.on("validate", function () {
var hips = $.trim($("#hips").val());
if (hips>200) {
return "臀围值应小于200"
}
return true;
});
var a = common.dialog.confirm(hint,
common.util.__template2($("#template").html(), item),
function () {
e.submit(url, function (option) {
option.data.modelType = parseInt($("#aa").val());//模特类型,1拍摄模特,2试穿模特
option.data.status =1;//模特状态,默认启用
option.data.height = parseInt($("#height").val());//模特身高
option.data.weight = parseInt($("#weight").val());//模特体重
option.data.vitalStatistics = $("#Bust").val() + '|' + $("#waist").val() + "|" + $("#hips").val();//模特三围,拼接字符串
//console.log("option.data", option.data);
//option.debug = true;//调试状态
option.success = function (res) {
//判断接口请求状态
if (res.data.code == '200') {
g.reload();//重新加载界面
a.close();//关闭模态框
}
else {
//提示出错信息
e.$tip(res.data.message);
}
};
option.error = function () {
};
});
return false;
});
e.init();
}
};
//添加模特--点击事件
$('#add-content').on('click', function () {
var item = {
"__state": "add"
};
Bll.toast('/meterManage/tryModel/addModel', item, "添加模特");
});
//修改模特--点击事件
$(document).on('click', '.update', function () {
var item = g.rows[$(this).data("index")];
var a = item.vitalStatistics.split(/[,|/]/g);
item.Bust = a[0];
item.waist = a[1];
item.hips = a[2];
Bll.toast('/meterManage/tryModel/updateModel', item, "修改模特");
});
//删除--点击事件
$(document).on('click', '.delete', function () {
var item = g.rows[$(this).data("index")];
common.dialog.confirm("警告",
"确认删除?",
function () {
item.status = 0;
common.util.__ajax({
url: '/meterManage/tryModel/updateModel',
data: item
}, function () {
g.reload(1);
});
});
});
//查询按钮--点击事件
$(document).on('click', '#filter-btn', function () {
g.reload(1);
});
... ...
... ... @@ -4,6 +4,10 @@
*/
var $ = require('jquery');
var common = require('../common/common');
//日期插件
$('.hasDatepicker').fdatepicker({
format: 'yyyy-mm-dd'
});
/**
* 列表显示数据
* @type {common.grid}
... ... @@ -53,22 +57,23 @@ var g = new common.grid({
},
{display: "鞋码", name: "shoeSize"},
{display: "衣服尺码", name: "dressSize"},
{
display: "模特卡", name: "modelCard ",hidden:parseInt($("#aa").val())==2 ,render: function (item) {
return '<img src="' + item.modelCard + '" width="100" height="60"/>'
display: "模特卡", name: "modelCard ", render: function (item) {
return '<img src="' + item.modelCard + '" width="100" height="60"/>'
}
},
{
display: "状态", name: "status", render: function (item) {
if (item.status == 1) {
return status = "启用"
return "启用"
}
else {
return status = "禁用"
return "禁用"
}
}
},
{
display: "操作", name: "", render: function (item) {
var arr = [];
... ... @@ -95,6 +100,46 @@ var Bll = {
}
return true;
});
//验证身高
e.on("validate", function () {
var height = $.trim($("#height").val());
if (height>250) {
return "身高值应小于250"
}
return true;
});
//验证体重
e.on("validate", function () {
var weight = $.trim($("#weight").val());
if (weight>200) {
return "体重值应小于200"
}
return true;
});
//验证胸围
e.on("validate", function () {
var Bust = $.trim($("#Bust").val());
if (Bust>200) {
return "胸围值应小于200"
}
return true;
});
//验证腰围
e.on("validate", function () {
var waist = $.trim($("#waist").val());
if (waist>200) {
return "腰围值应小于200"
}
return true;
});
//验证臀围
e.on("validate", function () {
var hips = $.trim($("#hips").val());
if (hips>200) {
return "臀围值应小于200"
}
return true;
});
var a = common.dialog.confirm(hint,
common.util.__template2($("#template").html(), item),
function () {
... ... @@ -103,13 +148,19 @@ var Bll = {
option.data.status = 1;//模特状态,默认启用
option.data.height = parseInt($("#height").val());//模特身高
option.data.weight = parseInt($("#weight").val());//模特体重
option.data.status = 1;//模特状态,默认启用
if (item.__state == 'add') {
option.data.status = 1;//模特状态,默认启用
}
else {
option.data.status = parseInt($("#status").val());//模特状态,默认启用
}
option.data.vitalStatistics = $("#Bust").val() + '|' + $("#waist").val() + "|" + $("#hips").val();//模特三围,拼接字符串
//console.log("option.data", option.data);
//option.debug = true;//调试状态
option.success = function (res) {
//判断接口请求状态
if (res.data.code == '200') {
g.reload();//重新加载界面
g.reload(1);//重新加载界面
a.close();//关闭模态框
}
else {
... ... @@ -129,16 +180,25 @@ var Bll = {
//添加模特--点击事件
$('#add-content').on('click', function () {
var item = {};
var item = {
"__state": "add"
};
Bll.toast('/shotManage/model/addModel', item, "添加模特");
});
var STATUS = {
'1': "启用",
'2': "禁用"
};
//修改模特--点击事件
$(document).on('click', '.update', function () {
var item = g.rows[$(this).data("index")];
item.__state = "update";
var a = item.vitalStatistics.split(/[,|/]/g);
item.Bust = a[0];
item.waist = a[1];
item.hips = a[2];
item.statusname = STATUS[item.status];
Bll.toast('/shotManage/model/updateModel', item, "修改模特");
});
//查询按钮--点击事件
... ...
... ... @@ -8,6 +8,7 @@ var common = require('../common/common');
$('.hasDatepicker').fdatepicker({
format: 'yyyy-mm-dd'
});
/**
* 列表显示数据
* @type {common.grid}
... ... @@ -21,18 +22,18 @@ var g = new common.grid({
productSkn: common.util.__input('content-filter1'),
productSkc: common.util.__input('content-filter2'),
productSku: common.util.__input('content-filter3'),
startTime: common.util.__input('starttime'),
endTime: common.util.__input('endtime')
startTime:((new Date($('#starttime').val())).getTime())/1000,
endTime: ((new Date($('#endtime').val())).getTime())/1000
};
},
//列表显示
columns: [
{display: "SKN", name: "productSkn"},
{
display: "最后上传时间", name: "updateTime",
display: "最后上传时间", name: "lastAddTime",
render: function (item) {
var t = new Date(item.updateTime * 1000);
var formatted = common.util.__dateFormat(t, "yyyy-MM-dd ");
var t = new Date(item.lastAddTime * 1000);
var formatted = common.util.__dateFormat(t, "yyyy-MM-dd hh/mm/ss");
return "<p>" + formatted + "</p>";
}
},
... ... @@ -113,7 +114,7 @@ var Bll = {
valid_extensions: ['png', 'jpg', 'jpeg'],
onComplete: function (response) {
if (response.status && response.code == 200) {
console.log("response", response);
//console.log("response", response);
var data = {
"fileName": response.data,
"originalName": "1035027.jpg"
... ...
... ... @@ -238,11 +238,12 @@ function saveDecoration(submitStatus){
jsonClone = $.extend(true,{},jsonMain);
showMain();
}else{
common.util.__tip("提交审核成功!","success");
location.href="/supplier/shop/decoration";
setTimeout(function() {
location.href="/supplier/shop/decoration";
}, 1000);
}
}
},true);
});
}
//Ajax审核,审核通过:300,驳回:900
function checkDecoration(checkStatus,comment){
... ... @@ -256,7 +257,9 @@ function checkDecoration(checkStatus,comment){
}
},function(rs){
common.util.__tip("审核通过成功!","success");
location.href="/supplier/check/index";
setTimeout(function() {
location.href="/supplier/check/index";
}, 1000);
},true);
}else{
common.util.__ajax({
... ... @@ -267,7 +270,9 @@ function checkDecoration(checkStatus,comment){
}
},function(rs){
common.util.__tip("审核驳回成功!","success");
location.href="/supplier/check/index";
setTimeout(function() {
location.href="/supplier/check/index";
}, 1000);
},true);
}
}
... ... @@ -1007,7 +1012,7 @@ function untilEditorEvent(id){
}
});
$("#"+id+" nav").hide();
$(".modal-dialog").css("width","1000px");
$(".modal-dialog").css("width","900px");
$(".modal-dialog .modal-body .editor-dialog").css("max-height","650px");
$(".modal-dialog .modal-body .editor-dialog").css("overflow-y","auto");
$(".modal-dialog .modal-body .editor-dialog").css("overflow-x","hidden");
... ...
{
"name": "yohobuy-portal",
"version": "0.2.1",
"version": "0.3.4",
"description": "yohobuy-portal",
"keywords": [],
"homepage": "",
... ...
... ... @@ -2,7 +2,7 @@
pc端店铺模板css
*/
.editor-dialog ul.upload-image-list{padding: 0 10px}
.editor-dialog input.numInput{ width: 50px}
.editor-dialog input.numInput{ width: 40px}
.editorTitle input.error,.editor-dialog input.error{ border: 2px solid #ff0000}
.editorTip{ color: #ff0000}
... ...
... ... @@ -524,7 +524,7 @@ exports.res = [{
bottons: '{"edit":true,"columnsHidisFr":true}',
gridurl: '/goods/price/list',
domain: exports.domain,
download: '/common/batchUpdatePrice.xlsx'
download: 'batchUpdatePrice'
}
}, {
//代销变价 -> 列表数据
... ... @@ -640,7 +640,7 @@ exports.res = [{
bottons: '{"edit":true,"columnsHidisFr":true}',
gridurl: '/goods/brandCooperation/list',
domain: exports.domain,
download: '/common/brandCooperation.xlsx'
download: 'brandCooperation'
}
}, {
//品牌合作模式 -> 列表数据
... ...
exports.domain =require('../config/common.js').domain;
// exports.domain="http://172.16.6.240:8088/platform";
// exports.domain = "http://172.16.6.227:8088/platform";
exports.res = [
{//基础商品列表
route:'/resource/manager/content',
method:'GET',
view:'pages/resource/content',
src: '/resource/content'
}
]
\ No newline at end of file
... ...
//exports.domain = require('../config/common.js').domain;
exports.domain = require('../config/common.js').domain;
//exports.domain = 'http://localhost:30012';
exports.domain = 'http://172.16.6.115:8080/platform';
//exports.domain = 'http://172.16.6.115:8080/platform';
exports.res = [
{
... ...
... ... @@ -11,21 +11,24 @@ exports.res = [
{
route: '/meterManage/tryModel/index',//访问路由
method: 'GET',//方法
view: 'pages/shotManage/model',//视图
src: '/shotManage/model',//控制层
view: 'pages/meterManage/tryModel',//视图
src: '/meterManage/tryModel',//控制层
data: {
type: 2,
typeName:'试穿模特管理'
typeName:'试穿模特管理',
status:1
}
},
//api请求数据
{
route: '/shotManage/model/getAllModels',
route: '/meterManage/tryModel/index1',
method: 'POST',
url: '/model/queryModelList',
params: [
{name: 'englishName', type: 'string'},//英文名
{name: 'modelName', type: 'string'},//名称
{name: 'beginTime', type: 'Number'},
{name: 'endTime', type: 'Number'},
{name: 'modelType', type: 'Number'},//模特类型:1 拍摄模特 2 试穿模特
{name: 'status', type: 'Number'},//模特状态:0 禁用 1 启用
{name: 'page', type: 'Number'},
{name: 'size', type: 'Number'}
... ... @@ -33,38 +36,29 @@ exports.res = [
},
//新增模特
{
route: '/shotManage/model/addModel',
route: '/meterManage/tryModel/addModel',
method: 'POST',
url: '/model/addModel',
params: [
{name: 'englishName', type: 'string'},//英文名
{name: 'height', type: 'Number'},//身高
{name: 'dressSize', type: 'string'},//穿衣尺码
{name: 'modelName', type: 'string'},//名称
{name: 'modelType', type: 'Number'},//模特类型:1 拍摄模特 2 试穿模特
{name: 'nationality', type: 'string'},//国籍
{name: 'status', type: 'Number'},//模特状态:0 禁用 1 启用
{name: 'shoeSize', type: 'string'},//鞋尺码
{name: 'vitalStatistics', type: 'string'},//三围
{name: 'weight', type: 'Number'},//体重
{name: 'avatar', type: 'string'},//头像
{name: 'modelCard', type: 'string'}//模特卡
{name: 'avatar', type: 'string'}//头像
]
},
//修改模特
{
route: '/shotManage/model/updateModel',
route: '/meterManage/tryModel/updateModel',
method: 'POST',
url: '/model/updateModel',
params: [
{name: 'id', type: 'Number'},//主键
{name: 'englishName', type: 'string'},//英文名
{name: 'height', type: 'Number'},//身高
{name: 'dressSize', type: 'string'},//穿衣尺码
{name: 'modelName', type: 'string'},//名称
{name: 'modelType', type: 'Number'},//模特类型:1 拍摄模特 2 试穿模特
{name: 'nationality', type: 'string'},//国籍
{name: 'shoeSize', type: 'string'},//鞋尺码
{name: 'status', type: 'Number'},//模特状态:0 禁用 1 启用
{name: 'vitalStatistics', type: 'string'},//三围
{name: 'weight', type: 'Number'},//体重
... ...
exports.staticDir = {"test":{"path":"/dist"},"preview":{"path":"http://cdn.yoho.cn/yohobuy-portal/0.3.2","md5":""},"production":{"path":"http://cdn.yoho.cn/yohobuy-portal/0.3.2","md5":""}}
\ No newline at end of file
exports.staticDir = {"test":{"path":"/dist"},"preview":{"path":"http://cdn.yoho.cn/yohobuy-portal/0.3.4","md5":""},"production":{"path":"http://cdn.yoho.cn/yohobuy-portal/0.3.4","md5":""}}
\ No newline at end of file
... ...
... ... @@ -2,6 +2,7 @@ var authService = require('../service/auth');
var uploader=require('../service/upload');
var down=require('../service/down');
var ueditor=require('../service/ueditor');
var link=require('../service/link');
module.exports = {
'/auth_bak':function(req, res){
... ... @@ -81,5 +82,8 @@ module.exports = {
},
'/ajax/ueditor':function(req,res){
ueditor.uploadFile(req,res);
},
'/ajax/link/:name':function(req,res){
link.linkFile(req,res);
}
}
\ No newline at end of file
... ...
var request = require('request');
var _ = require('lodash');
var fs = require('fs');
var path=require('path');
var domain = require('../../config/common.js').domain;
exports.linkFile = function(req, res) {
request.get(domain+"/common/"+req.params.name+".xlsx").pipe(res);
}
\ No newline at end of file
... ...
... ... @@ -70,7 +70,7 @@
<td colspan="2">
1、上传文件必须是<span style="color:red;">.xlsx</span>文件<br>
2、第一行标题栏:<span style="color: #67D267;">货品名称、厂家编号、一级分类、二级分类、三级分类、四级分类、性别、货品年、货品季、吊牌价、销售价、色系、厂家颜色、款型、尺码、条码、能否补货、SKN计数</span><br>
3、<a href="{{domain}}/common/baseproduct.xlsx">下载样例</a>
3、<a href="/ajax/link/baseproduct">下载样例</a>
</td>
</tr>
</table>
... ...
... ... @@ -36,7 +36,7 @@
<td colspan="2">
1、上传文件必须是<span style="color:red;">.xlsx</span>文件<br>
2、第一行标题栏:<span style="color: #67D267;">SKU|补货</span><br>
3、<a href="{{domain}}/common/batchModifySupply.xlsx">下载样例</a>
3、<a href="/ajax/link/batchModifySupply">下载样例</a>
</td>
</tr>
<tr>
... ... @@ -49,7 +49,7 @@
<td colspan="2">
1、上传文件必须是<span style="color:red;">.xlsx</span>文件<br>
2、第一行标题栏:<span style="color: #67D267;">SKU|奥莱</span><br>
3、<a href="{{domain}}/common/batchModifyOutlet.xlsx">下载样例</a>
3、<a href="/ajax/link/batchModifyOutlet">下载样例</a>
</td>
</tr>
</table>
... ...
... ... @@ -29,14 +29,14 @@
<div class="panel-body" id="basicInfo">
</div>
<div class="panel-heading">
<!-- <div class="panel-heading">
<h4 class="panel-title">非销售属性</h4>
</div>
<div class="panel-body">
<div class="row">
<div id="attributeTable"></div>
</div>
</div>
</div> -->
<div class="panel-heading">
<h4 class="panel-title">销售属性</h4>
... ... @@ -48,7 +48,7 @@
<p>
{{#data}}
{{#each list}}
<button type="button" class="btn btn-default sortadd btn-xs" data-id="{{id}}">{{colorName}}(+)</button>
<button type="button" class="btn btn-default sortadd btn-xs" data-id="{{id}}">{{colorName}}</button>
{{/each}}
{{/data}}
</p>
... ... @@ -64,7 +64,7 @@
<div class="row">
<div class="col-sm-8 col-sm-offset-2">
<a class="btn btn-default" href="/supplier/baseproduct/index">取消</a>
<button type="submit" class="btn btn-success mr5" data-loading-text="提交审核中..." id="btnReview">提交审核</button>
<button type="submit" class="btn btn-success mr5" data-loading-text="保存中..." id="btnReview">保存</button>
</div>
</div>
</div>
... ... @@ -374,7 +374,7 @@
[[if inputType=='select']]
<select class="form-control attr_input" style="width: 280px" data-index='[[__index]]' value="[[__val||'']]" [[required]]>
<option value="">请选择</option>
<option value="">请选择[[attributeName]]</option>
[[each idNameList as item index ]]
<option value="[[item.id]]">[[item.text]]</option>
[[/each]]
... ...
... ... @@ -29,8 +29,8 @@
<div class="panel-body">
<div class="row">
<div class="panel-col">
<input type="number" id="productSkn" value="" class="form-control" placeholder="SKN"
style="height: 39px;"/>
<input type="text" id="productSkn" value="" class="form-control" placeholder="SKN"
style="height: 39px;" maxlength="9" />
</div>
<div class="panel-col">
<input type="text" id="productName" class="form-control" placeholder="商品名称" style="height: 39px;"/>
... ...
... ... @@ -126,16 +126,16 @@
<tr>
<th>
<span>[[item.productSkc]]</span>
<span>[[item.factoryGoodsName||""]]</span>
<span>[[item.goodsName]]</span>
</th>
<th>
<span>[[_item.productSku]]</span>
<span>[[_item.sizeName]]</span>
</th>
<th>[[_item.salePrice]]</th>
<th>[[item.factoryCode]]</th>
<th>[[item.modelCode]]</th>
<th>[[_item.barCode]]</th>
<th>[[item.goodsName]]</th>
<th>[[item.factoryGoodsName]]</th>
[[if _item.isSuppled=="Y"]]
<th></th>
[[else]]
... ...
... ... @@ -222,7 +222,7 @@
</div>
<div class="form-group">
<label class="col-sm-2 control-label">调性指数<span class="red">*</span></label>
<label class="col-sm-2 control-label">调性指数</label>
<div class="col-sm-2">
<input type="number" id="brandTonality" name="brandTonality" class="form-control" placeholder="调性指数(范围:1-100)" value="{{brandTonality}}">
</div>
... ...
... ... @@ -165,7 +165,7 @@
<input id="upload-input" name="file" class="btn btn-default excel-upload" type="file">
</span>
<a class="excel-model" href="{{domain}}{{download}}">表头下载</a>
<a class="excel-model" href="/ajax/link/{{download}}">表头下载</a>
<input id="sure-change" class="btn btn-primary" type="button" value="确定变价">
</div>
... ...
... ... @@ -40,7 +40,7 @@
<td colspan="2">
1、上传文件必须是<span style="color:red;">.xlsx</span>文件<br>
2、第一行标题栏:<span style="color: red;">试穿模特ID|sku|试穿描述|试穿备注</span><br>
3、<a href="{{domain}}/common/productModelTry.xlsx">下载样例</a>
3、<a href="/ajax/link/productModelTry">下载样例</a>
</td>
</tr>
</table>
... ...
<!--模特管理界面-->
<div class="pageheader">
<div class="media">
<div class="pageicon pull-left">
<i class="fa fa-th-list"></i>
</div>
<div class="media-body">
<ul class="breadcrumb">
<li><a href=""><i class="glyphicon glyphicon-home"></i></a></li>
<li><a href="">模特管理</a></li>
<li>模特管理</li>
</ul>
<div>
<div style="width: 30%;float: left;">
<h4>{{typeName}}</h4>
</div>
</div>
</div>
</div>
</div>
<div class="contentpanel">
<div class="panel panel-default" style="...">
<div class="panel-heading">
<a class="btn btn-success " id="add-content"><i class="fa fa-plus"></i> 添加</a>
</div>
<div class="panel-body">
<div class="row">
<div class="panel-col2">
<input type="text" id="beginTime" class="form-control panel-input hasDatepicker " name="begin_time"
placeholder="开始时间" value="" >
</div>
<div class="panel-col2">
<input type="text" id="endTime" class="form-control panel-input hasDatepicker " name="end_time"
placeholder="结束时间" value="" >
</div>
<div class="col-xs-2 col-sm-2 col-md-2 col-lg-2">
<input type="text" value="" name="modelName" id="content-filter1" placeholder="姓名"
class="form-control">
</div>
<a id="filter-btn" href="javascript:;" class="btn btn-info">查询</a>
</div>
</div>
</div>
<div id="content-list"></div>
<input type="hidden" id="aa" value="{{type}}"/>
<input type="hidden" id="bb" value="{{status}}"/>
</div>
<script type="text/template" id="template">
<div class="rows" id="baseform" >
<div class="form-group">
<label class="col-sm-2 control-label" for="avatar">头像</label>
<input type="hidden" value="[[id]]" id="id"/>
<div class="col-sm-6">
<input type="file" value="[[avatar]]" class="form-control avatar" id="avatar" name="avatar" placeholder="头像" required="required"/>
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label" for="modelName">姓名</label>
<div class="col-sm-3">
<input type="text" value="[[modelName]]" class="form-control" id="modelName" placeholder="姓名" required="required"/>
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label" for="height">身高</label>
<div class="col-sm-3">
<input type="number" value="[[height]]" class="form-control" id="height"
match="numbers" placeholder="身高(cm)" required="required"/>
</div>
<label class="col-sm-2 control-label" for="weight">体重</label>
<div class="col-sm-3">
<input type="number" value="[[weight]]" class="form-control" id="weight"
match="numbers" placeholder="体重(kg)" required="required"/>
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label">三围</label>
<div class="col-sm-3">
<input type="number" value="[[Bust]]" class="form-control" id="Bust"
match="numbers" placeholder="胸围(cm)" required="required"/>
</div>
<div class="col-sm-3">
<input type="number" value="[[waist]]" class="form-control" id="waist"
match="numbers" placeholder="腰围(cm)" required="required"/>
</div>
<div class="col-sm-3">
<input type="number" value="[[hips]]" class="form-control" id="hips"
match="numbers" placeholder="臀围(cm)" required="required"/>
</div>
</div>
</div>
</script>
... ...
... ... @@ -118,10 +118,10 @@
<div class="form-group col-sm-100">
<label class="col-sm-2 control-label">活动时间</label>
<div class="panel-col1 col-sm-4">
<input type="text" id="startTime" jsaction="time:end:endTime" class="form-control panel-input hasDatepicker " name="start_time" placeholder="开始时间" value="{startTime}">
<input type="text" id="startTime" jsaction="time:end:endTime" readonly class="form-control panel-input hasDatepicker " name="start_time" placeholder="开始时间" value="{startTime}">
</div>
<div class="panel-col1 col-sm-4">
<input type="text" id="endTime" jsaction="time:start:startTime" class="form-control panel-input hasDatepicker" name="end_time" placeholder="结束时间" value="{endTime}">
<input type="text" id="endTime" jsaction="time:start:startTime" readonly class="form-control panel-input hasDatepicker" name="end_time" placeholder="结束时间" value="{endTime}">
</div>
</div>
</div>
... ...
... ... @@ -121,12 +121,12 @@
<label class="col-sm-2 control-label">活动时间</label>
<div class="panel-col1 col-sm-4">
<input type="text" id="startTime" jsaction="time:end:endTime"
class="form-control panel-input hasDatepicker " name="start_time" placeholder="开始时间"
class="form-control panel-input hasDatepicker " readonly name="start_time" placeholder="开始时间"
value="{startTime}">
</div>
<div class="panel-col1 col-sm-4">
<input type="text" id="endTime" jsaction="time:start:startTime"
class="form-control panel-input hasDatepicker" name="end_time" placeholder="结束时间"
class="form-control panel-input hasDatepicker" readonly name="end_time" placeholder="结束时间"
value="{endTime}">
</div>
</div>
... ...
<div class="pageheader">
<div class="media">
<div class="pageicon pull-left">
<i class="fa fa-home"></i>
</div>
<div class="media-body">
<ul class="breadcrumb">
<li><a href="/"><i class="glyphicon glyphicon-home"></i></a></li>
<li>Dashboard</li>
</ul>
<h4>Dashboard</h4>
</div>
</div>
</div>
<div class="contentpanel">
<div class="rows">
</div>
</div>
\ No newline at end of file
... ...
... ... @@ -37,7 +37,7 @@
<div class="panel-col">
<select name="status" id="status-filter" tabindex="-1" title=""
class="form-control">
<option value="">全部</option>
<option value="-1">全部</option>
<option value="0">禁用</option>
<option value="1">启用</option>
</select>
... ... @@ -66,13 +66,16 @@
<div class="col-sm-3">
<input type="text" value="[[modelName]]" class="form-control" id="modelName" placeholder="姓名" required="required"/>
</div>
<label class="col-sm-2 control-label" for="englishName">英文名</label>
<div class="col-sm-3">
<input type="text" value="[[englishName]]" class="form-control" id="englishName" placeholder="英文名" required="required"/>
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label" for="nationality">国籍</label>
... ... @@ -81,6 +84,7 @@
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label" for="height">身高</label>
... ... @@ -125,7 +129,6 @@
match="numbers" placeholder="臀围(cm)" required="required"/>
</div>
</div>
[[if {{type}}==1]]
<div class="form-group">
<label class="col-sm-2 control-label" for="modelCard">模特卡</label>
... ... @@ -133,6 +136,15 @@
<input type="file" value="[[modelCard]]" class="form-control modelCard" id="modelCard" name="modelCard" placeholder="模特卡" required="required"/>
</div>
</div>
[[if __state=='update']]
<div class="form-group">
<label class="col-sm-2 control-label">状态</label>
<div class="col-sm-8">
<label style="cursor: pointer;"><input type="radio" name="status" value="1">启用</label>
<label style="cursor: pointer;"><input type="radio" name="status" value="2">禁用</label>
</div>
<input type="hidden" id="status" value="[[status]]" for="radio">
</div>
[[/if]]
</div>
</script>
... ...
... ... @@ -23,14 +23,14 @@
<div class="panel panel-default" style="...">
<div class="panel-body">
<div class="row">
<!--<div class="panel-col2">-->
<!--<input type="text" id="starttime" class="form-control panel-input hasDatepicker" name="start_time"-->
<!--placeholder="开始时间" value="">-->
<!--</div>-->
<!--<div class="panel-col2">-->
<!--<input type="text" id="endtime" class="form-control panel-input hasDatepicker" name="end_time"-->
<!--placeholder="结束时间" value="">-->
<!--</div>-->
<div class="panel-col2">
<input type="text" id="starttime" class="form-control panel-input hasDatepicker time" name="start_time"
placeholder="开始时间" value="">
</div>
<div class="panel-col2">
<input type="text" id="endtime" class="form-control panel-input hasDatepicker time" name="end_time"
placeholder="结束时间" value="">
</div>
<div class="panel-col">
<input type="text" value="" name="productSkn" id="content-filter1" placeholder="skn"
class="form-control">
... ...
... ... @@ -26,18 +26,10 @@
</div>
<div class="panel-body">
<div class="row">
<!--<div class="panel-col">-->
<!--<select name="status" id="status-filter" tabindex="-1" title=""-->
<!--class="form-control">-->
<!--<option value="">状态</option>-->
<!--<option value="1">可用</option>-->
<!--<option value="0">不可用</option>-->
<!--</select>-->
<!--</div>-->
<div class="panel-col">
<select name="type" id="type-filter" tabindex="-1" title=""
class="form-control">
<option value="">类型</option>
class="form-control" required="required">
<option value="-1">类型</option>
<option value="1">拍摄类型</option>
<option value="2">拍摄风格</option>
<option value="3">模特类型</option>
... ... @@ -58,7 +50,8 @@
<div class="form-group">
<label class="col-sm-2 control-label" for="type">选择类别</label>
<div class="col-sm-6">
<select id="type" class="form-control" value="[[type]]">
<select id="type" class="form-control" value="[[type]]" placeholder="类别" required="required">
<option value="-1">请选择 </option>
<option value="1">拍摄类型 </option>
<option value="2">拍摄风格</option>
<option value="3">模特类型</option>
... ... @@ -71,7 +64,7 @@
<div class="form-group">
<label class="col-sm-2 control-label" for="name">名称</label>
<div class="col-sm-6">
<input type="text" value="[[name]]" class="form-control" id="name" />
<input type="text" value="[[name]]" class="form-control" id="name" placeholder="名称" required="required"/>
</div>
</div>
... ...
... ... @@ -37,7 +37,7 @@
</select>
</div>
</div>
<div class="col-sm-3">
<div id="operations" class="col-sm-3">
<div class="moduleView" style="display: none; text-align: right; margin-top: -10px">
<input type="button" class="btn btn-default " value="返回" onclick="history.go(-1)">
</div>
... ... @@ -178,7 +178,11 @@
<!--新品上架-->
<div class="model-show">
<div class="model-showTitle">
[[if resources.newProducts.data.length > 0]]
<div class="showName"><span>新品上架&nbsp;&nbsp;NEW</span></div>
[[else]]
<div class="showName model-editor" data-toggle="editor-newProduct" data-title="新品上架商品编辑"><span>新品上架&nbsp;&nbsp;NEW</span></div>
[[/if]]
<div class="showTab model-editor" data-toggle="editor-newGoodTab" data-title="新品上架标签编辑">
<ul>
[[each resources.goodsTabBar.data.new as item _index]]
... ... @@ -207,7 +211,11 @@
<!--人气单品-->
<div class="model-show">
<div class="model-showTitle">
[[if resources.hotProducts.data.length > 0]]
<div class="showName"><span>人气单品&nbsp;&nbsp;NEW</span></div>
[[else]]
<div class="showName model-editor" data-toggle="editor-hotProduct" data-title="人气单品商品编辑"><span>人气单品&nbsp;&nbsp;NEW</span></div>
[[/if]]
<div class="showTab model-editor" data-toggle="editor-hotGoodTab" data-title="人气单品标签编辑">
<ul>
[[each resources.goodsTabBar.data.hot as item _index]]
... ...
... ... @@ -42,7 +42,7 @@
<div class="form-group">
<label class="col-sm-2 control-label">营业执照号 <span class="red">*</span></label>
<div class="col-sm-8">
<input type="number" id="supplierCode" placeholder="营业执照号" class="form-control" required value="{{supplierCode}}">
<input type="text" id="supplierCode" placeholder="营业执照号" class="form-control" required value="{{supplierCode}}">
</div>
</div>
... ...