You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
DS7/DSWeb/js/jsGridCwInvoiceMakeOut.js

342 lines
13 KiB
JavaScript

3 years ago
var commonGridObj_invoicelist;
var comboCustomer;//委托单位
function $(id){
return document.getElementById(id);
}
function createGrid(){
//header
var headerArgs_invoicelist = new Array("<input type=\"checkbox\" id=\"ck_all\" onclick=\"checkAll()\" />", "凭证号", "类别", "收费", "废除", "业务编号", "发票号码", "客户名称", "发票抬头", "金额", "币别", "开票人", "开票日期", "开出人", "开出时间");
//width
var widthArgs_invoicelist = new Array("40","100","150","60","60","120","120","150","150","70","70","70","150","100","150");
//column align
var colAlignArgs_invoicelist = new Array("center","center","center","center","center","center","center","center","center","center","center","center","center","center","center");
//column sort
var colSortArgs_invoicelist = new Array("na","str","str","str","str","str","str","str","str","str","str","str","str","str","str");
//column type
var colTypeArgs_invoicelist = new Array("ch", "ro", "ro", "ch", "ch", "ro", "ro", "ro", "ro", "ro", "ro", "ro", "ro", "ro", "ro");
commonGridObj_invoicelist = new TGridCommon("mygrid_container_invoicelist","form1",headerArgs_invoicelist,widthArgs_invoicelist,colAlignArgs_invoicelist,colSortArgs_invoicelist,colTypeArgs_invoicelist);
commonGridObj_invoicelist.setResponseUrl("CwInvoiceApplicationGridSource.aspx");
commonGridObj_invoicelist.setRequest("CwInvoiceApplicationGridSource.aspx?handle=makeoutlist&show_page=15&cur_page=1&uid="+commonGridObj_invoicelist.newGuid());
commonGridObj_invoicelist.setSourceType("json");
commonGridObj_invoicelist.setSkin("xp");
commonGridObj_invoicelist.setImageUrl("../images/");
commonGridObj_invoicelist.initGrid();
commonGridObj_invoicelist.bind();
commonGridObj_invoicelist.initPageByHandle("makeoutlist");
commonGridObj_invoicelist.getGridObj().attachEvent("onEditCell",function(stage,rId,cInd,nValue,oValue){
if(stage == 0){
if(cInd == 2 || cInd == 3){
return false;
}else{
return true;
}
}
});
commonGridObj_invoicelist.isOnEditCell = true;
commonGridObj_invoicelist.onEditCellEvent = function(){
commonGridObj_invoicelist.getGridObj().attachEvent("onEditCell",function(stage,rId,cInd,nValue,oValue){
if(stage == 0){
if(cInd == 2 || cInd == 3){
return false;
}else{
return true;
}
}
});
}
commonGridObj_invoicelist.getGridObj().attachEvent("onRowDblClicked", function(rId,cInd){
var openSet = "height=510, width=1000, toolbar=no, menubar=no,scrollbars=no, resizable=no,location=no, status=no,Top= " +(screen.height-510)/2 + ",Left= "+(screen.width-1000)/2
var openType = "_blank";
var openUrl = "InvoiceMakeOutEdit.aspx?handle=edit&id="+rId;
window.open (openUrl,openType,openSet);
});
commonGridObj_invoicelist.dbclickEvent = function(){
commonGridObj_invoicelist.getGridObj().attachEvent("onRowDblClicked", function(rId,cInd){
var openSet = "height=510, width=1000, toolbar=no, menubar=no,scrollbars=no, resizable=no,location=no, status=no,Top= " +(screen.height-510)/2 + ",Left= "+(screen.width-1000)/2
var openType = "_blank";
var openUrl = "InvoiceMakeOutEdit.aspx?handle=edit&id="+rId;
window.open (openUrl,openType,openSet);
});
}
}
function initCombo(){
createComboCustomer();//结算单位
}
function refreshList(){
createGrid();
}
//根据条件查询付费申请信息
function search(){
var _begintime = $("txt_beginDate").value.trim();
if(_begintime.trim() != ""){
if(!validateDateTime(_begintime)){
alert("起始时间格式错误");
return;
}
}
var _endtime = $("txt_endDate").value.trim();
if(_endtime.trim() != ""){
if(!validateDateTime(_endtime)){
alert("结束时间格式错误");
return;
}
}
var _customer = $("h_customer").value.trim();
var _checkno = $("txt_billno").value.trim();
var searchJson = "";
//begin
searchJson +="{";
searchJson += "[";
//如果查询条件设置了起始时间和结束时间则判断结束时间是否大于起始时间
if(_begintime != "" && _endtime != ""){
if(_begintime.length > 9 && _endtime.length > 9){
var status = DateTimeEqual(_begintime,_endtime);
if(status == 0){
searchJson += "\"btime\":\""+_begintime+"\","
searchJson += "\"etime\":\""+_endtime+"\","
}else if(status == -1){
alert("时间设置错误,起始时间不能大于结束时间,请修改!");
return;
}
// else if(status == -2){
// alert("时间设置错误,起始时间不能等于结束时间,请修改!");
// return;
// }
}
else{
alert("时间格式有问题,长度应大于9个字符,请修改!");
return;
}
}else{
searchJson += "\"btime\":\""+_begintime+"\","
searchJson += "\"etime\":\""+_endtime+"\","
}
searchJson += "\"cus\":\""+_customer+"\",";
searchJson += "\"no\":\""+_checkno+"\",";
searchJson += "\"cbisv\":\"" + $("cbISVOUCHERNO").checked + "\"";
searchJson += "]";
searchJson += "}"; //alert(searchJson);
commonGridObj_invoicelist.initGrid();
commonGridObj_invoicelist.setRequest("CwInvoiceApplicationGridSource.aspx?handle=makeoutlist&show_page=15&cur_page=1&search="+escape(searchJson)+"&uid="+commonGridObj_invoicelist.newGuid());
commonGridObj_invoicelist.bind();
commonGridObj_invoicelist.setSearch(searchJson);
commonGridObj_invoicelist.initPageByHandle("makeoutlist");
commonGridObj_invoicelist.getGridObj().attachEvent("onEditCell",function(stage,rId,cInd,nValue,oValue){
if(stage == 0){
if(cInd == 2 || cInd == 3){
return false;
}else{
return true;
}
}
});
commonGridObj_invoicelist.getGridObj().attachEvent("onRowDblClicked", function(rId,cInd){
var rId = commonGridObj_invoicelist.getGridObj().getSelectedRowId();
var openSet = "height=500, width=960, toolbar=no, menubar=no,scrollbars=no, resizable=no,location=no, status=no,Top= " +(screen.height-710)/2 + ",Left= "+(screen.width-960)/2
var openType = "_blank";
var openUrl = "InvoiceMakeOutEdit.aspx?id="+rId+"&handle=edit";
window.open (openUrl,openType,openSet);
});
}
//校验时间格式
function validateDateTime(dateTimeObj){
var isValid = false;
var parseToObj = new Date(dateTimeObj.replace(/-/g, "/"));
if(!isNaN(parseToObj)){
isValid = true;
}
return isValid;
}
function DateTimeEqual(beginObj,endObj){
var isEqual = 0;
var begin = new Date(beginObj.replace(/-/g, "/"));
var end = new Date(endObj.replace(/-/g, "/"));
if(Date.parse(begin) - Date.parse(end) > 0){
isEqual = -1;//起始时间大于结束时间
}else if(Date.parse(begin) - Date.parse(end) == 0){
isEqual = -2;//起始时间与结束时间相等
}
return isEqual;
}
String.prototype.trim = function() { return this.replace(/(^\s*)|(\s*$)/g,""); }
function createComboCustomer(){//委托单位
comboCustomer = dhtmlXComboFromSelect("sel_customer");
comboCustomer.loadXML("../FeeCodes/WebCrmClientAdapter.aspx?mask=0&pos=0");
comboCustomer.attachEvent("onChange", function(){
comboCustomer.setComboText($("h_customer").value);
});
comboCustomer.attachEvent("onBlur", function(){
var s1 = comboCustomer.getComboText().trim();
var s2 = s1.indexOf("|");
if(s2>0){
s2=s2+2;
}
var s3 = s1.substring(s2);
if(s2>0){
comboCustomer.setComboText(s3);
$("h_customer").value=s3;
}
else
{
comboCustomer.setComboText($("h_customer").value);
}
});
comboCustomer.setComboText($("h_customer").value);
comboCustomer.attachEvent("onKeyPressed", function(keyCode){
if(keyCode!="8"){
var arrayArg = new Array();
setTimeout(function(){
var filterCount = 0;
var is = -1;
var ishd = $("h_customer").value.trim();
if("" != comboCustomer.getComboText().trim()){
while("undefined" != typeof comboCustomer.getOptionByIndex(filterCount)){
var comboValue = comboCustomer.getOptionByIndex(filterCount).text.toUpperCase();//.value;
var enterValue = comboCustomer.getComboText().trim().toUpperCase();
$("h_customer").value = comboCustomer.getComboText().trim().toUpperCase();
if(comboValue.indexOf(enterValue) == 0){
comboCustomer.selectOption(filterCount,true,true);
is=filterCount;
break;
}
++filterCount;
}
if(is==-1){
$("h_customer").value = ishd;
alert("无此内容,请重新选择!");
}
}
},10);
}
});
comboCustomer.attachEvent("onSelectionChange", function(){
$("h_customer").value = comboCustomer.getComboText().trim();
});
}
//初始化界面
function initGrid(){
$("h_customer").value = "";
comboCustomer.setComboText($("h_customer").value);
$("txt_beginDate").value = "";
$("txt_endDate").value = "";
$("txt_billno").value = "";
$("cbISVOUCHERNO").checked = false;
createGrid();
}
function checkInfo(){
var checkRowID = "";
var iCheckCount = 0;
for(var i=0;i<commonGridObj_invoicelist.getGridObj().getRowsNum();i++){
var rowId = commonGridObj_invoicelist.getGridObj().getRowId(i);
var rowIndex = commonGridObj_invoicelist.getGridObj().getRowIndex(rowId);
var checkState = commonGridObj_invoicelist.getGridObj().cellByIndex(rowIndex,0).getValue();
if(checkState == 1){
if(iCheckCount > 0){
commonGridObj_invoicelist.getGridObj().cellByIndex(rowIndex,0).setValue(0);
}else{
iCheckCount++;
checkRowID = rowId;
}
}
}
if(checkRowID != ""){
var openSet = "height=510, width=1000, toolbar=no, menubar=no,scrollbars=no, resizable=no,location=no, status=no,Top= " +(screen.height-510)/2 + ",Left= "+(screen.width-1000)/2
var openType = "_blank";
var openUrl = "InvoiceMakeOutEdit.aspx?handle=edit&id="+checkRowID;
var tempWin = window.open ("about:blank",openType,openSet);
tempWin.location = openUrl;
}
}
function checkAll(){
if(commonGridObj_invoicelist != null){
for(var i=0;i<commonGridObj_invoicelist.getGridObj().getRowsNum();i++){
var rowId = commonGridObj_invoicelist.getGridObj().getRowId(i);
var rowIndex = commonGridObj_invoicelist.getGridObj().getRowIndex(rowId);
if($("ck_all").checked){
commonGridObj_invoicelist.getGridObj().cellByIndex(rowIndex,0).setValue(1);
}else{
commonGridObj_invoicelist.getGridObj().cellByIndex(rowIndex,0).setValue(0);
}
}
}
}
//获取GUID
function newGuid() {
var guid = "";
for (var i = 1; i <= 32; i++) {
var n = Math.floor(Math.random() * 16.0).toString(16);
guid += n;
if ((i == 8) || (i == 12) || (i == 16) || (i == 20))
guid += "-";
}
return guid.toUpperCase();
}
function ShowDetailAdd() {
var checked = commonGridObj_invoicelist.getGridObj().getCheckedRows(0); //所有选中的grid的id编号
if (checked == null || checked == "") {
alert("请先选择要操作的数据!");
}
else {
var url = "../CW/CwInvoiceApplicationGridSource.aspx?handle=isvouchers&gids=" + checked + "&uid=" + newGuid();
var loader = dhtmlxAjax.getSync(url);
var jsVal = loader.xmlDoc.responseText;
if (jsVal.trim() != "") {
alert(jsVal); //"有已生成的凭证,不能重复生成!"
return;
}
//
var feature = "height=200, width=350, toolbar=no, menubar=no,scrollbars=no, resizable=0,location=no, status=no,Top= " + (screen.height / 2 - 100) + ",Left= " + (screen.width / 2 - 200);
var URLs = "CwVouchersAddingInvoice.aspx?handle=ch_fee_invoice&gids=" + checked;
window.open(URLs, "生成发票凭证信息", feature);
}
}