本文共 44999 字,大约阅读时间需要 149 分钟。
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\" οnchange=\"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); } } } };
转载地址:http://ojebi.baihongyu.com/