123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235 |
- /**
- * Created by Syusuke on 2017/3/17.
- */
- $(function () {
- let dispNameArr;
- getAllRationLib(function (dispNames) {
- dispNameArr = dispNames;
- //添加
- $('#addBtn').click(function () {
- let compilationName = $('#compilationSels option:selected').text();
- let compilationId = $('#compilationSels option:selected').val();
- let gljLibName = $('#gljLibSels option:selected').text();
- let gljLibId = $('#gljLibSels option:selected').val();
- let libName = $('#libNameTxt').val();
- if(libName.trim().length === 0){
- alert('名称不可为空!');
- $('#libNameTxt').val('')
- }
- else if(dispNames.indexOf(libName) !== -1){
- alert('此定额库已存在!');
- $('#libNameTxt').val('')
- }
- else if(compilationName.trim().length === 0){
- alert('编办不可为空!');
- }
- else if(gljLibName.trim().length === 0){
- alert("请选择工料机库!");
- }
- else{
- let newRationLib = {};
- newRationLib.dispName = libName;
- newRationLib.compilationId = compilationId;
- newRationLib.compilationName = compilationName;
- newRationLib.gljLib = gljLibId;
- newRationLib.creator = userAccount;
- newRationLib.appType = "建筑";
- $('#libNameTxt').val('');
- createRationLib(newRationLib, dispNameArr);
- }
- });
- //重命名
- $("#showArea").on("click", "[data-target = '#edit']", function(){
- let renameId = $(this).parent().parent().attr("id");
- $("#renameA").attr("renameId", renameId);
- });
- $("#renameA").click(function(){
- let newName = $("#renameText").val();
- let libId = $(this).attr("renameId");
- let jqSel = "#" + libId + " td:first" + " a";
- let orgName = $(jqSel).text();
- if(newName.trim().length === 0){
- alert("名称不可为空!");
- $("#renameText").val('');
- }
- else if(dispNameArr.indexOf(newName) !== -1){
- alert("该定额库已存在!");
- $("#renameText").val('');
- }
- else{
- renameRationLib({ID: libId, newName: newName, orgName: orgName}, dispNameArr);
- }
- });
- //删除
- $("#showArea").on("click", "[data-target = '#del']", function(){
- let deleteId = $(this).parent().parent().attr("id");
- $("#deleteA").attr("deleteId", deleteId);
- });
- $("#deleteA").click(function(){
- let deleteId = $(this).attr("deleteId");
- let jqSel = "#" + deleteId + " td:first" + " a";
- let libName = $(jqSel).text();
- removeRationLib({libId: deleteId, libName: libName}, dispNameArr);
- });
- });
- getCompilationList();
- });
- function getAllRationLib(callback){
- $.ajax({
- type: 'post',
- url: 'api/getRationDisplayNames',
- dataType: 'json',
- success: function (result) {
- let dispNames = [];
- if(result.data.length > 0){
- for(let i = 0; i < result.data.length; i++){
- storageUtil.setSessionCache("RationGrp","repositoryID_" + result.data[i].ID, result.data[i].dispName);
- if(result.data[i].gljLib){
- storageUtil.setSessionCache("gljLib","repositoryID_" + result.data[i].ID, result.data[i].gljLib);
- }
- let id = result.data[i].ID;
- let libName = result.data[i].dispName;
- let createDate = result.data[i].createDate.split(' ')[0];
- let compilationName = result.data[i].compilationName;
- dispNames.push(result.data[i].dispName);
- $("#showArea").append(
- "<tr id='tempId'>" +
- "<td><a href='/stdGljRepository/glj'>"+libName+"</a></td>" +
- "<td>"+compilationName+" </td>" +
- "<td>"+createDate+" </td>" +
- "<td><a href='javascript:void(0);' data-toggle='modal' data-target='#edit' title='编辑'>" +
- "<i class='fa fa-pencil-square-o'></i></a> <a href='javascript:void(0);' data-toggle='modal' data-target='#del' class='text-danger' title='删除'>" +
- "<i class='fa fa-remove'></i></a></td></tr>");
- var newHref = "/rationRepository/ration?repository="+id;
- $("#tempId td:first a").attr("href", newHref);
- $("#tempId").attr("id", id);
- }
- }
- callback(dispNames);
- }
- });
- }
- function getCompilationList(){
- $.ajax({
- type: 'post',
- url: 'api/getCompilationList',
- dataType: 'json',
- success: function (result) {
- console.log(result);
- //addoptions
- for(let i = 0; i < result.data.compilation.length; i++){
- let $option = $("<option >"+ result.data.compilation[i].name +"</option>");
- $option.val( result.data.compilation[i]._id);
- $('#compilationSels').append($option);
- }
- //初始工料机库选项
- if(result.data.compilation.length > 0 && result.data.gljLibs.length > 0){
- let compilationId = result.data.compilation[0]._id;
- //console.log(compilationId);
- let gljLibOps = getGljLibOps(compilationId, result.data.gljLibs);
- console.log(gljLibOps);
- for(let i = 0; i < gljLibOps.length; i++){
- let $option = $("<option >"+ gljLibOps[i].dispName +"</option>");
- $option.val(gljLibOps[i].ID);
- $('#gljLibSels').append($option);
- }
- }
- $('#compilationSels').on("change", function () {
- //刷新工料机库选项
- $('#gljLibSels').children().remove();
- let newGljLibOps = getGljLibOps(this.selectedOptions[0].value, result.data.gljLibs);
- for(let i = 0; i < newGljLibOps.length; i++){
- let $option = $("<option >"+ newGljLibOps[i].dispName +"</option>");
- $option.val(newGljLibOps[i].ID);
- $('#gljLibSels').append($option);
- }
- });
- }
- });
- }
- function getGljLibOps(compilationId, gljLibs){
- let rst = [];
- for(let i = 0; i < gljLibs.length; i++){
- if(gljLibs[i]){
- if(compilationId === gljLibs[i].compilationId){
- rst.push(gljLibs[i]);
- }
- }
- }
- return rst;
- }
- function createRationLib(rationObj, dispNamesArr){
- $.ajax({
- type: 'post',
- url: 'api/addRationRepository',
- data: {rationRepObj: JSON.stringify(rationObj)},
- dataType: 'json',
- success: function (result) {
- if(result.data){
- storageUtil.setSessionCache("RationGrp","repositoryID_" + result.data.ID, result.data.dispName);
- if(result.data.gljLib){
- storageUtil.setSessionCache("gljLib","repositoryID_" + result.data.ID, result.data.gljLib);
- }
- let id = result.data.ID;
- let libName = result.data.dispName;
- let createDate = result.data.createDate.split(' ')[0];
- let compilationName = result.data.compilationName;
- dispNamesArr.push(libName);
- $("#showArea").append(
- "<tr id='tempId'>" +
- "<td><a href='/stdGljRepository/glj'>"+libName+"</a></td>" +
- "<td>"+compilationName+" </td>" +
- "<td>"+createDate+" </td>" +
- "<td><a href='javascript:void(0);' data-toggle='modal' data-target='#edit' title='编辑'>" +
- "<i class='fa fa-pencil-square-o'></i></a> <a href='javascript:void(0);' data-toggle='modal' data-target='#del' class='text-danger' title='删除'>" +
- "<i class='fa fa-remove'></i></a></td></tr>");
- var newHref = "/rationRepository/ration?repository="+id;
- $("#tempId td:first a").attr("href", newHref);
- $("#tempId").attr("id", id);
- }
- $('#cancelBtn').click();
- }
- })
- }
- function renameRationLib(renameObj, dispNames){
- $.ajax({
- type: 'post',
- url: 'api/editRationLibs',
- data: {oprtor: userAccount, renameObj: JSON.stringify(renameObj)},
- dataType: 'json',
- success: function (result) {
- if(!result.error){
- let jqSel = "#" + renameObj.ID + " td:first" + " a";
- $(jqSel).text(renameObj.newName);
- let index = dispNames.indexOf(renameObj.orgName);
- dispNames.splice(index, 1);
- dispNames.splice(index, 0, renameObj.newName);
- }
- $('#editCancelBtn').click();
- $('#renameText').val('');
- }
- })
- }
- function removeRationLib(delObj, dispNames){
- $.ajax({
- type: 'post',
- url: 'api/deleteRationLibs',
- data: {oprtor: userAccount, libId: delObj.libId},
- dataType: 'json',
- success: function (result) {
- if(!result.error){
- var jqSel = "#"+ delObj.libId;
- $(jqSel).remove();
- let index = dispNames.indexOf(delObj.libName);
- dispNames.splice(index, 1);
- $('#delCancelBtn').click();
- }
- }
- })
- }
|