hn_cloud_web/smz-web/js/work/push/proBidRelationFormPush.js

294 lines
11 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

var example = null;
var pers = null;
var id = localStorage.getItem("id");
var type = localStorage.getItem("type");
var data = [];
$(function () {
layui.use(['layer', 'laydate', 'form'], function () {
var layer = layui.layer;
var laydate = layui.laydate;
var form = layui.form;
pers = checkPermission();
if(id != ''){
var bidData = localStorage.getItem("bidData").split(',');
for(i in bidData){
data.push(bidData[i]);
}
// data = localStorage.getItem("bidData");
$("#proName").val(localStorage.getItem("proName"));
}
init();
$("#searchBt").click(function () {
example.ajax.reload();
});
});
})
function init() {
example =
$('#dt-table').DataTable({
"sort": false,
"searching": false,
"processing": true, //加载数据时显示进度状态
"serverSide": true,
"language": {
"url": "../../../js/plugin/datatables/Chinese.lang"
},
"ajax": {
"url": smz_ht_url + "/proBidRelation/selectProBidList",
"type": "post",
"data": function (d) {
d.bidProId = data.toString();
},
"error": function (xhr, textStatus, errorThrown) {
var msg = xhr.responseText;
var response = JSON.parse(msg);
var code = response.code;
var message = response.message;
if (code == 400) {
layer.msg(message);
} else if (code == 401) {
localStorage.removeItem("token");
layer.msg("token过期请先登录", {shift: -1, time: 1000}, function () {
location.href = smz_ht_url + '/login.html';
});
} else if (code == 403) {
console.log("未授权:" + message);
layer.msg('未授权');
} else if (code == 500) {
console.log('系统错误:' + message);
}
}
},
"drawCallback": function() {
var thisDataTable = $('#dt-table').DataTable();
$(".pagination").append("<li>" +
"<a class='paginate_button' style='padding:4px;' href='#' tabindex='0'>到 <input style='margin:0px;width:40px;' id='changePage'> 页</a>" +
"<a class='paginate_button' style='margin-bottom:1px' href='#' tabindex='0' id='dataTable-btn'>确认</a></li>");
//点击按钮跳转指定页数
$('#dataTable-btn').click(function (e) {
if ($("#changePage").val() && $("#changePage").val() > 0) {
var redirectpage = $("#changePage").val() - 1;
} else {
var redirectpage = 0;
}
thisDataTable.page(redirectpage).draw( 'page' );
});
//敲击回车键跳转指定页数
$("#changePage").keypress(function (e) {
if(event.keyCode==13){
if ($("#changePage").val() && $("#changePage").val() > 0) {
var redirectpage = $("#changePage").val() - 1;
} else {
var redirectpage = 0;
}
thisDataTable.page(redirectpage).draw( 'page' );
}
});
},
"dom": "<'dt-toolbar'r>t<'dt-toolbar-footer'<'col-sm-4 col-xs-4 hidden-xs'i><'col-xs-8 col-sm-8' p v>>",
"columns": [
// {
// "width":"3%",
// "data": null,
// "bSortable": false,
// render: function (data, type, full, meta) {
// var node = '';
// var checkedStatus = data['checkedStatus'];
// node = '<input class="checkall" name="checked" value=\"' + full.idNumber + ',' + full.proId + '\" type="checkbox"/>';
// if (checkedStatus == 1) {
// node = '<input class="checkall" name="checked" checked="checked" value=\"' + full.idNumber + ',' + full.proId + '\" type="checkbox"/>';
// }
// return node;
// }
// },
{
width: '3%',
data: function (row, type, set, meta) {
var c = meta.settings._iDisplayStart + meta.row + 1;
return c;
}
},
{"data": "proName",width: '10%'},
{"data": "abbreviation",width: '10%'},
{
"data": "",
"defaultContent": "",width: '5%',
"orderable": false,
"render": function (data, type, row) {
var isMultiple = row['isMultiple'];
var html = '';
html += buttonRadio(isMultiple, "", pers);
return html;
}
},
{
"data": "",
"defaultContent": "",width: '5%',
"orderable": false,
"render": function (data, type, row) {
var html = '';
html += buttonDelete(row['id'], "", pers);
return html;
}
},
],
"order": [[0, "desc"], [1, "asc"]] //在栏目列上显示排序功能
});
}
function showAddBidForm() {
if(type == 'add'){
var index = layer.open({
title: true,
title:["选择标段"],
type: 2,
content: 'proBidRelationCheckPush.html',
area: ['80%', '96%'],
maxmin: false
});
}
}
function showBidData(select) {
// data = [];
for(var i = 0;i < select.length;i++){
var arr = select[i].split(',');
data.push(arr[0]);
}
example.ajax.reload();
}
function buttonDelete(id, permission, pers) {
if (permission != "") {
if ($.inArray(permission, pers) < 0) {
return "";
}
}
var btn = $("<button class='layui-btn layui-btn-xs' title='删除' onclick='deleteBid(\"" + id + "\")'>删除</button>");
return btn.prop("outerHTML");
}
function buttonRadio(isMultiple, permission, pers) {
if (permission != "") {
if ($.inArray(permission, pers) < 0) {
return "";
}
}
var btn;
if(isMultiple == '1'){
btn = $("<input id='checkInput' name='checkInput' checked = 'checked' type='checkbox' onclick='chkBox(this)'/>");
}else{
btn = $("<input id='checkInput' name='checkInput' type='checkbox' onclick='chkBox(this)'/>");
}
return btn.prop("outerHTML");
}
function chkBox(elm) {
if(type == 'add'){
var obj = document.getElementsByName("checkInput");
var num = 0;
for (var i = 0;i < obj.length;i++){
if (obj[i].checked){
num++;
}
}
if (num > 1){
layer.alert("只能选择一个工程!");
for (var i = 0;i < obj.length;i++){
elm.checked =false;
}
}
}
}
function deleteBid(id) {
if(type == 'add'){
var arr = [];
for(var i = 0;i < data.length;i++){
if(data[i] != id){
arr.push(data[i]);
}
}
data = arr;
example.ajax.reload();
}
}
function upload() {
if(type == 'add') {
var proName = $("#proName").val();
var check = isCheck();
if (proName == '') {
parent.layer.msg("请填写分包合同工程名称全称", {icon: 2, time: 2000});
} else if (check.indexOf("1") == -1) {
parent.layer.msg("请选择复用工程", {icon: 2, time: 2000});
} else {
var loadingMsg = parent.layer.msg('数据上传中,请稍候...', {
icon: 16,
scrollbar: false,
time: 0,
shade: [0.8, '#393D49']
});
var form = {bidProId: data.toString(), isMultiple: check.toString(), proName: proName, id: id};
$.ajax({
type: 'POST',
async: false, // 默认异步true,false表示同步
url: smz_ht_url + "/proBidRelation/addProBidData", // 请求地址
contentType: "application/json; charset=utf-8",
dataType: 'json', // 服务器返回数据类型
data: JSON.stringify(form), //获取提交的表单字段
success: function (data) {
var resMsg = data.resMsg;
if (resMsg == 'success') {
parent.layer.msg("保存成功", {icon: 1, time: 2000});
setTimeout("relading()", 2100)
} else {
parent.layer.msg("保存失败", {icon: 2, time: 2000});
}
parent.layer.close(loadingMsg); //再执行关闭
},
error: function (XMLHttpRequest, textStatus, e) {
layer.msg('数据请求发生异常,请稍后重试', {icon: 16, scrollbar: false});
parent.layer.close(loadingMsg); //再执行关闭
}
});
}
}
}
function relading() {
var index = parent.layer.getFrameIndex(window.name); //先得到当前iframe层的索引
parent.layer.close(index);
window.parent.location.reload();
}
function isCheck() {
var obj = document.getElementsByName('checkInput');
var check = [];
for(var i = 0;i < obj.length;i++){
if(obj[i].checked){
check.push("1");
}else{
check.push('0');
}
}
return check;
}
/**
* 获取当日时间
*/
function getNowTime() {
var nowDate = new Date();
var year = nowDate.getFullYear();
var month = nowDate.getMonth() + 1 < 10 ? "0" + (nowDate.getMonth() + 1) :
nowDate.getMonth() + 1;
var day = nowDate.getDate() < 10 ? "0" + nowDate.getDate() : nowDate.getDate();
var h =nowDate.getHours();
var m=nowDate.getMinutes();
var s=nowDate.getSeconds();
var dateStr = year + "-" + month + "-" + day;
return dateStr;
}