// ========================================================================== 请求数据 // 导购后台 请求地址 function gethttp () { var hcj = "http://api.haicaojie.com/hcj"; // 海草街 var flq = "http://api.flqapp.com/fanli"; // 返利券 var h122 = "http://192.168.1.122:8080/fanli"; // 辉哥电脑 var h200 = "http://192.168.1.200:8088/fanli"; // 喻健电脑服务器 var h253 = "http://192.168.1.253:8080/fanli"; // 公司253电脑 var myhttp = "http://193.112.42.128/fanli"; // 外网IP测试 return flq; } // ========================================================================== 最初执行 // 要引入的头文件获取(外层) doui.importSet([ 'css/font-awesome.min.css', 'css/mystyle.css', 'http://cdn.yeshitv.com/js/jquery.min.js', 'http://cdn.yeshitv.com/js/vue.min.js', ]); // ========================================================================== 通用数据 // 操作人员登录cookie function adminCookieGet () { var back = { id: "", userName: "", passWord: "", nickName: "", }; var cookdata = doui.cookieGet("adminInfo"); if (cookdata) { back.id = cookdata.id; back.userName = cookdata.account; back.passWord = cookdata.pwd; back.nickName = cookdata.name; } else { doui.showToast("登录失效,请重新登录"); } return back; } // 保存筛选项,参数: 1. 缓存文件名字 2. topSearch对象 3. optScreen对象 4. OptSort对象 5. table对象 function saveOpt (nameC, topSearchC, optScreenC, optSortC, tableC) { // 新建筛选对象 var newObj = { topSearch: { strKey: '' }, optScreen: {}, optSort: {}, table: { yema: 1 }, }; newObj.topSearch.strKey = topSearchC.strKey; // 搜索字段 newObj.optScreen = optScreenC; // 筛选项 newObj.optSort = optSortC; // 排序项 newObj.table.yema = tableC.yema; // 表格页码 // 转化为字符串 var mydata = JSON.stringify(newObj); doui.cookieSet(nameC, mydata, 8); console.log("筛选记录已保存"); } function getOpt (nameC, topSearchC, optScreenC, optSortC, tableC) { var mydata = doui.cookieGet(nameC); if (mydata) { // 转化为对象集 var newObj = mydata; // 替换设置项 topSearchC.strKey = newObj.topSearch.strKey; // 搜索字段 tableC.yema = newObj.table.yema; // 表格页码 // 筛选项 for (var k in newObj.optScreen) { optScreenC[k].result = newObj.optScreen[k].result; } // 排序项 for (var k in newObj.optSort) { optSortC[k].result = newObj.optSort[k].result; } doui.cookieDel(nameC); console.log("筛选记录已设置,并且删除缓存"); } } // 商品加入备选,参数: 1. 保存商品的组 function goodsGroupSet (zuC) { if (zuC && zuC.length > 0) { // 从cookie中获取已经有的 var cookie = doui.cookieGet('goodsGroup'); var goodsGroup = new Array(); if (cookie) { goodsGroup = cookie; } // 串联2个数组 goodsGroup = goodsGroup.concat(zuC); var chuChong = unique(goodsGroup); var strJson = JSON.stringify(chuChong); doui.cookieSet('goodsGroup', strJson, 8); doui.showToast('加入备选成功'); } /* { auctionId: '', // 商品id title: '', // 商品名称 pictUrl: '', // 商品图片 } * */ } function goodsGroupGet () { var back = []; var cookie = doui.cookieGet('goodsGroup'); if (cookie) { back = cookie; } return back; } function goodsGroupDel () { doui.cookieDel('goodsGroup'); } // 页面跳转 function pageToUrl (urlC) { window.location.href = urlC; } // 页面重定向 function pageReplaceUrl (urlC) { window.location.replace(urlC); } // 页面窗口新建 function pageOpenUrl (urlC) { window.open(urlC); } // ========================================================================== 表格操作 // // ------------------------------------------------------------------ 1. 筛选区域 // 初始化 具体筛选项, 参数: 1. 该项全设置对象 function initOptScreen (objC) { if (objC.type == "xuan" || objC.type == "text") { objC.result = ""; } else if (objC.type == "texts" || objC.type == "dates") { objC.result.min = ""; objC.result.max = ""; } else if (objC.type == "datetime") { objC.result.date = ""; objC.result.time = ""; } else if (objC.type == "time") { objC.result.day = "12小时"; objC.result.time = "03:00"; } /* 1. 选择型设置 laiYuan: { value: "商品来源", type: "xuan", child: [ { value: "淘宝", key: "0" }, { value: "天猫", key: "1" }, ], result: "", }, 2. 单项输入型设置 xiaoLiang: { value: "最低销量", type: "text", child: [ { value: "100", key: "100" }, { value: "500", key: "500" }, ], result: "", }, 3. 大小输入型设置 money: { value: "售价", type: "texts", child: [ { value: "¥0~¥50", key: { min:"0", max:"50"} }, { value: "¥1000以上", key: { min:"1000", max:""} }, ], result: { min: "", max: "" }, }, 4. 前后日期范围型设置(年-月-日) time: { value: "日期范围", type: "dates", child: [], result: { min: "", max: "" }, }, 5. 日期+时间型设置 datetime: { value: "结束时间", type: "datetime", child: [], result: { date: "", time: "" }, }, */ } // 点击 具体筛选项, 参数: 1. 该项全设置对象 2. 具体点击元素 function clickOptScreenChild (objC, itemC) { if (objC.type == "xuan" || objC.type == "text") { // 如果是已经选中过的 if (itemC.key == objC.result) { initOptScreen(objC); } // 第一次选中 else { // 初始化所有选取 initOptScreen(objC); // 设置结果赋值 objC.result = itemC.key; } } else if (objC.type == "texts") { // 如果是已经选中过的 if (itemC.key.min == objC.result.min && itemC.key.max == objC.result.max) { initOptScreen(objC); } // 第一次选中 else { // 初始化所有选取 initOptScreen(objC); // 设置结果赋值 objC.result.min = itemC.key.min; objC.result.max = itemC.key.max; } } } // ------------------------------------------------------------------ 2. 排序区域 // 初始化 全部排序选项, 参数: 1. 排序设置对象 function initOptSort (objC) { for (var k in objC) { objC[k].result = ""; } /* 排序 格式 optSort: { // 权重排序 weight: { value: "权重", down: "1", up: "2", result: "" }, // 创建时间排序 creatTime: { value: "创建时间", down: "3", up: "4", result: "" }, }, */ } // 点击 某个排序选项, 参数: 1. 排序设置对象 function clickOptSort (objC, itemC, callback) { if (callback == null) { callback = function () {}; } // 第一次点击 if (itemC.result != itemC.down && itemC.result != itemC.up) { // 初始化选择 initOptSort(objC); // 如果该降序存在 让结果为此选项的降序 if (itemC.down != null) { itemC.result = itemC.down; } // 否则为升序 else if (itemC.up != null) { itemC.result = itemC.up; } } // 第二次及以上点击 else { // 1. 已经为降序 if (itemC.result == itemC.down) { if (itemC.up != null) { itemC.result = itemC.up; } else { itemC.result = ""; } } // 2. 已经为升序 else if (itemC.result == itemC.up) { itemC.result = ""; } } callback(); } // 获取 当前选择结果,参数: 1. 排序设置对象 function getOptSortResult (objC) { var back = ""; for (var k in objC) { if (objC[k].result.length > 0) { back = objC[k].result; break; } } return back; } // ------------------------------------------------------------------ 3. 选择区域 // 初始化 批量操作,参数: 1. 表格列表对象 2. 批量对象 function initPi (listC, piC) { // 是否显示批量处理弹出框 piC.show = false; // 是否已经全部选中 piC.hadAllXuan = false; // 让表格每一行都初始化为 未选中 for (var i = 0; i < listC.length; i++) { listC[i].xuan = false; } /* 批处理 格式 pi: { show: false, // 是否显示操作弹框 hadAllXuan: false, // 是否点击了全选 }, */ } // 某一行点击,参数: 1. 表格列表对象 2. 该选择行对象 3. 批量对象 function checkTr (listC, itemC, piC) { // 该行反选 if (itemC.xuan && itemC.xuan == true) { itemC.xuan = false; piC.hadAllXuan = false; } else { itemC['xuan'] = true; // 查看是否已经全选 var xuan_not = 0; for (var i = 0; i < listC.length; i++) { if (listC[i].xuan == false) { xuan_not++; break; } } // 判断是否已经全选 if (xuan_not <= 0) { piC.hadAllXuan = true; } else { piC.hadAllXuan = false; } } } // 全选点击,参数: 1. 表格列表对象 2. 批量对象 function clickAllXuan (listC, piC) { // 1. 还未全选 if (piC.hadAllXuan == false) { for (var i = 0; i < listC.length; i++) { listC[i].xuan = true; } piC.hadAllXuan = true; } // 2. 已经全选了 else { for (var i = 0; i < listC.length; i++) { listC[i].xuan = false; } piC.hadAllXuan = false; } } // 批处理前置行为 获取选中项, 参数: 1. 表格列表数据 function getTableListXuaned (listC) { var back = { xuanNum: 0, xuanList: [], }; // 已经选中数量 var xuanHad = 0; var xuanList = new Array(); for (var i = 0; i < listC.length; i++) { if (listC[i].xuan == true) { xuanHad++; xuanList.push(listC[i]); } } // 返回赋值 back.xuanNum = xuanHad; back.xuanList = xuanList; return back; } // ------------------------------------------------------------------ 4. 翻页区域 // 底部页码输入 直接跳转,参数: 1. 页码输入组件的id或class 2. 表格对象 function yemaZhuandao (mingC, tableC, callback) { if (callback == null) { callback = function () {}; } // 未输入直接退出 if ($(mingC).val() && $(mingC).val().length > 0) { // 获取输入的页码 var mo = parseInt($(mingC).val()); // 判断页码合服规范 if (mo < 1 || mo > tableC.yemamax) { doui.showToast("页码不在范围内"); } // 将 选择的页码赋值 请求该页数据 else { tableC.yema = mo; tableC.list = new Array(); callback(); } } } // 上下翻页,参数: 1. 翻页方向 2. 表格对象 function yemaChange (typeC, tableC, callback) { if (callback == null) { callback = function () {}; } // 点击上一页 if (typeC=="shang" && tableC.yema>1) { tableC.yema--; tableC.list = new Array(); callback(); } // 点击下一页 else if (typeC=="xia" && !tableC.yemamax) { tableC.yema++; tableC.list = new Array(); callback(); } else if (typeC=="xia" && tableC.yema