| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803 |
- var ids = helper.request.queryString("ids");
- var ajaxUrl;
- var indexNum = 0;
- var previous = ''; //项目名称切换前的值
- var planSdate = ''; //提示信息 计划开始执行的日期;
- var channel = 1; //来源渠道
- $(function() {
- //使用期限
- laydate.render({
- elem: '#startDate',
- type: 'datetime',
- range: '~',
- theme: '#249fea'
- });
- laydate.render({
- elem: '#expirytime',
- range: '~',
- btns: ['now', 'confirm'],
- theme: '#249fea',
- min: helper.DateFormat.getNowDate(),
- done: function(value, date, endDate) {
- planSdate = value.split(' ~ ')[0];
- if ($('#planinterval').val() == 1) {
- getMsgTips1();
- } else {
- getMsgTips();
- }
- }
- });
- laydate.render({
- elem: '#sstart_time',
- type: 'time',
- theme: '#249fea',
- btns: ['now', 'confirm'],
- format: 'HH:mm',
- done: function(value, date, endDate) {
- getMsgTips(value);
- },
- });
- laydate.render({
- elem: '#sstop_time',
- type: 'time',
- theme: '#249fea',
- btns: ['now', 'confirm'],
- format: 'HH:mm',
- done: function(value, date, endDate) {
- getMsgTips('', value);
- },
- });
- $('#sstart_time').val('00:00');
- $('#sstop_time').val('23:59');
- helper.getDropList.getProlistDrop($('#projectid'))
- .then(function() {
- $('#projectid').on('change', function() {
- $('#building').selectpicker('destroy');
- $('#floor').selectpicker('destroy');
- $('#floor').empty();
- $('#floor').append("<option value=''>请选择楼层</option>");
- helper.getDropList.getBuildlistDrop($('#building'), $(this).val());
- });
- $('#building').on('change', function() {
- $('#floor').selectpicker('destroy');
- helper.getDropList.getFloorlistDrop($('#floor'), $(this).val());
- });
-
- // getAddressSelect($('#deliverylist'), $('#projectid').val(), 0); //发货
- // getAddressSelect($('#receiverlist'), $('#pro_title').val(), 1);//1收货
- })
- .then(function() {
- if (ids) {
- getDetail(ids);
- ajaxUrl = "distributionapi/api/DistriWorkOrderPlan/update";
- } else {
- ajaxUrl = "distributionapi/api/DistriWorkOrderPlan/add";
- }
- });
- //绑定项目名称 切换
- $('#projectid').parent().on('mouseup', sysTitleClick);
- $('#projectid').on('change', sysTitleChange);
- //绑定巡检频率 执行间隔的切换
- $('#planinterval').on('change', planintervalChange);
- //绑定巡检频率 执行频率的切换
- $('#plantimes').on('change', plantimesChange);
- //绑定开始时间 第几天 的切换
- $('#sstart_select').on('change', getMsgTips);
- //绑定结束时间 第几天 的切换
- $('#sstop_select').on('change', getMsgTips);
- //添加或者编辑保存
- $('#HY_save').on('click', addValue);
- })
- //添加或者编辑
- function addValue() {
- if ($("#projectid").val() == '') {
- layer.confirm('请选择项目信息!', {
- icon: 2,
- btn: ['确定'] //按钮
- });
- return;
- }
- if (!$.trim($('#building').val())) {
- layer.confirm('发货地址中,楼宇名称不允许为空!', {
- icon: 2,
- btn: ['确定'] //按钮
- });
- return;
- }
- if (!$.trim($('#floor').val())) {
- layer.confirm('发货地址中,楼层名称不允许为空!', {
- icon: 2,
- btn: ['确定'] //按钮
- });
- return;
- }
- if (!$.trim($('#deliveryname').val())) {
- layer.confirm('发货人姓名不允许为空!', {
- icon: 2,
- btn: ['确定'] //按钮
- });
- return;
- }
- if(!regexs.phone.test($.trim($('#deliverytel').val()))) {
- layer.confirm('请输入正确格式的发货人电话!', {
- icon: 2,
- btn: ['确定'] //按钮
- });
- return;
- }
- if ($("#planname").val() == '') {
- layer.confirm('请输入计划名称!', {
- icon: 2,
- btn: ['确定'] //按钮
- });
- return;
- }
- if ($("#plancontent").val() == '') {
- layer.confirm('请输入计划内容!', {
- icon: 2,
- btn: ['确定'] //按钮
- });
- return;
- }
- if ($("#startDate").val() == '') {
- layer.confirm('请选择日期!', {
- icon: 2,
- btn: ['确定'] //按钮
- });
- return;
- }
- var goodslist = getFields();
- if (goodslist.length === 0) {
- layer.confirm('请添加配送物品!', {
- icon: 2,
- btn: ['确定'] //按钮
- });
- return;
- }
- if (!$.trim($('#planinterval').val())) {
- layer.confirm('巡检频率执行间隔不能为空!', {
- icon: 2,
- btn: ['确定'] //按钮
- });
- return;
- }
- if (!$.trim($('#plantimes').val())) {
- layer.confirm('巡检频率执行频率不能为空!', {
- icon: 2,
- btn: ['确定'] //按钮
- });
- return;
- }
- var timeEls = $('#plantimesCoont').find('input[id*="executionTime_"]');
- for (var i = 0, len = timeEls.length; i < len; i++) {
- var txtTime = $(timeEls[i]).parent().siblings('label').text().split('*')[1];
- if (!$(timeEls[i]).val()) {
- layer.confirm(txtTime + ' 不能为空!', {
- icon: 2,
- btn: ['确定'] //按钮
- });
- return;
- }
- // 暂时去掉(允许跨 0 点)
- // if(Date.parse('2018/09/10 ' + $(timeEls[i]).val().split(' ~ ')[0]) > Date.parse('2018/09/10 ' + $(timeEls[i]).val().split(' ~ ')[1])) {
- // layer.confirm(txtTime + ' 开始时间不能大于结束时间!', {
- // icon: 2,
- // btn: ['确定'] //按钮
- // });
- // return;
- // }
- }
- if (Number($('#sstart_select').val()) > Number($('#sstop_select').val())) {
- layer.confirm('开始时间不能大于结束时间!', {
- icon: 2,
- btn: ['确定'] //按钮
- });
- return;
- }
- var d1 = $('#sstart_time').val();
- var d2 = $('#sstop_time').val();
- if (!$.trim(d1)) {
- layer.confirm('开始时间不能为空!', {
- icon: 2,
- btn: ['确定'] //按钮
- });
- return;
- }
- if (!$.trim(d2)) {
- layer.confirm('结束时间不能为空!', {
- icon: 2,
- btn: ['确定'] //按钮
- });
- return;
- }
- if (Date.parse('2018/09/10 ' + d1) >= Date.parse('2018/09/10 ' + d2)) {
- layer.confirm('开始时间不能大于结束时间!', {
- icon: 2,
- btn: ['确定'] //按钮
- });
- return;
- }
- var deliveryDatas = getDeliverDatas($('#building'),$('#floor')); //发货地址
- $.ajax({
- type: "post",
- url: huayi.config.callcenter_url + ajaxUrl,
- async: true,
- dataType: 'json',
- beforeSend: function() { //触发ajax请求开始时执行
- $('#HY_save').attr("disabled", true);
- $('#HY_save').text('保存中...');
- // loadIndex = layer.load();
- },
- data: {
- id: ids,
- projectid: $('#projectid').val(),
- planname: $('#planname').val(),
- plancontent: $('#plancontent').val(),
- startdate: $('#startDate').val() && $('#startDate').val().split(' ~ ')[0],
- enddate: $('#startDate').val() && $('#startDate').val().split(' ~ ')[1],
- goodslist: goodslist, // 配送物品
- // deliverylist: $('#deliverylist').val() && JSON.parse($('#deliverylist').val()), // 发货(地址,科室,联系)
- deliverylist: deliveryDatas,// 否 List<DistributionDddressModel> 发货(地址,科室,联系)
- deliveryname: $('#deliveryname').val(),// 否 string 发货人
- deliverytel: $('#deliverytel').val(),// 否 string 发货人电话
- channel: channel, //渠道来源 1表示PC 2表示安卓 3表示IOS 4表示微信
- plancycle: 4, // 否 int 定时周期:1年,2月,3周,4日,5时,6分
- planinterval: $('#planinterval').val(), // 否 int 执行间隔,每几天
- plantimes: $('#plantimes').val(), // 否 int 执行频率,几次
- extensiontime: getExtensiontime(), //自定义时间段json
- },
- success: function(data) {
- if (data.state.toLowerCase() == 'success') {
- var index = parent.layer.getFrameIndex(window.name); //先得到当前iframe层的索引
- parent.layer.close(index); //再执行关闭
- layer.msg(data.message);
- parent.$('#table1').bootstrapTable('refresh');
- } else {
- $('#HY_save').attr("disabled", false);
- $('#HY_save').text('保存');
- }
- }
- });
- }
- //获取详情
- function getDetail(ids) {
- $.ajax({
- type: "get",
- url: huayi.config.callcenter_url + "distributionapi/api/DistriWorkOrderPlan/getsingle",
- async: true,
- dataType: 'json',
- data: {
- id: ids
- },
- success: function(data) {
- // if(data.state.toLowerCase() == 'success') {
- // $('#projectid').selectpicker('val', data.data.projectid).trigger('change');
- // $('#floorname').val(data.data.buildname);
- // $('#sortnum').val(data.data.sortnum);
- // $('#remark').val(data.data.remark);
- // }
- if (data.state === "success") {
- var res = data.data;
- $('#projectid').selectpicker('val', res.projectid); // 是 string 项目名称id
-
- // 发货地址
- helper.getDropList.getBuildlistDrop($('#building'), res.projectid)
- .then(function(){
- $('#building').selectpicker('val', res.deliverylist[0].buildingid);
- });// 是 string 楼宇id
-
- helper.getDropList.getFloorlistDrop($('#floor'), res.deliverylist[0].buildingid)
- .then(function(){
- $('#floor').selectpicker('val', res.deliverylist[0].floorid);
- });// 是 string 楼层id
-
- $('#deliveryname').val(res.deliveryname); // 否 string 发货人 - 随机工单
- $('#deliverytel').val(res.deliverytel); // 否 string 发货人电话 - 随机工单
-
- // $('#channel').selectpicker('val', res.channel); // 是 string 来源渠道
- channel = res.channel;
- $('#plancycle').selectpicker('val', res.plancycle); // 是 string 定时周期
- $('#planname').val(res.planname); // 是 string 计划名称
- $('#plancontent').val(res.plancontent); // 是 string 计划内容
- $('#startDate').val(data.data.startdate + ' ~ ' + data.data.enddate); // 否 string 期限
- //发货
- // getAddressSelect($('#deliverylist'), res.projectid, 0)
- // .then(function() {
- // res.deliverylist = res.deliverylist ? JSON.stringify(res.deliverylist) : '';
- // $('#deliverylist').selectpicker('val', res.deliverylist); // 发货(地址,科室,联系)
- // });
- //配送物品
- if (res.goodslist && res.goodslist.length > 0) {
- for (var i = 0, len = res.goodslist.length; i < len; i++) {
- var cobj = {
- "goodsid": res.goodslist[i].goodsid,
- "goodsname": res.goodslist[i].goodsname,
- "isremind": res.goodslist[i].isremind,
- "remark": res.goodslist[i].remark,
- }
- var tplstr = '<div class="goodsLists_item col-md-12" data-ide="identifier_' + i + '">' +
- '<div class="form-group col-md-6 col-sm-6">' +
- '<select id="goodsSelect_' + i + '" value=' + JSON.stringify(cobj) +
- ' class="form-control selectpicker" data-live-search="true">' +
- '<option value="">请选择物品</option>' +
- '</select>' +
- '</div>' +
- '<div class="form-group col-md-4 col-sm-4">' +
- '<div class="input-group delibery_num">' +
- '<span class="input-group-addon" id="btn_reduce_' + i + '">-</span>' +
- '<input id="goodsNum_' + i + '" type="text" value="' + res.goodslist[i].num +
- '" class="form-control" placeholder="请输入配送物品数量" aria-describedby="配送物品数量">' +
- '<span class="input-group-addon" id="btn_plus_' + i + '">+</span>' +
- '</div>' +
- '</div>' +
- '<button class="form-control btn btn-default" style="width:60px;margin-left:15px" onclick="btn_delete($(this))">删除</button>' +
- '</div>';
- $('#goodsLists').prepend(tplstr);
- getGoodsSelect($('#goodsSelect_' + i), res.projectid)
- .then(function(el) {
- el.selectpicker('val', $(el).attr('value'));
- });
- $('#btn_reduce_' + i).on('click', {
- _index: i
- }, btn_reduce);
- $('#btn_plus_' + i).on('click', {
- _index: i
- }, btn_plus);
- $('#goodsNum_' + i).on('input keyup propertychange', inputValid);
- }
- indexNum = res.goodslist.length;
- }
- planSdate = res.startdate.split(' ')[0];
- //巡检频率 执行间隔
- $('#planinterval').selectpicker('val', res.planinterval).trigger('change');
- //巡检频率 执行频率
- $('#plantimes').selectpicker('val', res.plantimes).trigger('change');
- if (res.planinterval === 1) {
- if (res.extensiontime && res.extensiontime.length > 0) {
- for (var j = 0, l = res.extensiontime.length; j < l; j++) {
- $('#executionTime_' + (j + 1)).val(res.extensiontime[j].starttime.split(' ')[1].substring(0, 5) + ' ~ ' + res
- .extensiontime[j].endtime.split(' ')[1].substring(0, 5));
- }
- getMsgTips1(res.plantimes, res.extensiontime[0].starttime.split(' ')[1].substring(0, 5));
- }
- } else {
- if (res.extensiontime && res.extensiontime.length > 0) {
- $('#sstart_select').selectpicker('val', res.extensiontime[0].startdate).trigger('change');
- $('#sstop_select').selectpicker('val', res.extensiontime[0].enddate).trigger('change');
- $('#sstart_time').val(res.extensiontime[0].starttime.split(' ')[1].substring(0, 5)); //开始时间
- $('#sstop_time').val(res.extensiontime[0].endtime.split(' ')[1].substring(0, 5)); //结束时间
- getMsgTips() //提示信息
- }
- }
- }
- }
- });
- }
- //巡检频率 执行间隔的change
- function planintervalChange() {
- //每天,每2天,每3天,每4天,每5天,每6天,每7天,
- var checkedVal = $(this).val();
- if (!checkedVal) {
- $('#SStimes').hide();
- $('#plantimesCoont').hide();
- $('#msg_tips').hide(); //提示信息
- }
- if (Number(checkedVal) > 1) {
- $('#plantimes').selectpicker('val', '1').trigger('change');
- $('#plantimes').prop('disabled', true);
- $('#plantimes').selectpicker('refresh');
- } else {
- $('#plantimes').selectpicker('val', '1').trigger('change');
- $('#plantimes').prop('disabled', false);
- $('#plantimes').selectpicker('refresh');
- }
- }
- //巡检频率 执行频率的change
- function plantimesChange() {
- //1-12次
- if (!$(this).val()) {
- $('#SStimes').hide();
- $('#plantimesCoont').hide();
- $('#msg_tips').hide(); //提示信息
- }
- if (Number($('#planinterval').val()) === 1) { //每天
- $('#SStimes').hide();
- if ($(this).val()) {
- $('#plantimesCoont').show();
- getExecutionTime($(this).val());
- $('#msg_tips').show(); //提示信息
- getMsgTips1();
- }
- }
- if (Number($('#planinterval').val()) > 1) {
- $('#plantimesCoont').hide();
- $('#SStimes').show();
- getDaySelect(Number($('#planinterval').val()), $('#sstart_select')); //开始时间
- getDaySelect(Number($('#planinterval').val()), $('#sstop_select')); //结束时间
- $('#sstop_select').selectpicker('val', $('#planinterval').val()).trigger('change');
- $('#msg_tips').show(); //提示信息
- getMsgTips();
- }
- }
- /**
- * 获取执行时间
- * t 执行的次数
- */
- function getExecutionTime(t) {
- $('#plantimesCoont').empty();
- var timeArrs = setDefaultTime(Number(t));
- for (var i = 0; i < t; i++) {
- var m = i + 1;
- $('#plantimesCoont').append('<li class="form-group">' +
- '<label for="executionTime_' + m + '" class="col-md-2 text-right"><b class="text_require">*</b>执行时间(' + m +
- ')</label>' +
- '<div class="col-md-10">' +
- '<input id="executionTime_' + m + '" class="form-control" type="text" placeholder="请选择执行时间(' + m + ')" />' +
- '</div>' +
- '</li>');
- if (m === 1) {
- laydate.render({
- elem: '#executionTime_' + m,
- range: '~',
- type: 'time',
- btns: ['now', 'confirm'],
- format: 'HH:mm',
- theme: '#249fea',
- done: function(value, date, endDate) {
- date.hours = date.hours < 10 ? '0' + date.hours : date.hours;
- date.minutes = date.minutes < 10 ? '0' + date.minutes : date.minutes;
- getMsgTips1('', date.hours + ':' + date.minutes);
- // console.log(value); //得到日期生成的值,如:2017-08-18
- // console.log(date); //得到日期时间对象:{year: 2017, month: 8, date: 18, hours: 0, minutes: 0, seconds: 0}
- // console.log(endDate); //得结束的日期时间对象,开启范围选择(range: true)才会返回。对象成员同上。
- }
- });
- } else {
- laydate.render({
- elem: '#executionTime_' + m,
- range: '~',
- type: 'time',
- btns: ['now', 'confirm'],
- format: 'HH:mm',
- theme: '#249fea',
- });
- }
- $('#executionTime_' + m).val(timeArrs[i]);
- }
- }
- /**
- * 设置默认的执行时间
- * t 执行的次数
- * 返回一个 时间的数组如["00:00 ~ 11:59", "12:00 ~ 23:59"]
- */
- function setDefaultTime(t) {
- var timesArr = [];
- var m0, m1, m2;
- for (var i = 0; i < t; i++) {
- m0 = parseInt(24 / t) - 1;
- m1 = parseInt(24 / t) * i;
- m2 = parseInt(24 / t) * (i + 1) - 1;
- m0 = m0 < 10 ? '0' + m0 : m0;
- m1 = m1 < 10 ? '0' + m1 : m1;
- m2 = m2 < 10 ? '0' + m2 : m2;
- if (i === 0) {
- timesArr.push('00:00 ~ ' + m0 + ':59');
- } else if (i < (t - 1)) {
- timesArr.push(m1 + ':00 ~ ' + m2 + ':59');
- } else if (i === (t - 1)) {
- if (24 % t != 0) {
- timesArr.push(m1 + ':00 ~ 23:59');
- } else {
- timesArr.push(m1 + ':00 ~ ' + m2 + ':59');
- }
- }
- }
- return timesArr;
- }
- /**
- * 获取 第几天的下拉;
- * t 执行的间隔
- * el 元素
- */
- function getDaySelect(t, el) {
- var weekArrs = ['一', '二', '三', '四', '五', '六', '七', '十五'];
- el.empty();
- for (var i = 0; i < t; i++) {
- if (i < 7) {
- el.append('<option value="' + (i + 1) + '">第' + weekArrs[i] + '天</option>');
- }
- if (i === 7) {
- el.append('<option value="15">第' + weekArrs[i] + '天</option>');
- }
- }
- el.selectpicker('refresh');
- }
- /**
- * 获取巡检频率 不是每天的提示信息
- * v1 开始时间
- * v2 结束时间
- */
- function getMsgTips(v1, v2) {
- if (v1 && v1.type === "change") {
- v1 = $('#sstart_time').val();
- }
- v1 = (v1 === '' || v1 === undefined) ? $('#sstart_time').val() : v1;
- v2 = (v2 === '' || v2 === undefined) ? $('#sstop_time').val() : v2;
- $('#msg_tips').find('.text-warning').text('提示:' + $('#planinterval').find('option:selected').text() +
- '一次,执行时间' + $('#sstart_select').find('option:selected').text() +
- v1 + '至' +
- $('#sstop_select').find('option:selected').text() +
- v2 + ',' + planSdate + ' ' + v1 + '开始执行计划!');
- }
- /**
- * 获取巡检频率 为每天的 提示信息
- * t 次数
- * s 计划开始执行的时间
- */
- function getMsgTips1(t, s) {
- t = (t === '' || t === undefined) ? $('#plantimes').val() : t;
- s = (s === '' || s === undefined) ? ($('#executionTime_1').val() && $('#executionTime_1').val().split(' ~ ')[0]) : s;
- $('#msg_tips').find('.text-warning').text('提示:每天执行' + t + '次,' + planSdate + ' ' + s + '开始执行计划!');
- }
- /**
- *获取自定义时间段
- */
- function getExtensiontime() {
- var arr = [];
- var enddate = "1";
- if (Number($('#planinterval').val()) === 1) {
- var timeEls = $('#plantimesCoont').find('input[id*="executionTime_"]');
- for (var i = 0, len = timeEls.length; i < len; i++) {
- //每天的时候 开始时间小于结束时间的时候 enddate 为 2
- if (Date.parse('2018/09/10 ' + ($(timeEls[i]).val() && $(timeEls[i]).val().split(' ~ ')[0])) > Date.parse(
- '2018/09/10 ' + ($(timeEls[i]).val() && $(timeEls[i]).val().split(' ~ ')[1]))) {
- enddate = "2";
- } else {
- enddate = "1";
- }
- arr.push({
- "startdate": "1",
- "starttime": $(timeEls[i]).val() && $(timeEls[i]).val().split(' ~ ')[0],
- "enddate": enddate,
- "endtime": $(timeEls[i]).val() && $(timeEls[i]).val().split(' ~ ')[1]
- });
- }
- } else if (Number($('#planinterval').val()) > 1) {
- arr.push({
- "startdate": $('#sstart_select').val(),
- "starttime": $('#sstart_time').val(),
- "enddate": $('#sstop_select').val(),
- "endtime": $('#sstop_time').val()
- });
- }
- return arr;
- }
- //添加配送物品
- function btn_add() {
- var tplstr = '';
- tplstr = '<div class="goodsLists_item col-md-12" data-ide="identifier_' + indexNum + '">' +
- '<div class="form-group col-md-6 col-sm-6">' +
- '<select id="goodsSelect_' + indexNum + '" class="form-control selectpicker" data-live-search="true">' +
- '<option value="">请选择物品</option>' +
- '</select>' +
- '</div>' +
- '<div class="form-group col-md-4 col-sm-4">' +
- '<div class="input-group delibery_num">' +
- '<span class="input-group-addon" id="btn_reduce_' + indexNum + '">-</span>' +
- '<input id="goodsNum_' + indexNum +
- '" type="text" value="1" class="form-control" placeholder="请输入配送物品数量" aria-describedby="配送物品数量">' +
- '<span class="input-group-addon" id="btn_plus_' + indexNum + '">+</span>' +
- '</div>' +
- '</div>' +
- '<button class="form-control btn btn-default" style="width:60px;margin-left:15px" onclick="btn_delete($(this))">删除</button>' +
- '</div>';
- $('#goodsLists').prepend(tplstr);
- getGoodsSelect($('#goodsSelect_' + indexNum), $('#projectid').val());
- $('#btn_reduce_' + indexNum).on('click', {
- _index: indexNum
- }, btn_reduce);
- $('#btn_plus_' + indexNum).on('click', {
- _index: indexNum
- }, btn_plus);
- $('#goodsNum_' + indexNum).on('input keyup propertychange', inputValid);
- indexNum++;
- }
- //获取配送物品的值
- function getFields() {
- var goodslists = []; //配送物品的数组[{"goodsid":"45643216540","goodsname":"物品名称","isremind":false,"remark":"","num":1,}]
- var goodsLists_items = $('#goodsLists').find('.goodsLists_item');
- $.each(goodsLists_items, function(i, v) {
- var goodsNum = {
- "num": $(v).find('input[id*="goodsNum_"]').val()
- }
- var goodsSelect = JSON.parse($(v).find('select[id*="goodsSelect_"]').val());
- if ($.trim(goodsNum.num)) {
- var cobj = $.extend(goodsSelect, goodsNum);
- goodslists.push(cobj);
- }
- });
- //去重
- goodslists = helper.methods.uniqueObjArray(goodslists, 'goodsid');
- return goodslists;
- }
- //获取配送物品 - 下拉
- function getGoodsSelect(el, proid) {
- var dtd = $.Deferred(); //在函数内部,新建一个Deferred对象
- $.ajax({
- type: "get",
- url: huayi.config.callcenter_url + "distributionapi/api/DistriGoods/getlist",
- dataType: 'json',
- data: {
- // keyword: , //否 string 模糊查询
- projectid: proid, //否 string 项目id
- },
- success: function(data) {
- el.empty();
- if (data.state.toLowerCase() === 'success') {
- var res = data.data;
- $('<option value="">请选择物品</option>').appendTo(el);
- for (var i = 0; i < res.length; i++) {
- var cobj = {
- "goodsid": res[i].id,
- "goodsname": res[i].goodsname,
- "isremind": res[i].isremind,
- "remark": res[i].remark,
- }
- $('<option value=' + JSON.stringify(cobj) + '>' + res[i].goodsname + '</option>').appendTo(el);
- }
- el.selectpicker('refresh');
- }
- dtd.resolve(el); // 改变Deferred对象的执行状态
- }
- });
- return dtd.promise(); // 返回promise对象
- }
- //验证是不是数字, 不是数字直接变成1
- function inputValid() {
- var validValue = Number($(this).val());
- if (isNaN(validValue)) {
- $(this).val(0);
- }
- }
- //减少
- function btn_reduce(event) {
- var index = event.data._index;
- var num = Number($('#goodsNum_' + index).val());
- num--;
- if (num <= 1) {
- num = 1;
- }
- $('#goodsNum_' + index).val(num);
- }
- //增加
- function btn_plus(event) {
- var index = event.data._index;
- var num = Number($('#goodsNum_' + index).val());
- num++;
- $('#goodsNum_' + index).val(num);
- }
- //删除配送物品
- function btn_delete(el) {
- el.parent().remove();
- }
- /**
- * 获取收发地址 - 下拉
- * @el 元素
- * @proid 项目id
- * @addt 地址类型 init 0发货/1收货
- */
- function getAddressSelect(el, proid, addt) {
- var dtd = $.Deferred(); //在函数内部,新建一个Deferred对象
- $.ajax({
- type: "get",
- url: huayi.config.callcenter_url + "distributionapi/api/DistriAddress/getlist",
- dataType: 'json',
- data: {
- // keyword: , //否 string 模糊查询
- projectid: proid, //否 string 项目id
- addresstype: addt, // 否 int 地址类型:0发货/1收货
- },
- success: function(data) {
- el.empty();
- if (data.state.toLowerCase() === 'success') {
- var res = data.data;
- var txt = '请选择收货地址';
- if (addt === 0) {
- txt = '请选择发货地址';
- }
- $('<option value="">' + txt + '</option>').appendTo(el);
- for (var i = 0; i < res.length; i++) {
- var cobj = [{
- "building_name": res[i].buildingname,
- "floor_name": res[i].floorname,
- "department_name": res[i].departmentname,
- "fullname": res[i].fullname,
- "mobile": res[i].mobile,
- }];
- var addressTxt = res[i].buildingname + ' ' + res[i].floorname + ' ' + res[i].departmentname;
- $('<option value=' + JSON.stringify(cobj) + '>' + addressTxt + '</option>').appendTo(el);
- }
- el.selectpicker('refresh');
- }
- dtd.resolve(); // 改变Deferred对象的执行状态
- }
- });
- return dtd.promise(); // 返回promise对象
- }
- //项目名称切换前
- function sysTitleClick() {
- previous = $(this).find('#projectid').val();
- }
- //项目名称切换
- function sysTitleChange() {
- var self = this;
- if ($('#goodsLists').find('.goodsLists_item').length > 0) {
- layer.confirm('切换项目名称将清除当前添加的配送物品,您确定要切换项目名称吗?', {
- icon: 7,
- closeBtn: 0,
- btn: ['确定', '取消'], //按钮
- }, function(index) {
- $('#goodsLists').html('');
- // getMatters();
- layer.close(index);
- }, function() {
- $(self).selectpicker('val', previous);
- });
- } else {
- // getMatters();
- }
- }
- //添加地址
- function btn_addAddress() {
- layer.open({
- type: 2,
- content: "planAddAddress.html?proId=" + $('#projectid').val(),
- title: '添加发货地址',
- area: ['80%', '95%'], //宽高
- });
- }
- // 获取发货 收货地址的值
- // el1 $('#building')
- // el2 $('#floor')
- function getDeliverDatas(el1, el2){
- var deliverSelect = [];
- var buiding_id = el1.val();
- var floor_id = el2.val();
- var floor_names = el2.find('option[value="'+ floor_id +'"]').text(); // "1楼 护士部"
- deliverSelect.push({
- buildingid: buiding_id, //"5b6bfd5faa3e390cef675be8"
- building_name: el1.find('option[value="'+ buiding_id +'"]').text(), //"住院部"
- floor_name: floor_names && floor_names.split(' ')[0], //"1楼"
- floorid: floor_id, //"5b6bfdb8aa3e390cef675bed"
- department_name: floor_names && floor_names.split(' ')[1], //"护士部"
- });
- return deliverSelect;
- }
|