以前项目中的js写法2
来源:互联网 发布:日本直播软件排名 编辑:程序博客网 时间:2024/05/01 02:47
1.sale.input.js
(function($) {
var AddProduct = {
options : {
index : 0
},
search : function() {
var shipmentFacility = $("#shipmentFacility").val();
var customerCd = $("#customerCd").val();
if(null == shipmentFacility || "" == shipmentFacility){
alert("出庫元は必ず選択してください。");
return false;
}
if(null == customerCd || "" == customerCd){
alert("卸先は必ず選択してください。");
return false;
}
// 同名商品のチェック
Product.windowOpen("sales", shipmentFacility, customerCd, this.add);
var cdOjbs = $(".productCd");
var cdsArray = new Array(cdOjbs.length);
for(var i=0 ;i<cdOjbs.length; i++){
cdsArray[i] = $(cdOjbs[i]).text();
}
Product.currentSelectProductCds = cdsArray;
},
add : function(jsonObj) {
// clone template
var sourceHtml = $("#targetHtml").clone(true);
sourceHtml.attr("id", "");
sourceHtml.attr("style", "");
var countTr = $("#productListTable tr").length;
//index change
sourceHtml.children(".id").append(countTr - 1);
$("#searchButtonTrId").empty().append(countTr);
// add product infos
// 品番
sourceHtml.children(".productCd").append(jsonObj.productCd);
// 商品名
sourceHtml.children(".productDisplayName").append(
jsonObj.productDisplayName);
// 課税区分
sourceHtml.children(".taxDiv").children(".taxDivDisplayName")
.append(jsonObj.taxDivDisplayName);
// 課税区分(hidden)
sourceHtml.children(".taxDiv").children(".taxCd").val(
jsonObj.taxDiv);
// 上代
var priceHtml = "";
var prices = (jsonObj.price).split("/");
if (prices.length > 1) {
priceHtml += "<select class=\"price\" onchange=\"Sales.changePrice(this);return false;\">";
for ( var i = 0; i < prices.length; i++) {
priceHtml += "<option value=\"" + parseInt(prices[i]) + "\">" + NumberFormat.addCommas(prices[i]) + "</option>";
}
priceHtml += "</select >";
} else {
priceHtml = NumberFormat.addCommas(jsonObj.price)+"<input class=\"price\" type=\"hidden\" value=\"" + parseInt(jsonObj.price) + "\"/>";
}
sourceHtml.children(".priceTd").append(priceHtml);
var wholeTemp = jsonObj.wholesale;
if (null == wholeTemp || "" == wholeTemp) {
wholeTemp = 0;
} else {
wholeTemp = parseInt(wholeTemp);
}
//掛率
sourceHtml.children(".wholesale").children(".wholesaleInput").val(wholeTemp);
// 下代
sourceHtml.children(".supplierPrice").children(".supplierPriceInput").append(NumberFormat.addCommas(parseInt((jsonObj.price).split("/")[0]*jsonObj.wholesale/100)));
// 有効在庫数量
sourceHtml.children(".activeStockQty").children(".resultQty")
.append(jsonObj.activeStockQty);
// 有効在庫数量(hidden)
sourceHtml.children(".activeStockQty").children(".totalQty").val(
jsonObj.activeStockQty);
// 受注後有効在庫数量
sourceHtml.children(".afterStockQty").children(".resultQty")
.append(jsonObj.activeStockQty);
// bind function
// bind 掛率
sourceHtml.children(".wholesale").children(".wholesaleInput").bind(
"focusout", function() {
SalesInputJsCheck.wholesaleCheck(this);
QtyAndMoneyHandle.handle(this);
});
// bind 発注数量
sourceHtml.children(".orderQty").children(".orderQtyInput").bind(
"focusout", function() {
SalesInputJsCheck.orderQtyCheck(this);
QtyAndMoneyHandle.handle(this);
});
// bind 受注数量
sourceHtml.children(".salesQty").children(".salesQtyInput").bind(
"focusout", function() {
SalesInputJsCheck.salesQtyCheck(this);
QtyAndMoneyHandle.handle(this);
});
// add hidden params html
sourceHtml.find(".formParams").append(
AddProduct.initFormParams(jsonObj, Sales.options.index));
// set checkbox name
sourceHtml.children(".checkbox").find(".ck").attr("name",
"orderDtlList[ " + (Sales.options.index) + " ].ck");
$("#searchButtonTd").parent().before(sourceHtml);
AddProduct.lineCss();
Sales.options.index++ ;
},
/** 全て選択 */
selectAll : function() {
// /lohas_erp/src/webapp/erp/js/common/selector.js
Selector.selectAll();
$("#productListTable :checkbox").each(function() {
UnderLineHandle.handle(this);
});
},
/** 全て未選択 */
selectNoOne : function() {
// /lohas_erp/src/webapp/erp/js/common/selector.js
Selector.unselectAll();
$("#productListTable :checkbox").each(function() {
UnderLineHandle.unChecked(this);
});
},
/** 選択した項目を削除 */
deleteLine : function() {
var $selectedBox = $('table:visible tr:visible').find(
"input.ck:checked");
if ($selectedBox.size() == 0)
return false;
$selectedBox.each(function() {
$(this).parents('tr').remove();
});
$("table:visible tr:visible td.lineNo").each(function(i) {
$(this).text(i + 1);
});
var lineNo = $("#productListTable tr").length - 1;
$("#searchButtonTrId").text(lineNo == 0 ? 1 : lineNo);
AddProduct.lineCss();
UnderLineHandle.unChecked();
},
initFormParams : function(jsonObj,index){
var hiddenParams = "";
hiddenParams += "<input type=\"hidden\" name=\"salesDtlList[ "+index+" ].salesDtlNo\" value=\""+(index+1)+"\" />";
hiddenParams += "<input type=\"hidden\" name=\"salesDtlList[ "+index+" ].productCd\" value=\""+jsonObj.productCd+"\" />";
hiddenParams += "<input type=\"hidden\" name=\"salesDtlList[ "+index+" ].productDisplayName\" value=\""+jsonObj.productDisplayName+"\" />";
hiddenParams += "<input type=\"hidden\" name=\"salesDtlList[ "+index+" ].taxDiv\" value=\""+jsonObj.taxDiv+"\" />";
hiddenParams += "<input type=\"hidden\" name=\"salesDtlList[ "+index+" ].taxDivDisplayName\" value=\""+jsonObj.taxDivDisplayName+"\" />";
hiddenParams += "<input type=\"hidden\" name=\"salesDtlList[ "+index+" ].price\" value=\""+(jsonObj.price).split("/")[0]+"\" class=\"price\"/>";
hiddenParams += "<input type=\"hidden\" name=\"salesDtlList[ "+index+" ].priceMainAndSub\" value=\""+jsonObj.price+"\"/>";
hiddenParams += "<input type=\"hidden\" name=\"salesDtlList[ "+index+" ].activeStockQty\" value=\""+jsonObj.activeStockQty+"\" />";
hiddenParams += "<input type=\"hidden\" name=\"salesDtlList[ "+index+" ].wholesaleInput\" value=\""+jsonObj.wholesale+"\" class=\"wholesale\"/>";
hiddenParams += "<input type=\"hidden\" name=\"salesDtlList[ "+index+" ].orderQtyInput\" value=\"\" class=\"orderQty\"/>";
hiddenParams += "<input type=\"hidden\" name=\"salesDtlList[ "+index+" ].salesQtyInput\" value=\"\" class=\"salesQty\"/>";
return hiddenParams;
},
lineCss : function(){
$("#productListTable tr:odd").removeClass("evenLine");
$("#productListTable tr:even").addClass("evenLine");
},
changePrice : function(dom){
QtyAndMoneyHandle.handle(dom);
},
changeCustomer:function (destinationUrl,forwordAmtUrl){
$("#telNo").val("");
$("#faxNo").val("");
$("#postalCd").val("");
$("#addressOne").val("");
$("#addressTwo").val("");
CustomerChangeHandle.handle(destinationUrl,forwordAmtUrl);
},
changeShipmentCd :function(urlId){
var customerCd = $("#customerCd").find('option:selected').val();
var shipmentCd = $("#destination").find('option:selected').val();
var url=$("#"+urlId).val();
if(null == customerCd || "" == customerCd ||
null == shipmentCd || "" == shipmentCd ||
null == url || "" == url){
$("#telNo").val("");
$("#faxNo").val("");
$("#postalCd").val("");
$("#addressOne").val("");
$("#addressTwo").val("");
}else {
$.ajax( {
type : "post",
url : url,
data : "customerCd=" + customerCd + "&shipmentCd=" + shipmentCd,
dataType : "json",
success : function(obj) {
if (null == obj) {
$("#telNo").val("");
$("#faxNo").val("");
$("#postalCd").val("");
$("#addressOne").val("");
$("#addressTwo").val("");
}else{
$("#telNo").val(obj.telNo);
$("#faxNo").val(obj.faxNo);
$("#postalCd").val(obj.postalCd);
$("#addressOne").val(obj.addressOne);
$("#addressTwo").val(obj.addressTwo);
}
}
});
}
}
};
var CustomerChangeHandle = {
handle:function (destinationUrl,forwordAmtUrl){
Destination.ajaxSearch(destinationUrl);
CustomerChangeHandle.ajaxForwordAmtSearch(forwordAmtUrl);
},
ajaxForwordAmtSearch : function(url) {
var customerCd = $("#customerCd").find('option:selected').val();
if (customerCd == null || customerCd == "") {
$(".forwardFlg").val("0");
$(".forwardAmt").val("0");
UnderLineHandle.handle();
} else {
$.ajax( {
type : "post",
url : url,
data : "customerCd=" + customerCd,
dataType : "json",
success : function(obj) {
if (null != obj) {
$(".forwardFlg").val(obj.forwardFlg);
$(".forwardAmt").val(obj.forwardAmt);
}
UnderLineHandle.handle();
}
});
}
}
};
var QtyAndMoneyHandle = {
handle : function(dom) {
// 有効在庫数量 ,数量
// 合計金額 lineTotal
this.lineQtyAndPrice(dom);
//underLine
UnderLineHandle.handle();
},
lineQtyAndPrice : function(dom) {
var currentTR=$(dom).parent().parent();
//上代
var price = parseInt(currentTR.children(".priceTd").children(".price").val()) || 0;
//掛率
var wholesaleInput = currentTR.children(".wholesale").children(".wholesaleInput").val();
var wholesale = !isNaN(wholesaleInput) ? wholesaleInput : 100;
//下代
currentTR.children(".supplierPrice").children(".supplierPriceInput").empty().append(NumberFormat.addCommas(parseInt(price*wholesale/100)));
//発注数量
var orderQtyInput = currentTR.children(".orderQty").children(".orderQtyInput").val();
var orderQty = parseInt(currentTR.children(".orderQty").children(".orderQtyInput").val()) || 0;
//有効在庫数量
var activeStockQty = parseInt(currentTR.children(".activeStockQty").children(
".totalQty").val()) || 0;
//受注数量
var salesQtyInput = currentTR.children(".salesQty").children(".salesQtyInput").val();
var salesQty = parseInt(currentTR.children(".salesQty").children(".salesQtyInput").val()) || 0;
//受注後有効在庫数量
salesQty = salesQty < 0 ? 0 : salesQty;
var afterStockQty = (activeStockQty - salesQty) < 0 ? 0 : (activeStockQty - salesQty);
currentTR.children(".afterStockQty").children(
".resultQty").empty().append(afterStockQty);
//合計金額
var sumProductAmt = parseInt(price * wholesale/100) * salesQty;
currentTR.children(".lineTotal").children(".money")
.empty().append(NumberFormat.addCommas(sumProductAmt));
//Set the data needed to send
currentTR.children(".formParams").find(".price").val(price);
currentTR.children(".formParams").find(".wholesale").val(wholesaleInput);
currentTR.children(".formParams").find(".orderQty").val(orderQtyInput);
currentTR.children(".formParams").find(".salesQty").val(salesQtyInput);
}
};
var UnderLineHandle = {
handle : function() {
// 受注数量の計算
this.salesTotalQty();
// 受注合計金額の計算
this.salesTotalMoney();
// 消費税額の計算
this.taxTotalMoney();
//送料の計算
this.forwardAmtMoney();
// 受注総額(税込)の計算
this.salesTotalWithTaxMoney();
},
salesTotalQty : function() {
// 受注数量=全ての明細行の「数量」を加算
var selectRow = this.getSelectCheckBoxArray();
var rowQty = 0;
var salesQty = 0;
for ( var i = 0; i < selectRow.length; i++) {
rowQty = $(selectRow[i]).parent().nextAll(".salesQty").children(
".salesQtyInput").val();
var qty = parseInt(rowQty) || 0;
salesQty += qty < 0 ? 0 : qty;
}
$(".salesSumQtySpan").empty().append(salesQty);
$(".salesSumQty").val(salesQty);
},
salesTotalMoney : function() {
// 受注合計金額=全ての明細行の「合計金額」を加算
var selectRow = this.getSelectCheckBoxArray();
var rowMoney = 0;
var totalMoney = 0;
for ( var i = 0; i < selectRow.length; i++) {
rowMoney = $(selectRow[i]).parent().nextAll(".lineTotal").children(
".money").text();
rowMoney=NumberFormat.removeCommas(rowMoney);
totalMoney += parseInt(rowMoney) || 0;
}
$(".salesSumAmtSpan").empty().append(NumberFormat.addCommas(totalMoney));
$(".salesSumAmt").val(totalMoney);
},
taxTotalMoney : function() {
// 消費税額=課税区分が$外税$の受注合計金額×セッションに設定されている消費税率
var selectRow = this.getSelectCheckBoxArray();
// 課税区分
var taxDiv;
var rowTaxMoney = 0;
var totalTaxMoney = 0;
for ( var i = 0; i < selectRow.length; i++) {
rowTaxMoney = $(selectRow[i]).parent().nextAll(".lineTotal")
.children(".money").text();
taxDiv = $(selectRow[i]).parent().nextAll(".taxDiv").children(
".taxCd").val();
// 0:外税; 1:内税
if (taxDiv == 0) {
totalTaxMoney += parseInt(NumberFormat.removeCommas(rowTaxMoney)) || 0;
}
}
var taxRate = Number($("#taxRate").val()) || 0;
totalTaxMoney = parseInt(totalTaxMoney * taxRate);
var totalWithTaxMoney = Number($(".salesSumAmt").val()) || 0;
totalTaxMoney = Common.Compute.taxMoneyCompute(totalWithTaxMoney);
$(".taxAmtSpan").empty().append(NumberFormat.addCommas(totalTaxMoney));
$(".taxAmt").val(totalTaxMoney);
var totalMoney = parseInt(totalWithTaxMoney - totalTaxMoney);
$(".salesSumAmtSpan").empty().append(NumberFormat.addCommas(totalMoney));
$(".salesSumAmt").val(totalMoney);
},
forwardAmtMoney : function() {
//送料区分
var forwardFlg=parseInt($(".forwardFlg").val()) || 0;
$(".forwardFlg").val(forwardFlg);
// 送料金額
var forwardAmtInput = $(".forwardAmt").val();
$(".forwardAmt").val(forwardAmtInput);
// 受注合計金額
var salesTotalMoney = parseInt($(".salesSumAmt").val()) || 0;
// 送料区分が$送料不要$の場合 || 受注合計金額<30,000の場合
if ($("#forwardAmtChangeFlg").val() != 1) {
if (forwardFlg <= 0 || salesTotalMoney < 30000) {
// 送料=0
$(".forwardAmtInut").val("0");
} else {
// 選択した卸先の卸先コードに一致する送料
$(".forwardAmtInut").val(forwardAmtInput);
}
}
},
salesTotalWithTaxMoney : function() {
// 受注総額(税込)=受注合計金額+消費税額+送料
// 受注合計金額
var salesTotalMoney = parseInt(NumberFormat.removeCommas($(".salesSumAmtSpan").text())) || 0;
// 消費税額
var taxTotalMoney = parseInt(NumberFormat.removeCommas($(".taxAmtSpan").text())) || 0;
// 送料
var forwardAmtMoney = parseInt(NumberFormat.removeCommas($(".forwardAmtInut").val())) || 0;
var totalMoney = parseInt(salesTotalMoney + forwardAmtMoney + taxTotalMoney);
$(".sumAmtSpan").empty().append(NumberFormat.addCommas(totalMoney));
$(".sumAmt").val(totalMoney);
},
unChecked : function() {
UnderLineHandle.handle();
},
/** get all checkBox */
getSelectCheckBoxArray : function() {
return $("#productListTable :checkbox");
}
};
window.Sales = AddProduct;
window.QtyAndMoneyHandle = QtyAndMoneyHandle;
window.UnderLineHandle = UnderLineHandle;
})(jQuery);
(function($) {
var JsCheck = {
wholesaleCheck : function(dom) {
// 掛率
var wholesaleInput = $(dom).val();
var wholesale = parseInt(wholesaleInput);
if (null == wholesaleInput || "" == wholesaleInput) {
alert("掛率は必須入力項目です。");
} else if (isNaN(wholesaleInput)) {
alert("掛率は半角数字を入力してください。");
} else if (wholesale < 1 || wholesale > 100) {
alert("掛率は1~100を入力してください。");
}
},
orderQtyCheck : function(dom) {
// 発注数量
var orderQtyInput = $(dom).val();
var orderQty = parseInt(orderQtyInput);
if (null == orderQtyInput || "" == orderQtyInput) {
alert("発注数量は必須入力項目です。");
} else if (isNaN(orderQtyInput)) {
alert("発注数量は半角数字を入力してください。");
} else if(orderQty<1){
alert("発注数量は1以上を入力してください。");
} else {
var currentTR=$(dom).parent().parent();
// 受注数量
var salesQty = parseInt(currentTR.children(".salesQty").children(
".salesQtyInput").val());
if (salesQty > orderQty) {
alert("受注数量が発注数量を超えています。");
}
}
},
salesQtyCheck : function(dom) {
// 受注数量
var salesQtyInput = $(dom).val();
var salesQty = parseInt(salesQtyInput);
if (null == salesQtyInput || "" == salesQtyInput) {
alert("受注数量は必須入力項目です。");
} else if (isNaN(salesQtyInput)) {
alert("受注数量は半角数字を入力してください。");
} else if (salesQty < 1) {
alert("受注数量は1以上を入力してください。");
} else {
var currentTR=$(dom).parent().parent();
// 発注数量
var orderQty = parseInt(currentTR.children(".orderQty").children(
".orderQtyInput").val());
// 有効在庫数量
var activeStockQty = parseInt(currentTR.children(".activeStockQty")
.children(".totalQty").val()) || 0;
if (salesQty > orderQty) {
alert("受注数量が発注数量を超えています。");
} else if (salesQty > activeStockQty) {
alert("受注数量が有効在庫数量を超えています。");
}
}
}
};
window.SalesInputJsCheck = JsCheck;
})(jQuery);
(function($){
var Init = {
initEvent : function() {
$("#productListTable .wholesale .wholesaleInput").bind("focusout",
function() {
SalesInputJsCheck.wholesaleCheck(this);
QtyAndMoneyHandle.handle(this);
});
$("#productListTable .orderQty .orderQtyInput").bind("focusout",
function() {
SalesInputJsCheck.orderQtyCheck(this);
QtyAndMoneyHandle.handle(this);
});
$("#productListTable .salesQty .salesQtyInput").bind("focusout",
function() {
SalesInputJsCheck.salesQtyCheck(this);
QtyAndMoneyHandle.handle(this);
});
$(".forwardAmtInut").bind("change", function() {
Init.forwardAmtChange(this);
});
},
initButtonLineNo : function(){
var countTr = $("#productListTable tr").length;
$("#searchButtonTrId").text(countTr-1);
Sales.lineCss();
},
forwardAmtChange:function(dom){
$("#forwardAmtChangeFlg").val("1");
UnderLineHandle.handle();
}
};
window.Init = Init;
})(jQuery);
$(function(){
Sales.options.index = $("#productListTable tr").length - 2;
});
############################################
2.sale.js
var Sales = {
params : {
groupId : ""
},
// 上部検索条件項目の入力値を検索条件として検索する
search : function(formId, url) {
$('#' + formId).attr("action", url);
$('#' + formId).submit();
},
// 受注承認画面へ遷移する
operator : function(formId, code, url) {
$("#salesNoHidden").val(code);
$('#' + formId).attr("action", url);
$('#' + formId).submit();
},
complete : function(formId) {
$('#' + formId).submit();
},
modify : function(formId) {
$('#' + formId).submit();
},
// 商品選択サブウィンドウを開く
productSelect : function(groupId) {
this.setGroupId(groupId);
var shipmentFacility = $("#shipmentFacility").val();
var customerCd = $("#customerCd").val();
Product.windowOpen('sales', shipmentFacility, customerCd,
this.productBack);
},
// 商品選択サブウィンドウを開くBack
productBack : function(jsonObj) {
var group = Sales.getGroupId();
$("#" + group + "ProductCd").val(jsonObj.productCd);
$("#" + group + "ProductDisplayName").val(jsonObj.productDisplayName);
},
setGroupId : function(groupId) {
this.params.groupId = groupId;
},
getGroupId : function() {
return this.params.groupId;
}
};
######################################
3.shipment.resut.js
/**
* 出庫実績管理JS
*/
function ShipmentResultJS() {
/**
* 出庫実績管理に専用するメッソドリスト
*/
this.method = {
inputText : undefined,
// 金額の桁数
MoneyFixedNumber : 0,
/**
* 入力された出庫数量をチェックする
*/
validate : function(customerCd, salesNo, salesDtlNo) {
var idMark = customerCd + "_" + salesNo + "_" + salesDtlNo;
// 出庫数量
var shipmentOrderQty = Number($("#shipmentOrderQty_" + idMark)
.val());
// ★数値項目に数値以外が入力される場合、下記のメッセージを表示する。
// →「$項目名$は半角数字で入力してください。」
if(window.isNaN(shipmentOrderQty)){
// 出庫数量と出庫不可数量を復旧する
// this.inputText.val(this.inputText.returnVal);
alert("出庫数量は半角数字で入力してください。");
return false;
}
// ★出庫数量>承認済数量-出庫済数量 の場合、下記アラートメッセージを表示する
// →「出庫数量が承認済数量を超えています。」
// 出庫済数量
var shipmentQty = Number($("#shipmentQty_" + idMark).val());
// 承認済数量
var approvalQty = Number($("#approvalQty_" + idMark).val());
if (shipmentOrderQty <= (approvalQty-shipmentQty)) {
// 許可する
} else {
// 出庫数量と出庫不可数量を復旧する
// this.inputText.val(this.inputText.returnVal);
// メッセージを出させる
alert("出庫数量が承認済数量を超えています。");
return false;
}
},
eventBinding : function() {
var this_ = this;
$("#_listTable").find("input:text").blur(function() {
var id = $(this).attr("id");
var customerCd = id.split("_")[1];
var salesNo = id.split("_")[2];
var salesDtlNo = id.split("_")[3];
this_.validate(customerCd, salesNo, salesDtlNo);
this_.doFocusOutSum(customerCd, salesNo, salesDtlNo);
}).focus(function() {
this_.inputText = $(this);
this_.inputText.returnVal = $(this).val();
}).number();
},
doFocusOutSum : function(customerCd, salesNo, salesDtlNo) {
// 出庫指示数量と出庫合計金額を算出する(商品別)
this.doSumPerLine(customerCd, salesNo, salesDtlNo);
// 総合情報を更新する
this.excuteSum();
},
/**
* いろんな合計数を算出する
*/
excuteSum : function() {
// 出庫総数量を算出する(卸先別)
var sumQty = 0;
$("input[id^='shipmentOrderQty_']").each(function() {
sumQty += Number($(this).val());
});
$("#allSumShipmentOrderQty").html(sumQty);
$("#_sumQty").val(sumQty);
// 出庫指示合計金を算出する
var sumPrice = 0;
$("td[id^='sumLinePrice_']").each(function() {
sumPrice += Number($(this).html().replace(/¥|,/g, ""));
});
$("#allSumShipmentPrice").html("¥" + NumberFormat.addCommas(sumPrice));
$("#_sumAmt").val(sumPrice);
// 消費税額
var sumTax = Common.Compute.taxMoneyCompute(sumPrice);
// var sumTax = (sumPrice * $("#currentTaxRate").val()).toFixed(this.MoneyFixedNumber);
$("#allSumTax").html("¥" + NumberFormat.addCommas(sumTax));
$("#_taxAmt").val(sumTax);
// 出庫総計金額(税抜)
$("#allSumSupplierPrice").html(
"¥" + NumberFormat.addCommas((Number(sumPrice) - Number(sumTax))));
},
/**
* 出庫や受注情報を加算する(商品行別)
*
* @param customerCd
* 卸先コード
* @param salesNo
* 受注番号
* @param salesDtlNo
* 受注行番号
*/
doSumPerLine : function(customerCd, salesNo, salesDtlNo) {
var idMark = customerCd + "_" + salesNo + "_" + salesDtlNo;
// 受注数量
var salesQty = Number($("#salesQty_" + idMark).val());
// 出庫指示数量
var shipmentOrderQty = Number($("#shipmentOrderQty_" + idMark)
.val());
// 出庫指示不可数量
var impossibleQty = Number($("#impossibleQty_" + idMark).val());
// 出庫指示承認済数量
// var approvalQty = Number($("#approvalQty_" + idMark).val());
// 下代単価
var supplierPrice = Number($("#supplierPrice_" + idMark).val());
$("#sumLinePrice_" + idMark).html(
"¥" + NumberFormat.addCommas((shipmentOrderQty * supplierPrice).toFixed(this.MoneyFixedNumber)));
// 受注残数量を更新する
$("#remainSalesQty_" + idMark).html(
salesQty - shipmentOrderQty - impossibleQty);
}
};
}
var shipmentResultJs = new ShipmentResultJS();
############################################
4.shipment.indicate.input.js
/**
* 出庫指示入力画面
*/
var ShipmentIndicateInput = {
inputText : undefined,
validate : function(customerCd, salesNo, salesDtlNo) {
var idMark = customerCd + "_" + salesNo + "_" + salesDtlNo;
// 出庫指示数量
var shipmentOrderQty = Number($("#shipmentOrderQty_" + idMark).val());
// 出庫指示不可数量
var impossibleQty = Number($("#impossibleQty_" + idMark).val());
// ★数値項目に数値以外が入力される場合、下記のメッセージを表示する。
// →「$項目名$は半角数字で入力してください。」
if(window.isNaN(shipmentOrderQty)){
// 出庫数量と出庫不可数量を復旧する
// this.inputText.val(this.inputText.returnVal);
alert("出庫指示数量は半角数字で入力してください。");
return false;
}
if(window.isNaN(impossibleQty)){
alert("出庫不可数量は半角数字で入力してください。");
return false;
}
// ★受注数量<(出庫数量+出庫不可数量+承認済数量)の場合、下記のメッセージを表示する。
// →「出庫数量、出庫不可数量が受注数量を超えています。」
// 受注数量
var salesQty = Number($("#salesQty_" + idMark).val());
// 出庫指示済数量
var approvalQty = Number($("#approvalQty_" + idMark).val());
if (salesQty >= (shipmentOrderQty + impossibleQty + approvalQty)) {
// 許可する
} else {
// メッセージを出させる
alert("出庫数量、出庫不可数量が受注数量を超えています。");
// 出庫数量と出庫不可数量を復旧する
// this.inputText.val(this.inputText.returnVal);
return false;
}
/*
* // just for test alert("salesQty;" + salesQty + "/shipmentOrderQty:" +
* shipmentOrderQty + "/impossibleQty:" + impossibleQty +
* "/approvalQty:" + approvalQty);
*/
},
eventBinding : function() {
$("#_listTable").find("input:text").blur(
function() {
var id = $(this).attr("id");
var customerCd = id.split("_")[1];
var salesNo = id.split("_")[2];
var salesDtlNo = id.split("_")[3];
ShipmentIndicateInput.validate(customerCd, salesNo,
salesDtlNo);
ShipmentIndicateInput.doFocusOutSum(customerCd, salesNo,
salesDtlNo);
}).focus(function() {
ShipmentIndicateInput.inputText = $(this);
ShipmentIndicateInput.inputText.returnVal = $(this).val();
}).number();
},
doFocusOutSum : function(customerCd, salesNo, salesDtlNo) {
// 出庫指示数量と出庫合計金額を算出する(商品別)
this.doSumPerLine(customerCd, salesNo, salesDtlNo);
// 出庫指示数量と出庫合計金額を算出する(卸先別)
this.doSumPerCustomer(customerCd);
// 総合情報を更新する
this.excuteSum();
},
excuteSum : function() {
var sumQty = 0;
// 出庫指示総数量を算出する
$("td[id^='sumShipmentOrderQty_']").each(function() {
sumQty += Number($(this).html());
});
$("#allSumShipmentOrderQty").html(sumQty);
var sumPrice = 0;
// 出庫指示合計金を算出する
$("td[id^='sumSupplierPrice_']").each(function() {
sumPrice += Number($(this).html().replace(/¥|,/g, ""));
});
$("#allSumSupplierPrice").html("¥" + NumberFormat.addCommas(sumPrice));
// 消費税額
var sumTax = 0;
$("td[id^='sumTax_']").each(function() {
sumTax += Number($(this).html().replace(/¥|,/g, ""));
});
$("#allSumTax").html("¥" + NumberFormat.addCommas(sumTax));
// 出庫総計金額(税込み)
var allSumShipmentPrice = 0;
$("td[id^='sumShipmentPrice_']").each(function() {
allSumShipmentPrice += Number($(this).html().replace(/¥|,/g, ""));
});
$("#allSumShipmentPrice").html("¥" + NumberFormat.addCommas(allSumShipmentPrice));
},
/**
* 出庫や受注情報を加算する(商品行別)
*
* @param customerCd
* 卸先コード
* @param salesNo
* 受注番号
* @param salesDtlNo
* 受注行番号
*/
doSumPerLine : function(customerCd, salesNo, salesDtlNo) {
var idMark = customerCd + "_" + salesNo + "_" + salesDtlNo;
// 受注数量
var salesQty = Number($("#salesQty_" + idMark).val());
// 出庫指示数量
var shipmentOrderQty = Number($("#shipmentOrderQty_" + idMark).val());
// 出庫指示不可数量
var impossibleQty = Number($("#impossibleQty_" + idMark).val());
// 出庫指示済数量
var approvalQty = Number($("#approvalQty_" + idMark).val());
// 下代単価
var supplierPrice = Number($("#supplierPrice_" + idMark).val());
$("#sumLinePrice_" + idMark).html(
"¥" + NumberFormat.addCommas(shipmentOrderQty * supplierPrice));
// 受注残数量を更新する
$("#remainSalesQty_" + idMark).html(
salesQty - shipmentOrderQty - impossibleQty - approvalQty);
},
/**
* 出庫や受注情報を加算する(卸先別)
*
* @param customerCd
* 卸先コード
*/
doSumPerCustomer : function(customerCd) {
// 出庫指示総数量を算出する(卸先別)
var sumQty = 0;
$("input[id^='shipmentOrderQty_" + customerCd + "']").each(function() {
sumQty += Number($(this).val());
});
$("#sumShipmentOrderQty_" + customerCd).html(sumQty);
// 出庫総計金額(卸先別)(税込み)
var sumPrice = 0;
$("td[id^='sumLinePrice_" + customerCd + "']").each(function() {
sumPrice += Number($(this).html().replace(/¥|,/g, ""));
});
$("#sumShipmentPrice_" + customerCd).html("¥" + NumberFormat.addCommas(sumPrice));
// 消費税額(卸先別)
var sumTax = Common.Compute.taxMoneyCompute(sumPrice);
// var sumTax = (sumPrice * $("#currentTaxRate").val()).toFixed(0);
$("#sumTax_" + customerCd).html("¥" + NumberFormat.addCommas(sumTax));
// 出庫総計金額(税抜)
$("#sumSupplierPrice_" + customerCd).html(
"¥" + NumberFormat.addCommas((Number(sumPrice) - Number(sumTax))));
}
};
########################################
5.shipment.indicate.form.operation.js
var ShipmentFormOperation = {
/**
* excel出力を実行する
* @param formId
*/
excelOutput:function(formId){
if(confirm("納品書を出力します")){
ShipmentFormOperation.doCommonFormSubmit(formId);
}
},
/**
* 本社への出庫指示承認を取り消す
*
* @param salesNo
* 受注番号
* @param salesDtlNo
* 受注行番号
* @param modDtMillis
* 最大の更新日時
*/
goShipmentApprovedCancelForCompany : function(salesNo, salesDtlNo,modDtMillis) {
$("#_salesNoToCancel").val(salesNo);
$("#_salesDtlNoToCancel").val(salesDtlNo);
$("#_modDtMillis").val(modDtMillis);
$("#cancelFrm").submit();
},
/**
* 倉庫への出庫指示承認を取り消す
*
* @param salesOrderNo
* 受注出庫指示番号
* @param modDtMillis
* 受注指示承認済.更新日時
* @param salesHdrModDtMillis
* 受注HDR.更新日時
*/
goShipmentApprovedCancel : function(salesOrderNo, modDtMillis,
salesHdrModDtMillis) {
$("#_salesOrderNo").val(salesOrderNo);
$("#_modDtMillis").val(modDtMillis);
$("#_salesHdrModDtMillis").val(salesHdrModDtMillis);
$("#searchFrm").attr("action", $("#cancelFrm").attr("action"));
this.doCommonFormSubmit("searchFrm");
},
/**
* 出庫実績一覧画面から出庫実績明細画面へ遷移する
*
* @param shipmentNo
* 出庫番号
*/
goShipmentResultDetail : function(shipmentNo) {
$("#_shipmentNo").val(shipmentNo);
url = $("#detailFrm").attr("action");
$("#pagingAndSortForm").attr("action", url);
this.doCommonFormSubmit("pagingAndSortForm");
},
doShipmentResultInputSearchSubmit : function() {
// 卸先名を設定する
$("#customerName").val($("#customerCd").children(":selected").text());
// 出庫先名を設定する
$("#shipmentName").val($("#destination").children(":selected").text());
this.doCommonFormSubmit("searchFrm");
},
doShipmentIndicateConfirmSubmit : function() {
$("#searchFrm").attr("action", $("#confirmFrm").attr("action"));
this.doCommonFormSubmit("searchFrm");
},
doShipmentIndicateInputSearchSubmit : function() {
// 出庫元名を設定する
$("#shipmentFacilityName").val(
$("#shipmentFacility").children(":selected").text());
// 卸先名を設定する
$("#customerName").val($("#customerCd").children(":selected").text());
// 出庫先名を設定する
$("#shipmentName").val($("#destination").children(":selected").text());
this.doCommonFormSubmit("searchFrm");
},
doShipmentInputCompleteSubmit : function() {
$("#inputFrm").attr("action", $("#completeFrm").attr("action"));
this.doCommonFormSubmit("inputFrm");
},
/**
* 出庫実績入力確認ボタンをクリクする
*
* @param formId
*/
doShipmentResultInputConfirmSubmit : function(formId) {
// ★「出庫総数」が「0」の場合、下記アラートメッセージを表示する
// →「出庫総数が「0」です。登録できません。」
if (Number($("#allSumShipmentOrderQty").html()) < 1) {
alert("出庫総数が「0」です。登録できません。");
return false;
}
this.doCommonFormSubmit(formId);
},
doCommonFormSubmit : function(actionUrl) {
$("#" + actionUrl).submit();
}
};
#######################################
6.register.cash.js
var registerCash = {
/**
* OPENのレジ現金の「枚数」項目カーソルアウト時に下記計算、表示処理を行う。
*/
openRegisterBlur : function(dom){
this.removeZero(dom);
//OPENのレジ現金の「合計金額」に表示する
if(!window.isNaN($('#openRegTenThousand').val())){
var _openRegTenThousand = $('#openRegTenThousand').val()*10000;
$('#openRegTenThousandTotal').empty().text(NumberFormat.addCommas(_openRegTenThousand));
}
if(!window.isNaN($('#openRegFiveThousand').val())){
var _openRegFiveThousand = $('#openRegFiveThousand').val()*5000;
$('#openRegFiveThousandTotal').empty().text(NumberFormat.addCommas(_openRegFiveThousand));
}
if(!window.isNaN($('#openRegTwoThousand').val())){
var _openRegTwoThousand = $('#openRegTwoThousand').val()*2000;
$('#openRegTwoThousandTotal').empty().text(NumberFormat.addCommas(_openRegTwoThousand));
}
if(!window.isNaN($('#openRegOneThousand').val())){
var _openRegOneThousand = $('#openRegOneThousand').val()*1000;
$('#openRegOneThousandTotal').empty().text(NumberFormat.addCommas(_openRegOneThousand));
}
if(!window.isNaN($('#openRegFiveHundred').val())){
var _openRegFiveHundred = $('#openRegFiveHundred').val()*500;
$('#openRegFiveHundredTotal').empty().text(NumberFormat.addCommas(_openRegFiveHundred));
}
if(!window.isNaN($('#openRegOneHundred').val())){
var _openRegOneHundred = $('#openRegOneHundred').val()*100;
$('#openRegOneHundredTotal').empty().text(NumberFormat.addCommas(_openRegOneHundred));
}
if(!window.isNaN($('#openRegFifty').val())){
var _openRegFifty = $('#openRegFifty').val()*50;
$('#openRegFiftyTotal').empty().text(NumberFormat.addCommas(_openRegFifty));
}
if(!window.isNaN($('#openRegTen').val())){
var _openRegTen = $('#openRegTen').val()*10;
$('#openRegTenTotal').empty().text(NumberFormat.addCommas(_openRegTen));
}
if(!window.isNaN($('#openRegFive').val())){
var _openRegFive = $('#openRegFive').val()*5;
$('#openRegFiveTotal').empty().text(NumberFormat.addCommas(_openRegFive));
}
if(!window.isNaN($('#openRegOne').val())){
var _openRegOne = $('#openRegOne').val()*1;
$('#openRegOneTotal').empty().text(NumberFormat.addCommas(_openRegOne));
}
//OPENのレジ現金の「合計」に表示する
//レジ現金売上を算出する
if (!window.isNaN(_openRegTenThousand)
&& !window.isNaN(_openRegFiveThousand)
&& !window.isNaN(_openRegTwoThousand)
&& !window.isNaN(_openRegOneThousand)
&& !window.isNaN(_openRegFiveHundred)
&& !window.isNaN(_openRegOneHundred)
&& !window.isNaN(_openRegFifty)
&& !window.isNaN(_openRegTen)
&& !window.isNaN(_openRegFive)
&& !window.isNaN(_openRegOne)
&& !window.isNaN($('#registerOpenEstimatedAmount').val())) {
var _registerOpenEstimatedAmount = $('#registerOpenEstimatedAmount').val();
var _openRegTotal = _openRegTenThousand+_openRegFiveThousand+_openRegTwoThousand+_openRegOneThousand+_openRegFiveHundred+
_openRegOneHundred+_openRegFifty+_openRegTen+_openRegFive+_openRegOne;
$('#openRegTotal').empty().text(NumberFormat.addCommas(_openRegTotal));
$('#registerOpenTotalMoney').val(_openRegTotal);
$('#registerLackMoney').empty().text(NumberFormat.addCommas(_registerOpenEstimatedAmount-_openRegTotal));
$('#todayPlanAmtHid').val(_registerOpenEstimatedAmount-_openRegTotal);
}
//
this.regCashSalesProcess();
},
/**
* OPENの小口現金の「枚数」項目カーソルアウト時に下記計算、表示処理を行う。
*/
openPettyBlur : function(dom){
this.removeZero(dom);
//OPENの小口現金の「合計金額」に表示する
if(!window.isNaN($('#openPettyTenThousand').val())){
var _openPettyTenThousand = $('#openPettyTenThousand').val()*10000;
$('#openPettyTenThousandTotal').empty().text(NumberFormat.addCommas(_openPettyTenThousand));
}
if(!window.isNaN($('#openPettyFiveThousand').val())){
var _openPettyFiveThousand = $('#openPettyFiveThousand').val()*5000;
$('#openPettyFiveThousandTotal').empty().text(NumberFormat.addCommas(_openPettyFiveThousand));
}
if(!window.isNaN($('#openPettyTwoThousand').val())){
var _openPettyTwoThousand = $('#openPettyTwoThousand').val()*2000;
$('#openPettyTwoThousandTotal').empty().text(NumberFormat.addCommas(_openPettyTwoThousand));
}
if(!window.isNaN($('#openPettyOneThousand').val())){
var _openPettyOneThousand = $('#openPettyOneThousand').val()*1000;
$('#openPettyOneThousandTotal').empty().text(NumberFormat.addCommas(_openPettyOneThousand));
}
if(!window.isNaN($('#openPettyFiveHundred').val())){
var _openPettyFiveHundred = $('#openPettyFiveHundred').val()*500;
$('#openPettyFiveHundredTotal').empty().text(NumberFormat.addCommas(_openPettyFiveHundred));
}
if(!window.isNaN($('#openPettyOneHundred').val())){
var _openPettyOneHundred = $('#openPettyOneHundred').val()*100;
$('#openPettyOneHundredTotal').empty().text(NumberFormat.addCommas(_openPettyOneHundred));
}
if(!window.isNaN($('#openPettyFifty').val())){
var _openPettyFifty = $('#openPettyFifty').val()*50;
$('#openPettyFiftyTotal').empty().text(NumberFormat.addCommas(_openPettyFifty));
}
if(!window.isNaN($('#openPettyTen').val())){
var _openPettyTen = $('#openPettyTen').val()*10;
$('#openPettyTenTotal').empty().text(NumberFormat.addCommas(_openPettyTen));
}
if(!window.isNaN($('#openPettyFive').val())){
var _openPettyFive = $('#openPettyFive').val()*5;
$('#openPettyFiveTotal').empty().text(NumberFormat.addCommas(_openPettyFive));
}
if(!window.isNaN($('#openPettyOne').val())){
var _openPettyOne = $('#openPettyOne').val()*1;
$('#openPettyOneTotal').empty().text(NumberFormat.addCommas(_openPettyOne));
}
//OPENの小口現金の「合計」に表示する
//OPENの小口現金の「過不足金額」に表示する
if (!window.isNaN(_openPettyTenThousand)
&& !window.isNaN(_openPettyFiveThousand)
&& !window.isNaN(_openPettyTwoThousand)
&& !window.isNaN(_openPettyOneThousand)
&& !window.isNaN(_openPettyFiveHundred)
&& !window.isNaN(_openPettyOneHundred)
&& !window.isNaN(_openPettyFifty)
&& !window.isNaN(_openPettyTen)
&& !window.isNaN(_openPettyFive)
&& !window.isNaN(_openPettyOne)
&& !window.isNaN($('#pettyOpenEstimatedAmount').val())) {
var _pettyOpenEstimatedAmount = $('#pettyOpenEstimatedAmount').val();
var _openPettyTotal = _openPettyTenThousand+_openPettyFiveThousand+_openPettyTwoThousand+_openPettyOneThousand+_openPettyFiveHundred+
_openPettyOneHundred+_openPettyFifty+_openPettyTen+_openPettyFive+_openPettyOne;
$('#openPettyTotal').empty().text(NumberFormat.addCommas(_openPettyTotal));
$('#pettyOpenTotalMoney').val(_openPettyTotal);
$('#pettyLackMoney').empty().text(NumberFormat.addCommas(_pettyOpenEstimatedAmount-_openPettyTotal));
$('#pettyLackMoneyHid').val(_pettyOpenEstimatedAmount-_openPettyTotal);
}
//レジ現金売上を算出する
this.regCashSalesProcess();
},
/**
* CLOSEのレジ現金の「枚数」項目カーソルアウト時に下記計算、表示処理を行う。
*/
closeRegisterBlur : function(dom){
this.removeZero(dom);
//CLOSEのレジ現金の「合計金額」に表示する
if(!window.isNaN($('#closeRegTenThousand').val())){
var _closeRegTenThousand = $('#closeRegTenThousand').val()*10000;
$('#closeRegTenThousandTotal').empty().text(NumberFormat.addCommas(_closeRegTenThousand));
}
if(!window.isNaN($('#closeRegFiveThousand').val())){
var _closeRegFiveThousand = $('#closeRegFiveThousand').val()*5000;
$('#closeRegFiveThousandTotal').empty().text(NumberFormat.addCommas(_closeRegFiveThousand));
}
if(!window.isNaN($('#closeRegTwoThousand').val())){
var _closeRegTwoThousand = $('#closeRegTwoThousand').val()*2000;
$('#closeRegTwoThousandTotal').empty().text(NumberFormat.addCommas(_closeRegTwoThousand));
}
if(!window.isNaN($('#closeRegOneThousand').val())){
var _closeRegOneThousand = $('#closeRegOneThousand').val()*1000;
$('#closeRegOneThousandTotal').empty().text(NumberFormat.addCommas(_closeRegOneThousand));
}
if(!window.isNaN($('#closeRegFiveHundred').val())){
var _closeRegFiveHundred = $('#closeRegFiveHundred').val()*500;
$('#closeRegFiveHundredTotal').empty().text(NumberFormat.addCommas(_closeRegFiveHundred));
}
if(!window.isNaN($('#closeRegOneHundred').val())){
var _closeRegOneHundred = $('#closeRegOneHundred').val()*100;
$('#closeRegOneHundredTotal').empty().text(NumberFormat.addCommas(_closeRegOneHundred));
}
if(!window.isNaN($('#closeRegFifty').val())){
var _closeRegFifty = $('#closeRegFifty').val()*50;
$('#closeRegFiftyTotal').empty().text(NumberFormat.addCommas(_closeRegFifty));
}
if(!window.isNaN($('#closeRegTen').val())){
var _closeRegTen = $('#closeRegTen').val()*10;
$('#closeRegTenTotal').empty().text(NumberFormat.addCommas(_closeRegTen));
}
if(!window.isNaN($('#closeRegFive').val())){
var _closeRegFive = $('#closeRegFive').val()*5;
$('#closeRegFiveTotal').empty().text(NumberFormat.addCommas(_closeRegFive));
}
if(!window.isNaN($('#closeRegOne').val())){
var _closeRegOne = $('#closeRegOne').val()*1;
$('#closeRegOneTotal').empty().text(NumberFormat.addCommas(_closeRegOne));
}
//CLOSEのレジ現金の「合計」に表示する
if (!window.isNaN(_closeRegTenThousand)
&& !window.isNaN(_closeRegFiveThousand)
&& !window.isNaN(_closeRegTwoThousand)
&& !window.isNaN(_closeRegOneThousand)
&& !window.isNaN(_closeRegFiveHundred)
&& !window.isNaN(_closeRegOneHundred)
&& !window.isNaN(_closeRegFifty)
&& !window.isNaN(_closeRegTen)
&& !window.isNaN(_closeRegFive)
&& !window.isNaN(_closeRegOne)){
var _closeRegTotal = _closeRegTenThousand+_closeRegFiveThousand+_closeRegTwoThousand+_closeRegOneThousand+_closeRegFiveHundred+
_closeRegOneHundred+_closeRegFifty+_closeRegTen+_closeRegFive+_closeRegOne;
$('#closeRegTotal').empty().text(NumberFormat.addCommas(_closeRegTotal));
$('#registerCloseTotalMoney').val(_closeRegTotal);
}
//レジ現金売上を算出する
this.regCashSalesProcess();
},
/**
* CLOSEの小口現金「枚数」項目カーソルアウト時に下記計算、表示処理を行う。
*/
closePettyBlur : function(dom){
this.removeZero(dom);
//CLOSEの小口現金の「合計金額」に表示する
if(!window.isNaN($('#closePettyTenThousand').val())){
var _closePettyTenThousand = $('#closePettyTenThousand').val()*10000;
$('#closePettyTenThousandTotal').empty().text(NumberFormat.addCommas(_closePettyTenThousand));
}
if(!window.isNaN($('#closePettyFiveThousand').val())){
var _closePettyFiveThousand = $('#closePettyFiveThousand').val()*5000;
$('#closePettyFiveThousandTotal').empty().text(NumberFormat.addCommas(_closePettyFiveThousand));
}
if(!window.isNaN($('#closePettyTwoThousand').val())){
var _closePettyTwoThousand = $('#closePettyTwoThousand').val()*2000;
$('#closePettyTwoThousandTotal').empty().text(NumberFormat.addCommas(_closePettyTwoThousand));
}
if(!window.isNaN($('#closePettyOneThousand').val())){
var _closePettyOneThousand = $('#closePettyOneThousand').val()*1000;
$('#closePettyOneThousandTotal').empty().text(NumberFormat.addCommas(_closePettyOneThousand));
}
if(!window.isNaN($('#closePettyFiveHundred').val())){
var _closePettyFiveHundred = $('#closePettyFiveHundred').val()*500;
$('#closePettyFiveHundredTotal').empty().text(NumberFormat.addCommas(_closePettyFiveHundred));
}
if(!window.isNaN($('#closePettyOneHundred').val())){
var _closePettyOneHundred = $('#closePettyOneHundred').val()*100;
$('#closePettyOneHundredTotal').empty().text(NumberFormat.addCommas(_closePettyOneHundred));
}
if(!window.isNaN($('#closePettyFifty').val())){
var _closePettyFifty = $('#closePettyFifty').val()*50;
$('#closePettyFiftyTotal').empty().text(NumberFormat.addCommas(_closePettyFifty));
}
if(!window.isNaN($('#closePettyTen').val())){
var _closePettyTen = $('#closePettyTen').val()*10;
$('#closePettyTenTotal').empty().text(NumberFormat.addCommas(_closePettyTen));
}
if(!window.isNaN($('#closePettyFive').val())){
var _closePettyFive = $('#closePettyFive').val()*5;
$('#closePettyFiveTotal').empty().text(NumberFormat.addCommas(_closePettyFive));
}
if(!window.isNaN($('#closePettyOne').val())){
var _closePettyOne = $('#closePettyOne').val()*1;
$('#closePettyOneTotal').empty().text(NumberFormat.addCommas(_closePettyOne));
}
//CLOSEの小口現金の「合計」に表示する
if (!window.isNaN(_closePettyTenThousand)
&& !window.isNaN(_closePettyFiveThousand)
&& !window.isNaN(_closePettyTwoThousand)
&& !window.isNaN(_closePettyOneThousand)
&& !window.isNaN(_closePettyFiveHundred)
&& !window.isNaN(_closePettyOneHundred)
&& !window.isNaN(_closePettyFifty)
&& !window.isNaN(_closePettyTen)
&& !window.isNaN(_closePettyFive)
&& !window.isNaN(_closePettyOne)){
var _closePettyTotal = _closePettyTenThousand+_closePettyFiveThousand+_closePettyTwoThousand+_closePettyOneThousand+_closePettyFiveHundred+
_closePettyOneHundred+_closePettyFifty+_closePettyTen+_closePettyFive+_closePettyOne;
$('#closePettyTotal').empty().text(NumberFormat.addCommas(_closePettyTotal));
$('#pettyCloseTotalMoney').val(_closePettyTotal);
}
//レジ現金売上を算出する
this.regCashSalesProcess();
},
/**
* 「内振込売上」項目カーソルアウト時に下記計算、表示処理を行う。
*/
transferBlur : function(dom){
this.removeZero(dom);
//レジ現金売上を算出する
this.regCashSalesProcess();
},
/**
* 「内ジャックス売上」項目カーソルアウト時に下記計算、表示処理を行う。
*/
jaccsBlur : function(dom){
this.removeZero(dom);
//レジ現金売上を算出する
this.regCashSalesProcess();
},
/**
* 「銀行預入額」項目カーソルアウト時に下記計算、表示処理を行う。
*/
depositBlur : function(dom){
this.removeZero(dom);
//レジ現金売上を算出する
this.regCashSalesProcess();
},
/**
* 共通処理:レジ現金売上算出処理
*/
regCashSalesProcess : function(){
//レジ現金の「クラス純売上」に表示する
if (!window.isNaN($('#cashSoldAmtHid').val())
&& !window.isNaN($('#creditSoldAmtHid').val())
&& !window.isNaN($('#transferSoldAmt').val())
&& !window.isNaN($('#jaccsSoldAmt').val())) {
var _cashSoldAmtHid = $('#cashSoldAmtHid').val()*1;
var _creditSoldAmtHid = $('#creditSoldAmtHid').val()*1;
var _transferSoldAmt = $('#transferSoldAmt').val()*1;
var _jaccsSoldAmt = $('#jaccsSoldAmt').val()*1;
var _studioNetSoldAmt = _cashSoldAmtHid+_creditSoldAmtHid+_transferSoldAmt+_jaccsSoldAmt;
$('#studioNetSoldAmt').empty().text(NumberFormat.addCommas(_studioNetSoldAmt));
//レジ現金の「現金売上合計」に表示する
$('#cashSoldAmtTotal').empty().text(NumberFormat.addCommas(_cashSoldAmtHid+_productCashSoldAmtHid));
//レジ現金の「クレジット売上合計」に表示する
$('#creditSoldAmtTotal').empty().text(NumberFormat.addCommas(_creditSoldAmtHid+_productCreditSoldAmtHid));
}
//レジ現金の「物販売上」に表示する
var _productCashSoldAmtHid = $('#productCashSoldAmtHid').val()*1;
var _productCreditSoldAmtHid = $('#productCreditSoldAmtHid').val()*1;
$('#productSoldAmt').empty().text(NumberFormat.addCommas(_productCashSoldAmtHid+_productCreditSoldAmtHid));
//レジ現金の「CLOSE時予定額」に表示する
//「銀行預入額」>「本日預入予定額」の場合 || 「銀行預入額」>「本日預入予定額」ではないの場合
var _depositAmt = $('#depositAmt').val()*1;
var _todayPlanAmt = $('#todayPlanAmt').val()*1;
if(_depositAmt > _todayPlanAmt){
//CLOSE時予定額=OPENのレジ現金の「合計」+「内現金売上」+「物販総売上(税込/現金)」-「払戻額」+「本日預入予定額」-「銀行預入額」
var _regiClosePlanAmt = $('#registerOpenTotalMoney').val()*1+$('#cashSoldAmtHid').val()*1+$('#productCashSoldAmtHid').val()*1-
$('#payoffAmtHid').val()*1+$('#todayPlanAmt').val()*1-$('#depositAmt').val()*1;
$('#regiClosePlanAmt').empty().text(NumberFormat.addCommas(_regiClosePlanAmt));
$('#regiClosePlanAmtHid').val(_regiClosePlanAmt);
}else{
//CLOSE時予定額=OPENのレジ現金の「合計」+「内現金売上」+「物販総売上(税込/現金)」-「払戻額」
var _regiClosePlanAmt = $('#registerOpenTotalMoney').val()*1+$('#cashSoldAmtHid').val()*1+
$('#productCashSoldAmtHid').val()*1-$('#payoffAmtHid').val()*1;
$('#regiClosePlanAmt').empty().text(NumberFormat.addCommas(_regiClosePlanAmt));
$('#regiClosePlanAmtHid').val(_regiClosePlanAmt);
}
//レジ現金の「過不足金額」に表示する
if (!window.isNaN($('#regiClosePlanAmtHid').val())
&& !window.isNaN($('#registerCloseTotalMoney').val())){
$('#nonJustAmt').empty().text(NumberFormat.addCommas($('#regiClosePlanAmtHid').val()*1-$('#registerCloseTotalMoney').val()*1));
$('#nonJustAmtHid').val($('#regiClosePlanAmtHid').val()*1-$('#registerCloseTotalMoney').val()*1);
}
//レジ現金の「翌日預入予定額」に表示する
if(_depositAmt < _todayPlanAmt){
//CLOSEのレジ現金の「合計」+「本日預入予定額」-「銀行預入額」
var _planTotal = $('#registerCloseTotalMoney').val()*1 + _todayPlanAmt - _depositAmt;
if(_planTotal > $('#counterChangeAmt').val()*1){
$('#depositPlanAmt').empty().text(NumberFormat.addCommas(_planTotal-$('#counterChangeAmt').val()*1));
$('#depositPlanAmtHid').val(_planTotal-$('#counterChangeAmt').val()*1);
}else{
$('#depositPlanAmt').empty().text(0);
$('#depositPlanAmtHid').val(0);
}
}else{
if($('#registerCloseTotalMoney').val()*1>$('#counterChangeAmt').val()*1){
$('#depositPlanAmt').empty().text(NumberFormat.addCommas($('#registerCloseTotalMoney').val()*1-$('#counterChangeAmt').val()*1));
$('#depositPlanAmtHid').val(_planTotal-$('#counterChangeAmt').val()*1);
}else{
$('#depositPlanAmt').empty().text(0);
$('#depositPlanAmtHid').val(0);
}
}
//レジ現金の「店舗現金総額」に表示する
if($('#depositPlanAmtHid').val()*1 > 0){
$('#facilitySumAmt').empty().text(NumberFormat.addCommas($('#counterChangeAmt').val()*1+$('#depositPlanAmtHid').val()*1));
$('#facilitySumAmtHid').val($('#counterChangeAmt').val()*1+$('#depositPlanAmtHid').val()*1);
}else{
if(_todayPlanAmt > _depositAmt){
$('#facilitySumAmt').empty().text(NumberFormat.addCommas($('#registerCloseTotalMoney').val()*1 + _todayPlanAmt - _depositAmt));
$('#facilitySumAmtHid').val($('#registerCloseTotalMoney').val()*1 + _todayPlanAmt - _depositAmt);
}else{
$('#facilitySumAmt').empty().text($('#registerCloseTotalMoney').val()*1);
$('#facilitySumAmtHid').val($('#registerCloseTotalMoney').val()*1);
}
}
//小口現金の「CLOSE時予定額」に表示する
var _pettyClosePlanAmt = $('#pettyOpenTotalMoney').val()*1+$('#inCashHid').val()*1-$('#outCashHid').val()*1;
$('#pettyClosePlanAmt').empty().text(NumberFormat.addCommas(_pettyClosePlanAmt));
$('#pettyClosePlanAmtHid').val(_pettyClosePlanAmt);
//小口現金の「過不足金額」に表示する
if (!window.isNaN($('#pettyClosePlanAmtHid').val())
&& !window.isNaN($('#pettyCloseTotalMoney').val())){
var _pettyCloseLackMoney = $('#pettyClosePlanAmtHid').val()*1-$('#pettyCloseTotalMoney').val()*1;
$('#pettyCloseLackMoney').empty().text(NumberFormat.addCommas(_pettyCloseLackMoney));
$('#pettyCloseLackMoneyHid').val(_pettyCloseLackMoney);
}
},
/**
* 数字入力のフォームの先頭に0を入れると引き継がれる
*/
removeZero :function(dom){
var _dom = $(dom).val();
if(_dom != null && _dom != ""){
if(_dom*1 != 0){
$(dom).val(NumberFormat.removeZero(_dom));
}else{
$(dom).val(0);
}
}
}
};
- 以前项目中的js写法2
- 以前项目中的一些js写法
- 以前项目中js写法3
- js中的一些写法
- 关于项目中的目录写法
- JS注释中的HTML式写法
- JS中的正则表达式的写法
- js(javascript)中的奇特for循环写法!
- js(javascript)中的奇特for循环写法!
- js 各种奇葩写法2
- Js写法
- 项目中多余的js写法之join和||连用
- 升级到Android Studio2.2 后打不开以前版本的项目
- 事件函数在标签和js中的写法
- 使用js操作css属性和css中的写法不同
- JS中的log对象获取以及debug写法
- 通过js让页面中的元素上下居中的写法
- js中的for循环 写法的效率对比
- 董的博客
- 人性的弱点全集的评论
- asp.net mvc SelectList 的selected 失效及解决方法
- spring加载hibernate映射文件的几种方式
- 单例模式以及双检锁DCL
- 以前项目中的js写法2
- 修改Win7菜单栏无法隐藏
- 读《企业应用架构模式》8 在一起
- 母函数题目小结
- 基础知识整理
- AC自动机——Aho-Corasick Automaton
- 基于C语言的配置文件管理
- PE文件格式详解(下)
- 【java】java学习(二)