/** * date: * author: neeler */ //test data start // var data_doDel = Mock.mock('/enterprise/position/delItem.htm', {code: 0, errmsg: '此岗位正在使用中不能删除!'}) // var data_doSave = Mock.mock('/enterprise/position/saveItem.htm', {code: 0, errmsg: '此岗位正在使用中不能删除!'}) // var data_doBind = Mock.mock('/basicconfig/mapcompany/bind.htm', {code: 0, }) // var data_doUnbind = Mock.mock('/basicconfig/mapcompany/unbind.htm', {code: 0, }) //test data end var TYPE = [{key: '全部', value: 0}, {key: '已映射', value: 1}, {key: '未映射', value: 2}] var Obj = { // sysDepartNo: '', sysCompanyNo: '', sysname: '', companyNo: '', cname: '' } window.I = { PZ: 30, keyword: $('#keyword'), searchBtn: $('#searchBtn'), newObj: $('#newObj') } var ViewModel = function() { var self = this; self.tList = ko.observableArray(TYPE); self.skeyword = ko.observable(); self.ckeyword = ko.observable(); self.type = ko.observable(); self.list = ko.observableArray(); self.del = function(item) { doDel(item); } self.unbind = function(item) { doUnbind(item); } } $(function () { window.vm = new ViewModel(); ko.applyBindings(vm); doSearch(); pageInit(); }); function pageInit() { I.newObj.click(function (e) { e.preventDefault(); vm.list.push(ko.mapping.fromJS(Obj)); refreshTypeahead(); }); I.searchBtn.click(function(event) { doSearch(); }); I.keyword.on(ISIE ? 'keydown' : 'keyup', function (event) { if (event.keyCode == 13) { doSearch(); } }); } function doSearch() { getList(vm.skeyword(), vm.ckeyword(), vm.type(), 0, I.PZ, 1); } function getList(skeyword, ckeyword, type, page, pagesize, pages) { $.post('/basicconfig/mapcompany/getList.htm', { skeyword: skeyword, ckeyword: ckeyword, type: type, page: page, pagesize: pagesize, pages: pages }, function(data, textStatus, xhr) { vm.list.removeAll(); if (data.code >= 1) { //parent.showErrmsg(data.errmsg); swal({title:'',text:data.errmsg,type:'error',confirmButtonText:'确定'}); return; } if (data.code == 0) { if (isList(data.items)) { $.each(data.items, function(index, val) { // val.sysCompanyNo = val.companyNo; // val.sysname = val.name; val.companyNo = ko.observable(val.companyNo); val.cname = ko.observable(val.cname); vm.list.push(val); }); refreshTypeahead(); } if (!!pages) { pages = data.pages; $('#pagdiv').unbind('page').empty(); if (pages > 1) { $('#pagdiv').bootpag({total: pages, maxVisible: 10, page: page + 1}).on('page',function(event,num){ getList(skeyword, ckeyword, type, num - 1, pagesize, 0); }); } } return; } }, 'json'); } function valid() { return true; } function doSave() { } function doDel(item) { var obj = ko.mapping.toJS(item); console.log(obj);return; $.post("/basicinfo/mapCompany/doDel.htm", {sysCompanyNo: obj.sysCompanyNo}, function (data, textStatus, jqXHR) { if (data.code >= 1) { //showErrmsg(data.errmsg); swal({title:'',text:data.errmsg,type:'error',confirmButtonText:'确定'}); return; } if (data.code == 0) { vm.list.remove(item); return; } }, "json" ); } function validMsg(msg) { $("#modalContent").html(msg); $("#dialog-confirm").removeClass('hide').dialog({ resizable: false, width: '320', modal: true, title: "

确认信息

", title_html: true, position: { my: "center", at: "center", of: window }, buttons: [ // { // html: "  确定", // "class" : "btn btn-danger btn-minier", // click: function() { // $( this ).dialog( "close" ); // doDel(item); // } // } // , { html: "  确定", "class" : "btn btn-minier", click: function() { $( this ).dialog( "close" ); } } ] }); } function refreshTypeahead() { $('.mtableTypeahead').typeahead('destroy'); $('.mtableTypeahead').unbind('typeahead:select'); // $('.mtableTypeahead').unbind('typeahead:change'); var reception = new Bloodhound({ datumTokenizer: Bloodhound.tokenizers.whitespace, queryTokenizer: Bloodhound.tokenizers.whitespace, remote: { url: '/basicconfig/mapcompany/typeahead.htm?query=%QUERY', wildcard: '%QUERY' } }); $('.mtableTypeahead').typeahead(null, { display: 'cname', limit: 15, source: reception, templates: { header: '
编号单位名称
', suggestion: function(data) { return '
' + data.companyNo + '' + data.cname + '
'; }, } }); $('.mtableTypeahead').bind('typeahead:select', function(ev, suggestion) { var index = $('.mtableTypeahead.tt-input').index($(this)); // index = Math.floor(index / 2); // console.log(index); doBind(index, suggestion); // vm.list()[index].cname(suggestion.name); // vm.list()[index].companyNo(suggestion.companyNo); // $(this).data('_mlname', suggestion.name); }); } function doBind(index, obj) { var sysCompanyNo = vm.list()[index].sysCompanyNo; var companyNo = obj.companyNo; $.post("/basicconfig/mapcompany/bind.htm", { sysCompanyNo: sysCompanyNo, companyNo: companyNo, cname: obj.cname }, function (data, textStatus, jqXHR) { if (data.code >= 1) { //showErrmsg(data.errmsg); swal({title:'',text:data.errmsg,type:'error',confirmButtonText:'确定'}); return; } if (data.code == 0) { console.log('映射成功!'); vm.list()[index].cname(obj.cname); vm.list()[index].companyNo(obj.companyNo); return; } }, "json" ); } function doUnbind(item) { var sysCompanyNo = item.sysCompanyNo; $.post("/basicconfig/mapcompany/unbind.htm", { sysCompanyNo: sysCompanyNo }, function (data, textStatus, jqXHR) { if (data.code >= 1) { //showErrmsg(data.errmsg); swal({title:'',text:data.errmsg,type:'error',confirmButtonText:'确定'}); return; } if (data.code == 0) { item.cname(''); item.companyNo(''); console.log('解除成功!'); return; } }, "json" ); }